From c7029e0ce72d5fd644f2ab5d816c5e8f54d1ab85 Mon Sep 17 00:00:00 2001 From: Sunwuyuan Date: Sun, 25 Jan 2026 09:18:00 +0000 Subject: [PATCH] deploy: f276e9e2ea3f99e61add5f757e578cc6cb96b8fa --- assets/{404-BUV7S865.js => 404-BwZffhEb.js} | 2 +- ...oF_G4xZ.js => CacheManagement-BChWOOfR.js} | 2 +- ...FaHh6i.js => ExamConfigEditor-D-fBjxzF.js} | 2 +- ...{VAlert-DFIvt6kt.js => VAlert-DncbAu3E.js} | 2 +- ...e-DZ_l7t3b.js => VAppBarTitle-hRIhv4pw.js} | 2 +- ...n-CylQNaxd.js => VCheckboxBtn-iC2wkMdx.js} | 2 +- .../{VChip-vdRDApTi.js => VChip-jIQL7s_d.js} | 2 +- ...obox-B-HflrVw.js => VCombobox-D_3YC1pP.js} | 2 +- ...ner-DakLDC1m.js => VContainer-Doz_PneH.js} | 2 +- ...F6AfvT.js => VExpansionPanels-LOsDx07C.js} | 2 +- .../{VForm-Bz_LQtPX.js => VForm-C1v7pkqf.js} | 2 +- ...on-CbPhc6Cb.js => VPagination-BUmJ8K2V.js} | 2 +- assets/{VRow-CPw1R1BU.js => VRow-DFPdcq_b.js} | 2 +- ...{VSheet-CuIjBtz7.js => VSheet-CWiuVQYN.js} | 2 +- ...X2FpkIS.js => VSkeletonLoader-DKLQDg5n.js} | 2 +- ...Switch-CjVC2rsZ.js => VSwitch-7fkmr9E6.js} | 2 +- ...tW2SDNN.js => VTabsWindowItem-CghRaqdq.js} | 2 +- ...eld-C579e7l1.js => VTextField-DxxbesnN.js} | 2 +- ...area-jqnFSwaH.js => VTextarea-B0_PT1is.js} | 2 +- ...oltip-COe_nB02.js => VTooltip-CyZjDjKS.js} | 2 +- assets/{_id_-9DDLDO6h.js => _id_-B9b-OTX9.js} | 2 +- assets/{_id_-DzoDISsJ.js => _id_-DyC3JCaR.js} | 2 +- ...rize-B6ScKHRa.js => authorize-DZSBaQ17.js} | 2 +- ...up-CFK6QLBO.js => cses2wakeup-BmsqkMFZ.js} | 2 +- ...r-MQ8YacC2.js => dataProvider-Cg4CSn_f.js} | 2 +- .../{debug-KU27ZD5S.js => debug-BSi7gIU2.js} | 2 +- ...nit-CBNN17PW.js => debug-init-B-H9lXTX.js} | 2 +- ...t-sq4UK_d2.js => debug-socket-DzG1kWef.js} | 2 +- ...efault-BdaTlbaW.js => default-hOQ1mU83.js} | 2 +- ...s-Dj8WEgqu.js => deviceEvents-8tGBwa2U.js} | 2 +- ...e-DlYuJdDl.js => examschedule-BBjKpA2N.js} | 2 +- ...{filter-ByuXXWRY.js => filter-BHXElGQ1.js} | 2 +- assets/index-BUM0TY0E.js | 74 --- assets/index-BXl8SUNP.js | 544 ++++++++++++++++++ .../{index-bqvMdhMd.js => index-D07_YIdP.js} | 2 +- .../{index-DDM9P6IV.js => index-DSbPboXi.js} | 6 +- ...CjK7Y7P9.js => serverRotation-BBUKyTw9.js} | 2 +- ...tings-BmFKtRQg.js => settings-D372VNSO.js} | 24 +- ...P6I1v4J.js => socket-debugger-DtAcJK1B.js} | 2 +- ...t-BEFY8Nxz.js => socketClient-BAypaVYV.js} | 2 +- index.html | 2 +- sw.js | 2 +- 42 files changed, 597 insertions(+), 127 deletions(-) rename assets/{404-BUV7S865.js => 404-BwZffhEb.js} (97%) rename assets/{CacheManagement-DoF_G4xZ.js => CacheManagement-BChWOOfR.js} (94%) rename assets/{ExamConfigEditor-BzFaHh6i.js => ExamConfigEditor-D-fBjxzF.js} (99%) rename assets/{VAlert-DFIvt6kt.js => VAlert-DncbAu3E.js} (98%) rename assets/{VAppBarTitle-DZ_l7t3b.js => VAppBarTitle-hRIhv4pw.js} (99%) rename assets/{VCheckboxBtn-CylQNaxd.js => VCheckboxBtn-iC2wkMdx.js} (86%) rename assets/{VChip-vdRDApTi.js => VChip-jIQL7s_d.js} (99%) rename assets/{VCombobox-B-HflrVw.js => VCombobox-D_3YC1pP.js} (99%) rename assets/{VContainer-DakLDC1m.js => VContainer-Doz_PneH.js} (85%) rename assets/{VExpansionPanels-DzF6AfvT.js => VExpansionPanels-LOsDx07C.js} (98%) rename assets/{VForm-Bz_LQtPX.js => VForm-C1v7pkqf.js} (83%) rename assets/{VPagination-CbPhc6Cb.js => VPagination-BUmJ8K2V.js} (96%) rename assets/{VRow-CPw1R1BU.js => VRow-DFPdcq_b.js} (97%) rename assets/{VSheet-CuIjBtz7.js => VSheet-CWiuVQYN.js} (91%) rename assets/{VSkeletonLoader-DX2FpkIS.js => VSkeletonLoader-DKLQDg5n.js} (97%) rename assets/{VSwitch-CjVC2rsZ.js => VSwitch-7fkmr9E6.js} (98%) rename assets/{VTabsWindowItem-DtW2SDNN.js => VTabsWindowItem-CghRaqdq.js} (99%) rename assets/{VTextField-C579e7l1.js => VTextField-DxxbesnN.js} (99%) rename assets/{VTextarea-jqnFSwaH.js => VTextarea-B0_PT1is.js} (97%) rename assets/{VTooltip-COe_nB02.js => VTooltip-CyZjDjKS.js} (98%) rename assets/{_id_-9DDLDO6h.js => _id_-B9b-OTX9.js} (66%) rename assets/{_id_-DzoDISsJ.js => _id_-DyC3JCaR.js} (96%) rename assets/{authorize-B6ScKHRa.js => authorize-DZSBaQ17.js} (87%) rename assets/{cses2wakeup-CFK6QLBO.js => cses2wakeup-BmsqkMFZ.js} (98%) rename assets/{dataProvider-MQ8YacC2.js => dataProvider-Cg4CSn_f.js} (99%) rename assets/{debug-KU27ZD5S.js => debug-BSi7gIU2.js} (88%) rename assets/{debug-init-CBNN17PW.js => debug-init-B-H9lXTX.js} (90%) rename assets/{debug-socket-sq4UK_d2.js => debug-socket-DzG1kWef.js} (94%) rename assets/{default-BdaTlbaW.js => default-hOQ1mU83.js} (92%) rename assets/{deviceEvents-Dj8WEgqu.js => deviceEvents-8tGBwa2U.js} (97%) rename assets/{examschedule-DlYuJdDl.js => examschedule-BBjKpA2N.js} (97%) rename assets/{filter-ByuXXWRY.js => filter-BHXElGQ1.js} (98%) delete mode 100644 assets/index-BUM0TY0E.js create mode 100644 assets/index-BXl8SUNP.js rename assets/{index-bqvMdhMd.js => index-D07_YIdP.js} (94%) rename assets/{index-DDM9P6IV.js => index-DSbPboXi.js} (99%) rename assets/{serverRotation-CjK7Y7P9.js => serverRotation-BBUKyTw9.js} (93%) rename assets/{settings-BmFKtRQg.js => settings-D372VNSO.js} (77%) rename assets/{socket-debugger-qP6I1v4J.js => socket-debugger-DtAcJK1B.js} (96%) rename assets/{socketClient-BEFY8Nxz.js => socketClient-BAypaVYV.js} (99%) diff --git a/assets/404-BUV7S865.js b/assets/404-BwZffhEb.js similarity index 97% rename from assets/404-BUV7S865.js rename to assets/404-BwZffhEb.js index b323fc0..d916e4e 100644 --- a/assets/404-BUV7S865.js +++ b/assets/404-BwZffhEb.js @@ -1 +1 @@ -import{o as c,j as n,w as e,c as t,al as C,am as o,i as a,l as i,an as s}from"./index-BUM0TY0E.js";import{V as L,a as r}from"./VRow-CPw1R1BU.js";import{V as h}from"./VContainer-DakLDC1m.js";const f="data:image/svg+xml,%3csvg%20xmlns:xlink='http://www.w3.org/1999/xlink'%20xmlns='http://www.w3.org/2000/svg'%20width='256'%20height='256'%20viewBox='0%200%20256%20256'%20fill='none'%3e%3cg%20clip-path='url(%23clip-path-74_1)'%3e%3cpath%20fill='%23FFFFFF'%20d='M0%20256L256%20256L256%200L0%200L0%20256Z'%3e%3c/path%3e%3crect%20x='0'%20y='0'%20width='256'%20height='128'%20fill='%23D8C4A0'%3e%3c/rect%3e%3crect%20x='0'%20y='128'%20width='256'%20height='128'%20fill='%23F5E0BB'%3e%3c/rect%3e%3cpath%20d='M28%20228L128%20128L228%20128L128%20228L28%20228Z'%20fill-rule='evenodd'%20fill='%23241A04'%3e%3c/path%3e%3cpath%20d='M28%20128L128%2028L228%2028L128%20128L28%20128Z'%20fill-rule='evenodd'%20fill='%2352452A'%3e%3c/path%3e%3cg%3e%3cpath%20fill='%23000000'%20d='M-3049.01%202467.94L-3043.48%202467.94L-3043.48%202466.99L-3045.92%202466.99C-3046.36%202466.99%20-3046.9%202467.04%20-3047.36%202467.08C-3045.29%202465.12%20-3043.9%202463.33%20-3043.9%202461.57C-3043.9%202460.01%20-3044.9%202458.99%20-3046.47%202458.99C-3047.58%202458.99%20-3048.35%202459.49%20-3049.06%202460.27L-3048.43%202460.9C-3047.93%202460.31%20-3047.32%202459.88%20-3046.6%202459.88C-3045.51%202459.88%20-3044.98%202460.61%20-3044.98%202461.62C-3044.98%202463.13%20-3046.25%202464.88%20-3049.01%202467.29L-3049.01%202467.94ZM-3039.27%202468.1C-3037.9%202468.1%20-3036.74%202466.95%20-3036.74%202465.24C-3036.74%202463.39%20-3037.7%202462.48%20-3039.19%202462.48C-3039.87%202462.48%20-3040.64%202462.88%20-3041.18%202463.54C-3041.13%202460.81%20-3040.13%202459.89%20-3038.91%202459.89C-3038.38%202459.89%20-3037.85%202460.15%20-3037.52%202460.56L-3036.89%202459.89C-3037.39%202459.36%20-3038.04%202458.99%20-3038.96%202458.99C-3040.66%202458.99%20-3042.21%202460.3%20-3042.21%202463.74C-3042.21%202466.65%20-3040.95%202468.1%20-3039.27%202468.1ZM-3041.15%202464.41C-3040.58%202463.6%20-3039.91%202463.3%20-3039.36%202463.3C-3038.3%202463.3%20-3037.78%202464.05%20-3037.78%202465.24C-3037.78%202466.44%20-3038.43%202467.23%20-3039.27%202467.23C-3040.37%202467.23%20-3041.03%202466.24%20-3041.15%202464.41ZM-3035.17%202467.94L-3030.34%202467.94L-3030.34%202467.03L-3032.1%202467.03L-3032.1%202459.15L-3032.95%202459.15C-3033.43%202459.42%20-3033.99%202459.62%20-3034.77%202459.77L-3034.77%202460.47L-3033.2%202460.47L-3033.2%202467.03L-3035.17%202467.03L-3035.17%202467.94ZM-3029.51%202467.94L-3028.4%202467.94L-3027.54%202465.25L-3024.33%202465.25L-3023.49%202467.94L-3022.31%202467.94L-3025.3%202459.15L-3026.54%202459.15L-3029.51%202467.94ZM-3027.27%202464.38L-3026.84%202463.02C-3026.52%202462.02%20-3026.24%202461.08%20-3025.96%202460.04L-3025.91%202460.04C-3025.62%202461.06%20-3025.35%202462.02%20-3025.02%202463.02L-3024.6%202464.38L-3027.27%202464.38ZM-3018.93%202468.1C-3017.26%202468.1%20-3016.19%202466.58%20-3016.19%202463.51C-3016.19%202460.47%20-3017.26%202458.99%20-3018.93%202458.99C-3020.61%202458.99%20-3021.67%202460.47%20-3021.67%202463.51C-3021.67%202466.58%20-3020.61%202468.1%20-3018.93%202468.1ZM-3018.93%202467.21C-3019.93%202467.21%20-3020.61%202466.09%20-3020.61%202463.51C-3020.61%202460.95%20-3019.93%202459.85%20-3018.93%202459.85C-3017.93%202459.85%20-3017.25%202460.95%20-3017.25%202463.51C-3017.25%202466.09%20-3017.93%202467.21%20-3018.93%202467.21ZM-3012.27%202468.1C-3010.6%202468.1%20-3009.53%202466.58%20-3009.53%202463.51C-3009.53%202460.47%20-3010.6%202458.99%20-3012.27%202458.99C-3013.95%202458.99%20-3015.01%202460.47%20-3015.01%202463.51C-3015.01%202466.58%20-3013.95%202468.1%20-3012.27%202468.1ZM-3012.27%202467.21C-3013.27%202467.21%20-3013.95%202466.09%20-3013.95%202463.51C-3013.95%202460.95%20-3013.27%202459.85%20-3012.27%202459.85C-3011.27%202459.85%20-3010.59%202460.95%20-3010.59%202463.51C-3010.59%202466.09%20-3011.27%202467.21%20-3012.27%202467.21Z'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip-path-74_1'%3e%3cpath%20d='M0%20256L256%20256L256%200L0%200L0%20256Z'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",m={__name:"404",setup(d){return(p,l)=>(c(),n(h,{class:"fill-height"},{default:e(()=>[t(C,{class:"align-centerfill-height mx-auto","max-width":"900"},{default:e(()=>[t(o,{class:"mb-4",height:"150",src:f}),l[3]||(l[3]=a("div",{class:"text-center"},[a("div",{class:"text-body-2 font-weight-light mb-n1"},"出现了错误"),a("h1",{class:"text-h2 font-weight-bold"},"404")],-1)),l[4]||(l[4]=a("div",{class:"py-4"},null,-1)),t(L,null,{default:e(()=>[t(r,{cols:"12"},{default:e(()=>[t(i,{class:"py-4",color:"surface-variant","prepend-icon":"mdi-help",rounded:"lg",variant:"outlined"},{image:e(()=>[t(o,{position:"top right"})]),title:e(()=>[...l[1]||(l[1]=[a("h2",{class:"text-h5 font-weight-bold"},"为什么会出现此错误?",-1)])]),subtitle:e(()=>[...l[2]||(l[2]=[a("div",{class:"text-subtitle-1"},"大概是页面未找到",-1)])]),default:e(()=>[t(s,{contained:"","model-value":"",opacity:".12",persistent:"",scrim:"primary"})]),_:1})]),_:1}),t(r,{cols:"6"},{default:e(()=>[t(i,{class:"py-4",color:"surface-variant","prepend-icon":"mdi-home",rounded:"lg",title:"返回首页",to:"/",variant:"text"},{default:e(()=>[t(s,{contained:"","model-value":"",opacity:".06",persistent:"",scrim:"primary"})]),_:1})]),_:1}),t(r,{cols:"6"},{default:e(()=>[t(i,{class:"py-4",color:"surface-variant","prepend-icon":"mdi-arrow-left-drop-circle",rounded:"lg",title:"返回上一页",variant:"text",onClick:l[0]||(l[0]=u=>this.$router.back())},{default:e(()=>[t(s,{contained:"","model-value":"",opacity:".06",persistent:"",scrim:"primary"})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}))}},x={__name:"404",setup(d){return(p,l)=>(c(),n(m))}};export{x as default}; +import{o as c,j as n,w as e,c as t,al as C,am as o,i as a,l as i,an as s}from"./index-BXl8SUNP.js";import{V as L,a as r}from"./VRow-DFPdcq_b.js";import{V as h}from"./VContainer-Doz_PneH.js";const f="data:image/svg+xml,%3csvg%20xmlns:xlink='http://www.w3.org/1999/xlink'%20xmlns='http://www.w3.org/2000/svg'%20width='256'%20height='256'%20viewBox='0%200%20256%20256'%20fill='none'%3e%3cg%20clip-path='url(%23clip-path-74_1)'%3e%3cpath%20fill='%23FFFFFF'%20d='M0%20256L256%20256L256%200L0%200L0%20256Z'%3e%3c/path%3e%3crect%20x='0'%20y='0'%20width='256'%20height='128'%20fill='%23D8C4A0'%3e%3c/rect%3e%3crect%20x='0'%20y='128'%20width='256'%20height='128'%20fill='%23F5E0BB'%3e%3c/rect%3e%3cpath%20d='M28%20228L128%20128L228%20128L128%20228L28%20228Z'%20fill-rule='evenodd'%20fill='%23241A04'%3e%3c/path%3e%3cpath%20d='M28%20128L128%2028L228%2028L128%20128L28%20128Z'%20fill-rule='evenodd'%20fill='%2352452A'%3e%3c/path%3e%3cg%3e%3cpath%20fill='%23000000'%20d='M-3049.01%202467.94L-3043.48%202467.94L-3043.48%202466.99L-3045.92%202466.99C-3046.36%202466.99%20-3046.9%202467.04%20-3047.36%202467.08C-3045.29%202465.12%20-3043.9%202463.33%20-3043.9%202461.57C-3043.9%202460.01%20-3044.9%202458.99%20-3046.47%202458.99C-3047.58%202458.99%20-3048.35%202459.49%20-3049.06%202460.27L-3048.43%202460.9C-3047.93%202460.31%20-3047.32%202459.88%20-3046.6%202459.88C-3045.51%202459.88%20-3044.98%202460.61%20-3044.98%202461.62C-3044.98%202463.13%20-3046.25%202464.88%20-3049.01%202467.29L-3049.01%202467.94ZM-3039.27%202468.1C-3037.9%202468.1%20-3036.74%202466.95%20-3036.74%202465.24C-3036.74%202463.39%20-3037.7%202462.48%20-3039.19%202462.48C-3039.87%202462.48%20-3040.64%202462.88%20-3041.18%202463.54C-3041.13%202460.81%20-3040.13%202459.89%20-3038.91%202459.89C-3038.38%202459.89%20-3037.85%202460.15%20-3037.52%202460.56L-3036.89%202459.89C-3037.39%202459.36%20-3038.04%202458.99%20-3038.96%202458.99C-3040.66%202458.99%20-3042.21%202460.3%20-3042.21%202463.74C-3042.21%202466.65%20-3040.95%202468.1%20-3039.27%202468.1ZM-3041.15%202464.41C-3040.58%202463.6%20-3039.91%202463.3%20-3039.36%202463.3C-3038.3%202463.3%20-3037.78%202464.05%20-3037.78%202465.24C-3037.78%202466.44%20-3038.43%202467.23%20-3039.27%202467.23C-3040.37%202467.23%20-3041.03%202466.24%20-3041.15%202464.41ZM-3035.17%202467.94L-3030.34%202467.94L-3030.34%202467.03L-3032.1%202467.03L-3032.1%202459.15L-3032.95%202459.15C-3033.43%202459.42%20-3033.99%202459.62%20-3034.77%202459.77L-3034.77%202460.47L-3033.2%202460.47L-3033.2%202467.03L-3035.17%202467.03L-3035.17%202467.94ZM-3029.51%202467.94L-3028.4%202467.94L-3027.54%202465.25L-3024.33%202465.25L-3023.49%202467.94L-3022.31%202467.94L-3025.3%202459.15L-3026.54%202459.15L-3029.51%202467.94ZM-3027.27%202464.38L-3026.84%202463.02C-3026.52%202462.02%20-3026.24%202461.08%20-3025.96%202460.04L-3025.91%202460.04C-3025.62%202461.06%20-3025.35%202462.02%20-3025.02%202463.02L-3024.6%202464.38L-3027.27%202464.38ZM-3018.93%202468.1C-3017.26%202468.1%20-3016.19%202466.58%20-3016.19%202463.51C-3016.19%202460.47%20-3017.26%202458.99%20-3018.93%202458.99C-3020.61%202458.99%20-3021.67%202460.47%20-3021.67%202463.51C-3021.67%202466.58%20-3020.61%202468.1%20-3018.93%202468.1ZM-3018.93%202467.21C-3019.93%202467.21%20-3020.61%202466.09%20-3020.61%202463.51C-3020.61%202460.95%20-3019.93%202459.85%20-3018.93%202459.85C-3017.93%202459.85%20-3017.25%202460.95%20-3017.25%202463.51C-3017.25%202466.09%20-3017.93%202467.21%20-3018.93%202467.21ZM-3012.27%202468.1C-3010.6%202468.1%20-3009.53%202466.58%20-3009.53%202463.51C-3009.53%202460.47%20-3010.6%202458.99%20-3012.27%202458.99C-3013.95%202458.99%20-3015.01%202460.47%20-3015.01%202463.51C-3015.01%202466.58%20-3013.95%202468.1%20-3012.27%202468.1ZM-3012.27%202467.21C-3013.27%202467.21%20-3013.95%202466.09%20-3013.95%202463.51C-3013.95%202460.95%20-3013.27%202459.85%20-3012.27%202459.85C-3011.27%202459.85%20-3010.59%202460.95%20-3010.59%202463.51C-3010.59%202466.09%20-3011.27%202467.21%20-3012.27%202467.21Z'%3e%3c/path%3e%3c/g%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip-path-74_1'%3e%3cpath%20d='M0%20256L256%20256L256%200L0%200L0%20256Z'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e",m={__name:"404",setup(d){return(p,l)=>(c(),n(h,{class:"fill-height"},{default:e(()=>[t(C,{class:"align-centerfill-height mx-auto","max-width":"900"},{default:e(()=>[t(o,{class:"mb-4",height:"150",src:f}),l[3]||(l[3]=a("div",{class:"text-center"},[a("div",{class:"text-body-2 font-weight-light mb-n1"},"出现了错误"),a("h1",{class:"text-h2 font-weight-bold"},"404")],-1)),l[4]||(l[4]=a("div",{class:"py-4"},null,-1)),t(L,null,{default:e(()=>[t(r,{cols:"12"},{default:e(()=>[t(i,{class:"py-4",color:"surface-variant","prepend-icon":"mdi-help",rounded:"lg",variant:"outlined"},{image:e(()=>[t(o,{position:"top right"})]),title:e(()=>[...l[1]||(l[1]=[a("h2",{class:"text-h5 font-weight-bold"},"为什么会出现此错误?",-1)])]),subtitle:e(()=>[...l[2]||(l[2]=[a("div",{class:"text-subtitle-1"},"大概是页面未找到",-1)])]),default:e(()=>[t(s,{contained:"","model-value":"",opacity:".12",persistent:"",scrim:"primary"})]),_:1})]),_:1}),t(r,{cols:"6"},{default:e(()=>[t(i,{class:"py-4",color:"surface-variant","prepend-icon":"mdi-home",rounded:"lg",title:"返回首页",to:"/",variant:"text"},{default:e(()=>[t(s,{contained:"","model-value":"",opacity:".06",persistent:"",scrim:"primary"})]),_:1})]),_:1}),t(r,{cols:"6"},{default:e(()=>[t(i,{class:"py-4",color:"surface-variant","prepend-icon":"mdi-arrow-left-drop-circle",rounded:"lg",title:"返回上一页",variant:"text",onClick:l[0]||(l[0]=u=>this.$router.back())},{default:e(()=>[t(s,{contained:"","model-value":"",opacity:".06",persistent:"",scrim:"primary"})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}))}},x={__name:"404",setup(d){return(p,l)=>(c(),n(m))}};export{x as default}; diff --git a/assets/CacheManagement-DoF_G4xZ.js b/assets/CacheManagement-BChWOOfR.js similarity index 94% rename from assets/CacheManagement-DoF_G4xZ.js rename to assets/CacheManagement-BChWOOfR.js index 58fea54..5347ec9 100644 --- a/assets/CacheManagement-DoF_G4xZ.js +++ b/assets/CacheManagement-BChWOOfR.js @@ -1 +1 @@ -import{_ as W,o,j as c,w as s,c as a,q as A,i as r,x as b,y as p,v as l,t as m,z as C,D as k,A as f,C as w,F as x,G as V,P as E,Q as N,a0 as L,a1 as P,l as y}from"./index-BUM0TY0E.js";import{V as _}from"./VAlert-DFIvt6kt.js";import{V as R,a as z,b as B,c as F}from"./VExpansionPanels-DzF6AfvT.js";import{V as H}from"./VChip-vdRDApTi.js";import{V as I}from"./VSkeletonLoader-DX2FpkIS.js";import{V as M,a as v}from"./VRow-CPw1R1BU.js";import{V as U}from"./VContainer-DakLDC1m.js";const j={name:"CacheManager",data(){return{caches:[],loading:!1,serviceWorkerActive:!1,message:"",messageType:"info"}},mounted(){this.checkServiceWorker()},methods:{checkServiceWorker(){"serviceWorker"in navigator?navigator.serviceWorker.ready.then(()=>{this.serviceWorkerActive=!0,this.refreshCaches()}).catch(()=>{this.serviceWorkerActive=!1}):this.serviceWorkerActive=!1},async refreshCaches(){if(this.serviceWorkerActive){this.loading=!0,this.message="",this.caches=[];try{const t=await this.sendMessageToSW({type:"CACHE_KEYS"});for(const e of t.cacheNames){const n=await this.sendMessageToSW({type:"CACHE_CONTENT",cacheName:e});this.caches.push({name:e,urls:n.urls||[]})}}catch(t){this.showMessage("获取缓存信息失败: "+t.message,"error")}finally{this.loading=!1}}},async clearCache(t){this.loading=!0;try{(await this.sendMessageToSW({type:"CLEAR_CACHE",cacheName:t})).success?(this.showMessage(`已清除缓存: ${this.formatCacheName(t)}`,"success"),await this.refreshCaches()):this.showMessage("清除缓存失败","error")}catch(e){this.showMessage("清除缓存失败: "+e.message,"error")}finally{this.loading=!1}},async clearUrl(t,e){this.loading=!0;try{(await this.sendMessageToSW({type:"CLEAR_URL",cacheName:t,url:e})).success?(this.showMessage(`已从缓存中删除: ${this.getFileName(e)}`,"success"),await this.refreshCaches()):this.showMessage("删除缓存项失败","error")}catch(n){this.showMessage("删除缓存项失败: "+n.message,"error")}finally{this.loading=!1}},async clearAllCaches(){if(confirm("确定要清除所有缓存吗?这可能会导致应用需要重新下载资源。")){this.loading=!0;try{(await this.sendMessageToSW({type:"CLEAR_ALL_CACHES"})).success?(this.showMessage("已清除所有缓存","success"),await this.refreshCaches()):this.showMessage("清除所有缓存失败","error")}catch(t){this.showMessage("清除所有缓存失败: "+t.message,"error")}finally{this.loading=!1}}},sendMessageToSW(t){return new Promise((e,n)=>{if(!navigator.serviceWorker.controller){n(new Error("Service Worker 未控制页面"));return}const g=new MessageChannel;g.port1.onmessage=i=>{e(i.data)},navigator.serviceWorker.controller.postMessage(t,[g.port2]),setTimeout(()=>{n(new Error("Service Worker 响应超时"))},5e3)})},formatCacheName(t){return t.replace("workbox-precache-","预缓存-").replace("-cache","").replace("js","JS").replace("css","CSS").replace("html","HTML").replace("images","图片").replace("external-resources","外部资源").replace("cdn-cgi","CDN")},getFileName(t){try{const e=new URL(t),n=e.pathname.split("/");return n[n.length-1]||e.hostname}catch(e){return console.error("获取文件名失败:",e),t}},showMessage(t,e="info"){this.message=t,this.messageType=e,setTimeout(()=>{this.message===t&&(this.message="")},5e3)}}},D={class:"d-flex align-center"},O={class:"d-flex justify-end mb-2"};function q(t,e,n,g,i,d){return o(),c(y,null,{default:s(()=>[a(A,{class:"d-flex align-center"},{default:s(()=>[e[2]||(e[2]=r("span",null,"缓存管理",-1)),a(b),a(p,{loading:i.loading,color:"error",onClick:d.clearAllCaches},{default:s(()=>[...e[0]||(e[0]=[l(" 清除所有缓存 ",-1)])]),_:1},8,["loading","onClick"]),a(p,{class:"ml-2",icon:"",onClick:d.refreshCaches},{default:s(()=>[a(m,null,{default:s(()=>[...e[1]||(e[1]=[l("mdi-refresh",-1)])]),_:1})]),_:1},8,["onClick"])]),_:1}),a(C,null,{default:s(()=>[i.serviceWorkerActive?k("",!0):(o(),c(_,{key:0,class:"mb-4",type:"warning"},{default:s(()=>[...e[3]||(e[3]=[l(" Service Worker 未激活,缓存管理功能不可用。 ",-1)])]),_:1})),i.message?(o(),c(_,{key:1,type:i.messageType,class:"mb-4"},{default:s(()=>[l(f(i.message),1)]),_:1},8,["type"])):k("",!0),i.caches.length>0?(o(),c(R,{key:2},{default:s(()=>[(o(!0),w(x,null,V(i.caches,u=>(o(),c(z,{key:u.name},{default:s(()=>[a(B,null,{default:s(()=>[r("div",D,[r("span",null,f(d.formatCacheName(u.name)),1),a(H,{class:"ml-2",size:"small"},{default:s(()=>[l(f(u.urls.length)+" 个文件",1)]),_:2},1024)])]),_:2},1024),a(F,null,{default:s(()=>[r("div",O,[a(p,{loading:i.loading,color:"error",size:"small",onClick:h=>d.clearCache(u.name)},{default:s(()=>[...e[4]||(e[4]=[l(" 清除此缓存 ",-1)])]),_:1},8,["loading","onClick"])]),a(E,{lines:"two"},{default:s(()=>[(o(!0),w(x,null,V(u.urls,(h,T)=>(o(),c(N,{key:T},{append:s(()=>[a(p,{color:"error",icon:"",size:"small",onClick:$=>d.clearUrl(u.name,h)},{default:s(()=>[a(m,null,{default:s(()=>[...e[5]||(e[5]=[l("mdi-delete",-1)])]),_:1})]),_:1},8,["onClick"])]),default:s(()=>[a(L,{class:"text-truncate"},{default:s(()=>[l(f(d.getFileName(h)),1)]),_:2},1024),a(P,{class:"text-truncate"},{default:s(()=>[l(f(h),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})):i.loading?(o(),c(I,{key:3,type:"article"})):(o(),c(_,{key:4,type:"info"},{default:s(()=>[...e[6]||(e[6]=[l(" 没有找到缓存数据。 ",-1)])]),_:1}))]),_:1})]),_:1})}const S=W(j,[["render",q]]),G={name:"CacheManagementPage",components:{CacheManager:S},metaInfo:{title:"缓存管理"}},J={class:"d-flex align-center mb-6"},K={class:"d-flex align-center mb-2"},Q={class:"d-flex align-center mb-2"};function Y(t,e,n,g,i,d){const u=S;return o(),c(U,null,{default:s(()=>[a(M,null,{default:s(()=>[a(v,{cols:"12"},{default:s(()=>[r("div",J,[a(m,{class:"mr-3",color:"primary",size:"x-large"},{default:s(()=>[...e[0]||(e[0]=[l("mdi-database-cog-outline",-1)])]),_:1}),e[1]||(e[1]=r("div",null,[r("h1",{class:"text-h4"},"缓存管理"),r("div",{class:"text-subtitle-1 text-grey"},"管理应用的本地缓存资源")],-1))]),a(y,{class:"mb-6",color:"info",density:"compact",variant:"tonal"},{default:s(()=>[a(C,{class:"d-flex align-center"},{default:s(()=>[a(m,{class:"mr-2",color:"info"},{default:s(()=>[...e[2]||(e[2]=[l("mdi-information-outline",-1)])]),_:1}),e[3]||(e[3]=r("span",null,"在这里您可以查看和管理应用的缓存文件。清除缓存可能会导致应用需要重新下载资源,但有助于解决某些显示问题。",-1))]),_:1})]),_:1}),a(M,null,{default:s(()=>[a(v,{cols:"12",md:"8"},{default:s(()=>[a(y,{class:"mb-4",variant:"tonal"},{default:s(()=>[a(C,null,{default:s(()=>[r("div",K,[a(m,{class:"mr-2",color:"primary"},{default:s(()=>[...e[4]||(e[4]=[l("mdi-information",-1)])]),_:1}),e[5]||(e[5]=r("span",{class:"text-h6"},"什么是缓存?",-1))]),e[6]||(e[6]=r("p",null," 缓存是浏览器在本地存储的网站资源副本,如图片、脚本和样式表等。这些缓存可以加快页面加载速度,减少数据使用,并在离线时提供基本功能。",-1))]),_:1})]),_:1})]),_:1}),a(v,{cols:"12",md:"4"},{default:s(()=>[a(y,{class:"mb-4",variant:"tonal"},{default:s(()=>[a(C,null,{default:s(()=>[r("div",Q,[a(m,{class:"mr-2",color:"warning"},{default:s(()=>[...e[7]||(e[7]=[l("mdi-lightbulb-outline",-1)])]),_:1}),e[8]||(e[8]=r("span",{class:"text-h6"},"何时清除缓存?",-1))]),e[9]||(e[9]=r("ul",{class:"pl-4"},[r("li",null,"应用显示过时的内容"),r("li",null,"界面出现异常"),r("li",null,"应用功能不正常")],-1))]),_:1})]),_:1})]),_:1})]),_:1}),a(u)]),_:1})]),_:1})]),_:1})}const le=W(G,[["render",Y]]);export{le as default}; +import{_ as W,o,j as c,w as s,c as a,q as A,i as r,x as b,y as p,v as l,t as m,z as C,D as k,A as f,C as w,F as x,G as V,P as E,Q as N,a0 as L,a1 as P,l as y}from"./index-BXl8SUNP.js";import{V as _}from"./VAlert-DncbAu3E.js";import{V as R,a as z,b as B,c as F}from"./VExpansionPanels-LOsDx07C.js";import{V as H}from"./VChip-jIQL7s_d.js";import{V as I}from"./VSkeletonLoader-DKLQDg5n.js";import{V as M,a as v}from"./VRow-DFPdcq_b.js";import{V as U}from"./VContainer-Doz_PneH.js";const j={name:"CacheManager",data(){return{caches:[],loading:!1,serviceWorkerActive:!1,message:"",messageType:"info"}},mounted(){this.checkServiceWorker()},methods:{checkServiceWorker(){"serviceWorker"in navigator?navigator.serviceWorker.ready.then(()=>{this.serviceWorkerActive=!0,this.refreshCaches()}).catch(()=>{this.serviceWorkerActive=!1}):this.serviceWorkerActive=!1},async refreshCaches(){if(this.serviceWorkerActive){this.loading=!0,this.message="",this.caches=[];try{const t=await this.sendMessageToSW({type:"CACHE_KEYS"});for(const e of t.cacheNames){const n=await this.sendMessageToSW({type:"CACHE_CONTENT",cacheName:e});this.caches.push({name:e,urls:n.urls||[]})}}catch(t){this.showMessage("获取缓存信息失败: "+t.message,"error")}finally{this.loading=!1}}},async clearCache(t){this.loading=!0;try{(await this.sendMessageToSW({type:"CLEAR_CACHE",cacheName:t})).success?(this.showMessage(`已清除缓存: ${this.formatCacheName(t)}`,"success"),await this.refreshCaches()):this.showMessage("清除缓存失败","error")}catch(e){this.showMessage("清除缓存失败: "+e.message,"error")}finally{this.loading=!1}},async clearUrl(t,e){this.loading=!0;try{(await this.sendMessageToSW({type:"CLEAR_URL",cacheName:t,url:e})).success?(this.showMessage(`已从缓存中删除: ${this.getFileName(e)}`,"success"),await this.refreshCaches()):this.showMessage("删除缓存项失败","error")}catch(n){this.showMessage("删除缓存项失败: "+n.message,"error")}finally{this.loading=!1}},async clearAllCaches(){if(confirm("确定要清除所有缓存吗?这可能会导致应用需要重新下载资源。")){this.loading=!0;try{(await this.sendMessageToSW({type:"CLEAR_ALL_CACHES"})).success?(this.showMessage("已清除所有缓存","success"),await this.refreshCaches()):this.showMessage("清除所有缓存失败","error")}catch(t){this.showMessage("清除所有缓存失败: "+t.message,"error")}finally{this.loading=!1}}},sendMessageToSW(t){return new Promise((e,n)=>{if(!navigator.serviceWorker.controller){n(new Error("Service Worker 未控制页面"));return}const g=new MessageChannel;g.port1.onmessage=i=>{e(i.data)},navigator.serviceWorker.controller.postMessage(t,[g.port2]),setTimeout(()=>{n(new Error("Service Worker 响应超时"))},5e3)})},formatCacheName(t){return t.replace("workbox-precache-","预缓存-").replace("-cache","").replace("js","JS").replace("css","CSS").replace("html","HTML").replace("images","图片").replace("external-resources","外部资源").replace("cdn-cgi","CDN")},getFileName(t){try{const e=new URL(t),n=e.pathname.split("/");return n[n.length-1]||e.hostname}catch(e){return console.error("获取文件名失败:",e),t}},showMessage(t,e="info"){this.message=t,this.messageType=e,setTimeout(()=>{this.message===t&&(this.message="")},5e3)}}},D={class:"d-flex align-center"},O={class:"d-flex justify-end mb-2"};function q(t,e,n,g,i,d){return o(),c(y,null,{default:s(()=>[a(A,{class:"d-flex align-center"},{default:s(()=>[e[2]||(e[2]=r("span",null,"缓存管理",-1)),a(b),a(p,{loading:i.loading,color:"error",onClick:d.clearAllCaches},{default:s(()=>[...e[0]||(e[0]=[l(" 清除所有缓存 ",-1)])]),_:1},8,["loading","onClick"]),a(p,{class:"ml-2",icon:"",onClick:d.refreshCaches},{default:s(()=>[a(m,null,{default:s(()=>[...e[1]||(e[1]=[l("mdi-refresh",-1)])]),_:1})]),_:1},8,["onClick"])]),_:1}),a(C,null,{default:s(()=>[i.serviceWorkerActive?k("",!0):(o(),c(_,{key:0,class:"mb-4",type:"warning"},{default:s(()=>[...e[3]||(e[3]=[l(" Service Worker 未激活,缓存管理功能不可用。 ",-1)])]),_:1})),i.message?(o(),c(_,{key:1,type:i.messageType,class:"mb-4"},{default:s(()=>[l(f(i.message),1)]),_:1},8,["type"])):k("",!0),i.caches.length>0?(o(),c(R,{key:2},{default:s(()=>[(o(!0),w(x,null,V(i.caches,u=>(o(),c(z,{key:u.name},{default:s(()=>[a(B,null,{default:s(()=>[r("div",D,[r("span",null,f(d.formatCacheName(u.name)),1),a(H,{class:"ml-2",size:"small"},{default:s(()=>[l(f(u.urls.length)+" 个文件",1)]),_:2},1024)])]),_:2},1024),a(F,null,{default:s(()=>[r("div",O,[a(p,{loading:i.loading,color:"error",size:"small",onClick:h=>d.clearCache(u.name)},{default:s(()=>[...e[4]||(e[4]=[l(" 清除此缓存 ",-1)])]),_:1},8,["loading","onClick"])]),a(E,{lines:"two"},{default:s(()=>[(o(!0),w(x,null,V(u.urls,(h,T)=>(o(),c(N,{key:T},{append:s(()=>[a(p,{color:"error",icon:"",size:"small",onClick:$=>d.clearUrl(u.name,h)},{default:s(()=>[a(m,null,{default:s(()=>[...e[5]||(e[5]=[l("mdi-delete",-1)])]),_:1})]),_:1},8,["onClick"])]),default:s(()=>[a(L,{class:"text-truncate"},{default:s(()=>[l(f(d.getFileName(h)),1)]),_:2},1024),a(P,{class:"text-truncate"},{default:s(()=>[l(f(h),1)]),_:2},1024)]),_:2},1024))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})):i.loading?(o(),c(I,{key:3,type:"article"})):(o(),c(_,{key:4,type:"info"},{default:s(()=>[...e[6]||(e[6]=[l(" 没有找到缓存数据。 ",-1)])]),_:1}))]),_:1})]),_:1})}const S=W(j,[["render",q]]),G={name:"CacheManagementPage",components:{CacheManager:S},metaInfo:{title:"缓存管理"}},J={class:"d-flex align-center mb-6"},K={class:"d-flex align-center mb-2"},Q={class:"d-flex align-center mb-2"};function Y(t,e,n,g,i,d){const u=S;return o(),c(U,null,{default:s(()=>[a(M,null,{default:s(()=>[a(v,{cols:"12"},{default:s(()=>[r("div",J,[a(m,{class:"mr-3",color:"primary",size:"x-large"},{default:s(()=>[...e[0]||(e[0]=[l("mdi-database-cog-outline",-1)])]),_:1}),e[1]||(e[1]=r("div",null,[r("h1",{class:"text-h4"},"缓存管理"),r("div",{class:"text-subtitle-1 text-grey"},"管理应用的本地缓存资源")],-1))]),a(y,{class:"mb-6",color:"info",density:"compact",variant:"tonal"},{default:s(()=>[a(C,{class:"d-flex align-center"},{default:s(()=>[a(m,{class:"mr-2",color:"info"},{default:s(()=>[...e[2]||(e[2]=[l("mdi-information-outline",-1)])]),_:1}),e[3]||(e[3]=r("span",null,"在这里您可以查看和管理应用的缓存文件。清除缓存可能会导致应用需要重新下载资源,但有助于解决某些显示问题。",-1))]),_:1})]),_:1}),a(M,null,{default:s(()=>[a(v,{cols:"12",md:"8"},{default:s(()=>[a(y,{class:"mb-4",variant:"tonal"},{default:s(()=>[a(C,null,{default:s(()=>[r("div",K,[a(m,{class:"mr-2",color:"primary"},{default:s(()=>[...e[4]||(e[4]=[l("mdi-information",-1)])]),_:1}),e[5]||(e[5]=r("span",{class:"text-h6"},"什么是缓存?",-1))]),e[6]||(e[6]=r("p",null," 缓存是浏览器在本地存储的网站资源副本,如图片、脚本和样式表等。这些缓存可以加快页面加载速度,减少数据使用,并在离线时提供基本功能。",-1))]),_:1})]),_:1})]),_:1}),a(v,{cols:"12",md:"4"},{default:s(()=>[a(y,{class:"mb-4",variant:"tonal"},{default:s(()=>[a(C,null,{default:s(()=>[r("div",Q,[a(m,{class:"mr-2",color:"warning"},{default:s(()=>[...e[7]||(e[7]=[l("mdi-lightbulb-outline",-1)])]),_:1}),e[8]||(e[8]=r("span",{class:"text-h6"},"何时清除缓存?",-1))]),e[9]||(e[9]=r("ul",{class:"pl-4"},[r("li",null,"应用显示过时的内容"),r("li",null,"界面出现异常"),r("li",null,"应用功能不正常")],-1))]),_:1})]),_:1})]),_:1})]),_:1}),a(u)]),_:1})]),_:1})]),_:1})}const le=W(G,[["render",Y]]);export{le as default}; diff --git a/assets/ExamConfigEditor-BzFaHh6i.js b/assets/ExamConfigEditor-D-fBjxzF.js similarity index 99% rename from assets/ExamConfigEditor-BzFaHh6i.js rename to assets/ExamConfigEditor-D-fBjxzF.js index a80ac56..aa76a61 100644 --- a/assets/ExamConfigEditor-BzFaHh6i.js +++ b/assets/ExamConfigEditor-D-fBjxzF.js @@ -1,3 +1,3 @@ -import{d as Be}from"./dataProvider-MQ8YacC2.js";import{g as Ce,aq as je,aR as Jt,aB as dt,ar as le,as as Ue,ae as ce,aw as yt,aS as Kt,b as Ve,c as r,i as c,t as K,aT as qt,F as De,E as q,P as ot,Q as We,K as At,aU as Gt,L as Xt,aV as Zt,n as Ke,d as ge,aW as qe,v as D,au as Ft,az as we,a3 as N,a2 as Z,aX as kt,aY as Qt,av as Ne,aZ as bt,p as ye,aA as Me,y as Y,x as Ye,aJ as lt,a_ as tt,aC as ct,a$ as Et,b0 as ea,b1 as $e,b2 as ta,b3 as Ot,b4 as Ge,b5 as pt,b6 as aa,I as Yt,aO as la,b7 as na,b8 as ia,b9 as ra,ba as oa,bb as sa,bc as wt,aG as ua,Z as da,aK as ca,_ as ma,o as j,C as pe,j as re,w as d,A as se,D as ue,G as Qe,a0 as fa,z as Oe,l as Pe,B as va,q as Le,O as ha,bd as ga,J as ya,M as nt,H as ka}from"./index-BUM0TY0E.js";import{V as it}from"./VAlert-DFIvt6kt.js";import{V as ba}from"./VSkeletonLoader-DX2FpkIS.js";import{a as pa,V as et}from"./VTooltip-COe_nB02.js";import{V as Je,b as wa}from"./VChip-vdRDApTi.js";import{a as he,V as He}from"./VRow-CPw1R1BU.js";import{e as Da,f as Ca,V as Ae,g as Va}from"./VTextField-C579e7l1.js";import{V as xa}from"./VTextarea-jqnFSwaH.js";import{V as Ta}from"./VSwitch-CjVC2rsZ.js";import{u as Sa,a as Ma,V as st,b as _a,h as Ia,c as Pa,m as Na,d as Aa}from"./filter-ByuXXWRY.js";import{V as Fa}from"./VCheckboxBtn-CylQNaxd.js";import{V as Dt,m as Ea}from"./VSheet-CuIjBtz7.js";const Oa=ye({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:Boolean,search:String,...Aa({filterKeys:["title"]}),...Na(),...Me(Va({modelValue:null,role:"combobox"}),["validationValue","dirty"])},"VAutocomplete"),Ya=Ce()({name:"VAutocomplete",props:Oa(),emits:{"update:focused":e=>!0,"update:search":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,t){let{slots:n}=t;const{t:i}=je(),a=Z(),s=we(!1),l=we(!0),u=we(!1),o=Z(),m=Z(),g=we(-1),p=we(null),{items:_,transformIn:S,transformOut:B}=Jt(e),{textColorClasses:y,textColorStyles:V}=dt(()=>{var h;return(h=a.value)==null?void 0:h.color}),{InputIcon:w}=Da(e),I=le(e,"search",""),M=le(e,"modelValue",[],h=>S(h===null?[null]:Ue(h)),h=>{const U=B(h);return e.multiple?U:U[0]??null}),f=N(()=>typeof e.counterValue=="function"?e.counterValue(M.value):typeof e.counterValue=="number"?e.counterValue:M.value.length),E=Ca(e),{filteredItems:x,getMatches:v}=Sa(e,_,()=>p.value??(l.value?"":I.value)),T=N(()=>e.hideSelected&&p.value===null?x.value.filter(h=>!M.value.some(U=>U.value===h.value)):x.value),L=Ne(()=>e.closableChips&&!E.isReadonly.value&&!E.isDisabled.value),$=N(()=>!!(e.chips||n.chip)),G=N(()=>$.value||!!n.selection),b=N(()=>M.value.map(h=>h.props.value)),O=N(()=>T.value.find(h=>h.type==="item"&&!h.props.disabled)),W=N(()=>{var U;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&I.value===((U=O.value)==null?void 0:U.title))&&T.value.length>0&&!l.value&&!u.value}),P=N(()=>e.hideNoData&&!T.value.length||E.isReadonly.value||E.isDisabled.value),te=le(e,"menu"),H=N({get:()=>te.value,set:h=>{var U;te.value&&!h&&((U=o.value)!=null&&U.ΨopenChildren.size)||h&&P.value||(te.value=h)}}),{menuId:ke,ariaExpanded:_e,ariaControls:k}=Ma(e,H),A=Z(),R=Pa(A,a);function ae(h){e.openOnClear&&(H.value=!0),I.value=""}function C(){P.value||(H.value=!0)}function F(h){P.value||(s.value&&(h.preventDefault(),h.stopPropagation()),H.value=!H.value)}function ee(h){var U;(kt(h)||h.key==="Backspace")&&((U=a.value)==null||U.focus())}function ne(h){var ie,fe,J,de,Se;if(E.isReadonly.value)return;const U=(ie=a.value)==null?void 0:ie.selectionStart,X=M.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(h.key)&&h.preventDefault(),["Enter","ArrowDown"].includes(h.key)&&(H.value=!0),["Escape"].includes(h.key)&&(H.value=!1),W.value&&["Enter","Tab"].includes(h.key)&&O.value&&!M.value.some(oe=>{let{value:z}=oe;return z===O.value.value})&&be(O.value),h.key==="ArrowDown"&&W.value&&((fe=A.value)==null||fe.focus("next")),["Backspace","Delete"].includes(h.key)){if(!e.multiple&&G.value&&M.value.length>0&&!I.value)return be(M.value[0],!1);if(~g.value){h.preventDefault();const oe=g.value;be(M.value[g.value],!1),g.value=oe>=X-1?X-2:oe}else h.key==="Backspace"&&!I.value&&(g.value=X-1);return}if(e.multiple)if(h.key==="ArrowLeft"){if(g.value<0&&U&&U>0)return;const oe=g.value>-1?g.value-1:X-1;if(M.value[oe])g.value=oe;else{const z=((J=I.value)==null?void 0:J.length)??null;g.value=-1,(de=a.value)==null||de.setSelectionRange(z,z)}}else if(h.key==="ArrowRight"){if(g.value<0)return;const oe=g.value+1;M.value[oe]?g.value=oe:(g.value=-1,(Se=a.value)==null||Se.setSelectionRange(0,0))}else~g.value&&kt(h)&&(g.value=-1)}function me(h){if(bt(a.value,":autofill")||bt(a.value,":-webkit-autofill")){const U=_.value.find(X=>X.title===h.target.value);U&&be(U)}}function xe(){var h;e.eager&&((h=m.value)==null||h.calculateVisibleItems())}function Te(){var h;s.value&&(l.value=!0,(h=a.value)==null||h.focus()),p.value=null}function Q(h){s.value=!0,setTimeout(()=>{u.value=!0})}function Ee(h){u.value=!1}function Xe(h){(h==null||h===""&&!e.multiple&&!G.value)&&(M.value=[])}const Re=we(!1);function be(h){let U=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!h||h.props.disabled))if(e.multiple){const X=M.value.findIndex(fe=>(e.valueComparator||Qt)(fe.value,h.value)),ie=U??!~X;if(~X){const fe=ie?[...M.value,h]:[...M.value];fe.splice(X,1),M.value=fe}else ie&&(M.value=[...M.value,h]);e.clearOnSelect&&(I.value="")}else{const X=U!==!1;M.value=X?[h]:[],p.value=l.value?"":I.value??"",I.value=X&&!G.value?h.title:"",yt(()=>{H.value=!1,l.value=!0})}}return ce(s,(h,U)=>{var X;h!==U&&(h?(Re.value=!0,I.value=e.multiple||G.value?"":String(((X=M.value.at(-1))==null?void 0:X.props.title)??""),l.value=!0,yt(()=>Re.value=!1)):(!e.multiple&&I.value==null&&(M.value=[]),H.value=!1,!l.value&&I.value&&(p.value=I.value),I.value="",g.value=-1))}),ce(I,h=>{!s.value||Re.value||(h&&(H.value=!0),l.value=!h)}),ce(H,h=>{if(!e.hideSelected&&h&&M.value.length&&l.value){const U=T.value.findIndex(X=>M.value.some(ie=>X.value===ie.value));Kt&&window.requestAnimationFrame(()=>{var X;U>=0&&((X=m.value)==null||X.scrollToIndex(U))})}h&&(p.value=null)}),ce(_,(h,U)=>{H.value||s.value&&!U.length&&h.length&&(H.value=!0)}),Ve(()=>{const h=!!(!e.hideNoData||T.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),U=M.value.length>0,X=Ae.filterProps(e);return r(Ae,q({ref:a},X,{modelValue:I.value,"onUpdate:modelValue":[ie=>I.value=ie,Xe],focused:s.value,"onUpdate:focused":ie=>s.value=ie,validationValue:M.externalValue,counterValue:f.value,dirty:U,onChange:me,class:["v-autocomplete",`v-autocomplete--${e.multiple?"multiple":"single"}`,{"v-autocomplete--active-menu":H.value,"v-autocomplete--chips":!!e.chips,"v-autocomplete--selection-slot":!!G.value,"v-autocomplete--selecting-index":g.value>-1},e.class],style:e.style,readonly:E.isReadonly.value,placeholder:U?void 0:e.placeholder,"onClick:clear":ae,"onMousedown:control":C,onKeydown:ne,"aria-expanded":_e.value,"aria-controls":k.value}),{...n,default:ie=>{let{id:fe}=ie;return c(De,null,[r(st,q({id:ke.value,ref:o,modelValue:H.value,"onUpdate:modelValue":J=>H.value=J,activator:"parent",contentClass:"v-autocomplete__content",disabled:P.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:xe,onAfterLeave:Te},e.menuProps),{default:()=>[h&&r(ot,q({ref:A,filterable:!0,selected:b.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:J=>J.preventDefault(),onKeydown:ee,onFocusin:Q,onFocusout:Ee,tabindex:"-1",selectable:!!T.value.length,"aria-live":"polite","aria-labelledby":`${fe.value}-label`,"aria-multiselectable":e.multiple,color:e.itemColor??e.color},R,e.listProps),{default:()=>{var J,de,Se;return[(J=n["prepend-item"])==null?void 0:J.call(n),!T.value.length&&!e.hideNoData&&(((de=n["no-data"])==null?void 0:de.call(n))??r(We,{key:"no-data",title:i(e.noDataText)},null)),r(_a,{ref:m,renderless:!0,items:T.value,itemKey:"value"},{default:oe=>{var vt,ht,gt;let{item:z,index:Ie,itemRef:ve}=oe;const ft=q(z.props,{ref:ve,key:z.value,active:W.value&&z===O.value?!0:void 0,onClick:()=>be(z,null),"aria-posinset":Ie+1,"aria-setsize":T.value.length});return z.type==="divider"?((vt=n.divider)==null?void 0:vt.call(n,{props:z.raw,index:Ie}))??r(At,q(z.props,{key:`divider-${Ie}`}),null):z.type==="subheader"?((ht=n.subheader)==null?void 0:ht.call(n,{props:z.raw,index:Ie}))??r(Gt,q(z.props,{key:`subheader-${Ie}`}),null):((gt=n.item)==null?void 0:gt.call(n,{item:z,index:Ie,props:ft}))??r(We,q(ft,{role:"option"}),{prepend:Ze=>{let{isSelected:zt}=Ze;return c(De,null,[e.multiple&&!e.hideSelected?r(Fa,{key:z.value,modelValue:zt,ripple:!1,tabindex:"-1","aria-hidden":!0,onClick:Wt=>Wt.preventDefault()},null):void 0,z.props.prependAvatar&&r(Xt,{image:z.props.prependAvatar},null),z.props.prependIcon&&r(K,{icon:z.props.prependIcon},null)])},title:()=>{var Ze;return l.value?z.title:Ia("v-autocomplete",z.title,(Ze=v(z))==null?void 0:Ze.title)}})}}),(Se=n["append-item"])==null?void 0:Se.call(n)]}})]}),M.value.map((J,de)=>{function Se(ve){ve.stopPropagation(),ve.preventDefault(),be(J,!1)}const oe=q(Je.filterProps(J.props),{"onClick:close":Se,onKeydown(ve){ve.key!=="Enter"&&ve.key!==" "||(ve.preventDefault(),ve.stopPropagation(),Se(ve))},onMousedown(ve){ve.preventDefault(),ve.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),z=$.value?!!n.chip:!!n.selection,Ie=z?Zt($.value?n.chip({item:J,index:de,props:oe}):n.selection({item:J,index:de})):void 0;if(!(z&&!Ie))return c("div",{key:J.value,class:ge(["v-autocomplete__selection",de===g.value&&["v-autocomplete__selection--selected",y.value]]),style:Ke(de===g.value?V.value:{})},[$.value?n.chip?r(qe,{key:"chip-defaults",defaults:{VChip:{closable:L.value,size:"small",text:J.title}}},{default:()=>[Ie]}):r(Je,q({key:"chip",closable:L.value,size:"small",text:J.title,disabled:J.props.disabled},oe),null):Ie??c("span",{class:"v-autocomplete__selection-text"},[J.title,e.multiple&&de!0,"click:month":()=>!0,"click:prev":()=>!0,"click:next":()=>!0,"click:prev-year":()=>!0,"click:next-year":()=>!0},setup(e,t){let{emit:n,slots:i}=t;const{t:a}=je(),s=N(()=>Array.isArray(e.disabled)?e.disabled.includes("text"):!!e.disabled),l=N(()=>Array.isArray(e.disabled)?e.disabled.includes("mode"):!!e.disabled),u=N(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-month"):!!e.disabled),o=N(()=>Array.isArray(e.disabled)?e.disabled.includes("next-month"):!!e.disabled),m=N(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-year"):!!e.disabled),g=N(()=>Array.isArray(e.disabled)?e.disabled.includes("next-year"):!!e.disabled);function p(){n("click:prev")}function _(){n("click:next")}function S(){n("click:prev-year")}function B(){n("click:next-year")}function y(){n("click:year")}function V(){n("click:month")}return Ve(()=>{const w={VBtn:{density:"comfortable",variant:"text"}},I=r(Y,{"data-testid":"prev-month",disabled:u.value,icon:e.prevIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.previousMonth"),onClick:p},null),M=r(Y,{"data-testid":"next-month",disabled:o.value,icon:e.nextIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.nextMonth"),onClick:_},null),f=r(Y,{"data-testid":"prev-year",disabled:m.value,icon:e.prevIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.previousYear"),onClick:S},null),E=r(Y,{"data-testid":"next-year",disabled:g.value,icon:e.nextIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.nextYear"),onClick:B},null),x=r(Y,{class:"v-date-picker-controls__only-month-btn","data-testid":"month-btn",density:"default",disabled:s.value,text:e.monthText,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:V},null),v=r(Y,{class:"v-date-picker-controls__only-year-btn","data-testid":"year-btn",density:"default",disabled:l.value,text:e.yearText,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:y},null),T=r(Y,{class:"v-date-picker-controls__year-btn","data-testid":"year-btn",density:"default",disabled:l.value,text:e.text,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:y},null),L=c(De,null,[r(Y,{class:"v-date-picker-controls__month-btn","data-testid":"month-btn",height:"36",disabled:s.value,text:e.text,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:V},null),r(Y,{class:"v-date-picker-controls__mode-btn","data-testid":"year-btn",disabled:l.value,icon:e.modeIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:y},null)]),$={viewMode:e.viewMode,disabled:Array.isArray(e.disabled)?e.disabled:[],monthYearText:e.text??"",monthText:e.monthText??"",yearText:e.yearText??"",openMonths:V,openYears:y,prevMonth:p,nextMonth:_,prevYear:S,nextYear:B},G=c(De,null,[e.noMonthPicker?T:L,r(Ye,null,null),c("div",{class:"v-date-picker-controls__month"},[I,M])]),b=c(De,null,[c("div",{class:"v-date-picker-controls__month"},[I,x,M]),r(Ye,null,null),c("div",{class:"v-date-picker-controls__year"},[f,v,E])]);return r(qe,{defaults:w},{default:()=>{var O;return[c("div",{class:ge(["v-date-picker-controls",`v-date-picker-controls--variant-${e.controlVariant}`]),style:{"--v-date-picker-controls-height":lt(e.controlHeight)}},[((O=i.default)==null?void 0:O.call(i,$))??c(De,null,[e.controlVariant==="modal"&&G,e.controlVariant==="docked"&&b])])]}})}),{}}}),Ua=ye({appendIcon:tt,color:String,header:String,transition:String,onClick:ea()},"VDatePickerHeader"),Vt=Ce()({name:"VDatePickerHeader",props:Ua(),emits:{click:()=>!0,"click:append":()=>!0},setup(e,t){let{emit:n,slots:i}=t;const{backgroundColorClasses:a,backgroundColorStyles:s}=ct(()=>e.color);function l(){n("click")}function u(){n("click:append")}return Ve(()=>{const o=!!(i.default||e.header),m=!!(i.append||e.appendIcon);return c("div",{class:ge(["v-date-picker-header",{"v-date-picker-header--clickable":!!e.onClick},a.value]),style:Ke(s.value),onClick:l},[i.prepend&&c("div",{key:"prepend",class:"v-date-picker-header__prepend"},[i.prepend()]),o&&r(Et,{key:"content",name:e.transition},{default:()=>{var g;return[c("div",{key:e.header,class:"v-date-picker-header__content"},[((g=i.default)==null?void 0:g.call(i))??e.header])]}}),m&&c("div",{class:"v-date-picker-header__append"},[i.append?r(qe,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VBtn:{icon:e.appendIcon,variant:"text"}}},{default:()=>{var g;return[(g=i.append)==null?void 0:g.call(i)]}}):r(Y,{key:"append-btn",icon:e.appendIcon,variant:"text",onClick:u},null)])])}),{}}}),Ba=ye({allowedDates:[Array,Function],disabled:{type:Boolean,default:null},displayValue:null,modelValue:Array,month:[Number,String],max:null,min:null,showAdjacentMonths:Boolean,year:[Number,String],weekdays:{type:Array,default:()=>[0,1,2,3,4,5,6]},weeksInMonth:{type:String,default:"dynamic"},firstDayOfWeek:{type:[Number,String],default:void 0},firstDayOfYear:{type:[Number,String],default:void 0},weekdayFormat:String},"calendar");function La(e){const t=$e(),n=le(e,"modelValue",[],y=>Ue(y).map(V=>t.date(V))),i=N(()=>e.displayValue?t.date(e.displayValue):n.value.length>0?t.date(n.value[0]):e.min?t.date(e.min):Array.isArray(e.allowedDates)?t.date(e.allowedDates[0]):t.date()),a=le(e,"year",void 0,y=>{const V=y!=null?Number(y):t.getYear(i.value);return t.startOfYear(t.setYear(t.date(),V))},y=>t.getYear(y)),s=le(e,"month",void 0,y=>{const V=y!=null?Number(y):t.getMonth(i.value),w=t.setYear(t.startOfMonth(t.date()),t.getYear(a.value));return t.setMonth(w,V)},y=>t.getMonth(y)),l=N(()=>{const y=t.toJsDate(t.startOfWeek(t.date(),e.firstDayOfWeek)).getDay();return t.getWeekdays(e.firstDayOfWeek,e.weekdayFormat).filter((V,w)=>e.weekdays.includes((w+y)%7))}),u=N(()=>{const y=t.getWeekArray(s.value,e.firstDayOfWeek),V=y.flat(),w=6*7;if(e.weeksInMonth==="static"&&V.lengthe.weekdays.includes(t.toJsDate(w).getDay())).map((w,I)=>{const M=t.toISO(w),f=!t.isSameMonth(w,s.value),E=t.isSameDay(w,t.startOfMonth(s.value)),x=t.isSameDay(w,t.endOfMonth(s.value)),v=t.isSameDay(w,s.value),T=e.weekdays.length;return{date:w,formatted:t.format(w,"keyboardDate"),isAdjacent:f,isDisabled:B(w),isEnd:x,isHidden:f&&!e.showAdjacentMonths,isSame:v,isSelected:n.value.some(L=>t.isSameDay(w,L)),isStart:E,isToday:t.isSameDay(w,V),isWeekEnd:I%T===T-1,isWeekStart:I%T===0,isoDate:M,localized:t.format(w,"dayOfMonth"),month:t.getMonth(w),year:t.getYear(w)}})}const m=N(()=>{const y=t.startOfWeek(i.value,e.firstDayOfWeek),V=[];for(let I=0;I<=6;I++)V.push(t.addDays(y,I));const w=t.date();return o(V,w)}),g=N(()=>{const y=u.value.flat(),V=t.date();return o(y,V)}),p=N(()=>u.value.map(y=>y.length?t.getWeek(y[0],e.firstDayOfWeek,e.firstDayOfYear):null)),{minDate:_,maxDate:S}=Bt(e);function B(y){if(e.disabled)return!0;const V=t.date(y);return _.value&&t.isBefore(t.endOfDay(V),_.value)||S.value&&t.isAfter(V,S.value)?!0:Array.isArray(e.allowedDates)&&e.allowedDates.length>0?!e.allowedDates.some(w=>t.isSameDay(t.date(w),V)):typeof e.allowedDates=="function"?!e.allowedDates(V):!1}return{displayValue:i,daysInMonth:g,daysInWeek:m,genDays:o,model:n,weeksInMonth:u,weekdayLabels:l,weekNumbers:p}}function Bt(e){const t=$e(),n=N(()=>{if(!e.min)return null;const l=t.date(e.min);return t.isValid(l)?l:null}),i=N(()=>{if(!e.max)return null;const l=t.date(e.max);return t.isValid(l)?l:null});function a(l){return n.value&&t.isBefore(l,n.value)?n.value:i.value&&t.isAfter(l,i.value)?i.value:l}function s(l){return(!n.value||t.isAfter(l,n.value))&&(!i.value||t.isBefore(l,i.value))}return{minDate:n,maxDate:i,clampDate:a,isInAllowedRange:s}}const Lt=ye({color:String,hideWeekdays:Boolean,multiple:[Boolean,Number,String],showWeek:Boolean,transition:{type:String,default:"picker-transition"},reverseTransition:{type:String,default:"picker-reverse-transition"},events:{type:[Array,Function,Object],default:()=>null},eventColor:{type:[Array,Function,Object,String],default:()=>null},...Me(Ba(),["displayValue"])},"VDatePickerMonth"),xt=Ce()({name:"VDatePickerMonth",props:Lt(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=Z(),{t:s}=je(),{daysInMonth:l,model:u,weekNumbers:o,weekdayLabels:m}=La(e),g=$e(),p=we(),_=we(),S=we(!1),B=Ne(()=>S.value?e.reverseTransition:e.transition);e.multiple==="range"&&u.value.length>0&&(p.value=u.value[0],u.value.length>1&&(_.value=u.value[u.value.length-1]));const y=N(()=>{const x=["number","string"].includes(typeof e.multiple)?Number(e.multiple):1/0;return u.value.length>=x});ce(l,(x,v)=>{v&&(S.value=g.isBefore(x[0].date,v[0].date))});function V(x){const v=g.startOfDay(x);if(u.value.length===0?p.value=void 0:u.value.length===1&&(p.value=u.value[0],_.value=void 0),!p.value)p.value=v,u.value=[p.value];else if(_.value)p.value=x,_.value=void 0,u.value=[p.value];else{if(g.isSameDay(v,p.value)){p.value=void 0,u.value=[];return}else g.isBefore(v,p.value)?(_.value=g.endOfDay(p.value),p.value=v):_.value=g.endOfDay(v);u.value=ta(g,p.value,_.value)}}function w(x){const v=g.format(x.date,"fullDateWithWeekday"),T=x.isToday?"currentDate":"selectDate";return s(`$vuetify.datePicker.ariaLabel.${T}`,v)}function I(x){const v=u.value.findIndex(T=>g.isSameDay(T,x));if(v===-1)u.value=[...u.value,x];else{const T=[...u.value];T.splice(v,1),u.value=T}}function M(x){e.multiple==="range"?V(x):e.multiple?I(x):u.value=[x]}function f(x){const{events:v,eventColor:T}=e;let L,$=[];if(Array.isArray(v)?L=v.includes(x):v instanceof Function?L=v(x)||!1:v?L=v[x]||!1:L=!1,L)L!==!0?$=Ue(L):typeof T=="string"?$=[T]:typeof T=="function"?$=Ue(T(x)):Array.isArray(T)?$=T:typeof T=="object"&&T!==null&&($=Ue(T[x]));else return[];return $.length?$.filter(Boolean).map(G=>typeof G=="string"?G:"surface-variant"):["surface-variant"]}function E(x){const v=f(x);return v.length?c("div",{class:"v-date-picker-month__events"},[v.map(T=>r(pa,{dot:!0,color:T},null))]):null}Ve(()=>c("div",{class:"v-date-picker-month",style:{"--v-date-picker-days-in-week":e.weekdays.length}},[e.showWeek&&c("div",{key:"weeks",class:"v-date-picker-month__weeks"},[!e.hideWeekdays&&c("div",{key:"hide-week-days",class:"v-date-picker-month__day"},[D(" ")]),o.value.map(x=>c("div",{class:ge(["v-date-picker-month__day","v-date-picker-month__day--adjacent"])},[x]))]),r(Et,{name:B.value},{default:()=>{var x;return[c("div",{ref:a,key:(x=l.value[0].date)==null?void 0:x.toString(),class:"v-date-picker-month__days"},[!e.hideWeekdays&&m.value.map(v=>c("div",{class:ge(["v-date-picker-month__day","v-date-picker-month__weekday"])},[v])),l.value.map((v,T)=>{var $;const L={props:{class:"v-date-picker-month__day-btn",color:v.isSelected||v.isToday?e.color:void 0,disabled:v.isDisabled,icon:!0,ripple:!1,variant:v.isSelected?"flat":v.isToday?"outlined":"text","aria-label":w(v),"aria-current":v.isToday?"date":void 0,onClick:()=>M(v.date)},item:v,i:T};return y.value&&!v.isSelected&&(v.isDisabled=!0),c("div",{class:ge(["v-date-picker-month__day",{"v-date-picker-month__day--adjacent":v.isAdjacent,"v-date-picker-month__day--hide-adjacent":v.isHidden,"v-date-picker-month__day--selected":v.isSelected,"v-date-picker-month__day--week-end":v.isWeekEnd,"v-date-picker-month__day--week-start":v.isWeekStart}]),"data-v-date":v.isDisabled?void 0:v.isoDate},[(e.showAdjacentMonths||!v.isAdjacent)&&((($=i.day)==null?void 0:$.call(i,L))??r(Y,L.props,{default:()=>[v.localized,E(v.isoDate)]}))])})])]}})]))}}),Rt=ye({color:String,height:[String,Number],min:null,max:null,modelValue:Number,year:Number,allowedMonths:[Array,Function]},"VDatePickerMonths"),Tt=Ce()({name:"VDatePickerMonths",props:Rt(),emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=$e(),s=le(e,"modelValue"),l=N(()=>{let o=a.startOfYear(a.date());return e.year&&(o=a.setYear(o,e.year)),Ge(12).map(m=>{const g=a.format(o,"monthShort"),p=a.format(o,"month"),_=!!(!u(m)||e.min&&a.isAfter(a.startOfMonth(a.date(e.min)),o)||e.max&&a.isAfter(o,a.startOfMonth(a.date(e.max))));return o=a.getNextMonth(o),{isDisabled:_,text:g,label:p,value:m}})});Ot(()=>{s.value=s.value??a.getMonth(a.date())});function u(o){return Array.isArray(e.allowedMonths)&&e.allowedMonths.length?e.allowedMonths.includes(o):typeof e.allowedMonths=="function"?e.allowedMonths(o):!0}return Ve(()=>c("div",{class:"v-date-picker-months",style:{height:lt(e.height)}},[c("div",{class:"v-date-picker-months__content"},[l.value.map((o,m)=>{var _;const g={active:s.value===m,ariaLabel:o.label,color:s.value===m?e.color:void 0,disabled:o.isDisabled,rounded:!0,text:o.text,variant:s.value===o.value?"flat":"text",onClick:()=>p(m)};function p(S){if(s.value===S){n("update:modelValue",s.value);return}s.value=S}return((_=i.month)==null?void 0:_.call(i,{month:o,i:m,props:g}))??r(Y,q({key:"month"},g),null)})])])),{}}}),Ht=ye({color:String,height:[String,Number],min:null,max:null,modelValue:Number,allowedYears:[Array,Function]},"VDatePickerYears"),St=Ce()({name:"VDatePickerYears",props:Ht(),directives:{vIntersect:pt},emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=$e(),s=le(e,"modelValue"),l=we(!1),u=N(()=>{const p=a.getYear(a.date());let _=p-100,S=p+52;e.min&&(_=a.getYear(a.date(e.min))),e.max&&(S=a.getYear(a.date(e.max)));let B=a.startOfYear(a.date());return B=a.setYear(B,_),Ge(S-_+1,_).map(y=>{const V=a.format(B,"year");return B=a.setYear(B,a.getYear(B)+1),{text:V,value:y,isDisabled:!g(y)}})});Ot(()=>{s.value=s.value??a.getYear(a.date())});const o=aa();function m(){var p;(p=o.el)==null||p.scrollIntoView({block:"center"})}function g(p){return Array.isArray(e.allowedYears)&&e.allowedYears.length?e.allowedYears.includes(p):typeof e.allowedYears=="function"?e.allowedYears(p):!0}return Ve(()=>Yt(c("div",{class:"v-date-picker-years",style:{height:lt(e.height)}},[c("div",{class:"v-date-picker-years__content",onFocus:()=>{var p;return(p=o.el)==null?void 0:p.focus()},onFocusin:()=>l.value=!0,onFocusout:()=>l.value=!1,tabindex:l.value?-1:0},[u.value.map((p,_)=>{var B;const S={ref:s.value===p.value?o:void 0,active:s.value===p.value,color:s.value===p.value?e.color:void 0,rounded:!0,text:p.text,disabled:p.isDisabled,variant:s.value===p.value?"flat":"text",onClick:()=>{if(s.value===p.value){n("update:modelValue",s.value);return}s.value=p.value}};return((B=i.year)==null?void 0:B.call(i,{year:p,i:_,props:S}))??r(Y,q({key:"month"},S),null)})])]),[[pt,{handler:m},null,{once:!0}]])),{}}}),Ra=la("v-picker-title"),mt=ye({bgColor:String,divided:Boolean,landscape:Boolean,title:String,hideHeader:Boolean,hideTitle:Boolean,...Ea()},"VPicker"),at=Ce()({name:"VPicker",props:mt(),setup(e,t){let{slots:n}=t;const{backgroundColorClasses:i,backgroundColorStyles:a}=ct(()=>e.color);return Ve(()=>{const s=Dt.filterProps(e),l=!e.hideTitle&&!!(e.title||n.title);return r(Dt,q(s,{color:e.bgColor,class:["v-picker",{"v-picker--divided":e.divided,"v-picker--landscape":e.landscape,"v-picker--with-actions":!!n.actions},e.class],style:e.style}),{default:()=>{var u;return[!e.hideHeader&&c("div",{key:"header",class:ge(["v-picker__header-wrapper",i.value]),style:Ke([a.value])},[l&&r(Ra,{key:"picker-title"},{default:()=>{var o;return[((o=n.title)==null?void 0:o.call(n))??e.title]}}),n.header&&c("div",{class:"v-picker__header"},[n.header()])]),c("div",{class:"v-picker__body"},[(u=n.default)==null?void 0:u.call(n)]),n.actions&&r(qe,{defaults:{VBtn:{slim:!0,variant:"text"}}},{default:()=>[c("div",{class:"v-picker__actions"},[n.actions()])]})]}})}),{}}}),Ha=ye({header:{type:String,default:"$vuetify.datePicker.header"},headerColor:String,headerDateFormat:{type:String,default:"normalDateWithWeekday"},landscapeHeaderWidth:[Number,String],...Me(Ut(),["active","monthText","yearText"]),...Lt({weeksInMonth:"static"}),...Me(Rt(),["modelValue"]),...Me(Ht(),["modelValue"]),...mt({title:"$vuetify.datePicker.title"}),modelValue:null},"VDatePicker"),Mt=Ce()({name:"VDatePicker",props:Ha(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0,"update:viewMode":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=$e(),{t:s}=je(),{rtlClasses:l}=na(),u=le(e,"modelValue",void 0,C=>Ue(C).map(F=>a.date(F)),C=>e.multiple?C:C[0]),o=le(e,"viewMode"),{minDate:m,maxDate:g,clampDate:p}=Bt(e),_=N(()=>{var ee;const C=a.date(),F=(ee=u.value)!=null&&ee[0]?a.date(u.value[0]):p(C);return F&&a.isValid(F)?F:C}),S=Ne(()=>e.headerColor??e.color),B=le(e,"month"),y=N({get:()=>Number(B.value??a.getMonth(a.startOfMonth(_.value))),set:C=>B.value=C}),V=le(e,"year"),w=N({get:()=>Number(V.value??a.getYear(a.startOfYear(a.setMonth(_.value,y.value)))),set:C=>V.value=C}),I=we(!1),M=N(()=>{if(e.multiple&&u.value.length>1)return s("$vuetify.datePicker.itemsSelected",u.value.length);const C=u.value[0]&&a.isValid(u.value[0])?a.format(a.date(u.value[0]),e.headerDateFormat):s(e.header);return e.landscape&&C.split(" ").length===3?C.replace(" ",` +import{d as Be}from"./dataProvider-Cg4CSn_f.js";import{g as Ce,aq as je,aR as Jt,aB as dt,ar as le,as as Ue,ae as ce,aw as yt,aS as Kt,b as Ve,c as r,i as c,t as K,aT as qt,F as De,E as q,P as ot,Q as We,K as At,aU as Gt,L as Xt,aV as Zt,n as Ke,d as ge,aW as qe,v as D,au as Ft,az as we,a3 as N,a2 as Z,aX as kt,aY as Qt,av as Ne,aZ as bt,p as ye,aA as Me,y as Y,x as Ye,aJ as lt,a_ as tt,aC as ct,a$ as Et,b0 as ea,b1 as $e,b2 as ta,b3 as Ot,b4 as Ge,b5 as pt,b6 as aa,I as Yt,aO as la,b7 as na,b8 as ia,b9 as ra,ba as oa,bb as sa,bc as wt,aG as ua,Z as da,aK as ca,_ as ma,o as j,C as pe,j as re,w as d,A as se,D as ue,G as Qe,a0 as fa,z as Oe,l as Pe,B as va,q as Le,O as ha,bd as ga,J as ya,M as nt,H as ka}from"./index-BXl8SUNP.js";import{V as it}from"./VAlert-DncbAu3E.js";import{V as ba}from"./VSkeletonLoader-DKLQDg5n.js";import{a as pa,V as et}from"./VTooltip-CyZjDjKS.js";import{V as Je,b as wa}from"./VChip-jIQL7s_d.js";import{a as he,V as He}from"./VRow-DFPdcq_b.js";import{e as Da,f as Ca,V as Ae,g as Va}from"./VTextField-DxxbesnN.js";import{V as xa}from"./VTextarea-B0_PT1is.js";import{V as Ta}from"./VSwitch-7fkmr9E6.js";import{u as Sa,a as Ma,V as st,b as _a,h as Ia,c as Pa,m as Na,d as Aa}from"./filter-BHXElGQ1.js";import{V as Fa}from"./VCheckboxBtn-iC2wkMdx.js";import{V as Dt,m as Ea}from"./VSheet-CWiuVQYN.js";const Oa=ye({autoSelectFirst:{type:[Boolean,String]},clearOnSelect:Boolean,search:String,...Aa({filterKeys:["title"]}),...Na(),...Me(Va({modelValue:null,role:"combobox"}),["validationValue","dirty"])},"VAutocomplete"),Ya=Ce()({name:"VAutocomplete",props:Oa(),emits:{"update:focused":e=>!0,"update:search":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,t){let{slots:n}=t;const{t:i}=je(),a=Z(),s=we(!1),l=we(!0),u=we(!1),o=Z(),m=Z(),g=we(-1),p=we(null),{items:_,transformIn:S,transformOut:B}=Jt(e),{textColorClasses:y,textColorStyles:V}=dt(()=>{var h;return(h=a.value)==null?void 0:h.color}),{InputIcon:w}=Da(e),I=le(e,"search",""),M=le(e,"modelValue",[],h=>S(h===null?[null]:Ue(h)),h=>{const U=B(h);return e.multiple?U:U[0]??null}),f=N(()=>typeof e.counterValue=="function"?e.counterValue(M.value):typeof e.counterValue=="number"?e.counterValue:M.value.length),E=Ca(e),{filteredItems:x,getMatches:v}=Sa(e,_,()=>p.value??(l.value?"":I.value)),T=N(()=>e.hideSelected&&p.value===null?x.value.filter(h=>!M.value.some(U=>U.value===h.value)):x.value),L=Ne(()=>e.closableChips&&!E.isReadonly.value&&!E.isDisabled.value),$=N(()=>!!(e.chips||n.chip)),G=N(()=>$.value||!!n.selection),b=N(()=>M.value.map(h=>h.props.value)),O=N(()=>T.value.find(h=>h.type==="item"&&!h.props.disabled)),W=N(()=>{var U;return(e.autoSelectFirst===!0||e.autoSelectFirst==="exact"&&I.value===((U=O.value)==null?void 0:U.title))&&T.value.length>0&&!l.value&&!u.value}),P=N(()=>e.hideNoData&&!T.value.length||E.isReadonly.value||E.isDisabled.value),te=le(e,"menu"),H=N({get:()=>te.value,set:h=>{var U;te.value&&!h&&((U=o.value)!=null&&U.ΨopenChildren.size)||h&&P.value||(te.value=h)}}),{menuId:ke,ariaExpanded:_e,ariaControls:k}=Ma(e,H),A=Z(),R=Pa(A,a);function ae(h){e.openOnClear&&(H.value=!0),I.value=""}function C(){P.value||(H.value=!0)}function F(h){P.value||(s.value&&(h.preventDefault(),h.stopPropagation()),H.value=!H.value)}function ee(h){var U;(kt(h)||h.key==="Backspace")&&((U=a.value)==null||U.focus())}function ne(h){var ie,fe,J,de,Se;if(E.isReadonly.value)return;const U=(ie=a.value)==null?void 0:ie.selectionStart,X=M.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(h.key)&&h.preventDefault(),["Enter","ArrowDown"].includes(h.key)&&(H.value=!0),["Escape"].includes(h.key)&&(H.value=!1),W.value&&["Enter","Tab"].includes(h.key)&&O.value&&!M.value.some(oe=>{let{value:z}=oe;return z===O.value.value})&&be(O.value),h.key==="ArrowDown"&&W.value&&((fe=A.value)==null||fe.focus("next")),["Backspace","Delete"].includes(h.key)){if(!e.multiple&&G.value&&M.value.length>0&&!I.value)return be(M.value[0],!1);if(~g.value){h.preventDefault();const oe=g.value;be(M.value[g.value],!1),g.value=oe>=X-1?X-2:oe}else h.key==="Backspace"&&!I.value&&(g.value=X-1);return}if(e.multiple)if(h.key==="ArrowLeft"){if(g.value<0&&U&&U>0)return;const oe=g.value>-1?g.value-1:X-1;if(M.value[oe])g.value=oe;else{const z=((J=I.value)==null?void 0:J.length)??null;g.value=-1,(de=a.value)==null||de.setSelectionRange(z,z)}}else if(h.key==="ArrowRight"){if(g.value<0)return;const oe=g.value+1;M.value[oe]?g.value=oe:(g.value=-1,(Se=a.value)==null||Se.setSelectionRange(0,0))}else~g.value&&kt(h)&&(g.value=-1)}function me(h){if(bt(a.value,":autofill")||bt(a.value,":-webkit-autofill")){const U=_.value.find(X=>X.title===h.target.value);U&&be(U)}}function xe(){var h;e.eager&&((h=m.value)==null||h.calculateVisibleItems())}function Te(){var h;s.value&&(l.value=!0,(h=a.value)==null||h.focus()),p.value=null}function Q(h){s.value=!0,setTimeout(()=>{u.value=!0})}function Ee(h){u.value=!1}function Xe(h){(h==null||h===""&&!e.multiple&&!G.value)&&(M.value=[])}const Re=we(!1);function be(h){let U=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!(!h||h.props.disabled))if(e.multiple){const X=M.value.findIndex(fe=>(e.valueComparator||Qt)(fe.value,h.value)),ie=U??!~X;if(~X){const fe=ie?[...M.value,h]:[...M.value];fe.splice(X,1),M.value=fe}else ie&&(M.value=[...M.value,h]);e.clearOnSelect&&(I.value="")}else{const X=U!==!1;M.value=X?[h]:[],p.value=l.value?"":I.value??"",I.value=X&&!G.value?h.title:"",yt(()=>{H.value=!1,l.value=!0})}}return ce(s,(h,U)=>{var X;h!==U&&(h?(Re.value=!0,I.value=e.multiple||G.value?"":String(((X=M.value.at(-1))==null?void 0:X.props.title)??""),l.value=!0,yt(()=>Re.value=!1)):(!e.multiple&&I.value==null&&(M.value=[]),H.value=!1,!l.value&&I.value&&(p.value=I.value),I.value="",g.value=-1))}),ce(I,h=>{!s.value||Re.value||(h&&(H.value=!0),l.value=!h)}),ce(H,h=>{if(!e.hideSelected&&h&&M.value.length&&l.value){const U=T.value.findIndex(X=>M.value.some(ie=>X.value===ie.value));Kt&&window.requestAnimationFrame(()=>{var X;U>=0&&((X=m.value)==null||X.scrollToIndex(U))})}h&&(p.value=null)}),ce(_,(h,U)=>{H.value||s.value&&!U.length&&h.length&&(H.value=!0)}),Ve(()=>{const h=!!(!e.hideNoData||T.value.length||n["prepend-item"]||n["append-item"]||n["no-data"]),U=M.value.length>0,X=Ae.filterProps(e);return r(Ae,q({ref:a},X,{modelValue:I.value,"onUpdate:modelValue":[ie=>I.value=ie,Xe],focused:s.value,"onUpdate:focused":ie=>s.value=ie,validationValue:M.externalValue,counterValue:f.value,dirty:U,onChange:me,class:["v-autocomplete",`v-autocomplete--${e.multiple?"multiple":"single"}`,{"v-autocomplete--active-menu":H.value,"v-autocomplete--chips":!!e.chips,"v-autocomplete--selection-slot":!!G.value,"v-autocomplete--selecting-index":g.value>-1},e.class],style:e.style,readonly:E.isReadonly.value,placeholder:U?void 0:e.placeholder,"onClick:clear":ae,"onMousedown:control":C,onKeydown:ne,"aria-expanded":_e.value,"aria-controls":k.value}),{...n,default:ie=>{let{id:fe}=ie;return c(De,null,[r(st,q({id:ke.value,ref:o,modelValue:H.value,"onUpdate:modelValue":J=>H.value=J,activator:"parent",contentClass:"v-autocomplete__content",disabled:P.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:xe,onAfterLeave:Te},e.menuProps),{default:()=>[h&&r(ot,q({ref:A,filterable:!0,selected:b.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:J=>J.preventDefault(),onKeydown:ee,onFocusin:Q,onFocusout:Ee,tabindex:"-1",selectable:!!T.value.length,"aria-live":"polite","aria-labelledby":`${fe.value}-label`,"aria-multiselectable":e.multiple,color:e.itemColor??e.color},R,e.listProps),{default:()=>{var J,de,Se;return[(J=n["prepend-item"])==null?void 0:J.call(n),!T.value.length&&!e.hideNoData&&(((de=n["no-data"])==null?void 0:de.call(n))??r(We,{key:"no-data",title:i(e.noDataText)},null)),r(_a,{ref:m,renderless:!0,items:T.value,itemKey:"value"},{default:oe=>{var vt,ht,gt;let{item:z,index:Ie,itemRef:ve}=oe;const ft=q(z.props,{ref:ve,key:z.value,active:W.value&&z===O.value?!0:void 0,onClick:()=>be(z,null),"aria-posinset":Ie+1,"aria-setsize":T.value.length});return z.type==="divider"?((vt=n.divider)==null?void 0:vt.call(n,{props:z.raw,index:Ie}))??r(At,q(z.props,{key:`divider-${Ie}`}),null):z.type==="subheader"?((ht=n.subheader)==null?void 0:ht.call(n,{props:z.raw,index:Ie}))??r(Gt,q(z.props,{key:`subheader-${Ie}`}),null):((gt=n.item)==null?void 0:gt.call(n,{item:z,index:Ie,props:ft}))??r(We,q(ft,{role:"option"}),{prepend:Ze=>{let{isSelected:zt}=Ze;return c(De,null,[e.multiple&&!e.hideSelected?r(Fa,{key:z.value,modelValue:zt,ripple:!1,tabindex:"-1","aria-hidden":!0,onClick:Wt=>Wt.preventDefault()},null):void 0,z.props.prependAvatar&&r(Xt,{image:z.props.prependAvatar},null),z.props.prependIcon&&r(K,{icon:z.props.prependIcon},null)])},title:()=>{var Ze;return l.value?z.title:Ia("v-autocomplete",z.title,(Ze=v(z))==null?void 0:Ze.title)}})}}),(Se=n["append-item"])==null?void 0:Se.call(n)]}})]}),M.value.map((J,de)=>{function Se(ve){ve.stopPropagation(),ve.preventDefault(),be(J,!1)}const oe=q(Je.filterProps(J.props),{"onClick:close":Se,onKeydown(ve){ve.key!=="Enter"&&ve.key!==" "||(ve.preventDefault(),ve.stopPropagation(),Se(ve))},onMousedown(ve){ve.preventDefault(),ve.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),z=$.value?!!n.chip:!!n.selection,Ie=z?Zt($.value?n.chip({item:J,index:de,props:oe}):n.selection({item:J,index:de})):void 0;if(!(z&&!Ie))return c("div",{key:J.value,class:ge(["v-autocomplete__selection",de===g.value&&["v-autocomplete__selection--selected",y.value]]),style:Ke(de===g.value?V.value:{})},[$.value?n.chip?r(qe,{key:"chip-defaults",defaults:{VChip:{closable:L.value,size:"small",text:J.title}}},{default:()=>[Ie]}):r(Je,q({key:"chip",closable:L.value,size:"small",text:J.title,disabled:J.props.disabled},oe),null):Ie??c("span",{class:"v-autocomplete__selection-text"},[J.title,e.multiple&&de!0,"click:month":()=>!0,"click:prev":()=>!0,"click:next":()=>!0,"click:prev-year":()=>!0,"click:next-year":()=>!0},setup(e,t){let{emit:n,slots:i}=t;const{t:a}=je(),s=N(()=>Array.isArray(e.disabled)?e.disabled.includes("text"):!!e.disabled),l=N(()=>Array.isArray(e.disabled)?e.disabled.includes("mode"):!!e.disabled),u=N(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-month"):!!e.disabled),o=N(()=>Array.isArray(e.disabled)?e.disabled.includes("next-month"):!!e.disabled),m=N(()=>Array.isArray(e.disabled)?e.disabled.includes("prev-year"):!!e.disabled),g=N(()=>Array.isArray(e.disabled)?e.disabled.includes("next-year"):!!e.disabled);function p(){n("click:prev")}function _(){n("click:next")}function S(){n("click:prev-year")}function B(){n("click:next-year")}function y(){n("click:year")}function V(){n("click:month")}return Ve(()=>{const w={VBtn:{density:"comfortable",variant:"text"}},I=r(Y,{"data-testid":"prev-month",disabled:u.value,icon:e.prevIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.previousMonth"),onClick:p},null),M=r(Y,{"data-testid":"next-month",disabled:o.value,icon:e.nextIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.nextMonth"),onClick:_},null),f=r(Y,{"data-testid":"prev-year",disabled:m.value,icon:e.prevIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.previousYear"),onClick:S},null),E=r(Y,{"data-testid":"next-year",disabled:g.value,icon:e.nextIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.nextYear"),onClick:B},null),x=r(Y,{class:"v-date-picker-controls__only-month-btn","data-testid":"month-btn",density:"default",disabled:s.value,text:e.monthText,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:V},null),v=r(Y,{class:"v-date-picker-controls__only-year-btn","data-testid":"year-btn",density:"default",disabled:l.value,text:e.yearText,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:y},null),T=r(Y,{class:"v-date-picker-controls__year-btn","data-testid":"year-btn",density:"default",disabled:l.value,text:e.text,appendIcon:e.modeIcon,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:y},null),L=c(De,null,[r(Y,{class:"v-date-picker-controls__month-btn","data-testid":"month-btn",height:"36",disabled:s.value,text:e.text,rounded:!0,"aria-label":a("$vuetify.datePicker.ariaLabel.selectMonth"),onClick:V},null),r(Y,{class:"v-date-picker-controls__mode-btn","data-testid":"year-btn",disabled:l.value,icon:e.modeIcon,"aria-label":a("$vuetify.datePicker.ariaLabel.selectYear"),onClick:y},null)]),$={viewMode:e.viewMode,disabled:Array.isArray(e.disabled)?e.disabled:[],monthYearText:e.text??"",monthText:e.monthText??"",yearText:e.yearText??"",openMonths:V,openYears:y,prevMonth:p,nextMonth:_,prevYear:S,nextYear:B},G=c(De,null,[e.noMonthPicker?T:L,r(Ye,null,null),c("div",{class:"v-date-picker-controls__month"},[I,M])]),b=c(De,null,[c("div",{class:"v-date-picker-controls__month"},[I,x,M]),r(Ye,null,null),c("div",{class:"v-date-picker-controls__year"},[f,v,E])]);return r(qe,{defaults:w},{default:()=>{var O;return[c("div",{class:ge(["v-date-picker-controls",`v-date-picker-controls--variant-${e.controlVariant}`]),style:{"--v-date-picker-controls-height":lt(e.controlHeight)}},[((O=i.default)==null?void 0:O.call(i,$))??c(De,null,[e.controlVariant==="modal"&&G,e.controlVariant==="docked"&&b])])]}})}),{}}}),Ua=ye({appendIcon:tt,color:String,header:String,transition:String,onClick:ea()},"VDatePickerHeader"),Vt=Ce()({name:"VDatePickerHeader",props:Ua(),emits:{click:()=>!0,"click:append":()=>!0},setup(e,t){let{emit:n,slots:i}=t;const{backgroundColorClasses:a,backgroundColorStyles:s}=ct(()=>e.color);function l(){n("click")}function u(){n("click:append")}return Ve(()=>{const o=!!(i.default||e.header),m=!!(i.append||e.appendIcon);return c("div",{class:ge(["v-date-picker-header",{"v-date-picker-header--clickable":!!e.onClick},a.value]),style:Ke(s.value),onClick:l},[i.prepend&&c("div",{key:"prepend",class:"v-date-picker-header__prepend"},[i.prepend()]),o&&r(Et,{key:"content",name:e.transition},{default:()=>{var g;return[c("div",{key:e.header,class:"v-date-picker-header__content"},[((g=i.default)==null?void 0:g.call(i))??e.header])]}}),m&&c("div",{class:"v-date-picker-header__append"},[i.append?r(qe,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VBtn:{icon:e.appendIcon,variant:"text"}}},{default:()=>{var g;return[(g=i.append)==null?void 0:g.call(i)]}}):r(Y,{key:"append-btn",icon:e.appendIcon,variant:"text",onClick:u},null)])])}),{}}}),Ba=ye({allowedDates:[Array,Function],disabled:{type:Boolean,default:null},displayValue:null,modelValue:Array,month:[Number,String],max:null,min:null,showAdjacentMonths:Boolean,year:[Number,String],weekdays:{type:Array,default:()=>[0,1,2,3,4,5,6]},weeksInMonth:{type:String,default:"dynamic"},firstDayOfWeek:{type:[Number,String],default:void 0},firstDayOfYear:{type:[Number,String],default:void 0},weekdayFormat:String},"calendar");function La(e){const t=$e(),n=le(e,"modelValue",[],y=>Ue(y).map(V=>t.date(V))),i=N(()=>e.displayValue?t.date(e.displayValue):n.value.length>0?t.date(n.value[0]):e.min?t.date(e.min):Array.isArray(e.allowedDates)?t.date(e.allowedDates[0]):t.date()),a=le(e,"year",void 0,y=>{const V=y!=null?Number(y):t.getYear(i.value);return t.startOfYear(t.setYear(t.date(),V))},y=>t.getYear(y)),s=le(e,"month",void 0,y=>{const V=y!=null?Number(y):t.getMonth(i.value),w=t.setYear(t.startOfMonth(t.date()),t.getYear(a.value));return t.setMonth(w,V)},y=>t.getMonth(y)),l=N(()=>{const y=t.toJsDate(t.startOfWeek(t.date(),e.firstDayOfWeek)).getDay();return t.getWeekdays(e.firstDayOfWeek,e.weekdayFormat).filter((V,w)=>e.weekdays.includes((w+y)%7))}),u=N(()=>{const y=t.getWeekArray(s.value,e.firstDayOfWeek),V=y.flat(),w=6*7;if(e.weeksInMonth==="static"&&V.lengthe.weekdays.includes(t.toJsDate(w).getDay())).map((w,I)=>{const M=t.toISO(w),f=!t.isSameMonth(w,s.value),E=t.isSameDay(w,t.startOfMonth(s.value)),x=t.isSameDay(w,t.endOfMonth(s.value)),v=t.isSameDay(w,s.value),T=e.weekdays.length;return{date:w,formatted:t.format(w,"keyboardDate"),isAdjacent:f,isDisabled:B(w),isEnd:x,isHidden:f&&!e.showAdjacentMonths,isSame:v,isSelected:n.value.some(L=>t.isSameDay(w,L)),isStart:E,isToday:t.isSameDay(w,V),isWeekEnd:I%T===T-1,isWeekStart:I%T===0,isoDate:M,localized:t.format(w,"dayOfMonth"),month:t.getMonth(w),year:t.getYear(w)}})}const m=N(()=>{const y=t.startOfWeek(i.value,e.firstDayOfWeek),V=[];for(let I=0;I<=6;I++)V.push(t.addDays(y,I));const w=t.date();return o(V,w)}),g=N(()=>{const y=u.value.flat(),V=t.date();return o(y,V)}),p=N(()=>u.value.map(y=>y.length?t.getWeek(y[0],e.firstDayOfWeek,e.firstDayOfYear):null)),{minDate:_,maxDate:S}=Bt(e);function B(y){if(e.disabled)return!0;const V=t.date(y);return _.value&&t.isBefore(t.endOfDay(V),_.value)||S.value&&t.isAfter(V,S.value)?!0:Array.isArray(e.allowedDates)&&e.allowedDates.length>0?!e.allowedDates.some(w=>t.isSameDay(t.date(w),V)):typeof e.allowedDates=="function"?!e.allowedDates(V):!1}return{displayValue:i,daysInMonth:g,daysInWeek:m,genDays:o,model:n,weeksInMonth:u,weekdayLabels:l,weekNumbers:p}}function Bt(e){const t=$e(),n=N(()=>{if(!e.min)return null;const l=t.date(e.min);return t.isValid(l)?l:null}),i=N(()=>{if(!e.max)return null;const l=t.date(e.max);return t.isValid(l)?l:null});function a(l){return n.value&&t.isBefore(l,n.value)?n.value:i.value&&t.isAfter(l,i.value)?i.value:l}function s(l){return(!n.value||t.isAfter(l,n.value))&&(!i.value||t.isBefore(l,i.value))}return{minDate:n,maxDate:i,clampDate:a,isInAllowedRange:s}}const Lt=ye({color:String,hideWeekdays:Boolean,multiple:[Boolean,Number,String],showWeek:Boolean,transition:{type:String,default:"picker-transition"},reverseTransition:{type:String,default:"picker-reverse-transition"},events:{type:[Array,Function,Object],default:()=>null},eventColor:{type:[Array,Function,Object,String],default:()=>null},...Me(Ba(),["displayValue"])},"VDatePickerMonth"),xt=Ce()({name:"VDatePickerMonth",props:Lt(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=Z(),{t:s}=je(),{daysInMonth:l,model:u,weekNumbers:o,weekdayLabels:m}=La(e),g=$e(),p=we(),_=we(),S=we(!1),B=Ne(()=>S.value?e.reverseTransition:e.transition);e.multiple==="range"&&u.value.length>0&&(p.value=u.value[0],u.value.length>1&&(_.value=u.value[u.value.length-1]));const y=N(()=>{const x=["number","string"].includes(typeof e.multiple)?Number(e.multiple):1/0;return u.value.length>=x});ce(l,(x,v)=>{v&&(S.value=g.isBefore(x[0].date,v[0].date))});function V(x){const v=g.startOfDay(x);if(u.value.length===0?p.value=void 0:u.value.length===1&&(p.value=u.value[0],_.value=void 0),!p.value)p.value=v,u.value=[p.value];else if(_.value)p.value=x,_.value=void 0,u.value=[p.value];else{if(g.isSameDay(v,p.value)){p.value=void 0,u.value=[];return}else g.isBefore(v,p.value)?(_.value=g.endOfDay(p.value),p.value=v):_.value=g.endOfDay(v);u.value=ta(g,p.value,_.value)}}function w(x){const v=g.format(x.date,"fullDateWithWeekday"),T=x.isToday?"currentDate":"selectDate";return s(`$vuetify.datePicker.ariaLabel.${T}`,v)}function I(x){const v=u.value.findIndex(T=>g.isSameDay(T,x));if(v===-1)u.value=[...u.value,x];else{const T=[...u.value];T.splice(v,1),u.value=T}}function M(x){e.multiple==="range"?V(x):e.multiple?I(x):u.value=[x]}function f(x){const{events:v,eventColor:T}=e;let L,$=[];if(Array.isArray(v)?L=v.includes(x):v instanceof Function?L=v(x)||!1:v?L=v[x]||!1:L=!1,L)L!==!0?$=Ue(L):typeof T=="string"?$=[T]:typeof T=="function"?$=Ue(T(x)):Array.isArray(T)?$=T:typeof T=="object"&&T!==null&&($=Ue(T[x]));else return[];return $.length?$.filter(Boolean).map(G=>typeof G=="string"?G:"surface-variant"):["surface-variant"]}function E(x){const v=f(x);return v.length?c("div",{class:"v-date-picker-month__events"},[v.map(T=>r(pa,{dot:!0,color:T},null))]):null}Ve(()=>c("div",{class:"v-date-picker-month",style:{"--v-date-picker-days-in-week":e.weekdays.length}},[e.showWeek&&c("div",{key:"weeks",class:"v-date-picker-month__weeks"},[!e.hideWeekdays&&c("div",{key:"hide-week-days",class:"v-date-picker-month__day"},[D(" ")]),o.value.map(x=>c("div",{class:ge(["v-date-picker-month__day","v-date-picker-month__day--adjacent"])},[x]))]),r(Et,{name:B.value},{default:()=>{var x;return[c("div",{ref:a,key:(x=l.value[0].date)==null?void 0:x.toString(),class:"v-date-picker-month__days"},[!e.hideWeekdays&&m.value.map(v=>c("div",{class:ge(["v-date-picker-month__day","v-date-picker-month__weekday"])},[v])),l.value.map((v,T)=>{var $;const L={props:{class:"v-date-picker-month__day-btn",color:v.isSelected||v.isToday?e.color:void 0,disabled:v.isDisabled,icon:!0,ripple:!1,variant:v.isSelected?"flat":v.isToday?"outlined":"text","aria-label":w(v),"aria-current":v.isToday?"date":void 0,onClick:()=>M(v.date)},item:v,i:T};return y.value&&!v.isSelected&&(v.isDisabled=!0),c("div",{class:ge(["v-date-picker-month__day",{"v-date-picker-month__day--adjacent":v.isAdjacent,"v-date-picker-month__day--hide-adjacent":v.isHidden,"v-date-picker-month__day--selected":v.isSelected,"v-date-picker-month__day--week-end":v.isWeekEnd,"v-date-picker-month__day--week-start":v.isWeekStart}]),"data-v-date":v.isDisabled?void 0:v.isoDate},[(e.showAdjacentMonths||!v.isAdjacent)&&((($=i.day)==null?void 0:$.call(i,L))??r(Y,L.props,{default:()=>[v.localized,E(v.isoDate)]}))])})])]}})]))}}),Rt=ye({color:String,height:[String,Number],min:null,max:null,modelValue:Number,year:Number,allowedMonths:[Array,Function]},"VDatePickerMonths"),Tt=Ce()({name:"VDatePickerMonths",props:Rt(),emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=$e(),s=le(e,"modelValue"),l=N(()=>{let o=a.startOfYear(a.date());return e.year&&(o=a.setYear(o,e.year)),Ge(12).map(m=>{const g=a.format(o,"monthShort"),p=a.format(o,"month"),_=!!(!u(m)||e.min&&a.isAfter(a.startOfMonth(a.date(e.min)),o)||e.max&&a.isAfter(o,a.startOfMonth(a.date(e.max))));return o=a.getNextMonth(o),{isDisabled:_,text:g,label:p,value:m}})});Ot(()=>{s.value=s.value??a.getMonth(a.date())});function u(o){return Array.isArray(e.allowedMonths)&&e.allowedMonths.length?e.allowedMonths.includes(o):typeof e.allowedMonths=="function"?e.allowedMonths(o):!0}return Ve(()=>c("div",{class:"v-date-picker-months",style:{height:lt(e.height)}},[c("div",{class:"v-date-picker-months__content"},[l.value.map((o,m)=>{var _;const g={active:s.value===m,ariaLabel:o.label,color:s.value===m?e.color:void 0,disabled:o.isDisabled,rounded:!0,text:o.text,variant:s.value===o.value?"flat":"text",onClick:()=>p(m)};function p(S){if(s.value===S){n("update:modelValue",s.value);return}s.value=S}return((_=i.month)==null?void 0:_.call(i,{month:o,i:m,props:g}))??r(Y,q({key:"month"},g),null)})])])),{}}}),Ht=ye({color:String,height:[String,Number],min:null,max:null,modelValue:Number,allowedYears:[Array,Function]},"VDatePickerYears"),St=Ce()({name:"VDatePickerYears",props:Ht(),directives:{vIntersect:pt},emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=$e(),s=le(e,"modelValue"),l=we(!1),u=N(()=>{const p=a.getYear(a.date());let _=p-100,S=p+52;e.min&&(_=a.getYear(a.date(e.min))),e.max&&(S=a.getYear(a.date(e.max)));let B=a.startOfYear(a.date());return B=a.setYear(B,_),Ge(S-_+1,_).map(y=>{const V=a.format(B,"year");return B=a.setYear(B,a.getYear(B)+1),{text:V,value:y,isDisabled:!g(y)}})});Ot(()=>{s.value=s.value??a.getYear(a.date())});const o=aa();function m(){var p;(p=o.el)==null||p.scrollIntoView({block:"center"})}function g(p){return Array.isArray(e.allowedYears)&&e.allowedYears.length?e.allowedYears.includes(p):typeof e.allowedYears=="function"?e.allowedYears(p):!0}return Ve(()=>Yt(c("div",{class:"v-date-picker-years",style:{height:lt(e.height)}},[c("div",{class:"v-date-picker-years__content",onFocus:()=>{var p;return(p=o.el)==null?void 0:p.focus()},onFocusin:()=>l.value=!0,onFocusout:()=>l.value=!1,tabindex:l.value?-1:0},[u.value.map((p,_)=>{var B;const S={ref:s.value===p.value?o:void 0,active:s.value===p.value,color:s.value===p.value?e.color:void 0,rounded:!0,text:p.text,disabled:p.isDisabled,variant:s.value===p.value?"flat":"text",onClick:()=>{if(s.value===p.value){n("update:modelValue",s.value);return}s.value=p.value}};return((B=i.year)==null?void 0:B.call(i,{year:p,i:_,props:S}))??r(Y,q({key:"month"},S),null)})])]),[[pt,{handler:m},null,{once:!0}]])),{}}}),Ra=la("v-picker-title"),mt=ye({bgColor:String,divided:Boolean,landscape:Boolean,title:String,hideHeader:Boolean,hideTitle:Boolean,...Ea()},"VPicker"),at=Ce()({name:"VPicker",props:mt(),setup(e,t){let{slots:n}=t;const{backgroundColorClasses:i,backgroundColorStyles:a}=ct(()=>e.color);return Ve(()=>{const s=Dt.filterProps(e),l=!e.hideTitle&&!!(e.title||n.title);return r(Dt,q(s,{color:e.bgColor,class:["v-picker",{"v-picker--divided":e.divided,"v-picker--landscape":e.landscape,"v-picker--with-actions":!!n.actions},e.class],style:e.style}),{default:()=>{var u;return[!e.hideHeader&&c("div",{key:"header",class:ge(["v-picker__header-wrapper",i.value]),style:Ke([a.value])},[l&&r(Ra,{key:"picker-title"},{default:()=>{var o;return[((o=n.title)==null?void 0:o.call(n))??e.title]}}),n.header&&c("div",{class:"v-picker__header"},[n.header()])]),c("div",{class:"v-picker__body"},[(u=n.default)==null?void 0:u.call(n)]),n.actions&&r(qe,{defaults:{VBtn:{slim:!0,variant:"text"}}},{default:()=>[c("div",{class:"v-picker__actions"},[n.actions()])]})]}})}),{}}}),Ha=ye({header:{type:String,default:"$vuetify.datePicker.header"},headerColor:String,headerDateFormat:{type:String,default:"normalDateWithWeekday"},landscapeHeaderWidth:[Number,String],...Me(Ut(),["active","monthText","yearText"]),...Lt({weeksInMonth:"static"}),...Me(Rt(),["modelValue"]),...Me(Ht(),["modelValue"]),...mt({title:"$vuetify.datePicker.title"}),modelValue:null},"VDatePicker"),Mt=Ce()({name:"VDatePicker",props:Ha(),emits:{"update:modelValue":e=>!0,"update:month":e=>!0,"update:year":e=>!0,"update:viewMode":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const a=$e(),{t:s}=je(),{rtlClasses:l}=na(),u=le(e,"modelValue",void 0,C=>Ue(C).map(F=>a.date(F)),C=>e.multiple?C:C[0]),o=le(e,"viewMode"),{minDate:m,maxDate:g,clampDate:p}=Bt(e),_=N(()=>{var ee;const C=a.date(),F=(ee=u.value)!=null&&ee[0]?a.date(u.value[0]):p(C);return F&&a.isValid(F)?F:C}),S=Ne(()=>e.headerColor??e.color),B=le(e,"month"),y=N({get:()=>Number(B.value??a.getMonth(a.startOfMonth(_.value))),set:C=>B.value=C}),V=le(e,"year"),w=N({get:()=>Number(V.value??a.getYear(a.startOfYear(a.setMonth(_.value,y.value)))),set:C=>V.value=C}),I=we(!1),M=N(()=>{if(e.multiple&&u.value.length>1)return s("$vuetify.datePicker.itemsSelected",u.value.length);const C=u.value[0]&&a.isValid(u.value[0])?a.format(a.date(u.value[0]),e.headerDateFormat):s(e.header);return e.landscape&&C.split(" ").length===3?C.replace(" ",` `):C}),f=Ne(()=>{let C=a.date();return C=a.setDate(C,1),C=a.setMonth(C,y.value),C=a.setYear(C,w.value),C}),E=Ne(()=>a.format(f.value,"monthAndYear")),x=Ne(()=>a.format(f.value,"monthShort")),v=Ne(()=>a.format(f.value,"year")),T=Ne(()=>`date-picker-header${I.value?"-reverse":""}-transition`),L=N(()=>{if(e.disabled)return!0;const C=[];if(o.value!=="month")C.push("prev-month","next-month","prev-year","next-year");else{let F=a.date();if(F=a.startOfMonth(F),F=a.setMonth(F,y.value),F=a.setYear(F,w.value),m.value){const ee=a.addDays(a.startOfMonth(F),-1),ne=a.addDays(a.startOfYear(F),-1);a.isAfter(m.value,ee)&&C.push("prev-month"),a.isAfter(m.value,ne)&&C.push("prev-year")}if(g.value){const ee=a.addDays(a.endOfMonth(F),1),ne=a.addDays(a.endOfYear(F),1);a.isAfter(ee,g.value)&&C.push("next-month"),a.isAfter(ne,g.value)&&C.push("next-year")}}return C}),$=N(()=>e.allowedYears||O),G=N(()=>e.allowedMonths||W);function b(C,F){const ee=e.allowedDates;if(typeof ee!="function")return!0;const ne=1+ra(a,C,F);for(let me=0;me0?y.value--:(w.value--,y.value=11,ae()),R()}function H(){if(w.value++,g.value){const C=String(y.value+1).padStart(2,"0"),F=a.parseISO(`${w.value}-${C}-01`);a.isAfter(F,g.value)&&(y.value=a.getMonth(g.value))}ae()}function ke(){if(w.value--,m.value){const C=String(y.value+1).padStart(2,"0"),F=a.endOfMonth(a.parseISO(`${w.value}-${C}-01`));a.isAfter(m.value,F)&&(y.value=a.getMonth(m.value))}ae()}function _e(){o.value="month"}function k(){o.value=o.value==="months"?"month":"months"}function A(){o.value=o.value==="year"?"month":"year"}function R(){o.value==="months"&&k()}function ae(){o.value==="year"&&A()}return ce(u,(C,F)=>{const ee=Ue(F),ne=Ue(C);if(!ne.length)return;const me=a.date(ee[ee.length-1]),xe=a.date(ne[ne.length-1]);if(a.isSameDay(me,xe))return;const Te=a.getMonth(xe),Q=a.getYear(xe);Te!==y.value&&(y.value=Te,R()),Q!==w.value&&(w.value=Q,ae()),I.value=a.isBefore(me,xe)}),Ve(()=>{const C=at.filterProps(e),F=Me(Ct.filterProps(e),["viewMode"]),ee=Vt.filterProps(e),ne=xt.filterProps(e),me=Me(Tt.filterProps(e),["modelValue"]),xe=Me(St.filterProps(e),["modelValue"]),Te={color:S.value,header:M.value,transition:T.value};return r(at,q(C,{color:S.value,class:["v-date-picker",`v-date-picker--${o.value}`,{"v-date-picker--show-week":e.showWeek},l.value,e.class],style:[{"--v-date-picker-landscape-header-width":lt(e.landscapeHeaderWidth)},e.style]}),{title:()=>{var Q;return((Q=i.title)==null?void 0:Q.call(i))??c("div",{class:"v-date-picker__title"},[s(e.title)])},header:()=>i.header?r(qe,{defaults:{VDatePickerHeader:{...Te}}},{default:()=>{var Q;return[(Q=i.header)==null?void 0:Q.call(i,Te)]}}):r(Vt,q({key:"header"},ee,Te,{onClick:o.value!=="month"?_e:void 0}),{prepend:i.prepend,append:i.append}),default:()=>c(De,null,[r(Ct,q(F,{disabled:L.value,viewMode:o.value,text:E.value,monthText:x.value,yearText:v.value,"onClick:next":P,"onClick:prev":te,"onClick:nextYear":H,"onClick:prevYear":ke,"onClick:month":k,"onClick:year":A}),{default:i.controls}),r(ia,{hideOnLeave:!0},{default:()=>[o.value==="months"?r(Tt,q({key:"date-picker-months"},me,{modelValue:y.value,"onUpdate:modelValue":[Q=>y.value=Q,R],min:m.value,max:g.value,year:w.value,allowedMonths:G.value}),{month:i.month}):o.value==="year"?r(St,q({key:"date-picker-years"},xe,{modelValue:w.value,"onUpdate:modelValue":[Q=>w.value=Q,ae],min:m.value,max:g.value,allowedYears:$.value}),{year:i.year}):r(xt,q({key:"date-picker-month"},ne,{modelValue:u.value,"onUpdate:modelValue":Q=>u.value=Q,month:y.value,"onUpdate:month":[Q=>y.value=Q,R],year:w.value,"onUpdate:year":[Q=>w.value=Q,ae],min:m.value,max:g.value}),{day:i.day})]})]),actions:i.actions})}),{}}}),ja=ye({allowedValues:Function,ampm:Boolean,color:String,disabled:Boolean,displayedValue:null,double:Boolean,format:{type:Function,default:e=>e},max:{type:Number,required:!0},min:{type:Number,required:!0},scrollable:Boolean,readonly:Boolean,rotate:{type:Number,default:0},step:{type:Number,default:1},modelValue:{type:Number}},"VTimePickerClock"),_t=Ce()({name:"VTimePickerClock",props:ja(),emits:{change:e=>!0,input:e=>!0},setup(e,t){let{emit:n}=t;const i=Z(null),a=Z(null),s=Z(void 0),l=Z(!1),u=Z(null),o=Z(null),m=sa(k=>n("change",k),750),{textColorClasses:g,textColorStyles:p}=dt(()=>e.color),{backgroundColorClasses:_,backgroundColorStyles:S}=ct(()=>e.color),B=N(()=>e.max-e.min+1),y=N(()=>e.double?B.value/2:B.value),V=N(()=>360/y.value),w=N(()=>V.value*Math.PI/180),I=N(()=>e.modelValue==null?e.min:e.modelValue),M=N(()=>.62),f=N(()=>{const k=[];for(let A=e.min;A<=e.max;A=A+e.step)k.push(A);return k});ce(()=>e.modelValue,k=>{s.value=k});function E(k){s.value!==k&&(s.value=k),n("input",k)}function x(k){return!e.allowedValues||e.allowedValues(k)}function v(k){if(!e.scrollable||e.disabled)return;k.preventDefault();const A=Math.sign(-k.deltaY||1);let R=I.value;do R=R+A,R=(R-e.min+B.value)%B.value+e.min;while(!x(R)&&R!==I.value);R!==e.displayedValue&&E(R),m(R)}function T(k){return e.double&&k-e.min>=y.value}function L(k){return T(k)?M.value:1}function $(k){const A=e.rotate*Math.PI/180;return{x:Math.sin((k-e.min)*w.value+A)*L(k),y:-Math.cos((k-e.min)*w.value+A)*L(k)}}function G(k,A){const R=(Math.round(k/V.value)+(A?y.value:0))%B.value+e.min;return k<360-V.value/2?R:A?e.max-y.value+1:e.min}function b(k){const{x:A,y:R}=$(k);return{left:`${Math.round(50+A*50)}%`,top:`${Math.round(50+R*50)}%`}}function O(k,A){const R=A.x-k.x,ae=A.y-k.y;return Math.sqrt(R*R+ae*ae)}function W(k,A){const R=2*Math.atan2(A.y-k.y-O(k,A),A.x-k.x);return Math.abs(R*180/Math.PI)}function P(k){u.value===null&&(u.value=k),o.value=k,E(k)}function te(k){var Xe,Re;if(k.preventDefault(),!l.value&&k.type!=="click"||!i.value)return;const{width:A,top:R,left:ae}=(Xe=i.value)==null?void 0:Xe.getBoundingClientRect(),{width:C}=((Re=a.value)==null?void 0:Re.getBoundingClientRect())??{width:0},{clientX:F,clientY:ee}="touches"in k?k.touches[0]:k,ne={x:A/2,y:-A/2},me={x:F-ae,y:R-ee},xe=Math.round(W(ne,me)-e.rotate+360)%360,Te=e.double&&O(ne,me)<(C+C*M.value)/4,Q=Math.ceil(15/V.value);let Ee;for(let be=0;bec("div",{class:ge([{"v-time-picker-clock":!0,"v-time-picker-clock--indeterminate":e.modelValue==null,"v-time-picker-clock--readonly":e.readonly}]),onMousedown:H,onTouchstart:H,onWheel:v,ref:i},[c("div",{class:"v-time-picker-clock__inner",ref:a},[c("div",{class:ge([{"v-time-picker-clock__hand":!0,"v-time-picker-clock__hand--inner":T(e.modelValue)},g.value]),style:Ke([{transform:`rotate(${e.rotate+V.value*(I.value-e.min)}deg) scaleY(${L(I.value)})`},p.value])},null),f.value.map(k=>{const A=k===I.value;return c("div",{class:ge([{"v-time-picker-clock__item":!0,"v-time-picker-clock__item--active":A,"v-time-picker-clock__item--disabled":e.disabled||!x(k)},A&&_.value]),style:Ke([b(k),A&&S.value])},[c("span",null,[e.format(k)])])})])]))}}),$a=ye({active:Boolean,color:String,disabled:Boolean,label:String,modelValue:String,readonly:Boolean},"VTimePickerField"),rt=Ce()({name:"VTimePickerField",inheritAttrs:!1,props:$a(),emits:{"update:modelValue":e=>!0},setup(e,t){let{emit:n,attrs:i}=t;const{textColorClasses:a,textColorStyles:s}=dt(()=>e.color),l=Z(),u=we(!1);function o(m){if(["Backspace","Delete"].includes(m.key)){m.preventDefault();const g=m.target;g.value="",n("update:modelValue",null)}}return Ve(()=>c("div",null,[r(Ae,q({ref:l,_as:"VTimePickerField",autocomplete:"off",class:["v-time-picker-controls__time__field",{"v-time-picker-controls__time__field--active":e.active},e.active?a.value:[]],style:e.active?s.value:[],disabled:e.disabled,variant:"solo-filled",inputmode:"numeric",hideDetails:!0,flat:!0,modelValue:e.modelValue??(u.value?"":"--"),"onUpdate:modelValue":m=>n("update:modelValue",m),onKeydown:o,onFocus:()=>u.value=!0,onBlur:()=>u.value=!1},i),null),c("div",{class:"v-time-picker-controls__field-label"},[e.label])])),Ft({},l)}});function Fe(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:2;return String(e).padStart(t,"0")}function jt(e){return e?(e-1)%12+1:12}function ut(e,t){return e%12+(t==="pm"?12:0)}function ze(e){const t=e.replaceAll(/\D/g,"");return t.length>0?Number(t):null}function za(e,t,n){if(n){if(e===12&&t)return{value:1};if(e===11&&t)return{value:12,togglePeriod:!0};if(e===12&&!t)return{value:11,togglePeriod:!0};if(e===1&&!t)return{value:12}}else{if(e===23&&t)return{value:0};if(e===0&&!t)return{value:23}}return{value:e+(t?1:-1)}}function It(e,t){return e===59&&t?0:e===0&&!t?59:e+(t?1:-1)}const Wa=ye({ampm:Boolean,color:String,disabled:Boolean,hour:[Number,String],minute:[Number,String],second:[Number,String],period:String,readonly:Boolean,useSeconds:Boolean,value:Number,viewMode:String},"VTimePickerControls"),Pt=Ce()({name:"VTimePickerControls",props:Wa(),emits:{"update:period":e=>!0,"update:viewMode":e=>!0,"update:hour":e=>!0,"update:minute":e=>!0,"update:second":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const{t:a}=je(),s={in:f=>{if(f==null||isNaN(Number(f)))return null;const E=Number(f);return e.ampm?Fe(jt(E)):Fe(E)},out:f=>{if(isNaN(Number(f))||f==null||f==="")return null;const E=typeof f=="string"?ze(f):Number(f);return E===null?null:e.ampm?ut(E,e.period??"am"):wt(E,0,23)}},l=le(e,"hour",void 0,s.in,s.out),u={in:f=>f!=null&&!isNaN(Number(f))?Fe(`${f}`):null,out:f=>{if(isNaN(Number(f))||f==null||f==="")return null;const E=typeof f=="string"?ze(f):Number(f);return E!==null?wt(E,0,59):null}},o=le(e,"minute",void 0,u.in,u.out),m=le(e,"second",void 0,u.in,u.out);function g(f){if(!["ArrowUp","ArrowDown"].includes(f.key))return;f.preventDefault(),f.stopPropagation();const E=Number(l.value??0),x=e.ampm?e.period??"am":null,{value:v,togglePeriod:T}=za(E,f.key==="ArrowUp",x);l.value=Fe(v),T&&n("update:period",e.period==="am"?"pm":"am")}function p(f){["ArrowUp","ArrowDown"].includes(f.key)&&(f.preventDefault(),f.stopPropagation(),o.value=It(Number(o.value),f.key==="ArrowUp"))}function _(f){["ArrowUp","ArrowDown"].includes(f.key)&&(f.preventDefault(),f.stopPropagation(),m.value=It(Number(m.value),f.key==="ArrowUp"))}function S(f,E,x){return v=>{if(!v.data)return;const T=v.target,{value:L,selectionStart:$,selectionEnd:G}=T??{};if(ze(v.data)===null){v.preventDefault();return}const b=L?L.slice(0,$)+v.data+L.slice(G):v.data;if(b.length>2){if($===G&&G===0&&v.data.trim().startsWith("0")){v.preventDefault(),T.value=b.trim().substring(0,2),x(T.value),v.data.trim().length===1&&T.setSelectionRange(1,1);return}if($===G&&G===1&&L.startsWith("0")){v.preventDefault(),T.value=b.trim().substring(0,2),x(T.value);return}const W=e.viewMode==="hour"?e.ampm?12:23:59;if(ze(b)>W){v.preventDefault(),T.value=Fe(String(ze(v.data)).substring(0,2)),x(T.value);return}}const O=f(b);E(O)&&v.preventDefault()}}const B=Z(),y=Z(),V=Z();ce(()=>e.viewMode,(f,E)=>{switch(E){case"hour":B.value.blur();break;case"minute":y.value.blur();break;case"second":V.value.blur();break}});const w=S(s.out,f=>s.in(f)===l.value,f=>l.value=f),I=S(u.out,f=>u.in(f)===o.value,f=>o.value=f),M=S(u.out,f=>u.in(f)===m.value,f=>m.value=f);return Ve(()=>c("div",{class:"v-time-picker-controls"},[c("div",{class:ge({"v-time-picker-controls__time":!0,"v-time-picker-controls__time--with-ampm":e.ampm,"v-time-picker-controls__time--with-seconds":e.useSeconds})},[r(rt,{ref:B,active:e.viewMode==="hour",color:e.color,disabled:e.disabled,label:a("$vuetify.timePicker.hour"),modelValue:l.value,"onUpdate:modelValue":f=>l.value=f,onKeydown:g,onBeforeinput:w,onFocus:()=>n("update:viewMode","hour")},null),c("span",{class:"v-time-picker-controls__time__separator"},[D(":")]),r(rt,{ref:y,active:e.viewMode==="minute",color:e.color,disabled:e.disabled,label:a("$vuetify.timePicker.minute"),modelValue:o.value,"onUpdate:modelValue":f=>o.value=f,onKeydown:p,onBeforeinput:I,onFocus:()=>n("update:viewMode","minute")},null),e.useSeconds&&c("span",{key:"secondsDivider",class:"v-time-picker-controls__time__separator"},[D(":")]),e.useSeconds&&r(rt,{key:"secondsVal",ref:V,active:e.viewMode==="second",color:e.color,disabled:e.disabled,label:a("$vuetify.timePicker.second"),modelValue:m.value,"onUpdate:modelValue":f=>m.value=f,onKeydown:_,onBeforeinput:M,onFocus:()=>n("update:viewMode","second")},null),e.ampm&&c("div",{class:"v-time-picker-controls__ampm"},[r(Y,{active:e.period==="am",color:e.period==="am"?e.color:void 0,class:ge({"v-time-picker-controls__ampm__am":!0,"v-time-picker-controls__ampm__btn":!0,"v-time-picker-controls__ampm__btn__active":e.period==="am"}),disabled:e.disabled,text:a("$vuetify.timePicker.am"),variant:e.disabled&&e.period==="am"?"elevated":"tonal",onClick:()=>e.period!=="am"?n("update:period","am"):null},null),r(Y,{active:e.period==="pm",color:e.period==="pm"?e.color:void 0,class:ge({"v-time-picker-controls__ampm__pm":!0,"v-time-picker-controls__ampm__btn":!0,"v-time-picker-controls__ampm__btn__active":e.period==="pm"}),disabled:e.disabled,text:a("$vuetify.timePicker.pm"),variant:e.disabled&&e.period==="pm"?"elevated":"tonal",onClick:()=>e.period!=="pm"?n("update:period","pm"):null},null)])])])),{}}}),Ja=Ge(24),$t=Ge(12),Ka=$t.map(e=>e+12);Ge(60);const qa=ye({allowedHours:[Function,Array],allowedMinutes:[Function,Array],allowedSeconds:[Function,Array],disabled:Boolean,format:{type:String,default:"ampm"},max:String,min:String,viewMode:{type:String,default:"hour"},period:{type:String,default:"am",validator:e=>["am","pm"].includes(e)},modelValue:null,readonly:Boolean,scrollable:Boolean,useSeconds:Boolean,variant:{type:String,default:"dial"},...Me(mt({title:"$vuetify.timePicker.title"}),["landscape"]),...ca()},"VTimePicker"),Nt=Ce()({name:"VTimePicker",props:qa(),emits:{"update:hour":e=>!0,"update:minute":e=>!0,"update:period":e=>!0,"update:second":e=>!0,"update:modelValue":e=>!0,"update:viewMode":e=>!0},setup(e,t){let{emit:n,slots:i}=t;const{t:a}=je(),{densityClasses:s}=ua(e),l=Z(null),u=Z(null),o=Z(null),m=Z(null),g=Z(null),p=Z(null),_=le(e,"period","am"),S=le(e,"viewMode","hour"),B=Z(null),y=Z(null),V=N(()=>{let b;if(e.allowedHours instanceof Array?b=P=>e.allowedHours.includes(P):b=e.allowedHours,!e.min&&!e.max)return b;const O=e.min?Number(e.min.split(":")[0]):0,W=e.max?Number(e.max.split(":")[0]):23;return P=>P>=Number(O)&&P<=Number(W)&&(!b||b(P))}),w=N(()=>{let b;const O=!V.value||l.value===null||V.value(l.value);if(e.allowedMinutes instanceof Array?b=k=>e.allowedMinutes.includes(k):b=e.allowedMinutes,!e.min&&!e.max)return O?b:()=>!1;const[W,P]=e.min?e.min.split(":").map(Number):[0,0],[te,H]=e.max?e.max.split(":").map(Number):[23,59],ke=W*60+Number(P),_e=te*60+Number(H);return k=>{const A=60*l.value+k;return A>=ke&&A<=_e&&O&&(!b||b(k))}}),I=N(()=>{let b;const W=(!V.value||l.value===null||V.value(l.value))&&(!w.value||u.value===null||w.value(u.value));if(e.allowedSeconds instanceof Array?b=ae=>e.allowedSeconds.includes(ae):b=e.allowedSeconds,!e.min&&!e.max)return W?b:()=>!1;const[P,te,H]=e.min?e.min.split(":").map(Number):[0,0,0],[ke,_e,k]=e.max?e.max.split(":").map(Number):[23,59,59],A=P*3600+te*60+Number(H||0),R=ke*3600+_e*60+Number(k||0);return ae=>{const C=3600*l.value+60*u.value+ae;return C>=A&&C<=R&&W&&(!b||b(ae))}}),M=N(()=>e.format==="ampm"),f=Ne(()=>e.modelValue!==null&&l.value===null&&u.value===null&&(!e.useSeconds||o.value===null));function E(){const b=x();b!==null&&b!==e.modelValue&&n("update:modelValue",b),f.value&&n("update:modelValue",null)}ce(l,E),ce(u,E),ce(o,E),ce(()=>e.period,b=>L(b)),ce(()=>e.modelValue,b=>v(b)),ce(()=>e.useSeconds,(b,O)=>{O&&!b&&S.value==="second"&&(S.value="minute"),!b&&o.value!==null&&(o.value=null)}),da(()=>{v(e.modelValue)});function x(){return l.value!=null&&u.value!=null&&(!e.useSeconds||o.value!=null)?`${Fe(l.value)}:${Fe(u.value)}`+(e.useSeconds?`:${Fe(o.value)}`:""):null}function v(b){if(b==null||b==="")l.value=null,u.value=null,o.value=null;else if(b instanceof Date)l.value=b.getHours(),u.value=b.getMinutes(),o.value=b.getSeconds();else{const[O,,W,,P,te]=b.trim().toLowerCase().match(/^(\d+):(\d+)(:(\d+))?([ap]m)?$/)||new Array(6);l.value=te?ut(parseInt(O,10),te):parseInt(O,10),u.value=parseInt(W,10),o.value=parseInt(P||0,10)}_.value=l.value==null||l.value<12?"am":"pm"}function T(b,O){const W=V.value;if(!W)return O;const P=M.value?O<12?$t:Ka:Ja;return((P.find(H=>W((H+O)%P.length+P[0]))||0)+O)%P.length+P[0]}function L(b){if(_.value=b,l.value!=null){const O=l.value+(_.value==="am"?-12:12);l.value=T("hour",O)}return n("update:period",b),E(),!0}function $(b){S.value==="hour"?l.value=M.value?ut(b,_.value):b:S.value==="minute"?u.value=b:o.value=b}function G(b){switch(S.value||"hour"){case"hour":n("update:hour",b);break;case"minute":n("update:minute",b);break;case"second":n("update:second",b);break}const O=l.value!==null&&u.value!==null&&(e.useSeconds?o.value!==null:!0);S.value==="hour"?S.value="minute":e.useSeconds&&S.value==="minute"&&(S.value="second"),!(l.value===m.value&&u.value===g.value&&(!e.useSeconds||o.value===p.value)||x()===null)&&(m.value=l.value,g.value=u.value,e.useSeconds&&(p.value=o.value),O&&E())}Ve(()=>{const b=Me(at.filterProps(e),["hideHeader"]),O=Pt.filterProps(e),W=_t.filterProps(Me(e,["format","modelValue","min","max"]));return r(at,q(b,{color:void 0,class:["v-time-picker",`v-time-picker--variant-${e.variant}`,e.class,s.value],hideHeader:e.hideHeader&&e.variant!=="input",style:e.style}),{title:()=>{var P;return((P=i.title)==null?void 0:P.call(i))??c("div",{class:"v-time-picker__title"},[a(e.title)])},header:()=>r(Pt,q(O,{ampm:M.value,hour:l.value,minute:u.value,period:_.value,second:o.value,viewMode:S.value,"onUpdate:hour":P=>l.value=P,"onUpdate:minute":P=>u.value=P,"onUpdate:period":P=>L(P),"onUpdate:second":P=>o.value=P,"onUpdate:viewMode":P=>S.value=P,ref:B}),null),default:()=>r(_t,q(W,{allowedValues:S.value==="hour"?V.value:S.value==="minute"?w.value:I.value,double:S.value==="hour"&&!M.value,format:S.value==="hour"?M.value?jt:P=>P:P=>Fe(P,2),max:S.value==="hour"?M.value&&_.value==="am"?11:23:59,min:S.value==="hour"&&M.value&&_.value==="pm"?12:0,size:20,step:S.value==="hour"?1:5,modelValue:S.value==="hour"?l.value:S.value==="minute"?u.value:o.value,onChange:G,onInput:$,ref:y}),null),actions:i.actions})})}}),Ga={name:"ExamConfigEditor",props:{configId:{type:String,required:!0},dialogMode:{type:Boolean,default:!1}},emits:["saved","error","opened","deleted"],data(){return{localConfig:{examName:"",message:"",room:"",examInfos:[]},loading:!1,saving:!1,deleting:!1,deleteDialog:!1,error:"",success:"",isEditMode:!1,showJsonPreview:!1,availableSubjects:[],customSubjectInput:"",enableCustomAlertTime:!1,defaultExamTips:["请保持卷面整洁,字迹清晰,诚信应考。在听到终考铃时立刻起立,停止作答。","沉着 冷静 细心 守记","答题不守记,自己两行泪。"]}},computed:{formattedJson(){try{return JSON.stringify(this.localConfig,null,2)}catch(e){return console.error("格式化JSON时出错:",e),"无效的JSON格式"}},formattedStorageJson(){try{const e={examName:this.localConfig.examName,message:this.localConfig.message,room:this.localConfig.room,examInfos:this.localConfig.examInfos.map(t=>({name:t.name,start:this.formatDisplayDateTime(t.start),end:this.formatDisplayDateTime(t.end),alertTime:parseInt(t.alertTime)||15}))};return JSON.stringify(e,null,2)}catch(e){return console.error("格式化存储JSON时出错:",e),"无效的JSON格式"}},isValidConfig(){return this.localConfig.examName&&this.localConfig.message&&this.localConfig.examInfos&&this.localConfig.examInfos.length>0&&this.localConfig.examInfos.every(e=>e.name&&e.start&&e.end)},validationErrors(){const e=[];if((!this.localConfig.examName||this.localConfig.examName.trim()==="")&&e.push("考试名称不能为空"),(!this.localConfig.message||this.localConfig.message.trim()==="")&&e.push("考试提示不能为空"),!this.localConfig.examInfos||this.localConfig.examInfos.length===0)e.push("至少需要添加一个考试科目");else{this.localConfig.examInfos.forEach((t,n)=>{const i=`第${n+1}个科目`;if((!t.name||t.name.trim()==="")&&e.push(`${i}的名称不能为空`),t.start||e.push(`${i}的开始时间不能为空`),t.end||e.push(`${i}的结束时间不能为空`),t.start&&t.end){const a=new Date(t.start),s=new Date(t.end);isNaN(a.getTime())&&e.push(`${i}的开始时间格式不正确`),isNaN(s.getTime())&&e.push(`${i}的结束时间格式不正确`),!isNaN(a.getTime())&&!isNaN(s.getTime())&&(s<=a&&e.push(`${i}的结束时间必须晚于开始时间`),(s-a)/(1e3*60*60)>24&&e.push(`${i}的考试时长不能超过24小时`))}});for(let t=0;tu&&e.push(`第${t+1}个科目与第${n+1}个科目的时间有重叠`)}}}return e},hasValidationErrors(){return this.validationErrors.length>0}},watch:{configId:{immediate:!0,handler(e){e&&this.loadConfig()}}},created(){this.loadSubjects()},methods:{async loadSubjects(){try{const e=await Be.loadData("classworks-config-subject");e&&Array.isArray(e)?this.availableSubjects=e.sort((t,n)=>(t.order??0)-(n.order??0)).map(t=>({name:t.name,order:t.order??0})):this.availableSubjects=[{name:"语文",order:0},{name:"数学",order:1},{name:"英语",order:2},{name:"物理",order:3},{name:"化学",order:4},{name:"生物",order:5},{name:"政治",order:6},{name:"历史",order:7},{name:"地理",order:8}]}catch(e){console.warn("加载科目列表失败,使用默认列表:",e),this.availableSubjects=[{name:"语文",order:0},{name:"数学",order:1},{name:"英语",order:2},{name:"物理",order:3},{name:"化学",order:4},{name:"生物",order:5},{name:"政治",order:6},{name:"历史",order:7},{name:"地理",order:8}]}},autoFillRemaining(){if(this.localConfig.examInfos.length===0)return;let e=null;for(let t=this.localConfig.examInfos.length-1;t>=0;t--)if(this.localConfig.examInfos[t].end){e=new Date(this.localConfig.examInfos[t].end);break}e||(e=new Date);for(let t=0;t12)return`${t}月份不合法(1-12)`;if(g<1||g>31)return`${t}日期不合法(1-31)`;if(p<0||p>23)return`${t}小时不合法(0-23)`;if(_<0||_>59)return`${t}分钟不合法(0-59)`;const S=new Date(o,m-1,g,p,_);return isNaN(S.getTime())?`${t}日期不存在`:S.getMonth()!==m-1||S.getDate()!==g?`${t}日期不存在`:!0},validateEndAfterStart(e){if(!e.startFormatted||!e.endFormatted)return!0;try{const t=new Date(e.start||e.startFormatted.replace(/\//g,"-")),n=new Date(e.end||e.endFormatted.replace(/\//g,"-"));return isNaN(t.getTime())||isNaN(n.getTime())?!0:n<=t?"结束时间必须晚于开始时间":(n.getTime()-t.getTime())/(1e3*60*60)>24?"考试时长不能超过24小时":!0}catch{return!0}},validateNoTimeOverlap(e,t){if(!e.startFormatted||!e.endFormatted)return!0;try{const n=new Date(e.start||e.startFormatted.replace(/\//g,"-")),i=new Date(e.end||e.endFormatted.replace(/\//g,"-"));if(isNaN(n.getTime())||isNaN(i.getTime()))return!0;for(let a=0;a=l&&nl&&i<=u||n<=l&&i>=u)return`时间与"${s.name||`第${a+1}个科目`}"重叠`}return!0}catch{return!0}},toggleAlertTimeMode(){this.enableCustomAlertTime||this.localConfig.examInfos.forEach(e=>{e.alertTime=15})},getExamDuration(e){if(!e.start||!e.end)return"";try{const t=new Date(e.start),n=new Date(e.end);if(isNaN(t.getTime())||isNaN(n.getTime()))return"";const i=n.getTime()-t.getTime(),a=Math.round(i/(1e3*60));if(a<60)return`${a}分钟`;const s=Math.floor(a/60),l=a%60;return l===0?`${s}小时`:`${s}小时${l}分钟`}catch{return""}},updateStartDateTimeFromInput(e){if(e===void 0||!this.localConfig.examInfos[e])return;const t=this.localConfig.examInfos[e],n=t.startFormatted;if(!n)return;const i=n.match(/(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})\s+(\d{1,2}):(\d{1,2})/);if(!i)return;const[,a,s,l,u,o]=i,m=new Date(parseInt(a),parseInt(s)-1,parseInt(l),parseInt(u),parseInt(o));isNaN(m.getTime())||(t.startDate=m,t.startTime=this.formatTimeOnly(m),t.start=this.formatDateTimeLocal(m),this.updateStartDateTime(e))},updateEndDateTimeFromInput(e){if(e===void 0||!this.localConfig.examInfos[e])return;const t=this.localConfig.examInfos[e],n=t.endFormatted;if(!n)return;const i=n.match(/(\d{4})[\/\-](\d{1,2})[\/\-](\d{1,2})\s+(\d{1,2}):(\d{1,2})/);if(!i)return;const[,a,s,l,u,o]=i,m=new Date(parseInt(a),parseInt(s)-1,parseInt(l),parseInt(u),parseInt(o));isNaN(m.getTime())||(t.endDate=m,t.endTime=this.formatTimeOnly(m),t.end=this.formatDateTimeLocal(m),this.updateEndDateTime(e))},async loadConfig(){var e;this.loading=!0,this.error="";try{const t=await Be.loadData(`es_${this.configId}`);if(t){this.localConfig={examName:"",message:"",room:"",examInfos:[],...t},Array.isArray(this.localConfig.examInfos)||(this.localConfig.examInfos=[]),this.localConfig.examInfos.forEach(i=>{if(i.start){const a=this.parseDateTime(i.start);i.start=this.formatDateTimeLocal(a),i.startDate=a,i.startTime=this.formatTimeOnly(a),i.startFormatted=this.formatDisplayDateTime(a),i.startDateMenu=!1}if(i.end){const a=this.parseDateTime(i.end);i.end=this.formatDateTimeLocal(a),i.endDate=a,i.endTime=this.formatTimeOnly(a),i.endFormatted=this.formatDisplayDateTime(a),i.endDateMenu=!1}try{if(i.start&&i.end){const a=new Date(i.start),s=new Date(i.end),l=Math.round((s.getTime()-a.getTime())/(1e3*60));l>0&&l<=24*60?i.durationMinutes=l:i.durationMinutes=120}else i.durationMinutes=120}catch{i.durationMinutes=120}i.alertTime===void 0||i.alertTime===null?i.alertTime=15:i.alertTime=parseInt(i.alertTime)||15});const n=this.localConfig.examInfos.some(i=>i.alertTime!==15);this.enableCustomAlertTime=n}else console.error("加载配置失败:",t),this.error="加载配置失败: "+(((e=t.error)==null?void 0:e.message)||"未知错误"),this.$emit("error",this.error)}catch(t){console.error(t),this.error="加载配置失败: "+t.message,this.$emit("error",this.error)}finally{this.loading=!1}},async saveConfig(){var e;if(!this.isValidConfig){const t=this.validationErrors;return t.length>0?this.error=`配置验证失败:${t.join(";")}`:this.error="请填写完整的配置信息",!1}this.saving=!0,this.error="";try{const t={examName:this.localConfig.examName,message:this.localConfig.message,room:this.localConfig.room,examInfos:this.localConfig.examInfos.map(i=>({name:i.name,start:this.formatDisplayDateTime(i.start),end:this.formatDisplayDateTime(i.end),alertTime:parseInt(i.alertTime)||15}))},n=await Be.saveData(`es_${this.configId}`,t);return n?(this.success="配置保存成功",this.$emit("saved",t),!0):(this.error="保存配置失败: "+(((e=n.error)==null?void 0:e.message)||"未知错误"),this.$emit("error",this.error),!1)}catch(t){return this.error="保存配置失败: "+t,this.$emit("error",this.error),!1}finally{this.saving=!1}},addExamInfo(){let e=new Date;if(this.localConfig.examInfos.length>0){const a=this.localConfig.examInfos[this.localConfig.examInfos.length-1];a.end&&(e=new Date(a.end))}const t=new Date(e.getTime()+10*60*1e3),n=new Date(t.getTime()+2*60*60*1e3),i={name:"",start:this.formatDateTimeLocal(t),end:this.formatDateTimeLocal(n),durationMinutes:120,alertTime:15,startDate:t,startTime:this.formatTimeOnly(t),startFormatted:this.formatDisplayDateTime(t),startDateMenu:!1,endDate:n,endTime:this.formatTimeOnly(n),endFormatted:this.formatDisplayDateTime(n),endDateMenu:!1};this.localConfig.examInfos.push(i)},removeExamInfo(e){this.localConfig.examInfos.splice(e,1)},moveExamInfo(e,t){const n=e+t;if(n>=0&&n24*60&&(n=24*60),t.durationMinutes=n,(!t.startDate||!t.startTime)&&t.start){const i=new Date(t.start);isNaN(i.getTime())||(t.startDate=i,t.startTime=this.formatTimeOnly(i))}if(t.startDate&&t.startTime){const i=new Date(t.startDate),[a,s]=String(t.startTime).split(":");i.setHours(parseInt(a),parseInt(s),0,0);const l=new Date(i.getTime()+n*60*1e3);t.endDate=l,t.endTime=this.formatTimeOnly(l),t.end=this.formatDateTimeLocal(l),t.endFormatted=this.formatDisplayDateTime(l)}},formatDateTimeLocal(e){if(!e)return"";let t;if(typeof e=="string"?e.includes("/")?t=new Date(e.replace(/\//g,"-")):t=new Date(e):t=new Date(e),isNaN(t.getTime()))return"";const n=t.getFullYear(),i=String(t.getMonth()+1).padStart(2,"0"),a=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),l=String(t.getMinutes()).padStart(2,"0");return`${n}-${i}-${a}T${s}:${l}`},formatDisplayDateTime(e){if(!e)return"";const t=new Date(e);if(isNaN(t.getTime()))return e;const n=t.getFullYear(),i=String(t.getMonth()+1).padStart(2,"0"),a=String(t.getDate()).padStart(2,"0"),s=String(t.getHours()).padStart(2,"0"),l=String(t.getMinutes()).padStart(2,"0");return`${n}/${i}/${a} ${s}:${l}`},parseDateTime(e){return e?typeof e=="string"?e.includes("/")?new Date(e.replace(/\//g,"-")):new Date(e):new Date(e):new Date},formatTimeOnly(e){if(!e)return"00:00";const t=new Date(e);if(isNaN(t.getTime()))return"00:00";const n=String(t.getHours()).padStart(2,"0"),i=String(t.getMinutes()).padStart(2,"0");return`${n}:${i}`},updateStartDateTime(e){const t=this.localConfig.examInfos[e];if(!t.startDate||!t.startTime)return;const n=new Date(t.startDate),[i,a]=t.startTime.split(":");n.setHours(parseInt(i),parseInt(a),0,0),t.start=this.formatDateTimeLocal(n),t.startFormatted=this.formatDisplayDateTime(n);let s=parseInt(t.durationMinutes);if(isNaN(s)||s<=0||s>24*60)try{let u=null;if(t.endDate&&t.endTime){u=new Date(t.endDate);const[o,m]=String(t.endTime).split(":");u.setHours(parseInt(o),parseInt(m),0,0)}else t.end&&(u=new Date(t.end));if(u&&!isNaN(u.getTime())){const o=Math.round((u.getTime()-n.getTime())/6e4);o>0&&o<=24*60&&(s=o)}}catch{}(isNaN(s)||s<=0||s>24*60)&&(s=120);const l=new Date(n.getTime()+s*60*1e3);t.endDate=l,t.endTime=this.formatTimeOnly(l),t.end=this.formatDateTimeLocal(l),t.endFormatted=this.formatDisplayDateTime(l),t.durationMinutes=s},updateEndDateTime(e){const t=this.localConfig.examInfos[e];if(!t.endDate||!t.endTime)return;const n=new Date(t.endDate),[i,a]=t.endTime.split(":");n.setHours(parseInt(i),parseInt(a),0,0),t.end=this.formatDateTimeLocal(n),t.endFormatted=this.formatDisplayDateTime(n);try{if(t.startDate&&t.startTime){const s=new Date(t.startDate),[l,u]=String(t.startTime).split(":");s.setHours(parseInt(l),parseInt(u),0,0);const o=Math.round((n.getTime()-s.getTime())/(1e3*60));o>0&&o<=24*60&&(t.durationMinutes=o)}}catch{}},async openConfig(){try{const e=await Be.getKeyCloudUrl(`es_${this.configId}`,{autoMigrate:!0,autoConfig:!0});if(e.success&&e.url){const t=`https://es.examaware.tech/exam/?configUrl=${encodeURIComponent(e.url)}`;window.open(t,"_blank"),this.success="配置已在新窗口中打开",this.$emit("opened",{configId:this.configId,url:e.url})}else throw new Error(e.error||"获取云端地址失败")}catch(e){this.error="打开配置失败: "+e.message,this.$emit("error","打开配置失败: "+e.message)}},confirmDelete(){this.deleteDialog=!0},async deleteConfig(){this.deleting=!0;try{const n=(await Be.loadData("es_list")||[]).filter(a=>a.id!==this.configId);if(!await Be.saveData("es_list",n))throw new Error("更新云端列表失败");this.deleteDialog=!1,this.$emit("deleted",{success:!0,message:"配置删除成功",configId:this.configId})}catch(e){console.error("删除配置失败:",e),this.$emit("deleted",{success:!1,message:"删除失败: "+e.message})}finally{this.deleting=!1}},openInEa2Player(){var e;try{const t={examName:this.localConfig.examName,message:this.localConfig.message,room:this.localConfig.room,examInfos:this.localConfig.examInfos.map(s=>({name:s.name,start:this.formatDisplayDateTime(s.start),end:this.formatDisplayDateTime(s.end),alertTime:parseInt(s.alertTime)||15}))},n=JSON.stringify(t),a=`examaware://player?data=${btoa(unescape(encodeURIComponent(n)))}`;window.location.href=a,(e=this.$message)==null||e.success("正在拉起 ExamAware2 播放器...")}catch(t){this.error="拉起播放器失败: "+t.message}}}},Xa={class:"d-flex align-center"},Za={class:"d-flex align-center"},Qa={key:4,class:"d-flex justify-space-between align-center mb-4"},el={class:"d-flex align-center gap-2"},tl={key:5},al={class:"mb-8"},ll={class:"text-h3 font-weight-bold",style:{"line-height":"1.2"}},nl={class:"text-subtitle-1 text-grey",style:{"white-space":"pre-wrap","line-height":"1.8"}},il={key:0,class:"mb-8"},rl={class:"d-flex align-center"},ol={class:""},sl={class:"mb-3"},ul={class:"d-flex align-center mb-1"},dl={class:"text-h6 font-weight-medium text-success"},cl={class:"d-flex align-center mb-1"},ml={class:"text-h6 font-weight-medium text-error"},fl={key:1,class:"text-center py-12"},vl={class:"json-preview"},hl={key:6},gl={class:"text-subtitle-2 font-weight-bold d-block mb-2"},yl={key:0,class:"mt-3"},kl={class:"text-caption text-medium-emphasis mt-2 ml-2"},bl={class:"d-flex align-center mr-4"},pl={class:"w-100"},wl={class:"d-flex align-center mb-3"},Dl={class:"d-flex gap-1"},Cl={class:"text-primary font-weight-bold"},Vl={key:1,class:"text-center py-12"};function xl(e,t,n,i,a,s){return j(),pe("div",null,[a.error?(j(),re(it,{key:0,border:"start",class:"mb-4 mt-3 mx-2",closable:"",type:"error",variant:"tonal","onClick:close":t[0]||(t[0]=l=>a.error="")},{default:d(()=>[c("div",Xa,[r(K,{class:"mr-2"},{default:d(()=>[...t[10]||(t[10]=[D("mdi-alert-circle",-1)])]),_:1}),D(" "+se(a.error),1)])]),_:1})):ue("",!0),a.success?(j(),re(it,{key:1,border:"start",class:"mb-4 mt-3 mx-2",closable:"",type:"success",variant:"tonal","onClick:close":t[1]||(t[1]=l=>a.success="")},{default:d(()=>[c("div",Za,[r(K,{class:"mr-2"},{default:d(()=>[...t[11]||(t[11]=[D("mdi-check-circle",-1)])]),_:1}),D(" "+se(a.success),1)])]),_:1})):ue("",!0),s.hasValidationErrors&&!a.loading?(j(),re(it,{key:2,border:"start",class:"mb-4 mt-3 mx-2",type:"warning",variant:"tonal"},{default:d(()=>[t[13]||(t[13]=c("div",{class:"d-flex align-center"},[c("span",{class:"font-weight-bold"},"配置验证失败,请检查以下问题:")],-1)),r(ot,{class:"bg-transparent",density:"compact"},{default:d(()=>[(j(!0),pe(De,null,Qe(s.validationErrors,(l,u)=>(j(),re(We,{key:u,class:"px-0 py-0"},{prepend:d(()=>[r(K,{color:"warning",size:"small"},{default:d(()=>[...t[12]||(t[12]=[D("mdi-circle-small",-1)])]),_:1})]),default:d(()=>[r(fa,{class:"text-body-2"},{default:d(()=>[D(se(l),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})):ue("",!0),a.loading?(j(),re(Pe,{key:3,class:"my-4",outlined:""},{default:d(()=>[r(Oe,null,{default:d(()=>[r(ba,{class:"mx-auto",type:"article"})]),_:1})]),_:1})):ue("",!0),a.loading?ue("",!0):(j(),pe("div",Qa,[c("div",el,[r(Y,{disabled:!s.isValidConfig,class:"text-none",color:"success","prepend-icon":"mdi-open-in-new",variant:"elevated",onClick:s.openConfig},{default:d(()=>[...t[14]||(t[14]=[D(" 打开 ExamSchedule ",-1)])]),_:1},8,["disabled","onClick"]),r(Y,{disabled:!s.isValidConfig,class:"text-none",color:"primary","prepend-icon":"mdi-link-variant",variant:"elevated",onClick:s.copyConfigUrl},{default:d(()=>[...t[15]||(t[15]=[D(" 复制远程链接 ",-1)])]),_:1},8,["disabled","onClick"]),r(Y,{disabled:!s.isValidConfig,class:"text-none",color:"primary","prepend-icon":"mdi-download",variant:"elevated",onClick:s.downloadAsJson},{default:d(()=>[...t[16]||(t[16]=[D(" JSON 文件 ",-1)])]),_:1},8,["disabled","onClick"]),r(Y,{disabled:!s.isValidConfig,class:"text-none",color:"primary","prepend-icon":"mdi-download",variant:"elevated",onClick:s.downloadAsEa2},{default:d(()=>[...t[17]||(t[17]=[D(" .ea2 文件 ",-1)])]),_:1},8,["disabled","onClick"]),r(Y,{disabled:!s.isValidConfig,class:"text-none",color:"secondary","prepend-icon":"mdi-play-circle",variant:"elevated",onClick:s.openInEa2Player},{default:d(()=>[...t[18]||(t[18]=[D(" 拉起EA2播放器 ",-1)])]),_:1},8,["disabled","onClick"]),s.isValidConfig?ue("",!0):(j(),re(et,{key:0,activator:"parent",location:"bottom"},{default:d(()=>[...t[19]||(t[19]=[c("span",null,"请先完善配置信息后再操作",-1)])]),_:1}))]),r(va,{modelValue:a.isEditMode,"onUpdate:modelValue":t[2]||(t[2]=l=>a.isEditMode=l),color:"primary",divided:"",variant:"outlined"},{default:d(()=>[r(Y,{class:"text-error","prepend-icon":"mdi-delete",onClick:s.confirmDelete},{default:d(()=>[...t[20]||(t[20]=[D(" 删除配置 ",-1)])]),_:1},8,["onClick"]),r(Y,{value:!1,"prepend-icon":"mdi-eye"},{default:d(()=>[...t[21]||(t[21]=[D(" 预览",-1)])]),_:1}),r(Y,{value:!0,"prepend-icon":"mdi-pencil"},{default:d(()=>[...t[22]||(t[22]=[D(" 编辑",-1)])]),_:1})]),_:1},8,["modelValue"])])),!a.loading&&!a.isEditMode?(j(),pe("div",tl,[c("div",al,[c("div",ll,se(a.localConfig.examName||"未设置考试名称"),1),c("div",nl,se(a.localConfig.message||"未设置考试提示"),1),a.localConfig.room?(j(),re(Je,{key:0,class:"px-4 py-2",size:"large"},{default:d(()=>[r(K,{start:""},{default:d(()=>[...t[23]||(t[23]=[D("mdi-home",-1)])]),_:1}),D(" 考场:"+se(a.localConfig.room),1)]),_:1})):ue("",!0)]),a.localConfig.examInfos&&a.localConfig.examInfos.length>0?(j(),pe("div",il,[r(He,null,{default:d(()=>[(j(!0),pe(De,null,Qe(a.localConfig.examInfos,(l,u)=>(j(),re(he,{key:u,cols:"12",lg:"4",md:"6"},{default:d(()=>[r(Pe,{class:"h-100",hover:"",variant:"tonal"},{default:d(()=>[r(Le,{class:"bg-primary-lighten-5 pa-4"},{default:d(()=>[c("div",rl,[r(K,{class:"mr-2"},{default:d(()=>[...t[24]||(t[24]=[D("mdi-book-open-page-variant",-1)])]),_:1}),c("span",ol,se(l.name||"未设置科目"),1)])]),_:2},1024),r(Oe,{class:"pa-4"},{default:d(()=>[c("div",sl,[c("div",ul,[r(K,{class:"mr-2",color:"success",size:"small"},{default:d(()=>[...t[25]||(t[25]=[D("mdi-clock-start ",-1)])]),_:1}),t[26]||(t[26]=c("span",{class:"text-body-2 text-grey-darken-1"},"开始时间",-1))]),c("div",dl,se(l.startFormatted||l.start||"未设置"),1)]),c("div",null,[c("div",cl,[r(K,{class:"mr-2",color:"error",size:"small"},{default:d(()=>[...t[27]||(t[27]=[D("mdi-clock-end ",-1)])]),_:1}),t[28]||(t[28]=c("span",{class:"text-body-2 text-grey-darken-1"},"结束时间",-1))]),c("div",ml,se(l.endFormatted||l.end||"未设置"),1)])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})])):(j(),pe("div",fl,[r(K,{class:"mb-4",color:"grey-lighten-2",size:"80"},{default:d(()=>[...t[29]||(t[29]=[D(" mdi-calendar-blank ",-1)])]),_:1}),t[32]||(t[32]=c("div",{class:"text-h5 text-grey-darken-1 mb-2"},"暂无考试科目安排",-1)),t[33]||(t[33]=c("div",{class:"text-body-1 text-grey mb-4"},' 点击上方"添加科目"按钮开始配置考试时间表 ',-1)),r(Y,{color:"primary",variant:"outlined",onClick:s.quickEdit},{default:d(()=>[r(K,{start:""},{default:d(()=>[...t[30]||(t[30]=[D("mdi-plus",-1)])]),_:1}),t[31]||(t[31]=D(" 立即添加 ",-1))]),_:1},8,["onClick"])])),r(Pe,{border:"",class:"mb-4",elevation:"2"},{default:d(()=>[r(Le,{class:"d-flex align-center text-white cursor-pointer",onClick:t[3]||(t[3]=l=>a.showJsonPreview=!a.showJsonPreview)},{default:d(()=>[r(K,{class:"mr-2"},{default:d(()=>[...t[34]||(t[34]=[D("mdi-code-json",-1)])]),_:1}),t[36]||(t[36]=D(" 配置预览 ",-1)),r(Ye),r(Y,{color:"white","prepend-icon":"mdi-content-copy",size:"small",variant:"outlined",onClick:ha(s.copyToClipboard,["stop"])},{default:d(()=>[...t[35]||(t[35]=[D(" 复制 ",-1)])]),_:1},8,["onClick"]),r(Y,{icon:a.showJsonPreview?"mdi-chevron-up":"mdi-chevron-down",class:"ml-2",color:"white",size:"small",variant:"text"},null,8,["icon"])]),_:1}),r(ga,null,{default:d(()=>[Yt(r(Oe,{class:"pa-4"},{default:d(()=>[r(Pe,{class:"pa-4",variant:"tonal"},{default:d(()=>[c("pre",vl,[c("code",null,se(s.formattedStorageJson),1)])]),_:1})]),_:1},512),[[ya,a.showJsonPreview]])]),_:1})]),_:1})])):ue("",!0),!a.loading&&a.isEditMode?(j(),pe("div",hl,[r(Pe,{border:"",class:"mb-4",elevation:"1"},{default:d(()=>[r(Le,{class:"d-flex align-center bg-primary-lighten-5 pa-4"},{default:d(()=>[r(K,{class:"mr-2"},{default:d(()=>[...t[37]||(t[37]=[D("mdi-information",-1)])]),_:1}),t[38]||(t[38]=c("span",{class:"font-weight-bold"},"基本信息",-1))]),_:1}),r(Oe,{class:"pa-6"},{default:d(()=>[r(He,null,{default:d(()=>[r(he,{cols:"12",md:"6"},{default:d(()=>[r(Ae,{modelValue:a.localConfig.examName,"onUpdate:modelValue":t[4]||(t[4]=l=>a.localConfig.examName=l),rules:[l=>!!l||"考试名称不能为空",l=>l&&l.trim().length>0||"考试名称不能为空白字符",l=>!l||l.length<=100||"考试名称不能超过100个字符"],clearable:"",density:"comfortable",label:"考试名称",placeholder:"如:2025年高考模拟考试","prepend-inner-icon":"mdi-calendar-text",required:"",variant:"outlined"},null,8,["modelValue","rules"])]),_:1}),r(he,{cols:"12",md:"6"},{default:d(()=>[r(Ae,{modelValue:a.localConfig.room,"onUpdate:modelValue":t[5]||(t[5]=l=>a.localConfig.room=l),clearable:"",density:"comfortable",label:"考场号(仅 ExamSchedule-Management 支持此配置)",placeholder:"如:一号考场","prepend-inner-icon":"mdi-home",variant:"outlined"},null,8,["modelValue"])]),_:1})]),_:1}),r(He,null,{default:d(()=>[r(he,{cols:"12"},{default:d(()=>[c("span",gl,[r(K,{size:"small",class:"mr-1"},{default:d(()=>[...t[39]||(t[39]=[D("mdi-message-text",-1)])]),_:1}),t[40]||(t[40]=D(" 考试提示 ",-1))]),r(xa,{modelValue:a.localConfig.message,"onUpdate:modelValue":t[6]||(t[6]=l=>a.localConfig.message=l),rules:[l=>!!l||"考试提示不能为空",l=>l&&l.trim().length>0||"考试提示不能为空白字符"],clearable:"",density:"comfortable",label:"输入考试相关的提示信息...","no-resize":"",placeholder:"例如:请保持卷面整洁,诚信应考。在听到终考铃时立刻停止作答。",rows:"3",variant:"outlined"},null,8,["modelValue","rules"]),!a.localConfig.message||a.localConfig.message.trim()===""?(j(),pe("div",yl,[r(wa,{class:"d-flex gap-2",column:""},{default:d(()=>[(j(!0),pe(De,null,Qe(a.defaultExamTips,(l,u)=>(j(),re(Je,{key:u,class:"cursor-pointer",color:"primary",size:"small",variant:"outlined",onClick:o=>s.selectDefaultTip(l)},{default:d(()=>[r(K,{size:"small",start:""},{default:d(()=>[...t[41]||(t[41]=[D("mdi-plus",-1)])]),_:1}),D(" "+se(l.substring(0,20))+"... ",1)]),_:2},1032,["onClick"]))),128))]),_:1}),c("div",kl,[r(K,{class:"mr-1",size:"x-small"},{default:d(()=>[...t[42]||(t[42]=[D("mdi-lightbulb-outline",-1)])]),_:1}),t[43]||(t[43]=D(" 点击上方选项快速添加常用考试提示 ",-1))])])):ue("",!0)]),_:1})]),_:1})]),_:1})]),_:1}),r(Pe,{border:"",class:"mb-4",elevation:"1"},{default:d(()=>[r(Le,{class:"d-flex align-center bg-success-lighten-5 pa-4"},{default:d(()=>[r(K,{class:"mr-2"},{default:d(()=>[...t[44]||(t[44]=[D("mdi-format-list-bulleted",-1)])]),_:1}),t[47]||(t[47]=c("span",{class:"font-weight-bold"},"考试科目安排",-1)),r(Ye),c("div",bl,[r(Ta,{modelValue:a.enableCustomAlertTime,"onUpdate:modelValue":t[7]||(t[7]=l=>a.enableCustomAlertTime=l),color:"primary",density:"compact","hide-details":"",onChange:s.toggleAlertTimeMode},{label:d(()=>[...t[45]||(t[45]=[c("span",{class:"text-body-2"},"自定义提醒时间",-1)])]),_:1},8,["modelValue","onChange"])]),r(Y,{color:"success","prepend-icon":"mdi-plus",size:"small",variant:"elevated",onClick:s.addExamInfo},{default:d(()=>[...t[46]||(t[46]=[D(" 添加科目 ",-1)])]),_:1},8,["onClick"])]),_:1}),r(Oe,{class:"pa-0"},{default:d(()=>[a.localConfig.examInfos&&a.localConfig.examInfos.length>0?(j(),re(ot,{key:0,class:"py-0"},{default:d(()=>[(j(!0),pe(De,null,Qe(a.localConfig.examInfos,(l,u)=>(j(),re(We,{key:u,class:"border-b pa-4 hover-highlight"},{default:d(()=>[c("div",pl,[c("div",wl,[r(Je,{color:u%2===0?"primary":"secondary",size:"small",variant:"tonal",class:"mr-3"},{default:d(()=>[r(K,{start:"",size:"small"},{default:d(()=>[D("mdi-numeric-"+se(u+1)+"-circle",1)]),_:2},1024),D(" 第 "+se(u+1)+" 科目 ",1)]),_:2},1032,["color"]),r(Ye),c("div",Dl,[u>0?(j(),re(Y,{key:0,color:"primary",icon:"mdi-arrow-up",size:"x-small",variant:"text",onClick:o=>s.moveExamInfo(u,-1)},{default:d(()=>[r(et,{activator:"parent",location:"bottom"},{default:d(()=>[...t[48]||(t[48]=[D("上移",-1)])]),_:1})]),_:1},8,["onClick"])):ue("",!0),us.moveExamInfo(u,1)},{default:d(()=>[r(et,{activator:"parent",location:"bottom"},{default:d(()=>[...t[49]||(t[49]=[D("下移",-1)])]),_:1})]),_:1},8,["onClick"])):ue("",!0),r(Y,{color:"error",icon:"mdi-delete",size:"x-small",variant:"text",onClick:o=>s.removeExamInfo(u)},{default:d(()=>[r(et,{activator:"parent",location:"bottom"},{default:d(()=>[...t[50]||(t[50]=[D("删除",-1)])]),_:1})]),_:1},8,["onClick"])])]),r(He,{class:"align-start"},{default:d(()=>[r(he,{cols:"12",md:"4"},{default:d(()=>[r(Ya,{modelValue:l.name,"onUpdate:modelValue":o=>l.name=o,items:a.availableSubjects,rules:[o=>!!o||"科目名称不能为空",o=>o&&o.trim().length>0||"科目名称不能为空白字符"],clearable:"",density:"comfortable","item-title":"name",label:"科目名称","no-data-text":"没有可用科目,请输入自定义名称","prepend-inner-icon":"mdi-book",variant:"outlined"},{"prepend-item":d(()=>[a.customSubjectInput?(j(),re(We,{key:0,title:"自定义:"},{append:d(()=>[c("span",Cl,se(a.customSubjectInput),1)]),_:1})):ue("",!0),a.customSubjectInput?(j(),re(At,{key:1})):ue("",!0)]),_:1},8,["modelValue","onUpdate:modelValue","items","rules"])]),_:2},1024),r(he,{cols:"12",md:"3"},{default:d(()=>[r(st,{modelValue:l.startDateMenu,"onUpdate:modelValue":o=>l.startDateMenu=o,"close-on-content-click":!1,"min-width":"auto","offset-y":"",transition:"scale-transition"},{activator:d(({props:o})=>[r(Ae,q({modelValue:l.startFormatted,"onUpdate:modelValue":m=>l.startFormatted=m,rules:[m=>!!m||"开始时间不能为空",m=>s.validateTimeFormat(m,"开始时间"),()=>s.validateNoTimeOverlap(l,u)],density:"comfortable",label:"开始时间",placeholder:"2025/01/01 09:00","prepend-inner-icon":"mdi-clock-start"},{ref_for:!0},o,{variant:"outlined",onBlur:m=>s.updateStartDateTimeFromInput(u)}),{append:d(()=>[r(K,null,{default:d(()=>[...t[51]||(t[51]=[D("mdi-calendar-clock",-1)])]),_:1})]),_:1},16,["modelValue","onUpdate:modelValue","rules","onBlur"])]),default:d(()=>[r(Pe,{"min-width":"500"},{default:d(()=>[r(Le,{class:"text-center py-3 bg-primary-lighten-5"},{default:d(()=>[r(K,{class:"mr-2",color:"primary"},{default:d(()=>[...t[52]||(t[52]=[D("mdi-clock-start",-1)])]),_:1}),t[53]||(t[53]=D(" 选择开始时间 ",-1))]),_:1}),r(Oe,{class:"pa-0"},{default:d(()=>[r(He,{"no-gutters":""},{default:d(()=>[r(he,{class:"border-e",cols:"6"},{default:d(()=>[r(Mt,{modelValue:l.startDate,"onUpdate:modelValue":[o=>l.startDate=o,o=>s.updateStartDateTime(u)],color:"primary",elevation:"0",locale:"zh-cn","show-adjacent-months":""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),r(he,{cols:"6"},{default:d(()=>[r(Nt,{modelValue:l.startTime,"onUpdate:modelValue":[o=>l.startTime=o,o=>s.updateStartDateTime(u)],color:"primary",elevation:"0",format:"24hr",scrollable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),r(nt,null,{default:d(()=>[r(Ye),r(Y,{color:"grey",variant:"text",onClick:o=>l.startDateMenu=!1},{default:d(()=>[...t[54]||(t[54]=[D(" 关闭 ",-1)])]),_:1},8,["onClick"])]),_:2},1024)]),_:2},1024)]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),r(he,{cols:"12",md:"3"},{default:d(()=>[r(st,{modelValue:l.endDateMenu,"onUpdate:modelValue":o=>l.endDateMenu=o,"close-on-content-click":!1,"min-width":"auto","offset-y":"",transition:"scale-transition"},{activator:d(({props:o})=>[r(Ae,q({modelValue:l.endFormatted,"onUpdate:modelValue":m=>l.endFormatted=m,rules:[m=>!!m||"结束时间不能为空",m=>s.validateTimeFormat(m,"结束时间"),()=>s.validateEndAfterStart(l),()=>s.validateNoTimeOverlap(l,u)],density:"comfortable",label:"结束时间",placeholder:"2025/01/01 11:00","prepend-inner-icon":"mdi-clock-end"},{ref_for:!0},o,{variant:"outlined",onBlur:m=>s.updateEndDateTimeFromInput(u)}),{append:d(()=>[r(K,null,{default:d(()=>[...t[55]||(t[55]=[D("mdi-calendar-clock",-1)])]),_:1})]),_:1},16,["modelValue","onUpdate:modelValue","rules","onBlur"])]),default:d(()=>[r(Pe,{"min-width":"500"},{default:d(()=>[r(Le,{class:"text-center py-3 bg-error-lighten-5"},{default:d(()=>[r(K,{class:"mr-2",color:"error"},{default:d(()=>[...t[56]||(t[56]=[D("mdi-clock-end",-1)])]),_:1}),t[57]||(t[57]=D(" 选择结束时间 ",-1))]),_:1}),r(Oe,{class:"pa-0"},{default:d(()=>[r(He,{"no-gutters":""},{default:d(()=>[r(he,{class:"border-e",cols:"6"},{default:d(()=>[r(Mt,{modelValue:l.endDate,"onUpdate:modelValue":[o=>l.endDate=o,o=>s.updateEndDateTime(u)],color:"error",elevation:"0",locale:"zh-cn","show-adjacent-months":""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024),r(he,{cols:"6"},{default:d(()=>[r(Nt,{modelValue:l.endTime,"onUpdate:modelValue":[o=>l.endTime=o,o=>s.updateEndDateTime(u)],color:"error",elevation:"0",format:"24hr",scrollable:""},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024)]),_:2},1024)]),_:2},1024),r(nt,null,{default:d(()=>[r(Ye),r(Y,{color:"grey",variant:"text",onClick:o=>l.endDateMenu=!1},{default:d(()=>[...t[58]||(t[58]=[D(" 关闭 ",-1)])]),_:1},8,["onClick"])]),_:2},1024)]),_:2},1024)]),_:2},1032,["modelValue","onUpdate:modelValue"])]),_:2},1024),r(he,{cols:"12",md:"2"},{default:d(()=>[r(Ae,{modelValue:l.durationMinutes,"onUpdate:modelValue":o=>l.durationMinutes=o,rules:[o=>!!o||"时长不能为空",o=>!isNaN(o)||"时长必须是数字",o=>parseInt(o)>0||"时长必须大于0",o=>parseInt(o)<=1440||"时长不能超过1440分钟(24小时)"],type:"number",min:"1",max:"1440",density:"comfortable",label:"时长(分钟)",placeholder:"例如:120","prepend-inner-icon":"mdi-timer",variant:"outlined",hint:s.durationHint(l),"persistent-hint":"",onBlur:o=>s.updateDurationFromInput(u)},null,8,["modelValue","onUpdate:modelValue","rules","hint","onBlur"])]),_:2},1024),a.enableCustomAlertTime?(j(),re(he,{key:0,cols:"12",md:"2"},{default:d(()=>[r(Ae,{modelValue:l.alertTime,"onUpdate:modelValue":o=>l.alertTime=o,rules:[o=>!!o||"提醒时间不能为空",o=>!isNaN(o)||"提醒时间必须是数字",o=>parseInt(o)>=0||"提醒时间不能为负数",o=>parseInt(o)<=120||"提醒时间不能超过120分钟"],type:"number",min:"0",max:"120",density:"comfortable",label:"提醒时间(分钟)",placeholder:"例如:15","prepend-inner-icon":"mdi-bell-ring",variant:"outlined",hint:"考试结束前提醒","persistent-hint":""},null,8,["modelValue","onUpdate:modelValue","rules"])]),_:2},1024)):ue("",!0)]),_:2},1024)])]),_:2},1024))),128))]),_:1})):(j(),pe("div",Vl,[r(K,{class:"mb-4",color:"grey-lighten-2",size:"80"},{default:d(()=>[...t[59]||(t[59]=[D(" mdi-calendar-blank ",-1)])]),_:1}),t[61]||(t[61]=c("div",{class:"text-h5 text-grey-darken-1 mb-2"},"暂无考试科目安排",-1)),t[62]||(t[62]=c("div",{class:"text-body-1 text-grey mb-4"},' 点击上方"添加科目"按钮开始配置 ',-1)),r(Y,{color:"success","prepend-icon":"mdi-plus",size:"large",variant:"elevated",onClick:s.addExamInfo},{default:d(()=>[...t[60]||(t[60]=[D(" 立即添加科目 ",-1)])]),_:1},8,["onClick"])]))]),_:1})]),_:1})])):ue("",!0),r(ka,{modelValue:a.deleteDialog,"onUpdate:modelValue":t[9]||(t[9]=l=>a.deleteDialog=l),"max-width":"400"},{default:d(()=>[r(Pe,null,{default:d(()=>[r(Le,{class:"d-flex align-center"},{default:d(()=>[r(K,{class:"mr-2",color:"error"},{default:d(()=>[...t[63]||(t[63]=[D("mdi-delete-alert",-1)])]),_:1}),t[64]||(t[64]=D(" 确认删除配置 ",-1))]),_:1}),r(Oe,null,{default:d(()=>[t[65]||(t[65]=D(" 确定要删除配置 ",-1)),c("strong",null,se(a.localConfig.examName||`配置 ${n.configId}`),1),t[66]||(t[66]=D(" 吗? ",-1)),t[67]||(t[67]=c("br",null,null,-1)),t[68]||(t[68]=c("small",{class:"text-grey"},"此操作不可撤销,将会删除所有相关数据",-1))]),_:1}),r(nt,null,{default:d(()=>[r(Ye),r(Y,{color:"grey",variant:"text",onClick:t[8]||(t[8]=l=>a.deleteDialog=!1)},{default:d(()=>[...t[69]||(t[69]=[D(" 取消 ",-1)])]),_:1}),r(Y,{loading:a.deleting,color:"error",variant:"outlined",onClick:s.deleteConfig},{default:d(()=>[...t[70]||(t[70]=[D(" 删除 ",-1)])]),_:1},8,["loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}const Bl=ma(Ga,[["render",xl],["__scopeId","data-v-99d81754"]]);export{Mt as V,Bl as _,Ya as a}; diff --git a/assets/VAlert-DFIvt6kt.js b/assets/VAlert-DncbAu3E.js similarity index 98% rename from assets/VAlert-DFIvt6kt.js rename to assets/VAlert-DncbAu3E.js index 434b54e..50f3d79 100644 --- a/assets/VAlert-DFIvt6kt.js +++ b/assets/VAlert-DncbAu3E.js @@ -1 +1 @@ -import{aO as F,p as P,a3 as M,g as N,ar as O,bo as R,cu as j,aG as q,bg as p,ch as G,be as K,aB as W,aq as H,c as l,cv as J,i as s,n as y,d as f,t as Q,E as b,aW as S,y as U,av as k,e as X,bp as Y,a_ as Z,cf as ee,bj as ae,m as te,bk as le,ci as ne,bl as se,bq as oe,f as ie,aK as ce,h as re}from"./index-BUM0TY0E.js";const ue=F("v-alert-title"),de=P({iconSize:[Number,String],iconSizes:{type:Array,default:()=>[["x-small",10],["small",16],["default",24],["large",28],["x-large",32]]}},"iconSize");function ve(e,o){return{iconSize:M(()=>{const a=new Map(e.iconSizes),t=e.iconSize??o()??"default";return a.has(t)?a.get(t):t})}}const me=["success","info","warning","error"],ye=P({border:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["top","end","bottom","start"].includes(e)},borderColor:String,closable:Boolean,closeIcon:{type:Z,default:"$close"},closeLabel:{type:String,default:"$vuetify.close"},icon:{type:[Boolean,String,Function,Object],default:null},modelValue:{type:Boolean,default:!0},prominent:Boolean,title:String,text:String,type:{type:String,validator:e=>me.includes(e)},...re(),...ce(),...ie(),...oe(),...de(),...se(),...ne(),...le(),...te(),...ae(),...ee({variant:"flat"})},"VAlert"),be=N()({name:"VAlert",props:ye(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0},setup(e,o){let{emit:r,slots:a}=o;const t=O(e,"modelValue"),i=k(()=>{if(e.icon!==!1)return e.type?e.icon??`$${e.type}`:e.icon}),{iconSize:g}=ve(e,()=>e.prominent?44:void 0),{themeClasses:V}=R(e),{colorClasses:z,colorStyles:C,variantClasses:x}=j(()=>({color:e.color??e.type,variant:e.variant})),{densityClasses:_}=q(e),{dimensionStyles:h}=X(e),{elevationClasses:B}=Y(e),{locationStyles:I}=p(e),{positionClasses:A}=G(e),{roundedClasses:T}=K(e),{textColorClasses:D,textColorStyles:L}=W(()=>e.borderColor),{t:$}=H(),u=k(()=>({"aria-label":$(e.closeLabel),onClick(c){t.value=!1,r("click:close",c)}}));return()=>{const c=!!(a.prepend||i.value),w=!!(a.title||e.title),E=!!(a.close||e.closable),d={density:e.density,icon:i.value,size:e.iconSize||e.prominent?g.value:void 0};return t.value&&l(e.tag,{class:f(["v-alert",e.border&&{"v-alert--border":!!e.border,[`v-alert--border-${e.border===!0?"start":e.border}`]:!0},{"v-alert--prominent":e.prominent},V.value,z.value,_.value,B.value,A.value,T.value,x.value,e.class]),style:y([C.value,h.value,I.value,e.style]),role:"alert"},{default:()=>{var v,m;return[J(!1,"v-alert"),e.border&&s("div",{key:"border",class:f(["v-alert__border",D.value]),style:y(L.value)},null),c&&s("div",{key:"prepend",class:"v-alert__prepend"},[a.prepend?l(S,{key:"prepend-defaults",disabled:!i.value,defaults:{VIcon:{...d}}},a.prepend):l(Q,b({key:"prepend-icon"},d),null)]),s("div",{class:"v-alert__content"},[w&&l(ue,{key:"title"},{default:()=>{var n;return[((n=a.title)==null?void 0:n.call(a))??e.title]}}),((v=a.text)==null?void 0:v.call(a))??e.text,(m=a.default)==null?void 0:m.call(a)]),a.append&&s("div",{key:"append",class:"v-alert__append"},[a.append()]),E&&s("div",{key:"close",class:"v-alert__close"},[a.close?l(S,{key:"close-defaults",defaults:{VBtn:{icon:e.closeIcon,size:"x-small",variant:"text"}}},{default:()=>{var n;return[(n=a.close)==null?void 0:n.call(a,{props:u.value})]}}):l(U,b({key:"close-btn",icon:e.closeIcon,size:"x-small",variant:"text"},u.value),null)])]}})}}});export{be as V,ue as a}; +import{aO as F,p as P,a3 as M,g as N,ar as O,bo as R,cu as j,aG as q,bg as p,ch as G,be as K,aB as W,aq as H,c as l,cv as J,i as s,n as y,d as f,t as Q,E as b,aW as S,y as U,av as k,e as X,bp as Y,a_ as Z,cf as ee,bj as ae,m as te,bk as le,ci as ne,bl as se,bq as oe,f as ie,aK as ce,h as re}from"./index-BXl8SUNP.js";const ue=F("v-alert-title"),de=P({iconSize:[Number,String],iconSizes:{type:Array,default:()=>[["x-small",10],["small",16],["default",24],["large",28],["x-large",32]]}},"iconSize");function ve(e,o){return{iconSize:M(()=>{const a=new Map(e.iconSizes),t=e.iconSize??o()??"default";return a.has(t)?a.get(t):t})}}const me=["success","info","warning","error"],ye=P({border:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["top","end","bottom","start"].includes(e)},borderColor:String,closable:Boolean,closeIcon:{type:Z,default:"$close"},closeLabel:{type:String,default:"$vuetify.close"},icon:{type:[Boolean,String,Function,Object],default:null},modelValue:{type:Boolean,default:!0},prominent:Boolean,title:String,text:String,type:{type:String,validator:e=>me.includes(e)},...re(),...ce(),...ie(),...oe(),...de(),...se(),...ne(),...le(),...te(),...ae(),...ee({variant:"flat"})},"VAlert"),be=N()({name:"VAlert",props:ye(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0},setup(e,o){let{emit:r,slots:a}=o;const t=O(e,"modelValue"),i=k(()=>{if(e.icon!==!1)return e.type?e.icon??`$${e.type}`:e.icon}),{iconSize:g}=ve(e,()=>e.prominent?44:void 0),{themeClasses:V}=R(e),{colorClasses:z,colorStyles:C,variantClasses:x}=j(()=>({color:e.color??e.type,variant:e.variant})),{densityClasses:_}=q(e),{dimensionStyles:h}=X(e),{elevationClasses:B}=Y(e),{locationStyles:I}=p(e),{positionClasses:A}=G(e),{roundedClasses:T}=K(e),{textColorClasses:D,textColorStyles:L}=W(()=>e.borderColor),{t:$}=H(),u=k(()=>({"aria-label":$(e.closeLabel),onClick(c){t.value=!1,r("click:close",c)}}));return()=>{const c=!!(a.prepend||i.value),w=!!(a.title||e.title),E=!!(a.close||e.closable),d={density:e.density,icon:i.value,size:e.iconSize||e.prominent?g.value:void 0};return t.value&&l(e.tag,{class:f(["v-alert",e.border&&{"v-alert--border":!!e.border,[`v-alert--border-${e.border===!0?"start":e.border}`]:!0},{"v-alert--prominent":e.prominent},V.value,z.value,_.value,B.value,A.value,T.value,x.value,e.class]),style:y([C.value,h.value,I.value,e.style]),role:"alert"},{default:()=>{var v,m;return[J(!1,"v-alert"),e.border&&s("div",{key:"border",class:f(["v-alert__border",D.value]),style:y(L.value)},null),c&&s("div",{key:"prepend",class:"v-alert__prepend"},[a.prepend?l(S,{key:"prepend-defaults",disabled:!i.value,defaults:{VIcon:{...d}}},a.prepend):l(Q,b({key:"prepend-icon"},d),null)]),s("div",{class:"v-alert__content"},[w&&l(ue,{key:"title"},{default:()=>{var n;return[((n=a.title)==null?void 0:n.call(a))??e.title]}}),((v=a.text)==null?void 0:v.call(a))??e.text,(m=a.default)==null?void 0:m.call(a)]),a.append&&s("div",{key:"append",class:"v-alert__append"},[a.append()]),E&&s("div",{key:"close",class:"v-alert__close"},[a.close?l(S,{key:"close-defaults",defaults:{VBtn:{icon:e.closeIcon,size:"x-small",variant:"text"}}},{default:()=>{var n;return[(n=a.close)==null?void 0:n.call(a,{props:u.value})]}}):l(U,b({key:"close-btn",icon:e.closeIcon,size:"x-small",variant:"text"},u.value),null)])]}})}}});export{be as V,ue as a}; diff --git a/assets/VAppBarTitle-DZ_l7t3b.js b/assets/VAppBarTitle-hRIhv4pw.js similarity index 99% rename from assets/VAppBarTitle-DZ_l7t3b.js rename to assets/VAppBarTitle-hRIhv4pw.js index c3ab4ea..a9a4637 100644 --- a/assets/VAppBarTitle-DZ_l7t3b.js +++ b/assets/VAppBarTitle-hRIhv4pw.js @@ -1 +1 @@ -import{g as _,b as N,c as f,i as C,n as U,d as M,p as R,m as W,h as q,aC as Y,bz as Z,be as K,bo as Q,b7 as X,az as h,aI as ee,am as te,aW as z,aJ as E,bd as ae,a3 as d,bp as le,bj as oe,bk as ne,bq as se,bI as ie,ae as I,Z as re,$ as ue,a2 as $,bc as ce,ar as ve,by as de,b3 as me,a as ge,bC as he,E as F,av as D,bG as fe}from"./index-BUM0TY0E.js";const J=R({text:String,...q(),...W()},"VToolbarTitle"),j=_()({name:"VToolbarTitle",props:J(),setup(e,b){let{slots:t}=b;return N(()=>{const u=!!(t.default||t.text||e.text);return f(e.tag,{class:M(["v-toolbar-title",e.class]),style:U(e.style)},{default:()=>{var n;return[u&&C("div",{class:"v-toolbar-title__placeholder"},[t.text?t.text():e.text,(n=t.default)==null?void 0:n.call(t)])]}})}),{}}}),be=[null,"prominent","default","comfortable","compact"],G=R({absolute:Boolean,collapse:Boolean,collapsePosition:{type:String,default:"start"},color:String,density:{type:String,default:"default",validator:e=>be.includes(e)},extended:{type:Boolean,default:null},extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ie(),...q(),...se(),...ne(),...W({tag:"header"}),...oe()},"VToolbar"),L=_()({name:"VToolbar",props:G(),setup(e,b){var B;let{slots:t}=b;const{backgroundColorClasses:u,backgroundColorStyles:n}=Y(()=>e.color),{borderClasses:o}=Z(e),{elevationClasses:m}=le(e),{roundedClasses:s}=K(e),{themeClasses:c}=Q(e),{rtlClasses:T}=X(),H=h(e.extended===null?!!((B=t.extension)!=null&&B.call(t)):e.extended),r=d(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),x=d(()=>H.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return ee({VBtn:{variant:"text"}}),N(()=>{var w;const p=!!(e.title||t.title),v=!!(t.image||e.image),P=(w=t.extension)==null?void 0:w.call(t);return H.value=e.extended===null?!!P:e.extended,f(e.tag,{class:M(["v-toolbar",`v-toolbar--collapse-${e.collapsePosition}`,{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},u.value,o.value,m.value,s.value,c.value,T.value,e.class]),style:U([n.value,e.style])},{default:()=>[v&&C("div",{key:"image",class:"v-toolbar__image"},[t.image?f(z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},t.image):f(te,{key:"image-img",cover:!0,src:e.image},null)]),f(z,{defaults:{VTabs:{height:E(r.value)}}},{default:()=>{var V,k,y;return[C("div",{class:"v-toolbar__content",style:{height:E(r.value)}},[t.prepend&&C("div",{class:"v-toolbar__prepend"},[(V=t.prepend)==null?void 0:V.call(t)]),p&&f(j,{key:"title",text:e.title},{text:t.title}),(k=t.default)==null?void 0:k.call(t),t.append&&C("div",{class:"v-toolbar__append"},[(y=t.append)==null?void 0:y.call(t)])])]}}),f(z,{defaults:{VTabs:{height:E(x.value)}}},{default:()=>[f(ae,null,{default:()=>[H.value&&C("div",{class:"v-toolbar__extension",style:{height:E(x.value)}},[P])]})]})]})}),{contentHeight:r,extensionHeight:x}}}),ye=R({scrollTarget:{type:String},scrollThreshold:{type:[String,Number],default:300}},"scroll");function Se(e){let b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{canScroll:t,layoutSize:u}=b;let n=0,o=0;const m=$(null),s=h(0),c=h(0),T=h(0),H=h(!1),r=h(!1),x=h(!1),B=h(!1),p=h(!0),v=d(()=>Number(e.scrollThreshold)),P=d(()=>ce((v.value-s.value)/v.value||0));function w(l){const a="window"in l?window.innerHeight:l.clientHeight,i="window"in l?document.documentElement.scrollHeight:l.scrollHeight;return{clientHeight:a,scrollHeight:i}}function V(){const l=m.value;if(!l)return;const{clientHeight:a,scrollHeight:i}=w(l),S=i-a,g=(u==null?void 0:u.value)||0,A=v.value+g;p.value=S>A}function k(){V()}function y(){const l=m.value;if(!l||t&&!t.value)return;n=s.value,s.value="window"in l?l.pageYOffset:l.scrollTop;const a=l instanceof Window?document.documentElement.scrollHeight:l.scrollHeight;o!==a&&(a>o&&V(),o=a),r.value=s.value=S-5;!r.value&&g&&s.value>=v.value&&p.value&&(B.value=!0);const A=Math.abs(s.value-n)>100,O=s.value<=5;(r.value&&n-s.value>1&&!g||A&&s.value{c.value=c.value||s.value}),I(H,()=>{c.value=0}),re(()=>{I(()=>e.scrollTarget,l=>{var i;const a=l?document.querySelector(l):window;a&&a!==m.value&&((i=m.value)==null||i.removeEventListener("scroll",y),m.value=a,m.value.addEventListener("scroll",y,{passive:!0}),Promise.resolve().then(()=>{V()}))},{immediate:!0}),window.addEventListener("resize",k,{passive:!0})}),ue(()=>{var l;(l=m.value)==null||l.removeEventListener("scroll",y),window.removeEventListener("resize",k)}),t&&I(t,y,{immediate:!0}),{scrollThreshold:v,currentScroll:s,currentThreshold:T,isScrollActive:H,scrollRatio:P,isScrollingUp:r,savedScroll:c,isAtBottom:x,reachedBottomWhileScrollingDown:B,hasEnoughScrollableSpace:p}}const Te=R({scrollBehavior:String,modelValue:{type:Boolean,default:!0},location:{type:String,default:"top",validator:e=>["top","bottom"].includes(e)},...G(),...fe(),...ye(),height:{type:[Number,String],default:64}},"VAppBar"),Be=_()({name:"VAppBar",props:Te(),emits:{"update:modelValue":e=>!0},setup(e,b){let{slots:t}=b;const u=$(),n=ve(e,"modelValue"),o=d(()=>{var i;const a=new Set(((i=e.scrollBehavior)==null?void 0:i.split(" "))??[]);return{hide:a.has("hide"),fullyHide:a.has("fully-hide"),inverted:a.has("inverted"),collapse:a.has("collapse"),elevate:a.has("elevate"),fadeImage:a.has("fade-image")}}),m=d(()=>{const a=o.value;return a.hide||a.fullyHide||a.inverted||a.collapse||a.elevate||a.fadeImage||!n.value}),s=d(()=>{var S,g;const a=((S=u.value)==null?void 0:S.contentHeight)??0,i=((g=u.value)==null?void 0:g.extensionHeight)??0;return a+i}),{currentScroll:c,scrollThreshold:T,isScrollingUp:H,scrollRatio:r,isAtBottom:x,reachedBottomWhileScrollingDown:B,hasEnoughScrollableSpace:p}=Se(e,{canScroll:m,layoutSize:s}),v=D(()=>o.value.hide||o.value.fullyHide),P=d(()=>e.collapse||o.value.collapse&&(o.value.inverted?r.value>0:r.value===0)),w=d(()=>e.flat||o.value.fullyHide&&!n.value||o.value.elevate&&(o.value.inverted?c.value>0:c.value===0)),V=d(()=>o.value.fadeImage?o.value.inverted?1-r.value:r.value:void 0),k=d(()=>{var S,g;if(o.value.hide&&o.value.inverted)return 0;const a=((S=u.value)==null?void 0:S.contentHeight)??0,i=((g=u.value)==null?void 0:g.extensionHeight)??0;return v.value?c.value!!e.scrollBehavior,()=>{me(()=>{if(!v.value){n.value=!0;return}if(o.value.inverted){n.value=c.value>T.value;return}if(!p.value){n.value=!0;return}if(B.value){n.value=!1;return}n.value=H.value&&!x.value||c.valueparseInt(e.order,10)),position:D(()=>e.location),layoutSize:k,elementSize:h(void 0),active:n,absolute:D(()=>e.absolute)});return N(()=>{const a=L.filterProps(e);return f(L,F({ref:u,class:["v-app-bar",{"v-app-bar--bottom":e.location==="bottom"},e.class],style:[{...l.value,"--v-toolbar-image-opacity":V.value,height:void 0,...y.value},e.style]},a,{collapse:P.value,flat:w.value}),t)}),{}}}),Ve=_()({name:"VAppBarTitle",props:J(),setup(e,b){let{slots:t}=b;return N(()=>f(j,F(e,{class:"v-app-bar-title"}),t)),{}}});export{L as V,j as a,Ve as b,Be as c}; +import{g as _,b as N,c as f,i as C,n as U,d as M,p as R,m as W,h as q,aC as Y,bz as Z,be as K,bo as Q,b7 as X,az as h,aI as ee,am as te,aW as z,aJ as E,bd as ae,a3 as d,bp as le,bj as oe,bk as ne,bq as se,bI as ie,ae as I,Z as re,$ as ue,a2 as $,bc as ce,ar as ve,by as de,b3 as me,a as ge,bC as he,E as F,av as D,bG as fe}from"./index-BXl8SUNP.js";const J=R({text:String,...q(),...W()},"VToolbarTitle"),j=_()({name:"VToolbarTitle",props:J(),setup(e,b){let{slots:t}=b;return N(()=>{const u=!!(t.default||t.text||e.text);return f(e.tag,{class:M(["v-toolbar-title",e.class]),style:U(e.style)},{default:()=>{var n;return[u&&C("div",{class:"v-toolbar-title__placeholder"},[t.text?t.text():e.text,(n=t.default)==null?void 0:n.call(t)])]}})}),{}}}),be=[null,"prominent","default","comfortable","compact"],G=R({absolute:Boolean,collapse:Boolean,collapsePosition:{type:String,default:"start"},color:String,density:{type:String,default:"default",validator:e=>be.includes(e)},extended:{type:Boolean,default:null},extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...ie(),...q(),...se(),...ne(),...W({tag:"header"}),...oe()},"VToolbar"),L=_()({name:"VToolbar",props:G(),setup(e,b){var B;let{slots:t}=b;const{backgroundColorClasses:u,backgroundColorStyles:n}=Y(()=>e.color),{borderClasses:o}=Z(e),{elevationClasses:m}=le(e),{roundedClasses:s}=K(e),{themeClasses:c}=Q(e),{rtlClasses:T}=X(),H=h(e.extended===null?!!((B=t.extension)!=null&&B.call(t)):e.extended),r=d(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),x=d(()=>H.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return ee({VBtn:{variant:"text"}}),N(()=>{var w;const p=!!(e.title||t.title),v=!!(t.image||e.image),P=(w=t.extension)==null?void 0:w.call(t);return H.value=e.extended===null?!!P:e.extended,f(e.tag,{class:M(["v-toolbar",`v-toolbar--collapse-${e.collapsePosition}`,{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},u.value,o.value,m.value,s.value,c.value,T.value,e.class]),style:U([n.value,e.style])},{default:()=>[v&&C("div",{key:"image",class:"v-toolbar__image"},[t.image?f(z,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},t.image):f(te,{key:"image-img",cover:!0,src:e.image},null)]),f(z,{defaults:{VTabs:{height:E(r.value)}}},{default:()=>{var V,k,y;return[C("div",{class:"v-toolbar__content",style:{height:E(r.value)}},[t.prepend&&C("div",{class:"v-toolbar__prepend"},[(V=t.prepend)==null?void 0:V.call(t)]),p&&f(j,{key:"title",text:e.title},{text:t.title}),(k=t.default)==null?void 0:k.call(t),t.append&&C("div",{class:"v-toolbar__append"},[(y=t.append)==null?void 0:y.call(t)])])]}}),f(z,{defaults:{VTabs:{height:E(x.value)}}},{default:()=>[f(ae,null,{default:()=>[H.value&&C("div",{class:"v-toolbar__extension",style:{height:E(x.value)}},[P])]})]})]})}),{contentHeight:r,extensionHeight:x}}}),ye=R({scrollTarget:{type:String},scrollThreshold:{type:[String,Number],default:300}},"scroll");function Se(e){let b=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};const{canScroll:t,layoutSize:u}=b;let n=0,o=0;const m=$(null),s=h(0),c=h(0),T=h(0),H=h(!1),r=h(!1),x=h(!1),B=h(!1),p=h(!0),v=d(()=>Number(e.scrollThreshold)),P=d(()=>ce((v.value-s.value)/v.value||0));function w(l){const a="window"in l?window.innerHeight:l.clientHeight,i="window"in l?document.documentElement.scrollHeight:l.scrollHeight;return{clientHeight:a,scrollHeight:i}}function V(){const l=m.value;if(!l)return;const{clientHeight:a,scrollHeight:i}=w(l),S=i-a,g=(u==null?void 0:u.value)||0,A=v.value+g;p.value=S>A}function k(){V()}function y(){const l=m.value;if(!l||t&&!t.value)return;n=s.value,s.value="window"in l?l.pageYOffset:l.scrollTop;const a=l instanceof Window?document.documentElement.scrollHeight:l.scrollHeight;o!==a&&(a>o&&V(),o=a),r.value=s.value=S-5;!r.value&&g&&s.value>=v.value&&p.value&&(B.value=!0);const A=Math.abs(s.value-n)>100,O=s.value<=5;(r.value&&n-s.value>1&&!g||A&&s.value{c.value=c.value||s.value}),I(H,()=>{c.value=0}),re(()=>{I(()=>e.scrollTarget,l=>{var i;const a=l?document.querySelector(l):window;a&&a!==m.value&&((i=m.value)==null||i.removeEventListener("scroll",y),m.value=a,m.value.addEventListener("scroll",y,{passive:!0}),Promise.resolve().then(()=>{V()}))},{immediate:!0}),window.addEventListener("resize",k,{passive:!0})}),ue(()=>{var l;(l=m.value)==null||l.removeEventListener("scroll",y),window.removeEventListener("resize",k)}),t&&I(t,y,{immediate:!0}),{scrollThreshold:v,currentScroll:s,currentThreshold:T,isScrollActive:H,scrollRatio:P,isScrollingUp:r,savedScroll:c,isAtBottom:x,reachedBottomWhileScrollingDown:B,hasEnoughScrollableSpace:p}}const Te=R({scrollBehavior:String,modelValue:{type:Boolean,default:!0},location:{type:String,default:"top",validator:e=>["top","bottom"].includes(e)},...G(),...fe(),...ye(),height:{type:[Number,String],default:64}},"VAppBar"),Be=_()({name:"VAppBar",props:Te(),emits:{"update:modelValue":e=>!0},setup(e,b){let{slots:t}=b;const u=$(),n=ve(e,"modelValue"),o=d(()=>{var i;const a=new Set(((i=e.scrollBehavior)==null?void 0:i.split(" "))??[]);return{hide:a.has("hide"),fullyHide:a.has("fully-hide"),inverted:a.has("inverted"),collapse:a.has("collapse"),elevate:a.has("elevate"),fadeImage:a.has("fade-image")}}),m=d(()=>{const a=o.value;return a.hide||a.fullyHide||a.inverted||a.collapse||a.elevate||a.fadeImage||!n.value}),s=d(()=>{var S,g;const a=((S=u.value)==null?void 0:S.contentHeight)??0,i=((g=u.value)==null?void 0:g.extensionHeight)??0;return a+i}),{currentScroll:c,scrollThreshold:T,isScrollingUp:H,scrollRatio:r,isAtBottom:x,reachedBottomWhileScrollingDown:B,hasEnoughScrollableSpace:p}=Se(e,{canScroll:m,layoutSize:s}),v=D(()=>o.value.hide||o.value.fullyHide),P=d(()=>e.collapse||o.value.collapse&&(o.value.inverted?r.value>0:r.value===0)),w=d(()=>e.flat||o.value.fullyHide&&!n.value||o.value.elevate&&(o.value.inverted?c.value>0:c.value===0)),V=d(()=>o.value.fadeImage?o.value.inverted?1-r.value:r.value:void 0),k=d(()=>{var S,g;if(o.value.hide&&o.value.inverted)return 0;const a=((S=u.value)==null?void 0:S.contentHeight)??0,i=((g=u.value)==null?void 0:g.extensionHeight)??0;return v.value?c.value!!e.scrollBehavior,()=>{me(()=>{if(!v.value){n.value=!0;return}if(o.value.inverted){n.value=c.value>T.value;return}if(!p.value){n.value=!0;return}if(B.value){n.value=!1;return}n.value=H.value&&!x.value||c.valueparseInt(e.order,10)),position:D(()=>e.location),layoutSize:k,elementSize:h(void 0),active:n,absolute:D(()=>e.absolute)});return N(()=>{const a=L.filterProps(e);return f(L,F({ref:u,class:["v-app-bar",{"v-app-bar--bottom":e.location==="bottom"},e.class],style:[{...l.value,"--v-toolbar-image-opacity":V.value,height:void 0,...y.value},e.style]},a,{collapse:P.value,flat:w.value}),t)}),{}}}),Ve=_()({name:"VAppBarTitle",props:J(),setup(e,b){let{slots:t}=b;return N(()=>f(j,F(e,{class:"v-app-bar-title"}),t)),{}}});export{L as V,j as a,Ve as b,Be as c}; diff --git a/assets/VCheckboxBtn-CylQNaxd.js b/assets/VCheckboxBtn-iC2wkMdx.js similarity index 86% rename from assets/VCheckboxBtn-CylQNaxd.js rename to assets/VCheckboxBtn-iC2wkMdx.js index be975a9..8b26d4c 100644 --- a/assets/VCheckboxBtn-CylQNaxd.js +++ b/assets/VCheckboxBtn-iC2wkMdx.js @@ -1 +1 @@ -import{a as o,m as f}from"./VSwitch-CjVC2rsZ.js";import{g as v,ar as c,b as V,aA as I,c as k,E as x,av as l,p as b,a_ as h}from"./index-BUM0TY0E.js";const C=b({indeterminate:Boolean,indeterminateIcon:{type:h,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=v()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),a=c(e,"modelValue");function u(n){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),m=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return V(()=>{const n=I(o.filterProps(e),["modelValue"]);return k(o,x(n,{modelValue:a.value,"onUpdate:modelValue":[d=>a.value=d,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:m.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m}; +import{a as o,m as f}from"./VSwitch-7fkmr9E6.js";import{g as v,ar as c,b as V,aA as I,c as k,E as x,av as l,p as b,a_ as h}from"./index-BXl8SUNP.js";const C=b({indeterminate:Boolean,indeterminateIcon:{type:h,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=v()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),a=c(e,"modelValue");function u(n){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),m=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return V(()=>{const n=I(o.filterProps(e),["modelValue"]);return k(o,x(n,{modelValue:a.value,"onUpdate:modelValue":[d=>a.value=d,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:m.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m}; diff --git a/assets/VChip-vdRDApTi.js b/assets/VChip-jIQL7s_d.js similarity index 99% rename from assets/VChip-vdRDApTi.js rename to assets/VChip-jIQL7s_d.js index 532d437..8beeaaa 100644 --- a/assets/VChip-vdRDApTi.js +++ b/assets/VChip-jIQL7s_d.js @@ -1 +1 @@ -import{g as le,b7 as Pe,X as we,bU as ye,cd as se,cB as Ee,aS as ie,ae as pe,b as me,c as h,i as g,b8 as oe,t as E,d as M,n as Re,a3 as S,az as F,cm as _e,p as te,a_ as R,bV as ge,m as ae,bH as Te,h as ne,bo as ke,aI as Be,E as ee,aY as Fe,cf as Se,bj as Ce,av as z,S as ce,aq as Oe,bz as De,aG as Ge,be as We,cC as Le,ar as Me,bR as re,cD as He,cu as qe,I as ue,cv as $e,cE as Ke,aW as H,J as Ne,F as de,L as ve,A as Ue,bp as je,cg as Xe,cF as Je,bk as Qe,bS as Ye,bq as Ze,aK as el,bI as ll,b0 as fe}from"./index-BUM0TY0E.js";function tl(e){let{selectedElement:s,containerElement:n,isRtl:r,isHorizontal:i}=e;const y=O(i,n),c=Ie(i,r,n),p=O(i,s),b=xe(i,s),k=p*.4;return c>b?b-k:c+ytypeof e=="boolean"||["always","desktop","mobile","never"].includes(e)},...ne(),...Te({mobile:null}),...ae(),...ge({selectedClass:"v-slide-group-item--active"})},"VSlideGroup"),be=le()({name:"VSlideGroup",props:ze(),emits:{"update:modelValue":e=>!0},setup(e,s){let{slots:n}=s;const{isRtl:r}=Pe(),{displayClasses:i,mobile:y}=we(e),c=ye(e,e.symbol),p=F(!1),b=F(0),k=F(0),x=F(0),v=S(()=>e.direction==="horizontal"),{resizeRef:d,contentRect:a}=se(),{resizeRef:u,contentRect:m}=se(),D=Ee(),C=S(()=>({container:d.el,duration:200,easing:"easeOutQuart"})),q=S(()=>c.selected.value.length?c.items.value.findIndex(t=>t.id===c.selected.value[0]):-1),$=S(()=>c.selected.value.length?c.items.value.findIndex(t=>t.id===c.selected.value[c.selected.value.length-1]):-1);if(ie){let t=-1;pe(()=>[c.selected.value,a.value,m.value,v.value],()=>{cancelAnimationFrame(t),t=requestAnimationFrame(()=>{if(a.value&&m.value){const l=v.value?"width":"height";k.value=a.value[l],x.value=m.value[l],p.value=k.value+1=0&&u.el){const l=u.el.children[$.value];G(l,e.centerActive)}})})}const A=F(!1);function G(t,l){let o=0;l?o=al({containerElement:d.el,isHorizontal:v.value,selectedElement:t}):o=tl({containerElement:d.el,isHorizontal:v.value,isRtl:r.value,selectedElement:t}),_(o)}function _(t){if(!ie||!d.el)return;const l=O(v.value,d.el),o=Ie(v.value,r.value,d.el);if(!(he(v.value,d.el)<=l||Math.abs(t-o)<16)){if(v.value&&r.value&&d.el){const{scrollWidth:Y,offsetWidth:Z}=d.el;t=Y-Z-t}v.value?D.horizontal(t,C.value):D(t,C.value)}}function K(t){const{scrollTop:l,scrollLeft:o}=t.target;b.value=v.value?o:l}function f(t){if(A.value=!0,!(!p.value||!u.el)){for(const l of t.composedPath())for(const o of u.el.children)if(o===l){G(o);return}}}function V(t){A.value=!1}let T=!1;function N(t){var l;!T&&!A.value&&!(t.relatedTarget&&((l=u.el)!=null&&l.contains(t.relatedTarget)))&&I(),T=!1}function B(){T=!0}function W(t){if(!u.el)return;function l(o){t.preventDefault(),I(o)}v.value?t.key==="ArrowRight"?l(r.value?"prev":"next"):t.key==="ArrowLeft"&&l(r.value?"next":"prev"):t.key==="ArrowDown"?l("next"):t.key==="ArrowUp"&&l("prev"),t.key==="Home"?l("first"):t.key==="End"&&l("last")}function P(t,l){if(!t)return;let o=t;do o=o==null?void 0:o[l==="next"?"nextElementSibling":"previousElementSibling"];while(o!=null&&o.hasAttribute("disabled"));return o}function I(t){if(!u.el)return;let l;if(!t)l=_e(u.el)[0];else if(t==="next"){if(l=P(u.el.querySelector(":focus"),t),!l)return I("first")}else if(t==="prev"){if(l=P(u.el.querySelector(":focus"),t),!l)return I("last")}else t==="first"?(l=u.el.firstElementChild,l!=null&&l.hasAttribute("disabled")&&(l=P(l,"next"))):t==="last"&&(l=u.el.lastElementChild,l!=null&&l.hasAttribute("disabled")&&(l=P(l,"prev")));l&&l.focus({preventScroll:!0})}function w(t){const l=v.value&&r.value?-1:1,o=(t==="prev"?-l:l)*k.value;let Q=b.value+o;if(v.value&&r.value&&d.el){const{scrollWidth:Y,offsetWidth:Z}=d.el;Q+=Y-Z}_(Q)}const U=S(()=>({next:c.next,prev:c.prev,select:c.select,isSelected:c.isSelected})),L=S(()=>p.value||Math.abs(b.value)>0),j=S(()=>{switch(e.showArrows){case"never":return!1;case"always":return!0;case"desktop":return!y.value;case!0:return L.value;case"mobile":return y.value||L.value;default:return!y.value&&L.value}}),X=S(()=>Math.abs(b.value)>1),J=S(()=>{if(!d.value||!L.value)return!1;const t=he(v.value,d.el),l=nl(v.value,d.el);return t-l-Math.abs(b.value)>1});return me(()=>h(e.tag,{class:M(["v-slide-group",{"v-slide-group--vertical":!v.value,"v-slide-group--has-affixes":j.value,"v-slide-group--is-overflowing":p.value},i.value,e.class]),style:Re(e.style),tabindex:A.value||c.selected.value.length?-1:0,onFocus:N},{default:()=>{var t,l,o;return[j.value&&g("div",{key:"prev",class:M(["v-slide-group__prev",{"v-slide-group__prev--disabled":!X.value}]),onMousedown:B,onClick:()=>X.value&&w("prev")},[((t=n.prev)==null?void 0:t.call(n,U.value))??h(oe,null,{default:()=>[h(E,{icon:r.value?e.nextIcon:e.prevIcon},null)]})]),g("div",{key:"container",ref:d,class:M(["v-slide-group__container",e.contentClass]),onScroll:K},[g("div",{ref:u,class:"v-slide-group__content",onFocusin:f,onFocusout:V,onKeydown:W},[(l=n.default)==null?void 0:l.call(n,U.value)])]),j.value&&g("div",{key:"next",class:M(["v-slide-group__next",{"v-slide-group__next--disabled":!J.value}]),onMousedown:B,onClick:()=>J.value&&w("next")},[((o=n.next)==null?void 0:o.call(n,U.value))??h(oe,null,{default:()=>[h(E,{icon:r.value?e.prevIcon:e.nextIcon},null)]})])]}})),{selected:c.selected,scrollTo:w,scrollOffset:b,focus:I,hasPrev:X,hasNext:J}}}),Ae=Symbol.for("vuetify:v-chip-group"),sl=te({baseColor:String,column:Boolean,filter:Boolean,valueComparator:{type:Function,default:Fe},...ze({scrollToActive:!1}),...ne(),...ge({selectedClass:"v-chip--selected"}),...ae(),...Ce(),...Se({variant:"tonal"})},"VChipGroup"),cl=le()({name:"VChipGroup",props:sl(),emits:{"update:modelValue":e=>!0},setup(e,s){let{slots:n}=s;const{themeClasses:r}=ke(e),{isSelected:i,select:y,next:c,prev:p,selected:b}=ye(e,Ae);return Be({VChip:{baseColor:z(()=>e.baseColor),color:z(()=>e.color),disabled:z(()=>e.disabled),filter:z(()=>e.filter),variant:z(()=>e.variant)}}),me(()=>{const k=be.filterProps(e);return h(be,ee(k,{class:["v-chip-group",{"v-chip-group--column":e.column},r.value,e.class],style:e.style}),{default:()=>{var x;return[(x=n.default)==null?void 0:x.call(n,{isSelected:i,select:y,next:c,prev:p,selected:b.value})]}})}),{}}}),il=te({activeClass:String,appendAvatar:String,appendIcon:R,baseColor:String,closable:Boolean,closeIcon:{type:R,default:"$delete"},closeLabel:{type:String,default:"$vuetify.close"},draggable:Boolean,filter:Boolean,filterIcon:{type:R,default:"$complete"},label:Boolean,link:{type:Boolean,default:void 0},pill:Boolean,prependAvatar:String,prependIcon:R,ripple:{type:[Boolean,Object],default:!0},text:{type:[String,Number,Boolean],default:void 0},modelValue:{type:Boolean,default:!0},onClick:fe(),onClickOnce:fe(),...ll(),...ne(),...el(),...Ze(),...Ye(),...Qe(),...Je(),...Xe(),...ae({tag:"span"}),...Ce(),...Se({variant:"tonal"})},"VChip"),rl=le()({name:"VChip",directives:{vRipple:ce},props:il(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0,"group:selected":e=>!0,click:e=>!0},setup(e,s){let{attrs:n,emit:r,slots:i}=s;const{t:y}=Oe(),{borderClasses:c}=De(e),{densityClasses:p}=Ge(e),{elevationClasses:b}=je(e),{roundedClasses:k}=We(e),{sizeClasses:x}=Le(e),{themeClasses:v}=ke(e),d=Me(e,"modelValue"),a=re(e,Ae,!1),u=re(e,Ve,!1),m=He(e,n),D=z(()=>e.link!==!1&&m.isLink.value),C=S(()=>!e.disabled&&e.link!==!1&&(!!a||e.link||m.isClickable.value)),q=z(()=>({"aria-label":y(e.closeLabel),disabled:e.disabled,onClick(f){f.preventDefault(),f.stopPropagation(),d.value=!1,r("click:close",f)}}));pe(d,f=>{f?(a==null||a.register(),u==null||u.register()):(a==null||a.unregister(),u==null||u.unregister())});const{colorClasses:$,colorStyles:A,variantClasses:G}=qe(()=>({color:!a||a.isSelected.value?e.color??e.baseColor:e.baseColor,variant:e.variant}));function _(f){var V;r("click",f),C.value&&((V=m.navigate)==null||V.call(m,f),a==null||a.toggle())}function K(f){(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),_(f))}return()=>{var I;const f=m.isLink.value?"a":e.tag,V=!!(e.appendIcon||e.appendAvatar),T=!!(V||i.append),N=!!(i.close||e.closable),B=!!(i.filter||e.filter)&&a,W=!!(e.prependIcon||e.prependAvatar),P=!!(W||i.prepend);return d.value&&ue(h(f,ee(m.linkProps,{class:["v-chip",{"v-chip--disabled":e.disabled,"v-chip--label":e.label,"v-chip--link":C.value,"v-chip--filter":B,"v-chip--pill":e.pill,[`${e.activeClass}`]:e.activeClass&&((I=m.isActive)==null?void 0:I.value)},v.value,c.value,$.value,p.value,b.value,k.value,x.value,G.value,a==null?void 0:a.selectedClass.value,e.class],style:[A.value,e.style],disabled:e.disabled||void 0,draggable:e.draggable,tabindex:C.value?0:void 0,onClick:_,onKeydown:C.value&&!D.value&&K}),{default:()=>{var w;return[$e(C.value,"v-chip"),B&&h(Ke,{key:"filter"},{default:()=>[ue(g("div",{class:"v-chip__filter"},[i.filter?h(H,{key:"filter-defaults",disabled:!e.filterIcon,defaults:{VIcon:{icon:e.filterIcon}}},i.filter):h(E,{key:"filter-icon",icon:e.filterIcon},null)]),[[Ne,a.isSelected.value]])]}),P&&g("div",{key:"prepend",class:"v-chip__prepend"},[i.prepend?h(H,{key:"prepend-defaults",disabled:!W,defaults:{VAvatar:{image:e.prependAvatar,start:!0},VIcon:{icon:e.prependIcon,start:!0}}},i.prepend):g(de,null,[e.prependIcon&&h(E,{key:"prepend-icon",icon:e.prependIcon,start:!0},null),e.prependAvatar&&h(ve,{key:"prepend-avatar",image:e.prependAvatar,start:!0},null)])]),g("div",{class:"v-chip__content","data-no-activator":""},[((w=i.default)==null?void 0:w.call(i,{isSelected:a==null?void 0:a.isSelected.value,selectedClass:a==null?void 0:a.selectedClass.value,select:a==null?void 0:a.select,toggle:a==null?void 0:a.toggle,value:a==null?void 0:a.value.value,disabled:e.disabled}))??Ue(e.text)]),T&&g("div",{key:"append",class:"v-chip__append"},[i.append?h(H,{key:"append-defaults",disabled:!V,defaults:{VAvatar:{end:!0,image:e.appendAvatar},VIcon:{end:!0,icon:e.appendIcon}}},i.append):g(de,null,[e.appendIcon&&h(E,{key:"append-icon",end:!0,icon:e.appendIcon},null),e.appendAvatar&&h(ve,{key:"append-avatar",end:!0,image:e.appendAvatar},null)])]),N&&g("button",ee({key:"close",class:"v-chip__close",type:"button","data-testid":"close-chip"},q.value),[i.close?h(H,{key:"close-defaults",defaults:{VIcon:{icon:e.closeIcon,size:"x-small"}}},i.close):h(E,{key:"close-icon",icon:e.closeIcon,size:"x-small"},null)])]}}),[[ce,C.value&&e.ripple,null]])}}});export{rl as V,be as a,cl as b,ze as m}; +import{g as le,b7 as Pe,X as we,bU as ye,cd as se,cB as Ee,aS as ie,ae as pe,b as me,c as h,i as g,b8 as oe,t as E,d as M,n as Re,a3 as S,az as F,cm as _e,p as te,a_ as R,bV as ge,m as ae,bH as Te,h as ne,bo as ke,aI as Be,E as ee,aY as Fe,cf as Se,bj as Ce,av as z,S as ce,aq as Oe,bz as De,aG as Ge,be as We,cC as Le,ar as Me,bR as re,cD as He,cu as qe,I as ue,cv as $e,cE as Ke,aW as H,J as Ne,F as de,L as ve,A as Ue,bp as je,cg as Xe,cF as Je,bk as Qe,bS as Ye,bq as Ze,aK as el,bI as ll,b0 as fe}from"./index-BXl8SUNP.js";function tl(e){let{selectedElement:s,containerElement:n,isRtl:r,isHorizontal:i}=e;const y=O(i,n),c=Ie(i,r,n),p=O(i,s),b=xe(i,s),k=p*.4;return c>b?b-k:c+ytypeof e=="boolean"||["always","desktop","mobile","never"].includes(e)},...ne(),...Te({mobile:null}),...ae(),...ge({selectedClass:"v-slide-group-item--active"})},"VSlideGroup"),be=le()({name:"VSlideGroup",props:ze(),emits:{"update:modelValue":e=>!0},setup(e,s){let{slots:n}=s;const{isRtl:r}=Pe(),{displayClasses:i,mobile:y}=we(e),c=ye(e,e.symbol),p=F(!1),b=F(0),k=F(0),x=F(0),v=S(()=>e.direction==="horizontal"),{resizeRef:d,contentRect:a}=se(),{resizeRef:u,contentRect:m}=se(),D=Ee(),C=S(()=>({container:d.el,duration:200,easing:"easeOutQuart"})),q=S(()=>c.selected.value.length?c.items.value.findIndex(t=>t.id===c.selected.value[0]):-1),$=S(()=>c.selected.value.length?c.items.value.findIndex(t=>t.id===c.selected.value[c.selected.value.length-1]):-1);if(ie){let t=-1;pe(()=>[c.selected.value,a.value,m.value,v.value],()=>{cancelAnimationFrame(t),t=requestAnimationFrame(()=>{if(a.value&&m.value){const l=v.value?"width":"height";k.value=a.value[l],x.value=m.value[l],p.value=k.value+1=0&&u.el){const l=u.el.children[$.value];G(l,e.centerActive)}})})}const A=F(!1);function G(t,l){let o=0;l?o=al({containerElement:d.el,isHorizontal:v.value,selectedElement:t}):o=tl({containerElement:d.el,isHorizontal:v.value,isRtl:r.value,selectedElement:t}),_(o)}function _(t){if(!ie||!d.el)return;const l=O(v.value,d.el),o=Ie(v.value,r.value,d.el);if(!(he(v.value,d.el)<=l||Math.abs(t-o)<16)){if(v.value&&r.value&&d.el){const{scrollWidth:Y,offsetWidth:Z}=d.el;t=Y-Z-t}v.value?D.horizontal(t,C.value):D(t,C.value)}}function K(t){const{scrollTop:l,scrollLeft:o}=t.target;b.value=v.value?o:l}function f(t){if(A.value=!0,!(!p.value||!u.el)){for(const l of t.composedPath())for(const o of u.el.children)if(o===l){G(o);return}}}function V(t){A.value=!1}let T=!1;function N(t){var l;!T&&!A.value&&!(t.relatedTarget&&((l=u.el)!=null&&l.contains(t.relatedTarget)))&&I(),T=!1}function B(){T=!0}function W(t){if(!u.el)return;function l(o){t.preventDefault(),I(o)}v.value?t.key==="ArrowRight"?l(r.value?"prev":"next"):t.key==="ArrowLeft"&&l(r.value?"next":"prev"):t.key==="ArrowDown"?l("next"):t.key==="ArrowUp"&&l("prev"),t.key==="Home"?l("first"):t.key==="End"&&l("last")}function P(t,l){if(!t)return;let o=t;do o=o==null?void 0:o[l==="next"?"nextElementSibling":"previousElementSibling"];while(o!=null&&o.hasAttribute("disabled"));return o}function I(t){if(!u.el)return;let l;if(!t)l=_e(u.el)[0];else if(t==="next"){if(l=P(u.el.querySelector(":focus"),t),!l)return I("first")}else if(t==="prev"){if(l=P(u.el.querySelector(":focus"),t),!l)return I("last")}else t==="first"?(l=u.el.firstElementChild,l!=null&&l.hasAttribute("disabled")&&(l=P(l,"next"))):t==="last"&&(l=u.el.lastElementChild,l!=null&&l.hasAttribute("disabled")&&(l=P(l,"prev")));l&&l.focus({preventScroll:!0})}function w(t){const l=v.value&&r.value?-1:1,o=(t==="prev"?-l:l)*k.value;let Q=b.value+o;if(v.value&&r.value&&d.el){const{scrollWidth:Y,offsetWidth:Z}=d.el;Q+=Y-Z}_(Q)}const U=S(()=>({next:c.next,prev:c.prev,select:c.select,isSelected:c.isSelected})),L=S(()=>p.value||Math.abs(b.value)>0),j=S(()=>{switch(e.showArrows){case"never":return!1;case"always":return!0;case"desktop":return!y.value;case!0:return L.value;case"mobile":return y.value||L.value;default:return!y.value&&L.value}}),X=S(()=>Math.abs(b.value)>1),J=S(()=>{if(!d.value||!L.value)return!1;const t=he(v.value,d.el),l=nl(v.value,d.el);return t-l-Math.abs(b.value)>1});return me(()=>h(e.tag,{class:M(["v-slide-group",{"v-slide-group--vertical":!v.value,"v-slide-group--has-affixes":j.value,"v-slide-group--is-overflowing":p.value},i.value,e.class]),style:Re(e.style),tabindex:A.value||c.selected.value.length?-1:0,onFocus:N},{default:()=>{var t,l,o;return[j.value&&g("div",{key:"prev",class:M(["v-slide-group__prev",{"v-slide-group__prev--disabled":!X.value}]),onMousedown:B,onClick:()=>X.value&&w("prev")},[((t=n.prev)==null?void 0:t.call(n,U.value))??h(oe,null,{default:()=>[h(E,{icon:r.value?e.nextIcon:e.prevIcon},null)]})]),g("div",{key:"container",ref:d,class:M(["v-slide-group__container",e.contentClass]),onScroll:K},[g("div",{ref:u,class:"v-slide-group__content",onFocusin:f,onFocusout:V,onKeydown:W},[(l=n.default)==null?void 0:l.call(n,U.value)])]),j.value&&g("div",{key:"next",class:M(["v-slide-group__next",{"v-slide-group__next--disabled":!J.value}]),onMousedown:B,onClick:()=>J.value&&w("next")},[((o=n.next)==null?void 0:o.call(n,U.value))??h(oe,null,{default:()=>[h(E,{icon:r.value?e.prevIcon:e.nextIcon},null)]})])]}})),{selected:c.selected,scrollTo:w,scrollOffset:b,focus:I,hasPrev:X,hasNext:J}}}),Ae=Symbol.for("vuetify:v-chip-group"),sl=te({baseColor:String,column:Boolean,filter:Boolean,valueComparator:{type:Function,default:Fe},...ze({scrollToActive:!1}),...ne(),...ge({selectedClass:"v-chip--selected"}),...ae(),...Ce(),...Se({variant:"tonal"})},"VChipGroup"),cl=le()({name:"VChipGroup",props:sl(),emits:{"update:modelValue":e=>!0},setup(e,s){let{slots:n}=s;const{themeClasses:r}=ke(e),{isSelected:i,select:y,next:c,prev:p,selected:b}=ye(e,Ae);return Be({VChip:{baseColor:z(()=>e.baseColor),color:z(()=>e.color),disabled:z(()=>e.disabled),filter:z(()=>e.filter),variant:z(()=>e.variant)}}),me(()=>{const k=be.filterProps(e);return h(be,ee(k,{class:["v-chip-group",{"v-chip-group--column":e.column},r.value,e.class],style:e.style}),{default:()=>{var x;return[(x=n.default)==null?void 0:x.call(n,{isSelected:i,select:y,next:c,prev:p,selected:b.value})]}})}),{}}}),il=te({activeClass:String,appendAvatar:String,appendIcon:R,baseColor:String,closable:Boolean,closeIcon:{type:R,default:"$delete"},closeLabel:{type:String,default:"$vuetify.close"},draggable:Boolean,filter:Boolean,filterIcon:{type:R,default:"$complete"},label:Boolean,link:{type:Boolean,default:void 0},pill:Boolean,prependAvatar:String,prependIcon:R,ripple:{type:[Boolean,Object],default:!0},text:{type:[String,Number,Boolean],default:void 0},modelValue:{type:Boolean,default:!0},onClick:fe(),onClickOnce:fe(),...ll(),...ne(),...el(),...Ze(),...Ye(),...Qe(),...Je(),...Xe(),...ae({tag:"span"}),...Ce(),...Se({variant:"tonal"})},"VChip"),rl=le()({name:"VChip",directives:{vRipple:ce},props:il(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0,"group:selected":e=>!0,click:e=>!0},setup(e,s){let{attrs:n,emit:r,slots:i}=s;const{t:y}=Oe(),{borderClasses:c}=De(e),{densityClasses:p}=Ge(e),{elevationClasses:b}=je(e),{roundedClasses:k}=We(e),{sizeClasses:x}=Le(e),{themeClasses:v}=ke(e),d=Me(e,"modelValue"),a=re(e,Ae,!1),u=re(e,Ve,!1),m=He(e,n),D=z(()=>e.link!==!1&&m.isLink.value),C=S(()=>!e.disabled&&e.link!==!1&&(!!a||e.link||m.isClickable.value)),q=z(()=>({"aria-label":y(e.closeLabel),disabled:e.disabled,onClick(f){f.preventDefault(),f.stopPropagation(),d.value=!1,r("click:close",f)}}));pe(d,f=>{f?(a==null||a.register(),u==null||u.register()):(a==null||a.unregister(),u==null||u.unregister())});const{colorClasses:$,colorStyles:A,variantClasses:G}=qe(()=>({color:!a||a.isSelected.value?e.color??e.baseColor:e.baseColor,variant:e.variant}));function _(f){var V;r("click",f),C.value&&((V=m.navigate)==null||V.call(m,f),a==null||a.toggle())}function K(f){(f.key==="Enter"||f.key===" ")&&(f.preventDefault(),_(f))}return()=>{var I;const f=m.isLink.value?"a":e.tag,V=!!(e.appendIcon||e.appendAvatar),T=!!(V||i.append),N=!!(i.close||e.closable),B=!!(i.filter||e.filter)&&a,W=!!(e.prependIcon||e.prependAvatar),P=!!(W||i.prepend);return d.value&&ue(h(f,ee(m.linkProps,{class:["v-chip",{"v-chip--disabled":e.disabled,"v-chip--label":e.label,"v-chip--link":C.value,"v-chip--filter":B,"v-chip--pill":e.pill,[`${e.activeClass}`]:e.activeClass&&((I=m.isActive)==null?void 0:I.value)},v.value,c.value,$.value,p.value,b.value,k.value,x.value,G.value,a==null?void 0:a.selectedClass.value,e.class],style:[A.value,e.style],disabled:e.disabled||void 0,draggable:e.draggable,tabindex:C.value?0:void 0,onClick:_,onKeydown:C.value&&!D.value&&K}),{default:()=>{var w;return[$e(C.value,"v-chip"),B&&h(Ke,{key:"filter"},{default:()=>[ue(g("div",{class:"v-chip__filter"},[i.filter?h(H,{key:"filter-defaults",disabled:!e.filterIcon,defaults:{VIcon:{icon:e.filterIcon}}},i.filter):h(E,{key:"filter-icon",icon:e.filterIcon},null)]),[[Ne,a.isSelected.value]])]}),P&&g("div",{key:"prepend",class:"v-chip__prepend"},[i.prepend?h(H,{key:"prepend-defaults",disabled:!W,defaults:{VAvatar:{image:e.prependAvatar,start:!0},VIcon:{icon:e.prependIcon,start:!0}}},i.prepend):g(de,null,[e.prependIcon&&h(E,{key:"prepend-icon",icon:e.prependIcon,start:!0},null),e.prependAvatar&&h(ve,{key:"prepend-avatar",image:e.prependAvatar,start:!0},null)])]),g("div",{class:"v-chip__content","data-no-activator":""},[((w=i.default)==null?void 0:w.call(i,{isSelected:a==null?void 0:a.isSelected.value,selectedClass:a==null?void 0:a.selectedClass.value,select:a==null?void 0:a.select,toggle:a==null?void 0:a.toggle,value:a==null?void 0:a.value.value,disabled:e.disabled}))??Ue(e.text)]),T&&g("div",{key:"append",class:"v-chip__append"},[i.append?h(H,{key:"append-defaults",disabled:!V,defaults:{VAvatar:{end:!0,image:e.appendAvatar},VIcon:{end:!0,icon:e.appendIcon}}},i.append):g(de,null,[e.appendIcon&&h(E,{key:"append-icon",end:!0,icon:e.appendIcon},null),e.appendAvatar&&h(ve,{key:"append-avatar",end:!0,image:e.appendAvatar},null)])]),N&&g("button",ee({key:"close",class:"v-chip__close",type:"button","data-testid":"close-chip"},q.value),[i.close?h(H,{key:"close-defaults",defaults:{VIcon:{icon:e.closeIcon,size:"x-small"}}},i.close):h(E,{key:"close-icon",icon:e.closeIcon,size:"x-small"},null)])]}}),[[ce,C.value&&e.ripple,null]])}}});export{rl as V,be as a,cl as b,ze as m}; diff --git a/assets/VCombobox-B-HflrVw.js b/assets/VCombobox-D_3YC1pP.js similarity index 99% rename from assets/VCombobox-B-HflrVw.js rename to assets/VCombobox-D_3YC1pP.js index 08b3a17..150aea3 100644 --- a/assets/VCombobox-B-HflrVw.js +++ b/assets/VCombobox-D_3YC1pP.js @@ -1,2 +1,2 @@ -import{Z as ai,ae as Y,$ as ri,az as Z,a3 as P,aJ as Bi,bx as Fi,by as xn,b3 as Li,ba as $i,bc as Oi,g as ji,b7 as Wi,bo as Hi,bz as Ui,aC as On,X as Yi,be as Ki,bA as Xi,ar as Mn,a as Qi,aH as Gi,bB as Ji,aw as tn,bC as ng,aI as ig,b as bi,i as N,c as v,am as gg,aW as mi,E as $,br as hg,F as an,a2 as gn,av as fn,bD as ug,bE as eg,bp as sg,bv as lg,p as xi,bj as og,m as tg,aA as fi,bF as cg,bk as zg,bG as yg,bq as dg,bH as ag,bw as rg,h as jg,bI as bg,_ as mg,bJ as xg,bK as Cn,o as cn,j as mn,w as L,v as yn,P as wi,C as fg,G as wg,Q as qn,a0 as Wn,A as Dn,a1 as qg,D as In,t as pn,aq as pg,aR as vg,aB as kg,as as Tg,bL as zn,aY as Hn,aS as Sg,aT as Pg,K as Cg,aU as Dg,L as Ig,aV as Vg,n as Mg,d as Eg,au as _g,aX as Un,bM as Ng,bN as Rg}from"./index-BUM0TY0E.js";import{V as Ag,a as Zg}from"./VAppBarTitle-DZ_l7t3b.js";import{e as Bg,f as Fg,V as Yn,g as Lg}from"./VTextField-C579e7l1.js";import{u as $g,a as Og,V as Wg,b as Hg,h as Ug,c as Yg,m as Kg,d as Xg}from"./filter-ByuXXWRY.js";import{V as Qg}from"./VCheckboxBtn-CylQNaxd.js";import{V as Kn}from"./VChip-vdRDApTi.js";const ou=["Teams Ping.mp3","Teams Remix.mp3","Teams bounce.mp3","Teams incoming-ringtone-level30.mp3","Teams incoming-ringtone-level40.mp3","Teams meetup_ring.mp3","Teams screenshare_ring.mp3","Teams teams_meet_up_reminder.mp3","Teams teams_notification.mp3","Teams 优先处理.mp3","Teams 共鸣.mp3","Teams 召唤.mp3","Teams 叮铃.mp3","Teams 增强.mp3","Teams 尤里卡.mp3","Teams 弹拨.mp3","Teams 提醒.mp3","Teams 摇摆.mp3","Teams 时空.mp3","Teams 气泡(大声).mp3","Teams 气泡.mp3","Teams 波普.mp3","Teams 波纹.mp3","Teams 滴水.mp3","Teams 点击.mp3","Teams 蜂鸣声.mp3","Teams 警报.mp3","Teams 赋予希望.mp3","Teams 轻弹.mp3","Teams 进阶.mp3","Teams 重复振铃.mp3","Teams 颤振.mp3","Teams 高分.mp3","Teams 默认.mp3","Teams 默认通话铃.mp3"];function Gg(n){return n?`/sounds/${n}`:null}function tu(n,i=!1){const g=Gg(n);if(!g)return console.warn("音频文件不存在:",n),null;try{const u=new Audio(g);u.loop=i;const h=u.play();return h!==void 0&&h.catch(e=>{console.warn("播放音频失败:",e.name,e.message)}),u}catch(u){return console.error("创建音频对象失败:",u),null}}function cu(n){n&&(n.pause(),n.currentTime=0)}function Jg(n){let{rootEl:i,isSticky:g,layoutItemStyles:u}=n;const h=Z(!1),e=Z(0),s=P(()=>{const c=typeof h.value=="boolean"?"top":h.value;return[g.value?{top:"auto",bottom:"auto",height:void 0}:void 0,h.value?{[c]:Bi(e.value)}:{top:u.value.top}]});ai(()=>{Y(g,c=>{c?window.addEventListener("scroll",d,{passive:!0}):window.removeEventListener("scroll",d)},{immediate:!0})}),ri(()=>{window.removeEventListener("scroll",d)});let o=0;function d(){const c=o>window.scrollY?"up":"down",z=i.value.getBoundingClientRect(),t=parseFloat(u.value.top??0),x=window.scrollY-Math.max(0,e.value-t),w=z.height+Math.max(e.value,t)-window.scrollY-window.innerHeight,T=parseFloat(getComputedStyle(i.value).getPropertyValue("--v-body-scroll-y"))||0;z.height0;g--){if(n[g].t===n[g-1].t)continue;const u=Xn(i),h=(n[g].d-n[g-1].d)/(n[g].t-n[g-1].t);i+=(h-u)*Math.abs(h),g===n.length-1&&(i*=.5)}return Xn(i)*1e3}function gh(){const n={};function i(h){Array.from(h.changedTouches).forEach(e=>{(n[e.identifier]??(n[e.identifier]=new Fi(ih))).push([h.timeStamp,e])})}function g(h){Array.from(h.changedTouches).forEach(e=>{delete n[e.identifier]})}function u(h){var c;const e=(c=n[h])==null?void 0:c.values().reverse();if(!e)throw new Error(`No samples for touch id ${h}`);const s=e[0],o=[],d=[];for(const z of e){if(s[0]-z[0]>nh)break;o.push({t:z[0],d:z[1].clientX}),d.push({t:z[0],d:z[1].clientY})}return{x:Qn(o),y:Qn(d),get direction(){const{x:z,y:t}=this,[x,w]=[Math.abs(z),Math.abs(t)];return x>w&&z>=0?"right":x>w&&z<=0?"left":w>x&&t>=0?"down":w>x&&t<=0?"up":hh()}}}return{addMovement:i,endTouch:g,getVelocity:u}}function hh(){throw new Error}function uh(n){let{el:i,isActive:g,isTemporary:u,width:h,touchless:e,position:s}=n;ai(()=>{window.addEventListener("touchstart",K,{passive:!0}),window.addEventListener("touchmove",a,{passive:!1}),window.addEventListener("touchend",B,{passive:!0})}),ri(()=>{window.removeEventListener("touchstart",K),window.removeEventListener("touchmove",a),window.removeEventListener("touchend",B)});const o=P(()=>["left","right"].includes(s.value)),{addMovement:d,endTouch:c,getVelocity:z}=gh();let t=!1;const x=Z(!1),w=Z(0),T=Z(0);let V;function J(m,r){return(s.value==="left"?m:s.value==="right"?document.documentElement.clientWidth-m:s.value==="top"?m:s.value==="bottom"?document.documentElement.clientHeight-m:on())-(r?h.value:0)}function nn(m){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const j=s.value==="left"?(m-T.value)/h.value:s.value==="right"?(document.documentElement.clientWidth-m-T.value)/h.value:s.value==="top"?(m-T.value)/h.value:s.value==="bottom"?(document.documentElement.clientHeight-m-T.value)/h.value:on();return r?Oi(j):j}function K(m){if(e.value)return;const r=m.changedTouches[0].clientX,j=m.changedTouches[0].clientY,f=25,b=s.value==="left"?rdocument.documentElement.clientWidth-f:s.value==="top"?jdocument.documentElement.clientHeight-f:on(),D=g.value&&(s.value==="left"?rdocument.documentElement.clientWidth-h.value:s.value==="top"?jdocument.documentElement.clientHeight-h.value:on());(b||D||g.value&&u.value)&&(V=[r,j],T.value=J(o.value?r:j,g.value),w.value=nn(o.value?r:j),t=T.value>-20&&T.value<80,c(m),d(m))}function a(m){const r=m.changedTouches[0].clientX,j=m.changedTouches[0].clientY;if(t){if(!m.cancelable){t=!1;return}const b=Math.abs(r-V[0]),D=Math.abs(j-V[1]);(o.value?b>D&&b>3:D>b&&D>3)?(x.value=!0,t=!1):(o.value?D:b)>3&&(t=!1)}if(!x.value)return;m.preventDefault(),d(m);const f=nn(o.value?r:j,!1);w.value=Math.max(0,Math.min(1,f)),f>1?T.value=J(o.value?r:j,!0):f<0&&(T.value=J(o.value?r:j,!1))}function B(m){if(t=!1,!x.value)return;d(m),x.value=!1;const r=z(m.changedTouches[0].identifier),j=Math.abs(r.x),f=Math.abs(r.y);(o.value?j>f&&j>400:f>j&&f>3)?g.value=r.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||on()):g.value=w.value>.5}const X=P(()=>x.value?{transform:s.value==="left"?`translateX(calc(-100% + ${w.value*h.value}px))`:s.value==="right"?`translateX(calc(100% - ${w.value*h.value}px))`:s.value==="top"?`translateY(calc(-100% + ${w.value*h.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${w.value*h.value}px))`:on(),transition:"none"}:void 0);return xn(x,()=>{var j,f;const m=((j=i.value)==null?void 0:j.style.transform)??null,r=((f=i.value)==null?void 0:f.style.transition)??null;Li(()=>{var b,D,W,hn;(D=i.value)==null||D.style.setProperty("transform",((b=X.value)==null?void 0:b.transform)||"none"),(hn=i.value)==null||hn.style.setProperty("transition",((W=X.value)==null?void 0:W.transition)||null)}),$i(()=>{var b,D;(b=i.value)==null||b.style.setProperty("transform",m),(D=i.value)==null||D.style.setProperty("transition",r)})}),{isDragging:x,dragProgress:w,dragStyles:X}}function on(){throw new Error}const eh=["start","end","left","right","top","bottom"],sh=xi({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:n=>eh.includes(n)},sticky:Boolean,...bg(),...jg(),...rg(),...ag({mobile:null}),...dg(),...yg(),...zg(),...fi(cg(),["disableInitialFocus"]),...tg({tag:"nav"}),...og()},"VNavigationDrawer"),lh=ji()({name:"VNavigationDrawer",props:sh(),emits:{"update:modelValue":n=>!0,"update:rail":n=>!0},setup(n,i){let{attrs:g,emit:u,slots:h}=i;const{isRtl:e}=Wi(),{themeClasses:s}=Hi(n),{borderClasses:o}=Ui(n),{backgroundColorClasses:d,backgroundColorStyles:c}=On(()=>n.color),{elevationClasses:z}=sg(n),{displayClasses:t,mobile:x}=Yi(n),{roundedClasses:w}=Ki(n),T=Xi(),V=Mn(n,"modelValue",null,M=>!!M),{ssrBootStyles:J}=Qi(),{scopeId:nn}=Gi(),K=gn(),a=Z(!1),{runOpenDelay:B,runCloseDelay:X}=lg(n,M=>{a.value=M}),m=P(()=>n.rail&&n.expandOnHover&&a.value?Number(n.width):Number(n.rail?n.railWidth:n.width)),r=P(()=>eg(n.location,e.value)),j=fn(()=>n.persistent),f=P(()=>!n.permanent&&(x.value||n.temporary)),b=P(()=>n.sticky&&!f.value&&r.value!=="bottom");Ji(n,{isActive:V,localTop:f,contentEl:K}),xn(()=>n.expandOnHover&&n.rail!=null,()=>{Y(a,M=>u("update:rail",!M))}),xn(()=>!n.disableResizeWatcher,()=>{Y(f,M=>!n.permanent&&tn(()=>V.value=!M))}),xn(()=>!n.disableRouteWatcher&&!!T,()=>{Y(T.currentRoute,()=>f.value&&(V.value=!1))}),Y(()=>n.permanent,M=>{M&&(V.value=!0)}),n.modelValue==null&&!f.value&&(V.value=n.permanent||!x.value);const{isDragging:D,dragProgress:W}=uh({el:K,isActive:V,isTemporary:f,width:m,touchless:fn(()=>n.touchless),position:r}),hn=P(()=>{const M=f.value?0:n.rail&&n.expandOnHover?Number(n.railWidth):m.value;return D.value?M*W.value:M}),{layoutItemStyles:A,layoutItemScrimStyles:un}=ng({id:n.name,order:P(()=>parseInt(n.order,10)),position:r,layoutSize:hn,elementSize:m,active:ug(V),disableTransitions:fn(()=>D.value),absolute:P(()=>n.absolute||b.value&&typeof en.value!="string")}),{isStuck:en,stickyStyles:C}=Jg({rootEl:K,isSticky:b,layoutItemStyles:A}),rn=On(()=>typeof n.scrim=="string"?n.scrim:null),Sn=P(()=>({...D.value?{opacity:W.value*.2,transition:"none"}:void 0,...un.value}));return ig({VList:{bgColor:"transparent"}}),bi(()=>{const M=h.image||n.image;return N(an,null,[v(n.tag,$({ref:K,onMouseenter:B,onMouseleave:X,class:["v-navigation-drawer",`v-navigation-drawer--${r.value}`,{"v-navigation-drawer--expand-on-hover":n.expandOnHover,"v-navigation-drawer--floating":n.floating,"v-navigation-drawer--is-hovering":a.value,"v-navigation-drawer--rail":n.rail,"v-navigation-drawer--temporary":f.value,"v-navigation-drawer--persistent":j.value,"v-navigation-drawer--active":V.value,"v-navigation-drawer--sticky":b.value},s.value,d.value,o.value,t.value,z.value,w.value,n.class],style:[c.value,A.value,J.value,C.value,n.style],inert:!V.value},nn,g),{default:()=>{var jn,Q,sn;return[M&&N("div",{key:"image",class:"v-navigation-drawer__img"},[h.image?v(mi,{key:"image-defaults",disabled:!n.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:n.image}}},h.image):v(gg,{key:"image-img",alt:"",cover:!0,height:"inherit",src:n.image},null)]),h.prepend&&N("div",{class:"v-navigation-drawer__prepend"},[(jn=h.prepend)==null?void 0:jn.call(h)]),N("div",{class:"v-navigation-drawer__content"},[(Q=h.default)==null?void 0:Q.call(h)]),h.append&&N("div",{class:"v-navigation-drawer__append"},[(sn=h.append)==null?void 0:sn.call(h)])]}}),v(hg,{name:"fade-transition"},{default:()=>[f.value&&(D.value||V.value)&&!!n.scrim&&N("div",$({class:["v-navigation-drawer__scrim",rn.backgroundColorClasses.value],style:[Sn.value,rn.backgroundColorStyles.value],onClick:()=>{j.value||(V.value=!1)}},nn),null)]})])}),{isStuck:en}}}),oh=xg({name:"MessageLog",setup(){const n=gn(!1),i=gn([]),g={success:"mdi-check-circle",error:"mdi-alert-circle",warning:"mdi-alert",info:"mdi-information"},u={success:"success",error:"error",warning:"warning",info:"primary"};return Cn.onLog(h=>{h&&(i.value=h)}),{drawer:n,messages:i,icons:g,colors:u,deleteMessage:h=>Cn.deleteMessage(h),clearMessages:()=>Cn.clearMessages()}}}),th={class:"text-caption text-grey"};function ch(n,i,g,u,h,e){return n.drawer?(cn(),mn(lh,{key:0,modelValue:n.drawer,"onUpdate:modelValue":i[0]||(i[0]=s=>n.drawer=s),location:"right",temporary:"",width:"400"},{default:L(()=>[v(Ag,{color:"primary"},{default:L(()=>[v(Zg,null,{default:L(()=>[...i[1]||(i[1]=[yn("消息记录",-1)])]),_:1})]),_:1}),v(wi,null,{default:L(()=>[(cn(!0),fg(an,null,wg(n.messages,s=>(cn(),mn(qn,{key:s.id,rounded:""},{prepend:L(()=>[v(pn,{color:n.colors[s.type],icon:n.icons[s.type],size:"20"},null,8,["color","icon"])]),default:L(()=>[v(Wn,null,{default:L(()=>[yn(Dn(s.title),1)]),_:2},1024),s.content?(cn(),mn(qg,{key:0},{default:L(()=>[yn(Dn(s.content),1)]),_:2},1024)):In("",!0),N("span",th,Dn(new Date(s.timestamp).toLocaleTimeString()),1)]),_:2},1024))),128)),n.messages.length?In("",!0):(cn(),mn(qn,{key:0},{prepend:L(()=>[v(pn,{color:"grey",icon:"mdi-inbox"})]),default:L(()=>[v(Wn,{class:"text-grey"},{default:L(()=>[...i[2]||(i[2]=[yn("暂无消息",-1)])]),_:1})]),_:1}))]),_:1})]),_:1},8,["modelValue"])):In("",!0)}const zu=mg(oh,[["render",ch]]),zh=/^[\uD800-\uDBFF]$/,yh=/^[\uDC00-\uDFFF]$/,dh=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;var Gn;(function(n){n[n.Unknown=1e-13]="Unknown",n[n.Rule=1e-12]="Rule",n[n.DICT=2e-8]="DICT",n[n.Surname=1]="Surname",n[n.Custom=1]="Custom"})(Gn||(Gn={}));const R={Normal:1,Surname:10,Custom:100};function O(n){var i;return n.length-(((i=n.match(dh))===null||i===void 0?void 0:i.length)||0)}function En(n){const i=[];let g=0;for(;g1)return this.StringDICT.get(i);{const g=i.charCodeAt(0);return this.NumberDICT[g]}}set(i,g){if(i.length>1)this.StringDICT.set(i,g);else{const u=i.charCodeAt(0);this.NumberDICT[u]=g}}clear(){this.NumberDICT=[],this.StringDICT.clear()}}const Jn={"bǎng páng pāng":["膀"],líng:["〇","伶","凌","刢","囹","坽","夌","姈","婈","孁","岺","彾","掕","昤","朎","柃","棂","櫺","欞","泠","淩","澪","灵","燯","爧","狑","玲","琌","瓴","皊","砱","祾","秢","竛","笭","紷","綾","绫","羐","羚","翎","聆","舲","苓","菱","蓤","蔆","蕶","蛉","衑","裬","詅","跉","軨","輘","酃","醽","鈴","錂","铃","閝","陵","零","霊","霗","霛","霝","靈","駖","魿","鯪","鲮","鴒","鸰","鹷","麢","齡","齢","龄","龗","㥄"],yī:["一","乊","伊","依","医","吚","咿","噫","壱","壹","夁","嫛","嬄","弌","揖","撎","檹","毉","洢","渏","漪","瑿","畩","祎","禕","稦","繄","蛜","衤","譩","辷","郼","醫","銥","铱","鷖","鹥","黟","黳"],"dīng zhēng":["丁"],"kǎo qiǎo yú":["丂"],qī:["七","倛","僛","凄","嘁","墄","娸","悽","慼","慽","戚","捿","柒","桤","桼","棲","榿","欺","沏","淒","漆","紪","緀","萋","褄","諆","迉","郪","鏚","霋","魌","鶈"],shàng:["丄","尙","尚","恦","緔","绱"],xià:["丅","下","乤","圷","夏","夓","懗","梺","疜","睱","罅","鎼","鏬"],hǎn:["丆","喊","浫","罕","豃","㘎"],"wàn mò":["万"],zhàng:["丈","仗","墇","嶂","帐","帳","幛","扙","杖","涱","痮","瘬","瘴","瞕","粀","胀","脹","賬","账","障"],sān:["三","厁","叁","弎","毵","毶","毿","犙","鬖"],"shàng shǎng shang":["上"],"qí jī":["丌","其","奇"],"bù fǒu":["不"],"yǔ yù yú":["与"],miǎn:["丏","偭","免","冕","勉","勔","喕","娩","愐","汅","沔","湎","睌","緬","缅","腼","葂","靦","鮸","𩾃"],gài:["丐","乢","匃","匄","戤","概","槩","槪","溉","漑","瓂","葢","鈣","钙","𬮿"],chǒu:["丑","丒","侴","吜","杽","瞅","矁","醜","魗"],zhuān:["专","叀","嫥","専","專","瑼","甎","砖","磗","磚","蟤","諯","鄟","顓","颛","鱄","䏝"],"qiě jū":["且"],pī:["丕","伓","伾","噼","坯","岯","憵","批","披","炋","狉","狓","砒","磇","礔","礕","秛","秠","耚","豾","邳","鈚","鉟","銔","錃","錍","霹","駓","髬","魾","𬳵"],shì:["世","丗","亊","事","仕","侍","冟","势","勢","卋","呩","嗜","噬","士","奭","嬕","室","市","式","弑","弒","恀","恃","戺","拭","揓","是","昰","枾","柿","栻","澨","烒","煶","眂","眎","眡","睗","示","礻","筮","簭","舐","舓","襫","視","视","觢","試","誓","諡","謚","试","谥","貰","贳","軾","轼","逝","遾","釈","释","釋","鈰","鉃","鉽","铈","飾","餙","餝","饰","鰘","䏡","𬤊"],qiū:["丘","丠","坵","媝","恘","恷","楸","秋","秌","穐","篍","緧","萩","蘒","蚯","蝵","蟗","蠤","趥","邱","鞦","鞧","鰌","鰍","鳅","鶖","鹙","龝"],bǐng:["丙","屛","怲","抦","昞","昺","柄","棅","炳","禀","秉","稟","苪","蛃","邴","鈵","陃","鞆","餅","餠","饼"],yè:["业","亱","僷","墷","夜","嶪","嶫","抴","捙","擛","擪","擫","晔","曄","曅","曗","曳","曵","枼","枽","業","洂","液","澲","烨","燁","爗","璍","皣","瞱","瞸","礏","腋","葉","謁","谒","邺","鄴","鍱","鐷","靥","靨","頁","页","餣","饁","馌","驜","鵺","鸈"],cóng:["丛","从","叢","婃","孮","従","徔","徖","悰","樷","欉","淙","灇","爜","琮","藂","誴","賨","賩","錝"],dōng:["东","倲","冬","咚","埬","岽","崬","徚","昸","東","氡","氭","涷","笗","苳","菄","蝀","鮗","鯟","鶇","鶫","鸫","鼕","𬟽"],sī:["丝","俬","凘","厮","司","咝","嘶","噝","媤","廝","恖","撕","斯","楒","泀","澌","燍","禗","禠","私","糹","絲","緦","纟","缌","罳","蕬","虒","蛳","蜤","螄","蟖","蟴","鉰","銯","鍶","鐁","锶","颸","飔","騦","鷥","鸶","鼶","㟃"],chéng:["丞","呈","城","埕","堘","塍","塖","宬","峸","惩","懲","成","承","挰","掁","揨","枨","棖","橙","檙","洆","溗","澂","珵","珹","畻","程","窚","筬","絾","脭","荿","誠","诚","郕","酲","鋮","铖","騬","鯎"],diū:["丟","丢","銩","铥"],liǎng:["両","两","兩","唡","啢","掚","緉","脼","蜽","裲","魉","魎","𬜯"],yǒu:["丣","卣","友","梄","湵","牖","禉","羑","聈","苃","莠","蜏","酉","銪","铕","黝"],yán:["严","厳","啱","喦","嚴","塩","壛","壧","妍","姸","娫","娮","岩","嵒","嵓","巌","巖","巗","延","揅","昖","楌","檐","櫩","欕","沿","炎","炏","狿","琂","盐","碞","筵","簷","莚","蔅","虤","蜒","言","訁","訮","詽","讠","郔","閆","閻","闫","阎","顏","顔","颜","鹽","麣","𫄧"],bìng:["並","併","倂","傡","垪","摒","栤","病","窉","竝","誁","靐","鮩"],"sàng sāng":["丧"],gǔn:["丨","惃","滚","滾","磙","緄","绲","蓘","蔉","衮","袞","輥","辊","鮌","鯀","鲧"],jiū:["丩","勼","啾","揪","揫","朻","究","糾","纠","萛","赳","阄","鬏","鬮","鳩","鸠"],"gè gě":["个","個","各"],yā:["丫","圧","孲","庘","押","枒","桠","椏","錏","鐚","鴉","鴨","鵶","鸦","鸭"],pán:["丬","媻","幋","槃","洀","瀊","爿","盘","盤","磐","縏","蒰","蟠","蹒","蹣","鎜","鞶"],"zhōng zhòng":["中"],jǐ:["丮","妀","己","戟","挤","掎","撠","擠","橶","泲","犱","脊","虮","蟣","魢","鱾","麂"],jiè:["丯","介","借","唶","堺","屆","届","岕","庎","徣","戒","楐","犗","玠","琾","界","畍","疥","砎","蚧","蛶","衸","褯","誡","诫","鎅","骱","魪"],fēng:["丰","仹","偑","僼","凨","凬","凮","妦","寷","封","峯","峰","崶","枫","楓","檒","沣","沨","渢","灃","烽","犎","猦","琒","疯","瘋","盽","砜","碸","篈","蘴","蜂","蠭","豐","鄷","酆","鋒","鎽","鏠","锋","霻","靊","飌","麷"],"guàn kuàng":["丱"],chuàn:["串","汌","玔","賗","釧","钏"],chǎn:["丳","产","冁","剷","囅","嵼","旵","浐","滻","灛","產","産","簅","蒇","蕆","諂","譂","讇","谄","鏟","铲","閳","闡","阐","骣","𬊤"],lín:["临","冧","壣","崊","嶙","斴","晽","暽","林","潾","瀶","燐","琳","璘","瞵","碄","磷","粦","粼","繗","翷","臨","轔","辚","遴","邻","鄰","鏻","阾","隣","霖","驎","鱗","鳞","麐","麟","𬴊","𬭸"],zhuó:["丵","劅","卓","啄","圴","妰","娺","撯","擆","擢","斫","斮","斱","斲","斵","晫","椓","浊","浞","濁","灼","烵","琸","硺","禚","窡","籗","籱","罬","茁","蠗","蠿","諁","諑","謶","诼","酌","鐲","镯","鵫","鷟","䓬","𬸦"],zhǔ:["丶","主","劯","嘱","囑","宔","帾","拄","渚","濐","煑","煮","燝","瞩","矚","罜","詝","陼","鸀","麈","𬣞"],bā:["丷","仈","八","叭","哵","夿","岜","巴","捌","朳","玐","疤","笆","粑","羓","芭","蚆","豝","釟"],wán:["丸","刓","完","岏","抏","捖","汍","烷","玩","琓","笂","紈","纨","翫","芄","貦","頑","顽"],dān:["丹","勯","匰","単","妉","媅","殚","殫","甔","眈","砃","箪","簞","耼","耽","聃","聸","褝","襌","躭","郸","鄲","酖","頕"],"wèi wéi":["为"],"jǐng dǎn":["丼"],"lì lí":["丽"],jǔ:["举","弆","挙","擧","椇","榉","榘","櫸","欅","矩","筥","聥","舉","莒","蒟","襷","踽","齟","龃"],piě:["丿","苤","鐅","𬭯"],fú:["乀","伏","俘","凫","刜","匐","咈","哹","垘","孚","岪","巿","帗","幅","幞","弗","彿","怫","扶","柫","栿","桴","氟","泭","浮","涪","澓","炥","玸","甶","畉","癁","祓","福","稪","符","箙","紱","紼","絥","綍","绂","绋","罘","罦","翇","艀","芙","芣","苻","茀","茯","菔","葍","虙","蚨","蜉","蝠","袚","袱","襆","襥","諨","豧","踾","輻","辐","郛","鉘","鉜","韍","韨","颫","髴","鮄","鮲","鳧","鳬","鴔","鵩","黻"],"yí jí":["乁"],yì:["乂","义","亄","亦","亿","伇","伿","佾","俋","億","兿","刈","劓","劮","勚","勩","匇","呓","呭","呹","唈","囈","圛","坄","垼","埸","奕","嫕","嬑","寱","屹","峄","嶧","帟","帠","幆","廙","异","弈","弋","役","忆","怈","怿","悒","意","憶","懌","懿","抑","挹","敡","易","晹","曀","曎","杙","枍","棭","榏","槸","檍","歝","殔","殪","殹","毅","浂","浥","浳","湙","溢","潩","澺","瀷","炈","焲","熠","熤","熼","燚","燡","燱","獈","玴","異","疫","痬","瘗","瘞","瘱","癔","益","瞖","穓","竩","篒","縊","繶","繹","绎","缢","義","羿","翊","翌","翳","翼","耴","肄","肊","膉","臆","艗","艺","芅","苅","萟","蓺","薏","藙","藝","蘙","虉","蜴","螠","衪","袣","裔","裛","褹","襼","訲","訳","詍","詣","誼","譯","議","讛","议","译","诣","谊","豙","豛","豷","貖","贀","跇","轶","逸","邑","鄓","醷","釴","鈠","鎰","鐿","镒","镱","阣","隿","霬","饐","駅","驛","驿","骮","鮨","鶂","鶃","鶍","鷁","鷊","鷧","鷾","鸃","鹝","鹢","黓","齸","𬬩","㑊","𫄷","𬟁"],nǎi:["乃","倷","奶","嬭","廼","氖","疓","艿","迺","釢"],wǔ:["乄","五","仵","伍","侮","倵","儛","午","啎","妩","娬","嫵","庑","廡","忤","怃","憮","摀","武","潕","熓","牾","玝","珷","瑦","甒","碔","舞","躌","迕","逜","陚","鵡","鹉","𣲘"],jiǔ:["久","乆","九","乣","奺","杦","汣","灸","玖","紤","舏","酒","镹","韭","韮"],"tuō zhé":["乇","杔","馲"],"me mó ma yāo":["么"],zhī:["之","倁","卮","巵","搘","支","栀","梔","椥","榰","汁","泜","疷","祗","祬","秓","稙","綕","肢","胑","胝","脂","芝","蘵","蜘","衼","隻","鳷","鴲","鼅","𦭜"],"wū wù":["乌"],zhà:["乍","咤","宱","搾","榨","溠","痄","蚱","詐","诈","醡","霅","䃎"],hū:["乎","乯","匢","匫","呼","唿","嘑","垀","寣","幠","忽","惚","昒","歑","泘","淴","滹","烀","苸","虍","虖","謼","軤","轷","雐"],fá:["乏","伐","傠","坺","垡","墢","姂","栰","浌","瞂","笩","筏","罚","罰","罸","藅","閥","阀"],"lè yuè yào lào":["乐","樂"],yín:["乑","吟","噖","嚚","圁","垠","夤","婬","寅","峾","崟","崯","檭","殥","泿","淫","滛","烎","犾","狺","璌","硍","碒","荶","蔩","訔","訚","訡","誾","鄞","鈝","銀","银","霪","鷣","齦"],pīng:["乒","俜","娉","涄","甹","砯","聠","艵","頩"],pāng:["乓","滂","胮","膖","雱","霶"],qiáo:["乔","侨","僑","嫶","憔","桥","槗","樵","橋","櫵","犞","瞧","硚","礄","荍","荞","蕎","藮","譙","趫","鐈","鞒","鞽","顦"],hǔ:["乕","琥","萀","虎","虝","錿","鯱"],guāi:["乖"],"chéng shèng":["乗","乘","娍"],yǐ:["乙","乛","以","倚","偯","嬟","崺","已","庡","扆","攺","敼","旑","旖","檥","矣","礒","笖","舣","艤","苡","苢","蚁","螘","蟻","裿","踦","輢","轙","逘","酏","釔","鈘","鉯","钇","顗","鳦","齮","𫖮","𬺈"],"háo yǐ":["乚"],"niè miē":["乜"],qǐ:["乞","企","启","唘","啓","啔","啟","婍","屺","杞","棨","玘","盀","綺","绮","芑","諬","起","邔","闙"],yě:["也","冶","嘢","埜","壄","漜","野"],xí:["习","喺","媳","嶍","席","椺","檄","漝","習","蓆","袭","襲","覡","觋","謵","趘","郋","鎴","隰","霫","飁","騱","騽","驨","鰼","鳛","𠅤","𫘬"],xiāng:["乡","厢","廂","忀","楿","欀","湘","瓖","稥","箱","緗","缃","膷","芗","萫","葙","薌","襄","郷","鄉","鄊","鄕","鑲","镶","香","驤","骧","鱜","麘","𬙋"],shū:["书","倏","倐","儵","叔","姝","尗","抒","掓","摅","攄","書","枢","梳","樞","殊","殳","毹","毺","淑","瀭","焂","疎","疏","紓","綀","纾","舒","菽","蔬","踈","軗","輸","输","鄃","陎","鮛","鵨"],dǒu:["乧","抖","枓","蚪","鈄","阧","陡"],shǐ:["乨","使","兘","史","始","宩","屎","榁","矢","笶","豕","鉂","駛","驶"],jī:["乩","僟","击","刉","刏","剞","叽","唧","喞","嗘","嘰","圾","基","墼","姬","屐","嵆","嵇","撃","擊","朞","机","枅","樭","機","毄","激","犄","玑","璣","畸","畿","癪","矶","磯","积","積","笄","筓","箕","簊","緁","羁","羇","羈","耭","肌","芨","虀","覉","覊","譏","譤","讥","賫","賷","赍","跻","踑","躋","躸","銈","錤","鐖","鑇","鑙","隮","雞","鞿","韲","飢","饑","饥","魕","鳮","鶏","鶺","鷄","鸄","鸡","齎","齏","齑","𬯀","𫓯","𫓹","𫌀"],náng:["乪","嚢","欜","蠰","饢"],jiā:["乫","佳","傢","加","嘉","抸","枷","梜","毠","泇","浃","浹","犌","猳","珈","痂","笳","糘","耞","腵","葭","袈","豭","貑","跏","迦","鉫","鎵","镓","鴐","麚","𬂩"],jù:["乬","倨","倶","具","剧","劇","勮","埧","埾","壉","姖","屦","屨","岠","巨","巪","怇","惧","愳","懅","懼","拒","拠","昛","歫","洰","澽","炬","烥","犋","秬","窭","窶","簴","粔","耟","聚","虡","蚷","詎","讵","豦","距","踞","躆","遽","邭","醵","鉅","鐻","钜","颶","飓","駏","鮔"],shí:["乭","十","埘","塒","姼","实","実","寔","實","峕","嵵","时","旹","時","榯","湜","溡","炻","祏","竍","蚀","蝕","辻","遈","鉐","飠","饣","鮖","鰣","鲥","鼫","鼭"],mǎo:["乮","冇","卯","峁","戼","昴","泖","笷","蓩","鉚","铆"],mǎi:["买","嘪","荬","蕒","買","鷶"],luàn:["乱","亂","釠"],rǔ:["乳","擩","汝","肗","辱","鄏"],xué:["乴","学","學","峃","嶨","斈","泶","澩","燢","穴","茓","袕","踅","鷽","鸴"],yǎn:["䶮","乵","俨","偃","儼","兖","兗","厣","厴","噞","孍","嵃","巘","巚","弇","愝","戭","扊","抁","掩","揜","曮","椼","檿","沇","渷","演","琰","甗","眼","罨","萒","蝘","衍","褗","躽","遃","郾","隒","顩","魇","魘","鰋","鶠","黡","黤","黬","黭","黶","鼴","鼹","齴","龑","𬸘","𬙂","𪩘"],fǔ:["乶","俌","俛","俯","府","弣","抚","拊","撫","斧","椨","滏","焤","甫","盙","簠","腐","腑","蜅","輔","辅","郙","釜","釡","阝","頫","鬴","黼","㕮","𫖯"],shā:["乷","唦","杀","桬","殺","毮","猀","痧","砂","硰","紗","繺","纱","蔱","裟","鎩","铩","閷","髿","魦","鯊","鯋","鲨"],nǎ:["乸","雫"],qián:["乹","亁","仱","偂","前","墘","媊","岒","拑","掮","榩","橬","歬","潛","潜","濳","灊","箝","葥","虔","軡","鈐","鉗","銭","錢","鎆","钤","钱","钳","靬","騚","騝","鰬","黔","黚"],suǒ:["乺","唢","嗩","所","暛","溑","溹","琐","琑","瑣","索","褨","鎖","鎻","鏁","锁"],yú:["乻","于","亐","伃","余","堣","堬","妤","娛","娯","娱","嬩","崳","嵎","嵛","愚","扵","揄","旟","楡","楰","榆","欤","歈","歟","歶","渔","渝","湡","漁","澞","牏","狳","玗","玙","瑜","璵","盂","睮","窬","竽","籅","羭","腴","臾","舁","舆","艅","茰","萮","萸","蕍","蘛","虞","虶","蝓","螸","衧","褕","覦","觎","諛","謣","谀","踰","輿","轝","逾","邘","酑","鍝","隅","雓","雩","餘","馀","騟","骬","髃","魚","魣","鮽","鯲","鰅","鱼","鷠","鸆","齵"],zhù:["乼","伫","佇","住","坾","墸","壴","嵀","拀","杼","柱","樦","殶","注","炷","疰","眝","祝","祩","竚","筯","箸","篫","簗","紵","紸","纻","羜","翥","苎","莇","蛀","註","貯","贮","跓","軴","鉒","鋳","鑄","铸","馵","駐","驻"],zhě:["乽","者","褶","襵","赭","踷","鍺","锗"],"qián gān":["乾"],"zhì luàn":["乿"],guī:["亀","圭","妫","媯","嫢","嬀","帰","归","摫","椝","槻","槼","櫷","歸","珪","瑰","璝","瓌","皈","瞡","硅","茥","蘬","規","规","邽","郌","閨","闺","騩","鬶","鬹"],"lǐn lìn":["亃"],jué:["亅","决","刔","劂","匷","厥","噊","孒","孓","崛","崫","嶥","彏","憠","憰","戄","抉","挗","掘","攫","桷","橛","橜","欮","氒","決","灍","焳","熦","爑","爴","爵","獗","玃","玦","玨","珏","瑴","瘚","矍","矡","砄","絕","絶","绝","臄","芵","蕝","蕨","虳","蟨","蟩","觖","觮","觼","訣","譎","诀","谲","貜","赽","趉","蹷","躩","鈌","鐍","鐝","钁","镢","鴂","鴃","鷢","𫘝","㵐","𫔎"],"le liǎo":["了"],"gè mā":["亇"],"yǔ yú":["予","懙"],zhēng:["争","佂","凧","姃","媜","峥","崝","崢","征","徰","炡","烝","爭","狰","猙","癥","眐","睁","睜","筝","箏","篜","聇","脀","蒸","踭","鉦","錚","鏳","鬇"],èr:["二","刵","咡","弍","弐","樲","誀","貮","貳","贰","髶"],chù:["亍","傗","儊","怵","憷","搐","斶","歜","珿","琡","矗","竌","絀","绌","臅","触","觸","豖","鄐","閦","黜"],kuī:["亏","刲","岿","巋","盔","窥","窺","聧","虧","闚","顝"],yún:["云","伝","勻","匀","囩","妘","愪","抣","昀","橒","沄","涢","溳","澐","熉","畇","秐","筼","篔","紜","縜","纭","耘","芸","蒷","蕓","郧","鄖","鋆","雲"],hù:["互","冱","嗀","嚛","婟","嫭","嫮","岵","帍","弖","怙","戶","户","戸","戽","扈","护","昈","槴","沍","沪","滬","熩","瓠","祜","笏","簄","粐","綔","蔰","護","豰","鄠","鍙","頀","鱯","鳠","鳸","鸌","鹱"],qí:["亓","剘","埼","岐","岓","崎","嵜","愭","掑","斉","斊","旂","旗","棊","棋","檱","櫀","歧","淇","濝","猉","玂","琦","琪","璂","畦","疧","碁","碕","祁","祈","祺","禥","竒","簯","簱","籏","粸","綥","綦","肵","脐","臍","艩","芪","萁","萕","蕲","藄","蘄","蚑","蚚","蛴","蜝","蜞","螧","蠐","褀","軝","鄿","釮","錡","锜","陭","頎","颀","騎","騏","騹","骐","骑","鬐","鬿","鯕","鰭","鲯","鳍","鵸","鶀","麒","麡","𨙸","𬨂","䓫"],jǐng:["井","儆","刭","剄","坓","宑","幜","憬","暻","殌","汫","汬","澋","璄","璟","璥","穽","肼","蟼","警","阱","頚","頸"],sì:["亖","佀","価","儩","兕","嗣","四","姒","娰","孠","寺","巳","柶","榹","汜","泗","泤","洍","洠","涘","瀃","牭","祀","禩","竢","笥","耜","肂","肆","蕼","覗","貄","釲","鈶","鈻","飤","飼","饲","駟","騃","驷"],suì:["亗","嬘","岁","嵗","旞","檖","歲","歳","澻","煫","燧","璲","砕","碎","祟","禭","穂","穗","穟","繀","繐","繸","襚","誶","譢","谇","賥","邃","鐆","鐩","隧","韢","𫟦","𬭼"],gèn:["亘","亙","揯","搄","茛"],yà:["亚","亜","俹","冴","劜","圔","圠","埡","娅","婭","揠","氩","氬","犽","砑","稏","聐","襾","覀","訝","讶","迓","齾"],"xiē suò":["些"],"qí zhāi":["亝","齊"],"yā yà":["亞","压","垭","壓","铔"],"jí qì":["亟","焏"],tóu:["亠","投","頭","骰"],"wáng wú":["亡"],"kàng háng gāng":["亢"],dà:["亣","眔"],jiāo:["交","僬","娇","嬌","峧","嶕","嶣","憍","椒","浇","澆","焦","礁","穚","簥","胶","膠","膲","茭","茮","蕉","虠","蛟","蟭","跤","轇","郊","鐎","驕","骄","鮫","鲛","鵁","鷦","鷮","鹪","䴔"],hài:["亥","嗐","害","氦","餀","饚","駭","駴","骇"],"hēng pēng":["亨"],mǔ:["亩","姆","峔","拇","母","牡","牳","畂","畆","畒","畝","畞","畮","砪","胟","踇","鉧","𬭁","𧿹"],ye:["亪"],xiǎng:["享","亯","响","想","晑","蚃","蠁","響","飨","餉","饗","饷","鮝","鯗","鱶","鲞"],jīng:["京","亰","兢","坕","坙","婛","惊","旌","旍","晶","橸","泾","涇","猄","睛","秔","稉","粳","精","経","經","綡","聙","腈","茎","荆","荊","菁","葏","驚","鯨","鲸","鶁","鶄","麖","麠","鼱","䴖"],tíng:["亭","停","婷","嵉","庭","廷","楟","榳","筳","聤","莛","葶","蜓","蝏","諪","邒","霆","鼮","䗴"],liàng:["亮","喨","悢","晾","湸","諒","谅","輌","輛","辆","鍄"],"qīn qìng":["亲","親"],bó:["亳","仢","侼","僰","博","帛","愽","懪","挬","搏","欂","浡","淿","渤","煿","牔","狛","瓝","礴","秡","箔","簙","糪","胉","脖","膊","舶","艊","萡","葧","袯","襏","襮","謈","踣","郣","鈸","鉑","鋍","鎛","鑮","钹","铂","镈","餺","馎","馛","馞","駁","駮","驳","髆","鵓","鹁"],yòu:["亴","佑","佦","侑","又","右","哊","唀","囿","姷","宥","峟","幼","狖","祐","蚴","誘","诱","貁","迶","酭","釉","鼬"],xiè:["亵","伳","偞","偰","僁","卨","卸","噧","塮","夑","媟","屑","屧","廨","徢","懈","暬","械","榍","榭","泻","洩","渫","澥","瀉","瀣","灺","炧","炨","燮","爕","獬","祄","禼","糏","紲","絏","絬","繲","纈","绁","缷","薢","薤","蟹","蠏","褉","褻","謝","谢","躞","邂","靾","韰","齂","齘","齛","齥","𬹼","𤫉"],"dǎn dàn":["亶","馾"],lián:["亷","劆","匲","匳","嗹","噒","奁","奩","嫾","帘","廉","怜","憐","涟","漣","濂","濓","瀮","熑","燫","簾","籢","籨","縺","翴","联","聨","聫","聮","聯","臁","莲","蓮","薕","螊","蠊","裢","褳","覝","謰","蹥","连","連","鎌","鐮","镰","鬑","鰱","鲢"],duǒ:["亸","哚","嚲","埵","崜","朵","朶","綞","缍","趓","躱","躲","軃"],"wěi mén":["亹","斖"],rén:["人","亻","仁","壬","忈","忎","朲","秂","芢","魜","鵀"],jí:["亼","亽","伋","佶","偮","卙","即","卽","及","叝","吉","堲","塉","姞","嫉","岌","嵴","嶯","彶","忣","急","愱","戢","揤","极","棘","楫","極","槉","檝","殛","汲","湒","潗","疾","瘠","皍","笈","箿","籍","級","级","膌","艥","蒺","蕀","蕺","蝍","螏","襋","觙","谻","踖","蹐","躤","輯","轚","辑","郆","銡","鍓","鏶","集","雧","霵","鹡","㴔"],wáng:["亾","仼","兦","莣","蚟"],"shén shí":["什"],lè:["仂","叻","忇","氻","泐","玏","砳","簕","艻","阞","韷","餎","鰳","鱳","鳓"],dīng:["仃","叮","帄","玎","疔","盯","耵","虰","靪"],zè:["仄","崱","庂","捑","昃","昗","汄"],"jǐn jìn":["仅","僅","嫤"],"pú pū":["仆"],"chóu qiú":["仇"],zhǎng:["仉","幥","掌","礃"],jīn:["今","堻","巾","惍","斤","津","珒","琻","璡","砛","筋","荕","衿","襟","觔","金","釒","釿","钅","鹶","黅","𬬱"],bīng:["仌","仒","兵","冫","冰","掤","氷","鋲"],réng:["仍","礽","芿","辸","陾"],fó:["仏","坲","梻"],"jīn sǎn":["仐"],lún:["仑","伦","侖","倫","囵","圇","婨","崘","崙","棆","沦","淪","磮","腀","菕","蜦","踚","輪","轮","錀","陯","鯩","𬬭"],cāng:["仓","仺","倉","凔","嵢","沧","滄","濸","獊","舱","艙","苍","蒼","螥","鸧"],"zǎi zǐ zī":["仔"],tā:["他","塌","它","榙","溻","牠","祂","褟","趿","遢","闧"],fù:["付","偩","傅","冨","副","咐","坿","复","妇","婦","媍","嬔","富","復","椱","祔","禣","竎","緮","縛","缚","腹","萯","蕧","蚹","蛗","蝜","蝮","袝","複","覄","覆","訃","詂","讣","負","賦","賻","负","赋","赙","赴","輹","鍑","鍢","阜","附","馥","駙","驸","鮒","鰒","鲋","鳆","㳇"],xiān:["仙","仚","佡","僊","僲","先","嘕","奾","屳","廯","忺","憸","掀","暹","杴","氙","珗","祆","秈","籼","繊","纎","纖","苮","褼","襳","跹","蹮","躚","酰","鍁","锨","韯","韱","馦","鱻","鶱","𬸣"],"tuō chà duó":["仛"],hóng:["仜","吰","垬","妅","娂","宏","宖","弘","彋","汯","泓","洪","浤","渱","潂","玒","玜","竑","竤","篊","粠","紘","紭","綋","纮","翃","翝","耾","苰","荭","葒","葓","谹","谼","鈜","鉷","鋐","閎","闳","霐","霟","鞃","魟","鴻","鸿","黉","黌","𫟹","𬭎"],tóng:["仝","佟","哃","峂","峝","庝","彤","晍","曈","桐","氃","浵","潼","犝","獞","眮","瞳","砼","秱","童","粡","膧","茼","蚒","詷","赨","酮","鉖","鉵","銅","铜","餇","鮦","鲖","𫍣","𦒍"],rèn:["仞","仭","刃","刄","妊","姙","屻","岃","扨","牣","祍","紉","紝","絍","纫","纴","肕","腍","衽","袵","訒","認","认","讱","軔","轫","鈓","靭","靱","韌","韧","飪","餁","饪"],qiān:["仟","佥","僉","千","圲","奷","孯","岍","悭","愆","慳","扦","拪","搴","撁","攐","攑","攓","杄","櫏","汘","汧","牵","牽","竏","签","簽","籖","籤","粁","芊","茾","蚈","褰","諐","謙","谦","谸","迁","遷","釺","鈆","鉛","鏲","钎","阡","韆","顅","騫","骞","鬜","鬝","鵮","鹐"],"gǎn hàn":["仠"],"yì gē":["仡"],dài:["代","侢","叇","垈","埭","岱","帒","带","帯","帶","廗","怠","戴","曃","柋","殆","瀻","玳","瑇","甙","簤","紿","緿","绐","艜","蝳","袋","襶","貣","贷","蹛","軑","軚","軩","轪","迨","霴","靆","鴏","黛","黱"],"lìng líng lǐng":["令"],chào:["仦","耖","觘"],"cháng zhǎng":["仧","兏","長","长"],sā:["仨"],cháng:["仩","偿","償","嘗","嚐","嫦","尝","常","徜","瑺","瓺","甞","肠","腸","膓","苌","萇","镸","鱨","鲿"],yí:["仪","侇","儀","冝","匜","咦","圯","夷","姨","宐","宜","宧","寲","峓","嶬","嶷","巸","彛","彜","彝","彞","怡","恞","扅","暆","栘","椬","椸","沂","洟","熪","瓵","痍","移","簃","籎","羠","胰","萓","蛦","螔","觺","謻","貽","贻","跠","迻","遺","鏔","頉","頤","頥","顊","颐","饴","鮧","鴺"],mù:["仫","凩","募","墓","幕","幙","慔","慕","暮","暯","木","楘","毣","沐","炑","牧","狇","目","睦","穆","艒","苜","莯","蚞","鉬","钼","雮","霂"],"men mén":["们"],fǎn:["仮","反","橎","返"],"chào miǎo":["仯"],"yǎng áng":["仰"],zhòng:["仲","众","堹","妕","媑","狆","眾","祌","筗","茽","蚛","衆","衶","諥"],"pǐ pí":["仳"],wò:["仴","偓","卧","媉","幄","握","楃","沃","渥","濣","瓁","瞃","硪","肟","腛","臥","齷","龌"],jiàn:["件","俴","健","僭","剑","剣","剱","劍","劎","劒","劔","墹","寋","建","徤","擶","旔","楗","毽","洊","涧","澗","牮","珔","瞷","磵","礀","箭","糋","繝","腱","臶","舰","艦","荐","薦","覸","諓","諫","譛","谏","賎","賤","贱","趝","践","踐","踺","轞","鉴","鍳","鍵","鐱","鑑","鑒","鑬","鑳","键","間","餞","饯","𬣡"],"jià jiè jie":["价"],"yǎo fó":["仸"],"rèn rén":["任"],"fèn bīn":["份"],dī:["仾","低","啲","埞","堤","岻","彽","樀","滴","磾","秪","羝","袛","趆","隄","鞮","䃅"],fǎng:["仿","倣","旊","昉","昘","瓬","眆","紡","纺","舫","訪","访","髣","鶭"],zhōng:["伀","刣","妐","幒","彸","忠","柊","汷","泈","炂","盅","籦","終","终","舯","蔠","蜙","螤","螽","衳","衷","蹱","鈡","鍾","鐘","钟","锺","鴤","鼨"],pèi:["伂","佩","姵","帔","斾","旆","沛","浿","珮","蓜","轡","辔","配","霈","馷"],diào:["伄","吊","弔","掉","瘹","盄","窎","窵","竨","訋","釣","鈟","銱","鋽","鑃","钓","铞","雿","魡"],dùn:["伅","潡","炖","燉","盾","砘","碷","踲","逇","遁","遯","鈍","钝"],wěn:["伆","刎","吻","呅","抆","桽","稳","穏","穩","紊","肳","脗"],xǐn:["伈"],kàng:["伉","匟","囥","抗","炕","鈧","钪"],ài:["伌","僾","塧","壒","嫒","嬡","愛","懓","暧","曖","爱","瑷","璦","皧","瞹","砹","硋","碍","礙","薆","譺","賹","鑀","隘","靉","餲","馤","鱫","鴱"],"jì qí":["伎","薺"],"xiū xǔ":["休"],"jìn yín":["伒"],dǎn:["伔","刐","撢","玬","瓭","紞","胆","膽","衴","賧","赕","黕","𬘘"],fū:["伕","呋","娐","孵","尃","怤","懯","敷","旉","玞","砆","稃","筟","糐","綒","肤","膚","荂","荴","衭","趺","跗","邞","鄜","酜","鈇","麩","麬","麱","麸","𫓧"],tǎng:["伖","傥","儻","埫","戃","曭","爣","矘","躺","鎲","钂","镋"],yōu:["优","優","呦","嚘","峳","幽","忧","悠","憂","攸","櫌","滺","瀀","纋","羪","耰","逌","鄾","麀"],huǒ:["伙","夥","火","煷","邩","鈥","钬"],"huì kuài":["会","會","浍","璯"],yǔ:["伛","俁","俣","偊","傴","匬","噳","圄","圉","宇","寙","屿","嶼","庾","挧","敔","斞","楀","瑀","瘐","祤","禹","穥","窳","羽","與","萭","貐","鄅","頨","麌","齬","龉","㺄"],cuì:["伜","啛","忰","悴","毳","淬","焠","疩","瘁","竁","粋","粹","紣","綷","翆","翠","脃","脆","脺","膬","膵","臎","萃","襊","顇"],sǎn:["伞","傘","糤","繖","饊","馓"],wěi:["伟","伪","偉","偽","僞","儰","娓","寪","屗","崣","嶉","徫","愇","捤","暐","梶","洧","浘","渨","炜","煒","猥","玮","瑋","痿","緯","纬","腲","艉","芛","苇","荱","萎","葦","蒍","蔿","蜼","諉","诿","踓","鍡","韑","韙","韡","韪","頠","颹","骩","骪","骫","鮪","鲔","𫇭","𬀩","𬱟"],"chuán zhuàn":["传","傳"],"chē jū":["伡","俥","车"],"jū chē":["車"],yá:["伢","厑","厓","堐","岈","崕","崖","涯","漄","牙","玡","琊","睚","笌","芽","蚜","衙","齖"],qiàn:["伣","俔","倩","儙","刋","壍","嬱","悓","棈","椠","槧","欠","歉","皘","篏","篟","縴","芡","蒨","蔳","輤","𬘬"],shāng:["伤","傷","商","墒","慯","殇","殤","滳","漡","熵","蔏","螪","觞","觴","謪","鬺"],chāng:["伥","倀","娼","昌","椙","淐","猖","琩","菖","裮","錩","锠","閶","阊","鯧","鲳","鼚"],"chen cāng":["伧"],xùn:["伨","侚","卂","噀","巺","巽","徇","愻","殉","殾","汛","潠","狥","蕈","訊","訓","訙","训","讯","迅","迿","逊","遜","鑂","顨","馴","驯"],xìn:["伩","囟","孞","脪","舋","衅","訫","釁","阠","顖"],chǐ:["伬","侈","卶","叺","呎","垑","恥","歯","耻","肔","胣","蚇","裭","褫","豉","鉹","齒","齿"],"xián xuán":["伭"],"nú nǔ":["伮"],"bó bǎi":["伯"],"gū gù":["估"],nǐ:["伱","你","儞","孴","拟","擬","旎","晲","狔","苨","薿","隬"],"nì ní":["伲"],bàn:["伴","办","半","姅","怑","扮","瓣","秚","絆","绊","辦","鉡","靽"],xù:["伵","侐","勖","勗","卹","叙","垿","壻","婿","序","恤","敍","敘","旭","昫","朂","槒","欰","殈","汿","沀","洫","溆","漵","潊","烅","烼","煦","獝","珬","盢","瞁","稸","絮","続","緒","緖","續","绪","续","聓","聟","蓄","藚","訹","賉","酗","頊","鱮","㳚"],zhòu:["伷","僽","冑","呪","咒","咮","宙","昼","晝","甃","皱","皺","籀","籒","籕","粙","紂","縐","纣","绉","胄","荮","葤","詋","酎","駎","驟","骤","㤘","㑇"],shēn:["伸","侁","兟","呻","堔","妽","娠","屾","峷","扟","敒","曑","柛","氠","深","燊","珅","甡","甧","申","眒","砷","穼","籶","籸","糂","紳","绅","罙","罧","葠","蓡","蔘","薓","裑","訷","詵","诜","身","駪","鯓","鯵","鰺","鲹","鵢","𬳽"],qū:["伹","佉","匤","呿","坥","屈","岖","岴","嶇","憈","抾","敺","浀","煀","祛","筁","粬","胠","蛆","蛐","袪","覻","詘","诎","趍","躯","軀","阹","駆","駈","驅","驱","髷","魼","鰸","鱋","鶌","麯","麴","麹","黢","㭕","𪨰","䓛"],"sì cì":["伺"],bēng:["伻","嘣","奟","崩","嵭","閍"],"sì shì":["似"],"jiā qié gā":["伽"],"yǐ chì":["佁"],"diàn tián":["佃","钿"],"hān gàn":["佄"],mài:["佅","劢","勱","卖","唛","売","脈","衇","賣","迈","邁","霡","霢","麥","麦","鿏"],dàn:["但","僤","啖","啗","啿","噉","嚪","帎","憺","旦","柦","氮","沊","泹","淡","狚","疍","癚","禫","窞","腅","萏","蓞","蛋","蜑","觛","訑","誕","诞","贉","霮","餤","饏","駳","髧","鴠","𫢸"],bù:["佈","勏","吥","咘","埗","埠","布","廍","怖","悑","步","歨","歩","瓿","篰","荹","蔀","踄","部","郶","鈈","钚","餢"],bǐ:["佊","俾","匕","夶","妣","彼","朼","柀","比","毞","沘","疕","秕","笔","筆","粃","聛","舭","貏","鄙"],"zhāo shào":["佋"],cǐ:["佌","此","泚","皉","𫚖"],wèi:["位","卫","味","喂","墛","媦","慰","懀","未","渭","煟","熭","犚","猬","畏","緭","罻","胃","苿","菋","藯","蘶","蝟","螱","衛","衞","褽","謂","讆","讏","谓","躗","躛","軎","轊","鏏","霨","餧","餵","饖","魏","鮇","鳚"],zuǒ:["佐","左","繓"],yǎng:["佒","傟","养","坱","岟","慃","懩","攁","氧","氱","炴","痒","癢","礢","紻","蝆","軮","養","駚"],"tǐ tī":["体","體"],zhàn:["佔","偡","嶘","战","戦","戰","栈","桟","棧","湛","站","綻","绽","菚","蘸","虥","虦","譧","轏","驏"],"hé hē hè":["何"],bì:["佖","咇","哔","嗶","坒","堛","壁","奰","妼","婢","嬖","币","幣","幤","庇","庳","廦","弊","弻","弼","彃","必","怭","愊","愎","敝","斃","梐","毕","毖","毙","湢","滗","滭","潷","煏","熚","狴","獘","獙","珌","璧","畀","畢","疪","痹","痺","皕","睤","碧","筚","箅","箆","篦","篳","粊","綼","縪","繴","罼","腷","苾","荜","萆","萞","蓖","蓽","蔽","薜","蜌","袐","襅","襞","襣","觱","詖","诐","貱","贔","赑","跸","蹕","躃","躄","避","邲","鄨","鄪","鉍","鏎","鐴","铋","閇","閉","閟","闭","陛","韠","飶","饆","馝","駜","驆","髀","魓","鮅","鷝","鷩","鼊"],tuó:["佗","坨","堶","岮","槖","橐","沱","砣","砤","碢","紽","詑","跎","酡","阤","陀","陁","駝","駞","騨","驒","驝","驼","鮀","鴕","鸵","鼉","鼍","鼧","𬶍"],shé:["佘","舌","虵","蛥"],"yì dié":["佚","昳","泆","軼"],"fó fú bì bó":["佛"],"zuò zuō":["作"],gōu:["佝","沟","溝","痀","篝","簼","緱","缑","袧","褠","鈎","鉤","钩","鞲","韝"],nìng:["佞","侫","倿","寕","泞","澝","濘"],qú:["佢","劬","戵","斪","欋","欔","氍","淭","灈","爠","璖","璩","癯","磲","籧","絇","胊","臞","菃","葋","蕖","蘧","蟝","蠷","蠼","衐","衢","躣","軥","鑺","鴝","鸜","鸲","鼩"],"yōng yòng":["佣"],wǎ:["佤","咓","砙","邷"],kǎ:["佧","垰","胩","裃","鉲"],bāo:["佨","勹","包","孢","煲","笣","胞","苞","蕔","裦","褒","襃","闁","齙","龅"],"huái huí":["佪"],"gé hè":["佫"],lǎo:["佬","咾","恅","栳","狫","珯","硓","老","耂","荖","蛯","轑","銠","铑","鮱"],xiáng:["佭","庠","栙","祥","絴","翔","詳","跭"],gé:["佮","匌","呄","嗝","塥","愅","挌","搿","槅","櫊","滆","膈","臵","茖","觡","諽","輵","轕","閣","阁","隔","鞷","韐","韚","騔","骼","鮯"],yáng:["佯","劷","垟","崸","徉","扬","揚","敭","旸","昜","暘","杨","楊","洋","炀","珜","疡","瘍","眻","蛘","諹","輰","鍚","钖","阦","阳","陽","霷","颺","飏","鰑","鴹","鸉"],bǎi:["佰","捭","摆","擺","栢","百","竡","粨","襬"],fǎ:["佱","峜","法","灋","砝","鍅"],mǐng:["佲","凕","姳","慏","酩"],"èr nài":["佴"],hěn:["佷","很","狠","詪","𬣳"],huó:["佸","活"],guǐ:["佹","匦","匭","厬","垝","姽","宄","庋","庪","恑","晷","湀","癸","祪","簋","蛫","蟡","觤","詭","诡","軌","轨","陒","鬼"],quán:["佺","全","啳","埢","姾","峑","巏","拳","搼","权","楾","権","權","泉","洤","湶","牷","犈","瑔","痊","硂","筌","縓","荃","葲","蜷","蠸","觠","詮","诠","跧","踡","輇","辁","醛","銓","铨","闎","顴","颧","駩","騡","鬈","鰁","鳈","齤"],tiāo:["佻","庣","旫","祧","聎"],jiǎo:["佼","儌","孂","挢","搅","撟","撹","攪","敫","敽","敿","晈","暞","曒","灚","燞","狡","璬","皎","皦","絞","纐","绞","腳","臫","蟜","譑","賋","踋","鉸","铰","餃","饺","鱎","龣"],cì:["佽","刾","庛","朿","栨","次","絘","茦","莿","蛓","螆","賜","赐"],xíng:["侀","刑","哘","型","娙","形","洐","硎","蛵","邢","郉","鈃","鉶","銒","钘","铏","陉","陘","餳","𫰛"],tuō:["侂","咃","咜","圫","托","拕","拖","汑","脫","脱","莌","袥","託","讬","飥","饦","魠","鮵"],kǎn:["侃","偘","冚","坎","惂","砍","莰","輡","轗","顑"],zhí:["侄","値","值","埴","執","姪","嬂","戠","执","摭","植","樴","淔","漐","直","禃","絷","縶","聀","职","職","膱","蟙","跖","踯","蹠","躑","軄","釞","馽"],gāi:["侅","垓","姟","峐","晐","畡","祴","荄","該","该","豥","賅","賌","赅","陔"],lái:["來","俫","倈","崃","崍","庲","来","梾","棶","涞","淶","猍","琜","筙","箂","莱","萊","逨","郲","錸","铼","騋","鯠","鶆","麳"],kuǎ:["侉","咵","垮","銙"],gōng:["侊","公","功","匑","匔","塨","宫","宮","工","幊","弓","恭","攻","杛","碽","糼","糿","肱","觥","觵","躬","躳","髸","龔","龚","䢼"],lì:["例","俐","俪","傈","儮","儷","凓","利","力","励","勵","历","厉","厤","厯","厲","叓","吏","呖","唎","唳","嚦","囇","坜","塛","壢","娳","婯","屴","岦","悧","悷","慄","戾","搮","暦","曆","曞","朸","枥","栃","栗","栛","檪","櫔","櫪","欐","歴","歷","沥","沴","涖","溧","濿","瀝","爏","犡","猁","珕","瑮","瓅","瓑","瓥","疬","痢","癧","盭","睙","砅","砺","砾","磿","礪","礫","礰","禲","秝","立","笠","篥","粒","粝","糲","脷","苈","茘","荔","莅","莉","蒚","蒞","藶","蚸","蛎","蛠","蜧","蝷","蠇","蠣","詈","讈","赲","轢","轣","轹","酈","鉝","隶","隷","雳","靂","靋","鬁","鳨","鴗","鷅","麜","𫵷","𬍛"],yīn:["侌","凐","喑","噾","囙","因","垔","堙","姻","婣","愔","慇","栶","氤","洇","溵","濦","瘖","禋","秵","筃","絪","緸","茵","蒑","蔭","裀","諲","銦","铟","闉","阥","阴","陰","陻","隂","霒","霠","鞇","音","韾","駰","骃","齗","𬘡","𬤇","𬮱"],mǐ:["侎","孊","弭","敉","洣","渳","灖","米","粎","羋","脒","芈","葞","蔝","銤"],zhū:["侏","株","槠","橥","櫧","櫫","洙","潴","瀦","猪","珠","硃","秼","絑","茱","蕏","蛛","蝫","蠩","袾","誅","諸","诛","诸","豬","跦","邾","銖","铢","駯","鮢","鯺","鴸","鼄"],ān:["侒","偣","媕","安","峖","庵","桉","氨","盦","盫","腤","菴","萻","葊","蓭","誝","諳","谙","鞌","鞍","韽","馣","鮟","鵪","鶕","鹌","𩽾"],lù:["侓","僇","勎","勠","圥","坴","塶","娽","峍","廘","彔","录","戮","摝","椂","樚","淕","淥","渌","漉","潞","琭","璐","甪","盝","睩","硉","祿","禄","稑","穋","箓","簏","簬","簵","簶","籙","粶","蔍","蕗","虂","螰","賂","赂","趢","路","踛","蹗","輅","轆","辂","辘","逯","醁","錄","録","錴","鏴","陸","騄","騼","鯥","鴼","鵦","鵱","鷺","鹭","鹿","麓","𫘧"],móu:["侔","劺","恈","眸","蛑","謀","谋","踎","鍪","鴾","麰"],ér:["侕","儿","児","兒","峏","栭","洏","粫","而","胹","荋","袻","輀","轜","陑","隭","髵","鮞","鲕","鴯","鸸"],"dòng tǒng tóng":["侗"],chà:["侘","奼","姹","岔","汊","詫","诧"],chì:["侙","傺","勅","勑","叱","啻","彳","恜","慗","憏","懘","抶","敕","斥","杘","湁","灻","炽","烾","熾","痓","痸","瘛","翄","翅","翤","翨","腟","赤","趩","遫","鉓","雴","飭","饬","鶒","鷘"],"gòng gōng":["供","共"],zhōu:["侜","周","喌","州","徟","洲","淍","炿","烐","珘","矪","舟","謅","譸","诌","賙","赒","輈","輖","辀","週","郮","銂","霌","駲","騆","鵃","鸼"],rú:["侞","儒","嚅","如","嬬","孺","帤","曘","桇","渪","濡","筎","茹","蕠","薷","蝡","蠕","袽","襦","邚","醹","銣","铷","顬","颥","鱬","鴑","鴽"],"jiàn cún":["侟"],xiá:["侠","俠","匣","峡","峽","敮","暇","柙","炠","烚","狎","狭","狹","珨","瑕","硖","硤","碬","祫","筪","縖","翈","舝","舺","蕸","赮","轄","辖","遐","鍜","鎋","陜","陿","霞","騢","魻","鶷","黠"],lǚ:["侣","侶","儢","吕","呂","屡","屢","履","挔","捛","旅","梠","焒","祣","稆","穭","絽","縷","缕","膂","膐","褛","褸","郘","鋁","铝"],ta:["侤"],"jiǎo yáo":["侥","僥","徺"],zhēn:["侦","偵","寊","帧","帪","幀","搸","斟","桢","楨","榛","樼","殝","浈","湞","潧","澵","獉","珍","珎","瑧","甄","眞","真","砧","碪","祯","禎","禛","箴","胗","臻","葴","蒖","蓁","薽","貞","贞","轃","遉","酙","針","鉁","錱","鍼","针","鱵"],"cè zè zhāi":["侧","側"],kuài:["侩","儈","凷","哙","噲","圦","块","塊","巜","廥","快","旝","欳","狯","獪","筷","糩","脍","膾","郐","鄶","鱠","鲙"],chái:["侪","儕","喍","柴","犲","祡","豺"],nóng:["侬","儂","农","哝","噥","檂","欁","浓","濃","燶","禯","秾","穠","脓","膿","蕽","襛","譨","農","辳","醲","鬞","𬪩"],jǐn:["侭","儘","卺","厪","巹","槿","漌","瑾","紧","緊","菫","蓳","謹","谨","錦","锦","饉","馑"],"hóu hòu":["侯","矦"],jiǒng:["侰","僒","冏","囧","泂","澃","炯","烱","煚","煛","熲","燛","窘","綗","褧","迥","逈","顈","颎","䌹"],"chěng tǐng":["侱"],"zhèn zhēn":["侲","揕"],zuò:["侳","做","唑","坐","岝","岞","座","祚","糳","胙","葃","葄","蓙","袏","阼"],qīn:["侵","兓","媇","嵚","嶔","欽","衾","誛","钦","顉","駸","骎","鮼"],jú:["侷","啹","婅","局","巈","椈","橘","泦","淗","湨","焗","犑","狊","粷","菊","蘜","趜","跼","蹫","輂","郹","閰","駶","驧","鵙","鵴","鶪","鼰","鼳","䴗"],"shù dōu":["侸"],tǐng:["侹","圢","娗","挺","涏","烶","珽","脡","艇","誔","頲","颋"],shèn:["侺","愼","慎","昚","涁","渗","滲","瘆","瘮","眘","祳","肾","胂","脤","腎","蜃","蜄","鋠"],"tuì tuó":["侻"],nán:["侽","喃","娚","抩","暔","枏","柟","楠","男","畘","莮","萳","遖"],xiāo:["侾","哓","嘵","嚻","囂","婋","宯","宵","庨","彇","揱","枭","枵","梟","櫹","歊","毊","消","潇","瀟","灱","灲","烋","焇","猇","獢","痚","痟","硝","硣","窙","箫","簘","簫","綃","绡","翛","膮","萧","蕭","虈","虓","蟂","蟏","蟰","蠨","踃","逍","銷","销","霄","颵","驍","骁","髇","髐","魈","鴞","鴵","鷍","鸮"],"biàn pián":["便","緶","缏"],tuǐ:["俀","腿","蹆","骽"],xì:["係","匸","卌","呬","墍","屃","屓","屭","忥","怬","恄","椞","潝","潟","澙","熂","犔","磶","禊","細","綌","縘","细","绤","舃","舄","蕮","虩","衋","覤","赩","趇","郤","釳","阋","隙","隟","霼","餼","饩","鬩","黖"],cù:["促","媨","憱","猝","瘄","瘯","簇","縬","脨","蔟","誎","趗","踧","踿","蹙","蹴","蹵","醋","顣","鼀"],é:["俄","囮","娥","峉","峨","峩","涐","珴","皒","睋","磀","莪","訛","誐","譌","讹","迗","鈋","鋨","锇","頟","額","额","魤","鵝","鵞","鹅"],qiú:["俅","叴","唒","囚","崷","巯","巰","扏","梂","殏","毬","求","汓","泅","浗","湭","煪","犰","玌","球","璆","皳","盚","紌","絿","肍","芁","莍","虬","虯","蛷","裘","觓","觩","訄","訅","賕","赇","逎","逑","遒","酋","釚","釻","銶","頄","鮂","鯄","鰽","鼽","𨱇"],xú:["俆","徐","禑"],"guàng kuāng":["俇"],kù:["俈","喾","嚳","库","庫","廤","瘔","絝","绔","袴","裤","褲","酷"],wù:["俉","务","務","勿","卼","坞","塢","奦","婺","寤","屼","岉","嵨","忢","悞","悟","悮","戊","扤","晤","杌","溩","焐","熃","物","痦","矹","窹","粅","蘁","誤","误","鋈","阢","隖","雾","霚","霧","靰","騖","骛","鶩","鹜","鼿","齀"],jùn:["俊","儁","呁","埈","寯","峻","懏","捃","攟","晙","棞","燇","珺","畯","竣","箟","蜠","賐","郡","陖","餕","馂","駿","骏","鵔","鵕","鵘","䐃"],liáng:["俍","墚","梁","椋","樑","粮","粱","糧","良","輬","辌","𫟅"],zǔ:["俎","唨","爼","祖","組","组","詛","诅","鎺","阻","靻"],"qiào xiào":["俏"],yǒng:["俑","勇","勈","咏","埇","塎","嵱","彮","怺","恿","悀","惥","愑","愹","慂","柡","栐","永","泳","湧","甬","蛹","詠","踊","踴","鯒","鲬"],hùn:["俒","倱","圂","尡","慁","掍","溷","焝","睴","觨","諢","诨"],jìng:["俓","傹","境","妌","婙","婧","弪","弳","径","徑","敬","曔","桱","梷","浄","瀞","獍","痉","痙","竞","竟","竫","競","竸","胫","脛","莖","誩","踁","迳","逕","鏡","镜","靖","静","靜","鵛"],sàn:["俕","閐"],pěi:["俖"],sú:["俗"],xī:["俙","僖","兮","凞","卥","厀","吸","唏","唽","嘻","噏","嚱","夕","奚","嬆","嬉","屖","嵠","巇","希","徆","徯","息","悉","悕","惁","惜","昔","晞","晰","晳","曦","析","桸","榽","樨","橀","欷","氥","汐","浠","淅","渓","溪","烯","焁","焈","焟","熄","熈","熙","熹","熺","熻","燨","爔","牺","犀","犠","犧","琋","瘜","皙","睎","瞦","矽","硒","磎","礂","稀","穸","窸","粞","糦","緆","繥","羲","翕","翖","肸","肹","膝","舾","莃","菥","蒠","蜥","螅","蟋","蠵","西","觹","觽","觿","譆","谿","豀","豨","豯","貕","赥","邜","鄎","酅","醯","釸","錫","鏭","鐊","鑴","锡","隵","餏","饎","饻","鯑","鵗","鸂","鼷"],lǐ:["俚","娌","峢","峲","李","欚","浬","澧","理","礼","禮","粴","裏","裡","豊","逦","邐","醴","鋰","锂","鯉","鱧","鱱","鲤","鳢"],bǎo:["保","堢","媬","宝","寚","寳","寶","珤","緥","葆","藵","褓","賲","靌","飹","飽","饱","駂","鳵","鴇","鸨"],"yú shù yù":["俞"],"sì qí":["俟"],"xìn shēn":["信"],xiū:["俢","修","咻","庥","樇","烌","羞","脙","脩","臹","貅","銝","鎀","飍","饈","馐","髤","髹","鮴","鱃","鵂","鸺","䗛"],dì:["俤","偙","僀","埊","墑","墬","娣","帝","怟","旳","梊","焍","玓","甋","眱","睇","碲","祶","禘","第","締","缔","腣","菂","蒂","蔕","蝃","蝭","螮","諦","谛","踶","递","逓","遞","遰","鉪","𤧛","䗖"],chóu:["俦","儔","嬦","惆","愁","懤","栦","燽","畴","疇","皗","稠","筹","籌","絒","綢","绸","菗","詶","讎","讐","踌","躊","酧","酬","醻","雔","雠","雦"],zhì:["俧","偫","儨","制","劕","垁","娡","寘","帙","帜","幟","庢","庤","廌","彘","徏","徝","志","忮","懥","懫","挃","挚","掷","摯","擲","旘","晊","智","栉","桎","梽","櫍","櫛","治","洷","滍","滞","滯","潌","瀄","炙","熫","狾","猘","璏","瓆","痔","痣","礩","祑","秩","秷","稚","稺","穉","窒","紩","緻","置","翐","膣","至","致","芖","蛭","袟","袠","製","覟","觗","觯","觶","誌","豑","豒","貭","質","贄","质","贽","跱","踬","躓","輊","轾","郅","銍","鋕","鑕","铚","锧","陟","隲","雉","駤","騭","騺","驇","骘","鯯","鴙","鷙","鸷","𬃊"],"liǎ liǎng":["俩"],jiǎn:["俭","倹","儉","减","剪","堿","弿","彅","戩","戬","拣","挸","捡","揀","撿","枧","柬","梘","检","検","檢","減","湕","瀽","瑐","睑","瞼","硷","碱","礆","笕","筧","简","簡","絸","繭","翦","茧","藆","蠒","裥","襇","襉","襺","詃","謇","謭","譾","谫","趼","蹇","鐗","鬋","鰎","鹸","鹻","鹼"],huò:["俰","咟","嚯","嚿","奯","彠","惑","或","擭","旤","曤","檴","沎","湱","瀖","獲","癨","眓","矐","祸","禍","穫","窢","耯","臛","艧","获","蒦","藿","蠖","謋","貨","货","鍃","鑊","镬","雘","霍","靃","韄","㸌"],"jù jū":["俱","据","鋸","锯"],xiào:["俲","傚","効","咲","哮","啸","嘋","嘨","嘯","孝","效","斅","斆","歗","涍","熽","笑","詨","誟"],pái:["俳","徘","牌","犤","猅","簰","簲","輫"],biào:["俵","鰾","鳔"],"chù tì":["俶"],fèi:["俷","剕","厞","吠","屝","废","廃","廢","昲","曊","櫠","沸","濷","狒","癈","肺","萉","費","费","鐨","镄","陫","靅","鼣"],fèng:["俸","凤","奉","湗","焨","煈","賵","赗","鳯","鳳","鴌"],ǎn:["俺","唵","埯","揞","罯","銨","铵"],bèi:["俻","倍","偝","偹","備","僃","备","悖","惫","愂","憊","昁","梖","焙","牬","犕","狈","狽","珼","琲","碚","禙","糒","苝","蓓","蛽","褙","貝","贝","軰","輩","辈","邶","郥","鄁","鋇","鐾","钡","鞁","鞴","𬇙"],yù:["俼","儥","喅","喩","喻","域","堉","妪","嫗","寓","峪","嶎","庽","彧","御","愈","慾","戫","昱","棛","棜","棫","櫲","欎","欝","欲","毓","浴","淯","滪","潏","澦","灪","焴","煜","燏","燠","爩","狱","獄","玉","琙","瘉","癒","砡","硢","硲","礇","礖","礜","禦","秗","稢","稶","篽","籞","籲","粖","緎","罭","聿","肀","艈","芋","芌","茟","蒮","蓣","蓹","蕷","蘌","蜟","蜮","袬","裕","誉","諭","譽","谕","豫","軉","輍","逳","遇","遹","郁","醧","鈺","鋊","錥","鐭","钰","閾","阈","雤","霱","預","预","飫","饇","饫","馭","驈","驭","鬰","鬱","鬻","魊","鱊","鳿","鴥","鴧","鴪","鵒","鷸","鸒","鹆","鹬"],xīn:["俽","噺","妡","嬜","廞","心","忄","忻","惞","新","昕","杺","欣","歆","炘","盺","薪","訢","辛","邤","鈊","鋅","鑫","锌","馨","馫","䜣","𫷷"],"hǔ chí":["俿"],jiù:["倃","僦","匓","匛","匶","厩","咎","就","廄","廏","廐","慦","捄","救","旧","柩","柾","桕","欍","殧","疚","臼","舅","舊","鯦","鷲","鹫","麔","齨","㠇"],yáo:["倄","傜","嗂","垚","堯","姚","媱","尧","尭","峣","嶢","嶤","徭","揺","搖","摇","摿","暚","榣","烑","爻","猺","珧","瑤","瑶","磘","窑","窯","窰","肴","蘨","謠","謡","谣","軺","轺","遙","遥","邎","顤","颻","飖","餆","餚","鰩","鱙","鳐"],"cuì zú":["倅"],"liǎng liǎ":["倆"],wǎn:["倇","唍","婉","惋","挽","晚","晥","晩","晼","梚","椀","琬","畹","皖","盌","碗","綩","綰","绾","脘","萖","踠","輓","鋔"],zǒng:["倊","偬","傯","嵸","总","惣","捴","搃","摠","燪","総","緫","縂","總","蓗"],guān:["倌","关","官","棺","瘝","癏","窤","蒄","関","闗","關","鰥","鱞","鳏"],tiǎn:["倎","唺","忝","悿","晪","殄","淟","睓","腆","舔","覥","觍","賟","錪","餂"],mén:["們","扪","捫","璊","菛","虋","鍆","钔","門","閅","门","𫞩"],"dǎo dào":["倒"],"tán tàn":["倓","埮"],"juè jué":["倔"],chuí:["倕","垂","埀","捶","搥","桘","棰","槌","箠","腄","菙","錘","鎚","锤","陲","顀"],xìng:["倖","姓","婞","嬹","幸","性","悻","杏","涬","緈","臖","荇","莕","葕"],péng:["倗","傰","塜","塳","弸","憉","捀","朋","棚","椖","樥","硼","稝","竼","篷","纄","膨","芃","蓬","蘕","蟚","蟛","袶","輣","錋","鑝","韸","韼","騯","髼","鬅","鬔","鵬","鹏"],"tǎng cháng":["倘"],hòu:["候","厚","后","垕","堠","後","洉","茩","豞","逅","郈","鮜","鱟","鲎","鲘"],tì:["倜","剃","嚏","嚔","屉","屜","悌","悐","惕","惖","戻","掦","替","朑","歒","殢","涕","瓋","笹","籊","薙","褅","逖","逷","髰","鬀","鬄"],gàn:["倝","凎","幹","榦","檊","淦","灨","盰","紺","绀","詌","贑","赣","骭","㽏"],"liàng jìng":["倞","靓"],suī:["倠","哸","夊","滖","濉","眭","睢","芕","荽","荾","虽","雖","鞖"],"chàng chāng":["倡"],jié:["倢","偼","傑","刦","刧","刼","劫","劼","卩","卪","婕","媫","孑","岊","崨","嵥","嶻","巀","幯","截","捷","掶","擮","昅","杢","杰","桀","桝","楬","楶","榤","洁","滐","潔","狤","睫","礍","竭","節","羯","莭","蓵","蛣","蜐","蠘","蠞","蠽","衱","袺","訐","詰","誱","讦","踕","迼","鉣","鍻","镼","頡","鮚","鲒","㛃"],"kǒng kōng":["倥"],juàn:["倦","劵","奆","慻","桊","淃","狷","獧","眷","睊","睠","絭","絹","绢","罥","羂","腃","蔨","鄄","餋"],zōng:["倧","堫","宗","嵏","嵕","惾","朡","棕","椶","熧","猣","磫","緃","翪","腙","葼","蝬","豵","踨","踪","蹤","鍐","鑁","騌","騣","骔","鬃","鬉","鬷","鯮","鯼"],ní:["倪","坭","埿","尼","屔","怩","淣","猊","籾","聣","蚭","蜺","觬","貎","跜","輗","郳","鈮","铌","霓","馜","鯢","鲵","麑","齯","𫐐","𫠜"],zhuō:["倬","拙","捉","桌","梲","棁","棳","槕","涿","窧","鐯","䦃"],"wō wēi":["倭"],luǒ:["倮","剆","曪","瘰","癳","臝","蓏","蠃","裸","躶"],sōng:["倯","凇","娀","崧","嵩","庺","憽","松","枀","枩","柗","梥","檧","淞","濍","硹","菘","鬆"],lèng:["倰","堎","愣","睖","踜"],zì:["倳","剚","字","恣","渍","漬","牸","眥","眦","胔","胾","自","茡","荢"],bèn:["倴","坌","捹","撪","渀","笨","逩"],cǎi:["倸","啋","婇","彩","採","棌","毝","睬","綵","跴","踩"],zhài:["债","債","寨","瘵","砦"],yē:["倻","吔","噎","擨","暍","椰","歋","潱","蠮"],shà:["倽","唼","喢","歃","箑","翜","翣","萐","閯","霎"],qīng:["倾","傾","卿","圊","寈","氢","氫","淸","清","蜻","軽","輕","轻","郬","錆","鑋","靑","青","鯖"],yīng:["偀","嘤","噟","嚶","婴","媖","嫈","嬰","孆","孾","愥","撄","攖","朠","桜","樱","櫻","渶","煐","珱","瑛","璎","瓔","甇","甖","碤","礯","緓","纓","绬","缨","罂","罃","罌","膺","英","莺","蘡","蝧","蠳","褮","譻","賏","軈","鑍","锳","霙","韺","鴬","鶑","鶧","鶯","鷪","鷹","鸎","鸚","鹦","鹰","䓨"],"chēng chèn":["偁","爯"],ruǎn:["偄","朊","瑌","瓀","碝","礝","腝","軟","輭","软","阮"],"zhòng tóng":["偅"],chǔn:["偆","惷","睶","萶","蠢","賰"],"jiǎ jià":["假"],"jì jié":["偈"],"bǐng bìng":["偋"],ruò:["偌","叒","嵶","弱","楉","焫","爇","箬","篛","蒻","鄀","鰙","鰯","鶸"],tí:["偍","厗","啼","嗁","崹","漽","瑅","睼","禵","稊","緹","缇","罤","蕛","褆","謕","趧","蹄","蹏","醍","鍗","題","题","騠","鮷","鯷","鳀","鵜","鷤","鹈","𫘨"],wēi:["偎","危","喴","威","媙","嶶","巍","微","愄","揋","揻","椳","楲","溦","烓","煨","燰","癓","縅","葨","葳","薇","蜲","蝛","覣","詴","逶","隇","隈","霺","鰃","鰄","鳂"],piān:["偏","囨","媥","楄","犏","篇","翩","鍂"],yàn:["偐","厌","厭","唁","喭","嚈","嚥","堰","妟","姲","嬊","嬿","宴","彥","彦","敥","晏","暥","曕","曣","滟","灎","灔","灧","灩","焔","焰","焱","熖","燄","牪","猒","砚","硯","艳","艶","艷","覎","觃","觾","諺","讌","讞","谚","谳","豓","豔","贋","贗","赝","軅","酀","酽","醼","釅","雁","餍","饜","騐","験","騴","驗","驠","验","鬳","鳫","鴈","鴳","鷃","鷰","齞"],"tǎng dàng":["偒"],è:["偔","匎","卾","厄","呝","咢","噩","垩","堊","堮","岋","崿","廅","悪","愕","戹","扼","搤","搹","擜","櫮","歞","歺","湂","琧","砈","砐","硆","腭","苊","萼","蕚","蚅","蝁","覨","諤","讍","谔","豟","軛","軶","轭","遌","遏","遻","鄂","鈪","鍔","鑩","锷","阨","阸","頞","顎","颚","餓","餩","饿","鰐","鰪","鱷","鳄","鶚","鹗","齃","齶","𫫇","𥔲"],xié:["偕","勰","协","協","嗋","垥","奊","恊","愶","拹","携","撷","擕","擷","攜","斜","旪","熁","燲","綊","緳","縀","缬","翓","胁","脅","脇","脋","膎","蝢","衺","襭","諧","讗","谐","鞋","鞵","龤","㙦"],chě:["偖","扯","撦"],shěng:["偗","渻","眚"],chā:["偛","嗏","扠","挿","插","揷","疀","臿","艖","銟","鍤","锸","餷"],huáng:["偟","凰","喤","堭","墴","媓","崲","徨","惶","楻","湟","煌","獚","瑝","璜","癀","皇","磺","穔","篁","簧","艎","葟","蝗","蟥","諻","趪","遑","鍠","鐄","锽","隍","韹","餭","騜","鰉","鱑","鳇","鷬","黃","黄","𨱑"],yǎo:["偠","咬","婹","宎","岆","杳","柼","榚","溔","狕","窅","窈","舀","苭","闄","騕","鷕","齩"],"chǒu qiào":["偢"],yóu:["偤","尤","庮","怣","沋","油","浟","游","犹","猶","猷","由","疣","秞","肬","莜","莸","蕕","蚰","蝣","訧","輏","輶","逰","遊","邮","郵","鈾","铀","駀","魷","鮋","鱿","鲉","𬨎"],xū:["偦","墟","媭","嬃","楈","欨","歔","燸","疞","盱","綇","縃","繻","胥","蕦","虗","虚","虛","蝑","裇","訏","許","諝","譃","谞","鑐","需","須","须","顼","驉","鬚","魆","魖","𬣙","𦈡"],zhā:["偧","哳","抯","挓","揸","摣","樝","渣","皶","觰","譇","齄","齇"],cī:["偨","疵","蠀","趀","骴","髊","齹"],bī:["偪","屄","楅","毴","豍","逼","鰏","鲾","鵖"],xún:["偱","噚","寻","尋","峋","巡","廵","循","恂","揗","攳","旬","杊","栒","桪","樳","洵","浔","潯","燅","燖","珣","璕","畃","紃","荀","蟳","詢","询","鄩","鱏","鱘","鲟","𬘓","𬩽","𬍤","𬊈"],"cāi sī":["偲"],duān:["偳","媏","端","褍","鍴"],ǒu:["偶","吘","嘔","耦","腢","蕅","藕","𬉼","𠙶"],tōu:["偷","偸","鍮"],"zán zá zǎ":["偺"],"lǚ lóu":["偻","僂"],fèn:["偾","僨","奋","奮","弅","忿","愤","憤","瀵","瞓","秎","粪","糞","膹","鱝","鲼"],"kuǐ guī":["傀"],sǒu:["傁","叜","叟","嗾","櫢","瞍","薮","藪"],"zhì sī tí":["傂"],sù:["傃","僳","嗉","塐","塑","夙","嫊","愫","憟","榡","樎","樕","殐","泝","涑","溯","溸","潚","潥","玊","珟","璛","簌","粛","粟","素","縤","肃","肅","膆","蔌","藗","觫","訴","謖","诉","谡","趚","蹜","速","遡","遬","鋉","餗","驌","骕","鱐","鷫","鹔","𫗧"],xiā:["傄","煆","瞎","虲","谺","颬","鰕"],"yuàn yuán":["傆","媛"],rǒng:["傇","冗","宂","氄","軵"],nù:["傉","怒"],yùn:["傊","孕","恽","惲","愠","慍","枟","腪","蕴","薀","藴","蘊","褞","貟","运","運","郓","鄆","酝","醖","醞","韗","韞","韵","韻","餫"],"gòu jiǎng":["傋"],mà:["傌","嘜","榪","睰","祃","禡","罵","閁","駡","骂","鬕"],bàng:["傍","塝","棒","玤","稖","艕","蒡","蜯","謗","谤","鎊","镑"],diān:["傎","厧","嵮","巅","巓","巔","掂","攧","敁","槇","滇","癫","癲","蹎","顚","顛","颠","齻"],táng:["傏","唐","啺","坣","堂","塘","搪","棠","榶","溏","漟","煻","瑭","磄","禟","篖","糃","糖","糛","膅","膛","蓎","螗","螳","赯","踼","鄌","醣","鎕","隚","餹","饄","鶶","䣘"],hào:["傐","哠","恏","昊","昦","晧","暠","暤","暭","曍","浩","淏","澔","灏","灝","皓","皜","皞","皡","皥","耗","聕","薃","號","鄗","顥","颢","鰝"],"xī xì":["傒"],shān:["傓","删","刪","剼","圸","山","挻","搧","柵","檆","潸","澘","煽","狦","珊","笘","縿","羴","羶","脠","舢","芟","衫","跚","軕","邖","閊","鯅"],"qiàn jiān":["傔"],"què jué":["傕","埆"],"cāng chen":["傖"],róng:["傛","媶","嫆","嬫","容","峵","嵘","嶸","戎","搈","曧","栄","榕","榮","榵","毧","溶","瀜","烿","熔","狨","瑢","穁","絨","绒","羢","肜","茙","茸","荣","蓉","蝾","融","螎","蠑","褣","鎔","镕","駥"],"tà tàn":["傝"],suō:["傞","唆","嗍","嗦","娑","摍","桫","梭","睃","簑","簔","羧","莏","蓑","趖","鮻"],dǎi:["傣","歹"],zài:["傤","儎","再","在","扗","洅","載","酨"],gǔ:["傦","古","啒","尳","愲","榖","榾","汩","淈","濲","瀔","牯","皷","皼","盬","瞽","穀","罟","羖","股","脵","臌","薣","蛊","蠱","詁","诂","轂","逧","鈷","钴","餶","馉","鼓","鼔","𦙶"],bīn:["傧","宾","彬","斌","椕","滨","濒","濱","濵","瀕","繽","缤","虨","豩","豳","賓","賔","邠","鑌","镔","霦","顮"],chǔ:["储","儲","杵","椘","楚","楮","檚","濋","璴","础","礎","禇","處","齭","齼","𬺓"],nuó:["傩","儺","挪","梛","橠"],"cān càn":["傪"],lěi:["傫","儡","厽","垒","塁","壘","壨","櫐","灅","癗","矋","磊","礨","耒","蕌","蕾","藟","蘽","蠝","誄","讄","诔","鑸","鸓"],cuī:["催","凗","墔","崔","嵟","慛","摧","榱","獕","磪","鏙"],yōng:["傭","嗈","墉","壅","嫞","庸","廱","慵","拥","擁","滽","灉","牅","痈","癕","癰","臃","邕","郺","鄘","鏞","镛","雍","雝","饔","鱅","鳙","鷛"],"zāo cáo":["傮"],sǒng:["傱","嵷","怂","悚","愯","慫","竦","耸","聳","駷","㧐"],ào:["傲","坳","垇","墺","奡","嫯","岙","岰","嶴","懊","擙","澳","鏊","驁","骜"],"qī còu":["傶"],chuǎng:["傸","磢","闖","闯"],shǎ:["傻","儍"],hàn:["傼","垾","悍","憾","扞","捍","撖","撼","旱","晘","暵","汉","涆","漢","瀚","焊","猂","皔","睅","翰","莟","菡","蛿","蜭","螒","譀","輚","釬","銲","鋎","雗","頷","顄","颔","駻","鶾"],zhāng:["傽","嫜","张","張","彰","慞","暲","樟","漳","獐","璋","章","粻","蔁","蟑","遧","鄣","鏱","餦","騿","鱆","麞"],"yān yàn":["傿","墕","嬮"],"piào biāo":["僄","骠"],liàn:["僆","堜","媡","恋","戀","楝","殓","殮","湅","潋","澰","瀲","炼","煉","瑓","練","纞","练","萰","錬","鍊","鏈","链","鰊","𬶠"],màn:["㵘","僈","墁","幔","慢","曼","漫","澷","熳","獌","縵","缦","蔄","蘰","鄤","鏝","镘","𬜬"],"tàn tǎn":["僋"],yíng:["僌","営","塋","嬴","攍","楹","櫿","溁","溋","滢","潆","濙","濚","濴","瀅","瀛","瀠","瀯","灐","灜","熒","營","瑩","盁","盈","禜","籝","籯","縈","茔","荧","莹","萤","营","萦","萾","蓥","藀","蛍","蝇","蝿","螢","蠅","謍","贏","赢","迎","鎣"],dòng:["働","冻","凍","动","動","姛","戙","挏","栋","棟","湩","硐","胨","胴","腖","迵","霘","駧"],zhuàn:["僎","啭","囀","堟","撰","灷","瑑","篆","腞","蒃","襈","譔","饌","馔"],xiàng:["像","勨","向","嚮","姠","嶑","曏","橡","珦","缿","蟓","衖","襐","象","鐌","項","项","鱌"],shàn:["僐","善","墠","墡","嬗","擅","敾","椫","樿","歚","汕","灗","疝","磰","繕","缮","膳","蟮","蟺","訕","謆","譱","讪","贍","赡","赸","鄯","鐥","饍","騸","骟","鱓","鱔","鳝","𫮃"],"tuí tuǐ":["僓"],zǔn:["僔","噂","撙","譐"],pú:["僕","匍","圤","墣","濮","獛","璞","瞨","穙","莆","菐","菩","葡","蒱","蒲","贌","酺","鏷","镤"],láo:["僗","劳","労","勞","哰","崂","嶗","憥","朥","浶","牢","痨","癆","窂","簩","醪","鐒","铹","顟","髝","𫭼"],chǎng:["僘","厰","廠","敞","昶","氅","鋹","𬬮"],guāng:["僙","光","咣","垙","姯","洸","灮","炗","炚","炛","烡","珖","胱","茪","輄","銧","黆","𨐈"],liáo:["僚","嘹","嫽","寥","寮","尞","屪","嵺","嶚","嶛","廫","憀","敹","暸","橑","獠","璙","疗","療","竂","簝","繚","缭","聊","膋","膫","藔","蟟","豂","賿","蹘","辽","遼","飉","髎","鷯","鹩"],dèng:["僜","凳","墱","嶝","櫈","瞪","磴","覴","邓","鄧","隥"],"chán zhàn zhuàn":["僝"],bō:["僠","嶓","拨","撥","播","波","溊","玻","癶","盋","砵","碆","礡","缽","菠","袰","蹳","鉢","钵","餑","饽","驋","鱍","𬭛"],huì:["僡","匯","卉","喙","嘒","嚖","圚","嬒","寭","屶","屷","彗","彙","彚","徻","恚","恵","惠","慧","憓","懳","晦","暳","槥","橞","檅","櫘","汇","泋","滙","潓","烩","燴","獩","璤","瞺","硊","秽","穢","篲","絵","繪","绘","翙","翽","荟","蔧","蕙","薈","薉","蟪","詯","誨","諱","譓","譿","讳","诲","賄","贿","鐬","闠","阓","靧","頮","顪","颒","餯","𬤝","𬭬"],chuǎn:["僢","喘","舛","荈","踳"],"tiě jiàn":["僣"],sēng:["僧","鬙"],xiàn:["僩","僴","哯","垷","塪","姭","娊","宪","岘","峴","憲","撊","晛","橌","橺","涀","瀗","献","獻","现","現","県","睍","粯","糮","絤","綫","線","线","缐","羡","羨","腺","臔","臽","苋","莧","誢","豏","鋧","錎","限","陥","陷","霰","餡","馅","麲","鼸","𬀪","𪾢"],"yù jú":["僪"],"è wū":["僫"],"tóng zhuàng":["僮"],lǐn:["僯","凛","凜","廩","廪","懍","懔","撛","檁","檩","澟","癛","癝"],gù:["僱","凅","固","堌","崓","崮","故","梏","棝","牿","痼","祻","錮","锢","雇","顧","顾","鯝","鲴"],jiāng:["僵","壃","姜","橿","殭","江","畕","疅","礓","繮","缰","翞","茳","葁","薑","螀","螿","豇","韁","鱂","鳉"],mǐn:["僶","冺","刡","勄","悯","惽","愍","慜","憫","抿","敃","敏","敯","泯","潣","皿","笢","笽","簢","蠠","閔","閩","闵","闽","鰵","鳘","黽"],jìn:["僸","凚","噤","嚍","墐","壗","妗","嬧","搢","晉","晋","枃","殣","浕","浸","溍","濅","濜","烬","煡","燼","琎","瑨","璶","盡","祲","縉","缙","荩","藎","覲","觐","賮","贐","赆","近","进","進","靳","齽"],"jià jie":["價"],qiào:["僺","峭","帩","撬","殻","窍","竅","誚","诮","躈","陗","鞩","韒","髚"],pì:["僻","媲","嫓","屁","澼","甓","疈","譬","闢","鷿","鸊","䴙"],sài:["僿","簺","賽","赛"],"chán tǎn shàn":["儃"],"dāng dàng":["儅","当","闣"],xuān:["儇","喧","塇","媗","宣","愃","愋","揎","昍","暄","煊","煖","瑄","睻","矎","禤","箮","翧","翾","萱","萲","蓒","蕿","藼","蘐","蝖","蠉","諠","諼","譞","谖","軒","轩","鍹","駽","鰚","𫓶","𫍽"],"dān dàn":["儋","擔","瘅"],càn:["儏","澯","灿","燦","璨","粲","薒","謲"],"bīn bìn":["儐"],"án àn":["儑"],tái:["儓","坮","嬯","抬","擡","檯","炱","炲","籉","臺","薹","跆","邰","颱","鮐","鲐"],lán:["儖","兰","囒","婪","岚","嵐","幱","拦","攔","斓","斕","栏","欄","欗","澜","瀾","灆","灡","燣","燷","璼","篮","籃","籣","繿","葻","蓝","藍","蘫","蘭","褴","襕","襤","襴","襽","譋","讕","谰","躝","鑭","镧","闌","阑","韊","𬒗"],"nǐ yì ài yí":["儗"],méng:["儚","幪","曚","朦","橗","檬","氋","溕","濛","甍","甿","盟","礞","艨","莔","萌","蕄","虻","蝱","鄳","鄸","霿","靀","顭","饛","鯍","鸏","鹲","𫑡","㠓"],níng:["儜","凝","咛","嚀","嬣","柠","橣","檸","狞","獰","聍","聹","薴","鑏","鬡","鸋"],qióng:["儝","卭","宆","惸","憌","桏","橩","焪","焭","煢","熍","琼","瓊","睘","穷","穹","窮","竆","笻","筇","舼","茕","藑","藭","蛩","蛬","赹","跫","邛","銎","䓖"],liè:["儠","冽","列","劣","劽","埒","埓","姴","峛","巤","挒","捩","栵","洌","浖","烈","烮","煭","犣","猎","猟","獵","聗","脟","茢","蛚","趔","躐","迾","颲","鬛","鬣","鮤","鱲","鴷","䴕","𫚭"],kuǎng:["儣","夼","懭"],bào:["儤","勽","報","忁","报","抱","曓","爆","犦","菢","虣","蚫","豹","鉋","鑤","铇","骲","髱","鮑","鲍"],biāo:["儦","墂","幖","彪","标","標","滮","瀌","熛","爂","猋","瘭","磦","膘","臕","謤","贆","鏢","鑣","镖","镳","颮","颷","飆","飇","飈","飊","飑","飙","飚","驫","骉","髟"],zǎn:["儧","儹","噆","攅","昝","趱","趲"],háo:["儫","嗥","嘷","噑","嚎","壕","椃","毜","毫","濠","獆","獔","竓","籇","蚝","蠔","譹","豪"],qìng:["儬","凊","庆","慶","櫦","濪","碃","磬","罄","靘"],chèn:["儭","嚫","榇","櫬","疢","衬","襯","讖","谶","趁","趂","齓","齔","龀"],téng:["儯","幐","滕","漛","疼","籐","籘","縢","腾","藤","虅","螣","誊","謄","邆","駦","騰","驣","鰧","䲢"],"lǒng lóng lòng":["儱"],"chán chàn":["儳"],"ráng xiāng":["儴","勷"],"huì xié":["儶"],luó:["儸","攞","椤","欏","猡","玀","箩","籮","罗","羅","脶","腡","萝","蘿","螺","覼","逻","邏","鏍","鑼","锣","镙","饠","騾","驘","骡","鸁"],léi:["儽","嫘","檑","欙","瓃","畾","縲","纍","纝","缧","罍","羸","蔂","蘲","虆","轠","鐳","鑘","镭","雷","靁","鱩","鼺"],"nàng nāng":["儾"],"wù wū":["兀"],yǔn:["允","喗","夽","抎","殒","殞","狁","磒","荺","賱","鈗","阭","陨","隕","霣","馻","齫","齳"],zān:["兂","橵","簪","簮","糌","鐕","鐟","鵤"],yuán:["元","円","原","厡","厵","园","圆","圎","園","圓","垣","塬","媴","嫄","援","榞","榬","橼","櫞","沅","湲","源","溒","爰","猨","猿","笎","緣","縁","缘","羱","茒","薗","蝝","蝯","螈","袁","褤","謜","轅","辕","邍","邧","酛","鈨","鎱","騵","魭","鶢","鶰","黿","鼋","𫘪"],xiōng:["兄","兇","凶","匂","匈","哅","忷","恟","汹","洶","胷","胸","芎","訩","詾","讻"],chōng:["充","嘃","忡","憃","憧","摏","沖","浺","珫","罿","翀","舂","艟","茺","衝","蹖","㳘"],zhào:["兆","垗","旐","曌","枛","櫂","照","燳","狣","瞾","笊","罀","罩","羄","肁","肇","肈","詔","诏","赵","趙","鮡","𬶐"],"duì ruì yuè":["兊","兌","兑"],kè:["克","刻","勀","勊","堁","娔","客","恪","愙","氪","溘","碦","緙","缂","艐","衉","課","课","錁","锞","騍","骒"],tù:["兎","兔","堍","迌","鵵"],dǎng:["党","攩","欓","譡","讜","谠","黨","𣗋"],dōu:["兜","兠","唗","橷","篼","蔸"],huǎng:["兤","奛","幌","怳","恍","晄","炾","熀","縨","詤","謊","谎"],rù:["入","嗕","媷","扖","杁","洳","溽","縟","缛","蓐","褥","鳰"],nèi:["內","氝","氞","錗"],"yú shù":["兪"],"liù lù":["六"],han:["兯","爳"],tiān:["兲","天","婖","添","酟","靔","靝","黇"],"xīng xìng":["兴"],diǎn:["典","嚸","奌","婰","敟","椣","点","碘","蒧","蕇","踮","點"],"zī cí":["兹"],jiān:["兼","冿","囏","坚","堅","奸","姦","姧","尖","幵","惤","戋","戔","搛","椾","樫","櫼","歼","殱","殲","湔","瀐","瀸","煎","熞","熸","牋","瑊","睷","礛","礷","笺","箋","緘","縑","缄","缣","肩","艰","艱","菅","菺","葌","蒹","蔪","蕑","蕳","虃","譼","豜","鑯","雃","鞯","韀","韉","餰","馢","鰔","鰜","鰹","鲣","鳒","鵑","鵳","鶼","鹣","麉"],shòu:["兽","受","售","壽","夀","寿","授","狩","獣","獸","痩","瘦","綬","绶","膄"],jì:["兾","冀","剂","剤","劑","勣","坖","垍","塈","妓","季","寂","寄","廭","彑","徛","忌","悸","惎","懻","技","旡","既","旣","暨","暩","曁","梞","檕","檵","洎","漃","漈","瀱","痵","癠","禝","稩","稷","穄","穊","穧","紀","継","績","繋","繼","继","绩","罽","臮","芰","茍","茤","葪","蓟","蔇","薊","蘎","蘮","蘻","裚","襀","覬","觊","計","記","誋","计","记","跡","跽","蹟","迹","际","際","霁","霽","驥","骥","髻","鬾","魝","魥","鯚","鯽","鰶","鰿","鱀","鱭","鲚","鲫","鵋","鷑","齌","𪟝","𬶨","𬶭"],jiōng:["冂","冋","坰","埛","扃","蘏","蘔","駉","駫","𬳶"],mào:["冃","冐","媢","帽","愗","懋","暓","柕","楙","毷","瑁","皃","眊","瞀","耄","茂","萺","蝐","袤","覒","貌","貿","贸","鄚","鄮"],rǎn:["冄","冉","姌","媣","染","珃","苒","蒅","䎃"],"nèi nà":["内"],gāng:["冈","冮","刚","剛","堈","堽","岡","掆","摃","棡","牨","犅","疘","綱","纲","缸","罁","罡","肛","釭","鎠","㭎"],cè:["冊","册","厕","厠","夨","廁","恻","惻","憡","敇","测","測","笧","策","筞","筴","箣","荝","萗","萴","蓛"],guǎ:["冎","剐","剮","叧","寡"],"mào mò":["冒"],gòu:["冓","啂","坸","垢","够","夠","媾","彀","搆","撀","构","構","煹","覯","觏","訽","詬","诟","購","购","遘","雊"],xǔ:["冔","喣","暊","栩","珝","盨","糈","詡","諿","诩","鄦","醑"],mì:["冖","冪","嘧","塓","宻","密","峚","幂","幎","幦","怽","榓","樒","櫁","汨","淧","滵","漞","濗","熐","羃","蔤","蜜","覓","覔","覛","觅","謐","谧","鼏"],"yóu yín":["冘"],xiě:["写","冩","藛"],jūn:["军","君","均","桾","汮","皲","皸","皹","碅","莙","蚐","袀","覠","軍","鈞","銁","銞","鍕","钧","頵","鮶","鲪","麏"],mí:["冞","擟","瀰","爢","猕","獼","祢","禰","縻","蒾","藌","蘪","蘼","袮","詸","謎","迷","醚","醾","醿","釄","镾","鸍","麊","麋","麛"],"guān guàn":["冠","覌","観","觀","观"],měng:["冡","勐","懵","掹","猛","獴","艋","蜢","蠓","錳","锰","鯭","鼆"],zhǒng:["冢","塚","尰","歱","煄","瘇","肿","腫","踵"],zuì:["冣","嶵","晬","最","栬","槜","檇","檌","祽","絊","罪","蕞","辠","酔","酻","醉","錊"],yuān:["冤","剈","囦","嬽","寃","棩","淵","渁","渆","渊","渕","灁","眢","肙","葾","蒬","蜎","蜵","駌","鳶","鴛","鵷","鸢","鸳","鹓","鼘","鼝"],míng:["冥","名","明","暝","朙","榠","洺","溟","猽","眀","眳","瞑","茗","螟","覭","詺","鄍","銘","铭","鳴","鸣"],kòu:["冦","叩","宼","寇","扣","敂","滱","窛","筘","簆","蔲","蔻","釦","鷇"],tài:["冭","太","夳","忲","态","態","汰","汱","泰","溙","肽","舦","酞","鈦","钛"],"féng píng":["冯","馮"],"chōng chòng":["冲"],kuàng:["况","圹","壙","岲","懬","旷","昿","曠","框","況","爌","眖","眶","矿","砿","礦","穬","絋","絖","纊","纩","貺","贶","軦","邝","鄺","鉱","鋛","鑛","黋"],lěng:["冷"],pàn:["冸","判","叛","沜","泮","溿","炍","牉","畔","盼","聁","袢","襻","詊","鋬","鑻","頖","鵥"],fā:["冹","彂","沷","発","發"],xiǎn:["冼","尟","尠","崄","嶮","幰","攇","显","櫶","毨","灦","烍","燹","狝","猃","獫","獮","玁","禒","筅","箲","藓","蘚","蚬","蜆","譣","赻","跣","鍌","险","険","險","韅","顕","顯","㬎"],qià:["冾","圶","帢","恰","殎","洽","硈","胢","髂"],"jìng chēng":["净","凈","淨"],sōu:["凁","嗖","廀","廋","捜","搜","摉","溲","獀","艘","蒐","螋","鄋","醙","鎪","锼","颼","飕","餿","馊","騪"],měi:["凂","媄","媺","嬍","嵄","挴","毎","每","浼","渼","燘","美","躾","鎂","镁","黣"],tú:["凃","図","图","圖","圗","塗","屠","峹","嵞","庩","廜","徒","悇","揬","涂","瘏","筡","腯","荼","蒤","跿","途","酴","鈯","鍎","馟","駼","鵌","鶟","鷋","鷵","𬳿"],zhǔn:["准","凖","埻","準","𬘯"],"liáng liàng":["凉","涼","量"],diāo:["凋","刁","刟","叼","奝","弴","彫","汈","琱","碉","簓","虭","蛁","貂","錭","雕","鮉","鯛","鲷","鵰","鼦"],còu:["凑","湊","腠","輳","辏"],ái:["凒","啀","嘊","捱","溰","癌","皑","皚"],duó:["凙","剫","夺","奪","痥","踱","鈬","鐸","铎"],dú:["凟","匵","嬻","椟","櫝","殰","涜","牍","牘","犊","犢","独","獨","瓄","皾","裻","読","讀","讟","豄","贕","錖","鑟","韇","韣","韥","騳","髑","黩","黷"],"jǐ jī":["几"],fán:["凡","凢","凣","匥","墦","杋","柉","棥","樊","瀿","烦","煩","燔","璠","矾","礬","笲","籵","緐","羳","舤","舧","薠","蘩","蠜","襎","蹯","釩","鐇","鐢","钒","鷭","𫔍","𬸪"],jū:["凥","匊","娵","婮","居","崌","抅","挶","掬","梮","椐","檋","毩","毱","泃","涺","狙","琚","疽","砠","罝","腒","艍","蜛","裾","諊","跔","踘","躹","陱","雎","鞠","鞫","駒","驹","鮈","鴡","鶋","𬶋"],"chù chǔ":["処","处"],zhǐ:["凪","劧","咫","址","坧","帋","恉","扺","指","旨","枳","止","汦","沚","洔","淽","疻","砋","祉","秖","紙","纸","芷","藢","衹","襧","訨","趾","軹","轵","酯","阯","黹"],píng:["凭","凴","呯","坪","塀","岼","帡","帲","幈","平","慿","憑","枰","洴","焩","玶","瓶","甁","竮","箳","簈","缾","荓","萍","蓱","蚲","蛢","評","评","軿","輧","郱","鮃","鲆"],kǎi:["凯","凱","剀","剴","垲","塏","恺","愷","慨","暟","蒈","輆","鍇","鎧","铠","锴","闓","闿","颽"],gān:["凲","坩","尲","尴","尶","尷","柑","泔","漧","玕","甘","疳","矸","竿","筸","粓","肝","苷","迀","酐","魐"],"kǎn qiǎn":["凵"],tū:["凸","堗","嶀","捸","涋","湥","痜","禿","秃","突","葖","鋵","鵚","鼵","㻬"],"āo wā":["凹"],chū:["出","初","岀","摴","榋","樗","貙","齣","䢺","䝙"],dàng:["凼","圵","垱","壋","档","檔","氹","璗","瓽","盪","瞊","砀","碭","礑","簜","荡","菪","蕩","蘯","趤","逿","雼","𬍡"],hán:["函","凾","含","圅","娢","寒","崡","晗","梒","浛","涵","澏","焓","琀","甝","筨","蜬","邗","邯","鋡","韓","韩"],záo:["凿","鑿"],dāo:["刀","刂","忉","氘","舠","螩","釖","魛","鱽"],chuāng:["刅","摐","牎","牕","疮","瘡","窓","窗","窻"],"fēn fèn":["分"],"qiè qiē":["切"],kān:["刊","勘","堪","戡","栞","龕","龛"],cǔn:["刌","忖"],chú:["刍","厨","幮","廚","橱","櫉","櫥","滁","犓","篨","耡","芻","蒢","蒭","蜍","蟵","豠","趎","蹰","躇","躕","鉏","鋤","锄","除","雏","雛","鶵"],"huà huá":["划"],lí:["刕","剓","剺","劙","厘","喱","嚟","囄","嫠","孷","廲","悡","梨","梸","棃","漓","灕","犁","犂","狸","琍","璃","瓈","盠","睝","离","穲","竰","筣","篱","籬","糎","縭","缡","罹","艃","荲","菞","蓠","蔾","藜","蘺","蜊","蟍","蟸","蠫","褵","謧","貍","醨","鋫","錅","鏫","鑗","離","驪","骊","鯏","鯬","鱺","鲡","鵹","鸝","鹂","黎","黧","㰀"],yuè:["刖","嬳","岄","岳","嶽","恱","悅","悦","戉","抈","捳","月","樾","瀹","爚","玥","礿","禴","篗","籆","籥","籰","粤","粵","蘥","蚎","蚏","説","越","跀","跃","躍","軏","鈅","鉞","鑰","钺","閱","閲","阅","鸑","鸙","黦","龠","𫐄","𬸚"],liú:["刘","劉","嚠","媹","嵧","旈","旒","榴","橊","流","浏","瀏","琉","瑠","瑬","璢","畄","留","畱","疁","瘤","癅","硫","蒥","蓅","蟉","裗","鎏","鏐","鐂","镠","飀","飅","飗","駠","駵","騮","驑","骝","鰡","鶹","鹠","麍"],zé:["则","則","啧","嘖","嫧","帻","幘","択","樍","歵","沢","泎","溭","皟","瞔","矠","礋","箦","簀","舴","蔶","蠌","襗","謮","賾","赜","迮","鸅","齚","齰"],"chuàng chuāng":["创","創"],qù:["刞","厺","去","閴","闃","阒","麮","鼁"],"bié biè":["別","别"],"páo bào":["刨"],"chǎn chàn":["刬","剗","幝"],guā:["刮","劀","桰","歄","煱","瓜","胍","踻","颪","颳","騧","鴰","鸹"],gēng:["刯","庚","椩","浭","焿","畊","絚","羮","羹","耕","菮","賡","赓","鶊","鹒"],dào:["到","噵","悼","椡","檤","燾","瓙","盗","盜","稲","稻","纛","翿","艔","菿","衜","衟","軇","道"],chuàng:["刱","剏","剙","怆","愴"],kū:["刳","哭","圐","堀","枯","桍","矻","窟","跍","郀","骷","鮬"],duò:["刴","剁","墯","尮","惰","憜","挅","桗","舵","跥","跺","陊","陏","飿","饳","鵽"],"shuā shuà":["刷"],"quàn xuàn":["券"],"chà shā":["刹","剎"],"cì cī":["刺"],guì:["刽","刿","劊","劌","撌","攰","昋","桂","椢","槶","樻","櫃","猤","禬","筀","蓕","襘","貴","贵","跪","鐀","鑎","鞼","鱖","鱥"],lóu:["剅","娄","婁","廔","楼","樓","溇","漊","熡","耧","耬","艛","蒌","蔞","蝼","螻","謱","軁","遱","鞻","髅","髏","𪣻"],cuò:["剉","剒","厝","夎","挫","措","棤","莝","莡","蓌","逪","銼","錯","锉","错"],"xiāo xuē":["削"],"kēi kè":["剋","尅"],"là lá":["剌"],tī:["剔","梯","踢","銻","锑","鷈","鷉","䏲","䴘"],pōu:["剖"],wān:["剜","塆","壪","帵","弯","彎","湾","潫","灣","睕","蜿","豌"],"bāo bō":["剝","剥"],duō:["剟","咄","哆","嚉","多","夛","掇","毲","畓","裰","㙍"],qíng:["剠","勍","夝","情","擎","晴","暒","棾","樈","檠","氰","甠","硘","葝","黥"],"yǎn shàn":["剡"],"dū zhuó":["剢"],yān:["剦","嫣","崦","嶖","恹","懕","懨","樮","淊","淹","漹","烟","焉","焑","煙","珚","篶","胭","臙","菸","鄢","醃","閹","阉","黫"],huō:["剨","劐","吙","攉","秴","耠","锪","騞","𬴃"],shèng:["剩","剰","勝","圣","墭","嵊","晠","榺","橳","琞","聖","蕂","貹","賸"],"duān zhì":["剬"],wū:["剭","呜","嗚","圬","屋","巫","弙","杇","歍","汙","汚","污","洿","烏","窏","箼","螐","誈","誣","诬","邬","鄔","鎢","钨","鰞","鴮"],gē:["割","哥","圪","彁","戈","戓","戨","歌","滒","犵","肐","袼","謌","鎶","鴚","鴿","鸽"],"dá zhá":["剳"],chuán:["剶","暷","椽","篅","舡","舩","船","輲","遄"],"tuán zhuān":["剸","漙","篿"],"lù jiū":["剹"],pēng:["剻","匉","嘭","怦","恲","抨","梈","烹","砰","軯","駍"],piāo:["剽","勡","慓","旚","犥","翲","螵","飃","飄","飘","魒"],kōu:["剾","彄","抠","摳","眍","瞘","芤","𫸩"],"jiǎo chāo":["剿","劋","勦","摷"],qiāo:["劁","勪","墝","幧","敲","橇","毃","燆","硗","磽","繑","趬","跷","踍","蹺","蹻","郻","鄡","鄥","鍫","鍬","鐰","锹","頝"],"huá huà":["劃"],"zhā zhá":["劄"],"pī pǐ":["劈","悂"],tāng:["劏","嘡","羰","薚","蝪","蹚","鞺","鼞"],chán:["劖","嚵","壥","婵","嬋","巉","廛","棎","毚","湹","潹","潺","澶","瀍","瀺","煘","獑","磛","緾","纏","纒","缠","艬","蝉","蟐","蟬","蟾","誗","讒","谗","躔","鄽","酁","鋋","鑱","镵","饞","馋"],zuān:["劗","躜","躦","鉆","鑚"],mó:["劘","嫫","嬤","嬷","尛","摹","擵","橅","糢","膜","藦","蘑","謨","謩","谟","饃","饝","馍","髍","魔","魹"],zhú:["劚","斸","曯","欘","灟","炢","烛","燭","爥","瘃","竹","笁","笜","舳","茿","蓫","蠋","蠾","躅","逐","逫","钃","鱁"],quàn:["劝","勧","勸","牶","韏"],"jìn jìng":["劤","劲","勁"],kēng:["劥","坑","牼","硁","硜","誙","銵","鍞","鏗","铿","阬"],"xié liè":["劦"],"zhù chú":["助"],nǔ:["努","弩","砮","胬"],shào:["劭","卲","哨","潲","紹","綤","绍","袑","邵"],miǎo:["劰","杪","淼","渺","眇","秒","篎","緲","缈","藐","邈"],kǒu:["劶","口"],wā:["劸","娲","媧","屲","挖","攨","洼","溛","漥","瓾","畖","穵","窊","窪","蛙","韈","鼃"],kuāng:["劻","匡","匩","哐","恇","洭","筐","筺","誆","诓","軭","邼"],hé:["劾","咊","啝","姀","峆","敆","曷","柇","楁","毼","河","涸","渮","澕","熆","皬","盇","盉","盍","盒","禾","篕","籺","粭","翮","菏","萂","覈","訸","詥","郃","釛","鉌","鑉","閡","闔","阂","阖","鞨","頜","餄","饸","魺","鹖","麧","齕","龁","龢","𬌗"],gào:["勂","吿","告","峼","祮","祰","禞","筶","誥","诰","郜","鋯","锆"],"bó bèi":["勃"],láng:["勆","嫏","廊","斏","桹","榔","樃","欴","狼","琅","瑯","硠","稂","艆","蓈","蜋","螂","躴","郒","郞","鋃","鎯","锒"],xūn:["勋","勛","勲","勳","嚑","坃","埙","塤","壎","壦","曛","燻","獯","矄","纁","臐","薫","薰","蘍","醺","𫄸"],"juàn juān":["勌","瓹"],"lè lēi":["勒"],kài:["勓","炌","烗","鎎"],"wěng yǎng":["勜"],qín:["勤","嗪","噙","嶜","庈","懃","懄","捦","擒","斳","檎","澿","珡","琴","琹","瘽","禽","秦","耹","芩","芹","菦","螓","蠄","鈙","鈫","雂","靲","鳹","鵭"],jiàng:["勥","匞","匠","嵹","弜","弶","摾","櫤","洚","滰","犟","糡","糨","絳","绛","謽","酱","醤","醬"],fān:["勫","嬏","帆","幡","忛","憣","旙","旛","繙","翻","藩","轓","颿","飜","鱕"],juān:["勬","姢","娟","捐","涓","蠲","裐","鎸","鐫","镌","鹃"],"tóng dòng":["勭","烔","燑","狪"],lǜ:["勴","垏","嵂","律","慮","氯","滤","濾","爈","箻","綠","繂","膟","葎","虑","鑢"],chè:["勶","坼","彻","徹","掣","撤","澈","烢","爡","瞮","硩","聅","迠","頙","㬚"],sháo:["勺","玿","韶"],"gōu gòu":["勾"],cōng:["匆","囪","囱","忩","怱","悤","暰","樬","漗","瑽","璁","瞛","篵","繱","聡","聦","聪","聰","苁","茐","葱","蓯","蔥","蟌","鍯","鏓","鏦","騘","驄","骢"],"táo yáo":["匋","陶"],páo:["匏","咆","垉","庖","爮","狍","袍","褜","軳","鞄","麅"],dá:["匒","妲","怛","炟","燵","畣","笪","羍","荙","薘","蟽","詚","达","迏","迖","迚","逹","達","鐽","靼","鞑","韃","龖","龘","𫟼"],"huà huā":["化"],"běi bèi":["北"],nǎo:["匘","垴","堖","嫐","恼","悩","惱","瑙","碯","脑","脳","腦"],"chí shi":["匙"],fāng:["匚","堏","方","淓","牥","芳","邡","鈁","錺","钫","鴋"],zā:["匝","咂","帀","沞","臜","臢","迊","鉔","魳"],qiè:["匧","厒","妾","怯","悏","惬","愜","挈","穕","窃","竊","笡","箧","篋","籡","踥","鍥","锲","鯜"],"zāng cáng":["匨"],fěi:["匪","奜","悱","棐","榧","篚","翡","蕜","誹","诽"],"kuì guì":["匮","匱"],suǎn:["匴"],pǐ:["匹","噽","嚭","圮","庀","痞","癖","脴","苉","銢","鴄"],"qū ōu":["区","區"],"kē qià":["匼"],"yǎn yàn":["匽","棪"],biǎn:["匾","惼","揙","碥","稨","窆","藊","褊","貶","贬","鴘"],nì:["匿","堄","嫟","嬺","惄","愵","昵","暱","氼","眤","睨","縌","胒","腻","膩","逆","𨺙"],niàn:["卄","唸","埝","廿","念","惗","艌"],sà:["卅","櫒","脎","萨","蕯","薩","鈒","隡","颯","飒","馺"],zú:["卆","哫","崪","族","箤","足","踤","镞"],shēng:["升","呏","声","斘","昇","曻","枡","殅","泩","湦","焺","牲","珄","生","甥","竔","笙","聲","鉎","鍟","阩","陞","陹","鵿","鼪"],wàn:["卍","卐","忨","杤","瞣","脕","腕","萬","蟃","贎","輐","錽","𬇕"],"huá huà huā":["华","華"],bēi:["卑","悲","揹","杯","桮","盃","碑","藣","鵯","鹎"],"zú cù":["卒"],"dān shàn chán":["单","單"],"nán nā":["南"],"shuài lǜ":["卛"],"bǔ bo pú":["卜"],"kuàng guàn":["卝"],biàn:["卞","变","変","峅","弁","徧","忭","抃","昪","汳","汴","玣","艑","苄","覍","諚","變","辡","辧","辨","辩","辫","辮","辯","遍","釆","𨚕"],bǔ:["卟","哺","捕","补","補","鸔","𬷕"],"zhàn zhān":["占","覱"],"kǎ qiǎ":["卡"],lú:["卢","嚧","垆","壚","庐","廬","曥","枦","栌","櫨","泸","瀘","炉","爐","獹","玈","瓐","盧","矑","籚","纑","罏","胪","臚","舮","舻","艫","芦","蘆","蠦","轤","轳","鈩","鑪","顱","颅","馿","髗","魲","鱸","鲈","鸕","鸬","黸","𬬻"],lǔ:["卤","塷","掳","擄","樐","橹","櫓","氌","滷","澛","瀂","硵","磠","穞","艣","艪","蓾","虏","虜","鏀","鐪","鑥","镥","魯","鲁","鹵"],guà:["卦","啩","挂","掛","罣","褂","詿","诖"],"áng yǎng":["卬"],yìn:["印","垽","堷","廕","慭","憖","憗","懚","洕","湚","猌","癊","胤","茚","酳","鮣","䲟"],què:["却","卻","塙","崅","悫","愨","慤","搉","榷","燩","琷","皵","确","確","礭","闋","阕","鵲","鹊","𬒈"],luǎn:["卵"],"juàn juǎn":["卷","巻"],"chǎng ān hàn":["厂"],"wěi yán":["厃"],tīng:["厅","厛","听","庁","廰","廳","汀","烃","烴","綎","耓","聴","聼","聽","鞓","𬘩"],"zhé zhái":["厇"],"hàn àn":["厈","屽"],yǎ:["厊","唖","庌","痖","瘂","蕥"],shè:["厍","厙","弽","慑","慴","懾","摂","欇","涉","涻","渉","滠","灄","社","舎","蔎","蠂","設","设","赦","騇","麝"],dǐ:["厎","呧","坘","弤","抵","拞","掋","牴","砥","菧","觝","詆","诋","軧","邸","阺","骶","鯳"],"zhǎ zhǎi":["厏"],páng:["厐","嫎","庞","徬","舽","螃","逄","鰟","鳑","龎","龐"],"zhì shī":["厔"],máng:["厖","吂","哤","娏","忙","恾","杗","杧","汒","浝","牻","痝","盲","硭","笀","芒","茫","蘉","邙","釯","鋩","铓","駹"],zuī:["厜","樶","纗","蟕"],"shà xià":["厦","廈"],áo:["厫","嗷","嗸","廒","敖","滶","獒","獓","璈","翱","翶","翺","聱","蔜","螯","謷","謸","遨","鏖","隞","鰲","鳌","鷔","鼇"],"lán qiān":["厱"],"sī mǒu":["厶"],"gōng hóng":["厷"],"lín miǎo":["厸"],"qiú róu":["厹"],dū:["厾","嘟","督","醏"],"xiàn xuán":["县","縣"],"cān shēn cēn sān":["参","參","叄","叅"],"ài yǐ":["叆"],"chā chà chǎ chá":["叉"],shuāng:["双","孀","孇","欆","礵","艭","雙","霜","騻","驦","骦","鷞","鸘","鹴"],shōu:["収","收"],guái:["叏"],bá:["叐","妭","抜","拔","炦","癹","胈","茇","菝","詙","跋","軷","魃","鼥"],"fā fà":["发"],"zhuó yǐ lì jué":["叕"],qǔ:["取","娶","竬","蝺","詓","齲","龋"],"jiǎ xiá":["叚","徦"],"wèi yù":["叞","尉","蔚"],dié:["叠","垤","堞","峌","幉","恎","惵","戜","曡","殜","氎","牃","牒","瓞","畳","疂","疉","疊","碟","絰","绖","耊","耋","胅","艓","苵","蜨","蝶","褋","詄","諜","谍","跮","蹀","迭","镻","鰈","鲽","鴩","𫶇"],ruì:["叡","枘","汭","瑞","睿","芮","蚋","蜹","銳","鋭","锐"],"jù gōu":["句"],lìng:["另","呤","炩","蘦"],"dāo dáo tāo":["叨"],"zhī zhǐ":["只"],jiào:["叫","呌","嘂","嘦","噍","嬓","斍","斠","滘","漖","獥","珓","皭","窖","藠","訆","譥","趭","較","轎","轿","较","酵","醮","釂"],"zhào shào":["召"],"kě kè":["可"],"tái tāi":["台","苔"],pǒ:["叵","尀","笸","箥","鉕","钷","駊"],"yè xié":["叶"],"hào háo":["号"],tàn:["叹","嘆","探","歎","湠","炭","碳","舕"],"hōng hóng":["叿"],miē:["吀","咩","哶","孭"],"xū yū yù":["吁"],chī:["吃","哧","喫","嗤","噄","妛","媸","彨","彲","摛","攡","殦","瓻","痴","癡","眵","瞝","笞","粚","胵","蚩","螭","訵","魑","鴟","鵄","鸱","黐","齝","𫄨"],"xuān sòng":["吅"],yāo:["吆","喓","夭","妖","幺","楆","殀","祅","腰","葽","訞","邀","鴁","鴢","㙘"],zǐ:["吇","姉","姊","子","杍","梓","榟","橴","滓","矷","秭","笫","籽","紫","耔","虸","訿","釨"],"hé gě":["合","鲄"],"cùn dòu":["吋"],"tóng tòng":["同"],"tǔ tù":["吐","唋"],"zhà zhā":["吒","奓"],"xià hè":["吓"],"ā yā":["吖"],"ma má mǎ":["吗"],lìn:["吝","恡","悋","橉","焛","甐","膦","蔺","藺","賃","赁","蹸","躏","躙","躪","轥","閵"],tūn:["吞","暾","朜","焞"],"bǐ pǐ":["吡"],qìn:["吢","吣","唚","抋","揿","搇","撳","沁","瀙","菣","藽"],"jiè gè":["吤"],"fǒu pǐ":["否"],"ba bā":["吧"],dūn:["吨","噸","墩","墪","惇","撉","撴","犜","獤","礅","蜳","蹾","驐"],fēn:["吩","帉","昐","朆","梤","棻","氛","竕","紛","纷","翂","芬","衯","訜","躮","酚","鈖","雰","餴","饙","馚"],"é huā":["吪"],"kēng háng":["吭","妔"],shǔn:["吮"],"zhī zī":["吱"],"yǐn shěn":["吲"],wú:["吳","吴","呉","墲","峿","梧","橆","毋","洖","浯","無","珸","璑","祦","芜","茣","莁","蕪","蜈","蟱","譕","郚","鋙","铻","鯃","鵐","鷡","鹀","鼯"],"chǎo chāo":["吵"],"nà nè":["吶"],"xuè chuò jué":["吷"],chuī:["吹","炊","龡"],"dōu rú":["吺"],hǒu:["吼","犼"],"hōng hǒu ōu":["吽"],"wú yù":["吾"],"ya yā":["呀"],"è e":["呃"],dāi:["呆","懛","獃"],"mèn qǐ":["呇"],hōng:["呍","嚝","揈","灴","烘","焢","硡","薨","訇","谾","軣","輷","轟","轰","鍧"],nà:["呐","捺","笝","納","纳","肭","蒳","衲","豽","貀","軜","郍","鈉","钠","靹","魶"],"tūn tiān":["呑"],"fǔ ḿ":["呒","嘸"],"dāi tǎi":["呔"],"ǒu ōu òu":["呕"],"bài bei":["呗"],"yuán yún yùn":["员","員"],guō:["呙","啯","嘓","埚","堝","墎","崞","彉","彍","懖","猓","瘑","聒","蝈","蟈","郭","鈛","鍋","锅"],"huá qì":["呚"],"qiàng qiāng":["呛","跄"],shī:["呞","失","尸","屍","师","師","施","浉","湤","湿","溮","溼","濕","狮","獅","瑡","絁","葹","蒒","蓍","虱","蝨","褷","襹","詩","诗","邿","釃","鉇","鍦","鯴","鰤","鲺","鳲","鳾","鶳","鸤","䴓","𫚕"],juǎn:["呟","埍","臇","菤","錈","锩"],pěn:["呠","翸"],"wěn mǐn":["呡"],"ne ní":["呢"],"ḿ m̀ móu":["呣"],rán:["呥","嘫","然","燃","繎","肰","蚦","蚺","衻","袇","袡","髥","髯"],"tiè chè":["呫"],"qì zhī":["呮"],"zǐ cī":["呰"],"guā gū guǎ":["呱"],"cī zī":["呲"],"hǒu xǔ gòu":["呴"],"hē ā á ǎ à a":["呵"],náo:["呶","夒","峱","嶩","巎","挠","撓","猱","硇","蛲","蟯","詉","譊","鐃","铙"],"xiā gā":["呷"],pēi:["呸","怌","肧","胚","衃","醅"],"háo xiāo":["呺"],mìng:["命","掵"],"dá dàn":["呾"],"zuǐ jǔ":["咀"],"xián gān":["咁"],pǒu:["咅","哣","犃"],"yǎng yāng":["咉"],"zǎ zé zhā":["咋"],"hé hè huó huò hú":["和"],hāi:["咍"],dā:["咑","哒","噠","墶","搭","撘","耷","褡","鎝","𨱏"],"kǎ kā":["咔"],gū:["咕","唂","唃","姑","嫴","孤","巬","巭","柧","橭","沽","泒","稒","笟","箍","箛","篐","罛","苽","菇","菰","蓇","觚","軱","軲","轱","辜","酤","鈲","鮕","鴣","鸪"],"kā gā":["咖"],zuo:["咗"],lóng:["咙","嚨","嶐","巃","巄","昽","曨","朧","栊","槞","櫳","湰","滝","漋","爖","珑","瓏","癃","眬","矓","砻","礱","礲","窿","竜","聋","聾","胧","茏","蘢","蠪","蠬","襱","豅","鏧","鑨","霳","靇","驡","鸗","龍","龒","龙"],"xiàn xián":["咞"],qì:["咠","唭","噐","器","夡","弃","憇","憩","暣","棄","欫","气","気","氣","汔","汽","泣","湆","湇","炁","甈","盵","矵","碛","碶","磜","磧","罊","芞","葺","藒","蟿","訖","讫","迄","鐑"],"xì dié":["咥"],"liē liě lié lie":["咧"],zī:["咨","嗞","姕","姿","孜","孳","孶","崰","嵫","栥","椔","淄","湽","滋","澬","玆","禌","秶","粢","紎","緇","緕","纃","缁","茊","茲","葘","諮","谘","貲","資","赀","资","赼","趑","趦","輜","輺","辎","鄑","鈭","錙","鍿","鎡","锱","镃","頾","頿","髭","鯔","鰦","鲻","鶅","鼒","齍","齜","龇"],mī:["咪"],"jī xī qià":["咭"],"gē luò kǎ lo":["咯"],"shù xún":["咰"],"zán zá zǎ zan":["咱"],"hāi ké":["咳"],huī:["咴","噅","噕","婎","媈","幑","徽","恢","拻","挥","揮","晖","暉","楎","洃","瀈","灰","灳","烣","睳","禈","翚","翬","蘳","袆","褘","詼","诙","豗","輝","辉","鰴","麾","㧑"],"huài shì":["咶"],táo:["咷","啕","桃","檮","洮","淘","祹","綯","绹","萄","蜪","裪","迯","逃","醄","鋾","鞀","鞉","饀","駣","騊","鼗","𫘦"],xián:["咸","啣","娴","娹","婱","嫌","嫺","嫻","弦","挦","撏","涎","湺","澖","甉","痫","癇","癎","絃","胘","舷","藖","蚿","蛝","衔","衘","誸","諴","賢","贒","贤","輱","醎","銜","鑦","閑","闲","鷳","鷴","鷼","鹇","鹹","麙","𫍯"],"è àn":["咹"],"xuān xuǎn":["咺","烜"],"wāi hé wǒ guǎ guō":["咼"],"yàn yè yān":["咽"],āi:["哀","哎","埃","溾","銰","鎄","锿"],pǐn:["品","榀"],shěn:["哂","婶","嬸","审","宷","審","弞","曋","渖","瀋","瞫","矤","矧","覾","訠","諗","讅","谂","谉","邥","頣","魫"],"hǒng hōng hòng":["哄"],"wā wa":["哇"],"hā hǎ hà":["哈"],zāi:["哉","栽","渽","溨","災","灾","烖","睵","賳"],"dì diè":["哋"],pài:["哌","沠","派","渒","湃","蒎","鎃"],"gén hěn":["哏"],"yǎ yā":["哑","雅"],"yuě huì":["哕","噦"],nián:["哖","年","秊","秥","鮎","鯰","鲇","鲶","鵇","黏"],"huá huā":["哗","嘩"],"jì jiē zhāi":["哜","嚌"],mōu:["哞"],"yō yo":["哟","喲"],lòng:["哢","梇","贚"],"ò ó é":["哦"],"lī lǐ li":["哩"],"nǎ na nǎi né něi":["哪"],hè:["哬","垎","壑","寉","惒","焃","煂","燺","爀","癋","碋","翯","褐","謞","賀","贺","赫","靍","靎","靏","鶴","鸖","鹤"],"bō pò bā":["哱"],zhé:["哲","啠","喆","嚞","埑","悊","摺","晢","晣","歽","矺","砓","磔","籷","粍","虴","蛰","蟄","袩","詟","謫","謺","讁","讋","谪","輒","輙","轍","辄","辙","鮿"],"liàng láng":["哴"],"liè lǜ":["哷"],hān:["哻","憨","蚶","谽","酣","頇","顸","馠","魽","鼾"],"hēng hng":["哼"],gěng:["哽","埂","峺","挭","梗","綆","绠","耿","莄","郠","骾","鯁","鲠","𬒔"],"chuò yuè":["哾"],"gě jiā":["哿"],"bei bài":["唄"],"hán hàn":["唅"],chún:["唇","浱","湻","滣","漘","犉","純","纯","脣","莼","蒓","蓴","醇","醕","錞","陙","鯙","鶉","鹑","𬭚"],"ài āi":["唉"],"jiá qiǎn":["唊"],"yán dàn xián":["唌"],chē:["唓","砗","硨","莗","蛼"],"wú ńg ń":["唔"],zào:["唕","唣","噪","慥","梍","灶","煰","燥","皁","皂","竃","竈","簉","艁","譟","趮","躁","造","𥖨"],dí:["唙","啇","嘀","嚁","嫡","廸","敌","敵","梑","涤","滌","狄","笛","籴","糴","苖","荻","蔋","蔐","藡","覿","觌","豴","迪","靮","頔","馰","髢","鸐","𬱖"],"gòng hǒng gǒng":["唝","嗊"],dóu:["唞"],"lào láo":["唠","嘮","憦"],huàn:["唤","喚","奂","奐","宦","嵈","幻","患","愌","换","換","擐","攌","梙","槵","浣","涣","渙","漶","澣","烉","焕","煥","瑍","痪","瘓","睆","肒","藧","豢","轘","逭","鯇","鯶","鰀","鲩"],léng:["唥","塄","楞","碐","薐"],"wō wěi":["唩"],fěng:["唪","覂","諷","讽"],"yín jìn":["唫"],"hǔ xià":["唬"],wéi:["唯","围","圍","壝","峗","峞","嵬","帏","帷","幃","惟","桅","沩","洈","涠","湋","溈","潍","潙","潿","濰","犩","矀","維","维","蓶","覹","违","違","鄬","醀","鍏","闈","闱","韋","韦","鮠","𣲗","𬶏"],shuā:["唰"],chàng:["唱","怅","悵","暢","焻","畅","畼","誯","韔","鬯"],"ér wā":["唲"],qiàng:["唴","炝","熗","羻"],yō:["唷"],yū:["唹","淤","瘀","盓","箊","紆","纡","込","迂","迃","陓"],lài:["唻","濑","瀨","瀬","癞","癩","睐","睞","籁","籟","藾","賚","賴","赉","赖","頼","顂","鵣"],tuò:["唾","嶞","柝","毤","毻","箨","籜","萚","蘀","跅"],"zhōu zhāo tiào":["啁"],kěn:["啃","垦","墾","恳","懇","肎","肯","肻","豤","錹"],"zhuó zhào":["啅","濯"],"hēng hèng":["啈","悙"],"lín lán":["啉"],"a ā á ǎ à":["啊"],qiāng:["啌","嗴","嶈","戕","摤","斨","枪","槍","溬","牄","猐","獇","羌","羗","腔","蜣","謒","鏘","锖","锵"],"tūn zhūn xiāng duǐ":["啍"],wèn:["問","妏","揾","搵","璺","问","顐"],"cuì qi":["啐"],"dié shà jié tì":["啑"],"yuē wā":["啘"],"zǐ cǐ":["啙"],"bǐ tú":["啚"],"chuò chuài":["啜"],"yǎ yā è":["啞"],fēi:["啡","婓","婔","扉","暃","渄","猆","緋","绯","裶","霏","非","靟","飛","飝","飞","餥","馡","騑","騛","鯡","鲱","𬴂"],pí:["啤","壀","枇","毗","毘","焷","琵","疲","皮","篺","罴","羆","脾","腗","膍","蚍","蚽","蜱","螷","蠯","豼","貔","郫","鈹","阰","陴","隦","魮","鮍","鲏","鵧","鼙"],shá:["啥"],"lā la":["啦"],"yīng qíng":["啨"],pā:["啪","妑","舥","葩","趴"],"zhě shì":["啫"],sè:["啬","嗇","懎","擌","栜","歮","涩","渋","澀","澁","濇","濏","瀒","瑟","璱","瘷","穑","穡","穯","繬","譅","轖","銫","鏼","铯","飋"],niè:["啮","嗫","噛","嚙","囁","囓","圼","孼","孽","嵲","嶭","巕","帇","敜","枿","槷","櫱","涅","湼","痆","篞","籋","糱","糵","聂","聶","臬","臲","蘖","蠥","讘","踂","踗","踙","蹑","躡","錜","鎳","鑈","鑷","钀","镊","镍","闑","陧","隉","顳","颞","齧","𫔶"],"luō luó luo":["啰","囉"],"tān chǎn tuō":["啴"],bo:["啵","蔔"],dìng:["啶","定","椗","矴","碇","碠","磸","聢","腚","萣","蝊","訂","订","錠","锭","顁","飣","饤"],lāng:["啷"],"án ān":["啽"],kā:["喀","擖"],"yóng yú":["喁"],"lā lá lǎ":["喇"],jiē:["喈","喼","嗟","堦","媘","接","掲","擑","湝","煯","疖","痎","癤","皆","秸","稭","脻","蝔","街","謯","阶","階","鞂","鶛"],hóu:["喉","帿","猴","瘊","睺","篌","糇","翭","葔","鄇","鍭","餱","骺","鯸","𬭤"],"dié zhá":["喋"],wāi:["喎","歪","竵"],"nuò rě":["喏"],"xù huò guó":["喐"],zán:["喒"],"wō ō":["喔"],hú:["喖","嘝","囫","壶","壷","壺","媩","弧","搰","斛","楜","槲","湖","瀫","焀","煳","狐","猢","瑚","瓳","箶","絗","縠","胡","葫","蔛","蝴","螜","衚","觳","醐","鍸","頶","餬","鬍","魱","鰗","鵠","鶘","鶦","鹕"],"huàn yuán xuǎn hé":["喛"],xǐ:["喜","囍","壐","屣","徙","憙","枲","橲","歖","漇","玺","璽","矖","禧","縰","葈","葸","蓰","蟢","謑","蹝","躧","鈢","鉨","鉩","鱚","𬭳","𬶮"],"hē hè yè":["喝"],kuì:["喟","嘳","媿","嬇","愦","愧","憒","篑","簣","籄","聩","聭","聵","膭","蕢","謉","餽","饋","馈"],"zhǒng chuáng":["喠"],"wéi wèi":["喡","為","爲"],"duó zhà":["喥"],"sāng sàng":["喪"],"qiáo jiāo":["喬"],"pèn bēn":["喯"],"cān sūn qī":["喰"],"zhā chā":["喳"],miāo:["喵"],"pēn pèn":["喷"],kuí:["喹","夔","奎","巙","戣","揆","晆","暌","楏","楑","櫆","犪","睽","葵","藈","蘷","虁","蝰","躨","逵","鄈","鍨","鍷","頯","馗","騤","骙","魁"],"lou lóu":["喽"],"zào qiāo":["喿"],"hè xiāo xiào hù":["嗃"],"á shà":["嗄"],xiù:["嗅","岫","峀","溴","珛","琇","璓","秀","綉","繍","繡","绣","螑","袖","褎","褏","銹","鏥","鏽","锈","齅"],"qiāng qiàng":["嗆","戗","戧","蹌","蹡"],"ài yì":["嗌","艾"],"má mǎ ma":["嗎"],"kè kē":["嗑"],"dā tà":["嗒","鎉"],sǎng:["嗓","搡","磉","褬","鎟","顙","颡"],chēn:["嗔","抻","琛","瞋","諃","謓","賝","郴","𬘭"],"wā gǔ":["嗗"],"pǎng bēng":["嗙"],"xián qiǎn qiān":["嗛"],lào:["嗠","嫪","橯","涝","澇","耢","耮","躼","軂","酪"],wēng:["嗡","翁","聬","螉","鎓","鶲","鹟","𬭩"],wà:["嗢","腽","膃","袜","襪","韤"],"hēi hāi":["嗨"],hē:["嗬","欱","蠚","訶","诃"],zi:["嗭"],sǎi:["嗮"],"ǹg ńg ňg":["嗯"],gě:["嗰","舸"],ná:["嗱","拏","拿","鎿","镎"],diǎ:["嗲"],"ài ǎi āi":["嗳"],tōng:["嗵","樋","炵","蓪"],"zuī suī":["嗺"],"zhē zhè zhù zhe":["嗻"],mò:["嗼","圽","塻","墨","妺","嫼","寞","帞","昩","末","枺","歿","殁","沫","漠","爅","獏","瘼","皌","眽","眿","瞐","瞙","砞","礳","秣","絈","纆","耱","茉","莈","蓦","蛨","蟔","貃","貊","貘","銆","鏌","镆","陌","靺","驀","魩","默","黙","𬙊"],sòu:["嗽","瘶"],tǎn:["嗿","坦","忐","憳","憻","暺","毯","璮","菼","袒","襢","醓","鉭","钽"],"jiào dǎo":["嘄"],"kǎi gě":["嘅"],"shān càn":["嘇"],cáo:["嘈","嶆","曹","曺","槽","漕","艚","蓸","螬","褿","鏪","𥕢"],piào:["嘌","徱","蔈","驃"],"lóu lou":["嘍"],gǎ:["尕","玍"],"gǔ jiǎ":["嘏"],"jiāo xiāo":["嘐"],"xū shī":["嘘","噓"],pó:["嘙","嚩","婆","櫇","皤","鄱"],"dē dēi":["嘚"],"ma má":["嘛"],"lē lei":["嘞"],"gā gá gǎ":["嘠"],sāi:["嘥","噻","毢","腮","顋","鰓"],"zuō chuài":["嘬"],"cháo zhāo":["嘲","朝","鼂"],zuǐ:["嘴","噿","嶊","璻"],"qiáo qiào":["嘺","翹","谯"],"chù xù shòu":["嘼"],"tān chǎn":["嘽"],"dàn tán":["嘾","弾","彈","惔","澹"],"hēi mò":["嘿"],ě:["噁","砨","頋","騀","鵈"],"fān bo":["噃"],chuáng:["噇","床","牀"],"cù zā hé":["噈"],"tūn kuò":["噋"],"cēng chēng":["噌"],dēng:["噔","嬁","灯","燈","璒","登","竳","簦","艠","豋"],pū:["噗","扑","撲","攴","攵","潽","炇","陠"],juē:["噘","屩","屫","撧"],lū:["噜","嚕","撸","擼","謢"],zhān:["噡","岾","惉","旃","旜","枬","栴","毡","氈","氊","沾","瞻","薝","蛅","詀","詹","譫","谵","趈","邅","閚","霑","飦","饘","驙","魙","鱣","鸇","鹯","𫗴"],ō:["噢"],"zhòu zhuó":["噣"],"jiào qiào chī":["噭"],yuàn:["噮","妴","怨","愿","掾","瑗","禐","苑","衏","裫","褑","院","願"],"ǎi ài āi":["噯"],"yōng yǒng":["噰","澭"],"jué xué":["噱"],"pēn pèn fèn":["噴"],gá:["噶","尜","釓","錷","钆"],"xīn hěn hèn":["噷"],dāng:["噹","澢","珰","璫","筜","簹","艡","蟷","裆","襠"],làn:["嚂","滥","濫","烂","燗","爁","爛","爤","瓓","糷","钄"],tà:["嚃","嚺","崉","挞","搨","撻","榻","橽","毾","涾","澾","濌","禢","粏","誻","譶","蹋","蹹","躂","躢","遝","錔","闒","闥","闼","阘","鞜","鞳"],"huō huò ǒ":["嚄"],hāo:["嚆","茠","蒿","薅"],"hè xià":["嚇"],"xiù pì":["嚊"],"zhōu chóu":["嚋","盩","诪"],mē:["嚒"],"chā cā":["嚓"],"bó pào bào":["嚗"],"me mèi mò":["嚜"],"xié hái":["嚡"],"áo xiāo":["嚣"],mō:["嚤","摸"],pín:["嚬","娦","嫔","嬪","玭","矉","薲","蠙","貧","贫","顰","颦","𬞟"],mè:["嚰","濹"],"rǎng rāng":["嚷"],lá:["嚹","旯"],"jiáo jué jiào":["嚼"],chuò:["嚽","娖","擉","歠","涰","磭","踀","輟","辍","辵","辶","酫","鑡","餟","齪","龊"],"huān huàn":["嚾"],"zá cà":["囃"],chài:["囆","虿","蠆","袃","訍"],"náng nāng":["囊"],"zá zàn cān":["囋"],sū:["囌","櫯","甦","稣","穌","窣","蘇","蘓","酥","鯂"],zèng:["囎","熷","甑","贈","赠","鋥","锃"],"zá niè yàn":["囐"],nāng:["囔"],"luó luō luo":["囖"],"wéi guó":["囗"],huí:["囘","回","囬","廻","廽","恛","洄","痐","茴","蚘","蛔","蛕","蜖","迴","逥","鮰"],nín:["囜","您","脌"],"jiǎn nān":["囝"],nān:["囡"],tuán:["团","団","團","慱","抟","摶","檲","糰","鏄","鷒","鷻"],"tún dùn":["囤","坉"],guó:["囯","囶","囻","国","圀","國","帼","幗","慖","摑","漍","聝","腘","膕","蔮","虢","馘","𬇹"],kùn:["困","涃","睏"],"wéi tōng":["囲"],qūn:["囷","夋","逡"],rì:["囸","日","衵","鈤","馹","驲"],tāi:["囼","孡","胎"],pǔ:["圃","圑","擈","普","暜","樸","檏","氆","浦","溥","烳","諩","譜","谱","蹼","鐠","镨"],"quān juàn juān":["圈","圏"],"chuí chuán":["圌"],tuǎn:["圕","畽","疃"],lüè:["圙","掠","略","畧","稤","鋝","鋢","锊","䂮"],"huán yuán":["圜"],luán:["圝","圞","奱","娈","孌","孪","孿","峦","巒","挛","攣","曫","栾","欒","滦","灤","癴","癵","羉","脔","臠","虊","銮","鑾","鵉","鸞","鸾"],tǔ:["土","圡","釷","钍"],"xū wéi":["圩"],"dì de":["地","嶳"],"qiān sú":["圱"],zhèn:["圳","塦","挋","振","朕","栚","甽","眹","紖","絼","纼","誫","賑","赈","鋴","鎭","鎮","镇","阵","陣","震","鴆","鸩"],"chǎng cháng":["场","場","塲"],"qí yín":["圻"],jiá:["圿","忦","恝","戞","扴","脥","荚","莢","蛱","蛺","裌","跲","郏","郟","鋏","铗","頬","頰","颊","鴶","鵊"],"zhǐ zhì":["坁"],bǎn:["坂","岅","昄","板","版","瓪","粄","舨","蝂","鈑","钣","阪","魬"],qǐn:["坅","寑","寝","寢","昑","梫","笉","螼","赾","鋟","锓"],"méi fén":["坆"],"rǒng kēng":["坈"],"fāng fáng":["坊"],"fèn bèn":["坋"],tān:["坍","怹","摊","擹","攤","滩","灘","瘫","癱","舑","貪","贪"],"huài pēi pī péi":["坏"],"dì làn":["坔"],tán:["坛","墰","墵","壇","壜","婒","憛","昙","曇","榃","檀","潭","燂","痰","磹","罈","罎","藫","談","譚","譠","谈","谭","貚","郯","醰","錟","顃"],bà:["坝","垻","壩","弝","欛","灞","爸","矲","覇","霸","鮁","鲅"],fén:["坟","墳","妢","岎","幩","枌","棼","汾","焚","燌","燓","羒","羵","蒶","蕡","蚠","蚡","豮","豶","轒","鐼","隫","馩","魵","黂","鼖","鼢","𣸣"],zhuì:["坠","墜","惴","甀","畷","礈","綴","縋","缀","缒","腏","膇","諈","贅","赘","醊","錣","鑆"],pō:["坡","岥","泼","溌","潑","釙","鏺","钋","頗","颇","䥽"],"pǎn bàn":["坢"],kūn:["坤","堃","堒","崐","崑","昆","晜","潉","焜","熴","猑","琨","瑻","菎","蜫","裈","裩","褌","醌","錕","锟","騉","髠","髡","髨","鯤","鲲","鵾","鶤","鹍"],diàn:["坫","垫","墊","壂","奠","婝","店","惦","扂","橂","殿","淀","澱","玷","琔","电","癜","簟","蜔","鈿","電","靛","驔"],"mù mǔ":["坶"],"kē kě":["坷","軻"],xuè:["坹","岤","桖","瀥","狘","瞲","謔","谑","趐"],"dǐ chí":["坻","柢"],lā:["垃","柆","菈","邋"],lǒng:["垄","垅","壟","壠","拢","攏","竉","陇","隴","𬕂"],mín:["垊","姄","岷","崏","捪","旻","旼","民","珉","琘","琝","瑉","痻","盿","砇","緍","緡","缗","罠","苠","鈱","錉","鍲","鴖"],"dòng tóng":["垌","峒","洞"],cí:["垐","嬨","慈","柌","濨","珁","瓷","甆","磁","礠","祠","糍","茨","詞","词","辝","辞","辤","辭","雌","飺","餈","鴜","鶿","鷀","鹚"],duī:["垖","堆","塠","痽","磓","鐓","鐜","鴭"],"duò duǒ":["垛"],"duǒ duò":["垜","挆"],chá:["垞","察","嵖","搽","槎","檫","猹","茬","茶","詧","靫","𥻗"],shǎng:["垧","晌","樉","賞","贘","赏","鋿","鏛","鑜"],shǒu:["垨","守","手","扌","艏","首"],da:["垯","繨","跶"],háng:["垳","斻","杭","筕","絎","绗","航","苀","蚢","裄","貥","迒","頏","颃","魧"],"ān ǎn":["垵"],xīng:["垶","惺","星","曐","煋","猩","瑆","皨","篂","腥","興","觪","觲","謃","騂","骍","鮏","鯹"],"yuàn huán":["垸"],bāng:["垹","帮","幇","幚","幫","捠","梆","浜","邦","邫","鞤","𠳐"],"póu fú":["垺"],cén:["埁","岑","涔"],"běng fēng":["埄"],"dì fáng":["埅"],"xiá jiā":["埉"],"mái mán":["埋"],làng:["埌","崀","浪","蒗","閬","㫰"],"shān yán":["埏"],"qín jīn":["埐"],"pǔ bù":["埔"],huā:["埖","婲","椛","硴","糀","花","蒊","蘤","誮","錵"],"suì sù":["埣"],"pí pì":["埤"],"qīng zhēng":["埥","鲭"],"wǎn wān":["埦"],lǔn:["埨","稐","𫭢"],"zhēng chéng":["埩"],kōng:["埪","崆","箜","躻","錓","鵼"],"cǎi cài":["埰","寀","采"],"chù tòu":["埱"],běng:["埲","琫","菶","鞛"],"kǎn xiàn":["埳"],"yì shì":["埶","醳"],péi:["培","毰","裴","裵","賠","赔","錇","锫","阫","陪"],"sào sǎo":["埽"],"jǐn qīn jìn":["堇"],"péng bèng":["堋"],"qiàn zàn jiàn":["堑"],àn:["堓","屵","岸","按","暗","案","胺","荌","豻","貋","錌","闇","隌","黯"],"duò huī":["堕","墮"],huán:["堚","寏","寰","峘","桓","洹","澴","獂","环","環","糫","繯","缳","羦","荁","萈","萑","豲","鍰","鐶","锾","镮","闤","阛","雈","鬟","鹮","𬘫","𤩽"],"bǎo bǔ pù":["堡"],"máo móu wǔ":["堥"],ruán:["堧","壖","撋"],"ài è yè":["堨"],gèng:["堩","暅"],méi:["堳","塺","媒","嵋","徾","攗","枚","栂","梅","楣","楳","槑","湄","湈","煤","猸","玫","珻","瑂","眉","睂","禖","脄","脢","腜","苺","莓","葿","郿","酶","鎇","镅","霉","鶥","鹛","黴"],dǔ:["堵","琽","睹","笃","篤","覩","賭","赌"],féng:["堸","綘","艂","逢"],hèng:["堼"],chūn:["堾","媋","旾","春","暙","杶","椿","槆","橁","櫄","瑃","箺","萅","蝽","輴","鰆","鶞","䲠"],jiǎng:["塂","奖","奨","奬","桨","槳","獎","耩","膙","蒋","蔣","講","讲","顜"],huāng:["塃","巟","慌","肓","荒","衁"],duàn:["塅","断","斷","椴","段","毈","煅","瑖","碫","簖","籪","緞","缎","腶","葮","躖","鍛","锻"],tǎ:["塔","墖","獭","獺","鮙","鰨","鳎"],wěng:["塕","奣","嵡","攚","暡","瞈","蓊"],"sāi sài sè":["塞"],zàng:["塟","弉","臓","臟","葬","蔵","銺"],tián:["塡","屇","恬","沺","湉","璳","甛","甜","田","畋","畑","碵","磌","胋","闐","阗","鴫","鷆","鷏"],zhèng:["塣","幁","政","証","諍","證","证","诤","郑","鄭","靕","鴊"],"tián zhèn":["填"],wēn:["塭","昷","榲","殟","温","溫","瑥","瘟","蕰","豱","輼","轀","辒","鎾","饂","鰛","鰮","鳁"],liù:["塯","廇","磟","翏","雡","霤","餾","鬸","鷚","鹨"],hǎi:["塰","海","烸","酼","醢"],lǎng:["塱","朖","朗","朤","烺","蓢","㮾"],bèng:["塴","揼","泵","甏","綳","蹦","迸","逬","鏰","镚"],chén:["塵","宸","尘","忱","敐","敶","晨","曟","栕","樄","沉","煁","瘎","臣","茞","莀","莐","蔯","薼","螴","訦","諶","軙","辰","迧","鈂","陈","陳","霃","鷐","麎"],"ōu qiū":["塸"],"qiàn jiàn":["塹"],"zhuān tuán":["塼"],shuǎng:["塽","慡","漺","爽","縔","鏯"],shú:["塾","婌","孰","璹","秫","贖","赎"],lǒu:["塿","嵝","嶁","甊","篓","簍"],chí:["墀","弛","持","池","漦","竾","筂","箎","篪","茌","荎","蚳","謘","貾","赿","踟","迟","迡","遅","遟","遲","鍉","馳","驰"],shù:["墅","庶","庻","怷","恕","戍","束","树","樹","沭","漱","潄","濖","竖","竪","絉","腧","荗","蒁","虪","術","裋","豎","述","鉥","錰","鏣","霔","鶐","𬬸"],"dì zhì":["墆","疐"],kàn:["墈","崁","瞰","矙","磡","衎","鬫"],chěn:["墋","夦","硶","碜","磣","贂","趻","踸","鍖"],"zhǐ zhuó":["墌"],qiǎng:["墏","繈","繦","羥","襁"],zēng:["増","增","憎","璔","矰","磳","罾","譄","鄫","鱛","䎖"],qiáng:["墙","墻","嫱","嬙","樯","檣","漒","牆","艢","蔃","蔷","蘠"],"kuài tuí":["墤"],"tuǎn dǒng":["墥"],"qiáo què":["墧"],"zūn dūn":["墫"],"qiāo áo":["墽"],"yì tú":["墿"],"xué bó jué":["壆"],lǎn:["壈","嬾","孄","孏","懒","懶","揽","擥","攬","榄","欖","浨","漤","灠","纜","缆","罱","覧","覽","览","醂","顲"],huài:["壊","壞","蘾"],rǎng:["壌","壤","攘","爙"],"làn xiàn":["壏"],dǎo:["壔","导","導","岛","島","嶋","嶌","嶹","捣","搗","擣","槝","祷","禂","禱","蹈","陦","隝","隯"],ruǐ:["壡","桵","橤","繠","蕊","蕋","蘂","蘃"],san:["壭"],zhuàng:["壮","壯","壵","撞","焋","状","狀"],"ké qiào":["壳","殼"],kǔn:["壸","壼","悃","捆","梱","硱","祵","稇","稛","綑","裍","閫","閸","阃"],mǎng:["壾","漭","茻","莽","莾","蠎"],cún:["壿","存"],"zhǐ zhōng":["夂"],"gǔ yíng":["夃"],"jiàng xiáng":["夅","降"],"páng féng fēng":["夆"],zhāi:["夈","捚","摘","斋","斎","榸","粂","齋"],"xuàn xiòng":["夐"],wài:["外","顡"],"wǎn yuàn wān yuān":["夗"],"mǎo wǎn":["夘"],mèng:["夢","夣","孟","梦","癦","霥"],"dà dài":["大"],"fū fú":["夫","姇","枎","粰"],guài:["夬","怪","恠"],yāng:["央","姎","抰","殃","泱","秧","胦","鉠","鍈","雵","鴦","鸯"],"hāng bèn":["夯"],gǎo:["夰","搞","杲","槀","槁","檺","稁","稾","稿","縞","缟","菒","藁","藳"],"tāo běn":["夲"],"tóu tou":["头"],"yǎn tāo":["夵"],"kuā kuà":["夸","誇"],"jiá jiā gā xiá":["夹"],huà:["夻","婳","嫿","嬅","崋","摦","杹","枠","桦","槬","樺","澅","画","畫","畵","繣","舙","話","諙","譮","话","黊"],"jiā jiá gā xiá":["夾"],ēn:["奀","恩","蒽"],"dī tì":["奃"],"yǎn yān":["奄","渰"],pào:["奅","疱","皰","砲","礟","礮","靤","麭"],nài:["奈","柰","渿","耐","萘","褦","錼","鼐"],"quān juàn":["奍","弮","棬"],zòu:["奏","揍"],"qì qiè xiè":["契"],kāi:["奒","开","揩","鐦","锎","開"],"bēn bèn":["奔","泍"],tào:["套"],"zàng zhuǎng":["奘"],běn:["奙","本","楍","畚","翉","苯"],"xùn zhuì":["奞"],shē:["奢","檨","猞","畭","畲","賒","賖","赊","輋","𪨶"],"hǎ pò tǎi":["奤"],"ào yù":["奥","奧","澚"],yūn:["奫","氲","氳","蒀","蒕","蝹","贇","赟","𫖳"],"duǒ chě":["奲"],"nǚ rǔ":["女"],nú:["奴","孥","笯","駑","驽"],"dīng dǐng tiǎn":["奵"],"tā jiě":["她"],nuán:["奻"],"hǎo hào":["好"],fàn:["奿","嬎","梵","汎","泛","滼","瀪","犯","畈","盕","笵","範","范","訉","販","贩","軬","輽","飯","飰","饭"],shuò:["妁","搠","朔","槊","烁","爍","矟","蒴","鎙","鑠","铄"],"fēi pèi":["妃"],wàng:["妄","忘","旺","望","朢"],zhuāng:["妆","妝","娤","庄","庒","桩","梉","樁","粧","糚","荘","莊","装","裝"],mā:["妈","媽"],"fū yōu":["妋"],"hài jiè":["妎"],dù:["妒","妬","杜","殬","渡","秺","芏","荰","螙","蠧","蠹","鍍","镀","靯","𬭊"],miào:["妙","庙","庿","廟","玅","竗"],"fǒu pēi pī":["妚"],"yuè jué":["妜"],niū:["妞"],"nà nàn":["妠"],tuǒ:["妥","嫷","庹","椭","楕","橢","鬌","鰖","鵎"],"wàn yuán":["妧"],fáng:["妨","房","肪","防","魴","鲂"],nī:["妮"],zhóu:["妯","碡"],zhāo:["妱","巶","招","昭","釗","鉊","鍣","钊","駋","𬬿"],"nǎi nǐ":["妳"],tǒu:["妵","敨","紏","蘣","黈"],"xián xuán xù":["妶"],"zhí yì":["妷","秇"],ē:["妸","妿","婀","屙"],mèi:["妹","媚","寐","抺","旀","昧","沬","煝","痗","眛","睸","祙","篃","蝞","袂","跊","鬽","魅"],"qī qì":["妻"],"xū xǔ":["姁","稰"],"shān shàn":["姍","姗","苫","釤","钐"],mán:["姏","慲","樠","蛮","蠻","謾","饅","馒","鬗","鬘","鰻","鳗"],jiě:["姐","媎","檞","毑","飷"],"wěi wēi":["委"],pīn:["姘","拼","礗","穦","馪","驞"],"huá huó":["姡"],"jiāo xiáo":["姣"],"gòu dù":["姤"],"lǎo mǔ":["姥"],"nián niàn":["姩"],zhěn:["姫","屒","弫","抮","昣","枕","畛","疹","眕","稹","縝","縥","缜","聄","萙","袗","裖","覙","診","诊","軫","轸","辴","駗","鬒"],héng:["姮","恆","恒","烆","珩","胻","蘅","衡","鑅","鴴","鵆","鸻"],"jūn xún":["姰"],"kuā hù":["姱"],"è yà":["姶"],"xiān shēn":["姺"],wá:["娃"],"ráo rǎo":["娆","嬈"],"shào shāo":["娋"],xiē:["娎","揳","楔","歇","蝎","蠍"],"wǔ méi mǔ":["娒"],"chuò lài":["娕"],niáng:["娘","嬢","孃"],"nà nuó":["娜","𦰡"],"pōu bǐ":["娝"],"něi suī":["娞"],tuì:["娧","煺","蛻","蜕","退","駾"],mǎn:["娨","屘","満","满","滿","螨","蟎","襔","鏋"],"wú wù yú":["娪"],"xī āi":["娭"],"zhuì shuì":["娷"],"dōng dòng":["娻"],"ǎi ái è":["娾"],"ē ě":["娿"],mián:["婂","嬵","宀","杣","棉","檰","櫋","眠","矈","矊","矏","綿","緜","绵","芇","蝒"],"pǒu péi bù":["婄"],biǎo:["婊","脿","表","裱","褾","諘","錶"],"fù fàn":["婏"],wǒ:["婐","婑","我"],"ní nǐ":["婗","棿"],"quán juàn":["婘","惓"],hūn:["婚","昏","昬","棔","涽","睧","睯","碈","荤","葷","蔒","轋","閽","阍"],"qiān jǐn":["婜"],"wān wà":["婠"],"lái lài":["婡","徕","徠"],"zhōu chōu":["婤"],"chuò nào":["婥"],"nüè àn":["婩"],"hùn kūn":["婫"],"dàng yáng":["婸"],nàn:["婻"],"ruò chuò":["婼"],jiǎ:["婽","岬","斚","斝","榎","槚","檟","玾","甲","胛","鉀","钾"],"tōu yú":["婾","媮"],"yù yú":["媀"],"wéi wěi":["媁"],"dì tí":["媂","珶","苐"],róu:["媃","揉","柔","渘","煣","瑈","瓇","禸","粈","糅","脜","腬","葇","蝚","蹂","輮","鍒","鞣","騥","鰇","鶔","𫐓"],"ruǎn nèn":["媆"],miáo:["媌","嫹","描","瞄","苗","鶓","鹋"],"yí pèi":["媐"],"mián miǎn":["媔"],"tí shì":["媞","惿"],"duò tuó":["媠","沲"],ǎo:["媪","媼","艹","芺","袄","襖","镺"],"chú zòu":["媰"],yìng:["媵","映","暎","硬","膡","鱦"],"qín shēn":["嫀"],jià:["嫁","幏","架","榢","稼","駕","驾"],sǎo:["嫂"],"zhēn zhěn":["嫃"],"jiē suǒ":["嫅"],"míng mǐng":["嫇"],niǎo:["嫋","嬝","嬲","茑","蔦","袅","裊","褭","鸟"],tāo:["嫍","幍","弢","慆","掏","搯","槄","涛","滔","濤","瑫","絛","縚","縧","绦","詜","謟","轁","鞱","韜","韬","飸","饕"],biáo:["嫑"],"piáo piāo":["嫖","薸"],xuán:["嫙","悬","懸","暶","檈","漩","玄","璇","璿","痃","蜁","𫠊"],"màn mān":["嫚"],kāng:["嫝","嵻","康","慷","槺","漮","砊","穅","糠","躿","鏮","鱇","𡐓","𩾌"],"hān nǎn":["嫨"],nèn:["嫩","嫰"],zhē:["嫬","遮"],"mā má":["嫲"],piè:["嫳"],zhǎn:["嫸","展","搌","斩","斬","琖","盏","盞","輾","醆","颭","飐"],"xiān yǎn jìn":["嬐"],liǎn:["嬚","敛","斂","琏","璉","羷","脸","臉","蔹","蘝","蘞","裣","襝","鄻"],"qióng huán xuān":["嬛"],dǒng:["嬞","懂","箽","董","蕫","諌"],cān:["嬠","湌","爘","飡","餐","驂","骖"],tiǎo:["嬥","宨","晀","朓","窱","脁"],bí:["嬶","荸","鼻"],liǔ:["嬼","柳","栁","桞","桺","橮","熮","珋","綹","绺","罶","羀","鋶","锍"],"qiān xiān":["孅","欦"],"xié huī":["孈"],"huān quán":["孉"],"lí lì":["孋","麗"],"zhú chuò":["孎"],kǒng:["孔","恐"],"mā zī":["孖"],"sūn xùn":["孙","孫"],"bèi bó":["孛","誖"],"yòu niū":["孧"],zhuǎn:["孨","竱","轉"],hái:["孩","骸"],nāo:["孬"],"chán càn":["孱"],bò:["孹","檗","蘗","譒"],nái:["孻","腉"],"níng nìng":["宁","寍","寗","寜","寧","甯"],zhái:["宅"],"tū jiā":["宊"],sòng:["宋","訟","誦","讼","诵","送","鎹","頌","颂","餸"],ròu:["宍","肉","譳"],zhūn:["宒","窀","衠","諄","谆","迍"],"mì fú":["宓"],"dàng tàn":["宕"],"wǎn yuān":["宛"],chǒng:["宠","寵"],qún:["宭","峮","帬","羣","群","裙","裠"],zǎi:["宰","崽"],"bǎo shí":["宲"],"jiā jia jie":["家"],"huāng huǎng":["宺"],kuān:["宽","寛","寬","臗","鑧","髋","髖"],"sù xiǔ xiù":["宿"],"jié zǎn":["寁"],"bìng bǐng":["寎"],"jìn qǐn":["寖"],"lóu jù":["寠"],"xiě xiè":["寫"],"qīn qìn":["寴"],cùn:["寸","籿"],duì:["对","対","對","怼","憝","懟","濧","瀩","碓","祋","綐","薱","譈","譵","轛","队","陮"],"lüè luó":["寽"],"shè yè yì":["射"],"jiāng jiàng qiāng":["将"],"jiāng jiàng":["將","浆","漿","畺"],zūn:["尊","嶟","樽","罇","遵","鐏","鱒","鳟","鶎","鷷","𨱔"],"shù zhù":["尌","澍"],xiǎo:["小","晓","暁","曉","皛","皢","筱","筿","篠","謏","𫍲"],"jié jí":["尐","诘","鞊"],"shǎo shào":["少"],ěr:["尒","尓","尔","栮","毦","洱","爾","珥","耳","薾","衈","趰","迩","邇","鉺","铒","餌","饵","駬"],"wāng yóu":["尢"],wāng:["尣","尩","尪","尫","汪"],liào:["尥","尦","廖","撂","料","炓","窷","鐐","镣","𪤗"],"méng máng lóng páng":["尨"],gà:["尬","魀"],"kuì kuǐ":["尯"],tuí:["尵","弚","穨","蘈","蹪","隤","頹","頺","頽","颓","魋","𬯎"],yǐn:["尹","嶾","引","朄","檃","檼","櫽","淾","濥","瘾","癮","粌","蘟","蚓","螾","讔","赺","趛","輑","鈏","靷"],"chǐ chě":["尺"],kāo:["尻","髛"],"jìn jǐn":["尽"],"wěi yǐ":["尾"],"niào suī":["尿"],céng:["层","層","嶒","驓"],diǎo:["屌"],"píng bǐng bīng":["屏"],lòu:["屚","漏","瘘","瘺","瘻","鏤","镂","陋"],"shǔ zhǔ":["属","屬"],"xiè tì":["屟"],"chè cǎo":["屮"],"tún zhūn":["屯"],"nì jǐ":["屰"],"hóng lóng":["屸"],"qǐ kǎi":["岂","豈"],áng:["岇","昂","昻"],"gǎng gāng":["岗","崗"],kě:["岢","敤","渇","渴","炣"],gǒu:["岣","狗","玽","笱","耇","耈","耉","苟","豿"],tiáo:["岧","岹","樤","祒","笤","芀","萔","蓚","蓨","蜩","迢","鋚","鎥","鞗","髫","鯈","鰷","鲦","齠","龆"],"qū jū":["岨"],lǐng:["岭","嶺","領","领"],pò:["岶","敀","洦","湐","烞","珀","破","砶","粕","蒪","魄"],"bā kè":["峇"],luò:["峈","摞","洛","洜","犖","珞","笿","纙","荦","詻","雒","駱","骆","鵅"],"fù niè":["峊"],ěn:["峎"],"zhì shì":["峙","崻"],qiǎ:["峠","跒","酠","鞐"],"qiáo jiào":["峤","癄"],"xié yé":["峫"],bū:["峬","庯","晡","誧","逋","鈽","錻","钸","餔","鵏"],chóng:["崇","崈","爞","虫","蝩","蟲","褈","隀"],"zú cuì":["崒","椊"],"líng léng":["崚"],"dòng dōng":["崠"],xiáo:["崤","洨","淆","訤","誵"],"pí bǐ":["崥","芘"],"zhǎn chán":["崭","嶃","嶄"],"wǎi wēi":["崴"],"yáng dàng":["崵"],"shì dié":["崼"],yào:["崾","曜","熎","燿","矅","穾","窔","筄","耀","艞","药","葯","薬","藥","袎","覞","詏","讑","靿","鷂","鹞","鼼"],"kān zhàn":["嵁"],"hán dǎng":["嵅"],"qiàn kàn":["嵌"],"wù máo":["嵍"],"kě jié":["嵑","嶱"],"wēi wěi":["嵔"],kē:["嵙","柯","棵","榼","樖","牁","牱","犐","珂","疴","瞌","磕","礚","科","稞","窠","萪","薖","蚵","蝌","趷","轲","醘","鈳","钶","頦","顆","颗","髁"],"dàng táng":["嵣"],"róng yíng":["嵤","爃"],"ái kǎi":["嵦"],"kāo qiāo":["嵪"],cuó:["嵯","嵳","痤","矬","蒫","蔖","虘","鹺","鹾"],"qiǎn qīn":["嵰"],"dì dié":["嵽"],cēn:["嵾"],dǐng:["嵿","艼","薡","鐤","頂","顶","鼎","鼑"],"áo ào":["嶅"],"pǐ pèi":["嶏"],"jiào qiáo":["嶠","潐"],"jué guì":["嶡","鳜"],"zhān shàn":["嶦","鳣"],"xiè jiè":["嶰"],"guī xī juàn":["嶲"],rū:["嶿"],"lì liè":["巁","棙","爄","綟"],"xī guī juàn":["巂"],"yíng hōng":["巆"],yǐng:["巊","廮","影","摬","梬","潁","瘿","癭","矨","穎","郢","鐛","頴","颍","颕","颖"],chǎo:["巐","炒","煼","眧","麨"],cuán:["巑","櫕","欑"],chuān:["巛","川","氚","瑏","穿"],"jīng xíng":["巠"],cháo:["巢","巣","晁","漅","潮","牊","窲","罺","謿","轈","鄛","鼌"],qiǎo:["巧","愀","髜"],gǒng:["巩","廾","拱","拲","栱","汞","珙","輁","鞏"],"chà chā chāi cī":["差"],"xiàng hàng":["巷"],shuài:["帅","帥","蟀"],pà:["帊","帕","怕","袙"],"tǎng nú":["帑"],"mò wà":["帓"],"tiē tiě tiè":["帖"],zhǒu:["帚","晭","疛","睭","箒","肘","菷","鯞"],"juǎn juàn":["帣"],shuì:["帨","涗","涚","睡","稅","税","裞"],"chóu dào":["帱","幬"],"jiǎn jiān sàn":["帴"],"shà qiè":["帹"],"qí jì":["帺","荠"],"shān qiāo shēn":["幓"],"zhuàng chuáng":["幢"],"chān chàn":["幨"],miè:["幭","懱","搣","滅","灭","烕","礣","篾","蔑","薎","蠛","衊","鑖","鱴","鴓"],"gān gàn":["干"],"bìng bīng":["并","幷"],"jī jǐ":["幾"],"guǎng ān":["广"],guǎng:["広","廣","犷","獷"],me:["庅"],"dùn tún":["庉"],"bài tīng":["庍"],"yìng yīng":["应"],"dǐ de":["底"],"dù duó":["度"],"máng méng páng":["庬"],"bìng píng":["庰"],chěng:["庱","悜","睈","逞","騁","骋"],"jī cuò":["庴"],qǐng:["庼","廎","檾","漀","苘","請","謦","请","頃","顷"],"guī wěi huì":["廆"],"jǐn qín":["廑"],kuò:["廓","扩","拡","擴","濶","筈","萿","葀","蛞","闊","阔","霩","鞟","鞹","韕","頢","鬠"],"qiáng sè":["廧","薔"],"yǐn yìn":["廴","隐","隠","隱","飮","飲","饮"],"pò pǎi":["廹","迫"],"nòng lòng":["弄"],"dì tì tuí":["弟"],"jué zhāng":["弡"],"mí mǐ":["弥","彌","靡"],chāo:["弨","怊","抄","欩","訬","超","鈔","钞"],yi:["弬"],shāo:["弰","旓","烧","焼","燒","筲","艄","萷","蕱","輎","髾","鮹"],"xuān yuān":["弲"],"qiáng qiǎng jiàng":["強","强"],"tán dàn":["弹","醈"],biè:["彆"],"qiáng jiàng qiǎng":["彊"],"jì xuě":["彐"],tuàn:["彖","褖"],yuē:["彟","曰","曱","矱"],"shān xiǎn":["彡"],wén:["彣","文","炆","珳","瘒","繧","聞","芠","蚉","蚊","螡","蟁","閺","閿","闅","闦","闻","阌","雯","馼","駇","魰","鳼","鴍","鼤","𫘜"],"péng bāng":["彭"],"piāo piào":["彯"],"zhuó bó":["彴"],"tuǒ yí":["彵"],"páng fǎng":["彷"],wǎng:["彺","往","徃","惘","枉","棢","網","网","罒","罓","罔","罖","菵","蛧","蝄","誷","輞","辋","魍"],cú:["徂","殂"],"dài dāi":["待"],huái:["徊","怀","懐","懷","槐","淮","耲","蘹","褢","褱","踝"],"wā wàng jiā":["徍"],"chěng zhèng":["徎"],"dé děi de":["得"],"cóng zòng":["從"],"shì tǐ":["徥"],"tí chí":["徲","鶗","鶙"],dé:["徳","德","恴","悳","惪","淂","鍀","锝"],"zhǐ zhēng":["徴","徵"],bié:["徶","癿","莂","蛂","襒","蹩"],"chōng zhǒng":["徸"],"jiǎo jiào":["徼","笅","筊"],"lòng lǒng":["徿"],"qú jù":["忂","渠","瞿","螶"],"dìng tìng":["忊"],gǎi:["忋","改"],rěn:["忍","栠","栣","秹","稔","綛","荏","荵","躵"],chàn:["忏","懴","懺","硟","羼","韂","顫"],tè:["忑","慝","特","蟘","鋱","铽"],"tè tēi tuī":["忒"],"gān hàn":["忓","攼"],"yì qì":["忔"],"tài shì":["忕"],"xī liě":["忚"],"yīng yìng":["応","應","譍"],"mǐn wěn mín":["忞","忟"],"sōng zhōng":["忪"],"yù shū":["忬","悆"],"qí shì":["忯","耆"],"tún zhūn dùn":["忳"],"qián qín":["忴","扲"],hún:["忶","浑","渾","餛","馄","魂","鼲"],niǔ:["忸","扭","炄","狃","紐","纽","莥","鈕","钮","靵"],"kuáng wǎng":["忹"],"kāng hàng":["忼"],"kài xì":["忾","愾"],òu:["怄","慪"],"bǎo bào":["怉"],"mín mén":["怋"],"zuò zhà":["怍"],zěn:["怎"],yàng:["怏","恙","样","様","樣","漾","羕","詇"],"kòu jù":["怐"],"náo niú":["怓"],"zhēng zhèng":["怔","掙","钲","铮"],"tiē zhān":["怗"],"hù gù":["怘"],"cū jù zū":["怚"],"sī sāi":["思"],"yóu chóu":["怞"],"tū dié":["怢"],"yōu yào":["怮"],xuàn:["怰","昡","楦","泫","渲","炫","琄","眩","碹","絢","縼","繏","绚","蔙","衒","袨","贙","鉉","鏇","铉","镟","颴"],"xù xuè":["怴"],"bì pī":["怶"],"xī shù":["怸"],"nèn nín":["恁"],"tiāo yáo":["恌"],"xī qī xù":["恓"],"xiào jiǎo":["恔"],"hū kuā":["恗"],nǜ:["恧","朒","衂","衄"],hèn:["恨"],"dòng tōng":["恫"],"quán zhuān":["恮"],"è wù ě wū":["恶","惡"],tòng:["恸","慟","憅","痛","衕"],"yuān juàn":["悁"],"qiāo qiǎo":["悄"],"jiè kè":["悈"],"hào jiào":["悎"],huǐ:["悔","檓","毀","毁","毇","燬","譭"],"mán mèn":["悗","鞔"],"yī yì":["悘","衣"],quān:["悛","箞","鐉","𨟠"],"kuī lǐ":["悝"],"yì niàn":["悥"],"mèn mēn":["悶"],guàn:["悹","悺","惯","慣","掼","摜","樌","欟","泴","涫","潅","灌","爟","瓘","盥","礶","祼","罆","罐","貫","贯","躀","遦","鏆","鑵","鱹","鸛","鹳"],"kōng kǒng":["悾"],"lǔn lùn":["惀"],guǒ:["惈","果","椁","槨","粿","綶","菓","蜾","裹","褁","輠","餜","馃"],"yuān wǎn":["惌","箢"],"lán lín":["惏"],"yù xù":["惐","淢"],"chuò chuì":["惙"],"hūn mèn":["惛"],"chǎng tǎng":["惝"],"suǒ ruǐ":["惢"],cǎn:["惨","慘","憯","黪","黲","䅟"],cán:["惭","慙","慚","残","殘","蚕","蝅","蠶","蠺"],"dàn dá":["惮","憚"],rě:["惹"],"yú tōu":["愉"],"kài qì":["愒"],"dàng táng shāng yáng":["愓"],"chén xìn dān":["愖"],"kè qià":["愘"],nuò:["愞","懦","懧","掿","搦","榒","稬","穤","糑","糥","糯","諾","诺","蹃","逽","鍩","锘"],gǎn:["感","擀","敢","桿","橄","澉","澸","皯","秆","稈","笴","芉","衦","赶","趕","鱤","鳡"],"còng sōng":["愡"],"sāi sī sǐ":["愢"],"gōng gòng hǒng":["愩","慐"],"shuò sù":["愬","洬"],"yáo yào":["愮"],huàng:["愰","曂","榥","滉","皝","皩","鎤","㿠"],zhěng:["愸","抍","拯","整","晸"],cǎo:["愺","艸","草","騲"],"xì xié":["慀"],"cǎo sāo":["慅"],"xù chù":["慉"],"qiè qiàn":["慊"],"cáo cóng":["慒"],"ào áo":["慠"],"lián liǎn":["慩","梿","槤","櫣"],"jìn qín jǐn":["慬"],"dì chì":["慸"],"zhí zhé":["慹"],"lóu lǚ":["慺","鷜"],còng:["憁","謥"],"zhī zhì":["憄","知","織","织"],chēng:["憆","摚","撐","撑","晿","柽","棦","橕","檉","泟","浾","琤","瞠","碀","緽","罉","蛏","蟶","赪","赬","鏿","鐣","阷","靗","頳","饓"],biē:["憋","虌","鱉","鳖","鼈","龞"],"chéng dèng zhèng":["憕"],"xǐ xī":["憘"],"duì dùn tūn":["憞"],"xiāo jiāo":["憢"],"xián xiàn":["憪"],"liáo liǎo":["憭","燎","爎","爒"],shéng:["憴","縄","繉","繩","绳","譝"],"náo nǎo náng":["憹"],"jǐng jìng":["憼"],"jǐ jiǎo":["憿"],"xuān huān":["懁"],"cǎo sāo sào":["懆"],mèn:["懑","懣","暪","焖","燜"],"mèng méng měng":["懜"],"ài yì nǐ":["懝"],"méng měng":["懞","瞢","矒"],"qí jī jì":["懠"],mǒ:["懡"],"lán xiàn":["懢"],"yōu yǒu":["懮"],"liú liǔ":["懰","藰"],ràng:["懹","譲","讓","让"],huān:["懽","欢","歓","歡","獾","讙","貛","酄","驩","鴅","鵍"],nǎn:["戁","揇","湳","煵","腩","蝻","赧"],"mí mó":["戂"],"gàng zhuàng":["戅","戆"],"zhuàng gàng":["戇"],"xū qu":["戌"],"xì hū":["戏","戯","戲"],"jiá gā":["戛"],zéi:["戝","蠈","賊","贼","鰂","鱡","鲗"],děng:["戥","等"],"hū xì":["戱"],chuō:["戳","踔","逴"],"biǎn piān":["扁"],"shǎng jiōng":["扄"],"shàn shān":["扇"],cái:["才","材","纔","裁","財","财"],"zhā zā zhá":["扎"],"lè lì cái":["扐"],"bā pá":["扒"],"dǎ dá":["打"],rēng:["扔"],"fǎn fú":["払"],"diǎo dí yuē lì":["扚"],"káng gāng":["扛"],"yū wū":["扜"],"yū wū kū":["扝"],"tuō chǐ yǐ":["扡"],"gǔ jié xì gē":["扢"],dèn:["扥","扽"],"sǎo sào":["扫","掃"],rǎo:["扰","擾","隢"],"xī chā qì":["扱"],"bān pān":["扳"],"bā ào":["扷"],"xī zhé":["扸"],"zhì sǔn kǎn":["扻"],zhǎo:["找","沼","瑵"],"kuáng wǎng zài":["抂"],"hú gǔ":["抇","鹄","鹘"],"bǎ bà":["把"],"dǎn shěn":["抌"],"nè nì ruì nà":["抐"],zhuā:["抓","檛","簻","膼","髽"],póu:["抔","裒"],"zhé shé zhē":["折"],"póu pōu fū":["抙","捊"],pāo:["抛","拋","脬","萢"],"ǎo ào niù":["抝"],"lūn lún":["抡","掄"],"qiǎng qiāng chēng":["抢"],"zhǐ zhǎi":["抧"],"bù pū":["抪","柨"],"yǎo tāo":["抭"],"hē hè qiā":["抲"],"nǐ ní":["抳"],"pī pēi":["抷"],"mǒ mò mā":["抹"],chōu:["抽","犨","犫","瘳","篘"],"jiā yá":["拁"],"fú bì":["拂","畐","鶝"],zhǎ:["拃","眨","砟","鮺","鲝"],"dān dàn dǎn":["担"],"chāi cā":["拆"],niān:["拈","蔫"],"lā lá lǎ là":["拉"],"bàn pàn":["拌"],pāi:["拍"],līn:["拎"],guǎi:["拐","枴","柺"],"tuò tà zhí":["拓"],"ào ǎo niù":["拗"],"jū gōu":["拘"],"pīn pàn fān":["拚"],"bài bái":["拜"],bài:["拝","敗","稗","粺","薭","贁","败","韛"],qiá:["拤"],"nǐng níng nìng":["拧"],"zé zhái":["择","擇"],hén:["拫","痕","鞎"],"kuò guā":["括"],"jié jiá":["拮"],nǐn:["拰"],shuān:["拴","栓","閂","闩"],"cún zùn":["拵"],"zā zǎn":["拶","桚"],kǎo:["拷","攷","栲","烤","考"],"yí chǐ hài":["拸"],"cè sè chuò":["拺"],"zhuài zhuāi yè":["拽"],"shí shè":["拾"],bāi:["挀","掰"],"kuò guāng":["挄"],nòng:["挊","挵","齈"],"jiào jiāo":["挍","敎","教"],"kuà kū":["挎"],"ná rú":["挐"],"tiāo tiǎo":["挑"],"dié shè":["挕"],liě:["挘","毟"],"yà yǎ":["挜","掗"],"wō zhuā":["挝"],"xié jiā":["挟","挾"],"dǎng dàng":["挡","擋"],"zhèng zhēng":["挣","正","症"],"āi ái":["挨"],"tuō shuì":["挩","捝"],"tǐ tì":["挮"],"suō shā":["挱"],"sā shā suō":["挲"],"kēng qiān":["挳","摼"],"bàng péng":["挷"],"ruó ruá":["挼"],"jiǎo kù":["捁"],"wǔ wú":["捂"],tǒng:["捅","桶","筒","筩","統","綂","统","㛚"],"huò chì":["捇"],"tú shū chá":["捈"],"lǚ luō":["捋"],"shāo shào":["捎","稍"],niē:["捏","揑"],"shù sǒng sōu":["捒"],"yé yú":["捓"],"jué zhuó":["捔"],"bù pú zhì":["捗"],zùn:["捘","銌"],lāo:["捞","撈","粩"],sǔn:["损","損","榫","笋","筍","箰","鎨","隼"],"wàn wǎn wān yù":["捥"],pěng:["捧","淎","皏"],shě:["捨"],"fǔ fù bǔ":["捬"],dáo:["捯"],"luò luǒ wǒ":["捰"],"juǎn quán":["捲"],"chēn tiǎn":["捵"],"niǎn niē":["捻"],"ruó wěi ré":["捼"],zuó:["捽","昨","秨","稓","筰","莋","鈼"],"wò xiá":["捾"],"qìng qiàn":["掅"],"póu pǒu":["掊"],qiā:["掐","葜"],"pái pǎi":["排"],"qiān wàn":["掔"],"yè yē":["掖"],"niè nǐ yì":["掜"],"huò xù":["掝"],"yàn shàn yǎn":["掞"],"zhěng dìng":["掟"],kòng:["控","鞚"],tuī:["推","蓷","藬"],"zōu zhōu chōu":["掫"],tiàn:["掭","舚"],kèn:["掯","裉","褃"],pá:["掱","杷","潖","爬","琶","筢"],"guó guāi":["掴"],"dǎn shàn":["掸","撣"],"chān xiān càn shǎn":["掺"],sāo:["掻","搔","溞","繅","缫","螦","騒","騷","鰠","鱢","鳋"],pèng:["掽","椪","槰","碰","踫"],"zhēng kēng":["揁"],"jiū yóu":["揂"],"jiān jiǎn":["揃","籛"],"pì chè":["揊"],"sāi zǒng cāi":["揌"],"tí dī dǐ":["提"],"zǒng sōng":["揔"],"huáng yóng":["揘"],"zǎn zuàn":["揝"],"xū jū":["揟"],"ké qiā":["揢"],"chuāi chuǎi chuài tuán zhuī":["揣"],"dì tì":["揥"],"lá là":["揦"],là:["揧","楋","溂","瓎","瘌","翋","臘","蝋","蝲","蠟","辢","辣","鑞","镴","鬎","鯻","𬶟"],"jiē qì":["揭"],"chòng dǒng":["揰"],"dié shé yè":["揲"],"jiàn qián jiǎn":["揵"],yé:["揶","爷","爺","瑘","鋣","鎁","铘"],chān:["搀","摻","攙","裧","襜","覘","觇","辿","鋓"],"gē gé":["搁","擱"],"lǒu lōu":["搂","摟"],"chōu zǒu":["搊"],chuāi:["搋"],sūn:["搎","槂","狲","猻","荪","蓀","蕵","薞","飧","飱"],"róng náng nǎng":["搑"],"péng bàng":["搒"],cuō:["搓","瑳","磋","蹉","遳","醝"],"kē è":["搕"],"nù nuò nòu":["搙"],"lā xié xiàn":["搚"],qiǔ:["搝","糗"],"xiǎn xiān":["搟"],"jié zhé":["搩"],"pán bān pó":["搫"],bān:["搬","攽","斑","斒","班","瘢","癍","肦","螁","螌","褩","辬","頒","颁","𨭉"],"zhì nái":["搱"],"wā wǎ wà":["搲"],huá:["搳","撶","滑","猾","蕐","螖","譁","鏵","铧","驊","骅","鷨"],"qiāng qiǎng chēng":["搶"],"tián shēn":["搷"],"ná nuò":["搻"],èn:["摁"],"shè niè":["摄","攝"],bìn:["摈","擯","殡","殯","膑","臏","髌","髕","髩","鬂","鬓","鬢"],"shā sà shǎi":["摋"],"chǎn sùn":["摌"],"jiū liú liáo jiǎo náo":["摎"],"féng pěng":["摓"],shuāi:["摔"],"dì tú zhí":["摕"],"qì jì chá":["摖"],"sōu sǒng":["摗"],"liǎn liàn":["摙"],"gài xì":["摡"],"hù chū":["摢"],tàng:["摥","烫","燙","鐋"],"nái zhì":["摨"],"mó mā":["摩"],"jiāng qiàng":["摪"],"áo qiáo":["摮"],"niè chè":["摰"],"mán màn":["摱"],"chàn cán":["摲"],"sè mí sù":["摵"],"biāo biào":["摽"],"juē jué":["撅"],piē:["撆","暼","氕","瞥"],"piě piē":["撇"],"zǎn zān zēn qián":["撍"],"sā sǎ":["撒"],hòng:["撔","訌","讧","闀","鬨"],"héng guàng":["撗"],niǎn:["撚","撵","攆","涊","焾","碾","簐","蹍","蹨","躎","輦","辇"],"chéng zhěng":["撜"],"huī wéi":["撝"],cāo:["撡","操","糙"],"xiāo sōu":["撨"],"liáo liāo":["撩"],"cuō zuǒ":["撮"],"wěi tuǒ":["撱"],cuān:["撺","攛","汆","蹿","躥","鑹","镩"],"qiào yāo jī":["撽"],"zhuā wō":["撾"],"lèi léi":["擂"],nǎng:["擃","攮","曩","灢"],"qíng jǐng":["擏"],kuǎi:["擓","蒯","㧟"],"pǐ bò":["擗"],"bò bāi":["擘"],"jù jǐ":["據"],mēng:["擝"],"sǒu sòu":["擞"],xǐng:["擤","箵","醒"],cā:["擦"],"níng nǐng nìng":["擰"],"zhì jié":["擳"],"là liè":["擸","爉"],"sòu sǒu":["擻"],"lì luò yuè":["擽"],"tī zhāi zhì":["擿"],pān:["攀","潘","眅","萠"],lèi:["攂","泪","涙","淚","禷","类","纇","蘱","酹","銇","錑","頛","頪","類","颣"],"cā sǎ":["攃"],"jùn pèi":["攈"],"lì luò":["攊","躒"],"là lài":["攋","櫴"],"lú luó":["攎"],"zǎn cuán":["攒"],"xiān jiān":["攕"],"mí mǐ mó":["攠"],"zǎn cuán zàn zuān":["攢"],zuàn:["攥"],"lì shài":["攦"],"lì luǒ":["攭"],"guǐ guì":["攱"],"jī qī yǐ":["攲"],fàng:["放"],"wù móu":["敄"],"chù shōu":["敊"],"gé guó è":["敋"],"duó duì":["敓","敚"],"duō què":["敠","敪"],"sàn sǎn":["散"],"dūn duì":["敦","镦"],"qī yǐ jī":["敧"],"xiào xué":["敩"],"shù shǔ shuò":["数","數"],"ái zhú":["敱","敳"],"xiòng xuàn":["敻"],"zhuó zhú":["斀"],"yì dù":["斁"],"lí tái":["斄"],"fěi fēi":["斐"],"yǔ zhōng":["斔"],"dòu dǒu":["斗"],"wò guǎn":["斡"],"tǒu tiǎo":["斢"],dòu:["斣","梪","浢","痘","窦","竇","脰","荳","豆","逗","郖","酘","閗","闘","餖","饾","鬥","鬦","鬪","鬬","鬭"],"yín zhì":["斦"],"chǎn jiè":["斺"],"wū yū yú":["於"],"yóu liú":["斿"],"páng bàng":["旁"],"máo mào":["旄"],"pī bì":["旇"],"xuán xuàn":["旋"],"wú mó":["无"],zǎo:["早","枣","栆","棗","澡","璪","薻","藻","蚤"],gā:["旮"],"gàn hàn":["旰"],"tái yīng":["旲"],"xū xù":["旴"],"tūn zhùn":["旽"],"wù wǔ":["旿"],"pò pèi":["昢"],zòng:["昮","猔","疭","瘲","粽","糉","糭","縦"],ǎi:["昹","毐","矮","蔼","藹","譪","躷","霭","靄"],"huàng huǎng":["晃"],xuǎn:["晅","癣","癬","选","選"],"xù kuā":["晇"],hǒng:["晎"],shài:["晒","曬"],"yūn yùn":["晕","煴"],"shèng chéng":["晟","椉","盛"],"jǐng yǐng":["景"],shǎn:["晱","熌","睒","覢","閃","闪","陕","陝"],"qǐ dù":["晵"],"ǎn àn yǎn":["晻"],"wǎng wàng":["暀"],zàn:["暂","暫","瓉","瓒","瓚","禶","襸","讃","讚","賛","贊","赞","蹔","鄼","錾","鏨","饡"],"yùn yūn":["暈"],"mín mǐn":["暋"],"dǔ shǔ":["暏"],shǔ:["暑","曙","潻","癙","糬","署","薥","薯","藷","蜀","蠴","襡","襩","鱪","鱰","黍","鼠","鼡"],"jiǎn lán":["暕"],nuǎn:["暖","煗","餪"],"bào pù":["暴"],"xī xǐ":["暿"],"pù bào":["曝","瀑"],"qū qǔ":["紶"],"qǔ qū":["曲"],"gèng gēng":["更"],"hū hù":["曶","雽"],"zēng céng":["曽","橧"],"céng zēng":["曾","竲"],"cǎn qián jiàn":["朁"],"qiè hé":["朅"],"bì pí":["朇","禆","笓","裨"],"yǒu yòu":["有"],"bān fén":["朌","鳻"],"fú fù":["服","洑"],"fěi kū":["朏","胐"],"qú xù chǔn":["朐"],"juān zuī":["朘"],"huāng máng wáng":["朚"],"qī jī":["期"],"tóng chuáng":["朣","橦"],zhá:["札","牐","箚","蚻","譗","鍘","铡","閘","闸"],"zhú shù shú":["朮"],"shù shú zhú":["术"],"zhū shú":["朱"],"pǔ pò pō piáo":["朴"],"dāo tiáo mù":["朷"],"guǐ qiú":["朹"],xiǔ:["朽","滫","潃","糔"],"chéng chēng":["朾"],zá:["杂","沯","砸","襍","雑","雜","雥","韴"],"yú wū":["杅"],"gān gǎn":["杆"],"chā chà":["杈"],"shān shā":["杉"],cūn:["村","皴","竴","膥","踆","邨"],"rèn ér":["杒","梕"],"sháo biāo":["杓"],"dì duò":["杕","枤"],"gū gài":["杚"],"yí zhì lí duò":["杝"],"gàng gāng":["杠"],"tiáo tiāo":["条","條"],"mà mǎ":["杩"],"sì zhǐ xǐ":["杫"],"yuán wán":["杬","蚖"],"bèi fèi":["杮"],"shū duì":["杸"],"niǔ chǒu":["杻"],"wò yuè":["枂","臒"],máo:["枆","毛","氂","渵","牦","矛","罞","茅","茆","蝥","蟊","軞","酕","鉾","錨","锚","髦","鶜"],"pī mì":["枈"],àng:["枊","盎","醠"],"fāng bìng":["枋"],"hù dǐ":["枑"],xín:["枔","襑","鐔","鬵"],"yāo yǎo":["枖"],"ě è":["枙"],"zhī qí":["枝"],"cōng zōng":["枞","樅"],"xiān zhēn":["枮"],"tái sì":["枱"],"gǒu jǔ gōu":["枸"],"bāo fú":["枹"],"yì xiè":["枻","栧"],"tuó duò":["柁","馱","駄","驮"],"yí duò lí":["柂"],"nǐ chì":["柅"],"pán bàn":["柈","跘"],"yǎng yàng yāng yīng":["柍"],"fù fū fǔ":["柎"],"bǎi bó bò":["柏"],mǒu:["某"],"sháo shào":["柖"],zhè:["柘","樜","浙","淛","蔗","蟅","這","鷓","鹧","䗪"],"yòu yóu":["柚","櫾"],"guì jǔ":["柜"],"zhà zuò":["柞"],"dié zhì":["柣","眰"],"zhā zǔ zū":["柤"],"chá zhā":["查","査"],"āo ào":["柪","軪"],"bā fú pèi bó biē":["柭"],"duò zuó wù":["柮"],"bì bié":["柲"],"zhù chù":["柷"],"bēi pēi":["柸"],"shì fèi":["柹"],"shān zhà shi cè":["栅"],"lì yuè":["栎","櫟"],"qì qiè":["栔","砌"],"qī xī":["栖","蹊"],"guā kuò":["栝"],"bīng bēn":["栟"],"xiào jiào":["校"],"jiàn zùn":["栫","袸"],"yǒu yù":["栯"],"hé hú":["核"],gēn:["根","跟"],"zhī yì":["栺"],"gé gē":["格"],"héng háng":["桁"],"guàng guāng":["桄"],"yí tí":["桋","荑"],sāng:["桑","桒","槡"],"jú jié":["桔"],"yú móu":["桙"],"ráo náo":["桡","橈"],"guì huì":["桧","檜"],"chén zhèn":["桭"],"tīng yíng":["桯"],"bó po":["桲"],"bèn fàn":["桳"],"fēng fèng":["桻","葑"],"sù yìn":["梀"],"tǐng tìng":["梃"],"xuān juān xié":["梋"],"tú chá":["梌"],"āo yòu":["梎"],kuǎn:["梡","欵","款","歀"],"shāo sào":["梢"],"qín chén cén":["梣"],"lí sì qǐ":["梩"],"chān yán":["梴"],"bīn bīng":["梹","槟","檳"],"táo chóu dào":["梼"],"cōng sōng":["棇"],"gùn hùn":["棍"],"dé zhé":["棏"],"pái bèi pèi":["棑"],"bàng pǒu bèi bēi":["棓"],"dì dài tì":["棣"],sēn:["森","椮","槮","襂"],"rěn shěn":["棯"],"léng lēng líng":["棱"],"fú sù":["棴"],"zōu sǒu":["棷"],zōu:["棸","箃","緅","諏","诹","邹","郰","鄒","鄹","陬","騶","驺","鯫","鲰","黀","齱","齺"],"zhào zhuō":["棹"],"chēn shēn":["棽"],"jiē qiè":["椄"],"yǐ yī":["椅"],"chóu zhòu diāo":["椆"],"qiāng kōng":["椌"],"zhuī chuí":["椎"],"bēi pí":["椑"],mēn:["椚"],"quān juàn quán":["椦"],"duǒ chuán":["椯"],"wěi huī":["椲"],"jiǎ jiā":["椵"],"hán jiān":["椷"],"shèn zhēn":["椹"],"yàn yà":["椻"],"zhā chá":["楂"],"guō kuǎ":["楇"],"jí zhì":["楖"],"kǔ hù":["楛"],"yóu yǒu":["楢"],"sǒng cōng":["楤"],"yuán xuàn":["楥"],"yǎng yàng yīng":["楧"],pián:["楩","胼","腁","賆","蹁","駢","騈","骈","骿","㛹"],"dié yè":["楪"],"dùn shǔn":["楯"],"còu zòu":["楱"],"dì dǐ shì":["楴"],"kǎi jiē":["楷"],"róu ròu":["楺"],"lè yuè":["楽"],"wēn yùn":["榅","鞰"],lǘ:["榈","櫚","氀","膢","藘","閭","闾","驢","驴"],shén:["榊","神","鉮","鰰","𬬹"],"bī pi":["榌"],"zhǎn niǎn zhèn":["榐"],"fú fù bó":["榑"],"jiàn jìn":["榗"],"bǎng bàng":["榜"],"shā xiè":["榝","樧"],nòu:["槈","耨","鎒","鐞"],"qiǎn lián xiàn":["槏"],gàng:["槓","焵","焹","筻","鿍"],gāo:["槔","槹","橰","櫜","睾","篙","糕","羔","臯","韟","餻","高","髙","鷎","鷱","鼛"],"diān zhěn zhēn":["槙"],"kǎn jiàn":["槛"],"xí dié":["槢"],"jī guī":["槣"],"róng yōng":["槦"],"tuán shuàn quán":["槫"],"qì sè":["槭"],"cuī zhǐ":["槯"],"yǒu chǎo":["槱"],"màn wàn":["槾"],"lí chī":["樆"],"léi lěi":["樏","櫑","礌"],"cháo jiǎo chāo":["樔"],"chēng táng":["樘"],"jiū liáo":["樛"],"mó mú":["模"],"niǎo mù":["樢"],"héng hèng":["横","橫"],xuě:["樰","膤","艝","轌","雪","鱈","鳕"],"fá fèi":["橃"],rùn:["橍","润","潤","膶","閏","閠","闰"],"zhǎn jiǎn":["橏"],shùn:["橓","瞚","瞬","舜","蕣","順","顺","鬊"],"tuí dūn":["橔"],"táng chēng":["橖"],"sù qiū":["橚"],"tán diàn":["橝"],"fén fèn fèi":["橨"],"rǎn yān":["橪"],"cū chu":["橻"],"shū qiāo":["橾"],"píng bò":["檘"],"zhái shì tú":["檡"],"biǎo biāo":["檦"],"qiān lián":["檶"],"nǐ mí":["檷"],"jiàn kǎn":["檻"],"nòu ruǎn rú":["檽"],"jī jì":["櫅","禨"],"huǎng guǒ gǔ":["櫎"],"lǜ chū":["櫖"],"miè mèi":["櫗"],ōu:["櫙","欧","歐","殴","毆","瓯","甌","膒","藲","謳","讴","鏂","鴎","鷗","鸥"],"zhù zhuó":["櫡"],"jué jì":["櫭"],"huái guī":["櫰"],"chán zhàn":["欃"],"wéi zuì":["欈"],cáng:["欌","鑶"],"yù yì":["欥"],"chù qù xì":["欪"],"kài ài":["欬"],"yì yīn":["欭"],"xì kài":["欯"],"shuò sòu":["欶"],"ǎi ēi éi ěi èi ê̄ ế ê̌ ề":["欸"],"qī yī":["欹"],"chuā xū":["欻"],"chǐ chuài":["欼"],"kǎn qiàn":["欿"],"kǎn kè":["歁"],"chuǎn chuán":["歂"],"yīn yān":["歅"],"jìn qūn":["歏"],pēn:["歕"],"xū chuā":["歘"],"xī shè":["歙"],"liǎn hān":["歛"],"zhì chí":["歭"],"sè shà":["歰"],sǐ:["死"],"wěn mò":["歾"],piǎo:["殍","皫","瞟","醥","顠"],"qíng jìng":["殑"],"fǒu bó":["殕"],"zhí shi":["殖"],"yè yān yàn":["殗"],"hūn mèi":["殙"],chòu:["殠","臰","遚"],"kuì huì":["殨","溃","潰"],cuàn:["殩","熶","爨","窜","竄","篡","簒"],"yīn yān yǐn":["殷"],"qìng kēng shēng":["殸"],"yáo xiáo xiào":["殽"],"gū gǔ":["毂","蛄"],"guàn wān":["毌"],"dú dài":["毒"],"xún xùn":["毥"],mú:["毪","氁"],"dòu nuò":["毭"],"sāi suī":["毸"],lu:["氇"],sào:["氉","瘙","矂","髞"],"shì zhī":["氏"],"dī dǐ":["氐"],"máng méng":["氓"],"yáng rì":["氜"],shuǐ:["水","氵","氺","閖"],"zhěng chéng zhèng":["氶"],tǔn:["氽"],"fán fàn":["氾"],"guǐ jiǔ":["氿"],"bīn pà pā":["汃"],"zhuó què":["汋"],"dà tài":["汏"],pìn:["汖","牝","聘"],"hàn hán":["汗","馯"],tu:["汢"],"tāng shāng":["汤","湯"],"zhī jì":["汥"],"gàn hán cén":["汵"],"wèn mén":["汶"],"fāng pāng":["汸"],"hǔ huǎng":["汻"],"niú yóu":["汼"],hàng:["沆"],"shěn chén":["沈"],"dùn zhuàn":["沌"],"nǜ niǔ":["沑"],"méi mò":["沒","没"],"tà dá":["沓"],"mì wù":["沕"],"hóng pāng":["沗"],"shā shà":["沙"],"zhuǐ zǐ":["沝"],"ōu òu":["沤","漚"],"jǔ jù":["沮"],"tuō duó":["沰"],"mǐ lì":["沵"],"yí chí":["沶"],"xiè yì":["泄"],"bó pō":["泊"],"mì bì":["泌","秘"],"chù shè":["泏"],"yōu yòu āo":["泑"],"pēng píng":["泙","硑"],"pào pāo":["泡"],"ní nì":["泥","秜"],"yuè sà":["泧"],"jué xuè":["泬","疦"],"lóng shuāng":["泷","瀧"],"luò pō":["泺","濼"],"zé shì":["泽","澤"],"sǎ xǐ":["洒"],"sè qì zì":["洓"],"xǐ xiǎn":["洗"],"kǎo kào":["洘"],"àn yàn è":["洝"],"lěi lèi":["洡"],"qiè jié":["洯"],"qiǎn jiān":["浅"],"jì jǐ":["济","済","濟","纪"],"hǔ xǔ":["浒","滸"],"jùn xùn":["浚","濬"],"yǐng chéng yíng":["浧"],"liàn lì":["浰"],"féng hóng":["浲","溄"],"jiǒng jiōng":["浻"],"suī něi":["浽"],"yǒng chōng":["涌"],"tūn yūn":["涒"],"wō guō":["涡","渦"],hēng:["涥","脝"],"zhǎng zhàng":["涨","漲"],"shòu tāo":["涭"],shuàn:["涮","腨"],"kōng náng":["涳"],"wò wǎn yuān":["涴"],"tuō tuò":["涶"],wō:["涹","猧","窝","窩","莴","萵","蜗","蝸","踒"],"qiè jí":["淁"],"guǒ guàn":["淉"],"lín lìn":["淋","獜","疄"],"tǎng chǎng":["淌"],"nào chuò zhuō":["淖"],"péng píng":["淜"],féi:["淝","肥","腓","蜰"],"pì pèi":["淠"],"niǎn shěn":["淰"],"biāo hǔ":["淲"],"chún zhūn":["淳"],"hùn hún":["混"],qiǎn:["淺","繾","缱","肷","膁","蜸","譴","谴","遣","鑓"],"wèn mín":["渂"],"rè ruò luò":["渃"],"dú dòu":["渎","瀆","读"],"jiàn jiān":["渐","溅","漸","濺"],"miǎn shéng":["渑","澠"],"nuǎn nuán":["渜"],"qiú wù":["渞"],"tíng tīng":["渟"],"dì tí dī":["渧"],"gǎng jiǎng":["港"],"hōng qìng":["渹"],tuān:["湍","煓"],"huì mǐn xū":["湏"],"xǔ xù":["湑"],pén:["湓","瓫","盆","葐"],"mǐn hūn":["湣"],"tuàn nuǎn":["湪"],"qiū jiǎo":["湫","湬"],"yān yīn":["湮"],"bàn pán":["湴"],"zhuāng hún":["湷"],"yàn guì":["溎"],"lián liǎn nián xián xiàn":["溓"],"dá tǎ":["溚","鿎"],"liū liù":["溜","澑","蹓"],lùn:["溣"],mǎ:["溤","犸","獁","玛","瑪","码","碼","遤","鎷","馬","马","鰢","鷌"],"zhēn qín":["溱"],"nì niào":["溺"],"chù xù":["滀","畜"],"wěng wēng":["滃"],"hào xuè":["滈"],"qì xì xiē":["滊"],"xíng yíng":["滎"],"zé hào":["滜"],"piāo piào piǎo":["漂"],"cóng sǒng":["漎"],"féng péng":["漨"],"luò tà":["漯"],"pēng bēn":["漰"],"chóng shuāng":["漴"],"huǒ kuò huò":["漷"],"liáo liú":["漻"],"cuǐ cuī":["漼"],"cóng zǒng":["潀"],"cóng zōng":["潈"],"pì piē":["潎"],"dàng xiàng":["潒"],"huáng guāng":["潢"],"liáo lào lǎo":["潦"],"cōng zòng":["潨"],"zhí zhì":["潪"],"tān shàn":["潬"],"tú zhā":["潳"],"sàn sǎ":["潵"],hēi:["潶","黑","黒","𬭶"],"chéng dèng":["澄","瀓"],"cūn cún":["澊"],"péng pēng":["澎"],"hòng gǒng":["澒","銾"],"wàn màn":["澫"],"kuài huì":["澮"],"guō wō":["濄"],"pēn fén":["濆"],"jí shà":["濈"],"huì huò":["濊"],"dǐng tìng":["濎"],"mǐ nǐ":["濔"],"bì pì":["濞"],"cuì zuǐ":["濢"],"hù huò":["濩"],"ǎi kài kè":["濭"],"wěi duì":["濻","瀢"],"zàn cuán":["濽","灒"],"yǎng yàng":["瀁"],"wǎng wāng":["瀇"],"mò miè":["瀎","眜"],suǐ:["瀡","膸","髓"],"huái wāi":["瀤"],"zùn jiàn":["瀳"],"yīng yǐng yìng":["瀴"],"ráng ràng":["瀼"],shuàng:["灀"],"zhuó jiào zé":["灂"],sǎ:["灑","訯","靸"],"luán luàn":["灓"],"dǎng tǎng":["灙"],"xún quán quàn":["灥"],"huǒ biāo":["灬"],"zhà yù":["灹"],"fén bèn":["炃"],"jiǒng guì":["炅"],"pàng fēng":["炐"],quē:["炔","缺","缼","蒛"],biān:["炞","煸","甂","砭","笾","箯","籩","編","编","蝙","邉","邊","鍽","鞭","鯾","鯿","鳊"],"zhāo zhào":["炤"],"zhuō chù":["炪"],"pào páo bāo":["炮"],"páo fǒu":["炰"],"shǎn qián shān":["炶"],"zhà zhá":["炸"],"jiǎo yào":["烄"],quǎn:["烇","犬","犭","畎","綣","绻","虇"],"yàng yáng":["烊"],"lào luò":["烙"],"huí huǐ":["烠"],rè:["热","熱"],"fú páo":["烰"],"xiè chè":["烲","焎"],"yàn shān":["烻"],"hūn xūn":["焄"],kào:["焅","犒","銬","铐","靠","鮳","鯌","鲓","㸆"],"juān yè":["焆"],"jùn qū":["焌"],"tāo dào":["焘"],"chǎo jù":["焣"],"wò ài":["焥"],"zǒng cōng":["焧"],"xī yì":["焬"],"xìn xīn":["焮"],"chāo zhuō":["焯"],"xiǒng yīng":["焸","焽"],kuǐ:["煃","跬","蹞","頍","𫠆"],"huī yùn xūn":["煇"],"jiǎo qiāo":["煍"],"qián shǎn shān":["煔"],"xī yí":["煕"],"shà shā":["煞"],"yè zhá":["煠"],"yáng yàng":["煬"],"ēn yūn":["煾"],"yūn yǔn":["熅"],"hè xiāo":["熇"],xióng:["熊","熋","雄"],"xūn xùn":["熏","爋"],gòng:["熕","貢","贡"],liū:["熘"],"cōng zǒng":["熜"],"lù āo":["熝"],"shú shóu":["熟"],"fēng péng":["熢"],"cuǐ suī":["熣"],tēng:["熥","膯","鼟"],"yùn yù":["熨"],"áo āo":["熬"],"hàn rǎn":["熯"],"ōu ǒu":["熰"],"huáng huǎng":["熿"],"chǎn dǎn chàn":["燀"],"jiāo zhuó qiáo jué":["燋"],"yàn yān":["燕"],"tài liè":["燤"],āo:["爊"],"yàn xún":["爓"],"jué jiào":["爝","覐","覚","覺","觉"],"lǎn làn":["爦"],"zhuǎ zhǎo":["爪"],"zhǎo zhuǎ":["爫"],"fù fǔ":["父"],diē:["爹","褺","跌"],zāng:["牂","羘","臧","賍","賘","贓","贜","赃","髒"],"piàn piān":["片"],"biān miàn":["牑"],bǎng:["牓","綁","绑"],"yǒu yōng":["牗"],"chēng chèng":["牚","竀"],niú:["牛","牜"],"jiū lè":["牞"],"mù móu":["牟"],māng:["牤"],"gē qiú":["牫"],"yòu chōu":["牰"],"tè zhí":["犆"],bēn:["犇","錛","锛"],"jiān qián":["犍","玪"],má:["犘","痲","蔴","蟇","麻"],"máo lí":["犛"],"bá quǎn":["犮"],"zhuó bào":["犳"],"àn hān":["犴"],"kàng gǎng":["犺"],"pèi fèi":["犻"],"fān huān":["犿"],kuáng:["狂","狅","誑","诳","軖","軠","鵟","𫛭"],"yí quán chí":["狋"],"xīng shēng":["狌"],"tuó yí":["狏"],kǔ:["狜","苦"],"huán huān":["狟"],"hé mò":["狢"],"tà shì":["狧"],"máng dòu":["狵"],"xī shǐ":["狶"],suān:["狻","痠","酸"],"bài pí":["猈"],"jiān yàn":["猏","豣"],"yī yǐ":["猗"],"yá wèi":["猚"],cāi:["猜"],"māo máo":["猫","貓"],"chuàn chuān":["猭"],"tuān tuàn":["猯","貒"],"yà jiá qiè":["猰"],"hè xiē gé hài":["猲"],"biān piàn":["猵","獱"],"bó pò":["猼"],"háo gāo":["獋"],"fén fèn":["獖"],"yào xiāo":["獟"],"shuò xī":["獡"],"gé liè xiē":["獦"],"nòu rú":["獳"],"náo nǎo yōu":["獶"],ráng:["獽","瓤","禳","穣","穰","蘘","躟","鬤"],"náo yōu":["獿"],"lǜ shuài":["率"],"wáng wàng":["王"],"yáng chàng":["玚"],"mín wén":["玟"],"bīn fēn":["玢"],"mén yǔn":["玧"],"qiāng cāng":["玱","瑲","篬"],"án gān":["玵"],"xuán xián":["玹"],"cī cǐ":["玼","跐"],"yí tāi":["珆"],"zǔ jù":["珇"],fà:["珐","琺","蕟","髪","髮"],"yín kèn":["珢"],"huī hún":["珲"],"xuán qióng":["琁"],"fú fū":["琈"],"bǐng pín":["琕"],"cuì sè":["琗"],"yù wéi":["琟"],"tiǎn tiàn":["琠"],"zhuó zuó":["琢"],"běng pěi":["琣"],guǎn:["琯","璭","痯","筦","管","舘","輨","錧","館","馆","鳤"],"hún huī":["琿"],"xié jiē":["瑎"],"chàng dàng yáng":["瑒"],"tiàn zhèn":["瑱"],"bīn pián":["瑸","璸"],"tú shū":["瑹"],cuǐ:["璀","皠","趡"],"zǎo suǒ":["璅"],"jué qióng":["璚"],"lú fū":["璷"],"jì zī":["璾"],suí:["瓍","綏","绥","遀","随","隨","髄"],"mí xǐ":["瓕"],"qióng wěi wèi":["瓗"],"huán yè yà":["瓛"],"bó páo":["瓟"],"zhí hú":["瓡"],piáo:["瓢","闝"],"wǎ wà":["瓦"],"xiáng hóng":["瓨"],wèng:["瓮","甕","罋","蕹","齆"],"shèn shén":["甚"],ruí:["甤","緌","蕤"],yòng:["用","砽","苚","蒏","醟","㶲"],shuǎi:["甩"],béng:["甭","甮"],"yóu zhá":["甴"],"diàn tián shèng":["甸"],"tǐng dīng":["町","甼"],"zāi zī":["甾"],"bì qí":["畁"],"dá fú":["畗"],"cè jì":["畟"],"zāi zī tián":["畠"],"zhì chóu shì":["畤"],"fān pān":["畨","番"],"shē yú":["畬"],"dāng dàng dǎng":["當"],"jiāng qiáng":["疆"],"pǐ yǎ shū":["疋"],"jié qiè":["疌"],"yí nǐ":["疑"],nè:["疒","眲","訥","讷"],"gē yì":["疙"],"nüè yào":["疟","瘧"],"lì lài":["疠","癘"],"yǎ xiā":["疨"],xuē:["疶","蒆","薛","辥","辪","靴","鞾"],"dǎn da":["疸"],"fá biǎn":["疺"],"fèi féi":["疿","痱"],"shān diàn":["痁"],"téng chóng":["痋"],"tōng tóng":["痌"],"wěi yòu yù":["痏"],"tān shǐ":["痑"],"pū pù":["痡","鋪"],"bēng péng":["痭"],"má lìn":["痳"],"tiǎn diàn":["痶"],"ān yè è":["痷"],"kē ē":["痾"],"zhì chì":["瘈"],"jiǎ xiá xiā":["瘕"],"lěi huì":["瘣"],"chài cuó":["瘥"],"diān chēn":["瘨"],"da dá":["瘩"],"biě biē":["瘪"],qué:["瘸"],"dàn dān":["癉"],"guì wēi":["癐"],"nòng nóng":["癑"],"biē biě":["癟"],"bō bǒ":["癷"],bái:["白"],"jí bī":["皀"],"de dì dí dī":["的"],"pā bà":["皅"],"gāo háo":["皋"],"gāo yáo":["皐"],"lì luò bō":["皪"],"zhā cǔ":["皻"],"zhāo zhǎn dǎn":["皽"],"jiān jiàn":["监","監","鋻","间","鞬"],"gài gě hé":["盖"],"máng wàng":["盳"],yuǎn:["盶","逺","遠"],"tián xián":["盷"],"xiāng xiàng":["相"],dǔn:["盹","趸","躉"],"xì pǎn":["盻"],"shěng xǐng":["省"],"yún hùn":["眃"],"miǎn miàn":["眄"],"kàn kān":["看"],"yìng yāng yǎng":["眏"],"yǎo āo ǎo":["眑"],"jū xū kōu":["眗"],"yí chì":["眙"],"dié tì":["眣"],"bǐng fǎng":["眪"],"pàng pán":["眫"],"mī mí":["眯","瞇"],"xuàn shùn xún":["眴"],tiào:["眺","粜","糶","覜","趒"],"zhe zhuó zháo zhāo":["着"],"qiáo shào xiāo":["睄"],"cuó zhuài":["睉"],gùn:["睔","謴"],"suì zuì":["睟"],"pì bì":["睥","稫","辟"],"yì zé gāo":["睪"],"xǐng xìng":["睲"],"guì wèi kuì":["瞆"],"kòu jì":["瞉"],"qióng huán":["瞏"],"mán mén":["瞒","瞞"],"diāo dōu":["瞗"],"lou lóu lǘ":["瞜"],"shùn rún":["瞤"],"liào liǎo":["瞭","钌"],"jiàn xián":["瞯"],"wǔ mí":["瞴"],"guì kuì":["瞶"],"nǐng chēng":["矃"],"huò yuè":["矆"],"mēng méng":["矇"],"kuàng guō":["矌"],"guàn quán":["矔"],"mǎn mán":["矕"],"jīn guān qín":["矜"],"jīn qín guān":["矝"],"yù xù jué":["矞"],"jiǎo jiáo":["矫","矯"],duǎn:["短"],"shí dàn":["石"],"gāng qiāng kòng":["矼"],"huā xū":["砉"],"pīn bīn fēn":["砏"],"yán yàn":["研","硏"],"luǒ kē":["砢"],"fú fèi":["砩","笰"],"zhǔ zhù":["砫"],"lá lì lā":["砬"],"kuāng guāng":["硄"],"gè luò":["硌"],"shuò shí":["硕","碩"],"wèi wéi ái":["硙"],"què kè kù":["硞"],"mǎng bàng":["硥"],"luò lòng":["硦"],"yǒng tóng":["硧"],nüè:["硸","虐"],"kēng kěng":["硻"],"yān yǎn":["硽"],"zhuì chuí duǒ":["硾"],"kōng kòng":["硿"],"zòng cóng":["碂"],"jiān zhàn":["碊"],"lù liù":["碌","陆"],"què xī":["碏"],"lún lǔn lùn":["碖"],"náo gāng":["碙"],"jié yà":["碣"],"wèi wěi":["碨"],"tí dī":["碮"],"chá chā":["碴"],"qiāo què":["碻"],"sù xiè":["碿"],"liú liù":["磂","遛","鎦","馏"],"sī tí":["磃"],"bàng páng":["磅"],"huá kě gū":["磆"],"wěi kuǐ":["磈"],"xiá qià yà":["磍"],"lián qiān":["磏"],"wèi ái gài":["磑"],"lá lā":["磖"],"áo qiāo":["磝"],"pēng pèng":["磞","閛"],"yīn yǐn":["磤"],"lěi léi":["磥"],"mó mò":["磨"],"qì zhú":["磩"],"láo luò":["磱"],"pán bō":["磻"],"jí shé":["磼"],"hé qiāo qiào":["礉"],"kè huò":["礊"],"què hú":["礐"],"è qì":["礘"],cǎ:["礤","礸"],"xián xín":["礥"],"léi lěi lèi":["礧"],"yán yǎn":["礹"],"qí zhǐ":["祇","蚔"],"bēng fāng":["祊"],"bì mì":["祕"],suàn:["祘","笇","筭","算","蒜"],"piào piāo":["票"],"jì zhài":["祭"],"shuì lèi":["祱"],"jìn jīn":["禁"],"chán shàn":["禅"],"yáng shāng":["禓"],"zhī zhǐ tí":["禔"],"shàn chán":["禪"],"yú yù ǒu":["禺"],"zǐ zì":["秄"],"chá ná":["秅"],"zhǒng zhòng chóng":["种"],"hào mào":["秏"],"kù kū":["秙"],zū:["租","葅"],chèng:["秤","穪"],"huó kuò":["秮","秳"],"chēng chèn chèng":["称","稱"],"shì zhì":["秲","銴"],"fù pū":["秿"],"xùn zè":["稄"],"tú shǔ":["稌"],"zhùn zhǔn":["稕"],"jī qí":["稘","綨","觭"],"léng líng":["稜"],"zuì zú sū":["稡"],"xì qiè":["稧","郄"],"zhǒng zhòng":["種"],"zōng zǒng":["稯"],"xián jiān liàn":["稴"],"zī jiū":["稵"],"jī qǐ":["稽"],ròng:["穃"],"shān cǎn cēn":["穇"],"mén méi":["穈"],"jǐ jì":["穖"],"xiāo rào":["穘"],"zhuō bó":["穛"],"tóng zhǒng zhòng":["穜"],zuō:["穝"],"biāo pāo":["穮","藨"],"zhuō jué":["穱"],"cuán zàn":["穳"],"kōng kòng kǒng":["空"],"yū yǔ":["穻"],zhǎi:["窄","鉙"],báo:["窇","雹"],"kū zhú":["窋"],"jiào liáo liù":["窌"],"wā guī":["窐"],"tiǎo yáo":["窕"],"xūn yìn":["窨"],"yà yē":["窫"],"tián diān yǎn":["窴"],"chāo kē":["窼"],"kuǎn cuàn":["窽","窾"],"chù qì":["竐"],"qǔ kǒu":["竘"],"jìng zhěn":["竧"],"kǎn kàn":["竷"],"zhú dǔ":["竺"],"lè jīn":["竻"],"zhuì ruì":["笍"],"háng hàng":["笐"],"cén jìn hán":["笒"],"dā xiá nà":["笚"],"zé zuó":["笮"],"lóng lǒng":["笼","篭","籠","躘","龓"],"zhù zhú":["筑","築"],"dá dā":["答","荅"],shāi:["筛","篩","簁","籭"],"yún jūn":["筠"],"láng làng":["筤","郎","阆"],"zhì zhǐ":["筫"],o:["筽"],"póu bù fú pú":["箁"],"pái bēi":["箄"],gè:["箇","虼","鉻","铬"],"tái chí":["箈"],"guǎi dài":["箉"],"zhào dào":["箌"],"jīng qìng":["箐"],"lín lǐn":["箖"],"jùn qūn":["箘"],"shī yí":["箷","釶"],"yuē yào chuò":["箹"],"xiāo shuò qiào":["箾"],"gōng gǎn lǒng":["篢"],"páng péng":["篣"],"zhuó huò":["篧"],"jiǎn jiān":["篯"],"dí zhú":["篴"],"zān cēn cǎn":["篸"],"zhuàn suǎn zuàn":["篹"],"piǎo biāo":["篻"],"guó guì":["簂"],"cè jí":["簎"],"mì miè":["簚"],"shāi sī":["簛"],"sǔn zhuàn":["簨"],"gàn gǎn":["簳"],"bò bǒ":["簸"],"bó bù":["簿"],shi:["籂"],"zhēn jiān":["籈"],"zhuàn zuǎn":["籑"],"fān pān biān":["籓"],"sǒu shǔ":["籔"],zuǎn:["籫","繤","纂","纉","纘","缵"],nǚ:["籹","釹","钕"],"shā chǎo":["粆"],"kāng jīng":["粇"],fěn:["粉","黺"],cū:["粗","觕","麁","麄","麤"],"nián zhān":["粘"],"cè sè":["粣"],"zhōu yù":["粥"],"shēn sǎn":["糁"],"biān biǎn":["糄","萹"],miàn:["糆","面","靣","麪","麫","麵","麺"],"hú hū hù":["糊"],"gǔ gòu":["糓"],"mí méi":["糜"],"sǎn shēn":["糝","糣"],zāo:["糟","蹧","遭","醩"],"mì sī":["糸"],"jiū jiǔ":["糺"],"xì jì":["系","繫"],"zhēng zhěng":["糽"],"chà chǎ":["紁","衩"],"yuē yāo":["約","约"],"hóng gōng":["紅","红"],"hé gē":["紇","纥"],"wén wèn":["紋","纹"],fóu:["紑"],"jì jié jiè":["紒"],"pī pí bǐ":["紕","纰"],"jīn jìn":["紟"],"zhā zā":["紥","紮"],hā:["紦"],"fū fù":["紨"],"chōu chóu":["紬"],"lèi léi lěi":["累"],"bō bì":["紴"],"tiǎn zhěn":["紾"],"jiōng jiǒng":["絅"],"jié jiē":["結","结","节"],"guà kuā":["絓"],"bǎi mò":["絔"],"gēng huán":["絙"],"jié xié":["絜"],"quán shuān":["絟"],"gǎi ǎi":["絠"],"luò lào":["絡","络"],"bīng bēng pēng":["絣"],"gěi jǐ":["給","给"],"tóng tōng dòng":["絧"],"tiào diào dào":["絩"],"lěi lèi léi":["絫"],"gāi hài":["絯"],"chī zhǐ":["絺"],"wèn miǎn mán wàn":["絻"],"huán huàn wàn":["綄"],"qīn xiān":["綅"],"tì tí":["綈"],"yán xiàn":["綖"],"zōng zèng zòng":["綜"],"chēn lín":["綝"],"zhǔn zhùn":["綧"],"qiàn qīng zhēng":["綪"],"qìng qǐ":["綮"],"lún guān":["綸","纶"],"chuò chāo":["綽","绰"],"tián tǎn chān":["緂"],"lǜ lù":["緑","绿"],"ruǎn ruàn":["緛"],"jí qī":["緝"],"zhòng chóng":["緟","重"],"miáo máo":["緢"],"xiè yè":["緤"],huǎn:["緩","缓","㬊"],"gēng gèng":["緪","縆"],"tōu xū shū":["緰"],"zōng zòng":["緵","繌"],"yùn gǔn":["緷"],"guā wō":["緺"],"yùn yūn wēn":["緼","縕"],"bāng bàng":["縍"],"gǔ hú":["縎","鶻"],"cī cuò suǒ":["縒"],"cuī shuāi":["縗"],"róng rǒng ròng":["縙"],"zài zēng":["縡"],cài:["縩","菜","蔡"],"féng fèng":["縫"],"suō sù":["縮","缩"],"yǎn yǐn":["縯","酓"],"zòng zǒng":["縱","纵"],"zhuàn juàn":["縳"],"mò mù":["縸","莫"],"piǎo piāo":["縹","缥"],"fán pó":["繁"],"bēng bèng":["繃"],"móu miù miào liǎo":["繆"],"yáo yóu zhòu":["繇"],"zēng zèng":["繒","缯"],"jú jué":["繘"],"chuō chuò":["繛"],"zūn zǔn":["繜"],rào:["繞","绕","遶"],"chǎn chán":["繟"],"huì huí":["繢","缋","藱"],"qiāo sāo zǎo":["繰"],"jiǎo zhuó":["繳","缴"],"dàn tán chán":["繵"],nǒng:["繷"],"pú fú":["纀"],"yào lì":["纅"],"rǎng xiāng":["纕"],"lí sǎ xǐ lǐ":["纚"],"xiān qiàn":["纤"],"jīng jìng":["经"],"tí tì":["绨"],"bēng běng bèng":["绷"],"zōng zèng":["综"],"jī qī":["缉"],"wēn yùn yūn":["缊"],"fèng féng":["缝"],"shuāi cuī suī":["缞"],"miù móu liáo miào mù":["缪"],"qiāo sāo":["缲"],fǒu:["缶","缹","缻","雬","鴀"],"bà ba pí":["罢","罷"],"guà guǎi":["罫"],"yáng xiáng":["羊","羏"],"měi gāo":["羙"],"yì xī":["羛"],"qiǎng qiān":["羟"],"qiāng kòng":["羫"],"qián xián yán":["羬"],nóu:["羺"],"hóng gòng":["羾"],"pī bì pō":["翍"],"qú yù":["翑"],ké:["翗"],"qiào qiáo":["翘"],"zhái dí":["翟"],"dào zhōu":["翢"],"hóu qú":["翵"],shuǎ:["耍"],"ruǎn nuò":["耎"],"ér nài":["耏"],"zhuān duān":["耑"],"pá bà":["耙"],"chí sì":["耛"],"qù chú":["耝"],"lún lǔn":["耣"],"jí jiè":["耤"],"tāng tǎng":["耥"],pǎng:["耪","覫"],"zhá zé":["耫"],"yē yé":["耶"],"yún yíng":["耺"],"wà tuǐ zhuó":["聉"],"ér nǜ":["聏"],"tiē zhé":["聑"],"dǐ zhì":["聜"],qié:["聺"],"nǐ jiàn":["聻"],"lèi lē":["肋"],cào:["肏","襙","鄵","鼜"],"bó dí":["肑"],"xiào xiāo":["肖"],"dù dǔ":["肚"],chāi:["肞","釵","钗"],"hán qín hàn":["肣"],"pàng pán pàn":["肨","胖"],"zhūn chún":["肫"],āng:["肮","骯"],"yù yō":["育"],"pí bǐ bì":["肶"],"fèi bì":["胇"],"bèi bēi":["背"],"fèi zǐ":["胏"],"píng pēng":["胓","苹"],"fū fú zhǒu":["胕"],"shèng shēng":["胜"],kuà:["胯","跨","骻"],"gǎi hǎi":["胲"],"gē gé gā":["胳"],"néng nài":["能"],"guī kuì":["胿"],"mài mò":["脉"],"zāng zàng":["脏"],"jiǎo jué":["脚","角"],cuǒ:["脞"],"de te":["脦"],"zuī juān":["脧"],něi:["脮","腇","餒","馁","鮾","鯘"],"pú fǔ":["脯"],niào:["脲"],shuí:["脽"],guò:["腂","過","鐹"],"là xī":["腊"],"yān ā":["腌"],"gāo gào":["膏"],"lù biāo":["膔"],chuái:["膗"],"zhuān chuán chún zhuǎn":["膞"],chuài:["膪","踹"],"fán pán":["膰"],"wǔ hū":["膴"],"shān dàn":["膻"],tún:["臀","臋","蛌","豘","豚","軘","霕","飩","饨","魨","鲀","黗"],"bì bei":["臂"],"là gé":["臈"],"sào sāo":["臊"],nào:["臑","閙","闹","鬧"],"ní luán":["臡"],"qiān xián":["臤"],"guàng jiǒng":["臦"],"guǎng jiǒng":["臩"],"chòu xiù":["臭"],"mián biān":["臱"],"dié zhí":["臷"],"zhī jìn":["臸"],"shè shě":["舍"],pù:["舖","舗"],"bān bō pán":["般"],kuā:["舿"],"gèn gěn":["艮"],"sè shǎi":["色"],"fú bó":["艴"],"jiāo qiú":["艽"],"chāi chā":["芆"],"sháo què":["芍"],"hù xià":["芐"],"zì zǐ":["芓"],"huì hū":["芔"],"tún chūn":["芚"],"jiè gài":["芥"],"xù zhù":["芧"],"yuán yán":["芫"],"xīn xìn":["芯"],"lún huā":["芲"],"wù hū":["芴"],"gōu gǒu":["芶"],"mào máo":["芼"],"fèi fú":["芾"],"chán yín":["苂"],qiē:["苆"],"sū sù":["苏"],"tiáo sháo":["苕"],"lì jī":["苙"],"kē hē":["苛"],"jù qǔ":["苣"],"ruò rě":["若"],"zhù níng":["苧"],"pā bó":["苩"],xiú:["苬"],"zhǎ zuó":["苲"],"jū chá":["苴"],nié:["苶"],"shēng ruí":["苼"],"qié jiā":["茄"],"zǐ cí":["茈"],"qiàn xī":["茜"],chǎi:["茝"],"fá pèi":["茷"],ráo:["荛","蕘","襓","饒","饶"],"yíng xíng":["荥"],"qián xún":["荨","蕁"],"yìn yīn":["荫"],"hé hè":["荷"],"shā suō":["莎"],"péng fēng":["莑"],"shēn xīn":["莘"],"wǎn guān guǎn":["莞"],"yóu sù":["莤"],"shāo xiāo":["莦","蛸"],"làng liáng":["莨"],"piǎo fú":["莩"],"wèn wǎn miǎn":["莬"],"shì shí":["莳","蒔"],"tù tú":["莵"],"xiān liǎn":["莶","薟"],"wǎn yù":["菀"],"zōu chù":["菆"],"lù lǜ":["菉"],"jūn jùn":["菌"],"niè rěn":["菍"],"zī zì zāi":["菑"],"tú tù":["菟"],"jiē shà":["菨"],"qiáo zhǎo":["菬"],"tái zhī chí":["菭"],"fēi fěi":["菲","蜚"],"qín qīn jīn":["菳"],"zū jù":["菹","蒩"],"lǐn má":["菻"],"tián tiàn":["菾"],tiē:["萜","貼","贴"],"luò là lào luō":["落"],"zhù zhuó zhe":["著"],"shèn rèn":["葚"],"gě gé":["葛"],"jùn suǒ":["葰"],"kuì kuài":["蒉"],"rú ná":["蒘"],"méng mēng měng":["蒙"],"yuán huán":["蒝"],"xú shú":["蒣"],"xí xì":["蒵"],"mì míng":["蓂"],"sōu sǒu":["蓃"],"gài gě hé hài":["蓋"],"yǎo zhuó":["蓔"],"diào tiáo dí":["蓧"],"xū qiū fū":["蓲"],"zí jú":["蓻"],"liǎo lù":["蓼"],xu:["蓿"],"hàn hǎn":["蔊"],"màn wàn mán":["蔓"],"pó bò":["蔢"],"fān fán bō":["蕃"],"hóng hòng":["蕻"],"yù ào":["薁","隩"],"xí xiào":["薂"],"báo bó bò":["薄"],"cí zī":["薋"],"wàn luàn":["薍"],"kǎo hāo":["薧"],"yuǎn wěi":["薳"],"zhòu chóu":["薵"],"wō mái":["薶"],"xiāo hào":["藃"],"yù xù xū":["藇"],"jiè jí":["藉"],"diào zhuó":["藋"],"cáng zàng":["藏"],lǎ:["藞"],"chú zhū":["藸"],"pín píng":["蘋"],"gān hán":["虷"],"hóng jiàng":["虹"],"huī huǐ":["虺"],"xiā há":["虾"],"mǎ mà mā":["蚂"],"fāng bàng":["蚄"],"bàng bèng":["蚌"],"jué quē":["蚗"],"qín qián":["蚙"],"gōng zhōng":["蚣"],"fǔ fù":["蚥"],"dài dé":["蚮"],"gǒu qú xù":["蚼"],"bǒ pí":["蚾"],"shé yí":["蛇"],tiě:["蛈","鉄","銕","鐡","鐵","铁","驖"],"gé luò":["蛒"],"máng bàng":["蛖"],"yì xǔ":["蛡"],"há gé":["蛤"],"qiè ní":["蛪"],"é yǐ":["蛾"],"zhē zhé":["蜇"],"là zhà":["蜡"],suò:["蜶","逤"],"yóu qiú":["蝤"],"xiā hā":["蝦"],"xī qī":["螇"],"bī pí":["螕"],"nài něng":["螚"],"hé xiá":["螛"],"guì huǐ":["螝"],"mǎ mā mà":["螞"],"shì zhē":["螫"],"zhì dié":["螲"],"jiàn chán":["螹"],"ma má mò":["蟆"],"mǎng měng":["蟒"],"biē bié":["蟞"],"bēn fèi":["蟦"],"láo liáo":["蟧"],"yín xún":["蟫"],"lí lǐ":["蠡"],"xuè xiě":["血"],"xíng háng hàng héng":["行"],"shuāi cuī":["衰"],"tuó tuō":["袉"],"lǐng líng":["袊"],"bào páo pào":["袌"],"jù jiē":["袓"],"hè kè":["袔"],"yí yì":["袘","貤"],"nà jué":["袦"],"bèi pī":["被"],"chǐ nuǒ":["袲"],"chǐ qǐ duǒ nuǒ":["袳"],"jiá qiā jié":["袷"],"bó mò":["袹"],"guī guà":["袿"],"liè liě":["裂"],"chéng chěng":["裎"],"jiē gé":["裓"],"dāo chóu":["裯"],"shang cháng":["裳"],"yuān gǔn":["裷"],"yǎn ān":["裺"],"tì xī":["裼"],"fù fú":["褔"],"chǔ zhǔ":["褚"],"tuì tùn":["褪"],lǎi:["襰"],"yào yāo":["要"],"qín tán":["覃"],"jiàn xiàn":["見","见"],piǎn:["覑","諞","谝","貵","𡎚"],"piē miè":["覕"],"yíng yǐng":["覮"],"qù qū":["覰","覷","觑"],"jiàn biǎn":["覵"],"luó luǎn":["覶"],"zī zuǐ":["觜"],"huà xiè":["觟"],"jiě jiè xiè":["解","觧"],"xué hù":["觷"],"lì lù":["觻"],tǎo:["討","讨"],zhùn:["訰"],"zī zǐ":["訾"],"yí dài":["詒","诒"],xiòng:["詗","诇"],"diào tiǎo":["誂"],"yí chǐ chì":["誃"],"lǎng làng":["誏"],"ēi éi ěi èi xī":["誒","诶"],shuà:["誜"],"yǔ yù":["語","语","雨"],"shuō shuì yuè":["說","说"],"shuí shéi":["誰","谁"],"qū juè":["誳"],"chī lài":["誺"],"nì ná":["誽"],"diào tiáo":["調"],"pǐ bēi":["諀"],"jì jī":["諅"],"zé zuò zhǎ cuò":["諎"],"chù jí":["諔"],"háo xià":["諕"],"lùn lún":["論","论"],"shì dì":["諟"],"huà guā":["諣"],"xǐ shāi āi":["諰"],"nán nàn":["諵","難"],miù:["謬","谬"],zèn:["譖","谮"],"shí zhì":["識","识"],"juàn xuān":["讂"],"yí tuī":["讉"],zhán:["讝"],"xǔ hǔ":["许"],"xiáng yáng":["详"],"tiáo diào zhōu":["调"],"chén shèn":["谌"],"mí mèi":["谜"],"màn mán":["谩"],"gǔ yù":["谷"],"huō huò huá":["豁"],"zhì zhài":["豸"],"huān huán":["貆"],"kěn kūn":["貇"],"mò hé":["貈"],"mò hé háo":["貉"],"jù lóu":["貗"],"zé zhài":["責","责"],"dài tè":["貸"],"bì bēn":["賁"],"jiǎ gǔ jià":["賈"],"xiōng mín":["賯"],càng:["賶"],"zhuàn zuàn":["賺","赚"],"wàn zhuàn":["贃"],"gàn gòng zhuàng":["贛"],"yuán yùn":["贠"],"bēn bì":["贲"],"jiǎ gǔ":["贾"],zǒu:["走","赱","鯐"],"dié tú":["趃"],"jū qiè":["趄"],"qū cù":["趋","趨"],"jí jié":["趌"],"guā huó":["趏"],"què qì jí":["趞"],"tàng tāng":["趟"],"chuō zhuó":["趠"],"qù cù":["趣"],"yuè tì":["趯"],"bō bào":["趵"],"kuà wù":["趶"],"guì jué":["趹"],"fāng fàng páng":["趽"],"páo bà":["跁"],"qí qǐ":["跂"],"jiàn chén":["跈"],"pǎo páo":["跑"],"diǎn diē tiē":["跕"],"jū jù qiè":["跙"],bǒ:["跛"],"luò lì":["跞"],"dài duò duō chí":["跢"],zhuǎi:["跩"],"bèng pián":["跰"],"tiào táo":["跳"],"shū chōu":["跾"],"liàng liáng":["踉"],"tà tā":["踏"],chǎ:["蹅","鑔","镲"],"dí zhí":["蹢"],"dēng dèng":["蹬","鐙","镫"],cèng:["蹭"],"dūn cún":["蹲"],"juě jué":["蹶"],liāo:["蹽"],"xiè sǎ":["躠"],tǐ:["躰","軆","骵"],"yà zhá gá":["轧","軋"],"xìn xiàn":["軐"],"fàn guǐ":["軓"],"zhuàn zhuǎn":["転"],"zhóu zhòu":["軸","轴"],bú:["轐","醭","鳪"],"zhuǎn zhuàn zhuǎi":["转"],"zǎi zài":["载"],"niǎn zhǎn":["辗"],"biān bian":["边"],"dào biān":["辺"],"yǐ yí":["迆","迤","迱"],"guò guo guō":["过"],"wàng kuāng":["迋"],"hái huán":["还"],"zhè zhèi":["这"],"yuǎn yuàn":["远"],"zhì lì":["迣"],"zhù wǎng":["迬"],"zhuī duī":["追"],"shì kuò":["适"],tòu:["透"],"tōng tòng":["通"],guàng:["逛"],"dǎi dài":["逮"],"suì suí":["遂"],"tí dì":["遆"],"yí wèi":["遗"],"shì dí zhé":["適"],cà:["遪"],"huán hái":["還"],"lí chí":["邌"],"kàng háng":["邟"],"nà nèi nā":["那"],"xié yá yé yú xú":["邪"],"gāi hái":["郂"],"huán xún":["郇"],"chī xī":["郗"],hǎo:["郝"],"lì zhí":["郦"],"xiáo ǎo":["郩"],"dōu dū":["都"],liǎo:["曢","鄝","镽"],"zàn cuán cuó":["酂","酇"],"dīng dǐng":["酊"],"cù zuò":["酢"],"fā pō":["酦"],"shāi shī":["酾"],niàng:["酿","醸"],"qiú chōu":["醔"],"pō fā":["醗","醱"],"chǎn chěn":["醦"],"yàn liǎn xiān":["醶"],"niàng niáng":["釀"],"lǐ li":["里"],"lí xǐ xī":["釐"],"liǎo liào":["釕"],"dīng dìng":["釘","钉"],"qiǎo jiǎo":["釥"],"yú huá":["釪"],"huá wū":["釫"],"rì rèn jiàn":["釰","釼"],"dì dài":["釱"],"pī zhāo":["釽"],"yá yé":["釾"],"bǎ pá":["鈀","钯"],"tā tuó":["鉈","铊"],běi:["鉳"],"bǐng píng":["鉼"],"hā kē":["鉿","铪"],chòng:["銃","铳"],"xiǎng jiōng":["銄"],"yù sì":["銉"],"xù huì":["銊"],"rén rěn":["銋"],"shàn shuò":["銏"],"chì lì":["銐"],"xiǎn xǐ":["銑","铣"],"hóu xiàng":["銗"],"diào tiáo yáo":["銚"],"xiān kuò tiǎn guā":["銛","銽","铦"],"zhé niè":["銸"],"zhōng yōng":["銿"],"tōu tù dòu":["鋀"],"méi méng":["鋂"],"wàn jiǎn":["鋄","鎫"],"tǐng dìng":["鋌","铤"],"juān jiān cuān":["鋑"],"sī tuó":["鋖"],"juān xuān juàn":["鋗"],"wú huá wū":["鋘"],"zhuó chuò":["鋜"],"xíng xìng jīng":["鋞"],"jū jú":["鋦","锔"],"zuì niè":["鋷"],"yuān yuǎn wǎn wān":["鋺"],"gāng gàng":["鋼","钢"],zhuī:["錐","锥","騅","骓","鵻"],ā:["錒","锕"],"cuō chā":["鎈"],"suǒ sè":["鎍"],"yáo zú":["鎐"],"yè tà gé":["鎑"],"qiāng chēng":["鎗"],"gé lì":["鎘","镉","鬲"],"bī pī bì":["鎞"],"gǎo hào":["鎬"],"zú chuò":["鏃"],"xiū xiù":["鏅"],"shòu sōu":["鏉"],"dí dī":["鏑","镝"],"qiāo sǎn càn":["鏒"],"lù áo":["鏕"],"tāng táng":["鏜"],"jiàn zàn":["鏩"],"huì suì ruì":["鏸"],"qiǎng qiāng":["鏹","镪"],"sǎn xiàn sà":["鏾"],"jiǎn jiàn":["鐧","锏"],"dāng chēng":["鐺","铛"],"zuān zuàn":["鑽"],"sà xì":["钑"],"yào yuè":["钥"],"tǒu dǒu":["钭"],"zuàn zuān":["钻"],"qiān yán":["铅"],"pí pī":["铍"],"yáo diào tiáo":["铫"],"tāng tàng":["铴"],"pù pū":["铺"],"tán xiān":["锬"],"liù liú":["镏"],"hào gǎo":["镐"],"táng tāng":["镗"],"tán chán xín":["镡"],"huò shǎn":["閄"],"hàn bì":["閈","闬"],"kāng kàng":["閌","闶"],"xián jiàn jiān jiǎn":["閒"],"xiā xiǎ":["閕"],"xiǎ kě":["閜"],"biàn guān":["閞"],"hé gé":["閤","颌"],"hòng xiàng":["閧"],"sē xī":["閪"],"tíng tǐng":["閮"],"è yān":["閼","阏"],"hòng juǎn xiàng":["闂"],"bǎn pàn":["闆"],"dū shé":["闍","阇"],"què quē":["闕"],"tāng táng chāng":["闛"],"kàn hǎn":["闞","阚"],"xì sè tà":["闟"],"mēn mèn":["闷"],"quē què":["阙"],"yán diàn":["阽"],"ā ē":["阿"],"bēi pō pí":["陂"],"yàn yǎn":["隁"],"yú yáo shù":["隃"],"lóng lōng":["隆"],"duì zhuì":["隊"],"suí duò":["隋"],"gāi qí ái":["隑"],"huī duò":["隓","隳"],"wěi kuí":["隗"],"lì dài":["隸"],"zhuī cuī wéi":["隹"],"hè hú":["隺","鶮"],"jùn juàn":["隽","雋"],"nán nàn nuó":["难"],"què qiāo qiǎo":["雀"],"guàn huán":["雚"],"guī xī":["雟"],"sè xí":["雭"],án:["雸"],"wù méng":["雺"],tèng:["霯"],"lù lòu":["露"],mái:["霾"],"jìng liàng":["靚"],"gé jí":["革"],bǎ:["靶"],"yāng yàng":["鞅"],"gé tà sǎ":["鞈"],"biān yìng":["鞕"],"qiào shāo":["鞘"],"juān xuān":["鞙"],"shàng zhǎng":["鞝"],"pí bǐng bì bēi":["鞞"],la:["鞡"],"xiè dié":["鞢"],ēng:["鞥"],"móu mù":["鞪"],"bì bǐng":["鞸"],"mèi wà":["韎"],rǒu:["韖"],"shè xiè":["韘"],"yùn wēn":["韫"],"dùn dú":["頓","顿"],duǐ:["頧"],luō:["頱"],"bīn pín":["頻"],yóng:["顒","颙","鰫"],mān:["顢","颟"],"jǐng gěng":["颈"],"jié xié jiá":["颉"],"kē ké":["颏"],"pín bīn":["频"],"chàn zhàn":["颤"],"fēng fěng":["風","风"],"biāo diū":["颩"],"bá fú":["颰"],"sāo sōu":["颾"],"liù liáo":["飂"],"shí sì yì":["食"],"yǎng juàn":["飬"],"zhù tǒu":["飳"],"yí sì":["飴"],"zuò zé zhā":["飵"],tiè:["飻","餮"],"xiǎng náng":["饟"],"táng xíng":["饧"],"gē le":["饹"],"chā zha":["馇"],"náng nǎng":["馕"],"yūn wò":["馧"],"zhī shì":["馶"],"xìn jìn":["馸"],"kuài jué":["駃"],zǎng:["駔","驵"],"tái dài":["駘"],"xún xuān":["駨"],"liáng láng":["駺"],piàn:["騗","騙","骗","魸"],"dài tái":["骀"],"sāo sǎo":["骚"],"gǔ gū":["骨"],"bèi mó":["骳"],"xiāo qiāo":["骹"],"bǎng pǎng":["髈"],"bó jué":["髉"],"bì pǒ":["髲"],"máo méng":["髳"],"kuò yuè":["髺"],"bā bà":["魞","鲃"],"jì cǐ":["鮆"],"bó bà":["鮊"],"zhǎ zhà":["鮓","鲊"],"chóu dài":["鮘"],"luò gé":["鮥"],"guī xié wā kuí":["鮭"],"xiān xiǎn":["鮮","鲜"],"pū bū":["鯆"],"yì sī":["鯣"],"bà bó":["鲌"],"guī xié":["鲑"],"sāi xǐ":["鳃"],"niǎo diǎo":["鳥"],"diāo zhāo":["鳭"],"gān hàn yàn":["鳱"],"fū guī":["鳺"],"jiān qiān zhān":["鳽"],"hé jiè":["鶡"],"piān biǎn":["鶣"],"chuàn zhì":["鶨"],"cāng qiāng":["鶬"],"sǔn xùn":["鶽"],"biāo páo":["麃"],"zhù cū":["麆"],"jūn qún":["麇","麕"],chi:["麶"],"mó me":["麼"],"mó me ma":["麽"],"mí mǒ":["麿"],"dàn shèn":["黮"],"zhěn yān":["黰"],"dǎn zhǎn":["黵"],"miǎn mǐn měng":["黾"],hōu:["齁"],nàng:["齉"],"qí jì zī zhāi":["齐"],"yín kěn yǎn":["龂"],"yín kěn":["龈"],"gōng wò":["龏"],"guī jūn qiū":["龜","龟"],"kuí wā":["䖯"],lōu:["䁖"],"ōu qū":["𫭟"],"lóu lǘ":["𦝼"],"gǎ gā gá":["嘎"],"wā guà":["坬"],"zhǐ dǐ":["茋"],"gǒng hóng":["硔"],"yáo xiào":["滧"]},G=new qi;Object.keys(Jn).forEach(n=>{const i=Jn[n];for(let g of i)G.set(g,n)});const ah=["zh","ch","sh","z","c","s","b","p","m","f","d","t","n","l","g","k","h","j","q","x","r","y","w",""],rh=["j","q","x"],jh=["uān","uán","uǎn","uàn","uan","uē","ué","uě","uè","ue","ūn","ún","ǔn","ùn","un","ū","ú","ǔ","ù","u"],bh={uān:"üān",uán:"üán",uǎn:"üǎn",uàn:"üàn",uan:"üan",uē:"üē",ué:"üé",uě:"üě",uè:"üè",ue:"üe",ūn:"ǖn",ún:"ǘn",ǔn:"ǚn",ùn:"ǜn",un:"ün",ū:"ǖ",ú:"ǘ",ǔ:"ǚ",ù:"ǜ",u:"ü"},mh=["ia","ian","iang","iao","ie","iu","iong","ua","uai","uan","uang","ue","ui","uo","üan","üe","van","ve"],ni={一:"yì",二:"èr",三:"sān",四:"sì",五:"wǔ",六:"liù",七:"qī",八:"bā",九:"jiǔ",十:"shí",百:"bǎi",千:"qiān",万:"wàn",亿:"yì",单:"dān",两:"liǎng",双:"shuāng",多:"duō",几:"jǐ",十一:"shí yī",零一:"líng yī",第一:"dì yī",一十:"yī shí",一十一:"yī shí yī"},ii={重:"chóng",行:"háng",斗:"dǒu",更:"gēng"};function xh(){const n={零一:"líng yī","〇一":"líng yī",十一:"shí yī",一十:"yī shí",第一:"dì yī",一十一:"yī shí yī"};for(let i in ni)for(let g in ii){const u=`${i}${g}`,h=`${ni[i]} ${ii[g]}`;n[u]=h}return n}const gi=xh(),fh=Object.keys(gi).map(n=>({zh:n,pinyin:gi[n],probability:1e-12,length:O(n),priority:R.Normal,dict:Symbol("rule")})),pi={不:{bú:[4]},一:{yí:[4],yì:[1,2,3]}},wh={不:["的","而","之","后","也","还","地"],一:["的","而","之","后","也","还","是"]},qh=Object.keys(pi);function ph(n,i,g){if(qh.indexOf(n)===-1)return dn(n);if(i===g&&i&&dn(i)!==i)return kn(dn(n));if(g&&!wh[n].includes(g)){const u=dn(g);if(u!==g){const h=Tn(u),e=pi[n];for(let s in e)if(e[s].indexOf(Number(h))!==-1)return s}}}function vh(n,i){if(n==="了"&&(!i||!G.get(i)))return"liǎo"}function kh(n,i){if(n==="々")return!i||!G.get(i)?"tóng":G.get(i).split(" ")[0]}function hi(n,i,g){return kh(n,i)||vh(n,i)||ph(n,i,g)||dn(n)}const _n={南宫:"nán gōng",第五:"dì wǔ",万俟:"mò qí",司马:"sī mǎ",上官:"shàng guān",欧阳:"ōu yáng",夏侯:"xià hóu",诸葛:"zhū gě",闻人:"wén rén",东方:"dōng fāng",赫连:"hè lián",皇甫:"huáng fǔ",尉迟:"yù chí",公羊:"gōng yáng",澹台:"tán tái",公冶:"gōng yě",宗政:"zōng zhèng",濮阳:"pú yáng",淳于:"chún yú",太叔:"tài shū",申屠:"shēn tú",公孙:"gōng sūn",仲孙:"zhòng sūn",轩辕:"xuān yuán",令狐:"líng hú",钟离:"zhōng lí",宇文:"yǔ wén",长孙:"zhǎng sūn",慕容:"mù róng",鲜于:"xiān yú",闾丘:"lǘ qiū",司徒:"sī tú",司空:"sī kōng",亓官:"qí guān",司寇:"sī kòu",仉督:"zhǎng dū",子车:"zǐ jū",颛孙:"zhuān sūn",端木:"duān mù",巫马:"wū mǎ",公西:"gōng xī",漆雕:"qī diāo",乐正:"yuè zhèng",壤驷:"rǎng sì",公良:"gōng liáng",拓跋:"tuò bá",夹谷:"jiá gǔ",宰父:"zǎi fǔ",榖梁:"gǔ liáng",段干:"duàn gān",百里:"bǎi lǐ",东郭:"dōng guō",南门:"nán mén",呼延:"hū yán",羊舌:"yáng shé",梁丘:"liáng qiū",左丘:"zuǒ qiū",东门:"dōng mén",西门:"xī mén",句龙:"gōu lóng",毌丘:"guàn qiū",赵:"zhào",钱:"qián",孙:"sūn",李:"lǐ",周:"zhōu",吴:"wú",郑:"zhèng",王:"wáng",冯:"féng",陈:"chén",褚:"chǔ",卫:"wèi",蒋:"jiǎng",沈:"shěn",韩:"hán",杨:"yáng",朱:"zhū",秦:"qín",尤:"yóu",许:"xǔ",何:"hé",吕:"lǚ",施:"shī",张:"zhāng",孔:"kǒng",曹:"cáo",严:"yán",华:"huà",金:"jīn",魏:"wèi",陶:"táo",姜:"jiāng",戚:"qī",谢:"xiè",邹:"zōu",喻:"yù",柏:"bǎi",水:"shuǐ",窦:"dòu",章:"zhāng",云:"yún",苏:"sū",潘:"pān",葛:"gě",奚:"xī",范:"fàn",彭:"péng",郎:"láng",鲁:"lǔ",韦:"wéi",昌:"chāng",马:"mǎ",苗:"miáo",凤:"fèng",花:"huā",方:"fāng",俞:"yú",任:"rén",袁:"yuán",柳:"liǔ",酆:"fēng",鲍:"bào",史:"shǐ",唐:"táng",费:"fèi",廉:"lián",岑:"cén",薛:"xuē",雷:"léi",贺:"hè",倪:"ní",汤:"tāng",滕:"téng",殷:"yīn",罗:"luó",毕:"bì",郝:"hǎo",邬:"wū",安:"ān",常:"cháng",乐:"yuè",于:"yú",时:"shí",傅:"fù",皮:"pí",卞:"biàn",齐:"qí",康:"kāng",伍:"wǔ",余:"yú",元:"yuán",卜:"bǔ",顾:"gù",孟:"mèng",平:"píng",黄:"huáng",和:"hé",穆:"mù",萧:"xiāo",尹:"yǐn",姚:"yáo",邵:"shào",湛:"zhàn",汪:"wāng",祁:"qí",毛:"máo",禹:"yǔ",狄:"dí",米:"mǐ",贝:"bèi",明:"míng",臧:"zāng",计:"jì",伏:"fú",成:"chéng",戴:"dài",谈:"tán",宋:"sòng",茅:"máo",庞:"páng",熊:"xióng",纪:"jǐ",舒:"shū",屈:"qū",项:"xiàng",祝:"zhù",董:"dǒng",梁:"liáng",杜:"dù",阮:"ruǎn",蓝:"lán",闵:"mǐn",席:"xí",季:"jì",麻:"má",强:"qiáng",贾:"jiǎ",路:"lù",娄:"lóu",危:"wēi",江:"jiāng",童:"tóng",颜:"yán",郭:"guō",梅:"méi",盛:"shèng",林:"lín",刁:"diāo",钟:"zhōng",徐:"xú",邱:"qiū",骆:"luò",高:"gāo",夏:"xià",蔡:"cài",田:"tián",樊:"fán",胡:"hú",凌:"líng",霍:"huò",虞:"yú",万:"wàn",支:"zhī",柯:"kē",昝:"zǎn",管:"guǎn",卢:"lú",莫:"mò",经:"jīng",房:"fáng",裘:"qiú",缪:"miào",干:"gān",解:"xiè",应:"yīng",宗:"zōng",丁:"dīng",宣:"xuān",贲:"bēn",邓:"dèng",郁:"yù",单:"shàn",杭:"háng",洪:"hóng",包:"bāo",诸:"zhū",左:"zuǒ",石:"shí",崔:"cuī",吉:"jí",钮:"niǔ",龚:"gōng",程:"chéng",嵇:"jī",邢:"xíng",滑:"huá",裴:"péi",陆:"lù",荣:"róng",翁:"wēng",荀:"xún",羊:"yáng",於:"yū",惠:"huì",甄:"zhēn",曲:"qū",家:"jiā",封:"fēng",芮:"ruì",羿:"yì",储:"chǔ",靳:"jìn",汲:"jí",邴:"bǐng",糜:"mí",松:"sōng",井:"jǐng",段:"duàn",富:"fù",巫:"wū",乌:"wū",焦:"jiāo",巴:"bā",弓:"gōng",牧:"mù",隗:"wěi",山:"shān",谷:"gǔ",车:"chē",侯:"hóu",宓:"mì",蓬:"péng",全:"quán",郗:"xī",班:"bān",仰:"yǎng",秋:"qiū",仲:"zhòng",伊:"yī",宫:"gōng",宁:"nìng",仇:"qiú",栾:"luán",暴:"bào",甘:"gān",钭:"tǒu",厉:"lì",戎:"róng",祖:"zǔ",武:"wǔ",符:"fú",刘:"liú",景:"jǐng",詹:"zhān",束:"shù",龙:"lóng",叶:"yè",幸:"xìng",司:"sī",韶:"sháo",郜:"gào",黎:"lí",蓟:"jì",薄:"bó",印:"yìn",宿:"sù",白:"bái",怀:"huái",蒲:"pú",邰:"tái",从:"cóng",鄂:"è",索:"suǒ",咸:"xián",籍:"jí",赖:"lài",卓:"zhuó",蔺:"lìn",屠:"tú",蒙:"méng",池:"chí",乔:"qiáo",阴:"yīn",鬱:"yù",胥:"xū",能:"nài",苍:"cāng",双:"shuāng",闻:"wén",莘:"shēn",党:"dǎng",翟:"zhái",谭:"tán",贡:"gòng",劳:"láo",逄:"páng",姬:"jī",申:"shēn",扶:"fú",堵:"dǔ",冉:"rǎn",宰:"zǎi",郦:"lì",雍:"yōng",郤:"xì",璩:"qú",桑:"sāng",桂:"guì",濮:"pú",牛:"niú",寿:"shòu",通:"tōng",边:"biān",扈:"hù",燕:"yān",冀:"jì",郏:"jiá",浦:"pǔ",尚:"shàng",农:"nóng",温:"wēn",别:"bié",庄:"zhuāng",晏:"yàn",柴:"chái",瞿:"qú",阎:"yán",充:"chōng",慕:"mù",连:"lián",茹:"rú",习:"xí",宦:"huàn",艾:"ài",鱼:"yú",容:"róng",向:"xiàng",古:"gǔ",易:"yì",慎:"shèn",戈:"gē",廖:"liào",庾:"yǔ",终:"zhōng",暨:"jì",居:"jū",衡:"héng",步:"bù",都:"dū",耿:"gěng",满:"mǎn",弘:"hóng",匡:"kuāng",国:"guó",文:"wén",寇:"kòu",广:"guǎng",禄:"lù",阙:"quē",东:"dōng",欧:"ōu",殳:"shū",沃:"wò",利:"lì",蔚:"wèi",越:"yuè",夔:"kuí",隆:"lóng",师:"shī",巩:"gǒng",厍:"shè",聂:"niè",晁:"cháo",勾:"gōu",敖:"áo",融:"róng",冷:"lěng",訾:"zī",辛:"xīn",阚:"kàn",那:"nā",简:"jiǎn",饶:"ráo",空:"kōng",曾:"zēng",母:"mǔ",沙:"shā",乜:"niè",养:"yǎng",鞠:"jū",须:"xū",丰:"fēng",巢:"cháo",关:"guān",蒯:"kuǎi",相:"xiàng",查:"zhā",后:"hòu",荆:"jīng",红:"hóng",游:"yóu",竺:"zhú",权:"quán",逯:"lù",盖:"gě",益:"yì",桓:"huán",公:"gōng",牟:"móu",哈:"hǎ",言:"yán",福:"fú",肖:"xiāo",区:"ōu",覃:"qín",朴:"piáo",繁:"pó",员:"yùn",句:"gōu",要:"yāo",过:"guō",钻:"zuān",谌:"chén",折:"shé",召:"shào",郄:"qiè",撒:"sǎ",甯:"nìng",六:"lù",啜:"chuài",行:"xíng"},Th=Object.keys(_n).map(n=>({zh:n,pinyin:_n[n],probability:1+O(n),length:O(n),priority:R.Surname,dict:Symbol("surname")})),ui={这个:"zhè ge",成为:"chéng wéi",认为:"rèn wéi",作为:"zuò wéi",部分:"bù fen",要求:"yāo qiú",应该:"yīng gāi",增长:"zēng zhǎng",提供:"tí gōng",觉得:"jué de",任务:"rèn wu",那个:"nà ge",称为:"chēng wéi",为主:"wéi zhǔ",了解:"liǎo jiě",处理:"chǔ lǐ",皇上:"huáng shang",只要:"zhǐ yào",大量:"dà liàng",力量:"lì liàng",几乎:"jī hū",干部:"gàn bù",目的:"mù dì",行为:"xíng wéi",只见:"zhǐ jiàn",认识:"rèn shi",市长:"shì zhǎng",师父:"shī fu",调查:"diào chá",重新:"chóng xīn",分为:"fēn wéi",知识:"zhī shi",导弹:"dǎo dàn",质量:"zhì liàng",行款:"háng kuǎn",行列:"háng liè",行话:"háng huà",行业:"háng yè",隔行:"gé háng",在行:"zài háng",行家:"háng jia",内行:"nèi háng",外行:"wài háng",同行:"tóng háng",本行:"běn háng",行伍:"háng wǔ",洋行:"yáng háng",银行:"yín háng",商行:"shāng háng",支行:"zhī háng",总行:"zǒng háng",行情:"háng qíng",懂行:"dǒng háng",行规:"háng guī",行当:"háng dang",行货:"háng huò",太行:"tài háng",入行:"rù háng",中行:"zhōng háng",农行:"nóng háng",工行:"gōng háng",建行:"jiàn háng",各行:"gè háng",行号:"háng hào",行高:"háng gāo",行首:"háng shǒu",行尾:"háng wěi",行末:"háng mò",行长:"háng cháng",行距:"háng jù",换行:"huàn háng",行会:"háng huì",行辈:"háng bèi",行道:"háng dào",道行:"dào heng",参与:"cān yù",充分:"chōng fèn",尽管:"jǐn guǎn",生长:"shēng zhǎng",数量:"shù liàng",应当:"yīng dāng",院长:"yuàn zhǎng",强调:"qiáng diào",只能:"zhǐ néng",音乐:"yīn yuè",以为:"yǐ wéi",处于:"chǔ yú",部长:"bù zhǎng",蒙古:"měng gǔ",只有:"zhǐ yǒu",适当:"shì dàng",只好:"zhǐ hǎo",成长:"chéng zhǎng",高兴:"gāo xìng",不了:"bù liǎo",产量:"chǎn liàng",胖子:"pàng zi",显得:"xiǎn de",只是:"zhǐ shì",似的:"shì de",率领:"shuài lǐng",改为:"gǎi wéi",不禁:"bù jīn",成分:"chéng fèn",答应:"dā ying",少年:"shào nián",兴趣:"xìng qù",太监:"tài jian",休息:"xiū xi",校长:"xiào zhǎng",更新:"gēng xīn",合同:"hé tong",喝道:"hè dào",重庆:"chóng qìng",重建:"chóng jiàn",使得:"shǐ de",审查:"shěn chá",累计:"lěi jì",给予:"jǐ yǔ",极为:"jí wéi",冠军:"guàn jūn",仿佛:"fǎng fú",头发:"tóu fa",投降:"tóu xiáng",家长:"jiā zhǎng",仔细:"zǐ xì",要是:"yào shi",将领:"jiàng lǐng",含量:"hán liàng",更为:"gèng wéi",积累:"jī lěi",地处:"dì chǔ",县长:"xiàn zhǎng",少女:"shào nǚ",路上:"lù shang",只怕:"zhǐ pà",能量:"néng liàng",储量:"chǔ liàng",供应:"gōng yìng",挑战:"tiǎo zhàn",西藏:"xī zàng",记得:"jì de",总量:"zǒng liàng",当真:"dàng zhēn",将士:"jiàng shì",差别:"chā bié",较为:"jiào wéi",长老:"zhǎng lǎo",大夫:"dài fu",差异:"chā yì",懂得:"dǒng de",尽量:"jǐn liàng",模样:"mú yàng",的确:"dí què",为首:"wéi shǒu",便宜:"pián yi",更名:"gēng míng",石头:"shí tou",州长:"zhōu zhǎng",为止:"wéi zhǐ",漂亮:"piào liang",炮弹:"pào dàn",藏族:"zàng zú",角色:"jué sè",当作:"dàng zuò",尽快:"jǐn kuài",人为:"rén wéi",重复:"chóng fù",胡同:"hú tòng",差距:"chā jù",弟兄:"dì xiong",大将:"dà jiàng",睡觉:"shuì jiào",一觉:"yí jiào",团长:"tuán zhǎng",队长:"duì zhǎng",区长:"qū zhǎng",难得:"nán dé",丫头:"yā tou",会长:"huì zhǎng",弟弟:"dì di",王爷:"wáng ye",重量:"zhòng liàng",誉为:"yù wéi",家伙:"jiā huo",华山:"huà shān",椅子:"yǐ zi",流量:"liú liàng",长大:"zhǎng dà",勉强:"miǎn qiǎng",会计:"kuài jì",过分:"guò fèn",济南:"jǐ nán",调动:"diào dòng",燕京:"yān jīng",少将:"shào jiàng",中毒:"zhòng dú",晓得:"xiǎo de",变更:"biàn gēng",打更:"dǎ gēng",认得:"rèn de",苹果:"píng guǒ",念头:"niàn tou",挣扎:"zhēng zhá",三藏:"sān zàng",剥削:"bō xuē",丞相:"chéng xiàng",少量:"shǎo liàng",寻思:"xún si",夺得:"duó dé",干线:"gàn xiàn",呼吁:"hū yù",处罚:"chǔ fá",长官:"zhǎng guān",柏林:"bó lín",亲戚:"qīn qi",身分:"shēn fèn",胳膊:"gē bo",着手:"zhuó shǒu",炸弹:"zhà dàn",咳嗽:"ké sou",叶子:"yè zi",外长:"wài zhǎng",供给:"gōng jǐ",师长:"shī zhǎng",变量:"biàn liàng",应有:"yīng yǒu",下载:"xià zài",乐器:"yuè qì",间接:"jiàn jiē",底下:"dǐ xià",打扮:"dǎ bàn",子弹:"zǐ dàn",弹药:"dàn yào",热量:"rè liàng",削弱:"xuē ruò",骨干:"gǔ gàn",容量:"róng liàng",模糊:"mó hu",转动:"zhuàn dòng",称呼:"chēng hu",科长:"kē zhǎng",处置:"chǔ zhì",着重:"zhuó zhòng",着急:"zháo jí",强迫:"qiǎng pò",庭长:"tíng zhǎng",首相:"shǒu xiàng",喇嘛:"lǎ ma",镇长:"zhèn zhǎng",只管:"zhǐ guǎn",重重:"chóng chóng",免得:"miǎn de",着实:"zhuó shí",度假:"dù jià",真相:"zhēn xiàng",相貌:"xiàng mào",处分:"chǔ fèn",委屈:"wěi qu",为期:"wéi qī",伯伯:"bó bo",伯子:"bǎi zi",圈子:"quān zi",见识:"jiàn shi",笼罩:"lǒng zhào",与会:"yù huì",都督:"dū du",都市:"dū shì",成都:"chéng dū",首都:"shǒu dū",帝都:"dì dū",王都:"wáng dū",东都:"dōng dū",都护:"dū hù",都城:"dū chéng",建都:"jiàn dū",迁都:"qiān dū",故都:"gù dū",定都:"dìng dū",中都:"zhōng dū",六安:"lù ān",宰相:"zǎi xiàng",较量:"jiào liàng",对称:"duì chèn",总长:"zǒng zhǎng",相公:"xiàng gong",空白:"kòng bái",打量:"dǎ liang",水分:"shuǐ fèn",舌头:"shé tou",没收:"mò shōu",行李:"xíng li",判处:"pàn chǔ",散文:"sǎn wén",处境:"chǔ jìng",孙子:"sūn zi",拳头:"quán tou",打发:"dǎ fā",组长:"zǔ zhǎng",骨头:"gǔ tou",宁可:"nìng kě",更换:"gēng huàn",薄弱:"bó ruò",还原:"huán yuán",重修:"chóng xiū",重来:"chóng lái",只顾:"zhǐ gù",爱好:"ài hào",馒头:"mán tou",军长:"jūn zhǎng",首长:"shǒu zhǎng",厂长:"chǎng zhǎng",司长:"sī zhǎng",长子:"zhǎng zǐ",强劲:"qiáng jìng",恰当:"qià dàng",头儿:"tóu er",站长:"zhàn zhǎng",折腾:"zhē teng",相处:"xiāng chǔ",统率:"tǒng shuài",中将:"zhōng jiàng",命中:"mìng zhòng",名将:"míng jiàng",木头:"mù tou",动弹:"dòng tan",地壳:"dì qiào",干活:"gàn huó",少爷:"shào ye",水量:"shuǐ liàng",补给:"bǔ jǐ",尾巴:"wěi ba",来得:"lái de",好奇:"hào qí",钥匙:"yào shi",当做:"dàng zuò",沉着:"chén zhuó",哑巴:"yǎ ba",车子:"chē zi",上将:"shàng jiàng",恶心:"ě xīn",担子:"dàn zi",应届:"yīng jiè",主角:"zhǔ jué",运转:"yùn zhuǎn",兄长:"xiōng zhǎng",格式:"gé shì",正月:"zhēng yuè",营长:"yíng zhǎng",当成:"dàng chéng",女婿:"nǚ xu",咽喉:"yān hóu",重阳:"chóng yáng",化为:"huà wéi",吐蕃:"tǔ bō",钻进:"zuān jìn",乐队:"yuè duì",亮相:"liàng xiàng",被子:"bèi zi",舍得:"shě de",杉木:"shā mù",击中:"jī zhòng",排长:"pái zhǎng",假期:"jià qī",分量:"fèn liàng",数次:"shù cì",提防:"dī fáng",吆喝:"yāo he",查处:"chá chǔ",量子:"liàng zǐ",里头:"lǐ tou",调研:"diào yán",伺候:"cì hou",重申:"chóng shēn",枕头:"zhěn tou",拚命:"pīn mìng",社长:"shè zhǎng",归还:"guī huán",批量:"pī liàng",畜牧:"xù mù",点着:"diǎn zháo",甚为:"shèn wéi",小将:"xiǎo jiàng",着眼:"zhuó yǎn",处死:"chǔ sǐ",厌恶:"yàn wù",鼓乐:"gǔ yuè",树干:"shù gàn",秘鲁:"bì lǔ",大方:"dà fāng",外头:"wài tou",班长:"bān zhǎng",星宿:"xīng xiù",宁愿:"nìng yuàn",钦差:"qīn chāi",为数:"wéi shù",勾当:"gòu dàng",削减:"xuē jiǎn",间谍:"jiàn dié",埋怨:"mán yuàn",结实:"jiē shi",计量:"jì liáng",淹没:"yān mò",村长:"cūn zhǎng",连长:"lián zhǎng",自给:"zì jǐ",武将:"wǔ jiàng",温差:"wēn chā",直奔:"zhí bèn",供求:"gōng qiú",剂量:"jì liàng",道长:"dào zhǎng",泄露:"xiè lòu",王八:"wáng ba",切割:"qiē gē",间隔:"jiàn gé",一晃:"yì huǎng",长假:"cháng jià",令狐:"líng hú",为害:"wéi hài",句子:"jù zi",偿还:"cháng huán",疙瘩:"gē da",燕山:"yān shān",堵塞:"dǔ sè",夺冠:"duó guàn",扎实:"zhā shi",电荷:"diàn hè",看守:"kān shǒu",复辟:"fù bì",郁闷:"yù mèn",尽早:"jǐn zǎo",切断:"qiē duàn",指头:"zhǐ tou",为生:"wéi shēng",畜生:"chù sheng",切除:"qiē chú",着力:"zhuó lì",着想:"zhuó xiǎng",级差:"jí chā",投奔:"tóu bèn",棍子:"gùn zi",含糊:"hán hu",少妇:"shào fù",兴致:"xìng zhì",纳闷:"nà mèn",干流:"gàn liú",卷起:"juǎn qǐ",扇子:"shàn zi",更改:"gēng gǎi",笼络:"lǒng luò",喇叭:"lǎ ba",载荷:"zài hè",妥当:"tuǒ dàng",为难:"wéi nán",着陆:"zhuó lù",燕子:"yàn zi",干吗:"gàn má",白发:"bái fà",总得:"zǒng děi",夹击:"jiā jī",曝光:"bào guāng",曲调:"qǔ diào",相机:"xiàng jī",叫化:"jiào huà",角逐:"jué zhú",啊哟:"ā yō",载重:"zài zhòng",长辈:"zhǎng bèi",出差:"chū chāi",垛口:"duǒ kǒu",撇开:"piē kāi",厅长:"tīng zhǎng",组分:"zǔ fèn",误差:"wù chā",家当:"jiā dàng",传记:"zhuàn jì",个子:"gè zi",铺设:"pū shè",干事:"gàn shì",杆菌:"gǎn jūn",定量:"dìng liàng",运载:"yùn zài",会儿:"huì er",酋长:"qiú zhǎng",重返:"chóng fǎn",差额:"chā é",露面:"lòu miàn",钻研:"zuān yán",大城:"dài chéng",上当:"shàng dàng",销量:"xiāo liàng",作坊:"zuō fang",照相:"zhào xiàng",哎呀:"āi yā",调集:"diào jí",看中:"kàn zhòng",议长:"yì zhǎng",风筝:"fēng zheng",辟邪:"bì xié",空隙:"kòng xì",更迭:"gēng dié",偏差:"piān chā",声调:"shēng diào",适量:"shì liàng",屯子:"tún zi",无量:"wú liàng",空地:"kòng dì",调度:"diào dù",散射:"sǎn shè",创伤:"chuāng shāng",海参:"hǎi shēn",满载:"mǎn zài",重叠:"chóng dié",落差:"luò chā",单调:"dān diào",老将:"lǎo jiàng",人参:"rén shēn",间断:"jiàn duàn",重现:"chóng xiàn",夹杂:"jiā zá",调用:"diào yòng",萝卜:"luó bo",附着:"fù zhuó",应声:"yìng shēng",主将:"zhǔ jiàng",罪过:"zuì guo",咀嚼:"jǔ jué",为政:"wéi zhèng",过量:"guò liàng",乐曲:"yuè qǔ",负荷:"fù hè",枪弹:"qiāng dàn",悄然:"qiǎo rán",处方:"chǔ fāng",悄声:"qiǎo shēng",曲子:"qǔ zi",情调:"qíng diào",挑衅:"tiǎo xìn",代为:"dài wéi",了结:"liǎo jié",打中:"dǎ zhòng",酒吧:"jiǔ bā",懒得:"lǎn de",增量:"zēng liàng",衣着:"yī zhuó",部将:"bù jiàng",要塞:"yào sài",茶几:"chá jī",杠杆:"gàng gǎn",出没:"chū mò",鲜有:"xiǎn yǒu",间隙:"jiàn xì",重担:"zhòng dàn",重演:"chóng yǎn",重试:"chóng shì",应酬:"yìng chou",只当:"zhǐ dāng",毋宁:"wú nìng",包扎:"bāo zā",前头:"qián tou",卷烟:"juǎn yān",非得:"fēi děi",弹道:"dàn dào",杆子:"gān zi",门将:"mén jiàng",后头:"hòu tou",喝彩:"hè cǎi",暖和:"nuǎn huo",累积:"lěi jī",调遣:"diào qiǎn",倔强:"jué jiàng",宝藏:"bǎo zàng",丧事:"sāng shì",约莫:"yuē mo",纤夫:"qiàn fū",更替:"gēng tì",装载:"zhuāng zài",背包:"bēi bāo",帖子:"tiě zi",松散:"sōng sǎn",呼喝:"hū hè",可恶:"kě wù",自转:"zì zhuàn",供电:"gōng diàn",反省:"fǎn xǐng",坦率:"tǎn shuài",苏打:"sū dá",本分:"běn fèn",落得:"luò de",鄙薄:"bǐ bó",相间:"xiāng jiàn",单薄:"dān bó",混蛋:"hún dàn",贞观:"zhēn guān",附和:"fù hè",能耐:"néng nài",吓唬:"xià hu",未了:"wèi liǎo",引着:"yǐn zháo",抽调:"chōu diào",沙子:"shā zi",席卷:"xí juǎn",标的:"biāo dì",别扭:"biè niu",思量:"sī liang",喝采:"hè cǎi",论语:"lún yǔ",盖子:"gài zi",分外:"fèn wài",弄堂:"lòng táng",乐舞:"yuè wǔ",雨量:"yǔ liàng",毛发:"máo fà",差遣:"chāi qiǎn",背负:"bēi fù",转速:"zhuàn sù",声乐:"shēng yuè",夹攻:"jiā gōng",供水:"gōng shuǐ",主干:"zhǔ gàn",惩处:"chéng chǔ",长相:"zhǎng xiàng",公差:"gōng chāi",榴弹:"liú dàn",省得:"shěng de",条子:"tiáo zi",重围:"chóng wéi",阻塞:"zǔ sè",劲风:"jìng fēng",纠葛:"jiū gé",颠簸:"diān bǒ",点中:"diǎn zhòng",重创:"zhòng chuāng",姥姥:"lǎo lao",迷糊:"mí hu",公家:"gōng jia",几率:"jī lǜ",苦闷:"kǔ mèn",度量:"dù liàng",差错:"chā cuò",暑假:"shǔ jià",参差:"cēn cī",搭载:"dā zài",助长:"zhù zhǎng",相称:"xiāng chèn",红晕:"hóng yùn",舍命:"shě mìng",喜好:"xǐ hào",列传:"liè zhuàn",劲敌:"jìng dí",蛤蟆:"há ma",请假:"qǐng jià",钉子:"dīng zi",沉没:"chén mò",高丽:"gāo lí",休假:"xiū jià",无为:"wú wéi",巴结:"bā jie",了得:"liǎo dé",变相:"biàn xiàng",核弹:"hé dàn",亲家:"qìng jia",承载:"chéng zài",喝问:"hè wèn",还击:"huán jī",交还:"jiāo huán",将令:"jiàng lìng",单于:"chán yú",空缺:"kòng quē",绿林:"lù lín",胆量:"dǎn liàng",执着:"zhí zhuó",低调:"dī diào",闭塞:"bì sè",轻薄:"qīng bó",得当:"dé dàng",占卜:"zhān bǔ",扫帚:"sào zhou",龟兹:"qiū cí",年长:"nián zhǎng",外传:"wài zhuàn",头子:"tóu zi",裁缝:"cái feng",礼乐:"lǐ yuè",血泊:"xuè pō",散乱:"sǎn luàn",动量:"dòng liàng",倒腾:"dǎo teng",取舍:"qǔ shě",咱家:"zán jiā",长发:"cháng fà",爪哇:"zhǎo wā",弹壳:"dàn ké",省悟:"xǐng wù",嚷嚷:"rāng rang",连累:"lián lèi",应得:"yīng dé",族长:"zú zhǎng",柜子:"guì zi",擂鼓:"léi gǔ",眩晕:"xuàn yùn",调配:"tiáo pèi",躯干:"qū gàn",差役:"chāi yì",坎坷:"kǎn kě",少儿:"shào ér",乐团:"yuè tuán",养分:"yǎng fèn",退还:"tuì huán",格调:"gé diào",语调:"yǔ diào",音调:"yīn diào",乐府:"yuè fǔ",古朴:"gǔ pǔ",打点:"dǎ diǎn",差使:"chāi shǐ",匀称:"yún chèn",瘦削:"shòu xuē",膏药:"gāo yao",吞没:"tūn mò",调任:"diào rèn",散居:"sǎn jū",上头:"shàng tóu",风靡:"fēng mǐ",放假:"fàng jià",估量:"gū liang",失当:"shī dàng",中弹:"zhòng dàn",妄为:"wàng wéi",长者:"zhǎng zhě",起哄:"qǐ hòng",末了:"mò liǎo",相声:"xiàng sheng",校正:"jiào zhèng",劝降:"quàn xiáng",矢量:"shǐ liàng",沉闷:"chén mèn",给与:"jǐ yǔ",解法:"jiě fǎ",塞外:"sài wài",将校:"jiàng xiào",嗜好:"shì hào",没落:"mò luò",朴刀:"pō dāo",片子:"piān zi",切削:"qiē xiāo",弹丸:"dàn wán",稀薄:"xī bó",亏得:"kuī dé",间歇:"jiàn xiē",翘首:"qiáo shǒu",色调:"sè diào",处决:"chǔ jué",表率:"biǎo shuài",尺子:"chǐ zi",招降:"zhāo xiáng",称职:"chèn zhí",斗篷:"dǒu peng",铺子:"pù zi",底子:"dǐ zi",负载:"fù zài",干警:"gàn jǐng",倒数:"dào shǔ",将官:"jiàng guān",锄头:"chú tou",归降:"guī xiáng",疟疾:"nüè ji",唠叨:"láo dao",限量:"xiàn liàng",屏息:"bǐng xī",重逢:"chóng féng",器乐:"qì yuè",氢弹:"qīng dàn",脖颈:"bó gěng",妃子:"fēi zi",处事:"chǔ shì",参量:"cān liàng",轻率:"qīng shuài",缥缈:"piāo miǎo",中奖:"zhòng jiǎng",才干:"cái gàn",施舍:"shī shě",卷子:"juàn zi",游说:"yóu shuì",巷子:"xiàng zi",膀胱:"páng guāng",切勿:"qiè wù",看管:"kān guǎn",风头:"fēng tou",精干:"jīng gàn",高差:"gāo chā",恐吓:"kǒng hè",扁担:"biǎn dàn",给养:"jǐ yǎng",格子:"gé zi",供需:"gōng xū",反差:"fǎn chā",飞弹:"fēi dàn",微薄:"wēi bó",发型:"fà xíng",即兴:"jí xìng",攒动:"cuán dòng",间或:"jiàn huò",浅薄:"qiǎn bó",乐章:"yuè zhāng",顺差:"shùn chā",调子:"diào zi",相位:"xiàng wèi",转子:"zhuàn zǐ",劲旅:"jìng lǚ",咔嚓:"kā chā",了事:"liǎo shì",转悠:"zhuàn you",当铺:"dàng pù",爪子:"zhuǎ zi",单子:"dān zi",好战:"hào zhàn",燕麦:"yàn mài",只许:"zhǐ xǔ",干练:"gàn liàn",女将:"nǚ jiàng",酒量:"jiǔ liàng",划船:"huá chuán",伎俩:"jì liǎng",挑拨:"tiǎo bō",少校:"shào xiào",着落:"zhuó luò",憎恶:"zēng wù",刻薄:"kè bó",要挟:"yāo xié",用处:"yòng chu",还手:"huán shǒu",模具:"mú jù",执著:"zhí zhuó",喝令:"hè lìng",保长:"bǎo zhǎng",吸着:"xī zhe",症结:"zhēng jié",公转:"gōng zhuàn",校勘:"jiào kān",重提:"chóng tí",扫兴:"sǎo xìng",铺盖:"pū gài",长史:"zhǎng shǐ",差价:"chā jià",压根:"yà gēn",怔住:"zhèng zhù",应允:"yīng yǔn",切入:"qiē rù",战将:"zhàn jiàng",年少:"nián shào",舍身:"shě shēn",执拗:"zhí niù",处世:"chǔ shì",中风:"zhòng fēng",等量:"děng liàng",放量:"fàng liàng",腔调:"qiāng diào",老少:"lǎo shào",没入:"mò rù",瓜葛:"guā gé",将帅:"jiàng shuài",车载:"chē zài",窝囊:"wō nang",长进:"zhǎng jìn",可汗:"kè hán",并州:"bīng zhōu",供销:"gōng xiāo",切片:"qiē piàn",差事:"chāi shì",知会:"zhī hui",鹰爪:"yīng zhǎo",处女:"chǔ nǚ",切磋:"qiē cuō",日头:"rì tou",押解:"yā jiè",滋长:"zī zhǎng",道观:"dào guàn",脚色:"jué sè",当量:"dāng liàng",婆家:"pó jia",缘分:"yuán fèn",空闲:"kòng xián",好色:"hào sè",怒喝:"nù hè",笼统:"lǒng tǒng",边塞:"biān sài",何曾:"hé céng",重合:"chóng hé",零散:"líng sǎn",轰隆:"hōng lōng",化子:"huà zi",内蒙:"nèi měng",数落:"shǔ luò",逆差:"nì chā",牟利:"móu lì",栅栏:"zhà lan",中标:"zhòng biāo",调档:"diào dàng",佝偻:"gōu lóu",场子:"chǎng zi",甲壳:"jiǎ qiào",重温:"chóng wēn",炮制:"páo zhì",返还:"fǎn huán",自传:"zì zhuàn",高调:"gāo diào",殷红:"yān hóng",固着:"gù zhuó",强求:"qiǎng qiú",本相:"běn xiàng",骄横:"jiāo hèng",草率:"cǎo shuài",气闷:"qì mèn",着色:"zhuó sè",宁肯:"nìng kěn",兴头:"xìng tou",拘泥:"jū nì",夹角:"jiā jiǎo",发髻:"fà jì",猛将:"měng jiàng",约摸:"yuē mo",拖累:"tuō lěi",呢绒:"ní róng",钻探:"zuān tàn",夹层:"jiā céng",落魄:"luò pò",巷道:"hàng dào",运量:"yùn liàng",解闷:"jiě mèn",空儿:"kòng er",估摸:"gū mo",好客:"hào kè",钻孔:"zuān kǒng",糊弄:"hù nòng",荥阳:"xíng yáng",烦闷:"fán mèn",仓卒:"cāng cù",分叉:"fēn chà",厂子:"chǎng zi",小调:"xiǎo diào",少阳:"shào yáng",受降:"shòu xiáng",染坊:"rǎn fáng",胳臂:"gē bei",将门:"jiàng mén",模板:"mú bǎn",配给:"pèi jǐ",为伍:"wéi wǔ",跟头:"gēn tou",划算:"huá suàn",累赘:"léi zhui",哄笑:"hōng xiào",晕眩:"yūn xuàn",干掉:"gàn diào",缝制:"féng zhì",难处:"nán chù",着意:"zhuó yì",蛮横:"mán hèng",奇数:"jī shù",短发:"duǎn fà",生还:"shēng huán",还清:"huán qīng",看护:"kān hù",直率:"zhí shuài",奏乐:"zòu yuè",载客:"zài kè",专横:"zhuān hèng",湮没:"yān mò",空格:"kòng gé",铺垫:"pū diàn",良将:"liáng jiàng",哗啦:"huā lā",散漫:"sǎn màn",脱发:"tuō fà",送还:"sòng huán",埋没:"mái mò",累及:"lěi jí",薄雾:"bó wù",调离:"diào lí",舌苔:"shé tāi",机长:"jī zhǎng",栓塞:"shuān sè",配角:"pèi jué",切口:"qiē kǒu",创口:"chuāng kǒu",哈欠:"hā qian",实弹:"shí dàn",铺平:"pū píng",哈达:"hǎ dá",懒散:"lǎn sǎn",实干:"shí gàn",填空:"tián kòng",刁钻:"diāo zuān",乐师:"yuè shī",量变:"liàng biàn",诱降:"yòu xiáng",搪塞:"táng sè",征调:"zhēng diào",夹道:"jiā dào",干咳:"gān ké",止咳:"zhǐ ké",乐工:"yuè gōng",划过:"huá guò",着火:"zháo huǒ",更正:"gēng zhèng",给付:"jǐ fù",空子:"kòng zi",哪吒:"né zhā",正着:"zhèng zháo",刷子:"shuā zi",丧葬:"sāng zàng",夹带:"jiā dài",安分:"ān fèn",中意:"zhòng yì",长孙:"zhǎng sūn",校订:"jiào dìng",卷曲:"juǎn qū",载运:"zài yùn",投弹:"tóu dàn",柞蚕:"zuò cán",份量:"fèn liàng",调换:"diào huàn",了然:"liǎo rán",咧嘴:"liě zuǐ",典当:"diǎn dàng",寒假:"hán jià",长兄:"zhǎng xiōng",给水:"jǐ shuǐ",须发:"xū fà",枝干:"zhī gàn",属相:"shǔ xiàng",哄抢:"hōng qiǎng",刻划:"kè huà",塞子:"sāi zi",单干:"dān gàn",还乡:"huán xiāng",兆头:"zhào tou",寺观:"sì guàn",督率:"dū shuài",啊哈:"ā ha",割舍:"gē shě",抹布:"mā bù",好恶:"hào wù",下处:"xià chǔ",消长:"xiāo zhǎng",离间:"lí jiàn",准头:"zhǔn tou",校对:"jiào duì",什物:"shí wù",番禺:"pān yú",佛爷:"fó ye",吗啡:"mǎ fēi",盐分:"yán fèn",虎将:"hǔ jiàng",薄荷:"bò he",独处:"dú chǔ",空位:"kòng wèi",铺路:"pū lù",乌拉:"wū lā",调回:"diào huí",来头:"lái tou",闲散:"xián sǎn",胶卷:"jiāo juǎn",冒失:"mào shi",干劲:"gàn jìn",弦乐:"xián yuè",相国:"xiàng guó",丹参:"dān shēn",助兴:"zhù xìng",铺开:"pū kāi",次长:"cì zhǎng",发卡:"fà qiǎ",拮据:"jié jū",刹车:"shā chē",生发:"shēng fà",重播:"chóng bō",缝合:"féng hé",音量:"yīn liàng",少尉:"shào wèi",冲压:"chòng yā",苍劲:"cāng jìng",厚薄:"hòu báo",威吓:"wēi hè",外相:"wài xiàng",呼号:"hū háo",着迷:"zháo mí",挑担:"tiāo dàn",纹路:"wén lù",还俗:"huán sú",强横:"qiáng hèng",着数:"zhāo shù",降顺:"xiáng shùn",挑明:"tiǎo míng",眯缝:"mī feng",分内:"fèn nèi",更衣:"gēng yī",软和:"ruǎn huo",尽兴:"jìn xìng",号子:"hào zi",爪牙:"zhǎo yá",败将:"bài jiàng",猜中:"cāi zhòng",结扎:"jié zā",没空:"méi kòng",夹缝:"jiā fèng",拾掇:"shí duo",掺和:"chān huo",簸箕:"bò ji",电量:"diàn liàng",荷载:"hè zǎi",调式:"diào shì",处身:"chǔ shēn",打手:"dǎ shǒu",弹弓:"dàn gōng",横蛮:"hèng mán",能干:"néng gàn",校点:"jiào diǎn",加载:"jiā zài",干校:"gàn xiào",哄传:"hōng chuán",校注:"jiào zhù",淤塞:"yū sè",马扎:"mǎ zhá",月氏:"yuè zhī",高干:"gāo gàn",经传:"jīng zhuàn",曾孙:"zēng sūn",好斗:"hào dòu",关卡:"guān qiǎ",逃奔:"táo bèn",磨蹭:"mó ceng",牟取:"móu qǔ",颤栗:"zhàn lì",蚂蚱:"mà zha",撮合:"cuō he",趔趄:"liè qie",摔打:"shuāi dǎ",台子:"tái zi",分得:"fēn de",粘着:"nián zhuó",采邑:"cài yì",散装:"sǎn zhuāng",婀娜:"ē nuó",兴味:"xìng wèi",行头:"xíng tou",气量:"qì liàng",调运:"diào yùn",处治:"chǔ zhì",乐音:"yuè yīn",充塞:"chōng sè",恫吓:"dòng hè",论调:"lùn diào",相中:"xiāng zhòng",民乐:"mín yuè",炮仗:"pào zhang",丧服:"sāng fú",骁将:"xiāo jiàng",量刑:"liàng xíng",缝补:"féng bǔ",财会:"cái kuài",大干:"dà gàn",历数:"lì shǔ",校场:"jiào chǎng",塞北:"sài běi",识相:"shí xiàng",辱没:"rǔ mò",鲜亮:"xiān liàng",语塞:"yǔ sè",露脸:"lòu liǎn",凉快:"liáng kuai",腰杆:"yāo gǎn",溜达:"liū da",嘎嘎:"gā gā",公干:"gōng gàn",桔梗:"jié gěng",挑逗:"tiǎo dòu",看门:"kān mén",乐歌:"yuè gē",拓片:"tà piàn",挑动:"tiǎo dòng",准将:"zhǔn jiàng",遒劲:"qiú jìng",磨坊:"mò fáng",逶迤:"wēi yí",搅和:"jiǎo huo",摩挲:"mó suō",作弄:"zuò nòng",苗头:"miáo tou",打颤:"dǎ zhàn",大藏:"dà zàng",畜牲:"chù shēng",勾搭:"gōu da",树荫:"shù yīn",树杈:"shù chà",铁杆:"tiě gǎn",将相:"jiàng xiàng",份子:"fèn zi",视差:"shì chā",绿荫:"lǜ yīn",枪杆:"qiāng gǎn",缝纫:"féng rèn",愁闷:"chóu mèn",点将:"diǎn jiàng",华佗:"huà tuó",劲射:"jìng shè",箱笼:"xiāng lǒng",终了:"zhōng liǎo",鬓发:"bìn fà",结巴:"jiē ba",苦干:"kǔ gàn",看家:"kān jiā",正旦:"zhēng dàn",中肯:"zhòng kěn",厦门:"xià mén",东莞:"dōng guǎn",食量:"shí liàng",宫调:"gōng diào",间作:"jiàn zuò",弹片:"dàn piàn",差池:"chā chí",漂白:"piǎo bái",杠子:"gàng zi",调处:"tiáo chǔ",好动:"hào dòng",转炉:"zhuàn lú",屏气:"bǐng qì",夹板:"jiā bǎn",哀乐:"āi yuè",干道:"gàn dào",苦处:"kǔ chù",劈柴:"pǐ chái",长势:"zhǎng shì",天华:"tiān huá",共处:"gòng chǔ",校验:"jiào yàn",出塞:"chū sài",磨盘:"mò pán",萎靡:"wěi mǐ",奔丧:"bēn sāng",唱和:"chàng hè",大调:"dà diào",非分:"fēi fèn",钻营:"zuān yíng",夹子:"jiā zi",超载:"chāo zài",更始:"gēng shǐ",铃铛:"líng dang",披散:"pī sàn",发还:"fā huán",转轮:"zhuàn lún",横财:"hèng cái",泡桐:"pāo tóng",抛撒:"pāo sǎ",天呀:"tiān yā",糊糊:"hū hu",躯壳:"qū qiào",通量:"tōng liàng",奉还:"fèng huán",午觉:"wǔ jiào",闷棍:"mèn gùn",浪头:"làng tou",砚台:"yàn tái",油坊:"yóu fáng",学长:"xué zhǎng",过载:"guò zài",笔调:"bǐ diào",衣被:"yī bèi",畜产:"xù chǎn",调阅:"diào yuè",蛮干:"mán gàn",曾祖:"zēng zǔ",提干:"tí gàn",变调:"biàn diào",覆没:"fù mò",模子:"mú zi",乐律:"yuè lǜ",称心:"chèn xīn",木杆:"mù gān",重印:"chóng yìn",自省:"zì xǐng",提调:"tí diào",看相:"kàn xiàng",芋头:"yù tou",下切:"xià qiē",塞上:"sài shàng",铺张:"pū zhāng",藤蔓:"téng wàn",薄幸:"bó xìng",解数:"xiè shù",褪去:"tuì qù",霰弹:"xiàn dàn",柚木:"yóu mù",痕量:"hén liàng",雅乐:"yǎ yuè",号哭:"háo kū",诈降:"zhà xiáng",猪圈:"zhū juàn",咋舌:"zé shé",铣床:"xǐ chuáng",防弹:"fáng dàn",健将:"jiàn jiàng",丽水:"lí shuǐ",削发:"xuē fà",空当:"kòng dāng",多相:"duō xiàng",鲜见:"xiǎn jiàn",划桨:"huá jiǎng",载波:"zài bō",跳蚤:"tiào zao",俏皮:"qiào pí",吧嗒:"bā dā",结发:"jié fà",了断:"liǎo duàn",同调:"tóng diào",石磨:"shí mò",时差:"shí chā",鼻塞:"bí sè",挑子:"tiāo zi",推磨:"tuī mò",武侯:"wǔ hóu",抹煞:"mǒ shā",调转:"diào zhuǎn",籍没:"jí mò",还债:"huán zhài",调演:"diào yǎn",分划:"fēn huá",奇偶:"jī ǒu",断喝:"duàn hè",闷雷:"mèn léi",狼藉:"láng jí",饭量:"fàn liàng",还礼:"huán lǐ",转调:"zhuǎn diào",星相:"xīng xiàng",手相:"shǒu xiàng",配乐:"pèi yuè",盖头:"gài tou",连杆:"lián gǎn",簿记:"bù jì",刀把:"dāo bà",量词:"liàng cí",名角:"míng jué",步调:"bù diào",校本:"jiào běn",账簿:"zhàng bù",隽永:"juàn yǒng",稍为:"shāo wéi",易传:"yì zhuàn",乐谱:"yuè pǔ",牵累:"qiān lěi",答理:"dā li",喝斥:"hè chì",吟哦:"yín é",干渠:"gàn qú",海量:"hǎi liàng",精当:"jīng dàng",着床:"zhuó chuáng",月相:"yuè xiàng",庶几:"shù jī",宫观:"gōng guàn",论处:"lùn chǔ",征辟:"zhēng bì",厚朴:"hòu pò",介壳:"jiè qiào",吭哧:"kēng chī",咯血:"kǎ xiě",铺陈:"pū chén",重生:"chóng shēng",乐理:"yuè lǐ",哀号:"āi háo",藏历:"zàng lì",刚劲:"gāng jìng",削平:"xuē píng",浓荫:"nóng yīn",城垛:"chéng duǒ",当差:"dāng chāi",正传:"zhèng zhuàn",并处:"bìng chǔ",创面:"chuāng miàn",旦角:"dàn jué",薄礼:"bó lǐ",晃荡:"huàng dang",臊子:"sào zi",家什:"jiā shí",闷头:"mēn tóu",美发:"měi fà",度数:"dù shu",着凉:"zháo liáng",闯将:"chuǎng jiàng",几案:"jī àn",姘头:"pīn tou",差数:"chā shù",散碎:"sǎn suì",壅塞:"yōng sè",寒颤:"hán zhàn",牵强:"qiān qiǎng",无间:"wú jiàn",轮转:"lún zhuàn",号叫:"háo jiào",铺排:"pū pái",降伏:"xiáng fú",轧钢:"zhá gāng",东阿:"dōng ē",病假:"bìng jià",累加:"lěi jiā",梗塞:"gěng sè",弹夹:"dàn jiā",钻心:"zuān xīn",晃眼:"huǎng yǎn",魔爪:"mó zhǎo",标量:"biāo liàng",憋闷:"biē mèn",猜度:"cāi duó",处士:"chǔ shì",官差:"guān chāi",讨还:"tǎo huán",长门:"cháng mén",馏分:"liú fēn",里弄:"lǐ lòng",色相:"sè xiàng",雅兴:"yǎ xìng",角力:"jué lì",弹坑:"dàn kēng",枝杈:"zhī chà",夹具:"jiā jù",处刑:"chǔ xíng",悍将:"hàn jiàng",好学:"hào xué",好好:"hǎo hǎo",银发:"yín fà",扫把:"sào bǎ",法相:"fǎ xiàng",贵干:"guì gàn",供气:"gōng qì",空余:"kòng yú",捆扎:"kǔn zā",瘠薄:"jí bó",浆糊:"jiàng hu",嘎吱:"gā zhī",调令:"diào lìng",法帖:"fǎ tiè",淋病:"lìn bìng",调派:"diào pài",转盘:"zhuàn pán",供稿:"gōng gǎo",差官:"chāi guān",忧闷:"yōu mèn",教长:"jiào zhǎng",重唱:"chóng chàng",酒兴:"jiǔ xìng",乐坛:"yuè tán",花呢:"huā ní",叱喝:"chì hè",膀臂:"bǎng bì",得空:"dé kòng",转圈:"zhuàn quān",横暴:"hèng bào",哄抬:"hōng tái",引吭:"yǐn háng",载货:"zài huò",中计:"zhòng jì",官长:"guān zhǎng",相面:"xiàng miàn",看头:"kàn tou",盼头:"pàn tou",意兴:"yì xìng",军乐:"jūn yuè",累次:"lěi cì",骨嘟:"gǔ dū",燕赵:"yān zhào",报丧:"bào sāng",弥撒:"mí sa",挨斗:"ái dòu",扁舟:"piān zhōu",丑角:"chǒu jué",吊丧:"diào sāng",强将:"qiáng jiàng",重奏:"chóng zòu",发辫:"fà biàn",着魔:"zháo mó",着法:"zhāo fǎ",盛放:"shèng fàng",填塞:"tián sè",凶横:"xiōng hèng",稽首:"qǐ shǒu",碑帖:"bēi tiè",冲量:"chōng liàng",发菜:"fà cài",假发:"jiǎ fà",翻卷:"fān juǎn",小量:"xiǎo liàng",胶着:"jiāo zhuó",里子:"lǐ zi",调调:"diào diao",散兵:"sǎn bīng",高挑:"gāo tiǎo",播撒:"bō sǎ",夹心:"jiā xīn",扇动:"shān dòng",叨扰:"tāo rǎo",霓裳:"ní cháng",捻子:"niǎn zi",弥缝:"mí féng",撒布:"sǎ bù",场院:"cháng yuàn",省亲:"xǐng qīn",提拉:"tí lā",惯量:"guàn liàng",强逼:"qiáng bī",强征:"qiáng zhēng",晕车:"yùn chē",数道:"shù dào",带累:"dài lèi",拓本:"tà běn",嫌恶:"xián wù",宿将:"sù jiàng",龟裂:"jūn liè",缠夹:"chán jiā",发式:"fà shì",隔扇:"gé shàn",天分:"tiān fèn",癖好:"pǐ hào",四通:"sì tōng",白术:"bái zhú",划伤:"huá shāng",角斗:"jué dòu",听差:"tīng chāi",岁差:"suì chā",丧礼:"sāng lǐ",脉脉:"mò mò",削瘦:"xuē shòu",撒播:"sǎ bō",莎草:"suō cǎo",犍为:"qián wéi",调头:"diào tóu",龙卷:"lóng juǎn",外调:"wài diào",字帖:"zì tiè",卷发:"juǎn fà",揣度:"chuǎi duó",洋相:"yáng xiàng",散光:"sǎn guāng",骨碌:"gū lu",薄命:"bó mìng",笼头:"lóng tóu",咽炎:"yān yán",碌碡:"liù zhou",片儿:"piàn er",纤手:"qiàn shǒu",散体:"sǎn tǐ",内省:"nèi xǐng",强留:"qiáng liú",解送:"jiè sòng",反间:"fǎn jiàn",少壮:"shào zhuàng",留空:"liú kōng",告假:"gào jià",咳血:"ké xuè",薄暮:"bó mù",铺轨:"pū guǐ",磨削:"mó xuē",治丧:"zhì sāng",叉子:"chā zi",哄动:"hōng dòng",蛾子:"é zi",出落:"chū luò",股长:"gǔ zhǎng",贵处:"guì chù",还魂:"huán hún",例假:"lì jià",刹住:"shā zhù",身量:"shēn liàng",同好:"tóng hào",模量:"mó liàng",更生:"gēng shēng",服丧:"fú sāng",率直:"shuài zhí",字模:"zì mú",散架:"sǎn jià",答腔:"dā qiāng",交恶:"jiāo wù",薄情:"bó qíng",眼泡:"yǎn pāo",袅娜:"niǎo nuó",草垛:"cǎo duò",冲劲:"chòng jìn",呢喃:"ní nán",切中:"qiè zhòng",挑灯:"tiǎo dēng",还愿:"huán yuàn",激将:"jī jiàng",更鼓:"gēng gǔ",没药:"mò yào",败兴:"bài xìng",切面:"qiē miàn",散户:"sǎn hù",累进:"lěi jìn",背带:"bēi dài",秤杆:"chèng gǎn",碾坊:"niǎn fáng",簿子:"bù zi",扳手:"bān shǒu",铅山:"yán shān",儒将:"rú jiàng",重光:"chóng guāng",剪发:"jiǎn fà",长上:"zhǎng shàng",小传:"xiǎo zhuàn",压轴:"yā zhòu",弱冠:"ruò guàn",花卷:"huā juǎn",横祸:"hèng huò",夹克:"jiā kè",光晕:"guāng yùn",披靡:"pī mǐ",对调:"duì diào",夹持:"jiā chí",空额:"kòng é",平调:"píng diào",铺床:"pū chuáng",丧钟:"sāng zhōng",作乐:"zuò lè",少府:"shào fǔ",数数:"shuò shuò",奔头:"bèn tou",进给:"jìn jǐ",率性:"shuài xìng",乐子:"lè zi",绑扎:"bǎng zā",挑唆:"tiǎo suō",漂洗:"piǎo xǐ",夹墙:"jiā qiáng",咳喘:"ké chuǎn",乜斜:"miē xie",错处:"cuò chù",闷酒:"mèn jiǔ",时调:"shí diào",重孙:"chóng sūn",经幢:"jīng chuáng",圩场:"xū chǎng",调门:"diào mén",花头:"huā tóu",划拉:"huá la",套色:"tào shǎi",粗率:"cū shuài",相率:"xiāng shuài",款识:"kuǎn zhì",吁请:"yù qǐng",荫蔽:"yīn bì",文蛤:"wén gé",嘀嗒:"dī dā",调取:"diào qǔ",交差:"jiāo chāi",落子:"luò zǐ",相册:"xiàng cè",絮叨:"xù dao",落发:"luò fà",异相:"yì xiàng",浸没:"jìn mò",角抵:"jué dǐ",卸载:"xiè zài",春卷:"chūn juǎn",扎挣:"zhá zheng",畜养:"xù yǎng",吡咯:"bǐ luò",垛子:"duò zi",恶少:"è shào",发际:"fà jì",红苕:"hóng sháo",糨糊:"jiàng hu",哭丧:"kū sāng",稍息:"shào xī",晕船:"yùn chuán",校样:"jiào yàng",外差:"wài chā",脚爪:"jiǎo zhǎo",铺展:"pū zhǎn",芫荽:"yán sui",夹紧:"jiā jǐn",尿泡:"suī pào",丧乱:"sāng luàn",凶相:"xiōng xiàng",华发:"huá fà",打场:"dǎ cháng",云量:"yún liàng",正切:"zhèng qiē",划拳:"huá quán",划艇:"huá tǐng",评传:"píng zhuàn",拉纤:"lā qiàn",句读:"jù dòu",散剂:"sǎn jì",骨殖:"gǔ shi",塞音:"sè yīn",铺叙:"pū xù",阏氏:"yān zhī",冷颤:"lěng zhàn",煞住:"shā zhù",少男:"shào nán",管乐:"guǎn yuè",号啕:"háo táo",纳降:"nà xiáng",拥塞:"yōng sè",万乘:"wàn shèng",杆儿:"gǎn ér",葛藤:"gé téng",簿籍:"bù jí",皮夹:"pí jiā",校准:"jiào zhǔn",允当:"yǔn dàng",器量:"qì liàng",选调:"xuǎn diào",扮相:"bàn xiàng",干才:"gàn cái",基干:"jī gàn",割切:"gē qiē",国乐:"guó yuè",卡壳:"qiǎ ké",辟谷:"bì gǔ",磨房:"mò fáng",咿呀:"yī yā",芥末:"jiè mo",薄技:"bó jì",产假:"chǎn jià",诗兴:"shī xìng",重出:"chóng chū",转椅:"zhuàn yǐ",酌量:"zhuó liang",簿册:"bù cè",藏青:"zàng qīng",的士:"dī shì",调人:"diào rén",解元:"jiè yuán",茎干:"jīng gàn",巨量:"jù liàng",榔头:"láng tou",率真:"shuài zhēn",喷香:"pèn xiāng",锁钥:"suǒ yuè",虾蟆:"há má",相图:"xiàng tú",兴会:"xìng huì",灶头:"zào tóu",重婚:"chóng hūn",钻洞:"zuān dòng",忖度:"cǔn duó",党参:"dǎng shēn",调温:"diào wēn",杆塔:"gān tǎ",葛布:"gé bù",拱券:"gǒng xuàn",夹生:"jiā shēng",露馅:"lòu xiàn",恰切:"qià qiè",散见:"sǎn jiàn",哨卡:"shào qiǎ",烫发:"tàng fà",体量:"tǐ liàng",挺括:"tǐng kuò",系带:"jì dài",相士:"xiàng shì",羊圈:"yáng juàn",转矩:"zhuàn jǔ",吧台:"bā tái",苍术:"cāng zhú",菲薄:"fěi bó",蛤蚧:"gé jiè",蛤蜊:"gé lí",瓜蔓:"guā wàn",怪相:"guài xiàng",临帖:"lín tiè",女红:"nǚ gōng",刨床:"bào chuáng",翘楚:"qiáo chǔ",数九:"shǔ jiǔ",谈兴:"tán xìng",雄劲:"xióng jìng",扎染:"zā rǎn",遮荫:"zhē yīn",周正:"zhōu zhèng",赚头:"zhuàn tou",扒手:"pá shǒu",搀和:"chān huo",诚朴:"chéng pǔ",肚量:"dù liàng",干结:"gān jié",工尺:"gōng chě",家累:"jiā lěi",曲水:"qū shuǐ",沙参:"shā shēn",挑花:"tiǎo huā",阿门:"ā mén",背篓:"bēi lǒu",瘪三:"biē sān",裁处:"cái chǔ",创痛:"chuāng tòng",福相:"fú xiàng",更动:"gēng dòng",豪兴:"háo xìng",还阳:"huán yáng",还嘴:"huán zuǐ",借调:"jiè diào",卷云:"juǎn yún",流弹:"liú dàn",想头:"xiǎng tou",削价:"xuē jià",校阅:"jiào yuè",雅量:"yǎ liàng",别传:"bié zhuàn",薄酒:"bó jiǔ",春假:"chūn jià",发妻:"fà qī",哗哗:"huā huā",宽绰:"kuān chuo",了悟:"liǎo wù",切花:"qiē huā",审度:"shěn duó",应许:"yīng xǔ",转台:"zhuàn tái",仔猪:"zǐ zhū",裁量:"cái liáng",藏戏:"zàng xì",乘兴:"chéng xìng",绸缪:"chóu móu",摧折:"cuī zhé",调经:"tiáo jīng",调职:"diào zhí",缝缀:"féng zhuì",骨朵:"gū duǒ",核儿:"hú er",恒量:"héng liàng",还价:"huán jià",浑朴:"hún pǔ",苦差:"kǔ chāi",面糊:"miàn hù",煞车:"shā chē",省视:"xǐng shì",什锦:"shí jǐn",信差:"xìn chāi",余切:"yú qiē",攒眉:"cuán méi",炸糕:"zhá gāo",钻杆:"zuàn gǎn",扒灰:"pá huī",拌和:"bàn huò",长调:"cháng diào",大溜:"dà liù",抖搂:"dǒu lōu",飞转:"fēi zhuàn",干仗:"gàn zhàng",好胜:"hào shèng",画片:"huà piàn",搅混:"jiǎo hún",螺杆:"luó gǎn",木模:"mù mú",怒号:"nù háo",频数:"pín shù",无宁:"wú níng",遗少:"yí shào",邮差:"yóu chāi",占卦:"zhān guà",占星:"zhān xīng",重审:"chóng shěn",自量:"zì liàng",调防:"diào fáng",发廊:"fà láng",反调:"fǎn diào",缝子:"fèng zi",更夫:"gēng fū",骨子:"gǔ zi",光杆:"guāng gǎn",夹棍:"jiā gùn",居丧:"jū sāng",巨贾:"jù gǔ",看押:"kān yā",空转:"kōng zhuàn",量力:"liàng lì",炮烙:"páo luò",赔还:"péi huán",扑扇:"pū shān",散记:"sǎn jì",散件:"sǎn jiàn",删削:"shān xuē",射干:"shè gàn",条几:"tiáo jī",偷空:"tōu kòng",削壁:"xuē bì",校核:"jiào hé",阴干:"yīn gān",择菜:"zhái cài",重九:"chóng jiǔ",主调:"zhǔ diào",自禁:"zì jīn",吧唧:"bā jī",便溺:"biàn niào",词调:"cí diào",叨咕:"dáo gu",落枕:"lào zhěn",铺砌:"pū qì",刷白:"shuà bái",委靡:"wěi mǐ",系泊:"xì bó",相马:"xiàng mǎ",熨帖:"yù tiē",转筋:"zhuàn jīn",棒喝:"bàng hè",傧相:"bīn xiàng",镐头:"gǎo tóu",间苗:"jiàn miáo",乐池:"yuè chí",卖相:"mài xiàng",屏弃:"bǐng qì",铅弹:"qiān dàn",切变:"qiē biàn",请调:"qǐng diào",群氓:"qún méng",散板:"sǎn bǎn",省察:"xǐng chá",事假:"shì jià",纤绳:"qiàn shéng",重影:"chóng yǐng",耕种:"gēng zhòng",种地:"zhòng dì",种菜:"zhòng cài",栽种:"zāi zhòng",接种:"jiē zhòng",垦种:"kěn zhòng",种殖:"zhòng zhí",种瓜:"zhòng guā",种豆:"zhòng dòu",种树:"zhòng shù",睡着:"shuì zháo",笼子:"lóng zi",重启:"chóng qǐ",重整:"chóng zhěng",重弹:"chóng tán",重足:"chóng zú",重山:"chóng shān",重游:"chóng yóu",重峦:"chóng luán",爷爷:"yé ye",奶奶:"nǎi nai",姥爷:"lǎo ye",爸爸:"bà ba",妈妈:"mā ma",婶婶:"shěn shen",舅舅:"jiù jiu",姑姑:"gū gu",叔叔:"shū shu",姨夫:"yí fu",舅母:"jiù mu",姑父:"gū fu",姐夫:"jiě fu",婆婆:"pó po",公公:"gōng gong",舅子:"jiù zi",姐姐:"jiě jie",哥哥:"gē ge",妹妹:"mèi mei",妹夫:"mèi fu",姨子:"yí zi",宝宝:"bǎo bao",娃娃:"wá wa",孩子:"hái zi",日子:"rì zi",样子:"yàng zi",狮子:"shī zi",身子:"shēn zi",架子:"jià zi",嫂子:"sǎo zi",鼻子:"bí zi",亭子:"tíng zi",折子:"zhé zi",面子:"miàn zi",脖子:"bó zi",辈子:"bèi zi",帽子:"mào zi",拍子:"pāi zi",柱子:"zhù zi",辫子:"biàn zi",鸽子:"gē zi",房子:"fáng zi",丸子:"wán zi",摊子:"tān zi",牌子:"pái zi",胡子:"hú zi",鬼子:"guǐ zi",矮子:"ǎi zi",鸭子:"yā zi",小子:"xiǎo zi",影子:"yǐng zi",屋子:"wū zi",对子:"duì zi",点子:"diǎn zi",本子:"běn zi",种子:"zhǒng zi",儿子:"ér zi",兔子:"tù zi",骗子:"piàn zi",院子:"yuàn zi",猴子:"hóu zi",嗓子:"sǎng zi",侄子:"zhí zi",柿子:"shì zi",钳子:"qián zi",虱子:"shī zi",瓶子:"píng zi",豹子:"bào zi",筷子:"kuài zi",篮子:"lán zi",绳子:"shéng zi",嘴巴:"zuǐ ba",耳朵:"ěr duo",茄子:"qié zi",蚌埠:"bèng bù",崆峒:"kōng tóng",琵琶:"pí pa",蘑菇:"mó gu",葫芦:"hú lu",狐狸:"hú li",桔子:"jú zi",盒子:"hé zi",桌子:"zhuō zi",竹子:"zhú zi",师傅:"shī fu",衣服:"yī fu",袜子:"wà zi",杯子:"bēi zi",刺猬:"cì wei",麦子:"mài zi",队伍:"duì wu",知了:"zhī liǎo",鱼儿:"yú er",馄饨:"hún tun",灯笼:"dēng long",庄稼:"zhuāng jia",聪明:"cōng ming",镜子:"jìng zi",银子:"yín zi",盘子:"pán zi",了却:"liǎo què",力气:"lì qi",席子:"xí zi",林子:"lín zi",朝霞:"zhāo xiá",朝夕:"zhāo xī",朝气:"zhāo qì",翅膀:"chì bǎng",省长:"shěng zhǎng",臧否:"zāng pǐ",否泰:"pǐ tài",变得:"biàn de",丈夫:"zhàng fu",豆腐:"dòu fu",笔杆:"bǐ gǎn",枞阳:"zōng yáng",行人:"xíng rén",打着:"dǎ zhe",第一:"dì yī",万一:"wàn yī",之一:"zhī yī",得之:"dé zhī",统一:"tǒng yī",唯一:"wéi yī",专一:"zhuān yī",单一:"dān yī",如一:"rú yī",其一:"qí yī",合一:"hé yī",逐一:"zhú yī",周一:"zhōu yī",初一:"chū yī",研一:"yán yī",归一:"guī yī",假一:"jiǎ yī",闻一:"wén yī",了了:"liǎo liǎo",公了:"gōng liǎo",私了:"sī liǎo",一月:"yī yuè",一号:"yī hào",一级:"yī jí",一等:"yī děng",一哥:"yī gē",月一:"yuè yī",一一:"yī yī",二一:"èr yī",三一:"sān yī",四一:"sì yī",五一:"wǔ yī",六一:"liù yī",七一:"qī yī",八一:"bā yī",九一:"jiǔ yī","一〇":"yī líng",一零:"yī líng",一二:"yī èr",一三:"yī sān",一四:"yī sì",一五:"yī wǔ",一六:"yī liù",一七:"yī qī",一八:"yī bā",一九:"yī jiǔ",一又:"yī yòu",一饼:"yī bǐng",一楼:"yī lóu",为例:"wéi lì",为准:"wéi zhǔn",沧海:"cāng hǎi",难为:"nán wéi",责难:"zé nàn",患难:"huàn nàn",磨难:"mó nàn",大难:"dà nàn",刁难:"diāo nàn",殉难:"xùn nàn",落难:"luò nàn",罹难:"lí nàn",灾难:"zāi nàn",难民:"nàn mín",苦难:"kǔ nàn",危难:"wēi nàn",发难:"fā nàn",逃难:"táo nàn",避难:"bì nàn",遇难:"yù nàn",阻难:"zǔ nàn",厄难:"è nàn",徇难:"xùn nàn",空难:"kōng nàn",喜欢:"xǐ huan",朝朝:"zhāo zhāo",不行:"bù xíng",轧轧:"yà yà",弯曲:"wān qū",扭曲:"niǔ qū",曲直:"qū zhí",委曲:"wěi qū",酒曲:"jiǔ qū",曲径:"qū jìng",曲解:"qū jiě",歪曲:"wāi qū",曲线:"qū xiàn",曲阜:"qū fù",九曲:"jiǔ qū",曲折:"qū zhé",曲肱:"qū gōng",曲意:"qū yì",仡佬:"gē lǎo"},Sh=Object.keys(ui).map(n=>({zh:n,pinyin:ui[n],probability:2e-8,length:2,priority:R.Normal,dict:Symbol("dict2")})),ei={为什么:"wèi shén me",实际上:"shí jì shang",检察长:"jiǎn chá zhǎng",干什么:"gàn shén me",这会儿:"zhè huì er",尽可能:"jǐn kě néng",董事长:"dǒng shì zhǎng",了不起:"liǎo bù qǐ",参谋长:"cān móu zhǎng",朝鲜族:"cháo xiǎn zú",海内外:"hǎi nèi wài",禁不住:"jīn bú zhù",柏拉图:"bó lā tú",不在乎:"bú zài hu",洛杉矶:"luò shān jī",有点儿:"yǒu diǎn er",迫击炮:"pǎi jī pào",不得了:"bù dé liǎo",马尾松:"mǎ wěi sōng",运输量:"yùn shū liàng",发脾气:"fā pí qi",士大夫:"shì dà fū",鸭绿江:"yā lù jiāng",压根儿:"yà gēn er",对得起:"duì de qǐ",那会儿:"nà huì er",自个儿:"zì gě er",物理量:"wù lǐ liàng",怎么着:"zěn me zhāo",明晃晃:"míng huǎng huǎng",节假日:"jié jià rì",心里话:"xīn lǐ huà",发行量:"fā xíng liàng",兴冲冲:"xìng chōng chōng",分子量:"fēn zǐ liàng",国子监:"guó zǐ jiàn",老大难:"lǎo dà nán",党内外:"dǎng nèi wài",这么着:"zhè me zhāo",少奶奶:"shào nǎi nai",暗地里:"àn dì lǐ",更年期:"gēng nián qī",工作量:"gōng zuò liàng",背地里:"bèi dì lǐ",山里红:"shān li hóng",好好儿:"hǎo hāo er",交响乐:"jiāo xiǎng yuè",好意思:"hǎo yì si",吐谷浑:"tǔ yù hún",没意思:"méi yì si",理发师:"lǐ fà shī",塔什干:"tǎ shí gān",充其量:"chōng qí liàng",靠得住:"kào de zhù",车行道:"chē xíng dào",人行道:"rén xíng dào",中郎将:"zhōng láng jiàng",照明弹:"zhào míng dàn",烟幕弹:"yān mù dàn",没奈何:"mò nài hé",乱哄哄:"luàn hōng hōng",惠更斯:"huì gēng sī",载重量:"zài zhòng liàng",瞧得起:"qiáo de qǐ",纪传体:"jì zhuàn tǐ",阿房宫:"ē páng gōng",卷心菜:"juǎn xīn cài",戏班子:"xì bān zi",过得去:"guò de qù",花岗石:"huā gāng shí",外甥女:"wài sheng nǚ",团团转:"tuán tuán zhuàn",大堡礁:"dà bǎo jiāo",燃烧弹:"rán shāo dàn",劳什子:"láo shí zi",摇滚乐:"yáo gǔn yuè",夹竹桃:"jiā zhú táo",闹哄哄:"nào hōng hōng",三连冠:"sān lián guàn",重头戏:"zhòng tóu xì",二人转:"èr rén zhuàn",节骨眼:"jiē gǔ yǎn",知识面:"zhī shi miàn",护士长:"hù shi zhǎng",信号弹:"xìn hào dàn",干电池:"gān diàn chí",枪杆子:"qiāng gǎn zi",哭丧棒:"kū sāng bàng",鼻咽癌:"bí yān ái",瓦岗军:"wǎ gāng jūn",买得起:"mǎi de qǐ",癞蛤蟆:"lài há ma",脊梁骨:"jǐ liang gǔ",子母弹:"zǐ mǔ dàn",开小差:"kāi xiǎo chāi",女强人:"nǚ qiáng rén",英雄传:"yīng xióng zhuàn",爵士乐:"jué shì yuè",说笑话:"shuō xiào hua",碰头会:"pèng tóu huì",玻璃钢:"bō li gāng",曳光弹:"yè guāng dàn",少林拳:"shào lín quán",咏叹调:"yǒng tàn diào",少先队:"shào xiān duì",灵长目:"líng zhǎng mù",对着干:"duì zhe gàn",蒙蒙亮:"méng méng liàng",软骨头:"ruǎn gǔ tou",铺盖卷:"pū gài juǎn",和稀泥:"huò xī ní",背黑锅:"bēi hēi guō",红彤彤:"hóng tōng tōng",武侯祠:"wǔ hóu cí",打哆嗦:"dǎ duō suo",户口簿:"hù kǒu bù",马尾藻:"mǎ wěi zǎo",夜猫子:"yè māo zi",打手势:"dǎ shǒu shì",龙王爷:"lóng wáng yé",气头上:"qì tóu shang",糊涂虫:"hú tu chóng",笔杆子:"bǐ gǎn zi",占便宜:"zhàn pián yi",打主意:"dǎ zhǔ yì",多弹头:"duō dàn tóu",露一手:"lòu yì shǒu",堰塞湖:"yàn sè hú",保得住:"bǎo de zhù",趵突泉:"bào tū quán",奥得河:"ào de hé",司务长:"sī wù zhǎng",禁不起:"jīn bù qǐ",什刹海:"shí chà hǎi",莲花落:"lián huā lào",见世面:"jiàn shì miàn",豁出去:"huō chū qù",电位差:"diàn wèi chā",挨个儿:"āi gè er",那阵儿:"nà zhèn er",肺活量:"fèi huó liàng",大师傅:"dà shī fu",掷弹筒:"zhì dàn tǒng",打呼噜:"dǎ hū lu",广渠门:"ān qú mén",未见得:"wèi jiàn dé",大婶儿:"dà shěn er",谈得来:"tán de lái",脚丫子:"jiǎo yā zi",空包弹:"kōng bāo dàn",窝里斗:"wō li dòu",弹着点:"dàn zhuó diǎn",个头儿:"gè tóu er",看得起:"kàn de qǐ",糊涂账:"hú tu zhàng",大猩猩:"dà xīng xing",禁得起:"jīn de qǐ",法相宗:"fǎ xiàng zōng",可怜相:"kě lián xiàng",吃得下:"chī de xià",汉堡包:"hàn bǎo bāo",闹嚷嚷:"nào rāng rāng",数来宝:"shǔ lái bǎo",合得来:"hé de lái",干性油:"gān xìng yóu",闷葫芦:"mèn hú lu",呱呱叫:"guā guā jiào",西洋参:"xī yáng shēn",林荫道:"lín yīn dào",拉家常:"lā jiā cháng",卷铺盖:"juǎn pū gài",过得硬:"guò de yìng",飞将军:"fēi jiāng jūn",挑大梁:"tiǎo dà liáng",哈巴狗:"hǎ ba gǒu",过家家:"guò jiā jiā",催泪弹:"cuī lèi dàn",雨夹雪:"yǔ jiā xuě",敲竹杠:"qiāo zhú gàng",列车长:"liè chē zhǎng",华达呢:"huá dá ní",犯得着:"fàn de zháo",土疙瘩:"tǔ gē da",煞风景:"shā fēng jǐng",轻量级:"qīng liàng jí",羞答答:"xiū dā dā",石子儿:"shí zǐ er",达姆弹:"dá mǔ dàn",科教片:"kē jiào piān",侃大山:"kǎn dà shān",丁点儿:"dīng diǎn er",吃得消:"chī de xiāo",捋虎须:"luō hǔ xū",高丽参:"gāo lí shēn",众生相:"zhòng shēng xiàng",咽峡炎:"yān xiá yán",禁得住:"jīn de zhù",吃得开:"chī de kāi",柞丝绸:"zuò sī chóu",应声虫:"yìng shēng chóng",数得着:"shǔ de zháo",傻劲儿:"shǎ jìn er",铅玻璃:"qiān bō li",可的松:"kě dì sōng",划得来:"huá de lái",晕乎乎:"yūn hū hū",屎壳郎:"shǐ ke làng",尥蹶子:"liào juě zi",藏红花:"zàng hóng huā",闷罐车:"mèn guàn chē",卡脖子:"qiǎ bó zi",红澄澄:"hóng deng deng",赶得及:"gǎn de jí",当间儿:"dāng jiàn er",露马脚:"lòu mǎ jiǎo",鸡内金:"jī nèi jīn",犯得上:"fàn de shàng",钉齿耙:"dīng chǐ bà",饱和点:"bǎo hé diǎn",龙爪槐:"lóng zhǎo huái",喝倒彩:"hè dào cǎi",定冠词:"dìng guàn cí",担担面:"dàn dan miàn",吃得住:"chī de zhù",爪尖儿:"zhuǎ jiān er",支着儿:"zhī zhāo er",折跟头:"zhē gēn tou",阴着儿:"yīn zhāo er",烟卷儿:"yān juǎn er",宣传弹:"xuān chuán dàn",信皮儿:"xìn pí er",弦切角:"xián qiē jiǎo",缩砂密:"sù shā mì",说得来:"shuō de lái",水漂儿:"shuǐ piāo er",耍笔杆:"shuǎ bǐ gǎn",数得上:"shǔ de shàng",数不着:"shǔ bù zháo",数不清:"shǔ bù qīng",什件儿:"shí jiàn er",生死簿:"shēng sǐ bù",扇风机:"shān fēng jī",撒呓挣:"sā yì zheng",日记簿:"rì jì bù",热得快:"rè de kuài",亲家公:"qìng jia gōng",奇函数:"jī hán shù",拍纸簿:"pāi zhǐ bù",努劲儿:"nǔ jìn er",泥娃娃:"ní wá wa",内切圆:"nèi qiē yuán",哪会儿:"nǎ huì er",闷头儿:"mēn tóu er",没谱儿:"méi pǔ er",铆劲儿:"mǎo jìn er",溜肩膀:"liū jiān bǎng",了望台:"liào wàng tái",老来少:"lǎo lái shào",坤角儿:"kūn jué er",考勤簿:"kǎo qín bù",卷笔刀:"juǎn bǐ dāo",进给量:"jìn jǐ liàng",划不来:"huá bù lái",汗褂儿:"hàn guà er",鼓囊囊:"gǔ nāng nāng",够劲儿:"gòu jìn er",公切线:"gōng qiē xiàn",搁得住:"gé de zhù",赶浪头:"gǎn làng tóu",赶得上:"gǎn de shàng",干酵母:"gān jiào mǔ",嘎渣儿:"gā zhā er",嘎嘣脆:"gā bēng cuì",对得住:"duì de zhù",逗闷子:"dòu mèn zi",顶呱呱:"dǐng guā guā",滴溜儿:"dī liù er",大轴子:"dà zhòu zi",打板子:"dǎ bǎn zi",寸劲儿:"cùn jìn er",醋劲儿:"cù jìn er",揣手儿:"chuāi shǒu er",冲劲儿:"chòng jìn er",吃得来:"chī de lái",不更事:"bù gēng shì",奔头儿:"bèn tou er",百夫长:"bǎi fū zhǎng",娃娃亲:"wá wa qīn",死劲儿:"sǐ jìn er",骨朵儿:"gū duǒ er",功劳簿:"gōng láo bù",都江堰:"dū jiāng yàn",一担水:"yí dàn shuǐ",否极泰:"pǐ jí tài",泰来否:"tài lái pǐ",咳特灵:"ké tè líng",开户行:"kāi hù háng",郦食其:"lì yì jī",花事了:"huā shì liǎo",一更更:"yì gēng gēng",一重山:"yì chóng shān",风一更:"fēng yì gēng",雪一更:"xuě yì gēng",归一码:"guī yì mǎ",星期一:"xīng qī yī",礼拜一:"lǐ bài yī",一季度:"yī jì dù",一月一:"yī yuè yī",一字马:"yī zì mǎ",一是一:"yī shì yī",一次方:"yī cì fāng",一阳指:"yī yáng zhǐ",一字决:"yī zì jué",一年级:"yī nián jí",一不做:"yī bú zuò",屈戌儿:"qū qu ér",难为水:"nán wéi shuǐ",难为情:"nán wéi qíng",行一行:"xíng yì háng",别别的:"biè bié de",干哪行:"gàn nǎ háng",干一行:"gàn yì háng",曲别针:"qū bié zhēn"},Ph=Object.keys(ei).map(n=>({zh:n,pinyin:ei[n],probability:2e-8,length:3,priority:R.Normal,dict:Symbol("dict3")})),si={成吉思汗:"chéng jí sī hán",四通八达:"sì tōng bā dá",一模一样:"yì mú yí yàng",青藏高原:"qīng zàng gāo yuán",阿弥陀佛:"ē mí tuó fó",解放思想:"jiè fàng sī xiǎng",所作所为:"suǒ zuò suǒ wéi",迷迷糊糊:"mí mí hu hū",荷枪实弹:"hè qiāng shí dàn",兴高采烈:"xìng gāo cǎi liè",无能为力:"wú néng wéi lì",布鲁塞尔:"bù lǔ sài ěr",为所欲为:"wéi suǒ yù wéi",克什米尔:"kè shí mǐ ěr",没完没了:"méi wán méi liǎo",不为人知:"bù wéi rén zhī",结结巴巴:"jiē jiē bā bā",前仆后继:"qián pū hòu jì",铺天盖地:"pū tiān gài dì",直截了当:"zhí jié liǎo dàng",供不应求:"gōng bú yìng qiú",御史大夫:"yù shǐ dà fū",不为瓦全:"bù wéi wǎ quán",不可收拾:"bù kě shōu shi",胡作非为:"hú zuò fēi wéi",分毫不差:"fēn háo bú chà",模模糊糊:"mó mó hu hū",不足为奇:"bù zú wéi qí",悄无声息:"qiǎo wú shēng xī",了如指掌:"liǎo rú zhǐ zhǎng",深恶痛绝:"shēn wù tòng jué",高高兴兴:"gāo gāo xìng xìng",唉声叹气:"āi shēng tàn qì",汉藏语系:"hàn zàng yǔ xì",处心积虑:"chǔ xīn jī lǜ",泣不成声:"qì bù chéng shēng",半夜三更:"bàn yè sān gēng",失魂落魄:"shī hún luò pò",二十八宿:"èr shí bā xiù",转来转去:"zhuàn lái zhuàn qù",数以万计:"shǔ yǐ wàn jì",相依为命:"xiāng yī wéi mìng",恋恋不舍:"liàn liàn bù shě",屈指可数:"qū zhǐ kě shǔ",神出鬼没:"shén chū guǐ mò",结结实实:"jiē jiē shí shí",有的放矢:"yǒu dì fàng shǐ",叽哩咕噜:"jī lǐ gū lū",调兵遣将:"diào bīng qiǎn jiàng",载歌载舞:"zài gē zài wǔ",转危为安:"zhuǎn wēi wéi ān",踏踏实实:"tā tā shi shí",桑给巴尔:"sāng jǐ bā ěr",装模作样:"zhuāng mú zuò yàng",见义勇为:"jiàn yì yǒng wéi",相差无几:"xiāng chā wú jǐ",叹为观止:"tàn wéi guān zhǐ",闷闷不乐:"mèn mèn bú lè",喜怒哀乐:"xǐ nù āi lè",鲜为人知:"xiǎn wéi rén zhī",张牙舞爪:"zhāng yá wǔ zhǎo",为非作歹:"wéi fēi zuò dǎi",含糊其辞:"hán hú qí cí",疲于奔命:"pí yú bēn mìng",勉为其难:"miǎn wéi qí nán",依依不舍:"yī yī bù shě",顶头上司:"dǐng tóu shàng si",不着边际:"bù zhuó biān jì",大模大样:"dà mú dà yàng",寻欢作乐:"xún huān zuò lè",一走了之:"yì zǒu liǎo zhī",字里行间:"zì lǐ háng jiān",含含糊糊:"hán hán hu hū",恰如其分:"qià rú qí fèn",破涕为笑:"pò tì wéi xiào",深更半夜:"shēn gēng bàn yè",千差万别:"qiān chā wàn bié",数不胜数:"shǔ bú shèng shǔ",据为己有:"jù wéi jǐ yǒu",天旋地转:"tiān xuán dì zhuàn",养尊处优:"yǎng zūn chǔ yōu",玻璃纤维:"bō li xiān wéi",吵吵闹闹:"chāo chao nào nào",晕头转向:"yūn tóu zhuàn xiàng",土生土长:"tǔ shēng tǔ zhǎng",宁死不屈:"nìng sǐ bù qū",不省人事:"bù xǐng rén shì",尽力而为:"jìn lì ér wéi",精明强干:"jīng míng qiáng gàn",唠唠叨叨:"láo lao dāo dāo",叽叽喳喳:"jī ji zhā zhā",功不可没:"gōng bù kě mò",锲而不舍:"qiè ér bù shě",排忧解难:"pái yōu jiě nàn",稀里糊涂:"xī li hú tú",各有所长:"gè yǒu suǒ cháng",的的确确:"dí dí què què",哄堂大笑:"hōng táng dà xiào",听而不闻:"tīng ér bù wén",刀耕火种:"dāo gēng huǒ zhòng",内分泌腺:"nèi fèn mì xiàn",化险为夷:"huà xiǎn wéi yí",百发百中:"bǎi fā bǎi zhòng",重见天日:"chóng jiàn tiān rì",反败为胜:"fǎn bài wéi shèng",一了百了:"yì liǎo bǎi liǎo",大大咧咧:"dà da liē liē",心急火燎:"xīn jí huǒ liǎo",粗心大意:"cū xīn dà yi",鸡皮疙瘩:"jī pí gē da",夷为平地:"yí wéi píng dì",日积月累:"rì jī yuè lěi",设身处地:"shè shēn chǔ dì",投其所好:"tóu qí suǒ hào",间不容发:"jiān bù róng fà",人满为患:"rén mǎn wéi huàn",穷追不舍:"qióng zhuī bù shě",为时已晚:"wéi shí yǐ wǎn",如数家珍:"rú shǔ jiā zhēn",心里有数:"xīn lǐ yǒu shù",以牙还牙:"yǐ yá huán yá",神不守舍:"shén bù shǒu shě",孟什维克:"mèng shí wéi kè",各自为战:"gè zì wéi zhàn",怨声载道:"yuàn shēng zài dào",救苦救难:"jiù kǔ jiù nàn",好好先生:"hǎo hǎo xiān sheng",怪模怪样:"guài mú guài yàng",抛头露面:"pāo tóu lù miàn",游手好闲:"yóu shǒu hào xián",无所不为:"wú suǒ bù wéi",调虎离山:"diào hǔ lí shān",步步为营:"bù bù wéi yíng",好大喜功:"hào dà xǐ gōng",众矢之的:"zhòng shǐ zhī dì",长生不死:"cháng shēng bù sǐ",蔚为壮观:"wèi wéi zhuàng guān",不可胜数:"bù kě shèng shǔ",鬼使神差:"guǐ shǐ shén chāi",洁身自好:"jié shēn zì hào",敢作敢为:"gǎn zuò gǎn wéi",茅塞顿开:"máo sè dùn kāi",走马换将:"zǒu mǎ huàn jiàng",为时过早:"wéi shí guò zǎo",为人师表:"wéi rén shī biǎo",阴差阳错:"yīn chā yáng cuò",油腔滑调:"yóu qiāng huá diào",重蹈覆辙:"chóng dǎo fù zhé",骂骂咧咧:"mà ma liē liē",絮絮叨叨:"xù xù dāo dāo",如履薄冰:"rú lǚ bó bīng",损兵折将:"sǔn bīng zhé jiàng",拐弯抹角:"guǎi wān mò jiǎo",像模像样:"xiàng mú xiàng yàng",供过于求:"gōng guò yú qiú",开花结果:"kāi huā jiē guǒ",仔仔细细:"zǐ zǐ xì xì",川藏公路:"chuān zàng gōng lù",河北梆子:"hé běi bāng zi",长年累月:"cháng nián lěi yuè",正儿八经:"zhèng er bā jīng",不识抬举:"bù shí tái ju",重振旗鼓:"chóng zhèn qí gǔ",气息奄奄:"qì xī yān yān",紧追不舍:"jǐn zhuī bù shě",服服帖帖:"fú fu tiē tiē",强词夺理:"qiǎng cí duó lǐ",噼里啪啦:"pī li pā lā",人才济济:"rén cái jǐ jǐ",发人深省:"fā rén shēn xǐng",不足为凭:"bù zú wéi píng",为富不仁:"wéi fù bù rén",连篇累牍:"lián piān lěi dú",呼天抢地:"hū tiān qiāng dì",落落大方:"luò luò dà fāng",自吹自擂:"zì chuī zì léi",乐善好施:"lè shàn hào shī",以攻为守:"yǐ gōng wéi shǒu",磨磨蹭蹭:"mó mó cèng cèng",削铁如泥:"xuē tiě rú ní",助纣为虐:"zhù zhòu wéi nüè",以退为进:"yǐ tuì wéi jìn",嘁嘁喳喳:"qī qī chā chā",枪林弹雨:"qiāng lín dàn yǔ",令人发指:"lìng rén fà zhǐ",转败为胜:"zhuǎn bài wéi shèng",转弯抹角:"zhuǎn wān mò jiǎo",在劫难逃:"zài jié nán táo",正当防卫:"zhèng dàng fáng wèi",不足为怪:"bù zú wéi guài",难兄难弟:"nàn xiōng nàn dì",咿咿呀呀:"yī yī yā yā",弹尽粮绝:"dàn jìn liáng jué",阿谀奉承:"ē yú fèng chéng",稀里哗啦:"xī li huā lā",返老还童:"fǎn lǎo huán tóng",好高骛远:"hào gāo wù yuǎn",鹿死谁手:"lù sǐ shéi shǒu",差强人意:"chā qiáng rén yì",大吹大擂:"dà chuī dà léi",成家立业:"chéng jiā lì yè",自怨自艾:"zì yuàn zì yì",负债累累:"fù zhài lěi lěi",古为今用:"gǔ wéi jīn yòng",入土为安:"rù tǔ wéi ān",下不为例:"xià bù wéi lì",一哄而上:"yì hōng ér shàng",没头苍蝇:"méi tóu cāng ying",天差地远:"tiān chā dì yuǎn",风卷残云:"fēng juǎn cán yún",多灾多难:"duō zāi duō nàn",乳臭未干:"rǔ xiù wèi gān",行家里手:"háng jiā lǐ shǒu",狼狈为奸:"láng bèi wéi jiān",处变不惊:"chǔ biàn bù jīng",一唱一和:"yí chàng yí hè",一念之差:"yí niàn zhī chā",金蝉脱壳:"jīn chán tuō qiào",滴滴答答:"dī dī dā dā",硕果累累:"shuò guǒ léi léi",好整以暇:"hào zhěng yǐ xiá",红得发紫:"hóng de fā zǐ",传为美谈:"chuán wéi měi tán",富商大贾:"fù shāng dà gǔ",四海为家:"sì hǎi wéi jiā",了若指掌:"liǎo ruò zhǐ zhǎng",大有可为:"dà yǒu kě wéi",出头露面:"chū tóu lù miàn",鼓鼓囊囊:"gǔ gu nāng nāng",窗明几净:"chuāng míng jī jìng",泰然处之:"tài rán chǔ zhī",怒发冲冠:"nù fà chōng guān",有机玻璃:"yǒu jī bō li",骨头架子:"gǔ tou jià zi",义薄云天:"yì bó yún tiān",一丁点儿:"yī dīng diǎn er",时来运转:"shí lái yùn zhuǎn",陈词滥调:"chén cí làn diào",化整为零:"huà zhěng wéi líng",火烧火燎:"huǒ shāo huǒ liǎo",干脆利索:"gàn cuì lì suǒ",吊儿郎当:"diào er láng dāng",广种薄收:"guǎng zhòng bó shōu",种瓜得瓜:"zhòng guā dé guā",种豆得豆:"zhòng dòu dé dòu",难舍难分:"nán shě nán fēn",歃血为盟:"shà xuè wéi méng",奋发有为:"fèn fā yǒu wéi",阴错阳差:"yīn cuò yáng chā",东躲西藏:"dōng duǒ xī cáng",烟熏火燎:"yān xūn huǒ liǎo",钻牛角尖:"zuān niú jiǎo jiān",乔装打扮:"qiáo zhuāng dǎ bàn",改弦更张:"gǎi xián gēng zhāng",河南梆子:"hé nán bāng zi",好吃懒做:"hào chī lǎn zuò",何乐不为:"hé lè bù wéi",大出风头:"dà chū fēng tóu",攻城掠地:"gōng chéng lüè dì",漂漂亮亮:"piào piào liang liang",折衷主义:"zhé zhōng zhǔ yì",大马哈鱼:"dà mǎ hǎ yú",绿树成荫:"lǜ shù chéng yīn",率先垂范:"shuài xiān chuí fàn",家长里短:"jiā cháng lǐ duǎn",宽大为怀:"kuān dà wéi huái",左膀右臂:"zuǒ bǎng yòu bì",一笑了之:"yí xiào liǎo zhī",天下为公:"tiān xià wéi gōng",还我河山:"huán wǒ hé shān",何足为奇:"hé zú wéi qí",好自为之:"hǎo zì wéi zhī",风姿绰约:"fēng zī chuò yuē",大雨滂沱:"dà yǔ pāng tuó",传为佳话:"chuán wéi jiā huà",吃里扒外:"chī lǐ pá wài",重操旧业:"chóng cāo jiù yè",小家子气:"xiǎo jiā zi qì",少不更事:"shào bù gēng shì",难分难舍:"nán fēn nán shě",添砖加瓦:"tiān zhuān jiā wǎ",是非分明:"shì fēi fēn míng",舍我其谁:"shě wǒ qí shuí",偏听偏信:"piān tīng piān xìn",量入为出:"liàng rù wéi chū",降龙伏虎:"xiáng lóng fú hǔ",钢化玻璃:"gāng huà bō li",正中下怀:"zhèng zhòng xià huái",以身许国:"yǐ shēn xǔ guó",一语中的:"yì yǔ zhòng dì",丧魂落魄:"sàng hún luò pò",三座大山:"sān zuò dà shān",济济一堂:"jǐ jǐ yì táng",好事之徒:"hào shì zhī tú",干净利索:"gàn jìng lì suǒ",出将入相:"chū jiàng rù xiàng",袅袅娜娜:"niǎo niǎo nuó nuó",狐狸尾巴:"hú li wěi ba",好逸恶劳:"hào yì wù láo",大而无当:"dà ér wú dàng",打马虎眼:"dǎ mǎ hu yǎn",板上钉钉:"bǎn shàng dìng dīng",吆五喝六:"yāo wǔ hè liù",虾兵蟹将:"xiā bīng xiè jiàng",水调歌头:"shuǐ diào gē tóu",数典忘祖:"shǔ diǎn wàng zǔ",人事不省:"rén shì bù xǐng",曲高和寡:"qǔ gāo hè guǎ",屡教不改:"lǚ jiào bù gǎi",互为因果:"hù wéi yīn guǒ",互为表里:"hù wéi biǎo lǐ",厚此薄彼:"hòu cǐ bó bǐ",过关斩将:"guò guān zhǎn jiàng",疙疙瘩瘩:"gē ge dā dā",大腹便便:"dà fù pián pián",走为上策:"zǒu wéi shàng cè",冤家对头:"yuān jia duì tóu",有隙可乘:"yǒu xì kě chèng",一鳞半爪:"yì lín bàn zhǎo",片言只语:"piàn yán zhǐ yǔ",开花结实:"kāi huā jié shí",经年累月:"jīng nián lěi yuè",含糊其词:"hán hú qí cí",寡廉鲜耻:"guǎ lián xiǎn chǐ",成年累月:"chéng nián lěi yuè",不徇私情:"bú xùn sī qíng",不当人子:"bù dāng rén zǐ",膀大腰圆:"bǎng dà yāo yuán",指腹为婚:"zhǐ fù wéi hūn",这么点儿:"zhè me diǎn er",意兴索然:"yì xīng suǒ rán",绣花枕头:"xiù huā zhěn tou",无的放矢:"wú dì fàng shǐ",望闻问切:"wàng wén wèn qiè",舍己为人:"shě jǐ wèi rén",穷年累月:"qióng nián lěi yuè",排难解纷:"pái nàn jiě fēn",处之泰然:"chǔ zhī tài rán",指鹿为马:"zhǐ lù wéi mǎ",危如累卵:"wēi rú lěi luǎn",天兵天将:"tiān bīng tiān jiàng",舍近求远:"shě jìn qiú yuǎn",南腔北调:"nán qiāng běi diào",苦中作乐:"kǔ zhōng zuò lè",厚积薄发:"hòu jī bó fā",臭味相投:"xiù wèi xiāng tóu",长幼有序:"zhǎng yòu yǒu xù",逼良为娼:"bī liáng wéi chāng",悲悲切切:"bēi bēi qiè qiē",败军之将:"bài jūn zhī jiàng",欺行霸市:"qī háng bà shì",削足适履:"xuē zú shì lǚ",先睹为快:"xiān dǔ wéi kuài",啼饥号寒:"tí jī háo hán",疏不间亲:"shū bú jiàn qīn",神差鬼使:"shén chāi guǐ shǐ",敲敲打打:"qiāo qiāo dǎ dǎ",平铺直叙:"píng pū zhí xù",没头没尾:"méi tóu mò wěi",寥寥可数:"liáo liáo kě shǔ",哼哈二将:"hēng hā èr jiàng",鹤发童颜:"hè fà tóng yán",各奔前程:"gè bèn qián chéng",弹无虚发:"dàn wú xū fā",大人先生:"dà rén xiān sheng",与民更始:"yǔ mín gēng shǐ",树碑立传:"shù bēi lì zhuàn",是非得失:"shì fēi dé shī",实逼处此:"shí bī chǔ cǐ",塞翁失马:"sài wēng shī mǎ",日薄西山:"rì bó xī shān",切身体会:"qiè shēn tǐ huì",片言只字:"piàn yán zhǐ zì",跑马卖解:"pǎo mǎ mài xiè",宁折不弯:"nìng zhé bù wān",零零散散:"líng líng sǎn sǎn",量体裁衣:"liàng tǐ cái yī",连中三元:"lián zhòng sān yuán",礼崩乐坏:"lǐ bēng yuè huài",不为已甚:"bù wéi yǐ shèn",转悲为喜:"zhuǎn bēi wéi xǐ",以眼还眼:"yǐ yǎn huán yǎn",蔚为大观:"wèi wéi dà guān",未为不可:"wèi wéi bù kě",童颜鹤发:"tóng yán hè fà",朋比为奸:"péng bǐ wéi jiān",莫此为甚:"mò cǐ wéi shèn",夹枪带棒:"jiā qiāng dài bàng",富商巨贾:"fù shāng jù jiǎ",淡然处之:"dàn rán chǔ zhī",箪食壶浆:"dān shí hú jiāng",创巨痛深:"chuāng jù tòng shēn",草长莺飞:"cǎo zhǎng yīng fēi",坐视不救:"zuò shī bú jiù",以己度人:"yǐ jǐ duó rén",随行就市:"suí háng jiù shì",文以载道:"wén yǐ zài dào",文不对题:"wén bú duì tí",铁板钉钉:"tiě bǎn dìng dīng",身体发肤:"shēn tǐ fà fū",缺吃少穿:"quē chī shǎo chuān",目无尊长:"mù wú zūn zhǎng",吉人天相:"jí rén tiān xiàng",毁家纾难:"huǐ jiā shū nàn",钢筋铁骨:"gāng jīn tiě gǔ",丢卒保车:"diū zú bǎo jū",丢三落四:"diū sān là sì",闭目塞听:"bì mù sè tīng",削尖脑袋:"xuē jiān nǎo dài",为非作恶:"wéi fēi zuò è",人才难得:"rén cái nán dé",情非得已:"qíng fēi dé yǐ",切中要害:"qiè zhòng yào hài",火急火燎:"huǒ jí huǒ liǎo",画地为牢:"huà dì wéi láo",好酒贪杯:"hào jiǔ tān bēi",长歌当哭:"cháng gē dàng kū",载沉载浮:"zài chén zài fú",遇难呈祥:"yù nàn chéng xiáng",榆木疙瘩:"yú mù gē da",以邻为壑:"yǐ lín wéi hè",洋为中用:"yáng wéi zhōng yòng",言为心声:"yán wéi xīn shēng",言必有中:"yán bì yǒu zhòng",图穷匕见:"tú qióng bǐ xiàn",滂沱大雨:"páng tuó dà yǔ",目不暇给:"mù bù xiá jǐ",量才录用:"liàng cái lù yòng",教学相长:"jiào xué xiāng zhǎng",悔不当初:"huǐ bù dāng chū",呼幺喝六:"hū yāo hè liù",不足为训:"bù zú wéi xùn",不拘形迹:"bù jū xíng jī",傍若无人:"páng ruò wú rén",罪责难逃:"zuì zé nán táo",自我吹嘘:"zì wǒ chuī xū",转祸为福:"zhuǎn huò wéi fú",勇冠三军:"yǒng guàn sān jūn",易地而处:"yì dì ér chǔ",卸磨杀驴:"xiè mò shā lǘ",玩儿不转:"wán ér bú zhuàn",天道好还:"tiān dào hǎo huán",身单力薄:"shēn dān lì bó",撒豆成兵:"sǎ dòu chéng bīng",片纸只字:"piàn zhǐ zhī zì",宁缺毋滥:"nìng quē wú làn",没没无闻:"mò mò wú wén",量力而为:"liàng lì ér wéi",历历可数:"lì lì kě shǔ",口碑载道:"kǒu bēi zài dào",君子好逑:"jūn zǐ hǎo qiú",好为人师:"hào wéi rén shī",豪商巨贾:"háo shāng jù jiǎ",各有所好:"gè yǒu suǒ hào",度德量力:"duó dé liàng lì",指天为誓:"zhǐ tiān wéi shì",逸兴遄飞:"yì xìng chuán fēi",心宽体胖:"xīn kuān tǐ pán",为德不卒:"wéi dé bù zú",天下为家:"tiān xià wéi jiā",视为畏途:"shì wéi wèi tú",三灾八难:"sān zāi bā nàn",沐猴而冠:"mù hóu ér guàn",哩哩啦啦:"lī li lā lā",见缝就钻:"jiàn fèng jiù zuān",夹层玻璃:"jiā céng bō li",急公好义:"jí gōng hào yì",积年累月:"jī nián lěi yuè",划地为牢:"huá dì wéi láo",更名改姓:"gēng míng gǎi xìng",奉为圭臬:"fèng wéi guī niè",多难兴邦:"duō nàn xīng bāng",不破不立:"bú pò bú lì",坐地自划:"zuò dì zì huá",坐不重席:"zuò bù chóng xí",坐不窥堂:"zuò bù kuī táng",作嫁衣裳:"zuò jià yī shang",左枝右梧:"zuǒ zhī yòu wú",左宜右有:"zuǒ yí yòu yǒu",钻头觅缝:"zuān tóu mì fèng",钻天打洞:"zuān tiān dǎ dòng",钻皮出羽:"zuān pí chū yǔ",钻火得冰:"zuān huǒ dé bīng",钻洞觅缝:"zuàn dòng mì féng",钻冰求火:"zuān bīng qiú huǒ",子为父隐:"zǐ wéi fù yǐn",擢发难数:"zhuó fà nán shǔ",着人先鞭:"zhuó rén xiān biān",斫雕为朴:"zhuó diāo wéi pǔ",锥处囊中:"zhuī chǔ náng zhōng",椎心饮泣:"chuí xīn yǐn qì",椎心泣血:"chuí xīn qì xuè",椎牛飨士:"chuí niú xiǎng shì",椎牛歃血:"chuí niú shà xuè",椎牛发冢:"chuí niú fà zhǒng",椎埋屠狗:"chuí mái tú gǒu",椎埋狗窃:"chuí mái gǒu qiè",壮发冲冠:"zhuàng fā chōng guàn",庄严宝相:"zhuāng yán bǎo xiàng",转愁为喜:"zhuǎn chóu wéi xǐ",转嗔为喜:"zhuǎn chēn wéi xǐ",拽巷啰街:"zhuài xiàng luó jiē",拽耙扶犁:"zhuāi pá fú lí",拽布拖麻:"zhuài bù tuō má",箸长碗短:"zhù cháng wǎn duǎn",铸剑为犁:"zhù jiàn wéi lí",杼柚其空:"zhù yòu qí kōng",杼柚空虚:"zhù yòu kōng xū",助天为虐:"zhù tiān wéi nüè",属垣有耳:"zhǔ yuán yǒu ěr",属毛离里:"zhǔ máo lí lǐ",属辞比事:"zhǔ cí bǐ shì",逐物不还:"zhú wù bù huán",铢量寸度:"zhū liáng cùn duó",铢两悉称:"zhū liǎng xī chèn",侏儒观戏:"zhū rú guān xì",朱轓皁盖:"zhū fān zào gài",昼度夜思:"zhòu duó yè sī",诪张为幻:"zhōu zhāng wéi huàn",重明继焰:"chóng míng jì yàn",众啄同音:"zhòng zhuó tóng yīn",众毛攒裘:"zhòng máo cuán qiú",众好众恶:"zhòng hào zhòng wù",擿埴索涂:"zhāi zhí suǒ tú",稚齿婑媠:"zhì chǐ wǒ tuó",至当不易:"zhì dàng bú yì",指皂为白:"zhǐ zào wéi bái",指雁为羹:"zhǐ yàn wéi gēng",指树为姓:"zhǐ shù wéi xìng",指山说磨:"zhǐ shān shuō mò",止戈为武:"zhǐ gē wéi wǔ",枝干相持:"zhī gàn xiāng chí",枝大于本:"zh dà yú běn",支吾其词:"zhī wú qí cí",正身率下:"zhèng shēn shuài xià",正冠李下:"zhèng guàn lǐ xià",整冠纳履:"zhěng guān nà lǚ",整躬率物:"zhěng gōng shuài wù",整顿干坤:"zhěng dùn gàn kūn",针头削铁:"zhēn tóu xuē tiě",贞松劲柏:"zhēn sōng jìng bǎi",赭衣塞路:"zhě yī sè lù",折箭为誓:"shé jiàn wéi shì",折而族之:"zhé ér zú zhī",昭德塞违:"zhāo dé sè wéi",章句小儒:"zhāng jù xiǎo rú",湛恩汪濊:"zhàn ēn wāng huì",占风望气:"zhān fēng wàng qì",斩将搴旗:"zhǎn jiàng qiān qí",曾母投杼:"zēng mǔ tóu zhù",曾参杀人:"zēng shēn shā rén",造谣中伤:"zào yáo zhòng shāng",早占勿药:"zǎo zhān wù yào",凿龟数策:"záo guī shǔ cè",攒三聚五:"cuán sān jù wǔ",攒眉蹙额:"cuán mei cù é",攒零合整:"cuán líng hé zhěng",攒锋聚镝:"cuán fēng jù dí",载笑载言:"zài xiào zài yán",载酒问字:"zài jiǔ wèn zì",殒身不恤:"yǔn shēn bú xù",云舒霞卷:"yún shū xiá juǎn",月中折桂:"yuè zhōng shé guì",月落参横:"yuè luò shēn héng",鬻驽窃价:"yù nú qiè jià",鬻鸡为凤:"yù jī wéi fèng",遇难成祥:"yù nàn chéng xiáng",郁郁累累:"yù yù lěi lěi",玉卮无当:"yù zhī wú dàng",语笑喧阗:"yǔ xiào xuān tián",与世沉浮:"yǔ shì chén fú",与时消息:"yǔ shí xiāo xi",逾墙钻隙:"yú qiáng zuān xì",渔夺侵牟:"yú duó qīn móu",杅穿皮蠹:"yú chuān pí dù",余勇可贾:"yú yǒng kě gǔ",予智予雄:"yú zhì yú xióng",予取予求:"yú qǔ yú qiú",于家为国:"yú jiā wéi guó",有借无还:"yǒu jiè wú huán",有加无已:"yǒu jiā wú yǐ",有国难投:"yǒu guó nán tóu",游必有方:"yóu bì yǒu fāng",油干灯尽:"yóu gàn dēng jìn",尤云殢雨:"yóu yún tì yǔ",庸中皦皦:"yōng zhōng jiǎo jiǎo",郢书燕说:"yǐng shū yān shuō",营蝇斐锦:"yíng yíng fēi jǐn",鹰心雁爪:"yīng xīn yàn zhǎo",莺吟燕儛:"yīng yín yàn wǔ",应天顺时:"yīng tiān shùn shí",印累绶若:"yìn léi shòu ruò",隐占身体:"yǐn zhàn shēn tǐ",饮犊上流:"yìn dú shàng liú",引绳切墨:"yǐn shéng qiē mò",龈齿弹舌:"yín chǐ dàn shé",因缘为市:"yīn yuán wéi shì",因树为屋:"yīn shù wéi wū",溢美溢恶:"yì měi yì wù",抑塞磊落:"yì sè lěi luò",倚闾望切:"yǐ lǘ wàng qiē",以意为之:"yǐ yì wéi zhī",以言为讳:"yǐ yán wéi huì",以疏间亲:"yǐ shū jiàn qīn",以水济水:"yǐ shuǐ jǐ shuǐ",以书为御:"yǐ shū wéi yù",以守为攻:"yǐ shǒu wéi gōng",以升量石:"yǐ shēng liáng dàn",以慎为键:"yǐ shèn wéi jiàn",以筌为鱼:"yǐ quán wéi yú",以利累形:"yǐ lì lěi xíng",以毁为罚:"yǐ huǐ wéi fá",以黑为白:"yǐ hēi wéi bái",以规为瑱:"yǐ guī wéi tiàn",以古为鉴:"yǐ gǔ wéi jiàn",以宫笑角:"yǐ gōng xiào jué",以法为教:"yǐ fǎ wéi jiào",以大恶细:"yǐ dà wù xì",遗世忘累:"yí shì wàng lěi",遗寝载怀:"yí qǐn zài huái",移的就箭:"yí dì jiù jiàn",依头缕当:"yī tóu lǚ dàng",衣租食税:"yì zū shí shuì",衣轻乘肥:"yì qīng chéng féi",衣裳之会:"yī shang zhī huì",衣单食薄:"yī dān shí bó",一还一报:"yì huán yí bào",叶公好龙:"yè gōng hào lóng",野调无腔:"yě diào wú qiāng",瑶池女使:"yáo chí nǚ shǐ",幺麽小丑:"yāo mó xiǎo chǒu",养精畜锐:"yǎng jīng xù ruì",卬首信眉:"áng shǒu shēn méi",洋洋纚纚:"yáng yáng sǎ sǎ",羊羔美酒:"yáng gāo měi jiǔ",扬风扢雅:"yáng fēng jié yǎ",燕昭市骏:"yān zhāo shì jùn",燕昭好马:"yān zhāo hǎo mǎ",燕石妄珍:"yān shí wàng zhēn",燕骏千金:"yān jùn qiān jīn",燕金募秀:"yān jīn mù xiù",燕驾越毂:"yān jià yuè gǔ",燕歌赵舞:"yān gē zhào wǔ",燕岱之石:"yān dài zhī shí",燕处危巢:"yàn chǔ wēi cháo",掞藻飞声:"shàn zǎo fēi shēng",偃革为轩:"yǎn gé wéi xuān",妍蚩好恶:"yán chī hǎo è",压良为贱:"yā liáng wéi jiàn",搀行夺市:"chān háng duó shì",泣数行下:"qì shù háng xià",当行出色:"dāng háng chū sè",秀出班行:"xiù chū bān háng",儿女成行:"ér nǚ chéng háng",大行大市:"dà háng dà shì",寻行数墨:"xún háng shǔ mò",埙篪相和:"xūn chí xiāng hè",血债累累:"xuè zhài lěi lěi",炫玉贾石:"xuàn yù gǔ shí",炫石为玉:"xuàn shí wéi yù",悬石程书:"xuán dàn chéng shū",悬狟素飡:"xuán huán sù cān",悬龟系鱼:"xuán guī xì yú",揎拳捋袖:"xuān quán luō xiù",轩鹤冠猴:"xuān hè guàn hóu",畜妻养子:"xù qī yǎng zǐ",羞人答答:"xiū rén dā dā",修鳞养爪:"xiū lín yǎng zhǎo",熊据虎跱:"xióng jù hǔ zhì",兄死弟及:"xiōng sǐ dì jí",腥闻在上:"xīng wén zài shàng",兴文匽武:"xīng wén yǎn wǔ",兴观群怨:"xìng guān qún yuàn",兴高彩烈:"xìng gāo cǎi liè",心手相应:"xīn shǒu xiāng yìng",心口相应:"xīn kǒu xiāng yīng",挟势弄权:"xié shì nòng quán",胁肩累足:"xié jiān lěi zú",校短量长:"jiào duǎn liáng cháng",小眼薄皮:"xiǎo yǎn bó pí",硝云弹雨:"xiāo yún dàn yǔ",鸮鸣鼠暴:"xiāo míng shǔ bào",削株掘根:"xuē zhū jué gēn",削铁无声:"xuē tiě wú shēng",削职为民:"xuē zhí wéi mín",削木为吏:"xuē mù wéi lì",想望风褱:"xiǎng wàng fēng huái",香培玉琢:"xiang pei yu zhuó",相鼠有皮:"xiàng shǔ yǒu pí",相时而动:"xiàng shí ér dòng",相切相磋:"xiāng qiē xiāng cuō",相女配夫:"xiàng nǚ pèi fū",相门有相:"xiàng mén yǒu xiàng",挦章撦句:"xián zhāng chě jù",先我着鞭:"xiān wǒ zhuó biān",习焉不察:"xí yān bù chá",歙漆阿胶:"shè qī ē jiāo",晰毛辨发:"xī máo biàn fà",悉索薄赋:"xī suǒ bó fù",雾鳞云爪:"wù lín yún zhǎo",物稀为贵:"wù xī wéi guì",碔砆混玉:"wǔ fū hùn yù",武断专横:"wǔ duàn zhuān héng",五石六鹢:"wǔ shí liù yì",五色相宣:"wǔ sè xiāng xuān",五侯七贵:"wǔ hóu qī guì",五侯蜡烛:"wǔ hòu là zhú",五羖大夫:"wǔ gǔ dà fū",吾自有处:"wú zì yǒu chǔ",无下箸处:"wú xià zhù chǔ",无伤无臭:"wú shāng wú xiù",无能为役:"wú néng wéi yì",无寇暴死:"wú kòu bào sǐ",无孔不钻:"wú kǒng bú zuàn",无间可乘:"wú jiān kě chéng",无间冬夏:"wú jiān dōng xià",无恶不为:"wú è bù wéi",无动为大:"wú dòng wéi dà",诬良为盗:"wū liáng wéi dào",握拳透爪:"wò quán tòu zhǎo",文武差事:"wén wǔ chāi shì",委委佗佗:"wēi wēi tuó tuó",惟日为岁:"wéi rì wéi suì",帷薄不修:"wéi bó bù xiū",为善最乐:"wéi shàn zuì lè",为山止篑:"wéi shān zhǐ kuì",为仁不富:"wéi rén bú fù",为裘为箕:"wéi qiú wéi jī",为民父母:"wéi mín fù mǔ",为虺弗摧:"wéi huǐ fú cuī",为好成歉:"wéi hǎo chéng qiàn",为鬼为蜮:"wéi guǐ wéi yù",望风响应:"wàng fēng xiǎng yīng",望尘僄声:"wàng chén piào shēng",往渚还汀:"wǎng zhǔ huán tīng",王贡弹冠:"wáng gòng dàn guàn",亡国大夫:"wáng guó dà fū",万贯家私:"wàn guàn jiā sī",晚食当肉:"wǎn shí dàng ròu",晚节不保:"wǎn jié bù bǎo",玩岁愒时:"wán suì kài shí",蛙蟆胜负:"wā má shèng fù",吞言咽理:"tūn yán yàn lǐ",颓垣断堑:"tuí yuán duàn qiàn",推干就湿:"tuī gàn jiù shī",剸繁决剧:"tuán fán jué jù",团头聚面:"tuán tóu jù miàn",兔丝燕麦:"tù sī yàn mài",兔头麞脑:"tù tóu zhāng nǎo",兔葵燕麦:"tù kuí yàn mài",吐哺握发:"tǔ bǔ wò fà",投传而去:"tóu zhuàn ér qù",头没杯案:"tóu mò bēi àn",头昏脑闷:"tóu hūn nǎo mèn",头会箕敛:"tóu kuài jī liǎn",头出头没:"tóu chū tóu mò",痛自创艾:"tòng zì chuāng yì",同恶相助:"tóng wù xiāng zhù",同恶相恤:"tóng wù xiāng xù",痌瘝在抱:"tōng guān zài bào",通文调武:"tōng wén diào wǔ",停留长智:"tíng liú zhǎng zhì",铁树开华:"tiě shù kāi huā",条贯部分:"tiáo guàn bù fēn",挑牙料唇:"tiǎo yá liào chún",挑么挑六:"tiāo yāo tiāo liù",挑唇料嘴:"tiǎo chún liào zuǐ",恬不为意:"tián bù wéi yì",恬不为怪:"tián bù wéi guài",天下为笼:"tiān xià wéi lóng",天台路迷:"tiān tái lù mí",天年不遂:"tiān nián bú suì",探囊胠箧:"tàn náng qū qiè",谭言微中:"tán yán wēi zhòng",谈言微中:"tán yán wēi zhòng",狧穅及米:"shì kāng jí mǐ",随物应机:"suí wù yīng jī",搜岩采干:"sōu yán cǎi gàn",宋斤鲁削:"sòng jīn lǔ xuē",松筠之节:"sōng yún zhī jié",四亭八当:"sì tíng bā dàng",四马攒蹄:"sì mǎ cuán tí",四不拗六:"sì bú niù liù",思所逐之:"sī suǒ zhú zhī",丝恩发怨:"sī ēn fà yuàn",硕望宿德:"shuò wàng xiǔ dé",铄古切今:"shuò gǔ qiē jīn",顺风而呼:"shùn fēng ér hū",顺风吹火:"shùn fēng chuī huǒ",水中著盐:"shuǐ zhōng zhuó yán",双柑斗酒:"shuāng gān dǒu jiǔ",数米而炊:"shǔ mǐ ér chuī",数米量柴:"shǔ mǐ liáng chái",数理逻辑:"shù lǐ luó ji",数黑论黄:"shǔ hēi lùn huáng",数白论黄:"shǔ bái lùn huáng",束缊还妇:"shù yūn huán fù",束蒲为脯:"shù pú wéi pú",束椽为柱:"shù chuán wéi zhù",书缺有间:"shū quē yǒu jiàn",手足重茧:"shǒu zú chóng jiǎn",手足异处:"shǒu zú yì chǔ",手脚干净:"shǒu jiǎo gàn jìng",手不应心:"shǒu bù yīng xīn",螫手解腕:"shì shǒu jiě wàn",释知遗形:"shì zhī yí xíng",适时应务:"shì shí yīng wù",适情率意:"shì qíng shuài yì",适当其冲:"shì dāng qí chōng",视为知己:"shì wéi zhī jǐ",使羊将狼:"shǐ yáng jiàng láng",食为民天:"shí wéi mín tiān",拾掇无遗:"shí duō wú yí",实与有力:"shí yù yǒu lì",石英玻璃:"shí yīng bō li",石室金匮:"shí shì jīn guì",什袭珍藏:"shí xí zhēn cáng",什伍东西:"shí wǔ dōng xī",什围伍攻:"shí wéi wǔ gōng",十魔九难:"shí mó jiǔ nàn",诗书发冢:"shī shū fà zhǒng",虱处裈中:"shī chǔ kūn zhōng",师直为壮:"shī zhí wéi zhuàng",尸居龙见:"shī jū lóng xiàn",圣经贤传:"shèng jīng xián zhuàn",圣君贤相:"shèng jūn xián xiàng",生拖死拽:"shēng tuō sǐ zhuài",审己度人:"shěn jǐ duó rén",神武挂冠:"shén wǔ guà guàn",神龙失埶:"shén lóng shī shì",深文曲折:"shēn wén qǔ shé",深厉浅揭:"shēn lì qiǎn qì",深谷为陵:"shēn gǔ wéi líng",深恶痛疾:"shēn wù tòng jí",深仇宿怨:"shēn chóu xiǔ yuàn",舍己为公:"shě jǐ wèi gōng",舍短取长:"shě duǎn qǔ cháng",舍策追羊:"shě cè zhuī yáng",蛇蝎为心:"shé xiē wéi xīn",少成若性:"shào chéng ruò xìng",上当学乖:"shàng dàng xué guāi",赏不当功:"shǎng bù dāng gōng",善自为谋:"shàn zì wéi móu",善为说辞:"shàn wéi shuō cí",善善恶恶:"shàn shàn wù è",善财难舍:"shàn cái nán shě",苫眼铺眉:"shān yǎn pū méi",讪牙闲嗑:"shàn yá xián kē",山阴乘兴:"shān yīn chéng xīng",山殽野湋:"shān yáo yě wéi",山溜穿石:"shān liù chuān shí",山节藻棁:"shān jié zǎo zhuō",杀鸡为黍:"shā jī wéi shǔ",色厉胆薄:"sè lì dǎn bó",桑荫未移:"sāng yīn wèi yí",桑荫不徙:"sāng yīn bù xǐ",桑土绸缪:"sāng tǔ chóu miù",桑户棬枢:"sāng hù juàn shū",三战三北:"sān zhàn sān běi",三瓦两舍:"sān wǎ liǎng shě",三人为众:"sān rén wèi zhòng",三差两错:"sān chā liǎng cuò",塞井焚舍:"sāi jǐng fén shě",洒心更始:"sǎ xīn gèng shǐ",洒扫应对:"sǎ sǎo yìng duì",软红香土:"ruǎn hóng xiāng tǔ",入吾彀中:"rù wú gòu zhōng",入铁主簿:"rù tiě zhǔ bù",入理切情:"rù lǐ qiē qíng",汝成人耶:"rǔ chéng rén yé",如水投石:"rú shuǐ tóu shí",如切如磋:"rú qiē rú cuō",如登春台:"rú dēng chūn tái",肉薄骨并:"ròu bó gǔ bìng",柔情绰态:"róu qíng chuò tài",戎马劻勷:"róng mǎ kuāng ráng",日中为市:"rì zhōng wéi shì",日月参辰:"rì yuè shēn chén",日省月修:"rì xǐng yuè xiū",日削月割:"rì xuē yuè gē",日省月试:"rì xǐng yuè shì",任达不拘:"rèn dá bù jū",人言藉藉:"rén yán jí jí",人模狗样:"rén mú gǒu yàng",人莫予毒:"rén mò yú dú",热熬翻饼:"rè áo fān bǐng",圈牢养物:"juàn láo yǎng wù",取予有节:"qǔ yǔ yǒu jié",诎要桡腘:"qū yāo ráo guó",穷形尽相:"qióng xíng jìn xiàng",情凄意切:"qíng qī yì qiè",情见势屈:"qíng xiàn shì qū",情见乎辞:"qíng xiàn hū cí",清都绛阙:"qīng dōu jiàng què",倾肠倒肚:"qīng cháng dào dǔ",青紫被体:"qīng zǐ pī tǐ",青林黑塞:"qīng lín hēi sài",螓首蛾眉:"qín shǒu é méi",琴瑟之好:"qín sè zhī hào",且住为佳:"qiě zhù wéi jiā",切树倒根:"qiē shù dǎo gēn",切理餍心:"qiē lǐ yàn xīn",切近的当:"qiē jìn de dāng",翘足引领:"qiáo zú yǐn lǐng",巧发奇中:"qiǎo fā qí zhòng",强嘴拗舌:"jiàng zuǐ niù shé",强直自遂:"qiáng zhí zì suí",强死强活:"qiǎng sǐ qiǎng huó",强食自爱:"qiǎng shí zì ài",强食靡角:"qiǎng shí mí jiǎo",强弓劲弩:"qiáng gōng jìng nǔ",强聒不舍:"qiǎng guō bù shě",强凫变鹤:"qiáng fú biàn hè",强而后可:"qiǎng ér hòu kě",强得易贫:"qiǎng dé yì pín",遣兴陶情:"qiǎn xìng táo qíng",牵羊担酒:"qiān yáng dān jiǔ",千了百当:"qiān liǎo bǎi dàng",泣下如雨:"qì xià rú yǔ",起偃为竖:"qǐ yǎn wéi shù",岂弟君子:"kǎi tì jūn zǐ",綦溪利跂:"qí xī lì qí",棋输先著:"qí shū xiān zhuó",齐王舍牛:"qí wáng shě niú",欺天诳地:"qī tiān kuáng dì",普天率土:"pǔ tiān shuài tǔ",铺胸纳地:"pū xiōng nà dì",铺锦列绣:"pū jǐn liè xiù",破家为国:"pò jiā wèi guó",破觚为圜:"pò gū wéi yuán",萍飘蓬转:"píng piāo péng zhuàn",帡天极地:"píng tiān jí dì",屏声息气:"bǐng shēng xī qì",凭几据杖:"píng jī jù zhàng",贫嘴薄舌:"pín zuǐ bó shé",片语只辞:"piàn yǔ zhī cí",披发文身:"pī fà wén shēn",烹龙炮凤:"pēng lóng páo fèng",炰鳖脍鲤:"fǒu biē kuài lǐ",庞眉皓发:"páng méi hào fà",攀花折柳:"pān huā zhé liǔ",攀蟾折桂:"pān chán shé guì",女大难留:"nǚ dà nán liú",弄玉吹箫:"nòng yù chuī xiāo",弄管调弦:"nòng guǎn tiáo xián",弄粉调朱:"nòng fěn diào zhū",浓抹淡妆:"nóng mò dàn zhuāng",捻土为香:"niǎn tǔ wéi xiāng",年谊世好:"nián yì shì hǎo",年华垂暮:"nián huá chuí mù",儗不于伦:"nǐ bù yú lún",泥而不滓:"ní ér bù zǐ",能者为师:"néng zhě wéi shī",能不称官:"néng bú chèn guān",挠直为曲:"náo zhí wéi qū",难进易退:"nán jìn yì tuì",难得糊涂:"nán dé hú tú",南蛮鴂舌:"nán mán jué shé",南贩北贾:"nán fàn běi gǔ",牧猪奴戏:"mù zhū nú xì",目眢心忳:"mù yuān xīn tún",目挑心招:"mù tiǎo xīn zhāo",目量意营:"mù liàng yì yíng",木头木脑:"mù tóu mù nǎo",木干鸟栖:"mù gàn niǎo qī",侔色揣称:"móu sè chuǎi chèn",莫予毒也:"mò yú dú yě",抹粉施脂:"mò fěn shī zhī",磨砻镌切:"mó lóng juān qiē",磨棱刓角:"mó léng wán jiǎo",摸门不着:"mō mén bù zháo",摸不着边:"mō bù zhuó biān",命中注定:"mìng zhōng zhù dìng",鸣鹤之应:"míng hè zhī yìng",明效大验:"míng xiào dà yàn",名我固当:"míng wǒ gù dāng",邈处欿视:"miǎo chǔ kǎn shì",黾穴鸲巢:"měng xué qú cháo",绵里薄材:"mián lǐ bó cái",靡有孑遗:"mǐ yǒu jié yí",靡衣偷食:"mǐ yī tōu shí",迷恋骸骨:"mí liàn hái gǔ",扪参历井:"mén shēn lì jǐng",门单户薄:"mén dān hù bó",昧旦晨兴:"mèi dàn chén xīng",冒名接脚:"mào míng jiē jiǎo",毛遂堕井:"máo suí duò jǐng",毛发倒竖:"máo fā dǎo shù",卖文为生:"mài wén wéi shēng",卖李钻核:"mài lǐ zuān hé",买椟还珠:"mǎi dú huán zhū",埋三怨四:"mán sān yuàn sì",马入华山:"mǎ rù huá shān",落魄江湖:"luò pò jiāng hú",落落难合:"luò luò nán hé",落草为寇:"luò cǎo wéi kòu",罗织构陷:"luó zhī gòu xiàn",鸾凤和鸣:"luán fèng hè míng",率由旧章:"shuài yóu jiù zhāng",率土同庆:"shuài tǔ tóng qìng",率兽食人:"shuài shòu shí rén",率土归心:"shuài tǔ guī xīn",率马以骥:"shuài mǎ yǐ jì",率尔成章:"shuài ěr chéng zhāng",鲁斤燕削:"lǔ jīn yàn xuē",漏尽更阑:"lòu jìn gēng lán",笼鸟槛猿:"lóng niǎo jiàn yuán",笼鸟池鱼:"lóng niǎo chí yú",龙游曲沼:"lóng yóu qū zhǎo",龙血玄黄:"lóng xuè xuán huáng",龙雕凤咀:"lóng diāo fèng jǔ",六尺之讬:"liù chǐ zhī tuō",令原之戚:"líng yuán zhī qī",令人捧腹:"lìng rén pěng fù",陵劲淬砺:"líng jìng cuì lì",临敌易将:"lín dí yì jiàng",裂裳衣疮:"liè shang yī chuāng",裂冠毁冕:"liè guàn huǐ miǎn",了无惧色:"liǎo wú jù sè",了身达命:"liǎo shēn dá mìng",了然无闻:"liǎo rán wú wén",了不可见:"liǎo bù kě jiàn",了不长进:"liǎo bù zhǎng jìn",燎发摧枯:"liǎo fà cuī kū",审时度势:"shěn shí duó shì",量小力微:"liàng xiǎo lì wēi",相时度力:"xiāng shí duó lì",量枘制凿:"liàng ruì zhì záo",量如江海:"liàng rú jiāng hǎi",量金买赋:"liàng jīn mǎi fù",量己审分:"liàng jǐ shěn fēn",敛骨吹魂:"liǎn gǔ chuī hún",詈夷为跖:"lì yí wéi zhí",利令志惛:"lì lìng zhì hūn",李广不侯:"lǐ guǎng bú hòu",礼为情貌:"lǐ wéi qíng mào",礼让为国:"lǐ ràng wéi guó",犁生骍角:"lí shēng xīng jiǎo",离本徼末:"lí běn jiǎo mò",楞眉横眼:"léng méi hèng yǎn",擂天倒地:"léi tiān dǎo dì",累足成步:"lěi zú chéng bù",累瓦结绳:"lěi wǎ jié shéng",累土至山:"lěi tǔ zhì shān",累土聚沙:"lěi tǔ jù shā",累卵之危:"lěi luǎn zhī wēi",累累如珠:"lěi lěi rú zhū",累块积苏:"lěi kuài jī sū",乐山乐水:"lè shān lè shuǐ",潦原浸天:"lǎo yuán jìn tiān",老师宿儒:"lǎo shī xiǔ rú",牢什古子:"láo shí gǔ zi",琅嬛福地:"láng huán fú dì",揆情度理:"kuí qíng duó lǐ",旷日累时:"kuàng rì lěi shí",匡救弥缝:"kuāng jiù mí fèng",枯树生华:"kū shù shēng huā",口轻舌薄:"kǒu qīng shé bó",口角生风:"kǒu jiǎo shēng fēng",口角春风:"kǒu jiǎo chūn fēng",口角风情:"kǒu jiǎo fēng qíng",口干舌焦:"kǒu gān shé jiāo",口腹之累:"kǒu fù zhī lěi",空腹便便:"kōng fù pián pián",嗑牙料嘴:"kē yá liào zuǐ",刻木为鹄:"kè mù wéi hú",咳珠唾玉:"ké zhū tuò yù",咳唾成珠:"ké tuò chéng zhū",抗颜为师:"kàng yán wéi shī",开华结果:"kāi huā jié guǒ",峻阪盐车:"jùn bǎn yán chē",嚼铁咀金:"jiáo tiě jǔ jīn",嚼墨喷纸:"jué mò pēn zhǐ",倔头强脑:"juè tóu jiàng nǎo",倔头倔脑:"juè tóu juè nǎo",倦鸟知还:"juàn niǎo zhī huán",卷席而葬:"juǎn xí ér zàng",卷甲倍道:"juǎn jiǎ bèi dào",聚米为山:"jù mǐ wéi shān",举手相庆:"jǔ shǒu xiāng qìng",举世混浊:"jǔ shì hún zhuó",鞠为茂草:"jū wéi mào cǎo",拘神遣将:"jū shén qiǎn jiàng",居下讪上:"jū xià shàn shàng",久要不忘:"jiǔ yāo bú wàng",九转功成:"jiǔ zhuǎn gōng chéng",九蒸三熯:"jiǔ zhēng sān hàn",敬业乐群:"jìng yè lè qún",井底虾蟆:"jǐng dǐ xiā má",旌旗卷舒:"jīng qí juǎn shū",荆棘载途:"jīng jí zài tú",禁舍开塞:"jìn shě kāi sāi",祲威盛容:"jìn wēi shèng róng",进退消长:"jìn tuì xiāo cháng",进退应矩:"jìn tuì yīng jǔ",进退触籓:"jìn tuì chù fān",进退跋疐:"jìn tuì bá zhì",尽多尽少:"jǐn duō jǐn shǎo",锦囊还矢:"jǐn náng huán shǐ",矜己自饰:"jīn jǐ zì shì",矜功负气:"jīn gōng fù qì",津关险塞:"jīn guān xiǎn sài",金吾不禁:"jīn wú bú jìn",金翅擘海:"jīn chì bāi hǎi",解衣衣人:"jiě yī yī rén",解人难得:"jiě rén nán dé",解铃系铃:"jiě líng xì líng",解发佯狂:"jiě fà yáng kuáng",诘屈磝碻:"jié qū áo qiāo",教猱升木:"jiāo náo shēng mù",较瘦量肥:"jiào shòu liàng féi",角立杰出:"jiǎo lì jié chū",焦沙烂石:"jiāo shā làn shí",骄儿騃女:"jiāo ér sì nǚ",浇风薄俗:"jiāo fēng bó sú",降妖捉怪:"xiáng yāo zhuō guài",将取固予:"jiāng qǔ gù yǔ",将门有将:"jiàng mén yǒu jiàng",将夺固与:"jiāng duó gù yǔ",槛花笼鹤:"jiàn huā lóng hè",鉴影度形:"jiàn yǐng duó xíng",渐不可长:"jiàn bù kě zhǎng",见素抱朴:"xiàn sù bào pǔ",见弃于人:"jiàn qì yú rén",简丝数米:"jiǎn sī shǔ mǐ",俭不中礼:"jiǎn bú zhòng lǐ",间见层出:"jiàn xiàn céng chū",尖嘴薄舌:"jiān zuǐ bó shé",甲冠天下:"jiǎ guàn tiān xià",葭莩之亲:"jiā fú zhī qīn",家累千金:"jiā lèi qiān jīn",家给人足:"jiā jǐ rén zú",家道从容:"jiā dào cóng róng",夹袋人物:"jiā dài rén wù",霁风朗月:"jì fēng lǎng yuè",寄兴寓情:"jì xìng yù qíng",计深虑远:"jì shēn lǜ yuǎn",计功量罪:"jì gōng liàng zuì",掎裳连襼:"jǐ shang lián yì",虮虱相吊:"jǐ shī xiāng diào",疾不可为:"jí bù kě wéi",极深研几:"jí shēn yán jī",及宾有鱼:"jí bīn yǒu yú",激薄停浇:"jī bó tíng jiāo",积素累旧:"jī sù lěi jiù",积时累日:"jī shí lěi rì",积露为波:"jī lù wéi bō",积德累功:"jī dé lěi gōng",积谗糜骨:"jī chán méi gǔ",击排冒没:"jī pái mào mò",祸为福先:"huò wéi fú xiān",祸福相依:"huò fú xiāng yī",获隽公车:"huò jùn gōng chē",混应滥应:"hùn yīng làn yīng",毁舟为杕:"huǐ zhōu wéi duò",毁钟为铎:"huǐ zhōng wéi duó",毁冠裂裳:"huǐ guān liè cháng",晦盲否塞:"huì máng pǐ sè",回船转舵:"huí chuán zhuàn duò",潢池盗弄:"huáng chí dào nòng",黄冠草履:"huáng guàn cǎo lǚ",黄发儿齿:"huáng fà ér chǐ",黄发垂髫:"huáng fà chuí tiáo",还珠返璧:"huán zhū fǎn bì",还年驻色:"huán nián zhù sè",还年却老:"huán nián què lǎo",坏裳为裤:"huài shang wéi kù",画荻和丸:"huà dí huò wán",化枭为鸠:"huà xiāo wéi jiū",化腐为奇:"huà fǔ wéi qí",化鸱为凤:"huà chī wéi fèng",花不棱登:"huā bu lēng dēng",户限为穿:"hù xiàn wéi chuān",呼卢喝雉:"hū lú hè zhì",呼来喝去:"hū lái hè qù",呼不给吸:"hū bù jǐ xī",厚味腊毒:"hòu wèi xī dú",厚德载物:"hòu dé zài wù",鸿渐于干:"hóng jiàn yú gàn",洪炉燎发:"hóng lú liáo fà",红绳系足:"hóng shéng jì zú",红不棱登:"hóng bu lēng dēng",横抢硬夺:"hèng qiǎng yìng duó",横恩滥赏:"hèng ēn làn shǎng",恨海难填:"hèn hǎi nán tián",鹤发鸡皮:"hè fà jī pí",涸思干虑:"hé sī gān lǜ",河涸海干:"hé hé hǎi gān",和颜说色:"hé yán yuè sè",合从连衡:"hé zòng lián héng",浩浩汤汤:"hào hào shāng shāng",好勇斗狠:"hào yǒng dòu hěn",好问则裕:"hào wèn zé yù",好为事端:"hào wéi shì duān",好问决疑:"hào wèn jué yí",好生之德:"hào shēng zhī dé",好奇尚异:"hǎo qí shàng yì",好恶不同:"hǎo è bù tóng",好丹非素:"hào dān fēi sù",豪干暴取:"háo gàn bào qǔ",毫发不爽:"háo fà bù shuǎng",寒酸落魄:"hán suān luò pò",含英咀华:"hán yīng jǔ huá",含糊不明:"hán hú bù míng",过为已甚:"guò wéi yǐ shèn",桂折兰摧:"guì shé lán cuī",规旋矩折:"guī xuán jǔ shé",广文先生:"guǎng wén xiān sheng",广陵散绝:"guǎng líng sǎn jué",冠山戴粒:"guàn shān dài lì",冠屦倒施:"guàn jù dǎo shī",挂席为门:"guà xí wéi mén",寡见鲜闻:"guǎ jiàn xiǎn wén",瓜葛相连:"guā gé xiāng lián",鼓吻奋爪:"gǔ wěn fèn zhǎo",古调单弹:"gǔ diào dān tán",古调不弹:"gǔ diào bù tán",姑射神人:"gū yè shén rén",苟合取容:"gǒu hé qǔ róng",狗续侯冠:"gǒu xù hòu guàn",钩爪锯牙:"gōu zhǎo jù yá",共枝别干:"gòng zhī bié gàn",共为唇齿:"gòng wéi chún chǐ",拱手而降:"gǒng shǒu ér xiáng",拱肩缩背:"gǒng jiān suō bèi",功薄蝉翼:"gōng bó chán yì",弓调马服:"gōng diào mǎ fú",更姓改物:"gēng xìng gǎi wù",更仆难数:"gēng pú nán shǔ",更令明号:"gēng lìng míng hào",更待干罢:"gèng dài gàn bà",更唱迭和:"gēng chàng dié hé",更长梦短:"gēng cháng mèng duǎn",各色名样:"gè sè míng yàng",格格不纳:"gé gé bú nà",格格不吐:"gé gé bù tǔ",告朔饩羊:"gù shuò xì yáng",膏车秣马:"gào chē mò mǎ",高义薄云:"gāo yì bó yún",岗头泽底:"gāng tóu zé dǐ",敢为敢做:"gǎn wéi gǎn zuò",甘分随时:"gān fèn suí shí",甘处下流:"gān chǔ xià liú",干啼湿哭:"gàn tí shī kū",干名犯义:"gàn míng fàn yì",干将莫邪:"gān jiāng mò yé",干城之将:"gān chéng zhī jiàng",腹载五车:"fù zài wǔ chē",父债子还:"fù zhài zǐ huán",父为子隐:"fù wéi zǐ yǐn",辅世长民:"fǔ shì zhǎng mín",福为祸始:"fú wéi huò shǐ",符号逻辑:"fú hào luó jí",浮收勒折:"fú shōu lè shé",肤受之愬:"fū shòu zhī sù",否终则泰:"pǐ zhōng zé tài",佛头著粪:"fó tóu zhuó fèn",奉为楷模:"fèng wéi kǎi mó",凤靡鸾吪:"fèng mǐ luán é",封豨修蛇:"fēng xī xiū shé",风影敷衍:"fēng yǐng fū yǎn",丰屋蔀家:"fēng wū bù jiā",粪土不如:"fèn tǔ bù rú",分风劈流:"fēn fēng pǐ liú",沸沸汤汤:"fèi fèi shāng shāng",菲食薄衣:"fěi shí bó yī",飞将数奇:"fēi jiàng shù qí",放辟邪侈:"fàng pì xié chǐ",方领圆冠:"fāng lǐng yuán guàn",犯而不校:"fàn ér bú jiào",返本还源:"fǎn běn huán yuán",反劳为逸:"fǎn láo wéi yì",法轮常转:"fǎ lún cháng zhuàn",罚不当罪:"fá bù dāng zuì",发引千钧:"fà yǐn qiān jūn",发奸擿伏:"fā jiān tī fú",发短心长:"fà duǎn xīn cháng",二竖为虐:"èr shù wéi nüè",儿女心肠:"ér nǚ xīn cháng",儿女亲家:"ér nǚ qìng jiā",遏恶扬善:"è wù yáng shàn",饿殍枕藉:"è piǎo zhěn jí",饿殍载道:"è piǎo zài dào",恶醉强酒:"wù zuì qiǎng jiǔ",恶意中伤:"è yì zhòng shāng",恶湿居下:"wù shī jū xià",恶居下流:"wù jū xià liú",恶不去善:"wù bú qù shàn",扼吭夺食:"è háng duó shí",扼襟控咽:"è jīn kòng yān",峨峨汤汤:"é é shāng shāng",屙金溺银:"ē jīn niào yín",朵颐大嚼:"duǒ yí dà jiáo",夺人所好:"duó rén suǒ hào",多言数穷:"duō yán shuò qióng",多文为富:"duō wén wéi fù",多端寡要:"duō duān guǎ yào",多财善贾:"duō cái shàn gǔ",遁世无闷:"dùn shì wú mèn",遁迹黄冠:"dùn jì huáng guàn",堆案盈几:"duī àn yíng jī",断还归宗:"duàn huán guī zōng",短见薄识:"duǎn jiàn bó shí",蠹居棊处:"dù jū qí chǔ",度己以绳:"duó jǐ yǐ shéng",杜默为诗:"dù mò wéi shī",杜鹃啼血:"dù juān tí xuè",笃近举远:"dǔ jìn jǔ yuǎn",独有千秋:"dú yǒu qiān qiū",读书得间:"dú shū dé jiàn",斗转参横:"dǒu zhuǎn shēn héng",兜肚连肠:"dōu dǔ lián cháng",洞见症结:"dòng jiàn zhèng jié",恫疑虚喝:"dòng yí xū hè",动中窾要:"dòng zhōng kuǎn yào",东鸣西应:"dōng míng xī yīng",东鳞西爪:"dōng lín xī zhǎo",东量西折:"dōng liàng xī shé",东家西舍:"dōng jiā xī shè",东扯西拽:"dōng chě xī zhuāi",鼎铛有耳:"dǐng chēng yǒu ěr",鼎铛玉石:"dǐng chēng yù shí",钉头磷磷:"dīng tóu lín lín",跌宕不羁:"diē dàng bù jī",跌弹斑鸠:"diē dàn bān jiū",雕心雁爪:"diāo xīn yàn zhǎo",颠倒衣裳:"diān dǎo yī cháng",德薄能鲜:"dé bó néng xiǎn",得马折足:"dé mǎ shé zú",蹈其覆辙:"dǎo qí fù zhé",捣虚撇抗:"dǎo xū piē kàng",倒载干戈:"dào zài gān gē",倒裳索领:"dào cháng suǒ lǐng",倒果为因:"dào guǒ wéi yīn",叨在知己:"tāo zài zhī jǐ",叨陪末座:"tāo péi mò zuò",党豺为虐:"dǎng chái wéi nüè",当轴处中:"dāng zhóu chǔ zhōng",当着不着:"dāng zhuó bù zhuó",当务始终:"dāng wù shǐ zhōng",淡汝浓抹:"dàn rǔ nóng mǒ",弹丸脱手:"tán wán tuō shǒu",弹铗无鱼:"dàn jiá wú yú",箪食瓢饮:"dān sì piáo yǐn",大璞不完:"dà pú bù wán",大明法度:"dà míng fǎ dù",大车以载:"dà chē yǐ zài",打闷葫芦:"dǎ mèn hú lu",沓来踵至:"tà lái zhǒng zhì",厝火燎原:"cuò huǒ liǎo yuán",撮科打哄:"cuō kē dǎ hòng",寸积铢累:"cùn jī zhū lěi",啛啛喳喳:"cuì cuì chā chā",摧折豪强:"cuī zhé háo qiáng",摧刚为柔:"cuī gāng wéi róu",从俗就简:"cóng sú jiù jiǎn",此发彼应:"cǐ fā bǐ yīng",此唱彼和:"cǐ chàng bǐ hè",慈悲为本:"cí bēi wéi běn",纯属骗局:"chún shǔ piàn jú",春笋怒发:"chūn sǔn nù fā",垂头搨翼:"chuí tóu tà yì",传为笑谈:"chuán wéi xiào tán",传风扇火:"chuán fēng shān huǒ",穿红着绿:"chuān hóng zhuó lǜ",触处机来:"chù chǔ jī lái",处尊居显:"chǔ zūn jū xiǎn",处堂燕雀:"chǔ táng yàn què",处实效功:"chǔ shí xiào gōng",处高临深:"chǔ gāo lín shēn",出入无间:"chū rù wú jiān",出门应辙:"chū mén yīng zhé",出处语默:"chū chǔ yǔ mò",出处殊途:"chū chǔ shū tú",出处进退:"chū chǔ jìn tuì",愁山闷海:"chóu shān mèn hǎi",冲冠眦裂:"chōng guàn zì liè",齿牙为祸:"chǐ yá wéi huò",尺二冤家:"chǐ èr yuān jia",尺短寸长:"chǐ duǎn cùn cháng",尺寸之功:"chǐ cùn zhī gōng",城北徐公:"chéng běi xú gōng",成败兴废:"chéng bài xīng fèi",趁水和泥:"chèn shuǐ huò ní",称雨道晴:"chēng yǔ dào qíng",称体载衣:"chēng tǐ zài yī",称体裁衣:"chèn tǐ cái yī",称家有无:"chèn jiā yǒu wú",称德度功:"chēng dé duó gōng",沉吟章句:"chén yín zhāng jù",沉吟不决:"chén yín bù jué",沉疴宿疾:"chén kē sù jí",扯纤拉烟:"chě qiàn lā yān",扯顺风旗:"chě shùn fēng qí",车载船装:"chē zǎi chuán zhuāng",朝升暮合:"zhāo shēng mù gě",朝攀暮折:"zhāo pān mù shé",超今冠古:"chāo jīn guàn gǔ",倡而不和:"chàng ér bú hè",畅所欲为:"chàng suǒ yù wéi",苌弘碧血:"cháng hóng bì xiě",长幼尊卑:"zhǎng yòu zūn bēi",长绳系日:"cháng shéng jì rì",长年三老:"zhǎng nián sān lǎo",长春不老:"cháng chūn bù lǎo",长傲饰非:"zhǎng ào shì fēi",昌亭旅食:"chāng tíng lǚ shí",禅絮沾泥:"chán xù zhān ní",差三错四:"chā sān cuò sì",层台累榭:"céng tái lěi xiè",层见迭出:"céng xiàn dié chū",藏踪蹑迹:"cáng zōng niè jì",苍蝇见血:"cāng yíng jiàn xiě",餐松啖柏:"cān sōng dàn bó",骖风驷霞:"cān fēng sì xiá",参伍错综:"cēn wǔ cuò zōng",参辰卯酉:"shēn chén mǎo yǒu",材优干济:"cái yōu gān jǐ",材薄质衰:"cái bó zhì shuāi",才大难用:"cái dà nán yòng",才薄智浅:"cái bó zhì qiǎn",不足为意:"bù zú wéi yì",不足为据:"bù zú wéi jù",不足为法:"bù zú wéi fǎ",不足齿数:"bù zú chǐ shǔ",不着疼热:"bù zhuó téng rè",不知薡蕫:"bù zhī dǐng dǒng",不越雷池:"bú yuè léi chí",不相为谋:"bù xiāng wéi móu",不贪为宝:"bù tān wéi bǎo",不了而了:"bù liǎo ér liǎo",不可揆度:"bù kě kuí duó",不遑启处:"bù huáng qǐ chǔ",不当不正:"bù dāng bú zhèng",不差什么:"bú chà shén me",不差累黍:"bù chā lěi shǔ",擘两分星:"bò liǎng fēn xīng",簸土扬沙:"bǒ tǔ yáng shā",薄物细故:"bó wù xì gù",薄寒中人:"bó hán zhòng rén",博文约礼:"bó wén yuē lǐ",播糠眯目:"bō kāng mí mù",剥皮抽筋:"bō pí chōu jīn",剥肤椎髓:"bō fū chuí suǐ",波属云委:"bō zhǔ yún wěi",波骇云属:"bō hài yún zhǔ",兵微将寡:"bīng wēi jiàng guǎ",兵强将勇:"bīng qiáng jiàng yǒng",兵多将广:"bīng duō jiàng guǎng",兵不由将:"bīng bù yóu jiàng",冰解的破:"bīng jiě dì pò",彬彬济济:"bīn bīn jǐ jǐ",摽梅之年:"biào méi zhī nián",表里为奸:"biǎo lǐ wéi jiān",飙发电举:"biāo fā diàn jǔ",变贪厉薄:"biàn tān lì bó",敝盖不弃:"bì gài bú qì",秕言谬说:"bǐ yán miù shuō",比物属事:"bǐ wù zhǔ shì",被山带河:"pī shān dài hé",被甲枕戈:"pī jiǎ zhěn gē",被甲据鞍:"pī jiǎ jù ān",被褐怀玉:"pī hè huái yù",被发缨冠:"pī fà yīng guàn",背曲腰躬:"bèi qǔ yāo gōng",北窗高卧:"běi chuāng gāo wò",北辰星拱:"běi chén xīng gǒng",北鄙之音:"běi bǐ zhī yīn",卑宫菲食:"bēi gōng fěi shí",暴衣露冠:"pù yī lù guàn",暴腮龙门:"pù sāi lóng mén",暴露文学:"bào lù wén xué",暴虎冯河:"bào hǔ píng hé",抱蔓摘瓜:"bào wàn zhāi guā",抱法处势:"bào fǎ chǔ shì",褒贬与夺:"bāo biǎn yǔ duó",帮闲钻懒:"bāng xián zuān lǎn",拜将封侯:"bài jiàng fēng hóu",百兽率舞:"bǎi shòu shuài wǔ",百孔千创:"bǎi kǒng qiān chuāng",白衣卿相:"bái yī qīng xiàng",白首为郎:"bái shǒu wéi láng",白首相知:"bái shǒu xiāng zhī",把玩无厌:"bǎ wán wú yàn",拔锅卷席:"bá guō juǎn xí",拔本塞源:"bá běn sè yuán",傲不可长:"ào bù kě zhǎng",熬更守夜:"áo gēng shǒu yè",安时处顺:"ān shí chǔ shùn",安身为乐:"ān shēn wéi lè",安老怀少:"ān lǎo huái shào",安步当车:"ān bù dàng chē",爱人好士:"ài rén hào shì",矮人观场:"ǎi rén guān chǎng",捱风缉缝:"ái fēng jī fèng",挨山塞海:"āi shān sè hǎi",阿家阿翁:"ā jiā ā wēng",阿党相为:"ē dǎng xiāng wéi",追亡逐北:"zhuī wáng zhú běi",竹篮打水:"zhú lán dá shuǐ",知疼着热:"zhī téng zháo rè",语不惊人:"yǔ bù jīng rén",于今为烈:"yú jīn wéi liè",一日三省:"yí rì sān xǐng",穴居野处:"xué jū yě chǔ",五脊六兽:"wǔ jǐ liù shòu",无声无臭:"wú shēng wú xiù",谓予不信:"wèi yú bú xìn",舍身为国:"shě shēn wéi guó",杀妻求将:"shā qī qiú jiàng",强作解人:"qiǎng zuò jiě rén",气冲斗牛:"qì chōng dǒu niú",临深履薄:"lín shēn lǚ bó",钧天广乐:"jūn tiān guǎng yuè",艰难竭蹶:"jiān nán jié jué",夹七夹八:"jiā qī jiā bā",混混噩噩:"hún hún è è",厚古薄今:"hòu gǔ bó jīn",鬼怕恶人:"guǐ pà è rén",伽马射线:"gā mǎ shè xiàn",佛头着粪:"fó tóu zhuó fèn",奉为至宝:"fèng wéi zhì bǎo",登坛拜将:"dēng tán bài jiàng",晨昏定省:"chén hūn dìng xǐng",察察为明:"chá chá wéi míng",博闻强识:"bó wén qiáng zhì",避难就易:"bì nán jiù yì",了无生机:"liǎo wú shēng jī",有一说一:"yǒu yī shuō yī",独一无二:"dú yī wú èr",说一不二:"shuō yī bù èr",举一反三:"jǔ yī fǎn sān",数一数二:"shǔ yī shǔ èr",杀一儆百:"shā yī jǐng bǎi",丁一卯二:"dīng yī mǎo èr",丁一确二:"dīng yī què èr",不一而止:"bù yī ér zhǐ",无一幸免:"wú yī xìng miǎn",表里不一:"biǎo lǐ bù yī",良莠不一:"liáng yǒu bù yī",心口不一:"xīn kǒu bù yī",言行不一:"yán xíng bù yī",政令不一:"zhèng lìng bù yī",参差不一:"cēn cī bù yī",纷纷不一:"fēn fēn bù yī",毁誉不一:"huǐ yù bù yī",不一而三:"bù yī ér sān",百不一遇:"bǎi bù yī yù",言行抱一:"yán xíng bào yī",瑜百瑕一:"yú bǎi xiá yī",背城借一:"bèi chéng jiè yī",凭城借一:"píng chéng jiè yī",劝百讽一:"quàn bǎi fěng yī",群居和一:"qún jū hé yī",百不获一:"bǎi bù huò yī",百不失一:"bǎi bù shī yī",百无失一:"bǎi wú shī yī",万不失一:"wàn bù shī yī",万无失一:"wàn wú shī yī",合而为一:"hé ér wéi yī",合两为一:"hé liǎng wéi yī",合二为一:"hé èr wéi yī",天下为一:"tiān xià wéi yī",相与为一:"xiāng yǔ wéi yī",较若画一:"jiào ruò huà yī",较如画一:"jiào rú huà yī",斠若画一:"jiào ruò huà yī",言行若一:"yán xíng ruò yī",始终若一:"shǐ zhōng ruò yī",终始若一:"zhōng shǐ ruò yī",惟精惟一:"wéi jīng wéi yī",众多非一:"zhòng duō fēi yī",不能赞一:"bù néng zàn yī",问一答十:"wèn yī dá shí",一不扭众:"yī bù niǔ zhòng",一以贯之:"yī yǐ guàn zhī",一以当百:"yī yǐ dāng bǎi",百不当一:"bǎi bù dāng yī",十不当一:"shí bù dāng yī",以一警百:"yǐ yī jǐng bǎi",以一奉百:"yǐ yī fèng bǎi",以一持万:"yǐ yī chí wàn",以一知万:"yǐ yī zhī wàn",百里挑一:"bǎi lǐ tiāo yī",整齐划一:"zhěng qí huà yī",一来二去:"yī lái èr qù",一路公交:"yī lù gōng jiāo",一路汽车:"yī lù qì chē",一路巴士:"yī lù bā shì",朝朝朝落:"zhāo cháo zhāo luò",曲意逢迎:"qū yì féng yíng",一行不行:"yì háng bù xíng",行行不行:"háng háng bù xíng"},Ch=Object.keys(si).map(n=>({zh:n,pinyin:si[n],probability:2e-8,length:4,priority:R.Normal,dict:Symbol("dict4")})),li={巴尔干半岛:"bā ěr gàn bàn dǎo",巴尔喀什湖:"bā ěr kā shí hú",不幸而言中:"bú xìng ér yán zhòng",布尔什维克:"bù ěr shí wéi kè",何乐而不为:"hé lè ér bù wéi",苛政猛于虎:"kē zhèng měng yú hǔ",蒙得维的亚:"méng dé wéi dì yà",民以食为天:"mín yǐ shí wéi tiān",事后诸葛亮:"shì hòu zhū gě liàng",物以稀为贵:"wù yǐ xī wéi guì",先下手为强:"xiān xià shǒu wéi qiáng",行行出状元:"háng háng chū zhuàng yuan",亚得里亚海:"yà dé lǐ yà hǎi",眼不见为净:"yǎn bú jiàn wéi jìng",竹筒倒豆子:"zhú tǒng dào dòu zi"},Dh=Object.keys(li).map(n=>({zh:n,pinyin:li[n],probability:2e-8,length:5,priority:R.Normal,dict:Symbol("dict5")}));function oi(n,i){return n&&(n.decimali.probability)?n:i}function ti(n){n.probability<1e-300&&(n.probability*=1e300,n.decimal+=1)}function Ih(n){return n.priority===R.Custom?-(n.length*n.length*100):n.priority===R.Surname?-(n.length*n.length*10):0}function Vh(n,i){const g=[];let u=n.length-1,h=n[u];for(let e=i-1;e>=0;e--){const s=e+1>=i?{probability:1,decimal:0,patterns:[]}:g[e+1];for(;h&&h.index+h.length-1===e;){const d=h.index,c={probability:h.probability*s.probability,decimal:s.decimal+Ih(h),patterns:s.patterns,concatPattern:h};ti(c),g[d]=oi(g[d],c),h=n[--u]}const o={probability:1e-13*s.probability,decimal:0,patterns:s.patterns};ti(o),g[e]=oi(g[e],o),g[e].concatPattern&&(g[e].patterns=g[e].patterns.concat(g[e].concatPattern),g[e].concatPattern=void 0,delete g[e+1])}return g[0].patterns.reverse()}function ci(n,i){return n&&n.count<=i.count?n:i}function Mh(n){return n.priority===R.Custom?-(n.length*n.length*1e5):n.priority===R.Surname?-(n.length*n.length*100):1}function Eh(n,i){const g=[];let u=n.length-1,h=n[u];for(let e=i-1;e>=0;e--){const s=e+1>=i?{count:0,patterns:[]}:g[e+1];for(;h&&h.index+h.length-1===e;){const d=h.index,c={count:Mh(h)+s.count,patterns:s.patterns,concatPattern:h};g[d]=ci(g[d],c),h=n[--u]}const o={count:1+s.count,patterns:s.patterns};g[e]=ci(g[e],o),g[e].concatPattern&&(g[e].patterns=g[e].patterns.concat(g[e].concatPattern),g[e].concatPattern=void 0,delete g[e+1])}return g[0].patterns.reverse()}function _h(n,i){return!(i.index+i.length<=n.index||i.priority>n.priority||i.priority===n.priority&&i.length>n.length)}function Nh(n){const i=[];for(let g=n.length-1;g>=0;){const{index:u}=n[g];let h=g-1;for(;h>=0&&_h(n[g],n[h]);)h--;(h<0||n[h].index+n[h].length<=u)&&i.push(n[g]),g=h}return i.reverse()}var zi;(function(n){n[n.ReverseMaxMatch=1]="ReverseMaxMatch",n[n.MaxProbability=2]="MaxProbability",n[n.MinTokenization=3]="MinTokenization"})(zi||(zi={}));class yi{constructor(i,g="",u=""){this.children=new Map,this.fail=null,this.patterns=[],this.parent=i,this.prefix=g,this.key=u}}class Rh{constructor(){this.dictMap=new Map,this.queues=[],this.root=new yi(null)}build(i){this.buildTrie(i),this.buildFailPointer()}buildTrie(i){for(let g of i){const u=En(g.zh);let h=this.root;for(let e=0;e{i=i.concat(u)}),this.queues=[];i.length>g;){let u=i[g++],h=u.parent&&u.parent.fail,e=u.key;for(;h&&!h.children.has(e);)h=h.fail;h?u.fail=h.children.get(e):u.fail=this.root}}addPatternToDictMap(i){this.dictMap.has(i.dict)||this.dictMap.set(i.dict,new Set),this.dictMap.get(i.dict).add(i)}addNodeToQueues(i){this.queues[O(i.prefix)]||(this.queues[O(i.prefix)]=[]),this.queues[O(i.prefix)].push(i)}insertPattern(i,g){for(let u=i.length-1;u>=0;u--){const h=i[u];if(g.priority===h.priority&&g.probability>=h.probability)i[u+1]=h;else if(g.priority>h.priority)i[u+1]=h;else{i[u+1]=g;return}}i[0]=g}removeDict(i){this.dictMap.has(i)&&(this.dictMap.get(i).forEach(u=>{u.node.patterns=u.node.patterns.filter(h=>h!==u)}),this.dictMap.delete(i))}match(i,g){let u=this.root,h=[];const e=En(i);for(let s=0;sg==="off"?z.priority!==R.Surname:g==="head"?z.length-1-s===0:!0);d&&h.push(Object.assign(Object.assign({},d),{index:s-d.length+1}));let c=u.fail;for(;c!==null;){const z=c.patterns.find(t=>g==="off"?t.priority!==R.Surname:g==="head"?t.length-1-s===0:!0);z&&h.push(Object.assign(Object.assign({},z),{index:s-z.length+1})),c=c.fail}}}return h}search(i,g,u=2){const h=this.match(i,g);return u===1?Nh(h):u===3?Eh(h,O(i)):Vh(h,O(i))}}const Ah=[...Dh,...Ch,...Ph,...Sh,...fh,...Th],vi=new Rh;vi.build(Ah);const Zh=new qi,Bh=()=>Zh,Fh=[];function Lh(){return Fh}const dn=n=>{const i=G.get(n);return i?i.split(" ")[0]:n},$h=n=>{const i=[],g=Lh();for(let u=0;u{const e=h?$h(n):n,s=vi.search(e,g,u);let o=0;const d=En(n);for(let c=0;cn.replace(/(ā|á|ǎ|à)/g,"a").replace(/(ō|ó|ǒ|ò)/g,"o").replace(/(ē|é|ě|è)/g,"e").replace(/(ī|í|ǐ|ì)/g,"i").replace(/(ū|ú|ǔ|ù)/g,"u").replace(/(ǖ|ǘ|ǚ|ǜ)/g,"ü").replace(/(n̄|ń|ň|ǹ)/g,"n").replace(/(m̄|ḿ|m̌|m̀)/g,"m").replace(/(ê̄|ế|ê̌|ề)/g,"ê"),ki=(n,i="off")=>{const g=Bh();let u=G.get(n)?G.get(n).split(" "):[];if(g.get(n))u=g.get(n).split(" ");else if(i!=="off"){const h=_n[n];h&&(u=[h].concat(u.filter(e=>e!==h)))}return u},Wh=(n,i="off")=>{let g=ki(n,i);return g.length>0?g.map(u=>({origin:n,result:u,isZh:!0,originPinyin:u})):[{origin:n,result:n,isZh:!1,originPinyin:n}]},vn=(n,i)=>{const g=n.split(" "),u=[],h=[];for(let e of g)for(let s of ah)if(e.startsWith(s)){let o=e.slice(s.length);rh.indexOf(s)!==-1&&jh.indexOf(o)!==-1&&(o=bh[o]),u.push(s),h.push(o);break}return i==="standard"&&u.forEach((e,s)=>{(e==="y"||e==="w")&&(u[s]="")}),{final:h.join(" "),initial:u.join(" ")}},wn=n=>{const{final:i}=vn(n);let g="",u="",h="";return mh.indexOf(kn(i))!==-1?(g=i[0],u=i[1],h=i.slice(2)):(u=i[0]||"",h=i.slice(1)||""),{head:g,body:u,tail:h}},Tn=n=>{const i=/(ā|ō|ē|ī|ū|ǖ|n̄|m̄|ê̄)/,g=/(á|ó|é|í|ú|ǘ|ń|ḿ|ế)/,u=/(ǎ|ǒ|ě|ǐ|ǔ|ǚ|ň|m̌|ê̌)/,h=/(à|ò|è|ì|ù|ǜ|ǹ|m̀|ề)/,e=/(a|o|e|i|u|ü|ê)/,s=/(n|m)$/,o=[];return n.split(" ").forEach(c=>{i.test(c)?o.push("1"):g.test(c)?o.push("2"):u.test(c)?o.push("3"):h.test(c)?o.push("4"):e.test(c)||s.test(c)?o.push("0"):o.push("")}),o.join(" ")},Hh=(n,i)=>{const g=kn(n).split(" "),u=Tn(i).split(" "),h=[];return g.forEach((e,s)=>{h.push(`${e}${u[s]}`)}),h.join(" ")},Ti=(n,i)=>{const g=[];return n.split(" ").forEach(h=>{g.push(i?h[0]:h)}),g.join(" ")},Uh=n=>typeof n!="string"?(console.error("The first param of pinyin is error: "+n+' is not assignable to type "string".'),!1):!0;function Vn(n,i){return i instanceof RegExp?i.test(n):!0}const Yh=(n,i)=>{let g=i.nonZh;if(g==="removed")return n.filter(u=>u.isZh||!Vn(u.origin,i.nonZhScope));if(g==="consecutive"){for(let u=n.length-2;u>=0;u--){const h=n[u],e=n[u+1];!h.isZh&&!e.isZh&&Vn(h.origin,i.nonZhScope)&&Vn(e.origin,i.nonZhScope)&&(h.origin+=e.origin,h.result+=e.result,e.delete=!0)}return n.filter(u=>!u.delete)}else return n},di=(n,i)=>O(n)===1&&i.multiple?Wh(n,i.surname):!1,Kh=(n,i)=>{switch(i.pattern){case"pinyin":break;case"num":n.forEach(g=>{g.result=g.isZh?Tn(g.result):""});break;case"initial":n.forEach(g=>{g.result=g.isZh?vn(g.result,i.initialPattern).initial:""});break;case"final":n.forEach(g=>{g.result=g.isZh?vn(g.result,i.initialPattern).final:""});break;case"first":n.forEach(g=>{g.result=Ti(g.result,g.isZh)});break;case"finalHead":n.forEach(g=>{g.result=g.isZh?wn(g.result).head:""});break;case"finalBody":n.forEach(g=>{g.result=g.isZh?wn(g.result).body:""});break;case"finalTail":n.forEach(g=>{g.result=g.isZh?wn(g.result).tail:""});break}},Xh=(n,i)=>{switch(i.toneType){case"symbol":break;case"none":n.forEach(g=>{g.isZh&&(g.result=kn(g.result))});break;case"num":{n.forEach(g=>{g.isZh&&(g.result=Hh(g.result,g.originPinyin))});break}}},Qh=(n,i)=>{i.v&&n.forEach(g=>{g.isZh&&(g.result=g.result.replace(/ü/g,typeof i.v=="string"?i.v:"v"))})},Gh=(n,i,g)=>{if(i.multiple&&O(g)===1){let u="";n=n.filter(h=>{const e=h.result!==u;return u=h.result,e})}return i.type==="array"?n.map(u=>u.result):i.type==="all"?n.map(u=>{const h=u.isZh?u.result:"",{initial:e,final:s}=vn(h,i.initialPattern),{head:o,body:d,tail:c}=wn(h);let z=[];return h!==""&&(z=[h].concat(ki(u.origin,i.surname).filter(t=>t!==h))),{origin:u.origin,pinyin:h,initial:e,final:s,first:Ti(u.result,u.isZh),finalHead:o,finalBody:d,finalTail:c,num:Number(Tn(u.originPinyin)),isZh:u.isZh,polyphonic:z,inZhRange:!!G.get(u.origin),result:u.result}}):n.map(u=>u.result).join(i.separator)},Jh=(n,i)=>(i===!1&&n.forEach(g=>{g.origin==="一"?g.result=g.originPinyin="yī":g.origin==="不"&&(g.result=g.originPinyin="bù")}),n),nu={pattern:"pinyin",toneType:"symbol",type:"string",multiple:!1,mode:"normal",removeNonZh:!1,nonZh:"spaced",v:!1,separator:" ",toneSandhi:!0,segmentit:2};function yu(n,i){if(i=Object.assign(Object.assign({},nu),i||{}),!Uh(n))return n;if(n==="")return i.type==="array"||i.type==="all"?[]:"";i.surname===void 0&&(i.mode==="surname"?i.surname="all":i.surname="off"),i.type==="all"&&(i.pattern="pinyin"),i.pattern==="num"&&(i.toneType="none"),i.removeNonZh&&(i.nonZh="removed");let u=Array(O(n)),{list:h}=Oh(n,u,i.surname,i.segmentit,i.traditional);return h=Jh(h,i.toneSandhi),h=Yh(h,i),di(n,i)&&(h=di(n,i)),Kh(h,i),Xh(h,i),Qh(h,i),Gh(h,i,n)}var Nn;(function(n){n[n.AllSegment=1]="AllSegment",n[n.AllArray=2]="AllArray",n[n.AllString=3]="AllString",n[n.PinyinSegment=4]="PinyinSegment",n[n.PinyinArray=5]="PinyinArray",n[n.PinyinString=6]="PinyinString",n[n.ZhSegment=7]="ZhSegment",n[n.ZhArray=8]="ZhArray",n[n.ZhString=9]="ZhString"})(Nn||(Nn={}));Nn.AllSegment;const iu=xi({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Xg({filterKeys:["title"]}),...Kg({hideNoData:!0,returnObject:!0}),...fi(Lg({modelValue:null,role:"combobox"}),["validationValue","dirty"])},"VCombobox"),du=ji()({name:"VCombobox",props:iu(),emits:{"update:focused":n=>!0,"update:modelValue":n=>!0,"update:search":n=>!0,"update:menu":n=>!0},setup(n,i){var Zn;let{emit:g,slots:u}=i;const{t:h}=pg(),e=gn(),s=Z(!1),o=Z(!0),d=Z(!1),c=gn(),z=gn(),t=Z(-1);let x=!1;const{items:w,transformIn:T,transformOut:V}=vg(n),{textColorClasses:J,textColorStyles:nn}=kg(()=>{var l;return(l=e.value)==null?void 0:l.color}),{InputIcon:K}=Bg(n),a=Mn(n,"modelValue",[],l=>T(Tg(l)),l=>{const y=V(l);return n.multiple?y:y[0]??null}),B=Fg(n),X=fn(()=>n.closableChips&&!B.isReadonly.value&&!B.isDisabled.value),m=P(()=>!!(n.chips||u.chip)),r=P(()=>m.value||!!u.selection),j=Z(!n.multiple&&!r.value?((Zn=a.value[0])==null?void 0:Zn.title)??"":""),f=Z(null),b=P({get:()=>j.value,set:async l=>{var y;if(j.value=l??"",l===null||l===""&&!n.multiple&&!r.value?a.value=[]:!n.multiple&&!r.value&&(a.value=[zn(n,l)],tn(()=>{var p;return(p=z.value)==null?void 0:p.scrollToIndex(0)})),l&&n.multiple&&((y=n.delimiters)!=null&&y.length)){const p=Rn(l);p.length>1&&(An(p),j.value="")}l||(t.value=-1),o.value=!l}}),D=P(()=>typeof n.counterValue=="function"?n.counterValue(a.value):typeof n.counterValue=="number"?n.counterValue:n.multiple?a.value.length:b.value.length),{filteredItems:W,getMatches:hn}=$g(n,w,()=>f.value??(n.alwaysFilter||!o.value?b.value:"")),A=P(()=>n.hideSelected&&f.value===null?W.value.filter(l=>!a.value.some(y=>y.value===l.value)):W.value),un=P(()=>n.hideNoData&&!A.value.length||B.isReadonly.value||B.isDisabled.value),en=Mn(n,"menu"),C=P({get:()=>en.value,set:l=>{var y;en.value&&!l&&((y=c.value)!=null&&y.ΨopenChildren.size)||l&&un.value||(en.value=l)}}),{menuId:rn,ariaExpanded:Sn,ariaControls:M}=Og(n,C);Y(j,l=>{x?tn(()=>x=!1):s.value&&!C.value&&(C.value=!0),g("update:search",l)}),Y(a,l=>{var y;!n.multiple&&!r.value&&(j.value=((y=l[0])==null?void 0:y.title)??"")});const jn=P(()=>a.value.map(l=>l.value)),Q=P(()=>A.value.find(l=>l.type==="item"&&!l.props.disabled)),sn=P(()=>{var y;return(n.autoSelectFirst===!0||n.autoSelectFirst==="exact"&&b.value===((y=Q.value)==null?void 0:y.title))&&A.value.length>0&&!o.value&&!d.value}),Pn=gn(),Si=Yg(Pn,e);function Pi(l){x=!0,tn(()=>x=!1),n.openOnClear&&(C.value=!0)}function Ci(){un.value||(C.value=!0)}function Di(l){un.value||(s.value&&(l.preventDefault(),l.stopPropagation()),C.value=!C.value)}function Ii(l){var y;(Un(l)||l.key==="Backspace")&&((y=e.value)==null||y.focus())}function Vi(l){var k,F,q,E;if(Ng(l)||B.isReadonly.value)return;const y=(k=e.value)==null?void 0:k.selectionStart,p=a.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(C.value=!0),["Escape"].includes(l.key)&&(C.value=!1),sn.value&&["Enter","Tab"].includes(l.key)&&Q.value&&!a.value.some(I=>{let{value:ln}=I;return ln===Q.value.value})&&H(Q.value),l.key==="ArrowDown"&&sn.value&&((F=Pn.value)==null||F.focus("next")),l.key==="Enter"&&b.value&&(H(zn(n,b.value),!0,!0),r.value&&(j.value="")),["Backspace","Delete"].includes(l.key)){if(!n.multiple&&r.value&&a.value.length>0&&!b.value)return H(a.value[0],!1);if(~t.value){l.preventDefault();const I=t.value;H(a.value[t.value],!1),t.value=I>=p-1?p-2:I}else l.key==="Backspace"&&!b.value&&(t.value=p-1);return}if(n.multiple)if(l.key==="ArrowLeft"){if(t.value<0&&y&&y>0)return;const I=t.value>-1?t.value-1:p-1;a.value[I]?t.value=I:(t.value=-1,(q=e.value)==null||q.setSelectionRange(b.value.length,b.value.length))}else if(l.key==="ArrowRight"){if(t.value<0)return;const I=t.value+1;a.value[I]?t.value=I:(t.value=-1,(E=e.value)==null||E.setSelectionRange(0,0))}else~t.value&&Un(l)&&(t.value=-1)}function Mi(l){var k;const y=((k=l==null?void 0:l.clipboardData)==null?void 0:k.getData("Text"))??"",p=Rn(y);p.length>1&&n.multiple&&(l.preventDefault(),An(p))}function Ei(){var l;n.eager&&((l=z.value)==null||l.calculateVisibleItems())}function _i(){var l;s.value&&((l=e.value)==null||l.focus()),o.value=!0,f.value=null}function H(l){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!l||l.props.disabled))if(n.multiple){const k=a.value.findIndex(q=>(n.valueComparator||Hn)(q.value,l.value)),F=y??!~k;if(~k){const q=F?[...a.value,l]:[...a.value];q.splice(k,1),a.value=q}else F&&(a.value=[...a.value,l]);n.clearOnSelect&&(b.value="")}else{const k=y!==!1;a.value=k?[l]:[],(!o.value||n.alwaysFilter)&&j.value&&(f.value=j.value),j.value=k&&!r.value?l.title:"",tn(()=>{C.value=p,o.value=!0})}}function Rn(l){const p=[` +import{Z as ai,ae as Y,$ as ri,az as Z,a3 as P,aJ as Bi,bx as Fi,by as xn,b3 as Li,ba as $i,bc as Oi,g as ji,b7 as Wi,bo as Hi,bz as Ui,aC as On,X as Yi,be as Ki,bA as Xi,ar as Mn,a as Qi,aH as Gi,bB as Ji,aw as tn,bC as ng,aI as ig,b as bi,i as N,c as v,am as gg,aW as mi,E as $,br as hg,F as an,a2 as gn,av as fn,bD as ug,bE as eg,bp as sg,bv as lg,p as xi,bj as og,m as tg,aA as fi,bF as cg,bk as zg,bG as yg,bq as dg,bH as ag,bw as rg,h as jg,bI as bg,_ as mg,bJ as xg,bK as Cn,o as cn,j as mn,w as L,v as yn,P as wi,C as fg,G as wg,Q as qn,a0 as Wn,A as Dn,a1 as qg,D as In,t as pn,aq as pg,aR as vg,aB as kg,as as Tg,bL as zn,aY as Hn,aS as Sg,aT as Pg,K as Cg,aU as Dg,L as Ig,aV as Vg,n as Mg,d as Eg,au as _g,aX as Un,bM as Ng,bN as Rg}from"./index-BXl8SUNP.js";import{V as Ag,a as Zg}from"./VAppBarTitle-hRIhv4pw.js";import{e as Bg,f as Fg,V as Yn,g as Lg}from"./VTextField-DxxbesnN.js";import{u as $g,a as Og,V as Wg,b as Hg,h as Ug,c as Yg,m as Kg,d as Xg}from"./filter-BHXElGQ1.js";import{V as Qg}from"./VCheckboxBtn-iC2wkMdx.js";import{V as Kn}from"./VChip-jIQL7s_d.js";const ou=["Teams Ping.mp3","Teams Remix.mp3","Teams bounce.mp3","Teams incoming-ringtone-level30.mp3","Teams incoming-ringtone-level40.mp3","Teams meetup_ring.mp3","Teams screenshare_ring.mp3","Teams teams_meet_up_reminder.mp3","Teams teams_notification.mp3","Teams 优先处理.mp3","Teams 共鸣.mp3","Teams 召唤.mp3","Teams 叮铃.mp3","Teams 增强.mp3","Teams 尤里卡.mp3","Teams 弹拨.mp3","Teams 提醒.mp3","Teams 摇摆.mp3","Teams 时空.mp3","Teams 气泡(大声).mp3","Teams 气泡.mp3","Teams 波普.mp3","Teams 波纹.mp3","Teams 滴水.mp3","Teams 点击.mp3","Teams 蜂鸣声.mp3","Teams 警报.mp3","Teams 赋予希望.mp3","Teams 轻弹.mp3","Teams 进阶.mp3","Teams 重复振铃.mp3","Teams 颤振.mp3","Teams 高分.mp3","Teams 默认.mp3","Teams 默认通话铃.mp3"];function Gg(n){return n?`/sounds/${n}`:null}function tu(n,i=!1){const g=Gg(n);if(!g)return console.warn("音频文件不存在:",n),null;try{const u=new Audio(g);u.loop=i;const h=u.play();return h!==void 0&&h.catch(e=>{console.warn("播放音频失败:",e.name,e.message)}),u}catch(u){return console.error("创建音频对象失败:",u),null}}function cu(n){n&&(n.pause(),n.currentTime=0)}function Jg(n){let{rootEl:i,isSticky:g,layoutItemStyles:u}=n;const h=Z(!1),e=Z(0),s=P(()=>{const c=typeof h.value=="boolean"?"top":h.value;return[g.value?{top:"auto",bottom:"auto",height:void 0}:void 0,h.value?{[c]:Bi(e.value)}:{top:u.value.top}]});ai(()=>{Y(g,c=>{c?window.addEventListener("scroll",d,{passive:!0}):window.removeEventListener("scroll",d)},{immediate:!0})}),ri(()=>{window.removeEventListener("scroll",d)});let o=0;function d(){const c=o>window.scrollY?"up":"down",z=i.value.getBoundingClientRect(),t=parseFloat(u.value.top??0),x=window.scrollY-Math.max(0,e.value-t),w=z.height+Math.max(e.value,t)-window.scrollY-window.innerHeight,T=parseFloat(getComputedStyle(i.value).getPropertyValue("--v-body-scroll-y"))||0;z.height0;g--){if(n[g].t===n[g-1].t)continue;const u=Xn(i),h=(n[g].d-n[g-1].d)/(n[g].t-n[g-1].t);i+=(h-u)*Math.abs(h),g===n.length-1&&(i*=.5)}return Xn(i)*1e3}function gh(){const n={};function i(h){Array.from(h.changedTouches).forEach(e=>{(n[e.identifier]??(n[e.identifier]=new Fi(ih))).push([h.timeStamp,e])})}function g(h){Array.from(h.changedTouches).forEach(e=>{delete n[e.identifier]})}function u(h){var c;const e=(c=n[h])==null?void 0:c.values().reverse();if(!e)throw new Error(`No samples for touch id ${h}`);const s=e[0],o=[],d=[];for(const z of e){if(s[0]-z[0]>nh)break;o.push({t:z[0],d:z[1].clientX}),d.push({t:z[0],d:z[1].clientY})}return{x:Qn(o),y:Qn(d),get direction(){const{x:z,y:t}=this,[x,w]=[Math.abs(z),Math.abs(t)];return x>w&&z>=0?"right":x>w&&z<=0?"left":w>x&&t>=0?"down":w>x&&t<=0?"up":hh()}}}return{addMovement:i,endTouch:g,getVelocity:u}}function hh(){throw new Error}function uh(n){let{el:i,isActive:g,isTemporary:u,width:h,touchless:e,position:s}=n;ai(()=>{window.addEventListener("touchstart",K,{passive:!0}),window.addEventListener("touchmove",a,{passive:!1}),window.addEventListener("touchend",B,{passive:!0})}),ri(()=>{window.removeEventListener("touchstart",K),window.removeEventListener("touchmove",a),window.removeEventListener("touchend",B)});const o=P(()=>["left","right"].includes(s.value)),{addMovement:d,endTouch:c,getVelocity:z}=gh();let t=!1;const x=Z(!1),w=Z(0),T=Z(0);let V;function J(m,r){return(s.value==="left"?m:s.value==="right"?document.documentElement.clientWidth-m:s.value==="top"?m:s.value==="bottom"?document.documentElement.clientHeight-m:on())-(r?h.value:0)}function nn(m){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;const j=s.value==="left"?(m-T.value)/h.value:s.value==="right"?(document.documentElement.clientWidth-m-T.value)/h.value:s.value==="top"?(m-T.value)/h.value:s.value==="bottom"?(document.documentElement.clientHeight-m-T.value)/h.value:on();return r?Oi(j):j}function K(m){if(e.value)return;const r=m.changedTouches[0].clientX,j=m.changedTouches[0].clientY,f=25,b=s.value==="left"?rdocument.documentElement.clientWidth-f:s.value==="top"?jdocument.documentElement.clientHeight-f:on(),D=g.value&&(s.value==="left"?rdocument.documentElement.clientWidth-h.value:s.value==="top"?jdocument.documentElement.clientHeight-h.value:on());(b||D||g.value&&u.value)&&(V=[r,j],T.value=J(o.value?r:j,g.value),w.value=nn(o.value?r:j),t=T.value>-20&&T.value<80,c(m),d(m))}function a(m){const r=m.changedTouches[0].clientX,j=m.changedTouches[0].clientY;if(t){if(!m.cancelable){t=!1;return}const b=Math.abs(r-V[0]),D=Math.abs(j-V[1]);(o.value?b>D&&b>3:D>b&&D>3)?(x.value=!0,t=!1):(o.value?D:b)>3&&(t=!1)}if(!x.value)return;m.preventDefault(),d(m);const f=nn(o.value?r:j,!1);w.value=Math.max(0,Math.min(1,f)),f>1?T.value=J(o.value?r:j,!0):f<0&&(T.value=J(o.value?r:j,!1))}function B(m){if(t=!1,!x.value)return;d(m),x.value=!1;const r=z(m.changedTouches[0].identifier),j=Math.abs(r.x),f=Math.abs(r.y);(o.value?j>f&&j>400:f>j&&f>3)?g.value=r.direction===({left:"right",right:"left",top:"down",bottom:"up"}[s.value]||on()):g.value=w.value>.5}const X=P(()=>x.value?{transform:s.value==="left"?`translateX(calc(-100% + ${w.value*h.value}px))`:s.value==="right"?`translateX(calc(100% - ${w.value*h.value}px))`:s.value==="top"?`translateY(calc(-100% + ${w.value*h.value}px))`:s.value==="bottom"?`translateY(calc(100% - ${w.value*h.value}px))`:on(),transition:"none"}:void 0);return xn(x,()=>{var j,f;const m=((j=i.value)==null?void 0:j.style.transform)??null,r=((f=i.value)==null?void 0:f.style.transition)??null;Li(()=>{var b,D,W,hn;(D=i.value)==null||D.style.setProperty("transform",((b=X.value)==null?void 0:b.transform)||"none"),(hn=i.value)==null||hn.style.setProperty("transition",((W=X.value)==null?void 0:W.transition)||null)}),$i(()=>{var b,D;(b=i.value)==null||b.style.setProperty("transform",m),(D=i.value)==null||D.style.setProperty("transition",r)})}),{isDragging:x,dragProgress:w,dragStyles:X}}function on(){throw new Error}const eh=["start","end","left","right","top","bottom"],sh=xi({color:String,disableResizeWatcher:Boolean,disableRouteWatcher:Boolean,expandOnHover:Boolean,floating:Boolean,modelValue:{type:Boolean,default:null},permanent:Boolean,rail:{type:Boolean,default:null},railWidth:{type:[Number,String],default:56},scrim:{type:[Boolean,String],default:!0},image:String,temporary:Boolean,persistent:Boolean,touchless:Boolean,width:{type:[Number,String],default:256},location:{type:String,default:"start",validator:n=>eh.includes(n)},sticky:Boolean,...bg(),...jg(),...rg(),...ag({mobile:null}),...dg(),...yg(),...zg(),...fi(cg(),["disableInitialFocus"]),...tg({tag:"nav"}),...og()},"VNavigationDrawer"),lh=ji()({name:"VNavigationDrawer",props:sh(),emits:{"update:modelValue":n=>!0,"update:rail":n=>!0},setup(n,i){let{attrs:g,emit:u,slots:h}=i;const{isRtl:e}=Wi(),{themeClasses:s}=Hi(n),{borderClasses:o}=Ui(n),{backgroundColorClasses:d,backgroundColorStyles:c}=On(()=>n.color),{elevationClasses:z}=sg(n),{displayClasses:t,mobile:x}=Yi(n),{roundedClasses:w}=Ki(n),T=Xi(),V=Mn(n,"modelValue",null,M=>!!M),{ssrBootStyles:J}=Qi(),{scopeId:nn}=Gi(),K=gn(),a=Z(!1),{runOpenDelay:B,runCloseDelay:X}=lg(n,M=>{a.value=M}),m=P(()=>n.rail&&n.expandOnHover&&a.value?Number(n.width):Number(n.rail?n.railWidth:n.width)),r=P(()=>eg(n.location,e.value)),j=fn(()=>n.persistent),f=P(()=>!n.permanent&&(x.value||n.temporary)),b=P(()=>n.sticky&&!f.value&&r.value!=="bottom");Ji(n,{isActive:V,localTop:f,contentEl:K}),xn(()=>n.expandOnHover&&n.rail!=null,()=>{Y(a,M=>u("update:rail",!M))}),xn(()=>!n.disableResizeWatcher,()=>{Y(f,M=>!n.permanent&&tn(()=>V.value=!M))}),xn(()=>!n.disableRouteWatcher&&!!T,()=>{Y(T.currentRoute,()=>f.value&&(V.value=!1))}),Y(()=>n.permanent,M=>{M&&(V.value=!0)}),n.modelValue==null&&!f.value&&(V.value=n.permanent||!x.value);const{isDragging:D,dragProgress:W}=uh({el:K,isActive:V,isTemporary:f,width:m,touchless:fn(()=>n.touchless),position:r}),hn=P(()=>{const M=f.value?0:n.rail&&n.expandOnHover?Number(n.railWidth):m.value;return D.value?M*W.value:M}),{layoutItemStyles:A,layoutItemScrimStyles:un}=ng({id:n.name,order:P(()=>parseInt(n.order,10)),position:r,layoutSize:hn,elementSize:m,active:ug(V),disableTransitions:fn(()=>D.value),absolute:P(()=>n.absolute||b.value&&typeof en.value!="string")}),{isStuck:en,stickyStyles:C}=Jg({rootEl:K,isSticky:b,layoutItemStyles:A}),rn=On(()=>typeof n.scrim=="string"?n.scrim:null),Sn=P(()=>({...D.value?{opacity:W.value*.2,transition:"none"}:void 0,...un.value}));return ig({VList:{bgColor:"transparent"}}),bi(()=>{const M=h.image||n.image;return N(an,null,[v(n.tag,$({ref:K,onMouseenter:B,onMouseleave:X,class:["v-navigation-drawer",`v-navigation-drawer--${r.value}`,{"v-navigation-drawer--expand-on-hover":n.expandOnHover,"v-navigation-drawer--floating":n.floating,"v-navigation-drawer--is-hovering":a.value,"v-navigation-drawer--rail":n.rail,"v-navigation-drawer--temporary":f.value,"v-navigation-drawer--persistent":j.value,"v-navigation-drawer--active":V.value,"v-navigation-drawer--sticky":b.value},s.value,d.value,o.value,t.value,z.value,w.value,n.class],style:[c.value,A.value,J.value,C.value,n.style],inert:!V.value},nn,g),{default:()=>{var jn,Q,sn;return[M&&N("div",{key:"image",class:"v-navigation-drawer__img"},[h.image?v(mi,{key:"image-defaults",disabled:!n.image,defaults:{VImg:{alt:"",cover:!0,height:"inherit",src:n.image}}},h.image):v(gg,{key:"image-img",alt:"",cover:!0,height:"inherit",src:n.image},null)]),h.prepend&&N("div",{class:"v-navigation-drawer__prepend"},[(jn=h.prepend)==null?void 0:jn.call(h)]),N("div",{class:"v-navigation-drawer__content"},[(Q=h.default)==null?void 0:Q.call(h)]),h.append&&N("div",{class:"v-navigation-drawer__append"},[(sn=h.append)==null?void 0:sn.call(h)])]}}),v(hg,{name:"fade-transition"},{default:()=>[f.value&&(D.value||V.value)&&!!n.scrim&&N("div",$({class:["v-navigation-drawer__scrim",rn.backgroundColorClasses.value],style:[Sn.value,rn.backgroundColorStyles.value],onClick:()=>{j.value||(V.value=!1)}},nn),null)]})])}),{isStuck:en}}}),oh=xg({name:"MessageLog",setup(){const n=gn(!1),i=gn([]),g={success:"mdi-check-circle",error:"mdi-alert-circle",warning:"mdi-alert",info:"mdi-information"},u={success:"success",error:"error",warning:"warning",info:"primary"};return Cn.onLog(h=>{h&&(i.value=h)}),{drawer:n,messages:i,icons:g,colors:u,deleteMessage:h=>Cn.deleteMessage(h),clearMessages:()=>Cn.clearMessages()}}}),th={class:"text-caption text-grey"};function ch(n,i,g,u,h,e){return n.drawer?(cn(),mn(lh,{key:0,modelValue:n.drawer,"onUpdate:modelValue":i[0]||(i[0]=s=>n.drawer=s),location:"right",temporary:"",width:"400"},{default:L(()=>[v(Ag,{color:"primary"},{default:L(()=>[v(Zg,null,{default:L(()=>[...i[1]||(i[1]=[yn("消息记录",-1)])]),_:1})]),_:1}),v(wi,null,{default:L(()=>[(cn(!0),fg(an,null,wg(n.messages,s=>(cn(),mn(qn,{key:s.id,rounded:""},{prepend:L(()=>[v(pn,{color:n.colors[s.type],icon:n.icons[s.type],size:"20"},null,8,["color","icon"])]),default:L(()=>[v(Wn,null,{default:L(()=>[yn(Dn(s.title),1)]),_:2},1024),s.content?(cn(),mn(qg,{key:0},{default:L(()=>[yn(Dn(s.content),1)]),_:2},1024)):In("",!0),N("span",th,Dn(new Date(s.timestamp).toLocaleTimeString()),1)]),_:2},1024))),128)),n.messages.length?In("",!0):(cn(),mn(qn,{key:0},{prepend:L(()=>[v(pn,{color:"grey",icon:"mdi-inbox"})]),default:L(()=>[v(Wn,{class:"text-grey"},{default:L(()=>[...i[2]||(i[2]=[yn("暂无消息",-1)])]),_:1})]),_:1}))]),_:1})]),_:1},8,["modelValue"])):In("",!0)}const zu=mg(oh,[["render",ch]]),zh=/^[\uD800-\uDBFF]$/,yh=/^[\uDC00-\uDFFF]$/,dh=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g;var Gn;(function(n){n[n.Unknown=1e-13]="Unknown",n[n.Rule=1e-12]="Rule",n[n.DICT=2e-8]="DICT",n[n.Surname=1]="Surname",n[n.Custom=1]="Custom"})(Gn||(Gn={}));const R={Normal:1,Surname:10,Custom:100};function O(n){var i;return n.length-(((i=n.match(dh))===null||i===void 0?void 0:i.length)||0)}function En(n){const i=[];let g=0;for(;g1)return this.StringDICT.get(i);{const g=i.charCodeAt(0);return this.NumberDICT[g]}}set(i,g){if(i.length>1)this.StringDICT.set(i,g);else{const u=i.charCodeAt(0);this.NumberDICT[u]=g}}clear(){this.NumberDICT=[],this.StringDICT.clear()}}const Jn={"bǎng páng pāng":["膀"],líng:["〇","伶","凌","刢","囹","坽","夌","姈","婈","孁","岺","彾","掕","昤","朎","柃","棂","櫺","欞","泠","淩","澪","灵","燯","爧","狑","玲","琌","瓴","皊","砱","祾","秢","竛","笭","紷","綾","绫","羐","羚","翎","聆","舲","苓","菱","蓤","蔆","蕶","蛉","衑","裬","詅","跉","軨","輘","酃","醽","鈴","錂","铃","閝","陵","零","霊","霗","霛","霝","靈","駖","魿","鯪","鲮","鴒","鸰","鹷","麢","齡","齢","龄","龗","㥄"],yī:["一","乊","伊","依","医","吚","咿","噫","壱","壹","夁","嫛","嬄","弌","揖","撎","檹","毉","洢","渏","漪","瑿","畩","祎","禕","稦","繄","蛜","衤","譩","辷","郼","醫","銥","铱","鷖","鹥","黟","黳"],"dīng zhēng":["丁"],"kǎo qiǎo yú":["丂"],qī:["七","倛","僛","凄","嘁","墄","娸","悽","慼","慽","戚","捿","柒","桤","桼","棲","榿","欺","沏","淒","漆","紪","緀","萋","褄","諆","迉","郪","鏚","霋","魌","鶈"],shàng:["丄","尙","尚","恦","緔","绱"],xià:["丅","下","乤","圷","夏","夓","懗","梺","疜","睱","罅","鎼","鏬"],hǎn:["丆","喊","浫","罕","豃","㘎"],"wàn mò":["万"],zhàng:["丈","仗","墇","嶂","帐","帳","幛","扙","杖","涱","痮","瘬","瘴","瞕","粀","胀","脹","賬","账","障"],sān:["三","厁","叁","弎","毵","毶","毿","犙","鬖"],"shàng shǎng shang":["上"],"qí jī":["丌","其","奇"],"bù fǒu":["不"],"yǔ yù yú":["与"],miǎn:["丏","偭","免","冕","勉","勔","喕","娩","愐","汅","沔","湎","睌","緬","缅","腼","葂","靦","鮸","𩾃"],gài:["丐","乢","匃","匄","戤","概","槩","槪","溉","漑","瓂","葢","鈣","钙","𬮿"],chǒu:["丑","丒","侴","吜","杽","瞅","矁","醜","魗"],zhuān:["专","叀","嫥","専","專","瑼","甎","砖","磗","磚","蟤","諯","鄟","顓","颛","鱄","䏝"],"qiě jū":["且"],pī:["丕","伓","伾","噼","坯","岯","憵","批","披","炋","狉","狓","砒","磇","礔","礕","秛","秠","耚","豾","邳","鈚","鉟","銔","錃","錍","霹","駓","髬","魾","𬳵"],shì:["世","丗","亊","事","仕","侍","冟","势","勢","卋","呩","嗜","噬","士","奭","嬕","室","市","式","弑","弒","恀","恃","戺","拭","揓","是","昰","枾","柿","栻","澨","烒","煶","眂","眎","眡","睗","示","礻","筮","簭","舐","舓","襫","視","视","觢","試","誓","諡","謚","试","谥","貰","贳","軾","轼","逝","遾","釈","释","釋","鈰","鉃","鉽","铈","飾","餙","餝","饰","鰘","䏡","𬤊"],qiū:["丘","丠","坵","媝","恘","恷","楸","秋","秌","穐","篍","緧","萩","蘒","蚯","蝵","蟗","蠤","趥","邱","鞦","鞧","鰌","鰍","鳅","鶖","鹙","龝"],bǐng:["丙","屛","怲","抦","昞","昺","柄","棅","炳","禀","秉","稟","苪","蛃","邴","鈵","陃","鞆","餅","餠","饼"],yè:["业","亱","僷","墷","夜","嶪","嶫","抴","捙","擛","擪","擫","晔","曄","曅","曗","曳","曵","枼","枽","業","洂","液","澲","烨","燁","爗","璍","皣","瞱","瞸","礏","腋","葉","謁","谒","邺","鄴","鍱","鐷","靥","靨","頁","页","餣","饁","馌","驜","鵺","鸈"],cóng:["丛","从","叢","婃","孮","従","徔","徖","悰","樷","欉","淙","灇","爜","琮","藂","誴","賨","賩","錝"],dōng:["东","倲","冬","咚","埬","岽","崬","徚","昸","東","氡","氭","涷","笗","苳","菄","蝀","鮗","鯟","鶇","鶫","鸫","鼕","𬟽"],sī:["丝","俬","凘","厮","司","咝","嘶","噝","媤","廝","恖","撕","斯","楒","泀","澌","燍","禗","禠","私","糹","絲","緦","纟","缌","罳","蕬","虒","蛳","蜤","螄","蟖","蟴","鉰","銯","鍶","鐁","锶","颸","飔","騦","鷥","鸶","鼶","㟃"],chéng:["丞","呈","城","埕","堘","塍","塖","宬","峸","惩","懲","成","承","挰","掁","揨","枨","棖","橙","檙","洆","溗","澂","珵","珹","畻","程","窚","筬","絾","脭","荿","誠","诚","郕","酲","鋮","铖","騬","鯎"],diū:["丟","丢","銩","铥"],liǎng:["両","两","兩","唡","啢","掚","緉","脼","蜽","裲","魉","魎","𬜯"],yǒu:["丣","卣","友","梄","湵","牖","禉","羑","聈","苃","莠","蜏","酉","銪","铕","黝"],yán:["严","厳","啱","喦","嚴","塩","壛","壧","妍","姸","娫","娮","岩","嵒","嵓","巌","巖","巗","延","揅","昖","楌","檐","櫩","欕","沿","炎","炏","狿","琂","盐","碞","筵","簷","莚","蔅","虤","蜒","言","訁","訮","詽","讠","郔","閆","閻","闫","阎","顏","顔","颜","鹽","麣","𫄧"],bìng:["並","併","倂","傡","垪","摒","栤","病","窉","竝","誁","靐","鮩"],"sàng sāng":["丧"],gǔn:["丨","惃","滚","滾","磙","緄","绲","蓘","蔉","衮","袞","輥","辊","鮌","鯀","鲧"],jiū:["丩","勼","啾","揪","揫","朻","究","糾","纠","萛","赳","阄","鬏","鬮","鳩","鸠"],"gè gě":["个","個","各"],yā:["丫","圧","孲","庘","押","枒","桠","椏","錏","鐚","鴉","鴨","鵶","鸦","鸭"],pán:["丬","媻","幋","槃","洀","瀊","爿","盘","盤","磐","縏","蒰","蟠","蹒","蹣","鎜","鞶"],"zhōng zhòng":["中"],jǐ:["丮","妀","己","戟","挤","掎","撠","擠","橶","泲","犱","脊","虮","蟣","魢","鱾","麂"],jiè:["丯","介","借","唶","堺","屆","届","岕","庎","徣","戒","楐","犗","玠","琾","界","畍","疥","砎","蚧","蛶","衸","褯","誡","诫","鎅","骱","魪"],fēng:["丰","仹","偑","僼","凨","凬","凮","妦","寷","封","峯","峰","崶","枫","楓","檒","沣","沨","渢","灃","烽","犎","猦","琒","疯","瘋","盽","砜","碸","篈","蘴","蜂","蠭","豐","鄷","酆","鋒","鎽","鏠","锋","霻","靊","飌","麷"],"guàn kuàng":["丱"],chuàn:["串","汌","玔","賗","釧","钏"],chǎn:["丳","产","冁","剷","囅","嵼","旵","浐","滻","灛","產","産","簅","蒇","蕆","諂","譂","讇","谄","鏟","铲","閳","闡","阐","骣","𬊤"],lín:["临","冧","壣","崊","嶙","斴","晽","暽","林","潾","瀶","燐","琳","璘","瞵","碄","磷","粦","粼","繗","翷","臨","轔","辚","遴","邻","鄰","鏻","阾","隣","霖","驎","鱗","鳞","麐","麟","𬴊","𬭸"],zhuó:["丵","劅","卓","啄","圴","妰","娺","撯","擆","擢","斫","斮","斱","斲","斵","晫","椓","浊","浞","濁","灼","烵","琸","硺","禚","窡","籗","籱","罬","茁","蠗","蠿","諁","諑","謶","诼","酌","鐲","镯","鵫","鷟","䓬","𬸦"],zhǔ:["丶","主","劯","嘱","囑","宔","帾","拄","渚","濐","煑","煮","燝","瞩","矚","罜","詝","陼","鸀","麈","𬣞"],bā:["丷","仈","八","叭","哵","夿","岜","巴","捌","朳","玐","疤","笆","粑","羓","芭","蚆","豝","釟"],wán:["丸","刓","完","岏","抏","捖","汍","烷","玩","琓","笂","紈","纨","翫","芄","貦","頑","顽"],dān:["丹","勯","匰","単","妉","媅","殚","殫","甔","眈","砃","箪","簞","耼","耽","聃","聸","褝","襌","躭","郸","鄲","酖","頕"],"wèi wéi":["为"],"jǐng dǎn":["丼"],"lì lí":["丽"],jǔ:["举","弆","挙","擧","椇","榉","榘","櫸","欅","矩","筥","聥","舉","莒","蒟","襷","踽","齟","龃"],piě:["丿","苤","鐅","𬭯"],fú:["乀","伏","俘","凫","刜","匐","咈","哹","垘","孚","岪","巿","帗","幅","幞","弗","彿","怫","扶","柫","栿","桴","氟","泭","浮","涪","澓","炥","玸","甶","畉","癁","祓","福","稪","符","箙","紱","紼","絥","綍","绂","绋","罘","罦","翇","艀","芙","芣","苻","茀","茯","菔","葍","虙","蚨","蜉","蝠","袚","袱","襆","襥","諨","豧","踾","輻","辐","郛","鉘","鉜","韍","韨","颫","髴","鮄","鮲","鳧","鳬","鴔","鵩","黻"],"yí jí":["乁"],yì:["乂","义","亄","亦","亿","伇","伿","佾","俋","億","兿","刈","劓","劮","勚","勩","匇","呓","呭","呹","唈","囈","圛","坄","垼","埸","奕","嫕","嬑","寱","屹","峄","嶧","帟","帠","幆","廙","异","弈","弋","役","忆","怈","怿","悒","意","憶","懌","懿","抑","挹","敡","易","晹","曀","曎","杙","枍","棭","榏","槸","檍","歝","殔","殪","殹","毅","浂","浥","浳","湙","溢","潩","澺","瀷","炈","焲","熠","熤","熼","燚","燡","燱","獈","玴","異","疫","痬","瘗","瘞","瘱","癔","益","瞖","穓","竩","篒","縊","繶","繹","绎","缢","義","羿","翊","翌","翳","翼","耴","肄","肊","膉","臆","艗","艺","芅","苅","萟","蓺","薏","藙","藝","蘙","虉","蜴","螠","衪","袣","裔","裛","褹","襼","訲","訳","詍","詣","誼","譯","議","讛","议","译","诣","谊","豙","豛","豷","貖","贀","跇","轶","逸","邑","鄓","醷","釴","鈠","鎰","鐿","镒","镱","阣","隿","霬","饐","駅","驛","驿","骮","鮨","鶂","鶃","鶍","鷁","鷊","鷧","鷾","鸃","鹝","鹢","黓","齸","𬬩","㑊","𫄷","𬟁"],nǎi:["乃","倷","奶","嬭","廼","氖","疓","艿","迺","釢"],wǔ:["乄","五","仵","伍","侮","倵","儛","午","啎","妩","娬","嫵","庑","廡","忤","怃","憮","摀","武","潕","熓","牾","玝","珷","瑦","甒","碔","舞","躌","迕","逜","陚","鵡","鹉","𣲘"],jiǔ:["久","乆","九","乣","奺","杦","汣","灸","玖","紤","舏","酒","镹","韭","韮"],"tuō zhé":["乇","杔","馲"],"me mó ma yāo":["么"],zhī:["之","倁","卮","巵","搘","支","栀","梔","椥","榰","汁","泜","疷","祗","祬","秓","稙","綕","肢","胑","胝","脂","芝","蘵","蜘","衼","隻","鳷","鴲","鼅","𦭜"],"wū wù":["乌"],zhà:["乍","咤","宱","搾","榨","溠","痄","蚱","詐","诈","醡","霅","䃎"],hū:["乎","乯","匢","匫","呼","唿","嘑","垀","寣","幠","忽","惚","昒","歑","泘","淴","滹","烀","苸","虍","虖","謼","軤","轷","雐"],fá:["乏","伐","傠","坺","垡","墢","姂","栰","浌","瞂","笩","筏","罚","罰","罸","藅","閥","阀"],"lè yuè yào lào":["乐","樂"],yín:["乑","吟","噖","嚚","圁","垠","夤","婬","寅","峾","崟","崯","檭","殥","泿","淫","滛","烎","犾","狺","璌","硍","碒","荶","蔩","訔","訚","訡","誾","鄞","鈝","銀","银","霪","鷣","齦"],pīng:["乒","俜","娉","涄","甹","砯","聠","艵","頩"],pāng:["乓","滂","胮","膖","雱","霶"],qiáo:["乔","侨","僑","嫶","憔","桥","槗","樵","橋","櫵","犞","瞧","硚","礄","荍","荞","蕎","藮","譙","趫","鐈","鞒","鞽","顦"],hǔ:["乕","琥","萀","虎","虝","錿","鯱"],guāi:["乖"],"chéng shèng":["乗","乘","娍"],yǐ:["乙","乛","以","倚","偯","嬟","崺","已","庡","扆","攺","敼","旑","旖","檥","矣","礒","笖","舣","艤","苡","苢","蚁","螘","蟻","裿","踦","輢","轙","逘","酏","釔","鈘","鉯","钇","顗","鳦","齮","𫖮","𬺈"],"háo yǐ":["乚"],"niè miē":["乜"],qǐ:["乞","企","启","唘","啓","啔","啟","婍","屺","杞","棨","玘","盀","綺","绮","芑","諬","起","邔","闙"],yě:["也","冶","嘢","埜","壄","漜","野"],xí:["习","喺","媳","嶍","席","椺","檄","漝","習","蓆","袭","襲","覡","觋","謵","趘","郋","鎴","隰","霫","飁","騱","騽","驨","鰼","鳛","𠅤","𫘬"],xiāng:["乡","厢","廂","忀","楿","欀","湘","瓖","稥","箱","緗","缃","膷","芗","萫","葙","薌","襄","郷","鄉","鄊","鄕","鑲","镶","香","驤","骧","鱜","麘","𬙋"],shū:["书","倏","倐","儵","叔","姝","尗","抒","掓","摅","攄","書","枢","梳","樞","殊","殳","毹","毺","淑","瀭","焂","疎","疏","紓","綀","纾","舒","菽","蔬","踈","軗","輸","输","鄃","陎","鮛","鵨"],dǒu:["乧","抖","枓","蚪","鈄","阧","陡"],shǐ:["乨","使","兘","史","始","宩","屎","榁","矢","笶","豕","鉂","駛","驶"],jī:["乩","僟","击","刉","刏","剞","叽","唧","喞","嗘","嘰","圾","基","墼","姬","屐","嵆","嵇","撃","擊","朞","机","枅","樭","機","毄","激","犄","玑","璣","畸","畿","癪","矶","磯","积","積","笄","筓","箕","簊","緁","羁","羇","羈","耭","肌","芨","虀","覉","覊","譏","譤","讥","賫","賷","赍","跻","踑","躋","躸","銈","錤","鐖","鑇","鑙","隮","雞","鞿","韲","飢","饑","饥","魕","鳮","鶏","鶺","鷄","鸄","鸡","齎","齏","齑","𬯀","𫓯","𫓹","𫌀"],náng:["乪","嚢","欜","蠰","饢"],jiā:["乫","佳","傢","加","嘉","抸","枷","梜","毠","泇","浃","浹","犌","猳","珈","痂","笳","糘","耞","腵","葭","袈","豭","貑","跏","迦","鉫","鎵","镓","鴐","麚","𬂩"],jù:["乬","倨","倶","具","剧","劇","勮","埧","埾","壉","姖","屦","屨","岠","巨","巪","怇","惧","愳","懅","懼","拒","拠","昛","歫","洰","澽","炬","烥","犋","秬","窭","窶","簴","粔","耟","聚","虡","蚷","詎","讵","豦","距","踞","躆","遽","邭","醵","鉅","鐻","钜","颶","飓","駏","鮔"],shí:["乭","十","埘","塒","姼","实","実","寔","實","峕","嵵","时","旹","時","榯","湜","溡","炻","祏","竍","蚀","蝕","辻","遈","鉐","飠","饣","鮖","鰣","鲥","鼫","鼭"],mǎo:["乮","冇","卯","峁","戼","昴","泖","笷","蓩","鉚","铆"],mǎi:["买","嘪","荬","蕒","買","鷶"],luàn:["乱","亂","釠"],rǔ:["乳","擩","汝","肗","辱","鄏"],xué:["乴","学","學","峃","嶨","斈","泶","澩","燢","穴","茓","袕","踅","鷽","鸴"],yǎn:["䶮","乵","俨","偃","儼","兖","兗","厣","厴","噞","孍","嵃","巘","巚","弇","愝","戭","扊","抁","掩","揜","曮","椼","檿","沇","渷","演","琰","甗","眼","罨","萒","蝘","衍","褗","躽","遃","郾","隒","顩","魇","魘","鰋","鶠","黡","黤","黬","黭","黶","鼴","鼹","齴","龑","𬸘","𬙂","𪩘"],fǔ:["乶","俌","俛","俯","府","弣","抚","拊","撫","斧","椨","滏","焤","甫","盙","簠","腐","腑","蜅","輔","辅","郙","釜","釡","阝","頫","鬴","黼","㕮","𫖯"],shā:["乷","唦","杀","桬","殺","毮","猀","痧","砂","硰","紗","繺","纱","蔱","裟","鎩","铩","閷","髿","魦","鯊","鯋","鲨"],nǎ:["乸","雫"],qián:["乹","亁","仱","偂","前","墘","媊","岒","拑","掮","榩","橬","歬","潛","潜","濳","灊","箝","葥","虔","軡","鈐","鉗","銭","錢","鎆","钤","钱","钳","靬","騚","騝","鰬","黔","黚"],suǒ:["乺","唢","嗩","所","暛","溑","溹","琐","琑","瑣","索","褨","鎖","鎻","鏁","锁"],yú:["乻","于","亐","伃","余","堣","堬","妤","娛","娯","娱","嬩","崳","嵎","嵛","愚","扵","揄","旟","楡","楰","榆","欤","歈","歟","歶","渔","渝","湡","漁","澞","牏","狳","玗","玙","瑜","璵","盂","睮","窬","竽","籅","羭","腴","臾","舁","舆","艅","茰","萮","萸","蕍","蘛","虞","虶","蝓","螸","衧","褕","覦","觎","諛","謣","谀","踰","輿","轝","逾","邘","酑","鍝","隅","雓","雩","餘","馀","騟","骬","髃","魚","魣","鮽","鯲","鰅","鱼","鷠","鸆","齵"],zhù:["乼","伫","佇","住","坾","墸","壴","嵀","拀","杼","柱","樦","殶","注","炷","疰","眝","祝","祩","竚","筯","箸","篫","簗","紵","紸","纻","羜","翥","苎","莇","蛀","註","貯","贮","跓","軴","鉒","鋳","鑄","铸","馵","駐","驻"],zhě:["乽","者","褶","襵","赭","踷","鍺","锗"],"qián gān":["乾"],"zhì luàn":["乿"],guī:["亀","圭","妫","媯","嫢","嬀","帰","归","摫","椝","槻","槼","櫷","歸","珪","瑰","璝","瓌","皈","瞡","硅","茥","蘬","規","规","邽","郌","閨","闺","騩","鬶","鬹"],"lǐn lìn":["亃"],jué:["亅","决","刔","劂","匷","厥","噊","孒","孓","崛","崫","嶥","彏","憠","憰","戄","抉","挗","掘","攫","桷","橛","橜","欮","氒","決","灍","焳","熦","爑","爴","爵","獗","玃","玦","玨","珏","瑴","瘚","矍","矡","砄","絕","絶","绝","臄","芵","蕝","蕨","虳","蟨","蟩","觖","觮","觼","訣","譎","诀","谲","貜","赽","趉","蹷","躩","鈌","鐍","鐝","钁","镢","鴂","鴃","鷢","𫘝","㵐","𫔎"],"le liǎo":["了"],"gè mā":["亇"],"yǔ yú":["予","懙"],zhēng:["争","佂","凧","姃","媜","峥","崝","崢","征","徰","炡","烝","爭","狰","猙","癥","眐","睁","睜","筝","箏","篜","聇","脀","蒸","踭","鉦","錚","鏳","鬇"],èr:["二","刵","咡","弍","弐","樲","誀","貮","貳","贰","髶"],chù:["亍","傗","儊","怵","憷","搐","斶","歜","珿","琡","矗","竌","絀","绌","臅","触","觸","豖","鄐","閦","黜"],kuī:["亏","刲","岿","巋","盔","窥","窺","聧","虧","闚","顝"],yún:["云","伝","勻","匀","囩","妘","愪","抣","昀","橒","沄","涢","溳","澐","熉","畇","秐","筼","篔","紜","縜","纭","耘","芸","蒷","蕓","郧","鄖","鋆","雲"],hù:["互","冱","嗀","嚛","婟","嫭","嫮","岵","帍","弖","怙","戶","户","戸","戽","扈","护","昈","槴","沍","沪","滬","熩","瓠","祜","笏","簄","粐","綔","蔰","護","豰","鄠","鍙","頀","鱯","鳠","鳸","鸌","鹱"],qí:["亓","剘","埼","岐","岓","崎","嵜","愭","掑","斉","斊","旂","旗","棊","棋","檱","櫀","歧","淇","濝","猉","玂","琦","琪","璂","畦","疧","碁","碕","祁","祈","祺","禥","竒","簯","簱","籏","粸","綥","綦","肵","脐","臍","艩","芪","萁","萕","蕲","藄","蘄","蚑","蚚","蛴","蜝","蜞","螧","蠐","褀","軝","鄿","釮","錡","锜","陭","頎","颀","騎","騏","騹","骐","骑","鬐","鬿","鯕","鰭","鲯","鳍","鵸","鶀","麒","麡","𨙸","𬨂","䓫"],jǐng:["井","儆","刭","剄","坓","宑","幜","憬","暻","殌","汫","汬","澋","璄","璟","璥","穽","肼","蟼","警","阱","頚","頸"],sì:["亖","佀","価","儩","兕","嗣","四","姒","娰","孠","寺","巳","柶","榹","汜","泗","泤","洍","洠","涘","瀃","牭","祀","禩","竢","笥","耜","肂","肆","蕼","覗","貄","釲","鈶","鈻","飤","飼","饲","駟","騃","驷"],suì:["亗","嬘","岁","嵗","旞","檖","歲","歳","澻","煫","燧","璲","砕","碎","祟","禭","穂","穗","穟","繀","繐","繸","襚","誶","譢","谇","賥","邃","鐆","鐩","隧","韢","𫟦","𬭼"],gèn:["亘","亙","揯","搄","茛"],yà:["亚","亜","俹","冴","劜","圔","圠","埡","娅","婭","揠","氩","氬","犽","砑","稏","聐","襾","覀","訝","讶","迓","齾"],"xiē suò":["些"],"qí zhāi":["亝","齊"],"yā yà":["亞","压","垭","壓","铔"],"jí qì":["亟","焏"],tóu:["亠","投","頭","骰"],"wáng wú":["亡"],"kàng háng gāng":["亢"],dà:["亣","眔"],jiāo:["交","僬","娇","嬌","峧","嶕","嶣","憍","椒","浇","澆","焦","礁","穚","簥","胶","膠","膲","茭","茮","蕉","虠","蛟","蟭","跤","轇","郊","鐎","驕","骄","鮫","鲛","鵁","鷦","鷮","鹪","䴔"],hài:["亥","嗐","害","氦","餀","饚","駭","駴","骇"],"hēng pēng":["亨"],mǔ:["亩","姆","峔","拇","母","牡","牳","畂","畆","畒","畝","畞","畮","砪","胟","踇","鉧","𬭁","𧿹"],ye:["亪"],xiǎng:["享","亯","响","想","晑","蚃","蠁","響","飨","餉","饗","饷","鮝","鯗","鱶","鲞"],jīng:["京","亰","兢","坕","坙","婛","惊","旌","旍","晶","橸","泾","涇","猄","睛","秔","稉","粳","精","経","經","綡","聙","腈","茎","荆","荊","菁","葏","驚","鯨","鲸","鶁","鶄","麖","麠","鼱","䴖"],tíng:["亭","停","婷","嵉","庭","廷","楟","榳","筳","聤","莛","葶","蜓","蝏","諪","邒","霆","鼮","䗴"],liàng:["亮","喨","悢","晾","湸","諒","谅","輌","輛","辆","鍄"],"qīn qìng":["亲","親"],bó:["亳","仢","侼","僰","博","帛","愽","懪","挬","搏","欂","浡","淿","渤","煿","牔","狛","瓝","礴","秡","箔","簙","糪","胉","脖","膊","舶","艊","萡","葧","袯","襏","襮","謈","踣","郣","鈸","鉑","鋍","鎛","鑮","钹","铂","镈","餺","馎","馛","馞","駁","駮","驳","髆","鵓","鹁"],yòu:["亴","佑","佦","侑","又","右","哊","唀","囿","姷","宥","峟","幼","狖","祐","蚴","誘","诱","貁","迶","酭","釉","鼬"],xiè:["亵","伳","偞","偰","僁","卨","卸","噧","塮","夑","媟","屑","屧","廨","徢","懈","暬","械","榍","榭","泻","洩","渫","澥","瀉","瀣","灺","炧","炨","燮","爕","獬","祄","禼","糏","紲","絏","絬","繲","纈","绁","缷","薢","薤","蟹","蠏","褉","褻","謝","谢","躞","邂","靾","韰","齂","齘","齛","齥","𬹼","𤫉"],"dǎn dàn":["亶","馾"],lián:["亷","劆","匲","匳","嗹","噒","奁","奩","嫾","帘","廉","怜","憐","涟","漣","濂","濓","瀮","熑","燫","簾","籢","籨","縺","翴","联","聨","聫","聮","聯","臁","莲","蓮","薕","螊","蠊","裢","褳","覝","謰","蹥","连","連","鎌","鐮","镰","鬑","鰱","鲢"],duǒ:["亸","哚","嚲","埵","崜","朵","朶","綞","缍","趓","躱","躲","軃"],"wěi mén":["亹","斖"],rén:["人","亻","仁","壬","忈","忎","朲","秂","芢","魜","鵀"],jí:["亼","亽","伋","佶","偮","卙","即","卽","及","叝","吉","堲","塉","姞","嫉","岌","嵴","嶯","彶","忣","急","愱","戢","揤","极","棘","楫","極","槉","檝","殛","汲","湒","潗","疾","瘠","皍","笈","箿","籍","級","级","膌","艥","蒺","蕀","蕺","蝍","螏","襋","觙","谻","踖","蹐","躤","輯","轚","辑","郆","銡","鍓","鏶","集","雧","霵","鹡","㴔"],wáng:["亾","仼","兦","莣","蚟"],"shén shí":["什"],lè:["仂","叻","忇","氻","泐","玏","砳","簕","艻","阞","韷","餎","鰳","鱳","鳓"],dīng:["仃","叮","帄","玎","疔","盯","耵","虰","靪"],zè:["仄","崱","庂","捑","昃","昗","汄"],"jǐn jìn":["仅","僅","嫤"],"pú pū":["仆"],"chóu qiú":["仇"],zhǎng:["仉","幥","掌","礃"],jīn:["今","堻","巾","惍","斤","津","珒","琻","璡","砛","筋","荕","衿","襟","觔","金","釒","釿","钅","鹶","黅","𬬱"],bīng:["仌","仒","兵","冫","冰","掤","氷","鋲"],réng:["仍","礽","芿","辸","陾"],fó:["仏","坲","梻"],"jīn sǎn":["仐"],lún:["仑","伦","侖","倫","囵","圇","婨","崘","崙","棆","沦","淪","磮","腀","菕","蜦","踚","輪","轮","錀","陯","鯩","𬬭"],cāng:["仓","仺","倉","凔","嵢","沧","滄","濸","獊","舱","艙","苍","蒼","螥","鸧"],"zǎi zǐ zī":["仔"],tā:["他","塌","它","榙","溻","牠","祂","褟","趿","遢","闧"],fù:["付","偩","傅","冨","副","咐","坿","复","妇","婦","媍","嬔","富","復","椱","祔","禣","竎","緮","縛","缚","腹","萯","蕧","蚹","蛗","蝜","蝮","袝","複","覄","覆","訃","詂","讣","負","賦","賻","负","赋","赙","赴","輹","鍑","鍢","阜","附","馥","駙","驸","鮒","鰒","鲋","鳆","㳇"],xiān:["仙","仚","佡","僊","僲","先","嘕","奾","屳","廯","忺","憸","掀","暹","杴","氙","珗","祆","秈","籼","繊","纎","纖","苮","褼","襳","跹","蹮","躚","酰","鍁","锨","韯","韱","馦","鱻","鶱","𬸣"],"tuō chà duó":["仛"],hóng:["仜","吰","垬","妅","娂","宏","宖","弘","彋","汯","泓","洪","浤","渱","潂","玒","玜","竑","竤","篊","粠","紘","紭","綋","纮","翃","翝","耾","苰","荭","葒","葓","谹","谼","鈜","鉷","鋐","閎","闳","霐","霟","鞃","魟","鴻","鸿","黉","黌","𫟹","𬭎"],tóng:["仝","佟","哃","峂","峝","庝","彤","晍","曈","桐","氃","浵","潼","犝","獞","眮","瞳","砼","秱","童","粡","膧","茼","蚒","詷","赨","酮","鉖","鉵","銅","铜","餇","鮦","鲖","𫍣","𦒍"],rèn:["仞","仭","刃","刄","妊","姙","屻","岃","扨","牣","祍","紉","紝","絍","纫","纴","肕","腍","衽","袵","訒","認","认","讱","軔","轫","鈓","靭","靱","韌","韧","飪","餁","饪"],qiān:["仟","佥","僉","千","圲","奷","孯","岍","悭","愆","慳","扦","拪","搴","撁","攐","攑","攓","杄","櫏","汘","汧","牵","牽","竏","签","簽","籖","籤","粁","芊","茾","蚈","褰","諐","謙","谦","谸","迁","遷","釺","鈆","鉛","鏲","钎","阡","韆","顅","騫","骞","鬜","鬝","鵮","鹐"],"gǎn hàn":["仠"],"yì gē":["仡"],dài:["代","侢","叇","垈","埭","岱","帒","带","帯","帶","廗","怠","戴","曃","柋","殆","瀻","玳","瑇","甙","簤","紿","緿","绐","艜","蝳","袋","襶","貣","贷","蹛","軑","軚","軩","轪","迨","霴","靆","鴏","黛","黱"],"lìng líng lǐng":["令"],chào:["仦","耖","觘"],"cháng zhǎng":["仧","兏","長","长"],sā:["仨"],cháng:["仩","偿","償","嘗","嚐","嫦","尝","常","徜","瑺","瓺","甞","肠","腸","膓","苌","萇","镸","鱨","鲿"],yí:["仪","侇","儀","冝","匜","咦","圯","夷","姨","宐","宜","宧","寲","峓","嶬","嶷","巸","彛","彜","彝","彞","怡","恞","扅","暆","栘","椬","椸","沂","洟","熪","瓵","痍","移","簃","籎","羠","胰","萓","蛦","螔","觺","謻","貽","贻","跠","迻","遺","鏔","頉","頤","頥","顊","颐","饴","鮧","鴺"],mù:["仫","凩","募","墓","幕","幙","慔","慕","暮","暯","木","楘","毣","沐","炑","牧","狇","目","睦","穆","艒","苜","莯","蚞","鉬","钼","雮","霂"],"men mén":["们"],fǎn:["仮","反","橎","返"],"chào miǎo":["仯"],"yǎng áng":["仰"],zhòng:["仲","众","堹","妕","媑","狆","眾","祌","筗","茽","蚛","衆","衶","諥"],"pǐ pí":["仳"],wò:["仴","偓","卧","媉","幄","握","楃","沃","渥","濣","瓁","瞃","硪","肟","腛","臥","齷","龌"],jiàn:["件","俴","健","僭","剑","剣","剱","劍","劎","劒","劔","墹","寋","建","徤","擶","旔","楗","毽","洊","涧","澗","牮","珔","瞷","磵","礀","箭","糋","繝","腱","臶","舰","艦","荐","薦","覸","諓","諫","譛","谏","賎","賤","贱","趝","践","踐","踺","轞","鉴","鍳","鍵","鐱","鑑","鑒","鑬","鑳","键","間","餞","饯","𬣡"],"jià jiè jie":["价"],"yǎo fó":["仸"],"rèn rén":["任"],"fèn bīn":["份"],dī:["仾","低","啲","埞","堤","岻","彽","樀","滴","磾","秪","羝","袛","趆","隄","鞮","䃅"],fǎng:["仿","倣","旊","昉","昘","瓬","眆","紡","纺","舫","訪","访","髣","鶭"],zhōng:["伀","刣","妐","幒","彸","忠","柊","汷","泈","炂","盅","籦","終","终","舯","蔠","蜙","螤","螽","衳","衷","蹱","鈡","鍾","鐘","钟","锺","鴤","鼨"],pèi:["伂","佩","姵","帔","斾","旆","沛","浿","珮","蓜","轡","辔","配","霈","馷"],diào:["伄","吊","弔","掉","瘹","盄","窎","窵","竨","訋","釣","鈟","銱","鋽","鑃","钓","铞","雿","魡"],dùn:["伅","潡","炖","燉","盾","砘","碷","踲","逇","遁","遯","鈍","钝"],wěn:["伆","刎","吻","呅","抆","桽","稳","穏","穩","紊","肳","脗"],xǐn:["伈"],kàng:["伉","匟","囥","抗","炕","鈧","钪"],ài:["伌","僾","塧","壒","嫒","嬡","愛","懓","暧","曖","爱","瑷","璦","皧","瞹","砹","硋","碍","礙","薆","譺","賹","鑀","隘","靉","餲","馤","鱫","鴱"],"jì qí":["伎","薺"],"xiū xǔ":["休"],"jìn yín":["伒"],dǎn:["伔","刐","撢","玬","瓭","紞","胆","膽","衴","賧","赕","黕","𬘘"],fū:["伕","呋","娐","孵","尃","怤","懯","敷","旉","玞","砆","稃","筟","糐","綒","肤","膚","荂","荴","衭","趺","跗","邞","鄜","酜","鈇","麩","麬","麱","麸","𫓧"],tǎng:["伖","傥","儻","埫","戃","曭","爣","矘","躺","鎲","钂","镋"],yōu:["优","優","呦","嚘","峳","幽","忧","悠","憂","攸","櫌","滺","瀀","纋","羪","耰","逌","鄾","麀"],huǒ:["伙","夥","火","煷","邩","鈥","钬"],"huì kuài":["会","會","浍","璯"],yǔ:["伛","俁","俣","偊","傴","匬","噳","圄","圉","宇","寙","屿","嶼","庾","挧","敔","斞","楀","瑀","瘐","祤","禹","穥","窳","羽","與","萭","貐","鄅","頨","麌","齬","龉","㺄"],cuì:["伜","啛","忰","悴","毳","淬","焠","疩","瘁","竁","粋","粹","紣","綷","翆","翠","脃","脆","脺","膬","膵","臎","萃","襊","顇"],sǎn:["伞","傘","糤","繖","饊","馓"],wěi:["伟","伪","偉","偽","僞","儰","娓","寪","屗","崣","嶉","徫","愇","捤","暐","梶","洧","浘","渨","炜","煒","猥","玮","瑋","痿","緯","纬","腲","艉","芛","苇","荱","萎","葦","蒍","蔿","蜼","諉","诿","踓","鍡","韑","韙","韡","韪","頠","颹","骩","骪","骫","鮪","鲔","𫇭","𬀩","𬱟"],"chuán zhuàn":["传","傳"],"chē jū":["伡","俥","车"],"jū chē":["車"],yá:["伢","厑","厓","堐","岈","崕","崖","涯","漄","牙","玡","琊","睚","笌","芽","蚜","衙","齖"],qiàn:["伣","俔","倩","儙","刋","壍","嬱","悓","棈","椠","槧","欠","歉","皘","篏","篟","縴","芡","蒨","蔳","輤","𬘬"],shāng:["伤","傷","商","墒","慯","殇","殤","滳","漡","熵","蔏","螪","觞","觴","謪","鬺"],chāng:["伥","倀","娼","昌","椙","淐","猖","琩","菖","裮","錩","锠","閶","阊","鯧","鲳","鼚"],"chen cāng":["伧"],xùn:["伨","侚","卂","噀","巺","巽","徇","愻","殉","殾","汛","潠","狥","蕈","訊","訓","訙","训","讯","迅","迿","逊","遜","鑂","顨","馴","驯"],xìn:["伩","囟","孞","脪","舋","衅","訫","釁","阠","顖"],chǐ:["伬","侈","卶","叺","呎","垑","恥","歯","耻","肔","胣","蚇","裭","褫","豉","鉹","齒","齿"],"xián xuán":["伭"],"nú nǔ":["伮"],"bó bǎi":["伯"],"gū gù":["估"],nǐ:["伱","你","儞","孴","拟","擬","旎","晲","狔","苨","薿","隬"],"nì ní":["伲"],bàn:["伴","办","半","姅","怑","扮","瓣","秚","絆","绊","辦","鉡","靽"],xù:["伵","侐","勖","勗","卹","叙","垿","壻","婿","序","恤","敍","敘","旭","昫","朂","槒","欰","殈","汿","沀","洫","溆","漵","潊","烅","烼","煦","獝","珬","盢","瞁","稸","絮","続","緒","緖","續","绪","续","聓","聟","蓄","藚","訹","賉","酗","頊","鱮","㳚"],zhòu:["伷","僽","冑","呪","咒","咮","宙","昼","晝","甃","皱","皺","籀","籒","籕","粙","紂","縐","纣","绉","胄","荮","葤","詋","酎","駎","驟","骤","㤘","㑇"],shēn:["伸","侁","兟","呻","堔","妽","娠","屾","峷","扟","敒","曑","柛","氠","深","燊","珅","甡","甧","申","眒","砷","穼","籶","籸","糂","紳","绅","罙","罧","葠","蓡","蔘","薓","裑","訷","詵","诜","身","駪","鯓","鯵","鰺","鲹","鵢","𬳽"],qū:["伹","佉","匤","呿","坥","屈","岖","岴","嶇","憈","抾","敺","浀","煀","祛","筁","粬","胠","蛆","蛐","袪","覻","詘","诎","趍","躯","軀","阹","駆","駈","驅","驱","髷","魼","鰸","鱋","鶌","麯","麴","麹","黢","㭕","𪨰","䓛"],"sì cì":["伺"],bēng:["伻","嘣","奟","崩","嵭","閍"],"sì shì":["似"],"jiā qié gā":["伽"],"yǐ chì":["佁"],"diàn tián":["佃","钿"],"hān gàn":["佄"],mài:["佅","劢","勱","卖","唛","売","脈","衇","賣","迈","邁","霡","霢","麥","麦","鿏"],dàn:["但","僤","啖","啗","啿","噉","嚪","帎","憺","旦","柦","氮","沊","泹","淡","狚","疍","癚","禫","窞","腅","萏","蓞","蛋","蜑","觛","訑","誕","诞","贉","霮","餤","饏","駳","髧","鴠","𫢸"],bù:["佈","勏","吥","咘","埗","埠","布","廍","怖","悑","步","歨","歩","瓿","篰","荹","蔀","踄","部","郶","鈈","钚","餢"],bǐ:["佊","俾","匕","夶","妣","彼","朼","柀","比","毞","沘","疕","秕","笔","筆","粃","聛","舭","貏","鄙"],"zhāo shào":["佋"],cǐ:["佌","此","泚","皉","𫚖"],wèi:["位","卫","味","喂","墛","媦","慰","懀","未","渭","煟","熭","犚","猬","畏","緭","罻","胃","苿","菋","藯","蘶","蝟","螱","衛","衞","褽","謂","讆","讏","谓","躗","躛","軎","轊","鏏","霨","餧","餵","饖","魏","鮇","鳚"],zuǒ:["佐","左","繓"],yǎng:["佒","傟","养","坱","岟","慃","懩","攁","氧","氱","炴","痒","癢","礢","紻","蝆","軮","養","駚"],"tǐ tī":["体","體"],zhàn:["佔","偡","嶘","战","戦","戰","栈","桟","棧","湛","站","綻","绽","菚","蘸","虥","虦","譧","轏","驏"],"hé hē hè":["何"],bì:["佖","咇","哔","嗶","坒","堛","壁","奰","妼","婢","嬖","币","幣","幤","庇","庳","廦","弊","弻","弼","彃","必","怭","愊","愎","敝","斃","梐","毕","毖","毙","湢","滗","滭","潷","煏","熚","狴","獘","獙","珌","璧","畀","畢","疪","痹","痺","皕","睤","碧","筚","箅","箆","篦","篳","粊","綼","縪","繴","罼","腷","苾","荜","萆","萞","蓖","蓽","蔽","薜","蜌","袐","襅","襞","襣","觱","詖","诐","貱","贔","赑","跸","蹕","躃","躄","避","邲","鄨","鄪","鉍","鏎","鐴","铋","閇","閉","閟","闭","陛","韠","飶","饆","馝","駜","驆","髀","魓","鮅","鷝","鷩","鼊"],tuó:["佗","坨","堶","岮","槖","橐","沱","砣","砤","碢","紽","詑","跎","酡","阤","陀","陁","駝","駞","騨","驒","驝","驼","鮀","鴕","鸵","鼉","鼍","鼧","𬶍"],shé:["佘","舌","虵","蛥"],"yì dié":["佚","昳","泆","軼"],"fó fú bì bó":["佛"],"zuò zuō":["作"],gōu:["佝","沟","溝","痀","篝","簼","緱","缑","袧","褠","鈎","鉤","钩","鞲","韝"],nìng:["佞","侫","倿","寕","泞","澝","濘"],qú:["佢","劬","戵","斪","欋","欔","氍","淭","灈","爠","璖","璩","癯","磲","籧","絇","胊","臞","菃","葋","蕖","蘧","蟝","蠷","蠼","衐","衢","躣","軥","鑺","鴝","鸜","鸲","鼩"],"yōng yòng":["佣"],wǎ:["佤","咓","砙","邷"],kǎ:["佧","垰","胩","裃","鉲"],bāo:["佨","勹","包","孢","煲","笣","胞","苞","蕔","裦","褒","襃","闁","齙","龅"],"huái huí":["佪"],"gé hè":["佫"],lǎo:["佬","咾","恅","栳","狫","珯","硓","老","耂","荖","蛯","轑","銠","铑","鮱"],xiáng:["佭","庠","栙","祥","絴","翔","詳","跭"],gé:["佮","匌","呄","嗝","塥","愅","挌","搿","槅","櫊","滆","膈","臵","茖","觡","諽","輵","轕","閣","阁","隔","鞷","韐","韚","騔","骼","鮯"],yáng:["佯","劷","垟","崸","徉","扬","揚","敭","旸","昜","暘","杨","楊","洋","炀","珜","疡","瘍","眻","蛘","諹","輰","鍚","钖","阦","阳","陽","霷","颺","飏","鰑","鴹","鸉"],bǎi:["佰","捭","摆","擺","栢","百","竡","粨","襬"],fǎ:["佱","峜","法","灋","砝","鍅"],mǐng:["佲","凕","姳","慏","酩"],"èr nài":["佴"],hěn:["佷","很","狠","詪","𬣳"],huó:["佸","活"],guǐ:["佹","匦","匭","厬","垝","姽","宄","庋","庪","恑","晷","湀","癸","祪","簋","蛫","蟡","觤","詭","诡","軌","轨","陒","鬼"],quán:["佺","全","啳","埢","姾","峑","巏","拳","搼","权","楾","権","權","泉","洤","湶","牷","犈","瑔","痊","硂","筌","縓","荃","葲","蜷","蠸","觠","詮","诠","跧","踡","輇","辁","醛","銓","铨","闎","顴","颧","駩","騡","鬈","鰁","鳈","齤"],tiāo:["佻","庣","旫","祧","聎"],jiǎo:["佼","儌","孂","挢","搅","撟","撹","攪","敫","敽","敿","晈","暞","曒","灚","燞","狡","璬","皎","皦","絞","纐","绞","腳","臫","蟜","譑","賋","踋","鉸","铰","餃","饺","鱎","龣"],cì:["佽","刾","庛","朿","栨","次","絘","茦","莿","蛓","螆","賜","赐"],xíng:["侀","刑","哘","型","娙","形","洐","硎","蛵","邢","郉","鈃","鉶","銒","钘","铏","陉","陘","餳","𫰛"],tuō:["侂","咃","咜","圫","托","拕","拖","汑","脫","脱","莌","袥","託","讬","飥","饦","魠","鮵"],kǎn:["侃","偘","冚","坎","惂","砍","莰","輡","轗","顑"],zhí:["侄","値","值","埴","執","姪","嬂","戠","执","摭","植","樴","淔","漐","直","禃","絷","縶","聀","职","職","膱","蟙","跖","踯","蹠","躑","軄","釞","馽"],gāi:["侅","垓","姟","峐","晐","畡","祴","荄","該","该","豥","賅","賌","赅","陔"],lái:["來","俫","倈","崃","崍","庲","来","梾","棶","涞","淶","猍","琜","筙","箂","莱","萊","逨","郲","錸","铼","騋","鯠","鶆","麳"],kuǎ:["侉","咵","垮","銙"],gōng:["侊","公","功","匑","匔","塨","宫","宮","工","幊","弓","恭","攻","杛","碽","糼","糿","肱","觥","觵","躬","躳","髸","龔","龚","䢼"],lì:["例","俐","俪","傈","儮","儷","凓","利","力","励","勵","历","厉","厤","厯","厲","叓","吏","呖","唎","唳","嚦","囇","坜","塛","壢","娳","婯","屴","岦","悧","悷","慄","戾","搮","暦","曆","曞","朸","枥","栃","栗","栛","檪","櫔","櫪","欐","歴","歷","沥","沴","涖","溧","濿","瀝","爏","犡","猁","珕","瑮","瓅","瓑","瓥","疬","痢","癧","盭","睙","砅","砺","砾","磿","礪","礫","礰","禲","秝","立","笠","篥","粒","粝","糲","脷","苈","茘","荔","莅","莉","蒚","蒞","藶","蚸","蛎","蛠","蜧","蝷","蠇","蠣","詈","讈","赲","轢","轣","轹","酈","鉝","隶","隷","雳","靂","靋","鬁","鳨","鴗","鷅","麜","𫵷","𬍛"],yīn:["侌","凐","喑","噾","囙","因","垔","堙","姻","婣","愔","慇","栶","氤","洇","溵","濦","瘖","禋","秵","筃","絪","緸","茵","蒑","蔭","裀","諲","銦","铟","闉","阥","阴","陰","陻","隂","霒","霠","鞇","音","韾","駰","骃","齗","𬘡","𬤇","𬮱"],mǐ:["侎","孊","弭","敉","洣","渳","灖","米","粎","羋","脒","芈","葞","蔝","銤"],zhū:["侏","株","槠","橥","櫧","櫫","洙","潴","瀦","猪","珠","硃","秼","絑","茱","蕏","蛛","蝫","蠩","袾","誅","諸","诛","诸","豬","跦","邾","銖","铢","駯","鮢","鯺","鴸","鼄"],ān:["侒","偣","媕","安","峖","庵","桉","氨","盦","盫","腤","菴","萻","葊","蓭","誝","諳","谙","鞌","鞍","韽","馣","鮟","鵪","鶕","鹌","𩽾"],lù:["侓","僇","勎","勠","圥","坴","塶","娽","峍","廘","彔","录","戮","摝","椂","樚","淕","淥","渌","漉","潞","琭","璐","甪","盝","睩","硉","祿","禄","稑","穋","箓","簏","簬","簵","簶","籙","粶","蔍","蕗","虂","螰","賂","赂","趢","路","踛","蹗","輅","轆","辂","辘","逯","醁","錄","録","錴","鏴","陸","騄","騼","鯥","鴼","鵦","鵱","鷺","鹭","鹿","麓","𫘧"],móu:["侔","劺","恈","眸","蛑","謀","谋","踎","鍪","鴾","麰"],ér:["侕","儿","児","兒","峏","栭","洏","粫","而","胹","荋","袻","輀","轜","陑","隭","髵","鮞","鲕","鴯","鸸"],"dòng tǒng tóng":["侗"],chà:["侘","奼","姹","岔","汊","詫","诧"],chì:["侙","傺","勅","勑","叱","啻","彳","恜","慗","憏","懘","抶","敕","斥","杘","湁","灻","炽","烾","熾","痓","痸","瘛","翄","翅","翤","翨","腟","赤","趩","遫","鉓","雴","飭","饬","鶒","鷘"],"gòng gōng":["供","共"],zhōu:["侜","周","喌","州","徟","洲","淍","炿","烐","珘","矪","舟","謅","譸","诌","賙","赒","輈","輖","辀","週","郮","銂","霌","駲","騆","鵃","鸼"],rú:["侞","儒","嚅","如","嬬","孺","帤","曘","桇","渪","濡","筎","茹","蕠","薷","蝡","蠕","袽","襦","邚","醹","銣","铷","顬","颥","鱬","鴑","鴽"],"jiàn cún":["侟"],xiá:["侠","俠","匣","峡","峽","敮","暇","柙","炠","烚","狎","狭","狹","珨","瑕","硖","硤","碬","祫","筪","縖","翈","舝","舺","蕸","赮","轄","辖","遐","鍜","鎋","陜","陿","霞","騢","魻","鶷","黠"],lǚ:["侣","侶","儢","吕","呂","屡","屢","履","挔","捛","旅","梠","焒","祣","稆","穭","絽","縷","缕","膂","膐","褛","褸","郘","鋁","铝"],ta:["侤"],"jiǎo yáo":["侥","僥","徺"],zhēn:["侦","偵","寊","帧","帪","幀","搸","斟","桢","楨","榛","樼","殝","浈","湞","潧","澵","獉","珍","珎","瑧","甄","眞","真","砧","碪","祯","禎","禛","箴","胗","臻","葴","蒖","蓁","薽","貞","贞","轃","遉","酙","針","鉁","錱","鍼","针","鱵"],"cè zè zhāi":["侧","側"],kuài:["侩","儈","凷","哙","噲","圦","块","塊","巜","廥","快","旝","欳","狯","獪","筷","糩","脍","膾","郐","鄶","鱠","鲙"],chái:["侪","儕","喍","柴","犲","祡","豺"],nóng:["侬","儂","农","哝","噥","檂","欁","浓","濃","燶","禯","秾","穠","脓","膿","蕽","襛","譨","農","辳","醲","鬞","𬪩"],jǐn:["侭","儘","卺","厪","巹","槿","漌","瑾","紧","緊","菫","蓳","謹","谨","錦","锦","饉","馑"],"hóu hòu":["侯","矦"],jiǒng:["侰","僒","冏","囧","泂","澃","炯","烱","煚","煛","熲","燛","窘","綗","褧","迥","逈","顈","颎","䌹"],"chěng tǐng":["侱"],"zhèn zhēn":["侲","揕"],zuò:["侳","做","唑","坐","岝","岞","座","祚","糳","胙","葃","葄","蓙","袏","阼"],qīn:["侵","兓","媇","嵚","嶔","欽","衾","誛","钦","顉","駸","骎","鮼"],jú:["侷","啹","婅","局","巈","椈","橘","泦","淗","湨","焗","犑","狊","粷","菊","蘜","趜","跼","蹫","輂","郹","閰","駶","驧","鵙","鵴","鶪","鼰","鼳","䴗"],"shù dōu":["侸"],tǐng:["侹","圢","娗","挺","涏","烶","珽","脡","艇","誔","頲","颋"],shèn:["侺","愼","慎","昚","涁","渗","滲","瘆","瘮","眘","祳","肾","胂","脤","腎","蜃","蜄","鋠"],"tuì tuó":["侻"],nán:["侽","喃","娚","抩","暔","枏","柟","楠","男","畘","莮","萳","遖"],xiāo:["侾","哓","嘵","嚻","囂","婋","宯","宵","庨","彇","揱","枭","枵","梟","櫹","歊","毊","消","潇","瀟","灱","灲","烋","焇","猇","獢","痚","痟","硝","硣","窙","箫","簘","簫","綃","绡","翛","膮","萧","蕭","虈","虓","蟂","蟏","蟰","蠨","踃","逍","銷","销","霄","颵","驍","骁","髇","髐","魈","鴞","鴵","鷍","鸮"],"biàn pián":["便","緶","缏"],tuǐ:["俀","腿","蹆","骽"],xì:["係","匸","卌","呬","墍","屃","屓","屭","忥","怬","恄","椞","潝","潟","澙","熂","犔","磶","禊","細","綌","縘","细","绤","舃","舄","蕮","虩","衋","覤","赩","趇","郤","釳","阋","隙","隟","霼","餼","饩","鬩","黖"],cù:["促","媨","憱","猝","瘄","瘯","簇","縬","脨","蔟","誎","趗","踧","踿","蹙","蹴","蹵","醋","顣","鼀"],é:["俄","囮","娥","峉","峨","峩","涐","珴","皒","睋","磀","莪","訛","誐","譌","讹","迗","鈋","鋨","锇","頟","額","额","魤","鵝","鵞","鹅"],qiú:["俅","叴","唒","囚","崷","巯","巰","扏","梂","殏","毬","求","汓","泅","浗","湭","煪","犰","玌","球","璆","皳","盚","紌","絿","肍","芁","莍","虬","虯","蛷","裘","觓","觩","訄","訅","賕","赇","逎","逑","遒","酋","釚","釻","銶","頄","鮂","鯄","鰽","鼽","𨱇"],xú:["俆","徐","禑"],"guàng kuāng":["俇"],kù:["俈","喾","嚳","库","庫","廤","瘔","絝","绔","袴","裤","褲","酷"],wù:["俉","务","務","勿","卼","坞","塢","奦","婺","寤","屼","岉","嵨","忢","悞","悟","悮","戊","扤","晤","杌","溩","焐","熃","物","痦","矹","窹","粅","蘁","誤","误","鋈","阢","隖","雾","霚","霧","靰","騖","骛","鶩","鹜","鼿","齀"],jùn:["俊","儁","呁","埈","寯","峻","懏","捃","攟","晙","棞","燇","珺","畯","竣","箟","蜠","賐","郡","陖","餕","馂","駿","骏","鵔","鵕","鵘","䐃"],liáng:["俍","墚","梁","椋","樑","粮","粱","糧","良","輬","辌","𫟅"],zǔ:["俎","唨","爼","祖","組","组","詛","诅","鎺","阻","靻"],"qiào xiào":["俏"],yǒng:["俑","勇","勈","咏","埇","塎","嵱","彮","怺","恿","悀","惥","愑","愹","慂","柡","栐","永","泳","湧","甬","蛹","詠","踊","踴","鯒","鲬"],hùn:["俒","倱","圂","尡","慁","掍","溷","焝","睴","觨","諢","诨"],jìng:["俓","傹","境","妌","婙","婧","弪","弳","径","徑","敬","曔","桱","梷","浄","瀞","獍","痉","痙","竞","竟","竫","競","竸","胫","脛","莖","誩","踁","迳","逕","鏡","镜","靖","静","靜","鵛"],sàn:["俕","閐"],pěi:["俖"],sú:["俗"],xī:["俙","僖","兮","凞","卥","厀","吸","唏","唽","嘻","噏","嚱","夕","奚","嬆","嬉","屖","嵠","巇","希","徆","徯","息","悉","悕","惁","惜","昔","晞","晰","晳","曦","析","桸","榽","樨","橀","欷","氥","汐","浠","淅","渓","溪","烯","焁","焈","焟","熄","熈","熙","熹","熺","熻","燨","爔","牺","犀","犠","犧","琋","瘜","皙","睎","瞦","矽","硒","磎","礂","稀","穸","窸","粞","糦","緆","繥","羲","翕","翖","肸","肹","膝","舾","莃","菥","蒠","蜥","螅","蟋","蠵","西","觹","觽","觿","譆","谿","豀","豨","豯","貕","赥","邜","鄎","酅","醯","釸","錫","鏭","鐊","鑴","锡","隵","餏","饎","饻","鯑","鵗","鸂","鼷"],lǐ:["俚","娌","峢","峲","李","欚","浬","澧","理","礼","禮","粴","裏","裡","豊","逦","邐","醴","鋰","锂","鯉","鱧","鱱","鲤","鳢"],bǎo:["保","堢","媬","宝","寚","寳","寶","珤","緥","葆","藵","褓","賲","靌","飹","飽","饱","駂","鳵","鴇","鸨"],"yú shù yù":["俞"],"sì qí":["俟"],"xìn shēn":["信"],xiū:["俢","修","咻","庥","樇","烌","羞","脙","脩","臹","貅","銝","鎀","飍","饈","馐","髤","髹","鮴","鱃","鵂","鸺","䗛"],dì:["俤","偙","僀","埊","墑","墬","娣","帝","怟","旳","梊","焍","玓","甋","眱","睇","碲","祶","禘","第","締","缔","腣","菂","蒂","蔕","蝃","蝭","螮","諦","谛","踶","递","逓","遞","遰","鉪","𤧛","䗖"],chóu:["俦","儔","嬦","惆","愁","懤","栦","燽","畴","疇","皗","稠","筹","籌","絒","綢","绸","菗","詶","讎","讐","踌","躊","酧","酬","醻","雔","雠","雦"],zhì:["俧","偫","儨","制","劕","垁","娡","寘","帙","帜","幟","庢","庤","廌","彘","徏","徝","志","忮","懥","懫","挃","挚","掷","摯","擲","旘","晊","智","栉","桎","梽","櫍","櫛","治","洷","滍","滞","滯","潌","瀄","炙","熫","狾","猘","璏","瓆","痔","痣","礩","祑","秩","秷","稚","稺","穉","窒","紩","緻","置","翐","膣","至","致","芖","蛭","袟","袠","製","覟","觗","觯","觶","誌","豑","豒","貭","質","贄","质","贽","跱","踬","躓","輊","轾","郅","銍","鋕","鑕","铚","锧","陟","隲","雉","駤","騭","騺","驇","骘","鯯","鴙","鷙","鸷","𬃊"],"liǎ liǎng":["俩"],jiǎn:["俭","倹","儉","减","剪","堿","弿","彅","戩","戬","拣","挸","捡","揀","撿","枧","柬","梘","检","検","檢","減","湕","瀽","瑐","睑","瞼","硷","碱","礆","笕","筧","简","簡","絸","繭","翦","茧","藆","蠒","裥","襇","襉","襺","詃","謇","謭","譾","谫","趼","蹇","鐗","鬋","鰎","鹸","鹻","鹼"],huò:["俰","咟","嚯","嚿","奯","彠","惑","或","擭","旤","曤","檴","沎","湱","瀖","獲","癨","眓","矐","祸","禍","穫","窢","耯","臛","艧","获","蒦","藿","蠖","謋","貨","货","鍃","鑊","镬","雘","霍","靃","韄","㸌"],"jù jū":["俱","据","鋸","锯"],xiào:["俲","傚","効","咲","哮","啸","嘋","嘨","嘯","孝","效","斅","斆","歗","涍","熽","笑","詨","誟"],pái:["俳","徘","牌","犤","猅","簰","簲","輫"],biào:["俵","鰾","鳔"],"chù tì":["俶"],fèi:["俷","剕","厞","吠","屝","废","廃","廢","昲","曊","櫠","沸","濷","狒","癈","肺","萉","費","费","鐨","镄","陫","靅","鼣"],fèng:["俸","凤","奉","湗","焨","煈","賵","赗","鳯","鳳","鴌"],ǎn:["俺","唵","埯","揞","罯","銨","铵"],bèi:["俻","倍","偝","偹","備","僃","备","悖","惫","愂","憊","昁","梖","焙","牬","犕","狈","狽","珼","琲","碚","禙","糒","苝","蓓","蛽","褙","貝","贝","軰","輩","辈","邶","郥","鄁","鋇","鐾","钡","鞁","鞴","𬇙"],yù:["俼","儥","喅","喩","喻","域","堉","妪","嫗","寓","峪","嶎","庽","彧","御","愈","慾","戫","昱","棛","棜","棫","櫲","欎","欝","欲","毓","浴","淯","滪","潏","澦","灪","焴","煜","燏","燠","爩","狱","獄","玉","琙","瘉","癒","砡","硢","硲","礇","礖","礜","禦","秗","稢","稶","篽","籞","籲","粖","緎","罭","聿","肀","艈","芋","芌","茟","蒮","蓣","蓹","蕷","蘌","蜟","蜮","袬","裕","誉","諭","譽","谕","豫","軉","輍","逳","遇","遹","郁","醧","鈺","鋊","錥","鐭","钰","閾","阈","雤","霱","預","预","飫","饇","饫","馭","驈","驭","鬰","鬱","鬻","魊","鱊","鳿","鴥","鴧","鴪","鵒","鷸","鸒","鹆","鹬"],xīn:["俽","噺","妡","嬜","廞","心","忄","忻","惞","新","昕","杺","欣","歆","炘","盺","薪","訢","辛","邤","鈊","鋅","鑫","锌","馨","馫","䜣","𫷷"],"hǔ chí":["俿"],jiù:["倃","僦","匓","匛","匶","厩","咎","就","廄","廏","廐","慦","捄","救","旧","柩","柾","桕","欍","殧","疚","臼","舅","舊","鯦","鷲","鹫","麔","齨","㠇"],yáo:["倄","傜","嗂","垚","堯","姚","媱","尧","尭","峣","嶢","嶤","徭","揺","搖","摇","摿","暚","榣","烑","爻","猺","珧","瑤","瑶","磘","窑","窯","窰","肴","蘨","謠","謡","谣","軺","轺","遙","遥","邎","顤","颻","飖","餆","餚","鰩","鱙","鳐"],"cuì zú":["倅"],"liǎng liǎ":["倆"],wǎn:["倇","唍","婉","惋","挽","晚","晥","晩","晼","梚","椀","琬","畹","皖","盌","碗","綩","綰","绾","脘","萖","踠","輓","鋔"],zǒng:["倊","偬","傯","嵸","总","惣","捴","搃","摠","燪","総","緫","縂","總","蓗"],guān:["倌","关","官","棺","瘝","癏","窤","蒄","関","闗","關","鰥","鱞","鳏"],tiǎn:["倎","唺","忝","悿","晪","殄","淟","睓","腆","舔","覥","觍","賟","錪","餂"],mén:["們","扪","捫","璊","菛","虋","鍆","钔","門","閅","门","𫞩"],"dǎo dào":["倒"],"tán tàn":["倓","埮"],"juè jué":["倔"],chuí:["倕","垂","埀","捶","搥","桘","棰","槌","箠","腄","菙","錘","鎚","锤","陲","顀"],xìng:["倖","姓","婞","嬹","幸","性","悻","杏","涬","緈","臖","荇","莕","葕"],péng:["倗","傰","塜","塳","弸","憉","捀","朋","棚","椖","樥","硼","稝","竼","篷","纄","膨","芃","蓬","蘕","蟚","蟛","袶","輣","錋","鑝","韸","韼","騯","髼","鬅","鬔","鵬","鹏"],"tǎng cháng":["倘"],hòu:["候","厚","后","垕","堠","後","洉","茩","豞","逅","郈","鮜","鱟","鲎","鲘"],tì:["倜","剃","嚏","嚔","屉","屜","悌","悐","惕","惖","戻","掦","替","朑","歒","殢","涕","瓋","笹","籊","薙","褅","逖","逷","髰","鬀","鬄"],gàn:["倝","凎","幹","榦","檊","淦","灨","盰","紺","绀","詌","贑","赣","骭","㽏"],"liàng jìng":["倞","靓"],suī:["倠","哸","夊","滖","濉","眭","睢","芕","荽","荾","虽","雖","鞖"],"chàng chāng":["倡"],jié:["倢","偼","傑","刦","刧","刼","劫","劼","卩","卪","婕","媫","孑","岊","崨","嵥","嶻","巀","幯","截","捷","掶","擮","昅","杢","杰","桀","桝","楬","楶","榤","洁","滐","潔","狤","睫","礍","竭","節","羯","莭","蓵","蛣","蜐","蠘","蠞","蠽","衱","袺","訐","詰","誱","讦","踕","迼","鉣","鍻","镼","頡","鮚","鲒","㛃"],"kǒng kōng":["倥"],juàn:["倦","劵","奆","慻","桊","淃","狷","獧","眷","睊","睠","絭","絹","绢","罥","羂","腃","蔨","鄄","餋"],zōng:["倧","堫","宗","嵏","嵕","惾","朡","棕","椶","熧","猣","磫","緃","翪","腙","葼","蝬","豵","踨","踪","蹤","鍐","鑁","騌","騣","骔","鬃","鬉","鬷","鯮","鯼"],ní:["倪","坭","埿","尼","屔","怩","淣","猊","籾","聣","蚭","蜺","觬","貎","跜","輗","郳","鈮","铌","霓","馜","鯢","鲵","麑","齯","𫐐","𫠜"],zhuō:["倬","拙","捉","桌","梲","棁","棳","槕","涿","窧","鐯","䦃"],"wō wēi":["倭"],luǒ:["倮","剆","曪","瘰","癳","臝","蓏","蠃","裸","躶"],sōng:["倯","凇","娀","崧","嵩","庺","憽","松","枀","枩","柗","梥","檧","淞","濍","硹","菘","鬆"],lèng:["倰","堎","愣","睖","踜"],zì:["倳","剚","字","恣","渍","漬","牸","眥","眦","胔","胾","自","茡","荢"],bèn:["倴","坌","捹","撪","渀","笨","逩"],cǎi:["倸","啋","婇","彩","採","棌","毝","睬","綵","跴","踩"],zhài:["债","債","寨","瘵","砦"],yē:["倻","吔","噎","擨","暍","椰","歋","潱","蠮"],shà:["倽","唼","喢","歃","箑","翜","翣","萐","閯","霎"],qīng:["倾","傾","卿","圊","寈","氢","氫","淸","清","蜻","軽","輕","轻","郬","錆","鑋","靑","青","鯖"],yīng:["偀","嘤","噟","嚶","婴","媖","嫈","嬰","孆","孾","愥","撄","攖","朠","桜","樱","櫻","渶","煐","珱","瑛","璎","瓔","甇","甖","碤","礯","緓","纓","绬","缨","罂","罃","罌","膺","英","莺","蘡","蝧","蠳","褮","譻","賏","軈","鑍","锳","霙","韺","鴬","鶑","鶧","鶯","鷪","鷹","鸎","鸚","鹦","鹰","䓨"],"chēng chèn":["偁","爯"],ruǎn:["偄","朊","瑌","瓀","碝","礝","腝","軟","輭","软","阮"],"zhòng tóng":["偅"],chǔn:["偆","惷","睶","萶","蠢","賰"],"jiǎ jià":["假"],"jì jié":["偈"],"bǐng bìng":["偋"],ruò:["偌","叒","嵶","弱","楉","焫","爇","箬","篛","蒻","鄀","鰙","鰯","鶸"],tí:["偍","厗","啼","嗁","崹","漽","瑅","睼","禵","稊","緹","缇","罤","蕛","褆","謕","趧","蹄","蹏","醍","鍗","題","题","騠","鮷","鯷","鳀","鵜","鷤","鹈","𫘨"],wēi:["偎","危","喴","威","媙","嶶","巍","微","愄","揋","揻","椳","楲","溦","烓","煨","燰","癓","縅","葨","葳","薇","蜲","蝛","覣","詴","逶","隇","隈","霺","鰃","鰄","鳂"],piān:["偏","囨","媥","楄","犏","篇","翩","鍂"],yàn:["偐","厌","厭","唁","喭","嚈","嚥","堰","妟","姲","嬊","嬿","宴","彥","彦","敥","晏","暥","曕","曣","滟","灎","灔","灧","灩","焔","焰","焱","熖","燄","牪","猒","砚","硯","艳","艶","艷","覎","觃","觾","諺","讌","讞","谚","谳","豓","豔","贋","贗","赝","軅","酀","酽","醼","釅","雁","餍","饜","騐","験","騴","驗","驠","验","鬳","鳫","鴈","鴳","鷃","鷰","齞"],"tǎng dàng":["偒"],è:["偔","匎","卾","厄","呝","咢","噩","垩","堊","堮","岋","崿","廅","悪","愕","戹","扼","搤","搹","擜","櫮","歞","歺","湂","琧","砈","砐","硆","腭","苊","萼","蕚","蚅","蝁","覨","諤","讍","谔","豟","軛","軶","轭","遌","遏","遻","鄂","鈪","鍔","鑩","锷","阨","阸","頞","顎","颚","餓","餩","饿","鰐","鰪","鱷","鳄","鶚","鹗","齃","齶","𫫇","𥔲"],xié:["偕","勰","协","協","嗋","垥","奊","恊","愶","拹","携","撷","擕","擷","攜","斜","旪","熁","燲","綊","緳","縀","缬","翓","胁","脅","脇","脋","膎","蝢","衺","襭","諧","讗","谐","鞋","鞵","龤","㙦"],chě:["偖","扯","撦"],shěng:["偗","渻","眚"],chā:["偛","嗏","扠","挿","插","揷","疀","臿","艖","銟","鍤","锸","餷"],huáng:["偟","凰","喤","堭","墴","媓","崲","徨","惶","楻","湟","煌","獚","瑝","璜","癀","皇","磺","穔","篁","簧","艎","葟","蝗","蟥","諻","趪","遑","鍠","鐄","锽","隍","韹","餭","騜","鰉","鱑","鳇","鷬","黃","黄","𨱑"],yǎo:["偠","咬","婹","宎","岆","杳","柼","榚","溔","狕","窅","窈","舀","苭","闄","騕","鷕","齩"],"chǒu qiào":["偢"],yóu:["偤","尤","庮","怣","沋","油","浟","游","犹","猶","猷","由","疣","秞","肬","莜","莸","蕕","蚰","蝣","訧","輏","輶","逰","遊","邮","郵","鈾","铀","駀","魷","鮋","鱿","鲉","𬨎"],xū:["偦","墟","媭","嬃","楈","欨","歔","燸","疞","盱","綇","縃","繻","胥","蕦","虗","虚","虛","蝑","裇","訏","許","諝","譃","谞","鑐","需","須","须","顼","驉","鬚","魆","魖","𬣙","𦈡"],zhā:["偧","哳","抯","挓","揸","摣","樝","渣","皶","觰","譇","齄","齇"],cī:["偨","疵","蠀","趀","骴","髊","齹"],bī:["偪","屄","楅","毴","豍","逼","鰏","鲾","鵖"],xún:["偱","噚","寻","尋","峋","巡","廵","循","恂","揗","攳","旬","杊","栒","桪","樳","洵","浔","潯","燅","燖","珣","璕","畃","紃","荀","蟳","詢","询","鄩","鱏","鱘","鲟","𬘓","𬩽","𬍤","𬊈"],"cāi sī":["偲"],duān:["偳","媏","端","褍","鍴"],ǒu:["偶","吘","嘔","耦","腢","蕅","藕","𬉼","𠙶"],tōu:["偷","偸","鍮"],"zán zá zǎ":["偺"],"lǚ lóu":["偻","僂"],fèn:["偾","僨","奋","奮","弅","忿","愤","憤","瀵","瞓","秎","粪","糞","膹","鱝","鲼"],"kuǐ guī":["傀"],sǒu:["傁","叜","叟","嗾","櫢","瞍","薮","藪"],"zhì sī tí":["傂"],sù:["傃","僳","嗉","塐","塑","夙","嫊","愫","憟","榡","樎","樕","殐","泝","涑","溯","溸","潚","潥","玊","珟","璛","簌","粛","粟","素","縤","肃","肅","膆","蔌","藗","觫","訴","謖","诉","谡","趚","蹜","速","遡","遬","鋉","餗","驌","骕","鱐","鷫","鹔","𫗧"],xiā:["傄","煆","瞎","虲","谺","颬","鰕"],"yuàn yuán":["傆","媛"],rǒng:["傇","冗","宂","氄","軵"],nù:["傉","怒"],yùn:["傊","孕","恽","惲","愠","慍","枟","腪","蕴","薀","藴","蘊","褞","貟","运","運","郓","鄆","酝","醖","醞","韗","韞","韵","韻","餫"],"gòu jiǎng":["傋"],mà:["傌","嘜","榪","睰","祃","禡","罵","閁","駡","骂","鬕"],bàng:["傍","塝","棒","玤","稖","艕","蒡","蜯","謗","谤","鎊","镑"],diān:["傎","厧","嵮","巅","巓","巔","掂","攧","敁","槇","滇","癫","癲","蹎","顚","顛","颠","齻"],táng:["傏","唐","啺","坣","堂","塘","搪","棠","榶","溏","漟","煻","瑭","磄","禟","篖","糃","糖","糛","膅","膛","蓎","螗","螳","赯","踼","鄌","醣","鎕","隚","餹","饄","鶶","䣘"],hào:["傐","哠","恏","昊","昦","晧","暠","暤","暭","曍","浩","淏","澔","灏","灝","皓","皜","皞","皡","皥","耗","聕","薃","號","鄗","顥","颢","鰝"],"xī xì":["傒"],shān:["傓","删","刪","剼","圸","山","挻","搧","柵","檆","潸","澘","煽","狦","珊","笘","縿","羴","羶","脠","舢","芟","衫","跚","軕","邖","閊","鯅"],"qiàn jiān":["傔"],"què jué":["傕","埆"],"cāng chen":["傖"],róng:["傛","媶","嫆","嬫","容","峵","嵘","嶸","戎","搈","曧","栄","榕","榮","榵","毧","溶","瀜","烿","熔","狨","瑢","穁","絨","绒","羢","肜","茙","茸","荣","蓉","蝾","融","螎","蠑","褣","鎔","镕","駥"],"tà tàn":["傝"],suō:["傞","唆","嗍","嗦","娑","摍","桫","梭","睃","簑","簔","羧","莏","蓑","趖","鮻"],dǎi:["傣","歹"],zài:["傤","儎","再","在","扗","洅","載","酨"],gǔ:["傦","古","啒","尳","愲","榖","榾","汩","淈","濲","瀔","牯","皷","皼","盬","瞽","穀","罟","羖","股","脵","臌","薣","蛊","蠱","詁","诂","轂","逧","鈷","钴","餶","馉","鼓","鼔","𦙶"],bīn:["傧","宾","彬","斌","椕","滨","濒","濱","濵","瀕","繽","缤","虨","豩","豳","賓","賔","邠","鑌","镔","霦","顮"],chǔ:["储","儲","杵","椘","楚","楮","檚","濋","璴","础","礎","禇","處","齭","齼","𬺓"],nuó:["傩","儺","挪","梛","橠"],"cān càn":["傪"],lěi:["傫","儡","厽","垒","塁","壘","壨","櫐","灅","癗","矋","磊","礨","耒","蕌","蕾","藟","蘽","蠝","誄","讄","诔","鑸","鸓"],cuī:["催","凗","墔","崔","嵟","慛","摧","榱","獕","磪","鏙"],yōng:["傭","嗈","墉","壅","嫞","庸","廱","慵","拥","擁","滽","灉","牅","痈","癕","癰","臃","邕","郺","鄘","鏞","镛","雍","雝","饔","鱅","鳙","鷛"],"zāo cáo":["傮"],sǒng:["傱","嵷","怂","悚","愯","慫","竦","耸","聳","駷","㧐"],ào:["傲","坳","垇","墺","奡","嫯","岙","岰","嶴","懊","擙","澳","鏊","驁","骜"],"qī còu":["傶"],chuǎng:["傸","磢","闖","闯"],shǎ:["傻","儍"],hàn:["傼","垾","悍","憾","扞","捍","撖","撼","旱","晘","暵","汉","涆","漢","瀚","焊","猂","皔","睅","翰","莟","菡","蛿","蜭","螒","譀","輚","釬","銲","鋎","雗","頷","顄","颔","駻","鶾"],zhāng:["傽","嫜","张","張","彰","慞","暲","樟","漳","獐","璋","章","粻","蔁","蟑","遧","鄣","鏱","餦","騿","鱆","麞"],"yān yàn":["傿","墕","嬮"],"piào biāo":["僄","骠"],liàn:["僆","堜","媡","恋","戀","楝","殓","殮","湅","潋","澰","瀲","炼","煉","瑓","練","纞","练","萰","錬","鍊","鏈","链","鰊","𬶠"],màn:["㵘","僈","墁","幔","慢","曼","漫","澷","熳","獌","縵","缦","蔄","蘰","鄤","鏝","镘","𬜬"],"tàn tǎn":["僋"],yíng:["僌","営","塋","嬴","攍","楹","櫿","溁","溋","滢","潆","濙","濚","濴","瀅","瀛","瀠","瀯","灐","灜","熒","營","瑩","盁","盈","禜","籝","籯","縈","茔","荧","莹","萤","营","萦","萾","蓥","藀","蛍","蝇","蝿","螢","蠅","謍","贏","赢","迎","鎣"],dòng:["働","冻","凍","动","動","姛","戙","挏","栋","棟","湩","硐","胨","胴","腖","迵","霘","駧"],zhuàn:["僎","啭","囀","堟","撰","灷","瑑","篆","腞","蒃","襈","譔","饌","馔"],xiàng:["像","勨","向","嚮","姠","嶑","曏","橡","珦","缿","蟓","衖","襐","象","鐌","項","项","鱌"],shàn:["僐","善","墠","墡","嬗","擅","敾","椫","樿","歚","汕","灗","疝","磰","繕","缮","膳","蟮","蟺","訕","謆","譱","讪","贍","赡","赸","鄯","鐥","饍","騸","骟","鱓","鱔","鳝","𫮃"],"tuí tuǐ":["僓"],zǔn:["僔","噂","撙","譐"],pú:["僕","匍","圤","墣","濮","獛","璞","瞨","穙","莆","菐","菩","葡","蒱","蒲","贌","酺","鏷","镤"],láo:["僗","劳","労","勞","哰","崂","嶗","憥","朥","浶","牢","痨","癆","窂","簩","醪","鐒","铹","顟","髝","𫭼"],chǎng:["僘","厰","廠","敞","昶","氅","鋹","𬬮"],guāng:["僙","光","咣","垙","姯","洸","灮","炗","炚","炛","烡","珖","胱","茪","輄","銧","黆","𨐈"],liáo:["僚","嘹","嫽","寥","寮","尞","屪","嵺","嶚","嶛","廫","憀","敹","暸","橑","獠","璙","疗","療","竂","簝","繚","缭","聊","膋","膫","藔","蟟","豂","賿","蹘","辽","遼","飉","髎","鷯","鹩"],dèng:["僜","凳","墱","嶝","櫈","瞪","磴","覴","邓","鄧","隥"],"chán zhàn zhuàn":["僝"],bō:["僠","嶓","拨","撥","播","波","溊","玻","癶","盋","砵","碆","礡","缽","菠","袰","蹳","鉢","钵","餑","饽","驋","鱍","𬭛"],huì:["僡","匯","卉","喙","嘒","嚖","圚","嬒","寭","屶","屷","彗","彙","彚","徻","恚","恵","惠","慧","憓","懳","晦","暳","槥","橞","檅","櫘","汇","泋","滙","潓","烩","燴","獩","璤","瞺","硊","秽","穢","篲","絵","繪","绘","翙","翽","荟","蔧","蕙","薈","薉","蟪","詯","誨","諱","譓","譿","讳","诲","賄","贿","鐬","闠","阓","靧","頮","顪","颒","餯","𬤝","𬭬"],chuǎn:["僢","喘","舛","荈","踳"],"tiě jiàn":["僣"],sēng:["僧","鬙"],xiàn:["僩","僴","哯","垷","塪","姭","娊","宪","岘","峴","憲","撊","晛","橌","橺","涀","瀗","献","獻","现","現","県","睍","粯","糮","絤","綫","線","线","缐","羡","羨","腺","臔","臽","苋","莧","誢","豏","鋧","錎","限","陥","陷","霰","餡","馅","麲","鼸","𬀪","𪾢"],"yù jú":["僪"],"è wū":["僫"],"tóng zhuàng":["僮"],lǐn:["僯","凛","凜","廩","廪","懍","懔","撛","檁","檩","澟","癛","癝"],gù:["僱","凅","固","堌","崓","崮","故","梏","棝","牿","痼","祻","錮","锢","雇","顧","顾","鯝","鲴"],jiāng:["僵","壃","姜","橿","殭","江","畕","疅","礓","繮","缰","翞","茳","葁","薑","螀","螿","豇","韁","鱂","鳉"],mǐn:["僶","冺","刡","勄","悯","惽","愍","慜","憫","抿","敃","敏","敯","泯","潣","皿","笢","笽","簢","蠠","閔","閩","闵","闽","鰵","鳘","黽"],jìn:["僸","凚","噤","嚍","墐","壗","妗","嬧","搢","晉","晋","枃","殣","浕","浸","溍","濅","濜","烬","煡","燼","琎","瑨","璶","盡","祲","縉","缙","荩","藎","覲","觐","賮","贐","赆","近","进","進","靳","齽"],"jià jie":["價"],qiào:["僺","峭","帩","撬","殻","窍","竅","誚","诮","躈","陗","鞩","韒","髚"],pì:["僻","媲","嫓","屁","澼","甓","疈","譬","闢","鷿","鸊","䴙"],sài:["僿","簺","賽","赛"],"chán tǎn shàn":["儃"],"dāng dàng":["儅","当","闣"],xuān:["儇","喧","塇","媗","宣","愃","愋","揎","昍","暄","煊","煖","瑄","睻","矎","禤","箮","翧","翾","萱","萲","蓒","蕿","藼","蘐","蝖","蠉","諠","諼","譞","谖","軒","轩","鍹","駽","鰚","𫓶","𫍽"],"dān dàn":["儋","擔","瘅"],càn:["儏","澯","灿","燦","璨","粲","薒","謲"],"bīn bìn":["儐"],"án àn":["儑"],tái:["儓","坮","嬯","抬","擡","檯","炱","炲","籉","臺","薹","跆","邰","颱","鮐","鲐"],lán:["儖","兰","囒","婪","岚","嵐","幱","拦","攔","斓","斕","栏","欄","欗","澜","瀾","灆","灡","燣","燷","璼","篮","籃","籣","繿","葻","蓝","藍","蘫","蘭","褴","襕","襤","襴","襽","譋","讕","谰","躝","鑭","镧","闌","阑","韊","𬒗"],"nǐ yì ài yí":["儗"],méng:["儚","幪","曚","朦","橗","檬","氋","溕","濛","甍","甿","盟","礞","艨","莔","萌","蕄","虻","蝱","鄳","鄸","霿","靀","顭","饛","鯍","鸏","鹲","𫑡","㠓"],níng:["儜","凝","咛","嚀","嬣","柠","橣","檸","狞","獰","聍","聹","薴","鑏","鬡","鸋"],qióng:["儝","卭","宆","惸","憌","桏","橩","焪","焭","煢","熍","琼","瓊","睘","穷","穹","窮","竆","笻","筇","舼","茕","藑","藭","蛩","蛬","赹","跫","邛","銎","䓖"],liè:["儠","冽","列","劣","劽","埒","埓","姴","峛","巤","挒","捩","栵","洌","浖","烈","烮","煭","犣","猎","猟","獵","聗","脟","茢","蛚","趔","躐","迾","颲","鬛","鬣","鮤","鱲","鴷","䴕","𫚭"],kuǎng:["儣","夼","懭"],bào:["儤","勽","報","忁","报","抱","曓","爆","犦","菢","虣","蚫","豹","鉋","鑤","铇","骲","髱","鮑","鲍"],biāo:["儦","墂","幖","彪","标","標","滮","瀌","熛","爂","猋","瘭","磦","膘","臕","謤","贆","鏢","鑣","镖","镳","颮","颷","飆","飇","飈","飊","飑","飙","飚","驫","骉","髟"],zǎn:["儧","儹","噆","攅","昝","趱","趲"],háo:["儫","嗥","嘷","噑","嚎","壕","椃","毜","毫","濠","獆","獔","竓","籇","蚝","蠔","譹","豪"],qìng:["儬","凊","庆","慶","櫦","濪","碃","磬","罄","靘"],chèn:["儭","嚫","榇","櫬","疢","衬","襯","讖","谶","趁","趂","齓","齔","龀"],téng:["儯","幐","滕","漛","疼","籐","籘","縢","腾","藤","虅","螣","誊","謄","邆","駦","騰","驣","鰧","䲢"],"lǒng lóng lòng":["儱"],"chán chàn":["儳"],"ráng xiāng":["儴","勷"],"huì xié":["儶"],luó:["儸","攞","椤","欏","猡","玀","箩","籮","罗","羅","脶","腡","萝","蘿","螺","覼","逻","邏","鏍","鑼","锣","镙","饠","騾","驘","骡","鸁"],léi:["儽","嫘","檑","欙","瓃","畾","縲","纍","纝","缧","罍","羸","蔂","蘲","虆","轠","鐳","鑘","镭","雷","靁","鱩","鼺"],"nàng nāng":["儾"],"wù wū":["兀"],yǔn:["允","喗","夽","抎","殒","殞","狁","磒","荺","賱","鈗","阭","陨","隕","霣","馻","齫","齳"],zān:["兂","橵","簪","簮","糌","鐕","鐟","鵤"],yuán:["元","円","原","厡","厵","园","圆","圎","園","圓","垣","塬","媴","嫄","援","榞","榬","橼","櫞","沅","湲","源","溒","爰","猨","猿","笎","緣","縁","缘","羱","茒","薗","蝝","蝯","螈","袁","褤","謜","轅","辕","邍","邧","酛","鈨","鎱","騵","魭","鶢","鶰","黿","鼋","𫘪"],xiōng:["兄","兇","凶","匂","匈","哅","忷","恟","汹","洶","胷","胸","芎","訩","詾","讻"],chōng:["充","嘃","忡","憃","憧","摏","沖","浺","珫","罿","翀","舂","艟","茺","衝","蹖","㳘"],zhào:["兆","垗","旐","曌","枛","櫂","照","燳","狣","瞾","笊","罀","罩","羄","肁","肇","肈","詔","诏","赵","趙","鮡","𬶐"],"duì ruì yuè":["兊","兌","兑"],kè:["克","刻","勀","勊","堁","娔","客","恪","愙","氪","溘","碦","緙","缂","艐","衉","課","课","錁","锞","騍","骒"],tù:["兎","兔","堍","迌","鵵"],dǎng:["党","攩","欓","譡","讜","谠","黨","𣗋"],dōu:["兜","兠","唗","橷","篼","蔸"],huǎng:["兤","奛","幌","怳","恍","晄","炾","熀","縨","詤","謊","谎"],rù:["入","嗕","媷","扖","杁","洳","溽","縟","缛","蓐","褥","鳰"],nèi:["內","氝","氞","錗"],"yú shù":["兪"],"liù lù":["六"],han:["兯","爳"],tiān:["兲","天","婖","添","酟","靔","靝","黇"],"xīng xìng":["兴"],diǎn:["典","嚸","奌","婰","敟","椣","点","碘","蒧","蕇","踮","點"],"zī cí":["兹"],jiān:["兼","冿","囏","坚","堅","奸","姦","姧","尖","幵","惤","戋","戔","搛","椾","樫","櫼","歼","殱","殲","湔","瀐","瀸","煎","熞","熸","牋","瑊","睷","礛","礷","笺","箋","緘","縑","缄","缣","肩","艰","艱","菅","菺","葌","蒹","蔪","蕑","蕳","虃","譼","豜","鑯","雃","鞯","韀","韉","餰","馢","鰔","鰜","鰹","鲣","鳒","鵑","鵳","鶼","鹣","麉"],shòu:["兽","受","售","壽","夀","寿","授","狩","獣","獸","痩","瘦","綬","绶","膄"],jì:["兾","冀","剂","剤","劑","勣","坖","垍","塈","妓","季","寂","寄","廭","彑","徛","忌","悸","惎","懻","技","旡","既","旣","暨","暩","曁","梞","檕","檵","洎","漃","漈","瀱","痵","癠","禝","稩","稷","穄","穊","穧","紀","継","績","繋","繼","继","绩","罽","臮","芰","茍","茤","葪","蓟","蔇","薊","蘎","蘮","蘻","裚","襀","覬","觊","計","記","誋","计","记","跡","跽","蹟","迹","际","際","霁","霽","驥","骥","髻","鬾","魝","魥","鯚","鯽","鰶","鰿","鱀","鱭","鲚","鲫","鵋","鷑","齌","𪟝","𬶨","𬶭"],jiōng:["冂","冋","坰","埛","扃","蘏","蘔","駉","駫","𬳶"],mào:["冃","冐","媢","帽","愗","懋","暓","柕","楙","毷","瑁","皃","眊","瞀","耄","茂","萺","蝐","袤","覒","貌","貿","贸","鄚","鄮"],rǎn:["冄","冉","姌","媣","染","珃","苒","蒅","䎃"],"nèi nà":["内"],gāng:["冈","冮","刚","剛","堈","堽","岡","掆","摃","棡","牨","犅","疘","綱","纲","缸","罁","罡","肛","釭","鎠","㭎"],cè:["冊","册","厕","厠","夨","廁","恻","惻","憡","敇","测","測","笧","策","筞","筴","箣","荝","萗","萴","蓛"],guǎ:["冎","剐","剮","叧","寡"],"mào mò":["冒"],gòu:["冓","啂","坸","垢","够","夠","媾","彀","搆","撀","构","構","煹","覯","觏","訽","詬","诟","購","购","遘","雊"],xǔ:["冔","喣","暊","栩","珝","盨","糈","詡","諿","诩","鄦","醑"],mì:["冖","冪","嘧","塓","宻","密","峚","幂","幎","幦","怽","榓","樒","櫁","汨","淧","滵","漞","濗","熐","羃","蔤","蜜","覓","覔","覛","觅","謐","谧","鼏"],"yóu yín":["冘"],xiě:["写","冩","藛"],jūn:["军","君","均","桾","汮","皲","皸","皹","碅","莙","蚐","袀","覠","軍","鈞","銁","銞","鍕","钧","頵","鮶","鲪","麏"],mí:["冞","擟","瀰","爢","猕","獼","祢","禰","縻","蒾","藌","蘪","蘼","袮","詸","謎","迷","醚","醾","醿","釄","镾","鸍","麊","麋","麛"],"guān guàn":["冠","覌","観","觀","观"],měng:["冡","勐","懵","掹","猛","獴","艋","蜢","蠓","錳","锰","鯭","鼆"],zhǒng:["冢","塚","尰","歱","煄","瘇","肿","腫","踵"],zuì:["冣","嶵","晬","最","栬","槜","檇","檌","祽","絊","罪","蕞","辠","酔","酻","醉","錊"],yuān:["冤","剈","囦","嬽","寃","棩","淵","渁","渆","渊","渕","灁","眢","肙","葾","蒬","蜎","蜵","駌","鳶","鴛","鵷","鸢","鸳","鹓","鼘","鼝"],míng:["冥","名","明","暝","朙","榠","洺","溟","猽","眀","眳","瞑","茗","螟","覭","詺","鄍","銘","铭","鳴","鸣"],kòu:["冦","叩","宼","寇","扣","敂","滱","窛","筘","簆","蔲","蔻","釦","鷇"],tài:["冭","太","夳","忲","态","態","汰","汱","泰","溙","肽","舦","酞","鈦","钛"],"féng píng":["冯","馮"],"chōng chòng":["冲"],kuàng:["况","圹","壙","岲","懬","旷","昿","曠","框","況","爌","眖","眶","矿","砿","礦","穬","絋","絖","纊","纩","貺","贶","軦","邝","鄺","鉱","鋛","鑛","黋"],lěng:["冷"],pàn:["冸","判","叛","沜","泮","溿","炍","牉","畔","盼","聁","袢","襻","詊","鋬","鑻","頖","鵥"],fā:["冹","彂","沷","発","發"],xiǎn:["冼","尟","尠","崄","嶮","幰","攇","显","櫶","毨","灦","烍","燹","狝","猃","獫","獮","玁","禒","筅","箲","藓","蘚","蚬","蜆","譣","赻","跣","鍌","险","険","險","韅","顕","顯","㬎"],qià:["冾","圶","帢","恰","殎","洽","硈","胢","髂"],"jìng chēng":["净","凈","淨"],sōu:["凁","嗖","廀","廋","捜","搜","摉","溲","獀","艘","蒐","螋","鄋","醙","鎪","锼","颼","飕","餿","馊","騪"],měi:["凂","媄","媺","嬍","嵄","挴","毎","每","浼","渼","燘","美","躾","鎂","镁","黣"],tú:["凃","図","图","圖","圗","塗","屠","峹","嵞","庩","廜","徒","悇","揬","涂","瘏","筡","腯","荼","蒤","跿","途","酴","鈯","鍎","馟","駼","鵌","鶟","鷋","鷵","𬳿"],zhǔn:["准","凖","埻","準","𬘯"],"liáng liàng":["凉","涼","量"],diāo:["凋","刁","刟","叼","奝","弴","彫","汈","琱","碉","簓","虭","蛁","貂","錭","雕","鮉","鯛","鲷","鵰","鼦"],còu:["凑","湊","腠","輳","辏"],ái:["凒","啀","嘊","捱","溰","癌","皑","皚"],duó:["凙","剫","夺","奪","痥","踱","鈬","鐸","铎"],dú:["凟","匵","嬻","椟","櫝","殰","涜","牍","牘","犊","犢","独","獨","瓄","皾","裻","読","讀","讟","豄","贕","錖","鑟","韇","韣","韥","騳","髑","黩","黷"],"jǐ jī":["几"],fán:["凡","凢","凣","匥","墦","杋","柉","棥","樊","瀿","烦","煩","燔","璠","矾","礬","笲","籵","緐","羳","舤","舧","薠","蘩","蠜","襎","蹯","釩","鐇","鐢","钒","鷭","𫔍","𬸪"],jū:["凥","匊","娵","婮","居","崌","抅","挶","掬","梮","椐","檋","毩","毱","泃","涺","狙","琚","疽","砠","罝","腒","艍","蜛","裾","諊","跔","踘","躹","陱","雎","鞠","鞫","駒","驹","鮈","鴡","鶋","𬶋"],"chù chǔ":["処","处"],zhǐ:["凪","劧","咫","址","坧","帋","恉","扺","指","旨","枳","止","汦","沚","洔","淽","疻","砋","祉","秖","紙","纸","芷","藢","衹","襧","訨","趾","軹","轵","酯","阯","黹"],píng:["凭","凴","呯","坪","塀","岼","帡","帲","幈","平","慿","憑","枰","洴","焩","玶","瓶","甁","竮","箳","簈","缾","荓","萍","蓱","蚲","蛢","評","评","軿","輧","郱","鮃","鲆"],kǎi:["凯","凱","剀","剴","垲","塏","恺","愷","慨","暟","蒈","輆","鍇","鎧","铠","锴","闓","闿","颽"],gān:["凲","坩","尲","尴","尶","尷","柑","泔","漧","玕","甘","疳","矸","竿","筸","粓","肝","苷","迀","酐","魐"],"kǎn qiǎn":["凵"],tū:["凸","堗","嶀","捸","涋","湥","痜","禿","秃","突","葖","鋵","鵚","鼵","㻬"],"āo wā":["凹"],chū:["出","初","岀","摴","榋","樗","貙","齣","䢺","䝙"],dàng:["凼","圵","垱","壋","档","檔","氹","璗","瓽","盪","瞊","砀","碭","礑","簜","荡","菪","蕩","蘯","趤","逿","雼","𬍡"],hán:["函","凾","含","圅","娢","寒","崡","晗","梒","浛","涵","澏","焓","琀","甝","筨","蜬","邗","邯","鋡","韓","韩"],záo:["凿","鑿"],dāo:["刀","刂","忉","氘","舠","螩","釖","魛","鱽"],chuāng:["刅","摐","牎","牕","疮","瘡","窓","窗","窻"],"fēn fèn":["分"],"qiè qiē":["切"],kān:["刊","勘","堪","戡","栞","龕","龛"],cǔn:["刌","忖"],chú:["刍","厨","幮","廚","橱","櫉","櫥","滁","犓","篨","耡","芻","蒢","蒭","蜍","蟵","豠","趎","蹰","躇","躕","鉏","鋤","锄","除","雏","雛","鶵"],"huà huá":["划"],lí:["刕","剓","剺","劙","厘","喱","嚟","囄","嫠","孷","廲","悡","梨","梸","棃","漓","灕","犁","犂","狸","琍","璃","瓈","盠","睝","离","穲","竰","筣","篱","籬","糎","縭","缡","罹","艃","荲","菞","蓠","蔾","藜","蘺","蜊","蟍","蟸","蠫","褵","謧","貍","醨","鋫","錅","鏫","鑗","離","驪","骊","鯏","鯬","鱺","鲡","鵹","鸝","鹂","黎","黧","㰀"],yuè:["刖","嬳","岄","岳","嶽","恱","悅","悦","戉","抈","捳","月","樾","瀹","爚","玥","礿","禴","篗","籆","籥","籰","粤","粵","蘥","蚎","蚏","説","越","跀","跃","躍","軏","鈅","鉞","鑰","钺","閱","閲","阅","鸑","鸙","黦","龠","𫐄","𬸚"],liú:["刘","劉","嚠","媹","嵧","旈","旒","榴","橊","流","浏","瀏","琉","瑠","瑬","璢","畄","留","畱","疁","瘤","癅","硫","蒥","蓅","蟉","裗","鎏","鏐","鐂","镠","飀","飅","飗","駠","駵","騮","驑","骝","鰡","鶹","鹠","麍"],zé:["则","則","啧","嘖","嫧","帻","幘","択","樍","歵","沢","泎","溭","皟","瞔","矠","礋","箦","簀","舴","蔶","蠌","襗","謮","賾","赜","迮","鸅","齚","齰"],"chuàng chuāng":["创","創"],qù:["刞","厺","去","閴","闃","阒","麮","鼁"],"bié biè":["別","别"],"páo bào":["刨"],"chǎn chàn":["刬","剗","幝"],guā:["刮","劀","桰","歄","煱","瓜","胍","踻","颪","颳","騧","鴰","鸹"],gēng:["刯","庚","椩","浭","焿","畊","絚","羮","羹","耕","菮","賡","赓","鶊","鹒"],dào:["到","噵","悼","椡","檤","燾","瓙","盗","盜","稲","稻","纛","翿","艔","菿","衜","衟","軇","道"],chuàng:["刱","剏","剙","怆","愴"],kū:["刳","哭","圐","堀","枯","桍","矻","窟","跍","郀","骷","鮬"],duò:["刴","剁","墯","尮","惰","憜","挅","桗","舵","跥","跺","陊","陏","飿","饳","鵽"],"shuā shuà":["刷"],"quàn xuàn":["券"],"chà shā":["刹","剎"],"cì cī":["刺"],guì:["刽","刿","劊","劌","撌","攰","昋","桂","椢","槶","樻","櫃","猤","禬","筀","蓕","襘","貴","贵","跪","鐀","鑎","鞼","鱖","鱥"],lóu:["剅","娄","婁","廔","楼","樓","溇","漊","熡","耧","耬","艛","蒌","蔞","蝼","螻","謱","軁","遱","鞻","髅","髏","𪣻"],cuò:["剉","剒","厝","夎","挫","措","棤","莝","莡","蓌","逪","銼","錯","锉","错"],"xiāo xuē":["削"],"kēi kè":["剋","尅"],"là lá":["剌"],tī:["剔","梯","踢","銻","锑","鷈","鷉","䏲","䴘"],pōu:["剖"],wān:["剜","塆","壪","帵","弯","彎","湾","潫","灣","睕","蜿","豌"],"bāo bō":["剝","剥"],duō:["剟","咄","哆","嚉","多","夛","掇","毲","畓","裰","㙍"],qíng:["剠","勍","夝","情","擎","晴","暒","棾","樈","檠","氰","甠","硘","葝","黥"],"yǎn shàn":["剡"],"dū zhuó":["剢"],yān:["剦","嫣","崦","嶖","恹","懕","懨","樮","淊","淹","漹","烟","焉","焑","煙","珚","篶","胭","臙","菸","鄢","醃","閹","阉","黫"],huō:["剨","劐","吙","攉","秴","耠","锪","騞","𬴃"],shèng:["剩","剰","勝","圣","墭","嵊","晠","榺","橳","琞","聖","蕂","貹","賸"],"duān zhì":["剬"],wū:["剭","呜","嗚","圬","屋","巫","弙","杇","歍","汙","汚","污","洿","烏","窏","箼","螐","誈","誣","诬","邬","鄔","鎢","钨","鰞","鴮"],gē:["割","哥","圪","彁","戈","戓","戨","歌","滒","犵","肐","袼","謌","鎶","鴚","鴿","鸽"],"dá zhá":["剳"],chuán:["剶","暷","椽","篅","舡","舩","船","輲","遄"],"tuán zhuān":["剸","漙","篿"],"lù jiū":["剹"],pēng:["剻","匉","嘭","怦","恲","抨","梈","烹","砰","軯","駍"],piāo:["剽","勡","慓","旚","犥","翲","螵","飃","飄","飘","魒"],kōu:["剾","彄","抠","摳","眍","瞘","芤","𫸩"],"jiǎo chāo":["剿","劋","勦","摷"],qiāo:["劁","勪","墝","幧","敲","橇","毃","燆","硗","磽","繑","趬","跷","踍","蹺","蹻","郻","鄡","鄥","鍫","鍬","鐰","锹","頝"],"huá huà":["劃"],"zhā zhá":["劄"],"pī pǐ":["劈","悂"],tāng:["劏","嘡","羰","薚","蝪","蹚","鞺","鼞"],chán:["劖","嚵","壥","婵","嬋","巉","廛","棎","毚","湹","潹","潺","澶","瀍","瀺","煘","獑","磛","緾","纏","纒","缠","艬","蝉","蟐","蟬","蟾","誗","讒","谗","躔","鄽","酁","鋋","鑱","镵","饞","馋"],zuān:["劗","躜","躦","鉆","鑚"],mó:["劘","嫫","嬤","嬷","尛","摹","擵","橅","糢","膜","藦","蘑","謨","謩","谟","饃","饝","馍","髍","魔","魹"],zhú:["劚","斸","曯","欘","灟","炢","烛","燭","爥","瘃","竹","笁","笜","舳","茿","蓫","蠋","蠾","躅","逐","逫","钃","鱁"],quàn:["劝","勧","勸","牶","韏"],"jìn jìng":["劤","劲","勁"],kēng:["劥","坑","牼","硁","硜","誙","銵","鍞","鏗","铿","阬"],"xié liè":["劦"],"zhù chú":["助"],nǔ:["努","弩","砮","胬"],shào:["劭","卲","哨","潲","紹","綤","绍","袑","邵"],miǎo:["劰","杪","淼","渺","眇","秒","篎","緲","缈","藐","邈"],kǒu:["劶","口"],wā:["劸","娲","媧","屲","挖","攨","洼","溛","漥","瓾","畖","穵","窊","窪","蛙","韈","鼃"],kuāng:["劻","匡","匩","哐","恇","洭","筐","筺","誆","诓","軭","邼"],hé:["劾","咊","啝","姀","峆","敆","曷","柇","楁","毼","河","涸","渮","澕","熆","皬","盇","盉","盍","盒","禾","篕","籺","粭","翮","菏","萂","覈","訸","詥","郃","釛","鉌","鑉","閡","闔","阂","阖","鞨","頜","餄","饸","魺","鹖","麧","齕","龁","龢","𬌗"],gào:["勂","吿","告","峼","祮","祰","禞","筶","誥","诰","郜","鋯","锆"],"bó bèi":["勃"],láng:["勆","嫏","廊","斏","桹","榔","樃","欴","狼","琅","瑯","硠","稂","艆","蓈","蜋","螂","躴","郒","郞","鋃","鎯","锒"],xūn:["勋","勛","勲","勳","嚑","坃","埙","塤","壎","壦","曛","燻","獯","矄","纁","臐","薫","薰","蘍","醺","𫄸"],"juàn juān":["勌","瓹"],"lè lēi":["勒"],kài:["勓","炌","烗","鎎"],"wěng yǎng":["勜"],qín:["勤","嗪","噙","嶜","庈","懃","懄","捦","擒","斳","檎","澿","珡","琴","琹","瘽","禽","秦","耹","芩","芹","菦","螓","蠄","鈙","鈫","雂","靲","鳹","鵭"],jiàng:["勥","匞","匠","嵹","弜","弶","摾","櫤","洚","滰","犟","糡","糨","絳","绛","謽","酱","醤","醬"],fān:["勫","嬏","帆","幡","忛","憣","旙","旛","繙","翻","藩","轓","颿","飜","鱕"],juān:["勬","姢","娟","捐","涓","蠲","裐","鎸","鐫","镌","鹃"],"tóng dòng":["勭","烔","燑","狪"],lǜ:["勴","垏","嵂","律","慮","氯","滤","濾","爈","箻","綠","繂","膟","葎","虑","鑢"],chè:["勶","坼","彻","徹","掣","撤","澈","烢","爡","瞮","硩","聅","迠","頙","㬚"],sháo:["勺","玿","韶"],"gōu gòu":["勾"],cōng:["匆","囪","囱","忩","怱","悤","暰","樬","漗","瑽","璁","瞛","篵","繱","聡","聦","聪","聰","苁","茐","葱","蓯","蔥","蟌","鍯","鏓","鏦","騘","驄","骢"],"táo yáo":["匋","陶"],páo:["匏","咆","垉","庖","爮","狍","袍","褜","軳","鞄","麅"],dá:["匒","妲","怛","炟","燵","畣","笪","羍","荙","薘","蟽","詚","达","迏","迖","迚","逹","達","鐽","靼","鞑","韃","龖","龘","𫟼"],"huà huā":["化"],"běi bèi":["北"],nǎo:["匘","垴","堖","嫐","恼","悩","惱","瑙","碯","脑","脳","腦"],"chí shi":["匙"],fāng:["匚","堏","方","淓","牥","芳","邡","鈁","錺","钫","鴋"],zā:["匝","咂","帀","沞","臜","臢","迊","鉔","魳"],qiè:["匧","厒","妾","怯","悏","惬","愜","挈","穕","窃","竊","笡","箧","篋","籡","踥","鍥","锲","鯜"],"zāng cáng":["匨"],fěi:["匪","奜","悱","棐","榧","篚","翡","蕜","誹","诽"],"kuì guì":["匮","匱"],suǎn:["匴"],pǐ:["匹","噽","嚭","圮","庀","痞","癖","脴","苉","銢","鴄"],"qū ōu":["区","區"],"kē qià":["匼"],"yǎn yàn":["匽","棪"],biǎn:["匾","惼","揙","碥","稨","窆","藊","褊","貶","贬","鴘"],nì:["匿","堄","嫟","嬺","惄","愵","昵","暱","氼","眤","睨","縌","胒","腻","膩","逆","𨺙"],niàn:["卄","唸","埝","廿","念","惗","艌"],sà:["卅","櫒","脎","萨","蕯","薩","鈒","隡","颯","飒","馺"],zú:["卆","哫","崪","族","箤","足","踤","镞"],shēng:["升","呏","声","斘","昇","曻","枡","殅","泩","湦","焺","牲","珄","生","甥","竔","笙","聲","鉎","鍟","阩","陞","陹","鵿","鼪"],wàn:["卍","卐","忨","杤","瞣","脕","腕","萬","蟃","贎","輐","錽","𬇕"],"huá huà huā":["华","華"],bēi:["卑","悲","揹","杯","桮","盃","碑","藣","鵯","鹎"],"zú cù":["卒"],"dān shàn chán":["单","單"],"nán nā":["南"],"shuài lǜ":["卛"],"bǔ bo pú":["卜"],"kuàng guàn":["卝"],biàn:["卞","变","変","峅","弁","徧","忭","抃","昪","汳","汴","玣","艑","苄","覍","諚","變","辡","辧","辨","辩","辫","辮","辯","遍","釆","𨚕"],bǔ:["卟","哺","捕","补","補","鸔","𬷕"],"zhàn zhān":["占","覱"],"kǎ qiǎ":["卡"],lú:["卢","嚧","垆","壚","庐","廬","曥","枦","栌","櫨","泸","瀘","炉","爐","獹","玈","瓐","盧","矑","籚","纑","罏","胪","臚","舮","舻","艫","芦","蘆","蠦","轤","轳","鈩","鑪","顱","颅","馿","髗","魲","鱸","鲈","鸕","鸬","黸","𬬻"],lǔ:["卤","塷","掳","擄","樐","橹","櫓","氌","滷","澛","瀂","硵","磠","穞","艣","艪","蓾","虏","虜","鏀","鐪","鑥","镥","魯","鲁","鹵"],guà:["卦","啩","挂","掛","罣","褂","詿","诖"],"áng yǎng":["卬"],yìn:["印","垽","堷","廕","慭","憖","憗","懚","洕","湚","猌","癊","胤","茚","酳","鮣","䲟"],què:["却","卻","塙","崅","悫","愨","慤","搉","榷","燩","琷","皵","确","確","礭","闋","阕","鵲","鹊","𬒈"],luǎn:["卵"],"juàn juǎn":["卷","巻"],"chǎng ān hàn":["厂"],"wěi yán":["厃"],tīng:["厅","厛","听","庁","廰","廳","汀","烃","烴","綎","耓","聴","聼","聽","鞓","𬘩"],"zhé zhái":["厇"],"hàn àn":["厈","屽"],yǎ:["厊","唖","庌","痖","瘂","蕥"],shè:["厍","厙","弽","慑","慴","懾","摂","欇","涉","涻","渉","滠","灄","社","舎","蔎","蠂","設","设","赦","騇","麝"],dǐ:["厎","呧","坘","弤","抵","拞","掋","牴","砥","菧","觝","詆","诋","軧","邸","阺","骶","鯳"],"zhǎ zhǎi":["厏"],páng:["厐","嫎","庞","徬","舽","螃","逄","鰟","鳑","龎","龐"],"zhì shī":["厔"],máng:["厖","吂","哤","娏","忙","恾","杗","杧","汒","浝","牻","痝","盲","硭","笀","芒","茫","蘉","邙","釯","鋩","铓","駹"],zuī:["厜","樶","纗","蟕"],"shà xià":["厦","廈"],áo:["厫","嗷","嗸","廒","敖","滶","獒","獓","璈","翱","翶","翺","聱","蔜","螯","謷","謸","遨","鏖","隞","鰲","鳌","鷔","鼇"],"lán qiān":["厱"],"sī mǒu":["厶"],"gōng hóng":["厷"],"lín miǎo":["厸"],"qiú róu":["厹"],dū:["厾","嘟","督","醏"],"xiàn xuán":["县","縣"],"cān shēn cēn sān":["参","參","叄","叅"],"ài yǐ":["叆"],"chā chà chǎ chá":["叉"],shuāng:["双","孀","孇","欆","礵","艭","雙","霜","騻","驦","骦","鷞","鸘","鹴"],shōu:["収","收"],guái:["叏"],bá:["叐","妭","抜","拔","炦","癹","胈","茇","菝","詙","跋","軷","魃","鼥"],"fā fà":["发"],"zhuó yǐ lì jué":["叕"],qǔ:["取","娶","竬","蝺","詓","齲","龋"],"jiǎ xiá":["叚","徦"],"wèi yù":["叞","尉","蔚"],dié:["叠","垤","堞","峌","幉","恎","惵","戜","曡","殜","氎","牃","牒","瓞","畳","疂","疉","疊","碟","絰","绖","耊","耋","胅","艓","苵","蜨","蝶","褋","詄","諜","谍","跮","蹀","迭","镻","鰈","鲽","鴩","𫶇"],ruì:["叡","枘","汭","瑞","睿","芮","蚋","蜹","銳","鋭","锐"],"jù gōu":["句"],lìng:["另","呤","炩","蘦"],"dāo dáo tāo":["叨"],"zhī zhǐ":["只"],jiào:["叫","呌","嘂","嘦","噍","嬓","斍","斠","滘","漖","獥","珓","皭","窖","藠","訆","譥","趭","較","轎","轿","较","酵","醮","釂"],"zhào shào":["召"],"kě kè":["可"],"tái tāi":["台","苔"],pǒ:["叵","尀","笸","箥","鉕","钷","駊"],"yè xié":["叶"],"hào háo":["号"],tàn:["叹","嘆","探","歎","湠","炭","碳","舕"],"hōng hóng":["叿"],miē:["吀","咩","哶","孭"],"xū yū yù":["吁"],chī:["吃","哧","喫","嗤","噄","妛","媸","彨","彲","摛","攡","殦","瓻","痴","癡","眵","瞝","笞","粚","胵","蚩","螭","訵","魑","鴟","鵄","鸱","黐","齝","𫄨"],"xuān sòng":["吅"],yāo:["吆","喓","夭","妖","幺","楆","殀","祅","腰","葽","訞","邀","鴁","鴢","㙘"],zǐ:["吇","姉","姊","子","杍","梓","榟","橴","滓","矷","秭","笫","籽","紫","耔","虸","訿","釨"],"hé gě":["合","鲄"],"cùn dòu":["吋"],"tóng tòng":["同"],"tǔ tù":["吐","唋"],"zhà zhā":["吒","奓"],"xià hè":["吓"],"ā yā":["吖"],"ma má mǎ":["吗"],lìn:["吝","恡","悋","橉","焛","甐","膦","蔺","藺","賃","赁","蹸","躏","躙","躪","轥","閵"],tūn:["吞","暾","朜","焞"],"bǐ pǐ":["吡"],qìn:["吢","吣","唚","抋","揿","搇","撳","沁","瀙","菣","藽"],"jiè gè":["吤"],"fǒu pǐ":["否"],"ba bā":["吧"],dūn:["吨","噸","墩","墪","惇","撉","撴","犜","獤","礅","蜳","蹾","驐"],fēn:["吩","帉","昐","朆","梤","棻","氛","竕","紛","纷","翂","芬","衯","訜","躮","酚","鈖","雰","餴","饙","馚"],"é huā":["吪"],"kēng háng":["吭","妔"],shǔn:["吮"],"zhī zī":["吱"],"yǐn shěn":["吲"],wú:["吳","吴","呉","墲","峿","梧","橆","毋","洖","浯","無","珸","璑","祦","芜","茣","莁","蕪","蜈","蟱","譕","郚","鋙","铻","鯃","鵐","鷡","鹀","鼯"],"chǎo chāo":["吵"],"nà nè":["吶"],"xuè chuò jué":["吷"],chuī:["吹","炊","龡"],"dōu rú":["吺"],hǒu:["吼","犼"],"hōng hǒu ōu":["吽"],"wú yù":["吾"],"ya yā":["呀"],"è e":["呃"],dāi:["呆","懛","獃"],"mèn qǐ":["呇"],hōng:["呍","嚝","揈","灴","烘","焢","硡","薨","訇","谾","軣","輷","轟","轰","鍧"],nà:["呐","捺","笝","納","纳","肭","蒳","衲","豽","貀","軜","郍","鈉","钠","靹","魶"],"tūn tiān":["呑"],"fǔ ḿ":["呒","嘸"],"dāi tǎi":["呔"],"ǒu ōu òu":["呕"],"bài bei":["呗"],"yuán yún yùn":["员","員"],guō:["呙","啯","嘓","埚","堝","墎","崞","彉","彍","懖","猓","瘑","聒","蝈","蟈","郭","鈛","鍋","锅"],"huá qì":["呚"],"qiàng qiāng":["呛","跄"],shī:["呞","失","尸","屍","师","師","施","浉","湤","湿","溮","溼","濕","狮","獅","瑡","絁","葹","蒒","蓍","虱","蝨","褷","襹","詩","诗","邿","釃","鉇","鍦","鯴","鰤","鲺","鳲","鳾","鶳","鸤","䴓","𫚕"],juǎn:["呟","埍","臇","菤","錈","锩"],pěn:["呠","翸"],"wěn mǐn":["呡"],"ne ní":["呢"],"ḿ m̀ móu":["呣"],rán:["呥","嘫","然","燃","繎","肰","蚦","蚺","衻","袇","袡","髥","髯"],"tiè chè":["呫"],"qì zhī":["呮"],"zǐ cī":["呰"],"guā gū guǎ":["呱"],"cī zī":["呲"],"hǒu xǔ gòu":["呴"],"hē ā á ǎ à a":["呵"],náo:["呶","夒","峱","嶩","巎","挠","撓","猱","硇","蛲","蟯","詉","譊","鐃","铙"],"xiā gā":["呷"],pēi:["呸","怌","肧","胚","衃","醅"],"háo xiāo":["呺"],mìng:["命","掵"],"dá dàn":["呾"],"zuǐ jǔ":["咀"],"xián gān":["咁"],pǒu:["咅","哣","犃"],"yǎng yāng":["咉"],"zǎ zé zhā":["咋"],"hé hè huó huò hú":["和"],hāi:["咍"],dā:["咑","哒","噠","墶","搭","撘","耷","褡","鎝","𨱏"],"kǎ kā":["咔"],gū:["咕","唂","唃","姑","嫴","孤","巬","巭","柧","橭","沽","泒","稒","笟","箍","箛","篐","罛","苽","菇","菰","蓇","觚","軱","軲","轱","辜","酤","鈲","鮕","鴣","鸪"],"kā gā":["咖"],zuo:["咗"],lóng:["咙","嚨","嶐","巃","巄","昽","曨","朧","栊","槞","櫳","湰","滝","漋","爖","珑","瓏","癃","眬","矓","砻","礱","礲","窿","竜","聋","聾","胧","茏","蘢","蠪","蠬","襱","豅","鏧","鑨","霳","靇","驡","鸗","龍","龒","龙"],"xiàn xián":["咞"],qì:["咠","唭","噐","器","夡","弃","憇","憩","暣","棄","欫","气","気","氣","汔","汽","泣","湆","湇","炁","甈","盵","矵","碛","碶","磜","磧","罊","芞","葺","藒","蟿","訖","讫","迄","鐑"],"xì dié":["咥"],"liē liě lié lie":["咧"],zī:["咨","嗞","姕","姿","孜","孳","孶","崰","嵫","栥","椔","淄","湽","滋","澬","玆","禌","秶","粢","紎","緇","緕","纃","缁","茊","茲","葘","諮","谘","貲","資","赀","资","赼","趑","趦","輜","輺","辎","鄑","鈭","錙","鍿","鎡","锱","镃","頾","頿","髭","鯔","鰦","鲻","鶅","鼒","齍","齜","龇"],mī:["咪"],"jī xī qià":["咭"],"gē luò kǎ lo":["咯"],"shù xún":["咰"],"zán zá zǎ zan":["咱"],"hāi ké":["咳"],huī:["咴","噅","噕","婎","媈","幑","徽","恢","拻","挥","揮","晖","暉","楎","洃","瀈","灰","灳","烣","睳","禈","翚","翬","蘳","袆","褘","詼","诙","豗","輝","辉","鰴","麾","㧑"],"huài shì":["咶"],táo:["咷","啕","桃","檮","洮","淘","祹","綯","绹","萄","蜪","裪","迯","逃","醄","鋾","鞀","鞉","饀","駣","騊","鼗","𫘦"],xián:["咸","啣","娴","娹","婱","嫌","嫺","嫻","弦","挦","撏","涎","湺","澖","甉","痫","癇","癎","絃","胘","舷","藖","蚿","蛝","衔","衘","誸","諴","賢","贒","贤","輱","醎","銜","鑦","閑","闲","鷳","鷴","鷼","鹇","鹹","麙","𫍯"],"è àn":["咹"],"xuān xuǎn":["咺","烜"],"wāi hé wǒ guǎ guō":["咼"],"yàn yè yān":["咽"],āi:["哀","哎","埃","溾","銰","鎄","锿"],pǐn:["品","榀"],shěn:["哂","婶","嬸","审","宷","審","弞","曋","渖","瀋","瞫","矤","矧","覾","訠","諗","讅","谂","谉","邥","頣","魫"],"hǒng hōng hòng":["哄"],"wā wa":["哇"],"hā hǎ hà":["哈"],zāi:["哉","栽","渽","溨","災","灾","烖","睵","賳"],"dì diè":["哋"],pài:["哌","沠","派","渒","湃","蒎","鎃"],"gén hěn":["哏"],"yǎ yā":["哑","雅"],"yuě huì":["哕","噦"],nián:["哖","年","秊","秥","鮎","鯰","鲇","鲶","鵇","黏"],"huá huā":["哗","嘩"],"jì jiē zhāi":["哜","嚌"],mōu:["哞"],"yō yo":["哟","喲"],lòng:["哢","梇","贚"],"ò ó é":["哦"],"lī lǐ li":["哩"],"nǎ na nǎi né něi":["哪"],hè:["哬","垎","壑","寉","惒","焃","煂","燺","爀","癋","碋","翯","褐","謞","賀","贺","赫","靍","靎","靏","鶴","鸖","鹤"],"bō pò bā":["哱"],zhé:["哲","啠","喆","嚞","埑","悊","摺","晢","晣","歽","矺","砓","磔","籷","粍","虴","蛰","蟄","袩","詟","謫","謺","讁","讋","谪","輒","輙","轍","辄","辙","鮿"],"liàng láng":["哴"],"liè lǜ":["哷"],hān:["哻","憨","蚶","谽","酣","頇","顸","馠","魽","鼾"],"hēng hng":["哼"],gěng:["哽","埂","峺","挭","梗","綆","绠","耿","莄","郠","骾","鯁","鲠","𬒔"],"chuò yuè":["哾"],"gě jiā":["哿"],"bei bài":["唄"],"hán hàn":["唅"],chún:["唇","浱","湻","滣","漘","犉","純","纯","脣","莼","蒓","蓴","醇","醕","錞","陙","鯙","鶉","鹑","𬭚"],"ài āi":["唉"],"jiá qiǎn":["唊"],"yán dàn xián":["唌"],chē:["唓","砗","硨","莗","蛼"],"wú ńg ń":["唔"],zào:["唕","唣","噪","慥","梍","灶","煰","燥","皁","皂","竃","竈","簉","艁","譟","趮","躁","造","𥖨"],dí:["唙","啇","嘀","嚁","嫡","廸","敌","敵","梑","涤","滌","狄","笛","籴","糴","苖","荻","蔋","蔐","藡","覿","觌","豴","迪","靮","頔","馰","髢","鸐","𬱖"],"gòng hǒng gǒng":["唝","嗊"],dóu:["唞"],"lào láo":["唠","嘮","憦"],huàn:["唤","喚","奂","奐","宦","嵈","幻","患","愌","换","換","擐","攌","梙","槵","浣","涣","渙","漶","澣","烉","焕","煥","瑍","痪","瘓","睆","肒","藧","豢","轘","逭","鯇","鯶","鰀","鲩"],léng:["唥","塄","楞","碐","薐"],"wō wěi":["唩"],fěng:["唪","覂","諷","讽"],"yín jìn":["唫"],"hǔ xià":["唬"],wéi:["唯","围","圍","壝","峗","峞","嵬","帏","帷","幃","惟","桅","沩","洈","涠","湋","溈","潍","潙","潿","濰","犩","矀","維","维","蓶","覹","违","違","鄬","醀","鍏","闈","闱","韋","韦","鮠","𣲗","𬶏"],shuā:["唰"],chàng:["唱","怅","悵","暢","焻","畅","畼","誯","韔","鬯"],"ér wā":["唲"],qiàng:["唴","炝","熗","羻"],yō:["唷"],yū:["唹","淤","瘀","盓","箊","紆","纡","込","迂","迃","陓"],lài:["唻","濑","瀨","瀬","癞","癩","睐","睞","籁","籟","藾","賚","賴","赉","赖","頼","顂","鵣"],tuò:["唾","嶞","柝","毤","毻","箨","籜","萚","蘀","跅"],"zhōu zhāo tiào":["啁"],kěn:["啃","垦","墾","恳","懇","肎","肯","肻","豤","錹"],"zhuó zhào":["啅","濯"],"hēng hèng":["啈","悙"],"lín lán":["啉"],"a ā á ǎ à":["啊"],qiāng:["啌","嗴","嶈","戕","摤","斨","枪","槍","溬","牄","猐","獇","羌","羗","腔","蜣","謒","鏘","锖","锵"],"tūn zhūn xiāng duǐ":["啍"],wèn:["問","妏","揾","搵","璺","问","顐"],"cuì qi":["啐"],"dié shà jié tì":["啑"],"yuē wā":["啘"],"zǐ cǐ":["啙"],"bǐ tú":["啚"],"chuò chuài":["啜"],"yǎ yā è":["啞"],fēi:["啡","婓","婔","扉","暃","渄","猆","緋","绯","裶","霏","非","靟","飛","飝","飞","餥","馡","騑","騛","鯡","鲱","𬴂"],pí:["啤","壀","枇","毗","毘","焷","琵","疲","皮","篺","罴","羆","脾","腗","膍","蚍","蚽","蜱","螷","蠯","豼","貔","郫","鈹","阰","陴","隦","魮","鮍","鲏","鵧","鼙"],shá:["啥"],"lā la":["啦"],"yīng qíng":["啨"],pā:["啪","妑","舥","葩","趴"],"zhě shì":["啫"],sè:["啬","嗇","懎","擌","栜","歮","涩","渋","澀","澁","濇","濏","瀒","瑟","璱","瘷","穑","穡","穯","繬","譅","轖","銫","鏼","铯","飋"],niè:["啮","嗫","噛","嚙","囁","囓","圼","孼","孽","嵲","嶭","巕","帇","敜","枿","槷","櫱","涅","湼","痆","篞","籋","糱","糵","聂","聶","臬","臲","蘖","蠥","讘","踂","踗","踙","蹑","躡","錜","鎳","鑈","鑷","钀","镊","镍","闑","陧","隉","顳","颞","齧","𫔶"],"luō luó luo":["啰","囉"],"tān chǎn tuō":["啴"],bo:["啵","蔔"],dìng:["啶","定","椗","矴","碇","碠","磸","聢","腚","萣","蝊","訂","订","錠","锭","顁","飣","饤"],lāng:["啷"],"án ān":["啽"],kā:["喀","擖"],"yóng yú":["喁"],"lā lá lǎ":["喇"],jiē:["喈","喼","嗟","堦","媘","接","掲","擑","湝","煯","疖","痎","癤","皆","秸","稭","脻","蝔","街","謯","阶","階","鞂","鶛"],hóu:["喉","帿","猴","瘊","睺","篌","糇","翭","葔","鄇","鍭","餱","骺","鯸","𬭤"],"dié zhá":["喋"],wāi:["喎","歪","竵"],"nuò rě":["喏"],"xù huò guó":["喐"],zán:["喒"],"wō ō":["喔"],hú:["喖","嘝","囫","壶","壷","壺","媩","弧","搰","斛","楜","槲","湖","瀫","焀","煳","狐","猢","瑚","瓳","箶","絗","縠","胡","葫","蔛","蝴","螜","衚","觳","醐","鍸","頶","餬","鬍","魱","鰗","鵠","鶘","鶦","鹕"],"huàn yuán xuǎn hé":["喛"],xǐ:["喜","囍","壐","屣","徙","憙","枲","橲","歖","漇","玺","璽","矖","禧","縰","葈","葸","蓰","蟢","謑","蹝","躧","鈢","鉨","鉩","鱚","𬭳","𬶮"],"hē hè yè":["喝"],kuì:["喟","嘳","媿","嬇","愦","愧","憒","篑","簣","籄","聩","聭","聵","膭","蕢","謉","餽","饋","馈"],"zhǒng chuáng":["喠"],"wéi wèi":["喡","為","爲"],"duó zhà":["喥"],"sāng sàng":["喪"],"qiáo jiāo":["喬"],"pèn bēn":["喯"],"cān sūn qī":["喰"],"zhā chā":["喳"],miāo:["喵"],"pēn pèn":["喷"],kuí:["喹","夔","奎","巙","戣","揆","晆","暌","楏","楑","櫆","犪","睽","葵","藈","蘷","虁","蝰","躨","逵","鄈","鍨","鍷","頯","馗","騤","骙","魁"],"lou lóu":["喽"],"zào qiāo":["喿"],"hè xiāo xiào hù":["嗃"],"á shà":["嗄"],xiù:["嗅","岫","峀","溴","珛","琇","璓","秀","綉","繍","繡","绣","螑","袖","褎","褏","銹","鏥","鏽","锈","齅"],"qiāng qiàng":["嗆","戗","戧","蹌","蹡"],"ài yì":["嗌","艾"],"má mǎ ma":["嗎"],"kè kē":["嗑"],"dā tà":["嗒","鎉"],sǎng:["嗓","搡","磉","褬","鎟","顙","颡"],chēn:["嗔","抻","琛","瞋","諃","謓","賝","郴","𬘭"],"wā gǔ":["嗗"],"pǎng bēng":["嗙"],"xián qiǎn qiān":["嗛"],lào:["嗠","嫪","橯","涝","澇","耢","耮","躼","軂","酪"],wēng:["嗡","翁","聬","螉","鎓","鶲","鹟","𬭩"],wà:["嗢","腽","膃","袜","襪","韤"],"hēi hāi":["嗨"],hē:["嗬","欱","蠚","訶","诃"],zi:["嗭"],sǎi:["嗮"],"ǹg ńg ňg":["嗯"],gě:["嗰","舸"],ná:["嗱","拏","拿","鎿","镎"],diǎ:["嗲"],"ài ǎi āi":["嗳"],tōng:["嗵","樋","炵","蓪"],"zuī suī":["嗺"],"zhē zhè zhù zhe":["嗻"],mò:["嗼","圽","塻","墨","妺","嫼","寞","帞","昩","末","枺","歿","殁","沫","漠","爅","獏","瘼","皌","眽","眿","瞐","瞙","砞","礳","秣","絈","纆","耱","茉","莈","蓦","蛨","蟔","貃","貊","貘","銆","鏌","镆","陌","靺","驀","魩","默","黙","𬙊"],sòu:["嗽","瘶"],tǎn:["嗿","坦","忐","憳","憻","暺","毯","璮","菼","袒","襢","醓","鉭","钽"],"jiào dǎo":["嘄"],"kǎi gě":["嘅"],"shān càn":["嘇"],cáo:["嘈","嶆","曹","曺","槽","漕","艚","蓸","螬","褿","鏪","𥕢"],piào:["嘌","徱","蔈","驃"],"lóu lou":["嘍"],gǎ:["尕","玍"],"gǔ jiǎ":["嘏"],"jiāo xiāo":["嘐"],"xū shī":["嘘","噓"],pó:["嘙","嚩","婆","櫇","皤","鄱"],"dē dēi":["嘚"],"ma má":["嘛"],"lē lei":["嘞"],"gā gá gǎ":["嘠"],sāi:["嘥","噻","毢","腮","顋","鰓"],"zuō chuài":["嘬"],"cháo zhāo":["嘲","朝","鼂"],zuǐ:["嘴","噿","嶊","璻"],"qiáo qiào":["嘺","翹","谯"],"chù xù shòu":["嘼"],"tān chǎn":["嘽"],"dàn tán":["嘾","弾","彈","惔","澹"],"hēi mò":["嘿"],ě:["噁","砨","頋","騀","鵈"],"fān bo":["噃"],chuáng:["噇","床","牀"],"cù zā hé":["噈"],"tūn kuò":["噋"],"cēng chēng":["噌"],dēng:["噔","嬁","灯","燈","璒","登","竳","簦","艠","豋"],pū:["噗","扑","撲","攴","攵","潽","炇","陠"],juē:["噘","屩","屫","撧"],lū:["噜","嚕","撸","擼","謢"],zhān:["噡","岾","惉","旃","旜","枬","栴","毡","氈","氊","沾","瞻","薝","蛅","詀","詹","譫","谵","趈","邅","閚","霑","飦","饘","驙","魙","鱣","鸇","鹯","𫗴"],ō:["噢"],"zhòu zhuó":["噣"],"jiào qiào chī":["噭"],yuàn:["噮","妴","怨","愿","掾","瑗","禐","苑","衏","裫","褑","院","願"],"ǎi ài āi":["噯"],"yōng yǒng":["噰","澭"],"jué xué":["噱"],"pēn pèn fèn":["噴"],gá:["噶","尜","釓","錷","钆"],"xīn hěn hèn":["噷"],dāng:["噹","澢","珰","璫","筜","簹","艡","蟷","裆","襠"],làn:["嚂","滥","濫","烂","燗","爁","爛","爤","瓓","糷","钄"],tà:["嚃","嚺","崉","挞","搨","撻","榻","橽","毾","涾","澾","濌","禢","粏","誻","譶","蹋","蹹","躂","躢","遝","錔","闒","闥","闼","阘","鞜","鞳"],"huō huò ǒ":["嚄"],hāo:["嚆","茠","蒿","薅"],"hè xià":["嚇"],"xiù pì":["嚊"],"zhōu chóu":["嚋","盩","诪"],mē:["嚒"],"chā cā":["嚓"],"bó pào bào":["嚗"],"me mèi mò":["嚜"],"xié hái":["嚡"],"áo xiāo":["嚣"],mō:["嚤","摸"],pín:["嚬","娦","嫔","嬪","玭","矉","薲","蠙","貧","贫","顰","颦","𬞟"],mè:["嚰","濹"],"rǎng rāng":["嚷"],lá:["嚹","旯"],"jiáo jué jiào":["嚼"],chuò:["嚽","娖","擉","歠","涰","磭","踀","輟","辍","辵","辶","酫","鑡","餟","齪","龊"],"huān huàn":["嚾"],"zá cà":["囃"],chài:["囆","虿","蠆","袃","訍"],"náng nāng":["囊"],"zá zàn cān":["囋"],sū:["囌","櫯","甦","稣","穌","窣","蘇","蘓","酥","鯂"],zèng:["囎","熷","甑","贈","赠","鋥","锃"],"zá niè yàn":["囐"],nāng:["囔"],"luó luō luo":["囖"],"wéi guó":["囗"],huí:["囘","回","囬","廻","廽","恛","洄","痐","茴","蚘","蛔","蛕","蜖","迴","逥","鮰"],nín:["囜","您","脌"],"jiǎn nān":["囝"],nān:["囡"],tuán:["团","団","團","慱","抟","摶","檲","糰","鏄","鷒","鷻"],"tún dùn":["囤","坉"],guó:["囯","囶","囻","国","圀","國","帼","幗","慖","摑","漍","聝","腘","膕","蔮","虢","馘","𬇹"],kùn:["困","涃","睏"],"wéi tōng":["囲"],qūn:["囷","夋","逡"],rì:["囸","日","衵","鈤","馹","驲"],tāi:["囼","孡","胎"],pǔ:["圃","圑","擈","普","暜","樸","檏","氆","浦","溥","烳","諩","譜","谱","蹼","鐠","镨"],"quān juàn juān":["圈","圏"],"chuí chuán":["圌"],tuǎn:["圕","畽","疃"],lüè:["圙","掠","略","畧","稤","鋝","鋢","锊","䂮"],"huán yuán":["圜"],luán:["圝","圞","奱","娈","孌","孪","孿","峦","巒","挛","攣","曫","栾","欒","滦","灤","癴","癵","羉","脔","臠","虊","銮","鑾","鵉","鸞","鸾"],tǔ:["土","圡","釷","钍"],"xū wéi":["圩"],"dì de":["地","嶳"],"qiān sú":["圱"],zhèn:["圳","塦","挋","振","朕","栚","甽","眹","紖","絼","纼","誫","賑","赈","鋴","鎭","鎮","镇","阵","陣","震","鴆","鸩"],"chǎng cháng":["场","場","塲"],"qí yín":["圻"],jiá:["圿","忦","恝","戞","扴","脥","荚","莢","蛱","蛺","裌","跲","郏","郟","鋏","铗","頬","頰","颊","鴶","鵊"],"zhǐ zhì":["坁"],bǎn:["坂","岅","昄","板","版","瓪","粄","舨","蝂","鈑","钣","阪","魬"],qǐn:["坅","寑","寝","寢","昑","梫","笉","螼","赾","鋟","锓"],"méi fén":["坆"],"rǒng kēng":["坈"],"fāng fáng":["坊"],"fèn bèn":["坋"],tān:["坍","怹","摊","擹","攤","滩","灘","瘫","癱","舑","貪","贪"],"huài pēi pī péi":["坏"],"dì làn":["坔"],tán:["坛","墰","墵","壇","壜","婒","憛","昙","曇","榃","檀","潭","燂","痰","磹","罈","罎","藫","談","譚","譠","谈","谭","貚","郯","醰","錟","顃"],bà:["坝","垻","壩","弝","欛","灞","爸","矲","覇","霸","鮁","鲅"],fén:["坟","墳","妢","岎","幩","枌","棼","汾","焚","燌","燓","羒","羵","蒶","蕡","蚠","蚡","豮","豶","轒","鐼","隫","馩","魵","黂","鼖","鼢","𣸣"],zhuì:["坠","墜","惴","甀","畷","礈","綴","縋","缀","缒","腏","膇","諈","贅","赘","醊","錣","鑆"],pō:["坡","岥","泼","溌","潑","釙","鏺","钋","頗","颇","䥽"],"pǎn bàn":["坢"],kūn:["坤","堃","堒","崐","崑","昆","晜","潉","焜","熴","猑","琨","瑻","菎","蜫","裈","裩","褌","醌","錕","锟","騉","髠","髡","髨","鯤","鲲","鵾","鶤","鹍"],diàn:["坫","垫","墊","壂","奠","婝","店","惦","扂","橂","殿","淀","澱","玷","琔","电","癜","簟","蜔","鈿","電","靛","驔"],"mù mǔ":["坶"],"kē kě":["坷","軻"],xuè:["坹","岤","桖","瀥","狘","瞲","謔","谑","趐"],"dǐ chí":["坻","柢"],lā:["垃","柆","菈","邋"],lǒng:["垄","垅","壟","壠","拢","攏","竉","陇","隴","𬕂"],mín:["垊","姄","岷","崏","捪","旻","旼","民","珉","琘","琝","瑉","痻","盿","砇","緍","緡","缗","罠","苠","鈱","錉","鍲","鴖"],"dòng tóng":["垌","峒","洞"],cí:["垐","嬨","慈","柌","濨","珁","瓷","甆","磁","礠","祠","糍","茨","詞","词","辝","辞","辤","辭","雌","飺","餈","鴜","鶿","鷀","鹚"],duī:["垖","堆","塠","痽","磓","鐓","鐜","鴭"],"duò duǒ":["垛"],"duǒ duò":["垜","挆"],chá:["垞","察","嵖","搽","槎","檫","猹","茬","茶","詧","靫","𥻗"],shǎng:["垧","晌","樉","賞","贘","赏","鋿","鏛","鑜"],shǒu:["垨","守","手","扌","艏","首"],da:["垯","繨","跶"],háng:["垳","斻","杭","筕","絎","绗","航","苀","蚢","裄","貥","迒","頏","颃","魧"],"ān ǎn":["垵"],xīng:["垶","惺","星","曐","煋","猩","瑆","皨","篂","腥","興","觪","觲","謃","騂","骍","鮏","鯹"],"yuàn huán":["垸"],bāng:["垹","帮","幇","幚","幫","捠","梆","浜","邦","邫","鞤","𠳐"],"póu fú":["垺"],cén:["埁","岑","涔"],"běng fēng":["埄"],"dì fáng":["埅"],"xiá jiā":["埉"],"mái mán":["埋"],làng:["埌","崀","浪","蒗","閬","㫰"],"shān yán":["埏"],"qín jīn":["埐"],"pǔ bù":["埔"],huā:["埖","婲","椛","硴","糀","花","蒊","蘤","誮","錵"],"suì sù":["埣"],"pí pì":["埤"],"qīng zhēng":["埥","鲭"],"wǎn wān":["埦"],lǔn:["埨","稐","𫭢"],"zhēng chéng":["埩"],kōng:["埪","崆","箜","躻","錓","鵼"],"cǎi cài":["埰","寀","采"],"chù tòu":["埱"],běng:["埲","琫","菶","鞛"],"kǎn xiàn":["埳"],"yì shì":["埶","醳"],péi:["培","毰","裴","裵","賠","赔","錇","锫","阫","陪"],"sào sǎo":["埽"],"jǐn qīn jìn":["堇"],"péng bèng":["堋"],"qiàn zàn jiàn":["堑"],àn:["堓","屵","岸","按","暗","案","胺","荌","豻","貋","錌","闇","隌","黯"],"duò huī":["堕","墮"],huán:["堚","寏","寰","峘","桓","洹","澴","獂","环","環","糫","繯","缳","羦","荁","萈","萑","豲","鍰","鐶","锾","镮","闤","阛","雈","鬟","鹮","𬘫","𤩽"],"bǎo bǔ pù":["堡"],"máo móu wǔ":["堥"],ruán:["堧","壖","撋"],"ài è yè":["堨"],gèng:["堩","暅"],méi:["堳","塺","媒","嵋","徾","攗","枚","栂","梅","楣","楳","槑","湄","湈","煤","猸","玫","珻","瑂","眉","睂","禖","脄","脢","腜","苺","莓","葿","郿","酶","鎇","镅","霉","鶥","鹛","黴"],dǔ:["堵","琽","睹","笃","篤","覩","賭","赌"],féng:["堸","綘","艂","逢"],hèng:["堼"],chūn:["堾","媋","旾","春","暙","杶","椿","槆","橁","櫄","瑃","箺","萅","蝽","輴","鰆","鶞","䲠"],jiǎng:["塂","奖","奨","奬","桨","槳","獎","耩","膙","蒋","蔣","講","讲","顜"],huāng:["塃","巟","慌","肓","荒","衁"],duàn:["塅","断","斷","椴","段","毈","煅","瑖","碫","簖","籪","緞","缎","腶","葮","躖","鍛","锻"],tǎ:["塔","墖","獭","獺","鮙","鰨","鳎"],wěng:["塕","奣","嵡","攚","暡","瞈","蓊"],"sāi sài sè":["塞"],zàng:["塟","弉","臓","臟","葬","蔵","銺"],tián:["塡","屇","恬","沺","湉","璳","甛","甜","田","畋","畑","碵","磌","胋","闐","阗","鴫","鷆","鷏"],zhèng:["塣","幁","政","証","諍","證","证","诤","郑","鄭","靕","鴊"],"tián zhèn":["填"],wēn:["塭","昷","榲","殟","温","溫","瑥","瘟","蕰","豱","輼","轀","辒","鎾","饂","鰛","鰮","鳁"],liù:["塯","廇","磟","翏","雡","霤","餾","鬸","鷚","鹨"],hǎi:["塰","海","烸","酼","醢"],lǎng:["塱","朖","朗","朤","烺","蓢","㮾"],bèng:["塴","揼","泵","甏","綳","蹦","迸","逬","鏰","镚"],chén:["塵","宸","尘","忱","敐","敶","晨","曟","栕","樄","沉","煁","瘎","臣","茞","莀","莐","蔯","薼","螴","訦","諶","軙","辰","迧","鈂","陈","陳","霃","鷐","麎"],"ōu qiū":["塸"],"qiàn jiàn":["塹"],"zhuān tuán":["塼"],shuǎng:["塽","慡","漺","爽","縔","鏯"],shú:["塾","婌","孰","璹","秫","贖","赎"],lǒu:["塿","嵝","嶁","甊","篓","簍"],chí:["墀","弛","持","池","漦","竾","筂","箎","篪","茌","荎","蚳","謘","貾","赿","踟","迟","迡","遅","遟","遲","鍉","馳","驰"],shù:["墅","庶","庻","怷","恕","戍","束","树","樹","沭","漱","潄","濖","竖","竪","絉","腧","荗","蒁","虪","術","裋","豎","述","鉥","錰","鏣","霔","鶐","𬬸"],"dì zhì":["墆","疐"],kàn:["墈","崁","瞰","矙","磡","衎","鬫"],chěn:["墋","夦","硶","碜","磣","贂","趻","踸","鍖"],"zhǐ zhuó":["墌"],qiǎng:["墏","繈","繦","羥","襁"],zēng:["増","增","憎","璔","矰","磳","罾","譄","鄫","鱛","䎖"],qiáng:["墙","墻","嫱","嬙","樯","檣","漒","牆","艢","蔃","蔷","蘠"],"kuài tuí":["墤"],"tuǎn dǒng":["墥"],"qiáo què":["墧"],"zūn dūn":["墫"],"qiāo áo":["墽"],"yì tú":["墿"],"xué bó jué":["壆"],lǎn:["壈","嬾","孄","孏","懒","懶","揽","擥","攬","榄","欖","浨","漤","灠","纜","缆","罱","覧","覽","览","醂","顲"],huài:["壊","壞","蘾"],rǎng:["壌","壤","攘","爙"],"làn xiàn":["壏"],dǎo:["壔","导","導","岛","島","嶋","嶌","嶹","捣","搗","擣","槝","祷","禂","禱","蹈","陦","隝","隯"],ruǐ:["壡","桵","橤","繠","蕊","蕋","蘂","蘃"],san:["壭"],zhuàng:["壮","壯","壵","撞","焋","状","狀"],"ké qiào":["壳","殼"],kǔn:["壸","壼","悃","捆","梱","硱","祵","稇","稛","綑","裍","閫","閸","阃"],mǎng:["壾","漭","茻","莽","莾","蠎"],cún:["壿","存"],"zhǐ zhōng":["夂"],"gǔ yíng":["夃"],"jiàng xiáng":["夅","降"],"páng féng fēng":["夆"],zhāi:["夈","捚","摘","斋","斎","榸","粂","齋"],"xuàn xiòng":["夐"],wài:["外","顡"],"wǎn yuàn wān yuān":["夗"],"mǎo wǎn":["夘"],mèng:["夢","夣","孟","梦","癦","霥"],"dà dài":["大"],"fū fú":["夫","姇","枎","粰"],guài:["夬","怪","恠"],yāng:["央","姎","抰","殃","泱","秧","胦","鉠","鍈","雵","鴦","鸯"],"hāng bèn":["夯"],gǎo:["夰","搞","杲","槀","槁","檺","稁","稾","稿","縞","缟","菒","藁","藳"],"tāo běn":["夲"],"tóu tou":["头"],"yǎn tāo":["夵"],"kuā kuà":["夸","誇"],"jiá jiā gā xiá":["夹"],huà:["夻","婳","嫿","嬅","崋","摦","杹","枠","桦","槬","樺","澅","画","畫","畵","繣","舙","話","諙","譮","话","黊"],"jiā jiá gā xiá":["夾"],ēn:["奀","恩","蒽"],"dī tì":["奃"],"yǎn yān":["奄","渰"],pào:["奅","疱","皰","砲","礟","礮","靤","麭"],nài:["奈","柰","渿","耐","萘","褦","錼","鼐"],"quān juàn":["奍","弮","棬"],zòu:["奏","揍"],"qì qiè xiè":["契"],kāi:["奒","开","揩","鐦","锎","開"],"bēn bèn":["奔","泍"],tào:["套"],"zàng zhuǎng":["奘"],běn:["奙","本","楍","畚","翉","苯"],"xùn zhuì":["奞"],shē:["奢","檨","猞","畭","畲","賒","賖","赊","輋","𪨶"],"hǎ pò tǎi":["奤"],"ào yù":["奥","奧","澚"],yūn:["奫","氲","氳","蒀","蒕","蝹","贇","赟","𫖳"],"duǒ chě":["奲"],"nǚ rǔ":["女"],nú:["奴","孥","笯","駑","驽"],"dīng dǐng tiǎn":["奵"],"tā jiě":["她"],nuán:["奻"],"hǎo hào":["好"],fàn:["奿","嬎","梵","汎","泛","滼","瀪","犯","畈","盕","笵","範","范","訉","販","贩","軬","輽","飯","飰","饭"],shuò:["妁","搠","朔","槊","烁","爍","矟","蒴","鎙","鑠","铄"],"fēi pèi":["妃"],wàng:["妄","忘","旺","望","朢"],zhuāng:["妆","妝","娤","庄","庒","桩","梉","樁","粧","糚","荘","莊","装","裝"],mā:["妈","媽"],"fū yōu":["妋"],"hài jiè":["妎"],dù:["妒","妬","杜","殬","渡","秺","芏","荰","螙","蠧","蠹","鍍","镀","靯","𬭊"],miào:["妙","庙","庿","廟","玅","竗"],"fǒu pēi pī":["妚"],"yuè jué":["妜"],niū:["妞"],"nà nàn":["妠"],tuǒ:["妥","嫷","庹","椭","楕","橢","鬌","鰖","鵎"],"wàn yuán":["妧"],fáng:["妨","房","肪","防","魴","鲂"],nī:["妮"],zhóu:["妯","碡"],zhāo:["妱","巶","招","昭","釗","鉊","鍣","钊","駋","𬬿"],"nǎi nǐ":["妳"],tǒu:["妵","敨","紏","蘣","黈"],"xián xuán xù":["妶"],"zhí yì":["妷","秇"],ē:["妸","妿","婀","屙"],mèi:["妹","媚","寐","抺","旀","昧","沬","煝","痗","眛","睸","祙","篃","蝞","袂","跊","鬽","魅"],"qī qì":["妻"],"xū xǔ":["姁","稰"],"shān shàn":["姍","姗","苫","釤","钐"],mán:["姏","慲","樠","蛮","蠻","謾","饅","馒","鬗","鬘","鰻","鳗"],jiě:["姐","媎","檞","毑","飷"],"wěi wēi":["委"],pīn:["姘","拼","礗","穦","馪","驞"],"huá huó":["姡"],"jiāo xiáo":["姣"],"gòu dù":["姤"],"lǎo mǔ":["姥"],"nián niàn":["姩"],zhěn:["姫","屒","弫","抮","昣","枕","畛","疹","眕","稹","縝","縥","缜","聄","萙","袗","裖","覙","診","诊","軫","轸","辴","駗","鬒"],héng:["姮","恆","恒","烆","珩","胻","蘅","衡","鑅","鴴","鵆","鸻"],"jūn xún":["姰"],"kuā hù":["姱"],"è yà":["姶"],"xiān shēn":["姺"],wá:["娃"],"ráo rǎo":["娆","嬈"],"shào shāo":["娋"],xiē:["娎","揳","楔","歇","蝎","蠍"],"wǔ méi mǔ":["娒"],"chuò lài":["娕"],niáng:["娘","嬢","孃"],"nà nuó":["娜","𦰡"],"pōu bǐ":["娝"],"něi suī":["娞"],tuì:["娧","煺","蛻","蜕","退","駾"],mǎn:["娨","屘","満","满","滿","螨","蟎","襔","鏋"],"wú wù yú":["娪"],"xī āi":["娭"],"zhuì shuì":["娷"],"dōng dòng":["娻"],"ǎi ái è":["娾"],"ē ě":["娿"],mián:["婂","嬵","宀","杣","棉","檰","櫋","眠","矈","矊","矏","綿","緜","绵","芇","蝒"],"pǒu péi bù":["婄"],biǎo:["婊","脿","表","裱","褾","諘","錶"],"fù fàn":["婏"],wǒ:["婐","婑","我"],"ní nǐ":["婗","棿"],"quán juàn":["婘","惓"],hūn:["婚","昏","昬","棔","涽","睧","睯","碈","荤","葷","蔒","轋","閽","阍"],"qiān jǐn":["婜"],"wān wà":["婠"],"lái lài":["婡","徕","徠"],"zhōu chōu":["婤"],"chuò nào":["婥"],"nüè àn":["婩"],"hùn kūn":["婫"],"dàng yáng":["婸"],nàn:["婻"],"ruò chuò":["婼"],jiǎ:["婽","岬","斚","斝","榎","槚","檟","玾","甲","胛","鉀","钾"],"tōu yú":["婾","媮"],"yù yú":["媀"],"wéi wěi":["媁"],"dì tí":["媂","珶","苐"],róu:["媃","揉","柔","渘","煣","瑈","瓇","禸","粈","糅","脜","腬","葇","蝚","蹂","輮","鍒","鞣","騥","鰇","鶔","𫐓"],"ruǎn nèn":["媆"],miáo:["媌","嫹","描","瞄","苗","鶓","鹋"],"yí pèi":["媐"],"mián miǎn":["媔"],"tí shì":["媞","惿"],"duò tuó":["媠","沲"],ǎo:["媪","媼","艹","芺","袄","襖","镺"],"chú zòu":["媰"],yìng:["媵","映","暎","硬","膡","鱦"],"qín shēn":["嫀"],jià:["嫁","幏","架","榢","稼","駕","驾"],sǎo:["嫂"],"zhēn zhěn":["嫃"],"jiē suǒ":["嫅"],"míng mǐng":["嫇"],niǎo:["嫋","嬝","嬲","茑","蔦","袅","裊","褭","鸟"],tāo:["嫍","幍","弢","慆","掏","搯","槄","涛","滔","濤","瑫","絛","縚","縧","绦","詜","謟","轁","鞱","韜","韬","飸","饕"],biáo:["嫑"],"piáo piāo":["嫖","薸"],xuán:["嫙","悬","懸","暶","檈","漩","玄","璇","璿","痃","蜁","𫠊"],"màn mān":["嫚"],kāng:["嫝","嵻","康","慷","槺","漮","砊","穅","糠","躿","鏮","鱇","𡐓","𩾌"],"hān nǎn":["嫨"],nèn:["嫩","嫰"],zhē:["嫬","遮"],"mā má":["嫲"],piè:["嫳"],zhǎn:["嫸","展","搌","斩","斬","琖","盏","盞","輾","醆","颭","飐"],"xiān yǎn jìn":["嬐"],liǎn:["嬚","敛","斂","琏","璉","羷","脸","臉","蔹","蘝","蘞","裣","襝","鄻"],"qióng huán xuān":["嬛"],dǒng:["嬞","懂","箽","董","蕫","諌"],cān:["嬠","湌","爘","飡","餐","驂","骖"],tiǎo:["嬥","宨","晀","朓","窱","脁"],bí:["嬶","荸","鼻"],liǔ:["嬼","柳","栁","桞","桺","橮","熮","珋","綹","绺","罶","羀","鋶","锍"],"qiān xiān":["孅","欦"],"xié huī":["孈"],"huān quán":["孉"],"lí lì":["孋","麗"],"zhú chuò":["孎"],kǒng:["孔","恐"],"mā zī":["孖"],"sūn xùn":["孙","孫"],"bèi bó":["孛","誖"],"yòu niū":["孧"],zhuǎn:["孨","竱","轉"],hái:["孩","骸"],nāo:["孬"],"chán càn":["孱"],bò:["孹","檗","蘗","譒"],nái:["孻","腉"],"níng nìng":["宁","寍","寗","寜","寧","甯"],zhái:["宅"],"tū jiā":["宊"],sòng:["宋","訟","誦","讼","诵","送","鎹","頌","颂","餸"],ròu:["宍","肉","譳"],zhūn:["宒","窀","衠","諄","谆","迍"],"mì fú":["宓"],"dàng tàn":["宕"],"wǎn yuān":["宛"],chǒng:["宠","寵"],qún:["宭","峮","帬","羣","群","裙","裠"],zǎi:["宰","崽"],"bǎo shí":["宲"],"jiā jia jie":["家"],"huāng huǎng":["宺"],kuān:["宽","寛","寬","臗","鑧","髋","髖"],"sù xiǔ xiù":["宿"],"jié zǎn":["寁"],"bìng bǐng":["寎"],"jìn qǐn":["寖"],"lóu jù":["寠"],"xiě xiè":["寫"],"qīn qìn":["寴"],cùn:["寸","籿"],duì:["对","対","對","怼","憝","懟","濧","瀩","碓","祋","綐","薱","譈","譵","轛","队","陮"],"lüè luó":["寽"],"shè yè yì":["射"],"jiāng jiàng qiāng":["将"],"jiāng jiàng":["將","浆","漿","畺"],zūn:["尊","嶟","樽","罇","遵","鐏","鱒","鳟","鶎","鷷","𨱔"],"shù zhù":["尌","澍"],xiǎo:["小","晓","暁","曉","皛","皢","筱","筿","篠","謏","𫍲"],"jié jí":["尐","诘","鞊"],"shǎo shào":["少"],ěr:["尒","尓","尔","栮","毦","洱","爾","珥","耳","薾","衈","趰","迩","邇","鉺","铒","餌","饵","駬"],"wāng yóu":["尢"],wāng:["尣","尩","尪","尫","汪"],liào:["尥","尦","廖","撂","料","炓","窷","鐐","镣","𪤗"],"méng máng lóng páng":["尨"],gà:["尬","魀"],"kuì kuǐ":["尯"],tuí:["尵","弚","穨","蘈","蹪","隤","頹","頺","頽","颓","魋","𬯎"],yǐn:["尹","嶾","引","朄","檃","檼","櫽","淾","濥","瘾","癮","粌","蘟","蚓","螾","讔","赺","趛","輑","鈏","靷"],"chǐ chě":["尺"],kāo:["尻","髛"],"jìn jǐn":["尽"],"wěi yǐ":["尾"],"niào suī":["尿"],céng:["层","層","嶒","驓"],diǎo:["屌"],"píng bǐng bīng":["屏"],lòu:["屚","漏","瘘","瘺","瘻","鏤","镂","陋"],"shǔ zhǔ":["属","屬"],"xiè tì":["屟"],"chè cǎo":["屮"],"tún zhūn":["屯"],"nì jǐ":["屰"],"hóng lóng":["屸"],"qǐ kǎi":["岂","豈"],áng:["岇","昂","昻"],"gǎng gāng":["岗","崗"],kě:["岢","敤","渇","渴","炣"],gǒu:["岣","狗","玽","笱","耇","耈","耉","苟","豿"],tiáo:["岧","岹","樤","祒","笤","芀","萔","蓚","蓨","蜩","迢","鋚","鎥","鞗","髫","鯈","鰷","鲦","齠","龆"],"qū jū":["岨"],lǐng:["岭","嶺","領","领"],pò:["岶","敀","洦","湐","烞","珀","破","砶","粕","蒪","魄"],"bā kè":["峇"],luò:["峈","摞","洛","洜","犖","珞","笿","纙","荦","詻","雒","駱","骆","鵅"],"fù niè":["峊"],ěn:["峎"],"zhì shì":["峙","崻"],qiǎ:["峠","跒","酠","鞐"],"qiáo jiào":["峤","癄"],"xié yé":["峫"],bū:["峬","庯","晡","誧","逋","鈽","錻","钸","餔","鵏"],chóng:["崇","崈","爞","虫","蝩","蟲","褈","隀"],"zú cuì":["崒","椊"],"líng léng":["崚"],"dòng dōng":["崠"],xiáo:["崤","洨","淆","訤","誵"],"pí bǐ":["崥","芘"],"zhǎn chán":["崭","嶃","嶄"],"wǎi wēi":["崴"],"yáng dàng":["崵"],"shì dié":["崼"],yào:["崾","曜","熎","燿","矅","穾","窔","筄","耀","艞","药","葯","薬","藥","袎","覞","詏","讑","靿","鷂","鹞","鼼"],"kān zhàn":["嵁"],"hán dǎng":["嵅"],"qiàn kàn":["嵌"],"wù máo":["嵍"],"kě jié":["嵑","嶱"],"wēi wěi":["嵔"],kē:["嵙","柯","棵","榼","樖","牁","牱","犐","珂","疴","瞌","磕","礚","科","稞","窠","萪","薖","蚵","蝌","趷","轲","醘","鈳","钶","頦","顆","颗","髁"],"dàng táng":["嵣"],"róng yíng":["嵤","爃"],"ái kǎi":["嵦"],"kāo qiāo":["嵪"],cuó:["嵯","嵳","痤","矬","蒫","蔖","虘","鹺","鹾"],"qiǎn qīn":["嵰"],"dì dié":["嵽"],cēn:["嵾"],dǐng:["嵿","艼","薡","鐤","頂","顶","鼎","鼑"],"áo ào":["嶅"],"pǐ pèi":["嶏"],"jiào qiáo":["嶠","潐"],"jué guì":["嶡","鳜"],"zhān shàn":["嶦","鳣"],"xiè jiè":["嶰"],"guī xī juàn":["嶲"],rū:["嶿"],"lì liè":["巁","棙","爄","綟"],"xī guī juàn":["巂"],"yíng hōng":["巆"],yǐng:["巊","廮","影","摬","梬","潁","瘿","癭","矨","穎","郢","鐛","頴","颍","颕","颖"],chǎo:["巐","炒","煼","眧","麨"],cuán:["巑","櫕","欑"],chuān:["巛","川","氚","瑏","穿"],"jīng xíng":["巠"],cháo:["巢","巣","晁","漅","潮","牊","窲","罺","謿","轈","鄛","鼌"],qiǎo:["巧","愀","髜"],gǒng:["巩","廾","拱","拲","栱","汞","珙","輁","鞏"],"chà chā chāi cī":["差"],"xiàng hàng":["巷"],shuài:["帅","帥","蟀"],pà:["帊","帕","怕","袙"],"tǎng nú":["帑"],"mò wà":["帓"],"tiē tiě tiè":["帖"],zhǒu:["帚","晭","疛","睭","箒","肘","菷","鯞"],"juǎn juàn":["帣"],shuì:["帨","涗","涚","睡","稅","税","裞"],"chóu dào":["帱","幬"],"jiǎn jiān sàn":["帴"],"shà qiè":["帹"],"qí jì":["帺","荠"],"shān qiāo shēn":["幓"],"zhuàng chuáng":["幢"],"chān chàn":["幨"],miè:["幭","懱","搣","滅","灭","烕","礣","篾","蔑","薎","蠛","衊","鑖","鱴","鴓"],"gān gàn":["干"],"bìng bīng":["并","幷"],"jī jǐ":["幾"],"guǎng ān":["广"],guǎng:["広","廣","犷","獷"],me:["庅"],"dùn tún":["庉"],"bài tīng":["庍"],"yìng yīng":["应"],"dǐ de":["底"],"dù duó":["度"],"máng méng páng":["庬"],"bìng píng":["庰"],chěng:["庱","悜","睈","逞","騁","骋"],"jī cuò":["庴"],qǐng:["庼","廎","檾","漀","苘","請","謦","请","頃","顷"],"guī wěi huì":["廆"],"jǐn qín":["廑"],kuò:["廓","扩","拡","擴","濶","筈","萿","葀","蛞","闊","阔","霩","鞟","鞹","韕","頢","鬠"],"qiáng sè":["廧","薔"],"yǐn yìn":["廴","隐","隠","隱","飮","飲","饮"],"pò pǎi":["廹","迫"],"nòng lòng":["弄"],"dì tì tuí":["弟"],"jué zhāng":["弡"],"mí mǐ":["弥","彌","靡"],chāo:["弨","怊","抄","欩","訬","超","鈔","钞"],yi:["弬"],shāo:["弰","旓","烧","焼","燒","筲","艄","萷","蕱","輎","髾","鮹"],"xuān yuān":["弲"],"qiáng qiǎng jiàng":["強","强"],"tán dàn":["弹","醈"],biè:["彆"],"qiáng jiàng qiǎng":["彊"],"jì xuě":["彐"],tuàn:["彖","褖"],yuē:["彟","曰","曱","矱"],"shān xiǎn":["彡"],wén:["彣","文","炆","珳","瘒","繧","聞","芠","蚉","蚊","螡","蟁","閺","閿","闅","闦","闻","阌","雯","馼","駇","魰","鳼","鴍","鼤","𫘜"],"péng bāng":["彭"],"piāo piào":["彯"],"zhuó bó":["彴"],"tuǒ yí":["彵"],"páng fǎng":["彷"],wǎng:["彺","往","徃","惘","枉","棢","網","网","罒","罓","罔","罖","菵","蛧","蝄","誷","輞","辋","魍"],cú:["徂","殂"],"dài dāi":["待"],huái:["徊","怀","懐","懷","槐","淮","耲","蘹","褢","褱","踝"],"wā wàng jiā":["徍"],"chěng zhèng":["徎"],"dé děi de":["得"],"cóng zòng":["從"],"shì tǐ":["徥"],"tí chí":["徲","鶗","鶙"],dé:["徳","德","恴","悳","惪","淂","鍀","锝"],"zhǐ zhēng":["徴","徵"],bié:["徶","癿","莂","蛂","襒","蹩"],"chōng zhǒng":["徸"],"jiǎo jiào":["徼","笅","筊"],"lòng lǒng":["徿"],"qú jù":["忂","渠","瞿","螶"],"dìng tìng":["忊"],gǎi:["忋","改"],rěn:["忍","栠","栣","秹","稔","綛","荏","荵","躵"],chàn:["忏","懴","懺","硟","羼","韂","顫"],tè:["忑","慝","特","蟘","鋱","铽"],"tè tēi tuī":["忒"],"gān hàn":["忓","攼"],"yì qì":["忔"],"tài shì":["忕"],"xī liě":["忚"],"yīng yìng":["応","應","譍"],"mǐn wěn mín":["忞","忟"],"sōng zhōng":["忪"],"yù shū":["忬","悆"],"qí shì":["忯","耆"],"tún zhūn dùn":["忳"],"qián qín":["忴","扲"],hún:["忶","浑","渾","餛","馄","魂","鼲"],niǔ:["忸","扭","炄","狃","紐","纽","莥","鈕","钮","靵"],"kuáng wǎng":["忹"],"kāng hàng":["忼"],"kài xì":["忾","愾"],òu:["怄","慪"],"bǎo bào":["怉"],"mín mén":["怋"],"zuò zhà":["怍"],zěn:["怎"],yàng:["怏","恙","样","様","樣","漾","羕","詇"],"kòu jù":["怐"],"náo niú":["怓"],"zhēng zhèng":["怔","掙","钲","铮"],"tiē zhān":["怗"],"hù gù":["怘"],"cū jù zū":["怚"],"sī sāi":["思"],"yóu chóu":["怞"],"tū dié":["怢"],"yōu yào":["怮"],xuàn:["怰","昡","楦","泫","渲","炫","琄","眩","碹","絢","縼","繏","绚","蔙","衒","袨","贙","鉉","鏇","铉","镟","颴"],"xù xuè":["怴"],"bì pī":["怶"],"xī shù":["怸"],"nèn nín":["恁"],"tiāo yáo":["恌"],"xī qī xù":["恓"],"xiào jiǎo":["恔"],"hū kuā":["恗"],nǜ:["恧","朒","衂","衄"],hèn:["恨"],"dòng tōng":["恫"],"quán zhuān":["恮"],"è wù ě wū":["恶","惡"],tòng:["恸","慟","憅","痛","衕"],"yuān juàn":["悁"],"qiāo qiǎo":["悄"],"jiè kè":["悈"],"hào jiào":["悎"],huǐ:["悔","檓","毀","毁","毇","燬","譭"],"mán mèn":["悗","鞔"],"yī yì":["悘","衣"],quān:["悛","箞","鐉","𨟠"],"kuī lǐ":["悝"],"yì niàn":["悥"],"mèn mēn":["悶"],guàn:["悹","悺","惯","慣","掼","摜","樌","欟","泴","涫","潅","灌","爟","瓘","盥","礶","祼","罆","罐","貫","贯","躀","遦","鏆","鑵","鱹","鸛","鹳"],"kōng kǒng":["悾"],"lǔn lùn":["惀"],guǒ:["惈","果","椁","槨","粿","綶","菓","蜾","裹","褁","輠","餜","馃"],"yuān wǎn":["惌","箢"],"lán lín":["惏"],"yù xù":["惐","淢"],"chuò chuì":["惙"],"hūn mèn":["惛"],"chǎng tǎng":["惝"],"suǒ ruǐ":["惢"],cǎn:["惨","慘","憯","黪","黲","䅟"],cán:["惭","慙","慚","残","殘","蚕","蝅","蠶","蠺"],"dàn dá":["惮","憚"],rě:["惹"],"yú tōu":["愉"],"kài qì":["愒"],"dàng táng shāng yáng":["愓"],"chén xìn dān":["愖"],"kè qià":["愘"],nuò:["愞","懦","懧","掿","搦","榒","稬","穤","糑","糥","糯","諾","诺","蹃","逽","鍩","锘"],gǎn:["感","擀","敢","桿","橄","澉","澸","皯","秆","稈","笴","芉","衦","赶","趕","鱤","鳡"],"còng sōng":["愡"],"sāi sī sǐ":["愢"],"gōng gòng hǒng":["愩","慐"],"shuò sù":["愬","洬"],"yáo yào":["愮"],huàng:["愰","曂","榥","滉","皝","皩","鎤","㿠"],zhěng:["愸","抍","拯","整","晸"],cǎo:["愺","艸","草","騲"],"xì xié":["慀"],"cǎo sāo":["慅"],"xù chù":["慉"],"qiè qiàn":["慊"],"cáo cóng":["慒"],"ào áo":["慠"],"lián liǎn":["慩","梿","槤","櫣"],"jìn qín jǐn":["慬"],"dì chì":["慸"],"zhí zhé":["慹"],"lóu lǚ":["慺","鷜"],còng:["憁","謥"],"zhī zhì":["憄","知","織","织"],chēng:["憆","摚","撐","撑","晿","柽","棦","橕","檉","泟","浾","琤","瞠","碀","緽","罉","蛏","蟶","赪","赬","鏿","鐣","阷","靗","頳","饓"],biē:["憋","虌","鱉","鳖","鼈","龞"],"chéng dèng zhèng":["憕"],"xǐ xī":["憘"],"duì dùn tūn":["憞"],"xiāo jiāo":["憢"],"xián xiàn":["憪"],"liáo liǎo":["憭","燎","爎","爒"],shéng:["憴","縄","繉","繩","绳","譝"],"náo nǎo náng":["憹"],"jǐng jìng":["憼"],"jǐ jiǎo":["憿"],"xuān huān":["懁"],"cǎo sāo sào":["懆"],mèn:["懑","懣","暪","焖","燜"],"mèng méng měng":["懜"],"ài yì nǐ":["懝"],"méng měng":["懞","瞢","矒"],"qí jī jì":["懠"],mǒ:["懡"],"lán xiàn":["懢"],"yōu yǒu":["懮"],"liú liǔ":["懰","藰"],ràng:["懹","譲","讓","让"],huān:["懽","欢","歓","歡","獾","讙","貛","酄","驩","鴅","鵍"],nǎn:["戁","揇","湳","煵","腩","蝻","赧"],"mí mó":["戂"],"gàng zhuàng":["戅","戆"],"zhuàng gàng":["戇"],"xū qu":["戌"],"xì hū":["戏","戯","戲"],"jiá gā":["戛"],zéi:["戝","蠈","賊","贼","鰂","鱡","鲗"],děng:["戥","等"],"hū xì":["戱"],chuō:["戳","踔","逴"],"biǎn piān":["扁"],"shǎng jiōng":["扄"],"shàn shān":["扇"],cái:["才","材","纔","裁","財","财"],"zhā zā zhá":["扎"],"lè lì cái":["扐"],"bā pá":["扒"],"dǎ dá":["打"],rēng:["扔"],"fǎn fú":["払"],"diǎo dí yuē lì":["扚"],"káng gāng":["扛"],"yū wū":["扜"],"yū wū kū":["扝"],"tuō chǐ yǐ":["扡"],"gǔ jié xì gē":["扢"],dèn:["扥","扽"],"sǎo sào":["扫","掃"],rǎo:["扰","擾","隢"],"xī chā qì":["扱"],"bān pān":["扳"],"bā ào":["扷"],"xī zhé":["扸"],"zhì sǔn kǎn":["扻"],zhǎo:["找","沼","瑵"],"kuáng wǎng zài":["抂"],"hú gǔ":["抇","鹄","鹘"],"bǎ bà":["把"],"dǎn shěn":["抌"],"nè nì ruì nà":["抐"],zhuā:["抓","檛","簻","膼","髽"],póu:["抔","裒"],"zhé shé zhē":["折"],"póu pōu fū":["抙","捊"],pāo:["抛","拋","脬","萢"],"ǎo ào niù":["抝"],"lūn lún":["抡","掄"],"qiǎng qiāng chēng":["抢"],"zhǐ zhǎi":["抧"],"bù pū":["抪","柨"],"yǎo tāo":["抭"],"hē hè qiā":["抲"],"nǐ ní":["抳"],"pī pēi":["抷"],"mǒ mò mā":["抹"],chōu:["抽","犨","犫","瘳","篘"],"jiā yá":["拁"],"fú bì":["拂","畐","鶝"],zhǎ:["拃","眨","砟","鮺","鲝"],"dān dàn dǎn":["担"],"chāi cā":["拆"],niān:["拈","蔫"],"lā lá lǎ là":["拉"],"bàn pàn":["拌"],pāi:["拍"],līn:["拎"],guǎi:["拐","枴","柺"],"tuò tà zhí":["拓"],"ào ǎo niù":["拗"],"jū gōu":["拘"],"pīn pàn fān":["拚"],"bài bái":["拜"],bài:["拝","敗","稗","粺","薭","贁","败","韛"],qiá:["拤"],"nǐng níng nìng":["拧"],"zé zhái":["择","擇"],hén:["拫","痕","鞎"],"kuò guā":["括"],"jié jiá":["拮"],nǐn:["拰"],shuān:["拴","栓","閂","闩"],"cún zùn":["拵"],"zā zǎn":["拶","桚"],kǎo:["拷","攷","栲","烤","考"],"yí chǐ hài":["拸"],"cè sè chuò":["拺"],"zhuài zhuāi yè":["拽"],"shí shè":["拾"],bāi:["挀","掰"],"kuò guāng":["挄"],nòng:["挊","挵","齈"],"jiào jiāo":["挍","敎","教"],"kuà kū":["挎"],"ná rú":["挐"],"tiāo tiǎo":["挑"],"dié shè":["挕"],liě:["挘","毟"],"yà yǎ":["挜","掗"],"wō zhuā":["挝"],"xié jiā":["挟","挾"],"dǎng dàng":["挡","擋"],"zhèng zhēng":["挣","正","症"],"āi ái":["挨"],"tuō shuì":["挩","捝"],"tǐ tì":["挮"],"suō shā":["挱"],"sā shā suō":["挲"],"kēng qiān":["挳","摼"],"bàng péng":["挷"],"ruó ruá":["挼"],"jiǎo kù":["捁"],"wǔ wú":["捂"],tǒng:["捅","桶","筒","筩","統","綂","统","㛚"],"huò chì":["捇"],"tú shū chá":["捈"],"lǚ luō":["捋"],"shāo shào":["捎","稍"],niē:["捏","揑"],"shù sǒng sōu":["捒"],"yé yú":["捓"],"jué zhuó":["捔"],"bù pú zhì":["捗"],zùn:["捘","銌"],lāo:["捞","撈","粩"],sǔn:["损","損","榫","笋","筍","箰","鎨","隼"],"wàn wǎn wān yù":["捥"],pěng:["捧","淎","皏"],shě:["捨"],"fǔ fù bǔ":["捬"],dáo:["捯"],"luò luǒ wǒ":["捰"],"juǎn quán":["捲"],"chēn tiǎn":["捵"],"niǎn niē":["捻"],"ruó wěi ré":["捼"],zuó:["捽","昨","秨","稓","筰","莋","鈼"],"wò xiá":["捾"],"qìng qiàn":["掅"],"póu pǒu":["掊"],qiā:["掐","葜"],"pái pǎi":["排"],"qiān wàn":["掔"],"yè yē":["掖"],"niè nǐ yì":["掜"],"huò xù":["掝"],"yàn shàn yǎn":["掞"],"zhěng dìng":["掟"],kòng:["控","鞚"],tuī:["推","蓷","藬"],"zōu zhōu chōu":["掫"],tiàn:["掭","舚"],kèn:["掯","裉","褃"],pá:["掱","杷","潖","爬","琶","筢"],"guó guāi":["掴"],"dǎn shàn":["掸","撣"],"chān xiān càn shǎn":["掺"],sāo:["掻","搔","溞","繅","缫","螦","騒","騷","鰠","鱢","鳋"],pèng:["掽","椪","槰","碰","踫"],"zhēng kēng":["揁"],"jiū yóu":["揂"],"jiān jiǎn":["揃","籛"],"pì chè":["揊"],"sāi zǒng cāi":["揌"],"tí dī dǐ":["提"],"zǒng sōng":["揔"],"huáng yóng":["揘"],"zǎn zuàn":["揝"],"xū jū":["揟"],"ké qiā":["揢"],"chuāi chuǎi chuài tuán zhuī":["揣"],"dì tì":["揥"],"lá là":["揦"],là:["揧","楋","溂","瓎","瘌","翋","臘","蝋","蝲","蠟","辢","辣","鑞","镴","鬎","鯻","𬶟"],"jiē qì":["揭"],"chòng dǒng":["揰"],"dié shé yè":["揲"],"jiàn qián jiǎn":["揵"],yé:["揶","爷","爺","瑘","鋣","鎁","铘"],chān:["搀","摻","攙","裧","襜","覘","觇","辿","鋓"],"gē gé":["搁","擱"],"lǒu lōu":["搂","摟"],"chōu zǒu":["搊"],chuāi:["搋"],sūn:["搎","槂","狲","猻","荪","蓀","蕵","薞","飧","飱"],"róng náng nǎng":["搑"],"péng bàng":["搒"],cuō:["搓","瑳","磋","蹉","遳","醝"],"kē è":["搕"],"nù nuò nòu":["搙"],"lā xié xiàn":["搚"],qiǔ:["搝","糗"],"xiǎn xiān":["搟"],"jié zhé":["搩"],"pán bān pó":["搫"],bān:["搬","攽","斑","斒","班","瘢","癍","肦","螁","螌","褩","辬","頒","颁","𨭉"],"zhì nái":["搱"],"wā wǎ wà":["搲"],huá:["搳","撶","滑","猾","蕐","螖","譁","鏵","铧","驊","骅","鷨"],"qiāng qiǎng chēng":["搶"],"tián shēn":["搷"],"ná nuò":["搻"],èn:["摁"],"shè niè":["摄","攝"],bìn:["摈","擯","殡","殯","膑","臏","髌","髕","髩","鬂","鬓","鬢"],"shā sà shǎi":["摋"],"chǎn sùn":["摌"],"jiū liú liáo jiǎo náo":["摎"],"féng pěng":["摓"],shuāi:["摔"],"dì tú zhí":["摕"],"qì jì chá":["摖"],"sōu sǒng":["摗"],"liǎn liàn":["摙"],"gài xì":["摡"],"hù chū":["摢"],tàng:["摥","烫","燙","鐋"],"nái zhì":["摨"],"mó mā":["摩"],"jiāng qiàng":["摪"],"áo qiáo":["摮"],"niè chè":["摰"],"mán màn":["摱"],"chàn cán":["摲"],"sè mí sù":["摵"],"biāo biào":["摽"],"juē jué":["撅"],piē:["撆","暼","氕","瞥"],"piě piē":["撇"],"zǎn zān zēn qián":["撍"],"sā sǎ":["撒"],hòng:["撔","訌","讧","闀","鬨"],"héng guàng":["撗"],niǎn:["撚","撵","攆","涊","焾","碾","簐","蹍","蹨","躎","輦","辇"],"chéng zhěng":["撜"],"huī wéi":["撝"],cāo:["撡","操","糙"],"xiāo sōu":["撨"],"liáo liāo":["撩"],"cuō zuǒ":["撮"],"wěi tuǒ":["撱"],cuān:["撺","攛","汆","蹿","躥","鑹","镩"],"qiào yāo jī":["撽"],"zhuā wō":["撾"],"lèi léi":["擂"],nǎng:["擃","攮","曩","灢"],"qíng jǐng":["擏"],kuǎi:["擓","蒯","㧟"],"pǐ bò":["擗"],"bò bāi":["擘"],"jù jǐ":["據"],mēng:["擝"],"sǒu sòu":["擞"],xǐng:["擤","箵","醒"],cā:["擦"],"níng nǐng nìng":["擰"],"zhì jié":["擳"],"là liè":["擸","爉"],"sòu sǒu":["擻"],"lì luò yuè":["擽"],"tī zhāi zhì":["擿"],pān:["攀","潘","眅","萠"],lèi:["攂","泪","涙","淚","禷","类","纇","蘱","酹","銇","錑","頛","頪","類","颣"],"cā sǎ":["攃"],"jùn pèi":["攈"],"lì luò":["攊","躒"],"là lài":["攋","櫴"],"lú luó":["攎"],"zǎn cuán":["攒"],"xiān jiān":["攕"],"mí mǐ mó":["攠"],"zǎn cuán zàn zuān":["攢"],zuàn:["攥"],"lì shài":["攦"],"lì luǒ":["攭"],"guǐ guì":["攱"],"jī qī yǐ":["攲"],fàng:["放"],"wù móu":["敄"],"chù shōu":["敊"],"gé guó è":["敋"],"duó duì":["敓","敚"],"duō què":["敠","敪"],"sàn sǎn":["散"],"dūn duì":["敦","镦"],"qī yǐ jī":["敧"],"xiào xué":["敩"],"shù shǔ shuò":["数","數"],"ái zhú":["敱","敳"],"xiòng xuàn":["敻"],"zhuó zhú":["斀"],"yì dù":["斁"],"lí tái":["斄"],"fěi fēi":["斐"],"yǔ zhōng":["斔"],"dòu dǒu":["斗"],"wò guǎn":["斡"],"tǒu tiǎo":["斢"],dòu:["斣","梪","浢","痘","窦","竇","脰","荳","豆","逗","郖","酘","閗","闘","餖","饾","鬥","鬦","鬪","鬬","鬭"],"yín zhì":["斦"],"chǎn jiè":["斺"],"wū yū yú":["於"],"yóu liú":["斿"],"páng bàng":["旁"],"máo mào":["旄"],"pī bì":["旇"],"xuán xuàn":["旋"],"wú mó":["无"],zǎo:["早","枣","栆","棗","澡","璪","薻","藻","蚤"],gā:["旮"],"gàn hàn":["旰"],"tái yīng":["旲"],"xū xù":["旴"],"tūn zhùn":["旽"],"wù wǔ":["旿"],"pò pèi":["昢"],zòng:["昮","猔","疭","瘲","粽","糉","糭","縦"],ǎi:["昹","毐","矮","蔼","藹","譪","躷","霭","靄"],"huàng huǎng":["晃"],xuǎn:["晅","癣","癬","选","選"],"xù kuā":["晇"],hǒng:["晎"],shài:["晒","曬"],"yūn yùn":["晕","煴"],"shèng chéng":["晟","椉","盛"],"jǐng yǐng":["景"],shǎn:["晱","熌","睒","覢","閃","闪","陕","陝"],"qǐ dù":["晵"],"ǎn àn yǎn":["晻"],"wǎng wàng":["暀"],zàn:["暂","暫","瓉","瓒","瓚","禶","襸","讃","讚","賛","贊","赞","蹔","鄼","錾","鏨","饡"],"yùn yūn":["暈"],"mín mǐn":["暋"],"dǔ shǔ":["暏"],shǔ:["暑","曙","潻","癙","糬","署","薥","薯","藷","蜀","蠴","襡","襩","鱪","鱰","黍","鼠","鼡"],"jiǎn lán":["暕"],nuǎn:["暖","煗","餪"],"bào pù":["暴"],"xī xǐ":["暿"],"pù bào":["曝","瀑"],"qū qǔ":["紶"],"qǔ qū":["曲"],"gèng gēng":["更"],"hū hù":["曶","雽"],"zēng céng":["曽","橧"],"céng zēng":["曾","竲"],"cǎn qián jiàn":["朁"],"qiè hé":["朅"],"bì pí":["朇","禆","笓","裨"],"yǒu yòu":["有"],"bān fén":["朌","鳻"],"fú fù":["服","洑"],"fěi kū":["朏","胐"],"qú xù chǔn":["朐"],"juān zuī":["朘"],"huāng máng wáng":["朚"],"qī jī":["期"],"tóng chuáng":["朣","橦"],zhá:["札","牐","箚","蚻","譗","鍘","铡","閘","闸"],"zhú shù shú":["朮"],"shù shú zhú":["术"],"zhū shú":["朱"],"pǔ pò pō piáo":["朴"],"dāo tiáo mù":["朷"],"guǐ qiú":["朹"],xiǔ:["朽","滫","潃","糔"],"chéng chēng":["朾"],zá:["杂","沯","砸","襍","雑","雜","雥","韴"],"yú wū":["杅"],"gān gǎn":["杆"],"chā chà":["杈"],"shān shā":["杉"],cūn:["村","皴","竴","膥","踆","邨"],"rèn ér":["杒","梕"],"sháo biāo":["杓"],"dì duò":["杕","枤"],"gū gài":["杚"],"yí zhì lí duò":["杝"],"gàng gāng":["杠"],"tiáo tiāo":["条","條"],"mà mǎ":["杩"],"sì zhǐ xǐ":["杫"],"yuán wán":["杬","蚖"],"bèi fèi":["杮"],"shū duì":["杸"],"niǔ chǒu":["杻"],"wò yuè":["枂","臒"],máo:["枆","毛","氂","渵","牦","矛","罞","茅","茆","蝥","蟊","軞","酕","鉾","錨","锚","髦","鶜"],"pī mì":["枈"],àng:["枊","盎","醠"],"fāng bìng":["枋"],"hù dǐ":["枑"],xín:["枔","襑","鐔","鬵"],"yāo yǎo":["枖"],"ě è":["枙"],"zhī qí":["枝"],"cōng zōng":["枞","樅"],"xiān zhēn":["枮"],"tái sì":["枱"],"gǒu jǔ gōu":["枸"],"bāo fú":["枹"],"yì xiè":["枻","栧"],"tuó duò":["柁","馱","駄","驮"],"yí duò lí":["柂"],"nǐ chì":["柅"],"pán bàn":["柈","跘"],"yǎng yàng yāng yīng":["柍"],"fù fū fǔ":["柎"],"bǎi bó bò":["柏"],mǒu:["某"],"sháo shào":["柖"],zhè:["柘","樜","浙","淛","蔗","蟅","這","鷓","鹧","䗪"],"yòu yóu":["柚","櫾"],"guì jǔ":["柜"],"zhà zuò":["柞"],"dié zhì":["柣","眰"],"zhā zǔ zū":["柤"],"chá zhā":["查","査"],"āo ào":["柪","軪"],"bā fú pèi bó biē":["柭"],"duò zuó wù":["柮"],"bì bié":["柲"],"zhù chù":["柷"],"bēi pēi":["柸"],"shì fèi":["柹"],"shān zhà shi cè":["栅"],"lì yuè":["栎","櫟"],"qì qiè":["栔","砌"],"qī xī":["栖","蹊"],"guā kuò":["栝"],"bīng bēn":["栟"],"xiào jiào":["校"],"jiàn zùn":["栫","袸"],"yǒu yù":["栯"],"hé hú":["核"],gēn:["根","跟"],"zhī yì":["栺"],"gé gē":["格"],"héng háng":["桁"],"guàng guāng":["桄"],"yí tí":["桋","荑"],sāng:["桑","桒","槡"],"jú jié":["桔"],"yú móu":["桙"],"ráo náo":["桡","橈"],"guì huì":["桧","檜"],"chén zhèn":["桭"],"tīng yíng":["桯"],"bó po":["桲"],"bèn fàn":["桳"],"fēng fèng":["桻","葑"],"sù yìn":["梀"],"tǐng tìng":["梃"],"xuān juān xié":["梋"],"tú chá":["梌"],"āo yòu":["梎"],kuǎn:["梡","欵","款","歀"],"shāo sào":["梢"],"qín chén cén":["梣"],"lí sì qǐ":["梩"],"chān yán":["梴"],"bīn bīng":["梹","槟","檳"],"táo chóu dào":["梼"],"cōng sōng":["棇"],"gùn hùn":["棍"],"dé zhé":["棏"],"pái bèi pèi":["棑"],"bàng pǒu bèi bēi":["棓"],"dì dài tì":["棣"],sēn:["森","椮","槮","襂"],"rěn shěn":["棯"],"léng lēng líng":["棱"],"fú sù":["棴"],"zōu sǒu":["棷"],zōu:["棸","箃","緅","諏","诹","邹","郰","鄒","鄹","陬","騶","驺","鯫","鲰","黀","齱","齺"],"zhào zhuō":["棹"],"chēn shēn":["棽"],"jiē qiè":["椄"],"yǐ yī":["椅"],"chóu zhòu diāo":["椆"],"qiāng kōng":["椌"],"zhuī chuí":["椎"],"bēi pí":["椑"],mēn:["椚"],"quān juàn quán":["椦"],"duǒ chuán":["椯"],"wěi huī":["椲"],"jiǎ jiā":["椵"],"hán jiān":["椷"],"shèn zhēn":["椹"],"yàn yà":["椻"],"zhā chá":["楂"],"guō kuǎ":["楇"],"jí zhì":["楖"],"kǔ hù":["楛"],"yóu yǒu":["楢"],"sǒng cōng":["楤"],"yuán xuàn":["楥"],"yǎng yàng yīng":["楧"],pián:["楩","胼","腁","賆","蹁","駢","騈","骈","骿","㛹"],"dié yè":["楪"],"dùn shǔn":["楯"],"còu zòu":["楱"],"dì dǐ shì":["楴"],"kǎi jiē":["楷"],"róu ròu":["楺"],"lè yuè":["楽"],"wēn yùn":["榅","鞰"],lǘ:["榈","櫚","氀","膢","藘","閭","闾","驢","驴"],shén:["榊","神","鉮","鰰","𬬹"],"bī pi":["榌"],"zhǎn niǎn zhèn":["榐"],"fú fù bó":["榑"],"jiàn jìn":["榗"],"bǎng bàng":["榜"],"shā xiè":["榝","樧"],nòu:["槈","耨","鎒","鐞"],"qiǎn lián xiàn":["槏"],gàng:["槓","焵","焹","筻","鿍"],gāo:["槔","槹","橰","櫜","睾","篙","糕","羔","臯","韟","餻","高","髙","鷎","鷱","鼛"],"diān zhěn zhēn":["槙"],"kǎn jiàn":["槛"],"xí dié":["槢"],"jī guī":["槣"],"róng yōng":["槦"],"tuán shuàn quán":["槫"],"qì sè":["槭"],"cuī zhǐ":["槯"],"yǒu chǎo":["槱"],"màn wàn":["槾"],"lí chī":["樆"],"léi lěi":["樏","櫑","礌"],"cháo jiǎo chāo":["樔"],"chēng táng":["樘"],"jiū liáo":["樛"],"mó mú":["模"],"niǎo mù":["樢"],"héng hèng":["横","橫"],xuě:["樰","膤","艝","轌","雪","鱈","鳕"],"fá fèi":["橃"],rùn:["橍","润","潤","膶","閏","閠","闰"],"zhǎn jiǎn":["橏"],shùn:["橓","瞚","瞬","舜","蕣","順","顺","鬊"],"tuí dūn":["橔"],"táng chēng":["橖"],"sù qiū":["橚"],"tán diàn":["橝"],"fén fèn fèi":["橨"],"rǎn yān":["橪"],"cū chu":["橻"],"shū qiāo":["橾"],"píng bò":["檘"],"zhái shì tú":["檡"],"biǎo biāo":["檦"],"qiān lián":["檶"],"nǐ mí":["檷"],"jiàn kǎn":["檻"],"nòu ruǎn rú":["檽"],"jī jì":["櫅","禨"],"huǎng guǒ gǔ":["櫎"],"lǜ chū":["櫖"],"miè mèi":["櫗"],ōu:["櫙","欧","歐","殴","毆","瓯","甌","膒","藲","謳","讴","鏂","鴎","鷗","鸥"],"zhù zhuó":["櫡"],"jué jì":["櫭"],"huái guī":["櫰"],"chán zhàn":["欃"],"wéi zuì":["欈"],cáng:["欌","鑶"],"yù yì":["欥"],"chù qù xì":["欪"],"kài ài":["欬"],"yì yīn":["欭"],"xì kài":["欯"],"shuò sòu":["欶"],"ǎi ēi éi ěi èi ê̄ ế ê̌ ề":["欸"],"qī yī":["欹"],"chuā xū":["欻"],"chǐ chuài":["欼"],"kǎn qiàn":["欿"],"kǎn kè":["歁"],"chuǎn chuán":["歂"],"yīn yān":["歅"],"jìn qūn":["歏"],pēn:["歕"],"xū chuā":["歘"],"xī shè":["歙"],"liǎn hān":["歛"],"zhì chí":["歭"],"sè shà":["歰"],sǐ:["死"],"wěn mò":["歾"],piǎo:["殍","皫","瞟","醥","顠"],"qíng jìng":["殑"],"fǒu bó":["殕"],"zhí shi":["殖"],"yè yān yàn":["殗"],"hūn mèi":["殙"],chòu:["殠","臰","遚"],"kuì huì":["殨","溃","潰"],cuàn:["殩","熶","爨","窜","竄","篡","簒"],"yīn yān yǐn":["殷"],"qìng kēng shēng":["殸"],"yáo xiáo xiào":["殽"],"gū gǔ":["毂","蛄"],"guàn wān":["毌"],"dú dài":["毒"],"xún xùn":["毥"],mú:["毪","氁"],"dòu nuò":["毭"],"sāi suī":["毸"],lu:["氇"],sào:["氉","瘙","矂","髞"],"shì zhī":["氏"],"dī dǐ":["氐"],"máng méng":["氓"],"yáng rì":["氜"],shuǐ:["水","氵","氺","閖"],"zhěng chéng zhèng":["氶"],tǔn:["氽"],"fán fàn":["氾"],"guǐ jiǔ":["氿"],"bīn pà pā":["汃"],"zhuó què":["汋"],"dà tài":["汏"],pìn:["汖","牝","聘"],"hàn hán":["汗","馯"],tu:["汢"],"tāng shāng":["汤","湯"],"zhī jì":["汥"],"gàn hán cén":["汵"],"wèn mén":["汶"],"fāng pāng":["汸"],"hǔ huǎng":["汻"],"niú yóu":["汼"],hàng:["沆"],"shěn chén":["沈"],"dùn zhuàn":["沌"],"nǜ niǔ":["沑"],"méi mò":["沒","没"],"tà dá":["沓"],"mì wù":["沕"],"hóng pāng":["沗"],"shā shà":["沙"],"zhuǐ zǐ":["沝"],"ōu òu":["沤","漚"],"jǔ jù":["沮"],"tuō duó":["沰"],"mǐ lì":["沵"],"yí chí":["沶"],"xiè yì":["泄"],"bó pō":["泊"],"mì bì":["泌","秘"],"chù shè":["泏"],"yōu yòu āo":["泑"],"pēng píng":["泙","硑"],"pào pāo":["泡"],"ní nì":["泥","秜"],"yuè sà":["泧"],"jué xuè":["泬","疦"],"lóng shuāng":["泷","瀧"],"luò pō":["泺","濼"],"zé shì":["泽","澤"],"sǎ xǐ":["洒"],"sè qì zì":["洓"],"xǐ xiǎn":["洗"],"kǎo kào":["洘"],"àn yàn è":["洝"],"lěi lèi":["洡"],"qiè jié":["洯"],"qiǎn jiān":["浅"],"jì jǐ":["济","済","濟","纪"],"hǔ xǔ":["浒","滸"],"jùn xùn":["浚","濬"],"yǐng chéng yíng":["浧"],"liàn lì":["浰"],"féng hóng":["浲","溄"],"jiǒng jiōng":["浻"],"suī něi":["浽"],"yǒng chōng":["涌"],"tūn yūn":["涒"],"wō guō":["涡","渦"],hēng:["涥","脝"],"zhǎng zhàng":["涨","漲"],"shòu tāo":["涭"],shuàn:["涮","腨"],"kōng náng":["涳"],"wò wǎn yuān":["涴"],"tuō tuò":["涶"],wō:["涹","猧","窝","窩","莴","萵","蜗","蝸","踒"],"qiè jí":["淁"],"guǒ guàn":["淉"],"lín lìn":["淋","獜","疄"],"tǎng chǎng":["淌"],"nào chuò zhuō":["淖"],"péng píng":["淜"],féi:["淝","肥","腓","蜰"],"pì pèi":["淠"],"niǎn shěn":["淰"],"biāo hǔ":["淲"],"chún zhūn":["淳"],"hùn hún":["混"],qiǎn:["淺","繾","缱","肷","膁","蜸","譴","谴","遣","鑓"],"wèn mín":["渂"],"rè ruò luò":["渃"],"dú dòu":["渎","瀆","读"],"jiàn jiān":["渐","溅","漸","濺"],"miǎn shéng":["渑","澠"],"nuǎn nuán":["渜"],"qiú wù":["渞"],"tíng tīng":["渟"],"dì tí dī":["渧"],"gǎng jiǎng":["港"],"hōng qìng":["渹"],tuān:["湍","煓"],"huì mǐn xū":["湏"],"xǔ xù":["湑"],pén:["湓","瓫","盆","葐"],"mǐn hūn":["湣"],"tuàn nuǎn":["湪"],"qiū jiǎo":["湫","湬"],"yān yīn":["湮"],"bàn pán":["湴"],"zhuāng hún":["湷"],"yàn guì":["溎"],"lián liǎn nián xián xiàn":["溓"],"dá tǎ":["溚","鿎"],"liū liù":["溜","澑","蹓"],lùn:["溣"],mǎ:["溤","犸","獁","玛","瑪","码","碼","遤","鎷","馬","马","鰢","鷌"],"zhēn qín":["溱"],"nì niào":["溺"],"chù xù":["滀","畜"],"wěng wēng":["滃"],"hào xuè":["滈"],"qì xì xiē":["滊"],"xíng yíng":["滎"],"zé hào":["滜"],"piāo piào piǎo":["漂"],"cóng sǒng":["漎"],"féng péng":["漨"],"luò tà":["漯"],"pēng bēn":["漰"],"chóng shuāng":["漴"],"huǒ kuò huò":["漷"],"liáo liú":["漻"],"cuǐ cuī":["漼"],"cóng zǒng":["潀"],"cóng zōng":["潈"],"pì piē":["潎"],"dàng xiàng":["潒"],"huáng guāng":["潢"],"liáo lào lǎo":["潦"],"cōng zòng":["潨"],"zhí zhì":["潪"],"tān shàn":["潬"],"tú zhā":["潳"],"sàn sǎ":["潵"],hēi:["潶","黑","黒","𬭶"],"chéng dèng":["澄","瀓"],"cūn cún":["澊"],"péng pēng":["澎"],"hòng gǒng":["澒","銾"],"wàn màn":["澫"],"kuài huì":["澮"],"guō wō":["濄"],"pēn fén":["濆"],"jí shà":["濈"],"huì huò":["濊"],"dǐng tìng":["濎"],"mǐ nǐ":["濔"],"bì pì":["濞"],"cuì zuǐ":["濢"],"hù huò":["濩"],"ǎi kài kè":["濭"],"wěi duì":["濻","瀢"],"zàn cuán":["濽","灒"],"yǎng yàng":["瀁"],"wǎng wāng":["瀇"],"mò miè":["瀎","眜"],suǐ:["瀡","膸","髓"],"huái wāi":["瀤"],"zùn jiàn":["瀳"],"yīng yǐng yìng":["瀴"],"ráng ràng":["瀼"],shuàng:["灀"],"zhuó jiào zé":["灂"],sǎ:["灑","訯","靸"],"luán luàn":["灓"],"dǎng tǎng":["灙"],"xún quán quàn":["灥"],"huǒ biāo":["灬"],"zhà yù":["灹"],"fén bèn":["炃"],"jiǒng guì":["炅"],"pàng fēng":["炐"],quē:["炔","缺","缼","蒛"],biān:["炞","煸","甂","砭","笾","箯","籩","編","编","蝙","邉","邊","鍽","鞭","鯾","鯿","鳊"],"zhāo zhào":["炤"],"zhuō chù":["炪"],"pào páo bāo":["炮"],"páo fǒu":["炰"],"shǎn qián shān":["炶"],"zhà zhá":["炸"],"jiǎo yào":["烄"],quǎn:["烇","犬","犭","畎","綣","绻","虇"],"yàng yáng":["烊"],"lào luò":["烙"],"huí huǐ":["烠"],rè:["热","熱"],"fú páo":["烰"],"xiè chè":["烲","焎"],"yàn shān":["烻"],"hūn xūn":["焄"],kào:["焅","犒","銬","铐","靠","鮳","鯌","鲓","㸆"],"juān yè":["焆"],"jùn qū":["焌"],"tāo dào":["焘"],"chǎo jù":["焣"],"wò ài":["焥"],"zǒng cōng":["焧"],"xī yì":["焬"],"xìn xīn":["焮"],"chāo zhuō":["焯"],"xiǒng yīng":["焸","焽"],kuǐ:["煃","跬","蹞","頍","𫠆"],"huī yùn xūn":["煇"],"jiǎo qiāo":["煍"],"qián shǎn shān":["煔"],"xī yí":["煕"],"shà shā":["煞"],"yè zhá":["煠"],"yáng yàng":["煬"],"ēn yūn":["煾"],"yūn yǔn":["熅"],"hè xiāo":["熇"],xióng:["熊","熋","雄"],"xūn xùn":["熏","爋"],gòng:["熕","貢","贡"],liū:["熘"],"cōng zǒng":["熜"],"lù āo":["熝"],"shú shóu":["熟"],"fēng péng":["熢"],"cuǐ suī":["熣"],tēng:["熥","膯","鼟"],"yùn yù":["熨"],"áo āo":["熬"],"hàn rǎn":["熯"],"ōu ǒu":["熰"],"huáng huǎng":["熿"],"chǎn dǎn chàn":["燀"],"jiāo zhuó qiáo jué":["燋"],"yàn yān":["燕"],"tài liè":["燤"],āo:["爊"],"yàn xún":["爓"],"jué jiào":["爝","覐","覚","覺","觉"],"lǎn làn":["爦"],"zhuǎ zhǎo":["爪"],"zhǎo zhuǎ":["爫"],"fù fǔ":["父"],diē:["爹","褺","跌"],zāng:["牂","羘","臧","賍","賘","贓","贜","赃","髒"],"piàn piān":["片"],"biān miàn":["牑"],bǎng:["牓","綁","绑"],"yǒu yōng":["牗"],"chēng chèng":["牚","竀"],niú:["牛","牜"],"jiū lè":["牞"],"mù móu":["牟"],māng:["牤"],"gē qiú":["牫"],"yòu chōu":["牰"],"tè zhí":["犆"],bēn:["犇","錛","锛"],"jiān qián":["犍","玪"],má:["犘","痲","蔴","蟇","麻"],"máo lí":["犛"],"bá quǎn":["犮"],"zhuó bào":["犳"],"àn hān":["犴"],"kàng gǎng":["犺"],"pèi fèi":["犻"],"fān huān":["犿"],kuáng:["狂","狅","誑","诳","軖","軠","鵟","𫛭"],"yí quán chí":["狋"],"xīng shēng":["狌"],"tuó yí":["狏"],kǔ:["狜","苦"],"huán huān":["狟"],"hé mò":["狢"],"tà shì":["狧"],"máng dòu":["狵"],"xī shǐ":["狶"],suān:["狻","痠","酸"],"bài pí":["猈"],"jiān yàn":["猏","豣"],"yī yǐ":["猗"],"yá wèi":["猚"],cāi:["猜"],"māo máo":["猫","貓"],"chuàn chuān":["猭"],"tuān tuàn":["猯","貒"],"yà jiá qiè":["猰"],"hè xiē gé hài":["猲"],"biān piàn":["猵","獱"],"bó pò":["猼"],"háo gāo":["獋"],"fén fèn":["獖"],"yào xiāo":["獟"],"shuò xī":["獡"],"gé liè xiē":["獦"],"nòu rú":["獳"],"náo nǎo yōu":["獶"],ráng:["獽","瓤","禳","穣","穰","蘘","躟","鬤"],"náo yōu":["獿"],"lǜ shuài":["率"],"wáng wàng":["王"],"yáng chàng":["玚"],"mín wén":["玟"],"bīn fēn":["玢"],"mén yǔn":["玧"],"qiāng cāng":["玱","瑲","篬"],"án gān":["玵"],"xuán xián":["玹"],"cī cǐ":["玼","跐"],"yí tāi":["珆"],"zǔ jù":["珇"],fà:["珐","琺","蕟","髪","髮"],"yín kèn":["珢"],"huī hún":["珲"],"xuán qióng":["琁"],"fú fū":["琈"],"bǐng pín":["琕"],"cuì sè":["琗"],"yù wéi":["琟"],"tiǎn tiàn":["琠"],"zhuó zuó":["琢"],"běng pěi":["琣"],guǎn:["琯","璭","痯","筦","管","舘","輨","錧","館","馆","鳤"],"hún huī":["琿"],"xié jiē":["瑎"],"chàng dàng yáng":["瑒"],"tiàn zhèn":["瑱"],"bīn pián":["瑸","璸"],"tú shū":["瑹"],cuǐ:["璀","皠","趡"],"zǎo suǒ":["璅"],"jué qióng":["璚"],"lú fū":["璷"],"jì zī":["璾"],suí:["瓍","綏","绥","遀","随","隨","髄"],"mí xǐ":["瓕"],"qióng wěi wèi":["瓗"],"huán yè yà":["瓛"],"bó páo":["瓟"],"zhí hú":["瓡"],piáo:["瓢","闝"],"wǎ wà":["瓦"],"xiáng hóng":["瓨"],wèng:["瓮","甕","罋","蕹","齆"],"shèn shén":["甚"],ruí:["甤","緌","蕤"],yòng:["用","砽","苚","蒏","醟","㶲"],shuǎi:["甩"],béng:["甭","甮"],"yóu zhá":["甴"],"diàn tián shèng":["甸"],"tǐng dīng":["町","甼"],"zāi zī":["甾"],"bì qí":["畁"],"dá fú":["畗"],"cè jì":["畟"],"zāi zī tián":["畠"],"zhì chóu shì":["畤"],"fān pān":["畨","番"],"shē yú":["畬"],"dāng dàng dǎng":["當"],"jiāng qiáng":["疆"],"pǐ yǎ shū":["疋"],"jié qiè":["疌"],"yí nǐ":["疑"],nè:["疒","眲","訥","讷"],"gē yì":["疙"],"nüè yào":["疟","瘧"],"lì lài":["疠","癘"],"yǎ xiā":["疨"],xuē:["疶","蒆","薛","辥","辪","靴","鞾"],"dǎn da":["疸"],"fá biǎn":["疺"],"fèi féi":["疿","痱"],"shān diàn":["痁"],"téng chóng":["痋"],"tōng tóng":["痌"],"wěi yòu yù":["痏"],"tān shǐ":["痑"],"pū pù":["痡","鋪"],"bēng péng":["痭"],"má lìn":["痳"],"tiǎn diàn":["痶"],"ān yè è":["痷"],"kē ē":["痾"],"zhì chì":["瘈"],"jiǎ xiá xiā":["瘕"],"lěi huì":["瘣"],"chài cuó":["瘥"],"diān chēn":["瘨"],"da dá":["瘩"],"biě biē":["瘪"],qué:["瘸"],"dàn dān":["癉"],"guì wēi":["癐"],"nòng nóng":["癑"],"biē biě":["癟"],"bō bǒ":["癷"],bái:["白"],"jí bī":["皀"],"de dì dí dī":["的"],"pā bà":["皅"],"gāo háo":["皋"],"gāo yáo":["皐"],"lì luò bō":["皪"],"zhā cǔ":["皻"],"zhāo zhǎn dǎn":["皽"],"jiān jiàn":["监","監","鋻","间","鞬"],"gài gě hé":["盖"],"máng wàng":["盳"],yuǎn:["盶","逺","遠"],"tián xián":["盷"],"xiāng xiàng":["相"],dǔn:["盹","趸","躉"],"xì pǎn":["盻"],"shěng xǐng":["省"],"yún hùn":["眃"],"miǎn miàn":["眄"],"kàn kān":["看"],"yìng yāng yǎng":["眏"],"yǎo āo ǎo":["眑"],"jū xū kōu":["眗"],"yí chì":["眙"],"dié tì":["眣"],"bǐng fǎng":["眪"],"pàng pán":["眫"],"mī mí":["眯","瞇"],"xuàn shùn xún":["眴"],tiào:["眺","粜","糶","覜","趒"],"zhe zhuó zháo zhāo":["着"],"qiáo shào xiāo":["睄"],"cuó zhuài":["睉"],gùn:["睔","謴"],"suì zuì":["睟"],"pì bì":["睥","稫","辟"],"yì zé gāo":["睪"],"xǐng xìng":["睲"],"guì wèi kuì":["瞆"],"kòu jì":["瞉"],"qióng huán":["瞏"],"mán mén":["瞒","瞞"],"diāo dōu":["瞗"],"lou lóu lǘ":["瞜"],"shùn rún":["瞤"],"liào liǎo":["瞭","钌"],"jiàn xián":["瞯"],"wǔ mí":["瞴"],"guì kuì":["瞶"],"nǐng chēng":["矃"],"huò yuè":["矆"],"mēng méng":["矇"],"kuàng guō":["矌"],"guàn quán":["矔"],"mǎn mán":["矕"],"jīn guān qín":["矜"],"jīn qín guān":["矝"],"yù xù jué":["矞"],"jiǎo jiáo":["矫","矯"],duǎn:["短"],"shí dàn":["石"],"gāng qiāng kòng":["矼"],"huā xū":["砉"],"pīn bīn fēn":["砏"],"yán yàn":["研","硏"],"luǒ kē":["砢"],"fú fèi":["砩","笰"],"zhǔ zhù":["砫"],"lá lì lā":["砬"],"kuāng guāng":["硄"],"gè luò":["硌"],"shuò shí":["硕","碩"],"wèi wéi ái":["硙"],"què kè kù":["硞"],"mǎng bàng":["硥"],"luò lòng":["硦"],"yǒng tóng":["硧"],nüè:["硸","虐"],"kēng kěng":["硻"],"yān yǎn":["硽"],"zhuì chuí duǒ":["硾"],"kōng kòng":["硿"],"zòng cóng":["碂"],"jiān zhàn":["碊"],"lù liù":["碌","陆"],"què xī":["碏"],"lún lǔn lùn":["碖"],"náo gāng":["碙"],"jié yà":["碣"],"wèi wěi":["碨"],"tí dī":["碮"],"chá chā":["碴"],"qiāo què":["碻"],"sù xiè":["碿"],"liú liù":["磂","遛","鎦","馏"],"sī tí":["磃"],"bàng páng":["磅"],"huá kě gū":["磆"],"wěi kuǐ":["磈"],"xiá qià yà":["磍"],"lián qiān":["磏"],"wèi ái gài":["磑"],"lá lā":["磖"],"áo qiāo":["磝"],"pēng pèng":["磞","閛"],"yīn yǐn":["磤"],"lěi léi":["磥"],"mó mò":["磨"],"qì zhú":["磩"],"láo luò":["磱"],"pán bō":["磻"],"jí shé":["磼"],"hé qiāo qiào":["礉"],"kè huò":["礊"],"què hú":["礐"],"è qì":["礘"],cǎ:["礤","礸"],"xián xín":["礥"],"léi lěi lèi":["礧"],"yán yǎn":["礹"],"qí zhǐ":["祇","蚔"],"bēng fāng":["祊"],"bì mì":["祕"],suàn:["祘","笇","筭","算","蒜"],"piào piāo":["票"],"jì zhài":["祭"],"shuì lèi":["祱"],"jìn jīn":["禁"],"chán shàn":["禅"],"yáng shāng":["禓"],"zhī zhǐ tí":["禔"],"shàn chán":["禪"],"yú yù ǒu":["禺"],"zǐ zì":["秄"],"chá ná":["秅"],"zhǒng zhòng chóng":["种"],"hào mào":["秏"],"kù kū":["秙"],zū:["租","葅"],chèng:["秤","穪"],"huó kuò":["秮","秳"],"chēng chèn chèng":["称","稱"],"shì zhì":["秲","銴"],"fù pū":["秿"],"xùn zè":["稄"],"tú shǔ":["稌"],"zhùn zhǔn":["稕"],"jī qí":["稘","綨","觭"],"léng líng":["稜"],"zuì zú sū":["稡"],"xì qiè":["稧","郄"],"zhǒng zhòng":["種"],"zōng zǒng":["稯"],"xián jiān liàn":["稴"],"zī jiū":["稵"],"jī qǐ":["稽"],ròng:["穃"],"shān cǎn cēn":["穇"],"mén méi":["穈"],"jǐ jì":["穖"],"xiāo rào":["穘"],"zhuō bó":["穛"],"tóng zhǒng zhòng":["穜"],zuō:["穝"],"biāo pāo":["穮","藨"],"zhuō jué":["穱"],"cuán zàn":["穳"],"kōng kòng kǒng":["空"],"yū yǔ":["穻"],zhǎi:["窄","鉙"],báo:["窇","雹"],"kū zhú":["窋"],"jiào liáo liù":["窌"],"wā guī":["窐"],"tiǎo yáo":["窕"],"xūn yìn":["窨"],"yà yē":["窫"],"tián diān yǎn":["窴"],"chāo kē":["窼"],"kuǎn cuàn":["窽","窾"],"chù qì":["竐"],"qǔ kǒu":["竘"],"jìng zhěn":["竧"],"kǎn kàn":["竷"],"zhú dǔ":["竺"],"lè jīn":["竻"],"zhuì ruì":["笍"],"háng hàng":["笐"],"cén jìn hán":["笒"],"dā xiá nà":["笚"],"zé zuó":["笮"],"lóng lǒng":["笼","篭","籠","躘","龓"],"zhù zhú":["筑","築"],"dá dā":["答","荅"],shāi:["筛","篩","簁","籭"],"yún jūn":["筠"],"láng làng":["筤","郎","阆"],"zhì zhǐ":["筫"],o:["筽"],"póu bù fú pú":["箁"],"pái bēi":["箄"],gè:["箇","虼","鉻","铬"],"tái chí":["箈"],"guǎi dài":["箉"],"zhào dào":["箌"],"jīng qìng":["箐"],"lín lǐn":["箖"],"jùn qūn":["箘"],"shī yí":["箷","釶"],"yuē yào chuò":["箹"],"xiāo shuò qiào":["箾"],"gōng gǎn lǒng":["篢"],"páng péng":["篣"],"zhuó huò":["篧"],"jiǎn jiān":["篯"],"dí zhú":["篴"],"zān cēn cǎn":["篸"],"zhuàn suǎn zuàn":["篹"],"piǎo biāo":["篻"],"guó guì":["簂"],"cè jí":["簎"],"mì miè":["簚"],"shāi sī":["簛"],"sǔn zhuàn":["簨"],"gàn gǎn":["簳"],"bò bǒ":["簸"],"bó bù":["簿"],shi:["籂"],"zhēn jiān":["籈"],"zhuàn zuǎn":["籑"],"fān pān biān":["籓"],"sǒu shǔ":["籔"],zuǎn:["籫","繤","纂","纉","纘","缵"],nǚ:["籹","釹","钕"],"shā chǎo":["粆"],"kāng jīng":["粇"],fěn:["粉","黺"],cū:["粗","觕","麁","麄","麤"],"nián zhān":["粘"],"cè sè":["粣"],"zhōu yù":["粥"],"shēn sǎn":["糁"],"biān biǎn":["糄","萹"],miàn:["糆","面","靣","麪","麫","麵","麺"],"hú hū hù":["糊"],"gǔ gòu":["糓"],"mí méi":["糜"],"sǎn shēn":["糝","糣"],zāo:["糟","蹧","遭","醩"],"mì sī":["糸"],"jiū jiǔ":["糺"],"xì jì":["系","繫"],"zhēng zhěng":["糽"],"chà chǎ":["紁","衩"],"yuē yāo":["約","约"],"hóng gōng":["紅","红"],"hé gē":["紇","纥"],"wén wèn":["紋","纹"],fóu:["紑"],"jì jié jiè":["紒"],"pī pí bǐ":["紕","纰"],"jīn jìn":["紟"],"zhā zā":["紥","紮"],hā:["紦"],"fū fù":["紨"],"chōu chóu":["紬"],"lèi léi lěi":["累"],"bō bì":["紴"],"tiǎn zhěn":["紾"],"jiōng jiǒng":["絅"],"jié jiē":["結","结","节"],"guà kuā":["絓"],"bǎi mò":["絔"],"gēng huán":["絙"],"jié xié":["絜"],"quán shuān":["絟"],"gǎi ǎi":["絠"],"luò lào":["絡","络"],"bīng bēng pēng":["絣"],"gěi jǐ":["給","给"],"tóng tōng dòng":["絧"],"tiào diào dào":["絩"],"lěi lèi léi":["絫"],"gāi hài":["絯"],"chī zhǐ":["絺"],"wèn miǎn mán wàn":["絻"],"huán huàn wàn":["綄"],"qīn xiān":["綅"],"tì tí":["綈"],"yán xiàn":["綖"],"zōng zèng zòng":["綜"],"chēn lín":["綝"],"zhǔn zhùn":["綧"],"qiàn qīng zhēng":["綪"],"qìng qǐ":["綮"],"lún guān":["綸","纶"],"chuò chāo":["綽","绰"],"tián tǎn chān":["緂"],"lǜ lù":["緑","绿"],"ruǎn ruàn":["緛"],"jí qī":["緝"],"zhòng chóng":["緟","重"],"miáo máo":["緢"],"xiè yè":["緤"],huǎn:["緩","缓","㬊"],"gēng gèng":["緪","縆"],"tōu xū shū":["緰"],"zōng zòng":["緵","繌"],"yùn gǔn":["緷"],"guā wō":["緺"],"yùn yūn wēn":["緼","縕"],"bāng bàng":["縍"],"gǔ hú":["縎","鶻"],"cī cuò suǒ":["縒"],"cuī shuāi":["縗"],"róng rǒng ròng":["縙"],"zài zēng":["縡"],cài:["縩","菜","蔡"],"féng fèng":["縫"],"suō sù":["縮","缩"],"yǎn yǐn":["縯","酓"],"zòng zǒng":["縱","纵"],"zhuàn juàn":["縳"],"mò mù":["縸","莫"],"piǎo piāo":["縹","缥"],"fán pó":["繁"],"bēng bèng":["繃"],"móu miù miào liǎo":["繆"],"yáo yóu zhòu":["繇"],"zēng zèng":["繒","缯"],"jú jué":["繘"],"chuō chuò":["繛"],"zūn zǔn":["繜"],rào:["繞","绕","遶"],"chǎn chán":["繟"],"huì huí":["繢","缋","藱"],"qiāo sāo zǎo":["繰"],"jiǎo zhuó":["繳","缴"],"dàn tán chán":["繵"],nǒng:["繷"],"pú fú":["纀"],"yào lì":["纅"],"rǎng xiāng":["纕"],"lí sǎ xǐ lǐ":["纚"],"xiān qiàn":["纤"],"jīng jìng":["经"],"tí tì":["绨"],"bēng běng bèng":["绷"],"zōng zèng":["综"],"jī qī":["缉"],"wēn yùn yūn":["缊"],"fèng féng":["缝"],"shuāi cuī suī":["缞"],"miù móu liáo miào mù":["缪"],"qiāo sāo":["缲"],fǒu:["缶","缹","缻","雬","鴀"],"bà ba pí":["罢","罷"],"guà guǎi":["罫"],"yáng xiáng":["羊","羏"],"měi gāo":["羙"],"yì xī":["羛"],"qiǎng qiān":["羟"],"qiāng kòng":["羫"],"qián xián yán":["羬"],nóu:["羺"],"hóng gòng":["羾"],"pī bì pō":["翍"],"qú yù":["翑"],ké:["翗"],"qiào qiáo":["翘"],"zhái dí":["翟"],"dào zhōu":["翢"],"hóu qú":["翵"],shuǎ:["耍"],"ruǎn nuò":["耎"],"ér nài":["耏"],"zhuān duān":["耑"],"pá bà":["耙"],"chí sì":["耛"],"qù chú":["耝"],"lún lǔn":["耣"],"jí jiè":["耤"],"tāng tǎng":["耥"],pǎng:["耪","覫"],"zhá zé":["耫"],"yē yé":["耶"],"yún yíng":["耺"],"wà tuǐ zhuó":["聉"],"ér nǜ":["聏"],"tiē zhé":["聑"],"dǐ zhì":["聜"],qié:["聺"],"nǐ jiàn":["聻"],"lèi lē":["肋"],cào:["肏","襙","鄵","鼜"],"bó dí":["肑"],"xiào xiāo":["肖"],"dù dǔ":["肚"],chāi:["肞","釵","钗"],"hán qín hàn":["肣"],"pàng pán pàn":["肨","胖"],"zhūn chún":["肫"],āng:["肮","骯"],"yù yō":["育"],"pí bǐ bì":["肶"],"fèi bì":["胇"],"bèi bēi":["背"],"fèi zǐ":["胏"],"píng pēng":["胓","苹"],"fū fú zhǒu":["胕"],"shèng shēng":["胜"],kuà:["胯","跨","骻"],"gǎi hǎi":["胲"],"gē gé gā":["胳"],"néng nài":["能"],"guī kuì":["胿"],"mài mò":["脉"],"zāng zàng":["脏"],"jiǎo jué":["脚","角"],cuǒ:["脞"],"de te":["脦"],"zuī juān":["脧"],něi:["脮","腇","餒","馁","鮾","鯘"],"pú fǔ":["脯"],niào:["脲"],shuí:["脽"],guò:["腂","過","鐹"],"là xī":["腊"],"yān ā":["腌"],"gāo gào":["膏"],"lù biāo":["膔"],chuái:["膗"],"zhuān chuán chún zhuǎn":["膞"],chuài:["膪","踹"],"fán pán":["膰"],"wǔ hū":["膴"],"shān dàn":["膻"],tún:["臀","臋","蛌","豘","豚","軘","霕","飩","饨","魨","鲀","黗"],"bì bei":["臂"],"là gé":["臈"],"sào sāo":["臊"],nào:["臑","閙","闹","鬧"],"ní luán":["臡"],"qiān xián":["臤"],"guàng jiǒng":["臦"],"guǎng jiǒng":["臩"],"chòu xiù":["臭"],"mián biān":["臱"],"dié zhí":["臷"],"zhī jìn":["臸"],"shè shě":["舍"],pù:["舖","舗"],"bān bō pán":["般"],kuā:["舿"],"gèn gěn":["艮"],"sè shǎi":["色"],"fú bó":["艴"],"jiāo qiú":["艽"],"chāi chā":["芆"],"sháo què":["芍"],"hù xià":["芐"],"zì zǐ":["芓"],"huì hū":["芔"],"tún chūn":["芚"],"jiè gài":["芥"],"xù zhù":["芧"],"yuán yán":["芫"],"xīn xìn":["芯"],"lún huā":["芲"],"wù hū":["芴"],"gōu gǒu":["芶"],"mào máo":["芼"],"fèi fú":["芾"],"chán yín":["苂"],qiē:["苆"],"sū sù":["苏"],"tiáo sháo":["苕"],"lì jī":["苙"],"kē hē":["苛"],"jù qǔ":["苣"],"ruò rě":["若"],"zhù níng":["苧"],"pā bó":["苩"],xiú:["苬"],"zhǎ zuó":["苲"],"jū chá":["苴"],nié:["苶"],"shēng ruí":["苼"],"qié jiā":["茄"],"zǐ cí":["茈"],"qiàn xī":["茜"],chǎi:["茝"],"fá pèi":["茷"],ráo:["荛","蕘","襓","饒","饶"],"yíng xíng":["荥"],"qián xún":["荨","蕁"],"yìn yīn":["荫"],"hé hè":["荷"],"shā suō":["莎"],"péng fēng":["莑"],"shēn xīn":["莘"],"wǎn guān guǎn":["莞"],"yóu sù":["莤"],"shāo xiāo":["莦","蛸"],"làng liáng":["莨"],"piǎo fú":["莩"],"wèn wǎn miǎn":["莬"],"shì shí":["莳","蒔"],"tù tú":["莵"],"xiān liǎn":["莶","薟"],"wǎn yù":["菀"],"zōu chù":["菆"],"lù lǜ":["菉"],"jūn jùn":["菌"],"niè rěn":["菍"],"zī zì zāi":["菑"],"tú tù":["菟"],"jiē shà":["菨"],"qiáo zhǎo":["菬"],"tái zhī chí":["菭"],"fēi fěi":["菲","蜚"],"qín qīn jīn":["菳"],"zū jù":["菹","蒩"],"lǐn má":["菻"],"tián tiàn":["菾"],tiē:["萜","貼","贴"],"luò là lào luō":["落"],"zhù zhuó zhe":["著"],"shèn rèn":["葚"],"gě gé":["葛"],"jùn suǒ":["葰"],"kuì kuài":["蒉"],"rú ná":["蒘"],"méng mēng měng":["蒙"],"yuán huán":["蒝"],"xú shú":["蒣"],"xí xì":["蒵"],"mì míng":["蓂"],"sōu sǒu":["蓃"],"gài gě hé hài":["蓋"],"yǎo zhuó":["蓔"],"diào tiáo dí":["蓧"],"xū qiū fū":["蓲"],"zí jú":["蓻"],"liǎo lù":["蓼"],xu:["蓿"],"hàn hǎn":["蔊"],"màn wàn mán":["蔓"],"pó bò":["蔢"],"fān fán bō":["蕃"],"hóng hòng":["蕻"],"yù ào":["薁","隩"],"xí xiào":["薂"],"báo bó bò":["薄"],"cí zī":["薋"],"wàn luàn":["薍"],"kǎo hāo":["薧"],"yuǎn wěi":["薳"],"zhòu chóu":["薵"],"wō mái":["薶"],"xiāo hào":["藃"],"yù xù xū":["藇"],"jiè jí":["藉"],"diào zhuó":["藋"],"cáng zàng":["藏"],lǎ:["藞"],"chú zhū":["藸"],"pín píng":["蘋"],"gān hán":["虷"],"hóng jiàng":["虹"],"huī huǐ":["虺"],"xiā há":["虾"],"mǎ mà mā":["蚂"],"fāng bàng":["蚄"],"bàng bèng":["蚌"],"jué quē":["蚗"],"qín qián":["蚙"],"gōng zhōng":["蚣"],"fǔ fù":["蚥"],"dài dé":["蚮"],"gǒu qú xù":["蚼"],"bǒ pí":["蚾"],"shé yí":["蛇"],tiě:["蛈","鉄","銕","鐡","鐵","铁","驖"],"gé luò":["蛒"],"máng bàng":["蛖"],"yì xǔ":["蛡"],"há gé":["蛤"],"qiè ní":["蛪"],"é yǐ":["蛾"],"zhē zhé":["蜇"],"là zhà":["蜡"],suò:["蜶","逤"],"yóu qiú":["蝤"],"xiā hā":["蝦"],"xī qī":["螇"],"bī pí":["螕"],"nài něng":["螚"],"hé xiá":["螛"],"guì huǐ":["螝"],"mǎ mā mà":["螞"],"shì zhē":["螫"],"zhì dié":["螲"],"jiàn chán":["螹"],"ma má mò":["蟆"],"mǎng měng":["蟒"],"biē bié":["蟞"],"bēn fèi":["蟦"],"láo liáo":["蟧"],"yín xún":["蟫"],"lí lǐ":["蠡"],"xuè xiě":["血"],"xíng háng hàng héng":["行"],"shuāi cuī":["衰"],"tuó tuō":["袉"],"lǐng líng":["袊"],"bào páo pào":["袌"],"jù jiē":["袓"],"hè kè":["袔"],"yí yì":["袘","貤"],"nà jué":["袦"],"bèi pī":["被"],"chǐ nuǒ":["袲"],"chǐ qǐ duǒ nuǒ":["袳"],"jiá qiā jié":["袷"],"bó mò":["袹"],"guī guà":["袿"],"liè liě":["裂"],"chéng chěng":["裎"],"jiē gé":["裓"],"dāo chóu":["裯"],"shang cháng":["裳"],"yuān gǔn":["裷"],"yǎn ān":["裺"],"tì xī":["裼"],"fù fú":["褔"],"chǔ zhǔ":["褚"],"tuì tùn":["褪"],lǎi:["襰"],"yào yāo":["要"],"qín tán":["覃"],"jiàn xiàn":["見","见"],piǎn:["覑","諞","谝","貵","𡎚"],"piē miè":["覕"],"yíng yǐng":["覮"],"qù qū":["覰","覷","觑"],"jiàn biǎn":["覵"],"luó luǎn":["覶"],"zī zuǐ":["觜"],"huà xiè":["觟"],"jiě jiè xiè":["解","觧"],"xué hù":["觷"],"lì lù":["觻"],tǎo:["討","讨"],zhùn:["訰"],"zī zǐ":["訾"],"yí dài":["詒","诒"],xiòng:["詗","诇"],"diào tiǎo":["誂"],"yí chǐ chì":["誃"],"lǎng làng":["誏"],"ēi éi ěi èi xī":["誒","诶"],shuà:["誜"],"yǔ yù":["語","语","雨"],"shuō shuì yuè":["說","说"],"shuí shéi":["誰","谁"],"qū juè":["誳"],"chī lài":["誺"],"nì ná":["誽"],"diào tiáo":["調"],"pǐ bēi":["諀"],"jì jī":["諅"],"zé zuò zhǎ cuò":["諎"],"chù jí":["諔"],"háo xià":["諕"],"lùn lún":["論","论"],"shì dì":["諟"],"huà guā":["諣"],"xǐ shāi āi":["諰"],"nán nàn":["諵","難"],miù:["謬","谬"],zèn:["譖","谮"],"shí zhì":["識","识"],"juàn xuān":["讂"],"yí tuī":["讉"],zhán:["讝"],"xǔ hǔ":["许"],"xiáng yáng":["详"],"tiáo diào zhōu":["调"],"chén shèn":["谌"],"mí mèi":["谜"],"màn mán":["谩"],"gǔ yù":["谷"],"huō huò huá":["豁"],"zhì zhài":["豸"],"huān huán":["貆"],"kěn kūn":["貇"],"mò hé":["貈"],"mò hé háo":["貉"],"jù lóu":["貗"],"zé zhài":["責","责"],"dài tè":["貸"],"bì bēn":["賁"],"jiǎ gǔ jià":["賈"],"xiōng mín":["賯"],càng:["賶"],"zhuàn zuàn":["賺","赚"],"wàn zhuàn":["贃"],"gàn gòng zhuàng":["贛"],"yuán yùn":["贠"],"bēn bì":["贲"],"jiǎ gǔ":["贾"],zǒu:["走","赱","鯐"],"dié tú":["趃"],"jū qiè":["趄"],"qū cù":["趋","趨"],"jí jié":["趌"],"guā huó":["趏"],"què qì jí":["趞"],"tàng tāng":["趟"],"chuō zhuó":["趠"],"qù cù":["趣"],"yuè tì":["趯"],"bō bào":["趵"],"kuà wù":["趶"],"guì jué":["趹"],"fāng fàng páng":["趽"],"páo bà":["跁"],"qí qǐ":["跂"],"jiàn chén":["跈"],"pǎo páo":["跑"],"diǎn diē tiē":["跕"],"jū jù qiè":["跙"],bǒ:["跛"],"luò lì":["跞"],"dài duò duō chí":["跢"],zhuǎi:["跩"],"bèng pián":["跰"],"tiào táo":["跳"],"shū chōu":["跾"],"liàng liáng":["踉"],"tà tā":["踏"],chǎ:["蹅","鑔","镲"],"dí zhí":["蹢"],"dēng dèng":["蹬","鐙","镫"],cèng:["蹭"],"dūn cún":["蹲"],"juě jué":["蹶"],liāo:["蹽"],"xiè sǎ":["躠"],tǐ:["躰","軆","骵"],"yà zhá gá":["轧","軋"],"xìn xiàn":["軐"],"fàn guǐ":["軓"],"zhuàn zhuǎn":["転"],"zhóu zhòu":["軸","轴"],bú:["轐","醭","鳪"],"zhuǎn zhuàn zhuǎi":["转"],"zǎi zài":["载"],"niǎn zhǎn":["辗"],"biān bian":["边"],"dào biān":["辺"],"yǐ yí":["迆","迤","迱"],"guò guo guō":["过"],"wàng kuāng":["迋"],"hái huán":["还"],"zhè zhèi":["这"],"yuǎn yuàn":["远"],"zhì lì":["迣"],"zhù wǎng":["迬"],"zhuī duī":["追"],"shì kuò":["适"],tòu:["透"],"tōng tòng":["通"],guàng:["逛"],"dǎi dài":["逮"],"suì suí":["遂"],"tí dì":["遆"],"yí wèi":["遗"],"shì dí zhé":["適"],cà:["遪"],"huán hái":["還"],"lí chí":["邌"],"kàng háng":["邟"],"nà nèi nā":["那"],"xié yá yé yú xú":["邪"],"gāi hái":["郂"],"huán xún":["郇"],"chī xī":["郗"],hǎo:["郝"],"lì zhí":["郦"],"xiáo ǎo":["郩"],"dōu dū":["都"],liǎo:["曢","鄝","镽"],"zàn cuán cuó":["酂","酇"],"dīng dǐng":["酊"],"cù zuò":["酢"],"fā pō":["酦"],"shāi shī":["酾"],niàng:["酿","醸"],"qiú chōu":["醔"],"pō fā":["醗","醱"],"chǎn chěn":["醦"],"yàn liǎn xiān":["醶"],"niàng niáng":["釀"],"lǐ li":["里"],"lí xǐ xī":["釐"],"liǎo liào":["釕"],"dīng dìng":["釘","钉"],"qiǎo jiǎo":["釥"],"yú huá":["釪"],"huá wū":["釫"],"rì rèn jiàn":["釰","釼"],"dì dài":["釱"],"pī zhāo":["釽"],"yá yé":["釾"],"bǎ pá":["鈀","钯"],"tā tuó":["鉈","铊"],běi:["鉳"],"bǐng píng":["鉼"],"hā kē":["鉿","铪"],chòng:["銃","铳"],"xiǎng jiōng":["銄"],"yù sì":["銉"],"xù huì":["銊"],"rén rěn":["銋"],"shàn shuò":["銏"],"chì lì":["銐"],"xiǎn xǐ":["銑","铣"],"hóu xiàng":["銗"],"diào tiáo yáo":["銚"],"xiān kuò tiǎn guā":["銛","銽","铦"],"zhé niè":["銸"],"zhōng yōng":["銿"],"tōu tù dòu":["鋀"],"méi méng":["鋂"],"wàn jiǎn":["鋄","鎫"],"tǐng dìng":["鋌","铤"],"juān jiān cuān":["鋑"],"sī tuó":["鋖"],"juān xuān juàn":["鋗"],"wú huá wū":["鋘"],"zhuó chuò":["鋜"],"xíng xìng jīng":["鋞"],"jū jú":["鋦","锔"],"zuì niè":["鋷"],"yuān yuǎn wǎn wān":["鋺"],"gāng gàng":["鋼","钢"],zhuī:["錐","锥","騅","骓","鵻"],ā:["錒","锕"],"cuō chā":["鎈"],"suǒ sè":["鎍"],"yáo zú":["鎐"],"yè tà gé":["鎑"],"qiāng chēng":["鎗"],"gé lì":["鎘","镉","鬲"],"bī pī bì":["鎞"],"gǎo hào":["鎬"],"zú chuò":["鏃"],"xiū xiù":["鏅"],"shòu sōu":["鏉"],"dí dī":["鏑","镝"],"qiāo sǎn càn":["鏒"],"lù áo":["鏕"],"tāng táng":["鏜"],"jiàn zàn":["鏩"],"huì suì ruì":["鏸"],"qiǎng qiāng":["鏹","镪"],"sǎn xiàn sà":["鏾"],"jiǎn jiàn":["鐧","锏"],"dāng chēng":["鐺","铛"],"zuān zuàn":["鑽"],"sà xì":["钑"],"yào yuè":["钥"],"tǒu dǒu":["钭"],"zuàn zuān":["钻"],"qiān yán":["铅"],"pí pī":["铍"],"yáo diào tiáo":["铫"],"tāng tàng":["铴"],"pù pū":["铺"],"tán xiān":["锬"],"liù liú":["镏"],"hào gǎo":["镐"],"táng tāng":["镗"],"tán chán xín":["镡"],"huò shǎn":["閄"],"hàn bì":["閈","闬"],"kāng kàng":["閌","闶"],"xián jiàn jiān jiǎn":["閒"],"xiā xiǎ":["閕"],"xiǎ kě":["閜"],"biàn guān":["閞"],"hé gé":["閤","颌"],"hòng xiàng":["閧"],"sē xī":["閪"],"tíng tǐng":["閮"],"è yān":["閼","阏"],"hòng juǎn xiàng":["闂"],"bǎn pàn":["闆"],"dū shé":["闍","阇"],"què quē":["闕"],"tāng táng chāng":["闛"],"kàn hǎn":["闞","阚"],"xì sè tà":["闟"],"mēn mèn":["闷"],"quē què":["阙"],"yán diàn":["阽"],"ā ē":["阿"],"bēi pō pí":["陂"],"yàn yǎn":["隁"],"yú yáo shù":["隃"],"lóng lōng":["隆"],"duì zhuì":["隊"],"suí duò":["隋"],"gāi qí ái":["隑"],"huī duò":["隓","隳"],"wěi kuí":["隗"],"lì dài":["隸"],"zhuī cuī wéi":["隹"],"hè hú":["隺","鶮"],"jùn juàn":["隽","雋"],"nán nàn nuó":["难"],"què qiāo qiǎo":["雀"],"guàn huán":["雚"],"guī xī":["雟"],"sè xí":["雭"],án:["雸"],"wù méng":["雺"],tèng:["霯"],"lù lòu":["露"],mái:["霾"],"jìng liàng":["靚"],"gé jí":["革"],bǎ:["靶"],"yāng yàng":["鞅"],"gé tà sǎ":["鞈"],"biān yìng":["鞕"],"qiào shāo":["鞘"],"juān xuān":["鞙"],"shàng zhǎng":["鞝"],"pí bǐng bì bēi":["鞞"],la:["鞡"],"xiè dié":["鞢"],ēng:["鞥"],"móu mù":["鞪"],"bì bǐng":["鞸"],"mèi wà":["韎"],rǒu:["韖"],"shè xiè":["韘"],"yùn wēn":["韫"],"dùn dú":["頓","顿"],duǐ:["頧"],luō:["頱"],"bīn pín":["頻"],yóng:["顒","颙","鰫"],mān:["顢","颟"],"jǐng gěng":["颈"],"jié xié jiá":["颉"],"kē ké":["颏"],"pín bīn":["频"],"chàn zhàn":["颤"],"fēng fěng":["風","风"],"biāo diū":["颩"],"bá fú":["颰"],"sāo sōu":["颾"],"liù liáo":["飂"],"shí sì yì":["食"],"yǎng juàn":["飬"],"zhù tǒu":["飳"],"yí sì":["飴"],"zuò zé zhā":["飵"],tiè:["飻","餮"],"xiǎng náng":["饟"],"táng xíng":["饧"],"gē le":["饹"],"chā zha":["馇"],"náng nǎng":["馕"],"yūn wò":["馧"],"zhī shì":["馶"],"xìn jìn":["馸"],"kuài jué":["駃"],zǎng:["駔","驵"],"tái dài":["駘"],"xún xuān":["駨"],"liáng láng":["駺"],piàn:["騗","騙","骗","魸"],"dài tái":["骀"],"sāo sǎo":["骚"],"gǔ gū":["骨"],"bèi mó":["骳"],"xiāo qiāo":["骹"],"bǎng pǎng":["髈"],"bó jué":["髉"],"bì pǒ":["髲"],"máo méng":["髳"],"kuò yuè":["髺"],"bā bà":["魞","鲃"],"jì cǐ":["鮆"],"bó bà":["鮊"],"zhǎ zhà":["鮓","鲊"],"chóu dài":["鮘"],"luò gé":["鮥"],"guī xié wā kuí":["鮭"],"xiān xiǎn":["鮮","鲜"],"pū bū":["鯆"],"yì sī":["鯣"],"bà bó":["鲌"],"guī xié":["鲑"],"sāi xǐ":["鳃"],"niǎo diǎo":["鳥"],"diāo zhāo":["鳭"],"gān hàn yàn":["鳱"],"fū guī":["鳺"],"jiān qiān zhān":["鳽"],"hé jiè":["鶡"],"piān biǎn":["鶣"],"chuàn zhì":["鶨"],"cāng qiāng":["鶬"],"sǔn xùn":["鶽"],"biāo páo":["麃"],"zhù cū":["麆"],"jūn qún":["麇","麕"],chi:["麶"],"mó me":["麼"],"mó me ma":["麽"],"mí mǒ":["麿"],"dàn shèn":["黮"],"zhěn yān":["黰"],"dǎn zhǎn":["黵"],"miǎn mǐn měng":["黾"],hōu:["齁"],nàng:["齉"],"qí jì zī zhāi":["齐"],"yín kěn yǎn":["龂"],"yín kěn":["龈"],"gōng wò":["龏"],"guī jūn qiū":["龜","龟"],"kuí wā":["䖯"],lōu:["䁖"],"ōu qū":["𫭟"],"lóu lǘ":["𦝼"],"gǎ gā gá":["嘎"],"wā guà":["坬"],"zhǐ dǐ":["茋"],"gǒng hóng":["硔"],"yáo xiào":["滧"]},G=new qi;Object.keys(Jn).forEach(n=>{const i=Jn[n];for(let g of i)G.set(g,n)});const ah=["zh","ch","sh","z","c","s","b","p","m","f","d","t","n","l","g","k","h","j","q","x","r","y","w",""],rh=["j","q","x"],jh=["uān","uán","uǎn","uàn","uan","uē","ué","uě","uè","ue","ūn","ún","ǔn","ùn","un","ū","ú","ǔ","ù","u"],bh={uān:"üān",uán:"üán",uǎn:"üǎn",uàn:"üàn",uan:"üan",uē:"üē",ué:"üé",uě:"üě",uè:"üè",ue:"üe",ūn:"ǖn",ún:"ǘn",ǔn:"ǚn",ùn:"ǜn",un:"ün",ū:"ǖ",ú:"ǘ",ǔ:"ǚ",ù:"ǜ",u:"ü"},mh=["ia","ian","iang","iao","ie","iu","iong","ua","uai","uan","uang","ue","ui","uo","üan","üe","van","ve"],ni={一:"yì",二:"èr",三:"sān",四:"sì",五:"wǔ",六:"liù",七:"qī",八:"bā",九:"jiǔ",十:"shí",百:"bǎi",千:"qiān",万:"wàn",亿:"yì",单:"dān",两:"liǎng",双:"shuāng",多:"duō",几:"jǐ",十一:"shí yī",零一:"líng yī",第一:"dì yī",一十:"yī shí",一十一:"yī shí yī"},ii={重:"chóng",行:"háng",斗:"dǒu",更:"gēng"};function xh(){const n={零一:"líng yī","〇一":"líng yī",十一:"shí yī",一十:"yī shí",第一:"dì yī",一十一:"yī shí yī"};for(let i in ni)for(let g in ii){const u=`${i}${g}`,h=`${ni[i]} ${ii[g]}`;n[u]=h}return n}const gi=xh(),fh=Object.keys(gi).map(n=>({zh:n,pinyin:gi[n],probability:1e-12,length:O(n),priority:R.Normal,dict:Symbol("rule")})),pi={不:{bú:[4]},一:{yí:[4],yì:[1,2,3]}},wh={不:["的","而","之","后","也","还","地"],一:["的","而","之","后","也","还","是"]},qh=Object.keys(pi);function ph(n,i,g){if(qh.indexOf(n)===-1)return dn(n);if(i===g&&i&&dn(i)!==i)return kn(dn(n));if(g&&!wh[n].includes(g)){const u=dn(g);if(u!==g){const h=Tn(u),e=pi[n];for(let s in e)if(e[s].indexOf(Number(h))!==-1)return s}}}function vh(n,i){if(n==="了"&&(!i||!G.get(i)))return"liǎo"}function kh(n,i){if(n==="々")return!i||!G.get(i)?"tóng":G.get(i).split(" ")[0]}function hi(n,i,g){return kh(n,i)||vh(n,i)||ph(n,i,g)||dn(n)}const _n={南宫:"nán gōng",第五:"dì wǔ",万俟:"mò qí",司马:"sī mǎ",上官:"shàng guān",欧阳:"ōu yáng",夏侯:"xià hóu",诸葛:"zhū gě",闻人:"wén rén",东方:"dōng fāng",赫连:"hè lián",皇甫:"huáng fǔ",尉迟:"yù chí",公羊:"gōng yáng",澹台:"tán tái",公冶:"gōng yě",宗政:"zōng zhèng",濮阳:"pú yáng",淳于:"chún yú",太叔:"tài shū",申屠:"shēn tú",公孙:"gōng sūn",仲孙:"zhòng sūn",轩辕:"xuān yuán",令狐:"líng hú",钟离:"zhōng lí",宇文:"yǔ wén",长孙:"zhǎng sūn",慕容:"mù róng",鲜于:"xiān yú",闾丘:"lǘ qiū",司徒:"sī tú",司空:"sī kōng",亓官:"qí guān",司寇:"sī kòu",仉督:"zhǎng dū",子车:"zǐ jū",颛孙:"zhuān sūn",端木:"duān mù",巫马:"wū mǎ",公西:"gōng xī",漆雕:"qī diāo",乐正:"yuè zhèng",壤驷:"rǎng sì",公良:"gōng liáng",拓跋:"tuò bá",夹谷:"jiá gǔ",宰父:"zǎi fǔ",榖梁:"gǔ liáng",段干:"duàn gān",百里:"bǎi lǐ",东郭:"dōng guō",南门:"nán mén",呼延:"hū yán",羊舌:"yáng shé",梁丘:"liáng qiū",左丘:"zuǒ qiū",东门:"dōng mén",西门:"xī mén",句龙:"gōu lóng",毌丘:"guàn qiū",赵:"zhào",钱:"qián",孙:"sūn",李:"lǐ",周:"zhōu",吴:"wú",郑:"zhèng",王:"wáng",冯:"féng",陈:"chén",褚:"chǔ",卫:"wèi",蒋:"jiǎng",沈:"shěn",韩:"hán",杨:"yáng",朱:"zhū",秦:"qín",尤:"yóu",许:"xǔ",何:"hé",吕:"lǚ",施:"shī",张:"zhāng",孔:"kǒng",曹:"cáo",严:"yán",华:"huà",金:"jīn",魏:"wèi",陶:"táo",姜:"jiāng",戚:"qī",谢:"xiè",邹:"zōu",喻:"yù",柏:"bǎi",水:"shuǐ",窦:"dòu",章:"zhāng",云:"yún",苏:"sū",潘:"pān",葛:"gě",奚:"xī",范:"fàn",彭:"péng",郎:"láng",鲁:"lǔ",韦:"wéi",昌:"chāng",马:"mǎ",苗:"miáo",凤:"fèng",花:"huā",方:"fāng",俞:"yú",任:"rén",袁:"yuán",柳:"liǔ",酆:"fēng",鲍:"bào",史:"shǐ",唐:"táng",费:"fèi",廉:"lián",岑:"cén",薛:"xuē",雷:"léi",贺:"hè",倪:"ní",汤:"tāng",滕:"téng",殷:"yīn",罗:"luó",毕:"bì",郝:"hǎo",邬:"wū",安:"ān",常:"cháng",乐:"yuè",于:"yú",时:"shí",傅:"fù",皮:"pí",卞:"biàn",齐:"qí",康:"kāng",伍:"wǔ",余:"yú",元:"yuán",卜:"bǔ",顾:"gù",孟:"mèng",平:"píng",黄:"huáng",和:"hé",穆:"mù",萧:"xiāo",尹:"yǐn",姚:"yáo",邵:"shào",湛:"zhàn",汪:"wāng",祁:"qí",毛:"máo",禹:"yǔ",狄:"dí",米:"mǐ",贝:"bèi",明:"míng",臧:"zāng",计:"jì",伏:"fú",成:"chéng",戴:"dài",谈:"tán",宋:"sòng",茅:"máo",庞:"páng",熊:"xióng",纪:"jǐ",舒:"shū",屈:"qū",项:"xiàng",祝:"zhù",董:"dǒng",梁:"liáng",杜:"dù",阮:"ruǎn",蓝:"lán",闵:"mǐn",席:"xí",季:"jì",麻:"má",强:"qiáng",贾:"jiǎ",路:"lù",娄:"lóu",危:"wēi",江:"jiāng",童:"tóng",颜:"yán",郭:"guō",梅:"méi",盛:"shèng",林:"lín",刁:"diāo",钟:"zhōng",徐:"xú",邱:"qiū",骆:"luò",高:"gāo",夏:"xià",蔡:"cài",田:"tián",樊:"fán",胡:"hú",凌:"líng",霍:"huò",虞:"yú",万:"wàn",支:"zhī",柯:"kē",昝:"zǎn",管:"guǎn",卢:"lú",莫:"mò",经:"jīng",房:"fáng",裘:"qiú",缪:"miào",干:"gān",解:"xiè",应:"yīng",宗:"zōng",丁:"dīng",宣:"xuān",贲:"bēn",邓:"dèng",郁:"yù",单:"shàn",杭:"háng",洪:"hóng",包:"bāo",诸:"zhū",左:"zuǒ",石:"shí",崔:"cuī",吉:"jí",钮:"niǔ",龚:"gōng",程:"chéng",嵇:"jī",邢:"xíng",滑:"huá",裴:"péi",陆:"lù",荣:"róng",翁:"wēng",荀:"xún",羊:"yáng",於:"yū",惠:"huì",甄:"zhēn",曲:"qū",家:"jiā",封:"fēng",芮:"ruì",羿:"yì",储:"chǔ",靳:"jìn",汲:"jí",邴:"bǐng",糜:"mí",松:"sōng",井:"jǐng",段:"duàn",富:"fù",巫:"wū",乌:"wū",焦:"jiāo",巴:"bā",弓:"gōng",牧:"mù",隗:"wěi",山:"shān",谷:"gǔ",车:"chē",侯:"hóu",宓:"mì",蓬:"péng",全:"quán",郗:"xī",班:"bān",仰:"yǎng",秋:"qiū",仲:"zhòng",伊:"yī",宫:"gōng",宁:"nìng",仇:"qiú",栾:"luán",暴:"bào",甘:"gān",钭:"tǒu",厉:"lì",戎:"róng",祖:"zǔ",武:"wǔ",符:"fú",刘:"liú",景:"jǐng",詹:"zhān",束:"shù",龙:"lóng",叶:"yè",幸:"xìng",司:"sī",韶:"sháo",郜:"gào",黎:"lí",蓟:"jì",薄:"bó",印:"yìn",宿:"sù",白:"bái",怀:"huái",蒲:"pú",邰:"tái",从:"cóng",鄂:"è",索:"suǒ",咸:"xián",籍:"jí",赖:"lài",卓:"zhuó",蔺:"lìn",屠:"tú",蒙:"méng",池:"chí",乔:"qiáo",阴:"yīn",鬱:"yù",胥:"xū",能:"nài",苍:"cāng",双:"shuāng",闻:"wén",莘:"shēn",党:"dǎng",翟:"zhái",谭:"tán",贡:"gòng",劳:"láo",逄:"páng",姬:"jī",申:"shēn",扶:"fú",堵:"dǔ",冉:"rǎn",宰:"zǎi",郦:"lì",雍:"yōng",郤:"xì",璩:"qú",桑:"sāng",桂:"guì",濮:"pú",牛:"niú",寿:"shòu",通:"tōng",边:"biān",扈:"hù",燕:"yān",冀:"jì",郏:"jiá",浦:"pǔ",尚:"shàng",农:"nóng",温:"wēn",别:"bié",庄:"zhuāng",晏:"yàn",柴:"chái",瞿:"qú",阎:"yán",充:"chōng",慕:"mù",连:"lián",茹:"rú",习:"xí",宦:"huàn",艾:"ài",鱼:"yú",容:"róng",向:"xiàng",古:"gǔ",易:"yì",慎:"shèn",戈:"gē",廖:"liào",庾:"yǔ",终:"zhōng",暨:"jì",居:"jū",衡:"héng",步:"bù",都:"dū",耿:"gěng",满:"mǎn",弘:"hóng",匡:"kuāng",国:"guó",文:"wén",寇:"kòu",广:"guǎng",禄:"lù",阙:"quē",东:"dōng",欧:"ōu",殳:"shū",沃:"wò",利:"lì",蔚:"wèi",越:"yuè",夔:"kuí",隆:"lóng",师:"shī",巩:"gǒng",厍:"shè",聂:"niè",晁:"cháo",勾:"gōu",敖:"áo",融:"róng",冷:"lěng",訾:"zī",辛:"xīn",阚:"kàn",那:"nā",简:"jiǎn",饶:"ráo",空:"kōng",曾:"zēng",母:"mǔ",沙:"shā",乜:"niè",养:"yǎng",鞠:"jū",须:"xū",丰:"fēng",巢:"cháo",关:"guān",蒯:"kuǎi",相:"xiàng",查:"zhā",后:"hòu",荆:"jīng",红:"hóng",游:"yóu",竺:"zhú",权:"quán",逯:"lù",盖:"gě",益:"yì",桓:"huán",公:"gōng",牟:"móu",哈:"hǎ",言:"yán",福:"fú",肖:"xiāo",区:"ōu",覃:"qín",朴:"piáo",繁:"pó",员:"yùn",句:"gōu",要:"yāo",过:"guō",钻:"zuān",谌:"chén",折:"shé",召:"shào",郄:"qiè",撒:"sǎ",甯:"nìng",六:"lù",啜:"chuài",行:"xíng"},Th=Object.keys(_n).map(n=>({zh:n,pinyin:_n[n],probability:1+O(n),length:O(n),priority:R.Surname,dict:Symbol("surname")})),ui={这个:"zhè ge",成为:"chéng wéi",认为:"rèn wéi",作为:"zuò wéi",部分:"bù fen",要求:"yāo qiú",应该:"yīng gāi",增长:"zēng zhǎng",提供:"tí gōng",觉得:"jué de",任务:"rèn wu",那个:"nà ge",称为:"chēng wéi",为主:"wéi zhǔ",了解:"liǎo jiě",处理:"chǔ lǐ",皇上:"huáng shang",只要:"zhǐ yào",大量:"dà liàng",力量:"lì liàng",几乎:"jī hū",干部:"gàn bù",目的:"mù dì",行为:"xíng wéi",只见:"zhǐ jiàn",认识:"rèn shi",市长:"shì zhǎng",师父:"shī fu",调查:"diào chá",重新:"chóng xīn",分为:"fēn wéi",知识:"zhī shi",导弹:"dǎo dàn",质量:"zhì liàng",行款:"háng kuǎn",行列:"háng liè",行话:"háng huà",行业:"háng yè",隔行:"gé háng",在行:"zài háng",行家:"háng jia",内行:"nèi háng",外行:"wài háng",同行:"tóng háng",本行:"běn háng",行伍:"háng wǔ",洋行:"yáng háng",银行:"yín háng",商行:"shāng háng",支行:"zhī háng",总行:"zǒng háng",行情:"háng qíng",懂行:"dǒng háng",行规:"háng guī",行当:"háng dang",行货:"háng huò",太行:"tài háng",入行:"rù háng",中行:"zhōng háng",农行:"nóng háng",工行:"gōng háng",建行:"jiàn háng",各行:"gè háng",行号:"háng hào",行高:"háng gāo",行首:"háng shǒu",行尾:"háng wěi",行末:"háng mò",行长:"háng cháng",行距:"háng jù",换行:"huàn háng",行会:"háng huì",行辈:"háng bèi",行道:"háng dào",道行:"dào heng",参与:"cān yù",充分:"chōng fèn",尽管:"jǐn guǎn",生长:"shēng zhǎng",数量:"shù liàng",应当:"yīng dāng",院长:"yuàn zhǎng",强调:"qiáng diào",只能:"zhǐ néng",音乐:"yīn yuè",以为:"yǐ wéi",处于:"chǔ yú",部长:"bù zhǎng",蒙古:"měng gǔ",只有:"zhǐ yǒu",适当:"shì dàng",只好:"zhǐ hǎo",成长:"chéng zhǎng",高兴:"gāo xìng",不了:"bù liǎo",产量:"chǎn liàng",胖子:"pàng zi",显得:"xiǎn de",只是:"zhǐ shì",似的:"shì de",率领:"shuài lǐng",改为:"gǎi wéi",不禁:"bù jīn",成分:"chéng fèn",答应:"dā ying",少年:"shào nián",兴趣:"xìng qù",太监:"tài jian",休息:"xiū xi",校长:"xiào zhǎng",更新:"gēng xīn",合同:"hé tong",喝道:"hè dào",重庆:"chóng qìng",重建:"chóng jiàn",使得:"shǐ de",审查:"shěn chá",累计:"lěi jì",给予:"jǐ yǔ",极为:"jí wéi",冠军:"guàn jūn",仿佛:"fǎng fú",头发:"tóu fa",投降:"tóu xiáng",家长:"jiā zhǎng",仔细:"zǐ xì",要是:"yào shi",将领:"jiàng lǐng",含量:"hán liàng",更为:"gèng wéi",积累:"jī lěi",地处:"dì chǔ",县长:"xiàn zhǎng",少女:"shào nǚ",路上:"lù shang",只怕:"zhǐ pà",能量:"néng liàng",储量:"chǔ liàng",供应:"gōng yìng",挑战:"tiǎo zhàn",西藏:"xī zàng",记得:"jì de",总量:"zǒng liàng",当真:"dàng zhēn",将士:"jiàng shì",差别:"chā bié",较为:"jiào wéi",长老:"zhǎng lǎo",大夫:"dài fu",差异:"chā yì",懂得:"dǒng de",尽量:"jǐn liàng",模样:"mú yàng",的确:"dí què",为首:"wéi shǒu",便宜:"pián yi",更名:"gēng míng",石头:"shí tou",州长:"zhōu zhǎng",为止:"wéi zhǐ",漂亮:"piào liang",炮弹:"pào dàn",藏族:"zàng zú",角色:"jué sè",当作:"dàng zuò",尽快:"jǐn kuài",人为:"rén wéi",重复:"chóng fù",胡同:"hú tòng",差距:"chā jù",弟兄:"dì xiong",大将:"dà jiàng",睡觉:"shuì jiào",一觉:"yí jiào",团长:"tuán zhǎng",队长:"duì zhǎng",区长:"qū zhǎng",难得:"nán dé",丫头:"yā tou",会长:"huì zhǎng",弟弟:"dì di",王爷:"wáng ye",重量:"zhòng liàng",誉为:"yù wéi",家伙:"jiā huo",华山:"huà shān",椅子:"yǐ zi",流量:"liú liàng",长大:"zhǎng dà",勉强:"miǎn qiǎng",会计:"kuài jì",过分:"guò fèn",济南:"jǐ nán",调动:"diào dòng",燕京:"yān jīng",少将:"shào jiàng",中毒:"zhòng dú",晓得:"xiǎo de",变更:"biàn gēng",打更:"dǎ gēng",认得:"rèn de",苹果:"píng guǒ",念头:"niàn tou",挣扎:"zhēng zhá",三藏:"sān zàng",剥削:"bō xuē",丞相:"chéng xiàng",少量:"shǎo liàng",寻思:"xún si",夺得:"duó dé",干线:"gàn xiàn",呼吁:"hū yù",处罚:"chǔ fá",长官:"zhǎng guān",柏林:"bó lín",亲戚:"qīn qi",身分:"shēn fèn",胳膊:"gē bo",着手:"zhuó shǒu",炸弹:"zhà dàn",咳嗽:"ké sou",叶子:"yè zi",外长:"wài zhǎng",供给:"gōng jǐ",师长:"shī zhǎng",变量:"biàn liàng",应有:"yīng yǒu",下载:"xià zài",乐器:"yuè qì",间接:"jiàn jiē",底下:"dǐ xià",打扮:"dǎ bàn",子弹:"zǐ dàn",弹药:"dàn yào",热量:"rè liàng",削弱:"xuē ruò",骨干:"gǔ gàn",容量:"róng liàng",模糊:"mó hu",转动:"zhuàn dòng",称呼:"chēng hu",科长:"kē zhǎng",处置:"chǔ zhì",着重:"zhuó zhòng",着急:"zháo jí",强迫:"qiǎng pò",庭长:"tíng zhǎng",首相:"shǒu xiàng",喇嘛:"lǎ ma",镇长:"zhèn zhǎng",只管:"zhǐ guǎn",重重:"chóng chóng",免得:"miǎn de",着实:"zhuó shí",度假:"dù jià",真相:"zhēn xiàng",相貌:"xiàng mào",处分:"chǔ fèn",委屈:"wěi qu",为期:"wéi qī",伯伯:"bó bo",伯子:"bǎi zi",圈子:"quān zi",见识:"jiàn shi",笼罩:"lǒng zhào",与会:"yù huì",都督:"dū du",都市:"dū shì",成都:"chéng dū",首都:"shǒu dū",帝都:"dì dū",王都:"wáng dū",东都:"dōng dū",都护:"dū hù",都城:"dū chéng",建都:"jiàn dū",迁都:"qiān dū",故都:"gù dū",定都:"dìng dū",中都:"zhōng dū",六安:"lù ān",宰相:"zǎi xiàng",较量:"jiào liàng",对称:"duì chèn",总长:"zǒng zhǎng",相公:"xiàng gong",空白:"kòng bái",打量:"dǎ liang",水分:"shuǐ fèn",舌头:"shé tou",没收:"mò shōu",行李:"xíng li",判处:"pàn chǔ",散文:"sǎn wén",处境:"chǔ jìng",孙子:"sūn zi",拳头:"quán tou",打发:"dǎ fā",组长:"zǔ zhǎng",骨头:"gǔ tou",宁可:"nìng kě",更换:"gēng huàn",薄弱:"bó ruò",还原:"huán yuán",重修:"chóng xiū",重来:"chóng lái",只顾:"zhǐ gù",爱好:"ài hào",馒头:"mán tou",军长:"jūn zhǎng",首长:"shǒu zhǎng",厂长:"chǎng zhǎng",司长:"sī zhǎng",长子:"zhǎng zǐ",强劲:"qiáng jìng",恰当:"qià dàng",头儿:"tóu er",站长:"zhàn zhǎng",折腾:"zhē teng",相处:"xiāng chǔ",统率:"tǒng shuài",中将:"zhōng jiàng",命中:"mìng zhòng",名将:"míng jiàng",木头:"mù tou",动弹:"dòng tan",地壳:"dì qiào",干活:"gàn huó",少爷:"shào ye",水量:"shuǐ liàng",补给:"bǔ jǐ",尾巴:"wěi ba",来得:"lái de",好奇:"hào qí",钥匙:"yào shi",当做:"dàng zuò",沉着:"chén zhuó",哑巴:"yǎ ba",车子:"chē zi",上将:"shàng jiàng",恶心:"ě xīn",担子:"dàn zi",应届:"yīng jiè",主角:"zhǔ jué",运转:"yùn zhuǎn",兄长:"xiōng zhǎng",格式:"gé shì",正月:"zhēng yuè",营长:"yíng zhǎng",当成:"dàng chéng",女婿:"nǚ xu",咽喉:"yān hóu",重阳:"chóng yáng",化为:"huà wéi",吐蕃:"tǔ bō",钻进:"zuān jìn",乐队:"yuè duì",亮相:"liàng xiàng",被子:"bèi zi",舍得:"shě de",杉木:"shā mù",击中:"jī zhòng",排长:"pái zhǎng",假期:"jià qī",分量:"fèn liàng",数次:"shù cì",提防:"dī fáng",吆喝:"yāo he",查处:"chá chǔ",量子:"liàng zǐ",里头:"lǐ tou",调研:"diào yán",伺候:"cì hou",重申:"chóng shēn",枕头:"zhěn tou",拚命:"pīn mìng",社长:"shè zhǎng",归还:"guī huán",批量:"pī liàng",畜牧:"xù mù",点着:"diǎn zháo",甚为:"shèn wéi",小将:"xiǎo jiàng",着眼:"zhuó yǎn",处死:"chǔ sǐ",厌恶:"yàn wù",鼓乐:"gǔ yuè",树干:"shù gàn",秘鲁:"bì lǔ",大方:"dà fāng",外头:"wài tou",班长:"bān zhǎng",星宿:"xīng xiù",宁愿:"nìng yuàn",钦差:"qīn chāi",为数:"wéi shù",勾当:"gòu dàng",削减:"xuē jiǎn",间谍:"jiàn dié",埋怨:"mán yuàn",结实:"jiē shi",计量:"jì liáng",淹没:"yān mò",村长:"cūn zhǎng",连长:"lián zhǎng",自给:"zì jǐ",武将:"wǔ jiàng",温差:"wēn chā",直奔:"zhí bèn",供求:"gōng qiú",剂量:"jì liàng",道长:"dào zhǎng",泄露:"xiè lòu",王八:"wáng ba",切割:"qiē gē",间隔:"jiàn gé",一晃:"yì huǎng",长假:"cháng jià",令狐:"líng hú",为害:"wéi hài",句子:"jù zi",偿还:"cháng huán",疙瘩:"gē da",燕山:"yān shān",堵塞:"dǔ sè",夺冠:"duó guàn",扎实:"zhā shi",电荷:"diàn hè",看守:"kān shǒu",复辟:"fù bì",郁闷:"yù mèn",尽早:"jǐn zǎo",切断:"qiē duàn",指头:"zhǐ tou",为生:"wéi shēng",畜生:"chù sheng",切除:"qiē chú",着力:"zhuó lì",着想:"zhuó xiǎng",级差:"jí chā",投奔:"tóu bèn",棍子:"gùn zi",含糊:"hán hu",少妇:"shào fù",兴致:"xìng zhì",纳闷:"nà mèn",干流:"gàn liú",卷起:"juǎn qǐ",扇子:"shàn zi",更改:"gēng gǎi",笼络:"lǒng luò",喇叭:"lǎ ba",载荷:"zài hè",妥当:"tuǒ dàng",为难:"wéi nán",着陆:"zhuó lù",燕子:"yàn zi",干吗:"gàn má",白发:"bái fà",总得:"zǒng děi",夹击:"jiā jī",曝光:"bào guāng",曲调:"qǔ diào",相机:"xiàng jī",叫化:"jiào huà",角逐:"jué zhú",啊哟:"ā yō",载重:"zài zhòng",长辈:"zhǎng bèi",出差:"chū chāi",垛口:"duǒ kǒu",撇开:"piē kāi",厅长:"tīng zhǎng",组分:"zǔ fèn",误差:"wù chā",家当:"jiā dàng",传记:"zhuàn jì",个子:"gè zi",铺设:"pū shè",干事:"gàn shì",杆菌:"gǎn jūn",定量:"dìng liàng",运载:"yùn zài",会儿:"huì er",酋长:"qiú zhǎng",重返:"chóng fǎn",差额:"chā é",露面:"lòu miàn",钻研:"zuān yán",大城:"dài chéng",上当:"shàng dàng",销量:"xiāo liàng",作坊:"zuō fang",照相:"zhào xiàng",哎呀:"āi yā",调集:"diào jí",看中:"kàn zhòng",议长:"yì zhǎng",风筝:"fēng zheng",辟邪:"bì xié",空隙:"kòng xì",更迭:"gēng dié",偏差:"piān chā",声调:"shēng diào",适量:"shì liàng",屯子:"tún zi",无量:"wú liàng",空地:"kòng dì",调度:"diào dù",散射:"sǎn shè",创伤:"chuāng shāng",海参:"hǎi shēn",满载:"mǎn zài",重叠:"chóng dié",落差:"luò chā",单调:"dān diào",老将:"lǎo jiàng",人参:"rén shēn",间断:"jiàn duàn",重现:"chóng xiàn",夹杂:"jiā zá",调用:"diào yòng",萝卜:"luó bo",附着:"fù zhuó",应声:"yìng shēng",主将:"zhǔ jiàng",罪过:"zuì guo",咀嚼:"jǔ jué",为政:"wéi zhèng",过量:"guò liàng",乐曲:"yuè qǔ",负荷:"fù hè",枪弹:"qiāng dàn",悄然:"qiǎo rán",处方:"chǔ fāng",悄声:"qiǎo shēng",曲子:"qǔ zi",情调:"qíng diào",挑衅:"tiǎo xìn",代为:"dài wéi",了结:"liǎo jié",打中:"dǎ zhòng",酒吧:"jiǔ bā",懒得:"lǎn de",增量:"zēng liàng",衣着:"yī zhuó",部将:"bù jiàng",要塞:"yào sài",茶几:"chá jī",杠杆:"gàng gǎn",出没:"chū mò",鲜有:"xiǎn yǒu",间隙:"jiàn xì",重担:"zhòng dàn",重演:"chóng yǎn",重试:"chóng shì",应酬:"yìng chou",只当:"zhǐ dāng",毋宁:"wú nìng",包扎:"bāo zā",前头:"qián tou",卷烟:"juǎn yān",非得:"fēi děi",弹道:"dàn dào",杆子:"gān zi",门将:"mén jiàng",后头:"hòu tou",喝彩:"hè cǎi",暖和:"nuǎn huo",累积:"lěi jī",调遣:"diào qiǎn",倔强:"jué jiàng",宝藏:"bǎo zàng",丧事:"sāng shì",约莫:"yuē mo",纤夫:"qiàn fū",更替:"gēng tì",装载:"zhuāng zài",背包:"bēi bāo",帖子:"tiě zi",松散:"sōng sǎn",呼喝:"hū hè",可恶:"kě wù",自转:"zì zhuàn",供电:"gōng diàn",反省:"fǎn xǐng",坦率:"tǎn shuài",苏打:"sū dá",本分:"běn fèn",落得:"luò de",鄙薄:"bǐ bó",相间:"xiāng jiàn",单薄:"dān bó",混蛋:"hún dàn",贞观:"zhēn guān",附和:"fù hè",能耐:"néng nài",吓唬:"xià hu",未了:"wèi liǎo",引着:"yǐn zháo",抽调:"chōu diào",沙子:"shā zi",席卷:"xí juǎn",标的:"biāo dì",别扭:"biè niu",思量:"sī liang",喝采:"hè cǎi",论语:"lún yǔ",盖子:"gài zi",分外:"fèn wài",弄堂:"lòng táng",乐舞:"yuè wǔ",雨量:"yǔ liàng",毛发:"máo fà",差遣:"chāi qiǎn",背负:"bēi fù",转速:"zhuàn sù",声乐:"shēng yuè",夹攻:"jiā gōng",供水:"gōng shuǐ",主干:"zhǔ gàn",惩处:"chéng chǔ",长相:"zhǎng xiàng",公差:"gōng chāi",榴弹:"liú dàn",省得:"shěng de",条子:"tiáo zi",重围:"chóng wéi",阻塞:"zǔ sè",劲风:"jìng fēng",纠葛:"jiū gé",颠簸:"diān bǒ",点中:"diǎn zhòng",重创:"zhòng chuāng",姥姥:"lǎo lao",迷糊:"mí hu",公家:"gōng jia",几率:"jī lǜ",苦闷:"kǔ mèn",度量:"dù liàng",差错:"chā cuò",暑假:"shǔ jià",参差:"cēn cī",搭载:"dā zài",助长:"zhù zhǎng",相称:"xiāng chèn",红晕:"hóng yùn",舍命:"shě mìng",喜好:"xǐ hào",列传:"liè zhuàn",劲敌:"jìng dí",蛤蟆:"há ma",请假:"qǐng jià",钉子:"dīng zi",沉没:"chén mò",高丽:"gāo lí",休假:"xiū jià",无为:"wú wéi",巴结:"bā jie",了得:"liǎo dé",变相:"biàn xiàng",核弹:"hé dàn",亲家:"qìng jia",承载:"chéng zài",喝问:"hè wèn",还击:"huán jī",交还:"jiāo huán",将令:"jiàng lìng",单于:"chán yú",空缺:"kòng quē",绿林:"lù lín",胆量:"dǎn liàng",执着:"zhí zhuó",低调:"dī diào",闭塞:"bì sè",轻薄:"qīng bó",得当:"dé dàng",占卜:"zhān bǔ",扫帚:"sào zhou",龟兹:"qiū cí",年长:"nián zhǎng",外传:"wài zhuàn",头子:"tóu zi",裁缝:"cái feng",礼乐:"lǐ yuè",血泊:"xuè pō",散乱:"sǎn luàn",动量:"dòng liàng",倒腾:"dǎo teng",取舍:"qǔ shě",咱家:"zán jiā",长发:"cháng fà",爪哇:"zhǎo wā",弹壳:"dàn ké",省悟:"xǐng wù",嚷嚷:"rāng rang",连累:"lián lèi",应得:"yīng dé",族长:"zú zhǎng",柜子:"guì zi",擂鼓:"léi gǔ",眩晕:"xuàn yùn",调配:"tiáo pèi",躯干:"qū gàn",差役:"chāi yì",坎坷:"kǎn kě",少儿:"shào ér",乐团:"yuè tuán",养分:"yǎng fèn",退还:"tuì huán",格调:"gé diào",语调:"yǔ diào",音调:"yīn diào",乐府:"yuè fǔ",古朴:"gǔ pǔ",打点:"dǎ diǎn",差使:"chāi shǐ",匀称:"yún chèn",瘦削:"shòu xuē",膏药:"gāo yao",吞没:"tūn mò",调任:"diào rèn",散居:"sǎn jū",上头:"shàng tóu",风靡:"fēng mǐ",放假:"fàng jià",估量:"gū liang",失当:"shī dàng",中弹:"zhòng dàn",妄为:"wàng wéi",长者:"zhǎng zhě",起哄:"qǐ hòng",末了:"mò liǎo",相声:"xiàng sheng",校正:"jiào zhèng",劝降:"quàn xiáng",矢量:"shǐ liàng",沉闷:"chén mèn",给与:"jǐ yǔ",解法:"jiě fǎ",塞外:"sài wài",将校:"jiàng xiào",嗜好:"shì hào",没落:"mò luò",朴刀:"pō dāo",片子:"piān zi",切削:"qiē xiāo",弹丸:"dàn wán",稀薄:"xī bó",亏得:"kuī dé",间歇:"jiàn xiē",翘首:"qiáo shǒu",色调:"sè diào",处决:"chǔ jué",表率:"biǎo shuài",尺子:"chǐ zi",招降:"zhāo xiáng",称职:"chèn zhí",斗篷:"dǒu peng",铺子:"pù zi",底子:"dǐ zi",负载:"fù zài",干警:"gàn jǐng",倒数:"dào shǔ",将官:"jiàng guān",锄头:"chú tou",归降:"guī xiáng",疟疾:"nüè ji",唠叨:"láo dao",限量:"xiàn liàng",屏息:"bǐng xī",重逢:"chóng féng",器乐:"qì yuè",氢弹:"qīng dàn",脖颈:"bó gěng",妃子:"fēi zi",处事:"chǔ shì",参量:"cān liàng",轻率:"qīng shuài",缥缈:"piāo miǎo",中奖:"zhòng jiǎng",才干:"cái gàn",施舍:"shī shě",卷子:"juàn zi",游说:"yóu shuì",巷子:"xiàng zi",膀胱:"páng guāng",切勿:"qiè wù",看管:"kān guǎn",风头:"fēng tou",精干:"jīng gàn",高差:"gāo chā",恐吓:"kǒng hè",扁担:"biǎn dàn",给养:"jǐ yǎng",格子:"gé zi",供需:"gōng xū",反差:"fǎn chā",飞弹:"fēi dàn",微薄:"wēi bó",发型:"fà xíng",即兴:"jí xìng",攒动:"cuán dòng",间或:"jiàn huò",浅薄:"qiǎn bó",乐章:"yuè zhāng",顺差:"shùn chā",调子:"diào zi",相位:"xiàng wèi",转子:"zhuàn zǐ",劲旅:"jìng lǚ",咔嚓:"kā chā",了事:"liǎo shì",转悠:"zhuàn you",当铺:"dàng pù",爪子:"zhuǎ zi",单子:"dān zi",好战:"hào zhàn",燕麦:"yàn mài",只许:"zhǐ xǔ",干练:"gàn liàn",女将:"nǚ jiàng",酒量:"jiǔ liàng",划船:"huá chuán",伎俩:"jì liǎng",挑拨:"tiǎo bō",少校:"shào xiào",着落:"zhuó luò",憎恶:"zēng wù",刻薄:"kè bó",要挟:"yāo xié",用处:"yòng chu",还手:"huán shǒu",模具:"mú jù",执著:"zhí zhuó",喝令:"hè lìng",保长:"bǎo zhǎng",吸着:"xī zhe",症结:"zhēng jié",公转:"gōng zhuàn",校勘:"jiào kān",重提:"chóng tí",扫兴:"sǎo xìng",铺盖:"pū gài",长史:"zhǎng shǐ",差价:"chā jià",压根:"yà gēn",怔住:"zhèng zhù",应允:"yīng yǔn",切入:"qiē rù",战将:"zhàn jiàng",年少:"nián shào",舍身:"shě shēn",执拗:"zhí niù",处世:"chǔ shì",中风:"zhòng fēng",等量:"děng liàng",放量:"fàng liàng",腔调:"qiāng diào",老少:"lǎo shào",没入:"mò rù",瓜葛:"guā gé",将帅:"jiàng shuài",车载:"chē zài",窝囊:"wō nang",长进:"zhǎng jìn",可汗:"kè hán",并州:"bīng zhōu",供销:"gōng xiāo",切片:"qiē piàn",差事:"chāi shì",知会:"zhī hui",鹰爪:"yīng zhǎo",处女:"chǔ nǚ",切磋:"qiē cuō",日头:"rì tou",押解:"yā jiè",滋长:"zī zhǎng",道观:"dào guàn",脚色:"jué sè",当量:"dāng liàng",婆家:"pó jia",缘分:"yuán fèn",空闲:"kòng xián",好色:"hào sè",怒喝:"nù hè",笼统:"lǒng tǒng",边塞:"biān sài",何曾:"hé céng",重合:"chóng hé",零散:"líng sǎn",轰隆:"hōng lōng",化子:"huà zi",内蒙:"nèi měng",数落:"shǔ luò",逆差:"nì chā",牟利:"móu lì",栅栏:"zhà lan",中标:"zhòng biāo",调档:"diào dàng",佝偻:"gōu lóu",场子:"chǎng zi",甲壳:"jiǎ qiào",重温:"chóng wēn",炮制:"páo zhì",返还:"fǎn huán",自传:"zì zhuàn",高调:"gāo diào",殷红:"yān hóng",固着:"gù zhuó",强求:"qiǎng qiú",本相:"běn xiàng",骄横:"jiāo hèng",草率:"cǎo shuài",气闷:"qì mèn",着色:"zhuó sè",宁肯:"nìng kěn",兴头:"xìng tou",拘泥:"jū nì",夹角:"jiā jiǎo",发髻:"fà jì",猛将:"měng jiàng",约摸:"yuē mo",拖累:"tuō lěi",呢绒:"ní róng",钻探:"zuān tàn",夹层:"jiā céng",落魄:"luò pò",巷道:"hàng dào",运量:"yùn liàng",解闷:"jiě mèn",空儿:"kòng er",估摸:"gū mo",好客:"hào kè",钻孔:"zuān kǒng",糊弄:"hù nòng",荥阳:"xíng yáng",烦闷:"fán mèn",仓卒:"cāng cù",分叉:"fēn chà",厂子:"chǎng zi",小调:"xiǎo diào",少阳:"shào yáng",受降:"shòu xiáng",染坊:"rǎn fáng",胳臂:"gē bei",将门:"jiàng mén",模板:"mú bǎn",配给:"pèi jǐ",为伍:"wéi wǔ",跟头:"gēn tou",划算:"huá suàn",累赘:"léi zhui",哄笑:"hōng xiào",晕眩:"yūn xuàn",干掉:"gàn diào",缝制:"féng zhì",难处:"nán chù",着意:"zhuó yì",蛮横:"mán hèng",奇数:"jī shù",短发:"duǎn fà",生还:"shēng huán",还清:"huán qīng",看护:"kān hù",直率:"zhí shuài",奏乐:"zòu yuè",载客:"zài kè",专横:"zhuān hèng",湮没:"yān mò",空格:"kòng gé",铺垫:"pū diàn",良将:"liáng jiàng",哗啦:"huā lā",散漫:"sǎn màn",脱发:"tuō fà",送还:"sòng huán",埋没:"mái mò",累及:"lěi jí",薄雾:"bó wù",调离:"diào lí",舌苔:"shé tāi",机长:"jī zhǎng",栓塞:"shuān sè",配角:"pèi jué",切口:"qiē kǒu",创口:"chuāng kǒu",哈欠:"hā qian",实弹:"shí dàn",铺平:"pū píng",哈达:"hǎ dá",懒散:"lǎn sǎn",实干:"shí gàn",填空:"tián kòng",刁钻:"diāo zuān",乐师:"yuè shī",量变:"liàng biàn",诱降:"yòu xiáng",搪塞:"táng sè",征调:"zhēng diào",夹道:"jiā dào",干咳:"gān ké",止咳:"zhǐ ké",乐工:"yuè gōng",划过:"huá guò",着火:"zháo huǒ",更正:"gēng zhèng",给付:"jǐ fù",空子:"kòng zi",哪吒:"né zhā",正着:"zhèng zháo",刷子:"shuā zi",丧葬:"sāng zàng",夹带:"jiā dài",安分:"ān fèn",中意:"zhòng yì",长孙:"zhǎng sūn",校订:"jiào dìng",卷曲:"juǎn qū",载运:"zài yùn",投弹:"tóu dàn",柞蚕:"zuò cán",份量:"fèn liàng",调换:"diào huàn",了然:"liǎo rán",咧嘴:"liě zuǐ",典当:"diǎn dàng",寒假:"hán jià",长兄:"zhǎng xiōng",给水:"jǐ shuǐ",须发:"xū fà",枝干:"zhī gàn",属相:"shǔ xiàng",哄抢:"hōng qiǎng",刻划:"kè huà",塞子:"sāi zi",单干:"dān gàn",还乡:"huán xiāng",兆头:"zhào tou",寺观:"sì guàn",督率:"dū shuài",啊哈:"ā ha",割舍:"gē shě",抹布:"mā bù",好恶:"hào wù",下处:"xià chǔ",消长:"xiāo zhǎng",离间:"lí jiàn",准头:"zhǔn tou",校对:"jiào duì",什物:"shí wù",番禺:"pān yú",佛爷:"fó ye",吗啡:"mǎ fēi",盐分:"yán fèn",虎将:"hǔ jiàng",薄荷:"bò he",独处:"dú chǔ",空位:"kòng wèi",铺路:"pū lù",乌拉:"wū lā",调回:"diào huí",来头:"lái tou",闲散:"xián sǎn",胶卷:"jiāo juǎn",冒失:"mào shi",干劲:"gàn jìn",弦乐:"xián yuè",相国:"xiàng guó",丹参:"dān shēn",助兴:"zhù xìng",铺开:"pū kāi",次长:"cì zhǎng",发卡:"fà qiǎ",拮据:"jié jū",刹车:"shā chē",生发:"shēng fà",重播:"chóng bō",缝合:"féng hé",音量:"yīn liàng",少尉:"shào wèi",冲压:"chòng yā",苍劲:"cāng jìng",厚薄:"hòu báo",威吓:"wēi hè",外相:"wài xiàng",呼号:"hū háo",着迷:"zháo mí",挑担:"tiāo dàn",纹路:"wén lù",还俗:"huán sú",强横:"qiáng hèng",着数:"zhāo shù",降顺:"xiáng shùn",挑明:"tiǎo míng",眯缝:"mī feng",分内:"fèn nèi",更衣:"gēng yī",软和:"ruǎn huo",尽兴:"jìn xìng",号子:"hào zi",爪牙:"zhǎo yá",败将:"bài jiàng",猜中:"cāi zhòng",结扎:"jié zā",没空:"méi kòng",夹缝:"jiā fèng",拾掇:"shí duo",掺和:"chān huo",簸箕:"bò ji",电量:"diàn liàng",荷载:"hè zǎi",调式:"diào shì",处身:"chǔ shēn",打手:"dǎ shǒu",弹弓:"dàn gōng",横蛮:"hèng mán",能干:"néng gàn",校点:"jiào diǎn",加载:"jiā zài",干校:"gàn xiào",哄传:"hōng chuán",校注:"jiào zhù",淤塞:"yū sè",马扎:"mǎ zhá",月氏:"yuè zhī",高干:"gāo gàn",经传:"jīng zhuàn",曾孙:"zēng sūn",好斗:"hào dòu",关卡:"guān qiǎ",逃奔:"táo bèn",磨蹭:"mó ceng",牟取:"móu qǔ",颤栗:"zhàn lì",蚂蚱:"mà zha",撮合:"cuō he",趔趄:"liè qie",摔打:"shuāi dǎ",台子:"tái zi",分得:"fēn de",粘着:"nián zhuó",采邑:"cài yì",散装:"sǎn zhuāng",婀娜:"ē nuó",兴味:"xìng wèi",行头:"xíng tou",气量:"qì liàng",调运:"diào yùn",处治:"chǔ zhì",乐音:"yuè yīn",充塞:"chōng sè",恫吓:"dòng hè",论调:"lùn diào",相中:"xiāng zhòng",民乐:"mín yuè",炮仗:"pào zhang",丧服:"sāng fú",骁将:"xiāo jiàng",量刑:"liàng xíng",缝补:"féng bǔ",财会:"cái kuài",大干:"dà gàn",历数:"lì shǔ",校场:"jiào chǎng",塞北:"sài běi",识相:"shí xiàng",辱没:"rǔ mò",鲜亮:"xiān liàng",语塞:"yǔ sè",露脸:"lòu liǎn",凉快:"liáng kuai",腰杆:"yāo gǎn",溜达:"liū da",嘎嘎:"gā gā",公干:"gōng gàn",桔梗:"jié gěng",挑逗:"tiǎo dòu",看门:"kān mén",乐歌:"yuè gē",拓片:"tà piàn",挑动:"tiǎo dòng",准将:"zhǔn jiàng",遒劲:"qiú jìng",磨坊:"mò fáng",逶迤:"wēi yí",搅和:"jiǎo huo",摩挲:"mó suō",作弄:"zuò nòng",苗头:"miáo tou",打颤:"dǎ zhàn",大藏:"dà zàng",畜牲:"chù shēng",勾搭:"gōu da",树荫:"shù yīn",树杈:"shù chà",铁杆:"tiě gǎn",将相:"jiàng xiàng",份子:"fèn zi",视差:"shì chā",绿荫:"lǜ yīn",枪杆:"qiāng gǎn",缝纫:"féng rèn",愁闷:"chóu mèn",点将:"diǎn jiàng",华佗:"huà tuó",劲射:"jìng shè",箱笼:"xiāng lǒng",终了:"zhōng liǎo",鬓发:"bìn fà",结巴:"jiē ba",苦干:"kǔ gàn",看家:"kān jiā",正旦:"zhēng dàn",中肯:"zhòng kěn",厦门:"xià mén",东莞:"dōng guǎn",食量:"shí liàng",宫调:"gōng diào",间作:"jiàn zuò",弹片:"dàn piàn",差池:"chā chí",漂白:"piǎo bái",杠子:"gàng zi",调处:"tiáo chǔ",好动:"hào dòng",转炉:"zhuàn lú",屏气:"bǐng qì",夹板:"jiā bǎn",哀乐:"āi yuè",干道:"gàn dào",苦处:"kǔ chù",劈柴:"pǐ chái",长势:"zhǎng shì",天华:"tiān huá",共处:"gòng chǔ",校验:"jiào yàn",出塞:"chū sài",磨盘:"mò pán",萎靡:"wěi mǐ",奔丧:"bēn sāng",唱和:"chàng hè",大调:"dà diào",非分:"fēi fèn",钻营:"zuān yíng",夹子:"jiā zi",超载:"chāo zài",更始:"gēng shǐ",铃铛:"líng dang",披散:"pī sàn",发还:"fā huán",转轮:"zhuàn lún",横财:"hèng cái",泡桐:"pāo tóng",抛撒:"pāo sǎ",天呀:"tiān yā",糊糊:"hū hu",躯壳:"qū qiào",通量:"tōng liàng",奉还:"fèng huán",午觉:"wǔ jiào",闷棍:"mèn gùn",浪头:"làng tou",砚台:"yàn tái",油坊:"yóu fáng",学长:"xué zhǎng",过载:"guò zài",笔调:"bǐ diào",衣被:"yī bèi",畜产:"xù chǎn",调阅:"diào yuè",蛮干:"mán gàn",曾祖:"zēng zǔ",提干:"tí gàn",变调:"biàn diào",覆没:"fù mò",模子:"mú zi",乐律:"yuè lǜ",称心:"chèn xīn",木杆:"mù gān",重印:"chóng yìn",自省:"zì xǐng",提调:"tí diào",看相:"kàn xiàng",芋头:"yù tou",下切:"xià qiē",塞上:"sài shàng",铺张:"pū zhāng",藤蔓:"téng wàn",薄幸:"bó xìng",解数:"xiè shù",褪去:"tuì qù",霰弹:"xiàn dàn",柚木:"yóu mù",痕量:"hén liàng",雅乐:"yǎ yuè",号哭:"háo kū",诈降:"zhà xiáng",猪圈:"zhū juàn",咋舌:"zé shé",铣床:"xǐ chuáng",防弹:"fáng dàn",健将:"jiàn jiàng",丽水:"lí shuǐ",削发:"xuē fà",空当:"kòng dāng",多相:"duō xiàng",鲜见:"xiǎn jiàn",划桨:"huá jiǎng",载波:"zài bō",跳蚤:"tiào zao",俏皮:"qiào pí",吧嗒:"bā dā",结发:"jié fà",了断:"liǎo duàn",同调:"tóng diào",石磨:"shí mò",时差:"shí chā",鼻塞:"bí sè",挑子:"tiāo zi",推磨:"tuī mò",武侯:"wǔ hóu",抹煞:"mǒ shā",调转:"diào zhuǎn",籍没:"jí mò",还债:"huán zhài",调演:"diào yǎn",分划:"fēn huá",奇偶:"jī ǒu",断喝:"duàn hè",闷雷:"mèn léi",狼藉:"láng jí",饭量:"fàn liàng",还礼:"huán lǐ",转调:"zhuǎn diào",星相:"xīng xiàng",手相:"shǒu xiàng",配乐:"pèi yuè",盖头:"gài tou",连杆:"lián gǎn",簿记:"bù jì",刀把:"dāo bà",量词:"liàng cí",名角:"míng jué",步调:"bù diào",校本:"jiào běn",账簿:"zhàng bù",隽永:"juàn yǒng",稍为:"shāo wéi",易传:"yì zhuàn",乐谱:"yuè pǔ",牵累:"qiān lěi",答理:"dā li",喝斥:"hè chì",吟哦:"yín é",干渠:"gàn qú",海量:"hǎi liàng",精当:"jīng dàng",着床:"zhuó chuáng",月相:"yuè xiàng",庶几:"shù jī",宫观:"gōng guàn",论处:"lùn chǔ",征辟:"zhēng bì",厚朴:"hòu pò",介壳:"jiè qiào",吭哧:"kēng chī",咯血:"kǎ xiě",铺陈:"pū chén",重生:"chóng shēng",乐理:"yuè lǐ",哀号:"āi háo",藏历:"zàng lì",刚劲:"gāng jìng",削平:"xuē píng",浓荫:"nóng yīn",城垛:"chéng duǒ",当差:"dāng chāi",正传:"zhèng zhuàn",并处:"bìng chǔ",创面:"chuāng miàn",旦角:"dàn jué",薄礼:"bó lǐ",晃荡:"huàng dang",臊子:"sào zi",家什:"jiā shí",闷头:"mēn tóu",美发:"měi fà",度数:"dù shu",着凉:"zháo liáng",闯将:"chuǎng jiàng",几案:"jī àn",姘头:"pīn tou",差数:"chā shù",散碎:"sǎn suì",壅塞:"yōng sè",寒颤:"hán zhàn",牵强:"qiān qiǎng",无间:"wú jiàn",轮转:"lún zhuàn",号叫:"háo jiào",铺排:"pū pái",降伏:"xiáng fú",轧钢:"zhá gāng",东阿:"dōng ē",病假:"bìng jià",累加:"lěi jiā",梗塞:"gěng sè",弹夹:"dàn jiā",钻心:"zuān xīn",晃眼:"huǎng yǎn",魔爪:"mó zhǎo",标量:"biāo liàng",憋闷:"biē mèn",猜度:"cāi duó",处士:"chǔ shì",官差:"guān chāi",讨还:"tǎo huán",长门:"cháng mén",馏分:"liú fēn",里弄:"lǐ lòng",色相:"sè xiàng",雅兴:"yǎ xìng",角力:"jué lì",弹坑:"dàn kēng",枝杈:"zhī chà",夹具:"jiā jù",处刑:"chǔ xíng",悍将:"hàn jiàng",好学:"hào xué",好好:"hǎo hǎo",银发:"yín fà",扫把:"sào bǎ",法相:"fǎ xiàng",贵干:"guì gàn",供气:"gōng qì",空余:"kòng yú",捆扎:"kǔn zā",瘠薄:"jí bó",浆糊:"jiàng hu",嘎吱:"gā zhī",调令:"diào lìng",法帖:"fǎ tiè",淋病:"lìn bìng",调派:"diào pài",转盘:"zhuàn pán",供稿:"gōng gǎo",差官:"chāi guān",忧闷:"yōu mèn",教长:"jiào zhǎng",重唱:"chóng chàng",酒兴:"jiǔ xìng",乐坛:"yuè tán",花呢:"huā ní",叱喝:"chì hè",膀臂:"bǎng bì",得空:"dé kòng",转圈:"zhuàn quān",横暴:"hèng bào",哄抬:"hōng tái",引吭:"yǐn háng",载货:"zài huò",中计:"zhòng jì",官长:"guān zhǎng",相面:"xiàng miàn",看头:"kàn tou",盼头:"pàn tou",意兴:"yì xìng",军乐:"jūn yuè",累次:"lěi cì",骨嘟:"gǔ dū",燕赵:"yān zhào",报丧:"bào sāng",弥撒:"mí sa",挨斗:"ái dòu",扁舟:"piān zhōu",丑角:"chǒu jué",吊丧:"diào sāng",强将:"qiáng jiàng",重奏:"chóng zòu",发辫:"fà biàn",着魔:"zháo mó",着法:"zhāo fǎ",盛放:"shèng fàng",填塞:"tián sè",凶横:"xiōng hèng",稽首:"qǐ shǒu",碑帖:"bēi tiè",冲量:"chōng liàng",发菜:"fà cài",假发:"jiǎ fà",翻卷:"fān juǎn",小量:"xiǎo liàng",胶着:"jiāo zhuó",里子:"lǐ zi",调调:"diào diao",散兵:"sǎn bīng",高挑:"gāo tiǎo",播撒:"bō sǎ",夹心:"jiā xīn",扇动:"shān dòng",叨扰:"tāo rǎo",霓裳:"ní cháng",捻子:"niǎn zi",弥缝:"mí féng",撒布:"sǎ bù",场院:"cháng yuàn",省亲:"xǐng qīn",提拉:"tí lā",惯量:"guàn liàng",强逼:"qiáng bī",强征:"qiáng zhēng",晕车:"yùn chē",数道:"shù dào",带累:"dài lèi",拓本:"tà běn",嫌恶:"xián wù",宿将:"sù jiàng",龟裂:"jūn liè",缠夹:"chán jiā",发式:"fà shì",隔扇:"gé shàn",天分:"tiān fèn",癖好:"pǐ hào",四通:"sì tōng",白术:"bái zhú",划伤:"huá shāng",角斗:"jué dòu",听差:"tīng chāi",岁差:"suì chā",丧礼:"sāng lǐ",脉脉:"mò mò",削瘦:"xuē shòu",撒播:"sǎ bō",莎草:"suō cǎo",犍为:"qián wéi",调头:"diào tóu",龙卷:"lóng juǎn",外调:"wài diào",字帖:"zì tiè",卷发:"juǎn fà",揣度:"chuǎi duó",洋相:"yáng xiàng",散光:"sǎn guāng",骨碌:"gū lu",薄命:"bó mìng",笼头:"lóng tóu",咽炎:"yān yán",碌碡:"liù zhou",片儿:"piàn er",纤手:"qiàn shǒu",散体:"sǎn tǐ",内省:"nèi xǐng",强留:"qiáng liú",解送:"jiè sòng",反间:"fǎn jiàn",少壮:"shào zhuàng",留空:"liú kōng",告假:"gào jià",咳血:"ké xuè",薄暮:"bó mù",铺轨:"pū guǐ",磨削:"mó xuē",治丧:"zhì sāng",叉子:"chā zi",哄动:"hōng dòng",蛾子:"é zi",出落:"chū luò",股长:"gǔ zhǎng",贵处:"guì chù",还魂:"huán hún",例假:"lì jià",刹住:"shā zhù",身量:"shēn liàng",同好:"tóng hào",模量:"mó liàng",更生:"gēng shēng",服丧:"fú sāng",率直:"shuài zhí",字模:"zì mú",散架:"sǎn jià",答腔:"dā qiāng",交恶:"jiāo wù",薄情:"bó qíng",眼泡:"yǎn pāo",袅娜:"niǎo nuó",草垛:"cǎo duò",冲劲:"chòng jìn",呢喃:"ní nán",切中:"qiè zhòng",挑灯:"tiǎo dēng",还愿:"huán yuàn",激将:"jī jiàng",更鼓:"gēng gǔ",没药:"mò yào",败兴:"bài xìng",切面:"qiē miàn",散户:"sǎn hù",累进:"lěi jìn",背带:"bēi dài",秤杆:"chèng gǎn",碾坊:"niǎn fáng",簿子:"bù zi",扳手:"bān shǒu",铅山:"yán shān",儒将:"rú jiàng",重光:"chóng guāng",剪发:"jiǎn fà",长上:"zhǎng shàng",小传:"xiǎo zhuàn",压轴:"yā zhòu",弱冠:"ruò guàn",花卷:"huā juǎn",横祸:"hèng huò",夹克:"jiā kè",光晕:"guāng yùn",披靡:"pī mǐ",对调:"duì diào",夹持:"jiā chí",空额:"kòng é",平调:"píng diào",铺床:"pū chuáng",丧钟:"sāng zhōng",作乐:"zuò lè",少府:"shào fǔ",数数:"shuò shuò",奔头:"bèn tou",进给:"jìn jǐ",率性:"shuài xìng",乐子:"lè zi",绑扎:"bǎng zā",挑唆:"tiǎo suō",漂洗:"piǎo xǐ",夹墙:"jiā qiáng",咳喘:"ké chuǎn",乜斜:"miē xie",错处:"cuò chù",闷酒:"mèn jiǔ",时调:"shí diào",重孙:"chóng sūn",经幢:"jīng chuáng",圩场:"xū chǎng",调门:"diào mén",花头:"huā tóu",划拉:"huá la",套色:"tào shǎi",粗率:"cū shuài",相率:"xiāng shuài",款识:"kuǎn zhì",吁请:"yù qǐng",荫蔽:"yīn bì",文蛤:"wén gé",嘀嗒:"dī dā",调取:"diào qǔ",交差:"jiāo chāi",落子:"luò zǐ",相册:"xiàng cè",絮叨:"xù dao",落发:"luò fà",异相:"yì xiàng",浸没:"jìn mò",角抵:"jué dǐ",卸载:"xiè zài",春卷:"chūn juǎn",扎挣:"zhá zheng",畜养:"xù yǎng",吡咯:"bǐ luò",垛子:"duò zi",恶少:"è shào",发际:"fà jì",红苕:"hóng sháo",糨糊:"jiàng hu",哭丧:"kū sāng",稍息:"shào xī",晕船:"yùn chuán",校样:"jiào yàng",外差:"wài chā",脚爪:"jiǎo zhǎo",铺展:"pū zhǎn",芫荽:"yán sui",夹紧:"jiā jǐn",尿泡:"suī pào",丧乱:"sāng luàn",凶相:"xiōng xiàng",华发:"huá fà",打场:"dǎ cháng",云量:"yún liàng",正切:"zhèng qiē",划拳:"huá quán",划艇:"huá tǐng",评传:"píng zhuàn",拉纤:"lā qiàn",句读:"jù dòu",散剂:"sǎn jì",骨殖:"gǔ shi",塞音:"sè yīn",铺叙:"pū xù",阏氏:"yān zhī",冷颤:"lěng zhàn",煞住:"shā zhù",少男:"shào nán",管乐:"guǎn yuè",号啕:"háo táo",纳降:"nà xiáng",拥塞:"yōng sè",万乘:"wàn shèng",杆儿:"gǎn ér",葛藤:"gé téng",簿籍:"bù jí",皮夹:"pí jiā",校准:"jiào zhǔn",允当:"yǔn dàng",器量:"qì liàng",选调:"xuǎn diào",扮相:"bàn xiàng",干才:"gàn cái",基干:"jī gàn",割切:"gē qiē",国乐:"guó yuè",卡壳:"qiǎ ké",辟谷:"bì gǔ",磨房:"mò fáng",咿呀:"yī yā",芥末:"jiè mo",薄技:"bó jì",产假:"chǎn jià",诗兴:"shī xìng",重出:"chóng chū",转椅:"zhuàn yǐ",酌量:"zhuó liang",簿册:"bù cè",藏青:"zàng qīng",的士:"dī shì",调人:"diào rén",解元:"jiè yuán",茎干:"jīng gàn",巨量:"jù liàng",榔头:"láng tou",率真:"shuài zhēn",喷香:"pèn xiāng",锁钥:"suǒ yuè",虾蟆:"há má",相图:"xiàng tú",兴会:"xìng huì",灶头:"zào tóu",重婚:"chóng hūn",钻洞:"zuān dòng",忖度:"cǔn duó",党参:"dǎng shēn",调温:"diào wēn",杆塔:"gān tǎ",葛布:"gé bù",拱券:"gǒng xuàn",夹生:"jiā shēng",露馅:"lòu xiàn",恰切:"qià qiè",散见:"sǎn jiàn",哨卡:"shào qiǎ",烫发:"tàng fà",体量:"tǐ liàng",挺括:"tǐng kuò",系带:"jì dài",相士:"xiàng shì",羊圈:"yáng juàn",转矩:"zhuàn jǔ",吧台:"bā tái",苍术:"cāng zhú",菲薄:"fěi bó",蛤蚧:"gé jiè",蛤蜊:"gé lí",瓜蔓:"guā wàn",怪相:"guài xiàng",临帖:"lín tiè",女红:"nǚ gōng",刨床:"bào chuáng",翘楚:"qiáo chǔ",数九:"shǔ jiǔ",谈兴:"tán xìng",雄劲:"xióng jìng",扎染:"zā rǎn",遮荫:"zhē yīn",周正:"zhōu zhèng",赚头:"zhuàn tou",扒手:"pá shǒu",搀和:"chān huo",诚朴:"chéng pǔ",肚量:"dù liàng",干结:"gān jié",工尺:"gōng chě",家累:"jiā lěi",曲水:"qū shuǐ",沙参:"shā shēn",挑花:"tiǎo huā",阿门:"ā mén",背篓:"bēi lǒu",瘪三:"biē sān",裁处:"cái chǔ",创痛:"chuāng tòng",福相:"fú xiàng",更动:"gēng dòng",豪兴:"háo xìng",还阳:"huán yáng",还嘴:"huán zuǐ",借调:"jiè diào",卷云:"juǎn yún",流弹:"liú dàn",想头:"xiǎng tou",削价:"xuē jià",校阅:"jiào yuè",雅量:"yǎ liàng",别传:"bié zhuàn",薄酒:"bó jiǔ",春假:"chūn jià",发妻:"fà qī",哗哗:"huā huā",宽绰:"kuān chuo",了悟:"liǎo wù",切花:"qiē huā",审度:"shěn duó",应许:"yīng xǔ",转台:"zhuàn tái",仔猪:"zǐ zhū",裁量:"cái liáng",藏戏:"zàng xì",乘兴:"chéng xìng",绸缪:"chóu móu",摧折:"cuī zhé",调经:"tiáo jīng",调职:"diào zhí",缝缀:"féng zhuì",骨朵:"gū duǒ",核儿:"hú er",恒量:"héng liàng",还价:"huán jià",浑朴:"hún pǔ",苦差:"kǔ chāi",面糊:"miàn hù",煞车:"shā chē",省视:"xǐng shì",什锦:"shí jǐn",信差:"xìn chāi",余切:"yú qiē",攒眉:"cuán méi",炸糕:"zhá gāo",钻杆:"zuàn gǎn",扒灰:"pá huī",拌和:"bàn huò",长调:"cháng diào",大溜:"dà liù",抖搂:"dǒu lōu",飞转:"fēi zhuàn",干仗:"gàn zhàng",好胜:"hào shèng",画片:"huà piàn",搅混:"jiǎo hún",螺杆:"luó gǎn",木模:"mù mú",怒号:"nù háo",频数:"pín shù",无宁:"wú níng",遗少:"yí shào",邮差:"yóu chāi",占卦:"zhān guà",占星:"zhān xīng",重审:"chóng shěn",自量:"zì liàng",调防:"diào fáng",发廊:"fà láng",反调:"fǎn diào",缝子:"fèng zi",更夫:"gēng fū",骨子:"gǔ zi",光杆:"guāng gǎn",夹棍:"jiā gùn",居丧:"jū sāng",巨贾:"jù gǔ",看押:"kān yā",空转:"kōng zhuàn",量力:"liàng lì",炮烙:"páo luò",赔还:"péi huán",扑扇:"pū shān",散记:"sǎn jì",散件:"sǎn jiàn",删削:"shān xuē",射干:"shè gàn",条几:"tiáo jī",偷空:"tōu kòng",削壁:"xuē bì",校核:"jiào hé",阴干:"yīn gān",择菜:"zhái cài",重九:"chóng jiǔ",主调:"zhǔ diào",自禁:"zì jīn",吧唧:"bā jī",便溺:"biàn niào",词调:"cí diào",叨咕:"dáo gu",落枕:"lào zhěn",铺砌:"pū qì",刷白:"shuà bái",委靡:"wěi mǐ",系泊:"xì bó",相马:"xiàng mǎ",熨帖:"yù tiē",转筋:"zhuàn jīn",棒喝:"bàng hè",傧相:"bīn xiàng",镐头:"gǎo tóu",间苗:"jiàn miáo",乐池:"yuè chí",卖相:"mài xiàng",屏弃:"bǐng qì",铅弹:"qiān dàn",切变:"qiē biàn",请调:"qǐng diào",群氓:"qún méng",散板:"sǎn bǎn",省察:"xǐng chá",事假:"shì jià",纤绳:"qiàn shéng",重影:"chóng yǐng",耕种:"gēng zhòng",种地:"zhòng dì",种菜:"zhòng cài",栽种:"zāi zhòng",接种:"jiē zhòng",垦种:"kěn zhòng",种殖:"zhòng zhí",种瓜:"zhòng guā",种豆:"zhòng dòu",种树:"zhòng shù",睡着:"shuì zháo",笼子:"lóng zi",重启:"chóng qǐ",重整:"chóng zhěng",重弹:"chóng tán",重足:"chóng zú",重山:"chóng shān",重游:"chóng yóu",重峦:"chóng luán",爷爷:"yé ye",奶奶:"nǎi nai",姥爷:"lǎo ye",爸爸:"bà ba",妈妈:"mā ma",婶婶:"shěn shen",舅舅:"jiù jiu",姑姑:"gū gu",叔叔:"shū shu",姨夫:"yí fu",舅母:"jiù mu",姑父:"gū fu",姐夫:"jiě fu",婆婆:"pó po",公公:"gōng gong",舅子:"jiù zi",姐姐:"jiě jie",哥哥:"gē ge",妹妹:"mèi mei",妹夫:"mèi fu",姨子:"yí zi",宝宝:"bǎo bao",娃娃:"wá wa",孩子:"hái zi",日子:"rì zi",样子:"yàng zi",狮子:"shī zi",身子:"shēn zi",架子:"jià zi",嫂子:"sǎo zi",鼻子:"bí zi",亭子:"tíng zi",折子:"zhé zi",面子:"miàn zi",脖子:"bó zi",辈子:"bèi zi",帽子:"mào zi",拍子:"pāi zi",柱子:"zhù zi",辫子:"biàn zi",鸽子:"gē zi",房子:"fáng zi",丸子:"wán zi",摊子:"tān zi",牌子:"pái zi",胡子:"hú zi",鬼子:"guǐ zi",矮子:"ǎi zi",鸭子:"yā zi",小子:"xiǎo zi",影子:"yǐng zi",屋子:"wū zi",对子:"duì zi",点子:"diǎn zi",本子:"běn zi",种子:"zhǒng zi",儿子:"ér zi",兔子:"tù zi",骗子:"piàn zi",院子:"yuàn zi",猴子:"hóu zi",嗓子:"sǎng zi",侄子:"zhí zi",柿子:"shì zi",钳子:"qián zi",虱子:"shī zi",瓶子:"píng zi",豹子:"bào zi",筷子:"kuài zi",篮子:"lán zi",绳子:"shéng zi",嘴巴:"zuǐ ba",耳朵:"ěr duo",茄子:"qié zi",蚌埠:"bèng bù",崆峒:"kōng tóng",琵琶:"pí pa",蘑菇:"mó gu",葫芦:"hú lu",狐狸:"hú li",桔子:"jú zi",盒子:"hé zi",桌子:"zhuō zi",竹子:"zhú zi",师傅:"shī fu",衣服:"yī fu",袜子:"wà zi",杯子:"bēi zi",刺猬:"cì wei",麦子:"mài zi",队伍:"duì wu",知了:"zhī liǎo",鱼儿:"yú er",馄饨:"hún tun",灯笼:"dēng long",庄稼:"zhuāng jia",聪明:"cōng ming",镜子:"jìng zi",银子:"yín zi",盘子:"pán zi",了却:"liǎo què",力气:"lì qi",席子:"xí zi",林子:"lín zi",朝霞:"zhāo xiá",朝夕:"zhāo xī",朝气:"zhāo qì",翅膀:"chì bǎng",省长:"shěng zhǎng",臧否:"zāng pǐ",否泰:"pǐ tài",变得:"biàn de",丈夫:"zhàng fu",豆腐:"dòu fu",笔杆:"bǐ gǎn",枞阳:"zōng yáng",行人:"xíng rén",打着:"dǎ zhe",第一:"dì yī",万一:"wàn yī",之一:"zhī yī",得之:"dé zhī",统一:"tǒng yī",唯一:"wéi yī",专一:"zhuān yī",单一:"dān yī",如一:"rú yī",其一:"qí yī",合一:"hé yī",逐一:"zhú yī",周一:"zhōu yī",初一:"chū yī",研一:"yán yī",归一:"guī yī",假一:"jiǎ yī",闻一:"wén yī",了了:"liǎo liǎo",公了:"gōng liǎo",私了:"sī liǎo",一月:"yī yuè",一号:"yī hào",一级:"yī jí",一等:"yī děng",一哥:"yī gē",月一:"yuè yī",一一:"yī yī",二一:"èr yī",三一:"sān yī",四一:"sì yī",五一:"wǔ yī",六一:"liù yī",七一:"qī yī",八一:"bā yī",九一:"jiǔ yī","一〇":"yī líng",一零:"yī líng",一二:"yī èr",一三:"yī sān",一四:"yī sì",一五:"yī wǔ",一六:"yī liù",一七:"yī qī",一八:"yī bā",一九:"yī jiǔ",一又:"yī yòu",一饼:"yī bǐng",一楼:"yī lóu",为例:"wéi lì",为准:"wéi zhǔn",沧海:"cāng hǎi",难为:"nán wéi",责难:"zé nàn",患难:"huàn nàn",磨难:"mó nàn",大难:"dà nàn",刁难:"diāo nàn",殉难:"xùn nàn",落难:"luò nàn",罹难:"lí nàn",灾难:"zāi nàn",难民:"nàn mín",苦难:"kǔ nàn",危难:"wēi nàn",发难:"fā nàn",逃难:"táo nàn",避难:"bì nàn",遇难:"yù nàn",阻难:"zǔ nàn",厄难:"è nàn",徇难:"xùn nàn",空难:"kōng nàn",喜欢:"xǐ huan",朝朝:"zhāo zhāo",不行:"bù xíng",轧轧:"yà yà",弯曲:"wān qū",扭曲:"niǔ qū",曲直:"qū zhí",委曲:"wěi qū",酒曲:"jiǔ qū",曲径:"qū jìng",曲解:"qū jiě",歪曲:"wāi qū",曲线:"qū xiàn",曲阜:"qū fù",九曲:"jiǔ qū",曲折:"qū zhé",曲肱:"qū gōng",曲意:"qū yì",仡佬:"gē lǎo"},Sh=Object.keys(ui).map(n=>({zh:n,pinyin:ui[n],probability:2e-8,length:2,priority:R.Normal,dict:Symbol("dict2")})),ei={为什么:"wèi shén me",实际上:"shí jì shang",检察长:"jiǎn chá zhǎng",干什么:"gàn shén me",这会儿:"zhè huì er",尽可能:"jǐn kě néng",董事长:"dǒng shì zhǎng",了不起:"liǎo bù qǐ",参谋长:"cān móu zhǎng",朝鲜族:"cháo xiǎn zú",海内外:"hǎi nèi wài",禁不住:"jīn bú zhù",柏拉图:"bó lā tú",不在乎:"bú zài hu",洛杉矶:"luò shān jī",有点儿:"yǒu diǎn er",迫击炮:"pǎi jī pào",不得了:"bù dé liǎo",马尾松:"mǎ wěi sōng",运输量:"yùn shū liàng",发脾气:"fā pí qi",士大夫:"shì dà fū",鸭绿江:"yā lù jiāng",压根儿:"yà gēn er",对得起:"duì de qǐ",那会儿:"nà huì er",自个儿:"zì gě er",物理量:"wù lǐ liàng",怎么着:"zěn me zhāo",明晃晃:"míng huǎng huǎng",节假日:"jié jià rì",心里话:"xīn lǐ huà",发行量:"fā xíng liàng",兴冲冲:"xìng chōng chōng",分子量:"fēn zǐ liàng",国子监:"guó zǐ jiàn",老大难:"lǎo dà nán",党内外:"dǎng nèi wài",这么着:"zhè me zhāo",少奶奶:"shào nǎi nai",暗地里:"àn dì lǐ",更年期:"gēng nián qī",工作量:"gōng zuò liàng",背地里:"bèi dì lǐ",山里红:"shān li hóng",好好儿:"hǎo hāo er",交响乐:"jiāo xiǎng yuè",好意思:"hǎo yì si",吐谷浑:"tǔ yù hún",没意思:"méi yì si",理发师:"lǐ fà shī",塔什干:"tǎ shí gān",充其量:"chōng qí liàng",靠得住:"kào de zhù",车行道:"chē xíng dào",人行道:"rén xíng dào",中郎将:"zhōng láng jiàng",照明弹:"zhào míng dàn",烟幕弹:"yān mù dàn",没奈何:"mò nài hé",乱哄哄:"luàn hōng hōng",惠更斯:"huì gēng sī",载重量:"zài zhòng liàng",瞧得起:"qiáo de qǐ",纪传体:"jì zhuàn tǐ",阿房宫:"ē páng gōng",卷心菜:"juǎn xīn cài",戏班子:"xì bān zi",过得去:"guò de qù",花岗石:"huā gāng shí",外甥女:"wài sheng nǚ",团团转:"tuán tuán zhuàn",大堡礁:"dà bǎo jiāo",燃烧弹:"rán shāo dàn",劳什子:"láo shí zi",摇滚乐:"yáo gǔn yuè",夹竹桃:"jiā zhú táo",闹哄哄:"nào hōng hōng",三连冠:"sān lián guàn",重头戏:"zhòng tóu xì",二人转:"èr rén zhuàn",节骨眼:"jiē gǔ yǎn",知识面:"zhī shi miàn",护士长:"hù shi zhǎng",信号弹:"xìn hào dàn",干电池:"gān diàn chí",枪杆子:"qiāng gǎn zi",哭丧棒:"kū sāng bàng",鼻咽癌:"bí yān ái",瓦岗军:"wǎ gāng jūn",买得起:"mǎi de qǐ",癞蛤蟆:"lài há ma",脊梁骨:"jǐ liang gǔ",子母弹:"zǐ mǔ dàn",开小差:"kāi xiǎo chāi",女强人:"nǚ qiáng rén",英雄传:"yīng xióng zhuàn",爵士乐:"jué shì yuè",说笑话:"shuō xiào hua",碰头会:"pèng tóu huì",玻璃钢:"bō li gāng",曳光弹:"yè guāng dàn",少林拳:"shào lín quán",咏叹调:"yǒng tàn diào",少先队:"shào xiān duì",灵长目:"líng zhǎng mù",对着干:"duì zhe gàn",蒙蒙亮:"méng méng liàng",软骨头:"ruǎn gǔ tou",铺盖卷:"pū gài juǎn",和稀泥:"huò xī ní",背黑锅:"bēi hēi guō",红彤彤:"hóng tōng tōng",武侯祠:"wǔ hóu cí",打哆嗦:"dǎ duō suo",户口簿:"hù kǒu bù",马尾藻:"mǎ wěi zǎo",夜猫子:"yè māo zi",打手势:"dǎ shǒu shì",龙王爷:"lóng wáng yé",气头上:"qì tóu shang",糊涂虫:"hú tu chóng",笔杆子:"bǐ gǎn zi",占便宜:"zhàn pián yi",打主意:"dǎ zhǔ yì",多弹头:"duō dàn tóu",露一手:"lòu yì shǒu",堰塞湖:"yàn sè hú",保得住:"bǎo de zhù",趵突泉:"bào tū quán",奥得河:"ào de hé",司务长:"sī wù zhǎng",禁不起:"jīn bù qǐ",什刹海:"shí chà hǎi",莲花落:"lián huā lào",见世面:"jiàn shì miàn",豁出去:"huō chū qù",电位差:"diàn wèi chā",挨个儿:"āi gè er",那阵儿:"nà zhèn er",肺活量:"fèi huó liàng",大师傅:"dà shī fu",掷弹筒:"zhì dàn tǒng",打呼噜:"dǎ hū lu",广渠门:"ān qú mén",未见得:"wèi jiàn dé",大婶儿:"dà shěn er",谈得来:"tán de lái",脚丫子:"jiǎo yā zi",空包弹:"kōng bāo dàn",窝里斗:"wō li dòu",弹着点:"dàn zhuó diǎn",个头儿:"gè tóu er",看得起:"kàn de qǐ",糊涂账:"hú tu zhàng",大猩猩:"dà xīng xing",禁得起:"jīn de qǐ",法相宗:"fǎ xiàng zōng",可怜相:"kě lián xiàng",吃得下:"chī de xià",汉堡包:"hàn bǎo bāo",闹嚷嚷:"nào rāng rāng",数来宝:"shǔ lái bǎo",合得来:"hé de lái",干性油:"gān xìng yóu",闷葫芦:"mèn hú lu",呱呱叫:"guā guā jiào",西洋参:"xī yáng shēn",林荫道:"lín yīn dào",拉家常:"lā jiā cháng",卷铺盖:"juǎn pū gài",过得硬:"guò de yìng",飞将军:"fēi jiāng jūn",挑大梁:"tiǎo dà liáng",哈巴狗:"hǎ ba gǒu",过家家:"guò jiā jiā",催泪弹:"cuī lèi dàn",雨夹雪:"yǔ jiā xuě",敲竹杠:"qiāo zhú gàng",列车长:"liè chē zhǎng",华达呢:"huá dá ní",犯得着:"fàn de zháo",土疙瘩:"tǔ gē da",煞风景:"shā fēng jǐng",轻量级:"qīng liàng jí",羞答答:"xiū dā dā",石子儿:"shí zǐ er",达姆弹:"dá mǔ dàn",科教片:"kē jiào piān",侃大山:"kǎn dà shān",丁点儿:"dīng diǎn er",吃得消:"chī de xiāo",捋虎须:"luō hǔ xū",高丽参:"gāo lí shēn",众生相:"zhòng shēng xiàng",咽峡炎:"yān xiá yán",禁得住:"jīn de zhù",吃得开:"chī de kāi",柞丝绸:"zuò sī chóu",应声虫:"yìng shēng chóng",数得着:"shǔ de zháo",傻劲儿:"shǎ jìn er",铅玻璃:"qiān bō li",可的松:"kě dì sōng",划得来:"huá de lái",晕乎乎:"yūn hū hū",屎壳郎:"shǐ ke làng",尥蹶子:"liào juě zi",藏红花:"zàng hóng huā",闷罐车:"mèn guàn chē",卡脖子:"qiǎ bó zi",红澄澄:"hóng deng deng",赶得及:"gǎn de jí",当间儿:"dāng jiàn er",露马脚:"lòu mǎ jiǎo",鸡内金:"jī nèi jīn",犯得上:"fàn de shàng",钉齿耙:"dīng chǐ bà",饱和点:"bǎo hé diǎn",龙爪槐:"lóng zhǎo huái",喝倒彩:"hè dào cǎi",定冠词:"dìng guàn cí",担担面:"dàn dan miàn",吃得住:"chī de zhù",爪尖儿:"zhuǎ jiān er",支着儿:"zhī zhāo er",折跟头:"zhē gēn tou",阴着儿:"yīn zhāo er",烟卷儿:"yān juǎn er",宣传弹:"xuān chuán dàn",信皮儿:"xìn pí er",弦切角:"xián qiē jiǎo",缩砂密:"sù shā mì",说得来:"shuō de lái",水漂儿:"shuǐ piāo er",耍笔杆:"shuǎ bǐ gǎn",数得上:"shǔ de shàng",数不着:"shǔ bù zháo",数不清:"shǔ bù qīng",什件儿:"shí jiàn er",生死簿:"shēng sǐ bù",扇风机:"shān fēng jī",撒呓挣:"sā yì zheng",日记簿:"rì jì bù",热得快:"rè de kuài",亲家公:"qìng jia gōng",奇函数:"jī hán shù",拍纸簿:"pāi zhǐ bù",努劲儿:"nǔ jìn er",泥娃娃:"ní wá wa",内切圆:"nèi qiē yuán",哪会儿:"nǎ huì er",闷头儿:"mēn tóu er",没谱儿:"méi pǔ er",铆劲儿:"mǎo jìn er",溜肩膀:"liū jiān bǎng",了望台:"liào wàng tái",老来少:"lǎo lái shào",坤角儿:"kūn jué er",考勤簿:"kǎo qín bù",卷笔刀:"juǎn bǐ dāo",进给量:"jìn jǐ liàng",划不来:"huá bù lái",汗褂儿:"hàn guà er",鼓囊囊:"gǔ nāng nāng",够劲儿:"gòu jìn er",公切线:"gōng qiē xiàn",搁得住:"gé de zhù",赶浪头:"gǎn làng tóu",赶得上:"gǎn de shàng",干酵母:"gān jiào mǔ",嘎渣儿:"gā zhā er",嘎嘣脆:"gā bēng cuì",对得住:"duì de zhù",逗闷子:"dòu mèn zi",顶呱呱:"dǐng guā guā",滴溜儿:"dī liù er",大轴子:"dà zhòu zi",打板子:"dǎ bǎn zi",寸劲儿:"cùn jìn er",醋劲儿:"cù jìn er",揣手儿:"chuāi shǒu er",冲劲儿:"chòng jìn er",吃得来:"chī de lái",不更事:"bù gēng shì",奔头儿:"bèn tou er",百夫长:"bǎi fū zhǎng",娃娃亲:"wá wa qīn",死劲儿:"sǐ jìn er",骨朵儿:"gū duǒ er",功劳簿:"gōng láo bù",都江堰:"dū jiāng yàn",一担水:"yí dàn shuǐ",否极泰:"pǐ jí tài",泰来否:"tài lái pǐ",咳特灵:"ké tè líng",开户行:"kāi hù háng",郦食其:"lì yì jī",花事了:"huā shì liǎo",一更更:"yì gēng gēng",一重山:"yì chóng shān",风一更:"fēng yì gēng",雪一更:"xuě yì gēng",归一码:"guī yì mǎ",星期一:"xīng qī yī",礼拜一:"lǐ bài yī",一季度:"yī jì dù",一月一:"yī yuè yī",一字马:"yī zì mǎ",一是一:"yī shì yī",一次方:"yī cì fāng",一阳指:"yī yáng zhǐ",一字决:"yī zì jué",一年级:"yī nián jí",一不做:"yī bú zuò",屈戌儿:"qū qu ér",难为水:"nán wéi shuǐ",难为情:"nán wéi qíng",行一行:"xíng yì háng",别别的:"biè bié de",干哪行:"gàn nǎ háng",干一行:"gàn yì háng",曲别针:"qū bié zhēn"},Ph=Object.keys(ei).map(n=>({zh:n,pinyin:ei[n],probability:2e-8,length:3,priority:R.Normal,dict:Symbol("dict3")})),si={成吉思汗:"chéng jí sī hán",四通八达:"sì tōng bā dá",一模一样:"yì mú yí yàng",青藏高原:"qīng zàng gāo yuán",阿弥陀佛:"ē mí tuó fó",解放思想:"jiè fàng sī xiǎng",所作所为:"suǒ zuò suǒ wéi",迷迷糊糊:"mí mí hu hū",荷枪实弹:"hè qiāng shí dàn",兴高采烈:"xìng gāo cǎi liè",无能为力:"wú néng wéi lì",布鲁塞尔:"bù lǔ sài ěr",为所欲为:"wéi suǒ yù wéi",克什米尔:"kè shí mǐ ěr",没完没了:"méi wán méi liǎo",不为人知:"bù wéi rén zhī",结结巴巴:"jiē jiē bā bā",前仆后继:"qián pū hòu jì",铺天盖地:"pū tiān gài dì",直截了当:"zhí jié liǎo dàng",供不应求:"gōng bú yìng qiú",御史大夫:"yù shǐ dà fū",不为瓦全:"bù wéi wǎ quán",不可收拾:"bù kě shōu shi",胡作非为:"hú zuò fēi wéi",分毫不差:"fēn háo bú chà",模模糊糊:"mó mó hu hū",不足为奇:"bù zú wéi qí",悄无声息:"qiǎo wú shēng xī",了如指掌:"liǎo rú zhǐ zhǎng",深恶痛绝:"shēn wù tòng jué",高高兴兴:"gāo gāo xìng xìng",唉声叹气:"āi shēng tàn qì",汉藏语系:"hàn zàng yǔ xì",处心积虑:"chǔ xīn jī lǜ",泣不成声:"qì bù chéng shēng",半夜三更:"bàn yè sān gēng",失魂落魄:"shī hún luò pò",二十八宿:"èr shí bā xiù",转来转去:"zhuàn lái zhuàn qù",数以万计:"shǔ yǐ wàn jì",相依为命:"xiāng yī wéi mìng",恋恋不舍:"liàn liàn bù shě",屈指可数:"qū zhǐ kě shǔ",神出鬼没:"shén chū guǐ mò",结结实实:"jiē jiē shí shí",有的放矢:"yǒu dì fàng shǐ",叽哩咕噜:"jī lǐ gū lū",调兵遣将:"diào bīng qiǎn jiàng",载歌载舞:"zài gē zài wǔ",转危为安:"zhuǎn wēi wéi ān",踏踏实实:"tā tā shi shí",桑给巴尔:"sāng jǐ bā ěr",装模作样:"zhuāng mú zuò yàng",见义勇为:"jiàn yì yǒng wéi",相差无几:"xiāng chā wú jǐ",叹为观止:"tàn wéi guān zhǐ",闷闷不乐:"mèn mèn bú lè",喜怒哀乐:"xǐ nù āi lè",鲜为人知:"xiǎn wéi rén zhī",张牙舞爪:"zhāng yá wǔ zhǎo",为非作歹:"wéi fēi zuò dǎi",含糊其辞:"hán hú qí cí",疲于奔命:"pí yú bēn mìng",勉为其难:"miǎn wéi qí nán",依依不舍:"yī yī bù shě",顶头上司:"dǐng tóu shàng si",不着边际:"bù zhuó biān jì",大模大样:"dà mú dà yàng",寻欢作乐:"xún huān zuò lè",一走了之:"yì zǒu liǎo zhī",字里行间:"zì lǐ háng jiān",含含糊糊:"hán hán hu hū",恰如其分:"qià rú qí fèn",破涕为笑:"pò tì wéi xiào",深更半夜:"shēn gēng bàn yè",千差万别:"qiān chā wàn bié",数不胜数:"shǔ bú shèng shǔ",据为己有:"jù wéi jǐ yǒu",天旋地转:"tiān xuán dì zhuàn",养尊处优:"yǎng zūn chǔ yōu",玻璃纤维:"bō li xiān wéi",吵吵闹闹:"chāo chao nào nào",晕头转向:"yūn tóu zhuàn xiàng",土生土长:"tǔ shēng tǔ zhǎng",宁死不屈:"nìng sǐ bù qū",不省人事:"bù xǐng rén shì",尽力而为:"jìn lì ér wéi",精明强干:"jīng míng qiáng gàn",唠唠叨叨:"láo lao dāo dāo",叽叽喳喳:"jī ji zhā zhā",功不可没:"gōng bù kě mò",锲而不舍:"qiè ér bù shě",排忧解难:"pái yōu jiě nàn",稀里糊涂:"xī li hú tú",各有所长:"gè yǒu suǒ cháng",的的确确:"dí dí què què",哄堂大笑:"hōng táng dà xiào",听而不闻:"tīng ér bù wén",刀耕火种:"dāo gēng huǒ zhòng",内分泌腺:"nèi fèn mì xiàn",化险为夷:"huà xiǎn wéi yí",百发百中:"bǎi fā bǎi zhòng",重见天日:"chóng jiàn tiān rì",反败为胜:"fǎn bài wéi shèng",一了百了:"yì liǎo bǎi liǎo",大大咧咧:"dà da liē liē",心急火燎:"xīn jí huǒ liǎo",粗心大意:"cū xīn dà yi",鸡皮疙瘩:"jī pí gē da",夷为平地:"yí wéi píng dì",日积月累:"rì jī yuè lěi",设身处地:"shè shēn chǔ dì",投其所好:"tóu qí suǒ hào",间不容发:"jiān bù róng fà",人满为患:"rén mǎn wéi huàn",穷追不舍:"qióng zhuī bù shě",为时已晚:"wéi shí yǐ wǎn",如数家珍:"rú shǔ jiā zhēn",心里有数:"xīn lǐ yǒu shù",以牙还牙:"yǐ yá huán yá",神不守舍:"shén bù shǒu shě",孟什维克:"mèng shí wéi kè",各自为战:"gè zì wéi zhàn",怨声载道:"yuàn shēng zài dào",救苦救难:"jiù kǔ jiù nàn",好好先生:"hǎo hǎo xiān sheng",怪模怪样:"guài mú guài yàng",抛头露面:"pāo tóu lù miàn",游手好闲:"yóu shǒu hào xián",无所不为:"wú suǒ bù wéi",调虎离山:"diào hǔ lí shān",步步为营:"bù bù wéi yíng",好大喜功:"hào dà xǐ gōng",众矢之的:"zhòng shǐ zhī dì",长生不死:"cháng shēng bù sǐ",蔚为壮观:"wèi wéi zhuàng guān",不可胜数:"bù kě shèng shǔ",鬼使神差:"guǐ shǐ shén chāi",洁身自好:"jié shēn zì hào",敢作敢为:"gǎn zuò gǎn wéi",茅塞顿开:"máo sè dùn kāi",走马换将:"zǒu mǎ huàn jiàng",为时过早:"wéi shí guò zǎo",为人师表:"wéi rén shī biǎo",阴差阳错:"yīn chā yáng cuò",油腔滑调:"yóu qiāng huá diào",重蹈覆辙:"chóng dǎo fù zhé",骂骂咧咧:"mà ma liē liē",絮絮叨叨:"xù xù dāo dāo",如履薄冰:"rú lǚ bó bīng",损兵折将:"sǔn bīng zhé jiàng",拐弯抹角:"guǎi wān mò jiǎo",像模像样:"xiàng mú xiàng yàng",供过于求:"gōng guò yú qiú",开花结果:"kāi huā jiē guǒ",仔仔细细:"zǐ zǐ xì xì",川藏公路:"chuān zàng gōng lù",河北梆子:"hé běi bāng zi",长年累月:"cháng nián lěi yuè",正儿八经:"zhèng er bā jīng",不识抬举:"bù shí tái ju",重振旗鼓:"chóng zhèn qí gǔ",气息奄奄:"qì xī yān yān",紧追不舍:"jǐn zhuī bù shě",服服帖帖:"fú fu tiē tiē",强词夺理:"qiǎng cí duó lǐ",噼里啪啦:"pī li pā lā",人才济济:"rén cái jǐ jǐ",发人深省:"fā rén shēn xǐng",不足为凭:"bù zú wéi píng",为富不仁:"wéi fù bù rén",连篇累牍:"lián piān lěi dú",呼天抢地:"hū tiān qiāng dì",落落大方:"luò luò dà fāng",自吹自擂:"zì chuī zì léi",乐善好施:"lè shàn hào shī",以攻为守:"yǐ gōng wéi shǒu",磨磨蹭蹭:"mó mó cèng cèng",削铁如泥:"xuē tiě rú ní",助纣为虐:"zhù zhòu wéi nüè",以退为进:"yǐ tuì wéi jìn",嘁嘁喳喳:"qī qī chā chā",枪林弹雨:"qiāng lín dàn yǔ",令人发指:"lìng rén fà zhǐ",转败为胜:"zhuǎn bài wéi shèng",转弯抹角:"zhuǎn wān mò jiǎo",在劫难逃:"zài jié nán táo",正当防卫:"zhèng dàng fáng wèi",不足为怪:"bù zú wéi guài",难兄难弟:"nàn xiōng nàn dì",咿咿呀呀:"yī yī yā yā",弹尽粮绝:"dàn jìn liáng jué",阿谀奉承:"ē yú fèng chéng",稀里哗啦:"xī li huā lā",返老还童:"fǎn lǎo huán tóng",好高骛远:"hào gāo wù yuǎn",鹿死谁手:"lù sǐ shéi shǒu",差强人意:"chā qiáng rén yì",大吹大擂:"dà chuī dà léi",成家立业:"chéng jiā lì yè",自怨自艾:"zì yuàn zì yì",负债累累:"fù zhài lěi lěi",古为今用:"gǔ wéi jīn yòng",入土为安:"rù tǔ wéi ān",下不为例:"xià bù wéi lì",一哄而上:"yì hōng ér shàng",没头苍蝇:"méi tóu cāng ying",天差地远:"tiān chā dì yuǎn",风卷残云:"fēng juǎn cán yún",多灾多难:"duō zāi duō nàn",乳臭未干:"rǔ xiù wèi gān",行家里手:"háng jiā lǐ shǒu",狼狈为奸:"láng bèi wéi jiān",处变不惊:"chǔ biàn bù jīng",一唱一和:"yí chàng yí hè",一念之差:"yí niàn zhī chā",金蝉脱壳:"jīn chán tuō qiào",滴滴答答:"dī dī dā dā",硕果累累:"shuò guǒ léi léi",好整以暇:"hào zhěng yǐ xiá",红得发紫:"hóng de fā zǐ",传为美谈:"chuán wéi měi tán",富商大贾:"fù shāng dà gǔ",四海为家:"sì hǎi wéi jiā",了若指掌:"liǎo ruò zhǐ zhǎng",大有可为:"dà yǒu kě wéi",出头露面:"chū tóu lù miàn",鼓鼓囊囊:"gǔ gu nāng nāng",窗明几净:"chuāng míng jī jìng",泰然处之:"tài rán chǔ zhī",怒发冲冠:"nù fà chōng guān",有机玻璃:"yǒu jī bō li",骨头架子:"gǔ tou jià zi",义薄云天:"yì bó yún tiān",一丁点儿:"yī dīng diǎn er",时来运转:"shí lái yùn zhuǎn",陈词滥调:"chén cí làn diào",化整为零:"huà zhěng wéi líng",火烧火燎:"huǒ shāo huǒ liǎo",干脆利索:"gàn cuì lì suǒ",吊儿郎当:"diào er láng dāng",广种薄收:"guǎng zhòng bó shōu",种瓜得瓜:"zhòng guā dé guā",种豆得豆:"zhòng dòu dé dòu",难舍难分:"nán shě nán fēn",歃血为盟:"shà xuè wéi méng",奋发有为:"fèn fā yǒu wéi",阴错阳差:"yīn cuò yáng chā",东躲西藏:"dōng duǒ xī cáng",烟熏火燎:"yān xūn huǒ liǎo",钻牛角尖:"zuān niú jiǎo jiān",乔装打扮:"qiáo zhuāng dǎ bàn",改弦更张:"gǎi xián gēng zhāng",河南梆子:"hé nán bāng zi",好吃懒做:"hào chī lǎn zuò",何乐不为:"hé lè bù wéi",大出风头:"dà chū fēng tóu",攻城掠地:"gōng chéng lüè dì",漂漂亮亮:"piào piào liang liang",折衷主义:"zhé zhōng zhǔ yì",大马哈鱼:"dà mǎ hǎ yú",绿树成荫:"lǜ shù chéng yīn",率先垂范:"shuài xiān chuí fàn",家长里短:"jiā cháng lǐ duǎn",宽大为怀:"kuān dà wéi huái",左膀右臂:"zuǒ bǎng yòu bì",一笑了之:"yí xiào liǎo zhī",天下为公:"tiān xià wéi gōng",还我河山:"huán wǒ hé shān",何足为奇:"hé zú wéi qí",好自为之:"hǎo zì wéi zhī",风姿绰约:"fēng zī chuò yuē",大雨滂沱:"dà yǔ pāng tuó",传为佳话:"chuán wéi jiā huà",吃里扒外:"chī lǐ pá wài",重操旧业:"chóng cāo jiù yè",小家子气:"xiǎo jiā zi qì",少不更事:"shào bù gēng shì",难分难舍:"nán fēn nán shě",添砖加瓦:"tiān zhuān jiā wǎ",是非分明:"shì fēi fēn míng",舍我其谁:"shě wǒ qí shuí",偏听偏信:"piān tīng piān xìn",量入为出:"liàng rù wéi chū",降龙伏虎:"xiáng lóng fú hǔ",钢化玻璃:"gāng huà bō li",正中下怀:"zhèng zhòng xià huái",以身许国:"yǐ shēn xǔ guó",一语中的:"yì yǔ zhòng dì",丧魂落魄:"sàng hún luò pò",三座大山:"sān zuò dà shān",济济一堂:"jǐ jǐ yì táng",好事之徒:"hào shì zhī tú",干净利索:"gàn jìng lì suǒ",出将入相:"chū jiàng rù xiàng",袅袅娜娜:"niǎo niǎo nuó nuó",狐狸尾巴:"hú li wěi ba",好逸恶劳:"hào yì wù láo",大而无当:"dà ér wú dàng",打马虎眼:"dǎ mǎ hu yǎn",板上钉钉:"bǎn shàng dìng dīng",吆五喝六:"yāo wǔ hè liù",虾兵蟹将:"xiā bīng xiè jiàng",水调歌头:"shuǐ diào gē tóu",数典忘祖:"shǔ diǎn wàng zǔ",人事不省:"rén shì bù xǐng",曲高和寡:"qǔ gāo hè guǎ",屡教不改:"lǚ jiào bù gǎi",互为因果:"hù wéi yīn guǒ",互为表里:"hù wéi biǎo lǐ",厚此薄彼:"hòu cǐ bó bǐ",过关斩将:"guò guān zhǎn jiàng",疙疙瘩瘩:"gē ge dā dā",大腹便便:"dà fù pián pián",走为上策:"zǒu wéi shàng cè",冤家对头:"yuān jia duì tóu",有隙可乘:"yǒu xì kě chèng",一鳞半爪:"yì lín bàn zhǎo",片言只语:"piàn yán zhǐ yǔ",开花结实:"kāi huā jié shí",经年累月:"jīng nián lěi yuè",含糊其词:"hán hú qí cí",寡廉鲜耻:"guǎ lián xiǎn chǐ",成年累月:"chéng nián lěi yuè",不徇私情:"bú xùn sī qíng",不当人子:"bù dāng rén zǐ",膀大腰圆:"bǎng dà yāo yuán",指腹为婚:"zhǐ fù wéi hūn",这么点儿:"zhè me diǎn er",意兴索然:"yì xīng suǒ rán",绣花枕头:"xiù huā zhěn tou",无的放矢:"wú dì fàng shǐ",望闻问切:"wàng wén wèn qiè",舍己为人:"shě jǐ wèi rén",穷年累月:"qióng nián lěi yuè",排难解纷:"pái nàn jiě fēn",处之泰然:"chǔ zhī tài rán",指鹿为马:"zhǐ lù wéi mǎ",危如累卵:"wēi rú lěi luǎn",天兵天将:"tiān bīng tiān jiàng",舍近求远:"shě jìn qiú yuǎn",南腔北调:"nán qiāng běi diào",苦中作乐:"kǔ zhōng zuò lè",厚积薄发:"hòu jī bó fā",臭味相投:"xiù wèi xiāng tóu",长幼有序:"zhǎng yòu yǒu xù",逼良为娼:"bī liáng wéi chāng",悲悲切切:"bēi bēi qiè qiē",败军之将:"bài jūn zhī jiàng",欺行霸市:"qī háng bà shì",削足适履:"xuē zú shì lǚ",先睹为快:"xiān dǔ wéi kuài",啼饥号寒:"tí jī háo hán",疏不间亲:"shū bú jiàn qīn",神差鬼使:"shén chāi guǐ shǐ",敲敲打打:"qiāo qiāo dǎ dǎ",平铺直叙:"píng pū zhí xù",没头没尾:"méi tóu mò wěi",寥寥可数:"liáo liáo kě shǔ",哼哈二将:"hēng hā èr jiàng",鹤发童颜:"hè fà tóng yán",各奔前程:"gè bèn qián chéng",弹无虚发:"dàn wú xū fā",大人先生:"dà rén xiān sheng",与民更始:"yǔ mín gēng shǐ",树碑立传:"shù bēi lì zhuàn",是非得失:"shì fēi dé shī",实逼处此:"shí bī chǔ cǐ",塞翁失马:"sài wēng shī mǎ",日薄西山:"rì bó xī shān",切身体会:"qiè shēn tǐ huì",片言只字:"piàn yán zhǐ zì",跑马卖解:"pǎo mǎ mài xiè",宁折不弯:"nìng zhé bù wān",零零散散:"líng líng sǎn sǎn",量体裁衣:"liàng tǐ cái yī",连中三元:"lián zhòng sān yuán",礼崩乐坏:"lǐ bēng yuè huài",不为已甚:"bù wéi yǐ shèn",转悲为喜:"zhuǎn bēi wéi xǐ",以眼还眼:"yǐ yǎn huán yǎn",蔚为大观:"wèi wéi dà guān",未为不可:"wèi wéi bù kě",童颜鹤发:"tóng yán hè fà",朋比为奸:"péng bǐ wéi jiān",莫此为甚:"mò cǐ wéi shèn",夹枪带棒:"jiā qiāng dài bàng",富商巨贾:"fù shāng jù jiǎ",淡然处之:"dàn rán chǔ zhī",箪食壶浆:"dān shí hú jiāng",创巨痛深:"chuāng jù tòng shēn",草长莺飞:"cǎo zhǎng yīng fēi",坐视不救:"zuò shī bú jiù",以己度人:"yǐ jǐ duó rén",随行就市:"suí háng jiù shì",文以载道:"wén yǐ zài dào",文不对题:"wén bú duì tí",铁板钉钉:"tiě bǎn dìng dīng",身体发肤:"shēn tǐ fà fū",缺吃少穿:"quē chī shǎo chuān",目无尊长:"mù wú zūn zhǎng",吉人天相:"jí rén tiān xiàng",毁家纾难:"huǐ jiā shū nàn",钢筋铁骨:"gāng jīn tiě gǔ",丢卒保车:"diū zú bǎo jū",丢三落四:"diū sān là sì",闭目塞听:"bì mù sè tīng",削尖脑袋:"xuē jiān nǎo dài",为非作恶:"wéi fēi zuò è",人才难得:"rén cái nán dé",情非得已:"qíng fēi dé yǐ",切中要害:"qiè zhòng yào hài",火急火燎:"huǒ jí huǒ liǎo",画地为牢:"huà dì wéi láo",好酒贪杯:"hào jiǔ tān bēi",长歌当哭:"cháng gē dàng kū",载沉载浮:"zài chén zài fú",遇难呈祥:"yù nàn chéng xiáng",榆木疙瘩:"yú mù gē da",以邻为壑:"yǐ lín wéi hè",洋为中用:"yáng wéi zhōng yòng",言为心声:"yán wéi xīn shēng",言必有中:"yán bì yǒu zhòng",图穷匕见:"tú qióng bǐ xiàn",滂沱大雨:"páng tuó dà yǔ",目不暇给:"mù bù xiá jǐ",量才录用:"liàng cái lù yòng",教学相长:"jiào xué xiāng zhǎng",悔不当初:"huǐ bù dāng chū",呼幺喝六:"hū yāo hè liù",不足为训:"bù zú wéi xùn",不拘形迹:"bù jū xíng jī",傍若无人:"páng ruò wú rén",罪责难逃:"zuì zé nán táo",自我吹嘘:"zì wǒ chuī xū",转祸为福:"zhuǎn huò wéi fú",勇冠三军:"yǒng guàn sān jūn",易地而处:"yì dì ér chǔ",卸磨杀驴:"xiè mò shā lǘ",玩儿不转:"wán ér bú zhuàn",天道好还:"tiān dào hǎo huán",身单力薄:"shēn dān lì bó",撒豆成兵:"sǎ dòu chéng bīng",片纸只字:"piàn zhǐ zhī zì",宁缺毋滥:"nìng quē wú làn",没没无闻:"mò mò wú wén",量力而为:"liàng lì ér wéi",历历可数:"lì lì kě shǔ",口碑载道:"kǒu bēi zài dào",君子好逑:"jūn zǐ hǎo qiú",好为人师:"hào wéi rén shī",豪商巨贾:"háo shāng jù jiǎ",各有所好:"gè yǒu suǒ hào",度德量力:"duó dé liàng lì",指天为誓:"zhǐ tiān wéi shì",逸兴遄飞:"yì xìng chuán fēi",心宽体胖:"xīn kuān tǐ pán",为德不卒:"wéi dé bù zú",天下为家:"tiān xià wéi jiā",视为畏途:"shì wéi wèi tú",三灾八难:"sān zāi bā nàn",沐猴而冠:"mù hóu ér guàn",哩哩啦啦:"lī li lā lā",见缝就钻:"jiàn fèng jiù zuān",夹层玻璃:"jiā céng bō li",急公好义:"jí gōng hào yì",积年累月:"jī nián lěi yuè",划地为牢:"huá dì wéi láo",更名改姓:"gēng míng gǎi xìng",奉为圭臬:"fèng wéi guī niè",多难兴邦:"duō nàn xīng bāng",不破不立:"bú pò bú lì",坐地自划:"zuò dì zì huá",坐不重席:"zuò bù chóng xí",坐不窥堂:"zuò bù kuī táng",作嫁衣裳:"zuò jià yī shang",左枝右梧:"zuǒ zhī yòu wú",左宜右有:"zuǒ yí yòu yǒu",钻头觅缝:"zuān tóu mì fèng",钻天打洞:"zuān tiān dǎ dòng",钻皮出羽:"zuān pí chū yǔ",钻火得冰:"zuān huǒ dé bīng",钻洞觅缝:"zuàn dòng mì féng",钻冰求火:"zuān bīng qiú huǒ",子为父隐:"zǐ wéi fù yǐn",擢发难数:"zhuó fà nán shǔ",着人先鞭:"zhuó rén xiān biān",斫雕为朴:"zhuó diāo wéi pǔ",锥处囊中:"zhuī chǔ náng zhōng",椎心饮泣:"chuí xīn yǐn qì",椎心泣血:"chuí xīn qì xuè",椎牛飨士:"chuí niú xiǎng shì",椎牛歃血:"chuí niú shà xuè",椎牛发冢:"chuí niú fà zhǒng",椎埋屠狗:"chuí mái tú gǒu",椎埋狗窃:"chuí mái gǒu qiè",壮发冲冠:"zhuàng fā chōng guàn",庄严宝相:"zhuāng yán bǎo xiàng",转愁为喜:"zhuǎn chóu wéi xǐ",转嗔为喜:"zhuǎn chēn wéi xǐ",拽巷啰街:"zhuài xiàng luó jiē",拽耙扶犁:"zhuāi pá fú lí",拽布拖麻:"zhuài bù tuō má",箸长碗短:"zhù cháng wǎn duǎn",铸剑为犁:"zhù jiàn wéi lí",杼柚其空:"zhù yòu qí kōng",杼柚空虚:"zhù yòu kōng xū",助天为虐:"zhù tiān wéi nüè",属垣有耳:"zhǔ yuán yǒu ěr",属毛离里:"zhǔ máo lí lǐ",属辞比事:"zhǔ cí bǐ shì",逐物不还:"zhú wù bù huán",铢量寸度:"zhū liáng cùn duó",铢两悉称:"zhū liǎng xī chèn",侏儒观戏:"zhū rú guān xì",朱轓皁盖:"zhū fān zào gài",昼度夜思:"zhòu duó yè sī",诪张为幻:"zhōu zhāng wéi huàn",重明继焰:"chóng míng jì yàn",众啄同音:"zhòng zhuó tóng yīn",众毛攒裘:"zhòng máo cuán qiú",众好众恶:"zhòng hào zhòng wù",擿埴索涂:"zhāi zhí suǒ tú",稚齿婑媠:"zhì chǐ wǒ tuó",至当不易:"zhì dàng bú yì",指皂为白:"zhǐ zào wéi bái",指雁为羹:"zhǐ yàn wéi gēng",指树为姓:"zhǐ shù wéi xìng",指山说磨:"zhǐ shān shuō mò",止戈为武:"zhǐ gē wéi wǔ",枝干相持:"zhī gàn xiāng chí",枝大于本:"zh dà yú běn",支吾其词:"zhī wú qí cí",正身率下:"zhèng shēn shuài xià",正冠李下:"zhèng guàn lǐ xià",整冠纳履:"zhěng guān nà lǚ",整躬率物:"zhěng gōng shuài wù",整顿干坤:"zhěng dùn gàn kūn",针头削铁:"zhēn tóu xuē tiě",贞松劲柏:"zhēn sōng jìng bǎi",赭衣塞路:"zhě yī sè lù",折箭为誓:"shé jiàn wéi shì",折而族之:"zhé ér zú zhī",昭德塞违:"zhāo dé sè wéi",章句小儒:"zhāng jù xiǎo rú",湛恩汪濊:"zhàn ēn wāng huì",占风望气:"zhān fēng wàng qì",斩将搴旗:"zhǎn jiàng qiān qí",曾母投杼:"zēng mǔ tóu zhù",曾参杀人:"zēng shēn shā rén",造谣中伤:"zào yáo zhòng shāng",早占勿药:"zǎo zhān wù yào",凿龟数策:"záo guī shǔ cè",攒三聚五:"cuán sān jù wǔ",攒眉蹙额:"cuán mei cù é",攒零合整:"cuán líng hé zhěng",攒锋聚镝:"cuán fēng jù dí",载笑载言:"zài xiào zài yán",载酒问字:"zài jiǔ wèn zì",殒身不恤:"yǔn shēn bú xù",云舒霞卷:"yún shū xiá juǎn",月中折桂:"yuè zhōng shé guì",月落参横:"yuè luò shēn héng",鬻驽窃价:"yù nú qiè jià",鬻鸡为凤:"yù jī wéi fèng",遇难成祥:"yù nàn chéng xiáng",郁郁累累:"yù yù lěi lěi",玉卮无当:"yù zhī wú dàng",语笑喧阗:"yǔ xiào xuān tián",与世沉浮:"yǔ shì chén fú",与时消息:"yǔ shí xiāo xi",逾墙钻隙:"yú qiáng zuān xì",渔夺侵牟:"yú duó qīn móu",杅穿皮蠹:"yú chuān pí dù",余勇可贾:"yú yǒng kě gǔ",予智予雄:"yú zhì yú xióng",予取予求:"yú qǔ yú qiú",于家为国:"yú jiā wéi guó",有借无还:"yǒu jiè wú huán",有加无已:"yǒu jiā wú yǐ",有国难投:"yǒu guó nán tóu",游必有方:"yóu bì yǒu fāng",油干灯尽:"yóu gàn dēng jìn",尤云殢雨:"yóu yún tì yǔ",庸中皦皦:"yōng zhōng jiǎo jiǎo",郢书燕说:"yǐng shū yān shuō",营蝇斐锦:"yíng yíng fēi jǐn",鹰心雁爪:"yīng xīn yàn zhǎo",莺吟燕儛:"yīng yín yàn wǔ",应天顺时:"yīng tiān shùn shí",印累绶若:"yìn léi shòu ruò",隐占身体:"yǐn zhàn shēn tǐ",饮犊上流:"yìn dú shàng liú",引绳切墨:"yǐn shéng qiē mò",龈齿弹舌:"yín chǐ dàn shé",因缘为市:"yīn yuán wéi shì",因树为屋:"yīn shù wéi wū",溢美溢恶:"yì měi yì wù",抑塞磊落:"yì sè lěi luò",倚闾望切:"yǐ lǘ wàng qiē",以意为之:"yǐ yì wéi zhī",以言为讳:"yǐ yán wéi huì",以疏间亲:"yǐ shū jiàn qīn",以水济水:"yǐ shuǐ jǐ shuǐ",以书为御:"yǐ shū wéi yù",以守为攻:"yǐ shǒu wéi gōng",以升量石:"yǐ shēng liáng dàn",以慎为键:"yǐ shèn wéi jiàn",以筌为鱼:"yǐ quán wéi yú",以利累形:"yǐ lì lěi xíng",以毁为罚:"yǐ huǐ wéi fá",以黑为白:"yǐ hēi wéi bái",以规为瑱:"yǐ guī wéi tiàn",以古为鉴:"yǐ gǔ wéi jiàn",以宫笑角:"yǐ gōng xiào jué",以法为教:"yǐ fǎ wéi jiào",以大恶细:"yǐ dà wù xì",遗世忘累:"yí shì wàng lěi",遗寝载怀:"yí qǐn zài huái",移的就箭:"yí dì jiù jiàn",依头缕当:"yī tóu lǚ dàng",衣租食税:"yì zū shí shuì",衣轻乘肥:"yì qīng chéng féi",衣裳之会:"yī shang zhī huì",衣单食薄:"yī dān shí bó",一还一报:"yì huán yí bào",叶公好龙:"yè gōng hào lóng",野调无腔:"yě diào wú qiāng",瑶池女使:"yáo chí nǚ shǐ",幺麽小丑:"yāo mó xiǎo chǒu",养精畜锐:"yǎng jīng xù ruì",卬首信眉:"áng shǒu shēn méi",洋洋纚纚:"yáng yáng sǎ sǎ",羊羔美酒:"yáng gāo měi jiǔ",扬风扢雅:"yáng fēng jié yǎ",燕昭市骏:"yān zhāo shì jùn",燕昭好马:"yān zhāo hǎo mǎ",燕石妄珍:"yān shí wàng zhēn",燕骏千金:"yān jùn qiān jīn",燕金募秀:"yān jīn mù xiù",燕驾越毂:"yān jià yuè gǔ",燕歌赵舞:"yān gē zhào wǔ",燕岱之石:"yān dài zhī shí",燕处危巢:"yàn chǔ wēi cháo",掞藻飞声:"shàn zǎo fēi shēng",偃革为轩:"yǎn gé wéi xuān",妍蚩好恶:"yán chī hǎo è",压良为贱:"yā liáng wéi jiàn",搀行夺市:"chān háng duó shì",泣数行下:"qì shù háng xià",当行出色:"dāng háng chū sè",秀出班行:"xiù chū bān háng",儿女成行:"ér nǚ chéng háng",大行大市:"dà háng dà shì",寻行数墨:"xún háng shǔ mò",埙篪相和:"xūn chí xiāng hè",血债累累:"xuè zhài lěi lěi",炫玉贾石:"xuàn yù gǔ shí",炫石为玉:"xuàn shí wéi yù",悬石程书:"xuán dàn chéng shū",悬狟素飡:"xuán huán sù cān",悬龟系鱼:"xuán guī xì yú",揎拳捋袖:"xuān quán luō xiù",轩鹤冠猴:"xuān hè guàn hóu",畜妻养子:"xù qī yǎng zǐ",羞人答答:"xiū rén dā dā",修鳞养爪:"xiū lín yǎng zhǎo",熊据虎跱:"xióng jù hǔ zhì",兄死弟及:"xiōng sǐ dì jí",腥闻在上:"xīng wén zài shàng",兴文匽武:"xīng wén yǎn wǔ",兴观群怨:"xìng guān qún yuàn",兴高彩烈:"xìng gāo cǎi liè",心手相应:"xīn shǒu xiāng yìng",心口相应:"xīn kǒu xiāng yīng",挟势弄权:"xié shì nòng quán",胁肩累足:"xié jiān lěi zú",校短量长:"jiào duǎn liáng cháng",小眼薄皮:"xiǎo yǎn bó pí",硝云弹雨:"xiāo yún dàn yǔ",鸮鸣鼠暴:"xiāo míng shǔ bào",削株掘根:"xuē zhū jué gēn",削铁无声:"xuē tiě wú shēng",削职为民:"xuē zhí wéi mín",削木为吏:"xuē mù wéi lì",想望风褱:"xiǎng wàng fēng huái",香培玉琢:"xiang pei yu zhuó",相鼠有皮:"xiàng shǔ yǒu pí",相时而动:"xiàng shí ér dòng",相切相磋:"xiāng qiē xiāng cuō",相女配夫:"xiàng nǚ pèi fū",相门有相:"xiàng mén yǒu xiàng",挦章撦句:"xián zhāng chě jù",先我着鞭:"xiān wǒ zhuó biān",习焉不察:"xí yān bù chá",歙漆阿胶:"shè qī ē jiāo",晰毛辨发:"xī máo biàn fà",悉索薄赋:"xī suǒ bó fù",雾鳞云爪:"wù lín yún zhǎo",物稀为贵:"wù xī wéi guì",碔砆混玉:"wǔ fū hùn yù",武断专横:"wǔ duàn zhuān héng",五石六鹢:"wǔ shí liù yì",五色相宣:"wǔ sè xiāng xuān",五侯七贵:"wǔ hóu qī guì",五侯蜡烛:"wǔ hòu là zhú",五羖大夫:"wǔ gǔ dà fū",吾自有处:"wú zì yǒu chǔ",无下箸处:"wú xià zhù chǔ",无伤无臭:"wú shāng wú xiù",无能为役:"wú néng wéi yì",无寇暴死:"wú kòu bào sǐ",无孔不钻:"wú kǒng bú zuàn",无间可乘:"wú jiān kě chéng",无间冬夏:"wú jiān dōng xià",无恶不为:"wú è bù wéi",无动为大:"wú dòng wéi dà",诬良为盗:"wū liáng wéi dào",握拳透爪:"wò quán tòu zhǎo",文武差事:"wén wǔ chāi shì",委委佗佗:"wēi wēi tuó tuó",惟日为岁:"wéi rì wéi suì",帷薄不修:"wéi bó bù xiū",为善最乐:"wéi shàn zuì lè",为山止篑:"wéi shān zhǐ kuì",为仁不富:"wéi rén bú fù",为裘为箕:"wéi qiú wéi jī",为民父母:"wéi mín fù mǔ",为虺弗摧:"wéi huǐ fú cuī",为好成歉:"wéi hǎo chéng qiàn",为鬼为蜮:"wéi guǐ wéi yù",望风响应:"wàng fēng xiǎng yīng",望尘僄声:"wàng chén piào shēng",往渚还汀:"wǎng zhǔ huán tīng",王贡弹冠:"wáng gòng dàn guàn",亡国大夫:"wáng guó dà fū",万贯家私:"wàn guàn jiā sī",晚食当肉:"wǎn shí dàng ròu",晚节不保:"wǎn jié bù bǎo",玩岁愒时:"wán suì kài shí",蛙蟆胜负:"wā má shèng fù",吞言咽理:"tūn yán yàn lǐ",颓垣断堑:"tuí yuán duàn qiàn",推干就湿:"tuī gàn jiù shī",剸繁决剧:"tuán fán jué jù",团头聚面:"tuán tóu jù miàn",兔丝燕麦:"tù sī yàn mài",兔头麞脑:"tù tóu zhāng nǎo",兔葵燕麦:"tù kuí yàn mài",吐哺握发:"tǔ bǔ wò fà",投传而去:"tóu zhuàn ér qù",头没杯案:"tóu mò bēi àn",头昏脑闷:"tóu hūn nǎo mèn",头会箕敛:"tóu kuài jī liǎn",头出头没:"tóu chū tóu mò",痛自创艾:"tòng zì chuāng yì",同恶相助:"tóng wù xiāng zhù",同恶相恤:"tóng wù xiāng xù",痌瘝在抱:"tōng guān zài bào",通文调武:"tōng wén diào wǔ",停留长智:"tíng liú zhǎng zhì",铁树开华:"tiě shù kāi huā",条贯部分:"tiáo guàn bù fēn",挑牙料唇:"tiǎo yá liào chún",挑么挑六:"tiāo yāo tiāo liù",挑唇料嘴:"tiǎo chún liào zuǐ",恬不为意:"tián bù wéi yì",恬不为怪:"tián bù wéi guài",天下为笼:"tiān xià wéi lóng",天台路迷:"tiān tái lù mí",天年不遂:"tiān nián bú suì",探囊胠箧:"tàn náng qū qiè",谭言微中:"tán yán wēi zhòng",谈言微中:"tán yán wēi zhòng",狧穅及米:"shì kāng jí mǐ",随物应机:"suí wù yīng jī",搜岩采干:"sōu yán cǎi gàn",宋斤鲁削:"sòng jīn lǔ xuē",松筠之节:"sōng yún zhī jié",四亭八当:"sì tíng bā dàng",四马攒蹄:"sì mǎ cuán tí",四不拗六:"sì bú niù liù",思所逐之:"sī suǒ zhú zhī",丝恩发怨:"sī ēn fà yuàn",硕望宿德:"shuò wàng xiǔ dé",铄古切今:"shuò gǔ qiē jīn",顺风而呼:"shùn fēng ér hū",顺风吹火:"shùn fēng chuī huǒ",水中著盐:"shuǐ zhōng zhuó yán",双柑斗酒:"shuāng gān dǒu jiǔ",数米而炊:"shǔ mǐ ér chuī",数米量柴:"shǔ mǐ liáng chái",数理逻辑:"shù lǐ luó ji",数黑论黄:"shǔ hēi lùn huáng",数白论黄:"shǔ bái lùn huáng",束缊还妇:"shù yūn huán fù",束蒲为脯:"shù pú wéi pú",束椽为柱:"shù chuán wéi zhù",书缺有间:"shū quē yǒu jiàn",手足重茧:"shǒu zú chóng jiǎn",手足异处:"shǒu zú yì chǔ",手脚干净:"shǒu jiǎo gàn jìng",手不应心:"shǒu bù yīng xīn",螫手解腕:"shì shǒu jiě wàn",释知遗形:"shì zhī yí xíng",适时应务:"shì shí yīng wù",适情率意:"shì qíng shuài yì",适当其冲:"shì dāng qí chōng",视为知己:"shì wéi zhī jǐ",使羊将狼:"shǐ yáng jiàng láng",食为民天:"shí wéi mín tiān",拾掇无遗:"shí duō wú yí",实与有力:"shí yù yǒu lì",石英玻璃:"shí yīng bō li",石室金匮:"shí shì jīn guì",什袭珍藏:"shí xí zhēn cáng",什伍东西:"shí wǔ dōng xī",什围伍攻:"shí wéi wǔ gōng",十魔九难:"shí mó jiǔ nàn",诗书发冢:"shī shū fà zhǒng",虱处裈中:"shī chǔ kūn zhōng",师直为壮:"shī zhí wéi zhuàng",尸居龙见:"shī jū lóng xiàn",圣经贤传:"shèng jīng xián zhuàn",圣君贤相:"shèng jūn xián xiàng",生拖死拽:"shēng tuō sǐ zhuài",审己度人:"shěn jǐ duó rén",神武挂冠:"shén wǔ guà guàn",神龙失埶:"shén lóng shī shì",深文曲折:"shēn wén qǔ shé",深厉浅揭:"shēn lì qiǎn qì",深谷为陵:"shēn gǔ wéi líng",深恶痛疾:"shēn wù tòng jí",深仇宿怨:"shēn chóu xiǔ yuàn",舍己为公:"shě jǐ wèi gōng",舍短取长:"shě duǎn qǔ cháng",舍策追羊:"shě cè zhuī yáng",蛇蝎为心:"shé xiē wéi xīn",少成若性:"shào chéng ruò xìng",上当学乖:"shàng dàng xué guāi",赏不当功:"shǎng bù dāng gōng",善自为谋:"shàn zì wéi móu",善为说辞:"shàn wéi shuō cí",善善恶恶:"shàn shàn wù è",善财难舍:"shàn cái nán shě",苫眼铺眉:"shān yǎn pū méi",讪牙闲嗑:"shàn yá xián kē",山阴乘兴:"shān yīn chéng xīng",山殽野湋:"shān yáo yě wéi",山溜穿石:"shān liù chuān shí",山节藻棁:"shān jié zǎo zhuō",杀鸡为黍:"shā jī wéi shǔ",色厉胆薄:"sè lì dǎn bó",桑荫未移:"sāng yīn wèi yí",桑荫不徙:"sāng yīn bù xǐ",桑土绸缪:"sāng tǔ chóu miù",桑户棬枢:"sāng hù juàn shū",三战三北:"sān zhàn sān běi",三瓦两舍:"sān wǎ liǎng shě",三人为众:"sān rén wèi zhòng",三差两错:"sān chā liǎng cuò",塞井焚舍:"sāi jǐng fén shě",洒心更始:"sǎ xīn gèng shǐ",洒扫应对:"sǎ sǎo yìng duì",软红香土:"ruǎn hóng xiāng tǔ",入吾彀中:"rù wú gòu zhōng",入铁主簿:"rù tiě zhǔ bù",入理切情:"rù lǐ qiē qíng",汝成人耶:"rǔ chéng rén yé",如水投石:"rú shuǐ tóu shí",如切如磋:"rú qiē rú cuō",如登春台:"rú dēng chūn tái",肉薄骨并:"ròu bó gǔ bìng",柔情绰态:"róu qíng chuò tài",戎马劻勷:"róng mǎ kuāng ráng",日中为市:"rì zhōng wéi shì",日月参辰:"rì yuè shēn chén",日省月修:"rì xǐng yuè xiū",日削月割:"rì xuē yuè gē",日省月试:"rì xǐng yuè shì",任达不拘:"rèn dá bù jū",人言藉藉:"rén yán jí jí",人模狗样:"rén mú gǒu yàng",人莫予毒:"rén mò yú dú",热熬翻饼:"rè áo fān bǐng",圈牢养物:"juàn láo yǎng wù",取予有节:"qǔ yǔ yǒu jié",诎要桡腘:"qū yāo ráo guó",穷形尽相:"qióng xíng jìn xiàng",情凄意切:"qíng qī yì qiè",情见势屈:"qíng xiàn shì qū",情见乎辞:"qíng xiàn hū cí",清都绛阙:"qīng dōu jiàng què",倾肠倒肚:"qīng cháng dào dǔ",青紫被体:"qīng zǐ pī tǐ",青林黑塞:"qīng lín hēi sài",螓首蛾眉:"qín shǒu é méi",琴瑟之好:"qín sè zhī hào",且住为佳:"qiě zhù wéi jiā",切树倒根:"qiē shù dǎo gēn",切理餍心:"qiē lǐ yàn xīn",切近的当:"qiē jìn de dāng",翘足引领:"qiáo zú yǐn lǐng",巧发奇中:"qiǎo fā qí zhòng",强嘴拗舌:"jiàng zuǐ niù shé",强直自遂:"qiáng zhí zì suí",强死强活:"qiǎng sǐ qiǎng huó",强食自爱:"qiǎng shí zì ài",强食靡角:"qiǎng shí mí jiǎo",强弓劲弩:"qiáng gōng jìng nǔ",强聒不舍:"qiǎng guō bù shě",强凫变鹤:"qiáng fú biàn hè",强而后可:"qiǎng ér hòu kě",强得易贫:"qiǎng dé yì pín",遣兴陶情:"qiǎn xìng táo qíng",牵羊担酒:"qiān yáng dān jiǔ",千了百当:"qiān liǎo bǎi dàng",泣下如雨:"qì xià rú yǔ",起偃为竖:"qǐ yǎn wéi shù",岂弟君子:"kǎi tì jūn zǐ",綦溪利跂:"qí xī lì qí",棋输先著:"qí shū xiān zhuó",齐王舍牛:"qí wáng shě niú",欺天诳地:"qī tiān kuáng dì",普天率土:"pǔ tiān shuài tǔ",铺胸纳地:"pū xiōng nà dì",铺锦列绣:"pū jǐn liè xiù",破家为国:"pò jiā wèi guó",破觚为圜:"pò gū wéi yuán",萍飘蓬转:"píng piāo péng zhuàn",帡天极地:"píng tiān jí dì",屏声息气:"bǐng shēng xī qì",凭几据杖:"píng jī jù zhàng",贫嘴薄舌:"pín zuǐ bó shé",片语只辞:"piàn yǔ zhī cí",披发文身:"pī fà wén shēn",烹龙炮凤:"pēng lóng páo fèng",炰鳖脍鲤:"fǒu biē kuài lǐ",庞眉皓发:"páng méi hào fà",攀花折柳:"pān huā zhé liǔ",攀蟾折桂:"pān chán shé guì",女大难留:"nǚ dà nán liú",弄玉吹箫:"nòng yù chuī xiāo",弄管调弦:"nòng guǎn tiáo xián",弄粉调朱:"nòng fěn diào zhū",浓抹淡妆:"nóng mò dàn zhuāng",捻土为香:"niǎn tǔ wéi xiāng",年谊世好:"nián yì shì hǎo",年华垂暮:"nián huá chuí mù",儗不于伦:"nǐ bù yú lún",泥而不滓:"ní ér bù zǐ",能者为师:"néng zhě wéi shī",能不称官:"néng bú chèn guān",挠直为曲:"náo zhí wéi qū",难进易退:"nán jìn yì tuì",难得糊涂:"nán dé hú tú",南蛮鴂舌:"nán mán jué shé",南贩北贾:"nán fàn běi gǔ",牧猪奴戏:"mù zhū nú xì",目眢心忳:"mù yuān xīn tún",目挑心招:"mù tiǎo xīn zhāo",目量意营:"mù liàng yì yíng",木头木脑:"mù tóu mù nǎo",木干鸟栖:"mù gàn niǎo qī",侔色揣称:"móu sè chuǎi chèn",莫予毒也:"mò yú dú yě",抹粉施脂:"mò fěn shī zhī",磨砻镌切:"mó lóng juān qiē",磨棱刓角:"mó léng wán jiǎo",摸门不着:"mō mén bù zháo",摸不着边:"mō bù zhuó biān",命中注定:"mìng zhōng zhù dìng",鸣鹤之应:"míng hè zhī yìng",明效大验:"míng xiào dà yàn",名我固当:"míng wǒ gù dāng",邈处欿视:"miǎo chǔ kǎn shì",黾穴鸲巢:"měng xué qú cháo",绵里薄材:"mián lǐ bó cái",靡有孑遗:"mǐ yǒu jié yí",靡衣偷食:"mǐ yī tōu shí",迷恋骸骨:"mí liàn hái gǔ",扪参历井:"mén shēn lì jǐng",门单户薄:"mén dān hù bó",昧旦晨兴:"mèi dàn chén xīng",冒名接脚:"mào míng jiē jiǎo",毛遂堕井:"máo suí duò jǐng",毛发倒竖:"máo fā dǎo shù",卖文为生:"mài wén wéi shēng",卖李钻核:"mài lǐ zuān hé",买椟还珠:"mǎi dú huán zhū",埋三怨四:"mán sān yuàn sì",马入华山:"mǎ rù huá shān",落魄江湖:"luò pò jiāng hú",落落难合:"luò luò nán hé",落草为寇:"luò cǎo wéi kòu",罗织构陷:"luó zhī gòu xiàn",鸾凤和鸣:"luán fèng hè míng",率由旧章:"shuài yóu jiù zhāng",率土同庆:"shuài tǔ tóng qìng",率兽食人:"shuài shòu shí rén",率土归心:"shuài tǔ guī xīn",率马以骥:"shuài mǎ yǐ jì",率尔成章:"shuài ěr chéng zhāng",鲁斤燕削:"lǔ jīn yàn xuē",漏尽更阑:"lòu jìn gēng lán",笼鸟槛猿:"lóng niǎo jiàn yuán",笼鸟池鱼:"lóng niǎo chí yú",龙游曲沼:"lóng yóu qū zhǎo",龙血玄黄:"lóng xuè xuán huáng",龙雕凤咀:"lóng diāo fèng jǔ",六尺之讬:"liù chǐ zhī tuō",令原之戚:"líng yuán zhī qī",令人捧腹:"lìng rén pěng fù",陵劲淬砺:"líng jìng cuì lì",临敌易将:"lín dí yì jiàng",裂裳衣疮:"liè shang yī chuāng",裂冠毁冕:"liè guàn huǐ miǎn",了无惧色:"liǎo wú jù sè",了身达命:"liǎo shēn dá mìng",了然无闻:"liǎo rán wú wén",了不可见:"liǎo bù kě jiàn",了不长进:"liǎo bù zhǎng jìn",燎发摧枯:"liǎo fà cuī kū",审时度势:"shěn shí duó shì",量小力微:"liàng xiǎo lì wēi",相时度力:"xiāng shí duó lì",量枘制凿:"liàng ruì zhì záo",量如江海:"liàng rú jiāng hǎi",量金买赋:"liàng jīn mǎi fù",量己审分:"liàng jǐ shěn fēn",敛骨吹魂:"liǎn gǔ chuī hún",詈夷为跖:"lì yí wéi zhí",利令志惛:"lì lìng zhì hūn",李广不侯:"lǐ guǎng bú hòu",礼为情貌:"lǐ wéi qíng mào",礼让为国:"lǐ ràng wéi guó",犁生骍角:"lí shēng xīng jiǎo",离本徼末:"lí běn jiǎo mò",楞眉横眼:"léng méi hèng yǎn",擂天倒地:"léi tiān dǎo dì",累足成步:"lěi zú chéng bù",累瓦结绳:"lěi wǎ jié shéng",累土至山:"lěi tǔ zhì shān",累土聚沙:"lěi tǔ jù shā",累卵之危:"lěi luǎn zhī wēi",累累如珠:"lěi lěi rú zhū",累块积苏:"lěi kuài jī sū",乐山乐水:"lè shān lè shuǐ",潦原浸天:"lǎo yuán jìn tiān",老师宿儒:"lǎo shī xiǔ rú",牢什古子:"láo shí gǔ zi",琅嬛福地:"láng huán fú dì",揆情度理:"kuí qíng duó lǐ",旷日累时:"kuàng rì lěi shí",匡救弥缝:"kuāng jiù mí fèng",枯树生华:"kū shù shēng huā",口轻舌薄:"kǒu qīng shé bó",口角生风:"kǒu jiǎo shēng fēng",口角春风:"kǒu jiǎo chūn fēng",口角风情:"kǒu jiǎo fēng qíng",口干舌焦:"kǒu gān shé jiāo",口腹之累:"kǒu fù zhī lěi",空腹便便:"kōng fù pián pián",嗑牙料嘴:"kē yá liào zuǐ",刻木为鹄:"kè mù wéi hú",咳珠唾玉:"ké zhū tuò yù",咳唾成珠:"ké tuò chéng zhū",抗颜为师:"kàng yán wéi shī",开华结果:"kāi huā jié guǒ",峻阪盐车:"jùn bǎn yán chē",嚼铁咀金:"jiáo tiě jǔ jīn",嚼墨喷纸:"jué mò pēn zhǐ",倔头强脑:"juè tóu jiàng nǎo",倔头倔脑:"juè tóu juè nǎo",倦鸟知还:"juàn niǎo zhī huán",卷席而葬:"juǎn xí ér zàng",卷甲倍道:"juǎn jiǎ bèi dào",聚米为山:"jù mǐ wéi shān",举手相庆:"jǔ shǒu xiāng qìng",举世混浊:"jǔ shì hún zhuó",鞠为茂草:"jū wéi mào cǎo",拘神遣将:"jū shén qiǎn jiàng",居下讪上:"jū xià shàn shàng",久要不忘:"jiǔ yāo bú wàng",九转功成:"jiǔ zhuǎn gōng chéng",九蒸三熯:"jiǔ zhēng sān hàn",敬业乐群:"jìng yè lè qún",井底虾蟆:"jǐng dǐ xiā má",旌旗卷舒:"jīng qí juǎn shū",荆棘载途:"jīng jí zài tú",禁舍开塞:"jìn shě kāi sāi",祲威盛容:"jìn wēi shèng róng",进退消长:"jìn tuì xiāo cháng",进退应矩:"jìn tuì yīng jǔ",进退触籓:"jìn tuì chù fān",进退跋疐:"jìn tuì bá zhì",尽多尽少:"jǐn duō jǐn shǎo",锦囊还矢:"jǐn náng huán shǐ",矜己自饰:"jīn jǐ zì shì",矜功负气:"jīn gōng fù qì",津关险塞:"jīn guān xiǎn sài",金吾不禁:"jīn wú bú jìn",金翅擘海:"jīn chì bāi hǎi",解衣衣人:"jiě yī yī rén",解人难得:"jiě rén nán dé",解铃系铃:"jiě líng xì líng",解发佯狂:"jiě fà yáng kuáng",诘屈磝碻:"jié qū áo qiāo",教猱升木:"jiāo náo shēng mù",较瘦量肥:"jiào shòu liàng féi",角立杰出:"jiǎo lì jié chū",焦沙烂石:"jiāo shā làn shí",骄儿騃女:"jiāo ér sì nǚ",浇风薄俗:"jiāo fēng bó sú",降妖捉怪:"xiáng yāo zhuō guài",将取固予:"jiāng qǔ gù yǔ",将门有将:"jiàng mén yǒu jiàng",将夺固与:"jiāng duó gù yǔ",槛花笼鹤:"jiàn huā lóng hè",鉴影度形:"jiàn yǐng duó xíng",渐不可长:"jiàn bù kě zhǎng",见素抱朴:"xiàn sù bào pǔ",见弃于人:"jiàn qì yú rén",简丝数米:"jiǎn sī shǔ mǐ",俭不中礼:"jiǎn bú zhòng lǐ",间见层出:"jiàn xiàn céng chū",尖嘴薄舌:"jiān zuǐ bó shé",甲冠天下:"jiǎ guàn tiān xià",葭莩之亲:"jiā fú zhī qīn",家累千金:"jiā lèi qiān jīn",家给人足:"jiā jǐ rén zú",家道从容:"jiā dào cóng róng",夹袋人物:"jiā dài rén wù",霁风朗月:"jì fēng lǎng yuè",寄兴寓情:"jì xìng yù qíng",计深虑远:"jì shēn lǜ yuǎn",计功量罪:"jì gōng liàng zuì",掎裳连襼:"jǐ shang lián yì",虮虱相吊:"jǐ shī xiāng diào",疾不可为:"jí bù kě wéi",极深研几:"jí shēn yán jī",及宾有鱼:"jí bīn yǒu yú",激薄停浇:"jī bó tíng jiāo",积素累旧:"jī sù lěi jiù",积时累日:"jī shí lěi rì",积露为波:"jī lù wéi bō",积德累功:"jī dé lěi gōng",积谗糜骨:"jī chán méi gǔ",击排冒没:"jī pái mào mò",祸为福先:"huò wéi fú xiān",祸福相依:"huò fú xiāng yī",获隽公车:"huò jùn gōng chē",混应滥应:"hùn yīng làn yīng",毁舟为杕:"huǐ zhōu wéi duò",毁钟为铎:"huǐ zhōng wéi duó",毁冠裂裳:"huǐ guān liè cháng",晦盲否塞:"huì máng pǐ sè",回船转舵:"huí chuán zhuàn duò",潢池盗弄:"huáng chí dào nòng",黄冠草履:"huáng guàn cǎo lǚ",黄发儿齿:"huáng fà ér chǐ",黄发垂髫:"huáng fà chuí tiáo",还珠返璧:"huán zhū fǎn bì",还年驻色:"huán nián zhù sè",还年却老:"huán nián què lǎo",坏裳为裤:"huài shang wéi kù",画荻和丸:"huà dí huò wán",化枭为鸠:"huà xiāo wéi jiū",化腐为奇:"huà fǔ wéi qí",化鸱为凤:"huà chī wéi fèng",花不棱登:"huā bu lēng dēng",户限为穿:"hù xiàn wéi chuān",呼卢喝雉:"hū lú hè zhì",呼来喝去:"hū lái hè qù",呼不给吸:"hū bù jǐ xī",厚味腊毒:"hòu wèi xī dú",厚德载物:"hòu dé zài wù",鸿渐于干:"hóng jiàn yú gàn",洪炉燎发:"hóng lú liáo fà",红绳系足:"hóng shéng jì zú",红不棱登:"hóng bu lēng dēng",横抢硬夺:"hèng qiǎng yìng duó",横恩滥赏:"hèng ēn làn shǎng",恨海难填:"hèn hǎi nán tián",鹤发鸡皮:"hè fà jī pí",涸思干虑:"hé sī gān lǜ",河涸海干:"hé hé hǎi gān",和颜说色:"hé yán yuè sè",合从连衡:"hé zòng lián héng",浩浩汤汤:"hào hào shāng shāng",好勇斗狠:"hào yǒng dòu hěn",好问则裕:"hào wèn zé yù",好为事端:"hào wéi shì duān",好问决疑:"hào wèn jué yí",好生之德:"hào shēng zhī dé",好奇尚异:"hǎo qí shàng yì",好恶不同:"hǎo è bù tóng",好丹非素:"hào dān fēi sù",豪干暴取:"háo gàn bào qǔ",毫发不爽:"háo fà bù shuǎng",寒酸落魄:"hán suān luò pò",含英咀华:"hán yīng jǔ huá",含糊不明:"hán hú bù míng",过为已甚:"guò wéi yǐ shèn",桂折兰摧:"guì shé lán cuī",规旋矩折:"guī xuán jǔ shé",广文先生:"guǎng wén xiān sheng",广陵散绝:"guǎng líng sǎn jué",冠山戴粒:"guàn shān dài lì",冠屦倒施:"guàn jù dǎo shī",挂席为门:"guà xí wéi mén",寡见鲜闻:"guǎ jiàn xiǎn wén",瓜葛相连:"guā gé xiāng lián",鼓吻奋爪:"gǔ wěn fèn zhǎo",古调单弹:"gǔ diào dān tán",古调不弹:"gǔ diào bù tán",姑射神人:"gū yè shén rén",苟合取容:"gǒu hé qǔ róng",狗续侯冠:"gǒu xù hòu guàn",钩爪锯牙:"gōu zhǎo jù yá",共枝别干:"gòng zhī bié gàn",共为唇齿:"gòng wéi chún chǐ",拱手而降:"gǒng shǒu ér xiáng",拱肩缩背:"gǒng jiān suō bèi",功薄蝉翼:"gōng bó chán yì",弓调马服:"gōng diào mǎ fú",更姓改物:"gēng xìng gǎi wù",更仆难数:"gēng pú nán shǔ",更令明号:"gēng lìng míng hào",更待干罢:"gèng dài gàn bà",更唱迭和:"gēng chàng dié hé",更长梦短:"gēng cháng mèng duǎn",各色名样:"gè sè míng yàng",格格不纳:"gé gé bú nà",格格不吐:"gé gé bù tǔ",告朔饩羊:"gù shuò xì yáng",膏车秣马:"gào chē mò mǎ",高义薄云:"gāo yì bó yún",岗头泽底:"gāng tóu zé dǐ",敢为敢做:"gǎn wéi gǎn zuò",甘分随时:"gān fèn suí shí",甘处下流:"gān chǔ xià liú",干啼湿哭:"gàn tí shī kū",干名犯义:"gàn míng fàn yì",干将莫邪:"gān jiāng mò yé",干城之将:"gān chéng zhī jiàng",腹载五车:"fù zài wǔ chē",父债子还:"fù zhài zǐ huán",父为子隐:"fù wéi zǐ yǐn",辅世长民:"fǔ shì zhǎng mín",福为祸始:"fú wéi huò shǐ",符号逻辑:"fú hào luó jí",浮收勒折:"fú shōu lè shé",肤受之愬:"fū shòu zhī sù",否终则泰:"pǐ zhōng zé tài",佛头著粪:"fó tóu zhuó fèn",奉为楷模:"fèng wéi kǎi mó",凤靡鸾吪:"fèng mǐ luán é",封豨修蛇:"fēng xī xiū shé",风影敷衍:"fēng yǐng fū yǎn",丰屋蔀家:"fēng wū bù jiā",粪土不如:"fèn tǔ bù rú",分风劈流:"fēn fēng pǐ liú",沸沸汤汤:"fèi fèi shāng shāng",菲食薄衣:"fěi shí bó yī",飞将数奇:"fēi jiàng shù qí",放辟邪侈:"fàng pì xié chǐ",方领圆冠:"fāng lǐng yuán guàn",犯而不校:"fàn ér bú jiào",返本还源:"fǎn běn huán yuán",反劳为逸:"fǎn láo wéi yì",法轮常转:"fǎ lún cháng zhuàn",罚不当罪:"fá bù dāng zuì",发引千钧:"fà yǐn qiān jūn",发奸擿伏:"fā jiān tī fú",发短心长:"fà duǎn xīn cháng",二竖为虐:"èr shù wéi nüè",儿女心肠:"ér nǚ xīn cháng",儿女亲家:"ér nǚ qìng jiā",遏恶扬善:"è wù yáng shàn",饿殍枕藉:"è piǎo zhěn jí",饿殍载道:"è piǎo zài dào",恶醉强酒:"wù zuì qiǎng jiǔ",恶意中伤:"è yì zhòng shāng",恶湿居下:"wù shī jū xià",恶居下流:"wù jū xià liú",恶不去善:"wù bú qù shàn",扼吭夺食:"è háng duó shí",扼襟控咽:"è jīn kòng yān",峨峨汤汤:"é é shāng shāng",屙金溺银:"ē jīn niào yín",朵颐大嚼:"duǒ yí dà jiáo",夺人所好:"duó rén suǒ hào",多言数穷:"duō yán shuò qióng",多文为富:"duō wén wéi fù",多端寡要:"duō duān guǎ yào",多财善贾:"duō cái shàn gǔ",遁世无闷:"dùn shì wú mèn",遁迹黄冠:"dùn jì huáng guàn",堆案盈几:"duī àn yíng jī",断还归宗:"duàn huán guī zōng",短见薄识:"duǎn jiàn bó shí",蠹居棊处:"dù jū qí chǔ",度己以绳:"duó jǐ yǐ shéng",杜默为诗:"dù mò wéi shī",杜鹃啼血:"dù juān tí xuè",笃近举远:"dǔ jìn jǔ yuǎn",独有千秋:"dú yǒu qiān qiū",读书得间:"dú shū dé jiàn",斗转参横:"dǒu zhuǎn shēn héng",兜肚连肠:"dōu dǔ lián cháng",洞见症结:"dòng jiàn zhèng jié",恫疑虚喝:"dòng yí xū hè",动中窾要:"dòng zhōng kuǎn yào",东鸣西应:"dōng míng xī yīng",东鳞西爪:"dōng lín xī zhǎo",东量西折:"dōng liàng xī shé",东家西舍:"dōng jiā xī shè",东扯西拽:"dōng chě xī zhuāi",鼎铛有耳:"dǐng chēng yǒu ěr",鼎铛玉石:"dǐng chēng yù shí",钉头磷磷:"dīng tóu lín lín",跌宕不羁:"diē dàng bù jī",跌弹斑鸠:"diē dàn bān jiū",雕心雁爪:"diāo xīn yàn zhǎo",颠倒衣裳:"diān dǎo yī cháng",德薄能鲜:"dé bó néng xiǎn",得马折足:"dé mǎ shé zú",蹈其覆辙:"dǎo qí fù zhé",捣虚撇抗:"dǎo xū piē kàng",倒载干戈:"dào zài gān gē",倒裳索领:"dào cháng suǒ lǐng",倒果为因:"dào guǒ wéi yīn",叨在知己:"tāo zài zhī jǐ",叨陪末座:"tāo péi mò zuò",党豺为虐:"dǎng chái wéi nüè",当轴处中:"dāng zhóu chǔ zhōng",当着不着:"dāng zhuó bù zhuó",当务始终:"dāng wù shǐ zhōng",淡汝浓抹:"dàn rǔ nóng mǒ",弹丸脱手:"tán wán tuō shǒu",弹铗无鱼:"dàn jiá wú yú",箪食瓢饮:"dān sì piáo yǐn",大璞不完:"dà pú bù wán",大明法度:"dà míng fǎ dù",大车以载:"dà chē yǐ zài",打闷葫芦:"dǎ mèn hú lu",沓来踵至:"tà lái zhǒng zhì",厝火燎原:"cuò huǒ liǎo yuán",撮科打哄:"cuō kē dǎ hòng",寸积铢累:"cùn jī zhū lěi",啛啛喳喳:"cuì cuì chā chā",摧折豪强:"cuī zhé háo qiáng",摧刚为柔:"cuī gāng wéi róu",从俗就简:"cóng sú jiù jiǎn",此发彼应:"cǐ fā bǐ yīng",此唱彼和:"cǐ chàng bǐ hè",慈悲为本:"cí bēi wéi běn",纯属骗局:"chún shǔ piàn jú",春笋怒发:"chūn sǔn nù fā",垂头搨翼:"chuí tóu tà yì",传为笑谈:"chuán wéi xiào tán",传风扇火:"chuán fēng shān huǒ",穿红着绿:"chuān hóng zhuó lǜ",触处机来:"chù chǔ jī lái",处尊居显:"chǔ zūn jū xiǎn",处堂燕雀:"chǔ táng yàn què",处实效功:"chǔ shí xiào gōng",处高临深:"chǔ gāo lín shēn",出入无间:"chū rù wú jiān",出门应辙:"chū mén yīng zhé",出处语默:"chū chǔ yǔ mò",出处殊途:"chū chǔ shū tú",出处进退:"chū chǔ jìn tuì",愁山闷海:"chóu shān mèn hǎi",冲冠眦裂:"chōng guàn zì liè",齿牙为祸:"chǐ yá wéi huò",尺二冤家:"chǐ èr yuān jia",尺短寸长:"chǐ duǎn cùn cháng",尺寸之功:"chǐ cùn zhī gōng",城北徐公:"chéng běi xú gōng",成败兴废:"chéng bài xīng fèi",趁水和泥:"chèn shuǐ huò ní",称雨道晴:"chēng yǔ dào qíng",称体载衣:"chēng tǐ zài yī",称体裁衣:"chèn tǐ cái yī",称家有无:"chèn jiā yǒu wú",称德度功:"chēng dé duó gōng",沉吟章句:"chén yín zhāng jù",沉吟不决:"chén yín bù jué",沉疴宿疾:"chén kē sù jí",扯纤拉烟:"chě qiàn lā yān",扯顺风旗:"chě shùn fēng qí",车载船装:"chē zǎi chuán zhuāng",朝升暮合:"zhāo shēng mù gě",朝攀暮折:"zhāo pān mù shé",超今冠古:"chāo jīn guàn gǔ",倡而不和:"chàng ér bú hè",畅所欲为:"chàng suǒ yù wéi",苌弘碧血:"cháng hóng bì xiě",长幼尊卑:"zhǎng yòu zūn bēi",长绳系日:"cháng shéng jì rì",长年三老:"zhǎng nián sān lǎo",长春不老:"cháng chūn bù lǎo",长傲饰非:"zhǎng ào shì fēi",昌亭旅食:"chāng tíng lǚ shí",禅絮沾泥:"chán xù zhān ní",差三错四:"chā sān cuò sì",层台累榭:"céng tái lěi xiè",层见迭出:"céng xiàn dié chū",藏踪蹑迹:"cáng zōng niè jì",苍蝇见血:"cāng yíng jiàn xiě",餐松啖柏:"cān sōng dàn bó",骖风驷霞:"cān fēng sì xiá",参伍错综:"cēn wǔ cuò zōng",参辰卯酉:"shēn chén mǎo yǒu",材优干济:"cái yōu gān jǐ",材薄质衰:"cái bó zhì shuāi",才大难用:"cái dà nán yòng",才薄智浅:"cái bó zhì qiǎn",不足为意:"bù zú wéi yì",不足为据:"bù zú wéi jù",不足为法:"bù zú wéi fǎ",不足齿数:"bù zú chǐ shǔ",不着疼热:"bù zhuó téng rè",不知薡蕫:"bù zhī dǐng dǒng",不越雷池:"bú yuè léi chí",不相为谋:"bù xiāng wéi móu",不贪为宝:"bù tān wéi bǎo",不了而了:"bù liǎo ér liǎo",不可揆度:"bù kě kuí duó",不遑启处:"bù huáng qǐ chǔ",不当不正:"bù dāng bú zhèng",不差什么:"bú chà shén me",不差累黍:"bù chā lěi shǔ",擘两分星:"bò liǎng fēn xīng",簸土扬沙:"bǒ tǔ yáng shā",薄物细故:"bó wù xì gù",薄寒中人:"bó hán zhòng rén",博文约礼:"bó wén yuē lǐ",播糠眯目:"bō kāng mí mù",剥皮抽筋:"bō pí chōu jīn",剥肤椎髓:"bō fū chuí suǐ",波属云委:"bō zhǔ yún wěi",波骇云属:"bō hài yún zhǔ",兵微将寡:"bīng wēi jiàng guǎ",兵强将勇:"bīng qiáng jiàng yǒng",兵多将广:"bīng duō jiàng guǎng",兵不由将:"bīng bù yóu jiàng",冰解的破:"bīng jiě dì pò",彬彬济济:"bīn bīn jǐ jǐ",摽梅之年:"biào méi zhī nián",表里为奸:"biǎo lǐ wéi jiān",飙发电举:"biāo fā diàn jǔ",变贪厉薄:"biàn tān lì bó",敝盖不弃:"bì gài bú qì",秕言谬说:"bǐ yán miù shuō",比物属事:"bǐ wù zhǔ shì",被山带河:"pī shān dài hé",被甲枕戈:"pī jiǎ zhěn gē",被甲据鞍:"pī jiǎ jù ān",被褐怀玉:"pī hè huái yù",被发缨冠:"pī fà yīng guàn",背曲腰躬:"bèi qǔ yāo gōng",北窗高卧:"běi chuāng gāo wò",北辰星拱:"běi chén xīng gǒng",北鄙之音:"běi bǐ zhī yīn",卑宫菲食:"bēi gōng fěi shí",暴衣露冠:"pù yī lù guàn",暴腮龙门:"pù sāi lóng mén",暴露文学:"bào lù wén xué",暴虎冯河:"bào hǔ píng hé",抱蔓摘瓜:"bào wàn zhāi guā",抱法处势:"bào fǎ chǔ shì",褒贬与夺:"bāo biǎn yǔ duó",帮闲钻懒:"bāng xián zuān lǎn",拜将封侯:"bài jiàng fēng hóu",百兽率舞:"bǎi shòu shuài wǔ",百孔千创:"bǎi kǒng qiān chuāng",白衣卿相:"bái yī qīng xiàng",白首为郎:"bái shǒu wéi láng",白首相知:"bái shǒu xiāng zhī",把玩无厌:"bǎ wán wú yàn",拔锅卷席:"bá guō juǎn xí",拔本塞源:"bá běn sè yuán",傲不可长:"ào bù kě zhǎng",熬更守夜:"áo gēng shǒu yè",安时处顺:"ān shí chǔ shùn",安身为乐:"ān shēn wéi lè",安老怀少:"ān lǎo huái shào",安步当车:"ān bù dàng chē",爱人好士:"ài rén hào shì",矮人观场:"ǎi rén guān chǎng",捱风缉缝:"ái fēng jī fèng",挨山塞海:"āi shān sè hǎi",阿家阿翁:"ā jiā ā wēng",阿党相为:"ē dǎng xiāng wéi",追亡逐北:"zhuī wáng zhú běi",竹篮打水:"zhú lán dá shuǐ",知疼着热:"zhī téng zháo rè",语不惊人:"yǔ bù jīng rén",于今为烈:"yú jīn wéi liè",一日三省:"yí rì sān xǐng",穴居野处:"xué jū yě chǔ",五脊六兽:"wǔ jǐ liù shòu",无声无臭:"wú shēng wú xiù",谓予不信:"wèi yú bú xìn",舍身为国:"shě shēn wéi guó",杀妻求将:"shā qī qiú jiàng",强作解人:"qiǎng zuò jiě rén",气冲斗牛:"qì chōng dǒu niú",临深履薄:"lín shēn lǚ bó",钧天广乐:"jūn tiān guǎng yuè",艰难竭蹶:"jiān nán jié jué",夹七夹八:"jiā qī jiā bā",混混噩噩:"hún hún è è",厚古薄今:"hòu gǔ bó jīn",鬼怕恶人:"guǐ pà è rén",伽马射线:"gā mǎ shè xiàn",佛头着粪:"fó tóu zhuó fèn",奉为至宝:"fèng wéi zhì bǎo",登坛拜将:"dēng tán bài jiàng",晨昏定省:"chén hūn dìng xǐng",察察为明:"chá chá wéi míng",博闻强识:"bó wén qiáng zhì",避难就易:"bì nán jiù yì",了无生机:"liǎo wú shēng jī",有一说一:"yǒu yī shuō yī",独一无二:"dú yī wú èr",说一不二:"shuō yī bù èr",举一反三:"jǔ yī fǎn sān",数一数二:"shǔ yī shǔ èr",杀一儆百:"shā yī jǐng bǎi",丁一卯二:"dīng yī mǎo èr",丁一确二:"dīng yī què èr",不一而止:"bù yī ér zhǐ",无一幸免:"wú yī xìng miǎn",表里不一:"biǎo lǐ bù yī",良莠不一:"liáng yǒu bù yī",心口不一:"xīn kǒu bù yī",言行不一:"yán xíng bù yī",政令不一:"zhèng lìng bù yī",参差不一:"cēn cī bù yī",纷纷不一:"fēn fēn bù yī",毁誉不一:"huǐ yù bù yī",不一而三:"bù yī ér sān",百不一遇:"bǎi bù yī yù",言行抱一:"yán xíng bào yī",瑜百瑕一:"yú bǎi xiá yī",背城借一:"bèi chéng jiè yī",凭城借一:"píng chéng jiè yī",劝百讽一:"quàn bǎi fěng yī",群居和一:"qún jū hé yī",百不获一:"bǎi bù huò yī",百不失一:"bǎi bù shī yī",百无失一:"bǎi wú shī yī",万不失一:"wàn bù shī yī",万无失一:"wàn wú shī yī",合而为一:"hé ér wéi yī",合两为一:"hé liǎng wéi yī",合二为一:"hé èr wéi yī",天下为一:"tiān xià wéi yī",相与为一:"xiāng yǔ wéi yī",较若画一:"jiào ruò huà yī",较如画一:"jiào rú huà yī",斠若画一:"jiào ruò huà yī",言行若一:"yán xíng ruò yī",始终若一:"shǐ zhōng ruò yī",终始若一:"zhōng shǐ ruò yī",惟精惟一:"wéi jīng wéi yī",众多非一:"zhòng duō fēi yī",不能赞一:"bù néng zàn yī",问一答十:"wèn yī dá shí",一不扭众:"yī bù niǔ zhòng",一以贯之:"yī yǐ guàn zhī",一以当百:"yī yǐ dāng bǎi",百不当一:"bǎi bù dāng yī",十不当一:"shí bù dāng yī",以一警百:"yǐ yī jǐng bǎi",以一奉百:"yǐ yī fèng bǎi",以一持万:"yǐ yī chí wàn",以一知万:"yǐ yī zhī wàn",百里挑一:"bǎi lǐ tiāo yī",整齐划一:"zhěng qí huà yī",一来二去:"yī lái èr qù",一路公交:"yī lù gōng jiāo",一路汽车:"yī lù qì chē",一路巴士:"yī lù bā shì",朝朝朝落:"zhāo cháo zhāo luò",曲意逢迎:"qū yì féng yíng",一行不行:"yì háng bù xíng",行行不行:"háng háng bù xíng"},Ch=Object.keys(si).map(n=>({zh:n,pinyin:si[n],probability:2e-8,length:4,priority:R.Normal,dict:Symbol("dict4")})),li={巴尔干半岛:"bā ěr gàn bàn dǎo",巴尔喀什湖:"bā ěr kā shí hú",不幸而言中:"bú xìng ér yán zhòng",布尔什维克:"bù ěr shí wéi kè",何乐而不为:"hé lè ér bù wéi",苛政猛于虎:"kē zhèng měng yú hǔ",蒙得维的亚:"méng dé wéi dì yà",民以食为天:"mín yǐ shí wéi tiān",事后诸葛亮:"shì hòu zhū gě liàng",物以稀为贵:"wù yǐ xī wéi guì",先下手为强:"xiān xià shǒu wéi qiáng",行行出状元:"háng háng chū zhuàng yuan",亚得里亚海:"yà dé lǐ yà hǎi",眼不见为净:"yǎn bú jiàn wéi jìng",竹筒倒豆子:"zhú tǒng dào dòu zi"},Dh=Object.keys(li).map(n=>({zh:n,pinyin:li[n],probability:2e-8,length:5,priority:R.Normal,dict:Symbol("dict5")}));function oi(n,i){return n&&(n.decimali.probability)?n:i}function ti(n){n.probability<1e-300&&(n.probability*=1e300,n.decimal+=1)}function Ih(n){return n.priority===R.Custom?-(n.length*n.length*100):n.priority===R.Surname?-(n.length*n.length*10):0}function Vh(n,i){const g=[];let u=n.length-1,h=n[u];for(let e=i-1;e>=0;e--){const s=e+1>=i?{probability:1,decimal:0,patterns:[]}:g[e+1];for(;h&&h.index+h.length-1===e;){const d=h.index,c={probability:h.probability*s.probability,decimal:s.decimal+Ih(h),patterns:s.patterns,concatPattern:h};ti(c),g[d]=oi(g[d],c),h=n[--u]}const o={probability:1e-13*s.probability,decimal:0,patterns:s.patterns};ti(o),g[e]=oi(g[e],o),g[e].concatPattern&&(g[e].patterns=g[e].patterns.concat(g[e].concatPattern),g[e].concatPattern=void 0,delete g[e+1])}return g[0].patterns.reverse()}function ci(n,i){return n&&n.count<=i.count?n:i}function Mh(n){return n.priority===R.Custom?-(n.length*n.length*1e5):n.priority===R.Surname?-(n.length*n.length*100):1}function Eh(n,i){const g=[];let u=n.length-1,h=n[u];for(let e=i-1;e>=0;e--){const s=e+1>=i?{count:0,patterns:[]}:g[e+1];for(;h&&h.index+h.length-1===e;){const d=h.index,c={count:Mh(h)+s.count,patterns:s.patterns,concatPattern:h};g[d]=ci(g[d],c),h=n[--u]}const o={count:1+s.count,patterns:s.patterns};g[e]=ci(g[e],o),g[e].concatPattern&&(g[e].patterns=g[e].patterns.concat(g[e].concatPattern),g[e].concatPattern=void 0,delete g[e+1])}return g[0].patterns.reverse()}function _h(n,i){return!(i.index+i.length<=n.index||i.priority>n.priority||i.priority===n.priority&&i.length>n.length)}function Nh(n){const i=[];for(let g=n.length-1;g>=0;){const{index:u}=n[g];let h=g-1;for(;h>=0&&_h(n[g],n[h]);)h--;(h<0||n[h].index+n[h].length<=u)&&i.push(n[g]),g=h}return i.reverse()}var zi;(function(n){n[n.ReverseMaxMatch=1]="ReverseMaxMatch",n[n.MaxProbability=2]="MaxProbability",n[n.MinTokenization=3]="MinTokenization"})(zi||(zi={}));class yi{constructor(i,g="",u=""){this.children=new Map,this.fail=null,this.patterns=[],this.parent=i,this.prefix=g,this.key=u}}class Rh{constructor(){this.dictMap=new Map,this.queues=[],this.root=new yi(null)}build(i){this.buildTrie(i),this.buildFailPointer()}buildTrie(i){for(let g of i){const u=En(g.zh);let h=this.root;for(let e=0;e{i=i.concat(u)}),this.queues=[];i.length>g;){let u=i[g++],h=u.parent&&u.parent.fail,e=u.key;for(;h&&!h.children.has(e);)h=h.fail;h?u.fail=h.children.get(e):u.fail=this.root}}addPatternToDictMap(i){this.dictMap.has(i.dict)||this.dictMap.set(i.dict,new Set),this.dictMap.get(i.dict).add(i)}addNodeToQueues(i){this.queues[O(i.prefix)]||(this.queues[O(i.prefix)]=[]),this.queues[O(i.prefix)].push(i)}insertPattern(i,g){for(let u=i.length-1;u>=0;u--){const h=i[u];if(g.priority===h.priority&&g.probability>=h.probability)i[u+1]=h;else if(g.priority>h.priority)i[u+1]=h;else{i[u+1]=g;return}}i[0]=g}removeDict(i){this.dictMap.has(i)&&(this.dictMap.get(i).forEach(u=>{u.node.patterns=u.node.patterns.filter(h=>h!==u)}),this.dictMap.delete(i))}match(i,g){let u=this.root,h=[];const e=En(i);for(let s=0;sg==="off"?z.priority!==R.Surname:g==="head"?z.length-1-s===0:!0);d&&h.push(Object.assign(Object.assign({},d),{index:s-d.length+1}));let c=u.fail;for(;c!==null;){const z=c.patterns.find(t=>g==="off"?t.priority!==R.Surname:g==="head"?t.length-1-s===0:!0);z&&h.push(Object.assign(Object.assign({},z),{index:s-z.length+1})),c=c.fail}}}return h}search(i,g,u=2){const h=this.match(i,g);return u===1?Nh(h):u===3?Eh(h,O(i)):Vh(h,O(i))}}const Ah=[...Dh,...Ch,...Ph,...Sh,...fh,...Th],vi=new Rh;vi.build(Ah);const Zh=new qi,Bh=()=>Zh,Fh=[];function Lh(){return Fh}const dn=n=>{const i=G.get(n);return i?i.split(" ")[0]:n},$h=n=>{const i=[],g=Lh();for(let u=0;u{const e=h?$h(n):n,s=vi.search(e,g,u);let o=0;const d=En(n);for(let c=0;cn.replace(/(ā|á|ǎ|à)/g,"a").replace(/(ō|ó|ǒ|ò)/g,"o").replace(/(ē|é|ě|è)/g,"e").replace(/(ī|í|ǐ|ì)/g,"i").replace(/(ū|ú|ǔ|ù)/g,"u").replace(/(ǖ|ǘ|ǚ|ǜ)/g,"ü").replace(/(n̄|ń|ň|ǹ)/g,"n").replace(/(m̄|ḿ|m̌|m̀)/g,"m").replace(/(ê̄|ế|ê̌|ề)/g,"ê"),ki=(n,i="off")=>{const g=Bh();let u=G.get(n)?G.get(n).split(" "):[];if(g.get(n))u=g.get(n).split(" ");else if(i!=="off"){const h=_n[n];h&&(u=[h].concat(u.filter(e=>e!==h)))}return u},Wh=(n,i="off")=>{let g=ki(n,i);return g.length>0?g.map(u=>({origin:n,result:u,isZh:!0,originPinyin:u})):[{origin:n,result:n,isZh:!1,originPinyin:n}]},vn=(n,i)=>{const g=n.split(" "),u=[],h=[];for(let e of g)for(let s of ah)if(e.startsWith(s)){let o=e.slice(s.length);rh.indexOf(s)!==-1&&jh.indexOf(o)!==-1&&(o=bh[o]),u.push(s),h.push(o);break}return i==="standard"&&u.forEach((e,s)=>{(e==="y"||e==="w")&&(u[s]="")}),{final:h.join(" "),initial:u.join(" ")}},wn=n=>{const{final:i}=vn(n);let g="",u="",h="";return mh.indexOf(kn(i))!==-1?(g=i[0],u=i[1],h=i.slice(2)):(u=i[0]||"",h=i.slice(1)||""),{head:g,body:u,tail:h}},Tn=n=>{const i=/(ā|ō|ē|ī|ū|ǖ|n̄|m̄|ê̄)/,g=/(á|ó|é|í|ú|ǘ|ń|ḿ|ế)/,u=/(ǎ|ǒ|ě|ǐ|ǔ|ǚ|ň|m̌|ê̌)/,h=/(à|ò|è|ì|ù|ǜ|ǹ|m̀|ề)/,e=/(a|o|e|i|u|ü|ê)/,s=/(n|m)$/,o=[];return n.split(" ").forEach(c=>{i.test(c)?o.push("1"):g.test(c)?o.push("2"):u.test(c)?o.push("3"):h.test(c)?o.push("4"):e.test(c)||s.test(c)?o.push("0"):o.push("")}),o.join(" ")},Hh=(n,i)=>{const g=kn(n).split(" "),u=Tn(i).split(" "),h=[];return g.forEach((e,s)=>{h.push(`${e}${u[s]}`)}),h.join(" ")},Ti=(n,i)=>{const g=[];return n.split(" ").forEach(h=>{g.push(i?h[0]:h)}),g.join(" ")},Uh=n=>typeof n!="string"?(console.error("The first param of pinyin is error: "+n+' is not assignable to type "string".'),!1):!0;function Vn(n,i){return i instanceof RegExp?i.test(n):!0}const Yh=(n,i)=>{let g=i.nonZh;if(g==="removed")return n.filter(u=>u.isZh||!Vn(u.origin,i.nonZhScope));if(g==="consecutive"){for(let u=n.length-2;u>=0;u--){const h=n[u],e=n[u+1];!h.isZh&&!e.isZh&&Vn(h.origin,i.nonZhScope)&&Vn(e.origin,i.nonZhScope)&&(h.origin+=e.origin,h.result+=e.result,e.delete=!0)}return n.filter(u=>!u.delete)}else return n},di=(n,i)=>O(n)===1&&i.multiple?Wh(n,i.surname):!1,Kh=(n,i)=>{switch(i.pattern){case"pinyin":break;case"num":n.forEach(g=>{g.result=g.isZh?Tn(g.result):""});break;case"initial":n.forEach(g=>{g.result=g.isZh?vn(g.result,i.initialPattern).initial:""});break;case"final":n.forEach(g=>{g.result=g.isZh?vn(g.result,i.initialPattern).final:""});break;case"first":n.forEach(g=>{g.result=Ti(g.result,g.isZh)});break;case"finalHead":n.forEach(g=>{g.result=g.isZh?wn(g.result).head:""});break;case"finalBody":n.forEach(g=>{g.result=g.isZh?wn(g.result).body:""});break;case"finalTail":n.forEach(g=>{g.result=g.isZh?wn(g.result).tail:""});break}},Xh=(n,i)=>{switch(i.toneType){case"symbol":break;case"none":n.forEach(g=>{g.isZh&&(g.result=kn(g.result))});break;case"num":{n.forEach(g=>{g.isZh&&(g.result=Hh(g.result,g.originPinyin))});break}}},Qh=(n,i)=>{i.v&&n.forEach(g=>{g.isZh&&(g.result=g.result.replace(/ü/g,typeof i.v=="string"?i.v:"v"))})},Gh=(n,i,g)=>{if(i.multiple&&O(g)===1){let u="";n=n.filter(h=>{const e=h.result!==u;return u=h.result,e})}return i.type==="array"?n.map(u=>u.result):i.type==="all"?n.map(u=>{const h=u.isZh?u.result:"",{initial:e,final:s}=vn(h,i.initialPattern),{head:o,body:d,tail:c}=wn(h);let z=[];return h!==""&&(z=[h].concat(ki(u.origin,i.surname).filter(t=>t!==h))),{origin:u.origin,pinyin:h,initial:e,final:s,first:Ti(u.result,u.isZh),finalHead:o,finalBody:d,finalTail:c,num:Number(Tn(u.originPinyin)),isZh:u.isZh,polyphonic:z,inZhRange:!!G.get(u.origin),result:u.result}}):n.map(u=>u.result).join(i.separator)},Jh=(n,i)=>(i===!1&&n.forEach(g=>{g.origin==="一"?g.result=g.originPinyin="yī":g.origin==="不"&&(g.result=g.originPinyin="bù")}),n),nu={pattern:"pinyin",toneType:"symbol",type:"string",multiple:!1,mode:"normal",removeNonZh:!1,nonZh:"spaced",v:!1,separator:" ",toneSandhi:!0,segmentit:2};function yu(n,i){if(i=Object.assign(Object.assign({},nu),i||{}),!Uh(n))return n;if(n==="")return i.type==="array"||i.type==="all"?[]:"";i.surname===void 0&&(i.mode==="surname"?i.surname="all":i.surname="off"),i.type==="all"&&(i.pattern="pinyin"),i.pattern==="num"&&(i.toneType="none"),i.removeNonZh&&(i.nonZh="removed");let u=Array(O(n)),{list:h}=Oh(n,u,i.surname,i.segmentit,i.traditional);return h=Jh(h,i.toneSandhi),h=Yh(h,i),di(n,i)&&(h=di(n,i)),Kh(h,i),Xh(h,i),Qh(h,i),Gh(h,i,n)}var Nn;(function(n){n[n.AllSegment=1]="AllSegment",n[n.AllArray=2]="AllArray",n[n.AllString=3]="AllString",n[n.PinyinSegment=4]="PinyinSegment",n[n.PinyinArray=5]="PinyinArray",n[n.PinyinString=6]="PinyinString",n[n.ZhSegment=7]="ZhSegment",n[n.ZhArray=8]="ZhArray",n[n.ZhString=9]="ZhString"})(Nn||(Nn={}));Nn.AllSegment;const iu=xi({alwaysFilter:Boolean,autoSelectFirst:{type:[Boolean,String]},clearOnSelect:{type:Boolean,default:!0},delimiters:Array,...Xg({filterKeys:["title"]}),...Kg({hideNoData:!0,returnObject:!0}),...fi(Lg({modelValue:null,role:"combobox"}),["validationValue","dirty"])},"VCombobox"),du=ji()({name:"VCombobox",props:iu(),emits:{"update:focused":n=>!0,"update:modelValue":n=>!0,"update:search":n=>!0,"update:menu":n=>!0},setup(n,i){var Zn;let{emit:g,slots:u}=i;const{t:h}=pg(),e=gn(),s=Z(!1),o=Z(!0),d=Z(!1),c=gn(),z=gn(),t=Z(-1);let x=!1;const{items:w,transformIn:T,transformOut:V}=vg(n),{textColorClasses:J,textColorStyles:nn}=kg(()=>{var l;return(l=e.value)==null?void 0:l.color}),{InputIcon:K}=Bg(n),a=Mn(n,"modelValue",[],l=>T(Tg(l)),l=>{const y=V(l);return n.multiple?y:y[0]??null}),B=Fg(n),X=fn(()=>n.closableChips&&!B.isReadonly.value&&!B.isDisabled.value),m=P(()=>!!(n.chips||u.chip)),r=P(()=>m.value||!!u.selection),j=Z(!n.multiple&&!r.value?((Zn=a.value[0])==null?void 0:Zn.title)??"":""),f=Z(null),b=P({get:()=>j.value,set:async l=>{var y;if(j.value=l??"",l===null||l===""&&!n.multiple&&!r.value?a.value=[]:!n.multiple&&!r.value&&(a.value=[zn(n,l)],tn(()=>{var p;return(p=z.value)==null?void 0:p.scrollToIndex(0)})),l&&n.multiple&&((y=n.delimiters)!=null&&y.length)){const p=Rn(l);p.length>1&&(An(p),j.value="")}l||(t.value=-1),o.value=!l}}),D=P(()=>typeof n.counterValue=="function"?n.counterValue(a.value):typeof n.counterValue=="number"?n.counterValue:n.multiple?a.value.length:b.value.length),{filteredItems:W,getMatches:hn}=$g(n,w,()=>f.value??(n.alwaysFilter||!o.value?b.value:"")),A=P(()=>n.hideSelected&&f.value===null?W.value.filter(l=>!a.value.some(y=>y.value===l.value)):W.value),un=P(()=>n.hideNoData&&!A.value.length||B.isReadonly.value||B.isDisabled.value),en=Mn(n,"menu"),C=P({get:()=>en.value,set:l=>{var y;en.value&&!l&&((y=c.value)!=null&&y.ΨopenChildren.size)||l&&un.value||(en.value=l)}}),{menuId:rn,ariaExpanded:Sn,ariaControls:M}=Og(n,C);Y(j,l=>{x?tn(()=>x=!1):s.value&&!C.value&&(C.value=!0),g("update:search",l)}),Y(a,l=>{var y;!n.multiple&&!r.value&&(j.value=((y=l[0])==null?void 0:y.title)??"")});const jn=P(()=>a.value.map(l=>l.value)),Q=P(()=>A.value.find(l=>l.type==="item"&&!l.props.disabled)),sn=P(()=>{var y;return(n.autoSelectFirst===!0||n.autoSelectFirst==="exact"&&b.value===((y=Q.value)==null?void 0:y.title))&&A.value.length>0&&!o.value&&!d.value}),Pn=gn(),Si=Yg(Pn,e);function Pi(l){x=!0,tn(()=>x=!1),n.openOnClear&&(C.value=!0)}function Ci(){un.value||(C.value=!0)}function Di(l){un.value||(s.value&&(l.preventDefault(),l.stopPropagation()),C.value=!C.value)}function Ii(l){var y;(Un(l)||l.key==="Backspace")&&((y=e.value)==null||y.focus())}function Vi(l){var k,F,q,E;if(Ng(l)||B.isReadonly.value)return;const y=(k=e.value)==null?void 0:k.selectionStart,p=a.value.length;if(["Enter","ArrowDown","ArrowUp"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"].includes(l.key)&&(C.value=!0),["Escape"].includes(l.key)&&(C.value=!1),sn.value&&["Enter","Tab"].includes(l.key)&&Q.value&&!a.value.some(I=>{let{value:ln}=I;return ln===Q.value.value})&&H(Q.value),l.key==="ArrowDown"&&sn.value&&((F=Pn.value)==null||F.focus("next")),l.key==="Enter"&&b.value&&(H(zn(n,b.value),!0,!0),r.value&&(j.value="")),["Backspace","Delete"].includes(l.key)){if(!n.multiple&&r.value&&a.value.length>0&&!b.value)return H(a.value[0],!1);if(~t.value){l.preventDefault();const I=t.value;H(a.value[t.value],!1),t.value=I>=p-1?p-2:I}else l.key==="Backspace"&&!b.value&&(t.value=p-1);return}if(n.multiple)if(l.key==="ArrowLeft"){if(t.value<0&&y&&y>0)return;const I=t.value>-1?t.value-1:p-1;a.value[I]?t.value=I:(t.value=-1,(q=e.value)==null||q.setSelectionRange(b.value.length,b.value.length))}else if(l.key==="ArrowRight"){if(t.value<0)return;const I=t.value+1;a.value[I]?t.value=I:(t.value=-1,(E=e.value)==null||E.setSelectionRange(0,0))}else~t.value&&Un(l)&&(t.value=-1)}function Mi(l){var k;const y=((k=l==null?void 0:l.clipboardData)==null?void 0:k.getData("Text"))??"",p=Rn(y);p.length>1&&n.multiple&&(l.preventDefault(),An(p))}function Ei(){var l;n.eager&&((l=z.value)==null||l.calculateVisibleItems())}function _i(){var l;s.value&&((l=e.value)==null||l.focus()),o.value=!0,f.value=null}function H(l){let y=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0,p=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;if(!(!l||l.props.disabled))if(n.multiple){const k=a.value.findIndex(q=>(n.valueComparator||Hn)(q.value,l.value)),F=y??!~k;if(~k){const q=F?[...a.value,l]:[...a.value];q.splice(k,1),a.value=q}else F&&(a.value=[...a.value,l]);n.clearOnSelect&&(b.value="")}else{const k=y!==!1;a.value=k?[l]:[],(!o.value||n.alwaysFilter)&&j.value&&(f.value=j.value),j.value=k&&!r.value?l.title:"",tn(()=>{C.value=p,o.value=!0})}}function Rn(l){const p=[` `,...n.delimiters??[]].map(Rg).join("|");return l.split(new RegExp(`(?:${p})+`))}async function An(l){for(let y of l)y=y.trim(),y&&(H(zn(n,y)),await tn())}function Ni(l){s.value=!0,setTimeout(()=>{d.value=!0})}function Ri(l){d.value=!1}return Y(s,(l,y)=>{if(!(l||l===y)&&(t.value=-1,C.value=!1,b.value)){if(n.multiple){H(zn(n,b.value));return}if(!r.value)return;a.value.some(p=>{let{title:k}=p;return k===b.value})?j.value="":H(zn(n,b.value))}}),Y(C,l=>{if(!n.hideSelected&&l&&a.value.length&&o.value){const y=A.value.findIndex(p=>a.value.some(k=>(n.valueComparator||Hn)(k.value,p.value)));Sg&&window.requestAnimationFrame(()=>{var p;y>=0&&((p=z.value)==null||p.scrollToIndex(y))})}l&&(f.value=null)}),Y(w,(l,y)=>{C.value||s.value&&!y.length&&l.length&&(C.value=!0)}),bi(()=>{const l=!!(!n.hideNoData||A.value.length||u["prepend-item"]||u["append-item"]||u["no-data"]),y=a.value.length>0,p=Yn.filterProps(n);return v(Yn,$({ref:e},p,{modelValue:b.value,"onUpdate:modelValue":k=>b.value=k,focused:s.value,"onUpdate:focused":k=>s.value=k,validationValue:a.externalValue,counterValue:D.value,dirty:y,class:["v-combobox",{"v-combobox--active-menu":C.value,"v-combobox--chips":!!n.chips,"v-combobox--selection-slot":!!r.value,"v-combobox--selecting-index":t.value>-1,[`v-combobox--${n.multiple?"multiple":"single"}`]:!0},n.class],style:n.style,readonly:B.isReadonly.value,placeholder:y?void 0:n.placeholder,"onClick:clear":Pi,"onMousedown:control":Ci,onKeydown:Vi,onPaste:Mi,"aria-expanded":Sn.value,"aria-controls":M.value}),{...u,default:k=>{let{id:F}=k;return N(an,null,[v(Wg,$({id:rn.value,ref:c,modelValue:C.value,"onUpdate:modelValue":q=>C.value=q,activator:"parent",contentClass:"v-combobox__content",disabled:un.value,eager:n.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,onAfterEnter:Ei,onAfterLeave:_i},n.menuProps),{default:()=>[l&&v(wi,$({ref:Pn,filterable:!0,selected:jn.value,selectStrategy:n.multiple?"independent":"single-independent",onMousedown:q=>q.preventDefault(),selectable:!!A.value.length,onKeydown:Ii,onFocusin:Ni,onFocusout:Ri,tabindex:"-1","aria-live":"polite","aria-labelledby":`${F.value}-label`,"aria-multiselectable":n.multiple,color:n.itemColor??n.color},Si,n.listProps),{default:()=>{var q,E,I;return[(q=u["prepend-item"])==null?void 0:q.call(u),!A.value.length&&!n.hideNoData&&(((E=u["no-data"])==null?void 0:E.call(u))??v(qn,{key:"no-data",title:h(n.noDataText)},null)),v(Hg,{ref:z,renderless:!0,items:A.value,itemKey:"value"},{default:ln=>{var Fn,Ln,$n;let{item:S,index:U,itemRef:_}=ln;const Bn=$(S.props,{ref:_,key:S.value,active:sn.value&&S===Q.value?!0:void 0,onClick:()=>H(S,null),"aria-posinset":U+1,"aria-setsize":A.value.length});return S.type==="divider"?((Fn=u.divider)==null?void 0:Fn.call(u,{props:S.raw,index:U}))??v(Cg,$(S.props,{key:`divider-${U}`}),null):S.type==="subheader"?((Ln=u.subheader)==null?void 0:Ln.call(u,{props:S.raw,index:U}))??v(Dg,$(S.props,{key:`subheader-${U}`}),null):(($n=u.item)==null?void 0:$n.call(u,{item:S,index:U,props:Bn}))??v(qn,$(Bn,{role:"option"}),{prepend:bn=>{let{isSelected:Ai}=bn;return N(an,null,[n.multiple&&!n.hideSelected?v(Qg,{key:S.value,modelValue:Ai,ripple:!1,tabindex:"-1","aria-hidden":!0,onClick:Zi=>Zi.preventDefault()},null):void 0,S.props.prependAvatar&&v(Ig,{image:S.props.prependAvatar},null),S.props.prependIcon&&v(pn,{icon:S.props.prependIcon},null)])},title:()=>{var bn;return o.value?S.title:Ug("v-combobox",S.title,(bn=hn(S))==null?void 0:bn.title)}})}}),(I=u["append-item"])==null?void 0:I.call(u)]}})]}),a.value.map((q,E)=>{function I(_){_.stopPropagation(),_.preventDefault(),H(q,!1)}const ln=$(Kn.filterProps(q.props),{"onClick:close":I,onKeydown(_){_.key!=="Enter"&&_.key!==" "||(_.preventDefault(),_.stopPropagation(),I(_))},onMousedown(_){_.preventDefault(),_.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),S=m.value?!!u.chip:!!u.selection,U=S?Vg(m.value?u.chip({item:q,index:E,props:ln}):u.selection({item:q,index:E})):void 0;if(!(S&&!U))return N("div",{key:q.value,class:Eg(["v-combobox__selection",E===t.value&&["v-combobox__selection--selected",J.value]]),style:Mg(E===t.value?nn.value:{})},[m.value?u.chip?v(mi,{key:"chip-defaults",defaults:{VChip:{closable:X.value,size:"small",text:q.title}}},{default:()=>[U]}):v(Kn,$({key:"chip",closable:X.value,size:"small",text:q.title,disabled:q.props.disabled},ln),null):U??N("span",{class:"v-combobox__selection-text"},[q.title,n.multiple&&Ei(e.tag,{class:c(["v-container",{"v-container--fluid":e.fluid},n.value,e.class]),style:m([o.value,e.style])},a)),{}}});export{g as V}; +import{g as t,b7 as l,b as r,c as i,n as m,d as c,e as u,p as d,m as C,f,h as p}from"./index-BXl8SUNP.js";const y=d({fluid:{type:Boolean,default:!1},...p(),...f(),...C()},"VContainer"),g=t()({name:"VContainer",props:y(),setup(e,s){let{slots:a}=s;const{rtlClasses:n}=l(),{dimensionStyles:o}=u(e);return r(()=>i(e.tag,{class:c(["v-container",{"v-container--fluid":e.fluid},n.value,e.class]),style:m([o.value,e.style])},a)),{}}});export{g as V}; diff --git a/assets/VExpansionPanels-DzF6AfvT.js b/assets/VExpansionPanels-LOsDx07C.js similarity index 98% rename from assets/VExpansionPanels-DzF6AfvT.js rename to assets/VExpansionPanels-LOsDx07C.js index 326eda1..aac01d8 100644 --- a/assets/VExpansionPanels-DzF6AfvT.js +++ b/assets/VExpansionPanels-LOsDx07C.js @@ -1 +1 @@ -import{g as m,bO as B,bP as N,b as y,c,I as _,J as O,i as v,n as V,d as p,bd as q,p as g,bQ as F,h as k,S as C,aC as A,t as J,aW as R,a3 as P,av as l,e as Q,a_ as T,f as U,bR as W,be as H,bp as K,m as D,bk as M,bS as X,bq as Y,bT as Z,bU as ee,bo as ae,aI as ne,bj as le,aL as te,bV as se}from"./index-BUM0TY0E.js";const f=Symbol.for("vuetify:v-expansion-panel"),L=g({...k(),...F()},"VExpansionPanelText"),h=m()({name:"VExpansionPanelText",props:L(),setup(e,d){let{slots:n}=d;const a=B(f);if(!a)throw new Error("[Vuetify] v-expansion-panel-text needs to be placed inside v-expansion-panel");const{hasContent:s,onAfterLeave:u}=N(e,a.isSelected);return y(()=>c(q,{onAfterLeave:u},{default:()=>{var o;return[_(v("div",{class:p(["v-expansion-panel-text",e.class]),style:V(e.style)},[n.default&&s.value&&v("div",{class:"v-expansion-panel-text__wrapper"},[(o=n.default)==null?void 0:o.call(n)])]),[[O,a.isSelected.value]])]}})),{}}}),z=g({color:String,expandIcon:{type:T,default:"$expand"},collapseIcon:{type:T,default:"$collapse"},hideActions:Boolean,focusable:Boolean,static:Boolean,ripple:{type:[Boolean,Object],default:!1},readonly:Boolean,...k(),...U()},"VExpansionPanelTitle"),w=m()({name:"VExpansionPanelTitle",directives:{vRipple:C},props:z(),setup(e,d){let{slots:n}=d;const a=B(f);if(!a)throw new Error("[Vuetify] v-expansion-panel-title needs to be placed inside v-expansion-panel");const{backgroundColorClasses:s,backgroundColorStyles:u}=A(()=>e.color),{dimensionStyles:o}=Q(e),r=P(()=>({collapseIcon:e.collapseIcon,disabled:a.disabled.value,expanded:a.isSelected.value,expandIcon:e.expandIcon,readonly:e.readonly})),E=l(()=>a.isSelected.value?e.collapseIcon:e.expandIcon);return y(()=>{var x;return _(v("button",{class:p(["v-expansion-panel-title",{"v-expansion-panel-title--active":a.isSelected.value,"v-expansion-panel-title--focusable":e.focusable,"v-expansion-panel-title--static":e.static},s.value,e.class]),style:V([u.value,o.value,e.style]),type:"button",tabindex:a.disabled.value?-1:void 0,disabled:a.disabled.value,"aria-expanded":a.isSelected.value,onClick:e.readonly?void 0:a.toggle},[v("span",{class:"v-expansion-panel-title__overlay"},null),(x=n.default)==null?void 0:x.call(n,r.value),!e.hideActions&&c(R,{defaults:{VIcon:{icon:E.value}}},{default:()=>{var b;return[v("span",{class:"v-expansion-panel-title__icon"},[((b=n.actions)==null?void 0:b.call(n,r.value))??c(J,null,null)])]}})]),[[C,e.ripple]])}),{}}}),G=g({title:String,text:String,bgColor:String,...Y(),...X(),...M(),...D(),...z(),...L()},"VExpansionPanel"),de=m()({name:"VExpansionPanel",props:G(),emits:{"group:selected":e=>!0},setup(e,d){let{slots:n}=d;const a=W(e,f),{backgroundColorClasses:s,backgroundColorStyles:u}=A(()=>e.bgColor),{elevationClasses:o}=K(e),{roundedClasses:r}=H(e),E=l(()=>(a==null?void 0:a.disabled.value)||e.disabled),x=P(()=>a.group.items.value.reduce((i,t,S)=>(a.group.selected.value.includes(t.id)&&i.push(S),i),[])),b=P(()=>{const i=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&x.value.some(t=>t-i===1)}),j=P(()=>{const i=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&x.value.some(t=>t-i===-1)});return Z(f,a),y(()=>{const i=!!(n.text||e.text),t=!!(n.title||e.title),S=w.filterProps(e),$=h.filterProps(e);return c(e.tag,{class:p(["v-expansion-panel",{"v-expansion-panel--active":a.isSelected.value,"v-expansion-panel--before-active":b.value,"v-expansion-panel--after-active":j.value,"v-expansion-panel--disabled":E.value},r.value,s.value,e.class]),style:V([u.value,e.style])},{default:()=>[v("div",{class:p(["v-expansion-panel__shadow",...o.value])},null),c(R,{defaults:{VExpansionPanelTitle:{...S},VExpansionPanelText:{...$}}},{default:()=>{var I;return[t&&c(w,{key:"title"},{default:()=>[n.title?n.title():e.title]}),i&&c(h,{key:"text"},{default:()=>[n.text?n.text():e.text]}),(I=n.default)==null?void 0:I.call(n)]}})]})}),{groupItem:a}}}),oe=["default","accordion","inset","popout"],ie=g({flat:Boolean,...se(),...te(G(),["bgColor","collapseIcon","color","eager","elevation","expandIcon","focusable","hideActions","readonly","ripple","rounded","tile","static"]),...le(),...k(),...D(),variant:{type:String,default:"default",validator:e=>oe.includes(e)}},"VExpansionPanels"),ue=m()({name:"VExpansionPanels",props:ie(),emits:{"update:modelValue":e=>!0},setup(e,d){let{slots:n}=d;const{next:a,prev:s}=ee(e,f),{themeClasses:u}=ae(e),o=l(()=>e.variant&&`v-expansion-panels--variant-${e.variant}`);return ne({VExpansionPanel:{bgColor:l(()=>e.bgColor),collapseIcon:l(()=>e.collapseIcon),color:l(()=>e.color),eager:l(()=>e.eager),elevation:l(()=>e.elevation),expandIcon:l(()=>e.expandIcon),focusable:l(()=>e.focusable),hideActions:l(()=>e.hideActions),readonly:l(()=>e.readonly),ripple:l(()=>e.ripple),rounded:l(()=>e.rounded),static:l(()=>e.static)}}),y(()=>c(e.tag,{class:p(["v-expansion-panels",{"v-expansion-panels--flat":e.flat,"v-expansion-panels--tile":e.tile},u.value,o.value,e.class]),style:V(e.style)},{default:()=>{var r;return[(r=n.default)==null?void 0:r.call(n,{prev:s,next:a})]}})),{next:a,prev:s}}});export{ue as V,de as a,w as b,h as c}; +import{g as m,bO as B,bP as N,b as y,c,I as _,J as O,i as v,n as V,d as p,bd as q,p as g,bQ as F,h as k,S as C,aC as A,t as J,aW as R,a3 as P,av as l,e as Q,a_ as T,f as U,bR as W,be as H,bp as K,m as D,bk as M,bS as X,bq as Y,bT as Z,bU as ee,bo as ae,aI as ne,bj as le,aL as te,bV as se}from"./index-BXl8SUNP.js";const f=Symbol.for("vuetify:v-expansion-panel"),L=g({...k(),...F()},"VExpansionPanelText"),h=m()({name:"VExpansionPanelText",props:L(),setup(e,d){let{slots:n}=d;const a=B(f);if(!a)throw new Error("[Vuetify] v-expansion-panel-text needs to be placed inside v-expansion-panel");const{hasContent:s,onAfterLeave:u}=N(e,a.isSelected);return y(()=>c(q,{onAfterLeave:u},{default:()=>{var o;return[_(v("div",{class:p(["v-expansion-panel-text",e.class]),style:V(e.style)},[n.default&&s.value&&v("div",{class:"v-expansion-panel-text__wrapper"},[(o=n.default)==null?void 0:o.call(n)])]),[[O,a.isSelected.value]])]}})),{}}}),z=g({color:String,expandIcon:{type:T,default:"$expand"},collapseIcon:{type:T,default:"$collapse"},hideActions:Boolean,focusable:Boolean,static:Boolean,ripple:{type:[Boolean,Object],default:!1},readonly:Boolean,...k(),...U()},"VExpansionPanelTitle"),w=m()({name:"VExpansionPanelTitle",directives:{vRipple:C},props:z(),setup(e,d){let{slots:n}=d;const a=B(f);if(!a)throw new Error("[Vuetify] v-expansion-panel-title needs to be placed inside v-expansion-panel");const{backgroundColorClasses:s,backgroundColorStyles:u}=A(()=>e.color),{dimensionStyles:o}=Q(e),r=P(()=>({collapseIcon:e.collapseIcon,disabled:a.disabled.value,expanded:a.isSelected.value,expandIcon:e.expandIcon,readonly:e.readonly})),E=l(()=>a.isSelected.value?e.collapseIcon:e.expandIcon);return y(()=>{var x;return _(v("button",{class:p(["v-expansion-panel-title",{"v-expansion-panel-title--active":a.isSelected.value,"v-expansion-panel-title--focusable":e.focusable,"v-expansion-panel-title--static":e.static},s.value,e.class]),style:V([u.value,o.value,e.style]),type:"button",tabindex:a.disabled.value?-1:void 0,disabled:a.disabled.value,"aria-expanded":a.isSelected.value,onClick:e.readonly?void 0:a.toggle},[v("span",{class:"v-expansion-panel-title__overlay"},null),(x=n.default)==null?void 0:x.call(n,r.value),!e.hideActions&&c(R,{defaults:{VIcon:{icon:E.value}}},{default:()=>{var b;return[v("span",{class:"v-expansion-panel-title__icon"},[((b=n.actions)==null?void 0:b.call(n,r.value))??c(J,null,null)])]}})]),[[C,e.ripple]])}),{}}}),G=g({title:String,text:String,bgColor:String,...Y(),...X(),...M(),...D(),...z(),...L()},"VExpansionPanel"),de=m()({name:"VExpansionPanel",props:G(),emits:{"group:selected":e=>!0},setup(e,d){let{slots:n}=d;const a=W(e,f),{backgroundColorClasses:s,backgroundColorStyles:u}=A(()=>e.bgColor),{elevationClasses:o}=K(e),{roundedClasses:r}=H(e),E=l(()=>(a==null?void 0:a.disabled.value)||e.disabled),x=P(()=>a.group.items.value.reduce((i,t,S)=>(a.group.selected.value.includes(t.id)&&i.push(S),i),[])),b=P(()=>{const i=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&x.value.some(t=>t-i===1)}),j=P(()=>{const i=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&x.value.some(t=>t-i===-1)});return Z(f,a),y(()=>{const i=!!(n.text||e.text),t=!!(n.title||e.title),S=w.filterProps(e),$=h.filterProps(e);return c(e.tag,{class:p(["v-expansion-panel",{"v-expansion-panel--active":a.isSelected.value,"v-expansion-panel--before-active":b.value,"v-expansion-panel--after-active":j.value,"v-expansion-panel--disabled":E.value},r.value,s.value,e.class]),style:V([u.value,e.style])},{default:()=>[v("div",{class:p(["v-expansion-panel__shadow",...o.value])},null),c(R,{defaults:{VExpansionPanelTitle:{...S},VExpansionPanelText:{...$}}},{default:()=>{var I;return[t&&c(w,{key:"title"},{default:()=>[n.title?n.title():e.title]}),i&&c(h,{key:"text"},{default:()=>[n.text?n.text():e.text]}),(I=n.default)==null?void 0:I.call(n)]}})]})}),{groupItem:a}}}),oe=["default","accordion","inset","popout"],ie=g({flat:Boolean,...se(),...te(G(),["bgColor","collapseIcon","color","eager","elevation","expandIcon","focusable","hideActions","readonly","ripple","rounded","tile","static"]),...le(),...k(),...D(),variant:{type:String,default:"default",validator:e=>oe.includes(e)}},"VExpansionPanels"),ue=m()({name:"VExpansionPanels",props:ie(),emits:{"update:modelValue":e=>!0},setup(e,d){let{slots:n}=d;const{next:a,prev:s}=ee(e,f),{themeClasses:u}=ae(e),o=l(()=>e.variant&&`v-expansion-panels--variant-${e.variant}`);return ne({VExpansionPanel:{bgColor:l(()=>e.bgColor),collapseIcon:l(()=>e.collapseIcon),color:l(()=>e.color),eager:l(()=>e.eager),elevation:l(()=>e.elevation),expandIcon:l(()=>e.expandIcon),focusable:l(()=>e.focusable),hideActions:l(()=>e.hideActions),readonly:l(()=>e.readonly),ripple:l(()=>e.ripple),rounded:l(()=>e.rounded),static:l(()=>e.static)}}),y(()=>c(e.tag,{class:p(["v-expansion-panels",{"v-expansion-panels--flat":e.flat,"v-expansion-panels--tile":e.tile},u.value,o.value,e.class]),style:V(e.style)},{default:()=>{var r;return[(r=n.default)==null?void 0:r.call(n,{prev:s,next:a})]}})),{next:a,prev:s}}});export{ue as V,de as a,w as b,h as c}; diff --git a/assets/VForm-Bz_LQtPX.js b/assets/VForm-C1v7pkqf.js similarity index 83% rename from assets/VForm-Bz_LQtPX.js rename to assets/VForm-C1v7pkqf.js index 017a7a5..08a041f 100644 --- a/assets/VForm-Bz_LQtPX.js +++ b/assets/VForm-C1v7pkqf.js @@ -1 +1 @@ -import{g as p,b,i as v,n as h,d as y,au as F,a2 as V,p as R,h as P}from"./index-BUM0TY0E.js";import{h as k,i as C}from"./VTextField-C579e7l1.js";const S=R({...P(),...C()},"VForm"),D=p()({name:"VForm",props:S(),emits:{"update:modelValue":o=>!0,submit:o=>!0},setup(o,i){let{slots:s,emit:l}=i;const r=k(o),n=V();function f(t){t.preventDefault(),r.reset()}function u(t){const a=t,e=r.validate();a.then=e.then.bind(e),a.catch=e.catch.bind(e),a.finally=e.finally.bind(e),l("submit",a),a.defaultPrevented||e.then(c=>{var m;let{valid:d}=c;d&&((m=n.value)==null||m.submit())}),a.preventDefault()}return b(()=>{var t;return v("form",{ref:n,class:y(["v-form",o.class]),style:h(o.style),novalidate:!0,onReset:f,onSubmit:u},[(t=s.default)==null?void 0:t.call(s,r)])}),F(r,n)}});export{D as V}; +import{g as p,b,i as v,n as h,d as y,au as F,a2 as V,p as R,h as P}from"./index-BXl8SUNP.js";import{h as k,i as C}from"./VTextField-DxxbesnN.js";const S=R({...P(),...C()},"VForm"),D=p()({name:"VForm",props:S(),emits:{"update:modelValue":o=>!0,submit:o=>!0},setup(o,i){let{slots:s,emit:l}=i;const r=k(o),n=V();function f(t){t.preventDefault(),r.reset()}function u(t){const a=t,e=r.validate();a.then=e.then.bind(e),a.catch=e.catch.bind(e),a.finally=e.finally.bind(e),l("submit",a),a.defaultPrevented||e.then(c=>{var m;let{valid:d}=c;d&&((m=n.value)==null||m.submit())}),a.preventDefault()}return b(()=>{var t;return v("form",{ref:n,class:y(["v-form",o.class]),style:h(o.style),novalidate:!0,onReset:f,onSubmit:u},[(t=s.default)==null?void 0:t.call(s,r)])}),F(r,n)}});export{D as V}; diff --git a/assets/VPagination-CbPhc6Cb.js b/assets/VPagination-BUmJ8K2V.js similarity index 96% rename from assets/VPagination-CbPhc6Cb.js rename to assets/VPagination-BUmJ8K2V.js index a23108f..8cbe06c 100644 --- a/assets/VPagination-CbPhc6Cb.js +++ b/assets/VPagination-BUmJ8K2V.js @@ -1 +1 @@ -import{V as z,m as J}from"./VCheckboxBtn-CylQNaxd.js";import{u as Q,a as D,d as Y}from"./VTextField-C579e7l1.js";import{g as W,ar as X,bm as Z,b as j,at as ee,c as f,E as m,au as ae,a2 as G,p as O,aA as E,cc as te,aq as le,b7 as ie,bo as ne,X as se,aI as T,cd as ue,i as V,y as p,d as q,n as re,az as oe,a3 as k,ce as K,aw as U,a_ as A,cf as ve,bj as ce,m as de,cg as fe,bk as ge,bq as be,aK as me,h as ye,bI as he,b4 as S,av as b}from"./index-BUM0TY0E.js";const Ve=O({...E(Y(),["direction"]),...E(J(),["inline"])},"VCheckbox"),Ie=W()({name:"VCheckbox",inheritAttrs:!1,props:Ve(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,x){let{attrs:n,slots:y}=x;const t=X(e,"modelValue"),{isFocused:c,focus:C,blur:h}=Q(e),I=G(),R=Z();return j(()=>{const[P,B]=ee(n),s=D.filterProps(e),u=z.filterProps(e);return f(D,m({ref:I,class:["v-checkbox",e.class]},P,s,{modelValue:t.value,"onUpdate:modelValue":r=>t.value=r,id:e.id||`checkbox-${R}`,focused:c.value,style:e.style}),{...y,default:r=>{let{id:_,messagesId:F,isDisabled:g,isReadonly:$,isValid:w}=r;return f(z,m(u,{id:_.value,"aria-describedby":F.value,disabled:g.value,readonly:$.value},B,{error:w.value===!1,modelValue:t.value,"onUpdate:modelValue":N=>t.value=N,onFocus:C,onBlur:h}),y)}})}),ae({},I)}});function ke(){const e=G([]);te(()=>e.value=[]);function x(n,y){e.value[y]=n}return{refs:e,updateRef:x}}const xe=O({activeColor:String,start:{type:[Number,String],default:1},modelValue:{type:Number,default:e=>e.start},disabled:Boolean,length:{type:[Number,String],default:1,validator:e=>e%1===0},totalVisible:[Number,String],firstIcon:{type:A,default:"$first"},prevIcon:{type:A,default:"$prev"},nextIcon:{type:A,default:"$next"},lastIcon:{type:A,default:"$last"},ariaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.root"},pageAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.page"},currentPageAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.currentPage"},firstAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.first"},previousAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.previous"},nextAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.next"},lastAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.last"},ellipsis:{type:String,default:"..."},showFirstLastPage:Boolean,...he(),...ye(),...me(),...be(),...ge(),...fe(),...de({tag:"nav"}),...ce(),...ve({variant:"text"})},"VPagination"),_e=W()({name:"VPagination",props:xe(),emits:{"update:modelValue":e=>!0,first:e=>!0,prev:e=>!0,next:e=>!0,last:e=>!0},setup(e,x){let{slots:n,emit:y}=x;const t=X(e,"modelValue"),{t:c,n:C}=le(),{isRtl:h}=ie(),{themeClasses:I}=ne(e),{width:R}=se(),P=oe(-1);T(void 0,{scoped:!0});const{resizeRef:B}=ue(a=>{if(!a.length)return;const{target:l,contentRect:i}=a[0],o=l.querySelector(".v-pagination__list > *");if(!o)return;const v=i.width,L=o.offsetWidth+parseFloat(getComputedStyle(o).marginRight)*2;P.value=_(v,L)}),s=k(()=>parseInt(e.length,10)),u=k(()=>parseInt(e.start,10)),r=k(()=>e.totalVisible!=null?parseInt(e.totalVisible,10):P.value>=0?P.value:_(R.value,58));function _(a,l){const i=e.showFirstLastPage?5:3;return Math.max(0,Math.floor(Number(((a-l*i)/l).toFixed(2))))}const F=k(()=>{if(s.value<=0||isNaN(s.value)||s.value>Number.MAX_SAFE_INTEGER)return[];if(r.value<=0)return[];if(r.value===1)return[t.value];if(s.value<=r.value)return S(s.value,u.value);const a=r.value%2===0,l=a?r.value/2:Math.floor(r.value/2),i=a?l:l+1,o=s.value-l;if(i-t.value>=0)return[...S(Math.max(1,r.value-1),u.value),e.ellipsis,s.value];if(t.value-o>=(a?1:0)){const v=r.value-1,L=s.value-v+u.value;return[u.value,e.ellipsis,...S(v,L)]}else{const v=Math.max(1,r.value-2),L=v===1?t.value:t.value-Math.ceil(v/2)+u.value;return[u.value,e.ellipsis,...S(v,L),e.ellipsis,s.value]}});function g(a,l,i){a.preventDefault(),t.value=l,i&&y(i,l)}const{refs:$,updateRef:w}=ke();T({VPaginationBtn:{color:b(()=>e.color),border:b(()=>e.border),density:b(()=>e.density),size:b(()=>e.size),variant:b(()=>e.variant),rounded:b(()=>e.rounded),elevation:b(()=>e.elevation)}});const N=k(()=>F.value.map((a,l)=>{const i=o=>w(o,l);if(typeof a=="string")return{isActive:!1,key:`ellipsis-${l}`,page:a,props:{ref:i,ellipsis:!0,icon:!0,disabled:!0}};{const o=a===t.value;return{isActive:o,key:a,page:C(a),props:{ref:i,ellipsis:!1,icon:!0,disabled:!!e.disabled||Number(e.length)<2,color:o?e.activeColor:e.color,"aria-current":o,"aria-label":c(o?e.currentPageAriaLabel:e.pageAriaLabel,a),onClick:v=>g(v,a)}}}})),d=k(()=>{const a=!!e.disabled||t.value<=u.value,l=!!e.disabled||t.value>=u.value+s.value-1;return{first:e.showFirstLastPage?{icon:h.value?e.lastIcon:e.firstIcon,onClick:i=>g(i,u.value,"first"),disabled:a,"aria-label":c(e.firstAriaLabel),"aria-disabled":a}:void 0,prev:{icon:h.value?e.nextIcon:e.prevIcon,onClick:i=>g(i,t.value-1,"prev"),disabled:a,"aria-label":c(e.previousAriaLabel),"aria-disabled":a},next:{icon:h.value?e.prevIcon:e.nextIcon,onClick:i=>g(i,t.value+1,"next"),disabled:l,"aria-label":c(e.nextAriaLabel),"aria-disabled":l},last:e.showFirstLastPage?{icon:h.value?e.firstIcon:e.lastIcon,onClick:i=>g(i,u.value+s.value-1,"last"),disabled:l,"aria-label":c(e.lastAriaLabel),"aria-disabled":l}:void 0}});function M(){var l;const a=t.value-u.value;(l=$.value[a])==null||l.$el.focus()}function H(a){a.key===K.left&&!e.disabled&&t.value>Number(e.start)?(t.value=t.value-1,U(M)):a.key===K.right&&!e.disabled&&t.valuef(e.tag,{ref:B,class:q(["v-pagination",I.value,e.class]),style:re(e.style),role:"navigation","aria-label":c(e.ariaLabel),onKeydown:H,"data-test":"v-pagination-root"},{default:()=>[V("ul",{class:"v-pagination__list"},[e.showFirstLastPage&&V("li",{key:"first",class:"v-pagination__first","data-test":"v-pagination-first"},[n.first?n.first(d.value.first):f(p,m({_as:"VPaginationBtn"},d.value.first),null)]),V("li",{key:"prev",class:"v-pagination__prev","data-test":"v-pagination-prev"},[n.prev?n.prev(d.value.prev):f(p,m({_as:"VPaginationBtn"},d.value.prev),null)]),N.value.map((a,l)=>V("li",{key:a.key,class:q(["v-pagination__item",{"v-pagination__item--is-active":a.isActive}]),"data-test":"v-pagination-item"},[n.item?n.item(a):f(p,m({_as:"VPaginationBtn"},a.props),{default:()=>[a.page]})])),V("li",{key:"next",class:"v-pagination__next","data-test":"v-pagination-next"},[n.next?n.next(d.value.next):f(p,m({_as:"VPaginationBtn"},d.value.next),null)]),e.showFirstLastPage&&V("li",{key:"last",class:"v-pagination__last","data-test":"v-pagination-last"},[n.last?n.last(d.value.last):f(p,m({_as:"VPaginationBtn"},d.value.last),null)])])]})),{}}});export{_e as V,Ie as a}; +import{V as z,m as J}from"./VCheckboxBtn-iC2wkMdx.js";import{u as Q,a as D,d as Y}from"./VTextField-DxxbesnN.js";import{g as W,ar as X,bm as Z,b as j,at as ee,c as f,E as m,au as ae,a2 as G,p as O,aA as E,cc as te,aq as le,b7 as ie,bo as ne,X as se,aI as T,cd as ue,i as V,y as p,d as q,n as re,az as oe,a3 as k,ce as K,aw as U,a_ as A,cf as ve,bj as ce,m as de,cg as fe,bk as ge,bq as be,aK as me,h as ye,bI as he,b4 as S,av as b}from"./index-BXl8SUNP.js";const Ve=O({...E(Y(),["direction"]),...E(J(),["inline"])},"VCheckbox"),Ie=W()({name:"VCheckbox",inheritAttrs:!1,props:Ve(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,x){let{attrs:n,slots:y}=x;const t=X(e,"modelValue"),{isFocused:c,focus:C,blur:h}=Q(e),I=G(),R=Z();return j(()=>{const[P,B]=ee(n),s=D.filterProps(e),u=z.filterProps(e);return f(D,m({ref:I,class:["v-checkbox",e.class]},P,s,{modelValue:t.value,"onUpdate:modelValue":r=>t.value=r,id:e.id||`checkbox-${R}`,focused:c.value,style:e.style}),{...y,default:r=>{let{id:_,messagesId:F,isDisabled:g,isReadonly:$,isValid:w}=r;return f(z,m(u,{id:_.value,"aria-describedby":F.value,disabled:g.value,readonly:$.value},B,{error:w.value===!1,modelValue:t.value,"onUpdate:modelValue":N=>t.value=N,onFocus:C,onBlur:h}),y)}})}),ae({},I)}});function ke(){const e=G([]);te(()=>e.value=[]);function x(n,y){e.value[y]=n}return{refs:e,updateRef:x}}const xe=O({activeColor:String,start:{type:[Number,String],default:1},modelValue:{type:Number,default:e=>e.start},disabled:Boolean,length:{type:[Number,String],default:1,validator:e=>e%1===0},totalVisible:[Number,String],firstIcon:{type:A,default:"$first"},prevIcon:{type:A,default:"$prev"},nextIcon:{type:A,default:"$next"},lastIcon:{type:A,default:"$last"},ariaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.root"},pageAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.page"},currentPageAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.currentPage"},firstAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.first"},previousAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.previous"},nextAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.next"},lastAriaLabel:{type:String,default:"$vuetify.pagination.ariaLabel.last"},ellipsis:{type:String,default:"..."},showFirstLastPage:Boolean,...he(),...ye(),...me(),...be(),...ge(),...fe(),...de({tag:"nav"}),...ce(),...ve({variant:"text"})},"VPagination"),_e=W()({name:"VPagination",props:xe(),emits:{"update:modelValue":e=>!0,first:e=>!0,prev:e=>!0,next:e=>!0,last:e=>!0},setup(e,x){let{slots:n,emit:y}=x;const t=X(e,"modelValue"),{t:c,n:C}=le(),{isRtl:h}=ie(),{themeClasses:I}=ne(e),{width:R}=se(),P=oe(-1);T(void 0,{scoped:!0});const{resizeRef:B}=ue(a=>{if(!a.length)return;const{target:l,contentRect:i}=a[0],o=l.querySelector(".v-pagination__list > *");if(!o)return;const v=i.width,L=o.offsetWidth+parseFloat(getComputedStyle(o).marginRight)*2;P.value=_(v,L)}),s=k(()=>parseInt(e.length,10)),u=k(()=>parseInt(e.start,10)),r=k(()=>e.totalVisible!=null?parseInt(e.totalVisible,10):P.value>=0?P.value:_(R.value,58));function _(a,l){const i=e.showFirstLastPage?5:3;return Math.max(0,Math.floor(Number(((a-l*i)/l).toFixed(2))))}const F=k(()=>{if(s.value<=0||isNaN(s.value)||s.value>Number.MAX_SAFE_INTEGER)return[];if(r.value<=0)return[];if(r.value===1)return[t.value];if(s.value<=r.value)return S(s.value,u.value);const a=r.value%2===0,l=a?r.value/2:Math.floor(r.value/2),i=a?l:l+1,o=s.value-l;if(i-t.value>=0)return[...S(Math.max(1,r.value-1),u.value),e.ellipsis,s.value];if(t.value-o>=(a?1:0)){const v=r.value-1,L=s.value-v+u.value;return[u.value,e.ellipsis,...S(v,L)]}else{const v=Math.max(1,r.value-2),L=v===1?t.value:t.value-Math.ceil(v/2)+u.value;return[u.value,e.ellipsis,...S(v,L),e.ellipsis,s.value]}});function g(a,l,i){a.preventDefault(),t.value=l,i&&y(i,l)}const{refs:$,updateRef:w}=ke();T({VPaginationBtn:{color:b(()=>e.color),border:b(()=>e.border),density:b(()=>e.density),size:b(()=>e.size),variant:b(()=>e.variant),rounded:b(()=>e.rounded),elevation:b(()=>e.elevation)}});const N=k(()=>F.value.map((a,l)=>{const i=o=>w(o,l);if(typeof a=="string")return{isActive:!1,key:`ellipsis-${l}`,page:a,props:{ref:i,ellipsis:!0,icon:!0,disabled:!0}};{const o=a===t.value;return{isActive:o,key:a,page:C(a),props:{ref:i,ellipsis:!1,icon:!0,disabled:!!e.disabled||Number(e.length)<2,color:o?e.activeColor:e.color,"aria-current":o,"aria-label":c(o?e.currentPageAriaLabel:e.pageAriaLabel,a),onClick:v=>g(v,a)}}}})),d=k(()=>{const a=!!e.disabled||t.value<=u.value,l=!!e.disabled||t.value>=u.value+s.value-1;return{first:e.showFirstLastPage?{icon:h.value?e.lastIcon:e.firstIcon,onClick:i=>g(i,u.value,"first"),disabled:a,"aria-label":c(e.firstAriaLabel),"aria-disabled":a}:void 0,prev:{icon:h.value?e.nextIcon:e.prevIcon,onClick:i=>g(i,t.value-1,"prev"),disabled:a,"aria-label":c(e.previousAriaLabel),"aria-disabled":a},next:{icon:h.value?e.prevIcon:e.nextIcon,onClick:i=>g(i,t.value+1,"next"),disabled:l,"aria-label":c(e.nextAriaLabel),"aria-disabled":l},last:e.showFirstLastPage?{icon:h.value?e.firstIcon:e.lastIcon,onClick:i=>g(i,u.value+s.value-1,"last"),disabled:l,"aria-label":c(e.lastAriaLabel),"aria-disabled":l}:void 0}});function M(){var l;const a=t.value-u.value;(l=$.value[a])==null||l.$el.focus()}function H(a){a.key===K.left&&!e.disabled&&t.value>Number(e.start)?(t.value=t.value-1,U(M)):a.key===K.right&&!e.disabled&&t.valuef(e.tag,{ref:B,class:q(["v-pagination",I.value,e.class]),style:re(e.style),role:"navigation","aria-label":c(e.ariaLabel),onKeydown:H,"data-test":"v-pagination-root"},{default:()=>[V("ul",{class:"v-pagination__list"},[e.showFirstLastPage&&V("li",{key:"first",class:"v-pagination__first","data-test":"v-pagination-first"},[n.first?n.first(d.value.first):f(p,m({_as:"VPaginationBtn"},d.value.first),null)]),V("li",{key:"prev",class:"v-pagination__prev","data-test":"v-pagination-prev"},[n.prev?n.prev(d.value.prev):f(p,m({_as:"VPaginationBtn"},d.value.prev),null)]),N.value.map((a,l)=>V("li",{key:a.key,class:q(["v-pagination__item",{"v-pagination__item--is-active":a.isActive}]),"data-test":"v-pagination-item"},[n.item?n.item(a):f(p,m({_as:"VPaginationBtn"},a.props),{default:()=>[a.page]})])),V("li",{key:"next",class:"v-pagination__next","data-test":"v-pagination-next"},[n.next?n.next(d.value.next):f(p,m({_as:"VPaginationBtn"},d.value.next),null)]),e.showFirstLastPage&&V("li",{key:"last",class:"v-pagination__last","data-test":"v-pagination-last"},[n.last?n.last(d.value.last):f(p,m({_as:"VPaginationBtn"},d.value.last),null)])])]})),{}}});export{_e as V,Ie as a}; diff --git a/assets/VRow-CPw1R1BU.js b/assets/VRow-DFPdcq_b.js similarity index 97% rename from assets/VRow-CPw1R1BU.js rename to assets/VRow-DFPdcq_b.js index 8e1761b..31ddaa6 100644 --- a/assets/VRow-CPw1R1BU.js +++ b/assets/VRow-DFPdcq_b.js @@ -1 +1 @@ -import{g as C,cw as S,a3 as b,p as k,m as N,h as j,cx as i,b_ as u}from"./index-BUM0TY0E.js";const V=i.reduce((e,a)=>(e[a]={type:[Boolean,String,Number],default:!1},e),{}),v=i.reduce((e,a)=>{const t="offset"+u(a);return e[t]={type:[String,Number],default:null},e},{}),L=i.reduce((e,a)=>{const t="order"+u(a);return e[t]={type:[String,Number],default:null},e},{}),y={col:Object.keys(V),offset:Object.keys(v),order:Object.keys(L)};function _(e,a,t){let s=e;if(!(t==null||t===!1)){if(a){const n=a.replace(e,"");s+=`-${n}`}return e==="col"&&(s="v-"+s),e==="col"&&(t===""||t===!0)||(s+=`-${t}`),s.toLowerCase()}}const G=["auto","start","end","center","baseline","stretch"],I=k({cols:{type:[Boolean,String,Number],default:!1},...V,offset:{type:[String,Number],default:null},...v,order:{type:[String,Number],default:null},...L,alignSelf:{type:String,default:null,validator:e=>G.includes(e)},...j(),...N()},"VCol"),K=C()({name:"VCol",props:I(),setup(e,a){let{slots:t}=a;const s=b(()=>{const n=[];let l;for(l in y)y[l].forEach(o=>{const c=e[o],g=_(l,o,c);g&&n.push(g)});const r=n.some(o=>o.startsWith("v-col-"));return n.push({"v-col":!r||!e.cols,[`v-col-${e.cols}`]:e.cols,[`offset-${e.offset}`]:e.offset,[`order-${e.order}`]:e.order,[`align-self-${e.alignSelf}`]:e.alignSelf}),n});return()=>{var n;return S(e.tag,{class:[s.value,e.class],style:e.style},(n=t.default)==null?void 0:n.call(t))}}}),f=["start","end","center"],h=["space-between","space-around","space-evenly"];function d(e,a){return i.reduce((t,s)=>{const n=e+u(s);return t[n]=a(),t},{})}const R=[...f,"baseline","stretch"],w=e=>R.includes(e),$=d("align",()=>({type:String,default:null,validator:w})),T=[...f,...h],P=e=>T.includes(e),E=d("justify",()=>({type:String,default:null,validator:P})),U=[...f,...h,"stretch"],A=e=>U.includes(e),O=d("alignContent",()=>({type:String,default:null,validator:A})),m={align:Object.keys($),justify:Object.keys(E),alignContent:Object.keys(O)},B={align:"align",justify:"justify",alignContent:"align-content"};function M(e,a,t){let s=B[e];if(t!=null){if(a){const n=a.replace(e,"");s+=`-${n}`}return s+=`-${t}`,s.toLowerCase()}}const x=k({dense:Boolean,noGutters:Boolean,align:{type:String,default:null,validator:w},...$,justify:{type:String,default:null,validator:P},...E,alignContent:{type:String,default:null,validator:A},...O,...j(),...N()},"VRow"),z=C()({name:"VRow",props:x(),setup(e,a){let{slots:t}=a;const s=b(()=>{const n=[];let l;for(l in m)m[l].forEach(r=>{const o=e[r],c=M(l,r,o);c&&n.push(c)});return n.push({"v-row--no-gutters":e.noGutters,"v-row--dense":e.dense,[`align-${e.align}`]:e.align,[`justify-${e.justify}`]:e.justify,[`align-content-${e.alignContent}`]:e.alignContent}),n});return()=>{var n;return S(e.tag,{class:["v-row",s.value,e.class],style:e.style},(n=t.default)==null?void 0:n.call(t))}}});export{z as V,K as a}; +import{g as C,cw as S,a3 as b,p as k,m as N,h as j,cx as i,b_ as u}from"./index-BXl8SUNP.js";const V=i.reduce((e,a)=>(e[a]={type:[Boolean,String,Number],default:!1},e),{}),v=i.reduce((e,a)=>{const t="offset"+u(a);return e[t]={type:[String,Number],default:null},e},{}),L=i.reduce((e,a)=>{const t="order"+u(a);return e[t]={type:[String,Number],default:null},e},{}),y={col:Object.keys(V),offset:Object.keys(v),order:Object.keys(L)};function _(e,a,t){let s=e;if(!(t==null||t===!1)){if(a){const n=a.replace(e,"");s+=`-${n}`}return e==="col"&&(s="v-"+s),e==="col"&&(t===""||t===!0)||(s+=`-${t}`),s.toLowerCase()}}const G=["auto","start","end","center","baseline","stretch"],I=k({cols:{type:[Boolean,String,Number],default:!1},...V,offset:{type:[String,Number],default:null},...v,order:{type:[String,Number],default:null},...L,alignSelf:{type:String,default:null,validator:e=>G.includes(e)},...j(),...N()},"VCol"),K=C()({name:"VCol",props:I(),setup(e,a){let{slots:t}=a;const s=b(()=>{const n=[];let l;for(l in y)y[l].forEach(o=>{const c=e[o],g=_(l,o,c);g&&n.push(g)});const r=n.some(o=>o.startsWith("v-col-"));return n.push({"v-col":!r||!e.cols,[`v-col-${e.cols}`]:e.cols,[`offset-${e.offset}`]:e.offset,[`order-${e.order}`]:e.order,[`align-self-${e.alignSelf}`]:e.alignSelf}),n});return()=>{var n;return S(e.tag,{class:[s.value,e.class],style:e.style},(n=t.default)==null?void 0:n.call(t))}}}),f=["start","end","center"],h=["space-between","space-around","space-evenly"];function d(e,a){return i.reduce((t,s)=>{const n=e+u(s);return t[n]=a(),t},{})}const R=[...f,"baseline","stretch"],w=e=>R.includes(e),$=d("align",()=>({type:String,default:null,validator:w})),T=[...f,...h],P=e=>T.includes(e),E=d("justify",()=>({type:String,default:null,validator:P})),U=[...f,...h,"stretch"],A=e=>U.includes(e),O=d("alignContent",()=>({type:String,default:null,validator:A})),m={align:Object.keys($),justify:Object.keys(E),alignContent:Object.keys(O)},B={align:"align",justify:"justify",alignContent:"align-content"};function M(e,a,t){let s=B[e];if(t!=null){if(a){const n=a.replace(e,"");s+=`-${n}`}return s+=`-${t}`,s.toLowerCase()}}const x=k({dense:Boolean,noGutters:Boolean,align:{type:String,default:null,validator:w},...$,justify:{type:String,default:null,validator:P},...E,alignContent:{type:String,default:null,validator:A},...O,...j(),...N()},"VRow"),z=C()({name:"VRow",props:x(),setup(e,a){let{slots:t}=a;const s=b(()=>{const n=[];let l;for(l in m)m[l].forEach(r=>{const o=e[r],c=M(l,r,o);c&&n.push(c)});return n.push({"v-row--no-gutters":e.noGutters,"v-row--dense":e.dense,[`align-${e.align}`]:e.align,[`justify-${e.justify}`]:e.justify,[`align-content-${e.alignContent}`]:e.alignContent}),n});return()=>{var n;return S(e.tag,{class:["v-row",s.value,e.class],style:e.style},(n=t.default)==null?void 0:n.call(t))}}});export{z as V,K as a}; diff --git a/assets/VSheet-CuIjBtz7.js b/assets/VSheet-CWiuVQYN.js similarity index 91% rename from assets/VSheet-CuIjBtz7.js rename to assets/VSheet-CWiuVQYN.js index 5b7aa37..c7144f1 100644 --- a/assets/VSheet-CuIjBtz7.js +++ b/assets/VSheet-CWiuVQYN.js @@ -1 +1 @@ -import{g as d,bo as b,aC as k,bz as v,bg as C,ch as P,be as h,b as g,c as S,n as y,d as V,e as p,bp as z,p as B,bj as R,m as T,bk as f,ci as D,bl as E,bq as L,f as j,h as q,bI as x}from"./index-BUM0TY0E.js";const F=B({color:String,...x(),...q(),...j(),...L(),...E(),...D(),...f(),...T(),...R()},"VSheet"),N=d()({name:"VSheet",props:F(),setup(e,s){let{slots:a}=s;const{themeClasses:o}=b(e),{backgroundColorClasses:n,backgroundColorStyles:t}=k(()=>e.color),{borderClasses:l}=v(e),{dimensionStyles:r}=p(e),{elevationClasses:c}=z(e),{locationStyles:i}=C(e),{positionClasses:m}=P(e),{roundedClasses:u}=h(e);return g(()=>S(e.tag,{class:V(["v-sheet",o.value,n.value,l.value,c.value,m.value,u.value,e.class]),style:y([t.value,r.value,i.value,e.style])},a)),{}}});export{N as V,F as m}; +import{g as d,bo as b,aC as k,bz as v,bg as C,ch as P,be as h,b as g,c as S,n as y,d as V,e as p,bp as z,p as B,bj as R,m as T,bk as f,ci as D,bl as E,bq as L,f as j,h as q,bI as x}from"./index-BXl8SUNP.js";const F=B({color:String,...x(),...q(),...j(),...L(),...E(),...D(),...f(),...T(),...R()},"VSheet"),N=d()({name:"VSheet",props:F(),setup(e,s){let{slots:a}=s;const{themeClasses:o}=b(e),{backgroundColorClasses:n,backgroundColorStyles:t}=k(()=>e.color),{borderClasses:l}=v(e),{dimensionStyles:r}=p(e),{elevationClasses:c}=z(e),{locationStyles:i}=C(e),{positionClasses:m}=P(e),{roundedClasses:u}=h(e);return g(()=>S(e.tag,{class:V(["v-sheet",o.value,n.value,l.value,c.value,m.value,u.value,e.class]),style:y([t.value,r.value,i.value,e.style])},a)),{}}});export{N as V,F as m}; diff --git a/assets/VSkeletonLoader-DX2FpkIS.js b/assets/VSkeletonLoader-DKLQDg5n.js similarity index 97% rename from assets/VSkeletonLoader-DX2FpkIS.js rename to assets/VSkeletonLoader-DKLQDg5n.js index 963b3f2..5a9b649 100644 --- a/assets/VSkeletonLoader-DX2FpkIS.js +++ b/assets/VSkeletonLoader-DKLQDg5n.js @@ -1 +1 @@ -import{g as f,aC as k,bo as x,aq as y,b as S,i as r,E as C,F as L,a3 as w,as as B,e as P,bp as V,p as T,bj as A,bq as _,f as E,d as F}from"./index-BUM0TY0E.js";const j={actions:"button@2",article:"heading, paragraph",avatar:"avatar",button:"button",card:"image, heading","card-avatar":"image, list-item-avatar",chip:"chip","date-picker":"list-item, heading, divider, date-picker-options, date-picker-days, actions","date-picker-options":"text, avatar@2","date-picker-days":"avatar@28",divider:"divider",heading:"heading",image:"image","list-item":"text","list-item-avatar":"avatar, text","list-item-two-line":"sentences","list-item-avatar-two-line":"avatar, sentences","list-item-three-line":"paragraph","list-item-avatar-three-line":"avatar, paragraph",ossein:"ossein",paragraph:"text@3",sentences:"text@2",subtitle:"text",table:"table-heading, table-thead, table-tbody, table-tfoot","table-heading":"chip, text","table-thead":"heading@6","table-tbody":"table-row-divider@6","table-row-divider":"table-row, divider","table-row":"text@6","table-tfoot":"text@2, avatar@2",text:"text"};function q(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return r("div",{class:F(["v-skeleton-loader__bone",`v-skeleton-loader__${e}`])},[a])}function l(e){const[a,t]=e.split("@");return Array.from({length:t}).map(()=>i(a))}function i(e){let a=[];if(!e)return a;const t=j[e];if(e!==t){if(e.includes(","))return d(e);if(e.includes("@"))return l(e);t.includes(",")?a=d(t):t.includes("@")?a=l(t):t&&a.push(i(t))}return[q(e,a)]}function d(e){return e.replace(/\s/g,"").split(",").map(i)}const D=T({boilerplate:Boolean,color:String,loading:Boolean,loadingText:{type:String,default:"$vuetify.loading"},type:{type:[String,Array],default:"ossein"},...E(),..._(),...A()},"VSkeletonLoader"),z=f()({name:"VSkeletonLoader",inheritAttrs:!1,props:D(),setup(e,a){let{attrs:t,slots:n}=a;const{backgroundColorClasses:c,backgroundColorStyles:u}=k(()=>e.color),{dimensionStyles:g}=P(e),{elevationClasses:m}=V(e),{themeClasses:v}=x(e),{t:b}=y(),p=w(()=>i(B(e.type).join(",")));return S(()=>{var s;const o=!n.default||e.loading,h=e.boilerplate||!o?{}:{ariaLive:"polite",ariaLabel:b(e.loadingText),role:"alert"};return o?r("div",C({class:["v-skeleton-loader",{"v-skeleton-loader--boilerplate":e.boilerplate},v.value,c.value,m.value],style:[u.value,g.value]},h,t),[p.value]):r(L,null,[(s=n.default)==null?void 0:s.call(n)])}),{}}});export{z as V}; +import{g as f,aC as k,bo as x,aq as y,b as S,i as r,E as C,F as L,a3 as w,as as B,e as P,bp as V,p as T,bj as A,bq as _,f as E,d as F}from"./index-BXl8SUNP.js";const j={actions:"button@2",article:"heading, paragraph",avatar:"avatar",button:"button",card:"image, heading","card-avatar":"image, list-item-avatar",chip:"chip","date-picker":"list-item, heading, divider, date-picker-options, date-picker-days, actions","date-picker-options":"text, avatar@2","date-picker-days":"avatar@28",divider:"divider",heading:"heading",image:"image","list-item":"text","list-item-avatar":"avatar, text","list-item-two-line":"sentences","list-item-avatar-two-line":"avatar, sentences","list-item-three-line":"paragraph","list-item-avatar-three-line":"avatar, paragraph",ossein:"ossein",paragraph:"text@3",sentences:"text@2",subtitle:"text",table:"table-heading, table-thead, table-tbody, table-tfoot","table-heading":"chip, text","table-thead":"heading@6","table-tbody":"table-row-divider@6","table-row-divider":"table-row, divider","table-row":"text@6","table-tfoot":"text@2, avatar@2",text:"text"};function q(e){let a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];return r("div",{class:F(["v-skeleton-loader__bone",`v-skeleton-loader__${e}`])},[a])}function l(e){const[a,t]=e.split("@");return Array.from({length:t}).map(()=>i(a))}function i(e){let a=[];if(!e)return a;const t=j[e];if(e!==t){if(e.includes(","))return d(e);if(e.includes("@"))return l(e);t.includes(",")?a=d(t):t.includes("@")?a=l(t):t&&a.push(i(t))}return[q(e,a)]}function d(e){return e.replace(/\s/g,"").split(",").map(i)}const D=T({boilerplate:Boolean,color:String,loading:Boolean,loadingText:{type:String,default:"$vuetify.loading"},type:{type:[String,Array],default:"ossein"},...E(),..._(),...A()},"VSkeletonLoader"),z=f()({name:"VSkeletonLoader",inheritAttrs:!1,props:D(),setup(e,a){let{attrs:t,slots:n}=a;const{backgroundColorClasses:c,backgroundColorStyles:u}=k(()=>e.color),{dimensionStyles:g}=P(e),{elevationClasses:m}=V(e),{themeClasses:v}=x(e),{t:b}=y(),p=w(()=>i(B(e.type).join(",")));return S(()=>{var s;const o=!n.default||e.loading,h=e.boilerplate||!o?{}:{ariaLive:"polite",ariaLabel:b(e.loadingText),role:"alert"};return o?r("div",C({class:["v-skeleton-loader",{"v-skeleton-loader--boilerplate":e.boilerplate},v.value,c.value,m.value],style:[u.value,g.value]},h,t),[p.value]):r(L,null,[(s=n.default)==null?void 0:s.call(n)])}),{}}});export{z as V}; diff --git a/assets/VSwitch-CjVC2rsZ.js b/assets/VSwitch-7fkmr9E6.js similarity index 98% rename from assets/VSwitch-CjVC2rsZ.js rename to assets/VSwitch-7fkmr9E6.js index 9e62d1a..340cbf1 100644 --- a/assets/VSwitch-CjVC2rsZ.js +++ b/assets/VSwitch-7fkmr9E6.js @@ -1 +1 @@ -import{p as U,aY as ie,a_ as W,bj as se,aK as re,h as X,g as H,ar as R,bm as q,aI as ce,av as n,b as K,i as r,n as z,d as T,bT as de,ba as ve,S as Y,at as p,E as G,I as fe,F as ee,c as b,t as le,bO as me,aG as ye,aB as be,aC as Ce,a2 as $,aw as Ve,aZ as ge,az as Z,a3 as x,as as O,c3 as ke,cy as Se,aW as he,cz as we,c4 as Ie,aa as Pe,au as _e}from"./index-BUM0TY0E.js";import{k as Ae,u as Be,a as J,d as Fe}from"./VTextField-C579e7l1.js";const ae=Symbol.for("vuetify:selection-control-group"),te=U({color:String,disabled:{type:Boolean,default:null},defaultsTarget:String,error:Boolean,id:String,inline:Boolean,falseIcon:W,trueIcon:W,ripple:{type:[Boolean,Object],default:!0},multiple:{type:Boolean,default:null},name:String,readonly:{type:Boolean,default:null},modelValue:null,type:String,valueComparator:{type:Function,default:ie},...X(),...re(),...se()},"SelectionControlGroup"),xe=U({...te({defaultsTarget:"VSelectionControl"})},"VSelectionControlGroup");H()({name:"VSelectionControlGroup",props:xe(),emits:{"update:modelValue":e=>!0},setup(e,i){let{slots:f}=i;const l=R(e,"modelValue"),a=q(),u=n(()=>e.id||`v-selection-control-group-${a}`),c=n(()=>e.name||u.value),t=new Set;return de(ae,{modelValue:l,forceUpdate:()=>{t.forEach(o=>o())},onForceUpdate:o=>{t.add(o),ve(()=>{t.delete(o)})}}),ce({[e.defaultsTarget]:{color:n(()=>e.color),disabled:n(()=>e.disabled),density:n(()=>e.density),error:n(()=>e.error),inline:n(()=>e.inline),modelValue:l,multiple:n(()=>!!e.multiple||e.multiple==null&&Array.isArray(l.value)),name:c,falseIcon:n(()=>e.falseIcon),trueIcon:n(()=>e.trueIcon),readonly:n(()=>e.readonly),ripple:n(()=>e.ripple),type:n(()=>e.type),valueComparator:n(()=>e.valueComparator)}}),K(()=>{var o;return r("div",{class:T(["v-selection-control-group",{"v-selection-control-group--inline":e.inline},e.class]),style:z(e.style),role:e.type==="radio"?"radiogroup":void 0},[(o=f.default)==null?void 0:o.call(f)])}),{}}});const ne=U({label:String,baseColor:String,trueValue:null,falseValue:null,value:null,...X(),...te()},"VSelectionControl");function Te(e){const i=me(ae,void 0),{densityClasses:f}=ye(e),l=R(e,"modelValue"),a=x(()=>e.trueValue!==void 0?e.trueValue:e.value!==void 0?e.value:!0),u=x(()=>e.falseValue!==void 0?e.falseValue:!1),c=x(()=>!!e.multiple||e.multiple==null&&Array.isArray(l.value)),t=x({get(){const m=i?i.modelValue.value:l.value;return c.value?O(m).some(s=>e.valueComparator(s,a.value)):e.valueComparator(m,a.value)},set(m){if(e.readonly)return;const s=m?a.value:u.value;let y=s;c.value&&(y=m?[...O(l.value),s]:O(l.value).filter(d=>!e.valueComparator(d,a.value))),i?i.modelValue.value=y:l.value=y}}),{textColorClasses:o,textColorStyles:w}=be(()=>{if(!(e.error||e.disabled))return t.value?e.color:e.baseColor}),{backgroundColorClasses:V,backgroundColorStyles:g}=Ce(()=>t.value&&!e.error&&!e.disabled?e.color:e.baseColor),I=x(()=>t.value?e.trueIcon:e.falseIcon);return{group:i,densityClasses:f,trueValue:a,falseValue:u,model:t,textColorClasses:o,textColorStyles:w,backgroundColorClasses:V,backgroundColorStyles:g,icon:I}}const Q=H()({name:"VSelectionControl",directives:{vRipple:Y},inheritAttrs:!1,props:ne(),emits:{"update:modelValue":e=>!0},setup(e,i){let{attrs:f,slots:l}=i;const{group:a,densityClasses:u,icon:c,model:t,textColorClasses:o,textColorStyles:w,backgroundColorClasses:V,backgroundColorStyles:g,trueValue:I}=Te(e),m=q(),s=Z(!1),y=Z(!1),d=$(),P=n(()=>e.id||`input-${m}`),k=n(()=>!e.disabled&&!e.readonly);a==null||a.onForceUpdate(()=>{d.value&&(d.value.checked=t.value)});function S(v){k.value&&(s.value=!0,ge(v.target,":focus-visible")!==!1&&(y.value=!0))}function h(){s.value=!1,y.value=!1}function M(v){v.stopPropagation()}function A(v){if(!k.value){d.value&&(d.value.checked=t.value);return}e.readonly&&a&&Ve(()=>a.forceUpdate()),t.value=v.target.checked}return K(()=>{var B,_;const v=l.label?l.label({label:e.label,props:{for:P.value}}):e.label,[E,L]=p(f),D=r("input",G({ref:d,checked:t.value,disabled:!!e.disabled,id:P.value,onBlur:h,onFocus:S,onInput:A,"aria-disabled":!!e.disabled,"aria-label":e.label,type:e.type,value:I.value,name:e.name,"aria-checked":e.type==="checkbox"?t.value:void 0},L),null);return r("div",G({class:["v-selection-control",{"v-selection-control--dirty":t.value,"v-selection-control--disabled":e.disabled,"v-selection-control--error":e.error,"v-selection-control--focused":s.value,"v-selection-control--focus-visible":y.value,"v-selection-control--inline":e.inline},u.value,e.class]},E,{style:e.style}),[r("div",{class:T(["v-selection-control__wrapper",o.value]),style:z(w.value)},[(B=l.default)==null?void 0:B.call(l,{backgroundColorClasses:V,backgroundColorStyles:g}),fe(r("div",{class:T(["v-selection-control__input"])},[((_=l.input)==null?void 0:_.call(l,{model:t,textColorClasses:o,textColorStyles:w,backgroundColorClasses:V,backgroundColorStyles:g,inputNode:D,icon:c.value,props:{onFocus:S,onBlur:h,id:P.value}}))??r(ee,null,[c.value&&b(le,{key:"icon",icon:c.value},null),D])]),[[Y,!e.disabled&&!e.readonly&&e.ripple,null,{center:!0,circle:!0}]])]),v&&b(Ae,{for:P.value,onClick:M},{default:()=>[v]})])}),{isFocused:s,input:d}}}),De=U({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...Fe(),...ne()},"VSwitch"),Ge=H()({name:"VSwitch",inheritAttrs:!1,props:De(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,i){let{attrs:f,slots:l}=i;const a=R(e,"indeterminate"),u=R(e,"modelValue"),{loaderClasses:c}=ke(e),{isFocused:t,focus:o,blur:w}=Be(e),V=$(),g=$(),I=Se&&window.matchMedia("(forced-colors: active)").matches,m=n(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),s=q(),y=n(()=>e.id||`switch-${s}`);function d(){a.value&&(a.value=!1)}function P(k){var S,h;k.stopPropagation(),k.preventDefault(),(h=(S=V.value)==null?void 0:S.input)==null||h.click()}return K(()=>{const[k,S]=p(f),h=J.filterProps(e),M=Q.filterProps(e);return b(J,G({ref:g,class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":a.value},c.value,e.class]},k,h,{modelValue:u.value,"onUpdate:modelValue":A=>u.value=A,id:y.value,focused:t.value,style:e.style}),{...l,default:A=>{let{id:v,messagesId:E,isDisabled:L,isReadonly:D,isValid:B}=A;const _={model:u,isValid:B};return b(Q,G({ref:V},M,{modelValue:u.value,"onUpdate:modelValue":[F=>u.value=F,d],id:v.value,"aria-describedby":E.value,type:"checkbox","aria-checked":a.value?"mixed":void 0,disabled:L.value,readonly:D.value,onFocus:o,onBlur:w},S),{...l,default:F=>{let{backgroundColorClasses:N,backgroundColorStyles:C}=F;return r("div",{class:T(["v-switch__track",I?void 0:N.value]),style:z(C.value),onClick:P},[l["track-true"]&&r("div",{key:"prepend",class:"v-switch__track-true"},[l["track-true"](_)]),l["track-false"]&&r("div",{key:"append",class:"v-switch__track-false"},[l["track-false"](_)])])},input:F=>{let{inputNode:N,icon:C,backgroundColorClasses:oe,backgroundColorStyles:ue}=F;return r(ee,null,[N,r("div",{class:T(["v-switch__thumb",{"v-switch__thumb--filled":C||e.loading},e.inset||I?void 0:oe.value]),style:z(e.inset?void 0:ue.value)},[l.thumb?b(he,{defaults:{VIcon:{icon:C,size:"x-small"}}},{default:()=>[l.thumb({..._,icon:C})]}):b(we,null,{default:()=>[e.loading?b(Ie,{name:"v-switch",active:!0,color:B.value===!1?void 0:m.value},{default:j=>l.loader?l.loader(j):b(Pe,{active:j.isActive,color:j.color,indeterminate:!0,size:"16",width:"2"},null)}):C&&b(le,{key:String(C),icon:C,size:"x-small"},null)]})])])}})}})}),_e({},g)}});export{Ge as V,Q as a,ne as m}; +import{p as U,aY as ie,a_ as W,bj as se,aK as re,h as X,g as H,ar as R,bm as q,aI as ce,av as n,b as K,i as r,n as z,d as T,bT as de,ba as ve,S as Y,at as p,E as G,I as fe,F as ee,c as b,t as le,bO as me,aG as ye,aB as be,aC as Ce,a2 as $,aw as Ve,aZ as ge,az as Z,a3 as x,as as O,c3 as ke,cy as Se,aW as he,cz as we,c4 as Ie,aa as Pe,au as _e}from"./index-BXl8SUNP.js";import{k as Ae,u as Be,a as J,d as Fe}from"./VTextField-DxxbesnN.js";const ae=Symbol.for("vuetify:selection-control-group"),te=U({color:String,disabled:{type:Boolean,default:null},defaultsTarget:String,error:Boolean,id:String,inline:Boolean,falseIcon:W,trueIcon:W,ripple:{type:[Boolean,Object],default:!0},multiple:{type:Boolean,default:null},name:String,readonly:{type:Boolean,default:null},modelValue:null,type:String,valueComparator:{type:Function,default:ie},...X(),...re(),...se()},"SelectionControlGroup"),xe=U({...te({defaultsTarget:"VSelectionControl"})},"VSelectionControlGroup");H()({name:"VSelectionControlGroup",props:xe(),emits:{"update:modelValue":e=>!0},setup(e,i){let{slots:f}=i;const l=R(e,"modelValue"),a=q(),u=n(()=>e.id||`v-selection-control-group-${a}`),c=n(()=>e.name||u.value),t=new Set;return de(ae,{modelValue:l,forceUpdate:()=>{t.forEach(o=>o())},onForceUpdate:o=>{t.add(o),ve(()=>{t.delete(o)})}}),ce({[e.defaultsTarget]:{color:n(()=>e.color),disabled:n(()=>e.disabled),density:n(()=>e.density),error:n(()=>e.error),inline:n(()=>e.inline),modelValue:l,multiple:n(()=>!!e.multiple||e.multiple==null&&Array.isArray(l.value)),name:c,falseIcon:n(()=>e.falseIcon),trueIcon:n(()=>e.trueIcon),readonly:n(()=>e.readonly),ripple:n(()=>e.ripple),type:n(()=>e.type),valueComparator:n(()=>e.valueComparator)}}),K(()=>{var o;return r("div",{class:T(["v-selection-control-group",{"v-selection-control-group--inline":e.inline},e.class]),style:z(e.style),role:e.type==="radio"?"radiogroup":void 0},[(o=f.default)==null?void 0:o.call(f)])}),{}}});const ne=U({label:String,baseColor:String,trueValue:null,falseValue:null,value:null,...X(),...te()},"VSelectionControl");function Te(e){const i=me(ae,void 0),{densityClasses:f}=ye(e),l=R(e,"modelValue"),a=x(()=>e.trueValue!==void 0?e.trueValue:e.value!==void 0?e.value:!0),u=x(()=>e.falseValue!==void 0?e.falseValue:!1),c=x(()=>!!e.multiple||e.multiple==null&&Array.isArray(l.value)),t=x({get(){const m=i?i.modelValue.value:l.value;return c.value?O(m).some(s=>e.valueComparator(s,a.value)):e.valueComparator(m,a.value)},set(m){if(e.readonly)return;const s=m?a.value:u.value;let y=s;c.value&&(y=m?[...O(l.value),s]:O(l.value).filter(d=>!e.valueComparator(d,a.value))),i?i.modelValue.value=y:l.value=y}}),{textColorClasses:o,textColorStyles:w}=be(()=>{if(!(e.error||e.disabled))return t.value?e.color:e.baseColor}),{backgroundColorClasses:V,backgroundColorStyles:g}=Ce(()=>t.value&&!e.error&&!e.disabled?e.color:e.baseColor),I=x(()=>t.value?e.trueIcon:e.falseIcon);return{group:i,densityClasses:f,trueValue:a,falseValue:u,model:t,textColorClasses:o,textColorStyles:w,backgroundColorClasses:V,backgroundColorStyles:g,icon:I}}const Q=H()({name:"VSelectionControl",directives:{vRipple:Y},inheritAttrs:!1,props:ne(),emits:{"update:modelValue":e=>!0},setup(e,i){let{attrs:f,slots:l}=i;const{group:a,densityClasses:u,icon:c,model:t,textColorClasses:o,textColorStyles:w,backgroundColorClasses:V,backgroundColorStyles:g,trueValue:I}=Te(e),m=q(),s=Z(!1),y=Z(!1),d=$(),P=n(()=>e.id||`input-${m}`),k=n(()=>!e.disabled&&!e.readonly);a==null||a.onForceUpdate(()=>{d.value&&(d.value.checked=t.value)});function S(v){k.value&&(s.value=!0,ge(v.target,":focus-visible")!==!1&&(y.value=!0))}function h(){s.value=!1,y.value=!1}function M(v){v.stopPropagation()}function A(v){if(!k.value){d.value&&(d.value.checked=t.value);return}e.readonly&&a&&Ve(()=>a.forceUpdate()),t.value=v.target.checked}return K(()=>{var B,_;const v=l.label?l.label({label:e.label,props:{for:P.value}}):e.label,[E,L]=p(f),D=r("input",G({ref:d,checked:t.value,disabled:!!e.disabled,id:P.value,onBlur:h,onFocus:S,onInput:A,"aria-disabled":!!e.disabled,"aria-label":e.label,type:e.type,value:I.value,name:e.name,"aria-checked":e.type==="checkbox"?t.value:void 0},L),null);return r("div",G({class:["v-selection-control",{"v-selection-control--dirty":t.value,"v-selection-control--disabled":e.disabled,"v-selection-control--error":e.error,"v-selection-control--focused":s.value,"v-selection-control--focus-visible":y.value,"v-selection-control--inline":e.inline},u.value,e.class]},E,{style:e.style}),[r("div",{class:T(["v-selection-control__wrapper",o.value]),style:z(w.value)},[(B=l.default)==null?void 0:B.call(l,{backgroundColorClasses:V,backgroundColorStyles:g}),fe(r("div",{class:T(["v-selection-control__input"])},[((_=l.input)==null?void 0:_.call(l,{model:t,textColorClasses:o,textColorStyles:w,backgroundColorClasses:V,backgroundColorStyles:g,inputNode:D,icon:c.value,props:{onFocus:S,onBlur:h,id:P.value}}))??r(ee,null,[c.value&&b(le,{key:"icon",icon:c.value},null),D])]),[[Y,!e.disabled&&!e.readonly&&e.ripple,null,{center:!0,circle:!0}]])]),v&&b(Ae,{for:P.value,onClick:M},{default:()=>[v]})])}),{isFocused:s,input:d}}}),De=U({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...Fe(),...ne()},"VSwitch"),Ge=H()({name:"VSwitch",inheritAttrs:!1,props:De(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,i){let{attrs:f,slots:l}=i;const a=R(e,"indeterminate"),u=R(e,"modelValue"),{loaderClasses:c}=ke(e),{isFocused:t,focus:o,blur:w}=Be(e),V=$(),g=$(),I=Se&&window.matchMedia("(forced-colors: active)").matches,m=n(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),s=q(),y=n(()=>e.id||`switch-${s}`);function d(){a.value&&(a.value=!1)}function P(k){var S,h;k.stopPropagation(),k.preventDefault(),(h=(S=V.value)==null?void 0:S.input)==null||h.click()}return K(()=>{const[k,S]=p(f),h=J.filterProps(e),M=Q.filterProps(e);return b(J,G({ref:g,class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":a.value},c.value,e.class]},k,h,{modelValue:u.value,"onUpdate:modelValue":A=>u.value=A,id:y.value,focused:t.value,style:e.style}),{...l,default:A=>{let{id:v,messagesId:E,isDisabled:L,isReadonly:D,isValid:B}=A;const _={model:u,isValid:B};return b(Q,G({ref:V},M,{modelValue:u.value,"onUpdate:modelValue":[F=>u.value=F,d],id:v.value,"aria-describedby":E.value,type:"checkbox","aria-checked":a.value?"mixed":void 0,disabled:L.value,readonly:D.value,onFocus:o,onBlur:w},S),{...l,default:F=>{let{backgroundColorClasses:N,backgroundColorStyles:C}=F;return r("div",{class:T(["v-switch__track",I?void 0:N.value]),style:z(C.value),onClick:P},[l["track-true"]&&r("div",{key:"prepend",class:"v-switch__track-true"},[l["track-true"](_)]),l["track-false"]&&r("div",{key:"append",class:"v-switch__track-false"},[l["track-false"](_)])])},input:F=>{let{inputNode:N,icon:C,backgroundColorClasses:oe,backgroundColorStyles:ue}=F;return r(ee,null,[N,r("div",{class:T(["v-switch__thumb",{"v-switch__thumb--filled":C||e.loading},e.inset||I?void 0:oe.value]),style:z(e.inset?void 0:ue.value)},[l.thumb?b(he,{defaults:{VIcon:{icon:C,size:"x-small"}}},{default:()=>[l.thumb({..._,icon:C})]}):b(we,null,{default:()=>[e.loading?b(Ie,{name:"v-switch",active:!0,color:B.value===!1?void 0:m.value},{default:j=>l.loader?l.loader(j):b(Pe,{active:j.isActive,color:j.color,indeterminate:!0,size:"16",width:"2"},null)}):C&&b(le,{key:String(C),icon:C,size:"x-small"},null)]})])])}})}})}),_e({},g)}});export{Ge as V,Q as a,ne as m}; diff --git a/assets/VTabsWindowItem-DtW2SDNN.js b/assets/VTabsWindowItem-CghRaqdq.js similarity index 99% rename from assets/VTabsWindowItem-DtW2SDNN.js rename to assets/VTabsWindowItem-CghRaqdq.js index 62c1ec1..5dc83e4 100644 --- a/assets/VTabsWindowItem-DtW2SDNN.js +++ b/assets/VTabsWindowItem-CghRaqdq.js @@ -1 +1 @@ -import{bW as At,ax as Rt,bX as Me,ar as z,ae as ce,bY as je,a3 as p,bc as ye,bO as Y,p as C,bT as K,g as R,aq as te,b as W,i as w,c as T,E as O,aA as fe,a_ as N,bZ as Ht,aJ as E,d as j,b3 as $t,b_ as Nt,a2 as M,b$ as Wt,as as ae,c0 as Lt,aY as Ye,az as se,av as B,c1 as ue,c2 as ne,aM as Gt,c3 as Mt,aC as jt,X as ke,c4 as Yt,F as Q,t as Ee,n as ve,c5 as Xt,bH as Ie,aK as me,c6 as zt,y as ie,v as Fe,c7 as le,O as oe,A as Kt,b0 as xe,aL as Se,bo as Xe,aG as qt,bj as ze,m as Ke,h as Te,c8 as re,c9 as Ut,aI as Jt,K as Qt,b7 as Zt,bU as ea,aS as Oe,ca as ta,aw as qe,I as Ue,cb as aa,bR as na,a as la,bP as oa,J as ra,a$ as sa,bQ as ua,bS as ia}from"./index-BUM0TY0E.js";import{V as Ae}from"./VPagination-CbPhc6Cb.js";import{e as Je,u as da,d as ca}from"./filter-ByuXXWRY.js";import{V as fa}from"./VChip-vdRDApTi.js";import{V as de}from"./VCheckboxBtn-CylQNaxd.js";function Re(e,n,a){return Object.keys(e).filter(t=>At(t)&&t.endsWith(n)).reduce((t,l)=>(t[l.slice(0,-n.length)]=r=>Rt(e[l],r,a(r)),t),{})}const va=e=>{const{touchstartX:n,touchendX:a,touchstartY:t,touchendY:l}=e,r=.5,o=16;e.offsetX=a-n,e.offsetY=l-t,Math.abs(e.offsetY)n+o&&e.right(e)),Math.abs(e.offsetX)t+o&&e.down(e))};function ma(e,n){var t;const a=e.changedTouches[0];n.touchstartX=a.clientX,n.touchstartY=a.clientY,(t=n.start)==null||t.call(n,{originalEvent:e,...n})}function ga(e,n){var t;const a=e.changedTouches[0];n.touchendX=a.clientX,n.touchendY=a.clientY,(t=n.end)==null||t.call(n,{originalEvent:e,...n}),va(n)}function ha(e,n){var t;const a=e.changedTouches[0];n.touchmoveX=a.clientX,n.touchmoveY=a.clientY,(t=n.move)==null||t.call(n,{originalEvent:e,...n})}function ba(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:a=>ma(a,n),touchend:a=>ga(a,n),touchmove:a=>ha(a,n)}}function ya(e,n){var s;const a=n.value,t=a!=null&&a.parent?e.parentElement:e,l=(a==null?void 0:a.options)??{passive:!0},r=(s=n.instance)==null?void 0:s.$.uid;if(!t||r===void 0)return;const o=ba(n.value);t._touchHandlers=t._touchHandlers??Object.create(null),t._touchHandlers[r]=o,Me(o).forEach(u=>{t.addEventListener(u,o[u],l)})}function xa(e,n){var r,o;const a=(r=n.value)!=null&&r.parent?e.parentElement:e,t=(o=n.instance)==null?void 0:o.$.uid;if(!(a!=null&&a._touchHandlers)||t===void 0)return;const l=a._touchHandlers[t];Me(l).forEach(s=>{a.removeEventListener(s,l[s])}),delete a._touchHandlers[t]}const we={mounted:ya,unmounted:xa},Sa=C({page:{type:[Number,String],default:1},itemsPerPage:{type:[Number,String],default:10}},"DataTable-paginate"),Qe=Symbol.for("vuetify:data-table-pagination");function wa(e){const n=z(e,"page",void 0,t=>Number(t??1)),a=z(e,"itemsPerPage",void 0,t=>Number(t??10));return{page:n,itemsPerPage:a}}function Pa(e){const{page:n,itemsPerPage:a,itemsLength:t}=e,l=p(()=>a.value===-1?0:a.value*(n.value-1)),r=p(()=>a.value===-1?t.value:Math.min(t.value,l.value+a.value)),o=p(()=>a.value===-1||t.value===0?1:Math.ceil(t.value/a.value));ce([n,o],()=>{n.value>o.value&&(n.value=o.value)});function s(v){a.value=v,n.value=1}function u(){n.value=ye(n.value+1,1,o.value)}function d(){n.value=ye(n.value-1,1,o.value)}function c(v){n.value=ye(v,1,o.value)}const m={page:n,itemsPerPage:a,startIndex:l,stopIndex:r,pageCount:o,itemsLength:t,nextPage:u,prevPage:d,setPage:c,setItemsPerPage:s};return K(Qe,m),m}function ka(){const e=Y(Qe);if(!e)throw new Error("Missing pagination!");return e}function Ia(e){const n=je("usePaginatedItems"),{items:a,startIndex:t,stopIndex:l,itemsPerPage:r}=e,o=p(()=>r.value<=0?a.value:a.value.slice(t.value,l.value));return ce(o,s=>{n.emit("update:currentItems",s)},{immediate:!0}),{paginatedItems:o}}const Ze=C({color:String,prevIcon:{type:N,default:"$prev"},nextIcon:{type:N,default:"$next"},firstIcon:{type:N,default:"$first"},lastIcon:{type:N,default:"$last"},itemsPerPageText:{type:String,default:"$vuetify.dataFooter.itemsPerPageText"},pageText:{type:String,default:"$vuetify.dataFooter.pageText"},firstPageLabel:{type:String,default:"$vuetify.dataFooter.firstPage"},prevPageLabel:{type:String,default:"$vuetify.dataFooter.prevPage"},nextPageLabel:{type:String,default:"$vuetify.dataFooter.nextPage"},lastPageLabel:{type:String,default:"$vuetify.dataFooter.lastPage"},itemsPerPageOptions:{type:Array,default:()=>[{value:10,title:"10"},{value:25,title:"25"},{value:50,title:"50"},{value:100,title:"100"},{value:-1,title:"$vuetify.dataFooter.itemsPerPageAll"}]},showCurrentPage:Boolean},"VDataTableFooter"),He=R()({name:"VDataTableFooter",props:Ze(),setup(e,n){let{slots:a}=n;const{t}=te(),{page:l,pageCount:r,startIndex:o,stopIndex:s,itemsLength:u,itemsPerPage:d,setItemsPerPage:c}=ka(),m=p(()=>e.itemsPerPageOptions.map(v=>typeof v=="number"?{value:v,title:v===-1?t("$vuetify.dataFooter.itemsPerPageAll"):String(v)}:{...v,title:isNaN(Number(v.title))?t(v.title):v.title}));return W(()=>{var P;const v=Ae.filterProps(e);return w("div",{class:"v-data-table-footer"},[(P=a.prepend)==null?void 0:P.call(a),w("div",{class:"v-data-table-footer__items-per-page"},[w("span",null,[t(e.itemsPerPageText)]),T(Je,{items:m.value,itemColor:e.color,modelValue:d.value,"onUpdate:modelValue":g=>c(Number(g)),density:"compact",variant:"outlined","aria-label":t(e.itemsPerPageText),hideDetails:!0},null)]),w("div",{class:"v-data-table-footer__info"},[w("div",null,[t(e.pageText,u.value?o.value+1:0,s.value,u.value)])]),w("div",{class:"v-data-table-footer__pagination"},[T(Ae,O({modelValue:l.value,"onUpdate:modelValue":g=>l.value=g,density:"comfortable",firstAriaLabel:e.firstPageLabel,lastAriaLabel:e.lastPageLabel,length:r.value,nextAriaLabel:e.nextPageLabel,previousAriaLabel:e.prevPageLabel,rounded:!0,showFirstLastPage:!0,totalVisible:e.showCurrentPage?1:0,variant:"plain"},fe(v,["color"])),null)])])}),{}}}),ee=Ht({align:{type:String,default:"start"},fixed:{type:[Boolean,String],default:!1},fixedOffset:[Number,String],fixedEndOffset:[Number,String],height:[Number,String],lastFixed:Boolean,firstFixedEnd:Boolean,noPadding:Boolean,indent:[Number,String],empty:Boolean,tag:String,width:[Number,String],maxWidth:[Number,String],nowrap:Boolean},(e,n)=>{let{slots:a}=n;const t=e.tag??"td",l=typeof e.fixed=="string"?e.fixed:e.fixed?"start":"none";return T(t,{class:j(["v-data-table__td",{"v-data-table-column--fixed":l==="start","v-data-table-column--fixed-end":l==="end","v-data-table-column--last-fixed":e.lastFixed,"v-data-table-column--first-fixed-end":e.firstFixedEnd,"v-data-table-column--no-padding":e.noPadding,"v-data-table-column--nowrap":e.nowrap,"v-data-table-column--empty":e.empty},`v-data-table-column--align-${e.align}`]),style:{height:E(e.height),width:E(e.width),maxWidth:E(e.maxWidth),left:l==="start"?E(e.fixedOffset||null):void 0,right:l==="end"?E(e.fixedEndOffset||null):void 0,paddingInlineStart:e.indent?E(e.indent):void 0}},{default:()=>{var r;return[(r=a.default)==null?void 0:r.call(a)]}})}),Ta=C({headers:Array},"DataTable-header"),et=Symbol.for("vuetify:data-table-headers"),tt={title:"",sortable:!1},pa={...tt,width:48};function Va(){const n=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).map(a=>({element:a,priority:0}));return{enqueue:(a,t)=>{let l=!1;for(let r=0;rt){n.splice(r,0,{element:a,priority:t}),l=!0;break}l||n.push({element:a,priority:t})},size:()=>n.length,count:()=>{let a=0;if(!n.length)return 0;const t=Math.floor(n[0].priority);for(let l=0;ln.shift()}}function Pe(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(!e.children)n.push(e);else for(const a of e.children)Pe(a,n);return n}function at(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Set;for(const a of e)a.key&&n.add(a.key),a.children&&at(a.children,n);return n}function Da(e){if(e.key){if(e.key==="data-table-group")return tt;if(["data-table-expand","data-table-select"].includes(e.key))return pa}}function pe(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.children?Math.max(n,...e.children.map(a=>pe(a,n+1))):n}function _a(e){let n=!1;function a(r,o){let s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"none";if(r)if(s!=="none"&&(r.fixed=s),r.fixed===!0&&(r.fixed="start"),r.fixed===o)if(r.children)if(o==="start")for(let u=r.children.length-1;u>=0;u--)a(r.children[u],o,o);else for(let u=0;u=0;u--)a(r.children[u],o);else for(let u=0;u=0;r--)a(e[r],"start");for(let r=0;r=0;r--)l=lt(e[r],l)}function nt(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return n;if(e.children){e.fixedOffset=n;for(const a of e.children)n=nt(a,n)}else e.fixed&&e.fixed!=="end"&&(e.fixedOffset=n,n+=parseFloat(e.width||"0")||0);return n}function lt(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return n;if(e.children){e.fixedEndOffset=n;for(const a of e.children)n=lt(a,n)}else e.fixed==="end"&&(e.fixedEndOffset=n,n+=parseFloat(e.width||"0")||0);return n}function Ca(e,n){const a=[];let t=0;const l=Va(e);for(;l.size()>0;){let o=l.count();const s=[];let u=1;for(;o>0;){const{element:d,priority:c}=l.dequeue(),m=n-t-pe(d);if(s.push({...d,rowspan:m??1,colspan:d.children?Pe(d).length:1}),d.children)for(const v of d.children){const P=c%1+u/Math.pow(10,t+2);l.enqueue(v,t+m+P)}u+=1,o-=1}t+=1,a.push(s)}return{columns:e.map(o=>Pe(o)).flat(),headers:a}}function ot(e){const n=[];for(const a of e){const t={...Da(a),...a},l=t.key??(typeof t.value=="string"?t.value:null),r=t.value??l??null,o={...t,key:l,value:r,sortable:t.sortable??(t.key!=null||!!t.sort),children:t.children?ot(t.children):void 0};n.push(o)}return n}function Ba(e,n){const a=M([]),t=M([]),l=M({}),r=M({}),o=M({});$t(()=>{var b,f,k;const d=(e.headers||Object.keys(e.items[0]??{}).map(i=>({key:i,title:Nt(i)}))).slice(),c=at(d);(b=n==null?void 0:n.groupBy)!=null&&b.value.length&&!c.has("data-table-group")&&d.unshift({key:"data-table-group",title:"Group"}),(f=n==null?void 0:n.showSelect)!=null&&f.value&&!c.has("data-table-select")&&d.unshift({key:"data-table-select"}),(k=n==null?void 0:n.showExpand)!=null&&k.value&&!c.has("data-table-expand")&&d.push({key:"data-table-expand"});const m=ot(d);_a(m);const v=Math.max(...m.map(i=>pe(i)))+1,P=Ca(m,v);a.value=P.headers,t.value=P.columns;const g=P.headers.flat(1);for(const i of g)i.key&&(i.sortable&&(i.sort&&(l.value[i.key]=i.sort),i.sortRaw&&(r.value[i.key]=i.sortRaw)),i.filter&&(o.value[i.key]=i.filter))});const s={headers:a,columns:t,sortFunctions:l,sortRawFunctions:r,filterFunctions:o};return K(et,s),s}function ge(){const e=Y(et);if(!e)throw new Error("Missing headers!");return e}const Ea={showSelectAll:!1,allSelected:()=>[],select:e=>{var t;let{items:n,value:a}=e;return new Set(a?[(t=n[0])==null?void 0:t.value]:[])},selectAll:e=>{let{selected:n}=e;return n}},rt={showSelectAll:!0,allSelected:e=>{let{currentPage:n}=e;return n},select:e=>{let{items:n,value:a,selected:t}=e;for(const l of n)a?t.add(l.value):t.delete(l.value);return t},selectAll:e=>{let{value:n,currentPage:a,selected:t}=e;return rt.select({items:a,value:n,selected:t})}},Fa={showSelectAll:!0,allSelected:e=>{let{allItems:n}=e;return n},select:e=>{let{items:n,value:a,selected:t}=e;for(const l of n)a?t.add(l.value):t.delete(l.value);return t},selectAll:e=>{let{value:n,allItems:a}=e;return new Set(n?a.map(t=>t.value):[])}},Oa=C({showSelect:Boolean,selectStrategy:{type:[String,Object],default:"page"},modelValue:{type:Array,default:()=>[]},valueComparator:Function},"DataTable-select"),st=Symbol.for("vuetify:data-table-selection");function Aa(e,n){let{allItems:a,currentPage:t}=n;const l=z(e,"modelValue",e.modelValue,i=>{const I=e.valueComparator;return I?new Set(ae(i).map(x=>{var y;return((y=a.value.find(S=>I(x,S.value)))==null?void 0:y.value)??x})):new Set(ae(i).map(x=>{var y,S;return Lt(x)?((y=a.value.find(_=>x===_.value))==null?void 0:y.value)??x:((S=a.value.find(_=>Ye(x,_.value)))==null?void 0:S.value)??x}))},i=>[...i.values()]),r=p(()=>a.value.filter(i=>i.selectable)),o=p(()=>t.value.filter(i=>i.selectable)),s=p(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;switch(e.selectStrategy){case"single":return Ea;case"all":return Fa;case"page":default:return rt}}),u=se(null);function d(i){return ae(i).every(I=>l.value.has(I.value))}function c(i){return ae(i).some(I=>l.value.has(I.value))}function m(i,I){const x=s.value.select({items:i,value:I,selected:new Set(l.value)});l.value=x}function v(i,I,x){const y=[];if(I=I??t.value.findIndex(S=>S.value===i.value),e.selectStrategy!=="single"&&(x!=null&&x.shiftKey)&&u.value!==null){const[S,_]=[u.value,I].sort((F,V)=>F-V);y.push(...t.value.slice(S,_+1).filter(F=>F.selectable))}else y.push(i),u.value=I;m(y,!d([i]))}function P(i){const I=s.value.selectAll({value:i,allItems:r.value,currentPage:o.value,selected:new Set(l.value)});l.value=I}const g=p(()=>l.value.size>0),b=p(()=>{const i=s.value.allSelected({allItems:r.value,currentPage:o.value});return!!i.length&&d(i)}),f=B(()=>s.value.showSelectAll),k={toggleSelect:v,select:m,selectAll:P,isSelected:d,isSomeSelected:c,someSelected:g,allSelected:b,showSelectAll:f,lastSelectedIndex:u,selectStrategy:s};return K(st,k),k}function he(){const e=Y(st);if(!e)throw new Error("Missing selection!");return e}const Ra=C({initialSortOrder:{type:String,default:"asc",validator:e=>!e||["asc","desc"].includes(e)},sortBy:{type:Array,default:()=>[]},customKeySort:Object,multiSort:{type:[Boolean,Object],default:!1},mustSort:Boolean},"DataTable-sort"),ut=Symbol.for("vuetify:data-table-sort");function Ha(e){const n=B(()=>e.initialSortOrder),a=z(e,"sortBy"),t=B(()=>e.mustSort),l=B(()=>e.multiSort);return{initialSortOrder:n,sortBy:a,multiSort:l,mustSort:t}}function $a(e,n){if(!Gt(e))return{active:!!e};const{key:a,mode:t,modifier:l}=e,r=l==="alt"&&(n==null?void 0:n.altKey)||l==="shift"&&(n==null?void 0:n.shiftKey);return{active:!a||(n==null?void 0:n.ctrlKey)||(n==null?void 0:n.metaKey)||!1,mode:r?t==="append"?"prepend":"append":t}}function Na(e){const{initialSortOrder:n,sortBy:a,mustSort:t,multiSort:l,page:r}=e,o=(d,c)=>{if(d.key==null)return;let m=a.value.map(b=>({...b}))??[];const v=m.find(b=>b.key===d.key),P=n.value,g=n.value==="desc"?"asc":"desc";if(v)v.order===g?t.value&&m.length===1?v.order=n.value:m=m.filter(b=>b.key!==d.key):v.order=g;else{const{active:b,mode:f}=$a(l.value,c);b?f==="prepend"?m.unshift({key:d.key,order:P}):m.push({key:d.key,order:P}):m=[{key:d.key,order:P}]}a.value=m,r&&(r.value=1)};function s(d){return!!a.value.find(c=>c.key===d.key)}const u={sortBy:a,toggleSort:o,isSorted:s};return K(ut,u),u}function it(){const e=Y(ut);if(!e)throw new Error("Missing sort!");return e}function Wa(e,n,a,t){const l=te();return{sortedItems:p(()=>{var o,s;return a.value.length?La(n.value,a.value,l.current.value,{transform:t==null?void 0:t.transform,sortFunctions:{...e.customKeySort,...(o=t==null?void 0:t.sortFunctions)==null?void 0:o.value},sortRawFunctions:(s=t==null?void 0:t.sortRawFunctions)==null?void 0:s.value}):n.value})}}function La(e,n,a,t){const l=new Intl.Collator(a,{sensitivity:"accent",usage:"sort"});return e.map(o=>[o,t!=null&&t.transform?t.transform(o):o]).sort((o,s)=>{var u,d;for(let c=0;ci!=null?i.toString().toLocaleLowerCase():i),g!==b))return ne(g)&&ne(b)?0:ne(g)?-1:ne(b)?1:!isNaN(g)&&!isNaN(b)?Number(g)-Number(b):l.compare(g,b)}return 0}).map(o=>{let[s]=o;return s})}const dt=C({color:String,disableSort:Boolean,fixedHeader:Boolean,multiSort:Boolean,initialSortOrder:String,sortAscIcon:{type:N,default:"$sortAsc"},sortDescIcon:{type:N,default:"$sortDesc"},headerProps:{type:Object},sticky:Boolean,...me(),...Ie(),...Xt()},"VDataTableHeaders"),$e=R()({name:"VDataTableHeaders",props:dt(),setup(e,n){let{slots:a}=n;const{t}=te(),{toggleSort:l,sortBy:r,isSorted:o}=it(),{someSelected:s,allSelected:u,selectAll:d,showSelectAll:c}=he(),{columns:m,headers:v}=ge(),{loaderClasses:P}=Mt(e);function g(V,h){if(!(e.sticky||e.fixedHeader)&&!V.fixed)return;const D=typeof V.fixed=="string"?V.fixed:V.fixed?"start":"none";return{position:"sticky",left:D==="start"?E(V.fixedOffset):void 0,right:D==="end"?E(V.fixedEndOffset):void 0,top:e.sticky||e.fixedHeader?`calc(var(--v-table-header-height) * ${h})`:void 0}}function b(V,h){V.key==="Enter"&&!e.disableSort&&l(h,V)}function f(V){const h=r.value.find(D=>D.key===V.key);return!h&&e.initialSortOrder==="asc"||(h==null?void 0:h.order)==="asc"?e.sortAscIcon:e.sortDescIcon}const{backgroundColorClasses:k,backgroundColorStyles:i}=jt(()=>e.color),{displayClasses:I,mobile:x}=ke(e),y=p(()=>({headers:v.value,columns:m.value,toggleSort:l,isSorted:o,sortBy:r.value,someSelected:s.value,allSelected:u.value,selectAll:d,getSortIcon:f})),S=p(()=>["v-data-table__th",{"v-data-table__th--sticky":e.sticky||e.fixedHeader},I.value,P.value]),_=V=>{let{column:h,x:D,y:A}=V;const L=h.key==="data-table-select"||h.key==="data-table-expand",X=h.key==="data-table-group"&&h.width===0&&!h.title,q=O(e.headerProps??{},h.headerProps??{});return T(ee,O({tag:"th",align:h.align,class:[{"v-data-table__th--sortable":h.sortable&&!e.disableSort,"v-data-table__th--sorted":o(h),"v-data-table__th--fixed":h.fixed},...S.value],style:{width:E(h.width),minWidth:E(h.minWidth),maxWidth:E(h.maxWidth),...g(h,A)},colspan:h.colspan,rowspan:h.rowspan,fixed:h.fixed,nowrap:h.nowrap,lastFixed:h.lastFixed,firstFixedEnd:h.firstFixedEnd,noPadding:L,empty:X,tabindex:h.sortable?0:void 0,onClick:h.sortable?H=>l(h,H):void 0,onKeydown:h.sortable?H=>b(H,h):void 0},q),{default:()=>{var J;const H=`header.${h.key}`,U={column:h,selectAll:d,isSorted:o,toggleSort:l,sortBy:r.value,someSelected:s.value,allSelected:u.value,getSortIcon:f};return a[H]?a[H](U):X?"":h.key==="data-table-select"?((J=a["header.data-table-select"])==null?void 0:J.call(a,U))??(c.value&&T(de,{color:e.color,density:e.density,modelValue:u.value,indeterminate:s.value&&!u.value,"onUpdate:modelValue":d},null)):w("div",{class:"v-data-table-header__content"},[w("span",null,[h.title]),h.sortable&&!e.disableSort&&T(Ee,{key:"icon",class:"v-data-table-header__sort-icon",icon:f(h)},null),e.multiSort&&o(h)&&w("div",{key:"badge",class:j(["v-data-table-header__sort-badge",...k.value]),style:ve(i.value)},[r.value.findIndex(be=>be.key===h.key)+1])])}})},F=()=>{const V=p(()=>m.value.filter(D=>(D==null?void 0:D.sortable)&&!e.disableSort)),h=m.value.find(D=>D.key==="data-table-select");return T(ee,O({tag:"th",class:[...S.value],colspan:v.value.length+1},e.headerProps),{default:()=>[w("div",{class:"v-data-table-header__content"},[T(Je,{chips:!0,color:e.color,class:"v-data-table__td-sort-select",clearable:!0,density:"default",items:V.value,label:t("$vuetify.dataTable.sortBy"),multiple:e.multiSort,variant:"underlined","onClick:clear":()=>r.value=[]},{append:h?()=>T(de,{color:e.color,density:"compact",modelValue:u.value,indeterminate:s.value&&!u.value,"onUpdate:modelValue":()=>d(!u.value)},null):void 0,chip:D=>{var A;return T(fa,{onClick:(A=D.item.raw)!=null&&A.sortable?()=>l(D.item.raw):void 0,onMousedown:L=>{L.preventDefault(),L.stopPropagation()}},{default:()=>[D.item.title,T(Ee,{class:j(["v-data-table__td-sort-icon",o(D.item.raw)&&"v-data-table__td-sort-icon-active"]),icon:f(D.item.raw),size:"small"},null)]})}})])]})};W(()=>x.value?w("tr",null,[T(F,null,null)]):w(Q,null,[a.headers?a.headers(y.value):v.value.map((V,h)=>w("tr",null,[V.map((D,A)=>T(_,{column:D,x:A,y:h},null))])),e.loading&&w("tr",{class:"v-data-table-progress"},[w("th",{colspan:m.value.length},[T(Yt,{name:"v-data-table-progress",absolute:!0,active:!0,color:typeof e.loading=="boolean"||e.loading==="true"?e.color:e.loading,indeterminate:!0},{default:a.loader})])])]))}}),Ga=C({groupBy:{type:Array,default:()=>[]}},"DataTable-group"),ct=Symbol.for("vuetify:data-table-group");function Ma(e){return{groupBy:z(e,"groupBy")}}function ja(e){const{disableSort:n,groupBy:a,sortBy:t}=e,l=M(new Set),r=p(()=>a.value.map(c=>({...c,order:c.order??!1})).concat(n!=null&&n.value?[]:t.value));function o(c){return l.value.has(c.id)}function s(c){const m=new Set(l.value);o(c)?m.delete(c.id):m.add(c.id),l.value=m}function u(c){function m(v){const P=[];for(const g of v.items)"type"in g&&g.type==="group"?P.push(...m(g)):P.push(g);return[...new Set(P)]}return m({items:c})}const d={sortByWithGroups:r,toggleGroup:s,opened:l,groupBy:a,extractRows:u,isGroupOpen:o};return K(ct,d),d}function ft(){const e=Y(ct);if(!e)throw new Error("Missing group!");return e}function Ya(e,n){if(!e.length)return[];const a=new Map;for(const t of e){const l=ue(t.raw,n);a.has(l)||a.set(l,[]),a.get(l).push(t)}return a}function vt(e,n){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"root";if(!n.length)return[];const l=Ya(e,n[0]),r=[],o=n.slice(1);return l.forEach((s,u)=>{const d=n[0],c=`${t}_${d}_${u}`;r.push({depth:a,id:c,key:d,value:u,items:o.length?vt(s,o,a+1,c):s,type:"group"})}),r}function mt(e,n,a){const t=[];for(const l of e)"type"in l&&l.type==="group"?(l.value!=null&&t.push(l),(n.has(l.id)||l.value==null)&&(t.push(...mt(l.items,n,a)),a&&t.push({...l,type:"group-summary"}))):t.push(l);return t}function Xa(e,n,a,t){return{flatItems:p(()=>{if(!n.value.length)return e.value;const r=vt(e.value,n.value.map(o=>o.key));return mt(r,a.value,zt(t))})}}const gt=C({item:{type:Object,required:!0},groupCollapseIcon:{type:N,default:"$tableGroupCollapse"},groupExpandIcon:{type:N,default:"$tableGroupExpand"},...me()},"VDataTableGroupHeaderRow"),za=R()({name:"VDataTableGroupHeaderRow",props:gt(),setup(e,n){let{slots:a}=n;const{isGroupOpen:t,toggleGroup:l,extractRows:r}=ft(),{isSelected:o,isSomeSelected:s,select:u}=he(),{columns:d}=ge(),c=p(()=>r([e.item])),m=B(()=>d.value.length-(d.value.some(v=>v.key==="data-table-select")?1:0));return()=>w("tr",{class:"v-data-table-group-header-row",style:{"--v-data-table-group-header-row-depth":e.item.depth}},[d.value.map(v=>{var P,g;if(v.key==="data-table-group"){const b=t(e.item)?e.groupCollapseIcon:e.groupExpandIcon,f=()=>l(e.item);return((P=a["data-table-group"])==null?void 0:P.call(a,{item:e.item,count:c.value.length,props:{icon:b,onClick:f}}))??T(ee,{class:"v-data-table-group-header-row__column",colspan:m.value},{default:()=>[T(ie,{size:"small",variant:"text",icon:b,onClick:f},null),w("span",null,[e.item.value]),w("span",null,[Fe("("),c.value.length,Fe(")")])]})}else if(v.key==="data-table-select"){const b=c.value.filter(I=>I.selectable),f=b.length>0&&o(b),k=s(b)&&!f,i=I=>u(b,I);return((g=a["data-table-select"])==null?void 0:g.call(a,{props:{modelValue:f,indeterminate:k,"onUpdate:modelValue":i}}))??T(ee,{class:"v-data-table__td--select-row",noPadding:!0},{default:()=>[T(de,{density:e.density,disabled:b.length===0,modelValue:f,indeterminate:k,"onUpdate:modelValue":i},null)]})}return""})])}}),Ka=C({expandOnClick:Boolean,showExpand:Boolean,expanded:{type:Array,default:()=>[]}},"DataTable-expand"),ht=Symbol.for("vuetify:datatable:expanded");function qa(e){const n=B(()=>e.expandOnClick),a=z(e,"expanded",e.expanded,s=>new Set(s),s=>[...s.values()]);function t(s,u){const d=new Set(a.value),c=le(s.value);if(u)d.add(c);else{const m=[...a.value].find(v=>le(v)===c);d.delete(m)}a.value=d}function l(s){const u=le(s.value);return[...a.value].some(d=>le(d)===u)}function r(s){t(s,!l(s))}const o={expand:t,expanded:a,expandOnClick:n,isExpanded:l,toggleExpand:r};return K(ht,o),o}function bt(){const e=Y(ht);if(!e)throw new Error("foo");return e}const yt=C({color:String,index:Number,item:Object,cellProps:[Object,Function],collapseIcon:{type:N,default:"$collapse"},expandIcon:{type:N,default:"$expand"},onClick:xe(),onContextmenu:xe(),onDblclick:xe(),...me(),...Ie()},"VDataTableRow"),Ua=R()({name:"VDataTableRow",props:yt(),setup(e,n){let{slots:a}=n;const{displayClasses:t,mobile:l}=ke(e,"v-data-table__tr"),{isSelected:r,toggleSelect:o,someSelected:s,allSelected:u,selectAll:d}=he(),{isExpanded:c,toggleExpand:m}=bt(),{toggleSort:v,sortBy:P,isSorted:g}=it(),{columns:b}=ge();W(()=>w("tr",{class:j(["v-data-table__tr",{"v-data-table__tr--clickable":!!(e.onClick||e.onContextmenu||e.onDblclick)},t.value]),onClick:e.onClick,onContextmenu:e.onContextmenu,onDblclick:e.onDblclick},[e.item&&b.value.map((f,k)=>{const i=e.item,I=`item.${f.key}`,x=`header.${f.key}`,y={index:e.index,item:i.raw,internalItem:i,value:ue(i.columns,f.key),column:f,isSelected:r,toggleSelect:o,isExpanded:c,toggleExpand:m},S={column:f,selectAll:d,isSorted:g,toggleSort:v,sortBy:P.value,someSelected:s.value,allSelected:u.value,getSortIcon:()=>""},_=typeof e.cellProps=="function"?e.cellProps({index:y.index,item:y.item,internalItem:y.internalItem,value:y.value,column:f}):e.cellProps,F=typeof f.cellProps=="function"?f.cellProps({index:y.index,item:y.item,internalItem:y.internalItem,value:y.value}):f.cellProps,V=f.key==="data-table-select"||f.key==="data-table-expand",h=f.key==="data-table-group"&&f.width===0&&!f.title;return T(ee,O({align:f.align,indent:f.indent,class:{"v-data-table__td--expanded-row":f.key==="data-table-expand","v-data-table__td--select-row":f.key==="data-table-select"},fixed:f.fixed,fixedOffset:f.fixedOffset,fixedEndOffset:f.fixedEndOffset,lastFixed:f.lastFixed,firstFixedEnd:f.firstFixedEnd,maxWidth:l.value?void 0:f.maxWidth,noPadding:V,empty:h,nowrap:f.nowrap,width:l.value?void 0:f.width},_,F),{default:()=>{var A,L,X,q;if(f.key==="data-table-select")return((A=a["item.data-table-select"])==null?void 0:A.call(a,{...y,props:{color:e.color,disabled:!i.selectable,modelValue:r([i]),onClick:oe(()=>o(i),["stop"])}}))??T(de,{color:e.color,disabled:!i.selectable,density:e.density,modelValue:r([i]),onClick:oe(H=>o(i,e.index,H),["stop"])},null);if(f.key==="data-table-expand")return((L=a["item.data-table-expand"])==null?void 0:L.call(a,{...y,props:{icon:c(i)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:oe(()=>m(i),["stop"])}}))??T(ie,{icon:c(i)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:oe(()=>m(i),["stop"])},null);if(a[I]&&!l.value)return a[I](y);const D=Kt(y.value);return l.value?w(Q,null,[w("div",{class:"v-data-table__td-title"},[((X=a[x])==null?void 0:X.call(a,S))??f.title]),w("div",{class:"v-data-table__td-value"},[((q=a[I])==null?void 0:q.call(a,y))??D])]):D}})})]))}}),xt=C({color:String,loading:[Boolean,String],loadingText:{type:String,default:"$vuetify.dataIterator.loadingText"},hideNoData:Boolean,items:{type:Array,default:()=>[]},noDataText:{type:String,default:"$vuetify.noDataText"},rowProps:[Object,Function],cellProps:[Object,Function],...Se(yt(),["collapseIcon","expandIcon","density"]),...Se(gt(),["groupCollapseIcon","groupExpandIcon","density"]),...Ie()},"VDataTableRows"),Ne=R()({name:"VDataTableRows",inheritAttrs:!1,props:xt(),setup(e,n){let{attrs:a,slots:t}=n;const{columns:l}=ge(),{expandOnClick:r,toggleExpand:o,isExpanded:s}=bt(),{isSelected:u,toggleSelect:d}=he(),{toggleGroup:c,isGroupOpen:m}=ft(),{t:v}=te(),{mobile:P}=ke(e);return W(()=>{var b,f;const g=Se(e,["groupCollapseIcon","groupExpandIcon","density"]);return e.loading&&(!e.items.length||t.loading)?w("tr",{class:"v-data-table-rows-loading",key:"loading"},[w("td",{colspan:l.value.length},[((b=t.loading)==null?void 0:b.call(t))??v(e.loadingText)])]):!e.loading&&!e.items.length&&!e.hideNoData?w("tr",{class:"v-data-table-rows-no-data",key:"no-data"},[w("td",{colspan:l.value.length},[((f=t["no-data"])==null?void 0:f.call(t))??v(e.noDataText)])]):w(Q,null,[e.items.map((k,i)=>{var y,S;if(k.type==="group"){const _={index:i,item:k,columns:l.value,isExpanded:s,toggleExpand:o,isSelected:u,toggleSelect:d,toggleGroup:c,isGroupOpen:m};return t["group-header"]?t["group-header"](_):T(za,O({key:`group-header_${k.id}`,item:k},Re(a,":groupHeader",()=>_),g),t)}if(k.type==="group-summary"){const _={index:i,item:k,columns:l.value,toggleGroup:c};return((y=t["group-summary"])==null?void 0:y.call(t,_))??""}const I={index:k.virtualIndex??i,item:k.raw,internalItem:k,columns:l.value,isExpanded:s,toggleExpand:o,isSelected:u,toggleSelect:d},x={...I,props:O({key:`item_${k.key??k.index}`,onClick:r.value?()=>{o(k)}:void 0,index:i,item:k,color:e.color,cellProps:e.cellProps,collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,density:e.density,mobile:P.value},Re(a,":row",()=>I),typeof e.rowProps=="function"?e.rowProps({item:I.item,index:I.index,internalItem:I.internalItem}):e.rowProps)};return w(Q,{key:x.props.key},[t.item?t.item(x):T(Ua,x.props,t),s(k)&&((S=t["expanded-row"])==null?void 0:S.call(t,I))])})])}),{}}}),St=C({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,striped:{type:String,default:null,validator:e=>["even","odd"].includes(e)},...Te(),...me(),...Ke(),...ze()},"VTable"),We=R()({name:"VTable",props:St(),setup(e,n){let{slots:a,emit:t}=n;const{themeClasses:l}=Xe(e),{densityClasses:r}=qt(e);return W(()=>T(e.tag,{class:j(["v-table",{"v-table--fixed-height":!!e.height,"v-table--fixed-header":e.fixedHeader,"v-table--fixed-footer":e.fixedFooter,"v-table--has-top":!!a.top,"v-table--has-bottom":!!a.bottom,"v-table--hover":e.hover,"v-table--striped-even":e.striped==="even","v-table--striped-odd":e.striped==="odd"},l.value,r.value,e.class]),style:ve(e.style)},{default:()=>{var o,s,u;return[(o=a.top)==null?void 0:o.call(a),a.default?w("div",{class:"v-table__wrapper",style:{height:E(e.height)}},[w("table",null,[a.default()])]):(s=a.wrapper)==null?void 0:s.call(a),(u=a.bottom)==null?void 0:u.call(a)]}})),{}}}),Ja=C({items:{type:Array,default:()=>[]},itemValue:{type:[String,Array,Function],default:"id"},itemSelectable:{type:[String,Array,Function],default:null},rowProps:[Object,Function],cellProps:[Object,Function],returnObject:Boolean},"DataTable-items");function Qa(e,n,a,t){const l=e.returnObject?n:re(n,e.itemValue),r=re(n,e.itemSelectable,!0),o=t.reduce((s,u)=>(u.key!=null&&(s[u.key]=re(n,u.value)),s),{});return{type:"item",key:e.returnObject?re(n,e.itemValue):l,index:a,value:l,selectable:r,columns:o,raw:n}}function Za(e,n,a){return n.map((t,l)=>Qa(e,t,l,a))}function en(e,n){return{items:p(()=>Za(e,e.items,n.value))}}function tn(e){let{page:n,itemsPerPage:a,sortBy:t,groupBy:l,search:r}=e;const o=je("VDataTable"),s=()=>({page:n.value,itemsPerPage:a.value,sortBy:t.value,groupBy:l.value,search:r.value});let u=null;ce(s,d=>{Ye(u,d)||(u&&u.search!==d.search&&(n.value=1),o.emit("update:options",d),u=d)},{deep:!0,immediate:!0})}const an=C({...xt(),hideDefaultBody:Boolean,hideDefaultFooter:Boolean,hideDefaultHeader:Boolean,width:[String,Number],search:String,...Ka(),...Ga(),...Ta(),...Ja(),...Oa(),...Ra(),...fe(dt(),["multiSort","initialSortOrder"]),...St()},"DataTable"),nn=C({...Sa(),...an(),...ca(),...Ze()},"VDataTable"),vn=R()({name:"VDataTable",props:nn(),emits:{"update:modelValue":e=>!0,"update:page":e=>!0,"update:itemsPerPage":e=>!0,"update:sortBy":e=>!0,"update:options":e=>!0,"update:groupBy":e=>!0,"update:expanded":e=>!0,"update:currentItems":e=>!0},setup(e,n){let{attrs:a,slots:t}=n;const{groupBy:l}=Ma(e),{initialSortOrder:r,sortBy:o,multiSort:s,mustSort:u}=Ha(e),{page:d,itemsPerPage:c}=wa(e),{disableSort:m}=Ut(e),{columns:v,headers:P,sortFunctions:g,sortRawFunctions:b,filterFunctions:f}=Ba(e,{groupBy:l,showSelect:B(()=>e.showSelect),showExpand:B(()=>e.showExpand)}),{items:k}=en(e,v),i=B(()=>e.search),{filteredItems:I}=da(e,k,i,{transform:G=>G.columns,customKeyFilter:f}),{toggleSort:x}=Na({initialSortOrder:r,sortBy:o,multiSort:s,mustSort:u,page:d}),{sortByWithGroups:y,opened:S,extractRows:_,isGroupOpen:F,toggleGroup:V}=ja({groupBy:l,sortBy:o,disableSort:m}),{sortedItems:h}=Wa(e,I,y,{transform:G=>({...G.raw,...G.columns}),sortFunctions:g,sortRawFunctions:b}),{flatItems:D}=Xa(h,l,S,()=>!!t["group-summary"]),A=p(()=>D.value.length),{startIndex:L,stopIndex:X,pageCount:q,setItemsPerPage:H}=Pa({page:d,itemsPerPage:c,itemsLength:A}),{paginatedItems:U}=Ia({items:D,startIndex:L,stopIndex:X,itemsPerPage:c}),J=p(()=>_(U.value)),{isSelected:be,select:Tt,selectAll:pt,toggleSelect:Vt,someSelected:Dt,allSelected:_t}=Aa(e,{allItems:k,currentPage:J}),{isExpanded:Ct,toggleExpand:Bt}=qa(e);tn({page:d,itemsPerPage:c,sortBy:o,groupBy:l,search:i}),Jt({VDataTableRows:{hideNoData:B(()=>e.hideNoData),noDataText:B(()=>e.noDataText),loading:B(()=>e.loading),loadingText:B(()=>e.loadingText)}});const $=p(()=>({page:d.value,itemsPerPage:c.value,sortBy:o.value,pageCount:q.value,toggleSort:x,setItemsPerPage:H,someSelected:Dt.value,allSelected:_t.value,isSelected:be,select:Tt,selectAll:pt,toggleSelect:Vt,isExpanded:Ct,toggleExpand:Bt,isGroupOpen:F,toggleGroup:V,items:J.value.map(G=>G.raw),internalItems:J.value,groupedItems:U.value,columns:v.value,headers:P.value}));return W(()=>{const G=He.filterProps(e),Et=$e.filterProps(fe(e,["multiSort"])),Ft=Ne.filterProps(e),Ot=We.filterProps(e);return T(We,O({class:["v-data-table",{"v-data-table--show-select":e.showSelect,"v-data-table--loading":e.loading},e.class],style:e.style},Ot,{fixedHeader:e.fixedHeader||e.sticky}),{top:()=>{var Z;return(Z=t.top)==null?void 0:Z.call(t,$.value)},default:()=>{var Z,Ve,De,_e,Ce,Be;return t.default?t.default($.value):w(Q,null,[(Z=t.colgroup)==null?void 0:Z.call(t,$.value),!e.hideDefaultHeader&&w("thead",{key:"thead"},[T($e,O(Et,{multiSort:!!e.multiSort}),t)]),(Ve=t.thead)==null?void 0:Ve.call(t,$.value),!e.hideDefaultBody&&w("tbody",null,[(De=t["body.prepend"])==null?void 0:De.call(t,$.value),t.body?t.body($.value):T(Ne,O(a,Ft,{items:U.value}),t),(_e=t["body.append"])==null?void 0:_e.call(t,$.value)]),(Ce=t.tbody)==null?void 0:Ce.call(t,$.value),(Be=t.tfoot)==null?void 0:Be.call(t,$.value)])},bottom:()=>t.bottom?t.bottom($.value):!e.hideDefaultFooter&&w(Q,null,[T(Qt,null,null),T(He,G,{prepend:t["footer.prepend"]})])})}),{}}}),ln=Symbol.for("vuetify:v-tabs"),wt=Symbol.for("vuetify:v-window"),Pt=Symbol.for("vuetify:v-window-group"),kt=C({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},verticalArrows:[Boolean,String],touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},crossfade:Boolean,transitionDuration:Number,...Te(),...Ke(),...ze()},"VWindow"),Le=R()({name:"VWindow",directives:{vTouch:we},props:kt(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:a}=n;const{themeClasses:t}=Xe(e),{isRtl:l}=Zt(),{t:r}=te(),o=ea(e,Pt),s=M(),u=p(()=>l.value?!e.reverse:e.reverse),d=se(!1),c=p(()=>{if(e.crossfade)return"v-window-crossfade-transition";const x=e.direction==="vertical"?"y":"x",S=(u.value?!d.value:d.value)?"-reverse":"";return`v-window-${x}${S}-transition`}),m=se(0),v=M(void 0),P=p(()=>o.items.value.findIndex(x=>o.selected.value.includes(x.id)));ce(P,(x,y)=>{let S;const _={left:0,top:0};Oe&&y>=0&&(S=ta(s.value),_.left=S==null?void 0:S.scrollLeft,_.top=S==null?void 0:S.scrollTop);const F=o.items.value.length,V=F-1;F<=2?d.value=x{if(!Oe||!S)return;S.scrollTop!==_.top&&S.scrollTo({..._,behavior:"instant"}),requestAnimationFrame(()=>{if(!S)return;S.scrollTop!==_.top&&S.scrollTo({..._,behavior:"instant"})})})},{flush:"sync"}),K(wt,{transition:c,isReversed:d,transitionCount:m,transitionHeight:v,rootRef:s});const g=B(()=>e.continuous||P.value!==0),b=B(()=>e.continuous||P.value!==o.items.value.length-1);function f(){g.value&&o.prev()}function k(){b.value&&o.next()}const i=p(()=>{const x=[],y={icon:l.value?e.nextIcon:e.prevIcon,class:`v-window__${u.value?"right":"left"}`,onClick:o.prev,"aria-label":r("$vuetify.carousel.prev")};x.push(g.value?a.prev?a.prev({props:y}):T(ie,y,null):w("div",null,null));const S={icon:l.value?e.prevIcon:e.nextIcon,class:`v-window__${u.value?"left":"right"}`,onClick:o.next,"aria-label":r("$vuetify.carousel.next")};return x.push(b.value?a.next?a.next({props:S}):T(ie,S,null):w("div",null,null)),x}),I=p(()=>e.touch===!1?e.touch:{...{left:()=>{u.value?f():k()},right:()=>{u.value?k():f()},start:y=>{let{originalEvent:S}=y;S.stopPropagation()}},...e.touch===!0?{}:e.touch});return W(()=>Ue(T(e.tag,{ref:s,class:j(["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover","v-window--vertical-arrows":!!e.verticalArrows,"v-window--crossfade":!!e.crossfade},t.value,e.class]),style:ve([e.style,{"--v-window-transition-duration":aa()?null:E(e.transitionDuration,"ms")}])},{default:()=>{var x,y;return[w("div",{class:"v-window__container",style:{height:v.value}},[(x=a.default)==null?void 0:x.call(a,{group:o}),e.showArrows!==!1&&w("div",{class:j(["v-window__controls",{"v-window__controls--left":e.verticalArrows==="left"||e.verticalArrows===!0},{"v-window__controls--right":e.verticalArrows==="right"}])},[i.value])]),(y=a.additional)==null?void 0:y.call(a,{group:o})]}}),[[we,I.value]])),{group:o}}}),on=C({...fe(kt(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VTabsWindow"),mn=R()({name:"VTabsWindow",props:on(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:a}=n;const t=Y(ln,null),l=z(e,"modelValue"),r=p({get(){var o;return l.value!=null||!t?l.value:(o=t.items.value.find(s=>t.selected.value.includes(s.id)))==null?void 0:o.value},set(o){l.value=o}});return W(()=>{const o=Le.filterProps(e);return T(Le,O({_as:"VTabsWindow"},o,{modelValue:r.value,"onUpdate:modelValue":s=>r.value=s,class:["v-tabs-window",e.class],style:e.style,mandatory:!1,touch:!1}),a)}),{}}}),It=C({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},...Te(),...ia(),...ua()},"VWindowItem"),Ge=R()({name:"VWindowItem",directives:{vTouch:we},props:It(),emits:{"group:selected":e=>!0},setup(e,n){let{slots:a}=n;const t=Y(wt),l=na(e,Pt),{isBooted:r}=la();if(!t||!l)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const o=se(!1),s=p(()=>r.value&&(t.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function u(){!o.value||!t||(o.value=!1,t.transitionCount.value>0&&(t.transitionCount.value-=1,t.transitionCount.value===0&&(t.transitionHeight.value=void 0)))}function d(){var g;o.value||!t||(o.value=!0,t.transitionCount.value===0&&(t.transitionHeight.value=E((g=t.rootRef.value)==null?void 0:g.clientHeight)),t.transitionCount.value+=1)}function c(){u()}function m(g){o.value&&qe(()=>{!s.value||!o.value||!t||(t.transitionHeight.value=E(g.clientHeight))})}const v=p(()=>{const g=t.isReversed.value?e.reverseTransition:e.transition;return s.value?{name:typeof g!="string"?t.transition.value:g,onBeforeEnter:d,onAfterEnter:u,onEnterCancelled:c,onBeforeLeave:d,onAfterLeave:u,onLeaveCancelled:c,onEnter:m}:!1}),{hasContent:P}=oa(e,l.isSelected);return W(()=>T(sa,{transition:v.value,disabled:!r.value},{default:()=>{var g;return[Ue(w("div",{class:j(["v-window-item",l.selectedClass.value,e.class]),style:ve(e.style)},[P.value&&((g=a.default)==null?void 0:g.call(a))]),[[ra,l.isSelected.value]])]}})),{groupItem:l}}}),rn=C({...It()},"VTabsWindowItem"),gn=R()({name:"VTabsWindowItem",props:rn(),setup(e,n){let{slots:a}=n;return W(()=>{const t=Ge.filterProps(e);return T(Ge,O({_as:"VTabsWindowItem"},t,{class:["v-tabs-window-item",e.class],style:e.style}),a)}),{}}});export{ln as V,gn as a,mn as b,Le as c,Ge as d,vn as e,We as f}; +import{bW as At,ax as Rt,bX as Me,ar as z,ae as ce,bY as je,a3 as p,bc as ye,bO as Y,p as C,bT as K,g as R,aq as te,b as W,i as w,c as T,E as O,aA as fe,a_ as N,bZ as Ht,aJ as E,d as j,b3 as $t,b_ as Nt,a2 as M,b$ as Wt,as as ae,c0 as Lt,aY as Ye,az as se,av as B,c1 as ue,c2 as ne,aM as Gt,c3 as Mt,aC as jt,X as ke,c4 as Yt,F as Q,t as Ee,n as ve,c5 as Xt,bH as Ie,aK as me,c6 as zt,y as ie,v as Fe,c7 as le,O as oe,A as Kt,b0 as xe,aL as Se,bo as Xe,aG as qt,bj as ze,m as Ke,h as Te,c8 as re,c9 as Ut,aI as Jt,K as Qt,b7 as Zt,bU as ea,aS as Oe,ca as ta,aw as qe,I as Ue,cb as aa,bR as na,a as la,bP as oa,J as ra,a$ as sa,bQ as ua,bS as ia}from"./index-BXl8SUNP.js";import{V as Ae}from"./VPagination-BUmJ8K2V.js";import{e as Je,u as da,d as ca}from"./filter-BHXElGQ1.js";import{V as fa}from"./VChip-jIQL7s_d.js";import{V as de}from"./VCheckboxBtn-iC2wkMdx.js";function Re(e,n,a){return Object.keys(e).filter(t=>At(t)&&t.endsWith(n)).reduce((t,l)=>(t[l.slice(0,-n.length)]=r=>Rt(e[l],r,a(r)),t),{})}const va=e=>{const{touchstartX:n,touchendX:a,touchstartY:t,touchendY:l}=e,r=.5,o=16;e.offsetX=a-n,e.offsetY=l-t,Math.abs(e.offsetY)n+o&&e.right(e)),Math.abs(e.offsetX)t+o&&e.down(e))};function ma(e,n){var t;const a=e.changedTouches[0];n.touchstartX=a.clientX,n.touchstartY=a.clientY,(t=n.start)==null||t.call(n,{originalEvent:e,...n})}function ga(e,n){var t;const a=e.changedTouches[0];n.touchendX=a.clientX,n.touchendY=a.clientY,(t=n.end)==null||t.call(n,{originalEvent:e,...n}),va(n)}function ha(e,n){var t;const a=e.changedTouches[0];n.touchmoveX=a.clientX,n.touchmoveY=a.clientY,(t=n.move)==null||t.call(n,{originalEvent:e,...n})}function ba(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const n={touchstartX:0,touchstartY:0,touchendX:0,touchendY:0,touchmoveX:0,touchmoveY:0,offsetX:0,offsetY:0,left:e.left,right:e.right,up:e.up,down:e.down,start:e.start,move:e.move,end:e.end};return{touchstart:a=>ma(a,n),touchend:a=>ga(a,n),touchmove:a=>ha(a,n)}}function ya(e,n){var s;const a=n.value,t=a!=null&&a.parent?e.parentElement:e,l=(a==null?void 0:a.options)??{passive:!0},r=(s=n.instance)==null?void 0:s.$.uid;if(!t||r===void 0)return;const o=ba(n.value);t._touchHandlers=t._touchHandlers??Object.create(null),t._touchHandlers[r]=o,Me(o).forEach(u=>{t.addEventListener(u,o[u],l)})}function xa(e,n){var r,o;const a=(r=n.value)!=null&&r.parent?e.parentElement:e,t=(o=n.instance)==null?void 0:o.$.uid;if(!(a!=null&&a._touchHandlers)||t===void 0)return;const l=a._touchHandlers[t];Me(l).forEach(s=>{a.removeEventListener(s,l[s])}),delete a._touchHandlers[t]}const we={mounted:ya,unmounted:xa},Sa=C({page:{type:[Number,String],default:1},itemsPerPage:{type:[Number,String],default:10}},"DataTable-paginate"),Qe=Symbol.for("vuetify:data-table-pagination");function wa(e){const n=z(e,"page",void 0,t=>Number(t??1)),a=z(e,"itemsPerPage",void 0,t=>Number(t??10));return{page:n,itemsPerPage:a}}function Pa(e){const{page:n,itemsPerPage:a,itemsLength:t}=e,l=p(()=>a.value===-1?0:a.value*(n.value-1)),r=p(()=>a.value===-1?t.value:Math.min(t.value,l.value+a.value)),o=p(()=>a.value===-1||t.value===0?1:Math.ceil(t.value/a.value));ce([n,o],()=>{n.value>o.value&&(n.value=o.value)});function s(v){a.value=v,n.value=1}function u(){n.value=ye(n.value+1,1,o.value)}function d(){n.value=ye(n.value-1,1,o.value)}function c(v){n.value=ye(v,1,o.value)}const m={page:n,itemsPerPage:a,startIndex:l,stopIndex:r,pageCount:o,itemsLength:t,nextPage:u,prevPage:d,setPage:c,setItemsPerPage:s};return K(Qe,m),m}function ka(){const e=Y(Qe);if(!e)throw new Error("Missing pagination!");return e}function Ia(e){const n=je("usePaginatedItems"),{items:a,startIndex:t,stopIndex:l,itemsPerPage:r}=e,o=p(()=>r.value<=0?a.value:a.value.slice(t.value,l.value));return ce(o,s=>{n.emit("update:currentItems",s)},{immediate:!0}),{paginatedItems:o}}const Ze=C({color:String,prevIcon:{type:N,default:"$prev"},nextIcon:{type:N,default:"$next"},firstIcon:{type:N,default:"$first"},lastIcon:{type:N,default:"$last"},itemsPerPageText:{type:String,default:"$vuetify.dataFooter.itemsPerPageText"},pageText:{type:String,default:"$vuetify.dataFooter.pageText"},firstPageLabel:{type:String,default:"$vuetify.dataFooter.firstPage"},prevPageLabel:{type:String,default:"$vuetify.dataFooter.prevPage"},nextPageLabel:{type:String,default:"$vuetify.dataFooter.nextPage"},lastPageLabel:{type:String,default:"$vuetify.dataFooter.lastPage"},itemsPerPageOptions:{type:Array,default:()=>[{value:10,title:"10"},{value:25,title:"25"},{value:50,title:"50"},{value:100,title:"100"},{value:-1,title:"$vuetify.dataFooter.itemsPerPageAll"}]},showCurrentPage:Boolean},"VDataTableFooter"),He=R()({name:"VDataTableFooter",props:Ze(),setup(e,n){let{slots:a}=n;const{t}=te(),{page:l,pageCount:r,startIndex:o,stopIndex:s,itemsLength:u,itemsPerPage:d,setItemsPerPage:c}=ka(),m=p(()=>e.itemsPerPageOptions.map(v=>typeof v=="number"?{value:v,title:v===-1?t("$vuetify.dataFooter.itemsPerPageAll"):String(v)}:{...v,title:isNaN(Number(v.title))?t(v.title):v.title}));return W(()=>{var P;const v=Ae.filterProps(e);return w("div",{class:"v-data-table-footer"},[(P=a.prepend)==null?void 0:P.call(a),w("div",{class:"v-data-table-footer__items-per-page"},[w("span",null,[t(e.itemsPerPageText)]),T(Je,{items:m.value,itemColor:e.color,modelValue:d.value,"onUpdate:modelValue":g=>c(Number(g)),density:"compact",variant:"outlined","aria-label":t(e.itemsPerPageText),hideDetails:!0},null)]),w("div",{class:"v-data-table-footer__info"},[w("div",null,[t(e.pageText,u.value?o.value+1:0,s.value,u.value)])]),w("div",{class:"v-data-table-footer__pagination"},[T(Ae,O({modelValue:l.value,"onUpdate:modelValue":g=>l.value=g,density:"comfortable",firstAriaLabel:e.firstPageLabel,lastAriaLabel:e.lastPageLabel,length:r.value,nextAriaLabel:e.nextPageLabel,previousAriaLabel:e.prevPageLabel,rounded:!0,showFirstLastPage:!0,totalVisible:e.showCurrentPage?1:0,variant:"plain"},fe(v,["color"])),null)])])}),{}}}),ee=Ht({align:{type:String,default:"start"},fixed:{type:[Boolean,String],default:!1},fixedOffset:[Number,String],fixedEndOffset:[Number,String],height:[Number,String],lastFixed:Boolean,firstFixedEnd:Boolean,noPadding:Boolean,indent:[Number,String],empty:Boolean,tag:String,width:[Number,String],maxWidth:[Number,String],nowrap:Boolean},(e,n)=>{let{slots:a}=n;const t=e.tag??"td",l=typeof e.fixed=="string"?e.fixed:e.fixed?"start":"none";return T(t,{class:j(["v-data-table__td",{"v-data-table-column--fixed":l==="start","v-data-table-column--fixed-end":l==="end","v-data-table-column--last-fixed":e.lastFixed,"v-data-table-column--first-fixed-end":e.firstFixedEnd,"v-data-table-column--no-padding":e.noPadding,"v-data-table-column--nowrap":e.nowrap,"v-data-table-column--empty":e.empty},`v-data-table-column--align-${e.align}`]),style:{height:E(e.height),width:E(e.width),maxWidth:E(e.maxWidth),left:l==="start"?E(e.fixedOffset||null):void 0,right:l==="end"?E(e.fixedEndOffset||null):void 0,paddingInlineStart:e.indent?E(e.indent):void 0}},{default:()=>{var r;return[(r=a.default)==null?void 0:r.call(a)]}})}),Ta=C({headers:Array},"DataTable-header"),et=Symbol.for("vuetify:data-table-headers"),tt={title:"",sortable:!1},pa={...tt,width:48};function Va(){const n=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:[]).map(a=>({element:a,priority:0}));return{enqueue:(a,t)=>{let l=!1;for(let r=0;rt){n.splice(r,0,{element:a,priority:t}),l=!0;break}l||n.push({element:a,priority:t})},size:()=>n.length,count:()=>{let a=0;if(!n.length)return 0;const t=Math.floor(n[0].priority);for(let l=0;ln.shift()}}function Pe(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(!e.children)n.push(e);else for(const a of e.children)Pe(a,n);return n}function at(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:new Set;for(const a of e)a.key&&n.add(a.key),a.children&&at(a.children,n);return n}function Da(e){if(e.key){if(e.key==="data-table-group")return tt;if(["data-table-expand","data-table-select"].includes(e.key))return pa}}function pe(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return e.children?Math.max(n,...e.children.map(a=>pe(a,n+1))):n}function _a(e){let n=!1;function a(r,o){let s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"none";if(r)if(s!=="none"&&(r.fixed=s),r.fixed===!0&&(r.fixed="start"),r.fixed===o)if(r.children)if(o==="start")for(let u=r.children.length-1;u>=0;u--)a(r.children[u],o,o);else for(let u=0;u=0;u--)a(r.children[u],o);else for(let u=0;u=0;r--)a(e[r],"start");for(let r=0;r=0;r--)l=lt(e[r],l)}function nt(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return n;if(e.children){e.fixedOffset=n;for(const a of e.children)n=nt(a,n)}else e.fixed&&e.fixed!=="end"&&(e.fixedOffset=n,n+=parseFloat(e.width||"0")||0);return n}function lt(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;if(!e)return n;if(e.children){e.fixedEndOffset=n;for(const a of e.children)n=lt(a,n)}else e.fixed==="end"&&(e.fixedEndOffset=n,n+=parseFloat(e.width||"0")||0);return n}function Ca(e,n){const a=[];let t=0;const l=Va(e);for(;l.size()>0;){let o=l.count();const s=[];let u=1;for(;o>0;){const{element:d,priority:c}=l.dequeue(),m=n-t-pe(d);if(s.push({...d,rowspan:m??1,colspan:d.children?Pe(d).length:1}),d.children)for(const v of d.children){const P=c%1+u/Math.pow(10,t+2);l.enqueue(v,t+m+P)}u+=1,o-=1}t+=1,a.push(s)}return{columns:e.map(o=>Pe(o)).flat(),headers:a}}function ot(e){const n=[];for(const a of e){const t={...Da(a),...a},l=t.key??(typeof t.value=="string"?t.value:null),r=t.value??l??null,o={...t,key:l,value:r,sortable:t.sortable??(t.key!=null||!!t.sort),children:t.children?ot(t.children):void 0};n.push(o)}return n}function Ba(e,n){const a=M([]),t=M([]),l=M({}),r=M({}),o=M({});$t(()=>{var b,f,k;const d=(e.headers||Object.keys(e.items[0]??{}).map(i=>({key:i,title:Nt(i)}))).slice(),c=at(d);(b=n==null?void 0:n.groupBy)!=null&&b.value.length&&!c.has("data-table-group")&&d.unshift({key:"data-table-group",title:"Group"}),(f=n==null?void 0:n.showSelect)!=null&&f.value&&!c.has("data-table-select")&&d.unshift({key:"data-table-select"}),(k=n==null?void 0:n.showExpand)!=null&&k.value&&!c.has("data-table-expand")&&d.push({key:"data-table-expand"});const m=ot(d);_a(m);const v=Math.max(...m.map(i=>pe(i)))+1,P=Ca(m,v);a.value=P.headers,t.value=P.columns;const g=P.headers.flat(1);for(const i of g)i.key&&(i.sortable&&(i.sort&&(l.value[i.key]=i.sort),i.sortRaw&&(r.value[i.key]=i.sortRaw)),i.filter&&(o.value[i.key]=i.filter))});const s={headers:a,columns:t,sortFunctions:l,sortRawFunctions:r,filterFunctions:o};return K(et,s),s}function ge(){const e=Y(et);if(!e)throw new Error("Missing headers!");return e}const Ea={showSelectAll:!1,allSelected:()=>[],select:e=>{var t;let{items:n,value:a}=e;return new Set(a?[(t=n[0])==null?void 0:t.value]:[])},selectAll:e=>{let{selected:n}=e;return n}},rt={showSelectAll:!0,allSelected:e=>{let{currentPage:n}=e;return n},select:e=>{let{items:n,value:a,selected:t}=e;for(const l of n)a?t.add(l.value):t.delete(l.value);return t},selectAll:e=>{let{value:n,currentPage:a,selected:t}=e;return rt.select({items:a,value:n,selected:t})}},Fa={showSelectAll:!0,allSelected:e=>{let{allItems:n}=e;return n},select:e=>{let{items:n,value:a,selected:t}=e;for(const l of n)a?t.add(l.value):t.delete(l.value);return t},selectAll:e=>{let{value:n,allItems:a}=e;return new Set(n?a.map(t=>t.value):[])}},Oa=C({showSelect:Boolean,selectStrategy:{type:[String,Object],default:"page"},modelValue:{type:Array,default:()=>[]},valueComparator:Function},"DataTable-select"),st=Symbol.for("vuetify:data-table-selection");function Aa(e,n){let{allItems:a,currentPage:t}=n;const l=z(e,"modelValue",e.modelValue,i=>{const I=e.valueComparator;return I?new Set(ae(i).map(x=>{var y;return((y=a.value.find(S=>I(x,S.value)))==null?void 0:y.value)??x})):new Set(ae(i).map(x=>{var y,S;return Lt(x)?((y=a.value.find(_=>x===_.value))==null?void 0:y.value)??x:((S=a.value.find(_=>Ye(x,_.value)))==null?void 0:S.value)??x}))},i=>[...i.values()]),r=p(()=>a.value.filter(i=>i.selectable)),o=p(()=>t.value.filter(i=>i.selectable)),s=p(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;switch(e.selectStrategy){case"single":return Ea;case"all":return Fa;case"page":default:return rt}}),u=se(null);function d(i){return ae(i).every(I=>l.value.has(I.value))}function c(i){return ae(i).some(I=>l.value.has(I.value))}function m(i,I){const x=s.value.select({items:i,value:I,selected:new Set(l.value)});l.value=x}function v(i,I,x){const y=[];if(I=I??t.value.findIndex(S=>S.value===i.value),e.selectStrategy!=="single"&&(x!=null&&x.shiftKey)&&u.value!==null){const[S,_]=[u.value,I].sort((F,V)=>F-V);y.push(...t.value.slice(S,_+1).filter(F=>F.selectable))}else y.push(i),u.value=I;m(y,!d([i]))}function P(i){const I=s.value.selectAll({value:i,allItems:r.value,currentPage:o.value,selected:new Set(l.value)});l.value=I}const g=p(()=>l.value.size>0),b=p(()=>{const i=s.value.allSelected({allItems:r.value,currentPage:o.value});return!!i.length&&d(i)}),f=B(()=>s.value.showSelectAll),k={toggleSelect:v,select:m,selectAll:P,isSelected:d,isSomeSelected:c,someSelected:g,allSelected:b,showSelectAll:f,lastSelectedIndex:u,selectStrategy:s};return K(st,k),k}function he(){const e=Y(st);if(!e)throw new Error("Missing selection!");return e}const Ra=C({initialSortOrder:{type:String,default:"asc",validator:e=>!e||["asc","desc"].includes(e)},sortBy:{type:Array,default:()=>[]},customKeySort:Object,multiSort:{type:[Boolean,Object],default:!1},mustSort:Boolean},"DataTable-sort"),ut=Symbol.for("vuetify:data-table-sort");function Ha(e){const n=B(()=>e.initialSortOrder),a=z(e,"sortBy"),t=B(()=>e.mustSort),l=B(()=>e.multiSort);return{initialSortOrder:n,sortBy:a,multiSort:l,mustSort:t}}function $a(e,n){if(!Gt(e))return{active:!!e};const{key:a,mode:t,modifier:l}=e,r=l==="alt"&&(n==null?void 0:n.altKey)||l==="shift"&&(n==null?void 0:n.shiftKey);return{active:!a||(n==null?void 0:n.ctrlKey)||(n==null?void 0:n.metaKey)||!1,mode:r?t==="append"?"prepend":"append":t}}function Na(e){const{initialSortOrder:n,sortBy:a,mustSort:t,multiSort:l,page:r}=e,o=(d,c)=>{if(d.key==null)return;let m=a.value.map(b=>({...b}))??[];const v=m.find(b=>b.key===d.key),P=n.value,g=n.value==="desc"?"asc":"desc";if(v)v.order===g?t.value&&m.length===1?v.order=n.value:m=m.filter(b=>b.key!==d.key):v.order=g;else{const{active:b,mode:f}=$a(l.value,c);b?f==="prepend"?m.unshift({key:d.key,order:P}):m.push({key:d.key,order:P}):m=[{key:d.key,order:P}]}a.value=m,r&&(r.value=1)};function s(d){return!!a.value.find(c=>c.key===d.key)}const u={sortBy:a,toggleSort:o,isSorted:s};return K(ut,u),u}function it(){const e=Y(ut);if(!e)throw new Error("Missing sort!");return e}function Wa(e,n,a,t){const l=te();return{sortedItems:p(()=>{var o,s;return a.value.length?La(n.value,a.value,l.current.value,{transform:t==null?void 0:t.transform,sortFunctions:{...e.customKeySort,...(o=t==null?void 0:t.sortFunctions)==null?void 0:o.value},sortRawFunctions:(s=t==null?void 0:t.sortRawFunctions)==null?void 0:s.value}):n.value})}}function La(e,n,a,t){const l=new Intl.Collator(a,{sensitivity:"accent",usage:"sort"});return e.map(o=>[o,t!=null&&t.transform?t.transform(o):o]).sort((o,s)=>{var u,d;for(let c=0;ci!=null?i.toString().toLocaleLowerCase():i),g!==b))return ne(g)&&ne(b)?0:ne(g)?-1:ne(b)?1:!isNaN(g)&&!isNaN(b)?Number(g)-Number(b):l.compare(g,b)}return 0}).map(o=>{let[s]=o;return s})}const dt=C({color:String,disableSort:Boolean,fixedHeader:Boolean,multiSort:Boolean,initialSortOrder:String,sortAscIcon:{type:N,default:"$sortAsc"},sortDescIcon:{type:N,default:"$sortDesc"},headerProps:{type:Object},sticky:Boolean,...me(),...Ie(),...Xt()},"VDataTableHeaders"),$e=R()({name:"VDataTableHeaders",props:dt(),setup(e,n){let{slots:a}=n;const{t}=te(),{toggleSort:l,sortBy:r,isSorted:o}=it(),{someSelected:s,allSelected:u,selectAll:d,showSelectAll:c}=he(),{columns:m,headers:v}=ge(),{loaderClasses:P}=Mt(e);function g(V,h){if(!(e.sticky||e.fixedHeader)&&!V.fixed)return;const D=typeof V.fixed=="string"?V.fixed:V.fixed?"start":"none";return{position:"sticky",left:D==="start"?E(V.fixedOffset):void 0,right:D==="end"?E(V.fixedEndOffset):void 0,top:e.sticky||e.fixedHeader?`calc(var(--v-table-header-height) * ${h})`:void 0}}function b(V,h){V.key==="Enter"&&!e.disableSort&&l(h,V)}function f(V){const h=r.value.find(D=>D.key===V.key);return!h&&e.initialSortOrder==="asc"||(h==null?void 0:h.order)==="asc"?e.sortAscIcon:e.sortDescIcon}const{backgroundColorClasses:k,backgroundColorStyles:i}=jt(()=>e.color),{displayClasses:I,mobile:x}=ke(e),y=p(()=>({headers:v.value,columns:m.value,toggleSort:l,isSorted:o,sortBy:r.value,someSelected:s.value,allSelected:u.value,selectAll:d,getSortIcon:f})),S=p(()=>["v-data-table__th",{"v-data-table__th--sticky":e.sticky||e.fixedHeader},I.value,P.value]),_=V=>{let{column:h,x:D,y:A}=V;const L=h.key==="data-table-select"||h.key==="data-table-expand",X=h.key==="data-table-group"&&h.width===0&&!h.title,q=O(e.headerProps??{},h.headerProps??{});return T(ee,O({tag:"th",align:h.align,class:[{"v-data-table__th--sortable":h.sortable&&!e.disableSort,"v-data-table__th--sorted":o(h),"v-data-table__th--fixed":h.fixed},...S.value],style:{width:E(h.width),minWidth:E(h.minWidth),maxWidth:E(h.maxWidth),...g(h,A)},colspan:h.colspan,rowspan:h.rowspan,fixed:h.fixed,nowrap:h.nowrap,lastFixed:h.lastFixed,firstFixedEnd:h.firstFixedEnd,noPadding:L,empty:X,tabindex:h.sortable?0:void 0,onClick:h.sortable?H=>l(h,H):void 0,onKeydown:h.sortable?H=>b(H,h):void 0},q),{default:()=>{var J;const H=`header.${h.key}`,U={column:h,selectAll:d,isSorted:o,toggleSort:l,sortBy:r.value,someSelected:s.value,allSelected:u.value,getSortIcon:f};return a[H]?a[H](U):X?"":h.key==="data-table-select"?((J=a["header.data-table-select"])==null?void 0:J.call(a,U))??(c.value&&T(de,{color:e.color,density:e.density,modelValue:u.value,indeterminate:s.value&&!u.value,"onUpdate:modelValue":d},null)):w("div",{class:"v-data-table-header__content"},[w("span",null,[h.title]),h.sortable&&!e.disableSort&&T(Ee,{key:"icon",class:"v-data-table-header__sort-icon",icon:f(h)},null),e.multiSort&&o(h)&&w("div",{key:"badge",class:j(["v-data-table-header__sort-badge",...k.value]),style:ve(i.value)},[r.value.findIndex(be=>be.key===h.key)+1])])}})},F=()=>{const V=p(()=>m.value.filter(D=>(D==null?void 0:D.sortable)&&!e.disableSort)),h=m.value.find(D=>D.key==="data-table-select");return T(ee,O({tag:"th",class:[...S.value],colspan:v.value.length+1},e.headerProps),{default:()=>[w("div",{class:"v-data-table-header__content"},[T(Je,{chips:!0,color:e.color,class:"v-data-table__td-sort-select",clearable:!0,density:"default",items:V.value,label:t("$vuetify.dataTable.sortBy"),multiple:e.multiSort,variant:"underlined","onClick:clear":()=>r.value=[]},{append:h?()=>T(de,{color:e.color,density:"compact",modelValue:u.value,indeterminate:s.value&&!u.value,"onUpdate:modelValue":()=>d(!u.value)},null):void 0,chip:D=>{var A;return T(fa,{onClick:(A=D.item.raw)!=null&&A.sortable?()=>l(D.item.raw):void 0,onMousedown:L=>{L.preventDefault(),L.stopPropagation()}},{default:()=>[D.item.title,T(Ee,{class:j(["v-data-table__td-sort-icon",o(D.item.raw)&&"v-data-table__td-sort-icon-active"]),icon:f(D.item.raw),size:"small"},null)]})}})])]})};W(()=>x.value?w("tr",null,[T(F,null,null)]):w(Q,null,[a.headers?a.headers(y.value):v.value.map((V,h)=>w("tr",null,[V.map((D,A)=>T(_,{column:D,x:A,y:h},null))])),e.loading&&w("tr",{class:"v-data-table-progress"},[w("th",{colspan:m.value.length},[T(Yt,{name:"v-data-table-progress",absolute:!0,active:!0,color:typeof e.loading=="boolean"||e.loading==="true"?e.color:e.loading,indeterminate:!0},{default:a.loader})])])]))}}),Ga=C({groupBy:{type:Array,default:()=>[]}},"DataTable-group"),ct=Symbol.for("vuetify:data-table-group");function Ma(e){return{groupBy:z(e,"groupBy")}}function ja(e){const{disableSort:n,groupBy:a,sortBy:t}=e,l=M(new Set),r=p(()=>a.value.map(c=>({...c,order:c.order??!1})).concat(n!=null&&n.value?[]:t.value));function o(c){return l.value.has(c.id)}function s(c){const m=new Set(l.value);o(c)?m.delete(c.id):m.add(c.id),l.value=m}function u(c){function m(v){const P=[];for(const g of v.items)"type"in g&&g.type==="group"?P.push(...m(g)):P.push(g);return[...new Set(P)]}return m({items:c})}const d={sortByWithGroups:r,toggleGroup:s,opened:l,groupBy:a,extractRows:u,isGroupOpen:o};return K(ct,d),d}function ft(){const e=Y(ct);if(!e)throw new Error("Missing group!");return e}function Ya(e,n){if(!e.length)return[];const a=new Map;for(const t of e){const l=ue(t.raw,n);a.has(l)||a.set(l,[]),a.get(l).push(t)}return a}function vt(e,n){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,t=arguments.length>3&&arguments[3]!==void 0?arguments[3]:"root";if(!n.length)return[];const l=Ya(e,n[0]),r=[],o=n.slice(1);return l.forEach((s,u)=>{const d=n[0],c=`${t}_${d}_${u}`;r.push({depth:a,id:c,key:d,value:u,items:o.length?vt(s,o,a+1,c):s,type:"group"})}),r}function mt(e,n,a){const t=[];for(const l of e)"type"in l&&l.type==="group"?(l.value!=null&&t.push(l),(n.has(l.id)||l.value==null)&&(t.push(...mt(l.items,n,a)),a&&t.push({...l,type:"group-summary"}))):t.push(l);return t}function Xa(e,n,a,t){return{flatItems:p(()=>{if(!n.value.length)return e.value;const r=vt(e.value,n.value.map(o=>o.key));return mt(r,a.value,zt(t))})}}const gt=C({item:{type:Object,required:!0},groupCollapseIcon:{type:N,default:"$tableGroupCollapse"},groupExpandIcon:{type:N,default:"$tableGroupExpand"},...me()},"VDataTableGroupHeaderRow"),za=R()({name:"VDataTableGroupHeaderRow",props:gt(),setup(e,n){let{slots:a}=n;const{isGroupOpen:t,toggleGroup:l,extractRows:r}=ft(),{isSelected:o,isSomeSelected:s,select:u}=he(),{columns:d}=ge(),c=p(()=>r([e.item])),m=B(()=>d.value.length-(d.value.some(v=>v.key==="data-table-select")?1:0));return()=>w("tr",{class:"v-data-table-group-header-row",style:{"--v-data-table-group-header-row-depth":e.item.depth}},[d.value.map(v=>{var P,g;if(v.key==="data-table-group"){const b=t(e.item)?e.groupCollapseIcon:e.groupExpandIcon,f=()=>l(e.item);return((P=a["data-table-group"])==null?void 0:P.call(a,{item:e.item,count:c.value.length,props:{icon:b,onClick:f}}))??T(ee,{class:"v-data-table-group-header-row__column",colspan:m.value},{default:()=>[T(ie,{size:"small",variant:"text",icon:b,onClick:f},null),w("span",null,[e.item.value]),w("span",null,[Fe("("),c.value.length,Fe(")")])]})}else if(v.key==="data-table-select"){const b=c.value.filter(I=>I.selectable),f=b.length>0&&o(b),k=s(b)&&!f,i=I=>u(b,I);return((g=a["data-table-select"])==null?void 0:g.call(a,{props:{modelValue:f,indeterminate:k,"onUpdate:modelValue":i}}))??T(ee,{class:"v-data-table__td--select-row",noPadding:!0},{default:()=>[T(de,{density:e.density,disabled:b.length===0,modelValue:f,indeterminate:k,"onUpdate:modelValue":i},null)]})}return""})])}}),Ka=C({expandOnClick:Boolean,showExpand:Boolean,expanded:{type:Array,default:()=>[]}},"DataTable-expand"),ht=Symbol.for("vuetify:datatable:expanded");function qa(e){const n=B(()=>e.expandOnClick),a=z(e,"expanded",e.expanded,s=>new Set(s),s=>[...s.values()]);function t(s,u){const d=new Set(a.value),c=le(s.value);if(u)d.add(c);else{const m=[...a.value].find(v=>le(v)===c);d.delete(m)}a.value=d}function l(s){const u=le(s.value);return[...a.value].some(d=>le(d)===u)}function r(s){t(s,!l(s))}const o={expand:t,expanded:a,expandOnClick:n,isExpanded:l,toggleExpand:r};return K(ht,o),o}function bt(){const e=Y(ht);if(!e)throw new Error("foo");return e}const yt=C({color:String,index:Number,item:Object,cellProps:[Object,Function],collapseIcon:{type:N,default:"$collapse"},expandIcon:{type:N,default:"$expand"},onClick:xe(),onContextmenu:xe(),onDblclick:xe(),...me(),...Ie()},"VDataTableRow"),Ua=R()({name:"VDataTableRow",props:yt(),setup(e,n){let{slots:a}=n;const{displayClasses:t,mobile:l}=ke(e,"v-data-table__tr"),{isSelected:r,toggleSelect:o,someSelected:s,allSelected:u,selectAll:d}=he(),{isExpanded:c,toggleExpand:m}=bt(),{toggleSort:v,sortBy:P,isSorted:g}=it(),{columns:b}=ge();W(()=>w("tr",{class:j(["v-data-table__tr",{"v-data-table__tr--clickable":!!(e.onClick||e.onContextmenu||e.onDblclick)},t.value]),onClick:e.onClick,onContextmenu:e.onContextmenu,onDblclick:e.onDblclick},[e.item&&b.value.map((f,k)=>{const i=e.item,I=`item.${f.key}`,x=`header.${f.key}`,y={index:e.index,item:i.raw,internalItem:i,value:ue(i.columns,f.key),column:f,isSelected:r,toggleSelect:o,isExpanded:c,toggleExpand:m},S={column:f,selectAll:d,isSorted:g,toggleSort:v,sortBy:P.value,someSelected:s.value,allSelected:u.value,getSortIcon:()=>""},_=typeof e.cellProps=="function"?e.cellProps({index:y.index,item:y.item,internalItem:y.internalItem,value:y.value,column:f}):e.cellProps,F=typeof f.cellProps=="function"?f.cellProps({index:y.index,item:y.item,internalItem:y.internalItem,value:y.value}):f.cellProps,V=f.key==="data-table-select"||f.key==="data-table-expand",h=f.key==="data-table-group"&&f.width===0&&!f.title;return T(ee,O({align:f.align,indent:f.indent,class:{"v-data-table__td--expanded-row":f.key==="data-table-expand","v-data-table__td--select-row":f.key==="data-table-select"},fixed:f.fixed,fixedOffset:f.fixedOffset,fixedEndOffset:f.fixedEndOffset,lastFixed:f.lastFixed,firstFixedEnd:f.firstFixedEnd,maxWidth:l.value?void 0:f.maxWidth,noPadding:V,empty:h,nowrap:f.nowrap,width:l.value?void 0:f.width},_,F),{default:()=>{var A,L,X,q;if(f.key==="data-table-select")return((A=a["item.data-table-select"])==null?void 0:A.call(a,{...y,props:{color:e.color,disabled:!i.selectable,modelValue:r([i]),onClick:oe(()=>o(i),["stop"])}}))??T(de,{color:e.color,disabled:!i.selectable,density:e.density,modelValue:r([i]),onClick:oe(H=>o(i,e.index,H),["stop"])},null);if(f.key==="data-table-expand")return((L=a["item.data-table-expand"])==null?void 0:L.call(a,{...y,props:{icon:c(i)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:oe(()=>m(i),["stop"])}}))??T(ie,{icon:c(i)?e.collapseIcon:e.expandIcon,size:"small",variant:"text",onClick:oe(()=>m(i),["stop"])},null);if(a[I]&&!l.value)return a[I](y);const D=Kt(y.value);return l.value?w(Q,null,[w("div",{class:"v-data-table__td-title"},[((X=a[x])==null?void 0:X.call(a,S))??f.title]),w("div",{class:"v-data-table__td-value"},[((q=a[I])==null?void 0:q.call(a,y))??D])]):D}})})]))}}),xt=C({color:String,loading:[Boolean,String],loadingText:{type:String,default:"$vuetify.dataIterator.loadingText"},hideNoData:Boolean,items:{type:Array,default:()=>[]},noDataText:{type:String,default:"$vuetify.noDataText"},rowProps:[Object,Function],cellProps:[Object,Function],...Se(yt(),["collapseIcon","expandIcon","density"]),...Se(gt(),["groupCollapseIcon","groupExpandIcon","density"]),...Ie()},"VDataTableRows"),Ne=R()({name:"VDataTableRows",inheritAttrs:!1,props:xt(),setup(e,n){let{attrs:a,slots:t}=n;const{columns:l}=ge(),{expandOnClick:r,toggleExpand:o,isExpanded:s}=bt(),{isSelected:u,toggleSelect:d}=he(),{toggleGroup:c,isGroupOpen:m}=ft(),{t:v}=te(),{mobile:P}=ke(e);return W(()=>{var b,f;const g=Se(e,["groupCollapseIcon","groupExpandIcon","density"]);return e.loading&&(!e.items.length||t.loading)?w("tr",{class:"v-data-table-rows-loading",key:"loading"},[w("td",{colspan:l.value.length},[((b=t.loading)==null?void 0:b.call(t))??v(e.loadingText)])]):!e.loading&&!e.items.length&&!e.hideNoData?w("tr",{class:"v-data-table-rows-no-data",key:"no-data"},[w("td",{colspan:l.value.length},[((f=t["no-data"])==null?void 0:f.call(t))??v(e.noDataText)])]):w(Q,null,[e.items.map((k,i)=>{var y,S;if(k.type==="group"){const _={index:i,item:k,columns:l.value,isExpanded:s,toggleExpand:o,isSelected:u,toggleSelect:d,toggleGroup:c,isGroupOpen:m};return t["group-header"]?t["group-header"](_):T(za,O({key:`group-header_${k.id}`,item:k},Re(a,":groupHeader",()=>_),g),t)}if(k.type==="group-summary"){const _={index:i,item:k,columns:l.value,toggleGroup:c};return((y=t["group-summary"])==null?void 0:y.call(t,_))??""}const I={index:k.virtualIndex??i,item:k.raw,internalItem:k,columns:l.value,isExpanded:s,toggleExpand:o,isSelected:u,toggleSelect:d},x={...I,props:O({key:`item_${k.key??k.index}`,onClick:r.value?()=>{o(k)}:void 0,index:i,item:k,color:e.color,cellProps:e.cellProps,collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,density:e.density,mobile:P.value},Re(a,":row",()=>I),typeof e.rowProps=="function"?e.rowProps({item:I.item,index:I.index,internalItem:I.internalItem}):e.rowProps)};return w(Q,{key:x.props.key},[t.item?t.item(x):T(Ua,x.props,t),s(k)&&((S=t["expanded-row"])==null?void 0:S.call(t,I))])})])}),{}}}),St=C({fixedHeader:Boolean,fixedFooter:Boolean,height:[Number,String],hover:Boolean,striped:{type:String,default:null,validator:e=>["even","odd"].includes(e)},...Te(),...me(),...Ke(),...ze()},"VTable"),We=R()({name:"VTable",props:St(),setup(e,n){let{slots:a,emit:t}=n;const{themeClasses:l}=Xe(e),{densityClasses:r}=qt(e);return W(()=>T(e.tag,{class:j(["v-table",{"v-table--fixed-height":!!e.height,"v-table--fixed-header":e.fixedHeader,"v-table--fixed-footer":e.fixedFooter,"v-table--has-top":!!a.top,"v-table--has-bottom":!!a.bottom,"v-table--hover":e.hover,"v-table--striped-even":e.striped==="even","v-table--striped-odd":e.striped==="odd"},l.value,r.value,e.class]),style:ve(e.style)},{default:()=>{var o,s,u;return[(o=a.top)==null?void 0:o.call(a),a.default?w("div",{class:"v-table__wrapper",style:{height:E(e.height)}},[w("table",null,[a.default()])]):(s=a.wrapper)==null?void 0:s.call(a),(u=a.bottom)==null?void 0:u.call(a)]}})),{}}}),Ja=C({items:{type:Array,default:()=>[]},itemValue:{type:[String,Array,Function],default:"id"},itemSelectable:{type:[String,Array,Function],default:null},rowProps:[Object,Function],cellProps:[Object,Function],returnObject:Boolean},"DataTable-items");function Qa(e,n,a,t){const l=e.returnObject?n:re(n,e.itemValue),r=re(n,e.itemSelectable,!0),o=t.reduce((s,u)=>(u.key!=null&&(s[u.key]=re(n,u.value)),s),{});return{type:"item",key:e.returnObject?re(n,e.itemValue):l,index:a,value:l,selectable:r,columns:o,raw:n}}function Za(e,n,a){return n.map((t,l)=>Qa(e,t,l,a))}function en(e,n){return{items:p(()=>Za(e,e.items,n.value))}}function tn(e){let{page:n,itemsPerPage:a,sortBy:t,groupBy:l,search:r}=e;const o=je("VDataTable"),s=()=>({page:n.value,itemsPerPage:a.value,sortBy:t.value,groupBy:l.value,search:r.value});let u=null;ce(s,d=>{Ye(u,d)||(u&&u.search!==d.search&&(n.value=1),o.emit("update:options",d),u=d)},{deep:!0,immediate:!0})}const an=C({...xt(),hideDefaultBody:Boolean,hideDefaultFooter:Boolean,hideDefaultHeader:Boolean,width:[String,Number],search:String,...Ka(),...Ga(),...Ta(),...Ja(),...Oa(),...Ra(),...fe(dt(),["multiSort","initialSortOrder"]),...St()},"DataTable"),nn=C({...Sa(),...an(),...ca(),...Ze()},"VDataTable"),vn=R()({name:"VDataTable",props:nn(),emits:{"update:modelValue":e=>!0,"update:page":e=>!0,"update:itemsPerPage":e=>!0,"update:sortBy":e=>!0,"update:options":e=>!0,"update:groupBy":e=>!0,"update:expanded":e=>!0,"update:currentItems":e=>!0},setup(e,n){let{attrs:a,slots:t}=n;const{groupBy:l}=Ma(e),{initialSortOrder:r,sortBy:o,multiSort:s,mustSort:u}=Ha(e),{page:d,itemsPerPage:c}=wa(e),{disableSort:m}=Ut(e),{columns:v,headers:P,sortFunctions:g,sortRawFunctions:b,filterFunctions:f}=Ba(e,{groupBy:l,showSelect:B(()=>e.showSelect),showExpand:B(()=>e.showExpand)}),{items:k}=en(e,v),i=B(()=>e.search),{filteredItems:I}=da(e,k,i,{transform:G=>G.columns,customKeyFilter:f}),{toggleSort:x}=Na({initialSortOrder:r,sortBy:o,multiSort:s,mustSort:u,page:d}),{sortByWithGroups:y,opened:S,extractRows:_,isGroupOpen:F,toggleGroup:V}=ja({groupBy:l,sortBy:o,disableSort:m}),{sortedItems:h}=Wa(e,I,y,{transform:G=>({...G.raw,...G.columns}),sortFunctions:g,sortRawFunctions:b}),{flatItems:D}=Xa(h,l,S,()=>!!t["group-summary"]),A=p(()=>D.value.length),{startIndex:L,stopIndex:X,pageCount:q,setItemsPerPage:H}=Pa({page:d,itemsPerPage:c,itemsLength:A}),{paginatedItems:U}=Ia({items:D,startIndex:L,stopIndex:X,itemsPerPage:c}),J=p(()=>_(U.value)),{isSelected:be,select:Tt,selectAll:pt,toggleSelect:Vt,someSelected:Dt,allSelected:_t}=Aa(e,{allItems:k,currentPage:J}),{isExpanded:Ct,toggleExpand:Bt}=qa(e);tn({page:d,itemsPerPage:c,sortBy:o,groupBy:l,search:i}),Jt({VDataTableRows:{hideNoData:B(()=>e.hideNoData),noDataText:B(()=>e.noDataText),loading:B(()=>e.loading),loadingText:B(()=>e.loadingText)}});const $=p(()=>({page:d.value,itemsPerPage:c.value,sortBy:o.value,pageCount:q.value,toggleSort:x,setItemsPerPage:H,someSelected:Dt.value,allSelected:_t.value,isSelected:be,select:Tt,selectAll:pt,toggleSelect:Vt,isExpanded:Ct,toggleExpand:Bt,isGroupOpen:F,toggleGroup:V,items:J.value.map(G=>G.raw),internalItems:J.value,groupedItems:U.value,columns:v.value,headers:P.value}));return W(()=>{const G=He.filterProps(e),Et=$e.filterProps(fe(e,["multiSort"])),Ft=Ne.filterProps(e),Ot=We.filterProps(e);return T(We,O({class:["v-data-table",{"v-data-table--show-select":e.showSelect,"v-data-table--loading":e.loading},e.class],style:e.style},Ot,{fixedHeader:e.fixedHeader||e.sticky}),{top:()=>{var Z;return(Z=t.top)==null?void 0:Z.call(t,$.value)},default:()=>{var Z,Ve,De,_e,Ce,Be;return t.default?t.default($.value):w(Q,null,[(Z=t.colgroup)==null?void 0:Z.call(t,$.value),!e.hideDefaultHeader&&w("thead",{key:"thead"},[T($e,O(Et,{multiSort:!!e.multiSort}),t)]),(Ve=t.thead)==null?void 0:Ve.call(t,$.value),!e.hideDefaultBody&&w("tbody",null,[(De=t["body.prepend"])==null?void 0:De.call(t,$.value),t.body?t.body($.value):T(Ne,O(a,Ft,{items:U.value}),t),(_e=t["body.append"])==null?void 0:_e.call(t,$.value)]),(Ce=t.tbody)==null?void 0:Ce.call(t,$.value),(Be=t.tfoot)==null?void 0:Be.call(t,$.value)])},bottom:()=>t.bottom?t.bottom($.value):!e.hideDefaultFooter&&w(Q,null,[T(Qt,null,null),T(He,G,{prepend:t["footer.prepend"]})])})}),{}}}),ln=Symbol.for("vuetify:v-tabs"),wt=Symbol.for("vuetify:v-window"),Pt=Symbol.for("vuetify:v-window-group"),kt=C({continuous:Boolean,nextIcon:{type:[Boolean,String,Function,Object],default:"$next"},prevIcon:{type:[Boolean,String,Function,Object],default:"$prev"},reverse:Boolean,showArrows:{type:[Boolean,String],validator:e=>typeof e=="boolean"||e==="hover"},verticalArrows:[Boolean,String],touch:{type:[Object,Boolean],default:void 0},direction:{type:String,default:"horizontal"},modelValue:null,disabled:Boolean,selectedClass:{type:String,default:"v-window-item--active"},mandatory:{type:[Boolean,String],default:"force"},crossfade:Boolean,transitionDuration:Number,...Te(),...Ke(),...ze()},"VWindow"),Le=R()({name:"VWindow",directives:{vTouch:we},props:kt(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:a}=n;const{themeClasses:t}=Xe(e),{isRtl:l}=Zt(),{t:r}=te(),o=ea(e,Pt),s=M(),u=p(()=>l.value?!e.reverse:e.reverse),d=se(!1),c=p(()=>{if(e.crossfade)return"v-window-crossfade-transition";const x=e.direction==="vertical"?"y":"x",S=(u.value?!d.value:d.value)?"-reverse":"";return`v-window-${x}${S}-transition`}),m=se(0),v=M(void 0),P=p(()=>o.items.value.findIndex(x=>o.selected.value.includes(x.id)));ce(P,(x,y)=>{let S;const _={left:0,top:0};Oe&&y>=0&&(S=ta(s.value),_.left=S==null?void 0:S.scrollLeft,_.top=S==null?void 0:S.scrollTop);const F=o.items.value.length,V=F-1;F<=2?d.value=x{if(!Oe||!S)return;S.scrollTop!==_.top&&S.scrollTo({..._,behavior:"instant"}),requestAnimationFrame(()=>{if(!S)return;S.scrollTop!==_.top&&S.scrollTo({..._,behavior:"instant"})})})},{flush:"sync"}),K(wt,{transition:c,isReversed:d,transitionCount:m,transitionHeight:v,rootRef:s});const g=B(()=>e.continuous||P.value!==0),b=B(()=>e.continuous||P.value!==o.items.value.length-1);function f(){g.value&&o.prev()}function k(){b.value&&o.next()}const i=p(()=>{const x=[],y={icon:l.value?e.nextIcon:e.prevIcon,class:`v-window__${u.value?"right":"left"}`,onClick:o.prev,"aria-label":r("$vuetify.carousel.prev")};x.push(g.value?a.prev?a.prev({props:y}):T(ie,y,null):w("div",null,null));const S={icon:l.value?e.prevIcon:e.nextIcon,class:`v-window__${u.value?"left":"right"}`,onClick:o.next,"aria-label":r("$vuetify.carousel.next")};return x.push(b.value?a.next?a.next({props:S}):T(ie,S,null):w("div",null,null)),x}),I=p(()=>e.touch===!1?e.touch:{...{left:()=>{u.value?f():k()},right:()=>{u.value?k():f()},start:y=>{let{originalEvent:S}=y;S.stopPropagation()}},...e.touch===!0?{}:e.touch});return W(()=>Ue(T(e.tag,{ref:s,class:j(["v-window",{"v-window--show-arrows-on-hover":e.showArrows==="hover","v-window--vertical-arrows":!!e.verticalArrows,"v-window--crossfade":!!e.crossfade},t.value,e.class]),style:ve([e.style,{"--v-window-transition-duration":aa()?null:E(e.transitionDuration,"ms")}])},{default:()=>{var x,y;return[w("div",{class:"v-window__container",style:{height:v.value}},[(x=a.default)==null?void 0:x.call(a,{group:o}),e.showArrows!==!1&&w("div",{class:j(["v-window__controls",{"v-window__controls--left":e.verticalArrows==="left"||e.verticalArrows===!0},{"v-window__controls--right":e.verticalArrows==="right"}])},[i.value])]),(y=a.additional)==null?void 0:y.call(a,{group:o})]}}),[[we,I.value]])),{group:o}}}),on=C({...fe(kt(),["continuous","nextIcon","prevIcon","showArrows","touch","mandatory"])},"VTabsWindow"),mn=R()({name:"VTabsWindow",props:on(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:a}=n;const t=Y(ln,null),l=z(e,"modelValue"),r=p({get(){var o;return l.value!=null||!t?l.value:(o=t.items.value.find(s=>t.selected.value.includes(s.id)))==null?void 0:o.value},set(o){l.value=o}});return W(()=>{const o=Le.filterProps(e);return T(Le,O({_as:"VTabsWindow"},o,{modelValue:r.value,"onUpdate:modelValue":s=>r.value=s,class:["v-tabs-window",e.class],style:e.style,mandatory:!1,touch:!1}),a)}),{}}}),It=C({reverseTransition:{type:[Boolean,String],default:void 0},transition:{type:[Boolean,String],default:void 0},...Te(),...ia(),...ua()},"VWindowItem"),Ge=R()({name:"VWindowItem",directives:{vTouch:we},props:It(),emits:{"group:selected":e=>!0},setup(e,n){let{slots:a}=n;const t=Y(wt),l=na(e,Pt),{isBooted:r}=la();if(!t||!l)throw new Error("[Vuetify] VWindowItem must be used inside VWindow");const o=se(!1),s=p(()=>r.value&&(t.isReversed.value?e.reverseTransition!==!1:e.transition!==!1));function u(){!o.value||!t||(o.value=!1,t.transitionCount.value>0&&(t.transitionCount.value-=1,t.transitionCount.value===0&&(t.transitionHeight.value=void 0)))}function d(){var g;o.value||!t||(o.value=!0,t.transitionCount.value===0&&(t.transitionHeight.value=E((g=t.rootRef.value)==null?void 0:g.clientHeight)),t.transitionCount.value+=1)}function c(){u()}function m(g){o.value&&qe(()=>{!s.value||!o.value||!t||(t.transitionHeight.value=E(g.clientHeight))})}const v=p(()=>{const g=t.isReversed.value?e.reverseTransition:e.transition;return s.value?{name:typeof g!="string"?t.transition.value:g,onBeforeEnter:d,onAfterEnter:u,onEnterCancelled:c,onBeforeLeave:d,onAfterLeave:u,onLeaveCancelled:c,onEnter:m}:!1}),{hasContent:P}=oa(e,l.isSelected);return W(()=>T(sa,{transition:v.value,disabled:!r.value},{default:()=>{var g;return[Ue(w("div",{class:j(["v-window-item",l.selectedClass.value,e.class]),style:ve(e.style)},[P.value&&((g=a.default)==null?void 0:g.call(a))]),[[ra,l.isSelected.value]])]}})),{groupItem:l}}}),rn=C({...It()},"VTabsWindowItem"),gn=R()({name:"VTabsWindowItem",props:rn(),setup(e,n){let{slots:a}=n;return W(()=>{const t=Ge.filterProps(e);return T(Ge,O({_as:"VTabsWindowItem"},t,{class:["v-tabs-window-item",e.class],style:e.style}),a)}),{}}});export{ln as V,gn as a,mn as b,Le as c,Ge as d,vn as e,We as f}; diff --git a/assets/VTextField-C579e7l1.js b/assets/VTextField-DxxbesnN.js similarity index 99% rename from assets/VTextField-C579e7l1.js rename to assets/VTextField-DxxbesnN.js index c54f1bc..6d891c9 100644 --- a/assets/VTextField-C579e7l1.js +++ b/assets/VTextField-DxxbesnN.js @@ -1 +1 @@ -import{g as J,b as G,i as r,n as H,d as W,p as E,bj as ve,h as Z,b0 as q,aq as Le,c as C,E as ee,t as Ne,ax as he,aB as Ce,a$ as Ve,a3 as m,as as te,bi as xe,U as ke,cG as Ie,ar as ue,av as I,bO as Se,ae as X,a2 as K,az as se,bT as Oe,cH as ze,bm as oe,bY as Ue,cI as Ke,$ as je,Z as We,by as ge,aw as ne,ah as qe,aG as He,bo as _e,b7 as Be,e as Je,a_ as ae,aL as Ge,f as Ye,aK as Xe,I as fe,J as Pe,c3 as Ze,be as Qe,aC as pe,cb as ea,cJ as aa,aD as la,aE as ta,aJ as na,c4 as ia,aW as sa,cE as ua,F as ie,bk as oa,c5 as ra,b5 as me,at as da,aA as we,cK as ca,au as va}from"./index-BUM0TY0E.js";const fa=E({text:String,onClick:q(),...Z(),...ve()},"VLabel"),ga=J()({name:"VLabel",props:fa(),setup(e,n){let{slots:u}=n;return G(()=>{var t;return r("label",{class:W(["v-label",{"v-label--clickable":!!e.onClick},e.class]),style:H(e.style),onClick:e.onClick},[e.text,(t=u.default)==null?void 0:t.call(u)])}),{}}});function Fe(e){const{t:n}=Le();function u(t){let{name:l,color:a,...y}=t;const b={prepend:"prependAction",prependInner:"prependAction",append:"appendAction",appendInner:"appendAction",clear:"clear"}[l],x=e[`onClick:${l}`];function S(s){s.key!=="Enter"&&s.key!==" "||(s.preventDefault(),s.stopPropagation(),he(x,new PointerEvent("click",s)))}const o=x&&b?n(`$vuetify.input.${b}`,e.label??""):void 0;return C(Ne,ee({icon:e[`${l}Icon`],"aria-label":o,onClick:x,onKeydown:S,color:a},y),null)}return{InputIcon:u}}const ma=E({active:Boolean,color:String,messages:{type:[Array,String],default:()=>[]},...Z(),...xe({transition:{component:ke,leaveAbsolute:!0,group:!0}})},"VMessages"),ya=J()({name:"VMessages",props:ma(),setup(e,n){let{slots:u}=n;const t=m(()=>te(e.messages)),{textColorClasses:l,textColorStyles:a}=Ce(()=>e.color);return G(()=>C(Ve,{transition:e.transition,tag:"div",class:W(["v-messages",l.value,e.class]),style:H([a.value,e.style])},{default:()=>[e.active&&t.value.map((y,b)=>r("div",{class:"v-messages__message",key:`${b}-${t.value}`},[u.message?u.message({message:y}):y]))]})),{}}}),$e=E({focused:Boolean,"onUpdate:focused":q()},"focus");function De(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ie();const u=ue(e,"focused"),t=I(()=>({[`${n}--focused`]:u.value}));function l(){u.value=!0}function a(){u.value=!1}return{focusClasses:t,isFocused:u,focus:l,blur:a}}const Me=Symbol.for("vuetify:form"),Ma=E({disabled:Boolean,fastFail:Boolean,readonly:Boolean,modelValue:{type:Boolean,default:null},validateOn:{type:String,default:"input"}},"form");function Aa(e){const n=ue(e,"modelValue"),u=I(()=>e.disabled),t=I(()=>e.readonly),l=se(!1),a=K([]),y=K([]);async function b(){const o=[];let s=!0;y.value=[],l.value=!0;for(const d of a.value){const c=await d.validate();if(c.length>0&&(s=!1,o.push({id:d.id,errorMessages:c})),!s&&e.fastFail)break}return y.value=o,l.value=!1,{valid:s,errors:y.value}}function x(){a.value.forEach(o=>o.reset())}function S(){a.value.forEach(o=>o.resetValidation())}return X(a,()=>{let o=0,s=0;const d=[];for(const c of a.value)c.isValid===!1?(s++,d.push({id:c.id,errorMessages:c.errorMessages})):c.isValid===!0&&o++;y.value=d,n.value=s>0?!1:o===a.value.length?!0:null},{deep:!0,flush:"post"}),Oe(Me,{register:o=>{let{id:s,vm:d,validate:c,reset:V,resetValidation:P}=o;a.value.some(h=>h.id===s),a.value.push({id:s,validate:c,reset:V,resetValidation:P,vm:ze(d),isValid:null,errorMessages:[]})},unregister:o=>{a.value=a.value.filter(s=>s.id!==o)},update:(o,s,d)=>{const c=a.value.find(V=>V.id===o);c&&(c.isValid=s,c.errorMessages=d)},isDisabled:u,isReadonly:t,isValidating:l,isValid:n,items:a,validateOn:I(()=>e.validateOn)}),{errors:y,isDisabled:u,isReadonly:t,isValidating:l,isValid:n,items:a,validate:b,reset:x,resetValidation:S}}function ba(e){const n=Se(Me,null);return{...n,isReadonly:m(()=>!!((e==null?void 0:e.readonly)??(n==null?void 0:n.isReadonly.value))),isDisabled:m(()=>!!((e==null?void 0:e.disabled)??(n==null?void 0:n.isDisabled.value)))}}const ha=Symbol.for("vuetify:rules");function Ca(e){const n=Se(ha,null);if(!e){if(!n)throw new Error("Could not find Vuetify rules injection");return n.aliases}return(n==null?void 0:n.resolve(e))??I(e)}const Va=E({disabled:{type:Boolean,default:null},error:Boolean,errorMessages:{type:[Array,String],default:()=>[]},maxErrors:{type:[Number,String],default:1},name:String,label:String,readonly:{type:Boolean,default:null},rules:{type:Array,default:()=>[]},modelValue:null,validateOn:String,validationValue:null,...$e()},"validation");function xa(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ie(),u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:oe();const t=ue(e,"modelValue"),l=m(()=>e.validationValue===void 0?t.value:e.validationValue),a=ba(e),y=Ca(()=>e.rules),b=K([]),x=se(!0),S=m(()=>!!(te(t.value===""?null:t.value).length||te(l.value===""?null:l.value).length)),o=m(()=>{var i;return(i=e.errorMessages)!=null&&i.length?te(e.errorMessages).concat(b.value).slice(0,Math.max(0,Number(e.maxErrors))):b.value}),s=m(()=>{var $;let i=(e.validateOn??(($=a.validateOn)==null?void 0:$.value))||"input";i==="lazy"&&(i="input lazy"),i==="eager"&&(i="input eager");const f=new Set((i==null?void 0:i.split(" "))??[]);return{input:f.has("input"),blur:f.has("blur")||f.has("input")||f.has("invalid-input"),invalidInput:f.has("invalid-input"),lazy:f.has("lazy"),eager:f.has("eager")}}),d=m(()=>{var i;return e.error||(i=e.errorMessages)!=null&&i.length?!1:e.rules.length?x.value?b.value.length||s.value.lazy?null:!0:!b.value.length:!0}),c=se(!1),V=m(()=>({[`${n}--error`]:d.value===!1,[`${n}--dirty`]:S.value,[`${n}--disabled`]:a.isDisabled.value,[`${n}--readonly`]:a.isReadonly.value})),P=Ue("validation"),h=m(()=>e.name??qe(u));Ke(()=>{var i;(i=a.register)==null||i.call(a,{id:h.value,vm:P,validate:B,reset:L,resetValidation:k})}),je(()=>{var i;(i=a.unregister)==null||i.call(a,h.value)}),We(async()=>{var i;s.value.lazy||await B(!s.value.eager),(i=a.update)==null||i.call(a,h.value,d.value,o.value)}),ge(()=>s.value.input||s.value.invalidInput&&d.value===!1,()=>{X(l,()=>{if(l.value!=null)B();else if(e.focused){const i=X(()=>e.focused,f=>{f||B(),i()})}})}),ge(()=>s.value.blur,()=>{X(()=>e.focused,i=>{i||B()})}),X([d,o],()=>{var i;(i=a.update)==null||i.call(a,h.value,d.value,o.value)});async function L(){t.value=null,await ne(),await k()}async function k(){x.value=!0,s.value.lazy?b.value=[]:await B(!s.value.eager)}async function B(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;const f=[];c.value=!0;for(const $ of y.value){if(f.length>=Number(e.maxErrors??1))break;const v=await(typeof $=="function"?$:()=>$)(l.value);if(v!==!0){if(v!==!1&&typeof v!="string"){console.warn(`${v} is not a valid value. Rule functions must return boolean true or a string.`);continue}f.push(v||"")}}return b.value=f,c.value=!1,x.value=i,b.value}return{errorMessages:o,isDirty:S,isDisabled:a.isDisabled,isReadonly:a.isReadonly,isPristine:x,isValid:d,isValidating:c,reset:L,resetValidation:k,validate:B,validationClasses:V}}const Ae=E({id:String,appendIcon:ae,baseColor:String,centerAffix:{type:Boolean,default:!0},color:String,glow:Boolean,iconColor:[Boolean,String],prependIcon:ae,hideDetails:[Boolean,String],hideSpinButtons:Boolean,hint:String,persistentHint:Boolean,messages:{type:[Array,String],default:()=>[]},direction:{type:String,default:"horizontal",validator:e=>["horizontal","vertical"].includes(e)},"onClick:prepend":q(),"onClick:append":q(),...Z(),...Xe(),...Ge(Ye(),["maxWidth","minWidth","width"]),...ve(),...Va()},"VInput"),ye=J()({name:"VInput",props:{...Ae()},emits:{"update:modelValue":e=>!0},setup(e,n){let{attrs:u,slots:t,emit:l}=n;const{densityClasses:a}=He(e),{dimensionStyles:y}=Je(e),{themeClasses:b}=_e(e),{rtlClasses:x}=Be(),{InputIcon:S}=Fe(e),o=oe(),s=m(()=>e.id||`input-${o}`),{errorMessages:d,isDirty:c,isDisabled:V,isReadonly:P,isPristine:h,isValid:L,isValidating:k,reset:B,resetValidation:i,validate:f,validationClasses:$}=xa(e,"v-input",s),g=m(()=>{var _;return(_=e.errorMessages)!=null&&_.length||!h.value&&d.value.length?d.value:e.hint&&(e.persistentHint||e.focused)?e.hint:e.messages}),v=I(()=>g.value.length>0),w=I(()=>!e.hideDetails||e.hideDetails==="auto"&&(v.value||!!t.details)),N=m(()=>w.value?`${s.value}-messages`:void 0),T=m(()=>({id:s,messagesId:N,isDirty:c,isDisabled:V,isReadonly:P,isPristine:h,isValid:L,isValidating:k,hasDetails:w,reset:B,resetValidation:i,validate:f})),O=I(()=>e.error||e.disabled?void 0:e.focused?e.color:e.baseColor),A=I(()=>{if(e.iconColor)return e.iconColor===!0?O.value:e.iconColor});return G(()=>{var D,F;const _=!!(t.prepend||e.prependIcon),R=!!(t.append||e.appendIcon);return r("div",{class:W(["v-input",`v-input--${e.direction}`,{"v-input--center-affix":e.centerAffix,"v-input--focused":e.focused,"v-input--glow":e.glow,"v-input--hide-spin-buttons":e.hideSpinButtons},a.value,b.value,x.value,$.value,e.class]),style:H([y.value,e.style])},[_&&r("div",{key:"prepend",class:"v-input__prepend"},[t.prepend?t.prepend(T.value):e.prependIcon&&C(S,{key:"prepend-icon",name:"prepend",color:A.value},null)]),t.default&&r("div",{class:"v-input__control"},[(D=t.default)==null?void 0:D.call(t,T.value)]),R&&r("div",{key:"append",class:"v-input__append"},[t.append?t.append(T.value):e.appendIcon&&C(S,{key:"append-icon",name:"append",color:A.value},null)]),w.value&&r("div",{id:N.value,class:"v-input__details",role:"alert","aria-live":"polite"},[C(ya,{active:v.value,messages:g.value},{message:t.message}),(F=t.details)==null?void 0:F.call(t,T.value)])])}),{reset:B,resetValidation:i,validate:f,isValid:L,errorMessages:d}}}),ka=E({active:Boolean,disabled:Boolean,max:[Number,String],value:{type:[Number,String],default:0},...Z(),...xe({transition:{component:ke}})},"VCounter"),Ia=J()({name:"VCounter",functional:!0,props:ka(),setup(e,n){let{slots:u}=n;const t=I(()=>e.max?`${e.value} / ${e.max}`:String(e.value));return G(()=>C(Ve,{transition:e.transition},{default:()=>[fe(r("div",{class:W(["v-counter",{"text-error":e.max&&!e.disabled&&parseFloat(e.value)>parseFloat(e.max)},e.class]),style:H(e.style)},[u.default?u.default({counter:t.value,max:e.max,value:e.value}):t.value]),[[Pe,e.active]])]})),{}}}),Sa=E({floating:Boolean,...Z()},"VFieldLabel"),le=J()({name:"VFieldLabel",props:Sa(),setup(e,n){let{slots:u}=n;return G(()=>C(ga,{class:W(["v-field-label",{"v-field-label--floating":e.floating},e.class]),style:H(e.style)},u)),{}}}),_a=["underlined","outlined","filled","solo","solo-inverted","solo-filled","plain"],Re=E({appendInnerIcon:ae,bgColor:String,clearable:Boolean,clearIcon:{type:ae,default:"$clear"},active:Boolean,centerAffix:{type:Boolean,default:void 0},color:String,baseColor:String,dirty:Boolean,disabled:{type:Boolean,default:null},glow:Boolean,error:Boolean,flat:Boolean,iconColor:[Boolean,String],label:String,persistentClear:Boolean,prependInnerIcon:ae,reverse:Boolean,singleLine:Boolean,variant:{type:String,default:"filled",validator:e=>_a.includes(e)},"onClick:clear":q(),"onClick:appendInner":q(),"onClick:prependInner":q(),...Z(),...ra(),...oa(),...ve()},"VField"),be=J()({name:"VField",inheritAttrs:!1,props:{id:String,details:Boolean,labelId:String,...$e(),...Re()},emits:{"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,n){let{attrs:u,emit:t,slots:l}=n;const{themeClasses:a}=_e(e),{loaderClasses:y}=Ze(e),{focusClasses:b,isFocused:x,focus:S,blur:o}=De(e),{InputIcon:s}=Fe(e),{roundedClasses:d}=Qe(e),{rtlClasses:c}=Be(),V=I(()=>e.dirty||e.active),P=I(()=>!!(e.label||l.label)),h=I(()=>!e.singleLine&&P.value),L=oe(),k=m(()=>e.id||`input-${L}`),B=I(()=>e.details?`${k.value}-messages`:void 0),i=K(),f=K(),$=K(),g=m(()=>["plain","underlined"].includes(e.variant)),v=m(()=>e.error||e.disabled?void 0:V.value&&x.value?e.color:e.baseColor),w=m(()=>{if(!(!e.iconColor||e.glow&&!x.value))return e.iconColor===!0?v.value:e.iconColor}),{backgroundColorClasses:N,backgroundColorStyles:T}=pe(()=>e.bgColor),{textColorClasses:O,textColorStyles:A}=Ce(v);X(V,D=>{if(h.value&&!ea()){const F=i.value.$el,z=f.value.$el;requestAnimationFrame(()=>{const U=aa(F),M=z.getBoundingClientRect(),Y=M.x-U.x,j=M.y-U.y-(U.height/2-M.height/2),Q=M.width/.75,re=Math.abs(Q-U.width)>1?{maxWidth:na(Q)}:void 0,de=getComputedStyle(F),p=getComputedStyle(z),ce=parseFloat(de.transitionDuration)*1e3||150,Ee=parseFloat(p.getPropertyValue("--v-field-label-scale")),Te=p.getPropertyValue("color");F.style.visibility="visible",z.style.visibility="hidden",la(F,{transform:`translate(${Y}px, ${j}px) scale(${Ee})`,color:Te,...re},{duration:ce,easing:ta,direction:D?"normal":"reverse"}).finished.then(()=>{F.style.removeProperty("visibility"),z.style.removeProperty("visibility")})})}},{flush:"post"});const _=m(()=>({isActive:V,isFocused:x,controlRef:$,iconColor:w,blur:o,focus:S}));function R(D){D.target!==document.activeElement&&D.preventDefault()}return G(()=>{var Y;const D=e.variant==="outlined",F=!!(l["prepend-inner"]||e.prependInnerIcon),z=!!(e.clearable||l.clear)&&!e.disabled,U=!!(l["append-inner"]||e.appendInnerIcon||z),M=()=>l.label?l.label({..._.value,label:e.label,props:{for:k.value}}):e.label;return r("div",ee({class:["v-field",{"v-field--active":V.value,"v-field--appended":U,"v-field--center-affix":e.centerAffix??!g.value,"v-field--disabled":e.disabled,"v-field--dirty":e.dirty,"v-field--error":e.error,"v-field--glow":e.glow,"v-field--flat":e.flat,"v-field--has-background":!!e.bgColor,"v-field--persistent-clear":e.persistentClear,"v-field--prepended":F,"v-field--reverse":e.reverse,"v-field--single-line":e.singleLine,"v-field--no-label":!M(),[`v-field--variant-${e.variant}`]:!0},a.value,N.value,b.value,y.value,d.value,c.value,e.class],style:[T.value,e.style],onClick:R},u),[r("div",{class:"v-field__overlay"},null),C(ia,{name:"v-field",active:!!e.loading,color:e.error?"error":typeof e.loading=="string"?e.loading:e.color},{default:l.loader}),F&&r("div",{key:"prepend",class:"v-field__prepend-inner"},[l["prepend-inner"]?l["prepend-inner"](_.value):e.prependInnerIcon&&C(s,{key:"prepend-icon",name:"prependInner",color:w.value},null)]),r("div",{class:"v-field__field","data-no-activator":""},[["filled","solo","solo-inverted","solo-filled"].includes(e.variant)&&h.value&&C(le,{key:"floating-label",ref:f,class:W([O.value]),floating:!0,for:k.value,"aria-hidden":!V.value,style:H(A.value)},{default:()=>[M()]}),P.value&&C(le,{key:"label",ref:i,id:e.labelId,for:k.value,"aria-hidden":h.value&&V.value},{default:()=>[M()]}),((Y=l.default)==null?void 0:Y.call(l,{..._.value,props:{id:k.value,class:"v-field__input","aria-describedby":B.value},focus:S,blur:o}))??r("div",{id:k.value,class:"v-field__input","aria-describedby":B.value},null)]),z&&C(ua,{key:"clear"},{default:()=>[fe(r("div",{class:"v-field__clearable",onMousedown:j=>{j.preventDefault(),j.stopPropagation()}},[C(sa,{defaults:{VIcon:{icon:e.clearIcon}}},{default:()=>[l.clear?l.clear({..._.value,props:{onFocus:S,onBlur:o,onClick:e["onClick:clear"],tabindex:-1}}):C(s,{name:"clear",onFocus:S,onBlur:o,tabindex:-1},null)]})]),[[Pe,e.dirty]])]}),U&&r("div",{key:"append",class:"v-field__append-inner"},[l["append-inner"]?l["append-inner"](_.value):e.appendInnerIcon&&C(s,{key:"append-icon",name:"appendInner",color:w.value},null)]),r("div",{class:W(["v-field__outline",O.value]),style:H(A.value)},[D&&r(ie,null,[r("div",{class:"v-field__outline__start"},null),h.value&&r("div",{class:"v-field__outline__notch"},[C(le,{ref:f,floating:!0,for:k.value,"aria-hidden":!V.value},{default:()=>[M()]})]),r("div",{class:"v-field__outline__end"},null)]),g.value&&h.value&&C(le,{ref:f,floating:!0,for:k.value,"aria-hidden":!V.value},{default:()=>[M()]})])])}),{controlRef:$,fieldIconColor:w}}}),Ba=E({autocomplete:String},"autocomplete");function Pa(e){const n=oe(),u=se(0),t=I(()=>e.autocomplete==="suppress"),l=I(()=>{if(e.name)return t.value?`${e.name}-${n}-${u.value}`:e.name}),a=I(()=>t.value?"off":e.autocomplete);return{isSuppressing:t,fieldAutocomplete:a,fieldName:l,update:()=>u.value=new Date().getTime()}}function wa(e){function n(u,t){if(!e.autofocus||!u)return;const l=t[0].target,a=l.matches("input,textarea")?l:l.querySelector("input,textarea");a==null||a.focus()}return{onIntersect:n}}const Fa=["color","file","time","date","datetime-local","week","month"],$a=E({autofocus:Boolean,counter:[Boolean,Number,String],counterValue:[Number,Function],prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,suffix:String,role:String,type:{type:String,default:"text"},modelModifiers:Object,...Ba(),...we(Ae(),["direction"]),...Re()},"VTextField"),Ra=J()({name:"VTextField",directives:{vIntersect:me},inheritAttrs:!1,props:$a(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,n){let{attrs:u,emit:t,slots:l}=n;const a=ue(e,"modelValue"),{isFocused:y,focus:b,blur:x}=De(e),{onIntersect:S}=wa(e),o=m(()=>typeof e.counterValue=="function"?e.counterValue(a.value):typeof e.counterValue=="number"?e.counterValue:(a.value??"").toString().length),s=m(()=>{if(u.maxlength)return u.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),d=m(()=>["plain","underlined"].includes(e.variant)),c=K(),V=K(),P=K(),h=Pa(e),L=m(()=>Fa.includes(e.type)||e.persistentPlaceholder||y.value||e.active);function k(){h.isSuppressing.value&&h.update(),y.value||b(),ne(()=>{var g;P.value!==document.activeElement&&((g=P.value)==null||g.focus())})}function B(g){t("mousedown:control",g),g.target!==P.value&&(k(),g.preventDefault())}function i(g){t("click:control",g)}function f(g,v){g.stopPropagation(),k(),ne(()=>{v(),he(e["onClick:clear"],g)})}function $(g){var O;const v=g.target;if(!((O=e.modelModifiers)!=null&&O.trim&&["text","search","password","tel","url"].includes(e.type))){a.value=v.value;return}const w=v.value,N=v.selectionStart,T=v.selectionEnd;a.value=w,ne(()=>{let A=0;w.trimStart().length===v.value.length&&(A=w.length-v.value.length),N!=null&&(v.selectionStart=N-A),T!=null&&(v.selectionEnd=T-A)})}return G(()=>{const g=!!(l.counter||e.counter!==!1&&e.counter!=null),v=!!(g||l.details),[w,N]=da(u),{modelValue:T,...O}=ye.filterProps(e),A=be.filterProps(e);return C(ye,ee({ref:c,modelValue:a.value,"onUpdate:modelValue":_=>a.value=_,class:["v-text-field",{"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-input--plain-underlined":d.value},e.class],style:e.style},w,O,{centerAffix:!d.value,focused:y.value}),{...l,default:_=>{let{id:R,isDisabled:D,isDirty:F,isReadonly:z,isValid:U,hasDetails:M,reset:Y}=_;return C(be,ee({ref:V,onMousedown:B,onClick:i,"onClick:clear":j=>f(j,Y),role:e.role},we(A,["onClick:clear"]),{id:R.value,labelId:`${R.value}-label`,active:L.value||F.value,dirty:F.value||e.dirty,disabled:D.value,focused:y.value,details:M.value,error:U.value===!1}),{...l,default:j=>{let{props:{class:Q,...re},controlRef:de}=j;const p=r("input",ee({ref:ce=>P.value=de.value=ce,value:a.value,onInput:$,autofocus:e.autofocus,readonly:z.value,disabled:D.value,name:h.fieldName.value,autocomplete:h.fieldAutocomplete.value,placeholder:e.placeholder,size:1,role:e.role,type:e.type,onFocus:b,onBlur:x,"aria-labelledby":`${R.value}-label`},re,N),null);return r(ie,null,[e.prefix&&r("span",{class:"v-text-field__prefix"},[r("span",{class:"v-text-field__prefix__text"},[e.prefix])]),fe(l.default?r("div",{class:W(Q),"data-no-activator":""},[l.default({id:R}),p]):ca(p,{class:Q}),[[me,S,null,{once:!0}]]),e.suffix&&r("span",{class:"v-text-field__suffix"},[r("span",{class:"v-text-field__suffix__text"},[e.suffix])])])}})},details:v?_=>{var R;return r(ie,null,[(R=l.details)==null?void 0:R.call(l,_),g&&r(ie,null,[r("span",null,null),C(Ia,{active:e.persistentCounter||y.value,value:o.value,max:s.value,disabled:e.disabled},l.counter)])])}:void 0})}),va({},c,V,P)}});export{Ra as V,ye as a,be as b,Ia as c,Ae as d,Fe as e,ba as f,$a as g,Aa as h,Ma as i,Pa as j,ga as k,wa as l,Re as m,Ba as n,De as u}; +import{g as J,b as G,i as r,n as H,d as W,p as E,bj as ve,h as Z,b0 as q,aq as Le,c as C,E as ee,t as Ne,ax as he,aB as Ce,a$ as Ve,a3 as m,as as te,bi as xe,U as ke,cG as Ie,ar as ue,av as I,bO as Se,ae as X,a2 as K,az as se,bT as Oe,cH as ze,bm as oe,bY as Ue,cI as Ke,$ as je,Z as We,by as ge,aw as ne,ah as qe,aG as He,bo as _e,b7 as Be,e as Je,a_ as ae,aL as Ge,f as Ye,aK as Xe,I as fe,J as Pe,c3 as Ze,be as Qe,aC as pe,cb as ea,cJ as aa,aD as la,aE as ta,aJ as na,c4 as ia,aW as sa,cE as ua,F as ie,bk as oa,c5 as ra,b5 as me,at as da,aA as we,cK as ca,au as va}from"./index-BXl8SUNP.js";const fa=E({text:String,onClick:q(),...Z(),...ve()},"VLabel"),ga=J()({name:"VLabel",props:fa(),setup(e,n){let{slots:u}=n;return G(()=>{var t;return r("label",{class:W(["v-label",{"v-label--clickable":!!e.onClick},e.class]),style:H(e.style),onClick:e.onClick},[e.text,(t=u.default)==null?void 0:t.call(u)])}),{}}});function Fe(e){const{t:n}=Le();function u(t){let{name:l,color:a,...y}=t;const b={prepend:"prependAction",prependInner:"prependAction",append:"appendAction",appendInner:"appendAction",clear:"clear"}[l],x=e[`onClick:${l}`];function S(s){s.key!=="Enter"&&s.key!==" "||(s.preventDefault(),s.stopPropagation(),he(x,new PointerEvent("click",s)))}const o=x&&b?n(`$vuetify.input.${b}`,e.label??""):void 0;return C(Ne,ee({icon:e[`${l}Icon`],"aria-label":o,onClick:x,onKeydown:S,color:a},y),null)}return{InputIcon:u}}const ma=E({active:Boolean,color:String,messages:{type:[Array,String],default:()=>[]},...Z(),...xe({transition:{component:ke,leaveAbsolute:!0,group:!0}})},"VMessages"),ya=J()({name:"VMessages",props:ma(),setup(e,n){let{slots:u}=n;const t=m(()=>te(e.messages)),{textColorClasses:l,textColorStyles:a}=Ce(()=>e.color);return G(()=>C(Ve,{transition:e.transition,tag:"div",class:W(["v-messages",l.value,e.class]),style:H([a.value,e.style])},{default:()=>[e.active&&t.value.map((y,b)=>r("div",{class:"v-messages__message",key:`${b}-${t.value}`},[u.message?u.message({message:y}):y]))]})),{}}}),$e=E({focused:Boolean,"onUpdate:focused":q()},"focus");function De(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ie();const u=ue(e,"focused"),t=I(()=>({[`${n}--focused`]:u.value}));function l(){u.value=!0}function a(){u.value=!1}return{focusClasses:t,isFocused:u,focus:l,blur:a}}const Me=Symbol.for("vuetify:form"),Ma=E({disabled:Boolean,fastFail:Boolean,readonly:Boolean,modelValue:{type:Boolean,default:null},validateOn:{type:String,default:"input"}},"form");function Aa(e){const n=ue(e,"modelValue"),u=I(()=>e.disabled),t=I(()=>e.readonly),l=se(!1),a=K([]),y=K([]);async function b(){const o=[];let s=!0;y.value=[],l.value=!0;for(const d of a.value){const c=await d.validate();if(c.length>0&&(s=!1,o.push({id:d.id,errorMessages:c})),!s&&e.fastFail)break}return y.value=o,l.value=!1,{valid:s,errors:y.value}}function x(){a.value.forEach(o=>o.reset())}function S(){a.value.forEach(o=>o.resetValidation())}return X(a,()=>{let o=0,s=0;const d=[];for(const c of a.value)c.isValid===!1?(s++,d.push({id:c.id,errorMessages:c.errorMessages})):c.isValid===!0&&o++;y.value=d,n.value=s>0?!1:o===a.value.length?!0:null},{deep:!0,flush:"post"}),Oe(Me,{register:o=>{let{id:s,vm:d,validate:c,reset:V,resetValidation:P}=o;a.value.some(h=>h.id===s),a.value.push({id:s,validate:c,reset:V,resetValidation:P,vm:ze(d),isValid:null,errorMessages:[]})},unregister:o=>{a.value=a.value.filter(s=>s.id!==o)},update:(o,s,d)=>{const c=a.value.find(V=>V.id===o);c&&(c.isValid=s,c.errorMessages=d)},isDisabled:u,isReadonly:t,isValidating:l,isValid:n,items:a,validateOn:I(()=>e.validateOn)}),{errors:y,isDisabled:u,isReadonly:t,isValidating:l,isValid:n,items:a,validate:b,reset:x,resetValidation:S}}function ba(e){const n=Se(Me,null);return{...n,isReadonly:m(()=>!!((e==null?void 0:e.readonly)??(n==null?void 0:n.isReadonly.value))),isDisabled:m(()=>!!((e==null?void 0:e.disabled)??(n==null?void 0:n.isDisabled.value)))}}const ha=Symbol.for("vuetify:rules");function Ca(e){const n=Se(ha,null);if(!e){if(!n)throw new Error("Could not find Vuetify rules injection");return n.aliases}return(n==null?void 0:n.resolve(e))??I(e)}const Va=E({disabled:{type:Boolean,default:null},error:Boolean,errorMessages:{type:[Array,String],default:()=>[]},maxErrors:{type:[Number,String],default:1},name:String,label:String,readonly:{type:Boolean,default:null},rules:{type:Array,default:()=>[]},modelValue:null,validateOn:String,validationValue:null,...$e()},"validation");function xa(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ie(),u=arguments.length>2&&arguments[2]!==void 0?arguments[2]:oe();const t=ue(e,"modelValue"),l=m(()=>e.validationValue===void 0?t.value:e.validationValue),a=ba(e),y=Ca(()=>e.rules),b=K([]),x=se(!0),S=m(()=>!!(te(t.value===""?null:t.value).length||te(l.value===""?null:l.value).length)),o=m(()=>{var i;return(i=e.errorMessages)!=null&&i.length?te(e.errorMessages).concat(b.value).slice(0,Math.max(0,Number(e.maxErrors))):b.value}),s=m(()=>{var $;let i=(e.validateOn??(($=a.validateOn)==null?void 0:$.value))||"input";i==="lazy"&&(i="input lazy"),i==="eager"&&(i="input eager");const f=new Set((i==null?void 0:i.split(" "))??[]);return{input:f.has("input"),blur:f.has("blur")||f.has("input")||f.has("invalid-input"),invalidInput:f.has("invalid-input"),lazy:f.has("lazy"),eager:f.has("eager")}}),d=m(()=>{var i;return e.error||(i=e.errorMessages)!=null&&i.length?!1:e.rules.length?x.value?b.value.length||s.value.lazy?null:!0:!b.value.length:!0}),c=se(!1),V=m(()=>({[`${n}--error`]:d.value===!1,[`${n}--dirty`]:S.value,[`${n}--disabled`]:a.isDisabled.value,[`${n}--readonly`]:a.isReadonly.value})),P=Ue("validation"),h=m(()=>e.name??qe(u));Ke(()=>{var i;(i=a.register)==null||i.call(a,{id:h.value,vm:P,validate:B,reset:L,resetValidation:k})}),je(()=>{var i;(i=a.unregister)==null||i.call(a,h.value)}),We(async()=>{var i;s.value.lazy||await B(!s.value.eager),(i=a.update)==null||i.call(a,h.value,d.value,o.value)}),ge(()=>s.value.input||s.value.invalidInput&&d.value===!1,()=>{X(l,()=>{if(l.value!=null)B();else if(e.focused){const i=X(()=>e.focused,f=>{f||B(),i()})}})}),ge(()=>s.value.blur,()=>{X(()=>e.focused,i=>{i||B()})}),X([d,o],()=>{var i;(i=a.update)==null||i.call(a,h.value,d.value,o.value)});async function L(){t.value=null,await ne(),await k()}async function k(){x.value=!0,s.value.lazy?b.value=[]:await B(!s.value.eager)}async function B(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;const f=[];c.value=!0;for(const $ of y.value){if(f.length>=Number(e.maxErrors??1))break;const v=await(typeof $=="function"?$:()=>$)(l.value);if(v!==!0){if(v!==!1&&typeof v!="string"){console.warn(`${v} is not a valid value. Rule functions must return boolean true or a string.`);continue}f.push(v||"")}}return b.value=f,c.value=!1,x.value=i,b.value}return{errorMessages:o,isDirty:S,isDisabled:a.isDisabled,isReadonly:a.isReadonly,isPristine:x,isValid:d,isValidating:c,reset:L,resetValidation:k,validate:B,validationClasses:V}}const Ae=E({id:String,appendIcon:ae,baseColor:String,centerAffix:{type:Boolean,default:!0},color:String,glow:Boolean,iconColor:[Boolean,String],prependIcon:ae,hideDetails:[Boolean,String],hideSpinButtons:Boolean,hint:String,persistentHint:Boolean,messages:{type:[Array,String],default:()=>[]},direction:{type:String,default:"horizontal",validator:e=>["horizontal","vertical"].includes(e)},"onClick:prepend":q(),"onClick:append":q(),...Z(),...Xe(),...Ge(Ye(),["maxWidth","minWidth","width"]),...ve(),...Va()},"VInput"),ye=J()({name:"VInput",props:{...Ae()},emits:{"update:modelValue":e=>!0},setup(e,n){let{attrs:u,slots:t,emit:l}=n;const{densityClasses:a}=He(e),{dimensionStyles:y}=Je(e),{themeClasses:b}=_e(e),{rtlClasses:x}=Be(),{InputIcon:S}=Fe(e),o=oe(),s=m(()=>e.id||`input-${o}`),{errorMessages:d,isDirty:c,isDisabled:V,isReadonly:P,isPristine:h,isValid:L,isValidating:k,reset:B,resetValidation:i,validate:f,validationClasses:$}=xa(e,"v-input",s),g=m(()=>{var _;return(_=e.errorMessages)!=null&&_.length||!h.value&&d.value.length?d.value:e.hint&&(e.persistentHint||e.focused)?e.hint:e.messages}),v=I(()=>g.value.length>0),w=I(()=>!e.hideDetails||e.hideDetails==="auto"&&(v.value||!!t.details)),N=m(()=>w.value?`${s.value}-messages`:void 0),T=m(()=>({id:s,messagesId:N,isDirty:c,isDisabled:V,isReadonly:P,isPristine:h,isValid:L,isValidating:k,hasDetails:w,reset:B,resetValidation:i,validate:f})),O=I(()=>e.error||e.disabled?void 0:e.focused?e.color:e.baseColor),A=I(()=>{if(e.iconColor)return e.iconColor===!0?O.value:e.iconColor});return G(()=>{var D,F;const _=!!(t.prepend||e.prependIcon),R=!!(t.append||e.appendIcon);return r("div",{class:W(["v-input",`v-input--${e.direction}`,{"v-input--center-affix":e.centerAffix,"v-input--focused":e.focused,"v-input--glow":e.glow,"v-input--hide-spin-buttons":e.hideSpinButtons},a.value,b.value,x.value,$.value,e.class]),style:H([y.value,e.style])},[_&&r("div",{key:"prepend",class:"v-input__prepend"},[t.prepend?t.prepend(T.value):e.prependIcon&&C(S,{key:"prepend-icon",name:"prepend",color:A.value},null)]),t.default&&r("div",{class:"v-input__control"},[(D=t.default)==null?void 0:D.call(t,T.value)]),R&&r("div",{key:"append",class:"v-input__append"},[t.append?t.append(T.value):e.appendIcon&&C(S,{key:"append-icon",name:"append",color:A.value},null)]),w.value&&r("div",{id:N.value,class:"v-input__details",role:"alert","aria-live":"polite"},[C(ya,{active:v.value,messages:g.value},{message:t.message}),(F=t.details)==null?void 0:F.call(t,T.value)])])}),{reset:B,resetValidation:i,validate:f,isValid:L,errorMessages:d}}}),ka=E({active:Boolean,disabled:Boolean,max:[Number,String],value:{type:[Number,String],default:0},...Z(),...xe({transition:{component:ke}})},"VCounter"),Ia=J()({name:"VCounter",functional:!0,props:ka(),setup(e,n){let{slots:u}=n;const t=I(()=>e.max?`${e.value} / ${e.max}`:String(e.value));return G(()=>C(Ve,{transition:e.transition},{default:()=>[fe(r("div",{class:W(["v-counter",{"text-error":e.max&&!e.disabled&&parseFloat(e.value)>parseFloat(e.max)},e.class]),style:H(e.style)},[u.default?u.default({counter:t.value,max:e.max,value:e.value}):t.value]),[[Pe,e.active]])]})),{}}}),Sa=E({floating:Boolean,...Z()},"VFieldLabel"),le=J()({name:"VFieldLabel",props:Sa(),setup(e,n){let{slots:u}=n;return G(()=>C(ga,{class:W(["v-field-label",{"v-field-label--floating":e.floating},e.class]),style:H(e.style)},u)),{}}}),_a=["underlined","outlined","filled","solo","solo-inverted","solo-filled","plain"],Re=E({appendInnerIcon:ae,bgColor:String,clearable:Boolean,clearIcon:{type:ae,default:"$clear"},active:Boolean,centerAffix:{type:Boolean,default:void 0},color:String,baseColor:String,dirty:Boolean,disabled:{type:Boolean,default:null},glow:Boolean,error:Boolean,flat:Boolean,iconColor:[Boolean,String],label:String,persistentClear:Boolean,prependInnerIcon:ae,reverse:Boolean,singleLine:Boolean,variant:{type:String,default:"filled",validator:e=>_a.includes(e)},"onClick:clear":q(),"onClick:appendInner":q(),"onClick:prependInner":q(),...Z(),...ra(),...oa(),...ve()},"VField"),be=J()({name:"VField",inheritAttrs:!1,props:{id:String,details:Boolean,labelId:String,...$e(),...Re()},emits:{"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,n){let{attrs:u,emit:t,slots:l}=n;const{themeClasses:a}=_e(e),{loaderClasses:y}=Ze(e),{focusClasses:b,isFocused:x,focus:S,blur:o}=De(e),{InputIcon:s}=Fe(e),{roundedClasses:d}=Qe(e),{rtlClasses:c}=Be(),V=I(()=>e.dirty||e.active),P=I(()=>!!(e.label||l.label)),h=I(()=>!e.singleLine&&P.value),L=oe(),k=m(()=>e.id||`input-${L}`),B=I(()=>e.details?`${k.value}-messages`:void 0),i=K(),f=K(),$=K(),g=m(()=>["plain","underlined"].includes(e.variant)),v=m(()=>e.error||e.disabled?void 0:V.value&&x.value?e.color:e.baseColor),w=m(()=>{if(!(!e.iconColor||e.glow&&!x.value))return e.iconColor===!0?v.value:e.iconColor}),{backgroundColorClasses:N,backgroundColorStyles:T}=pe(()=>e.bgColor),{textColorClasses:O,textColorStyles:A}=Ce(v);X(V,D=>{if(h.value&&!ea()){const F=i.value.$el,z=f.value.$el;requestAnimationFrame(()=>{const U=aa(F),M=z.getBoundingClientRect(),Y=M.x-U.x,j=M.y-U.y-(U.height/2-M.height/2),Q=M.width/.75,re=Math.abs(Q-U.width)>1?{maxWidth:na(Q)}:void 0,de=getComputedStyle(F),p=getComputedStyle(z),ce=parseFloat(de.transitionDuration)*1e3||150,Ee=parseFloat(p.getPropertyValue("--v-field-label-scale")),Te=p.getPropertyValue("color");F.style.visibility="visible",z.style.visibility="hidden",la(F,{transform:`translate(${Y}px, ${j}px) scale(${Ee})`,color:Te,...re},{duration:ce,easing:ta,direction:D?"normal":"reverse"}).finished.then(()=>{F.style.removeProperty("visibility"),z.style.removeProperty("visibility")})})}},{flush:"post"});const _=m(()=>({isActive:V,isFocused:x,controlRef:$,iconColor:w,blur:o,focus:S}));function R(D){D.target!==document.activeElement&&D.preventDefault()}return G(()=>{var Y;const D=e.variant==="outlined",F=!!(l["prepend-inner"]||e.prependInnerIcon),z=!!(e.clearable||l.clear)&&!e.disabled,U=!!(l["append-inner"]||e.appendInnerIcon||z),M=()=>l.label?l.label({..._.value,label:e.label,props:{for:k.value}}):e.label;return r("div",ee({class:["v-field",{"v-field--active":V.value,"v-field--appended":U,"v-field--center-affix":e.centerAffix??!g.value,"v-field--disabled":e.disabled,"v-field--dirty":e.dirty,"v-field--error":e.error,"v-field--glow":e.glow,"v-field--flat":e.flat,"v-field--has-background":!!e.bgColor,"v-field--persistent-clear":e.persistentClear,"v-field--prepended":F,"v-field--reverse":e.reverse,"v-field--single-line":e.singleLine,"v-field--no-label":!M(),[`v-field--variant-${e.variant}`]:!0},a.value,N.value,b.value,y.value,d.value,c.value,e.class],style:[T.value,e.style],onClick:R},u),[r("div",{class:"v-field__overlay"},null),C(ia,{name:"v-field",active:!!e.loading,color:e.error?"error":typeof e.loading=="string"?e.loading:e.color},{default:l.loader}),F&&r("div",{key:"prepend",class:"v-field__prepend-inner"},[l["prepend-inner"]?l["prepend-inner"](_.value):e.prependInnerIcon&&C(s,{key:"prepend-icon",name:"prependInner",color:w.value},null)]),r("div",{class:"v-field__field","data-no-activator":""},[["filled","solo","solo-inverted","solo-filled"].includes(e.variant)&&h.value&&C(le,{key:"floating-label",ref:f,class:W([O.value]),floating:!0,for:k.value,"aria-hidden":!V.value,style:H(A.value)},{default:()=>[M()]}),P.value&&C(le,{key:"label",ref:i,id:e.labelId,for:k.value,"aria-hidden":h.value&&V.value},{default:()=>[M()]}),((Y=l.default)==null?void 0:Y.call(l,{..._.value,props:{id:k.value,class:"v-field__input","aria-describedby":B.value},focus:S,blur:o}))??r("div",{id:k.value,class:"v-field__input","aria-describedby":B.value},null)]),z&&C(ua,{key:"clear"},{default:()=>[fe(r("div",{class:"v-field__clearable",onMousedown:j=>{j.preventDefault(),j.stopPropagation()}},[C(sa,{defaults:{VIcon:{icon:e.clearIcon}}},{default:()=>[l.clear?l.clear({..._.value,props:{onFocus:S,onBlur:o,onClick:e["onClick:clear"],tabindex:-1}}):C(s,{name:"clear",onFocus:S,onBlur:o,tabindex:-1},null)]})]),[[Pe,e.dirty]])]}),U&&r("div",{key:"append",class:"v-field__append-inner"},[l["append-inner"]?l["append-inner"](_.value):e.appendInnerIcon&&C(s,{key:"append-icon",name:"appendInner",color:w.value},null)]),r("div",{class:W(["v-field__outline",O.value]),style:H(A.value)},[D&&r(ie,null,[r("div",{class:"v-field__outline__start"},null),h.value&&r("div",{class:"v-field__outline__notch"},[C(le,{ref:f,floating:!0,for:k.value,"aria-hidden":!V.value},{default:()=>[M()]})]),r("div",{class:"v-field__outline__end"},null)]),g.value&&h.value&&C(le,{ref:f,floating:!0,for:k.value,"aria-hidden":!V.value},{default:()=>[M()]})])])}),{controlRef:$,fieldIconColor:w}}}),Ba=E({autocomplete:String},"autocomplete");function Pa(e){const n=oe(),u=se(0),t=I(()=>e.autocomplete==="suppress"),l=I(()=>{if(e.name)return t.value?`${e.name}-${n}-${u.value}`:e.name}),a=I(()=>t.value?"off":e.autocomplete);return{isSuppressing:t,fieldAutocomplete:a,fieldName:l,update:()=>u.value=new Date().getTime()}}function wa(e){function n(u,t){if(!e.autofocus||!u)return;const l=t[0].target,a=l.matches("input,textarea")?l:l.querySelector("input,textarea");a==null||a.focus()}return{onIntersect:n}}const Fa=["color","file","time","date","datetime-local","week","month"],$a=E({autofocus:Boolean,counter:[Boolean,Number,String],counterValue:[Number,Function],prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,suffix:String,role:String,type:{type:String,default:"text"},modelModifiers:Object,...Ba(),...we(Ae(),["direction"]),...Re()},"VTextField"),Ra=J()({name:"VTextField",directives:{vIntersect:me},inheritAttrs:!1,props:$a(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0},setup(e,n){let{attrs:u,emit:t,slots:l}=n;const a=ue(e,"modelValue"),{isFocused:y,focus:b,blur:x}=De(e),{onIntersect:S}=wa(e),o=m(()=>typeof e.counterValue=="function"?e.counterValue(a.value):typeof e.counterValue=="number"?e.counterValue:(a.value??"").toString().length),s=m(()=>{if(u.maxlength)return u.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),d=m(()=>["plain","underlined"].includes(e.variant)),c=K(),V=K(),P=K(),h=Pa(e),L=m(()=>Fa.includes(e.type)||e.persistentPlaceholder||y.value||e.active);function k(){h.isSuppressing.value&&h.update(),y.value||b(),ne(()=>{var g;P.value!==document.activeElement&&((g=P.value)==null||g.focus())})}function B(g){t("mousedown:control",g),g.target!==P.value&&(k(),g.preventDefault())}function i(g){t("click:control",g)}function f(g,v){g.stopPropagation(),k(),ne(()=>{v(),he(e["onClick:clear"],g)})}function $(g){var O;const v=g.target;if(!((O=e.modelModifiers)!=null&&O.trim&&["text","search","password","tel","url"].includes(e.type))){a.value=v.value;return}const w=v.value,N=v.selectionStart,T=v.selectionEnd;a.value=w,ne(()=>{let A=0;w.trimStart().length===v.value.length&&(A=w.length-v.value.length),N!=null&&(v.selectionStart=N-A),T!=null&&(v.selectionEnd=T-A)})}return G(()=>{const g=!!(l.counter||e.counter!==!1&&e.counter!=null),v=!!(g||l.details),[w,N]=da(u),{modelValue:T,...O}=ye.filterProps(e),A=be.filterProps(e);return C(ye,ee({ref:c,modelValue:a.value,"onUpdate:modelValue":_=>a.value=_,class:["v-text-field",{"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-input--plain-underlined":d.value},e.class],style:e.style},w,O,{centerAffix:!d.value,focused:y.value}),{...l,default:_=>{let{id:R,isDisabled:D,isDirty:F,isReadonly:z,isValid:U,hasDetails:M,reset:Y}=_;return C(be,ee({ref:V,onMousedown:B,onClick:i,"onClick:clear":j=>f(j,Y),role:e.role},we(A,["onClick:clear"]),{id:R.value,labelId:`${R.value}-label`,active:L.value||F.value,dirty:F.value||e.dirty,disabled:D.value,focused:y.value,details:M.value,error:U.value===!1}),{...l,default:j=>{let{props:{class:Q,...re},controlRef:de}=j;const p=r("input",ee({ref:ce=>P.value=de.value=ce,value:a.value,onInput:$,autofocus:e.autofocus,readonly:z.value,disabled:D.value,name:h.fieldName.value,autocomplete:h.fieldAutocomplete.value,placeholder:e.placeholder,size:1,role:e.role,type:e.type,onFocus:b,onBlur:x,"aria-labelledby":`${R.value}-label`},re,N),null);return r(ie,null,[e.prefix&&r("span",{class:"v-text-field__prefix"},[r("span",{class:"v-text-field__prefix__text"},[e.prefix])]),fe(l.default?r("div",{class:W(Q),"data-no-activator":""},[l.default({id:R}),p]):ca(p,{class:Q}),[[me,S,null,{once:!0}]]),e.suffix&&r("span",{class:"v-text-field__suffix"},[r("span",{class:"v-text-field__suffix__text"},[e.suffix])])])}})},details:v?_=>{var R;return r(ie,null,[(R=l.details)==null?void 0:R.call(l,_),g&&r(ie,null,[r("span",null,null),C(Ia,{active:e.persistentCounter||y.value,value:o.value,max:s.value,disabled:e.disabled},l.counter)])])}:void 0})}),va({},c,V,P)}});export{Ra as V,ye as a,be as b,Ia as c,Ae as d,Fe as e,ba as f,$a as g,Aa as h,Ma as i,Pa as j,ga as k,wa as l,Re as m,Ba as n,De as u}; diff --git a/assets/VTextarea-jqnFSwaH.js b/assets/VTextarea-B0_PT1is.js similarity index 97% rename from assets/VTextarea-jqnFSwaH.js rename to assets/VTextarea-B0_PT1is.js index 8bbfba0..fffc25f 100644 --- a/assets/VTextarea-jqnFSwaH.js +++ b/assets/VTextarea-B0_PT1is.js @@ -1 +1 @@ -import{g as re,b5 as $,ar as se,X as ce,a2 as w,b3 as de,Z as fe,ae as f,$ as ve,b as me,at as xe,c as A,i as r,F as M,E as z,I as p,cA as ge,d as he,aJ as B,au as we,aw as C,bc as ye,a3 as P,ax as Ve,az as be,p as Fe,aA as Ce}from"./index-BUM0TY0E.js";import{u as Pe,j as Ie,a as O,b as W,c as ke,l as Ne,m as Re,d as Se,n as He}from"./VTextField-C579e7l1.js";const Ae=Fe({autoGrow:Boolean,autofocus:Boolean,counter:[Boolean,Number,String],counterValue:Function,prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,noResize:Boolean,rows:{type:[Number,String],default:5,validator:e=>!isNaN(parseFloat(e))},maxHeight:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},maxRows:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},suffix:String,modelModifiers:Object,...He(),...Ce(Se(),["direction"]),...Re()},"VTextarea"),Be=re()({name:"VTextarea",directives:{vIntersect:$},inheritAttrs:!1,props:Ae(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0,"update:rows":e=>!0},setup(e,j){let{attrs:I,emit:k,slots:o}=j;const l=se(e,"modelValue"),{isFocused:y,focus:J,blur:X}=Pe(e),{onIntersect:Z}=Ne(e),q=P(()=>typeof e.counterValue=="function"?e.counterValue(l.value):(l.value||"").toString().length),K=P(()=>{if(I.maxlength)return I.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),T=w(),b=w(),_=be(""),v=w(),N=w(0),{platform:L}=ce(),F=Ie(e),Q=P(()=>e.persistentPlaceholder||y.value||e.active);function R(){var t;F.isSuppressing.value&&F.update(),v.value!==document.activeElement&&((t=v.value)==null||t.focus()),y.value||J()}function Y(t){R(),k("click:control",t)}function ee(t){k("mousedown:control",t)}function te(t){t.stopPropagation(),R(),C(()=>{l.value="",Ve(e["onClick:clear"],t)})}function ae(t){var g;const a=t.target;if(!((g=e.modelModifiers)!=null&&g.trim)){l.value=a.value;return}const n=a.value,x=a.selectionStart,c=a.selectionEnd;l.value=n,C(()=>{let d=0;n.trimStart().length===a.value.length&&(d=n.length-a.value.length),x!=null&&(a.selectionStart=x-d),c!=null&&(a.selectionEnd=c-d)})}const m=w(),V=w(Number(e.rows)),S=P(()=>["plain","underlined"].includes(e.variant));de(()=>{e.autoGrow||(V.value=Number(e.rows))});function s(){C(()=>{if(!v.value)return;if(L.value.firefox){N.value=12;return}const{offsetWidth:t,clientWidth:a}=v.value;N.value=Math.max(0,t-a)}),e.autoGrow&&C(()=>{if(!m.value||!b.value)return;const t=getComputedStyle(m.value),a=getComputedStyle(b.value.$el),n=parseFloat(t.getPropertyValue("--v-field-padding-top"))+parseFloat(t.getPropertyValue("--v-input-padding-top"))+parseFloat(t.getPropertyValue("--v-field-padding-bottom")),x=m.value.scrollHeight,c=parseFloat(t.lineHeight),g=Math.max(parseFloat(e.rows)*c+n,parseFloat(a.getPropertyValue("--v-input-control-height"))),d=e.maxHeight?parseFloat(e.maxHeight):parseFloat(e.maxRows)*c+n||1/0,i=ye(x??0,g,d);V.value=Math.floor((i-n)/c),_.value=B(i)})}fe(s),f(l,s),f(()=>e.rows,s),f(()=>e.maxHeight,s),f(()=>e.maxRows,s),f(()=>e.density,s),f(V,t=>{k("update:rows",t)});let u;return f(m,t=>{t?(u=new ResizeObserver(s),u.observe(m.value)):u==null||u.disconnect()}),ve(()=>{u==null||u.disconnect()}),me(()=>{const t=!!(o.counter||e.counter||e.counterValue),a=!!(t||o.details),[n,x]=xe(I),{modelValue:c,...g}=O.filterProps(e),d={...W.filterProps(e),"onClick:clear":te};return A(O,z({ref:T,modelValue:l.value,"onUpdate:modelValue":i=>l.value=i,class:["v-textarea v-text-field",{"v-textarea--prefixed":e.prefix,"v-textarea--suffixed":e.suffix,"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-textarea--auto-grow":e.autoGrow,"v-textarea--no-resize":e.noResize||e.autoGrow,"v-input--plain-underlined":S.value},e.class],style:[{"--v-textarea-max-height":e.maxHeight?B(e.maxHeight):void 0,"--v-textarea-scroll-bar-width":B(N.value)},e.style]},n,g,{centerAffix:V.value===1&&!S.value,focused:y.value}),{...o,default:i=>{let{id:h,isDisabled:D,isDirty:E,isReadonly:le,isValid:ne,hasDetails:oe}=i;return A(W,z({ref:b,style:{"--v-textarea-control-height":_.value},onClick:Y,onMousedown:ee,"onClick:prependInner":e["onClick:prependInner"],"onClick:appendInner":e["onClick:appendInner"]},d,{id:h.value,active:Q.value||E.value,labelId:`${h.value}-label`,centerAffix:V.value===1&&!S.value,dirty:E.value||e.dirty,disabled:D.value,focused:y.value,details:oe.value,error:ne.value===!1}),{...o,default:ue=>{let{props:{class:G,...U},controlRef:ie}=ue;return r(M,null,[e.prefix&&r("span",{class:"v-text-field__prefix"},[e.prefix]),p(r("textarea",z({ref:H=>v.value=ie.value=H,class:G,value:l.value,onInput:ae,autofocus:e.autofocus,readonly:le.value,disabled:D.value,placeholder:e.placeholder,rows:e.rows,name:F.fieldName.value,autocomplete:F.fieldAutocomplete.value,onFocus:R,onBlur:X,"aria-labelledby":`${h.value}-label`},U,x),null),[[$,{handler:Z},null,{once:!0}]]),e.autoGrow&&p(r("textarea",{class:he([G,"v-textarea__sizer"]),id:`${U.id}-sizer`,"onUpdate:modelValue":H=>l.value=H,ref:m,readonly:!0,"aria-hidden":"true"},null),[[ge,l.value]]),e.suffix&&r("span",{class:"v-text-field__suffix"},[e.suffix])])}})},details:a?i=>{var h;return r(M,null,[(h=o.details)==null?void 0:h.call(o,i),t&&r(M,null,[r("span",null,null),A(ke,{active:e.persistentCounter||y.value,value:q.value,max:K.value,disabled:e.disabled},o.counter)])])}:void 0})}),we({},T,b,v)}});export{Be as V}; +import{g as re,b5 as $,ar as se,X as ce,a2 as w,b3 as de,Z as fe,ae as f,$ as ve,b as me,at as xe,c as A,i as r,F as M,E as z,I as p,cA as ge,d as he,aJ as B,au as we,aw as C,bc as ye,a3 as P,ax as Ve,az as be,p as Fe,aA as Ce}from"./index-BXl8SUNP.js";import{u as Pe,j as Ie,a as O,b as W,c as ke,l as Ne,m as Re,d as Se,n as He}from"./VTextField-DxxbesnN.js";const Ae=Fe({autoGrow:Boolean,autofocus:Boolean,counter:[Boolean,Number,String],counterValue:Function,prefix:String,placeholder:String,persistentPlaceholder:Boolean,persistentCounter:Boolean,noResize:Boolean,rows:{type:[Number,String],default:5,validator:e=>!isNaN(parseFloat(e))},maxHeight:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},maxRows:{type:[Number,String],validator:e=>!isNaN(parseFloat(e))},suffix:String,modelModifiers:Object,...He(),...Ce(Se(),["direction"]),...Re()},"VTextarea"),Be=re()({name:"VTextarea",directives:{vIntersect:$},inheritAttrs:!1,props:Ae(),emits:{"click:control":e=>!0,"mousedown:control":e=>!0,"update:focused":e=>!0,"update:modelValue":e=>!0,"update:rows":e=>!0},setup(e,j){let{attrs:I,emit:k,slots:o}=j;const l=se(e,"modelValue"),{isFocused:y,focus:J,blur:X}=Pe(e),{onIntersect:Z}=Ne(e),q=P(()=>typeof e.counterValue=="function"?e.counterValue(l.value):(l.value||"").toString().length),K=P(()=>{if(I.maxlength)return I.maxlength;if(!(!e.counter||typeof e.counter!="number"&&typeof e.counter!="string"))return e.counter}),T=w(),b=w(),_=be(""),v=w(),N=w(0),{platform:L}=ce(),F=Ie(e),Q=P(()=>e.persistentPlaceholder||y.value||e.active);function R(){var t;F.isSuppressing.value&&F.update(),v.value!==document.activeElement&&((t=v.value)==null||t.focus()),y.value||J()}function Y(t){R(),k("click:control",t)}function ee(t){k("mousedown:control",t)}function te(t){t.stopPropagation(),R(),C(()=>{l.value="",Ve(e["onClick:clear"],t)})}function ae(t){var g;const a=t.target;if(!((g=e.modelModifiers)!=null&&g.trim)){l.value=a.value;return}const n=a.value,x=a.selectionStart,c=a.selectionEnd;l.value=n,C(()=>{let d=0;n.trimStart().length===a.value.length&&(d=n.length-a.value.length),x!=null&&(a.selectionStart=x-d),c!=null&&(a.selectionEnd=c-d)})}const m=w(),V=w(Number(e.rows)),S=P(()=>["plain","underlined"].includes(e.variant));de(()=>{e.autoGrow||(V.value=Number(e.rows))});function s(){C(()=>{if(!v.value)return;if(L.value.firefox){N.value=12;return}const{offsetWidth:t,clientWidth:a}=v.value;N.value=Math.max(0,t-a)}),e.autoGrow&&C(()=>{if(!m.value||!b.value)return;const t=getComputedStyle(m.value),a=getComputedStyle(b.value.$el),n=parseFloat(t.getPropertyValue("--v-field-padding-top"))+parseFloat(t.getPropertyValue("--v-input-padding-top"))+parseFloat(t.getPropertyValue("--v-field-padding-bottom")),x=m.value.scrollHeight,c=parseFloat(t.lineHeight),g=Math.max(parseFloat(e.rows)*c+n,parseFloat(a.getPropertyValue("--v-input-control-height"))),d=e.maxHeight?parseFloat(e.maxHeight):parseFloat(e.maxRows)*c+n||1/0,i=ye(x??0,g,d);V.value=Math.floor((i-n)/c),_.value=B(i)})}fe(s),f(l,s),f(()=>e.rows,s),f(()=>e.maxHeight,s),f(()=>e.maxRows,s),f(()=>e.density,s),f(V,t=>{k("update:rows",t)});let u;return f(m,t=>{t?(u=new ResizeObserver(s),u.observe(m.value)):u==null||u.disconnect()}),ve(()=>{u==null||u.disconnect()}),me(()=>{const t=!!(o.counter||e.counter||e.counterValue),a=!!(t||o.details),[n,x]=xe(I),{modelValue:c,...g}=O.filterProps(e),d={...W.filterProps(e),"onClick:clear":te};return A(O,z({ref:T,modelValue:l.value,"onUpdate:modelValue":i=>l.value=i,class:["v-textarea v-text-field",{"v-textarea--prefixed":e.prefix,"v-textarea--suffixed":e.suffix,"v-text-field--prefixed":e.prefix,"v-text-field--suffixed":e.suffix,"v-textarea--auto-grow":e.autoGrow,"v-textarea--no-resize":e.noResize||e.autoGrow,"v-input--plain-underlined":S.value},e.class],style:[{"--v-textarea-max-height":e.maxHeight?B(e.maxHeight):void 0,"--v-textarea-scroll-bar-width":B(N.value)},e.style]},n,g,{centerAffix:V.value===1&&!S.value,focused:y.value}),{...o,default:i=>{let{id:h,isDisabled:D,isDirty:E,isReadonly:le,isValid:ne,hasDetails:oe}=i;return A(W,z({ref:b,style:{"--v-textarea-control-height":_.value},onClick:Y,onMousedown:ee,"onClick:prependInner":e["onClick:prependInner"],"onClick:appendInner":e["onClick:appendInner"]},d,{id:h.value,active:Q.value||E.value,labelId:`${h.value}-label`,centerAffix:V.value===1&&!S.value,dirty:E.value||e.dirty,disabled:D.value,focused:y.value,details:oe.value,error:ne.value===!1}),{...o,default:ue=>{let{props:{class:G,...U},controlRef:ie}=ue;return r(M,null,[e.prefix&&r("span",{class:"v-text-field__prefix"},[e.prefix]),p(r("textarea",z({ref:H=>v.value=ie.value=H,class:G,value:l.value,onInput:ae,autofocus:e.autofocus,readonly:le.value,disabled:D.value,placeholder:e.placeholder,rows:e.rows,name:F.fieldName.value,autocomplete:F.fieldAutocomplete.value,onFocus:R,onBlur:X,"aria-labelledby":`${h.value}-label`},U,x),null),[[$,{handler:Z},null,{once:!0}]]),e.autoGrow&&p(r("textarea",{class:he([G,"v-textarea__sizer"]),id:`${U.id}-sizer`,"onUpdate:modelValue":H=>l.value=H,ref:m,readonly:!0,"aria-hidden":"true"},null),[[ge,l.value]]),e.suffix&&r("span",{class:"v-text-field__suffix"},[e.suffix])])}})},details:a?i=>{var h;return r(M,null,[(h=o.details)==null?void 0:h.call(o,i),t&&r(M,null,[r("span",null,null),A(ke,{active:e.persistentCounter||y.value,value:q.value,max:K.value,disabled:e.disabled},o.counter)])])}:void 0})}),we({},T,b,v)}});export{Be as V}; diff --git a/assets/VTooltip-COe_nB02.js b/assets/VTooltip-CyZjDjKS.js similarity index 98% rename from assets/VTooltip-COe_nB02.js rename to assets/VTooltip-CyZjDjKS.js index 578ba60..f308abd 100644 --- a/assets/VTooltip-COe_nB02.js +++ b/assets/VTooltip-CyZjDjKS.js @@ -1 +1 @@ -import{g as N,aC as I,be as R,aq as w,aB as A,bf as O,bg as F,b as x,bh as $,c as g,i as h,a$ as D,I as L,J as H,E as m,t as M,e as W,p as T,a_ as X,f as Y,bi as _,bj as j,m as q,bk as E,bl as G,h as J,ar as U,aH as z,bm as K,an as k,au as Q,a3 as S,av as B,a2 as Z,aA as p,bn as ee}from"./index-BUM0TY0E.js";const ae=T({bordered:Boolean,color:String,content:[Number,String],dot:Boolean,floating:Boolean,icon:X,inline:Boolean,label:{type:String,default:"$vuetify.badge"},max:[Number,String],modelValue:{type:Boolean,default:!0},offsetX:[Number,String],offsetY:[Number,String],textColor:String,...J(),...G({location:"top end"}),...E(),...q(),...j(),..._({transition:"scale-rotate-transition"}),...Y()},"VBadge"),ne=N()({name:"VBadge",inheritAttrs:!1,props:ae(),setup(e,o){const{backgroundColorClasses:n,backgroundColorStyles:l}=I(()=>e.color),{roundedClasses:v}=R(e),{t:b}=w(),{textColorClasses:r,textColorStyles:u}=A(()=>e.textColor),{themeClasses:f}=O(),{locationStyles:V}=F(e,!0,a=>(e.floating?e.dot?2:4:e.dot?8:12)+(["top","bottom"].includes(a)?Number(e.offsetY??0):["left","right"].includes(a)?Number(e.offsetX??0):0)),{dimensionStyles:y}=W(e);return x(()=>{const a=Number(e.content),c=!e.max||isNaN(a)?e.content:a<=Number(e.max)?a:`${e.max}+`,[i,d]=$(o.attrs,["aria-atomic","aria-label","aria-live","role","title"]);return g(e.tag,m({class:["v-badge",{"v-badge--bordered":e.bordered,"v-badge--dot":e.dot,"v-badge--floating":e.floating,"v-badge--inline":e.inline},e.class]},d,{style:e.style}),{default:()=>{var t,s;return[h("div",{class:"v-badge__wrapper"},[(s=(t=o.slots).default)==null?void 0:s.call(t),g(D,{transition:e.transition},{default:()=>{var P,C;return[L(h("span",m({class:["v-badge__badge",f.value,n.value,v.value,r.value],style:[l.value,u.value,y.value,e.inline?{}:V.value],"aria-atomic":"true","aria-label":b(e.label,a),"aria-live":"polite",role:"status"},i),[e.dot?void 0:o.slots.badge?(C=(P=o.slots).badge)==null?void 0:C.call(P):e.icon?g(M,{icon:e.icon},null):c]),[[H,e.modelValue]])]}})])]}})}),{}}}),te=T({id:String,interactive:Boolean,text:String,...p(ee({closeOnBack:!1,location:"end",locationStrategy:"connected",eager:!0,minWidth:0,offset:10,openOnClick:!1,openOnHover:!0,origin:"auto",scrim:!1,scrollStrategy:"reposition",transition:null}),["absolute","retainFocus","captureFocus","disableInitialFocus"])},"VTooltip"),ie=N()({name:"VTooltip",props:te(),emits:{"update:modelValue":e=>!0},setup(e,o){let{slots:n}=o;const l=U(e,"modelValue"),{scopeId:v}=z(),b=K(),r=B(()=>e.id||`v-tooltip-${b}`),u=Z(),f=S(()=>e.location.split(" ").length>1?e.location:e.location+" center"),V=S(()=>e.origin==="auto"||e.origin==="overlap"||e.origin.split(" ").length>1||e.location.split(" ").length>1?e.origin:e.origin+" center"),y=B(()=>e.transition!=null?e.transition:l.value?"scale-transition":"fade-transition"),a=S(()=>m({"aria-describedby":r.value},e.activatorProps));return x(()=>{const c=k.filterProps(e);return g(k,m({ref:u,class:["v-tooltip",{"v-tooltip--interactive":e.interactive},e.class],style:e.style,id:r.value},c,{modelValue:l.value,"onUpdate:modelValue":i=>l.value=i,transition:y.value,absolute:!0,location:f.value,origin:V.value,role:"tooltip",activatorProps:a.value,_disableGlobalStack:!0},v),{activator:n.activator,default:function(){var s;for(var i=arguments.length,d=new Array(i),t=0;te.color),{roundedClasses:v}=R(e),{t:b}=w(),{textColorClasses:r,textColorStyles:u}=A(()=>e.textColor),{themeClasses:f}=O(),{locationStyles:V}=F(e,!0,a=>(e.floating?e.dot?2:4:e.dot?8:12)+(["top","bottom"].includes(a)?Number(e.offsetY??0):["left","right"].includes(a)?Number(e.offsetX??0):0)),{dimensionStyles:y}=W(e);return x(()=>{const a=Number(e.content),c=!e.max||isNaN(a)?e.content:a<=Number(e.max)?a:`${e.max}+`,[i,d]=$(o.attrs,["aria-atomic","aria-label","aria-live","role","title"]);return g(e.tag,m({class:["v-badge",{"v-badge--bordered":e.bordered,"v-badge--dot":e.dot,"v-badge--floating":e.floating,"v-badge--inline":e.inline},e.class]},d,{style:e.style}),{default:()=>{var t,s;return[h("div",{class:"v-badge__wrapper"},[(s=(t=o.slots).default)==null?void 0:s.call(t),g(D,{transition:e.transition},{default:()=>{var P,C;return[L(h("span",m({class:["v-badge__badge",f.value,n.value,v.value,r.value],style:[l.value,u.value,y.value,e.inline?{}:V.value],"aria-atomic":"true","aria-label":b(e.label,a),"aria-live":"polite",role:"status"},i),[e.dot?void 0:o.slots.badge?(C=(P=o.slots).badge)==null?void 0:C.call(P):e.icon?g(M,{icon:e.icon},null):c]),[[H,e.modelValue]])]}})])]}})}),{}}}),te=T({id:String,interactive:Boolean,text:String,...p(ee({closeOnBack:!1,location:"end",locationStrategy:"connected",eager:!0,minWidth:0,offset:10,openOnClick:!1,openOnHover:!0,origin:"auto",scrim:!1,scrollStrategy:"reposition",transition:null}),["absolute","retainFocus","captureFocus","disableInitialFocus"])},"VTooltip"),ie=N()({name:"VTooltip",props:te(),emits:{"update:modelValue":e=>!0},setup(e,o){let{slots:n}=o;const l=U(e,"modelValue"),{scopeId:v}=z(),b=K(),r=B(()=>e.id||`v-tooltip-${b}`),u=Z(),f=S(()=>e.location.split(" ").length>1?e.location:e.location+" center"),V=S(()=>e.origin==="auto"||e.origin==="overlap"||e.origin.split(" ").length>1||e.location.split(" ").length>1?e.origin:e.origin+" center"),y=B(()=>e.transition!=null?e.transition:l.value?"scale-transition":"fade-transition"),a=S(()=>m({"aria-describedby":r.value},e.activatorProps));return x(()=>{const c=k.filterProps(e);return g(k,m({ref:u,class:["v-tooltip",{"v-tooltip--interactive":e.interactive},e.class],style:e.style,id:r.value},c,{modelValue:l.value,"onUpdate:modelValue":i=>l.value=i,transition:y.value,absolute:!0,location:f.value,origin:V.value,role:"tooltip",activatorProps:a.value,_disableGlobalStack:!0},v),{activator:n.activator,default:function(){var s;for(var i=arguments.length,d=new Array(i),t=0;t[e(g,{elevation:"1"},{prepend:r(()=>[e(m,{icon:"mdi-arrow-left",variant:"text",onClick:t[0]||(t[0]=h=>o.$router.back())})]),default:r(()=>[e(x,{class:"text-h6"},{default:r(()=>[...t[1]||(t[1]=[d(" 编辑考试配置 ",-1)])]),_:1}),e(v),e(m,{loading:a.saving,color:"success","prepend-icon":"mdi-content-save",variant:"outlined",onClick:s.save},{default:r(()=>[...t[2]||(t[2]=[d(" 保存 ",-1)])]),_:1},8,["loading","onClick"])]),_:1}),e(l,{class:"py-4",style:{"max-width":"1200px"}},{default:r(()=>[a.id?(n(),p(f,{key:0,ref:"editor","config-id":a.id,onError:s.onError,onSaved:s.onSaved},null,8,["config-id","onError","onSaved"])):_("",!0)]),_:1})]),_:1})}const H=u(E,[["render",C]]);export{H as default}; +import{_ as c}from"./ExamConfigEditor-D-fBjxzF.js";import{_ as u,o as n,j as p,w as r,c as e,v as d,x as v,y as m,D as _}from"./index-BXl8SUNP.js";import{c as g,b as x}from"./VAppBarTitle-hRIhv4pw.js";import{V as l}from"./VContainer-Doz_PneH.js";import"./dataProvider-Cg4CSn_f.js";import"./serverRotation-BBUKyTw9.js";import"./VAlert-DncbAu3E.js";import"./VSkeletonLoader-DKLQDg5n.js";import"./VTooltip-CyZjDjKS.js";import"./VChip-jIQL7s_d.js";import"./VRow-DFPdcq_b.js";import"./VTextField-DxxbesnN.js";import"./VTextarea-B0_PT1is.js";import"./VSwitch-7fkmr9E6.js";import"./filter-BHXElGQ1.js";import"./VCheckboxBtn-iC2wkMdx.js";import"./VSheet-CWiuVQYN.js";const E={name:"ExamEditorPage",components:{ExamConfigEditor:c},data(){return{id:this.$route.params.id,saving:!1}},watch:{"$route.params.id"(o){this.id=o}},methods:{async save(){if(this.$refs.editor){this.saving=!0;try{await this.$refs.editor.saveConfig()}finally{this.saving=!1}}},onSaved(){var o,t;(t=(o=this.$toast)==null?void 0:o.success)==null||t.call(o,"保存成功")},onError(o){var t,i;(i=(t=this.$toast)==null?void 0:t.error)==null||i.call(t,o||"保存失败")}}};function C(o,t,i,V,a,s){const f=c;return n(),p(l,{class:"pa-0"},{default:r(()=>[e(g,{elevation:"1"},{prepend:r(()=>[e(m,{icon:"mdi-arrow-left",variant:"text",onClick:t[0]||(t[0]=h=>o.$router.back())})]),default:r(()=>[e(x,{class:"text-h6"},{default:r(()=>[...t[1]||(t[1]=[d(" 编辑考试配置 ",-1)])]),_:1}),e(v),e(m,{loading:a.saving,color:"success","prepend-icon":"mdi-content-save",variant:"outlined",onClick:s.save},{default:r(()=>[...t[2]||(t[2]=[d(" 保存 ",-1)])]),_:1},8,["loading","onClick"])]),_:1}),e(l,{class:"py-4",style:{"max-width":"1200px"}},{default:r(()=>[a.id?(n(),p(f,{key:0,ref:"editor","config-id":a.id,onError:s.onError,onSaved:s.onSaved},null,8,["config-id","onError","onSaved"])):_("",!0)]),_:1})]),_:1})}const H=u(E,[["render",C]]);export{H as default}; diff --git a/assets/_id_-DzoDISsJ.js b/assets/_id_-DyC3JCaR.js similarity index 96% rename from assets/_id_-DzoDISsJ.js rename to assets/_id_-DyC3JCaR.js index 71491f6..b8e27e3 100644 --- a/assets/_id_-DzoDISsJ.js +++ b/assets/_id_-DyC3JCaR.js @@ -1 +1 @@ -import{d as h}from"./dataProvider-MQ8YacC2.js";import{g as _,b as B,c as i,n as O,d as T,p as U,m as J,h as F,_ as z,o as m,C as u,w as l,j as p,v as o,A as f,y as r,i as M,t as I,N as P,l as c,q as D,x as y,B as K,z as V,P as R,F as k,G as j,Q as C,a1 as v,O as q,M as b,D as N,H as A,a0 as S}from"./index-BUM0TY0E.js";import{b as E,c as G}from"./VAppBarTitle-DZ_l7t3b.js";import{V as x}from"./VTextField-C579e7l1.js";import{V as H}from"./VCheckboxBtn-CylQNaxd.js";import{V as Q}from"./VChip-vdRDApTi.js";import{V as W}from"./VTextarea-jqnFSwaH.js";import{V as X}from"./VSwitch-CjVC2rsZ.js";import{V as Y}from"./VContainer-DakLDC1m.js";import"./serverRotation-CjK7Y7P9.js";const Z=U({start:Boolean,end:Boolean,...F(),...J()},"VListItemAction"),$=_()({name:"VListItemAction",props:Z(),setup(t,e){let{slots:n}=e;return B(()=>i(t.tag,{class:T(["v-list-item-action",{"v-list-item-action--start":t.start,"v-list-item-action--end":t.end},t.class]),style:O(t.style)},n)),{}}}),ee={data(){return{listId:null,list:null,items:[],originalItems:[],newItemName:"",sortSeed:"1",sortType:"default",isRandomSorted:!1,deleteDialog:{show:!1,title:"",text:"",itemId:null,action:null},isRenaming:!1,newListName:"",itemDialog:{show:!1,item:null,isEditing:!1,editedItem:null}}},computed:{sortedItems(){return this.sortType==="completed"?[...this.items].sort((t,e)=>t.completed===e.completed?0:t.completed?1:-1):this.items},hasCompletedItems(){return this.items.some(t=>t.completed)}},async created(){this.listId=this.$route.params.id,await Promise.all([this.loadListInfo(),this.loadItems()])},methods:{async loadListInfo(){try{const t=await h.loadData("classworks-list-info");t&&Array.isArray(t)&&(this.list=t.find(e=>e.id===this.listId)),this.list||this.$router.push("/list")}catch(t){console.error("Failed to load list info",t),this.$router.push("/list")}},startRenaming(){this.list&&(this.newListName=this.list.name,this.isRenaming=!0)},cancelRenaming(){this.isRenaming=!1,this.newListName=""},async saveListName(){if(this.newListName.trim())try{const t=await h.loadData("classworks-list-info");if(t&&Array.isArray(t)){const e=t.findIndex(n=>n.id===this.listId);e!==-1&&(t[e].name=this.newListName.trim(),await h.saveData("classworks-list-info",t),this.list.name=this.newListName.trim())}this.isRenaming=!1}catch(t){console.error("Failed to update list name",t)}},async loadItems(){try{let t=await h.loadData(`classworks-list-${this.listId}`);(!t||!Array.isArray(t))&&(t=[],await h.saveData(`classworks-list-${this.listId}`,t)),this.items=t.map(e=>typeof e.completed>"u"?{id:e.id||Date.now()+Math.floor(Math.random()*1e3),name:e.name,completed:!1,description:e.description||""}:{...e,description:e.description||""}),this.originalItems=JSON.parse(JSON.stringify(this.items))}catch(t){console.error("Failed to load items",t),this.items=[],this.originalItems=[]}},async addItem(){if(!this.newItemName)return;const t={id:Date.now().toString(),name:this.newItemName,completed:!1,description:""};this.items.push(t),this.originalItems.push(JSON.parse(JSON.stringify(t))),await this.saveItems(),this.newItemName=""},openItemDetails(t){this.itemDialog={show:!0,item:t,isEditing:!1,editedItem:null}},startEditingItem(){this.itemDialog.item&&(this.itemDialog.isEditing=!0,this.itemDialog.editedItem=JSON.parse(JSON.stringify(this.itemDialog.item)))},cancelEditingItem(){this.itemDialog.isEditing=!1,this.itemDialog.editedItem=null},async saveItemChanges(){if(!this.itemDialog.editedItem)return;const t=this.items.findIndex(e=>e.id===this.itemDialog.item.id);if(t!==-1){this.items[t]={...this.itemDialog.editedItem};const e=this.originalItems.findIndex(n=>n.id===this.itemDialog.item.id);e!==-1&&(this.originalItems[e]=JSON.parse(JSON.stringify(this.items[t]))),await this.saveItems(),this.itemDialog.item=this.items[t],this.itemDialog.isEditing=!1,this.itemDialog.editedItem=null}},confirmDeleteItem(t){var n;const e=this.items.find(g=>g.id===t);e&&(this.deleteDialog={show:!0,title:"删除确认",text:`确定要删除 "${e.name}" 吗?`,itemId:t,action:"deleteItem"},this.itemDialog.show&&((n=this.itemDialog.item)==null?void 0:n.id)===t&&(this.itemDialog.show=!1))},confirmDeleteCompleted(){const t=this.items.filter(e=>e.completed).length;this.deleteDialog={show:!0,title:"删除已完成项目",text:`确定要删除所有已完成的项目吗?(共 ${t} 项)`,action:"deleteCompleted"}},confirmDelete(){this.deleteDialog.action==="deleteItem"&&this.deleteDialog.itemId?this.deleteItem(this.deleteDialog.itemId):this.deleteDialog.action==="deleteCompleted"&&this.deleteCompletedItems(),this.deleteDialog.show=!1},async deleteItem(t){this.items=this.items.filter(e=>e.id!==t),this.originalItems=this.originalItems.filter(e=>e.id!==t),await this.saveItems()},async deleteCompletedItems(){this.items=this.items.filter(t=>!t.completed),this.originalItems=this.originalItems.filter(t=>!t.completed),await this.saveItems()},async updateItemStatus(t,e){const n=this.items.find(g=>g.id===t);if(n){n.completed=e;const g=this.originalItems.find(s=>s.id===t);g&&(g.completed=e),await this.saveItems()}},async saveItems(){try{await h.saveData(`classworks-list-${this.listId}`,this.items)}catch(t){console.error("Failed to save items",t)}},randomSort(){const t=this.items.map(e=>{const n=this.hashCode(e.id+this.sortSeed);return{...e,randomValue:this.seededRandom(n)}});t.sort((e,n)=>e.randomValue-n.randomValue),this.items=t.map(e=>{const n={...e};return delete n.randomValue,n}),this.isRandomSorted=!0,this.saveItems()},resetSort(){this.items=JSON.parse(JSON.stringify(this.originalItems)),this.isRandomSorted=!1,this.saveItems()},hashCode(t){let e=0;for(let n=0;n[i(r,{icon:"mdi-arrow-left",variant:"text",onClick:e[0]||(e[0]=a=>t.$router.push("/"))})]),default:l(()=>[s.list&&!s.isRenaming?(m(),p(E,{key:0,class:"text-h6"},{default:l(()=>[o(f(s.list.name),1)]),_:1})):(m(),p(E,{key:1,class:"text-h6"},{default:l(()=>[...e[14]||(e[14]=[o("列表",-1)])]),_:1}))]),_:1}),i(Y,null,{default:l(()=>[M("div",te,[i(r,{border:"",class:"mr-2",icon:"",to:"/list"},{default:l(()=>[i(I,null,{default:l(()=>[...e[15]||(e[15]=[o("mdi-arrow-left",-1)])]),_:1})]),_:1}),s.list&&!s.isRenaming?(m(),u("h1",ie,[o(f(s.list.name)+" ",1),i(r,{border:"",icon:"",size:"small",onClick:d.startRenaming},{default:l(()=>[i(I,null,{default:l(()=>[...e[16]||(e[16]=[o("mdi-pencil",-1)])]),_:1})]),_:1},8,["onClick"])])):s.list&&s.isRenaming?(m(),u("div",le,[i(x,{modelValue:s.newListName,"onUpdate:modelValue":e[1]||(e[1]=a=>s.newListName=a),autofocus:"",class:"mr-2",density:"compact","hide-details":"",label:"列表名称",style:{"min-width":"200px"},onKeyup:P(d.saveListName,["enter"])},null,8,["modelValue","onKeyup"]),i(r,{class:"mr-2",color:"primary",size:"small",onClick:d.saveListName},{default:l(()=>[i(I,null,{default:l(()=>[...e[17]||(e[17]=[o("mdi-check",-1)])]),_:1})]),_:1},8,["onClick"]),i(r,{color:"error",size:"small",onClick:d.cancelRenaming},{default:l(()=>[i(I,null,{default:l(()=>[...e[18]||(e[18]=[o("mdi-close",-1)])]),_:1})]),_:1},8,["onClick"])])):(m(),u("h1",se," 加载中... "))]),i(c,{border:"",class:"mb-5",rounded:"xl"},{default:l(()=>[i(D,{class:"d-flex align-center"},{default:l(()=>[e[21]||(e[21]=o(" 项目列表 ",-1)),i(y),i(K,{modelValue:s.sortType,"onUpdate:modelValue":e[2]||(e[2]=a=>s.sortType=a),mandatory:""},{default:l(()=>[i(r,{value:"default"},{default:l(()=>[i(I,null,{default:l(()=>[...e[19]||(e[19]=[o("mdi-sort-alphabetical-ascending",-1)])]),_:1})]),_:1}),i(r,{value:"completed"},{default:l(()=>[i(I,null,{default:l(()=>[...e[20]||(e[20]=[o("mdi-check-circle-outline",-1)])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.sortedItems.length===0?(m(),p(V,{key:0},{default:l(()=>[...e[22]||(e[22]=[o(" 暂无项目,请添加新项目 ",-1)])]),_:1})):(m(),p(R,{key:1,"select-strategy":"leaf"},{default:l(()=>[(m(!0),u(k,null,j(d.sortedItems,(a,w)=>(m(),p(C,{key:a.id,class:T({"text-decoration-line-through":a.completed}),onClick:L=>d.openItemDetails(a)},{prepend:l(()=>[i($,{start:""},{default:l(()=>[i(H,{"model-value":a.completed,"onUpdate:modelValue":L=>d.updateItemStatus(a.id,L),onClick:e[3]||(e[3]=q(()=>{},["stop"]))},null,8,["model-value","onUpdate:modelValue"])]),_:2},1024)]),append:l(()=>[o(f(w+1),1)]),default:l(()=>[o(" "+f(a.name)+" ",1),i(v,null,{default:l(()=>[o(f(a.description),1)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})),d.sortedItems.length>0?(m(),p(b,{key:2},{default:l(()=>[i(y),i(r,{disabled:!d.hasCompletedItems,color:"error","prepend-icon":"mdi-delete-sweep",onClick:d.confirmDeleteCompleted},{default:l(()=>[...e[23]||(e[23]=[o(" 删除已完成项目 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})):N("",!0)]),_:1}),i(c,{border:"",class:"mb-5",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[...e[24]||(e[24]=[o("添加新项目",-1)])]),_:1}),i(V,null,{default:l(()=>[i(x,{modelValue:s.newItemName,"onUpdate:modelValue":e[4]||(e[4]=a=>s.newItemName=a),rules:[a=>!!a||"名称不能为空"],label:"项目名称"},null,8,["modelValue","rules"]),i(r,{disabled:!s.newItemName,color:"primary",onClick:d.addItem},{default:l(()=>[...e[25]||(e[25]=[o(" 添加 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1}),i(c,{border:"",class:"mb-5",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[...e[26]||(e[26]=[o("列表排序",-1)])]),_:1}),i(V,null,{default:l(()=>[i(x,{modelValue:s.sortSeed,"onUpdate:modelValue":e[5]||(e[5]=a=>s.sortSeed=a),class:"mb-3",hint:"输入相同的种子值可以得到相同的排序结果",label:"排序种子 (任意数字或文本)","persistent-hint":""},null,8,["modelValue"]),i(r,{class:"mr-2",color:"primary",onClick:d.randomSort},{default:l(()=>[...e[27]||(e[27]=[o(" 随机排序 ",-1)])]),_:1},8,["onClick"]),i(r,{variant:"text",onClick:d.resetSort},{default:l(()=>[...e[28]||(e[28]=[o(" 撤销 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1}),i(A,{modelValue:s.deleteDialog.show,"onUpdate:modelValue":e[7]||(e[7]=a=>s.deleteDialog.show=a),"max-width":"500"},{default:l(()=>[i(c,{border:"",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[o(f(s.deleteDialog.title),1)]),_:1}),i(V,null,{default:l(()=>[o(f(s.deleteDialog.text),1)]),_:1}),i(b,null,{default:l(()=>[i(y),i(r,{color:"primary",variant:"text",onClick:e[6]||(e[6]=a=>s.deleteDialog.show=!1)},{default:l(()=>[...e[29]||(e[29]=[o(" 取消 ",-1)])]),_:1}),i(r,{color:"error",variant:"text",onClick:d.confirmDelete},{default:l(()=>[...e[30]||(e[30]=[o(" 确认删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),i(A,{modelValue:s.itemDialog.show,"onUpdate:modelValue":e[13]||(e[13]=a=>s.itemDialog.show=a),"max-width":"600"},{default:l(()=>[i(c,{border:"",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[s.itemDialog.isEditing?(m(),u("span",ae,"编辑项目")):(m(),u("span",oe,"项目详情"))]),_:1}),i(V,null,{default:l(()=>[!s.itemDialog.isEditing&&s.itemDialog.item?(m(),u("div",ne,[i(R,null,{default:l(()=>[i(C,null,{default:l(()=>[i(S,{class:"text-subtitle-1 font-weight-bold"},{default:l(()=>[o(f(s.itemDialog.item.name),1)]),_:1}),i(v,null,{default:l(()=>[o(f(s.itemDialog.item.id),1)]),_:1})]),_:1}),i(C,null,{default:l(()=>[i(S,{class:"text-subtitle-1 font-weight-bold"},{default:l(()=>[...e[31]||(e[31]=[o("状态",-1)])]),_:1}),i(v,null,{default:l(()=>[i(Q,{color:s.itemDialog.item.completed?"success":"warning",size:"small"},{default:l(()=>[o(f(s.itemDialog.item.completed?"已完成":"未完成"),1)]),_:1},8,["color"])]),_:1})]),_:1}),s.itemDialog.item.description?(m(),p(C,{key:0},{default:l(()=>[i(S,{class:"text-subtitle-1 font-weight-bold"},{default:l(()=>[...e[32]||(e[32]=[o("描述",-1)])]),_:1}),i(v,null,{default:l(()=>[o(f(s.itemDialog.item.description),1)]),_:1})]),_:1})):N("",!0)]),_:1})])):s.itemDialog.isEditing&&s.itemDialog.item?(m(),u("div",de,[i(x,{modelValue:s.itemDialog.editedItem.name,"onUpdate:modelValue":e[8]||(e[8]=a=>s.itemDialog.editedItem.name=a),class:"mb-3",label:"名称",variant:"outlined"},null,8,["modelValue"]),i(W,{modelValue:s.itemDialog.editedItem.description,"onUpdate:modelValue":e[9]||(e[9]=a=>s.itemDialog.editedItem.description=a),class:"mb-3",label:"描述",rows:"3",variant:"outlined"},null,8,["modelValue"]),i(X,{modelValue:s.itemDialog.editedItem.completed,"onUpdate:modelValue":e[10]||(e[10]=a=>s.itemDialog.editedItem.completed=a),color:"success","hide-details":"",label:"已完成"},null,8,["modelValue"])])):N("",!0)]),_:1}),i(b,null,{default:l(()=>[i(y),s.itemDialog.isEditing?(m(),u(k,{key:1},[i(r,{color:"success",variant:"text",onClick:d.saveItemChanges},{default:l(()=>[...e[36]||(e[36]=[o(" 保存 ",-1)])]),_:1},8,["onClick"]),i(r,{color:"secondary",variant:"text",onClick:d.cancelEditingItem},{default:l(()=>[...e[37]||(e[37]=[o(" 取消 ",-1)])]),_:1},8,["onClick"])],64)):(m(),u(k,{key:0},[i(r,{color:"primary",variant:"text",onClick:d.startEditingItem},{default:l(()=>[...e[33]||(e[33]=[o(" 编辑 ",-1)])]),_:1},8,["onClick"]),i(r,{color:"error",variant:"text",onClick:e[11]||(e[11]=a=>{var w;return d.confirmDeleteItem((w=s.itemDialog.item)==null?void 0:w.id)})},{default:l(()=>[...e[34]||(e[34]=[o(" 删除 ",-1)])]),_:1}),i(r,{color:"secondary",variant:"text",onClick:e[12]||(e[12]=a=>s.itemDialog.show=!1)},{default:l(()=>[...e[35]||(e[35]=[o(" 关闭 ",-1)])]),_:1})],64))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})],64)}const we=z(ee,[["render",me]]);export{we as default}; +import{d as h}from"./dataProvider-Cg4CSn_f.js";import{g as _,b as B,c as i,n as O,d as T,p as U,m as J,h as F,_ as z,o as m,C as u,w as l,j as p,v as o,A as f,y as r,i as M,t as I,N as P,l as c,q as D,x as y,B as K,z as V,P as R,F as k,G as j,Q as C,a1 as v,O as q,M as b,D as N,H as A,a0 as S}from"./index-BXl8SUNP.js";import{b as E,c as G}from"./VAppBarTitle-hRIhv4pw.js";import{V as x}from"./VTextField-DxxbesnN.js";import{V as H}from"./VCheckboxBtn-iC2wkMdx.js";import{V as Q}from"./VChip-jIQL7s_d.js";import{V as W}from"./VTextarea-B0_PT1is.js";import{V as X}from"./VSwitch-7fkmr9E6.js";import{V as Y}from"./VContainer-Doz_PneH.js";import"./serverRotation-BBUKyTw9.js";const Z=U({start:Boolean,end:Boolean,...F(),...J()},"VListItemAction"),$=_()({name:"VListItemAction",props:Z(),setup(t,e){let{slots:n}=e;return B(()=>i(t.tag,{class:T(["v-list-item-action",{"v-list-item-action--start":t.start,"v-list-item-action--end":t.end},t.class]),style:O(t.style)},n)),{}}}),ee={data(){return{listId:null,list:null,items:[],originalItems:[],newItemName:"",sortSeed:"1",sortType:"default",isRandomSorted:!1,deleteDialog:{show:!1,title:"",text:"",itemId:null,action:null},isRenaming:!1,newListName:"",itemDialog:{show:!1,item:null,isEditing:!1,editedItem:null}}},computed:{sortedItems(){return this.sortType==="completed"?[...this.items].sort((t,e)=>t.completed===e.completed?0:t.completed?1:-1):this.items},hasCompletedItems(){return this.items.some(t=>t.completed)}},async created(){this.listId=this.$route.params.id,await Promise.all([this.loadListInfo(),this.loadItems()])},methods:{async loadListInfo(){try{const t=await h.loadData("classworks-list-info");t&&Array.isArray(t)&&(this.list=t.find(e=>e.id===this.listId)),this.list||this.$router.push("/list")}catch(t){console.error("Failed to load list info",t),this.$router.push("/list")}},startRenaming(){this.list&&(this.newListName=this.list.name,this.isRenaming=!0)},cancelRenaming(){this.isRenaming=!1,this.newListName=""},async saveListName(){if(this.newListName.trim())try{const t=await h.loadData("classworks-list-info");if(t&&Array.isArray(t)){const e=t.findIndex(n=>n.id===this.listId);e!==-1&&(t[e].name=this.newListName.trim(),await h.saveData("classworks-list-info",t),this.list.name=this.newListName.trim())}this.isRenaming=!1}catch(t){console.error("Failed to update list name",t)}},async loadItems(){try{let t=await h.loadData(`classworks-list-${this.listId}`);(!t||!Array.isArray(t))&&(t=[],await h.saveData(`classworks-list-${this.listId}`,t)),this.items=t.map(e=>typeof e.completed>"u"?{id:e.id||Date.now()+Math.floor(Math.random()*1e3),name:e.name,completed:!1,description:e.description||""}:{...e,description:e.description||""}),this.originalItems=JSON.parse(JSON.stringify(this.items))}catch(t){console.error("Failed to load items",t),this.items=[],this.originalItems=[]}},async addItem(){if(!this.newItemName)return;const t={id:Date.now().toString(),name:this.newItemName,completed:!1,description:""};this.items.push(t),this.originalItems.push(JSON.parse(JSON.stringify(t))),await this.saveItems(),this.newItemName=""},openItemDetails(t){this.itemDialog={show:!0,item:t,isEditing:!1,editedItem:null}},startEditingItem(){this.itemDialog.item&&(this.itemDialog.isEditing=!0,this.itemDialog.editedItem=JSON.parse(JSON.stringify(this.itemDialog.item)))},cancelEditingItem(){this.itemDialog.isEditing=!1,this.itemDialog.editedItem=null},async saveItemChanges(){if(!this.itemDialog.editedItem)return;const t=this.items.findIndex(e=>e.id===this.itemDialog.item.id);if(t!==-1){this.items[t]={...this.itemDialog.editedItem};const e=this.originalItems.findIndex(n=>n.id===this.itemDialog.item.id);e!==-1&&(this.originalItems[e]=JSON.parse(JSON.stringify(this.items[t]))),await this.saveItems(),this.itemDialog.item=this.items[t],this.itemDialog.isEditing=!1,this.itemDialog.editedItem=null}},confirmDeleteItem(t){var n;const e=this.items.find(g=>g.id===t);e&&(this.deleteDialog={show:!0,title:"删除确认",text:`确定要删除 "${e.name}" 吗?`,itemId:t,action:"deleteItem"},this.itemDialog.show&&((n=this.itemDialog.item)==null?void 0:n.id)===t&&(this.itemDialog.show=!1))},confirmDeleteCompleted(){const t=this.items.filter(e=>e.completed).length;this.deleteDialog={show:!0,title:"删除已完成项目",text:`确定要删除所有已完成的项目吗?(共 ${t} 项)`,action:"deleteCompleted"}},confirmDelete(){this.deleteDialog.action==="deleteItem"&&this.deleteDialog.itemId?this.deleteItem(this.deleteDialog.itemId):this.deleteDialog.action==="deleteCompleted"&&this.deleteCompletedItems(),this.deleteDialog.show=!1},async deleteItem(t){this.items=this.items.filter(e=>e.id!==t),this.originalItems=this.originalItems.filter(e=>e.id!==t),await this.saveItems()},async deleteCompletedItems(){this.items=this.items.filter(t=>!t.completed),this.originalItems=this.originalItems.filter(t=>!t.completed),await this.saveItems()},async updateItemStatus(t,e){const n=this.items.find(g=>g.id===t);if(n){n.completed=e;const g=this.originalItems.find(s=>s.id===t);g&&(g.completed=e),await this.saveItems()}},async saveItems(){try{await h.saveData(`classworks-list-${this.listId}`,this.items)}catch(t){console.error("Failed to save items",t)}},randomSort(){const t=this.items.map(e=>{const n=this.hashCode(e.id+this.sortSeed);return{...e,randomValue:this.seededRandom(n)}});t.sort((e,n)=>e.randomValue-n.randomValue),this.items=t.map(e=>{const n={...e};return delete n.randomValue,n}),this.isRandomSorted=!0,this.saveItems()},resetSort(){this.items=JSON.parse(JSON.stringify(this.originalItems)),this.isRandomSorted=!1,this.saveItems()},hashCode(t){let e=0;for(let n=0;n[i(r,{icon:"mdi-arrow-left",variant:"text",onClick:e[0]||(e[0]=a=>t.$router.push("/"))})]),default:l(()=>[s.list&&!s.isRenaming?(m(),p(E,{key:0,class:"text-h6"},{default:l(()=>[o(f(s.list.name),1)]),_:1})):(m(),p(E,{key:1,class:"text-h6"},{default:l(()=>[...e[14]||(e[14]=[o("列表",-1)])]),_:1}))]),_:1}),i(Y,null,{default:l(()=>[M("div",te,[i(r,{border:"",class:"mr-2",icon:"",to:"/list"},{default:l(()=>[i(I,null,{default:l(()=>[...e[15]||(e[15]=[o("mdi-arrow-left",-1)])]),_:1})]),_:1}),s.list&&!s.isRenaming?(m(),u("h1",ie,[o(f(s.list.name)+" ",1),i(r,{border:"",icon:"",size:"small",onClick:d.startRenaming},{default:l(()=>[i(I,null,{default:l(()=>[...e[16]||(e[16]=[o("mdi-pencil",-1)])]),_:1})]),_:1},8,["onClick"])])):s.list&&s.isRenaming?(m(),u("div",le,[i(x,{modelValue:s.newListName,"onUpdate:modelValue":e[1]||(e[1]=a=>s.newListName=a),autofocus:"",class:"mr-2",density:"compact","hide-details":"",label:"列表名称",style:{"min-width":"200px"},onKeyup:P(d.saveListName,["enter"])},null,8,["modelValue","onKeyup"]),i(r,{class:"mr-2",color:"primary",size:"small",onClick:d.saveListName},{default:l(()=>[i(I,null,{default:l(()=>[...e[17]||(e[17]=[o("mdi-check",-1)])]),_:1})]),_:1},8,["onClick"]),i(r,{color:"error",size:"small",onClick:d.cancelRenaming},{default:l(()=>[i(I,null,{default:l(()=>[...e[18]||(e[18]=[o("mdi-close",-1)])]),_:1})]),_:1},8,["onClick"])])):(m(),u("h1",se," 加载中... "))]),i(c,{border:"",class:"mb-5",rounded:"xl"},{default:l(()=>[i(D,{class:"d-flex align-center"},{default:l(()=>[e[21]||(e[21]=o(" 项目列表 ",-1)),i(y),i(K,{modelValue:s.sortType,"onUpdate:modelValue":e[2]||(e[2]=a=>s.sortType=a),mandatory:""},{default:l(()=>[i(r,{value:"default"},{default:l(()=>[i(I,null,{default:l(()=>[...e[19]||(e[19]=[o("mdi-sort-alphabetical-ascending",-1)])]),_:1})]),_:1}),i(r,{value:"completed"},{default:l(()=>[i(I,null,{default:l(()=>[...e[20]||(e[20]=[o("mdi-check-circle-outline",-1)])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1}),d.sortedItems.length===0?(m(),p(V,{key:0},{default:l(()=>[...e[22]||(e[22]=[o(" 暂无项目,请添加新项目 ",-1)])]),_:1})):(m(),p(R,{key:1,"select-strategy":"leaf"},{default:l(()=>[(m(!0),u(k,null,j(d.sortedItems,(a,w)=>(m(),p(C,{key:a.id,class:T({"text-decoration-line-through":a.completed}),onClick:L=>d.openItemDetails(a)},{prepend:l(()=>[i($,{start:""},{default:l(()=>[i(H,{"model-value":a.completed,"onUpdate:modelValue":L=>d.updateItemStatus(a.id,L),onClick:e[3]||(e[3]=q(()=>{},["stop"]))},null,8,["model-value","onUpdate:modelValue"])]),_:2},1024)]),append:l(()=>[o(f(w+1),1)]),default:l(()=>[o(" "+f(a.name)+" ",1),i(v,null,{default:l(()=>[o(f(a.description),1)]),_:2},1024)]),_:2},1032,["class","onClick"]))),128))]),_:1})),d.sortedItems.length>0?(m(),p(b,{key:2},{default:l(()=>[i(y),i(r,{disabled:!d.hasCompletedItems,color:"error","prepend-icon":"mdi-delete-sweep",onClick:d.confirmDeleteCompleted},{default:l(()=>[...e[23]||(e[23]=[o(" 删除已完成项目 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})):N("",!0)]),_:1}),i(c,{border:"",class:"mb-5",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[...e[24]||(e[24]=[o("添加新项目",-1)])]),_:1}),i(V,null,{default:l(()=>[i(x,{modelValue:s.newItemName,"onUpdate:modelValue":e[4]||(e[4]=a=>s.newItemName=a),rules:[a=>!!a||"名称不能为空"],label:"项目名称"},null,8,["modelValue","rules"]),i(r,{disabled:!s.newItemName,color:"primary",onClick:d.addItem},{default:l(()=>[...e[25]||(e[25]=[o(" 添加 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1}),i(c,{border:"",class:"mb-5",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[...e[26]||(e[26]=[o("列表排序",-1)])]),_:1}),i(V,null,{default:l(()=>[i(x,{modelValue:s.sortSeed,"onUpdate:modelValue":e[5]||(e[5]=a=>s.sortSeed=a),class:"mb-3",hint:"输入相同的种子值可以得到相同的排序结果",label:"排序种子 (任意数字或文本)","persistent-hint":""},null,8,["modelValue"]),i(r,{class:"mr-2",color:"primary",onClick:d.randomSort},{default:l(()=>[...e[27]||(e[27]=[o(" 随机排序 ",-1)])]),_:1},8,["onClick"]),i(r,{variant:"text",onClick:d.resetSort},{default:l(()=>[...e[28]||(e[28]=[o(" 撤销 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1}),i(A,{modelValue:s.deleteDialog.show,"onUpdate:modelValue":e[7]||(e[7]=a=>s.deleteDialog.show=a),"max-width":"500"},{default:l(()=>[i(c,{border:"",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[o(f(s.deleteDialog.title),1)]),_:1}),i(V,null,{default:l(()=>[o(f(s.deleteDialog.text),1)]),_:1}),i(b,null,{default:l(()=>[i(y),i(r,{color:"primary",variant:"text",onClick:e[6]||(e[6]=a=>s.deleteDialog.show=!1)},{default:l(()=>[...e[29]||(e[29]=[o(" 取消 ",-1)])]),_:1}),i(r,{color:"error",variant:"text",onClick:d.confirmDelete},{default:l(()=>[...e[30]||(e[30]=[o(" 确认删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),i(A,{modelValue:s.itemDialog.show,"onUpdate:modelValue":e[13]||(e[13]=a=>s.itemDialog.show=a),"max-width":"600"},{default:l(()=>[i(c,{border:"",rounded:"xl"},{default:l(()=>[i(D,null,{default:l(()=>[s.itemDialog.isEditing?(m(),u("span",ae,"编辑项目")):(m(),u("span",oe,"项目详情"))]),_:1}),i(V,null,{default:l(()=>[!s.itemDialog.isEditing&&s.itemDialog.item?(m(),u("div",ne,[i(R,null,{default:l(()=>[i(C,null,{default:l(()=>[i(S,{class:"text-subtitle-1 font-weight-bold"},{default:l(()=>[o(f(s.itemDialog.item.name),1)]),_:1}),i(v,null,{default:l(()=>[o(f(s.itemDialog.item.id),1)]),_:1})]),_:1}),i(C,null,{default:l(()=>[i(S,{class:"text-subtitle-1 font-weight-bold"},{default:l(()=>[...e[31]||(e[31]=[o("状态",-1)])]),_:1}),i(v,null,{default:l(()=>[i(Q,{color:s.itemDialog.item.completed?"success":"warning",size:"small"},{default:l(()=>[o(f(s.itemDialog.item.completed?"已完成":"未完成"),1)]),_:1},8,["color"])]),_:1})]),_:1}),s.itemDialog.item.description?(m(),p(C,{key:0},{default:l(()=>[i(S,{class:"text-subtitle-1 font-weight-bold"},{default:l(()=>[...e[32]||(e[32]=[o("描述",-1)])]),_:1}),i(v,null,{default:l(()=>[o(f(s.itemDialog.item.description),1)]),_:1})]),_:1})):N("",!0)]),_:1})])):s.itemDialog.isEditing&&s.itemDialog.item?(m(),u("div",de,[i(x,{modelValue:s.itemDialog.editedItem.name,"onUpdate:modelValue":e[8]||(e[8]=a=>s.itemDialog.editedItem.name=a),class:"mb-3",label:"名称",variant:"outlined"},null,8,["modelValue"]),i(W,{modelValue:s.itemDialog.editedItem.description,"onUpdate:modelValue":e[9]||(e[9]=a=>s.itemDialog.editedItem.description=a),class:"mb-3",label:"描述",rows:"3",variant:"outlined"},null,8,["modelValue"]),i(X,{modelValue:s.itemDialog.editedItem.completed,"onUpdate:modelValue":e[10]||(e[10]=a=>s.itemDialog.editedItem.completed=a),color:"success","hide-details":"",label:"已完成"},null,8,["modelValue"])])):N("",!0)]),_:1}),i(b,null,{default:l(()=>[i(y),s.itemDialog.isEditing?(m(),u(k,{key:1},[i(r,{color:"success",variant:"text",onClick:d.saveItemChanges},{default:l(()=>[...e[36]||(e[36]=[o(" 保存 ",-1)])]),_:1},8,["onClick"]),i(r,{color:"secondary",variant:"text",onClick:d.cancelEditingItem},{default:l(()=>[...e[37]||(e[37]=[o(" 取消 ",-1)])]),_:1},8,["onClick"])],64)):(m(),u(k,{key:0},[i(r,{color:"primary",variant:"text",onClick:d.startEditingItem},{default:l(()=>[...e[33]||(e[33]=[o(" 编辑 ",-1)])]),_:1},8,["onClick"]),i(r,{color:"error",variant:"text",onClick:e[11]||(e[11]=a=>{var w;return d.confirmDeleteItem((w=s.itemDialog.item)==null?void 0:w.id)})},{default:l(()=>[...e[34]||(e[34]=[o(" 删除 ",-1)])]),_:1}),i(r,{color:"secondary",variant:"text",onClick:e[12]||(e[12]=a=>s.itemDialog.show=!1)},{default:l(()=>[...e[35]||(e[35]=[o(" 关闭 ",-1)])]),_:1})],64))]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})],64)}const we=z(ee,[["render",me]]);export{we as default}; diff --git a/assets/authorize-B6ScKHRa.js b/assets/authorize-DZSBaQ17.js similarity index 87% rename from assets/authorize-B6ScKHRa.js rename to assets/authorize-DZSBaQ17.js index 546018f..aad414e 100644 --- a/assets/authorize-B6ScKHRa.js +++ b/assets/authorize-DZSBaQ17.js @@ -1 +1 @@ -import{ao as V,ap as g,Z as _,s as c,k,o as u,j as l,w as e,c as a,l as y,q as C,v as i,A as d,z as h,ag as x,D as p,i as T,M as B,x as N,y as S,a2 as f}from"./index-BUM0TY0E.js";import{V as w,a as R}from"./VRow-CPw1R1BU.js";import{V as j}from"./VContainer-DakLDC1m.js";const M={__name:"authorize",setup(q){const m=V(),n=g(),s=f("processing"),r=f("正在验证授权信息...");_(async()=>{try{const t=m.query.token;if(!t){s.value="error",r.value="未获取到授权令牌";return}c("server.kvToken",t);const o=k("device.uuid");o&&o!=="00000000-0000-4000-8000-000000000000"?(c("device.uuid","00000000-0000-4000-8000-000000000000"),r.value="授权成功!已完成数据迁移。"):r.value="授权成功!",s.value="success",n.push("/")}catch(t){console.error("授权处理失败:",t),s.value="error",r.value=`授权失败: ${t.message}`}});const v=()=>{n.push("/")};return(t,o)=>(u(),l(j,{class:"fill-height",fluid:""},{default:e(()=>[a(w,{align:"center",justify:"center"},{default:e(()=>[a(R,{cols:"12",md:"6",sm:"8"},{default:e(()=>[a(y,null,{default:e(()=>[a(C,{class:"text-h5"},{default:e(()=>[i(d(s.value==="processing"?"正在处理授权...":s.value==="success"?"授权成功":"授权失败"),1)]),_:1}),a(h,null,{default:e(()=>[s.value==="processing"?(u(),l(x,{key:0,class:"mb-4",color:"primary",indeterminate:""})):p("",!0),T("p",null,d(r.value),1)]),_:1}),s.value!=="processing"?(u(),l(B,{key:0},{default:e(()=>[a(N),a(S,{color:"primary",onClick:v},{default:e(()=>[...o[0]||(o[0]=[i("返回首页",-1)])]),_:1})]),_:1})):p("",!0)]),_:1})]),_:1})]),_:1})]),_:1}))}};export{M as default}; +import{ao as V,ap as g,Z as _,s as c,k,o as u,j as l,w as e,c as a,l as y,q as C,v as i,A as d,z as h,ag as x,D as p,i as T,M as B,x as N,y as S,a2 as f}from"./index-BXl8SUNP.js";import{V as w,a as R}from"./VRow-DFPdcq_b.js";import{V as j}from"./VContainer-Doz_PneH.js";const M={__name:"authorize",setup(q){const m=V(),n=g(),s=f("processing"),r=f("正在验证授权信息...");_(async()=>{try{const t=m.query.token;if(!t){s.value="error",r.value="未获取到授权令牌";return}c("server.kvToken",t);const o=k("device.uuid");o&&o!=="00000000-0000-4000-8000-000000000000"?(c("device.uuid","00000000-0000-4000-8000-000000000000"),r.value="授权成功!已完成数据迁移。"):r.value="授权成功!",s.value="success",n.push("/")}catch(t){console.error("授权处理失败:",t),s.value="error",r.value=`授权失败: ${t.message}`}});const v=()=>{n.push("/")};return(t,o)=>(u(),l(j,{class:"fill-height",fluid:""},{default:e(()=>[a(w,{align:"center",justify:"center"},{default:e(()=>[a(R,{cols:"12",md:"6",sm:"8"},{default:e(()=>[a(y,null,{default:e(()=>[a(C,{class:"text-h5"},{default:e(()=>[i(d(s.value==="processing"?"正在处理授权...":s.value==="success"?"授权成功":"授权失败"),1)]),_:1}),a(h,null,{default:e(()=>[s.value==="processing"?(u(),l(x,{key:0,class:"mb-4",color:"primary",indeterminate:""})):p("",!0),T("p",null,d(r.value),1)]),_:1}),s.value!=="processing"?(u(),l(B,{key:0},{default:e(()=>[a(N),a(S,{color:"primary",onClick:v},{default:e(()=>[...o[0]||(o[0]=[i("返回首页",-1)])]),_:1})]),_:1})):p("",!0)]),_:1})]),_:1})]),_:1})]),_:1}))}};export{M as default}; diff --git a/assets/cses2wakeup-CFK6QLBO.js b/assets/cses2wakeup-BmsqkMFZ.js similarity index 98% rename from assets/cses2wakeup-CFK6QLBO.js rename to assets/cses2wakeup-BmsqkMFZ.js index 9cdc2ae..58f030a 100644 --- a/assets/cses2wakeup-CFK6QLBO.js +++ b/assets/cses2wakeup-BmsqkMFZ.js @@ -1,4 +1,4 @@ -import{p as le,a3 as z,g as ye,aq as tt,ar as Ne,as as Re,ae as st,b as pe,at as lt,c as n,i as y,F as C,E as I,d as Fe,au as Me,a2 as Q,av as M,aw as at,ax as it,ay as we,az as rt,aA as Le,aB as nt,aC as ze,y as L,n as ot,aD as dt,aE as ut,aF as ct,aG as mt,aH as ft,aI as ht,aJ as ce,m as yt,aK as pt,aL as bt,aM as gt,_ as vt,o as m,j as S,w as r,l as q,q as me,t as j,v as c,Y as kt,z as te,A as p,D as T,B as Tt,C as b,G as R,aN as wt,M as xt,x as Dt}from"./index-BUM0TY0E.js";import{V as xe,a as X}from"./VRow-CPw1R1BU.js";import{V as Z}from"./VAlert-DFIvt6kt.js";import{V as We,a as Ct,b as Vt,c as De,d as fe,e as St,f as jt}from"./VTabsWindowItem-DtW2SDNN.js";import{V as W,a as Ce,m as Pt,b as At}from"./VChip-vdRDApTi.js";import{V as he,a as Ve}from"./VTooltip-COe_nB02.js";import{V as Et}from"./VTextarea-jqnFSwaH.js";import{u as Bt,a as Se,b as je,c as Nt,m as Rt,d as Ft,V as Mt}from"./VTextField-C579e7l1.js";import{V as Pe}from"./VSwitch-CjVC2rsZ.js";import{V as Lt}from"./VSkeletonLoader-DX2FpkIS.js";import{a as zt}from"./VPagination-CbPhc6Cb.js";import{V as Wt}from"./VContainer-DakLDC1m.js";import"./filter-ByuXXWRY.js";import"./VCheckboxBtn-CylQNaxd.js";function It(){function t(o){var s,i;return[...((s=o.dataTransfer)==null?void 0:s.items)??[]].filter(l=>l.kind==="file").map(l=>l.webkitGetAsEntry()).filter(Boolean).length>0||[...((i=o.dataTransfer)==null?void 0:i.files)??[]].length>0}async function e(o){var i,l;const a=[],s=[...((i=o.dataTransfer)==null?void 0:i.items)??[]].filter(d=>d.kind==="file").map(d=>d.webkitGetAsEntry()).filter(Boolean);if(s.length)for(const d of s){const f=await Ie(d,_e(".",d));a.push(...f.map(h=>h.file))}else a.push(...((l=o.dataTransfer)==null?void 0:l.files)??[]);return a}return{handleDrop:e,hasFilesOrFolders:t}}function Ie(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return new Promise((o,a)=>{t.isFile?t.file(i=>o([{file:i,path:e}]),a):t.isDirectory&&t.createReader().readEntries(async i=>{const l=[];for(const d of i)l.push(...await Ie(d,_e(e,d)));o(l)})})}function _e(t,e){return e.isDirectory?`${t}/${e.name}`:t}const _t=le({filterByType:String},"file-accept");function Ut(t){const e=z(()=>t.filterByType?Ot(t.filterByType):null);function o(a){if(e.value){const s=a.filter(e.value);return{accepted:s,rejected:a.filter(i=>!s.includes(i))}}return{accepted:a,rejected:[]}}return{filterAccepted:o}}function Ot(t){const e=t.split(",").map(i=>i.trim().toLowerCase()),o=e.filter(i=>i.startsWith(".")),a=e.filter(i=>i.endsWith("/*")),s=e.filter(i=>!o.includes(i)&&!a.includes(i));return i=>{var f,h;const l=((f=i.name.split(".").at(-1))==null?void 0:f.toLowerCase())??"",d=((h=i.type.split("/").at(0))==null?void 0:h.toLowerCase())??"";return s.includes(i.type)||o.includes(`.${l}`)||a.includes(`${d}/*`)}}const Yt=le({chips:Boolean,counter:Boolean,counterSizeString:{type:String,default:"$vuetify.fileInput.counterSize"},counterString:{type:String,default:"$vuetify.fileInput.counter"},hideInput:Boolean,multiple:Boolean,showSize:{type:[Boolean,Number,String],default:!1,validator:t=>typeof t=="boolean"||[1e3,1024].includes(Number(t))},truncateLength:{type:[Number,String],default:22},...Le(Ft({prependIcon:"$file"}),["direction"]),modelValue:{type:[Array,Object],default:t=>t.multiple?[]:null,validator:t=>Re(t).every(e=>e!=null&&typeof e=="object")},..._t(),...Rt({clearable:!0})},"VFileInput"),Ht=ye()({name:"VFileInput",inheritAttrs:!1,props:Yt(),emits:{"click:control":t=>!0,"mousedown:control":t=>!0,"update:focused":t=>!0,"update:modelValue":t=>!0,rejected:t=>!0},setup(t,e){let{attrs:o,emit:a,slots:s}=e;const{t:i}=tt(),{filterAccepted:l}=Ut(t),d=Ne(t,"modelValue",t.modelValue,u=>Re(u),u=>!t.multiple&&Array.isArray(u)?u[0]:u),{isFocused:f,focus:h,blur:v}=Bt(t),w=z(()=>typeof t.showSize!="boolean"?t.showSize:void 0),k=z(()=>(d.value??[]).reduce((u,g)=>{let{size:O=0}=g;return u+O},0)),V=z(()=>we(k.value,w.value)),D=z(()=>(d.value??[]).map(u=>{const{name:g="",size:O=0}=u,Y=re(g);return t.showSize?`${Y} (${we(O,w.value)})`:Y})),G=z(()=>{var g;const u=((g=d.value)==null?void 0:g.length)??0;return t.showSize?i(t.counterSizeString,u,V.value):i(t.counterString,u)}),A=Q(),P=Q(),x=Q(),B=M(()=>f.value||t.active),N=z(()=>["plain","underlined"].includes(t.variant)),E=rt(!1),{handleDrop:J,hasFilesOrFolders:F}=It();function U(){var u;x.value!==document.activeElement&&((u=x.value)==null||u.focus()),f.value||h()}function ae(u){var g;(g=x.value)==null||g.click()}function _(u){a("mousedown:control",u)}function ie(u){var g;(g=x.value)==null||g.click(),a("click:control",u)}function be(u){u.stopPropagation(),U(),at(()=>{d.value=[],it(t["onClick:clear"],u)})}function re(u){if(u.length{(!Array.isArray(u)||!u.length)&&x.value&&(x.value.value="")}),pe(()=>{const u=!!(s.counter||t.counter),g=!!(u||s.details),[O,Y]=lt(o),{modelValue:oe,...de}=Se.filterProps(t),He={...je.filterProps(t),"onClick:clear":be},Ge=o.webkitdirectory!==void 0&&o.webkitdirectory!==!1,Je=o.accept?String(o.accept):void 0,qe=Ge?void 0:t.filterByType??Je;return n(Se,I({ref:A,modelValue:t.multiple?d.value:d.value[0],class:["v-file-input",{"v-file-input--chips":!!t.chips,"v-file-input--dragging":E.value,"v-file-input--hide":t.hideInput,"v-input--plain-underlined":N.value},t.class],style:t.style,"onClick:prepend":ae},O,de,{centerAffix:!N.value,focused:f.value}),{...s,default:ue=>{let{id:ee,isDisabled:K,isDirty:ve,isReadonly:ke,isValid:Xe,hasDetails:Ke}=ue;return n(je,I({ref:P,prependIcon:t.prependIcon,onMousedown:_,onClick:ie,"onClick:prependInner":t["onClick:prependInner"],"onClick:appendInner":t["onClick:appendInner"]},He,{id:ee.value,active:B.value||ve.value,dirty:ve.value||t.dirty,disabled:K.value,focused:f.value,details:Ke.value,error:Xe.value===!1,onDragover:ne,onDrop:Oe}),{...s,default:Ze=>{var Te;let{props:{class:Qe,...$e},controlRef:et}=Ze;return y(C,null,[y("input",I({ref:H=>x.value=et.value=H,type:"file",accept:qe,readonly:ke.value,disabled:K.value,multiple:t.multiple,name:t.name,onClick:H=>{H.stopPropagation(),ke.value&&H.preventDefault(),U()},onChange:Ye,onDragleave:$,onFocus:U,onBlur:v},$e,Y),null),y("div",{class:Fe(Qe)},[!!((Te=d.value)!=null&&Te.length)&&!t.hideInput&&(s.selection?s.selection({fileNames:D.value,totalBytes:k.value,totalBytesReadable:V.value}):t.chips?D.value.map(H=>n(W,{key:H,size:"small",text:H},null)):D.value.join(", "))])])}})},details:g?ue=>{var ee,K;return y(C,null,[(ee=s.details)==null?void 0:ee.call(s,ue),u&&y(C,null,[y("span",null,null),n(Nt,{active:!!((K=d.value)!=null&&K.length),value:G.value,disabled:t.disabled},s.counter)])])}:void 0})}),Me({},A,P,x)}}),Ue=le({fixed:Boolean,sliderColor:String,sliderTransition:String,sliderTransitionDuration:[String,Number],hideSlider:Boolean,inset:Boolean,direction:{type:String,default:"horizontal"},...Le(ct({selectedClass:"v-tab--selected",variant:"text"}),["active","block","flat","location","position","symbol"])},"VTab"),se=ye()({name:"VTab",props:Ue(),setup(t,e){let{slots:o,attrs:a}=e;const{textColorClasses:s,textColorStyles:i}=nt(()=>t.sliderColor),{backgroundColorClasses:l,backgroundColorStyles:d}=ze(()=>t.sliderColor),f=Q(),h=Q(),v=z(()=>t.direction==="horizontal"),w=z(()=>{var A,P;return((P=(A=f.value)==null?void 0:A.group)==null?void 0:P.isSelected.value)??!1});function k(A,P){return{opacity:[0,1]}}function V(A,P){return t.direction==="vertical"?{transform:["scaleY(0)","scaleY(1)"]}:{transform:["scaleX(0)","scaleX(1)"]}}function D(A,P){const x=P.getBoundingClientRect(),B=A.getBoundingClientRect(),N=v.value?"x":"y",E=v.value?"X":"Y",J=v.value?"right":"bottom",F=v.value?"width":"height",U=x[N],ae=B[N],_=U>ae?x[J]-B[J]:x[N]-B[N],ie=Math.sign(_)>0?v.value?"right":"bottom":Math.sign(_)<0?v.value?"left":"top":"center",re=(Math.abs(_)+(Math.sign(_)<0?x[F]:B[F]))/Math.max(x[F],B[F])||0,ne=x[F]/B[F]||0,$=1.5;return{transform:[`translate${E}(${_}px) scale${E}(${ne})`,`translate${E}(${_/$}px) scale${E}(${(re-1)/$+1})`,"none"],transformOrigin:Array(3).fill(ie)}}function G(A){var x,B;let{value:P}=A;if(P){const N=(B=(x=f.value)==null?void 0:x.$el.parentElement)==null?void 0:B.querySelector(".v-tab--selected .v-tab__slider"),E=h.value;if(!N||!E)return;const J=getComputedStyle(N).color,F={fade:k,grow:V,shift:D}[t.sliderTransition??"shift"]??D,U=Number(t.sliderTransitionDuration)||({fade:400,grow:350,shift:225}[t.sliderTransition??"shift"]??225);dt(E,{backgroundColor:[J,"currentcolor"],...F(E,N)},{duration:U,easing:ut})}}return pe(()=>{const A=L.filterProps(t);return n(L,I({symbol:We,ref:f,class:["v-tab",t.class,w.value&&t.inset?l.value:[]],style:[t.style,w.value&&t.inset?d.value:[]],tabindex:w.value?0:-1,role:"tab","aria-selected":String(w.value),active:!1},A,a,{block:t.fixed,maxWidth:t.fixed?300:void 0,"onGroup:selected":G}),{...o,default:()=>{var P;return y(C,null,[((P=o.default)==null?void 0:P.call(o))??t.text,!t.hideSlider&&y("div",{ref:h,class:Fe(["v-tab__slider",s.value]),style:ot(i.value)},null)])}})}),Me({},f)}});function Gt(t){return t?t.map(e=>gt(e)?e:{text:e,value:e}):[]}const Jt=le({alignTabs:{type:String,default:"start"},color:String,fixedTabs:Boolean,items:{type:Array,default:()=>[]},stacked:Boolean,bgColor:String,grow:Boolean,height:{type:[Number,String],default:void 0},hideSlider:Boolean,inset:Boolean,insetPadding:[String,Number],insetRadius:[String,Number],sliderColor:String,...bt(Ue(),["spaced","sliderTransition","sliderTransitionDuration"]),...Pt({mandatory:"force",selectedClass:"v-tab-item--selected"}),...pt(),...yt()},"VTabs"),Ae=ye()({name:"VTabs",props:Jt(),emits:{"update:modelValue":t=>!0},setup(t,e){let{attrs:o,slots:a}=e;const s=Ne(t,"modelValue"),i=z(()=>Gt(t.items)),{densityClasses:l}=mt(t),{backgroundColorClasses:d,backgroundColorStyles:f}=ze(()=>t.bgColor),{scopeId:h}=ft();return ht({VTab:{color:M(t,"color"),direction:M(t,"direction"),stacked:M(t,"stacked"),fixed:M(t,"fixedTabs"),inset:M(t,"inset"),sliderColor:M(t,"sliderColor"),sliderTransition:M(t,"sliderTransition"),sliderTransitionDuration:M(t,"sliderTransitionDuration"),hideSlider:M(t,"hideSlider")}}),pe(()=>{const v=Ce.filterProps(t),w=!!(a.window||t.items.length>0);return y(C,null,[n(Ce,I(v,{modelValue:s.value,"onUpdate:modelValue":k=>s.value=k,class:["v-tabs",`v-tabs--${t.direction}`,`v-tabs--align-tabs-${t.alignTabs}`,{"v-tabs--fixed-tabs":t.fixedTabs,"v-tabs--grow":t.grow,"v-tabs--inset":t.inset,"v-tabs--stacked":t.stacked},l.value,d.value,t.class],style:[{"--v-tabs-height":ce(t.height),"--v-tabs-inset-padding":t.inset?ce(t.insetPadding):void 0,"--v-tabs-inset-radius":t.inset?ce(t.insetRadius):void 0},f.value,t.style],role:"tablist",symbol:We},h,o),{default:a.default??(()=>i.value.map(k=>{var V;return((V=a.tab)==null?void 0:V.call(a,{item:k}))??n(se,I(k,{key:k.text,value:k.value,spaced:t.spaced}),{default:a[`tab.${k.value}`]?()=>{var D;return(D=a[`tab.${k.value}`])==null?void 0:D.call(a,{item:k})}:void 0})})),prev:a.prev,next:a.next}),w&&n(Vt,I({modelValue:s.value,"onUpdate:modelValue":k=>s.value=k,key:"tabs-window"},h),{default:()=>{var k;return[i.value.map(V=>{var D;return((D=a.item)==null?void 0:D.call(a,{item:V}))??n(Ct,{value:V.value},{default:()=>{var G;return(G=a[`item.${V.value}`])==null?void 0:G.call(a,{item:V})}})}),(k=a.window)==null?void 0:k.call(a)]}})])}),{}}}),Ee=()=>new Promise((t,e)=>{if(typeof window.jsyaml<"u")return t(window.jsyaml);const o=document.createElement("script");o.src="https://cdnjs.cloudflare.com/ajax/libs/js-yaml/4.1.0/js-yaml.min.js",o.async=!0,o.onload=()=>t(window.jsyaml),o.onerror=()=>e(new Error("无法加载YAML解析库")),document.head.appendChild(o)});class Be{constructor(e){this.data=e,this.version=null,this.subjects=[],this.schedules=[],this._parseData()}_parseData(){if(!this.data)return;this.version=this.data.version||1;const e=this.data.subjects||[];for(const a of e)this.subjects.push({name:a.name,simplified_name:a.simplified_name||null,teacher:a.teacher||null,room:a.room||null});const o=this.data.schedules||[];for(const a of o){const s=[];for(const i of a.classes||[])s.push({subject:i.subject,start_time:i.start_time,end_time:i.end_time});this.schedules.push({name:a.name,enable_day:a.enable_day,weeks:a.weeks||"all",classes:s})}}getSubjects(){return this.subjects}getSchedules(){return this.schedules}getScheduleByDay(e){const o=this.schedules.find(a=>a.enable_day===e);return o?o.classes:[]}toCsesData(){return{version:this.version,subjects:this.subjects,schedules:this.schedules}}}const qt={name:"Cses2Wakeup",data(){return{activeTab:"text",file:null,jsonText:"",loading:!1,error:"",success:"",processedData:null,selectedRows:[],exportPeriods:[],selectedDays:[1,2,3,4,5,6,7],formatMode:"auto",yamlLibLoaded:!1,activeDay:null,subjectColors:{数学:"blue",语文:"red",英语:"green",物理:"purple",化学:"orange",生物:"teal",历史:"brown",地理:"indigo",政治:"pink",体育:"cyan",自习:"grey",早读:"amber",班会:"deep-purple",听力:"light-blue",信息技术:"light-green"},settings:{hideTeacherName:!1,hideRoom:!1,totalWeeks:30},tableHeaders:[{title:"",key:"data-table-select"},{title:"节次",key:"period"},{title:"周一",key:"1"},{title:"周二",key:"2"},{title:"周三",key:"3"},{title:"周四",key:"4"},{title:"周五",key:"5"},{title:"周六",key:"6"},{title:"周日",key:"7"}],timeTableHeaders:[{title:"节次",key:"period"},{title:"课程",key:"subject"},{title:"星期",key:"day"},{title:"开始时间",key:"startTime"},{title:"结束时间",key:"endTime"},{title:"教师",key:"teacher"},{title:"教室",key:"room"},{title:"周次",key:"weeks"}],dayNames:{1:"周一",2:"周二",3:"周三",4:"周四",5:"周五",6:"周六",7:"周日"}}},computed:{timeTableData(){if(!this.processedData||!this.processedData.tableData)return[];const t=[],e=this.processedData.tableData.filter(a=>this.exportPeriods.includes(a.period)),o={};return e.sort((a,s)=>a.period-s.period).forEach((a,s)=>{o[a.period]=s+1}),e.forEach(a=>{for(let s=1;s<=7;s++){if(!this.selectedDays.includes(s))continue;const i=a[s];if(i)if(Array.isArray(i))i.forEach(l=>{!l||!l.name||t.push({originalPeriod:a.period,period:o[a.period],subject:l.name,day:this.dayNames[s],startTime:l.startTime,endTime:l.endTime,teacher:this.settings.hideTeacherName?"":l.teacher||"",room:this.settings.hideRoom?"":l.room||"",weeks:l.weekType?`1-${this.settings.totalWeeks}${l.weekType}`:`1-${this.settings.totalWeeks}`})});else{if(!i.name)continue;t.push({originalPeriod:a.period,period:o[a.period],subject:i.name,day:this.dayNames[s],startTime:i.startTime,endTime:i.endTime,teacher:this.settings.hideTeacherName?"":i.teacher||"",room:this.settings.hideRoom?"":i.room||"",weeks:i.weekType?`1-${this.settings.totalWeeks}${i.weekType}`:`1-${this.settings.totalWeeks}`})}}}),t.sort((a,s)=>{if(a.period!==s.period)return a.period-s.period;const i={周一:1,周二:2,周三:3,周四:4,周五:5,周六:6,周日:7};return i[a.day]-i[s.day]})},hasExportData(){return this.processedData&&this.exportPeriods.length>0},totalClassHours(){return this.timeTableData.length},daysWithSchedule(){const t=[];for(let e=1;e<=7;e++)this.selectedDays.includes(e)&&this.getDaySchedule(e).length>0&&t.push(e);return t}},methods:{async handleFileChange(){if(this.resetData(),!this.file)return;const t=this.file.name.toLowerCase();if(t.endsWith(".json")||t.endsWith(".js"))this.formatMode="json";else if((t.endsWith(".yml")||t.endsWith(".yaml"))&&(this.formatMode="yaml",!this.yamlLibLoaded))try{await Ee(),this.yamlLibLoaded=!0}catch(e){this.error=`无法加载YAML解析库: ${e.message}`;return}try{const e=new FileReader;e.onload=async o=>{try{this.jsonText=o.target.result,await this.processInput()}catch(a){this.error=`文件读取失败: ${a.message}`}},e.onerror=()=>{this.error="文件读取失败"},e.readAsText(this.file)}catch(e){this.error=`文件处理失败: ${e.message}`}},handleTextChange(){this.resetData()},resetData(){this.error="",this.success="",this.processedData=null,this.selectedRows=[],this.exportPeriods=[]},async processInput(){if(!this.jsonText&&!this.file){this.error="请粘贴文本或上传文件";return}this.loading=!0,this.error="",this.success="";try{await this.$nextTick();let t;try{if(this.formatMode==="yaml"||this.formatMode==="auto"&&this.isYaml(this.jsonText)){const o=this.parseYaml(this.jsonText);t=new Be(o).toCsesData()}else t=JSON.parse(this.jsonText)}catch(o){throw new Error(`格式解析错误: ${o.message}`)}if(!this.validateCsesFormat(t))throw new Error("不是有效的CSES格式数据");const e=this.processCsesData(t);this.processedData=e,this.selectedDays=[1,2,3,4,5],this.success="数据处理成功!",e.tableData&&e.tableData.length>0&&(this.selectedRows=[...e.tableData],this.exportPeriods=e.tableData.map(o=>o.period))}catch(t){this.error="数据处理失败:"+t.message,console.error(t)}finally{this.loading=!1}},validateCsesFormat(t){return t instanceof Be?t.version===1&&Array.isArray(t.subjects)&&Array.isArray(t.schedules):!(!t||typeof t!="object"||t.version!==1||!Array.isArray(t.subjects)||!Array.isArray(t.schedules))},processCsesData(t){const{schedules:e,subjects:o}=t,a=Object.fromEntries(o.map(l=>[l.name,l])),s=[];let i=0;e.forEach(l=>{l.classes&&l.classes.length>i&&(i=l.classes.length)});for(let l=1;l<=i;l++)s.push({period:l,1:null,2:null,3:null,4:null,5:null,6:null,7:null});return e.forEach(l=>{const d=l.enable_day;if(!d||d<1||d>7)return;let f="";l.weeks==="odd"?f="单":l.weeks==="even"&&(f="双"),l.classes.forEach((h,v)=>{if(!h.subject)return;const w=v+1;if(w>i)return;const k=a[h.subject]||{},V={name:h.subject,teacher:k.teacher||"",room:k.room||"",period:w,startTime:h.start_time,endTime:h.end_time,day:d,weekType:f},D=s[w-1][d];D?f&&D.weekType&&f!==D.weekType?(Array.isArray(s[w-1][d])||(s[w-1][d]=[D]),s[w-1][d].push(V)):f===D.weekType?s[w-1][d]=V:f||(s[w-1][d]=V):s[w-1][d]=V})}),{tableData:s,originalData:t}},updateSelectedPeriods(t){this.exportPeriods=[],t&&t.length>0&&(this.exportPeriods=[...new Set(t.filter(e=>e&&typeof e.period=="number").map(e=>e.period))])},getTimeTableData(){return this.timeTableData},downloadCSV(){var s;if(!((s=this.processedData)!=null&&s.tableData)){this.error="没有可下载的数据";return}if(this.exportPeriods.length===0){this.error="请至少选择一节要导出的课";return}if(this.daysWithSchedule.length===0||this.totalClassHours===0){this.error="没有课程数据可导出";return}let t=`课程名称,星期,开始节数,结束节数,老师,地点,周数 +import{p as le,a3 as z,g as ye,aq as tt,ar as Ne,as as Re,ae as st,b as pe,at as lt,c as n,i as y,F as C,E as I,d as Fe,au as Me,a2 as Q,av as M,aw as at,ax as it,ay as we,az as rt,aA as Le,aB as nt,aC as ze,y as L,n as ot,aD as dt,aE as ut,aF as ct,aG as mt,aH as ft,aI as ht,aJ as ce,m as yt,aK as pt,aL as bt,aM as gt,_ as vt,o as m,j as S,w as r,l as q,q as me,t as j,v as c,Y as kt,z as te,A as p,D as T,B as Tt,C as b,G as R,aN as wt,M as xt,x as Dt}from"./index-BXl8SUNP.js";import{V as xe,a as X}from"./VRow-DFPdcq_b.js";import{V as Z}from"./VAlert-DncbAu3E.js";import{V as We,a as Ct,b as Vt,c as De,d as fe,e as St,f as jt}from"./VTabsWindowItem-CghRaqdq.js";import{V as W,a as Ce,m as Pt,b as At}from"./VChip-jIQL7s_d.js";import{V as he,a as Ve}from"./VTooltip-CyZjDjKS.js";import{V as Et}from"./VTextarea-B0_PT1is.js";import{u as Bt,a as Se,b as je,c as Nt,m as Rt,d as Ft,V as Mt}from"./VTextField-DxxbesnN.js";import{V as Pe}from"./VSwitch-7fkmr9E6.js";import{V as Lt}from"./VSkeletonLoader-DKLQDg5n.js";import{a as zt}from"./VPagination-BUmJ8K2V.js";import{V as Wt}from"./VContainer-Doz_PneH.js";import"./filter-BHXElGQ1.js";import"./VCheckboxBtn-iC2wkMdx.js";function It(){function t(o){var s,i;return[...((s=o.dataTransfer)==null?void 0:s.items)??[]].filter(l=>l.kind==="file").map(l=>l.webkitGetAsEntry()).filter(Boolean).length>0||[...((i=o.dataTransfer)==null?void 0:i.files)??[]].length>0}async function e(o){var i,l;const a=[],s=[...((i=o.dataTransfer)==null?void 0:i.items)??[]].filter(d=>d.kind==="file").map(d=>d.webkitGetAsEntry()).filter(Boolean);if(s.length)for(const d of s){const f=await Ie(d,_e(".",d));a.push(...f.map(h=>h.file))}else a.push(...((l=o.dataTransfer)==null?void 0:l.files)??[]);return a}return{handleDrop:e,hasFilesOrFolders:t}}function Ie(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"";return new Promise((o,a)=>{t.isFile?t.file(i=>o([{file:i,path:e}]),a):t.isDirectory&&t.createReader().readEntries(async i=>{const l=[];for(const d of i)l.push(...await Ie(d,_e(e,d)));o(l)})})}function _e(t,e){return e.isDirectory?`${t}/${e.name}`:t}const _t=le({filterByType:String},"file-accept");function Ut(t){const e=z(()=>t.filterByType?Ot(t.filterByType):null);function o(a){if(e.value){const s=a.filter(e.value);return{accepted:s,rejected:a.filter(i=>!s.includes(i))}}return{accepted:a,rejected:[]}}return{filterAccepted:o}}function Ot(t){const e=t.split(",").map(i=>i.trim().toLowerCase()),o=e.filter(i=>i.startsWith(".")),a=e.filter(i=>i.endsWith("/*")),s=e.filter(i=>!o.includes(i)&&!a.includes(i));return i=>{var f,h;const l=((f=i.name.split(".").at(-1))==null?void 0:f.toLowerCase())??"",d=((h=i.type.split("/").at(0))==null?void 0:h.toLowerCase())??"";return s.includes(i.type)||o.includes(`.${l}`)||a.includes(`${d}/*`)}}const Yt=le({chips:Boolean,counter:Boolean,counterSizeString:{type:String,default:"$vuetify.fileInput.counterSize"},counterString:{type:String,default:"$vuetify.fileInput.counter"},hideInput:Boolean,multiple:Boolean,showSize:{type:[Boolean,Number,String],default:!1,validator:t=>typeof t=="boolean"||[1e3,1024].includes(Number(t))},truncateLength:{type:[Number,String],default:22},...Le(Ft({prependIcon:"$file"}),["direction"]),modelValue:{type:[Array,Object],default:t=>t.multiple?[]:null,validator:t=>Re(t).every(e=>e!=null&&typeof e=="object")},..._t(),...Rt({clearable:!0})},"VFileInput"),Ht=ye()({name:"VFileInput",inheritAttrs:!1,props:Yt(),emits:{"click:control":t=>!0,"mousedown:control":t=>!0,"update:focused":t=>!0,"update:modelValue":t=>!0,rejected:t=>!0},setup(t,e){let{attrs:o,emit:a,slots:s}=e;const{t:i}=tt(),{filterAccepted:l}=Ut(t),d=Ne(t,"modelValue",t.modelValue,u=>Re(u),u=>!t.multiple&&Array.isArray(u)?u[0]:u),{isFocused:f,focus:h,blur:v}=Bt(t),w=z(()=>typeof t.showSize!="boolean"?t.showSize:void 0),k=z(()=>(d.value??[]).reduce((u,g)=>{let{size:O=0}=g;return u+O},0)),V=z(()=>we(k.value,w.value)),D=z(()=>(d.value??[]).map(u=>{const{name:g="",size:O=0}=u,Y=re(g);return t.showSize?`${Y} (${we(O,w.value)})`:Y})),G=z(()=>{var g;const u=((g=d.value)==null?void 0:g.length)??0;return t.showSize?i(t.counterSizeString,u,V.value):i(t.counterString,u)}),A=Q(),P=Q(),x=Q(),B=M(()=>f.value||t.active),N=z(()=>["plain","underlined"].includes(t.variant)),E=rt(!1),{handleDrop:J,hasFilesOrFolders:F}=It();function U(){var u;x.value!==document.activeElement&&((u=x.value)==null||u.focus()),f.value||h()}function ae(u){var g;(g=x.value)==null||g.click()}function _(u){a("mousedown:control",u)}function ie(u){var g;(g=x.value)==null||g.click(),a("click:control",u)}function be(u){u.stopPropagation(),U(),at(()=>{d.value=[],it(t["onClick:clear"],u)})}function re(u){if(u.length{(!Array.isArray(u)||!u.length)&&x.value&&(x.value.value="")}),pe(()=>{const u=!!(s.counter||t.counter),g=!!(u||s.details),[O,Y]=lt(o),{modelValue:oe,...de}=Se.filterProps(t),He={...je.filterProps(t),"onClick:clear":be},Ge=o.webkitdirectory!==void 0&&o.webkitdirectory!==!1,Je=o.accept?String(o.accept):void 0,qe=Ge?void 0:t.filterByType??Je;return n(Se,I({ref:A,modelValue:t.multiple?d.value:d.value[0],class:["v-file-input",{"v-file-input--chips":!!t.chips,"v-file-input--dragging":E.value,"v-file-input--hide":t.hideInput,"v-input--plain-underlined":N.value},t.class],style:t.style,"onClick:prepend":ae},O,de,{centerAffix:!N.value,focused:f.value}),{...s,default:ue=>{let{id:ee,isDisabled:K,isDirty:ve,isReadonly:ke,isValid:Xe,hasDetails:Ke}=ue;return n(je,I({ref:P,prependIcon:t.prependIcon,onMousedown:_,onClick:ie,"onClick:prependInner":t["onClick:prependInner"],"onClick:appendInner":t["onClick:appendInner"]},He,{id:ee.value,active:B.value||ve.value,dirty:ve.value||t.dirty,disabled:K.value,focused:f.value,details:Ke.value,error:Xe.value===!1,onDragover:ne,onDrop:Oe}),{...s,default:Ze=>{var Te;let{props:{class:Qe,...$e},controlRef:et}=Ze;return y(C,null,[y("input",I({ref:H=>x.value=et.value=H,type:"file",accept:qe,readonly:ke.value,disabled:K.value,multiple:t.multiple,name:t.name,onClick:H=>{H.stopPropagation(),ke.value&&H.preventDefault(),U()},onChange:Ye,onDragleave:$,onFocus:U,onBlur:v},$e,Y),null),y("div",{class:Fe(Qe)},[!!((Te=d.value)!=null&&Te.length)&&!t.hideInput&&(s.selection?s.selection({fileNames:D.value,totalBytes:k.value,totalBytesReadable:V.value}):t.chips?D.value.map(H=>n(W,{key:H,size:"small",text:H},null)):D.value.join(", "))])])}})},details:g?ue=>{var ee,K;return y(C,null,[(ee=s.details)==null?void 0:ee.call(s,ue),u&&y(C,null,[y("span",null,null),n(Nt,{active:!!((K=d.value)!=null&&K.length),value:G.value,disabled:t.disabled},s.counter)])])}:void 0})}),Me({},A,P,x)}}),Ue=le({fixed:Boolean,sliderColor:String,sliderTransition:String,sliderTransitionDuration:[String,Number],hideSlider:Boolean,inset:Boolean,direction:{type:String,default:"horizontal"},...Le(ct({selectedClass:"v-tab--selected",variant:"text"}),["active","block","flat","location","position","symbol"])},"VTab"),se=ye()({name:"VTab",props:Ue(),setup(t,e){let{slots:o,attrs:a}=e;const{textColorClasses:s,textColorStyles:i}=nt(()=>t.sliderColor),{backgroundColorClasses:l,backgroundColorStyles:d}=ze(()=>t.sliderColor),f=Q(),h=Q(),v=z(()=>t.direction==="horizontal"),w=z(()=>{var A,P;return((P=(A=f.value)==null?void 0:A.group)==null?void 0:P.isSelected.value)??!1});function k(A,P){return{opacity:[0,1]}}function V(A,P){return t.direction==="vertical"?{transform:["scaleY(0)","scaleY(1)"]}:{transform:["scaleX(0)","scaleX(1)"]}}function D(A,P){const x=P.getBoundingClientRect(),B=A.getBoundingClientRect(),N=v.value?"x":"y",E=v.value?"X":"Y",J=v.value?"right":"bottom",F=v.value?"width":"height",U=x[N],ae=B[N],_=U>ae?x[J]-B[J]:x[N]-B[N],ie=Math.sign(_)>0?v.value?"right":"bottom":Math.sign(_)<0?v.value?"left":"top":"center",re=(Math.abs(_)+(Math.sign(_)<0?x[F]:B[F]))/Math.max(x[F],B[F])||0,ne=x[F]/B[F]||0,$=1.5;return{transform:[`translate${E}(${_}px) scale${E}(${ne})`,`translate${E}(${_/$}px) scale${E}(${(re-1)/$+1})`,"none"],transformOrigin:Array(3).fill(ie)}}function G(A){var x,B;let{value:P}=A;if(P){const N=(B=(x=f.value)==null?void 0:x.$el.parentElement)==null?void 0:B.querySelector(".v-tab--selected .v-tab__slider"),E=h.value;if(!N||!E)return;const J=getComputedStyle(N).color,F={fade:k,grow:V,shift:D}[t.sliderTransition??"shift"]??D,U=Number(t.sliderTransitionDuration)||({fade:400,grow:350,shift:225}[t.sliderTransition??"shift"]??225);dt(E,{backgroundColor:[J,"currentcolor"],...F(E,N)},{duration:U,easing:ut})}}return pe(()=>{const A=L.filterProps(t);return n(L,I({symbol:We,ref:f,class:["v-tab",t.class,w.value&&t.inset?l.value:[]],style:[t.style,w.value&&t.inset?d.value:[]],tabindex:w.value?0:-1,role:"tab","aria-selected":String(w.value),active:!1},A,a,{block:t.fixed,maxWidth:t.fixed?300:void 0,"onGroup:selected":G}),{...o,default:()=>{var P;return y(C,null,[((P=o.default)==null?void 0:P.call(o))??t.text,!t.hideSlider&&y("div",{ref:h,class:Fe(["v-tab__slider",s.value]),style:ot(i.value)},null)])}})}),Me({},f)}});function Gt(t){return t?t.map(e=>gt(e)?e:{text:e,value:e}):[]}const Jt=le({alignTabs:{type:String,default:"start"},color:String,fixedTabs:Boolean,items:{type:Array,default:()=>[]},stacked:Boolean,bgColor:String,grow:Boolean,height:{type:[Number,String],default:void 0},hideSlider:Boolean,inset:Boolean,insetPadding:[String,Number],insetRadius:[String,Number],sliderColor:String,...bt(Ue(),["spaced","sliderTransition","sliderTransitionDuration"]),...Pt({mandatory:"force",selectedClass:"v-tab-item--selected"}),...pt(),...yt()},"VTabs"),Ae=ye()({name:"VTabs",props:Jt(),emits:{"update:modelValue":t=>!0},setup(t,e){let{attrs:o,slots:a}=e;const s=Ne(t,"modelValue"),i=z(()=>Gt(t.items)),{densityClasses:l}=mt(t),{backgroundColorClasses:d,backgroundColorStyles:f}=ze(()=>t.bgColor),{scopeId:h}=ft();return ht({VTab:{color:M(t,"color"),direction:M(t,"direction"),stacked:M(t,"stacked"),fixed:M(t,"fixedTabs"),inset:M(t,"inset"),sliderColor:M(t,"sliderColor"),sliderTransition:M(t,"sliderTransition"),sliderTransitionDuration:M(t,"sliderTransitionDuration"),hideSlider:M(t,"hideSlider")}}),pe(()=>{const v=Ce.filterProps(t),w=!!(a.window||t.items.length>0);return y(C,null,[n(Ce,I(v,{modelValue:s.value,"onUpdate:modelValue":k=>s.value=k,class:["v-tabs",`v-tabs--${t.direction}`,`v-tabs--align-tabs-${t.alignTabs}`,{"v-tabs--fixed-tabs":t.fixedTabs,"v-tabs--grow":t.grow,"v-tabs--inset":t.inset,"v-tabs--stacked":t.stacked},l.value,d.value,t.class],style:[{"--v-tabs-height":ce(t.height),"--v-tabs-inset-padding":t.inset?ce(t.insetPadding):void 0,"--v-tabs-inset-radius":t.inset?ce(t.insetRadius):void 0},f.value,t.style],role:"tablist",symbol:We},h,o),{default:a.default??(()=>i.value.map(k=>{var V;return((V=a.tab)==null?void 0:V.call(a,{item:k}))??n(se,I(k,{key:k.text,value:k.value,spaced:t.spaced}),{default:a[`tab.${k.value}`]?()=>{var D;return(D=a[`tab.${k.value}`])==null?void 0:D.call(a,{item:k})}:void 0})})),prev:a.prev,next:a.next}),w&&n(Vt,I({modelValue:s.value,"onUpdate:modelValue":k=>s.value=k,key:"tabs-window"},h),{default:()=>{var k;return[i.value.map(V=>{var D;return((D=a.item)==null?void 0:D.call(a,{item:V}))??n(Ct,{value:V.value},{default:()=>{var G;return(G=a[`item.${V.value}`])==null?void 0:G.call(a,{item:V})}})}),(k=a.window)==null?void 0:k.call(a)]}})])}),{}}}),Ee=()=>new Promise((t,e)=>{if(typeof window.jsyaml<"u")return t(window.jsyaml);const o=document.createElement("script");o.src="https://cdnjs.cloudflare.com/ajax/libs/js-yaml/4.1.0/js-yaml.min.js",o.async=!0,o.onload=()=>t(window.jsyaml),o.onerror=()=>e(new Error("无法加载YAML解析库")),document.head.appendChild(o)});class Be{constructor(e){this.data=e,this.version=null,this.subjects=[],this.schedules=[],this._parseData()}_parseData(){if(!this.data)return;this.version=this.data.version||1;const e=this.data.subjects||[];for(const a of e)this.subjects.push({name:a.name,simplified_name:a.simplified_name||null,teacher:a.teacher||null,room:a.room||null});const o=this.data.schedules||[];for(const a of o){const s=[];for(const i of a.classes||[])s.push({subject:i.subject,start_time:i.start_time,end_time:i.end_time});this.schedules.push({name:a.name,enable_day:a.enable_day,weeks:a.weeks||"all",classes:s})}}getSubjects(){return this.subjects}getSchedules(){return this.schedules}getScheduleByDay(e){const o=this.schedules.find(a=>a.enable_day===e);return o?o.classes:[]}toCsesData(){return{version:this.version,subjects:this.subjects,schedules:this.schedules}}}const qt={name:"Cses2Wakeup",data(){return{activeTab:"text",file:null,jsonText:"",loading:!1,error:"",success:"",processedData:null,selectedRows:[],exportPeriods:[],selectedDays:[1,2,3,4,5,6,7],formatMode:"auto",yamlLibLoaded:!1,activeDay:null,subjectColors:{数学:"blue",语文:"red",英语:"green",物理:"purple",化学:"orange",生物:"teal",历史:"brown",地理:"indigo",政治:"pink",体育:"cyan",自习:"grey",早读:"amber",班会:"deep-purple",听力:"light-blue",信息技术:"light-green"},settings:{hideTeacherName:!1,hideRoom:!1,totalWeeks:30},tableHeaders:[{title:"",key:"data-table-select"},{title:"节次",key:"period"},{title:"周一",key:"1"},{title:"周二",key:"2"},{title:"周三",key:"3"},{title:"周四",key:"4"},{title:"周五",key:"5"},{title:"周六",key:"6"},{title:"周日",key:"7"}],timeTableHeaders:[{title:"节次",key:"period"},{title:"课程",key:"subject"},{title:"星期",key:"day"},{title:"开始时间",key:"startTime"},{title:"结束时间",key:"endTime"},{title:"教师",key:"teacher"},{title:"教室",key:"room"},{title:"周次",key:"weeks"}],dayNames:{1:"周一",2:"周二",3:"周三",4:"周四",5:"周五",6:"周六",7:"周日"}}},computed:{timeTableData(){if(!this.processedData||!this.processedData.tableData)return[];const t=[],e=this.processedData.tableData.filter(a=>this.exportPeriods.includes(a.period)),o={};return e.sort((a,s)=>a.period-s.period).forEach((a,s)=>{o[a.period]=s+1}),e.forEach(a=>{for(let s=1;s<=7;s++){if(!this.selectedDays.includes(s))continue;const i=a[s];if(i)if(Array.isArray(i))i.forEach(l=>{!l||!l.name||t.push({originalPeriod:a.period,period:o[a.period],subject:l.name,day:this.dayNames[s],startTime:l.startTime,endTime:l.endTime,teacher:this.settings.hideTeacherName?"":l.teacher||"",room:this.settings.hideRoom?"":l.room||"",weeks:l.weekType?`1-${this.settings.totalWeeks}${l.weekType}`:`1-${this.settings.totalWeeks}`})});else{if(!i.name)continue;t.push({originalPeriod:a.period,period:o[a.period],subject:i.name,day:this.dayNames[s],startTime:i.startTime,endTime:i.endTime,teacher:this.settings.hideTeacherName?"":i.teacher||"",room:this.settings.hideRoom?"":i.room||"",weeks:i.weekType?`1-${this.settings.totalWeeks}${i.weekType}`:`1-${this.settings.totalWeeks}`})}}}),t.sort((a,s)=>{if(a.period!==s.period)return a.period-s.period;const i={周一:1,周二:2,周三:3,周四:4,周五:5,周六:6,周日:7};return i[a.day]-i[s.day]})},hasExportData(){return this.processedData&&this.exportPeriods.length>0},totalClassHours(){return this.timeTableData.length},daysWithSchedule(){const t=[];for(let e=1;e<=7;e++)this.selectedDays.includes(e)&&this.getDaySchedule(e).length>0&&t.push(e);return t}},methods:{async handleFileChange(){if(this.resetData(),!this.file)return;const t=this.file.name.toLowerCase();if(t.endsWith(".json")||t.endsWith(".js"))this.formatMode="json";else if((t.endsWith(".yml")||t.endsWith(".yaml"))&&(this.formatMode="yaml",!this.yamlLibLoaded))try{await Ee(),this.yamlLibLoaded=!0}catch(e){this.error=`无法加载YAML解析库: ${e.message}`;return}try{const e=new FileReader;e.onload=async o=>{try{this.jsonText=o.target.result,await this.processInput()}catch(a){this.error=`文件读取失败: ${a.message}`}},e.onerror=()=>{this.error="文件读取失败"},e.readAsText(this.file)}catch(e){this.error=`文件处理失败: ${e.message}`}},handleTextChange(){this.resetData()},resetData(){this.error="",this.success="",this.processedData=null,this.selectedRows=[],this.exportPeriods=[]},async processInput(){if(!this.jsonText&&!this.file){this.error="请粘贴文本或上传文件";return}this.loading=!0,this.error="",this.success="";try{await this.$nextTick();let t;try{if(this.formatMode==="yaml"||this.formatMode==="auto"&&this.isYaml(this.jsonText)){const o=this.parseYaml(this.jsonText);t=new Be(o).toCsesData()}else t=JSON.parse(this.jsonText)}catch(o){throw new Error(`格式解析错误: ${o.message}`)}if(!this.validateCsesFormat(t))throw new Error("不是有效的CSES格式数据");const e=this.processCsesData(t);this.processedData=e,this.selectedDays=[1,2,3,4,5],this.success="数据处理成功!",e.tableData&&e.tableData.length>0&&(this.selectedRows=[...e.tableData],this.exportPeriods=e.tableData.map(o=>o.period))}catch(t){this.error="数据处理失败:"+t.message,console.error(t)}finally{this.loading=!1}},validateCsesFormat(t){return t instanceof Be?t.version===1&&Array.isArray(t.subjects)&&Array.isArray(t.schedules):!(!t||typeof t!="object"||t.version!==1||!Array.isArray(t.subjects)||!Array.isArray(t.schedules))},processCsesData(t){const{schedules:e,subjects:o}=t,a=Object.fromEntries(o.map(l=>[l.name,l])),s=[];let i=0;e.forEach(l=>{l.classes&&l.classes.length>i&&(i=l.classes.length)});for(let l=1;l<=i;l++)s.push({period:l,1:null,2:null,3:null,4:null,5:null,6:null,7:null});return e.forEach(l=>{const d=l.enable_day;if(!d||d<1||d>7)return;let f="";l.weeks==="odd"?f="单":l.weeks==="even"&&(f="双"),l.classes.forEach((h,v)=>{if(!h.subject)return;const w=v+1;if(w>i)return;const k=a[h.subject]||{},V={name:h.subject,teacher:k.teacher||"",room:k.room||"",period:w,startTime:h.start_time,endTime:h.end_time,day:d,weekType:f},D=s[w-1][d];D?f&&D.weekType&&f!==D.weekType?(Array.isArray(s[w-1][d])||(s[w-1][d]=[D]),s[w-1][d].push(V)):f===D.weekType?s[w-1][d]=V:f||(s[w-1][d]=V):s[w-1][d]=V})}),{tableData:s,originalData:t}},updateSelectedPeriods(t){this.exportPeriods=[],t&&t.length>0&&(this.exportPeriods=[...new Set(t.filter(e=>e&&typeof e.period=="number").map(e=>e.period))])},getTimeTableData(){return this.timeTableData},downloadCSV(){var s;if(!((s=this.processedData)!=null&&s.tableData)){this.error="没有可下载的数据";return}if(this.exportPeriods.length===0){this.error="请至少选择一节要导出的课";return}if(this.daysWithSchedule.length===0||this.totalClassHours===0){this.error="没有课程数据可导出";return}let t=`课程名称,星期,开始节数,结束节数,老师,地点,周数 `;for(const i of this.daysWithSchedule){const l=this.groupByPeriod(this.getDaySchedule(i));for(const d of l)for(const f of d.items){const h={周一:1,周二:2,周三:3,周四:4,周五:5,周六:6,周日:7}[f.day],v=this.settings.hideTeacherName?"":f.teacher||"",w=this.settings.hideRoom?"":f.room||"";t+=`${f.subject},${h},${f.period},${f.period},${v},${w},${f.weeks} `}}const e="\uFEFF",o=new Blob([e+t],{type:"text/csv;charset=utf-8"}),a=document.createElement("a");a.href=URL.createObjectURL(o),a.download=`course_schedule_${this.totalClassHours}课时.csv`,a.click(),URL.revokeObjectURL(a.href),this.success=`导出成功!共计 ${this.totalClassHours} 课时`},showExportPreview(){if(!this.hasExportData){this.error="请先选择要导出的节次";return}const t=this.timeTableData.slice(0,5).map(e=>`${e.subject} (${e.day} 第${e.period}节)`).join(` `);this.timeTableData.length>5?this.success=`导出预览 (共${this.totalClassHours}课时): diff --git a/assets/dataProvider-MQ8YacC2.js b/assets/dataProvider-Cg4CSn_f.js similarity index 99% rename from assets/dataProvider-MQ8YacC2.js rename to assets/dataProvider-Cg4CSn_f.js index c853348..85c9247 100644 --- a/assets/dataProvider-MQ8YacC2.js +++ b/assets/dataProvider-Cg4CSn_f.js @@ -1,4 +1,4 @@ -import{k as S,cs as xr,s as Ne}from"./index-BUM0TY0E.js";import{i as te,t as re,g as ct}from"./serverRotation-CjK7Y7P9.js";const Le=(e,t)=>t.some(r=>e instanceof r);let ut,lt;function Ar(){return ut||(ut=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Or(){return lt||(lt=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const Ie=new WeakMap,_e=new WeakMap,Re=new WeakMap;function Tr(e){const t=new Promise((r,n)=>{const s=()=>{e.removeEventListener("success",i),e.removeEventListener("error",o)},i=()=>{r(z(e.result)),s()},o=()=>{n(e.error),s()};e.addEventListener("success",i),e.addEventListener("error",o)});return Re.set(t,e),t}function Cr(e){if(Ie.has(e))return;const t=new Promise((r,n)=>{const s=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",o),e.removeEventListener("abort",o)},i=()=>{r(),s()},o=()=>{n(e.error||new DOMException("AbortError","AbortError")),s()};e.addEventListener("complete",i),e.addEventListener("error",o),e.addEventListener("abort",o)});Ie.set(e,t)}let je={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return Ie.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return z(e[t])},set(e,t,r){return e[t]=r,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};function Bt(e){je=e(je)}function Dr(e){return Or().includes(e)?function(...t){return e.apply($e(this),t),z(this.request)}:function(...t){return z(e.apply($e(this),t))}}function Nr(e){return typeof e=="function"?Dr(e):(e instanceof IDBTransaction&&Cr(e),Le(e,Ar())?new Proxy(e,je):e)}function z(e){if(e instanceof IDBRequest)return Tr(e);if(_e.has(e))return _e.get(e);const t=Nr(e);return t!==e&&(_e.set(e,t),Re.set(t,e)),t}const $e=e=>Re.get(e);function _r(e,t,{blocked:r,upgrade:n,blocking:s,terminated:i}={}){const o=indexedDB.open(e,t),a=z(o);return n&&o.addEventListener("upgradeneeded",f=>{n(z(o.result),f.oldVersion,f.newVersion,z(o.transaction),f)}),r&&o.addEventListener("blocked",f=>r(f.oldVersion,f.newVersion,f)),a.then(f=>{i&&f.addEventListener("close",()=>i()),s&&f.addEventListener("versionchange",l=>s(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}const vr=["get","getKey","getAll","getAllKeys","count"],Ur=["put","add","delete","clear"],ve=new Map;function ft(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(ve.get(t))return ve.get(t);const r=t.replace(/FromIndex$/,""),n=t!==r,s=Ur.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(s||vr.includes(r)))return;const i=async function(o,...a){const f=this.transaction(o,s?"readwrite":"readonly");let l=f.store;return n&&(l=l.index(a.shift())),(await Promise.all([l[r](...a),s&&f.done]))[0]};return ve.set(t,i),i}Bt(e=>({...e,get:(t,r,n)=>ft(t,r)||e.get(t,r,n),has:(t,r)=>!!ft(t,r)||e.has(t,r)}));const kr=["continue","continuePrimaryKey","advance"],dt={},Me=new WeakMap,Ft=new WeakMap,Pr={get(e,t){if(!kr.includes(t))return e[t];let r=dt[t];return r||(r=dt[t]=function(...n){Me.set(this,Ft.get(this)[t](...n))}),r}};async function*Br(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;const r=new Proxy(t,Pr);for(Ft.set(r,t),Re.set(r,$e(t));t;)yield r,t=await(Me.get(r)||t.continue()),Me.delete(r)}function ht(e,t){return t===Symbol.asyncIterator&&Le(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&Le(e,[IDBIndex,IDBObjectStore])}Bt(e=>({...e,get(t,r,n){return ht(t,r)?Br:e.get(t,r,n)},has(t,r){return ht(t,r)||e.has(t,r)}}));const Fr="ClassworksDB",Lr=2,Ue=async()=>_r(Fr,Lr,{upgrade(e){e.objectStoreNames.contains("kv")||e.createObjectStore("kv"),e.objectStoreNames.contains("system")||e.createObjectStore("system")}}),he={async loadData(e){try{const r=await(await Ue()).get("kv",e);return r?k(JSON.parse(r)):O("数据不存在","NOT_FOUND")}catch(t){return O("读取本地数据失败:"+t)}},async saveData(e,t){try{return await(await Ue()).put("kv",JSON.stringify(t),e),k(!0)}catch(r){return O("保存本地数据失败:"+r)}},async loadKeys(e={}){try{const s=await(await Ue()).transaction(["kv"],"readonly").objectStore("kv").getAllKeys(),{sortDir:i="asc",limit:o=100,skip:a=0}=e,f=s.sort((b,w)=>i==="desc"?w.localeCompare(b):b.localeCompare(w)),l=f.length,u=f.slice(a,a+o),h={keys:u,total_rows:l,current_page:{limit:o,skip:a,count:u.length},load_more:null};return k(h)}catch(t){return O("获取本地键名列表失败:"+t.message)}}};function Lt(e,t){return function(){return e.apply(t,arguments)}}const{toString:Ir}=Object.prototype,{getPrototypeOf:Xe}=Object,{iterator:Se,toStringTag:It}=Symbol,xe=(e=>t=>{const r=Ir.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),B=e=>(e=e.toLowerCase(),t=>xe(t)===e),Ae=e=>t=>typeof t===e,{isArray:G}=Array,Z=Ae("undefined");function ie(e){return e!==null&&!Z(e)&&e.constructor!==null&&!Z(e.constructor)&&C(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const jt=B("ArrayBuffer");function jr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&jt(e.buffer),t}const $r=Ae("string"),C=Ae("function"),$t=Ae("number"),ae=e=>e!==null&&typeof e=="object",Mr=e=>e===!0||e===!1,ye=e=>{if(xe(e)!=="object")return!1;const t=Xe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(It in e)&&!(Se in e)},Hr=e=>{if(!ae(e)||ie(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},qr=B("Date"),Kr=B("File"),zr=B("Blob"),Vr=B("FileList"),Jr=e=>ae(e)&&C(e.pipe),Wr=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||C(e.append)&&((t=xe(e))==="formdata"||t==="object"&&C(e.toString)&&e.toString()==="[object FormData]"))},Xr=B("URLSearchParams"),[Zr,Gr,Qr,Yr]=["ReadableStream","Request","Response","Headers"].map(B),en=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ce(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,s;if(typeof e!="object"&&(e=[e]),G(e))for(n=0,s=e.length;n0;)if(s=r[n],t===s.toLowerCase())return s;return null}const K=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ht=e=>!Z(e)&&e!==K;function He(){const{caseless:e,skipUndefined:t}=Ht(this)&&this||{},r={},n=(s,i)=>{const o=e&&Mt(r,i)||i;ye(r[o])&&ye(s)?r[o]=He(r[o],s):ye(s)?r[o]=He({},s):G(s)?r[o]=s.slice():(!t||!Z(s))&&(r[o]=s)};for(let s=0,i=arguments.length;s(ce(t,(s,i)=>{r&&C(s)?e[i]=Lt(s,r):e[i]=s},{allOwnKeys:n}),e),rn=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),nn=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},sn=(e,t,r,n)=>{let s,i,o;const a={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)o=s[i],(!n||n(o,e,t))&&!a[o]&&(t[o]=e[o],a[o]=!0);e=r!==!1&&Xe(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},on=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},an=e=>{if(!e)return null;if(G(e))return e;let t=e.length;if(!$t(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},cn=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Xe(Uint8Array)),un=(e,t)=>{const n=(e&&e[Se]).call(e);let s;for(;(s=n.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},ln=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},fn=B("HTMLFormElement"),dn=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),pt=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),hn=B("RegExp"),qt=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};ce(r,(s,i)=>{let o;(o=t(s,i,e))!==!1&&(n[i]=o||s)}),Object.defineProperties(e,n)},pn=e=>{qt(e,(t,r)=>{if(C(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(C(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},mn=(e,t)=>{const r={},n=s=>{s.forEach(i=>{r[i]=!0})};return G(e)?n(e):n(String(e).split(t)),r},yn=()=>{},bn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function wn(e){return!!(e&&C(e.append)&&e[It]==="FormData"&&e[Se])}const gn=e=>{const t=new Array(10),r=(n,s)=>{if(ae(n)){if(t.indexOf(n)>=0)return;if(ie(n))return n;if(!("toJSON"in n)){t[s]=n;const i=G(n)?[]:{};return ce(n,(o,a)=>{const f=r(o,s+1);!Z(f)&&(i[a]=f)}),t[s]=void 0,i}}return n};return r(e,0)},En=B("AsyncFunction"),Rn=e=>e&&(ae(e)||C(e))&&C(e.then)&&C(e.catch),Kt=((e,t)=>e?setImmediate:t?((r,n)=>(K.addEventListener("message",({source:s,data:i})=>{s===K&&i===r&&n.length&&n.shift()()},!1),s=>{n.push(s),K.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",C(K.postMessage)),Sn=typeof queueMicrotask<"u"?queueMicrotask.bind(K):typeof process<"u"&&process.nextTick||Kt,xn=e=>e!=null&&C(e[Se]),c={isArray:G,isArrayBuffer:jt,isBuffer:ie,isFormData:Wr,isArrayBufferView:jr,isString:$r,isNumber:$t,isBoolean:Mr,isObject:ae,isPlainObject:ye,isEmptyObject:Hr,isReadableStream:Zr,isRequest:Gr,isResponse:Qr,isHeaders:Yr,isUndefined:Z,isDate:qr,isFile:Kr,isBlob:zr,isRegExp:hn,isFunction:C,isStream:Jr,isURLSearchParams:Xr,isTypedArray:cn,isFileList:Vr,forEach:ce,merge:He,extend:tn,trim:en,stripBOM:rn,inherits:nn,toFlatObject:sn,kindOf:xe,kindOfTest:B,endsWith:on,toArray:an,forEachEntry:un,matchAll:ln,isHTMLForm:fn,hasOwnProperty:pt,hasOwnProp:pt,reduceDescriptors:qt,freezeMethods:pn,toObjectSet:mn,toCamelCase:dn,noop:yn,toFiniteNumber:bn,findKey:Mt,global:K,isContextDefined:Ht,isSpecCompliantForm:wn,toJSONObject:gn,isAsyncFn:En,isThenable:Rn,setImmediate:Kt,asap:Sn,isIterable:xn};function y(e,t,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s,this.status=s.status?s.status:null)}c.inherits(y,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:c.toJSONObject(this.config),code:this.code,status:this.status}}});const zt=y.prototype,Vt={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Vt[e]={value:e}});Object.defineProperties(y,Vt);Object.defineProperty(zt,"isAxiosError",{value:!0});y.from=(e,t,r,n,s,i)=>{const o=Object.create(zt);c.toFlatObject(e,o,function(u){return u!==Error.prototype},l=>l!=="isAxiosError");const a=e&&e.message?e.message:"Error",f=t==null&&e?e.code:t;return y.call(o,a,f,r,n,s),e&&o.cause==null&&Object.defineProperty(o,"cause",{value:e,configurable:!0}),o.name=e&&e.name||"Error",i&&Object.assign(o,i),o};const An=null;function qe(e){return c.isPlainObject(e)||c.isArray(e)}function Jt(e){return c.endsWith(e,"[]")?e.slice(0,-2):e}function mt(e,t,r){return e?e.concat(t).map(function(s,i){return s=Jt(s),!r&&i?"["+s+"]":s}).join(r?".":""):t}function On(e){return c.isArray(e)&&!e.some(qe)}const Tn=c.toFlatObject(c,{},null,function(t){return/^is[A-Z]/.test(t)});function Oe(e,t,r){if(!c.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=c.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,p){return!c.isUndefined(p[m])});const n=r.metaTokens,s=r.visitor||u,i=r.dots,o=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&c.isSpecCompliantForm(t);if(!c.isFunction(s))throw new TypeError("visitor must be a function");function l(d){if(d===null)return"";if(c.isDate(d))return d.toISOString();if(c.isBoolean(d))return d.toString();if(!f&&c.isBlob(d))throw new y("Blob is not supported. Use a Buffer instead.");return c.isArrayBuffer(d)||c.isTypedArray(d)?f&&typeof Blob=="function"?new Blob([d]):Buffer.from(d):d}function u(d,m,p){let E=d;if(d&&!p&&typeof d=="object"){if(c.endsWith(m,"{}"))m=n?m:m.slice(0,-2),d=JSON.stringify(d);else if(c.isArray(d)&&On(d)||(c.isFileList(d)||c.endsWith(m,"[]"))&&(E=c.toArray(d)))return m=Jt(m),E.forEach(function(R,T){!(c.isUndefined(R)||R===null)&&t.append(o===!0?mt([m],T,i):o===null?m:m+"[]",l(R))}),!1}return qe(d)?!0:(t.append(mt(p,m,i),l(d)),!1)}const h=[],b=Object.assign(Tn,{defaultVisitor:u,convertValue:l,isVisitable:qe});function w(d,m){if(!c.isUndefined(d)){if(h.indexOf(d)!==-1)throw Error("Circular reference detected in "+m.join("."));h.push(d),c.forEach(d,function(E,_){(!(c.isUndefined(E)||E===null)&&s.call(t,E,c.isString(_)?_.trim():_,m,b))===!0&&w(E,m?m.concat(_):[_])}),h.pop()}}if(!c.isObject(e))throw new TypeError("data must be an object");return w(e),t}function yt(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function Ze(e,t){this._pairs=[],e&&Oe(e,this,t)}const Wt=Ze.prototype;Wt.append=function(t,r){this._pairs.push([t,r])};Wt.toString=function(t){const r=t?function(n){return t.call(this,n,yt)}:yt;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};function Cn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Xt(e,t,r){if(!t)return e;const n=r&&r.encode||Cn;c.isFunction(r)&&(r={serialize:r});const s=r&&r.serialize;let i;if(s?i=s(t,r):i=c.isURLSearchParams(t)?t.toString():new Ze(t,r).toString(n),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class bt{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){c.forEach(this.handlers,function(n){n!==null&&t(n)})}}const Zt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Dn=typeof URLSearchParams<"u"?URLSearchParams:Ze,Nn=typeof FormData<"u"?FormData:null,_n=typeof Blob<"u"?Blob:null,vn={isBrowser:!0,classes:{URLSearchParams:Dn,FormData:Nn,Blob:_n},protocols:["http","https","file","blob","url","data"]},Ge=typeof window<"u"&&typeof document<"u",Ke=typeof navigator=="object"&&navigator||void 0,Un=Ge&&(!Ke||["ReactNative","NativeScript","NS"].indexOf(Ke.product)<0),kn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Pn=Ge&&window.location.href||"http://localhost",Bn=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ge,hasStandardBrowserEnv:Un,hasStandardBrowserWebWorkerEnv:kn,navigator:Ke,origin:Pn},Symbol.toStringTag,{value:"Module"})),A={...Bn,...vn};function Fn(e,t){return Oe(e,new A.classes.URLSearchParams,{visitor:function(r,n,s,i){return A.isNode&&c.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function Ln(e){return c.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function In(e){const t={},r=Object.keys(e);let n;const s=r.length;let i;for(n=0;n=r.length;return o=!o&&c.isArray(s)?s.length:o,f?(c.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!a):((!s[o]||!c.isObject(s[o]))&&(s[o]=[]),t(r,n,s[o],i)&&c.isArray(s[o])&&(s[o]=In(s[o])),!a)}if(c.isFormData(e)&&c.isFunction(e.entries)){const r={};return c.forEachEntry(e,(n,s)=>{t(Ln(n),s,r,0)}),r}return null}function jn(e,t,r){if(c.isString(e))try{return(t||JSON.parse)(e),c.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const ue={transitional:Zt,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=c.isObject(t);if(i&&c.isHTMLForm(t)&&(t=new FormData(t)),c.isFormData(t))return s?JSON.stringify(Gt(t)):t;if(c.isArrayBuffer(t)||c.isBuffer(t)||c.isStream(t)||c.isFile(t)||c.isBlob(t)||c.isReadableStream(t))return t;if(c.isArrayBufferView(t))return t.buffer;if(c.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Fn(t,this.formSerializer).toString();if((a=c.isFileList(t))||n.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return Oe(a?{"files[]":t}:t,f&&new f,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),jn(t)):t}],transformResponse:[function(t){const r=this.transitional||ue.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(c.isResponse(t)||c.isReadableStream(t))return t;if(t&&c.isString(t)&&(n&&!this.responseType||s)){const o=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(t,this.parseReviver)}catch(a){if(o)throw a.name==="SyntaxError"?y.from(a,y.ERR_BAD_RESPONSE,this,null,this.response):a}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:A.classes.FormData,Blob:A.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};c.forEach(["delete","get","head","post","put","patch"],e=>{ue.headers[e]={}});const $n=c.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Mn=e=>{const t={};let r,n,s;return e&&e.split(` +import{k as S,cs as xr,s as Ne}from"./index-BXl8SUNP.js";import{i as te,t as re,g as ct}from"./serverRotation-BBUKyTw9.js";const Le=(e,t)=>t.some(r=>e instanceof r);let ut,lt;function Ar(){return ut||(ut=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Or(){return lt||(lt=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const Ie=new WeakMap,_e=new WeakMap,Re=new WeakMap;function Tr(e){const t=new Promise((r,n)=>{const s=()=>{e.removeEventListener("success",i),e.removeEventListener("error",o)},i=()=>{r(z(e.result)),s()},o=()=>{n(e.error),s()};e.addEventListener("success",i),e.addEventListener("error",o)});return Re.set(t,e),t}function Cr(e){if(Ie.has(e))return;const t=new Promise((r,n)=>{const s=()=>{e.removeEventListener("complete",i),e.removeEventListener("error",o),e.removeEventListener("abort",o)},i=()=>{r(),s()},o=()=>{n(e.error||new DOMException("AbortError","AbortError")),s()};e.addEventListener("complete",i),e.addEventListener("error",o),e.addEventListener("abort",o)});Ie.set(e,t)}let je={get(e,t,r){if(e instanceof IDBTransaction){if(t==="done")return Ie.get(e);if(t==="store")return r.objectStoreNames[1]?void 0:r.objectStore(r.objectStoreNames[0])}return z(e[t])},set(e,t,r){return e[t]=r,!0},has(e,t){return e instanceof IDBTransaction&&(t==="done"||t==="store")?!0:t in e}};function Bt(e){je=e(je)}function Dr(e){return Or().includes(e)?function(...t){return e.apply($e(this),t),z(this.request)}:function(...t){return z(e.apply($e(this),t))}}function Nr(e){return typeof e=="function"?Dr(e):(e instanceof IDBTransaction&&Cr(e),Le(e,Ar())?new Proxy(e,je):e)}function z(e){if(e instanceof IDBRequest)return Tr(e);if(_e.has(e))return _e.get(e);const t=Nr(e);return t!==e&&(_e.set(e,t),Re.set(t,e)),t}const $e=e=>Re.get(e);function _r(e,t,{blocked:r,upgrade:n,blocking:s,terminated:i}={}){const o=indexedDB.open(e,t),a=z(o);return n&&o.addEventListener("upgradeneeded",f=>{n(z(o.result),f.oldVersion,f.newVersion,z(o.transaction),f)}),r&&o.addEventListener("blocked",f=>r(f.oldVersion,f.newVersion,f)),a.then(f=>{i&&f.addEventListener("close",()=>i()),s&&f.addEventListener("versionchange",l=>s(l.oldVersion,l.newVersion,l))}).catch(()=>{}),a}const vr=["get","getKey","getAll","getAllKeys","count"],Ur=["put","add","delete","clear"],ve=new Map;function ft(e,t){if(!(e instanceof IDBDatabase&&!(t in e)&&typeof t=="string"))return;if(ve.get(t))return ve.get(t);const r=t.replace(/FromIndex$/,""),n=t!==r,s=Ur.includes(r);if(!(r in(n?IDBIndex:IDBObjectStore).prototype)||!(s||vr.includes(r)))return;const i=async function(o,...a){const f=this.transaction(o,s?"readwrite":"readonly");let l=f.store;return n&&(l=l.index(a.shift())),(await Promise.all([l[r](...a),s&&f.done]))[0]};return ve.set(t,i),i}Bt(e=>({...e,get:(t,r,n)=>ft(t,r)||e.get(t,r,n),has:(t,r)=>!!ft(t,r)||e.has(t,r)}));const kr=["continue","continuePrimaryKey","advance"],dt={},Me=new WeakMap,Ft=new WeakMap,Pr={get(e,t){if(!kr.includes(t))return e[t];let r=dt[t];return r||(r=dt[t]=function(...n){Me.set(this,Ft.get(this)[t](...n))}),r}};async function*Br(...e){let t=this;if(t instanceof IDBCursor||(t=await t.openCursor(...e)),!t)return;t=t;const r=new Proxy(t,Pr);for(Ft.set(r,t),Re.set(r,$e(t));t;)yield r,t=await(Me.get(r)||t.continue()),Me.delete(r)}function ht(e,t){return t===Symbol.asyncIterator&&Le(e,[IDBIndex,IDBObjectStore,IDBCursor])||t==="iterate"&&Le(e,[IDBIndex,IDBObjectStore])}Bt(e=>({...e,get(t,r,n){return ht(t,r)?Br:e.get(t,r,n)},has(t,r){return ht(t,r)||e.has(t,r)}}));const Fr="ClassworksDB",Lr=2,Ue=async()=>_r(Fr,Lr,{upgrade(e){e.objectStoreNames.contains("kv")||e.createObjectStore("kv"),e.objectStoreNames.contains("system")||e.createObjectStore("system")}}),he={async loadData(e){try{const r=await(await Ue()).get("kv",e);return r?k(JSON.parse(r)):O("数据不存在","NOT_FOUND")}catch(t){return O("读取本地数据失败:"+t)}},async saveData(e,t){try{return await(await Ue()).put("kv",JSON.stringify(t),e),k(!0)}catch(r){return O("保存本地数据失败:"+r)}},async loadKeys(e={}){try{const s=await(await Ue()).transaction(["kv"],"readonly").objectStore("kv").getAllKeys(),{sortDir:i="asc",limit:o=100,skip:a=0}=e,f=s.sort((b,w)=>i==="desc"?w.localeCompare(b):b.localeCompare(w)),l=f.length,u=f.slice(a,a+o),h={keys:u,total_rows:l,current_page:{limit:o,skip:a,count:u.length},load_more:null};return k(h)}catch(t){return O("获取本地键名列表失败:"+t.message)}}};function Lt(e,t){return function(){return e.apply(t,arguments)}}const{toString:Ir}=Object.prototype,{getPrototypeOf:Xe}=Object,{iterator:Se,toStringTag:It}=Symbol,xe=(e=>t=>{const r=Ir.call(t);return e[r]||(e[r]=r.slice(8,-1).toLowerCase())})(Object.create(null)),B=e=>(e=e.toLowerCase(),t=>xe(t)===e),Ae=e=>t=>typeof t===e,{isArray:G}=Array,Z=Ae("undefined");function ie(e){return e!==null&&!Z(e)&&e.constructor!==null&&!Z(e.constructor)&&C(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const jt=B("ArrayBuffer");function jr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&jt(e.buffer),t}const $r=Ae("string"),C=Ae("function"),$t=Ae("number"),ae=e=>e!==null&&typeof e=="object",Mr=e=>e===!0||e===!1,ye=e=>{if(xe(e)!=="object")return!1;const t=Xe(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(It in e)&&!(Se in e)},Hr=e=>{if(!ae(e)||ie(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},qr=B("Date"),Kr=B("File"),zr=B("Blob"),Vr=B("FileList"),Jr=e=>ae(e)&&C(e.pipe),Wr=e=>{let t;return e&&(typeof FormData=="function"&&e instanceof FormData||C(e.append)&&((t=xe(e))==="formdata"||t==="object"&&C(e.toString)&&e.toString()==="[object FormData]"))},Xr=B("URLSearchParams"),[Zr,Gr,Qr,Yr]=["ReadableStream","Request","Response","Headers"].map(B),en=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function ce(e,t,{allOwnKeys:r=!1}={}){if(e===null||typeof e>"u")return;let n,s;if(typeof e!="object"&&(e=[e]),G(e))for(n=0,s=e.length;n0;)if(s=r[n],t===s.toLowerCase())return s;return null}const K=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ht=e=>!Z(e)&&e!==K;function He(){const{caseless:e,skipUndefined:t}=Ht(this)&&this||{},r={},n=(s,i)=>{const o=e&&Mt(r,i)||i;ye(r[o])&&ye(s)?r[o]=He(r[o],s):ye(s)?r[o]=He({},s):G(s)?r[o]=s.slice():(!t||!Z(s))&&(r[o]=s)};for(let s=0,i=arguments.length;s(ce(t,(s,i)=>{r&&C(s)?e[i]=Lt(s,r):e[i]=s},{allOwnKeys:n}),e),rn=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),nn=(e,t,r,n)=>{e.prototype=Object.create(t.prototype,n),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),r&&Object.assign(e.prototype,r)},sn=(e,t,r,n)=>{let s,i,o;const a={};if(t=t||{},e==null)return t;do{for(s=Object.getOwnPropertyNames(e),i=s.length;i-- >0;)o=s[i],(!n||n(o,e,t))&&!a[o]&&(t[o]=e[o],a[o]=!0);e=r!==!1&&Xe(e)}while(e&&(!r||r(e,t))&&e!==Object.prototype);return t},on=(e,t,r)=>{e=String(e),(r===void 0||r>e.length)&&(r=e.length),r-=t.length;const n=e.indexOf(t,r);return n!==-1&&n===r},an=e=>{if(!e)return null;if(G(e))return e;let t=e.length;if(!$t(t))return null;const r=new Array(t);for(;t-- >0;)r[t]=e[t];return r},cn=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&Xe(Uint8Array)),un=(e,t)=>{const n=(e&&e[Se]).call(e);let s;for(;(s=n.next())&&!s.done;){const i=s.value;t.call(e,i[0],i[1])}},ln=(e,t)=>{let r;const n=[];for(;(r=e.exec(t))!==null;)n.push(r);return n},fn=B("HTMLFormElement"),dn=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(r,n,s){return n.toUpperCase()+s}),pt=(({hasOwnProperty:e})=>(t,r)=>e.call(t,r))(Object.prototype),hn=B("RegExp"),qt=(e,t)=>{const r=Object.getOwnPropertyDescriptors(e),n={};ce(r,(s,i)=>{let o;(o=t(s,i,e))!==!1&&(n[i]=o||s)}),Object.defineProperties(e,n)},pn=e=>{qt(e,(t,r)=>{if(C(e)&&["arguments","caller","callee"].indexOf(r)!==-1)return!1;const n=e[r];if(C(n)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+r+"'")})}})},mn=(e,t)=>{const r={},n=s=>{s.forEach(i=>{r[i]=!0})};return G(e)?n(e):n(String(e).split(t)),r},yn=()=>{},bn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function wn(e){return!!(e&&C(e.append)&&e[It]==="FormData"&&e[Se])}const gn=e=>{const t=new Array(10),r=(n,s)=>{if(ae(n)){if(t.indexOf(n)>=0)return;if(ie(n))return n;if(!("toJSON"in n)){t[s]=n;const i=G(n)?[]:{};return ce(n,(o,a)=>{const f=r(o,s+1);!Z(f)&&(i[a]=f)}),t[s]=void 0,i}}return n};return r(e,0)},En=B("AsyncFunction"),Rn=e=>e&&(ae(e)||C(e))&&C(e.then)&&C(e.catch),Kt=((e,t)=>e?setImmediate:t?((r,n)=>(K.addEventListener("message",({source:s,data:i})=>{s===K&&i===r&&n.length&&n.shift()()},!1),s=>{n.push(s),K.postMessage(r,"*")}))(`axios@${Math.random()}`,[]):r=>setTimeout(r))(typeof setImmediate=="function",C(K.postMessage)),Sn=typeof queueMicrotask<"u"?queueMicrotask.bind(K):typeof process<"u"&&process.nextTick||Kt,xn=e=>e!=null&&C(e[Se]),c={isArray:G,isArrayBuffer:jt,isBuffer:ie,isFormData:Wr,isArrayBufferView:jr,isString:$r,isNumber:$t,isBoolean:Mr,isObject:ae,isPlainObject:ye,isEmptyObject:Hr,isReadableStream:Zr,isRequest:Gr,isResponse:Qr,isHeaders:Yr,isUndefined:Z,isDate:qr,isFile:Kr,isBlob:zr,isRegExp:hn,isFunction:C,isStream:Jr,isURLSearchParams:Xr,isTypedArray:cn,isFileList:Vr,forEach:ce,merge:He,extend:tn,trim:en,stripBOM:rn,inherits:nn,toFlatObject:sn,kindOf:xe,kindOfTest:B,endsWith:on,toArray:an,forEachEntry:un,matchAll:ln,isHTMLForm:fn,hasOwnProperty:pt,hasOwnProp:pt,reduceDescriptors:qt,freezeMethods:pn,toObjectSet:mn,toCamelCase:dn,noop:yn,toFiniteNumber:bn,findKey:Mt,global:K,isContextDefined:Ht,isSpecCompliantForm:wn,toJSONObject:gn,isAsyncFn:En,isThenable:Rn,setImmediate:Kt,asap:Sn,isIterable:xn};function y(e,t,r,n,s){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack,this.message=e,this.name="AxiosError",t&&(this.code=t),r&&(this.config=r),n&&(this.request=n),s&&(this.response=s,this.status=s.status?s.status:null)}c.inherits(y,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:c.toJSONObject(this.config),code:this.code,status:this.status}}});const zt=y.prototype,Vt={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach(e=>{Vt[e]={value:e}});Object.defineProperties(y,Vt);Object.defineProperty(zt,"isAxiosError",{value:!0});y.from=(e,t,r,n,s,i)=>{const o=Object.create(zt);c.toFlatObject(e,o,function(u){return u!==Error.prototype},l=>l!=="isAxiosError");const a=e&&e.message?e.message:"Error",f=t==null&&e?e.code:t;return y.call(o,a,f,r,n,s),e&&o.cause==null&&Object.defineProperty(o,"cause",{value:e,configurable:!0}),o.name=e&&e.name||"Error",i&&Object.assign(o,i),o};const An=null;function qe(e){return c.isPlainObject(e)||c.isArray(e)}function Jt(e){return c.endsWith(e,"[]")?e.slice(0,-2):e}function mt(e,t,r){return e?e.concat(t).map(function(s,i){return s=Jt(s),!r&&i?"["+s+"]":s}).join(r?".":""):t}function On(e){return c.isArray(e)&&!e.some(qe)}const Tn=c.toFlatObject(c,{},null,function(t){return/^is[A-Z]/.test(t)});function Oe(e,t,r){if(!c.isObject(e))throw new TypeError("target must be an object");t=t||new FormData,r=c.toFlatObject(r,{metaTokens:!0,dots:!1,indexes:!1},!1,function(m,p){return!c.isUndefined(p[m])});const n=r.metaTokens,s=r.visitor||u,i=r.dots,o=r.indexes,f=(r.Blob||typeof Blob<"u"&&Blob)&&c.isSpecCompliantForm(t);if(!c.isFunction(s))throw new TypeError("visitor must be a function");function l(d){if(d===null)return"";if(c.isDate(d))return d.toISOString();if(c.isBoolean(d))return d.toString();if(!f&&c.isBlob(d))throw new y("Blob is not supported. Use a Buffer instead.");return c.isArrayBuffer(d)||c.isTypedArray(d)?f&&typeof Blob=="function"?new Blob([d]):Buffer.from(d):d}function u(d,m,p){let E=d;if(d&&!p&&typeof d=="object"){if(c.endsWith(m,"{}"))m=n?m:m.slice(0,-2),d=JSON.stringify(d);else if(c.isArray(d)&&On(d)||(c.isFileList(d)||c.endsWith(m,"[]"))&&(E=c.toArray(d)))return m=Jt(m),E.forEach(function(R,T){!(c.isUndefined(R)||R===null)&&t.append(o===!0?mt([m],T,i):o===null?m:m+"[]",l(R))}),!1}return qe(d)?!0:(t.append(mt(p,m,i),l(d)),!1)}const h=[],b=Object.assign(Tn,{defaultVisitor:u,convertValue:l,isVisitable:qe});function w(d,m){if(!c.isUndefined(d)){if(h.indexOf(d)!==-1)throw Error("Circular reference detected in "+m.join("."));h.push(d),c.forEach(d,function(E,_){(!(c.isUndefined(E)||E===null)&&s.call(t,E,c.isString(_)?_.trim():_,m,b))===!0&&w(E,m?m.concat(_):[_])}),h.pop()}}if(!c.isObject(e))throw new TypeError("data must be an object");return w(e),t}function yt(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,function(n){return t[n]})}function Ze(e,t){this._pairs=[],e&&Oe(e,this,t)}const Wt=Ze.prototype;Wt.append=function(t,r){this._pairs.push([t,r])};Wt.toString=function(t){const r=t?function(n){return t.call(this,n,yt)}:yt;return this._pairs.map(function(s){return r(s[0])+"="+r(s[1])},"").join("&")};function Cn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function Xt(e,t,r){if(!t)return e;const n=r&&r.encode||Cn;c.isFunction(r)&&(r={serialize:r});const s=r&&r.serialize;let i;if(s?i=s(t,r):i=c.isURLSearchParams(t)?t.toString():new Ze(t,r).toString(n),i){const o=e.indexOf("#");o!==-1&&(e=e.slice(0,o)),e+=(e.indexOf("?")===-1?"?":"&")+i}return e}class bt{constructor(){this.handlers=[]}use(t,r,n){return this.handlers.push({fulfilled:t,rejected:r,synchronous:n?n.synchronous:!1,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){c.forEach(this.handlers,function(n){n!==null&&t(n)})}}const Zt={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},Dn=typeof URLSearchParams<"u"?URLSearchParams:Ze,Nn=typeof FormData<"u"?FormData:null,_n=typeof Blob<"u"?Blob:null,vn={isBrowser:!0,classes:{URLSearchParams:Dn,FormData:Nn,Blob:_n},protocols:["http","https","file","blob","url","data"]},Ge=typeof window<"u"&&typeof document<"u",Ke=typeof navigator=="object"&&navigator||void 0,Un=Ge&&(!Ke||["ReactNative","NativeScript","NS"].indexOf(Ke.product)<0),kn=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Pn=Ge&&window.location.href||"http://localhost",Bn=Object.freeze(Object.defineProperty({__proto__:null,hasBrowserEnv:Ge,hasStandardBrowserEnv:Un,hasStandardBrowserWebWorkerEnv:kn,navigator:Ke,origin:Pn},Symbol.toStringTag,{value:"Module"})),A={...Bn,...vn};function Fn(e,t){return Oe(e,new A.classes.URLSearchParams,{visitor:function(r,n,s,i){return A.isNode&&c.isBuffer(r)?(this.append(n,r.toString("base64")),!1):i.defaultVisitor.apply(this,arguments)},...t})}function Ln(e){return c.matchAll(/\w+|\[(\w*)]/g,e).map(t=>t[0]==="[]"?"":t[1]||t[0])}function In(e){const t={},r=Object.keys(e);let n;const s=r.length;let i;for(n=0;n=r.length;return o=!o&&c.isArray(s)?s.length:o,f?(c.hasOwnProp(s,o)?s[o]=[s[o],n]:s[o]=n,!a):((!s[o]||!c.isObject(s[o]))&&(s[o]=[]),t(r,n,s[o],i)&&c.isArray(s[o])&&(s[o]=In(s[o])),!a)}if(c.isFormData(e)&&c.isFunction(e.entries)){const r={};return c.forEachEntry(e,(n,s)=>{t(Ln(n),s,r,0)}),r}return null}function jn(e,t,r){if(c.isString(e))try{return(t||JSON.parse)(e),c.trim(e)}catch(n){if(n.name!=="SyntaxError")throw n}return(r||JSON.stringify)(e)}const ue={transitional:Zt,adapter:["xhr","http","fetch"],transformRequest:[function(t,r){const n=r.getContentType()||"",s=n.indexOf("application/json")>-1,i=c.isObject(t);if(i&&c.isHTMLForm(t)&&(t=new FormData(t)),c.isFormData(t))return s?JSON.stringify(Gt(t)):t;if(c.isArrayBuffer(t)||c.isBuffer(t)||c.isStream(t)||c.isFile(t)||c.isBlob(t)||c.isReadableStream(t))return t;if(c.isArrayBufferView(t))return t.buffer;if(c.isURLSearchParams(t))return r.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let a;if(i){if(n.indexOf("application/x-www-form-urlencoded")>-1)return Fn(t,this.formSerializer).toString();if((a=c.isFileList(t))||n.indexOf("multipart/form-data")>-1){const f=this.env&&this.env.FormData;return Oe(a?{"files[]":t}:t,f&&new f,this.formSerializer)}}return i||s?(r.setContentType("application/json",!1),jn(t)):t}],transformResponse:[function(t){const r=this.transitional||ue.transitional,n=r&&r.forcedJSONParsing,s=this.responseType==="json";if(c.isResponse(t)||c.isReadableStream(t))return t;if(t&&c.isString(t)&&(n&&!this.responseType||s)){const o=!(r&&r.silentJSONParsing)&&s;try{return JSON.parse(t,this.parseReviver)}catch(a){if(o)throw a.name==="SyntaxError"?y.from(a,y.ERR_BAD_RESPONSE,this,null,this.response):a}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:A.classes.FormData,Blob:A.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};c.forEach(["delete","get","head","post","put","patch"],e=>{ue.headers[e]={}});const $n=c.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Mn=e=>{const t={};let r,n,s;return e&&e.split(` `).forEach(function(o){s=o.indexOf(":"),r=o.substring(0,s).trim().toLowerCase(),n=o.substring(s+1).trim(),!(!r||t[r]&&$n[r])&&(r==="set-cookie"?t[r]?t[r].push(n):t[r]=[n]:t[r]=t[r]?t[r]+", "+n:n)}),t},wt=Symbol("internals");function ne(e){return e&&String(e).trim().toLowerCase()}function be(e){return e===!1||e==null?e:c.isArray(e)?e.map(be):String(e)}function Hn(e){const t=Object.create(null),r=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let n;for(;n=r.exec(e);)t[n[1]]=n[2];return t}const qn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function ke(e,t,r,n,s){if(c.isFunction(n))return n.call(this,t,r);if(s&&(t=r),!!c.isString(t)){if(c.isString(n))return t.indexOf(n)!==-1;if(c.isRegExp(n))return n.test(t)}}function Kn(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,r,n)=>r.toUpperCase()+n)}function zn(e,t){const r=c.toCamelCase(" "+t);["get","set","has"].forEach(n=>{Object.defineProperty(e,n+r,{value:function(s,i,o){return this[n].call(this,t,s,i,o)},configurable:!0})})}let D=class{constructor(t){t&&this.set(t)}set(t,r,n){const s=this;function i(a,f,l){const u=ne(f);if(!u)throw new Error("header name must be a non-empty string");const h=c.findKey(s,u);(!h||s[h]===void 0||l===!0||l===void 0&&s[h]!==!1)&&(s[h||f]=be(a))}const o=(a,f)=>c.forEach(a,(l,u)=>i(l,u,f));if(c.isPlainObject(t)||t instanceof this.constructor)o(t,r);else if(c.isString(t)&&(t=t.trim())&&!qn(t))o(Mn(t),r);else if(c.isObject(t)&&c.isIterable(t)){let a={},f,l;for(const u of t){if(!c.isArray(u))throw TypeError("Object iterator must return a key-value pair");a[l=u[0]]=(f=a[l])?c.isArray(f)?[...f,u[1]]:[f,u[1]]:u[1]}o(a,r)}else t!=null&&i(r,t,n);return this}get(t,r){if(t=ne(t),t){const n=c.findKey(this,t);if(n){const s=this[n];if(!r)return s;if(r===!0)return Hn(s);if(c.isFunction(r))return r.call(this,s,n);if(c.isRegExp(r))return r.exec(s);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,r){if(t=ne(t),t){const n=c.findKey(this,t);return!!(n&&this[n]!==void 0&&(!r||ke(this,this[n],n,r)))}return!1}delete(t,r){const n=this;let s=!1;function i(o){if(o=ne(o),o){const a=c.findKey(n,o);a&&(!r||ke(n,n[a],a,r))&&(delete n[a],s=!0)}}return c.isArray(t)?t.forEach(i):i(t),s}clear(t){const r=Object.keys(this);let n=r.length,s=!1;for(;n--;){const i=r[n];(!t||ke(this,this[i],i,t,!0))&&(delete this[i],s=!0)}return s}normalize(t){const r=this,n={};return c.forEach(this,(s,i)=>{const o=c.findKey(n,i);if(o){r[o]=be(s),delete r[i];return}const a=t?Kn(i):String(i).trim();a!==i&&delete r[i],r[a]=be(s),n[a]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){const r=Object.create(null);return c.forEach(this,(n,s)=>{n!=null&&n!==!1&&(r[s]=t&&c.isArray(n)?n.join(", "):n)}),r}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,r])=>t+": "+r).join(` `)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...r){const n=new this(t);return r.forEach(s=>n.set(s)),n}static accessor(t){const n=(this[wt]=this[wt]={accessors:{}}).accessors,s=this.prototype;function i(o){const a=ne(o);n[a]||(zn(s,o),n[a]=!0)}return c.isArray(t)?t.forEach(i):i(t),this}};D.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);c.reduceDescriptors(D.prototype,({value:e},t)=>{let r=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(n){this[r]=n}}});c.freezeMethods(D);function Pe(e,t){const r=this||ue,n=t||r,s=D.from(n.headers);let i=n.data;return c.forEach(e,function(a){i=a.call(r,i,s.normalize(),t?t.status:void 0)}),s.normalize(),i}function Qt(e){return!!(e&&e.__CANCEL__)}function Q(e,t,r){y.call(this,e??"canceled",y.ERR_CANCELED,t,r),this.name="CanceledError"}c.inherits(Q,y,{__CANCEL__:!0});function Yt(e,t,r){const n=r.config.validateStatus;!r.status||!n||n(r.status)?e(r):t(new y("Request failed with status code "+r.status,[y.ERR_BAD_REQUEST,y.ERR_BAD_RESPONSE][Math.floor(r.status/100)-4],r.config,r.request,r))}function Vn(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function Jn(e,t){e=e||10;const r=new Array(e),n=new Array(e);let s=0,i=0,o;return t=t!==void 0?t:1e3,function(f){const l=Date.now(),u=n[i];o||(o=l),r[s]=f,n[s]=l;let h=i,b=0;for(;h!==s;)b+=r[h++],h=h%e;if(s=(s+1)%e,s===i&&(i=(i+1)%e),l-o{r=u,s=null,i&&(clearTimeout(i),i=null),e(...l)};return[(...l)=>{const u=Date.now(),h=u-r;h>=n?o(l,u):(s=l,i||(i=setTimeout(()=>{i=null,o(s)},n-h)))},()=>s&&o(s)]}const Ee=(e,t,r=3)=>{let n=0;const s=Jn(50,250);return Wn(i=>{const o=i.loaded,a=i.lengthComputable?i.total:void 0,f=o-n,l=s(f),u=o<=a;n=o;const h={loaded:o,total:a,progress:a?o/a:void 0,bytes:f,rate:l||void 0,estimated:l&&a&&u?(a-o)/l:void 0,event:i,lengthComputable:a!=null,[t?"download":"upload"]:!0};e(h)},r)},gt=(e,t)=>{const r=e!=null;return[n=>t[0]({lengthComputable:r,total:e,loaded:n}),t[1]]},Et=e=>(...t)=>c.asap(()=>e(...t)),Xn=A.hasStandardBrowserEnv?((e,t)=>r=>(r=new URL(r,A.origin),e.protocol===r.protocol&&e.host===r.host&&(t||e.port===r.port)))(new URL(A.origin),A.navigator&&/(msie|trident)/i.test(A.navigator.userAgent)):()=>!0,Zn=A.hasStandardBrowserEnv?{write(e,t,r,n,s,i,o){if(typeof document>"u")return;const a=[`${e}=${encodeURIComponent(t)}`];c.isNumber(r)&&a.push(`expires=${new Date(r).toUTCString()}`),c.isString(n)&&a.push(`path=${n}`),c.isString(s)&&a.push(`domain=${s}`),i===!0&&a.push("secure"),c.isString(o)&&a.push(`SameSite=${o}`),document.cookie=a.join("; ")},read(e){if(typeof document>"u")return null;const t=document.cookie.match(new RegExp("(?:^|; )"+e+"=([^;]*)"));return t?decodeURIComponent(t[1]):null},remove(e){this.write(e,"",Date.now()-864e5,"/")}}:{write(){},read(){return null},remove(){}};function Gn(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function Qn(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function er(e,t,r){let n=!Gn(t);return e&&(n||r==!1)?Qn(e,t):t}const Rt=e=>e instanceof D?{...e}:e;function J(e,t){t=t||{};const r={};function n(l,u,h,b){return c.isPlainObject(l)&&c.isPlainObject(u)?c.merge.call({caseless:b},l,u):c.isPlainObject(u)?c.merge({},u):c.isArray(u)?u.slice():u}function s(l,u,h,b){if(c.isUndefined(u)){if(!c.isUndefined(l))return n(void 0,l,h,b)}else return n(l,u,h,b)}function i(l,u){if(!c.isUndefined(u))return n(void 0,u)}function o(l,u){if(c.isUndefined(u)){if(!c.isUndefined(l))return n(void 0,l)}else return n(void 0,u)}function a(l,u,h){if(h in t)return n(l,u);if(h in e)return n(void 0,l)}const f={url:i,method:i,data:i,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,withXSRFToken:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:a,headers:(l,u,h)=>s(Rt(l),Rt(u),h,!0)};return c.forEach(Object.keys({...e,...t}),function(u){const h=f[u]||s,b=h(e[u],t[u],u);c.isUndefined(b)&&h!==a||(r[u]=b)}),r}const tr=e=>{const t=J({},e);let{data:r,withXSRFToken:n,xsrfHeaderName:s,xsrfCookieName:i,headers:o,auth:a}=t;if(t.headers=o=D.from(o),t.url=Xt(er(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),a&&o.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),c.isFormData(r)){if(A.hasStandardBrowserEnv||A.hasStandardBrowserWebWorkerEnv)o.setContentType(void 0);else if(c.isFunction(r.getHeaders)){const f=r.getHeaders(),l=["content-type","content-length"];Object.entries(f).forEach(([u,h])=>{l.includes(u.toLowerCase())&&o.set(u,h)})}}if(A.hasStandardBrowserEnv&&(n&&c.isFunction(n)&&(n=n(t)),n||n!==!1&&Xn(t.url))){const f=s&&i&&Zn.read(i);f&&o.set(s,f)}return t},Yn=typeof XMLHttpRequest<"u",es=Yn&&function(e){return new Promise(function(r,n){const s=tr(e);let i=s.data;const o=D.from(s.headers).normalize();let{responseType:a,onUploadProgress:f,onDownloadProgress:l}=s,u,h,b,w,d;function m(){w&&w(),d&&d(),s.cancelToken&&s.cancelToken.unsubscribe(u),s.signal&&s.signal.removeEventListener("abort",u)}let p=new XMLHttpRequest;p.open(s.method.toUpperCase(),s.url,!0),p.timeout=s.timeout;function E(){if(!p)return;const R=D.from("getAllResponseHeaders"in p&&p.getAllResponseHeaders()),U={data:!a||a==="text"||a==="json"?p.responseText:p.response,status:p.status,statusText:p.statusText,headers:R,config:e,request:p};Yt(function(v){r(v),m()},function(v){n(v),m()},U),p=null}"onloadend"in p?p.onloadend=E:p.onreadystatechange=function(){!p||p.readyState!==4||p.status===0&&!(p.responseURL&&p.responseURL.indexOf("file:")===0)||setTimeout(E)},p.onabort=function(){p&&(n(new y("Request aborted",y.ECONNABORTED,e,p)),p=null)},p.onerror=function(T){const U=T&&T.message?T.message:"Network Error",H=new y(U,y.ERR_NETWORK,e,p);H.event=T||null,n(H),p=null},p.ontimeout=function(){let T=s.timeout?"timeout of "+s.timeout+"ms exceeded":"timeout exceeded";const U=s.transitional||Zt;s.timeoutErrorMessage&&(T=s.timeoutErrorMessage),n(new y(T,U.clarifyTimeoutError?y.ETIMEDOUT:y.ECONNABORTED,e,p)),p=null},i===void 0&&o.setContentType(null),"setRequestHeader"in p&&c.forEach(o.toJSON(),function(T,U){p.setRequestHeader(U,T)}),c.isUndefined(s.withCredentials)||(p.withCredentials=!!s.withCredentials),a&&a!=="json"&&(p.responseType=s.responseType),l&&([b,d]=Ee(l,!0),p.addEventListener("progress",b)),f&&p.upload&&([h,w]=Ee(f),p.upload.addEventListener("progress",h),p.upload.addEventListener("loadend",w)),(s.cancelToken||s.signal)&&(u=R=>{p&&(n(!R||R.type?new Q(null,e,p):R),p.abort(),p=null)},s.cancelToken&&s.cancelToken.subscribe(u),s.signal&&(s.signal.aborted?u():s.signal.addEventListener("abort",u)));const _=Vn(s.url);if(_&&A.protocols.indexOf(_)===-1){n(new y("Unsupported protocol "+_+":",y.ERR_BAD_REQUEST,e));return}p.send(i||null)})},ts=(e,t)=>{const{length:r}=e=e?e.filter(Boolean):[];if(t||r){let n=new AbortController,s;const i=function(l){if(!s){s=!0,a();const u=l instanceof Error?l:this.reason;n.abort(u instanceof y?u:new Q(u instanceof Error?u.message:u))}};let o=t&&setTimeout(()=>{o=null,i(new y(`timeout ${t} of ms exceeded`,y.ETIMEDOUT))},t);const a=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(l=>{l.unsubscribe?l.unsubscribe(i):l.removeEventListener("abort",i)}),e=null)};e.forEach(l=>l.addEventListener("abort",i));const{signal:f}=n;return f.unsubscribe=()=>c.asap(a),f}},rs=function*(e,t){let r=e.byteLength;if(r{const s=ns(e,t);let i=0,o,a=f=>{o||(o=!0,n&&n(f))};return new ReadableStream({async pull(f){try{const{done:l,value:u}=await s.next();if(l){a(),f.close();return}let h=u.byteLength;if(r){let b=i+=h;r(b)}f.enqueue(new Uint8Array(u))}catch(l){throw a(l),l}},cancel(f){return a(f),s.return()}},{highWaterMark:2})},xt=64*1024,{isFunction:pe}=c,os=(({Request:e,Response:t})=>({Request:e,Response:t}))(c.global),{ReadableStream:At,TextEncoder:Ot}=c.global,Tt=(e,...t)=>{try{return!!e(...t)}catch{return!1}},is=e=>{e=c.merge.call({skipUndefined:!0},os,e);const{fetch:t,Request:r,Response:n}=e,s=t?pe(t):typeof fetch=="function",i=pe(r),o=pe(n);if(!s)return!1;const a=s&&pe(At),f=s&&(typeof Ot=="function"?(d=>m=>d.encode(m))(new Ot):async d=>new Uint8Array(await new r(d).arrayBuffer())),l=i&&a&&Tt(()=>{let d=!1;const m=new r(A.origin,{body:new At,method:"POST",get duplex(){return d=!0,"half"}}).headers.has("Content-Type");return d&&!m}),u=o&&a&&Tt(()=>c.isReadableStream(new n("").body)),h={stream:u&&(d=>d.body)};s&&["text","arrayBuffer","blob","formData","stream"].forEach(d=>{!h[d]&&(h[d]=(m,p)=>{let E=m&&m[d];if(E)return E.call(m);throw new y(`Response type '${d}' is not supported`,y.ERR_NOT_SUPPORT,p)})});const b=async d=>{if(d==null)return 0;if(c.isBlob(d))return d.size;if(c.isSpecCompliantForm(d))return(await new r(A.origin,{method:"POST",body:d}).arrayBuffer()).byteLength;if(c.isArrayBufferView(d)||c.isArrayBuffer(d))return d.byteLength;if(c.isURLSearchParams(d)&&(d=d+""),c.isString(d))return(await f(d)).byteLength},w=async(d,m)=>{const p=c.toFiniteNumber(d.getContentLength());return p??b(m)};return async d=>{let{url:m,method:p,data:E,signal:_,cancelToken:R,timeout:T,onDownloadProgress:U,onUploadProgress:H,responseType:v,headers:Ce,withCredentials:le="same-origin",fetchOptions:rt}=tr(d),nt=t||fetch;v=v?(v+"").toLowerCase():"text";let fe=ts([_,R&&R.toAbortSignal()],T),ee=null;const q=fe&&fe.unsubscribe&&(()=>{fe.unsubscribe()});let st;try{if(H&&l&&p!=="get"&&p!=="head"&&(st=await w(Ce,E))!==0){let M=new r(m,{method:"POST",body:E,duplex:"half"}),W;if(c.isFormData(E)&&(W=M.headers.get("content-type"))&&Ce.setContentType(W),M.body){const[De,de]=gt(st,Ee(Et(H)));E=St(M.body,xt,De,de)}}c.isString(le)||(le=le?"include":"omit");const F=i&&"credentials"in r.prototype,ot={...rt,signal:fe,method:p.toUpperCase(),headers:Ce.normalize().toJSON(),body:E,duplex:"half",credentials:F?le:void 0};ee=i&&new r(m,ot);let $=await(i?nt(ee,rt):nt(m,ot));const it=u&&(v==="stream"||v==="response");if(u&&(U||it&&q)){const M={};["status","statusText","headers"].forEach(at=>{M[at]=$[at]});const W=c.toFiniteNumber($.headers.get("content-length")),[De,de]=U&>(W,Ee(Et(U),!0))||[];$=new n(St($.body,xt,De,()=>{de&&de(),q&&q()}),M)}v=v||"text";let Sr=await h[c.findKey(h,v)||"text"]($,d);return!it&&q&&q(),await new Promise((M,W)=>{Yt(M,W,{data:Sr,headers:D.from($.headers),status:$.status,statusText:$.statusText,config:d,request:ee})})}catch(F){throw q&&q(),F&&F.name==="TypeError"&&/Load failed|fetch/i.test(F.message)?Object.assign(new y("Network Error",y.ERR_NETWORK,d,ee),{cause:F.cause||F}):y.from(F,F&&F.code,d,ee)}}},as=new Map,rr=e=>{let t=e&&e.env||{};const{fetch:r,Request:n,Response:s}=t,i=[n,s,r];let o=i.length,a=o,f,l,u=as;for(;a--;)f=i[a],l=u.get(f),l===void 0&&u.set(f,l=a?new Map:is(t)),u=l;return l};rr();const Qe={http:An,xhr:es,fetch:{get:rr}};c.forEach(Qe,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const Ct=e=>`- ${e}`,cs=e=>c.isFunction(e)||e===null||e===!1;function us(e,t){e=c.isArray(e)?e:[e];const{length:r}=e;let n,s;const i={};for(let o=0;o`adapter ${f} `+(l===!1?"is not supported by the environment":"is not available in the build"));let a=r?o.length>1?`since : `+o.map(Ct).join(` diff --git a/assets/debug-KU27ZD5S.js b/assets/debug-BSi7gIU2.js similarity index 88% rename from assets/debug-KU27ZD5S.js rename to assets/debug-BSi7gIU2.js index 274209d..823b06f 100644 --- a/assets/debug-KU27ZD5S.js +++ b/assets/debug-BSi7gIU2.js @@ -1 +1 @@ -import{aO as u,Z as f,o as c,j as g,w as t,c as e,l as p,q as V,v as l,Y as v,z as m,i as C,A as _,M as b,y,aP as D,aQ as x,a2 as r}from"./index-BUM0TY0E.js";import{V as I}from"./VContainer-DakLDC1m.js";const k=u("v-code","code"),S={__name:"debug",setup(w){const s=r(""),d=r({}),o=r(!1),n=async()=>{o.value=!0;try{s.value=await D(),d.value=await x()}catch(i){console.error(i),s.value="Error loading visitor ID"}finally{o.value=!1}};return f(()=>{n()}),(i,a)=>(c(),g(I,null,{default:t(()=>[e(p,{class:"mb-4"},{default:t(()=>[e(V,null,{default:t(()=>[...a[0]||(a[0]=[l("调试信息",-1)])]),_:1}),e(v,null,{default:t(()=>[...a[1]||(a[1]=[l(" 请将这个ID复制并私聊给开发者,以便进行问题排查。 ",-1)])]),_:1}),e(m,null,{default:t(()=>[a[2]||(a[2]=C("div",{class:"text-h6 mb-2"},"访客 ID",-1)),e(k,{class:"d-block pa-2 bg-grey-lighten-4 rounded mb-4"},{default:t(()=>[l(_(s.value||"加载中..."),1)]),_:1})]),_:1}),e(b,null,{default:t(()=>[e(y,{color:"primary",onClick:n,loading:o.value},{default:t(()=>[...a[3]||(a[3]=[l(" Refresh ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}))}};export{S as default}; +import{aO as u,Z as f,o as c,j as g,w as t,c as e,l as p,q as V,v as l,Y as v,z as m,i as C,A as _,M as b,y,aP as D,aQ as x,a2 as r}from"./index-BXl8SUNP.js";import{V as I}from"./VContainer-Doz_PneH.js";const k=u("v-code","code"),S={__name:"debug",setup(w){const s=r(""),d=r({}),o=r(!1),n=async()=>{o.value=!0;try{s.value=await D(),d.value=await x()}catch(i){console.error(i),s.value="Error loading visitor ID"}finally{o.value=!1}};return f(()=>{n()}),(i,a)=>(c(),g(I,null,{default:t(()=>[e(p,{class:"mb-4"},{default:t(()=>[e(V,null,{default:t(()=>[...a[0]||(a[0]=[l("调试信息",-1)])]),_:1}),e(v,null,{default:t(()=>[...a[1]||(a[1]=[l(" 请将这个ID复制并私聊给开发者,以便进行问题排查。 ",-1)])]),_:1}),e(m,null,{default:t(()=>[a[2]||(a[2]=C("div",{class:"text-h6 mb-2"},"访客 ID",-1)),e(k,{class:"d-block pa-2 bg-grey-lighten-4 rounded mb-4"},{default:t(()=>[l(_(s.value||"加载中..."),1)]),_:1})]),_:1}),e(b,null,{default:t(()=>[e(y,{color:"primary",onClick:n,loading:o.value},{default:t(()=>[...a[3]||(a[3]=[l(" Refresh ",-1)])]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1}))}};export{S as default}; diff --git a/assets/debug-init-CBNN17PW.js b/assets/debug-init-B-H9lXTX.js similarity index 90% rename from assets/debug-init-CBNN17PW.js rename to assets/debug-init-B-H9lXTX.js index 202cea0..a71c607 100644 --- a/assets/debug-init-CBNN17PW.js +++ b/assets/debug-init-B-H9lXTX.js @@ -1 +1 @@ -import{a2 as s,k as a,r as R,o as U,j as N,w as t,c as e,l as k,q as g,v as o,z as _,K as B,y as p,P as G,Q as C,a0 as T,a1 as D,A as S,s as n,a3 as c}from"./index-BUM0TY0E.js";import{k as K}from"./dataProvider-MQ8YacC2.js";import{V as z,a as y}from"./VRow-CPw1R1BU.js";import{V as A}from"./VForm-Bz_LQtPX.js";import{V as d}from"./VTextField-C579e7l1.js";import{V as F}from"./VContainer-DakLDC1m.js";import"./serverRotation-CjK7Y7P9.js";const I="kvinit.redirecting",M={__name:"debug-init",setup(P){const i=s(a("server.provider")||"kv-server"),v=s(a("server.kvToken")||""),m=s(a("device.uuid")||"00000000-0000-4000-8000-000000000000"),f=s(a("server.authDomain")||"https://cs.example.com"),w=()=>{n("server.provider",i.value),n("server.kvToken",v.value),n("device.uuid",m.value),n("server.authDomain",f.value),location.reload()},b=()=>{try{sessionStorage.removeItem(I)}catch(u){console.debug(u)}},x=()=>{K.loadNamespaceInfo=async()=>{throw new Error("模拟加载错误")},location.reload()},E=c(()=>{try{return sessionStorage.getItem(I)}catch(u){return String(u)}}),L=c(()=>JSON.stringify({provider:a("server.provider"),kvToken:a("server.kvToken"),uuid:a("device.uuid"),authDomain:a("server.authDomain")},null,2));return(u,l)=>{const V=R("v-list-item-content");return U(),N(F,null,{default:t(()=>[e(z,null,{default:t(()=>[e(y,{cols:"12",md:"6"},{default:t(()=>[e(k,null,{default:t(()=>[e(g,null,{default:t(()=>[...l[4]||(l[4]=[o("KvInitialize 调试面板",-1)])]),_:1}),e(_,null,{default:t(()=>[e(A,null,{default:t(()=>[e(d,{modelValue:i.value,"onUpdate:modelValue":l[0]||(l[0]=r=>i.value=r),label:"server.provider (kv-server/classworkscloud/other)"},null,8,["modelValue"]),e(d,{modelValue:v.value,"onUpdate:modelValue":l[1]||(l[1]=r=>v.value=r),label:"server.kvToken (空表示未授权)"},null,8,["modelValue"]),e(d,{modelValue:m.value,"onUpdate:modelValue":l[2]||(l[2]=r=>m.value=r),label:"device.uuid"},null,8,["modelValue"]),e(d,{modelValue:f.value,"onUpdate:modelValue":l[3]||(l[3]=r=>f.value=r),label:"server.authDomain"},null,8,["modelValue"])]),_:1}),e(B,{class:"my-4"}),e(p,{class:"me-2",color:"primary",onClick:w},{default:t(()=>[...l[5]||(l[5]=[o(" 应用设置 ",-1)])]),_:1}),e(p,{class:"me-2",color:"secondary",onClick:b},{default:t(()=>[...l[6]||(l[6]=[o(" 清除重定向守卫 ",-1)])]),_:1}),e(p,{color:"error",onClick:x},{default:t(()=>[...l[7]||(l[7]=[o(" 模拟命名空间加载错误 ",-1)])]),_:1}),e(G,{"two-line":""},{default:t(()=>[e(C,null,{default:t(()=>[e(V,null,{default:t(()=>[e(T,null,{default:t(()=>[...l[8]||(l[8]=[o("当前 sessionGuard",-1)])]),_:1}),e(D,null,{default:t(()=>[o(S(E.value),1)]),_:1})]),_:1})]),_:1}),e(C,null,{default:t(()=>[e(V,null,{default:t(()=>[e(T,null,{default:t(()=>[...l[9]||(l[9]=[o("当前 settings",-1)])]),_:1}),e(D,null,{default:t(()=>[o(S(L.value),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(y,{cols:"12",md:"6"},{default:t(()=>[e(k,null,{default:t(()=>[e(g,null,{default:t(()=>[...l[10]||(l[10]=[o("初始化组件已替换",-1)])]),_:1}),e(_,null,{default:t(()=>[...l[11]||(l[11]=[o(" 已迁移为首页内联的 InitServiceChooser 组件。 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}}};export{M as default}; +import{a2 as s,k as a,r as R,o as U,j as N,w as t,c as e,l as k,q as g,v as o,z as _,K as B,y as p,P as G,Q as C,a0 as T,a1 as D,A as S,s as n,a3 as c}from"./index-BXl8SUNP.js";import{k as K}from"./dataProvider-Cg4CSn_f.js";import{V as z,a as y}from"./VRow-DFPdcq_b.js";import{V as A}from"./VForm-C1v7pkqf.js";import{V as d}from"./VTextField-DxxbesnN.js";import{V as F}from"./VContainer-Doz_PneH.js";import"./serverRotation-BBUKyTw9.js";const I="kvinit.redirecting",M={__name:"debug-init",setup(P){const i=s(a("server.provider")||"kv-server"),v=s(a("server.kvToken")||""),m=s(a("device.uuid")||"00000000-0000-4000-8000-000000000000"),f=s(a("server.authDomain")||"https://cs.example.com"),w=()=>{n("server.provider",i.value),n("server.kvToken",v.value),n("device.uuid",m.value),n("server.authDomain",f.value),location.reload()},b=()=>{try{sessionStorage.removeItem(I)}catch(u){console.debug(u)}},x=()=>{K.loadNamespaceInfo=async()=>{throw new Error("模拟加载错误")},location.reload()},E=c(()=>{try{return sessionStorage.getItem(I)}catch(u){return String(u)}}),L=c(()=>JSON.stringify({provider:a("server.provider"),kvToken:a("server.kvToken"),uuid:a("device.uuid"),authDomain:a("server.authDomain")},null,2));return(u,l)=>{const V=R("v-list-item-content");return U(),N(F,null,{default:t(()=>[e(z,null,{default:t(()=>[e(y,{cols:"12",md:"6"},{default:t(()=>[e(k,null,{default:t(()=>[e(g,null,{default:t(()=>[...l[4]||(l[4]=[o("KvInitialize 调试面板",-1)])]),_:1}),e(_,null,{default:t(()=>[e(A,null,{default:t(()=>[e(d,{modelValue:i.value,"onUpdate:modelValue":l[0]||(l[0]=r=>i.value=r),label:"server.provider (kv-server/classworkscloud/other)"},null,8,["modelValue"]),e(d,{modelValue:v.value,"onUpdate:modelValue":l[1]||(l[1]=r=>v.value=r),label:"server.kvToken (空表示未授权)"},null,8,["modelValue"]),e(d,{modelValue:m.value,"onUpdate:modelValue":l[2]||(l[2]=r=>m.value=r),label:"device.uuid"},null,8,["modelValue"]),e(d,{modelValue:f.value,"onUpdate:modelValue":l[3]||(l[3]=r=>f.value=r),label:"server.authDomain"},null,8,["modelValue"])]),_:1}),e(B,{class:"my-4"}),e(p,{class:"me-2",color:"primary",onClick:w},{default:t(()=>[...l[5]||(l[5]=[o(" 应用设置 ",-1)])]),_:1}),e(p,{class:"me-2",color:"secondary",onClick:b},{default:t(()=>[...l[6]||(l[6]=[o(" 清除重定向守卫 ",-1)])]),_:1}),e(p,{color:"error",onClick:x},{default:t(()=>[...l[7]||(l[7]=[o(" 模拟命名空间加载错误 ",-1)])]),_:1}),e(G,{"two-line":""},{default:t(()=>[e(C,null,{default:t(()=>[e(V,null,{default:t(()=>[e(T,null,{default:t(()=>[...l[8]||(l[8]=[o("当前 sessionGuard",-1)])]),_:1}),e(D,null,{default:t(()=>[o(S(E.value),1)]),_:1})]),_:1})]),_:1}),e(C,null,{default:t(()=>[e(V,null,{default:t(()=>[e(T,null,{default:t(()=>[...l[9]||(l[9]=[o("当前 settings",-1)])]),_:1}),e(D,null,{default:t(()=>[o(S(L.value),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(y,{cols:"12",md:"6"},{default:t(()=>[e(k,null,{default:t(()=>[e(g,null,{default:t(()=>[...l[10]||(l[10]=[o("初始化组件已替换",-1)])]),_:1}),e(_,null,{default:t(()=>[...l[11]||(l[11]=[o(" 已迁移为首页内联的 InitServiceChooser 组件。 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}}};export{M as default}; diff --git a/assets/debug-socket-sq4UK_d2.js b/assets/debug-socket-DzG1kWef.js similarity index 94% rename from assets/debug-socket-sq4UK_d2.js rename to assets/debug-socket-DzG1kWef.js index 0465902..b57ec01 100644 --- a/assets/debug-socket-sq4UK_d2.js +++ b/assets/debug-socket-DzG1kWef.js @@ -1 +1 @@ -import{a2 as i,k as te,Z as le,$ as ne,r as ae,o as d,j as S,w as l,c as t,l as b,q as w,v as o,z as j,P as A,Q as f,a0 as v,a1 as m,A as u,C as L,D as oe,K,y as c,i as D,x as M,F as J,G as O,L as se,a3 as U}from"./index-BUM0TY0E.js";import{g as z,b as R,j as q,o as p,c as re,l as ue}from"./socketClient-BEFY8Nxz.js";import{s as ie,D as de}from"./deviceEvents-Dj8WEgqu.js";import{V as B,a as _}from"./VRow-CPw1R1BU.js";import{V as ce}from"./VChip-vdRDApTi.js";import{V as fe}from"./VTextField-C579e7l1.js";import{V as ve}from"./VTextarea-jqnFSwaH.js";import{V as me}from"./VContainer-DakLDC1m.js";import"./serverRotation-CjK7Y7P9.js";const pe={key:0},_e={class:"d-flex"},ge={key:1,class:"text-grey"},ke={class:"text-caption text-grey"},ye={class:"ml-2"},Ve={class:"mb-2",style:{"white-space":"pre-wrap"}},$e={__name:"debug-socket",setup(Ce){const g=i(te("server.kvToken")||""),$=i(""),r=i(""),k=i(!1),T=i(""),y=i([]),x=i([]),V=i(""),I=U(()=>re()),G=U(()=>{const n=new Date,e=n.getFullYear(),C=String(n.getMonth()+1).padStart(2,"0"),s=String(n.getDate()).padStart(2,"0");return`classworks-data-${e}${C}${s}`});function a(n,e){const C=new Date().toLocaleTimeString();y.value.unshift({time:C,event:n,payload:typeof e=="string"?e:JSON.stringify(e,null,2)}),y.value.length>200&&y.value.pop()}function H(){const n=z();k.value=!!n.connected,T.value=n.id||"",n.on("connect",()=>{k.value=!0,T.value=n.id||"",a("connect",{id:n.id}),r.value&&q(r.value)}),n.on("disconnect",e=>{k.value=!1,a("disconnect",{reason:e})}),n.on("connect_error",e=>a("connect_error",{message:e==null?void 0:e.message})),n.on("reconnect_attempt",e=>a("reconnect_attempt",{attempt:e})),n.on("reconnect",e=>a("reconnect",{attempt:e}))}function P(){p("kv-key-changed",n=>{a("kv-key-changed",n)}),p("device-joined",n=>{a("device-joined",n)}),p("joined",n=>{a("joined",n)}),p("join-error",n=>{a("join-error",n)}),p("chat:message",n=>{a("chat:message",n)}),p("device-event",n=>{a("device-event",n)})}function N(n){try{if(!n){a("join-error","Token 为空");return}q(n),r.value=n,a("join-token",{token:n})}catch(e){a("join-token-error",String(e))}}function Q(n){try{R(n),r.value===n&&(r.value=""),a("leave-token",{token:n})}catch(e){a("leave-token-error",String(e))}}function Y(){try{ue(),r.value="",a("leave-all",{})}catch(n){a("leave-all-error",String(n))}}function Z(){try{z().connect()}catch(n){a("reconnect-error",String(n))}}const W=U(()=>{var e;return!!((((e=V.value)==null?void 0:e.trim())||"")&&(r.value||g.value))});function X(){try{const n=(V.value||"").trim();if(!n)return;ie(n),a("send-event",{type:de.CHAT,content:{text:n}}),V.value=""}catch(n){a("chat:error",String(n))}}function h(n){a("select-device",{message:"请输入该设备对应的 KV Token 以加入频道",device:n})}async function E(){try{const e=await(await fetch(`${I.value}/devices/online`)).json();x.value=Array.isArray(e==null?void 0:e.devices)?e.devices:[],a("fetch-online",{count:x.value.length})}catch(n){a("fetch-online-error",String(n))}}function ee(){y.value=[]}return le(()=>{z(),H(),P(),g.value&&N(g.value),E()}),ne(()=>{try{r.value&&R(r.value)}catch{}}),(n,e)=>{const C=ae("v-list-item-text");return d(),S(me,null,{default:l(()=>[t(B,null,{default:l(()=>[t(_,{cols:"12",md:"6"},{default:l(()=>[t(b,{border:"",class:"mb-4"},{default:l(()=>[t(w,null,{default:l(()=>[...e[4]||(e[4]=[o("连接信息",-1)])]),_:1}),t(j,null,{default:l(()=>[t(A,{density:"compact"},{default:l(()=>[t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[5]||(e[5]=[o("Server URL",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(I.value),1)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[6]||(e[6]=[o("当前 KV Token",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(g.value||"(未配置)"),1)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[7]||(e[7]=[o("连接状态",-1)])]),_:1}),t(m,null,{default:l(()=>[t(ce,{color:k.value?"success":"error",class:"mr-2",size:"small"},{default:l(()=>[o(u(k.value?"connected":"disconnected"),1)]),_:1},8,["color"]),T.value?(d(),L("span",pe,"id: "+u(T.value),1)):oe("",!0)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[8]||(e[8]=[o("已加入 Token",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(r.value||"-"),1)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[9]||(e[9]=[o("当前数据键",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(G.value),1)]),_:1})]),_:1})]),_:1}),t(K,{class:"my-4"}),t(B,null,{default:l(()=>[t(_,{cols:"12",md:"8"},{default:l(()=>[t(fe,{modelValue:$.value,"onUpdate:modelValue":e[0]||(e[0]=s=>$.value=s),clearable:"",label:"手动加入 Token (留空使用配置的 Token)"},null,8,["modelValue"])]),_:1}),t(_,{class:"d-flex align-center",cols:"12",md:"4"},{default:l(()=>[t(c,{class:"mr-2",color:"primary",onClick:e[1]||(e[1]=s=>N($.value||g.value))},{default:l(()=>[...e[10]||(e[10]=[o(" 加入 ",-1)])]),_:1}),t(c,{disabled:!r.value,class:"mr-2",color:"warning",onClick:e[2]||(e[2]=s=>Q(r.value))},{default:l(()=>[...e[11]||(e[11]=[o(" 离开当前 ",-1)])]),_:1},8,["disabled"]),t(c,{color:"error",variant:"tonal",onClick:Y},{default:l(()=>[...e[12]||(e[12]=[o(" 离开全部 ",-1)])]),_:1})]),_:1})]),_:1}),t(K,{class:"my-4"}),t(B,null,{default:l(()=>[t(_,{cols:"12"},{default:l(()=>[t(b,{border:"",color:"primary",variant:"tonal"},{default:l(()=>[t(w,{class:"text-subtitle-1"},{default:l(()=>[...e[13]||(e[13]=[o("聊天室消息",-1)])]),_:1}),t(j,null,{default:l(()=>[t(ve,{modelValue:V.value,"onUpdate:modelValue":e[3]||(e[3]=s=>V.value=s),"auto-grow":"",clearable:"",label:"发送到当前已加入的设备频道",rows:"2"},null,8,["modelValue"]),D("div",_e,[t(M),t(c,{disabled:!W.value,color:"primary",onClick:X},{default:l(()=>[...e[14]||(e[14]=[o(" 发送聊天 ",-1)])]),_:1},8,["disabled"])])]),_:1})]),_:1})]),_:1})]),_:1}),t(B,null,{default:l(()=>[t(_,{cols:"12"},{default:l(()=>[t(c,{color:"secondary",variant:"tonal",onClick:Z},{default:l(()=>[...e[15]||(e[15]=[o(" 重新连接 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),t(b,{border:""},{default:l(()=>[t(w,null,{default:l(()=>[...e[16]||(e[16]=[o("在线设备",-1)])]),_:1}),t(j,null,{default:l(()=>[t(c,{class:"mb-3",color:"primary",onClick:E},{default:l(()=>[...e[17]||(e[17]=[o(" 刷新在线列表 ",-1)])]),_:1}),x.value.length?(d(),S(A,{key:0,density:"compact"},{default:l(()=>[(d(!0),L(J,null,O(x.value,s=>(d(),S(f,{key:s.uuid},{prepend:l(()=>[t(se,{color:s.connections>0?"success":"grey",size:"24"},null,8,["color"])]),append:l(()=>[t(c,{size:"small",variant:"text",onClick:F=>h(s)},{default:l(()=>[...e[18]||(e[18]=[o(" 选择 ",-1)])]),_:1},8,["onClick"])]),default:l(()=>[t(v,null,{default:l(()=>[o(u(s.name||"(未命名)"),1)]),_:2},1024),t(m,null,{default:l(()=>[o(u(s.uuid)+" · 连接数 "+u(s.connections),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})):(d(),L("div",ge," 暂无数据 "))]),_:1})]),_:1})]),_:1}),t(_,{cols:"12",md:"6"},{default:l(()=>[t(b,{border:""},{default:l(()=>[t(w,{class:"d-flex align-center"},{default:l(()=>[e[20]||(e[20]=o(" 事件日志 ",-1)),t(M),t(c,{color:"error",size:"small",variant:"text",onClick:ee},{default:l(()=>[...e[19]||(e[19]=[o(" 清空 ",-1)])]),_:1})]),_:1}),t(j,null,{default:l(()=>[t(A,{density:"compact"},{default:l(()=>[(d(!0),L(J,null,O(y.value,(s,F)=>(d(),S(f,{key:F},{default:l(()=>[t(v,null,{default:l(()=>[D("span",ke,u(s.time),1),D("span",ye,u(s.event),1)]),_:2},1024),t(C,null,{default:l(()=>[D("pre",Ve,u(s.payload),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}}};export{$e as default}; +import{a2 as i,k as te,Z as le,$ as ne,r as ae,o as d,j as S,w as l,c as t,l as b,q as w,v as o,z as j,P as A,Q as f,a0 as v,a1 as m,A as u,C as L,D as oe,K,y as c,i as D,x as M,F as J,G as O,L as se,a3 as U}from"./index-BXl8SUNP.js";import{g as z,b as R,j as q,o as p,c as re,l as ue}from"./socketClient-BAypaVYV.js";import{s as ie,D as de}from"./deviceEvents-8tGBwa2U.js";import{V as B,a as _}from"./VRow-DFPdcq_b.js";import{V as ce}from"./VChip-jIQL7s_d.js";import{V as fe}from"./VTextField-DxxbesnN.js";import{V as ve}from"./VTextarea-B0_PT1is.js";import{V as me}from"./VContainer-Doz_PneH.js";import"./serverRotation-BBUKyTw9.js";const pe={key:0},_e={class:"d-flex"},ge={key:1,class:"text-grey"},ke={class:"text-caption text-grey"},ye={class:"ml-2"},Ve={class:"mb-2",style:{"white-space":"pre-wrap"}},$e={__name:"debug-socket",setup(Ce){const g=i(te("server.kvToken")||""),$=i(""),r=i(""),k=i(!1),T=i(""),y=i([]),x=i([]),V=i(""),I=U(()=>re()),G=U(()=>{const n=new Date,e=n.getFullYear(),C=String(n.getMonth()+1).padStart(2,"0"),s=String(n.getDate()).padStart(2,"0");return`classworks-data-${e}${C}${s}`});function a(n,e){const C=new Date().toLocaleTimeString();y.value.unshift({time:C,event:n,payload:typeof e=="string"?e:JSON.stringify(e,null,2)}),y.value.length>200&&y.value.pop()}function H(){const n=z();k.value=!!n.connected,T.value=n.id||"",n.on("connect",()=>{k.value=!0,T.value=n.id||"",a("connect",{id:n.id}),r.value&&q(r.value)}),n.on("disconnect",e=>{k.value=!1,a("disconnect",{reason:e})}),n.on("connect_error",e=>a("connect_error",{message:e==null?void 0:e.message})),n.on("reconnect_attempt",e=>a("reconnect_attempt",{attempt:e})),n.on("reconnect",e=>a("reconnect",{attempt:e}))}function P(){p("kv-key-changed",n=>{a("kv-key-changed",n)}),p("device-joined",n=>{a("device-joined",n)}),p("joined",n=>{a("joined",n)}),p("join-error",n=>{a("join-error",n)}),p("chat:message",n=>{a("chat:message",n)}),p("device-event",n=>{a("device-event",n)})}function N(n){try{if(!n){a("join-error","Token 为空");return}q(n),r.value=n,a("join-token",{token:n})}catch(e){a("join-token-error",String(e))}}function Q(n){try{R(n),r.value===n&&(r.value=""),a("leave-token",{token:n})}catch(e){a("leave-token-error",String(e))}}function Y(){try{ue(),r.value="",a("leave-all",{})}catch(n){a("leave-all-error",String(n))}}function Z(){try{z().connect()}catch(n){a("reconnect-error",String(n))}}const W=U(()=>{var e;return!!((((e=V.value)==null?void 0:e.trim())||"")&&(r.value||g.value))});function X(){try{const n=(V.value||"").trim();if(!n)return;ie(n),a("send-event",{type:de.CHAT,content:{text:n}}),V.value=""}catch(n){a("chat:error",String(n))}}function h(n){a("select-device",{message:"请输入该设备对应的 KV Token 以加入频道",device:n})}async function E(){try{const e=await(await fetch(`${I.value}/devices/online`)).json();x.value=Array.isArray(e==null?void 0:e.devices)?e.devices:[],a("fetch-online",{count:x.value.length})}catch(n){a("fetch-online-error",String(n))}}function ee(){y.value=[]}return le(()=>{z(),H(),P(),g.value&&N(g.value),E()}),ne(()=>{try{r.value&&R(r.value)}catch{}}),(n,e)=>{const C=ae("v-list-item-text");return d(),S(me,null,{default:l(()=>[t(B,null,{default:l(()=>[t(_,{cols:"12",md:"6"},{default:l(()=>[t(b,{border:"",class:"mb-4"},{default:l(()=>[t(w,null,{default:l(()=>[...e[4]||(e[4]=[o("连接信息",-1)])]),_:1}),t(j,null,{default:l(()=>[t(A,{density:"compact"},{default:l(()=>[t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[5]||(e[5]=[o("Server URL",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(I.value),1)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[6]||(e[6]=[o("当前 KV Token",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(g.value||"(未配置)"),1)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[7]||(e[7]=[o("连接状态",-1)])]),_:1}),t(m,null,{default:l(()=>[t(ce,{color:k.value?"success":"error",class:"mr-2",size:"small"},{default:l(()=>[o(u(k.value?"connected":"disconnected"),1)]),_:1},8,["color"]),T.value?(d(),L("span",pe,"id: "+u(T.value),1)):oe("",!0)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[8]||(e[8]=[o("已加入 Token",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(r.value||"-"),1)]),_:1})]),_:1}),t(f,null,{default:l(()=>[t(v,null,{default:l(()=>[...e[9]||(e[9]=[o("当前数据键",-1)])]),_:1}),t(m,null,{default:l(()=>[o(u(G.value),1)]),_:1})]),_:1})]),_:1}),t(K,{class:"my-4"}),t(B,null,{default:l(()=>[t(_,{cols:"12",md:"8"},{default:l(()=>[t(fe,{modelValue:$.value,"onUpdate:modelValue":e[0]||(e[0]=s=>$.value=s),clearable:"",label:"手动加入 Token (留空使用配置的 Token)"},null,8,["modelValue"])]),_:1}),t(_,{class:"d-flex align-center",cols:"12",md:"4"},{default:l(()=>[t(c,{class:"mr-2",color:"primary",onClick:e[1]||(e[1]=s=>N($.value||g.value))},{default:l(()=>[...e[10]||(e[10]=[o(" 加入 ",-1)])]),_:1}),t(c,{disabled:!r.value,class:"mr-2",color:"warning",onClick:e[2]||(e[2]=s=>Q(r.value))},{default:l(()=>[...e[11]||(e[11]=[o(" 离开当前 ",-1)])]),_:1},8,["disabled"]),t(c,{color:"error",variant:"tonal",onClick:Y},{default:l(()=>[...e[12]||(e[12]=[o(" 离开全部 ",-1)])]),_:1})]),_:1})]),_:1}),t(K,{class:"my-4"}),t(B,null,{default:l(()=>[t(_,{cols:"12"},{default:l(()=>[t(b,{border:"",color:"primary",variant:"tonal"},{default:l(()=>[t(w,{class:"text-subtitle-1"},{default:l(()=>[...e[13]||(e[13]=[o("聊天室消息",-1)])]),_:1}),t(j,null,{default:l(()=>[t(ve,{modelValue:V.value,"onUpdate:modelValue":e[3]||(e[3]=s=>V.value=s),"auto-grow":"",clearable:"",label:"发送到当前已加入的设备频道",rows:"2"},null,8,["modelValue"]),D("div",_e,[t(M),t(c,{disabled:!W.value,color:"primary",onClick:X},{default:l(()=>[...e[14]||(e[14]=[o(" 发送聊天 ",-1)])]),_:1},8,["disabled"])])]),_:1})]),_:1})]),_:1})]),_:1}),t(B,null,{default:l(()=>[t(_,{cols:"12"},{default:l(()=>[t(c,{color:"secondary",variant:"tonal",onClick:Z},{default:l(()=>[...e[15]||(e[15]=[o(" 重新连接 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),t(b,{border:""},{default:l(()=>[t(w,null,{default:l(()=>[...e[16]||(e[16]=[o("在线设备",-1)])]),_:1}),t(j,null,{default:l(()=>[t(c,{class:"mb-3",color:"primary",onClick:E},{default:l(()=>[...e[17]||(e[17]=[o(" 刷新在线列表 ",-1)])]),_:1}),x.value.length?(d(),S(A,{key:0,density:"compact"},{default:l(()=>[(d(!0),L(J,null,O(x.value,s=>(d(),S(f,{key:s.uuid},{prepend:l(()=>[t(se,{color:s.connections>0?"success":"grey",size:"24"},null,8,["color"])]),append:l(()=>[t(c,{size:"small",variant:"text",onClick:F=>h(s)},{default:l(()=>[...e[18]||(e[18]=[o(" 选择 ",-1)])]),_:1},8,["onClick"])]),default:l(()=>[t(v,null,{default:l(()=>[o(u(s.name||"(未命名)"),1)]),_:2},1024),t(m,null,{default:l(()=>[o(u(s.uuid)+" · 连接数 "+u(s.connections),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})):(d(),L("div",ge," 暂无数据 "))]),_:1})]),_:1})]),_:1}),t(_,{cols:"12",md:"6"},{default:l(()=>[t(b,{border:""},{default:l(()=>[t(w,{class:"d-flex align-center"},{default:l(()=>[e[20]||(e[20]=o(" 事件日志 ",-1)),t(M),t(c,{color:"error",size:"small",variant:"text",onClick:ee},{default:l(()=>[...e[19]||(e[19]=[o(" 清空 ",-1)])]),_:1})]),_:1}),t(j,null,{default:l(()=>[t(A,{density:"compact"},{default:l(()=>[(d(!0),L(J,null,O(y.value,(s,F)=>(d(),S(f,{key:F},{default:l(()=>[t(v,null,{default:l(()=>[D("span",ke,u(s.time),1),D("span",ye,u(s.event),1)]),_:2},1024),t(C,null,{default:l(()=>[D("pre",Ve,u(s.payload),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}}};export{$e as default}; diff --git a/assets/default-BdaTlbaW.js b/assets/default-hOQ1mU83.js similarity index 92% rename from assets/default-BdaTlbaW.js rename to assets/default-hOQ1mU83.js index 936873b..4b938ee 100644 --- a/assets/default-BdaTlbaW.js +++ b/assets/default-hOQ1mU83.js @@ -1 +1 @@ -import{g as u,u as m,a as _,b as d,c as n,n as p,d as f,e as v,p as y,m as V,f as k,h as B,i as b,j as g,r as C,o as S,w as r,V as w}from"./index-BUM0TY0E.js";const M=y({scrollable:Boolean,...B(),...k(),...V({tag:"main"})},"VMain"),P=u()({name:"VMain",props:M(),setup(e,o){let{slots:a}=o;const{dimensionStyles:s}=v(e),{mainStyles:c}=m(),{ssrBootStyles:i}=_();return d(()=>n(e.tag,{class:f(["v-main",{"v-main--scrollable":e.scrollable},e.class]),style:p([c.value,i.value,s.value,e.style])},{default:()=>{var t,l;return[e.scrollable?b("div",{class:"v-main__scroller"},[(t=a.default)==null?void 0:t.call(a)]):(l=a.default)==null?void 0:l.call(a)]}})),{}}}),x={__name:"default",setup(e){return(o,a)=>{const s=C("router-view");return S(),g(w,null,{default:r(()=>[n(P,null,{default:r(()=>[n(s)]),_:1})]),_:1})}}};export{x as default}; +import{g as u,u as m,a as _,b as d,c as n,n as p,d as f,e as v,p as y,m as V,f as k,h as B,i as b,j as g,r as C,o as S,w as r,V as w}from"./index-BXl8SUNP.js";const M=y({scrollable:Boolean,...B(),...k(),...V({tag:"main"})},"VMain"),P=u()({name:"VMain",props:M(),setup(e,o){let{slots:a}=o;const{dimensionStyles:s}=v(e),{mainStyles:c}=m(),{ssrBootStyles:i}=_();return d(()=>n(e.tag,{class:f(["v-main",{"v-main--scrollable":e.scrollable},e.class]),style:p([c.value,i.value,s.value,e.style])},{default:()=>{var t,l;return[e.scrollable?b("div",{class:"v-main__scroller"},[(t=a.default)==null?void 0:t.call(a)]):(l=a.default)==null?void 0:l.call(a)]}})),{}}}),x={__name:"default",setup(e){return(o,a)=>{const s=C("router-view");return S(),g(w,null,{default:r(()=>[n(P,null,{default:r(()=>[n(s)]),_:1})]),_:1})}}};export{x as default}; diff --git a/assets/deviceEvents-Dj8WEgqu.js b/assets/deviceEvents-8tGBwa2U.js similarity index 97% rename from assets/deviceEvents-Dj8WEgqu.js rename to assets/deviceEvents-8tGBwa2U.js index 0b8db73..1dc04b2 100644 --- a/assets/deviceEvents-Dj8WEgqu.js +++ b/assets/deviceEvents-8tGBwa2U.js @@ -1 +1 @@ -import{s as E}from"./socketClient-BEFY8Nxz.js";const t={CHAT:"chat",KV_KEY_CHANGED:"kv-key-changed",URGENT_NOTICE:"urgent-notice",NOTIFICATION:"notification"};function m(e){if(!e||typeof e!="string")throw new Error("消息文本不能为空");E(t.CHAT,{text:e.trim()})}function I(e,n={}){if(!e||!e.type){console.warn("无效的设备事件数据:",e);return}const o=n[e.type];if(typeof o=="function")try{o(e)}catch(c){console.error(`处理设备事件 ${e.type} 时出错:`,c)}}function g(e){var n;if(e.type!==t.CHAT)throw new Error("不是聊天事件");return{text:((n=e.content)==null?void 0:n.text)||"",senderId:e.senderId,at:e.timestamp,uuid:e.uuid,senderInfo:e.senderInfo}}function T(e){var n,o,c,i,u,s;if(e.type!==t.KV_KEY_CHANGED)throw new Error("不是 KV 变化事件");return{uuid:e.uuid,key:(n=e.content)==null?void 0:n.key,action:(o=e.content)==null?void 0:o.action,created:(c=e.content)==null?void 0:c.created,updatedAt:(i=e.content)==null?void 0:i.updatedAt,deletedAt:(u=e.content)==null?void 0:u.deletedAt,batch:(s=e.content)==null?void 0:s.batch}}function p(e){var n,o,c,i;if(e.type!==t.URGENT_NOTICE)throw new Error("不是紧急通知事件");return{urgency:((n=e.content)==null?void 0:n.urgency)||"info",message:((o=e.content)==null?void 0:o.message)||"",targetDevices:((c=e.content)==null?void 0:c.targetDevices)||[],senderId:e.senderId,senderInfo:((i=e.content)==null?void 0:i.senderInfo)||e.senderInfo,timestamp:e.timestamp}}function y(e){var n,o,c,i;if(e.type!==t.NOTIFICATION)throw new Error("不是通知事件");return{message:((n=e.content)==null?void 0:n.message)||"",isUrgent:((o=e.content)==null?void 0:o.isUrgent)||!1,targetDevices:((c=e.content)==null?void 0:c.targetDevices)||[],senderId:e.senderId,senderInfo:((i=e.content)==null?void 0:i.senderInfo)||e.senderInfo,timestamp:e.timestamp,eventId:e.eventId}}function C(e){return e?e.deviceName==="realtime"?"实时同步":`${e.deviceName||"未知设备"} (${e.deviceType||"未知类型"})`:"未知设备"}function h(e={}){const{onChat:n,onKvChanged:o,onUrgentNotice:c,onNotification:i,onOtherEvent:u,enableLegacySupport:s=!0}=e;return d=>{I(d,{[t.CHAT]:r=>{if(n){const f=s?g(r):r;n(f,r)}},[t.KV_KEY_CHANGED]:r=>{if(o){const f=s?T(r):r;o(f,r)}},[t.URGENT_NOTICE]:r=>{if(c){const f=s?p(r):r;c(f,r)}},[t.NOTIFICATION]:r=>{if(i){const f=s?y(r):r;i(f,r)}}}),u&&d.type!==t.CHAT&&d.type!==t.KV_KEY_CHANGED&&d.type!==t.URGENT_NOTICE&&d.type!==t.NOTIFICATION&&u(d)}}export{t as D,h as c,C as f,m as s}; +import{s as E}from"./socketClient-BAypaVYV.js";const t={CHAT:"chat",KV_KEY_CHANGED:"kv-key-changed",URGENT_NOTICE:"urgent-notice",NOTIFICATION:"notification"};function m(e){if(!e||typeof e!="string")throw new Error("消息文本不能为空");E(t.CHAT,{text:e.trim()})}function I(e,n={}){if(!e||!e.type){console.warn("无效的设备事件数据:",e);return}const o=n[e.type];if(typeof o=="function")try{o(e)}catch(c){console.error(`处理设备事件 ${e.type} 时出错:`,c)}}function g(e){var n;if(e.type!==t.CHAT)throw new Error("不是聊天事件");return{text:((n=e.content)==null?void 0:n.text)||"",senderId:e.senderId,at:e.timestamp,uuid:e.uuid,senderInfo:e.senderInfo}}function T(e){var n,o,c,i,u,s;if(e.type!==t.KV_KEY_CHANGED)throw new Error("不是 KV 变化事件");return{uuid:e.uuid,key:(n=e.content)==null?void 0:n.key,action:(o=e.content)==null?void 0:o.action,created:(c=e.content)==null?void 0:c.created,updatedAt:(i=e.content)==null?void 0:i.updatedAt,deletedAt:(u=e.content)==null?void 0:u.deletedAt,batch:(s=e.content)==null?void 0:s.batch}}function p(e){var n,o,c,i;if(e.type!==t.URGENT_NOTICE)throw new Error("不是紧急通知事件");return{urgency:((n=e.content)==null?void 0:n.urgency)||"info",message:((o=e.content)==null?void 0:o.message)||"",targetDevices:((c=e.content)==null?void 0:c.targetDevices)||[],senderId:e.senderId,senderInfo:((i=e.content)==null?void 0:i.senderInfo)||e.senderInfo,timestamp:e.timestamp}}function y(e){var n,o,c,i;if(e.type!==t.NOTIFICATION)throw new Error("不是通知事件");return{message:((n=e.content)==null?void 0:n.message)||"",isUrgent:((o=e.content)==null?void 0:o.isUrgent)||!1,targetDevices:((c=e.content)==null?void 0:c.targetDevices)||[],senderId:e.senderId,senderInfo:((i=e.content)==null?void 0:i.senderInfo)||e.senderInfo,timestamp:e.timestamp,eventId:e.eventId}}function C(e){return e?e.deviceName==="realtime"?"实时同步":`${e.deviceName||"未知设备"} (${e.deviceType||"未知类型"})`:"未知设备"}function h(e={}){const{onChat:n,onKvChanged:o,onUrgentNotice:c,onNotification:i,onOtherEvent:u,enableLegacySupport:s=!0}=e;return d=>{I(d,{[t.CHAT]:r=>{if(n){const f=s?g(r):r;n(f,r)}},[t.KV_KEY_CHANGED]:r=>{if(o){const f=s?T(r):r;o(f,r)}},[t.URGENT_NOTICE]:r=>{if(c){const f=s?p(r):r;c(f,r)}},[t.NOTIFICATION]:r=>{if(i){const f=s?y(r):r;i(f,r)}}}),u&&d.type!==t.CHAT&&d.type!==t.KV_KEY_CHANGED&&d.type!==t.URGENT_NOTICE&&d.type!==t.NOTIFICATION&&u(d)}}export{t as D,h as c,C as f,m as s}; diff --git a/assets/examschedule-DlYuJdDl.js b/assets/examschedule-BBjKpA2N.js similarity index 97% rename from assets/examschedule-DlYuJdDl.js rename to assets/examschedule-BBjKpA2N.js index 7300c89..114feb9 100644 --- a/assets/examschedule-DlYuJdDl.js +++ b/assets/examschedule-BBjKpA2N.js @@ -1,4 +1,4 @@ -import{_ as A}from"./ExamConfigEditor-BzFaHh6i.js";import{d as C}from"./dataProvider-MQ8YacC2.js";import{_ as z,o as p,j as h,w as i,c as s,l as y,q as V,t as g,v as l,Y as J,z as v,i as f,A as x,D,y as u,P as R,C as F,F as O,G as H,Q as L,a0 as U,a1 as j,L as B,H as S,N as X,M as T,x as k,k as P}from"./index-BUM0TY0E.js";import{V as W,a as q}from"./VRow-CPw1R1BU.js";import{V as N}from"./VAlert-DFIvt6kt.js";import{V as M}from"./VChip-vdRDApTi.js";import{V as G}from"./VSkeletonLoader-DX2FpkIS.js";import{V as Y}from"./VTextField-C579e7l1.js";import{V as K}from"./VTextarea-jqnFSwaH.js";import{V as Q}from"./VContainer-DakLDC1m.js";import"./VTooltip-COe_nB02.js";import"./VSwitch-CjVC2rsZ.js";import"./filter-ByuXXWRY.js";import"./VCheckboxBtn-CylQNaxd.js";import"./VSheet-CuIjBtz7.js";import"./serverRotation-CjK7Y7P9.js";const Z={name:"ExamScheduleManager",components:{ExamConfigEditor:A},data(){return{configs:[],loading:!1,error:"",success:"",renameDialog:!1,editDialog:!1,configToRename:null,editingConfig:null,newConfigName:"",renaming:!1,saving:!1,importDialog:!1,importJson:"",importError:"",importing:!1,datePickerDialog:!1,baseDate:"",virtualDateInfo:null,pendingImportConfig:null,aiDialog:!1,copied:!1}},async mounted(){await this.loadConfigs()},computed:{aiPrompt(){const a=new Date;return`Your task is to generate a JSON configuration file for an exam dashboard. Based on the exam information input by the user, generate the configuration strictly following these rules. +import{_ as A}from"./ExamConfigEditor-D-fBjxzF.js";import{d as C}from"./dataProvider-Cg4CSn_f.js";import{_ as z,o as p,j as h,w as i,c as s,l as y,q as V,t as g,v as l,Y as J,z as v,i as f,A as x,D,y as u,P as R,C as F,F as O,G as H,Q as L,a0 as U,a1 as j,L as B,H as S,N as X,M as T,x as k,k as P}from"./index-BXl8SUNP.js";import{V as W,a as q}from"./VRow-DFPdcq_b.js";import{V as N}from"./VAlert-DncbAu3E.js";import{V as M}from"./VChip-jIQL7s_d.js";import{V as G}from"./VSkeletonLoader-DKLQDg5n.js";import{V as Y}from"./VTextField-DxxbesnN.js";import{V as K}from"./VTextarea-B0_PT1is.js";import{V as Q}from"./VContainer-Doz_PneH.js";import"./VTooltip-CyZjDjKS.js";import"./VSwitch-7fkmr9E6.js";import"./filter-BHXElGQ1.js";import"./VCheckboxBtn-iC2wkMdx.js";import"./VSheet-CWiuVQYN.js";import"./serverRotation-BBUKyTw9.js";const Z={name:"ExamScheduleManager",components:{ExamConfigEditor:A},data(){return{configs:[],loading:!1,error:"",success:"",renameDialog:!1,editDialog:!1,configToRename:null,editingConfig:null,newConfigName:"",renaming:!1,saving:!1,importDialog:!1,importJson:"",importError:"",importing:!1,datePickerDialog:!1,baseDate:"",virtualDateInfo:null,pendingImportConfig:null,aiDialog:!1,copied:!1}},async mounted(){await this.loadConfigs()},computed:{aiPrompt(){const a=new Date;return`Your task is to generate a JSON configuration file for an exam dashboard. Based on the exam information input by the user, generate the configuration strictly following these rules. Generation Requirements: * Output using JSON blocks in Markdown diff --git a/assets/filter-ByuXXWRY.js b/assets/filter-BHXElGQ1.js similarity index 98% rename from assets/filter-ByuXXWRY.js rename to assets/filter-BHXElGQ1.js index 3a42d44..1b843d1 100644 --- a/assets/filter-ByuXXWRY.js +++ b/assets/filter-BHXElGQ1.js @@ -1 +1 @@ -import{f as Je,j as Ge,e as qe,V as Te,g as et}from"./VTextField-C579e7l1.js";import{g as me,ar as Ve,aH as tt,b7 as lt,bm as Be,bO as nt,cj as Fe,$ as at,ck as ot,ae as Y,b as he,an as De,c as x,aW as Ke,E as _,au as _e,cl as ut,cm as rt,a3 as H,av as ie,a2 as ee,az as U,p as Q,aA as He,bn as st,cn as ze,co as ye,bT as it,cp as ct,cd as Ue,i as C,F as ne,h as $e,X as dt,b3 as Se,ba as Ne,bc as pe,bb as ft,c8 as je,aw as We,aS as Xe,bY as vt,by as mt,Z as ht,ca as gt,aJ as fe,n as yt,d as ve,e as pt,f as bt,c6 as wt,aq as kt,aR as Vt,as as Pe,aY as be,t as Me,P as St,Q as Re,cq as Pt,K as It,aU as Ct,L as At,aV as xt,v as Tt,aX as Ee,aZ as Oe,bi as Ft,a_ as Dt,cr as Mt,ah as se}from"./index-BUM0TY0E.js";import{V as Rt}from"./VCheckboxBtn-CylQNaxd.js";import{V as Le}from"./VChip-vdRDApTi.js";const Et=Q({id:String,submenu:Boolean,...He(st({captureFocus:!0,closeDelay:250,closeOnContentClick:!0,locationStrategy:"connected",location:void 0,openDelay:300,scrim:!1,scrollStrategy:"reposition",transition:{component:ze}}),["absolute"])},"VMenu"),Ot=me()({name:"VMenu",props:Et(),emits:{"update:modelValue":e=>!0},setup(e,a){let{slots:t}=a;const n=Ve(e,"modelValue"),{scopeId:u}=tt(),{isRtl:f}=lt(),m=Be(),r=ie(()=>e.id||`v-menu-${m}`),s=ee(),c=nt(Fe,null),i=U(new Set);it(Fe,{register(){i.value.add(m)},unregister(){i.value.delete(m)},closeParents(o){setTimeout(()=>{var d;!i.value.size&&!e.persistent&&(o==null||(d=s.value)!=null&&d.contentEl&&!ct(o,s.value.contentEl))&&(n.value=!1,c==null||c.closeParents())},40)}}),at(()=>c==null?void 0:c.unregister()),ot(()=>n.value=!1),Y(n,o=>{o?c==null||c.register():c==null||c.unregister()},{immediate:!0});function M(o){c==null||c.closeParents(o)}function V(o){var d,h,g,S,E;if(!e.disabled)if(o.key==="Tab"||o.key==="Enter"&&!e.closeOnContentClick){if(o.key==="Enter"&&(o.target instanceof HTMLTextAreaElement||o.target instanceof HTMLInputElement&&o.target.closest("form")))return;o.key==="Enter"&&o.preventDefault(),!ut(rt((d=s.value)==null?void 0:d.contentEl,!1),o.shiftKey?"prev":"next",Z=>Z.tabIndex>=0)&&!e.retainFocus&&(n.value=!1,(g=(h=s.value)==null?void 0:h.activatorEl)==null||g.focus())}else e.submenu&&o.key===(f.value?"ArrowRight":"ArrowLeft")&&(n.value=!1,(E=(S=s.value)==null?void 0:S.activatorEl)==null||E.focus())}function b(o){var h;if(e.disabled)return;const d=(h=s.value)==null?void 0:h.contentEl;d&&n.value?o.key==="ArrowDown"?(o.preventDefault(),o.stopImmediatePropagation(),ye(d,"next")):o.key==="ArrowUp"?(o.preventDefault(),o.stopImmediatePropagation(),ye(d,"prev")):e.submenu&&(o.key===(f.value?"ArrowRight":"ArrowLeft")?n.value=!1:o.key===(f.value?"ArrowLeft":"ArrowRight")&&(o.preventDefault(),ye(d,"first"))):(e.submenu?o.key===(f.value?"ArrowLeft":"ArrowRight"):["ArrowDown","ArrowUp"].includes(o.key))&&(n.value=!0,o.preventDefault(),setTimeout(()=>setTimeout(()=>b(o))))}const P=H(()=>_({"aria-haspopup":"menu","aria-expanded":String(n.value),"aria-controls":r.value,"aria-owns":r.value,onKeydown:b},e.activatorProps));return he(()=>{const o=De.filterProps(e);return x(De,_({ref:s,id:r.value,class:["v-menu",e.class],style:e.style},o,{modelValue:n.value,"onUpdate:modelValue":d=>n.value=d,absolute:!0,activatorProps:P.value,location:e.location??(e.submenu?"end":"bottom"),"onClick:outside":M,onKeydown:V},u),{activator:t.activator,default:function(){for(var d=arguments.length,h=new Array(d),g=0;g{var S;return[(S=t.default)==null?void 0:S.call(t,...h)]}})}})}),_e({id:r,ΨopenChildren:i},s)}}),Lt=Q({renderless:Boolean,...$e()},"VVirtualScrollItem"),Bt=me()({name:"VVirtualScrollItem",inheritAttrs:!1,props:Lt(),emits:{"update:height":e=>!0},setup(e,a){let{attrs:t,emit:n,slots:u}=a;const{resizeRef:f,contentRect:m}=Ue(void 0,"border");Y(()=>{var r;return(r=m.value)==null?void 0:r.height},r=>{r!=null&&n("update:height",r)}),he(()=>{var r,s;return e.renderless?C(ne,null,[(r=u.default)==null?void 0:r.call(u,{itemRef:f})]):C("div",_({ref:f,class:["v-virtual-scroll__item",e.class],style:e.style},t),[(s=u.default)==null?void 0:s.call(u)])})}}),Kt=-1,_t=1,we=100,Ht=Q({itemHeight:{type:[Number,String],default:null},itemKey:{type:[String,Array,Function],default:null},height:[Number,String]},"virtual");function zt(e,a){const t=dt(),n=U(0);Se(()=>{n.value=parseFloat(e.itemHeight||0)});const u=U(0),f=U(Math.ceil((parseInt(e.height)||t.height.value)/(n.value||16))||1),m=U(0),r=U(0),s=ee(),c=ee();let i=0;const{resizeRef:M,contentRect:V}=Ue();Se(()=>{M.value=s.value});const b=H(()=>{var v;return s.value===document.documentElement?t.height.value:((v=V.value)==null?void 0:v.height)||parseInt(e.height)||0}),P=H(()=>!!(s.value&&c.value&&b.value&&n.value));let o=Array.from({length:a.value.length}),d=Array.from({length:a.value.length});const h=U(0);let g=-1;function S(v){return o[v]||n.value}const E=ft(()=>{const v=performance.now();d[0]=0;const w=a.value.length;for(let T=1;T<=w;T++)d[T]=(d[T-1]||0)+S(T-1);h.value=Math.max(h.value,performance.now()-v)},h),R=Y(P,v=>{v&&(R(),i=c.value.offsetTop,E.immediate(),$(),~g&&We(()=>{Xe&&window.requestAnimationFrame(()=>{re(g),g=-1})}))});Ne(()=>{E.clear()});function Z(v,w){const T=o[v],O=n.value;n.value=O?Math.min(n.value,w):w,(T!==w||O!==n.value)&&(o[v]=w,E())}function B(v){v=pe(v,0,a.value.length);const w=Math.floor(v),T=v%1,O=w+1,G=d[w]||0,l=d[O]||G;return G+(l-G)*T}function I(v){return Ut(d,v)}let te=0,J=0,ae=0;Y(b,(v,w)=>{$(),v{J=0,$()})});let oe=-1;function N(){if(!s.value||!c.value)return;const v=s.value.scrollTop,w=performance.now();w-ae>500?(J=Math.sign(v-te),i=c.value.offsetTop):J=v-te,te=v,ae=w,window.clearTimeout(oe),oe=window.setTimeout(ce,500),$()}function ce(){!s.value||!c.value||(J=0,ae=0,window.clearTimeout(oe),$())}let ue=-1;function $(){cancelAnimationFrame(ue),ue=requestAnimationFrame(ge)}function ge(){if(!s.value||!b.value||!n.value)return;const v=te-i,w=Math.sign(J),T=Math.max(0,v-we),O=pe(I(T),0,a.value.length),G=v+b.value+we,l=pe(I(G)+1,O+1,a.value.length);if((w!==Kt||Of.value)){const y=B(u.value)-B(O),F=B(l)-B(f.value);Math.max(y,F)>we?(u.value=O,f.value=l):(O<=0&&(u.value=O),l>=a.value.length&&(f.value=l))}m.value=B(u.value),r.value=B(a.value.length)-B(f.value)}function re(v){const w=B(v);!s.value||v&&!w?g=v:s.value.scrollTop=w}const le=H(()=>a.value.slice(u.value,f.value).map((v,w)=>{const T=w+u.value;return{raw:v,index:T,key:je(v,e.itemKey,T)}}));return Y(a,()=>{o=Array.from({length:a.value.length}),d=Array.from({length:a.value.length}),E.immediate(),$()},{deep:1}),{calculateVisibleItems:$,containerRef:s,markerRef:c,computedItems:le,paddingTop:m,paddingBottom:r,scrollToIndex:re,handleScroll:N,handleScrollend:ce,handleItemResize:Z}}function Ut(e,a){let t=e.length-1,n=0,u=0,f=null,m=-1;if(e[t]>1,f=e[u],f>a)t=u-1;else if(f[]},renderless:Boolean,...Ht(),...$e(),...bt()},"VVirtualScroll"),Nt=me()({name:"VVirtualScroll",props:$t(),setup(e,a){let{slots:t}=a;const n=vt("VVirtualScroll"),{dimensionStyles:u}=pt(e),{calculateVisibleItems:f,containerRef:m,markerRef:r,handleScroll:s,handleScrollend:c,handleItemResize:i,scrollToIndex:M,paddingTop:V,paddingBottom:b,computedItems:P}=zt(e,ie(()=>e.items));return mt(()=>e.renderless,()=>{function o(){var g,S;const h=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1)?"addEventListener":"removeEventListener";m.value===document.documentElement?(document[h]("scroll",s,{passive:!0}),document[h]("scrollend",c)):((g=m.value)==null||g[h]("scroll",s,{passive:!0}),(S=m.value)==null||S[h]("scrollend",c))}ht(()=>{m.value=gt(n.vnode.el,!0),o(!0)}),Ne(o)}),he(()=>{const o=P.value.map(d=>x(Bt,{key:d.key,renderless:e.renderless,"onUpdate:height":h=>i(d.index,h)},{default:h=>{var g;return(g=t.default)==null?void 0:g.call(t,{item:d.raw,index:d.index,...h})}}));return e.renderless?C(ne,null,[C("div",{ref:r,class:"v-virtual-scroll__spacer",style:{paddingTop:fe(V.value)}},null),o,C("div",{class:"v-virtual-scroll__spacer",style:{paddingBottom:fe(b.value)}},null)]):C("div",{ref:m,class:ve(["v-virtual-scroll",e.class]),onScrollPassive:s,onScrollend:c,style:yt([u.value,e.style])},[C("div",{ref:r,class:"v-virtual-scroll__container",style:{paddingTop:fe(V.value),paddingBottom:fe(b.value)}},[o])])}),{calculateVisibleItems:f,scrollToIndex:M}}});function jt(e,a){const t=U(!1);let n;function u(r){cancelAnimationFrame(n),t.value=!0,n=requestAnimationFrame(()=>{n=requestAnimationFrame(()=>{t.value=!1})})}async function f(){await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>{if(t.value){const s=Y(t,()=>{s(),r()})}else r()})}async function m(r){var i,M;if(r.key==="Tab"&&((i=a.value)==null||i.focus()),!["PageDown","PageUp","Home","End"].includes(r.key))return;const s=(M=e.value)==null?void 0:M.$el;if(!s)return;(r.key==="Home"||r.key==="End")&&s.scrollTo({top:r.key==="Home"?0:s.scrollHeight,behavior:"smooth"}),await f();const c=s.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(r.key==="PageDown"||r.key==="Home"){const V=s.getBoundingClientRect().top;for(const b of c)if(b.getBoundingClientRect().top>=V){b.focus();break}}else{const V=s.getBoundingClientRect().bottom;for(const b of[...c].reverse())if(b.getBoundingClientRect().bottom<=V){b.focus();break}}}return{onScrollPassive:u,onKeydown:m}}const Wt=Q({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function Xt(e,a){const t=Be(),n=H(()=>`menu-${t}`),u=ie(()=>wt(a)),f=ie(()=>n.value);return{menuId:n,ariaExpanded:u,ariaControls:f}}const Yt=Q({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:Dt,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...Wt(),...Mt({itemChildren:!1})},"Select"),Qt=Q({...Yt(),...He(et({modelValue:null,role:"combobox"}),["validationValue","dirty"]),...Ft({transition:{component:ze}})},"VSelect"),ll=me()({name:"VSelect",props:Qt(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,a){let{slots:t}=a;const{t:n}=kt(),u=ee(),f=ee(),m=ee(),{items:r,transformIn:s,transformOut:c}=Vt(e),i=Ve(e,"modelValue",[],l=>s(l===null?[null]:Pe(l)),l=>{const y=c(l);return e.multiple?y:y[0]??null}),M=H(()=>typeof e.counterValue=="function"?e.counterValue(i.value):typeof e.counterValue=="number"?e.counterValue:i.value.length),V=Je(e),b=Ge(e),P=H(()=>i.value.map(l=>l.value)),o=U(!1),d=ie(()=>e.closableChips&&!V.isReadonly.value&&!V.isDisabled.value),{InputIcon:h}=qe(e);let g="",S=0,E;const R=H(()=>e.hideSelected?r.value.filter(l=>!i.value.some(y=>(e.valueComparator||be)(y,l))):r.value),Z=H(()=>e.hideNoData&&!R.value.length||V.isReadonly.value||V.isDisabled.value),B=Ve(e,"menu"),I=H({get:()=>B.value,set:l=>{var y;B.value&&!l&&((y=f.value)!=null&&y.ΨopenChildren.size)||l&&Z.value||(B.value=l)}}),{menuId:te,ariaExpanded:J,ariaControls:ae}=Xt(e,I),oe=H(()=>{var l;return{...e.menuProps,activatorProps:{...((l=e.menuProps)==null?void 0:l.activatorProps)||{},"aria-haspopup":"listbox"}}}),N=ee(),ce=jt(N,u);function ue(l){e.openOnClear&&(I.value=!0)}function $(){Z.value||(I.value=!I.value)}function ge(l){Ee(l)&&re(l)}function re(l){var z,q,A;if(!l.key||V.isReadonly.value)return;if(["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"," "].includes(l.key)&&(I.value=!0),["Escape","Tab"].includes(l.key)&&(I.value=!1),e.clearable&&l.key==="Backspace"){l.preventDefault(),i.value=[],ue();return}l.key==="Home"?(z=N.value)==null||z.focus("first"):l.key==="End"&&((q=N.value)==null||q.focus("last"));const y=1e3;if(!Ee(l))return;const F=performance.now();F-E>y&&(g="",S=0),g+=l.key.toLowerCase(),E=F;const j=R.value;function W(){let k=L();return k||g.at(-1)===g.at(-2)&&(g=g.slice(0,-1),S++,k=L(),k)||(S=0,k=L(),k)?k:(g=l.key.toLowerCase(),L())}function L(){for(let k=S;k1&&arguments[1]!==void 0?arguments[1]:!0;if(!l.props.disabled)if(e.multiple){const F=i.value.findIndex(W=>(e.valueComparator||be)(W.value,l.value)),j=y??!~F;if(~F){const W=j?[...i.value,l]:[...i.value];W.splice(F,1),i.value=W}else j&&(i.value=[...i.value,l])}else{const F=y!==!1;i.value=F?[l]:[],We(()=>{I.value=!1})}}function v(l){var y;(y=N.value)!=null&&y.$el.contains(l.relatedTarget)||(I.value=!1)}function w(){var l;e.eager&&((l=m.value)==null||l.calculateVisibleItems())}function T(){var l;o.value&&((l=u.value)==null||l.focus())}function O(l){o.value=!0}function G(l){if(l==null)i.value=[];else if(Oe(u.value,":autofill")||Oe(u.value,":-webkit-autofill")){const y=r.value.find(F=>F.title===l);y&&le(y)}else u.value&&(u.value.value="")}return Y(I,()=>{if(!e.hideSelected&&I.value&&i.value.length){const l=R.value.findIndex(y=>i.value.some(F=>(e.valueComparator||be)(F.value,y.value)));Xe&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{var y;l>=0&&((y=m.value)==null||y.scrollToIndex(l))})}}),Y(r,(l,y)=>{I.value||o.value&&e.hideNoData&&!y.length&&l.length&&(I.value=!0)}),he(()=>{const l=!!(e.chips||t.chip),y=!!(!e.hideNoData||R.value.length||t["prepend-item"]||t["append-item"]||t["no-data"]),F=i.value.length>0,j=Te.filterProps(e),W=F||!o.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return x(Te,_({ref:u},j,{modelValue:i.value.map(L=>L.props.title).join(", "),name:void 0,"onUpdate:modelValue":G,focused:o.value,"onUpdate:focused":L=>o.value=L,validationValue:i.externalValue,counterValue:M.value,dirty:F,class:["v-select",{"v-select--active-menu":I.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":i.value.length,"v-select--selection-slot":!!t.selection},e.class],style:e.style,inputmode:"none",placeholder:W,"onClick:clear":ue,"onMousedown:control":$,onBlur:v,onKeydown:re,"aria-expanded":J.value,"aria-controls":ae.value}),{...t,default:L=>{let{id:X}=L;return C(ne,null,[C("select",{hidden:!0,multiple:e.multiple,name:b.fieldName.value},[r.value.map(p=>C("option",{key:p.value,value:p.value,selected:P.value.includes(p.value)},null))]),x(Ot,_({id:te.value,ref:f,modelValue:I.value,"onUpdate:modelValue":p=>I.value=p,activator:"parent",contentClass:"v-select__content",disabled:Z.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:w,onAfterLeave:T},oe.value),{default:()=>[y&&x(St,_({ref:N,selected:P.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:p=>p.preventDefault(),onKeydown:ge,onFocusin:O,tabindex:"-1",selectable:!!R.value.length,"aria-live":"polite","aria-labelledby":`${X.value}-label`,"aria-multiselectable":e.multiple,color:e.itemColor??e.color},ce,e.listProps),{default:()=>{var p,K,z;return[(p=t["prepend-item"])==null?void 0:p.call(t),!R.value.length&&!e.hideNoData&&(((K=t["no-data"])==null?void 0:K.call(t))??x(Re,{key:"no-data",title:n(e.noDataText)},null)),x(Nt,{ref:m,renderless:!0,items:R.value,itemKey:"value"},{default:q=>{var Ce,Ae,xe;let{item:A,index:k,itemRef:D}=q;const de=Pt(A.props),Ie=_(A.props,{ref:D,key:A.value,onClick:()=>le(A,null),"aria-posinset":k+1,"aria-setsize":R.value.length});return A.type==="divider"?((Ce=t.divider)==null?void 0:Ce.call(t,{props:A.raw,index:k}))??x(It,_(A.props,{key:`divider-${k}`}),null):A.type==="subheader"?((Ae=t.subheader)==null?void 0:Ae.call(t,{props:A.raw,index:k}))??x(Ct,_(A.props,{key:`subheader-${k}`}),null):((xe=t.item)==null?void 0:xe.call(t,{item:A,index:k,props:Ie}))??x(Re,_(Ie,{role:"option"}),{prepend:Ye=>{let{isSelected:Qe}=Ye;return C(ne,null,[e.multiple&&!e.hideSelected?x(Rt,{key:A.value,modelValue:Qe,ripple:!1,tabindex:"-1","aria-hidden":!0,onClick:Ze=>Ze.preventDefault()},null):void 0,de.prependAvatar&&x(At,{image:de.prependAvatar},null),de.prependIcon&&x(Me,{icon:de.prependIcon},null)])}})}}),(z=t["append-item"])==null?void 0:z.call(t)]}})]}),i.value.map((p,K)=>{function z(D){D.stopPropagation(),D.preventDefault(),le(p,!1)}const q=_(Le.filterProps(p.props),{"onClick:close":z,onKeydown(D){D.key!=="Enter"&&D.key!==" "||(D.preventDefault(),D.stopPropagation(),z(D))},onMousedown(D){D.preventDefault(),D.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),A=l?!!t.chip:!!t.selection,k=A?xt(l?t.chip({item:p,index:K,props:q}):t.selection({item:p,index:K})):void 0;if(!(A&&!k))return C("div",{key:p.value,class:"v-select__selection"},[l?t.chip?x(Ke,{key:"chip-defaults",defaults:{VChip:{closable:d.value,size:"small",text:p.title}}},{default:()=>[k]}):x(Le,_({key:"chip",closable:d.value,size:"small",text:p.title,disabled:p.props.disabled},q),null):k??C("span",{class:"v-select__selection-text"},[p.title,e.multiple&&K{if(e==null||a==null)return-1;if(!a.length)return 0;e=e.toString().toLocaleLowerCase(),a=a.toString().toLocaleLowerCase();const n=[];let u=e.indexOf(a);for(;~u;)n.push([u,u+a.length]),u=e.indexOf(a,u+a.length);return n.length?n:-1};function ke(e,a){if(!(e==null||typeof e=="boolean"||e===-1))return typeof e=="number"?[[e,e+a.length]]:Array.isArray(e[0])?e:[e]}const nl=Q({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Jt(e,a,t){var s;const n=[],u=(t==null?void 0:t.default)??Zt,f=t!=null&&t.filterKeys?Pe(t.filterKeys):!1,m=Object.keys((t==null?void 0:t.customKeyFilter)??{}).length;if(!(e!=null&&e.length))return n;let r=null;e:for(let c=0;c0)&&!(t!=null&&t.noFilter)){let o=!1;if(typeof i=="object"){if(i.type==="divider"||i.type==="subheader"){(r==null?void 0:r.type)==="divider"&&i.type==="subheader"&&n.push(r),r={index:c,matches:{},type:i.type};continue}const g=f||Object.keys(M);o=g.length===m;for(const S of g){const E=je(M,S),R=(s=t==null?void 0:t.customKeyFilter)==null?void 0:s[S];if(P=R?R(E,a,i):u(E,a,i),P!==-1&&P!==!1)R?V[S]=ke(P,a):b[S]=ke(P,a);else if((t==null?void 0:t.filterMode)==="every")continue e}}else P=u(i,a,i),P!==-1&&P!==!1&&(b.title=ke(P,a));const d=Object.keys(b).length,h=Object.keys(V).length;if(!d&&!h||(t==null?void 0:t.filterMode)==="union"&&h!==m&&!d||(t==null?void 0:t.filterMode)==="intersection"&&(h!==m||!d&&m>0&&!o))continue}r&&(n.push(r),r=null),n.push({index:c,matches:{...b,...V}})}return n}function al(e,a,t,n){const u=U([]),f=U(new Map),m=H(()=>n!=null&&n.transform?se(a).map(s=>[s,n.transform(s)]):se(a));Se(()=>{const s=typeof t=="function"?t():se(t),c=typeof s!="string"&&typeof s!="number"?"":String(s),i=Jt(m.value,c,{customKeyFilter:{...e.customKeyFilter,...se(n==null?void 0:n.customKeyFilter)},default:e.customFilter,filterKeys:e.filterKeys,filterMode:e.filterMode,noFilter:e.noFilter}),M=se(a),V=[],b=new Map;i.forEach(P=>{let{index:o,matches:d}=P;const h=M[o];V.push(h),b.set(h.value,d)}),u.value=V,f.value=b});function r(s){return f.value.get(s.value)}return{filteredItems:u,filteredMatches:f,getMatches:r}}function ol(e,a,t){return t==null||!t.length?a:t.map((n,u)=>{const f=u===0?0:t[u-1][1],m=[C("span",{class:ve(`${e}__unmask`)},[a.slice(f,n[0])]),C("span",{class:ve(`${e}__mask`)},[a.slice(n[0],n[1])])];return u===t.length-1&&m.push(C("span",{class:ve(`${e}__unmask`)},[a.slice(n[1])])),C(ne,null,[m])})}export{Ot as V,Xt as a,Nt as b,jt as c,nl as d,ll as e,ol as h,Yt as m,al as u}; +import{f as Je,j as Ge,e as qe,V as Te,g as et}from"./VTextField-DxxbesnN.js";import{g as me,ar as Ve,aH as tt,b7 as lt,bm as Be,bO as nt,cj as Fe,$ as at,ck as ot,ae as Y,b as he,an as De,c as x,aW as Ke,E as _,au as _e,cl as ut,cm as rt,a3 as H,av as ie,a2 as ee,az as U,p as Q,aA as He,bn as st,cn as ze,co as ye,bT as it,cp as ct,cd as Ue,i as C,F as ne,h as $e,X as dt,b3 as Se,ba as Ne,bc as pe,bb as ft,c8 as je,aw as We,aS as Xe,bY as vt,by as mt,Z as ht,ca as gt,aJ as fe,n as yt,d as ve,e as pt,f as bt,c6 as wt,aq as kt,aR as Vt,as as Pe,aY as be,t as Me,P as St,Q as Re,cq as Pt,K as It,aU as Ct,L as At,aV as xt,v as Tt,aX as Ee,aZ as Oe,bi as Ft,a_ as Dt,cr as Mt,ah as se}from"./index-BXl8SUNP.js";import{V as Rt}from"./VCheckboxBtn-iC2wkMdx.js";import{V as Le}from"./VChip-jIQL7s_d.js";const Et=Q({id:String,submenu:Boolean,...He(st({captureFocus:!0,closeDelay:250,closeOnContentClick:!0,locationStrategy:"connected",location:void 0,openDelay:300,scrim:!1,scrollStrategy:"reposition",transition:{component:ze}}),["absolute"])},"VMenu"),Ot=me()({name:"VMenu",props:Et(),emits:{"update:modelValue":e=>!0},setup(e,a){let{slots:t}=a;const n=Ve(e,"modelValue"),{scopeId:u}=tt(),{isRtl:f}=lt(),m=Be(),r=ie(()=>e.id||`v-menu-${m}`),s=ee(),c=nt(Fe,null),i=U(new Set);it(Fe,{register(){i.value.add(m)},unregister(){i.value.delete(m)},closeParents(o){setTimeout(()=>{var d;!i.value.size&&!e.persistent&&(o==null||(d=s.value)!=null&&d.contentEl&&!ct(o,s.value.contentEl))&&(n.value=!1,c==null||c.closeParents())},40)}}),at(()=>c==null?void 0:c.unregister()),ot(()=>n.value=!1),Y(n,o=>{o?c==null||c.register():c==null||c.unregister()},{immediate:!0});function M(o){c==null||c.closeParents(o)}function V(o){var d,h,g,S,E;if(!e.disabled)if(o.key==="Tab"||o.key==="Enter"&&!e.closeOnContentClick){if(o.key==="Enter"&&(o.target instanceof HTMLTextAreaElement||o.target instanceof HTMLInputElement&&o.target.closest("form")))return;o.key==="Enter"&&o.preventDefault(),!ut(rt((d=s.value)==null?void 0:d.contentEl,!1),o.shiftKey?"prev":"next",Z=>Z.tabIndex>=0)&&!e.retainFocus&&(n.value=!1,(g=(h=s.value)==null?void 0:h.activatorEl)==null||g.focus())}else e.submenu&&o.key===(f.value?"ArrowRight":"ArrowLeft")&&(n.value=!1,(E=(S=s.value)==null?void 0:S.activatorEl)==null||E.focus())}function b(o){var h;if(e.disabled)return;const d=(h=s.value)==null?void 0:h.contentEl;d&&n.value?o.key==="ArrowDown"?(o.preventDefault(),o.stopImmediatePropagation(),ye(d,"next")):o.key==="ArrowUp"?(o.preventDefault(),o.stopImmediatePropagation(),ye(d,"prev")):e.submenu&&(o.key===(f.value?"ArrowRight":"ArrowLeft")?n.value=!1:o.key===(f.value?"ArrowLeft":"ArrowRight")&&(o.preventDefault(),ye(d,"first"))):(e.submenu?o.key===(f.value?"ArrowLeft":"ArrowRight"):["ArrowDown","ArrowUp"].includes(o.key))&&(n.value=!0,o.preventDefault(),setTimeout(()=>setTimeout(()=>b(o))))}const P=H(()=>_({"aria-haspopup":"menu","aria-expanded":String(n.value),"aria-controls":r.value,"aria-owns":r.value,onKeydown:b},e.activatorProps));return he(()=>{const o=De.filterProps(e);return x(De,_({ref:s,id:r.value,class:["v-menu",e.class],style:e.style},o,{modelValue:n.value,"onUpdate:modelValue":d=>n.value=d,absolute:!0,activatorProps:P.value,location:e.location??(e.submenu?"end":"bottom"),"onClick:outside":M,onKeydown:V},u),{activator:t.activator,default:function(){for(var d=arguments.length,h=new Array(d),g=0;g{var S;return[(S=t.default)==null?void 0:S.call(t,...h)]}})}})}),_e({id:r,ΨopenChildren:i},s)}}),Lt=Q({renderless:Boolean,...$e()},"VVirtualScrollItem"),Bt=me()({name:"VVirtualScrollItem",inheritAttrs:!1,props:Lt(),emits:{"update:height":e=>!0},setup(e,a){let{attrs:t,emit:n,slots:u}=a;const{resizeRef:f,contentRect:m}=Ue(void 0,"border");Y(()=>{var r;return(r=m.value)==null?void 0:r.height},r=>{r!=null&&n("update:height",r)}),he(()=>{var r,s;return e.renderless?C(ne,null,[(r=u.default)==null?void 0:r.call(u,{itemRef:f})]):C("div",_({ref:f,class:["v-virtual-scroll__item",e.class],style:e.style},t),[(s=u.default)==null?void 0:s.call(u)])})}}),Kt=-1,_t=1,we=100,Ht=Q({itemHeight:{type:[Number,String],default:null},itemKey:{type:[String,Array,Function],default:null},height:[Number,String]},"virtual");function zt(e,a){const t=dt(),n=U(0);Se(()=>{n.value=parseFloat(e.itemHeight||0)});const u=U(0),f=U(Math.ceil((parseInt(e.height)||t.height.value)/(n.value||16))||1),m=U(0),r=U(0),s=ee(),c=ee();let i=0;const{resizeRef:M,contentRect:V}=Ue();Se(()=>{M.value=s.value});const b=H(()=>{var v;return s.value===document.documentElement?t.height.value:((v=V.value)==null?void 0:v.height)||parseInt(e.height)||0}),P=H(()=>!!(s.value&&c.value&&b.value&&n.value));let o=Array.from({length:a.value.length}),d=Array.from({length:a.value.length});const h=U(0);let g=-1;function S(v){return o[v]||n.value}const E=ft(()=>{const v=performance.now();d[0]=0;const w=a.value.length;for(let T=1;T<=w;T++)d[T]=(d[T-1]||0)+S(T-1);h.value=Math.max(h.value,performance.now()-v)},h),R=Y(P,v=>{v&&(R(),i=c.value.offsetTop,E.immediate(),$(),~g&&We(()=>{Xe&&window.requestAnimationFrame(()=>{re(g),g=-1})}))});Ne(()=>{E.clear()});function Z(v,w){const T=o[v],O=n.value;n.value=O?Math.min(n.value,w):w,(T!==w||O!==n.value)&&(o[v]=w,E())}function B(v){v=pe(v,0,a.value.length);const w=Math.floor(v),T=v%1,O=w+1,G=d[w]||0,l=d[O]||G;return G+(l-G)*T}function I(v){return Ut(d,v)}let te=0,J=0,ae=0;Y(b,(v,w)=>{$(),v{J=0,$()})});let oe=-1;function N(){if(!s.value||!c.value)return;const v=s.value.scrollTop,w=performance.now();w-ae>500?(J=Math.sign(v-te),i=c.value.offsetTop):J=v-te,te=v,ae=w,window.clearTimeout(oe),oe=window.setTimeout(ce,500),$()}function ce(){!s.value||!c.value||(J=0,ae=0,window.clearTimeout(oe),$())}let ue=-1;function $(){cancelAnimationFrame(ue),ue=requestAnimationFrame(ge)}function ge(){if(!s.value||!b.value||!n.value)return;const v=te-i,w=Math.sign(J),T=Math.max(0,v-we),O=pe(I(T),0,a.value.length),G=v+b.value+we,l=pe(I(G)+1,O+1,a.value.length);if((w!==Kt||Of.value)){const y=B(u.value)-B(O),F=B(l)-B(f.value);Math.max(y,F)>we?(u.value=O,f.value=l):(O<=0&&(u.value=O),l>=a.value.length&&(f.value=l))}m.value=B(u.value),r.value=B(a.value.length)-B(f.value)}function re(v){const w=B(v);!s.value||v&&!w?g=v:s.value.scrollTop=w}const le=H(()=>a.value.slice(u.value,f.value).map((v,w)=>{const T=w+u.value;return{raw:v,index:T,key:je(v,e.itemKey,T)}}));return Y(a,()=>{o=Array.from({length:a.value.length}),d=Array.from({length:a.value.length}),E.immediate(),$()},{deep:1}),{calculateVisibleItems:$,containerRef:s,markerRef:c,computedItems:le,paddingTop:m,paddingBottom:r,scrollToIndex:re,handleScroll:N,handleScrollend:ce,handleItemResize:Z}}function Ut(e,a){let t=e.length-1,n=0,u=0,f=null,m=-1;if(e[t]>1,f=e[u],f>a)t=u-1;else if(f[]},renderless:Boolean,...Ht(),...$e(),...bt()},"VVirtualScroll"),Nt=me()({name:"VVirtualScroll",props:$t(),setup(e,a){let{slots:t}=a;const n=vt("VVirtualScroll"),{dimensionStyles:u}=pt(e),{calculateVisibleItems:f,containerRef:m,markerRef:r,handleScroll:s,handleScrollend:c,handleItemResize:i,scrollToIndex:M,paddingTop:V,paddingBottom:b,computedItems:P}=zt(e,ie(()=>e.items));return mt(()=>e.renderless,()=>{function o(){var g,S;const h=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1)?"addEventListener":"removeEventListener";m.value===document.documentElement?(document[h]("scroll",s,{passive:!0}),document[h]("scrollend",c)):((g=m.value)==null||g[h]("scroll",s,{passive:!0}),(S=m.value)==null||S[h]("scrollend",c))}ht(()=>{m.value=gt(n.vnode.el,!0),o(!0)}),Ne(o)}),he(()=>{const o=P.value.map(d=>x(Bt,{key:d.key,renderless:e.renderless,"onUpdate:height":h=>i(d.index,h)},{default:h=>{var g;return(g=t.default)==null?void 0:g.call(t,{item:d.raw,index:d.index,...h})}}));return e.renderless?C(ne,null,[C("div",{ref:r,class:"v-virtual-scroll__spacer",style:{paddingTop:fe(V.value)}},null),o,C("div",{class:"v-virtual-scroll__spacer",style:{paddingBottom:fe(b.value)}},null)]):C("div",{ref:m,class:ve(["v-virtual-scroll",e.class]),onScrollPassive:s,onScrollend:c,style:yt([u.value,e.style])},[C("div",{ref:r,class:"v-virtual-scroll__container",style:{paddingTop:fe(V.value),paddingBottom:fe(b.value)}},[o])])}),{calculateVisibleItems:f,scrollToIndex:M}}});function jt(e,a){const t=U(!1);let n;function u(r){cancelAnimationFrame(n),t.value=!0,n=requestAnimationFrame(()=>{n=requestAnimationFrame(()=>{t.value=!1})})}async function f(){await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>requestAnimationFrame(r)),await new Promise(r=>{if(t.value){const s=Y(t,()=>{s(),r()})}else r()})}async function m(r){var i,M;if(r.key==="Tab"&&((i=a.value)==null||i.focus()),!["PageDown","PageUp","Home","End"].includes(r.key))return;const s=(M=e.value)==null?void 0:M.$el;if(!s)return;(r.key==="Home"||r.key==="End")&&s.scrollTo({top:r.key==="Home"?0:s.scrollHeight,behavior:"smooth"}),await f();const c=s.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(r.key==="PageDown"||r.key==="Home"){const V=s.getBoundingClientRect().top;for(const b of c)if(b.getBoundingClientRect().top>=V){b.focus();break}}else{const V=s.getBoundingClientRect().bottom;for(const b of[...c].reverse())if(b.getBoundingClientRect().bottom<=V){b.focus();break}}}return{onScrollPassive:u,onKeydown:m}}const Wt=Q({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function Xt(e,a){const t=Be(),n=H(()=>`menu-${t}`),u=ie(()=>wt(a)),f=ie(()=>n.value);return{menuId:n,ariaExpanded:u,ariaControls:f}}const Yt=Q({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:Dt,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...Wt(),...Mt({itemChildren:!1})},"Select"),Qt=Q({...Yt(),...He(et({modelValue:null,role:"combobox"}),["validationValue","dirty"]),...Ft({transition:{component:ze}})},"VSelect"),ll=me()({name:"VSelect",props:Qt(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,a){let{slots:t}=a;const{t:n}=kt(),u=ee(),f=ee(),m=ee(),{items:r,transformIn:s,transformOut:c}=Vt(e),i=Ve(e,"modelValue",[],l=>s(l===null?[null]:Pe(l)),l=>{const y=c(l);return e.multiple?y:y[0]??null}),M=H(()=>typeof e.counterValue=="function"?e.counterValue(i.value):typeof e.counterValue=="number"?e.counterValue:i.value.length),V=Je(e),b=Ge(e),P=H(()=>i.value.map(l=>l.value)),o=U(!1),d=ie(()=>e.closableChips&&!V.isReadonly.value&&!V.isDisabled.value),{InputIcon:h}=qe(e);let g="",S=0,E;const R=H(()=>e.hideSelected?r.value.filter(l=>!i.value.some(y=>(e.valueComparator||be)(y,l))):r.value),Z=H(()=>e.hideNoData&&!R.value.length||V.isReadonly.value||V.isDisabled.value),B=Ve(e,"menu"),I=H({get:()=>B.value,set:l=>{var y;B.value&&!l&&((y=f.value)!=null&&y.ΨopenChildren.size)||l&&Z.value||(B.value=l)}}),{menuId:te,ariaExpanded:J,ariaControls:ae}=Xt(e,I),oe=H(()=>{var l;return{...e.menuProps,activatorProps:{...((l=e.menuProps)==null?void 0:l.activatorProps)||{},"aria-haspopup":"listbox"}}}),N=ee(),ce=jt(N,u);function ue(l){e.openOnClear&&(I.value=!0)}function $(){Z.value||(I.value=!I.value)}function ge(l){Ee(l)&&re(l)}function re(l){var z,q,A;if(!l.key||V.isReadonly.value)return;if(["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(l.key)&&l.preventDefault(),["Enter","ArrowDown"," "].includes(l.key)&&(I.value=!0),["Escape","Tab"].includes(l.key)&&(I.value=!1),e.clearable&&l.key==="Backspace"){l.preventDefault(),i.value=[],ue();return}l.key==="Home"?(z=N.value)==null||z.focus("first"):l.key==="End"&&((q=N.value)==null||q.focus("last"));const y=1e3;if(!Ee(l))return;const F=performance.now();F-E>y&&(g="",S=0),g+=l.key.toLowerCase(),E=F;const j=R.value;function W(){let k=L();return k||g.at(-1)===g.at(-2)&&(g=g.slice(0,-1),S++,k=L(),k)||(S=0,k=L(),k)?k:(g=l.key.toLowerCase(),L())}function L(){for(let k=S;k1&&arguments[1]!==void 0?arguments[1]:!0;if(!l.props.disabled)if(e.multiple){const F=i.value.findIndex(W=>(e.valueComparator||be)(W.value,l.value)),j=y??!~F;if(~F){const W=j?[...i.value,l]:[...i.value];W.splice(F,1),i.value=W}else j&&(i.value=[...i.value,l])}else{const F=y!==!1;i.value=F?[l]:[],We(()=>{I.value=!1})}}function v(l){var y;(y=N.value)!=null&&y.$el.contains(l.relatedTarget)||(I.value=!1)}function w(){var l;e.eager&&((l=m.value)==null||l.calculateVisibleItems())}function T(){var l;o.value&&((l=u.value)==null||l.focus())}function O(l){o.value=!0}function G(l){if(l==null)i.value=[];else if(Oe(u.value,":autofill")||Oe(u.value,":-webkit-autofill")){const y=r.value.find(F=>F.title===l);y&&le(y)}else u.value&&(u.value.value="")}return Y(I,()=>{if(!e.hideSelected&&I.value&&i.value.length){const l=R.value.findIndex(y=>i.value.some(F=>(e.valueComparator||be)(F.value,y.value)));Xe&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{var y;l>=0&&((y=m.value)==null||y.scrollToIndex(l))})}}),Y(r,(l,y)=>{I.value||o.value&&e.hideNoData&&!y.length&&l.length&&(I.value=!0)}),he(()=>{const l=!!(e.chips||t.chip),y=!!(!e.hideNoData||R.value.length||t["prepend-item"]||t["append-item"]||t["no-data"]),F=i.value.length>0,j=Te.filterProps(e),W=F||!o.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return x(Te,_({ref:u},j,{modelValue:i.value.map(L=>L.props.title).join(", "),name:void 0,"onUpdate:modelValue":G,focused:o.value,"onUpdate:focused":L=>o.value=L,validationValue:i.externalValue,counterValue:M.value,dirty:F,class:["v-select",{"v-select--active-menu":I.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":i.value.length,"v-select--selection-slot":!!t.selection},e.class],style:e.style,inputmode:"none",placeholder:W,"onClick:clear":ue,"onMousedown:control":$,onBlur:v,onKeydown:re,"aria-expanded":J.value,"aria-controls":ae.value}),{...t,default:L=>{let{id:X}=L;return C(ne,null,[C("select",{hidden:!0,multiple:e.multiple,name:b.fieldName.value},[r.value.map(p=>C("option",{key:p.value,value:p.value,selected:P.value.includes(p.value)},null))]),x(Ot,_({id:te.value,ref:f,modelValue:I.value,"onUpdate:modelValue":p=>I.value=p,activator:"parent",contentClass:"v-select__content",disabled:Z.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:w,onAfterLeave:T},oe.value),{default:()=>[y&&x(St,_({ref:N,selected:P.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:p=>p.preventDefault(),onKeydown:ge,onFocusin:O,tabindex:"-1",selectable:!!R.value.length,"aria-live":"polite","aria-labelledby":`${X.value}-label`,"aria-multiselectable":e.multiple,color:e.itemColor??e.color},ce,e.listProps),{default:()=>{var p,K,z;return[(p=t["prepend-item"])==null?void 0:p.call(t),!R.value.length&&!e.hideNoData&&(((K=t["no-data"])==null?void 0:K.call(t))??x(Re,{key:"no-data",title:n(e.noDataText)},null)),x(Nt,{ref:m,renderless:!0,items:R.value,itemKey:"value"},{default:q=>{var Ce,Ae,xe;let{item:A,index:k,itemRef:D}=q;const de=Pt(A.props),Ie=_(A.props,{ref:D,key:A.value,onClick:()=>le(A,null),"aria-posinset":k+1,"aria-setsize":R.value.length});return A.type==="divider"?((Ce=t.divider)==null?void 0:Ce.call(t,{props:A.raw,index:k}))??x(It,_(A.props,{key:`divider-${k}`}),null):A.type==="subheader"?((Ae=t.subheader)==null?void 0:Ae.call(t,{props:A.raw,index:k}))??x(Ct,_(A.props,{key:`subheader-${k}`}),null):((xe=t.item)==null?void 0:xe.call(t,{item:A,index:k,props:Ie}))??x(Re,_(Ie,{role:"option"}),{prepend:Ye=>{let{isSelected:Qe}=Ye;return C(ne,null,[e.multiple&&!e.hideSelected?x(Rt,{key:A.value,modelValue:Qe,ripple:!1,tabindex:"-1","aria-hidden":!0,onClick:Ze=>Ze.preventDefault()},null):void 0,de.prependAvatar&&x(At,{image:de.prependAvatar},null),de.prependIcon&&x(Me,{icon:de.prependIcon},null)])}})}}),(z=t["append-item"])==null?void 0:z.call(t)]}})]}),i.value.map((p,K)=>{function z(D){D.stopPropagation(),D.preventDefault(),le(p,!1)}const q=_(Le.filterProps(p.props),{"onClick:close":z,onKeydown(D){D.key!=="Enter"&&D.key!==" "||(D.preventDefault(),D.stopPropagation(),z(D))},onMousedown(D){D.preventDefault(),D.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),A=l?!!t.chip:!!t.selection,k=A?xt(l?t.chip({item:p,index:K,props:q}):t.selection({item:p,index:K})):void 0;if(!(A&&!k))return C("div",{key:p.value,class:"v-select__selection"},[l?t.chip?x(Ke,{key:"chip-defaults",defaults:{VChip:{closable:d.value,size:"small",text:p.title}}},{default:()=>[k]}):x(Le,_({key:"chip",closable:d.value,size:"small",text:p.title,disabled:p.props.disabled},q),null):k??C("span",{class:"v-select__selection-text"},[p.title,e.multiple&&K{if(e==null||a==null)return-1;if(!a.length)return 0;e=e.toString().toLocaleLowerCase(),a=a.toString().toLocaleLowerCase();const n=[];let u=e.indexOf(a);for(;~u;)n.push([u,u+a.length]),u=e.indexOf(a,u+a.length);return n.length?n:-1};function ke(e,a){if(!(e==null||typeof e=="boolean"||e===-1))return typeof e=="number"?[[e,e+a.length]]:Array.isArray(e[0])?e:[e]}const nl=Q({customFilter:Function,customKeyFilter:Object,filterKeys:[Array,String],filterMode:{type:String,default:"intersection"},noFilter:Boolean},"filter");function Jt(e,a,t){var s;const n=[],u=(t==null?void 0:t.default)??Zt,f=t!=null&&t.filterKeys?Pe(t.filterKeys):!1,m=Object.keys((t==null?void 0:t.customKeyFilter)??{}).length;if(!(e!=null&&e.length))return n;let r=null;e:for(let c=0;c0)&&!(t!=null&&t.noFilter)){let o=!1;if(typeof i=="object"){if(i.type==="divider"||i.type==="subheader"){(r==null?void 0:r.type)==="divider"&&i.type==="subheader"&&n.push(r),r={index:c,matches:{},type:i.type};continue}const g=f||Object.keys(M);o=g.length===m;for(const S of g){const E=je(M,S),R=(s=t==null?void 0:t.customKeyFilter)==null?void 0:s[S];if(P=R?R(E,a,i):u(E,a,i),P!==-1&&P!==!1)R?V[S]=ke(P,a):b[S]=ke(P,a);else if((t==null?void 0:t.filterMode)==="every")continue e}}else P=u(i,a,i),P!==-1&&P!==!1&&(b.title=ke(P,a));const d=Object.keys(b).length,h=Object.keys(V).length;if(!d&&!h||(t==null?void 0:t.filterMode)==="union"&&h!==m&&!d||(t==null?void 0:t.filterMode)==="intersection"&&(h!==m||!d&&m>0&&!o))continue}r&&(n.push(r),r=null),n.push({index:c,matches:{...b,...V}})}return n}function al(e,a,t,n){const u=U([]),f=U(new Map),m=H(()=>n!=null&&n.transform?se(a).map(s=>[s,n.transform(s)]):se(a));Se(()=>{const s=typeof t=="function"?t():se(t),c=typeof s!="string"&&typeof s!="number"?"":String(s),i=Jt(m.value,c,{customKeyFilter:{...e.customKeyFilter,...se(n==null?void 0:n.customKeyFilter)},default:e.customFilter,filterKeys:e.filterKeys,filterMode:e.filterMode,noFilter:e.noFilter}),M=se(a),V=[],b=new Map;i.forEach(P=>{let{index:o,matches:d}=P;const h=M[o];V.push(h),b.set(h.value,d)}),u.value=V,f.value=b});function r(s){return f.value.get(s.value)}return{filteredItems:u,filteredMatches:f,getMatches:r}}function ol(e,a,t){return t==null||!t.length?a:t.map((n,u)=>{const f=u===0?0:t[u-1][1],m=[C("span",{class:ve(`${e}__unmask`)},[a.slice(f,n[0])]),C("span",{class:ve(`${e}__mask`)},[a.slice(n[0],n[1])])];return u===t.length-1&&m.push(C("span",{class:ve(`${e}__unmask`)},[a.slice(n[1])])),C(ne,null,[m])})}export{Ot as V,Xt as a,Nt as b,jt as c,nl as d,ll as e,ol as h,Yt as m,al as u}; diff --git a/assets/index-BUM0TY0E.js b/assets/index-BUM0TY0E.js deleted file mode 100644 index da7592a..0000000 --- a/assets/index-BUM0TY0E.js +++ /dev/null @@ -1,74 +0,0 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./default-BdaTlbaW.js","./default-CmdaPMSp.css","./index-DDM9P6IV.js","./ExamConfigEditor-BzFaHh6i.js","./dataProvider-MQ8YacC2.js","./serverRotation-CjK7Y7P9.js","./VAlert-DFIvt6kt.js","./VAlert-D_OX1cfW.css","./VSkeletonLoader-DX2FpkIS.js","./VSkeletonLoader-C11ZEozu.css","./VTooltip-COe_nB02.js","./VTooltip-D7EaNDeY.css","./VChip-vdRDApTi.js","./VChip-Dmz_1Lnv.css","./VRow-CPw1R1BU.js","./VTextField-C579e7l1.js","./VTextField-D1VSzmed.css","./VTextarea-jqnFSwaH.js","./VTextarea-_xVwaw_z.css","./VSwitch-CjVC2rsZ.js","./VSwitch-C87GkfUP.css","./filter-ByuXXWRY.js","./VCheckboxBtn-CylQNaxd.js","./filter-DEjKrR5R.css","./VSheet-CuIjBtz7.js","./VSheet-DW_b51tO.css","./ExamConfigEditor-CrmzhmtU.css","./socketClient-BEFY8Nxz.js","./VCombobox-B-HflrVw.js","./VAppBarTitle-DZ_l7t3b.js","./VAppBarTitle-DHaTV8xv.css","./VCombobox-BLfr31LE.css","./deviceEvents-Dj8WEgqu.js","./VPagination-CbPhc6Cb.js","./VPagination-DNe_r2rg.css","./VContainer-DakLDC1m.js","./VForm-Bz_LQtPX.js","./VExpansionPanels-DzF6AfvT.js","./VExpansionPanels-kEj4ZJQK.css","./index-CuoHvzZv.css","./404-BUV7S865.js","./authorize-B6ScKHRa.js","./CacheManagement-DoF_G4xZ.js","./cses2wakeup-CFK6QLBO.js","./VTabsWindowItem-DtW2SDNN.js","./VTabsWindowItem-DsCcWpt1.css","./cses2wakeup-V9ZvMok7.css","./debug-KU27ZD5S.js","./debug-CbS14biG.css","./debug-init-CBNN17PW.js","./debug-socket-sq4UK_d2.js","./_id_-9DDLDO6h.js","./examschedule-DlYuJdDl.js","./examschedule-CU_Gxm4i.css","./index-bqvMdhMd.js","./_id_-DzoDISsJ.js","./settings-BmFKtRQg.js","./settings-eh31GxG-.css","./socket-debugger-qP6I1v4J.js","./socket-debugger-ykBk0O32.css"])))=>i.map(i=>d[i]); -(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();const KE="modulepreload",YE=function(e,t){return new URL(e,t).href},uh={},ht=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){const o=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),c=(a==null?void 0:a.nonce)||(a==null?void 0:a.getAttribute("nonce"));s=Promise.allSettled(n.map(l=>{if(l=YE(l,r),l in uh)return;uh[l]=!0;const u=l.endsWith(".css"),f=u?'[rel="stylesheet"]':"";if(!!r)for(let p=o.length-1;p>=0;p--){const m=o[p];if(m.href===l&&(!u||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${f}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":KE,u||(h.as="script"),h.crossOrigin="",h.href=l,c&&h.setAttribute("nonce",c),document.head.appendChild(h),u)return new Promise((p,m)=>{h.addEventListener("load",p),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(o){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o}return s.then(o=>{for(const a of o||[])a.status==="rejected"&&i(a.reason);return t().catch(i)})};/** -* @vue/shared v3.5.27 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function bf(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Be={},Ws=[],On=()=>{},Qg=()=>!1,Cc=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Sf=e=>e.startsWith("onUpdate:"),ot=Object.assign,Ef=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},XE=Object.prototype.hasOwnProperty,Le=(e,t)=>XE.call(e,t),fe=Array.isArray,js=e=>Ic(e)==="[object Map]",ey=e=>Ic(e)==="[object Set]",ge=e=>typeof e=="function",Ze=e=>typeof e=="string",ir=e=>typeof e=="symbol",He=e=>e!==null&&typeof e=="object",ty=e=>(He(e)||ge(e))&&ge(e.then)&&ge(e.catch),ny=Object.prototype.toString,Ic=e=>ny.call(e),JE=e=>Ic(e).slice(8,-1),ry=e=>Ic(e)==="[object Object]",kc=e=>Ze(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ji=bf(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),xc=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},ZE=/-\w/g,Pt=xc(e=>e.replace(ZE,t=>t.slice(1).toUpperCase())),QE=/\B([A-Z])/g,Pr=xc(e=>e.replace(QE,"-$1").toLowerCase()),pi=xc(e=>e.charAt(0).toUpperCase()+e.slice(1)),ul=xc(e=>e?`on${pi(e)}`:""),Er=(e,t)=>!Object.is(e,t),Sa=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},wf=e=>{const t=parseFloat(e);return isNaN(t)?e:t},e0=e=>{const t=Ze(e)?Number(e):NaN;return isNaN(t)?e:t};let fh;const Rc=()=>fh||(fh=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function ze(e){if(fe(e)){const t={};for(let n=0;n{if(n){const r=n.split(n0);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function Re(e){let t="";if(Ze(e))t=e;else if(fe(e))for(let n=0;n!!(e&&e.__v_isRef===!0),dn=e=>Ze(e)?e:e==null?"":fe(e)||He(e)&&(e.toString===ny||!ge(e.toString))?oy(e)?dn(e.value):JSON.stringify(e,ay,2):String(e),ay=(e,t)=>oy(t)?ay(e,t.value):js(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s],i)=>(n[fl(r,i)+" =>"]=s,n),{})}:ey(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>fl(n))}:ir(t)?fl(t):He(t)&&!fe(t)&&!ry(t)?String(t):t,fl=(e,t="")=>{var n;return ir(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** -* @vue/reactivity v3.5.27 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let St;class cy{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=St,!t&&St&&(this.index=(St.scopes||(St.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(St=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,r;for(n=0,r=this.effects.length;n0)return;if(qi){let t=qi;for(qi=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;zi;){let t=zi;for(zi=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(r){e||(e=r)}t=n}}if(e)throw e}function dy(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function hy(e){let t,n=e.depsTail,r=n;for(;r;){const s=r.prevDep;r.version===-1?(r===n&&(n=s),kf(r),a0(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=s}e.deps=t,e.depsTail=n}function cu(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(py(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function py(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===ao)||(e.globalVersion=ao,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!cu(e))))return;e.flags|=2;const t=e.dep,n=We,r=hn;We=e,hn=!0;try{dy(e);const s=e.fn(e._value);(t.version===0||Er(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{We=n,hn=r,hy(e),e.flags&=-3}}function kf(e,t=!1){const{dep:n,prevSub:r,nextSub:s}=e;if(r&&(r.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)kf(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function a0(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let hn=!0;const my=[];function Xn(){my.push(hn),hn=!1}function Jn(){const e=my.pop();hn=e===void 0?!0:e}function dh(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=We;We=void 0;try{t()}finally{We=n}}}let ao=0;class c0{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class xf{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!We||!hn||We===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==We)n=this.activeLink=new c0(We,this),We.deps?(n.prevDep=We.depsTail,We.depsTail.nextDep=n,We.depsTail=n):We.deps=We.depsTail=n,gy(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const r=n.nextDep;r.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=r),n.prevDep=We.depsTail,n.nextDep=void 0,We.depsTail.nextDep=n,We.depsTail=n,We.deps===n&&(We.deps=r)}return n}trigger(t){this.version++,ao++,this.notify(t)}notify(t){Cf();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{If()}}}function gy(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let r=t.deps;r;r=r.nextDep)gy(r)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Va=new WeakMap,es=Symbol(""),lu=Symbol(""),co=Symbol("");function Et(e,t,n){if(hn&&We){let r=Va.get(e);r||Va.set(e,r=new Map);let s=r.get(n);s||(r.set(n,s=new xf),s.map=r,s.key=n),s.track()}}function Un(e,t,n,r,s,i){const o=Va.get(e);if(!o){ao++;return}const a=c=>{c&&c.trigger()};if(Cf(),t==="clear")o.forEach(a);else{const c=fe(e),l=c&&kc(n);if(c&&n==="length"){const u=Number(r);o.forEach((f,d)=>{(d==="length"||d===co||!ir(d)&&d>=u)&&a(f)})}else switch((n!==void 0||o.has(void 0))&&a(o.get(n)),l&&a(o.get(co)),t){case"add":c?l&&a(o.get("length")):(a(o.get(es)),js(e)&&a(o.get(lu)));break;case"delete":c||(a(o.get(es)),js(e)&&a(o.get(lu)));break;case"set":js(e)&&a(o.get(es));break}}If()}function l0(e,t){const n=Va.get(e);return n&&n.get(t)}function Es(e){const t=ue(e);return t===e?t:(Et(t,"iterate",co),Gt(e)?t:t.map(pn))}function Ac(e){return Et(e=ue(e),"iterate",co),e}function gr(e,t){return Zn(e)?Js(jn(e)?pn(t):t):pn(t)}const u0={__proto__:null,[Symbol.iterator](){return hl(this,Symbol.iterator,e=>gr(this,e))},concat(...e){return Es(this).concat(...e.map(t=>fe(t)?Es(t):t))},entries(){return hl(this,"entries",e=>(e[1]=gr(this,e[1]),e))},every(e,t){return Ln(this,"every",e,t,void 0,arguments)},filter(e,t){return Ln(this,"filter",e,t,n=>n.map(r=>gr(this,r)),arguments)},find(e,t){return Ln(this,"find",e,t,n=>gr(this,n),arguments)},findIndex(e,t){return Ln(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Ln(this,"findLast",e,t,n=>gr(this,n),arguments)},findLastIndex(e,t){return Ln(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Ln(this,"forEach",e,t,void 0,arguments)},includes(...e){return pl(this,"includes",e)},indexOf(...e){return pl(this,"indexOf",e)},join(e){return Es(this).join(e)},lastIndexOf(...e){return pl(this,"lastIndexOf",e)},map(e,t){return Ln(this,"map",e,t,void 0,arguments)},pop(){return Ni(this,"pop")},push(...e){return Ni(this,"push",e)},reduce(e,...t){return hh(this,"reduce",e,t)},reduceRight(e,...t){return hh(this,"reduceRight",e,t)},shift(){return Ni(this,"shift")},some(e,t){return Ln(this,"some",e,t,void 0,arguments)},splice(...e){return Ni(this,"splice",e)},toReversed(){return Es(this).toReversed()},toSorted(e){return Es(this).toSorted(e)},toSpliced(...e){return Es(this).toSpliced(...e)},unshift(...e){return Ni(this,"unshift",e)},values(){return hl(this,"values",e=>gr(this,e))}};function hl(e,t,n){const r=Ac(e),s=r[t]();return r!==e&&!Gt(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=n(i.value)),i}),s}const f0=Array.prototype;function Ln(e,t,n,r,s,i){const o=Ac(e),a=o!==e&&!Gt(e),c=o[t];if(c!==f0[t]){const f=c.apply(e,i);return a?pn(f):f}let l=n;o!==e&&(a?l=function(f,d){return n.call(this,gr(e,f),d,e)}:n.length>2&&(l=function(f,d){return n.call(this,f,d,e)}));const u=c.call(o,l,r);return a&&s?s(u):u}function hh(e,t,n,r){const s=Ac(e);let i=n;return s!==e&&(Gt(e)?n.length>3&&(i=function(o,a,c){return n.call(this,o,a,c,e)}):i=function(o,a,c){return n.call(this,o,gr(e,a),c,e)}),s[t](i,...r)}function pl(e,t,n){const r=ue(e);Et(r,"iterate",co);const s=r[t](...n);return(s===-1||s===!1)&&Oc(n[0])?(n[0]=ue(n[0]),r[t](...n)):s}function Ni(e,t,n=[]){Xn(),Cf();const r=ue(e)[t].apply(e,n);return If(),Jn(),r}const d0=bf("__proto__,__v_isRef,__isVue"),yy=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ir));function h0(e){ir(e)||(e=String(e));const t=ue(this);return Et(t,"has",e),t.hasOwnProperty(e)}class vy{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return r===(s?i?w0:Ey:i?Sy:by).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const o=fe(t);if(!s){let c;if(o&&(c=u0[n]))return c;if(n==="hasOwnProperty")return h0}const a=Reflect.get(t,n,qe(t)?t:r);if((ir(n)?yy.has(n):d0(n))||(s||Et(t,"get",n),i))return a;if(qe(a)){const c=o&&kc(n)?a:a.value;return s&&He(c)?Xs(c):c}return He(a)?s?Xs(a):lt(a):a}}class _y extends vy{constructor(t=!1){super(!1,t)}set(t,n,r,s){let i=t[n];const o=fe(t)&&kc(n);if(!this._isShallow){const l=Zn(i);if(!Gt(r)&&!Zn(r)&&(i=ue(i),r=ue(r)),!o&&qe(i)&&!qe(r))return l||(i.value=r),!0}const a=o?Number(n)e,na=e=>Reflect.getPrototypeOf(e);function v0(e,t,n){return function(...r){const s=this.__v_raw,i=ue(s),o=js(i),a=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,l=s[e](...r),u=n?uu:t?Js:pn;return!t&&Et(i,"iterate",c?lu:es),ot(Object.create(l),{next(){const{value:f,done:d}=l.next();return d?{value:f,done:d}:{value:a?[u(f[0]),u(f[1])]:u(f),done:d}}})}}function ra(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function _0(e,t){const n={get(s){const i=this.__v_raw,o=ue(i),a=ue(s);e||(Er(s,a)&&Et(o,"get",s),Et(o,"get",a));const{has:c}=na(o),l=t?uu:e?Js:pn;if(c.call(o,s))return l(i.get(s));if(c.call(o,a))return l(i.get(a));i!==o&&i.get(s)},get size(){const s=this.__v_raw;return!e&&Et(ue(s),"iterate",es),s.size},has(s){const i=this.__v_raw,o=ue(i),a=ue(s);return e||(Er(s,a)&&Et(o,"has",s),Et(o,"has",a)),s===a?i.has(s):i.has(s)||i.has(a)},forEach(s,i){const o=this,a=o.__v_raw,c=ue(a),l=t?uu:e?Js:pn;return!e&&Et(c,"iterate",es),a.forEach((u,f)=>s.call(i,l(u),l(f),o))}};return ot(n,e?{add:ra("add"),set:ra("set"),delete:ra("delete"),clear:ra("clear")}:{add(s){!t&&!Gt(s)&&!Zn(s)&&(s=ue(s));const i=ue(this);return na(i).has.call(i,s)||(i.add(s),Un(i,"add",s,s)),this},set(s,i){!t&&!Gt(i)&&!Zn(i)&&(i=ue(i));const o=ue(this),{has:a,get:c}=na(o);let l=a.call(o,s);l||(s=ue(s),l=a.call(o,s));const u=c.call(o,s);return o.set(s,i),l?Er(i,u)&&Un(o,"set",s,i):Un(o,"add",s,i),this},delete(s){const i=ue(this),{has:o,get:a}=na(i);let c=o.call(i,s);c||(s=ue(s),c=o.call(i,s)),a&&a.call(i,s);const l=i.delete(s);return c&&Un(i,"delete",s,void 0),l},clear(){const s=ue(this),i=s.size!==0,o=s.clear();return i&&Un(s,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=v0(s,e,t)}),n}function Rf(e,t){const n=_0(e,t);return(r,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get(Le(n,s)&&s in r?n:r,s,i)}const b0={get:Rf(!1,!1)},S0={get:Rf(!1,!0)},E0={get:Rf(!0,!1)};const by=new WeakMap,Sy=new WeakMap,Ey=new WeakMap,w0=new WeakMap;function T0(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function C0(e){return e.__v_skip||!Object.isExtensible(e)?0:T0(JE(e))}function lt(e){return Zn(e)?e:Af(e,!1,m0,b0,by)}function wy(e){return Af(e,!1,y0,S0,Sy)}function Xs(e){return Af(e,!0,g0,E0,Ey)}function Af(e,t,n,r,s){if(!He(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=C0(e);if(i===0)return e;const o=s.get(e);if(o)return o;const a=new Proxy(e,i===2?r:n);return s.set(e,a),a}function jn(e){return Zn(e)?jn(e.__v_raw):!!(e&&e.__v_isReactive)}function Zn(e){return!!(e&&e.__v_isReadonly)}function Gt(e){return!!(e&&e.__v_isShallow)}function Oc(e){return e?!!e.__v_raw:!1}function ue(e){const t=e&&e.__v_raw;return t?ue(t):e}function Of(e){return!Le(e,"__v_skip")&&Object.isExtensible(e)&&sy(e,"__v_skip",!0),e}const pn=e=>He(e)?lt(e):e,Js=e=>He(e)?Xs(e):e;function qe(e){return e?e.__v_isRef===!0:!1}function Ee(e){return Ty(e,!1)}function be(e){return Ty(e,!0)}function Ty(e,t){return qe(e)?e:new I0(e,t)}class I0{constructor(t,n){this.dep=new xf,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ue(t),this._value=n?t:pn(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,r=this.__v_isShallow||Gt(t)||Zn(t);t=r?t:ue(t),Er(t,n)&&(this._rawValue=t,this._value=r?t:pn(t),this.dep.trigger())}}function Ft(e){return qe(e)?e.value:e}function mt(e){return ge(e)?e():Ft(e)}const k0={get:(e,t,n)=>t==="__v_raw"?e:Ft(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return qe(s)&&!qe(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function Cy(e){return jn(e)?e:new Proxy(e,k0)}function Mf(e){const t=fe(e)?new Array(e.length):{};for(const n in e)t[n]=Iy(e,n);return t}class x0{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0,this._value=void 0,this._raw=ue(t);let s=!0,i=t;if(!fe(t)||!kc(String(n)))do s=!Oc(i)||Gt(i);while(s&&(i=i.__v_raw));this._shallow=s}get value(){let t=this._object[this._key];return this._shallow&&(t=Ft(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&qe(this._raw[this._key])){const n=this._object[this._key];if(qe(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return l0(this._raw,this._key)}}class R0{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function Q(e,t,n){return qe(e)?e:ge(e)?new R0(e):He(e)&&arguments.length>1?Iy(e,t,n):Ee(e)}function Iy(e,t,n){return new x0(e,t,n)}class A0{constructor(t,n,r){this.fn=t,this.setter=n,this._value=void 0,this.dep=new xf(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=ao-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=r}notify(){if(this.flags|=16,!(this.flags&8)&&We!==this)return fy(this,!0),!0}get value(){const t=this.dep.track();return py(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function O0(e,t,n=!1){let r,s;return ge(e)?r=e:(r=e.get,s=e.set),new A0(r,s,n)}const sa={},Ua=new WeakMap;let Gr;function M0(e,t=!1,n=Gr){if(n){let r=Ua.get(n);r||Ua.set(n,r=[]),r.push(e)}}function P0(e,t,n=Be){const{immediate:r,deep:s,once:i,scheduler:o,augmentJob:a,call:c}=n,l=T=>s?T:Gt(T)||s===!1||s===0?Wn(T,1):Wn(T);let u,f,d,h,p=!1,m=!1;if(qe(e)?(f=()=>e.value,p=Gt(e)):jn(e)?(f=()=>l(e),p=!0):fe(e)?(m=!0,p=e.some(T=>jn(T)||Gt(T)),f=()=>e.map(T=>{if(qe(T))return T.value;if(jn(T))return l(T);if(ge(T))return c?c(T,2):T()})):ge(e)?t?f=c?()=>c(e,2):e:f=()=>{if(d){Xn();try{d()}finally{Jn()}}const T=Gr;Gr=u;try{return c?c(e,3,[h]):e(h)}finally{Gr=T}}:f=On,t&&s){const T=f,O=s===!0?1/0:s;f=()=>Wn(T(),O)}const y=Tf(),g=()=>{u.stop(),y&&y.active&&Ef(y.effects,u)};if(i&&t){const T=t;t=(...O)=>{T(...O),g()}}let v=m?new Array(e.length).fill(sa):sa;const _=T=>{if(!(!(u.flags&1)||!u.dirty&&!T))if(t){const O=u.run();if(s||p||(m?O.some((R,E)=>Er(R,v[E])):Er(O,v))){d&&d();const R=Gr;Gr=u;try{const E=[O,v===sa?void 0:m&&v[0]===sa?[]:v,h];v=O,c?c(t,3,E):t(...E)}finally{Gr=R}}}else u.run()};return a&&a(_),u=new ly(f),u.scheduler=o?()=>o(_,!1):_,h=T=>M0(T,!1,u),d=u.onStop=()=>{const T=Ua.get(u);if(T){if(c)c(T,4);else for(const O of T)O();Ua.delete(u)}},t?r?_(!0):v=u.run():o?o(_.bind(null,!0),!0):u.run(),g.pause=u.pause.bind(u),g.resume=u.resume.bind(u),g.stop=g,g}function Wn(e,t=1/0,n){if(t<=0||!He(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,qe(e))Wn(e.value,t,n);else if(fe(e))for(let r=0;r{Wn(r,t,n)});else if(ry(e)){for(const r in e)Wn(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Wn(e[r],t,n)}return e}/** -* @vue/runtime-core v3.5.27 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/function Po(e,t,n,r){try{return r?e(...r):e()}catch(s){Mc(s,t,n)}}function mn(e,t,n,r){if(ge(e)){const s=Po(e,t,n,r);return s&&ty(s)&&s.catch(i=>{Mc(i,t,n)}),s}if(fe(e)){const s=[];for(let i=0;i>>1,s=Ot[r],i=lo(s);i=lo(n)?Ot.push(e):Ot.splice(L0(t),0,e),e.flags|=1,xy()}}function xy(){Wa||(Wa=ky.then(Ay))}function D0(e){fe(e)?zs.push(...e):yr&&e.id===-1?yr.splice(As+1,0,e):e.flags&1||(zs.push(e),e.flags|=1),xy()}function ph(e,t,n=wn+1){for(;nlo(n)-lo(r));if(zs.length=0,yr){yr.push(...t);return}for(yr=t,As=0;Ase.id==null?e.flags&2?-1:1/0:e.id;function Ay(e){try{for(wn=0;wn{r._d&&Ga(-1);const i=ja(t);let o;try{o=e(...s)}finally{ja(i),r._d&&Ga(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function us(e,t){if(gt===null)return e;const n=$c(gt),r=e.dirs||(e.dirs=[]);for(let s=0;s1)return n&&ge(t)?t.call(r&&r.proxy):t}}function F0(){return!!(mi()||ts)}const $0=Symbol.for("v-scx"),B0=()=>Oe($0);function on(e,t){return Nf(e,null,t)}function Se(e,t,n){return Nf(e,t,n)}function Nf(e,t,n=Be){const{immediate:r,deep:s,flush:i,once:o}=n,a=ot({},n),c=t&&r||!t&&i!=="post";let l;if(ho){if(i==="sync"){const h=B0();l=h.__watcherHandles||(h.__watcherHandles=[])}else if(!c){const h=()=>{};return h.stop=On,h.resume=On,h.pause=On,h}}const u=wt;a.call=(h,p,m)=>mn(h,u,p,m);let f=!1;i==="post"?a.scheduler=h=>{Rt(h,u&&u.suspense)}:i!=="sync"&&(f=!0,a.scheduler=(h,p)=>{p?h():Pf(h)}),a.augmentJob=h=>{t&&(h.flags|=4),f&&(h.flags|=2,u&&(h.id=u.uid,h.i=u))};const d=P0(e,t,a);return ho&&(l?l.push(d):c&&d()),d}function H0(e,t,n){const r=this.proxy,s=Ze(e)?e.includes(".")?My(r,e):()=>r[e]:e.bind(r,r);let i;ge(t)?i=t:(i=t.handler,n=t);const o=Lo(this),a=Nf(s,i.bind(r),n);return o(),a}function My(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;se.__isTeleport,Gi=e=>e&&(e.disabled||e.disabled===""),mh=e=>e&&(e.defer||e.defer===""),gh=e=>typeof SVGElement<"u"&&e instanceof SVGElement,yh=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,fu=(e,t)=>{const n=e&&e.to;return Ze(n)?t?t(n):null:n},Ly={name:"Teleport",__isTeleport:!0,process(e,t,n,r,s,i,o,a,c,l){const{mc:u,pc:f,pbc:d,o:{insert:h,querySelector:p,createText:m,createComment:y}}=l,g=Gi(t.props);let{shapeFlag:v,children:_,dynamicChildren:T}=t;if(e==null){const O=t.el=m(""),R=t.anchor=m("");h(O,n,r),h(R,n,r);const E=(I,A)=>{v&16&&u(_,I,A,s,i,o,a,c)},w=()=>{const I=t.target=fu(t.props,p),A=Dy(I,t,m,h);I&&(o!=="svg"&&gh(I)?o="svg":o!=="mathml"&&yh(I)&&(o="mathml"),s&&s.isCE&&(s.ce._teleportTargets||(s.ce._teleportTargets=new Set)).add(I),g||(E(I,A),Ea(t,!1)))};g&&(E(n,R),Ea(t,!0)),mh(t.props)?(t.el.__isMounted=!1,Rt(()=>{w(),delete t.el.__isMounted},i)):w()}else{if(mh(t.props)&&e.el.__isMounted===!1){Rt(()=>{Ly.process(e,t,n,r,s,i,o,a,c,l)},i);return}t.el=e.el,t.targetStart=e.targetStart;const O=t.anchor=e.anchor,R=t.target=e.target,E=t.targetAnchor=e.targetAnchor,w=Gi(e.props),I=w?n:R,A=w?O:E;if(o==="svg"||gh(R)?o="svg":(o==="mathml"||yh(R))&&(o="mathml"),T?(d(e.dynamicChildren,T,I,s,i,o,a),Bf(e,t,!0)):c||f(e,t,I,A,s,i,o,a,!1),g)w?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):ia(t,n,O,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const M=t.target=fu(t.props,p);M&&ia(t,M,null,l,0)}else w&&ia(t,R,E,l,1);Ea(t,g)}},remove(e,t,n,{um:r,o:{remove:s}},i){const{shapeFlag:o,children:a,anchor:c,targetStart:l,targetAnchor:u,target:f,props:d}=e;if(f&&(s(l),s(u)),i&&s(c),o&16){const h=i||!Gi(d);for(let p=0;p{e.isMounted=!0}),yn(()=>{e.isUnmounting=!0}),e}const Jt=[Function,Array],$y={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Jt,onEnter:Jt,onAfterEnter:Jt,onEnterCancelled:Jt,onBeforeLeave:Jt,onLeave:Jt,onAfterLeave:Jt,onLeaveCancelled:Jt,onBeforeAppear:Jt,onAppear:Jt,onAfterAppear:Jt,onAppearCancelled:Jt},By=e=>{const t=e.subTree;return t.component?By(t.component):t},W0={name:"BaseTransition",props:$y,setup(e,{slots:t}){const n=mi(),r=Fy();return()=>{const s=t.default&&Lf(t.default(),!0);if(!s||!s.length)return;const i=Hy(s),o=ue(e),{mode:a}=o;if(r.isLeaving)return ml(i);const c=vh(i);if(!c)return ml(i);let l=uo(c,o,r,n,f=>l=f);c.type!==pt&&fs(c,l);let u=n.subTree&&vh(n.subTree);if(u&&u.type!==pt&&!Yr(u,c)&&By(n).type!==pt){let f=uo(u,o,r,n);if(fs(u,f),a==="out-in"&&c.type!==pt)return r.isLeaving=!0,f.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete f.afterLeave,u=void 0},ml(i);a==="in-out"&&c.type!==pt?f.delayLeave=(d,h,p)=>{const m=Vy(r,u);m[String(u.key)]=u,d[Vn]=()=>{h(),d[Vn]=void 0,delete l.delayedLeave,u=void 0},l.delayedLeave=()=>{p(),delete l.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return i}}};function Hy(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==pt){t=n;break}}return t}const j0=W0;function Vy(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function uo(e,t,n,r,s){const{appear:i,mode:o,persisted:a=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:u,onEnterCancelled:f,onBeforeLeave:d,onLeave:h,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:y,onAppear:g,onAfterAppear:v,onAppearCancelled:_}=t,T=String(e.key),O=Vy(n,e),R=(I,A)=>{I&&mn(I,r,9,A)},E=(I,A)=>{const M=A[1];R(I,A),fe(I)?I.every(x=>x.length<=1)&&M():I.length<=1&&M()},w={mode:o,persisted:a,beforeEnter(I){let A=c;if(!n.isMounted)if(i)A=y||c;else return;I[Vn]&&I[Vn](!0);const M=O[T];M&&Yr(e,M)&&M.el[Vn]&&M.el[Vn](),R(A,[I])},enter(I){let A=l,M=u,x=f;if(!n.isMounted)if(i)A=g||l,M=v||u,x=_||f;else return;let N=!1;const L=I[oa]=G=>{N||(N=!0,G?R(x,[I]):R(M,[I]),w.delayedLeave&&w.delayedLeave(),I[oa]=void 0)};A?E(A,[I,L]):L()},leave(I,A){const M=String(e.key);if(I[oa]&&I[oa](!0),n.isUnmounting)return A();R(d,[I]);let x=!1;const N=I[Vn]=L=>{x||(x=!0,A(),L?R(m,[I]):R(p,[I]),I[Vn]=void 0,O[M]===e&&delete O[M])};O[M]=e,h?E(h,[I,N]):N()},clone(I){const A=uo(I,t,n,r,s);return s&&s(A),A}};return w}function ml(e){if(Nc(e))return e=kr(e),e.children=null,e}function vh(e){if(!Nc(e))return Ny(e.type)&&e.children?Hy(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ge(n.default))return n.default()}}function fs(e,t){e.shapeFlag&6&&e.component?(e.transition=t,fs(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Lf(e,t=!1,n){let r=[],s=0;for(let i=0;i1)for(let i=0;iKi(p,t&&(fe(t)?t[m]:t),n,r,s));return}if(qs(r)&&!s){r.shapeFlag&512&&r.type.__asyncResolved&&r.component.subTree.component&&Ki(e,t,n,r.component.subTree);return}const i=r.shapeFlag&4?$c(r.component):r.el,o=s?null:i,{i:a,r:c}=e,l=t&&t.r,u=a.refs===Be?a.refs={}:a.refs,f=a.setupState,d=ue(f),h=f===Be?Qg:p=>Le(d,p);if(l!=null&&l!==c){if(_h(t),Ze(l))u[l]=null,h(l)&&(f[l]=null);else if(qe(l)){l.value=null;const p=t;p.k&&(u[p.k]=null)}}if(ge(c))Po(c,a,12,[o,u]);else{const p=Ze(c),m=qe(c);if(p||m){const y=()=>{if(e.f){const g=p?h(c)?f[c]:u[c]:c.value;if(s)fe(g)&&Ef(g,i);else if(fe(g))g.includes(i)||g.push(i);else if(p)u[c]=[i],h(c)&&(f[c]=u[c]);else{const v=[i];c.value=v,e.k&&(u[e.k]=v)}}else p?(u[c]=o,h(c)&&(f[c]=o)):m&&(c.value=o,e.k&&(u[e.k]=o))};if(o){const g=()=>{y(),za.delete(e)};g.id=-1,za.set(e,g),Rt(g,n)}else _h(e),y()}}}function _h(e){const t=za.get(e);t&&(t.flags|=8,za.delete(e))}Rc().requestIdleCallback;Rc().cancelIdleCallback;const qs=e=>!!e.type.__asyncLoader,Nc=e=>e.type.__isKeepAlive;function jy(e,t){qy(e,"a",t)}function zy(e,t){qy(e,"da",t)}function qy(e,t,n=wt){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(Lc(t,r,n),n){let s=n.parent;for(;s&&s.parent;)Nc(s.parent.vnode)&&z0(r,t,n,s),s=s.parent}}function z0(e,t,n,r){const s=Lc(t,e,r,!0);Gy(()=>{Ef(r[t],s)},n)}function Lc(e,t,n=wt,r=!1){if(n){const s=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{Xn();const a=Lo(n),c=mn(t,n,e,o);return a(),Jn(),c});return r?s.unshift(i):s.push(i),i}}const or=e=>(t,n=wt)=>{(!ho||e==="sp")&&Lc(e,(...r)=>t(...r),n)},Dc=or("bm"),Nr=or("m"),q0=or("bu"),Df=or("u"),yn=or("bum"),Gy=or("um"),G0=or("sp"),K0=or("rtg"),Y0=or("rtc");function X0(e,t=wt){Lc("ec",e,t)}const Ky="components";function J0(e,t){return Jy(Ky,e,!0,t)||e}const Yy=Symbol.for("v-ndc");function Xy(e){return Ze(e)?Jy(Ky,e,!1)||e:e||Yy}function Jy(e,t,n=!0,r=!1){const s=gt||wt;if(s){const i=s.type;{const a=Lw(i,!1);if(a&&(a===t||a===Pt(t)||a===pi(Pt(t))))return i}const o=bh(s[e]||i[e],t)||bh(s.appContext[e],t);return!o&&r?i:o}}function bh(e,t){return e&&(e[t]||e[Pt(t)]||e[pi(Pt(t))])}function Z0(e,t,n,r){let s;const i=n,o=fe(e);if(o||Ze(e)){const a=o&&jn(e);let c=!1,l=!1;a&&(c=!Gt(e),l=Zn(e),e=Ac(e)),s=new Array(e.length);for(let u=0,f=e.length;ut(a,c,void 0,i));else{const a=Object.keys(e);s=new Array(a.length);for(let c=0,l=a.length;c{const i=r.fn(...s);return i&&(i.key=r.key),i}:r.fn)}return e}function JB(e,t,n={},r,s){if(gt.ce||gt.parent&&qs(gt.parent)&>.parent.ce){const l=Object.keys(n).length>0;return t!=="default"&&(n.name=t),en(),xn(Ke,null,[F("slot",n,r)],l?-2:64)}let i=e[t];i&&i._c&&(i._d=!1),en();const o=i&&Zy(i(n)),a=n.key||o&&o.key,c=xn(Ke,{key:(a&&!ir(a)?a:`_${t}`)+(!o&&r?"_fb":"")},o||[],o&&e._===1?64:-2);return i&&i._c&&(i._d=!0),c}function Zy(e){return e.some(t=>Zs(t)?!(t.type===pt||t.type===Ke&&!Zy(t.children)):!0)?e:null}const du=e=>e?yv(e)?$c(e):du(e.parent):null,Yi=ot(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>du(e.parent),$root:e=>du(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>ev(e),$forceUpdate:e=>e.f||(e.f=()=>{Pf(e.update)}),$nextTick:e=>e.n||(e.n=dt.bind(e.proxy)),$watch:e=>H0.bind(e)}),gl=(e,t)=>e!==Be&&!e.__isScriptSetup&&Le(e,t),Q0={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:s,props:i,accessCache:o,type:a,appContext:c}=e;if(t[0]!=="$"){const d=o[t];if(d!==void 0)switch(d){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return i[t]}else{if(gl(r,t))return o[t]=1,r[t];if(s!==Be&&Le(s,t))return o[t]=2,s[t];if(Le(i,t))return o[t]=3,i[t];if(n!==Be&&Le(n,t))return o[t]=4,n[t];hu&&(o[t]=0)}}const l=Yi[t];let u,f;if(l)return t==="$attrs"&&Et(e.attrs,"get",""),l(e);if((u=a.__cssModules)&&(u=u[t]))return u;if(n!==Be&&Le(n,t))return o[t]=4,n[t];if(f=c.config.globalProperties,Le(f,t))return f[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:i}=e;return gl(s,t)?(s[t]=n,!0):r!==Be&&Le(r,t)?(r[t]=n,!0):Le(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,props:i,type:o}},a){let c;return!!(n[a]||e!==Be&&a[0]!=="$"&&Le(e,a)||gl(t,a)||Le(i,a)||Le(r,a)||Le(Yi,a)||Le(s.config.globalProperties,a)||(c=o.__cssModules)&&c[a])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Le(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Sh(e){return fe(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let hu=!0;function ew(e){const t=ev(e),n=e.proxy,r=e.ctx;hu=!1,t.beforeCreate&&Eh(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:o,watch:a,provide:c,inject:l,created:u,beforeMount:f,mounted:d,beforeUpdate:h,updated:p,activated:m,deactivated:y,beforeDestroy:g,beforeUnmount:v,destroyed:_,unmounted:T,render:O,renderTracked:R,renderTriggered:E,errorCaptured:w,serverPrefetch:I,expose:A,inheritAttrs:M,components:x,directives:N,filters:L}=t;if(l&&tw(l,r,null),o)for(const j in o){const D=o[j];ge(D)&&(r[j]=D.bind(n))}if(s){const j=s.call(n,n);He(j)&&(e.data=lt(j))}if(hu=!0,i)for(const j in i){const D=i[j],ae=ge(D)?D.bind(n,n):ge(D.get)?D.get.bind(n,n):On,q=!ge(D)&&ge(D.set)?D.set.bind(n):On,ce=U({get:ae,set:q});Object.defineProperty(r,j,{enumerable:!0,configurable:!0,get:()=>ce.value,set:le=>ce.value=le})}if(a)for(const j in a)Qy(a[j],r,n,j);if(c){const j=ge(c)?c.call(n):c;Reflect.ownKeys(j).forEach(D=>{Ct(D,j[D])})}u&&Eh(u,e,"c");function J(j,D){fe(D)?D.forEach(ae=>j(ae.bind(n))):D&&j(D.bind(n))}if(J(Dc,f),J(Nr,d),J(q0,h),J(Df,p),J(jy,m),J(zy,y),J(X0,w),J(Y0,R),J(K0,E),J(yn,v),J(Gy,T),J(G0,I),fe(A))if(A.length){const j=e.exposed||(e.exposed={});A.forEach(D=>{Object.defineProperty(j,D,{get:()=>n[D],set:ae=>n[D]=ae,enumerable:!0})})}else e.exposed||(e.exposed={});O&&e.render===On&&(e.render=O),M!=null&&(e.inheritAttrs=M),x&&(e.components=x),N&&(e.directives=N),I&&Wy(e)}function tw(e,t,n=On){fe(e)&&(e=pu(e));for(const r in e){const s=e[r];let i;He(s)?"default"in s?i=Oe(s.from||r,s.default,!0):i=Oe(s.from||r):i=Oe(s),qe(i)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[r]=i}}function Eh(e,t,n){mn(fe(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function Qy(e,t,n,r){let s=r.includes(".")?My(n,r):()=>n[r];if(Ze(e)){const i=t[e];ge(i)&&Se(s,i)}else if(ge(e))Se(s,e.bind(n));else if(He(e))if(fe(e))e.forEach(i=>Qy(i,t,n,r));else{const i=ge(e.handler)?e.handler.bind(n):t[e.handler];ge(i)&&Se(s,i,e)}}function ev(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,a=i.get(t);let c;return a?c=a:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(l=>qa(c,l,o,!0)),qa(c,t,o)),He(t)&&i.set(t,c),c}function qa(e,t,n,r=!1){const{mixins:s,extends:i}=t;i&&qa(e,i,n,!0),s&&s.forEach(o=>qa(e,o,n,!0));for(const o in t)if(!(r&&o==="expose")){const a=nw[o]||n&&n[o];e[o]=a?a(e[o],t[o]):t[o]}return e}const nw={data:wh,props:Th,emits:Th,methods:Ui,computed:Ui,beforeCreate:kt,created:kt,beforeMount:kt,mounted:kt,beforeUpdate:kt,updated:kt,beforeDestroy:kt,beforeUnmount:kt,destroyed:kt,unmounted:kt,activated:kt,deactivated:kt,errorCaptured:kt,serverPrefetch:kt,components:Ui,directives:Ui,watch:sw,provide:wh,inject:rw};function wh(e,t){return t?e?function(){return ot(ge(e)?e.call(this,this):e,ge(t)?t.call(this,this):t)}:t:e}function rw(e,t){return Ui(pu(e),pu(t))}function pu(e){if(fe(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Pt(t)}Modifiers`]||e[`${Pr(t)}Modifiers`];function cw(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||Be;let s=n;const i=t.startsWith("update:"),o=i&&aw(r,t.slice(7));o&&(o.trim&&(s=n.map(u=>Ze(u)?u.trim():u)),o.number&&(s=n.map(wf)));let a,c=r[a=ul(t)]||r[a=ul(Pt(t))];!c&&i&&(c=r[a=ul(Pr(t))]),c&&mn(c,e,6,s);const l=r[a+"Once"];if(l){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,mn(l,e,6,s)}}const lw=new WeakMap;function nv(e,t,n=!1){const r=n?lw:t.emitsCache,s=r.get(e);if(s!==void 0)return s;const i=e.emits;let o={},a=!1;if(!ge(e)){const c=l=>{const u=nv(l,t,!0);u&&(a=!0,ot(o,u))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!a?(He(e)&&r.set(e,null),null):(fe(i)?i.forEach(c=>o[c]=null):ot(o,i),He(e)&&r.set(e,o),o)}function Fc(e,t){return!e||!Cc(t)?!1:(t=t.slice(2).replace(/Once$/,""),Le(e,t[0].toLowerCase()+t.slice(1))||Le(e,Pr(t))||Le(e,t))}function Ch(e){const{type:t,vnode:n,proxy:r,withProxy:s,propsOptions:[i],slots:o,attrs:a,emit:c,render:l,renderCache:u,props:f,data:d,setupState:h,ctx:p,inheritAttrs:m}=e,y=ja(e);let g,v;try{if(n.shapeFlag&4){const T=s||r,O=T;g=Cn(l.call(O,T,u,f,h,d,p)),v=a}else{const T=t;g=Cn(T.length>1?T(f,{attrs:a,slots:o,emit:c}):T(f,null)),v=t.props?a:uw(a)}}catch(T){Xi.length=0,Mc(T,e,1),g=F(pt)}let _=g;if(v&&m!==!1){const T=Object.keys(v),{shapeFlag:O}=_;T.length&&O&7&&(i&&T.some(Sf)&&(v=fw(v,i)),_=kr(_,v,!1,!0))}return n.dirs&&(_=kr(_,null,!1,!0),_.dirs=_.dirs?_.dirs.concat(n.dirs):n.dirs),n.transition&&fs(_,n.transition),g=_,ja(y),g}const uw=e=>{let t;for(const n in e)(n==="class"||n==="style"||Cc(n))&&((t||(t={}))[n]=e[n]);return t},fw=(e,t)=>{const n={};for(const r in e)(!Sf(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function dw(e,t,n){const{props:r,children:s,component:i}=e,{props:o,children:a,patchFlag:c}=t,l=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?Ih(r,o,l):!!o;if(c&8){const u=t.dynamicProps;for(let f=0;fObject.create(rv),iv=e=>Object.getPrototypeOf(e)===rv;function pw(e,t,n,r=!1){const s={},i=sv();e.propsDefaults=Object.create(null),ov(e,t,s,i);for(const o in e.propsOptions[0])o in s||(s[o]=void 0);n?e.props=r?s:wy(s):e.type.props?e.props=s:e.props=i,e.attrs=i}function mw(e,t,n,r){const{props:s,attrs:i,vnode:{patchFlag:o}}=e,a=ue(s),[c]=e.propsOptions;let l=!1;if((r||o>0)&&!(o&16)){if(o&8){const u=e.vnode.dynamicProps;for(let f=0;f{c=!0;const[d,h]=av(f,t,!0);ot(o,d),h&&a.push(...h)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!i&&!c)return He(e)&&r.set(e,Ws),Ws;if(fe(i))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",$f=e=>fe(e)?e.map(Cn):[Cn(e)],yw=(e,t,n)=>{if(t._n)return t;const r=ft((...s)=>$f(t(...s)),n);return r._c=!1,r},cv=(e,t,n)=>{const r=e._ctx;for(const s in e){if(Ff(s))continue;const i=e[s];if(ge(i))t[s]=yw(s,i,r);else if(i!=null){const o=$f(i);t[s]=()=>o}}},lv=(e,t)=>{const n=$f(t);e.slots.default=()=>n},uv=(e,t,n)=>{for(const r in t)(n||!Ff(r))&&(e[r]=t[r])},vw=(e,t,n)=>{const r=e.slots=sv();if(e.vnode.shapeFlag&32){const s=t._;s?(uv(r,t,n),n&&sy(r,"_",s,!0)):cv(t,r)}else t&&lv(e,t)},_w=(e,t,n)=>{const{vnode:r,slots:s}=e;let i=!0,o=Be;if(r.shapeFlag&32){const a=t._;a?n&&a===1?i=!1:uv(s,t,n):(i=!t.$stable,cv(t,s)),o=t}else t&&(lv(e,t),o={default:1});if(i)for(const a in s)!Ff(a)&&o[a]==null&&delete s[a]},Rt=Tw;function bw(e){return Sw(e)}function Sw(e,t){const n=Rc();n.__VUE__=!0;const{insert:r,remove:s,patchProp:i,createElement:o,createText:a,createComment:c,setText:l,setElementText:u,parentNode:f,nextSibling:d,setScopeId:h=On,insertStaticContent:p}=e,m=(b,S,k,P=null,H=null,$=null,ee=void 0,Z=null,B=!!S.dynamicChildren)=>{if(b===S)return;b&&!Yr(b,S)&&(P=C(b),le(b,H,$,!0),b=null),S.patchFlag===-2&&(B=!1,S.dynamicChildren=null);const{type:V,ref:K,shapeFlag:Y}=S;switch(V){case No:y(b,S,k,P);break;case pt:g(b,S,k,P);break;case vl:b==null&&v(S,k,P,ee);break;case Ke:x(b,S,k,P,H,$,ee,Z,B);break;default:Y&1?O(b,S,k,P,H,$,ee,Z,B):Y&6?N(b,S,k,P,H,$,ee,Z,B):(Y&64||Y&128)&&V.process(b,S,k,P,H,$,ee,Z,B,re)}K!=null&&H?Ki(K,b&&b.ref,$,S||b,!S):K==null&&b&&b.ref!=null&&Ki(b.ref,null,$,b,!0)},y=(b,S,k,P)=>{if(b==null)r(S.el=a(S.children),k,P);else{const H=S.el=b.el;S.children!==b.children&&l(H,S.children)}},g=(b,S,k,P)=>{b==null?r(S.el=c(S.children||""),k,P):S.el=b.el},v=(b,S,k,P)=>{[b.el,b.anchor]=p(b.children,S,k,P,b.el,b.anchor)},_=({el:b,anchor:S},k,P)=>{let H;for(;b&&b!==S;)H=d(b),r(b,k,P),b=H;r(S,k,P)},T=({el:b,anchor:S})=>{let k;for(;b&&b!==S;)k=d(b),s(b),b=k;s(S)},O=(b,S,k,P,H,$,ee,Z,B)=>{if(S.type==="svg"?ee="svg":S.type==="math"&&(ee="mathml"),b==null)R(S,k,P,H,$,ee,Z,B);else{const V=b.el&&b.el._isVueCE?b.el:null;try{V&&V._beginPatch(),I(b,S,H,$,ee,Z,B)}finally{V&&V._endPatch()}}},R=(b,S,k,P,H,$,ee,Z)=>{let B,V;const{props:K,shapeFlag:Y,transition:se,dirs:te}=b;if(B=b.el=o(b.type,$,K&&K.is,K),Y&8?u(B,b.children):Y&16&&w(b.children,B,null,P,H,yl(b,$),ee,Z),te&&Ur(b,null,P,"created"),E(B,b,b.scopeId,ee,P),K){for(const Ve in K)Ve!=="value"&&!ji(Ve)&&i(B,Ve,null,K[Ve],$,P);"value"in K&&i(B,"value",null,K.value,$),(V=K.onVnodeBeforeMount)&&Sn(V,P,b)}te&&Ur(b,null,P,"beforeMount");const Te=Ew(H,se);Te&&se.beforeEnter(B),r(B,S,k),((V=K&&K.onVnodeMounted)||Te||te)&&Rt(()=>{V&&Sn(V,P,b),Te&&se.enter(B),te&&Ur(b,null,P,"mounted")},H)},E=(b,S,k,P,H)=>{if(k&&h(b,k),P)for(let $=0;${for(let V=B;V{const Z=S.el=b.el;let{patchFlag:B,dynamicChildren:V,dirs:K}=S;B|=b.patchFlag&16;const Y=b.props||Be,se=S.props||Be;let te;if(k&&Wr(k,!1),(te=se.onVnodeBeforeUpdate)&&Sn(te,k,S,b),K&&Ur(S,b,k,"beforeUpdate"),k&&Wr(k,!0),(Y.innerHTML&&se.innerHTML==null||Y.textContent&&se.textContent==null)&&u(Z,""),V?A(b.dynamicChildren,V,Z,k,P,yl(S,H),$):ee||D(b,S,Z,null,k,P,yl(S,H),$,!1),B>0){if(B&16)M(Z,Y,se,k,H);else if(B&2&&Y.class!==se.class&&i(Z,"class",null,se.class,H),B&4&&i(Z,"style",Y.style,se.style,H),B&8){const Te=S.dynamicProps;for(let Ve=0;Ve{te&&Sn(te,k,S,b),K&&Ur(S,b,k,"updated")},P)},A=(b,S,k,P,H,$,ee)=>{for(let Z=0;Z{if(S!==k){if(S!==Be)for(const $ in S)!ji($)&&!($ in k)&&i(b,$,S[$],null,H,P);for(const $ in k){if(ji($))continue;const ee=k[$],Z=S[$];ee!==Z&&$!=="value"&&i(b,$,Z,ee,H,P)}"value"in k&&i(b,"value",S.value,k.value,H)}},x=(b,S,k,P,H,$,ee,Z,B)=>{const V=S.el=b?b.el:a(""),K=S.anchor=b?b.anchor:a("");let{patchFlag:Y,dynamicChildren:se,slotScopeIds:te}=S;te&&(Z=Z?Z.concat(te):te),b==null?(r(V,k,P),r(K,k,P),w(S.children||[],k,K,H,$,ee,Z,B)):Y>0&&Y&64&&se&&b.dynamicChildren&&b.dynamicChildren.length===se.length?(A(b.dynamicChildren,se,k,H,$,ee,Z),(S.key!=null||H&&S===H.subTree)&&Bf(b,S,!0)):D(b,S,k,K,H,$,ee,Z,B)},N=(b,S,k,P,H,$,ee,Z,B)=>{S.slotScopeIds=Z,b==null?S.shapeFlag&512?H.ctx.activate(S,k,P,ee,B):L(S,k,P,H,$,ee,B):G(b,S,B)},L=(b,S,k,P,H,$,ee)=>{const Z=b.component=Aw(b,P,H);if(Nc(b)&&(Z.ctx.renderer=re),Ow(Z,!1,ee),Z.asyncDep){if(H&&H.registerDep(Z,J,ee),!b.el){const B=Z.subTree=F(pt);g(null,B,S,k),b.placeholder=B.el}}else J(Z,b,S,k,H,$,ee)},G=(b,S,k)=>{const P=S.component=b.component;if(dw(b,S,k))if(P.asyncDep&&!P.asyncResolved){j(P,S,k);return}else P.next=S,P.update();else S.el=b.el,P.vnode=S},J=(b,S,k,P,H,$,ee)=>{const Z=()=>{if(b.isMounted){let{next:Y,bu:se,u:te,parent:Te,vnode:Ve}=b;{const _n=fv(b);if(_n){Y&&(Y.el=Ve.el,j(b,Y,ee)),_n.asyncDep.then(()=>{b.isUnmounted||Z()});return}}let $e=Y,Nt;Wr(b,!1),Y?(Y.el=Ve.el,j(b,Y,ee)):Y=Ve,se&&Sa(se),(Nt=Y.props&&Y.props.onVnodeBeforeUpdate)&&Sn(Nt,Te,Y,Ve),Wr(b,!0);const Lt=Ch(b),vn=b.subTree;b.subTree=Lt,m(vn,Lt,f(vn.el),C(vn),b,H,$),Y.el=Lt.el,$e===null&&hw(b,Lt.el),te&&Rt(te,H),(Nt=Y.props&&Y.props.onVnodeUpdated)&&Rt(()=>Sn(Nt,Te,Y,Ve),H)}else{let Y;const{el:se,props:te}=S,{bm:Te,m:Ve,parent:$e,root:Nt,type:Lt}=b,vn=qs(S);Wr(b,!1),Te&&Sa(Te),!vn&&(Y=te&&te.onVnodeBeforeMount)&&Sn(Y,$e,S),Wr(b,!0);{Nt.ce&&Nt.ce._def.shadowRoot!==!1&&Nt.ce._injectChildStyle(Lt);const _n=b.subTree=Ch(b);m(null,_n,k,P,b,H,$),S.el=_n.el}if(Ve&&Rt(Ve,H),!vn&&(Y=te&&te.onVnodeMounted)){const _n=S;Rt(()=>Sn(Y,$e,_n),H)}(S.shapeFlag&256||$e&&qs($e.vnode)&&$e.vnode.shapeFlag&256)&&b.a&&Rt(b.a,H),b.isMounted=!0,S=k=P=null}};b.scope.on();const B=b.effect=new ly(Z);b.scope.off();const V=b.update=B.run.bind(B),K=b.job=B.runIfDirty.bind(B);K.i=b,K.id=b.uid,B.scheduler=()=>Pf(K),Wr(b,!0),V()},j=(b,S,k)=>{S.component=b;const P=b.vnode.props;b.vnode=S,b.next=null,mw(b,S.props,P,k),_w(b,S.children,k),Xn(),ph(b),Jn()},D=(b,S,k,P,H,$,ee,Z,B=!1)=>{const V=b&&b.children,K=b?b.shapeFlag:0,Y=S.children,{patchFlag:se,shapeFlag:te}=S;if(se>0){if(se&128){q(V,Y,k,P,H,$,ee,Z,B);return}else if(se&256){ae(V,Y,k,P,H,$,ee,Z,B);return}}te&8?(K&16&&Ge(V,H,$),Y!==V&&u(k,Y)):K&16?te&16?q(V,Y,k,P,H,$,ee,Z,B):Ge(V,H,$,!0):(K&8&&u(k,""),te&16&&w(Y,k,P,H,$,ee,Z,B))},ae=(b,S,k,P,H,$,ee,Z,B)=>{b=b||Ws,S=S||Ws;const V=b.length,K=S.length,Y=Math.min(V,K);let se;for(se=0;seK?Ge(b,H,$,!0,!1,Y):w(S,k,P,H,$,ee,Z,B,Y)},q=(b,S,k,P,H,$,ee,Z,B)=>{let V=0;const K=S.length;let Y=b.length-1,se=K-1;for(;V<=Y&&V<=se;){const te=b[V],Te=S[V]=B?vr(S[V]):Cn(S[V]);if(Yr(te,Te))m(te,Te,k,null,H,$,ee,Z,B);else break;V++}for(;V<=Y&&V<=se;){const te=b[Y],Te=S[se]=B?vr(S[se]):Cn(S[se]);if(Yr(te,Te))m(te,Te,k,null,H,$,ee,Z,B);else break;Y--,se--}if(V>Y){if(V<=se){const te=se+1,Te=tese)for(;V<=Y;)le(b[V],H,$,!0),V++;else{const te=V,Te=V,Ve=new Map;for(V=Te;V<=se;V++){const Wt=S[V]=B?vr(S[V]):Cn(S[V]);Wt.key!=null&&Ve.set(Wt.key,V)}let $e,Nt=0;const Lt=se-Te+1;let vn=!1,_n=0;const Pi=new Array(Lt);for(V=0;V=Lt){le(Wt,H,$,!0);continue}let bn;if(Wt.key!=null)bn=Ve.get(Wt.key);else for($e=Te;$e<=se;$e++)if(Pi[$e-Te]===0&&Yr(Wt,S[$e])){bn=$e;break}bn===void 0?le(Wt,H,$,!0):(Pi[bn-Te]=V+1,bn>=_n?_n=bn:vn=!0,m(Wt,S[bn],k,null,H,$,ee,Z,B),Nt++)}const ah=vn?ww(Pi):Ws;for($e=ah.length-1,V=Lt-1;V>=0;V--){const Wt=Te+V,bn=S[Wt],ch=S[Wt+1],lh=Wt+1{const{el:$,type:ee,transition:Z,children:B,shapeFlag:V}=b;if(V&6){ce(b.component.subTree,S,k,P);return}if(V&128){b.suspense.move(S,k,P);return}if(V&64){ee.move(b,S,k,re);return}if(ee===Ke){r($,S,k);for(let Y=0;YZ.enter($),H);else{const{leave:Y,delayLeave:se,afterLeave:te}=Z,Te=()=>{b.ctx.isUnmounted?s($):r($,S,k)},Ve=()=>{$._isLeaving&&$[Vn](!0),Y($,()=>{Te(),te&&te()})};se?se($,Te,Ve):Ve()}else r($,S,k)},le=(b,S,k,P=!1,H=!1)=>{const{type:$,props:ee,ref:Z,children:B,dynamicChildren:V,shapeFlag:K,patchFlag:Y,dirs:se,cacheIndex:te}=b;if(Y===-2&&(H=!1),Z!=null&&(Xn(),Ki(Z,null,k,b,!0),Jn()),te!=null&&(S.renderCache[te]=void 0),K&256){S.ctx.deactivate(b);return}const Te=K&1&&se,Ve=!qs(b);let $e;if(Ve&&($e=ee&&ee.onVnodeBeforeUnmount)&&Sn($e,S,b),K&6)Fe(b.component,k,P);else{if(K&128){b.suspense.unmount(k,P);return}Te&&Ur(b,null,S,"beforeUnmount"),K&64?b.type.remove(b,S,k,re,P):V&&!V.hasOnce&&($!==Ke||Y>0&&Y&64)?Ge(V,S,k,!1,!0):($===Ke&&Y&384||!H&&K&16)&&Ge(B,S,k),P&&ve(b)}(Ve&&($e=ee&&ee.onVnodeUnmounted)||Te)&&Rt(()=>{$e&&Sn($e,S,b),Te&&Ur(b,null,S,"unmounted")},k)},ve=b=>{const{type:S,el:k,anchor:P,transition:H}=b;if(S===Ke){Me(k,P);return}if(S===vl){T(b);return}const $=()=>{s(k),H&&!H.persisted&&H.afterLeave&&H.afterLeave()};if(b.shapeFlag&1&&H&&!H.persisted){const{leave:ee,delayLeave:Z}=H,B=()=>ee(k,$);Z?Z(b.el,$,B):B()}else $()},Me=(b,S)=>{let k;for(;b!==S;)k=d(b),s(b),b=k;s(S)},Fe=(b,S,k)=>{const{bum:P,scope:H,job:$,subTree:ee,um:Z,m:B,a:V}=b;xh(B),xh(V),P&&Sa(P),H.stop(),$&&($.flags|=8,le(ee,b,S,k)),Z&&Rt(Z,S),Rt(()=>{b.isUnmounted=!0},S)},Ge=(b,S,k,P=!1,H=!1,$=0)=>{for(let ee=$;ee{if(b.shapeFlag&6)return C(b.component.subTree);if(b.shapeFlag&128)return b.suspense.next();const S=d(b.anchor||b.el),k=S&&S[Py];return k?d(k):S};let W=!1;const z=(b,S,k)=>{let P;b==null?S._vnode&&(le(S._vnode,null,null,!0),P=S._vnode.component):m(S._vnode||null,b,S,null,null,null,k),S._vnode=b,W||(W=!0,ph(P),Ry(),W=!1)},re={p:m,um:le,m:ce,r:ve,mt:L,mc:w,pc:D,pbc:A,n:C,o:e};return{render:z,hydrate:void 0,createApp:ow(z)}}function yl({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Wr({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Ew(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Bf(e,t,n=!1){const r=e.children,s=t.children;if(fe(r)&&fe(s))for(let i=0;i>1,e[n[a]]0&&(t[r]=n[i-1]),n[i]=r)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function fv(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:fv(t)}function xh(e){if(e)for(let t=0;te.__isSuspense;function Tw(e,t){t&&t.pendingBranch?fe(e)?t.effects.push(...e):t.effects.push(e):D0(e)}const Ke=Symbol.for("v-fgt"),No=Symbol.for("v-txt"),pt=Symbol.for("v-cmt"),vl=Symbol.for("v-stc"),Xi=[];let qt=null;function en(e=!1){Xi.push(qt=e?null:[])}function Cw(){Xi.pop(),qt=Xi[Xi.length-1]||null}let fo=1;function Ga(e,t=!1){fo+=e,e<0&&qt&&t&&(qt.hasOnce=!0)}function pv(e){return e.dynamicChildren=fo>0?qt||Ws:null,Cw(),fo>0&&qt&&qt.push(e),e}function mv(e,t,n,r,s,i){return pv(ne(e,t,n,r,s,i,!0))}function xn(e,t,n,r,s){return pv(F(e,t,n,r,s,!0))}function Zs(e){return e?e.__v_isVNode===!0:!1}function Yr(e,t){return e.type===t.type&&e.key===t.key}const gv=({key:e})=>e??null,wa=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?Ze(e)||qe(e)||ge(e)?{i:gt,r:e,k:t,f:!!n}:e:null);function ne(e,t=null,n=null,r=0,s=null,i=e===Ke?0:1,o=!1,a=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&gv(t),ref:t&&wa(t),scopeId:Oy,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:gt};return a?(Hf(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=Ze(n)?8:16),fo>0&&!o&&qt&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&qt.push(c),c}const F=Iw;function Iw(e,t=null,n=null,r=0,s=null,i=!1){if((!e||e===Yy)&&(e=pt),Zs(e)){const a=kr(e,t,!0);return n&&Hf(a,n),fo>0&&!i&&qt&&(a.shapeFlag&6?qt[qt.indexOf(e)]=a:qt.push(a)),a.patchFlag=-2,a}if(Dw(e)&&(e=e.__vccOpts),t){t=kw(t);let{class:a,style:c}=t;a&&!Ze(a)&&(t.class=Re(a)),He(c)&&(Oc(c)&&!fe(c)&&(c=ot({},c)),t.style=ze(c))}const o=Ze(e)?1:hv(e)?128:Ny(e)?64:He(e)?4:ge(e)?2:0;return ne(e,t,n,r,s,o,i,!0)}function kw(e){return e?Oc(e)||iv(e)?ot({},e):e:null}function kr(e,t,n=!1,r=!1){const{props:s,ref:i,patchFlag:o,children:a,transition:c}=e,l=t?Ye(s||{},t):s,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&gv(l),ref:t&&t.ref?n&&i?fe(i)?i.concat(wa(t)):[i,wa(t)]:wa(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ke?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&kr(e.ssContent),ssFallback:e.ssFallback&&kr(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&fs(u,c.clone(u)),u}function Wi(e=" ",t=0){return F(No,null,e,t)}function gu(e="",t=!1){return t?(en(),xn(pt,null,e)):F(pt,null,e)}function Cn(e){return e==null||typeof e=="boolean"?F(pt):fe(e)?F(Ke,null,e.slice()):Zs(e)?vr(e):F(No,null,String(e))}function vr(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:kr(e)}function Hf(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(fe(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),Hf(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!iv(t)?t._ctx=gt:s===3&>&&(gt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else ge(t)?(t={default:t,_ctx:gt},n=32):(t=String(t),r&64?(n=16,t=[Wi(t)]):n=8);e.children=t,e.shapeFlag|=n}function Ye(...e){const t={};for(let n=0;nwt||gt;let Ka,yu;{const e=Rc(),t=(n,r)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(r),i=>{s.length>1?s.forEach(o=>o(i)):s[0](i)}};Ka=t("__VUE_INSTANCE_SETTERS__",n=>wt=n),yu=t("__VUE_SSR_SETTERS__",n=>ho=n)}const Lo=e=>{const t=wt;return Ka(e),e.scope.on(),()=>{e.scope.off(),Ka(t)}},Rh=()=>{wt&&wt.scope.off(),Ka(null)};function yv(e){return e.vnode.shapeFlag&4}let ho=!1;function Ow(e,t=!1,n=!1){t&&yu(t);const{props:r,children:s}=e.vnode,i=yv(e);pw(e,r,i,t),vw(e,s,n||t);const o=i?Mw(e,t):void 0;return t&&yu(!1),o}function Mw(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Q0);const{setup:r}=n;if(r){Xn();const s=e.setupContext=r.length>1?Nw(e):null,i=Lo(e),o=Po(r,e,0,[e.props,s]),a=ty(o);if(Jn(),i(),(a||e.sp)&&!qs(e)&&Wy(e),a){if(o.then(Rh,Rh),t)return o.then(c=>{Ah(e,c)}).catch(c=>{Mc(c,e,0)});e.asyncDep=o}else Ah(e,o)}else vv(e)}function Ah(e,t,n){ge(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:He(t)&&(e.setupState=Cy(t)),vv(e)}function vv(e,t,n){const r=e.type;e.render||(e.render=r.render||On);{const s=Lo(e);Xn();try{ew(e)}finally{Jn(),s()}}}const Pw={get(e,t){return Et(e,"get",""),e[t]}};function Nw(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Pw),slots:e.slots,emit:e.emit,expose:t}}function $c(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Cy(Of(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Yi)return Yi[n](e)},has(t,n){return n in t||n in Yi}})):e.proxy}function Lw(e,t=!0){return ge(e)?e.displayName||e.name:e.name||t&&e.__name}function Dw(e){return ge(e)&&"__vccOpts"in e}const U=(e,t)=>O0(e,t,ho);function Lr(e,t,n){try{Ga(-1);const r=arguments.length;return r===2?He(t)&&!fe(t)?Zs(t)?F(e,null,[t]):F(e,t):F(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&Zs(n)&&(n=[n]),F(e,t,n))}finally{Ga(1)}}const Fw="3.5.27";/** -* @vue/runtime-dom v3.5.27 -* (c) 2018-present Yuxi (Evan) You and Vue contributors -* @license MIT -**/let vu;const Oh=typeof window<"u"&&window.trustedTypes;if(Oh)try{vu=Oh.createPolicy("vue",{createHTML:e=>e})}catch{}const _v=vu?e=>vu.createHTML(e):e=>e,$w="http://www.w3.org/2000/svg",Bw="http://www.w3.org/1998/Math/MathML",Hn=typeof document<"u"?document:null,Mh=Hn&&Hn.createElement("template"),Hw={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t==="svg"?Hn.createElementNS($w,e):t==="mathml"?Hn.createElementNS(Bw,e):n?Hn.createElement(e,{is:n}):Hn.createElement(e);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>Hn.createTextNode(e),createComment:e=>Hn.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Hn.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,i){const o=n?n.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===i||!(s=s.nextSibling)););else{Mh.innerHTML=_v(r==="svg"?`${e}`:r==="mathml"?`${e}`:e);const a=Mh.content;if(r==="svg"||r==="mathml"){const c=a.firstChild;for(;c.firstChild;)a.appendChild(c.firstChild);a.removeChild(c)}t.insertBefore(a,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},ur="transition",Li="animation",Qs=Symbol("_vtc"),bv={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},Sv=ot({},$y,bv),Vw=e=>(e.displayName="Transition",e.props=Sv,e),xr=Vw((e,{slots:t})=>Lr(j0,Ev(e),t)),jr=(e,t=[])=>{fe(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ph=e=>e?fe(e)?e.some(t=>t.length>1):e.length>1:!1;function Ev(e){const t={};for(const x in e)x in bv||(t[x]=e[x]);if(e.css===!1)return t;const{name:n="v",type:r,duration:s,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:l=o,appearToClass:u=a,leaveFromClass:f=`${n}-leave-from`,leaveActiveClass:d=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,p=Uw(s),m=p&&p[0],y=p&&p[1],{onBeforeEnter:g,onEnter:v,onEnterCancelled:_,onLeave:T,onLeaveCancelled:O,onBeforeAppear:R=g,onAppear:E=v,onAppearCancelled:w=_}=t,I=(x,N,L,G)=>{x._enterCancelled=G,hr(x,N?u:a),hr(x,N?l:o),L&&L()},A=(x,N)=>{x._isLeaving=!1,hr(x,f),hr(x,h),hr(x,d),N&&N()},M=x=>(N,L)=>{const G=x?E:v,J=()=>I(N,x,L);jr(G,[N,J]),Nh(()=>{hr(N,x?c:i),En(N,x?u:a),Ph(G)||Lh(N,r,m,J)})};return ot(t,{onBeforeEnter(x){jr(g,[x]),En(x,i),En(x,o)},onBeforeAppear(x){jr(R,[x]),En(x,c),En(x,l)},onEnter:M(!1),onAppear:M(!0),onLeave(x,N){x._isLeaving=!0;const L=()=>A(x,N);En(x,f),x._enterCancelled?(En(x,d),_u(x)):(_u(x),En(x,d)),Nh(()=>{x._isLeaving&&(hr(x,f),En(x,h),Ph(T)||Lh(x,r,y,L))}),jr(T,[x,L])},onEnterCancelled(x){I(x,!1,void 0,!0),jr(_,[x])},onAppearCancelled(x){I(x,!0,void 0,!0),jr(w,[x])},onLeaveCancelled(x){A(x),jr(O,[x])}})}function Uw(e){if(e==null)return null;if(He(e))return[_l(e.enter),_l(e.leave)];{const t=_l(e);return[t,t]}}function _l(e){return e0(e)}function En(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Qs]||(e[Qs]=new Set)).add(t)}function hr(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[Qs];n&&(n.delete(t),n.size||(e[Qs]=void 0))}function Nh(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let Ww=0;function Lh(e,t,n,r){const s=e._endId=++Ww,i=()=>{s===e._endId&&r()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:a,propCount:c}=wv(e,t);if(!o)return r();const l=o+"end";let u=0;const f=()=>{e.removeEventListener(l,d),i()},d=h=>{h.target===e&&++u>=c&&f()};setTimeout(()=>{u(n[p]||"").split(", "),s=r(`${ur}Delay`),i=r(`${ur}Duration`),o=Dh(s,i),a=r(`${Li}Delay`),c=r(`${Li}Duration`),l=Dh(a,c);let u=null,f=0,d=0;t===ur?o>0&&(u=ur,f=o,d=i.length):t===Li?l>0&&(u=Li,f=l,d=c.length):(f=Math.max(o,l),u=f>0?o>l?ur:Li:null,d=u?u===ur?i.length:c.length:0);const h=u===ur&&/\b(?:transform|all)(?:,|$)/.test(r(`${ur}Property`).toString());return{type:u,timeout:f,propCount:d,hasTransform:h}}function Dh(e,t){for(;e.lengthFh(n)+Fh(e[r])))}function Fh(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function _u(e){return(e?e.ownerDocument:document).body.offsetHeight}function jw(e,t,n){const r=e[Qs];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Ya=Symbol("_vod"),Tv=Symbol("_vsh"),Vf={name:"show",beforeMount(e,{value:t},{transition:n}){e[Ya]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Di(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),Di(e,!0),r.enter(e)):r.leave(e,()=>{Di(e,!1)}):Di(e,t))},beforeUnmount(e,{value:t}){Di(e,t)}};function Di(e,t){e.style.display=t?e[Ya]:"none",e[Tv]=!t}const zw=Symbol(""),qw=/(?:^|;)\s*display\s*:/;function Gw(e,t,n){const r=e.style,s=Ze(n);let i=!1;if(n&&!s){if(t)if(Ze(t))for(const o of t.split(";")){const a=o.slice(0,o.indexOf(":")).trim();n[a]==null&&Ta(r,a,"")}else for(const o in t)n[o]==null&&Ta(r,o,"");for(const o in n)o==="display"&&(i=!0),Ta(r,o,n[o])}else if(s){if(t!==n){const o=r[zw];o&&(n+=";"+o),r.cssText=n,i=qw.test(n)}}else t&&e.removeAttribute("style");Ya in e&&(e[Ya]=i?r.display:"",e[Tv]&&(r.display="none"))}const $h=/\s*!important$/;function Ta(e,t,n){if(fe(n))n.forEach(r=>Ta(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=Kw(e,t);$h.test(n)?e.setProperty(Pr(r),n.replace($h,""),"important"):e[r]=n}}const Bh=["Webkit","Moz","ms"],bl={};function Kw(e,t){const n=bl[t];if(n)return n;let r=Pt(t);if(r!=="filter"&&r in e)return bl[t]=r;r=pi(r);for(let s=0;sSl||(Zw.then(()=>Sl=0),Sl=Date.now());function eT(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;mn(tT(r,n.value),t,5,[r])};return n.value=e,n.attached=Qw(),n}function tT(e,t){if(fe(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const zh=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,nT=(e,t,n,r,s,i)=>{const o=s==="svg";t==="class"?jw(e,r,o):t==="style"?Gw(e,n,r):Cc(t)?Sf(t)||Xw(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):rT(e,t,r,o))?(Uh(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Vh(e,t,r,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!Ze(r))?Uh(e,Pt(t),r,i,t):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Vh(e,t,r,o))};function rT(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&zh(t)&&ge(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return zh(t)&&Ze(n)?!1:t in e}const Cv=new WeakMap,Iv=new WeakMap,Xa=Symbol("_moveCb"),qh=Symbol("_enterCb"),sT=e=>(delete e.props.mode,e),iT=sT({name:"TransitionGroup",props:ot({},Sv,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=mi(),r=Fy();let s,i;return Df(()=>{if(!s.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!lT(s[0].el,n.vnode.el,o)){s=[];return}s.forEach(oT),s.forEach(aT);const a=s.filter(cT);_u(n.vnode.el),a.forEach(c=>{const l=c.el,u=l.style;En(l,o),u.transform=u.webkitTransform=u.transitionDuration="";const f=l[Xa]=d=>{d&&d.target!==l||(!d||d.propertyName.endsWith("transform"))&&(l.removeEventListener("transitionend",f),l[Xa]=null,hr(l,o))};l.addEventListener("transitionend",f)}),s=[]}),()=>{const o=ue(e),a=Ev(o);let c=o.tag||Ke;if(s=[],i)for(let l=0;l{a.split(/\s+/).forEach(c=>c&&r.classList.remove(c))}),n.split(/\s+/).forEach(a=>a&&r.classList.add(a)),r.style.display="none";const i=t.nodeType===1?t:t.parentNode;i.appendChild(r);const{hasTransform:o}=wv(r);return i.removeChild(r),o}const Gh=e=>{const t=e.props["onUpdate:modelValue"]||!1;return fe(t)?n=>Sa(t,n):t};function uT(e){e.target.composing=!0}function Kh(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const El=Symbol("_assign");function Yh(e,t,n){return t&&(e=e.trim()),n&&(e=wf(e)),e}const ZB={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e[El]=Gh(s);const i=r||s.props&&s.props.type==="number";Os(e,t?"change":"input",o=>{o.target.composing||e[El](Yh(e.value,n,i))}),(n||i)&&Os(e,"change",()=>{e.value=Yh(e.value,n,i)}),t||(Os(e,"compositionstart",uT),Os(e,"compositionend",Kh),Os(e,"change",Kh))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:s,number:i}},o){if(e[El]=Gh(o),e.composing)return;const a=(i||e.type==="number")&&!/^0\d/.test(e.value)?wf(e.value):e.value,c=t??"";a!==c&&(document.activeElement===e&&e.type!=="range"&&(r&&t===n||s&&e.value.trim()===c)||(e.value=c))}},fT=["ctrl","shift","alt","meta"],dT={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>fT.some(n=>e[`${n}Key`]&&!t.includes(n))},QB=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(s,...i)=>{for(let o=0;o{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=s=>{if(!("key"in s))return;const i=Pr(s.key);if(t.some(o=>o===i||hT[o]===i))return e(s)})},pT=ot({patchProp:nT},Hw);let Xh;function mT(){return Xh||(Xh=bw(pT))}const gT=(...e)=>{const t=mT().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=vT(r);if(!s)return;const i=t._component;!ge(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const o=n(s,!1,yT(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),o},t};function yT(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function vT(e){return Ze(e)?document.querySelector(e):e}function tH(e){}function kv(e,t){t=Array.isArray(t)?t.slice(0,-1).map(n=>`'${n}'`).join(", ")+` or '${t.at(-1)}'`:`'${t}'`}const Xe=typeof window<"u",Wf=Xe&&"IntersectionObserver"in window,_T=Xe&&("ontouchstart"in window||window.navigator.maxTouchPoints>0),xv=Xe&&"matchMedia"in window&&typeof window.matchMedia=="function",po=()=>xv&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;function Jh(e,t,n){bT(e,t),t.set(e,n)}function bT(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function Zh(e,t,n){return e.set(Rv(e,t),n),n}function Dn(e,t){return e.get(Rv(e,t))}function Rv(e,t,n){if(typeof e=="function"?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}function Av(e,t,n){const r=t.length-1;if(r<0)return e===void 0?n:e;for(let s=0;s"u"?n:s}if(typeof t=="string")return bu(e,t,n);if(Array.isArray(t))return Av(e,t,n);if(typeof t!="function")return n;const r=t(e,n);return typeof r>"u"?n:r}function Ov(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Array.from({length:e},(n,r)=>t+r)}function pe(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"px";if(e==null||e==="")return;const n=Number(e);return isNaN(n)?String(e):isFinite(n)?`${n}${t}`:void 0}function Su(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Qh(e){let t;return e!==null&&typeof e=="object"&&((t=Object.getPrototypeOf(e))===Object.prototype||t===null)}function jf(e){if(e&&"$el"in e){const t=e.$el;return(t==null?void 0:t.nodeType)===Node.TEXT_NODE?t.nextElementSibling:t}return e}const nH=Object.freeze({enter:"Enter",tab:"Tab",delete:"Delete",esc:"Escape",space:"Space",up:"ArrowUp",down:"ArrowDown",left:"ArrowLeft",right:"ArrowRight",end:"End",home:"Home",del:"Delete",backspace:"Backspace",insert:"Insert",pageup:"PageUp",pagedown:"PageDown",shift:"Shift"});function rH(e){return Object.keys(e)}function wl(e,t){return t.every(n=>e.hasOwnProperty(n))}function zf(e,t){const n={};for(const r of t)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function ep(e,t,n){const r=Object.create(null),s=Object.create(null);for(const i in e)t.some(o=>o instanceof RegExp?o.test(i):o===i)?r[i]=e[i]:s[i]=e[i];return[r,s]}function ys(e,t){const n={...e};return t.forEach(r=>delete n[r]),n}const Mv=/^on[^a-z]/,Pv=e=>Mv.test(e),ST=["onAfterscriptexecute","onAnimationcancel","onAnimationend","onAnimationiteration","onAnimationstart","onAuxclick","onBeforeinput","onBeforescriptexecute","onChange","onClick","onCompositionend","onCompositionstart","onCompositionupdate","onContextmenu","onCopy","onCut","onDblclick","onFocusin","onFocusout","onFullscreenchange","onFullscreenerror","onGesturechange","onGestureend","onGesturestart","onGotpointercapture","onInput","onKeydown","onKeypress","onKeyup","onLostpointercapture","onMousedown","onMousemove","onMouseout","onMouseover","onMouseup","onMousewheel","onPaste","onPointercancel","onPointerdown","onPointerenter","onPointerleave","onPointermove","onPointerout","onPointerover","onPointerup","onReset","onSelect","onSubmit","onTouchcancel","onTouchend","onTouchmove","onTouchstart","onTransitioncancel","onTransitionend","onTransitionrun","onTransitionstart","onWheel"],ET=["ArrowUp","ArrowDown","ArrowRight","ArrowLeft","Enter","Escape","Tab"," "];function sH(e){return e.isComposing&&ET.includes(e.key)}function iH(e){const[t,n]=ep(e,[Mv]),r=ys(t,ST),[s,i]=ep(n,["class","style","id","inert",/^data-/]);return Object.assign(s,t),Object.assign(i,r),[s,i]}function qf(e){return e==null?[]:Array.isArray(e)?e:[e]}function oH(e,t){let n=0;const r=function(){for(var s=arguments.length,i=new Array(s),o=0;oe(...i),Ft(t))};return r.clear=()=>{clearTimeout(n)},r.immediate=e,r}function Qn(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1;return Math.max(t,Math.min(n,e))}function tp(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0";return e+n.repeat(Math.max(0,t-e.length))}function np(e,t){return(arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0").repeat(Math.max(0,t-e.length))+e}function wT(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;const n=[];let r=0;for(;r1&&arguments[1]!==void 0?arguments[1]:1e3;if(e=t&&r0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;const r={};for(const s in e)r[s]=e[s];for(const s in t){const i=e[s],o=t[s];if(Qh(i)&&Qh(o)){r[s]=Tt(i,o,n);continue}if(n&&Array.isArray(i)&&Array.isArray(o)){r[s]=n(i,o);continue}r[s]=o}return r}function Nv(e){return e.map(t=>t.type===Ke?Nv(t.children):t).flat()}function ns(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(ns.cache.has(e))return ns.cache.get(e);const t=e.replace(/[^a-z]/gi,"-").replace(/\B([A-Z])/g,"-$1").toLowerCase();return ns.cache.set(e,t),t}ns.cache=new Map;function Ds(e,t){if(!t||typeof t!="object")return[];if(Array.isArray(t))return t.map(n=>Ds(e,n)).flat(1);if(t.suspense)return Ds(e,t.ssContent);if(Array.isArray(t.children))return t.children.map(n=>Ds(e,n)).flat(1);if(t.component){if(Object.getOwnPropertyDescriptor(t.component.provides,e))return[t.component];if(t.component.subTree)return Ds(e,t.component.subTree).flat(1)}return[]}var ws=new WeakMap,zr=new WeakMap;class TT{constructor(t){Jh(this,ws,[]),Jh(this,zr,0),this.size=t}get isFull(){return Dn(ws,this).length===this.size}push(t){Dn(ws,this)[Dn(zr,this)]=t,Zh(zr,this,(Dn(zr,this)+1)%this.size)}values(){return Dn(ws,this).slice(Dn(zr,this)).concat(Dn(ws,this).slice(0,Dn(zr,this)))}clear(){Dn(ws,this).length=0,Zh(zr,this,0)}}function Gf(e){const t=lt({});on(()=>{const r=e();for(const s in r)t[s]=r[s]},{flush:"sync"});const n={};for(const r in t)n[r]=Q(()=>t[r]);return n}function Ja(e,t){return e.includes(t)}function Lv(e){return e[2].toLowerCase()+e.slice(3)}const Ji=()=>[Function,Array];function rp(e,t){return t="on"+pi(t),!!(e[t]||e[`${t}Once`]||e[`${t}Capture`]||e[`${t}OnceCapture`]||e[`${t}CaptureOnce`])}function cH(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1&&arguments[1]!==void 0?arguments[1]:!0;const n=["button","[href]",'input:not([type="hidden"])',"select","textarea","details:not(:has(> summary))","details > summary","[tabindex]",'[contenteditable]:not([contenteditable="false"])',"audio[controls]","video[controls]"].map(s=>`${s}${t?':not([tabindex="-1"])':""}:not([disabled], [inert])`).join(", ");let r;try{r=[...e.querySelectorAll(n)]}catch{return[]}return r.filter(s=>!s.closest("[inert]")).filter(s=>!!s.offsetParent||s.getClientRects().length>0).filter(s=>{var i,o;return!((i=s.parentElement)!=null&&i.closest("details:not([open])"))||s.tagName==="SUMMARY"&&((o=s.parentElement)==null?void 0:o.tagName)==="DETAILS"})}function CT(e,t,n){let r,s=e.indexOf(document.activeElement);const i=t==="next"?1:-1;do s+=i,r=e[s];while((!r||r.offsetParent==null||!((n==null?void 0:n(r))??!0))&&s=0);return r}function Dv(e,t){var r,s,i,o;const n=Zi(e);if(t==null)(e===document.activeElement||!e.contains(document.activeElement))&&((r=n[0])==null||r.focus());else if(t==="first")(s=n[0])==null||s.focus();else if(t==="last")(i=n.at(-1))==null||i.focus();else if(typeof t=="number")(o=n[t])==null||o.focus();else{const a=CT(n,t);a?a.focus():Dv(e,t==="next"?"first":"last")}}function lH(e){return e==null||typeof e=="string"&&e.trim()===""}function uH(){}function IT(e,t){if(!(Xe&&typeof CSS<"u"&&typeof CSS.supports<"u"&&CSS.supports(`selector(${t})`)))return null;try{return!!e&&e.matches(t)}catch{return null}}function kT(e){return e.some(t=>Zs(t)?t.type===pt?!1:t.type!==Ke||kT(t.children):!0)?e:null}function xT(e,t){if(!Xe||e===0)return t(),()=>{};const n=window.setTimeout(t,e);return()=>window.clearTimeout(n)}function fH(e,t){const n=e.clientX,r=e.clientY,s=t.getBoundingClientRect(),i=s.left,o=s.top,a=s.right,c=s.bottom;return n>=i&&n<=a&&r>=o&&r<=c}function Eu(){const e=be(),t=n=>{e.value=n};return Object.defineProperty(t,"value",{enumerable:!0,get:()=>e.value,set:n=>e.value=n}),Object.defineProperty(t,"el",{enumerable:!0,get:()=>jf(e.value)}),t}function dH(e){const t=e.key.length===1,n=!e.ctrlKey&&!e.metaKey&&!e.altKey;return t&&n}function ds(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="bigint"}function hH(e){return"\\^$*+?.()|{}[]".includes(e)?`\\${e}`:e}function pH(e){const t={};for(const n in e)t[Pt(n)]=e[n];return t}function RT(e){const t=["checked","disabled"];return Object.fromEntries(Object.entries(e).filter(n=>{let[r,s]=n;return t.includes(r)?!!s:s!==void 0}))}const Fv=["top","bottom"],AT=["start","end","left","right"];function wu(e,t){let[n,r]=e.split(" ");return r||(r=Ja(Fv,n)?"start":Ja(AT,n)?"top":"center"),{side:sp(n,t),align:sp(r,t)}}function sp(e,t){return e==="start"?t?"right":"left":e==="end"?t?"left":"right":e}function Tl(e){return{side:{center:"center",top:"bottom",bottom:"top",left:"right",right:"left"}[e.side],align:e.align}}function Cl(e){return{side:e.side,align:{center:"center",top:"bottom",bottom:"top",left:"right",right:"left"}[e.align]}}function ip(e){return{side:e.align,align:e.side}}function op(e){return Ja(Fv,e.side)?"y":"x"}class tn{constructor(t){const n=document.body.currentCSSZoom??1,r=t instanceof Element,s=r?1+(1-n)/n:1,{x:i,y:o,width:a,height:c}=r?t.getBoundingClientRect():t;this.x=i*s,this.y=o*s,this.width=a*s,this.height=c*s}get top(){return this.y}get bottom(){return this.y+this.height}get left(){return this.x}get right(){return this.x+this.width}}function ap(e,t){return{x:{before:Math.max(0,t.left-e.left),after:Math.max(0,e.right-t.right)},y:{before:Math.max(0,t.top-e.top),after:Math.max(0,e.bottom-t.bottom)}}}function $v(e){if(Array.isArray(e)){const t=document.body.currentCSSZoom??1,n=1+(1-t)/t;return new tn({x:e[0]*n,y:e[1]*n,width:0*n,height:0*n})}else return new tn(e)}function OT(e){if(e===document.documentElement)if(visualViewport){const t=document.body.currentCSSZoom??1;return new tn({x:visualViewport.scale>1?0:visualViewport.offsetLeft,y:visualViewport.scale>1?0:visualViewport.offsetTop,width:visualViewport.width*visualViewport.scale/t,height:visualViewport.height*visualViewport.scale/t})}else return new tn({x:0,y:0,width:document.documentElement.clientWidth,height:document.documentElement.clientHeight});else return new tn(e)}function Bv(e){const t=new tn(e),n=getComputedStyle(e),r=n.transform;if(r){let s,i,o,a,c;if(r.startsWith("matrix3d("))s=r.slice(9,-1).split(/, /),i=Number(s[0]),o=Number(s[5]),a=Number(s[12]),c=Number(s[13]);else if(r.startsWith("matrix("))s=r.slice(7,-1).split(/, /),i=Number(s[0]),o=Number(s[3]),a=Number(s[4]),c=Number(s[5]);else return new tn(t);const l=n.transformOrigin,u=t.x-a-(1-i)*parseFloat(l),f=t.y-c-(1-o)*parseFloat(l.slice(l.indexOf(" ")+1)),d=i?t.width/i:e.offsetWidth+1,h=o?t.height/o:e.offsetHeight+1;return new tn({x:u,y:f,width:d,height:h})}else return new tn(t)}function Kr(e,t,n){if(typeof e.animate>"u")return{finished:Promise.resolve()};let r;try{r=e.animate(t,n)}catch{return{finished:Promise.resolve()}}return typeof r.finished>"u"&&(r.finished=new Promise(s=>{r.onfinish=()=>{s(r)}})),r}const Ca=new WeakMap;function MT(e,t){Object.keys(t).forEach(n=>{if(Pv(n)){const r=Lv(n),s=Ca.get(e);if(t[n]==null)s==null||s.forEach(i=>{const[o,a]=i;o===r&&(e.removeEventListener(r,a),s.delete(i))});else if(!s||![...s].some(i=>i[0]===r&&i[1]===t[n])){e.addEventListener(r,t[n]);const i=s||new Set;i.add([r,t[n]]),Ca.has(e)||Ca.set(e,i)}}else t[n]==null?e.removeAttribute(n):e.setAttribute(n,t[n])})}function PT(e,t){Object.keys(t).forEach(n=>{if(Pv(n)){const r=Lv(n),s=Ca.get(e);s==null||s.forEach(i=>{const[o,a]=i;o===r&&(e.removeEventListener(r,a),s.delete(i))})}else e.removeAttribute(n)})}const Ts=2.4,cp=.2126729,lp=.7151522,up=.072175,NT=.55,LT=.58,DT=.57,FT=.62,aa=.03,fp=1.45,$T=5e-4,BT=1.25,HT=1.25,dp=.078,hp=12.82051282051282,ca=.06,pp=.001;function mp(e,t){const n=(e.r/255)**Ts,r=(e.g/255)**Ts,s=(e.b/255)**Ts,i=(t.r/255)**Ts,o=(t.g/255)**Ts,a=(t.b/255)**Ts;let c=n*cp+r*lp+s*up,l=i*cp+o*lp+a*up;if(c<=aa&&(c+=(aa-c)**fp),l<=aa&&(l+=(aa-l)**fp),Math.abs(l-c)<$T)return 0;let u;if(l>c){const f=(l**NT-c**LT)*BT;u=f-pp?0:f>-dp?f-f*hp*ca:f+ca}return u*100}const Za=.20689655172413793,VT=e=>e>Za**3?Math.cbrt(e):e/(3*Za**2)+4/29,UT=e=>e>Za?e**3:3*Za**2*(e-4/29);function Hv(e){const t=VT,n=t(e[1]);return[116*n-16,500*(t(e[0]/.95047)-n),200*(n-t(e[2]/1.08883))]}function Vv(e){const t=UT,n=(e[0]+16)/116;return[t(n+e[1]/500)*.95047,t(n),t(n-e[2]/200)*1.08883]}const WT=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]],jT=e=>e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055,zT=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],qT=e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4;function Uv(e){const t=Array(3),n=jT,r=WT;for(let s=0;s<3;++s)t[s]=Math.round(Qn(n(r[s][0]*e[0]+r[s][1]*e[1]+r[s][2]*e[2]))*255);return{r:t[0],g:t[1],b:t[2]}}function Kf(e){let{r:t,g:n,b:r}=e;const s=[0,0,0],i=qT,o=zT;t=i(t/255),n=i(n/255),r=i(r/255);for(let a=0;a<3;++a)s[a]=o[a][0]*t+o[a][1]*n+o[a][2]*r;return s}function Tu(e){return!!e&&/^(#|var\(--|(rgb|hsl)a?\()/.test(e)}function GT(e){return Tu(e)&&!/^((rgb|hsl)a?\()?var\(--/.test(e)}const gp=/^(?(?:rgb|hsl)a?)\((?.+)\)/,KT={rgb:(e,t,n,r)=>({r:e,g:t,b:n,a:r}),rgba:(e,t,n,r)=>({r:e,g:t,b:n,a:r}),hsl:(e,t,n,r)=>yp({h:e,s:t,l:n,a:r}),hsla:(e,t,n,r)=>yp({h:e,s:t,l:n,a:r}),hsv:(e,t,n,r)=>mo({h:e,s:t,v:n,a:r}),hsva:(e,t,n,r)=>mo({h:e,s:t,v:n,a:r})};function Rn(e){if(typeof e=="number")return{r:(e&16711680)>>16,g:(e&65280)>>8,b:e&255};if(typeof e=="string"&&gp.test(e)){const{groups:t}=e.match(gp),{fn:n,values:r}=t,s=r.split(/,\s*|\s*\/\s*|\s+/).map((i,o)=>i.endsWith("%")||o>0&&o<3&&["hsl","hsla","hsv","hsva"].includes(n)?parseFloat(i)/100:parseFloat(i));return KT[n](...s)}else if(typeof e=="string"){let t=e.startsWith("#")?e.slice(1):e;return[3,4].includes(t.length)?t=t.split("").map(n=>n+n).join(""):[6,8].includes(t.length),XT(t)}else if(typeof e=="object"){if(wl(e,["r","g","b"]))return e;if(wl(e,["h","s","l"]))return mo(Wv(e));if(wl(e,["h","s","v"]))return mo(e)}throw new TypeError(`Invalid color: ${e==null?e:String(e)||e.constructor.name} -Expected #hex, #hexa, rgb(), rgba(), hsl(), hsla(), object or number`)}function mo(e){const{h:t,s:n,v:r,a:s}=e,i=a=>{const c=(a+t/60)%6;return r-r*n*Math.max(Math.min(c,4-c,1),0)},o=[i(5),i(3),i(1)].map(a=>Math.round(a*255));return{r:o[0],g:o[1],b:o[2],a:s}}function yp(e){return mo(Wv(e))}function Wv(e){const{h:t,s:n,l:r,a:s}=e,i=r+n*Math.min(r,1-r),o=i===0?0:2-2*r/i;return{h:t,s:o,v:i,a:s}}function la(e){const t=Math.round(e).toString(16);return("00".substr(0,2-t.length)+t).toUpperCase()}function YT(e){let{r:t,g:n,b:r,a:s}=e;return`#${[la(t),la(n),la(r),s!==void 0?la(Math.round(s*255)):""].join("")}`}function XT(e){e=JT(e);let[t,n,r,s]=wT(e,2).map(i=>parseInt(i,16));return s=s===void 0?s:s/255,{r:t,g:n,b:r,a:s}}function JT(e){return e.startsWith("#")&&(e=e.slice(1)),e=e.replace(/([^0-9a-f])/gi,"F"),(e.length===3||e.length===4)&&(e=e.split("").map(t=>t+t).join("")),e.length!==6&&(e=tp(tp(e,6),8,"F")),e}function ZT(e,t){const n=Hv(Kf(e));return n[0]=n[0]+t*10,Uv(Vv(n))}function QT(e,t){const n=Hv(Kf(e));return n[0]=n[0]-t*10,Uv(Vv(n))}function eC(e){const t=Rn(e);return Kf(t)[1]}function jv(e){const t=Math.abs(mp(Rn(0),Rn(e)));return Math.abs(mp(Rn(16777215),Rn(e)))>Math.min(t,50)?"#fff":"#000"}function ie(e,t){return n=>Object.keys(e).reduce((r,s)=>{const o=typeof e[s]=="object"&&e[s]!=null&&!Array.isArray(e[s])?e[s]:{type:e[s]};return n&&s in n?r[s]={...o,default:n[s]}:r[s]=o,t&&!r[s].source&&(r[s].source=t),r},{})}const rt=ie({class:[String,Array,Object],style:{type:[String,Array,Object],default:null}},"component");function ut(e,t){const n=mi();if(!n)throw new Error(`[Vuetify] ${e} must be called from inside a setup function`);return n}function Dr(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"composables";const t=ut(e).type;return ns((t==null?void 0:t.aliasName)||(t==null?void 0:t.name))}function tC(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ut("injectSelf");const{provides:n}=t;if(n&&e in n)return n[e]}const ei=Symbol.for("vuetify:defaults");function nC(e){return Ee(e)}function Yf(){const e=Oe(ei);if(!e)throw new Error("[Vuetify] Could not find defaults instance");return e}function Bc(e,t){const n=Yf(),r=Ee(e),s=U(()=>{if(Ft(t==null?void 0:t.disabled))return n.value;const o=Ft(t==null?void 0:t.scoped),a=Ft(t==null?void 0:t.reset),c=Ft(t==null?void 0:t.root);if(r.value==null&&!(o||a||c))return n.value;let l=Tt(r.value,{prev:n.value});if(o)return l;if(a||c){const u=Number(a||1/0);for(let f=0;f<=u&&!(!l||!("prev"in l));f++)l=l.prev;return l&&typeof c=="string"&&c in l&&(l=Tt(Tt(l,{prev:l}),l[c])),l}return l.prev?Tt(l.prev,l):l});return Ct(ei,s),s}function rC(e,t){return e.props&&(typeof e.props[t]<"u"||typeof e.props[ns(t)]<"u")}function sC(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Yf();const r=ut("useDefaults");if(t=t??r.type.name??r.type.__name,!t)throw new Error("[Vuetify] Could not determine component name");const s=U(()=>{var c;return(c=n.value)==null?void 0:c[e._as??t]}),i=new Proxy(e,{get(c,l){var h,p,m,y;const u=Reflect.get(c,l);if(l==="class"||l==="style")return[(h=s.value)==null?void 0:h[l],u].filter(g=>g!=null);if(rC(r.vnode,l))return u;const f=(p=s.value)==null?void 0:p[l];if(f!==void 0)return f;const d=(y=(m=n.value)==null?void 0:m.global)==null?void 0:y[l];return d!==void 0?d:u}}),o=be();on(()=>{if(s.value){const c=Object.entries(s.value).filter(l=>{let[u]=l;return u.startsWith(u[0].toUpperCase())});o.value=c.length?Object.fromEntries(c):void 0}else o.value=void 0});function a(){const c=tC(ei,r);Ct(ei,U(()=>o.value?Tt((c==null?void 0:c.value)??{},o.value):c==null?void 0:c.value))}return{props:i,provideSubDefaults:a}}function gi(e){if(e._setup=e._setup??e.setup,!e.name)return e;if(e._setup){e.props=ie(e.props??{},e.name)();const t=Object.keys(e.props).filter(n=>n!=="class"&&n!=="style");e.filterProps=function(r){return zf(r,t)},e.props._as=String,e.setup=function(r,s){const i=Yf();if(!i.value)return e._setup(r,s);const{props:o,provideSubDefaults:a}=sC(r,r._as??e.name,i),c=e._setup(o,s);return a(),c}}return e}function Pe(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return t=>(e?gi:Pc)(t)}function mH(e,t){return t.props=e,t}function Xf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"div",n=arguments.length>2?arguments[2]:void 0;return Pe()({name:n??pi(Pt(e.replace(/__/g,"-"))),props:{tag:{type:String,default:t},...rt()},setup(r,s){let{slots:i}=s;return()=>{var o;return Lr(r.tag,{class:[e,r.class],style:r.style},(o=i.default)==null?void 0:o.call(i))}}})}function iC(e,t,n,r){if(!n||ds(e)||ds(t))return;const s=n.get(e);if(s)s.set(t,r);else{const i=new WeakMap;i.set(t,r),n.set(e,i)}}function oC(e,t,n){var i,o;if(!n||ds(e)||ds(t))return null;const r=(i=n.get(e))==null?void 0:i.get(t);if(typeof r=="boolean")return r;const s=(o=n.get(t))==null?void 0:o.get(e);return typeof s=="boolean"?s:null}function rs(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new WeakMap;if(e===t)return!0;if(e instanceof Date&&t instanceof Date&&e.getTime()!==t.getTime()||e!==Object(e)||t!==Object(t))return!1;const r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;const s=oC(e,t,n);return s||(iC(e,t,n,!0),r.every(i=>rs(e[i],t[i],n)))}function zv(e){if(typeof e.getRootNode!="function"){for(;e.parentNode;)e=e.parentNode;return e!==document?null:document}const t=e.getRootNode();return t!==document&&t.getRootNode({composed:!0})!==document?null:t}const Cu="cubic-bezier(0.4, 0, 0.2, 1)",vp="cubic-bezier(0.0, 0, 0.2, 1)",_p="cubic-bezier(0.4, 0, 1, 1)",aC={linear:e=>e,easeInQuad:e=>e**2,easeOutQuad:e=>e*(2-e),easeInOutQuad:e=>e<.5?2*e**2:-1+(4-2*e)*e,easeInCubic:e=>e**3,easeOutCubic:e=>--e**3+1,easeInOutCubic:e=>e<.5?4*e**3:(e-1)*(2*e-2)*(2*e-2)+1,easeInQuart:e=>e**4,easeOutQuart:e=>1- --e**4,easeInOutQuart:e=>e<.5?8*e**4:1-8*--e**4,easeInQuint:e=>e**5,easeOutQuint:e=>1+--e**5,easeInOutQuint:e=>e<.5?16*e**5:1+16*--e**5,instant:e=>1};function cC(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;for(;e;){if(t?lC(e):Jf(e))return e;e=e.parentElement}return document.scrollingElement}function Qa(e,t){const n=[];if(t&&e&&!t.contains(e))return n;for(;e&&(Jf(e)&&n.push(e),e!==t);)e=e.parentElement;return n}function Jf(e){if(!e||e.nodeType!==Node.ELEMENT_NODE)return!1;const t=window.getComputedStyle(e),n=t.overflowY==="scroll"||t.overflowY==="auto"&&e.scrollHeight>e.clientHeight,r=t.overflowX==="scroll"||t.overflowX==="auto"&&e.scrollWidth>e.clientWidth;return n||r}function lC(e){if(!e||e.nodeType!==Node.ELEMENT_NODE)return!1;const t=window.getComputedStyle(e);return["scroll","auto"].includes(t.overflowY)}function uC(e){for(;e;){if(window.getComputedStyle(e).position==="fixed")return!0;e=e.offsetParent}return!1}function Je(e){const t=ut("useRender");t.render=e}function fC(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{leading:!0,trailing:!0},r=0,s=0,i=!1,o=0;function a(){clearTimeout(r),i=!1,o=0}const c=function(){for(var l=arguments.length,u=new Array(l),f=0;f=t?p():n.trailing&&(r=setTimeout(p,t-h)):(i=!0,n.leading&&p())};return c.clear=a,c.immediate=e,c}const yt=[String,Function,Object,Array],Iu=Symbol.for("vuetify:icons"),Hc=ie({icon:{type:yt},tag:{type:[String,Object,Function],required:!0}},"icon"),bp=Pe()({name:"VComponentIcon",props:Hc(),setup(e,t){let{slots:n}=t;return()=>{const r=e.icon;return F(e.tag,null,{default:()=>{var s;return[e.icon?F(r,null,null):(s=n.default)==null?void 0:s.call(n)]}})}}}),qv=gi({name:"VSvgIcon",inheritAttrs:!1,props:Hc(),setup(e,t){let{attrs:n}=t;return()=>F(e.tag,Ye(n,{style:null}),{default:()=>[ne("svg",{class:"v-icon__svg",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",role:"img","aria-hidden":"true"},[Array.isArray(e.icon)?e.icon.map(r=>Array.isArray(r)?ne("path",{d:r[0],"fill-opacity":r[1]},null):ne("path",{d:r},null)):ne("path",{d:e.icon},null)])]})}});gi({name:"VLigatureIcon",props:Hc(),setup(e){return()=>F(e.tag,null,{default:()=>[e.icon]})}});const Gv=gi({name:"VClassIcon",props:Hc(),setup(e){return()=>F(e.tag,{class:Re(e.icon)},null)}}),dC=e=>{const t=Oe(Iu);if(!t)throw new Error("Missing Vuetify Icons provide!");return{iconData:U(()=>{var c;const r=mt(e);if(!r)return{component:bp};let s=r;if(typeof s=="string"&&(s=s.trim(),s.startsWith("$")&&(s=(c=t.aliases)==null?void 0:c[s.slice(1)])),Array.isArray(s))return{component:qv,icon:s};if(typeof s!="string")return{component:bp,icon:s};const i=Object.keys(t.sets).find(l=>typeof s=="string"&&s.startsWith(`${l}:`)),o=i?s.slice(i.length+1):s;return{component:t.sets[i??t.defaultSet].component,icon:o}})}},hC={collapse:"mdi-chevron-up",complete:"mdi-check",cancel:"mdi-close-circle",close:"mdi-close",delete:"mdi-close-circle",clear:"mdi-close-circle",success:"mdi-check-circle",info:"mdi-information",warning:"mdi-alert-circle",error:"mdi-close-circle",prev:"mdi-chevron-left",next:"mdi-chevron-right",checkboxOn:"mdi-checkbox-marked",checkboxOff:"mdi-checkbox-blank-outline",checkboxIndeterminate:"mdi-minus-box",delimiter:"mdi-circle",sortAsc:"mdi-arrow-up",sortDesc:"mdi-arrow-down",expand:"mdi-chevron-down",menu:"mdi-menu",subgroup:"mdi-menu-down",dropdown:"mdi-menu-down",radioOn:"mdi-radiobox-marked",radioOff:"mdi-radiobox-blank",edit:"mdi-pencil",ratingEmpty:"mdi-star-outline",ratingFull:"mdi-star",ratingHalf:"mdi-star-half-full",loading:"mdi-cached",first:"mdi-page-first",last:"mdi-page-last",unfold:"mdi-unfold-more-horizontal",file:"mdi-paperclip",plus:"mdi-plus",minus:"mdi-minus",calendar:"mdi-calendar",treeviewCollapse:"mdi-menu-down",treeviewExpand:"mdi-menu-right",tableGroupCollapse:"mdi-chevron-down",tableGroupExpand:"mdi-chevron-right",eyeDropper:"mdi-eyedropper",upload:"mdi-cloud-upload",color:"mdi-palette",command:"mdi-apple-keyboard-command",ctrl:"mdi-apple-keyboard-control",space:"mdi-keyboard-space",shift:"mdi-apple-keyboard-shift",alt:"mdi-apple-keyboard-option",enter:"mdi-keyboard-return",arrowup:"mdi-arrow-up",arrowdown:"mdi-arrow-down",arrowleft:"mdi-arrow-left",arrowright:"mdi-arrow-right",backspace:"mdi-backspace",play:"mdi-play",pause:"mdi-pause",fullscreen:"mdi-fullscreen",fullscreenExit:"mdi-fullscreen-exit",volumeHigh:"mdi-volume-high",volumeMedium:"mdi-volume-medium",volumeLow:"mdi-volume-low",volumeOff:"mdi-volume-variant-off"},pC={component:e=>Lr(Gv,{...e,class:"mdi"})};function mC(){return{svg:{component:qv},class:{component:Gv}}}function gC(e){const t=mC(),n=(e==null?void 0:e.defaultSet)??"mdi";return n==="mdi"&&!t.mdi&&(t.mdi=pC),Tt({defaultSet:n,sets:t,aliases:{...hC,vuetify:["M8.2241 14.2009L12 21L22 3H14.4459L8.2241 14.2009Z",["M7.26303 12.4733L7.00113 12L2 3H12.5261C12.5261 3 12.5261 3 12.5261 3L7.26303 12.4733Z",.6]],"vuetify-outline":"svg:M7.26 12.47 12.53 3H2L7.26 12.47ZM14.45 3 8.22 14.2 12 21 22 3H14.45ZM18.6 5 12 16.88 10.51 14.2 15.62 5ZM7.26 8.35 5.4 5H9.13L7.26 8.35Z","vuetify-play":["m6.376 13.184-4.11-7.192C1.505 4.66 2.467 3 4.003 3h8.532l-.953 1.576-.006.01-.396.677c-.429.732-.214 1.507.194 2.015.404.503 1.092.878 1.869.806a3.72 3.72 0 0 1 1.005.022c.276.053.434.143.523.237.138.146.38.635-.25 2.09-.893 1.63-1.553 1.722-1.847 1.677-.213-.033-.468-.158-.756-.406a4.95 4.95 0 0 1-.8-.927c-.39-.564-1.04-.84-1.66-.846-.625-.006-1.316.27-1.693.921l-.478.826-.911 1.506Z",["M9.093 11.552c.046-.079.144-.15.32-.148a.53.53 0 0 1 .43.207c.285.414.636.847 1.046 1.2.405.35.914.662 1.516.754 1.334.205 2.502-.698 3.48-2.495l.014-.028.013-.03c.687-1.574.774-2.852-.005-3.675-.37-.391-.861-.586-1.333-.676a5.243 5.243 0 0 0-1.447-.044c-.173.016-.393-.073-.54-.257-.145-.18-.127-.316-.082-.392l.393-.672L14.287 3h5.71c1.536 0 2.499 1.659 1.737 2.992l-7.997 13.996c-.768 1.344-2.706 1.344-3.473 0l-3.037-5.314 1.377-2.278.004-.006.004-.007.481-.831Z",.6]]}},e)}function yi(e,t){let n;function r(){n=ls(),n.run(()=>t.length?t(()=>{n==null||n.stop(),r()}):t())}Se(e,s=>{s&&!n?r():s||(n==null||n.stop(),n=void 0)},{immediate:!0}),_t(()=>{n==null||n.stop()})}function zn(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:f=>f,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:f=>f;const i=ut("useProxiedModel"),o=Ee(e[t]!==void 0?e[t]:n),a=ns(t),l=U(a!==t?()=>{var f,d,h,p;return e[t],!!(((f=i.vnode.props)!=null&&f.hasOwnProperty(t)||(d=i.vnode.props)!=null&&d.hasOwnProperty(a))&&((h=i.vnode.props)!=null&&h.hasOwnProperty(`onUpdate:${t}`)||(p=i.vnode.props)!=null&&p.hasOwnProperty(`onUpdate:${a}`)))}:()=>{var f,d;return e[t],!!((f=i.vnode.props)!=null&&f.hasOwnProperty(t)&&((d=i.vnode.props)!=null&&d.hasOwnProperty(`onUpdate:${t}`)))});yi(()=>!l.value,()=>{Se(()=>e[t],f=>{o.value=f})});const u=U({get(){const f=e[t];return r(l.value?f:o.value)},set(f){const d=s(f),h=ue(l.value?e[t]:o.value);h===d||r(h)===f||(o.value=d,i==null||i.emit(`update:${t}`,d))}});return Object.defineProperty(u,"externalValue",{get:()=>l.value?e[t]:o.value}),u}const yC={badge:"Badge",open:"Open",close:"Close",dismiss:"Dismiss",confirmEdit:{ok:"OK",cancel:"Cancel"},dataIterator:{noResultsText:"No matching records found",loadingText:"Loading items..."},dataTable:{itemsPerPageText:"Rows per page:",ariaLabel:{sortDescending:"Sorted descending.",sortAscending:"Sorted ascending.",sortNone:"Not sorted.",activateNone:"Activate to remove sorting.",activateDescending:"Activate to sort descending.",activateAscending:"Activate to sort ascending."},sortBy:"Sort by"},dataFooter:{itemsPerPageText:"Items per page:",itemsPerPageAll:"All",nextPage:"Next page",prevPage:"Previous page",firstPage:"First page",lastPage:"Last page",pageText:"{0}-{1} of {2}"},dateRangeInput:{divider:"to"},datePicker:{itemsSelected:"{0} selected",range:{title:"Select dates",header:"Enter dates"},title:"Select date",header:"Enter date",input:{placeholder:"Enter date"},ariaLabel:{previousMonth:"Previous month",nextMonth:"Next month",selectYear:"Select year",previousYear:"Previous year",nextYear:"Next year",selectMonth:"Select month",selectDate:"{0}",currentDate:"Today, {0}"}},noDataText:"No data available",carousel:{prev:"Previous visual",next:"Next visual",ariaLabel:{delimiter:"Carousel slide {0} of {1}"}},calendar:{moreEvents:"{0} more",today:"Today"},input:{clear:"Clear {0}",prependAction:"{0} prepended action",appendAction:"{0} appended action",otp:"Please enter OTP character {0}"},fileInput:{counter:"{0} files",counterSize:"{0} files ({1} in total)"},fileUpload:{title:"Drag and drop files here",divider:"or",browse:"Browse Files"},timePicker:{am:"AM",pm:"PM",title:"Select Time",hour:"Hour",minute:"Minute",second:"Second"},pagination:{ariaLabel:{root:"Pagination Navigation",next:"Next page",previous:"Previous page",page:"Go to page {0}",currentPage:"Page {0}, Current page",first:"First page",last:"Last page"}},stepper:{next:"Next",prev:"Previous"},rating:{ariaLabel:{item:"Rating {0} of {1}"}},loading:"Loading...",infiniteScroll:{loadMore:"Load more",empty:"No more"},rules:{required:"This field is required",email:"Please enter a valid email",number:"This field can only contain numbers",integer:"This field can only contain integer values",capital:"This field can only contain uppercase letters",maxLength:"You must enter a maximum of {0} characters",minLength:"You must enter a minimum of {0} characters",strictLength:"The length of the entered field is invalid",exclude:"The {0} character is not allowed",notEmpty:"Please choose at least one value",pattern:"Invalid format"},hotkey:{then:"then",ctrl:"Ctrl",command:"Command",space:"Space",shift:"Shift",alt:"Alt",enter:"Enter",escape:"Escape",upArrow:"Up Arrow",downArrow:"Down Arrow",leftArrow:"Left Arrow",rightArrow:"Right Arrow",backspace:"Backspace",option:"Option",plus:"plus",shortcut:"Keyboard shortcut: {0}",or:"or"},video:{play:"Play",pause:"Pause",seek:"Seek",volume:"Volume",showVolume:"Show volume control",mute:"Mute",unmute:"Unmute",enterFullscreen:"Full screen",exitFullscreen:"Exit full screen"},colorPicker:{ariaLabel:{eyedropper:"Select color with eyedropper",hueSlider:"Hue",alphaSlider:"Alpha",redInput:"Red value",greenInput:"Green value",blueInput:"Blue value",alphaInput:"Alpha value",hueInput:"Hue value",saturationInput:"Saturation value",lightnessInput:"Lightness value",hexInput:"HEX value",hexaInput:"HEX with alpha value",changeFormat:"Change color format"}}},Sp="$vuetify.",Ep=(e,t)=>e.replace(/\{(\d+)\}/g,(n,r)=>String(t[Number(r)])),Kv=(e,t,n)=>function(r){for(var s=arguments.length,i=new Array(s>1?s-1:0),o=1;onew Intl.NumberFormat([e.value,t.value],r).format(n)}function Yv(e,t){return Zf(e,t)(.1).includes(",")?",":"."}function Il(e,t,n){const r=zn(e,t,e[t]??n.value);return r.value=e[t]??n.value,Se(n,s=>{e[t]==null&&(r.value=n.value)}),r}function Xv(e){return t=>{const n=Il(t,"locale",e.current),r=Il(t,"fallback",e.fallback),s=Il(t,"messages",e.messages);return{name:"vuetify",current:n,fallback:r,messages:s,decimalSeparator:Q(()=>Yv(n,r)),t:Kv(n,r,s),n:Zf(n,r),provide:Xv({current:n,fallback:r,messages:s})}}}function vC(e){const t=be((e==null?void 0:e.locale)??"en"),n=be((e==null?void 0:e.fallback)??"en"),r=Ee({en:yC,...e==null?void 0:e.messages});return{name:"vuetify",current:t,fallback:n,messages:r,decimalSeparator:Q(()=>(e==null?void 0:e.decimalSeparator)??Yv(t,n)),t:Kv(t,n,r),n:Zf(t,n),provide:Xv({current:t,fallback:n,messages:r})}}const ec=Symbol.for("vuetify:locale");function _C(e){return e.name!=null}function bC(e){const t=e!=null&&e.adapter&&_C(e==null?void 0:e.adapter)?e==null?void 0:e.adapter:vC(e),n=wC(t,e);return{...t,...n}}function SC(){const e=Oe(ec);if(!e)throw new Error("[Vuetify] Could not find injected locale instance");return e}function EC(){return{af:!1,ar:!0,bg:!1,ca:!1,ckb:!1,cs:!1,de:!1,el:!1,en:!1,es:!1,et:!1,fa:!0,fi:!1,fr:!1,hr:!1,hu:!1,he:!0,id:!1,it:!1,ja:!1,km:!1,ko:!1,lv:!1,lt:!1,nl:!1,no:!1,pl:!1,pt:!1,ro:!1,ru:!1,sk:!1,sl:!1,srCyrl:!1,srLatn:!1,sv:!1,th:!1,tr:!1,az:!1,uk:!1,vi:!1,zhHans:!1,zhHant:!1}}function wC(e,t){const n=Ee((t==null?void 0:t.rtl)??EC()),r=U(()=>n.value[e.current.value]??!1);return{isRtl:r,rtl:n,rtlClasses:Q(()=>`v-locale--is-${r.value?"rtl":"ltr"}`)}}function Do(){const e=Oe(ec);if(!e)throw new Error("[Vuetify] Could not find injected rtl instance");return{isRtl:e.isRtl,rtlClasses:e.rtlClasses}}function Fo(e){const t=e.slice(-2).toUpperCase();switch(!0){case e==="GB-alt-variant":return{firstDay:0,firstWeekSize:4};case e==="001":return{firstDay:1,firstWeekSize:1};case`AG AS BD BR BS BT BW BZ CA CO DM DO ET GT GU HK HN ID IL IN JM JP KE - KH KR LA MH MM MO MT MX MZ NI NP PA PE PH PK PR PY SA SG SV TH TT TW UM US - VE VI WS YE ZA ZW`.includes(t):return{firstDay:0,firstWeekSize:1};case`AI AL AM AR AU AZ BA BM BN BY CL CM CN CR CY EC GE HR KG KZ LB LK LV - MD ME MK MN MY NZ RO RS SI TJ TM TR UA UY UZ VN XK`.includes(t):return{firstDay:1,firstWeekSize:1};case`AD AN AT AX BE BG CH CZ DE DK EE ES FI FJ FO FR GB GF GP GR HU IE IS - IT LI LT LU MC MQ NL NO PL RE RU SE SK SM VA`.includes(t):return{firstDay:1,firstWeekSize:4};case"AE AF BH DJ DZ EG IQ IR JO KW LY OM QA SD SY".includes(t):return{firstDay:6,firstWeekSize:1};case t==="MV":return{firstDay:5,firstWeekSize:1};case t==="PT":return{firstDay:0,firstWeekSize:4};default:return null}}function TC(e,t,n){var u;const r=[];let s=[];const i=Jv(e),o=Zv(e),a=n??((u=Fo(t))==null?void 0:u.firstDay)??0,c=(i.getDay()-a+7)%7,l=(o.getDay()-a+7)%7;for(let f=0;f0&&r.push(s),r}function Qi(e,t,n){var i;let r=(n??((i=Fo(t))==null?void 0:i.firstDay)??0)%7;[0,1,2,3,4,5,6].includes(r)||(r=0);const s=new Date(e);for(;s.getDay()!==r;)s.setDate(s.getDate()-1);return s}function CC(e,t){var s;const n=new Date(e),r=((((s=Fo(t))==null?void 0:s.firstDay)??0)+6)%7;for(;n.getDay()!==r;)n.setDate(n.getDate()+1);return n}function Jv(e){return new Date(e.getFullYear(),e.getMonth(),1)}function Zv(e){return new Date(e.getFullYear(),e.getMonth()+1,0)}function IC(e){const t=e.split("-").map(Number);return new Date(t[0],t[1]-1,t[2])}const kC=/^([12]\d{3}-([1-9]|0[1-9]|1[0-2])-([1-9]|0[1-9]|[12]\d|3[01]))$/;function Qv(e){if(e==null)return new Date;if(e instanceof Date)return e;if(typeof e=="string"){let t;if(kC.test(e))return IC(e);if(t=Date.parse(e),!isNaN(t))return new Date(t)}return null}const wp=new Date(2e3,0,2);function xC(e,t,n){var s;const r=t??((s=Fo(e))==null?void 0:s.firstDay)??0;return Ov(7).map(i=>{const o=new Date(wp);return o.setDate(wp.getDate()+r+i),new Intl.DateTimeFormat(e,{weekday:n??"narrow"}).format(o)})}function RC(e,t,n,r){const s=Qv(e)??new Date,i=r==null?void 0:r[t];if(typeof i=="function")return i(s,t,n);let o={};switch(t){case"fullDate":o={year:"numeric",month:"short",day:"numeric"};break;case"fullDateWithWeekday":o={weekday:"long",year:"numeric",month:"long",day:"numeric"};break;case"normalDate":const a=s.getDate(),c=new Intl.DateTimeFormat(n,{month:"long"}).format(s);return`${a} ${c}`;case"normalDateWithWeekday":o={weekday:"short",day:"numeric",month:"short"};break;case"shortDate":o={month:"short",day:"numeric"};break;case"year":o={year:"numeric"};break;case"month":o={month:"long"};break;case"monthShort":o={month:"short"};break;case"monthAndYear":o={month:"long",year:"numeric"};break;case"monthAndDate":o={month:"long",day:"numeric"};break;case"weekday":o={weekday:"long"};break;case"weekdayShort":o={weekday:"short"};break;case"dayOfMonth":return new Intl.NumberFormat(n).format(s.getDate());case"hours12h":o={hour:"numeric",hour12:!0};break;case"hours24h":o={hour:"numeric",hour12:!1};break;case"minutes":o={minute:"numeric"};break;case"seconds":o={second:"numeric"};break;case"fullTime":o={hour:"numeric",minute:"numeric"};break;case"fullTime12h":o={hour:"numeric",minute:"numeric",hour12:!0};break;case"fullTime24h":o={hour:"numeric",minute:"numeric",hour12:!1};break;case"fullDateTime":o={year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric"};break;case"fullDateTime12h":o={year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",hour12:!0};break;case"fullDateTime24h":o={year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",hour12:!1};break;case"keyboardDate":o={year:"numeric",month:"2-digit",day:"2-digit"};break;case"keyboardDateTime":return o={year:"numeric",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric"},new Intl.DateTimeFormat(n,o).format(s).replace(/, /g," ");case"keyboardDateTime12h":return o={year:"numeric",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric",hour12:!0},new Intl.DateTimeFormat(n,o).format(s).replace(/, /g," ");case"keyboardDateTime24h":return o={year:"numeric",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric",hour12:!1},new Intl.DateTimeFormat(n,o).format(s).replace(/, /g," ");default:o=i??{timeZone:"UTC",timeZoneName:"short"}}return new Intl.DateTimeFormat(n,o).format(s)}function AC(e,t){const n=e.toJsDate(t),r=n.getFullYear(),s=np(String(n.getMonth()+1),2,"0"),i=np(String(n.getDate()),2,"0");return`${r}-${s}-${i}`}function OC(e){const[t,n,r]=e.split("-").map(Number);return new Date(t,n-1,r)}function MC(e,t){const n=new Date(e);return n.setMinutes(n.getMinutes()+t),n}function PC(e,t){const n=new Date(e);return n.setHours(n.getHours()+t),n}function ss(e,t){const n=new Date(e);return n.setDate(n.getDate()+t),n}function NC(e,t){const n=new Date(e);return n.setDate(n.getDate()+t*7),n}function LC(e,t){const n=new Date(e);return n.setDate(1),n.setMonth(n.getMonth()+t),n}function go(e){return e.getFullYear()}function DC(e){return e.getMonth()}function FC(e,t,n,r){const s=Fo(t),i=n??(s==null?void 0:s.firstDay)??0,o=(s==null?void 0:s.firstWeekSize)??1;return r!==void 0?$C(e,t,i,r):BC(e,t,i,o)}function $C(e,t,n,r){const s=(7+r-n)%7,i=Qi(e,t,n),o=ss(i,6);function a(d){return(7+new Date(d,0,1).getDay()-n)%7}let c=go(i);c=r&&a++;const c=new Date(a,0,1),l=o(a),u=l>=r?ss(c,l-7):ss(c,l);return 1+nc(Qf(s),yo(u),"weeks")}function HC(e){return e.getDate()}function VC(e){return new Date(e.getFullYear(),e.getMonth()+1,1)}function UC(e){return new Date(e.getFullYear(),e.getMonth()-1,1)}function WC(e){return e.getHours()}function jC(e){return e.getMinutes()}function zC(e){return new Date(e.getFullYear(),0,1)}function qC(e){return new Date(e.getFullYear(),11,31)}function GC(e,t){return tc(e,t[0])&&XC(e,t[1])}function KC(e){const t=new Date(e);return t instanceof Date&&!isNaN(t.getTime())}function tc(e,t){return e.getTime()>t.getTime()}function YC(e,t){return tc(yo(e),yo(t))}function XC(e,t){return e.getTime(){n.locale=e.locale[r]??r??n.locale}),n}function yH(){const e=Oe(e_);if(!e)throw new Error("[Vuetify] Could not find injected date options");const t=SC();return t_(e,t)}const vH=["sm","md","lg","xl","xxl"],ku=Symbol.for("vuetify:display"),Ip={mobileBreakpoint:"lg",thresholds:{xs:0,sm:600,md:960,lg:1280,xl:1920,xxl:2560}},cI=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Ip;return Tt(Ip,e)};function kp(e){return Xe&&!e?window.innerWidth:typeof e=="object"&&e.clientWidth||0}function xp(e){return Xe&&!e?window.innerHeight:typeof e=="object"&&e.clientHeight||0}function Rp(e){const t=Xe&&!e?window.navigator.userAgent:"ssr";function n(p){return!!t.match(p)}const r=n(/android/i),s=n(/iphone|ipad|ipod/i),i=n(/cordova/i),o=n(/electron/i),a=n(/chrome/i),c=n(/edge/i),l=n(/firefox/i),u=n(/opera/i),f=n(/win/i),d=n(/mac/i),h=n(/linux/i);return{android:r,ios:s,cordova:i,electron:o,chrome:a,edge:c,firefox:l,opera:u,win:f,mac:d,linux:h,touch:_T,ssr:t==="ssr"}}function lI(e,t){const{thresholds:n,mobileBreakpoint:r}=cI(e),s=be(xp(t)),i=be(Rp(t)),o=lt({}),a=be(kp(t));function c(){s.value=xp(),a.value=kp()}function l(){c(),i.value=Rp()}return on(()=>{const u=a.value=n.xxl,y=u?"xs":f?"sm":d?"md":h?"lg":p?"xl":"xxl",g=typeof r=="number"?r:n[r],v=a.value{window.removeEventListener("resize",c)},!0)),{...Mf(o),update:l,ssr:!!t}}const _H=ie({mobile:{type:Boolean,default:!1},mobileBreakpoint:[Number,String]},"display");function uI(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{mobile:null},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();const n=Oe(ku);if(!n)throw new Error("Could not find Vuetify display injection");const r=U(()=>e.mobile?!0:typeof e.mobileBreakpoint=="number"?n.width.valuet?{[`${t}--mobile`]:r.value}:{}),mobile:r}}const n_=Symbol.for("vuetify:goto");function r_(){return{container:void 0,duration:300,layout:!1,offset:0,easing:"easeInOutCubic",patterns:aC}}function fI(e){return ed(e)??(document.scrollingElement||document.body)}function ed(e){return typeof e=="string"?document.querySelector(e):jf(e)}function kl(e,t,n){if(typeof e=="number")return t&&n?-e:e;let r=ed(e),s=0;for(;r;)s+=t?r.offsetLeft:r.offsetTop,r=r.offsetParent;return s}function dI(e,t){return{rtl:t.isRtl,options:Tt(r_(),e)}}async function Ap(e,t,n,r){const s=n?"scrollLeft":"scrollTop",i=Tt((r==null?void 0:r.options)??r_(),t),o=r==null?void 0:r.rtl.value,a=(typeof e=="number"?e:ed(e))??0,c=i.container==="parent"&&a instanceof HTMLElement?a.parentElement:fI(i.container),l=po()?i.patterns.instant:typeof i.easing=="function"?i.easing:i.patterns[i.easing];if(!l)throw new TypeError(`Easing function "${i.easing}" not found.`);let u;if(typeof a=="number")u=kl(a,n,o);else if(u=kl(a,n,o)-kl(c,n,o),i.layout){const p=window.getComputedStyle(a).getPropertyValue("--v-layout-top");p&&(u-=parseInt(p,10))}u+=i.offset,u=hI(c,u,!!o,!!n);const f=c[s]??0;if(u===f)return Promise.resolve(u);const d=performance.now();return new Promise(h=>requestAnimationFrame(function p(m){const g=(m-d)/i.duration,v=Math.floor(f+(u-f)*l(Qn(g,0,1)));if(c[s]=v,g>=1&&Math.abs(v-c[s])<10)return h(u);if(g>2)return h(c[s]);requestAnimationFrame(p)}))}function bH(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const t=Oe(n_),{isRtl:n}=Do();if(!t)throw new Error("[Vuetify] Could not find injected goto instance");const r={...t,rtl:Q(()=>t.rtl.value||n.value)};async function s(i,o){return Ap(i,Tt(e,o),!1,r)}return s.horizontal=async(i,o)=>Ap(i,Tt(e,o),!0,r),s}function hI(e,t,n,r){const{scrollWidth:s,scrollHeight:i}=e,[o,a]=e===document.scrollingElement?[window.innerWidth,window.innerHeight]:[e.offsetWidth,e.offsetHeight];let c,l;return r?n?(c=-(s-o),l=0):(c=0,l=s-o):(c=0,l=i+-a),Qn(t,c,l)}const vo=Symbol.for("vuetify:theme"),Yt=ie({theme:String},"theme");function Op(){return{defaultTheme:"light",prefix:"v-",variations:{colors:[],lighten:0,darken:0},themes:{light:{dark:!1,colors:{background:"#FFFFFF",surface:"#FFFFFF","surface-bright":"#FFFFFF","surface-light":"#EEEEEE","surface-variant":"#424242","on-surface-variant":"#EEEEEE",primary:"#1867C0","primary-darken-1":"#1F5592",secondary:"#48A9A6","secondary-darken-1":"#018786",error:"#B00020",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},variables:{"border-color":"#000000","border-opacity":.12,"high-emphasis-opacity":.87,"medium-emphasis-opacity":.6,"disabled-opacity":.38,"idle-opacity":.04,"hover-opacity":.04,"focus-opacity":.12,"selected-opacity":.08,"activated-opacity":.12,"pressed-opacity":.12,"dragged-opacity":.08,"theme-kbd":"#EEEEEE","theme-on-kbd":"#000000","theme-code":"#F5F5F5","theme-on-code":"#000000"}},dark:{dark:!0,colors:{background:"#121212",surface:"#212121","surface-bright":"#ccbfd6","surface-light":"#424242","surface-variant":"#c8c8c8","on-surface-variant":"#000000",primary:"#2196F3","primary-darken-1":"#277CC1",secondary:"#54B6B2","secondary-darken-1":"#48A9A6",error:"#CF6679",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},variables:{"border-color":"#FFFFFF","border-opacity":.12,"high-emphasis-opacity":1,"medium-emphasis-opacity":.7,"disabled-opacity":.5,"idle-opacity":.1,"hover-opacity":.04,"focus-opacity":.12,"selected-opacity":.08,"activated-opacity":.12,"pressed-opacity":.16,"dragged-opacity":.08,"theme-kbd":"#424242","theme-on-kbd":"#FFFFFF","theme-code":"#343434","theme-on-code":"#CCCCCC"}}},stylesheetId:"vuetify-theme-stylesheet",scoped:!1,unimportant:!1,utilities:!0}}function pI(){var r,s;let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Op();const t=Op();if(!e)return{...t,isDisabled:!0};const n={};for(const[i,o]of Object.entries(e.themes??{})){const a=o.dark||i==="dark"?(r=t.themes)==null?void 0:r.dark:(s=t.themes)==null?void 0:s.light;n[i]=Tt(a,o)}return Tt(t,{...e,themes:n})}function qr(e,t,n,r){e.push(`${vI(t,r)} { -`,...n.map(s=>` ${s}; -`),`} -`)}function Mp(e,t){const n=e.dark?2:1,r=e.dark?1:2,s=[];for(const[i,o]of Object.entries(e.colors)){const a=Rn(o);s.push(`--${t}theme-${i}: ${a.r},${a.g},${a.b}`),i.startsWith("on-")||s.push(`--${t}theme-${i}-overlay-multiplier: ${eC(o)>.18?n:r}`)}for(const[i,o]of Object.entries(e.variables)){const a=typeof o=="string"&&o.startsWith("#")?Rn(o):void 0,c=a?`${a.r}, ${a.g}, ${a.b}`:void 0;s.push(`--${t}${i}: ${c??o}`)}return s}function mI(e,t,n){const r={};if(n)for(const s of["lighten","darken"]){const i=s==="lighten"?ZT:QT;for(const o of Ov(n[s],1))r[`${e}-${s}-${o}`]=YT(i(Rn(t),o))}return r}function gI(e,t){if(!t)return{};let n={};for(const r of t.colors){const s=e[r];s&&(n={...n,...mI(r,s,t)})}return n}function yI(e){const t={};for(const n of Object.keys(e)){if(n.startsWith("on-")||e[`on-${n}`])continue;const r=`on-${n}`,s=Rn(e[n]);t[r]=jv(s)}return t}function vI(e,t){if(!t)return e;const n=`:where(${t})`;return e===":root"?n:`${n} ${e}`}function _I(e,t,n){const r=bI(e,t);r&&(r.innerHTML=n)}function bI(e,t){if(!Xe)return null;let n=document.getElementById(e);return n||(n=document.createElement("style"),n.id=e,n.type="text/css",t&&n.setAttribute("nonce",t),document.head.appendChild(n)),n}function SI(e){const t=pI(e),n=be(t.defaultTheme),r=Ee(t.themes),s=be("light"),i=U({get(){return n.value==="system"?s.value:n.value},set(g){n.value=g}}),o=U(()=>{const g={};for(const[v,_]of Object.entries(r.value)){const T={..._.colors,...gI(_.colors,t.variations)};g[v]={..._,colors:{...T,...yI(T)}}}return g}),a=Q(()=>o.value[i.value]),c=Q(()=>n.value==="system"),l=U(()=>{var O;const g=[],v=t.unimportant?"":" !important",_=t.scoped?t.prefix:"";(O=a.value)!=null&&O.dark&&qr(g,":root",["color-scheme: dark"],t.scope),qr(g,":root",Mp(a.value,t.prefix),t.scope);for(const[R,E]of Object.entries(o.value))qr(g,`.${t.prefix}theme--${R}`,[`color-scheme: ${E.dark?"dark":"normal"}`,...Mp(E,t.prefix)],t.scope);if(t.utilities){const R=[],E=[],w=new Set(Object.values(o.value).flatMap(I=>Object.keys(I.colors)));for(const I of w)I.startsWith("on-")?qr(E,`.${I}`,[`color: rgb(var(--${t.prefix}theme-${I}))${v}`],t.scope):(qr(R,`.${_}bg-${I}`,[`--${t.prefix}theme-overlay-multiplier: var(--${t.prefix}theme-${I}-overlay-multiplier)`,`background-color: rgb(var(--${t.prefix}theme-${I}))${v}`,`color: rgb(var(--${t.prefix}theme-on-${I}))${v}`],t.scope),qr(E,`.${_}text-${I}`,[`color: rgb(var(--${t.prefix}theme-${I}))${v}`],t.scope),qr(E,`.${_}border-${I}`,[`--${t.prefix}border-color: var(--${t.prefix}theme-${I})`],t.scope));t.layers?g.push(`@layer background { -`,...R.map(I=>` ${I}`),`} -`,`@layer foreground { -`,...E.map(I=>` ${I}`),`} -`):g.push(...R,...E)}let T=g.map((R,E)=>E===0?R:` ${R}`).join("");return t.layers&&(T=`@layer vuetify.theme { -`+g.map(R=>` ${R}`).join("")+` -}`),T}),u=Q(()=>t.isDisabled?void 0:`${t.prefix}theme--${i.value}`),f=Q(()=>Object.keys(o.value));if(xv){let v=function(){s.value=g.matches?"dark":"light"};const g=window.matchMedia("(prefers-color-scheme: dark)");v(),g.addEventListener("change",v,{passive:!0}),Tf()&&_t(()=>{g.removeEventListener("change",v)})}function d(g){if(t.isDisabled)return;const v=g._context.provides.usehead;if(v){let _=function(){return{style:[{textContent:l.value,id:t.stylesheetId,nonce:t.cspNonce||!1}]}};if(v.push){const T=v.push(_);Xe&&Se(l,()=>{T.patch(_)})}else Xe?(v.addHeadObjs(Q(_)),on(()=>v.updateDOM())):v.addHeadObjs(_())}else{let _=function(){_I(t.stylesheetId,t.cspNonce,l.value)};Xe?Se(l,_,{immediate:!0}):_()}}function h(g){g!=="system"&&!f.value.includes(g)||(i.value=g)}function p(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:f.value;const v=g.indexOf(i.value),_=v===-1?0:(v+1)%g.length;h(g[_])}function m(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["light","dark"];p(g)}const y=new Proxy(i,{get(g,v){return Reflect.get(g,v)},set(g,v,_){return v==="value"&&kv(`theme.global.name.value = ${_}`,`theme.change('${_}')`),Reflect.set(g,v,_)}});return{install:d,change:h,cycle:p,toggle:m,isDisabled:t.isDisabled,isSystem:c,name:i,themes:r,current:a,computedThemes:o,prefix:t.prefix,themeClasses:u,styles:l,global:{name:y,current:a}}}function cn(e){ut("provideTheme");const t=Oe(vo,null);if(!t)throw new Error("Could not find Vuetify theme injection");const n=Q(()=>e.theme??t.name.value),i={...t,name:n,current:Q(()=>t.themes.value[n.value]),themeClasses:Q(()=>t.isDisabled?void 0:`${t.prefix}theme--${n.value}`)};return Ct(vo,i),i}function s_(){ut("useTheme");const e=Oe(vo,null);if(!e)throw new Error("Could not find Vuetify theme injection");return e}function td(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"content";const n=Eu(),r=Ee();if(Xe){const s=new ResizeObserver(i=>{e==null||e(i,s),i.length&&(t==="content"?r.value=i[0].contentRect:r.value=i[0].target.getBoundingClientRect())});yn(()=>{s.disconnect()}),Se(()=>n.el,(i,o)=>{o&&(s.unobserve(o),r.value=void 0),i&&s.observe(i)},{flush:"post"})}return{resizeRef:n,contentRect:Xs(r)}}const _o=Symbol.for("vuetify:layout"),i_=Symbol.for("vuetify:layout-item"),Pp=1e3,EI=ie({overlaps:{type:Array,default:()=>[]},fullHeight:Boolean},"layout"),SH=ie({name:{type:String},order:{type:[Number,String],default:0},absolute:Boolean},"layout-item");function wI(){const e=Oe(_o);if(!e)throw new Error("[Vuetify] Could not find injected layout");return{getLayoutItem:e.getLayoutItem,mainRect:e.mainRect,mainStyles:e.mainStyles}}function EH(e){const t=Oe(_o);if(!t)throw new Error("[Vuetify] Could not find injected layout");const n=e.id??`layout-item-${Uy()}`,r=ut("useLayoutItem");Ct(i_,{id:n});const s=be(!1);zy(()=>s.value=!0),jy(()=>s.value=!1);const{layoutItemStyles:i,layoutItemScrimStyles:o}=t.register(r,{...e,active:U(()=>s.value?!1:e.active.value),id:n});return yn(()=>t.unregister(n)),{layoutItemStyles:i,layoutRect:t.layoutRect,layoutItemScrimStyles:o}}const TI=(e,t,n,r)=>{let s={top:0,left:0,right:0,bottom:0};const i=[{id:"",layer:{...s}}];for(const o of e){const a=t.get(o),c=n.get(o),l=r.get(o);if(!a||!c||!l)continue;const u={...s,[a.value]:parseInt(s[a.value],10)+(l.value?parseInt(c.value,10):0)};i.push({id:o,layer:u}),s=u}return i};function CI(e){const t=Oe(_o,null),n=U(()=>t?t.rootZIndex.value-100:Pp),r=Ee([]),s=lt(new Map),i=lt(new Map),o=lt(new Map),a=lt(new Map),c=lt(new Map),{resizeRef:l,contentRect:u}=td(),f=U(()=>{const R=new Map,E=e.overlaps??[];for(const w of E.filter(I=>I.includes(":"))){const[I,A]=w.split(":");if(!r.value.includes(I)||!r.value.includes(A))continue;const M=s.get(I),x=s.get(A),N=i.get(I),L=i.get(A);!M||!x||!N||!L||(R.set(A,{position:M.value,amount:parseInt(N.value,10)}),R.set(I,{position:x.value,amount:-parseInt(L.value,10)}))}return R}),d=U(()=>{const R=[...new Set([...o.values()].map(w=>w.value))].sort((w,I)=>w-I),E=[];for(const w of R){const I=r.value.filter(A=>{var M;return((M=o.get(A))==null?void 0:M.value)===w});E.push(...I)}return TI(E,s,i,a)}),h=U(()=>!Array.from(c.values()).some(R=>R.value)),p=U(()=>d.value[d.value.length-1].layer),m=Q(()=>({"--v-layout-left":pe(p.value.left),"--v-layout-right":pe(p.value.right),"--v-layout-top":pe(p.value.top),"--v-layout-bottom":pe(p.value.bottom),...h.value?void 0:{transition:"none"}})),y=U(()=>d.value.slice(1).map((R,E)=>{let{id:w}=R;const{layer:I}=d.value[E],A=i.get(w),M=s.get(w);return{id:w,...I,size:Number(A.value),position:M.value}})),g=R=>y.value.find(E=>E.id===R),v=ut("createLayout"),_=be(!1);return Nr(()=>{_.value=!0}),Ct(_o,{register:(R,E)=>{let{id:w,order:I,position:A,layoutSize:M,elementSize:x,active:N,disableTransitions:L,absolute:G}=E;o.set(w,I),s.set(w,A),i.set(w,M),a.set(w,N),L&&c.set(w,L);const j=Ds(i_,v==null?void 0:v.vnode).indexOf(R);j>-1?r.value.splice(j,0,w):r.value.push(w);const D=U(()=>y.value.findIndex(le=>le.id===w)),ae=U(()=>n.value+d.value.length*2-D.value*2),q=U(()=>{const le=A.value==="left"||A.value==="right",ve=A.value==="right",Me=A.value==="bottom",Fe=x.value??M.value,Ge=Fe===0?"%":"px",C={[A.value]:0,zIndex:ae.value,transform:`translate${le?"X":"Y"}(${(N.value?0:-(Fe===0?100:Fe))*(ve||Me?-1:1)}${Ge})`,position:G.value||n.value!==Pp?"absolute":"fixed",...h.value?void 0:{transition:"none"}};if(!_.value)return C;const W=y.value[D.value],z=f.value.get(w);return z&&(W[z.position]+=z.amount),{...C,height:le?`calc(100% - ${W.top}px - ${W.bottom}px)`:x.value?`${x.value}px`:void 0,left:ve?void 0:`${W.left}px`,right:ve?`${W.right}px`:void 0,top:A.value!=="bottom"?`${W.top}px`:void 0,bottom:A.value!=="top"?`${W.bottom}px`:void 0,width:le?x.value?`${x.value}px`:void 0:`calc(100% - ${W.left}px - ${W.right}px)`}}),ce=U(()=>({zIndex:ae.value-1}));return{layoutItemStyles:q,layoutItemScrimStyles:ce,zIndex:ae}},unregister:R=>{o.delete(R),s.delete(R),i.delete(R),a.delete(R),c.delete(R),r.value=r.value.filter(E=>E!==R)},mainRect:p,mainStyles:m,getLayoutItem:g,items:y,layoutRect:u,rootZIndex:n}),{layoutClasses:Q(()=>["v-layout",{"v-layout--full-height":e.fullHeight}]),layoutStyles:Q(()=>({zIndex:t?n.value:void 0,position:t?"relative":void 0,overflow:t?"hidden":void 0})),getLayoutItem:g,items:y,layoutRect:u,layoutRef:l}}function o_(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const{blueprint:t,...n}=e,r=Tt(t,n),{aliases:s={},components:i={},directives:o={}}=r,a=ls();return a.run(()=>{const c=nC(r.defaults),l=lI(r.display,r.ssr),u=SI(r.theme),f=gC(r.icons),d=bC(r.locale),h=oI(r.date,d),p=dI(r.goTo,d);function m(g){for(const _ in o)g.directive(_,o[_]);for(const _ in i)g.component(_,i[_]);for(const _ in s)g.component(_,gi({...s[_],name:_,aliasName:s[_].name}));const v=ls();if(v.run(()=>{u.install(g)}),g.onUnmount(()=>v.stop()),g.provide(ei,c),g.provide(ku,l),g.provide(vo,u),g.provide(Iu,f),g.provide(ec,d),g.provide(e_,h.options),g.provide(Cp,h.instance),g.provide(n_,p),Xe&&r.ssr)if(g.$nuxt)g.$nuxt.hook("app:suspense:resolve",()=>{l.update()});else{const{mount:_}=g;g.mount=function(){const T=_(...arguments);return dt(()=>l.update()),g.mount=_,T}}g.mixin({computed:{$vuetify(){return lt({defaults:Cs.call(this,ei),display:Cs.call(this,ku),theme:Cs.call(this,vo),icons:Cs.call(this,Iu),locale:Cs.call(this,ec),date:Cs.call(this,Cp)})}}})}function y(){a.stop()}return{install:m,unmount:y,defaults:c,display:l,theme:u,icons:f,locale:d,date:h,goTo:p}})}const II="3.11.7";o_.version=II;function Cs(e){var r,s;const t=this.$,n=((r=t.parent)==null?void 0:r.provides)??((s=t.vnode.appContext)==null?void 0:s.provides);if(n&&e in n)return n[e]}const kI=o_({theme:{defaultTheme:"dark"}});/*! - * pinia v3.0.4 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */let a_;const Vc=e=>a_=e,c_=Symbol();function xu(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var eo;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(eo||(eo={}));function l_(){const e=ls(!0),t=e.run(()=>Ee({}));let n=[],r=[];const s=Of({install(i){Vc(s),s._a=i,i.provide(c_,s),i.config.globalProperties.$pinia=s,r.forEach(o=>n.push(o)),r=[]},use(i){return this._a?n.push(i):r.push(i),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return s}const u_=()=>{};function Np(e,t,n,r=u_){e.add(t);const s=()=>{e.delete(t)&&r()};return!n&&Tf()&&_t(s),s}function Is(e,...t){e.forEach(n=>{n(...t)})}const xI=e=>e(),Lp=Symbol(),xl=Symbol();function Ru(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,r)=>e.set(r,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],s=e[n];xu(s)&&xu(r)&&e.hasOwnProperty(n)&&!qe(r)&&!jn(r)?e[n]=Ru(s,r):e[n]=r}return e}const RI=Symbol();function AI(e){return!xu(e)||!Object.prototype.hasOwnProperty.call(e,RI)}const{assign:pr}=Object;function OI(e){return!!(qe(e)&&e.effect)}function MI(e,t,n,r){const{state:s,actions:i,getters:o}=t,a=n.state.value[e];let c;function l(){a||(n.state.value[e]=s?s():{});const u=Mf(n.state.value[e]);return pr(u,i,Object.keys(o||{}).reduce((f,d)=>(f[d]=Of(U(()=>{Vc(n);const h=n._s.get(e);return o[d].call(h,h)})),f),{}))}return c=f_(e,l,t,n,r,!0),c}function f_(e,t,n={},r,s,i){let o;const a=pr({actions:{}},n),c={deep:!0};let l,u,f=new Set,d=new Set,h;const p=r.state.value[e];!i&&!p&&(r.state.value[e]={});let m;function y(w){let I;l=u=!1,typeof w=="function"?(w(r.state.value[e]),I={type:eo.patchFunction,storeId:e,events:h}):(Ru(r.state.value[e],w),I={type:eo.patchObject,payload:w,storeId:e,events:h});const A=m=Symbol();dt().then(()=>{m===A&&(l=!0)}),u=!0,Is(f,I,r.state.value[e])}const g=i?function(){const{state:I}=n,A=I?I():{};this.$patch(M=>{pr(M,A)})}:u_;function v(){o.stop(),f.clear(),d.clear(),r._s.delete(e)}const _=(w,I="")=>{if(Lp in w)return w[xl]=I,w;const A=function(){Vc(r);const M=Array.from(arguments),x=new Set,N=new Set;function L(j){x.add(j)}function G(j){N.add(j)}Is(d,{args:M,name:A[xl],store:O,after:L,onError:G});let J;try{J=w.apply(this&&this.$id===e?this:O,M)}catch(j){throw Is(N,j),j}return J instanceof Promise?J.then(j=>(Is(x,j),j)).catch(j=>(Is(N,j),Promise.reject(j))):(Is(x,J),J)};return A[Lp]=!0,A[xl]=I,A},T={_p:r,$id:e,$onAction:Np.bind(null,d),$patch:y,$reset:g,$subscribe(w,I={}){const A=Np(f,w,I.detached,()=>M()),M=o.run(()=>Se(()=>r.state.value[e],x=>{(I.flush==="sync"?u:l)&&w({storeId:e,type:eo.direct,events:h},x)},pr({},c,I)));return A},$dispose:v},O=lt(T);r._s.set(e,O);const E=(r._a&&r._a.runWithContext||xI)(()=>r._e.run(()=>(o=ls()).run(()=>t({action:_}))));for(const w in E){const I=E[w];if(qe(I)&&!OI(I)||jn(I))i||(p&&AI(I)&&(qe(I)?I.value=p[w]:Ru(I,p[w])),r.state.value[e][w]=I);else if(typeof I=="function"){const A=_(I,w);E[w]=A,a.actions[w]=I}}return pr(O,E),pr(ue(O),E),Object.defineProperty(O,"$state",{get:()=>r.state.value[e],set:w=>{y(I=>{pr(I,w)})}}),r._p.forEach(w=>{pr(O,o.run(()=>w({store:O,app:r._a,pinia:r,options:a})))}),p&&i&&n.hydrate&&n.hydrate(O.$state,p),l=!0,u=!0,O}/*! #__NO_SIDE_EFFECTS__ */function wH(e,t,n){let r;const s=typeof t=="function";r=s?n:t;function i(o,a){const c=F0();return o=o||(c?Oe(c_,null):null),o&&Vc(o),o=a_,o._s.has(e)||(s?f_(e,t,r,o):MI(e,r,o)),o._s.get(e)}return i.$id=e,i}function TH(e,t){return Array.isArray(t)?t.reduce((n,r)=>(n[r]=function(){return e(this.$pinia)[r]},n),{}):Object.keys(t).reduce((n,r)=>(n[r]=function(){const s=e(this.$pinia),i=t[r];return typeof i=="function"?i.call(this,s):s[i]},n),{})}function CH(e,t){return Array.isArray(t)?t.reduce((n,r)=>(n[r]=function(...s){return e(this.$pinia)[r](...s)},n),{}):Object.keys(t).reduce((n,r)=>(n[r]=function(...s){return e(this.$pinia)[t[r]](...s)},n),{})}const PI=l_();/*! - * vue-router v4.6.4 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */const Ms=typeof document<"u";function d_(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function NI(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&d_(e.default)}const Ne=Object.assign;function Rl(e,t){const n={};for(const r in t){const s=t[r];n[r]=gn(s)?s.map(e):e(s)}return n}const to=()=>{},gn=Array.isArray;function Dp(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}const h_=/#/g,LI=/&/g,DI=/\//g,FI=/=/g,$I=/\?/g,p_=/\+/g,BI=/%5B/g,HI=/%5D/g,m_=/%5E/g,VI=/%60/g,g_=/%7B/g,UI=/%7C/g,y_=/%7D/g,WI=/%20/g;function nd(e){return e==null?"":encodeURI(""+e).replace(UI,"|").replace(BI,"[").replace(HI,"]")}function jI(e){return nd(e).replace(g_,"{").replace(y_,"}").replace(m_,"^")}function Au(e){return nd(e).replace(p_,"%2B").replace(WI,"+").replace(h_,"%23").replace(LI,"%26").replace(VI,"`").replace(g_,"{").replace(y_,"}").replace(m_,"^")}function zI(e){return Au(e).replace(FI,"%3D")}function qI(e){return nd(e).replace(h_,"%23").replace($I,"%3F")}function GI(e){return qI(e).replace(DI,"%2F")}function bo(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const KI=/\/$/,YI=e=>e.replace(KI,"");function Al(e,t,n="/"){let r,s={},i="",o="";const a=t.indexOf("#");let c=t.indexOf("?");return c=a>=0&&c>a?-1:c,c>=0&&(r=t.slice(0,c),i=t.slice(c,a>0?a:t.length),s=e(i.slice(1))),a>=0&&(r=r||t.slice(0,a),o=t.slice(a,t.length)),r=QI(r??t,n),{fullPath:r+i+o,path:r,query:s,hash:bo(o)}}function XI(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Fp(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function JI(e,t,n){const r=t.matched.length-1,s=n.matched.length-1;return r>-1&&r===s&&ti(t.matched[r],n.matched[s])&&v_(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function ti(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function v_(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!ZI(e[n],t[n]))return!1;return!0}function ZI(e,t){return gn(e)?$p(e,t):gn(t)?$p(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function $p(e,t){return gn(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function QI(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),s=r[r.length-1];(s===".."||s===".")&&r.push("");let i=n.length-1,o,a;for(o=0;o1&&i--;else break;return n.slice(0,i).join("/")+"/"+r.slice(o).join("/")}const fr={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let Ou=function(e){return e.pop="pop",e.push="push",e}({}),Ol=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function ek(e){if(!e)if(Ms){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),YI(e)}const tk=/^[^#]+#/;function nk(e,t){return e.replace(tk,"#")+t}function rk(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const Uc=()=>({left:window.scrollX,top:window.scrollY});function sk(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),s=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!s)return;t=rk(s,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Bp(e,t){return(history.state?history.state.position-t:-1)+e}const Mu=new Map;function ik(e,t){Mu.set(e,t)}function ok(e){const t=Mu.get(e);return Mu.delete(e),t}function ak(e){return typeof e=="string"||e&&typeof e=="object"}function __(e){return typeof e=="string"||typeof e=="symbol"}let tt=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const b_=Symbol("");tt.MATCHER_NOT_FOUND+"",tt.NAVIGATION_GUARD_REDIRECT+"",tt.NAVIGATION_ABORTED+"",tt.NAVIGATION_CANCELLED+"",tt.NAVIGATION_DUPLICATED+"";function ni(e,t){return Ne(new Error,{type:e,[b_]:!0},t)}function Fn(e,t){return e instanceof Error&&b_ in e&&(t==null||!!(e.type&t))}const ck=["params","query","hash"];function lk(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of ck)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function uk(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;rs&&Au(s)):[r&&Au(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function fk(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=gn(r)?r.map(s=>s==null?null:""+s):r==null?r:""+r)}return t}const dk=Symbol(""),Vp=Symbol(""),Wc=Symbol(""),rd=Symbol(""),Pu=Symbol("");function Fi(){let e=[];function t(r){return e.push(r),()=>{const s=e.indexOf(r);s>-1&&e.splice(s,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function _r(e,t,n,r,s,i=o=>o()){const o=r&&(r.enterCallbacks[s]=r.enterCallbacks[s]||[]);return()=>new Promise((a,c)=>{const l=d=>{d===!1?c(ni(tt.NAVIGATION_ABORTED,{from:n,to:t})):d instanceof Error?c(d):ak(d)?c(ni(tt.NAVIGATION_GUARD_REDIRECT,{from:t,to:d})):(o&&r.enterCallbacks[s]===o&&typeof d=="function"&&o.push(d),a())},u=i(()=>e.call(r&&r.instances[s],t,n,l));let f=Promise.resolve(u);e.length<3&&(f=f.then(l)),f.catch(d=>c(d))})}function Ml(e,t,n,r,s=i=>i()){const i=[];for(const o of e)for(const a in o.components){let c=o.components[a];if(!(t!=="beforeRouteEnter"&&!o.instances[a]))if(d_(c)){const l=(c.__vccOpts||c)[t];l&&i.push(_r(l,n,r,o,a,s))}else{let l=c();i.push(()=>l.then(u=>{if(!u)throw new Error(`Couldn't resolve component "${a}" at "${o.path}"`);const f=NI(u)?u.default:u;o.mods[a]=u,o.components[a]=f;const d=(f.__vccOpts||f)[t];return d&&_r(d,n,r,o,a,s)()}))}}return i}function hk(e,t){const n=[],r=[],s=[],i=Math.max(t.matched.length,e.matched.length);for(let o=0;oti(l,a))?r.push(a):n.push(a));const c=e.matched[o];c&&(t.matched.find(l=>ti(l,c))||s.push(c))}return[n,r,s]}/*! - * vue-router v4.6.4 - * (c) 2025 Eduardo San Martin Morote - * @license MIT - */let pk=()=>location.protocol+"//"+location.host;function S_(e,t){const{pathname:n,search:r,hash:s}=t,i=e.indexOf("#");if(i>-1){let o=s.includes(e.slice(i))?e.slice(i).length:1,a=s.slice(o);return a[0]!=="/"&&(a="/"+a),Fp(a,"")}return Fp(n,e)+r+s}function mk(e,t,n,r){let s=[],i=[],o=null;const a=({state:d})=>{const h=S_(e,location),p=n.value,m=t.value;let y=0;if(d){if(n.value=h,t.value=d,o&&o===p){o=null;return}y=m?d.position-m.position:0}else r(h);s.forEach(g=>{g(n.value,p,{delta:y,type:Ou.pop,direction:y?y>0?Ol.forward:Ol.back:Ol.unknown})})};function c(){o=n.value}function l(d){s.push(d);const h=()=>{const p=s.indexOf(d);p>-1&&s.splice(p,1)};return i.push(h),h}function u(){if(document.visibilityState==="hidden"){const{history:d}=window;if(!d.state)return;d.replaceState(Ne({},d.state,{scroll:Uc()}),"")}}function f(){for(const d of i)d();i=[],window.removeEventListener("popstate",a),window.removeEventListener("pagehide",u),document.removeEventListener("visibilitychange",u)}return window.addEventListener("popstate",a),window.addEventListener("pagehide",u),document.addEventListener("visibilitychange",u),{pauseListeners:c,listen:l,destroy:f}}function Up(e,t,n,r=!1,s=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:s?Uc():null}}function gk(e){const{history:t,location:n}=window,r={value:S_(e,n)},s={value:t.state};s.value||i(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(c,l,u){const f=e.indexOf("#"),d=f>-1?(n.host&&document.querySelector("base")?e:e.slice(f))+c:pk()+e+c;try{t[u?"replaceState":"pushState"](l,"",d),s.value=l}catch(h){console.error(h),n[u?"replace":"assign"](d)}}function o(c,l){i(c,Ne({},t.state,Up(s.value.back,c,s.value.forward,!0),l,{position:s.value.position}),!0),r.value=c}function a(c,l){const u=Ne({},s.value,t.state,{forward:c,scroll:Uc()});i(u.current,u,!0),i(c,Ne({},Up(r.value,c,null),{position:u.position+1},l),!1),r.value=c}return{location:r,state:s,push:a,replace:o}}function yk(e){e=ek(e);const t=gk(e),n=mk(e,t.state,t.location,t.replace);function r(i,o=!0){o||n.pauseListeners(),history.go(i)}const s=Ne({location:"",base:e,go:r,createHref:nk.bind(null,e)},t,n);return Object.defineProperty(s,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(s,"state",{enumerable:!0,get:()=>t.state.value}),s}let Jr=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var at=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(at||{});const vk={type:Jr.Static,value:""},_k=/[a-zA-Z0-9_]/;function bk(e){if(!e)return[[]];if(e==="/")return[[vk]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(h){throw new Error(`ERR (${n})/"${l}": ${h}`)}let n=at.Static,r=n;const s=[];let i;function o(){i&&s.push(i),i=[]}let a=0,c,l="",u="";function f(){l&&(n===at.Static?i.push({type:Jr.Static,value:l}):n===at.Param||n===at.ParamRegExp||n===at.ParamRegExpEnd?(i.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),i.push({type:Jr.Param,value:l,regexp:u,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),l="")}function d(){l+=c}for(;at.length?t.length===1&&t[0]===At.Static+At.Segment?1:-1:0}function E_(e,t){let n=0;const r=e.score,s=t.score;for(;n0&&t[t.length-1]<0}const Ck={strict:!1,end:!0,sensitive:!1};function Ik(e,t,n){const r=wk(bk(e.path),n),s=Ne(r,{record:e,parent:t,children:[],alias:[]});return t&&!s.record.aliasOf==!t.record.aliasOf&&t.children.push(s),s}function kk(e,t){const n=[],r=new Map;t=Dp(Ck,t);function s(f){return r.get(f)}function i(f,d,h){const p=!h,m=qp(f);m.aliasOf=h&&h.record;const y=Dp(t,f),g=[m];if("alias"in f){const T=typeof f.alias=="string"?[f.alias]:f.alias;for(const O of T)g.push(qp(Ne({},m,{components:h?h.record.components:m.components,path:O,aliasOf:h?h.record:m})))}let v,_;for(const T of g){const{path:O}=T;if(d&&O[0]!=="/"){const R=d.record.path,E=R[R.length-1]==="/"?"":"/";T.path=d.record.path+(O&&E+O)}if(v=Ik(T,d,y),h?h.alias.push(v):(_=_||v,_!==v&&_.alias.push(v),p&&f.name&&!Gp(v)&&o(f.name)),w_(v)&&c(v),m.children){const R=m.children;for(let E=0;E{o(_)}:to}function o(f){if(__(f)){const d=r.get(f);d&&(r.delete(f),n.splice(n.indexOf(d),1),d.children.forEach(o),d.alias.forEach(o))}else{const d=n.indexOf(f);d>-1&&(n.splice(d,1),f.record.name&&r.delete(f.record.name),f.children.forEach(o),f.alias.forEach(o))}}function a(){return n}function c(f){const d=Ak(f,n);n.splice(d,0,f),f.record.name&&!Gp(f)&&r.set(f.record.name,f)}function l(f,d){let h,p={},m,y;if("name"in f&&f.name){if(h=r.get(f.name),!h)throw ni(tt.MATCHER_NOT_FOUND,{location:f});y=h.record.name,p=Ne(zp(d.params,h.keys.filter(_=>!_.optional).concat(h.parent?h.parent.keys.filter(_=>_.optional):[]).map(_=>_.name)),f.params&&zp(f.params,h.keys.map(_=>_.name))),m=h.stringify(p)}else if(f.path!=null)m=f.path,h=n.find(_=>_.re.test(m)),h&&(p=h.parse(m),y=h.record.name);else{if(h=d.name?r.get(d.name):n.find(_=>_.re.test(d.path)),!h)throw ni(tt.MATCHER_NOT_FOUND,{location:f,currentLocation:d});y=h.record.name,p=Ne({},d.params,f.params),m=h.stringify(p)}const g=[];let v=h;for(;v;)g.unshift(v.record),v=v.parent;return{name:y,path:m,params:p,matched:g,meta:Rk(g)}}e.forEach(f=>i(f));function u(){n.length=0,r.clear()}return{addRoute:i,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:a,getRecordMatcher:s}}function zp(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function qp(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:xk(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function xk(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function Gp(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function Rk(e){return e.reduce((t,n)=>Ne(t,n.meta),{})}function Ak(e,t){let n=0,r=t.length;for(;n!==r;){const i=n+r>>1;E_(e,t[i])<0?r=i:n=i+1}const s=Ok(e);return s&&(r=t.lastIndexOf(s,r-1)),r}function Ok(e){let t=e;for(;t=t.parent;)if(w_(t)&&E_(e,t)===0)return t}function w_({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Kp(e){const t=Oe(Wc),n=Oe(rd),r=U(()=>{const c=Ft(e.to);return t.resolve(c)}),s=U(()=>{const{matched:c}=r.value,{length:l}=c,u=c[l-1],f=n.matched;if(!u||!f.length)return-1;const d=f.findIndex(ti.bind(null,u));if(d>-1)return d;const h=Yp(c[l-2]);return l>1&&Yp(u)===h&&f[f.length-1].path!==h?f.findIndex(ti.bind(null,c[l-2])):d}),i=U(()=>s.value>-1&&Dk(n.params,r.value.params)),o=U(()=>s.value>-1&&s.value===n.matched.length-1&&v_(n.params,r.value.params));function a(c={}){if(Lk(c)){const l=t[Ft(e.replace)?"replace":"push"](Ft(e.to)).catch(to);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>l),l}return Promise.resolve()}return{route:r,href:U(()=>r.value.href),isActive:i,isExactActive:o,navigate:a}}function Mk(e){return e.length===1?e[0]:e}const Pk=Pc({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:Kp,setup(e,{slots:t}){const n=lt(Kp(e)),{options:r}=Oe(Wc),s=U(()=>({[Xp(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[Xp(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&Mk(t.default(n));return e.custom?i:Lr("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:s.value},i)}}}),Nk=Pk;function Lk(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function Dk(e,t){for(const n in t){const r=t[n],s=e[n];if(typeof r=="string"){if(r!==s)return!1}else if(!gn(s)||s.length!==r.length||r.some((i,o)=>i.valueOf()!==s[o].valueOf()))return!1}return!0}function Yp(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Xp=(e,t,n)=>e??t??n,Fk=Pc({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Oe(Pu),s=U(()=>e.route||r.value),i=Oe(Vp,0),o=U(()=>{let l=Ft(i);const{matched:u}=s.value;let f;for(;(f=u[l])&&!f.components;)l++;return l}),a=U(()=>s.value.matched[o.value]);Ct(Vp,U(()=>o.value+1)),Ct(dk,a),Ct(Pu,s);const c=Ee();return Se(()=>[c.value,a.value,e.name],([l,u,f],[d,h,p])=>{u&&(u.instances[f]=l,h&&h!==u&&l&&l===d&&(u.leaveGuards.size||(u.leaveGuards=h.leaveGuards),u.updateGuards.size||(u.updateGuards=h.updateGuards))),l&&u&&(!h||!ti(u,h)||!d)&&(u.enterCallbacks[f]||[]).forEach(m=>m(l))},{flush:"post"}),()=>{const l=s.value,u=e.name,f=a.value,d=f&&f.components[u];if(!d)return Jp(n.default,{Component:d,route:l});const h=f.props[u],p=h?h===!0?l.params:typeof h=="function"?h(l):h:null,y=Lr(d,Ne({},p,t,{onVnodeUnmounted:g=>{g.component.isUnmounted&&(f.instances[u]=null)},ref:c}));return Jp(n.default,{Component:y,route:l})||y}}});function Jp(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const $k=Fk;function Bk(e){const t=kk(e.routes,e),n=e.parseQuery||uk,r=e.stringifyQuery||Hp,s=e.history,i=Fi(),o=Fi(),a=Fi(),c=be(fr);let l=fr;Ms&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=Rl.bind(null,C=>""+C),f=Rl.bind(null,GI),d=Rl.bind(null,bo);function h(C,W){let z,re;return __(C)?(z=t.getRecordMatcher(C),re=W):re=C,t.addRoute(re,z)}function p(C){const W=t.getRecordMatcher(C);W&&t.removeRoute(W)}function m(){return t.getRoutes().map(C=>C.record)}function y(C){return!!t.getRecordMatcher(C)}function g(C,W){if(W=Ne({},W||c.value),typeof C=="string"){const k=Al(n,C,W.path),P=t.resolve({path:k.path},W),H=s.createHref(k.fullPath);return Ne(k,P,{params:d(P.params),hash:bo(k.hash),redirectedFrom:void 0,href:H})}let z;if(C.path!=null)z=Ne({},C,{path:Al(n,C.path,W.path).path});else{const k=Ne({},C.params);for(const P in k)k[P]==null&&delete k[P];z=Ne({},C,{params:f(k)}),W.params=f(W.params)}const re=t.resolve(z,W),_e=C.hash||"";re.params=u(d(re.params));const b=XI(r,Ne({},C,{hash:jI(_e),path:re.path})),S=s.createHref(b);return Ne({fullPath:b,hash:_e,query:r===Hp?fk(C.query):C.query||{}},re,{redirectedFrom:void 0,href:S})}function v(C){return typeof C=="string"?Al(n,C,c.value.path):Ne({},C)}function _(C,W){if(l!==C)return ni(tt.NAVIGATION_CANCELLED,{from:W,to:C})}function T(C){return E(C)}function O(C){return T(Ne(v(C),{replace:!0}))}function R(C,W){const z=C.matched[C.matched.length-1];if(z&&z.redirect){const{redirect:re}=z;let _e=typeof re=="function"?re(C,W):re;return typeof _e=="string"&&(_e=_e.includes("?")||_e.includes("#")?_e=v(_e):{path:_e},_e.params={}),Ne({query:C.query,hash:C.hash,params:_e.path!=null?{}:C.params},_e)}}function E(C,W){const z=l=g(C),re=c.value,_e=C.state,b=C.force,S=C.replace===!0,k=R(z,re);if(k)return E(Ne(v(k),{state:typeof k=="object"?Ne({},_e,k.state):_e,force:b,replace:S}),W||z);const P=z;P.redirectedFrom=W;let H;return!b&&JI(r,re,z)&&(H=ni(tt.NAVIGATION_DUPLICATED,{to:P,from:re}),ce(re,re,!0,!1)),(H?Promise.resolve(H):A(P,re)).catch($=>Fn($)?Fn($,tt.NAVIGATION_GUARD_REDIRECT)?$:q($):D($,P,re)).then($=>{if($){if(Fn($,tt.NAVIGATION_GUARD_REDIRECT))return E(Ne({replace:S},v($.to),{state:typeof $.to=="object"?Ne({},_e,$.to.state):_e,force:b}),W||P)}else $=x(P,re,!0,S,_e);return M(P,re,$),$})}function w(C,W){const z=_(C,W);return z?Promise.reject(z):Promise.resolve()}function I(C){const W=Me.values().next().value;return W&&typeof W.runWithContext=="function"?W.runWithContext(C):C()}function A(C,W){let z;const[re,_e,b]=hk(C,W);z=Ml(re.reverse(),"beforeRouteLeave",C,W);for(const k of re)k.leaveGuards.forEach(P=>{z.push(_r(P,C,W))});const S=w.bind(null,C,W);return z.push(S),Ge(z).then(()=>{z=[];for(const k of i.list())z.push(_r(k,C,W));return z.push(S),Ge(z)}).then(()=>{z=Ml(_e,"beforeRouteUpdate",C,W);for(const k of _e)k.updateGuards.forEach(P=>{z.push(_r(P,C,W))});return z.push(S),Ge(z)}).then(()=>{z=[];for(const k of b)if(k.beforeEnter)if(gn(k.beforeEnter))for(const P of k.beforeEnter)z.push(_r(P,C,W));else z.push(_r(k.beforeEnter,C,W));return z.push(S),Ge(z)}).then(()=>(C.matched.forEach(k=>k.enterCallbacks={}),z=Ml(b,"beforeRouteEnter",C,W,I),z.push(S),Ge(z))).then(()=>{z=[];for(const k of o.list())z.push(_r(k,C,W));return z.push(S),Ge(z)}).catch(k=>Fn(k,tt.NAVIGATION_CANCELLED)?k:Promise.reject(k))}function M(C,W,z){a.list().forEach(re=>I(()=>re(C,W,z)))}function x(C,W,z,re,_e){const b=_(C,W);if(b)return b;const S=W===fr,k=Ms?history.state:{};z&&(re||S?s.replace(C.fullPath,Ne({scroll:S&&k&&k.scroll},_e)):s.push(C.fullPath,_e)),c.value=C,ce(C,W,z,S),q()}let N;function L(){N||(N=s.listen((C,W,z)=>{if(!Fe.listening)return;const re=g(C),_e=R(re,Fe.currentRoute.value);if(_e){E(Ne(_e,{replace:!0,force:!0}),re).catch(to);return}l=re;const b=c.value;Ms&&ik(Bp(b.fullPath,z.delta),Uc()),A(re,b).catch(S=>Fn(S,tt.NAVIGATION_ABORTED|tt.NAVIGATION_CANCELLED)?S:Fn(S,tt.NAVIGATION_GUARD_REDIRECT)?(E(Ne(v(S.to),{force:!0}),re).then(k=>{Fn(k,tt.NAVIGATION_ABORTED|tt.NAVIGATION_DUPLICATED)&&!z.delta&&z.type===Ou.pop&&s.go(-1,!1)}).catch(to),Promise.reject()):(z.delta&&s.go(-z.delta,!1),D(S,re,b))).then(S=>{S=S||x(re,b,!1),S&&(z.delta&&!Fn(S,tt.NAVIGATION_CANCELLED)?s.go(-z.delta,!1):z.type===Ou.pop&&Fn(S,tt.NAVIGATION_ABORTED|tt.NAVIGATION_DUPLICATED)&&s.go(-1,!1)),M(re,b,S)}).catch(to)}))}let G=Fi(),J=Fi(),j;function D(C,W,z){q(C);const re=J.list();return re.length?re.forEach(_e=>_e(C,W,z)):console.error(C),Promise.reject(C)}function ae(){return j&&c.value!==fr?Promise.resolve():new Promise((C,W)=>{G.add([C,W])})}function q(C){return j||(j=!C,L(),G.list().forEach(([W,z])=>C?z(C):W()),G.reset()),C}function ce(C,W,z,re){const{scrollBehavior:_e}=e;if(!Ms||!_e)return Promise.resolve();const b=!z&&ok(Bp(C.fullPath,0))||(re||!z)&&history.state&&history.state.scroll||null;return dt().then(()=>_e(C,W,b)).then(S=>S&&sk(S)).catch(S=>D(S,C,W))}const le=C=>s.go(C);let ve;const Me=new Set,Fe={currentRoute:c,listening:!0,addRoute:h,removeRoute:p,clearRoutes:t.clearRoutes,hasRoute:y,getRoutes:m,resolve:g,options:e,push:T,replace:O,go:le,back:()=>le(-1),forward:()=>le(1),beforeEach:i.add,beforeResolve:o.add,afterEach:a.add,onError:J.add,isReady:ae,install(C){C.component("RouterLink",Nk),C.component("RouterView",$k),C.config.globalProperties.$router=Fe,Object.defineProperty(C.config.globalProperties,"$route",{enumerable:!0,get:()=>Ft(c)}),Ms&&!ve&&c.value===fr&&(ve=!0,T(s.location).catch(re=>{}));const W={};for(const re in fr)Object.defineProperty(W,re,{get:()=>c.value[re],enumerable:!0});C.provide(Wc,Fe),C.provide(rd,wy(W)),C.provide(Pu,c);const z=C.unmount;Me.add(C),C.unmount=function(){Me.delete(C),Me.size<1&&(l=fr,N&&N(),N=null,c.value=fr,ve=!1,j=!1),z()}}};function Ge(C){return C.reduce((W,z)=>W.then(()=>I(z)),Promise.resolve())}return Fe}function IH(){return Oe(Wc)}function kH(e){return Oe(rd)}const Hk=e=>{const t={};Object.entries(Object.assign({"/src/layouts/default.vue":()=>ht(()=>import("./default-BdaTlbaW.js"),__vite__mapDeps([0,1]),import.meta.url)})).forEach(([s,i])=>{let o=s.replace("/src/layouts/","").replace(".vue","");t[o]=i});function r(s,i=!0){return s.map(o=>{var a,c,l,u,f,d;if(((a=o.children)==null?void 0:a.length)>0&&(o.children=r(o.children,!1)),i){if(!o.component&&((c=o.children)==null?void 0:c.find(p=>{var m;return(p.path===""||p.path==="/")&&((m=p.meta)==null?void 0:m.isLayout)})))return o;if(((l=o.meta)==null?void 0:l.layout)!==!1)return{path:o.path,component:t[((u=o.meta)==null?void 0:u.layout)||"default"],children:o.path==="/"?[o]:[{...o,path:""}],meta:{isLayout:!0}}}return(f=o.meta)!=null&&f.layout?{path:o.path,component:t[(d=o.meta)==null?void 0:d.layout],children:[{...o,path:""}],meta:{isLayout:!0}}:o})}return r(e)},Vk=[{path:"/",name:"/",component:()=>ht(()=>import("./index-DDM9P6IV.js"),__vite__mapDeps([2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]),import.meta.url)},{path:"/404",name:"/404",component:()=>ht(()=>import("./404-BUV7S865.js"),__vite__mapDeps([40,14,35]),import.meta.url)},{path:"/authorize",name:"/authorize",component:()=>ht(()=>import("./authorize-B6ScKHRa.js"),__vite__mapDeps([41,14,35]),import.meta.url)},{path:"/CacheManagement",name:"/CacheManagement",component:()=>ht(()=>import("./CacheManagement-DoF_G4xZ.js"),__vite__mapDeps([42,6,7,37,38,12,13,8,9,14,35]),import.meta.url)},{path:"/cses2wakeup",name:"/cses2wakeup",component:()=>ht(()=>import("./cses2wakeup-CFK6QLBO.js"),__vite__mapDeps([43,14,6,7,44,33,22,19,15,16,20,34,21,12,13,23,45,10,11,17,18,8,9,35,46]),import.meta.url)},{path:"/debug",name:"/debug",component:()=>ht(()=>import("./debug-KU27ZD5S.js"),__vite__mapDeps([47,35,48]),import.meta.url)},{path:"/debug-init",name:"/debug-init",component:()=>ht(()=>import("./debug-init-CBNN17PW.js"),__vite__mapDeps([49,4,5,14,36,15,16,35]),import.meta.url)},{path:"/debug-socket",name:"/debug-socket",component:()=>ht(()=>import("./debug-socket-sq4UK_d2.js"),__vite__mapDeps([50,27,5,32,14,12,13,15,16,17,18,35]),import.meta.url)},{path:"/exam-editor",children:[{path:":id",name:"/exam-editor/[id]",component:()=>ht(()=>import("./_id_-9DDLDO6h.js"),__vite__mapDeps([51,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,29,30,35]),import.meta.url)}]},{path:"/examschedule",name:"/examschedule",component:()=>ht(()=>import("./examschedule-DlYuJdDl.js"),__vite__mapDeps([52,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,35,53]),import.meta.url)},{path:"/list",children:[{path:"",name:"/list/",component:()=>ht(()=>import("./index-bqvMdhMd.js"),__vite__mapDeps([54,4,5,29,30,15,16,35]),import.meta.url)},{path:":id",name:"/list/[id]",component:()=>ht(()=>import("./_id_-DzoDISsJ.js"),__vite__mapDeps([55,4,5,29,30,15,16,22,19,20,12,13,17,18,35]),import.meta.url)}]},{path:"/settings",name:"/settings",component:()=>ht(()=>import("./settings-BmFKtRQg.js"),__vite__mapDeps([56,28,29,30,15,16,21,22,19,20,12,13,23,31,4,5,6,7,14,35,33,34,17,18,36,37,38,44,45,24,25,57]),import.meta.url)},{path:"/socket-debugger",name:"/socket-debugger",component:()=>ht(()=>import("./socket-debugger-qP6I1v4J.js"),__vite__mapDeps([58,27,5,14,12,13,15,16,17,18,19,20,6,7,35,59]),import.meta.url)}],jc=Bk({history:yk("./"),routes:Hk(Vk)});jc.onError((e,t)=>{var n,r;(r=(n=e==null?void 0:e.message)==null?void 0:n.includes)!=null&&r.call(n,"Failed to fetch dynamically imported module")?localStorage.getItem("vuetify:dynamic-reload")?console.error("Dynamic import error, reloading page did not fix it",e):(console.log("Reloading page to fix dynamic import error"),localStorage.setItem("vuetify:dynamic-reload","true"),location.assign(t.fullPath)):console.error(e)});jc.isReady().then(()=>{localStorage.removeItem("vuetify:dynamic-reload")});function Uk(e){e.use(kI).use(jc).use(PI)}async function Wk(){return typeof Notification<"u"&&Notification.requestPermission?await Notification.requestPermission()==="granted"?(console.log("通知权限已授予"),!0):(console.warn("通知权限被拒绝"),!1):(console.warn("浏览器不支持通知权限请求"),!1)}async function jk(){var e;try{return(e=navigator.storage)!=null&&e.persist?await navigator.storage.persist():!1}catch(t){return console.warn("请求持久性存储失败:",t),!1}}const Pl="Classworks_settings",Zp={"server.domain":"https://kv-service.houlang.cloud","server.siteKey":""},mr={"device.uuid":{type:"string",default:"00000000-0000-4000-8000-000000000000",description:"设备唯一标识符",icon:"mdi-identifier"},"storage.persistOnLoad":{type:"boolean",default:!0,description:"是否在页面加载时自动请求持久性存储",icon:"mdi-database-sync"},"display.emptySubjectDisplay":{type:"string",default:"card",validate:e=>["card","button"].includes(e),description:"空科目的显示方式",icon:"mdi-card-outline"},"hitokoto.enabled":{type:"boolean",default:!0,description:"启用一言",icon:"mdi-comment-quote"},"hitokoto.refreshInterval":{type:"number",default:300,description:"刷新时间(秒,0为不自动刷新)",icon:"mdi-timer-refresh"},"display.dynamicSort":{type:"boolean",default:!0,description:"是否启用动态排序",icon:"mdi-sort-variant"},"display.showRandomButton":{type:"boolean",default:!1,description:"是否显示随机点人按钮",icon:"mdi-shuffle-variant"},"display.showFullscreenButton":{type:"boolean",default:!0,description:"是否显示全屏按钮",icon:"mdi-fullscreen"},"display.cardHoverEffect":{type:"boolean",default:!0,description:"是否启用卡片悬浮效果",icon:"mdi-gesture-tap"},"display.enhancedTouchMode":{type:"boolean",default:!0,description:"是否启用增强触摸模式",icon:"mdi-gesture-tap-button"},"display.showAntiScreenBurnCard":{type:"boolean",default:!1,description:"是否显示防烧屏忽悠卡片",icon:"mdi-monitor-shimmer"},"display.showListCard":{type:"boolean",default:!0,description:"是否显示列表卡片",icon:"mdi-list-box"},"display.showExamScheduleButton":{type:"boolean",default:!0,description:"是否显示考试看板",icon:"mdi-calendar-check"},"display.showQuickTools":{type:"boolean",default:!0,description:"是否显示快捷键盘",icon:"mdi-dialpad"},"display.forceDesktopMode":{type:"boolean",default:!1,description:"强制使用一体机UI模式",icon:"mdi-monitor"},"display.lateStudentsArePresent":{type:"boolean",default:!1,description:"将迟到人数算入出勤人数",icon:"mdi-clock-fast"},"server.domain":{type:"string",default:"",validate:e=>{if(!e)return!0;try{return new URL(e),!0}catch(t){return console.error("域名格式无效:",t),!1}},description:"后端服务器域名",icon:"mdi-web"},"server.classNumber":{type:"string",default:"高三八班",validate:e=>/.*/.test(e),description:"班级编号",icon:"mdi-account-group"},"server.siteKey":{type:"string",default:"",description:"网站令牌",icon:"mdi-key-chain"},"server.kvToken":{type:"string",default:"",description:"KV授权令牌",icon:"mdi-shield-key"},"server.authDomain":{type:"string",default:"https://kv.houlang.cloud",description:"授权服务器域名",icon:"mdi-shield-account",validate:e=>{if(!e)return!0;try{return new URL(e),!0}catch(t){return console.error("授权域名格式无效:",t),!1}}},"server.provider":{type:"string",default:"classworkscloud",validate:e=>["kv-local","kv-server","classworkscloud"].includes(e),description:"数据提供者",icon:"mdi-database"},"refresh.auto":{type:"boolean",default:!1,description:"是否启用自动刷新",icon:"mdi-refresh-auto"},"refresh.interval":{type:"number",default:300,validate:e=>e>=10&&e<=3600,description:"自动刷新间隔(秒)",icon:"mdi-timer-outline"},"font.size":{type:"number",default:28,validate:e=>e>=16&&e<=100,description:"字体大小",icon:"mdi-format-size"},"edit.autoSave":{type:"boolean",default:!0,description:"是否启用自动保存",icon:"mdi-content-save-outline"},"edit.blockNonTodayAutoSave":{type:"boolean",default:!0,description:"禁止自动保存非当天数据",icon:"mdi-calendar-lock"},"edit.refreshBeforeEdit":{type:"boolean",default:!0,description:"编辑前是否自动刷新",icon:"mdi-refresh"},"edit.confirmNonTodaySave":{type:"boolean",default:!0,description:"保存非当天数据需确认",icon:"mdi-calendar-alert"},"edit.blockPastDataEdit":{type:"boolean",default:!1,description:"禁止编辑过往数据",icon:"mdi-lock-clock"},"edit.autoSavePromptText":{type:"string",default:"喵?喵呜!",description:"自动保存模式提示文本",icon:"mdi-text-box-outline"},"edit.manualSavePromptText":{type:"string",default:"写完后点击上传谢谢喵",description:"手动保存模式提示文本",icon:"mdi-text-box-outline"},"developer.enabled":{type:"boolean",default:!1,description:"是否启用开发者选项",icon:"mdi-developer-board"},"developer.showDebugConfig":{type:"boolean",default:!1,description:"是否显示调试配置",icon:"mdi-bug-outline"},"developer.disableMessageLog":{type:"boolean",default:!1,description:"禁用消息日志记录",requireDeveloper:!0,icon:"mdi-message-off-outline"},"message.showSidebar":{type:"boolean",default:!0,description:"是否显示消息记录侧栏",requireDeveloper:!0,icon:"mdi-message-text-outline"},"message.maxActiveMessages":{type:"number",default:5,validate:e=>e>=1&&e<=10,description:"同时显示的最大消息数量",requireDeveloper:!0,icon:"mdi-message-badge-outline"},"message.timeout":{type:"number",default:5e3,validate:e=>e>=1e3&&e<=3e4,description:"消息自动关闭时间(毫秒)",requireDeveloper:!0,icon:"mdi-timer-sand"},"message.saveHistory":{type:"boolean",default:!0,description:"是否保存消息历史记录",requireDeveloper:!0,icon:"mdi-history"},"theme.mode":{type:"string",default:"dark",validate:e=>["light","dark"].includes(e),description:"主题模式",icon:"mdi-theme-light-dark"},"notification.singleSound":{type:"string",default:"Teams 默认.mp3",description:"单次通知铃声",icon:"mdi-bell-ring"},"notification.urgentSound":{type:"string",default:"Teams 默认通话铃.mp3",description:"持续通知铃声",icon:"mdi-bell-alert"},"randomPicker.enabled":{type:"boolean",default:!0,description:"是否启用随机点名功能",icon:"mdi-account-question"},"randomPicker.animation":{type:"boolean",default:!0,description:"是否启用随机点名动画效果",icon:"mdi-animation-play"},"randomPicker.defaultCount":{type:"number",default:1,validate:e=>e>=1&&e,description:"默认抽取人数",icon:"mdi-counter"},"randomPicker.excludeAbsent":{type:"boolean",default:!0,description:"是否排除请假学生",icon:"mdi-account-off"},"randomPicker.excludeLate":{type:"boolean",default:!1,description:"是否排除迟到学生",icon:"mdi-clock-alert"},"randomPicker.excludeExcluded":{type:"boolean",default:!0,description:"是否排除不参与学生",icon:"mdi-account-cancel"},"randomPicker.mode":{type:"string",default:"name",validate:e=>["name","number"].includes(e),description:"随机点名模式",icon:"mdi-format-list-numbered"},"randomPicker.maxNumber":{type:"number",default:60,validate:e=>e>=1&&e,description:"学号模式最大值",icon:"mdi-numeric"},"randomPicker.minNumber":{type:"number",default:1,validate:e=>e>=1&&e,description:"学号模式最小值",icon:"mdi-numeric-negative-1"},"pwa.hideInstallCard":{type:"boolean",default:!1,description:"不显示PWA安装卡片",icon:"mdi-download-off"}};class zk{constructor(){this.settingsCache=null,this.isInitialized=!1}init(){this.isInitialized||(this.loadSettings(),this.isInitialized=!0)}loadSettings(){this.settingsCache={};try{const t=typeof localStorage<"u"?localStorage.getItem(Pl):null;t&&(this.settingsCache=JSON.parse(t))}catch(t){console.error("加载设置失败:",t)}for(const[t,n]of Object.entries(mr))t in this.settingsCache||(this.settingsCache[t]=n.default);return this.settingsCache}saveSettings(){if(!(typeof localStorage>"u"))try{localStorage.setItem(Pl,JSON.stringify(this.settingsCache))}catch(t){console.error("保存设置失败:",t)}}getSetting(t){this.isInitialized||this.init();const n=mr[t];if(!n)return console.warn(`未定义的设置项: ${t}`),null;if(n.requireDeveloper&&!this.settingsCache["developer.enabled"])return n.default;if(this.settingsCache["server.provider"]==="classworkscloud"&&Zp[t]!==void 0)return Zp[t];const r=this.settingsCache[t];return r!==void 0?r:n.default}setSetting(t,n){this.isInitialized||this.init();const r=mr[t];if(!r)return console.warn(`未定义的设置项: ${t}`),!1;if(r.requireDeveloper&&!this.settingsCache["developer.enabled"])return console.warn(`设置项 ${t} 需要启用开发者选项`),!1;try{const s=this.settingsCache[t];if(typeof n!==r.type&&(n=r.type==="boolean"?!!n:r.type==="number"?Number(n):String(n)),r.validate&&!r.validate(n))return console.warn(`设置项 ${t} 的值无效`),!1;this.settingsCache[t]=n,this.saveSettings(),this.logSettingsChange(t,s,n);const i=r.legacyKey;return i&&typeof localStorage<"u"&&localStorage.setItem(i,n.toString()),!0}catch(s){return console.error(`设置配置项 ${t} 失败:`,s),!1}}logSettingsChange(t,n,r){this.settingsCache["developer.enabled"]&&this.settingsCache["developer.showDebugConfig"]&&console.log(`[Settings] ${t}:`,{old:n,new:r,time:new Date().toLocaleTimeString()})}resetSetting(t){this.isInitialized||this.init();const n=mr[t];if(!n){console.warn(`未定义的设置项: ${t}`);return}this.settingsCache[t]=n.default,this.saveSettings()}resetAllSettings(){this.settingsCache={};for(const[t,n]of Object.entries(mr))this.settingsCache[t]=n.default;this.saveSettings()}watchSettings(t){if(typeof window>"u")return()=>{};const n=r=>{r.key===Pl&&(this.settingsCache=JSON.parse(r.newValue),t(this.settingsCache))};return window.addEventListener("storage",n),()=>window.removeEventListener("storage",n)}getSettingDefinition(t){return mr[t]||null}exportSettingsAsKeyValue(){this.isInitialized||this.init();const t={};for(const n in mr)t[n]=this.getSetting(n);return t}}const Fr=new zk;typeof window<"u"&&Fr.init();const sd=e=>Fr.getSetting(e),qk=(e,t)=>Fr.setSetting(e,t),Gk=e=>Fr.resetSetting(e),Kk=e=>Fr.watchSettings(e),Yk=e=>Fr.getSettingDefinition(e),Xk=()=>Fr.exportSettingsAsKeyValue(),xH=Object.freeze(Object.defineProperty({__proto__:null,SettingsManager:Fr,exportSettingsAsKeyValue:Xk,getSetting:sd,getSettingDefinition:Yk,requestNotificationPermission:Wk,requestPersistentStorage:jk,resetSetting:Gk,setSetting:qk,settingsDefinitions:mr,watchSettings:Kk},Symbol.toStringTag,{value:"Module"}));class Jk{constructor(){this.logs=[]}async addLog(t){return this.logs.push(t),this.logs.length>100&&this.logs.shift(),!0}async getLogs(t=20){return this.logs.slice(-t).reverse()}}const Ia=new Jk,In=[];let ka=null,Tn=null;const $i={SUCCESS:"success",ERROR:"error",INFO:"info",WARNING:"warning"},Zk={timeout:3e3,showSnackbar:!0,addToLog:!0};async function ua(e,t,n="",r={}){const s={...Zk,...r},i={id:Date.now()+Math.random(),type:e,title:t,content:n.substring(0,500),timestamp:new Date};if(s.addToLog)try{for(await Ia.addLog(i),In.unshift(i);In.length>sd("message.maxActiveMessages");)In.pop();Tn==null||Tn(In)}catch(o){console.error("保存日志失败:",o)}return s.showSnackbar&&(ka==null||ka(i)),i}function Qk(e,t){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{e.apply(this,r)},t)}}const Ps={install:e=>{e.config.globalProperties.$message={success:(t,n,r)=>ua($i.SUCCESS,t,n,r),error:(t,n,r)=>ua($i.ERROR,t,n,r),info:(t,n,r)=>ua($i.INFO,t,n,r),warning:(t,n,r)=>ua($i.WARNING,t,n,r)}},onSnackbar:e=>{ka=e},onLog:e=>{Tn=e},getMessages:async()=>{try{return await Ia.getLogs()}catch(e){return console.error("获取日志失败:",e),[...In]}},clearMessages:async()=>{try{await Ia.clearLogs(),In.length=0,Tn==null||Tn(In)}catch(e){console.error("清除日志失败:",e)}},MessageType:$i,markAsRead:()=>{},deleteMessage:async e=>{try{await Ia.deleteLog(e);const t=In.findIndex(n=>n.id===e);t!==-1&&In.splice(t,1),Tn==null||Tn(In)}catch(t){console.error("删除消息失败:",t)}},getUnreadCount:()=>0,debounce:Qk},T_=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},vi=ie({border:[Boolean,Number,String]},"border");function _i(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();return{borderClasses:U(()=>{const r=e.border;return r===!0||r===""?`${t}--border`:typeof r=="string"||r===0?String(r).split(" ").map(s=>`border-${s}`):[]})}}const ex=[null,"default","comfortable","compact"],vs=ie({density:{type:String,default:"default",validator:e=>ex.includes(e)}},"density");function bi(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();return{densityClasses:Q(()=>`${t}--density-${e.density}`)}}const $o=ie({elevation:{type:[Number,String],validator(e){const t=parseInt(e);return!isNaN(t)&&t>=0&&t<=24}}},"elevation");function Bo(e){return{elevationClasses:Q(()=>{const n=qe(e)?e.value:e.elevation;return n==null?[]:[`elevation-${n}`]})}}const ar=ie({rounded:{type:[Boolean,Number,String],default:void 0},tile:Boolean},"rounded");function cr(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();return{roundedClasses:U(()=>{const r=qe(e)?e.value:e.rounded,s=qe(e)?!1:e.tile,i=[];if(s||r===!1)i.push("rounded-0");else if(r===!0||r==="")i.push(`${t}--rounded`);else if(typeof r=="string"||r===0)for(const o of String(r).split(" "))i.push(`rounded-${o}`);return i})}}const It=ie({tag:{type:[String,Object,Function],default:"div"}},"tag");function id(e){return Gf(()=>{const{class:t,style:n}=tx(e);return{colorClasses:t,colorStyles:n}})}function ri(e){const{colorClasses:t,colorStyles:n}=id(()=>({text:mt(e)}));return{textColorClasses:t,textColorStyles:n}}function Gs(e){const{colorClasses:t,colorStyles:n}=id(()=>({background:mt(e)}));return{backgroundColorClasses:t,backgroundColorStyles:n}}function tx(e){const t=mt(e),n=[],r={};if(t.background)if(Tu(t.background)){if(r.backgroundColor=t.background,!t.text&>(t.background)){const s=Rn(t.background);if(s.a==null||s.a===1){const i=jv(s);r.color=i,r.caretColor=i}}}else n.push(`bg-${t.background}`);return t.text&&(Tu(t.text)?(r.color=t.text,r.caretColor=t.text):n.push(`text-${t.text}`)),{class:n,style:r}}const nx=["elevated","flat","tonal","outlined","text","plain"];function Ho(e,t){return ne(Ke,null,[e&&ne("span",{key:"overlay",class:Re(`${t}__overlay`)},null),ne("span",{key:"underlay",class:Re(`${t}__underlay`)},null)])}const _s=ie({color:String,variant:{type:String,default:"elevated",validator:e=>nx.includes(e)}},"variant");function Vo(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();const n=Q(()=>{const{variant:i}=mt(e);return`${t}--variant-${i}`}),{colorClasses:r,colorStyles:s}=id(()=>{const{variant:i,color:o}=mt(e);return{[["elevated","flat"].includes(i)?"background":"text"]:o}});return{colorClasses:r,colorStyles:s,variantClasses:n}}const C_=ie({baseColor:String,divided:Boolean,direction:{type:String,default:"horizontal"},...vi(),...rt(),...vs(),...$o(),...ar(),...It(),...Yt(),..._s()},"VBtnGroup"),Qp=Pe()({name:"VBtnGroup",props:C_(),setup(e,t){let{slots:n}=t;const{themeClasses:r}=cn(e),{densityClasses:s}=bi(e),{borderClasses:i}=_i(e),{elevationClasses:o}=Bo(e),{roundedClasses:a}=cr(e);Bc({VBtn:{height:Q(()=>e.direction==="horizontal"?"auto":null),baseColor:Q(()=>e.baseColor),color:Q(()=>e.color),density:Q(()=>e.density),flat:!0,variant:Q(()=>e.variant)}}),Je(()=>F(e.tag,{class:Re(["v-btn-group",`v-btn-group--${e.direction}`,{"v-btn-group--divided":e.divided},r.value,i.value,s.value,o.value,a.value,e.class]),style:ze(e.style)},n))}}),rx=ie({modelValue:{type:null,default:void 0},multiple:Boolean,mandatory:[Boolean,String],max:Number,selectedClass:String,disabled:Boolean},"group"),sx=ie({value:null,disabled:Boolean,selectedClass:String},"group-item");function ix(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;const r=ut("useGroupItem");if(!r)throw new Error("[Vuetify] useGroupItem composable must be used inside a component setup function");const s=Uy();Ct(Symbol.for(`${t.description}:id`),s);const i=Oe(t,null);if(!i){if(!n)return i;throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${t.description}`)}const o=Q(()=>e.value),a=U(()=>!!(i.disabled.value||e.disabled));function c(){i==null||i.register({id:s,value:o,disabled:a},r)}function l(){i==null||i.unregister(s)}c(),yn(()=>l());const u=U(()=>i.isSelected(s)),f=U(()=>i.items.value[0].id===s),d=U(()=>i.items.value[i.items.value.length-1].id===s),h=U(()=>u.value&&[i.selectedClass.value,e.selectedClass]);return Se(u,p=>{r.emit("group:selected",{value:p})},{flush:"sync"}),{id:s,isSelected:u,isFirst:f,isLast:d,toggle:()=>i.select(s,!u.value),select:p=>i.select(s,p),selectedClass:h,value:o,disabled:a,group:i,register:c,unregister:l}}function ox(e,t){let n=!1;const r=lt([]),s=zn(e,"modelValue",[],d=>d===void 0?[]:I_(r,d===null?[null]:qf(d)),d=>{const h=cx(r,d);return e.multiple?h:h[0]}),i=ut("useGroup");function o(d,h){const p=d,m=Symbol.for(`${t.description}:id`),g=Ds(m,i==null?void 0:i.vnode).indexOf(h);Ft(p.value)===void 0&&(p.value=g,p.useIndexAsValue=!0),g>-1?r.splice(g,0,p):r.push(p)}function a(d){if(n)return;c();const h=r.findIndex(p=>p.id===d);r.splice(h,1)}function c(){const d=r.find(h=>!h.disabled);d&&e.mandatory==="force"&&!s.value.length&&(s.value=[d.id])}Nr(()=>{c()}),yn(()=>{n=!0}),Df(()=>{for(let d=0;dm.id===d);if(!(h&&(p!=null&&p.disabled)))if(e.multiple){const m=s.value.slice(),y=m.findIndex(v=>v===d),g=~y;if(h=h??!g,g&&e.mandatory&&m.length<=1||!g&&e.max!=null&&m.length+1>e.max)return;y<0&&h?m.push(d):y>=0&&!h&&m.splice(y,1),s.value=m}else{const m=s.value.includes(d);if(e.mandatory&&m||!m&&!h)return;s.value=h??!m?[d]:[]}}function u(d){if(e.multiple,s.value.length){const h=s.value[0],p=r.findIndex(g=>g.id===h);let m=(p+d)%r.length,y=r[m];for(;y.disabled&&m!==p;)m=(m+d)%r.length,y=r[m];if(y.disabled)return;s.value=[r[m].id]}else{const h=r.find(p=>!p.disabled);h&&(s.value=[h.id])}}const f={register:o,unregister:a,selected:s,select:l,disabled:Q(()=>e.disabled),prev:()=>u(r.length-1),next:()=>u(1),isSelected:d=>s.value.includes(d),selectedClass:Q(()=>e.selectedClass),items:Q(()=>r),getItemIndex:d=>ax(r,d)};return Ct(t,f),f}function ax(e,t){const n=I_(e,[t]);return n.length?e.findIndex(r=>r.id===n[0]):-1}function I_(e,t){const n=[];return t.forEach(r=>{const s=e.find(o=>rs(r,o.value)),i=e[r];(s==null?void 0:s.value)!==void 0?n.push(s.id):i!=null&&i.useIndexAsValue&&n.push(i.id)}),n}function cx(e,t){const n=[];return t.forEach(r=>{const s=e.findIndex(i=>i.id===r);if(~s){const i=e[s];n.push(i.value!==void 0?i.value:s)}}),n}const k_=Symbol.for("vuetify:v-btn-toggle"),lx=ie({...C_(),...rx()},"VBtnToggle"),RH=Pe()({name:"VBtnToggle",props:lx(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const{isSelected:r,next:s,prev:i,select:o,selected:a}=ox(e,k_);return Je(()=>{const c=Qp.filterProps(e);return F(Qp,Ye({class:["v-btn-toggle",e.class]},c,{style:e.style}),{default:()=>{var l;return[(l=n.default)==null?void 0:l.call(n,{isSelected:r,next:s,prev:i,select:o,selected:a})]}})}),{next:s,prev:i,select:o}}}),ux=ie({defaults:Object,disabled:Boolean,reset:[Number,String],root:[Boolean,String],scoped:Boolean},"VDefaultsProvider"),nn=Pe(!1)({name:"VDefaultsProvider",props:ux(),setup(e,t){let{slots:n}=t;const{defaults:r,disabled:s,reset:i,root:o,scoped:a}=Mf(e);return Bc(r,{reset:i,root:o,scoped:a,disabled:s}),()=>{var c;return(c=n.default)==null?void 0:c.call(n)}}}),fx=["x-small","small","default","large","x-large"],zc=ie({size:{type:[String,Number],default:"default"}},"size");function qc(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();return Gf(()=>{const n=e.size;let r,s;return Ja(fx,n)?r=`${t}--size-${n}`:n&&(s={width:pe(n),height:pe(n)}),{sizeClasses:r,sizeStyles:s}})}const dx=ie({color:String,disabled:Boolean,start:Boolean,end:Boolean,icon:yt,opacity:[String,Number],...rt(),...zc(),...It({tag:"i"}),...Yt()},"VIcon"),Mn=Pe()({name:"VIcon",props:dx(),setup(e,t){let{attrs:n,slots:r}=t;const s=be(),{themeClasses:i}=s_(),{iconData:o}=dC(()=>s.value||e.icon),{sizeClasses:a}=qc(e),{textColorClasses:c,textColorStyles:l}=ri(()=>e.color);return Je(()=>{var d,h;const u=(d=r.default)==null?void 0:d.call(r);u&&(s.value=(h=Nv(u).filter(p=>p.type===No&&p.children&&typeof p.children=="string")[0])==null?void 0:h.children);const f=!!(n.onClick||n.onClickOnce);return F(o.value.component,{tag:e.tag,icon:o.value.icon,class:Re(["v-icon","notranslate",i.value,a.value,c.value,{"v-icon--clickable":f,"v-icon--disabled":e.disabled,"v-icon--start":e.start,"v-icon--end":e.end},e.class]),style:ze([{"--v-icon-opacity":e.opacity},a.value?void 0:{fontSize:pe(e.size),height:pe(e.size),width:pe(e.size)},l.value,e.style]),role:f?"button":void 0,"aria-hidden":!f,tabindex:f?e.disabled?-1:0:void 0},{default:()=>[u]})}),{}}});function x_(e,t){const n=Ee(),r=be(!1);if(Wf){const s=new IntersectionObserver(i=>{r.value=!!i.find(o=>o.isIntersecting)},t);_t(()=>{s.disconnect()}),Se(n,(i,o)=>{o&&(s.unobserve(o),r.value=!1),i&&s.observe(i)},{flush:"post"})}return{intersectionRef:n,isIntersecting:r}}const hx=ie({bgColor:String,color:String,indeterminate:[Boolean,String],rounded:Boolean,modelValue:{type:[Number,String],default:0},rotate:{type:[Number,String],default:0},width:{type:[Number,String],default:4},...rt(),...zc(),...It({tag:"div"}),...Yt()},"VProgressCircular"),px=Pe()({name:"VProgressCircular",props:hx(),setup(e,t){let{slots:n}=t;const r=20,s=2*Math.PI*r,i=Ee(),{themeClasses:o}=cn(e),{sizeClasses:a,sizeStyles:c}=qc(e),{textColorClasses:l,textColorStyles:u}=ri(()=>e.color),{textColorClasses:f,textColorStyles:d}=ri(()=>e.bgColor),{intersectionRef:h,isIntersecting:p}=x_(),{resizeRef:m,contentRect:y}=td(),g=Q(()=>Qn(parseFloat(e.modelValue),0,100)),v=Q(()=>Number(e.width)),_=Q(()=>c.value?Number(e.size):y.value?y.value.width:Math.max(v.value,32)),T=Q(()=>r/(1-v.value/_.value)*2),O=Q(()=>v.value/_.value*T.value),R=Q(()=>{const w=(100-g.value)/100*s;return e.rounded&&g.value>0&&g.value<100?pe(Math.min(s-.01,w+O.value)):pe(w)}),E=U(()=>{const w=Number(e.rotate);return e.rounded?w+O.value/2/s*360:w});return on(()=>{h.value=i.value,m.value=i.value}),Je(()=>F(e.tag,{ref:i,class:Re(["v-progress-circular",{"v-progress-circular--indeterminate":!!e.indeterminate,"v-progress-circular--visible":p.value,"v-progress-circular--disable-shrink":e.indeterminate&&(e.indeterminate==="disable-shrink"||po())},o.value,a.value,l.value,e.class]),style:ze([c.value,u.value,e.style]),role:"progressbar","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":e.indeterminate?void 0:g.value},{default:()=>[ne("svg",{style:{transform:`rotate(calc(-90deg + ${E.value}deg))`},xmlns:"http://www.w3.org/2000/svg",viewBox:`0 0 ${T.value} ${T.value}`},[ne("circle",{class:Re(["v-progress-circular__underlay",f.value]),style:ze(d.value),fill:"transparent",cx:"50%",cy:"50%",r,"stroke-width":O.value,"stroke-dasharray":s,"stroke-dashoffset":0},null),ne("circle",{class:"v-progress-circular__overlay",fill:"transparent",cx:"50%",cy:"50%",r,"stroke-width":O.value,"stroke-dasharray":s,"stroke-dashoffset":R.value,"stroke-linecap":e.rounded?"round":void 0},null)]),n.default&&ne("div",{class:"v-progress-circular__content"},[n.default({value:g.value})])]})),{}}}),Si=ie({height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String]},"dimension");function Ei(e){return{dimensionStyles:U(()=>{const n={},r=pe(e.height),s=pe(e.maxHeight),i=pe(e.maxWidth),o=pe(e.minHeight),a=pe(e.minWidth),c=pe(e.width);return r!=null&&(n.height=r),s!=null&&(n.maxHeight=s),i!=null&&(n.maxWidth=i),o!=null&&(n.minHeight=o),a!=null&&(n.minWidth=a),c!=null&&(n.width=c),n})}}const em={center:"center",top:"bottom",bottom:"top",left:"right",right:"left"},Gc=ie({location:String},"location");function od(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2?arguments[2]:void 0;const{isRtl:r}=Do();return{locationStyles:U(()=>{if(!e.location)return{};const{side:i,align:o}=wu(e.location.split(" ").length>1?e.location:`${e.location} center`,r.value);function a(l){return n?n(l):0}const c={};return i!=="center"&&(t?c[em[i]]=`calc(100% - ${a(i)}px)`:c[i]=0),o!=="center"?t?c[em[o]]=`calc(100% - ${a(o)}px)`:c[o]=0:(i==="center"?c.top=c.left="50%":c[{top:"left",bottom:"left",left:"top",right:"top"}[i]]="50%",c.transform={top:"translateX(-50%)",bottom:"translateX(-50%)",left:"translateY(-50%)",right:"translateY(-50%)",center:"translate(-50%, -50%)"}[i]),c})}}const mx=ie({chunkCount:{type:[Number,String],default:null},chunkWidth:{type:[Number,String],default:null},chunkGap:{type:[Number,String],default:4}},"chunks");function gx(e,t){const n=Q(()=>!!e.chunkCount||!!e.chunkWidth),r=U(()=>{const a=mt(t);if(!a)return 0;if(!e.chunkCount)return Number(e.chunkWidth);const c=Number(e.chunkCount);return(a-Number(e.chunkGap)*(c-1))/c}),s=Q(()=>Number(e.chunkGap)),i=U(()=>{if(!n.value)return{};const a=pe(s.value),c=pe(r.value);return{maskRepeat:"repeat-x",maskImage:`linear-gradient(90deg, #000, #000 ${c}, transparent ${c}, transparent)`,maskSize:`calc(${c} + ${a}) 100%`}});function o(a){const c=mt(t);if(!c)return a;const l=100*s.value/c,u=100*(r.value+s.value)/c,f=Math.floor((a+l)/u);return Qn(0,f*u-l/2,100)}return{hasChunks:n,chunksMaskStyles:i,snapValueToChunk:o}}const yx=ie({absolute:Boolean,active:{type:Boolean,default:!0},bgColor:String,bgOpacity:[Number,String],bufferValue:{type:[Number,String],default:0},bufferColor:String,bufferOpacity:[Number,String],clickable:Boolean,color:String,height:{type:[Number,String],default:4},indeterminate:Boolean,max:{type:[Number,String],default:100},modelValue:{type:[Number,String],default:0},opacity:[Number,String],reverse:Boolean,stream:Boolean,striped:Boolean,roundedBar:Boolean,...mx(),...rt(),...Gc({location:"top"}),...ar(),...It(),...Yt()},"VProgressLinear"),R_=Pe()({name:"VProgressLinear",props:yx(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const r=Ee(),s=zn(e,"modelValue"),{isRtl:i,rtlClasses:o}=Do(),{themeClasses:a}=cn(e),{locationStyles:c}=od(e),{textColorClasses:l,textColorStyles:u}=ri(()=>e.color),{backgroundColorClasses:f,backgroundColorStyles:d}=Gs(()=>e.bgColor||e.color),{backgroundColorClasses:h,backgroundColorStyles:p}=Gs(()=>e.bufferColor||e.bgColor||e.color),{backgroundColorClasses:m,backgroundColorStyles:y}=Gs(()=>e.color),{roundedClasses:g}=cr(e),{intersectionRef:v,isIntersecting:_}=x_(),T=U(()=>parseFloat(e.max)),O=U(()=>parseFloat(e.height)),R=U(()=>Qn(parseFloat(e.bufferValue)/T.value*100,0,100)),E=U(()=>Qn(parseFloat(s.value)/T.value*100,0,100)),w=U(()=>i.value!==e.reverse),I=U(()=>e.indeterminate?"fade-transition":"slide-x-transition"),A=be(0),{hasChunks:M,chunksMaskStyles:x,snapValueToChunk:N}=gx(e,A);yi(M,()=>{const{resizeRef:j}=td(D=>A.value=D[0].contentRect.width);on(()=>j.value=r.value)});const L=U(()=>M.value?N(R.value):R.value),G=U(()=>M.value?N(E.value):E.value);function J(j){if(!v.value)return;const{left:D,right:ae,width:q}=v.value.getBoundingClientRect(),ce=w.value?q-j.clientX+(ae-q):j.clientX-D;s.value=Math.round(ce/q*T.value)}return on(()=>{v.value=r.value}),Je(()=>F(e.tag,{ref:r,class:Re(["v-progress-linear",{"v-progress-linear--absolute":e.absolute,"v-progress-linear--active":e.active&&_.value,"v-progress-linear--reverse":w.value,"v-progress-linear--rounded":e.rounded,"v-progress-linear--rounded-bar":e.roundedBar,"v-progress-linear--striped":e.striped,"v-progress-linear--clickable":e.clickable},g.value,a.value,o.value,e.class]),style:ze([{bottom:e.location==="bottom"?0:void 0,top:e.location==="top"?0:void 0,height:e.active?pe(O.value):0,"--v-progress-linear-height":pe(O.value),...e.absolute?c.value:{}},x.value,e.style]),role:"progressbar","aria-hidden":e.active?"false":"true","aria-valuemin":"0","aria-valuemax":e.max,"aria-valuenow":e.indeterminate?void 0:Math.min(parseFloat(s.value),T.value),onClick:e.clickable&&J},{default:()=>[e.stream&&ne("div",{key:"stream",class:Re(["v-progress-linear__stream",l.value]),style:{...u.value,[w.value?"left":"right"]:pe(-O.value),borderTop:`${pe(O.value/2)} dotted`,opacity:parseFloat(e.bufferOpacity),top:`calc(50% - ${pe(O.value/4)})`,width:pe(100-R.value,"%"),"--v-progress-linear-stream-to":pe(O.value*(w.value?1:-1))}},null),ne("div",{class:Re(["v-progress-linear__background",f.value]),style:ze([d.value,{opacity:parseFloat(e.bgOpacity),width:e.stream?0:void 0}])},null),ne("div",{class:Re(["v-progress-linear__buffer",h.value]),style:ze([p.value,{opacity:parseFloat(e.bufferOpacity),width:pe(L.value,"%")}])},null),F(xr,{name:I.value},{default:()=>[e.indeterminate?ne("div",{class:"v-progress-linear__indeterminate"},[["long","short"].map(j=>ne("div",{key:j,class:Re(["v-progress-linear__indeterminate",j,m.value]),style:ze(y.value)},null))]):ne("div",{class:Re(["v-progress-linear__determinate",m.value]),style:ze([y.value,{width:pe(G.value,"%")}])},null)]}),n.default&&ne("div",{class:"v-progress-linear__content"},[n.default({value:E.value,buffer:R.value})])]})),{}}}),A_=ie({loading:[Boolean,String]},"loader");function O_(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();return{loaderClasses:Q(()=>({[`${t}--loading`]:e.loading}))}}function vx(e,t){var r;let{slots:n}=t;return ne("div",{class:Re(`${e.name}__loader`)},[((r=n.default)==null?void 0:r.call(n,{color:e.color,isActive:e.active}))||F(R_,{absolute:e.absolute,active:e.active,color:e.color,height:"2",indeterminate:!0},null)])}const _x=["static","relative","fixed","absolute","sticky"],ad=ie({position:{type:String,validator:e=>_x.includes(e)}},"position");function cd(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Dr();return{positionClasses:Q(()=>e.position?`${t}--${e.position}`:void 0)}}function bx(){const e=ut("useRoute");return U(()=>{var t;return(t=e==null?void 0:e.proxy)==null?void 0:t.$route})}function Sx(){var e,t;return(t=(e=ut("useRouter"))==null?void 0:e.proxy)==null?void 0:t.$router}function ld(e,t){var f,d;const n=Xy("RouterLink"),r=Q(()=>!!(e.href||e.to)),s=U(()=>(r==null?void 0:r.value)||rp(t,"click")||rp(e,"click"));if(typeof n=="string"||!("useLink"in n)){const h=Q(()=>e.href);return{isLink:r,isRouterLink:Q(()=>!1),isClickable:s,href:h,linkProps:lt({href:h})}}const i=n.useLink({to:Q(()=>e.to||""),replace:Q(()=>e.replace)}),o=U(()=>e.to?i:void 0),a=bx(),c=U(()=>{var h,p,m;return o.value?e.exact?a.value?((m=o.value.isExactActive)==null?void 0:m.value)&&rs(o.value.route.value.query,a.value.query):((p=o.value.isExactActive)==null?void 0:p.value)??!1:((h=o.value.isActive)==null?void 0:h.value)??!1:!1}),l=U(()=>{var h;return e.to?(h=o.value)==null?void 0:h.route.value.href:e.href});return{isLink:r,isRouterLink:Q(()=>!!e.to),isClickable:s,isActive:c,route:(f=o.value)==null?void 0:f.route,navigate:(d=o.value)==null?void 0:d.navigate,href:l,linkProps:lt({href:l,"aria-current":Q(()=>c.value?"page":void 0),"aria-disabled":Q(()=>e.disabled&&r.value?"true":void 0),tabindex:Q(()=>e.disabled&&r.value?"-1":void 0)})}}const ud=ie({href:String,replace:Boolean,to:[String,Object],exact:Boolean},"router");let Nl=!1;function Ex(e,t){let n=!1,r,s;Xe&&(e!=null&&e.beforeEach)&&(dt(()=>{window.addEventListener("popstate",i),r=e.beforeEach((o,a,c)=>{Nl?n?t(c):c():setTimeout(()=>n?t(c):c()),Nl=!0}),s=e==null?void 0:e.afterEach(()=>{Nl=!1})}),_t(()=>{window.removeEventListener("popstate",i),r==null||r(),s==null||s()}));function i(o){var a;(a=o.state)!=null&&a.replaced||(n=!0,setTimeout(()=>n=!1))}}function wx(e,t){Se(()=>{var n;return(n=e.isActive)==null?void 0:n.value},n=>{e.isLink.value&&n!=null&&t&&dt(()=>{t(n)})},{immediate:!0})}const Nu=Symbol("rippleStop"),Tx=80;function tm(e,t){e.style.transform=t,e.style.webkitTransform=t}function Lu(e){return e.constructor.name==="TouchEvent"}function M_(e){return e.constructor.name==="KeyboardEvent"}const Cx=function(e,t){var f;let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=0,s=0;if(!M_(e)){const d=t.getBoundingClientRect(),h=Lu(e)?e.touches[e.touches.length-1]:e;r=h.clientX-d.left,s=h.clientY-d.top}let i=0,o=.3;(f=t._ripple)!=null&&f.circle?(o=.15,i=t.clientWidth/2,i=n.center?i:i+Math.sqrt((r-i)**2+(s-i)**2)/4):i=Math.sqrt(t.clientWidth**2+t.clientHeight**2)/2;const a=`${(t.clientWidth-i*2)/2}px`,c=`${(t.clientHeight-i*2)/2}px`,l=n.center?a:`${r-i}px`,u=n.center?c:`${s-i}px`;return{radius:i,scale:o,x:l,y:u,centerX:a,centerY:c}},rc={show(e,t){var h;let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!((h=t==null?void 0:t._ripple)!=null&&h.enabled))return;const r=document.createElement("span"),s=document.createElement("span");r.appendChild(s),r.className="v-ripple__container",n.class&&(r.className+=` ${n.class}`);const{radius:i,scale:o,x:a,y:c,centerX:l,centerY:u}=Cx(e,t,n),f=`${i*2}px`;s.className="v-ripple__animation",s.style.width=f,s.style.height=f,t.appendChild(r);const d=window.getComputedStyle(t);d&&d.position==="static"&&(t.style.position="relative",t.dataset.previousPosition="static"),s.classList.add("v-ripple__animation--enter"),s.classList.add("v-ripple__animation--visible"),tm(s,`translate(${a}, ${c}) scale3d(${o},${o},${o})`),s.dataset.activated=String(performance.now()),requestAnimationFrame(()=>{requestAnimationFrame(()=>{s.classList.remove("v-ripple__animation--enter"),s.classList.add("v-ripple__animation--in"),tm(s,`translate(${l}, ${u}) scale3d(1,1,1)`)})})},hide(e){var i;if(!((i=e==null?void 0:e._ripple)!=null&&i.enabled))return;const t=e.getElementsByClassName("v-ripple__animation");if(t.length===0)return;const n=Array.from(t).findLast(o=>!o.dataset.isHiding);if(n)n.dataset.isHiding="true";else return;const r=performance.now()-Number(n.dataset.activated),s=Math.max(250-r,0);setTimeout(()=>{n.classList.remove("v-ripple__animation--in"),n.classList.add("v-ripple__animation--out"),setTimeout(()=>{var a;e.getElementsByClassName("v-ripple__animation").length===1&&e.dataset.previousPosition&&(e.style.position=e.dataset.previousPosition,delete e.dataset.previousPosition),((a=n.parentNode)==null?void 0:a.parentNode)===e&&e.removeChild(n.parentNode)},300)},s)}};function P_(e){return typeof e>"u"||!!e}function So(e){const t={},n=e.currentTarget;if(!(!(n!=null&&n._ripple)||n._ripple.touched||e[Nu])){if(e[Nu]=!0,Lu(e))n._ripple.touched=!0,n._ripple.isTouch=!0;else if(n._ripple.isTouch)return;if(t.center=n._ripple.centered||M_(e),n._ripple.class&&(t.class=n._ripple.class),Lu(e)){if(n._ripple.showTimerCommit)return;n._ripple.showTimerCommit=()=>{rc.show(e,n,t)},n._ripple.showTimer=window.setTimeout(()=>{var r;(r=n==null?void 0:n._ripple)!=null&&r.showTimerCommit&&(n._ripple.showTimerCommit(),n._ripple.showTimerCommit=null)},Tx)}else rc.show(e,n,t)}}function sc(e){e[Nu]=!0}function zt(e){const t=e.currentTarget;if(t!=null&&t._ripple){if(window.clearTimeout(t._ripple.showTimer),e.type==="touchend"&&t._ripple.showTimerCommit){t._ripple.showTimerCommit(),t._ripple.showTimerCommit=null,t._ripple.showTimer=window.setTimeout(()=>{zt(e)});return}window.setTimeout(()=>{t._ripple&&(t._ripple.touched=!1)}),rc.hide(t)}}function N_(e){const t=e.currentTarget;t!=null&&t._ripple&&(t._ripple.showTimerCommit&&(t._ripple.showTimerCommit=null),window.clearTimeout(t._ripple.showTimer))}let Eo=!1;function Ix(e,t){!Eo&&t.includes(e.key)&&(Eo=!0,So(e))}function L_(e){Eo=!1,zt(e)}function D_(e){Eo&&(Eo=!1,zt(e))}function F_(e,t,n){const{value:r,modifiers:s}=t,i=P_(r);i||rc.hide(e),e._ripple=e._ripple??{},e._ripple.enabled=i,e._ripple.centered=s.center,e._ripple.circle=s.circle;const o=Su(r)?r:{};o.class&&(e._ripple.class=o.class);const a=o.keys??["Enter","Space"];if(e._ripple.keyDownHandler=c=>Ix(c,a),i&&!n){if(s.stop){e.addEventListener("touchstart",sc,{passive:!0}),e.addEventListener("mousedown",sc);return}e.addEventListener("touchstart",So,{passive:!0}),e.addEventListener("touchend",zt,{passive:!0}),e.addEventListener("touchmove",N_,{passive:!0}),e.addEventListener("touchcancel",zt),e.addEventListener("mousedown",So),e.addEventListener("mouseup",zt),e.addEventListener("mouseleave",zt),e.addEventListener("keydown",e._ripple.keyDownHandler),e.addEventListener("keyup",L_),e.addEventListener("blur",D_),e.addEventListener("dragstart",zt,{passive:!0})}else!i&&n&&$_(e)}function $_(e){var t;e.removeEventListener("touchstart",sc),e.removeEventListener("mousedown",sc),e.removeEventListener("touchstart",So),e.removeEventListener("touchend",zt),e.removeEventListener("touchmove",N_),e.removeEventListener("touchcancel",zt),e.removeEventListener("mousedown",So),e.removeEventListener("mouseup",zt),e.removeEventListener("mouseleave",zt),(t=e._ripple)!=null&&t.keyDownHandler&&e.removeEventListener("keydown",e._ripple.keyDownHandler),e.removeEventListener("keyup",L_),e.removeEventListener("blur",D_),e.removeEventListener("dragstart",zt)}function kx(e,t){F_(e,t,!1)}function xx(e){$_(e),delete e._ripple}function Rx(e,t){if(t.value===t.oldValue)return;const n=P_(t.oldValue);F_(e,t,n)}const wo={mounted:kx,unmounted:xx,updated:Rx},Ax=ie({active:{type:Boolean,default:void 0},activeColor:String,baseColor:String,symbol:{type:null,default:k_},flat:Boolean,icon:[Boolean,String,Function,Object],prependIcon:yt,appendIcon:yt,block:Boolean,readonly:Boolean,slim:Boolean,stacked:Boolean,spaced:String,ripple:{type:[Boolean,Object],default:!0},text:{type:[String,Number,Boolean],default:void 0},...vi(),...rt(),...vs(),...Si(),...$o(),...sx(),...A_(),...Gc(),...ad(),...ar(),...ud(),...zc(),...It({tag:"button"}),...Yt(),..._s({variant:"elevated"})},"VBtn"),B_=Pe()({name:"VBtn",props:Ax(),emits:{"group:selected":e=>!0},setup(e,t){let{attrs:n,slots:r}=t;const{themeClasses:s}=cn(e),{borderClasses:i}=_i(e),{densityClasses:o}=bi(e),{dimensionStyles:a}=Ei(e),{elevationClasses:c}=Bo(e),{loaderClasses:l}=O_(e),{locationStyles:u}=od(e),{positionClasses:f}=cd(e),{roundedClasses:d}=cr(e),{sizeClasses:h,sizeStyles:p}=qc(e),m=ix(e,e.symbol,!1),y=ld(e,n),g=U(()=>{var M;return e.active!==void 0?e.active:y.isRouterLink.value?(M=y.isActive)==null?void 0:M.value:m==null?void 0:m.isSelected.value}),v=Q(()=>g.value?e.activeColor??e.color:e.color),_=U(()=>{var x,N;return{color:(m==null?void 0:m.isSelected.value)&&(!y.isLink.value||((x=y.isActive)==null?void 0:x.value))||!m||((N=y.isActive)==null?void 0:N.value)?v.value??e.baseColor:e.baseColor,variant:e.variant}}),{colorClasses:T,colorStyles:O,variantClasses:R}=Vo(_),E=U(()=>(m==null?void 0:m.disabled.value)||e.disabled),w=Q(()=>e.variant==="elevated"&&!(e.disabled||e.flat||e.border)),I=U(()=>{if(!(e.value===void 0||typeof e.value=="symbol"))return Object(e.value)===e.value?JSON.stringify(e.value,null,0):e.value});function A(M){var x;E.value||y.isLink.value&&(M.metaKey||M.ctrlKey||M.shiftKey||M.button!==0||n.target==="_blank")||(y.isRouterLink.value?(x=y.navigate)==null||x.call(y,M):m==null||m.toggle())}return wx(y,m==null?void 0:m.select),Je(()=>{const M=y.isLink.value?"a":e.tag,x=!!(e.prependIcon||r.prepend),N=!!(e.appendIcon||r.append),L=!!(e.icon&&e.icon!==!0);return us(F(M,Ye(y.linkProps,{type:M==="a"?void 0:"button",class:["v-btn",m==null?void 0:m.selectedClass.value,{"v-btn--active":g.value,"v-btn--block":e.block,"v-btn--disabled":E.value,"v-btn--elevated":w.value,"v-btn--flat":e.flat,"v-btn--icon":!!e.icon,"v-btn--loading":e.loading,"v-btn--readonly":e.readonly,"v-btn--slim":e.slim,"v-btn--stacked":e.stacked},e.spaced?["v-btn--spaced",`v-btn--spaced-${e.spaced}`]:[],s.value,i.value,T.value,o.value,c.value,l.value,f.value,d.value,h.value,R.value,e.class],style:[O.value,a.value,u.value,p.value,e.style],"aria-busy":e.loading?!0:void 0,disabled:E.value&&M!=="a"||void 0,tabindex:e.loading||e.readonly?-1:void 0,onClick:A,value:I.value}),{default:()=>{var G;return[Ho(!0,"v-btn"),!e.icon&&x&&ne("span",{key:"prepend",class:"v-btn__prepend"},[r.prepend?F(nn,{key:"prepend-defaults",disabled:!e.prependIcon,defaults:{VIcon:{icon:e.prependIcon}}},r.prepend):F(Mn,{key:"prepend-icon",icon:e.prependIcon},null)]),ne("span",{class:"v-btn__content","data-no-activator":""},[!r.default&&L?F(Mn,{key:"content-icon",icon:e.icon},null):F(nn,{key:"content-defaults",disabled:!L,defaults:{VIcon:{icon:e.icon}}},{default:()=>{var J;return[((J=r.default)==null?void 0:J.call(r))??dn(e.text)]}})]),!e.icon&&N&&ne("span",{key:"append",class:"v-btn__append"},[r.append?F(nn,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VIcon:{icon:e.appendIcon}}},r.append):F(Mn,{key:"append-icon",icon:e.appendIcon},null)]),!!e.loading&&ne("span",{key:"loader",class:"v-btn__loader"},[((G=r.loader)==null?void 0:G.call(r))??F(px,{color:typeof e.loading=="boolean"?void 0:e.loading,indeterminate:!0,width:"2"},null)])]}}),[[wo,!E.value&&e.ripple,"",{center:!!e.icon}]])}),{group:m}}});function Ll(e,t){return{x:e.x+t.x,y:e.y+t.y}}function Ox(e,t){return{x:e.x-t.x,y:e.y-t.y}}function nm(e,t){if(e.side==="top"||e.side==="bottom"){const{side:n,align:r}=e,s=r==="left"?0:r==="center"?t.width/2:r==="right"?t.width:r,i=n==="top"?0:n==="bottom"?t.height:n;return Ll({x:s,y:i},t)}else if(e.side==="left"||e.side==="right"){const{side:n,align:r}=e,s=n==="left"?0:n==="right"?t.width:n,i=r==="top"?0:r==="center"?t.height/2:r==="bottom"?t.height:r;return Ll({x:s,y:i},t)}return Ll({x:t.width/2,y:t.height/2},t)}const H_={static:Nx,connected:Dx},Mx=ie({locationStrategy:{type:[String,Function],default:"static",validator:e=>typeof e=="function"||e in H_},location:{type:String,default:"bottom"},origin:{type:String,default:"auto"},offset:[Number,String,Array],stickToTarget:Boolean,viewportMargin:{type:[Number,String],default:12}},"VOverlay-location-strategies");function Px(e,t){const n=Ee({}),r=Ee();Xe&&yi(()=>!!(t.isActive.value&&e.locationStrategy),a=>{var c,l;Se(()=>e.locationStrategy,a),_t(()=>{window.removeEventListener("resize",s),visualViewport==null||visualViewport.removeEventListener("resize",i),visualViewport==null||visualViewport.removeEventListener("scroll",o),r.value=void 0}),window.addEventListener("resize",s,{passive:!0}),visualViewport==null||visualViewport.addEventListener("resize",i,{passive:!0}),visualViewport==null||visualViewport.addEventListener("scroll",o,{passive:!0}),typeof e.locationStrategy=="function"?r.value=(c=e.locationStrategy(t,e,n))==null?void 0:c.updateLocation:r.value=(l=H_[e.locationStrategy](t,e,n))==null?void 0:l.updateLocation});function s(a){var c;(c=r.value)==null||c.call(r,a)}function i(a){var c;(c=r.value)==null||c.call(r,a)}function o(a){var c;(c=r.value)==null||c.call(r,a)}return{contentStyles:n,updateLocation:r}}function Nx(){}function Lx(e,t){const n=Bv(e);return t?n.x+=parseFloat(e.style.right||0):n.x-=parseFloat(e.style.left||0),n.y-=parseFloat(e.style.top||0),n}function Dx(e,t,n){(Array.isArray(e.target.value)||uC(e.target.value))&&Object.assign(n.value,{position:"fixed",top:0,[e.isRtl.value?"right":"left"]:0});const{preferredAnchor:s,preferredOrigin:i}=Gf(()=>{const g=wu(t.location,e.isRtl.value),v=t.origin==="overlap"?g:t.origin==="auto"?Tl(g):wu(t.origin,e.isRtl.value);return g.side===v.side&&g.align===Cl(v).align?{preferredAnchor:ip(g),preferredOrigin:ip(v)}:{preferredAnchor:g,preferredOrigin:v}}),[o,a,c,l]=["minWidth","minHeight","maxWidth","maxHeight"].map(g=>U(()=>{const v=parseFloat(t[g]);return isNaN(v)?1/0:v})),u=U(()=>{if(Array.isArray(t.offset))return t.offset;if(typeof t.offset=="string"){const g=t.offset.split(" ").map(parseFloat);return g.length<2&&g.push(0),g}return typeof t.offset=="number"?[t.offset,0]:[0,0]});let f=!1,d=-1;const h=new TT(4),p=new ResizeObserver(()=>{if(!f)return;if(requestAnimationFrame(v=>{v!==d&&h.clear(),requestAnimationFrame(_=>{d=_})}),h.isFull){const v=h.values();if(rs(v.at(-1),v.at(-3))&&!rs(v.at(-1),v.at(-2)))return}const g=y();g&&h.push(g.flipped)});let m=new tn({x:0,y:0,width:0,height:0});Se(e.target,(g,v)=>{v&&!Array.isArray(v)&&p.unobserve(v),Array.isArray(g)?rs(g,v)||y():g&&p.observe(g)},{immediate:!0}),Se(e.contentEl,(g,v)=>{v&&p.unobserve(v),g&&p.observe(g)},{immediate:!0}),_t(()=>{p.disconnect()});function y(){if(f=!1,requestAnimationFrame(()=>f=!0),!e.target.value||!e.contentEl.value)return;(Array.isArray(e.target.value)||e.target.value.offsetParent||e.target.value.getClientRects().length)&&(m=$v(e.target.value));const g=Lx(e.contentEl.value,e.isRtl.value),v=Qa(e.contentEl.value),_=Number(t.viewportMargin);v.length||(v.push(document.documentElement),e.contentEl.value.style.top&&e.contentEl.value.style.left||(g.x-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-x")||0),g.y-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-y")||0)));const T=v.reduce((N,L)=>{const G=OT(L);return N?new tn({x:Math.max(N.left,G.left),y:Math.max(N.top,G.top),width:Math.min(N.right,G.right)-Math.max(N.left,G.left),height:Math.min(N.bottom,G.bottom)-Math.max(N.top,G.top)}):G},void 0);t.stickToTarget?(T.x+=Math.min(_,m.x),T.y+=Math.min(_,m.y),T.width=Math.max(T.width-_*2,m.x+m.width-_),T.height=Math.max(T.height-_*2,m.y+m.height-_)):(T.x+=_,T.y+=_,T.width-=_*2,T.height-=_*2);let O={anchor:s.value,origin:i.value};function R(N){const L=new tn(g),G=nm(N.anchor,m),J=nm(N.origin,L);let{x:j,y:D}=Ox(G,J);switch(N.anchor.side){case"top":D-=u.value[0];break;case"bottom":D+=u.value[0];break;case"left":j-=u.value[0];break;case"right":j+=u.value[0];break}switch(N.anchor.align){case"top":D-=u.value[1];break;case"bottom":D+=u.value[1];break;case"left":j-=u.value[1];break;case"right":j+=u.value[1];break}return L.x+=j,L.y+=D,L.width=Math.min(L.width,c.value),L.height=Math.min(L.height,l.value),{overflows:ap(L,T),x:j,y:D}}let E=0,w=0;const I={x:0,y:0},A={x:!1,y:!1};let M=-1;for(;!(M++>10);){const{x:N,y:L,overflows:G}=R(O);E+=N,w+=L,g.x+=N,g.y+=L;{const J=op(O.anchor),j=G.x.before||G.x.after,D=G.y.before||G.y.after;let ae=!1;if(["x","y"].forEach(q=>{if(q==="x"&&j&&!A.x||q==="y"&&D&&!A.y){const ce={anchor:{...O.anchor},origin:{...O.origin}},le=q==="x"?J==="y"?Cl:Tl:J==="y"?Tl:Cl;ce.anchor=le(ce.anchor),ce.origin=le(ce.origin);const{overflows:ve}=R(ce);(ve[q].before<=G[q].before&&ve[q].after<=G[q].after||ve[q].before+ve[q].after<(G[q].before+G[q].after)/2)&&(O=ce,ae=A[q]=!0)}}),ae)continue}G.x.before&&(E+=G.x.before,g.x+=G.x.before),G.x.after&&(E-=G.x.after,g.x-=G.x.after),G.y.before&&(w+=G.y.before,g.y+=G.y.before),G.y.after&&(w-=G.y.after,g.y-=G.y.after);{const J=ap(g,T);I.x=T.width-J.x.before-J.x.after,I.y=T.height-J.y.before-J.y.after,E+=J.x.before,g.x+=J.x.before,w+=J.y.before,g.y+=J.y.before}break}const x=op(O.anchor);return Object.assign(n.value,{"--v-overlay-anchor-origin":`${O.anchor.side} ${O.anchor.align}`,transformOrigin:`${O.origin.side} ${O.origin.align}`,top:pe(Dl(w)),left:e.isRtl.value?void 0:pe(Dl(E)),right:e.isRtl.value?pe(Dl(-E)):void 0,minWidth:pe(x==="y"?Math.min(o.value,m.width):o.value),maxWidth:pe(rm(Qn(I.x,o.value===1/0?0:o.value,c.value))),maxHeight:pe(rm(Qn(I.y,a.value===1/0?0:a.value,l.value)))}),{available:I,contentBox:g,flipped:A}}return Se(()=>[s.value,i.value,t.offset,t.minWidth,t.minHeight,t.maxWidth,t.maxHeight],()=>y()),dt(()=>{const g=y();if(!g)return;const{available:v,contentBox:_}=g;_.height>v.y&&requestAnimationFrame(()=>{y(),requestAnimationFrame(()=>{y()})})}),{updateLocation:y}}function Dl(e){return Math.round(e*devicePixelRatio)/devicePixelRatio}function rm(e){return Math.ceil(e*devicePixelRatio)/devicePixelRatio}let Du=!0;const ic=[];function Fx(e){!Du||ic.length?(ic.push(e),Fu()):(Du=!1,e(),Fu())}let sm=-1;function Fu(){cancelAnimationFrame(sm),sm=requestAnimationFrame(()=>{const e=ic.shift();e&&e(),ic.length?Fu():Du=!0})}const xa={none:null,close:Hx,block:Vx,reposition:Ux},$x=ie({scrollStrategy:{type:[String,Function],default:"block",validator:e=>typeof e=="function"||e in xa}},"VOverlay-scroll-strategies");function Bx(e,t){if(!Xe)return;let n;on(async()=>{n==null||n.stop(),t.isActive.value&&e.scrollStrategy&&(n=ls(),await new Promise(r=>setTimeout(r)),n.active&&n.run(()=>{var r;typeof e.scrollStrategy=="function"?e.scrollStrategy(t,e,n):(r=xa[e.scrollStrategy])==null||r.call(xa,t,e,n)}))}),_t(()=>{n==null||n.stop()})}function Hx(e){function t(n){e.isActive.value=!1}V_(fd(e.target.value,e.contentEl.value),t)}function Vx(e,t){var a;const n=(a=e.root.value)==null?void 0:a.offsetParent,r=fd(e.target.value,e.contentEl.value),s=[...new Set([...Qa(r,t.contained?n:void 0),...Qa(e.contentEl.value,t.contained?n:void 0)])].filter(c=>!c.classList.contains("v-overlay-scroll-blocked")),i=window.innerWidth-document.documentElement.offsetWidth,o=(c=>Jf(c)&&c)(n||document.documentElement);o&&e.root.value.classList.add("v-overlay--scroll-blocked"),s.forEach((c,l)=>{c.style.setProperty("--v-body-scroll-x",pe(-c.scrollLeft)),c.style.setProperty("--v-body-scroll-y",pe(-c.scrollTop)),c!==document.documentElement&&c.style.setProperty("--v-scrollbar-offset",pe(i)),c.classList.add("v-overlay-scroll-blocked")}),_t(()=>{s.forEach((c,l)=>{const u=parseFloat(c.style.getPropertyValue("--v-body-scroll-x")),f=parseFloat(c.style.getPropertyValue("--v-body-scroll-y")),d=c.style.scrollBehavior;c.style.scrollBehavior="auto",c.style.removeProperty("--v-body-scroll-x"),c.style.removeProperty("--v-body-scroll-y"),c.style.removeProperty("--v-scrollbar-offset"),c.classList.remove("v-overlay-scroll-blocked"),c.scrollLeft=-u,c.scrollTop=-f,c.style.scrollBehavior=d}),o&&e.root.value.classList.remove("v-overlay--scroll-blocked")})}function Ux(e,t,n){let r=!1,s=-1,i=-1;function o(a){Fx(()=>{var u,f;const c=performance.now();(f=(u=e.updateLocation).value)==null||f.call(u,a),r=(performance.now()-c)/(1e3/60)>2})}i=(typeof requestIdleCallback>"u"?a=>a():requestIdleCallback)(()=>{n.run(()=>{V_(fd(e.target.value,e.contentEl.value),a=>{r?(cancelAnimationFrame(s),s=requestAnimationFrame(()=>{s=requestAnimationFrame(()=>{o(a)})})):o(a)})})}),_t(()=>{typeof cancelIdleCallback<"u"&&cancelIdleCallback(i),cancelAnimationFrame(s)})}function fd(e,t){return Array.isArray(e)?document.elementsFromPoint(...e).find(n=>!(t!=null&&t.contains(n))):e??t}function V_(e,t){const n=[document,...Qa(e)];n.forEach(r=>{r.addEventListener("scroll",t,{passive:!0})}),_t(()=>{n.forEach(r=>{r.removeEventListener("scroll",t)})})}const Wx=Symbol.for("vuetify:v-menu"),jx=ie({closeDelay:[Number,String],openDelay:[Number,String]},"delay");function zx(e,t){let n=()=>{};function r(o,a){n==null||n();const c=o?e.openDelay:e.closeDelay,l=Math.max((a==null?void 0:a.minDelay)??0,Number(c??0));return new Promise(u=>{n=xT(l,()=>{t==null||t(o),u(o)})})}function s(){return r(!0)}function i(o){return r(!1,o)}return{clearDelay:n,runOpenDelay:s,runCloseDelay:i}}const qx=ie({target:[String,Object],activator:[String,Object],activatorProps:{type:Object,default:()=>({})},openOnClick:{type:Boolean,default:void 0},openOnHover:Boolean,openOnFocus:{type:Boolean,default:void 0},closeOnContentClick:Boolean,...jx()},"VOverlay-activator");function Gx(e,t){let{isActive:n,isTop:r,contentEl:s}=t;const i=ut("useActivator"),o=Ee();let a=!1,c=!1,l=!0;const u=U(()=>e.openOnFocus||e.openOnFocus==null&&e.openOnHover),f=U(()=>e.openOnClick||e.openOnClick==null&&!e.openOnHover&&!u.value),{runOpenDelay:d,runCloseDelay:h}=zx(e,w=>{w===(e.openOnHover&&a||u.value&&c)&&!(e.openOnHover&&n.value&&!r.value)&&(n.value!==w&&(l=!0),n.value=w)}),p=Ee(),m={onClick:w=>{w.stopPropagation(),o.value=w.currentTarget||w.target,n.value||(p.value=[w.clientX,w.clientY]),n.value=!n.value},onMouseenter:w=>{a=!0,o.value=w.currentTarget||w.target,d()},onMouseleave:w=>{a=!1,h()},onFocus:w=>{IT(w.target,":focus-visible")!==!1&&(c=!0,w.stopPropagation(),o.value=w.currentTarget||w.target,d())},onBlur:w=>{c=!1,w.stopPropagation(),h({minDelay:1})}},y=U(()=>{const w={};return f.value&&(w.onClick=m.onClick),e.openOnHover&&(w.onMouseenter=m.onMouseenter,w.onMouseleave=m.onMouseleave),u.value&&(w.onFocus=m.onFocus,w.onBlur=m.onBlur),w}),g=U(()=>{const w={};if(e.openOnHover&&(w.onMouseenter=()=>{a=!0,d()},w.onMouseleave=()=>{a=!1,h()}),u.value&&(w.onFocusin=I=>{I.target.matches(":focus-visible")&&(c=!0,d())},w.onFocusout=()=>{c=!1,h({minDelay:1})}),e.closeOnContentClick){const I=Oe(Wx,null);w.onClick=()=>{n.value=!1,I==null||I.closeParents()}}return w}),v=U(()=>{const w={};return e.openOnHover&&(w.onMouseenter=()=>{l&&(a=!0,l=!1,d())},w.onMouseleave=()=>{a=!1,h()}),w});Se(r,w=>{var I;w&&(e.openOnHover&&!a&&(!u.value||!c)||u.value&&!c&&(!e.openOnHover||!a))&&!((I=s.value)!=null&&I.contains(document.activeElement))&&(n.value=!1)}),Se(n,w=>{w||setTimeout(()=>{p.value=void 0})},{flush:"post"});const _=Eu();on(()=>{_.value&&dt(()=>{o.value=_.el})});const T=Eu(),O=U(()=>e.target==="cursor"&&p.value?p.value:T.value?T.el:U_(e.target,i)||o.value),R=U(()=>Array.isArray(O.value)?void 0:O.value);let E;return Se(()=>!!e.activator,w=>{w&&Xe?(E=ls(),E.run(()=>{Kx(e,i,{activatorEl:o,activatorEvents:y})})):E&&E.stop()},{flush:"post",immediate:!0}),_t(()=>{E==null||E.stop()}),{activatorEl:o,activatorRef:_,target:O,targetEl:R,targetRef:T,activatorEvents:y,contentEvents:g,scrimEvents:v}}function Kx(e,t,n){let{activatorEl:r,activatorEvents:s}=n;Se(()=>e.activator,(c,l)=>{if(l&&c!==l){const u=a(l);u&&o(u)}c&&dt(()=>i())},{immediate:!0}),Se(()=>e.activatorProps,()=>{i()}),_t(()=>{o()});function i(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:a(),l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;c&&MT(c,Ye(s.value,l))}function o(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:a(),l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;c&&PT(c,Ye(s.value,l))}function a(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.activator;const l=U_(c,t);return r.value=(l==null?void 0:l.nodeType)===Node.ELEMENT_NODE?l:void 0,r.value}}function U_(e,t){var r,s;if(!e)return;let n;if(e==="parent"){let i=(s=(r=t==null?void 0:t.proxy)==null?void 0:r.$el)==null?void 0:s.parentNode;for(;i!=null&&i.hasAttribute("data-no-activator");)i=i.parentNode;n=i}else typeof e=="string"?n=document.querySelector(e):"$el"in e?n=e.$el:n=e;return n}const Yx=ie({retainFocus:Boolean,captureFocus:Boolean,disableInitialFocus:Boolean},"focusTrap"),Ra=new Map;let im=0;function om(e){const t=document.activeElement;if(e.key!=="Tab"||!t)return;const n=Array.from(Ra.values()).filter(l=>{var d;let{isActive:u,contentEl:f}=l;return u.value&&((d=f.value)==null?void 0:d.contains(t))}).map(l=>l.contentEl.value);let r,s=t.parentElement;for(;s;){if(n.includes(s)){r=s;break}s=s.parentElement}if(!r)return;const i=Zi(r).filter(l=>l.tabIndex>=0);if(!i.length)return;const o=document.activeElement;if(i.length===1&&i[0].classList.contains("v-list")&&i[0].contains(o)){e.preventDefault();return}const a=i[0],c=i[i.length-1];e.shiftKey&&(o===a||a.classList.contains("v-list")&&a.contains(o))&&(e.preventDefault(),c.focus()),!e.shiftKey&&(o===c||c.classList.contains("v-list")&&c.contains(o))&&(e.preventDefault(),a.focus())}function Xx(e,t){let{isActive:n,localTop:r,activatorEl:s,contentEl:i}=t;const o=Symbol("trap");let a=!1,c=-1;async function l(){a=!0,c=window.setTimeout(()=>{a=!1},100)}async function u(h){var y;const p=h.relatedTarget,m=h.target;document.removeEventListener("pointerdown",l),document.removeEventListener("keydown",f),await dt(),n.value&&!a&&p!==m&&i.value&&mt(r)&&![document,i.value].includes(m)&&!i.value.contains(m)&&((y=Zi(i.value)[0])==null||y.focus())}function f(h){if(h.key==="Tab"&&(document.removeEventListener("keydown",f),n.value&&i.value&&h.target&&!i.value.contains(h.target))){const p=Zi(document.documentElement);if(h.shiftKey&&h.target===p.at(0)||!h.shiftKey&&h.target===p.at(-1)){const m=Zi(i.value);m.length>0&&(h.preventDefault(),m[0].focus())}}}const d=Q(()=>n.value&&e.captureFocus&&!e.disableInitialFocus);Xe&&(Se(()=>e.retainFocus,h=>{h?Ra.set(o,{isActive:n,contentEl:i}):Ra.delete(o)},{immediate:!0}),Se(d,h=>{h?(document.addEventListener("pointerdown",l),document.addEventListener("focusin",u,{once:!0}),document.addEventListener("keydown",f)):(document.removeEventListener("pointerdown",l),document.removeEventListener("focusin",u),document.removeEventListener("keydown",f))},{immediate:!0}),im++<1&&document.addEventListener("keydown",om)),_t(()=>{Ra.delete(o),clearTimeout(c),document.removeEventListener("pointerdown",l),document.removeEventListener("focusin",u),document.removeEventListener("keydown",f),--im<1&&document.removeEventListener("keydown",om)})}function Jx(){if(!Xe)return be(!1);const{ssr:e}=uI();if(e){const t=be(!1);return Nr(()=>{t.value=!0}),t}else return be(!0)}const Zx=ie({eager:Boolean},"lazy");function Qx(e,t){const n=be(!1),r=Q(()=>n.value||e.eager||t.value);Se(t,()=>n.value=!0);function s(){e.eager||(n.value=!1)}return{isBooted:n,hasContent:r,onAfterLeave:s}}function dd(){const t=ut("useScopeId").vnode.scopeId;return{scopeId:t?{[t]:""}:void 0}}const am=Symbol.for("vuetify:stack"),Bi=lt([]);function eR(e,t,n){const r=ut("useStack"),s=!n,i=Oe(am,void 0),o=lt({activeChildren:new Set});Ct(am,o);const a=be(Number(mt(t)));yi(e,()=>{var f;const u=(f=Bi.at(-1))==null?void 0:f[1];a.value=u?u+10:Number(mt(t)),s&&Bi.push([r.uid,a.value]),i==null||i.activeChildren.add(r.uid),_t(()=>{if(s){const d=ue(Bi).findIndex(h=>h[0]===r.uid);Bi.splice(d,1)}i==null||i.activeChildren.delete(r.uid)})});const c=be(!0);return s&&on(()=>{var f;const u=((f=Bi.at(-1))==null?void 0:f[0])===r.uid;setTimeout(()=>c.value=u)}),{globalTop:Xs(c),localTop:Q(()=>!o.activeChildren.size),stackStyles:Q(()=>({zIndex:a.value}))}}function tR(e){return{teleportTarget:U(()=>{const n=e();if(n===!0||!Xe)return;const r=n===!1?document.body:typeof n=="string"?document.querySelector(n):n;if(r==null)return;let s=[...r.children].find(i=>i.matches(".v-overlay-container"));return s||(s=document.createElement("div"),s.className="v-overlay-container",r.appendChild(s)),s})}}const W_=ie({transition:{type:null,default:"fade-transition",validator:e=>e!==!0}},"transition"),Fs=(e,t)=>{let{slots:n}=t;const{transition:r,disabled:s,group:i,...o}=e,{component:a=i?Uf:xr,...c}=Su(r)?r:{};let l;return Su(r)?l=Ye(c,RT({disabled:s,group:i}),o):l=Ye({name:s||!r?"":r},o),Lr(a,l,n)};function nR(){return!0}function j_(e,t,n){if(!e||z_(e,n)===!1)return!1;const r=zv(t);if(typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&r.host===e.target)return!1;const s=(typeof n.value=="object"&&n.value.include||(()=>[]))();return s.push(t),!s.some(i=>i==null?void 0:i.contains(e.target))}function z_(e,t){return(typeof t.value=="object"&&t.value.closeConditional||nR)(e)}function rR(e,t,n){const r=typeof n.value=="function"?n.value:n.value.handler;e.shadowTarget=e.target,t._clickOutside.lastMousedownWasOutside&&j_(e,t,n)&&setTimeout(()=>{z_(e,n)&&r&&r(e)},0)}function cm(e,t){const n=zv(e);t(document),typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&t(n)}const lm={mounted(e,t){const n=s=>rR(s,e,t),r=s=>{e._clickOutside.lastMousedownWasOutside=j_(s,e,t)};cm(e,s=>{s.addEventListener("click",n,!0),s.addEventListener("mousedown",r,!0)}),e._clickOutside||(e._clickOutside={lastMousedownWasOutside:!1}),e._clickOutside[t.instance.$.uid]={onClick:n,onMousedown:r}},beforeUnmount(e,t){e._clickOutside&&(cm(e,n=>{var i;if(!n||!((i=e._clickOutside)!=null&&i[t.instance.$.uid]))return;const{onClick:r,onMousedown:s}=e._clickOutside[t.instance.$.uid];n.removeEventListener("click",r,!0),n.removeEventListener("mousedown",s,!0)}),delete e._clickOutside[t.instance.$.uid])}};function sR(e){const{modelValue:t,color:n,...r}=e;return F(xr,{name:"fade-transition",appear:!0},{default:()=>[e.modelValue&&ne("div",Ye({class:["v-overlay__scrim",e.color.backgroundColorClasses.value],style:e.color.backgroundColorStyles.value},r),null)]})}const hd=ie({absolute:Boolean,attach:[Boolean,String,Object],closeOnBack:{type:Boolean,default:!0},contained:Boolean,contentClass:null,contentProps:null,disabled:Boolean,opacity:[Number,String],noClickAnimation:Boolean,modelValue:Boolean,persistent:Boolean,scrim:{type:[Boolean,String],default:!0},zIndex:{type:[Number,String],default:2e3},...qx(),...rt(),...Si(),...Zx(),...Mx(),...$x(),...Yx(),...Yt(),...W_()},"VOverlay"),oc=Pe()({name:"VOverlay",directives:{vClickOutside:lm},inheritAttrs:!1,props:{_disableGlobalStack:Boolean,...ys(hd(),["disableInitialFocus"])},emits:{"click:outside":e=>!0,"update:modelValue":e=>!0,keydown:e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,t){let{slots:n,attrs:r,emit:s}=t;const i=ut("VOverlay"),o=Ee(),a=Ee(),c=Ee(),l=zn(e,"modelValue"),u=U({get:()=>l.value,set:C=>{C&&e.disabled||(l.value=C)}}),{themeClasses:f}=cn(e),{rtlClasses:d,isRtl:h}=Do(),{hasContent:p,onAfterLeave:m}=Qx(e,u),y=Gs(()=>typeof e.scrim=="string"?e.scrim:null),{globalTop:g,localTop:v,stackStyles:_}=eR(u,()=>e.zIndex,e._disableGlobalStack),{activatorEl:T,activatorRef:O,target:R,targetEl:E,targetRef:w,activatorEvents:I,contentEvents:A,scrimEvents:M}=Gx(e,{isActive:u,isTop:v,contentEl:c}),{teleportTarget:x}=tR(()=>{var z,re,_e;const C=e.attach||e.contained;if(C)return C;const W=((z=T==null?void 0:T.value)==null?void 0:z.getRootNode())||((_e=(re=i.proxy)==null?void 0:re.$el)==null?void 0:_e.getRootNode());return W instanceof ShadowRoot?W:!1}),{dimensionStyles:N}=Ei(e),L=Jx(),{scopeId:G}=dd();Se(()=>e.disabled,C=>{C&&(u.value=!1)});const{contentStyles:J,updateLocation:j}=Px(e,{isRtl:h,contentEl:c,target:R,isActive:u});Bx(e,{root:o,contentEl:c,targetEl:E,target:R,isActive:u,updateLocation:j});function D(C){s("click:outside",C),e.persistent?Me():u.value=!1}function ae(C){return u.value&&v.value&&(!e.scrim||C.target===a.value||C instanceof MouseEvent&&C.shadowTarget===a.value)}Xx(e,{isActive:u,localTop:v,contentEl:c,activatorEl:T}),Xe&&Se(u,C=>{C?window.addEventListener("keydown",q):window.removeEventListener("keydown",q)},{immediate:!0}),yn(()=>{Xe&&window.removeEventListener("keydown",q)});function q(C){var W,z,re;C.key==="Escape"&&g.value&&((W=c.value)!=null&&W.contains(document.activeElement)||s("keydown",C),e.persistent?Me():(u.value=!1,(z=c.value)!=null&&z.contains(document.activeElement)&&((re=T.value)==null||re.focus())))}function ce(C){C.key==="Escape"&&!g.value||s("keydown",C)}const le=Sx();yi(()=>e.closeOnBack,()=>{Ex(le,C=>{g.value&&u.value?(C(!1),e.persistent?Me():u.value=!1):C()})});const ve=Ee();Se(()=>u.value&&(e.absolute||e.contained)&&x.value==null,C=>{if(C){const W=cC(o.value);W&&W!==document.scrollingElement&&(ve.value=W.scrollTop)}});function Me(){e.noClickAnimation||c.value&&Kr(c.value,[{transformOrigin:"center"},{transform:"scale(1.03)"},{transformOrigin:"center"}],{duration:150,easing:Cu})}function Fe(){s("afterEnter")}function Ge(){m(),s("afterLeave")}return Je(()=>{var C;return ne(Ke,null,[(C=n.activator)==null?void 0:C.call(n,{isActive:u.value,targetRef:w,props:Ye({ref:O},I.value,e.activatorProps)}),L.value&&p.value&&F(U0,{disabled:!x.value,to:x.value},{default:()=>[ne("div",Ye({class:["v-overlay",{"v-overlay--absolute":e.absolute||e.contained,"v-overlay--active":u.value,"v-overlay--contained":e.contained},f.value,d.value,e.class],style:[_.value,{"--v-overlay-opacity":e.opacity,top:pe(ve.value)},e.style],ref:o,onKeydown:ce},G,r),[F(sR,Ye({color:y,modelValue:u.value&&!!e.scrim,ref:a},M.value),null),F(Fs,{appear:!0,persisted:!0,transition:e.transition,target:R.value,onAfterEnter:Fe,onAfterLeave:Ge},{default:()=>{var W;return[us(ne("div",Ye({ref:c,class:["v-overlay__content",e.contentClass],style:[N.value,J.value]},A.value,e.contentProps),[(W=n.default)==null?void 0:W.call(n,{isActive:u})]),[[Vf,u.value],[lm,{handler:D,closeConditional:ae,include:()=>[T.value]}]])]}})])]})])}),{activatorEl:T,scrimEl:a,target:R,animateClick:Me,contentEl:c,rootEl:o,globalTop:g,localTop:v,updateLocation:j}}}),Fl=Symbol("Forwarded refs");function $l(e,t){let n=e;for(;n;){const r=Reflect.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function q_(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;rt.value=e())}function i(o){const a=o?getComputedStyle(o):{transitionDuration:.2},c=parseFloat(a.transitionDuration)*1e3||200;if(r(),t.value<=0)return;const l=performance.now();n=window.setInterval(()=>{const u=performance.now()-l+c;t.value=Math.max(e()-u,0),t.value<=0&&r()},c)}return _t(r),{clear:r,time:t,start:i,reset:s}}const oR=ie({multiLine:Boolean,text:String,timer:[Boolean,String],timeout:{type:[Number,String],default:5e3},vertical:Boolean,...Gc({location:"bottom"}),...ad(),...ar(),..._s(),...Yt(),...ys(hd({transition:"v-snackbar-transition"}),["persistent","noClickAnimation","retainFocus","captureFocus","disableInitialFocus","scrim","scrollStrategy","stickToTarget","viewportMargin"])},"VSnackbar"),aR=Pe()({name:"VSnackbar",props:oR(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const r=zn(e,"modelValue"),{positionClasses:s}=cd(e),{scopeId:i}=dd(),{themeClasses:o}=cn(e),{colorClasses:a,colorStyles:c,variantClasses:l}=Vo(e),{roundedClasses:u}=cr(e),f=iR(()=>Number(e.timeout)),d=Ee(),h=Ee(),p=be(!1),m=be(0),y=Ee(),g=Oe(_o,void 0);yi(()=>!!g,()=>{const M=wI();on(()=>{y.value=M.mainStyles.value})}),Se(r,_),Se(()=>e.timeout,_),Nr(()=>{r.value&&_()});let v=-1;function _(){f.reset(),window.clearTimeout(v);const M=Number(e.timeout);if(!r.value||M===-1)return;const x=jf(h.value);f.start(x),v=window.setTimeout(()=>{r.value=!1},M)}function T(){f.reset(),window.clearTimeout(v)}function O(){p.value=!0,T()}function R(){p.value=!1,_()}function E(M){m.value=M.touches[0].clientY}function w(M){Math.abs(m.value-M.changedTouches[0].clientY)>50&&(r.value=!1)}function I(){p.value&&R()}const A=U(()=>e.location.split(" ").reduce((M,x)=>(M[`v-snackbar--${x}`]=!0,M),{}));return Je(()=>{const M=oc.filterProps(e),x=!!(n.default||n.text||e.text);return F(oc,Ye({ref:d,class:["v-snackbar",{"v-snackbar--active":r.value,"v-snackbar--multi-line":e.multiLine&&!e.vertical,"v-snackbar--timer":!!e.timer,"v-snackbar--vertical":e.vertical},A.value,s.value,e.class],style:[y.value,e.style]},M,{modelValue:r.value,"onUpdate:modelValue":N=>r.value=N,contentProps:Ye({class:["v-snackbar__wrapper",o.value,a.value,u.value,l.value],style:[c.value],onPointerenter:O,onPointerleave:R},M.contentProps),persistent:!0,noClickAnimation:!0,scrim:!1,scrollStrategy:"none",_disableGlobalStack:!0,onTouchstartPassive:E,onTouchend:w,onAfterLeave:I},i),{default:()=>{var N,L;return[Ho(!1,"v-snackbar"),e.timer&&!p.value&&ne("div",{key:"timer",class:"v-snackbar__timer"},[F(R_,{ref:h,color:typeof e.timer=="string"?e.timer:"info",max:e.timeout,modelValue:f.time.value},null)]),x&&ne("div",{key:"content",class:"v-snackbar__content",role:"status","aria-live":"polite"},[((N=n.text)==null?void 0:N.call(n))??e.text,(L=n.default)==null?void 0:L.call(n)]),n.actions&&F(nn,{defaults:{VBtn:{variant:"text",ripple:!1,slim:!0}}},{default:()=>[ne("div",{class:"v-snackbar__actions"},[n.actions({isActive:r})])]})]},activator:n.activator})}),q_({},d)}}),cR=Pc({name:"GlobalMessage",setup(){var i;const e=Ee(!1),t=Ee(null),n={success:"mdi-check-circle",error:"mdi-alert-circle",warning:"mdi-alert",info:"mdi-information"},r={success:"success",error:"error",warning:"warning",info:"info"},s=(i=Ps==null?void 0:Ps.onSnackbar)==null?void 0:i.call(Ps,async o=>{o&&(e.value&&(e.value=!1,await dt()),t.value=o,e.value=!0)});return yn(()=>s==null?void 0:s()),{snackbar:e,message:t,icons:n,colors:r}}}),lR={class:"d-flex align-center"},uR={class:"text-subtitle-2 font-weight-medium"},fR={key:0,class:"text-body-2"};function dR(e,t,n,r,s,i){var o;return en(),xn(aR,{modelValue:e.snackbar,"onUpdate:modelValue":t[1]||(t[1]=a=>e.snackbar=a),color:e.colors[(o=e.message)==null?void 0:o.type]||e.colors.info,timeout:2e3,location:"top right","multi-line":"",variant:"tonal"},{actions:ft(()=>[F(B_,{icon:"mdi-close",variant:"text",onClick:t[0]||(t[0]=a=>e.snackbar=!1)})]),default:ft(()=>{var a,c,l,u;return[ne("div",lR,[F(Mn,{icon:e.icons[(a=e.message)==null?void 0:a.type]||e.icons.info,class:"mr-2"},null,8,["icon"]),ne("div",null,[ne("div",uR,dn((c=e.message)==null?void 0:c.title),1),(l=e.message)!=null&&l.content?(en(),mv("div",fR,dn((u=e.message)==null?void 0:u.content),1)):gu("",!0)])])]}),_:1},8,["modelValue","color"])}const G_=T_(cR,[["render",dR]]),hR=ie({...rt(),...It()},"VCardActions"),K_=Pe()({name:"VCardActions",props:hR(),setup(e,t){let{slots:n}=t;return Bc({VBtn:{slim:!0,variant:"text"}}),Je(()=>F(e.tag,{class:Re(["v-card-actions",e.class]),style:ze(e.style)},n)),{}}}),pR=ie({opacity:[Number,String],...rt(),...It()},"VCardSubtitle"),mR=Pe()({name:"VCardSubtitle",props:pR(),setup(e,t){let{slots:n}=t;return Je(()=>F(e.tag,{class:Re(["v-card-subtitle",e.class]),style:ze([{"--v-card-subtitle-opacity":e.opacity},e.style])},n)),{}}}),Y_=Xf("v-card-title");function gR(e){return{aspectStyles:U(()=>{const t=Number(e.aspectRatio);return t?{paddingBottom:String(1/t*100)+"%"}:void 0})}}const X_=ie({aspectRatio:[String,Number],contentClass:null,inline:Boolean,...rt(),...Si()},"VResponsive"),um=Pe()({name:"VResponsive",props:X_(),setup(e,t){let{slots:n}=t;const{aspectStyles:r}=gR(e),{dimensionStyles:s}=Ei(e);return Je(()=>{var i;return ne("div",{class:Re(["v-responsive",{"v-responsive--inline":e.inline},e.class]),style:ze([s.value,e.style])},[ne("div",{class:"v-responsive__sizer",style:ze(r.value)},null),(i=n.additional)==null?void 0:i.call(n),n.default&&ne("div",{class:Re(["v-responsive__content",e.contentClass])},[n.default()])])}),{}}});function yR(e,t){if(!Wf)return;const n=t.modifiers||{},r=t.value,{handler:s,options:i}=typeof r=="object"?r:{handler:r,options:{}},o=new IntersectionObserver(function(){var f;let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],c=arguments.length>1?arguments[1]:void 0;const l=(f=e._observe)==null?void 0:f[t.instance.$.uid];if(!l)return;const u=a.some(d=>d.isIntersecting);s&&(!n.quiet||l.init)&&(!n.once||u||l.init)&&s(u,a,c),u&&n.once?J_(e,t):l.init=!0},i);e._observe=Object(e._observe),e._observe[t.instance.$.uid]={init:!1,observer:o},o.observe(e)}function J_(e,t){var r;const n=(r=e._observe)==null?void 0:r[t.instance.$.uid];n&&(n.observer.unobserve(e),delete e._observe[t.instance.$.uid])}const fm={mounted:yR,unmounted:J_},vR=ie({absolute:Boolean,alt:String,cover:Boolean,color:String,draggable:{type:[Boolean,String],default:void 0},eager:Boolean,gradient:String,lazySrc:String,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},sizes:String,src:{type:[String,Object],default:""},crossorigin:String,referrerpolicy:String,srcset:String,position:String,...X_(),...rt(),...ar(),...W_()},"VImg"),Z_=Pe()({name:"VImg",directives:{vIntersect:fm},props:vR(),emits:{loadstart:e=>!0,load:e=>!0,error:e=>!0},setup(e,t){let{emit:n,slots:r}=t;const{backgroundColorClasses:s,backgroundColorStyles:i}=Gs(()=>e.color),{roundedClasses:o}=cr(e),a=ut("VImg"),c=be(""),l=Ee(),u=be(e.eager?"loading":"idle"),f=be(),d=be(),h=U(()=>e.src&&typeof e.src=="object"?{src:e.src.src,srcset:e.srcset||e.src.srcset,lazySrc:e.lazySrc||e.src.lazySrc,aspect:Number(e.aspectRatio||e.src.aspect||0)}:{src:e.src,srcset:e.srcset,lazySrc:e.lazySrc,aspect:Number(e.aspectRatio||0)}),p=U(()=>h.value.aspect||f.value/d.value||0);Se(()=>e.src,()=>{m(u.value!=="idle")}),Se(p,(x,N)=>{!x&&N&&l.value&&T(l.value)}),Dc(()=>m());function m(x){if(!(e.eager&&x)&&!(Wf&&!x&&!e.eager)){if(u.value="loading",h.value.lazySrc){const N=new Image;N.src=h.value.lazySrc,T(N,null)}h.value.src&&dt(()=>{var N;n("loadstart",((N=l.value)==null?void 0:N.currentSrc)||h.value.src),setTimeout(()=>{var L;if(!a.isUnmounted)if((L=l.value)!=null&&L.complete){if(l.value.naturalWidth||g(),u.value==="error")return;p.value||T(l.value,null),u.value==="loading"&&y()}else p.value||T(l.value),v()})})}}function y(){var x;a.isUnmounted||(v(),T(l.value),u.value="loaded",n("load",((x=l.value)==null?void 0:x.currentSrc)||h.value.src))}function g(){var x;a.isUnmounted||(u.value="error",n("error",((x=l.value)==null?void 0:x.currentSrc)||h.value.src))}function v(){const x=l.value;x&&(c.value=x.currentSrc||x.src)}let _=-1;yn(()=>{clearTimeout(_)});function T(x){let N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:100;const L=()=>{if(clearTimeout(_),a.isUnmounted)return;const{naturalHeight:G,naturalWidth:J}=x;G||J?(f.value=J,d.value=G):!x.complete&&u.value==="loading"&&N!=null?_=window.setTimeout(L,N):(x.currentSrc.endsWith(".svg")||x.currentSrc.startsWith("data:image/svg+xml"))&&(f.value=1,d.value=1)};L()}const O=Q(()=>({"v-img__img--cover":e.cover,"v-img__img--contain":!e.cover})),R=()=>{var L;if(!h.value.src||u.value==="idle")return null;const x=ne("img",{class:Re(["v-img__img",O.value]),style:{objectPosition:e.position},crossorigin:e.crossorigin,src:h.value.src,srcset:h.value.srcset,alt:e.alt,referrerpolicy:e.referrerpolicy,draggable:e.draggable,sizes:e.sizes,ref:l,onLoad:y,onError:g},null),N=(L=r.sources)==null?void 0:L.call(r);return F(Fs,{transition:e.transition,appear:!0},{default:()=>[us(N?ne("picture",{class:"v-img__picture"},[N,x]):x,[[Vf,u.value==="loaded"]])]})},E=()=>F(Fs,{transition:e.transition},{default:()=>[h.value.lazySrc&&u.value!=="loaded"&&ne("img",{class:Re(["v-img__img","v-img__img--preload",O.value]),style:{objectPosition:e.position},crossorigin:e.crossorigin,src:h.value.lazySrc,alt:e.alt,referrerpolicy:e.referrerpolicy,draggable:e.draggable},null)]}),w=()=>r.placeholder?F(Fs,{transition:e.transition,appear:!0},{default:()=>[(u.value==="loading"||u.value==="error"&&!r.error)&&ne("div",{class:"v-img__placeholder"},[r.placeholder()])]}):null,I=()=>r.error?F(Fs,{transition:e.transition,appear:!0},{default:()=>[u.value==="error"&&ne("div",{class:"v-img__error"},[r.error()])]}):null,A=()=>e.gradient?ne("div",{class:"v-img__gradient",style:{backgroundImage:`linear-gradient(${e.gradient})`}},null):null,M=be(!1);{const x=Se(p,N=>{N&&(requestAnimationFrame(()=>{requestAnimationFrame(()=>{M.value=!0})}),x())})}return Je(()=>{const x=um.filterProps(e);return us(F(um,Ye({class:["v-img",{"v-img--absolute":e.absolute,"v-img--booting":!M.value},s.value,o.value,e.class],style:[{width:pe(e.width==="auto"?f.value:e.width)},i.value,e.style]},x,{aspectRatio:p.value,"aria-label":e.alt,role:e.alt?"img":void 0}),{additional:()=>ne(Ke,null,[F(R,null,null),F(E,null,null),F(A,null,null),F(w,null,null),F(I,null,null)]),default:r.default}),[[fm,{handler:m,options:e.options},null,{once:!0}]])}),{currentSrc:c,image:l,state:u,naturalWidth:f,naturalHeight:d}}}),_R=ie({start:Boolean,end:Boolean,icon:yt,image:String,text:String,...vi(),...rt(),...vs(),...ar(),...zc(),...It(),...Yt(),..._s({variant:"flat"})},"VAvatar"),ac=Pe()({name:"VAvatar",props:_R(),setup(e,t){let{slots:n}=t;const{themeClasses:r}=cn(e),{borderClasses:s}=_i(e),{colorClasses:i,colorStyles:o,variantClasses:a}=Vo(e),{densityClasses:c}=bi(e),{roundedClasses:l}=cr(e),{sizeClasses:u,sizeStyles:f}=qc(e);return Je(()=>F(e.tag,{class:Re(["v-avatar",{"v-avatar--start":e.start,"v-avatar--end":e.end},r.value,s.value,i.value,c.value,l.value,u.value,a.value,e.class]),style:ze([o.value,f.value,e.style])},{default:()=>[n.default?F(nn,{key:"content-defaults",defaults:{VImg:{cover:!0,src:e.image},VIcon:{icon:e.icon}}},{default:()=>[n.default()]}):e.image?F(Z_,{key:"image",src:e.image,alt:"",cover:!0},null):e.icon?F(Mn,{key:"icon",icon:e.icon},null):e.text,Ho(!1,"v-avatar")]})),{}}}),bR=ie({appendAvatar:String,appendIcon:yt,prependAvatar:String,prependIcon:yt,subtitle:{type:[String,Number,Boolean],default:void 0},title:{type:[String,Number,Boolean],default:void 0},...rt(),...vs(),...It()},"VCardItem"),SR=Pe()({name:"VCardItem",props:bR(),setup(e,t){let{slots:n}=t;return Je(()=>{const r=!!(e.prependAvatar||e.prependIcon),s=!!(r||n.prepend),i=!!(e.appendAvatar||e.appendIcon),o=!!(i||n.append),a=!!(e.title!=null||n.title),c=!!(e.subtitle!=null||n.subtitle);return F(e.tag,{class:Re(["v-card-item",e.class]),style:ze(e.style)},{default:()=>{var l;return[s&&ne("div",{key:"prepend",class:"v-card-item__prepend"},[n.prepend?F(nn,{key:"prepend-defaults",disabled:!r,defaults:{VAvatar:{density:e.density,image:e.prependAvatar},VIcon:{density:e.density,icon:e.prependIcon}}},n.prepend):ne(Ke,null,[e.prependAvatar&&F(ac,{key:"prepend-avatar",density:e.density,image:e.prependAvatar},null),e.prependIcon&&F(Mn,{key:"prepend-icon",density:e.density,icon:e.prependIcon},null)])]),ne("div",{class:"v-card-item__content"},[a&&F(Y_,{key:"title"},{default:()=>{var u;return[((u=n.title)==null?void 0:u.call(n))??dn(e.title)]}}),c&&F(mR,{key:"subtitle"},{default:()=>{var u;return[((u=n.subtitle)==null?void 0:u.call(n))??dn(e.subtitle)]}}),(l=n.default)==null?void 0:l.call(n)]),o&&ne("div",{key:"append",class:"v-card-item__append"},[n.append?F(nn,{key:"append-defaults",disabled:!i,defaults:{VAvatar:{density:e.density,image:e.appendAvatar},VIcon:{density:e.density,icon:e.appendIcon}}},n.append):ne(Ke,null,[e.appendIcon&&F(Mn,{key:"append-icon",density:e.density,icon:e.appendIcon},null),e.appendAvatar&&F(ac,{key:"append-avatar",density:e.density,image:e.appendAvatar},null)])])]}})}),{}}}),ER=ie({opacity:[Number,String],...rt(),...It()},"VCardText"),$u=Pe()({name:"VCardText",props:ER(),setup(e,t){let{slots:n}=t;return Je(()=>F(e.tag,{class:Re(["v-card-text",e.class]),style:ze([{"--v-card-text-opacity":e.opacity},e.style])},n)),{}}}),wR=ie({appendAvatar:String,appendIcon:yt,disabled:Boolean,flat:Boolean,hover:Boolean,image:String,link:{type:Boolean,default:void 0},prependAvatar:String,prependIcon:yt,ripple:{type:[Boolean,Object],default:!0},subtitle:{type:[String,Number,Boolean],default:void 0},text:{type:[String,Number,Boolean],default:void 0},title:{type:[String,Number,Boolean],default:void 0},...vi(),...rt(),...vs(),...Si(),...$o(),...A_(),...Gc(),...ad(),...ar(),...ud(),...It(),...Yt(),..._s({variant:"elevated"})},"VCard"),dm=Pe()({name:"VCard",directives:{vRipple:wo},props:wR(),setup(e,t){let{attrs:n,slots:r}=t;const{themeClasses:s}=cn(e),{borderClasses:i}=_i(e),{colorClasses:o,colorStyles:a,variantClasses:c}=Vo(e),{densityClasses:l}=bi(e),{dimensionStyles:u}=Ei(e),{elevationClasses:f}=Bo(e),{loaderClasses:d}=O_(e),{locationStyles:h}=od(e),{positionClasses:p}=cd(e),{roundedClasses:m}=cr(e),y=ld(e,n),g=be(void 0);return Se(()=>e.loading,(v,_)=>{g.value=!v&&typeof _=="string"?_:typeof v=="boolean"?void 0:v},{immediate:!0}),Je(()=>{const v=e.link!==!1&&y.isLink.value,_=!e.disabled&&e.link!==!1&&(e.link||y.isClickable.value),T=v?"a":e.tag,O=!!(r.title||e.title!=null),R=!!(r.subtitle||e.subtitle!=null),E=O||R,w=!!(r.append||e.appendAvatar||e.appendIcon),I=!!(r.prepend||e.prependAvatar||e.prependIcon),A=!!(r.image||e.image),M=E||I||w,x=!!(r.text||e.text!=null);return us(F(T,Ye(y.linkProps,{class:["v-card",{"v-card--disabled":e.disabled,"v-card--flat":e.flat,"v-card--hover":e.hover&&!(e.disabled||e.flat),"v-card--link":_},s.value,i.value,o.value,l.value,f.value,d.value,p.value,m.value,c.value,e.class],style:[a.value,u.value,h.value,e.style],onClick:_&&y.navigate,tabindex:e.disabled?-1:void 0}),{default:()=>{var N;return[A&&ne("div",{key:"image",class:"v-card__image"},[r.image?F(nn,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},r.image):F(Z_,{key:"image-img",cover:!0,src:e.image},null)]),F(vx,{name:"v-card",active:!!e.loading,color:g.value},{default:r.loader}),M&&F(SR,{key:"item",prependAvatar:e.prependAvatar,prependIcon:e.prependIcon,title:e.title,subtitle:e.subtitle,appendAvatar:e.appendAvatar,appendIcon:e.appendIcon},{default:r.item,prepend:r.prepend,title:r.title,subtitle:r.subtitle,append:r.append}),x&&F($u,{key:"text"},{default:()=>{var L;return[((L=r.text)==null?void 0:L.call(r))??e.text]}}),(N=r.default)==null?void 0:N.call(r),r.actions&&F(K_,null,{default:r.actions}),Ho(_,"v-card")]}}),[[wo,_&&e.ripple]])}),{}}}),TR=ie({disabled:Boolean,group:Boolean,hideOnLeave:Boolean,leaveAbsolute:Boolean,mode:String,origin:String},"transition");function Xt(e,t,n){return Pe()({name:e,props:TR({mode:n,origin:t}),setup(r,s){let{slots:i}=s;const o={onBeforeEnter(a){r.origin&&(a.style.transformOrigin=r.origin)},onLeave(a){if(r.leaveAbsolute){const{offsetTop:c,offsetLeft:l,offsetWidth:u,offsetHeight:f}=a;a._transitionInitialStyles={position:a.style.position,top:a.style.top,left:a.style.left,width:a.style.width,height:a.style.height},a.style.position="absolute",a.style.top=`${c}px`,a.style.left=`${l}px`,a.style.width=`${u}px`,a.style.height=`${f}px`}r.hideOnLeave&&a.style.setProperty("display","none","important")},onAfterLeave(a){if(r.leaveAbsolute&&(a!=null&&a._transitionInitialStyles)){const{position:c,top:l,left:u,width:f,height:d}=a._transitionInitialStyles;delete a._transitionInitialStyles,a.style.position=c||"",a.style.top=l||"",a.style.left=u||"",a.style.width=f||"",a.style.height=d||""}}};return()=>{const a=r.group?Uf:xr;return Lr(a,{name:r.disabled?"":e,css:!r.disabled,...r.group?void 0:{mode:r.mode},...r.disabled?{}:o},i.default)}}})}function Q_(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"in-out";return Pe()({name:e,props:{mode:{type:String,default:n},disabled:{type:Boolean,default:po()},group:Boolean},setup(r,s){let{slots:i}=s;const o=r.group?Uf:xr;return()=>Lr(o,{name:r.disabled?"":e,css:!r.disabled,...r.disabled?{}:t},i.default)}})}function eb(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";const n=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)?"width":"height",r=Pt(`offset-${n}`);return{onBeforeEnter(o){o._parent=o.parentNode,o._initialStyle={transition:o.style.transition,overflow:o.style.overflow,[n]:o.style[n]}},onEnter(o){const a=o._initialStyle;if(!a)return;o.style.setProperty("transition","none","important"),o.style.overflow="hidden";const c=`${o[r]}px`;o.style[n]="0",o.offsetHeight,o.style.transition=a.transition,e&&o._parent&&o._parent.classList.add(e),requestAnimationFrame(()=>{o.style[n]=c})},onAfterEnter:i,onEnterCancelled:i,onLeave(o){o._initialStyle={transition:"",overflow:o.style.overflow,[n]:o.style[n]},o.style.overflow="hidden",o.style[n]=`${o[r]}px`,o.offsetHeight,requestAnimationFrame(()=>o.style[n]="0")},onAfterLeave:s,onLeaveCancelled:s};function s(o){e&&o._parent&&o._parent.classList.remove(e),i(o)}function i(o){if(!o._initialStyle)return;const a=o._initialStyle[n];o.style.overflow=o._initialStyle.overflow,a!=null&&(o.style[n]=a),delete o._initialStyle}}const CR=ie({target:[Object,Array]},"v-dialog-transition"),Bl=new WeakMap,IR=Pe()({name:"VDialogTransition",props:CR(),setup(e,t){let{slots:n}=t;const r={onBeforeEnter(s){s.style.pointerEvents="none",s.style.visibility="hidden"},async onEnter(s,i){var d;await new Promise(h=>requestAnimationFrame(h)),await new Promise(h=>requestAnimationFrame(h)),s.style.visibility="";const o=pm(e.target,s),{x:a,y:c,sx:l,sy:u,speed:f}=o;if(Bl.set(s,o),po())Kr(s,[{opacity:0},{}],{duration:125*f,easing:vp}).finished.then(()=>i());else{const h=Kr(s,[{transform:`translate(${a}px, ${c}px) scale(${l}, ${u})`,opacity:0},{}],{duration:225*f,easing:vp});(d=hm(s))==null||d.forEach(p=>{Kr(p,[{opacity:0},{opacity:0,offset:.33},{}],{duration:225*2*f,easing:Cu})}),h.finished.then(()=>i())}},onAfterEnter(s){s.style.removeProperty("pointer-events")},onBeforeLeave(s){s.style.pointerEvents="none"},async onLeave(s,i){var d;await new Promise(h=>requestAnimationFrame(h));let o;!Bl.has(s)||Array.isArray(e.target)||e.target.offsetParent||e.target.getClientRects().length?o=pm(e.target,s):o=Bl.get(s);const{x:a,y:c,sx:l,sy:u,speed:f}=o;po()?Kr(s,[{},{opacity:0}],{duration:85*f,easing:_p}).finished.then(()=>i()):(Kr(s,[{},{transform:`translate(${a}px, ${c}px) scale(${l}, ${u})`,opacity:0}],{duration:125*f,easing:_p}).finished.then(()=>i()),(d=hm(s))==null||d.forEach(p=>{Kr(p,[{},{opacity:0,offset:.2},{opacity:0}],{duration:125*2*f,easing:Cu})}))},onAfterLeave(s){s.style.removeProperty("pointer-events")}};return()=>e.target?F(xr,Ye({name:"dialog-transition"},r,{css:!1}),n):F(xr,{name:"dialog-transition"},n)}});function hm(e){var n;const t=(n=e.querySelector(":scope > .v-card, :scope > .v-sheet, :scope > .v-list"))==null?void 0:n.children;return t&&[...t]}function pm(e,t){const n=$v(e),r=Bv(t),[s,i]=getComputedStyle(t).transformOrigin.split(" ").map(g=>parseFloat(g)),[o,a]=getComputedStyle(t).getPropertyValue("--v-overlay-anchor-origin").split(" ");let c=n.left+n.width/2;o==="left"||a==="left"?c-=n.width/2:(o==="right"||a==="right")&&(c+=n.width/2);let l=n.top+n.height/2;o==="top"||a==="top"?l-=n.height/2:(o==="bottom"||a==="bottom")&&(l+=n.height/2);const u=n.width/r.width,f=n.height/r.height,d=Math.max(1,u,f),h=u/d||0,p=f/d||0,m=r.width*r.height/(window.innerWidth*window.innerHeight),y=m>.12?Math.min(1.5,(m-.12)*10+1):1;return{x:c-(s+r.left),y:l-(i+r.top),sx:h,sy:p,speed:y}}Xt("fab-transition","center center","out-in");Xt("dialog-bottom-transition");Xt("dialog-top-transition");const AH=Xt("fade-transition"),OH=Xt("scale-transition");Xt("scroll-x-transition");Xt("scroll-x-reverse-transition");Xt("scroll-y-transition");Xt("scroll-y-reverse-transition");Xt("slide-x-transition");const MH=Xt("slide-x-reverse-transition"),PH=Xt("slide-y-transition");Xt("slide-y-reverse-transition");const kR=Q_("expand-transition",eb()),NH=Q_("expand-x-transition",eb("",!0)),xR=ie({fullscreen:Boolean,scrollable:Boolean,...ys(hd({captureFocus:!0,origin:"center center",scrollStrategy:"block",transition:{component:IR},zIndex:2400,retainFocus:!0}),["disableInitialFocus"])},"VDialog"),RR=Pe()({name:"VDialog",props:xR(),emits:{"update:modelValue":e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,t){let{emit:n,slots:r}=t;const s=zn(e,"modelValue"),{scopeId:i}=dd(),o=Ee();function a(){var l;n("afterEnter"),(e.scrim||e.retainFocus)&&((l=o.value)!=null&&l.contentEl)&&!o.value.contentEl.contains(document.activeElement)&&o.value.contentEl.focus({preventScroll:!0})}function c(){n("afterLeave")}return Se(s,async l=>{var u;l||(await dt(),(u=o.value.activatorEl)==null||u.focus({preventScroll:!0}))}),Je(()=>{const l=oc.filterProps(e),u=Ye({"aria-haspopup":"dialog"},e.activatorProps),f=Ye({tabindex:-1},e.contentProps);return F(oc,Ye({ref:o,class:["v-dialog",{"v-dialog--fullscreen":e.fullscreen,"v-dialog--scrollable":e.scrollable},e.class],style:e.style},l,{modelValue:s.value,"onUpdate:modelValue":d=>s.value=d,"aria-modal":"true",activatorProps:u,contentProps:f,height:e.fullscreen?void 0:e.height,width:e.fullscreen?void 0:e.width,maxHeight:e.fullscreen?void 0:e.maxHeight,maxWidth:e.fullscreen?void 0:e.maxWidth,role:"dialog",onAfterEnter:a,onAfterLeave:c},i),{activator:r.activator,default:function(){for(var d=arguments.length,h=new Array(d),p=0;p{var m;return[(m=r.default)==null?void 0:m.call(r,...h)]}})}})}),q_({},o)}}),AR=["dotted","dashed","solid","double"],OR=ie({color:String,contentOffset:[Number,String,Array],gradient:Boolean,inset:Boolean,length:[Number,String],opacity:[Number,String],thickness:[Number,String],vertical:Boolean,variant:{type:String,default:"solid",validator:e=>AR.includes(e)},...rt(),...Yt()},"VDivider"),tb=Pe()({name:"VDivider",props:OR(),setup(e,t){let{attrs:n,slots:r}=t;const{themeClasses:s}=cn(e),{textColorClasses:i,textColorStyles:o}=ri(()=>e.color),a=U(()=>{const l={};return e.length&&(l[e.vertical?"height":"width"]=pe(e.length)),e.thickness&&(l[e.vertical?"borderRightWidth":"borderTopWidth"]=pe(e.thickness)),l}),c=Q(()=>{const l=Array.isArray(e.contentOffset)?e.contentOffset[0]:e.contentOffset,u=Array.isArray(e.contentOffset)?e.contentOffset[1]:0;return{marginBlock:e.vertical&&l?pe(l):void 0,marginInline:!e.vertical&&l?pe(l):void 0,transform:u?`translate${e.vertical?"X":"Y"}(${pe(u)})`:void 0}});return Je(()=>{const l=ne("hr",{class:Re([{"v-divider":!0,"v-divider--gradient":e.gradient&&!r.default,"v-divider--inset":e.inset,"v-divider--vertical":e.vertical},s.value,i.value,e.class]),style:ze([a.value,o.value,{"--v-border-opacity":e.opacity},{"border-style":e.variant},e.style]),"aria-orientation":!n.role||n.role==="separator"?e.vertical?"vertical":"horizontal":void 0,role:`${n.role||"separator"}`},null);return r.default?ne("div",{class:Re(["v-divider__wrapper",{"v-divider__wrapper--gradient":e.gradient,"v-divider__wrapper--inset":e.inset,"v-divider__wrapper--vertical":e.vertical}])},[l,ne("div",{class:"v-divider__content",style:ze(c.value)},[r.default()]),l]):l}),{}}}),MR=Xf("v-spacer","div","VSpacer"),Bu=Symbol.for("vuetify:list");function nb(){let{filterable:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{filterable:!1};const t=Oe(Bu,{filterable:!1,hasPrepend:be(!1),updateHasPrepend:()=>null}),n={filterable:t.filterable||e,hasPrepend:be(!1),updateHasPrepend:r=>{r&&(n.hasPrepend.value=r)}};return Ct(Bu,n),t}function rb(){return Oe(Bu,null)}const pd=e=>{const t={activate:n=>{let{id:r,value:s,activated:i}=n;return r=ue(r),e&&!s&&i.size===1&&i.has(r)||(s?i.add(r):i.delete(r)),i},in:(n,r,s)=>{let i=new Set;if(n!=null)for(const o of qf(n))i=t.activate({id:o,value:!0,activated:new Set(i),children:r,parents:s});return i},out:n=>Array.from(n)};return t},sb=e=>{const t=pd(e);return{activate:r=>{let{activated:s,id:i,...o}=r;i=ue(i);const a=s.has(i)?new Set([i]):new Set;return t.activate({...o,id:i,activated:a})},in:(r,s,i)=>{let o=new Set;if(r!=null){const a=qf(r);a.length&&(o=t.in(a.slice(0,1),s,i))}return o},out:(r,s,i)=>t.out(r,s,i)}},PR=e=>{const t=pd(e);return{activate:r=>{let{id:s,activated:i,children:o,...a}=r;return s=ue(s),o.has(s)?i:t.activate({id:s,activated:i,children:o,...a})},in:t.in,out:t.out}},NR=e=>{const t=sb(e);return{activate:r=>{let{id:s,activated:i,children:o,...a}=r;return s=ue(s),o.has(s)?i:t.activate({id:s,activated:i,children:o,...a})},in:t.in,out:t.out}},LR={open:e=>{let{id:t,value:n,opened:r,parents:s}=e;if(n){const i=new Set;i.add(t);let o=s.get(t);for(;o!=null;)i.add(o),o=s.get(o);return i}else return r.delete(t),r},select:()=>null},ib={open:e=>{let{id:t,value:n,opened:r,parents:s}=e;if(n){let i=s.get(t);for(r.add(t);i!=null&&i!==t;)r.add(i),i=s.get(i);return r}else r.delete(t);return r},select:()=>null},DR={open:ib.open,select:e=>{let{id:t,value:n,opened:r,parents:s}=e;if(!n)return r;const i=[];let o=s.get(t);for(;o!=null;)i.push(o),o=s.get(o);return new Set(i)}},md=e=>{const t={select:n=>{let{id:r,value:s,selected:i}=n;if(r=ue(r),e&&!s){const o=Array.from(i.entries()).reduce((a,c)=>{let[l,u]=c;return u==="on"&&a.push(l),a},[]);if(o.length===1&&o[0]===r)return i}return i.set(r,s?"on":"off"),i},in:(n,r,s,i)=>{const o=new Map;for(const a of n||[])t.select({id:a,value:!0,selected:o,children:r,parents:s,disabled:i});return o},out:n=>{const r=[];for(const[s,i]of n.entries())i==="on"&&r.push(s);return r}};return t},ob=e=>{const t=md(e);return{select:r=>{let{selected:s,id:i,...o}=r;i=ue(i);const a=s.has(i)?new Map([[i,s.get(i)]]):new Map;return t.select({...o,id:i,selected:a})},in:(r,s,i,o)=>r!=null&&r.length?t.in(r.slice(0,1),s,i,o):new Map,out:(r,s,i)=>t.out(r,s,i)}},FR=e=>{const t=md(e);return{select:r=>{let{id:s,selected:i,children:o,...a}=r;return s=ue(s),o.has(s)?i:t.select({id:s,selected:i,children:o,...a})},in:t.in,out:t.out}},$R=e=>{const t=ob(e);return{select:r=>{let{id:s,selected:i,children:o,...a}=r;return s=ue(s),o.has(s)?i:t.select({id:s,selected:i,children:o,...a})},in:t.in,out:t.out}},ab=e=>{const t={select:n=>{let{id:r,value:s,selected:i,children:o,parents:a,disabled:c}=n;r=ue(r);const l=new Map(i),u=[r];for(;u.length;){const d=u.shift();c.has(d)||i.set(ue(d),s?"on":"off"),o.has(d)&&u.push(...o.get(d))}let f=ue(a.get(r));for(;f;){let d=!0,h=!0;for(const p of o.get(f)){const m=ue(p);if(!c.has(m)&&(i.get(m)!=="on"&&(d=!1),i.has(m)&&i.get(m)!=="off"&&(h=!1),!d&&!h))break}i.set(f,d?"on":h?"off":"indeterminate"),f=ue(a.get(f))}return e&&!s&&Array.from(i.entries()).reduce((h,p)=>{let[m,y]=p;return y==="on"&&h.push(m),h},[]).length===0?l:i},in:(n,r,s)=>{let i=new Map;for(const o of n||[])i=t.select({id:o,value:!0,selected:i,children:r,parents:s,disabled:new Set});return i},out:(n,r)=>{const s=[];for(const[i,o]of n.entries())o==="on"&&!r.has(i)&&s.push(i);return s}};return t},BR=e=>{const t=ab(e);return{select:t.select,in:t.in,out:(r,s,i)=>{const o=[];for(const[a,c]of r.entries())if(c==="on"){if(i.has(a)){const l=i.get(a);if(r.get(l)==="on")continue}o.push(a)}return o}}},si=Symbol.for("vuetify:nested"),cb={id:be(),root:{itemsRegistration:Ee("render"),register:()=>null,unregister:()=>null,updateDisabled:()=>null,children:Ee(new Map),parents:Ee(new Map),disabled:Ee(new Set),open:()=>null,openOnSelect:()=>null,activate:()=>null,select:()=>null,activatable:Ee(!1),selectable:Ee(!1),opened:Ee(new Set),activated:Ee(new Set),selected:Ee(new Map),selectedValues:Ee([]),getPath:()=>[]}},HR=ie({activatable:Boolean,selectable:Boolean,activeStrategy:[String,Function,Object],selectStrategy:[String,Function,Object],openStrategy:[String,Object],opened:null,activated:null,selected:null,mandatory:Boolean,itemsRegistration:{type:String,default:"render"}},"nested"),VR=(e,t,n)=>{let r=!1;const s=be(new Map),i=be(new Map),o=be(new Set),a=zn(e,"opened",e.opened,_=>new Set(Array.isArray(_)?_.map(T=>ue(T)):_),_=>[..._.values()]),c=U(()=>{if(typeof e.activeStrategy=="object")return e.activeStrategy;if(typeof e.activeStrategy=="function")return e.activeStrategy(e.mandatory);switch(e.activeStrategy){case"leaf":return PR(e.mandatory);case"single-leaf":return NR(e.mandatory);case"independent":return pd(e.mandatory);case"single-independent":default:return sb(e.mandatory)}}),l=U(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;if(typeof e.selectStrategy=="function")return e.selectStrategy(e.mandatory);switch(e.selectStrategy){case"single-leaf":return $R(e.mandatory);case"leaf":return FR(e.mandatory);case"independent":return md(e.mandatory);case"single-independent":return ob(e.mandatory);case"trunk":return BR(e.mandatory);case"classic":default:return ab(e.mandatory)}}),u=U(()=>{if(typeof e.openStrategy=="object")return e.openStrategy;switch(e.openStrategy){case"list":return DR;case"single":return LR;case"multiple":default:return ib}}),f=zn(e,"activated",e.activated,_=>c.value.in(_,s.value,i.value),_=>c.value.out(_,s.value,i.value)),d=zn(e,"selected",e.selected,_=>l.value.in(_,s.value,i.value,o.value),_=>l.value.out(_,s.value,i.value));yn(()=>{r=!0});function h(_){const T=[];let O=ue(_);for(;O!==void 0;)T.unshift(O),O=i.value.get(O);return T}const p=ut("nested"),m=new Set,y=fC(()=>{dt(()=>{s.value=new Map(s.value),i.value=new Map(i.value)})},100);Se(()=>[t.value,mt(n)],()=>{e.itemsRegistration==="props"&&g()},{immediate:!0});function g(){const _=new Map,T=new Map,O=new Set,R=mt(n)?I=>ue(I.raw):I=>I.value,E=[...t.value];let w=0;for(;we.activatable),selectable:Q(()=>e.selectable),activated:f,selected:d,selectedValues:U(()=>{const _=[];for(const[T,O]of d.value.entries())O==="on"&&_.push(T);return _}),itemsRegistration:Q(()=>e.itemsRegistration),register:(_,T,O,R)=>{if(m.has(_)){h(_).map(String).join(" -> "),h(T).concat(_).map(String).join(" -> ");return}else m.add(_);T&&_!==T&&i.value.set(_,T),O&&o.value.add(_),R&&s.value.set(_,[]),T!=null&&s.value.set(T,[...s.value.get(T)||[],_]),y()},unregister:_=>{if(r)return;m.delete(_),s.value.delete(_),o.value.delete(_);const T=i.value.get(_);if(T){const O=s.value.get(T)??[];s.value.set(T,O.filter(R=>R!==_))}i.value.delete(_),y()},updateDisabled:(_,T)=>{T?o.value.add(_):o.value.delete(_)},open:(_,T,O)=>{p.emit("click:open",{id:_,value:T,path:h(_),event:O});const R=u.value.open({id:_,value:T,opened:new Set(a.value),children:s.value,parents:i.value,event:O});R&&(a.value=R)},openOnSelect:(_,T,O)=>{const R=u.value.select({id:_,value:T,selected:new Map(d.value),opened:new Set(a.value),children:s.value,parents:i.value,event:O});R&&(a.value=R)},select:(_,T,O)=>{p.emit("click:select",{id:_,value:T,path:h(_),event:O});const R=l.value.select({id:_,value:T,selected:new Map(d.value),children:s.value,parents:i.value,disabled:o.value,event:O});R&&(d.value=R),v.root.openOnSelect(_,T,O)},activate:(_,T,O)=>{if(!e.activatable)return v.root.select(_,!0,O);p.emit("click:activate",{id:_,value:T,path:h(_),event:O});const R=c.value.activate({id:_,value:T,activated:new Set(f.value),children:s.value,parents:i.value,event:O});if(R.size!==f.value.size)f.value=R;else{for(const E of R)if(!f.value.has(E)){f.value=R;return}for(const E of f.value)if(!R.has(E)){f.value=R;return}}},children:s,parents:i,disabled:o,getPath:h}};return Ct(si,v),v.root},lb=(e,t,n)=>{const r=Oe(si,cb),s=Symbol("nested item"),i=U(()=>{const a=ue(mt(e));return a!==void 0?a:s}),o={...r,id:i,open:(a,c)=>r.root.open(i.value,a,c),openOnSelect:(a,c)=>r.root.openOnSelect(i.value,a,c),isOpen:U(()=>r.root.opened.value.has(i.value)),parent:U(()=>r.root.parents.value.get(i.value)),activate:(a,c)=>r.root.activate(i.value,a,c),isActivated:U(()=>r.root.activated.value.has(i.value)),select:(a,c)=>r.root.select(i.value,a,c),isSelected:U(()=>r.root.selected.value.get(i.value)==="on"),isIndeterminate:U(()=>r.root.selected.value.get(i.value)==="indeterminate"),isLeaf:U(()=>!r.root.children.value.get(i.value)),isGroupActivator:r.isGroupActivator};return Dc(()=>{r.isGroupActivator||r.root.itemsRegistration.value==="props"||dt(()=>{r.root.register(i.value,r.id.value,mt(t),n)})}),yn(()=>{r.isGroupActivator||r.root.itemsRegistration.value==="props"||r.root.unregister(i.value)}),Se(i,(a,c)=>{r.isGroupActivator||r.root.itemsRegistration.value==="props"||(r.root.unregister(c),dt(()=>{r.root.register(a,r.id.value,mt(t),n)}))}),Se(()=>mt(t),a=>{r.root.updateDisabled(i.value,a)}),n&&Ct(si,o),o},UR=()=>{const e=Oe(si,cb);Ct(si,{...e,isGroupActivator:!0})};function WR(){const e=be(!1);return Nr(()=>{window.requestAnimationFrame(()=>{e.value=!0})}),{ssrBootStyles:Q(()=>e.value?void 0:{transition:"none !important"}),isBooted:Xs(e)}}const jR=gi({name:"VListGroupActivator",setup(e,t){let{slots:n}=t;return UR(),()=>{var r;return(r=n.default)==null?void 0:r.call(n)}}}),zR=ie({activeColor:String,baseColor:String,color:String,collapseIcon:{type:yt,default:"$collapse"},disabled:Boolean,expandIcon:{type:yt,default:"$expand"},rawId:[String,Number],prependIcon:yt,appendIcon:yt,fluid:Boolean,subgroup:Boolean,title:String,value:null,...rt(),...It()},"VListGroup"),mm=Pe()({name:"VListGroup",props:zR(),setup(e,t){let{slots:n}=t;const{isOpen:r,open:s,id:i}=lb(()=>e.value,()=>e.disabled,!0),o=U(()=>`v-list-group--id-${String(e.rawId??i.value)}`),a=rb(),{isBooted:c}=WR(),l=Oe(si),u=Q(()=>{var m;return((m=l==null?void 0:l.root)==null?void 0:m.itemsRegistration.value)==="render"});function f(m){var y;["INPUT","TEXTAREA"].includes((y=m.target)==null?void 0:y.tagName)||s(!r.value,m)}const d=U(()=>({onClick:f,class:"v-list-group__header",id:o.value})),h=U(()=>r.value?e.collapseIcon:e.expandIcon),p=U(()=>({VListItem:{activeColor:e.activeColor,baseColor:e.baseColor,color:e.color,prependIcon:e.prependIcon||e.subgroup&&h.value,appendIcon:e.appendIcon||!e.subgroup&&h.value,title:e.title,value:e.value}}));return Je(()=>F(e.tag,{class:Re(["v-list-group",{"v-list-group--prepend":a==null?void 0:a.hasPrepend.value,"v-list-group--fluid":e.fluid,"v-list-group--subgroup":e.subgroup,"v-list-group--open":r.value},e.class]),style:ze(e.style)},{default:()=>[n.activator&&F(nn,{defaults:p.value},{default:()=>[F(jR,null,{default:()=>[n.activator({props:d.value,isOpen:r.value})]})]}),F(Fs,{transition:{component:kR},disabled:!c.value},{default:()=>{var m,y;return[u.value?us(ne("div",{class:"v-list-group__items",role:"group","aria-labelledby":o.value},[(m=n.default)==null?void 0:m.call(n)]),[[Vf,r.value]]):r.value&&ne("div",{class:"v-list-group__items",role:"group","aria-labelledby":o.value},[(y=n.default)==null?void 0:y.call(n)])]}})]})),{isOpen:r}}}),qR=ie({opacity:[Number,String],...rt(),...It()},"VListItemSubtitle"),ub=Pe()({name:"VListItemSubtitle",props:qR(),setup(e,t){let{slots:n}=t;return Je(()=>F(e.tag,{class:Re(["v-list-item-subtitle",e.class]),style:ze([{"--v-list-item-subtitle-opacity":e.opacity},e.style])},n)),{}}}),fb=Xf("v-list-item-title"),GR=ie({active:{type:Boolean,default:void 0},activeClass:String,activeColor:String,appendAvatar:String,appendIcon:yt,baseColor:String,disabled:Boolean,lines:[Boolean,String],link:{type:Boolean,default:void 0},nav:Boolean,prependAvatar:String,prependIcon:yt,ripple:{type:[Boolean,Object],default:!0},slim:Boolean,prependGap:[Number,String],subtitle:{type:[String,Number,Boolean],default:void 0},title:{type:[String,Number,Boolean],default:void 0},value:null,onClick:Ji(),onClickOnce:Ji(),...vi(),...rt(),...vs(),...Si(),...$o(),...ar(),...ud(),...It(),...Yt(),..._s({variant:"text"})},"VListItem"),Hu=Pe()({name:"VListItem",directives:{vRipple:wo},props:GR(),emits:{click:e=>!0},setup(e,t){let{attrs:n,slots:r,emit:s}=t;const i=ld(e,n),o=U(()=>e.value===void 0?i.href.value:e.value),{activate:a,isActivated:c,select:l,isOpen:u,isSelected:f,isIndeterminate:d,isGroupActivator:h,root:p,parent:m,openOnSelect:y,id:g}=lb(o,()=>e.disabled,!1),v=rb(),_=U(()=>{var C;return e.active!==!1&&(e.active||((C=i.isActive)==null?void 0:C.value)||(p.activatable.value?c.value:f.value))}),T=Q(()=>e.link!==!1&&i.isLink.value),O=U(()=>!!v&&(p.selectable.value||p.activatable.value||e.value!=null)),R=U(()=>!e.disabled&&e.link!==!1&&(e.link||i.isClickable.value||O.value)),E=U(()=>v?T.value?"link":O.value?"option":"listitem":void 0),w=U(()=>{if(O.value)return p.activatable.value?c.value:p.selectable.value?f.value:_.value}),I=Q(()=>e.rounded||e.nav),A=Q(()=>e.color??e.activeColor),M=Q(()=>({color:_.value?A.value??e.baseColor:e.baseColor,variant:e.variant}));Se(()=>{var C;return(C=i.isActive)==null?void 0:C.value},C=>{C&&x()}),Dc(()=>{var C;(C=i.isActive)!=null&&C.value&&dt(()=>x())});function x(){m.value!=null&&p.open(m.value,!0),y(!0)}const{themeClasses:N}=cn(e),{borderClasses:L}=_i(e),{colorClasses:G,colorStyles:J,variantClasses:j}=Vo(M),{densityClasses:D}=bi(e),{dimensionStyles:ae}=Ei(e),{elevationClasses:q}=Bo(e),{roundedClasses:ce}=cr(I),le=Q(()=>e.lines?`v-list-item--${e.lines}-line`:void 0),ve=Q(()=>e.ripple!==void 0&&e.ripple&&(v!=null&&v.filterable)?{keys:["Enter"]}:e.ripple),Me=U(()=>({isActive:_.value,select:l,isOpen:u.value,isSelected:f.value,isIndeterminate:d.value}));function Fe(C){var W,z;s("click",C),!["INPUT","TEXTAREA"].includes((W=C.target)==null?void 0:W.tagName)&&R.value&&((z=i.navigate)==null||z.call(i,C),!h&&(p.activatable.value?a(!c.value,C):(p.selectable.value||e.value!=null&&!T.value)&&l(!f.value,C)))}function Ge(C){const W=C.target;["INPUT","TEXTAREA"].includes(W.tagName)||(C.key==="Enter"||C.key===" "&&!(v!=null&&v.filterable))&&(C.preventDefault(),C.stopPropagation(),C.target.dispatchEvent(new MouseEvent("click",C)))}return Je(()=>{const C=T.value?"a":e.tag,W=r.title||e.title!=null,z=r.subtitle||e.subtitle!=null,re=!!(e.appendAvatar||e.appendIcon),_e=!!(re||r.append),b=!!(e.prependAvatar||e.prependIcon),S=!!(b||r.prepend);return v==null||v.updateHasPrepend(S),e.activeColor&&kv("active-color",["color","base-color"]),us(F(C,Ye(i.linkProps,{class:["v-list-item",{"v-list-item--active":_.value,"v-list-item--disabled":e.disabled,"v-list-item--link":R.value,"v-list-item--nav":e.nav,"v-list-item--slim":e.slim,[`${e.activeClass}`]:e.activeClass&&_.value},N.value,L.value,G.value,D.value,q.value,le.value,ce.value,j.value,e.class],style:[{"--v-list-prepend-gap":pe(e.prependGap)},J.value,ae.value,e.style],tabindex:R.value?v?-2:0:void 0,"aria-selected":w.value,role:E.value,onClick:Fe,onKeydown:R.value&&!T.value&&Ge}),{default:()=>{var k;return[Ho(R.value||_.value,"v-list-item"),S&&ne("div",{key:"prepend",class:"v-list-item__prepend"},[r.prepend?F(nn,{key:"prepend-defaults",disabled:!b,defaults:{VAvatar:{density:e.density,image:e.prependAvatar},VIcon:{density:e.density,icon:e.prependIcon},VListItemAction:{start:!0}}},{default:()=>{var P;return[(P=r.prepend)==null?void 0:P.call(r,Me.value)]}}):ne(Ke,null,[e.prependAvatar&&F(ac,{key:"prepend-avatar",density:e.density,image:e.prependAvatar},null),e.prependIcon&&F(Mn,{key:"prepend-icon",density:e.density,icon:e.prependIcon},null)]),ne("div",{class:"v-list-item__spacer"},null)]),ne("div",{class:"v-list-item__content","data-no-activator":""},[W&&F(fb,{key:"title"},{default:()=>{var P;return[((P=r.title)==null?void 0:P.call(r,{title:e.title}))??dn(e.title)]}}),z&&F(ub,{key:"subtitle"},{default:()=>{var P;return[((P=r.subtitle)==null?void 0:P.call(r,{subtitle:e.subtitle}))??dn(e.subtitle)]}}),(k=r.default)==null?void 0:k.call(r,Me.value)]),_e&&ne("div",{key:"append",class:"v-list-item__append"},[r.append?F(nn,{key:"append-defaults",disabled:!re,defaults:{VAvatar:{density:e.density,image:e.appendAvatar},VIcon:{density:e.density,icon:e.appendIcon},VListItemAction:{end:!0}}},{default:()=>{var P;return[(P=r.append)==null?void 0:P.call(r,Me.value)]}}):ne(Ke,null,[e.appendIcon&&F(Mn,{key:"append-icon",density:e.density,icon:e.appendIcon},null),e.appendAvatar&&F(ac,{key:"append-avatar",density:e.density,image:e.appendAvatar},null)]),ne("div",{class:"v-list-item__spacer"},null)])]}}),[[wo,R.value&&ve.value]])}),{activate:a,isActivated:c,isGroupActivator:h,isSelected:f,list:v,select:l,root:p,id:g,link:i}}}),KR=ie({color:String,inset:Boolean,sticky:Boolean,title:String,...rt(),...It()},"VListSubheader"),YR=Pe()({name:"VListSubheader",props:KR(),setup(e,t){let{slots:n}=t;const{textColorClasses:r,textColorStyles:s}=ri(()=>e.color);return Je(()=>{const i=!!(n.default||e.title);return F(e.tag,{class:Re(["v-list-subheader",{"v-list-subheader--inset":e.inset,"v-list-subheader--sticky":e.sticky},r.value,e.class]),style:ze([{textColorStyles:s},e.style])},{default:()=>{var o;return[i&&ne("div",{class:"v-list-subheader__text"},[((o=n.default)==null?void 0:o.call(n))??e.title])]}})}),{}}}),XR=ie({items:Array,returnObject:Boolean},"VListChildren"),db=Pe()({name:"VListChildren",props:XR(),setup(e,t){let{slots:n}=t;return nb(),()=>{var r,s;return((r=n.default)==null?void 0:r.call(n))??((s=e.items)==null?void 0:s.map(i=>{var d,h;let{children:o,props:a,type:c,raw:l}=i;if(c==="divider")return((d=n.divider)==null?void 0:d.call(n,{props:a}))??F(tb,a,null);if(c==="subheader")return((h=n.subheader)==null?void 0:h.call(n,{props:a}))??F(YR,a,null);const u={subtitle:n.subtitle?p=>{var m;return(m=n.subtitle)==null?void 0:m.call(n,{...p,item:l})}:void 0,prepend:n.prepend?p=>{var m;return(m=n.prepend)==null?void 0:m.call(n,{...p,item:l})}:void 0,append:n.append?p=>{var m;return(m=n.append)==null?void 0:m.call(n,{...p,item:l})}:void 0,title:n.title?p=>{var m;return(m=n.title)==null?void 0:m.call(n,{...p,item:l})}:void 0},f=mm.filterProps(a);return o?F(mm,Ye(f,{value:e.returnObject?l:a==null?void 0:a.value,rawId:a==null?void 0:a.value}),{activator:p=>{let{props:m}=p;const y=Ye(a,m,{value:e.returnObject?l:a.value});return n.header?n.header({props:y}):F(Hu,y,u)},default:()=>F(db,{items:o,returnObject:e.returnObject},n)}):n.item?n.item({props:a}):F(Hu,Ye(a,{value:e.returnObject?l:a.value}),u)}))}}}),JR=ie({items:{type:Array,default:()=>[]},itemTitle:{type:[String,Array,Function],default:"title"},itemValue:{type:[String,Array,Function],default:"value"},itemChildren:{type:[Boolean,String,Array,Function],default:"children"},itemProps:{type:[Boolean,String,Array,Function],default:"props"},itemType:{type:[Boolean,String,Array,Function],default:"type"},returnObject:Boolean,valueComparator:Function},"list-items"),ZR=new Set(["item","divider","subheader"]);function Ks(e,t){const n=kn(t,e.itemTitle,t),r=kn(t,e.itemValue,n),s=kn(t,e.itemChildren),i=e.itemProps===!0?typeof t=="object"&&t!=null&&!Array.isArray(t)?"children"in t?ys(t,["children"]):t:void 0:kn(t,e.itemProps);let o=kn(t,e.itemType,"item");ZR.has(o)||(o="item");const a={title:n,value:r,...i};return{type:o,title:String(a.title??""),value:a.value,props:a,children:o==="item"&&Array.isArray(s)?hb(e,s):void 0,raw:t}}Ks.neededProps=["itemTitle","itemValue","itemChildren","itemProps","itemType"];function hb(e,t){const n=zf(e,Ks.neededProps),r=[];for(const s of t)r.push(Ks(n,s));return r}function LH(e){const t=U(()=>hb(e,e.items)),n=U(()=>t.value.some(a=>a.value===null)),r=be(new Map),s=be([]);on(()=>{const a=t.value,c=new Map,l=[];for(let u=0;u{let{raw:l}=c;return l}):a.map(c=>{let{value:l}=c;return l})}return{items:t,transformIn:i,transformOut:o}}const QR=new Set(["item","divider","subheader"]);function eA(e,t){const n=ds(t)?t:kn(t,e.itemTitle),r=ds(t)?t:kn(t,e.itemValue,void 0),s=kn(t,e.itemChildren),i=e.itemProps===!0?ys(t,["children"]):kn(t,e.itemProps);let o=kn(t,e.itemType,"item");QR.has(o)||(o="item");const a={title:n,value:r,...i};return{type:o,title:a.title,value:a.value,props:a,children:o==="item"&&s?pb(e,s):void 0,raw:t}}function pb(e,t){const n=[];for(const r of t)n.push(eA(e,r));return n}function tA(e){return{items:U(()=>pb(e,e.items))}}const nA=ie({baseColor:String,activeColor:String,activeClass:String,bgColor:String,disabled:Boolean,filterable:Boolean,expandIcon:yt,collapseIcon:yt,lines:{type:[Boolean,String],default:"one"},slim:Boolean,prependGap:[Number,String],indent:[Number,String],nav:Boolean,"onClick:open":Ji(),"onClick:select":Ji(),"onUpdate:opened":Ji(),...HR({selectStrategy:"single-leaf",openStrategy:"list"}),...vi(),...rt(),...vs(),...Si(),...$o(),...JR(),...ar(),...It(),...Yt(),..._s({variant:"text"})},"VList"),rA=Pe()({name:"VList",props:nA(),emits:{"update:selected":e=>!0,"update:activated":e=>!0,"update:opened":e=>!0,"click:open":e=>!0,"click:activate":e=>!0,"click:select":e=>!0},setup(e,t){let{slots:n}=t;const{items:r}=tA(e),{themeClasses:s}=cn(e),{backgroundColorClasses:i,backgroundColorStyles:o}=Gs(()=>e.bgColor),{borderClasses:a}=_i(e),{densityClasses:c}=bi(e),{dimensionStyles:l}=Ei(e),{elevationClasses:u}=Bo(e),{roundedClasses:f}=cr(e),{children:d,open:h,parents:p,select:m,getPath:y}=VR(e,r,()=>e.returnObject),g=Q(()=>e.lines?`v-list--${e.lines}-line`:void 0),v=Q(()=>e.activeColor),_=Q(()=>e.baseColor),T=Q(()=>e.color),O=Q(()=>e.selectable||e.activatable);nb({filterable:e.filterable}),Bc({VListGroup:{activeColor:v,baseColor:_,color:T,expandIcon:Q(()=>e.expandIcon),collapseIcon:Q(()=>e.collapseIcon)},VListItem:{activeClass:Q(()=>e.activeClass),activeColor:v,baseColor:_,color:T,density:Q(()=>e.density),disabled:Q(()=>e.disabled),lines:Q(()=>e.lines),nav:Q(()=>e.nav),slim:Q(()=>e.slim),variant:Q(()=>e.variant)}});const R=be(!1),E=Ee();function w(L){R.value=!0}function I(L){R.value=!1}function A(L){var G;!R.value&&!(L.relatedTarget&&((G=E.value)!=null&&G.contains(L.relatedTarget)))&&N()}function M(L){const G=L.target;if(!(!E.value||G.tagName==="INPUT"&&["Home","End"].includes(L.key)||G.tagName==="TEXTAREA")){if(L.key==="ArrowDown")N("next");else if(L.key==="ArrowUp")N("prev");else if(L.key==="Home")N("first");else if(L.key==="End")N("last");else return;L.preventDefault()}}function x(L){R.value=!0}function N(L){if(E.value)return Dv(E.value,L)}return Je(()=>{const L=e.indent??(e.prependGap?Number(e.prependGap)+24:void 0);return F(e.tag,{ref:E,class:Re(["v-list",{"v-list--disabled":e.disabled,"v-list--nav":e.nav,"v-list--slim":e.slim},s.value,i.value,a.value,c.value,u.value,g.value,f.value,e.class]),style:ze([{"--v-list-indent":pe(L),"--v-list-group-prepend":L?"0px":void 0,"--v-list-prepend-gap":pe(e.prependGap)},o.value,l.value,e.style]),tabindex:e.disabled?-1:0,role:O.value?"listbox":"list","aria-activedescendant":void 0,onFocusin:w,onFocusout:I,onFocus:A,onKeydown:M,onMousedown:x},{default:()=>[F(db,{items:r.value,returnObject:e.returnObject},n)]})}),{open:h,select:m,focus:N,children:d,parents:p,getPath:y}}});let Vu=null;const mb={name:"RateLimitModal",data(){return{isVisible:!1,activeRequests:[]}},computed:{hasActiveRequests(){return this.activeRequests.length>0}},watch:{hasActiveRequests(e){this.isVisible=e}},methods:{close(){this.isVisible=!1},show(e,t,n){const r=Date.now()+Math.random().toString(36).substring(2,9),s=Math.max(0,Math.floor((new Date(e)-new Date)/1e3)),i={id:r,resetTime:e,path:t,method:n,remainingSeconds:s};this.activeRequests.push(i),this.startCountdown(r),this.isVisible=!0},startCountdown(e){const t=this.activeRequests.find(r=>r.id===e);if(!t)return;const n=setInterval(()=>{const r=this.activeRequests.findIndex(s=>s.id===e);if(r===-1){clearInterval(n);return}this.activeRequests[r].remainingSeconds--,this.activeRequests[r].remainingSeconds<=0&&(clearInterval(n),this.activeRequests.splice(r,1))},1e3);t.intervalId=n},clearAllCountdowns(){this.activeRequests.forEach(e=>{e.intervalId&&clearInterval(e.intervalId)}),this.activeRequests=[]}},beforeUnmount(){this.clearAllCountdowns()},created(){Vu=this}};mb.show=function(e,t,n){Vu&&Vu.show(e,t,n)};const sA=mb,iA={class:"text-primary font-weight-bold"};function oA(e,t,n,r,s,i){return en(),xn(RR,{modelValue:e.isVisible,"onUpdate:modelValue":t[0]||(t[0]=o=>e.isVisible=o),"max-width":"500",persistent:""},{default:ft(()=>[F(dm,{class:"rate-limit-modal"},{default:ft(()=>[F(Y_,{class:"text-center pa-4 bg-error text-white"},{default:ft(()=>[F(Mn,{class:"mr-2",icon:"mdi-clock-alert-outline",size:"large"}),t[1]||(t[1]=Wi(" 请求频率超限 ",-1))]),_:1}),F($u,{class:"pa-6"},{default:ft(()=>[t[3]||(t[3]=ne("div",{class:"text-body-1 mb-4"},"您的请求过于频繁,请稍后再试。",-1)),e.activeRequests.length>0?(en(),xn(dm,{key:0,class:"mb-4",flat:""},{default:ft(()=>[F($u,null,{default:ft(()=>[(en(!0),mv(Ke,null,Z0(e.activeRequests,(o,a)=>(en(),xn(rA,{key:a,class:"mb-4"},{default:ft(()=>[F(Hu,{color:"primary","prepend-icon":"mdi-web"},{default:ft(()=>[F(fb,null,{default:ft(()=>[t[2]||(t[2]=Wi(" 等待时间: ",-1)),ne("span",iA,dn(o.remainingSeconds),1)]),_:2},1024),F(ub,null,{default:ft(()=>[Wi(dn(o.method)+" "+dn(o.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128)),e.index[F(MR),F(B_,{color:"primary",variant:"tonal",onClick:e.close},{default:ft(()=>[...t[5]||(t[5]=[Wi(" 我知道了",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const aA=T_(sA,[["render",oA]]),cA=ie({...rt(),...ys(EI(),["fullHeight"]),...Yt()},"VApp"),lA=Pe()({name:"VApp",props:cA(),setup(e,t){let{slots:n}=t;const r=cn(e),{layoutClasses:s,getLayoutItem:i,items:o,layoutRef:a}=CI({...e,fullHeight:!0}),{rtlClasses:c}=Do();return Je(()=>{var l;return ne("div",{ref:a,class:Re(["v-application",r.themeClasses.value,s.value,c.value,e.class]),style:ze([e.style])},[ne("div",{class:"v-application__wrap"},[(l=n.default)==null?void 0:l.call(n)])])}),{getLayoutItem:i,items:o,theme:r}}}),uA={__name:"App",setup(e){const t=s_();return Nr(()=>{const n=sd("theme.mode");t.global.name.value=n,window.addEventListener("beforeinstallprompt",r=>{r.preventDefault(),window.deferredPwaPrompt=r,window.dispatchEvent(new Event("pwa-prompt-ready"))})}),(n,r)=>{const s=J0("router-view"),i=G_;return en(),xn(lA,null,{default:ft(()=>[F(s,null,{default:ft(({Component:o,route:a})=>[F(xr,{mode:"out-in",name:"md3"},{default:ft(()=>[(en(),xn(Xy(o),{key:a.path}))]),_:2},1024)]),_:1}),F(i),F(aA)]),_:1})}}};let Hl;const gm=e=>({get:async()=>({visitorId:"unknown",error:(e==null?void 0:e.message)||String(e||""),fallback:!0})}),fA=async()=>{try{const e=await ht(()=>import("./fp.esm-HJFDfcHo.js"),[],import.meta.url);return(e==null?void 0:e.default)||e}catch(e){return console.warn("Fingerprint library blocked or failed to load; using fallback agent.",e),null}},gb=()=>(Hl||(Hl=(async()=>{const e=await fA();if(!e)return gm(new Error("fingerprint module unavailable"));try{return await e.load()}catch(t){return console.warn("FingerprintJS.load failed, using fallback agent.",t),gm(t)}})()),Hl),dA=async()=>{const t=await(await gb()).get();return(t==null?void 0:t.visitorId)||"unknown"},DH=async()=>await(await gb()).get(),oe=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,Ce=globalThis,is="10.36.0";function bs(){return Kc(Ce),Ce}function Kc(e){const t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||is,t[is]=t[is]||{}}function wi(e,t,n=Ce){const r=n.__SENTRY__=n.__SENTRY__||{},s=r[is]=r[is]||{};return s[e]||(s[e]=t())}const hA=["debug","info","warn","error","log","assert","trace"],pA="Sentry Logger ",cc={};function lr(e){if(!("console"in Ce))return e();const t=Ce.console,n={},r=Object.keys(cc);r.forEach(s=>{const i=cc[s];n[s]=t[s],t[s]=i});try{return e()}finally{r.forEach(s=>{t[s]=n[s]})}}function mA(){yd().enabled=!0}function gA(){yd().enabled=!1}function yb(){return yd().enabled}function yA(...e){gd("log",...e)}function vA(...e){gd("warn",...e)}function _A(...e){gd("error",...e)}function gd(e,...t){oe&&yb()&&lr(()=>{Ce.console[e](`${pA}[${e}]:`,...t)})}function yd(){return oe?wi("loggerSettings",()=>({enabled:!1})):{enabled:!1}}const X={enable:mA,disable:gA,isEnabled:yb,log:yA,warn:vA,error:_A},vb=50,hs="?",ym=/\(error: (.*)\)/,vm=/captureMessage|captureException/;function _b(...e){const t=e.sort((n,r)=>n[0]-r[0]).map(n=>n[1]);return(n,r=0,s=0)=>{const i=[],o=n.split(` -`);for(let a=r;a1024&&(c=c.slice(0,1024));const l=ym.test(c)?c.replace(ym,"$1"):c;if(!l.match(/\S*Error: /)){for(const u of t){const f=u(l);if(f){i.push(f);break}}if(i.length>=vb+s)break}}return SA(i.slice(s))}}function bA(e){return Array.isArray(e)?_b(...e):e}function SA(e){if(!e.length)return[];const t=Array.from(e);return/sentryWrapped/.test(fa(t).function||"")&&t.pop(),t.reverse(),vm.test(fa(t).function||"")&&(t.pop(),vm.test(fa(t).function||"")&&t.pop()),t.slice(0,vb).map(n=>({...n,filename:n.filename||fa(t).filename,function:n.function||hs}))}function fa(e){return e[e.length-1]||{}}const Vl="";function er(e){try{return!e||typeof e!="function"?Vl:e.name||Vl}catch{return Vl}}function _m(e){const t=e.exception;if(t){const n=[];try{return t.values.forEach(r=>{r.stacktrace.frames&&n.push(...r.stacktrace.frames)}),n}catch{return}}}function bb(e){return"__v_isVNode"in e&&e.__v_isVNode?"[VueVNode]":"[VueViewModel]"}const Aa={},bm={};function $r(e,t){Aa[e]=Aa[e]||[],Aa[e].push(t)}function Br(e,t){if(!bm[e]){bm[e]=!0;try{t()}catch(n){oe&&X.error(`Error while instrumenting ${e}`,n)}}}function rn(e,t){const n=e&&Aa[e];if(n)for(const r of n)try{r(t)}catch(s){oe&&X.error(`Error while triggering instrumentation handler. -Type: ${e} -Name: ${er(r)} -Error:`,s)}}let Ul=null;function Sb(e){const t="error";$r(t,e),Br(t,EA)}function EA(){Ul=Ce.onerror,Ce.onerror=function(e,t,n,r,s){return rn("error",{column:r,error:s,line:n,msg:e,url:t}),Ul?Ul.apply(this,arguments):!1},Ce.onerror.__SENTRY_INSTRUMENTED__=!0}let Wl=null;function Eb(e){const t="unhandledrejection";$r(t,e),Br(t,wA)}function wA(){Wl=Ce.onunhandledrejection,Ce.onunhandledrejection=function(e){return rn("unhandledrejection",e),Wl?Wl.apply(this,arguments):!0},Ce.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}const wb=Object.prototype.toString;function Yc(e){switch(wb.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return tr(e,Error)}}function Ti(e,t){return wb.call(e)===`[object ${t}]`}function Tb(e){return Ti(e,"ErrorEvent")}function Sm(e){return Ti(e,"DOMError")}function TA(e){return Ti(e,"DOMException")}function qn(e){return Ti(e,"String")}function vd(e){return typeof e=="object"&&e!==null&&"__sentry_template_string__"in e&&"__sentry_template_values__"in e}function ii(e){return e===null||vd(e)||typeof e!="object"&&typeof e!="function"}function To(e){return Ti(e,"Object")}function Xc(e){return typeof Event<"u"&&tr(e,Event)}function CA(e){return typeof Element<"u"&&tr(e,Element)}function IA(e){return Ti(e,"RegExp")}function Ci(e){return!!(e!=null&&e.then&&typeof e.then=="function")}function kA(e){return To(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function tr(e,t){try{return e instanceof t}catch{return!1}}function Cb(e){return!!(typeof e=="object"&&e!==null&&(e.__isVue||e._isVue||e.__v_isVNode))}function _d(e){return typeof Request<"u"&&tr(e,Request)}const bd=Ce,xA=80;function Ht(e,t={}){if(!e)return"";try{let n=e;const r=5,s=[];let i=0,o=0;const a=" > ",c=a.length;let l;const u=Array.isArray(t)?t:t.keyAttrs,f=!Array.isArray(t)&&t.maxStringLength||xA;for(;n&&i++1&&o+s.length*c+l.length>=f));)s.push(l),o+=l.length,n=n.parentNode;return s.reverse().join(a)}catch{return""}}function RA(e,t){const n=e,r=[];if(!(n!=null&&n.tagName))return"";if(bd.HTMLElement&&n instanceof HTMLElement&&n.dataset){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}r.push(n.tagName.toLowerCase());const s=t!=null&&t.length?t.filter(o=>n.getAttribute(o)).map(o=>[o,n.getAttribute(o)]):null;if(s!=null&&s.length)s.forEach(o=>{r.push(`[${o[0]}="${o[1]}"]`)});else{n.id&&r.push(`#${n.id}`);const o=n.className;if(o&&qn(o)){const a=o.split(/\s+/);for(const c of a)r.push(`.${c}`)}}const i=["aria-label","type","name","title","alt"];for(const o of i){const a=n.getAttribute(o);a&&r.push(`[${o}="${a}"]`)}return r.join("")}function Ii(){try{return bd.document.location.href}catch{return""}}function Ib(e){if(!bd.HTMLElement)return null;let t=e;const n=5;for(let r=0;r"}}function wm(e){if(typeof e=="object"&&e!==null){const t={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}else return{}}function AA(e){const t=Object.keys(xb(e));return t.sort(),t[0]?t.join(", "):"[object has no keys]"}let ks;function Uo(e){if(ks!==void 0)return ks?ks(e):e();const t=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),n=Ce;return t in n&&typeof n[t]=="function"?(ks=n[t],ks(e)):(ks=null,e())}function wr(){return Uo(()=>Math.random())}function Wo(){return Uo(()=>Date.now())}function Uu(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function Tm(e,t){if(!Array.isArray(e))return"";const n=[];for(let r=0;rOa(e,r,n))}function OA(){const e=Ce;return e.crypto||e.msCrypto}let jl;function MA(){return wr()*16}function Kt(e=OA()){try{if(e!=null&&e.randomUUID)return Uo(()=>e.randomUUID()).replace(/-/g,"")}catch{}return jl||(jl="10000000100040008000"+1e11),jl.replace(/[018]/g,t=>(t^(MA()&15)>>t/4).toString(16))}function Rb(e){var t,n;return(n=(t=e.exception)==null?void 0:t.values)==null?void 0:n[0]}function Xr(e){const{message:t,event_id:n}=e;if(t)return t;const r=Rb(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"":n||""}function Wu(e,t,n){const r=e.exception=e.exception||{},s=r.values=r.values||[],i=s[0]=s[0]||{};i.value||(i.value=t||""),i.type||(i.type="Error")}function oi(e,t){const n=Rb(e);if(!n)return;const r={type:"generic",handled:!0},s=n.mechanism;if(n.mechanism={...r,...s,...t},t&&"data"in t){const i={...s==null?void 0:s.data,...t.data};n.mechanism.data=i}}function Cm(e){if(PA(e))return!0;try{Vt(e,"__sentry_captured__",!0)}catch{}return!1}function PA(e){try{return e.__sentry_captured__}catch{}}const Ab=1e3;function Ss(){return Wo()/Ab}function NA(){const{performance:e}=Ce;if(!(e!=null&&e.now)||!e.timeOrigin)return Ss;const t=e.timeOrigin;return()=>(t+Uo(()=>e.now()))/Ab}let Im;function st(){return(Im??(Im=NA()))()}let zl=null;function LA(){var o;const{performance:e}=Ce;if(!(e!=null&&e.now))return;const t=3e5,n=Uo(()=>e.now()),r=Wo(),s=e.timeOrigin;if(typeof s=="number"&&Math.abs(s+n-r)$A(n)};return e&&ai(n,e),n}function ai(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||st(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:Kt()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started=="number"&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration=="number")e.duration=t.duration;else{const n=e.timestamp-e.started;e.duration=n>=0?n:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors=="number"&&(e.errors=t.errors),t.status&&(e.status=t.status)}function FA(e,t){let n={};e.status==="ok"&&(n={status:"exited"}),ai(e,n)}function $A(e){return{sid:`${e.sid}`,init:e.init,started:new Date(e.started*1e3).toISOString(),timestamp:new Date(e.timestamp*1e3).toISOString(),status:e.status,errors:e.errors,did:typeof e.did=="number"||typeof e.did=="string"?`${e.did}`:void 0,duration:e.duration,abnormal_mechanism:e.abnormal_mechanism,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}}}function jo(e,t,n=2){if(!t||typeof t!="object"||n<=0)return t;if(e&&Object.keys(t).length===0)return e;const r={...e};for(const s in t)Object.prototype.hasOwnProperty.call(t,s)&&(r[s]=jo(r[s],t[s],n-1));return r}function nr(){return Kt()}function Kn(){return Kt().substring(16)}const ju="_sentrySpan";function ci(e,t){t?Vt(e,ju,t):delete e[ju]}function lc(e){return e[ju]}const BA=100;class Pn{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._attributes={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:nr(),sampleRand:wr()}}clone(){const t=new Pn;return t._breadcrumbs=[...this._breadcrumbs],t._tags={...this._tags},t._attributes={...this._attributes},t._extra={...this._extra},t._contexts={...this._contexts},this._contexts.flags&&(t._contexts.flags={values:[...this._contexts.flags.values]}),t._user=this._user,t._level=this._level,t._session=this._session,t._transactionName=this._transactionName,t._fingerprint=this._fingerprint,t._eventProcessors=[...this._eventProcessors],t._attachments=[...this._attachments],t._sdkProcessingMetadata={...this._sdkProcessingMetadata},t._propagationContext={...this._propagationContext},t._client=this._client,t._lastEventId=this._lastEventId,ci(t,lc(this)),t}setClient(t){this._client=t}setLastEventId(t){this._lastEventId=t}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session&&ai(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}setTags(t){return this._tags={...this._tags,...t},this._notifyScopeListeners(),this}setTag(t,n){return this.setTags({[t]:n})}setAttributes(t){return this._attributes={...this._attributes,...t},this._notifyScopeListeners(),this}setAttribute(t,n){return this.setAttributes({[t]:n})}removeAttribute(t){return t in this._attributes&&(delete this._attributes[t],this._notifyScopeListeners()),this}setExtras(t){return this._extra={...this._extra,...t},this._notifyScopeListeners(),this}setExtra(t,n){return this._extra={...this._extra,[t]:n},this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,n){return n===null?delete this._contexts[t]:this._contexts[t]=n,this._notifyScopeListeners(),this}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;const n=typeof t=="function"?t(this):t,r=n instanceof Pn?n.getScopeData():To(n)?t:void 0,{tags:s,attributes:i,extra:o,user:a,contexts:c,level:l,fingerprint:u=[],propagationContext:f}=r||{};return this._tags={...this._tags,...s},this._attributes={...this._attributes,...i},this._extra={...this._extra,...o},this._contexts={...this._contexts,...c},a&&Object.keys(a).length&&(this._user=a),l&&(this._level=l),u.length&&(this._fingerprint=u),f&&(this._propagationContext=f),this}clear(){return this._breadcrumbs=[],this._tags={},this._attributes={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,ci(this,void 0),this._attachments=[],this.setPropagationContext({traceId:nr(),sampleRand:wr()}),this._notifyScopeListeners(),this}addBreadcrumb(t,n){var i;const r=typeof n=="number"?n:BA;if(r<=0)return this;const s={timestamp:Ss(),...t,message:t.message?Uu(t.message,2048):t.message};return this._breadcrumbs.push(s),this._breadcrumbs.length>r&&(this._breadcrumbs=this._breadcrumbs.slice(-r),(i=this._client)==null||i.recordDroppedEvent("buffer_overflow","log_item")),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,attributes:this._attributes,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:lc(this)}}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata=jo(this._sdkProcessingMetadata,t,2),this}setPropagationContext(t){return this._propagationContext=t,this}getPropagationContext(){return this._propagationContext}captureException(t,n){const r=(n==null?void 0:n.event_id)||Kt();if(!this._client)return oe&&X.warn("No client configured on scope - will not capture exception!"),r;const s=new Error("Sentry syntheticException");return this._client.captureException(t,{originalException:t,syntheticException:s,...n,event_id:r},this),r}captureMessage(t,n,r){const s=(r==null?void 0:r.event_id)||Kt();if(!this._client)return oe&&X.warn("No client configured on scope - will not capture message!"),s;const i=(r==null?void 0:r.syntheticException)??new Error(t);return this._client.captureMessage(t,n,{originalException:t,syntheticException:i,...r,event_id:s},this),s}captureEvent(t,n){const r=(n==null?void 0:n.event_id)||Kt();return this._client?(this._client.captureEvent(t,{...n,event_id:r},this),r):(oe&&X.warn("No client configured on scope - will not capture event!"),r)}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}}function HA(){return wi("defaultCurrentScope",()=>new Pn)}function VA(){return wi("defaultIsolationScope",()=>new Pn)}class UA{constructor(t,n){let r;t?r=t:r=new Pn;let s;n?s=n:s=new Pn,this._stack=[{scope:r}],this._isolationScope=s}withScope(t){const n=this._pushScope();let r;try{r=t(n)}catch(s){throw this._popScope(),s}return Ci(r)?r.then(s=>(this._popScope(),s),s=>{throw this._popScope(),s}):(this._popScope(),r)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){const t=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:t}),t}_popScope(){return this._stack.length<=1?!1:!!this._stack.pop()}}function li(){const e=bs(),t=Kc(e);return t.stack=t.stack||new UA(HA(),VA())}function WA(e){return li().withScope(e)}function jA(e,t){const n=li();return n.withScope(()=>(n.getStackTop().scope=e,t(e)))}function km(e){return li().withScope(()=>e(li().getIsolationScope()))}function zA(){return{withIsolationScope:km,withScope:WA,withSetScope:jA,withSetIsolationScope:(e,t)=>km(t),getCurrentScope:()=>li().getScope(),getIsolationScope:()=>li().getIsolationScope()}}function ki(e){const t=Kc(e);return t.acs?t.acs:zA()}function De(){const e=bs();return ki(e).getCurrentScope()}function Nn(){const e=bs();return ki(e).getIsolationScope()}function qA(){return wi("globalScope",()=>new Pn)}function Jc(...e){const t=bs(),n=ki(t);if(e.length===2){const[r,s]=e;return r?n.withSetScope(r,s):n.withScope(s)}return n.withScope(e[0])}function Ie(){return De().getClient()}function GA(e){const t=e.getPropagationContext(),{traceId:n,parentSpanId:r,propagationSpanId:s}=t,i={trace_id:n,span_id:s||Kn()};return r&&(i.parent_span_id=r),i}const Bt="sentry.source",Ed="sentry.sample_rate",Ob="sentry.previous_trace_sample_rate",rr="sentry.op",Qe="sentry.origin",Co="sentry.idle_span_finish_reason",zo="sentry.measurement_unit",qo="sentry.measurement_value",xm="sentry.custom_span_name",wd="sentry.profile_id",xi="sentry.exclusive_time",KA="sentry.link.type",YA=0,Td=1,ct=2;function XA(e){if(e<400&&e>=100)return{code:Td};if(e>=400&&e<500)switch(e){case 401:return{code:ct,message:"unauthenticated"};case 403:return{code:ct,message:"permission_denied"};case 404:return{code:ct,message:"not_found"};case 409:return{code:ct,message:"already_exists"};case 413:return{code:ct,message:"failed_precondition"};case 429:return{code:ct,message:"resource_exhausted"};case 499:return{code:ct,message:"cancelled"};default:return{code:ct,message:"invalid_argument"}}if(e>=500&&e<600)switch(e){case 501:return{code:ct,message:"unimplemented"};case 503:return{code:ct,message:"unavailable"};case 504:return{code:ct,message:"deadline_exceeded"};default:return{code:ct,message:"internal_error"}}return{code:ct,message:"internal_error"}}function Mb(e,t){e.setAttribute("http.response.status_code",t);const n=XA(t);n.message!=="unknown_error"&&e.setStatus(n)}const Pb="_sentryScope",Nb="_sentryIsolationScope";function JA(e){try{const t=Ce.WeakRef;if(typeof t=="function")return new t(e)}catch{}return e}function ZA(e){if(e){if(typeof e=="object"&&"deref"in e&&typeof e.deref=="function")try{return e.deref()}catch{return}return e}}function QA(e,t,n){e&&(Vt(e,Nb,JA(n)),Vt(e,Pb,t))}function uc(e){const t=e;return{scope:t[Pb],isolationScope:ZA(t[Nb])}}const Cd="sentry-",e1=/^sentry-/,t1=8192;function Lb(e){const t=r1(e);if(!t)return;const n=Object.entries(t).reduce((r,[s,i])=>{if(s.match(e1)){const o=s.slice(Cd.length);r[o]=i}return r},{});if(Object.keys(n).length>0)return n}function n1(e){if(!e)return;const t=Object.entries(e).reduce((n,[r,s])=>(s&&(n[`${Cd}${r}`]=s),n),{});return s1(t)}function r1(e){if(!(!e||!qn(e)&&!Array.isArray(e)))return Array.isArray(e)?e.reduce((t,n)=>{const r=Rm(n);return Object.entries(r).forEach(([s,i])=>{t[s]=i}),t},{}):Rm(e)}function Rm(e){return e.split(",").map(t=>{const n=t.indexOf("=");if(n===-1)return[];const r=t.slice(0,n),s=t.slice(n+1);return[r,s].map(i=>{try{return decodeURIComponent(i.trim())}catch{return}})}).reduce((t,[n,r])=>(n&&r&&(t[n]=r),t),{})}function s1(e){if(Object.keys(e).length!==0)return Object.entries(e).reduce((t,[n,r],s)=>{const i=`${encodeURIComponent(n)}=${encodeURIComponent(r)}`,o=s===0?i:`${t},${i}`;return o.length>t1?(oe&&X.warn(`Not adding key: ${n} with val: ${r} to baggage header due to exceeding baggage size limits.`),t):o},"")}const i1=/^o(\d+)\./,o1=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/;function a1(e){return e==="http"||e==="https"}function Ri(e,t=!1){const{host:n,path:r,pass:s,port:i,projectId:o,protocol:a,publicKey:c}=e;return`${a}://${c}${t&&s?`:${s}`:""}@${n}${i?`:${i}`:""}/${r&&`${r}/`}${o}`}function c1(e){const t=o1.exec(e);if(!t){lr(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}const[n,r,s="",i="",o="",a=""]=t.slice(1);let c="",l=a;const u=l.split("/");if(u.length>1&&(c=u.slice(0,-1).join("/"),l=u.pop()),l){const f=l.match(/^\d+/);f&&(l=f[0])}return Db({host:i,pass:s,path:c,projectId:l,port:o,protocol:n,publicKey:r})}function Db(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function l1(e){if(!oe)return!0;const{port:t,projectId:n,protocol:r}=e;return["protocol","publicKey","host","projectId"].find(o=>e[o]?!1:(X.error(`Invalid Sentry Dsn: ${o} missing`),!0))?!1:n.match(/^\d+$/)?a1(r)?t&&isNaN(parseInt(t,10))?(X.error(`Invalid Sentry Dsn: Invalid port ${t}`),!1):!0:(X.error(`Invalid Sentry Dsn: Invalid protocol ${r}`),!1):(X.error(`Invalid Sentry Dsn: Invalid projectId ${n}`),!1)}function u1(e){const t=e.match(i1);return t==null?void 0:t[1]}function f1(e){const t=e.getOptions(),{host:n}=e.getDsn()||{};let r;return t.orgId?r=String(t.orgId):n&&(r=u1(n)),r}function d1(e){const t=typeof e=="string"?c1(e):Db(e);if(!(!t||!l1(t)))return t}function ps(e){if(typeof e=="boolean")return Number(e);const t=typeof e=="string"?parseFloat(e):e;if(!(typeof t!="number"||isNaN(t)||t<0||t>1))return t}const Fb=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function h1(e){if(!e)return;const t=e.match(Fb);if(!t)return;let n;return t[3]==="1"?n=!0:t[3]==="0"&&(n=!1),{traceId:t[1],parentSampled:n,parentSpanId:t[2]}}function p1(e,t){const n=h1(e),r=Lb(t);if(!(n!=null&&n.traceId))return{traceId:nr(),sampleRand:wr()};const s=m1(n,r);r&&(r.sample_rand=s.toString());const{traceId:i,parentSpanId:o,parentSampled:a}=n;return{traceId:i,parentSpanId:o,sampled:a,dsc:r||{},sampleRand:s}}function $b(e=nr(),t=Kn(),n){let r="";return n!==void 0&&(r=n?"-1":"-0"),`${e}-${t}${r}`}function Bb(e=nr(),t=Kn(),n){return`00-${e}-${t}-${n?"01":"00"}`}function m1(e,t){const n=ps(t==null?void 0:t.sample_rand);if(n!==void 0)return n;const r=ps(t==null?void 0:t.sample_rate);return r&&(e==null?void 0:e.parentSampled)!==void 0?e.parentSampled?wr()*r:r+wr()*(1-r):wr()}const Hb=0,Id=1;let Am=!1;function g1(e){const{spanId:t,traceId:n}=e.spanContext(),{data:r,op:s,parent_span_id:i,status:o,origin:a,links:c}=ke(e);return{parent_span_id:i,span_id:t,trace_id:n,data:r,op:s,status:o,origin:a,links:c}}function y1(e){const{spanId:t,traceId:n,isRemote:r}=e.spanContext(),s=r?t:ke(e).parent_span_id,i=uc(e).scope,o=r?(i==null?void 0:i.getPropagationContext().propagationSpanId)||Kn():t;return{parent_span_id:s,span_id:o,trace_id:n}}function v1(e){const{traceId:t,spanId:n}=e.spanContext(),r=Hr(e);return $b(t,n,r)}function _1(e){const{traceId:t,spanId:n}=e.spanContext(),r=Hr(e);return Bb(t,n,r)}function Vb(e){if(e&&e.length>0)return e.map(({context:{spanId:t,traceId:n,traceFlags:r,...s},attributes:i})=>({span_id:t,trace_id:n,sampled:r===Id,attributes:i,...s}))}function os(e){return typeof e=="number"?Om(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?Om(e.getTime()):st()}function Om(e){return e>9999999999?e/1e3:e}function ke(e){var r;if(S1(e))return e.getSpanJSON();const{spanId:t,traceId:n}=e.spanContext();if(b1(e)){const{attributes:s,startTime:i,name:o,endTime:a,status:c,links:l}=e,u="parentSpanId"in e?e.parentSpanId:"parentSpanContext"in e?(r=e.parentSpanContext)==null?void 0:r.spanId:void 0;return{span_id:t,trace_id:n,data:s,description:o,parent_span_id:u,start_timestamp:os(i),timestamp:os(a)||void 0,status:Ub(c),op:s[rr],origin:s[Qe],links:Vb(l)}}return{span_id:t,trace_id:n,start_timestamp:0,data:{}}}function b1(e){const t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function S1(e){return typeof e.getSpanJSON=="function"}function Hr(e){const{traceFlags:t}=e.spanContext();return t===Id}function Ub(e){if(!(!e||e.code===YA))return e.code===Td?"ok":e.message||"internal_error"}const as="_sentryChildSpans",zu="_sentryRootSpan";function Wb(e,t){const n=e[zu]||e;Vt(t,zu,n),e[as]?e[as].add(t):Vt(e,as,new Set([t]))}function E1(e,t){e[as]&&e[as].delete(t)}function Ma(e){const t=new Set;function n(r){if(!t.has(r)&&Hr(r)){t.add(r);const s=r[as]?Array.from(r[as]):[];for(const i of s)n(i)}}return n(e),Array.from(t)}function vt(e){return e[zu]||e}function bt(){const e=bs(),t=ki(e);return t.getActiveSpan?t.getActiveSpan():lc(De())}function qu(){Am||(lr(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly or use `ignoreSpans`.")}),Am=!0)}let Mm=!1;function w1(){if(Mm)return;function e(){const t=bt(),n=t&&vt(t);if(n){const r="internal_error";oe&&X.log(`[Tracing] Root span: ${r} -> Global error occurred`),n.setStatus({code:ct,message:r})}}e.tag="sentry_tracingErrorCallback",Mm=!0,Sb(e),Eb(e)}function sn(e){var n;if(typeof __SENTRY_TRACING__=="boolean"&&!__SENTRY_TRACING__)return!1;const t=e||((n=Ie())==null?void 0:n.getOptions());return!!t&&(t.tracesSampleRate!=null||!!t.tracesSampler)}function Pm(e){X.log(`Ignoring span ${e.op} - ${e.description} because it matches \`ignoreSpans\`.`)}function fc(e,t){if(!(t!=null&&t.length)||!e.description)return!1;for(const n of t){if(C1(n)){if(Oa(e.description,n))return oe&&Pm(e),!0;continue}if(!n.name&&!n.op)continue;const r=n.name?Oa(e.description,n.name):!0,s=n.op?e.op&&Oa(e.op,n.op):!0;if(r&&s)return oe&&Pm(e),!0}return!1}function T1(e,t){const n=t.parent_span_id,r=t.span_id;if(n)for(const s of e)s.parent_span_id===r&&(s.parent_span_id=n)}function C1(e){return typeof e=="string"||e instanceof RegExp}const kd="production",jb="_frozenDsc";function Pa(e,t){Vt(e,jb,t)}function zb(e,t){const n=t.getOptions(),{publicKey:r}=t.getDsn()||{},s={environment:n.environment||kd,release:n.release,public_key:r,trace_id:e,org_id:f1(t)};return t.emit("createDsc",s),s}function qb(e,t){const n=t.getPropagationContext();return n.dsc||zb(n.traceId,e)}function sr(e){var p;const t=Ie();if(!t)return{};const n=vt(e),r=ke(n),s=r.data,i=n.spanContext().traceState,o=(i==null?void 0:i.get("sentry.sample_rate"))??s[Ed]??s[Ob];function a(m){return(typeof o=="number"||typeof o=="string")&&(m.sample_rate=`${o}`),m}const c=n[jb];if(c)return a(c);const l=i==null?void 0:i.get("sentry.dsc"),u=l&&Lb(l);if(u)return a(u);const f=zb(e.spanContext().traceId,t),d=s[Bt],h=r.description;return d!=="url"&&h&&(f.transaction=h),sn()&&(f.sampled=String(Hr(n)),f.sample_rand=(i==null?void 0:i.get("sentry.sample_rand"))??((p=uc(n).scope)==null?void 0:p.getPropagationContext().sampleRand.toString())),a(f),t.emit("createDsc",f,n),f}class Rr{constructor(t={}){this._traceId=t.traceId||nr(),this._spanId=t.spanId||Kn()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:Hb}}end(t){}setAttribute(t,n){return this}setAttributes(t){return this}setStatus(t){return this}updateName(t){return this}isRecording(){return!1}addEvent(t,n,r){return this}addLink(t){return this}addLinks(t){return this}recordException(t,n){}}function un(e,t=100,n=1/0){try{return Gu("",e,t,n)}catch(r){return{ERROR:`**non-serializable** (${r})`}}}function Gb(e,t=3,n=100*1024){const r=un(e,t);return R1(r)>n?Gb(e,t-1,n):r}function Gu(e,t,n=1/0,r=1/0,s=A1()){const[i,o]=s;if(t==null||["boolean","string"].includes(typeof t)||typeof t=="number"&&Number.isFinite(t))return t;const a=I1(e,t);if(!a.startsWith("[object "))return a;if(t.__sentry_skip_normalization__)return t;const c=typeof t.__sentry_override_normalization_depth__=="number"?t.__sentry_override_normalization_depth__:n;if(c===0)return a.replace("object ","");if(i(t))return"[Circular ~]";const l=t;if(l&&typeof l.toJSON=="function")try{const h=l.toJSON();return Gu("",h,c-1,r,s)}catch{}const u=Array.isArray(t)?[]:{};let f=0;const d=xb(t);for(const h in d){if(!Object.prototype.hasOwnProperty.call(d,h))continue;if(f>=r){u[h]="[MaxProperties ~]";break}const p=d[h];u[h]=Gu(h,p,c-1,r,s),f++}return o(t),u}function I1(e,t){try{if(e==="domain"&&t&&typeof t=="object"&&t._events)return"[Domain]";if(e==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&t===global)return"[Global]";if(typeof window<"u"&&t===window)return"[Window]";if(typeof document<"u"&&t===document)return"[Document]";if(Cb(t))return bb(t);if(kA(t))return"[SyntheticEvent]";if(typeof t=="number"&&!Number.isFinite(t))return`[${t}]`;if(typeof t=="function")return`[Function: ${er(t)}]`;if(typeof t=="symbol")return`[${String(t)}]`;if(typeof t=="bigint")return`[BigInt: ${String(t)}]`;const n=k1(t);return/^HTML(\w*)Element$/.test(n)?`[HTMLElement: ${n}]`:`[object ${n}]`}catch(n){return`**non-serializable** (${n})`}}function k1(e){const t=Object.getPrototypeOf(e);return t!=null&&t.constructor?t.constructor.name:"null prototype"}function x1(e){return~-encodeURI(e).split(/%..|./).length}function R1(e){return x1(JSON.stringify(e))}function A1(){const e=new WeakSet;function t(r){return e.has(r)?!0:(e.add(r),!1)}function n(r){e.delete(r)}return[t,n]}function Vr(e,t=[]){return[e,t]}function O1(e,t){const[n,r]=e;return[n,[...r,t]]}function Ku(e,t){const n=e[1];for(const r of n){const s=r[0].type;if(t(r,s))return!0}return!1}function M1(e,t){return Ku(e,(n,r)=>t.includes(r))}function Yu(e){const t=Kc(Ce);return t.encodePolyfill?t.encodePolyfill(e):new TextEncoder().encode(e)}function P1(e){const[t,n]=e;let r=JSON.stringify(t);function s(i){typeof r=="string"?r=typeof i=="string"?r+i:[Yu(r),i]:r.push(typeof i=="string"?Yu(i):i)}for(const i of n){const[o,a]=i;if(s(` -${JSON.stringify(o)} -`),typeof a=="string"||a instanceof Uint8Array)s(a);else{let c;try{c=JSON.stringify(a)}catch{c=JSON.stringify(un(a))}s(c)}}return typeof r=="string"?r:N1(r)}function N1(e){const t=e.reduce((s,i)=>s+i.length,0),n=new Uint8Array(t);let r=0;for(const s of e)n.set(s,r),r+=s.length;return n}function L1(e){return[{type:"span"},e]}function D1(e){const t=typeof e.data=="string"?Yu(e.data):e.data;return[{type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType},t]}const F1={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item",metric:"metric",trace_metric:"metric"};function Nm(e){return F1[e]}function xd(e){if(!(e!=null&&e.sdk))return;const{name:t,version:n}=e.sdk;return{name:t,version:n}}function Kb(e,t,n,r){var i;const s=(i=e.sdkProcessingMetadata)==null?void 0:i.dynamicSamplingContext;return{event_id:e.event_id,sent_at:new Date().toISOString(),...t&&{sdk:t},...!!n&&r&&{dsn:Ri(r)},...s&&{trace:s}}}function $1(e,t){var r,s,i,o;if(!t)return e;const n=e.sdk||{};return e.sdk={...n,name:n.name||t.name,version:n.version||t.version,integrations:[...((r=e.sdk)==null?void 0:r.integrations)||[],...t.integrations||[]],packages:[...((s=e.sdk)==null?void 0:s.packages)||[],...t.packages||[]],settings:(i=e.sdk)!=null&&i.settings||t.settings?{...(o=e.sdk)==null?void 0:o.settings,...t.settings}:void 0},e}function B1(e,t,n,r){const s=xd(n),i={sent_at:new Date().toISOString(),...s&&{sdk:s},...!!r&&t&&{dsn:Ri(t)}},o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return Vr(i,[o])}function H1(e,t,n,r){const s=xd(n),i=e.type&&e.type!=="replay_event"?e.type:"event";$1(e,n==null?void 0:n.sdk);const o=Kb(e,s,r,t);return delete e.sdkProcessingMetadata,Vr(o,[[{type:i},e]])}function V1(e,t){function n(h){return!!h.trace_id&&!!h.public_key}const r=sr(e[0]),s=t==null?void 0:t.getDsn(),i=t==null?void 0:t.getOptions().tunnel,o={sent_at:new Date().toISOString(),...n(r)&&{trace:r},...!!i&&s&&{dsn:Ri(s)}},{beforeSendSpan:a,ignoreSpans:c}=(t==null?void 0:t.getOptions())||{},l=c!=null&&c.length?e.filter(h=>!fc(ke(h),c)):e,u=e.length-l.length;u&&(t==null||t.recordDroppedEvent("before_send","span",u));const f=a?h=>{const p=ke(h),m=a(p);return m||(qu(),p)}:ke,d=[];for(const h of l){const p=f(h);p&&d.push(L1(p))}return Vr(o,d)}function U1(e){if(!oe)return;const{description:t="< unknown name >",op:n="< unknown op >",parent_span_id:r}=ke(e),{spanId:s}=e.spanContext(),i=Hr(e),o=vt(e),a=o===e,c=`[Tracing] Starting ${i?"sampled":"unsampled"} ${a?"root ":""}span`,l=[`op: ${n}`,`name: ${t}`,`ID: ${s}`];if(r&&l.push(`parent ID: ${r}`),!a){const{op:u,description:f}=ke(o);l.push(`root ID: ${o.spanContext().spanId}`),u&&l.push(`root op: ${u}`),f&&l.push(`root description: ${f}`)}X.log(`${c} - ${l.join(` - `)}`)}function W1(e){if(!oe)return;const{description:t="< unknown name >",op:n="< unknown op >"}=ke(e),{spanId:r}=e.spanContext(),i=vt(e)===e,o=`[Tracing] Finishing "${n}" ${i?"root ":""}span "${t}" with ID ${r}`;X.log(o)}function j1(e,t,n,r=bt()){const s=r&&vt(r);s&&(oe&&X.log(`[Measurement] Setting measurement on root span: ${e} = ${t} ${n}`),s.addEvent(e,{[qo]:t,[zo]:n}))}function Lm(e){if(!e||e.length===0)return;const t={};return e.forEach(n=>{const r=n.attributes||{},s=r[zo],i=r[qo];typeof s=="string"&&typeof i=="number"&&(t[n.name]={value:i,unit:s})}),t}const Dm=1e3;class Zc{constructor(t={}){this._traceId=t.traceId||nr(),this._spanId=t.spanId||Kn(),this._startTime=t.startTimestamp||st(),this._links=t.links,this._attributes={},this.setAttributes({[Qe]:"manual",[rr]:t.op,...t.attributes}),this._name=t.name,t.parentSpanId&&(this._parentSpanId=t.parentSpanId),"sampled"in t&&(this._sampled=t.sampled),t.endTimestamp&&(this._endTime=t.endTimestamp),this._events=[],this._isStandaloneSpan=t.isStandalone,this._endTime&&this._onSpanEnded()}addLink(t){return this._links?this._links.push(t):this._links=[t],this}addLinks(t){return this._links?this._links.push(...t):this._links=t,this}recordException(t,n){}spanContext(){const{_spanId:t,_traceId:n,_sampled:r}=this;return{spanId:t,traceId:n,traceFlags:r?Id:Hb}}setAttribute(t,n){return n===void 0?delete this._attributes[t]:this._attributes[t]=n,this}setAttributes(t){return Object.keys(t).forEach(n=>this.setAttribute(n,t[n])),this}updateStartTime(t){this._startTime=os(t)}setStatus(t){return this._status=t,this}updateName(t){return this._name=t,this.setAttribute(Bt,"custom"),this}end(t){this._endTime||(this._endTime=os(t),W1(this),this._onSpanEnded())}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[rr],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:Ub(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[Qe],profile_id:this._attributes[wd],exclusive_time:this._attributes[xi],measurements:Lm(this._events),is_segment:this._isStandaloneSpan&&vt(this)===this||void 0,segment_id:this._isStandaloneSpan?vt(this).spanContext().spanId:void 0,links:Vb(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(t,n,r){oe&&X.log("[Tracing] Adding an event to span:",t);const s=Fm(n)?n:r||st(),i=Fm(n)?{}:n||{},o={name:t,time:os(s),attributes:i};return this._events.push(o),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){const t=Ie();if(t&&t.emit("spanEnd",this),!(this._isStandaloneSpan||this===vt(this)))return;if(this._isStandaloneSpan){this._sampled?q1(V1([this],t)):(oe&&X.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),t&&t.recordDroppedEvent("sample_rate","span"));return}const r=this._convertSpanToTransaction();r&&(uc(this).scope||De()).captureEvent(r)}_convertSpanToTransaction(){var u;if(!$m(ke(this)))return;this._name||(oe&&X.warn("Transaction has no name, falling back to ``."),this._name="");const{scope:t,isolationScope:n}=uc(this),r=(u=t==null?void 0:t.getScopeData().sdkProcessingMetadata)==null?void 0:u.normalizedRequest;if(this._sampled!==!0)return;const i=Ma(this).filter(f=>f!==this&&!z1(f)).map(f=>ke(f)).filter($m),o=this._attributes[Bt];delete this._attributes[xm],i.forEach(f=>{delete f.data[xm]});const a={contexts:{trace:g1(this)},spans:i.length>Dm?i.sort((f,d)=>f.start_timestamp-d.start_timestamp).slice(0,Dm):i,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:t,capturedSpanIsolationScope:n,dynamicSamplingContext:sr(this)},request:r,...o&&{transaction_info:{source:o}}},c=Lm(this._events);return c&&Object.keys(c).length&&(oe&&X.log("[Measurements] Adding measurements to transaction event",JSON.stringify(c,void 0,2)),a.measurements=c),a}}function Fm(e){return e&&typeof e=="number"||e instanceof Date||Array.isArray(e)}function $m(e){return!!e.start_timestamp&&!!e.timestamp&&!!e.span_id&&!!e.trace_id}function z1(e){return e instanceof Zc&&e.isStandaloneSpan()}function q1(e){const t=Ie();if(!t)return;const n=e[1];if(!n||n.length===0){t.recordDroppedEvent("before_send","span");return}t.sendEnvelope(e)}function G1(e,t,n=()=>{},r=()=>{}){let s;try{s=e()}catch(i){throw t(i),n(),i}return K1(s,t,n,r)}function K1(e,t,n,r){return Ci(e)?e.then(s=>(n(),r(s),s),s=>{throw t(s),n(),s}):(n(),r(e),e)}function Y1(e,t,n){if(!sn(e))return[!1];let r,s;typeof e.tracesSampler=="function"?(s=e.tracesSampler({...t,inheritOrSampleWith:a=>typeof t.parentSampleRate=="number"?t.parentSampleRate:typeof t.parentSampled=="boolean"?Number(t.parentSampled):a}),r=!0):t.parentSampled!==void 0?s=t.parentSampled:typeof e.tracesSampleRate<"u"&&(s=e.tracesSampleRate,r=!0);const i=ps(s);if(i===void 0)return oe&&X.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(s)} of type ${JSON.stringify(typeof s)}.`),[!1];if(!i)return oe&&X.log(`[Tracing] Discarding transaction because ${typeof e.tracesSampler=="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,i,r];const o=nZ1(i)(()=>{const l=De(),u=Zb(l,i),d=e.onlyIfParent&&!u?new Rr:Xb({parentSpan:u,spanArguments:r,forceTransaction:s,scope:l});return ci(l,d),G1(()=>t(d),()=>{const{status:h}=ke(d);d.isRecording()&&(!h||h==="ok")&&d.setStatus({code:ct,message:"internal_error"})},()=>{d.end()})}))}function Ar(e){const t=Ad();if(t.startInactiveSpan)return t.startInactiveSpan(e);const n=Jb(e),{forceTransaction:r,parentSpan:s}=e;return(e.scope?o=>Jc(e.scope,o):s!==void 0?o=>Rd(s,o):o=>o())(()=>{const o=De(),a=Zb(o,s);return e.onlyIfParent&&!a?new Rr:Xb({parentSpan:a,spanArguments:n,forceTransaction:r,scope:o})})}function Rd(e,t){const n=Ad();return n.withActiveSpan?n.withActiveSpan(e,t):Jc(r=>(ci(r,e||void 0),t(r)))}function Xb({parentSpan:e,spanArguments:t,forceTransaction:n,scope:r}){if(!sn()){const o=new Rr;if(n||!e){const a={sampled:"false",sample_rate:"0",transaction:t.name,...sr(o)};Pa(o,a)}return o}const s=Nn();let i;if(e&&!n)i=J1(e,r,t),Wb(e,i);else if(e){const o=sr(e),{traceId:a,spanId:c}=e.spanContext(),l=Hr(e);i=Bm({traceId:a,parentSpanId:c,...t},r,l),Pa(i,o)}else{const{traceId:o,dsc:a,parentSpanId:c,sampled:l}={...s.getPropagationContext(),...r.getPropagationContext()};i=Bm({traceId:o,parentSpanId:c,...t},r,l),a&&Pa(i,a)}return U1(i),QA(i,r,s),i}function Jb(e){const n={isStandalone:(e.experimental||{}).standalone,...e};if(e.startTime){const r={...n};return r.startTimestamp=os(e.startTime),delete r.startTime,r}return n}function Ad(){const e=bs();return ki(e)}function Bm(e,t,n){var p;const r=Ie(),s=(r==null?void 0:r.getOptions())||{},{name:i=""}=e,o={spanAttributes:{...e.attributes},spanName:i,parentSampled:n};r==null||r.emit("beforeSampling",o,{decision:!1});const a=o.parentSampled??n,c=o.spanAttributes,l=t.getPropagationContext(),[u,f,d]=t.getScopeData().sdkProcessingMetadata[Yb]?[!1]:Y1(s,{name:i,parentSampled:a,attributes:c,parentSampleRate:ps((p=l.dsc)==null?void 0:p.sample_rate)},l.sampleRand),h=new Zc({...e,attributes:{[Bt]:"custom",[Ed]:f!==void 0&&d?f:void 0,...c},sampled:u});return!u&&r&&(oe&&X.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),r.recordDroppedEvent("sample_rate","transaction")),r&&r.emit("spanStart",h),h}function J1(e,t,n){const{spanId:r,traceId:s}=e.spanContext(),i=t.getScopeData().sdkProcessingMetadata[Yb]?!1:Hr(e),o=i?new Zc({...n,parentSpanId:r,traceId:s,sampled:i}):new Rr({traceId:s});Wb(e,o);const a=Ie();return a&&(a.emit("spanStart",o),n.endTimestamp&&a.emit("spanEnd",o)),o}function Zb(e,t){if(t)return t;if(t===null)return;const n=lc(e);if(!n)return;const r=Ie();return(r?r.getOptions():{}).parentSpanIsAlwaysRootSpan?vt(n):n}function Z1(e){return e!==void 0?t=>Rd(e,t):t=>t()}const Na={idleTimeout:1e3,finalTimeout:3e4,childSpanTimeout:15e3},Q1="heartbeatFailed",eO="idleTimeout",tO="finalTimeout",nO="externalFinish";function Qb(e,t={}){const n=new Map;let r=!1,s,i=nO,o=!t.disableAutoFinish;const a=[],{idleTimeout:c=Na.idleTimeout,finalTimeout:l=Na.finalTimeout,childSpanTimeout:u=Na.childSpanTimeout,beforeSpanEnd:f,trimIdleSpanEndTimestamp:d=!0}=t,h=Ie();if(!h||!sn()){const E=new Rr,w={sample_rate:"0",sampled:"false",...sr(E)};return Pa(E,w),E}const p=De(),m=bt(),y=rO(e);y.end=new Proxy(y.end,{apply(E,w,I){if(f&&f(y),w instanceof Rr)return;const[A,...M]=I,x=A||st(),N=os(x),L=Ma(y).filter(q=>q!==y),G=ke(y);if(!L.length||!d)return R(N),Reflect.apply(E,w,[N,...M]);const J=h.getOptions().ignoreSpans,j=L==null?void 0:L.reduce((q,ce)=>{const le=ke(ce);return!le.timestamp||J&&fc(le,J)?q:q?Math.max(q,le.timestamp):le.timestamp},void 0),D=G.start_timestamp,ae=Math.min(D?D+l/1e3:1/0,Math.max(D||-1/0,Math.min(N,j||1/0)));return R(ae),Reflect.apply(E,w,[ae,...M])}});function g(){s&&(clearTimeout(s),s=void 0)}function v(E){g(),s=setTimeout(()=>{!r&&n.size===0&&o&&(i=eO,y.end(E))},c)}function _(E){s=setTimeout(()=>{!r&&o&&(i=Q1,y.end(E))},u)}function T(E){g(),n.set(E,!0);const w=st();_(w+u/1e3)}function O(E){if(n.has(E)&&n.delete(E),n.size===0){const w=st();v(w+c/1e3)}}function R(E){r=!0,n.clear(),a.forEach(L=>L()),ci(p,m);const w=ke(y),{start_timestamp:I}=w;if(!I)return;w.data[Co]||y.setAttribute(Co,i);const M=w.status;(!M||M==="unknown")&&y.setStatus({code:Td}),X.log(`[Tracing] Idle span "${w.op}" finished`);const x=Ma(y).filter(L=>L!==y);let N=0;x.forEach(L=>{L.isRecording()&&(L.setStatus({code:ct,message:"cancelled"}),L.end(E),oe&&X.log("[Tracing] Cancelling span since span ended early",JSON.stringify(L,void 0,2)));const G=ke(L),{timestamp:J=0,start_timestamp:j=0}=G,D=j<=E,ae=(l+c)/1e3,q=J-j<=ae;if(oe){const ce=JSON.stringify(L,void 0,2);D?q||X.log("[Tracing] Discarding span since it finished after idle span final timeout",ce):X.log("[Tracing] Discarding span since it happened after idle span was finished",ce)}(!q||!D)&&(E1(y,L),N++)}),N>0&&y.setAttribute("sentry.idle_span_discarded_spans",N)}return a.push(h.on("spanStart",E=>{if(r||E===y||ke(E).timestamp||E instanceof Zc&&E.isStandaloneSpan())return;Ma(y).includes(E)&&T(E.spanContext().spanId)})),a.push(h.on("spanEnd",E=>{r||O(E.spanContext().spanId)})),a.push(h.on("idleSpanEnableAutoFinish",E=>{E===y&&(o=!0,v(),n.size&&_())})),t.disableAutoFinish||v(),setTimeout(()=>{r||(y.setStatus({code:ct,message:"deadline_exceeded"}),i=tO,y.end())},l),y}function rO(e){const t=Ar(e);return ci(De(),t),oe&&X.log("[Tracing] Started span is an idle span"),t}const ql=0,Hm=1,Vm=2;function Qc(e){return new Io(t=>{t(e)})}function Od(e){return new Io((t,n)=>{n(e)})}class Io{constructor(t){this._state=ql,this._handlers=[],this._runExecutor(t)}then(t,n){return new Io((r,s)=>{this._handlers.push([!1,i=>{if(!t)r(i);else try{r(t(i))}catch(o){s(o)}},i=>{if(!n)s(i);else try{r(n(i))}catch(o){s(o)}}]),this._executeHandlers()})}catch(t){return this.then(n=>n,t)}finally(t){return new Io((n,r)=>{let s,i;return this.then(o=>{i=!1,s=o,t&&t()},o=>{i=!0,s=o,t&&t()}).then(()=>{if(i){r(s);return}n(s)})})}_executeHandlers(){if(this._state===ql)return;const t=this._handlers.slice();this._handlers=[],t.forEach(n=>{n[0]||(this._state===Hm&&n[1](this._value),this._state===Vm&&n[2](this._value),n[0]=!0)})}_runExecutor(t){const n=(i,o)=>{if(this._state===ql){if(Ci(o)){o.then(r,s);return}this._state=i,this._value=o,this._executeHandlers()}},r=i=>{n(Hm,i)},s=i=>{n(Vm,i)};try{t(r,s)}catch(i){s(i)}}}function sO(e,t,n,r=0){try{const s=Xu(t,n,e,r);return Ci(s)?s:Qc(s)}catch(s){return Od(s)}}function Xu(e,t,n,r){const s=n[r];if(!e||!s)return e;const i=s({...e},t);return oe&&i===null&&X.log(`Event processor "${s.id||"?"}" dropped event`),Ci(i)?i.then(o=>Xu(o,t,n,r+1)):Xu(i,t,n,r+1)}let $n,Um,Wm,dr;function iO(e){const t=Ce._sentryDebugIds,n=Ce._debugIds;if(!t&&!n)return{};const r=t?Object.keys(t):[],s=n?Object.keys(n):[];if(dr&&r.length===Um&&s.length===Wm)return dr;Um=r.length,Wm=s.length,dr={},$n||($n={});const i=(o,a)=>{for(const c of o){const l=a[c],u=$n==null?void 0:$n[c];if(u&&dr&&l)dr[u[0]]=l,$n&&($n[c]=[u[0],l]);else if(l){const f=e(c);for(let d=f.length-1;d>=0;d--){const h=f[d],p=h==null?void 0:h.filename;if(p&&dr&&$n){dr[p]=l,$n[c]=[p,l];break}}}}};return t&&i(r,t),n&&i(s,n),dr}function oO(e,t){const{fingerprint:n,span:r,breadcrumbs:s,sdkProcessingMetadata:i}=t;cO(e,t),r&&fO(e,r),dO(e,n),lO(e,s),uO(e,i)}function jm(e,t){const{extra:n,tags:r,attributes:s,user:i,contexts:o,level:a,sdkProcessingMetadata:c,breadcrumbs:l,fingerprint:u,eventProcessors:f,attachments:d,propagationContext:h,transactionName:p,span:m}=t;Hi(e,"extra",n),Hi(e,"tags",r),Hi(e,"attributes",s),Hi(e,"user",i),Hi(e,"contexts",o),e.sdkProcessingMetadata=jo(e.sdkProcessingMetadata,c,2),a&&(e.level=a),p&&(e.transactionName=p),m&&(e.span=m),l.length&&(e.breadcrumbs=[...e.breadcrumbs,...l]),u.length&&(e.fingerprint=[...e.fingerprint,...u]),f.length&&(e.eventProcessors=[...e.eventProcessors,...f]),d.length&&(e.attachments=[...e.attachments,...d]),e.propagationContext={...e.propagationContext,...h}}function Hi(e,t,n){e[t]=jo(e[t],n,1)}function aO(e,t){const n=qA().getScopeData();return e&&jm(n,e.getScopeData()),t&&jm(n,t.getScopeData()),n}function cO(e,t){const{extra:n,tags:r,user:s,contexts:i,level:o,transactionName:a}=t;Object.keys(n).length&&(e.extra={...n,...e.extra}),Object.keys(r).length&&(e.tags={...r,...e.tags}),Object.keys(s).length&&(e.user={...s,...e.user}),Object.keys(i).length&&(e.contexts={...i,...e.contexts}),o&&(e.level=o),a&&e.type!=="transaction"&&(e.transaction=a)}function lO(e,t){const n=[...e.breadcrumbs||[],...t];e.breadcrumbs=n.length?n:void 0}function uO(e,t){e.sdkProcessingMetadata={...e.sdkProcessingMetadata,...t}}function fO(e,t){e.contexts={trace:y1(t),...e.contexts},e.sdkProcessingMetadata={dynamicSamplingContext:sr(t),...e.sdkProcessingMetadata};const n=vt(t),r=ke(n).description;r&&!e.transaction&&e.type==="transaction"&&(e.transaction=r)}function dO(e,t){e.fingerprint=e.fingerprint?Array.isArray(e.fingerprint)?e.fingerprint:[e.fingerprint]:[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint.length||delete e.fingerprint}function eS(e,t,n,r,s,i){const{normalizeDepth:o=3,normalizeMaxBreadth:a=1e3}=e,c={...t,event_id:t.event_id||n.event_id||Kt(),timestamp:t.timestamp||Ss()},l=n.integrations||e.integrations.map(y=>y.name);hO(c,e),gO(c,l),s&&s.emit("applyFrameMetadata",t),t.type===void 0&&pO(c,e.stackParser);const u=vO(r,n.captureContext);n.mechanism&&oi(c,n.mechanism);const f=s?s.getEventProcessors():[],d=aO(i,u),h=[...n.attachments||[],...d.attachments];h.length&&(n.attachments=h),oO(c,d);const p=[...f,...d.eventProcessors];return sO(p,c,n).then(y=>(y&&mO(y),typeof o=="number"&&o>0?yO(y,o,a):y))}function hO(e,t){var a,c;const{environment:n,release:r,dist:s,maxValueLength:i}=t;e.environment=e.environment||n||kd,!e.release&&r&&(e.release=r),!e.dist&&s&&(e.dist=s);const o=e.request;o!=null&&o.url&&i&&(o.url=Uu(o.url,i)),i&&((c=(a=e.exception)==null?void 0:a.values)==null||c.forEach(l=>{l.value&&(l.value=Uu(l.value,i))}))}function pO(e,t){var r,s;const n=iO(t);(s=(r=e.exception)==null?void 0:r.values)==null||s.forEach(i=>{var o,a;(a=(o=i.stacktrace)==null?void 0:o.frames)==null||a.forEach(c=>{c.filename&&(c.debug_id=n[c.filename])})})}function mO(e){var r,s;const t={};if((s=(r=e.exception)==null?void 0:r.values)==null||s.forEach(i=>{var o,a;(a=(o=i.stacktrace)==null?void 0:o.frames)==null||a.forEach(c=>{c.debug_id&&(c.abs_path?t[c.abs_path]=c.debug_id:c.filename&&(t[c.filename]=c.debug_id),delete c.debug_id)})}),Object.keys(t).length===0)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];const n=e.debug_meta.images;Object.entries(t).forEach(([i,o])=>{n.push({type:"sourcemap",code_file:i,debug_id:o})})}function gO(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function yO(e,t,n){var s,i;if(!e)return null;const r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(o=>({...o,...o.data&&{data:un(o.data,t,n)}}))},...e.user&&{user:un(e.user,t,n)},...e.contexts&&{contexts:un(e.contexts,t,n)},...e.extra&&{extra:un(e.extra,t,n)}};return(s=e.contexts)!=null&&s.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=un(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(o=>({...o,...o.data&&{data:un(o.data,t,n)}}))),(i=e.contexts)!=null&&i.flags&&r.contexts&&(r.contexts.flags=un(e.contexts.flags,3,n)),r}function vO(e,t){if(!t)return e;const n=e?e.clone():new Pn;return n.update(t),n}function _O(e){if(e)return bO(e)?{captureContext:e}:EO(e)?{captureContext:e}:e}function bO(e){return e instanceof Pn||typeof e=="function"}const SO=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function EO(e){return Object.keys(e).some(t=>SO.includes(t))}function el(e,t){return De().captureException(e,_O(t))}function tS(e,t){return De().captureEvent(e,t)}function wO(e,t){Nn().setContext(e,t)}function TO(){const e=Ie();return(e==null?void 0:e.getOptions().enabled)!==!1&&!!(e!=null&&e.getTransport())}function CO(e){Nn().addEventProcessor(e)}function zm(e){const t=Nn(),n=De(),{userAgent:r}=Ce.navigator||{},s=DA({user:n.getUser()||t.getUser(),...r&&{userAgent:r},...e}),i=t.getSession();return(i==null?void 0:i.status)==="ok"&&ai(i,{status:"exited"}),nS(),t.setSession(s),s}function nS(){const e=Nn(),n=De().getSession()||e.getSession();n&&FA(n),rS(),e.setSession()}function rS(){const e=Nn(),t=Ie(),n=e.getSession();n&&t&&t.captureSession(n)}function qm(e=!1){if(e){nS();return}rS()}const IO="7";function kO(e){const t=e.protocol?`${e.protocol}:`:"",n=e.port?`:${e.port}`:"";return`${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`}function xO(e){return`${kO(e)}${e.projectId}/envelope/`}function RO(e,t){const n={sentry_version:IO};return e.publicKey&&(n.sentry_key=e.publicKey),t&&(n.sentry_client=`${t.name}/${t.version}`),new URLSearchParams(n).toString()}function AO(e,t,n){return t||`${xO(e)}?${RO(e,n)}`}const Gm=[];function OO(e){const t={};return e.forEach(n=>{const{name:r}=n,s=t[r];s&&!s.isDefaultInstance&&n.isDefaultInstance||(t[r]=n)}),Object.values(t)}function MO(e){const t=e.defaultIntegrations||[],n=e.integrations;t.forEach(s=>{s.isDefaultInstance=!0});let r;if(Array.isArray(n))r=[...t,...n];else if(typeof n=="function"){const s=n(t);r=Array.isArray(s)?s:[s]}else r=t;return OO(r)}function PO(e,t){const n={};return t.forEach(r=>{r&&sS(e,r,n)}),n}function Km(e,t){for(const n of t)n!=null&&n.afterAllSetup&&n.afterAllSetup(e)}function sS(e,t,n){if(n[t.name]){oe&&X.log(`Integration skipped because it was already installed: ${t.name}`);return}if(n[t.name]=t,!Gm.includes(t.name)&&typeof t.setupOnce=="function"&&(t.setupOnce(),Gm.push(t.name)),t.setup&&typeof t.setup=="function"&&t.setup(e),typeof t.preprocessEvent=="function"){const r=t.preprocessEvent.bind(t);e.on("preprocessEvent",(s,i)=>r(s,i,e))}if(typeof t.processEvent=="function"){const r=t.processEvent.bind(t),s=Object.assign((i,o)=>r(i,o,e),{id:t.name});e.addEventProcessor(s)}oe&&X.log(`Integration installed: ${t.name}`)}function NO(e){return[{type:"log",item_count:e.length,content_type:"application/vnd.sentry.items.log+json"},{items:e}]}function LO(e,t,n,r){const s={};return t!=null&&t.sdk&&(s.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(s.dsn=Ri(r)),Vr(s,[NO(e)])}function iS(e,t){const n=t??DO(e)??[];if(n.length===0)return;const r=e.getOptions(),s=LO(n,r._metadata,r.tunnel,e.getDsn());oS().set(e,[]),e.emit("flushLogs"),e.sendEnvelope(s)}function DO(e){return oS().get(e)}function oS(){return wi("clientToLogBufferMap",()=>new WeakMap)}function FO(e){return[{type:"trace_metric",item_count:e.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{items:e}]}function $O(e,t,n,r){const s={};return t!=null&&t.sdk&&(s.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(s.dsn=Ri(r)),Vr(s,[FO(e)])}function aS(e,t){const n=t??BO(e)??[];if(n.length===0)return;const r=e.getOptions(),s=$O(n,r._metadata,r.tunnel,e.getDsn());cS().set(e,[]),e.emit("flushMetrics"),e.sendEnvelope(s)}function BO(e){return cS().get(e)}function cS(){return wi("clientToMetricBufferMap",()=>new WeakMap)}const Md=Symbol.for("SentryBufferFullError");function Pd(e=100){const t=new Set;function n(){return t.sizer(a),()=>r(a)),a}function i(o){if(!t.size)return Qc(!0);const a=Promise.allSettled(Array.from(t)).then(()=>!0);if(!o)return a;const c=[a,new Promise(l=>setTimeout(()=>l(!1),o))];return Promise.race(c)}return{get $(){return Array.from(t)},add:s,drain:i}}const HO=60*1e3;function VO(e,t=Wo()){const n=parseInt(`${e}`,10);if(!isNaN(n))return n*1e3;const r=Date.parse(`${e}`);return isNaN(r)?HO:r-t}function UO(e,t){return e[t]||e.all||0}function lS(e,t,n=Wo()){return UO(e,t)>n}function uS(e,{statusCode:t,headers:n},r=Wo()){const s={...e},i=n==null?void 0:n["x-sentry-rate-limits"],o=n==null?void 0:n["retry-after"];if(i)for(const a of i.trim().split(",")){const[c,l,,,u]=a.split(":",5),f=parseInt(c,10),d=(isNaN(f)?60:f)*1e3;if(!l)s.all=r+d;else for(const h of l.split(";"))h==="metric_bucket"?(!u||u.split(";").includes("custom"))&&(s[h]=r+d):s[h]=r+d}else o?s.all=r+VO(o,r):t===429&&(s.all=r+60*1e3);return s}const fS=64;function WO(e,t,n=Pd(e.bufferSize||fS)){let r={};const s=o=>n.drain(o);function i(o){const a=[];if(Ku(o,(f,d)=>{const h=Nm(d);lS(r,h)?e.recordDroppedEvent("ratelimit_backoff",h):a.push(f)}),a.length===0)return Promise.resolve({});const c=Vr(o[0],a),l=f=>{if(M1(c,["client_report"])){oe&&X.warn(`Dropping client report. Will not send outcomes (reason: ${f}).`);return}Ku(c,(d,h)=>{e.recordDroppedEvent(f,Nm(h))})},u=()=>t({body:P1(c)}).then(f=>(f.statusCode!==void 0&&(f.statusCode<200||f.statusCode>=300)&&oe&&X.warn(`Sentry responded with status code ${f.statusCode} to sent event.`),r=uS(r,f),f),f=>{throw l("network_error"),oe&&X.error("Encountered error running transport request:",f),f});return n.add(u).then(f=>f,f=>{if(f===Md)return oe&&X.error("Skipped sending event because buffer is full."),l("queue_overflow"),Promise.resolve({});throw f})}return{send:i,flush:s}}function jO(e,t,n){const r=[{type:"client_report"},{timestamp:Ss(),discarded_events:e}];return Vr(t?{dsn:t}:{},[r])}function dS(e){const t=[];e.message&&t.push(e.message);try{const n=e.exception.values[e.exception.values.length-1];n!=null&&n.value&&(t.push(n.value),n.type&&t.push(`${n.type}: ${n.value}`))}catch{}return t}function zO(e){var c;const{trace_id:t,parent_span_id:n,span_id:r,status:s,origin:i,data:o,op:a}=((c=e.contexts)==null?void 0:c.trace)??{};return{data:o??{},description:e.transaction,op:a,parent_span_id:n,span_id:r??"",start_timestamp:e.start_timestamp??0,status:s,timestamp:e.timestamp,trace_id:t??"",origin:i,profile_id:o==null?void 0:o[wd],exclusive_time:o==null?void 0:o[xi],measurements:e.measurements,is_segment:!0}}function qO(e){return{type:"transaction",timestamp:e.timestamp,start_timestamp:e.start_timestamp,transaction:e.description,contexts:{trace:{trace_id:e.trace_id,span_id:e.span_id,parent_span_id:e.parent_span_id,op:e.op,status:e.status,origin:e.origin,data:{...e.data,...e.profile_id&&{[wd]:e.profile_id},...e.exclusive_time&&{[xi]:e.exclusive_time}}}},measurements:e.measurements}}const Ym="Not capturing exception because it's already been captured.",Xm="Discarded session because of missing or non-string release",hS=Symbol.for("SentryInternalError"),pS=Symbol.for("SentryDoNotSendEventError"),GO=5e3;function La(e){return{message:e,[hS]:!0}}function Gl(e){return{message:e,[pS]:!0}}function Jm(e){return!!e&&typeof e=="object"&&hS in e}function Zm(e){return!!e&&typeof e=="object"&&pS in e}function Qm(e,t,n,r,s){let i=0,o,a=!1;e.on(n,()=>{i=0,clearTimeout(o),a=!1}),e.on(t,c=>{i+=r(c),i>=8e5?s(e):a||(a=!0,o=setTimeout(()=>{s(e)},GO))}),e.on("flush",()=>{s(e)})}class KO{constructor(t){var r,s,i;if(this._options=t,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],this._promiseBuffer=Pd(((r=t.transportOptions)==null?void 0:r.bufferSize)??fS),t.dsn?this._dsn=d1(t.dsn):oe&&X.warn("No DSN provided, client will not send events."),this._dsn){const o=AO(this._dsn,t.tunnel,t._metadata?t._metadata.sdk:void 0);this._transport=t.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...t.transportOptions,url:o})}this._options.enableLogs=this._options.enableLogs??((s=this._options._experiments)==null?void 0:s.enableLogs),this._options.enableLogs&&Qm(this,"afterCaptureLog","flushLogs",ZO,iS),(this._options.enableMetrics??((i=this._options._experiments)==null?void 0:i.enableMetrics)??!0)&&Qm(this,"afterCaptureMetric","flushMetrics",JO,aS)}captureException(t,n,r){const s=Kt();if(Cm(t))return oe&&X.log(Ym),s;const i={event_id:s,...n};return this._process(()=>this.eventFromException(t,i).then(o=>this._captureEvent(o,i,r)).then(o=>o),"error"),i.event_id}captureMessage(t,n,r,s){const i={event_id:Kt(),...r},o=vd(t)?t:String(t),a=ii(t),c=a?this.eventFromMessage(o,n,i):this.eventFromException(t,i);return this._process(()=>c.then(l=>this._captureEvent(l,i,s)),a?"unknown":"error"),i.event_id}captureEvent(t,n,r){const s=Kt();if(n!=null&&n.originalException&&Cm(n.originalException))return oe&&X.log(Ym),s;const i={event_id:s,...n},o=t.sdkProcessingMetadata||{},a=o.capturedSpanScope,c=o.capturedSpanIsolationScope,l=eg(t.type);return this._process(()=>this._captureEvent(t,i,a||r,c),l),i.event_id}captureSession(t){this.sendSession(t),ai(t,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}async flush(t){const n=this._transport;if(!n)return!0;this.emit("flush");const r=await this._isClientDoneProcessing(t),s=await n.flush(t);return r&&s}async close(t){const n=await this.flush(t);return this.getOptions().enabled=!1,this.emit("close"),n}getEventProcessors(){return this._eventProcessors}addEventProcessor(t){this._eventProcessors.push(t)}init(){(this._isEnabled()||this._options.integrations.some(({name:t})=>t.startsWith("Spotlight")))&&this._setupIntegrations()}getIntegrationByName(t){return this._integrations[t]}addIntegration(t){const n=this._integrations[t.name];sS(this,t,this._integrations),n||Km(this,[t])}sendEvent(t,n={}){this.emit("beforeSendEvent",t,n);let r=H1(t,this._dsn,this._options._metadata,this._options.tunnel);for(const s of n.attachments||[])r=O1(r,D1(s));this.sendEnvelope(r).then(s=>this.emit("afterSendEvent",t,s))}sendSession(t){const{release:n,environment:r=kd}=this._options;if("aggregates"in t){const i=t.attrs||{};if(!i.release&&!n){oe&&X.warn(Xm);return}i.release=i.release||n,i.environment=i.environment||r,t.attrs=i}else{if(!t.release&&!n){oe&&X.warn(Xm);return}t.release=t.release||n,t.environment=t.environment||r}this.emit("beforeSendSession",t);const s=B1(t,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(s)}recordDroppedEvent(t,n,r=1){if(this._options.sendClientReports){const s=`${t}:${n}`;oe&&X.log(`Recording outcome: "${s}"${r>1?` (${r} times)`:""}`),this._outcomes[s]=(this._outcomes[s]||0)+r}}on(t,n){const r=this._hooks[t]=this._hooks[t]||new Set,s=(...i)=>n(...i);return r.add(s),()=>{r.delete(s)}}emit(t,...n){const r=this._hooks[t];r&&r.forEach(s=>s(...n))}async sendEnvelope(t){if(this.emit("beforeEnvelope",t),this._isEnabled()&&this._transport)try{return await this._transport.send(t)}catch(n){return oe&&X.error("Error while sending envelope:",n),{}}return oe&&X.error("Transport disabled"),{}}_setupIntegrations(){const{integrations:t}=this._options;this._integrations=PO(this,t),Km(this,t)}_updateSessionFromEvent(t,n){var c,l;let r=n.level==="fatal",s=!1;const i=(c=n.exception)==null?void 0:c.values;if(i){s=!0,r=!1;for(const u of i)if(((l=u.mechanism)==null?void 0:l.handled)===!1){r=!0;break}}const o=t.status==="ok";(o&&t.errors===0||o&&r)&&(ai(t,{...r&&{status:"crashed"},errors:t.errors||Number(s||r)}),this.captureSession(t))}async _isClientDoneProcessing(t){let n=0;for(;!t||nsetTimeout(r,1)),!this._numProcessing)return!0;n++}return!1}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(t,n,r,s){const i=this.getOptions(),o=Object.keys(this._integrations);return!n.integrations&&(o!=null&&o.length)&&(n.integrations=o),this.emit("preprocessEvent",t,n),t.type||s.setLastEventId(t.event_id||n.event_id),eS(i,t,n,r,this,s).then(a=>{if(a===null)return a;this.emit("postprocessEvent",a,n),a.contexts={trace:GA(r),...a.contexts};const c=qb(this,r);return a.sdkProcessingMetadata={dynamicSamplingContext:c,...a.sdkProcessingMetadata},a})}_captureEvent(t,n={},r=De(),s=Nn()){return oe&&Ju(t)&&X.log(`Captured error event \`${dS(t)[0]||""}\``),this._processEvent(t,n,r,s).then(i=>i.event_id,i=>{oe&&(Zm(i)?X.log(i.message):Jm(i)?X.warn(i.message):X.warn(i))})}_processEvent(t,n,r,s){const i=this.getOptions(),{sampleRate:o}=i,a=mS(t),c=Ju(t),u=`before send for type \`${t.type||"error"}\``,f=typeof o>"u"?void 0:ps(o);if(c&&typeof f=="number"&&wr()>f)return this.recordDroppedEvent("sample_rate","error"),Od(Gl(`Discarding event because it's not included in the random sample (sampling rate = ${o})`));const d=eg(t.type);return this._prepareEvent(t,n,r,s).then(h=>{if(h===null)throw this.recordDroppedEvent("event_processor",d),Gl("An event processor returned `null`, will not send event.");if(n.data&&n.data.__sentry__===!0)return h;const m=XO(this,i,h,n);return YO(m,u)}).then(h=>{var y;if(h===null){if(this.recordDroppedEvent("before_send",d),a){const v=1+(t.spans||[]).length;this.recordDroppedEvent("before_send","span",v)}throw Gl(`${u} returned \`null\`, will not send event.`)}const p=r.getSession()||s.getSession();if(c&&p&&this._updateSessionFromEvent(p,h),a){const g=((y=h.sdkProcessingMetadata)==null?void 0:y.spanCountBeforeProcessing)||0,v=h.spans?h.spans.length:0,_=g-v;_>0&&this.recordDroppedEvent("before_send","span",_)}const m=h.transaction_info;if(a&&m&&h.transaction!==t.transaction){const g="custom";h.transaction_info={...m,source:g}}return this.sendEvent(h,n),h}).then(null,h=>{throw Zm(h)||Jm(h)?h:(this.captureException(h,{mechanism:{handled:!1,type:"internal"},data:{__sentry__:!0},originalException:h}),La(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. -Reason: ${h}`))})}_process(t,n){this._numProcessing++,this._promiseBuffer.add(t).then(r=>(this._numProcessing--,r),r=>(this._numProcessing--,r===Md&&this.recordDroppedEvent("queue_overflow",n),r))}_clearOutcomes(){const t=this._outcomes;return this._outcomes={},Object.entries(t).map(([n,r])=>{const[s,i]=n.split(":");return{reason:s,category:i,quantity:r}})}_flushOutcomes(){oe&&X.log("Flushing outcomes...");const t=this._clearOutcomes();if(t.length===0){oe&&X.log("No outcomes to send");return}if(!this._dsn){oe&&X.log("No dsn provided, will not send outcomes");return}oe&&X.log("Sending outcomes:",t);const n=jO(t,this._options.tunnel&&Ri(this._dsn));this.sendEnvelope(n)}}function eg(e){return e==="replay_event"?"replay":e||"error"}function YO(e,t){const n=`${t} must return \`null\` or a valid event.`;if(Ci(e))return e.then(r=>{if(!To(r)&&r!==null)throw La(n);return r},r=>{throw La(`${t} rejected with ${r}`)});if(!To(e)&&e!==null)throw La(n);return e}function XO(e,t,n,r){const{beforeSend:s,beforeSendTransaction:i,beforeSendSpan:o,ignoreSpans:a}=t;let c=n;if(Ju(c)&&s)return s(c,r);if(mS(c)){if(o||a){const l=zO(c);if(a!=null&&a.length&&fc(l,a))return null;if(o){const u=o(l);u?c=jo(n,qO(u)):qu()}if(c.spans){const u=[],f=c.spans;for(const h of f){if(a!=null&&a.length&&fc(h,a)){T1(f,h);continue}if(o){const p=o(h);p?u.push(p):(qu(),u.push(h))}else u.push(h)}const d=c.spans.length-u.length;d&&e.recordDroppedEvent("before_send","span",d),c.spans=u}}if(i){if(c.spans){const l=c.spans.length;c.sdkProcessingMetadata={...n.sdkProcessingMetadata,spanCountBeforeProcessing:l}}return i(c,r)}}return c}function Ju(e){return e.type===void 0}function mS(e){return e.type==="transaction"}function JO(e){let t=0;return e.name&&(t+=e.name.length*2),t+=8,t+gS(e.attributes)}function ZO(e){let t=0;return e.message&&(t+=e.message.length*2),t+gS(e.attributes)}function gS(e){if(!e)return 0;let t=0;return Object.values(e).forEach(n=>{Array.isArray(n)?t+=n.length*tg(n[0]):ii(n)?t+=tg(n):t+=100}),t}function tg(e){return typeof e=="string"?e.length*2:typeof e=="number"?8:typeof e=="boolean"?4:0}function QO(e){return Yc(e)&&"__sentry_fetch_url_host__"in e&&typeof e.__sentry_fetch_url_host__=="string"}function ng(e){return QO(e)?`${e.message} (${e.__sentry_fetch_url_host__})`:e.message}function eM(e,t){t.debug===!0&&(oe?X.enable():lr(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")})),De().update(t.initialScope);const r=new e(t);return tM(r),r.init(),r}function tM(e){De().setClient(e)}const nM="thismessage:/";function Nd(e){return"isRelative"in e}function Ld(e,t){const n=e.indexOf("://")<=0&&e.indexOf("//")!==0,r=n?nM:void 0;try{if("canParse"in URL&&!URL.canParse(e,r))return;const s=new URL(e,r);return n?{isRelative:n,pathname:s.pathname,search:s.search,hash:s.hash}:s}catch{}}function rM(e){if(Nd(e))return e.pathname;const t=new URL(e);return t.search="",t.hash="",["80","443"].includes(t.port)&&(t.port=""),t.password&&(t.password="%filtered%"),t.username&&(t.username="%filtered%"),t.toString()}function cs(e){if(!e)return{};const t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};const n=t[6]||"",r=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:n,hash:r,relative:t[5]+n+r}}function sM(e){return e.split(/[?#]/,1)[0]}function Tr(e,t=!0){if(e.startsWith("data:")){const n=e.match(/^data:([^;,]+)/),r=n?n[1]:"text/plain",s=e.includes(";base64,"),i=e.indexOf(",");let o="";if(t&&i!==-1){const a=e.slice(i+1);o=a.length>10?`${a.slice(0,10)}... [truncated]`:a}return`data:${r}${s?",base64":""}${o?`,${o}`:""}`}return e}function iM(e,t){const n=t==null?void 0:t.getDsn(),r=t==null?void 0:t.getOptions().tunnel;return aM(e,n)||oM(e,r)}function oM(e,t){return t?rg(e)===rg(t):!1}function aM(e,t){const n=Ld(e);return!n||Nd(n)?!1:t?n.host.includes(t.host)&&/(^|&|\?)sentry_key=/.test(n.search):!1}function rg(e){return e[e.length-1]==="/"?e.slice(0,-1):e}function cM(e){var t;"aggregates"in e?((t=e.attrs)==null?void 0:t.ip_address)===void 0&&(e.attrs={...e.attrs,ip_address:"{{auto}}"}):e.ipAddress===void 0&&(e.ipAddress="{{auto}}")}function yS(e,t,n=[t],r="npm"){const s=e._metadata||{};s.sdk||(s.sdk={name:`sentry.javascript.${t}`,packages:n.map(i=>({name:`${r}:@sentry/${i}`,version:is})),version:is}),e._metadata=s}function vS(e={}){const t=e.client||Ie();if(!TO()||!t)return{};const n=bs(),r=ki(n);if(r.getTraceData)return r.getTraceData(e);const s=e.scope||De(),i=e.span||bt(),o=i?v1(i):lM(s),a=i?sr(i):qb(t,s),c=n1(a);if(!Fb.test(o))return X.warn("Invalid sentry-trace data. Cannot generate trace data"),{};const u={"sentry-trace":o,baggage:c};return e.propagateTraceparent&&(u.traceparent=i?_1(i):uM(s)),u}function lM(e){const{traceId:t,sampled:n,propagationSpanId:r}=e.getPropagationContext();return $b(t,r,n)}function uM(e){const{traceId:t,sampled:n,propagationSpanId:r}=e.getPropagationContext();return Bb(t,r,n)}function fM(e,t,n){let r,s,i;const o=n!=null&&n.maxWait?Math.max(n.maxWait,t):0,a=(n==null?void 0:n.setTimeoutImpl)||setTimeout;function c(){return l(),r=e(),r}function l(){s!==void 0&&clearTimeout(s),i!==void 0&&clearTimeout(i),s=i=void 0}function u(){return s!==void 0||i!==void 0?c():r}function f(){return s&&clearTimeout(s),s=a(c,t),o&&i===void 0&&(i=a(c,o)),r}return f.cancel=l,f.flush=u,f}const dM=100;function Or(e,t){const n=Ie(),r=Nn();if(!n)return;const{beforeBreadcrumb:s=null,maxBreadcrumbs:i=dM}=n.getOptions();if(i<=0)return;const a={timestamp:Ss(),...e},c=s?lr(()=>s(a,t)):a;c!==null&&(n.emit&&n.emit("beforeAddBreadcrumb",c,t),r.addBreadcrumb(c,i))}let sg;const hM="FunctionToString",ig=new WeakMap,pM=()=>({name:hM,setupOnce(){sg=Function.prototype.toString;try{Function.prototype.toString=function(...e){const t=Sd(this),n=ig.has(Ie())&&t!==void 0?t:this;return sg.apply(n,e)}}catch{}},setup(e){ig.set(e,!0)}}),mM=pM,gM=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],yM="EventFilters",vM=(e={})=>{let t;return{name:yM,setup(n){const r=n.getOptions();t=og(e,r)},processEvent(n,r,s){if(!t){const i=s.getOptions();t=og(e,i)}return bM(n,t)?null:n}}},_M=(e={})=>({...vM(e),name:"InboundFilters"});function og(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:gM],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[]]}}function bM(e,t){if(e.type){if(e.type==="transaction"&&EM(e,t.ignoreTransactions))return oe&&X.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. -Event: ${Xr(e)}`),!0}else{if(SM(e,t.ignoreErrors))return oe&&X.warn(`Event dropped due to being matched by \`ignoreErrors\` option. -Event: ${Xr(e)}`),!0;if(IM(e))return oe&&X.warn(`Event dropped due to not having an error message, error type or stacktrace. -Event: ${Xr(e)}`),!0;if(wM(e,t.denyUrls))return oe&&X.warn(`Event dropped due to being matched by \`denyUrls\` option. -Event: ${Xr(e)}. -Url: ${dc(e)}`),!0;if(!TM(e,t.allowUrls))return oe&&X.warn(`Event dropped due to not being matched by \`allowUrls\` option. -Event: ${Xr(e)}. -Url: ${dc(e)}`),!0}return!1}function SM(e,t){return t!=null&&t.length?dS(e).some(n=>Gn(n,t)):!1}function EM(e,t){if(!(t!=null&&t.length))return!1;const n=e.transaction;return n?Gn(n,t):!1}function wM(e,t){if(!(t!=null&&t.length))return!1;const n=dc(e);return n?Gn(n,t):!1}function TM(e,t){if(!(t!=null&&t.length))return!0;const n=dc(e);return n?Gn(n,t):!0}function CM(e=[]){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n&&n.filename!==""&&n.filename!=="[native code]")return n.filename||null}return null}function dc(e){var t,n;try{const r=[...((t=e.exception)==null?void 0:t.values)??[]].reverse().find(i=>{var o,a,c;return((o=i.mechanism)==null?void 0:o.parent_id)===void 0&&((c=(a=i.stacktrace)==null?void 0:a.frames)==null?void 0:c.length)}),s=(n=r==null?void 0:r.stacktrace)==null?void 0:n.frames;return s?CM(s):null}catch{return oe&&X.error(`Cannot extract url for event ${Xr(e)}`),null}}function IM(e){var t,n;return(n=(t=e.exception)==null?void 0:t.values)!=null&&n.length?!e.message&&!e.exception.values.some(r=>r.stacktrace||r.type&&r.type!=="Error"||r.value):!1}function kM(e,t,n,r,s,i){var a;if(!((a=s.exception)!=null&&a.values)||!i||!tr(i.originalException,Error))return;const o=s.exception.values.length>0?s.exception.values[s.exception.values.length-1]:void 0;o&&(s.exception.values=Zu(e,t,r,i.originalException,n,s.exception.values,o,0))}function Zu(e,t,n,r,s,i,o,a){if(i.length>=n+1)return i;let c=[...i];if(tr(r[s],Error)){ag(o,a);const l=e(t,r[s]),u=c.length;cg(l,s,u,a),c=Zu(e,t,n,r[s],s,[l,...c],l,u)}return Array.isArray(r.errors)&&r.errors.forEach((l,u)=>{if(tr(l,Error)){ag(o,a);const f=e(t,l),d=c.length;cg(f,`errors[${u}]`,d,a),c=Zu(e,t,n,l,s,[f,...c],f,d)}}),c}function ag(e,t){e.mechanism={handled:!0,type:"auto.core.linked_errors",...e.mechanism,...e.type==="AggregateError"&&{is_exception_group:!0},exception_id:t}}function cg(e,t,n,r){e.mechanism={handled:!0,...e.mechanism,type:"chained",source:t,exception_id:n,parent_id:r}}function xM(e){const t="console";$r(t,e),Br(t,RM)}function RM(){"console"in Ce&&hA.forEach(function(e){e in Ce.console&&$t(Ce.console,e,function(t){return cc[e]=t,function(...n){rn("console",{args:n,level:e});const s=cc[e];s==null||s.apply(Ce.console,n)}})})}function _S(e){return e==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(e)?e:"log"}const AM="Dedupe",OM=()=>{let e;return{name:AM,processEvent(t){if(t.type)return t;try{if(PM(t,e))return oe&&X.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}},MM=OM;function PM(e,t){return t?!!(NM(e,t)||LM(e,t)):!1}function NM(e,t){const n=e.message,r=t.message;return!(!n&&!r||n&&!r||!n&&r||n!==r||!SS(e,t)||!bS(e,t))}function LM(e,t){const n=lg(t),r=lg(e);return!(!n||!r||n.type!==r.type||n.value!==r.value||!SS(e,t)||!bS(e,t))}function bS(e,t){let n=_m(e),r=_m(t);if(!n&&!r)return!0;if(n&&!r||!n&&r||(n=n,r=r,r.length!==n.length))return!1;for(let s=0;sf[0]==="sentry-trace")||l.push(["sentry-trace",i]),r&&a&&!c.find(f=>f[0]==="traceparent")&&l.push(["traceparent",a]);const u=c.find(f=>f[0]==="baggage"&&da(f[1]));return o&&!u&&l.push(["baggage",o]),l}else{const l="sentry-trace"in c?c["sentry-trace"]:void 0,u="traceparent"in c?c.traceparent:void 0,f="baggage"in c?c.baggage:void 0,d=f?Array.isArray(f)?[...f]:[f]:[],h=f&&(Array.isArray(f)?f.find(m=>da(m)):da(f));o&&!h&&d.push(o);const p={...c,"sentry-trace":l??i,baggage:d.length>0?d.join(","):void 0};return r&&a&&!u&&(p.traceparent=a),p}else return{...s}}function BM(e,t){var n,r;if(t.response){Mb(e,t.response.status);const s=(r=(n=t.response)==null?void 0:n.headers)==null?void 0:r.get("content-length");if(s){const i=parseInt(s);i>0&&e.setAttribute("http.response_content_length",i)}}else t.error&&e.setStatus({code:ct,message:"internal_error"});e.end()}function da(e){return e.split(",").some(t=>t.trim().startsWith(Cd))}function HM(e){return typeof Headers<"u"&&tr(e,Headers)}function VM(e,t,n){if(e.startsWith("data:")){const i=Tr(e);return{name:`${t} ${i}`,attributes:ug(e,void 0,t,n)}}const r=Ld(e),s=r?rM(r):e;return{name:`${t} ${s}`,attributes:ug(e,r,t,n)}}function ug(e,t,n,r){const s={url:Tr(e),type:"fetch","http.method":n,[Qe]:r,[rr]:"http.client"};return t&&(Nd(t)||(s["http.url"]=Tr(t.href),s["server.address"]=t.host),t.search&&(s["http.query"]=t.search),t.hash&&(s["http.fragment"]=t.hash)),s}function ES(e){if(e!==void 0)return e>=400&&e<500?"warning":e>=500?"error":void 0}const ko=Ce;function UM(){return"history"in ko&&!!ko.history}function WM(){if(!("fetch"in ko))return!1;try{return new Headers,new Request("data:,"),new Response,!0}catch{return!1}}function Qu(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function jM(){var n;if(typeof EdgeRuntime=="string")return!0;if(!WM())return!1;if(Qu(ko.fetch))return!0;let e=!1;const t=ko.document;if(t&&typeof t.createElement=="function")try{const r=t.createElement("iframe");r.hidden=!0,t.head.appendChild(r),(n=r.contentWindow)!=null&&n.fetch&&(e=Qu(r.contentWindow.fetch)),t.head.removeChild(r)}catch(r){oe&&X.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",r)}return e}function wS(e,t){const n="fetch";$r(n,e),Br(n,()=>TS(void 0,t))}function zM(e){const t="fetch-body-resolved";$r(t,e),Br(t,()=>TS(GM))}function TS(e,t=!1){t&&!jM()||$t(Ce,"fetch",function(n){return function(...r){const s=new Error,{method:i,url:o}=KM(r),a={args:r,fetchData:{method:i,url:o},startTimestamp:st()*1e3,virtualError:s,headers:YM(r)};return e||rn("fetch",{...a}),n.apply(Ce,r).then(async c=>(e?e(c):rn("fetch",{...a,endTimestamp:st()*1e3,response:c}),c),c=>{rn("fetch",{...a,endTimestamp:st()*1e3,error:c}),Yc(c)&&c.stack===void 0&&(c.stack=s.stack,Vt(c,"framesToPop",1));const l=Ie(),u=(l==null?void 0:l.getOptions().enhanceFetchErrorMessages)??"always";if(u!==!1&&c instanceof TypeError&&(c.message==="Failed to fetch"||c.message==="Load failed"||c.message==="NetworkError when attempting to fetch resource."))try{const h=new URL(a.fetchData.url).host;u==="always"?c.message=`${c.message} (${h})`:Vt(c,"__sentry_fetch_url_host__",h)}catch{}throw c})}})}async function qM(e,t){if(e!=null&&e.body){const n=e.body,r=n.getReader(),s=setTimeout(()=>{n.cancel().then(null,()=>{})},90*1e3);let i=!0;for(;i;){let o;try{o=setTimeout(()=>{n.cancel().then(null,()=>{})},5e3);const{done:a}=await r.read();clearTimeout(o),a&&(t(),i=!1)}catch{i=!1}finally{clearTimeout(o)}}clearTimeout(s),r.releaseLock(),n.cancel().then(null,()=>{})}}function GM(e){let t;try{t=e.clone()}catch{return}qM(t,()=>{rn("fetch-body-resolved",{endTimestamp:st()*1e3,response:e})})}function Da(e,t){return!!e&&typeof e=="object"&&!!e[t]}function fg(e){return typeof e=="string"?e:e?Da(e,"url")?e.url:e.toString?e.toString():"":""}function KM(e){if(e.length===0)return{method:"GET",url:""};if(e.length===2){const[n,r]=e;return{url:fg(n),method:Da(r,"method")?String(r.method).toUpperCase():_d(n)&&Da(n,"method")?String(n.method).toUpperCase():"GET"}}const t=e[0];return{url:fg(t),method:Da(t,"method")?String(t.method).toUpperCase():"GET"}}function YM(e){const[t,n]=e;try{if(typeof n=="object"&&n!==null&&"headers"in n&&n.headers)return new Headers(n.headers);if(_d(t))return new Headers(t.headers)}catch{}}function XM(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function JM(){return"npm"}function ZM(){return!XM()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function ef(){return typeof window<"u"&&(!ZM()||QM())}function QM(){const e=Ce.process;return(e==null?void 0:e.type)==="renderer"}const Ae=Ce;let tf=0;function CS(){return tf>0}function eP(){tf++,setTimeout(()=>{tf--})}function ui(e,t={}){function n(s){return typeof s=="function"}if(!n(e))return e;try{const s=e.__sentry_wrapped__;if(s)return typeof s=="function"?s:e;if(Sd(e))return e}catch{return e}const r=function(...s){try{const i=s.map(o=>ui(o,t));return e.apply(this,i)}catch(i){throw eP(),Jc(o=>{o.addEventProcessor(a=>(t.mechanism&&(Wu(a,void 0),oi(a,t.mechanism)),a.extra={...a.extra,arguments:s},a)),el(i)}),i}};try{for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(r[s]=e[s])}catch{}kb(r,e),Vt(e,"__sentry_wrapped__",r);try{Object.getOwnPropertyDescriptor(r,"name").configurable&&Object.defineProperty(r,"name",{get(){return e.name}})}catch{}return r}function Dd(){const e=Ii(),{referrer:t}=Ae.document||{},{userAgent:n}=Ae.navigator||{},r={...t&&{Referer:t},...n&&{"User-Agent":n}};return{url:e,headers:r}}function Fd(e,t){const n=$d(e,t),r={type:iP(t),value:oP(t)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===""&&(r.value="Unrecoverable error caught"),r}function tP(e,t,n,r){const s=Ie(),i=s==null?void 0:s.getOptions().normalizeDepth,o=fP(t),a={__serialized__:Gb(t,i)};if(o)return{exception:{values:[Fd(e,o)]},extra:a};const c={exception:{values:[{type:Xc(t)?t.constructor.name:r?"UnhandledRejection":"Error",value:lP(t,{isUnhandledRejection:r})}]},extra:a};if(n){const l=$d(e,n);l.length&&(c.exception.values[0].stacktrace={frames:l})}return c}function Kl(e,t){return{exception:{values:[Fd(e,t)]}}}function $d(e,t){const n=t.stacktrace||t.stack||"",r=rP(t),s=sP(t);try{return e(n,r,s)}catch{}return[]}const nP=/Minified React error #\d+;/i;function rP(e){return e&&nP.test(e.message)?1:0}function sP(e){return typeof e.framesToPop=="number"?e.framesToPop:0}function IS(e){return typeof WebAssembly<"u"&&typeof WebAssembly.Exception<"u"?e instanceof WebAssembly.Exception:!1}function iP(e){const t=e==null?void 0:e.name;return!t&&IS(e)?e.message&&Array.isArray(e.message)&&e.message.length==2?e.message[0]:"WebAssembly.Exception":t}function oP(e){const t=e==null?void 0:e.message;return IS(e)?Array.isArray(e.message)&&e.message.length==2?e.message[1]:"wasm exception":t?t.error&&typeof t.error.message=="string"?ng(t.error):ng(e):"No error message"}function aP(e,t,n,r){const s=(n==null?void 0:n.syntheticException)||void 0,i=Bd(e,t,s,r);return oi(i),i.level="error",n!=null&&n.event_id&&(i.event_id=n.event_id),Qc(i)}function cP(e,t,n="info",r,s){const i=(r==null?void 0:r.syntheticException)||void 0,o=nf(e,t,i,s);return o.level=n,r!=null&&r.event_id&&(o.event_id=r.event_id),Qc(o)}function Bd(e,t,n,r,s){let i;if(Tb(t)&&t.error)return Kl(e,t.error);if(Sm(t)||TA(t)){const o=t;if("stack"in t)i=Kl(e,t);else{const a=o.name||(Sm(o)?"DOMError":"DOMException"),c=o.message?`${a}: ${o.message}`:a;i=nf(e,c,n,r),Wu(i,c)}return"code"in o&&(i.tags={...i.tags,"DOMException.code":`${o.code}`}),i}return Yc(t)?Kl(e,t):To(t)||Xc(t)?(i=tP(e,t,n,s),oi(i,{synthetic:!0}),i):(i=nf(e,t,n,r),Wu(i,`${t}`),oi(i,{synthetic:!0}),i)}function nf(e,t,n,r){const s={};if(r&&n){const i=$d(e,n);i.length&&(s.exception={values:[{value:t,stacktrace:{frames:i}}]}),oi(s,{synthetic:!0})}if(vd(t)){const{__sentry_template_string__:i,__sentry_template_values__:o}=t;return s.logentry={message:i,params:o},s}return s.message=t,s}function lP(e,{isUnhandledRejection:t}){const n=AA(e),r=t?"promise rejection":"exception";return Tb(e)?`Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``:Xc(e)?`Event \`${uP(e)}\` (type=${e.type}) captured as ${r}`:`Object captured as ${r} with keys: ${n}`}function uP(e){try{const t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function fP(e){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const n=e[t];if(n instanceof Error)return n}}class dP extends KO{constructor(t){var u;const n=hP(t),r=Ae.SENTRY_SDK_SOURCE||JM();yS(n,"browser",["browser"],r),(u=n._metadata)!=null&&u.sdk&&(n._metadata.sdk.settings={infer_ip:n.sendDefaultPii?"auto":"never",...n._metadata.sdk.settings}),super(n);const{sendDefaultPii:s,sendClientReports:i,enableLogs:o,_experiments:a,enableMetrics:c}=this._options,l=c??(a==null?void 0:a.enableMetrics)??!0;Ae.document&&(i||o||l)&&Ae.document.addEventListener("visibilitychange",()=>{Ae.document.visibilityState==="hidden"&&(i&&this._flushOutcomes(),o&&iS(this),l&&aS(this))}),s&&this.on("beforeSendSession",cM)}eventFromException(t,n){return aP(this._options.stackParser,t,n,this._options.attachStacktrace)}eventFromMessage(t,n="info",r){return cP(this._options.stackParser,t,n,r,this._options.attachStacktrace)}_prepareEvent(t,n,r,s){return t.platform=t.platform||"javascript",super._prepareEvent(t,n,r,s)}}function hP(e){var t;return{release:typeof __SENTRY_RELEASE__=="string"?__SENTRY_RELEASE__:(t=Ae.SENTRY_RELEASE)==null?void 0:t.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...e}}const ms=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,me=Ce,pP=(e,t)=>e>t[1]?"poor":e>t[0]?"needs-improvement":"good",Go=(e,t,n,r)=>{let s,i;return o=>{t.value>=0&&(o||r)&&(i=t.value-(s??0),(i||s===void 0)&&(s=t.value,t.delta=i,t.rating=pP(t.value,n),e(t)))}},Ko=(e=!0)=>{var n,r;const t=(r=(n=me.performance)==null?void 0:n.getEntriesByType)==null?void 0:r.call(n,"navigation")[0];if(!e||t&&t.responseStart>0&&t.responseStart{const e=Ko();return(e==null?void 0:e.activationStart)??0};function Cr(e,t,n){me.document&&me.addEventListener(e,t,n)}function hc(e,t,n){me.document&&me.removeEventListener(e,t,n)}let Ys=-1;const kS=new Set,mP=()=>{var e,t;return((e=me.document)==null?void 0:e.visibilityState)==="hidden"&&!((t=me.document)!=null&&t.prerendering)?0:1/0},Fa=e=>{if(gP(e)&&Ys>-1){if(e.type==="visibilitychange"||e.type==="pagehide")for(const t of kS)t();isFinite(Ys)||(Ys=e.type==="visibilitychange"?e.timeStamp:0,hc("prerenderingchange",Fa,!0))}},Yo=()=>{var e;if(me.document&&Ys<0){const t=Ai();Ys=(me.document.prerendering||(e=globalThis.performance.getEntriesByType("visibility-state").filter(r=>r.name==="hidden"&&r.startTime>t)[0])==null?void 0:e.startTime)??mP(),Cr("visibilitychange",Fa,!0),Cr("pagehide",Fa,!0),Cr("prerenderingchange",Fa,!0)}return{get firstHiddenTime(){return Ys},onHidden(t){kS.add(t)}}};function gP(e){var t;return e.type==="pagehide"||((t=me.document)==null?void 0:t.visibilityState)==="hidden"}const yP=()=>`v5-${Date.now()}-${Math.floor(Math.random()*(9e12-1))+1e12}`,Xo=(e,t=-1)=>{var i,o;const n=Ko();let r="navigate";return n&&((i=me.document)!=null&&i.prerendering||Ai()>0?r="prerender":(o=me.document)!=null&&o.wasDiscarded?r="restore":n.type&&(r=n.type.replace(/_/g,"-"))),{name:e,value:t,rating:"good",delta:0,entries:[],id:yP(),navigationType:r}},Yl=new WeakMap;function Hd(e,t){try{return Yl.get(e)||Yl.set(e,new t),Yl.get(e)}catch{return new t}}class pc{constructor(){pc.prototype.__init.call(this),pc.prototype.__init2.call(this)}__init(){this._sessionValue=0}__init2(){this._sessionEntries=[]}_processEntry(t){var s;if(t.hadRecentInput)return;const n=this._sessionEntries[0],r=this._sessionEntries[this._sessionEntries.length-1];this._sessionValue&&n&&r&&t.startTime-r.startTime<1e3&&t.startTime-n.startTime<5e3?(this._sessionValue+=t.value,this._sessionEntries.push(t)):(this._sessionValue=t.value,this._sessionEntries=[t]),(s=this._onAfterProcessingUnexpectedShift)==null||s.call(this,t)}}const Oi=(e,t,n={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(e)){const r=new PerformanceObserver(s=>{Promise.resolve().then(()=>{t(s.getEntries())})});return r.observe({type:e,buffered:!0,...n}),r}}catch{}},Vd=e=>{let t=!1;return()=>{t||(e(),t=!0)}},tl=e=>{var t;(t=me.document)!=null&&t.prerendering?addEventListener("prerenderingchange",()=>e(),!0):e()},vP=[1800,3e3],_P=(e,t={})=>{tl(()=>{const n=Yo(),r=Xo("FCP");let s;const o=Oi("paint",a=>{for(const c of a)c.name==="first-contentful-paint"&&(o.disconnect(),c.startTime{_P(Vd(()=>{var c;const n=Xo("CLS",0);let r;const s=Yo(),i=Hd(t,pc),o=l=>{for(const u of l)i._processEntry(u);i._sessionValue>n.value&&(n.value=i._sessionValue,n.entries=i._sessionEntries,r())},a=Oi("layout-shift",o);a&&(r=Go(e,n,bP,t.reportAllChanges),s.onHidden(()=>{o(a.takeRecords()),r(!0)}),(c=me==null?void 0:me.setTimeout)==null||c.call(me,r))}))};let xS=0,Xl=1/0,ha=0;const EP=e=>{e.forEach(t=>{t.interactionId&&(Xl=Math.min(Xl,t.interactionId),ha=Math.max(ha,t.interactionId),xS=ha?(ha-Xl)/7+1:0)})};let rf;const RS=()=>rf?xS:performance.interactionCount||0,wP=()=>{"interactionCount"in performance||rf||(rf=Oi("event",EP,{type:"event",buffered:!0,durationThreshold:0}))},Jl=10;let AS=0;const TP=()=>RS()-AS;class mc{constructor(){mc.prototype.__init.call(this),mc.prototype.__init2.call(this)}__init(){this._longestInteractionList=[]}__init2(){this._longestInteractionMap=new Map}_resetInteractions(){AS=RS(),this._longestInteractionList.length=0,this._longestInteractionMap.clear()}_estimateP98LongestInteraction(){const t=Math.min(this._longestInteractionList.length-1,Math.floor(TP()/50));return this._longestInteractionList[t]}_processEntry(t){var s,i;if((s=this._onBeforeProcessingEntry)==null||s.call(this,t),!(t.interactionId||t.entryType==="first-input"))return;const n=this._longestInteractionList.at(-1);let r=this._longestInteractionMap.get(t.interactionId);if(r||this._longestInteractionList.lengthn._latency){if(r?t.duration>r._latency?(r.entries=[t],r._latency=t.duration):t.duration===r._latency&&t.startTime===r.entries[0].startTime&&r.entries.push(t):(r={id:t.interactionId,entries:[t],_latency:t.duration},this._longestInteractionMap.set(r.id,r),this._longestInteractionList.push(r)),this._longestInteractionList.sort((o,a)=>a._latency-o._latency),this._longestInteractionList.length>Jl){const o=this._longestInteractionList.splice(Jl);for(const a of o)this._longestInteractionMap.delete(a.id)}(i=this._onAfterProcessingINPCandidate)==null||i.call(this,r)}}}const OS=e=>{var n;const t=me.requestIdleCallback||me.setTimeout;((n=me.document)==null?void 0:n.visibilityState)==="hidden"?e():(e=Vd(e),Cr("visibilitychange",e,{once:!0,capture:!0}),Cr("pagehide",e,{once:!0,capture:!0}),t(()=>{e(),hc("visibilitychange",e,{capture:!0}),hc("pagehide",e,{capture:!0})}))},CP=[200,500],IP=40,kP=(e,t={})=>{if(!(globalThis.PerformanceEventTiming&&"interactionId"in PerformanceEventTiming.prototype))return;const n=Yo();tl(()=>{wP();const r=Xo("INP");let s;const i=Hd(t,mc),o=c=>{OS(()=>{for(const u of c)i._processEntry(u);const l=i._estimateP98LongestInteraction();l&&l._latency!==r.value&&(r.value=l._latency,r.entries=l.entries,s())})},a=Oi("event",o,{durationThreshold:t.durationThreshold??IP});s=Go(e,r,CP,t.reportAllChanges),a&&(a.observe({type:"first-input",buffered:!0}),n.onHidden(()=>{o(a.takeRecords()),s(!0)}))})};class xP{_processEntry(t){var n;(n=this._onBeforeProcessingEntry)==null||n.call(this,t)}}const RP=[2500,4e3],AP=(e,t={})=>{tl(()=>{const n=Yo(),r=Xo("LCP");let s;const i=Hd(t,xP),o=c=>{t.reportAllChanges||(c=c.slice(-1));for(const l of c)i._processEntry(l),l.startTime{o(a.takeRecords()),a.disconnect(),s(!0)}),l=u=>{u.isTrusted&&(OS(c),hc(u.type,l,{capture:!0}))};for(const u of["keydown","click","visibilitychange"])Cr(u,l,{capture:!0})}})},OP=[800,1800],sf=e=>{var t,n;(t=me.document)!=null&&t.prerendering?tl(()=>sf(e)):((n=me.document)==null?void 0:n.readyState)!=="complete"?addEventListener("load",()=>sf(e),!0):setTimeout(e)},MP=(e,t={})=>{const n=Xo("TTFB"),r=Go(e,n,OP,t.reportAllChanges);sf(()=>{const s=Ko();s&&(n.value=Math.max(s.responseStart-Ai(),0),n.entries=[s],r(!0))})},no={},gc={};let MS,PS,NS,LS;function Ud(e,t=!1){return nl("cls",e,NP,MS,t)}function Wd(e,t=!1){return nl("lcp",e,LP,PS,t)}function PP(e){return nl("ttfb",e,DP,NS)}function DS(e){return nl("inp",e,FP,LS)}function gs(e,t){return FS(e,t),gc[e]||($P(e),gc[e]=!0),$S(e,t)}function Jo(e,t){const n=no[e];if(n!=null&&n.length)for(const r of n)try{r(t)}catch(s){ms&&X.error(`Error while triggering instrumentation handler. -Type: ${e} -Name: ${er(r)} -Error:`,s)}}function NP(){return SP(e=>{Jo("cls",{metric:e}),MS=e},{reportAllChanges:!0})}function LP(){return AP(e=>{Jo("lcp",{metric:e}),PS=e},{reportAllChanges:!0})}function DP(){return MP(e=>{Jo("ttfb",{metric:e}),NS=e})}function FP(){return kP(e=>{Jo("inp",{metric:e}),LS=e})}function nl(e,t,n,r,s=!1){FS(e,t);let i;return gc[e]||(i=n(),gc[e]=!0),r&&t({metric:r}),$S(e,t,s?i:void 0)}function $P(e){const t={};e==="event"&&(t.durationThreshold=0),Oi(e,n=>{Jo(e,{entries:n})},t)}function FS(e,t){no[e]=no[e]||[],no[e].push(t)}function $S(e,t,n){return()=>{n&&n();const r=no[e];if(!r)return;const s=r.indexOf(t);s!==-1&&r.splice(s,1)}}function BP(e){return"duration"in e}const HP=e=>{const t=n=>{var r;(n.type==="pagehide"||((r=me.document)==null?void 0:r.visibilityState)==="hidden")&&e(n)};Cr("visibilitychange",t,{capture:!0,once:!0}),Cr("pagehide",t,{capture:!0,once:!0})};function Zl(e){return typeof e=="number"&&isFinite(e)}function Mr(e,t,n,{...r}){const s=ke(e).start_timestamp;return s&&s>t&&typeof e.updateStartTime=="function"&&e.updateStartTime(t),Rd(e,()=>{const i=Ar({startTime:t,...r});return i&&i.end(n),i})}function jd(e){var y;const t=Ie();if(!t)return;const{name:n,transaction:r,attributes:s,startTime:i}=e,{release:o,environment:a,sendDefaultPii:c}=t.getOptions(),l=t.getIntegrationByName("Replay"),u=l==null?void 0:l.getReplayId(),f=De(),d=f.getUser(),h=d!==void 0?d.email||d.id||d.ip_address:void 0;let p;try{p=f.getScopeData().contexts.profile.profile_id}catch{}const m={release:o,environment:a,user:h||void 0,profile_id:p||void 0,replay_id:u||void 0,transaction:r,"user_agent.original":(y=me.navigator)==null?void 0:y.userAgent,"client.address":c?"{{auto}}":void 0,...s};return Ar({name:n,attributes:m,startTime:i,experimental:{standalone:!0}})}function Zo(){return me.addEventListener&&me.performance}function nt(e){return e/1e3}function VP(e){let t="unknown",n="unknown",r="";for(const s of e){if(s==="/"){[t,n]=e.split("/");break}if(!isNaN(Number(s))){t=r==="h"?"http":r,n=e.split(r)[1];break}r+=s}return r===e&&(t=r),{name:t,version:n}}function BS(e){try{return PerformanceObserver.supportedEntryTypes.includes(e)}catch{return!1}}function HS(e,t){let n,r=!1;function s(a){!r&&n&&t(a,n),r=!0}HP(()=>{s("pagehide")});const i=e.on("beforeStartNavigationSpan",(a,c)=>{c!=null&&c.isRedirect||(s("navigation"),i(),o())}),o=e.on("afterStartPageLoadSpan",a=>{n=a.spanContext().spanId,o()})}function UP(e){let t=0,n;if(!BS("layout-shift"))return;const r=Ud(({metric:s})=>{const i=s.entries[s.entries.length-1];i&&(t=s.value,n=i)},!0);HS(e,(s,i)=>{WP(t,n,i,s),r()})}function WP(e,t,n,r){var l;ms&&X.log(`Sending CLS span (${e})`);const s=t?nt((Ut()||0)+t.startTime):st(),i=De().getScopeData().transactionName,o=t?Ht((l=t.sources[0])==null?void 0:l.node):"Layout shift",a={[Qe]:"auto.http.browser.cls",[rr]:"ui.webvital.cls",[xi]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t!=null&&t.sources&&t.sources.forEach((u,f)=>{a[`cls.source.${f+1}`]=Ht(u.node)});const c=jd({name:o,transaction:i,attributes:a,startTime:s});c&&(c.addEvent("cls",{[zo]:"",[qo]:e}),c.end(s))}function jP(e){let t=0,n;if(!BS("largest-contentful-paint"))return;const r=Wd(({metric:s})=>{const i=s.entries[s.entries.length-1];i&&(t=s.value,n=i)},!0);HS(e,(s,i)=>{zP(t,n,i,s),r()})}function zP(e,t,n,r){ms&&X.log(`Sending LCP span (${e})`);const s=nt((Ut()||0)+((t==null?void 0:t.startTime)||0)),i=De().getScopeData().transactionName,o=t?Ht(t.element):"Largest contentful paint",a={[Qe]:"auto.http.browser.lcp",[rr]:"ui.webvital.lcp",[xi]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t&&(t.element&&(a["lcp.element"]=Ht(t.element)),t.id&&(a["lcp.id"]=t.id),t.url&&(a["lcp.url"]=t.url),t.loadTime!=null&&(a["lcp.loadTime"]=t.loadTime),t.renderTime!=null&&(a["lcp.renderTime"]=t.renderTime),t.size!=null&&(a["lcp.size"]=t.size));const c=jd({name:o,transaction:i,attributes:a,startTime:s});c&&(c.addEvent("lcp",{[zo]:"millisecond",[qo]:e}),c.end(s))}function Zt(e){return e&&((Ut()||performance.timeOrigin)+e)/1e3}function VS(e){var n;const t={};if(e.nextHopProtocol!=null){const{name:r,version:s}=VP(e.nextHopProtocol);t["network.protocol.version"]=s,t["network.protocol.name"]=r}return Ut()||(n=Zo())!=null&&n.timeOrigin?qP({...t,"http.request.redirect_start":Zt(e.redirectStart),"http.request.redirect_end":Zt(e.redirectEnd),"http.request.worker_start":Zt(e.workerStart),"http.request.fetch_start":Zt(e.fetchStart),"http.request.domain_lookup_start":Zt(e.domainLookupStart),"http.request.domain_lookup_end":Zt(e.domainLookupEnd),"http.request.connect_start":Zt(e.connectStart),"http.request.secure_connection_start":Zt(e.secureConnectionStart),"http.request.connection_end":Zt(e.connectEnd),"http.request.request_start":Zt(e.requestStart),"http.request.response_start":Zt(e.responseStart),"http.request.response_end":Zt(e.responseEnd),"http.request.time_to_first_byte":e.responseStart!=null?e.responseStart/1e3:void 0}):t}function qP(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!=null))}const GP=2147483647;let dg=0,fn={},Dt,$s;function KP({recordClsStandaloneSpans:e,recordLcpStandaloneSpans:t,client:n}){const r=Zo();if(r&&Ut()){r.mark&&me.performance.mark("sentry-tracing-init");const s=t?jP(n):QP(),i=eN(),o=e?UP(n):ZP();return()=>{s==null||s(),i(),o==null||o()}}return()=>{}}function YP(){gs("longtask",({entries:e})=>{const t=bt();if(!t)return;const{op:n,start_timestamp:r}=ke(t);for(const s of e){const i=nt(Ut()+s.startTime),o=nt(s.duration);n==="navigation"&&r&&i{const n=bt();if(n)for(const r of t.getEntries()){if(!r.scripts[0])continue;const s=nt(Ut()+r.startTime),{start_timestamp:i,op:o}=ke(n);if(o==="navigation"&&i&&s{const t=bt();if(t){for(const n of e)if(n.name==="click"){const r=nt(Ut()+n.startTime),s=nt(n.duration),i={name:Ht(n.target),op:`ui.interaction.${n.name}`,startTime:r,attributes:{[Qe]:"auto.ui.browser.metrics"}},o=Ib(n.target);o&&(i.attributes["ui.component_name"]=o),Mr(t,r,r+s,i)}}})}function ZP(){return Ud(({metric:e})=>{const t=e.entries[e.entries.length-1];t&&(fn.cls={value:e.value,unit:""},$s=t)},!0)}function QP(){return Wd(({metric:e})=>{const t=e.entries[e.entries.length-1];t&&(fn.lcp={value:e.value,unit:"millisecond"},Dt=t)},!0)}function eN(){return PP(({metric:e})=>{e.entries[e.entries.length-1]&&(fn.ttfb={value:e.value,unit:"millisecond"})})}function tN(e,t){const n=Zo(),r=Ut();if(!(n!=null&&n.getEntries)||!r)return;const s=nt(r),i=n.getEntries(),{op:o,start_timestamp:a}=ke(e);i.slice(dg).forEach(c=>{const l=nt(c.startTime),u=nt(Math.max(0,c.duration));if(!(o==="navigation"&&a&&s+l{j1(c,l.value,l.unit)}),e.setAttribute("performance.timeOrigin",s),e.setAttribute("performance.activationStart",Ai()),uN(e,t)),Dt=void 0,$s=void 0,fn={}}function nN(e){if((e==null?void 0:e.entryType)==="measure")try{return e.detail.devtools.track==="Components ⚛"}catch{return}}function rN(e,t,n,r,s,i){if(nN(t)||["mark","measure"].includes(t.entryType)&&Gn(t.name,i))return;const o=Ko(!1),a=nt(o?o.requestStart:0),c=s+Math.max(n,a),l=s+n,u=l+r,f={[Qe]:"auto.resource.browser.metrics"};c!==l&&(f["sentry.browser.measure_happened_before_request"]=!0,f["sentry.browser.measure_start_time"]=c),sN(f,t),c<=u&&Mr(e,c,u,{name:t.name,op:t.entryType,attributes:f})}function sN(e,t){try{const n=t.detail;if(!n)return;if(typeof n=="object"){for(const[r,s]of Object.entries(n))if(s&&ii(s))e[`sentry.browser.measure.detail.${r}`]=s;else if(s!==void 0)try{e[`sentry.browser.measure.detail.${r}`]=JSON.stringify(s)}catch{}return}if(ii(n)){e["sentry.browser.measure.detail"]=n;return}try{e["sentry.browser.measure.detail"]=JSON.stringify(n)}catch{}}catch{}}function iN(e,t,n){["unloadEvent","redirect","domContentLoadedEvent","loadEvent","connect"].forEach(r=>{pa(e,t,r,n)}),pa(e,t,"secureConnection",n,"TLS/SSL"),pa(e,t,"fetch",n,"cache"),pa(e,t,"domainLookup",n,"DNS"),aN(e,t,n)}function pa(e,t,n,r,s=n){const i=oN(n),o=t[i],a=t[`${n}Start`];!a||!o||Mr(e,r+nt(a),r+nt(o),{op:`browser.${s}`,name:t.name,attributes:{[Qe]:"auto.ui.browser.metrics",...n==="redirect"&&t.redirectCount!=null?{"http.redirect_count":t.redirectCount}:{}}})}function oN(e){return e==="secureConnection"?"connectEnd":e==="fetch"?"domainLookupStart":`${e}End`}function aN(e,t,n){const r=n+nt(t.requestStart),s=n+nt(t.responseEnd),i=n+nt(t.responseStart);t.responseEnd&&(Mr(e,r,s,{op:"browser.request",name:t.name,attributes:{[Qe]:"auto.ui.browser.metrics"}}),Mr(e,i,s,{op:"browser.response",name:t.name,attributes:{[Qe]:"auto.ui.browser.metrics"}}))}function cN(e,t,n,r,s,i,o){if(t.initiatorType==="xmlhttprequest"||t.initiatorType==="fetch")return;const a=t.initiatorType?`resource.${t.initiatorType}`:"resource.other";if(o!=null&&o.includes(a))return;const c={[Qe]:"auto.resource.browser.metrics"},l=cs(n);l.protocol&&(c["url.scheme"]=l.protocol.split(":").pop()),l.host&&(c["server.address"]=l.host),c["url.same_origin"]=n.includes(me.location.origin),fN(t,c,[["responseStatus","http.response.status_code"],["transferSize","http.response_transfer_size"],["encodedBodySize","http.response_content_length"],["decodedBodySize","http.decoded_response_content_length"],["renderBlockingStatus","resource.render_blocking_status"],["deliveryType","http.response_delivery_type"]]);const u={...c,...VS(t)},f=i+r,d=f+s;Mr(e,f,d,{name:n.replace(me.location.origin,""),op:a,attributes:u})}function lN(e){const t=me.navigator;if(!t)return;const n=t.connection;n&&(n.effectiveType&&e.setAttribute("effectiveConnectionType",n.effectiveType),n.type&&e.setAttribute("connectionType",n.type),Zl(n.rtt)&&(fn["connection.rtt"]={value:n.rtt,unit:"millisecond"})),Zl(t.deviceMemory)&&e.setAttribute("deviceMemory",`${t.deviceMemory} GB`),Zl(t.hardwareConcurrency)&&e.setAttribute("hardwareConcurrency",String(t.hardwareConcurrency))}function uN(e,t){Dt&&t.recordLcpOnPageloadSpan&&(Dt.element&&e.setAttribute("lcp.element",Ht(Dt.element)),Dt.id&&e.setAttribute("lcp.id",Dt.id),Dt.url&&e.setAttribute("lcp.url",Dt.url.trim().slice(0,200)),Dt.loadTime!=null&&e.setAttribute("lcp.loadTime",Dt.loadTime),Dt.renderTime!=null&&e.setAttribute("lcp.renderTime",Dt.renderTime),e.setAttribute("lcp.size",Dt.size)),$s!=null&&$s.sources&&t.recordClsOnPageloadSpan&&$s.sources.forEach((n,r)=>e.setAttribute(`cls.source.${r+1}`,Ht(n.node)))}function fN(e,t,n){n.forEach(([r,s])=>{const i=e[r];i!=null&&(typeof i=="number"&&i{}}const pN=({entries:e})=>{const t=bt(),n=t?vt(t):void 0,r=n?ke(n).description:De().getScopeData().transactionName;e.forEach(s=>{var h,p;const i=s;if(!i.identifier)return;const o=i.name,a=i.renderTime,c=i.loadTime,[l,u]=c?[nt(c),"load-time"]:a?[nt(a),"render-time"]:[st(),"entry-emission"],f=o==="image-paint"?nt(Math.max(0,(a??0)-(c??0))):0,d={[Qe]:"auto.ui.browser.elementtiming",[rr]:"ui.elementtiming",[Bt]:"component","sentry.span_start_time_source":u,"sentry.transaction_name":r,"element.id":i.id,"element.type":((p=(h=i.element)==null?void 0:h.tagName)==null?void 0:p.toLowerCase())||"unknown","element.size":i.naturalWidth&&i.naturalHeight?`${i.naturalWidth}x${i.naturalHeight}`:void 0,"element.render_time":a,"element.load_time":c,"element.url":i.url||void 0,"element.identifier":i.identifier,"element.paint_type":o};X1({name:`element[${i.identifier}]`,attributes:d,startTime:l,onlyIfParent:!0},m=>{m.end(l+f)})})},mN=1e3;let hg,of,af;function US(e){const t="dom";$r(t,e),Br(t,gN)}function gN(){if(!me.document)return;const e=rn.bind(null,"dom"),t=pg(e,!0);me.document.addEventListener("click",t,!1),me.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(n=>{var i,o;const s=(i=me[n])==null?void 0:i.prototype;(o=s==null?void 0:s.hasOwnProperty)!=null&&o.call(s,"addEventListener")&&($t(s,"addEventListener",function(a){return function(c,l,u){if(c==="click"||c=="keypress")try{const f=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},d=f[c]=f[c]||{refCount:0};if(!d.handler){const h=pg(e);d.handler=h,a.call(this,c,h,u)}d.refCount++}catch{}return a.call(this,c,l,u)}}),$t(s,"removeEventListener",function(a){return function(c,l,u){if(c==="click"||c=="keypress")try{const f=this.__sentry_instrumentation_handlers__||{},d=f[c];d&&(d.refCount--,d.refCount<=0&&(a.call(this,c,d.handler,u),d.handler=void 0,delete f[c]),Object.keys(f).length===0&&delete this.__sentry_instrumentation_handlers__)}catch{}return a.call(this,c,l,u)}}))})}function yN(e){if(e.type!==of)return!1;try{if(!e.target||e.target._sentryId!==af)return!1}catch{}return!0}function vN(e,t){return e!=="keypress"?!1:t!=null&&t.tagName?!(t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable):!0}function pg(e,t=!1){return n=>{if(!n||n._sentryCaptured)return;const r=_N(n);if(vN(n.type,r))return;Vt(n,"_sentryCaptured",!0),r&&!r._sentryId&&Vt(r,"_sentryId",Kt());const s=n.type==="keypress"?"input":n.type;yN(n)||(e({event:n,name:s,global:t}),of=n.type,af=r?r._sentryId:void 0),clearTimeout(hg),hg=me.setTimeout(()=>{af=void 0,of=void 0},mN)}}function _N(e){try{return e.target}catch{return null}}let ma;function rl(e){const t="history";$r(t,e),Br(t,bN)}function bN(){if(me.addEventListener("popstate",()=>{const t=me.location.href,n=ma;if(ma=t,n===t)return;rn("history",{from:n,to:t})}),!UM())return;function e(t){return function(...n){const r=n.length>2?n[2]:void 0;if(r){const s=ma,i=SN(String(r));if(ma=i,s===i)return t.apply(this,n);rn("history",{from:s,to:i})}return t.apply(this,n)}}$t(me.history,"pushState",e),$t(me.history,"replaceState",e)}function SN(e){try{return new URL(e,me.location.origin).toString()}catch{return e}}const $a={};function WS(e){const t=$a[e];if(t)return t;let n=me[e];if(Qu(n))return $a[e]=n.bind(me);const r=me.document;if(r&&typeof r.createElement=="function")try{const s=r.createElement("iframe");s.hidden=!0,r.head.appendChild(s);const i=s.contentWindow;i!=null&&i[e]&&(n=i[e]),r.head.removeChild(s)}catch(s){ms&&X.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,s)}return n&&($a[e]=n.bind(me))}function EN(e){$a[e]=void 0}function Qo(...e){return WS("setTimeout")(...e)}const Zr="__sentry_xhr_v3__";function jS(e){const t="xhr";$r(t,e),Br(t,wN)}function wN(){if(!me.XMLHttpRequest)return;const e=XMLHttpRequest.prototype;e.open=new Proxy(e.open,{apply(t,n,r){const s=new Error,i=st()*1e3,o=qn(r[0])?r[0].toUpperCase():void 0,a=TN(r[1]);if(!o||!a)return t.apply(n,r);n[Zr]={method:o,url:a,request_headers:{}},o==="POST"&&a.match(/sentry_key/)&&(n.__sentry_own_request__=!0);const c=()=>{const l=n[Zr];if(l&&n.readyState===4){try{l.status_code=n.status}catch{}const u={endTimestamp:st()*1e3,startTimestamp:i,xhr:n,virtualError:s};rn("xhr",u)}};return"onreadystatechange"in n&&typeof n.onreadystatechange=="function"?n.onreadystatechange=new Proxy(n.onreadystatechange,{apply(l,u,f){return c(),l.apply(u,f)}}):n.addEventListener("readystatechange",c),n.setRequestHeader=new Proxy(n.setRequestHeader,{apply(l,u,f){const[d,h]=f,p=u[Zr];return p&&qn(d)&&qn(h)&&(p.request_headers[d.toLowerCase()]=h),l.apply(u,f)}}),t.apply(n,r)}}),e.send=new Proxy(e.send,{apply(t,n,r){const s=n[Zr];if(!s)return t.apply(n,r);r[0]!==void 0&&(s.body=r[0]);const i={startTimestamp:st()*1e3,xhr:n};return rn("xhr",i),t.apply(n,r)}})}function TN(e){if(qn(e))return e;try{return e.toString()}catch{}}const CN=Symbol.for("sentry__originalRequestBody");function zS(e){return new URLSearchParams(e).toString()}function qS(e,t=X){try{if(typeof e=="string")return[e];if(e instanceof URLSearchParams)return[e.toString()];if(e instanceof FormData)return[zS(e)];if(!e)return[void 0]}catch(n){return ms&&t.error(n,"Failed to serialize body",e),[void 0,"BODY_PARSE_ERROR"]}return ms&&t.log("Skipping network body because of body type",e),[void 0,"UNPARSEABLE_BODY_TYPE"]}function GS(e=[]){if(e.length>=2&&e[1]&&typeof e[1]=="object"&&"body"in e[1])return e[1].body;if(e.length>=1&&e[0]instanceof Request){const n=e[0][CN];return n!==void 0?n:void 0}}function KS(e){let t;try{t=e.getAllResponseHeaders()}catch(n){return ms&&X.error(n,"Failed to get xhr response headers",e),{}}return t?t.split(`\r -`).reduce((n,r)=>{const[s,i]=r.split(": ");return i&&(n[s.toLowerCase()]=i),n},{}):{}}const Ql=[],Ba=new Map,xs=new Map,IN=60;function kN(){if(Zo()&&Ut()){const t=xN();return()=>{t()}}return()=>{}}const cf={click:"click",pointerdown:"click",pointerup:"click",mousedown:"click",mouseup:"click",touchstart:"click",touchend:"click",mouseover:"hover",mouseout:"hover",mouseenter:"hover",mouseleave:"hover",pointerover:"hover",pointerout:"hover",pointerenter:"hover",pointerleave:"hover",dragstart:"drag",dragend:"drag",drag:"drag",dragenter:"drag",dragleave:"drag",dragover:"drag",drop:"drag",keydown:"press",keyup:"press",keypress:"press",input:"press"};function xN(){return DS(RN)}const RN=({metric:e})=>{if(e.value==null)return;const t=nt(e.value);if(t>IN)return;const n=e.entries.find(p=>p.duration===e.value&&cf[p.name]);if(!n)return;const{interactionId:r}=n,s=cf[n.name],i=nt(Ut()+n.startTime),o=bt(),a=o?vt(o):void 0,c=r!=null?Ba.get(r):void 0,l=(c==null?void 0:c.span)||a,u=l?ke(l).description:De().getScopeData().transactionName,f=(c==null?void 0:c.elementName)||Ht(n.target),d={[Qe]:"auto.http.browser.inp",[rr]:`ui.interaction.${s}`,[xi]:n.duration},h=jd({name:f,transaction:u,attributes:d,startTime:i});h&&(h.addEvent("inp",{[zo]:"millisecond",[qo]:e.value}),h.end(i+t))};function AN(){const e=Object.keys(cf);ef()&&e.forEach(s=>{me.addEventListener(s,t,{capture:!0,passive:!0})});function t(s){const i=s.target;if(!i)return;const o=Ht(i),a=Math.round(s.timeStamp);if(xs.set(a,o),xs.size>50){const c=xs.keys().next().value;c!==void 0&&xs.delete(c)}}function n(s){const i=Math.round(s.startTime);let o=xs.get(i);if(!o)for(let a=-5;a<=5;a++){const c=xs.get(i+a);if(c){o=c;break}}return o||""}const r=({entries:s})=>{const i=bt(),o=i&&vt(i);s.forEach(a=>{if(!BP(a))return;const c=a.interactionId;if(c==null||Ba.has(c))return;const l=a.target?Ht(a.target):n(a);if(Ql.length>10){const u=Ql.shift();Ba.delete(u)}Ql.push(c),Ba.set(c,{span:o,elementName:l})})};gs("event",r),gs("first-input",r)}const ON=40;function MN(e,t=WS("fetch")){let n=0,r=0;async function s(i){const o=i.body.length;n+=o,r++;const a={body:i.body,method:"POST",referrerPolicy:"strict-origin",headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{const c=await t(e.url,a);return{statusCode:c.status,headers:{"x-sentry-rate-limits":c.headers.get("X-Sentry-Rate-Limits"),"retry-after":c.headers.get("Retry-After")}}}catch(c){throw EN("fetch"),c}finally{n-=o,r--}}return WO(e,s,Pd(e.bufferSize||ON))}const an=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,PN=30,NN=50;function lf(e,t,n,r){const s={filename:e,function:t===""?hs:t,in_app:!0};return n!==void 0&&(s.lineno=n),r!==void 0&&(s.colno=r),s}const LN=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,DN=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,FN=/\((\S*)(?::(\d+))(?::(\d+))\)/,$N=/at (.+?) ?\(data:(.+?),/,BN=e=>{const t=e.match($N);if(t)return{filename:``,function:t[1]};const n=LN.exec(e);if(n){const[,s,i,o]=n;return lf(s,hs,+i,+o)}const r=DN.exec(e);if(r){if(r[2]&&r[2].indexOf("eval")===0){const a=FN.exec(r[2]);a&&(r[2]=a[1],r[3]=a[2],r[4]=a[3])}const[i,o]=YS(r[1]||hs,r[2]);return lf(o,i,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},HN=[PN,BN],VN=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,UN=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,WN=e=>{const t=VN.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){const i=UN.exec(t[3]);i&&(t[1]=t[1]||"eval",t[3]=i[1],t[4]=i[2],t[5]="")}let r=t[3],s=t[1]||hs;return[s,r]=YS(s,r),lf(r,s,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},jN=[NN,WN],zN=[HN,jN],qN=_b(...zN),YS=(e,t)=>{const n=e.indexOf("safari-extension")!==-1,r=e.indexOf("safari-web-extension")!==-1;return n||r?[e.indexOf("@")!==-1?e.split("@")[0]:hs,n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},ga=1024,GN="Breadcrumbs",KN=(e={})=>{const t={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e};return{name:GN,setup(n){t.console&&xM(ZN(n)),t.dom&&US(JN(n,t.dom)),t.xhr&&jS(QN(n)),t.fetch&&wS(eL(n)),t.history&&rl(tL(n)),t.sentry&&n.on("beforeSendEvent",XN(n))}}},YN=KN;function XN(e){return function(n){Ie()===e&&Or({category:`sentry.${n.type==="transaction"?"transaction":"event"}`,event_id:n.event_id,level:n.level,message:Xr(n)},{event:n})}}function JN(e,t){return function(r){if(Ie()!==e)return;let s,i,o=typeof t=="object"?t.serializeAttribute:void 0,a=typeof t=="object"&&typeof t.maxStringLength=="number"?t.maxStringLength:void 0;a&&a>ga&&(an&&X.warn(`\`dom.maxStringLength\` cannot exceed ${ga}, but a value of ${a} was configured. Sentry will use ${ga} instead.`),a=ga),typeof o=="string"&&(o=[o]);try{const l=r.event,u=nL(l)?l.target:l;s=Ht(u,{keyAttrs:o,maxStringLength:a}),i=Ib(u)}catch{s=""}if(s.length===0)return;const c={category:`ui.${r.name}`,message:s};i&&(c.data={"ui.component_name":i}),Or(c,{event:r.event,name:r.name,global:r.global})}}function ZN(e){return function(n){if(Ie()!==e)return;const r={category:"console",data:{arguments:n.args,logger:"console"},level:_S(n.level),message:Tm(n.args," ")};if(n.level==="assert")if(n.args[0]===!1)r.message=`Assertion failed: ${Tm(n.args.slice(1)," ")||"console.assert"}`,r.data.arguments=n.args.slice(1);else return;Or(r,{input:n.args,level:n.level})}}function QN(e){return function(n){if(Ie()!==e)return;const{startTimestamp:r,endTimestamp:s}=n,i=n.xhr[Zr];if(!r||!s||!i)return;const{method:o,url:a,status_code:c,body:l}=i,u={method:o,url:a,status_code:c},f={xhr:n.xhr,input:l,startTimestamp:r,endTimestamp:s},d={category:"xhr",data:u,type:"http",level:ES(c)};e.emit("beforeOutgoingRequestBreadcrumb",d,f),Or(d,f)}}function eL(e){return function(n){if(Ie()!==e)return;const{startTimestamp:r,endTimestamp:s}=n;if(s&&!(n.fetchData.url.match(/sentry_key/)&&n.fetchData.method==="POST"))if(n.fetchData.method,n.fetchData.url,n.error){const i=n.fetchData,o={data:n.error,input:n.args,startTimestamp:r,endTimestamp:s},a={category:"fetch",data:i,level:"error",type:"http"};e.emit("beforeOutgoingRequestBreadcrumb",a,o),Or(a,o)}else{const i=n.response,o={...n.fetchData,status_code:i==null?void 0:i.status};n.fetchData.request_body_size,n.fetchData.response_body_size,i==null||i.status;const a={input:n.args,response:i,startTimestamp:r,endTimestamp:s},c={category:"fetch",data:o,type:"http",level:ES(o.status_code)};e.emit("beforeOutgoingRequestBreadcrumb",c,a),Or(c,a)}}}function tL(e){return function(n){if(Ie()!==e)return;let r=n.from,s=n.to;const i=cs(Ae.location.href);let o=r?cs(r):void 0;const a=cs(s);o!=null&&o.path||(o=i),i.protocol===a.protocol&&i.host===a.host&&(s=a.relative),i.protocol===o.protocol&&i.host===o.host&&(r=o.relative),Or({category:"navigation",data:{from:r,to:s}})}}function nL(e){return!!e&&!!e.target}const rL=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","BroadcastChannel","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","SharedWorker","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"],sL="BrowserApiErrors",iL=(e={})=>{const t={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...e};return{name:sL,setupOnce(){t.setTimeout&&$t(Ae,"setTimeout",mg),t.setInterval&&$t(Ae,"setInterval",mg),t.requestAnimationFrame&&$t(Ae,"requestAnimationFrame",aL),t.XMLHttpRequest&&"XMLHttpRequest"in Ae&&$t(XMLHttpRequest.prototype,"send",cL);const n=t.eventTarget;n&&(Array.isArray(n)?n:rL).forEach(s=>lL(s,t))}}},oL=iL;function mg(e){return function(...t){const n=t[0];return t[0]=ui(n,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${er(e)}`}}),e.apply(this,t)}}function aL(e){return function(t){return e.apply(this,[ui(t,{mechanism:{data:{handler:er(e)},handled:!1,type:"auto.browser.browserapierrors.requestAnimationFrame"}})])}}function cL(e){return function(...t){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(s=>{s in n&&typeof n[s]=="function"&&$t(n,s,function(i){const o={mechanism:{data:{handler:er(i)},handled:!1,type:`auto.browser.browserapierrors.xhr.${s}`}},a=Sd(i);return a&&(o.mechanism.data.handler=er(a)),ui(i,o)})}),e.apply(this,t)}}function lL(e,t){var s,i;const r=(s=Ae[e])==null?void 0:s.prototype;(i=r==null?void 0:r.hasOwnProperty)!=null&&i.call(r,"addEventListener")&&($t(r,"addEventListener",function(o){return function(a,c,l){try{uL(c)&&(c.handleEvent=ui(c.handleEvent,{mechanism:{data:{handler:er(c),target:e},handled:!1,type:"auto.browser.browserapierrors.handleEvent"}}))}catch{}return t.unregisterOriginalCallbacks&&fL(this,a,c),o.apply(this,[a,ui(c,{mechanism:{data:{handler:er(c),target:e},handled:!1,type:"auto.browser.browserapierrors.addEventListener"}}),l])}}),$t(r,"removeEventListener",function(o){return function(a,c,l){try{const u=c.__sentry_wrapped__;u&&o.call(this,a,u,l)}catch{}return o.call(this,a,c,l)}}))}function uL(e){return typeof e.handleEvent=="function"}function fL(e,t,n){e&&typeof e=="object"&&"removeEventListener"in e&&typeof e.removeEventListener=="function"&&e.removeEventListener(t,n)}const dL=()=>({name:"BrowserSession",setupOnce(){if(typeof Ae.document>"u"){an&&X.warn("Using the `browserSessionIntegration` in non-browser environments is not supported.");return}zm({ignoreDuration:!0}),qm(),rl(({from:e,to:t})=>{e!==void 0&&e!==t&&(zm({ignoreDuration:!0}),qm())})}}),hL="GlobalHandlers",pL=(e={})=>{const t={onerror:!0,onunhandledrejection:!0,...e};return{name:hL,setupOnce(){Error.stackTraceLimit=50},setup(n){t.onerror&&(gL(n),gg("onerror")),t.onunhandledrejection&&(yL(n),gg("onunhandledrejection"))}}},mL=pL;function gL(e){Sb(t=>{const{stackParser:n,attachStacktrace:r}=XS();if(Ie()!==e||CS())return;const{msg:s,url:i,line:o,column:a,error:c}=t,l=bL(Bd(n,c||s,void 0,r,!1),i,o,a);l.level="error",tS(l,{originalException:c,mechanism:{handled:!1,type:"auto.browser.global_handlers.onerror"}})})}function yL(e){Eb(t=>{const{stackParser:n,attachStacktrace:r}=XS();if(Ie()!==e||CS())return;const s=vL(t),i=ii(s)?_L(s):Bd(n,s,void 0,r,!0);i.level="error",tS(i,{originalException:s,mechanism:{handled:!1,type:"auto.browser.global_handlers.onunhandledrejection"}})})}function vL(e){if(ii(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}function _L(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function bL(e,t,n,r){const s=e.exception=e.exception||{},i=s.values=s.values||[],o=i[0]=i[0]||{},a=o.stacktrace=o.stacktrace||{},c=a.frames=a.frames||[],l=r,u=n,f=SL(t)??Ii();return c.length===0&&c.push({colno:l,filename:f,function:hs,in_app:!0,lineno:u}),e}function gg(e){an&&X.log(`Global Handler attached: ${e}`)}function XS(){const e=Ie();return(e==null?void 0:e.getOptions())||{stackParser:()=>[],attachStacktrace:!1}}function SL(e){if(!(!qn(e)||e.length===0))return e.startsWith("data:")?`<${Tr(e,!1)}>`:e}const EL=()=>({name:"HttpContext",preprocessEvent(e){var r;if(!Ae.navigator&&!Ae.location&&!Ae.document)return;const t=Dd(),n={...t.headers,...(r=e.request)==null?void 0:r.headers};e.request={...t,...e.request,headers:n}}}),wL="cause",TL=5,CL="LinkedErrors",IL=(e={})=>{const t=e.limit||TL,n=e.key||wL;return{name:CL,preprocessEvent(r,s,i){const o=i.getOptions();kM(Fd,o.stackParser,n,t,r,s)}}},kL=IL;function xL(){return RL()?(an&&lr(()=>{console.error("[Sentry] You cannot use Sentry.init() in a browser extension, see: https://docs.sentry.io/platforms/javascript/best-practices/browser-extensions/")}),!0):!1}function RL(){var i;if(typeof Ae.window>"u")return!1;const e=Ae;if(e.nw)return!1;const t=e.chrome||e.browser;if(!((i=t==null?void 0:t.runtime)!=null&&i.id))return!1;const n=Ii(),r=["chrome-extension","moz-extension","ms-browser-extension","safari-web-extension"];return!(Ae===Ae.top&&r.some(o=>n.startsWith(`${o}://`)))}function JS(e){return[_M(),mM(),oL(),YN(),mL(),kL(),MM(),EL(),dL()]}function AL(e={}){const t=!e.skipBrowserExtensionCheck&&xL();let n=e.defaultIntegrations==null?JS():e.defaultIntegrations;const r={...e,enabled:t?!1:e.enabled,stackParser:bA(e.stackParser||qN),integrations:MO({integrations:e.integrations,defaultIntegrations:n}),transport:e.transport||MN};return eM(dP,r)}const je=Ce,zd="sentryReplaySession",OL="replay_event",qd="Unable to send Replay",ML=3e5,PL=9e5,NL=5e3,LL=5500,DL=6e4,FL=5e3,$L=3,yg=15e4,ya=5e3,BL=3e3,HL=300,Gd=2e7,VL=4999,UL=5e4,vg=36e5;var WL=Object.defineProperty,jL=(e,t,n)=>t in e?WL(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,_g=(e,t,n)=>jL(e,typeof t!="symbol"?t+"":t,n),it=(e=>(e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e))(it||{});function zL(e){return e.nodeType===e.ELEMENT_NODE}function ro(e){const t=e==null?void 0:e.host;return(t==null?void 0:t.shadowRoot)===e}function so(e){return Object.prototype.toString.call(e)==="[object ShadowRoot]"}function qL(e){return e.includes(" background-clip: text;")&&!e.includes(" -webkit-background-clip: text;")&&(e=e.replace(/\sbackground-clip:\s*text;/g," -webkit-background-clip: text; background-clip: text;")),e}function GL(e){const{cssText:t}=e;if(t.split('"').length<3)return t;const n=["@import",`url(${JSON.stringify(e.href)})`];return e.layerName===""?n.push("layer"):e.layerName&&n.push(`layer(${e.layerName})`),e.supportsText&&n.push(`supports(${e.supportsText})`),e.media.length&&n.push(e.media.mediaText),n.join(" ")+";"}function yc(e){try{const t=e.rules||e.cssRules;return t?qL(Array.from(t,ZS).join("")):null}catch{return null}}function KL(e){let t="";for(let n=0;nthis.removeNodeFromMap(r))}has(t){return this.idNodeMap.has(t)}hasNode(t){return this.nodeMetaMap.has(t)}add(t,n){const r=n.id;this.idNodeMap.set(r,t),this.nodeMetaMap.set(t,n)}replace(t,n){const r=this.getNode(t);if(r){const s=this.nodeMetaMap.get(r);s&&this.nodeMetaMap.set(n,s)}this.idNodeMap.set(t,n)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}}function ZL(){return new QS}function sl({maskInputOptions:e,tagName:t,type:n}){return t==="OPTION"&&(t="SELECT"),!!(e[t.toLowerCase()]||n&&e[n]||n==="password"||t==="INPUT"&&!n&&e.text)}function xo({isMasked:e,element:t,value:n,maskInputFn:r}){let s=n||"";return e?(r&&(s=r(s,t)),"*".repeat(s.length)):s}function fi(e){return e.toLowerCase()}function uf(e){return e.toUpperCase()}const bg="__rrweb_original__";function QL(e){const t=e.getContext("2d");if(!t)return!0;const n=50;for(let r=0;rc!==0))return!1}return!0}function Kd(e){const t=e.type;return e.hasAttribute("data-rr-is-password")?"password":t?fi(t):null}function vc(e,t,n){return t==="INPUT"&&(n==="radio"||n==="checkbox")?e.getAttribute("value")||"":e.value}function eE(e,t){let n;try{n=new URL(e,t??window.location.href)}catch{return null}const r=/\.([0-9a-z]+)(?:$)/i,s=n.pathname.match(r);return(s==null?void 0:s[1])??null}const Sg={};function tE(e){const t=Sg[e];if(t)return t;const n=window.document;let r=window[e];if(n&&typeof n.createElement=="function")try{const s=n.createElement("iframe");s.hidden=!0,n.head.appendChild(s);const i=s.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(s)}catch{}return Sg[e]=r.bind(window)}function ff(...e){return tE("setTimeout")(...e)}function nE(...e){return tE("clearTimeout")(...e)}function rE(e){try{return e.contentDocument}catch{}}let eD=1;const tD=new RegExp("[^a-z0-9-_:]"),Ro=-2;function Yd(){return eD++}function nD(e){if(e instanceof HTMLFormElement)return"form";const t=fi(e.tagName);return tD.test(t)?"div":t}function rD(e){let t="";return e.indexOf("//")>-1?t=e.split("/").slice(0,3).join("/"):t=e.split("/")[0],t=t.split("?")[0],t}let Rs,Eg;const sD=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,iD=/^(?:[a-z+]+:)?\/\//i,oD=/^www\..*/i,aD=/^(data:)([^,]*),(.*)/i;function cD(e,t){if(!e||t.size===0)return e;try{const n=e.split(";"),r=[];for(let s of n){if(s=s.trim(),!s)continue;const i=s.indexOf(":");if(i===-1){r.push(s);continue}const o=s.slice(0,i).trim();t.has(o)||r.push(s)}return r.join("; ")+(r.length>0&&e.endsWith(";")?";":"")}catch(n){return console.warn("Error filtering CSS properties:",n),e}}function _c(e,t){return(e||"").replace(sD,(n,r,s,i,o,a)=>{const c=s||o||a,l=r||i||"";if(!c)return n;if(iD.test(c)||oD.test(c))return`url(${l}${c}${l})`;if(aD.test(c))return`url(${l}${c}${l})`;if(c[0]==="/")return`url(${l}${rD(t)+c}${l})`;const u=t.split("/"),f=c.split("/");u.pop();for(const d of f)d!=="."&&(d===".."?u.pop():u.push(d));return`url(${l}${u.join("/")}${l})`})}const lD=/^[^ \t\n\r\u000c]+/,uD=/^[, \t\n\r\u000c]+/;function fD(e,t){if(t.trim()==="")return t;let n=0;function r(i){let o;const a=i.exec(t.substring(n));return a?(o=a[0],n+=o.length,o):""}const s=[];for(;r(uD),!(n>=t.length);){let i=r(lD);if(i.slice(-1)===",")i=Bs(e,i.substring(0,i.length-1)),s.push(i);else{let o="";i=Bs(e,i);let a=!1;for(;;){const c=t.charAt(n);if(c===""){s.push((i+o).trim());break}else if(a)c===")"&&(a=!1);else if(c===","){n+=1,s.push((i+o).trim());break}else c==="("&&(a=!0);o+=c,n+=1}}}return s.join(", ")}const wg=new WeakMap;function Bs(e,t){return!t||t.trim()===""?t:il(e,t)}function dD(e){return!!(e.tagName==="svg"||e.ownerSVGElement)}function il(e,t){let n=wg.get(e);if(n||(n=e.createElement("a"),wg.set(e,n)),!t)t="";else if(t.startsWith("blob:")||t.startsWith("data:"))return t;return n.setAttribute("href",t),n.href}function sE(e,t,n,r,s,i,o){if(!r)return r;if(n==="src"||n==="href"&&!(t==="use"&&r[0]==="#"))return Bs(e,r);if(n==="xlink:href"&&r[0]!=="#")return Bs(e,r);if(n==="background"&&(t==="table"||t==="td"||t==="th"))return Bs(e,r);if(n==="srcset")return fD(e,r);if(n==="style"){let a=_c(r,il(e));return o&&o.size>0&&(a=cD(a,o)),a}else if(t==="object"&&n==="data")return Bs(e,r);return typeof i=="function"?i(n,r,s):r}function iE(e,t,n){return(e==="video"||e==="audio")&&t==="autoplay"}function hD(e,t,n,r){try{if(r&&e.matches(r))return!1;if(typeof t=="string"){if(e.classList.contains(t))return!0}else for(let s=e.classList.length;s--;){const i=e.classList[s];if(t.test(i))return!0}if(n)return e.matches(n)}catch{}return!1}function pD(e,t){for(let n=e.classList.length;n--;){const r=e.classList[n];if(t.test(r))return!0}return!1}function Qr(e,t,n=1/0,r=0){return!e||e.nodeType!==e.ELEMENT_NODE||r>n?-1:t(e)?r:Qr(e.parentNode,t,n,r+1)}function Hs(e,t){return n=>{const r=n;if(r===null)return!1;try{if(e){if(typeof e=="string"){if(r.matches(`.${e}`))return!0}else if(pD(r,e))return!0}return!!(t&&r.matches(t))}catch{return!1}}}function di(e,t,n,r,s,i){try{const o=e.nodeType===e.ELEMENT_NODE?e:e.parentElement;if(o===null)return!1;if(o.tagName==="INPUT"){const l=o.getAttribute("autocomplete");if(["current-password","new-password","cc-number","cc-exp","cc-exp-month","cc-exp-year","cc-csc"].includes(l))return!0}let a=-1,c=-1;if(i){if(c=Qr(o,Hs(r,s)),c<0)return!0;a=Qr(o,Hs(t,n),c>=0?c:1/0)}else{if(a=Qr(o,Hs(t,n)),a<0)return!1;c=Qr(o,Hs(r,s),a>=0?a:1/0)}return a>=0?c>=0?a<=c:!0:c>=0?!1:!!i}catch{}return!!i}function mD(e,t,n){const r=e.contentWindow;if(!r)return;let s=!1,i;try{i=r.document.readyState}catch{return}if(i!=="complete"){const a=ff(()=>{s||(t(),s=!0)},n);e.addEventListener("load",()=>{nE(a),s=!0,t()});return}const o="about:blank";if(r.location.href!==o||e.src===o||e.src==="")return ff(t,0),e.addEventListener("load",t);e.addEventListener("load",t)}function gD(e,t,n){let r=!1,s;try{s=e.sheet}catch{return}if(s)return;const i=ff(()=>{r||(t(),r=!0)},n);e.addEventListener("load",()=>{nE(i),r=!0,t()})}function yD(e,t){const{doc:n,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskAttributeFn:c,maskTextClass:l,unmaskTextClass:u,maskTextSelector:f,unmaskTextSelector:d,inlineStylesheet:h,maskInputOptions:p={},maskTextFn:m,maskInputFn:y,dataURLOptions:g={},inlineImages:v,recordCanvas:_,keepIframeSrcFn:T,newlyAddedElement:O=!1,ignoreCSSAttributes:R}=t,E=vD(n,r);switch(e.nodeType){case e.DOCUMENT_NODE:return e.compatMode!=="CSS1Compat"?{type:it.Document,childNodes:[],compatMode:e.compatMode}:{type:it.Document,childNodes:[]};case e.DOCUMENT_TYPE_NODE:return{type:it.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:E};case e.ELEMENT_NODE:return bD(e,{doc:n,blockClass:s,blockSelector:i,unblockSelector:o,inlineStylesheet:h,maskAttributeFn:c,maskInputOptions:p,maskInputFn:y,dataURLOptions:g,inlineImages:v,recordCanvas:_,keepIframeSrcFn:T,newlyAddedElement:O,rootId:E,maskTextClass:l,unmaskTextClass:u,maskTextSelector:f,unmaskTextSelector:d,ignoreCSSAttributes:R});case e.TEXT_NODE:return _D(e,{doc:n,maskAllText:a,maskTextClass:l,unmaskTextClass:u,maskTextSelector:f,unmaskTextSelector:d,maskTextFn:m,maskInputOptions:p,maskInputFn:y,rootId:E});case e.CDATA_SECTION_NODE:return{type:it.CDATA,textContent:"",rootId:E};case e.COMMENT_NODE:return{type:it.Comment,textContent:e.textContent||"",rootId:E};default:return!1}}function vD(e,t){if(!t.hasNode(e))return;const n=t.getId(e);return n===1?void 0:n}function _D(e,t){var g;const{maskAllText:n,maskTextClass:r,unmaskTextClass:s,maskTextSelector:i,unmaskTextSelector:o,maskTextFn:a,maskInputOptions:c,maskInputFn:l,rootId:u}=t,f=e.parentNode&&e.parentNode.tagName;let d=e.textContent;const h=f==="STYLE"?!0:void 0,p=f==="SCRIPT"?!0:void 0,m=f==="TEXTAREA"?!0:void 0;if(h&&d){try{e.nextSibling||e.previousSibling||(g=e.parentNode.sheet)!=null&&g.cssRules&&(d=yc(e.parentNode.sheet))}catch(v){console.warn(`Cannot get CSS styles from text's parentNode. Error: ${v}`,e)}d=_c(d,il(t.doc))}p&&(d="SCRIPT_PLACEHOLDER");const y=di(e,r,i,s,o,n);if(!h&&!p&&!m&&d&&y&&(d=a?a(d,e.parentElement):d.replace(/[\S]/g,"*")),m&&d&&(c.textarea||y)&&(d=l?l(d,e.parentNode):d.replace(/[\S]/g,"*")),f==="OPTION"&&d){const v=sl({type:null,tagName:f,maskInputOptions:c});d=xo({isMasked:di(e,r,i,s,o,v),element:e,value:d,maskInputFn:l})}return{type:it.Text,textContent:d||"",isStyle:h,rootId:u}}function bD(e,t){const{doc:n,blockClass:r,blockSelector:s,unblockSelector:i,inlineStylesheet:o,maskInputOptions:a={},maskAttributeFn:c,maskInputFn:l,dataURLOptions:u={},inlineImages:f,recordCanvas:d,keepIframeSrcFn:h,newlyAddedElement:p=!1,rootId:m,maskTextClass:y,unmaskTextClass:g,maskTextSelector:v,unmaskTextSelector:_,ignoreCSSAttributes:T}=t,O=hD(e,r,s,i),R=nD(e);let E={};const w=e.attributes.length;for(let A=0;Ax.href===e.href);let M=null;A&&(M=yc(A)),M&&(E.rel=null,E.href=null,E.crossorigin=null,E._cssText=_c(M,A.href))}if(R==="style"&&e.sheet&&!(e.innerText||e.textContent||"").trim().length){const A=yc(e.sheet);A&&(E._cssText=_c(A,il(n)))}if(R==="input"||R==="textarea"||R==="select"||R==="option"){const A=e,M=Kd(A),x=vc(A,uf(R),M),N=A.checked;if(M!=="submit"&&M!=="button"&&x){const L=di(A,y,v,g,_,sl({type:M,tagName:uf(R),maskInputOptions:a}));E.value=xo({isMasked:L,element:A,value:x,maskInputFn:l})}N&&(E.checked=N)}if(R==="option"&&(e.selected&&!a.select?E.selected=!0:delete E.selected),R==="canvas"&&d){if(e.__context==="2d")QL(e)||(E.rr_dataURL=e.toDataURL(u.type,u.quality));else if(!("__context"in e)){const A=e.toDataURL(u.type,u.quality),M=n.createElement("canvas");M.width=e.width,M.height=e.height;const x=M.toDataURL(u.type,u.quality);A!==x&&(E.rr_dataURL=A)}}if(R==="img"&&f){Rs||(Rs=n.createElement("canvas"),Eg=Rs.getContext("2d"));const A=e,M=A.currentSrc||A.getAttribute("src")||"",x=A.crossOrigin,N=()=>{A.removeEventListener("load",N);try{Rs.width=A.naturalWidth,Rs.height=A.naturalHeight,Eg.drawImage(A,0,0),E.rr_dataURL=Rs.toDataURL(u.type,u.quality)}catch(L){if(A.crossOrigin!=="anonymous"){A.crossOrigin="anonymous",A.complete&&A.naturalWidth!==0?N():A.addEventListener("load",N);return}else console.warn(`Cannot inline img src=${M}! Error: ${L}`)}A.crossOrigin==="anonymous"&&(x?E.crossOrigin=x:A.removeAttribute("crossorigin"))};A.complete&&A.naturalWidth!==0?N():A.addEventListener("load",N)}if((R==="audio"||R==="video")&&(E.rr_mediaState=e.paused?"paused":"played",E.rr_mediaCurrentTime=e.currentTime),p||(e.scrollLeft&&(E.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(E.rr_scrollTop=e.scrollTop)),O){const{width:A,height:M}=e.getBoundingClientRect();E={class:E.class,rr_width:`${A}px`,rr_height:`${M}px`}}R==="iframe"&&!h(E.src)&&(!O&&!rE(e)&&(E.rr_src=E.src),delete E.src);let I;try{customElements.get(R)&&(I=!0)}catch{}return{type:it.Element,tagName:R,attributes:E,childNodes:[],isSVG:dD(e)||void 0,needBlock:O,rootId:m,isCustom:I}}function Ue(e){return e==null?"":e.toLowerCase()}function SD(e,t){if(t.comment&&e.type===it.Comment)return!0;if(e.type===it.Element){if(t.script&&(e.tagName==="script"||e.tagName==="link"&&(e.attributes.rel==="preload"||e.attributes.rel==="modulepreload")||e.tagName==="link"&&e.attributes.rel==="prefetch"&&typeof e.attributes.href=="string"&&eE(e.attributes.href)==="js"))return!0;if(t.headFavicon&&(e.tagName==="link"&&e.attributes.rel==="shortcut icon"||e.tagName==="meta"&&(Ue(e.attributes.name).match(/^msapplication-tile(image|color)$/)||Ue(e.attributes.name)==="application-name"||Ue(e.attributes.rel)==="icon"||Ue(e.attributes.rel)==="apple-touch-icon"||Ue(e.attributes.rel)==="shortcut icon")))return!0;if(e.tagName==="meta"){if(t.headMetaDescKeywords&&Ue(e.attributes.name).match(/^description|keywords$/))return!0;if(t.headMetaSocial&&(Ue(e.attributes.property).match(/^(og|twitter|fb):/)||Ue(e.attributes.name).match(/^(og|twitter):/)||Ue(e.attributes.name)==="pinterest"))return!0;if(t.headMetaRobots&&(Ue(e.attributes.name)==="robots"||Ue(e.attributes.name)==="googlebot"||Ue(e.attributes.name)==="bingbot"))return!0;if(t.headMetaHttpEquiv&&e.attributes["http-equiv"]!==void 0)return!0;if(t.headMetaAuthorship&&(Ue(e.attributes.name)==="author"||Ue(e.attributes.name)==="generator"||Ue(e.attributes.name)==="framework"||Ue(e.attributes.name)==="publisher"||Ue(e.attributes.name)==="progid"||Ue(e.attributes.property).match(/^article:/)||Ue(e.attributes.property).match(/^product:/)))return!0;if(t.headMetaVerification&&(Ue(e.attributes.name)==="google-site-verification"||Ue(e.attributes.name)==="yandex-verification"||Ue(e.attributes.name)==="csrf-token"||Ue(e.attributes.name)==="p:domain_verify"||Ue(e.attributes.name)==="verify-v1"||Ue(e.attributes.name)==="verification"||Ue(e.attributes.name)==="shopify-checkout-api-token"))return!0}}return!1}function Vs(e,t){const{doc:n,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:f,skipChild:d=!1,inlineStylesheet:h=!0,maskInputOptions:p={},maskAttributeFn:m,maskTextFn:y,maskInputFn:g,slimDOMOptions:v,dataURLOptions:_={},inlineImages:T=!1,recordCanvas:O=!1,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:w=5e3,onBlockedImageLoad:I,onStylesheetLoad:A,stylesheetLoadTimeout:M=5e3,keepIframeSrcFn:x=()=>!1,newlyAddedElement:N=!1,ignoreCSSAttributes:L}=t;let{preserveWhiteSpace:G=!0}=t;const J=yD(e,{doc:n,mirror:r,blockClass:s,blockSelector:i,maskAllText:a,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:f,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:y,maskInputFn:g,dataURLOptions:_,inlineImages:T,recordCanvas:O,keepIframeSrcFn:x,newlyAddedElement:N,ignoreCSSAttributes:L});if(!J)return console.warn(e,"not serialized"),null;let j;r.hasNode(e)?j=r.getId(e):SD(J,v)||!G&&J.type===it.Text&&!J.isStyle&&!J.textContent.replace(/^\s+|\s+$/gm,"").length?j=Ro:j=Yd();const D=Object.assign(J,{id:j});if(r.add(e,D),j===Ro)return null;R&&R(e);let ae=!d;if(D.type===it.Element){ae=ae&&!D.needBlock;const q=e.shadowRoot;q&&so(q)&&(D.isShadowHost=!0)}if((D.type===it.Document||D.type===it.Element)&&ae){v.headWhitespace&&D.type===it.Element&&D.tagName==="head"&&(G=!1);const q={doc:n,mirror:r,blockClass:s,blockSelector:i,maskAllText:a,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:f,skipChild:d,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:y,maskInputFn:g,slimDOMOptions:v,dataURLOptions:_,inlineImages:T,recordCanvas:O,preserveWhiteSpace:G,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:w,onBlockedImageLoad:I,onStylesheetLoad:A,stylesheetLoadTimeout:M,keepIframeSrcFn:x,ignoreCSSAttributes:L},ce=e.childNodes?Array.from(e.childNodes):[];for(const le of ce){const ve=Vs(le,q);ve&&D.childNodes.push(ve)}if(zL(e)&&e.shadowRoot)for(const le of Array.from(e.shadowRoot.childNodes)){const ve=Vs(le,q);ve&&(so(e.shadowRoot)&&(ve.isShadow=!0),D.childNodes.push(ve))}}if(e.parentNode&&ro(e.parentNode)&&so(e.parentNode)&&(D.isShadow=!0),D.type===it.Element&&D.tagName==="iframe"&&!D.needBlock&&mD(e,()=>{const q=rE(e);if(q&&E){const ce=Vs(q,{doc:q,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:f,skipChild:!1,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:y,maskInputFn:g,slimDOMOptions:v,dataURLOptions:_,inlineImages:T,recordCanvas:O,preserveWhiteSpace:G,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:w,onStylesheetLoad:A,stylesheetLoadTimeout:M,keepIframeSrcFn:x,ignoreCSSAttributes:L});ce&&E(e,ce)}},w),D.type===it.Element&&D.tagName==="img"&&!e.complete&&D.needBlock){const q=e,ce=()=>{if(q.isConnected&&!q.complete&&I)try{const le=q.getBoundingClientRect();le.width>0&&le.height>0&&I(q,D,le)}catch{}q.removeEventListener("load",ce)};q.isConnected&&q.addEventListener("load",ce)}return D.type===it.Element&&D.tagName==="link"&&typeof D.attributes.rel=="string"&&(D.attributes.rel==="stylesheet"||D.attributes.rel==="preload"&&typeof D.attributes.href=="string"&&eE(D.attributes.href)==="css")&&gD(e,()=>{if(A){const q=Vs(e,{doc:n,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskTextClass:c,unmaskTextClass:l,maskTextSelector:u,unmaskTextSelector:f,skipChild:!1,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:y,maskInputFn:g,slimDOMOptions:v,dataURLOptions:_,inlineImages:T,recordCanvas:O,preserveWhiteSpace:G,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:w,onStylesheetLoad:A,stylesheetLoadTimeout:M,keepIframeSrcFn:x,ignoreCSSAttributes:L});q&&A(e,q)}},M),D.type===it.Element&&delete D.needBlock,D}function ED(e,t){const{mirror:n=new QS,blockClass:r="rr-block",blockSelector:s=null,unblockSelector:i=null,maskAllText:o=!1,maskTextClass:a="rr-mask",unmaskTextClass:c=null,maskTextSelector:l=null,unmaskTextSelector:u=null,inlineStylesheet:f=!0,inlineImages:d=!1,recordCanvas:h=!1,maskAllInputs:p=!1,maskAttributeFn:m,maskTextFn:y,maskInputFn:g,slimDOM:v=!1,dataURLOptions:_,preserveWhiteSpace:T,onSerialize:O,onIframeLoad:R,iframeLoadTimeout:E,onBlockedImageLoad:w,onStylesheetLoad:I,stylesheetLoadTimeout:A,keepIframeSrcFn:M=()=>!1,ignoreCSSAttributes:x=new Set([])}=t||{};return Vs(e,{doc:e,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,maskAllText:o,maskTextClass:a,unmaskTextClass:c,maskTextSelector:l,unmaskTextSelector:u,skipChild:!1,inlineStylesheet:f,maskInputOptions:p===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0}:p===!1?{}:p,maskAttributeFn:m,maskTextFn:y,maskInputFn:g,slimDOMOptions:v===!0||v==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaDescKeywords:v==="all",headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaAuthorship:!0,headMetaVerification:!0}:v===!1?{}:v,dataURLOptions:_,inlineImages:d,recordCanvas:h,preserveWhiteSpace:T,onSerialize:O,onIframeLoad:R,iframeLoadTimeout:E,onBlockedImageLoad:w,onStylesheetLoad:I,stylesheetLoadTimeout:A,keepIframeSrcFn:M,newlyAddedElement:!1,ignoreCSSAttributes:x})}function Mt(e,t,n=document){const r={capture:!0,passive:!0};return n.addEventListener(e,t,r),()=>n.removeEventListener(e,t,r)}const Ns=`Please stop import mirror directly. Instead of that,\r -now you can use replayer.getMirror() to access the mirror instance of a replayer,\r -or you can use record.mirror to access the mirror instance during recording.`;let Tg={map:{},getId(){return console.error(Ns),-1},getNode(){return console.error(Ns),null},removeNodeFromMap(){console.error(Ns)},has(){return console.error(Ns),!1},reset(){console.error(Ns)}};typeof window<"u"&&window.Proxy&&window.Reflect&&(Tg=new Proxy(Tg,{get(e,t,n){return t==="map"&&console.error(Ns),Reflect.get(e,t,n)}}));function Ao(e,t,n={}){let r=null,s=0;return function(...i){const o=Date.now();!s&&n.leading===!1&&(s=o);const a=t-(o-s),c=this;a<=0||a>t?(r&&(RD(r),r=null),s=o,e.apply(c,i)):!r&&n.trailing!==!1&&(r=ol(()=>{s=n.leading===!1?0:Date.now(),r=null,e.apply(c,i)},a))}}function oE(e,t,n,r,s=window){const i=s.Object.getOwnPropertyDescriptor(e,t);return s.Object.defineProperty(e,t,r?n:{set(o){ol(()=>{n.set.call(this,o)},0),i&&i.set&&i.set.call(this,o)}}),()=>oE(e,t,i||{},!0)}function Xd(e,t,n){try{if(!(t in e))return()=>{};const r=e[t],s=n(r);return typeof s=="function"&&(s.prototype=s.prototype||{},Object.defineProperties(s,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=s,()=>{e[t]=r}}catch{return()=>{}}}let bc=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(bc=()=>new Date().getTime());function aE(e){var n,r,s,i,o,a;const t=e.document;return{left:t.scrollingElement?t.scrollingElement.scrollLeft:e.pageXOffset!==void 0?e.pageXOffset:(t==null?void 0:t.documentElement.scrollLeft)||((r=(n=t==null?void 0:t.body)==null?void 0:n.parentElement)==null?void 0:r.scrollLeft)||((s=t==null?void 0:t.body)==null?void 0:s.scrollLeft)||0,top:t.scrollingElement?t.scrollingElement.scrollTop:e.pageYOffset!==void 0?e.pageYOffset:(t==null?void 0:t.documentElement.scrollTop)||((o=(i=t==null?void 0:t.body)==null?void 0:i.parentElement)==null?void 0:o.scrollTop)||((a=t==null?void 0:t.body)==null?void 0:a.scrollTop)||0}}function cE(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function lE(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function uE(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function jt(e,t,n,r,s){if(!e)return!1;const i=uE(e);if(!i)return!1;const o=Hs(t,n);if(!s){const l=r&&i.matches(r);return o(i)&&!l}const a=Qr(i,o);let c=-1;return a<0?!1:(r&&(c=Qr(i,Hs(null,r))),a>-1&&c<0?!0:a{let n=t[0];if(!(0 in t))throw new TypeError("1 argument is required");do if(this===n)return!0;while(n=n&&n.parentNode);return!1})}function dE(e,t){return!!(e.nodeName==="IFRAME"&&t.getMeta(e))}function hE(e,t){return!!(e.nodeName==="LINK"&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&e.getAttribute("rel")==="stylesheet"&&t.getMeta(e))}function hf(e){return!!(e!=null&&e.shadowRoot)}class CD{constructor(){this.id=1,this.styleIDMap=new WeakMap,this.idStyleMap=new Map}getId(t){return this.styleIDMap.get(t)??-1}has(t){return this.styleIDMap.has(t)}add(t,n){if(this.has(t))return this.getId(t);let r;return n===void 0?r=this.id++:r=n,this.styleIDMap.set(t,r),this.idStyleMap.set(r,t),r}getStyle(t){return this.idStyleMap.get(t)||null}reset(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1}generateId(){return this.id++}}function pE(e){var n,r;let t=null;return((r=(n=e.getRootNode)==null?void 0:n.call(e))==null?void 0:r.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&e.getRootNode().host&&(t=e.getRootNode().host),t}function ID(e){let t=e,n;for(;n=pE(t);)t=n;return t}function kD(e){const t=e.ownerDocument;if(!t)return!1;const n=ID(e);return t.contains(n)}function mE(e){const t=e.ownerDocument;return t?t.contains(e)||kD(e):!1}const Cg={};function Jd(e){const t=Cg[e];if(t)return t;const n=window.document;let r=window[e];if(n&&typeof n.createElement=="function")try{const s=n.createElement("iframe");s.hidden=!0,n.head.appendChild(s);const i=s.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(s)}catch{}return Cg[e]=r.bind(window)}function xD(...e){return Jd("requestAnimationFrame")(...e)}function ol(...e){return Jd("setTimeout")(...e)}function RD(...e){return Jd("clearTimeout")(...e)}var we=(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e))(we||{}),ye=(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e))(ye||{}),xt=(e=>(e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel",e))(xt||{}),Bn=(e=>(e[e.Mouse=0]="Mouse",e[e.Pen=1]="Pen",e[e.Touch=2]="Touch",e))(Bn||{}),Ls=(e=>(e[e.Play=0]="Play",e[e.Pause=1]="Pause",e[e.Seeked=2]="Seeked",e[e.VolumeChange=3]="VolumeChange",e[e.RateChange=4]="RateChange",e))(Ls||{});function Zd(e){try{return e.contentDocument}catch{}}function AD(e){try{return e.contentWindow}catch{}}function Ig(e){return"__ln"in e}class OD{constructor(){this.length=0,this.head=null,this.tail=null}get(t){if(t>=this.length)throw new Error("Position outside of list range");let n=this.head;for(let r=0;r`${e}@${t}`;class MD{constructor(){this.frozen=!1,this.locked=!1,this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.mapRemoves=[],this.movedMap={},this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.processMutations=t=>{t.forEach(this.processMutation),this.emit()},this.emit=()=>{if(this.frozen||this.locked)return;const t=[],n=new Set,r=new OD,s=c=>{let l=c,u=Ro;for(;u===Ro;)l=l&&l.nextSibling,u=l&&this.mirror.getId(l);return u},i=c=>{if(!c.parentNode||!mE(c))return;const l=ro(c.parentNode)?this.mirror.getId(pE(c)):this.mirror.getId(c.parentNode),u=s(c);if(l===-1||u===-1)return r.addNode(c);const f=Vs(c,{doc:this.doc,mirror:this.mirror,blockClass:this.blockClass,blockSelector:this.blockSelector,maskAllText:this.maskAllText,unblockSelector:this.unblockSelector,maskTextClass:this.maskTextClass,unmaskTextClass:this.unmaskTextClass,maskTextSelector:this.maskTextSelector,unmaskTextSelector:this.unmaskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:this.inlineStylesheet,maskInputOptions:this.maskInputOptions,maskAttributeFn:this.maskAttributeFn,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,dataURLOptions:this.dataURLOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:d=>{dE(d,this.mirror)&&!jt(d,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&this.iframeManager.addIframe(d),hE(d,this.mirror)&&this.stylesheetManager.trackLinkElement(d),hf(c)&&this.shadowDomManager.addShadowRoot(c.shadowRoot,this.doc)},onIframeLoad:(d,h)=>{jt(d,this.blockClass,this.blockSelector,this.unblockSelector,!1)||(this.iframeManager.attachIframe(d,h),d.contentWindow&&this.canvasManager.addWindow(d.contentWindow),this.shadowDomManager.observeAttachShadow(d))},onStylesheetLoad:(d,h)=>{this.stylesheetManager.attachLinkElement(d,h)},onBlockedImageLoad:(d,h,{width:p,height:m})=>{this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:h.id,attributes:{style:{width:`${p}px`,height:`${m}px`}}}]})},ignoreCSSAttributes:this.ignoreCSSAttributes});f&&(t.push({parentId:l,nextId:u,node:f}),n.add(f.id))};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(const c of this.movedSet)xg(this.removes,c,this.mirror)&&!this.movedSet.has(c.parentNode)||i(c);for(const c of this.addedSet)!Rg(this.droppedSet,c)&&!xg(this.removes,c,this.mirror)||Rg(this.movedSet,c)?i(c):this.droppedSet.add(c);let o=null;for(;r.length;){let c=null;if(o){const l=this.mirror.getId(o.value.parentNode),u=s(o.value);l!==-1&&u!==-1&&(c=o)}if(!c){let l=r.tail;for(;l;){const u=l;if(l=l.previous,u){const f=this.mirror.getId(u.value.parentNode);if(s(u.value)===-1)continue;if(f!==-1){c=u;break}else{const h=u.value;if(h.parentNode&&h.parentNode.nodeType===Node.DOCUMENT_FRAGMENT_NODE){const p=h.parentNode.host;if(this.mirror.getId(p)!==-1){c=u;break}}}}}}if(!c){for(;r.head;)r.removeNode(r.head.value);break}o=c.previous,r.removeNode(c.value),i(c.value)}const a={texts:this.texts.map(c=>({id:this.mirror.getId(c.node),value:c.value})).filter(c=>!n.has(c.id)).filter(c=>this.mirror.has(c.id)),attributes:this.attributes.map(c=>{const{attributes:l}=c;if(typeof l.style=="string"){const u=JSON.stringify(c.styleDiff),f=JSON.stringify(c._unchangedStyles);u.length!n.has(c.id)).filter(c=>this.mirror.has(c.id)),removes:this.removes,adds:t};!a.texts.length&&!a.attributes.length&&!a.removes.length&&!a.adds.length||(this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.movedMap={},this.mutationCb(a))},this.processMutation=t=>{if(!eu(t.target,this.mirror))switch(t.type){case"characterData":{const n=t.target.textContent;!jt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&n!==t.oldValue&&this.texts.push({value:di(t.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,this.maskAllText)&&n?this.maskTextFn?this.maskTextFn(n,uE(t.target)):n.replace(/[\S]/g,"*"):n,node:t.target});break}case"attributes":{const n=t.target;let r=t.attributeName,s=t.target.getAttribute(r);if(r==="value"){const o=Kd(n),a=n.tagName;s=vc(n,a,o);const c=sl({maskInputOptions:this.maskInputOptions,tagName:a,type:o}),l=di(t.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,c);s=xo({isMasked:l,element:n,value:s,maskInputFn:this.maskInputFn})}if(jt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||s===t.oldValue)return;let i=this.attributeMap.get(t.target);if(n.tagName==="IFRAME"&&r==="src"&&!this.keepIframeSrcFn(s))if(!Zd(n))r="rr_src";else return;if(i||(i={node:t.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(i),this.attributeMap.set(t.target,i)),r==="type"&&n.tagName==="INPUT"&&(t.oldValue||"").toLowerCase()==="password"&&n.setAttribute("data-rr-is-password","true"),!iE(n.tagName,r)&&(i.attributes[r]=sE(this.doc,fi(n.tagName),fi(r),s,n,this.maskAttributeFn),r==="style")){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch{this.unattachedDoc=this.doc}const o=this.unattachedDoc.createElement("span");t.oldValue&&o.setAttribute("style",t.oldValue);for(const a of Array.from(n.style)){const c=n.style.getPropertyValue(a),l=n.style.getPropertyPriority(a);c!==o.style.getPropertyValue(a)||l!==o.style.getPropertyPriority(a)?l===""?i.styleDiff[a]=c:i.styleDiff[a]=[c,l]:i._unchangedStyles[a]=[c,l]}for(const a of Array.from(o.style))n.style.getPropertyValue(a)===""&&(i.styleDiff[a]=!1)}break}case"childList":{if(jt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!0))return;t.addedNodes.forEach(n=>this.genAdds(n,t.target)),t.removedNodes.forEach(n=>{const r=this.mirror.getId(n),s=ro(t.target)?this.mirror.getId(t.target.host):this.mirror.getId(t.target);jt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||eu(n,this.mirror)||!wD(n,this.mirror)||(this.addedSet.has(n)?(pf(this.addedSet,n),this.droppedSet.add(n)):this.addedSet.has(t.target)&&r===-1||fE(t.target,this.mirror)||(this.movedSet.has(n)&&this.movedMap[kg(r,s)]?pf(this.movedSet,n):this.removes.push({parentId:s,id:r,isShadow:ro(t.target)&&so(t.target)?!0:void 0})),this.mapRemoves.push(n))});break}}},this.genAdds=(t,n)=>{if(!this.processedNodeManager.inOtherBuffer(t,this)&&!(this.addedSet.has(t)||this.movedSet.has(t))){if(this.mirror.hasNode(t)){if(eu(t,this.mirror))return;this.movedSet.add(t);let r=null;n&&this.mirror.hasNode(n)&&(r=this.mirror.getId(n)),r&&r!==-1&&(this.movedMap[kg(this.mirror.getId(t),r)]=!0)}else this.addedSet.add(t),this.droppedSet.delete(t);jt(t,this.blockClass,this.blockSelector,this.unblockSelector,!1)||(t.childNodes&&t.childNodes.forEach(r=>this.genAdds(r)),hf(t)&&t.shadowRoot.childNodes.forEach(r=>{this.processedNodeManager.add(r,this),this.genAdds(r,t)}))}}}init(t){["mutationCb","blockClass","blockSelector","unblockSelector","maskAllText","maskTextClass","unmaskTextClass","maskTextSelector","unmaskTextSelector","inlineStylesheet","maskInputOptions","maskAttributeFn","maskTextFn","maskInputFn","keepIframeSrcFn","recordCanvas","inlineImages","slimDOMOptions","dataURLOptions","doc","mirror","iframeManager","stylesheetManager","shadowDomManager","canvasManager","processedNodeManager","ignoreCSSAttributes"].forEach(n=>{this[n]=t[n]})}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}}function pf(e,t){var n;e.delete(t),(n=t.childNodes)==null||n.forEach(r=>pf(e,r))}function xg(e,t,n){return e.length===0?!1:PD(e,t,n)}function PD(e,t,n){let r=t.parentNode;for(;r;){const s=n.getId(r);if(e.some(i=>i.id===s))return!0;r=r.parentNode}return!1}function Rg(e,t){return e.size===0?!1:gE(e,t)}function gE(e,t){const{parentNode:n}=t;return n?e.has(n)?!0:gE(e,n):!1}let io;function ND(e){io=e}function LD(){io=void 0}const xe=e=>io?(...n)=>{try{return e(...n)}catch(r){if(io&&io(r)===!0)return()=>{};throw r}}:e,Us=[];function ea(e){try{if("composedPath"in e){const t=e.composedPath();if(t.length)return t[0]}else if("path"in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function yE(e,t){var o,a;const n=new MD;Us.push(n),n.init(e);let r=window.MutationObserver||window.__rrMutationObserver;const s=(a=(o=window==null?void 0:window.Zone)==null?void 0:o.__symbol__)==null?void 0:a.call(o,"MutationObserver");s&&window[s]&&(r=window[s]);const i=new r(xe(c=>{e.onMutation&&e.onMutation(c)===!1||n.processMutations.bind(n)(c)}));return i.observe(t,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),i}function DD({mousemoveCb:e,sampling:t,doc:n,mirror:r}){if(t.mousemove===!1)return()=>{};const s=typeof t.mousemove=="number"?t.mousemove:50,i=typeof t.mousemoveCallback=="number"?t.mousemoveCallback:500;let o=[],a;const c=Ao(xe(f=>{const d=Date.now()-a;e(o.map(h=>(h.timeOffset-=d,h)),f),o=[],a=null}),i),l=xe(Ao(xe(f=>{const d=ea(f),{clientX:h,clientY:p}=df(f)?f.changedTouches[0]:f;a||(a=bc()),o.push({x:h,y:p,id:r.getId(d),timeOffset:bc()-a}),c(typeof DragEvent<"u"&&f instanceof DragEvent?ye.Drag:f instanceof MouseEvent?ye.MouseMove:ye.TouchMove)}),s,{trailing:!1})),u=[Mt("mousemove",l,n),Mt("touchmove",l,n),Mt("drag",l,n)];return xe(()=>{u.forEach(f=>f())})}function FD({mouseInteractionCb:e,doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,sampling:o}){if(o.mouseInteraction===!1)return()=>{};const a=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,c=[];let l=null;const u=f=>d=>{const h=ea(d);if(jt(h,r,s,i,!0))return;let p=null,m=f;if("pointerType"in d){switch(d.pointerType){case"mouse":p=Bn.Mouse;break;case"touch":p=Bn.Touch;break;case"pen":p=Bn.Pen;break}p===Bn.Touch?xt[f]===xt.MouseDown?m="TouchStart":xt[f]===xt.MouseUp&&(m="TouchEnd"):Bn.Pen}else df(d)&&(p=Bn.Touch);p!==null?(l=p,(m.startsWith("Touch")&&p===Bn.Touch||m.startsWith("Mouse")&&p===Bn.Mouse)&&(p=null)):xt[f]===xt.Click&&(p=l,l=null);const y=df(d)?d.changedTouches[0]:d;if(!y)return;const g=n.getId(h),{clientX:v,clientY:_}=y;xe(e)({type:xt[m],id:g,x:v,y:_,...p!==null&&{pointerType:p}})};return Object.keys(xt).filter(f=>Number.isNaN(Number(f))&&!f.endsWith("_Departed")&&a[f]!==!1).forEach(f=>{let d=fi(f);const h=u(f);if(window.PointerEvent)switch(xt[f]){case xt.MouseDown:case xt.MouseUp:d=d.replace("mouse","pointer");break;case xt.TouchStart:case xt.TouchEnd:return}c.push(Mt(d,h,t))}),xe(()=>{c.forEach(f=>f())})}function vE({scrollCb:e,doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,sampling:o}){const a=xe(Ao(xe(c=>{const l=ea(c);if(!l||jt(l,r,s,i,!0))return;const u=n.getId(l);if(l===t&&t.defaultView){const f=aE(t.defaultView);e({id:u,x:f.left,y:f.top})}else e({id:u,x:l.scrollLeft,y:l.scrollTop})}),o.scroll||100));return Mt("scroll",a,t)}function $D({viewportResizeCb:e},{win:t}){let n=-1,r=-1;const s=xe(Ao(xe(()=>{const i=cE(),o=lE();(n!==i||r!==o)&&(e({width:Number(o),height:Number(i)}),n=i,r=o)}),200));return Mt("resize",s,t)}const BD=["INPUT","TEXTAREA","SELECT"],Ag=new WeakMap;function HD({inputCb:e,doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,ignoreClass:o,ignoreSelector:a,maskInputOptions:c,maskInputFn:l,sampling:u,userTriggeredOnInput:f,maskTextClass:d,unmaskTextClass:h,maskTextSelector:p,unmaskTextSelector:m}){function y(E){let w=ea(E);const I=E.isTrusted,A=w&&uf(w.tagName);if(A==="OPTION"&&(w=w.parentElement),!w||!A||BD.indexOf(A)<0||jt(w,r,s,i,!0))return;const M=w;if(M.classList.contains(o)||a&&M.matches(a))return;const x=Kd(w);let N=vc(M,A,x),L=!1;const G=sl({maskInputOptions:c,tagName:A,type:x}),J=di(w,d,p,h,m,G);(x==="radio"||x==="checkbox")&&(L=w.checked),N=xo({isMasked:J,element:w,value:N,maskInputFn:l}),g(w,f?{text:N,isChecked:L,userTriggered:I}:{text:N,isChecked:L});const j=w.name;x==="radio"&&j&&L&&t.querySelectorAll(`input[type="radio"][name="${j}"]`).forEach(D=>{if(D!==w){const ae=xo({isMasked:J,element:D,value:vc(D,A,x),maskInputFn:l});g(D,f?{text:ae,isChecked:!L,userTriggered:!1}:{text:ae,isChecked:!L})}})}function g(E,w){const I=Ag.get(E);if(!I||I.text!==w.text||I.isChecked!==w.isChecked){Ag.set(E,w);const A=n.getId(E);xe(e)({...w,id:A})}}const _=(u.input==="last"?["change"]:["input","change"]).map(E=>Mt(E,xe(y),t)),T=t.defaultView;if(!T)return()=>{_.forEach(E=>E())};const O=T.Object.getOwnPropertyDescriptor(T.HTMLInputElement.prototype,"value"),R=[[T.HTMLInputElement.prototype,"value"],[T.HTMLInputElement.prototype,"checked"],[T.HTMLSelectElement.prototype,"value"],[T.HTMLTextAreaElement.prototype,"value"],[T.HTMLSelectElement.prototype,"selectedIndex"],[T.HTMLOptionElement.prototype,"selected"]];return O&&O.set&&_.push(...R.map(E=>oE(E[0],E[1],{set(){xe(y)({target:this,isTrusted:!1})}},!1,T))),xe(()=>{_.forEach(E=>E())})}function Sc(e){const t=[];function n(r,s){if(va("CSSGroupingRule")&&r.parentRule instanceof CSSGroupingRule||va("CSSMediaRule")&&r.parentRule instanceof CSSMediaRule||va("CSSSupportsRule")&&r.parentRule instanceof CSSSupportsRule||va("CSSConditionRule")&&r.parentRule instanceof CSSConditionRule){const o=Array.from(r.parentRule.cssRules).indexOf(r);s.unshift(o)}else if(r.parentStyleSheet){const o=Array.from(r.parentStyleSheet.cssRules).indexOf(r);s.unshift(o)}return s}return n(e,t)}function br(e,t,n){let r,s;return e?(e.ownerNode?r=t.getId(e.ownerNode):s=n.getId(e),{styleId:s,id:r}):{}}function VD({styleSheetRuleCb:e,mirror:t,stylesheetManager:n},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};const s=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(s,{apply:xe((u,f,d)=>{const[h,p]=d,{id:m,styleId:y}=br(f,t,n.styleMirror);return(m&&m!==-1||y&&y!==-1)&&e({id:m,styleId:y,adds:[{rule:h,index:p}]}),u.apply(f,d)})});const i=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(i,{apply:xe((u,f,d)=>{const[h]=d,{id:p,styleId:m}=br(f,t,n.styleMirror);return(p&&p!==-1||m&&m!==-1)&&e({id:p,styleId:m,removes:[{index:h}]}),u.apply(f,d)})});let o;r.CSSStyleSheet.prototype.replace&&(o=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(o,{apply:xe((u,f,d)=>{const[h]=d,{id:p,styleId:m}=br(f,t,n.styleMirror);return(p&&p!==-1||m&&m!==-1)&&e({id:p,styleId:m,replace:h}),u.apply(f,d)})}));let a;r.CSSStyleSheet.prototype.replaceSync&&(a=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(a,{apply:xe((u,f,d)=>{const[h]=d,{id:p,styleId:m}=br(f,t,n.styleMirror);return(p&&p!==-1||m&&m!==-1)&&e({id:p,styleId:m,replaceSync:h}),u.apply(f,d)})}));const c={};_a("CSSGroupingRule")?c.CSSGroupingRule=r.CSSGroupingRule:(_a("CSSMediaRule")&&(c.CSSMediaRule=r.CSSMediaRule),_a("CSSConditionRule")&&(c.CSSConditionRule=r.CSSConditionRule),_a("CSSSupportsRule")&&(c.CSSSupportsRule=r.CSSSupportsRule));const l={};return Object.entries(c).forEach(([u,f])=>{l[u]={insertRule:f.prototype.insertRule,deleteRule:f.prototype.deleteRule},f.prototype.insertRule=new Proxy(l[u].insertRule,{apply:xe((d,h,p)=>{const[m,y]=p,{id:g,styleId:v}=br(h.parentStyleSheet,t,n.styleMirror);return(g&&g!==-1||v&&v!==-1)&&e({id:g,styleId:v,adds:[{rule:m,index:[...Sc(h),y||0]}]}),d.apply(h,p)})}),f.prototype.deleteRule=new Proxy(l[u].deleteRule,{apply:xe((d,h,p)=>{const[m]=p,{id:y,styleId:g}=br(h.parentStyleSheet,t,n.styleMirror);return(y&&y!==-1||g&&g!==-1)&&e({id:y,styleId:g,removes:[{index:[...Sc(h),m]}]}),d.apply(h,p)})})}),xe(()=>{r.CSSStyleSheet.prototype.insertRule=s,r.CSSStyleSheet.prototype.deleteRule=i,o&&(r.CSSStyleSheet.prototype.replace=o),a&&(r.CSSStyleSheet.prototype.replaceSync=a),Object.entries(c).forEach(([u,f])=>{f.prototype.insertRule=l[u].insertRule,f.prototype.deleteRule=l[u].deleteRule})})}function _E({mirror:e,stylesheetManager:t},n){var o,a,c;let r=null;n.nodeName==="#document"?r=e.getId(n):r=e.getId(n.host);const s=n.nodeName==="#document"?(o=n.defaultView)==null?void 0:o.Document:(c=(a=n.ownerDocument)==null?void 0:a.defaultView)==null?void 0:c.ShadowRoot,i=s!=null&&s.prototype?Object.getOwnPropertyDescriptor(s==null?void 0:s.prototype,"adoptedStyleSheets"):void 0;return r===null||r===-1||!s||!i?()=>{}:(Object.defineProperty(n,"adoptedStyleSheets",{configurable:i.configurable,enumerable:i.enumerable,get(){var l;return(l=i.get)==null?void 0:l.call(this)},set(l){var f;const u=(f=i.set)==null?void 0:f.call(this,l);if(r!==null&&r!==-1)try{t.adoptStyleSheets(l,r)}catch{}return u}}),xe(()=>{Object.defineProperty(n,"adoptedStyleSheets",{configurable:i.configurable,enumerable:i.enumerable,get:i.get,set:i.set})}))}function UD({styleDeclarationCb:e,mirror:t,ignoreCSSAttributes:n,stylesheetManager:r},{win:s}){const i=s.CSSStyleDeclaration.prototype.setProperty;s.CSSStyleDeclaration.prototype.setProperty=new Proxy(i,{apply:xe((a,c,l)=>{var m;const[u,f,d]=l;if(n.has(u))return i.apply(c,[u,f,d]);const{id:h,styleId:p}=br((m=c.parentRule)==null?void 0:m.parentStyleSheet,t,r.styleMirror);return(h&&h!==-1||p&&p!==-1)&&e({id:h,styleId:p,set:{property:u,value:f,priority:d},index:Sc(c.parentRule)}),a.apply(c,l)})});const o=s.CSSStyleDeclaration.prototype.removeProperty;return s.CSSStyleDeclaration.prototype.removeProperty=new Proxy(o,{apply:xe((a,c,l)=>{var h;const[u]=l;if(n.has(u))return o.apply(c,[u]);const{id:f,styleId:d}=br((h=c.parentRule)==null?void 0:h.parentStyleSheet,t,r.styleMirror);return(f&&f!==-1||d&&d!==-1)&&e({id:f,styleId:d,remove:{property:u},index:Sc(c.parentRule)}),a.apply(c,l)})}),xe(()=>{s.CSSStyleDeclaration.prototype.setProperty=i,s.CSSStyleDeclaration.prototype.removeProperty=o})}function WD({mediaInteractionCb:e,blockClass:t,blockSelector:n,unblockSelector:r,mirror:s,sampling:i,doc:o}){const a=xe(l=>Ao(xe(u=>{const f=ea(u);if(!f||jt(f,t,n,r,!0))return;const{currentTime:d,volume:h,muted:p,playbackRate:m}=f;e({type:l,id:s.getId(f),currentTime:d,volume:h,muted:p,playbackRate:m})}),i.media||500)),c=[Mt("play",a(Ls.Play),o),Mt("pause",a(Ls.Pause),o),Mt("seeked",a(Ls.Seeked),o),Mt("volumechange",a(Ls.VolumeChange),o),Mt("ratechange",a(Ls.RateChange),o)];return xe(()=>{c.forEach(l=>l())})}function jD({fontCb:e,doc:t}){const n=t.defaultView;if(!n)return()=>{};const r=[],s=new WeakMap,i=n.FontFace;n.FontFace=function(c,l,u){const f=new i(c,l,u);return s.set(f,{family:c,buffer:typeof l!="string",descriptors:u,fontSource:typeof l=="string"?l:JSON.stringify(Array.from(new Uint8Array(l)))}),f};const o=Xd(t.fonts,"add",function(a){return function(c){return ol(xe(()=>{const l=s.get(c);l&&(e(l),s.delete(c))}),0),a.apply(this,[c])}});return r.push(()=>{n.FontFace=i}),r.push(o),xe(()=>{r.forEach(a=>a())})}function zD(e){const{doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,selectionCb:o}=e;let a=!0;const c=xe(()=>{const l=t.getSelection();if(!l||a&&(l!=null&&l.isCollapsed))return;a=l.isCollapsed||!1;const u=[],f=l.rangeCount||0;for(let d=0;d{}:Xd(n.customElements,"define",function(s){return function(i,o,a){try{t({define:{name:i}})}catch{}return s.apply(this,[i,o,a])}})}function GD(e,t={}){const n=e.doc.defaultView;if(!n)return()=>{};let r;e.recordDOM&&(r=yE(e,e.doc));const s=DD(e),i=FD(e),o=vE(e),a=$D(e,{win:n}),c=HD(e),l=WD(e);let u=()=>{},f=()=>{},d=()=>{},h=()=>{};e.recordDOM&&(u=VD(e,{win:n}),f=_E(e,e.doc),d=UD(e,{win:n}),e.collectFonts&&(h=jD(e)));const p=zD(e),m=qD(e),y=[];for(const g of e.plugins)y.push(g.observer(g.callback,n,g.options));return xe(()=>{Us.forEach(g=>g.reset()),r==null||r.disconnect(),s(),i(),o(),a(),c(),l(),u(),f(),d(),h(),p(),m(),y.forEach(g=>g())})}function va(e){return typeof window[e]<"u"}function _a(e){return!!(typeof window[e]<"u"&&window[e].prototype&&"insertRule"in window[e].prototype&&"deleteRule"in window[e].prototype)}class mf{constructor(t){this.generateIdFn=t,this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap}getId(t,n,r,s){const i=r||this.getIdToRemoteIdMap(t),o=s||this.getRemoteIdToIdMap(t);let a=i.get(n);return a||(a=this.generateIdFn(),i.set(n,a),o.set(a,n)),a}getIds(t,n){const r=this.getIdToRemoteIdMap(t),s=this.getRemoteIdToIdMap(t);return n.map(i=>this.getId(t,i,r,s))}getRemoteId(t,n,r){const s=r||this.getRemoteIdToIdMap(t);if(typeof n!="number")return n;const i=s.get(n);return i||-1}getRemoteIds(t,n){const r=this.getRemoteIdToIdMap(t);return n.map(s=>this.getRemoteId(t,s,r))}reset(t){if(!t){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(t),this.iframeRemoteIdToIdMap.delete(t)}getIdToRemoteIdMap(t){let n=this.iframeIdToRemoteIdMap.get(t);return n||(n=new Map,this.iframeIdToRemoteIdMap.set(t,n)),n}getRemoteIdToIdMap(t){let n=this.iframeRemoteIdToIdMap.get(t);return n||(n=new Map,this.iframeRemoteIdToIdMap.set(t,n)),n}}class KD{constructor(){this.crossOriginIframeMirror=new mf(Yd),this.crossOriginIframeRootIdMap=new WeakMap}addIframe(){}addLoadListener(){}attachIframe(){}}class YD{constructor(t){this.iframes=new WeakMap,this.crossOriginIframeMap=new WeakMap,this.crossOriginIframeMirror=new mf(Yd),this.crossOriginIframeRootIdMap=new WeakMap,this.mutationCb=t.mutationCb,this.wrappedEmit=t.wrappedEmit,this.stylesheetManager=t.stylesheetManager,this.recordCrossOriginIframes=t.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new mf(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=t.mirror,this.recordCrossOriginIframes&&window.addEventListener("message",this.handleMessage.bind(this))}addIframe(t){this.iframes.set(t,!0),t.contentWindow&&this.crossOriginIframeMap.set(t.contentWindow,t)}addLoadListener(t){this.loadListener=t}attachIframe(t,n){var s,i;this.mutationCb({adds:[{parentId:this.mirror.getId(t),nextId:null,node:n}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&((s=t.contentWindow)==null||s.addEventListener("message",this.handleMessage.bind(this))),(i=this.loadListener)==null||i.call(this,t);const r=Zd(t);r&&r.adoptedStyleSheets&&r.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(r.adoptedStyleSheets,this.mirror.getId(r))}handleMessage(t){const n=t;if(n.data.type!=="rrweb"||n.origin!==n.data.origin||!t.source)return;const s=this.crossOriginIframeMap.get(t.source);if(!s)return;const i=this.transformCrossOriginEvent(s,n.data.event);i&&this.wrappedEmit(i,n.data.isCheckout)}transformCrossOriginEvent(t,n){var r;switch(n.type){case we.FullSnapshot:{this.crossOriginIframeMirror.reset(t),this.crossOriginIframeStyleMirror.reset(t),this.replaceIdOnNode(n.data.node,t);const s=n.data.node.id;return this.crossOriginIframeRootIdMap.set(t,s),this.patchRootIdOnNode(n.data.node,s),{timestamp:n.timestamp,type:we.IncrementalSnapshot,data:{source:ye.Mutation,adds:[{parentId:this.mirror.getId(t),nextId:null,node:n.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case we.Meta:case we.Load:case we.DomContentLoaded:return!1;case we.Plugin:return n;case we.Custom:return this.replaceIds(n.data.payload,t,["id","parentId","previousId","nextId"]),n;case we.IncrementalSnapshot:switch(n.data.source){case ye.Mutation:return n.data.adds.forEach(s=>{this.replaceIds(s,t,["parentId","nextId","previousId"]),this.replaceIdOnNode(s.node,t);const i=this.crossOriginIframeRootIdMap.get(t);i&&this.patchRootIdOnNode(s.node,i)}),n.data.removes.forEach(s=>{this.replaceIds(s,t,["parentId","id"])}),n.data.attributes.forEach(s=>{this.replaceIds(s,t,["id"])}),n.data.texts.forEach(s=>{this.replaceIds(s,t,["id"])}),n;case ye.Drag:case ye.TouchMove:case ye.MouseMove:return n.data.positions.forEach(s=>{this.replaceIds(s,t,["id"])}),n;case ye.ViewportResize:return!1;case ye.MediaInteraction:case ye.MouseInteraction:case ye.Scroll:case ye.CanvasMutation:case ye.Input:return this.replaceIds(n.data,t,["id"]),n;case ye.StyleSheetRule:case ye.StyleDeclaration:return this.replaceIds(n.data,t,["id"]),this.replaceStyleIds(n.data,t,["styleId"]),n;case ye.Font:return n;case ye.Selection:return n.data.ranges.forEach(s=>{this.replaceIds(s,t,["start","end"])}),n;case ye.AdoptedStyleSheet:return this.replaceIds(n.data,t,["id"]),this.replaceStyleIds(n.data,t,["styleIds"]),(r=n.data.styles)==null||r.forEach(s=>{this.replaceStyleIds(s,t,["styleId"])}),n}}return!1}replace(t,n,r,s){for(const i of s)!Array.isArray(n[i])&&typeof n[i]!="number"||(Array.isArray(n[i])?n[i]=t.getIds(r,n[i]):n[i]=t.getId(r,n[i]));return n}replaceIds(t,n,r){return this.replace(this.crossOriginIframeMirror,t,n,r)}replaceStyleIds(t,n,r){return this.replace(this.crossOriginIframeStyleMirror,t,n,r)}replaceIdOnNode(t,n){this.replaceIds(t,n,["id","rootId"]),"childNodes"in t&&t.childNodes.forEach(r=>{this.replaceIdOnNode(r,n)})}patchRootIdOnNode(t,n){t.type!==it.Document&&!t.rootId&&(t.rootId=n),"childNodes"in t&&t.childNodes.forEach(r=>{this.patchRootIdOnNode(r,n)})}}class XD{init(){}addShadowRoot(){}observeAttachShadow(){}reset(){}}class JD{constructor(t){this.shadowDoms=new WeakSet,this.restoreHandlers=[],this.mutationCb=t.mutationCb,this.scrollCb=t.scrollCb,this.bypassOptions=t.bypassOptions,this.mirror=t.mirror,this.init()}init(){this.reset(),this.patchAttachShadow(Element,document)}addShadowRoot(t,n){if(!so(t)||this.shadowDoms.has(t))return;this.shadowDoms.add(t),this.bypassOptions.canvasManager.addShadowRoot(t);const r=yE({...this.bypassOptions,doc:n,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},t);this.restoreHandlers.push(()=>r.disconnect()),this.restoreHandlers.push(vE({...this.bypassOptions,scrollCb:this.scrollCb,doc:t,mirror:this.mirror})),ol(()=>{t.adoptedStyleSheets&&t.adoptedStyleSheets.length>0&&this.bypassOptions.stylesheetManager.adoptStyleSheets(t.adoptedStyleSheets,this.mirror.getId(t.host)),this.restoreHandlers.push(_E({mirror:this.mirror,stylesheetManager:this.bypassOptions.stylesheetManager},t))},0)}observeAttachShadow(t){const n=Zd(t),r=AD(t);!n||!r||this.patchAttachShadow(r.Element,n)}patchAttachShadow(t,n){const r=this;this.restoreHandlers.push(Xd(t.prototype,"attachShadow",function(s){return function(i){const o=s.call(this,i);return this.shadowRoot&&mE(this)&&r.addShadowRoot(this.shadowRoot,n),o}}))}reset(){this.restoreHandlers.forEach(t=>{try{t()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet,this.bypassOptions.canvasManager.resetShadowRoots()}}var Og="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ZD=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var ba=0;ba({rule:ZS(a),index:c}))})),r.styleIds.push(o)}s.length>0&&(r.styles=s),this.adoptedStyleSheetCb(r)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(t){}}class eF{constructor(){this.nodeMap=new WeakMap,this.active=!1}inOtherBuffer(t,n){const r=this.nodeMap.get(t);return r&&Array.from(r).some(s=>s!==n)}add(t,n){this.active||(this.active=!0,xD(()=>{this.nodeMap=new WeakMap,this.active=!1})),this.nodeMap.set(t,(this.nodeMap.get(t)||new Set).add(n))}destroy(){}}let et,Ec;var Zg;try{if(Array.from([1],e=>e*2)[0]!==2){const e=document.createElement("iframe");document.body.appendChild(e),Array.from=((Zg=e.contentWindow)==null?void 0:Zg.Array.from)||Array.from,document.body.removeChild(e)}}catch(e){console.debug("Unable to override Array.from",e)}const ln=ZL();function Yn(e={}){const{emit:t,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:s="rr-block",blockSelector:i=null,unblockSelector:o=null,ignoreClass:a="rr-ignore",ignoreSelector:c=null,maskAllText:l=!1,maskTextClass:u="rr-mask",unmaskTextClass:f=null,maskTextSelector:d=null,unmaskTextSelector:h=null,inlineStylesheet:p=!0,maskAllInputs:m,maskInputOptions:y,slimDOMOptions:g,maskAttributeFn:v,maskInputFn:_,maskTextFn:T,maxCanvasSize:O=null,packFn:R,sampling:E={},dataURLOptions:w={},mousemoveWait:I,recordDOM:A=!0,recordCanvas:M=!1,recordCrossOriginIframes:x=!1,recordAfter:N=e.recordAfter==="DOMContentLoaded"?e.recordAfter:"load",userTriggeredOnInput:L=!1,collectFonts:G=!1,inlineImages:J=!1,plugins:j,keepIframeSrcFn:D=()=>!1,ignoreCSSAttributes:ae=new Set([]),errorHandler:q,onMutation:ce,getCanvasManager:le}=e;ND(q);const ve=x?window.parent===window:!0;let Me=!1;if(!ve)try{window.parent.document&&(Me=!1)}catch{Me=!0}if(ve&&!t)throw new Error("emit function is required");if(!ve&&!Me)return()=>{};I!==void 0&&E.mousemove===void 0&&(E.mousemove=I),ln.reset();const Fe=m===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,radio:!0,checkbox:!0}:y!==void 0?y:{},Ge=g===!0||g==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:g==="all",headMetaDescKeywords:g==="all"}:g||{};TD();let C,W=0;const z=B=>{for(const V of j||[])V.eventProcessor&&(B=V.eventProcessor(B));return R&&!Me&&(B=R(B)),B};et=(B,V)=>{var Y;const K=B;if(K.timestamp=bc(),(Y=Us[0])!=null&&Y.isFrozen()&&K.type!==we.FullSnapshot&&!(K.type===we.IncrementalSnapshot&&K.data.source===ye.Mutation)&&Us.forEach(se=>se.unfreeze()),ve)t==null||t(z(K),V);else if(Me){const se={type:"rrweb",event:z(K),origin:window.location.origin,isCheckout:V};window.parent.postMessage(se,"*")}if(K.type===we.FullSnapshot)C=K,W=0;else if(K.type===we.IncrementalSnapshot){if(K.data.source===ye.Mutation&&K.data.isAttachIframe)return;W++;const se=r&&W>=r,te=n&&C&&K.timestamp-C.timestamp>n;(se||te)&&Z(!0)}};const re=B=>{et({type:we.IncrementalSnapshot,data:{source:ye.Mutation,...B}})},_e=B=>et({type:we.IncrementalSnapshot,data:{source:ye.Scroll,...B}}),b=B=>et({type:we.IncrementalSnapshot,data:{source:ye.CanvasMutation,...B}}),S=B=>et({type:we.IncrementalSnapshot,data:{source:ye.AdoptedStyleSheet,...B}}),k=new QD({mutationCb:re,adoptedStyleSheetCb:S}),P=typeof __RRWEB_EXCLUDE_IFRAME__=="boolean"&&__RRWEB_EXCLUDE_IFRAME__?new KD:new YD({mirror:ln,mutationCb:re,stylesheetManager:k,recordCrossOriginIframes:x,wrappedEmit:et});for(const B of j||[])B.getMirror&&B.getMirror({nodeMirror:ln,crossOriginIframeMirror:P.crossOriginIframeMirror,crossOriginIframeStyleMirror:P.crossOriginIframeStyleMirror});const H=new eF,$=nF(le,{mirror:ln,win:window,mutationCb:B=>et({type:we.IncrementalSnapshot,data:{source:ye.CanvasMutation,...B}}),recordCanvas:M,blockClass:s,blockSelector:i,unblockSelector:o,maxCanvasSize:O,sampling:E.canvas,dataURLOptions:w,errorHandler:q}),ee=typeof __RRWEB_EXCLUDE_SHADOW_DOM__=="boolean"&&__RRWEB_EXCLUDE_SHADOW_DOM__?new XD:new JD({mutationCb:re,scrollCb:_e,bypassOptions:{onMutation:ce,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:l,maskTextClass:u,unmaskTextClass:f,maskTextSelector:d,unmaskTextSelector:h,inlineStylesheet:p,maskInputOptions:Fe,dataURLOptions:w,maskAttributeFn:v,maskTextFn:T,maskInputFn:_,recordCanvas:M,inlineImages:J,sampling:E,slimDOMOptions:Ge,iframeManager:P,stylesheetManager:k,canvasManager:$,keepIframeSrcFn:D,processedNodeManager:H,ignoreCSSAttributes:ae},mirror:ln}),Z=(B=!1)=>{if(!A)return;et({type:we.Meta,data:{href:window.location.href,width:lE(),height:cE()}},B),k.reset(),ee.init(),Us.forEach(K=>K.lock());const V=ED(document,{mirror:ln,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:l,maskTextClass:u,unmaskTextClass:f,maskTextSelector:d,unmaskTextSelector:h,inlineStylesheet:p,maskAllInputs:Fe,maskAttributeFn:v,maskInputFn:_,maskTextFn:T,slimDOM:Ge,dataURLOptions:w,recordCanvas:M,inlineImages:J,onSerialize:K=>{dE(K,ln)&&P.addIframe(K),hE(K,ln)&&k.trackLinkElement(K),hf(K)&&ee.addShadowRoot(K.shadowRoot,document)},onIframeLoad:(K,Y)=>{P.attachIframe(K,Y),K.contentWindow&&$.addWindow(K.contentWindow),ee.observeAttachShadow(K)},onStylesheetLoad:(K,Y)=>{k.attachLinkElement(K,Y)},onBlockedImageLoad:(K,Y,{width:se,height:te})=>{re({adds:[],removes:[],texts:[],attributes:[{id:Y.id,attributes:{style:{width:`${se}px`,height:`${te}px`}}}]})},keepIframeSrcFn:D,ignoreCSSAttributes:ae});if(!V)return console.warn("Failed to snapshot the document");et({type:we.FullSnapshot,data:{node:V,initialOffset:aE(window)}}),Us.forEach(K=>K.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&k.adoptStyleSheets(document.adoptedStyleSheets,ln.getId(document))};Ec=Z;try{const B=[],V=Y=>{var se;return xe(GD)({onMutation:ce,mutationCb:re,mousemoveCb:(te,Te)=>et({type:we.IncrementalSnapshot,data:{source:Te,positions:te}}),mouseInteractionCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.MouseInteraction,...te}}),scrollCb:_e,viewportResizeCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.ViewportResize,...te}}),inputCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.Input,...te}}),mediaInteractionCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.MediaInteraction,...te}}),styleSheetRuleCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.StyleSheetRule,...te}}),styleDeclarationCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.StyleDeclaration,...te}}),canvasMutationCb:b,fontCb:te=>et({type:we.IncrementalSnapshot,data:{source:ye.Font,...te}}),selectionCb:te=>{et({type:we.IncrementalSnapshot,data:{source:ye.Selection,...te}})},customElementCb:te=>{et({type:we.IncrementalSnapshot,data:{source:ye.CustomElement,...te}})},blockClass:s,ignoreClass:a,ignoreSelector:c,maskAllText:l,maskTextClass:u,unmaskTextClass:f,maskTextSelector:d,unmaskTextSelector:h,maskInputOptions:Fe,inlineStylesheet:p,sampling:E,recordDOM:A,recordCanvas:M,inlineImages:J,userTriggeredOnInput:L,collectFonts:G,doc:Y,maskAttributeFn:v,maskInputFn:_,maskTextFn:T,keepIframeSrcFn:D,blockSelector:i,unblockSelector:o,slimDOMOptions:Ge,dataURLOptions:w,mirror:ln,iframeManager:P,stylesheetManager:k,shadowDomManager:ee,processedNodeManager:H,canvasManager:$,ignoreCSSAttributes:ae,plugins:((se=j==null?void 0:j.filter(te=>te.observer))==null?void 0:se.map(te=>({observer:te.observer,options:te.options,callback:Te=>et({type:we.Plugin,data:{plugin:te.name,payload:Te}})})))||[]},{})};P.addLoadListener(Y=>{try{B.push(V(Y.contentDocument))}catch(se){console.warn(se)}});const K=()=>{Z(),B.push(V(document))};return document.readyState==="interactive"||document.readyState==="complete"?K():(B.push(Mt("DOMContentLoaded",()=>{et({type:we.DomContentLoaded,data:{}}),N==="DOMContentLoaded"&&K()})),B.push(Mt("load",()=>{et({type:we.Load,data:{}}),N==="load"&&K()},window))),()=>{B.forEach(Y=>Y()),H.destroy(),Ec=void 0,LD()}}catch(B){console.warn(B)}}function tF(e){if(!Ec)throw new Error("please take full snapshot after start recording");Ec(e)}Yn.mirror=ln;Yn.takeFullSnapshot=tF;function nF(e,t){try{return e?e(t):new Mg}catch{return console.warn("Unable to initialize CanvasManager"),new Mg}}var Pg;(function(e){e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped"})(Pg||(Pg={}));const rF=3,sF=5;function Qd(e){return e>9999999999?e:e*1e3}function tu(e){return e>9999999999?e/1e3:e}function ta(e,t){t.category!=="sentry.transaction"&&(["ui.click","ui.input"].includes(t.category)?e.triggerUserActivity():e.checkAndHandleExpiredSession(),e.addUpdate(()=>(e.throttledAddEvent({type:we.Custom,timestamp:(t.timestamp||0)*1e3,data:{tag:"breadcrumb",payload:un(t,10,1e3)}}),t.category==="console")))}const iF="button,a";function bE(e){return e.closest(iF)||e}function SE(e){const t=EE(e);return!t||!(t instanceof Element)?t:bE(t)}function EE(e){return oF(e)?e.target:e}function oF(e){return typeof e=="object"&&!!e&&"target"in e}let Sr;function aF(e){return Sr||(Sr=[],cF()),Sr.push(e),()=>{const t=Sr?Sr.indexOf(e):-1;t>-1&&Sr.splice(t,1)}}function cF(){$t(je,"open",function(e){return function(...t){if(Sr)try{Sr.forEach(n=>n())}catch{}return e.apply(je,t)}})}const lF=new Set([ye.Mutation,ye.StyleSheetRule,ye.StyleDeclaration,ye.AdoptedStyleSheet,ye.CanvasMutation,ye.Selection,ye.MediaInteraction]);function uF(e,t,n){e.handleClick(t,n)}class fF{constructor(t,n,r=ta){this._lastMutation=0,this._lastScroll=0,this._clicks=[],this._timeout=n.timeout/1e3,this._threshold=n.threshold/1e3,this._scrollTimeout=n.scrollTimeout/1e3,this._replay=t,this._ignoreSelector=n.ignoreSelector,this._addBreadcrumbEvent=r}addListeners(){const t=aF(()=>{this._lastMutation=Ng()});this._teardown=()=>{t(),this._clicks=[],this._lastMutation=0,this._lastScroll=0}}removeListeners(){this._teardown&&this._teardown(),this._checkClickTimeout&&clearTimeout(this._checkClickTimeout)}handleClick(t,n){if(hF(n,this._ignoreSelector)||!pF(t))return;const r={timestamp:tu(t.timestamp),clickBreadcrumb:t,clickCount:0,node:n};this._clicks.some(s=>s.node===r.node&&Math.abs(s.timestamp-r.timestamp)<1)||(this._clicks.push(r),this._clicks.length===1&&this._scheduleCheckClicks())}registerMutation(t=Date.now()){this._lastMutation=tu(t)}registerScroll(t=Date.now()){this._lastScroll=tu(t)}registerClick(t){const n=bE(t);this._handleMultiClick(n)}_handleMultiClick(t){this._getClicks(t).forEach(n=>{n.clickCount++})}_getClicks(t){return this._clicks.filter(n=>n.node===t)}_checkClicks(){const t=[],n=Ng();this._clicks.forEach(r=>{!r.mutationAfter&&this._lastMutation&&(r.mutationAfter=r.timestamp<=this._lastMutation?this._lastMutation-r.timestamp:void 0),!r.scrollAfter&&this._lastScroll&&(r.scrollAfter=r.timestamp<=this._lastScroll?this._lastScroll-r.timestamp:void 0),r.timestamp+this._timeout<=n&&t.push(r)});for(const r of t){const s=this._clicks.indexOf(r);s>-1&&(this._generateBreadcrumbs(r),this._clicks.splice(s,1))}this._clicks.length&&this._scheduleCheckClicks()}_generateBreadcrumbs(t){const n=this._replay,r=t.scrollAfter&&t.scrollAfter<=this._scrollTimeout,s=t.mutationAfter&&t.mutationAfter<=this._threshold,i=!r&&!s,{clickCount:o,clickBreadcrumb:a}=t;if(i){const c=Math.min(t.mutationAfter||this._timeout,this._timeout)*1e3,l=c1){const c={type:"default",message:a.message,timestamp:a.timestamp,category:"ui.multiClick",data:{...a.data,url:je.location.href,route:n.getCurrentRoute(),clickCount:o,metric:!0}};this._addBreadcrumbEvent(n,c)}}_scheduleCheckClicks(){this._checkClickTimeout&&clearTimeout(this._checkClickTimeout),this._checkClickTimeout=Qo(()=>this._checkClicks(),1e3)}}const dF=["A","BUTTON","INPUT"];function hF(e,t){return!!(!dF.includes(e.tagName)||e.tagName==="INPUT"&&!["submit","button"].includes(e.getAttribute("type")||"")||e.tagName==="A"&&(e.hasAttribute("download")||e.hasAttribute("target")&&e.getAttribute("target")!=="_self")||t&&e.matches(t))}function pF(e){return!!(e.data&&typeof e.data.nodeId=="number"&&e.timestamp)}function Ng(){return Date.now()/1e3}function mF(e,t){try{if(!gF(t))return;const{source:n}=t.data;if(lF.has(n)&&e.registerMutation(t.timestamp),n===ye.Scroll&&e.registerScroll(t.timestamp),yF(t)){const{type:r,id:s}=t.data,i=Yn.mirror.getNode(s);i instanceof HTMLElement&&r===xt.Click&&e.registerClick(i)}}catch{}}function gF(e){return e.type===rF}function yF(e){return e.data.source===ye.MouseInteraction}function An(e){return{timestamp:Date.now()/1e3,type:"default",...e}}var eh=(e=>(e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e))(eh||{});const vF=new Set(["id","class","aria-label","role","name","alt","title","data-test-id","data-testid","disabled","aria-disabled","data-sentry-component"]);function _F(e){const t={};!e["data-sentry-component"]&&e["data-sentry-element"]&&(e["data-sentry-component"]=e["data-sentry-element"]);for(const n in e)if(vF.has(n)){let r=n;(n==="data-testid"||n==="data-test-id")&&(r="testId"),t[r]=e[n]}return t}const bF=e=>t=>{if(!e.isEnabled())return;const n=SF(t);if(!n)return;const r=t.name==="click",s=r?t.event:void 0;r&&e.clickDetector&&(s!=null&&s.target)&&!s.altKey&&!s.metaKey&&!s.ctrlKey&&!s.shiftKey&&uF(e.clickDetector,n,SE(t.event)),ta(e,n)};function wE(e,t){const n=Yn.mirror.getId(e),r=n&&Yn.mirror.getNode(n),s=r&&Yn.mirror.getMeta(r),i=s&&wF(s)?s:null;return{message:t,data:i?{nodeId:n,node:{id:n,tagName:i.tagName,textContent:Array.from(i.childNodes).map(o=>o.type===eh.Text&&o.textContent).filter(Boolean).map(o=>o.trim()).join(""),attributes:_F(i.attributes)}}:{}}}function SF(e){const{target:t,message:n}=EF(e);return An({category:`ui.${e.name}`,...wE(t,n)})}function EF(e){const t=e.name==="click";let n,r=null;try{r=t?SE(e.event):EE(e.event),n=Ht(r,{maxStringLength:200})||""}catch{n=""}return{target:r,message:n}}function wF(e){return e.type===eh.Element}function TF(e,t){if(!e.isEnabled())return;e.updateUserActivity();const n=CF(t);n&&ta(e,n)}function CF(e){const{metaKey:t,shiftKey:n,ctrlKey:r,altKey:s,key:i,target:o}=e;if(!o||IF(o)||!i)return null;const a=t||r||s,c=i.length===1;if(!a&&c)return null;const l=Ht(o,{maxStringLength:200})||"",u=wE(o,l);return An({category:"ui.keyDown",message:l,data:{...u.data,metaKey:t,shiftKey:n,ctrlKey:r,altKey:s,key:i}})}function IF(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.isContentEditable}const kF={resource:MF,paint:AF,navigation:OF};function nu(e,t){return({metric:n})=>void t.replayPerformanceEntries.push(e(n))}function xF(e){return e.map(RF).filter(Boolean)}function RF(e){const t=kF[e.entryType];return t?t(e):null}function hi(e){return((Ut()||je.performance.timeOrigin)+e)/1e3}function AF(e){const{duration:t,entryType:n,name:r,startTime:s}=e,i=hi(s);return{type:n,name:r,start:i,end:i+t,data:void 0}}function OF(e){const{entryType:t,name:n,decodedBodySize:r,duration:s,domComplete:i,encodedBodySize:o,domContentLoadedEventStart:a,domContentLoadedEventEnd:c,domInteractive:l,loadEventStart:u,loadEventEnd:f,redirectCount:d,startTime:h,transferSize:p,type:m}=e;return s===0?null:{type:`${t}.${m}`,start:hi(h),end:hi(i),name:n,data:{size:p,decodedBodySize:r,encodedBodySize:o,duration:s,domInteractive:l,domContentLoadedEventStart:a,domContentLoadedEventEnd:c,loadEventStart:u,loadEventEnd:f,domComplete:i,redirectCount:d}}}function MF(e){const{entryType:t,initiatorType:n,name:r,responseEnd:s,startTime:i,decodedBodySize:o,encodedBodySize:a,responseStatus:c,transferSize:l}=e;return["fetch","xmlhttprequest"].includes(n)?null:{type:`${t}.${n}`,start:hi(i),end:hi(s),name:r,data:{size:l,statusCode:c,decodedBodySize:o,encodedBodySize:a}}}function PF(e){const t=e.entries[e.entries.length-1],n=t!=null&&t.element?[t.element]:void 0;return th(e,"largest-contentful-paint",n)}function NF(e){return e.sources!==void 0}function LF(e){const t=[],n=[];for(const r of e.entries)if(NF(r)){const s=[];for(const i of r.sources)if(i.node){n.push(i.node);const o=Yn.mirror.getId(i.node);o&&s.push(o)}t.push({value:r.value,nodeIds:s.length?s:void 0})}return th(e,"cumulative-layout-shift",n,t)}function DF(e){const t=e.entries[e.entries.length-1],n=t!=null&&t.target?[t.target]:void 0;return th(e,"interaction-to-next-paint",n)}function th(e,t,n,r){const s=e.value,i=e.rating,o=hi(s);return{type:"web-vital",name:t,start:o,end:o,data:{value:s,size:s,rating:i,nodeIds:n?n.map(a=>Yn.mirror.getId(a)):void 0,attributions:r}}}function FF(e){function t(s){e.performanceEntries.includes(s)||e.performanceEntries.push(s)}function n({entries:s}){s.forEach(t)}const r=[];return["navigation","paint","resource"].forEach(s=>{r.push(gs(s,n))}),r.push(Wd(nu(PF,e)),Ud(nu(LF,e)),DS(nu(DF,e))),()=>{r.forEach(s=>s())}}const de=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,$F='var t=Uint8Array,n=Uint16Array,r=Int32Array,e=new t([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),i=new t([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),s=new t([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),a=function(t,e){for(var i=new n(31),s=0;s<31;++s)i[s]=e+=1<>1|(21845&c)<<1;v=(61680&(v=(52428&v)>>2|(13107&v)<<2))>>4|(3855&v)<<4,u[c]=((65280&v)>>8|(255&v)<<8)>>1}var d=function(t,r,e){for(var i=t.length,s=0,a=new n(r);s>f]=l}else for(o=new n(i),s=0;s>15-t[s]);return o},p=new t(288);for(c=0;c<144;++c)p[c]=8;for(c=144;c<256;++c)p[c]=9;for(c=256;c<280;++c)p[c]=7;for(c=280;c<288;++c)p[c]=8;var g=new t(32);for(c=0;c<32;++c)g[c]=5;var w=d(p,9,0),y=d(g,5,0),m=function(t){return(t+7)/8|0},b=function(n,r,e){return(null==e||e>n.length)&&(e=n.length),new t(n.subarray(r,e))},M=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],E=function(t,n,r){var e=new Error(n||M[t]);if(e.code=t,Error.captureStackTrace&&Error.captureStackTrace(e,E),!r)throw e;return e},z=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8},_=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8,t[e+2]|=r>>16},x=function(r,e){for(var i=[],s=0;sd&&(d=o[s].s);var p=new n(d+1),g=A(i[c-1],p,0);if(g>e){s=0;var w=0,y=g-e,m=1<e))break;w+=m-(1<>=y;w>0;){var M=o[s].s;p[M]=0&&w;--s){var E=o[s].s;p[E]==e&&(--p[E],++w)}g=e}return{t:new t(p),l:g}},A=function(t,n,r){return-1==t.s?Math.max(A(t.l,n,r+1),A(t.r,n,r+1)):n[t.s]=r},D=function(t){for(var r=t.length;r&&!t[--r];);for(var e=new n(++r),i=0,s=t[0],a=1,o=function(t){e[i++]=t},h=1;h<=r;++h)if(t[h]==s&&h!=r)++a;else{if(!s&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(s),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(s);a=1,s=t[h]}return{c:e.subarray(0,i),n:r}},T=function(t,n){for(var r=0,e=0;e>8,t[i+2]=255^t[i],t[i+3]=255^t[i+1];for(var s=0;s4&&!H[s[K-1]];--K);var N,P,Q,R,V=v+5<<3,W=T(h,p)+T(f,g)+l,X=T(h,M)+T(f,U)+l+14+3*K+T(q,H)+2*q[16]+3*q[17]+7*q[18];if(c>=0&&V<=W&&V<=X)return k(r,m,t.subarray(c,c+v));if(z(r,m,1+(X15&&(z(r,m,tt[B]>>5&127),m+=tt[B]>>12)}}}else N=w,P=p,Q=y,R=g;for(B=0;B255){_(r,m,N[(nt=rt>>18&31)+257]),m+=P[nt+257],nt>7&&(z(r,m,rt>>23&31),m+=e[nt]);var et=31&rt;_(r,m,Q[et]),m+=R[et],et>3&&(_(r,m,rt>>5&8191),m+=i[et])}else _(r,m,N[rt]),m+=P[rt]}return _(r,m,N[256]),m+P[256]},C=new r([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),F=new t(0),I=function(){for(var t=new Int32Array(256),n=0;n<256;++n){for(var r=n,e=9;--e;)r=(1&r&&-306674912)^r>>>1;t[n]=r}return t}(),S=function(){var t=1,n=0;return{p:function(r){for(var e=t,i=n,s=0|r.length,a=0;a!=s;){for(var o=Math.min(a+2655,s);a>16),i=(65535&i)+15*(i>>16)}t=e,n=i},d:function(){return(255&(t%=65521))<<24|(65280&t)<<8|(255&(n%=65521))<<8|n>>8}}},L=function(s,a,o,h,u){if(!u&&(u={l:1},a.dictionary)){var c=a.dictionary.subarray(-32768),v=new t(c.length+s.length);v.set(c),v.set(s,c.length),s=v,u.w=c.length}return function(s,a,o,h,u,c){var v=c.z||s.length,d=new t(h+v+5*(1+Math.ceil(v/7e3))+u),p=d.subarray(h,d.length-u),g=c.l,w=7&(c.r||0);if(a){w&&(p[0]=c.r>>3);for(var y=C[a-1],M=y>>13,E=8191&y,z=(1<7e3||q>24576)&&(N>423||!g)){w=U(s,p,0,F,I,S,O,q,G,j-G,w),q=L=O=0,G=j;for(var P=0;P<286;++P)I[P]=0;for(P=0;P<30;++P)S[P]=0}var Q=2,R=0,V=E,W=J-K&32767;if(N>2&&H==T(j-W))for(var X=Math.min(M,N)-1,Y=Math.min(32767,j),Z=Math.min(258,N);W<=Y&&--V&&J!=K;){if(s[j+Q]==s[j+Q-W]){for(var $=0;$Q){if(Q=$,R=W,$>X)break;var tt=Math.min(W,$-2),nt=0;for(P=0;Pnt&&(nt=et,K=rt)}}}W+=(J=K)-(K=_[J])&32767}if(R){F[q++]=268435456|f[Q]<<18|l[R];var it=31&f[Q],st=31&l[R];O+=e[it]+i[st],++I[257+it],++S[st],B=j+Q,++L}else F[q++]=s[j],++I[s[j]]}}for(j=Math.max(j,B);j=v&&(p[w/8|0]=g,at=v),w=k(p,w+1,s.subarray(j,at))}c.i=v}return b(d,0,h+m(w)+u)}(s,null==a.level?6:a.level,null==a.mem?u.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(s.length)))):20:12+a.mem,o,h,u)},O=function(t,n,r){for(;r;++n)t[n]=r,r>>>=8},j=function(){function n(n,r){if("function"==typeof n&&(r=n,n={}),this.ondata=r,this.o=n||{},this.s={l:0,i:32768,w:32768,z:32768},this.b=new t(98304),this.o.dictionary){var e=this.o.dictionary.subarray(-32768);this.b.set(e,32768-e.length),this.s.i=32768-e.length}}return n.prototype.p=function(t,n){this.ondata(L(t,this.o,0,0,this.s),n)},n.prototype.push=function(n,r){this.ondata||E(5),this.s.l&&E(4);var e=n.length+this.s.z;if(e>this.b.length){if(e>2*this.b.length-32768){var i=new t(-32768&e);i.set(this.b.subarray(0,this.s.z)),this.b=i}var s=this.b.length-this.s.z;this.b.set(n.subarray(0,s),this.s.z),this.s.z=this.b.length,this.p(this.b,!1),this.b.set(this.b.subarray(-32768)),this.b.set(n.subarray(s),32768),this.s.z=n.length-s+32768,this.s.i=32766,this.s.w=32768}else this.b.set(n,this.s.z),this.s.z+=n.length;this.s.l=1&r,(this.s.z>this.s.w+8191||r)&&(this.p(this.b,r||!1),this.s.w=this.s.i,this.s.i-=2)},n.prototype.flush=function(){this.ondata||E(5),this.s.l&&E(4),this.p(this.b,!1),this.s.w=this.s.i,this.s.i-=2},n}();function q(t,n){n||(n={});var r=function(){var t=-1;return{p:function(n){for(var r=t,e=0;e>>8;t=r},d:function(){return~t}}}(),e=t.length;r.p(t);var i,s=L(t,n,10+((i=n).filename?i.filename.length+1:0),8),a=s.length;return function(t,n){var r=n.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=n.level<2?4:9==n.level?2:0,t[9]=3,0!=n.mtime&&O(t,4,Math.floor(new Date(n.mtime||Date.now())/1e3)),r){t[3]=8;for(var e=0;e<=r.length;++e)t[e+10]=r.charCodeAt(e)}}(s,n),O(s,a-8,r.d()),O(s,a-4,e),s}var B=function(){function t(t,n){this.c=S(),this.v=1,j.call(this,t,n)}return t.prototype.push=function(t,n){this.c.p(t),j.prototype.push.call(this,t,n)},t.prototype.p=function(t,n){var r=L(t,this.o,this.v&&(this.o.dictionary?6:2),n&&4,this.s);this.v&&(function(t,n){var r=n.level,e=0==r?0:r<6?1:9==r?3:2;if(t[0]=120,t[1]=e<<6|(n.dictionary&&32),t[1]|=31-(t[0]<<8|t[1])%31,n.dictionary){var i=S();i.p(n.dictionary),O(t,2,i.d())}}(r,this.o),this.v=0),n&&O(r,r.length-4,this.c.d()),this.ondata(r,n)},t.prototype.flush=function(){j.prototype.flush.call(this)},t}(),G="undefined"!=typeof TextEncoder&&new TextEncoder,H="undefined"!=typeof TextDecoder&&new TextDecoder;try{H.decode(F,{stream:!0})}catch(t){}var J=function(){function t(t){this.ondata=t}return t.prototype.push=function(t,n){this.ondata||E(5),this.d&&E(4),this.ondata(K(t),this.d=n||!1)},t}();function K(n,r){if(G)return G.encode(n);for(var e=n.length,i=new t(n.length+(n.length>>1)),s=0,a=function(t){i[s++]=t},o=0;oi.length){var h=new t(s+8+(e-o<<1));h.set(i),i=h}var f=n.charCodeAt(o);f<128||r?a(f):f<2048?(a(192|f>>6),a(128|63&f)):f>55295&&f<57344?(a(240|(f=65536+(1047552&f)|1023&n.charCodeAt(++o))>>18),a(128|f>>12&63),a(128|f>>6&63),a(128|63&f)):(a(224|f>>12),a(128|f>>6&63),a(128|63&f))}return b(i,0,s)}const N=new class{constructor(){this._init()}clear(){this._init()}addEvent(t){if(!t)throw new Error("Adding invalid event");const n=this._hasEvents?",":"";this.stream.push(n+t),this._hasEvents=!0}finish(){this.stream.push("]",!0);const t=function(t){let n=0;for(const r of t)n+=r.length;const r=new Uint8Array(n);for(let n=0,e=0,i=t.length;n{this._deflatedData.push(t)},this.stream=new J((t,n)=>{this.deflate.push(t,n)}),this.stream.push("[")}},P={clear:()=>{N.clear()},addEvent:t=>N.addEvent(t),finish:()=>N.finish(),compress:t=>function(t){return q(K(t))}(t)};addEventListener("message",function(t){const n=t.data.method,r=t.data.id,e=t.data.arg;if(n in P&&"function"==typeof P[n])try{const t=P[n](e);postMessage({id:r,method:n,success:!0,response:t})}catch(t){postMessage({id:r,method:n,success:!1,response:t.message}),console.error(t)}}),postMessage({id:void 0,method:"init",success:!0,response:void 0});';function BF(){const e=new Blob([$F]);return URL.createObjectURL(e)}const Lg=["log","warn","error"],Ha="[Replay] ";function ru(e,t="info"){Or({category:"console",data:{logger:"replay"},level:t,message:`${Ha}${e}`},{level:t})}function HF(){let e=!1,t=!1;const n={exception:()=>{},infoTick:()=>{},setConfig:r=>{e=!!r.captureExceptions,t=!!r.traceInternals}};return de?(Lg.forEach(r=>{n[r]=(...s)=>{X[r](Ha,...s),t&&ru(s.join(""),_S(r))}}),n.exception=(r,...s)=>{s.length&&n.error&&n.error(...s),X.error(Ha,r),e?el(r,{mechanism:{handled:!0,type:"auto.function.replay.debug"}}):t&&ru(r,"error")},n.infoTick=(...r)=>{X.log(Ha,...r),t&&setTimeout(()=>ru(r[0]),0)}):Lg.forEach(r=>{n[r]=()=>{}}),n}const he=HF();class nh extends Error{constructor(){super(`Event buffer exceeded maximum size of ${Gd}.`)}}class TE{constructor(){this.events=[],this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return this.events.length>0}get type(){return"sync"}destroy(){this.events=[]}async addEvent(t){const n=JSON.stringify(t).length;if(this._totalSize+=n,this._totalSize>Gd)throw new nh;this.events.push(t)}finish(){return new Promise(t=>{const n=this.events;this.clear(),t(JSON.stringify(n))})}clear(){this.events=[],this._totalSize=0,this.hasCheckout=!1}getEarliestTimestamp(){const t=this.events.map(n=>n.timestamp).sort()[0];return t?Qd(t):null}}class VF{constructor(t){this._worker=t,this._id=0}ensureReady(){return this._ensureReadyPromise?this._ensureReadyPromise:(this._ensureReadyPromise=new Promise((t,n)=>{this._worker.addEventListener("message",({data:r})=>{r.success?t():n()},{once:!0}),this._worker.addEventListener("error",r=>{n(r)},{once:!0})}),this._ensureReadyPromise)}destroy(){de&&he.log("Destroying compression worker"),this._worker.terminate()}postMessage(t,n){const r=this._getAndIncrementId();return new Promise((s,i)=>{const o=({data:a})=>{const c=a;if(c.method===t&&c.id===r){if(this._worker.removeEventListener("message",o),!c.success){de&&he.error("Error in compression worker: ",c.response),i(new Error("Error in compression worker"));return}s(c.response)}};this._worker.addEventListener("message",o),this._worker.postMessage({id:r,method:t,arg:n})})}_getAndIncrementId(){return this._id++}}class UF{constructor(t){this._worker=new VF(t),this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return!!this._earliestTimestamp}get type(){return"worker"}ensureReady(){return this._worker.ensureReady()}destroy(){this._worker.destroy()}addEvent(t){const n=Qd(t.timestamp);(!this._earliestTimestamp||nGd?Promise.reject(new nh):this._sendEventToWorker(r)}finish(){return this._finishRequest()}clear(){this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this._worker.postMessage("clear").then(null,t=>{de&&he.exception(t,'Sending "clear" message to worker failed',t)})}getEarliestTimestamp(){return this._earliestTimestamp}_sendEventToWorker(t){return this._worker.postMessage("addEvent",t)}async _finishRequest(){const t=await this._worker.postMessage("finish");return this._earliestTimestamp=null,this._totalSize=0,t}}class WF{constructor(t){this._fallback=new TE,this._compression=new UF(t),this._used=this._fallback,this._ensureWorkerIsLoadedPromise=this._ensureWorkerIsLoaded()}get waitForCheckout(){return this._used.waitForCheckout}get type(){return this._used.type}get hasEvents(){return this._used.hasEvents}get hasCheckout(){return this._used.hasCheckout}set hasCheckout(t){this._used.hasCheckout=t}set waitForCheckout(t){this._used.waitForCheckout=t}destroy(){this._fallback.destroy(),this._compression.destroy()}clear(){return this._used.clear()}getEarliestTimestamp(){return this._used.getEarliestTimestamp()}addEvent(t){return this._used.addEvent(t)}async finish(){return await this.ensureWorkerIsLoaded(),this._used.finish()}ensureWorkerIsLoaded(){return this._ensureWorkerIsLoadedPromise}async _ensureWorkerIsLoaded(){try{await this._compression.ensureReady()}catch(t){de&&he.exception(t,"Failed to load the compression worker, falling back to simple buffer");return}await this._switchToCompressionWorker()}async _switchToCompressionWorker(){const{events:t,hasCheckout:n,waitForCheckout:r}=this._fallback,s=[];for(const i of t)s.push(this._compression.addEvent(i));this._compression.hasCheckout=n,this._compression.waitForCheckout=r,this._used=this._compression;try{await Promise.all(s),this._fallback.clear()}catch(i){de&&he.exception(i,"Failed to add events when switching buffers.")}}}function jF({useCompression:e,workerUrl:t}){if(e&&window.Worker){const n=zF(t);if(n)return n}return de&&he.log("Using simple buffer"),new TE}function zF(e){try{const t=e||qF();if(!t)return;de&&he.log(`Using compression worker${e?` from ${e}`:""}`);const n=new Worker(t);return new WF(n)}catch(t){de&&he.exception(t,"Failed to create compression worker")}}function qF(){return typeof __SENTRY_EXCLUDE_REPLAY_WORKER__>"u"||!__SENTRY_EXCLUDE_REPLAY_WORKER__?BF():""}function rh(){try{return"sessionStorage"in je&&!!je.sessionStorage}catch{return!1}}function GF(e){KF(),e.session=void 0}function KF(){if(rh())try{je.sessionStorage.removeItem(zd)}catch{}}function CE(e){return e===void 0?!1:Math.random()e.getContext().initialTimestamp+e.getOptions().maxReplayDuration?(de&&he.infoTick(`Skipping event with timestamp ${n} because it is after maxReplayDuration`),!1):!0}function QF(e,t){try{if(typeof t=="function"&&JF(e))return t(e)}catch(n){return de&&he.exception(n,"An error occurred in the `beforeAddRecordingEvent` callback, skipping the event..."),null}return e}function ih(e){return!e.type}function yf(e){return e.type==="transaction"}function e$(e){return e.type==="replay_event"}function Fg(e){return e.type==="feedback"}function t$(e){return(t,n)=>{if(!e.isEnabled()||!ih(t)&&!yf(t))return;const r=n.statusCode;if(!(!r||r<200||r>=300)){if(yf(t)){n$(e,t);return}r$(e,t)}}}function n$(e,t){var r,s;const n=e.getContext();(s=(r=t.contexts)==null?void 0:r.trace)!=null&&s.trace_id&&n.traceIds.size<100&&n.traceIds.add(t.contexts.trace.trace_id)}function r$(e,t){const n=e.getContext();if(t.event_id&&n.errorIds.size<100&&n.errorIds.add(t.event_id),e.recordingMode!=="buffer"||!t.tags||!t.tags.replayId)return;const{beforeErrorSampling:r}=e.getOptions();typeof r=="function"&&!r(t)||Qo(async()=>{try{await e.sendBufferedReplayOrFlush()}catch(s){e.handleException(s)}})}function s$(e){return t=>{!e.isEnabled()||!ih(t)||i$(e,t)}}function i$(e,t){var r,s,i;const n=(i=(s=(r=t.exception)==null?void 0:r.values)==null?void 0:s[0])==null?void 0:i.value;if(typeof n=="string"&&(n.match(/(reactjs\.org\/docs\/error-decoder\.html\?invariant=|react\.dev\/errors\/)(418|419|422|423|425)/)||n.match(/(does not match server-rendered HTML|Hydration failed because)/i))){const o=An({category:"replay.hydrate-error",data:{url:Ii()}});ta(e,o)}}function o$(e){const t=Ie();t&&t.on("beforeAddBreadcrumb",n=>a$(e,n))}function a$(e,t){if(!e.isEnabled()||!OE(t))return;const n=c$(t);n&&ta(e,n)}function c$(e){return!OE(e)||["fetch","xhr","sentry.event","sentry.transaction"].includes(e.category)||e.category.startsWith("ui.")?null:e.category==="console"?l$(e):An(e)}function l$(e){var s;const t=(s=e.data)==null?void 0:s.arguments;if(!Array.isArray(t)||t.length===0)return An(e);let n=!1;const r=t.map(i=>{if(!i)return i;if(typeof i=="string")return i.length>ya?(n=!0,`${i.slice(0,ya)}…`):i;if(typeof i=="object")try{const o=un(i,7);return JSON.stringify(o).length>ya?(n=!0,`${JSON.stringify(o,null,2).slice(0,ya)}…`):o}catch{}return i});return An({...e,data:{...e.data,arguments:r,...n?{_meta:{warnings:["CONSOLE_ARG_TRUNCATED"]}}:{}}})}function OE(e){return!!e.category}function u$(e,t){var n,r,s;return e.type||!((r=(n=e.exception)==null?void 0:n.values)!=null&&r.length)?!1:!!((s=t.originalException)!=null&&s.__rrweb__)}function ME(){const e=De().getPropagationContext().dsc;e&&delete e.replay_id;const t=bt();if(t){const n=sr(t);delete n.replay_id}}function f$(e,t){e.triggerUserActivity(),e.addUpdate(()=>t.timestamp?(e.throttledAddEvent({type:we.Custom,timestamp:t.timestamp*1e3,data:{tag:"breadcrumb",payload:{timestamp:t.timestamp,type:"default",category:"sentry.feedback",data:{feedbackId:t.event_id}}}}),!1):!0)}function d$(e,t){return e.recordingMode!=="buffer"||t.message===qd||!t.exception||t.type?!1:CE(e.getOptions().errorSampleRate)}function h$(e){return Object.assign((t,n)=>{var o;if(!e.isEnabled()||e.isPaused())return t;if(e$(t))return delete t.breadcrumbs,t;if(!ih(t)&&!yf(t)&&!Fg(t))return t;if(!e.checkAndHandleExpiredSession())return ME(),t;if(Fg(t))return e.flush(),t.contexts.feedback.replay_id=e.getSessionId(),f$(e,t),t;if(u$(t,n)&&!e.getOptions()._experiments.captureExceptions)return de&&he.log("Ignoring error from rrweb internals",t),null;const s=d$(e,t);if((s||e.recordingMode==="session")&&(t.tags={...t.tags,replayId:e.getSessionId()}),s&&e.recordingMode==="buffer"&&((o=e.session)==null?void 0:o.sampled)==="buffer"){const a=e.session;a.dirty=!0,e.getOptions().stickySession&&al(a)}return t},{id:"Replay"})}function cl(e,t){return t.map(({type:n,start:r,end:s,name:i,data:o})=>{const a=e.throttledAddEvent({type:we.Custom,timestamp:r,data:{tag:"performanceSpan",payload:{op:n,description:i,startTimestamp:r,endTimestamp:s,data:o}}});return typeof a=="string"?Promise.resolve(null):a})}function p$(e){const{from:t,to:n}=e,r=Date.now()/1e3;return{type:"navigation.push",start:r,end:r,name:n,data:{previous:t}}}function m$(e){return t=>{if(!e.isEnabled())return;const n=p$(t);n!==null&&(e.getContext().urls.push(n.name),e.triggerUserActivity(),e.addUpdate(()=>(cl(e,[n]),!1)))}}function g$(e,t){return de&&e.getOptions()._experiments.traceInternals?!1:iM(t,Ie())}function PE(e,t){e.isEnabled()&&t!==null&&(g$(e,t.name)||e.addUpdate(()=>(cl(e,[t]),!0)))}function ll(e){if(!e)return;const t=new TextEncoder;try{if(typeof e=="string")return t.encode(e).length;if(e instanceof URLSearchParams)return t.encode(e.toString()).length;if(e instanceof FormData){const n=zS(e);return t.encode(n).length}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength}catch{}}function NE(e){if(!e)return;const t=parseInt(e,10);return isNaN(t)?void 0:t}function wc(e,t){if(!e)return{headers:{},size:void 0,_meta:{warnings:[t]}};const n={...e._meta},r=n.warnings||[];return n.warnings=[...r,t],e._meta=n,e}function LE(e,t){if(!t)return null;const{startTimestamp:n,endTimestamp:r,url:s,method:i,statusCode:o,request:a,response:c}=t;return{type:e,start:n/1e3,end:r/1e3,name:s,data:{method:i,statusCode:o,request:a,response:c}}}function Oo(e){return{headers:{},size:e,_meta:{warnings:["URL_SKIPPED"]}}}function Ir(e,t,n){if(!t&&Object.keys(e).length===0)return;if(!t)return{headers:e};if(!n)return{headers:e,size:t};const r={headers:e,size:t},{body:s,warnings:i}=y$(n);return r.body=s,i!=null&&i.length&&(r._meta={warnings:i}),r}function vf(e,t){return Object.entries(e).reduce((n,[r,s])=>{const i=r.toLowerCase();return t.includes(i)&&e[r]&&(n[i]=s),n},{})}function y$(e){if(!e||typeof e!="string")return{body:e};const t=e.length>yg,n=v$(e);if(t){const r=e.slice(0,yg);return n?{body:r,warnings:["MAYBE_JSON_TRUNCATED"]}:{body:`${r}…`,warnings:["TEXT_TRUNCATED"]}}if(n)try{return{body:JSON.parse(e)}}catch{}return{body:e}}function v$(e){const t=e[0],n=e[e.length-1];return t==="["&&n==="]"||t==="{"&&n==="}"}function Tc(e,t){const n=_$(e);return Gn(n,t)}function _$(e,t=je.document.baseURI){if(e.startsWith("http://")||e.startsWith("https://")||e.startsWith(je.location.origin))return e;const n=new URL(e,t);if(n.origin!==new URL(t).origin)return e;const r=n.href;return!e.endsWith("/")&&r.endsWith("/")?r.slice(0,-1):r}async function b$(e,t,n){try{const r=await E$(e,t,n),s=LE("resource.fetch",r);PE(n.replay,s)}catch(r){de&&he.exception(r,"Failed to capture fetch breadcrumb")}}function S$(e,t){const{input:n,response:r}=t,s=n?GS(n):void 0,i=ll(s),o=r?NE(r.headers.get("content-length")):void 0;i!==void 0&&(e.data.request_body_size=i),o!==void 0&&(e.data.response_body_size=o)}async function E$(e,t,n){const r=Date.now(),{startTimestamp:s=r,endTimestamp:i=r}=t,{url:o,method:a,status_code:c=0,request_body_size:l,response_body_size:u}=e.data,f=Tc(o,n.networkDetailAllowUrls)&&!Tc(o,n.networkDetailDenyUrls),d=f?w$(n,t.input,l):Oo(l),h=await T$(f,n,t.response,u);return{startTimestamp:s,endTimestamp:i,url:o,method:a,statusCode:c,request:d,response:h}}function w$({networkCaptureBodies:e,networkRequestHeaders:t},n,r){const s=n?k$(n,t):{};if(!e)return Ir(s,r,void 0);const i=GS(n),[o,a]=qS(i,he),c=Ir(s,r,o);return a?wc(c,a):c}async function T$(e,{networkCaptureBodies:t,networkResponseHeaders:n},r,s){if(!e&&s!==void 0)return Oo(s);const i=r?DE(r.headers,n):{};if(!r||!t&&s!==void 0)return Ir(i,s,void 0);const[o,a]=await I$(r),c=C$(o,{networkCaptureBodies:t,responseBodySize:s,captureDetails:e,headers:i});return a?wc(c,a):c}function C$(e,{networkCaptureBodies:t,responseBodySize:n,captureDetails:r,headers:s}){try{const i=e!=null&&e.length&&n===void 0?ll(e):n;return r?t?Ir(s,i,e):Ir(s,i,void 0):Oo(i)}catch(i){return de&&he.exception(i,"Failed to serialize response body"),Ir(s,n,void 0)}}async function I$(e){const t=x$(e);if(!t)return[void 0,"BODY_PARSE_ERROR"];try{return[await R$(t)]}catch(n){return n instanceof Error&&n.message.indexOf("Timeout")>-1?(de&&he.warn("Parsing text body from response timed out"),[void 0,"BODY_PARSE_TIMEOUT"]):(de&&he.exception(n,"Failed to get text body from response"),[void 0,"BODY_PARSE_ERROR"])}}function DE(e,t){const n={};return t.forEach(r=>{e.get(r)&&(n[r]=e.get(r))}),n}function k$(e,t){return e.length===1&&typeof e[0]!="string"?$g(e[0],t):e.length===2?$g(e[1],t):{}}function $g(e,t){if(!e)return{};const n=e.headers;return n?n instanceof Headers?DE(n,t):Array.isArray(n)?{}:vf(n,t):{}}function x$(e){try{return e.clone()}catch(t){de&&he.exception(t,"Failed to clone response body")}}function R$(e){return new Promise((t,n)=>{const r=Qo(()=>n(new Error("Timeout while trying to read response body")),500);A$(e).then(s=>t(s),s=>n(s)).finally(()=>clearTimeout(r))})}async function A$(e){return await e.text()}async function O$(e,t,n){try{const r=P$(e,t,n),s=LE("resource.xhr",r);PE(n.replay,s)}catch(r){de&&he.exception(r,"Failed to capture xhr breadcrumb")}}function M$(e,t){const{xhr:n,input:r}=t;if(!n)return;const s=ll(r),i=n.getResponseHeader("content-length")?NE(n.getResponseHeader("content-length")):D$(n.response,n.responseType);s!==void 0&&(e.data.request_body_size=s),i!==void 0&&(e.data.response_body_size=i)}function P$(e,t,n){const r=Date.now(),{startTimestamp:s=r,endTimestamp:i=r,input:o,xhr:a}=t,{url:c,method:l,status_code:u=0,request_body_size:f,response_body_size:d}=e.data;if(!c)return null;if(!a||!Tc(c,n.networkDetailAllowUrls)||Tc(c,n.networkDetailDenyUrls)){const R=Oo(f),E=Oo(d);return{startTimestamp:s,endTimestamp:i,url:c,method:l,statusCode:u,request:R,response:E}}const h=a[Zr],p=h?vf(h.request_headers,n.networkRequestHeaders):{},m=vf(KS(a),n.networkResponseHeaders),[y,g]=n.networkCaptureBodies?qS(o,he):[void 0],[v,_]=n.networkCaptureBodies?N$(a):[void 0],T=Ir(p,f,y),O=Ir(m,d,v);return{startTimestamp:s,endTimestamp:i,url:c,method:l,statusCode:u,request:g?wc(T,g):T,response:_?wc(O,_):O}}function N$(e){const t=[];try{return[e.responseText]}catch(n){t.push(n)}try{return L$(e.response,e.responseType)}catch(n){t.push(n)}return de&&he.warn("Failed to get xhr response body",...t),[void 0]}function L$(e,t){try{if(typeof e=="string")return[e];if(e instanceof Document)return[e.body.outerHTML];if(t==="json"&&e&&typeof e=="object")return[JSON.stringify(e)];if(!e)return[void 0]}catch(n){return de&&he.exception(n,"Failed to serialize body",e),[void 0,"BODY_PARSE_ERROR"]}return de&&he.log("Skipping network body because of body type",e),[void 0,"UNPARSEABLE_BODY_TYPE"]}function D$(e,t){try{const n=t==="json"&&e&&typeof e=="object"?JSON.stringify(e):e;return ll(n)}catch{return}}function F$(e){const t=Ie();try{const{networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:s,networkRequestHeaders:i,networkResponseHeaders:o}=e.getOptions(),a={replay:e,networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:s,networkRequestHeaders:i,networkResponseHeaders:o};t&&t.on("beforeAddBreadcrumb",(c,l)=>$$(a,c,l))}catch{}}function $$(e,t,n){if(t.data)try{B$(t)&&V$(n)&&(M$(t,n),O$(t,n,e)),H$(t)&&U$(n)&&(S$(t,n),b$(t,n,e))}catch(r){de&&he.exception(r,"Error when enriching network breadcrumb")}}function B$(e){return e.category==="xhr"}function H$(e){return e.category==="fetch"}function V$(e){return e==null?void 0:e.xhr}function U$(e){return e==null?void 0:e.response}function W$(e){const t=Ie();US(bF(e)),rl(m$(e)),o$(e),F$(e);const n=h$(e);CO(n),t&&(t.on("beforeSendEvent",s$(e)),t.on("afterSendEvent",t$(e)),t.on("createDsc",r=>{const s=e.getSessionId();s&&e.isEnabled()&&e.recordingMode==="session"&&e.checkAndHandleExpiredSession()&&(r.replay_id=s)}),t.on("spanStart",r=>{e.lastActiveSpan=r}),t.on("spanEnd",r=>{e.lastActiveSpan=r}),t.on("beforeSendFeedback",async(r,s)=>{var o;const i=e.getSessionId();s!=null&&s.includeReplay&&e.isEnabled()&&i&&((o=r.contexts)!=null&&o.feedback)&&(r.contexts.feedback.source==="api"&&await e.sendBufferedReplayOrFlush(),r.contexts.feedback.replay_id=i)}),t.on("openFeedbackWidget",async()=>{await e.sendBufferedReplayOrFlush()}))}async function j$(e){try{return Promise.all(cl(e,[z$(je.performance.memory)]))}catch{return[]}}function z$(e){const{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}=e,s=Date.now()/1e3;return{type:"memory",name:"memory",start:s,end:s,data:{memory:{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}}}}function q$(e,t,n){return fM(e,t,{...n,setTimeoutImpl:Qo})}const Qt=Ce.navigator;function G$(){return/iPhone|iPad|iPod/i.test((Qt==null?void 0:Qt.userAgent)??"")||/Macintosh/i.test((Qt==null?void 0:Qt.userAgent)??"")&&(Qt!=null&&Qt.maxTouchPoints)&&(Qt==null?void 0:Qt.maxTouchPoints)>1?{sampling:{mousemove:!1}}:{}}function K$(e){let t=!1;return(n,r)=>{if(!e.checkAndHandleExpiredSession()){de&&he.warn("Received replay event after session expired.");return}const s=r||!t;t=!0,e.clickDetector&&mF(e.clickDetector,n),e.addUpdate(()=>{if(e.recordingMode==="buffer"&&s&&e.setInitialState(),!sh(e,n,s))return!0;if(!s)return!1;const i=e.session;if(X$(e,s),e.recordingMode==="buffer"&&i&&e.eventBuffer&&!i.dirty){const o=e.eventBuffer.getEarliestTimestamp();o&&(de&&he.log(`Updating session start time to earliest event in buffer to ${new Date(o)}`),i.started=o,e.getOptions().stickySession&&al(i))}return i!=null&&i.previousSessionId||e.recordingMode==="session"&&e.flush(),!0})}}function Y$(e){const t=e.getOptions();return{type:we.Custom,timestamp:Date.now(),data:{tag:"options",payload:{shouldRecordCanvas:e.isRecordingCanvas(),sessionSampleRate:t.sessionSampleRate,errorSampleRate:t.errorSampleRate,useCompressionOption:t.useCompression,blockAllMedia:t.blockAllMedia,maskAllText:t.maskAllText,maskAllInputs:t.maskAllInputs,useCompression:e.eventBuffer?e.eventBuffer.type==="worker":!1,networkDetailHasUrls:t.networkDetailAllowUrls.length>0,networkCaptureBodies:t.networkCaptureBodies,networkRequestHasHeaders:t.networkRequestHeaders.length>0,networkResponseHasHeaders:t.networkResponseHeaders.length>0}}}}function X$(e,t){!t||!e.session||e.session.segmentId!==0||sh(e,Y$(e),!1)}function J$(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function Z$(e,t,n,r){return Vr(Kb(e,xd(e),r,n),[[{type:"replay_event"},e],[{type:"replay_recording",length:typeof t=="string"?new TextEncoder().encode(t).length:t.length},t]])}function Q$({recordingData:e,headers:t}){let n;const r=`${JSON.stringify(t)} -`;if(typeof e=="string")n=`${r}${e}`;else{const i=new TextEncoder().encode(r);n=new Uint8Array(i.length+e.length),n.set(i),n.set(e,i.length)}return n}async function eB({client:e,scope:t,replayId:n,event:r}){const s=typeof e._integrations=="object"&&e._integrations!==null&&!Array.isArray(e._integrations)?Object.keys(e._integrations):void 0,i={event_id:n,integrations:s};e.emit("preprocessEvent",r,i);const o=await eS(e.getOptions(),r,i,t,e,Nn());if(!o)return null;e.emit("postprocessEvent",o,i),o.platform=o.platform||"javascript";const a=e.getSdkMetadata(),{name:c,version:l,settings:u}=(a==null?void 0:a.sdk)||{};return o.sdk={...o.sdk,name:c||"sentry.javascript.unknown",version:l||"0.0.0",settings:u},o}async function tB({recordingData:e,replayId:t,segmentId:n,eventContext:r,timestamp:s,session:i}){const o=Q$({recordingData:e,headers:{segment_id:n}}),{urls:a,errorIds:c,traceIds:l,initialTimestamp:u}=r,f=Ie(),d=De(),h=f==null?void 0:f.getTransport(),p=f==null?void 0:f.getDsn();if(!f||!h||!p||!i.sampled)return Promise.resolve({});const m={type:OL,replay_start_timestamp:u/1e3,timestamp:s/1e3,error_ids:c,trace_ids:l,urls:a,replay_id:t,segment_id:n,replay_type:i.sampled},y=await eB({scope:d,client:f,replayId:t,event:m});if(!y)return f.recordDroppedEvent("event_processor","replay"),de&&he.log("An event processor returned `null`, will not send event."),Promise.resolve({});delete y.sdkProcessingMetadata;const g=Z$(y,o,p,f.getOptions().tunnel);let v;try{v=await h.send(g)}catch(T){const O=new Error(qd);try{O.cause=T}catch{}throw O}if(typeof v.statusCode=="number"&&(v.statusCode<200||v.statusCode>=300))throw new FE(v.statusCode);const _=uS({},v);if(lS(_,"replay"))throw new oh(_);return v}class FE extends Error{constructor(t){super(`Transport returned status code ${t}`)}}class oh extends Error{constructor(t){super("Rate limit hit"),this.rateLimits=t}}async function $E(e,t={count:0,interval:FL}){const{recordingData:n,onError:r}=e;if(n.length)try{return await tB(e),!0}catch(s){if(s instanceof FE||s instanceof oh)throw s;if(wO("Replays",{_retryCount:t.count}),r&&r(s),t.count>=$L){const i=new Error(`${qd} - max retries exceeded`);try{i.cause=s}catch{}throw i}return t.interval*=++t.count,new Promise((i,o)=>{Qo(async()=>{try{await $E(e,t),i(!0)}catch(a){o(a)}},t.interval)})}}const BE="__THROTTLED",nB="__SKIPPED";function rB(e,t,n){const r=new Map,s=a=>{const c=a-n;r.forEach((l,u)=>{u[...r.values()].reduce((a,c)=>a+c,0);let o=!1;return(...a)=>{const c=Math.floor(Date.now()/1e3);if(s(c),i()>=t){const u=o;return o=!0,u?nB:BE}o=!1;const l=r.get(c)||0;return r.set(c,l+1),e(...a)}}class sB{constructor({options:t,recordingOptions:n}){this.eventBuffer=null,this.performanceEntries=[],this.replayPerformanceEntries=[],this.recordingMode="session",this.timeouts={sessionIdlePause:ML,sessionIdleExpire:PL},this._lastActivity=Date.now(),this._isEnabled=!1,this._isPaused=!1,this._requiresManualStart=!1,this._hasInitializedCoreListeners=!1,this._context={errorIds:new Set,traceIds:new Set,urls:[],initialTimestamp:Date.now(),initialUrl:""},this._recordingOptions=n,this._options=t,this._debouncedFlush=q$(()=>this._flush(),this._options.flushMinDelay,{maxWait:this._options.flushMaxDelay}),this._throttledAddEvent=rB((o,a)=>ZF(this,o,a),300,5);const{slowClickTimeout:r,slowClickIgnoreSelectors:s}=this.getOptions(),i=r?{threshold:Math.min(BL,r),timeout:r,scrollTimeout:HL,ignoreSelector:s?s.join(","):""}:void 0;if(i&&(this.clickDetector=new fF(this,i)),de){const o=t._experiments;he.setConfig({captureExceptions:!!o.captureExceptions,traceInternals:!!o.traceInternals})}this._handleVisibilityChange=()=>{je.document.visibilityState==="visible"?this._doChangeToForegroundTasks():this._doChangeToBackgroundTasks()},this._handleWindowBlur=()=>{const o=An({category:"ui.blur"});this._doChangeToBackgroundTasks(o)},this._handleWindowFocus=()=>{const o=An({category:"ui.focus"});this._doChangeToForegroundTasks(o)},this._handleKeyboardEvent=o=>{TF(this,o)}}getContext(){return this._context}isEnabled(){return this._isEnabled}isPaused(){return this._isPaused}isRecordingCanvas(){return!!this._canvas}getOptions(){return this._options}handleException(t){de&&he.exception(t),this._options.onError&&this._options.onError(t)}initializeSampling(t){const{errorSampleRate:n,sessionSampleRate:r}=this._options,s=n<=0&&r<=0;if(this._requiresManualStart=s,!s){if(this._initializeSessionForSampling(t),!this.session){de&&he.exception(new Error("Unable to initialize and create session"));return}this.session.sampled!==!1&&(this.recordingMode=this.session.sampled==="buffer"&&this.session.segmentId===0?"buffer":"session",de&&he.infoTick(`Starting replay in ${this.recordingMode} mode`),this._initializeRecording())}}start(){if(this._isEnabled&&this.recordingMode==="session"){de&&he.log("Recording is already in progress");return}if(this._isEnabled&&this.recordingMode==="buffer"){de&&he.log("Buffering is in progress, call `flush()` to save the replay");return}de&&he.infoTick("Starting replay in session mode"),this._updateUserActivity();const t=su({maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire},{stickySession:this._options.stickySession,sessionSampleRate:1,allowBuffering:!1});this.session=t,this.recordingMode="session",this._initializeRecording()}startBuffering(){if(this._isEnabled){de&&he.log("Buffering is in progress, call `flush()` to save the replay");return}de&&he.infoTick("Starting replay in buffer mode");const t=su({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration},{stickySession:this._options.stickySession,sessionSampleRate:0,allowBuffering:!0});this.session=t,this.recordingMode="buffer",this._initializeRecording()}startRecording(){try{const t=this._canvas;this._stopRecording=Yn({...this._recordingOptions,...this.recordingMode==="buffer"?{checkoutEveryNms:DL}:this._options._experiments.continuousCheckout&&{checkoutEveryNms:Math.max(36e4,this._options._experiments.continuousCheckout)},emit:K$(this),...G$(),onMutation:this._onMutationHandler.bind(this),...t?{recordCanvas:t.recordCanvas,getCanvasManager:t.getCanvasManager,sampling:t.sampling,dataURLOptions:t.dataURLOptions}:{}})}catch(t){this.handleException(t)}}stopRecording(){try{return this._stopRecording&&(this._stopRecording(),this._stopRecording=void 0),!0}catch(t){return this.handleException(t),!1}}async stop({forceFlush:t=!1,reason:n}={}){var r;if(this._isEnabled){this._isEnabled=!1,this.recordingMode="buffer";try{de&&he.log(`Stopping Replay${n?` triggered by ${n}`:""}`),ME(),this._removeListeners(),this.stopRecording(),this._debouncedFlush.cancel(),t&&await this._flush({force:!0}),(r=this.eventBuffer)==null||r.destroy(),this.eventBuffer=null,GF(this)}catch(s){this.handleException(s)}}}pause(){this._isPaused||(this._isPaused=!0,this.stopRecording(),de&&he.log("Pausing replay"))}resume(){!this._isPaused||!this._checkSession()||(this._isPaused=!1,this.startRecording(),de&&he.log("Resuming replay"))}async sendBufferedReplayOrFlush({continueRecording:t=!0}={}){if(this.recordingMode==="session")return this.flushImmediate();const n=Date.now();de&&he.log("Converting buffer to session"),await this.flushImmediate();const r=this.stopRecording();!t||!r||this.recordingMode!=="session"&&(this.recordingMode="session",this.session&&(this.session.dirty=!1,this._updateUserActivity(n),this._updateSessionActivity(n),this._maybeSaveSession()),this.startRecording())}addUpdate(t){const n=t();this.recordingMode==="buffer"||!this._isEnabled||n!==!0&&this._debouncedFlush()}triggerUserActivity(){if(this._updateUserActivity(),!this._stopRecording){if(!this._checkSession())return;this.resume();return}this.checkAndHandleExpiredSession(),this._updateSessionActivity()}updateUserActivity(){this._updateUserActivity(),this._updateSessionActivity()}conditionalFlush(){return this.recordingMode==="buffer"?Promise.resolve():this.flushImmediate()}flush(){return this._debouncedFlush()}flushImmediate(){return this._debouncedFlush(),this._debouncedFlush.flush()}cancelFlush(){this._debouncedFlush.cancel()}getSessionId(t){var n,r;if(!(t&&((n=this.session)==null?void 0:n.sampled)===!1))return(r=this.session)==null?void 0:r.id}checkAndHandleExpiredSession(){if(this._lastActivity&&gf(this._lastActivity,this.timeouts.sessionIdlePause)&&this.session&&this.session.sampled==="session"){this.pause();return}return!!this._checkSession()}setInitialState(){const t=`${je.location.pathname}${je.location.hash}${je.location.search}`,n=`${je.location.origin}${t}`;this.performanceEntries=[],this.replayPerformanceEntries=[],this._clearContext(),this._context.initialUrl=n,this._context.initialTimestamp=Date.now(),this._context.urls.push(n)}throttledAddEvent(t,n){const r=this._throttledAddEvent(t,n);if(r===BE){const s=An({category:"replay.throttled"});this.addUpdate(()=>!sh(this,{type:sF,timestamp:s.timestamp||0,data:{tag:"breadcrumb",payload:s,metric:!0}}))}return r}getCurrentRoute(){const t=this.lastActiveSpan||bt(),n=t&&vt(t),s=(n&&ke(n).data||{})[Bt];if(!(!n||!s||!["route","custom"].includes(s)))return ke(n).description}_initializeRecording(){this.setInitialState(),this._updateSessionActivity(),this.eventBuffer=jF({useCompression:this._options.useCompression,workerUrl:this._options.workerUrl}),this._removeListeners(),this._addListeners(),this._isEnabled=!0,this._isPaused=!1,this.startRecording()}_initializeSessionForSampling(t){const n=this._options.errorSampleRate>0,r=su({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration,previousSessionId:t},{stickySession:this._options.stickySession,sessionSampleRate:this._options.sessionSampleRate,allowBuffering:n});this.session=r}_checkSession(){if(!this.session)return!1;const t=this.session;return xE(t,{sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration})?(this._refreshSession(t),!1):!0}async _refreshSession(t){this._isEnabled&&(await this.stop({reason:"refresh session"}),this.initializeSampling(t.id))}_addListeners(){try{je.document.addEventListener("visibilitychange",this._handleVisibilityChange),je.addEventListener("blur",this._handleWindowBlur),je.addEventListener("focus",this._handleWindowFocus),je.addEventListener("keydown",this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.addListeners(),this._hasInitializedCoreListeners||(W$(this),this._hasInitializedCoreListeners=!0)}catch(t){this.handleException(t)}this._performanceCleanupCallback=FF(this)}_removeListeners(){try{je.document.removeEventListener("visibilitychange",this._handleVisibilityChange),je.removeEventListener("blur",this._handleWindowBlur),je.removeEventListener("focus",this._handleWindowFocus),je.removeEventListener("keydown",this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.removeListeners(),this._performanceCleanupCallback&&this._performanceCleanupCallback()}catch(t){this.handleException(t)}}_doChangeToBackgroundTasks(t){!this.session||kE(this.session,{maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire})||(t&&this._createCustomBreadcrumb(t),this.conditionalFlush())}_doChangeToForegroundTasks(t){if(!this.session)return;if(!this.checkAndHandleExpiredSession()){de&&he.log("Document has become active, but session has expired");return}t&&this._createCustomBreadcrumb(t)}_updateUserActivity(t=Date.now()){this._lastActivity=t}_updateSessionActivity(t=Date.now()){this.session&&(this.session.lastActivity=t,this._maybeSaveSession())}_createCustomBreadcrumb(t){this.addUpdate(()=>{this.throttledAddEvent({type:we.Custom,timestamp:t.timestamp||0,data:{tag:"breadcrumb",payload:t}})})}_addPerformanceEntries(){let t=xF(this.performanceEntries).concat(this.replayPerformanceEntries);if(this.performanceEntries=[],this.replayPerformanceEntries=[],this._requiresManualStart){const n=this._context.initialTimestamp/1e3;t=t.filter(r=>r.start>=n)}return Promise.all(cl(this,t))}_clearContext(){this._context.errorIds.clear(),this._context.traceIds.clear(),this._context.urls=[]}_updateInitialTimestampFromEventBuffer(){const{session:t,eventBuffer:n}=this;if(!t||!n||this._requiresManualStart||t.segmentId)return;const r=n.getEarliestTimestamp();r&&rthis._options.maxReplayDuration+3e4)throw new Error("Session is too long, not sending replay");const s=this._popEventContext(),i=this.session.segmentId++;this._maybeSaveSession();const o=await this.eventBuffer.finish();await $E({replayId:t,recordingData:o,segmentId:i,eventContext:s,session:this.session,timestamp:r,onError:a=>this.handleException(a)})}catch(r){this.handleException(r),this.stop({reason:"sendReplay"});const s=Ie();if(s){const i=r instanceof oh?"ratelimit_backoff":"send_error";s.recordDroppedEvent(i,"replay")}}}async _flush({force:t=!1}={}){if(!this._isEnabled&&!t)return;if(!this.checkAndHandleExpiredSession()){de&&he.error("Attempting to finish replay event after session expired.");return}if(!this.session)return;const n=this.session.started,s=Date.now()-n;this._debouncedFlush.cancel();const i=sthis._options.maxReplayDuration+5e3;if(i||o){de&&he.log(`Session duration (${Math.floor(s/1e3)}s) is too ${i?"short":"long"}, not sending replay.`),i&&this._debouncedFlush();return}const a=this.eventBuffer;a&&this.session.segmentId===0&&!a.hasCheckout&&de&&he.log("Flushing initial segment without checkout.");const c=!!this._flushLock;this._flushLock||(this._flushLock=this._runFlush());try{await this._flushLock}catch(l){this.handleException(l)}finally{this._flushLock=void 0,c&&this._debouncedFlush()}}_maybeSaveSession(){this.session&&this._options.stickySession&&al(this.session)}_onMutationHandler(t){const{ignoreMutations:n}=this._options._experiments;if(n!=null&&n.length&&t.some(a=>{const c=J$(a.target),l=n.join(",");return c==null?void 0:c.matches(l)}))return!1;const r=t.length,s=this._options.mutationLimit,i=this._options.mutationBreadcrumbLimit,o=s&&r>s;if(r>i||o){const a=An({category:"replay.mutations",data:{count:r,limit:o}});this._createCustomBreadcrumb(a)}return o?(this.stop({reason:"mutationLimit",forceFlush:this.recordingMode==="session"}),!1):!0}}function Vi(e,t){return[...e,...t].join(",")}function iB({mask:e,unmask:t,block:n,unblock:r,ignore:s}){const i=["base","iframe[srcdoc]:not([src])"],o=Vi(e,[".sentry-mask","[data-sentry-mask]"]),a=Vi(t,[]);return{maskTextSelector:o,unmaskTextSelector:a,blockSelector:Vi(n,[".sentry-block","[data-sentry-block]",...i]),unblockSelector:Vi(r,[]),ignoreSelector:Vi(s,[".sentry-ignore","[data-sentry-ignore]",'input[type="file"]'])}}function oB({el:e,key:t,maskAttributes:n,maskAllText:r,privacyOptions:s,value:i}){return!r||s.unmaskTextSelector&&e.matches(s.unmaskTextSelector)?i:n.includes(t)||t==="value"&&e.tagName==="INPUT"&&["submit","button"].includes(e.getAttribute("type")||"")?i.replace(/[\S]/g,"*"):i}const Bg='img,image,svg,video,object,picture,embed,map,audio,link[rel="icon"],link[rel="apple-touch-icon"]',aB=["content-length","content-type","accept"],cB=Symbol.for("sentry__originalRequestBody");let Hg=!1,Vg=!1;function lB(){if(typeof Request>"u"||Vg)return;const e=Request;try{const t=function(n,r){const s=new e(n,r);return(r==null?void 0:r.body)!=null&&(s[cB]=r.body),s};t.prototype=e.prototype,Ce.Request=t,Vg=!0}catch{}}const uB=e=>new fB(e);class fB{constructor({flushMinDelay:t=NL,flushMaxDelay:n=LL,minReplayDuration:r=VL,maxReplayDuration:s=vg,stickySession:i=!0,useCompression:o=!0,workerUrl:a,_experiments:c={},maskAllText:l=!0,maskAllInputs:u=!0,blockAllMedia:f=!0,mutationBreadcrumbLimit:d=750,mutationLimit:h=1e4,slowClickTimeout:p=7e3,slowClickIgnoreSelectors:m=[],networkDetailAllowUrls:y=[],networkDetailDenyUrls:g=[],networkCaptureBodies:v=!0,networkRequestHeaders:_=[],networkResponseHeaders:T=[],mask:O=[],maskAttributes:R=["title","placeholder","aria-label"],unmask:E=[],block:w=[],unblock:I=[],ignore:A=[],maskFn:M,beforeAddRecordingEvent:x,beforeErrorSampling:N,onError:L,attachRawBodyFromRequest:G=!1}={}){this.name="Replay";const J=iB({mask:O,unmask:E,block:w,unblock:I,ignore:A});if(this._recordingOptions={maskAllInputs:u,maskAllText:l,maskInputOptions:{password:!0},maskTextFn:M,maskInputFn:M,maskAttributeFn:(j,D,ae)=>oB({maskAttributes:R,maskAllText:l,privacyOptions:J,key:j,value:D,el:ae}),...J,slimDOMOptions:"all",inlineStylesheet:!0,inlineImages:!1,collectFonts:!0,errorHandler:j=>{try{j.__rrweb__=!0}catch{}},recordCrossOriginIframes:!!c.recordCrossOriginIframes},this._initialOptions={flushMinDelay:t,flushMaxDelay:n,minReplayDuration:Math.min(r,UL),maxReplayDuration:Math.min(s,vg),stickySession:i,useCompression:o,workerUrl:a,blockAllMedia:f,maskAllInputs:u,maskAllText:l,mutationBreadcrumbLimit:d,mutationLimit:h,slowClickTimeout:p,slowClickIgnoreSelectors:m,networkDetailAllowUrls:y,networkDetailDenyUrls:g,networkCaptureBodies:v,networkRequestHeaders:Ug(_),networkResponseHeaders:Ug(T),beforeAddRecordingEvent:x,beforeErrorSampling:N,onError:L,attachRawBodyFromRequest:G,_experiments:c},this._initialOptions.blockAllMedia&&(this._recordingOptions.blockSelector=this._recordingOptions.blockSelector?`${this._recordingOptions.blockSelector},${Bg}`:Bg,this._recordingOptions.ignoreCSSAttributes=new Set(["background-image"])),this._isInitialized&&ef())throw new Error("Multiple Sentry Session Replay instances are not supported");this._isInitialized=!0}get _isInitialized(){return Hg}set _isInitialized(t){Hg=t}afterAllSetup(t){!ef()||this._replay||(this._initialOptions.attachRawBodyFromRequest&&lB(),this._setup(t),this._initialize(t))}start(){this._replay&&this._replay.start()}startBuffering(){this._replay&&this._replay.startBuffering()}stop(){return this._replay?this._replay.stop({forceFlush:this._replay.recordingMode==="session"}):Promise.resolve()}flush(t){return this._replay?this._replay.isEnabled()?this._replay.sendBufferedReplayOrFlush(t):(this._replay.start(),Promise.resolve()):Promise.resolve()}getReplayId(t){var n;if((n=this._replay)!=null&&n.isEnabled())return this._replay.getSessionId(t)}getRecordingMode(){var t;if((t=this._replay)!=null&&t.isEnabled())return this._replay.recordingMode}_initialize(t){this._replay&&(this._maybeLoadFromReplayCanvasIntegration(t),this._replay.initializeSampling())}_setup(t){const n=dB(this._initialOptions,t);this._replay=new sB({options:n,recordingOptions:this._recordingOptions})}_maybeLoadFromReplayCanvasIntegration(t){try{const n=t.getIntegrationByName("ReplayCanvas");if(!n)return;this._replay._canvas=n.getOptions()}catch{}}}function dB(e,t){const n=t.getOptions(),r={sessionSampleRate:0,errorSampleRate:0,...e},s=ps(n.replaysSessionSampleRate),i=ps(n.replaysOnErrorSampleRate);return s==null&&i==null&&lr(()=>{console.warn("Replay is disabled because neither `replaysSessionSampleRate` nor `replaysOnErrorSampleRate` are set.")}),s!=null&&(r.sessionSampleRate=s),i!=null&&(r.errorSampleRate=i),r}function Ug(e){return[...aB,...e.map(t=>t.toLowerCase())]}function hB(e){return e.split(",").some(t=>t.trim().startsWith("sentry-"))}function HE(e){try{return new URL(e,Ae.location.origin).href}catch{return}}function pB(e){return e.entryType==="resource"&&"initiatorType"in e&&typeof e.nextHopProtocol=="string"&&(e.initiatorType==="fetch"||e.initiatorType==="xmlhttprequest")}function VE(e){try{return new Headers(e)}catch{return}}const Wg=new WeakMap,iu=new Map,UE={traceFetch:!0,traceXHR:!0,enableHTTPTimings:!0,trackFetchStreamPerformance:!1};function mB(e,t){const{traceFetch:n,traceXHR:r,trackFetchStreamPerformance:s,shouldCreateSpanForRequest:i,enableHTTPTimings:o,tracePropagationTargets:a,onRequestSpanStart:c,onRequestSpanEnd:l}={...UE,...t},u=typeof i=="function"?i:p=>!0,f=p=>gB(p,a),d={},h=e.getOptions().propagateTraceparent;n&&(e.addEventProcessor(p=>(p.type==="transaction"&&p.spans&&p.spans.forEach(m=>{if(m.op==="http.client"){const y=iu.get(m.span_id);y&&(m.timestamp=y/1e3,iu.delete(m.span_id))}}),p)),s&&zM(p=>{if(p.response){const m=Wg.get(p.response);m&&p.endTimestamp&&iu.set(m,p.endTimestamp)}}),wS(p=>{const m=DM(p,u,f,d,{propagateTraceparent:h,onRequestSpanEnd:l});if(p.response&&p.fetchData.__span&&Wg.set(p.response,p.fetchData.__span),m){const y=HE(p.fetchData.url),g=y?cs(y).host:void 0;m.setAttributes({"http.url":y?Tr(y):void 0,"server.address":g}),o&&jg(m),c==null||c(m,{headers:p.headers})}})),r&&jS(p=>{var y;const m=yB(p,u,f,d,h,l);m&&(o&&jg(m),c==null||c(m,{headers:VE((y=p.xhr.__sentry_xhr_v3__)==null?void 0:y.request_headers)}))})}function jg(e){const{url:t}=ke(e).data;if(!t||typeof t!="string")return;const n=gs("resource",({entries:r})=>{r.forEach(s=>{pB(s)&&s.name.endsWith(t)&&(e.setAttributes(VS(s)),setTimeout(n))})})}function gB(e,t){const n=Ii();if(n){let r,s;try{r=new URL(e,n),s=new URL(n).origin}catch{return!1}const i=r.origin===s;return t?Gn(r.toString(),t)||i&&Gn(r.pathname,t):i}else{const r=!!e.match(/^\/(?!\/)/);return t?Gn(e,t):r}}function yB(e,t,n,r,s,i){const o=e.xhr,a=o==null?void 0:o[Zr];if(!o||o.__sentry_own_request__||!a)return;const{url:c,method:l}=a,u=sn()&&t(c);if(e.endTimestamp&&u){const g=o.__sentry_xhr_span_id__;if(!g)return;const v=r[g];v&&a.status_code!==void 0&&(Mb(v,a.status_code),v.end(),i==null||i(v,{headers:VE(KS(o)),error:e.error}),delete r[g]);return}const f=HE(c),d=cs(f||c),h=Tr(sM(c)),p=!!bt(),m=u&&p?Ar({name:`${l} ${h}`,attributes:{url:Tr(c),type:"xhr","http.method":l,"http.url":f?Tr(f):void 0,"server.address":d==null?void 0:d.host,[Qe]:"auto.http.browser",[rr]:"http.client",...(d==null?void 0:d.search)&&{"http.query":d==null?void 0:d.search},...(d==null?void 0:d.hash)&&{"http.fragment":d==null?void 0:d.hash}}}):new Rr;o.__sentry_xhr_span_id__=m.spanContext().spanId,r[o.__sentry_xhr_span_id__]=m,n(c)&&vB(o,sn()&&p?m:void 0,s);const y=Ie();return y&&y.emit("beforeOutgoingRequestSpan",m,e),m}function vB(e,t,n){const{"sentry-trace":r,baggage:s,traceparent:i}=vS({span:t,propagateTraceparent:n});r&&_B(e,r,s,i)}function _B(e,t,n,r){var i;const s=(i=e.__sentry_xhr_v3__)==null?void 0:i.request_headers;if(!(s!=null&&s["sentry-trace"]||!e.setRequestHeader))try{if(e.setRequestHeader("sentry-trace",t),r&&!(s!=null&&s.traceparent)&&e.setRequestHeader("traceparent",r),n){const o=s==null?void 0:s.baggage;(!o||!hB(o))&&e.setRequestHeader("baggage",n)}}catch{}}function bB(){Ae.document?Ae.document.addEventListener("visibilitychange",()=>{const e=bt();if(!e)return;const t=vt(e);if(Ae.document.hidden&&t){const n="cancelled",{op:r,status:s}=ke(t);an&&X.log(`[Tracing] Transaction: ${n} -> since tab moved to the background, op: ${r}`),s||t.setStatus({code:ct,message:n}),t.setAttribute("sentry.cancellation_reason","document.hidden"),t.end()}}):an&&X.warn("[Tracing] Could not set up background tab detection due to lack of global document")}const SB=3600,WE="sentry_previous_trace",EB="sentry.previous_trace";function wB(e,{linkPreviousTrace:t,consistentTraceSampling:n}){const r=t==="session-storage";let s=r?IB():void 0;e.on("spanStart",o=>{if(vt(o)!==o)return;const a=De().getPropagationContext();s=TB(s,o,a),r&&CB(s)});let i=!0;n&&e.on("beforeSampling",o=>{if(!s)return;const a=De(),c=a.getPropagationContext();if(i&&c.parentSpanId){i=!1;return}a.setPropagationContext({...c,dsc:{...c.dsc,sample_rate:String(s.sampleRate),sampled:String(_f(s.spanContext))},sampleRand:s.sampleRand}),o.parentSampled=_f(s.spanContext),o.parentSampleRate=s.sampleRate,o.spanAttributes={...o.spanAttributes,[Ob]:s.sampleRate}})}function TB(e,t,n){const r=ke(t);function s(){var a,c;try{return Number((a=n.dsc)==null?void 0:a.sample_rate)??Number((c=r.data)==null?void 0:c[Ed])}catch{return 0}}const i={spanContext:t.spanContext(),startTimestamp:r.start_timestamp,sampleRate:s(),sampleRand:n.sampleRand};if(!e)return i;const o=e.spanContext;return o.traceId===r.trace_id?e:(Date.now()/1e3-e.startTimestamp<=SB&&(an&&X.log(`Adding previous_trace \`${JSON.stringify(o)}\` link to span \`${JSON.stringify({op:r.op,...t.spanContext()})}\``),t.addLink({context:o,attributes:{[KA]:"previous_trace"}}),t.setAttribute(EB,`${o.traceId}-${o.spanId}-${_f(o)?1:0}`)),i)}function CB(e){try{Ae.sessionStorage.setItem(WE,JSON.stringify(e))}catch(t){an&&X.warn("Could not store previous trace in sessionStorage",t)}}function IB(){var e;try{const t=(e=Ae.sessionStorage)==null?void 0:e.getItem(WE);return JSON.parse(t)}catch{return}}function _f(e){return e.traceFlags===1}const kB="BrowserTracing",xB={...Na,instrumentNavigation:!0,instrumentPageLoad:!0,markBackgroundSpan:!0,enableLongTask:!0,enableLongAnimationFrame:!0,enableInp:!0,enableElementTiming:!0,ignoreResourceSpans:[],ignorePerformanceApiSpans:[],detectRedirects:!0,linkPreviousTrace:"in-memory",consistentTraceSampling:!1,enableReportPageLoaded:!1,_experiments:{},...UE},zg=(e={})=>{const t={name:void 0,source:void 0},n=Ae.document,{enableInp:r,enableElementTiming:s,enableLongTask:i,enableLongAnimationFrame:o,_experiments:{enableInteractions:a,enableStandaloneClsSpans:c,enableStandaloneLcpSpans:l},beforeStartSpan:u,idleTimeout:f,finalTimeout:d,childSpanTimeout:h,markBackgroundSpan:p,traceFetch:m,traceXHR:y,trackFetchStreamPerformance:g,shouldCreateSpanForRequest:v,enableHTTPTimings:_,ignoreResourceSpans:T,ignorePerformanceApiSpans:O,instrumentPageLoad:R,instrumentNavigation:E,detectRedirects:w,linkPreviousTrace:I,consistentTraceSampling:A,enableReportPageLoaded:M,onRequestSpanStart:x,onRequestSpanEnd:N}={...xB,...e};let L,G,J;function j(D,ae,q=!0){const ce=ae.op==="pageload",le=ae.name,ve=u?u(ae):ae,Me=ve.attributes||{};if(le!==ve.name&&(Me[Bt]="custom",ve.attributes=Me),!q){const C=Ss();Ar({...ve,startTime:C}).end(C);return}t.name=ve.name,t.source=Me[Bt];const Fe=Qb(ve,{idleTimeout:f,finalTimeout:d,childSpanTimeout:h,disableAutoFinish:ce,beforeSpanEnd:C=>{L==null||L(),tN(C,{recordClsOnPageloadSpan:!c,recordLcpOnPageloadSpan:!l,ignoreResourceSpans:T,ignorePerformanceApiSpans:O}),Gg(D,void 0);const W=De(),z=W.getPropagationContext();W.setPropagationContext({...z,traceId:Fe.spanContext().traceId,sampled:Hr(Fe),dsc:sr(C)}),ce&&(J=void 0)},trimIdleSpanEndTimestamp:!M});ce&&M&&(J=Fe),Gg(D,Fe);function Ge(){n&&["interactive","complete"].includes(n.readyState)&&D.emit("idleSpanEnableAutoFinish",Fe)}ce&&!M&&n&&(n.addEventListener("readystatechange",()=>{Ge()}),Ge())}return{name:kB,setup(D){if(w1(),L=KP({recordClsStandaloneSpans:c||!1,recordLcpStandaloneSpans:l||!1,client:D}),r&&kN(),s&&hN(),o&&Ce.PerformanceObserver&&PerformanceObserver.supportedEntryTypes&&PerformanceObserver.supportedEntryTypes.includes("long-animation-frame")?XP():i&&YP(),a&&JP(),w&&n){const q=()=>{G=st()};addEventListener("click",q,{capture:!0}),addEventListener("keydown",q,{capture:!0,passive:!0})}function ae(){const q=Mo(D);q&&!ke(q).timestamp&&(an&&X.log(`[Tracing] Finishing current active span with op: ${ke(q).op}`),q.setAttribute(Co,"cancelled"),q.end())}D.on("startNavigationSpan",(q,ce)=>{if(Ie()!==D)return;if(ce!=null&&ce.isRedirect){an&&X.warn("[Tracing] Detected redirect, navigation span will not be the root span, but a child span."),j(D,{op:"navigation.redirect",...q},!1);return}G=void 0,ae(),Nn().setPropagationContext({traceId:nr(),sampleRand:Math.random(),propagationSpanId:sn()?void 0:Kn()});const le=De();le.setPropagationContext({traceId:nr(),sampleRand:Math.random(),propagationSpanId:sn()?void 0:Kn()}),le.setSDKProcessingMetadata({normalizedRequest:void 0}),j(D,{op:"navigation",...q,parentSpan:null,forceTransaction:!0})}),D.on("startPageLoadSpan",(q,ce={})=>{if(Ie()!==D)return;ae();const le=ce.sentryTrace||qg("sentry-trace"),ve=ce.baggage||qg("baggage"),Me=p1(le,ve),Fe=De();Fe.setPropagationContext(Me),sn()||(Fe.getPropagationContext().propagationSpanId=Kn()),Fe.setSDKProcessingMetadata({normalizedRequest:Dd()}),j(D,{op:"pageload",...q})}),D.on("endPageloadSpan",()=>{M&&J&&(J.setAttribute(Co,"reportPageLoaded"),J.end())})},afterAllSetup(D){let ae=Ii();if(I!=="off"&&wB(D,{linkPreviousTrace:I,consistentTraceSampling:A}),Ae.location){if(R){const q=Ut();RB(D,{name:Ae.location.pathname,startTime:q?q/1e3:void 0,attributes:{[Bt]:"url",[Qe]:"auto.pageload.browser"}})}E&&rl(({to:q,from:ce})=>{if(ce===void 0&&(ae==null?void 0:ae.indexOf(q))!==-1){ae=void 0;return}ae=void 0;const le=Ld(q),ve=Mo(D),Me=ve&&w&&OB(ve,G);jE(D,{name:(le==null?void 0:le.pathname)||Ae.location.pathname,attributes:{[Bt]:"url",[Qe]:"auto.navigation.browser"}},{url:q,isRedirect:Me})})}p&&bB(),a&&AB(D,f,d,h,t),r&&AN(),mB(D,{traceFetch:m,traceXHR:y,trackFetchStreamPerformance:g,tracePropagationTargets:D.getOptions().tracePropagationTargets,shouldCreateSpanForRequest:v,enableHTTPTimings:_,onRequestSpanStart:x,onRequestSpanEnd:N})}}};function RB(e,t,n){e.emit("startPageLoadSpan",t,n),De().setTransactionName(t.name);const r=Mo(e);return r&&e.emit("afterStartPageLoadSpan",r),r}function jE(e,t,n){const{url:r,isRedirect:s}=n||{};e.emit("beforeStartNavigationSpan",t,{isRedirect:s}),e.emit("startNavigationSpan",t,{isRedirect:s});const i=De();return i.setTransactionName(t.name),r&&!s&&i.setSDKProcessingMetadata({normalizedRequest:{...Dd(),url:r}}),Mo(e)}function qg(e){const t=Ae.document,n=t==null?void 0:t.querySelector(`meta[name=${e}]`);return(n==null?void 0:n.getAttribute("content"))||void 0}function AB(e,t,n,r,s){const i=Ae.document;let o;const a=()=>{const c="ui.action.click",l=Mo(e);if(l){const u=ke(l).op;if(["navigation","pageload"].includes(u)){an&&X.warn(`[Tracing] Did not create ${c} span because a pageload or navigation span is in progress.`);return}}if(o&&(o.setAttribute(Co,"interactionInterrupted"),o.end(),o=void 0),!s.name){an&&X.warn(`[Tracing] Did not create ${c} transaction because _latestRouteName is missing.`);return}o=Qb({name:s.name,op:c,attributes:{[Bt]:s.source||"url"}},{idleTimeout:t,finalTimeout:n,childSpanTimeout:r})};i&&addEventListener("click",a,{capture:!0})}const zE="_sentry_idleSpan";function Mo(e){return e[zE]}function Gg(e,t){Vt(e,zE,t)}const Kg=1.5;function OB(e,t){const n=ke(e),r=Ss(),s=n.start_timestamp;return!(r-s>Kg||t&&r-t<=Kg)}const qE=["activate","mount"],GE=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,MB=/(?:^|[-_])(\w)/g,PB=e=>e.replace(MB,t=>t.toUpperCase()).replace(/[-_]/g,""),NB="",ou="",LB=(e,t)=>e.repeat(t),oo=(e,t)=>{if(!e)return ou;if(e.$root===e)return NB;if(!e.$options)return ou;const n=e.$options;let r=n.name||n._componentTag||n.__name;const s=n.__file;if(!r&&s){const i=s.match(/([^/\\]+)\.vue$/);i&&(r=i[1])}return(r?`<${PB(r)}>`:ou)+(s&&t!==!1?` at ${s}`:"")},DB=e=>{if(e&&(e._isVue||e.__isVue)&&e.$parent){const t=[];let n=0;for(;e;){if(t.length>0){const s=t[t.length-1];if(s.constructor===e.constructor){n++,e=e.$parent;continue}else n>0&&(t[t.length-1]=[s,n],n=0)}t.push(e),e=e.$parent}return` - -found in - -${t.map((s,i)=>`${(i===0?"---> ":LB(" ",5+i*2))+(Array.isArray(s)?`${oo(s[0])}... (${s[1]} recursive calls)`:oo(s))}`).join(` -`)}`}return` - -(found in ${oo(e)})`},FB=(e,t)=>{const{errorHandler:n}=e.config;e.config.errorHandler=(r,s,i)=>{var l;const o=oo(s,!1),a=s?DB(s):"",c={componentName:o,lifecycleHook:i,trace:a};if((t==null?void 0:t.attachProps)!==!1&&s&&((l=s.$options)!=null&&l.propsData?c.propsData=s.$options.propsData:s.$props&&(c.propsData=s.$props)),setTimeout(()=>{el(r,{captureContext:{contexts:{vue:c}},mechanism:{handled:!!n,type:"auto.function.vue.error_handler"}})}),typeof n=="function"&&e.config.errorHandler)n.call(e,r,s,i);else throw r}},Yg="ui.vue",$B={activate:["activated","deactivated"],create:["beforeCreate","created"],unmount:["beforeUnmount","unmounted"],destroy:["beforeDestroy","destroyed"],mount:["beforeMount","mounted"],update:["beforeUpdate","updated"]};function au(e,t,n){e.$_sentryRootComponentSpanTimer&&clearTimeout(e.$_sentryRootComponentSpanTimer),e.$_sentryRootComponentSpanTimer=setTimeout(()=>{var r;(r=e.$root)!=null&&r.$_sentryRootComponentSpan&&(e.$root.$_sentryRootComponentSpan.end(t),e.$root.$_sentryRootComponentSpan=void 0)},n)}function BB(e,t){function n(s){return s.replace(/^<([^\s]*)>(?: at [^\s]*)?$/,"$1")}return e.some(s=>n(t)===n(s))}const HB=(e={})=>{const t=(e.hooks||[]).concat(qE).filter((s,i,o)=>o.indexOf(s)===i),n={},r=e.timeout||2e3;for(const s of t){const i=$B[s];if(!i){GE&&X.warn(`Unknown hook: ${s}`);continue}for(const o of i)n[o]=function(){var d;const a=this.$root===this;a&&(this.$_sentryRootComponentSpan=this.$_sentryRootComponentSpan||Ar({name:"Application Render",op:`${Yg}.render`,attributes:{[Qe]:"auto.ui.vue"},onlyIfParent:!0}),au(this,st(),r));const c=oo(this,!1);if(!(a||(Array.isArray(e.trackComponents)?BB(e.trackComponents,c):e.trackComponents))){au(this,st(),r);return}this.$_sentryComponentSpans=this.$_sentryComponentSpans||{};const u=o===i[0],f=((d=this.$root)==null?void 0:d.$_sentryRootComponentSpan)||bt();if(u){if(f){const h=this.$_sentryComponentSpans[s];h&&h.end(),this.$_sentryComponentSpans[s]=Ar({name:`Vue ${c}`,op:`${Yg}.${s}`,attributes:{[Qe]:"auto.ui.vue"},onlyIfParent:!0})}}else{const h=this.$_sentryComponentSpans[s];if(!h)return;h.end(),au(this,st(),r)}}}return n},VB=Ce,UB={Vue:VB.Vue,attachProps:!0,attachErrorHandler:!0,tracingOptions:{hooks:qE,timeout:2e3,trackComponents:!1}},WB="Vue",jB=(e={})=>({name:WB,setup(t){const n={...UB,...t.getOptions(),...e};if(!n.Vue&&!n.app){lr(()=>{console.warn("[@sentry/vue]: Misconfigured SDK. Vue specific errors will not be captured. Update your `Sentry.init` call with an appropriate config option: `app` (Application Instance - Vue 3) or `Vue` (Vue Constructor - Vue 2).")});return}n.app?(Array.isArray(n.app)?n.app:[n.app]).forEach(s=>Xg(s,n)):n.Vue&&Xg(n.Vue,n)}}),Xg=(e,t)=>{var n;GE&&((n=e._instance)==null?void 0:n.isMounted)===!0&&lr(()=>{console.warn("[@sentry/vue]: Misconfigured SDK. Vue app is already mounted. Make sure to call `app.mount()` after `Sentry.init()`.")}),t.attachErrorHandler&&FB(e,t),sn(t)&&e.mixin(HB(t.tracingOptions))};function zB(e={}){const t={defaultIntegrations:[...JS(),jB()],...e};return yS(t,"vue"),AL(t)}function qB(e,t,n){let r=!1;e.onError(s=>el(s,{mechanism:{handled:!1}})),e.beforeEach((s,i,o)=>{const a=r?void 0:GB(),c={};for(const f of Object.keys(s.params))c[`url.path.parameter.${f}`]=s.params[f],c[`params.${f}`]=s.params[f];for(const f of Object.keys(s.query)){const d=s.query[f];d&&(c[`query.${f}`]=d)}let l=s.path,u="url";if(s.name&&t.routeLabel!=="path")l=s.name.toString(),u="custom";else if(s.matched.length>0){const f=s.matched.length-1;l=s.matched[f].path,u="route"}De().setTransactionName(l),t.instrumentPageLoad&&a&&(ke(a).data[Bt]!=="custom"&&(a.updateName(l),a.setAttribute(Bt,u)),a.setAttributes({...c,[Qe]:"auto.pageload.vue"}),r=!0),t.instrumentNavigation&&!a&&n({name:l,op:"navigation",attributes:{...c,[Qe]:"auto.navigation.vue",[Bt]:u}}),o&&o()})}function GB(){const e=bt(),t=e&&vt(e);return t&&ke(t).op==="pageload"?t:void 0}function KB(e={}){if(!e.router)return zg(e);const t=zg({...e,instrumentNavigation:!1}),{router:n,instrumentNavigation:r=!0,instrumentPageLoad:s=!0,routeLabel:i="name"}=e;return{...t,afterAllSetup(o){t.afterAllSetup(o),qB(n,{routeLabel:i,instrumentNavigation:r,instrumentPageLoad:s},c=>{jE(o,c)})}}}const YB=l_(),Mi=gT(uA);zB({app:Mi,dsn:"https://2f8e5e4ec986c6077d3798ba9f683fdd@o4510762489151488.ingest.us.sentry.io/4510762503438336",sendDefaultPii:!0,integrations:[KB({router:jc}),uB()],tracesSampleRate:1,tracePropagationTargets:["localhost",/^https:\/\/kv-service\.(houlang\.cloud|wuyuan\.dev)/],replaysSessionSampleRate:.01,replaysOnErrorSampleRate:1,enableLogs:!0});Uk(Mi);Mi.use(Ps);Mi.use(YB);Mi.component("GlobalMessage",G_);Mi.mount("#app");document.readyState==="complete"?Jg():window.addEventListener("load",Jg,{once:!0});async function Jg(){try{const e=(await ht(async()=>{const{default:r}=await import("./index-ghQi_28l.js");return{default:r}},[],import.meta.url)).default;e.init("rhp8uqoc3l");const n=await dA();console.log("Visitor ID:",n),e.identify(n),e.setTag("fingerprintjs",n)}catch(e){console.warn("Clarity 加载或标识设置失败:",e)}}try{const e=()=>{document.body.classList.add("app-loaded");const t=document.getElementById("app-loader");t&&setTimeout(()=>t.remove(),220)};document.readyState==="complete"||document.readyState==="interactive"?e():window.addEventListener("DOMContentLoaded",e,{once:!0})}catch{}export{yn as $,dn as A,RH as B,mv as C,gu as D,Ye as E,Ke as F,Z0 as G,RR as H,us as I,Vf as J,tb as K,ac as L,K_ as M,eH as N,QB as O,rA as P,Hu as Q,Qp as R,wo as S,Uf as T,PH as U,lA as V,MH as W,uI as X,mR as Y,Nr as Z,T_ as _,WR as a,Fs as a$,fb as a0,ub as a1,Ee as a2,U as a3,lt as a4,Wk as a5,jk as a6,wH as a7,CH as a8,TH as a9,ys as aA,ri as aB,Gs as aC,Kr as aD,Cu as aE,Ax as aF,bi as aG,dd as aH,Bc as aI,pe as aJ,vs as aK,zf as aL,Su as aM,XB as aN,Xf as aO,dA as aP,DH as aQ,LH as aR,Xe as aS,uH as aT,YR as aU,kT as aV,nn as aW,dH as aX,rs as aY,IT as aZ,yt as a_,px as aa,Fr as ab,Kk as ac,ht as ad,Se as ae,JB as af,R_ as ag,Ft as ah,SR as ai,aR as aj,mr as ak,um as al,Z_ as am,oc as an,kH as ao,IH as ap,SC as aq,zn as ar,qf as as,iH as at,q_ as au,Q as av,dt as aw,cH as ax,aH as ay,be as az,Je as b,tH as b$,Ji as b0,yH as b1,gH as b2,on as b3,Ov as b4,fm as b5,Eu as b6,Do as b7,AH as b8,aI as b9,Sx as bA,Xx as bB,EH as bC,Xs as bD,sp as bE,Yx as bF,SH as bG,_H as bH,vi as bI,Pc as bJ,Ps as bK,Ks as bL,sH as bM,hH as bN,Oe as bO,Qx as bP,Zx as bQ,ix as bR,sx as bS,Ct as bT,ox as bU,rx as bV,Pv as bW,rH as bX,ut as bY,mH as bZ,pi as b_,_t as ba,oH as bb,Qn as bc,kR as bd,cr as be,s_ as bf,od as bg,ep as bh,W_ as bi,Yt as bj,ar as bk,Gc as bl,Uy as bm,hd as bn,cn as bo,Bo as bp,$o as bq,xr as br,Gk as bs,Yk as bt,Xk as bu,zx as bv,jx as bw,TT as bx,yi as by,_i as bz,F as c,ds as c0,bu as c1,lH as c2,O_ as c3,vx as c4,A_ as c5,mt as c6,ue as c7,kn as c8,Mf as c9,ZB as cA,bH as cB,qc as cC,ld as cD,NH as cE,ud as cF,Dr as cG,Of as cH,Dc as cI,Bv as cJ,kr as cK,xH as cL,cC as ca,po as cb,q0 as cc,td as cd,nH as ce,_s as cf,zc as cg,cd as ch,ad as ci,Wx as cj,zy as ck,CT as cl,Zi as cm,IR as cn,Dv as co,fH as cp,pH as cq,JR as cr,aA as cs,Gy as ct,Vo as cu,Ho as cv,Lr as cw,vH as cx,xv as cy,OH as cz,Re as d,Ei as e,Si as f,Pe as g,rt as h,ne as i,xn as j,sd as k,dm as l,It as m,ze as n,en as o,ie as p,Y_ as q,J0 as r,qk as s,Mn as t,wI as u,Wi as v,ft as w,MR as x,B_ as y,$u as z}; diff --git a/assets/index-BXl8SUNP.js b/assets/index-BXl8SUNP.js new file mode 100644 index 0000000..24c9fc5 --- /dev/null +++ b/assets/index-BXl8SUNP.js @@ -0,0 +1,544 @@ +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./default-hOQ1mU83.js","./default-CmdaPMSp.css","./index-DSbPboXi.js","./ExamConfigEditor-D-fBjxzF.js","./dataProvider-Cg4CSn_f.js","./serverRotation-BBUKyTw9.js","./VAlert-DncbAu3E.js","./VAlert-D_OX1cfW.css","./VSkeletonLoader-DKLQDg5n.js","./VSkeletonLoader-C11ZEozu.css","./VTooltip-CyZjDjKS.js","./VTooltip-D7EaNDeY.css","./VChip-jIQL7s_d.js","./VChip-Dmz_1Lnv.css","./VRow-DFPdcq_b.js","./VTextField-DxxbesnN.js","./VTextField-D1VSzmed.css","./VTextarea-B0_PT1is.js","./VTextarea-_xVwaw_z.css","./VSwitch-7fkmr9E6.js","./VSwitch-C87GkfUP.css","./filter-BHXElGQ1.js","./VCheckboxBtn-iC2wkMdx.js","./filter-DEjKrR5R.css","./VSheet-CWiuVQYN.js","./VSheet-DW_b51tO.css","./ExamConfigEditor-CrmzhmtU.css","./socketClient-BAypaVYV.js","./VCombobox-D_3YC1pP.js","./VAppBarTitle-hRIhv4pw.js","./VAppBarTitle-DHaTV8xv.css","./VCombobox-BLfr31LE.css","./deviceEvents-8tGBwa2U.js","./VPagination-BUmJ8K2V.js","./VPagination-DNe_r2rg.css","./VContainer-Doz_PneH.js","./VForm-C1v7pkqf.js","./VExpansionPanels-LOsDx07C.js","./VExpansionPanels-kEj4ZJQK.css","./index-CuoHvzZv.css","./404-BwZffhEb.js","./authorize-DZSBaQ17.js","./CacheManagement-BChWOOfR.js","./cses2wakeup-BmsqkMFZ.js","./VTabsWindowItem-CghRaqdq.js","./VTabsWindowItem-DsCcWpt1.css","./cses2wakeup-V9ZvMok7.css","./debug-BSi7gIU2.js","./debug-CbS14biG.css","./debug-init-B-H9lXTX.js","./debug-socket-DzG1kWef.js","./_id_-B9b-OTX9.js","./examschedule-BBjKpA2N.js","./examschedule-CU_Gxm4i.css","./index-D07_YIdP.js","./_id_-DyC3JCaR.js","./settings-D372VNSO.js","./settings-eh31GxG-.css","./socket-debugger-DtAcJK1B.js","./socket-debugger-ykBk0O32.css"])))=>i.map(i=>d[i]); +(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))r(s);new MutationObserver(s=>{for(const i of s)if(i.type==="childList")for(const o of i.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(s){const i={};return s.integrity&&(i.integrity=s.integrity),s.referrerPolicy&&(i.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?i.credentials="include":s.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function r(s){if(s.ep)return;s.ep=!0;const i=n(s);fetch(s.href,i)}})();const vw="modulepreload",yw=function(e,t){return new URL(e,t).href},np={},yt=function(t,n,r){let s=Promise.resolve();if(n&&n.length>0){const o=document.getElementsByTagName("link"),a=document.querySelector("meta[property=csp-nonce]"),c=(a==null?void 0:a.nonce)||(a==null?void 0:a.getAttribute("nonce"));s=Promise.allSettled(n.map(l=>{if(l=yw(l,r),l in np)return;np[l]=!0;const d=l.endsWith(".css"),u=d?'[rel="stylesheet"]':"";if(!!r)for(let p=o.length-1;p>=0;p--){const m=o[p];if(m.href===l&&(!d||m.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${l}"]${u}`))return;const h=document.createElement("link");if(h.rel=d?"stylesheet":vw,d||(h.as="script"),h.crossOrigin="",h.href=l,c&&h.setAttribute("nonce",c),document.head.appendChild(h),d)return new Promise((p,m)=>{h.addEventListener("load",p),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${l}`)))})}))}function i(o){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o}return s.then(o=>{for(const a of o||[])a.status==="rejected"&&i(a.reason);return t().catch(i)})};/** +* @vue/shared v3.5.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function af(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const Ve={},ii=[],Bn=()=>{},cy=()=>!1,rl=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),cf=e=>e.startsWith("onUpdate:"),dt=Object.assign,lf=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},_w=Object.prototype.hasOwnProperty,$e=(e,t)=>_w.call(e,t),fe=Array.isArray,oi=e=>sl(e)==="[object Map]",ly=e=>sl(e)==="[object Set]",ve=e=>typeof e=="function",rt=e=>typeof e=="string",hr=e=>typeof e=="symbol",ze=e=>e!==null&&typeof e=="object",uy=e=>(ze(e)||ve(e))&&ve(e.then)&&ve(e.catch),dy=Object.prototype.toString,sl=e=>dy.call(e),bw=e=>sl(e).slice(8,-1),fy=e=>sl(e)==="[object Object]",il=e=>rt(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,lo=af(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),ol=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Sw=/-\w/g,$t=ol(e=>e.replace(Sw,t=>t.slice(1).toUpperCase())),Ew=/\B([A-Z])/g,Wr=ol(e=>e.replace(Ew,"-$1").toLowerCase()),Oi=ol(e=>e.charAt(0).toUpperCase()+e.slice(1)),Wl=ol(e=>e?`on${Oi(e)}`:""),Pr=(e,t)=>!Object.is(e,t),qa=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:r,value:n})},uf=e=>{const t=parseFloat(e);return isNaN(t)?e:t},ww=e=>{const t=rt(e)?Number(e):NaN;return isNaN(t)?e:t};let rp;const al=()=>rp||(rp=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Xe(e){if(fe(e)){const t={};for(let n=0;n{if(n){const r=n.split(Tw);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t}function Me(e){let t="";if(rt(e))t=e;else if(fe(e))for(let n=0;n!!(e&&e.__v_isRef===!0),bn=e=>rt(e)?e:e==null?"":fe(e)||ze(e)&&(e.toString===dy||!ve(e.toString))?my(e)?bn(e.value):JSON.stringify(e,gy,2):String(e),gy=(e,t)=>my(t)?gy(e,t.value):oi(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[r,s],i)=>(n[jl(r,i)+" =>"]=s,n),{})}:ly(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>jl(n))}:hr(t)?jl(t):ze(t)&&!fe(t)&&!fy(t)?String(t):t,jl=(e,t="")=>{var n;return hr(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +* @vue/reactivity v3.5.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let kt;class vy{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=kt,!t&&kt&&(this.index=(kt.scopes||(kt.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t0&&--this._on===0&&(kt=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,r;for(n=0,r=this.effects.length;n0)return;if(fo){let t=fo;for(fo=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;uo;){let t=uo;for(uo=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(r){e||(e=r)}t=n}}if(e)throw e}function Sy(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ey(e){let t,n=e.depsTail,r=n;for(;r;){const s=r.prevDep;r.version===-1?(r===n&&(n=s),pf(r),Aw(r)):t=r,r.dep.activeLink=r.prevActiveLink,r.prevActiveLink=void 0,r=s}e.deps=t,e.depsTail=n}function qu(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(wy(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function wy(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Io)||(e.globalVersion=Io,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!qu(e))))return;e.flags|=2;const t=e.dep,n=Ke,r=Sn;Ke=e,Sn=!0;try{Sy(e);const s=e.fn(e._value);(t.version===0||Pr(s,e._value))&&(e.flags|=128,e._value=s,t.version++)}catch(s){throw t.version++,s}finally{Ke=n,Sn=r,Ey(e),e.flags&=-3}}function pf(e,t=!1){const{dep:n,prevSub:r,nextSub:s}=e;if(r&&(r.nextSub=s,e.prevSub=void 0),s&&(s.prevSub=r,e.nextSub=void 0),n.subs===e&&(n.subs=r,!r&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)pf(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Aw(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Sn=!0;const Cy=[];function rr(){Cy.push(Sn),Sn=!1}function sr(){const e=Cy.pop();Sn=e===void 0?!0:e}function sp(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=Ke;Ke=void 0;try{t()}finally{Ke=n}}}let Io=0;class Mw{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class mf{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!Ke||!Sn||Ke===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==Ke)n=this.activeLink=new Mw(Ke,this),Ke.deps?(n.prevDep=Ke.depsTail,Ke.depsTail.nextDep=n,Ke.depsTail=n):Ke.deps=Ke.depsTail=n,Ty(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const r=n.nextDep;r.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=r),n.prevDep=Ke.depsTail,n.nextDep=void 0,Ke.depsTail.nextDep=n,Ke.depsTail=n,Ke.deps===n&&(Ke.deps=r)}return n}trigger(t){this.version++,Io++,this.notify(t)}notify(t){ff();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{hf()}}}function Ty(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let r=t.deps;r;r=r.nextDep)Ty(r)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const vc=new WeakMap,hs=Symbol(""),Gu=Symbol(""),xo=Symbol("");function It(e,t,n){if(Sn&&Ke){let r=vc.get(e);r||vc.set(e,r=new Map);let s=r.get(n);s||(r.set(n,s=new mf),s.map=r,s.key=n),s.track()}}function Yn(e,t,n,r,s,i){const o=vc.get(e);if(!o){Io++;return}const a=c=>{c&&c.trigger()};if(ff(),t==="clear")o.forEach(a);else{const c=fe(e),l=c&&il(n);if(c&&n==="length"){const d=Number(r);o.forEach((u,f)=>{(f==="length"||f===xo||!hr(f)&&f>=d)&&a(u)})}else switch((n!==void 0||o.has(void 0))&&a(o.get(n)),l&&a(o.get(xo)),t){case"add":c?l&&a(o.get("length")):(a(o.get(hs)),oi(e)&&a(o.get(Gu)));break;case"delete":c||(a(o.get(hs)),oi(e)&&a(o.get(Gu)));break;case"set":oi(e)&&a(o.get(hs));break}}hf()}function Pw(e,t){const n=vc.get(e);return n&&n.get(t)}function Fs(e){const t=de(e);return t===e?t:(It(t,"iterate",xo),Qt(e)?t:t.map(En))}function cl(e){return It(e=de(e),"iterate",xo),e}function Cr(e,t){return ir(e)?pi(Jn(e)?En(t):t):En(t)}const Ow={__proto__:null,[Symbol.iterator](){return ql(this,Symbol.iterator,e=>Cr(this,e))},concat(...e){return Fs(this).concat(...e.map(t=>fe(t)?Fs(t):t))},entries(){return ql(this,"entries",e=>(e[1]=Cr(this,e[1]),e))},every(e,t){return Un(this,"every",e,t,void 0,arguments)},filter(e,t){return Un(this,"filter",e,t,n=>n.map(r=>Cr(this,r)),arguments)},find(e,t){return Un(this,"find",e,t,n=>Cr(this,n),arguments)},findIndex(e,t){return Un(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Un(this,"findLast",e,t,n=>Cr(this,n),arguments)},findLastIndex(e,t){return Un(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Un(this,"forEach",e,t,void 0,arguments)},includes(...e){return Gl(this,"includes",e)},indexOf(...e){return Gl(this,"indexOf",e)},join(e){return Fs(this).join(e)},lastIndexOf(...e){return Gl(this,"lastIndexOf",e)},map(e,t){return Un(this,"map",e,t,void 0,arguments)},pop(){return Zi(this,"pop")},push(...e){return Zi(this,"push",e)},reduce(e,...t){return ip(this,"reduce",e,t)},reduceRight(e,...t){return ip(this,"reduceRight",e,t)},shift(){return Zi(this,"shift")},some(e,t){return Un(this,"some",e,t,void 0,arguments)},splice(...e){return Zi(this,"splice",e)},toReversed(){return Fs(this).toReversed()},toSorted(e){return Fs(this).toSorted(e)},toSpliced(...e){return Fs(this).toSpliced(...e)},unshift(...e){return Zi(this,"unshift",e)},values(){return ql(this,"values",e=>Cr(this,e))}};function ql(e,t,n){const r=cl(e),s=r[t]();return r!==e&&!Qt(e)&&(s._next=s.next,s.next=()=>{const i=s._next();return i.done||(i.value=n(i.value)),i}),s}const Lw=Array.prototype;function Un(e,t,n,r,s,i){const o=cl(e),a=o!==e&&!Qt(e),c=o[t];if(c!==Lw[t]){const u=c.apply(e,i);return a?En(u):u}let l=n;o!==e&&(a?l=function(u,f){return n.call(this,Cr(e,u),f,e)}:n.length>2&&(l=function(u,f){return n.call(this,u,f,e)}));const d=c.call(o,l,r);return a&&s?s(d):d}function ip(e,t,n,r){const s=cl(e);let i=n;return s!==e&&(Qt(e)?n.length>3&&(i=function(o,a,c){return n.call(this,o,a,c,e)}):i=function(o,a,c){return n.call(this,o,Cr(e,a),c,e)}),s[t](i,...r)}function Gl(e,t,n){const r=de(e);It(r,"iterate",xo);const s=r[t](...n);return(s===-1||s===!1)&&ll(n[0])?(n[0]=de(n[0]),r[t](...n)):s}function Zi(e,t,n=[]){rr(),ff();const r=de(e)[t].apply(e,n);return hf(),sr(),r}const Nw=af("__proto__,__v_isRef,__isVue"),ky=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(hr));function Dw(e){hr(e)||(e=String(e));const t=de(this);return It(t,"has",e),t.hasOwnProperty(e)}class Iy{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,r){if(n==="__v_skip")return t.__v_skip;const s=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!s;if(n==="__v_isReadonly")return s;if(n==="__v_isShallow")return i;if(n==="__v_raw")return r===(s?i?qw:My:i?Ay:Ry).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(r)?t:void 0;const o=fe(t);if(!s){let c;if(o&&(c=Ow[n]))return c;if(n==="hasOwnProperty")return Dw}const a=Reflect.get(t,n,Je(t)?t:r);if((hr(n)?ky.has(n):Nw(n))||(s||It(t,"get",n),i))return a;if(Je(a)){const c=o&&il(n)?a:a.value;return s&&ze(c)?hi(c):c}return ze(a)?s?hi(a):pt(a):a}}class xy extends Iy{constructor(t=!1){super(!1,t)}set(t,n,r,s){let i=t[n];const o=fe(t)&&il(n);if(!this._isShallow){const l=ir(i);if(!Qt(r)&&!ir(r)&&(i=de(i),r=de(r)),!o&&Je(i)&&!Je(r))return l||(i.value=r),!0}const a=o?Number(n)e,Ca=e=>Reflect.getPrototypeOf(e);function Vw(e,t,n){return function(...r){const s=this.__v_raw,i=de(s),o=oi(i),a=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,l=s[e](...r),d=n?Ku:t?pi:En;return!t&&It(i,"iterate",c?Gu:hs),dt(Object.create(l),{next(){const{value:u,done:f}=l.next();return f?{value:u,done:f}:{value:a?[d(u[0]),d(u[1])]:d(u),done:f}}})}}function Ta(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Uw(e,t){const n={get(s){const i=this.__v_raw,o=de(i),a=de(s);e||(Pr(s,a)&&It(o,"get",s),It(o,"get",a));const{has:c}=Ca(o),l=t?Ku:e?pi:En;if(c.call(o,s))return l(i.get(s));if(c.call(o,a))return l(i.get(a));i!==o&&i.get(s)},get size(){const s=this.__v_raw;return!e&&It(de(s),"iterate",hs),s.size},has(s){const i=this.__v_raw,o=de(i),a=de(s);return e||(Pr(s,a)&&It(o,"has",s),It(o,"has",a)),s===a?i.has(s):i.has(s)||i.has(a)},forEach(s,i){const o=this,a=o.__v_raw,c=de(a),l=t?Ku:e?pi:En;return!e&&It(c,"iterate",hs),a.forEach((d,u)=>s.call(i,l(d),l(u),o))}};return dt(n,e?{add:Ta("add"),set:Ta("set"),delete:Ta("delete"),clear:Ta("clear")}:{add(s){!t&&!Qt(s)&&!ir(s)&&(s=de(s));const i=de(this);return Ca(i).has.call(i,s)||(i.add(s),Yn(i,"add",s,s)),this},set(s,i){!t&&!Qt(i)&&!ir(i)&&(i=de(i));const o=de(this),{has:a,get:c}=Ca(o);let l=a.call(o,s);l||(s=de(s),l=a.call(o,s));const d=c.call(o,s);return o.set(s,i),l?Pr(i,d)&&Yn(o,"set",s,i):Yn(o,"add",s,i),this},delete(s){const i=de(this),{has:o,get:a}=Ca(i);let c=o.call(i,s);c||(s=de(s),c=o.call(i,s)),a&&a.call(i,s);const l=i.delete(s);return c&&Yn(i,"delete",s,void 0),l},clear(){const s=de(this),i=s.size!==0,o=s.clear();return i&&Yn(s,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(s=>{n[s]=Vw(s,e,t)}),n}function gf(e,t){const n=Uw(e,t);return(r,s,i)=>s==="__v_isReactive"?!e:s==="__v_isReadonly"?e:s==="__v_raw"?r:Reflect.get($e(n,s)&&s in r?n:r,s,i)}const Ww={get:gf(!1,!1)},jw={get:gf(!1,!0)},zw={get:gf(!0,!1)};const Ry=new WeakMap,Ay=new WeakMap,My=new WeakMap,qw=new WeakMap;function Gw(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Kw(e){return e.__v_skip||!Object.isExtensible(e)?0:Gw(bw(e))}function pt(e){return ir(e)?e:vf(e,!1,$w,Ww,Ry)}function Py(e){return vf(e,!1,Hw,jw,Ay)}function hi(e){return vf(e,!0,Bw,zw,My)}function vf(e,t,n,r,s){if(!ze(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=Kw(e);if(i===0)return e;const o=s.get(e);if(o)return o;const a=new Proxy(e,i===2?r:n);return s.set(e,a),a}function Jn(e){return ir(e)?Jn(e.__v_raw):!!(e&&e.__v_isReactive)}function ir(e){return!!(e&&e.__v_isReadonly)}function Qt(e){return!!(e&&e.__v_isShallow)}function ll(e){return e?!!e.__v_raw:!1}function de(e){const t=e&&e.__v_raw;return t?de(t):e}function yf(e){return!$e(e,"__v_skip")&&Object.isExtensible(e)&&hy(e,"__v_skip",!0),e}const En=e=>ze(e)?pt(e):e,pi=e=>ze(e)?hi(e):e;function Je(e){return e?e.__v_isRef===!0:!1}function we(e){return Oy(e,!1)}function be(e){return Oy(e,!0)}function Oy(e,t){return Je(e)?e:new Yw(e,t)}class Yw{constructor(t,n){this.dep=new mf,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:de(t),this._value=n?t:En(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,r=this.__v_isShallow||Qt(t)||ir(t);t=r?t:de(t),Pr(t,n)&&(this._rawValue=t,this._value=r?t:En(t),this.dep.trigger())}}function Ut(e){return Je(e)?e.value:e}function bt(e){return ve(e)?e():Ut(e)}const Xw={get:(e,t,n)=>t==="__v_raw"?e:Ut(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const s=e[t];return Je(s)&&!Je(n)?(s.value=n,!0):Reflect.set(e,t,n,r)}};function Ly(e){return Jn(e)?e:new Proxy(e,Xw)}function _f(e){const t=fe(e)?new Array(e.length):{};for(const n in e)t[n]=Ny(e,n);return t}class Jw{constructor(t,n,r){this._object=t,this._key=n,this._defaultValue=r,this.__v_isRef=!0,this._value=void 0,this._raw=de(t);let s=!0,i=t;if(!fe(t)||!il(String(n)))do s=!ll(i)||Qt(i);while(s&&(i=i.__v_raw));this._shallow=s}get value(){let t=this._object[this._key];return this._shallow&&(t=Ut(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Je(this._raw[this._key])){const n=this._object[this._key];if(Je(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Pw(this._raw,this._key)}}class Zw{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function ee(e,t,n){return Je(e)?e:ve(e)?new Zw(e):ze(e)&&arguments.length>1?Ny(e,t,n):we(e)}function Ny(e,t,n){return new Jw(e,t,n)}class Qw{constructor(t,n,r){this.fn=t,this.setter=n,this._value=void 0,this.dep=new mf(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Io-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=r}notify(){if(this.flags|=16,!(this.flags&8)&&Ke!==this)return by(this,!0),!0}get value(){const t=this.dep.track();return wy(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function e1(e,t,n=!1){let r,s;return ve(e)?r=e:(r=e.get,s=e.set),new Qw(r,s,n)}const ka={},yc=new WeakMap;let rs;function t1(e,t=!1,n=rs){if(n){let r=yc.get(n);r||yc.set(n,r=[]),r.push(e)}}function n1(e,t,n=Ve){const{immediate:r,deep:s,once:i,scheduler:o,augmentJob:a,call:c}=n,l=S=>s?S:Qt(S)||s===!1||s===0?Xn(S,1):Xn(S);let d,u,f,h,p=!1,m=!1;if(Je(e)?(u=()=>e.value,p=Qt(e)):Jn(e)?(u=()=>l(e),p=!0):fe(e)?(m=!0,p=e.some(S=>Jn(S)||Qt(S)),u=()=>e.map(S=>{if(Je(S))return S.value;if(Jn(S))return l(S);if(ve(S))return c?c(S,2):S()})):ve(e)?t?u=c?()=>c(e,2):e:u=()=>{if(f){rr();try{f()}finally{sr()}}const S=rs;rs=d;try{return c?c(e,3,[h]):e(h)}finally{rs=S}}:u=Bn,t&&s){const S=u,M=s===!0?1/0:s;u=()=>Xn(S(),M)}const v=df(),g=()=>{d.stop(),v&&v.active&&lf(v.effects,d)};if(i&&t){const S=t;t=(...M)=>{S(...M),g()}}let y=m?new Array(e.length).fill(ka):ka;const _=S=>{if(!(!(d.flags&1)||!d.dirty&&!S))if(t){const M=d.run();if(s||p||(m?M.some((R,E)=>Pr(R,y[E])):Pr(M,y))){f&&f();const R=rs;rs=d;try{const E=[M,y===ka?void 0:m&&y[0]===ka?[]:y,h];y=M,c?c(t,3,E):t(...E)}finally{rs=R}}}else d.run()};return a&&a(_),d=new yy(u),d.scheduler=o?()=>o(_,!1):_,h=S=>t1(S,!1,d),f=d.onStop=()=>{const S=yc.get(d);if(S){if(c)c(S,4);else for(const M of S)M();yc.delete(d)}},t?r?_(!0):y=d.run():o?o(_.bind(null,!0),!0):d.run(),g.pause=d.pause.bind(d),g.resume=d.resume.bind(d),g.stop=g,g}function Xn(e,t=1/0,n){if(t<=0||!ze(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Je(e))Xn(e.value,t,n);else if(fe(e))for(let r=0;r{Xn(r,t,n)});else if(fy(e)){for(const r in e)Xn(e[r],t,n);for(const r of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,r)&&Xn(e[r],t,n)}return e}/** +* @vue/runtime-core v3.5.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/function Qo(e,t,n,r){try{return r?e(...r):e()}catch(s){ul(s,t,n)}}function wn(e,t,n,r){if(ve(e)){const s=Qo(e,t,n,r);return s&&uy(s)&&s.catch(i=>{ul(i,t,n)}),s}if(fe(e)){const s=[];for(let i=0;i>>1,s=Dt[r],i=Ro(s);i=Ro(n)?Dt.push(e):Dt.splice(s1(t),0,e),e.flags|=1,Fy()}}function Fy(){_c||(_c=Dy.then(By))}function i1(e){fe(e)?ai.push(...e):Tr&&e.id===-1?Tr.splice(qs+1,0,e):e.flags&1||(ai.push(e),e.flags|=1),Fy()}function op(e,t,n=Mn+1){for(;nRo(n)-Ro(r));if(ai.length=0,Tr){Tr.push(...t);return}for(Tr=t,qs=0;qse.id==null?e.flags&2?-1:1/0:e.id;function By(e){try{for(Mn=0;Mn{r._d&&wc(-1);const i=bc(t);let o;try{o=e(...s)}finally{bc(i),r._d&&wc(1)}return o};return r._n=!0,r._c=!0,r._d=!0,r}function ws(e,t){if(St===null)return e;const n=gl(St),r=e.dirs||(e.dirs=[]);for(let s=0;s1)return n&&ve(t)?t.call(r&&r.proxy):t}}function o1(){return!!(Li()||ps)}const a1=Symbol.for("v-scx"),c1=()=>Oe(a1);function hn(e,t){return Sf(e,null,t)}function Se(e,t,n){return Sf(e,t,n)}function Sf(e,t,n=Ve){const{immediate:r,deep:s,flush:i,once:o}=n,a=dt({},n),c=t&&r||!t&&i!=="post";let l;if(Po){if(i==="sync"){const h=c1();l=h.__watcherHandles||(h.__watcherHandles=[])}else if(!c){const h=()=>{};return h.stop=Bn,h.resume=Bn,h.pause=Bn,h}}const d=xt;a.call=(h,p,m)=>wn(h,d,p,m);let u=!1;i==="post"?a.scheduler=h=>{Lt(h,d&&d.suspense)}:i!=="sync"&&(u=!0,a.scheduler=(h,p)=>{p?h():bf(h)}),a.augmentJob=h=>{t&&(h.flags|=4),u&&(h.flags|=2,d&&(h.id=d.uid,h.i=d))};const f=n1(e,t,a);return Po&&(l?l.push(f):c&&f()),f}function l1(e,t,n){const r=this.proxy,s=rt(e)?e.includes(".")?Vy(r,e):()=>r[e]:e.bind(r,r);let i;ve(t)?i=t:(i=t.handler,n=t);const o=ta(this),a=Sf(s,i.bind(r),n);return o(),a}function Vy(e,t){const n=t.split(".");return()=>{let r=e;for(let s=0;se.__isTeleport,ho=e=>e&&(e.disabled||e.disabled===""),ap=e=>e&&(e.defer||e.defer===""),cp=e=>typeof SVGElement<"u"&&e instanceof SVGElement,lp=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Yu=(e,t)=>{const n=e&&e.to;return rt(n)?t?t(n):null:n},jy={name:"Teleport",__isTeleport:!0,process(e,t,n,r,s,i,o,a,c,l){const{mc:d,pc:u,pbc:f,o:{insert:h,querySelector:p,createText:m,createComment:v}}=l,g=ho(t.props);let{shapeFlag:y,children:_,dynamicChildren:S}=t;if(e==null){const M=t.el=m(""),R=t.anchor=m("");h(M,n,r),h(R,n,r);const E=(I,A)=>{y&16&&d(_,I,A,s,i,o,a,c)},C=()=>{const I=t.target=Yu(t.props,p),A=zy(I,t,m,h);I&&(o!=="svg"&&cp(I)?o="svg":o!=="mathml"&&lp(I)&&(o="mathml"),s&&s.isCE&&(s.ce._teleportTargets||(s.ce._teleportTargets=new Set)).add(I),g||(E(I,A),Ga(t,!1)))};g&&(E(n,R),Ga(t,!0)),ap(t.props)?(t.el.__isMounted=!1,Lt(()=>{C(),delete t.el.__isMounted},i)):C()}else{if(ap(t.props)&&e.el.__isMounted===!1){Lt(()=>{jy.process(e,t,n,r,s,i,o,a,c,l)},i);return}t.el=e.el,t.targetStart=e.targetStart;const M=t.anchor=e.anchor,R=t.target=e.target,E=t.targetAnchor=e.targetAnchor,C=ho(e.props),I=C?n:R,A=C?M:E;if(o==="svg"||cp(R)?o="svg":(o==="mathml"||lp(R))&&(o="mathml"),S?(f(e.dynamicChildren,S,I,s,i,o,a),kf(e,t,!0)):c||u(e,t,I,A,s,i,o,a,!1),g)C?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Ia(t,n,M,l,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const O=t.target=Yu(t.props,p);O&&Ia(t,O,null,l,0)}else C&&Ia(t,R,E,l,1);Ga(t,g)}},remove(e,t,n,{um:r,o:{remove:s}},i){const{shapeFlag:o,children:a,anchor:c,targetStart:l,targetAnchor:d,target:u,props:f}=e;if(u&&(s(l),s(d)),i&&s(c),o&16){const h=i||!ho(f);for(let p=0;p{e.isMounted=!0}),Tn(()=>{e.isUnmounting=!0}),e}const sn=[Function,Array],Gy={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:sn,onEnter:sn,onAfterEnter:sn,onEnterCancelled:sn,onBeforeLeave:sn,onLeave:sn,onAfterLeave:sn,onLeaveCancelled:sn,onBeforeAppear:sn,onAppear:sn,onAfterAppear:sn,onAppearCancelled:sn},Ky=e=>{const t=e.subTree;return t.component?Ky(t.component):t},f1={name:"BaseTransition",props:Gy,setup(e,{slots:t}){const n=Li(),r=qy();return()=>{const s=t.default&&Ef(t.default(),!0);if(!s||!s.length)return;const i=Yy(s),o=de(e),{mode:a}=o;if(r.isLeaving)return Kl(i);const c=up(i);if(!c)return Kl(i);let l=Ao(c,o,r,n,u=>l=u);c.type!==_t&&Cs(c,l);let d=n.subTree&&up(n.subTree);if(d&&d.type!==_t&&!os(d,c)&&Ky(n).type!==_t){let u=Ao(d,o,r,n);if(Cs(d,u),a==="out-in"&&c.type!==_t)return r.isLeaving=!0,u.afterLeave=()=>{r.isLeaving=!1,n.job.flags&8||n.update(),delete u.afterLeave,d=void 0},Kl(i);a==="in-out"&&c.type!==_t?u.delayLeave=(f,h,p)=>{const m=Xy(r,d);m[String(d.key)]=d,f[Kn]=()=>{h(),f[Kn]=void 0,delete l.delayedLeave,d=void 0},l.delayedLeave=()=>{p(),delete l.delayedLeave,d=void 0}}:d=void 0}else d&&(d=void 0);return i}}};function Yy(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==_t){t=n;break}}return t}const h1=f1;function Xy(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Ao(e,t,n,r,s){const{appear:i,mode:o,persisted:a=!1,onBeforeEnter:c,onEnter:l,onAfterEnter:d,onEnterCancelled:u,onBeforeLeave:f,onLeave:h,onAfterLeave:p,onLeaveCancelled:m,onBeforeAppear:v,onAppear:g,onAfterAppear:y,onAppearCancelled:_}=t,S=String(e.key),M=Xy(n,e),R=(I,A)=>{I&&wn(I,r,9,A)},E=(I,A)=>{const O=A[1];R(I,A),fe(I)?I.every(T=>T.length<=1)&&O():I.length<=1&&O()},C={mode:o,persisted:a,beforeEnter(I){let A=c;if(!n.isMounted)if(i)A=v||c;else return;I[Kn]&&I[Kn](!0);const O=M[S];O&&os(e,O)&&O.el[Kn]&&O.el[Kn](),R(A,[I])},enter(I){let A=l,O=d,T=u;if(!n.isMounted)if(i)A=g||l,O=y||d,T=_||u;else return;let P=!1;const N=I[xa]=z=>{P||(P=!0,z?R(T,[I]):R(O,[I]),C.delayedLeave&&C.delayedLeave(),I[xa]=void 0)};A?E(A,[I,N]):N()},leave(I,A){const O=String(e.key);if(I[xa]&&I[xa](!0),n.isUnmounting)return A();R(f,[I]);let T=!1;const P=I[Kn]=N=>{T||(T=!0,A(),N?R(m,[I]):R(p,[I]),I[Kn]=void 0,M[O]===e&&delete M[O])};M[O]=e,h?E(h,[I,P]):P()},clone(I){const A=Ao(I,t,n,r,s);return s&&s(A),A}};return C}function Kl(e){if(fl(e))return e=Fr(e),e.children=null,e}function up(e){if(!fl(e))return Wy(e.type)&&e.children?Yy(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&ve(n.default))return n.default()}}function Cs(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Cs(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Ef(e,t=!1,n){let r=[],s=0;for(let i=0;i1)for(let i=0;ipo(p,t&&(fe(t)?t[m]:t),n,r,s));return}if(ci(r)&&!s){r.shapeFlag&512&&r.type.__asyncResolved&&r.component.subTree.component&&po(e,t,n,r.component.subTree);return}const i=r.shapeFlag&4?gl(r.component):r.el,o=s?null:i,{i:a,r:c}=e,l=t&&t.r,d=a.refs===Ve?a.refs={}:a.refs,u=a.setupState,f=de(u),h=u===Ve?cy:p=>$e(f,p);if(l!=null&&l!==c){if(dp(t),rt(l))d[l]=null,h(l)&&(u[l]=null);else if(Je(l)){l.value=null;const p=t;p.k&&(d[p.k]=null)}}if(ve(c))Qo(c,a,12,[o,d]);else{const p=rt(c),m=Je(c);if(p||m){const v=()=>{if(e.f){const g=p?h(c)?u[c]:d[c]:c.value;if(s)fe(g)&&lf(g,i);else if(fe(g))g.includes(i)||g.push(i);else if(p)d[c]=[i],h(c)&&(u[c]=d[c]);else{const y=[i];c.value=y,e.k&&(d[e.k]=y)}}else p?(d[c]=o,h(c)&&(u[c]=o)):m&&(c.value=o,e.k&&(d[e.k]=o))};if(o){const g=()=>{v(),Sc.delete(e)};g.id=-1,Sc.set(e,g),Lt(g,n)}else dp(e),v()}}}function dp(e){const t=Sc.get(e);t&&(t.flags|=8,Sc.delete(e))}al().requestIdleCallback;al().cancelIdleCallback;const ci=e=>!!e.type.__asyncLoader,fl=e=>e.type.__isKeepAlive;function Qy(e,t){t_(e,"a",t)}function e_(e,t){t_(e,"da",t)}function t_(e,t,n=xt){const r=e.__wdc||(e.__wdc=()=>{let s=n;for(;s;){if(s.isDeactivated)return;s=s.parent}return e()});if(hl(t,r,n),n){let s=n.parent;for(;s&&s.parent;)fl(s.parent.vnode)&&p1(r,t,n,s),s=s.parent}}function p1(e,t,n,r){const s=hl(t,e,r,!0);n_(()=>{lf(r[t],s)},n)}function hl(e,t,n=xt,r=!1){if(n){const s=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{rr();const a=ta(n),c=wn(t,n,e,o);return a(),sr(),c});return r?s.unshift(i):s.push(i),i}}const pr=e=>(t,n=xt)=>{(!Po||e==="sp")&&hl(e,(...r)=>t(...r),n)},pl=pr("bm"),jr=pr("m"),m1=pr("bu"),wf=pr("u"),Tn=pr("bum"),n_=pr("um"),g1=pr("sp"),v1=pr("rtg"),y1=pr("rtc");function _1(e,t=xt){hl("ec",e,t)}const r_="components";function b1(e,t){return o_(r_,e,!0,t)||e}const s_=Symbol.for("v-ndc");function i_(e){return rt(e)?o_(r_,e,!1)||e:e||s_}function o_(e,t,n=!0,r=!1){const s=St||xt;if(s){const i=s.type;{const a=sC(i,!1);if(a&&(a===t||a===$t(t)||a===Oi($t(t))))return i}const o=fp(s[e]||i[e],t)||fp(s.appContext[e],t);return!o&&r?i:o}}function fp(e,t){return e&&(e[t]||e[$t(t)]||e[Oi($t(t))])}function S1(e,t,n,r){let s;const i=n,o=fe(e);if(o||rt(e)){const a=o&&Jn(e);let c=!1,l=!1;a&&(c=!Qt(e),l=ir(e),e=cl(e)),s=new Array(e.length);for(let d=0,u=e.length;dt(a,c,void 0,i));else{const a=Object.keys(e);s=new Array(a.length);for(let c=0,l=a.length;c{const i=r.fn(...s);return i&&(i.key=r.key),i}:r.fn)}return e}function F3(e,t,n={},r,s){if(St.ce||St.parent&&ci(St.parent)&&St.parent.ce){const l=Object.keys(n).length>0;return t!=="default"&&(n.name=t),cn(),Dn(Ze,null,[B("slot",n,r)],l?-2:64)}let i=e[t];i&&i._c&&(i._d=!1),cn();const o=i&&a_(i(n)),a=n.key||o&&o.key,c=Dn(Ze,{key:(a&&!hr(a)?a:`_${t}`)+(!o&&r?"_fb":"")},o||[],o&&e._===1?64:-2);return i&&i._c&&(i._d=!0),c}function a_(e){return e.some(t=>mi(t)?!(t.type===_t||t.type===Ze&&!a_(t.children)):!0)?e:null}const Xu=e=>e?k_(e)?gl(e):Xu(e.parent):null,mo=dt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Xu(e.parent),$root:e=>Xu(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>l_(e),$forceUpdate:e=>e.f||(e.f=()=>{bf(e.update)}),$nextTick:e=>e.n||(e.n=vt.bind(e.proxy)),$watch:e=>l1.bind(e)}),Yl=(e,t)=>e!==Ve&&!e.__isScriptSetup&&$e(e,t),E1={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:r,data:s,props:i,accessCache:o,type:a,appContext:c}=e;if(t[0]!=="$"){const f=o[t];if(f!==void 0)switch(f){case 1:return r[t];case 2:return s[t];case 4:return n[t];case 3:return i[t]}else{if(Yl(r,t))return o[t]=1,r[t];if(s!==Ve&&$e(s,t))return o[t]=2,s[t];if($e(i,t))return o[t]=3,i[t];if(n!==Ve&&$e(n,t))return o[t]=4,n[t];Ju&&(o[t]=0)}}const l=mo[t];let d,u;if(l)return t==="$attrs"&&It(e.attrs,"get",""),l(e);if((d=a.__cssModules)&&(d=d[t]))return d;if(n!==Ve&&$e(n,t))return o[t]=4,n[t];if(u=c.config.globalProperties,$e(u,t))return u[t]},set({_:e},t,n){const{data:r,setupState:s,ctx:i}=e;return Yl(s,t)?(s[t]=n,!0):r!==Ve&&$e(r,t)?(r[t]=n,!0):$e(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:s,props:i,type:o}},a){let c;return!!(n[a]||e!==Ve&&a[0]!=="$"&&$e(e,a)||Yl(t,a)||$e(i,a)||$e(r,a)||$e(mo,a)||$e(s.config.globalProperties,a)||(c=o.__cssModules)&&c[a])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:$e(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function hp(e){return fe(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Ju=!0;function w1(e){const t=l_(e),n=e.proxy,r=e.ctx;Ju=!1,t.beforeCreate&&pp(t.beforeCreate,e,"bc");const{data:s,computed:i,methods:o,watch:a,provide:c,inject:l,created:d,beforeMount:u,mounted:f,beforeUpdate:h,updated:p,activated:m,deactivated:v,beforeDestroy:g,beforeUnmount:y,destroyed:_,unmounted:S,render:M,renderTracked:R,renderTriggered:E,errorCaptured:C,serverPrefetch:I,expose:A,inheritAttrs:O,components:T,directives:P,filters:N}=t;if(l&&C1(l,r,null),o)for(const q in o){const D=o[q];ve(D)&&(r[q]=D.bind(n))}if(s){const q=s.call(n,n);ze(q)&&(e.data=pt(q))}if(Ju=!0,i)for(const q in i){const D=i[q],re=ve(D)?D.bind(n,n):ve(D.get)?D.get.bind(n,n):Bn,U=!ve(D)&&ve(D.set)?D.set.bind(n):Bn,ie=j({get:re,set:U});Object.defineProperty(r,q,{enumerable:!0,configurable:!0,get:()=>ie.value,set:ae=>ie.value=ae})}if(a)for(const q in a)c_(a[q],r,n,q);if(c){const q=ve(c)?c.call(n):c;Reflect.ownKeys(q).forEach(D=>{At(D,q[D])})}d&&pp(d,e,"c");function X(q,D){fe(D)?D.forEach(re=>q(re.bind(n))):D&&q(D.bind(n))}if(X(pl,u),X(jr,f),X(m1,h),X(wf,p),X(Qy,m),X(e_,v),X(_1,C),X(y1,R),X(v1,E),X(Tn,y),X(n_,S),X(g1,I),fe(A))if(A.length){const q=e.exposed||(e.exposed={});A.forEach(D=>{Object.defineProperty(q,D,{get:()=>n[D],set:re=>n[D]=re,enumerable:!0})})}else e.exposed||(e.exposed={});M&&e.render===Bn&&(e.render=M),O!=null&&(e.inheritAttrs=O),T&&(e.components=T),P&&(e.directives=P),I&&Zy(e)}function C1(e,t,n=Bn){fe(e)&&(e=Zu(e));for(const r in e){const s=e[r];let i;ze(s)?"default"in s?i=Oe(s.from||r,s.default,!0):i=Oe(s.from||r):i=Oe(s),Je(i)?Object.defineProperty(t,r,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[r]=i}}function pp(e,t,n){wn(fe(e)?e.map(r=>r.bind(t.proxy)):e.bind(t.proxy),t,n)}function c_(e,t,n,r){let s=r.includes(".")?Vy(n,r):()=>n[r];if(rt(e)){const i=t[e];ve(i)&&Se(s,i)}else if(ve(e))Se(s,e.bind(n));else if(ze(e))if(fe(e))e.forEach(i=>c_(i,t,n,r));else{const i=ve(e.handler)?e.handler.bind(n):t[e.handler];ve(i)&&Se(s,i,e)}}function l_(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:s,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,a=i.get(t);let c;return a?c=a:!s.length&&!n&&!r?c=t:(c={},s.length&&s.forEach(l=>Ec(c,l,o,!0)),Ec(c,t,o)),ze(t)&&i.set(t,c),c}function Ec(e,t,n,r=!1){const{mixins:s,extends:i}=t;i&&Ec(e,i,n,!0),s&&s.forEach(o=>Ec(e,o,n,!0));for(const o in t)if(!(r&&o==="expose")){const a=T1[o]||n&&n[o];e[o]=a?a(e[o],t[o]):t[o]}return e}const T1={data:mp,props:gp,emits:gp,methods:oo,computed:oo,beforeCreate:Pt,created:Pt,beforeMount:Pt,mounted:Pt,beforeUpdate:Pt,updated:Pt,beforeDestroy:Pt,beforeUnmount:Pt,destroyed:Pt,unmounted:Pt,activated:Pt,deactivated:Pt,errorCaptured:Pt,serverPrefetch:Pt,components:oo,directives:oo,watch:I1,provide:mp,inject:k1};function mp(e,t){return t?e?function(){return dt(ve(e)?e.call(this,this):e,ve(t)?t.call(this,this):t)}:t:e}function k1(e,t){return oo(Zu(e),Zu(t))}function Zu(e){if(fe(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${$t(t)}Modifiers`]||e[`${Wr(t)}Modifiers`];function M1(e,t,...n){if(e.isUnmounted)return;const r=e.vnode.props||Ve;let s=n;const i=t.startsWith("update:"),o=i&&A1(r,t.slice(7));o&&(o.trim&&(s=n.map(d=>rt(d)?d.trim():d)),o.number&&(s=n.map(uf)));let a,c=r[a=Wl(t)]||r[a=Wl($t(t))];!c&&i&&(c=r[a=Wl(Wr(t))]),c&&wn(c,e,6,s);const l=r[a+"Once"];if(l){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,wn(l,e,6,s)}}const P1=new WeakMap;function d_(e,t,n=!1){const r=n?P1:t.emitsCache,s=r.get(e);if(s!==void 0)return s;const i=e.emits;let o={},a=!1;if(!ve(e)){const c=l=>{const d=d_(l,t,!0);d&&(a=!0,dt(o,d))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!a?(ze(e)&&r.set(e,null),null):(fe(i)?i.forEach(c=>o[c]=null):dt(o,i),ze(e)&&r.set(e,o),o)}function ml(e,t){return!e||!rl(t)?!1:(t=t.slice(2).replace(/Once$/,""),$e(e,t[0].toLowerCase()+t.slice(1))||$e(e,Wr(t))||$e(e,t))}function vp(e){const{type:t,vnode:n,proxy:r,withProxy:s,propsOptions:[i],slots:o,attrs:a,emit:c,render:l,renderCache:d,props:u,data:f,setupState:h,ctx:p,inheritAttrs:m}=e,v=bc(e);let g,y;try{if(n.shapeFlag&4){const S=s||r,M=S;g=On(l.call(M,S,d,u,h,f,p)),y=a}else{const S=t;g=On(S.length>1?S(u,{attrs:a,slots:o,emit:c}):S(u,null)),y=t.props?a:O1(a)}}catch(S){go.length=0,ul(S,e,1),g=B(_t)}let _=g;if(y&&m!==!1){const S=Object.keys(y),{shapeFlag:M}=_;S.length&&M&7&&(i&&S.some(cf)&&(y=L1(y,i)),_=Fr(_,y,!1,!0))}return n.dirs&&(_=Fr(_,null,!1,!0),_.dirs=_.dirs?_.dirs.concat(n.dirs):n.dirs),n.transition&&Cs(_,n.transition),g=_,bc(v),g}const O1=e=>{let t;for(const n in e)(n==="class"||n==="style"||rl(n))&&((t||(t={}))[n]=e[n]);return t},L1=(e,t)=>{const n={};for(const r in e)(!cf(r)||!(r.slice(9)in t))&&(n[r]=e[r]);return n};function N1(e,t,n){const{props:r,children:s,component:i}=e,{props:o,children:a,patchFlag:c}=t,l=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return r?yp(r,o,l):!!o;if(c&8){const d=t.dynamicProps;for(let u=0;uObject.create(f_),p_=e=>Object.getPrototypeOf(e)===f_;function F1(e,t,n,r=!1){const s={},i=h_();e.propsDefaults=Object.create(null),m_(e,t,s,i);for(const o in e.propsOptions[0])o in s||(s[o]=void 0);n?e.props=r?s:Py(s):e.type.props?e.props=s:e.props=i,e.attrs=i}function $1(e,t,n,r){const{props:s,attrs:i,vnode:{patchFlag:o}}=e,a=de(s),[c]=e.propsOptions;let l=!1;if((r||o>0)&&!(o&16)){if(o&8){const d=e.vnode.dynamicProps;for(let u=0;u{c=!0;const[f,h]=g_(u,t,!0);dt(o,f),h&&a.push(...h)};!n&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!i&&!c)return ze(e)&&r.set(e,ii),ii;if(fe(i))for(let d=0;de==="_"||e==="_ctx"||e==="$stable",Tf=e=>fe(e)?e.map(On):[On(e)],H1=(e,t,n)=>{if(t._n)return t;const r=gt((...s)=>Tf(t(...s)),n);return r._c=!1,r},v_=(e,t,n)=>{const r=e._ctx;for(const s in e){if(Cf(s))continue;const i=e[s];if(ve(i))t[s]=H1(s,i,r);else if(i!=null){const o=Tf(i);t[s]=()=>o}}},y_=(e,t)=>{const n=Tf(t);e.slots.default=()=>n},__=(e,t,n)=>{for(const r in t)(n||!Cf(r))&&(e[r]=t[r])},V1=(e,t,n)=>{const r=e.slots=h_();if(e.vnode.shapeFlag&32){const s=t._;s?(__(r,t,n),n&&hy(r,"_",s,!0)):v_(t,r)}else t&&y_(e,t)},U1=(e,t,n)=>{const{vnode:r,slots:s}=e;let i=!0,o=Ve;if(r.shapeFlag&32){const a=t._;a?n&&a===1?i=!1:__(s,t,n):(i=!t.$stable,v_(t,s)),o=t}else t&&(y_(e,t),o={default:1});if(i)for(const a in s)!Cf(a)&&o[a]==null&&delete s[a]},Lt=G1;function W1(e){return j1(e)}function j1(e,t){const n=al();n.__VUE__=!0;const{insert:r,remove:s,patchProp:i,createElement:o,createText:a,createComment:c,setText:l,setElementText:d,parentNode:u,nextSibling:f,setScopeId:h=Bn,insertStaticContent:p}=e,m=(b,w,k,L=null,$=null,F=null,G=void 0,Y=null,H=!!w.dynamicChildren)=>{if(b===w)return;b&&!os(b,w)&&(L=x(b),ae(b,$,F,!0),b=null),w.patchFlag===-2&&(H=!1,w.dynamicChildren=null);const{type:V,ref:Z,shapeFlag:Q}=w;switch(V){case ea:v(b,w,k,L);break;case _t:g(b,w,k,L);break;case Jl:b==null&&y(w,k,L,G);break;case Ze:T(b,w,k,L,$,F,G,Y,H);break;default:Q&1?M(b,w,k,L,$,F,G,Y,H):Q&6?P(b,w,k,L,$,F,G,Y,H):(Q&64||Q&128)&&V.process(b,w,k,L,$,F,G,Y,H,ne)}Z!=null&&$?po(Z,b&&b.ref,F,w||b,!w):Z==null&&b&&b.ref!=null&&po(b.ref,null,F,b,!0)},v=(b,w,k,L)=>{if(b==null)r(w.el=a(w.children),k,L);else{const $=w.el=b.el;w.children!==b.children&&l($,w.children)}},g=(b,w,k,L)=>{b==null?r(w.el=c(w.children||""),k,L):w.el=b.el},y=(b,w,k,L)=>{[b.el,b.anchor]=p(b.children,w,k,L,b.el,b.anchor)},_=({el:b,anchor:w},k,L)=>{let $;for(;b&&b!==w;)$=f(b),r(b,k,L),b=$;r(w,k,L)},S=({el:b,anchor:w})=>{let k;for(;b&&b!==w;)k=f(b),s(b),b=k;s(w)},M=(b,w,k,L,$,F,G,Y,H)=>{if(w.type==="svg"?G="svg":w.type==="math"&&(G="mathml"),b==null)R(w,k,L,$,F,G,Y,H);else{const V=b.el&&b.el._isVueCE?b.el:null;try{V&&V._beginPatch(),I(b,w,$,F,G,Y,H)}finally{V&&V._endPatch()}}},R=(b,w,k,L,$,F,G,Y)=>{let H,V;const{props:Z,shapeFlag:Q,transition:oe,dirs:te}=b;if(H=b.el=o(b.type,F,Z&&Z.is,Z),Q&8?d(H,b.children):Q&16&&C(b.children,H,null,L,$,Xl(b,F),G,Y),te&&Zr(b,null,L,"created"),E(H,b,b.scopeId,G,L),Z){for(const qe in Z)qe!=="value"&&!lo(qe)&&i(H,qe,null,Z[qe],F,L);"value"in Z&&i(H,"value",null,Z.value,F),(V=Z.onVnodeBeforeMount)&&Rn(V,L,b)}te&&Zr(b,null,L,"beforeMount");const Ie=z1($,oe);Ie&&oe.beforeEnter(H),r(H,w,k),((V=Z&&Z.onVnodeMounted)||Ie||te)&&Lt(()=>{V&&Rn(V,L,b),Ie&&oe.enter(H),te&&Zr(b,null,L,"mounted")},$)},E=(b,w,k,L,$)=>{if(k&&h(b,k),L)for(let F=0;F{for(let V=H;V{const Y=w.el=b.el;let{patchFlag:H,dynamicChildren:V,dirs:Z}=w;H|=b.patchFlag&16;const Q=b.props||Ve,oe=w.props||Ve;let te;if(k&&Qr(k,!1),(te=oe.onVnodeBeforeUpdate)&&Rn(te,k,w,b),Z&&Zr(w,b,k,"beforeUpdate"),k&&Qr(k,!0),(Q.innerHTML&&oe.innerHTML==null||Q.textContent&&oe.textContent==null)&&d(Y,""),V?A(b.dynamicChildren,V,Y,k,L,Xl(w,$),F):G||D(b,w,Y,null,k,L,Xl(w,$),F,!1),H>0){if(H&16)O(Y,Q,oe,k,$);else if(H&2&&Q.class!==oe.class&&i(Y,"class",null,oe.class,$),H&4&&i(Y,"style",Q.style,oe.style,$),H&8){const Ie=w.dynamicProps;for(let qe=0;qe{te&&Rn(te,k,w,b),Z&&Zr(w,b,k,"updated")},L)},A=(b,w,k,L,$,F,G)=>{for(let Y=0;Y{if(w!==k){if(w!==Ve)for(const F in w)!lo(F)&&!(F in k)&&i(b,F,w[F],null,$,L);for(const F in k){if(lo(F))continue;const G=k[F],Y=w[F];G!==Y&&F!=="value"&&i(b,F,Y,G,$,L)}"value"in k&&i(b,"value",w.value,k.value,$)}},T=(b,w,k,L,$,F,G,Y,H)=>{const V=w.el=b?b.el:a(""),Z=w.anchor=b?b.anchor:a("");let{patchFlag:Q,dynamicChildren:oe,slotScopeIds:te}=w;te&&(Y=Y?Y.concat(te):te),b==null?(r(V,k,L),r(Z,k,L),C(w.children||[],k,Z,$,F,G,Y,H)):Q>0&&Q&64&&oe&&b.dynamicChildren&&b.dynamicChildren.length===oe.length?(A(b.dynamicChildren,oe,k,$,F,G,Y),(w.key!=null||$&&w===$.subTree)&&kf(b,w,!0)):D(b,w,k,Z,$,F,G,Y,H)},P=(b,w,k,L,$,F,G,Y,H)=>{w.slotScopeIds=Y,b==null?w.shapeFlag&512?$.ctx.activate(w,k,L,G,H):N(w,k,L,$,F,G,H):z(b,w,H)},N=(b,w,k,L,$,F,G)=>{const Y=b.component=Q1(b,L,$);if(fl(b)&&(Y.ctx.renderer=ne),eC(Y,!1,G),Y.asyncDep){if($&&$.registerDep(Y,X,G),!b.el){const H=Y.subTree=B(_t);g(null,H,w,k),b.placeholder=H.el}}else X(Y,b,w,k,$,F,G)},z=(b,w,k)=>{const L=w.component=b.component;if(N1(b,w,k))if(L.asyncDep&&!L.asyncResolved){q(L,w,k);return}else L.next=w,L.update();else w.el=b.el,L.vnode=w},X=(b,w,k,L,$,F,G)=>{const Y=()=>{if(b.isMounted){let{next:Q,bu:oe,u:te,parent:Ie,vnode:qe}=b;{const In=b_(b);if(In){Q&&(Q.el=qe.el,q(b,Q,G)),In.asyncDep.then(()=>{b.isUnmounted||Y()});return}}let Be=Q,Bt;Qr(b,!1),Q?(Q.el=qe.el,q(b,Q,G)):Q=qe,oe&&qa(oe),(Bt=Q.props&&Q.props.onVnodeBeforeUpdate)&&Rn(Bt,Ie,Q,qe),Qr(b,!0);const Ht=vp(b),kn=b.subTree;b.subTree=Ht,m(kn,Ht,u(kn.el),x(kn),b,$,F),Q.el=Ht.el,Be===null&&D1(b,Ht.el),te&&Lt(te,$),(Bt=Q.props&&Q.props.onVnodeUpdated)&&Lt(()=>Rn(Bt,Ie,Q,qe),$)}else{let Q;const{el:oe,props:te}=w,{bm:Ie,m:qe,parent:Be,root:Bt,type:Ht}=b,kn=ci(w);Qr(b,!1),Ie&&qa(Ie),!kn&&(Q=te&&te.onVnodeBeforeMount)&&Rn(Q,Be,w),Qr(b,!0);{Bt.ce&&Bt.ce._def.shadowRoot!==!1&&Bt.ce._injectChildStyle(Ht);const In=b.subTree=vp(b);m(null,In,k,L,b,$,F),w.el=In.el}if(qe&&Lt(qe,$),!kn&&(Q=te&&te.onVnodeMounted)){const In=w;Lt(()=>Rn(Q,Be,In),$)}(w.shapeFlag&256||Be&&ci(Be.vnode)&&Be.vnode.shapeFlag&256)&&b.a&&Lt(b.a,$),b.isMounted=!0,w=k=L=null}};b.scope.on();const H=b.effect=new yy(Y);b.scope.off();const V=b.update=H.run.bind(H),Z=b.job=H.runIfDirty.bind(H);Z.i=b,Z.id=b.uid,H.scheduler=()=>bf(Z),Qr(b,!0),V()},q=(b,w,k)=>{w.component=b;const L=b.vnode.props;b.vnode=w,b.next=null,$1(b,w.props,L,k),U1(b,w.children,k),rr(),op(b),sr()},D=(b,w,k,L,$,F,G,Y,H=!1)=>{const V=b&&b.children,Z=b?b.shapeFlag:0,Q=w.children,{patchFlag:oe,shapeFlag:te}=w;if(oe>0){if(oe&128){U(V,Q,k,L,$,F,G,Y,H);return}else if(oe&256){re(V,Q,k,L,$,F,G,Y,H);return}}te&8?(Z&16&&He(V,$,F),Q!==V&&d(k,Q)):Z&16?te&16?U(V,Q,k,L,$,F,G,Y,H):He(V,$,F,!0):(Z&8&&d(k,""),te&16&&C(Q,k,L,$,F,G,Y,H))},re=(b,w,k,L,$,F,G,Y,H)=>{b=b||ii,w=w||ii;const V=b.length,Z=w.length,Q=Math.min(V,Z);let oe;for(oe=0;oeZ?He(b,$,F,!0,!1,Q):C(w,k,L,$,F,G,Y,H,Q)},U=(b,w,k,L,$,F,G,Y,H)=>{let V=0;const Z=w.length;let Q=b.length-1,oe=Z-1;for(;V<=Q&&V<=oe;){const te=b[V],Ie=w[V]=H?kr(w[V]):On(w[V]);if(os(te,Ie))m(te,Ie,k,null,$,F,G,Y,H);else break;V++}for(;V<=Q&&V<=oe;){const te=b[Q],Ie=w[oe]=H?kr(w[oe]):On(w[oe]);if(os(te,Ie))m(te,Ie,k,null,$,F,G,Y,H);else break;Q--,oe--}if(V>Q){if(V<=oe){const te=oe+1,Ie=teoe)for(;V<=Q;)ae(b[V],$,F,!0),V++;else{const te=V,Ie=V,qe=new Map;for(V=Ie;V<=oe;V++){const Kt=w[V]=H?kr(w[V]):On(w[V]);Kt.key!=null&&qe.set(Kt.key,V)}let Be,Bt=0;const Ht=oe-Ie+1;let kn=!1,In=0;const Ji=new Array(Ht);for(V=0;V=Ht){ae(Kt,$,F,!0);continue}let xn;if(Kt.key!=null)xn=qe.get(Kt.key);else for(Be=Ie;Be<=oe;Be++)if(Ji[Be-Ie]===0&&os(Kt,w[Be])){xn=Be;break}xn===void 0?ae(Kt,$,F,!0):(Ji[xn-Ie]=V+1,xn>=In?In=xn:kn=!0,m(Kt,w[xn],k,null,$,F,G,Y,H),Bt++)}const Qh=kn?q1(Ji):ii;for(Be=Qh.length-1,V=Ht-1;V>=0;V--){const Kt=Ie+V,xn=w[Kt],ep=w[Kt+1],tp=Kt+1{const{el:F,type:G,transition:Y,children:H,shapeFlag:V}=b;if(V&6){ie(b.component.subTree,w,k,L);return}if(V&128){b.suspense.move(w,k,L);return}if(V&64){G.move(b,w,k,ne);return}if(G===Ze){r(F,w,k);for(let Q=0;QY.enter(F),$);else{const{leave:Q,delayLeave:oe,afterLeave:te}=Y,Ie=()=>{b.ctx.isUnmounted?s(F):r(F,w,k)},qe=()=>{F._isLeaving&&F[Kn](!0),Q(F,()=>{Ie(),te&&te()})};oe?oe(F,Ie,qe):qe()}else r(F,w,k)},ae=(b,w,k,L=!1,$=!1)=>{const{type:F,props:G,ref:Y,children:H,dynamicChildren:V,shapeFlag:Z,patchFlag:Q,dirs:oe,cacheIndex:te}=b;if(Q===-2&&($=!1),Y!=null&&(rr(),po(Y,null,k,b,!0),sr()),te!=null&&(w.renderCache[te]=void 0),Z&256){w.ctx.deactivate(b);return}const Ie=Z&1&&oe,qe=!ci(b);let Be;if(qe&&(Be=G&&G.onVnodeBeforeUnmount)&&Rn(Be,w,b),Z&6)Ne(b.component,k,L);else{if(Z&128){b.suspense.unmount(k,L);return}Ie&&Zr(b,null,w,"beforeUnmount"),Z&64?b.type.remove(b,w,k,ne,L):V&&!V.hasOnce&&(F!==Ze||Q>0&&Q&64)?He(V,w,k,!1,!0):(F===Ze&&Q&384||!$&&Z&16)&&He(H,w,k),L&&ue(b)}(qe&&(Be=G&&G.onVnodeUnmounted)||Ie)&&Lt(()=>{Be&&Rn(Be,w,b),Ie&&Zr(b,null,w,"unmounted")},k)},ue=b=>{const{type:w,el:k,anchor:L,transition:$}=b;if(w===Ze){Ce(k,L);return}if(w===Jl){S(b);return}const F=()=>{s(k),$&&!$.persisted&&$.afterLeave&&$.afterLeave()};if(b.shapeFlag&1&&$&&!$.persisted){const{leave:G,delayLeave:Y}=$,H=()=>G(k,F);Y?Y(b.el,F,H):H()}else F()},Ce=(b,w)=>{let k;for(;b!==w;)k=f(b),s(b),b=k;s(w)},Ne=(b,w,k)=>{const{bum:L,scope:$,job:F,subTree:G,um:Y,m:H,a:V}=b;bp(H),bp(V),L&&qa(L),$.stop(),F&&(F.flags|=8,ae(G,b,w,k)),Y&&Lt(Y,w),Lt(()=>{b.isUnmounted=!0},w)},He=(b,w,k,L=!1,$=!1,F=0)=>{for(let G=F;G{if(b.shapeFlag&6)return x(b.component.subTree);if(b.shapeFlag&128)return b.suspense.next();const w=f(b.anchor||b.el),k=w&&w[Uy];return k?f(k):w};let W=!1;const K=(b,w,k)=>{let L;b==null?w._vnode&&(ae(w._vnode,null,null,!0),L=w._vnode.component):m(w._vnode||null,b,w,null,null,null,k),w._vnode=b,W||(W=!0,op(L),$y(),W=!1)},ne={p:m,um:ae,m:ie,r:ue,mt:N,mc:C,pc:D,pbc:A,n:x,o:e};return{render:K,hydrate:void 0,createApp:R1(K)}}function Xl({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Qr({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function z1(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function kf(e,t,n=!1){const r=e.children,s=t.children;if(fe(r)&&fe(s))for(let i=0;i>1,e[n[a]]0&&(t[r]=n[i-1]),n[i]=r)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function b_(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:b_(t)}function bp(e){if(e)for(let t=0;te.__isSuspense;function G1(e,t){t&&t.pendingBranch?fe(e)?t.effects.push(...e):t.effects.push(e):i1(e)}const Ze=Symbol.for("v-fgt"),ea=Symbol.for("v-txt"),_t=Symbol.for("v-cmt"),Jl=Symbol.for("v-stc"),go=[];let Zt=null;function cn(e=!1){go.push(Zt=e?null:[])}function K1(){go.pop(),Zt=go[go.length-1]||null}let Mo=1;function wc(e,t=!1){Mo+=e,e<0&&Zt&&t&&(Zt.hasOnce=!0)}function w_(e){return e.dynamicChildren=Mo>0?Zt||ii:null,K1(),Mo>0&&Zt&&Zt.push(e),e}function C_(e,t,n,r,s,i){return w_(se(e,t,n,r,s,i,!0))}function Dn(e,t,n,r,s){return w_(B(e,t,n,r,s,!0))}function mi(e){return e?e.__v_isVNode===!0:!1}function os(e,t){return e.type===t.type&&e.key===t.key}const T_=({key:e})=>e??null,Ka=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?rt(e)||Je(e)||ve(e)?{i:St,r:e,k:t,f:!!n}:e:null);function se(e,t=null,n=null,r=0,s=null,i=e===Ze?0:1,o=!1,a=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&T_(t),ref:t&&Ka(t),scopeId:Hy,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:s,dynamicChildren:null,appContext:null,ctx:St};return a?(If(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=rt(n)?8:16),Mo>0&&!o&&Zt&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Zt.push(c),c}const B=Y1;function Y1(e,t=null,n=null,r=0,s=null,i=!1){if((!e||e===s_)&&(e=_t),mi(e)){const a=Fr(e,t,!0);return n&&If(a,n),Mo>0&&!i&&Zt&&(a.shapeFlag&6?Zt[Zt.indexOf(e)]=a:Zt.push(a)),a.patchFlag=-2,a}if(iC(e)&&(e=e.__vccOpts),t){t=X1(t);let{class:a,style:c}=t;a&&!rt(a)&&(t.class=Me(a)),ze(c)&&(ll(c)&&!fe(c)&&(c=dt({},c)),t.style=Xe(c))}const o=rt(e)?1:E_(e)?128:Wy(e)?64:ze(e)?4:ve(e)?2:0;return se(e,t,n,r,s,o,i,!0)}function X1(e){return e?ll(e)||p_(e)?dt({},e):e:null}function Fr(e,t,n=!1,r=!1){const{props:s,ref:i,patchFlag:o,children:a,transition:c}=e,l=t?Qe(s||{},t):s,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&T_(l),ref:t&&t.ref?n&&i?fe(i)?i.concat(Ka(t)):[i,Ka(t)]:Ka(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Ze?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Fr(e.ssContent),ssFallback:e.ssFallback&&Fr(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&r&&Cs(d,c.clone(d)),d}function ao(e=" ",t=0){return B(ea,null,e,t)}function ed(e="",t=!1){return t?(cn(),Dn(_t,null,e)):B(_t,null,e)}function On(e){return e==null||typeof e=="boolean"?B(_t):fe(e)?B(Ze,null,e.slice()):mi(e)?kr(e):B(ea,null,String(e))}function kr(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Fr(e)}function If(e,t){let n=0;const{shapeFlag:r}=e;if(t==null)t=null;else if(fe(t))n=16;else if(typeof t=="object")if(r&65){const s=t.default;s&&(s._c&&(s._d=!1),If(e,s()),s._c&&(s._d=!0));return}else{n=32;const s=t._;!s&&!p_(t)?t._ctx=St:s===3&&St&&(St.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else ve(t)?(t={default:t,_ctx:St},n=32):(t=String(t),r&64?(n=16,t=[ao(t)]):n=8);e.children=t,e.shapeFlag|=n}function Qe(...e){const t={};for(let n=0;nxt||St;let Cc,td;{const e=al(),t=(n,r)=>{let s;return(s=e[n])||(s=e[n]=[]),s.push(r),i=>{s.length>1?s.forEach(o=>o(i)):s[0](i)}};Cc=t("__VUE_INSTANCE_SETTERS__",n=>xt=n),td=t("__VUE_SSR_SETTERS__",n=>Po=n)}const ta=e=>{const t=xt;return Cc(e),e.scope.on(),()=>{e.scope.off(),Cc(t)}},Sp=()=>{xt&&xt.scope.off(),Cc(null)};function k_(e){return e.vnode.shapeFlag&4}let Po=!1;function eC(e,t=!1,n=!1){t&&td(t);const{props:r,children:s}=e.vnode,i=k_(e);F1(e,r,i,t),V1(e,s,n||t);const o=i?tC(e,t):void 0;return t&&td(!1),o}function tC(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,E1);const{setup:r}=n;if(r){rr();const s=e.setupContext=r.length>1?rC(e):null,i=ta(e),o=Qo(r,e,0,[e.props,s]),a=uy(o);if(sr(),i(),(a||e.sp)&&!ci(e)&&Zy(e),a){if(o.then(Sp,Sp),t)return o.then(c=>{Ep(e,c)}).catch(c=>{ul(c,e,0)});e.asyncDep=o}else Ep(e,o)}else I_(e)}function Ep(e,t,n){ve(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ze(t)&&(e.setupState=Ly(t)),I_(e)}function I_(e,t,n){const r=e.type;e.render||(e.render=r.render||Bn);{const s=ta(e);rr();try{w1(e)}finally{sr(),s()}}}const nC={get(e,t){return It(e,"get",""),e[t]}};function rC(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,nC),slots:e.slots,emit:e.emit,expose:t}}function gl(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Ly(yf(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in mo)return mo[n](e)},has(t,n){return n in t||n in mo}})):e.proxy}function sC(e,t=!0){return ve(e)?e.displayName||e.name:e.name||t&&e.__name}function iC(e){return ve(e)&&"__vccOpts"in e}const j=(e,t)=>e1(e,t,Po);function zr(e,t,n){try{wc(-1);const r=arguments.length;return r===2?ze(t)&&!fe(t)?mi(t)?B(e,null,[t]):B(e,t):B(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):r===3&&mi(n)&&(n=[n]),B(e,t,n))}finally{wc(1)}}const oC="3.5.27";/** +* @vue/runtime-dom v3.5.27 +* (c) 2018-present Yuxi (Evan) You and Vue contributors +* @license MIT +**/let nd;const wp=typeof window<"u"&&window.trustedTypes;if(wp)try{nd=wp.createPolicy("vue",{createHTML:e=>e})}catch{}const x_=nd?e=>nd.createHTML(e):e=>e,aC="http://www.w3.org/2000/svg",cC="http://www.w3.org/1998/Math/MathML",Gn=typeof document<"u"?document:null,Cp=Gn&&Gn.createElement("template"),lC={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const s=t==="svg"?Gn.createElementNS(aC,e):t==="mathml"?Gn.createElementNS(cC,e):n?Gn.createElement(e,{is:n}):Gn.createElement(e);return e==="select"&&r&&r.multiple!=null&&s.setAttribute("multiple",r.multiple),s},createText:e=>Gn.createTextNode(e),createComment:e=>Gn.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Gn.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,r,s,i){const o=n?n.previousSibling:t.lastChild;if(s&&(s===i||s.nextSibling))for(;t.insertBefore(s.cloneNode(!0),n),!(s===i||!(s=s.nextSibling)););else{Cp.innerHTML=x_(r==="svg"?`${e}`:r==="mathml"?`${e}`:e);const a=Cp.content;if(r==="svg"||r==="mathml"){const c=a.firstChild;for(;c.firstChild;)a.appendChild(c.firstChild);a.removeChild(c)}t.insertBefore(a,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},yr="transition",Qi="animation",gi=Symbol("_vtc"),R_={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},A_=dt({},Gy,R_),uC=e=>(e.displayName="Transition",e.props=A_,e),$r=uC((e,{slots:t})=>zr(h1,M_(e),t)),es=(e,t=[])=>{fe(e)?e.forEach(n=>n(...t)):e&&e(...t)},Tp=e=>e?fe(e)?e.some(t=>t.length>1):e.length>1:!1;function M_(e){const t={};for(const T in e)T in R_||(t[T]=e[T]);if(e.css===!1)return t;const{name:n="v",type:r,duration:s,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:a=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:l=o,appearToClass:d=a,leaveFromClass:u=`${n}-leave-from`,leaveActiveClass:f=`${n}-leave-active`,leaveToClass:h=`${n}-leave-to`}=e,p=dC(s),m=p&&p[0],v=p&&p[1],{onBeforeEnter:g,onEnter:y,onEnterCancelled:_,onLeave:S,onLeaveCancelled:M,onBeforeAppear:R=g,onAppear:E=y,onAppearCancelled:C=_}=t,I=(T,P,N,z)=>{T._enterCancelled=z,Sr(T,P?d:a),Sr(T,P?l:o),N&&N()},A=(T,P)=>{T._isLeaving=!1,Sr(T,u),Sr(T,h),Sr(T,f),P&&P()},O=T=>(P,N)=>{const z=T?E:y,X=()=>I(P,T,N);es(z,[P,X]),kp(()=>{Sr(P,T?c:i),An(P,T?d:a),Tp(z)||Ip(P,r,m,X)})};return dt(t,{onBeforeEnter(T){es(g,[T]),An(T,i),An(T,o)},onBeforeAppear(T){es(R,[T]),An(T,c),An(T,l)},onEnter:O(!1),onAppear:O(!0),onLeave(T,P){T._isLeaving=!0;const N=()=>A(T,P);An(T,u),T._enterCancelled?(An(T,f),rd(T)):(rd(T),An(T,f)),kp(()=>{T._isLeaving&&(Sr(T,u),An(T,h),Tp(S)||Ip(T,r,v,N))}),es(S,[T,N])},onEnterCancelled(T){I(T,!1,void 0,!0),es(_,[T])},onAppearCancelled(T){I(T,!0,void 0,!0),es(C,[T])},onLeaveCancelled(T){A(T),es(M,[T])}})}function dC(e){if(e==null)return null;if(ze(e))return[Zl(e.enter),Zl(e.leave)];{const t=Zl(e);return[t,t]}}function Zl(e){return ww(e)}function An(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[gi]||(e[gi]=new Set)).add(t)}function Sr(e,t){t.split(/\s+/).forEach(r=>r&&e.classList.remove(r));const n=e[gi];n&&(n.delete(t),n.size||(e[gi]=void 0))}function kp(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let fC=0;function Ip(e,t,n,r){const s=e._endId=++fC,i=()=>{s===e._endId&&r()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:a,propCount:c}=P_(e,t);if(!o)return r();const l=o+"end";let d=0;const u=()=>{e.removeEventListener(l,f),i()},f=h=>{h.target===e&&++d>=c&&u()};setTimeout(()=>{d(n[p]||"").split(", "),s=r(`${yr}Delay`),i=r(`${yr}Duration`),o=xp(s,i),a=r(`${Qi}Delay`),c=r(`${Qi}Duration`),l=xp(a,c);let d=null,u=0,f=0;t===yr?o>0&&(d=yr,u=o,f=i.length):t===Qi?l>0&&(d=Qi,u=l,f=c.length):(u=Math.max(o,l),d=u>0?o>l?yr:Qi:null,f=d?d===yr?i.length:c.length:0);const h=d===yr&&/\b(?:transform|all)(?:,|$)/.test(r(`${yr}Property`).toString());return{type:d,timeout:u,propCount:f,hasTransform:h}}function xp(e,t){for(;e.lengthRp(n)+Rp(e[r])))}function Rp(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function rd(e){return(e?e.ownerDocument:document).body.offsetHeight}function hC(e,t,n){const r=e[gi];r&&(t=(t?[t,...r]:[...r]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Tc=Symbol("_vod"),O_=Symbol("_vsh"),xf={name:"show",beforeMount(e,{value:t},{transition:n}){e[Tc]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):eo(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),eo(e,!0),r.enter(e)):r.leave(e,()=>{eo(e,!1)}):eo(e,t))},beforeUnmount(e,{value:t}){eo(e,t)}};function eo(e,t){e.style.display=t?e[Tc]:"none",e[O_]=!t}const pC=Symbol(""),mC=/(?:^|;)\s*display\s*:/;function gC(e,t,n){const r=e.style,s=rt(n);let i=!1;if(n&&!s){if(t)if(rt(t))for(const o of t.split(";")){const a=o.slice(0,o.indexOf(":")).trim();n[a]==null&&Ya(r,a,"")}else for(const o in t)n[o]==null&&Ya(r,o,"");for(const o in n)o==="display"&&(i=!0),Ya(r,o,n[o])}else if(s){if(t!==n){const o=r[pC];o&&(n+=";"+o),r.cssText=n,i=mC.test(n)}}else t&&e.removeAttribute("style");Tc in e&&(e[Tc]=i?r.display:"",e[O_]&&(r.display="none"))}const Ap=/\s*!important$/;function Ya(e,t,n){if(fe(n))n.forEach(r=>Ya(e,t,r));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const r=vC(e,t);Ap.test(n)?e.setProperty(Wr(r),n.replace(Ap,""),"important"):e[r]=n}}const Mp=["Webkit","Moz","ms"],Ql={};function vC(e,t){const n=Ql[t];if(n)return n;let r=$t(t);if(r!=="filter"&&r in e)return Ql[t]=r;r=Oi(r);for(let s=0;seu||(SC.then(()=>eu=0),eu=Date.now());function wC(e,t){const n=r=>{if(!r._vts)r._vts=Date.now();else if(r._vts<=n.attached)return;wn(CC(r,n.value),t,5,[r])};return n.value=e,n.attached=EC(),n}function CC(e,t){if(fe(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(r=>s=>!s._stopped&&r&&r(s))}else return t}const Fp=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,TC=(e,t,n,r,s,i)=>{const o=s==="svg";t==="class"?hC(e,r,o):t==="style"?gC(e,n,r):rl(t)?cf(t)||_C(e,t,n,r,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):kC(e,t,r,o))?(Lp(e,t,r),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Op(e,t,r,o,i,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!rt(r))?Lp(e,$t(t),r,i,t):(t==="true-value"?e._trueValue=r:t==="false-value"&&(e._falseValue=r),Op(e,t,r,o))};function kC(e,t,n,r){if(r)return!!(t==="innerHTML"||t==="textContent"||t in e&&Fp(t)&&ve(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const s=e.tagName;if(s==="IMG"||s==="VIDEO"||s==="CANVAS"||s==="SOURCE")return!1}return Fp(t)&&rt(n)?!1:t in e}const L_=new WeakMap,N_=new WeakMap,kc=Symbol("_moveCb"),$p=Symbol("_enterCb"),IC=e=>(delete e.props.mode,e),xC=IC({name:"TransitionGroup",props:dt({},A_,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Li(),r=qy();let s,i;return wf(()=>{if(!s.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!PC(s[0].el,n.vnode.el,o)){s=[];return}s.forEach(RC),s.forEach(AC);const a=s.filter(MC);rd(n.vnode.el),a.forEach(c=>{const l=c.el,d=l.style;An(l,o),d.transform=d.webkitTransform=d.transitionDuration="";const u=l[kc]=f=>{f&&f.target!==l||(!f||f.propertyName.endsWith("transform"))&&(l.removeEventListener("transitionend",u),l[kc]=null,Sr(l,o))};l.addEventListener("transitionend",u)}),s=[]}),()=>{const o=de(e),a=M_(o);let c=o.tag||Ze;if(s=[],i)for(let l=0;l{a.split(/\s+/).forEach(c=>c&&r.classList.remove(c))}),n.split(/\s+/).forEach(a=>a&&r.classList.add(a)),r.style.display="none";const i=t.nodeType===1?t:t.parentNode;i.appendChild(r);const{hasTransform:o}=P_(r);return i.removeChild(r),o}const Bp=e=>{const t=e.props["onUpdate:modelValue"]||!1;return fe(t)?n=>qa(t,n):t};function OC(e){e.target.composing=!0}function Hp(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const tu=Symbol("_assign");function Vp(e,t,n){return t&&(e=e.trim()),n&&(e=uf(e)),e}const $3={created(e,{modifiers:{lazy:t,trim:n,number:r}},s){e[tu]=Bp(s);const i=r||s.props&&s.props.type==="number";Gs(e,t?"change":"input",o=>{o.target.composing||e[tu](Vp(e.value,n,i))}),(n||i)&&Gs(e,"change",()=>{e.value=Vp(e.value,n,i)}),t||(Gs(e,"compositionstart",OC),Gs(e,"compositionend",Hp),Gs(e,"change",Hp))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:r,trim:s,number:i}},o){if(e[tu]=Bp(o),e.composing)return;const a=(i||e.type==="number")&&!/^0\d/.test(e.value)?uf(e.value):e.value,c=t??"";a!==c&&(document.activeElement===e&&e.type!=="range"&&(r&&t===n||s&&e.value.trim()===c)||(e.value=c))}},LC=["ctrl","shift","alt","meta"],NC={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>LC.some(n=>e[`${n}Key`]&&!t.includes(n))},B3=(e,t)=>{const n=e._withMods||(e._withMods={}),r=t.join(".");return n[r]||(n[r]=(s,...i)=>{for(let o=0;o{const n=e._withKeys||(e._withKeys={}),r=t.join(".");return n[r]||(n[r]=s=>{if(!("key"in s))return;const i=Wr(s.key);if(t.some(o=>o===i||DC[o]===i))return e(s)})},FC=dt({patchProp:TC},lC);let Up;function $C(){return Up||(Up=W1(FC))}const BC=(...e)=>{const t=$C().createApp(...e),{mount:n}=t;return t.mount=r=>{const s=VC(r);if(!s)return;const i=t._component;!ve(i)&&!i.render&&!i.template&&(i.template=s.innerHTML),s.nodeType===1&&(s.textContent="");const o=n(s,!1,HC(s));return s instanceof Element&&(s.removeAttribute("v-cloak"),s.setAttribute("data-v-app","")),o},t};function HC(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function VC(e){return rt(e)?document.querySelector(e):e}function V3(e){}function D_(e,t){t=Array.isArray(t)?t.slice(0,-1).map(n=>`'${n}'`).join(", ")+` or '${t.at(-1)}'`:`'${t}'`}const et=typeof window<"u",Af=et&&"IntersectionObserver"in window,UC=et&&("ontouchstart"in window||window.navigator.maxTouchPoints>0),F_=et&&"matchMedia"in window&&typeof window.matchMedia=="function",Oo=()=>F_&&window.matchMedia("(prefers-reduced-motion: reduce)").matches;function Wp(e,t,n){WC(e,t),t.set(e,n)}function WC(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function jp(e,t,n){return e.set($_(e,t),n),n}function Wn(e,t){return e.get($_(e,t))}function $_(e,t,n){if(typeof e=="function"?e===t:e.has(t))return arguments.length<3?t:n;throw new TypeError("Private element is not present on this object")}function B_(e,t,n){const r=t.length-1;if(r<0)return e===void 0?n:e;for(let s=0;s"u"?n:s}if(typeof t=="string")return sd(e,t,n);if(Array.isArray(t))return B_(e,t,n);if(typeof t!="function")return n;const r=t(e,n);return typeof r>"u"?n:r}function H_(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return Array.from({length:e},(n,r)=>t+r)}function me(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"px";if(e==null||e==="")return;const n=Number(e);return isNaN(n)?String(e):isFinite(n)?`${n}${t}`:void 0}function id(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function zp(e){let t;return e!==null&&typeof e=="object"&&((t=Object.getPrototypeOf(e))===Object.prototype||t===null)}function Mf(e){if(e&&"$el"in e){const t=e.$el;return(t==null?void 0:t.nodeType)===Node.TEXT_NODE?t.nextElementSibling:t}return e}const U3=Object.freeze({enter:"Enter",tab:"Tab",delete:"Delete",esc:"Escape",space:"Space",up:"ArrowUp",down:"ArrowDown",left:"ArrowLeft",right:"ArrowRight",end:"End",home:"Home",del:"Delete",backspace:"Backspace",insert:"Insert",pageup:"PageUp",pagedown:"PageDown",shift:"Shift"});function W3(e){return Object.keys(e)}function nu(e,t){return t.every(n=>e.hasOwnProperty(n))}function Pf(e,t){const n={};for(const r of t)Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function qp(e,t,n){const r=Object.create(null),s=Object.create(null);for(const i in e)t.some(o=>o instanceof RegExp?o.test(i):o===i)?r[i]=e[i]:s[i]=e[i];return[r,s]}function As(e,t){const n={...e};return t.forEach(r=>delete n[r]),n}const V_=/^on[^a-z]/,U_=e=>V_.test(e),jC=["onAfterscriptexecute","onAnimationcancel","onAnimationend","onAnimationiteration","onAnimationstart","onAuxclick","onBeforeinput","onBeforescriptexecute","onChange","onClick","onCompositionend","onCompositionstart","onCompositionupdate","onContextmenu","onCopy","onCut","onDblclick","onFocusin","onFocusout","onFullscreenchange","onFullscreenerror","onGesturechange","onGestureend","onGesturestart","onGotpointercapture","onInput","onKeydown","onKeypress","onKeyup","onLostpointercapture","onMousedown","onMousemove","onMouseout","onMouseover","onMouseup","onMousewheel","onPaste","onPointercancel","onPointerdown","onPointerenter","onPointerleave","onPointermove","onPointerout","onPointerover","onPointerup","onReset","onSelect","onSubmit","onTouchcancel","onTouchend","onTouchmove","onTouchstart","onTransitioncancel","onTransitionend","onTransitionrun","onTransitionstart","onWheel"],zC=["ArrowUp","ArrowDown","ArrowRight","ArrowLeft","Enter","Escape","Tab"," "];function j3(e){return e.isComposing&&zC.includes(e.key)}function z3(e){const[t,n]=qp(e,[V_]),r=As(t,jC),[s,i]=qp(n,["class","style","id","inert",/^data-/]);return Object.assign(s,t),Object.assign(i,r),[s,i]}function Of(e){return e==null?[]:Array.isArray(e)?e:[e]}function q3(e,t){let n=0;const r=function(){for(var s=arguments.length,i=new Array(s),o=0;oe(...i),Ut(t))};return r.clear=()=>{clearTimeout(n)},r.immediate=e,r}function or(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1;return Math.max(t,Math.min(n,e))}function Gp(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0";return e+n.repeat(Math.max(0,t-e.length))}function Kp(e,t){return(arguments.length>2&&arguments[2]!==void 0?arguments[2]:"0").repeat(Math.max(0,t-e.length))+e}function qC(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:1;const n=[];let r=0;for(;r1&&arguments[1]!==void 0?arguments[1]:1e3;if(e=t&&r0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;const r={};for(const s in e)r[s]=e[s];for(const s in t){const i=e[s],o=t[s];if(zp(i)&&zp(o)){r[s]=Rt(i,o,n);continue}if(n&&Array.isArray(i)&&Array.isArray(o)){r[s]=n(i,o);continue}r[s]=o}return r}function W_(e){return e.map(t=>t.type===Ze?W_(t.children):t).flat()}function ms(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(ms.cache.has(e))return ms.cache.get(e);const t=e.replace(/[^a-z]/gi,"-").replace(/\B([A-Z])/g,"-$1").toLowerCase();return ms.cache.set(e,t),t}ms.cache=new Map;function Zs(e,t){if(!t||typeof t!="object")return[];if(Array.isArray(t))return t.map(n=>Zs(e,n)).flat(1);if(t.suspense)return Zs(e,t.ssContent);if(Array.isArray(t.children))return t.children.map(n=>Zs(e,n)).flat(1);if(t.component){if(Object.getOwnPropertyDescriptor(t.component.provides,e))return[t.component];if(t.component.subTree)return Zs(e,t.component.subTree).flat(1)}return[]}var $s=new WeakMap,ts=new WeakMap;class GC{constructor(t){Wp(this,$s,[]),Wp(this,ts,0),this.size=t}get isFull(){return Wn($s,this).length===this.size}push(t){Wn($s,this)[Wn(ts,this)]=t,jp(ts,this,(Wn(ts,this)+1)%this.size)}values(){return Wn($s,this).slice(Wn(ts,this)).concat(Wn($s,this).slice(0,Wn(ts,this)))}clear(){Wn($s,this).length=0,jp(ts,this,0)}}function Lf(e){const t=pt({});hn(()=>{const r=e();for(const s in r)t[s]=r[s]},{flush:"sync"});const n={};for(const r in t)n[r]=ee(()=>t[r]);return n}function Ic(e,t){return e.includes(t)}function j_(e){return e[2].toLowerCase()+e.slice(3)}const vo=()=>[Function,Array];function Yp(e,t){return t="on"+Oi(t),!!(e[t]||e[`${t}Once`]||e[`${t}Capture`]||e[`${t}OnceCapture`]||e[`${t}CaptureOnce`])}function K3(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r1&&arguments[1]!==void 0?arguments[1]:!0;const n=["button","[href]",'input:not([type="hidden"])',"select","textarea","details:not(:has(> summary))","details > summary","[tabindex]",'[contenteditable]:not([contenteditable="false"])',"audio[controls]","video[controls]"].map(s=>`${s}${t?':not([tabindex="-1"])':""}:not([disabled], [inert])`).join(", ");let r;try{r=[...e.querySelectorAll(n)]}catch{return[]}return r.filter(s=>!s.closest("[inert]")).filter(s=>!!s.offsetParent||s.getClientRects().length>0).filter(s=>{var i,o;return!((i=s.parentElement)!=null&&i.closest("details:not([open])"))||s.tagName==="SUMMARY"&&((o=s.parentElement)==null?void 0:o.tagName)==="DETAILS"})}function KC(e,t,n){let r,s=e.indexOf(document.activeElement);const i=t==="next"?1:-1;do s+=i,r=e[s];while((!r||r.offsetParent==null||!((n==null?void 0:n(r))??!0))&&s=0);return r}function z_(e,t){var r,s,i,o;const n=yo(e);if(t==null)(e===document.activeElement||!e.contains(document.activeElement))&&((r=n[0])==null||r.focus());else if(t==="first")(s=n[0])==null||s.focus();else if(t==="last")(i=n.at(-1))==null||i.focus();else if(typeof t=="number")(o=n[t])==null||o.focus();else{const a=KC(n,t);a?a.focus():z_(e,t==="next"?"first":"last")}}function Y3(e){return e==null||typeof e=="string"&&e.trim()===""}function X3(){}function YC(e,t){if(!(et&&typeof CSS<"u"&&typeof CSS.supports<"u"&&CSS.supports(`selector(${t})`)))return null;try{return!!e&&e.matches(t)}catch{return null}}function XC(e){return e.some(t=>mi(t)?t.type===_t?!1:t.type!==Ze||XC(t.children):!0)?e:null}function JC(e,t){if(!et||e===0)return t(),()=>{};const n=window.setTimeout(t,e);return()=>window.clearTimeout(n)}function J3(e,t){const n=e.clientX,r=e.clientY,s=t.getBoundingClientRect(),i=s.left,o=s.top,a=s.right,c=s.bottom;return n>=i&&n<=a&&r>=o&&r<=c}function od(){const e=be(),t=n=>{e.value=n};return Object.defineProperty(t,"value",{enumerable:!0,get:()=>e.value,set:n=>e.value=n}),Object.defineProperty(t,"el",{enumerable:!0,get:()=>Mf(e.value)}),t}function Z3(e){const t=e.key.length===1,n=!e.ctrlKey&&!e.metaKey&&!e.altKey;return t&&n}function Ts(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"||typeof e=="bigint"}function Q3(e){return"\\^$*+?.()|{}[]".includes(e)?`\\${e}`:e}function e4(e){const t={};for(const n in e)t[$t(n)]=e[n];return t}function ZC(e){const t=["checked","disabled"];return Object.fromEntries(Object.entries(e).filter(n=>{let[r,s]=n;return t.includes(r)?!!s:s!==void 0}))}const q_=["top","bottom"],QC=["start","end","left","right"];function ad(e,t){let[n,r]=e.split(" ");return r||(r=Ic(q_,n)?"start":Ic(QC,n)?"top":"center"),{side:Xp(n,t),align:Xp(r,t)}}function Xp(e,t){return e==="start"?t?"right":"left":e==="end"?t?"left":"right":e}function ru(e){return{side:{center:"center",top:"bottom",bottom:"top",left:"right",right:"left"}[e.side],align:e.align}}function su(e){return{side:e.side,align:{center:"center",top:"bottom",bottom:"top",left:"right",right:"left"}[e.align]}}function Jp(e){return{side:e.align,align:e.side}}function Zp(e){return Ic(q_,e.side)?"y":"x"}class ln{constructor(t){const n=document.body.currentCSSZoom??1,r=t instanceof Element,s=r?1+(1-n)/n:1,{x:i,y:o,width:a,height:c}=r?t.getBoundingClientRect():t;this.x=i*s,this.y=o*s,this.width=a*s,this.height=c*s}get top(){return this.y}get bottom(){return this.y+this.height}get left(){return this.x}get right(){return this.x+this.width}}function Qp(e,t){return{x:{before:Math.max(0,t.left-e.left),after:Math.max(0,e.right-t.right)},y:{before:Math.max(0,t.top-e.top),after:Math.max(0,e.bottom-t.bottom)}}}function G_(e){if(Array.isArray(e)){const t=document.body.currentCSSZoom??1,n=1+(1-t)/t;return new ln({x:e[0]*n,y:e[1]*n,width:0*n,height:0*n})}else return new ln(e)}function eT(e){if(e===document.documentElement)if(visualViewport){const t=document.body.currentCSSZoom??1;return new ln({x:visualViewport.scale>1?0:visualViewport.offsetLeft,y:visualViewport.scale>1?0:visualViewport.offsetTop,width:visualViewport.width*visualViewport.scale/t,height:visualViewport.height*visualViewport.scale/t})}else return new ln({x:0,y:0,width:document.documentElement.clientWidth,height:document.documentElement.clientHeight});else return new ln(e)}function K_(e){const t=new ln(e),n=getComputedStyle(e),r=n.transform;if(r){let s,i,o,a,c;if(r.startsWith("matrix3d("))s=r.slice(9,-1).split(/, /),i=Number(s[0]),o=Number(s[5]),a=Number(s[12]),c=Number(s[13]);else if(r.startsWith("matrix("))s=r.slice(7,-1).split(/, /),i=Number(s[0]),o=Number(s[3]),a=Number(s[4]),c=Number(s[5]);else return new ln(t);const l=n.transformOrigin,d=t.x-a-(1-i)*parseFloat(l),u=t.y-c-(1-o)*parseFloat(l.slice(l.indexOf(" ")+1)),f=i?t.width/i:e.offsetWidth+1,h=o?t.height/o:e.offsetHeight+1;return new ln({x:d,y:u,width:f,height:h})}else return new ln(t)}function ss(e,t,n){if(typeof e.animate>"u")return{finished:Promise.resolve()};let r;try{r=e.animate(t,n)}catch{return{finished:Promise.resolve()}}return typeof r.finished>"u"&&(r.finished=new Promise(s=>{r.onfinish=()=>{s(r)}})),r}const Xa=new WeakMap;function tT(e,t){Object.keys(t).forEach(n=>{if(U_(n)){const r=j_(n),s=Xa.get(e);if(t[n]==null)s==null||s.forEach(i=>{const[o,a]=i;o===r&&(e.removeEventListener(r,a),s.delete(i))});else if(!s||![...s].some(i=>i[0]===r&&i[1]===t[n])){e.addEventListener(r,t[n]);const i=s||new Set;i.add([r,t[n]]),Xa.has(e)||Xa.set(e,i)}}else t[n]==null?e.removeAttribute(n):e.setAttribute(n,t[n])})}function nT(e,t){Object.keys(t).forEach(n=>{if(U_(n)){const r=j_(n),s=Xa.get(e);s==null||s.forEach(i=>{const[o,a]=i;o===r&&(e.removeEventListener(r,a),s.delete(i))})}else e.removeAttribute(n)})}const Bs=2.4,em=.2126729,tm=.7151522,nm=.072175,rT=.55,sT=.58,iT=.57,oT=.62,Ra=.03,rm=1.45,aT=5e-4,cT=1.25,lT=1.25,sm=.078,im=12.82051282051282,Aa=.06,om=.001;function am(e,t){const n=(e.r/255)**Bs,r=(e.g/255)**Bs,s=(e.b/255)**Bs,i=(t.r/255)**Bs,o=(t.g/255)**Bs,a=(t.b/255)**Bs;let c=n*em+r*tm+s*nm,l=i*em+o*tm+a*nm;if(c<=Ra&&(c+=(Ra-c)**rm),l<=Ra&&(l+=(Ra-l)**rm),Math.abs(l-c)c){const u=(l**rT-c**sT)*cT;d=u-om?0:u>-sm?u-u*im*Aa:u+Aa}return d*100}const xc=.20689655172413793,uT=e=>e>xc**3?Math.cbrt(e):e/(3*xc**2)+4/29,dT=e=>e>xc?e**3:3*xc**2*(e-4/29);function Y_(e){const t=uT,n=t(e[1]);return[116*n-16,500*(t(e[0]/.95047)-n),200*(n-t(e[2]/1.08883))]}function X_(e){const t=dT,n=(e[0]+16)/116;return[t(n+e[1]/500)*.95047,t(n),t(n-e[2]/200)*1.08883]}const fT=[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]],hT=e=>e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055,pT=[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],mT=e=>e<=.04045?e/12.92:((e+.055)/1.055)**2.4;function J_(e){const t=Array(3),n=hT,r=fT;for(let s=0;s<3;++s)t[s]=Math.round(or(n(r[s][0]*e[0]+r[s][1]*e[1]+r[s][2]*e[2]))*255);return{r:t[0],g:t[1],b:t[2]}}function Nf(e){let{r:t,g:n,b:r}=e;const s=[0,0,0],i=mT,o=pT;t=i(t/255),n=i(n/255),r=i(r/255);for(let a=0;a<3;++a)s[a]=o[a][0]*t+o[a][1]*n+o[a][2]*r;return s}function cd(e){return!!e&&/^(#|var\(--|(rgb|hsl)a?\()/.test(e)}function gT(e){return cd(e)&&!/^((rgb|hsl)a?\()?var\(--/.test(e)}const cm=/^(?(?:rgb|hsl)a?)\((?.+)\)/,vT={rgb:(e,t,n,r)=>({r:e,g:t,b:n,a:r}),rgba:(e,t,n,r)=>({r:e,g:t,b:n,a:r}),hsl:(e,t,n,r)=>lm({h:e,s:t,l:n,a:r}),hsla:(e,t,n,r)=>lm({h:e,s:t,l:n,a:r}),hsv:(e,t,n,r)=>Lo({h:e,s:t,v:n,a:r}),hsva:(e,t,n,r)=>Lo({h:e,s:t,v:n,a:r})};function Fn(e){if(typeof e=="number")return{r:(e&16711680)>>16,g:(e&65280)>>8,b:e&255};if(typeof e=="string"&&cm.test(e)){const{groups:t}=e.match(cm),{fn:n,values:r}=t,s=r.split(/,\s*|\s*\/\s*|\s+/).map((i,o)=>i.endsWith("%")||o>0&&o<3&&["hsl","hsla","hsv","hsva"].includes(n)?parseFloat(i)/100:parseFloat(i));return vT[n](...s)}else if(typeof e=="string"){let t=e.startsWith("#")?e.slice(1):e;return[3,4].includes(t.length)?t=t.split("").map(n=>n+n).join(""):[6,8].includes(t.length),_T(t)}else if(typeof e=="object"){if(nu(e,["r","g","b"]))return e;if(nu(e,["h","s","l"]))return Lo(Z_(e));if(nu(e,["h","s","v"]))return Lo(e)}throw new TypeError(`Invalid color: ${e==null?e:String(e)||e.constructor.name} +Expected #hex, #hexa, rgb(), rgba(), hsl(), hsla(), object or number`)}function Lo(e){const{h:t,s:n,v:r,a:s}=e,i=a=>{const c=(a+t/60)%6;return r-r*n*Math.max(Math.min(c,4-c,1),0)},o=[i(5),i(3),i(1)].map(a=>Math.round(a*255));return{r:o[0],g:o[1],b:o[2],a:s}}function lm(e){return Lo(Z_(e))}function Z_(e){const{h:t,s:n,l:r,a:s}=e,i=r+n*Math.min(r,1-r),o=i===0?0:2-2*r/i;return{h:t,s:o,v:i,a:s}}function Ma(e){const t=Math.round(e).toString(16);return("00".substr(0,2-t.length)+t).toUpperCase()}function yT(e){let{r:t,g:n,b:r,a:s}=e;return`#${[Ma(t),Ma(n),Ma(r),s!==void 0?Ma(Math.round(s*255)):""].join("")}`}function _T(e){e=bT(e);let[t,n,r,s]=qC(e,2).map(i=>parseInt(i,16));return s=s===void 0?s:s/255,{r:t,g:n,b:r,a:s}}function bT(e){return e.startsWith("#")&&(e=e.slice(1)),e=e.replace(/([^0-9a-f])/gi,"F"),(e.length===3||e.length===4)&&(e=e.split("").map(t=>t+t).join("")),e.length!==6&&(e=Gp(Gp(e,6),8,"F")),e}function ST(e,t){const n=Y_(Nf(e));return n[0]=n[0]+t*10,J_(X_(n))}function ET(e,t){const n=Y_(Nf(e));return n[0]=n[0]-t*10,J_(X_(n))}function wT(e){const t=Fn(e);return Nf(t)[1]}function Q_(e){const t=Math.abs(am(Fn(0),Fn(e)));return Math.abs(am(Fn(16777215),Fn(e)))>Math.min(t,50)?"#fff":"#000"}function le(e,t){return n=>Object.keys(e).reduce((r,s)=>{const o=typeof e[s]=="object"&&e[s]!=null&&!Array.isArray(e[s])?e[s]:{type:e[s]};return n&&s in n?r[s]={...o,default:n[s]}:r[s]=o,t&&!r[s].source&&(r[s].source=t),r},{})}const ct=le({class:[String,Array,Object],style:{type:[String,Array,Object],default:null}},"component");function mt(e,t){const n=Li();if(!n)throw new Error(`[Vuetify] ${e} must be called from inside a setup function`);return n}function qr(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"composables";const t=mt(e).type;return ms((t==null?void 0:t.aliasName)||(t==null?void 0:t.name))}function CT(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:mt("injectSelf");const{provides:n}=t;if(n&&e in n)return n[e]}const vi=Symbol.for("vuetify:defaults");function TT(e){return we(e)}function Df(){const e=Oe(vi);if(!e)throw new Error("[Vuetify] Could not find defaults instance");return e}function vl(e,t){const n=Df(),r=we(e),s=j(()=>{if(Ut(t==null?void 0:t.disabled))return n.value;const o=Ut(t==null?void 0:t.scoped),a=Ut(t==null?void 0:t.reset),c=Ut(t==null?void 0:t.root);if(r.value==null&&!(o||a||c))return n.value;let l=Rt(r.value,{prev:n.value});if(o)return l;if(a||c){const d=Number(a||1/0);for(let u=0;u<=d&&!(!l||!("prev"in l));u++)l=l.prev;return l&&typeof c=="string"&&c in l&&(l=Rt(Rt(l,{prev:l}),l[c])),l}return l.prev?Rt(l.prev,l):l});return At(vi,s),s}function kT(e,t){return e.props&&(typeof e.props[t]<"u"||typeof e.props[ms(t)]<"u")}function IT(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Df();const r=mt("useDefaults");if(t=t??r.type.name??r.type.__name,!t)throw new Error("[Vuetify] Could not determine component name");const s=j(()=>{var c;return(c=n.value)==null?void 0:c[e._as??t]}),i=new Proxy(e,{get(c,l){var h,p,m,v;const d=Reflect.get(c,l);if(l==="class"||l==="style")return[(h=s.value)==null?void 0:h[l],d].filter(g=>g!=null);if(kT(r.vnode,l))return d;const u=(p=s.value)==null?void 0:p[l];if(u!==void 0)return u;const f=(v=(m=n.value)==null?void 0:m.global)==null?void 0:v[l];return f!==void 0?f:d}}),o=be();hn(()=>{if(s.value){const c=Object.entries(s.value).filter(l=>{let[d]=l;return d.startsWith(d[0].toUpperCase())});o.value=c.length?Object.fromEntries(c):void 0}else o.value=void 0});function a(){const c=CT(vi,r);At(vi,j(()=>o.value?Rt((c==null?void 0:c.value)??{},o.value):c==null?void 0:c.value))}return{props:i,provideSubDefaults:a}}function Ni(e){if(e._setup=e._setup??e.setup,!e.name)return e;if(e._setup){e.props=le(e.props??{},e.name)();const t=Object.keys(e.props).filter(n=>n!=="class"&&n!=="style");e.filterProps=function(r){return Pf(r,t)},e.props._as=String,e.setup=function(r,s){const i=Df();if(!i.value)return e._setup(r,s);const{props:o,provideSubDefaults:a}=IT(r,r._as??e.name,i),c=e._setup(o,s);return a(),c}}return e}function De(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0;return t=>(e?Ni:dl)(t)}function t4(e,t){return t.props=e,t}function Ff(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"div",n=arguments.length>2?arguments[2]:void 0;return De()({name:n??Oi($t(e.replace(/__/g,"-"))),props:{tag:{type:String,default:t},...ct()},setup(r,s){let{slots:i}=s;return()=>{var o;return zr(r.tag,{class:[e,r.class],style:r.style},(o=i.default)==null?void 0:o.call(i))}}})}function xT(e,t,n,r){if(!n||Ts(e)||Ts(t))return;const s=n.get(e);if(s)s.set(t,r);else{const i=new WeakMap;i.set(t,r),n.set(e,i)}}function RT(e,t,n){var i,o;if(!n||Ts(e)||Ts(t))return null;const r=(i=n.get(e))==null?void 0:i.get(t);if(typeof r=="boolean")return r;const s=(o=n.get(t))==null?void 0:o.get(e);return typeof s=="boolean"?s:null}function gs(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:new WeakMap;if(e===t)return!0;if(e instanceof Date&&t instanceof Date&&e.getTime()!==t.getTime()||e!==Object(e)||t!==Object(t))return!1;const r=Object.keys(e);if(r.length!==Object.keys(t).length)return!1;const s=RT(e,t,n);return s||(xT(e,t,n,!0),r.every(i=>gs(e[i],t[i],n)))}function eb(e){if(typeof e.getRootNode!="function"){for(;e.parentNode;)e=e.parentNode;return e!==document?null:document}const t=e.getRootNode();return t!==document&&t.getRootNode({composed:!0})!==document?null:t}const ld="cubic-bezier(0.4, 0, 0.2, 1)",um="cubic-bezier(0.0, 0, 0.2, 1)",dm="cubic-bezier(0.4, 0, 1, 1)",AT={linear:e=>e,easeInQuad:e=>e**2,easeOutQuad:e=>e*(2-e),easeInOutQuad:e=>e<.5?2*e**2:-1+(4-2*e)*e,easeInCubic:e=>e**3,easeOutCubic:e=>--e**3+1,easeInOutCubic:e=>e<.5?4*e**3:(e-1)*(2*e-2)*(2*e-2)+1,easeInQuart:e=>e**4,easeOutQuart:e=>1- --e**4,easeInOutQuart:e=>e<.5?8*e**4:1-8*--e**4,easeInQuint:e=>e**5,easeOutQuint:e=>1+--e**5,easeInOutQuint:e=>e<.5?16*e**5:1+16*--e**5,instant:e=>1};function MT(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;for(;e;){if(t?PT(e):$f(e))return e;e=e.parentElement}return document.scrollingElement}function Rc(e,t){const n=[];if(t&&e&&!t.contains(e))return n;for(;e&&($f(e)&&n.push(e),e!==t);)e=e.parentElement;return n}function $f(e){if(!e||e.nodeType!==Node.ELEMENT_NODE)return!1;const t=window.getComputedStyle(e),n=t.overflowY==="scroll"||t.overflowY==="auto"&&e.scrollHeight>e.clientHeight,r=t.overflowX==="scroll"||t.overflowX==="auto"&&e.scrollWidth>e.clientWidth;return n||r}function PT(e){if(!e||e.nodeType!==Node.ELEMENT_NODE)return!1;const t=window.getComputedStyle(e);return["scroll","auto"].includes(t.overflowY)}function OT(e){for(;e;){if(window.getComputedStyle(e).position==="fixed")return!0;e=e.offsetParent}return!1}function tt(e){const t=mt("useRender");t.render=e}function LT(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{leading:!0,trailing:!0},r=0,s=0,i=!1,o=0;function a(){clearTimeout(r),i=!1,o=0}const c=function(){for(var l=arguments.length,d=new Array(l),u=0;u=t?p():n.trailing&&(r=setTimeout(p,t-h)):(i=!0,n.leading&&p())};return c.clear=a,c.immediate=e,c}const Et=[String,Function,Object,Array],ud=Symbol.for("vuetify:icons"),yl=le({icon:{type:Et},tag:{type:[String,Object,Function],required:!0}},"icon"),fm=De()({name:"VComponentIcon",props:yl(),setup(e,t){let{slots:n}=t;return()=>{const r=e.icon;return B(e.tag,null,{default:()=>{var s;return[e.icon?B(r,null,null):(s=n.default)==null?void 0:s.call(n)]}})}}}),tb=Ni({name:"VSvgIcon",inheritAttrs:!1,props:yl(),setup(e,t){let{attrs:n}=t;return()=>B(e.tag,Qe(n,{style:null}),{default:()=>[se("svg",{class:"v-icon__svg",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",role:"img","aria-hidden":"true"},[Array.isArray(e.icon)?e.icon.map(r=>Array.isArray(r)?se("path",{d:r[0],"fill-opacity":r[1]},null):se("path",{d:r},null)):se("path",{d:e.icon},null)])]})}});Ni({name:"VLigatureIcon",props:yl(),setup(e){return()=>B(e.tag,null,{default:()=>[e.icon]})}});const nb=Ni({name:"VClassIcon",props:yl(),setup(e){return()=>B(e.tag,{class:Me(e.icon)},null)}}),NT=e=>{const t=Oe(ud);if(!t)throw new Error("Missing Vuetify Icons provide!");return{iconData:j(()=>{var c;const r=bt(e);if(!r)return{component:fm};let s=r;if(typeof s=="string"&&(s=s.trim(),s.startsWith("$")&&(s=(c=t.aliases)==null?void 0:c[s.slice(1)])),Array.isArray(s))return{component:tb,icon:s};if(typeof s!="string")return{component:fm,icon:s};const i=Object.keys(t.sets).find(l=>typeof s=="string"&&s.startsWith(`${l}:`)),o=i?s.slice(i.length+1):s;return{component:t.sets[i??t.defaultSet].component,icon:o}})}},DT={collapse:"mdi-chevron-up",complete:"mdi-check",cancel:"mdi-close-circle",close:"mdi-close",delete:"mdi-close-circle",clear:"mdi-close-circle",success:"mdi-check-circle",info:"mdi-information",warning:"mdi-alert-circle",error:"mdi-close-circle",prev:"mdi-chevron-left",next:"mdi-chevron-right",checkboxOn:"mdi-checkbox-marked",checkboxOff:"mdi-checkbox-blank-outline",checkboxIndeterminate:"mdi-minus-box",delimiter:"mdi-circle",sortAsc:"mdi-arrow-up",sortDesc:"mdi-arrow-down",expand:"mdi-chevron-down",menu:"mdi-menu",subgroup:"mdi-menu-down",dropdown:"mdi-menu-down",radioOn:"mdi-radiobox-marked",radioOff:"mdi-radiobox-blank",edit:"mdi-pencil",ratingEmpty:"mdi-star-outline",ratingFull:"mdi-star",ratingHalf:"mdi-star-half-full",loading:"mdi-cached",first:"mdi-page-first",last:"mdi-page-last",unfold:"mdi-unfold-more-horizontal",file:"mdi-paperclip",plus:"mdi-plus",minus:"mdi-minus",calendar:"mdi-calendar",treeviewCollapse:"mdi-menu-down",treeviewExpand:"mdi-menu-right",tableGroupCollapse:"mdi-chevron-down",tableGroupExpand:"mdi-chevron-right",eyeDropper:"mdi-eyedropper",upload:"mdi-cloud-upload",color:"mdi-palette",command:"mdi-apple-keyboard-command",ctrl:"mdi-apple-keyboard-control",space:"mdi-keyboard-space",shift:"mdi-apple-keyboard-shift",alt:"mdi-apple-keyboard-option",enter:"mdi-keyboard-return",arrowup:"mdi-arrow-up",arrowdown:"mdi-arrow-down",arrowleft:"mdi-arrow-left",arrowright:"mdi-arrow-right",backspace:"mdi-backspace",play:"mdi-play",pause:"mdi-pause",fullscreen:"mdi-fullscreen",fullscreenExit:"mdi-fullscreen-exit",volumeHigh:"mdi-volume-high",volumeMedium:"mdi-volume-medium",volumeLow:"mdi-volume-low",volumeOff:"mdi-volume-variant-off"},FT={component:e=>zr(nb,{...e,class:"mdi"})};function $T(){return{svg:{component:tb},class:{component:nb}}}function BT(e){const t=$T(),n=(e==null?void 0:e.defaultSet)??"mdi";return n==="mdi"&&!t.mdi&&(t.mdi=FT),Rt({defaultSet:n,sets:t,aliases:{...DT,vuetify:["M8.2241 14.2009L12 21L22 3H14.4459L8.2241 14.2009Z",["M7.26303 12.4733L7.00113 12L2 3H12.5261C12.5261 3 12.5261 3 12.5261 3L7.26303 12.4733Z",.6]],"vuetify-outline":"svg:M7.26 12.47 12.53 3H2L7.26 12.47ZM14.45 3 8.22 14.2 12 21 22 3H14.45ZM18.6 5 12 16.88 10.51 14.2 15.62 5ZM7.26 8.35 5.4 5H9.13L7.26 8.35Z","vuetify-play":["m6.376 13.184-4.11-7.192C1.505 4.66 2.467 3 4.003 3h8.532l-.953 1.576-.006.01-.396.677c-.429.732-.214 1.507.194 2.015.404.503 1.092.878 1.869.806a3.72 3.72 0 0 1 1.005.022c.276.053.434.143.523.237.138.146.38.635-.25 2.09-.893 1.63-1.553 1.722-1.847 1.677-.213-.033-.468-.158-.756-.406a4.95 4.95 0 0 1-.8-.927c-.39-.564-1.04-.84-1.66-.846-.625-.006-1.316.27-1.693.921l-.478.826-.911 1.506Z",["M9.093 11.552c.046-.079.144-.15.32-.148a.53.53 0 0 1 .43.207c.285.414.636.847 1.046 1.2.405.35.914.662 1.516.754 1.334.205 2.502-.698 3.48-2.495l.014-.028.013-.03c.687-1.574.774-2.852-.005-3.675-.37-.391-.861-.586-1.333-.676a5.243 5.243 0 0 0-1.447-.044c-.173.016-.393-.073-.54-.257-.145-.18-.127-.316-.082-.392l.393-.672L14.287 3h5.71c1.536 0 2.499 1.659 1.737 2.992l-7.997 13.996c-.768 1.344-2.706 1.344-3.473 0l-3.037-5.314 1.377-2.278.004-.006.004-.007.481-.831Z",.6]]}},e)}function Di(e,t){let n;function r(){n=Es(),n.run(()=>t.length?t(()=>{n==null||n.stop(),r()}):t())}Se(e,s=>{s&&!n?r():s||(n==null||n.stop(),n=void 0)},{immediate:!0}),Ct(()=>{n==null||n.stop()})}function Zn(e,t,n){let r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:u=>u,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:u=>u;const i=mt("useProxiedModel"),o=we(e[t]!==void 0?e[t]:n),a=ms(t),l=j(a!==t?()=>{var u,f,h,p;return e[t],!!(((u=i.vnode.props)!=null&&u.hasOwnProperty(t)||(f=i.vnode.props)!=null&&f.hasOwnProperty(a))&&((h=i.vnode.props)!=null&&h.hasOwnProperty(`onUpdate:${t}`)||(p=i.vnode.props)!=null&&p.hasOwnProperty(`onUpdate:${a}`)))}:()=>{var u,f;return e[t],!!((u=i.vnode.props)!=null&&u.hasOwnProperty(t)&&((f=i.vnode.props)!=null&&f.hasOwnProperty(`onUpdate:${t}`)))});Di(()=>!l.value,()=>{Se(()=>e[t],u=>{o.value=u})});const d=j({get(){const u=e[t];return r(l.value?u:o.value)},set(u){const f=s(u),h=de(l.value?e[t]:o.value);h===f||r(h)===u||(o.value=f,i==null||i.emit(`update:${t}`,f))}});return Object.defineProperty(d,"externalValue",{get:()=>l.value?e[t]:o.value}),d}const HT={badge:"Badge",open:"Open",close:"Close",dismiss:"Dismiss",confirmEdit:{ok:"OK",cancel:"Cancel"},dataIterator:{noResultsText:"No matching records found",loadingText:"Loading items..."},dataTable:{itemsPerPageText:"Rows per page:",ariaLabel:{sortDescending:"Sorted descending.",sortAscending:"Sorted ascending.",sortNone:"Not sorted.",activateNone:"Activate to remove sorting.",activateDescending:"Activate to sort descending.",activateAscending:"Activate to sort ascending."},sortBy:"Sort by"},dataFooter:{itemsPerPageText:"Items per page:",itemsPerPageAll:"All",nextPage:"Next page",prevPage:"Previous page",firstPage:"First page",lastPage:"Last page",pageText:"{0}-{1} of {2}"},dateRangeInput:{divider:"to"},datePicker:{itemsSelected:"{0} selected",range:{title:"Select dates",header:"Enter dates"},title:"Select date",header:"Enter date",input:{placeholder:"Enter date"},ariaLabel:{previousMonth:"Previous month",nextMonth:"Next month",selectYear:"Select year",previousYear:"Previous year",nextYear:"Next year",selectMonth:"Select month",selectDate:"{0}",currentDate:"Today, {0}"}},noDataText:"No data available",carousel:{prev:"Previous visual",next:"Next visual",ariaLabel:{delimiter:"Carousel slide {0} of {1}"}},calendar:{moreEvents:"{0} more",today:"Today"},input:{clear:"Clear {0}",prependAction:"{0} prepended action",appendAction:"{0} appended action",otp:"Please enter OTP character {0}"},fileInput:{counter:"{0} files",counterSize:"{0} files ({1} in total)"},fileUpload:{title:"Drag and drop files here",divider:"or",browse:"Browse Files"},timePicker:{am:"AM",pm:"PM",title:"Select Time",hour:"Hour",minute:"Minute",second:"Second"},pagination:{ariaLabel:{root:"Pagination Navigation",next:"Next page",previous:"Previous page",page:"Go to page {0}",currentPage:"Page {0}, Current page",first:"First page",last:"Last page"}},stepper:{next:"Next",prev:"Previous"},rating:{ariaLabel:{item:"Rating {0} of {1}"}},loading:"Loading...",infiniteScroll:{loadMore:"Load more",empty:"No more"},rules:{required:"This field is required",email:"Please enter a valid email",number:"This field can only contain numbers",integer:"This field can only contain integer values",capital:"This field can only contain uppercase letters",maxLength:"You must enter a maximum of {0} characters",minLength:"You must enter a minimum of {0} characters",strictLength:"The length of the entered field is invalid",exclude:"The {0} character is not allowed",notEmpty:"Please choose at least one value",pattern:"Invalid format"},hotkey:{then:"then",ctrl:"Ctrl",command:"Command",space:"Space",shift:"Shift",alt:"Alt",enter:"Enter",escape:"Escape",upArrow:"Up Arrow",downArrow:"Down Arrow",leftArrow:"Left Arrow",rightArrow:"Right Arrow",backspace:"Backspace",option:"Option",plus:"plus",shortcut:"Keyboard shortcut: {0}",or:"or"},video:{play:"Play",pause:"Pause",seek:"Seek",volume:"Volume",showVolume:"Show volume control",mute:"Mute",unmute:"Unmute",enterFullscreen:"Full screen",exitFullscreen:"Exit full screen"},colorPicker:{ariaLabel:{eyedropper:"Select color with eyedropper",hueSlider:"Hue",alphaSlider:"Alpha",redInput:"Red value",greenInput:"Green value",blueInput:"Blue value",alphaInput:"Alpha value",hueInput:"Hue value",saturationInput:"Saturation value",lightnessInput:"Lightness value",hexInput:"HEX value",hexaInput:"HEX with alpha value",changeFormat:"Change color format"}}},hm="$vuetify.",pm=(e,t)=>e.replace(/\{(\d+)\}/g,(n,r)=>String(t[Number(r)])),rb=(e,t,n)=>function(r){for(var s=arguments.length,i=new Array(s>1?s-1:0),o=1;onew Intl.NumberFormat([e.value,t.value],r).format(n)}function sb(e,t){return Bf(e,t)(.1).includes(",")?",":"."}function iu(e,t,n){const r=Zn(e,t,e[t]??n.value);return r.value=e[t]??n.value,Se(n,s=>{e[t]==null&&(r.value=n.value)}),r}function ib(e){return t=>{const n=iu(t,"locale",e.current),r=iu(t,"fallback",e.fallback),s=iu(t,"messages",e.messages);return{name:"vuetify",current:n,fallback:r,messages:s,decimalSeparator:ee(()=>sb(n,r)),t:rb(n,r,s),n:Bf(n,r),provide:ib({current:n,fallback:r,messages:s})}}}function VT(e){const t=be((e==null?void 0:e.locale)??"en"),n=be((e==null?void 0:e.fallback)??"en"),r=we({en:HT,...e==null?void 0:e.messages});return{name:"vuetify",current:t,fallback:n,messages:r,decimalSeparator:ee(()=>(e==null?void 0:e.decimalSeparator)??sb(t,n)),t:rb(t,n,r),n:Bf(t,n),provide:ib({current:t,fallback:n,messages:r})}}const Ac=Symbol.for("vuetify:locale");function UT(e){return e.name!=null}function WT(e){const t=e!=null&&e.adapter&&UT(e==null?void 0:e.adapter)?e==null?void 0:e.adapter:VT(e),n=qT(t,e);return{...t,...n}}function jT(){const e=Oe(Ac);if(!e)throw new Error("[Vuetify] Could not find injected locale instance");return e}function zT(){return{af:!1,ar:!0,bg:!1,ca:!1,ckb:!1,cs:!1,de:!1,el:!1,en:!1,es:!1,et:!1,fa:!0,fi:!1,fr:!1,hr:!1,hu:!1,he:!0,id:!1,it:!1,ja:!1,km:!1,ko:!1,lv:!1,lt:!1,nl:!1,no:!1,pl:!1,pt:!1,ro:!1,ru:!1,sk:!1,sl:!1,srCyrl:!1,srLatn:!1,sv:!1,th:!1,tr:!1,az:!1,uk:!1,vi:!1,zhHans:!1,zhHant:!1}}function qT(e,t){const n=we((t==null?void 0:t.rtl)??zT()),r=j(()=>n.value[e.current.value]??!1);return{isRtl:r,rtl:n,rtlClasses:ee(()=>`v-locale--is-${r.value?"rtl":"ltr"}`)}}function na(){const e=Oe(Ac);if(!e)throw new Error("[Vuetify] Could not find injected rtl instance");return{isRtl:e.isRtl,rtlClasses:e.rtlClasses}}function ra(e){const t=e.slice(-2).toUpperCase();switch(!0){case e==="GB-alt-variant":return{firstDay:0,firstWeekSize:4};case e==="001":return{firstDay:1,firstWeekSize:1};case`AG AS BD BR BS BT BW BZ CA CO DM DO ET GT GU HK HN ID IL IN JM JP KE + KH KR LA MH MM MO MT MX MZ NI NP PA PE PH PK PR PY SA SG SV TH TT TW UM US + VE VI WS YE ZA ZW`.includes(t):return{firstDay:0,firstWeekSize:1};case`AI AL AM AR AU AZ BA BM BN BY CL CM CN CR CY EC GE HR KG KZ LB LK LV + MD ME MK MN MY NZ RO RS SI TJ TM TR UA UY UZ VN XK`.includes(t):return{firstDay:1,firstWeekSize:1};case`AD AN AT AX BE BG CH CZ DE DK EE ES FI FJ FO FR GB GF GP GR HU IE IS + IT LI LT LU MC MQ NL NO PL RE RU SE SK SM VA`.includes(t):return{firstDay:1,firstWeekSize:4};case"AE AF BH DJ DZ EG IQ IR JO KW LY OM QA SD SY".includes(t):return{firstDay:6,firstWeekSize:1};case t==="MV":return{firstDay:5,firstWeekSize:1};case t==="PT":return{firstDay:0,firstWeekSize:4};default:return null}}function GT(e,t,n){var d;const r=[];let s=[];const i=ob(e),o=ab(e),a=n??((d=ra(t))==null?void 0:d.firstDay)??0,c=(i.getDay()-a+7)%7,l=(o.getDay()-a+7)%7;for(let u=0;u0&&r.push(s),r}function _o(e,t,n){var i;let r=(n??((i=ra(t))==null?void 0:i.firstDay)??0)%7;[0,1,2,3,4,5,6].includes(r)||(r=0);const s=new Date(e);for(;s.getDay()!==r;)s.setDate(s.getDate()-1);return s}function KT(e,t){var s;const n=new Date(e),r=((((s=ra(t))==null?void 0:s.firstDay)??0)+6)%7;for(;n.getDay()!==r;)n.setDate(n.getDate()+1);return n}function ob(e){return new Date(e.getFullYear(),e.getMonth(),1)}function ab(e){return new Date(e.getFullYear(),e.getMonth()+1,0)}function YT(e){const t=e.split("-").map(Number);return new Date(t[0],t[1]-1,t[2])}const XT=/^([12]\d{3}-([1-9]|0[1-9]|1[0-2])-([1-9]|0[1-9]|[12]\d|3[01]))$/;function cb(e){if(e==null)return new Date;if(e instanceof Date)return e;if(typeof e=="string"){let t;if(XT.test(e))return YT(e);if(t=Date.parse(e),!isNaN(t))return new Date(t)}return null}const mm=new Date(2e3,0,2);function JT(e,t,n){var s;const r=t??((s=ra(e))==null?void 0:s.firstDay)??0;return H_(7).map(i=>{const o=new Date(mm);return o.setDate(mm.getDate()+r+i),new Intl.DateTimeFormat(e,{weekday:n??"narrow"}).format(o)})}function ZT(e,t,n,r){const s=cb(e)??new Date,i=r==null?void 0:r[t];if(typeof i=="function")return i(s,t,n);let o={};switch(t){case"fullDate":o={year:"numeric",month:"short",day:"numeric"};break;case"fullDateWithWeekday":o={weekday:"long",year:"numeric",month:"long",day:"numeric"};break;case"normalDate":const a=s.getDate(),c=new Intl.DateTimeFormat(n,{month:"long"}).format(s);return`${a} ${c}`;case"normalDateWithWeekday":o={weekday:"short",day:"numeric",month:"short"};break;case"shortDate":o={month:"short",day:"numeric"};break;case"year":o={year:"numeric"};break;case"month":o={month:"long"};break;case"monthShort":o={month:"short"};break;case"monthAndYear":o={month:"long",year:"numeric"};break;case"monthAndDate":o={month:"long",day:"numeric"};break;case"weekday":o={weekday:"long"};break;case"weekdayShort":o={weekday:"short"};break;case"dayOfMonth":return new Intl.NumberFormat(n).format(s.getDate());case"hours12h":o={hour:"numeric",hour12:!0};break;case"hours24h":o={hour:"numeric",hour12:!1};break;case"minutes":o={minute:"numeric"};break;case"seconds":o={second:"numeric"};break;case"fullTime":o={hour:"numeric",minute:"numeric"};break;case"fullTime12h":o={hour:"numeric",minute:"numeric",hour12:!0};break;case"fullTime24h":o={hour:"numeric",minute:"numeric",hour12:!1};break;case"fullDateTime":o={year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric"};break;case"fullDateTime12h":o={year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",hour12:!0};break;case"fullDateTime24h":o={year:"numeric",month:"short",day:"numeric",hour:"numeric",minute:"numeric",hour12:!1};break;case"keyboardDate":o={year:"numeric",month:"2-digit",day:"2-digit"};break;case"keyboardDateTime":return o={year:"numeric",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric"},new Intl.DateTimeFormat(n,o).format(s).replace(/, /g," ");case"keyboardDateTime12h":return o={year:"numeric",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric",hour12:!0},new Intl.DateTimeFormat(n,o).format(s).replace(/, /g," ");case"keyboardDateTime24h":return o={year:"numeric",month:"2-digit",day:"2-digit",hour:"numeric",minute:"numeric",hour12:!1},new Intl.DateTimeFormat(n,o).format(s).replace(/, /g," ");default:o=i??{timeZone:"UTC",timeZoneName:"short"}}return new Intl.DateTimeFormat(n,o).format(s)}function QT(e,t){const n=e.toJsDate(t),r=n.getFullYear(),s=Kp(String(n.getMonth()+1),2,"0"),i=Kp(String(n.getDate()),2,"0");return`${r}-${s}-${i}`}function ek(e){const[t,n,r]=e.split("-").map(Number);return new Date(t,n-1,r)}function tk(e,t){const n=new Date(e);return n.setMinutes(n.getMinutes()+t),n}function nk(e,t){const n=new Date(e);return n.setHours(n.getHours()+t),n}function vs(e,t){const n=new Date(e);return n.setDate(n.getDate()+t),n}function rk(e,t){const n=new Date(e);return n.setDate(n.getDate()+t*7),n}function sk(e,t){const n=new Date(e);return n.setDate(1),n.setMonth(n.getMonth()+t),n}function No(e){return e.getFullYear()}function ik(e){return e.getMonth()}function ok(e,t,n,r){const s=ra(t),i=n??(s==null?void 0:s.firstDay)??0,o=(s==null?void 0:s.firstWeekSize)??1;return r!==void 0?ak(e,t,i,r):ck(e,t,i,o)}function ak(e,t,n,r){const s=(7+r-n)%7,i=_o(e,t,n),o=vs(i,6);function a(f){return(7+new Date(f,0,1).getDay()-n)%7}let c=No(i);c=r&&a++;const c=new Date(a,0,1),l=o(a),d=l>=r?vs(c,l-7):vs(c,l);return 1+Pc(Hf(s),Do(d),"weeks")}function lk(e){return e.getDate()}function uk(e){return new Date(e.getFullYear(),e.getMonth()+1,1)}function dk(e){return new Date(e.getFullYear(),e.getMonth()-1,1)}function fk(e){return e.getHours()}function hk(e){return e.getMinutes()}function pk(e){return new Date(e.getFullYear(),0,1)}function mk(e){return new Date(e.getFullYear(),11,31)}function gk(e,t){return Mc(e,t[0])&&_k(e,t[1])}function vk(e){const t=new Date(e);return t instanceof Date&&!isNaN(t.getTime())}function Mc(e,t){return e.getTime()>t.getTime()}function yk(e,t){return Mc(Do(e),Do(t))}function _k(e,t){return e.getTime(){n.locale=e.locale[r]??r??n.locale}),n}function r4(){const e=Oe(lb);if(!e)throw new Error("[Vuetify] Could not find injected date options");const t=jT();return ub(e,t)}const s4=["sm","md","lg","xl","xxl"],dd=Symbol.for("vuetify:display"),ym={mobileBreakpoint:"lg",thresholds:{xs:0,sm:600,md:960,lg:1280,xl:1920,xxl:2560}},Mk=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:ym;return Rt(ym,e)};function _m(e){return et&&!e?window.innerWidth:typeof e=="object"&&e.clientWidth||0}function bm(e){return et&&!e?window.innerHeight:typeof e=="object"&&e.clientHeight||0}function Sm(e){const t=et&&!e?window.navigator.userAgent:"ssr";function n(p){return!!t.match(p)}const r=n(/android/i),s=n(/iphone|ipad|ipod/i),i=n(/cordova/i),o=n(/electron/i),a=n(/chrome/i),c=n(/edge/i),l=n(/firefox/i),d=n(/opera/i),u=n(/win/i),f=n(/mac/i),h=n(/linux/i);return{android:r,ios:s,cordova:i,electron:o,chrome:a,edge:c,firefox:l,opera:d,win:u,mac:f,linux:h,touch:UC,ssr:t==="ssr"}}function Pk(e,t){const{thresholds:n,mobileBreakpoint:r}=Mk(e),s=be(bm(t)),i=be(Sm(t)),o=pt({}),a=be(_m(t));function c(){s.value=bm(),a.value=_m()}function l(){c(),i.value=Sm()}return hn(()=>{const d=a.value=n.xxl,v=d?"xs":u?"sm":f?"md":h?"lg":p?"xl":"xxl",g=typeof r=="number"?r:n[r],y=a.value{window.removeEventListener("resize",c)},!0)),{..._f(o),update:l,ssr:!!t}}const i4=le({mobile:{type:Boolean,default:!1},mobileBreakpoint:[Number,String]},"display");function Ok(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{mobile:null},t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();const n=Oe(dd);if(!n)throw new Error("Could not find Vuetify display injection");const r=j(()=>e.mobile?!0:typeof e.mobileBreakpoint=="number"?n.width.valuet?{[`${t}--mobile`]:r.value}:{}),mobile:r}}const db=Symbol.for("vuetify:goto");function fb(){return{container:void 0,duration:300,layout:!1,offset:0,easing:"easeInOutCubic",patterns:AT}}function Lk(e){return Vf(e)??(document.scrollingElement||document.body)}function Vf(e){return typeof e=="string"?document.querySelector(e):Mf(e)}function ou(e,t,n){if(typeof e=="number")return t&&n?-e:e;let r=Vf(e),s=0;for(;r;)s+=t?r.offsetLeft:r.offsetTop,r=r.offsetParent;return s}function Nk(e,t){return{rtl:t.isRtl,options:Rt(fb(),e)}}async function Em(e,t,n,r){const s=n?"scrollLeft":"scrollTop",i=Rt((r==null?void 0:r.options)??fb(),t),o=r==null?void 0:r.rtl.value,a=(typeof e=="number"?e:Vf(e))??0,c=i.container==="parent"&&a instanceof HTMLElement?a.parentElement:Lk(i.container),l=Oo()?i.patterns.instant:typeof i.easing=="function"?i.easing:i.patterns[i.easing];if(!l)throw new TypeError(`Easing function "${i.easing}" not found.`);let d;if(typeof a=="number")d=ou(a,n,o);else if(d=ou(a,n,o)-ou(c,n,o),i.layout){const p=window.getComputedStyle(a).getPropertyValue("--v-layout-top");p&&(d-=parseInt(p,10))}d+=i.offset,d=Dk(c,d,!!o,!!n);const u=c[s]??0;if(d===u)return Promise.resolve(d);const f=performance.now();return new Promise(h=>requestAnimationFrame(function p(m){const g=(m-f)/i.duration,y=Math.floor(u+(d-u)*l(or(g,0,1)));if(c[s]=y,g>=1&&Math.abs(y-c[s])<10)return h(d);if(g>2)return h(c[s]);requestAnimationFrame(p)}))}function o4(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const t=Oe(db),{isRtl:n}=na();if(!t)throw new Error("[Vuetify] Could not find injected goto instance");const r={...t,rtl:ee(()=>t.rtl.value||n.value)};async function s(i,o){return Em(i,Rt(e,o),!1,r)}return s.horizontal=async(i,o)=>Em(i,Rt(e,o),!0,r),s}function Dk(e,t,n,r){const{scrollWidth:s,scrollHeight:i}=e,[o,a]=e===document.scrollingElement?[window.innerWidth,window.innerHeight]:[e.offsetWidth,e.offsetHeight];let c,l;return r?n?(c=-(s-o),l=0):(c=0,l=s-o):(c=0,l=i+-a),or(t,c,l)}const Fo=Symbol.for("vuetify:theme"),tn=le({theme:String},"theme");function wm(){return{defaultTheme:"light",prefix:"v-",variations:{colors:[],lighten:0,darken:0},themes:{light:{dark:!1,colors:{background:"#FFFFFF",surface:"#FFFFFF","surface-bright":"#FFFFFF","surface-light":"#EEEEEE","surface-variant":"#424242","on-surface-variant":"#EEEEEE",primary:"#1867C0","primary-darken-1":"#1F5592",secondary:"#48A9A6","secondary-darken-1":"#018786",error:"#B00020",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},variables:{"border-color":"#000000","border-opacity":.12,"high-emphasis-opacity":.87,"medium-emphasis-opacity":.6,"disabled-opacity":.38,"idle-opacity":.04,"hover-opacity":.04,"focus-opacity":.12,"selected-opacity":.08,"activated-opacity":.12,"pressed-opacity":.12,"dragged-opacity":.08,"theme-kbd":"#EEEEEE","theme-on-kbd":"#000000","theme-code":"#F5F5F5","theme-on-code":"#000000"}},dark:{dark:!0,colors:{background:"#121212",surface:"#212121","surface-bright":"#ccbfd6","surface-light":"#424242","surface-variant":"#c8c8c8","on-surface-variant":"#000000",primary:"#2196F3","primary-darken-1":"#277CC1",secondary:"#54B6B2","secondary-darken-1":"#48A9A6",error:"#CF6679",info:"#2196F3",success:"#4CAF50",warning:"#FB8C00"},variables:{"border-color":"#FFFFFF","border-opacity":.12,"high-emphasis-opacity":1,"medium-emphasis-opacity":.7,"disabled-opacity":.5,"idle-opacity":.1,"hover-opacity":.04,"focus-opacity":.12,"selected-opacity":.08,"activated-opacity":.12,"pressed-opacity":.16,"dragged-opacity":.08,"theme-kbd":"#424242","theme-on-kbd":"#FFFFFF","theme-code":"#343434","theme-on-code":"#CCCCCC"}}},stylesheetId:"vuetify-theme-stylesheet",scoped:!1,unimportant:!1,utilities:!0}}function Fk(){var r,s;let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:wm();const t=wm();if(!e)return{...t,isDisabled:!0};const n={};for(const[i,o]of Object.entries(e.themes??{})){const a=o.dark||i==="dark"?(r=t.themes)==null?void 0:r.dark:(s=t.themes)==null?void 0:s.light;n[i]=Rt(a,o)}return Rt(t,{...e,themes:n})}function ns(e,t,n,r){e.push(`${Vk(t,r)} { +`,...n.map(s=>` ${s}; +`),`} +`)}function Cm(e,t){const n=e.dark?2:1,r=e.dark?1:2,s=[];for(const[i,o]of Object.entries(e.colors)){const a=Fn(o);s.push(`--${t}theme-${i}: ${a.r},${a.g},${a.b}`),i.startsWith("on-")||s.push(`--${t}theme-${i}-overlay-multiplier: ${wT(o)>.18?n:r}`)}for(const[i,o]of Object.entries(e.variables)){const a=typeof o=="string"&&o.startsWith("#")?Fn(o):void 0,c=a?`${a.r}, ${a.g}, ${a.b}`:void 0;s.push(`--${t}${i}: ${c??o}`)}return s}function $k(e,t,n){const r={};if(n)for(const s of["lighten","darken"]){const i=s==="lighten"?ST:ET;for(const o of H_(n[s],1))r[`${e}-${s}-${o}`]=yT(i(Fn(t),o))}return r}function Bk(e,t){if(!t)return{};let n={};for(const r of t.colors){const s=e[r];s&&(n={...n,...$k(r,s,t)})}return n}function Hk(e){const t={};for(const n of Object.keys(e)){if(n.startsWith("on-")||e[`on-${n}`])continue;const r=`on-${n}`,s=Fn(e[n]);t[r]=Q_(s)}return t}function Vk(e,t){if(!t)return e;const n=`:where(${t})`;return e===":root"?n:`${n} ${e}`}function Uk(e,t,n){const r=Wk(e,t);r&&(r.innerHTML=n)}function Wk(e,t){if(!et)return null;let n=document.getElementById(e);return n||(n=document.createElement("style"),n.id=e,n.type="text/css",t&&n.setAttribute("nonce",t),document.head.appendChild(n)),n}function jk(e){const t=Fk(e),n=be(t.defaultTheme),r=we(t.themes),s=be("light"),i=j({get(){return n.value==="system"?s.value:n.value},set(g){n.value=g}}),o=j(()=>{const g={};for(const[y,_]of Object.entries(r.value)){const S={..._.colors,...Bk(_.colors,t.variations)};g[y]={..._,colors:{...S,...Hk(S)}}}return g}),a=ee(()=>o.value[i.value]),c=ee(()=>n.value==="system"),l=j(()=>{var M;const g=[],y=t.unimportant?"":" !important",_=t.scoped?t.prefix:"";(M=a.value)!=null&&M.dark&&ns(g,":root",["color-scheme: dark"],t.scope),ns(g,":root",Cm(a.value,t.prefix),t.scope);for(const[R,E]of Object.entries(o.value))ns(g,`.${t.prefix}theme--${R}`,[`color-scheme: ${E.dark?"dark":"normal"}`,...Cm(E,t.prefix)],t.scope);if(t.utilities){const R=[],E=[],C=new Set(Object.values(o.value).flatMap(I=>Object.keys(I.colors)));for(const I of C)I.startsWith("on-")?ns(E,`.${I}`,[`color: rgb(var(--${t.prefix}theme-${I}))${y}`],t.scope):(ns(R,`.${_}bg-${I}`,[`--${t.prefix}theme-overlay-multiplier: var(--${t.prefix}theme-${I}-overlay-multiplier)`,`background-color: rgb(var(--${t.prefix}theme-${I}))${y}`,`color: rgb(var(--${t.prefix}theme-on-${I}))${y}`],t.scope),ns(E,`.${_}text-${I}`,[`color: rgb(var(--${t.prefix}theme-${I}))${y}`],t.scope),ns(E,`.${_}border-${I}`,[`--${t.prefix}border-color: var(--${t.prefix}theme-${I})`],t.scope));t.layers?g.push(`@layer background { +`,...R.map(I=>` ${I}`),`} +`,`@layer foreground { +`,...E.map(I=>` ${I}`),`} +`):g.push(...R,...E)}let S=g.map((R,E)=>E===0?R:` ${R}`).join("");return t.layers&&(S=`@layer vuetify.theme { +`+g.map(R=>` ${R}`).join("")+` +}`),S}),d=ee(()=>t.isDisabled?void 0:`${t.prefix}theme--${i.value}`),u=ee(()=>Object.keys(o.value));if(F_){let y=function(){s.value=g.matches?"dark":"light"};const g=window.matchMedia("(prefers-color-scheme: dark)");y(),g.addEventListener("change",y,{passive:!0}),df()&&Ct(()=>{g.removeEventListener("change",y)})}function f(g){if(t.isDisabled)return;const y=g._context.provides.usehead;if(y){let _=function(){return{style:[{textContent:l.value,id:t.stylesheetId,nonce:t.cspNonce||!1}]}};if(y.push){const S=y.push(_);et&&Se(l,()=>{S.patch(_)})}else et?(y.addHeadObjs(ee(_)),hn(()=>y.updateDOM())):y.addHeadObjs(_())}else{let _=function(){Uk(t.stylesheetId,t.cspNonce,l.value)};et?Se(l,_,{immediate:!0}):_()}}function h(g){g!=="system"&&!u.value.includes(g)||(i.value=g)}function p(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:u.value;const y=g.indexOf(i.value),_=y===-1?0:(y+1)%g.length;h(g[_])}function m(){let g=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["light","dark"];p(g)}const v=new Proxy(i,{get(g,y){return Reflect.get(g,y)},set(g,y,_){return y==="value"&&D_(`theme.global.name.value = ${_}`,`theme.change('${_}')`),Reflect.set(g,y,_)}});return{install:f,change:h,cycle:p,toggle:m,isDisabled:t.isDisabled,isSystem:c,name:i,themes:r,current:a,computedThemes:o,prefix:t.prefix,themeClasses:d,styles:l,global:{name:v,current:a}}}function mn(e){mt("provideTheme");const t=Oe(Fo,null);if(!t)throw new Error("Could not find Vuetify theme injection");const n=ee(()=>e.theme??t.name.value),i={...t,name:n,current:ee(()=>t.themes.value[n.value]),themeClasses:ee(()=>t.isDisabled?void 0:`${t.prefix}theme--${n.value}`)};return At(Fo,i),i}function hb(){mt("useTheme");const e=Oe(Fo,null);if(!e)throw new Error("Could not find Vuetify theme injection");return e}function Uf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"content";const n=od(),r=we();if(et){const s=new ResizeObserver(i=>{e==null||e(i,s),i.length&&(t==="content"?r.value=i[0].contentRect:r.value=i[0].target.getBoundingClientRect())});Tn(()=>{s.disconnect()}),Se(()=>n.el,(i,o)=>{o&&(s.unobserve(o),r.value=void 0),i&&s.observe(i)},{flush:"post"})}return{resizeRef:n,contentRect:hi(r)}}const $o=Symbol.for("vuetify:layout"),pb=Symbol.for("vuetify:layout-item"),Tm=1e3,zk=le({overlaps:{type:Array,default:()=>[]},fullHeight:Boolean},"layout"),a4=le({name:{type:String},order:{type:[Number,String],default:0},absolute:Boolean},"layout-item");function qk(){const e=Oe($o);if(!e)throw new Error("[Vuetify] Could not find injected layout");return{getLayoutItem:e.getLayoutItem,mainRect:e.mainRect,mainStyles:e.mainStyles}}function c4(e){const t=Oe($o);if(!t)throw new Error("[Vuetify] Could not find injected layout");const n=e.id??`layout-item-${Jy()}`,r=mt("useLayoutItem");At(pb,{id:n});const s=be(!1);e_(()=>s.value=!0),Qy(()=>s.value=!1);const{layoutItemStyles:i,layoutItemScrimStyles:o}=t.register(r,{...e,active:j(()=>s.value?!1:e.active.value),id:n});return Tn(()=>t.unregister(n)),{layoutItemStyles:i,layoutRect:t.layoutRect,layoutItemScrimStyles:o}}const Gk=(e,t,n,r)=>{let s={top:0,left:0,right:0,bottom:0};const i=[{id:"",layer:{...s}}];for(const o of e){const a=t.get(o),c=n.get(o),l=r.get(o);if(!a||!c||!l)continue;const d={...s,[a.value]:parseInt(s[a.value],10)+(l.value?parseInt(c.value,10):0)};i.push({id:o,layer:d}),s=d}return i};function Kk(e){const t=Oe($o,null),n=j(()=>t?t.rootZIndex.value-100:Tm),r=we([]),s=pt(new Map),i=pt(new Map),o=pt(new Map),a=pt(new Map),c=pt(new Map),{resizeRef:l,contentRect:d}=Uf(),u=j(()=>{const R=new Map,E=e.overlaps??[];for(const C of E.filter(I=>I.includes(":"))){const[I,A]=C.split(":");if(!r.value.includes(I)||!r.value.includes(A))continue;const O=s.get(I),T=s.get(A),P=i.get(I),N=i.get(A);!O||!T||!P||!N||(R.set(A,{position:O.value,amount:parseInt(P.value,10)}),R.set(I,{position:T.value,amount:-parseInt(N.value,10)}))}return R}),f=j(()=>{const R=[...new Set([...o.values()].map(C=>C.value))].sort((C,I)=>C-I),E=[];for(const C of R){const I=r.value.filter(A=>{var O;return((O=o.get(A))==null?void 0:O.value)===C});E.push(...I)}return Gk(E,s,i,a)}),h=j(()=>!Array.from(c.values()).some(R=>R.value)),p=j(()=>f.value[f.value.length-1].layer),m=ee(()=>({"--v-layout-left":me(p.value.left),"--v-layout-right":me(p.value.right),"--v-layout-top":me(p.value.top),"--v-layout-bottom":me(p.value.bottom),...h.value?void 0:{transition:"none"}})),v=j(()=>f.value.slice(1).map((R,E)=>{let{id:C}=R;const{layer:I}=f.value[E],A=i.get(C),O=s.get(C);return{id:C,...I,size:Number(A.value),position:O.value}})),g=R=>v.value.find(E=>E.id===R),y=mt("createLayout"),_=be(!1);return jr(()=>{_.value=!0}),At($o,{register:(R,E)=>{let{id:C,order:I,position:A,layoutSize:O,elementSize:T,active:P,disableTransitions:N,absolute:z}=E;o.set(C,I),s.set(C,A),i.set(C,O),a.set(C,P),N&&c.set(C,N);const q=Zs(pb,y==null?void 0:y.vnode).indexOf(R);q>-1?r.value.splice(q,0,C):r.value.push(C);const D=j(()=>v.value.findIndex(ae=>ae.id===C)),re=j(()=>n.value+f.value.length*2-D.value*2),U=j(()=>{const ae=A.value==="left"||A.value==="right",ue=A.value==="right",Ce=A.value==="bottom",Ne=T.value??O.value,He=Ne===0?"%":"px",x={[A.value]:0,zIndex:re.value,transform:`translate${ae?"X":"Y"}(${(P.value?0:-(Ne===0?100:Ne))*(ue||Ce?-1:1)}${He})`,position:z.value||n.value!==Tm?"absolute":"fixed",...h.value?void 0:{transition:"none"}};if(!_.value)return x;const W=v.value[D.value],K=u.value.get(C);return K&&(W[K.position]+=K.amount),{...x,height:ae?`calc(100% - ${W.top}px - ${W.bottom}px)`:T.value?`${T.value}px`:void 0,left:ue?void 0:`${W.left}px`,right:ue?`${W.right}px`:void 0,top:A.value!=="bottom"?`${W.top}px`:void 0,bottom:A.value!=="top"?`${W.bottom}px`:void 0,width:ae?T.value?`${T.value}px`:void 0:`calc(100% - ${W.left}px - ${W.right}px)`}}),ie=j(()=>({zIndex:re.value-1}));return{layoutItemStyles:U,layoutItemScrimStyles:ie,zIndex:re}},unregister:R=>{o.delete(R),s.delete(R),i.delete(R),a.delete(R),c.delete(R),r.value=r.value.filter(E=>E!==R)},mainRect:p,mainStyles:m,getLayoutItem:g,items:v,layoutRect:d,rootZIndex:n}),{layoutClasses:ee(()=>["v-layout",{"v-layout--full-height":e.fullHeight}]),layoutStyles:ee(()=>({zIndex:t?n.value:void 0,position:t?"relative":void 0,overflow:t?"hidden":void 0})),getLayoutItem:g,items:v,layoutRect:d,layoutRef:l}}function mb(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};const{blueprint:t,...n}=e,r=Rt(t,n),{aliases:s={},components:i={},directives:o={}}=r,a=Es();return a.run(()=>{const c=TT(r.defaults),l=Pk(r.display,r.ssr),d=jk(r.theme),u=BT(r.icons),f=WT(r.locale),h=Rk(r.date,f),p=Nk(r.goTo,f);function m(g){for(const _ in o)g.directive(_,o[_]);for(const _ in i)g.component(_,i[_]);for(const _ in s)g.component(_,Ni({...s[_],name:_,aliasName:s[_].name}));const y=Es();if(y.run(()=>{d.install(g)}),g.onUnmount(()=>y.stop()),g.provide(vi,c),g.provide(dd,l),g.provide(Fo,d),g.provide(ud,u),g.provide(Ac,f),g.provide(lb,h.options),g.provide(vm,h.instance),g.provide(db,p),et&&r.ssr)if(g.$nuxt)g.$nuxt.hook("app:suspense:resolve",()=>{l.update()});else{const{mount:_}=g;g.mount=function(){const S=_(...arguments);return vt(()=>l.update()),g.mount=_,S}}g.mixin({computed:{$vuetify(){return pt({defaults:Hs.call(this,vi),display:Hs.call(this,dd),theme:Hs.call(this,Fo),icons:Hs.call(this,ud),locale:Hs.call(this,Ac),date:Hs.call(this,vm)})}}})}function v(){a.stop()}return{install:m,unmount:v,defaults:c,display:l,theme:d,icons:u,locale:f,date:h,goTo:p}})}const Yk="3.11.7";mb.version=Yk;function Hs(e){var r,s;const t=this.$,n=((r=t.parent)==null?void 0:r.provides)??((s=t.vnode.appContext)==null?void 0:s.provides);if(n&&e in n)return n[e]}const Xk=mb({theme:{defaultTheme:"dark"}});/*! + * pinia v3.0.4 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */let gb;const _l=e=>gb=e,vb=Symbol();function fd(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var bo;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(bo||(bo={}));function yb(){const e=Es(!0),t=e.run(()=>we({}));let n=[],r=[];const s=yf({install(i){_l(s),s._a=i,i.provide(vb,s),i.config.globalProperties.$pinia=s,r.forEach(o=>n.push(o)),r=[]},use(i){return this._a?n.push(i):r.push(i),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return s}const _b=()=>{};function km(e,t,n,r=_b){e.add(t);const s=()=>{e.delete(t)&&r()};return!n&&df()&&Ct(s),s}function Vs(e,...t){e.forEach(n=>{n(...t)})}const Jk=e=>e(),Im=Symbol(),au=Symbol();function hd(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,r)=>e.set(r,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const r=t[n],s=e[n];fd(s)&&fd(r)&&e.hasOwnProperty(n)&&!Je(r)&&!Jn(r)?e[n]=hd(s,r):e[n]=r}return e}const Zk=Symbol();function Qk(e){return!fd(e)||!Object.prototype.hasOwnProperty.call(e,Zk)}const{assign:Er}=Object;function eI(e){return!!(Je(e)&&e.effect)}function tI(e,t,n,r){const{state:s,actions:i,getters:o}=t,a=n.state.value[e];let c;function l(){a||(n.state.value[e]=s?s():{});const d=_f(n.state.value[e]);return Er(d,i,Object.keys(o||{}).reduce((u,f)=>(u[f]=yf(j(()=>{_l(n);const h=n._s.get(e);return o[f].call(h,h)})),u),{}))}return c=bb(e,l,t,n,r,!0),c}function bb(e,t,n={},r,s,i){let o;const a=Er({actions:{}},n),c={deep:!0};let l,d,u=new Set,f=new Set,h;const p=r.state.value[e];!i&&!p&&(r.state.value[e]={});let m;function v(C){let I;l=d=!1,typeof C=="function"?(C(r.state.value[e]),I={type:bo.patchFunction,storeId:e,events:h}):(hd(r.state.value[e],C),I={type:bo.patchObject,payload:C,storeId:e,events:h});const A=m=Symbol();vt().then(()=>{m===A&&(l=!0)}),d=!0,Vs(u,I,r.state.value[e])}const g=i?function(){const{state:I}=n,A=I?I():{};this.$patch(O=>{Er(O,A)})}:_b;function y(){o.stop(),u.clear(),f.clear(),r._s.delete(e)}const _=(C,I="")=>{if(Im in C)return C[au]=I,C;const A=function(){_l(r);const O=Array.from(arguments),T=new Set,P=new Set;function N(q){T.add(q)}function z(q){P.add(q)}Vs(f,{args:O,name:A[au],store:M,after:N,onError:z});let X;try{X=C.apply(this&&this.$id===e?this:M,O)}catch(q){throw Vs(P,q),q}return X instanceof Promise?X.then(q=>(Vs(T,q),q)).catch(q=>(Vs(P,q),Promise.reject(q))):(Vs(T,X),X)};return A[Im]=!0,A[au]=I,A},S={_p:r,$id:e,$onAction:km.bind(null,f),$patch:v,$reset:g,$subscribe(C,I={}){const A=km(u,C,I.detached,()=>O()),O=o.run(()=>Se(()=>r.state.value[e],T=>{(I.flush==="sync"?d:l)&&C({storeId:e,type:bo.direct,events:h},T)},Er({},c,I)));return A},$dispose:y},M=pt(S);r._s.set(e,M);const E=(r._a&&r._a.runWithContext||Jk)(()=>r._e.run(()=>(o=Es()).run(()=>t({action:_}))));for(const C in E){const I=E[C];if(Je(I)&&!eI(I)||Jn(I))i||(p&&Qk(I)&&(Je(I)?I.value=p[C]:hd(I,p[C])),r.state.value[e][C]=I);else if(typeof I=="function"){const A=_(I,C);E[C]=A,a.actions[C]=I}}return Er(M,E),Er(de(M),E),Object.defineProperty(M,"$state",{get:()=>r.state.value[e],set:C=>{v(I=>{Er(I,C)})}}),r._p.forEach(C=>{Er(M,o.run(()=>C({store:M,app:r._a,pinia:r,options:a})))}),p&&i&&n.hydrate&&n.hydrate(M.$state,p),l=!0,d=!0,M}/*! #__NO_SIDE_EFFECTS__ */function l4(e,t,n){let r;const s=typeof t=="function";r=s?n:t;function i(o,a){const c=o1();return o=o||(c?Oe(vb,null):null),o&&_l(o),o=gb,o._s.has(e)||(s?bb(e,t,r,o):tI(e,r,o)),o._s.get(e)}return i.$id=e,i}function u4(e,t){return Array.isArray(t)?t.reduce((n,r)=>(n[r]=function(){return e(this.$pinia)[r]},n),{}):Object.keys(t).reduce((n,r)=>(n[r]=function(){const s=e(this.$pinia),i=t[r];return typeof i=="function"?i.call(this,s):s[i]},n),{})}function d4(e,t){return Array.isArray(t)?t.reduce((n,r)=>(n[r]=function(...s){return e(this.$pinia)[r](...s)},n),{}):Object.keys(t).reduce((n,r)=>(n[r]=function(...s){return e(this.$pinia)[t[r]](...s)},n),{})}const nI=yb();/*! + * vue-router v4.6.4 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */const Ks=typeof document<"u";function Sb(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function rI(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&Sb(e.default)}const Fe=Object.assign;function cu(e,t){const n={};for(const r in t){const s=t[r];n[r]=Cn(s)?s.map(e):e(s)}return n}const So=()=>{},Cn=Array.isArray;function xm(e,t){const n={};for(const r in e)n[r]=r in t?t[r]:e[r];return n}const Eb=/#/g,sI=/&/g,iI=/\//g,oI=/=/g,aI=/\?/g,wb=/\+/g,cI=/%5B/g,lI=/%5D/g,Cb=/%5E/g,uI=/%60/g,Tb=/%7B/g,dI=/%7C/g,kb=/%7D/g,fI=/%20/g;function Wf(e){return e==null?"":encodeURI(""+e).replace(dI,"|").replace(cI,"[").replace(lI,"]")}function hI(e){return Wf(e).replace(Tb,"{").replace(kb,"}").replace(Cb,"^")}function pd(e){return Wf(e).replace(wb,"%2B").replace(fI,"+").replace(Eb,"%23").replace(sI,"%26").replace(uI,"`").replace(Tb,"{").replace(kb,"}").replace(Cb,"^")}function pI(e){return pd(e).replace(oI,"%3D")}function mI(e){return Wf(e).replace(Eb,"%23").replace(aI,"%3F")}function gI(e){return mI(e).replace(iI,"%2F")}function Bo(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const vI=/\/$/,yI=e=>e.replace(vI,"");function lu(e,t,n="/"){let r,s={},i="",o="";const a=t.indexOf("#");let c=t.indexOf("?");return c=a>=0&&c>a?-1:c,c>=0&&(r=t.slice(0,c),i=t.slice(c,a>0?a:t.length),s=e(i.slice(1))),a>=0&&(r=r||t.slice(0,a),o=t.slice(a,t.length)),r=EI(r??t,n),{fullPath:r+i+o,path:r,query:s,hash:Bo(o)}}function _I(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function Rm(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function bI(e,t,n){const r=t.matched.length-1,s=n.matched.length-1;return r>-1&&r===s&&yi(t.matched[r],n.matched[s])&&Ib(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function yi(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Ib(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!SI(e[n],t[n]))return!1;return!0}function SI(e,t){return Cn(e)?Am(e,t):Cn(t)?Am(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function Am(e,t){return Cn(t)?e.length===t.length&&e.every((n,r)=>n===t[r]):e.length===1&&e[0]===t}function EI(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),r=e.split("/"),s=r[r.length-1];(s===".."||s===".")&&r.push("");let i=n.length-1,o,a;for(o=0;o1&&i--;else break;return n.slice(0,i).join("/")+"/"+r.slice(o).join("/")}const _r={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let md=function(e){return e.pop="pop",e.push="push",e}({}),uu=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function wI(e){if(!e)if(Ks){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),yI(e)}const CI=/^[^#]+#/;function TI(e,t){return e.replace(CI,"#")+t}function kI(e,t){const n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}const bl=()=>({left:window.scrollX,top:window.scrollY});function II(e){let t;if("el"in e){const n=e.el,r=typeof n=="string"&&n.startsWith("#"),s=typeof n=="string"?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!s)return;t=kI(s,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Mm(e,t){return(history.state?history.state.position-t:-1)+e}const gd=new Map;function xI(e,t){gd.set(e,t)}function RI(e){const t=gd.get(e);return gd.delete(e),t}function AI(e){return typeof e=="string"||e&&typeof e=="object"}function xb(e){return typeof e=="string"||typeof e=="symbol"}let ot=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const Rb=Symbol("");ot.MATCHER_NOT_FOUND+"",ot.NAVIGATION_GUARD_REDIRECT+"",ot.NAVIGATION_ABORTED+"",ot.NAVIGATION_CANCELLED+"",ot.NAVIGATION_DUPLICATED+"";function _i(e,t){return Fe(new Error,{type:e,[Rb]:!0},t)}function jn(e,t){return e instanceof Error&&Rb in e&&(t==null||!!(e.type&t))}const MI=["params","query","hash"];function PI(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of MI)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function OI(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let r=0;rs&&pd(s)):[r&&pd(r)]).forEach(s=>{s!==void 0&&(t+=(t.length?"&":"")+n,s!=null&&(t+="="+s))})}return t}function LI(e){const t={};for(const n in e){const r=e[n];r!==void 0&&(t[n]=Cn(r)?r.map(s=>s==null?null:""+s):r==null?r:""+r)}return t}const NI=Symbol(""),Om=Symbol(""),Sl=Symbol(""),jf=Symbol(""),vd=Symbol("");function to(){let e=[];function t(r){return e.push(r),()=>{const s=e.indexOf(r);s>-1&&e.splice(s,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Ir(e,t,n,r,s,i=o=>o()){const o=r&&(r.enterCallbacks[s]=r.enterCallbacks[s]||[]);return()=>new Promise((a,c)=>{const l=f=>{f===!1?c(_i(ot.NAVIGATION_ABORTED,{from:n,to:t})):f instanceof Error?c(f):AI(f)?c(_i(ot.NAVIGATION_GUARD_REDIRECT,{from:t,to:f})):(o&&r.enterCallbacks[s]===o&&typeof f=="function"&&o.push(f),a())},d=i(()=>e.call(r&&r.instances[s],t,n,l));let u=Promise.resolve(d);e.length<3&&(u=u.then(l)),u.catch(f=>c(f))})}function du(e,t,n,r,s=i=>i()){const i=[];for(const o of e)for(const a in o.components){let c=o.components[a];if(!(t!=="beforeRouteEnter"&&!o.instances[a]))if(Sb(c)){const l=(c.__vccOpts||c)[t];l&&i.push(Ir(l,n,r,o,a,s))}else{let l=c();i.push(()=>l.then(d=>{if(!d)throw new Error(`Couldn't resolve component "${a}" at "${o.path}"`);const u=rI(d)?d.default:d;o.mods[a]=d,o.components[a]=u;const f=(u.__vccOpts||u)[t];return f&&Ir(f,n,r,o,a,s)()}))}}return i}function DI(e,t){const n=[],r=[],s=[],i=Math.max(t.matched.length,e.matched.length);for(let o=0;oyi(l,a))?r.push(a):n.push(a));const c=e.matched[o];c&&(t.matched.find(l=>yi(l,c))||s.push(c))}return[n,r,s]}/*! + * vue-router v4.6.4 + * (c) 2025 Eduardo San Martin Morote + * @license MIT + */let FI=()=>location.protocol+"//"+location.host;function Ab(e,t){const{pathname:n,search:r,hash:s}=t,i=e.indexOf("#");if(i>-1){let o=s.includes(e.slice(i))?e.slice(i).length:1,a=s.slice(o);return a[0]!=="/"&&(a="/"+a),Rm(a,"")}return Rm(n,e)+r+s}function $I(e,t,n,r){let s=[],i=[],o=null;const a=({state:f})=>{const h=Ab(e,location),p=n.value,m=t.value;let v=0;if(f){if(n.value=h,t.value=f,o&&o===p){o=null;return}v=m?f.position-m.position:0}else r(h);s.forEach(g=>{g(n.value,p,{delta:v,type:md.pop,direction:v?v>0?uu.forward:uu.back:uu.unknown})})};function c(){o=n.value}function l(f){s.push(f);const h=()=>{const p=s.indexOf(f);p>-1&&s.splice(p,1)};return i.push(h),h}function d(){if(document.visibilityState==="hidden"){const{history:f}=window;if(!f.state)return;f.replaceState(Fe({},f.state,{scroll:bl()}),"")}}function u(){for(const f of i)f();i=[],window.removeEventListener("popstate",a),window.removeEventListener("pagehide",d),document.removeEventListener("visibilitychange",d)}return window.addEventListener("popstate",a),window.addEventListener("pagehide",d),document.addEventListener("visibilitychange",d),{pauseListeners:c,listen:l,destroy:u}}function Lm(e,t,n,r=!1,s=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:s?bl():null}}function BI(e){const{history:t,location:n}=window,r={value:Ab(e,n)},s={value:t.state};s.value||i(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(c,l,d){const u=e.indexOf("#"),f=u>-1?(n.host&&document.querySelector("base")?e:e.slice(u))+c:FI()+e+c;try{t[d?"replaceState":"pushState"](l,"",f),s.value=l}catch(h){console.error(h),n[d?"replace":"assign"](f)}}function o(c,l){i(c,Fe({},t.state,Lm(s.value.back,c,s.value.forward,!0),l,{position:s.value.position}),!0),r.value=c}function a(c,l){const d=Fe({},s.value,t.state,{forward:c,scroll:bl()});i(d.current,d,!0),i(c,Fe({},Lm(r.value,c,null),{position:d.position+1},l),!1),r.value=c}return{location:r,state:s,push:a,replace:o}}function HI(e){e=wI(e);const t=BI(e),n=$I(e,t.state,t.location,t.replace);function r(i,o=!0){o||n.pauseListeners(),history.go(i)}const s=Fe({location:"",base:e,go:r,createHref:TI.bind(null,e)},t,n);return Object.defineProperty(s,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(s,"state",{enumerable:!0,get:()=>t.state.value}),s}let ls=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var ft=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(ft||{});const VI={type:ls.Static,value:""},UI=/[a-zA-Z0-9_]/;function WI(e){if(!e)return[[]];if(e==="/")return[[VI]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(h){throw new Error(`ERR (${n})/"${l}": ${h}`)}let n=ft.Static,r=n;const s=[];let i;function o(){i&&s.push(i),i=[]}let a=0,c,l="",d="";function u(){l&&(n===ft.Static?i.push({type:ls.Static,value:l}):n===ft.Param||n===ft.ParamRegExp||n===ft.ParamRegExpEnd?(i.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),i.push({type:ls.Param,value:l,regexp:d,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),l="")}function f(){l+=c}for(;at.length?t.length===1&&t[0]===Nt.Static+Nt.Segment?1:-1:0}function Mb(e,t){let n=0;const r=e.score,s=t.score;for(;n0&&t[t.length-1]<0}const KI={strict:!1,end:!0,sensitive:!1};function YI(e,t,n){const r=qI(WI(e.path),n),s=Fe(r,{record:e,parent:t,children:[],alias:[]});return t&&!s.record.aliasOf==!t.record.aliasOf&&t.children.push(s),s}function XI(e,t){const n=[],r=new Map;t=xm(KI,t);function s(u){return r.get(u)}function i(u,f,h){const p=!h,m=$m(u);m.aliasOf=h&&h.record;const v=xm(t,u),g=[m];if("alias"in u){const S=typeof u.alias=="string"?[u.alias]:u.alias;for(const M of S)g.push($m(Fe({},m,{components:h?h.record.components:m.components,path:M,aliasOf:h?h.record:m})))}let y,_;for(const S of g){const{path:M}=S;if(f&&M[0]!=="/"){const R=f.record.path,E=R[R.length-1]==="/"?"":"/";S.path=f.record.path+(M&&E+M)}if(y=YI(S,f,v),h?h.alias.push(y):(_=_||y,_!==y&&_.alias.push(y),p&&u.name&&!Bm(y)&&o(u.name)),Pb(y)&&c(y),m.children){const R=m.children;for(let E=0;E{o(_)}:So}function o(u){if(xb(u)){const f=r.get(u);f&&(r.delete(u),n.splice(n.indexOf(f),1),f.children.forEach(o),f.alias.forEach(o))}else{const f=n.indexOf(u);f>-1&&(n.splice(f,1),u.record.name&&r.delete(u.record.name),u.children.forEach(o),u.alias.forEach(o))}}function a(){return n}function c(u){const f=QI(u,n);n.splice(f,0,u),u.record.name&&!Bm(u)&&r.set(u.record.name,u)}function l(u,f){let h,p={},m,v;if("name"in u&&u.name){if(h=r.get(u.name),!h)throw _i(ot.MATCHER_NOT_FOUND,{location:u});v=h.record.name,p=Fe(Fm(f.params,h.keys.filter(_=>!_.optional).concat(h.parent?h.parent.keys.filter(_=>_.optional):[]).map(_=>_.name)),u.params&&Fm(u.params,h.keys.map(_=>_.name))),m=h.stringify(p)}else if(u.path!=null)m=u.path,h=n.find(_=>_.re.test(m)),h&&(p=h.parse(m),v=h.record.name);else{if(h=f.name?r.get(f.name):n.find(_=>_.re.test(f.path)),!h)throw _i(ot.MATCHER_NOT_FOUND,{location:u,currentLocation:f});v=h.record.name,p=Fe({},f.params,u.params),m=h.stringify(p)}const g=[];let y=h;for(;y;)g.unshift(y.record),y=y.parent;return{name:v,path:m,params:p,matched:g,meta:ZI(g)}}e.forEach(u=>i(u));function d(){n.length=0,r.clear()}return{addRoute:i,resolve:l,removeRoute:o,clearRoutes:d,getRoutes:a,getRecordMatcher:s}}function Fm(e,t){const n={};for(const r of t)r in e&&(n[r]=e[r]);return n}function $m(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:JI(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function JI(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const r in e.components)t[r]=typeof n=="object"?n[r]:n;return t}function Bm(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function ZI(e){return e.reduce((t,n)=>Fe(t,n.meta),{})}function QI(e,t){let n=0,r=t.length;for(;n!==r;){const i=n+r>>1;Mb(e,t[i])<0?r=i:n=i+1}const s=ex(e);return s&&(r=t.lastIndexOf(s,r-1)),r}function ex(e){let t=e;for(;t=t.parent;)if(Pb(t)&&Mb(e,t)===0)return t}function Pb({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Hm(e){const t=Oe(Sl),n=Oe(jf),r=j(()=>{const c=Ut(e.to);return t.resolve(c)}),s=j(()=>{const{matched:c}=r.value,{length:l}=c,d=c[l-1],u=n.matched;if(!d||!u.length)return-1;const f=u.findIndex(yi.bind(null,d));if(f>-1)return f;const h=Vm(c[l-2]);return l>1&&Vm(d)===h&&u[u.length-1].path!==h?u.findIndex(yi.bind(null,c[l-2])):f}),i=j(()=>s.value>-1&&ix(n.params,r.value.params)),o=j(()=>s.value>-1&&s.value===n.matched.length-1&&Ib(n.params,r.value.params));function a(c={}){if(sx(c)){const l=t[Ut(e.replace)?"replace":"push"](Ut(e.to)).catch(So);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>l),l}return Promise.resolve()}return{route:r,href:j(()=>r.value.href),isActive:i,isExactActive:o,navigate:a}}function tx(e){return e.length===1?e[0]:e}const nx=dl({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:Hm,setup(e,{slots:t}){const n=pt(Hm(e)),{options:r}=Oe(Sl),s=j(()=>({[Um(e.activeClass,r.linkActiveClass,"router-link-active")]:n.isActive,[Um(e.exactActiveClass,r.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&tx(t.default(n));return e.custom?i:zr("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:s.value},i)}}}),rx=nx;function sx(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ix(e,t){for(const n in t){const r=t[n],s=e[n];if(typeof r=="string"){if(r!==s)return!1}else if(!Cn(s)||s.length!==r.length||r.some((i,o)=>i.valueOf()!==s[o].valueOf()))return!1}return!0}function Vm(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Um=(e,t,n)=>e??t??n,ox=dl({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const r=Oe(vd),s=j(()=>e.route||r.value),i=Oe(Om,0),o=j(()=>{let l=Ut(i);const{matched:d}=s.value;let u;for(;(u=d[l])&&!u.components;)l++;return l}),a=j(()=>s.value.matched[o.value]);At(Om,j(()=>o.value+1)),At(NI,a),At(vd,s);const c=we();return Se(()=>[c.value,a.value,e.name],([l,d,u],[f,h,p])=>{d&&(d.instances[u]=l,h&&h!==d&&l&&l===f&&(d.leaveGuards.size||(d.leaveGuards=h.leaveGuards),d.updateGuards.size||(d.updateGuards=h.updateGuards))),l&&d&&(!h||!yi(d,h)||!f)&&(d.enterCallbacks[u]||[]).forEach(m=>m(l))},{flush:"post"}),()=>{const l=s.value,d=e.name,u=a.value,f=u&&u.components[d];if(!f)return Wm(n.default,{Component:f,route:l});const h=u.props[d],p=h?h===!0?l.params:typeof h=="function"?h(l):h:null,v=zr(f,Fe({},p,t,{onVnodeUnmounted:g=>{g.component.isUnmounted&&(u.instances[d]=null)},ref:c}));return Wm(n.default,{Component:v,route:l})||v}}});function Wm(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const ax=ox;function cx(e){const t=XI(e.routes,e),n=e.parseQuery||OI,r=e.stringifyQuery||Pm,s=e.history,i=to(),o=to(),a=to(),c=be(_r);let l=_r;Ks&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const d=cu.bind(null,x=>""+x),u=cu.bind(null,gI),f=cu.bind(null,Bo);function h(x,W){let K,ne;return xb(x)?(K=t.getRecordMatcher(x),ne=W):ne=x,t.addRoute(ne,K)}function p(x){const W=t.getRecordMatcher(x);W&&t.removeRoute(W)}function m(){return t.getRoutes().map(x=>x.record)}function v(x){return!!t.getRecordMatcher(x)}function g(x,W){if(W=Fe({},W||c.value),typeof x=="string"){const k=lu(n,x,W.path),L=t.resolve({path:k.path},W),$=s.createHref(k.fullPath);return Fe(k,L,{params:f(L.params),hash:Bo(k.hash),redirectedFrom:void 0,href:$})}let K;if(x.path!=null)K=Fe({},x,{path:lu(n,x.path,W.path).path});else{const k=Fe({},x.params);for(const L in k)k[L]==null&&delete k[L];K=Fe({},x,{params:u(k)}),W.params=u(W.params)}const ne=t.resolve(K,W),ye=x.hash||"";ne.params=d(f(ne.params));const b=_I(r,Fe({},x,{hash:hI(ye),path:ne.path})),w=s.createHref(b);return Fe({fullPath:b,hash:ye,query:r===Pm?LI(x.query):x.query||{}},ne,{redirectedFrom:void 0,href:w})}function y(x){return typeof x=="string"?lu(n,x,c.value.path):Fe({},x)}function _(x,W){if(l!==x)return _i(ot.NAVIGATION_CANCELLED,{from:W,to:x})}function S(x){return E(x)}function M(x){return S(Fe(y(x),{replace:!0}))}function R(x,W){const K=x.matched[x.matched.length-1];if(K&&K.redirect){const{redirect:ne}=K;let ye=typeof ne=="function"?ne(x,W):ne;return typeof ye=="string"&&(ye=ye.includes("?")||ye.includes("#")?ye=y(ye):{path:ye},ye.params={}),Fe({query:x.query,hash:x.hash,params:ye.path!=null?{}:x.params},ye)}}function E(x,W){const K=l=g(x),ne=c.value,ye=x.state,b=x.force,w=x.replace===!0,k=R(K,ne);if(k)return E(Fe(y(k),{state:typeof k=="object"?Fe({},ye,k.state):ye,force:b,replace:w}),W||K);const L=K;L.redirectedFrom=W;let $;return!b&&bI(r,ne,K)&&($=_i(ot.NAVIGATION_DUPLICATED,{to:L,from:ne}),ie(ne,ne,!0,!1)),($?Promise.resolve($):A(L,ne)).catch(F=>jn(F)?jn(F,ot.NAVIGATION_GUARD_REDIRECT)?F:U(F):D(F,L,ne)).then(F=>{if(F){if(jn(F,ot.NAVIGATION_GUARD_REDIRECT))return E(Fe({replace:w},y(F.to),{state:typeof F.to=="object"?Fe({},ye,F.to.state):ye,force:b}),W||L)}else F=T(L,ne,!0,w,ye);return O(L,ne,F),F})}function C(x,W){const K=_(x,W);return K?Promise.reject(K):Promise.resolve()}function I(x){const W=Ce.values().next().value;return W&&typeof W.runWithContext=="function"?W.runWithContext(x):x()}function A(x,W){let K;const[ne,ye,b]=DI(x,W);K=du(ne.reverse(),"beforeRouteLeave",x,W);for(const k of ne)k.leaveGuards.forEach(L=>{K.push(Ir(L,x,W))});const w=C.bind(null,x,W);return K.push(w),He(K).then(()=>{K=[];for(const k of i.list())K.push(Ir(k,x,W));return K.push(w),He(K)}).then(()=>{K=du(ye,"beforeRouteUpdate",x,W);for(const k of ye)k.updateGuards.forEach(L=>{K.push(Ir(L,x,W))});return K.push(w),He(K)}).then(()=>{K=[];for(const k of b)if(k.beforeEnter)if(Cn(k.beforeEnter))for(const L of k.beforeEnter)K.push(Ir(L,x,W));else K.push(Ir(k.beforeEnter,x,W));return K.push(w),He(K)}).then(()=>(x.matched.forEach(k=>k.enterCallbacks={}),K=du(b,"beforeRouteEnter",x,W,I),K.push(w),He(K))).then(()=>{K=[];for(const k of o.list())K.push(Ir(k,x,W));return K.push(w),He(K)}).catch(k=>jn(k,ot.NAVIGATION_CANCELLED)?k:Promise.reject(k))}function O(x,W,K){a.list().forEach(ne=>I(()=>ne(x,W,K)))}function T(x,W,K,ne,ye){const b=_(x,W);if(b)return b;const w=W===_r,k=Ks?history.state:{};K&&(ne||w?s.replace(x.fullPath,Fe({scroll:w&&k&&k.scroll},ye)):s.push(x.fullPath,ye)),c.value=x,ie(x,W,K,w),U()}let P;function N(){P||(P=s.listen((x,W,K)=>{if(!Ne.listening)return;const ne=g(x),ye=R(ne,Ne.currentRoute.value);if(ye){E(Fe(ye,{replace:!0,force:!0}),ne).catch(So);return}l=ne;const b=c.value;Ks&&xI(Mm(b.fullPath,K.delta),bl()),A(ne,b).catch(w=>jn(w,ot.NAVIGATION_ABORTED|ot.NAVIGATION_CANCELLED)?w:jn(w,ot.NAVIGATION_GUARD_REDIRECT)?(E(Fe(y(w.to),{force:!0}),ne).then(k=>{jn(k,ot.NAVIGATION_ABORTED|ot.NAVIGATION_DUPLICATED)&&!K.delta&&K.type===md.pop&&s.go(-1,!1)}).catch(So),Promise.reject()):(K.delta&&s.go(-K.delta,!1),D(w,ne,b))).then(w=>{w=w||T(ne,b,!1),w&&(K.delta&&!jn(w,ot.NAVIGATION_CANCELLED)?s.go(-K.delta,!1):K.type===md.pop&&jn(w,ot.NAVIGATION_ABORTED|ot.NAVIGATION_DUPLICATED)&&s.go(-1,!1)),O(ne,b,w)}).catch(So)}))}let z=to(),X=to(),q;function D(x,W,K){U(x);const ne=X.list();return ne.length?ne.forEach(ye=>ye(x,W,K)):console.error(x),Promise.reject(x)}function re(){return q&&c.value!==_r?Promise.resolve():new Promise((x,W)=>{z.add([x,W])})}function U(x){return q||(q=!x,N(),z.list().forEach(([W,K])=>x?K(x):W()),z.reset()),x}function ie(x,W,K,ne){const{scrollBehavior:ye}=e;if(!Ks||!ye)return Promise.resolve();const b=!K&&RI(Mm(x.fullPath,0))||(ne||!K)&&history.state&&history.state.scroll||null;return vt().then(()=>ye(x,W,b)).then(w=>w&&II(w)).catch(w=>D(w,x,W))}const ae=x=>s.go(x);let ue;const Ce=new Set,Ne={currentRoute:c,listening:!0,addRoute:h,removeRoute:p,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:m,resolve:g,options:e,push:S,replace:M,go:ae,back:()=>ae(-1),forward:()=>ae(1),beforeEach:i.add,beforeResolve:o.add,afterEach:a.add,onError:X.add,isReady:re,install(x){x.component("RouterLink",rx),x.component("RouterView",ax),x.config.globalProperties.$router=Ne,Object.defineProperty(x.config.globalProperties,"$route",{enumerable:!0,get:()=>Ut(c)}),Ks&&!ue&&c.value===_r&&(ue=!0,S(s.location).catch(ne=>{}));const W={};for(const ne in _r)Object.defineProperty(W,ne,{get:()=>c.value[ne],enumerable:!0});x.provide(Sl,Ne),x.provide(jf,Py(W)),x.provide(vd,c);const K=x.unmount;Ce.add(x),x.unmount=function(){Ce.delete(x),Ce.size<1&&(l=_r,P&&P(),P=null,c.value=_r,ue=!1,q=!1),K()}}};function He(x){return x.reduce((W,K)=>W.then(()=>I(K)),Promise.resolve())}return Ne}function f4(){return Oe(Sl)}function h4(e){return Oe(jf)}const lx=e=>{const t={};Object.entries(Object.assign({"/src/layouts/default.vue":()=>yt(()=>import("./default-hOQ1mU83.js"),__vite__mapDeps([0,1]),import.meta.url)})).forEach(([s,i])=>{let o=s.replace("/src/layouts/","").replace(".vue","");t[o]=i});function r(s,i=!0){return s.map(o=>{var a,c,l,d,u,f;if(((a=o.children)==null?void 0:a.length)>0&&(o.children=r(o.children,!1)),i){if(!o.component&&((c=o.children)==null?void 0:c.find(p=>{var m;return(p.path===""||p.path==="/")&&((m=p.meta)==null?void 0:m.isLayout)})))return o;if(((l=o.meta)==null?void 0:l.layout)!==!1)return{path:o.path,component:t[((d=o.meta)==null?void 0:d.layout)||"default"],children:o.path==="/"?[o]:[{...o,path:""}],meta:{isLayout:!0}}}return(u=o.meta)!=null&&u.layout?{path:o.path,component:t[(f=o.meta)==null?void 0:f.layout],children:[{...o,path:""}],meta:{isLayout:!0}}:o})}return r(e)},ux=[{path:"/",name:"/",component:()=>yt(()=>import("./index-DSbPboXi.js"),__vite__mapDeps([2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39]),import.meta.url)},{path:"/404",name:"/404",component:()=>yt(()=>import("./404-BwZffhEb.js"),__vite__mapDeps([40,14,35]),import.meta.url)},{path:"/authorize",name:"/authorize",component:()=>yt(()=>import("./authorize-DZSBaQ17.js"),__vite__mapDeps([41,14,35]),import.meta.url)},{path:"/CacheManagement",name:"/CacheManagement",component:()=>yt(()=>import("./CacheManagement-BChWOOfR.js"),__vite__mapDeps([42,6,7,37,38,12,13,8,9,14,35]),import.meta.url)},{path:"/cses2wakeup",name:"/cses2wakeup",component:()=>yt(()=>import("./cses2wakeup-BmsqkMFZ.js"),__vite__mapDeps([43,14,6,7,44,33,22,19,15,16,20,34,21,12,13,23,45,10,11,17,18,8,9,35,46]),import.meta.url)},{path:"/debug",name:"/debug",component:()=>yt(()=>import("./debug-BSi7gIU2.js"),__vite__mapDeps([47,35,48]),import.meta.url)},{path:"/debug-init",name:"/debug-init",component:()=>yt(()=>import("./debug-init-B-H9lXTX.js"),__vite__mapDeps([49,4,5,14,36,15,16,35]),import.meta.url)},{path:"/debug-socket",name:"/debug-socket",component:()=>yt(()=>import("./debug-socket-DzG1kWef.js"),__vite__mapDeps([50,27,5,32,14,12,13,15,16,17,18,35]),import.meta.url)},{path:"/exam-editor",children:[{path:":id",name:"/exam-editor/[id]",component:()=>yt(()=>import("./_id_-B9b-OTX9.js"),__vite__mapDeps([51,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,29,30,35]),import.meta.url)}]},{path:"/examschedule",name:"/examschedule",component:()=>yt(()=>import("./examschedule-BBjKpA2N.js"),__vite__mapDeps([52,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,35,53]),import.meta.url)},{path:"/list",children:[{path:"",name:"/list/",component:()=>yt(()=>import("./index-D07_YIdP.js"),__vite__mapDeps([54,4,5,29,30,15,16,35]),import.meta.url)},{path:":id",name:"/list/[id]",component:()=>yt(()=>import("./_id_-DyC3JCaR.js"),__vite__mapDeps([55,4,5,29,30,15,16,22,19,20,12,13,17,18,35]),import.meta.url)}]},{path:"/settings",name:"/settings",component:()=>yt(()=>import("./settings-D372VNSO.js"),__vite__mapDeps([56,28,29,30,15,16,21,22,19,20,12,13,23,31,4,5,6,7,14,35,33,34,17,18,36,37,38,44,45,24,25,57]),import.meta.url)},{path:"/socket-debugger",name:"/socket-debugger",component:()=>yt(()=>import("./socket-debugger-DtAcJK1B.js"),__vite__mapDeps([58,27,5,14,12,13,15,16,17,18,19,20,6,7,35,59]),import.meta.url)}],El=cx({history:HI("./"),routes:lx(ux)});El.onError((e,t)=>{var n,r;(r=(n=e==null?void 0:e.message)==null?void 0:n.includes)!=null&&r.call(n,"Failed to fetch dynamically imported module")?localStorage.getItem("vuetify:dynamic-reload")?console.error("Dynamic import error, reloading page did not fix it",e):(console.log("Reloading page to fix dynamic import error"),localStorage.setItem("vuetify:dynamic-reload","true"),location.assign(t.fullPath)):console.error(e)});El.isReady().then(()=>{localStorage.removeItem("vuetify:dynamic-reload")});function dx(e){e.use(Xk).use(El).use(nI)}async function fx(){return typeof Notification<"u"&&Notification.requestPermission?await Notification.requestPermission()==="granted"?(console.log("通知权限已授予"),!0):(console.warn("通知权限被拒绝"),!1):(console.warn("浏览器不支持通知权限请求"),!1)}async function hx(){var e;try{return(e=navigator.storage)!=null&&e.persist?await navigator.storage.persist():!1}catch(t){return console.warn("请求持久性存储失败:",t),!1}}const fu="Classworks_settings",jm={"server.domain":"https://kv-service.houlang.cloud","server.siteKey":""},wr={"device.uuid":{type:"string",default:"00000000-0000-4000-8000-000000000000",description:"设备唯一标识符",icon:"mdi-identifier"},"storage.persistOnLoad":{type:"boolean",default:!0,description:"是否在页面加载时自动请求持久性存储",icon:"mdi-database-sync"},"display.emptySubjectDisplay":{type:"string",default:"card",validate:e=>["card","button"].includes(e),description:"空科目的显示方式",icon:"mdi-card-outline"},"hitokoto.enabled":{type:"boolean",default:!0,description:"启用一言",icon:"mdi-comment-quote"},"hitokoto.refreshInterval":{type:"number",default:300,description:"刷新时间(秒,0为不自动刷新)",icon:"mdi-timer-refresh"},"display.dynamicSort":{type:"boolean",default:!0,description:"是否启用动态排序",icon:"mdi-sort-variant"},"display.showRandomButton":{type:"boolean",default:!1,description:"是否显示随机点人按钮",icon:"mdi-shuffle-variant"},"display.showFullscreenButton":{type:"boolean",default:!0,description:"是否显示全屏按钮",icon:"mdi-fullscreen"},"display.cardHoverEffect":{type:"boolean",default:!0,description:"是否启用卡片悬浮效果",icon:"mdi-gesture-tap"},"display.enhancedTouchMode":{type:"boolean",default:!0,description:"是否启用增强触摸模式",icon:"mdi-gesture-tap-button"},"display.showAntiScreenBurnCard":{type:"boolean",default:!1,description:"是否显示防烧屏忽悠卡片",icon:"mdi-monitor-shimmer"},"display.showListCard":{type:"boolean",default:!0,description:"是否显示列表卡片",icon:"mdi-list-box"},"display.showExamScheduleButton":{type:"boolean",default:!0,description:"是否显示考试看板",icon:"mdi-calendar-check"},"display.showQuickTools":{type:"boolean",default:!0,description:"是否显示快捷键盘",icon:"mdi-dialpad"},"display.forceDesktopMode":{type:"boolean",default:!1,description:"强制使用一体机UI模式",icon:"mdi-monitor"},"display.lateStudentsArePresent":{type:"boolean",default:!1,description:"将迟到人数算入出勤人数",icon:"mdi-clock-fast"},"server.domain":{type:"string",default:"",validate:e=>{if(!e)return!0;try{return new URL(e),!0}catch(t){return console.error("域名格式无效:",t),!1}},description:"后端服务器域名",icon:"mdi-web"},"server.classNumber":{type:"string",default:"高三八班",validate:e=>/.*/.test(e),description:"班级编号",icon:"mdi-account-group"},"server.siteKey":{type:"string",default:"",description:"网站令牌",icon:"mdi-key-chain"},"server.kvToken":{type:"string",default:"",description:"KV授权令牌",icon:"mdi-shield-key"},"server.authDomain":{type:"string",default:"https://kv.houlang.cloud",description:"授权服务器域名",icon:"mdi-shield-account",validate:e=>{if(!e)return!0;try{return new URL(e),!0}catch(t){return console.error("授权域名格式无效:",t),!1}}},"server.provider":{type:"string",default:"classworkscloud",validate:e=>["kv-local","kv-server","classworkscloud"].includes(e),description:"数据提供者",icon:"mdi-database"},"refresh.auto":{type:"boolean",default:!1,description:"是否启用自动刷新",icon:"mdi-refresh-auto"},"refresh.interval":{type:"number",default:300,validate:e=>e>=10&&e<=3600,description:"自动刷新间隔(秒)",icon:"mdi-timer-outline"},"font.size":{type:"number",default:28,validate:e=>e>=16&&e<=100,description:"字体大小",icon:"mdi-format-size"},"edit.autoSave":{type:"boolean",default:!0,description:"是否启用自动保存",icon:"mdi-content-save-outline"},"edit.blockNonTodayAutoSave":{type:"boolean",default:!0,description:"禁止自动保存非当天数据",icon:"mdi-calendar-lock"},"edit.refreshBeforeEdit":{type:"boolean",default:!0,description:"编辑前是否自动刷新",icon:"mdi-refresh"},"edit.confirmNonTodaySave":{type:"boolean",default:!0,description:"保存非当天数据需确认",icon:"mdi-calendar-alert"},"edit.blockPastDataEdit":{type:"boolean",default:!1,description:"禁止编辑过往数据",icon:"mdi-lock-clock"},"edit.autoSavePromptText":{type:"string",default:"喵?喵呜!",description:"自动保存模式提示文本",icon:"mdi-text-box-outline"},"edit.manualSavePromptText":{type:"string",default:"写完后点击上传谢谢喵",description:"手动保存模式提示文本",icon:"mdi-text-box-outline"},"developer.enabled":{type:"boolean",default:!1,description:"是否启用开发者选项",icon:"mdi-developer-board"},"developer.showDebugConfig":{type:"boolean",default:!1,description:"是否显示调试配置",icon:"mdi-bug-outline"},"developer.disableMessageLog":{type:"boolean",default:!1,description:"禁用消息日志记录",requireDeveloper:!0,icon:"mdi-message-off-outline"},"message.showSidebar":{type:"boolean",default:!0,description:"是否显示消息记录侧栏",requireDeveloper:!0,icon:"mdi-message-text-outline"},"message.maxActiveMessages":{type:"number",default:5,validate:e=>e>=1&&e<=10,description:"同时显示的最大消息数量",requireDeveloper:!0,icon:"mdi-message-badge-outline"},"message.timeout":{type:"number",default:5e3,validate:e=>e>=1e3&&e<=3e4,description:"消息自动关闭时间(毫秒)",requireDeveloper:!0,icon:"mdi-timer-sand"},"message.saveHistory":{type:"boolean",default:!0,description:"是否保存消息历史记录",requireDeveloper:!0,icon:"mdi-history"},"theme.mode":{type:"string",default:"dark",validate:e=>["light","dark"].includes(e),description:"主题模式",icon:"mdi-theme-light-dark"},"notification.singleSound":{type:"string",default:"Teams 默认.mp3",description:"单次通知铃声",icon:"mdi-bell-ring"},"notification.urgentSound":{type:"string",default:"Teams 默认通话铃.mp3",description:"持续通知铃声",icon:"mdi-bell-alert"},"randomPicker.enabled":{type:"boolean",default:!0,description:"是否启用随机点名功能",icon:"mdi-account-question"},"randomPicker.animation":{type:"boolean",default:!0,description:"是否启用随机点名动画效果",icon:"mdi-animation-play"},"randomPicker.defaultCount":{type:"number",default:1,validate:e=>e>=1&&e,description:"默认抽取人数",icon:"mdi-counter"},"randomPicker.excludeAbsent":{type:"boolean",default:!0,description:"是否排除请假学生",icon:"mdi-account-off"},"randomPicker.excludeLate":{type:"boolean",default:!1,description:"是否排除迟到学生",icon:"mdi-clock-alert"},"randomPicker.excludeExcluded":{type:"boolean",default:!0,description:"是否排除不参与学生",icon:"mdi-account-cancel"},"randomPicker.mode":{type:"string",default:"name",validate:e=>["name","number"].includes(e),description:"随机点名模式",icon:"mdi-format-list-numbered"},"randomPicker.maxNumber":{type:"number",default:60,validate:e=>e>=1&&e,description:"学号模式最大值",icon:"mdi-numeric"},"randomPicker.minNumber":{type:"number",default:1,validate:e=>e>=1&&e,description:"学号模式最小值",icon:"mdi-numeric-negative-1"},"pwa.hideInstallCard":{type:"boolean",default:!1,description:"不显示PWA安装卡片",icon:"mdi-download-off"}};class px{constructor(){this.settingsCache=null,this.isInitialized=!1}init(){this.isInitialized||(this.loadSettings(),this.isInitialized=!0)}loadSettings(){this.settingsCache={};try{const t=typeof localStorage<"u"?localStorage.getItem(fu):null;t&&(this.settingsCache=JSON.parse(t))}catch(t){console.error("加载设置失败:",t)}for(const[t,n]of Object.entries(wr))t in this.settingsCache||(this.settingsCache[t]=n.default);return this.settingsCache}saveSettings(){if(!(typeof localStorage>"u"))try{localStorage.setItem(fu,JSON.stringify(this.settingsCache))}catch(t){console.error("保存设置失败:",t)}}getSetting(t){this.isInitialized||this.init();const n=wr[t];if(!n)return console.warn(`未定义的设置项: ${t}`),null;if(n.requireDeveloper&&!this.settingsCache["developer.enabled"])return n.default;if(this.settingsCache["server.provider"]==="classworkscloud"&&jm[t]!==void 0)return jm[t];const r=this.settingsCache[t];return r!==void 0?r:n.default}setSetting(t,n){this.isInitialized||this.init();const r=wr[t];if(!r)return console.warn(`未定义的设置项: ${t}`),!1;if(r.requireDeveloper&&!this.settingsCache["developer.enabled"])return console.warn(`设置项 ${t} 需要启用开发者选项`),!1;try{const s=this.settingsCache[t];if(typeof n!==r.type&&(n=r.type==="boolean"?!!n:r.type==="number"?Number(n):String(n)),r.validate&&!r.validate(n))return console.warn(`设置项 ${t} 的值无效`),!1;this.settingsCache[t]=n,this.saveSettings(),this.logSettingsChange(t,s,n);const i=r.legacyKey;return i&&typeof localStorage<"u"&&localStorage.setItem(i,n.toString()),!0}catch(s){return console.error(`设置配置项 ${t} 失败:`,s),!1}}logSettingsChange(t,n,r){this.settingsCache["developer.enabled"]&&this.settingsCache["developer.showDebugConfig"]&&console.log(`[Settings] ${t}:`,{old:n,new:r,time:new Date().toLocaleTimeString()})}resetSetting(t){this.isInitialized||this.init();const n=wr[t];if(!n){console.warn(`未定义的设置项: ${t}`);return}this.settingsCache[t]=n.default,this.saveSettings()}resetAllSettings(){this.settingsCache={};for(const[t,n]of Object.entries(wr))this.settingsCache[t]=n.default;this.saveSettings()}watchSettings(t){if(typeof window>"u")return()=>{};const n=r=>{r.key===fu&&(this.settingsCache=JSON.parse(r.newValue),t(this.settingsCache))};return window.addEventListener("storage",n),()=>window.removeEventListener("storage",n)}getSettingDefinition(t){return wr[t]||null}exportSettingsAsKeyValue(){this.isInitialized||this.init();const t={};for(const n in wr)t[n]=this.getSetting(n);return t}}const Gr=new px;typeof window<"u"&&Gr.init();const zf=e=>Gr.getSetting(e),mx=(e,t)=>Gr.setSetting(e,t),gx=e=>Gr.resetSetting(e),vx=e=>Gr.watchSettings(e),yx=e=>Gr.getSettingDefinition(e),_x=()=>Gr.exportSettingsAsKeyValue(),p4=Object.freeze(Object.defineProperty({__proto__:null,SettingsManager:Gr,exportSettingsAsKeyValue:_x,getSetting:zf,getSettingDefinition:yx,requestNotificationPermission:fx,requestPersistentStorage:hx,resetSetting:gx,setSetting:mx,settingsDefinitions:wr,watchSettings:vx},Symbol.toStringTag,{value:"Module"}));class bx{constructor(){this.logs=[]}async addLog(t){return this.logs.push(t),this.logs.length>100&&this.logs.shift(),!0}async getLogs(t=20){return this.logs.slice(-t).reverse()}}const Ja=new bx,Ln=[];let Za=null,Pn=null;const no={SUCCESS:"success",ERROR:"error",INFO:"info",WARNING:"warning"},Sx={timeout:3e3,showSnackbar:!0,addToLog:!0};async function Pa(e,t,n="",r={}){const s={...Sx,...r},i={id:Date.now()+Math.random(),type:e,title:t,content:n.substring(0,500),timestamp:new Date};if(s.addToLog)try{for(await Ja.addLog(i),Ln.unshift(i);Ln.length>zf("message.maxActiveMessages");)Ln.pop();Pn==null||Pn(Ln)}catch(o){console.error("保存日志失败:",o)}return s.showSnackbar&&(Za==null||Za(i)),i}function Ex(e,t){let n=null;return function(...r){n&&clearTimeout(n),n=setTimeout(()=>{e.apply(this,r)},t)}}const Ys={install:e=>{e.config.globalProperties.$message={success:(t,n,r)=>Pa(no.SUCCESS,t,n,r),error:(t,n,r)=>Pa(no.ERROR,t,n,r),info:(t,n,r)=>Pa(no.INFO,t,n,r),warning:(t,n,r)=>Pa(no.WARNING,t,n,r)}},onSnackbar:e=>{Za=e},onLog:e=>{Pn=e},getMessages:async()=>{try{return await Ja.getLogs()}catch(e){return console.error("获取日志失败:",e),[...Ln]}},clearMessages:async()=>{try{await Ja.clearLogs(),Ln.length=0,Pn==null||Pn(Ln)}catch(e){console.error("清除日志失败:",e)}},MessageType:no,markAsRead:()=>{},deleteMessage:async e=>{try{await Ja.deleteLog(e);const t=Ln.findIndex(n=>n.id===e);t!==-1&&Ln.splice(t,1),Pn==null||Pn(Ln)}catch(t){console.error("删除消息失败:",t)}},getUnreadCount:()=>0,debounce:Ex},Ob=(e,t)=>{const n=e.__vccOpts||e;for(const[r,s]of t)n[r]=s;return n},Fi=le({border:[Boolean,Number,String]},"border");function $i(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();return{borderClasses:j(()=>{const r=e.border;return r===!0||r===""?`${t}--border`:typeof r=="string"||r===0?String(r).split(" ").map(s=>`border-${s}`):[]})}}const wx=[null,"default","comfortable","compact"],Ms=le({density:{type:String,default:"default",validator:e=>wx.includes(e)}},"density");function Bi(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();return{densityClasses:ee(()=>`${t}--density-${e.density}`)}}const sa=le({elevation:{type:[Number,String],validator(e){const t=parseInt(e);return!isNaN(t)&&t>=0&&t<=24}}},"elevation");function ia(e){return{elevationClasses:ee(()=>{const n=Je(e)?e.value:e.elevation;return n==null?[]:[`elevation-${n}`]})}}const mr=le({rounded:{type:[Boolean,Number,String],default:void 0},tile:Boolean},"rounded");function gr(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();return{roundedClasses:j(()=>{const r=Je(e)?e.value:e.rounded,s=Je(e)?!1:e.tile,i=[];if(s||r===!1)i.push("rounded-0");else if(r===!0||r==="")i.push(`${t}--rounded`);else if(typeof r=="string"||r===0)for(const o of String(r).split(" "))i.push(`rounded-${o}`);return i})}}const Mt=le({tag:{type:[String,Object,Function],default:"div"}},"tag");function qf(e){return Lf(()=>{const{class:t,style:n}=Cx(e);return{colorClasses:t,colorStyles:n}})}function bi(e){const{colorClasses:t,colorStyles:n}=qf(()=>({text:bt(e)}));return{textColorClasses:t,textColorStyles:n}}function li(e){const{colorClasses:t,colorStyles:n}=qf(()=>({background:bt(e)}));return{backgroundColorClasses:t,backgroundColorStyles:n}}function Cx(e){const t=bt(e),n=[],r={};if(t.background)if(cd(t.background)){if(r.backgroundColor=t.background,!t.text&&gT(t.background)){const s=Fn(t.background);if(s.a==null||s.a===1){const i=Q_(s);r.color=i,r.caretColor=i}}}else n.push(`bg-${t.background}`);return t.text&&(cd(t.text)?(r.color=t.text,r.caretColor=t.text):n.push(`text-${t.text}`)),{class:n,style:r}}const Tx=["elevated","flat","tonal","outlined","text","plain"];function oa(e,t){return se(Ze,null,[e&&se("span",{key:"overlay",class:Me(`${t}__overlay`)},null),se("span",{key:"underlay",class:Me(`${t}__underlay`)},null)])}const Ps=le({color:String,variant:{type:String,default:"elevated",validator:e=>Tx.includes(e)}},"variant");function aa(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();const n=ee(()=>{const{variant:i}=bt(e);return`${t}--variant-${i}`}),{colorClasses:r,colorStyles:s}=qf(()=>{const{variant:i,color:o}=bt(e);return{[["elevated","flat"].includes(i)?"background":"text"]:o}});return{colorClasses:r,colorStyles:s,variantClasses:n}}const Lb=le({baseColor:String,divided:Boolean,direction:{type:String,default:"horizontal"},...Fi(),...ct(),...Ms(),...sa(),...mr(),...Mt(),...tn(),...Ps()},"VBtnGroup"),zm=De()({name:"VBtnGroup",props:Lb(),setup(e,t){let{slots:n}=t;const{themeClasses:r}=mn(e),{densityClasses:s}=Bi(e),{borderClasses:i}=$i(e),{elevationClasses:o}=ia(e),{roundedClasses:a}=gr(e);vl({VBtn:{height:ee(()=>e.direction==="horizontal"?"auto":null),baseColor:ee(()=>e.baseColor),color:ee(()=>e.color),density:ee(()=>e.density),flat:!0,variant:ee(()=>e.variant)}}),tt(()=>B(e.tag,{class:Me(["v-btn-group",`v-btn-group--${e.direction}`,{"v-btn-group--divided":e.divided},r.value,i.value,s.value,o.value,a.value,e.class]),style:Xe(e.style)},n))}}),kx=le({modelValue:{type:null,default:void 0},multiple:Boolean,mandatory:[Boolean,String],max:Number,selectedClass:String,disabled:Boolean},"group"),Ix=le({value:null,disabled:Boolean,selectedClass:String},"group-item");function xx(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;const r=mt("useGroupItem");if(!r)throw new Error("[Vuetify] useGroupItem composable must be used inside a component setup function");const s=Jy();At(Symbol.for(`${t.description}:id`),s);const i=Oe(t,null);if(!i){if(!n)return i;throw new Error(`[Vuetify] Could not find useGroup injection with symbol ${t.description}`)}const o=ee(()=>e.value),a=j(()=>!!(i.disabled.value||e.disabled));function c(){i==null||i.register({id:s,value:o,disabled:a},r)}function l(){i==null||i.unregister(s)}c(),Tn(()=>l());const d=j(()=>i.isSelected(s)),u=j(()=>i.items.value[0].id===s),f=j(()=>i.items.value[i.items.value.length-1].id===s),h=j(()=>d.value&&[i.selectedClass.value,e.selectedClass]);return Se(d,p=>{r.emit("group:selected",{value:p})},{flush:"sync"}),{id:s,isSelected:d,isFirst:u,isLast:f,toggle:()=>i.select(s,!d.value),select:p=>i.select(s,p),selectedClass:h,value:o,disabled:a,group:i,register:c,unregister:l}}function Rx(e,t){let n=!1;const r=pt([]),s=Zn(e,"modelValue",[],f=>f===void 0?[]:Nb(r,f===null?[null]:Of(f)),f=>{const h=Mx(r,f);return e.multiple?h:h[0]}),i=mt("useGroup");function o(f,h){const p=f,m=Symbol.for(`${t.description}:id`),g=Zs(m,i==null?void 0:i.vnode).indexOf(h);Ut(p.value)===void 0&&(p.value=g,p.useIndexAsValue=!0),g>-1?r.splice(g,0,p):r.push(p)}function a(f){if(n)return;c();const h=r.findIndex(p=>p.id===f);r.splice(h,1)}function c(){const f=r.find(h=>!h.disabled);f&&e.mandatory==="force"&&!s.value.length&&(s.value=[f.id])}jr(()=>{c()}),Tn(()=>{n=!0}),wf(()=>{for(let f=0;fm.id===f);if(!(h&&(p!=null&&p.disabled)))if(e.multiple){const m=s.value.slice(),v=m.findIndex(y=>y===f),g=~v;if(h=h??!g,g&&e.mandatory&&m.length<=1||!g&&e.max!=null&&m.length+1>e.max)return;v<0&&h?m.push(f):v>=0&&!h&&m.splice(v,1),s.value=m}else{const m=s.value.includes(f);if(e.mandatory&&m||!m&&!h)return;s.value=h??!m?[f]:[]}}function d(f){if(e.multiple,s.value.length){const h=s.value[0],p=r.findIndex(g=>g.id===h);let m=(p+f)%r.length,v=r[m];for(;v.disabled&&m!==p;)m=(m+f)%r.length,v=r[m];if(v.disabled)return;s.value=[r[m].id]}else{const h=r.find(p=>!p.disabled);h&&(s.value=[h.id])}}const u={register:o,unregister:a,selected:s,select:l,disabled:ee(()=>e.disabled),prev:()=>d(r.length-1),next:()=>d(1),isSelected:f=>s.value.includes(f),selectedClass:ee(()=>e.selectedClass),items:ee(()=>r),getItemIndex:f=>Ax(r,f)};return At(t,u),u}function Ax(e,t){const n=Nb(e,[t]);return n.length?e.findIndex(r=>r.id===n[0]):-1}function Nb(e,t){const n=[];return t.forEach(r=>{const s=e.find(o=>gs(r,o.value)),i=e[r];(s==null?void 0:s.value)!==void 0?n.push(s.id):i!=null&&i.useIndexAsValue&&n.push(i.id)}),n}function Mx(e,t){const n=[];return t.forEach(r=>{const s=e.findIndex(i=>i.id===r);if(~s){const i=e[s];n.push(i.value!==void 0?i.value:s)}}),n}const Db=Symbol.for("vuetify:v-btn-toggle"),Px=le({...Lb(),...kx()},"VBtnToggle"),m4=De()({name:"VBtnToggle",props:Px(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const{isSelected:r,next:s,prev:i,select:o,selected:a}=Rx(e,Db);return tt(()=>{const c=zm.filterProps(e);return B(zm,Qe({class:["v-btn-toggle",e.class]},c,{style:e.style}),{default:()=>{var l;return[(l=n.default)==null?void 0:l.call(n,{isSelected:r,next:s,prev:i,select:o,selected:a})]}})}),{next:s,prev:i,select:o}}}),Ox=le({defaults:Object,disabled:Boolean,reset:[Number,String],root:[Boolean,String],scoped:Boolean},"VDefaultsProvider"),un=De(!1)({name:"VDefaultsProvider",props:Ox(),setup(e,t){let{slots:n}=t;const{defaults:r,disabled:s,reset:i,root:o,scoped:a}=_f(e);return vl(r,{reset:i,root:o,scoped:a,disabled:s}),()=>{var c;return(c=n.default)==null?void 0:c.call(n)}}}),Lx=["x-small","small","default","large","x-large"],wl=le({size:{type:[String,Number],default:"default"}},"size");function Cl(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();return Lf(()=>{const n=e.size;let r,s;return Ic(Lx,n)?r=`${t}--size-${n}`:n&&(s={width:me(n),height:me(n)}),{sizeClasses:r,sizeStyles:s}})}const Nx=le({color:String,disabled:Boolean,start:Boolean,end:Boolean,icon:Et,opacity:[String,Number],...ct(),...wl(),...Mt({tag:"i"}),...tn()},"VIcon"),Hn=De()({name:"VIcon",props:Nx(),setup(e,t){let{attrs:n,slots:r}=t;const s=be(),{themeClasses:i}=hb(),{iconData:o}=NT(()=>s.value||e.icon),{sizeClasses:a}=Cl(e),{textColorClasses:c,textColorStyles:l}=bi(()=>e.color);return tt(()=>{var f,h;const d=(f=r.default)==null?void 0:f.call(r);d&&(s.value=(h=W_(d).filter(p=>p.type===ea&&p.children&&typeof p.children=="string")[0])==null?void 0:h.children);const u=!!(n.onClick||n.onClickOnce);return B(o.value.component,{tag:e.tag,icon:o.value.icon,class:Me(["v-icon","notranslate",i.value,a.value,c.value,{"v-icon--clickable":u,"v-icon--disabled":e.disabled,"v-icon--start":e.start,"v-icon--end":e.end},e.class]),style:Xe([{"--v-icon-opacity":e.opacity},a.value?void 0:{fontSize:me(e.size),height:me(e.size),width:me(e.size)},l.value,e.style]),role:u?"button":void 0,"aria-hidden":!u,tabindex:u?e.disabled?-1:0:void 0},{default:()=>[d]})}),{}}});function Fb(e,t){const n=we(),r=be(!1);if(Af){const s=new IntersectionObserver(i=>{r.value=!!i.find(o=>o.isIntersecting)},t);Ct(()=>{s.disconnect()}),Se(n,(i,o)=>{o&&(s.unobserve(o),r.value=!1),i&&s.observe(i)},{flush:"post"})}return{intersectionRef:n,isIntersecting:r}}const Dx=le({bgColor:String,color:String,indeterminate:[Boolean,String],rounded:Boolean,modelValue:{type:[Number,String],default:0},rotate:{type:[Number,String],default:0},width:{type:[Number,String],default:4},...ct(),...wl(),...Mt({tag:"div"}),...tn()},"VProgressCircular"),Fx=De()({name:"VProgressCircular",props:Dx(),setup(e,t){let{slots:n}=t;const r=20,s=2*Math.PI*r,i=we(),{themeClasses:o}=mn(e),{sizeClasses:a,sizeStyles:c}=Cl(e),{textColorClasses:l,textColorStyles:d}=bi(()=>e.color),{textColorClasses:u,textColorStyles:f}=bi(()=>e.bgColor),{intersectionRef:h,isIntersecting:p}=Fb(),{resizeRef:m,contentRect:v}=Uf(),g=ee(()=>or(parseFloat(e.modelValue),0,100)),y=ee(()=>Number(e.width)),_=ee(()=>c.value?Number(e.size):v.value?v.value.width:Math.max(y.value,32)),S=ee(()=>r/(1-y.value/_.value)*2),M=ee(()=>y.value/_.value*S.value),R=ee(()=>{const C=(100-g.value)/100*s;return e.rounded&&g.value>0&&g.value<100?me(Math.min(s-.01,C+M.value)):me(C)}),E=j(()=>{const C=Number(e.rotate);return e.rounded?C+M.value/2/s*360:C});return hn(()=>{h.value=i.value,m.value=i.value}),tt(()=>B(e.tag,{ref:i,class:Me(["v-progress-circular",{"v-progress-circular--indeterminate":!!e.indeterminate,"v-progress-circular--visible":p.value,"v-progress-circular--disable-shrink":e.indeterminate&&(e.indeterminate==="disable-shrink"||Oo())},o.value,a.value,l.value,e.class]),style:Xe([c.value,d.value,e.style]),role:"progressbar","aria-valuemin":"0","aria-valuemax":"100","aria-valuenow":e.indeterminate?void 0:g.value},{default:()=>[se("svg",{style:{transform:`rotate(calc(-90deg + ${E.value}deg))`},xmlns:"http://www.w3.org/2000/svg",viewBox:`0 0 ${S.value} ${S.value}`},[se("circle",{class:Me(["v-progress-circular__underlay",u.value]),style:Xe(f.value),fill:"transparent",cx:"50%",cy:"50%",r,"stroke-width":M.value,"stroke-dasharray":s,"stroke-dashoffset":0},null),se("circle",{class:"v-progress-circular__overlay",fill:"transparent",cx:"50%",cy:"50%",r,"stroke-width":M.value,"stroke-dasharray":s,"stroke-dashoffset":R.value,"stroke-linecap":e.rounded?"round":void 0},null)]),n.default&&se("div",{class:"v-progress-circular__content"},[n.default({value:g.value})])]})),{}}}),Hi=le({height:[Number,String],maxHeight:[Number,String],maxWidth:[Number,String],minHeight:[Number,String],minWidth:[Number,String],width:[Number,String]},"dimension");function Vi(e){return{dimensionStyles:j(()=>{const n={},r=me(e.height),s=me(e.maxHeight),i=me(e.maxWidth),o=me(e.minHeight),a=me(e.minWidth),c=me(e.width);return r!=null&&(n.height=r),s!=null&&(n.maxHeight=s),i!=null&&(n.maxWidth=i),o!=null&&(n.minHeight=o),a!=null&&(n.minWidth=a),c!=null&&(n.width=c),n})}}const qm={center:"center",top:"bottom",bottom:"top",left:"right",right:"left"},Tl=le({location:String},"location");function Gf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2?arguments[2]:void 0;const{isRtl:r}=na();return{locationStyles:j(()=>{if(!e.location)return{};const{side:i,align:o}=ad(e.location.split(" ").length>1?e.location:`${e.location} center`,r.value);function a(l){return n?n(l):0}const c={};return i!=="center"&&(t?c[qm[i]]=`calc(100% - ${a(i)}px)`:c[i]=0),o!=="center"?t?c[qm[o]]=`calc(100% - ${a(o)}px)`:c[o]=0:(i==="center"?c.top=c.left="50%":c[{top:"left",bottom:"left",left:"top",right:"top"}[i]]="50%",c.transform={top:"translateX(-50%)",bottom:"translateX(-50%)",left:"translateY(-50%)",right:"translateY(-50%)",center:"translate(-50%, -50%)"}[i]),c})}}const $x=le({chunkCount:{type:[Number,String],default:null},chunkWidth:{type:[Number,String],default:null},chunkGap:{type:[Number,String],default:4}},"chunks");function Bx(e,t){const n=ee(()=>!!e.chunkCount||!!e.chunkWidth),r=j(()=>{const a=bt(t);if(!a)return 0;if(!e.chunkCount)return Number(e.chunkWidth);const c=Number(e.chunkCount);return(a-Number(e.chunkGap)*(c-1))/c}),s=ee(()=>Number(e.chunkGap)),i=j(()=>{if(!n.value)return{};const a=me(s.value),c=me(r.value);return{maskRepeat:"repeat-x",maskImage:`linear-gradient(90deg, #000, #000 ${c}, transparent ${c}, transparent)`,maskSize:`calc(${c} + ${a}) 100%`}});function o(a){const c=bt(t);if(!c)return a;const l=100*s.value/c,d=100*(r.value+s.value)/c,u=Math.floor((a+l)/d);return or(0,u*d-l/2,100)}return{hasChunks:n,chunksMaskStyles:i,snapValueToChunk:o}}const Hx=le({absolute:Boolean,active:{type:Boolean,default:!0},bgColor:String,bgOpacity:[Number,String],bufferValue:{type:[Number,String],default:0},bufferColor:String,bufferOpacity:[Number,String],clickable:Boolean,color:String,height:{type:[Number,String],default:4},indeterminate:Boolean,max:{type:[Number,String],default:100},modelValue:{type:[Number,String],default:0},opacity:[Number,String],reverse:Boolean,stream:Boolean,striped:Boolean,roundedBar:Boolean,...$x(),...ct(),...Tl({location:"top"}),...mr(),...Mt(),...tn()},"VProgressLinear"),$b=De()({name:"VProgressLinear",props:Hx(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const r=we(),s=Zn(e,"modelValue"),{isRtl:i,rtlClasses:o}=na(),{themeClasses:a}=mn(e),{locationStyles:c}=Gf(e),{textColorClasses:l,textColorStyles:d}=bi(()=>e.color),{backgroundColorClasses:u,backgroundColorStyles:f}=li(()=>e.bgColor||e.color),{backgroundColorClasses:h,backgroundColorStyles:p}=li(()=>e.bufferColor||e.bgColor||e.color),{backgroundColorClasses:m,backgroundColorStyles:v}=li(()=>e.color),{roundedClasses:g}=gr(e),{intersectionRef:y,isIntersecting:_}=Fb(),S=j(()=>parseFloat(e.max)),M=j(()=>parseFloat(e.height)),R=j(()=>or(parseFloat(e.bufferValue)/S.value*100,0,100)),E=j(()=>or(parseFloat(s.value)/S.value*100,0,100)),C=j(()=>i.value!==e.reverse),I=j(()=>e.indeterminate?"fade-transition":"slide-x-transition"),A=be(0),{hasChunks:O,chunksMaskStyles:T,snapValueToChunk:P}=Bx(e,A);Di(O,()=>{const{resizeRef:q}=Uf(D=>A.value=D[0].contentRect.width);hn(()=>q.value=r.value)});const N=j(()=>O.value?P(R.value):R.value),z=j(()=>O.value?P(E.value):E.value);function X(q){if(!y.value)return;const{left:D,right:re,width:U}=y.value.getBoundingClientRect(),ie=C.value?U-q.clientX+(re-U):q.clientX-D;s.value=Math.round(ie/U*S.value)}return hn(()=>{y.value=r.value}),tt(()=>B(e.tag,{ref:r,class:Me(["v-progress-linear",{"v-progress-linear--absolute":e.absolute,"v-progress-linear--active":e.active&&_.value,"v-progress-linear--reverse":C.value,"v-progress-linear--rounded":e.rounded,"v-progress-linear--rounded-bar":e.roundedBar,"v-progress-linear--striped":e.striped,"v-progress-linear--clickable":e.clickable},g.value,a.value,o.value,e.class]),style:Xe([{bottom:e.location==="bottom"?0:void 0,top:e.location==="top"?0:void 0,height:e.active?me(M.value):0,"--v-progress-linear-height":me(M.value),...e.absolute?c.value:{}},T.value,e.style]),role:"progressbar","aria-hidden":e.active?"false":"true","aria-valuemin":"0","aria-valuemax":e.max,"aria-valuenow":e.indeterminate?void 0:Math.min(parseFloat(s.value),S.value),onClick:e.clickable&&X},{default:()=>[e.stream&&se("div",{key:"stream",class:Me(["v-progress-linear__stream",l.value]),style:{...d.value,[C.value?"left":"right"]:me(-M.value),borderTop:`${me(M.value/2)} dotted`,opacity:parseFloat(e.bufferOpacity),top:`calc(50% - ${me(M.value/4)})`,width:me(100-R.value,"%"),"--v-progress-linear-stream-to":me(M.value*(C.value?1:-1))}},null),se("div",{class:Me(["v-progress-linear__background",u.value]),style:Xe([f.value,{opacity:parseFloat(e.bgOpacity),width:e.stream?0:void 0}])},null),se("div",{class:Me(["v-progress-linear__buffer",h.value]),style:Xe([p.value,{opacity:parseFloat(e.bufferOpacity),width:me(N.value,"%")}])},null),B($r,{name:I.value},{default:()=>[e.indeterminate?se("div",{class:"v-progress-linear__indeterminate"},[["long","short"].map(q=>se("div",{key:q,class:Me(["v-progress-linear__indeterminate",q,m.value]),style:Xe(v.value)},null))]):se("div",{class:Me(["v-progress-linear__determinate",m.value]),style:Xe([v.value,{width:me(z.value,"%")}])},null)]}),n.default&&se("div",{class:"v-progress-linear__content"},[n.default({value:E.value,buffer:R.value})])]})),{}}}),Bb=le({loading:[Boolean,String]},"loader");function Hb(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();return{loaderClasses:ee(()=>({[`${t}--loading`]:e.loading}))}}function Vx(e,t){var r;let{slots:n}=t;return se("div",{class:Me(`${e.name}__loader`)},[((r=n.default)==null?void 0:r.call(n,{color:e.color,isActive:e.active}))||B($b,{absolute:e.absolute,active:e.active,color:e.color,height:"2",indeterminate:!0},null)])}const Ux=["static","relative","fixed","absolute","sticky"],Kf=le({position:{type:String,validator:e=>Ux.includes(e)}},"position");function Yf(e){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:qr();return{positionClasses:ee(()=>e.position?`${t}--${e.position}`:void 0)}}function Wx(){const e=mt("useRoute");return j(()=>{var t;return(t=e==null?void 0:e.proxy)==null?void 0:t.$route})}function jx(){var e,t;return(t=(e=mt("useRouter"))==null?void 0:e.proxy)==null?void 0:t.$router}function Xf(e,t){var u,f;const n=i_("RouterLink"),r=ee(()=>!!(e.href||e.to)),s=j(()=>(r==null?void 0:r.value)||Yp(t,"click")||Yp(e,"click"));if(typeof n=="string"||!("useLink"in n)){const h=ee(()=>e.href);return{isLink:r,isRouterLink:ee(()=>!1),isClickable:s,href:h,linkProps:pt({href:h})}}const i=n.useLink({to:ee(()=>e.to||""),replace:ee(()=>e.replace)}),o=j(()=>e.to?i:void 0),a=Wx(),c=j(()=>{var h,p,m;return o.value?e.exact?a.value?((m=o.value.isExactActive)==null?void 0:m.value)&&gs(o.value.route.value.query,a.value.query):((p=o.value.isExactActive)==null?void 0:p.value)??!1:((h=o.value.isActive)==null?void 0:h.value)??!1:!1}),l=j(()=>{var h;return e.to?(h=o.value)==null?void 0:h.route.value.href:e.href});return{isLink:r,isRouterLink:ee(()=>!!e.to),isClickable:s,isActive:c,route:(u=o.value)==null?void 0:u.route,navigate:(f=o.value)==null?void 0:f.navigate,href:l,linkProps:pt({href:l,"aria-current":ee(()=>c.value?"page":void 0),"aria-disabled":ee(()=>e.disabled&&r.value?"true":void 0),tabindex:ee(()=>e.disabled&&r.value?"-1":void 0)})}}const Jf=le({href:String,replace:Boolean,to:[String,Object],exact:Boolean},"router");let hu=!1;function zx(e,t){let n=!1,r,s;et&&(e!=null&&e.beforeEach)&&(vt(()=>{window.addEventListener("popstate",i),r=e.beforeEach((o,a,c)=>{hu?n?t(c):c():setTimeout(()=>n?t(c):c()),hu=!0}),s=e==null?void 0:e.afterEach(()=>{hu=!1})}),Ct(()=>{window.removeEventListener("popstate",i),r==null||r(),s==null||s()}));function i(o){var a;(a=o.state)!=null&&a.replaced||(n=!0,setTimeout(()=>n=!1))}}function qx(e,t){Se(()=>{var n;return(n=e.isActive)==null?void 0:n.value},n=>{e.isLink.value&&n!=null&&t&&vt(()=>{t(n)})},{immediate:!0})}const yd=Symbol("rippleStop"),Gx=80;function Gm(e,t){e.style.transform=t,e.style.webkitTransform=t}function _d(e){return e.constructor.name==="TouchEvent"}function Vb(e){return e.constructor.name==="KeyboardEvent"}const Kx=function(e,t){var u;let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=0,s=0;if(!Vb(e)){const f=t.getBoundingClientRect(),h=_d(e)?e.touches[e.touches.length-1]:e;r=h.clientX-f.left,s=h.clientY-f.top}let i=0,o=.3;(u=t._ripple)!=null&&u.circle?(o=.15,i=t.clientWidth/2,i=n.center?i:i+Math.sqrt((r-i)**2+(s-i)**2)/4):i=Math.sqrt(t.clientWidth**2+t.clientHeight**2)/2;const a=`${(t.clientWidth-i*2)/2}px`,c=`${(t.clientHeight-i*2)/2}px`,l=n.center?a:`${r-i}px`,d=n.center?c:`${s-i}px`;return{radius:i,scale:o,x:l,y:d,centerX:a,centerY:c}},Oc={show(e,t){var h;let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};if(!((h=t==null?void 0:t._ripple)!=null&&h.enabled))return;const r=document.createElement("span"),s=document.createElement("span");r.appendChild(s),r.className="v-ripple__container",n.class&&(r.className+=` ${n.class}`);const{radius:i,scale:o,x:a,y:c,centerX:l,centerY:d}=Kx(e,t,n),u=`${i*2}px`;s.className="v-ripple__animation",s.style.width=u,s.style.height=u,t.appendChild(r);const f=window.getComputedStyle(t);f&&f.position==="static"&&(t.style.position="relative",t.dataset.previousPosition="static"),s.classList.add("v-ripple__animation--enter"),s.classList.add("v-ripple__animation--visible"),Gm(s,`translate(${a}, ${c}) scale3d(${o},${o},${o})`),s.dataset.activated=String(performance.now()),requestAnimationFrame(()=>{requestAnimationFrame(()=>{s.classList.remove("v-ripple__animation--enter"),s.classList.add("v-ripple__animation--in"),Gm(s,`translate(${l}, ${d}) scale3d(1,1,1)`)})})},hide(e){var i;if(!((i=e==null?void 0:e._ripple)!=null&&i.enabled))return;const t=e.getElementsByClassName("v-ripple__animation");if(t.length===0)return;const n=Array.from(t).findLast(o=>!o.dataset.isHiding);if(n)n.dataset.isHiding="true";else return;const r=performance.now()-Number(n.dataset.activated),s=Math.max(250-r,0);setTimeout(()=>{n.classList.remove("v-ripple__animation--in"),n.classList.add("v-ripple__animation--out"),setTimeout(()=>{var a;e.getElementsByClassName("v-ripple__animation").length===1&&e.dataset.previousPosition&&(e.style.position=e.dataset.previousPosition,delete e.dataset.previousPosition),((a=n.parentNode)==null?void 0:a.parentNode)===e&&e.removeChild(n.parentNode)},300)},s)}};function Ub(e){return typeof e>"u"||!!e}function Ho(e){const t={},n=e.currentTarget;if(!(!(n!=null&&n._ripple)||n._ripple.touched||e[yd])){if(e[yd]=!0,_d(e))n._ripple.touched=!0,n._ripple.isTouch=!0;else if(n._ripple.isTouch)return;if(t.center=n._ripple.centered||Vb(e),n._ripple.class&&(t.class=n._ripple.class),_d(e)){if(n._ripple.showTimerCommit)return;n._ripple.showTimerCommit=()=>{Oc.show(e,n,t)},n._ripple.showTimer=window.setTimeout(()=>{var r;(r=n==null?void 0:n._ripple)!=null&&r.showTimerCommit&&(n._ripple.showTimerCommit(),n._ripple.showTimerCommit=null)},Gx)}else Oc.show(e,n,t)}}function Lc(e){e[yd]=!0}function Jt(e){const t=e.currentTarget;if(t!=null&&t._ripple){if(window.clearTimeout(t._ripple.showTimer),e.type==="touchend"&&t._ripple.showTimerCommit){t._ripple.showTimerCommit(),t._ripple.showTimerCommit=null,t._ripple.showTimer=window.setTimeout(()=>{Jt(e)});return}window.setTimeout(()=>{t._ripple&&(t._ripple.touched=!1)}),Oc.hide(t)}}function Wb(e){const t=e.currentTarget;t!=null&&t._ripple&&(t._ripple.showTimerCommit&&(t._ripple.showTimerCommit=null),window.clearTimeout(t._ripple.showTimer))}let Vo=!1;function Yx(e,t){!Vo&&t.includes(e.key)&&(Vo=!0,Ho(e))}function jb(e){Vo=!1,Jt(e)}function zb(e){Vo&&(Vo=!1,Jt(e))}function qb(e,t,n){const{value:r,modifiers:s}=t,i=Ub(r);i||Oc.hide(e),e._ripple=e._ripple??{},e._ripple.enabled=i,e._ripple.centered=s.center,e._ripple.circle=s.circle;const o=id(r)?r:{};o.class&&(e._ripple.class=o.class);const a=o.keys??["Enter","Space"];if(e._ripple.keyDownHandler=c=>Yx(c,a),i&&!n){if(s.stop){e.addEventListener("touchstart",Lc,{passive:!0}),e.addEventListener("mousedown",Lc);return}e.addEventListener("touchstart",Ho,{passive:!0}),e.addEventListener("touchend",Jt,{passive:!0}),e.addEventListener("touchmove",Wb,{passive:!0}),e.addEventListener("touchcancel",Jt),e.addEventListener("mousedown",Ho),e.addEventListener("mouseup",Jt),e.addEventListener("mouseleave",Jt),e.addEventListener("keydown",e._ripple.keyDownHandler),e.addEventListener("keyup",jb),e.addEventListener("blur",zb),e.addEventListener("dragstart",Jt,{passive:!0})}else!i&&n&&Gb(e)}function Gb(e){var t;e.removeEventListener("touchstart",Lc),e.removeEventListener("mousedown",Lc),e.removeEventListener("touchstart",Ho),e.removeEventListener("touchend",Jt),e.removeEventListener("touchmove",Wb),e.removeEventListener("touchcancel",Jt),e.removeEventListener("mousedown",Ho),e.removeEventListener("mouseup",Jt),e.removeEventListener("mouseleave",Jt),(t=e._ripple)!=null&&t.keyDownHandler&&e.removeEventListener("keydown",e._ripple.keyDownHandler),e.removeEventListener("keyup",jb),e.removeEventListener("blur",zb),e.removeEventListener("dragstart",Jt)}function Xx(e,t){qb(e,t,!1)}function Jx(e){Gb(e),delete e._ripple}function Zx(e,t){if(t.value===t.oldValue)return;const n=Ub(t.oldValue);qb(e,t,n)}const Uo={mounted:Xx,unmounted:Jx,updated:Zx},Qx=le({active:{type:Boolean,default:void 0},activeColor:String,baseColor:String,symbol:{type:null,default:Db},flat:Boolean,icon:[Boolean,String,Function,Object],prependIcon:Et,appendIcon:Et,block:Boolean,readonly:Boolean,slim:Boolean,stacked:Boolean,spaced:String,ripple:{type:[Boolean,Object],default:!0},text:{type:[String,Number,Boolean],default:void 0},...Fi(),...ct(),...Ms(),...Hi(),...sa(),...Ix(),...Bb(),...Tl(),...Kf(),...mr(),...Jf(),...wl(),...Mt({tag:"button"}),...tn(),...Ps({variant:"elevated"})},"VBtn"),Kb=De()({name:"VBtn",props:Qx(),emits:{"group:selected":e=>!0},setup(e,t){let{attrs:n,slots:r}=t;const{themeClasses:s}=mn(e),{borderClasses:i}=$i(e),{densityClasses:o}=Bi(e),{dimensionStyles:a}=Vi(e),{elevationClasses:c}=ia(e),{loaderClasses:l}=Hb(e),{locationStyles:d}=Gf(e),{positionClasses:u}=Yf(e),{roundedClasses:f}=gr(e),{sizeClasses:h,sizeStyles:p}=Cl(e),m=xx(e,e.symbol,!1),v=Xf(e,n),g=j(()=>{var O;return e.active!==void 0?e.active:v.isRouterLink.value?(O=v.isActive)==null?void 0:O.value:m==null?void 0:m.isSelected.value}),y=ee(()=>g.value?e.activeColor??e.color:e.color),_=j(()=>{var T,P;return{color:(m==null?void 0:m.isSelected.value)&&(!v.isLink.value||((T=v.isActive)==null?void 0:T.value))||!m||((P=v.isActive)==null?void 0:P.value)?y.value??e.baseColor:e.baseColor,variant:e.variant}}),{colorClasses:S,colorStyles:M,variantClasses:R}=aa(_),E=j(()=>(m==null?void 0:m.disabled.value)||e.disabled),C=ee(()=>e.variant==="elevated"&&!(e.disabled||e.flat||e.border)),I=j(()=>{if(!(e.value===void 0||typeof e.value=="symbol"))return Object(e.value)===e.value?JSON.stringify(e.value,null,0):e.value});function A(O){var T;E.value||v.isLink.value&&(O.metaKey||O.ctrlKey||O.shiftKey||O.button!==0||n.target==="_blank")||(v.isRouterLink.value?(T=v.navigate)==null||T.call(v,O):m==null||m.toggle())}return qx(v,m==null?void 0:m.select),tt(()=>{const O=v.isLink.value?"a":e.tag,T=!!(e.prependIcon||r.prepend),P=!!(e.appendIcon||r.append),N=!!(e.icon&&e.icon!==!0);return ws(B(O,Qe(v.linkProps,{type:O==="a"?void 0:"button",class:["v-btn",m==null?void 0:m.selectedClass.value,{"v-btn--active":g.value,"v-btn--block":e.block,"v-btn--disabled":E.value,"v-btn--elevated":C.value,"v-btn--flat":e.flat,"v-btn--icon":!!e.icon,"v-btn--loading":e.loading,"v-btn--readonly":e.readonly,"v-btn--slim":e.slim,"v-btn--stacked":e.stacked},e.spaced?["v-btn--spaced",`v-btn--spaced-${e.spaced}`]:[],s.value,i.value,S.value,o.value,c.value,l.value,u.value,f.value,h.value,R.value,e.class],style:[M.value,a.value,d.value,p.value,e.style],"aria-busy":e.loading?!0:void 0,disabled:E.value&&O!=="a"||void 0,tabindex:e.loading||e.readonly?-1:void 0,onClick:A,value:I.value}),{default:()=>{var z;return[oa(!0,"v-btn"),!e.icon&&T&&se("span",{key:"prepend",class:"v-btn__prepend"},[r.prepend?B(un,{key:"prepend-defaults",disabled:!e.prependIcon,defaults:{VIcon:{icon:e.prependIcon}}},r.prepend):B(Hn,{key:"prepend-icon",icon:e.prependIcon},null)]),se("span",{class:"v-btn__content","data-no-activator":""},[!r.default&&N?B(Hn,{key:"content-icon",icon:e.icon},null):B(un,{key:"content-defaults",disabled:!N,defaults:{VIcon:{icon:e.icon}}},{default:()=>{var X;return[((X=r.default)==null?void 0:X.call(r))??bn(e.text)]}})]),!e.icon&&P&&se("span",{key:"append",class:"v-btn__append"},[r.append?B(un,{key:"append-defaults",disabled:!e.appendIcon,defaults:{VIcon:{icon:e.appendIcon}}},r.append):B(Hn,{key:"append-icon",icon:e.appendIcon},null)]),!!e.loading&&se("span",{key:"loader",class:"v-btn__loader"},[((z=r.loader)==null?void 0:z.call(r))??B(Fx,{color:typeof e.loading=="boolean"?void 0:e.loading,indeterminate:!0,width:"2"},null)])]}}),[[Uo,!E.value&&e.ripple,"",{center:!!e.icon}]])}),{group:m}}});function pu(e,t){return{x:e.x+t.x,y:e.y+t.y}}function eR(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Km(e,t){if(e.side==="top"||e.side==="bottom"){const{side:n,align:r}=e,s=r==="left"?0:r==="center"?t.width/2:r==="right"?t.width:r,i=n==="top"?0:n==="bottom"?t.height:n;return pu({x:s,y:i},t)}else if(e.side==="left"||e.side==="right"){const{side:n,align:r}=e,s=n==="left"?0:n==="right"?t.width:n,i=r==="top"?0:r==="center"?t.height/2:r==="bottom"?t.height:r;return pu({x:s,y:i},t)}return pu({x:t.width/2,y:t.height/2},t)}const Yb={static:rR,connected:iR},tR=le({locationStrategy:{type:[String,Function],default:"static",validator:e=>typeof e=="function"||e in Yb},location:{type:String,default:"bottom"},origin:{type:String,default:"auto"},offset:[Number,String,Array],stickToTarget:Boolean,viewportMargin:{type:[Number,String],default:12}},"VOverlay-location-strategies");function nR(e,t){const n=we({}),r=we();et&&Di(()=>!!(t.isActive.value&&e.locationStrategy),a=>{var c,l;Se(()=>e.locationStrategy,a),Ct(()=>{window.removeEventListener("resize",s),visualViewport==null||visualViewport.removeEventListener("resize",i),visualViewport==null||visualViewport.removeEventListener("scroll",o),r.value=void 0}),window.addEventListener("resize",s,{passive:!0}),visualViewport==null||visualViewport.addEventListener("resize",i,{passive:!0}),visualViewport==null||visualViewport.addEventListener("scroll",o,{passive:!0}),typeof e.locationStrategy=="function"?r.value=(c=e.locationStrategy(t,e,n))==null?void 0:c.updateLocation:r.value=(l=Yb[e.locationStrategy](t,e,n))==null?void 0:l.updateLocation});function s(a){var c;(c=r.value)==null||c.call(r,a)}function i(a){var c;(c=r.value)==null||c.call(r,a)}function o(a){var c;(c=r.value)==null||c.call(r,a)}return{contentStyles:n,updateLocation:r}}function rR(){}function sR(e,t){const n=K_(e);return t?n.x+=parseFloat(e.style.right||0):n.x-=parseFloat(e.style.left||0),n.y-=parseFloat(e.style.top||0),n}function iR(e,t,n){(Array.isArray(e.target.value)||OT(e.target.value))&&Object.assign(n.value,{position:"fixed",top:0,[e.isRtl.value?"right":"left"]:0});const{preferredAnchor:s,preferredOrigin:i}=Lf(()=>{const g=ad(t.location,e.isRtl.value),y=t.origin==="overlap"?g:t.origin==="auto"?ru(g):ad(t.origin,e.isRtl.value);return g.side===y.side&&g.align===su(y).align?{preferredAnchor:Jp(g),preferredOrigin:Jp(y)}:{preferredAnchor:g,preferredOrigin:y}}),[o,a,c,l]=["minWidth","minHeight","maxWidth","maxHeight"].map(g=>j(()=>{const y=parseFloat(t[g]);return isNaN(y)?1/0:y})),d=j(()=>{if(Array.isArray(t.offset))return t.offset;if(typeof t.offset=="string"){const g=t.offset.split(" ").map(parseFloat);return g.length<2&&g.push(0),g}return typeof t.offset=="number"?[t.offset,0]:[0,0]});let u=!1,f=-1;const h=new GC(4),p=new ResizeObserver(()=>{if(!u)return;if(requestAnimationFrame(y=>{y!==f&&h.clear(),requestAnimationFrame(_=>{f=_})}),h.isFull){const y=h.values();if(gs(y.at(-1),y.at(-3))&&!gs(y.at(-1),y.at(-2)))return}const g=v();g&&h.push(g.flipped)});let m=new ln({x:0,y:0,width:0,height:0});Se(e.target,(g,y)=>{y&&!Array.isArray(y)&&p.unobserve(y),Array.isArray(g)?gs(g,y)||v():g&&p.observe(g)},{immediate:!0}),Se(e.contentEl,(g,y)=>{y&&p.unobserve(y),g&&p.observe(g)},{immediate:!0}),Ct(()=>{p.disconnect()});function v(){if(u=!1,requestAnimationFrame(()=>u=!0),!e.target.value||!e.contentEl.value)return;(Array.isArray(e.target.value)||e.target.value.offsetParent||e.target.value.getClientRects().length)&&(m=G_(e.target.value));const g=sR(e.contentEl.value,e.isRtl.value),y=Rc(e.contentEl.value),_=Number(t.viewportMargin);y.length||(y.push(document.documentElement),e.contentEl.value.style.top&&e.contentEl.value.style.left||(g.x-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-x")||0),g.y-=parseFloat(document.documentElement.style.getPropertyValue("--v-body-scroll-y")||0)));const S=y.reduce((P,N)=>{const z=eT(N);return P?new ln({x:Math.max(P.left,z.left),y:Math.max(P.top,z.top),width:Math.min(P.right,z.right)-Math.max(P.left,z.left),height:Math.min(P.bottom,z.bottom)-Math.max(P.top,z.top)}):z},void 0);t.stickToTarget?(S.x+=Math.min(_,m.x),S.y+=Math.min(_,m.y),S.width=Math.max(S.width-_*2,m.x+m.width-_),S.height=Math.max(S.height-_*2,m.y+m.height-_)):(S.x+=_,S.y+=_,S.width-=_*2,S.height-=_*2);let M={anchor:s.value,origin:i.value};function R(P){const N=new ln(g),z=Km(P.anchor,m),X=Km(P.origin,N);let{x:q,y:D}=eR(z,X);switch(P.anchor.side){case"top":D-=d.value[0];break;case"bottom":D+=d.value[0];break;case"left":q-=d.value[0];break;case"right":q+=d.value[0];break}switch(P.anchor.align){case"top":D-=d.value[1];break;case"bottom":D+=d.value[1];break;case"left":q-=d.value[1];break;case"right":q+=d.value[1];break}return N.x+=q,N.y+=D,N.width=Math.min(N.width,c.value),N.height=Math.min(N.height,l.value),{overflows:Qp(N,S),x:q,y:D}}let E=0,C=0;const I={x:0,y:0},A={x:!1,y:!1};let O=-1;for(;!(O++>10);){const{x:P,y:N,overflows:z}=R(M);E+=P,C+=N,g.x+=P,g.y+=N;{const X=Zp(M.anchor),q=z.x.before||z.x.after,D=z.y.before||z.y.after;let re=!1;if(["x","y"].forEach(U=>{if(U==="x"&&q&&!A.x||U==="y"&&D&&!A.y){const ie={anchor:{...M.anchor},origin:{...M.origin}},ae=U==="x"?X==="y"?su:ru:X==="y"?ru:su;ie.anchor=ae(ie.anchor),ie.origin=ae(ie.origin);const{overflows:ue}=R(ie);(ue[U].before<=z[U].before&&ue[U].after<=z[U].after||ue[U].before+ue[U].after<(z[U].before+z[U].after)/2)&&(M=ie,re=A[U]=!0)}}),re)continue}z.x.before&&(E+=z.x.before,g.x+=z.x.before),z.x.after&&(E-=z.x.after,g.x-=z.x.after),z.y.before&&(C+=z.y.before,g.y+=z.y.before),z.y.after&&(C-=z.y.after,g.y-=z.y.after);{const X=Qp(g,S);I.x=S.width-X.x.before-X.x.after,I.y=S.height-X.y.before-X.y.after,E+=X.x.before,g.x+=X.x.before,C+=X.y.before,g.y+=X.y.before}break}const T=Zp(M.anchor);return Object.assign(n.value,{"--v-overlay-anchor-origin":`${M.anchor.side} ${M.anchor.align}`,transformOrigin:`${M.origin.side} ${M.origin.align}`,top:me(mu(C)),left:e.isRtl.value?void 0:me(mu(E)),right:e.isRtl.value?me(mu(-E)):void 0,minWidth:me(T==="y"?Math.min(o.value,m.width):o.value),maxWidth:me(Ym(or(I.x,o.value===1/0?0:o.value,c.value))),maxHeight:me(Ym(or(I.y,a.value===1/0?0:a.value,l.value)))}),{available:I,contentBox:g,flipped:A}}return Se(()=>[s.value,i.value,t.offset,t.minWidth,t.minHeight,t.maxWidth,t.maxHeight],()=>v()),vt(()=>{const g=v();if(!g)return;const{available:y,contentBox:_}=g;_.height>y.y&&requestAnimationFrame(()=>{v(),requestAnimationFrame(()=>{v()})})}),{updateLocation:v}}function mu(e){return Math.round(e*devicePixelRatio)/devicePixelRatio}function Ym(e){return Math.ceil(e*devicePixelRatio)/devicePixelRatio}let bd=!0;const Nc=[];function oR(e){!bd||Nc.length?(Nc.push(e),Sd()):(bd=!1,e(),Sd())}let Xm=-1;function Sd(){cancelAnimationFrame(Xm),Xm=requestAnimationFrame(()=>{const e=Nc.shift();e&&e(),Nc.length?Sd():bd=!0})}const Qa={none:null,close:lR,block:uR,reposition:dR},aR=le({scrollStrategy:{type:[String,Function],default:"block",validator:e=>typeof e=="function"||e in Qa}},"VOverlay-scroll-strategies");function cR(e,t){if(!et)return;let n;hn(async()=>{n==null||n.stop(),t.isActive.value&&e.scrollStrategy&&(n=Es(),await new Promise(r=>setTimeout(r)),n.active&&n.run(()=>{var r;typeof e.scrollStrategy=="function"?e.scrollStrategy(t,e,n):(r=Qa[e.scrollStrategy])==null||r.call(Qa,t,e,n)}))}),Ct(()=>{n==null||n.stop()})}function lR(e){function t(n){e.isActive.value=!1}Xb(Zf(e.target.value,e.contentEl.value),t)}function uR(e,t){var a;const n=(a=e.root.value)==null?void 0:a.offsetParent,r=Zf(e.target.value,e.contentEl.value),s=[...new Set([...Rc(r,t.contained?n:void 0),...Rc(e.contentEl.value,t.contained?n:void 0)])].filter(c=>!c.classList.contains("v-overlay-scroll-blocked")),i=window.innerWidth-document.documentElement.offsetWidth,o=(c=>$f(c)&&c)(n||document.documentElement);o&&e.root.value.classList.add("v-overlay--scroll-blocked"),s.forEach((c,l)=>{c.style.setProperty("--v-body-scroll-x",me(-c.scrollLeft)),c.style.setProperty("--v-body-scroll-y",me(-c.scrollTop)),c!==document.documentElement&&c.style.setProperty("--v-scrollbar-offset",me(i)),c.classList.add("v-overlay-scroll-blocked")}),Ct(()=>{s.forEach((c,l)=>{const d=parseFloat(c.style.getPropertyValue("--v-body-scroll-x")),u=parseFloat(c.style.getPropertyValue("--v-body-scroll-y")),f=c.style.scrollBehavior;c.style.scrollBehavior="auto",c.style.removeProperty("--v-body-scroll-x"),c.style.removeProperty("--v-body-scroll-y"),c.style.removeProperty("--v-scrollbar-offset"),c.classList.remove("v-overlay-scroll-blocked"),c.scrollLeft=-d,c.scrollTop=-u,c.style.scrollBehavior=f}),o&&e.root.value.classList.remove("v-overlay--scroll-blocked")})}function dR(e,t,n){let r=!1,s=-1,i=-1;function o(a){oR(()=>{var d,u;const c=performance.now();(u=(d=e.updateLocation).value)==null||u.call(d,a),r=(performance.now()-c)/(1e3/60)>2})}i=(typeof requestIdleCallback>"u"?a=>a():requestIdleCallback)(()=>{n.run(()=>{Xb(Zf(e.target.value,e.contentEl.value),a=>{r?(cancelAnimationFrame(s),s=requestAnimationFrame(()=>{s=requestAnimationFrame(()=>{o(a)})})):o(a)})})}),Ct(()=>{typeof cancelIdleCallback<"u"&&cancelIdleCallback(i),cancelAnimationFrame(s)})}function Zf(e,t){return Array.isArray(e)?document.elementsFromPoint(...e).find(n=>!(t!=null&&t.contains(n))):e??t}function Xb(e,t){const n=[document,...Rc(e)];n.forEach(r=>{r.addEventListener("scroll",t,{passive:!0})}),Ct(()=>{n.forEach(r=>{r.removeEventListener("scroll",t)})})}const fR=Symbol.for("vuetify:v-menu"),hR=le({closeDelay:[Number,String],openDelay:[Number,String]},"delay");function pR(e,t){let n=()=>{};function r(o,a){n==null||n();const c=o?e.openDelay:e.closeDelay,l=Math.max((a==null?void 0:a.minDelay)??0,Number(c??0));return new Promise(d=>{n=JC(l,()=>{t==null||t(o),d(o)})})}function s(){return r(!0)}function i(o){return r(!1,o)}return{clearDelay:n,runOpenDelay:s,runCloseDelay:i}}const mR=le({target:[String,Object],activator:[String,Object],activatorProps:{type:Object,default:()=>({})},openOnClick:{type:Boolean,default:void 0},openOnHover:Boolean,openOnFocus:{type:Boolean,default:void 0},closeOnContentClick:Boolean,...hR()},"VOverlay-activator");function gR(e,t){let{isActive:n,isTop:r,contentEl:s}=t;const i=mt("useActivator"),o=we();let a=!1,c=!1,l=!0;const d=j(()=>e.openOnFocus||e.openOnFocus==null&&e.openOnHover),u=j(()=>e.openOnClick||e.openOnClick==null&&!e.openOnHover&&!d.value),{runOpenDelay:f,runCloseDelay:h}=pR(e,C=>{C===(e.openOnHover&&a||d.value&&c)&&!(e.openOnHover&&n.value&&!r.value)&&(n.value!==C&&(l=!0),n.value=C)}),p=we(),m={onClick:C=>{C.stopPropagation(),o.value=C.currentTarget||C.target,n.value||(p.value=[C.clientX,C.clientY]),n.value=!n.value},onMouseenter:C=>{a=!0,o.value=C.currentTarget||C.target,f()},onMouseleave:C=>{a=!1,h()},onFocus:C=>{YC(C.target,":focus-visible")!==!1&&(c=!0,C.stopPropagation(),o.value=C.currentTarget||C.target,f())},onBlur:C=>{c=!1,C.stopPropagation(),h({minDelay:1})}},v=j(()=>{const C={};return u.value&&(C.onClick=m.onClick),e.openOnHover&&(C.onMouseenter=m.onMouseenter,C.onMouseleave=m.onMouseleave),d.value&&(C.onFocus=m.onFocus,C.onBlur=m.onBlur),C}),g=j(()=>{const C={};if(e.openOnHover&&(C.onMouseenter=()=>{a=!0,f()},C.onMouseleave=()=>{a=!1,h()}),d.value&&(C.onFocusin=I=>{I.target.matches(":focus-visible")&&(c=!0,f())},C.onFocusout=()=>{c=!1,h({minDelay:1})}),e.closeOnContentClick){const I=Oe(fR,null);C.onClick=()=>{n.value=!1,I==null||I.closeParents()}}return C}),y=j(()=>{const C={};return e.openOnHover&&(C.onMouseenter=()=>{l&&(a=!0,l=!1,f())},C.onMouseleave=()=>{a=!1,h()}),C});Se(r,C=>{var I;C&&(e.openOnHover&&!a&&(!d.value||!c)||d.value&&!c&&(!e.openOnHover||!a))&&!((I=s.value)!=null&&I.contains(document.activeElement))&&(n.value=!1)}),Se(n,C=>{C||setTimeout(()=>{p.value=void 0})},{flush:"post"});const _=od();hn(()=>{_.value&&vt(()=>{o.value=_.el})});const S=od(),M=j(()=>e.target==="cursor"&&p.value?p.value:S.value?S.el:Jb(e.target,i)||o.value),R=j(()=>Array.isArray(M.value)?void 0:M.value);let E;return Se(()=>!!e.activator,C=>{C&&et?(E=Es(),E.run(()=>{vR(e,i,{activatorEl:o,activatorEvents:v})})):E&&E.stop()},{flush:"post",immediate:!0}),Ct(()=>{E==null||E.stop()}),{activatorEl:o,activatorRef:_,target:M,targetEl:R,targetRef:S,activatorEvents:v,contentEvents:g,scrimEvents:y}}function vR(e,t,n){let{activatorEl:r,activatorEvents:s}=n;Se(()=>e.activator,(c,l)=>{if(l&&c!==l){const d=a(l);d&&o(d)}c&&vt(()=>i())},{immediate:!0}),Se(()=>e.activatorProps,()=>{i()}),Ct(()=>{o()});function i(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:a(),l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;c&&tT(c,Qe(s.value,l))}function o(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:a(),l=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.activatorProps;c&&nT(c,Qe(s.value,l))}function a(){let c=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.activator;const l=Jb(c,t);return r.value=(l==null?void 0:l.nodeType)===Node.ELEMENT_NODE?l:void 0,r.value}}function Jb(e,t){var r,s;if(!e)return;let n;if(e==="parent"){let i=(s=(r=t==null?void 0:t.proxy)==null?void 0:r.$el)==null?void 0:s.parentNode;for(;i!=null&&i.hasAttribute("data-no-activator");)i=i.parentNode;n=i}else typeof e=="string"?n=document.querySelector(e):"$el"in e?n=e.$el:n=e;return n}const yR=le({retainFocus:Boolean,captureFocus:Boolean,disableInitialFocus:Boolean},"focusTrap"),ec=new Map;let Jm=0;function Zm(e){const t=document.activeElement;if(e.key!=="Tab"||!t)return;const n=Array.from(ec.values()).filter(l=>{var f;let{isActive:d,contentEl:u}=l;return d.value&&((f=u.value)==null?void 0:f.contains(t))}).map(l=>l.contentEl.value);let r,s=t.parentElement;for(;s;){if(n.includes(s)){r=s;break}s=s.parentElement}if(!r)return;const i=yo(r).filter(l=>l.tabIndex>=0);if(!i.length)return;const o=document.activeElement;if(i.length===1&&i[0].classList.contains("v-list")&&i[0].contains(o)){e.preventDefault();return}const a=i[0],c=i[i.length-1];e.shiftKey&&(o===a||a.classList.contains("v-list")&&a.contains(o))&&(e.preventDefault(),c.focus()),!e.shiftKey&&(o===c||c.classList.contains("v-list")&&c.contains(o))&&(e.preventDefault(),a.focus())}function _R(e,t){let{isActive:n,localTop:r,activatorEl:s,contentEl:i}=t;const o=Symbol("trap");let a=!1,c=-1;async function l(){a=!0,c=window.setTimeout(()=>{a=!1},100)}async function d(h){var v;const p=h.relatedTarget,m=h.target;document.removeEventListener("pointerdown",l),document.removeEventListener("keydown",u),await vt(),n.value&&!a&&p!==m&&i.value&&bt(r)&&![document,i.value].includes(m)&&!i.value.contains(m)&&((v=yo(i.value)[0])==null||v.focus())}function u(h){if(h.key==="Tab"&&(document.removeEventListener("keydown",u),n.value&&i.value&&h.target&&!i.value.contains(h.target))){const p=yo(document.documentElement);if(h.shiftKey&&h.target===p.at(0)||!h.shiftKey&&h.target===p.at(-1)){const m=yo(i.value);m.length>0&&(h.preventDefault(),m[0].focus())}}}const f=ee(()=>n.value&&e.captureFocus&&!e.disableInitialFocus);et&&(Se(()=>e.retainFocus,h=>{h?ec.set(o,{isActive:n,contentEl:i}):ec.delete(o)},{immediate:!0}),Se(f,h=>{h?(document.addEventListener("pointerdown",l),document.addEventListener("focusin",d,{once:!0}),document.addEventListener("keydown",u)):(document.removeEventListener("pointerdown",l),document.removeEventListener("focusin",d),document.removeEventListener("keydown",u))},{immediate:!0}),Jm++<1&&document.addEventListener("keydown",Zm)),Ct(()=>{ec.delete(o),clearTimeout(c),document.removeEventListener("pointerdown",l),document.removeEventListener("focusin",d),document.removeEventListener("keydown",u),--Jm<1&&document.removeEventListener("keydown",Zm)})}function bR(){if(!et)return be(!1);const{ssr:e}=Ok();if(e){const t=be(!1);return jr(()=>{t.value=!0}),t}else return be(!0)}const SR=le({eager:Boolean},"lazy");function ER(e,t){const n=be(!1),r=ee(()=>n.value||e.eager||t.value);Se(t,()=>n.value=!0);function s(){e.eager||(n.value=!1)}return{isBooted:n,hasContent:r,onAfterLeave:s}}function Qf(){const t=mt("useScopeId").vnode.scopeId;return{scopeId:t?{[t]:""}:void 0}}const Qm=Symbol.for("vuetify:stack"),ro=pt([]);function wR(e,t,n){const r=mt("useStack"),s=!n,i=Oe(Qm,void 0),o=pt({activeChildren:new Set});At(Qm,o);const a=be(Number(bt(t)));Di(e,()=>{var u;const d=(u=ro.at(-1))==null?void 0:u[1];a.value=d?d+10:Number(bt(t)),s&&ro.push([r.uid,a.value]),i==null||i.activeChildren.add(r.uid),Ct(()=>{if(s){const f=de(ro).findIndex(h=>h[0]===r.uid);ro.splice(f,1)}i==null||i.activeChildren.delete(r.uid)})});const c=be(!0);return s&&hn(()=>{var u;const d=((u=ro.at(-1))==null?void 0:u[0])===r.uid;setTimeout(()=>c.value=d)}),{globalTop:hi(c),localTop:ee(()=>!o.activeChildren.size),stackStyles:ee(()=>({zIndex:a.value}))}}function CR(e){return{teleportTarget:j(()=>{const n=e();if(n===!0||!et)return;const r=n===!1?document.body:typeof n=="string"?document.querySelector(n):n;if(r==null)return;let s=[...r.children].find(i=>i.matches(".v-overlay-container"));return s||(s=document.createElement("div"),s.className="v-overlay-container",r.appendChild(s)),s})}}const Zb=le({transition:{type:null,default:"fade-transition",validator:e=>e!==!0}},"transition"),Qs=(e,t)=>{let{slots:n}=t;const{transition:r,disabled:s,group:i,...o}=e,{component:a=i?Rf:$r,...c}=id(r)?r:{};let l;return id(r)?l=Qe(c,ZC({disabled:s,group:i}),o):l=Qe({name:s||!r?"":r},o),zr(a,l,n)};function TR(){return!0}function Qb(e,t,n){if(!e||eS(e,n)===!1)return!1;const r=eb(t);if(typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&r.host===e.target)return!1;const s=(typeof n.value=="object"&&n.value.include||(()=>[]))();return s.push(t),!s.some(i=>i==null?void 0:i.contains(e.target))}function eS(e,t){return(typeof t.value=="object"&&t.value.closeConditional||TR)(e)}function kR(e,t,n){const r=typeof n.value=="function"?n.value:n.value.handler;e.shadowTarget=e.target,t._clickOutside.lastMousedownWasOutside&&Qb(e,t,n)&&setTimeout(()=>{eS(e,n)&&r&&r(e)},0)}function eg(e,t){const n=eb(e);t(document),typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&t(n)}const tg={mounted(e,t){const n=s=>kR(s,e,t),r=s=>{e._clickOutside.lastMousedownWasOutside=Qb(s,e,t)};eg(e,s=>{s.addEventListener("click",n,!0),s.addEventListener("mousedown",r,!0)}),e._clickOutside||(e._clickOutside={lastMousedownWasOutside:!1}),e._clickOutside[t.instance.$.uid]={onClick:n,onMousedown:r}},beforeUnmount(e,t){e._clickOutside&&(eg(e,n=>{var i;if(!n||!((i=e._clickOutside)!=null&&i[t.instance.$.uid]))return;const{onClick:r,onMousedown:s}=e._clickOutside[t.instance.$.uid];n.removeEventListener("click",r,!0),n.removeEventListener("mousedown",s,!0)}),delete e._clickOutside[t.instance.$.uid])}};function IR(e){const{modelValue:t,color:n,...r}=e;return B($r,{name:"fade-transition",appear:!0},{default:()=>[e.modelValue&&se("div",Qe({class:["v-overlay__scrim",e.color.backgroundColorClasses.value],style:e.color.backgroundColorStyles.value},r),null)]})}const eh=le({absolute:Boolean,attach:[Boolean,String,Object],closeOnBack:{type:Boolean,default:!0},contained:Boolean,contentClass:null,contentProps:null,disabled:Boolean,opacity:[Number,String],noClickAnimation:Boolean,modelValue:Boolean,persistent:Boolean,scrim:{type:[Boolean,String],default:!0},zIndex:{type:[Number,String],default:2e3},...mR(),...ct(),...Hi(),...SR(),...tR(),...aR(),...yR(),...tn(),...Zb()},"VOverlay"),Dc=De()({name:"VOverlay",directives:{vClickOutside:tg},inheritAttrs:!1,props:{_disableGlobalStack:Boolean,...As(eh(),["disableInitialFocus"])},emits:{"click:outside":e=>!0,"update:modelValue":e=>!0,keydown:e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,t){let{slots:n,attrs:r,emit:s}=t;const i=mt("VOverlay"),o=we(),a=we(),c=we(),l=Zn(e,"modelValue"),d=j({get:()=>l.value,set:x=>{x&&e.disabled||(l.value=x)}}),{themeClasses:u}=mn(e),{rtlClasses:f,isRtl:h}=na(),{hasContent:p,onAfterLeave:m}=ER(e,d),v=li(()=>typeof e.scrim=="string"?e.scrim:null),{globalTop:g,localTop:y,stackStyles:_}=wR(d,()=>e.zIndex,e._disableGlobalStack),{activatorEl:S,activatorRef:M,target:R,targetEl:E,targetRef:C,activatorEvents:I,contentEvents:A,scrimEvents:O}=gR(e,{isActive:d,isTop:y,contentEl:c}),{teleportTarget:T}=CR(()=>{var K,ne,ye;const x=e.attach||e.contained;if(x)return x;const W=((K=S==null?void 0:S.value)==null?void 0:K.getRootNode())||((ye=(ne=i.proxy)==null?void 0:ne.$el)==null?void 0:ye.getRootNode());return W instanceof ShadowRoot?W:!1}),{dimensionStyles:P}=Vi(e),N=bR(),{scopeId:z}=Qf();Se(()=>e.disabled,x=>{x&&(d.value=!1)});const{contentStyles:X,updateLocation:q}=nR(e,{isRtl:h,contentEl:c,target:R,isActive:d});cR(e,{root:o,contentEl:c,targetEl:E,target:R,isActive:d,updateLocation:q});function D(x){s("click:outside",x),e.persistent?Ce():d.value=!1}function re(x){return d.value&&y.value&&(!e.scrim||x.target===a.value||x instanceof MouseEvent&&x.shadowTarget===a.value)}_R(e,{isActive:d,localTop:y,contentEl:c,activatorEl:S}),et&&Se(d,x=>{x?window.addEventListener("keydown",U):window.removeEventListener("keydown",U)},{immediate:!0}),Tn(()=>{et&&window.removeEventListener("keydown",U)});function U(x){var W,K,ne;x.key==="Escape"&&g.value&&((W=c.value)!=null&&W.contains(document.activeElement)||s("keydown",x),e.persistent?Ce():(d.value=!1,(K=c.value)!=null&&K.contains(document.activeElement)&&((ne=S.value)==null||ne.focus())))}function ie(x){x.key==="Escape"&&!g.value||s("keydown",x)}const ae=jx();Di(()=>e.closeOnBack,()=>{zx(ae,x=>{g.value&&d.value?(x(!1),e.persistent?Ce():d.value=!1):x()})});const ue=we();Se(()=>d.value&&(e.absolute||e.contained)&&T.value==null,x=>{if(x){const W=MT(o.value);W&&W!==document.scrollingElement&&(ue.value=W.scrollTop)}});function Ce(){e.noClickAnimation||c.value&&ss(c.value,[{transformOrigin:"center"},{transform:"scale(1.03)"},{transformOrigin:"center"}],{duration:150,easing:ld})}function Ne(){s("afterEnter")}function He(){m(),s("afterLeave")}return tt(()=>{var x;return se(Ze,null,[(x=n.activator)==null?void 0:x.call(n,{isActive:d.value,targetRef:C,props:Qe({ref:M},I.value,e.activatorProps)}),N.value&&p.value&&B(d1,{disabled:!T.value,to:T.value},{default:()=>[se("div",Qe({class:["v-overlay",{"v-overlay--absolute":e.absolute||e.contained,"v-overlay--active":d.value,"v-overlay--contained":e.contained},u.value,f.value,e.class],style:[_.value,{"--v-overlay-opacity":e.opacity,top:me(ue.value)},e.style],ref:o,onKeydown:ie},z,r),[B(IR,Qe({color:v,modelValue:d.value&&!!e.scrim,ref:a},O.value),null),B(Qs,{appear:!0,persisted:!0,transition:e.transition,target:R.value,onAfterEnter:Ne,onAfterLeave:He},{default:()=>{var W;return[ws(se("div",Qe({ref:c,class:["v-overlay__content",e.contentClass],style:[P.value,X.value]},A.value,e.contentProps),[(W=n.default)==null?void 0:W.call(n,{isActive:d})]),[[xf,d.value],[tg,{handler:D,closeConditional:re,include:()=>[S.value]}]])]}})])]})])}),{activatorEl:S,scrimEl:a,target:R,animateClick:Ce,contentEl:c,rootEl:o,globalTop:g,localTop:y,updateLocation:q}}}),gu=Symbol("Forwarded refs");function vu(e,t){let n=e;for(;n;){const r=Reflect.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function tS(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;rt.value=e())}function i(o){const a=o?getComputedStyle(o):{transitionDuration:.2},c=parseFloat(a.transitionDuration)*1e3||200;if(r(),t.value<=0)return;const l=performance.now();n=window.setInterval(()=>{const d=performance.now()-l+c;t.value=Math.max(e()-d,0),t.value<=0&&r()},c)}return Ct(r),{clear:r,time:t,start:i,reset:s}}const RR=le({multiLine:Boolean,text:String,timer:[Boolean,String],timeout:{type:[Number,String],default:5e3},vertical:Boolean,...Tl({location:"bottom"}),...Kf(),...mr(),...Ps(),...tn(),...As(eh({transition:"v-snackbar-transition"}),["persistent","noClickAnimation","retainFocus","captureFocus","disableInitialFocus","scrim","scrollStrategy","stickToTarget","viewportMargin"])},"VSnackbar"),AR=De()({name:"VSnackbar",props:RR(),emits:{"update:modelValue":e=>!0},setup(e,t){let{slots:n}=t;const r=Zn(e,"modelValue"),{positionClasses:s}=Yf(e),{scopeId:i}=Qf(),{themeClasses:o}=mn(e),{colorClasses:a,colorStyles:c,variantClasses:l}=aa(e),{roundedClasses:d}=gr(e),u=xR(()=>Number(e.timeout)),f=we(),h=we(),p=be(!1),m=be(0),v=we(),g=Oe($o,void 0);Di(()=>!!g,()=>{const O=qk();hn(()=>{v.value=O.mainStyles.value})}),Se(r,_),Se(()=>e.timeout,_),jr(()=>{r.value&&_()});let y=-1;function _(){u.reset(),window.clearTimeout(y);const O=Number(e.timeout);if(!r.value||O===-1)return;const T=Mf(h.value);u.start(T),y=window.setTimeout(()=>{r.value=!1},O)}function S(){u.reset(),window.clearTimeout(y)}function M(){p.value=!0,S()}function R(){p.value=!1,_()}function E(O){m.value=O.touches[0].clientY}function C(O){Math.abs(m.value-O.changedTouches[0].clientY)>50&&(r.value=!1)}function I(){p.value&&R()}const A=j(()=>e.location.split(" ").reduce((O,T)=>(O[`v-snackbar--${T}`]=!0,O),{}));return tt(()=>{const O=Dc.filterProps(e),T=!!(n.default||n.text||e.text);return B(Dc,Qe({ref:f,class:["v-snackbar",{"v-snackbar--active":r.value,"v-snackbar--multi-line":e.multiLine&&!e.vertical,"v-snackbar--timer":!!e.timer,"v-snackbar--vertical":e.vertical},A.value,s.value,e.class],style:[v.value,e.style]},O,{modelValue:r.value,"onUpdate:modelValue":P=>r.value=P,contentProps:Qe({class:["v-snackbar__wrapper",o.value,a.value,d.value,l.value],style:[c.value],onPointerenter:M,onPointerleave:R},O.contentProps),persistent:!0,noClickAnimation:!0,scrim:!1,scrollStrategy:"none",_disableGlobalStack:!0,onTouchstartPassive:E,onTouchend:C,onAfterLeave:I},i),{default:()=>{var P,N;return[oa(!1,"v-snackbar"),e.timer&&!p.value&&se("div",{key:"timer",class:"v-snackbar__timer"},[B($b,{ref:h,color:typeof e.timer=="string"?e.timer:"info",max:e.timeout,modelValue:u.time.value},null)]),T&&se("div",{key:"content",class:"v-snackbar__content",role:"status","aria-live":"polite"},[((P=n.text)==null?void 0:P.call(n))??e.text,(N=n.default)==null?void 0:N.call(n)]),n.actions&&B(un,{defaults:{VBtn:{variant:"text",ripple:!1,slim:!0}}},{default:()=>[se("div",{class:"v-snackbar__actions"},[n.actions({isActive:r})])]})]},activator:n.activator})}),tS({},f)}}),MR=dl({name:"GlobalMessage",setup(){var i;const e=we(!1),t=we(null),n={success:"mdi-check-circle",error:"mdi-alert-circle",warning:"mdi-alert",info:"mdi-information"},r={success:"success",error:"error",warning:"warning",info:"info"},s=(i=Ys==null?void 0:Ys.onSnackbar)==null?void 0:i.call(Ys,async o=>{o&&(e.value&&(e.value=!1,await vt()),t.value=o,e.value=!0)});return Tn(()=>s==null?void 0:s()),{snackbar:e,message:t,icons:n,colors:r}}}),PR={class:"d-flex align-center"},OR={class:"text-subtitle-2 font-weight-medium"},LR={key:0,class:"text-body-2"};function NR(e,t,n,r,s,i){var o;return cn(),Dn(AR,{modelValue:e.snackbar,"onUpdate:modelValue":t[1]||(t[1]=a=>e.snackbar=a),color:e.colors[(o=e.message)==null?void 0:o.type]||e.colors.info,timeout:2e3,location:"top right","multi-line":"",variant:"tonal"},{actions:gt(()=>[B(Kb,{icon:"mdi-close",variant:"text",onClick:t[0]||(t[0]=a=>e.snackbar=!1)})]),default:gt(()=>{var a,c,l,d;return[se("div",PR,[B(Hn,{icon:e.icons[(a=e.message)==null?void 0:a.type]||e.icons.info,class:"mr-2"},null,8,["icon"]),se("div",null,[se("div",OR,bn((c=e.message)==null?void 0:c.title),1),(l=e.message)!=null&&l.content?(cn(),C_("div",LR,bn((d=e.message)==null?void 0:d.content),1)):ed("",!0)])])]}),_:1},8,["modelValue","color"])}const nS=Ob(MR,[["render",NR]]),DR=le({...ct(),...Mt()},"VCardActions"),rS=De()({name:"VCardActions",props:DR(),setup(e,t){let{slots:n}=t;return vl({VBtn:{slim:!0,variant:"text"}}),tt(()=>B(e.tag,{class:Me(["v-card-actions",e.class]),style:Xe(e.style)},n)),{}}}),FR=le({opacity:[Number,String],...ct(),...Mt()},"VCardSubtitle"),$R=De()({name:"VCardSubtitle",props:FR(),setup(e,t){let{slots:n}=t;return tt(()=>B(e.tag,{class:Me(["v-card-subtitle",e.class]),style:Xe([{"--v-card-subtitle-opacity":e.opacity},e.style])},n)),{}}}),sS=Ff("v-card-title");function BR(e){return{aspectStyles:j(()=>{const t=Number(e.aspectRatio);return t?{paddingBottom:String(1/t*100)+"%"}:void 0})}}const iS=le({aspectRatio:[String,Number],contentClass:null,inline:Boolean,...ct(),...Hi()},"VResponsive"),ng=De()({name:"VResponsive",props:iS(),setup(e,t){let{slots:n}=t;const{aspectStyles:r}=BR(e),{dimensionStyles:s}=Vi(e);return tt(()=>{var i;return se("div",{class:Me(["v-responsive",{"v-responsive--inline":e.inline},e.class]),style:Xe([s.value,e.style])},[se("div",{class:"v-responsive__sizer",style:Xe(r.value)},null),(i=n.additional)==null?void 0:i.call(n),n.default&&se("div",{class:Me(["v-responsive__content",e.contentClass])},[n.default()])])}),{}}});function HR(e,t){if(!Af)return;const n=t.modifiers||{},r=t.value,{handler:s,options:i}=typeof r=="object"?r:{handler:r,options:{}},o=new IntersectionObserver(function(){var u;let a=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],c=arguments.length>1?arguments[1]:void 0;const l=(u=e._observe)==null?void 0:u[t.instance.$.uid];if(!l)return;const d=a.some(f=>f.isIntersecting);s&&(!n.quiet||l.init)&&(!n.once||d||l.init)&&s(d,a,c),d&&n.once?oS(e,t):l.init=!0},i);e._observe=Object(e._observe),e._observe[t.instance.$.uid]={init:!1,observer:o},o.observe(e)}function oS(e,t){var r;const n=(r=e._observe)==null?void 0:r[t.instance.$.uid];n&&(n.observer.unobserve(e),delete e._observe[t.instance.$.uid])}const rg={mounted:HR,unmounted:oS},VR=le({absolute:Boolean,alt:String,cover:Boolean,color:String,draggable:{type:[Boolean,String],default:void 0},eager:Boolean,gradient:String,lazySrc:String,options:{type:Object,default:()=>({root:void 0,rootMargin:void 0,threshold:void 0})},sizes:String,src:{type:[String,Object],default:""},crossorigin:String,referrerpolicy:String,srcset:String,position:String,...iS(),...ct(),...mr(),...Zb()},"VImg"),aS=De()({name:"VImg",directives:{vIntersect:rg},props:VR(),emits:{loadstart:e=>!0,load:e=>!0,error:e=>!0},setup(e,t){let{emit:n,slots:r}=t;const{backgroundColorClasses:s,backgroundColorStyles:i}=li(()=>e.color),{roundedClasses:o}=gr(e),a=mt("VImg"),c=be(""),l=we(),d=be(e.eager?"loading":"idle"),u=be(),f=be(),h=j(()=>e.src&&typeof e.src=="object"?{src:e.src.src,srcset:e.srcset||e.src.srcset,lazySrc:e.lazySrc||e.src.lazySrc,aspect:Number(e.aspectRatio||e.src.aspect||0)}:{src:e.src,srcset:e.srcset,lazySrc:e.lazySrc,aspect:Number(e.aspectRatio||0)}),p=j(()=>h.value.aspect||u.value/f.value||0);Se(()=>e.src,()=>{m(d.value!=="idle")}),Se(p,(T,P)=>{!T&&P&&l.value&&S(l.value)}),pl(()=>m());function m(T){if(!(e.eager&&T)&&!(Af&&!T&&!e.eager)){if(d.value="loading",h.value.lazySrc){const P=new Image;P.src=h.value.lazySrc,S(P,null)}h.value.src&&vt(()=>{var P;n("loadstart",((P=l.value)==null?void 0:P.currentSrc)||h.value.src),setTimeout(()=>{var N;if(!a.isUnmounted)if((N=l.value)!=null&&N.complete){if(l.value.naturalWidth||g(),d.value==="error")return;p.value||S(l.value,null),d.value==="loading"&&v()}else p.value||S(l.value),y()})})}}function v(){var T;a.isUnmounted||(y(),S(l.value),d.value="loaded",n("load",((T=l.value)==null?void 0:T.currentSrc)||h.value.src))}function g(){var T;a.isUnmounted||(d.value="error",n("error",((T=l.value)==null?void 0:T.currentSrc)||h.value.src))}function y(){const T=l.value;T&&(c.value=T.currentSrc||T.src)}let _=-1;Tn(()=>{clearTimeout(_)});function S(T){let P=arguments.length>1&&arguments[1]!==void 0?arguments[1]:100;const N=()=>{if(clearTimeout(_),a.isUnmounted)return;const{naturalHeight:z,naturalWidth:X}=T;z||X?(u.value=X,f.value=z):!T.complete&&d.value==="loading"&&P!=null?_=window.setTimeout(N,P):(T.currentSrc.endsWith(".svg")||T.currentSrc.startsWith("data:image/svg+xml"))&&(u.value=1,f.value=1)};N()}const M=ee(()=>({"v-img__img--cover":e.cover,"v-img__img--contain":!e.cover})),R=()=>{var N;if(!h.value.src||d.value==="idle")return null;const T=se("img",{class:Me(["v-img__img",M.value]),style:{objectPosition:e.position},crossorigin:e.crossorigin,src:h.value.src,srcset:h.value.srcset,alt:e.alt,referrerpolicy:e.referrerpolicy,draggable:e.draggable,sizes:e.sizes,ref:l,onLoad:v,onError:g},null),P=(N=r.sources)==null?void 0:N.call(r);return B(Qs,{transition:e.transition,appear:!0},{default:()=>[ws(P?se("picture",{class:"v-img__picture"},[P,T]):T,[[xf,d.value==="loaded"]])]})},E=()=>B(Qs,{transition:e.transition},{default:()=>[h.value.lazySrc&&d.value!=="loaded"&&se("img",{class:Me(["v-img__img","v-img__img--preload",M.value]),style:{objectPosition:e.position},crossorigin:e.crossorigin,src:h.value.lazySrc,alt:e.alt,referrerpolicy:e.referrerpolicy,draggable:e.draggable},null)]}),C=()=>r.placeholder?B(Qs,{transition:e.transition,appear:!0},{default:()=>[(d.value==="loading"||d.value==="error"&&!r.error)&&se("div",{class:"v-img__placeholder"},[r.placeholder()])]}):null,I=()=>r.error?B(Qs,{transition:e.transition,appear:!0},{default:()=>[d.value==="error"&&se("div",{class:"v-img__error"},[r.error()])]}):null,A=()=>e.gradient?se("div",{class:"v-img__gradient",style:{backgroundImage:`linear-gradient(${e.gradient})`}},null):null,O=be(!1);{const T=Se(p,P=>{P&&(requestAnimationFrame(()=>{requestAnimationFrame(()=>{O.value=!0})}),T())})}return tt(()=>{const T=ng.filterProps(e);return ws(B(ng,Qe({class:["v-img",{"v-img--absolute":e.absolute,"v-img--booting":!O.value},s.value,o.value,e.class],style:[{width:me(e.width==="auto"?u.value:e.width)},i.value,e.style]},T,{aspectRatio:p.value,"aria-label":e.alt,role:e.alt?"img":void 0}),{additional:()=>se(Ze,null,[B(R,null,null),B(E,null,null),B(A,null,null),B(C,null,null),B(I,null,null)]),default:r.default}),[[rg,{handler:m,options:e.options},null,{once:!0}]])}),{currentSrc:c,image:l,state:d,naturalWidth:u,naturalHeight:f}}}),UR=le({start:Boolean,end:Boolean,icon:Et,image:String,text:String,...Fi(),...ct(),...Ms(),...mr(),...wl(),...Mt(),...tn(),...Ps({variant:"flat"})},"VAvatar"),Fc=De()({name:"VAvatar",props:UR(),setup(e,t){let{slots:n}=t;const{themeClasses:r}=mn(e),{borderClasses:s}=$i(e),{colorClasses:i,colorStyles:o,variantClasses:a}=aa(e),{densityClasses:c}=Bi(e),{roundedClasses:l}=gr(e),{sizeClasses:d,sizeStyles:u}=Cl(e);return tt(()=>B(e.tag,{class:Me(["v-avatar",{"v-avatar--start":e.start,"v-avatar--end":e.end},r.value,s.value,i.value,c.value,l.value,d.value,a.value,e.class]),style:Xe([o.value,u.value,e.style])},{default:()=>[n.default?B(un,{key:"content-defaults",defaults:{VImg:{cover:!0,src:e.image},VIcon:{icon:e.icon}}},{default:()=>[n.default()]}):e.image?B(aS,{key:"image",src:e.image,alt:"",cover:!0},null):e.icon?B(Hn,{key:"icon",icon:e.icon},null):e.text,oa(!1,"v-avatar")]})),{}}}),WR=le({appendAvatar:String,appendIcon:Et,prependAvatar:String,prependIcon:Et,subtitle:{type:[String,Number,Boolean],default:void 0},title:{type:[String,Number,Boolean],default:void 0},...ct(),...Ms(),...Mt()},"VCardItem"),jR=De()({name:"VCardItem",props:WR(),setup(e,t){let{slots:n}=t;return tt(()=>{const r=!!(e.prependAvatar||e.prependIcon),s=!!(r||n.prepend),i=!!(e.appendAvatar||e.appendIcon),o=!!(i||n.append),a=!!(e.title!=null||n.title),c=!!(e.subtitle!=null||n.subtitle);return B(e.tag,{class:Me(["v-card-item",e.class]),style:Xe(e.style)},{default:()=>{var l;return[s&&se("div",{key:"prepend",class:"v-card-item__prepend"},[n.prepend?B(un,{key:"prepend-defaults",disabled:!r,defaults:{VAvatar:{density:e.density,image:e.prependAvatar},VIcon:{density:e.density,icon:e.prependIcon}}},n.prepend):se(Ze,null,[e.prependAvatar&&B(Fc,{key:"prepend-avatar",density:e.density,image:e.prependAvatar},null),e.prependIcon&&B(Hn,{key:"prepend-icon",density:e.density,icon:e.prependIcon},null)])]),se("div",{class:"v-card-item__content"},[a&&B(sS,{key:"title"},{default:()=>{var d;return[((d=n.title)==null?void 0:d.call(n))??bn(e.title)]}}),c&&B($R,{key:"subtitle"},{default:()=>{var d;return[((d=n.subtitle)==null?void 0:d.call(n))??bn(e.subtitle)]}}),(l=n.default)==null?void 0:l.call(n)]),o&&se("div",{key:"append",class:"v-card-item__append"},[n.append?B(un,{key:"append-defaults",disabled:!i,defaults:{VAvatar:{density:e.density,image:e.appendAvatar},VIcon:{density:e.density,icon:e.appendIcon}}},n.append):se(Ze,null,[e.appendIcon&&B(Hn,{key:"append-icon",density:e.density,icon:e.appendIcon},null),e.appendAvatar&&B(Fc,{key:"append-avatar",density:e.density,image:e.appendAvatar},null)])])]}})}),{}}}),zR=le({opacity:[Number,String],...ct(),...Mt()},"VCardText"),Ed=De()({name:"VCardText",props:zR(),setup(e,t){let{slots:n}=t;return tt(()=>B(e.tag,{class:Me(["v-card-text",e.class]),style:Xe([{"--v-card-text-opacity":e.opacity},e.style])},n)),{}}}),qR=le({appendAvatar:String,appendIcon:Et,disabled:Boolean,flat:Boolean,hover:Boolean,image:String,link:{type:Boolean,default:void 0},prependAvatar:String,prependIcon:Et,ripple:{type:[Boolean,Object],default:!0},subtitle:{type:[String,Number,Boolean],default:void 0},text:{type:[String,Number,Boolean],default:void 0},title:{type:[String,Number,Boolean],default:void 0},...Fi(),...ct(),...Ms(),...Hi(),...sa(),...Bb(),...Tl(),...Kf(),...mr(),...Jf(),...Mt(),...tn(),...Ps({variant:"elevated"})},"VCard"),sg=De()({name:"VCard",directives:{vRipple:Uo},props:qR(),setup(e,t){let{attrs:n,slots:r}=t;const{themeClasses:s}=mn(e),{borderClasses:i}=$i(e),{colorClasses:o,colorStyles:a,variantClasses:c}=aa(e),{densityClasses:l}=Bi(e),{dimensionStyles:d}=Vi(e),{elevationClasses:u}=ia(e),{loaderClasses:f}=Hb(e),{locationStyles:h}=Gf(e),{positionClasses:p}=Yf(e),{roundedClasses:m}=gr(e),v=Xf(e,n),g=be(void 0);return Se(()=>e.loading,(y,_)=>{g.value=!y&&typeof _=="string"?_:typeof y=="boolean"?void 0:y},{immediate:!0}),tt(()=>{const y=e.link!==!1&&v.isLink.value,_=!e.disabled&&e.link!==!1&&(e.link||v.isClickable.value),S=y?"a":e.tag,M=!!(r.title||e.title!=null),R=!!(r.subtitle||e.subtitle!=null),E=M||R,C=!!(r.append||e.appendAvatar||e.appendIcon),I=!!(r.prepend||e.prependAvatar||e.prependIcon),A=!!(r.image||e.image),O=E||I||C,T=!!(r.text||e.text!=null);return ws(B(S,Qe(v.linkProps,{class:["v-card",{"v-card--disabled":e.disabled,"v-card--flat":e.flat,"v-card--hover":e.hover&&!(e.disabled||e.flat),"v-card--link":_},s.value,i.value,o.value,l.value,u.value,f.value,p.value,m.value,c.value,e.class],style:[a.value,d.value,h.value,e.style],onClick:_&&v.navigate,tabindex:e.disabled?-1:void 0}),{default:()=>{var P;return[A&&se("div",{key:"image",class:"v-card__image"},[r.image?B(un,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},r.image):B(aS,{key:"image-img",cover:!0,src:e.image},null)]),B(Vx,{name:"v-card",active:!!e.loading,color:g.value},{default:r.loader}),O&&B(jR,{key:"item",prependAvatar:e.prependAvatar,prependIcon:e.prependIcon,title:e.title,subtitle:e.subtitle,appendAvatar:e.appendAvatar,appendIcon:e.appendIcon},{default:r.item,prepend:r.prepend,title:r.title,subtitle:r.subtitle,append:r.append}),T&&B(Ed,{key:"text"},{default:()=>{var N;return[((N=r.text)==null?void 0:N.call(r))??e.text]}}),(P=r.default)==null?void 0:P.call(r),r.actions&&B(rS,null,{default:r.actions}),oa(_,"v-card")]}}),[[Uo,_&&e.ripple]])}),{}}}),GR=le({disabled:Boolean,group:Boolean,hideOnLeave:Boolean,leaveAbsolute:Boolean,mode:String,origin:String},"transition");function nn(e,t,n){return De()({name:e,props:GR({mode:n,origin:t}),setup(r,s){let{slots:i}=s;const o={onBeforeEnter(a){r.origin&&(a.style.transformOrigin=r.origin)},onLeave(a){if(r.leaveAbsolute){const{offsetTop:c,offsetLeft:l,offsetWidth:d,offsetHeight:u}=a;a._transitionInitialStyles={position:a.style.position,top:a.style.top,left:a.style.left,width:a.style.width,height:a.style.height},a.style.position="absolute",a.style.top=`${c}px`,a.style.left=`${l}px`,a.style.width=`${d}px`,a.style.height=`${u}px`}r.hideOnLeave&&a.style.setProperty("display","none","important")},onAfterLeave(a){if(r.leaveAbsolute&&(a!=null&&a._transitionInitialStyles)){const{position:c,top:l,left:d,width:u,height:f}=a._transitionInitialStyles;delete a._transitionInitialStyles,a.style.position=c||"",a.style.top=l||"",a.style.left=d||"",a.style.width=u||"",a.style.height=f||""}}};return()=>{const a=r.group?Rf:$r;return zr(a,{name:r.disabled?"":e,css:!r.disabled,...r.group?void 0:{mode:r.mode},...r.disabled?{}:o},i.default)}}})}function cS(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:"in-out";return De()({name:e,props:{mode:{type:String,default:n},disabled:{type:Boolean,default:Oo()},group:Boolean},setup(r,s){let{slots:i}=s;const o=r.group?Rf:$r;return()=>zr(o,{name:r.disabled?"":e,css:!r.disabled,...r.disabled?{}:t},i.default)}})}function lS(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";const n=(arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1)?"width":"height",r=$t(`offset-${n}`);return{onBeforeEnter(o){o._parent=o.parentNode,o._initialStyle={transition:o.style.transition,overflow:o.style.overflow,[n]:o.style[n]}},onEnter(o){const a=o._initialStyle;if(!a)return;o.style.setProperty("transition","none","important"),o.style.overflow="hidden";const c=`${o[r]}px`;o.style[n]="0",o.offsetHeight,o.style.transition=a.transition,e&&o._parent&&o._parent.classList.add(e),requestAnimationFrame(()=>{o.style[n]=c})},onAfterEnter:i,onEnterCancelled:i,onLeave(o){o._initialStyle={transition:"",overflow:o.style.overflow,[n]:o.style[n]},o.style.overflow="hidden",o.style[n]=`${o[r]}px`,o.offsetHeight,requestAnimationFrame(()=>o.style[n]="0")},onAfterLeave:s,onLeaveCancelled:s};function s(o){e&&o._parent&&o._parent.classList.remove(e),i(o)}function i(o){if(!o._initialStyle)return;const a=o._initialStyle[n];o.style.overflow=o._initialStyle.overflow,a!=null&&(o.style[n]=a),delete o._initialStyle}}const KR=le({target:[Object,Array]},"v-dialog-transition"),yu=new WeakMap,YR=De()({name:"VDialogTransition",props:KR(),setup(e,t){let{slots:n}=t;const r={onBeforeEnter(s){s.style.pointerEvents="none",s.style.visibility="hidden"},async onEnter(s,i){var f;await new Promise(h=>requestAnimationFrame(h)),await new Promise(h=>requestAnimationFrame(h)),s.style.visibility="";const o=og(e.target,s),{x:a,y:c,sx:l,sy:d,speed:u}=o;if(yu.set(s,o),Oo())ss(s,[{opacity:0},{}],{duration:125*u,easing:um}).finished.then(()=>i());else{const h=ss(s,[{transform:`translate(${a}px, ${c}px) scale(${l}, ${d})`,opacity:0},{}],{duration:225*u,easing:um});(f=ig(s))==null||f.forEach(p=>{ss(p,[{opacity:0},{opacity:0,offset:.33},{}],{duration:225*2*u,easing:ld})}),h.finished.then(()=>i())}},onAfterEnter(s){s.style.removeProperty("pointer-events")},onBeforeLeave(s){s.style.pointerEvents="none"},async onLeave(s,i){var f;await new Promise(h=>requestAnimationFrame(h));let o;!yu.has(s)||Array.isArray(e.target)||e.target.offsetParent||e.target.getClientRects().length?o=og(e.target,s):o=yu.get(s);const{x:a,y:c,sx:l,sy:d,speed:u}=o;Oo()?ss(s,[{},{opacity:0}],{duration:85*u,easing:dm}).finished.then(()=>i()):(ss(s,[{},{transform:`translate(${a}px, ${c}px) scale(${l}, ${d})`,opacity:0}],{duration:125*u,easing:dm}).finished.then(()=>i()),(f=ig(s))==null||f.forEach(p=>{ss(p,[{},{opacity:0,offset:.2},{opacity:0}],{duration:125*2*u,easing:ld})}))},onAfterLeave(s){s.style.removeProperty("pointer-events")}};return()=>e.target?B($r,Qe({name:"dialog-transition"},r,{css:!1}),n):B($r,{name:"dialog-transition"},n)}});function ig(e){var n;const t=(n=e.querySelector(":scope > .v-card, :scope > .v-sheet, :scope > .v-list"))==null?void 0:n.children;return t&&[...t]}function og(e,t){const n=G_(e),r=K_(t),[s,i]=getComputedStyle(t).transformOrigin.split(" ").map(g=>parseFloat(g)),[o,a]=getComputedStyle(t).getPropertyValue("--v-overlay-anchor-origin").split(" ");let c=n.left+n.width/2;o==="left"||a==="left"?c-=n.width/2:(o==="right"||a==="right")&&(c+=n.width/2);let l=n.top+n.height/2;o==="top"||a==="top"?l-=n.height/2:(o==="bottom"||a==="bottom")&&(l+=n.height/2);const d=n.width/r.width,u=n.height/r.height,f=Math.max(1,d,u),h=d/f||0,p=u/f||0,m=r.width*r.height/(window.innerWidth*window.innerHeight),v=m>.12?Math.min(1.5,(m-.12)*10+1):1;return{x:c-(s+r.left),y:l-(i+r.top),sx:h,sy:p,speed:v}}nn("fab-transition","center center","out-in");nn("dialog-bottom-transition");nn("dialog-top-transition");const g4=nn("fade-transition"),v4=nn("scale-transition");nn("scroll-x-transition");nn("scroll-x-reverse-transition");nn("scroll-y-transition");nn("scroll-y-reverse-transition");nn("slide-x-transition");const y4=nn("slide-x-reverse-transition"),_4=nn("slide-y-transition");nn("slide-y-reverse-transition");const XR=cS("expand-transition",lS()),b4=cS("expand-x-transition",lS("",!0)),JR=le({fullscreen:Boolean,scrollable:Boolean,...As(eh({captureFocus:!0,origin:"center center",scrollStrategy:"block",transition:{component:YR},zIndex:2400,retainFocus:!0}),["disableInitialFocus"])},"VDialog"),ZR=De()({name:"VDialog",props:JR(),emits:{"update:modelValue":e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,t){let{emit:n,slots:r}=t;const s=Zn(e,"modelValue"),{scopeId:i}=Qf(),o=we();function a(){var l;n("afterEnter"),(e.scrim||e.retainFocus)&&((l=o.value)!=null&&l.contentEl)&&!o.value.contentEl.contains(document.activeElement)&&o.value.contentEl.focus({preventScroll:!0})}function c(){n("afterLeave")}return Se(s,async l=>{var d;l||(await vt(),(d=o.value.activatorEl)==null||d.focus({preventScroll:!0}))}),tt(()=>{const l=Dc.filterProps(e),d=Qe({"aria-haspopup":"dialog"},e.activatorProps),u=Qe({tabindex:-1},e.contentProps);return B(Dc,Qe({ref:o,class:["v-dialog",{"v-dialog--fullscreen":e.fullscreen,"v-dialog--scrollable":e.scrollable},e.class],style:e.style},l,{modelValue:s.value,"onUpdate:modelValue":f=>s.value=f,"aria-modal":"true",activatorProps:d,contentProps:u,height:e.fullscreen?void 0:e.height,width:e.fullscreen?void 0:e.width,maxHeight:e.fullscreen?void 0:e.maxHeight,maxWidth:e.fullscreen?void 0:e.maxWidth,role:"dialog",onAfterEnter:a,onAfterLeave:c},i),{activator:r.activator,default:function(){for(var f=arguments.length,h=new Array(f),p=0;p{var m;return[(m=r.default)==null?void 0:m.call(r,...h)]}})}})}),tS({},o)}}),QR=["dotted","dashed","solid","double"],eA=le({color:String,contentOffset:[Number,String,Array],gradient:Boolean,inset:Boolean,length:[Number,String],opacity:[Number,String],thickness:[Number,String],vertical:Boolean,variant:{type:String,default:"solid",validator:e=>QR.includes(e)},...ct(),...tn()},"VDivider"),uS=De()({name:"VDivider",props:eA(),setup(e,t){let{attrs:n,slots:r}=t;const{themeClasses:s}=mn(e),{textColorClasses:i,textColorStyles:o}=bi(()=>e.color),a=j(()=>{const l={};return e.length&&(l[e.vertical?"height":"width"]=me(e.length)),e.thickness&&(l[e.vertical?"borderRightWidth":"borderTopWidth"]=me(e.thickness)),l}),c=ee(()=>{const l=Array.isArray(e.contentOffset)?e.contentOffset[0]:e.contentOffset,d=Array.isArray(e.contentOffset)?e.contentOffset[1]:0;return{marginBlock:e.vertical&&l?me(l):void 0,marginInline:!e.vertical&&l?me(l):void 0,transform:d?`translate${e.vertical?"X":"Y"}(${me(d)})`:void 0}});return tt(()=>{const l=se("hr",{class:Me([{"v-divider":!0,"v-divider--gradient":e.gradient&&!r.default,"v-divider--inset":e.inset,"v-divider--vertical":e.vertical},s.value,i.value,e.class]),style:Xe([a.value,o.value,{"--v-border-opacity":e.opacity},{"border-style":e.variant},e.style]),"aria-orientation":!n.role||n.role==="separator"?e.vertical?"vertical":"horizontal":void 0,role:`${n.role||"separator"}`},null);return r.default?se("div",{class:Me(["v-divider__wrapper",{"v-divider__wrapper--gradient":e.gradient,"v-divider__wrapper--inset":e.inset,"v-divider__wrapper--vertical":e.vertical}])},[l,se("div",{class:"v-divider__content",style:Xe(c.value)},[r.default()]),l]):l}),{}}}),tA=Ff("v-spacer","div","VSpacer"),wd=Symbol.for("vuetify:list");function dS(){let{filterable:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{filterable:!1};const t=Oe(wd,{filterable:!1,hasPrepend:be(!1),updateHasPrepend:()=>null}),n={filterable:t.filterable||e,hasPrepend:be(!1),updateHasPrepend:r=>{r&&(n.hasPrepend.value=r)}};return At(wd,n),t}function fS(){return Oe(wd,null)}const th=e=>{const t={activate:n=>{let{id:r,value:s,activated:i}=n;return r=de(r),e&&!s&&i.size===1&&i.has(r)||(s?i.add(r):i.delete(r)),i},in:(n,r,s)=>{let i=new Set;if(n!=null)for(const o of Of(n))i=t.activate({id:o,value:!0,activated:new Set(i),children:r,parents:s});return i},out:n=>Array.from(n)};return t},hS=e=>{const t=th(e);return{activate:r=>{let{activated:s,id:i,...o}=r;i=de(i);const a=s.has(i)?new Set([i]):new Set;return t.activate({...o,id:i,activated:a})},in:(r,s,i)=>{let o=new Set;if(r!=null){const a=Of(r);a.length&&(o=t.in(a.slice(0,1),s,i))}return o},out:(r,s,i)=>t.out(r,s,i)}},nA=e=>{const t=th(e);return{activate:r=>{let{id:s,activated:i,children:o,...a}=r;return s=de(s),o.has(s)?i:t.activate({id:s,activated:i,children:o,...a})},in:t.in,out:t.out}},rA=e=>{const t=hS(e);return{activate:r=>{let{id:s,activated:i,children:o,...a}=r;return s=de(s),o.has(s)?i:t.activate({id:s,activated:i,children:o,...a})},in:t.in,out:t.out}},sA={open:e=>{let{id:t,value:n,opened:r,parents:s}=e;if(n){const i=new Set;i.add(t);let o=s.get(t);for(;o!=null;)i.add(o),o=s.get(o);return i}else return r.delete(t),r},select:()=>null},pS={open:e=>{let{id:t,value:n,opened:r,parents:s}=e;if(n){let i=s.get(t);for(r.add(t);i!=null&&i!==t;)r.add(i),i=s.get(i);return r}else r.delete(t);return r},select:()=>null},iA={open:pS.open,select:e=>{let{id:t,value:n,opened:r,parents:s}=e;if(!n)return r;const i=[];let o=s.get(t);for(;o!=null;)i.push(o),o=s.get(o);return new Set(i)}},nh=e=>{const t={select:n=>{let{id:r,value:s,selected:i}=n;if(r=de(r),e&&!s){const o=Array.from(i.entries()).reduce((a,c)=>{let[l,d]=c;return d==="on"&&a.push(l),a},[]);if(o.length===1&&o[0]===r)return i}return i.set(r,s?"on":"off"),i},in:(n,r,s,i)=>{const o=new Map;for(const a of n||[])t.select({id:a,value:!0,selected:o,children:r,parents:s,disabled:i});return o},out:n=>{const r=[];for(const[s,i]of n.entries())i==="on"&&r.push(s);return r}};return t},mS=e=>{const t=nh(e);return{select:r=>{let{selected:s,id:i,...o}=r;i=de(i);const a=s.has(i)?new Map([[i,s.get(i)]]):new Map;return t.select({...o,id:i,selected:a})},in:(r,s,i,o)=>r!=null&&r.length?t.in(r.slice(0,1),s,i,o):new Map,out:(r,s,i)=>t.out(r,s,i)}},oA=e=>{const t=nh(e);return{select:r=>{let{id:s,selected:i,children:o,...a}=r;return s=de(s),o.has(s)?i:t.select({id:s,selected:i,children:o,...a})},in:t.in,out:t.out}},aA=e=>{const t=mS(e);return{select:r=>{let{id:s,selected:i,children:o,...a}=r;return s=de(s),o.has(s)?i:t.select({id:s,selected:i,children:o,...a})},in:t.in,out:t.out}},gS=e=>{const t={select:n=>{let{id:r,value:s,selected:i,children:o,parents:a,disabled:c}=n;r=de(r);const l=new Map(i),d=[r];for(;d.length;){const f=d.shift();c.has(f)||i.set(de(f),s?"on":"off"),o.has(f)&&d.push(...o.get(f))}let u=de(a.get(r));for(;u;){let f=!0,h=!0;for(const p of o.get(u)){const m=de(p);if(!c.has(m)&&(i.get(m)!=="on"&&(f=!1),i.has(m)&&i.get(m)!=="off"&&(h=!1),!f&&!h))break}i.set(u,f?"on":h?"off":"indeterminate"),u=de(a.get(u))}return e&&!s&&Array.from(i.entries()).reduce((h,p)=>{let[m,v]=p;return v==="on"&&h.push(m),h},[]).length===0?l:i},in:(n,r,s)=>{let i=new Map;for(const o of n||[])i=t.select({id:o,value:!0,selected:i,children:r,parents:s,disabled:new Set});return i},out:(n,r)=>{const s=[];for(const[i,o]of n.entries())o==="on"&&!r.has(i)&&s.push(i);return s}};return t},cA=e=>{const t=gS(e);return{select:t.select,in:t.in,out:(r,s,i)=>{const o=[];for(const[a,c]of r.entries())if(c==="on"){if(i.has(a)){const l=i.get(a);if(r.get(l)==="on")continue}o.push(a)}return o}}},Si=Symbol.for("vuetify:nested"),vS={id:be(),root:{itemsRegistration:we("render"),register:()=>null,unregister:()=>null,updateDisabled:()=>null,children:we(new Map),parents:we(new Map),disabled:we(new Set),open:()=>null,openOnSelect:()=>null,activate:()=>null,select:()=>null,activatable:we(!1),selectable:we(!1),opened:we(new Set),activated:we(new Set),selected:we(new Map),selectedValues:we([]),getPath:()=>[]}},lA=le({activatable:Boolean,selectable:Boolean,activeStrategy:[String,Function,Object],selectStrategy:[String,Function,Object],openStrategy:[String,Object],opened:null,activated:null,selected:null,mandatory:Boolean,itemsRegistration:{type:String,default:"render"}},"nested"),uA=(e,t,n)=>{let r=!1;const s=be(new Map),i=be(new Map),o=be(new Set),a=Zn(e,"opened",e.opened,_=>new Set(Array.isArray(_)?_.map(S=>de(S)):_),_=>[..._.values()]),c=j(()=>{if(typeof e.activeStrategy=="object")return e.activeStrategy;if(typeof e.activeStrategy=="function")return e.activeStrategy(e.mandatory);switch(e.activeStrategy){case"leaf":return nA(e.mandatory);case"single-leaf":return rA(e.mandatory);case"independent":return th(e.mandatory);case"single-independent":default:return hS(e.mandatory)}}),l=j(()=>{if(typeof e.selectStrategy=="object")return e.selectStrategy;if(typeof e.selectStrategy=="function")return e.selectStrategy(e.mandatory);switch(e.selectStrategy){case"single-leaf":return aA(e.mandatory);case"leaf":return oA(e.mandatory);case"independent":return nh(e.mandatory);case"single-independent":return mS(e.mandatory);case"trunk":return cA(e.mandatory);case"classic":default:return gS(e.mandatory)}}),d=j(()=>{if(typeof e.openStrategy=="object")return e.openStrategy;switch(e.openStrategy){case"list":return iA;case"single":return sA;case"multiple":default:return pS}}),u=Zn(e,"activated",e.activated,_=>c.value.in(_,s.value,i.value),_=>c.value.out(_,s.value,i.value)),f=Zn(e,"selected",e.selected,_=>l.value.in(_,s.value,i.value,o.value),_=>l.value.out(_,s.value,i.value));Tn(()=>{r=!0});function h(_){const S=[];let M=de(_);for(;M!==void 0;)S.unshift(M),M=i.value.get(M);return S}const p=mt("nested"),m=new Set,v=LT(()=>{vt(()=>{s.value=new Map(s.value),i.value=new Map(i.value)})},100);Se(()=>[t.value,bt(n)],()=>{e.itemsRegistration==="props"&&g()},{immediate:!0});function g(){const _=new Map,S=new Map,M=new Set,R=bt(n)?I=>de(I.raw):I=>I.value,E=[...t.value];let C=0;for(;Ce.activatable),selectable:ee(()=>e.selectable),activated:u,selected:f,selectedValues:j(()=>{const _=[];for(const[S,M]of f.value.entries())M==="on"&&_.push(S);return _}),itemsRegistration:ee(()=>e.itemsRegistration),register:(_,S,M,R)=>{if(m.has(_)){h(_).map(String).join(" -> "),h(S).concat(_).map(String).join(" -> ");return}else m.add(_);S&&_!==S&&i.value.set(_,S),M&&o.value.add(_),R&&s.value.set(_,[]),S!=null&&s.value.set(S,[...s.value.get(S)||[],_]),v()},unregister:_=>{if(r)return;m.delete(_),s.value.delete(_),o.value.delete(_);const S=i.value.get(_);if(S){const M=s.value.get(S)??[];s.value.set(S,M.filter(R=>R!==_))}i.value.delete(_),v()},updateDisabled:(_,S)=>{S?o.value.add(_):o.value.delete(_)},open:(_,S,M)=>{p.emit("click:open",{id:_,value:S,path:h(_),event:M});const R=d.value.open({id:_,value:S,opened:new Set(a.value),children:s.value,parents:i.value,event:M});R&&(a.value=R)},openOnSelect:(_,S,M)=>{const R=d.value.select({id:_,value:S,selected:new Map(f.value),opened:new Set(a.value),children:s.value,parents:i.value,event:M});R&&(a.value=R)},select:(_,S,M)=>{p.emit("click:select",{id:_,value:S,path:h(_),event:M});const R=l.value.select({id:_,value:S,selected:new Map(f.value),children:s.value,parents:i.value,disabled:o.value,event:M});R&&(f.value=R),y.root.openOnSelect(_,S,M)},activate:(_,S,M)=>{if(!e.activatable)return y.root.select(_,!0,M);p.emit("click:activate",{id:_,value:S,path:h(_),event:M});const R=c.value.activate({id:_,value:S,activated:new Set(u.value),children:s.value,parents:i.value,event:M});if(R.size!==u.value.size)u.value=R;else{for(const E of R)if(!u.value.has(E)){u.value=R;return}for(const E of u.value)if(!R.has(E)){u.value=R;return}}},children:s,parents:i,disabled:o,getPath:h}};return At(Si,y),y.root},yS=(e,t,n)=>{const r=Oe(Si,vS),s=Symbol("nested item"),i=j(()=>{const a=de(bt(e));return a!==void 0?a:s}),o={...r,id:i,open:(a,c)=>r.root.open(i.value,a,c),openOnSelect:(a,c)=>r.root.openOnSelect(i.value,a,c),isOpen:j(()=>r.root.opened.value.has(i.value)),parent:j(()=>r.root.parents.value.get(i.value)),activate:(a,c)=>r.root.activate(i.value,a,c),isActivated:j(()=>r.root.activated.value.has(i.value)),select:(a,c)=>r.root.select(i.value,a,c),isSelected:j(()=>r.root.selected.value.get(i.value)==="on"),isIndeterminate:j(()=>r.root.selected.value.get(i.value)==="indeterminate"),isLeaf:j(()=>!r.root.children.value.get(i.value)),isGroupActivator:r.isGroupActivator};return pl(()=>{r.isGroupActivator||r.root.itemsRegistration.value==="props"||vt(()=>{r.root.register(i.value,r.id.value,bt(t),n)})}),Tn(()=>{r.isGroupActivator||r.root.itemsRegistration.value==="props"||r.root.unregister(i.value)}),Se(i,(a,c)=>{r.isGroupActivator||r.root.itemsRegistration.value==="props"||(r.root.unregister(c),vt(()=>{r.root.register(a,r.id.value,bt(t),n)}))}),Se(()=>bt(t),a=>{r.root.updateDisabled(i.value,a)}),n&&At(Si,o),o},dA=()=>{const e=Oe(Si,vS);At(Si,{...e,isGroupActivator:!0})};function fA(){const e=be(!1);return jr(()=>{window.requestAnimationFrame(()=>{e.value=!0})}),{ssrBootStyles:ee(()=>e.value?void 0:{transition:"none !important"}),isBooted:hi(e)}}const hA=Ni({name:"VListGroupActivator",setup(e,t){let{slots:n}=t;return dA(),()=>{var r;return(r=n.default)==null?void 0:r.call(n)}}}),pA=le({activeColor:String,baseColor:String,color:String,collapseIcon:{type:Et,default:"$collapse"},disabled:Boolean,expandIcon:{type:Et,default:"$expand"},rawId:[String,Number],prependIcon:Et,appendIcon:Et,fluid:Boolean,subgroup:Boolean,title:String,value:null,...ct(),...Mt()},"VListGroup"),ag=De()({name:"VListGroup",props:pA(),setup(e,t){let{slots:n}=t;const{isOpen:r,open:s,id:i}=yS(()=>e.value,()=>e.disabled,!0),o=j(()=>`v-list-group--id-${String(e.rawId??i.value)}`),a=fS(),{isBooted:c}=fA(),l=Oe(Si),d=ee(()=>{var m;return((m=l==null?void 0:l.root)==null?void 0:m.itemsRegistration.value)==="render"});function u(m){var v;["INPUT","TEXTAREA"].includes((v=m.target)==null?void 0:v.tagName)||s(!r.value,m)}const f=j(()=>({onClick:u,class:"v-list-group__header",id:o.value})),h=j(()=>r.value?e.collapseIcon:e.expandIcon),p=j(()=>({VListItem:{activeColor:e.activeColor,baseColor:e.baseColor,color:e.color,prependIcon:e.prependIcon||e.subgroup&&h.value,appendIcon:e.appendIcon||!e.subgroup&&h.value,title:e.title,value:e.value}}));return tt(()=>B(e.tag,{class:Me(["v-list-group",{"v-list-group--prepend":a==null?void 0:a.hasPrepend.value,"v-list-group--fluid":e.fluid,"v-list-group--subgroup":e.subgroup,"v-list-group--open":r.value},e.class]),style:Xe(e.style)},{default:()=>[n.activator&&B(un,{defaults:p.value},{default:()=>[B(hA,null,{default:()=>[n.activator({props:f.value,isOpen:r.value})]})]}),B(Qs,{transition:{component:XR},disabled:!c.value},{default:()=>{var m,v;return[d.value?ws(se("div",{class:"v-list-group__items",role:"group","aria-labelledby":o.value},[(m=n.default)==null?void 0:m.call(n)]),[[xf,r.value]]):r.value&&se("div",{class:"v-list-group__items",role:"group","aria-labelledby":o.value},[(v=n.default)==null?void 0:v.call(n)])]}})]})),{isOpen:r}}}),mA=le({opacity:[Number,String],...ct(),...Mt()},"VListItemSubtitle"),_S=De()({name:"VListItemSubtitle",props:mA(),setup(e,t){let{slots:n}=t;return tt(()=>B(e.tag,{class:Me(["v-list-item-subtitle",e.class]),style:Xe([{"--v-list-item-subtitle-opacity":e.opacity},e.style])},n)),{}}}),bS=Ff("v-list-item-title"),gA=le({active:{type:Boolean,default:void 0},activeClass:String,activeColor:String,appendAvatar:String,appendIcon:Et,baseColor:String,disabled:Boolean,lines:[Boolean,String],link:{type:Boolean,default:void 0},nav:Boolean,prependAvatar:String,prependIcon:Et,ripple:{type:[Boolean,Object],default:!0},slim:Boolean,prependGap:[Number,String],subtitle:{type:[String,Number,Boolean],default:void 0},title:{type:[String,Number,Boolean],default:void 0},value:null,onClick:vo(),onClickOnce:vo(),...Fi(),...ct(),...Ms(),...Hi(),...sa(),...mr(),...Jf(),...Mt(),...tn(),...Ps({variant:"text"})},"VListItem"),Cd=De()({name:"VListItem",directives:{vRipple:Uo},props:gA(),emits:{click:e=>!0},setup(e,t){let{attrs:n,slots:r,emit:s}=t;const i=Xf(e,n),o=j(()=>e.value===void 0?i.href.value:e.value),{activate:a,isActivated:c,select:l,isOpen:d,isSelected:u,isIndeterminate:f,isGroupActivator:h,root:p,parent:m,openOnSelect:v,id:g}=yS(o,()=>e.disabled,!1),y=fS(),_=j(()=>{var x;return e.active!==!1&&(e.active||((x=i.isActive)==null?void 0:x.value)||(p.activatable.value?c.value:u.value))}),S=ee(()=>e.link!==!1&&i.isLink.value),M=j(()=>!!y&&(p.selectable.value||p.activatable.value||e.value!=null)),R=j(()=>!e.disabled&&e.link!==!1&&(e.link||i.isClickable.value||M.value)),E=j(()=>y?S.value?"link":M.value?"option":"listitem":void 0),C=j(()=>{if(M.value)return p.activatable.value?c.value:p.selectable.value?u.value:_.value}),I=ee(()=>e.rounded||e.nav),A=ee(()=>e.color??e.activeColor),O=ee(()=>({color:_.value?A.value??e.baseColor:e.baseColor,variant:e.variant}));Se(()=>{var x;return(x=i.isActive)==null?void 0:x.value},x=>{x&&T()}),pl(()=>{var x;(x=i.isActive)!=null&&x.value&&vt(()=>T())});function T(){m.value!=null&&p.open(m.value,!0),v(!0)}const{themeClasses:P}=mn(e),{borderClasses:N}=$i(e),{colorClasses:z,colorStyles:X,variantClasses:q}=aa(O),{densityClasses:D}=Bi(e),{dimensionStyles:re}=Vi(e),{elevationClasses:U}=ia(e),{roundedClasses:ie}=gr(I),ae=ee(()=>e.lines?`v-list-item--${e.lines}-line`:void 0),ue=ee(()=>e.ripple!==void 0&&e.ripple&&(y!=null&&y.filterable)?{keys:["Enter"]}:e.ripple),Ce=j(()=>({isActive:_.value,select:l,isOpen:d.value,isSelected:u.value,isIndeterminate:f.value}));function Ne(x){var W,K;s("click",x),!["INPUT","TEXTAREA"].includes((W=x.target)==null?void 0:W.tagName)&&R.value&&((K=i.navigate)==null||K.call(i,x),!h&&(p.activatable.value?a(!c.value,x):(p.selectable.value||e.value!=null&&!S.value)&&l(!u.value,x)))}function He(x){const W=x.target;["INPUT","TEXTAREA"].includes(W.tagName)||(x.key==="Enter"||x.key===" "&&!(y!=null&&y.filterable))&&(x.preventDefault(),x.stopPropagation(),x.target.dispatchEvent(new MouseEvent("click",x)))}return tt(()=>{const x=S.value?"a":e.tag,W=r.title||e.title!=null,K=r.subtitle||e.subtitle!=null,ne=!!(e.appendAvatar||e.appendIcon),ye=!!(ne||r.append),b=!!(e.prependAvatar||e.prependIcon),w=!!(b||r.prepend);return y==null||y.updateHasPrepend(w),e.activeColor&&D_("active-color",["color","base-color"]),ws(B(x,Qe(i.linkProps,{class:["v-list-item",{"v-list-item--active":_.value,"v-list-item--disabled":e.disabled,"v-list-item--link":R.value,"v-list-item--nav":e.nav,"v-list-item--slim":e.slim,[`${e.activeClass}`]:e.activeClass&&_.value},P.value,N.value,z.value,D.value,U.value,ae.value,ie.value,q.value,e.class],style:[{"--v-list-prepend-gap":me(e.prependGap)},X.value,re.value,e.style],tabindex:R.value?y?-2:0:void 0,"aria-selected":C.value,role:E.value,onClick:Ne,onKeydown:R.value&&!S.value&&He}),{default:()=>{var k;return[oa(R.value||_.value,"v-list-item"),w&&se("div",{key:"prepend",class:"v-list-item__prepend"},[r.prepend?B(un,{key:"prepend-defaults",disabled:!b,defaults:{VAvatar:{density:e.density,image:e.prependAvatar},VIcon:{density:e.density,icon:e.prependIcon},VListItemAction:{start:!0}}},{default:()=>{var L;return[(L=r.prepend)==null?void 0:L.call(r,Ce.value)]}}):se(Ze,null,[e.prependAvatar&&B(Fc,{key:"prepend-avatar",density:e.density,image:e.prependAvatar},null),e.prependIcon&&B(Hn,{key:"prepend-icon",density:e.density,icon:e.prependIcon},null)]),se("div",{class:"v-list-item__spacer"},null)]),se("div",{class:"v-list-item__content","data-no-activator":""},[W&&B(bS,{key:"title"},{default:()=>{var L;return[((L=r.title)==null?void 0:L.call(r,{title:e.title}))??bn(e.title)]}}),K&&B(_S,{key:"subtitle"},{default:()=>{var L;return[((L=r.subtitle)==null?void 0:L.call(r,{subtitle:e.subtitle}))??bn(e.subtitle)]}}),(k=r.default)==null?void 0:k.call(r,Ce.value)]),ye&&se("div",{key:"append",class:"v-list-item__append"},[r.append?B(un,{key:"append-defaults",disabled:!ne,defaults:{VAvatar:{density:e.density,image:e.appendAvatar},VIcon:{density:e.density,icon:e.appendIcon},VListItemAction:{end:!0}}},{default:()=>{var L;return[(L=r.append)==null?void 0:L.call(r,Ce.value)]}}):se(Ze,null,[e.appendIcon&&B(Hn,{key:"append-icon",density:e.density,icon:e.appendIcon},null),e.appendAvatar&&B(Fc,{key:"append-avatar",density:e.density,image:e.appendAvatar},null)]),se("div",{class:"v-list-item__spacer"},null)])]}}),[[Uo,R.value&&ue.value]])}),{activate:a,isActivated:c,isGroupActivator:h,isSelected:u,list:y,select:l,root:p,id:g,link:i}}}),vA=le({color:String,inset:Boolean,sticky:Boolean,title:String,...ct(),...Mt()},"VListSubheader"),yA=De()({name:"VListSubheader",props:vA(),setup(e,t){let{slots:n}=t;const{textColorClasses:r,textColorStyles:s}=bi(()=>e.color);return tt(()=>{const i=!!(n.default||e.title);return B(e.tag,{class:Me(["v-list-subheader",{"v-list-subheader--inset":e.inset,"v-list-subheader--sticky":e.sticky},r.value,e.class]),style:Xe([{textColorStyles:s},e.style])},{default:()=>{var o;return[i&&se("div",{class:"v-list-subheader__text"},[((o=n.default)==null?void 0:o.call(n))??e.title])]}})}),{}}}),_A=le({items:Array,returnObject:Boolean},"VListChildren"),SS=De()({name:"VListChildren",props:_A(),setup(e,t){let{slots:n}=t;return dS(),()=>{var r,s;return((r=n.default)==null?void 0:r.call(n))??((s=e.items)==null?void 0:s.map(i=>{var f,h;let{children:o,props:a,type:c,raw:l}=i;if(c==="divider")return((f=n.divider)==null?void 0:f.call(n,{props:a}))??B(uS,a,null);if(c==="subheader")return((h=n.subheader)==null?void 0:h.call(n,{props:a}))??B(yA,a,null);const d={subtitle:n.subtitle?p=>{var m;return(m=n.subtitle)==null?void 0:m.call(n,{...p,item:l})}:void 0,prepend:n.prepend?p=>{var m;return(m=n.prepend)==null?void 0:m.call(n,{...p,item:l})}:void 0,append:n.append?p=>{var m;return(m=n.append)==null?void 0:m.call(n,{...p,item:l})}:void 0,title:n.title?p=>{var m;return(m=n.title)==null?void 0:m.call(n,{...p,item:l})}:void 0},u=ag.filterProps(a);return o?B(ag,Qe(u,{value:e.returnObject?l:a==null?void 0:a.value,rawId:a==null?void 0:a.value}),{activator:p=>{let{props:m}=p;const v=Qe(a,m,{value:e.returnObject?l:a.value});return n.header?n.header({props:v}):B(Cd,v,d)},default:()=>B(SS,{items:o,returnObject:e.returnObject},n)}):n.item?n.item({props:a}):B(Cd,Qe(a,{value:e.returnObject?l:a.value}),d)}))}}}),bA=le({items:{type:Array,default:()=>[]},itemTitle:{type:[String,Array,Function],default:"title"},itemValue:{type:[String,Array,Function],default:"value"},itemChildren:{type:[Boolean,String,Array,Function],default:"children"},itemProps:{type:[Boolean,String,Array,Function],default:"props"},itemType:{type:[Boolean,String,Array,Function],default:"type"},returnObject:Boolean,valueComparator:Function},"list-items"),SA=new Set(["item","divider","subheader"]);function ui(e,t){const n=Nn(t,e.itemTitle,t),r=Nn(t,e.itemValue,n),s=Nn(t,e.itemChildren),i=e.itemProps===!0?typeof t=="object"&&t!=null&&!Array.isArray(t)?"children"in t?As(t,["children"]):t:void 0:Nn(t,e.itemProps);let o=Nn(t,e.itemType,"item");SA.has(o)||(o="item");const a={title:n,value:r,...i};return{type:o,title:String(a.title??""),value:a.value,props:a,children:o==="item"&&Array.isArray(s)?ES(e,s):void 0,raw:t}}ui.neededProps=["itemTitle","itemValue","itemChildren","itemProps","itemType"];function ES(e,t){const n=Pf(e,ui.neededProps),r=[];for(const s of t)r.push(ui(n,s));return r}function S4(e){const t=j(()=>ES(e,e.items)),n=j(()=>t.value.some(a=>a.value===null)),r=be(new Map),s=be([]);hn(()=>{const a=t.value,c=new Map,l=[];for(let d=0;d{let{raw:l}=c;return l}):a.map(c=>{let{value:l}=c;return l})}return{items:t,transformIn:i,transformOut:o}}const EA=new Set(["item","divider","subheader"]);function wA(e,t){const n=Ts(t)?t:Nn(t,e.itemTitle),r=Ts(t)?t:Nn(t,e.itemValue,void 0),s=Nn(t,e.itemChildren),i=e.itemProps===!0?As(t,["children"]):Nn(t,e.itemProps);let o=Nn(t,e.itemType,"item");EA.has(o)||(o="item");const a={title:n,value:r,...i};return{type:o,title:a.title,value:a.value,props:a,children:o==="item"&&s?wS(e,s):void 0,raw:t}}function wS(e,t){const n=[];for(const r of t)n.push(wA(e,r));return n}function CA(e){return{items:j(()=>wS(e,e.items))}}const TA=le({baseColor:String,activeColor:String,activeClass:String,bgColor:String,disabled:Boolean,filterable:Boolean,expandIcon:Et,collapseIcon:Et,lines:{type:[Boolean,String],default:"one"},slim:Boolean,prependGap:[Number,String],indent:[Number,String],nav:Boolean,"onClick:open":vo(),"onClick:select":vo(),"onUpdate:opened":vo(),...lA({selectStrategy:"single-leaf",openStrategy:"list"}),...Fi(),...ct(),...Ms(),...Hi(),...sa(),...bA(),...mr(),...Mt(),...tn(),...Ps({variant:"text"})},"VList"),kA=De()({name:"VList",props:TA(),emits:{"update:selected":e=>!0,"update:activated":e=>!0,"update:opened":e=>!0,"click:open":e=>!0,"click:activate":e=>!0,"click:select":e=>!0},setup(e,t){let{slots:n}=t;const{items:r}=CA(e),{themeClasses:s}=mn(e),{backgroundColorClasses:i,backgroundColorStyles:o}=li(()=>e.bgColor),{borderClasses:a}=$i(e),{densityClasses:c}=Bi(e),{dimensionStyles:l}=Vi(e),{elevationClasses:d}=ia(e),{roundedClasses:u}=gr(e),{children:f,open:h,parents:p,select:m,getPath:v}=uA(e,r,()=>e.returnObject),g=ee(()=>e.lines?`v-list--${e.lines}-line`:void 0),y=ee(()=>e.activeColor),_=ee(()=>e.baseColor),S=ee(()=>e.color),M=ee(()=>e.selectable||e.activatable);dS({filterable:e.filterable}),vl({VListGroup:{activeColor:y,baseColor:_,color:S,expandIcon:ee(()=>e.expandIcon),collapseIcon:ee(()=>e.collapseIcon)},VListItem:{activeClass:ee(()=>e.activeClass),activeColor:y,baseColor:_,color:S,density:ee(()=>e.density),disabled:ee(()=>e.disabled),lines:ee(()=>e.lines),nav:ee(()=>e.nav),slim:ee(()=>e.slim),variant:ee(()=>e.variant)}});const R=be(!1),E=we();function C(N){R.value=!0}function I(N){R.value=!1}function A(N){var z;!R.value&&!(N.relatedTarget&&((z=E.value)!=null&&z.contains(N.relatedTarget)))&&P()}function O(N){const z=N.target;if(!(!E.value||z.tagName==="INPUT"&&["Home","End"].includes(N.key)||z.tagName==="TEXTAREA")){if(N.key==="ArrowDown")P("next");else if(N.key==="ArrowUp")P("prev");else if(N.key==="Home")P("first");else if(N.key==="End")P("last");else return;N.preventDefault()}}function T(N){R.value=!0}function P(N){if(E.value)return z_(E.value,N)}return tt(()=>{const N=e.indent??(e.prependGap?Number(e.prependGap)+24:void 0);return B(e.tag,{ref:E,class:Me(["v-list",{"v-list--disabled":e.disabled,"v-list--nav":e.nav,"v-list--slim":e.slim},s.value,i.value,a.value,c.value,d.value,g.value,u.value,e.class]),style:Xe([{"--v-list-indent":me(N),"--v-list-group-prepend":N?"0px":void 0,"--v-list-prepend-gap":me(e.prependGap)},o.value,l.value,e.style]),tabindex:e.disabled?-1:0,role:M.value?"listbox":"list","aria-activedescendant":void 0,onFocusin:C,onFocusout:I,onFocus:A,onKeydown:O,onMousedown:T},{default:()=>[B(SS,{items:r.value,returnObject:e.returnObject},n)]})}),{open:h,select:m,focus:P,children:f,parents:p,getPath:v}}});let Td=null;const CS={name:"RateLimitModal",data(){return{isVisible:!1,activeRequests:[]}},computed:{hasActiveRequests(){return this.activeRequests.length>0}},watch:{hasActiveRequests(e){this.isVisible=e}},methods:{close(){this.isVisible=!1},show(e,t,n){const r=Date.now()+Math.random().toString(36).substring(2,9),s=Math.max(0,Math.floor((new Date(e)-new Date)/1e3)),i={id:r,resetTime:e,path:t,method:n,remainingSeconds:s};this.activeRequests.push(i),this.startCountdown(r),this.isVisible=!0},startCountdown(e){const t=this.activeRequests.find(r=>r.id===e);if(!t)return;const n=setInterval(()=>{const r=this.activeRequests.findIndex(s=>s.id===e);if(r===-1){clearInterval(n);return}this.activeRequests[r].remainingSeconds--,this.activeRequests[r].remainingSeconds<=0&&(clearInterval(n),this.activeRequests.splice(r,1))},1e3);t.intervalId=n},clearAllCountdowns(){this.activeRequests.forEach(e=>{e.intervalId&&clearInterval(e.intervalId)}),this.activeRequests=[]}},beforeUnmount(){this.clearAllCountdowns()},created(){Td=this}};CS.show=function(e,t,n){Td&&Td.show(e,t,n)};const IA=CS,xA={class:"text-primary font-weight-bold"};function RA(e,t,n,r,s,i){return cn(),Dn(ZR,{modelValue:e.isVisible,"onUpdate:modelValue":t[0]||(t[0]=o=>e.isVisible=o),"max-width":"500",persistent:""},{default:gt(()=>[B(sg,{class:"rate-limit-modal"},{default:gt(()=>[B(sS,{class:"text-center pa-4 bg-error text-white"},{default:gt(()=>[B(Hn,{class:"mr-2",icon:"mdi-clock-alert-outline",size:"large"}),t[1]||(t[1]=ao(" 请求频率超限 ",-1))]),_:1}),B(Ed,{class:"pa-6"},{default:gt(()=>[t[3]||(t[3]=se("div",{class:"text-body-1 mb-4"},"您的请求过于频繁,请稍后再试。",-1)),e.activeRequests.length>0?(cn(),Dn(sg,{key:0,class:"mb-4",flat:""},{default:gt(()=>[B(Ed,null,{default:gt(()=>[(cn(!0),C_(Ze,null,S1(e.activeRequests,(o,a)=>(cn(),Dn(kA,{key:a,class:"mb-4"},{default:gt(()=>[B(Cd,{color:"primary","prepend-icon":"mdi-web"},{default:gt(()=>[B(bS,null,{default:gt(()=>[t[2]||(t[2]=ao(" 等待时间: ",-1)),se("span",xA,bn(o.remainingSeconds),1)]),_:2},1024),B(_S,null,{default:gt(()=>[ao(bn(o.method)+" "+bn(o.path),1)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128)),e.index[B(tA),B(Kb,{color:"primary",variant:"tonal",onClick:e.close},{default:gt(()=>[...t[5]||(t[5]=[ao(" 我知道了",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])}const AA=Ob(IA,[["render",RA]]),MA=le({...ct(),...As(zk(),["fullHeight"]),...tn()},"VApp"),PA=De()({name:"VApp",props:MA(),setup(e,t){let{slots:n}=t;const r=mn(e),{layoutClasses:s,getLayoutItem:i,items:o,layoutRef:a}=Kk({...e,fullHeight:!0}),{rtlClasses:c}=na();return tt(()=>{var l;return se("div",{ref:a,class:Me(["v-application",r.themeClasses.value,s.value,c.value,e.class]),style:Xe([e.style])},[se("div",{class:"v-application__wrap"},[(l=n.default)==null?void 0:l.call(n)])])}),{getLayoutItem:i,items:o,theme:r}}}),OA={__name:"App",setup(e){const t=hb();return jr(()=>{const n=zf("theme.mode");t.global.name.value=n,window.addEventListener("beforeinstallprompt",r=>{r.preventDefault(),window.deferredPwaPrompt=r,window.dispatchEvent(new Event("pwa-prompt-ready"))})}),(n,r)=>{const s=b1("router-view"),i=nS;return cn(),Dn(PA,null,{default:gt(()=>[B(s,null,{default:gt(({Component:o,route:a})=>[B($r,{mode:"out-in",name:"md3"},{default:gt(()=>[(cn(),Dn(i_(o),{key:a.path}))]),_:2},1024)]),_:1}),B(i),B(AA)]),_:1})}}};let _u;const cg=e=>({get:async()=>({visitorId:"unknown",error:(e==null?void 0:e.message)||String(e||""),fallback:!0})}),LA=async()=>{try{const e=await yt(()=>import("./fp.esm-HJFDfcHo.js"),[],import.meta.url);return(e==null?void 0:e.default)||e}catch(e){return console.warn("Fingerprint library blocked or failed to load; using fallback agent.",e),null}},TS=()=>(_u||(_u=(async()=>{const e=await LA();if(!e)return cg(new Error("fingerprint module unavailable"));try{return await e.load()}catch(t){return console.warn("FingerprintJS.load failed, using fallback agent.",t),cg(t)}})()),_u),kS=async()=>{const t=await(await TS()).get();return(t==null?void 0:t.visitorId)||"unknown"},E4=async()=>await(await TS()).get(),ce=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,xe=globalThis,ys="10.36.0";function Os(){return kl(xe),xe}function kl(e){const t=e.__SENTRY__=e.__SENTRY__||{};return t.version=t.version||ys,t[ys]=t[ys]||{}}function Ui(e,t,n=xe){const r=n.__SENTRY__=n.__SENTRY__||{},s=r[ys]=r[ys]||{};return s[e]||(s[e]=t())}const NA=["debug","info","warn","error","log","assert","trace"],DA="Sentry Logger ",$c={};function vr(e){if(!("console"in xe))return e();const t=xe.console,n={},r=Object.keys($c);r.forEach(s=>{const i=$c[s];n[s]=t[s],t[s]=i});try{return e()}finally{r.forEach(s=>{t[s]=n[s]})}}function FA(){sh().enabled=!0}function $A(){sh().enabled=!1}function IS(){return sh().enabled}function BA(...e){rh("log",...e)}function HA(...e){rh("warn",...e)}function VA(...e){rh("error",...e)}function rh(e,...t){ce&&IS()&&vr(()=>{xe.console[e](`${DA}[${e}]:`,...t)})}function sh(){return ce?Ui("loggerSettings",()=>({enabled:!1})):{enabled:!1}}const J={enable:FA,disable:$A,isEnabled:IS,log:BA,warn:HA,error:VA},xS=50,ks="?",lg=/\(error: (.*)\)/,ug=/captureMessage|captureException/;function RS(...e){const t=e.sort((n,r)=>n[0]-r[0]).map(n=>n[1]);return(n,r=0,s=0)=>{const i=[],o=n.split(` +`);for(let a=r;a1024&&(c=c.slice(0,1024));const l=lg.test(c)?c.replace(lg,"$1"):c;if(!l.match(/\S*Error: /)){for(const d of t){const u=d(l);if(u){i.push(u);break}}if(i.length>=xS+s)break}}return WA(i.slice(s))}}function UA(e){return Array.isArray(e)?RS(...e):e}function WA(e){if(!e.length)return[];const t=Array.from(e);return/sentryWrapped/.test(Oa(t).function||"")&&t.pop(),t.reverse(),ug.test(Oa(t).function||"")&&(t.pop(),ug.test(Oa(t).function||"")&&t.pop()),t.slice(0,xS).map(n=>({...n,filename:n.filename||Oa(t).filename,function:n.function||ks}))}function Oa(e){return e[e.length-1]||{}}const bu="";function ar(e){try{return!e||typeof e!="function"?bu:e.name||bu}catch{return bu}}function dg(e){const t=e.exception;if(t){const n=[];try{return t.values.forEach(r=>{r.stacktrace.frames&&n.push(...r.stacktrace.frames)}),n}catch{return}}}function AS(e){return"__v_isVNode"in e&&e.__v_isVNode?"[VueVNode]":"[VueViewModel]"}const tc={},fg={};function Kr(e,t){tc[e]=tc[e]||[],tc[e].push(t)}function Yr(e,t){if(!fg[e]){fg[e]=!0;try{t()}catch(n){ce&&J.error(`Error while instrumenting ${e}`,n)}}}function dn(e,t){const n=e&&tc[e];if(n)for(const r of n)try{r(t)}catch(s){ce&&J.error(`Error while triggering instrumentation handler. +Type: ${e} +Name: ${ar(r)} +Error:`,s)}}let Su=null;function MS(e){const t="error";Kr(t,e),Yr(t,jA)}function jA(){Su=xe.onerror,xe.onerror=function(e,t,n,r,s){return dn("error",{column:r,error:s,line:n,msg:e,url:t}),Su?Su.apply(this,arguments):!1},xe.onerror.__SENTRY_INSTRUMENTED__=!0}let Eu=null;function PS(e){const t="unhandledrejection";Kr(t,e),Yr(t,zA)}function zA(){Eu=xe.onunhandledrejection,xe.onunhandledrejection=function(e){return dn("unhandledrejection",e),Eu?Eu.apply(this,arguments):!0},xe.onunhandledrejection.__SENTRY_INSTRUMENTED__=!0}const OS=Object.prototype.toString;function Il(e){switch(OS.call(e)){case"[object Error]":case"[object Exception]":case"[object DOMException]":case"[object WebAssembly.Exception]":return!0;default:return cr(e,Error)}}function Wi(e,t){return OS.call(e)===`[object ${t}]`}function LS(e){return Wi(e,"ErrorEvent")}function hg(e){return Wi(e,"DOMError")}function qA(e){return Wi(e,"DOMException")}function Qn(e){return Wi(e,"String")}function ih(e){return typeof e=="object"&&e!==null&&"__sentry_template_string__"in e&&"__sentry_template_values__"in e}function Ei(e){return e===null||ih(e)||typeof e!="object"&&typeof e!="function"}function Wo(e){return Wi(e,"Object")}function xl(e){return typeof Event<"u"&&cr(e,Event)}function GA(e){return typeof Element<"u"&&cr(e,Element)}function KA(e){return Wi(e,"RegExp")}function ji(e){return!!(e!=null&&e.then&&typeof e.then=="function")}function YA(e){return Wo(e)&&"nativeEvent"in e&&"preventDefault"in e&&"stopPropagation"in e}function cr(e,t){try{return e instanceof t}catch{return!1}}function NS(e){return!!(typeof e=="object"&&e!==null&&(e.__isVue||e._isVue||e.__v_isVNode))}function oh(e){return typeof Request<"u"&&cr(e,Request)}const ah=xe,XA=80;function zt(e,t={}){if(!e)return"";try{let n=e;const r=5,s=[];let i=0,o=0;const a=" > ",c=a.length;let l;const d=Array.isArray(t)?t:t.keyAttrs,u=!Array.isArray(t)&&t.maxStringLength||XA;for(;n&&i++1&&o+s.length*c+l.length>=u));)s.push(l),o+=l.length,n=n.parentNode;return s.reverse().join(a)}catch{return""}}function JA(e,t){const n=e,r=[];if(!(n!=null&&n.tagName))return"";if(ah.HTMLElement&&n instanceof HTMLElement&&n.dataset){if(n.dataset.sentryComponent)return n.dataset.sentryComponent;if(n.dataset.sentryElement)return n.dataset.sentryElement}r.push(n.tagName.toLowerCase());const s=t!=null&&t.length?t.filter(o=>n.getAttribute(o)).map(o=>[o,n.getAttribute(o)]):null;if(s!=null&&s.length)s.forEach(o=>{r.push(`[${o[0]}="${o[1]}"]`)});else{n.id&&r.push(`#${n.id}`);const o=n.className;if(o&&Qn(o)){const a=o.split(/\s+/);for(const c of a)r.push(`.${c}`)}}const i=["aria-label","type","name","title","alt"];for(const o of i){const a=n.getAttribute(o);a&&r.push(`[${o}="${a}"]`)}return r.join("")}function Ls(){try{return ah.document.location.href}catch{return""}}function DS(e){if(!ah.HTMLElement)return null;let t=e;const n=5;for(let r=0;r"}}function mg(e){if(typeof e=="object"&&e!==null){const t={};for(const n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t}else return{}}function ZA(e){const t=Object.keys($S(e));return t.sort(),t[0]?t.join(", "):"[object has no keys]"}let Us;function ca(e){if(Us!==void 0)return Us?Us(e):e();const t=Symbol.for("__SENTRY_SAFE_RANDOM_ID_WRAPPER__"),n=xe;return t in n&&typeof n[t]=="function"?(Us=n[t],Us(e)):(Us=null,e())}function Or(){return ca(()=>Math.random())}function la(){return ca(()=>Date.now())}function kd(e,t=0){return typeof e!="string"||t===0||e.length<=t?e:`${e.slice(0,t)}...`}function gg(e,t){if(!Array.isArray(e))return"";const n=[];for(let r=0;rnc(e,r,n))}function QA(){const e=xe;return e.crypto||e.msCrypto}let wu;function eM(){return Or()*16}function en(e=QA()){try{if(e!=null&&e.randomUUID)return ca(()=>e.randomUUID()).replace(/-/g,"")}catch{}return wu||(wu="10000000100040008000"+1e11),wu.replace(/[018]/g,t=>(t^(eM()&15)>>t/4).toString(16))}function BS(e){var t,n;return(n=(t=e.exception)==null?void 0:t.values)==null?void 0:n[0]}function as(e){const{message:t,event_id:n}=e;if(t)return t;const r=BS(e);return r?r.type&&r.value?`${r.type}: ${r.value}`:r.type||r.value||n||"":n||""}function Id(e,t,n){const r=e.exception=e.exception||{},s=r.values=r.values||[],i=s[0]=s[0]||{};i.value||(i.value=t||""),i.type||(i.type="Error")}function wi(e,t){const n=BS(e);if(!n)return;const r={type:"generic",handled:!0},s=n.mechanism;if(n.mechanism={...r,...s,...t},t&&"data"in t){const i={...s==null?void 0:s.data,...t.data};n.mechanism.data=i}}function vg(e){if(tM(e))return!0;try{qt(e,"__sentry_captured__",!0)}catch{}return!1}function tM(e){try{return e.__sentry_captured__}catch{}}const HS=1e3;function Ns(){return la()/HS}function nM(){const{performance:e}=xe;if(!(e!=null&&e.now)||!e.timeOrigin)return Ns;const t=e.timeOrigin;return()=>(t+ca(()=>e.now()))/HS}let yg;function lt(){return(yg??(yg=nM()))()}let Cu=null;function rM(){var o;const{performance:e}=xe;if(!(e!=null&&e.now))return;const t=3e5,n=ca(()=>e.now()),r=la(),s=e.timeOrigin;if(typeof s=="number"&&Math.abs(s+n-r)oM(n)};return e&&Ci(n,e),n}function Ci(e,t={}){if(t.user&&(!e.ipAddress&&t.user.ip_address&&(e.ipAddress=t.user.ip_address),!e.did&&!t.did&&(e.did=t.user.id||t.user.email||t.user.username)),e.timestamp=t.timestamp||lt(),t.abnormal_mechanism&&(e.abnormal_mechanism=t.abnormal_mechanism),t.ignoreDuration&&(e.ignoreDuration=t.ignoreDuration),t.sid&&(e.sid=t.sid.length===32?t.sid:en()),t.init!==void 0&&(e.init=t.init),!e.did&&t.did&&(e.did=`${t.did}`),typeof t.started=="number"&&(e.started=t.started),e.ignoreDuration)e.duration=void 0;else if(typeof t.duration=="number")e.duration=t.duration;else{const n=e.timestamp-e.started;e.duration=n>=0?n:0}t.release&&(e.release=t.release),t.environment&&(e.environment=t.environment),!e.ipAddress&&t.ipAddress&&(e.ipAddress=t.ipAddress),!e.userAgent&&t.userAgent&&(e.userAgent=t.userAgent),typeof t.errors=="number"&&(e.errors=t.errors),t.status&&(e.status=t.status)}function iM(e,t){let n={};e.status==="ok"&&(n={status:"exited"}),Ci(e,n)}function oM(e){return{sid:`${e.sid}`,init:e.init,started:new Date(e.started*1e3).toISOString(),timestamp:new Date(e.timestamp*1e3).toISOString(),status:e.status,errors:e.errors,did:typeof e.did=="number"||typeof e.did=="string"?`${e.did}`:void 0,duration:e.duration,abnormal_mechanism:e.abnormal_mechanism,attrs:{release:e.release,environment:e.environment,ip_address:e.ipAddress,user_agent:e.userAgent}}}function ua(e,t,n=2){if(!t||typeof t!="object"||n<=0)return t;if(e&&Object.keys(t).length===0)return e;const r={...e};for(const s in t)Object.prototype.hasOwnProperty.call(t,s)&&(r[s]=ua(r[s],t[s],n-1));return r}function lr(){return en()}function tr(){return en().substring(16)}const xd="_sentrySpan";function Ti(e,t){t?qt(e,xd,t):delete e[xd]}function Bc(e){return e[xd]}const aM=100;class Vn{constructor(){this._notifyingListeners=!1,this._scopeListeners=[],this._eventProcessors=[],this._breadcrumbs=[],this._attachments=[],this._user={},this._tags={},this._attributes={},this._extra={},this._contexts={},this._sdkProcessingMetadata={},this._propagationContext={traceId:lr(),sampleRand:Or()}}clone(){const t=new Vn;return t._breadcrumbs=[...this._breadcrumbs],t._tags={...this._tags},t._attributes={...this._attributes},t._extra={...this._extra},t._contexts={...this._contexts},this._contexts.flags&&(t._contexts.flags={values:[...this._contexts.flags.values]}),t._user=this._user,t._level=this._level,t._session=this._session,t._transactionName=this._transactionName,t._fingerprint=this._fingerprint,t._eventProcessors=[...this._eventProcessors],t._attachments=[...this._attachments],t._sdkProcessingMetadata={...this._sdkProcessingMetadata},t._propagationContext={...this._propagationContext},t._client=this._client,t._lastEventId=this._lastEventId,Ti(t,Bc(this)),t}setClient(t){this._client=t}setLastEventId(t){this._lastEventId=t}getClient(){return this._client}lastEventId(){return this._lastEventId}addScopeListener(t){this._scopeListeners.push(t)}addEventProcessor(t){return this._eventProcessors.push(t),this}setUser(t){return this._user=t||{email:void 0,id:void 0,ip_address:void 0,username:void 0},this._session&&Ci(this._session,{user:t}),this._notifyScopeListeners(),this}getUser(){return this._user}setTags(t){return this._tags={...this._tags,...t},this._notifyScopeListeners(),this}setTag(t,n){return this.setTags({[t]:n})}setAttributes(t){return this._attributes={...this._attributes,...t},this._notifyScopeListeners(),this}setAttribute(t,n){return this.setAttributes({[t]:n})}removeAttribute(t){return t in this._attributes&&(delete this._attributes[t],this._notifyScopeListeners()),this}setExtras(t){return this._extra={...this._extra,...t},this._notifyScopeListeners(),this}setExtra(t,n){return this._extra={...this._extra,[t]:n},this._notifyScopeListeners(),this}setFingerprint(t){return this._fingerprint=t,this._notifyScopeListeners(),this}setLevel(t){return this._level=t,this._notifyScopeListeners(),this}setTransactionName(t){return this._transactionName=t,this._notifyScopeListeners(),this}setContext(t,n){return n===null?delete this._contexts[t]:this._contexts[t]=n,this._notifyScopeListeners(),this}setSession(t){return t?this._session=t:delete this._session,this._notifyScopeListeners(),this}getSession(){return this._session}update(t){if(!t)return this;const n=typeof t=="function"?t(this):t,r=n instanceof Vn?n.getScopeData():Wo(n)?t:void 0,{tags:s,attributes:i,extra:o,user:a,contexts:c,level:l,fingerprint:d=[],propagationContext:u}=r||{};return this._tags={...this._tags,...s},this._attributes={...this._attributes,...i},this._extra={...this._extra,...o},this._contexts={...this._contexts,...c},a&&Object.keys(a).length&&(this._user=a),l&&(this._level=l),d.length&&(this._fingerprint=d),u&&(this._propagationContext=u),this}clear(){return this._breadcrumbs=[],this._tags={},this._attributes={},this._extra={},this._user={},this._contexts={},this._level=void 0,this._transactionName=void 0,this._fingerprint=void 0,this._session=void 0,Ti(this,void 0),this._attachments=[],this.setPropagationContext({traceId:lr(),sampleRand:Or()}),this._notifyScopeListeners(),this}addBreadcrumb(t,n){var i;const r=typeof n=="number"?n:aM;if(r<=0)return this;const s={timestamp:Ns(),...t,message:t.message?kd(t.message,2048):t.message};return this._breadcrumbs.push(s),this._breadcrumbs.length>r&&(this._breadcrumbs=this._breadcrumbs.slice(-r),(i=this._client)==null||i.recordDroppedEvent("buffer_overflow","log_item")),this._notifyScopeListeners(),this}getLastBreadcrumb(){return this._breadcrumbs[this._breadcrumbs.length-1]}clearBreadcrumbs(){return this._breadcrumbs=[],this._notifyScopeListeners(),this}addAttachment(t){return this._attachments.push(t),this}clearAttachments(){return this._attachments=[],this}getScopeData(){return{breadcrumbs:this._breadcrumbs,attachments:this._attachments,contexts:this._contexts,tags:this._tags,attributes:this._attributes,extra:this._extra,user:this._user,level:this._level,fingerprint:this._fingerprint||[],eventProcessors:this._eventProcessors,propagationContext:this._propagationContext,sdkProcessingMetadata:this._sdkProcessingMetadata,transactionName:this._transactionName,span:Bc(this)}}setSDKProcessingMetadata(t){return this._sdkProcessingMetadata=ua(this._sdkProcessingMetadata,t,2),this}setPropagationContext(t){return this._propagationContext=t,this}getPropagationContext(){return this._propagationContext}captureException(t,n){const r=(n==null?void 0:n.event_id)||en();if(!this._client)return ce&&J.warn("No client configured on scope - will not capture exception!"),r;const s=new Error("Sentry syntheticException");return this._client.captureException(t,{originalException:t,syntheticException:s,...n,event_id:r},this),r}captureMessage(t,n,r){const s=(r==null?void 0:r.event_id)||en();if(!this._client)return ce&&J.warn("No client configured on scope - will not capture message!"),s;const i=(r==null?void 0:r.syntheticException)??new Error(t);return this._client.captureMessage(t,n,{originalException:t,syntheticException:i,...r,event_id:s},this),s}captureEvent(t,n){const r=(n==null?void 0:n.event_id)||en();return this._client?(this._client.captureEvent(t,{...n,event_id:r},this),r):(ce&&J.warn("No client configured on scope - will not capture event!"),r)}_notifyScopeListeners(){this._notifyingListeners||(this._notifyingListeners=!0,this._scopeListeners.forEach(t=>{t(this)}),this._notifyingListeners=!1)}}function cM(){return Ui("defaultCurrentScope",()=>new Vn)}function lM(){return Ui("defaultIsolationScope",()=>new Vn)}class uM{constructor(t,n){let r;t?r=t:r=new Vn;let s;n?s=n:s=new Vn,this._stack=[{scope:r}],this._isolationScope=s}withScope(t){const n=this._pushScope();let r;try{r=t(n)}catch(s){throw this._popScope(),s}return ji(r)?r.then(s=>(this._popScope(),s),s=>{throw this._popScope(),s}):(this._popScope(),r)}getClient(){return this.getStackTop().client}getScope(){return this.getStackTop().scope}getIsolationScope(){return this._isolationScope}getStackTop(){return this._stack[this._stack.length-1]}_pushScope(){const t=this.getScope().clone();return this._stack.push({client:this.getClient(),scope:t}),t}_popScope(){return this._stack.length<=1?!1:!!this._stack.pop()}}function ki(){const e=Os(),t=kl(e);return t.stack=t.stack||new uM(cM(),lM())}function dM(e){return ki().withScope(e)}function fM(e,t){const n=ki();return n.withScope(()=>(n.getStackTop().scope=e,t(e)))}function _g(e){return ki().withScope(()=>e(ki().getIsolationScope()))}function hM(){return{withIsolationScope:_g,withScope:dM,withSetScope:fM,withSetIsolationScope:(e,t)=>_g(t),getCurrentScope:()=>ki().getScope(),getIsolationScope:()=>ki().getIsolationScope()}}function zi(e){const t=kl(e);return t.acs?t.acs:hM()}function Le(){const e=Os();return zi(e).getCurrentScope()}function rn(){const e=Os();return zi(e).getIsolationScope()}function VS(){return Ui("globalScope",()=>new Vn)}function Rl(...e){const t=Os(),n=zi(t);if(e.length===2){const[r,s]=e;return r?n.withSetScope(r,s):n.withScope(s)}return n.withScope(e[0])}function Ee(){return Le().getClient()}function pM(e){const t=e.getPropagationContext(),{traceId:n,parentSpanId:r,propagationSpanId:s}=t,i={trace_id:n,span_id:s||tr()};return r&&(i.parent_span_id=r),i}const jt="sentry.source",lh="sentry.sample_rate",US="sentry.previous_trace_sample_rate",ur="sentry.op",st="sentry.origin",jo="sentry.idle_span_finish_reason",da="sentry.measurement_unit",fa="sentry.measurement_value",bg="sentry.custom_span_name",uh="sentry.profile_id",qi="sentry.exclusive_time",mM="sentry.link.type",gM=0,dh=1,ht=2;function vM(e){if(e<400&&e>=100)return{code:dh};if(e>=400&&e<500)switch(e){case 401:return{code:ht,message:"unauthenticated"};case 403:return{code:ht,message:"permission_denied"};case 404:return{code:ht,message:"not_found"};case 409:return{code:ht,message:"already_exists"};case 413:return{code:ht,message:"failed_precondition"};case 429:return{code:ht,message:"resource_exhausted"};case 499:return{code:ht,message:"cancelled"};default:return{code:ht,message:"invalid_argument"}}if(e>=500&&e<600)switch(e){case 501:return{code:ht,message:"unimplemented"};case 503:return{code:ht,message:"unavailable"};case 504:return{code:ht,message:"deadline_exceeded"};default:return{code:ht,message:"internal_error"}}return{code:ht,message:"internal_error"}}function WS(e,t){e.setAttribute("http.response.status_code",t);const n=vM(t);n.message!=="unknown_error"&&e.setStatus(n)}const jS="_sentryScope",zS="_sentryIsolationScope";function yM(e){try{const t=xe.WeakRef;if(typeof t=="function")return new t(e)}catch{}return e}function _M(e){if(e){if(typeof e=="object"&&"deref"in e&&typeof e.deref=="function")try{return e.deref()}catch{return}return e}}function bM(e,t,n){e&&(qt(e,zS,yM(n)),qt(e,jS,t))}function Hc(e){const t=e;return{scope:t[jS],isolationScope:_M(t[zS])}}const fh="sentry-",SM=/^sentry-/,EM=8192;function qS(e){const t=CM(e);if(!t)return;const n=Object.entries(t).reduce((r,[s,i])=>{if(s.match(SM)){const o=s.slice(fh.length);r[o]=i}return r},{});if(Object.keys(n).length>0)return n}function wM(e){if(!e)return;const t=Object.entries(e).reduce((n,[r,s])=>(s&&(n[`${fh}${r}`]=s),n),{});return TM(t)}function CM(e){if(!(!e||!Qn(e)&&!Array.isArray(e)))return Array.isArray(e)?e.reduce((t,n)=>{const r=Sg(n);return Object.entries(r).forEach(([s,i])=>{t[s]=i}),t},{}):Sg(e)}function Sg(e){return e.split(",").map(t=>{const n=t.indexOf("=");if(n===-1)return[];const r=t.slice(0,n),s=t.slice(n+1);return[r,s].map(i=>{try{return decodeURIComponent(i.trim())}catch{return}})}).reduce((t,[n,r])=>(n&&r&&(t[n]=r),t),{})}function TM(e){if(Object.keys(e).length!==0)return Object.entries(e).reduce((t,[n,r],s)=>{const i=`${encodeURIComponent(n)}=${encodeURIComponent(r)}`,o=s===0?i:`${t},${i}`;return o.length>EM?(ce&&J.warn(`Not adding key: ${n} with val: ${r} to baggage header due to exceeding baggage size limits.`),t):o},"")}const kM=/^o(\d+)\./,IM=/^(?:(\w+):)\/\/(?:(\w+)(?::(\w+)?)?@)((?:\[[:.%\w]+\]|[\w.-]+))(?::(\d+))?\/(.+)/;function xM(e){return e==="http"||e==="https"}function Gi(e,t=!1){const{host:n,path:r,pass:s,port:i,projectId:o,protocol:a,publicKey:c}=e;return`${a}://${c}${t&&s?`:${s}`:""}@${n}${i?`:${i}`:""}/${r&&`${r}/`}${o}`}function RM(e){const t=IM.exec(e);if(!t){vr(()=>{console.error(`Invalid Sentry Dsn: ${e}`)});return}const[n,r,s="",i="",o="",a=""]=t.slice(1);let c="",l=a;const d=l.split("/");if(d.length>1&&(c=d.slice(0,-1).join("/"),l=d.pop()),l){const u=l.match(/^\d+/);u&&(l=u[0])}return GS({host:i,pass:s,path:c,projectId:l,port:o,protocol:n,publicKey:r})}function GS(e){return{protocol:e.protocol,publicKey:e.publicKey||"",pass:e.pass||"",host:e.host,port:e.port||"",path:e.path||"",projectId:e.projectId}}function AM(e){if(!ce)return!0;const{port:t,projectId:n,protocol:r}=e;return["protocol","publicKey","host","projectId"].find(o=>e[o]?!1:(J.error(`Invalid Sentry Dsn: ${o} missing`),!0))?!1:n.match(/^\d+$/)?xM(r)?t&&isNaN(parseInt(t,10))?(J.error(`Invalid Sentry Dsn: Invalid port ${t}`),!1):!0:(J.error(`Invalid Sentry Dsn: Invalid protocol ${r}`),!1):(J.error(`Invalid Sentry Dsn: Invalid projectId ${n}`),!1)}function MM(e){const t=e.match(kM);return t==null?void 0:t[1]}function PM(e){const t=e.getOptions(),{host:n}=e.getDsn()||{};let r;return t.orgId?r=String(t.orgId):n&&(r=MM(n)),r}function OM(e){const t=typeof e=="string"?RM(e):GS(e);if(!(!t||!AM(t)))return t}function Is(e){if(typeof e=="boolean")return Number(e);const t=typeof e=="string"?parseFloat(e):e;if(!(typeof t!="number"||isNaN(t)||t<0||t>1))return t}const KS=new RegExp("^[ \\t]*([0-9a-f]{32})?-?([0-9a-f]{16})?-?([01])?[ \\t]*$");function LM(e){if(!e)return;const t=e.match(KS);if(!t)return;let n;return t[3]==="1"?n=!0:t[3]==="0"&&(n=!1),{traceId:t[1],parentSampled:n,parentSpanId:t[2]}}function NM(e,t){const n=LM(e),r=qS(t);if(!(n!=null&&n.traceId))return{traceId:lr(),sampleRand:Or()};const s=DM(n,r);r&&(r.sample_rand=s.toString());const{traceId:i,parentSpanId:o,parentSampled:a}=n;return{traceId:i,parentSpanId:o,sampled:a,dsc:r||{},sampleRand:s}}function YS(e=lr(),t=tr(),n){let r="";return n!==void 0&&(r=n?"-1":"-0"),`${e}-${t}${r}`}function XS(e=lr(),t=tr(),n){return`00-${e}-${t}-${n?"01":"00"}`}function DM(e,t){const n=Is(t==null?void 0:t.sample_rand);if(n!==void 0)return n;const r=Is(t==null?void 0:t.sample_rate);return r&&(e==null?void 0:e.parentSampled)!==void 0?e.parentSampled?Or()*r:r+Or()*(1-r):Or()}const JS=0,hh=1;let Eg=!1;function FM(e){const{spanId:t,traceId:n}=e.spanContext(),{data:r,op:s,parent_span_id:i,status:o,origin:a,links:c}=Re(e);return{parent_span_id:i,span_id:t,trace_id:n,data:r,op:s,status:o,origin:a,links:c}}function $M(e){const{spanId:t,traceId:n,isRemote:r}=e.spanContext(),s=r?t:Re(e).parent_span_id,i=Hc(e).scope,o=r?(i==null?void 0:i.getPropagationContext().propagationSpanId)||tr():t;return{parent_span_id:s,span_id:o,trace_id:n}}function BM(e){const{traceId:t,spanId:n}=e.spanContext(),r=Xr(e);return YS(t,n,r)}function HM(e){const{traceId:t,spanId:n}=e.spanContext(),r=Xr(e);return XS(t,n,r)}function ZS(e){if(e&&e.length>0)return e.map(({context:{spanId:t,traceId:n,traceFlags:r,...s},attributes:i})=>({span_id:t,trace_id:n,sampled:r===hh,attributes:i,...s}))}function _s(e){return typeof e=="number"?wg(e):Array.isArray(e)?e[0]+e[1]/1e9:e instanceof Date?wg(e.getTime()):lt()}function wg(e){return e>9999999999?e/1e3:e}function Re(e){var r;if(UM(e))return e.getSpanJSON();const{spanId:t,traceId:n}=e.spanContext();if(VM(e)){const{attributes:s,startTime:i,name:o,endTime:a,status:c,links:l}=e,d="parentSpanId"in e?e.parentSpanId:"parentSpanContext"in e?(r=e.parentSpanContext)==null?void 0:r.spanId:void 0;return{span_id:t,trace_id:n,data:s,description:o,parent_span_id:d,start_timestamp:_s(i),timestamp:_s(a)||void 0,status:QS(c),op:s[ur],origin:s[st],links:ZS(l)}}return{span_id:t,trace_id:n,start_timestamp:0,data:{}}}function VM(e){const t=e;return!!t.attributes&&!!t.startTime&&!!t.name&&!!t.endTime&&!!t.status}function UM(e){return typeof e.getSpanJSON=="function"}function Xr(e){const{traceFlags:t}=e.spanContext();return t===hh}function QS(e){if(!(!e||e.code===gM))return e.code===dh?"ok":e.message||"internal_error"}const bs="_sentryChildSpans",Rd="_sentryRootSpan";function e0(e,t){const n=e[Rd]||e;qt(t,Rd,n),e[bs]?e[bs].add(t):qt(e,bs,new Set([t]))}function WM(e,t){e[bs]&&e[bs].delete(t)}function rc(e){const t=new Set;function n(r){if(!t.has(r)&&Xr(r)){t.add(r);const s=r[bs]?Array.from(r[bs]):[];for(const i of s)n(i)}}return n(e),Array.from(t)}function wt(e){return e[Rd]||e}function Tt(){const e=Os(),t=zi(e);return t.getActiveSpan?t.getActiveSpan():Bc(Le())}function Ad(){Eg||(vr(()=>{console.warn("[Sentry] Returning null from `beforeSendSpan` is disallowed. To drop certain spans, configure the respective integrations directly or use `ignoreSpans`.")}),Eg=!0)}let Cg=!1;function jM(){if(Cg)return;function e(){const t=Tt(),n=t&&wt(t);if(n){const r="internal_error";ce&&J.log(`[Tracing] Root span: ${r} -> Global error occurred`),n.setStatus({code:ht,message:r})}}e.tag="sentry_tracingErrorCallback",Cg=!0,MS(e),PS(e)}function fn(e){var n;if(typeof __SENTRY_TRACING__=="boolean"&&!__SENTRY_TRACING__)return!1;const t=e||((n=Ee())==null?void 0:n.getOptions());return!!t&&(t.tracesSampleRate!=null||!!t.tracesSampler)}function Tg(e){J.log(`Ignoring span ${e.op} - ${e.description} because it matches \`ignoreSpans\`.`)}function Vc(e,t){if(!(t!=null&&t.length)||!e.description)return!1;for(const n of t){if(qM(n)){if(nc(e.description,n))return ce&&Tg(e),!0;continue}if(!n.name&&!n.op)continue;const r=n.name?nc(e.description,n.name):!0,s=n.op?e.op&&nc(e.op,n.op):!0;if(r&&s)return ce&&Tg(e),!0}return!1}function zM(e,t){const n=t.parent_span_id,r=t.span_id;if(n)for(const s of e)s.parent_span_id===r&&(s.parent_span_id=n)}function qM(e){return typeof e=="string"||e instanceof RegExp}const ph="production",t0="_frozenDsc";function sc(e,t){qt(e,t0,t)}function n0(e,t){const n=t.getOptions(),{publicKey:r}=t.getDsn()||{},s={environment:n.environment||ph,release:n.release,public_key:r,trace_id:e,org_id:PM(t)};return t.emit("createDsc",s),s}function r0(e,t){const n=t.getPropagationContext();return n.dsc||n0(n.traceId,e)}function dr(e){var p;const t=Ee();if(!t)return{};const n=wt(e),r=Re(n),s=r.data,i=n.spanContext().traceState,o=(i==null?void 0:i.get("sentry.sample_rate"))??s[lh]??s[US];function a(m){return(typeof o=="number"||typeof o=="string")&&(m.sample_rate=`${o}`),m}const c=n[t0];if(c)return a(c);const l=i==null?void 0:i.get("sentry.dsc"),d=l&&qS(l);if(d)return a(d);const u=n0(e.spanContext().traceId,t),f=s[jt],h=r.description;return f!=="url"&&h&&(u.transaction=h),fn()&&(u.sampled=String(Xr(n)),u.sample_rand=(i==null?void 0:i.get("sentry.sample_rand"))??((p=Hc(n).scope)==null?void 0:p.getPropagationContext().sampleRand.toString())),a(u),t.emit("createDsc",u,n),u}class Br{constructor(t={}){this._traceId=t.traceId||lr(),this._spanId=t.spanId||tr()}spanContext(){return{spanId:this._spanId,traceId:this._traceId,traceFlags:JS}}end(t){}setAttribute(t,n){return this}setAttributes(t){return this}setStatus(t){return this}updateName(t){return this}isRecording(){return!1}addEvent(t,n,r){return this}addLink(t){return this}addLinks(t){return this}recordException(t,n){}}function vn(e,t=100,n=1/0){try{return Md("",e,t,n)}catch(r){return{ERROR:`**non-serializable** (${r})`}}}function s0(e,t=3,n=100*1024){const r=vn(e,t);return XM(r)>n?s0(e,t-1,n):r}function Md(e,t,n=1/0,r=1/0,s=JM()){const[i,o]=s;if(t==null||["boolean","string"].includes(typeof t)||typeof t=="number"&&Number.isFinite(t))return t;const a=GM(e,t);if(!a.startsWith("[object "))return a;if(t.__sentry_skip_normalization__)return t;const c=typeof t.__sentry_override_normalization_depth__=="number"?t.__sentry_override_normalization_depth__:n;if(c===0)return a.replace("object ","");if(i(t))return"[Circular ~]";const l=t;if(l&&typeof l.toJSON=="function")try{const h=l.toJSON();return Md("",h,c-1,r,s)}catch{}const d=Array.isArray(t)?[]:{};let u=0;const f=$S(t);for(const h in f){if(!Object.prototype.hasOwnProperty.call(f,h))continue;if(u>=r){d[h]="[MaxProperties ~]";break}const p=f[h];d[h]=Md(h,p,c-1,r,s),u++}return o(t),d}function GM(e,t){try{if(e==="domain"&&t&&typeof t=="object"&&t._events)return"[Domain]";if(e==="domainEmitter")return"[DomainEmitter]";if(typeof global<"u"&&t===global)return"[Global]";if(typeof window<"u"&&t===window)return"[Window]";if(typeof document<"u"&&t===document)return"[Document]";if(NS(t))return AS(t);if(YA(t))return"[SyntheticEvent]";if(typeof t=="number"&&!Number.isFinite(t))return`[${t}]`;if(typeof t=="function")return`[Function: ${ar(t)}]`;if(typeof t=="symbol")return`[${String(t)}]`;if(typeof t=="bigint")return`[BigInt: ${String(t)}]`;const n=KM(t);return/^HTML(\w*)Element$/.test(n)?`[HTMLElement: ${n}]`:`[object ${n}]`}catch(n){return`**non-serializable** (${n})`}}function KM(e){const t=Object.getPrototypeOf(e);return t!=null&&t.constructor?t.constructor.name:"null prototype"}function YM(e){return~-encodeURI(e).split(/%..|./).length}function XM(e){return YM(JSON.stringify(e))}function JM(){const e=new WeakSet;function t(r){return e.has(r)?!0:(e.add(r),!1)}function n(r){e.delete(r)}return[t,n]}function Jr(e,t=[]){return[e,t]}function ZM(e,t){const[n,r]=e;return[n,[...r,t]]}function Pd(e,t){const n=e[1];for(const r of n){const s=r[0].type;if(t(r,s))return!0}return!1}function QM(e,t){return Pd(e,(n,r)=>t.includes(r))}function Od(e){const t=kl(xe);return t.encodePolyfill?t.encodePolyfill(e):new TextEncoder().encode(e)}function eP(e){const[t,n]=e;let r=JSON.stringify(t);function s(i){typeof r=="string"?r=typeof i=="string"?r+i:[Od(r),i]:r.push(typeof i=="string"?Od(i):i)}for(const i of n){const[o,a]=i;if(s(` +${JSON.stringify(o)} +`),typeof a=="string"||a instanceof Uint8Array)s(a);else{let c;try{c=JSON.stringify(a)}catch{c=JSON.stringify(vn(a))}s(c)}}return typeof r=="string"?r:tP(r)}function tP(e){const t=e.reduce((s,i)=>s+i.length,0),n=new Uint8Array(t);let r=0;for(const s of e)n.set(s,r),r+=s.length;return n}function nP(e){return[{type:"span"},e]}function rP(e){const t=typeof e.data=="string"?Od(e.data):e.data;return[{type:"attachment",length:t.length,filename:e.filename,content_type:e.contentType,attachment_type:e.attachmentType},t]}const sP={session:"session",sessions:"session",attachment:"attachment",transaction:"transaction",event:"error",client_report:"internal",user_report:"default",profile:"profile",profile_chunk:"profile",replay_event:"replay",replay_recording:"replay",check_in:"monitor",feedback:"feedback",span:"span",raw_security:"security",log:"log_item",metric:"metric",trace_metric:"metric"};function kg(e){return sP[e]}function mh(e){if(!(e!=null&&e.sdk))return;const{name:t,version:n}=e.sdk;return{name:t,version:n}}function i0(e,t,n,r){var i;const s=(i=e.sdkProcessingMetadata)==null?void 0:i.dynamicSamplingContext;return{event_id:e.event_id,sent_at:new Date().toISOString(),...t&&{sdk:t},...!!n&&r&&{dsn:Gi(r)},...s&&{trace:s}}}function iP(e,t){var r,s,i,o;if(!t)return e;const n=e.sdk||{};return e.sdk={...n,name:n.name||t.name,version:n.version||t.version,integrations:[...((r=e.sdk)==null?void 0:r.integrations)||[],...t.integrations||[]],packages:[...((s=e.sdk)==null?void 0:s.packages)||[],...t.packages||[]],settings:(i=e.sdk)!=null&&i.settings||t.settings?{...(o=e.sdk)==null?void 0:o.settings,...t.settings}:void 0},e}function oP(e,t,n,r){const s=mh(n),i={sent_at:new Date().toISOString(),...s&&{sdk:s},...!!r&&t&&{dsn:Gi(t)}},o="aggregates"in e?[{type:"sessions"},e]:[{type:"session"},e.toJSON()];return Jr(i,[o])}function aP(e,t,n,r){const s=mh(n),i=e.type&&e.type!=="replay_event"?e.type:"event";iP(e,n==null?void 0:n.sdk);const o=i0(e,s,r,t);return delete e.sdkProcessingMetadata,Jr(o,[[{type:i},e]])}function cP(e,t){function n(h){return!!h.trace_id&&!!h.public_key}const r=dr(e[0]),s=t==null?void 0:t.getDsn(),i=t==null?void 0:t.getOptions().tunnel,o={sent_at:new Date().toISOString(),...n(r)&&{trace:r},...!!i&&s&&{dsn:Gi(s)}},{beforeSendSpan:a,ignoreSpans:c}=(t==null?void 0:t.getOptions())||{},l=c!=null&&c.length?e.filter(h=>!Vc(Re(h),c)):e,d=e.length-l.length;d&&(t==null||t.recordDroppedEvent("before_send","span",d));const u=a?h=>{const p=Re(h),m=a(p);return m||(Ad(),p)}:Re,f=[];for(const h of l){const p=u(h);p&&f.push(nP(p))}return Jr(o,f)}function lP(e){if(!ce)return;const{description:t="< unknown name >",op:n="< unknown op >",parent_span_id:r}=Re(e),{spanId:s}=e.spanContext(),i=Xr(e),o=wt(e),a=o===e,c=`[Tracing] Starting ${i?"sampled":"unsampled"} ${a?"root ":""}span`,l=[`op: ${n}`,`name: ${t}`,`ID: ${s}`];if(r&&l.push(`parent ID: ${r}`),!a){const{op:d,description:u}=Re(o);l.push(`root ID: ${o.spanContext().spanId}`),d&&l.push(`root op: ${d}`),u&&l.push(`root description: ${u}`)}J.log(`${c} + ${l.join(` + `)}`)}function uP(e){if(!ce)return;const{description:t="< unknown name >",op:n="< unknown op >"}=Re(e),{spanId:r}=e.spanContext(),i=wt(e)===e,o=`[Tracing] Finishing "${n}" ${i?"root ":""}span "${t}" with ID ${r}`;J.log(o)}function dP(e,t,n,r=Tt()){const s=r&&wt(r);s&&(ce&&J.log(`[Measurement] Setting measurement on root span: ${e} = ${t} ${n}`),s.addEvent(e,{[fa]:t,[da]:n}))}function Ig(e){if(!e||e.length===0)return;const t={};return e.forEach(n=>{const r=n.attributes||{},s=r[da],i=r[fa];typeof s=="string"&&typeof i=="number"&&(t[n.name]={value:i,unit:s})}),t}const xg=1e3;class Al{constructor(t={}){this._traceId=t.traceId||lr(),this._spanId=t.spanId||tr(),this._startTime=t.startTimestamp||lt(),this._links=t.links,this._attributes={},this.setAttributes({[st]:"manual",[ur]:t.op,...t.attributes}),this._name=t.name,t.parentSpanId&&(this._parentSpanId=t.parentSpanId),"sampled"in t&&(this._sampled=t.sampled),t.endTimestamp&&(this._endTime=t.endTimestamp),this._events=[],this._isStandaloneSpan=t.isStandalone,this._endTime&&this._onSpanEnded()}addLink(t){return this._links?this._links.push(t):this._links=[t],this}addLinks(t){return this._links?this._links.push(...t):this._links=t,this}recordException(t,n){}spanContext(){const{_spanId:t,_traceId:n,_sampled:r}=this;return{spanId:t,traceId:n,traceFlags:r?hh:JS}}setAttribute(t,n){return n===void 0?delete this._attributes[t]:this._attributes[t]=n,this}setAttributes(t){return Object.keys(t).forEach(n=>this.setAttribute(n,t[n])),this}updateStartTime(t){this._startTime=_s(t)}setStatus(t){return this._status=t,this}updateName(t){return this._name=t,this.setAttribute(jt,"custom"),this}end(t){this._endTime||(this._endTime=_s(t),uP(this),this._onSpanEnded())}getSpanJSON(){return{data:this._attributes,description:this._name,op:this._attributes[ur],parent_span_id:this._parentSpanId,span_id:this._spanId,start_timestamp:this._startTime,status:QS(this._status),timestamp:this._endTime,trace_id:this._traceId,origin:this._attributes[st],profile_id:this._attributes[uh],exclusive_time:this._attributes[qi],measurements:Ig(this._events),is_segment:this._isStandaloneSpan&&wt(this)===this||void 0,segment_id:this._isStandaloneSpan?wt(this).spanContext().spanId:void 0,links:ZS(this._links)}}isRecording(){return!this._endTime&&!!this._sampled}addEvent(t,n,r){ce&&J.log("[Tracing] Adding an event to span:",t);const s=Rg(n)?n:r||lt(),i=Rg(n)?{}:n||{},o={name:t,time:_s(s),attributes:i};return this._events.push(o),this}isStandaloneSpan(){return!!this._isStandaloneSpan}_onSpanEnded(){const t=Ee();if(t&&t.emit("spanEnd",this),!(this._isStandaloneSpan||this===wt(this)))return;if(this._isStandaloneSpan){this._sampled?hP(cP([this],t)):(ce&&J.log("[Tracing] Discarding standalone span because its trace was not chosen to be sampled."),t&&t.recordDroppedEvent("sample_rate","span"));return}const r=this._convertSpanToTransaction();r&&(Hc(this).scope||Le()).captureEvent(r)}_convertSpanToTransaction(){var d;if(!Ag(Re(this)))return;this._name||(ce&&J.warn("Transaction has no name, falling back to ``."),this._name="");const{scope:t,isolationScope:n}=Hc(this),r=(d=t==null?void 0:t.getScopeData().sdkProcessingMetadata)==null?void 0:d.normalizedRequest;if(this._sampled!==!0)return;const i=rc(this).filter(u=>u!==this&&!fP(u)).map(u=>Re(u)).filter(Ag),o=this._attributes[jt];delete this._attributes[bg],i.forEach(u=>{delete u.data[bg]});const a={contexts:{trace:FM(this)},spans:i.length>xg?i.sort((u,f)=>u.start_timestamp-f.start_timestamp).slice(0,xg):i,start_timestamp:this._startTime,timestamp:this._endTime,transaction:this._name,type:"transaction",sdkProcessingMetadata:{capturedSpanScope:t,capturedSpanIsolationScope:n,dynamicSamplingContext:dr(this)},request:r,...o&&{transaction_info:{source:o}}},c=Ig(this._events);return c&&Object.keys(c).length&&(ce&&J.log("[Measurements] Adding measurements to transaction event",JSON.stringify(c,void 0,2)),a.measurements=c),a}}function Rg(e){return e&&typeof e=="number"||e instanceof Date||Array.isArray(e)}function Ag(e){return!!e.start_timestamp&&!!e.timestamp&&!!e.span_id&&!!e.trace_id}function fP(e){return e instanceof Al&&e.isStandaloneSpan()}function hP(e){const t=Ee();if(!t)return;const n=e[1];if(!n||n.length===0){t.recordDroppedEvent("before_send","span");return}t.sendEnvelope(e)}function pP(e,t,n=()=>{},r=()=>{}){let s;try{s=e()}catch(i){throw t(i),n(),i}return mP(s,t,n,r)}function mP(e,t,n,r){return ji(e)?e.then(s=>(n(),r(s),s),s=>{throw t(s),n(),s}):(n(),r(e),e)}function gP(e,t,n){if(!fn(e))return[!1];let r,s;typeof e.tracesSampler=="function"?(s=e.tracesSampler({...t,inheritOrSampleWith:a=>typeof t.parentSampleRate=="number"?t.parentSampleRate:typeof t.parentSampled=="boolean"?Number(t.parentSampled):a}),r=!0):t.parentSampled!==void 0?s=t.parentSampled:typeof e.tracesSampleRate<"u"&&(s=e.tracesSampleRate,r=!0);const i=Is(s);if(i===void 0)return ce&&J.warn(`[Tracing] Discarding root span because of invalid sample rate. Sample rate must be a boolean or a number between 0 and 1. Got ${JSON.stringify(s)} of type ${JSON.stringify(typeof s)}.`),[!1];if(!i)return ce&&J.log(`[Tracing] Discarding transaction because ${typeof e.tracesSampler=="function"?"tracesSampler returned 0 or false":"a negative sampling decision was inherited or tracesSampleRate is set to 0"}`),[!1,i,r];const o=n_P(i)(()=>{const l=Le(),d=l0(l,i),f=e.onlyIfParent&&!d?new Br:a0({parentSpan:d,spanArguments:r,forceTransaction:s,scope:l});return Ti(l,f),pP(()=>t(f),()=>{const{status:h}=Re(f);f.isRecording()&&(!h||h==="ok")&&f.setStatus({code:ht,message:"internal_error"})},()=>{f.end()})}))}function Hr(e){const t=vh();if(t.startInactiveSpan)return t.startInactiveSpan(e);const n=c0(e),{forceTransaction:r,parentSpan:s}=e;return(e.scope?o=>Rl(e.scope,o):s!==void 0?o=>gh(s,o):o=>o())(()=>{const o=Le(),a=l0(o,s);return e.onlyIfParent&&!a?new Br:a0({parentSpan:a,spanArguments:n,forceTransaction:r,scope:o})})}function gh(e,t){const n=vh();return n.withActiveSpan?n.withActiveSpan(e,t):Rl(r=>(Ti(r,e||void 0),t(r)))}function a0({parentSpan:e,spanArguments:t,forceTransaction:n,scope:r}){if(!fn()){const o=new Br;if(n||!e){const a={sampled:"false",sample_rate:"0",transaction:t.name,...dr(o)};sc(o,a)}return o}const s=rn();let i;if(e&&!n)i=yP(e,r,t),e0(e,i);else if(e){const o=dr(e),{traceId:a,spanId:c}=e.spanContext(),l=Xr(e);i=Mg({traceId:a,parentSpanId:c,...t},r,l),sc(i,o)}else{const{traceId:o,dsc:a,parentSpanId:c,sampled:l}={...s.getPropagationContext(),...r.getPropagationContext()};i=Mg({traceId:o,parentSpanId:c,...t},r,l),a&&sc(i,a)}return lP(i),bM(i,r,s),i}function c0(e){const n={isStandalone:(e.experimental||{}).standalone,...e};if(e.startTime){const r={...n};return r.startTimestamp=_s(e.startTime),delete r.startTime,r}return n}function vh(){const e=Os();return zi(e)}function Mg(e,t,n){var p;const r=Ee(),s=(r==null?void 0:r.getOptions())||{},{name:i=""}=e,o={spanAttributes:{...e.attributes},spanName:i,parentSampled:n};r==null||r.emit("beforeSampling",o,{decision:!1});const a=o.parentSampled??n,c=o.spanAttributes,l=t.getPropagationContext(),[d,u,f]=t.getScopeData().sdkProcessingMetadata[o0]?[!1]:gP(s,{name:i,parentSampled:a,attributes:c,parentSampleRate:Is((p=l.dsc)==null?void 0:p.sample_rate)},l.sampleRand),h=new Al({...e,attributes:{[jt]:"custom",[lh]:u!==void 0&&f?u:void 0,...c},sampled:d});return!d&&r&&(ce&&J.log("[Tracing] Discarding root span because its trace was not chosen to be sampled."),r.recordDroppedEvent("sample_rate","transaction")),r&&r.emit("spanStart",h),h}function yP(e,t,n){const{spanId:r,traceId:s}=e.spanContext(),i=t.getScopeData().sdkProcessingMetadata[o0]?!1:Xr(e),o=i?new Al({...n,parentSpanId:r,traceId:s,sampled:i}):new Br({traceId:s});e0(e,o);const a=Ee();return a&&(a.emit("spanStart",o),n.endTimestamp&&a.emit("spanEnd",o)),o}function l0(e,t){if(t)return t;if(t===null)return;const n=Bc(e);if(!n)return;const r=Ee();return(r?r.getOptions():{}).parentSpanIsAlwaysRootSpan?wt(n):n}function _P(e){return e!==void 0?t=>gh(e,t):t=>t()}const ic={idleTimeout:1e3,finalTimeout:3e4,childSpanTimeout:15e3},bP="heartbeatFailed",SP="idleTimeout",EP="finalTimeout",wP="externalFinish";function u0(e,t={}){const n=new Map;let r=!1,s,i=wP,o=!t.disableAutoFinish;const a=[],{idleTimeout:c=ic.idleTimeout,finalTimeout:l=ic.finalTimeout,childSpanTimeout:d=ic.childSpanTimeout,beforeSpanEnd:u,trimIdleSpanEndTimestamp:f=!0}=t,h=Ee();if(!h||!fn()){const E=new Br,C={sample_rate:"0",sampled:"false",...dr(E)};return sc(E,C),E}const p=Le(),m=Tt(),v=CP(e);v.end=new Proxy(v.end,{apply(E,C,I){if(u&&u(v),C instanceof Br)return;const[A,...O]=I,T=A||lt(),P=_s(T),N=rc(v).filter(U=>U!==v),z=Re(v);if(!N.length||!f)return R(P),Reflect.apply(E,C,[P,...O]);const X=h.getOptions().ignoreSpans,q=N==null?void 0:N.reduce((U,ie)=>{const ae=Re(ie);return!ae.timestamp||X&&Vc(ae,X)?U:U?Math.max(U,ae.timestamp):ae.timestamp},void 0),D=z.start_timestamp,re=Math.min(D?D+l/1e3:1/0,Math.max(D||-1/0,Math.min(P,q||1/0)));return R(re),Reflect.apply(E,C,[re,...O])}});function g(){s&&(clearTimeout(s),s=void 0)}function y(E){g(),s=setTimeout(()=>{!r&&n.size===0&&o&&(i=SP,v.end(E))},c)}function _(E){s=setTimeout(()=>{!r&&o&&(i=bP,v.end(E))},d)}function S(E){g(),n.set(E,!0);const C=lt();_(C+d/1e3)}function M(E){if(n.has(E)&&n.delete(E),n.size===0){const C=lt();y(C+c/1e3)}}function R(E){r=!0,n.clear(),a.forEach(N=>N()),Ti(p,m);const C=Re(v),{start_timestamp:I}=C;if(!I)return;C.data[jo]||v.setAttribute(jo,i);const O=C.status;(!O||O==="unknown")&&v.setStatus({code:dh}),J.log(`[Tracing] Idle span "${C.op}" finished`);const T=rc(v).filter(N=>N!==v);let P=0;T.forEach(N=>{N.isRecording()&&(N.setStatus({code:ht,message:"cancelled"}),N.end(E),ce&&J.log("[Tracing] Cancelling span since span ended early",JSON.stringify(N,void 0,2)));const z=Re(N),{timestamp:X=0,start_timestamp:q=0}=z,D=q<=E,re=(l+c)/1e3,U=X-q<=re;if(ce){const ie=JSON.stringify(N,void 0,2);D?U||J.log("[Tracing] Discarding span since it finished after idle span final timeout",ie):J.log("[Tracing] Discarding span since it happened after idle span was finished",ie)}(!U||!D)&&(WM(v,N),P++)}),P>0&&v.setAttribute("sentry.idle_span_discarded_spans",P)}return a.push(h.on("spanStart",E=>{if(r||E===v||Re(E).timestamp||E instanceof Al&&E.isStandaloneSpan())return;rc(v).includes(E)&&S(E.spanContext().spanId)})),a.push(h.on("spanEnd",E=>{r||M(E.spanContext().spanId)})),a.push(h.on("idleSpanEnableAutoFinish",E=>{E===v&&(o=!0,y(),n.size&&_())})),t.disableAutoFinish||y(),setTimeout(()=>{r||(v.setStatus({code:ht,message:"deadline_exceeded"}),i=EP,v.end())},l),v}function CP(e){const t=Hr(e);return Ti(Le(),t),ce&&J.log("[Tracing] Started span is an idle span"),t}const Tu=0,Pg=1,Og=2;function Ml(e){return new zo(t=>{t(e)})}function yh(e){return new zo((t,n)=>{n(e)})}class zo{constructor(t){this._state=Tu,this._handlers=[],this._runExecutor(t)}then(t,n){return new zo((r,s)=>{this._handlers.push([!1,i=>{if(!t)r(i);else try{r(t(i))}catch(o){s(o)}},i=>{if(!n)s(i);else try{r(n(i))}catch(o){s(o)}}]),this._executeHandlers()})}catch(t){return this.then(n=>n,t)}finally(t){return new zo((n,r)=>{let s,i;return this.then(o=>{i=!1,s=o,t&&t()},o=>{i=!0,s=o,t&&t()}).then(()=>{if(i){r(s);return}n(s)})})}_executeHandlers(){if(this._state===Tu)return;const t=this._handlers.slice();this._handlers=[],t.forEach(n=>{n[0]||(this._state===Pg&&n[1](this._value),this._state===Og&&n[2](this._value),n[0]=!0)})}_runExecutor(t){const n=(i,o)=>{if(this._state===Tu){if(ji(o)){o.then(r,s);return}this._state=i,this._value=o,this._executeHandlers()}},r=i=>{n(Pg,i)},s=i=>{n(Og,i)};try{t(r,s)}catch(i){s(i)}}}function TP(e,t,n,r=0){try{const s=Ld(t,n,e,r);return ji(s)?s:Ml(s)}catch(s){return yh(s)}}function Ld(e,t,n,r){const s=n[r];if(!e||!s)return e;const i=s({...e},t);return ce&&i===null&&J.log(`Event processor "${s.id||"?"}" dropped event`),ji(i)?i.then(o=>Ld(o,t,n,r+1)):Ld(i,t,n,r+1)}let zn,Lg,Ng,br;function kP(e){const t=xe._sentryDebugIds,n=xe._debugIds;if(!t&&!n)return{};const r=t?Object.keys(t):[],s=n?Object.keys(n):[];if(br&&r.length===Lg&&s.length===Ng)return br;Lg=r.length,Ng=s.length,br={},zn||(zn={});const i=(o,a)=>{for(const c of o){const l=a[c],d=zn==null?void 0:zn[c];if(d&&br&&l)br[d[0]]=l,zn&&(zn[c]=[d[0],l]);else if(l){const u=e(c);for(let f=u.length-1;f>=0;f--){const h=u[f],p=h==null?void 0:h.filename;if(p&&br&&zn){br[p]=l,zn[c]=[p,l];break}}}}};return t&&i(r,t),n&&i(s,n),br}function IP(e,t){const{fingerprint:n,span:r,breadcrumbs:s,sdkProcessingMetadata:i}=t;RP(e,t),r&&PP(e,r),OP(e,n),AP(e,s),MP(e,i)}function Dg(e,t){const{extra:n,tags:r,attributes:s,user:i,contexts:o,level:a,sdkProcessingMetadata:c,breadcrumbs:l,fingerprint:d,eventProcessors:u,attachments:f,propagationContext:h,transactionName:p,span:m}=t;so(e,"extra",n),so(e,"tags",r),so(e,"attributes",s),so(e,"user",i),so(e,"contexts",o),e.sdkProcessingMetadata=ua(e.sdkProcessingMetadata,c,2),a&&(e.level=a),p&&(e.transactionName=p),m&&(e.span=m),l.length&&(e.breadcrumbs=[...e.breadcrumbs,...l]),d.length&&(e.fingerprint=[...e.fingerprint,...d]),u.length&&(e.eventProcessors=[...e.eventProcessors,...u]),f.length&&(e.attachments=[...e.attachments,...f]),e.propagationContext={...e.propagationContext,...h}}function so(e,t,n){e[t]=ua(e[t],n,1)}function xP(e,t){const n=VS().getScopeData();return e&&Dg(n,e.getScopeData()),t&&Dg(n,t.getScopeData()),n}function RP(e,t){const{extra:n,tags:r,user:s,contexts:i,level:o,transactionName:a}=t;Object.keys(n).length&&(e.extra={...n,...e.extra}),Object.keys(r).length&&(e.tags={...r,...e.tags}),Object.keys(s).length&&(e.user={...s,...e.user}),Object.keys(i).length&&(e.contexts={...i,...e.contexts}),o&&(e.level=o),a&&e.type!=="transaction"&&(e.transaction=a)}function AP(e,t){const n=[...e.breadcrumbs||[],...t];e.breadcrumbs=n.length?n:void 0}function MP(e,t){e.sdkProcessingMetadata={...e.sdkProcessingMetadata,...t}}function PP(e,t){e.contexts={trace:$M(t),...e.contexts},e.sdkProcessingMetadata={dynamicSamplingContext:dr(t),...e.sdkProcessingMetadata};const n=wt(t),r=Re(n).description;r&&!e.transaction&&e.type==="transaction"&&(e.transaction=r)}function OP(e,t){e.fingerprint=e.fingerprint?Array.isArray(e.fingerprint)?e.fingerprint:[e.fingerprint]:[],t&&(e.fingerprint=e.fingerprint.concat(t)),e.fingerprint.length||delete e.fingerprint}function d0(e,t,n,r,s,i){const{normalizeDepth:o=3,normalizeMaxBreadth:a=1e3}=e,c={...t,event_id:t.event_id||n.event_id||en(),timestamp:t.timestamp||Ns()},l=n.integrations||e.integrations.map(v=>v.name);LP(c,e),FP(c,l),s&&s.emit("applyFrameMetadata",t),t.type===void 0&&NP(c,e.stackParser);const d=BP(r,n.captureContext);n.mechanism&&wi(c,n.mechanism);const u=s?s.getEventProcessors():[],f=xP(i,d),h=[...n.attachments||[],...f.attachments];h.length&&(n.attachments=h),IP(c,f);const p=[...u,...f.eventProcessors];return TP(p,c,n).then(v=>(v&&DP(v),typeof o=="number"&&o>0?$P(v,o,a):v))}function LP(e,t){var a,c;const{environment:n,release:r,dist:s,maxValueLength:i}=t;e.environment=e.environment||n||ph,!e.release&&r&&(e.release=r),!e.dist&&s&&(e.dist=s);const o=e.request;o!=null&&o.url&&i&&(o.url=kd(o.url,i)),i&&((c=(a=e.exception)==null?void 0:a.values)==null||c.forEach(l=>{l.value&&(l.value=kd(l.value,i))}))}function NP(e,t){var r,s;const n=kP(t);(s=(r=e.exception)==null?void 0:r.values)==null||s.forEach(i=>{var o,a;(a=(o=i.stacktrace)==null?void 0:o.frames)==null||a.forEach(c=>{c.filename&&(c.debug_id=n[c.filename])})})}function DP(e){var r,s;const t={};if((s=(r=e.exception)==null?void 0:r.values)==null||s.forEach(i=>{var o,a;(a=(o=i.stacktrace)==null?void 0:o.frames)==null||a.forEach(c=>{c.debug_id&&(c.abs_path?t[c.abs_path]=c.debug_id:c.filename&&(t[c.filename]=c.debug_id),delete c.debug_id)})}),Object.keys(t).length===0)return;e.debug_meta=e.debug_meta||{},e.debug_meta.images=e.debug_meta.images||[];const n=e.debug_meta.images;Object.entries(t).forEach(([i,o])=>{n.push({type:"sourcemap",code_file:i,debug_id:o})})}function FP(e,t){t.length>0&&(e.sdk=e.sdk||{},e.sdk.integrations=[...e.sdk.integrations||[],...t])}function $P(e,t,n){var s,i;if(!e)return null;const r={...e,...e.breadcrumbs&&{breadcrumbs:e.breadcrumbs.map(o=>({...o,...o.data&&{data:vn(o.data,t,n)}}))},...e.user&&{user:vn(e.user,t,n)},...e.contexts&&{contexts:vn(e.contexts,t,n)},...e.extra&&{extra:vn(e.extra,t,n)}};return(s=e.contexts)!=null&&s.trace&&r.contexts&&(r.contexts.trace=e.contexts.trace,e.contexts.trace.data&&(r.contexts.trace.data=vn(e.contexts.trace.data,t,n))),e.spans&&(r.spans=e.spans.map(o=>({...o,...o.data&&{data:vn(o.data,t,n)}}))),(i=e.contexts)!=null&&i.flags&&r.contexts&&(r.contexts.flags=vn(e.contexts.flags,3,n)),r}function BP(e,t){if(!t)return e;const n=e?e.clone():new Vn;return n.update(t),n}function HP(e){if(e)return VP(e)?{captureContext:e}:WP(e)?{captureContext:e}:e}function VP(e){return e instanceof Vn||typeof e=="function"}const UP=["user","level","extra","contexts","tags","fingerprint","propagationContext"];function WP(e){return Object.keys(e).some(t=>UP.includes(t))}function Pl(e,t){return Le().captureException(e,HP(t))}function f0(e,t){return Le().captureEvent(e,t)}function jP(e,t){rn().setContext(e,t)}function zP(e,t){rn().setTag(e,t)}function qP(e){rn().setUser(e)}function GP(){const e=Ee();return(e==null?void 0:e.getOptions().enabled)!==!1&&!!(e!=null&&e.getTransport())}function KP(e){rn().addEventProcessor(e)}function Fg(e){const t=rn(),n=Le(),{userAgent:r}=xe.navigator||{},s=sM({user:n.getUser()||t.getUser(),...r&&{userAgent:r},...e}),i=t.getSession();return(i==null?void 0:i.status)==="ok"&&Ci(i,{status:"exited"}),h0(),t.setSession(s),s}function h0(){const e=rn(),n=Le().getSession()||e.getSession();n&&iM(n),p0(),e.setSession()}function p0(){const e=rn(),t=Ee(),n=e.getSession();n&&t&&t.captureSession(n)}function $g(e=!1){if(e){h0();return}p0()}const YP="7";function XP(e){const t=e.protocol?`${e.protocol}:`:"",n=e.port?`:${e.port}`:"";return`${t}//${e.host}${n}${e.path?`/${e.path}`:""}/api/`}function JP(e){return`${XP(e)}${e.projectId}/envelope/`}function ZP(e,t){const n={sentry_version:YP};return e.publicKey&&(n.sentry_key=e.publicKey),t&&(n.sentry_client=`${t.name}/${t.version}`),new URLSearchParams(n).toString()}function QP(e,t,n){return t||`${JP(e)}?${ZP(e,n)}`}const Bg=[];function eO(e){const t={};return e.forEach(n=>{const{name:r}=n,s=t[r];s&&!s.isDefaultInstance&&n.isDefaultInstance||(t[r]=n)}),Object.values(t)}function tO(e){const t=e.defaultIntegrations||[],n=e.integrations;t.forEach(s=>{s.isDefaultInstance=!0});let r;if(Array.isArray(n))r=[...t,...n];else if(typeof n=="function"){const s=n(t);r=Array.isArray(s)?s:[s]}else r=t;return eO(r)}function nO(e,t){const n={};return t.forEach(r=>{r&&m0(e,r,n)}),n}function Hg(e,t){for(const n of t)n!=null&&n.afterAllSetup&&n.afterAllSetup(e)}function m0(e,t,n){if(n[t.name]){ce&&J.log(`Integration skipped because it was already installed: ${t.name}`);return}if(n[t.name]=t,!Bg.includes(t.name)&&typeof t.setupOnce=="function"&&(t.setupOnce(),Bg.push(t.name)),t.setup&&typeof t.setup=="function"&&t.setup(e),typeof t.preprocessEvent=="function"){const r=t.preprocessEvent.bind(t);e.on("preprocessEvent",(s,i)=>r(s,i,e))}if(typeof t.processEvent=="function"){const r=t.processEvent.bind(t),s=Object.assign((i,o)=>r(i,o,e),{id:t.name});e.addEventProcessor(s)}ce&&J.log(`Integration installed: ${t.name}`)}function Vg(e){const t=Ee();if(!t){ce&&J.warn(`Cannot add integration "${e.name}" because no SDK Client is available.`);return}t.addIntegration(e)}function rO(e){return[{type:"log",item_count:e.length,content_type:"application/vnd.sentry.items.log+json"},{items:e}]}function sO(e,t,n,r){const s={};return t!=null&&t.sdk&&(s.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(s.dsn=Gi(r)),Jr(s,[rO(e)])}function g0(e,t){const n=t??iO(e)??[];if(n.length===0)return;const r=e.getOptions(),s=sO(n,r._metadata,r.tunnel,e.getDsn());v0().set(e,[]),e.emit("flushLogs"),e.sendEnvelope(s)}function iO(e){return v0().get(e)}function v0(){return Ui("clientToLogBufferMap",()=>new WeakMap)}function oO(e){return[{type:"trace_metric",item_count:e.length,content_type:"application/vnd.sentry.items.trace-metric+json"},{items:e}]}function aO(e,t,n,r){const s={};return t!=null&&t.sdk&&(s.sdk={name:t.sdk.name,version:t.sdk.version}),n&&r&&(s.dsn=Gi(r)),Jr(s,[oO(e)])}function y0(e,t){const n=t??cO(e)??[];if(n.length===0)return;const r=e.getOptions(),s=aO(n,r._metadata,r.tunnel,e.getDsn());_0().set(e,[]),e.emit("flushMetrics"),e.sendEnvelope(s)}function cO(e){return _0().get(e)}function _0(){return Ui("clientToMetricBufferMap",()=>new WeakMap)}const _h=Symbol.for("SentryBufferFullError");function bh(e=100){const t=new Set;function n(){return t.sizer(a),()=>r(a)),a}function i(o){if(!t.size)return Ml(!0);const a=Promise.allSettled(Array.from(t)).then(()=>!0);if(!o)return a;const c=[a,new Promise(l=>setTimeout(()=>l(!1),o))];return Promise.race(c)}return{get $(){return Array.from(t)},add:s,drain:i}}const lO=60*1e3;function uO(e,t=la()){const n=parseInt(`${e}`,10);if(!isNaN(n))return n*1e3;const r=Date.parse(`${e}`);return isNaN(r)?lO:r-t}function dO(e,t){return e[t]||e.all||0}function b0(e,t,n=la()){return dO(e,t)>n}function S0(e,{statusCode:t,headers:n},r=la()){const s={...e},i=n==null?void 0:n["x-sentry-rate-limits"],o=n==null?void 0:n["retry-after"];if(i)for(const a of i.trim().split(",")){const[c,l,,,d]=a.split(":",5),u=parseInt(c,10),f=(isNaN(u)?60:u)*1e3;if(!l)s.all=r+f;else for(const h of l.split(";"))h==="metric_bucket"?(!d||d.split(";").includes("custom"))&&(s[h]=r+f):s[h]=r+f}else o?s.all=r+uO(o,r):t===429&&(s.all=r+60*1e3);return s}const E0=64;function fO(e,t,n=bh(e.bufferSize||E0)){let r={};const s=o=>n.drain(o);function i(o){const a=[];if(Pd(o,(u,f)=>{const h=kg(f);b0(r,h)?e.recordDroppedEvent("ratelimit_backoff",h):a.push(u)}),a.length===0)return Promise.resolve({});const c=Jr(o[0],a),l=u=>{if(QM(c,["client_report"])){ce&&J.warn(`Dropping client report. Will not send outcomes (reason: ${u}).`);return}Pd(c,(f,h)=>{e.recordDroppedEvent(u,kg(h))})},d=()=>t({body:eP(c)}).then(u=>(u.statusCode!==void 0&&(u.statusCode<200||u.statusCode>=300)&&ce&&J.warn(`Sentry responded with status code ${u.statusCode} to sent event.`),r=S0(r,u),u),u=>{throw l("network_error"),ce&&J.error("Encountered error running transport request:",u),u});return n.add(d).then(u=>u,u=>{if(u===_h)return ce&&J.error("Skipped sending event because buffer is full."),l("queue_overflow"),Promise.resolve({});throw u})}return{send:i,flush:s}}function hO(e,t,n){const r=[{type:"client_report"},{timestamp:Ns(),discarded_events:e}];return Jr(t?{dsn:t}:{},[r])}function w0(e){const t=[];e.message&&t.push(e.message);try{const n=e.exception.values[e.exception.values.length-1];n!=null&&n.value&&(t.push(n.value),n.type&&t.push(`${n.type}: ${n.value}`))}catch{}return t}function pO(e){var c;const{trace_id:t,parent_span_id:n,span_id:r,status:s,origin:i,data:o,op:a}=((c=e.contexts)==null?void 0:c.trace)??{};return{data:o??{},description:e.transaction,op:a,parent_span_id:n,span_id:r??"",start_timestamp:e.start_timestamp??0,status:s,timestamp:e.timestamp,trace_id:t??"",origin:i,profile_id:o==null?void 0:o[uh],exclusive_time:o==null?void 0:o[qi],measurements:e.measurements,is_segment:!0}}function mO(e){return{type:"transaction",timestamp:e.timestamp,start_timestamp:e.start_timestamp,transaction:e.description,contexts:{trace:{trace_id:e.trace_id,span_id:e.span_id,parent_span_id:e.parent_span_id,op:e.op,status:e.status,origin:e.origin,data:{...e.data,...e.profile_id&&{[uh]:e.profile_id},...e.exclusive_time&&{[qi]:e.exclusive_time}}}},measurements:e.measurements}}const Ug="Not capturing exception because it's already been captured.",Wg="Discarded session because of missing or non-string release",C0=Symbol.for("SentryInternalError"),T0=Symbol.for("SentryDoNotSendEventError"),gO=5e3;function oc(e){return{message:e,[C0]:!0}}function ku(e){return{message:e,[T0]:!0}}function jg(e){return!!e&&typeof e=="object"&&C0 in e}function zg(e){return!!e&&typeof e=="object"&&T0 in e}function qg(e,t,n,r,s){let i=0,o,a=!1;e.on(n,()=>{i=0,clearTimeout(o),a=!1}),e.on(t,c=>{i+=r(c),i>=8e5?s(e):a||(a=!0,o=setTimeout(()=>{s(e)},gO))}),e.on("flush",()=>{s(e)})}class vO{constructor(t){var r,s,i;if(this._options=t,this._integrations={},this._numProcessing=0,this._outcomes={},this._hooks={},this._eventProcessors=[],this._promiseBuffer=bh(((r=t.transportOptions)==null?void 0:r.bufferSize)??E0),t.dsn?this._dsn=OM(t.dsn):ce&&J.warn("No DSN provided, client will not send events."),this._dsn){const o=QP(this._dsn,t.tunnel,t._metadata?t._metadata.sdk:void 0);this._transport=t.transport({tunnel:this._options.tunnel,recordDroppedEvent:this.recordDroppedEvent.bind(this),...t.transportOptions,url:o})}this._options.enableLogs=this._options.enableLogs??((s=this._options._experiments)==null?void 0:s.enableLogs),this._options.enableLogs&&qg(this,"afterCaptureLog","flushLogs",SO,g0),(this._options.enableMetrics??((i=this._options._experiments)==null?void 0:i.enableMetrics)??!0)&&qg(this,"afterCaptureMetric","flushMetrics",bO,y0)}captureException(t,n,r){const s=en();if(vg(t))return ce&&J.log(Ug),s;const i={event_id:s,...n};return this._process(()=>this.eventFromException(t,i).then(o=>this._captureEvent(o,i,r)).then(o=>o),"error"),i.event_id}captureMessage(t,n,r,s){const i={event_id:en(),...r},o=ih(t)?t:String(t),a=Ei(t),c=a?this.eventFromMessage(o,n,i):this.eventFromException(t,i);return this._process(()=>c.then(l=>this._captureEvent(l,i,s)),a?"unknown":"error"),i.event_id}captureEvent(t,n,r){const s=en();if(n!=null&&n.originalException&&vg(n.originalException))return ce&&J.log(Ug),s;const i={event_id:s,...n},o=t.sdkProcessingMetadata||{},a=o.capturedSpanScope,c=o.capturedSpanIsolationScope,l=Gg(t.type);return this._process(()=>this._captureEvent(t,i,a||r,c),l),i.event_id}captureSession(t){this.sendSession(t),Ci(t,{init:!1})}getDsn(){return this._dsn}getOptions(){return this._options}getSdkMetadata(){return this._options._metadata}getTransport(){return this._transport}async flush(t){const n=this._transport;if(!n)return!0;this.emit("flush");const r=await this._isClientDoneProcessing(t),s=await n.flush(t);return r&&s}async close(t){const n=await this.flush(t);return this.getOptions().enabled=!1,this.emit("close"),n}getEventProcessors(){return this._eventProcessors}addEventProcessor(t){this._eventProcessors.push(t)}init(){(this._isEnabled()||this._options.integrations.some(({name:t})=>t.startsWith("Spotlight")))&&this._setupIntegrations()}getIntegrationByName(t){return this._integrations[t]}addIntegration(t){const n=this._integrations[t.name];m0(this,t,this._integrations),n||Hg(this,[t])}sendEvent(t,n={}){this.emit("beforeSendEvent",t,n);let r=aP(t,this._dsn,this._options._metadata,this._options.tunnel);for(const s of n.attachments||[])r=ZM(r,rP(s));this.sendEnvelope(r).then(s=>this.emit("afterSendEvent",t,s))}sendSession(t){const{release:n,environment:r=ph}=this._options;if("aggregates"in t){const i=t.attrs||{};if(!i.release&&!n){ce&&J.warn(Wg);return}i.release=i.release||n,i.environment=i.environment||r,t.attrs=i}else{if(!t.release&&!n){ce&&J.warn(Wg);return}t.release=t.release||n,t.environment=t.environment||r}this.emit("beforeSendSession",t);const s=oP(t,this._dsn,this._options._metadata,this._options.tunnel);this.sendEnvelope(s)}recordDroppedEvent(t,n,r=1){if(this._options.sendClientReports){const s=`${t}:${n}`;ce&&J.log(`Recording outcome: "${s}"${r>1?` (${r} times)`:""}`),this._outcomes[s]=(this._outcomes[s]||0)+r}}on(t,n){const r=this._hooks[t]=this._hooks[t]||new Set,s=(...i)=>n(...i);return r.add(s),()=>{r.delete(s)}}emit(t,...n){const r=this._hooks[t];r&&r.forEach(s=>s(...n))}async sendEnvelope(t){if(this.emit("beforeEnvelope",t),this._isEnabled()&&this._transport)try{return await this._transport.send(t)}catch(n){return ce&&J.error("Error while sending envelope:",n),{}}return ce&&J.error("Transport disabled"),{}}_setupIntegrations(){const{integrations:t}=this._options;this._integrations=nO(this,t),Hg(this,t)}_updateSessionFromEvent(t,n){var c,l;let r=n.level==="fatal",s=!1;const i=(c=n.exception)==null?void 0:c.values;if(i){s=!0,r=!1;for(const d of i)if(((l=d.mechanism)==null?void 0:l.handled)===!1){r=!0;break}}const o=t.status==="ok";(o&&t.errors===0||o&&r)&&(Ci(t,{...r&&{status:"crashed"},errors:t.errors||Number(s||r)}),this.captureSession(t))}async _isClientDoneProcessing(t){let n=0;for(;!t||nsetTimeout(r,1)),!this._numProcessing)return!0;n++}return!1}_isEnabled(){return this.getOptions().enabled!==!1&&this._transport!==void 0}_prepareEvent(t,n,r,s){const i=this.getOptions(),o=Object.keys(this._integrations);return!n.integrations&&(o!=null&&o.length)&&(n.integrations=o),this.emit("preprocessEvent",t,n),t.type||s.setLastEventId(t.event_id||n.event_id),d0(i,t,n,r,this,s).then(a=>{if(a===null)return a;this.emit("postprocessEvent",a,n),a.contexts={trace:pM(r),...a.contexts};const c=r0(this,r);return a.sdkProcessingMetadata={dynamicSamplingContext:c,...a.sdkProcessingMetadata},a})}_captureEvent(t,n={},r=Le(),s=rn()){return ce&&Nd(t)&&J.log(`Captured error event \`${w0(t)[0]||""}\``),this._processEvent(t,n,r,s).then(i=>i.event_id,i=>{ce&&(zg(i)?J.log(i.message):jg(i)?J.warn(i.message):J.warn(i))})}_processEvent(t,n,r,s){const i=this.getOptions(),{sampleRate:o}=i,a=k0(t),c=Nd(t),d=`before send for type \`${t.type||"error"}\``,u=typeof o>"u"?void 0:Is(o);if(c&&typeof u=="number"&&Or()>u)return this.recordDroppedEvent("sample_rate","error"),yh(ku(`Discarding event because it's not included in the random sample (sampling rate = ${o})`));const f=Gg(t.type);return this._prepareEvent(t,n,r,s).then(h=>{if(h===null)throw this.recordDroppedEvent("event_processor",f),ku("An event processor returned `null`, will not send event.");if(n.data&&n.data.__sentry__===!0)return h;const m=_O(this,i,h,n);return yO(m,d)}).then(h=>{var v;if(h===null){if(this.recordDroppedEvent("before_send",f),a){const y=1+(t.spans||[]).length;this.recordDroppedEvent("before_send","span",y)}throw ku(`${d} returned \`null\`, will not send event.`)}const p=r.getSession()||s.getSession();if(c&&p&&this._updateSessionFromEvent(p,h),a){const g=((v=h.sdkProcessingMetadata)==null?void 0:v.spanCountBeforeProcessing)||0,y=h.spans?h.spans.length:0,_=g-y;_>0&&this.recordDroppedEvent("before_send","span",_)}const m=h.transaction_info;if(a&&m&&h.transaction!==t.transaction){const g="custom";h.transaction_info={...m,source:g}}return this.sendEvent(h,n),h}).then(null,h=>{throw zg(h)||jg(h)?h:(this.captureException(h,{mechanism:{handled:!1,type:"internal"},data:{__sentry__:!0},originalException:h}),oc(`Event processing pipeline threw an error, original event will not be sent. Details have been sent as a new event. +Reason: ${h}`))})}_process(t,n){this._numProcessing++,this._promiseBuffer.add(t).then(r=>(this._numProcessing--,r),r=>(this._numProcessing--,r===_h&&this.recordDroppedEvent("queue_overflow",n),r))}_clearOutcomes(){const t=this._outcomes;return this._outcomes={},Object.entries(t).map(([n,r])=>{const[s,i]=n.split(":");return{reason:s,category:i,quantity:r}})}_flushOutcomes(){ce&&J.log("Flushing outcomes...");const t=this._clearOutcomes();if(t.length===0){ce&&J.log("No outcomes to send");return}if(!this._dsn){ce&&J.log("No dsn provided, will not send outcomes");return}ce&&J.log("Sending outcomes:",t);const n=hO(t,this._options.tunnel&&Gi(this._dsn));this.sendEnvelope(n)}}function Gg(e){return e==="replay_event"?"replay":e||"error"}function yO(e,t){const n=`${t} must return \`null\` or a valid event.`;if(ji(e))return e.then(r=>{if(!Wo(r)&&r!==null)throw oc(n);return r},r=>{throw oc(`${t} rejected with ${r}`)});if(!Wo(e)&&e!==null)throw oc(n);return e}function _O(e,t,n,r){const{beforeSend:s,beforeSendTransaction:i,beforeSendSpan:o,ignoreSpans:a}=t;let c=n;if(Nd(c)&&s)return s(c,r);if(k0(c)){if(o||a){const l=pO(c);if(a!=null&&a.length&&Vc(l,a))return null;if(o){const d=o(l);d?c=ua(n,mO(d)):Ad()}if(c.spans){const d=[],u=c.spans;for(const h of u){if(a!=null&&a.length&&Vc(h,a)){zM(u,h);continue}if(o){const p=o(h);p?d.push(p):(Ad(),d.push(h))}else d.push(h)}const f=c.spans.length-d.length;f&&e.recordDroppedEvent("before_send","span",f),c.spans=d}}if(i){if(c.spans){const l=c.spans.length;c.sdkProcessingMetadata={...n.sdkProcessingMetadata,spanCountBeforeProcessing:l}}return i(c,r)}}return c}function Nd(e){return e.type===void 0}function k0(e){return e.type==="transaction"}function bO(e){let t=0;return e.name&&(t+=e.name.length*2),t+=8,t+I0(e.attributes)}function SO(e){let t=0;return e.message&&(t+=e.message.length*2),t+I0(e.attributes)}function I0(e){if(!e)return 0;let t=0;return Object.values(e).forEach(n=>{Array.isArray(n)?t+=n.length*Kg(n[0]):Ei(n)?t+=Kg(n):t+=100}),t}function Kg(e){return typeof e=="string"?e.length*2:typeof e=="number"?8:typeof e=="boolean"?4:0}function EO(e){return Il(e)&&"__sentry_fetch_url_host__"in e&&typeof e.__sentry_fetch_url_host__=="string"}function Yg(e){return EO(e)?`${e.message} (${e.__sentry_fetch_url_host__})`:e.message}function wO(e,t){t.debug===!0&&(ce?J.enable():vr(()=>{console.warn("[Sentry] Cannot initialize SDK with `debug` option using a non-debug bundle.")})),Le().update(t.initialScope);const r=new e(t);return CO(r),r.init(),r}function CO(e){Le().setClient(e)}const TO="thismessage:/";function Sh(e){return"isRelative"in e}function Eh(e,t){const n=e.indexOf("://")<=0&&e.indexOf("//")!==0,r=n?TO:void 0;try{if("canParse"in URL&&!URL.canParse(e,r))return;const s=new URL(e,r);return n?{isRelative:n,pathname:s.pathname,search:s.search,hash:s.hash}:s}catch{}}function kO(e){if(Sh(e))return e.pathname;const t=new URL(e);return t.search="",t.hash="",["80","443"].includes(t.port)&&(t.port=""),t.password&&(t.password="%filtered%"),t.username&&(t.username="%filtered%"),t.toString()}function Ss(e){if(!e)return{};const t=e.match(/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/);if(!t)return{};const n=t[6]||"",r=t[8]||"";return{host:t[4],path:t[5],protocol:t[2],search:n,hash:r,relative:t[5]+n+r}}function IO(e){return e.split(/[?#]/,1)[0]}function Lr(e,t=!0){if(e.startsWith("data:")){const n=e.match(/^data:([^;,]+)/),r=n?n[1]:"text/plain",s=e.includes(";base64,"),i=e.indexOf(",");let o="";if(t&&i!==-1){const a=e.slice(i+1);o=a.length>10?`${a.slice(0,10)}... [truncated]`:a}return`data:${r}${s?",base64":""}${o?`,${o}`:""}`}return e}function xO(e,t){const n=t==null?void 0:t.getDsn(),r=t==null?void 0:t.getOptions().tunnel;return AO(e,n)||RO(e,r)}function RO(e,t){return t?Xg(e)===Xg(t):!1}function AO(e,t){const n=Eh(e);return!n||Sh(n)?!1:t?n.host.includes(t.host)&&/(^|&|\?)sentry_key=/.test(n.search):!1}function Xg(e){return e[e.length-1]==="/"?e.slice(0,-1):e}function MO(e){var t;"aggregates"in e?((t=e.attrs)==null?void 0:t.ip_address)===void 0&&(e.attrs={...e.attrs,ip_address:"{{auto}}"}):e.ipAddress===void 0&&(e.ipAddress="{{auto}}")}function x0(e,t,n=[t],r="npm"){const s=e._metadata||{};s.sdk||(s.sdk={name:`sentry.javascript.${t}`,packages:n.map(i=>({name:`${r}:@sentry/${i}`,version:ys})),version:ys}),e._metadata=s}function R0(e={}){const t=e.client||Ee();if(!GP()||!t)return{};const n=Os(),r=zi(n);if(r.getTraceData)return r.getTraceData(e);const s=e.scope||Le(),i=e.span||Tt(),o=i?BM(i):PO(s),a=i?dr(i):r0(t,s),c=wM(a);if(!KS.test(o))return J.warn("Invalid sentry-trace data. Cannot generate trace data"),{};const d={"sentry-trace":o,baggage:c};return e.propagateTraceparent&&(d.traceparent=i?HM(i):OO(s)),d}function PO(e){const{traceId:t,sampled:n,propagationSpanId:r}=e.getPropagationContext();return YS(t,r,n)}function OO(e){const{traceId:t,sampled:n,propagationSpanId:r}=e.getPropagationContext();return XS(t,r,n)}function LO(e,t,n){let r,s,i;const o=n!=null&&n.maxWait?Math.max(n.maxWait,t):0,a=(n==null?void 0:n.setTimeoutImpl)||setTimeout;function c(){return l(),r=e(),r}function l(){s!==void 0&&clearTimeout(s),i!==void 0&&clearTimeout(i),s=i=void 0}function d(){return s!==void 0||i!==void 0?c():r}function u(){return s&&clearTimeout(s),s=a(c,t),o&&i===void 0&&(i=a(c,o)),r}return u.cancel=l,u.flush=d,u}const NO=100;function Vr(e,t){const n=Ee(),r=rn();if(!n)return;const{beforeBreadcrumb:s=null,maxBreadcrumbs:i=NO}=n.getOptions();if(i<=0)return;const a={timestamp:Ns(),...e},c=s?vr(()=>s(a,t)):a;c!==null&&(n.emit&&n.emit("beforeAddBreadcrumb",c,t),r.addBreadcrumb(c,i))}let Jg;const DO="FunctionToString",Zg=new WeakMap,FO=()=>({name:DO,setupOnce(){Jg=Function.prototype.toString;try{Function.prototype.toString=function(...e){const t=ch(this),n=Zg.has(Ee())&&t!==void 0?t:this;return Jg.apply(n,e)}}catch{}},setup(e){Zg.set(e,!0)}}),$O=FO,BO=[/^Script error\.?$/,/^Javascript error: Script error\.? on line 0$/,/^ResizeObserver loop completed with undelivered notifications.$/,/^Cannot redefine property: googletag$/,/^Can't find variable: gmo$/,/^undefined is not an object \(evaluating 'a\.[A-Z]'\)$/,`can't redefine non-configurable property "solana"`,"vv().getRestrictions is not a function. (In 'vv().getRestrictions(1,a)', 'vv().getRestrictions' is undefined)","Can't find variable: _AutofillCallbackHandler",/^Non-Error promise rejection captured with value: Object Not Found Matching Id:\d+, MethodName:simulateEvent, ParamCount:\d+$/,/^Java exception was raised during method invocation$/],HO="EventFilters",VO=(e={})=>{let t;return{name:HO,setup(n){const r=n.getOptions();t=Qg(e,r)},processEvent(n,r,s){if(!t){const i=s.getOptions();t=Qg(e,i)}return WO(n,t)?null:n}}},UO=(e={})=>({...VO(e),name:"InboundFilters"});function Qg(e={},t={}){return{allowUrls:[...e.allowUrls||[],...t.allowUrls||[]],denyUrls:[...e.denyUrls||[],...t.denyUrls||[]],ignoreErrors:[...e.ignoreErrors||[],...t.ignoreErrors||[],...e.disableErrorDefaults?[]:BO],ignoreTransactions:[...e.ignoreTransactions||[],...t.ignoreTransactions||[]]}}function WO(e,t){if(e.type){if(e.type==="transaction"&&zO(e,t.ignoreTransactions))return ce&&J.warn(`Event dropped due to being matched by \`ignoreTransactions\` option. +Event: ${as(e)}`),!0}else{if(jO(e,t.ignoreErrors))return ce&&J.warn(`Event dropped due to being matched by \`ignoreErrors\` option. +Event: ${as(e)}`),!0;if(YO(e))return ce&&J.warn(`Event dropped due to not having an error message, error type or stacktrace. +Event: ${as(e)}`),!0;if(qO(e,t.denyUrls))return ce&&J.warn(`Event dropped due to being matched by \`denyUrls\` option. +Event: ${as(e)}. +Url: ${Uc(e)}`),!0;if(!GO(e,t.allowUrls))return ce&&J.warn(`Event dropped due to not being matched by \`allowUrls\` option. +Event: ${as(e)}. +Url: ${Uc(e)}`),!0}return!1}function jO(e,t){return t!=null&&t.length?w0(e).some(n=>er(n,t)):!1}function zO(e,t){if(!(t!=null&&t.length))return!1;const n=e.transaction;return n?er(n,t):!1}function qO(e,t){if(!(t!=null&&t.length))return!1;const n=Uc(e);return n?er(n,t):!1}function GO(e,t){if(!(t!=null&&t.length))return!0;const n=Uc(e);return n?er(n,t):!0}function KO(e=[]){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n&&n.filename!==""&&n.filename!=="[native code]")return n.filename||null}return null}function Uc(e){var t,n;try{const r=[...((t=e.exception)==null?void 0:t.values)??[]].reverse().find(i=>{var o,a,c;return((o=i.mechanism)==null?void 0:o.parent_id)===void 0&&((c=(a=i.stacktrace)==null?void 0:a.frames)==null?void 0:c.length)}),s=(n=r==null?void 0:r.stacktrace)==null?void 0:n.frames;return s?KO(s):null}catch{return ce&&J.error(`Cannot extract url for event ${as(e)}`),null}}function YO(e){var t,n;return(n=(t=e.exception)==null?void 0:t.values)!=null&&n.length?!e.message&&!e.exception.values.some(r=>r.stacktrace||r.type&&r.type!=="Error"||r.value):!1}function XO(e,t,n,r,s,i){var a;if(!((a=s.exception)!=null&&a.values)||!i||!cr(i.originalException,Error))return;const o=s.exception.values.length>0?s.exception.values[s.exception.values.length-1]:void 0;o&&(s.exception.values=Dd(e,t,r,i.originalException,n,s.exception.values,o,0))}function Dd(e,t,n,r,s,i,o,a){if(i.length>=n+1)return i;let c=[...i];if(cr(r[s],Error)){ev(o,a);const l=e(t,r[s]),d=c.length;tv(l,s,d,a),c=Dd(e,t,n,r[s],s,[l,...c],l,d)}return Array.isArray(r.errors)&&r.errors.forEach((l,d)=>{if(cr(l,Error)){ev(o,a);const u=e(t,l),f=c.length;tv(u,`errors[${d}]`,f,a),c=Dd(e,t,n,l,s,[u,...c],u,f)}}),c}function ev(e,t){e.mechanism={handled:!0,type:"auto.core.linked_errors",...e.mechanism,...e.type==="AggregateError"&&{is_exception_group:!0},exception_id:t}}function tv(e,t,n,r){e.mechanism={handled:!0,...e.mechanism,type:"chained",source:t,exception_id:n,parent_id:r}}function JO(e){const t="console";Kr(t,e),Yr(t,ZO)}function ZO(){"console"in xe&&NA.forEach(function(e){e in xe.console&&Wt(xe.console,e,function(t){return $c[e]=t,function(...n){dn("console",{args:n,level:e});const s=$c[e];s==null||s.apply(xe.console,n)}})})}function A0(e){return e==="warn"?"warning":["fatal","error","warning","log","info","debug"].includes(e)?e:"log"}const QO="Dedupe",eL=()=>{let e;return{name:QO,processEvent(t){if(t.type)return t;try{if(nL(t,e))return ce&&J.warn("Event dropped due to being a duplicate of previously captured event."),null}catch{}return e=t}}},tL=eL;function nL(e,t){return t?!!(rL(e,t)||sL(e,t)):!1}function rL(e,t){const n=e.message,r=t.message;return!(!n&&!r||n&&!r||!n&&r||n!==r||!P0(e,t)||!M0(e,t))}function sL(e,t){const n=nv(t),r=nv(e);return!(!n||!r||n.type!==r.type||n.value!==r.value||!P0(e,t)||!M0(e,t))}function M0(e,t){let n=dg(e),r=dg(t);if(!n&&!r)return!0;if(n&&!r||!n&&r||(n=n,r=r,r.length!==n.length))return!1;for(let s=0;su[0]==="sentry-trace")||l.push(["sentry-trace",i]),r&&a&&!c.find(u=>u[0]==="traceparent")&&l.push(["traceparent",a]);const d=c.find(u=>u[0]==="baggage"&&La(u[1]));return o&&!d&&l.push(["baggage",o]),l}else{const l="sentry-trace"in c?c["sentry-trace"]:void 0,d="traceparent"in c?c.traceparent:void 0,u="baggage"in c?c.baggage:void 0,f=u?Array.isArray(u)?[...u]:[u]:[],h=u&&(Array.isArray(u)?u.find(m=>La(m)):La(u));o&&!h&&f.push(o);const p={...c,"sentry-trace":l??i,baggage:f.length>0?f.join(","):void 0};return r&&a&&!d&&(p.traceparent=a),p}else return{...s}}function cL(e,t){var n,r;if(t.response){WS(e,t.response.status);const s=(r=(n=t.response)==null?void 0:n.headers)==null?void 0:r.get("content-length");if(s){const i=parseInt(s);i>0&&e.setAttribute("http.response_content_length",i)}}else t.error&&e.setStatus({code:ht,message:"internal_error"});e.end()}function La(e){return e.split(",").some(t=>t.trim().startsWith(fh))}function lL(e){return typeof Headers<"u"&&cr(e,Headers)}function uL(e,t,n){if(e.startsWith("data:")){const i=Lr(e);return{name:`${t} ${i}`,attributes:rv(e,void 0,t,n)}}const r=Eh(e),s=r?kO(r):e;return{name:`${t} ${s}`,attributes:rv(e,r,t,n)}}function rv(e,t,n,r){const s={url:Lr(e),type:"fetch","http.method":n,[st]:r,[ur]:"http.client"};return t&&(Sh(t)||(s["http.url"]=Lr(t.href),s["server.address"]=t.host),t.search&&(s["http.query"]=t.search),t.hash&&(s["http.fragment"]=t.hash)),s}function dL(e,t={},n=Le()){const{message:r,name:s,email:i,url:o,source:a,associatedEventId:c,tags:l}=e,d={contexts:{feedback:{contact_email:i,name:s,message:r,url:o,source:a,associated_event_id:c}},type:"feedback",level:"info",tags:l},u=(n==null?void 0:n.getClient())||Ee();return u&&u.emit("beforeSendFeedback",d,t),n.captureEvent(d,t)}function O0(e){if(e!==void 0)return e>=400&&e<500?"warning":e>=500?"error":void 0}const qo=xe;function fL(){return"history"in qo&&!!qo.history}function hL(){if(!("fetch"in qo))return!1;try{return new Headers,new Request("data:,"),new Response,!0}catch{return!1}}function Fd(e){return e&&/^function\s+\w+\(\)\s+\{\s+\[native code\]\s+\}$/.test(e.toString())}function pL(){var n;if(typeof EdgeRuntime=="string")return!0;if(!hL())return!1;if(Fd(qo.fetch))return!0;let e=!1;const t=qo.document;if(t&&typeof t.createElement=="function")try{const r=t.createElement("iframe");r.hidden=!0,t.head.appendChild(r),(n=r.contentWindow)!=null&&n.fetch&&(e=Fd(r.contentWindow.fetch)),t.head.removeChild(r)}catch(r){ce&&J.warn("Could not create sandbox iframe for pure fetch check, bailing to window.fetch: ",r)}return e}function L0(e,t){const n="fetch";Kr(n,e),Yr(n,()=>N0(void 0,t))}function mL(e){const t="fetch-body-resolved";Kr(t,e),Yr(t,()=>N0(vL))}function N0(e,t=!1){t&&!pL()||Wt(xe,"fetch",function(n){return function(...r){const s=new Error,{method:i,url:o}=yL(r),a={args:r,fetchData:{method:i,url:o},startTimestamp:lt()*1e3,virtualError:s,headers:_L(r)};return e||dn("fetch",{...a}),n.apply(xe,r).then(async c=>(e?e(c):dn("fetch",{...a,endTimestamp:lt()*1e3,response:c}),c),c=>{dn("fetch",{...a,endTimestamp:lt()*1e3,error:c}),Il(c)&&c.stack===void 0&&(c.stack=s.stack,qt(c,"framesToPop",1));const l=Ee(),d=(l==null?void 0:l.getOptions().enhanceFetchErrorMessages)??"always";if(d!==!1&&c instanceof TypeError&&(c.message==="Failed to fetch"||c.message==="Load failed"||c.message==="NetworkError when attempting to fetch resource."))try{const h=new URL(a.fetchData.url).host;d==="always"?c.message=`${c.message} (${h})`:qt(c,"__sentry_fetch_url_host__",h)}catch{}throw c})}})}async function gL(e,t){if(e!=null&&e.body){const n=e.body,r=n.getReader(),s=setTimeout(()=>{n.cancel().then(null,()=>{})},90*1e3);let i=!0;for(;i;){let o;try{o=setTimeout(()=>{n.cancel().then(null,()=>{})},5e3);const{done:a}=await r.read();clearTimeout(o),a&&(t(),i=!1)}catch{i=!1}finally{clearTimeout(o)}}clearTimeout(s),r.releaseLock(),n.cancel().then(null,()=>{})}}function vL(e){let t;try{t=e.clone()}catch{return}gL(t,()=>{dn("fetch-body-resolved",{endTimestamp:lt()*1e3,response:e})})}function ac(e,t){return!!e&&typeof e=="object"&&!!e[t]}function sv(e){return typeof e=="string"?e:e?ac(e,"url")?e.url:e.toString?e.toString():"":""}function yL(e){if(e.length===0)return{method:"GET",url:""};if(e.length===2){const[n,r]=e;return{url:sv(n),method:ac(r,"method")?String(r.method).toUpperCase():oh(n)&&ac(n,"method")?String(n.method).toUpperCase():"GET"}}const t=e[0];return{url:sv(t),method:ac(t,"method")?String(t.method).toUpperCase():"GET"}}function _L(e){const[t,n]=e;try{if(typeof n=="object"&&n!==null&&"headers"in n&&n.headers)return new Headers(n.headers);if(oh(t))return new Headers(t.headers)}catch{}}function bL(){return typeof __SENTRY_BROWSER_BUNDLE__<"u"&&!!__SENTRY_BROWSER_BUNDLE__}function SL(){return"npm"}function EL(){return!bL()&&Object.prototype.toString.call(typeof process<"u"?process:0)==="[object process]"}function Wc(){return typeof window<"u"&&(!EL()||wL())}function wL(){const e=xe.process;return(e==null?void 0:e.type)==="renderer"}const _n=xe,Ue=_n.document,co=_n.navigator,D0="Report a Bug",CL="Cancel",TL="Send Bug Report",kL="Confirm",IL="Report a Bug",xL="your.email@example.org",RL="Email",AL="What's the bug? What did you expect?",ML="Description",PL="Your Name",OL="Name",LL="Thank you for your report!",NL="(required)",DL="Add a screenshot",FL="Remove screenshot",$L="Highlight",BL="Hide",HL="Remove",VL="widget",UL="api",WL=5e3,jL=(e,t={includeReplay:!0})=>{if(!e.message)throw new Error("Unable to submit feedback with empty message");const n=Ee();if(!n)throw new Error("No client setup, cannot send feedback.");e.tags&&Object.keys(e.tags).length&&Le().setTags(e.tags);const r=dL({source:UL,url:Ls(),...e},t);return new Promise((s,i)=>{const o=setTimeout(()=>i("Unable to determine if Feedback was correctly sent."),3e4),a=n.on("afterSendEvent",(c,l)=>{if(c.event_id===r)return clearTimeout(o),a(),l!=null&&l.statusCode&&l.statusCode>=200&&l.statusCode<300?s(r):(l==null?void 0:l.statusCode)===403?i("Unable to send feedback. This could be because this domain is not in your list of allowed domains."):i("Unable to send feedback. This could be because of network issues, or because you are using an ad-blocker.")})})},cc=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__;function zL(){return!(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(co.userAgent)||/Macintosh/i.test(co.userAgent)&&co.maxTouchPoints&&co.maxTouchPoints>1||!isSecureContext)}function Na(e,t){return{...e,...t,tags:{...e.tags,...t.tags},onFormOpen:()=>{var n,r;(n=t.onFormOpen)==null||n.call(t),(r=e.onFormOpen)==null||r.call(e)},onFormClose:()=>{var n,r;(n=t.onFormClose)==null||n.call(t),(r=e.onFormClose)==null||r.call(e)},onSubmitSuccess:(n,r)=>{var s,i;(s=t.onSubmitSuccess)==null||s.call(t,n,r),(i=e.onSubmitSuccess)==null||i.call(e,n,r)},onSubmitError:n=>{var r,s;(r=t.onSubmitError)==null||r.call(t,n),(s=e.onSubmitError)==null||s.call(e,n)},onFormSubmitted:()=>{var n,r;(n=t.onFormSubmitted)==null||n.call(t),(r=e.onFormSubmitted)==null||r.call(e)},themeDark:{...e.themeDark,...t.themeDark},themeLight:{...e.themeLight,...t.themeLight}}}function qL(e){const t=Ue.createElement("style");return t.textContent=` +.widget__actor { + position: fixed; + z-index: var(--z-index); + margin: var(--page-margin); + inset: var(--actor-inset); + + display: flex; + align-items: center; + gap: 8px; + padding: 16px; + + font-family: inherit; + font-size: var(--font-size); + font-weight: 600; + line-height: 1.14em; + text-decoration: none; + + background: var(--actor-background, var(--background)); + border-radius: var(--actor-border-radius, 1.7em/50%); + border: var(--actor-border, var(--border)); + box-shadow: var(--actor-box-shadow, var(--box-shadow)); + color: var(--actor-color, var(--foreground)); + fill: var(--actor-color, var(--foreground)); + cursor: pointer; + opacity: 1; + transition: transform 0.2s ease-in-out; + transform: translate(0, 0) scale(1); +} +.widget__actor[aria-hidden="true"] { + opacity: 0; + pointer-events: none; + visibility: hidden; + transform: translate(0, 16px) scale(0.98); +} + +.widget__actor:hover { + background: var(--actor-hover-background, var(--background)); + filter: var(--interactive-filter); +} + +.widget__actor svg { + width: 1.14em; + height: 1.14em; +} + +@media (max-width: 600px) { + .widget__actor span { + display: none; + } +} +`,e&&t.setAttribute("nonce",e),t}function Xt(e,t){return Object.entries(t).forEach(([n,r])=>{e.setAttributeNS(null,n,r)}),e}const Ws=20,GL="http://www.w3.org/2000/svg";function KL(){const e=a=>_n.document.createElementNS(GL,a),t=Xt(e("svg"),{width:`${Ws}`,height:`${Ws}`,viewBox:`0 0 ${Ws} ${Ws}`,fill:"var(--actor-color, var(--foreground))"}),n=Xt(e("g"),{clipPath:"url(#clip0_57_80)"}),r=Xt(e("path"),{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M15.6622 15H12.3997C12.2129 14.9959 12.031 14.9396 11.8747 14.8375L8.04965 12.2H7.49956V19.1C7.4875 19.3348 7.3888 19.5568 7.22256 19.723C7.05632 19.8892 6.83435 19.9879 6.59956 20H2.04956C1.80193 19.9968 1.56535 19.8969 1.39023 19.7218C1.21511 19.5467 1.1153 19.3101 1.11206 19.0625V12.2H0.949652C0.824431 12.2017 0.700142 12.1783 0.584123 12.1311C0.468104 12.084 0.362708 12.014 0.274155 11.9255C0.185602 11.8369 0.115689 11.7315 0.0685419 11.6155C0.0213952 11.4995 -0.00202913 11.3752 -0.00034808 11.25V3.75C-0.00900498 3.62067 0.0092504 3.49095 0.0532651 3.36904C0.0972798 3.24712 0.166097 3.13566 0.255372 3.04168C0.344646 2.94771 0.452437 2.87327 0.571937 2.82307C0.691437 2.77286 0.82005 2.74798 0.949652 2.75H8.04965L11.8747 0.1625C12.031 0.0603649 12.2129 0.00407221 12.3997 0H15.6622C15.9098 0.00323746 16.1464 0.103049 16.3215 0.278167C16.4966 0.453286 16.5964 0.689866 16.5997 0.9375V3.25269C17.3969 3.42959 18.1345 3.83026 18.7211 4.41679C19.5322 5.22788 19.9878 6.32796 19.9878 7.47502C19.9878 8.62209 19.5322 9.72217 18.7211 10.5333C18.1345 11.1198 17.3969 11.5205 16.5997 11.6974V14.0125C16.6047 14.1393 16.5842 14.2659 16.5395 14.3847C16.4948 14.5035 16.4268 14.6121 16.3394 14.7042C16.252 14.7962 16.147 14.8698 16.0307 14.9206C15.9144 14.9714 15.7891 14.9984 15.6622 15ZM1.89695 10.325H1.88715V4.625H8.33715C8.52423 4.62301 8.70666 4.56654 8.86215 4.4625L12.6872 1.875H14.7247V13.125H12.6872L8.86215 10.4875C8.70666 10.3835 8.52423 10.327 8.33715 10.325H2.20217C2.15205 10.3167 2.10102 10.3125 2.04956 10.3125C1.9981 10.3125 1.94708 10.3167 1.89695 10.325ZM2.98706 12.2V18.1625H5.66206V12.2H2.98706ZM16.5997 9.93612V5.01393C16.6536 5.02355 16.7072 5.03495 16.7605 5.04814C17.1202 5.13709 17.4556 5.30487 17.7425 5.53934C18.0293 5.77381 18.2605 6.06912 18.4192 6.40389C18.578 6.73866 18.6603 7.10452 18.6603 7.47502C18.6603 7.84552 18.578 8.21139 18.4192 8.54616C18.2605 8.88093 18.0293 9.17624 17.7425 9.41071C17.4556 9.64518 17.1202 9.81296 16.7605 9.90191C16.7072 9.91509 16.6536 9.9265 16.5997 9.93612Z"});t.appendChild(n).appendChild(r);const s=e("defs"),i=Xt(e("clipPath"),{id:"clip0_57_80"}),o=Xt(e("rect"),{width:`${Ws}`,height:`${Ws}`,fill:"white"});return i.appendChild(o),s.appendChild(i),t.appendChild(s).appendChild(i).appendChild(o),t}function YL({triggerLabel:e,triggerAriaLabel:t,shadow:n,styleNonce:r}){const s=Ue.createElement("button");if(s.type="button",s.className="widget__actor",s.ariaHidden="false",s.ariaLabel=t||e||D0,s.appendChild(KL()),e){const o=Ue.createElement("span");o.appendChild(Ue.createTextNode(e)),s.appendChild(o)}const i=qL(r);return{el:s,appendToDom(){n.appendChild(i),n.appendChild(s)},removeFromDom(){s.remove(),i.remove()},show(){s.ariaHidden="false"},hide(){s.ariaHidden="true"}}}const F0="rgba(88, 74, 192, 1)",XL={foreground:"#2b2233",background:"#ffffff",accentForeground:"white",accentBackground:F0,successColor:"#268d75",errorColor:"#df3338",border:"1.5px solid rgba(41, 35, 47, 0.13)",boxShadow:"0px 4px 24px 0px rgba(43, 34, 51, 0.12)",outline:"1px auto var(--accent-background)",interactiveFilter:"brightness(95%)"},iv={foreground:"#ebe6ef",background:"#29232f",accentForeground:"white",accentBackground:F0,successColor:"#2da98c",errorColor:"#f55459",border:"1.5px solid rgba(235, 230, 239, 0.15)",boxShadow:"0px 4px 24px 0px rgba(43, 34, 51, 0.12)",outline:"1px auto var(--accent-background)",interactiveFilter:"brightness(150%)"};function ov(e){return` + --foreground: ${e.foreground}; + --background: ${e.background}; + --accent-foreground: ${e.accentForeground}; + --accent-background: ${e.accentBackground}; + --success-color: ${e.successColor}; + --error-color: ${e.errorColor}; + --border: ${e.border}; + --box-shadow: ${e.boxShadow}; + --outline: ${e.outline}; + --interactive-filter: ${e.interactiveFilter}; + `}function JL({colorScheme:e,themeDark:t,themeLight:n,styleNonce:r}){const s=Ue.createElement("style");return s.textContent=` +:host { + --font-family: system-ui, 'Helvetica Neue', Arial, sans-serif; + --font-size: 14px; + --z-index: 100000; + + --page-margin: 16px; + --inset: auto 0 0 auto; + --actor-inset: var(--inset); + + font-family: var(--font-family); + font-size: var(--font-size); + + ${e!=="system"?`color-scheme: only ${e};`:""} + + ${ov(e==="dark"?{...iv,...t}:{...XL,...n})} +} + +${e==="system"?` +@media (prefers-color-scheme: dark) { + :host { + color-scheme: only dark; + + ${ov({...iv,...t})} + } +}`:""} +`,r&&s.setAttribute("nonce",r),s}const ZL=({lazyLoadIntegration:e,getModalIntegration:t,getScreenshotIntegration:n})=>({id:s="sentry-feedback",autoInject:i=!0,showBranding:o=!0,isEmailRequired:a=!1,isNameRequired:c=!1,showEmail:l=!0,showName:d=!0,enableScreenshot:u=!0,useSentryUser:f={email:"email",name:"username"},tags:h,styleNonce:p,scriptNonce:m,colorScheme:v="system",themeLight:g={},themeDark:y={},addScreenshotButtonLabel:_=DL,cancelButtonLabel:S=CL,confirmButtonLabel:M=kL,emailLabel:R=RL,emailPlaceholder:E=xL,formTitle:C=IL,isRequiredLabel:I=NL,messageLabel:A=ML,messagePlaceholder:O=AL,nameLabel:T=OL,namePlaceholder:P=PL,removeScreenshotButtonLabel:N=FL,submitButtonLabel:z=TL,successMessageText:X=LL,triggerLabel:q=D0,triggerAriaLabel:D="",highlightToolText:re=$L,hideToolText:U=BL,removeHighlightText:ie=HL,onFormOpen:ae,onFormClose:ue,onSubmitSuccess:Ce,onSubmitError:Ne,onFormSubmitted:He}={})=>{const x={id:s,autoInject:i,showBranding:o,isEmailRequired:a,isNameRequired:c,showEmail:l,showName:d,enableScreenshot:u,useSentryUser:f,tags:h,styleNonce:p,scriptNonce:m,colorScheme:v,themeDark:y,themeLight:g,triggerLabel:q,triggerAriaLabel:D,cancelButtonLabel:S,submitButtonLabel:z,confirmButtonLabel:M,formTitle:C,emailLabel:R,emailPlaceholder:E,messageLabel:A,messagePlaceholder:O,nameLabel:T,namePlaceholder:P,successMessageText:X,isRequiredLabel:I,addScreenshotButtonLabel:_,removeScreenshotButtonLabel:N,highlightToolText:re,hideToolText:U,removeHighlightText:ie,onFormClose:ue,onFormOpen:ae,onSubmitError:Ne,onSubmitSuccess:Ce,onFormSubmitted:He};let W=null,K=[];const ne=k=>{if(!W){const L=Ue.createElement("div");L.id=String(k.id),Ue.body.appendChild(L),W=L.attachShadow({mode:"open"}),W.appendChild(JL(k))}return W},ye=async k=>{const L=k.enableScreenshot&&zL();let $,F;try{$=(t?t():await e("feedbackModalIntegration",m))(),Vg($)}catch{throw cc&&J.error("[Feedback] Error when trying to load feedback integrations. Try using `feedbackSyncIntegration` in your `Sentry.init`."),new Error("[Feedback] Missing feedback modal integration!")}try{const Y=L?n?n():await e("feedbackScreenshotIntegration",m):void 0;Y&&(F=Y(),Vg(F))}catch{cc&&J.error("[Feedback] Missing feedback screenshot integration. Proceeding without screenshots.")}const G=$.createDialog({options:{...k,onFormClose:()=>{var Y;G==null||G.close(),(Y=k.onFormClose)==null||Y.call(k)},onFormSubmitted:()=>{var Y;G==null||G.close(),(Y=k.onFormSubmitted)==null||Y.call(k)}},screenshotIntegration:F,sendFeedback:jL,shadow:ne(k)});return G},b=(k,L={})=>{const $=Na(x,L),F=typeof k=="string"?Ue.querySelector(k):typeof k.addEventListener=="function"?k:null;if(!F)throw cc&&J.error("[Feedback] Unable to attach to target element"),new Error("Unable to attach to target element");let G=null;const Y=async()=>{G||(G=await ye({...$,onFormSubmitted:()=>{var V;G==null||G.removeFromDom(),(V=$.onFormSubmitted)==null||V.call($)}})),G.appendToDom(),G.open()};F.addEventListener("click",Y);const H=()=>{K=K.filter(V=>V!==H),G==null||G.removeFromDom(),G=null,F.removeEventListener("click",Y)};return K.push(H),H},w=(k={})=>{const L=Na(x,k),$=ne(L),F=YL({triggerLabel:L.triggerLabel,triggerAriaLabel:L.triggerAriaLabel,shadow:$,styleNonce:p});return b(F.el,{...L,onFormOpen(){F.hide()},onFormClose(){F.show()},onFormSubmitted(){F.show()}}),F};return{name:"Feedback",setupOnce(){!Wc()||!x.autoInject||(Ue.readyState==="loading"?Ue.addEventListener("DOMContentLoaded",()=>w().appendToDom()):w().appendToDom())},attachTo:b,createWidget(k={}){const L=w(Na(x,k));return L.appendToDom(),L},async createForm(k={}){return ye(Na(x,k))},remove(){var k;W&&((k=W.parentElement)==null||k.remove(),W=null),K.forEach(L=>L()),K=[]}}};var Ol,je,$0,cs,av,B0,$d,Go={},wh=[],QL=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,Ch=Array.isArray;function Mr(e,t){for(var n in t)e[n]=t[n];return e}function H0(e){var t=e.parentNode;t&&t.removeChild(e)}function ke(e,t,n){var r,s,i,o={};for(i in t)i=="key"?r=t[i]:i=="ref"?s=t[i]:o[i]=t[i];if(arguments.length>2&&(o.children=arguments.length>3?Ol.call(arguments,2):n),typeof e=="function"&&e.defaultProps!=null)for(i in e.defaultProps)o[i]===void 0&&(o[i]=e.defaultProps[i]);return lc(e,o,r,s,null)}function lc(e,t,n,r,s){var i={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,constructor:void 0,__v:s??++$0,__i:-1,__u:0};return s==null&&je.vnode!=null&&je.vnode(i),i}function ha(e){return e.children}function uc(e,t){this.props=e,this.context=t}function Ii(e,t){if(t==null)return e.__?Ii(e.__,e.__i+1):null;for(var n;tn?(Bd(r,t,s),s.length=r.length=0,t=void 0,cs.sort($d)):t&&je.__c&&je.__c(t,wh));t&&Bd(r,t,s),jc.__r=0}function U0(e,t,n,r,s,i,o,a,c,l,d){var u,f,h,p,m,v=r&&r.__k||wh,g=t.length;for(n.__d=c,tN(n,t,v),c=n.__d,u=0;u0?lc(s.type,s.props,s.key,s.ref?s.ref:null,s.__v):s)!=null?(s.__=e,s.__b=e.__b+1,a=nN(s,n,o=r+u,d),s.__i=a,i=null,a!==-1&&(d--,(i=n[a])&&(i.__u|=131072)),i==null||i.__v===null?(a==-1&&u--,typeof s.type!="function"&&(s.__u|=65536)):a!==o&&(a===o+1?u++:a>o?d>c-o?u+=a-o:u--:u=a(c!=null&&!(131072&c.__u)?1:0))for(;o>=0||a=0){if((c=t[o])&&!(131072&c.__u)&&s==c.key&&i===c.type)return o;o--}if(a=n.__.length&&n.__.push({__V:dc}),n.__[e]}function us(e){return xi=1,z0(G0,e)}function z0(e,t,n){var r=Ds(fr++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):G0(void 0,t),function(a){var c=r.__N?r.__N[0]:r.__[0],l=r.t(c,a);c!==l&&(r.__N=[l,r.__[1]],r.__c.setState({}))}],r.__c=We,!We.u)){var s=function(a,c,l){if(!r.__c.__H)return!0;var d=r.__c.__H.__.filter(function(f){return!!f.__c});if(d.every(function(f){return!f.__N}))return!i||i.call(this,a,c,l);var u=!1;return d.forEach(function(f){if(f.__N){var h=f.__[0];f.__=f.__N,f.__N=void 0,h!==f.__[0]&&(u=!0)}}),!(!u&&r.__c.props===a)&&(!i||i.call(this,a,c,l))};We.u=!0;var i=We.shouldComponentUpdate,o=We.componentWillUpdate;We.componentWillUpdate=function(a,c,l){if(this.__e){var d=i;i=void 0,s(a,c,l),i=d}o&&o.call(this,a,c,l)},We.shouldComponentUpdate=s}return r.__N||r.__}function oN(e,t){var n=Ds(fr++,3);!nt.__s&&Ih(n.__H,t)&&(n.__=e,n.i=t,We.__H.__h.push(n))}function q0(e,t){var n=Ds(fr++,4);!nt.__s&&Ih(n.__H,t)&&(n.__=e,n.i=t,We.__h.push(n))}function aN(e){return xi=5,pa(function(){return{current:e}},[])}function cN(e,t,n){xi=6,q0(function(){return typeof e=="function"?(e(t()),function(){return e(null)}):e?(e.current=t(),function(){return e.current=null}):void 0},n==null?n:n.concat(e))}function pa(e,t){var n=Ds(fr++,7);return Ih(n.__H,t)?(n.__V=e(),n.i=t,n.__h=e,n.__V):n.__}function di(e,t){return xi=8,pa(function(){return e},t)}function lN(e){var t=We.context[e.__c],n=Ds(fr++,9);return n.c=e,t?(n.__==null&&(n.__=!0,t.sub(We)),t.props.value):e.__}function uN(e,t){nt.useDebugValue&&nt.useDebugValue(t?t(e):e)}function dN(e){var t=Ds(fr++,10),n=us();return t.__=e,We.componentDidCatch||(We.componentDidCatch=function(r,s){t.__&&t.__(r,s),n[1](r)}),[n[0],function(){n[1](void 0)}]}function fN(){var e=Ds(fr++,11);if(!e.__){for(var t=We.__v;t!==null&&!t.__m&&t.__!==null;)t=t.__;var n=t.__m||(t.__m=[0,0]);e.__="P"+n[0]+"-"+n[1]++}return e.__}function hN(){for(var e;e=j0.shift();)if(e.__P&&e.__H)try{e.__H.__h.forEach(fc),e.__H.__h.forEach(Vd),e.__H.__h=[]}catch(t){e.__H.__h=[],nt.__e(t,e.__v)}}nt.__b=function(e){We=null,hv&&hv(e)},nt.__=function(e,t){t.__k&&t.__k.__m&&(e.__m=t.__k.__m),yv&&yv(e,t)},nt.__r=function(e){pv&&pv(e),fr=0;var t=(We=e.__c).__H;t&&(Iu===We?(t.__h=[],We.__h=[],t.__.forEach(function(n){n.__N&&(n.__=n.__N),n.__V=dc,n.__N=n.i=void 0})):(t.__h.forEach(fc),t.__h.forEach(Vd),t.__h=[],fr=0)),Iu=We},nt.diffed=function(e){mv&&mv(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(j0.push(t)!==1&&fv===nt.requestAnimationFrame||((fv=nt.requestAnimationFrame)||pN)(hN)),t.__H.__.forEach(function(n){n.i&&(n.__H=n.i),n.__V!==dc&&(n.__=n.__V),n.i=void 0,n.__V=dc})),Iu=We=null},nt.__c=function(e,t){t.some(function(n){try{n.__h.forEach(fc),n.__h=n.__h.filter(function(r){return!r.__||Vd(r)})}catch(r){t.some(function(s){s.__h&&(s.__h=[])}),t=[],nt.__e(r,n.__v)}}),gv&&gv(e,t)},nt.unmount=function(e){vv&&vv(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.forEach(function(r){try{fc(r)}catch(s){t=s}}),n.__H=void 0,t&&nt.__e(t,n.__v))};var _v=typeof requestAnimationFrame=="function";function pN(e){var t,n=function(){clearTimeout(r),_v&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,100);_v&&(t=requestAnimationFrame(n))}function fc(e){var t=We,n=e.__c;typeof n=="function"&&(e.__c=void 0,n()),We=t}function Vd(e){var t=We;e.__c=e.__(),We=t}function Ih(e,t){return!e||e.length!==t.length||t.some(function(n,r){return n!==e[r]})}function G0(e,t){return typeof t=="function"?t(e):t}const mN=Object.defineProperty({__proto__:null,useCallback:di,useContext:lN,useDebugValue:uN,useEffect:oN,useErrorBoundary:dN,useId:fN,useImperativeHandle:cN,useLayoutEffect:q0,useMemo:pa,useReducer:z0,useRef:aN,useState:us},Symbol.toStringTag,{value:"Module"}),gN="http://www.w3.org/2000/svg";function vN(){const e=r=>Ue.createElementNS(gN,r),t=Xt(e("svg"),{width:"32",height:"30",viewBox:"0 0 72 66",fill:"inherit"}),n=Xt(e("path"),{transform:"translate(11, 11)",d:"M29,2.26a4.67,4.67,0,0,0-8,0L14.42,13.53A32.21,32.21,0,0,1,32.17,40.19H27.55A27.68,27.68,0,0,0,12.09,17.47L6,28a15.92,15.92,0,0,1,9.23,12.17H4.62A.76.76,0,0,1,4,39.06l2.94-5a10.74,10.74,0,0,0-3.36-1.9l-2.91,5a4.54,4.54,0,0,0,1.69,6.24A4.66,4.66,0,0,0,4.62,44H19.15a19.4,19.4,0,0,0-8-17.31l2.31-4A23.87,23.87,0,0,1,23.76,44H36.07a35.88,35.88,0,0,0-16.41-31.8l4.67-8a.77.77,0,0,1,1.05-.27c.53.29,20.29,34.77,20.66,35.17a.76.76,0,0,1-.68,1.13H40.6q.09,1.91,0,3.81h4.78A4.59,4.59,0,0,0,50,39.43a4.49,4.49,0,0,0-.62-2.28Z"});return t.appendChild(n),t}function yN({options:e}){const t=pa(()=>({__html:vN().outerHTML}),[]);return ke("h2",{class:"dialog__header"},ke("span",{class:"dialog__title"},e.formTitle),e.showBranding?ke("a",{class:"brand-link",target:"_blank",href:"https://sentry.io/welcome/",title:"Powered by Sentry",rel:"noopener noreferrer",dangerouslySetInnerHTML:t}):null)}function _N(e,t){const n=[];return t.isNameRequired&&!e.name&&n.push(t.nameLabel),t.isEmailRequired&&!e.email&&n.push(t.emailLabel),e.message||n.push(t.messageLabel),n}function xu(e,t){const n=e.get(t);return typeof n=="string"?n.trim():""}function bN({options:e,defaultEmail:t,defaultName:n,onFormClose:r,onSubmit:s,onSubmitSuccess:i,onSubmitError:o,showEmail:a,showName:c,screenshotInput:l}){const{tags:d,addScreenshotButtonLabel:u,removeScreenshotButtonLabel:f,cancelButtonLabel:h,emailLabel:p,emailPlaceholder:m,isEmailRequired:v,isNameRequired:g,messageLabel:y,messagePlaceholder:_,nameLabel:S,namePlaceholder:M,submitButtonLabel:R,isRequiredLabel:E}=e,[C,I]=us(!1),[A,O]=us(null),[T,P]=us(!1),N=l==null?void 0:l.input,[z,X]=us(null),q=di(U=>{X(U),P(!1)},[]),D=di(U=>{const ie=_N(U,{emailLabel:p,isEmailRequired:v,isNameRequired:g,messageLabel:y,nameLabel:S});return ie.length>0?O(`Please enter in the following required fields: ${ie.join(", ")}`):O(null),ie.length===0},[p,v,g,y,S]),re=di(async U=>{I(!0);try{if(U.preventDefault(),!(U.target instanceof HTMLFormElement))return;const ie=new FormData(U.target),ae=await(l&&T?l.value():void 0),ue={name:xu(ie,"name"),email:xu(ie,"email"),message:xu(ie,"message"),attachments:ae?[ae]:void 0};if(!D(ue))return;try{const Ce=await s({name:ue.name,email:ue.email,message:ue.message,source:VL,tags:d},{attachments:ue.attachments});i(ue,Ce)}catch(Ce){cc&&J.error(Ce),O(Ce),o(Ce)}}finally{I(!1)}},[l&&T,i,o]);return ke("form",{class:"form",onSubmit:re},N&&T?ke(N,{onError:q}):null,ke("fieldset",{class:"form__right","data-sentry-feedback":!0,disabled:C},ke("div",{class:"form__top"},A?ke("div",{class:"form__error-container"},A):null,c?ke("label",{for:"name",class:"form__label"},ke(Ru,{label:S,isRequiredLabel:E,isRequired:g}),ke("input",{class:"form__input",defaultValue:n,id:"name",name:"name",placeholder:M,required:g,type:"text"})):ke("input",{"aria-hidden":!0,value:n,name:"name",type:"hidden"}),a?ke("label",{for:"email",class:"form__label"},ke(Ru,{label:p,isRequiredLabel:E,isRequired:v}),ke("input",{class:"form__input",defaultValue:t,id:"email",name:"email",placeholder:m,required:v,type:"email"})):ke("input",{"aria-hidden":!0,value:t,name:"email",type:"hidden"}),ke("label",{for:"message",class:"form__label"},ke(Ru,{label:y,isRequiredLabel:E,isRequired:!0}),ke("textarea",{autoFocus:!0,class:"form__input form__input--textarea",id:"message",name:"message",placeholder:_,required:!0,rows:5})),N?ke("label",{for:"screenshot",class:"form__label"},ke("button",{class:"btn btn--default",disabled:C,type:"button",onClick:()=>{X(null),P(U=>!U)}},T?f:u),z?ke("div",{class:"form__error-container"},z.message):null):null),ke("div",{class:"btn-group"},ke("button",{class:"btn btn--primary",disabled:C,type:"submit"},R),ke("button",{class:"btn btn--default",disabled:C,type:"button",onClick:r},h))))}function Ru({label:e,isRequired:t,isRequiredLabel:n}){return ke("span",{class:"form__label__text"},e,t&&ke("span",{class:"form__label__text--required"},n))}const Fa=16,bv=17,SN="http://www.w3.org/2000/svg";function EN(){const e=c=>_n.document.createElementNS(SN,c),t=Xt(e("svg"),{width:`${Fa}`,height:`${bv}`,viewBox:`0 0 ${Fa} ${bv}`,fill:"inherit"}),n=Xt(e("g"),{clipPath:"url(#clip0_57_156)"}),r=Xt(e("path"),{"fill-rule":"evenodd","clip-rule":"evenodd",d:"M3.55544 15.1518C4.87103 16.0308 6.41775 16.5 8 16.5C10.1217 16.5 12.1566 15.6571 13.6569 14.1569C15.1571 12.6566 16 10.6217 16 8.5C16 6.91775 15.5308 5.37103 14.6518 4.05544C13.7727 2.73985 12.5233 1.71447 11.0615 1.10897C9.59966 0.503466 7.99113 0.34504 6.43928 0.653721C4.88743 0.962403 3.46197 1.72433 2.34315 2.84315C1.22433 3.96197 0.462403 5.38743 0.153721 6.93928C-0.15496 8.49113 0.00346625 10.0997 0.608967 11.5615C1.21447 13.0233 2.23985 14.2727 3.55544 15.1518ZM4.40546 3.1204C5.46945 2.40946 6.72036 2.03 8 2.03C9.71595 2.03 11.3616 2.71166 12.575 3.92502C13.7883 5.13838 14.47 6.78405 14.47 8.5C14.47 9.77965 14.0905 11.0306 13.3796 12.0945C12.6687 13.1585 11.6582 13.9878 10.476 14.4775C9.29373 14.9672 7.99283 15.0953 6.73777 14.8457C5.48271 14.596 4.32987 13.9798 3.42502 13.075C2.52018 12.1701 1.90397 11.0173 1.65432 9.76224C1.40468 8.50718 1.5328 7.20628 2.0225 6.02404C2.5122 4.8418 3.34148 3.83133 4.40546 3.1204Z"}),s=Xt(e("path"),{d:"M6.68775 12.4297C6.78586 12.4745 6.89218 12.4984 7 12.5C7.11275 12.4955 7.22315 12.4664 7.32337 12.4145C7.4236 12.3627 7.51121 12.2894 7.58 12.2L12 5.63999C12.0848 5.47724 12.1071 5.28902 12.0625 5.11098C12.0178 4.93294 11.9095 4.77744 11.7579 4.67392C11.6064 4.57041 11.4221 4.52608 11.24 4.54931C11.0579 4.57254 10.8907 4.66173 10.77 4.79999L6.88 10.57L5.13 8.56999C5.06508 8.49566 4.98613 8.43488 4.89768 8.39111C4.80922 8.34735 4.713 8.32148 4.61453 8.31498C4.51605 8.30847 4.41727 8.32147 4.32382 8.35322C4.23038 8.38497 4.14413 8.43484 4.07 8.49999C3.92511 8.63217 3.83692 8.81523 3.82387 9.01092C3.81083 9.2066 3.87393 9.39976 4 9.54999L6.43 12.24C6.50187 12.3204 6.58964 12.385 6.68775 12.4297Z"});t.appendChild(n).append(s,r);const i=e("defs"),o=Xt(e("clipPath"),{id:"clip0_57_156"}),a=Xt(e("rect"),{width:`${Fa}`,height:`${Fa}`,fill:"white",transform:"translate(0 0.5)"});return o.appendChild(a),i.appendChild(o),t.appendChild(i).appendChild(o).appendChild(a),t}function wN({open:e,onFormSubmitted:t,...n}){const r=n.options,s=pa(()=>({__html:EN().outerHTML}),[]),[i,o]=us(null),a=di(()=>{i&&(clearTimeout(i),o(null)),t()},[i]),c=di((l,d)=>{n.onSubmitSuccess(l,d),o(setTimeout(()=>{t(),o(null)},WL))},[t]);return ke(ha,null,i?ke("div",{class:"success__position",onClick:a},ke("div",{class:"success__content"},r.successMessageText,ke("span",{class:"success__icon",dangerouslySetInnerHTML:s}))):ke("dialog",{class:"dialog",onClick:r.onFormClose,open:e},ke("div",{class:"dialog__position"},ke("div",{class:"dialog__content",onClick:l=>{l.stopPropagation()}},ke(yN,{options:r}),ke(bN,{...n,onSubmitSuccess:c})))))}const CN=` +.dialog { + position: fixed; + z-index: var(--z-index); + margin: 0; + inset: 0; + + display: flex; + align-items: center; + justify-content: center; + padding: 0; + height: 100vh; + width: 100vw; + + color: var(--dialog-color, var(--foreground)); + fill: var(--dialog-color, var(--foreground)); + line-height: 1.75em; + + background-color: rgba(0, 0, 0, 0.05); + border: none; + inset: 0; + opacity: 1; + transition: opacity 0.2s ease-in-out; +} + +.dialog__position { + position: fixed; + z-index: var(--z-index); + inset: var(--dialog-inset); + padding: var(--page-margin); + display: flex; + max-height: calc(100vh - (2 * var(--page-margin))); +} +@media (max-width: 600px) { + .dialog__position { + inset: var(--page-margin); + padding: 0; + } +} + +.dialog__position:has(.editor) { + inset: var(--page-margin); + padding: 0; +} + +.dialog:not([open]) { + opacity: 0; + pointer-events: none; + visibility: hidden; +} +.dialog:not([open]) .dialog__content { + transform: translate(0, -16px) scale(0.98); +} + +.dialog__content { + display: flex; + flex-direction: column; + gap: 16px; + padding: var(--dialog-padding, 24px); + max-width: 100%; + width: 100%; + max-height: 100%; + overflow: auto; + + background: var(--dialog-background, var(--background)); + border-radius: var(--dialog-border-radius, 20px); + border: var(--dialog-border, var(--border)); + box-shadow: var(--dialog-box-shadow, var(--box-shadow)); + transform: translate(0, 0) scale(1); + transition: transform 0.2s ease-in-out; +} + +`,TN=` +.dialog__header { + display: flex; + gap: 4px; + justify-content: space-between; + font-weight: var(--dialog-header-weight, 600); + margin: 0; +} +.dialog__title { + align-self: center; + width: var(--form-width, 272px); +} + +@media (max-width: 600px) { + .dialog__title { + width: auto; + } +} + +.dialog__position:has(.editor) .dialog__title { + width: auto; +} + + +.brand-link { + display: inline-flex; +} +.brand-link:focus-visible { + outline: var(--outline); +} +`,kN=` +.form { + display: flex; + overflow: auto; + flex-direction: row; + gap: 16px; + flex: 1 0; +} + +.form fieldset { + border: none; + margin: 0; + padding: 0; +} + +.form__right { + flex: 0 0 auto; + display: flex; + overflow: auto; + flex-direction: column; + justify-content: space-between; + gap: 20px; + width: var(--form-width, 100%); +} + +.dialog__position:has(.editor) .form__right { + width: var(--form-width, 272px); +} + +.form__top { + display: flex; + flex-direction: column; + gap: 8px; +} + +.form__error-container { + color: var(--error-color); + fill: var(--error-color); +} + +.form__label { + display: flex; + flex-direction: column; + gap: 4px; + margin: 0px; +} + +.form__label__text { + display: flex; + gap: 4px; + align-items: center; +} + +.form__label__text--required { + font-size: 0.85em; +} + +.form__input { + font-family: inherit; + line-height: inherit; + background: transparent; + box-sizing: border-box; + border: var(--input-border, var(--border)); + border-radius: var(--input-border-radius, 6px); + color: var(--input-color, inherit); + fill: var(--input-color, inherit); + font-size: var(--input-font-size, inherit); + font-weight: var(--input-font-weight, 500); + padding: 6px 12px; +} + +.form__input::placeholder { + opacity: 0.65; + color: var(--input-placeholder-color, inherit); + filter: var(--interactive-filter); +} + +.form__input:focus-visible { + outline: var(--input-focus-outline, var(--outline)); +} + +.form__input--textarea { + font-family: inherit; + resize: vertical; +} + +.error { + color: var(--error-color); + fill: var(--error-color); +} +`,IN=` +.btn-group { + display: grid; + gap: 8px; +} + +.btn { + line-height: inherit; + border: var(--button-border, var(--border)); + border-radius: var(--button-border-radius, 6px); + cursor: pointer; + font-family: inherit; + font-size: var(--button-font-size, inherit); + font-weight: var(--button-font-weight, 600); + padding: var(--button-padding, 6px 16px); +} +.btn[disabled] { + opacity: 0.6; + pointer-events: none; +} + +.btn--primary { + color: var(--button-primary-color, var(--accent-foreground)); + fill: var(--button-primary-color, var(--accent-foreground)); + background: var(--button-primary-background, var(--accent-background)); + border: var(--button-primary-border, var(--border)); + border-radius: var(--button-primary-border-radius, 6px); + font-weight: var(--button-primary-font-weight, 500); +} +.btn--primary:hover { + color: var(--button-primary-hover-color, var(--accent-foreground)); + fill: var(--button-primary-hover-color, var(--accent-foreground)); + background: var(--button-primary-hover-background, var(--accent-background)); + filter: var(--interactive-filter); +} +.btn--primary:focus-visible { + background: var(--button-primary-hover-background, var(--accent-background)); + filter: var(--interactive-filter); + outline: var(--button-primary-focus-outline, var(--outline)); +} + +.btn--default { + color: var(--button-color, var(--foreground)); + fill: var(--button-color, var(--foreground)); + background: var(--button-background, var(--background)); + border: var(--button-border, var(--border)); + border-radius: var(--button-border-radius, 6px); + font-weight: var(--button-font-weight, 500); +} +.btn--default:hover { + color: var(--button-color, var(--foreground)); + fill: var(--button-color, var(--foreground)); + background: var(--button-hover-background, var(--background)); + filter: var(--interactive-filter); +} +.btn--default:focus-visible { + background: var(--button-hover-background, var(--background)); + filter: var(--interactive-filter); + outline: var(--button-focus-outline, var(--outline)); +} +`,xN=` +.success__position { + position: fixed; + inset: var(--dialog-inset); + padding: var(--page-margin); + z-index: var(--z-index); +} +.success__content { + background: var(--success-background, var(--background)); + border: var(--success-border, var(--border)); + border-radius: var(--success-border-radius, 1.7em/50%); + box-shadow: var(--success-box-shadow, var(--box-shadow)); + font-weight: var(--success-font-weight, 600); + color: var(--success-color); + fill: var(--success-color); + padding: 12px 24px; + line-height: 1.75em; + + display: grid; + align-items: center; + grid-auto-flow: column; + gap: 6px; + cursor: default; +} + +.success__icon { + display: flex; +} +`;function RN(e){const t=Ue.createElement("style");return t.textContent=` +:host { + --dialog-inset: var(--inset); +} + +${CN} +${TN} +${kN} +${IN} +${xN} +`,e&&t.setAttribute("nonce",e),t}function AN(){const e=Le().getUser(),t=rn().getUser(),n=VS().getUser();return e&&Object.keys(e).length?e:t&&Object.keys(t).length?t:n}const MN=()=>({name:"FeedbackModal",setupOnce(){},createDialog:({options:e,screenshotIntegration:t,sendFeedback:n,shadow:r})=>{const s=r,i=e.useSentryUser,o=AN(),a=Ue.createElement("div"),c=RN(e.styleNonce);let l="";const d={get el(){return a},appendToDom(){!s.contains(c)&&!s.contains(a)&&(s.appendChild(c),s.appendChild(a))},removeFromDom(){a.remove(),c.remove(),Ue.body.style.overflow=l},open(){var h,p;f(!0),(h=e.onFormOpen)==null||h.call(e),(p=Ee())==null||p.emit("openFeedbackWidget"),l=Ue.body.style.overflow,Ue.body.style.overflow="hidden"},close(){f(!1),Ue.body.style.overflow=l}},u=t==null?void 0:t.createInput({h:ke,hooks:mN,dialog:d,options:e}),f=h=>{iN(ke(wN,{options:e,screenshotInput:u,showName:e.showName||e.isNameRequired,showEmail:e.showEmail||e.isEmailRequired,defaultName:String(i&&(o==null?void 0:o[i.name])||""),defaultEmail:String(i&&(o==null?void 0:o[i.email])||""),onFormClose:()=>{var p;f(!1),(p=e.onFormClose)==null||p.call(e)},onSubmit:n,onSubmitSuccess:(p,m)=>{var v;f(!1),(v=e.onSubmitSuccess)==null||v.call(e,p,m)},onSubmitError:p=>{var m;(m=e.onSubmitError)==null||m.call(e,p)},onFormSubmitted:()=>{var p;(p=e.onFormSubmitted)==null||p.call(e)},open:h}),a)};return d}});function PN({h:e}){return function(){return e("svg",{"data-test-id":"icon-close",viewBox:"0 0 16 16",fill:"#2B2233",height:"25px",width:"25px"},e("circle",{r:"7",cx:"8",cy:"8",fill:"white"}),e("path",{strokeWidth:"1.5",d:"M8,16a8,8,0,1,1,8-8A8,8,0,0,1,8,16ZM8,1.53A6.47,6.47,0,1,0,14.47,8,6.47,6.47,0,0,0,8,1.53Z"}),e("path",{strokeWidth:"1.5",d:"M5.34,11.41a.71.71,0,0,1-.53-.22.74.74,0,0,1,0-1.06l5.32-5.32a.75.75,0,0,1,1.06,1.06L5.87,11.19A.74.74,0,0,1,5.34,11.41Z"}),e("path",{strokeWidth:"1.5",d:"M10.66,11.41a.74.74,0,0,1-.53-.22L4.81,5.87A.75.75,0,0,1,5.87,4.81l5.32,5.32a.74.74,0,0,1,0,1.06A.71.71,0,0,1,10.66,11.41Z"}))}}function ON(e){const t=Ue.createElement("style"),n="#1A141F",r="#302735";return t.textContent=` +.editor { + display: flex; + flex-grow: 1; + flex-direction: column; +} + +.editor__image-container { + justify-items: center; + padding: 15px; + position: relative; + height: 100%; + border-radius: var(--menu-border-radius, 6px); + + background-color: ${n}; + background-image: repeating-linear-gradient( + -145deg, + transparent, + transparent 8px, + ${n} 8px, + ${n} 11px + ), + repeating-linear-gradient( + -45deg, + transparent, + transparent 15px, + ${r} 15px, + ${r} 16px + ); +} + +.editor__canvas-container { + width: 100%; + height: 100%; + position: relative; + display: flex; + align-items: center; + justify-content: center; +} + +.editor__canvas-container > * { + object-fit: contain; + position: absolute; +} + +.editor__tool-container { + padding-top: 8px; + display: flex; + justify-content: center; +} + +.editor__tool-bar { + display: flex; + gap: 8px; +} + +.editor__tool { + display: flex; + padding: 8px 12px; + justify-content: center; + align-items: center; + border: var(--button-border, var(--border)); + border-radius: var(--button-border-radius, 6px); + background: var(--button-background, var(--background)); + color: var(--button-color, var(--foreground)); +} + +.editor__tool--active { + background: var(--button-primary-background, var(--accent-background)); + color: var(--button-primary-color, var(--accent-foreground)); +} + +.editor__rect { + position: absolute; + z-index: 2; +} + +.editor__rect button { + opacity: 0; + position: absolute; + top: -12px; + right: -12px; + cursor: pointer; + padding: 0; + z-index: 3; + border: none; + background: none; +} + +.editor__rect:hover button { + opacity: 1; +} +`,e&&t.setAttribute("nonce",e),t}function LN({h:e}){return function({action:n,setAction:r,options:s}){return e("div",{class:"editor__tool-container"},e("div",{class:"editor__tool-bar"},e("button",{type:"button",class:`editor__tool ${n==="highlight"?"editor__tool--active":""}`,onClick:()=>{r(n==="highlight"?"":"highlight")}},s.highlightToolText),e("button",{type:"button",class:`editor__tool ${n==="hide"?"editor__tool--active":""}`,onClick:()=>{r(n==="hide"?"":"hide")}},s.hideToolText)))}}function NN({hooks:e}){function t(){const[n,r]=e.useState(_n.devicePixelRatio??1);return e.useEffect(()=>{const s=()=>{r(_n.devicePixelRatio)},i=matchMedia(`(resolution: ${_n.devicePixelRatio}dppx)`);return i.addEventListener("change",s),()=>{i.removeEventListener("change",s)}},[]),n}return function({onBeforeScreenshot:r,onScreenshot:s,onAfterScreenshot:i,onError:o}){const a=t();e.useEffect(()=>{(async()=>{r();const l=await co.mediaDevices.getDisplayMedia({video:{width:_n.innerWidth*a,height:_n.innerHeight*a},audio:!1,monitorTypeSurfaces:"exclude",preferCurrentTab:!0,selfBrowserSurface:"include",surfaceSwitching:"exclude"}),d=Ue.createElement("video");await new Promise((u,f)=>{d.srcObject=l,d.onloadedmetadata=()=>{s(d,a),l.getTracks().forEach(h=>h.stop()),u()},d.play().catch(f)}),i()})().catch(o)},[])}}function DN(e,t,n){switch(e.type){case"highlight":{t.shadowColor="rgba(0, 0, 0, 0.7)",t.shadowBlur=50,t.fillStyle=n,t.fillRect(e.x-1,e.y-1,e.w+2,e.h+2),t.clearRect(e.x,e.y,e.w,e.h);break}case"hide":t.fillStyle="rgb(0, 0, 0)",t.fillRect(e.x,e.y,e.w,e.h);break}}function xr(e,t,n){if(!e)return;const r=e.getContext("2d",t);r&&n(e,r)}function Au(e,t){xr(e,{alpha:!0},(n,r)=>{r.drawImage(t,0,0,t.width,t.height,0,0,n.width,n.height)})}function Mu(e,t,n){xr(e,{alpha:!0},(r,s)=>{n.length&&(s.fillStyle="rgba(0, 0, 0, 0.25)",s.fillRect(0,0,r.width,r.height)),n.forEach(i=>{DN(i,s,t)})})}function FN({h:e,hooks:t,outputBuffer:n,dialog:r,options:s}){const i=NN({hooks:t}),o=LN({h:e}),a=PN({h:e}),c={__html:ON(s.styleNonce).innerText},l=r.el.style,d=({screenshot:u})=>{const[f,h]=t.useState("highlight"),[p,m]=t.useState([]),v=t.useRef(null),g=t.useRef(null),y=t.useRef(null),_=t.useRef(null),[S,M]=t.useState(1),R=t.useMemo(()=>{const T=Ue.getElementById(s.id);if(!T)return"white";const P=getComputedStyle(T);return P.getPropertyValue("--button-primary-background")||P.getPropertyValue("--accent-background")},[s.id]);t.useLayoutEffect(()=>{const T=()=>{const P=v.current;P&&(xr(u.canvas,{alpha:!1},N=>{const z=Math.min(P.clientWidth/N.width,P.clientHeight/N.height);M(z)}),(P.clientHeight===0||P.clientWidth===0)&&setTimeout(T,0))};return T(),_n.addEventListener("resize",T),()=>{_n.removeEventListener("resize",T)}},[u]);const E=t.useCallback((T,P)=>{xr(T,{alpha:!0},(N,z)=>{z.scale(P,P),N.width=u.canvas.width,N.height=u.canvas.height})},[u]);t.useEffect(()=>{E(g.current,u.dpi),Au(g.current,u.canvas)},[u]),t.useEffect(()=>{E(y.current,u.dpi),xr(y.current,{alpha:!0},(T,P)=>{P.clearRect(0,0,T.width,T.height)}),Mu(y.current,R,p)},[p,R]),t.useEffect(()=>{E(n,u.dpi),Au(n,u.canvas),xr(Ue.createElement("canvas"),{alpha:!0},(T,P)=>{P.scale(u.dpi,u.dpi),T.width=u.canvas.width,T.height=u.canvas.height,Mu(T,R,p),Au(n,T)})},[p,u,R]);const C=T=>{if(!f||!_.current)return;const P=_.current.getBoundingClientRect(),N={type:f,x:T.offsetX/S,y:T.offsetY/S},z=(D,re)=>{const U=(re.clientX-P.x)/S,ie=(re.clientY-P.y)/S;return{type:D.type,x:Math.min(D.x,U),y:Math.min(D.y,ie),w:Math.abs(U-D.x),h:Math.abs(ie-D.y)}},X=D=>{xr(y.current,{alpha:!0},(re,U)=>{U.clearRect(0,0,re.width,re.height)}),Mu(y.current,R,[...p,z(N,D)])},q=D=>{const re=z(N,D);re.w*S>=1&&re.h*S>=1&&m(U=>[...U,re]),Ue.removeEventListener("mousemove",X),Ue.removeEventListener("mouseup",q)};Ue.addEventListener("mousemove",X),Ue.addEventListener("mouseup",q)},I=t.useCallback(T=>P=>{P.preventDefault(),P.stopPropagation(),m(N=>{const z=[...N];return z.splice(T,1),z})},[]),A={width:`${u.canvas.width*S}px`,height:`${u.canvas.height*S}px`},O=T=>{T.stopPropagation()};return e("div",{class:"editor"},e("style",{nonce:s.styleNonce,dangerouslySetInnerHTML:c}),e("div",{class:"editor__image-container"},e("div",{class:"editor__canvas-container",ref:v},e("canvas",{ref:g,id:"background",style:A}),e("canvas",{ref:y,id:"foreground",style:A}),e("div",{ref:_,onMouseDown:C,style:A},p.map((T,P)=>e("div",{key:P,class:"editor__rect",style:{top:`${T.y*S}px`,left:`${T.x*S}px`,width:`${T.w*S}px`,height:`${T.h*S}px`}},e("button",{"aria-label":s.removeHighlightText,onClick:I(P),onMouseDown:O,onMouseUp:O,type:"button"},e(a,null))))))),e(o,{options:s,action:f,setAction:h}))};return function({onError:f}){const[h,p]=t.useState();return i({onBeforeScreenshot:t.useCallback(()=>{l.display="none"},[]),onScreenshot:t.useCallback((m,v)=>{xr(Ue.createElement("canvas"),{alpha:!1},(g,y)=>{y.scale(v,v),g.width=m.videoWidth,g.height=m.videoHeight,y.drawImage(m,0,0,g.width,g.height),p({canvas:g,dpi:v})}),n.width=m.videoWidth,n.height=m.videoHeight},[]),onAfterScreenshot:t.useCallback(()=>{l.display="block"},[]),onError:t.useCallback(m=>{l.display="block",f(m)},[])}),h?e(d,{screenshot:h}):e("div",null)}}const $N=()=>({name:"FeedbackScreenshot",setupOnce(){},createInput:({h:e,hooks:t,dialog:n,options:r})=>{const s=Ue.createElement("canvas");return{input:FN({h:e,hooks:t,outputBuffer:s,dialog:n,options:r}),value:async()=>{const i=await new Promise(o=>{s.toBlob(o,"image/png")});if(i)return{data:new Uint8Array(await i.arrayBuffer()),filename:"screenshot.png",contentType:"application/png"}}}}}),Pe=xe;let Ud=0;function K0(){return Ud>0}function BN(){Ud++,setTimeout(()=>{Ud--})}function Ri(e,t={}){function n(s){return typeof s=="function"}if(!n(e))return e;try{const s=e.__sentry_wrapped__;if(s)return typeof s=="function"?s:e;if(ch(e))return e}catch{return e}const r=function(...s){try{const i=s.map(o=>Ri(o,t));return e.apply(this,i)}catch(i){throw BN(),Rl(o=>{o.addEventProcessor(a=>(t.mechanism&&(Id(a,void 0),wi(a,t.mechanism)),a.extra={...a.extra,arguments:s},a)),Pl(i)}),i}};try{for(const s in e)Object.prototype.hasOwnProperty.call(e,s)&&(r[s]=e[s])}catch{}FS(r,e),qt(e,"__sentry_wrapped__",r);try{Object.getOwnPropertyDescriptor(r,"name").configurable&&Object.defineProperty(r,"name",{get(){return e.name}})}catch{}return r}function xh(){const e=Ls(),{referrer:t}=Pe.document||{},{userAgent:n}=Pe.navigator||{},r={...t&&{Referer:t},...n&&{"User-Agent":n}};return{url:e,headers:r}}const HN=ZL({getModalIntegration:()=>MN,getScreenshotIntegration:()=>$N});function Rh(e,t){const n=Ah(e,t),r={type:zN(t),value:qN(t)};return n.length&&(r.stacktrace={frames:n}),r.type===void 0&&r.value===""&&(r.value="Unrecoverable error caught"),r}function VN(e,t,n,r){const s=Ee(),i=s==null?void 0:s.getOptions().normalizeDepth,o=JN(t),a={__serialized__:s0(t,i)};if(o)return{exception:{values:[Rh(e,o)]},extra:a};const c={exception:{values:[{type:xl(t)?t.constructor.name:r?"UnhandledRejection":"Error",value:YN(t,{isUnhandledRejection:r})}]},extra:a};if(n){const l=Ah(e,n);l.length&&(c.exception.values[0].stacktrace={frames:l})}return c}function Pu(e,t){return{exception:{values:[Rh(e,t)]}}}function Ah(e,t){const n=t.stacktrace||t.stack||"",r=WN(t),s=jN(t);try{return e(n,r,s)}catch{}return[]}const UN=/Minified React error #\d+;/i;function WN(e){return e&&UN.test(e.message)?1:0}function jN(e){return typeof e.framesToPop=="number"?e.framesToPop:0}function Y0(e){return typeof WebAssembly<"u"&&typeof WebAssembly.Exception<"u"?e instanceof WebAssembly.Exception:!1}function zN(e){const t=e==null?void 0:e.name;return!t&&Y0(e)?e.message&&Array.isArray(e.message)&&e.message.length==2?e.message[0]:"WebAssembly.Exception":t}function qN(e){const t=e==null?void 0:e.message;return Y0(e)?Array.isArray(e.message)&&e.message.length==2?e.message[1]:"wasm exception":t?t.error&&typeof t.error.message=="string"?Yg(t.error):Yg(e):"No error message"}function GN(e,t,n,r){const s=(n==null?void 0:n.syntheticException)||void 0,i=Mh(e,t,s,r);return wi(i),i.level="error",n!=null&&n.event_id&&(i.event_id=n.event_id),Ml(i)}function KN(e,t,n="info",r,s){const i=(r==null?void 0:r.syntheticException)||void 0,o=Wd(e,t,i,s);return o.level=n,r!=null&&r.event_id&&(o.event_id=r.event_id),Ml(o)}function Mh(e,t,n,r,s){let i;if(LS(t)&&t.error)return Pu(e,t.error);if(hg(t)||qA(t)){const o=t;if("stack"in t)i=Pu(e,t);else{const a=o.name||(hg(o)?"DOMError":"DOMException"),c=o.message?`${a}: ${o.message}`:a;i=Wd(e,c,n,r),Id(i,c)}return"code"in o&&(i.tags={...i.tags,"DOMException.code":`${o.code}`}),i}return Il(t)?Pu(e,t):Wo(t)||xl(t)?(i=VN(e,t,n,s),wi(i,{synthetic:!0}),i):(i=Wd(e,t,n,r),Id(i,`${t}`),wi(i,{synthetic:!0}),i)}function Wd(e,t,n,r){const s={};if(r&&n){const i=Ah(e,n);i.length&&(s.exception={values:[{value:t,stacktrace:{frames:i}}]}),wi(s,{synthetic:!0})}if(ih(t)){const{__sentry_template_string__:i,__sentry_template_values__:o}=t;return s.logentry={message:i,params:o},s}return s.message=t,s}function YN(e,{isUnhandledRejection:t}){const n=ZA(e),r=t?"promise rejection":"exception";return LS(e)?`Event \`ErrorEvent\` captured as ${r} with message \`${e.message}\``:xl(e)?`Event \`${XN(e)}\` (type=${e.type}) captured as ${r}`:`Object captured as ${r} with keys: ${n}`}function XN(e){try{const t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{}}function JN(e){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t)){const n=e[t];if(n instanceof Error)return n}}class ZN extends vO{constructor(t){var d;const n=QN(t),r=Pe.SENTRY_SDK_SOURCE||SL();x0(n,"browser",["browser"],r),(d=n._metadata)!=null&&d.sdk&&(n._metadata.sdk.settings={infer_ip:n.sendDefaultPii?"auto":"never",...n._metadata.sdk.settings}),super(n);const{sendDefaultPii:s,sendClientReports:i,enableLogs:o,_experiments:a,enableMetrics:c}=this._options,l=c??(a==null?void 0:a.enableMetrics)??!0;Pe.document&&(i||o||l)&&Pe.document.addEventListener("visibilitychange",()=>{Pe.document.visibilityState==="hidden"&&(i&&this._flushOutcomes(),o&&g0(this),l&&y0(this))}),s&&this.on("beforeSendSession",MO)}eventFromException(t,n){return GN(this._options.stackParser,t,n,this._options.attachStacktrace)}eventFromMessage(t,n="info",r){return KN(this._options.stackParser,t,n,r,this._options.attachStacktrace)}_prepareEvent(t,n,r,s){return t.platform=t.platform||"javascript",super._prepareEvent(t,n,r,s)}}function QN(e){var t;return{release:typeof __SENTRY_RELEASE__=="string"?__SENTRY_RELEASE__:(t=Pe.SENTRY_RELEASE)==null?void 0:t.id,sendClientReports:!0,parentSpanIsAlwaysRootSpan:!0,...e}}const xs=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,ge=xe,eD=(e,t)=>e>t[1]?"poor":e>t[0]?"needs-improvement":"good",ma=(e,t,n,r)=>{let s,i;return o=>{t.value>=0&&(o||r)&&(i=t.value-(s??0),(i||s===void 0)&&(s=t.value,t.delta=i,t.rating=eD(t.value,n),e(t)))}},ga=(e=!0)=>{var n,r;const t=(r=(n=ge.performance)==null?void 0:n.getEntriesByType)==null?void 0:r.call(n,"navigation")[0];if(!e||t&&t.responseStart>0&&t.responseStart{const e=ga();return(e==null?void 0:e.activationStart)??0};function Nr(e,t,n){ge.document&&ge.addEventListener(e,t,n)}function zc(e,t,n){ge.document&&ge.removeEventListener(e,t,n)}let fi=-1;const X0=new Set,tD=()=>{var e,t;return((e=ge.document)==null?void 0:e.visibilityState)==="hidden"&&!((t=ge.document)!=null&&t.prerendering)?0:1/0},hc=e=>{if(nD(e)&&fi>-1){if(e.type==="visibilitychange"||e.type==="pagehide")for(const t of X0)t();isFinite(fi)||(fi=e.type==="visibilitychange"?e.timeStamp:0,zc("prerenderingchange",hc,!0))}},va=()=>{var e;if(ge.document&&fi<0){const t=Ki();fi=(ge.document.prerendering||(e=globalThis.performance.getEntriesByType("visibility-state").filter(r=>r.name==="hidden"&&r.startTime>t)[0])==null?void 0:e.startTime)??tD(),Nr("visibilitychange",hc,!0),Nr("pagehide",hc,!0),Nr("prerenderingchange",hc,!0)}return{get firstHiddenTime(){return fi},onHidden(t){X0.add(t)}}};function nD(e){var t;return e.type==="pagehide"||((t=ge.document)==null?void 0:t.visibilityState)==="hidden"}const rD=()=>`v5-${Date.now()}-${Math.floor(Math.random()*(9e12-1))+1e12}`,ya=(e,t=-1)=>{var i,o;const n=ga();let r="navigate";return n&&((i=ge.document)!=null&&i.prerendering||Ki()>0?r="prerender":(o=ge.document)!=null&&o.wasDiscarded?r="restore":n.type&&(r=n.type.replace(/_/g,"-"))),{name:e,value:t,rating:"good",delta:0,entries:[],id:rD(),navigationType:r}},Ou=new WeakMap;function Ph(e,t){try{return Ou.get(e)||Ou.set(e,new t),Ou.get(e)}catch{return new t}}class qc{constructor(){qc.prototype.__init.call(this),qc.prototype.__init2.call(this)}__init(){this._sessionValue=0}__init2(){this._sessionEntries=[]}_processEntry(t){var s;if(t.hadRecentInput)return;const n=this._sessionEntries[0],r=this._sessionEntries[this._sessionEntries.length-1];this._sessionValue&&n&&r&&t.startTime-r.startTime<1e3&&t.startTime-n.startTime<5e3?(this._sessionValue+=t.value,this._sessionEntries.push(t)):(this._sessionValue=t.value,this._sessionEntries=[t]),(s=this._onAfterProcessingUnexpectedShift)==null||s.call(this,t)}}const Yi=(e,t,n={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(e)){const r=new PerformanceObserver(s=>{Promise.resolve().then(()=>{t(s.getEntries())})});return r.observe({type:e,buffered:!0,...n}),r}}catch{}},Oh=e=>{let t=!1;return()=>{t||(e(),t=!0)}},Ll=e=>{var t;(t=ge.document)!=null&&t.prerendering?addEventListener("prerenderingchange",()=>e(),!0):e()},sD=[1800,3e3],iD=(e,t={})=>{Ll(()=>{const n=va(),r=ya("FCP");let s;const o=Yi("paint",a=>{for(const c of a)c.name==="first-contentful-paint"&&(o.disconnect(),c.startTime{iD(Oh(()=>{var c;const n=ya("CLS",0);let r;const s=va(),i=Ph(t,qc),o=l=>{for(const d of l)i._processEntry(d);i._sessionValue>n.value&&(n.value=i._sessionValue,n.entries=i._sessionEntries,r())},a=Yi("layout-shift",o);a&&(r=ma(e,n,oD,t.reportAllChanges),s.onHidden(()=>{o(a.takeRecords()),r(!0)}),(c=ge==null?void 0:ge.setTimeout)==null||c.call(ge,r))}))};let J0=0,Lu=1/0,$a=0;const cD=e=>{e.forEach(t=>{t.interactionId&&(Lu=Math.min(Lu,t.interactionId),$a=Math.max($a,t.interactionId),J0=$a?($a-Lu)/7+1:0)})};let jd;const Z0=()=>jd?J0:performance.interactionCount||0,lD=()=>{"interactionCount"in performance||jd||(jd=Yi("event",cD,{type:"event",buffered:!0,durationThreshold:0}))},Nu=10;let Q0=0;const uD=()=>Z0()-Q0;class Gc{constructor(){Gc.prototype.__init.call(this),Gc.prototype.__init2.call(this)}__init(){this._longestInteractionList=[]}__init2(){this._longestInteractionMap=new Map}_resetInteractions(){Q0=Z0(),this._longestInteractionList.length=0,this._longestInteractionMap.clear()}_estimateP98LongestInteraction(){const t=Math.min(this._longestInteractionList.length-1,Math.floor(uD()/50));return this._longestInteractionList[t]}_processEntry(t){var s,i;if((s=this._onBeforeProcessingEntry)==null||s.call(this,t),!(t.interactionId||t.entryType==="first-input"))return;const n=this._longestInteractionList.at(-1);let r=this._longestInteractionMap.get(t.interactionId);if(r||this._longestInteractionList.lengthn._latency){if(r?t.duration>r._latency?(r.entries=[t],r._latency=t.duration):t.duration===r._latency&&t.startTime===r.entries[0].startTime&&r.entries.push(t):(r={id:t.interactionId,entries:[t],_latency:t.duration},this._longestInteractionMap.set(r.id,r),this._longestInteractionList.push(r)),this._longestInteractionList.sort((o,a)=>a._latency-o._latency),this._longestInteractionList.length>Nu){const o=this._longestInteractionList.splice(Nu);for(const a of o)this._longestInteractionMap.delete(a.id)}(i=this._onAfterProcessingINPCandidate)==null||i.call(this,r)}}}const eE=e=>{var n;const t=ge.requestIdleCallback||ge.setTimeout;((n=ge.document)==null?void 0:n.visibilityState)==="hidden"?e():(e=Oh(e),Nr("visibilitychange",e,{once:!0,capture:!0}),Nr("pagehide",e,{once:!0,capture:!0}),t(()=>{e(),zc("visibilitychange",e,{capture:!0}),zc("pagehide",e,{capture:!0})}))},dD=[200,500],fD=40,hD=(e,t={})=>{if(!(globalThis.PerformanceEventTiming&&"interactionId"in PerformanceEventTiming.prototype))return;const n=va();Ll(()=>{lD();const r=ya("INP");let s;const i=Ph(t,Gc),o=c=>{eE(()=>{for(const d of c)i._processEntry(d);const l=i._estimateP98LongestInteraction();l&&l._latency!==r.value&&(r.value=l._latency,r.entries=l.entries,s())})},a=Yi("event",o,{durationThreshold:t.durationThreshold??fD});s=ma(e,r,dD,t.reportAllChanges),a&&(a.observe({type:"first-input",buffered:!0}),n.onHidden(()=>{o(a.takeRecords()),s(!0)}))})};class pD{_processEntry(t){var n;(n=this._onBeforeProcessingEntry)==null||n.call(this,t)}}const mD=[2500,4e3],gD=(e,t={})=>{Ll(()=>{const n=va(),r=ya("LCP");let s;const i=Ph(t,pD),o=c=>{t.reportAllChanges||(c=c.slice(-1));for(const l of c)i._processEntry(l),l.startTime{o(a.takeRecords()),a.disconnect(),s(!0)}),l=d=>{d.isTrusted&&(eE(c),zc(d.type,l,{capture:!0}))};for(const d of["keydown","click","visibilitychange"])Nr(d,l,{capture:!0})}})},vD=[800,1800],zd=e=>{var t,n;(t=ge.document)!=null&&t.prerendering?Ll(()=>zd(e)):((n=ge.document)==null?void 0:n.readyState)!=="complete"?addEventListener("load",()=>zd(e),!0):setTimeout(e)},yD=(e,t={})=>{const n=ya("TTFB"),r=ma(e,n,vD,t.reportAllChanges);zd(()=>{const s=ga();s&&(n.value=Math.max(s.responseStart-Ki(),0),n.entries=[s],r(!0))})},Eo={},Kc={};let tE,nE,rE,sE;function Lh(e,t=!1){return Nl("cls",e,bD,tE,t)}function Nh(e,t=!1){return Nl("lcp",e,SD,nE,t)}function _D(e){return Nl("ttfb",e,ED,rE)}function iE(e){return Nl("inp",e,wD,sE)}function Rs(e,t){return oE(e,t),Kc[e]||(CD(e),Kc[e]=!0),aE(e,t)}function _a(e,t){const n=Eo[e];if(n!=null&&n.length)for(const r of n)try{r(t)}catch(s){xs&&J.error(`Error while triggering instrumentation handler. +Type: ${e} +Name: ${ar(r)} +Error:`,s)}}function bD(){return aD(e=>{_a("cls",{metric:e}),tE=e},{reportAllChanges:!0})}function SD(){return gD(e=>{_a("lcp",{metric:e}),nE=e},{reportAllChanges:!0})}function ED(){return yD(e=>{_a("ttfb",{metric:e}),rE=e})}function wD(){return hD(e=>{_a("inp",{metric:e}),sE=e})}function Nl(e,t,n,r,s=!1){oE(e,t);let i;return Kc[e]||(i=n(),Kc[e]=!0),r&&t({metric:r}),aE(e,t,s?i:void 0)}function CD(e){const t={};e==="event"&&(t.durationThreshold=0),Yi(e,n=>{_a(e,{entries:n})},t)}function oE(e,t){Eo[e]=Eo[e]||[],Eo[e].push(t)}function aE(e,t,n){return()=>{n&&n();const r=Eo[e];if(!r)return;const s=r.indexOf(t);s!==-1&&r.splice(s,1)}}function TD(e){return"duration"in e}const kD=e=>{const t=n=>{var r;(n.type==="pagehide"||((r=ge.document)==null?void 0:r.visibilityState)==="hidden")&&e(n)};Nr("visibilitychange",t,{capture:!0,once:!0}),Nr("pagehide",t,{capture:!0,once:!0})};function Du(e){return typeof e=="number"&&isFinite(e)}function Ur(e,t,n,{...r}){const s=Re(e).start_timestamp;return s&&s>t&&typeof e.updateStartTime=="function"&&e.updateStartTime(t),gh(e,()=>{const i=Hr({startTime:t,...r});return i&&i.end(n),i})}function Dh(e){var v;const t=Ee();if(!t)return;const{name:n,transaction:r,attributes:s,startTime:i}=e,{release:o,environment:a,sendDefaultPii:c}=t.getOptions(),l=t.getIntegrationByName("Replay"),d=l==null?void 0:l.getReplayId(),u=Le(),f=u.getUser(),h=f!==void 0?f.email||f.id||f.ip_address:void 0;let p;try{p=u.getScopeData().contexts.profile.profile_id}catch{}const m={release:o,environment:a,user:h||void 0,profile_id:p||void 0,replay_id:d||void 0,transaction:r,"user_agent.original":(v=ge.navigator)==null?void 0:v.userAgent,"client.address":c?"{{auto}}":void 0,...s};return Hr({name:n,attributes:m,startTime:i,experimental:{standalone:!0}})}function ba(){return ge.addEventListener&&ge.performance}function at(e){return e/1e3}function ID(e){let t="unknown",n="unknown",r="";for(const s of e){if(s==="/"){[t,n]=e.split("/");break}if(!isNaN(Number(s))){t=r==="h"?"http":r,n=e.split(r)[1];break}r+=s}return r===e&&(t=r),{name:t,version:n}}function cE(e){try{return PerformanceObserver.supportedEntryTypes.includes(e)}catch{return!1}}function lE(e,t){let n,r=!1;function s(a){!r&&n&&t(a,n),r=!0}kD(()=>{s("pagehide")});const i=e.on("beforeStartNavigationSpan",(a,c)=>{c!=null&&c.isRedirect||(s("navigation"),i(),o())}),o=e.on("afterStartPageLoadSpan",a=>{n=a.spanContext().spanId,o()})}function xD(e){let t=0,n;if(!cE("layout-shift"))return;const r=Lh(({metric:s})=>{const i=s.entries[s.entries.length-1];i&&(t=s.value,n=i)},!0);lE(e,(s,i)=>{RD(t,n,i,s),r()})}function RD(e,t,n,r){var l;xs&&J.log(`Sending CLS span (${e})`);const s=t?at((Gt()||0)+t.startTime):lt(),i=Le().getScopeData().transactionName,o=t?zt((l=t.sources[0])==null?void 0:l.node):"Layout shift",a={[st]:"auto.http.browser.cls",[ur]:"ui.webvital.cls",[qi]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t!=null&&t.sources&&t.sources.forEach((d,u)=>{a[`cls.source.${u+1}`]=zt(d.node)});const c=Dh({name:o,transaction:i,attributes:a,startTime:s});c&&(c.addEvent("cls",{[da]:"",[fa]:e}),c.end(s))}function AD(e){let t=0,n;if(!cE("largest-contentful-paint"))return;const r=Nh(({metric:s})=>{const i=s.entries[s.entries.length-1];i&&(t=s.value,n=i)},!0);lE(e,(s,i)=>{MD(t,n,i,s),r()})}function MD(e,t,n,r){xs&&J.log(`Sending LCP span (${e})`);const s=at((Gt()||0)+((t==null?void 0:t.startTime)||0)),i=Le().getScopeData().transactionName,o=t?zt(t.element):"Largest contentful paint",a={[st]:"auto.http.browser.lcp",[ur]:"ui.webvital.lcp",[qi]:0,"sentry.pageload.span_id":n,"sentry.report_event":r};t&&(t.element&&(a["lcp.element"]=zt(t.element)),t.id&&(a["lcp.id"]=t.id),t.url&&(a["lcp.url"]=t.url),t.loadTime!=null&&(a["lcp.loadTime"]=t.loadTime),t.renderTime!=null&&(a["lcp.renderTime"]=t.renderTime),t.size!=null&&(a["lcp.size"]=t.size));const c=Dh({name:o,transaction:i,attributes:a,startTime:s});c&&(c.addEvent("lcp",{[da]:"millisecond",[fa]:e}),c.end(s))}function on(e){return e&&((Gt()||performance.timeOrigin)+e)/1e3}function uE(e){var n;const t={};if(e.nextHopProtocol!=null){const{name:r,version:s}=ID(e.nextHopProtocol);t["network.protocol.version"]=s,t["network.protocol.name"]=r}return Gt()||(n=ba())!=null&&n.timeOrigin?PD({...t,"http.request.redirect_start":on(e.redirectStart),"http.request.redirect_end":on(e.redirectEnd),"http.request.worker_start":on(e.workerStart),"http.request.fetch_start":on(e.fetchStart),"http.request.domain_lookup_start":on(e.domainLookupStart),"http.request.domain_lookup_end":on(e.domainLookupEnd),"http.request.connect_start":on(e.connectStart),"http.request.secure_connection_start":on(e.secureConnectionStart),"http.request.connection_end":on(e.connectEnd),"http.request.request_start":on(e.requestStart),"http.request.response_start":on(e.responseStart),"http.request.response_end":on(e.responseEnd),"http.request.time_to_first_byte":e.responseStart!=null?e.responseStart/1e3:void 0}):t}function PD(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!=null))}const OD=2147483647;let Sv=0,yn={},Vt,ei;function LD({recordClsStandaloneSpans:e,recordLcpStandaloneSpans:t,client:n}){const r=ba();if(r&&Gt()){r.mark&&ge.performance.mark("sentry-tracing-init");const s=t?AD(n):BD(),i=HD(),o=e?xD(n):$D();return()=>{s==null||s(),i(),o==null||o()}}return()=>{}}function ND(){Rs("longtask",({entries:e})=>{const t=Tt();if(!t)return;const{op:n,start_timestamp:r}=Re(t);for(const s of e){const i=at(Gt()+s.startTime),o=at(s.duration);n==="navigation"&&r&&i{const n=Tt();if(n)for(const r of t.getEntries()){if(!r.scripts[0])continue;const s=at(Gt()+r.startTime),{start_timestamp:i,op:o}=Re(n);if(o==="navigation"&&i&&s{const t=Tt();if(t){for(const n of e)if(n.name==="click"){const r=at(Gt()+n.startTime),s=at(n.duration),i={name:zt(n.target),op:`ui.interaction.${n.name}`,startTime:r,attributes:{[st]:"auto.ui.browser.metrics"}},o=DS(n.target);o&&(i.attributes["ui.component_name"]=o),Ur(t,r,r+s,i)}}})}function $D(){return Lh(({metric:e})=>{const t=e.entries[e.entries.length-1];t&&(yn.cls={value:e.value,unit:""},ei=t)},!0)}function BD(){return Nh(({metric:e})=>{const t=e.entries[e.entries.length-1];t&&(yn.lcp={value:e.value,unit:"millisecond"},Vt=t)},!0)}function HD(){return _D(({metric:e})=>{e.entries[e.entries.length-1]&&(yn.ttfb={value:e.value,unit:"millisecond"})})}function VD(e,t){const n=ba(),r=Gt();if(!(n!=null&&n.getEntries)||!r)return;const s=at(r),i=n.getEntries(),{op:o,start_timestamp:a}=Re(e);i.slice(Sv).forEach(c=>{const l=at(c.startTime),d=at(Math.max(0,c.duration));if(!(o==="navigation"&&a&&s+l{dP(c,l.value,l.unit)}),e.setAttribute("performance.timeOrigin",s),e.setAttribute("performance.activationStart",Ki()),XD(e,t)),Vt=void 0,ei=void 0,yn={}}function UD(e){if((e==null?void 0:e.entryType)==="measure")try{return e.detail.devtools.track==="Components ⚛"}catch{return}}function WD(e,t,n,r,s,i){if(UD(t)||["mark","measure"].includes(t.entryType)&&er(t.name,i))return;const o=ga(!1),a=at(o?o.requestStart:0),c=s+Math.max(n,a),l=s+n,d=l+r,u={[st]:"auto.resource.browser.metrics"};c!==l&&(u["sentry.browser.measure_happened_before_request"]=!0,u["sentry.browser.measure_start_time"]=c),jD(u,t),c<=d&&Ur(e,c,d,{name:t.name,op:t.entryType,attributes:u})}function jD(e,t){try{const n=t.detail;if(!n)return;if(typeof n=="object"){for(const[r,s]of Object.entries(n))if(s&&Ei(s))e[`sentry.browser.measure.detail.${r}`]=s;else if(s!==void 0)try{e[`sentry.browser.measure.detail.${r}`]=JSON.stringify(s)}catch{}return}if(Ei(n)){e["sentry.browser.measure.detail"]=n;return}try{e["sentry.browser.measure.detail"]=JSON.stringify(n)}catch{}}catch{}}function zD(e,t,n){["unloadEvent","redirect","domContentLoadedEvent","loadEvent","connect"].forEach(r=>{Ba(e,t,r,n)}),Ba(e,t,"secureConnection",n,"TLS/SSL"),Ba(e,t,"fetch",n,"cache"),Ba(e,t,"domainLookup",n,"DNS"),GD(e,t,n)}function Ba(e,t,n,r,s=n){const i=qD(n),o=t[i],a=t[`${n}Start`];!a||!o||Ur(e,r+at(a),r+at(o),{op:`browser.${s}`,name:t.name,attributes:{[st]:"auto.ui.browser.metrics",...n==="redirect"&&t.redirectCount!=null?{"http.redirect_count":t.redirectCount}:{}}})}function qD(e){return e==="secureConnection"?"connectEnd":e==="fetch"?"domainLookupStart":`${e}End`}function GD(e,t,n){const r=n+at(t.requestStart),s=n+at(t.responseEnd),i=n+at(t.responseStart);t.responseEnd&&(Ur(e,r,s,{op:"browser.request",name:t.name,attributes:{[st]:"auto.ui.browser.metrics"}}),Ur(e,i,s,{op:"browser.response",name:t.name,attributes:{[st]:"auto.ui.browser.metrics"}}))}function KD(e,t,n,r,s,i,o){if(t.initiatorType==="xmlhttprequest"||t.initiatorType==="fetch")return;const a=t.initiatorType?`resource.${t.initiatorType}`:"resource.other";if(o!=null&&o.includes(a))return;const c={[st]:"auto.resource.browser.metrics"},l=Ss(n);l.protocol&&(c["url.scheme"]=l.protocol.split(":").pop()),l.host&&(c["server.address"]=l.host),c["url.same_origin"]=n.includes(ge.location.origin),JD(t,c,[["responseStatus","http.response.status_code"],["transferSize","http.response_transfer_size"],["encodedBodySize","http.response_content_length"],["decodedBodySize","http.decoded_response_content_length"],["renderBlockingStatus","resource.render_blocking_status"],["deliveryType","http.response_delivery_type"]]);const d={...c,...uE(t)},u=i+r,f=u+s;Ur(e,u,f,{name:n.replace(ge.location.origin,""),op:a,attributes:d})}function YD(e){const t=ge.navigator;if(!t)return;const n=t.connection;n&&(n.effectiveType&&e.setAttribute("effectiveConnectionType",n.effectiveType),n.type&&e.setAttribute("connectionType",n.type),Du(n.rtt)&&(yn["connection.rtt"]={value:n.rtt,unit:"millisecond"})),Du(t.deviceMemory)&&e.setAttribute("deviceMemory",`${t.deviceMemory} GB`),Du(t.hardwareConcurrency)&&e.setAttribute("hardwareConcurrency",String(t.hardwareConcurrency))}function XD(e,t){Vt&&t.recordLcpOnPageloadSpan&&(Vt.element&&e.setAttribute("lcp.element",zt(Vt.element)),Vt.id&&e.setAttribute("lcp.id",Vt.id),Vt.url&&e.setAttribute("lcp.url",Vt.url.trim().slice(0,200)),Vt.loadTime!=null&&e.setAttribute("lcp.loadTime",Vt.loadTime),Vt.renderTime!=null&&e.setAttribute("lcp.renderTime",Vt.renderTime),e.setAttribute("lcp.size",Vt.size)),ei!=null&&ei.sources&&t.recordClsOnPageloadSpan&&ei.sources.forEach((n,r)=>e.setAttribute(`cls.source.${r+1}`,zt(n.node)))}function JD(e,t,n){n.forEach(([r,s])=>{const i=e[r];i!=null&&(typeof i=="number"&&i{}}const eF=({entries:e})=>{const t=Tt(),n=t?wt(t):void 0,r=n?Re(n).description:Le().getScopeData().transactionName;e.forEach(s=>{var h,p;const i=s;if(!i.identifier)return;const o=i.name,a=i.renderTime,c=i.loadTime,[l,d]=c?[at(c),"load-time"]:a?[at(a),"render-time"]:[lt(),"entry-emission"],u=o==="image-paint"?at(Math.max(0,(a??0)-(c??0))):0,f={[st]:"auto.ui.browser.elementtiming",[ur]:"ui.elementtiming",[jt]:"component","sentry.span_start_time_source":d,"sentry.transaction_name":r,"element.id":i.id,"element.type":((p=(h=i.element)==null?void 0:h.tagName)==null?void 0:p.toLowerCase())||"unknown","element.size":i.naturalWidth&&i.naturalHeight?`${i.naturalWidth}x${i.naturalHeight}`:void 0,"element.render_time":a,"element.load_time":c,"element.url":i.url||void 0,"element.identifier":i.identifier,"element.paint_type":o};vP({name:`element[${i.identifier}]`,attributes:f,startTime:l,onlyIfParent:!0},m=>{m.end(l+u)})})},tF=1e3;let Ev,qd,Gd;function dE(e){const t="dom";Kr(t,e),Yr(t,nF)}function nF(){if(!ge.document)return;const e=dn.bind(null,"dom"),t=wv(e,!0);ge.document.addEventListener("click",t,!1),ge.document.addEventListener("keypress",t,!1),["EventTarget","Node"].forEach(n=>{var i,o;const s=(i=ge[n])==null?void 0:i.prototype;(o=s==null?void 0:s.hasOwnProperty)!=null&&o.call(s,"addEventListener")&&(Wt(s,"addEventListener",function(a){return function(c,l,d){if(c==="click"||c=="keypress")try{const u=this.__sentry_instrumentation_handlers__=this.__sentry_instrumentation_handlers__||{},f=u[c]=u[c]||{refCount:0};if(!f.handler){const h=wv(e);f.handler=h,a.call(this,c,h,d)}f.refCount++}catch{}return a.call(this,c,l,d)}}),Wt(s,"removeEventListener",function(a){return function(c,l,d){if(c==="click"||c=="keypress")try{const u=this.__sentry_instrumentation_handlers__||{},f=u[c];f&&(f.refCount--,f.refCount<=0&&(a.call(this,c,f.handler,d),f.handler=void 0,delete u[c]),Object.keys(u).length===0&&delete this.__sentry_instrumentation_handlers__)}catch{}return a.call(this,c,l,d)}}))})}function rF(e){if(e.type!==qd)return!1;try{if(!e.target||e.target._sentryId!==Gd)return!1}catch{}return!0}function sF(e,t){return e!=="keypress"?!1:t!=null&&t.tagName?!(t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable):!0}function wv(e,t=!1){return n=>{if(!n||n._sentryCaptured)return;const r=iF(n);if(sF(n.type,r))return;qt(n,"_sentryCaptured",!0),r&&!r._sentryId&&qt(r,"_sentryId",en());const s=n.type==="keypress"?"input":n.type;rF(n)||(e({event:n,name:s,global:t}),qd=n.type,Gd=r?r._sentryId:void 0),clearTimeout(Ev),Ev=ge.setTimeout(()=>{Gd=void 0,qd=void 0},tF)}}function iF(e){try{return e.target}catch{return null}}let Ha;function Dl(e){const t="history";Kr(t,e),Yr(t,oF)}function oF(){if(ge.addEventListener("popstate",()=>{const t=ge.location.href,n=Ha;if(Ha=t,n===t)return;dn("history",{from:n,to:t})}),!fL())return;function e(t){return function(...n){const r=n.length>2?n[2]:void 0;if(r){const s=Ha,i=aF(String(r));if(Ha=i,s===i)return t.apply(this,n);dn("history",{from:s,to:i})}return t.apply(this,n)}}Wt(ge.history,"pushState",e),Wt(ge.history,"replaceState",e)}function aF(e){try{return new URL(e,ge.location.origin).toString()}catch{return e}}const pc={};function fE(e){const t=pc[e];if(t)return t;let n=ge[e];if(Fd(n))return pc[e]=n.bind(ge);const r=ge.document;if(r&&typeof r.createElement=="function")try{const s=r.createElement("iframe");s.hidden=!0,r.head.appendChild(s);const i=s.contentWindow;i!=null&&i[e]&&(n=i[e]),r.head.removeChild(s)}catch(s){xs&&J.warn(`Could not create sandbox iframe for ${e} check, bailing to window.${e}: `,s)}return n&&(pc[e]=n.bind(ge))}function cF(e){pc[e]=void 0}function Sa(...e){return fE("setTimeout")(...e)}const ds="__sentry_xhr_v3__";function hE(e){const t="xhr";Kr(t,e),Yr(t,lF)}function lF(){if(!ge.XMLHttpRequest)return;const e=XMLHttpRequest.prototype;e.open=new Proxy(e.open,{apply(t,n,r){const s=new Error,i=lt()*1e3,o=Qn(r[0])?r[0].toUpperCase():void 0,a=uF(r[1]);if(!o||!a)return t.apply(n,r);n[ds]={method:o,url:a,request_headers:{}},o==="POST"&&a.match(/sentry_key/)&&(n.__sentry_own_request__=!0);const c=()=>{const l=n[ds];if(l&&n.readyState===4){try{l.status_code=n.status}catch{}const d={endTimestamp:lt()*1e3,startTimestamp:i,xhr:n,virtualError:s};dn("xhr",d)}};return"onreadystatechange"in n&&typeof n.onreadystatechange=="function"?n.onreadystatechange=new Proxy(n.onreadystatechange,{apply(l,d,u){return c(),l.apply(d,u)}}):n.addEventListener("readystatechange",c),n.setRequestHeader=new Proxy(n.setRequestHeader,{apply(l,d,u){const[f,h]=u,p=d[ds];return p&&Qn(f)&&Qn(h)&&(p.request_headers[f.toLowerCase()]=h),l.apply(d,u)}}),t.apply(n,r)}}),e.send=new Proxy(e.send,{apply(t,n,r){const s=n[ds];if(!s)return t.apply(n,r);r[0]!==void 0&&(s.body=r[0]);const i={startTimestamp:lt()*1e3,xhr:n};return dn("xhr",i),t.apply(n,r)}})}function uF(e){if(Qn(e))return e;try{return e.toString()}catch{}}const dF=Symbol.for("sentry__originalRequestBody");function pE(e){return new URLSearchParams(e).toString()}function mE(e,t=J){try{if(typeof e=="string")return[e];if(e instanceof URLSearchParams)return[e.toString()];if(e instanceof FormData)return[pE(e)];if(!e)return[void 0]}catch(n){return xs&&t.error(n,"Failed to serialize body",e),[void 0,"BODY_PARSE_ERROR"]}return xs&&t.log("Skipping network body because of body type",e),[void 0,"UNPARSEABLE_BODY_TYPE"]}function gE(e=[]){if(e.length>=2&&e[1]&&typeof e[1]=="object"&&"body"in e[1])return e[1].body;if(e.length>=1&&e[0]instanceof Request){const n=e[0][dF];return n!==void 0?n:void 0}}function vE(e){let t;try{t=e.getAllResponseHeaders()}catch(n){return xs&&J.error(n,"Failed to get xhr response headers",e),{}}return t?t.split(`\r +`).reduce((n,r)=>{const[s,i]=r.split(": ");return i&&(n[s.toLowerCase()]=i),n},{}):{}}const Fu=[],mc=new Map,js=new Map,fF=60;function hF(){if(ba()&&Gt()){const t=pF();return()=>{t()}}return()=>{}}const Kd={click:"click",pointerdown:"click",pointerup:"click",mousedown:"click",mouseup:"click",touchstart:"click",touchend:"click",mouseover:"hover",mouseout:"hover",mouseenter:"hover",mouseleave:"hover",pointerover:"hover",pointerout:"hover",pointerenter:"hover",pointerleave:"hover",dragstart:"drag",dragend:"drag",drag:"drag",dragenter:"drag",dragleave:"drag",dragover:"drag",drop:"drag",keydown:"press",keyup:"press",keypress:"press",input:"press"};function pF(){return iE(mF)}const mF=({metric:e})=>{if(e.value==null)return;const t=at(e.value);if(t>fF)return;const n=e.entries.find(p=>p.duration===e.value&&Kd[p.name]);if(!n)return;const{interactionId:r}=n,s=Kd[n.name],i=at(Gt()+n.startTime),o=Tt(),a=o?wt(o):void 0,c=r!=null?mc.get(r):void 0,l=(c==null?void 0:c.span)||a,d=l?Re(l).description:Le().getScopeData().transactionName,u=(c==null?void 0:c.elementName)||zt(n.target),f={[st]:"auto.http.browser.inp",[ur]:`ui.interaction.${s}`,[qi]:n.duration},h=Dh({name:u,transaction:d,attributes:f,startTime:i});h&&(h.addEvent("inp",{[da]:"millisecond",[fa]:e.value}),h.end(i+t))};function gF(){const e=Object.keys(Kd);Wc()&&e.forEach(s=>{ge.addEventListener(s,t,{capture:!0,passive:!0})});function t(s){const i=s.target;if(!i)return;const o=zt(i),a=Math.round(s.timeStamp);if(js.set(a,o),js.size>50){const c=js.keys().next().value;c!==void 0&&js.delete(c)}}function n(s){const i=Math.round(s.startTime);let o=js.get(i);if(!o)for(let a=-5;a<=5;a++){const c=js.get(i+a);if(c){o=c;break}}return o||""}const r=({entries:s})=>{const i=Tt(),o=i&&wt(i);s.forEach(a=>{if(!TD(a))return;const c=a.interactionId;if(c==null||mc.has(c))return;const l=a.target?zt(a.target):n(a);if(Fu.length>10){const d=Fu.shift();mc.delete(d)}Fu.push(c),mc.set(c,{span:o,elementName:l})})};Rs("event",r),Rs("first-input",r)}const vF=40;function yF(e,t=fE("fetch")){let n=0,r=0;async function s(i){const o=i.body.length;n+=o,r++;const a={body:i.body,method:"POST",referrerPolicy:"strict-origin",headers:e.headers,keepalive:n<=6e4&&r<15,...e.fetchOptions};try{const c=await t(e.url,a);return{statusCode:c.status,headers:{"x-sentry-rate-limits":c.headers.get("X-Sentry-Rate-Limits"),"retry-after":c.headers.get("Retry-After")}}}catch(c){throw cF("fetch"),c}finally{n-=o,r--}}return fO(e,s,bh(e.bufferSize||vF))}const pn=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,_F=30,bF=50;function Yd(e,t,n,r){const s={filename:e,function:t===""?ks:t,in_app:!0};return n!==void 0&&(s.lineno=n),r!==void 0&&(s.colno=r),s}const SF=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,EF=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,wF=/\((\S*)(?::(\d+))(?::(\d+))\)/,CF=/at (.+?) ?\(data:(.+?),/,TF=e=>{const t=e.match(CF);if(t)return{filename:``,function:t[1]};const n=SF.exec(e);if(n){const[,s,i,o]=n;return Yd(s,ks,+i,+o)}const r=EF.exec(e);if(r){if(r[2]&&r[2].indexOf("eval")===0){const a=wF.exec(r[2]);a&&(r[2]=a[1],r[3]=a[2],r[4]=a[3])}const[i,o]=yE(r[1]||ks,r[2]);return Yd(o,i,r[3]?+r[3]:void 0,r[4]?+r[4]:void 0)}},kF=[_F,TF],IF=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,xF=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,RF=e=>{const t=IF.exec(e);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){const i=xF.exec(t[3]);i&&(t[1]=t[1]||"eval",t[3]=i[1],t[4]=i[2],t[5]="")}let r=t[3],s=t[1]||ks;return[s,r]=yE(s,r),Yd(r,s,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},AF=[bF,RF],MF=[kF,AF],PF=RS(...MF),yE=(e,t)=>{const n=e.indexOf("safari-extension")!==-1,r=e.indexOf("safari-web-extension")!==-1;return n||r?[e.indexOf("@")!==-1?e.split("@")[0]:ks,n?`safari-extension:${t}`:`safari-web-extension:${t}`]:[e,t]},Va=1024,OF="Breadcrumbs",LF=(e={})=>{const t={console:!0,dom:!0,fetch:!0,history:!0,sentry:!0,xhr:!0,...e};return{name:OF,setup(n){t.console&&JO($F(n)),t.dom&&dE(FF(n,t.dom)),t.xhr&&hE(BF(n)),t.fetch&&L0(HF(n)),t.history&&Dl(VF(n)),t.sentry&&n.on("beforeSendEvent",DF(n))}}},NF=LF;function DF(e){return function(n){Ee()===e&&Vr({category:`sentry.${n.type==="transaction"?"transaction":"event"}`,event_id:n.event_id,level:n.level,message:as(n)},{event:n})}}function FF(e,t){return function(r){if(Ee()!==e)return;let s,i,o=typeof t=="object"?t.serializeAttribute:void 0,a=typeof t=="object"&&typeof t.maxStringLength=="number"?t.maxStringLength:void 0;a&&a>Va&&(pn&&J.warn(`\`dom.maxStringLength\` cannot exceed ${Va}, but a value of ${a} was configured. Sentry will use ${Va} instead.`),a=Va),typeof o=="string"&&(o=[o]);try{const l=r.event,d=UF(l)?l.target:l;s=zt(d,{keyAttrs:o,maxStringLength:a}),i=DS(d)}catch{s=""}if(s.length===0)return;const c={category:`ui.${r.name}`,message:s};i&&(c.data={"ui.component_name":i}),Vr(c,{event:r.event,name:r.name,global:r.global})}}function $F(e){return function(n){if(Ee()!==e)return;const r={category:"console",data:{arguments:n.args,logger:"console"},level:A0(n.level),message:gg(n.args," ")};if(n.level==="assert")if(n.args[0]===!1)r.message=`Assertion failed: ${gg(n.args.slice(1)," ")||"console.assert"}`,r.data.arguments=n.args.slice(1);else return;Vr(r,{input:n.args,level:n.level})}}function BF(e){return function(n){if(Ee()!==e)return;const{startTimestamp:r,endTimestamp:s}=n,i=n.xhr[ds];if(!r||!s||!i)return;const{method:o,url:a,status_code:c,body:l}=i,d={method:o,url:a,status_code:c},u={xhr:n.xhr,input:l,startTimestamp:r,endTimestamp:s},f={category:"xhr",data:d,type:"http",level:O0(c)};e.emit("beforeOutgoingRequestBreadcrumb",f,u),Vr(f,u)}}function HF(e){return function(n){if(Ee()!==e)return;const{startTimestamp:r,endTimestamp:s}=n;if(s&&!(n.fetchData.url.match(/sentry_key/)&&n.fetchData.method==="POST"))if(n.fetchData.method,n.fetchData.url,n.error){const i=n.fetchData,o={data:n.error,input:n.args,startTimestamp:r,endTimestamp:s},a={category:"fetch",data:i,level:"error",type:"http"};e.emit("beforeOutgoingRequestBreadcrumb",a,o),Vr(a,o)}else{const i=n.response,o={...n.fetchData,status_code:i==null?void 0:i.status};n.fetchData.request_body_size,n.fetchData.response_body_size,i==null||i.status;const a={input:n.args,response:i,startTimestamp:r,endTimestamp:s},c={category:"fetch",data:o,type:"http",level:O0(o.status_code)};e.emit("beforeOutgoingRequestBreadcrumb",c,a),Vr(c,a)}}}function VF(e){return function(n){if(Ee()!==e)return;let r=n.from,s=n.to;const i=Ss(Pe.location.href);let o=r?Ss(r):void 0;const a=Ss(s);o!=null&&o.path||(o=i),i.protocol===a.protocol&&i.host===a.host&&(s=a.relative),i.protocol===o.protocol&&i.host===o.host&&(r=o.relative),Vr({category:"navigation",data:{from:r,to:s}})}}function UF(e){return!!e&&!!e.target}const WF=["EventTarget","Window","Node","ApplicationCache","AudioTrackList","BroadcastChannel","ChannelMergerNode","CryptoOperation","EventSource","FileReader","HTMLUnknownElement","IDBDatabase","IDBRequest","IDBTransaction","KeyOperation","MediaController","MessagePort","ModalWindow","Notification","SVGElementInstance","Screen","SharedWorker","TextTrack","TextTrackCue","TextTrackList","WebSocket","WebSocketWorker","Worker","XMLHttpRequest","XMLHttpRequestEventTarget","XMLHttpRequestUpload"],jF="BrowserApiErrors",zF=(e={})=>{const t={XMLHttpRequest:!0,eventTarget:!0,requestAnimationFrame:!0,setInterval:!0,setTimeout:!0,unregisterOriginalCallbacks:!1,...e};return{name:jF,setupOnce(){t.setTimeout&&Wt(Pe,"setTimeout",Cv),t.setInterval&&Wt(Pe,"setInterval",Cv),t.requestAnimationFrame&&Wt(Pe,"requestAnimationFrame",GF),t.XMLHttpRequest&&"XMLHttpRequest"in Pe&&Wt(XMLHttpRequest.prototype,"send",KF);const n=t.eventTarget;n&&(Array.isArray(n)?n:WF).forEach(s=>YF(s,t))}}},qF=zF;function Cv(e){return function(...t){const n=t[0];return t[0]=Ri(n,{mechanism:{handled:!1,type:`auto.browser.browserapierrors.${ar(e)}`}}),e.apply(this,t)}}function GF(e){return function(t){return e.apply(this,[Ri(t,{mechanism:{data:{handler:ar(e)},handled:!1,type:"auto.browser.browserapierrors.requestAnimationFrame"}})])}}function KF(e){return function(...t){const n=this;return["onload","onerror","onprogress","onreadystatechange"].forEach(s=>{s in n&&typeof n[s]=="function"&&Wt(n,s,function(i){const o={mechanism:{data:{handler:ar(i)},handled:!1,type:`auto.browser.browserapierrors.xhr.${s}`}},a=ch(i);return a&&(o.mechanism.data.handler=ar(a)),Ri(i,o)})}),e.apply(this,t)}}function YF(e,t){var s,i;const r=(s=Pe[e])==null?void 0:s.prototype;(i=r==null?void 0:r.hasOwnProperty)!=null&&i.call(r,"addEventListener")&&(Wt(r,"addEventListener",function(o){return function(a,c,l){try{XF(c)&&(c.handleEvent=Ri(c.handleEvent,{mechanism:{data:{handler:ar(c),target:e},handled:!1,type:"auto.browser.browserapierrors.handleEvent"}}))}catch{}return t.unregisterOriginalCallbacks&&JF(this,a,c),o.apply(this,[a,Ri(c,{mechanism:{data:{handler:ar(c),target:e},handled:!1,type:"auto.browser.browserapierrors.addEventListener"}}),l])}}),Wt(r,"removeEventListener",function(o){return function(a,c,l){try{const d=c.__sentry_wrapped__;d&&o.call(this,a,d,l)}catch{}return o.call(this,a,c,l)}}))}function XF(e){return typeof e.handleEvent=="function"}function JF(e,t,n){e&&typeof e=="object"&&"removeEventListener"in e&&typeof e.removeEventListener=="function"&&e.removeEventListener(t,n)}const ZF=()=>({name:"BrowserSession",setupOnce(){if(typeof Pe.document>"u"){pn&&J.warn("Using the `browserSessionIntegration` in non-browser environments is not supported.");return}Fg({ignoreDuration:!0}),$g(),Dl(({from:e,to:t})=>{e!==void 0&&e!==t&&(Fg({ignoreDuration:!0}),$g())})}}),QF="GlobalHandlers",e$=(e={})=>{const t={onerror:!0,onunhandledrejection:!0,...e};return{name:QF,setupOnce(){Error.stackTraceLimit=50},setup(n){t.onerror&&(n$(n),Tv("onerror")),t.onunhandledrejection&&(r$(n),Tv("onunhandledrejection"))}}},t$=e$;function n$(e){MS(t=>{const{stackParser:n,attachStacktrace:r}=_E();if(Ee()!==e||K0())return;const{msg:s,url:i,line:o,column:a,error:c}=t,l=o$(Mh(n,c||s,void 0,r,!1),i,o,a);l.level="error",f0(l,{originalException:c,mechanism:{handled:!1,type:"auto.browser.global_handlers.onerror"}})})}function r$(e){PS(t=>{const{stackParser:n,attachStacktrace:r}=_E();if(Ee()!==e||K0())return;const s=s$(t),i=Ei(s)?i$(s):Mh(n,s,void 0,r,!0);i.level="error",f0(i,{originalException:s,mechanism:{handled:!1,type:"auto.browser.global_handlers.onunhandledrejection"}})})}function s$(e){if(Ei(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}function i$(e){return{exception:{values:[{type:"UnhandledRejection",value:`Non-Error promise rejection captured with value: ${String(e)}`}]}}}function o$(e,t,n,r){const s=e.exception=e.exception||{},i=s.values=s.values||[],o=i[0]=i[0]||{},a=o.stacktrace=o.stacktrace||{},c=a.frames=a.frames||[],l=r,d=n,u=a$(t)??Ls();return c.length===0&&c.push({colno:l,filename:u,function:ks,in_app:!0,lineno:d}),e}function Tv(e){pn&&J.log(`Global Handler attached: ${e}`)}function _E(){const e=Ee();return(e==null?void 0:e.getOptions())||{stackParser:()=>[],attachStacktrace:!1}}function a$(e){if(!(!Qn(e)||e.length===0))return e.startsWith("data:")?`<${Lr(e,!1)}>`:e}const c$=()=>({name:"HttpContext",preprocessEvent(e){var r;if(!Pe.navigator&&!Pe.location&&!Pe.document)return;const t=xh(),n={...t.headers,...(r=e.request)==null?void 0:r.headers};e.request={...t,...e.request,headers:n}}}),l$="cause",u$=5,d$="LinkedErrors",f$=(e={})=>{const t=e.limit||u$,n=e.key||l$;return{name:d$,preprocessEvent(r,s,i){const o=i.getOptions();XO(Rh,o.stackParser,n,t,r,s)}}},h$=f$;function p$(){return m$()?(pn&&vr(()=>{console.error("[Sentry] You cannot use Sentry.init() in a browser extension, see: https://docs.sentry.io/platforms/javascript/best-practices/browser-extensions/")}),!0):!1}function m$(){var i;if(typeof Pe.window>"u")return!1;const e=Pe;if(e.nw)return!1;const t=e.chrome||e.browser;if(!((i=t==null?void 0:t.runtime)!=null&&i.id))return!1;const n=Ls(),r=["chrome-extension","moz-extension","ms-browser-extension","safari-web-extension"];return!(Pe===Pe.top&&r.some(o=>n.startsWith(`${o}://`)))}function bE(e){return[UO(),$O(),qF(),NF(),t$(),h$(),tL(),c$(),ZF()]}function g$(e={}){const t=!e.skipBrowserExtensionCheck&&p$();let n=e.defaultIntegrations==null?bE():e.defaultIntegrations;const r={...e,enabled:t?!1:e.enabled,stackParser:UA(e.stackParser||PF),integrations:tO({integrations:e.integrations,defaultIntegrations:n}),transport:e.transport||yF};return wO(ZN,r)}const Ye=xe,Fh="sentryReplaySession",v$="replay_event",$h="Unable to send Replay",y$=3e5,_$=9e5,b$=5e3,S$=5500,E$=6e4,w$=5e3,C$=3,kv=15e4,Ua=5e3,T$=3e3,k$=300,Bh=2e7,I$=4999,x$=5e4,Iv=36e5;var R$=Object.defineProperty,A$=(e,t,n)=>t in e?R$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,xv=(e,t,n)=>A$(e,typeof t!="symbol"?t+"":t,n),ut=(e=>(e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e))(ut||{});function M$(e){return e.nodeType===e.ELEMENT_NODE}function wo(e){const t=e==null?void 0:e.host;return(t==null?void 0:t.shadowRoot)===e}function Co(e){return Object.prototype.toString.call(e)==="[object ShadowRoot]"}function P$(e){return e.includes(" background-clip: text;")&&!e.includes(" -webkit-background-clip: text;")&&(e=e.replace(/\sbackground-clip:\s*text;/g," -webkit-background-clip: text; background-clip: text;")),e}function O$(e){const{cssText:t}=e;if(t.split('"').length<3)return t;const n=["@import",`url(${JSON.stringify(e.href)})`];return e.layerName===""?n.push("layer"):e.layerName&&n.push(`layer(${e.layerName})`),e.supportsText&&n.push(`supports(${e.supportsText})`),e.media.length&&n.push(e.media.mediaText),n.join(" ")+";"}function Yc(e){try{const t=e.rules||e.cssRules;return t?P$(Array.from(t,SE).join("")):null}catch{return null}}function L$(e){let t="";for(let n=0;nthis.removeNodeFromMap(r))}has(t){return this.idNodeMap.has(t)}hasNode(t){return this.nodeMetaMap.has(t)}add(t,n){const r=n.id;this.idNodeMap.set(r,t),this.nodeMetaMap.set(t,n)}replace(t,n){const r=this.getNode(t);if(r){const s=this.nodeMetaMap.get(r);s&&this.nodeMetaMap.set(n,s)}this.idNodeMap.set(t,n)}reset(){this.idNodeMap=new Map,this.nodeMetaMap=new WeakMap}}function $$(){return new EE}function Fl({maskInputOptions:e,tagName:t,type:n}){return t==="OPTION"&&(t="SELECT"),!!(e[t.toLowerCase()]||n&&e[n]||n==="password"||t==="INPUT"&&!n&&e.text)}function Ko({isMasked:e,element:t,value:n,maskInputFn:r}){let s=n||"";return e?(r&&(s=r(s,t)),"*".repeat(s.length)):s}function Ai(e){return e.toLowerCase()}function Xd(e){return e.toUpperCase()}const Rv="__rrweb_original__";function B$(e){const t=e.getContext("2d");if(!t)return!0;const n=50;for(let r=0;rc!==0))return!1}return!0}function Hh(e){const t=e.type;return e.hasAttribute("data-rr-is-password")?"password":t?Ai(t):null}function Xc(e,t,n){return t==="INPUT"&&(n==="radio"||n==="checkbox")?e.getAttribute("value")||"":e.value}function wE(e,t){let n;try{n=new URL(e,t??window.location.href)}catch{return null}const r=/\.([0-9a-z]+)(?:$)/i,s=n.pathname.match(r);return(s==null?void 0:s[1])??null}const Av={};function CE(e){const t=Av[e];if(t)return t;const n=window.document;let r=window[e];if(n&&typeof n.createElement=="function")try{const s=n.createElement("iframe");s.hidden=!0,n.head.appendChild(s);const i=s.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(s)}catch{}return Av[e]=r.bind(window)}function Jd(...e){return CE("setTimeout")(...e)}function TE(...e){return CE("clearTimeout")(...e)}function kE(e){try{return e.contentDocument}catch{}}let H$=1;const V$=new RegExp("[^a-z0-9-_:]"),Yo=-2;function Vh(){return H$++}function U$(e){if(e instanceof HTMLFormElement)return"form";const t=Ai(e.tagName);return V$.test(t)?"div":t}function W$(e){let t="";return e.indexOf("//")>-1?t=e.split("/").slice(0,3).join("/"):t=e.split("/")[0],t=t.split("?")[0],t}let zs,Mv;const j$=/url\((?:(')([^']*)'|(")(.*?)"|([^)]*))\)/gm,z$=/^(?:[a-z+]+:)?\/\//i,q$=/^www\..*/i,G$=/^(data:)([^,]*),(.*)/i;function K$(e,t){if(!e||t.size===0)return e;try{const n=e.split(";"),r=[];for(let s of n){if(s=s.trim(),!s)continue;const i=s.indexOf(":");if(i===-1){r.push(s);continue}const o=s.slice(0,i).trim();t.has(o)||r.push(s)}return r.join("; ")+(r.length>0&&e.endsWith(";")?";":"")}catch(n){return console.warn("Error filtering CSS properties:",n),e}}function Jc(e,t){return(e||"").replace(j$,(n,r,s,i,o,a)=>{const c=s||o||a,l=r||i||"";if(!c)return n;if(z$.test(c)||q$.test(c))return`url(${l}${c}${l})`;if(G$.test(c))return`url(${l}${c}${l})`;if(c[0]==="/")return`url(${l}${W$(t)+c}${l})`;const d=t.split("/"),u=c.split("/");d.pop();for(const f of u)f!=="."&&(f===".."?d.pop():d.push(f));return`url(${l}${d.join("/")}${l})`})}const Y$=/^[^ \t\n\r\u000c]+/,X$=/^[, \t\n\r\u000c]+/;function J$(e,t){if(t.trim()==="")return t;let n=0;function r(i){let o;const a=i.exec(t.substring(n));return a?(o=a[0],n+=o.length,o):""}const s=[];for(;r(X$),!(n>=t.length);){let i=r(Y$);if(i.slice(-1)===",")i=ti(e,i.substring(0,i.length-1)),s.push(i);else{let o="";i=ti(e,i);let a=!1;for(;;){const c=t.charAt(n);if(c===""){s.push((i+o).trim());break}else if(a)c===")"&&(a=!1);else if(c===","){n+=1,s.push((i+o).trim());break}else c==="("&&(a=!0);o+=c,n+=1}}}return s.join(", ")}const Pv=new WeakMap;function ti(e,t){return!t||t.trim()===""?t:$l(e,t)}function Z$(e){return!!(e.tagName==="svg"||e.ownerSVGElement)}function $l(e,t){let n=Pv.get(e);if(n||(n=e.createElement("a"),Pv.set(e,n)),!t)t="";else if(t.startsWith("blob:")||t.startsWith("data:"))return t;return n.setAttribute("href",t),n.href}function IE(e,t,n,r,s,i,o){if(!r)return r;if(n==="src"||n==="href"&&!(t==="use"&&r[0]==="#"))return ti(e,r);if(n==="xlink:href"&&r[0]!=="#")return ti(e,r);if(n==="background"&&(t==="table"||t==="td"||t==="th"))return ti(e,r);if(n==="srcset")return J$(e,r);if(n==="style"){let a=Jc(r,$l(e));return o&&o.size>0&&(a=K$(a,o)),a}else if(t==="object"&&n==="data")return ti(e,r);return typeof i=="function"?i(n,r,s):r}function xE(e,t,n){return(e==="video"||e==="audio")&&t==="autoplay"}function Q$(e,t,n,r){try{if(r&&e.matches(r))return!1;if(typeof t=="string"){if(e.classList.contains(t))return!0}else for(let s=e.classList.length;s--;){const i=e.classList[s];if(t.test(i))return!0}if(n)return e.matches(n)}catch{}return!1}function eB(e,t){for(let n=e.classList.length;n--;){const r=e.classList[n];if(t.test(r))return!0}return!1}function fs(e,t,n=1/0,r=0){return!e||e.nodeType!==e.ELEMENT_NODE||r>n?-1:t(e)?r:fs(e.parentNode,t,n,r+1)}function ni(e,t){return n=>{const r=n;if(r===null)return!1;try{if(e){if(typeof e=="string"){if(r.matches(`.${e}`))return!0}else if(eB(r,e))return!0}return!!(t&&r.matches(t))}catch{return!1}}}function Mi(e,t,n,r,s,i){try{const o=e.nodeType===e.ELEMENT_NODE?e:e.parentElement;if(o===null)return!1;if(o.tagName==="INPUT"){const l=o.getAttribute("autocomplete");if(["current-password","new-password","cc-number","cc-exp","cc-exp-month","cc-exp-year","cc-csc"].includes(l))return!0}let a=-1,c=-1;if(i){if(c=fs(o,ni(r,s)),c<0)return!0;a=fs(o,ni(t,n),c>=0?c:1/0)}else{if(a=fs(o,ni(t,n)),a<0)return!1;c=fs(o,ni(r,s),a>=0?a:1/0)}return a>=0?c>=0?a<=c:!0:c>=0?!1:!!i}catch{}return!!i}function tB(e,t,n){const r=e.contentWindow;if(!r)return;let s=!1,i;try{i=r.document.readyState}catch{return}if(i!=="complete"){const a=Jd(()=>{s||(t(),s=!0)},n);e.addEventListener("load",()=>{TE(a),s=!0,t()});return}const o="about:blank";if(r.location.href!==o||e.src===o||e.src==="")return Jd(t,0),e.addEventListener("load",t);e.addEventListener("load",t)}function nB(e,t,n){let r=!1,s;try{s=e.sheet}catch{return}if(s)return;const i=Jd(()=>{r||(t(),r=!0)},n);e.addEventListener("load",()=>{TE(i),r=!0,t()})}function rB(e,t){const{doc:n,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskAttributeFn:c,maskTextClass:l,unmaskTextClass:d,maskTextSelector:u,unmaskTextSelector:f,inlineStylesheet:h,maskInputOptions:p={},maskTextFn:m,maskInputFn:v,dataURLOptions:g={},inlineImages:y,recordCanvas:_,keepIframeSrcFn:S,newlyAddedElement:M=!1,ignoreCSSAttributes:R}=t,E=sB(n,r);switch(e.nodeType){case e.DOCUMENT_NODE:return e.compatMode!=="CSS1Compat"?{type:ut.Document,childNodes:[],compatMode:e.compatMode}:{type:ut.Document,childNodes:[]};case e.DOCUMENT_TYPE_NODE:return{type:ut.DocumentType,name:e.name,publicId:e.publicId,systemId:e.systemId,rootId:E};case e.ELEMENT_NODE:return oB(e,{doc:n,blockClass:s,blockSelector:i,unblockSelector:o,inlineStylesheet:h,maskAttributeFn:c,maskInputOptions:p,maskInputFn:v,dataURLOptions:g,inlineImages:y,recordCanvas:_,keepIframeSrcFn:S,newlyAddedElement:M,rootId:E,maskTextClass:l,unmaskTextClass:d,maskTextSelector:u,unmaskTextSelector:f,ignoreCSSAttributes:R});case e.TEXT_NODE:return iB(e,{doc:n,maskAllText:a,maskTextClass:l,unmaskTextClass:d,maskTextSelector:u,unmaskTextSelector:f,maskTextFn:m,maskInputOptions:p,maskInputFn:v,rootId:E});case e.CDATA_SECTION_NODE:return{type:ut.CDATA,textContent:"",rootId:E};case e.COMMENT_NODE:return{type:ut.Comment,textContent:e.textContent||"",rootId:E};default:return!1}}function sB(e,t){if(!t.hasNode(e))return;const n=t.getId(e);return n===1?void 0:n}function iB(e,t){var g;const{maskAllText:n,maskTextClass:r,unmaskTextClass:s,maskTextSelector:i,unmaskTextSelector:o,maskTextFn:a,maskInputOptions:c,maskInputFn:l,rootId:d}=t,u=e.parentNode&&e.parentNode.tagName;let f=e.textContent;const h=u==="STYLE"?!0:void 0,p=u==="SCRIPT"?!0:void 0,m=u==="TEXTAREA"?!0:void 0;if(h&&f){try{e.nextSibling||e.previousSibling||(g=e.parentNode.sheet)!=null&&g.cssRules&&(f=Yc(e.parentNode.sheet))}catch(y){console.warn(`Cannot get CSS styles from text's parentNode. Error: ${y}`,e)}f=Jc(f,$l(t.doc))}p&&(f="SCRIPT_PLACEHOLDER");const v=Mi(e,r,i,s,o,n);if(!h&&!p&&!m&&f&&v&&(f=a?a(f,e.parentElement):f.replace(/[\S]/g,"*")),m&&f&&(c.textarea||v)&&(f=l?l(f,e.parentNode):f.replace(/[\S]/g,"*")),u==="OPTION"&&f){const y=Fl({type:null,tagName:u,maskInputOptions:c});f=Ko({isMasked:Mi(e,r,i,s,o,y),element:e,value:f,maskInputFn:l})}return{type:ut.Text,textContent:f||"",isStyle:h,rootId:d}}function oB(e,t){const{doc:n,blockClass:r,blockSelector:s,unblockSelector:i,inlineStylesheet:o,maskInputOptions:a={},maskAttributeFn:c,maskInputFn:l,dataURLOptions:d={},inlineImages:u,recordCanvas:f,keepIframeSrcFn:h,newlyAddedElement:p=!1,rootId:m,maskTextClass:v,unmaskTextClass:g,maskTextSelector:y,unmaskTextSelector:_,ignoreCSSAttributes:S}=t,M=Q$(e,r,s,i),R=U$(e);let E={};const C=e.attributes.length;for(let A=0;AT.href===e.href);let O=null;A&&(O=Yc(A)),O&&(E.rel=null,E.href=null,E.crossorigin=null,E._cssText=Jc(O,A.href))}if(R==="style"&&e.sheet&&!(e.innerText||e.textContent||"").trim().length){const A=Yc(e.sheet);A&&(E._cssText=Jc(A,$l(n)))}if(R==="input"||R==="textarea"||R==="select"||R==="option"){const A=e,O=Hh(A),T=Xc(A,Xd(R),O),P=A.checked;if(O!=="submit"&&O!=="button"&&T){const N=Mi(A,v,y,g,_,Fl({type:O,tagName:Xd(R),maskInputOptions:a}));E.value=Ko({isMasked:N,element:A,value:T,maskInputFn:l})}P&&(E.checked=P)}if(R==="option"&&(e.selected&&!a.select?E.selected=!0:delete E.selected),R==="canvas"&&f){if(e.__context==="2d")B$(e)||(E.rr_dataURL=e.toDataURL(d.type,d.quality));else if(!("__context"in e)){const A=e.toDataURL(d.type,d.quality),O=n.createElement("canvas");O.width=e.width,O.height=e.height;const T=O.toDataURL(d.type,d.quality);A!==T&&(E.rr_dataURL=A)}}if(R==="img"&&u){zs||(zs=n.createElement("canvas"),Mv=zs.getContext("2d"));const A=e,O=A.currentSrc||A.getAttribute("src")||"",T=A.crossOrigin,P=()=>{A.removeEventListener("load",P);try{zs.width=A.naturalWidth,zs.height=A.naturalHeight,Mv.drawImage(A,0,0),E.rr_dataURL=zs.toDataURL(d.type,d.quality)}catch(N){if(A.crossOrigin!=="anonymous"){A.crossOrigin="anonymous",A.complete&&A.naturalWidth!==0?P():A.addEventListener("load",P);return}else console.warn(`Cannot inline img src=${O}! Error: ${N}`)}A.crossOrigin==="anonymous"&&(T?E.crossOrigin=T:A.removeAttribute("crossorigin"))};A.complete&&A.naturalWidth!==0?P():A.addEventListener("load",P)}if((R==="audio"||R==="video")&&(E.rr_mediaState=e.paused?"paused":"played",E.rr_mediaCurrentTime=e.currentTime),p||(e.scrollLeft&&(E.rr_scrollLeft=e.scrollLeft),e.scrollTop&&(E.rr_scrollTop=e.scrollTop)),M){const{width:A,height:O}=e.getBoundingClientRect();E={class:E.class,rr_width:`${A}px`,rr_height:`${O}px`}}R==="iframe"&&!h(E.src)&&(!M&&!kE(e)&&(E.rr_src=E.src),delete E.src);let I;try{customElements.get(R)&&(I=!0)}catch{}return{type:ut.Element,tagName:R,attributes:E,childNodes:[],isSVG:Z$(e)||void 0,needBlock:M,rootId:m,isCustom:I}}function Ge(e){return e==null?"":e.toLowerCase()}function aB(e,t){if(t.comment&&e.type===ut.Comment)return!0;if(e.type===ut.Element){if(t.script&&(e.tagName==="script"||e.tagName==="link"&&(e.attributes.rel==="preload"||e.attributes.rel==="modulepreload")||e.tagName==="link"&&e.attributes.rel==="prefetch"&&typeof e.attributes.href=="string"&&wE(e.attributes.href)==="js"))return!0;if(t.headFavicon&&(e.tagName==="link"&&e.attributes.rel==="shortcut icon"||e.tagName==="meta"&&(Ge(e.attributes.name).match(/^msapplication-tile(image|color)$/)||Ge(e.attributes.name)==="application-name"||Ge(e.attributes.rel)==="icon"||Ge(e.attributes.rel)==="apple-touch-icon"||Ge(e.attributes.rel)==="shortcut icon")))return!0;if(e.tagName==="meta"){if(t.headMetaDescKeywords&&Ge(e.attributes.name).match(/^description|keywords$/))return!0;if(t.headMetaSocial&&(Ge(e.attributes.property).match(/^(og|twitter|fb):/)||Ge(e.attributes.name).match(/^(og|twitter):/)||Ge(e.attributes.name)==="pinterest"))return!0;if(t.headMetaRobots&&(Ge(e.attributes.name)==="robots"||Ge(e.attributes.name)==="googlebot"||Ge(e.attributes.name)==="bingbot"))return!0;if(t.headMetaHttpEquiv&&e.attributes["http-equiv"]!==void 0)return!0;if(t.headMetaAuthorship&&(Ge(e.attributes.name)==="author"||Ge(e.attributes.name)==="generator"||Ge(e.attributes.name)==="framework"||Ge(e.attributes.name)==="publisher"||Ge(e.attributes.name)==="progid"||Ge(e.attributes.property).match(/^article:/)||Ge(e.attributes.property).match(/^product:/)))return!0;if(t.headMetaVerification&&(Ge(e.attributes.name)==="google-site-verification"||Ge(e.attributes.name)==="yandex-verification"||Ge(e.attributes.name)==="csrf-token"||Ge(e.attributes.name)==="p:domain_verify"||Ge(e.attributes.name)==="verify-v1"||Ge(e.attributes.name)==="verification"||Ge(e.attributes.name)==="shopify-checkout-api-token"))return!0}}return!1}function ri(e,t){const{doc:n,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskTextClass:c,unmaskTextClass:l,maskTextSelector:d,unmaskTextSelector:u,skipChild:f=!1,inlineStylesheet:h=!0,maskInputOptions:p={},maskAttributeFn:m,maskTextFn:v,maskInputFn:g,slimDOMOptions:y,dataURLOptions:_={},inlineImages:S=!1,recordCanvas:M=!1,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:C=5e3,onBlockedImageLoad:I,onStylesheetLoad:A,stylesheetLoadTimeout:O=5e3,keepIframeSrcFn:T=()=>!1,newlyAddedElement:P=!1,ignoreCSSAttributes:N}=t;let{preserveWhiteSpace:z=!0}=t;const X=rB(e,{doc:n,mirror:r,blockClass:s,blockSelector:i,maskAllText:a,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:d,unmaskTextSelector:u,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:v,maskInputFn:g,dataURLOptions:_,inlineImages:S,recordCanvas:M,keepIframeSrcFn:T,newlyAddedElement:P,ignoreCSSAttributes:N});if(!X)return console.warn(e,"not serialized"),null;let q;r.hasNode(e)?q=r.getId(e):aB(X,y)||!z&&X.type===ut.Text&&!X.isStyle&&!X.textContent.replace(/^\s+|\s+$/gm,"").length?q=Yo:q=Vh();const D=Object.assign(X,{id:q});if(r.add(e,D),q===Yo)return null;R&&R(e);let re=!f;if(D.type===ut.Element){re=re&&!D.needBlock;const U=e.shadowRoot;U&&Co(U)&&(D.isShadowHost=!0)}if((D.type===ut.Document||D.type===ut.Element)&&re){y.headWhitespace&&D.type===ut.Element&&D.tagName==="head"&&(z=!1);const U={doc:n,mirror:r,blockClass:s,blockSelector:i,maskAllText:a,unblockSelector:o,maskTextClass:c,unmaskTextClass:l,maskTextSelector:d,unmaskTextSelector:u,skipChild:f,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:v,maskInputFn:g,slimDOMOptions:y,dataURLOptions:_,inlineImages:S,recordCanvas:M,preserveWhiteSpace:z,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:C,onBlockedImageLoad:I,onStylesheetLoad:A,stylesheetLoadTimeout:O,keepIframeSrcFn:T,ignoreCSSAttributes:N},ie=e.childNodes?Array.from(e.childNodes):[];for(const ae of ie){const ue=ri(ae,U);ue&&D.childNodes.push(ue)}if(M$(e)&&e.shadowRoot)for(const ae of Array.from(e.shadowRoot.childNodes)){const ue=ri(ae,U);ue&&(Co(e.shadowRoot)&&(ue.isShadow=!0),D.childNodes.push(ue))}}if(e.parentNode&&wo(e.parentNode)&&Co(e.parentNode)&&(D.isShadow=!0),D.type===ut.Element&&D.tagName==="iframe"&&!D.needBlock&&tB(e,()=>{const U=kE(e);if(U&&E){const ie=ri(U,{doc:U,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskTextClass:c,unmaskTextClass:l,maskTextSelector:d,unmaskTextSelector:u,skipChild:!1,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:v,maskInputFn:g,slimDOMOptions:y,dataURLOptions:_,inlineImages:S,recordCanvas:M,preserveWhiteSpace:z,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:C,onStylesheetLoad:A,stylesheetLoadTimeout:O,keepIframeSrcFn:T,ignoreCSSAttributes:N});ie&&E(e,ie)}},C),D.type===ut.Element&&D.tagName==="img"&&!e.complete&&D.needBlock){const U=e,ie=()=>{if(U.isConnected&&!U.complete&&I)try{const ae=U.getBoundingClientRect();ae.width>0&&ae.height>0&&I(U,D,ae)}catch{}U.removeEventListener("load",ie)};U.isConnected&&U.addEventListener("load",ie)}return D.type===ut.Element&&D.tagName==="link"&&typeof D.attributes.rel=="string"&&(D.attributes.rel==="stylesheet"||D.attributes.rel==="preload"&&typeof D.attributes.href=="string"&&wE(D.attributes.href)==="css")&&nB(e,()=>{if(A){const U=ri(e,{doc:n,mirror:r,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:a,maskTextClass:c,unmaskTextClass:l,maskTextSelector:d,unmaskTextSelector:u,skipChild:!1,inlineStylesheet:h,maskInputOptions:p,maskAttributeFn:m,maskTextFn:v,maskInputFn:g,slimDOMOptions:y,dataURLOptions:_,inlineImages:S,recordCanvas:M,preserveWhiteSpace:z,onSerialize:R,onIframeLoad:E,iframeLoadTimeout:C,onStylesheetLoad:A,stylesheetLoadTimeout:O,keepIframeSrcFn:T,ignoreCSSAttributes:N});U&&A(e,U)}},O),D.type===ut.Element&&delete D.needBlock,D}function cB(e,t){const{mirror:n=new EE,blockClass:r="rr-block",blockSelector:s=null,unblockSelector:i=null,maskAllText:o=!1,maskTextClass:a="rr-mask",unmaskTextClass:c=null,maskTextSelector:l=null,unmaskTextSelector:d=null,inlineStylesheet:u=!0,inlineImages:f=!1,recordCanvas:h=!1,maskAllInputs:p=!1,maskAttributeFn:m,maskTextFn:v,maskInputFn:g,slimDOM:y=!1,dataURLOptions:_,preserveWhiteSpace:S,onSerialize:M,onIframeLoad:R,iframeLoadTimeout:E,onBlockedImageLoad:C,onStylesheetLoad:I,stylesheetLoadTimeout:A,keepIframeSrcFn:O=()=>!1,ignoreCSSAttributes:T=new Set([])}=t||{};return ri(e,{doc:e,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,maskAllText:o,maskTextClass:a,unmaskTextClass:c,maskTextSelector:l,unmaskTextSelector:d,skipChild:!1,inlineStylesheet:u,maskInputOptions:p===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0}:p===!1?{}:p,maskAttributeFn:m,maskTextFn:v,maskInputFn:g,slimDOMOptions:y===!0||y==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaDescKeywords:y==="all",headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaAuthorship:!0,headMetaVerification:!0}:y===!1?{}:y,dataURLOptions:_,inlineImages:f,recordCanvas:h,preserveWhiteSpace:S,onSerialize:M,onIframeLoad:R,iframeLoadTimeout:E,onBlockedImageLoad:C,onStylesheetLoad:I,stylesheetLoadTimeout:A,keepIframeSrcFn:O,newlyAddedElement:!1,ignoreCSSAttributes:T})}function Ft(e,t,n=document){const r={capture:!0,passive:!0};return n.addEventListener(e,t,r),()=>n.removeEventListener(e,t,r)}const Xs=`Please stop import mirror directly. Instead of that,\r +now you can use replayer.getMirror() to access the mirror instance of a replayer,\r +or you can use record.mirror to access the mirror instance during recording.`;let Ov={map:{},getId(){return console.error(Xs),-1},getNode(){return console.error(Xs),null},removeNodeFromMap(){console.error(Xs)},has(){return console.error(Xs),!1},reset(){console.error(Xs)}};typeof window<"u"&&window.Proxy&&window.Reflect&&(Ov=new Proxy(Ov,{get(e,t,n){return t==="map"&&console.error(Xs),Reflect.get(e,t,n)}}));function Xo(e,t,n={}){let r=null,s=0;return function(...i){const o=Date.now();!s&&n.leading===!1&&(s=o);const a=t-(o-s),c=this;a<=0||a>t?(r&&(mB(r),r=null),s=o,e.apply(c,i)):!r&&n.trailing!==!1&&(r=Bl(()=>{s=n.leading===!1?0:Date.now(),r=null,e.apply(c,i)},a))}}function RE(e,t,n,r,s=window){const i=s.Object.getOwnPropertyDescriptor(e,t);return s.Object.defineProperty(e,t,r?n:{set(o){Bl(()=>{n.set.call(this,o)},0),i&&i.set&&i.set.call(this,o)}}),()=>RE(e,t,i||{},!0)}function Uh(e,t,n){try{if(!(t in e))return()=>{};const r=e[t],s=n(r);return typeof s=="function"&&(s.prototype=s.prototype||{},Object.defineProperties(s,{__rrweb_original__:{enumerable:!1,value:r}})),e[t]=s,()=>{e[t]=r}}catch{return()=>{}}}let Zc=Date.now;/[1-9][0-9]{12}/.test(Date.now().toString())||(Zc=()=>new Date().getTime());function AE(e){var n,r,s,i,o,a;const t=e.document;return{left:t.scrollingElement?t.scrollingElement.scrollLeft:e.pageXOffset!==void 0?e.pageXOffset:(t==null?void 0:t.documentElement.scrollLeft)||((r=(n=t==null?void 0:t.body)==null?void 0:n.parentElement)==null?void 0:r.scrollLeft)||((s=t==null?void 0:t.body)==null?void 0:s.scrollLeft)||0,top:t.scrollingElement?t.scrollingElement.scrollTop:e.pageYOffset!==void 0?e.pageYOffset:(t==null?void 0:t.documentElement.scrollTop)||((o=(i=t==null?void 0:t.body)==null?void 0:i.parentElement)==null?void 0:o.scrollTop)||((a=t==null?void 0:t.body)==null?void 0:a.scrollTop)||0}}function ME(){return window.innerHeight||document.documentElement&&document.documentElement.clientHeight||document.body&&document.body.clientHeight}function PE(){return window.innerWidth||document.documentElement&&document.documentElement.clientWidth||document.body&&document.body.clientWidth}function OE(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function Yt(e,t,n,r,s){if(!e)return!1;const i=OE(e);if(!i)return!1;const o=ni(t,n);if(!s){const l=r&&i.matches(r);return o(i)&&!l}const a=fs(i,o);let c=-1;return a<0?!1:(r&&(c=fs(i,ni(null,r))),a>-1&&c<0?!0:a{let n=t[0];if(!(0 in t))throw new TypeError("1 argument is required");do if(this===n)return!0;while(n=n&&n.parentNode);return!1})}function NE(e,t){return!!(e.nodeName==="IFRAME"&&t.getMeta(e))}function DE(e,t){return!!(e.nodeName==="LINK"&&e.nodeType===e.ELEMENT_NODE&&e.getAttribute&&e.getAttribute("rel")==="stylesheet"&&t.getMeta(e))}function Qd(e){return!!(e!=null&&e.shadowRoot)}class dB{constructor(){this.id=1,this.styleIDMap=new WeakMap,this.idStyleMap=new Map}getId(t){return this.styleIDMap.get(t)??-1}has(t){return this.styleIDMap.has(t)}add(t,n){if(this.has(t))return this.getId(t);let r;return n===void 0?r=this.id++:r=n,this.styleIDMap.set(t,r),this.idStyleMap.set(r,t),r}getStyle(t){return this.idStyleMap.get(t)||null}reset(){this.styleIDMap=new WeakMap,this.idStyleMap=new Map,this.id=1}generateId(){return this.id++}}function FE(e){var n,r;let t=null;return((r=(n=e.getRootNode)==null?void 0:n.call(e))==null?void 0:r.nodeType)===Node.DOCUMENT_FRAGMENT_NODE&&e.getRootNode().host&&(t=e.getRootNode().host),t}function fB(e){let t=e,n;for(;n=FE(t);)t=n;return t}function hB(e){const t=e.ownerDocument;if(!t)return!1;const n=fB(e);return t.contains(n)}function $E(e){const t=e.ownerDocument;return t?t.contains(e)||hB(e):!1}const Lv={};function Wh(e){const t=Lv[e];if(t)return t;const n=window.document;let r=window[e];if(n&&typeof n.createElement=="function")try{const s=n.createElement("iframe");s.hidden=!0,n.head.appendChild(s);const i=s.contentWindow;i&&i[e]&&(r=i[e]),n.head.removeChild(s)}catch{}return Lv[e]=r.bind(window)}function pB(...e){return Wh("requestAnimationFrame")(...e)}function Bl(...e){return Wh("setTimeout")(...e)}function mB(...e){return Wh("clearTimeout")(...e)}var Te=(e=>(e[e.DomContentLoaded=0]="DomContentLoaded",e[e.Load=1]="Load",e[e.FullSnapshot=2]="FullSnapshot",e[e.IncrementalSnapshot=3]="IncrementalSnapshot",e[e.Meta=4]="Meta",e[e.Custom=5]="Custom",e[e.Plugin=6]="Plugin",e))(Te||{}),_e=(e=>(e[e.Mutation=0]="Mutation",e[e.MouseMove=1]="MouseMove",e[e.MouseInteraction=2]="MouseInteraction",e[e.Scroll=3]="Scroll",e[e.ViewportResize=4]="ViewportResize",e[e.Input=5]="Input",e[e.TouchMove=6]="TouchMove",e[e.MediaInteraction=7]="MediaInteraction",e[e.StyleSheetRule=8]="StyleSheetRule",e[e.CanvasMutation=9]="CanvasMutation",e[e.Font=10]="Font",e[e.Log=11]="Log",e[e.Drag=12]="Drag",e[e.StyleDeclaration=13]="StyleDeclaration",e[e.Selection=14]="Selection",e[e.AdoptedStyleSheet=15]="AdoptedStyleSheet",e[e.CustomElement=16]="CustomElement",e))(_e||{}),Ot=(e=>(e[e.MouseUp=0]="MouseUp",e[e.MouseDown=1]="MouseDown",e[e.Click=2]="Click",e[e.ContextMenu=3]="ContextMenu",e[e.DblClick=4]="DblClick",e[e.Focus=5]="Focus",e[e.Blur=6]="Blur",e[e.TouchStart=7]="TouchStart",e[e.TouchMove_Departed=8]="TouchMove_Departed",e[e.TouchEnd=9]="TouchEnd",e[e.TouchCancel=10]="TouchCancel",e))(Ot||{}),qn=(e=>(e[e.Mouse=0]="Mouse",e[e.Pen=1]="Pen",e[e.Touch=2]="Touch",e))(qn||{}),Js=(e=>(e[e.Play=0]="Play",e[e.Pause=1]="Pause",e[e.Seeked=2]="Seeked",e[e.VolumeChange=3]="VolumeChange",e[e.RateChange=4]="RateChange",e))(Js||{});function jh(e){try{return e.contentDocument}catch{}}function gB(e){try{return e.contentWindow}catch{}}function Nv(e){return"__ln"in e}class vB{constructor(){this.length=0,this.head=null,this.tail=null}get(t){if(t>=this.length)throw new Error("Position outside of list range");let n=this.head;for(let r=0;r`${e}@${t}`;class yB{constructor(){this.frozen=!1,this.locked=!1,this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.mapRemoves=[],this.movedMap={},this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.processMutations=t=>{t.forEach(this.processMutation),this.emit()},this.emit=()=>{if(this.frozen||this.locked)return;const t=[],n=new Set,r=new vB,s=c=>{let l=c,d=Yo;for(;d===Yo;)l=l&&l.nextSibling,d=l&&this.mirror.getId(l);return d},i=c=>{if(!c.parentNode||!$E(c))return;const l=wo(c.parentNode)?this.mirror.getId(FE(c)):this.mirror.getId(c.parentNode),d=s(c);if(l===-1||d===-1)return r.addNode(c);const u=ri(c,{doc:this.doc,mirror:this.mirror,blockClass:this.blockClass,blockSelector:this.blockSelector,maskAllText:this.maskAllText,unblockSelector:this.unblockSelector,maskTextClass:this.maskTextClass,unmaskTextClass:this.unmaskTextClass,maskTextSelector:this.maskTextSelector,unmaskTextSelector:this.unmaskTextSelector,skipChild:!0,newlyAddedElement:!0,inlineStylesheet:this.inlineStylesheet,maskInputOptions:this.maskInputOptions,maskAttributeFn:this.maskAttributeFn,maskTextFn:this.maskTextFn,maskInputFn:this.maskInputFn,slimDOMOptions:this.slimDOMOptions,dataURLOptions:this.dataURLOptions,recordCanvas:this.recordCanvas,inlineImages:this.inlineImages,onSerialize:f=>{NE(f,this.mirror)&&!Yt(f,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&this.iframeManager.addIframe(f),DE(f,this.mirror)&&this.stylesheetManager.trackLinkElement(f),Qd(c)&&this.shadowDomManager.addShadowRoot(c.shadowRoot,this.doc)},onIframeLoad:(f,h)=>{Yt(f,this.blockClass,this.blockSelector,this.unblockSelector,!1)||(this.iframeManager.attachIframe(f,h),f.contentWindow&&this.canvasManager.addWindow(f.contentWindow),this.shadowDomManager.observeAttachShadow(f))},onStylesheetLoad:(f,h)=>{this.stylesheetManager.attachLinkElement(f,h)},onBlockedImageLoad:(f,h,{width:p,height:m})=>{this.mutationCb({adds:[],removes:[],texts:[],attributes:[{id:h.id,attributes:{style:{width:`${p}px`,height:`${m}px`}}}]})},ignoreCSSAttributes:this.ignoreCSSAttributes});u&&(t.push({parentId:l,nextId:d,node:u}),n.add(u.id))};for(;this.mapRemoves.length;)this.mirror.removeNodeFromMap(this.mapRemoves.shift());for(const c of this.movedSet)Fv(this.removes,c,this.mirror)&&!this.movedSet.has(c.parentNode)||i(c);for(const c of this.addedSet)!$v(this.droppedSet,c)&&!Fv(this.removes,c,this.mirror)||$v(this.movedSet,c)?i(c):this.droppedSet.add(c);let o=null;for(;r.length;){let c=null;if(o){const l=this.mirror.getId(o.value.parentNode),d=s(o.value);l!==-1&&d!==-1&&(c=o)}if(!c){let l=r.tail;for(;l;){const d=l;if(l=l.previous,d){const u=this.mirror.getId(d.value.parentNode);if(s(d.value)===-1)continue;if(u!==-1){c=d;break}else{const h=d.value;if(h.parentNode&&h.parentNode.nodeType===Node.DOCUMENT_FRAGMENT_NODE){const p=h.parentNode.host;if(this.mirror.getId(p)!==-1){c=d;break}}}}}}if(!c){for(;r.head;)r.removeNode(r.head.value);break}o=c.previous,r.removeNode(c.value),i(c.value)}const a={texts:this.texts.map(c=>({id:this.mirror.getId(c.node),value:c.value})).filter(c=>!n.has(c.id)).filter(c=>this.mirror.has(c.id)),attributes:this.attributes.map(c=>{const{attributes:l}=c;if(typeof l.style=="string"){const d=JSON.stringify(c.styleDiff),u=JSON.stringify(c._unchangedStyles);d.length!n.has(c.id)).filter(c=>this.mirror.has(c.id)),removes:this.removes,adds:t};!a.texts.length&&!a.attributes.length&&!a.removes.length&&!a.adds.length||(this.texts=[],this.attributes=[],this.attributeMap=new WeakMap,this.removes=[],this.addedSet=new Set,this.movedSet=new Set,this.droppedSet=new Set,this.movedMap={},this.mutationCb(a))},this.processMutation=t=>{if(!$u(t.target,this.mirror))switch(t.type){case"characterData":{const n=t.target.textContent;!Yt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)&&n!==t.oldValue&&this.texts.push({value:Mi(t.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,this.maskAllText)&&n?this.maskTextFn?this.maskTextFn(n,OE(t.target)):n.replace(/[\S]/g,"*"):n,node:t.target});break}case"attributes":{const n=t.target;let r=t.attributeName,s=t.target.getAttribute(r);if(r==="value"){const o=Hh(n),a=n.tagName;s=Xc(n,a,o);const c=Fl({maskInputOptions:this.maskInputOptions,tagName:a,type:o}),l=Mi(t.target,this.maskTextClass,this.maskTextSelector,this.unmaskTextClass,this.unmaskTextSelector,c);s=Ko({isMasked:l,element:n,value:s,maskInputFn:this.maskInputFn})}if(Yt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||s===t.oldValue)return;let i=this.attributeMap.get(t.target);if(n.tagName==="IFRAME"&&r==="src"&&!this.keepIframeSrcFn(s))if(!jh(n))r="rr_src";else return;if(i||(i={node:t.target,attributes:{},styleDiff:{},_unchangedStyles:{}},this.attributes.push(i),this.attributeMap.set(t.target,i)),r==="type"&&n.tagName==="INPUT"&&(t.oldValue||"").toLowerCase()==="password"&&n.setAttribute("data-rr-is-password","true"),!xE(n.tagName,r)&&(i.attributes[r]=IE(this.doc,Ai(n.tagName),Ai(r),s,n,this.maskAttributeFn),r==="style")){if(!this.unattachedDoc)try{this.unattachedDoc=document.implementation.createHTMLDocument()}catch{this.unattachedDoc=this.doc}const o=this.unattachedDoc.createElement("span");t.oldValue&&o.setAttribute("style",t.oldValue);for(const a of Array.from(n.style)){const c=n.style.getPropertyValue(a),l=n.style.getPropertyPriority(a);c!==o.style.getPropertyValue(a)||l!==o.style.getPropertyPriority(a)?l===""?i.styleDiff[a]=c:i.styleDiff[a]=[c,l]:i._unchangedStyles[a]=[c,l]}for(const a of Array.from(o.style))n.style.getPropertyValue(a)===""&&(i.styleDiff[a]=!1)}break}case"childList":{if(Yt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!0))return;t.addedNodes.forEach(n=>this.genAdds(n,t.target)),t.removedNodes.forEach(n=>{const r=this.mirror.getId(n),s=wo(t.target)?this.mirror.getId(t.target.host):this.mirror.getId(t.target);Yt(t.target,this.blockClass,this.blockSelector,this.unblockSelector,!1)||$u(n,this.mirror)||!lB(n,this.mirror)||(this.addedSet.has(n)?(ef(this.addedSet,n),this.droppedSet.add(n)):this.addedSet.has(t.target)&&r===-1||LE(t.target,this.mirror)||(this.movedSet.has(n)&&this.movedMap[Dv(r,s)]?ef(this.movedSet,n):this.removes.push({parentId:s,id:r,isShadow:wo(t.target)&&Co(t.target)?!0:void 0})),this.mapRemoves.push(n))});break}}},this.genAdds=(t,n)=>{if(!this.processedNodeManager.inOtherBuffer(t,this)&&!(this.addedSet.has(t)||this.movedSet.has(t))){if(this.mirror.hasNode(t)){if($u(t,this.mirror))return;this.movedSet.add(t);let r=null;n&&this.mirror.hasNode(n)&&(r=this.mirror.getId(n)),r&&r!==-1&&(this.movedMap[Dv(this.mirror.getId(t),r)]=!0)}else this.addedSet.add(t),this.droppedSet.delete(t);Yt(t,this.blockClass,this.blockSelector,this.unblockSelector,!1)||(t.childNodes&&t.childNodes.forEach(r=>this.genAdds(r)),Qd(t)&&t.shadowRoot.childNodes.forEach(r=>{this.processedNodeManager.add(r,this),this.genAdds(r,t)}))}}}init(t){["mutationCb","blockClass","blockSelector","unblockSelector","maskAllText","maskTextClass","unmaskTextClass","maskTextSelector","unmaskTextSelector","inlineStylesheet","maskInputOptions","maskAttributeFn","maskTextFn","maskInputFn","keepIframeSrcFn","recordCanvas","inlineImages","slimDOMOptions","dataURLOptions","doc","mirror","iframeManager","stylesheetManager","shadowDomManager","canvasManager","processedNodeManager","ignoreCSSAttributes"].forEach(n=>{this[n]=t[n]})}freeze(){this.frozen=!0,this.canvasManager.freeze()}unfreeze(){this.frozen=!1,this.canvasManager.unfreeze(),this.emit()}isFrozen(){return this.frozen}lock(){this.locked=!0,this.canvasManager.lock()}unlock(){this.locked=!1,this.canvasManager.unlock(),this.emit()}reset(){this.shadowDomManager.reset(),this.canvasManager.reset()}}function ef(e,t){var n;e.delete(t),(n=t.childNodes)==null||n.forEach(r=>ef(e,r))}function Fv(e,t,n){return e.length===0?!1:_B(e,t,n)}function _B(e,t,n){let r=t.parentNode;for(;r;){const s=n.getId(r);if(e.some(i=>i.id===s))return!0;r=r.parentNode}return!1}function $v(e,t){return e.size===0?!1:BE(e,t)}function BE(e,t){const{parentNode:n}=t;return n?e.has(n)?!0:BE(e,n):!1}let To;function bB(e){To=e}function SB(){To=void 0}const Ae=e=>To?(...n)=>{try{return e(...n)}catch(r){if(To&&To(r)===!0)return()=>{};throw r}}:e,si=[];function Ea(e){try{if("composedPath"in e){const t=e.composedPath();if(t.length)return t[0]}else if("path"in e&&e.path.length)return e.path[0]}catch{}return e&&e.target}function HE(e,t){var o,a;const n=new yB;si.push(n),n.init(e);let r=window.MutationObserver||window.__rrMutationObserver;const s=(a=(o=window==null?void 0:window.Zone)==null?void 0:o.__symbol__)==null?void 0:a.call(o,"MutationObserver");s&&window[s]&&(r=window[s]);const i=new r(Ae(c=>{e.onMutation&&e.onMutation(c)===!1||n.processMutations.bind(n)(c)}));return i.observe(t,{attributes:!0,attributeOldValue:!0,characterData:!0,characterDataOldValue:!0,childList:!0,subtree:!0}),i}function EB({mousemoveCb:e,sampling:t,doc:n,mirror:r}){if(t.mousemove===!1)return()=>{};const s=typeof t.mousemove=="number"?t.mousemove:50,i=typeof t.mousemoveCallback=="number"?t.mousemoveCallback:500;let o=[],a;const c=Xo(Ae(u=>{const f=Date.now()-a;e(o.map(h=>(h.timeOffset-=f,h)),u),o=[],a=null}),i),l=Ae(Xo(Ae(u=>{const f=Ea(u),{clientX:h,clientY:p}=Zd(u)?u.changedTouches[0]:u;a||(a=Zc()),o.push({x:h,y:p,id:r.getId(f),timeOffset:Zc()-a}),c(typeof DragEvent<"u"&&u instanceof DragEvent?_e.Drag:u instanceof MouseEvent?_e.MouseMove:_e.TouchMove)}),s,{trailing:!1})),d=[Ft("mousemove",l,n),Ft("touchmove",l,n),Ft("drag",l,n)];return Ae(()=>{d.forEach(u=>u())})}function wB({mouseInteractionCb:e,doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,sampling:o}){if(o.mouseInteraction===!1)return()=>{};const a=o.mouseInteraction===!0||o.mouseInteraction===void 0?{}:o.mouseInteraction,c=[];let l=null;const d=u=>f=>{const h=Ea(f);if(Yt(h,r,s,i,!0))return;let p=null,m=u;if("pointerType"in f){switch(f.pointerType){case"mouse":p=qn.Mouse;break;case"touch":p=qn.Touch;break;case"pen":p=qn.Pen;break}p===qn.Touch?Ot[u]===Ot.MouseDown?m="TouchStart":Ot[u]===Ot.MouseUp&&(m="TouchEnd"):qn.Pen}else Zd(f)&&(p=qn.Touch);p!==null?(l=p,(m.startsWith("Touch")&&p===qn.Touch||m.startsWith("Mouse")&&p===qn.Mouse)&&(p=null)):Ot[u]===Ot.Click&&(p=l,l=null);const v=Zd(f)?f.changedTouches[0]:f;if(!v)return;const g=n.getId(h),{clientX:y,clientY:_}=v;Ae(e)({type:Ot[m],id:g,x:y,y:_,...p!==null&&{pointerType:p}})};return Object.keys(Ot).filter(u=>Number.isNaN(Number(u))&&!u.endsWith("_Departed")&&a[u]!==!1).forEach(u=>{let f=Ai(u);const h=d(u);if(window.PointerEvent)switch(Ot[u]){case Ot.MouseDown:case Ot.MouseUp:f=f.replace("mouse","pointer");break;case Ot.TouchStart:case Ot.TouchEnd:return}c.push(Ft(f,h,t))}),Ae(()=>{c.forEach(u=>u())})}function VE({scrollCb:e,doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,sampling:o}){const a=Ae(Xo(Ae(c=>{const l=Ea(c);if(!l||Yt(l,r,s,i,!0))return;const d=n.getId(l);if(l===t&&t.defaultView){const u=AE(t.defaultView);e({id:d,x:u.left,y:u.top})}else e({id:d,x:l.scrollLeft,y:l.scrollTop})}),o.scroll||100));return Ft("scroll",a,t)}function CB({viewportResizeCb:e},{win:t}){let n=-1,r=-1;const s=Ae(Xo(Ae(()=>{const i=ME(),o=PE();(n!==i||r!==o)&&(e({width:Number(o),height:Number(i)}),n=i,r=o)}),200));return Ft("resize",s,t)}const TB=["INPUT","TEXTAREA","SELECT"],Bv=new WeakMap;function kB({inputCb:e,doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,ignoreClass:o,ignoreSelector:a,maskInputOptions:c,maskInputFn:l,sampling:d,userTriggeredOnInput:u,maskTextClass:f,unmaskTextClass:h,maskTextSelector:p,unmaskTextSelector:m}){function v(E){let C=Ea(E);const I=E.isTrusted,A=C&&Xd(C.tagName);if(A==="OPTION"&&(C=C.parentElement),!C||!A||TB.indexOf(A)<0||Yt(C,r,s,i,!0))return;const O=C;if(O.classList.contains(o)||a&&O.matches(a))return;const T=Hh(C);let P=Xc(O,A,T),N=!1;const z=Fl({maskInputOptions:c,tagName:A,type:T}),X=Mi(C,f,p,h,m,z);(T==="radio"||T==="checkbox")&&(N=C.checked),P=Ko({isMasked:X,element:C,value:P,maskInputFn:l}),g(C,u?{text:P,isChecked:N,userTriggered:I}:{text:P,isChecked:N});const q=C.name;T==="radio"&&q&&N&&t.querySelectorAll(`input[type="radio"][name="${q}"]`).forEach(D=>{if(D!==C){const re=Ko({isMasked:X,element:D,value:Xc(D,A,T),maskInputFn:l});g(D,u?{text:re,isChecked:!N,userTriggered:!1}:{text:re,isChecked:!N})}})}function g(E,C){const I=Bv.get(E);if(!I||I.text!==C.text||I.isChecked!==C.isChecked){Bv.set(E,C);const A=n.getId(E);Ae(e)({...C,id:A})}}const _=(d.input==="last"?["change"]:["input","change"]).map(E=>Ft(E,Ae(v),t)),S=t.defaultView;if(!S)return()=>{_.forEach(E=>E())};const M=S.Object.getOwnPropertyDescriptor(S.HTMLInputElement.prototype,"value"),R=[[S.HTMLInputElement.prototype,"value"],[S.HTMLInputElement.prototype,"checked"],[S.HTMLSelectElement.prototype,"value"],[S.HTMLTextAreaElement.prototype,"value"],[S.HTMLSelectElement.prototype,"selectedIndex"],[S.HTMLOptionElement.prototype,"selected"]];return M&&M.set&&_.push(...R.map(E=>RE(E[0],E[1],{set(){Ae(v)({target:this,isTrusted:!1})}},!1,S))),Ae(()=>{_.forEach(E=>E())})}function Qc(e){const t=[];function n(r,s){if(Wa("CSSGroupingRule")&&r.parentRule instanceof CSSGroupingRule||Wa("CSSMediaRule")&&r.parentRule instanceof CSSMediaRule||Wa("CSSSupportsRule")&&r.parentRule instanceof CSSSupportsRule||Wa("CSSConditionRule")&&r.parentRule instanceof CSSConditionRule){const o=Array.from(r.parentRule.cssRules).indexOf(r);s.unshift(o)}else if(r.parentStyleSheet){const o=Array.from(r.parentStyleSheet.cssRules).indexOf(r);s.unshift(o)}return s}return n(e,t)}function Rr(e,t,n){let r,s;return e?(e.ownerNode?r=t.getId(e.ownerNode):s=n.getId(e),{styleId:s,id:r}):{}}function IB({styleSheetRuleCb:e,mirror:t,stylesheetManager:n},{win:r}){if(!r.CSSStyleSheet||!r.CSSStyleSheet.prototype)return()=>{};const s=r.CSSStyleSheet.prototype.insertRule;r.CSSStyleSheet.prototype.insertRule=new Proxy(s,{apply:Ae((d,u,f)=>{const[h,p]=f,{id:m,styleId:v}=Rr(u,t,n.styleMirror);return(m&&m!==-1||v&&v!==-1)&&e({id:m,styleId:v,adds:[{rule:h,index:p}]}),d.apply(u,f)})});const i=r.CSSStyleSheet.prototype.deleteRule;r.CSSStyleSheet.prototype.deleteRule=new Proxy(i,{apply:Ae((d,u,f)=>{const[h]=f,{id:p,styleId:m}=Rr(u,t,n.styleMirror);return(p&&p!==-1||m&&m!==-1)&&e({id:p,styleId:m,removes:[{index:h}]}),d.apply(u,f)})});let o;r.CSSStyleSheet.prototype.replace&&(o=r.CSSStyleSheet.prototype.replace,r.CSSStyleSheet.prototype.replace=new Proxy(o,{apply:Ae((d,u,f)=>{const[h]=f,{id:p,styleId:m}=Rr(u,t,n.styleMirror);return(p&&p!==-1||m&&m!==-1)&&e({id:p,styleId:m,replace:h}),d.apply(u,f)})}));let a;r.CSSStyleSheet.prototype.replaceSync&&(a=r.CSSStyleSheet.prototype.replaceSync,r.CSSStyleSheet.prototype.replaceSync=new Proxy(a,{apply:Ae((d,u,f)=>{const[h]=f,{id:p,styleId:m}=Rr(u,t,n.styleMirror);return(p&&p!==-1||m&&m!==-1)&&e({id:p,styleId:m,replaceSync:h}),d.apply(u,f)})}));const c={};ja("CSSGroupingRule")?c.CSSGroupingRule=r.CSSGroupingRule:(ja("CSSMediaRule")&&(c.CSSMediaRule=r.CSSMediaRule),ja("CSSConditionRule")&&(c.CSSConditionRule=r.CSSConditionRule),ja("CSSSupportsRule")&&(c.CSSSupportsRule=r.CSSSupportsRule));const l={};return Object.entries(c).forEach(([d,u])=>{l[d]={insertRule:u.prototype.insertRule,deleteRule:u.prototype.deleteRule},u.prototype.insertRule=new Proxy(l[d].insertRule,{apply:Ae((f,h,p)=>{const[m,v]=p,{id:g,styleId:y}=Rr(h.parentStyleSheet,t,n.styleMirror);return(g&&g!==-1||y&&y!==-1)&&e({id:g,styleId:y,adds:[{rule:m,index:[...Qc(h),v||0]}]}),f.apply(h,p)})}),u.prototype.deleteRule=new Proxy(l[d].deleteRule,{apply:Ae((f,h,p)=>{const[m]=p,{id:v,styleId:g}=Rr(h.parentStyleSheet,t,n.styleMirror);return(v&&v!==-1||g&&g!==-1)&&e({id:v,styleId:g,removes:[{index:[...Qc(h),m]}]}),f.apply(h,p)})})}),Ae(()=>{r.CSSStyleSheet.prototype.insertRule=s,r.CSSStyleSheet.prototype.deleteRule=i,o&&(r.CSSStyleSheet.prototype.replace=o),a&&(r.CSSStyleSheet.prototype.replaceSync=a),Object.entries(c).forEach(([d,u])=>{u.prototype.insertRule=l[d].insertRule,u.prototype.deleteRule=l[d].deleteRule})})}function UE({mirror:e,stylesheetManager:t},n){var o,a,c;let r=null;n.nodeName==="#document"?r=e.getId(n):r=e.getId(n.host);const s=n.nodeName==="#document"?(o=n.defaultView)==null?void 0:o.Document:(c=(a=n.ownerDocument)==null?void 0:a.defaultView)==null?void 0:c.ShadowRoot,i=s!=null&&s.prototype?Object.getOwnPropertyDescriptor(s==null?void 0:s.prototype,"adoptedStyleSheets"):void 0;return r===null||r===-1||!s||!i?()=>{}:(Object.defineProperty(n,"adoptedStyleSheets",{configurable:i.configurable,enumerable:i.enumerable,get(){var l;return(l=i.get)==null?void 0:l.call(this)},set(l){var u;const d=(u=i.set)==null?void 0:u.call(this,l);if(r!==null&&r!==-1)try{t.adoptStyleSheets(l,r)}catch{}return d}}),Ae(()=>{Object.defineProperty(n,"adoptedStyleSheets",{configurable:i.configurable,enumerable:i.enumerable,get:i.get,set:i.set})}))}function xB({styleDeclarationCb:e,mirror:t,ignoreCSSAttributes:n,stylesheetManager:r},{win:s}){const i=s.CSSStyleDeclaration.prototype.setProperty;s.CSSStyleDeclaration.prototype.setProperty=new Proxy(i,{apply:Ae((a,c,l)=>{var m;const[d,u,f]=l;if(n.has(d))return i.apply(c,[d,u,f]);const{id:h,styleId:p}=Rr((m=c.parentRule)==null?void 0:m.parentStyleSheet,t,r.styleMirror);return(h&&h!==-1||p&&p!==-1)&&e({id:h,styleId:p,set:{property:d,value:u,priority:f},index:Qc(c.parentRule)}),a.apply(c,l)})});const o=s.CSSStyleDeclaration.prototype.removeProperty;return s.CSSStyleDeclaration.prototype.removeProperty=new Proxy(o,{apply:Ae((a,c,l)=>{var h;const[d]=l;if(n.has(d))return o.apply(c,[d]);const{id:u,styleId:f}=Rr((h=c.parentRule)==null?void 0:h.parentStyleSheet,t,r.styleMirror);return(u&&u!==-1||f&&f!==-1)&&e({id:u,styleId:f,remove:{property:d},index:Qc(c.parentRule)}),a.apply(c,l)})}),Ae(()=>{s.CSSStyleDeclaration.prototype.setProperty=i,s.CSSStyleDeclaration.prototype.removeProperty=o})}function RB({mediaInteractionCb:e,blockClass:t,blockSelector:n,unblockSelector:r,mirror:s,sampling:i,doc:o}){const a=Ae(l=>Xo(Ae(d=>{const u=Ea(d);if(!u||Yt(u,t,n,r,!0))return;const{currentTime:f,volume:h,muted:p,playbackRate:m}=u;e({type:l,id:s.getId(u),currentTime:f,volume:h,muted:p,playbackRate:m})}),i.media||500)),c=[Ft("play",a(Js.Play),o),Ft("pause",a(Js.Pause),o),Ft("seeked",a(Js.Seeked),o),Ft("volumechange",a(Js.VolumeChange),o),Ft("ratechange",a(Js.RateChange),o)];return Ae(()=>{c.forEach(l=>l())})}function AB({fontCb:e,doc:t}){const n=t.defaultView;if(!n)return()=>{};const r=[],s=new WeakMap,i=n.FontFace;n.FontFace=function(c,l,d){const u=new i(c,l,d);return s.set(u,{family:c,buffer:typeof l!="string",descriptors:d,fontSource:typeof l=="string"?l:JSON.stringify(Array.from(new Uint8Array(l)))}),u};const o=Uh(t.fonts,"add",function(a){return function(c){return Bl(Ae(()=>{const l=s.get(c);l&&(e(l),s.delete(c))}),0),a.apply(this,[c])}});return r.push(()=>{n.FontFace=i}),r.push(o),Ae(()=>{r.forEach(a=>a())})}function MB(e){const{doc:t,mirror:n,blockClass:r,blockSelector:s,unblockSelector:i,selectionCb:o}=e;let a=!0;const c=Ae(()=>{const l=t.getSelection();if(!l||a&&(l!=null&&l.isCollapsed))return;a=l.isCollapsed||!1;const d=[],u=l.rangeCount||0;for(let f=0;f{}:Uh(n.customElements,"define",function(s){return function(i,o,a){try{t({define:{name:i}})}catch{}return s.apply(this,[i,o,a])}})}function OB(e,t={}){const n=e.doc.defaultView;if(!n)return()=>{};let r;e.recordDOM&&(r=HE(e,e.doc));const s=EB(e),i=wB(e),o=VE(e),a=CB(e,{win:n}),c=kB(e),l=RB(e);let d=()=>{},u=()=>{},f=()=>{},h=()=>{};e.recordDOM&&(d=IB(e,{win:n}),u=UE(e,e.doc),f=xB(e,{win:n}),e.collectFonts&&(h=AB(e)));const p=MB(e),m=PB(e),v=[];for(const g of e.plugins)v.push(g.observer(g.callback,n,g.options));return Ae(()=>{si.forEach(g=>g.reset()),r==null||r.disconnect(),s(),i(),o(),a(),c(),l(),d(),u(),f(),h(),p(),m(),v.forEach(g=>g())})}function Wa(e){return typeof window[e]<"u"}function ja(e){return!!(typeof window[e]<"u"&&window[e].prototype&&"insertRule"in window[e].prototype&&"deleteRule"in window[e].prototype)}class tf{constructor(t){this.generateIdFn=t,this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap}getId(t,n,r,s){const i=r||this.getIdToRemoteIdMap(t),o=s||this.getRemoteIdToIdMap(t);let a=i.get(n);return a||(a=this.generateIdFn(),i.set(n,a),o.set(a,n)),a}getIds(t,n){const r=this.getIdToRemoteIdMap(t),s=this.getRemoteIdToIdMap(t);return n.map(i=>this.getId(t,i,r,s))}getRemoteId(t,n,r){const s=r||this.getRemoteIdToIdMap(t);if(typeof n!="number")return n;const i=s.get(n);return i||-1}getRemoteIds(t,n){const r=this.getRemoteIdToIdMap(t);return n.map(s=>this.getRemoteId(t,s,r))}reset(t){if(!t){this.iframeIdToRemoteIdMap=new WeakMap,this.iframeRemoteIdToIdMap=new WeakMap;return}this.iframeIdToRemoteIdMap.delete(t),this.iframeRemoteIdToIdMap.delete(t)}getIdToRemoteIdMap(t){let n=this.iframeIdToRemoteIdMap.get(t);return n||(n=new Map,this.iframeIdToRemoteIdMap.set(t,n)),n}getRemoteIdToIdMap(t){let n=this.iframeRemoteIdToIdMap.get(t);return n||(n=new Map,this.iframeRemoteIdToIdMap.set(t,n)),n}}class LB{constructor(){this.crossOriginIframeMirror=new tf(Vh),this.crossOriginIframeRootIdMap=new WeakMap}addIframe(){}addLoadListener(){}attachIframe(){}}class NB{constructor(t){this.iframes=new WeakMap,this.crossOriginIframeMap=new WeakMap,this.crossOriginIframeMirror=new tf(Vh),this.crossOriginIframeRootIdMap=new WeakMap,this.mutationCb=t.mutationCb,this.wrappedEmit=t.wrappedEmit,this.stylesheetManager=t.stylesheetManager,this.recordCrossOriginIframes=t.recordCrossOriginIframes,this.crossOriginIframeStyleMirror=new tf(this.stylesheetManager.styleMirror.generateId.bind(this.stylesheetManager.styleMirror)),this.mirror=t.mirror,this.recordCrossOriginIframes&&window.addEventListener("message",this.handleMessage.bind(this))}addIframe(t){this.iframes.set(t,!0),t.contentWindow&&this.crossOriginIframeMap.set(t.contentWindow,t)}addLoadListener(t){this.loadListener=t}attachIframe(t,n){var s,i;this.mutationCb({adds:[{parentId:this.mirror.getId(t),nextId:null,node:n}],removes:[],texts:[],attributes:[],isAttachIframe:!0}),this.recordCrossOriginIframes&&((s=t.contentWindow)==null||s.addEventListener("message",this.handleMessage.bind(this))),(i=this.loadListener)==null||i.call(this,t);const r=jh(t);r&&r.adoptedStyleSheets&&r.adoptedStyleSheets.length>0&&this.stylesheetManager.adoptStyleSheets(r.adoptedStyleSheets,this.mirror.getId(r))}handleMessage(t){const n=t;if(n.data.type!=="rrweb"||n.origin!==n.data.origin||!t.source)return;const s=this.crossOriginIframeMap.get(t.source);if(!s)return;const i=this.transformCrossOriginEvent(s,n.data.event);i&&this.wrappedEmit(i,n.data.isCheckout)}transformCrossOriginEvent(t,n){var r;switch(n.type){case Te.FullSnapshot:{this.crossOriginIframeMirror.reset(t),this.crossOriginIframeStyleMirror.reset(t),this.replaceIdOnNode(n.data.node,t);const s=n.data.node.id;return this.crossOriginIframeRootIdMap.set(t,s),this.patchRootIdOnNode(n.data.node,s),{timestamp:n.timestamp,type:Te.IncrementalSnapshot,data:{source:_e.Mutation,adds:[{parentId:this.mirror.getId(t),nextId:null,node:n.data.node}],removes:[],texts:[],attributes:[],isAttachIframe:!0}}}case Te.Meta:case Te.Load:case Te.DomContentLoaded:return!1;case Te.Plugin:return n;case Te.Custom:return this.replaceIds(n.data.payload,t,["id","parentId","previousId","nextId"]),n;case Te.IncrementalSnapshot:switch(n.data.source){case _e.Mutation:return n.data.adds.forEach(s=>{this.replaceIds(s,t,["parentId","nextId","previousId"]),this.replaceIdOnNode(s.node,t);const i=this.crossOriginIframeRootIdMap.get(t);i&&this.patchRootIdOnNode(s.node,i)}),n.data.removes.forEach(s=>{this.replaceIds(s,t,["parentId","id"])}),n.data.attributes.forEach(s=>{this.replaceIds(s,t,["id"])}),n.data.texts.forEach(s=>{this.replaceIds(s,t,["id"])}),n;case _e.Drag:case _e.TouchMove:case _e.MouseMove:return n.data.positions.forEach(s=>{this.replaceIds(s,t,["id"])}),n;case _e.ViewportResize:return!1;case _e.MediaInteraction:case _e.MouseInteraction:case _e.Scroll:case _e.CanvasMutation:case _e.Input:return this.replaceIds(n.data,t,["id"]),n;case _e.StyleSheetRule:case _e.StyleDeclaration:return this.replaceIds(n.data,t,["id"]),this.replaceStyleIds(n.data,t,["styleId"]),n;case _e.Font:return n;case _e.Selection:return n.data.ranges.forEach(s=>{this.replaceIds(s,t,["start","end"])}),n;case _e.AdoptedStyleSheet:return this.replaceIds(n.data,t,["id"]),this.replaceStyleIds(n.data,t,["styleIds"]),(r=n.data.styles)==null||r.forEach(s=>{this.replaceStyleIds(s,t,["styleId"])}),n}}return!1}replace(t,n,r,s){for(const i of s)!Array.isArray(n[i])&&typeof n[i]!="number"||(Array.isArray(n[i])?n[i]=t.getIds(r,n[i]):n[i]=t.getId(r,n[i]));return n}replaceIds(t,n,r){return this.replace(this.crossOriginIframeMirror,t,n,r)}replaceStyleIds(t,n,r){return this.replace(this.crossOriginIframeStyleMirror,t,n,r)}replaceIdOnNode(t,n){this.replaceIds(t,n,["id","rootId"]),"childNodes"in t&&t.childNodes.forEach(r=>{this.replaceIdOnNode(r,n)})}patchRootIdOnNode(t,n){t.type!==ut.Document&&!t.rootId&&(t.rootId=n),"childNodes"in t&&t.childNodes.forEach(r=>{this.patchRootIdOnNode(r,n)})}}class DB{init(){}addShadowRoot(){}observeAttachShadow(){}reset(){}}class FB{constructor(t){this.shadowDoms=new WeakSet,this.restoreHandlers=[],this.mutationCb=t.mutationCb,this.scrollCb=t.scrollCb,this.bypassOptions=t.bypassOptions,this.mirror=t.mirror,this.init()}init(){this.reset(),this.patchAttachShadow(Element,document)}addShadowRoot(t,n){if(!Co(t)||this.shadowDoms.has(t))return;this.shadowDoms.add(t),this.bypassOptions.canvasManager.addShadowRoot(t);const r=HE({...this.bypassOptions,doc:n,mutationCb:this.mutationCb,mirror:this.mirror,shadowDomManager:this},t);this.restoreHandlers.push(()=>r.disconnect()),this.restoreHandlers.push(VE({...this.bypassOptions,scrollCb:this.scrollCb,doc:t,mirror:this.mirror})),Bl(()=>{t.adoptedStyleSheets&&t.adoptedStyleSheets.length>0&&this.bypassOptions.stylesheetManager.adoptStyleSheets(t.adoptedStyleSheets,this.mirror.getId(t.host)),this.restoreHandlers.push(UE({mirror:this.mirror,stylesheetManager:this.bypassOptions.stylesheetManager},t))},0)}observeAttachShadow(t){const n=jh(t),r=gB(t);!n||!r||this.patchAttachShadow(r.Element,n)}patchAttachShadow(t,n){const r=this;this.restoreHandlers.push(Uh(t.prototype,"attachShadow",function(s){return function(i){const o=s.call(this,i);return this.shadowRoot&&$E(this)&&r.addShadowRoot(this.shadowRoot,n),o}}))}reset(){this.restoreHandlers.forEach(t=>{try{t()}catch{}}),this.restoreHandlers=[],this.shadowDoms=new WeakSet,this.bypassOptions.canvasManager.resetShadowRoots()}}var Hv="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",$B=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var za=0;za({rule:SE(a),index:c}))})),r.styleIds.push(o)}s.length>0&&(r.styles=s),this.adoptedStyleSheetCb(r)}reset(){this.styleMirror.reset(),this.trackedLinkElements=new WeakSet}trackStylesheetInLinkElement(t){}}class HB{constructor(){this.nodeMap=new WeakMap,this.active=!1}inOtherBuffer(t,n){const r=this.nodeMap.get(t);return r&&Array.from(r).some(s=>s!==n)}add(t,n){this.active||(this.active=!0,pB(()=>{this.nodeMap=new WeakMap,this.active=!1})),this.nodeMap.set(t,(this.nodeMap.get(t)||new Set).add(n))}destroy(){}}let it,el;var ay;try{if(Array.from([1],e=>e*2)[0]!==2){const e=document.createElement("iframe");document.body.appendChild(e),Array.from=((ay=e.contentWindow)==null?void 0:ay.Array.from)||Array.from,document.body.removeChild(e)}}catch(e){console.debug("Unable to override Array.from",e)}const gn=$$();function nr(e={}){const{emit:t,checkoutEveryNms:n,checkoutEveryNth:r,blockClass:s="rr-block",blockSelector:i=null,unblockSelector:o=null,ignoreClass:a="rr-ignore",ignoreSelector:c=null,maskAllText:l=!1,maskTextClass:d="rr-mask",unmaskTextClass:u=null,maskTextSelector:f=null,unmaskTextSelector:h=null,inlineStylesheet:p=!0,maskAllInputs:m,maskInputOptions:v,slimDOMOptions:g,maskAttributeFn:y,maskInputFn:_,maskTextFn:S,maxCanvasSize:M=null,packFn:R,sampling:E={},dataURLOptions:C={},mousemoveWait:I,recordDOM:A=!0,recordCanvas:O=!1,recordCrossOriginIframes:T=!1,recordAfter:P=e.recordAfter==="DOMContentLoaded"?e.recordAfter:"load",userTriggeredOnInput:N=!1,collectFonts:z=!1,inlineImages:X=!1,plugins:q,keepIframeSrcFn:D=()=>!1,ignoreCSSAttributes:re=new Set([]),errorHandler:U,onMutation:ie,getCanvasManager:ae}=e;bB(U);const ue=T?window.parent===window:!0;let Ce=!1;if(!ue)try{window.parent.document&&(Ce=!1)}catch{Ce=!0}if(ue&&!t)throw new Error("emit function is required");if(!ue&&!Ce)return()=>{};I!==void 0&&E.mousemove===void 0&&(E.mousemove=I),gn.reset();const Ne=m===!0?{color:!0,date:!0,"datetime-local":!0,email:!0,month:!0,number:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0,textarea:!0,select:!0,radio:!0,checkbox:!0}:v!==void 0?v:{},He=g===!0||g==="all"?{script:!0,comment:!0,headFavicon:!0,headWhitespace:!0,headMetaSocial:!0,headMetaRobots:!0,headMetaHttpEquiv:!0,headMetaVerification:!0,headMetaAuthorship:g==="all",headMetaDescKeywords:g==="all"}:g||{};uB();let x,W=0;const K=H=>{for(const V of q||[])V.eventProcessor&&(H=V.eventProcessor(H));return R&&!Ce&&(H=R(H)),H};it=(H,V)=>{var Q;const Z=H;if(Z.timestamp=Zc(),(Q=si[0])!=null&&Q.isFrozen()&&Z.type!==Te.FullSnapshot&&!(Z.type===Te.IncrementalSnapshot&&Z.data.source===_e.Mutation)&&si.forEach(oe=>oe.unfreeze()),ue)t==null||t(K(Z),V);else if(Ce){const oe={type:"rrweb",event:K(Z),origin:window.location.origin,isCheckout:V};window.parent.postMessage(oe,"*")}if(Z.type===Te.FullSnapshot)x=Z,W=0;else if(Z.type===Te.IncrementalSnapshot){if(Z.data.source===_e.Mutation&&Z.data.isAttachIframe)return;W++;const oe=r&&W>=r,te=n&&x&&Z.timestamp-x.timestamp>n;(oe||te)&&Y(!0)}};const ne=H=>{it({type:Te.IncrementalSnapshot,data:{source:_e.Mutation,...H}})},ye=H=>it({type:Te.IncrementalSnapshot,data:{source:_e.Scroll,...H}}),b=H=>it({type:Te.IncrementalSnapshot,data:{source:_e.CanvasMutation,...H}}),w=H=>it({type:Te.IncrementalSnapshot,data:{source:_e.AdoptedStyleSheet,...H}}),k=new BB({mutationCb:ne,adoptedStyleSheetCb:w}),L=typeof __RRWEB_EXCLUDE_IFRAME__=="boolean"&&__RRWEB_EXCLUDE_IFRAME__?new LB:new NB({mirror:gn,mutationCb:ne,stylesheetManager:k,recordCrossOriginIframes:T,wrappedEmit:it});for(const H of q||[])H.getMirror&&H.getMirror({nodeMirror:gn,crossOriginIframeMirror:L.crossOriginIframeMirror,crossOriginIframeStyleMirror:L.crossOriginIframeStyleMirror});const $=new HB,F=UB(ae,{mirror:gn,win:window,mutationCb:H=>it({type:Te.IncrementalSnapshot,data:{source:_e.CanvasMutation,...H}}),recordCanvas:O,blockClass:s,blockSelector:i,unblockSelector:o,maxCanvasSize:M,sampling:E.canvas,dataURLOptions:C,errorHandler:U}),G=typeof __RRWEB_EXCLUDE_SHADOW_DOM__=="boolean"&&__RRWEB_EXCLUDE_SHADOW_DOM__?new DB:new FB({mutationCb:ne,scrollCb:ye,bypassOptions:{onMutation:ie,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:l,maskTextClass:d,unmaskTextClass:u,maskTextSelector:f,unmaskTextSelector:h,inlineStylesheet:p,maskInputOptions:Ne,dataURLOptions:C,maskAttributeFn:y,maskTextFn:S,maskInputFn:_,recordCanvas:O,inlineImages:X,sampling:E,slimDOMOptions:He,iframeManager:L,stylesheetManager:k,canvasManager:F,keepIframeSrcFn:D,processedNodeManager:$,ignoreCSSAttributes:re},mirror:gn}),Y=(H=!1)=>{if(!A)return;it({type:Te.Meta,data:{href:window.location.href,width:PE(),height:ME()}},H),k.reset(),G.init(),si.forEach(Z=>Z.lock());const V=cB(document,{mirror:gn,blockClass:s,blockSelector:i,unblockSelector:o,maskAllText:l,maskTextClass:d,unmaskTextClass:u,maskTextSelector:f,unmaskTextSelector:h,inlineStylesheet:p,maskAllInputs:Ne,maskAttributeFn:y,maskInputFn:_,maskTextFn:S,slimDOM:He,dataURLOptions:C,recordCanvas:O,inlineImages:X,onSerialize:Z=>{NE(Z,gn)&&L.addIframe(Z),DE(Z,gn)&&k.trackLinkElement(Z),Qd(Z)&&G.addShadowRoot(Z.shadowRoot,document)},onIframeLoad:(Z,Q)=>{L.attachIframe(Z,Q),Z.contentWindow&&F.addWindow(Z.contentWindow),G.observeAttachShadow(Z)},onStylesheetLoad:(Z,Q)=>{k.attachLinkElement(Z,Q)},onBlockedImageLoad:(Z,Q,{width:oe,height:te})=>{ne({adds:[],removes:[],texts:[],attributes:[{id:Q.id,attributes:{style:{width:`${oe}px`,height:`${te}px`}}}]})},keepIframeSrcFn:D,ignoreCSSAttributes:re});if(!V)return console.warn("Failed to snapshot the document");it({type:Te.FullSnapshot,data:{node:V,initialOffset:AE(window)}}),si.forEach(Z=>Z.unlock()),document.adoptedStyleSheets&&document.adoptedStyleSheets.length>0&&k.adoptStyleSheets(document.adoptedStyleSheets,gn.getId(document))};el=Y;try{const H=[],V=Q=>{var oe;return Ae(OB)({onMutation:ie,mutationCb:ne,mousemoveCb:(te,Ie)=>it({type:Te.IncrementalSnapshot,data:{source:Ie,positions:te}}),mouseInteractionCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.MouseInteraction,...te}}),scrollCb:ye,viewportResizeCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.ViewportResize,...te}}),inputCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.Input,...te}}),mediaInteractionCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.MediaInteraction,...te}}),styleSheetRuleCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.StyleSheetRule,...te}}),styleDeclarationCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.StyleDeclaration,...te}}),canvasMutationCb:b,fontCb:te=>it({type:Te.IncrementalSnapshot,data:{source:_e.Font,...te}}),selectionCb:te=>{it({type:Te.IncrementalSnapshot,data:{source:_e.Selection,...te}})},customElementCb:te=>{it({type:Te.IncrementalSnapshot,data:{source:_e.CustomElement,...te}})},blockClass:s,ignoreClass:a,ignoreSelector:c,maskAllText:l,maskTextClass:d,unmaskTextClass:u,maskTextSelector:f,unmaskTextSelector:h,maskInputOptions:Ne,inlineStylesheet:p,sampling:E,recordDOM:A,recordCanvas:O,inlineImages:X,userTriggeredOnInput:N,collectFonts:z,doc:Q,maskAttributeFn:y,maskInputFn:_,maskTextFn:S,keepIframeSrcFn:D,blockSelector:i,unblockSelector:o,slimDOMOptions:He,dataURLOptions:C,mirror:gn,iframeManager:L,stylesheetManager:k,shadowDomManager:G,processedNodeManager:$,canvasManager:F,ignoreCSSAttributes:re,plugins:((oe=q==null?void 0:q.filter(te=>te.observer))==null?void 0:oe.map(te=>({observer:te.observer,options:te.options,callback:Ie=>it({type:Te.Plugin,data:{plugin:te.name,payload:Ie}})})))||[]},{})};L.addLoadListener(Q=>{try{H.push(V(Q.contentDocument))}catch(oe){console.warn(oe)}});const Z=()=>{Y(),H.push(V(document))};return document.readyState==="interactive"||document.readyState==="complete"?Z():(H.push(Ft("DOMContentLoaded",()=>{it({type:Te.DomContentLoaded,data:{}}),P==="DOMContentLoaded"&&Z()})),H.push(Ft("load",()=>{it({type:Te.Load,data:{}}),P==="load"&&Z()},window))),()=>{H.forEach(Q=>Q()),$.destroy(),el=void 0,SB()}}catch(H){console.warn(H)}}function VB(e){if(!el)throw new Error("please take full snapshot after start recording");el(e)}nr.mirror=gn;nr.takeFullSnapshot=VB;function UB(e,t){try{return e?e(t):new Vv}catch{return console.warn("Unable to initialize CanvasManager"),new Vv}}var Uv;(function(e){e[e.NotStarted=0]="NotStarted",e[e.Running=1]="Running",e[e.Stopped=2]="Stopped"})(Uv||(Uv={}));const WB=3,jB=5;function zh(e){return e>9999999999?e:e*1e3}function Bu(e){return e>9999999999?e/1e3:e}function wa(e,t){t.category!=="sentry.transaction"&&(["ui.click","ui.input"].includes(t.category)?e.triggerUserActivity():e.checkAndHandleExpiredSession(),e.addUpdate(()=>(e.throttledAddEvent({type:Te.Custom,timestamp:(t.timestamp||0)*1e3,data:{tag:"breadcrumb",payload:vn(t,10,1e3)}}),t.category==="console")))}const zB="button,a";function WE(e){return e.closest(zB)||e}function jE(e){const t=zE(e);return!t||!(t instanceof Element)?t:WE(t)}function zE(e){return qB(e)?e.target:e}function qB(e){return typeof e=="object"&&!!e&&"target"in e}let Ar;function GB(e){return Ar||(Ar=[],KB()),Ar.push(e),()=>{const t=Ar?Ar.indexOf(e):-1;t>-1&&Ar.splice(t,1)}}function KB(){Wt(Ye,"open",function(e){return function(...t){if(Ar)try{Ar.forEach(n=>n())}catch{}return e.apply(Ye,t)}})}const YB=new Set([_e.Mutation,_e.StyleSheetRule,_e.StyleDeclaration,_e.AdoptedStyleSheet,_e.CanvasMutation,_e.Selection,_e.MediaInteraction]);function XB(e,t,n){e.handleClick(t,n)}class JB{constructor(t,n,r=wa){this._lastMutation=0,this._lastScroll=0,this._clicks=[],this._timeout=n.timeout/1e3,this._threshold=n.threshold/1e3,this._scrollTimeout=n.scrollTimeout/1e3,this._replay=t,this._ignoreSelector=n.ignoreSelector,this._addBreadcrumbEvent=r}addListeners(){const t=GB(()=>{this._lastMutation=Wv()});this._teardown=()=>{t(),this._clicks=[],this._lastMutation=0,this._lastScroll=0}}removeListeners(){this._teardown&&this._teardown(),this._checkClickTimeout&&clearTimeout(this._checkClickTimeout)}handleClick(t,n){if(QB(n,this._ignoreSelector)||!e5(t))return;const r={timestamp:Bu(t.timestamp),clickBreadcrumb:t,clickCount:0,node:n};this._clicks.some(s=>s.node===r.node&&Math.abs(s.timestamp-r.timestamp)<1)||(this._clicks.push(r),this._clicks.length===1&&this._scheduleCheckClicks())}registerMutation(t=Date.now()){this._lastMutation=Bu(t)}registerScroll(t=Date.now()){this._lastScroll=Bu(t)}registerClick(t){const n=WE(t);this._handleMultiClick(n)}_handleMultiClick(t){this._getClicks(t).forEach(n=>{n.clickCount++})}_getClicks(t){return this._clicks.filter(n=>n.node===t)}_checkClicks(){const t=[],n=Wv();this._clicks.forEach(r=>{!r.mutationAfter&&this._lastMutation&&(r.mutationAfter=r.timestamp<=this._lastMutation?this._lastMutation-r.timestamp:void 0),!r.scrollAfter&&this._lastScroll&&(r.scrollAfter=r.timestamp<=this._lastScroll?this._lastScroll-r.timestamp:void 0),r.timestamp+this._timeout<=n&&t.push(r)});for(const r of t){const s=this._clicks.indexOf(r);s>-1&&(this._generateBreadcrumbs(r),this._clicks.splice(s,1))}this._clicks.length&&this._scheduleCheckClicks()}_generateBreadcrumbs(t){const n=this._replay,r=t.scrollAfter&&t.scrollAfter<=this._scrollTimeout,s=t.mutationAfter&&t.mutationAfter<=this._threshold,i=!r&&!s,{clickCount:o,clickBreadcrumb:a}=t;if(i){const c=Math.min(t.mutationAfter||this._timeout,this._timeout)*1e3,l=c1){const c={type:"default",message:a.message,timestamp:a.timestamp,category:"ui.multiClick",data:{...a.data,url:Ye.location.href,route:n.getCurrentRoute(),clickCount:o,metric:!0}};this._addBreadcrumbEvent(n,c)}}_scheduleCheckClicks(){this._checkClickTimeout&&clearTimeout(this._checkClickTimeout),this._checkClickTimeout=Sa(()=>this._checkClicks(),1e3)}}const ZB=["A","BUTTON","INPUT"];function QB(e,t){return!!(!ZB.includes(e.tagName)||e.tagName==="INPUT"&&!["submit","button"].includes(e.getAttribute("type")||"")||e.tagName==="A"&&(e.hasAttribute("download")||e.hasAttribute("target")&&e.getAttribute("target")!=="_self")||t&&e.matches(t))}function e5(e){return!!(e.data&&typeof e.data.nodeId=="number"&&e.timestamp)}function Wv(){return Date.now()/1e3}function t5(e,t){try{if(!n5(t))return;const{source:n}=t.data;if(YB.has(n)&&e.registerMutation(t.timestamp),n===_e.Scroll&&e.registerScroll(t.timestamp),r5(t)){const{type:r,id:s}=t.data,i=nr.mirror.getNode(s);i instanceof HTMLElement&&r===Ot.Click&&e.registerClick(i)}}catch{}}function n5(e){return e.type===WB}function r5(e){return e.data.source===_e.MouseInteraction}function $n(e){return{timestamp:Date.now()/1e3,type:"default",...e}}var qh=(e=>(e[e.Document=0]="Document",e[e.DocumentType=1]="DocumentType",e[e.Element=2]="Element",e[e.Text=3]="Text",e[e.CDATA=4]="CDATA",e[e.Comment=5]="Comment",e))(qh||{});const s5=new Set(["id","class","aria-label","role","name","alt","title","data-test-id","data-testid","disabled","aria-disabled","data-sentry-component"]);function i5(e){const t={};!e["data-sentry-component"]&&e["data-sentry-element"]&&(e["data-sentry-component"]=e["data-sentry-element"]);for(const n in e)if(s5.has(n)){let r=n;(n==="data-testid"||n==="data-test-id")&&(r="testId"),t[r]=e[n]}return t}const o5=e=>t=>{if(!e.isEnabled())return;const n=a5(t);if(!n)return;const r=t.name==="click",s=r?t.event:void 0;r&&e.clickDetector&&(s!=null&&s.target)&&!s.altKey&&!s.metaKey&&!s.ctrlKey&&!s.shiftKey&&XB(e.clickDetector,n,jE(t.event)),wa(e,n)};function qE(e,t){const n=nr.mirror.getId(e),r=n&&nr.mirror.getNode(n),s=r&&nr.mirror.getMeta(r),i=s&&l5(s)?s:null;return{message:t,data:i?{nodeId:n,node:{id:n,tagName:i.tagName,textContent:Array.from(i.childNodes).map(o=>o.type===qh.Text&&o.textContent).filter(Boolean).map(o=>o.trim()).join(""),attributes:i5(i.attributes)}}:{}}}function a5(e){const{target:t,message:n}=c5(e);return $n({category:`ui.${e.name}`,...qE(t,n)})}function c5(e){const t=e.name==="click";let n,r=null;try{r=t?jE(e.event):zE(e.event),n=zt(r,{maxStringLength:200})||""}catch{n=""}return{target:r,message:n}}function l5(e){return e.type===qh.Element}function u5(e,t){if(!e.isEnabled())return;e.updateUserActivity();const n=d5(t);n&&wa(e,n)}function d5(e){const{metaKey:t,shiftKey:n,ctrlKey:r,altKey:s,key:i,target:o}=e;if(!o||f5(o)||!i)return null;const a=t||r||s,c=i.length===1;if(!a&&c)return null;const l=zt(o,{maxStringLength:200})||"",d=qE(o,l);return $n({category:"ui.keyDown",message:l,data:{...d.data,metaKey:t,shiftKey:n,ctrlKey:r,altKey:s,key:i}})}function f5(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.isContentEditable}const h5={resource:y5,paint:g5,navigation:v5};function Hu(e,t){return({metric:n})=>void t.replayPerformanceEntries.push(e(n))}function p5(e){return e.map(m5).filter(Boolean)}function m5(e){const t=h5[e.entryType];return t?t(e):null}function Pi(e){return((Gt()||Ye.performance.timeOrigin)+e)/1e3}function g5(e){const{duration:t,entryType:n,name:r,startTime:s}=e,i=Pi(s);return{type:n,name:r,start:i,end:i+t,data:void 0}}function v5(e){const{entryType:t,name:n,decodedBodySize:r,duration:s,domComplete:i,encodedBodySize:o,domContentLoadedEventStart:a,domContentLoadedEventEnd:c,domInteractive:l,loadEventStart:d,loadEventEnd:u,redirectCount:f,startTime:h,transferSize:p,type:m}=e;return s===0?null:{type:`${t}.${m}`,start:Pi(h),end:Pi(i),name:n,data:{size:p,decodedBodySize:r,encodedBodySize:o,duration:s,domInteractive:l,domContentLoadedEventStart:a,domContentLoadedEventEnd:c,loadEventStart:d,loadEventEnd:u,domComplete:i,redirectCount:f}}}function y5(e){const{entryType:t,initiatorType:n,name:r,responseEnd:s,startTime:i,decodedBodySize:o,encodedBodySize:a,responseStatus:c,transferSize:l}=e;return["fetch","xmlhttprequest"].includes(n)?null:{type:`${t}.${n}`,start:Pi(i),end:Pi(s),name:r,data:{size:l,statusCode:c,decodedBodySize:o,encodedBodySize:a}}}function _5(e){const t=e.entries[e.entries.length-1],n=t!=null&&t.element?[t.element]:void 0;return Gh(e,"largest-contentful-paint",n)}function b5(e){return e.sources!==void 0}function S5(e){const t=[],n=[];for(const r of e.entries)if(b5(r)){const s=[];for(const i of r.sources)if(i.node){n.push(i.node);const o=nr.mirror.getId(i.node);o&&s.push(o)}t.push({value:r.value,nodeIds:s.length?s:void 0})}return Gh(e,"cumulative-layout-shift",n,t)}function E5(e){const t=e.entries[e.entries.length-1],n=t!=null&&t.target?[t.target]:void 0;return Gh(e,"interaction-to-next-paint",n)}function Gh(e,t,n,r){const s=e.value,i=e.rating,o=Pi(s);return{type:"web-vital",name:t,start:o,end:o,data:{value:s,size:s,rating:i,nodeIds:n?n.map(a=>nr.mirror.getId(a)):void 0,attributions:r}}}function w5(e){function t(s){e.performanceEntries.includes(s)||e.performanceEntries.push(s)}function n({entries:s}){s.forEach(t)}const r=[];return["navigation","paint","resource"].forEach(s=>{r.push(Rs(s,n))}),r.push(Nh(Hu(_5,e)),Lh(Hu(S5,e)),iE(Hu(E5,e))),()=>{r.forEach(s=>s())}}const he=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,C5='var t=Uint8Array,n=Uint16Array,r=Int32Array,e=new t([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),i=new t([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),s=new t([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),a=function(t,e){for(var i=new n(31),s=0;s<31;++s)i[s]=e+=1<>1|(21845&c)<<1;v=(61680&(v=(52428&v)>>2|(13107&v)<<2))>>4|(3855&v)<<4,u[c]=((65280&v)>>8|(255&v)<<8)>>1}var d=function(t,r,e){for(var i=t.length,s=0,a=new n(r);s>f]=l}else for(o=new n(i),s=0;s>15-t[s]);return o},p=new t(288);for(c=0;c<144;++c)p[c]=8;for(c=144;c<256;++c)p[c]=9;for(c=256;c<280;++c)p[c]=7;for(c=280;c<288;++c)p[c]=8;var g=new t(32);for(c=0;c<32;++c)g[c]=5;var w=d(p,9,0),y=d(g,5,0),m=function(t){return(t+7)/8|0},b=function(n,r,e){return(null==e||e>n.length)&&(e=n.length),new t(n.subarray(r,e))},M=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],E=function(t,n,r){var e=new Error(n||M[t]);if(e.code=t,Error.captureStackTrace&&Error.captureStackTrace(e,E),!r)throw e;return e},z=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8},_=function(t,n,r){r<<=7&n;var e=n/8|0;t[e]|=r,t[e+1]|=r>>8,t[e+2]|=r>>16},x=function(r,e){for(var i=[],s=0;sd&&(d=o[s].s);var p=new n(d+1),g=A(i[c-1],p,0);if(g>e){s=0;var w=0,y=g-e,m=1<e))break;w+=m-(1<>=y;w>0;){var M=o[s].s;p[M]=0&&w;--s){var E=o[s].s;p[E]==e&&(--p[E],++w)}g=e}return{t:new t(p),l:g}},A=function(t,n,r){return-1==t.s?Math.max(A(t.l,n,r+1),A(t.r,n,r+1)):n[t.s]=r},D=function(t){for(var r=t.length;r&&!t[--r];);for(var e=new n(++r),i=0,s=t[0],a=1,o=function(t){e[i++]=t},h=1;h<=r;++h)if(t[h]==s&&h!=r)++a;else{if(!s&&a>2){for(;a>138;a-=138)o(32754);a>2&&(o(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(o(s),--a;a>6;a-=6)o(8304);a>2&&(o(a-3<<5|8208),a=0)}for(;a--;)o(s);a=1,s=t[h]}return{c:e.subarray(0,i),n:r}},T=function(t,n){for(var r=0,e=0;e>8,t[i+2]=255^t[i],t[i+3]=255^t[i+1];for(var s=0;s4&&!H[s[K-1]];--K);var N,P,Q,R,V=v+5<<3,W=T(h,p)+T(f,g)+l,X=T(h,M)+T(f,U)+l+14+3*K+T(q,H)+2*q[16]+3*q[17]+7*q[18];if(c>=0&&V<=W&&V<=X)return k(r,m,t.subarray(c,c+v));if(z(r,m,1+(X15&&(z(r,m,tt[B]>>5&127),m+=tt[B]>>12)}}}else N=w,P=p,Q=y,R=g;for(B=0;B255){_(r,m,N[(nt=rt>>18&31)+257]),m+=P[nt+257],nt>7&&(z(r,m,rt>>23&31),m+=e[nt]);var et=31&rt;_(r,m,Q[et]),m+=R[et],et>3&&(_(r,m,rt>>5&8191),m+=i[et])}else _(r,m,N[rt]),m+=P[rt]}return _(r,m,N[256]),m+P[256]},C=new r([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),F=new t(0),I=function(){for(var t=new Int32Array(256),n=0;n<256;++n){for(var r=n,e=9;--e;)r=(1&r&&-306674912)^r>>>1;t[n]=r}return t}(),S=function(){var t=1,n=0;return{p:function(r){for(var e=t,i=n,s=0|r.length,a=0;a!=s;){for(var o=Math.min(a+2655,s);a>16),i=(65535&i)+15*(i>>16)}t=e,n=i},d:function(){return(255&(t%=65521))<<24|(65280&t)<<8|(255&(n%=65521))<<8|n>>8}}},L=function(s,a,o,h,u){if(!u&&(u={l:1},a.dictionary)){var c=a.dictionary.subarray(-32768),v=new t(c.length+s.length);v.set(c),v.set(s,c.length),s=v,u.w=c.length}return function(s,a,o,h,u,c){var v=c.z||s.length,d=new t(h+v+5*(1+Math.ceil(v/7e3))+u),p=d.subarray(h,d.length-u),g=c.l,w=7&(c.r||0);if(a){w&&(p[0]=c.r>>3);for(var y=C[a-1],M=y>>13,E=8191&y,z=(1<7e3||q>24576)&&(N>423||!g)){w=U(s,p,0,F,I,S,O,q,G,j-G,w),q=L=O=0,G=j;for(var P=0;P<286;++P)I[P]=0;for(P=0;P<30;++P)S[P]=0}var Q=2,R=0,V=E,W=J-K&32767;if(N>2&&H==T(j-W))for(var X=Math.min(M,N)-1,Y=Math.min(32767,j),Z=Math.min(258,N);W<=Y&&--V&&J!=K;){if(s[j+Q]==s[j+Q-W]){for(var $=0;$Q){if(Q=$,R=W,$>X)break;var tt=Math.min(W,$-2),nt=0;for(P=0;Pnt&&(nt=et,K=rt)}}}W+=(J=K)-(K=_[J])&32767}if(R){F[q++]=268435456|f[Q]<<18|l[R];var it=31&f[Q],st=31&l[R];O+=e[it]+i[st],++I[257+it],++S[st],B=j+Q,++L}else F[q++]=s[j],++I[s[j]]}}for(j=Math.max(j,B);j=v&&(p[w/8|0]=g,at=v),w=k(p,w+1,s.subarray(j,at))}c.i=v}return b(d,0,h+m(w)+u)}(s,null==a.level?6:a.level,null==a.mem?u.l?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(s.length)))):20:12+a.mem,o,h,u)},O=function(t,n,r){for(;r;++n)t[n]=r,r>>>=8},j=function(){function n(n,r){if("function"==typeof n&&(r=n,n={}),this.ondata=r,this.o=n||{},this.s={l:0,i:32768,w:32768,z:32768},this.b=new t(98304),this.o.dictionary){var e=this.o.dictionary.subarray(-32768);this.b.set(e,32768-e.length),this.s.i=32768-e.length}}return n.prototype.p=function(t,n){this.ondata(L(t,this.o,0,0,this.s),n)},n.prototype.push=function(n,r){this.ondata||E(5),this.s.l&&E(4);var e=n.length+this.s.z;if(e>this.b.length){if(e>2*this.b.length-32768){var i=new t(-32768&e);i.set(this.b.subarray(0,this.s.z)),this.b=i}var s=this.b.length-this.s.z;this.b.set(n.subarray(0,s),this.s.z),this.s.z=this.b.length,this.p(this.b,!1),this.b.set(this.b.subarray(-32768)),this.b.set(n.subarray(s),32768),this.s.z=n.length-s+32768,this.s.i=32766,this.s.w=32768}else this.b.set(n,this.s.z),this.s.z+=n.length;this.s.l=1&r,(this.s.z>this.s.w+8191||r)&&(this.p(this.b,r||!1),this.s.w=this.s.i,this.s.i-=2)},n.prototype.flush=function(){this.ondata||E(5),this.s.l&&E(4),this.p(this.b,!1),this.s.w=this.s.i,this.s.i-=2},n}();function q(t,n){n||(n={});var r=function(){var t=-1;return{p:function(n){for(var r=t,e=0;e>>8;t=r},d:function(){return~t}}}(),e=t.length;r.p(t);var i,s=L(t,n,10+((i=n).filename?i.filename.length+1:0),8),a=s.length;return function(t,n){var r=n.filename;if(t[0]=31,t[1]=139,t[2]=8,t[8]=n.level<2?4:9==n.level?2:0,t[9]=3,0!=n.mtime&&O(t,4,Math.floor(new Date(n.mtime||Date.now())/1e3)),r){t[3]=8;for(var e=0;e<=r.length;++e)t[e+10]=r.charCodeAt(e)}}(s,n),O(s,a-8,r.d()),O(s,a-4,e),s}var B=function(){function t(t,n){this.c=S(),this.v=1,j.call(this,t,n)}return t.prototype.push=function(t,n){this.c.p(t),j.prototype.push.call(this,t,n)},t.prototype.p=function(t,n){var r=L(t,this.o,this.v&&(this.o.dictionary?6:2),n&&4,this.s);this.v&&(function(t,n){var r=n.level,e=0==r?0:r<6?1:9==r?3:2;if(t[0]=120,t[1]=e<<6|(n.dictionary&&32),t[1]|=31-(t[0]<<8|t[1])%31,n.dictionary){var i=S();i.p(n.dictionary),O(t,2,i.d())}}(r,this.o),this.v=0),n&&O(r,r.length-4,this.c.d()),this.ondata(r,n)},t.prototype.flush=function(){j.prototype.flush.call(this)},t}(),G="undefined"!=typeof TextEncoder&&new TextEncoder,H="undefined"!=typeof TextDecoder&&new TextDecoder;try{H.decode(F,{stream:!0})}catch(t){}var J=function(){function t(t){this.ondata=t}return t.prototype.push=function(t,n){this.ondata||E(5),this.d&&E(4),this.ondata(K(t),this.d=n||!1)},t}();function K(n,r){if(G)return G.encode(n);for(var e=n.length,i=new t(n.length+(n.length>>1)),s=0,a=function(t){i[s++]=t},o=0;oi.length){var h=new t(s+8+(e-o<<1));h.set(i),i=h}var f=n.charCodeAt(o);f<128||r?a(f):f<2048?(a(192|f>>6),a(128|63&f)):f>55295&&f<57344?(a(240|(f=65536+(1047552&f)|1023&n.charCodeAt(++o))>>18),a(128|f>>12&63),a(128|f>>6&63),a(128|63&f)):(a(224|f>>12),a(128|f>>6&63),a(128|63&f))}return b(i,0,s)}const N=new class{constructor(){this._init()}clear(){this._init()}addEvent(t){if(!t)throw new Error("Adding invalid event");const n=this._hasEvents?",":"";this.stream.push(n+t),this._hasEvents=!0}finish(){this.stream.push("]",!0);const t=function(t){let n=0;for(const r of t)n+=r.length;const r=new Uint8Array(n);for(let n=0,e=0,i=t.length;n{this._deflatedData.push(t)},this.stream=new J((t,n)=>{this.deflate.push(t,n)}),this.stream.push("[")}},P={clear:()=>{N.clear()},addEvent:t=>N.addEvent(t),finish:()=>N.finish(),compress:t=>function(t){return q(K(t))}(t)};addEventListener("message",function(t){const n=t.data.method,r=t.data.id,e=t.data.arg;if(n in P&&"function"==typeof P[n])try{const t=P[n](e);postMessage({id:r,method:n,success:!0,response:t})}catch(t){postMessage({id:r,method:n,success:!1,response:t.message}),console.error(t)}}),postMessage({id:void 0,method:"init",success:!0,response:void 0});';function T5(){const e=new Blob([C5]);return URL.createObjectURL(e)}const jv=["log","warn","error"],gc="[Replay] ";function Vu(e,t="info"){Vr({category:"console",data:{logger:"replay"},level:t,message:`${gc}${e}`},{level:t})}function k5(){let e=!1,t=!1;const n={exception:()=>{},infoTick:()=>{},setConfig:r=>{e=!!r.captureExceptions,t=!!r.traceInternals}};return he?(jv.forEach(r=>{n[r]=(...s)=>{J[r](gc,...s),t&&Vu(s.join(""),A0(r))}}),n.exception=(r,...s)=>{s.length&&n.error&&n.error(...s),J.error(gc,r),e?Pl(r,{mechanism:{handled:!0,type:"auto.function.replay.debug"}}):t&&Vu(r,"error")},n.infoTick=(...r)=>{J.log(gc,...r),t&&setTimeout(()=>Vu(r[0]),0)}):jv.forEach(r=>{n[r]=()=>{}}),n}const pe=k5();class Kh extends Error{constructor(){super(`Event buffer exceeded maximum size of ${Bh}.`)}}class GE{constructor(){this.events=[],this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return this.events.length>0}get type(){return"sync"}destroy(){this.events=[]}async addEvent(t){const n=JSON.stringify(t).length;if(this._totalSize+=n,this._totalSize>Bh)throw new Kh;this.events.push(t)}finish(){return new Promise(t=>{const n=this.events;this.clear(),t(JSON.stringify(n))})}clear(){this.events=[],this._totalSize=0,this.hasCheckout=!1}getEarliestTimestamp(){const t=this.events.map(n=>n.timestamp).sort()[0];return t?zh(t):null}}class I5{constructor(t){this._worker=t,this._id=0}ensureReady(){return this._ensureReadyPromise?this._ensureReadyPromise:(this._ensureReadyPromise=new Promise((t,n)=>{this._worker.addEventListener("message",({data:r})=>{r.success?t():n()},{once:!0}),this._worker.addEventListener("error",r=>{n(r)},{once:!0})}),this._ensureReadyPromise)}destroy(){he&&pe.log("Destroying compression worker"),this._worker.terminate()}postMessage(t,n){const r=this._getAndIncrementId();return new Promise((s,i)=>{const o=({data:a})=>{const c=a;if(c.method===t&&c.id===r){if(this._worker.removeEventListener("message",o),!c.success){he&&pe.error("Error in compression worker: ",c.response),i(new Error("Error in compression worker"));return}s(c.response)}};this._worker.addEventListener("message",o),this._worker.postMessage({id:r,method:t,arg:n})})}_getAndIncrementId(){return this._id++}}class x5{constructor(t){this._worker=new I5(t),this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this.waitForCheckout=!1}get hasEvents(){return!!this._earliestTimestamp}get type(){return"worker"}ensureReady(){return this._worker.ensureReady()}destroy(){this._worker.destroy()}addEvent(t){const n=zh(t.timestamp);(!this._earliestTimestamp||nBh?Promise.reject(new Kh):this._sendEventToWorker(r)}finish(){return this._finishRequest()}clear(){this._earliestTimestamp=null,this._totalSize=0,this.hasCheckout=!1,this._worker.postMessage("clear").then(null,t=>{he&&pe.exception(t,'Sending "clear" message to worker failed',t)})}getEarliestTimestamp(){return this._earliestTimestamp}_sendEventToWorker(t){return this._worker.postMessage("addEvent",t)}async _finishRequest(){const t=await this._worker.postMessage("finish");return this._earliestTimestamp=null,this._totalSize=0,t}}class R5{constructor(t){this._fallback=new GE,this._compression=new x5(t),this._used=this._fallback,this._ensureWorkerIsLoadedPromise=this._ensureWorkerIsLoaded()}get waitForCheckout(){return this._used.waitForCheckout}get type(){return this._used.type}get hasEvents(){return this._used.hasEvents}get hasCheckout(){return this._used.hasCheckout}set hasCheckout(t){this._used.hasCheckout=t}set waitForCheckout(t){this._used.waitForCheckout=t}destroy(){this._fallback.destroy(),this._compression.destroy()}clear(){return this._used.clear()}getEarliestTimestamp(){return this._used.getEarliestTimestamp()}addEvent(t){return this._used.addEvent(t)}async finish(){return await this.ensureWorkerIsLoaded(),this._used.finish()}ensureWorkerIsLoaded(){return this._ensureWorkerIsLoadedPromise}async _ensureWorkerIsLoaded(){try{await this._compression.ensureReady()}catch(t){he&&pe.exception(t,"Failed to load the compression worker, falling back to simple buffer");return}await this._switchToCompressionWorker()}async _switchToCompressionWorker(){const{events:t,hasCheckout:n,waitForCheckout:r}=this._fallback,s=[];for(const i of t)s.push(this._compression.addEvent(i));this._compression.hasCheckout=n,this._compression.waitForCheckout=r,this._used=this._compression;try{await Promise.all(s),this._fallback.clear()}catch(i){he&&pe.exception(i,"Failed to add events when switching buffers.")}}}function A5({useCompression:e,workerUrl:t}){if(e&&window.Worker){const n=M5(t);if(n)return n}return he&&pe.log("Using simple buffer"),new GE}function M5(e){try{const t=e||P5();if(!t)return;he&&pe.log(`Using compression worker${e?` from ${e}`:""}`);const n=new Worker(t);return new R5(n)}catch(t){he&&pe.exception(t,"Failed to create compression worker")}}function P5(){return typeof __SENTRY_EXCLUDE_REPLAY_WORKER__>"u"||!__SENTRY_EXCLUDE_REPLAY_WORKER__?T5():""}function Yh(){try{return"sessionStorage"in Ye&&!!Ye.sessionStorage}catch{return!1}}function O5(e){L5(),e.session=void 0}function L5(){if(Yh())try{Ye.sessionStorage.removeItem(Fh)}catch{}}function KE(e){return e===void 0?!1:Math.random()e.getContext().initialTimestamp+e.getOptions().maxReplayDuration?(he&&pe.infoTick(`Skipping event with timestamp ${n} because it is after maxReplayDuration`),!1):!0}function B5(e,t){try{if(typeof t=="function"&&F5(e))return t(e)}catch(n){return he&&pe.exception(n,"An error occurred in the `beforeAddRecordingEvent` callback, skipping the event..."),null}return e}function Jh(e){return!e.type}function rf(e){return e.type==="transaction"}function H5(e){return e.type==="replay_event"}function qv(e){return e.type==="feedback"}function V5(e){return(t,n)=>{if(!e.isEnabled()||!Jh(t)&&!rf(t))return;const r=n.statusCode;if(!(!r||r<200||r>=300)){if(rf(t)){U5(e,t);return}W5(e,t)}}}function U5(e,t){var r,s;const n=e.getContext();(s=(r=t.contexts)==null?void 0:r.trace)!=null&&s.trace_id&&n.traceIds.size<100&&n.traceIds.add(t.contexts.trace.trace_id)}function W5(e,t){const n=e.getContext();if(t.event_id&&n.errorIds.size<100&&n.errorIds.add(t.event_id),e.recordingMode!=="buffer"||!t.tags||!t.tags.replayId)return;const{beforeErrorSampling:r}=e.getOptions();typeof r=="function"&&!r(t)||Sa(async()=>{try{await e.sendBufferedReplayOrFlush()}catch(s){e.handleException(s)}})}function j5(e){return t=>{!e.isEnabled()||!Jh(t)||z5(e,t)}}function z5(e,t){var r,s,i;const n=(i=(s=(r=t.exception)==null?void 0:r.values)==null?void 0:s[0])==null?void 0:i.value;if(typeof n=="string"&&(n.match(/(reactjs\.org\/docs\/error-decoder\.html\?invariant=|react\.dev\/errors\/)(418|419|422|423|425)/)||n.match(/(does not match server-rendered HTML|Hydration failed because)/i))){const o=$n({category:"replay.hydrate-error",data:{url:Ls()}});wa(e,o)}}function q5(e){const t=Ee();t&&t.on("beforeAddBreadcrumb",n=>G5(e,n))}function G5(e,t){if(!e.isEnabled()||!ew(t))return;const n=K5(t);n&&wa(e,n)}function K5(e){return!ew(e)||["fetch","xhr","sentry.event","sentry.transaction"].includes(e.category)||e.category.startsWith("ui.")?null:e.category==="console"?Y5(e):$n(e)}function Y5(e){var s;const t=(s=e.data)==null?void 0:s.arguments;if(!Array.isArray(t)||t.length===0)return $n(e);let n=!1;const r=t.map(i=>{if(!i)return i;if(typeof i=="string")return i.length>Ua?(n=!0,`${i.slice(0,Ua)}…`):i;if(typeof i=="object")try{const o=vn(i,7);return JSON.stringify(o).length>Ua?(n=!0,`${JSON.stringify(o,null,2).slice(0,Ua)}…`):o}catch{}return i});return $n({...e,data:{...e.data,arguments:r,...n?{_meta:{warnings:["CONSOLE_ARG_TRUNCATED"]}}:{}}})}function ew(e){return!!e.category}function X5(e,t){var n,r,s;return e.type||!((r=(n=e.exception)==null?void 0:n.values)!=null&&r.length)?!1:!!((s=t.originalException)!=null&&s.__rrweb__)}function tw(){const e=Le().getPropagationContext().dsc;e&&delete e.replay_id;const t=Tt();if(t){const n=dr(t);delete n.replay_id}}function J5(e,t){e.triggerUserActivity(),e.addUpdate(()=>t.timestamp?(e.throttledAddEvent({type:Te.Custom,timestamp:t.timestamp*1e3,data:{tag:"breadcrumb",payload:{timestamp:t.timestamp,type:"default",category:"sentry.feedback",data:{feedbackId:t.event_id}}}}),!1):!0)}function Z5(e,t){return e.recordingMode!=="buffer"||t.message===$h||!t.exception||t.type?!1:KE(e.getOptions().errorSampleRate)}function Q5(e){return Object.assign((t,n)=>{var o;if(!e.isEnabled()||e.isPaused())return t;if(H5(t))return delete t.breadcrumbs,t;if(!Jh(t)&&!rf(t)&&!qv(t))return t;if(!e.checkAndHandleExpiredSession())return tw(),t;if(qv(t))return e.flush(),t.contexts.feedback.replay_id=e.getSessionId(),J5(e,t),t;if(X5(t,n)&&!e.getOptions()._experiments.captureExceptions)return he&&pe.log("Ignoring error from rrweb internals",t),null;const s=Z5(e,t);if((s||e.recordingMode==="session")&&(t.tags={...t.tags,replayId:e.getSessionId()}),s&&e.recordingMode==="buffer"&&((o=e.session)==null?void 0:o.sampled)==="buffer"){const a=e.session;a.dirty=!0,e.getOptions().stickySession&&Hl(a)}return t},{id:"Replay"})}function Vl(e,t){return t.map(({type:n,start:r,end:s,name:i,data:o})=>{const a=e.throttledAddEvent({type:Te.Custom,timestamp:r,data:{tag:"performanceSpan",payload:{op:n,description:i,startTimestamp:r,endTimestamp:s,data:o}}});return typeof a=="string"?Promise.resolve(null):a})}function e2(e){const{from:t,to:n}=e,r=Date.now()/1e3;return{type:"navigation.push",start:r,end:r,name:n,data:{previous:t}}}function t2(e){return t=>{if(!e.isEnabled())return;const n=e2(t);n!==null&&(e.getContext().urls.push(n.name),e.triggerUserActivity(),e.addUpdate(()=>(Vl(e,[n]),!1)))}}function n2(e,t){return he&&e.getOptions()._experiments.traceInternals?!1:xO(t,Ee())}function nw(e,t){e.isEnabled()&&t!==null&&(n2(e,t.name)||e.addUpdate(()=>(Vl(e,[t]),!0)))}function Ul(e){if(!e)return;const t=new TextEncoder;try{if(typeof e=="string")return t.encode(e).length;if(e instanceof URLSearchParams)return t.encode(e.toString()).length;if(e instanceof FormData){const n=pE(e);return t.encode(n).length}if(e instanceof Blob)return e.size;if(e instanceof ArrayBuffer)return e.byteLength}catch{}}function rw(e){if(!e)return;const t=parseInt(e,10);return isNaN(t)?void 0:t}function tl(e,t){if(!e)return{headers:{},size:void 0,_meta:{warnings:[t]}};const n={...e._meta},r=n.warnings||[];return n.warnings=[...r,t],e._meta=n,e}function sw(e,t){if(!t)return null;const{startTimestamp:n,endTimestamp:r,url:s,method:i,statusCode:o,request:a,response:c}=t;return{type:e,start:n/1e3,end:r/1e3,name:s,data:{method:i,statusCode:o,request:a,response:c}}}function Jo(e){return{headers:{},size:e,_meta:{warnings:["URL_SKIPPED"]}}}function Dr(e,t,n){if(!t&&Object.keys(e).length===0)return;if(!t)return{headers:e};if(!n)return{headers:e,size:t};const r={headers:e,size:t},{body:s,warnings:i}=r2(n);return r.body=s,i!=null&&i.length&&(r._meta={warnings:i}),r}function sf(e,t){return Object.entries(e).reduce((n,[r,s])=>{const i=r.toLowerCase();return t.includes(i)&&e[r]&&(n[i]=s),n},{})}function r2(e){if(!e||typeof e!="string")return{body:e};const t=e.length>kv,n=s2(e);if(t){const r=e.slice(0,kv);return n?{body:r,warnings:["MAYBE_JSON_TRUNCATED"]}:{body:`${r}…`,warnings:["TEXT_TRUNCATED"]}}if(n)try{return{body:JSON.parse(e)}}catch{}return{body:e}}function s2(e){const t=e[0],n=e[e.length-1];return t==="["&&n==="]"||t==="{"&&n==="}"}function nl(e,t){const n=i2(e);return er(n,t)}function i2(e,t=Ye.document.baseURI){if(e.startsWith("http://")||e.startsWith("https://")||e.startsWith(Ye.location.origin))return e;const n=new URL(e,t);if(n.origin!==new URL(t).origin)return e;const r=n.href;return!e.endsWith("/")&&r.endsWith("/")?r.slice(0,-1):r}async function o2(e,t,n){try{const r=await c2(e,t,n),s=sw("resource.fetch",r);nw(n.replay,s)}catch(r){he&&pe.exception(r,"Failed to capture fetch breadcrumb")}}function a2(e,t){const{input:n,response:r}=t,s=n?gE(n):void 0,i=Ul(s),o=r?rw(r.headers.get("content-length")):void 0;i!==void 0&&(e.data.request_body_size=i),o!==void 0&&(e.data.response_body_size=o)}async function c2(e,t,n){const r=Date.now(),{startTimestamp:s=r,endTimestamp:i=r}=t,{url:o,method:a,status_code:c=0,request_body_size:l,response_body_size:d}=e.data,u=nl(o,n.networkDetailAllowUrls)&&!nl(o,n.networkDetailDenyUrls),f=u?l2(n,t.input,l):Jo(l),h=await u2(u,n,t.response,d);return{startTimestamp:s,endTimestamp:i,url:o,method:a,statusCode:c,request:f,response:h}}function l2({networkCaptureBodies:e,networkRequestHeaders:t},n,r){const s=n?h2(n,t):{};if(!e)return Dr(s,r,void 0);const i=gE(n),[o,a]=mE(i,pe),c=Dr(s,r,o);return a?tl(c,a):c}async function u2(e,{networkCaptureBodies:t,networkResponseHeaders:n},r,s){if(!e&&s!==void 0)return Jo(s);const i=r?iw(r.headers,n):{};if(!r||!t&&s!==void 0)return Dr(i,s,void 0);const[o,a]=await f2(r),c=d2(o,{networkCaptureBodies:t,responseBodySize:s,captureDetails:e,headers:i});return a?tl(c,a):c}function d2(e,{networkCaptureBodies:t,responseBodySize:n,captureDetails:r,headers:s}){try{const i=e!=null&&e.length&&n===void 0?Ul(e):n;return r?t?Dr(s,i,e):Dr(s,i,void 0):Jo(i)}catch(i){return he&&pe.exception(i,"Failed to serialize response body"),Dr(s,n,void 0)}}async function f2(e){const t=p2(e);if(!t)return[void 0,"BODY_PARSE_ERROR"];try{return[await m2(t)]}catch(n){return n instanceof Error&&n.message.indexOf("Timeout")>-1?(he&&pe.warn("Parsing text body from response timed out"),[void 0,"BODY_PARSE_TIMEOUT"]):(he&&pe.exception(n,"Failed to get text body from response"),[void 0,"BODY_PARSE_ERROR"])}}function iw(e,t){const n={};return t.forEach(r=>{e.get(r)&&(n[r]=e.get(r))}),n}function h2(e,t){return e.length===1&&typeof e[0]!="string"?Gv(e[0],t):e.length===2?Gv(e[1],t):{}}function Gv(e,t){if(!e)return{};const n=e.headers;return n?n instanceof Headers?iw(n,t):Array.isArray(n)?{}:sf(n,t):{}}function p2(e){try{return e.clone()}catch(t){he&&pe.exception(t,"Failed to clone response body")}}function m2(e){return new Promise((t,n)=>{const r=Sa(()=>n(new Error("Timeout while trying to read response body")),500);g2(e).then(s=>t(s),s=>n(s)).finally(()=>clearTimeout(r))})}async function g2(e){return await e.text()}async function v2(e,t,n){try{const r=_2(e,t,n),s=sw("resource.xhr",r);nw(n.replay,s)}catch(r){he&&pe.exception(r,"Failed to capture xhr breadcrumb")}}function y2(e,t){const{xhr:n,input:r}=t;if(!n)return;const s=Ul(r),i=n.getResponseHeader("content-length")?rw(n.getResponseHeader("content-length")):E2(n.response,n.responseType);s!==void 0&&(e.data.request_body_size=s),i!==void 0&&(e.data.response_body_size=i)}function _2(e,t,n){const r=Date.now(),{startTimestamp:s=r,endTimestamp:i=r,input:o,xhr:a}=t,{url:c,method:l,status_code:d=0,request_body_size:u,response_body_size:f}=e.data;if(!c)return null;if(!a||!nl(c,n.networkDetailAllowUrls)||nl(c,n.networkDetailDenyUrls)){const R=Jo(u),E=Jo(f);return{startTimestamp:s,endTimestamp:i,url:c,method:l,statusCode:d,request:R,response:E}}const h=a[ds],p=h?sf(h.request_headers,n.networkRequestHeaders):{},m=sf(vE(a),n.networkResponseHeaders),[v,g]=n.networkCaptureBodies?mE(o,pe):[void 0],[y,_]=n.networkCaptureBodies?b2(a):[void 0],S=Dr(p,u,v),M=Dr(m,f,y);return{startTimestamp:s,endTimestamp:i,url:c,method:l,statusCode:d,request:g?tl(S,g):S,response:_?tl(M,_):M}}function b2(e){const t=[];try{return[e.responseText]}catch(n){t.push(n)}try{return S2(e.response,e.responseType)}catch(n){t.push(n)}return he&&pe.warn("Failed to get xhr response body",...t),[void 0]}function S2(e,t){try{if(typeof e=="string")return[e];if(e instanceof Document)return[e.body.outerHTML];if(t==="json"&&e&&typeof e=="object")return[JSON.stringify(e)];if(!e)return[void 0]}catch(n){return he&&pe.exception(n,"Failed to serialize body",e),[void 0,"BODY_PARSE_ERROR"]}return he&&pe.log("Skipping network body because of body type",e),[void 0,"UNPARSEABLE_BODY_TYPE"]}function E2(e,t){try{const n=t==="json"&&e&&typeof e=="object"?JSON.stringify(e):e;return Ul(n)}catch{return}}function w2(e){const t=Ee();try{const{networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:s,networkRequestHeaders:i,networkResponseHeaders:o}=e.getOptions(),a={replay:e,networkDetailAllowUrls:n,networkDetailDenyUrls:r,networkCaptureBodies:s,networkRequestHeaders:i,networkResponseHeaders:o};t&&t.on("beforeAddBreadcrumb",(c,l)=>C2(a,c,l))}catch{}}function C2(e,t,n){if(t.data)try{T2(t)&&I2(n)&&(y2(t,n),v2(t,n,e)),k2(t)&&x2(n)&&(a2(t,n),o2(t,n,e))}catch(r){he&&pe.exception(r,"Error when enriching network breadcrumb")}}function T2(e){return e.category==="xhr"}function k2(e){return e.category==="fetch"}function I2(e){return e==null?void 0:e.xhr}function x2(e){return e==null?void 0:e.response}function R2(e){const t=Ee();dE(o5(e)),Dl(t2(e)),q5(e),w2(e);const n=Q5(e);KP(n),t&&(t.on("beforeSendEvent",j5(e)),t.on("afterSendEvent",V5(e)),t.on("createDsc",r=>{const s=e.getSessionId();s&&e.isEnabled()&&e.recordingMode==="session"&&e.checkAndHandleExpiredSession()&&(r.replay_id=s)}),t.on("spanStart",r=>{e.lastActiveSpan=r}),t.on("spanEnd",r=>{e.lastActiveSpan=r}),t.on("beforeSendFeedback",async(r,s)=>{var o;const i=e.getSessionId();s!=null&&s.includeReplay&&e.isEnabled()&&i&&((o=r.contexts)!=null&&o.feedback)&&(r.contexts.feedback.source==="api"&&await e.sendBufferedReplayOrFlush(),r.contexts.feedback.replay_id=i)}),t.on("openFeedbackWidget",async()=>{await e.sendBufferedReplayOrFlush()}))}async function A2(e){try{return Promise.all(Vl(e,[M2(Ye.performance.memory)]))}catch{return[]}}function M2(e){const{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}=e,s=Date.now()/1e3;return{type:"memory",name:"memory",start:s,end:s,data:{memory:{jsHeapSizeLimit:t,totalJSHeapSize:n,usedJSHeapSize:r}}}}function P2(e,t,n){return LO(e,t,{...n,setTimeoutImpl:Sa})}const an=xe.navigator;function O2(){return/iPhone|iPad|iPod/i.test((an==null?void 0:an.userAgent)??"")||/Macintosh/i.test((an==null?void 0:an.userAgent)??"")&&(an!=null&&an.maxTouchPoints)&&(an==null?void 0:an.maxTouchPoints)>1?{sampling:{mousemove:!1}}:{}}function L2(e){let t=!1;return(n,r)=>{if(!e.checkAndHandleExpiredSession()){he&&pe.warn("Received replay event after session expired.");return}const s=r||!t;t=!0,e.clickDetector&&t5(e.clickDetector,n),e.addUpdate(()=>{if(e.recordingMode==="buffer"&&s&&e.setInitialState(),!Xh(e,n,s))return!0;if(!s)return!1;const i=e.session;if(D2(e,s),e.recordingMode==="buffer"&&i&&e.eventBuffer&&!i.dirty){const o=e.eventBuffer.getEarliestTimestamp();o&&(he&&pe.log(`Updating session start time to earliest event in buffer to ${new Date(o)}`),i.started=o,e.getOptions().stickySession&&Hl(i))}return i!=null&&i.previousSessionId||e.recordingMode==="session"&&e.flush(),!0})}}function N2(e){const t=e.getOptions();return{type:Te.Custom,timestamp:Date.now(),data:{tag:"options",payload:{shouldRecordCanvas:e.isRecordingCanvas(),sessionSampleRate:t.sessionSampleRate,errorSampleRate:t.errorSampleRate,useCompressionOption:t.useCompression,blockAllMedia:t.blockAllMedia,maskAllText:t.maskAllText,maskAllInputs:t.maskAllInputs,useCompression:e.eventBuffer?e.eventBuffer.type==="worker":!1,networkDetailHasUrls:t.networkDetailAllowUrls.length>0,networkCaptureBodies:t.networkCaptureBodies,networkRequestHasHeaders:t.networkRequestHeaders.length>0,networkResponseHasHeaders:t.networkResponseHeaders.length>0}}}}function D2(e,t){!t||!e.session||e.session.segmentId!==0||Xh(e,N2(e),!1)}function F2(e){if(!e)return null;try{return e.nodeType===e.ELEMENT_NODE?e:e.parentElement}catch{return null}}function $2(e,t,n,r){return Jr(i0(e,mh(e),r,n),[[{type:"replay_event"},e],[{type:"replay_recording",length:typeof t=="string"?new TextEncoder().encode(t).length:t.length},t]])}function B2({recordingData:e,headers:t}){let n;const r=`${JSON.stringify(t)} +`;if(typeof e=="string")n=`${r}${e}`;else{const i=new TextEncoder().encode(r);n=new Uint8Array(i.length+e.length),n.set(i),n.set(e,i.length)}return n}async function H2({client:e,scope:t,replayId:n,event:r}){const s=typeof e._integrations=="object"&&e._integrations!==null&&!Array.isArray(e._integrations)?Object.keys(e._integrations):void 0,i={event_id:n,integrations:s};e.emit("preprocessEvent",r,i);const o=await d0(e.getOptions(),r,i,t,e,rn());if(!o)return null;e.emit("postprocessEvent",o,i),o.platform=o.platform||"javascript";const a=e.getSdkMetadata(),{name:c,version:l,settings:d}=(a==null?void 0:a.sdk)||{};return o.sdk={...o.sdk,name:c||"sentry.javascript.unknown",version:l||"0.0.0",settings:d},o}async function V2({recordingData:e,replayId:t,segmentId:n,eventContext:r,timestamp:s,session:i}){const o=B2({recordingData:e,headers:{segment_id:n}}),{urls:a,errorIds:c,traceIds:l,initialTimestamp:d}=r,u=Ee(),f=Le(),h=u==null?void 0:u.getTransport(),p=u==null?void 0:u.getDsn();if(!u||!h||!p||!i.sampled)return Promise.resolve({});const m={type:v$,replay_start_timestamp:d/1e3,timestamp:s/1e3,error_ids:c,trace_ids:l,urls:a,replay_id:t,segment_id:n,replay_type:i.sampled},v=await H2({scope:f,client:u,replayId:t,event:m});if(!v)return u.recordDroppedEvent("event_processor","replay"),he&&pe.log("An event processor returned `null`, will not send event."),Promise.resolve({});delete v.sdkProcessingMetadata;const g=$2(v,o,p,u.getOptions().tunnel);let y;try{y=await h.send(g)}catch(S){const M=new Error($h);try{M.cause=S}catch{}throw M}if(typeof y.statusCode=="number"&&(y.statusCode<200||y.statusCode>=300))throw new ow(y.statusCode);const _=S0({},y);if(b0(_,"replay"))throw new Zh(_);return y}class ow extends Error{constructor(t){super(`Transport returned status code ${t}`)}}class Zh extends Error{constructor(t){super("Rate limit hit"),this.rateLimits=t}}async function aw(e,t={count:0,interval:w$}){const{recordingData:n,onError:r}=e;if(n.length)try{return await V2(e),!0}catch(s){if(s instanceof ow||s instanceof Zh)throw s;if(jP("Replays",{_retryCount:t.count}),r&&r(s),t.count>=C$){const i=new Error(`${$h} - max retries exceeded`);try{i.cause=s}catch{}throw i}return t.interval*=++t.count,new Promise((i,o)=>{Sa(async()=>{try{await aw(e,t),i(!0)}catch(a){o(a)}},t.interval)})}}const cw="__THROTTLED",U2="__SKIPPED";function W2(e,t,n){const r=new Map,s=a=>{const c=a-n;r.forEach((l,d)=>{d[...r.values()].reduce((a,c)=>a+c,0);let o=!1;return(...a)=>{const c=Math.floor(Date.now()/1e3);if(s(c),i()>=t){const d=o;return o=!0,d?U2:cw}o=!1;const l=r.get(c)||0;return r.set(c,l+1),e(...a)}}class j2{constructor({options:t,recordingOptions:n}){this.eventBuffer=null,this.performanceEntries=[],this.replayPerformanceEntries=[],this.recordingMode="session",this.timeouts={sessionIdlePause:y$,sessionIdleExpire:_$},this._lastActivity=Date.now(),this._isEnabled=!1,this._isPaused=!1,this._requiresManualStart=!1,this._hasInitializedCoreListeners=!1,this._context={errorIds:new Set,traceIds:new Set,urls:[],initialTimestamp:Date.now(),initialUrl:""},this._recordingOptions=n,this._options=t,this._debouncedFlush=P2(()=>this._flush(),this._options.flushMinDelay,{maxWait:this._options.flushMaxDelay}),this._throttledAddEvent=W2((o,a)=>$5(this,o,a),300,5);const{slowClickTimeout:r,slowClickIgnoreSelectors:s}=this.getOptions(),i=r?{threshold:Math.min(T$,r),timeout:r,scrollTimeout:k$,ignoreSelector:s?s.join(","):""}:void 0;if(i&&(this.clickDetector=new JB(this,i)),he){const o=t._experiments;pe.setConfig({captureExceptions:!!o.captureExceptions,traceInternals:!!o.traceInternals})}this._handleVisibilityChange=()=>{Ye.document.visibilityState==="visible"?this._doChangeToForegroundTasks():this._doChangeToBackgroundTasks()},this._handleWindowBlur=()=>{const o=$n({category:"ui.blur"});this._doChangeToBackgroundTasks(o)},this._handleWindowFocus=()=>{const o=$n({category:"ui.focus"});this._doChangeToForegroundTasks(o)},this._handleKeyboardEvent=o=>{u5(this,o)}}getContext(){return this._context}isEnabled(){return this._isEnabled}isPaused(){return this._isPaused}isRecordingCanvas(){return!!this._canvas}getOptions(){return this._options}handleException(t){he&&pe.exception(t),this._options.onError&&this._options.onError(t)}initializeSampling(t){const{errorSampleRate:n,sessionSampleRate:r}=this._options,s=n<=0&&r<=0;if(this._requiresManualStart=s,!s){if(this._initializeSessionForSampling(t),!this.session){he&&pe.exception(new Error("Unable to initialize and create session"));return}this.session.sampled!==!1&&(this.recordingMode=this.session.sampled==="buffer"&&this.session.segmentId===0?"buffer":"session",he&&pe.infoTick(`Starting replay in ${this.recordingMode} mode`),this._initializeRecording())}}start(){if(this._isEnabled&&this.recordingMode==="session"){he&&pe.log("Recording is already in progress");return}if(this._isEnabled&&this.recordingMode==="buffer"){he&&pe.log("Buffering is in progress, call `flush()` to save the replay");return}he&&pe.infoTick("Starting replay in session mode"),this._updateUserActivity();const t=Uu({maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire},{stickySession:this._options.stickySession,sessionSampleRate:1,allowBuffering:!1});this.session=t,this.recordingMode="session",this._initializeRecording()}startBuffering(){if(this._isEnabled){he&&pe.log("Buffering is in progress, call `flush()` to save the replay");return}he&&pe.infoTick("Starting replay in buffer mode");const t=Uu({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration},{stickySession:this._options.stickySession,sessionSampleRate:0,allowBuffering:!0});this.session=t,this.recordingMode="buffer",this._initializeRecording()}startRecording(){try{const t=this._canvas;this._stopRecording=nr({...this._recordingOptions,...this.recordingMode==="buffer"?{checkoutEveryNms:E$}:this._options._experiments.continuousCheckout&&{checkoutEveryNms:Math.max(36e4,this._options._experiments.continuousCheckout)},emit:L2(this),...O2(),onMutation:this._onMutationHandler.bind(this),...t?{recordCanvas:t.recordCanvas,getCanvasManager:t.getCanvasManager,sampling:t.sampling,dataURLOptions:t.dataURLOptions}:{}})}catch(t){this.handleException(t)}}stopRecording(){try{return this._stopRecording&&(this._stopRecording(),this._stopRecording=void 0),!0}catch(t){return this.handleException(t),!1}}async stop({forceFlush:t=!1,reason:n}={}){var r;if(this._isEnabled){this._isEnabled=!1,this.recordingMode="buffer";try{he&&pe.log(`Stopping Replay${n?` triggered by ${n}`:""}`),tw(),this._removeListeners(),this.stopRecording(),this._debouncedFlush.cancel(),t&&await this._flush({force:!0}),(r=this.eventBuffer)==null||r.destroy(),this.eventBuffer=null,O5(this)}catch(s){this.handleException(s)}}}pause(){this._isPaused||(this._isPaused=!0,this.stopRecording(),he&&pe.log("Pausing replay"))}resume(){!this._isPaused||!this._checkSession()||(this._isPaused=!1,this.startRecording(),he&&pe.log("Resuming replay"))}async sendBufferedReplayOrFlush({continueRecording:t=!0}={}){if(this.recordingMode==="session")return this.flushImmediate();const n=Date.now();he&&pe.log("Converting buffer to session"),await this.flushImmediate();const r=this.stopRecording();!t||!r||this.recordingMode!=="session"&&(this.recordingMode="session",this.session&&(this.session.dirty=!1,this._updateUserActivity(n),this._updateSessionActivity(n),this._maybeSaveSession()),this.startRecording())}addUpdate(t){const n=t();this.recordingMode==="buffer"||!this._isEnabled||n!==!0&&this._debouncedFlush()}triggerUserActivity(){if(this._updateUserActivity(),!this._stopRecording){if(!this._checkSession())return;this.resume();return}this.checkAndHandleExpiredSession(),this._updateSessionActivity()}updateUserActivity(){this._updateUserActivity(),this._updateSessionActivity()}conditionalFlush(){return this.recordingMode==="buffer"?Promise.resolve():this.flushImmediate()}flush(){return this._debouncedFlush()}flushImmediate(){return this._debouncedFlush(),this._debouncedFlush.flush()}cancelFlush(){this._debouncedFlush.cancel()}getSessionId(t){var n,r;if(!(t&&((n=this.session)==null?void 0:n.sampled)===!1))return(r=this.session)==null?void 0:r.id}checkAndHandleExpiredSession(){if(this._lastActivity&&nf(this._lastActivity,this.timeouts.sessionIdlePause)&&this.session&&this.session.sampled==="session"){this.pause();return}return!!this._checkSession()}setInitialState(){const t=`${Ye.location.pathname}${Ye.location.hash}${Ye.location.search}`,n=`${Ye.location.origin}${t}`;this.performanceEntries=[],this.replayPerformanceEntries=[],this._clearContext(),this._context.initialUrl=n,this._context.initialTimestamp=Date.now(),this._context.urls.push(n)}throttledAddEvent(t,n){const r=this._throttledAddEvent(t,n);if(r===cw){const s=$n({category:"replay.throttled"});this.addUpdate(()=>!Xh(this,{type:jB,timestamp:s.timestamp||0,data:{tag:"breadcrumb",payload:s,metric:!0}}))}return r}getCurrentRoute(){const t=this.lastActiveSpan||Tt(),n=t&&wt(t),s=(n&&Re(n).data||{})[jt];if(!(!n||!s||!["route","custom"].includes(s)))return Re(n).description}_initializeRecording(){this.setInitialState(),this._updateSessionActivity(),this.eventBuffer=A5({useCompression:this._options.useCompression,workerUrl:this._options.workerUrl}),this._removeListeners(),this._addListeners(),this._isEnabled=!0,this._isPaused=!1,this.startRecording()}_initializeSessionForSampling(t){const n=this._options.errorSampleRate>0,r=Uu({sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration,previousSessionId:t},{stickySession:this._options.stickySession,sessionSampleRate:this._options.sessionSampleRate,allowBuffering:n});this.session=r}_checkSession(){if(!this.session)return!1;const t=this.session;return JE(t,{sessionIdleExpire:this.timeouts.sessionIdleExpire,maxReplayDuration:this._options.maxReplayDuration})?(this._refreshSession(t),!1):!0}async _refreshSession(t){this._isEnabled&&(await this.stop({reason:"refresh session"}),this.initializeSampling(t.id))}_addListeners(){try{Ye.document.addEventListener("visibilitychange",this._handleVisibilityChange),Ye.addEventListener("blur",this._handleWindowBlur),Ye.addEventListener("focus",this._handleWindowFocus),Ye.addEventListener("keydown",this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.addListeners(),this._hasInitializedCoreListeners||(R2(this),this._hasInitializedCoreListeners=!0)}catch(t){this.handleException(t)}this._performanceCleanupCallback=w5(this)}_removeListeners(){try{Ye.document.removeEventListener("visibilitychange",this._handleVisibilityChange),Ye.removeEventListener("blur",this._handleWindowBlur),Ye.removeEventListener("focus",this._handleWindowFocus),Ye.removeEventListener("keydown",this._handleKeyboardEvent),this.clickDetector&&this.clickDetector.removeListeners(),this._performanceCleanupCallback&&this._performanceCleanupCallback()}catch(t){this.handleException(t)}}_doChangeToBackgroundTasks(t){!this.session||XE(this.session,{maxReplayDuration:this._options.maxReplayDuration,sessionIdleExpire:this.timeouts.sessionIdleExpire})||(t&&this._createCustomBreadcrumb(t),this.conditionalFlush())}_doChangeToForegroundTasks(t){if(!this.session)return;if(!this.checkAndHandleExpiredSession()){he&&pe.log("Document has become active, but session has expired");return}t&&this._createCustomBreadcrumb(t)}_updateUserActivity(t=Date.now()){this._lastActivity=t}_updateSessionActivity(t=Date.now()){this.session&&(this.session.lastActivity=t,this._maybeSaveSession())}_createCustomBreadcrumb(t){this.addUpdate(()=>{this.throttledAddEvent({type:Te.Custom,timestamp:t.timestamp||0,data:{tag:"breadcrumb",payload:t}})})}_addPerformanceEntries(){let t=p5(this.performanceEntries).concat(this.replayPerformanceEntries);if(this.performanceEntries=[],this.replayPerformanceEntries=[],this._requiresManualStart){const n=this._context.initialTimestamp/1e3;t=t.filter(r=>r.start>=n)}return Promise.all(Vl(this,t))}_clearContext(){this._context.errorIds.clear(),this._context.traceIds.clear(),this._context.urls=[]}_updateInitialTimestampFromEventBuffer(){const{session:t,eventBuffer:n}=this;if(!t||!n||this._requiresManualStart||t.segmentId)return;const r=n.getEarliestTimestamp();r&&rthis._options.maxReplayDuration+3e4)throw new Error("Session is too long, not sending replay");const s=this._popEventContext(),i=this.session.segmentId++;this._maybeSaveSession();const o=await this.eventBuffer.finish();await aw({replayId:t,recordingData:o,segmentId:i,eventContext:s,session:this.session,timestamp:r,onError:a=>this.handleException(a)})}catch(r){this.handleException(r),this.stop({reason:"sendReplay"});const s=Ee();if(s){const i=r instanceof Zh?"ratelimit_backoff":"send_error";s.recordDroppedEvent(i,"replay")}}}async _flush({force:t=!1}={}){if(!this._isEnabled&&!t)return;if(!this.checkAndHandleExpiredSession()){he&&pe.error("Attempting to finish replay event after session expired.");return}if(!this.session)return;const n=this.session.started,s=Date.now()-n;this._debouncedFlush.cancel();const i=sthis._options.maxReplayDuration+5e3;if(i||o){he&&pe.log(`Session duration (${Math.floor(s/1e3)}s) is too ${i?"short":"long"}, not sending replay.`),i&&this._debouncedFlush();return}const a=this.eventBuffer;a&&this.session.segmentId===0&&!a.hasCheckout&&he&&pe.log("Flushing initial segment without checkout.");const c=!!this._flushLock;this._flushLock||(this._flushLock=this._runFlush());try{await this._flushLock}catch(l){this.handleException(l)}finally{this._flushLock=void 0,c&&this._debouncedFlush()}}_maybeSaveSession(){this.session&&this._options.stickySession&&Hl(this.session)}_onMutationHandler(t){const{ignoreMutations:n}=this._options._experiments;if(n!=null&&n.length&&t.some(a=>{const c=F2(a.target),l=n.join(",");return c==null?void 0:c.matches(l)}))return!1;const r=t.length,s=this._options.mutationLimit,i=this._options.mutationBreadcrumbLimit,o=s&&r>s;if(r>i||o){const a=$n({category:"replay.mutations",data:{count:r,limit:o}});this._createCustomBreadcrumb(a)}return o?(this.stop({reason:"mutationLimit",forceFlush:this.recordingMode==="session"}),!1):!0}}function io(e,t){return[...e,...t].join(",")}function z2({mask:e,unmask:t,block:n,unblock:r,ignore:s}){const i=["base","iframe[srcdoc]:not([src])"],o=io(e,[".sentry-mask","[data-sentry-mask]"]),a=io(t,[]);return{maskTextSelector:o,unmaskTextSelector:a,blockSelector:io(n,[".sentry-block","[data-sentry-block]",...i]),unblockSelector:io(r,[]),ignoreSelector:io(s,[".sentry-ignore","[data-sentry-ignore]",'input[type="file"]'])}}function q2({el:e,key:t,maskAttributes:n,maskAllText:r,privacyOptions:s,value:i}){return!r||s.unmaskTextSelector&&e.matches(s.unmaskTextSelector)?i:n.includes(t)||t==="value"&&e.tagName==="INPUT"&&["submit","button"].includes(e.getAttribute("type")||"")?i.replace(/[\S]/g,"*"):i}const Kv='img,image,svg,video,object,picture,embed,map,audio,link[rel="icon"],link[rel="apple-touch-icon"]',G2=["content-length","content-type","accept"],K2=Symbol.for("sentry__originalRequestBody");let Yv=!1,Xv=!1;function Y2(){if(typeof Request>"u"||Xv)return;const e=Request;try{const t=function(n,r){const s=new e(n,r);return(r==null?void 0:r.body)!=null&&(s[K2]=r.body),s};t.prototype=e.prototype,xe.Request=t,Xv=!0}catch{}}const X2=e=>new J2(e);class J2{constructor({flushMinDelay:t=b$,flushMaxDelay:n=S$,minReplayDuration:r=I$,maxReplayDuration:s=Iv,stickySession:i=!0,useCompression:o=!0,workerUrl:a,_experiments:c={},maskAllText:l=!0,maskAllInputs:d=!0,blockAllMedia:u=!0,mutationBreadcrumbLimit:f=750,mutationLimit:h=1e4,slowClickTimeout:p=7e3,slowClickIgnoreSelectors:m=[],networkDetailAllowUrls:v=[],networkDetailDenyUrls:g=[],networkCaptureBodies:y=!0,networkRequestHeaders:_=[],networkResponseHeaders:S=[],mask:M=[],maskAttributes:R=["title","placeholder","aria-label"],unmask:E=[],block:C=[],unblock:I=[],ignore:A=[],maskFn:O,beforeAddRecordingEvent:T,beforeErrorSampling:P,onError:N,attachRawBodyFromRequest:z=!1}={}){this.name="Replay";const X=z2({mask:M,unmask:E,block:C,unblock:I,ignore:A});if(this._recordingOptions={maskAllInputs:d,maskAllText:l,maskInputOptions:{password:!0},maskTextFn:O,maskInputFn:O,maskAttributeFn:(q,D,re)=>q2({maskAttributes:R,maskAllText:l,privacyOptions:X,key:q,value:D,el:re}),...X,slimDOMOptions:"all",inlineStylesheet:!0,inlineImages:!1,collectFonts:!0,errorHandler:q=>{try{q.__rrweb__=!0}catch{}},recordCrossOriginIframes:!!c.recordCrossOriginIframes},this._initialOptions={flushMinDelay:t,flushMaxDelay:n,minReplayDuration:Math.min(r,x$),maxReplayDuration:Math.min(s,Iv),stickySession:i,useCompression:o,workerUrl:a,blockAllMedia:u,maskAllInputs:d,maskAllText:l,mutationBreadcrumbLimit:f,mutationLimit:h,slowClickTimeout:p,slowClickIgnoreSelectors:m,networkDetailAllowUrls:v,networkDetailDenyUrls:g,networkCaptureBodies:y,networkRequestHeaders:Jv(_),networkResponseHeaders:Jv(S),beforeAddRecordingEvent:T,beforeErrorSampling:P,onError:N,attachRawBodyFromRequest:z,_experiments:c},this._initialOptions.blockAllMedia&&(this._recordingOptions.blockSelector=this._recordingOptions.blockSelector?`${this._recordingOptions.blockSelector},${Kv}`:Kv,this._recordingOptions.ignoreCSSAttributes=new Set(["background-image"])),this._isInitialized&&Wc())throw new Error("Multiple Sentry Session Replay instances are not supported");this._isInitialized=!0}get _isInitialized(){return Yv}set _isInitialized(t){Yv=t}afterAllSetup(t){!Wc()||this._replay||(this._initialOptions.attachRawBodyFromRequest&&Y2(),this._setup(t),this._initialize(t))}start(){this._replay&&this._replay.start()}startBuffering(){this._replay&&this._replay.startBuffering()}stop(){return this._replay?this._replay.stop({forceFlush:this._replay.recordingMode==="session"}):Promise.resolve()}flush(t){return this._replay?this._replay.isEnabled()?this._replay.sendBufferedReplayOrFlush(t):(this._replay.start(),Promise.resolve()):Promise.resolve()}getReplayId(t){var n;if((n=this._replay)!=null&&n.isEnabled())return this._replay.getSessionId(t)}getRecordingMode(){var t;if((t=this._replay)!=null&&t.isEnabled())return this._replay.recordingMode}_initialize(t){this._replay&&(this._maybeLoadFromReplayCanvasIntegration(t),this._replay.initializeSampling())}_setup(t){const n=Z2(this._initialOptions,t);this._replay=new j2({options:n,recordingOptions:this._recordingOptions})}_maybeLoadFromReplayCanvasIntegration(t){try{const n=t.getIntegrationByName("ReplayCanvas");if(!n)return;this._replay._canvas=n.getOptions()}catch{}}}function Z2(e,t){const n=t.getOptions(),r={sessionSampleRate:0,errorSampleRate:0,...e},s=Is(n.replaysSessionSampleRate),i=Is(n.replaysOnErrorSampleRate);return s==null&&i==null&&vr(()=>{console.warn("Replay is disabled because neither `replaysSessionSampleRate` nor `replaysOnErrorSampleRate` are set.")}),s!=null&&(r.sessionSampleRate=s),i!=null&&(r.errorSampleRate=i),r}function Jv(e){return[...G2,...e.map(t=>t.toLowerCase())]}function Q2(e){return e.split(",").some(t=>t.trim().startsWith("sentry-"))}function lw(e){try{return new URL(e,Pe.location.origin).href}catch{return}}function e3(e){return e.entryType==="resource"&&"initiatorType"in e&&typeof e.nextHopProtocol=="string"&&(e.initiatorType==="fetch"||e.initiatorType==="xmlhttprequest")}function uw(e){try{return new Headers(e)}catch{return}}const Zv=new WeakMap,Wu=new Map,dw={traceFetch:!0,traceXHR:!0,enableHTTPTimings:!0,trackFetchStreamPerformance:!1};function t3(e,t){const{traceFetch:n,traceXHR:r,trackFetchStreamPerformance:s,shouldCreateSpanForRequest:i,enableHTTPTimings:o,tracePropagationTargets:a,onRequestSpanStart:c,onRequestSpanEnd:l}={...dw,...t},d=typeof i=="function"?i:p=>!0,u=p=>n3(p,a),f={},h=e.getOptions().propagateTraceparent;n&&(e.addEventProcessor(p=>(p.type==="transaction"&&p.spans&&p.spans.forEach(m=>{if(m.op==="http.client"){const v=Wu.get(m.span_id);v&&(m.timestamp=v/1e3,Wu.delete(m.span_id))}}),p)),s&&mL(p=>{if(p.response){const m=Zv.get(p.response);m&&p.endTimestamp&&Wu.set(m,p.endTimestamp)}}),L0(p=>{const m=iL(p,d,u,f,{propagateTraceparent:h,onRequestSpanEnd:l});if(p.response&&p.fetchData.__span&&Zv.set(p.response,p.fetchData.__span),m){const v=lw(p.fetchData.url),g=v?Ss(v).host:void 0;m.setAttributes({"http.url":v?Lr(v):void 0,"server.address":g}),o&&Qv(m),c==null||c(m,{headers:p.headers})}})),r&&hE(p=>{var v;const m=r3(p,d,u,f,h,l);m&&(o&&Qv(m),c==null||c(m,{headers:uw((v=p.xhr.__sentry_xhr_v3__)==null?void 0:v.request_headers)}))})}function Qv(e){const{url:t}=Re(e).data;if(!t||typeof t!="string")return;const n=Rs("resource",({entries:r})=>{r.forEach(s=>{e3(s)&&s.name.endsWith(t)&&(e.setAttributes(uE(s)),setTimeout(n))})})}function n3(e,t){const n=Ls();if(n){let r,s;try{r=new URL(e,n),s=new URL(n).origin}catch{return!1}const i=r.origin===s;return t?er(r.toString(),t)||i&&er(r.pathname,t):i}else{const r=!!e.match(/^\/(?!\/)/);return t?er(e,t):r}}function r3(e,t,n,r,s,i){const o=e.xhr,a=o==null?void 0:o[ds];if(!o||o.__sentry_own_request__||!a)return;const{url:c,method:l}=a,d=fn()&&t(c);if(e.endTimestamp&&d){const g=o.__sentry_xhr_span_id__;if(!g)return;const y=r[g];y&&a.status_code!==void 0&&(WS(y,a.status_code),y.end(),i==null||i(y,{headers:uw(vE(o)),error:e.error}),delete r[g]);return}const u=lw(c),f=Ss(u||c),h=Lr(IO(c)),p=!!Tt(),m=d&&p?Hr({name:`${l} ${h}`,attributes:{url:Lr(c),type:"xhr","http.method":l,"http.url":u?Lr(u):void 0,"server.address":f==null?void 0:f.host,[st]:"auto.http.browser",[ur]:"http.client",...(f==null?void 0:f.search)&&{"http.query":f==null?void 0:f.search},...(f==null?void 0:f.hash)&&{"http.fragment":f==null?void 0:f.hash}}}):new Br;o.__sentry_xhr_span_id__=m.spanContext().spanId,r[o.__sentry_xhr_span_id__]=m,n(c)&&s3(o,fn()&&p?m:void 0,s);const v=Ee();return v&&v.emit("beforeOutgoingRequestSpan",m,e),m}function s3(e,t,n){const{"sentry-trace":r,baggage:s,traceparent:i}=R0({span:t,propagateTraceparent:n});r&&i3(e,r,s,i)}function i3(e,t,n,r){var i;const s=(i=e.__sentry_xhr_v3__)==null?void 0:i.request_headers;if(!(s!=null&&s["sentry-trace"]||!e.setRequestHeader))try{if(e.setRequestHeader("sentry-trace",t),r&&!(s!=null&&s.traceparent)&&e.setRequestHeader("traceparent",r),n){const o=s==null?void 0:s.baggage;(!o||!Q2(o))&&e.setRequestHeader("baggage",n)}}catch{}}function o3(){Pe.document?Pe.document.addEventListener("visibilitychange",()=>{const e=Tt();if(!e)return;const t=wt(e);if(Pe.document.hidden&&t){const n="cancelled",{op:r,status:s}=Re(t);pn&&J.log(`[Tracing] Transaction: ${n} -> since tab moved to the background, op: ${r}`),s||t.setStatus({code:ht,message:n}),t.setAttribute("sentry.cancellation_reason","document.hidden"),t.end()}}):pn&&J.warn("[Tracing] Could not set up background tab detection due to lack of global document")}const a3=3600,fw="sentry_previous_trace",c3="sentry.previous_trace";function l3(e,{linkPreviousTrace:t,consistentTraceSampling:n}){const r=t==="session-storage";let s=r?f3():void 0;e.on("spanStart",o=>{if(wt(o)!==o)return;const a=Le().getPropagationContext();s=u3(s,o,a),r&&d3(s)});let i=!0;n&&e.on("beforeSampling",o=>{if(!s)return;const a=Le(),c=a.getPropagationContext();if(i&&c.parentSpanId){i=!1;return}a.setPropagationContext({...c,dsc:{...c.dsc,sample_rate:String(s.sampleRate),sampled:String(of(s.spanContext))},sampleRand:s.sampleRand}),o.parentSampled=of(s.spanContext),o.parentSampleRate=s.sampleRate,o.spanAttributes={...o.spanAttributes,[US]:s.sampleRate}})}function u3(e,t,n){const r=Re(t);function s(){var a,c;try{return Number((a=n.dsc)==null?void 0:a.sample_rate)??Number((c=r.data)==null?void 0:c[lh])}catch{return 0}}const i={spanContext:t.spanContext(),startTimestamp:r.start_timestamp,sampleRate:s(),sampleRand:n.sampleRand};if(!e)return i;const o=e.spanContext;return o.traceId===r.trace_id?e:(Date.now()/1e3-e.startTimestamp<=a3&&(pn&&J.log(`Adding previous_trace \`${JSON.stringify(o)}\` link to span \`${JSON.stringify({op:r.op,...t.spanContext()})}\``),t.addLink({context:o,attributes:{[mM]:"previous_trace"}}),t.setAttribute(c3,`${o.traceId}-${o.spanId}-${of(o)?1:0}`)),i)}function d3(e){try{Pe.sessionStorage.setItem(fw,JSON.stringify(e))}catch(t){pn&&J.warn("Could not store previous trace in sessionStorage",t)}}function f3(){var e;try{const t=(e=Pe.sessionStorage)==null?void 0:e.getItem(fw);return JSON.parse(t)}catch{return}}function of(e){return e.traceFlags===1}const h3="BrowserTracing",p3={...ic,instrumentNavigation:!0,instrumentPageLoad:!0,markBackgroundSpan:!0,enableLongTask:!0,enableLongAnimationFrame:!0,enableInp:!0,enableElementTiming:!0,ignoreResourceSpans:[],ignorePerformanceApiSpans:[],detectRedirects:!0,linkPreviousTrace:"in-memory",consistentTraceSampling:!1,enableReportPageLoaded:!1,_experiments:{},...dw},ey=(e={})=>{const t={name:void 0,source:void 0},n=Pe.document,{enableInp:r,enableElementTiming:s,enableLongTask:i,enableLongAnimationFrame:o,_experiments:{enableInteractions:a,enableStandaloneClsSpans:c,enableStandaloneLcpSpans:l},beforeStartSpan:d,idleTimeout:u,finalTimeout:f,childSpanTimeout:h,markBackgroundSpan:p,traceFetch:m,traceXHR:v,trackFetchStreamPerformance:g,shouldCreateSpanForRequest:y,enableHTTPTimings:_,ignoreResourceSpans:S,ignorePerformanceApiSpans:M,instrumentPageLoad:R,instrumentNavigation:E,detectRedirects:C,linkPreviousTrace:I,consistentTraceSampling:A,enableReportPageLoaded:O,onRequestSpanStart:T,onRequestSpanEnd:P}={...p3,...e};let N,z,X;function q(D,re,U=!0){const ie=re.op==="pageload",ae=re.name,ue=d?d(re):re,Ce=ue.attributes||{};if(ae!==ue.name&&(Ce[jt]="custom",ue.attributes=Ce),!U){const x=Ns();Hr({...ue,startTime:x}).end(x);return}t.name=ue.name,t.source=Ce[jt];const Ne=u0(ue,{idleTimeout:u,finalTimeout:f,childSpanTimeout:h,disableAutoFinish:ie,beforeSpanEnd:x=>{N==null||N(),VD(x,{recordClsOnPageloadSpan:!c,recordLcpOnPageloadSpan:!l,ignoreResourceSpans:S,ignorePerformanceApiSpans:M}),ny(D,void 0);const W=Le(),K=W.getPropagationContext();W.setPropagationContext({...K,traceId:Ne.spanContext().traceId,sampled:Xr(Ne),dsc:dr(x)}),ie&&(X=void 0)},trimIdleSpanEndTimestamp:!O});ie&&O&&(X=Ne),ny(D,Ne);function He(){n&&["interactive","complete"].includes(n.readyState)&&D.emit("idleSpanEnableAutoFinish",Ne)}ie&&!O&&n&&(n.addEventListener("readystatechange",()=>{He()}),He())}return{name:h3,setup(D){if(jM(),N=LD({recordClsStandaloneSpans:c||!1,recordLcpStandaloneSpans:l||!1,client:D}),r&&hF(),s&&QD(),o&&xe.PerformanceObserver&&PerformanceObserver.supportedEntryTypes&&PerformanceObserver.supportedEntryTypes.includes("long-animation-frame")?DD():i&&ND(),a&&FD(),C&&n){const U=()=>{z=lt()};addEventListener("click",U,{capture:!0}),addEventListener("keydown",U,{capture:!0,passive:!0})}function re(){const U=Zo(D);U&&!Re(U).timestamp&&(pn&&J.log(`[Tracing] Finishing current active span with op: ${Re(U).op}`),U.setAttribute(jo,"cancelled"),U.end())}D.on("startNavigationSpan",(U,ie)=>{if(Ee()!==D)return;if(ie!=null&&ie.isRedirect){pn&&J.warn("[Tracing] Detected redirect, navigation span will not be the root span, but a child span."),q(D,{op:"navigation.redirect",...U},!1);return}z=void 0,re(),rn().setPropagationContext({traceId:lr(),sampleRand:Math.random(),propagationSpanId:fn()?void 0:tr()});const ae=Le();ae.setPropagationContext({traceId:lr(),sampleRand:Math.random(),propagationSpanId:fn()?void 0:tr()}),ae.setSDKProcessingMetadata({normalizedRequest:void 0}),q(D,{op:"navigation",...U,parentSpan:null,forceTransaction:!0})}),D.on("startPageLoadSpan",(U,ie={})=>{if(Ee()!==D)return;re();const ae=ie.sentryTrace||ty("sentry-trace"),ue=ie.baggage||ty("baggage"),Ce=NM(ae,ue),Ne=Le();Ne.setPropagationContext(Ce),fn()||(Ne.getPropagationContext().propagationSpanId=tr()),Ne.setSDKProcessingMetadata({normalizedRequest:xh()}),q(D,{op:"pageload",...U})}),D.on("endPageloadSpan",()=>{O&&X&&(X.setAttribute(jo,"reportPageLoaded"),X.end())})},afterAllSetup(D){let re=Ls();if(I!=="off"&&l3(D,{linkPreviousTrace:I,consistentTraceSampling:A}),Pe.location){if(R){const U=Gt();m3(D,{name:Pe.location.pathname,startTime:U?U/1e3:void 0,attributes:{[jt]:"url",[st]:"auto.pageload.browser"}})}E&&Dl(({to:U,from:ie})=>{if(ie===void 0&&(re==null?void 0:re.indexOf(U))!==-1){re=void 0;return}re=void 0;const ae=Eh(U),ue=Zo(D),Ce=ue&&C&&v3(ue,z);hw(D,{name:(ae==null?void 0:ae.pathname)||Pe.location.pathname,attributes:{[jt]:"url",[st]:"auto.navigation.browser"}},{url:U,isRedirect:Ce})})}p&&o3(),a&&g3(D,u,f,h,t),r&&gF(),t3(D,{traceFetch:m,traceXHR:v,trackFetchStreamPerformance:g,tracePropagationTargets:D.getOptions().tracePropagationTargets,shouldCreateSpanForRequest:y,enableHTTPTimings:_,onRequestSpanStart:T,onRequestSpanEnd:P})}}};function m3(e,t,n){e.emit("startPageLoadSpan",t,n),Le().setTransactionName(t.name);const r=Zo(e);return r&&e.emit("afterStartPageLoadSpan",r),r}function hw(e,t,n){const{url:r,isRedirect:s}=n||{};e.emit("beforeStartNavigationSpan",t,{isRedirect:s}),e.emit("startNavigationSpan",t,{isRedirect:s});const i=Le();return i.setTransactionName(t.name),r&&!s&&i.setSDKProcessingMetadata({normalizedRequest:{...xh(),url:r}}),Zo(e)}function ty(e){const t=Pe.document,n=t==null?void 0:t.querySelector(`meta[name=${e}]`);return(n==null?void 0:n.getAttribute("content"))||void 0}function g3(e,t,n,r,s){const i=Pe.document;let o;const a=()=>{const c="ui.action.click",l=Zo(e);if(l){const d=Re(l).op;if(["navigation","pageload"].includes(d)){pn&&J.warn(`[Tracing] Did not create ${c} span because a pageload or navigation span is in progress.`);return}}if(o&&(o.setAttribute(jo,"interactionInterrupted"),o.end(),o=void 0),!s.name){pn&&J.warn(`[Tracing] Did not create ${c} transaction because _latestRouteName is missing.`);return}o=u0({name:s.name,op:c,attributes:{[jt]:s.source||"url"}},{idleTimeout:t,finalTimeout:n,childSpanTimeout:r})};i&&addEventListener("click",a,{capture:!0})}const pw="_sentry_idleSpan";function Zo(e){return e[pw]}function ny(e,t){qt(e,pw,t)}const ry=1.5;function v3(e,t){const n=Re(e),r=Ns(),s=n.start_timestamp;return!(r-s>ry||t&&r-t<=ry)}const mw=["activate","mount"],gw=typeof __SENTRY_DEBUG__>"u"||__SENTRY_DEBUG__,y3=/(?:^|[-_])(\w)/g,_3=e=>e.replace(y3,t=>t.toUpperCase()).replace(/[-_]/g,""),b3="",ju="",S3=(e,t)=>e.repeat(t),ko=(e,t)=>{if(!e)return ju;if(e.$root===e)return b3;if(!e.$options)return ju;const n=e.$options;let r=n.name||n._componentTag||n.__name;const s=n.__file;if(!r&&s){const i=s.match(/([^/\\]+)\.vue$/);i&&(r=i[1])}return(r?`<${_3(r)}>`:ju)+(s&&t!==!1?` at ${s}`:"")},E3=e=>{if(e&&(e._isVue||e.__isVue)&&e.$parent){const t=[];let n=0;for(;e;){if(t.length>0){const s=t[t.length-1];if(s.constructor===e.constructor){n++,e=e.$parent;continue}else n>0&&(t[t.length-1]=[s,n],n=0)}t.push(e),e=e.$parent}return` + +found in + +${t.map((s,i)=>`${(i===0?"---> ":S3(" ",5+i*2))+(Array.isArray(s)?`${ko(s[0])}... (${s[1]} recursive calls)`:ko(s))}`).join(` +`)}`}return` + +(found in ${ko(e)})`},w3=(e,t)=>{const{errorHandler:n}=e.config;e.config.errorHandler=(r,s,i)=>{var l;const o=ko(s,!1),a=s?E3(s):"",c={componentName:o,lifecycleHook:i,trace:a};if((t==null?void 0:t.attachProps)!==!1&&s&&((l=s.$options)!=null&&l.propsData?c.propsData=s.$options.propsData:s.$props&&(c.propsData=s.$props)),setTimeout(()=>{Pl(r,{captureContext:{contexts:{vue:c}},mechanism:{handled:!!n,type:"auto.function.vue.error_handler"}})}),typeof n=="function"&&e.config.errorHandler)n.call(e,r,s,i);else throw r}},sy="ui.vue",C3={activate:["activated","deactivated"],create:["beforeCreate","created"],unmount:["beforeUnmount","unmounted"],destroy:["beforeDestroy","destroyed"],mount:["beforeMount","mounted"],update:["beforeUpdate","updated"]};function zu(e,t,n){e.$_sentryRootComponentSpanTimer&&clearTimeout(e.$_sentryRootComponentSpanTimer),e.$_sentryRootComponentSpanTimer=setTimeout(()=>{var r;(r=e.$root)!=null&&r.$_sentryRootComponentSpan&&(e.$root.$_sentryRootComponentSpan.end(t),e.$root.$_sentryRootComponentSpan=void 0)},n)}function T3(e,t){function n(s){return s.replace(/^<([^\s]*)>(?: at [^\s]*)?$/,"$1")}return e.some(s=>n(t)===n(s))}const k3=(e={})=>{const t=(e.hooks||[]).concat(mw).filter((s,i,o)=>o.indexOf(s)===i),n={},r=e.timeout||2e3;for(const s of t){const i=C3[s];if(!i){gw&&J.warn(`Unknown hook: ${s}`);continue}for(const o of i)n[o]=function(){var f;const a=this.$root===this;a&&(this.$_sentryRootComponentSpan=this.$_sentryRootComponentSpan||Hr({name:"Application Render",op:`${sy}.render`,attributes:{[st]:"auto.ui.vue"},onlyIfParent:!0}),zu(this,lt(),r));const c=ko(this,!1);if(!(a||(Array.isArray(e.trackComponents)?T3(e.trackComponents,c):e.trackComponents))){zu(this,lt(),r);return}this.$_sentryComponentSpans=this.$_sentryComponentSpans||{};const d=o===i[0],u=((f=this.$root)==null?void 0:f.$_sentryRootComponentSpan)||Tt();if(d){if(u){const h=this.$_sentryComponentSpans[s];h&&h.end(),this.$_sentryComponentSpans[s]=Hr({name:`Vue ${c}`,op:`${sy}.${s}`,attributes:{[st]:"auto.ui.vue"},onlyIfParent:!0})}}else{const h=this.$_sentryComponentSpans[s];if(!h)return;h.end(),zu(this,lt(),r)}}}return n},I3=xe,x3={Vue:I3.Vue,attachProps:!0,attachErrorHandler:!0,tracingOptions:{hooks:mw,timeout:2e3,trackComponents:!1}},R3="Vue",A3=(e={})=>({name:R3,setup(t){const n={...x3,...t.getOptions(),...e};if(!n.Vue&&!n.app){vr(()=>{console.warn("[@sentry/vue]: Misconfigured SDK. Vue specific errors will not be captured. Update your `Sentry.init` call with an appropriate config option: `app` (Application Instance - Vue 3) or `Vue` (Vue Constructor - Vue 2).")});return}n.app?(Array.isArray(n.app)?n.app:[n.app]).forEach(s=>iy(s,n)):n.Vue&&iy(n.Vue,n)}}),iy=(e,t)=>{var n;gw&&((n=e._instance)==null?void 0:n.isMounted)===!0&&vr(()=>{console.warn("[@sentry/vue]: Misconfigured SDK. Vue app is already mounted. Make sure to call `app.mount()` after `Sentry.init()`.")}),t.attachErrorHandler&&w3(e,t),fn(t)&&e.mixin(k3(t.tracingOptions))};function M3(e={}){const t={defaultIntegrations:[...bE(),A3()],...e};return x0(t,"vue"),g$(t)}function P3(e,t,n){let r=!1;e.onError(s=>Pl(s,{mechanism:{handled:!1}})),e.beforeEach((s,i,o)=>{const a=r?void 0:O3(),c={};for(const u of Object.keys(s.params))c[`url.path.parameter.${u}`]=s.params[u],c[`params.${u}`]=s.params[u];for(const u of Object.keys(s.query)){const f=s.query[u];f&&(c[`query.${u}`]=f)}let l=s.path,d="url";if(s.name&&t.routeLabel!=="path")l=s.name.toString(),d="custom";else if(s.matched.length>0){const u=s.matched.length-1;l=s.matched[u].path,d="route"}Le().setTransactionName(l),t.instrumentPageLoad&&a&&(Re(a).data[jt]!=="custom"&&(a.updateName(l),a.setAttribute(jt,d)),a.setAttributes({...c,[st]:"auto.pageload.vue"}),r=!0),t.instrumentNavigation&&!a&&n({name:l,op:"navigation",attributes:{...c,[st]:"auto.navigation.vue",[jt]:d}}),o&&o()})}function O3(){const e=Tt(),t=e&&wt(e);return t&&Re(t).op==="pageload"?t:void 0}function L3(e={}){if(!e.router)return ey(e);const t=ey({...e,instrumentNavigation:!1}),{router:n,instrumentNavigation:r=!0,instrumentPageLoad:s=!0,routeLabel:i="name"}=e;return{...t,afterAllSetup(o){t.afterAllSetup(o),P3(n,{routeLabel:i,instrumentNavigation:r,instrumentPageLoad:s},c=>{hw(o,c)})}}}const N3=yb(),Xi=BC(OA);let is=null;M3({app:Xi,dsn:"https://2f8e5e4ec986c6077d3798ba9f683fdd@o4510762489151488.ingest.us.sentry.io/4510762503438336",sendDefaultPii:!0,integrations:[L3({router:El}),X2({maskAllText:!1,blockAllMedia:!1}),is=HN({autoInject:!1,colorScheme:"system",showBranding:!1,showName:!0,showEmail:!0,isNameRequired:!1,isEmailRequired:!1,useSentryUser:{name:"username",email:"email"},themeDark:{submitBackground:"#6200EA",submitBackgroundHover:"#7C4DFF"},themeLight:{submitBackground:"#6200EA",submitBackgroundHover:"#7C4DFF"}})],tracesSampleRate:1,tracePropagationTargets:["localhost",/^https:\/\/kv-service\.(houlang\.cloud|wuyuan\.dev)/],replaysSessionSampleRate:0,replaysOnErrorSampleRate:0,enableLogs:!0,beforeSend(e){return e}});kS().then(e=>{qP({id:e,username:e}),zP("fingerprint",e),console.log("Sentry 用户标识已设置:",e)}).catch(e=>{console.warn("设置 Sentry 用户标识失败:",e)});window.openSentryFeedback=()=>{try{if(!is)return console.warn("Sentry Feedback integration 未初始化"),!1;if(typeof is.createWidget=="function"){const e=is.createWidget();if(e&&typeof e.open=="function")return e.open(),console.log("Sentry Feedback 对话框已打开"),!0}return typeof is.openDialog=="function"?(is.openDialog(),console.log("Sentry Feedback 对话框已打开"),!0):(console.warn("无法找到打开 Feedback 的方法"),console.log("可用方法:",Object.keys(is)),!1)}catch(e){return console.error("打开 Sentry Feedback 时出错:",e),!1}};window.startSentryReplay=()=>{try{const e=Ee();if(!e)return console.warn("Sentry 客户端未初始化"),!1;const n=(e.getOptions().integrations||[]).find(r=>r&&r.name==="Replay");return n&&typeof n.start=="function"?(n.start(),console.log("Sentry Replay 已手动启动"),!0):(console.warn("无法找到 Sentry Replay integration"),!1)}catch(e){return console.error("启动 Sentry Replay 时出错:",e),!1}};dx(Xi);Xi.use(Ys);Xi.use(N3);Xi.component("GlobalMessage",nS);Xi.mount("#app");document.readyState==="complete"?oy():window.addEventListener("load",oy,{once:!0});async function oy(){try{const e=(await yt(async()=>{const{default:r}=await import("./index-ghQi_28l.js");return{default:r}},[],import.meta.url)).default;e.init("rhp8uqoc3l");const n=await kS();console.log("Visitor ID:",n),e.identify(n),e.setTag("fingerprintjs",n)}catch(e){console.warn("Clarity 加载或标识设置失败:",e)}}try{const e=()=>{document.body.classList.add("app-loaded");const t=document.getElementById("app-loader");t&&setTimeout(()=>t.remove(),220)};document.readyState==="complete"||document.readyState==="interactive"?e():window.addEventListener("DOMContentLoaded",e,{once:!0})}catch{}export{Tn as $,bn as A,m4 as B,C_ as C,ed as D,Qe as E,Ze as F,S1 as G,ZR as H,ws as I,xf as J,uS as K,Fc as L,rS as M,H3 as N,B3 as O,kA as P,Cd as Q,zm as R,Uo as S,Rf as T,_4 as U,PA as V,y4 as W,Ok as X,$R as Y,jr as Z,Ob as _,fA as a,Qs as a$,bS as a0,_S as a1,we as a2,j as a3,pt as a4,fx as a5,hx as a6,l4 as a7,d4 as a8,u4 as a9,As as aA,bi as aB,li as aC,ss as aD,ld as aE,Qx as aF,Bi as aG,Qf as aH,vl as aI,me as aJ,Ms as aK,Pf as aL,id as aM,D3 as aN,Ff as aO,kS as aP,E4 as aQ,S4 as aR,et as aS,X3 as aT,yA as aU,XC as aV,un as aW,Z3 as aX,gs as aY,YC as aZ,Et as a_,Fx as aa,Gr as ab,vx as ac,yt as ad,Se as ae,F3 as af,$b as ag,Ut as ah,jR as ai,AR as aj,wr as ak,ng as al,aS as am,Dc as an,h4 as ao,f4 as ap,jT as aq,Zn as ar,Of as as,z3 as at,tS as au,ee as av,vt as aw,K3 as ax,G3 as ay,be as az,tt as b,V3 as b$,vo as b0,r4 as b1,n4 as b2,hn as b3,H_ as b4,rg as b5,od as b6,na as b7,g4 as b8,Ak as b9,jx as bA,_R as bB,c4 as bC,hi as bD,Xp as bE,yR as bF,a4 as bG,i4 as bH,Fi as bI,dl as bJ,Ys as bK,ui as bL,j3 as bM,Q3 as bN,Oe as bO,ER as bP,SR as bQ,xx as bR,Ix as bS,At as bT,Rx as bU,kx as bV,U_ as bW,W3 as bX,mt as bY,t4 as bZ,Oi as b_,Ct as ba,q3 as bb,or as bc,XR as bd,gr as be,hb as bf,Gf as bg,qp as bh,Zb as bi,tn as bj,mr as bk,Tl as bl,Jy as bm,eh as bn,mn as bo,ia as bp,sa as bq,$r as br,gx as bs,yx as bt,_x as bu,pR as bv,hR as bw,GC as bx,Di as by,$i as bz,B as c,Ts as c0,sd as c1,Y3 as c2,Hb as c3,Vx as c4,Bb as c5,bt as c6,de as c7,Nn as c8,_f as c9,$3 as cA,o4 as cB,Cl as cC,Xf as cD,b4 as cE,Jf as cF,qr as cG,yf as cH,pl as cI,K_ as cJ,Fr as cK,p4 as cL,MT as ca,Oo as cb,m1 as cc,Uf as cd,U3 as ce,Ps as cf,wl as cg,Yf as ch,Kf as ci,fR as cj,e_ as ck,KC as cl,yo as cm,YR as cn,z_ as co,J3 as cp,e4 as cq,bA as cr,AA as cs,n_ as ct,aa as cu,oa as cv,zr as cw,s4 as cx,F_ as cy,v4 as cz,Me as d,Vi as e,Hi as f,De as g,ct as h,se as i,Dn as j,zf as k,sg as l,Mt as m,Xe as n,cn as o,le as p,sS as q,b1 as r,mx as s,Hn as t,qk as u,ao as v,gt as w,tA as x,Kb as y,Ed as z}; diff --git a/assets/index-bqvMdhMd.js b/assets/index-D07_YIdP.js similarity index 94% rename from assets/index-bqvMdhMd.js rename to assets/index-D07_YIdP.js index 8a6a5f5..583c069 100644 --- a/assets/index-bqvMdhMd.js +++ b/assets/index-D07_YIdP.js @@ -1 +1 @@ -import{d as n}from"./dataProvider-MQ8YacC2.js";import{_ as N,o,C as f,c as s,w as i,v as d,y as r,l as h,q as k,j as g,z as V,P as C,F as v,G as x,Q as I,a0 as b,A as y,N as A,O as L,t as w,D as _,H as B,M as E,x as F}from"./index-BUM0TY0E.js";import{b as T,c as S}from"./VAppBarTitle-DZ_l7t3b.js";import{V as D}from"./VTextField-C579e7l1.js";import{V as M}from"./VContainer-DakLDC1m.js";import"./serverRotation-CjK7Y7P9.js";const K={data(){return{lists:[],newListName:"",studentList:[],deleteDialog:{show:!1,text:"",listId:null},editingListId:null,editListName:""}},async created(){await Promise.all([this.loadLists(),this.loadStudentList()])},methods:{async loadLists(){try{let e=await n.loadData("classworks-list-info");(!e||!Array.isArray(e))&&(e=[],await n.saveData("classworks-list-info",e)),this.lists=e}catch(e){console.error("Failed to load lists",e),this.lists=[],await n.saveData("classworks-list-info",[])}},async loadStudentList(){try{const e=await n.loadData("classworks-list-main");e&&Array.isArray(e)?this.studentList=e:this.studentList=[]}catch(e){console.error("Failed to load student list",e),this.studentList=[]}},async createNewList(){if(!this.newListName)return;const e=Date.now().toString(),t={id:e,name:this.newListName};this.lists.push(t),await n.saveData("classworks-list-info",this.lists);const u=[];this.studentList&&this.studentList.length>0&&this.studentList.forEach(p=>{u.push({id:p.id||Date.now()+Math.floor(Math.random()*1e3),name:p.name,completed:!1})}),await n.saveData(`classworks-list-${e}`,u),this.newListName="",this.$router.push(`/list/${e}`)},startEditing(e){const t=this.lists.find(u=>u.id===e);t&&(this.editingListId=e,this.editListName=t.name)},cancelEditing(){this.editingListId=null,this.editListName=""},async saveListName(){if(!(!this.editListName.trim()||!this.editingListId))try{const e=this.lists.findIndex(t=>t.id===this.editingListId);e!==-1&&(this.lists[e].name=this.editListName.trim(),await n.saveData("classworks-list-info",this.lists)),this.editingListId=null,this.editListName=""}catch(e){console.error("Failed to update list name",e)}},confirmDeleteList(e){const t=this.lists.find(u=>u.id===e);t&&(this.deleteDialog={show:!0,text:`确定要删除列表 "${t.name}" 吗?`,listId:e})},confirmDelete(){this.deleteDialog.listId&&this.deleteList(this.deleteDialog.listId),this.deleteDialog.show=!1},async deleteList(e){this.lists=this.lists.filter(t=>t.id!==e),await n.saveData("classworks-list-info",this.lists)}}},P={key:0},U={key:1,class:"d-flex align-center w-100"},j={key:0};function q(e,t,u,p,a,m){return o(),f(v,null,[s(S,{elevation:"1"},{prepend:i(()=>[s(r,{icon:"mdi-arrow-left",variant:"text",onClick:t[0]||(t[0]=l=>e.$router.push("/"))})]),default:i(()=>[s(T,{class:"text-h6"},{default:i(()=>[...t[5]||(t[5]=[d("列表",-1)])]),_:1})]),_:1}),s(M,null,{default:i(()=>[s(h,{border:"",class:"mb-5",rounded:"xl"},{default:i(()=>[s(k,null,{default:i(()=>[...t[6]||(t[6]=[d("现有列表",-1)])]),_:1}),a.lists.length===0?(o(),g(V,{key:0},{default:i(()=>[...t[7]||(t[7]=[d(" 暂无列表,请创建新列表 ",-1)])]),_:1})):(o(),g(C,{key:1},{default:i(()=>[(o(!0),f(v,null,x(a.lists,l=>(o(),g(I,{key:l.id,active:l.id===a.editingListId,to:l.id!==a.editingListId?`/list/${l.id}`:void 0},{append:i(()=>[l.id!==a.editingListId?(o(),f("div",j,[s(r,{border:"",class:"mr-2",icon:"",onClick:L(c=>m.startEditing(l.id),["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[10]||(t[10]=[d("mdi-pencil",-1)])]),_:1})]),_:1},8,["onClick"]),s(r,{border:"",icon:"",onClick:L(c=>m.confirmDeleteList(l.id),["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[11]||(t[11]=[d("mdi-delete",-1)])]),_:1})]),_:1},8,["onClick"])])):_("",!0)]),default:i(()=>[l.id!==a.editingListId?(o(),f("div",P,[s(b,null,{default:i(()=>[d(y(l.name),1)]),_:2},1024)])):(o(),f("div",U,[s(D,{modelValue:a.editListName,"onUpdate:modelValue":t[1]||(t[1]=c=>a.editListName=c),autofocus:"",class:"mr-2",density:"compact","hide-details":"",label:"列表名称",onKeyup:A(m.saveListName,["enter"])},null,8,["modelValue","onKeyup"]),s(r,{border:"",class:"mr-2",color:"primary",icon:"",onClick:L(m.saveListName,["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[8]||(t[8]=[d("mdi-check",-1)])]),_:1})]),_:1},8,["onClick"]),s(r,{border:"",color:"error",icon:"",onClick:L(m.cancelEditing,["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[9]||(t[9]=[d("mdi-close",-1)])]),_:1})]),_:1},8,["onClick"])]))]),_:2},1032,["active","to"]))),128))]),_:1}))]),_:1}),s(h,{border:"",class:"mb-5",rounded:"xl"},{default:i(()=>[s(k,null,{default:i(()=>[...t[12]||(t[12]=[d("创建新列表",-1)])]),_:1}),s(V,null,{default:i(()=>[s(D,{modelValue:a.newListName,"onUpdate:modelValue":t[2]||(t[2]=l=>a.newListName=l),rules:[l=>!!l||"名称不能为空"],label:"列表名称"},null,8,["modelValue","rules"]),s(r,{disabled:!a.newListName,color:"primary",onClick:m.createNewList},{default:i(()=>[...t[13]||(t[13]=[d(" 创建列表 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1}),s(B,{modelValue:a.deleteDialog.show,"onUpdate:modelValue":t[4]||(t[4]=l=>a.deleteDialog.show=l),"max-width":"500"},{default:i(()=>[s(h,{border:""},{default:i(()=>[s(k,null,{default:i(()=>[...t[14]||(t[14]=[d("删除列表",-1)])]),_:1}),s(V,null,{default:i(()=>[d(y(a.deleteDialog.text),1)]),_:1}),s(E,null,{default:i(()=>[s(F),s(r,{color:"primary",variant:"text",onClick:t[3]||(t[3]=l=>a.deleteDialog.show=!1)},{default:i(()=>[...t[15]||(t[15]=[d(" 取消 ",-1)])]),_:1}),s(r,{color:"error",variant:"text",onClick:m.confirmDelete},{default:i(()=>[...t[16]||(t[16]=[d(" 确认删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})],64)}const R=N(K,[["render",q]]);export{R as default}; +import{d as n}from"./dataProvider-Cg4CSn_f.js";import{_ as N,o,C as f,c as s,w as i,v as d,y as r,l as h,q as k,j as g,z as V,P as C,F as v,G as x,Q as I,a0 as b,A as y,N as A,O as L,t as w,D as _,H as B,M as E,x as F}from"./index-BXl8SUNP.js";import{b as T,c as S}from"./VAppBarTitle-hRIhv4pw.js";import{V as D}from"./VTextField-DxxbesnN.js";import{V as M}from"./VContainer-Doz_PneH.js";import"./serverRotation-BBUKyTw9.js";const K={data(){return{lists:[],newListName:"",studentList:[],deleteDialog:{show:!1,text:"",listId:null},editingListId:null,editListName:""}},async created(){await Promise.all([this.loadLists(),this.loadStudentList()])},methods:{async loadLists(){try{let e=await n.loadData("classworks-list-info");(!e||!Array.isArray(e))&&(e=[],await n.saveData("classworks-list-info",e)),this.lists=e}catch(e){console.error("Failed to load lists",e),this.lists=[],await n.saveData("classworks-list-info",[])}},async loadStudentList(){try{const e=await n.loadData("classworks-list-main");e&&Array.isArray(e)?this.studentList=e:this.studentList=[]}catch(e){console.error("Failed to load student list",e),this.studentList=[]}},async createNewList(){if(!this.newListName)return;const e=Date.now().toString(),t={id:e,name:this.newListName};this.lists.push(t),await n.saveData("classworks-list-info",this.lists);const u=[];this.studentList&&this.studentList.length>0&&this.studentList.forEach(p=>{u.push({id:p.id||Date.now()+Math.floor(Math.random()*1e3),name:p.name,completed:!1})}),await n.saveData(`classworks-list-${e}`,u),this.newListName="",this.$router.push(`/list/${e}`)},startEditing(e){const t=this.lists.find(u=>u.id===e);t&&(this.editingListId=e,this.editListName=t.name)},cancelEditing(){this.editingListId=null,this.editListName=""},async saveListName(){if(!(!this.editListName.trim()||!this.editingListId))try{const e=this.lists.findIndex(t=>t.id===this.editingListId);e!==-1&&(this.lists[e].name=this.editListName.trim(),await n.saveData("classworks-list-info",this.lists)),this.editingListId=null,this.editListName=""}catch(e){console.error("Failed to update list name",e)}},confirmDeleteList(e){const t=this.lists.find(u=>u.id===e);t&&(this.deleteDialog={show:!0,text:`确定要删除列表 "${t.name}" 吗?`,listId:e})},confirmDelete(){this.deleteDialog.listId&&this.deleteList(this.deleteDialog.listId),this.deleteDialog.show=!1},async deleteList(e){this.lists=this.lists.filter(t=>t.id!==e),await n.saveData("classworks-list-info",this.lists)}}},P={key:0},U={key:1,class:"d-flex align-center w-100"},j={key:0};function q(e,t,u,p,a,m){return o(),f(v,null,[s(S,{elevation:"1"},{prepend:i(()=>[s(r,{icon:"mdi-arrow-left",variant:"text",onClick:t[0]||(t[0]=l=>e.$router.push("/"))})]),default:i(()=>[s(T,{class:"text-h6"},{default:i(()=>[...t[5]||(t[5]=[d("列表",-1)])]),_:1})]),_:1}),s(M,null,{default:i(()=>[s(h,{border:"",class:"mb-5",rounded:"xl"},{default:i(()=>[s(k,null,{default:i(()=>[...t[6]||(t[6]=[d("现有列表",-1)])]),_:1}),a.lists.length===0?(o(),g(V,{key:0},{default:i(()=>[...t[7]||(t[7]=[d(" 暂无列表,请创建新列表 ",-1)])]),_:1})):(o(),g(C,{key:1},{default:i(()=>[(o(!0),f(v,null,x(a.lists,l=>(o(),g(I,{key:l.id,active:l.id===a.editingListId,to:l.id!==a.editingListId?`/list/${l.id}`:void 0},{append:i(()=>[l.id!==a.editingListId?(o(),f("div",j,[s(r,{border:"",class:"mr-2",icon:"",onClick:L(c=>m.startEditing(l.id),["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[10]||(t[10]=[d("mdi-pencil",-1)])]),_:1})]),_:1},8,["onClick"]),s(r,{border:"",icon:"",onClick:L(c=>m.confirmDeleteList(l.id),["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[11]||(t[11]=[d("mdi-delete",-1)])]),_:1})]),_:1},8,["onClick"])])):_("",!0)]),default:i(()=>[l.id!==a.editingListId?(o(),f("div",P,[s(b,null,{default:i(()=>[d(y(l.name),1)]),_:2},1024)])):(o(),f("div",U,[s(D,{modelValue:a.editListName,"onUpdate:modelValue":t[1]||(t[1]=c=>a.editListName=c),autofocus:"",class:"mr-2",density:"compact","hide-details":"",label:"列表名称",onKeyup:A(m.saveListName,["enter"])},null,8,["modelValue","onKeyup"]),s(r,{border:"",class:"mr-2",color:"primary",icon:"",onClick:L(m.saveListName,["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[8]||(t[8]=[d("mdi-check",-1)])]),_:1})]),_:1},8,["onClick"]),s(r,{border:"",color:"error",icon:"",onClick:L(m.cancelEditing,["stop","prevent"])},{default:i(()=>[s(w,null,{default:i(()=>[...t[9]||(t[9]=[d("mdi-close",-1)])]),_:1})]),_:1},8,["onClick"])]))]),_:2},1032,["active","to"]))),128))]),_:1}))]),_:1}),s(h,{border:"",class:"mb-5",rounded:"xl"},{default:i(()=>[s(k,null,{default:i(()=>[...t[12]||(t[12]=[d("创建新列表",-1)])]),_:1}),s(V,null,{default:i(()=>[s(D,{modelValue:a.newListName,"onUpdate:modelValue":t[2]||(t[2]=l=>a.newListName=l),rules:[l=>!!l||"名称不能为空"],label:"列表名称"},null,8,["modelValue","rules"]),s(r,{disabled:!a.newListName,color:"primary",onClick:m.createNewList},{default:i(()=>[...t[13]||(t[13]=[d(" 创建列表 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1}),s(B,{modelValue:a.deleteDialog.show,"onUpdate:modelValue":t[4]||(t[4]=l=>a.deleteDialog.show=l),"max-width":"500"},{default:i(()=>[s(h,{border:""},{default:i(()=>[s(k,null,{default:i(()=>[...t[14]||(t[14]=[d("删除列表",-1)])]),_:1}),s(V,null,{default:i(()=>[d(y(a.deleteDialog.text),1)]),_:1}),s(E,null,{default:i(()=>[s(F),s(r,{color:"primary",variant:"text",onClick:t[3]||(t[3]=l=>a.deleteDialog.show=!1)},{default:i(()=>[...t[15]||(t[15]=[d(" 取消 ",-1)])]),_:1}),s(r,{color:"error",variant:"text",onClick:m.confirmDelete},{default:i(()=>[...t[16]||(t[16]=[d(" 确认删除 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})],64)}const R=N(K,[["render",q]]);export{R as default}; diff --git a/assets/index-DDM9P6IV.js b/assets/index-DSbPboXi.js similarity index 99% rename from assets/index-DDM9P6IV.js rename to assets/index-DSbPboXi.js index 001498a..23de02d 100644 --- a/assets/index-DDM9P6IV.js +++ b/assets/index-DSbPboXi.js @@ -1,5 +1,5 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-BUM0TY0E.js","./index-btKy2yxc.css","./dataProvider-MQ8YacC2.js","./serverRotation-CjK7Y7P9.js"])))=>i.map(i=>d[i]); -import{V as jt,a as Ht,_ as pt}from"./ExamConfigEditor-BzFaHh6i.js";import{_ as W,k as S,s as re,o as c,j as b,w as i,c as s,l as _,q as j,t as D,v as u,x as L,y,z as V,i as r,A as g,B as vt,C as p,D as w,F as E,E as Qe,T as Ke,G as U,d as fe,H as J,n as he,I as oe,J as be,K as ve,L as Ie,M as X,N as tt,O as qe,P as we,Q as Se,R as Je,S as xe,U as Kt,W as qt,X as Ae,Y as yt,Z as Ye,$ as Wt,a0 as $e,a1 as Pe,a2 as $,a3 as G,a4 as st,a5 as Gt,a6 as Qt,a7 as Jt,a8 as kt,a9 as bt,aa as xt,ab as Oe,ac as Xe,ad as nt,ae as Le,af as Yt,ag as it,ah as Ee,ai as Ve,aj as Xt,ak as Ne}from"./index-BUM0TY0E.js";import{V as Ce}from"./VTextField-C579e7l1.js";import{V as Ze,a as Zt}from"./VTooltip-COe_nB02.js";import{V as O}from"./VChip-vdRDApTi.js";import{s as es,g as wt,j as We,o as ce,a as ts,l as ss}from"./socketClient-BEFY8Nxz.js";import{p as at,s as ns,a as ot,V as is,_ as St}from"./VCombobox-B-HflrVw.js";import{f as as,s as os,c as Ct}from"./deviceEvents-Dj8WEgqu.js";import{V as ue,a as ne}from"./VRow-CPw1R1BU.js";import{V as ls,a as lt}from"./VPagination-CbPhc6Cb.js";import{V as Ue}from"./VTextarea-jqnFSwaH.js";import{d as Z,a as Be,g as _t,b as me,k as rs}from"./dataProvider-MQ8YacC2.js";import{V as rt,a as dt,b as ds,c as us}from"./VAppBarTitle-DZ_l7t3b.js";import{V as Dt}from"./VContainer-DakLDC1m.js";import{V as ut}from"./VForm-Bz_LQtPX.js";import{V as Ge}from"./VSwitch-CjVC2rsZ.js";import{V as cs}from"./filter-ByuXXWRY.js";import{V as _e}from"./VAlert-DFIvt6kt.js";import{V as ms,a as ct,b as mt,c as ft}from"./VExpansionPanels-DzF6AfvT.js";import"./VSkeletonLoader-DX2FpkIS.js";import"./VCheckboxBtn-CylQNaxd.js";import"./VSheet-CuIjBtz7.js";import"./serverRotation-CjK7Y7P9.js";const fs={name:"RandomPicker",props:{studentList:{type:Array,required:!0},attendance:{type:Object,required:!0,default:()=>({absent:[],late:[],exclude:[]})}},data(){return{dialog:!1,count:S("randomPicker.defaultCount"),isPickingStarted:!1,isAnimating:!1,pickedStudents:[],animationStudents:[],highlightedIndices:[],animationTimer:null,getSetting:S,tempFilters:{excludeAbsent:S("randomPicker.excludeAbsent"),excludeLate:S("randomPicker.excludeLate"),excludeExcluded:S("randomPicker.excludeExcluded")},pickerMode:S("randomPicker.mode"),minNumber:S("randomPicker.minNumber"),maxNumber:S("randomPicker.maxNumber")}},computed:{absentCount(){return this.attendance.absent?this.attendance.absent.length:0},lateCount(){return this.attendance.late?this.attendance.late.length:0},excludedCount(){return this.attendance.exclude?this.attendance.exclude.length:0},numberModeStudents(){if(this.pickerMode!=="number")return[];const t=[];for(let e=this.minNumber;e<=this.maxNumber;e++)t.push(e.toString().padStart(2,"0")+"号");return t},filteredStudents(){return this.pickerMode==="number"?this.numberModeStudents:!this.studentList||!this.studentList.length?[]:this.studentList.filter(t=>!(this.tempFilters.excludeAbsent&&this.attendance.absent.includes(t)||this.tempFilters.excludeLate&&this.attendance.late.includes(t)||this.tempFilters.excludeExcluded&&this.attendance.exclude.includes(t)))},availableStudents(){return this.filteredStudents},maxAllowedCount(){return Math.min(10,this.filteredStudents.length)},remainingStudents(){return this.filteredStudents.filter(t=>!this.pickedStudents.includes(t))}},watch:{dialog(t){t?(this.count=S("randomPicker.defaultCount"),this.isPickingStarted=!1,this.isAnimating=!1,this.pickedStudents=[],this.tempFilters={excludeAbsent:S("randomPicker.excludeAbsent"),excludeLate:S("randomPicker.excludeLate"),excludeExcluded:S("randomPicker.excludeExcluded")}):this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},tempFilters:{handler(){this.count>this.maxAllowedCount&&(this.count=Math.max(1,this.maxAllowedCount))},deep:!0},pickerMode:{handler(t){re("randomPicker.mode",t)}},minNumber:{handler(t){t>this.maxNumber&&(this.minNumber=this.maxNumber),t<1&&(this.minNumber=1),re("randomPicker.minNumber",this.minNumber)}},maxNumber:{handler(t){t100&&(this.maxNumber=100),re("randomPicker.maxNumber",this.maxNumber)}}},methods:{open(){this.dialog=!0},incrementCount(){this.count1&&this.count--},startPicking(){this.filteredStudents.length!==0&&(this.isPickingStarted=!0,S("randomPicker.animation")?this.startAnimation():this.finishPicking())},startAnimation(){this.isAnimating=!0,this.animationStudents=this.filteredStudents.map((t,e)=>({id:`student-${e}`,name:t})),this.animateHighlight()},animateHighlight(){let e=0;const a=50,l=()=>{this.highlightedIndices=[];const n=[];for(let d=0;d{this.finishPicking()},500)};l()},finishPicking(){this.isAnimating=!1;const t=[...this.filteredStudents].sort(()=>.5-Math.random());this.pickedStudents=t.slice(0,this.count)},resetPicker(){this.isPickingStarted=!1,this.isAnimating=!1,this.pickedStudents=[],this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},refreshSingleStudent(t){if(this.remainingStudents.length===0)return;const e=Math.floor(Math.random()*this.remainingStudents.length),a=this.remainingStudents[e];this.pickedStudents[t]=a;const l=document.querySelectorAll(".result-card");l[t]&&(l[t].classList.add("refresh-animation"),setTimeout(()=>{l[t].classList.remove("refresh-animation")},500))}}},hs={class:"d-flex justify-center align-center counter-container"},gs={class:"count-display mx-8"},ps={class:"text-h2 font-weight-bold"},vs={class:"mode-switch-container mt-6"},ys={key:0,class:"number-range-container mt-4"},ks={class:"d-flex justify-center align-center gap-4"},bs={class:"mt-4"},xs={key:1,class:"mt-4 text-error"},ws={class:"mt-4 text-caption"},Ss={class:"pa-2"},Cs={key:0},_s={key:1},Ds={key:2},Ts={key:1,class:"d-flex flex-wrap justify-center gap-2 mt-4"},Is={key:0,class:"animation-container"},Es={class:"animation-wrapper"},Ns={key:1,class:"result-container"},Vs={class:"mt-8 d-flex justify-center"};function As(t,e,a,l,n,o){return c(),b(J,{modelValue:n.dialog,"onUpdate:modelValue":e[8]||(e[8]=d=>n.dialog=d),"fullscreen-breakpoint":"sm","max-width":"600",persistent:""},{default:i(()=>[s(_,{border:"",class:"random-picker-card",rounded:"xl"},{default:i(()=>[s(j,{class:"text-h5 d-flex align-center"},{default:i(()=>[s(D,{class:"mr-2",icon:"mdi-account-question"}),e[9]||(e[9]=u(" 随机点名 ",-1)),s(L),s(y,{icon:"mdi-close",variant:"text",onClick:e[0]||(e[0]=d=>n.dialog=!1)})]),_:1}),n.isPickingStarted?(c(),b(V,{key:1,class:"text-center py-6"},{default:i(()=>[n.isAnimating?(c(),p("div",Is,[r("div",Es,[s(Ke,{class:"shuffle-container",name:"shuffle",tag:"div"},{default:i(()=>[(c(!0),p(E,null,U(n.animationStudents,(d,m)=>(c(),p("div",{key:d.id,class:fe([{highlighted:n.highlightedIndices.includes(m)},"student-item"])},g(d.name),3))),128))]),_:1})])])):(c(),p("div",Ns,[e[19]||(e[19]=r("div",{class:"text-h6 mb-4"},"抽取结果",-1)),(c(!0),p(E,null,U(n.pickedStudents,(d,m)=>(c(),b(_,{key:m,class:"mb-2 result-card",color:"primary",variant:"outlined"},{default:i(()=>[s(V,{class:"text-h4 text-center py-4 d-flex align-center justify-center"},{default:i(()=>[u(g(d)+" ",1),s(y,{disabled:o.remainingStudents.length===0,title:o.remainingStudents.length===0?"没有更多可用学生":"重新抽取此学生",class:"ml-2 refresh-btn",icon:"mdi-refresh",size:"small",variant:"text",onClick:f=>o.refreshSingleStudent(m)},null,8,["disabled","title","onClick"])]),_:2},1024)]),_:2},1024))),128)),r("div",Vs,[s(y,{class:"mx-2",color:"primary","prepend-icon":"mdi-refresh",size:"large",onClick:o.resetPicker},{default:i(()=>[...e[17]||(e[17]=[u(" 重新抽取 ",-1)])]),_:1},8,["onClick"]),s(y,{class:"mx-2",color:"grey",size:"large",variant:"outlined",onClick:e[7]||(e[7]=d=>n.dialog=!1)},{default:i(()=>[...e[18]||(e[18]=[u(" 关闭 ",-1)])]),_:1})])]))]),_:1})):(c(),b(V,{key:0,class:"text-center py-6"},{default:i(()=>[e[16]||(e[16]=r("div",{class:"text-h6 mb-4"},"请选择抽取人数",-1)),r("div",hs,[s(y,{disabled:n.count<=1,class:"counter-btn",color:"primary",icon:"mdi-minus",size:"x-large",variant:"tonal",onClick:o.decrementCount},null,8,["disabled","onClick"]),r("div",gs,[r("span",ps,g(n.count),1),e[10]||(e[10]=r("span",{class:"text-subtitle-1 ml-2"},"人",-1))]),s(y,{disabled:n.count>=o.maxAllowedCount,class:"counter-btn",color:"primary",icon:"mdi-plus",size:"x-large",variant:"tonal",onClick:o.incrementCount},null,8,["disabled","onClick"])]),r("div",vs,[s(vt,{modelValue:n.pickerMode,"onUpdate:modelValue":e[1]||(e[1]=d=>n.pickerMode=d),class:"mode-toggle",color:"primary",mandatory:"",rounded:"pill"},{default:i(()=>[s(y,{"prepend-icon":"mdi-account",value:"name"},{default:i(()=>[...e[11]||(e[11]=[u("姓名模式",-1)])]),_:1}),s(y,{"prepend-icon":"mdi-numeric",value:"number"},{default:i(()=>[...e[12]||(e[12]=[u("学号模式",-1)])]),_:1})]),_:1},8,["modelValue"])]),n.pickerMode==="number"?(c(),p("div",ys,[e[14]||(e[14]=r("div",{class:"text-subtitle-1 mb-2"},"学号范围设置",-1)),r("div",ks,[s(Ce,{modelValue:n.minNumber,"onUpdate:modelValue":e[2]||(e[2]=d=>n.minNumber=d),modelModifiers:{number:!0},class:"number-input",density:"compact","hide-details":"",label:"最小值",max:"100",min:"1",type:"number"},null,8,["modelValue"]),e[13]||(e[13]=r("span",{class:"mx-2"},"至",-1)),s(Ce,{modelValue:n.maxNumber,"onUpdate:modelValue":e[3]||(e[3]=d=>n.maxNumber=d),modelModifiers:{number:!0},class:"number-input",density:"compact","hide-details":"",label:"最大值",max:"100",min:"1",type:"number"},null,8,["modelValue"])])])):w("",!0),r("div",bs,[s(y,{disabled:o.filteredStudents.length===0,class:"start-btn",color:"primary","prepend-icon":"mdi-dice-multiple",size:"x-large",onClick:o.startPicking},{default:i(()=>[...e[15]||(e[15]=[u(" 开始抽取 ",-1)])]),_:1},8,["disabled","onClick"])]),o.filteredStudents.length===0?(c(),p("div",xs,[n.pickerMode==="name"?(c(),p(E,{key:0},[u(" 没有可抽取的学生,请调整过滤选项 ")],64)):(c(),p(E,{key:1},[u(" 请设置有效的学号范围 ")],64))])):w("",!0),r("div",ws,[u(" 当前可抽取学生: "+g(o.filteredStudents.length)+"人 ",1),n.pickerMode==="name"?(c(),b(Ze,{key:0,location:"bottom"},{activator:i(({props:d})=>[s(D,Qe({class:"ml-1",icon:"mdi-information-outline",size:"small"},d),null,16)]),default:i(()=>[r("div",Ss,[n.tempFilters.excludeAbsent?(c(),p("div",Cs," • 已排除请假学生 ("+g(o.absentCount)+"人) ",1)):w("",!0),n.tempFilters.excludeLate?(c(),p("div",_s," • 已排除迟到学生 ("+g(o.lateCount)+"人) ",1)):w("",!0),n.tempFilters.excludeExcluded?(c(),p("div",Ds," • 已排除不参与学生 ("+g(o.excludedCount)+"人) ",1)):w("",!0)])]),_:1})):w("",!0),n.pickerMode==="name"?(c(),p("div",Ts,[s(O,{color:n.tempFilters.excludeLate?"warning":"default",variant:n.tempFilters.excludeLate?"elevated":"text",class:"filter-chip","prepend-icon":"mdi-clock-alert",onClick:e[4]||(e[4]=d=>n.tempFilters.excludeLate=!n.tempFilters.excludeLate)},{default:i(()=>[u(g(n.tempFilters.excludeLate?"排除":"包含")+"迟到学生 ",1)]),_:1},8,["color","variant"]),s(O,{color:n.tempFilters.excludeAbsent?"error":"default",variant:n.tempFilters.excludeAbsent?"elevated":"text",class:"filter-chip","prepend-icon":"mdi-account-off",onClick:e[5]||(e[5]=d=>n.tempFilters.excludeAbsent=!n.tempFilters.excludeAbsent)},{default:i(()=>[u(g(n.tempFilters.excludeAbsent?"排除":"包含")+"请假学生 ",1)]),_:1},8,["color","variant"]),s(O,{color:n.tempFilters.excludeExcluded?"grey":"default",variant:n.tempFilters.excludeExcluded?"elevated":"text",class:"filter-chip","prepend-icon":"mdi-account-cancel",onClick:e[6]||(e[6]=d=>n.tempFilters.excludeExcluded=!n.tempFilters.excludeExcluded)},{default:i(()=>[u(g(n.tempFilters.excludeExcluded?"排除":"包含")+"不参与学生 ",1)]),_:1},8,["color","variant"])])):w("",!0)])]),_:1}))]),_:1})]),_:1},8,["modelValue"])}const Tt=W(fs,[["render",As],["__scopeId","data-v-85e7eea6"]]),Us={name:"EventSender",emits:["sent","error"],methods:{async sendEvent(t,e={}){try{return es(t,e),this.$emit("sent",{eventName:t,content:e,timestamp:new Date().toISOString(),success:!0}),{success:!0,eventId:(e==null?void 0:e.eventId)||null,notificationId:(e==null?void 0:e.notificationId)||null}}catch(a){return console.error("发送事件失败:",a),this.$emit("error",{eventName:t,content:e,error:a.message,timestamp:new Date().toISOString(),success:!1}),{success:!1,error:a.message}}},async sendNotification(t,e=!1,a=[],l={},n=null){const o=`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;return this.sendEvent("notification",{eventId:o,notificationId:n,message:t,isUrgent:e,targetDevices:a,senderInfo:l})},async sendReceipt(t,e,a={},l=null){const n=`rcpt-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.sendEvent("notification-receipt",{eventId:n,originalEventId:t,notificationId:l,status:e,deviceInfo:a})},async sendDisplayedReceipt(t={},e=null){const a=`disp-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.sendEvent("notification-displayed",{eventId:a,notificationId:e,deviceInfo:t})},async sendReadReceipt(t={},e=null){const a=`read-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.sendEvent("notification-read",{eventId:a,notificationId:e,deviceInfo:t})}}},zs={style:{display:"none"}};function Ms(t,e,a,l,n,o){return c(),p("div",zs)}const Fe=W(Us,[["render",Ms]]),$s={name:"UrgentNotification",components:{EventSender:Fe},data(){return{visible:!1,notificationQueue:[],currentIndex:0,autoCloseTimer:null,urgentSoundTimer:null,currentAudio:null}},computed:{currentNotification(){return this.notificationQueue[this.currentIndex]||null},hasNotifications(){return this.notificationQueue.length>0},hasMultipleNotifications(){return this.notificationQueue.length>1},notificationCountText(){return this.hasMultipleNotifications?`${this.currentIndex+1} / ${this.notificationQueue.length}`:""},isUrgent(){var t,e;return((e=(t=this.currentNotification)==null?void 0:t.content)==null?void 0:e.isUrgent)||!1},urgencyColor(){return this.isUrgent?"red darken-2":"blue darken-2"},iconColor(){return"white"},urgencyIcon(){return this.isUrgent?"mdi-alert-circle-outline":"mdi-information-outline"},urgencyTitle(){return this.isUrgent?"🚨 紧急通知":"📢 通知消息"},senderName(){var e,a,l;const t=((e=this.currentNotification)==null?void 0:e.senderInfo)||((l=(a=this.currentNotification)==null?void 0:a.content)==null?void 0:l.senderInfo);return t?t.deviceName||t.deviceType||"未知设备":"未知发送者"},deviceType(){var e,a,l;const t=((e=this.currentNotification)==null?void 0:e.senderInfo)||((l=(a=this.currentNotification)==null?void 0:a.content)==null?void 0:l.senderInfo);return(t==null?void 0:t.deviceType)=="teacher"?"教师":(t==null?void 0:t.deviceType)=="student"?"学生":(t==null?void 0:t.deviceType)=="classroom"?"教室":(t==null?void 0:t.deviceType)||"未知类型"},targetDevices(){var t,e;return((e=(t=this.currentNotification)==null?void 0:t.content)==null?void 0:e.targetDevices)||[]}},beforeUnmount(){this.autoCloseTimer&&clearTimeout(this.autoCloseTimer),this.urgentSoundTimer&&clearInterval(this.urgentSoundTimer),this.stopNotificationSound()},methods:{show(t){var a;if(this.notificationQueue.findIndex(l=>{var n,o;return((n=l.content)==null?void 0:n.notificationId)===((o=t.content)==null?void 0:o.notificationId)})!==-1){console.log("通知已存在,跳过添加");return}this.notificationQueue.push(t),this.visible?(a=t.content)!=null&&a.isUrgent&&!this.isUrgent?(this.currentIndex=this.notificationQueue.length-1,this.sendDisplayedReceipt(),this.playNotificationSound(),this.sendBrowserNotification(t),this.startUrgentSound()):this.sendBrowserNotification(t):(this.currentIndex=this.notificationQueue.length-1,this.visible=!0,this.sendDisplayedReceipt(),this.playNotificationSound(),this.sendBrowserNotification(t),this.isUrgent&&this.startUrgentSound())},close(){var t,e,a,l;try{this.sendReadReceipt(),console.log("已发送已读回执")}catch(n){console.warn("发送已读回执失败:",n)}if((e=(t=this.currentNotification)==null?void 0:t.content)!=null&&e.message){const n=this.isUrgent?"紧急通知":"通知";this.isUrgent?(a=this.$message)==null||a.error(n,`${this.currentNotification.content.message}`):(l=this.$message)==null||l.info(n,`${this.currentNotification.content.message}`)}this.notificationQueue.length>0&&(this.notificationQueue.splice(this.currentIndex,1),this.currentIndex>=this.notificationQueue.length&&(this.currentIndex=Math.max(0,this.notificationQueue.length-1)),this.notificationQueue.length>0?(this.sendDisplayedReceipt(),this.isUrgent?this.startUrgentSound():this.stopUrgentSound()):this.closeWithoutRead())},closeWithoutRead(){this.visible=!1,this.notificationQueue=[],this.currentIndex=0,this.autoCloseTimer&&(clearTimeout(this.autoCloseTimer),this.autoCloseTimer=null),this.stopUrgentSound()},formatTime(t){if(!t)return"";try{const e=new Date(t);if(new Date-e<24*60*60*1e3){const n=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0");return`${n}:${o}`}else{const n=String(e.getMonth()+1).padStart(2,"0"),o=String(e.getDate()).padStart(2,"0");return`${n}/${o}`}}catch{return"无效时间"}},getDeviceTypeLabel(t){return{classroom:"教室设备",student:"学生设备",teacher:"教师设备",admin:"管理员设备",system:"系统设备"}[t]||t},playNotificationSound(){try{this.stopNotificationSound();const t=this.isUrgent?S("notification.urgentSound"):S("notification.singleSound");this.currentAudio=at(t,!1),this.currentAudio||this.playFallbackSound()}catch(t){console.warn("无法播放通知音效:",t),this.playFallbackSound()}},playFallbackSound(){try{const t=new(window.AudioContext||window.webkitAudioContext),e=t.createOscillator(),a=t.createGain();e.connect(a),a.connect(t.destination),e.frequency.value=1e3,e.type="sine",a.gain.value=.3,e.start(),e.stop(t.currentTime+.3)}catch(t){console.warn("无法播放备用音效:",t)}},stopNotificationSound(){this.currentAudio&&(ns(this.currentAudio),this.currentAudio=null)},sendDisplayedReceipt(){var t;try{this.$refs.eventSender&&((t=this.currentNotification)!=null&&t.eventId)&&(this.$refs.eventSender.sendDisplayedReceipt({},this.currentNotification.content.notificationId),console.log("已发送显示回执:",this.currentNotification.eventId))}catch(e){console.warn("发送显示回执失败:",e)}},sendReadReceipt(){var t;try{this.$refs.eventSender&&((t=this.currentNotification)!=null&&t.eventId)&&(this.$refs.eventSender.sendReadReceipt({},this.currentNotification.content.notificationId),console.log("已发送已读回执:",this.currentNotification.eventId))}catch(e){console.warn("发送已读回执失败:",e)}},previousNotification(){this.currentIndex>0&&(this.currentIndex--,this.sendDisplayedReceipt(),this.isUrgent?this.startUrgentSound():this.stopUrgentSound())},nextNotification(){this.currentIndex{this.visible&&this.isUrgent?this.playFallbackSound():this.stopUrgentSound()},1e3))},stopUrgentSound(){this.urgentSoundTimer&&(clearInterval(this.urgentSoundTimer),this.urgentSoundTimer=null),this.stopNotificationSound()},async sendBrowserNotification(t){var e,a,l,n;if(!("Notification"in window)){console.warn("浏览器不支持通知API");return}try{let o=Notification.permission;if(o==="default"&&(o=await Notification.requestPermission()),o!=="granted"){console.warn("用户未授予通知权限");return}const d=((e=t.content)==null?void 0:e.message)||"新通知",m=t.senderInfo||((a=t.content)==null?void 0:a.senderInfo),f=(m==null?void 0:m.deviceName)||(m==null?void 0:m.deviceType)||"未知发送者",h=((l=t.content)==null?void 0:l.isUrgent)||!1,k=new Notification(h?"🚨 紧急通知":"📢 通知消息",{body:`${d} +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-BXl8SUNP.js","./index-btKy2yxc.css","./dataProvider-Cg4CSn_f.js","./serverRotation-BBUKyTw9.js"])))=>i.map(i=>d[i]); +import{V as jt,a as Ht,_ as pt}from"./ExamConfigEditor-D-fBjxzF.js";import{_ as W,k as S,s as re,o as c,j as b,w as i,c as s,l as _,q as j,t as D,v as u,x as L,y,z as V,i as r,A as g,B as vt,C as p,D as w,F as E,E as Qe,T as Ke,G as U,d as fe,H as J,n as he,I as oe,J as be,K as ve,L as Ie,M as X,N as tt,O as qe,P as we,Q as Se,R as Je,S as xe,U as Kt,W as qt,X as Ae,Y as yt,Z as Ye,$ as Wt,a0 as $e,a1 as Pe,a2 as $,a3 as G,a4 as st,a5 as Gt,a6 as Qt,a7 as Jt,a8 as kt,a9 as bt,aa as xt,ab as Oe,ac as Xe,ad as nt,ae as Le,af as Yt,ag as it,ah as Ee,ai as Ve,aj as Xt,ak as Ne}from"./index-BXl8SUNP.js";import{V as Ce}from"./VTextField-DxxbesnN.js";import{V as Ze,a as Zt}from"./VTooltip-CyZjDjKS.js";import{V as O}from"./VChip-jIQL7s_d.js";import{s as es,g as wt,j as We,o as ce,a as ts,l as ss}from"./socketClient-BAypaVYV.js";import{p as at,s as ns,a as ot,V as is,_ as St}from"./VCombobox-D_3YC1pP.js";import{f as as,s as os,c as Ct}from"./deviceEvents-8tGBwa2U.js";import{V as ue,a as ne}from"./VRow-DFPdcq_b.js";import{V as ls,a as lt}from"./VPagination-BUmJ8K2V.js";import{V as Ue}from"./VTextarea-B0_PT1is.js";import{d as Z,a as Be,g as _t,b as me,k as rs}from"./dataProvider-Cg4CSn_f.js";import{V as rt,a as dt,b as ds,c as us}from"./VAppBarTitle-hRIhv4pw.js";import{V as Dt}from"./VContainer-Doz_PneH.js";import{V as ut}from"./VForm-C1v7pkqf.js";import{V as Ge}from"./VSwitch-7fkmr9E6.js";import{V as cs}from"./filter-BHXElGQ1.js";import{V as _e}from"./VAlert-DncbAu3E.js";import{V as ms,a as ct,b as mt,c as ft}from"./VExpansionPanels-LOsDx07C.js";import"./VSkeletonLoader-DKLQDg5n.js";import"./VCheckboxBtn-iC2wkMdx.js";import"./VSheet-CWiuVQYN.js";import"./serverRotation-BBUKyTw9.js";const fs={name:"RandomPicker",props:{studentList:{type:Array,required:!0},attendance:{type:Object,required:!0,default:()=>({absent:[],late:[],exclude:[]})}},data(){return{dialog:!1,count:S("randomPicker.defaultCount"),isPickingStarted:!1,isAnimating:!1,pickedStudents:[],animationStudents:[],highlightedIndices:[],animationTimer:null,getSetting:S,tempFilters:{excludeAbsent:S("randomPicker.excludeAbsent"),excludeLate:S("randomPicker.excludeLate"),excludeExcluded:S("randomPicker.excludeExcluded")},pickerMode:S("randomPicker.mode"),minNumber:S("randomPicker.minNumber"),maxNumber:S("randomPicker.maxNumber")}},computed:{absentCount(){return this.attendance.absent?this.attendance.absent.length:0},lateCount(){return this.attendance.late?this.attendance.late.length:0},excludedCount(){return this.attendance.exclude?this.attendance.exclude.length:0},numberModeStudents(){if(this.pickerMode!=="number")return[];const t=[];for(let e=this.minNumber;e<=this.maxNumber;e++)t.push(e.toString().padStart(2,"0")+"号");return t},filteredStudents(){return this.pickerMode==="number"?this.numberModeStudents:!this.studentList||!this.studentList.length?[]:this.studentList.filter(t=>!(this.tempFilters.excludeAbsent&&this.attendance.absent.includes(t)||this.tempFilters.excludeLate&&this.attendance.late.includes(t)||this.tempFilters.excludeExcluded&&this.attendance.exclude.includes(t)))},availableStudents(){return this.filteredStudents},maxAllowedCount(){return Math.min(10,this.filteredStudents.length)},remainingStudents(){return this.filteredStudents.filter(t=>!this.pickedStudents.includes(t))}},watch:{dialog(t){t?(this.count=S("randomPicker.defaultCount"),this.isPickingStarted=!1,this.isAnimating=!1,this.pickedStudents=[],this.tempFilters={excludeAbsent:S("randomPicker.excludeAbsent"),excludeLate:S("randomPicker.excludeLate"),excludeExcluded:S("randomPicker.excludeExcluded")}):this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},tempFilters:{handler(){this.count>this.maxAllowedCount&&(this.count=Math.max(1,this.maxAllowedCount))},deep:!0},pickerMode:{handler(t){re("randomPicker.mode",t)}},minNumber:{handler(t){t>this.maxNumber&&(this.minNumber=this.maxNumber),t<1&&(this.minNumber=1),re("randomPicker.minNumber",this.minNumber)}},maxNumber:{handler(t){t100&&(this.maxNumber=100),re("randomPicker.maxNumber",this.maxNumber)}}},methods:{open(){this.dialog=!0},incrementCount(){this.count1&&this.count--},startPicking(){this.filteredStudents.length!==0&&(this.isPickingStarted=!0,S("randomPicker.animation")?this.startAnimation():this.finishPicking())},startAnimation(){this.isAnimating=!0,this.animationStudents=this.filteredStudents.map((t,e)=>({id:`student-${e}`,name:t})),this.animateHighlight()},animateHighlight(){let e=0;const a=50,l=()=>{this.highlightedIndices=[];const n=[];for(let d=0;d{this.finishPicking()},500)};l()},finishPicking(){this.isAnimating=!1;const t=[...this.filteredStudents].sort(()=>.5-Math.random());this.pickedStudents=t.slice(0,this.count)},resetPicker(){this.isPickingStarted=!1,this.isAnimating=!1,this.pickedStudents=[],this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},refreshSingleStudent(t){if(this.remainingStudents.length===0)return;const e=Math.floor(Math.random()*this.remainingStudents.length),a=this.remainingStudents[e];this.pickedStudents[t]=a;const l=document.querySelectorAll(".result-card");l[t]&&(l[t].classList.add("refresh-animation"),setTimeout(()=>{l[t].classList.remove("refresh-animation")},500))}}},hs={class:"d-flex justify-center align-center counter-container"},gs={class:"count-display mx-8"},ps={class:"text-h2 font-weight-bold"},vs={class:"mode-switch-container mt-6"},ys={key:0,class:"number-range-container mt-4"},ks={class:"d-flex justify-center align-center gap-4"},bs={class:"mt-4"},xs={key:1,class:"mt-4 text-error"},ws={class:"mt-4 text-caption"},Ss={class:"pa-2"},Cs={key:0},_s={key:1},Ds={key:2},Ts={key:1,class:"d-flex flex-wrap justify-center gap-2 mt-4"},Is={key:0,class:"animation-container"},Es={class:"animation-wrapper"},Ns={key:1,class:"result-container"},Vs={class:"mt-8 d-flex justify-center"};function As(t,e,a,l,n,o){return c(),b(J,{modelValue:n.dialog,"onUpdate:modelValue":e[8]||(e[8]=d=>n.dialog=d),"fullscreen-breakpoint":"sm","max-width":"600",persistent:""},{default:i(()=>[s(_,{border:"",class:"random-picker-card",rounded:"xl"},{default:i(()=>[s(j,{class:"text-h5 d-flex align-center"},{default:i(()=>[s(D,{class:"mr-2",icon:"mdi-account-question"}),e[9]||(e[9]=u(" 随机点名 ",-1)),s(L),s(y,{icon:"mdi-close",variant:"text",onClick:e[0]||(e[0]=d=>n.dialog=!1)})]),_:1}),n.isPickingStarted?(c(),b(V,{key:1,class:"text-center py-6"},{default:i(()=>[n.isAnimating?(c(),p("div",Is,[r("div",Es,[s(Ke,{class:"shuffle-container",name:"shuffle",tag:"div"},{default:i(()=>[(c(!0),p(E,null,U(n.animationStudents,(d,m)=>(c(),p("div",{key:d.id,class:fe([{highlighted:n.highlightedIndices.includes(m)},"student-item"])},g(d.name),3))),128))]),_:1})])])):(c(),p("div",Ns,[e[19]||(e[19]=r("div",{class:"text-h6 mb-4"},"抽取结果",-1)),(c(!0),p(E,null,U(n.pickedStudents,(d,m)=>(c(),b(_,{key:m,class:"mb-2 result-card",color:"primary",variant:"outlined"},{default:i(()=>[s(V,{class:"text-h4 text-center py-4 d-flex align-center justify-center"},{default:i(()=>[u(g(d)+" ",1),s(y,{disabled:o.remainingStudents.length===0,title:o.remainingStudents.length===0?"没有更多可用学生":"重新抽取此学生",class:"ml-2 refresh-btn",icon:"mdi-refresh",size:"small",variant:"text",onClick:f=>o.refreshSingleStudent(m)},null,8,["disabled","title","onClick"])]),_:2},1024)]),_:2},1024))),128)),r("div",Vs,[s(y,{class:"mx-2",color:"primary","prepend-icon":"mdi-refresh",size:"large",onClick:o.resetPicker},{default:i(()=>[...e[17]||(e[17]=[u(" 重新抽取 ",-1)])]),_:1},8,["onClick"]),s(y,{class:"mx-2",color:"grey",size:"large",variant:"outlined",onClick:e[7]||(e[7]=d=>n.dialog=!1)},{default:i(()=>[...e[18]||(e[18]=[u(" 关闭 ",-1)])]),_:1})])]))]),_:1})):(c(),b(V,{key:0,class:"text-center py-6"},{default:i(()=>[e[16]||(e[16]=r("div",{class:"text-h6 mb-4"},"请选择抽取人数",-1)),r("div",hs,[s(y,{disabled:n.count<=1,class:"counter-btn",color:"primary",icon:"mdi-minus",size:"x-large",variant:"tonal",onClick:o.decrementCount},null,8,["disabled","onClick"]),r("div",gs,[r("span",ps,g(n.count),1),e[10]||(e[10]=r("span",{class:"text-subtitle-1 ml-2"},"人",-1))]),s(y,{disabled:n.count>=o.maxAllowedCount,class:"counter-btn",color:"primary",icon:"mdi-plus",size:"x-large",variant:"tonal",onClick:o.incrementCount},null,8,["disabled","onClick"])]),r("div",vs,[s(vt,{modelValue:n.pickerMode,"onUpdate:modelValue":e[1]||(e[1]=d=>n.pickerMode=d),class:"mode-toggle",color:"primary",mandatory:"",rounded:"pill"},{default:i(()=>[s(y,{"prepend-icon":"mdi-account",value:"name"},{default:i(()=>[...e[11]||(e[11]=[u("姓名模式",-1)])]),_:1}),s(y,{"prepend-icon":"mdi-numeric",value:"number"},{default:i(()=>[...e[12]||(e[12]=[u("学号模式",-1)])]),_:1})]),_:1},8,["modelValue"])]),n.pickerMode==="number"?(c(),p("div",ys,[e[14]||(e[14]=r("div",{class:"text-subtitle-1 mb-2"},"学号范围设置",-1)),r("div",ks,[s(Ce,{modelValue:n.minNumber,"onUpdate:modelValue":e[2]||(e[2]=d=>n.minNumber=d),modelModifiers:{number:!0},class:"number-input",density:"compact","hide-details":"",label:"最小值",max:"100",min:"1",type:"number"},null,8,["modelValue"]),e[13]||(e[13]=r("span",{class:"mx-2"},"至",-1)),s(Ce,{modelValue:n.maxNumber,"onUpdate:modelValue":e[3]||(e[3]=d=>n.maxNumber=d),modelModifiers:{number:!0},class:"number-input",density:"compact","hide-details":"",label:"最大值",max:"100",min:"1",type:"number"},null,8,["modelValue"])])])):w("",!0),r("div",bs,[s(y,{disabled:o.filteredStudents.length===0,class:"start-btn",color:"primary","prepend-icon":"mdi-dice-multiple",size:"x-large",onClick:o.startPicking},{default:i(()=>[...e[15]||(e[15]=[u(" 开始抽取 ",-1)])]),_:1},8,["disabled","onClick"])]),o.filteredStudents.length===0?(c(),p("div",xs,[n.pickerMode==="name"?(c(),p(E,{key:0},[u(" 没有可抽取的学生,请调整过滤选项 ")],64)):(c(),p(E,{key:1},[u(" 请设置有效的学号范围 ")],64))])):w("",!0),r("div",ws,[u(" 当前可抽取学生: "+g(o.filteredStudents.length)+"人 ",1),n.pickerMode==="name"?(c(),b(Ze,{key:0,location:"bottom"},{activator:i(({props:d})=>[s(D,Qe({class:"ml-1",icon:"mdi-information-outline",size:"small"},d),null,16)]),default:i(()=>[r("div",Ss,[n.tempFilters.excludeAbsent?(c(),p("div",Cs," • 已排除请假学生 ("+g(o.absentCount)+"人) ",1)):w("",!0),n.tempFilters.excludeLate?(c(),p("div",_s," • 已排除迟到学生 ("+g(o.lateCount)+"人) ",1)):w("",!0),n.tempFilters.excludeExcluded?(c(),p("div",Ds," • 已排除不参与学生 ("+g(o.excludedCount)+"人) ",1)):w("",!0)])]),_:1})):w("",!0),n.pickerMode==="name"?(c(),p("div",Ts,[s(O,{color:n.tempFilters.excludeLate?"warning":"default",variant:n.tempFilters.excludeLate?"elevated":"text",class:"filter-chip","prepend-icon":"mdi-clock-alert",onClick:e[4]||(e[4]=d=>n.tempFilters.excludeLate=!n.tempFilters.excludeLate)},{default:i(()=>[u(g(n.tempFilters.excludeLate?"排除":"包含")+"迟到学生 ",1)]),_:1},8,["color","variant"]),s(O,{color:n.tempFilters.excludeAbsent?"error":"default",variant:n.tempFilters.excludeAbsent?"elevated":"text",class:"filter-chip","prepend-icon":"mdi-account-off",onClick:e[5]||(e[5]=d=>n.tempFilters.excludeAbsent=!n.tempFilters.excludeAbsent)},{default:i(()=>[u(g(n.tempFilters.excludeAbsent?"排除":"包含")+"请假学生 ",1)]),_:1},8,["color","variant"]),s(O,{color:n.tempFilters.excludeExcluded?"grey":"default",variant:n.tempFilters.excludeExcluded?"elevated":"text",class:"filter-chip","prepend-icon":"mdi-account-cancel",onClick:e[6]||(e[6]=d=>n.tempFilters.excludeExcluded=!n.tempFilters.excludeExcluded)},{default:i(()=>[u(g(n.tempFilters.excludeExcluded?"排除":"包含")+"不参与学生 ",1)]),_:1},8,["color","variant"])])):w("",!0)])]),_:1}))]),_:1})]),_:1},8,["modelValue"])}const Tt=W(fs,[["render",As],["__scopeId","data-v-85e7eea6"]]),Us={name:"EventSender",emits:["sent","error"],methods:{async sendEvent(t,e={}){try{return es(t,e),this.$emit("sent",{eventName:t,content:e,timestamp:new Date().toISOString(),success:!0}),{success:!0,eventId:(e==null?void 0:e.eventId)||null,notificationId:(e==null?void 0:e.notificationId)||null}}catch(a){return console.error("发送事件失败:",a),this.$emit("error",{eventName:t,content:e,error:a.message,timestamp:new Date().toISOString(),success:!1}),{success:!1,error:a.message}}},async sendNotification(t,e=!1,a=[],l={},n=null){const o=`evt-${Date.now()}-${Math.random().toString(36).slice(2,8)}`;return this.sendEvent("notification",{eventId:o,notificationId:n,message:t,isUrgent:e,targetDevices:a,senderInfo:l})},async sendReceipt(t,e,a={},l=null){const n=`rcpt-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.sendEvent("notification-receipt",{eventId:n,originalEventId:t,notificationId:l,status:e,deviceInfo:a})},async sendDisplayedReceipt(t={},e=null){const a=`disp-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.sendEvent("notification-displayed",{eventId:a,notificationId:e,deviceInfo:t})},async sendReadReceipt(t={},e=null){const a=`read-${Date.now()}-${Math.random().toString(36).slice(2,6)}`;return this.sendEvent("notification-read",{eventId:a,notificationId:e,deviceInfo:t})}}},zs={style:{display:"none"}};function Ms(t,e,a,l,n,o){return c(),p("div",zs)}const Fe=W(Us,[["render",Ms]]),$s={name:"UrgentNotification",components:{EventSender:Fe},data(){return{visible:!1,notificationQueue:[],currentIndex:0,autoCloseTimer:null,urgentSoundTimer:null,currentAudio:null}},computed:{currentNotification(){return this.notificationQueue[this.currentIndex]||null},hasNotifications(){return this.notificationQueue.length>0},hasMultipleNotifications(){return this.notificationQueue.length>1},notificationCountText(){return this.hasMultipleNotifications?`${this.currentIndex+1} / ${this.notificationQueue.length}`:""},isUrgent(){var t,e;return((e=(t=this.currentNotification)==null?void 0:t.content)==null?void 0:e.isUrgent)||!1},urgencyColor(){return this.isUrgent?"red darken-2":"blue darken-2"},iconColor(){return"white"},urgencyIcon(){return this.isUrgent?"mdi-alert-circle-outline":"mdi-information-outline"},urgencyTitle(){return this.isUrgent?"🚨 紧急通知":"📢 通知消息"},senderName(){var e,a,l;const t=((e=this.currentNotification)==null?void 0:e.senderInfo)||((l=(a=this.currentNotification)==null?void 0:a.content)==null?void 0:l.senderInfo);return t?t.deviceName||t.deviceType||"未知设备":"未知发送者"},deviceType(){var e,a,l;const t=((e=this.currentNotification)==null?void 0:e.senderInfo)||((l=(a=this.currentNotification)==null?void 0:a.content)==null?void 0:l.senderInfo);return(t==null?void 0:t.deviceType)=="teacher"?"教师":(t==null?void 0:t.deviceType)=="student"?"学生":(t==null?void 0:t.deviceType)=="classroom"?"教室":(t==null?void 0:t.deviceType)||"未知类型"},targetDevices(){var t,e;return((e=(t=this.currentNotification)==null?void 0:t.content)==null?void 0:e.targetDevices)||[]}},beforeUnmount(){this.autoCloseTimer&&clearTimeout(this.autoCloseTimer),this.urgentSoundTimer&&clearInterval(this.urgentSoundTimer),this.stopNotificationSound()},methods:{show(t){var a;if(this.notificationQueue.findIndex(l=>{var n,o;return((n=l.content)==null?void 0:n.notificationId)===((o=t.content)==null?void 0:o.notificationId)})!==-1){console.log("通知已存在,跳过添加");return}this.notificationQueue.push(t),this.visible?(a=t.content)!=null&&a.isUrgent&&!this.isUrgent?(this.currentIndex=this.notificationQueue.length-1,this.sendDisplayedReceipt(),this.playNotificationSound(),this.sendBrowserNotification(t),this.startUrgentSound()):this.sendBrowserNotification(t):(this.currentIndex=this.notificationQueue.length-1,this.visible=!0,this.sendDisplayedReceipt(),this.playNotificationSound(),this.sendBrowserNotification(t),this.isUrgent&&this.startUrgentSound())},close(){var t,e,a,l;try{this.sendReadReceipt(),console.log("已发送已读回执")}catch(n){console.warn("发送已读回执失败:",n)}if((e=(t=this.currentNotification)==null?void 0:t.content)!=null&&e.message){const n=this.isUrgent?"紧急通知":"通知";this.isUrgent?(a=this.$message)==null||a.error(n,`${this.currentNotification.content.message}`):(l=this.$message)==null||l.info(n,`${this.currentNotification.content.message}`)}this.notificationQueue.length>0&&(this.notificationQueue.splice(this.currentIndex,1),this.currentIndex>=this.notificationQueue.length&&(this.currentIndex=Math.max(0,this.notificationQueue.length-1)),this.notificationQueue.length>0?(this.sendDisplayedReceipt(),this.isUrgent?this.startUrgentSound():this.stopUrgentSound()):this.closeWithoutRead())},closeWithoutRead(){this.visible=!1,this.notificationQueue=[],this.currentIndex=0,this.autoCloseTimer&&(clearTimeout(this.autoCloseTimer),this.autoCloseTimer=null),this.stopUrgentSound()},formatTime(t){if(!t)return"";try{const e=new Date(t);if(new Date-e<24*60*60*1e3){const n=String(e.getHours()).padStart(2,"0"),o=String(e.getMinutes()).padStart(2,"0");return`${n}:${o}`}else{const n=String(e.getMonth()+1).padStart(2,"0"),o=String(e.getDate()).padStart(2,"0");return`${n}/${o}`}}catch{return"无效时间"}},getDeviceTypeLabel(t){return{classroom:"教室设备",student:"学生设备",teacher:"教师设备",admin:"管理员设备",system:"系统设备"}[t]||t},playNotificationSound(){try{this.stopNotificationSound();const t=this.isUrgent?S("notification.urgentSound"):S("notification.singleSound");this.currentAudio=at(t,!1),this.currentAudio||this.playFallbackSound()}catch(t){console.warn("无法播放通知音效:",t),this.playFallbackSound()}},playFallbackSound(){try{const t=new(window.AudioContext||window.webkitAudioContext),e=t.createOscillator(),a=t.createGain();e.connect(a),a.connect(t.destination),e.frequency.value=1e3,e.type="sine",a.gain.value=.3,e.start(),e.stop(t.currentTime+.3)}catch(t){console.warn("无法播放备用音效:",t)}},stopNotificationSound(){this.currentAudio&&(ns(this.currentAudio),this.currentAudio=null)},sendDisplayedReceipt(){var t;try{this.$refs.eventSender&&((t=this.currentNotification)!=null&&t.eventId)&&(this.$refs.eventSender.sendDisplayedReceipt({},this.currentNotification.content.notificationId),console.log("已发送显示回执:",this.currentNotification.eventId))}catch(e){console.warn("发送显示回执失败:",e)}},sendReadReceipt(){var t;try{this.$refs.eventSender&&((t=this.currentNotification)!=null&&t.eventId)&&(this.$refs.eventSender.sendReadReceipt({},this.currentNotification.content.notificationId),console.log("已发送已读回执:",this.currentNotification.eventId))}catch(e){console.warn("发送已读回执失败:",e)}},previousNotification(){this.currentIndex>0&&(this.currentIndex--,this.sendDisplayedReceipt(),this.isUrgent?this.startUrgentSound():this.stopUrgentSound())},nextNotification(){this.currentIndex{this.visible&&this.isUrgent?this.playFallbackSound():this.stopUrgentSound()},1e3))},stopUrgentSound(){this.urgentSoundTimer&&(clearInterval(this.urgentSoundTimer),this.urgentSoundTimer=null),this.stopNotificationSound()},async sendBrowserNotification(t){var e,a,l,n;if(!("Notification"in window)){console.warn("浏览器不支持通知API");return}try{let o=Notification.permission;if(o==="default"&&(o=await Notification.requestPermission()),o!=="granted"){console.warn("用户未授予通知权限");return}const d=((e=t.content)==null?void 0:e.message)||"新通知",m=t.senderInfo||((a=t.content)==null?void 0:a.senderInfo),f=(m==null?void 0:m.deviceName)||(m==null?void 0:m.deviceType)||"未知发送者",h=((l=t.content)==null?void 0:l.isUrgent)||!1,k=new Notification(h?"🚨 紧急通知":"📢 通知消息",{body:`${d} 来自: ${f}`,icon:"/pwa/image/icon-192.png",badge:"/pwa/image/icon-192.png",tag:((n=t.content)==null?void 0:n.notificationId)||`notification-${Date.now()}`,requireInteraction:h,silent:!1,vibrate:h?[200,100,200,100,200]:[200],timestamp:t.timestamp||Date.now()});k.onclick=()=>{window.focus(),k.close()},h||setTimeout(()=>{k.close()},1e4)}catch(o){console.error("发送浏览器通知失败:",o)}}}},Ps={class:"urgent-title mb-6"},Ls={class:"urgent-subtitle mb-6"},Fs={key:0,class:"navigation-controls mt-6"},Rs={class:"notification-counter mb-3"},Os={class:"navigation-buttons"},Bs={class:"mt-8"};function js(t,e,a,l,n,o){const d=Fe;return c(),p(E,null,[s(J,{modelValue:n.visible,"onUpdate:modelValue":e[0]||(e[0]=m=>n.visible=m),"max-width":"800",persistent:"",transition:"dialog-transition",class:"urgent-notification-dialog"},{default:i(()=>[s(_,{class:"urgent-notification-card",color:o.urgencyColor,elevation:"24"},{default:i(()=>[s(V,null,{default:i(()=>{var m,f,h;return[r("div",Ps,g(((f=(m=o.currentNotification)==null?void 0:m.content)==null?void 0:f.message)||"无内容"),1),r("div",Ls,g(o.senderName)+" "+g(o.deviceType)+" "+g(o.formatTime((h=o.currentNotification)==null?void 0:h.timestamp)),1),o.hasMultipleNotifications?(c(),p("div",Fs,[s(_,{variant:"flat",color:"rgba(255,255,255,0.1)"},{default:i(()=>[s(V,{class:"text-center"},{default:i(()=>[r("div",Rs,[s(O,{color:"white",variant:"flat",size:"small"},{default:i(()=>[u(g(o.notificationCountText),1)]),_:1})]),r("div",Os,[s(y,{disabled:n.currentIndex===0,color:"white",variant:"outlined",size:"small",onClick:o.previousNotification},{default:i(()=>[s(D,null,{default:i(()=>[...e[1]||(e[1]=[u(" mdi-chevron-left ",-1)])]),_:1}),e[2]||(e[2]=u(" 上一个 ",-1))]),_:1},8,["disabled","onClick"]),s(y,{disabled:n.currentIndex===n.notificationQueue.length-1,color:"white",variant:"outlined",size:"small",class:"ml-2",onClick:o.nextNotification},{default:i(()=>[e[4]||(e[4]=u(" 下一个 ",-1)),s(D,null,{default:i(()=>[...e[3]||(e[3]=[u(" mdi-chevron-right ",-1)])]),_:1})]),_:1},8,["disabled","onClick"])])]),_:1})]),_:1})])):w("",!0),r("div",Bs,[s(y,{color:"white",size:"large",variant:"flat",onClick:o.close},{default:i(()=>[s(D,{left:""},{default:i(()=>[...e[5]||(e[5]=[u(" mdi-check ",-1)])]),_:1}),e[6]||(e[6]=u(" 我知道了 ",-1))]),_:1},8,["onClick"])])]}),_:1})]),_:1},8,["color"])]),_:1},8,["modelValue"]),s(d,{ref:"eventSender"},null,512)],64)}const It=W($s,[["render",js],["__scopeId","data-v-6190a823"]]),Hs={name:"ChatWidget",components:{UrgentNotification:It},props:{modelValue:{type:Boolean,default:!1},showButton:{type:Boolean,default:!0},offset:{type:Number,default:16},width:{type:Number,default:380},height:{type:Number,default:520}},emits:["update:modelValue"],data(){return{visible:this.modelValue,text:"",messages:[],allEvents:[],lastVisit:null,unreadCount:0,connected:!1,socketId:"",currentMode:"chat",currentPage:1,itemsPerPage:20,loading:!1,isDestroying:!1,eventStats:{chat:0,kvChanged:0,other:0},cleanupFunctions:[]}},computed:{panelStyle(){return{right:this.offset+"px",bottom:this.offset+"px",width:this.width+"px",height:this.height+"px"}},toggleStyle(){return{right:this.offset+"px",bottom:this.offset+"px"}},canSend(){return!!(S("server.kvToken")&&this.text.trim())},showToggleButton(){return this.$props.showButton&&!this.visible},decoratedMessages(){if(!this.lastVisit)return this.messages;const t=this.messages.findIndex(l=>l.at&&new Date(l.at).getTime()>=new Date(this.lastVisit).getTime());if(t<=0)return this.messages;const e=this.messages.slice(0,t),a=this.messages.slice(t);return[...e,{_id:"divider",_type:"divider"},...a]},currentDisplayItems(){return this.currentMode==="chat"?this.decoratedMessages:this.paginatedEvents},paginatedEvents(){if(this.isDestroying||!this.allEvents)return[];const t=(this.currentPage-1)*this.itemsPerPage,e=t+this.itemsPerPage;return this.allEvents.slice(t,e)},totalPages(){return this.isDestroying||!this.allEvents?1:Math.ceil(this.allEvents.length/this.itemsPerPage)},modeTitle(){return this.currentMode==="chat"?"设备聊天室":"所有事件"}},watch:{modelValue(t){this.visible=t,t&&this.onOpen()}},mounted(){try{const h=localStorage.getItem("chat.lastVisit");h&&(this.lastVisit=h)}catch{}const t=wt();this.connected=!!t.connected,this.socketId=t.id||"",t.on("connect",()=>{this.connected=!0,this.socketId=t.id||""}),t.on("disconnect",()=>{this.connected=!1});const e=S("server.kvToken");e&&We(e);const a=h=>(...k)=>{if(!this.isDestroying)try{h(...k)}catch(I){console.error("ChatWidget 事件处理错误:",I)}},l=ce("chat:message",a(h=>{this.pushMessage(h),this.addEvent({_id:`legacy-chat-${Date.now()}-${Math.random()}`,type:"chat:message",content:h,timestamp:h.at||new Date().toISOString(),senderId:h.senderId,uuid:h.uuid,senderInfo:h.senderInfo})})),n=ce("chat",a(h=>{if(h&&h.content&&h.content.text){const k={text:h.content.text,senderId:h.senderId,at:h.timestamp,uuid:h.senderId,senderInfo:h.senderInfo};this.pushMessage(k),this.addEvent({_id:h.eventId||`chat-${Date.now()}-${Math.random()}`,type:"chat",content:h.content,timestamp:h.timestamp,eventId:h.eventId,senderId:h.senderId,senderInfo:h.senderInfo})}}));this.deviceEventHandler=Ct({onChat:a((h,k)=>{this.pushMessage(h),this.addEvent(k)}),onKvChanged:a((h,k)=>{this.addEvent(k)}),onUrgentNotice:a((h,k)=>{this.addEvent(k),this.showUrgentNotification(k)}),onNotification:a((h,k)=>{console.log("收到通知事件:",h,k),this.addEvent(k),this.showUrgentNotification(k)}),onOtherEvent:a(h=>{(h.type==="urgent-notice"||h.type==="notification")&&this.showUrgentNotification(h),this.addEvent(h)}),enableLegacySupport:!0});const o=ce("device-event",this.deviceEventHandler),d=ce("kv-key-changed",a(h=>{h.content&&h.timestamp?this.addEvent({_id:`kv-${Date.now()}-${Math.random()}`,type:"kv-key-changed",content:h.content,timestamp:h.timestamp,eventId:h.eventId,senderId:h.senderId,senderInfo:h.senderInfo}):this.addEvent({_id:`legacy-kv-${Date.now()}-${Math.random()}`,type:"kv-key-changed",content:h,timestamp:h.updatedAt||new Date().toISOString(),uuid:h.uuid})})),m=ce("urgent-notice",a(h=>{console.log("收到紧急通知:",h),this.addEvent({_id:`urgent-${Date.now()}-${Math.random()}`,type:"urgent-notice",content:h.content||h,timestamp:h.timestamp||new Date().toISOString(),eventId:h.eventId,senderId:h.senderId,senderInfo:h.senderInfo}),this.showUrgentNotification(h)})),f=ce("notification",a(h=>{var k;console.log("收到通知事件:",h),this.addEvent({_id:`notification-${Date.now()}-${Math.random()}`,type:"notification",content:h.content||h,timestamp:h.timestamp||new Date().toISOString(),eventId:h.eventId,senderId:h.senderId,senderInfo:h.senderInfo||((k=h.content)==null?void 0:k.senderInfo)}),this.showUrgentNotification(h)}));this.cleanupFunctions=[l,n,m,f,o,d],this.visible&&this.onOpen()},beforeUnmount(){this.isDestroying=!0,this.cleanupFunctions&&Array.isArray(this.cleanupFunctions)&&this.cleanupFunctions.forEach(t=>{try{typeof t=="function"&&t()}catch(e){console.warn("ChatWidget 清理函数执行失败:",e)}});try{this.offMessage&&this.offMessage(),this.offDeviceEvent&&this.offDeviceEvent(),this.offKvChanged&&this.offKvChanged()}catch(t){console.warn("ChatWidget 旧清理函数执行失败:",t)}this.cleanupFunctions=[],this.messages=[],this.allEvents=[]},methods:{open(){this.visible=!0,this.$emit("update:modelValue",!0),this.onOpen()},close(){this.visible=!1,this.$emit("update:modelValue",!1);try{localStorage.setItem("chat.lastVisit",new Date().toISOString())}catch{}this.unreadCount=0},onOpen(){this.$nextTick(()=>this.scrollToBottom())},insertEmoji(t){this.text+=t,this.$nextTick(()=>{var e,a;if((a=(e=this.$refs.inputRef)==null?void 0:e.$el)!=null&&a.querySelector){const l=this.$refs.inputRef.$el.querySelector("textarea");l==null||l.focus()}})},handleEnter(t){t.shiftKey||this.send()},send(){const t=this.text.trim();if(!t)return;const e={_id:`self-${Date.now()}-${Math.random()}`,text:t,at:new Date().toISOString(),senderId:this.socketId,self:!0,senderInfo:{deviceName:"我",deviceType:"client",isReadOnly:!1}};this.pushMessage(e),this.addEvent({_id:`self-event-${Date.now()}-${Math.random()}`,type:"chat",content:{text:t},timestamp:new Date().toISOString(),senderId:this.socketId,senderInfo:{deviceName:"本设备",deviceType:"client",isReadOnly:!1}}),os(t),this.text=""},pushMessage(t){if(!(this.isDestroying||!t))try{const e={_id:`${t.at||Date.now()}-${Math.random()}`,text:typeof(t==null?void 0:t.text)=="string"?t.text:(t==null?void 0:t.text)||"",at:t.at||new Date().toISOString(),senderId:t.senderId,self:!!(t.senderId&&t.senderId===this.socketId),senderInfo:t.senderInfo||null,deviceName:this.getDeviceName(t.senderInfo,t.senderId===this.socketId)};if(!e.text)return;this.messages.push(e),this.visible||this.unreadCount++,this.$nextTick(()=>{this.isDestroying||this.scrollToBottom()}),this.messages.length>500&&this.messages.shift()}catch(e){console.error("ChatWidget pushMessage 错误:",e)}},formatTime(t){try{const e=new Date(t),a=String(e.getHours()).padStart(2,"0"),l=String(e.getMinutes()).padStart(2,"0");return`${a}:${l}`}catch{return""}},scrollToBottom(){if(!this.isDestroying)try{const t=this.$refs.listRef;if(!t)return;requestAnimationFrame(()=>{!this.isDestroying&&t&&(t.scrollTop=t.scrollHeight)})}catch(t){console.warn("ChatWidget scrollToBottom 错误:",t)}},addEvent(t){if(!(this.isDestroying||!t))try{this.allEvents.unshift(t),t.type==="chat"||t.type==="chat:message"?this.eventStats.chat++:t.type==="kv-key-changed"?this.eventStats.kvChanged++:this.eventStats.other++,this.allEvents.length>200&&(this.allEvents=this.allEvents.slice(0,200))}catch(e){console.error("ChatWidget addEvent 错误:",e)}},getEventColor(t){switch(t){case"chat":case"chat:message":return"success";case"kv-key-changed":return"info";default:return"warning"}},getEventTypeLabel(t){switch(t){case"chat":case"chat:message":return"聊天";case"kv-key-changed":return"KV变化";default:return t}},formatDeviceInfo(t){return as(t)},getDeviceName(t,e=!1){return e?"我":t?t.deviceName==="realtime"?"系统":t.deviceName||t.deviceType||"未知设备":"未知设备"},showUrgentNotification(t){try{this.$refs.urgentNotification?this.$refs.urgentNotification.show(t):console.warn("紧急通知组件未找到")}catch(e){console.error("显示紧急通知失败:",e)}}}},Ks={class:"text-subtitle-1"},qs={key:0,ref:"listRef",class:"messages"},Ws={key:0,class:"divider-row"},Gs={class:"avatar"},Qs={class:"bubble"},Js={key:0,class:"sender-name"},Ys={class:"text"},Xs={class:"meta"},Zs={key:0,class:"device-name"},en={key:1,class:"events-container"},tn={class:"event-stats mb-3"},sn={class:"text-h6"},nn={class:"text-h6"},an={class:"text-h6"},on={class:"events-list"},ln={class:"d-flex align-center mb-1"},rn={class:"text-caption"},dn={key:0,class:"mb-1 text-caption"},un={class:"event-content"},cn={key:0,class:"chat-content"},mn={key:1,class:"text-caption event-data"},fn={key:0,class:"text-center text-grey pa-4"},hn={key:0,class:"pagination mt-2"};function gn(t,e,a,l,n,o){const d=It;return c(),p(E,null,[o.showToggleButton?(c(),p("div",{key:0,style:he(o.toggleStyle),class:"chat-toggle"},[s(y,{color:"primary",icon:"",variant:"flat",onClick:e[0]||(e[0]=m=>o.open())},{default:i(()=>[s(Zt,{content:n.unreadCount||void 0,"model-value":n.unreadCount>0,color:"error",overlap:""},{default:i(()=>[s(D,null,{default:i(()=>[...e[7]||(e[7]=[u(" mdi-chat ",-1)])]),_:1})]),_:1},8,["content","model-value"])]),_:1})],4)):w("",!0),oe(r("div",{style:he(o.panelStyle),class:"chat-panel"},[s(_,{border:"",class:"chat-card",elevation:"8"},{default:i(()=>[s(j,{class:"d-flex align-center"},{default:i(()=>[s(D,{class:"mr-2"},{default:i(()=>[...e[8]||(e[8]=[u(" mdi-chat-processing ",-1)])]),_:1}),r("span",Ks,g(o.modeTitle),1),s(L),s(vt,{modelValue:n.currentMode,"onUpdate:modelValue":e[1]||(e[1]=m=>n.currentMode=m),class:"mr-2",mandatory:"",size:"small",variant:"outlined"},{default:i(()=>[s(y,{value:"chat",size:"small"},{default:i(()=>[s(D,null,{default:i(()=>[...e[9]||(e[9]=[u("mdi-chat",-1)])]),_:1})]),_:1}),s(y,{value:"events",size:"small"},{default:i(()=>[s(D,null,{default:i(()=>[...e[10]||(e[10]=[u("mdi-format-list-bulleted",-1)])]),_:1})]),_:1})]),_:1},8,["modelValue"]),s(Ze,{location:"top"},{activator:i(({props:m})=>[s(O,Qe({color:n.connected?"success":"grey",size:"x-small"},m,{variant:"tonal"}),{default:i(()=>[u(g(n.connected?"已连接":"未连接"),1)]),_:1},16,["color"])]),default:i(()=>[r("span",null,"Socket "+g(n.socketId||"-"),1)]),_:1}),s(y,{icon:"",variant:"text",onClick:e[2]||(e[2]=m=>o.close())},{default:i(()=>[s(D,null,{default:i(()=>[...e[11]||(e[11]=[u("mdi-close",-1)])]),_:1})]),_:1})]),_:1}),s(ve),s(V,{class:"chat-body"},{default:i(()=>[n.currentMode==="chat"?(c(),p("div",qs,[(c(!0),p(E,null,U(o.decoratedMessages,m=>(c(),p(E,{key:m._id},[m._type==="divider"?(c(),p("div",Ws,[s(ve,{class:"my-2"}),e[12]||(e[12]=r("div",{class:"divider-text"}," 今天 - 上次访问 ",-1)),s(ve,{class:"my-2"})])):(c(),p("div",{key:1,class:fe([{self:m.self},"message-row"])},[r("div",Gs,[s(Ie,{color:m.self?"primary":"grey",size:"24"},{default:i(()=>[s(D,{size:"small"},{default:i(()=>[u(g(m.self?"mdi-account":"mdi-account-outline"),1)]),_:2},1024)]),_:2},1032,["color"])]),r("div",Qs,[!m.self&&m.deviceName?(c(),p("div",Js,g(m.deviceName),1)):w("",!0),r("div",Ys,g(m.text),1),r("div",Xs,[m.self&&m.deviceName?(c(),p("span",Zs,g(m.deviceName)+" • ",1)):w("",!0),u(" "+g(o.formatTime(m.at)),1)])])],2))],64))),128))],512)):(c(),p("div",en,[r("div",tn,[s(ue,{dense:""},{default:i(()=>[s(ne,{cols:"4"},{default:i(()=>[s(_,{color:"success",dark:"",size:"small"},{default:i(()=>[s(V,{class:"text-center pa-2"},{default:i(()=>[r("div",sn,g(n.eventStats.chat),1),e[13]||(e[13]=r("div",{class:"text-caption"}," 聊天 ",-1))]),_:1})]),_:1})]),_:1}),s(ne,{cols:"4"},{default:i(()=>[s(_,{color:"info",dark:"",size:"small"},{default:i(()=>[s(V,{class:"text-center pa-2"},{default:i(()=>[r("div",nn,g(n.eventStats.kvChanged),1),e[14]||(e[14]=r("div",{class:"text-caption"}," KV变化 ",-1))]),_:1})]),_:1})]),_:1}),s(ne,{cols:"4"},{default:i(()=>[s(_,{color:"warning",dark:"",size:"small"},{default:i(()=>[s(V,{class:"text-center pa-2"},{default:i(()=>[r("div",an,g(n.eventStats.other),1),e[15]||(e[15]=r("div",{class:"text-caption"}," 其他 ",-1))]),_:1})]),_:1})]),_:1})]),_:1})]),r("div",on,[(c(!0),p(E,null,U(o.paginatedEvents,m=>(c(),p("div",{key:m._id,class:"event-item mb-2"},[s(_,{color:o.getEventColor(m.type),size:"small",variant:"outlined"},{default:i(()=>[s(V,{class:"pa-2"},{default:i(()=>{var f;return[r("div",ln,[s(O,{color:o.getEventColor(m.type),size:"x-small"},{default:i(()=>[u(g(o.getEventTypeLabel(m.type)),1)]),_:2},1032,["color"]),s(L),r("span",rn,g(o.formatTime(m.timestamp||m.at)),1)]),m.senderInfo?(c(),p("div",dn,[e[16]||(e[16]=r("strong",null,"发送者:",-1)),u(" "+g(o.formatDeviceInfo(m.senderInfo)),1)])):w("",!0),r("div",un,[m.type==="chat"||m.type==="chat:message"?(c(),p("div",cn,g(((f=m.content)==null?void 0:f.text)||m.text),1)):(c(),p("pre",mn,g(JSON.stringify(m.content||m,null,1)),1))])]}),_:2},1024)]),_:2},1032,["color"])]))),128)),n.allEvents.length===0?(c(),p("div",fn," 暂无事件 ")):w("",!0)]),o.totalPages>1?(c(),p("div",hn,[s(ls,{modelValue:n.currentPage,"onUpdate:modelValue":e[3]||(e[3]=m=>n.currentPage=m),length:o.totalPages,"total-visible":3,size:"small"},null,8,["modelValue","length"])])):w("",!0)]))]),_:1}),n.currentMode==="chat"?(c(),b(ve,{key:0})):w("",!0),n.currentMode==="chat"?(c(),b(X,{key:1,class:"chat-input"},{default:i(()=>[s(y,{class:"mr-1",icon:"",variant:"text",onClick:e[4]||(e[4]=m=>o.insertEmoji("😄"))},{default:i(()=>[s(D,null,{default:i(()=>[...e[17]||(e[17]=[u("mdi-emoticon-outline",-1)])]),_:1})]),_:1}),s(Ue,{ref:"inputRef",modelValue:n.text,"onUpdate:modelValue":e[5]||(e[5]=m=>n.text=m),"auto-grow":"",class:"flex-grow-1","hide-details":"",placeholder:"输入消息",rows:"1",variant:"solo",onKeydown:[tt(qe(o.handleEnter,["prevent"]),["enter"]),e[6]||(e[6]=tt(qe(()=>{},["shift","stop"]),["enter"]))]},null,8,["modelValue","onKeydown"]),s(y,{disabled:!o.canSend,class:"ml-2",color:"primary",onClick:o.send},{default:i(()=>[s(D,{start:""},{default:i(()=>[...e[18]||(e[18]=[u(" mdi-send ",-1)])]),_:1}),e[19]||(e[19]=u(" 发送 ",-1))]),_:1},8,["disabled","onClick"])]),_:1})):w("",!0)]),_:1})],4),[[be,n.visible]]),s(d,{ref:"urgentNotification"},null,512)],64)}const Re=W(Hs,[["render",gn],["__scopeId","data-v-1a62ac2a"]]),pn={name:"UrgentTestDialog",components:{ChatWidget:Re,EventSender:Fe},props:{modelValue:{type:Boolean,default:!1}},emits:["update:modelValue"],data(){return{sending:!1,notificationForm:{isUrgent:!1,message:"",isPersistent:!1},sentMessages:[],receiptCleanup:[],persistentNotifications:[],editDialog:!1,editForm:{id:null,message:"",isUrgent:!1,resend:!1},savingEdit:!1,deleteConfirmDialog:!1,itemToDelete:null}},computed:{dialog:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}}},mounted(){this.setupEventListeners(),this.loadPersistentNotifications()},beforeUnmount(){this.cleanup()},methods:{generateNotificationId(){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";let e="";for(let a=0;a<32;a++)e+=t.charAt(Math.floor(Math.random()*t.length));return e},async sendNotification(){if(this.notificationForm.message.trim()){this.sending=!0;try{const t=this.generateNotificationId(),e=this.notificationForm.message,a=this.notificationForm.isUrgent,l=this.notificationForm.isPersistent,n=await this.$refs.eventSender.sendNotification(e,a,[],{deviceName:"测试设备",deviceType:"system",isReadOnly:!1},t),o=(n==null?void 0:n.eventId)||`msg-${Date.now()}`;if(this.sentMessages.push({id:o,notificationId:t,message:e,isUrgent:a,timestamp:new Date().toISOString(),receipts:{displayed:[],read:[]}}),l)try{const d="notification-list",m=await Z.loadData(d);let f=[];m&&Array.isArray(m)?f=m:m&&m.success!==!1&&Array.isArray(m.data)&&(f=m.data);const h={id:t,message:e,isUrgent:a,timestamp:new Date().toISOString()};f.unshift(h),await Z.saveData(d,f),this.persistentNotifications=f,console.log("常驻通知已保存")}catch(d){console.error("保存常驻通知失败",d)}console.log("通知已发送,事件ID:",o,"通知ID:",t),this.resetForm()}catch(t){console.error("发送通知失败:",t)}finally{this.sending=!1}}},resetForm(){this.notificationForm={isUrgent:!1,message:"",isPersistent:!1}},close(){this.dialog=!1},setupEventListeners(){const t=ce("notification-displayed",a=>{console.log("收到显示回执:",a),this.updateReceipt(a,"displayed")}),e=ce("notification-read",a=>{console.log("收到已读回执:",a),this.updateReceipt(a,"read")});this.receiptCleanup.push(t,e)},updateReceipt(t,e){var o,d,m,f,h;const a=t.originalEventId,l=t.notificationId||((o=t.content)==null?void 0:o.notificationId);if(!a&&!l)return;const n=this.sentMessages.find(k=>k.id===a||k.notificationId===l);if(n){const k={senderId:t.senderId||"unknown-sender",deviceName:((d=t.senderInfo)==null?void 0:d.deviceName)||((m=t.deviceInfo)==null?void 0:m.deviceName)||"未知设备",deviceType:((f=t.senderInfo)==null?void 0:f.deviceType)||((h=t.deviceInfo)==null?void 0:h.deviceType)||"unknown",timestamp:new Date().toISOString()};n.receipts[e].find(F=>F.senderId===k.senderId)||(n.receipts[e].push(k),console.log(`更新${e}回执:`,n.id,k))}},cleanup(){this.receiptCleanup.forEach(t=>t()),this.receiptCleanup=[]},formatTime(t){return new Date(t).toLocaleString("zh-CN")},getReceiptStatus(t){return t.read.length>0?"已读":t.displayed.length>0?"已显示":"已发送"},getReceiptColor(t){return t.read.length>0?"success":t.displayed.length>0?"info":"grey"},formatDeviceTime(t){return new Date(t).toLocaleTimeString("zh-CN")},getMainCardColor(t){return t.read.length>0?"success":t.displayed.length>0?"info":"grey"},hasAnyReceipts(t){return t.read.length>0||t.displayed.length>0},getDisplayedOnlyDevices(t){const e=t.read.map(a=>a.senderId);return t.displayed.filter(a=>!e.includes(a.senderId))},openEditDialog(t){this.editForm={id:t.id,message:t.message,isUrgent:t.isUrgent||!1,resend:!1,timestamp:t.timestamp},this.editDialog=!0},async saveEdit(){var t,e;if(this.editForm.message.trim()){this.savingEdit=!0;try{const a=this.persistentNotifications.findIndex(l=>l.id===this.editForm.id);if(a!==-1){if(this.persistentNotifications[a]={...this.persistentNotifications[a],message:this.editForm.message,isUrgent:this.editForm.isUrgent,timestamp:new Date().toISOString()},await Z.saveData("notification-list",this.persistentNotifications),this.editForm.resend){const l=this.editForm.id,n=this.editForm.message,o=this.editForm.isUrgent,d=await this.$refs.eventSender.sendNotification(n,o,[],{deviceName:"测试设备",deviceType:"system",isReadOnly:!1},l),m=(d==null?void 0:d.eventId)||`msg-${Date.now()}`;this.sentMessages.push({id:m,notificationId:l,message:n,isUrgent:o,timestamp:new Date().toISOString(),receipts:{displayed:[],read:[]}})}this.editDialog=!1,(t=this.$message)==null||t.success("已更新")}}catch(a){console.error("保存失败",a),(e=this.$message)==null||e.error("保存失败")}finally{this.savingEdit=!1}}},async loadPersistentNotifications(){try{const t=await Z.loadData("notification-list");t&&Array.isArray(t)?this.persistentNotifications=t:t&&t.success!==!1&&Array.isArray(t.data)?this.persistentNotifications=t.data:this.persistentNotifications=[]}catch(t){console.error("加载常驻通知失败",t)}},async deleteNotification(t){if(confirm("确定要删除这个通知吗?"))try{this.sentMessages=this.sentMessages.filter(a=>a.id!==t),this.persistentNotifications=this.persistentNotifications.filter(a=>a.id!==t),console.log("通知已删除,通知ID:",t)}catch(a){console.error("删除通知失败:",a)}},deletePersistentNotification(t){this.itemToDelete=t,this.deleteConfirmDialog=!0},async executeDelete(){var e,a;if(!this.itemToDelete)return;const t=this.itemToDelete;this.deleteConfirmDialog=!1,this.itemToDelete=null;try{this.persistentNotifications=this.persistentNotifications.filter(n=>n.id!==t);const l=this.persistentNotifications.length>0?this.persistentNotifications:{};await Z.saveData("notification-list",l),(e=this.$message)==null||e.success("已删除")}catch(l){console.error("删除失败",l),(a=this.$message)==null||a.error("删除失败")}}}},vn={key:0,class:"text-center text-grey py-4"},yn={key:0,class:"text-center text-grey py-8"},kn={class:"d-flex align-center mb-2"},bn={class:"font-weight-medium"},xn={class:"text-caption font-weight-medium"},wn={class:"text-body-2 mb-3",style:{"max-height":"60px",overflow:"hidden"}},Sn={class:"text-caption"},Cn={key:0},_n={class:"align-center"},Dn={class:"text-body-2 font-weight-medium"},Tn={class:"text-caption mt-1"},In={class:"align-center"},En={class:"text-body-2 font-weight-medium"},Nn={class:"text-caption text-grey"},Vn={class:"text-caption text-grey mt-1"},An={key:1};function Un(t,e,a,l,n,o){const d=Re,m=Fe;return c(),b(J,{modelValue:o.dialog,"onUpdate:modelValue":e[11]||(e[11]=f=>o.dialog=f),fullscreen:"",transition:"dialog-bottom-transition",scrollable:""},{default:i(()=>[s(_,null,{default:i(()=>[s(rt,{dark:"",flat:""},{default:i(()=>[s(dt,null,{default:i(()=>[s(D,{class:"mr-2"},{default:i(()=>[...e[12]||(e[12]=[u(" mdi-chat ",-1)])]),_:1}),e[13]||(e[13]=u(" 发送通知 ",-1))]),_:1}),s(L),s(y,{icon:"mdi-close",onClick:o.close},null,8,["onClick"])]),_:1}),s(V,{class:"pa-0"},{default:i(()=>[s(Dt,null,{default:i(()=>[s(ue,null,{default:i(()=>[s(ne,{cols:"12"},{default:i(()=>[s(_,null,{default:i(()=>[s(V,null,{default:i(()=>[s(ut,null,{default:i(()=>[s(ue,null,{default:i(()=>[s(ne,{cols:"12",md:"6"},{default:i(()=>[s(Ge,{modelValue:n.notificationForm.isUrgent,"onUpdate:modelValue":e[0]||(e[0]=f=>n.notificationForm.isUrgent=f),label:"强调通知",color:"red",inset:""},null,8,["modelValue"]),s(lt,{modelValue:n.notificationForm.isPersistent,"onUpdate:modelValue":e[1]||(e[1]=f=>n.notificationForm.isPersistent=f),label:"常驻展示",color:"primary","hide-details":"",class:"mt-0"},null,8,["modelValue"])]),_:1}),s(ne,{cols:"12"},{default:i(()=>[s(Ue,{modelValue:n.notificationForm.message,"onUpdate:modelValue":e[2]||(e[2]=f=>n.notificationForm.message=f),label:"通知内容",outlined:"",rows:"3",placeholder:"请输入强调通知的内容..."},null,8,["modelValue"])]),_:1})]),_:1})]),_:1})]),_:1}),s(X,{class:"px-6 pb-6"},{default:i(()=>[s(y,{color:n.notificationForm.isUrgent?"red":"blue",disabled:!n.notificationForm.message.trim(),loading:n.sending,size:"large",variant:"elevated",onClick:o.sendNotification},{default:i(()=>[s(D,{left:""},{default:i(()=>[u(g(n.notificationForm.isUrgent?"mdi-alert-circle":"mdi-information"),1)]),_:1}),u(" "+g(n.notificationForm.isUrgent?"发送强调通知":"发送通知"),1)]),_:1},8,["color","disabled","loading","onClick"]),s(L)]),_:1})]),_:1})]),_:1})]),_:1}),s(ue,{class:"mt-4"},{default:i(()=>[s(ne,{cols:"12"},{default:i(()=>[s(_,null,{default:i(()=>[s(j,null,{default:i(()=>[s(D,{class:"mr-2"},{default:i(()=>[...e[14]||(e[14]=[u("mdi-pin",-1)])]),_:1}),e[15]||(e[15]=u(" 常驻通知管理 ",-1))]),_:1}),s(V,null,{default:i(()=>[n.persistentNotifications.length===0?(c(),p("div",vn," 暂无常驻通知 ")):(c(),b(we,{key:1},{default:i(()=>[(c(!0),p(E,null,U(n.persistentNotifications,f=>(c(),b(Se,{key:f.id,title:f.message,subtitle:o.formatTime(f.timestamp),lines:"two"},{prepend:i(()=>[s(D,{color:f.isUrgent?"error":"primary"},{default:i(()=>[u(g(f.isUrgent?"mdi-alert-circle":"mdi-information"),1)]),_:2},1032,["color"])]),append:i(()=>[s(y,{icon:"mdi-pencil",variant:"text",size:"small",onClick:h=>o.openEditDialog(f)},null,8,["onClick"]),s(y,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:h=>o.deletePersistentNotification(f.id)},null,8,["onClick"])]),_:2},1032,["title","subtitle"]))),128))]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1}),s(ue,{class:"mt-4"},{default:i(()=>[s(ne,{cols:"12"},{default:i(()=>[s(_,null,{default:i(()=>[s(j,null,{default:i(()=>[s(D,{class:"mr-2"},{default:i(()=>[...e[16]||(e[16]=[u(" mdi-history ",-1)])]),_:1}),e[17]||(e[17]=u(" 消息记录 ",-1)),s(L)]),_:1}),s(V,null,{default:i(()=>[n.sentMessages.length===0?(c(),p("div",yn,[s(D,{size:"64",color:"grey-lighten-2"},{default:i(()=>[...e[18]||(e[18]=[u(" mdi-message-outline ",-1)])]),_:1}),e[19]||(e[19]=r("div",{class:"mt-2"}," 暂无发送记录 ",-1))])):(c(),b(ue,{key:1},{default:i(()=>[(c(!0),p(E,null,U(n.sentMessages.slice().reverse(),f=>(c(),b(ne,{key:f.id,cols:"12",md:"6",lg:"4"},{default:i(()=>[s(_,{color:o.getMainCardColor(f.receipts),class:"mb-2"},{default:i(()=>[s(V,null,{default:i(()=>[r("div",kn,[r("span",bn,g(f.isUrgent?"强调通知":"通知"),1),s(L),r("span",xn,g(o.getReceiptStatus(f.receipts)),1)]),r("div",wn,g(f.message),1),r("div",Sn,[r("div",null,"发送时间:"+g(o.formatTime(f.timestamp)),1),r("div",null,"事件ID:"+g(f.id),1),r("div",null,"通知ID:"+g(f.notificationId),1)])]),_:2},1024)]),_:2},1032,["color"]),o.hasAnyReceipts(f.receipts)?(c(),p("div",Cn,[(c(!0),p(E,null,U(f.receipts.read,h=>(c(),b(_,{key:`${h.senderId}-read`,color:"success",class:"mb-1",size:"small"},{default:i(()=>[s(V,{class:"pa-2"},{default:i(()=>[r("div",_n,[r("span",Dn,g(h.deviceName),1),e[20]||(e[20]=r("br",null,null,-1)),u(" "+g(h.deviceType),1)]),r("div",Tn," 已读于 "+g(o.formatDeviceTime(h.timestamp)),1)]),_:2},1024)]),_:2},1024))),128)),(c(!0),p(E,null,U(o.getDisplayedOnlyDevices(f.receipts),h=>(c(),b(_,{key:`${h.senderId}-displayed`,color:"info-lighten-4",variant:"outlined",class:"mb-1",size:"small"},{default:i(()=>[s(V,{class:"pa-2"},{default:i(()=>[r("div",In,[r("span",En,g(h.deviceName),1),s(L),r("span",Nn,g(h.deviceType=="classroom"?"教室设备上的应用":h.deviceType),1)]),r("div",Vn," 已显示于 "+g(o.formatDeviceTime(h.timestamp)),1)]),_:2},1024)]),_:2},1024))),128))])):(c(),p("div",An,[s(_,{color:"info-lighten-4",variant:"outlined",class:"mb-1",size:"small",title:"无设备在线"},{default:i(()=>[s(V,null,{default:i(()=>[...e[21]||(e[21]=[u(" 如果数秒后任然显示这个提示,则可能没有任何设备在线接收通知。 ",-1)])]),_:1})]),_:1})]))]),_:2},1024))),128))]),_:1}))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),s(d),s(m,{ref:"eventSender"},null,512),s(J,{modelValue:n.editDialog,"onUpdate:modelValue":e[8]||(e[8]=f=>n.editDialog=f),"max-width":"500",fullscreen:t.$vuetify.display.xs},{default:i(()=>[s(_,null,{default:i(()=>[s(rt,{flat:"",density:"compact"},{default:i(()=>[s(dt,null,{default:i(()=>[...e[22]||(e[22]=[u("编辑常驻通知",-1)])]),_:1}),s(L),s(y,{icon:"mdi-close",onClick:e[3]||(e[3]=f=>n.editDialog=!1)})]),_:1}),s(V,null,{default:i(()=>[s(ut,null,{default:i(()=>[s(Ue,{modelValue:n.editForm.message,"onUpdate:modelValue":e[4]||(e[4]=f=>n.editForm.message=f),label:"通知内容",rows:"3","auto-grow":""},null,8,["modelValue"]),s(Ge,{modelValue:n.editForm.isUrgent,"onUpdate:modelValue":e[5]||(e[5]=f=>n.editForm.isUrgent=f),label:"强调通知",color:"error","hide-details":""},null,8,["modelValue"]),s(lt,{modelValue:n.editForm.resend,"onUpdate:modelValue":e[6]||(e[6]=f=>n.editForm.resend=f),label:"保存并重新发送通知",hint:"勾选后将作为新通知发送给所有在线设备","persistent-hint":""},null,8,["modelValue"])]),_:1})]),_:1}),s(X,null,{default:i(()=>[s(L),s(y,{variant:"text",onClick:e[7]||(e[7]=f=>n.editDialog=!1)},{default:i(()=>[...e[23]||(e[23]=[u("取消",-1)])]),_:1}),s(y,{color:"primary",loading:n.savingEdit,onClick:o.saveEdit},{default:i(()=>[...e[24]||(e[24]=[u("保存",-1)])]),_:1},8,["loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue","fullscreen"]),s(J,{modelValue:n.deleteConfirmDialog,"onUpdate:modelValue":e[10]||(e[10]=f=>n.deleteConfirmDialog=f),"max-width":"400"},{default:i(()=>[s(_,null,{default:i(()=>[s(j,{class:"text-h5"},{default:i(()=>[...e[25]||(e[25]=[u("确认删除",-1)])]),_:1}),s(V,null,{default:i(()=>[...e[26]||(e[26]=[u("确定要删除这条常驻通知吗?此操作无法撤销。",-1)])]),_:1}),s(X,null,{default:i(()=>[s(L),s(y,{color:"grey-darken-1",variant:"text",onClick:e[9]||(e[9]=f=>n.deleteConfirmDialog=!1)},{default:i(()=>[...e[27]||(e[27]=[u("取消",-1)])]),_:1}),s(y,{color:"error",variant:"text",onClick:o.executeDelete},{default:i(()=>[...e[28]||(e[28]=[u("删除",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["modelValue"])}const Et=W(pn,[["render",Un],["__scopeId","data-v-c6850940"]]),zn={name:"FloatingICP"},Mn={"aria-label":"xICP备x号",class:"floating-icp-link",href:"https://beian.miit.gov.cn/",rel:"noopener noreferrer",target:"_blank",style:{display:"none"}};function $n(t,e,a,l,n,o){return c(),p("a",Mn," xICP备x号 ")}const Nt=W(zn,[["render",$n],["__scopeId","data-v-fa73670f"]]),Pn={name:"FloatingToolbar",props:{loading:{type:Boolean,default:!1},unreadCount:{type:Number,default:0},selectedDate:{type:[String,Date],required:!0},isToday:{type:Boolean,required:!0},copyToTodayLoading:{type:Boolean,default:!1}},data(){return{isExpanded:!1}},methods:{handleDateSelect(t){this.$emit("date-select",t)}}},Ln={class:"floating-toolbar-container"};function Fn(t,e,a,l,n,o){return c(),p("div",Ln,[s(Kt,null,{default:i(()=>[s(_,{class:fe([{"toolbar-expanded":n.isExpanded},"floating-toolbar"]),elevation:"4",rounded:"xl"},{default:i(()=>[s(Je,{class:"toolbar-buttons",variant:"text"},{default:i(()=>[oe(s(y,{title:"查看昨天",class:"toolbar-btn",icon:"mdi-chevron-left",variant:"text",onClick:e[0]||(e[0]=d=>t.$emit("prev-day"))},null,512),[[xe]]),oe(s(y,{title:"缩小字体",class:"toolbar-btn",icon:"mdi-format-font-size-decrease",variant:"text",onClick:e[1]||(e[1]=d=>t.$emit("zoom","out"))},null,512),[[xe]]),oe(s(y,{title:"放大字体",class:"toolbar-btn",icon:"mdi-format-font-size-increase",variant:"text",onClick:e[2]||(e[2]=d=>t.$emit("zoom","up"))},null,512),[[xe]]),s(cs,{"close-on-content-click":!1,location:"top"},{activator:i(({props:d})=>[oe(s(y,Qe({title:"选择日期",class:"toolbar-btn",icon:"mdi-calendar"},d,{variant:"text"}),null,16),[[xe]])]),default:i(()=>[s(_,{border:"",class:"date-picker-card"},{default:i(()=>[s(jt,{"model-value":a.selectedDate,color:"primary","onUpdate:modelValue":o.handleDateSelect},null,8,["model-value","onUpdate:modelValue"])]),_:1})]),_:1}),oe(s(y,{loading:a.loading,title:"刷新数据",class:"toolbar-btn",icon:"mdi-refresh",variant:"text",onClick:e[3]||(e[3]=d=>t.$emit("refresh"))},null,8,["loading"]),[[xe]]),a.isToday?w("",!0):oe((c(),b(y,{key:0,title:"查看明天",class:"toolbar-btn",icon:"mdi-chevron-right",variant:"text",onClick:e[4]||(e[4]=d=>t.$emit("next-day"))},null,512)),[[xe]])]),_:1})]),_:1},8,["class"])]),_:1}),s(qt,null,{default:i(()=>[a.isToday?w("",!0):(c(),b(y,{key:0,loading:a.copyToTodayLoading,disabled:a.copyToTodayLoading,class:"side-action-btn",color:"primary",elevation:"4","prepend-icon":"mdi-content-copy",rounded:"xl",size:"large",text:"复制作业内容到今天",onClick:e[5]||(e[5]=d=>t.$emit("copy-to-today"))},{default:i(()=>[...e[6]||(e[6]=[u("复制到今天",-1)])]),_:1},8,["loading","disabled"]))]),_:1})])}const Vt=W(Pn,[["render",Fn],["__scopeId","data-v-7076d3aa"]]),Rn={name:"AttendanceManagementDialog",props:{modelValue:{type:Boolean,required:!0},studentList:{type:Array,required:!0},attendance:{type:Object,required:!0},dateString:{type:String,default:""}},emits:["update:modelValue","save","change"],setup(){const{mobile:t}=Ae();return{mobile:t}},data(){return{attendanceSearch:"",attendanceFilter:[]}},computed:{isMobile(){return S("display.forceDesktopMode")?!1:this.mobile},filteredStudents(){let t=[...this.studentList];if(this.attendanceSearch){const e=this.attendanceSearch.toLowerCase();t=t.filter(a=>a.toLowerCase().includes(e))}return this.attendanceFilter&&this.attendanceFilter.length>0&&(t=t.filter(e=>!!(this.attendanceFilter.includes("present")&&this.isPresent(e)||this.attendanceFilter.includes("absent")&&this.isAbsent(e)||this.attendanceFilter.includes("late")&&this.isLate(e)||this.attendanceFilter.includes("exclude")&&this.isExclude(e)))),t},extractedSurnames(){if(!this.studentList||this.studentList.length===0)return[];const t=new Map;return this.studentList.forEach(e=>{if(e&&e.length>0){const a=e.charAt(0);t.set(a,(t.get(a)||0)+1)}}),Array.from(t.entries()).map(([e,a])=>({name:e,count:a})).sort((e,a)=>{const l=ot(e.name,{toneType:"none"}),n=ot(a.name,{toneType:"none"});return l.localeCompare(n)})}},methods:{toggleFilter(t){const e=this.attendanceFilter.indexOf(t);e===-1?this.attendanceFilter.push(t):this.attendanceFilter.splice(e,1)},isPresent(t){const{absent:e,late:a,exclude:l}=this.attendance;return!e.includes(t)&&!a.includes(t)&&!l.includes(t)},isAbsent(t){return this.attendance.absent.includes(t)},isLate(t){return this.attendance.late.includes(t)},isExclude(t){return this.attendance.exclude.includes(t)},getStudentStatusColor(t){return this.attendance.absent.includes(t)?"error":this.attendance.late.includes(t)?"warning":this.attendance.exclude.includes(t)?"grey":"success"},getStudentStatusIcon(t){return this.attendance.absent.includes(t)?"mdi-account-off":this.attendance.late.includes(t)?"mdi-clock-alert":this.attendance.exclude.includes(t)?"mdi-account-cancel":"mdi-account-check"},removeFromAll(t){const e=this.attendance.absent.indexOf(t);e>-1&&this.attendance.absent.splice(e,1);const a=this.attendance.late.indexOf(t);a>-1&&this.attendance.late.splice(a,1);const l=this.attendance.exclude.indexOf(t);l>-1&&this.attendance.exclude.splice(l,1)},setPresent(t){this.removeFromAll(t),this.$emit("change")},setAbsent(t){this.removeFromAll(t),this.attendance.absent.push(t),this.$emit("change")},setLate(t){this.removeFromAll(t),this.attendance.late.push(t),this.$emit("change")},setExclude(t){this.removeFromAll(t),this.attendance.exclude.push(t),this.$emit("change")},setAllPresent(){this.attendance.absent.splice(0,this.attendance.absent.length),this.attendance.late.splice(0,this.attendance.late.length),this.attendance.exclude.splice(0,this.attendance.exclude.length),this.$emit("change")},setAllAbsent(){this.setAllPresent(),this.attendance.absent.push(...this.studentList),this.$emit("change")},setAllLate(){this.setAllPresent(),this.attendance.late.push(...this.studentList),this.$emit("change")},setAllExclude(){this.setAllPresent(),this.attendance.exclude.push(...this.studentList),this.$emit("change")}}},On={class:"d-flex flex-wrap mt-2 gap-1"},Bn={class:"d-flex flex-wrap mb-4 gap-2"},jn={class:"flex-grow-1"},Hn={class:"d-flex align-center"},Kn={class:"text-subtitle-1"},qn={class:"attendance-actions"},Wn={class:"d-flex flex-wrap gap-2"};function Gn(t,e,a,l,n,o){return c(),b(J,{"model-value":a.modelValue,fullscreen:o.isMobile,"fullscreen-breakpoint":"sm","max-width":"900","onUpdate:modelValue":e[7]||(e[7]=d=>t.$emit("update:modelValue",d))},{default:i(()=>[s(_,null,{default:i(()=>[s(j,{class:"d-flex align-center"},{default:i(()=>[s(D,{class:"mr-2",icon:"mdi-account-group"}),e[8]||(e[8]=u(" 考勤 ",-1)),s(L),o.isMobile?w("",!0):(c(),b(O,{key:0,class:"ml-2",color:"primary",size:"small"},{default:i(()=>[u(g(a.dateString),1)]),_:1})),o.isMobile?(c(),b(y,{key:1,icon:"mdi-close",variant:"text",onClick:e[0]||(e[0]=d=>t.$emit("update:modelValue",!1))})):w("",!0)]),_:1}),s(V,null,{default:i(()=>[s(ue,{class:"mb-4"},{default:i(()=>[s(ne,{cols:"12",md:"12"},{default:i(()=>[s(Ce,{modelValue:n.attendanceSearch,"onUpdate:modelValue":e[1]||(e[1]=d=>n.attendanceSearch=d),clearable:"",hint:"支持筛选姓氏,如输入'孙'可筛选所有姓孙的学生",label:"搜索学生","prepend-inner-icon":"mdi-magnify",variant:"outlined"},null,8,["modelValue"]),r("div",On,[(c(!0),p(E,null,U(o.extractedSurnames,d=>(c(),b(y,{key:d.name,color:n.attendanceSearch===d.name?"primary":"",variant:n.attendanceSearch===d.name?"elevated":"text",onClick:m=>n.attendanceSearch=n.attendanceSearch===d.name?"":d.name},{default:i(()=>[u(g(d.name)+" ("+g(d.count)+") ",1)]),_:2},1032,["color","variant","onClick"]))),128))])]),_:1})]),_:1}),r("div",Bn,[r("div",null,[s(O,{"append-icon":n.attendanceFilter.includes("present")?"mdi-check":"",color:n.attendanceFilter.includes("present")?"success":"",variant:n.attendanceFilter.includes("present")?"elevated":"tonal",class:"px-2 filter-chip","prepend-icon":"mdi-account-check",value:"present",onClick:e[2]||(e[2]=d=>o.toggleFilter("present"))},{default:i(()=>[...e[9]||(e[9]=[u(" 到课 ",-1)])]),_:1},8,["append-icon","color","variant"]),s(O,{"append-icon":n.attendanceFilter.includes("absent")?"mdi-check":"",color:n.attendanceFilter.includes("absent")?"error":"",variant:n.attendanceFilter.includes("absent")?"elevated":"tonal",class:"px-2 filter-chip","prepend-icon":"mdi-account-off",value:"absent",onClick:e[3]||(e[3]=d=>o.toggleFilter("absent"))},{default:i(()=>[...e[10]||(e[10]=[u(" 请假 ",-1)])]),_:1},8,["append-icon","color","variant"]),s(O,{"append-icon":n.attendanceFilter.includes("late")?"mdi-check":"",color:n.attendanceFilter.includes("late")?"warning":"",variant:n.attendanceFilter.includes("late")?"elevated":"tonal",class:"px-2 filter-chip","prepend-icon":"mdi-clock-alert",value:"late",onClick:e[4]||(e[4]=d=>o.toggleFilter("late"))},{default:i(()=>[...e[11]||(e[11]=[u(" 迟到 ",-1)])]),_:1},8,["append-icon","color","variant"]),s(O,{"append-icon":n.attendanceFilter.includes("exclude")?"mdi-check":"",color:n.attendanceFilter.includes("exclude")?"grey":"",variant:n.attendanceFilter.includes("exclude")?"elevated":"tonal",class:"px-2 filter-chip","prepend-icon":"mdi-account-cancel",value:"exclude",onClick:e[5]||(e[5]=d=>o.toggleFilter("exclude"))},{default:i(()=>[...e[12]||(e[12]=[u(" 不参与 ",-1)])]),_:1},8,["append-icon","color","variant"])])]),s(ue,null,{default:i(()=>[(c(!0),p(E,null,U(o.filteredStudents,d=>(c(),b(ne,{key:d,cols:"12",lg:"4",md:"6",sm:"6"},{default:i(()=>[s(_,{border:"",class:"student-card"},{default:i(()=>[s(V,{class:"d-flex align-center pa-2"},{default:i(()=>[r("div",jn,[r("div",Hn,[s(Ie,{color:o.getStudentStatusColor(d),class:"mr-2",size:"24"},{default:i(()=>[s(D,{size:"small"},{default:i(()=>[u(g(o.getStudentStatusIcon(d)),1)]),_:2},1024)]),_:2},1032,["color"]),r("div",Kn,g(d),1)])]),r("div",qn,[s(y,{color:o.isPresent(d)?"success":"",title:"设为到课",icon:"mdi-account-check",size:o.isMobile?"default":"small",variant:"text",onClick:m=>o.setPresent(d)},null,8,["color","size","onClick"]),s(y,{color:o.isAbsent(d)?"error":"",title:"设为请假",icon:"mdi-account-off",size:o.isMobile?"default":"small",variant:"text",onClick:m=>o.setAbsent(d)},null,8,["color","size","onClick"]),s(y,{color:o.isLate(d)?"warning":"",title:"设为迟到",icon:"mdi-clock-alert",size:o.isMobile?"default":"small",variant:"text",onClick:m=>o.setLate(d)},null,8,["color","size","onClick"]),s(y,{color:o.isExclude(d)?"grey":"",title:"设为不参与",icon:"mdi-account-cancel",size:o.isMobile?"default":"small",variant:"text",onClick:m=>o.setExclude(d)},null,8,["color","size","onClick"])])]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1}),s(ue,null,{default:i(()=>[s(ne,{cols:"12",md:"12"},{default:i(()=>[s(_,{class:"mb-4",color:"primary",variant:"tonal"},{default:i(()=>[s(V,null,{default:i(()=>[e[17]||(e[17]=r("div",{class:"text-subtitle-2 mb-2"},"批量操作",-1)),r("div",Wn,[s(y,{class:"flex-grow-1",color:"success","prepend-icon":"mdi-account-check",onClick:o.setAllPresent},{default:i(()=>[...e[13]||(e[13]=[u(" 全部到齐 ",-1)])]),_:1},8,["onClick"]),s(y,{class:"flex-grow-1",color:"error","prepend-icon":"mdi-account-off",onClick:o.setAllAbsent},{default:i(()=>[...e[14]||(e[14]=[u(" 全部请假 ",-1)])]),_:1},8,["onClick"]),s(y,{class:"flex-grow-1",color:"warning","prepend-icon":"mdi-clock-alert",onClick:o.setAllLate},{default:i(()=>[...e[15]||(e[15]=[u(" 全部迟到 ",-1)])]),_:1},8,["onClick"]),s(y,{class:"flex-grow-1",color:"grey","prepend-icon":"mdi-account-cancel",onClick:o.setAllExclude},{default:i(()=>[...e[16]||(e[16]=[u(" 全部不参与 ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),s(ve),s(X,null,{default:i(()=>[s(L),s(y,{color:"primary",onClick:e[6]||(e[6]=d=>t.$emit("save"))},{default:i(()=>[s(D,{start:""},{default:i(()=>[...e[18]||(e[18]=[u("mdi-content-save",-1)])]),_:1}),e[19]||(e[19]=u(" 保存 ",-1))]),_:1})]),_:1})]),_:1})]),_:1},8,["model-value","fullscreen"])}const At=W(Rn,[["render",Gn],["__scopeId","data-v-e18ba4e5"]]),Qn={name:"HomeworkEditDialog",props:{modelValue:{type:Boolean,required:!0},title:{type:String,required:!0},initialContent:{type:String,default:""},autoSave:{type:Boolean,default:!1},isEditingPastData:{type:Boolean,default:!1},currentDateString:{type:String,default:""}},emits:["update:modelValue","save"],setup(){const{mobile:t}=Ae();return{mobile:t}},data(){return{content:"",templateData:null,currentLine:"",currentLineStart:0,currentLineEnd:0,quickTexts:["课","题","例","变","T","P"]}},computed:{isMobile(){return S("display.forceDesktopMode")?!1:this.mobile},dialogVisible:{get(){return this.modelValue},set(t){this.$emit("update:modelValue",t)}},subject(){return this.title},hasTemplates(){var t,e;return!!((e=(t=this.templateData)==null?void 0:t.actions)!=null&&e.length||this.subjectBooks||this.commonBooks)},subjectBooks(){var t,e,a;return!this.subject||!((a=(e=(t=this.templateData)==null?void 0:t.subjects)==null?void 0:e[this.subject])!=null&&a.books)?null:this.templateData.subjects[this.subject].books},commonBooks(){var t,e;return(e=(t=this.templateData)==null?void 0:t.commonSubject)!=null&&e.books?this.templateData.commonSubject.books:null},showQuickTools(){return S("display.showQuickTools")},autoSavePromptText(){return S("edit.autoSavePromptText")},manualSavePromptText(){return S("edit.manualSavePromptText")}},watch:{async modelValue(t){if(t){this.content=this.initialContent;try{this.templateData=await Z.loadData("classworks-config-homework-template")}catch(e){console.error("Failed to load homework templates:",e),this.templateData=null}this.$nextTick(()=>{this.$refs.inputRef&&(this.$refs.inputRef.focus(),this.updateCurrentLine())})}}},methods:{handleClose(){const t=this.content.trim();t!==this.initialContent.trim()&&this.$emit("save",t),this.dialogVisible=!1},updateCurrentLine(){const e=this.$refs.inputRef.$el.querySelector("textarea").selectionStart,a=this.content;let l=0;const n=a.split(` `);for(let o=0;o0?" ":"")+e+this.content.slice(l)}this.$nextTick(()=>{const a=this.$refs.inputRef.$el.querySelector("textarea");a.focus();const l=this.content.split(` `);let n=0;for(let o=0;othis.currentLineStart));o++)n+=1;a.setSelectionRange(n,n),this.updateCurrentLine()})},insertTemplate(t){const e=this.$refs.inputRef.$el.querySelector("textarea"),a=e.selectionStart,l=e.selectionEnd,n=a>0&&this.content[a-1]!==" "&&this.content[a-1]!==` `;this.content=this.content.slice(0,a)+(n?" ":"")+t+this.content.slice(l),this.$nextTick(()=>{e.focus();const o=a+t.length+(n?1:0);e.setSelectionRange(o,o),this.updateCurrentLine()})},insertAtCursor(t){if(!t)return;const e=this.$refs.inputRef.$el.querySelector("textarea"),a=e.selectionStart,l=e.selectionEnd;this.content=this.content.slice(0,a)+t+this.content.slice(l),this.$nextTick(()=>{e.focus();const n=a+t.length;e.setSelectionRange(n,n),this.updateCurrentLine()})},deleteLastChar(){const t=this.$refs.inputRef.$el.querySelector("textarea"),e=t.selectionStart,a=t.selectionEnd;e===a?e>0&&(this.content=this.content.slice(0,e-1)+this.content.slice(e),this.$nextTick(()=>{t.focus(),t.setSelectionRange(e-1,e-1),this.updateCurrentLine()})):(this.content=this.content.slice(0,e)+this.content.slice(a),this.$nextTick(()=>{t.focus(),t.setSelectionRange(e,e),this.updateCurrentLine()}))}}},Jn={class:"d-flex"},Yn={class:"flex-grow-1"},Xn={key:0,class:"mt-4"},Zn={key:0,class:"template-buttons"},ei={key:0,class:"pages-container mt-2"},ti={key:0,class:"pages-container mt-2"},si={key:2,class:"button-group"},ni={key:1,class:"text-center text-body-2 text-disabled mt-2"},ii={key:0,class:"quick-tools ml-4",style:{"min-width":"180px"}},ai={class:"numeric-keypad mb-4"},oi={class:"keypad-row"},li={class:"keypad-row"},ri={class:"keypad-row"},di={class:"keypad-row"},ui={class:"keypad-row"},ci={class:"d-flex flex-wrap gap-1"},mi={class:"d-flex flex-column"},fi={class:"text-body-2"};function hi(t,e,a,l,n,o){return c(),b(J,{modelValue:o.dialogVisible,"onUpdate:modelValue":e[5]||(e[5]=d=>o.dialogVisible=d),fullscreen:o.isMobile,"max-width":"900",width:"auto","onClick:outside":o.handleClose},{default:i(()=>[s(_,{border:""},{default:i(()=>[s(j,{class:"d-flex align-center"},{default:i(()=>[u(g(a.title)+" ",1),s(L),s(y,{icon:"mdi-close",variant:"text",onClick:o.handleClose},null,8,["onClick"])]),_:1}),s(yt,null,{default:i(()=>[u(g(a.autoSave?o.autoSavePromptText:o.manualSavePromptText),1)]),_:1}),s(V,null,{default:i(()=>{var d;return[r("div",Jn,[r("div",Yn,[s(Ue,{ref:"inputRef",modelValue:n.content,"onUpdate:modelValue":e[0]||(e[0]=m=>n.content=m),"auto-grow":"",placeholder:"使用换行表示分条",rows:"5",width:o.isMobile?"100%":"480",onClick:o.updateCurrentLine,onKeyup:o.updateCurrentLine},null,8,["modelValue","width","onClick","onKeyup"]),n.templateData?(c(),p("div",Xn,[o.hasTemplates?(c(),p("div",Zn,[o.subjectBooks?(c(!0),p(E,{key:0},U(o.subjectBooks,(m,f)=>(c(),p("div",{key:f,class:"button-group"},[s(O,{color:o.isBookSelected(f)?"success":"default",variant:o.isBookSelected(f)?"elevated":"flat",class:"ma-1 book-chip",onClick:h=>o.handleBookClick(f)},{default:i(()=>[u(g(f),1)]),_:2},1032,["color","variant","onClick"]),o.isBookSelected(f)?(c(),p("div",ei,[(c(!0),p(E,null,U(m,h=>(c(),b(O,{key:h,color:o.isPageSelected(f,h)?"info":"default",variant:o.isPageSelected(f,h)?"elevated":"flat",class:"ma-1",onClick:k=>o.handlePageClick(f,h)},{default:i(()=>[u(g(h),1)]),_:2},1032,["color","variant","onClick"]))),128))])):w("",!0)]))),128)):w("",!0),o.commonBooks?(c(!0),p(E,{key:1},U(o.commonBooks,(m,f)=>(c(),p("div",{key:f,class:"button-group"},[s(O,{color:o.isBookSelected(f)?"success":"default",variant:o.isBookSelected(f)?"elevated":"flat",class:"ma-1 book-chip",onClick:h=>o.handleBookClick(f)},{default:i(()=>[u(g(f),1)]),_:2},1032,["color","variant","onClick"]),o.isBookSelected(f)?(c(),p("div",ti,[(c(!0),p(E,null,U(m,h=>(c(),b(O,{key:h,color:o.isPageSelected(f,h)?"info":"default",variant:o.isPageSelected(f,h)?"elevated":"flat",class:"ma-1",onClick:k=>o.handlePageClick(f,h)},{default:i(()=>[u(g(h),1)]),_:2},1032,["color","variant","onClick"]))),128))])):w("",!0)]))),128)):w("",!0),(d=n.templateData.actions)!=null&&d.length?(c(),p("div",si,[(c(!0),p(E,null,U(n.templateData.actions,m=>(c(),b(O,{key:m,class:"ma-1",color:"primary",variant:"flat",onClick:f=>o.insertTemplate(m)},{default:i(()=>[u(g(m),1)]),_:2},1032,["onClick"]))),128))])):w("",!0)])):(c(),p("div",ni," 暂无可用的模板 "))])):w("",!0)]),o.showQuickTools&&!o.isMobile?(c(),p("div",ii,[r("div",ai,[r("div",oi,[(c(),p(E,null,U(3,m=>s(y,{key:m,class:"keypad-btn",size:"small",variant:"tonal",onClick:f=>o.insertAtCursor(String(m))},{default:i(()=>[u(g(m),1)]),_:2},1032,["onClick"])),64))]),r("div",li,[(c(),p(E,null,U(3,m=>s(y,{key:m,class:"keypad-btn",size:"small",variant:"tonal",onClick:f=>o.insertAtCursor(String(m+3))},{default:i(()=>[u(g(m+3),1)]),_:2},1032,["onClick"])),64))]),r("div",ri,[(c(),p(E,null,U(3,m=>s(y,{key:m,class:"keypad-btn",size:"small",variant:"tonal",onClick:f=>o.insertAtCursor(String(m+6))},{default:i(()=>[u(g(m+6),1)]),_:2},1032,["onClick"])),64))]),r("div",di,[s(y,{class:"keypad-btn",size:"small",variant:"tonal",onClick:e[1]||(e[1]=m=>o.insertAtCursor("-"))},{default:i(()=>[...e[6]||(e[6]=[u(" - ",-1)])]),_:1}),s(y,{class:"keypad-btn",size:"small",variant:"tonal",onClick:e[2]||(e[2]=m=>o.insertAtCursor("0"))},{default:i(()=>[...e[7]||(e[7]=[u(" 0 ",-1)])]),_:1}),s(y,{class:"keypad-btn",color:"error",size:"small",variant:"tonal",onClick:o.deleteLastChar},{default:i(()=>[...e[8]||(e[8]=[u(" ← ",-1)])]),_:1},8,["onClick"])]),r("div",ui,[s(y,{class:"keypad-btn space-btn",size:"small",variant:"tonal",onClick:e[3]||(e[3]=m=>o.insertAtCursor(" "))},{default:i(()=>[...e[9]||(e[9]=[u(" 空格 ",-1)])]),_:1}),s(y,{class:"keypad-btn space-btn",size:"small",variant:"tonal",onClick:e[4]||(e[4]=m=>o.insertAtCursor(` -`))},{default:i(()=>[...e[10]||(e[10]=[u(" 换行 ",-1)])]),_:1})])]),r("div",ci,[(c(!0),p(E,null,U(n.quickTexts,m=>(c(),b(y,{key:m,size:"small",variant:"flat",onClick:f=>o.insertAtCursor(m)},{default:i(()=>[u(g(m),1)]),_:2},1032,["onClick"]))),128))])])):w("",!0)])]}),_:1}),a.isEditingPastData?(c(),b(_e,{key:0,type:"warning",variant:"tonal",class:"mx-4 mb-4",border:"start","border-color":"warning",prominent:""},{prepend:i(()=>[...e[11]||(e[11]=[])]),default:i(()=>[r("div",mi,[e[12]||(e[12]=r("div",{class:"text-h6 mb-1"},"你打算修改历史?",-1)),r("div",fi," 这是 "+g(new Date(a.currentDateString.slice(0,4),a.currentDateString.slice(4,6)-1,a.currentDateString.slice(6,8)).toLocaleDateString())+" 的作业 • 请谨慎操作,确保不会覆盖重要数据 ",1)])]),_:1})):w("",!0),e[13]||(e[13]=r("div",{class:"text-center text-body-2 text-disabled mb-5"}," 点击空白处完成编辑 ",-1))]),_:1})]),_:1},8,["modelValue","fullscreen","onClick:outside"])}const Ut=W(Qn,[["render",hi],["__scopeId","data-v-af72d8a9"]]),gi={name:"AttendanceSidebar",props:{studentList:{type:Array,required:!0},attendance:{type:Object,required:!0},isEditingDisabled:{type:Boolean,default:!1}},emits:["click","disabled-click"],setup(){return{display:Ae()}},methods:{getSetting:S,handleClick(){this.isEditingDisabled?this.$emit("disabled-click"):this.$emit("click")}}},pi={style:{"white-space":"nowrap"}},vi={style:{"white-space":"nowrap"}},yi={style:{"white-space":"nowrap"}},ki={key:0},bi={style:{"white-space":"nowrap"}},xi={style:{"white-space":"nowrap"}},wi={key:0},Si={style:{"white-space":"nowrap"}},Ci={style:{"white-space":"nowrap"}},_i={key:0},Di={style:{"white-space":"nowrap"}};function Ti(t,e,a,l,n,o){return a.studentList&&a.studentList.length?oe((c(),b(ne,{key:0,class:fe([{"cursor-not-allowed":a.isEditingDisabled},"attendance-area no-select"]),cols:"1",onClick:o.handleClick},{default:i(()=>[e[10]||(e[10]=r("h1",null,"出勤",-1)),r("h2",null,[e[0]||(e[0]=r("span",{style:{"white-space":"nowrap"}}," 应到",-1)),e[1]||(e[1]=u(" : ",-1)),r("span",pi,g(a.studentList.length-a.attendance.exclude.length)+"人 ",1)]),r("h2",null,[e[2]||(e[2]=r("span",{style:{"white-space":"nowrap"}}," 实到",-1)),e[3]||(e[3]=u(" : ",-1)),r("span",vi,g(a.studentList.length-a.attendance.absent.length-!o.getSetting("display.lateStudentsArePresent")*a.attendance.late.length-a.attendance.exclude.length)+"人 ",1)]),r("h2",null,[e[4]||(e[4]=r("span",{style:{"white-space":"nowrap"}}," 请假",-1)),e[5]||(e[5]=u(" : ",-1)),r("span",yi,g(a.attendance.absent.length)+"人 ",1)]),(c(!0),p(E,null,U(a.attendance.absent,(d,m)=>(c(),p("h3",{key:"absent-"+m,class:"gray-text"},[l.display.lgAndUp.value?(c(),p("span",ki,g(`${m+1}. `),1)):w("",!0),r("span",bi,g(d),1)]))),128)),r("h2",null,[e[6]||(e[6]=r("span",{style:{"white-space":"nowrap"}},"迟到",-1)),e[7]||(e[7]=u(" : ",-1)),r("span",xi,g(a.attendance.late.length)+"人 ",1)]),(c(!0),p(E,null,U(a.attendance.late,(d,m)=>(c(),p("h3",{key:"late-"+m,class:"gray-text"},[l.display.lgAndUp.value?(c(),p("span",wi,g(`${m+1}. `),1)):w("",!0),r("span",Si,g(d),1)]))),128)),r("h2",null,[e[8]||(e[8]=r("span",{style:{"white-space":"nowrap"}},"不参与",-1)),e[9]||(e[9]=u(" : ",-1)),r("span",Ci,g(a.attendance.exclude.length)+"人 ",1)]),(c(!0),p(E,null,U(a.attendance.exclude,(d,m)=>(c(),p("h3",{key:"exclude-"+m,class:"gray-text"},[l.display.lgAndUp.value?(c(),p("span",_i,g(`${m+1}. `),1)):w("",!0),r("span",Di,g(d),1)]))),128))]),_:1},8,["class","onClick"])),[[xe,a.isEditingDisabled?!1:{class:`text-${["primary","secondary","info","success","warning","error"][Math.floor(Math.random()*6)]}`}]]):w("",!0)}const zt=W(gi,[["render",Ti],["__scopeId","data-v-5a7eaf6a"]]),Ii={class:"d-flex flex-no-wrap justify-space-between"},Ei={class:"pe-4"},Ni={class:"mb-3"},Mt={__name:"PwaInstallCard",setup(t){const e=$(!1),a=$(!1),l=$(!1),n=st({title:"",message:"",links:[]}),o={pending:"待授权",granted:"已完成",denied:"已拒绝",unavailable:"不可用"},d={pending:"mdi-progress-clock",granted:"mdi-check-circle",denied:"mdi-close-circle",unavailable:"mdi-help-circle"},m={pending:"primary",granted:"success",denied:"error",unavailable:"surface-variant"},f=st({pwa:{label:"安装应用",description:"将网站安装为独立应用,便于快速启动",status:"pending"},notification:{label:"通知权限",description:"允许接收作业、考试等通知提醒",status:"pending"},storage:{label:"离线存储",description:"启用持久化存储以获得更稳健的离线体验",status:"pending"}}),h=G(()=>[{key:"pwa",...f.pwa},{key:"notification",...f.notification},{key:"storage",...f.storage}]),k=G(()=>h.value.some(x=>x.status==="pending")),I={pwa:[{text:"MDN - 安装 PWA 指南",desc:"检查浏览器是否支持并手动触发安装",href:"https://developer.mozilla.org/zh-CN/docs/Web/Progressive_web_apps/Guides/Installing"},{text:"Microsoft Edge - PWA 体验",desc:"Edge 浏览器安装与 UX 说明",href:"https://learn.microsoft.com/zh-cn/microsoft-edge/progressive-web-apps/ux"}],notification:[{text:"MDN - 通知权限与用法",desc:"浏览器通知权限的工作方式与调试",href:"https://developer.mozilla.org/zh-CN/docs/Web/API/notification"}],storage:[{text:"MDN - Storage 持久化说明",desc:"了解持久化存储的可用性与申请方式",href:"https://developer.mozilla.org/zh-CN/docs/Web/API/StorageManager/persist"}]};let F;const H=async()=>{var de;if(S("pwa.hideInstallCard")){e.value=!1;return}if(window.matchMedia("(display-mode: standalone)").matches||window.navigator.standalone===!0?f.pwa.status="granted":(window.deferredPwaPrompt,f.pwa.status="pending"),typeof Notification>"u")f.notification.status="unavailable";else{const le=Notification.permission;f.notification.status=le==="granted"?"granted":le==="denied"?"denied":"pending"}if((de=navigator.storage)!=null&&de.persisted){const le=await navigator.storage.persisted();f.storage.status=le?"granted":"pending"}else f.storage.status="unavailable";const R=h.value.some(le=>le.status!=="granted");e.value=R},N=async()=>{const x=window.deferredPwaPrompt;if(!x){f.pwa.status="pending",te("pwa","浏览器没有提供安装提示,可按文档手动安装。");return}x.prompt();const{outcome:A}=await x.userChoice;f.pwa.status=A==="accepted"?"granted":"denied",A!=="accepted"&&te("pwa","如果未出现安装弹窗,或被拒绝,请按说明手动安装。"),window.deferredPwaPrompt=null},K=async()=>{if(typeof Notification>"u"){f.notification.status="unavailable",te("notification","当前环境不支持通知 API,可查看说明手动开启或更换浏览器。");return}const x=await Gt();f.notification.status=x?"granted":"denied",x||te("notification","通知请求未被授予,请按说明检查浏览器或系统设置。")},Q=async()=>{var A;if(!((A=navigator.storage)!=null&&A.persist)){f.storage.status="unavailable",te("storage","当前浏览器不支持持久化存储,可查看说明或更换浏览器。");return}const x=await Qt();f.storage.status=x?"granted":"denied",x||te("storage","未能启用持久化存储,可按说明检查浏览器或系统设置。")},ge=async()=>{if(!(!k.value||a.value)){a.value=!0;try{await N(),await K(),await Q()}finally{a.value=!1,await H()}}},pe=async x=>{if(!a.value){a.value=!0;try{x==="pwa"?await N():x==="notification"?await K():x==="storage"&&await Q()}finally{a.value=!1,await H()}}},te=(x,A="")=>{x==="pwa"?n.title="如何安装为应用":x==="notification"?n.title="如何开启通知":n.title="如何启用离线存储",n.message=A||"查看以下步骤获取更多说明。",n.links=I[x]||[],l.value=!0},se=()=>{re("pwa.hideInstallCard",!0),e.value=!1},C=()=>{f.pwa.status!=="granted"&&(f.pwa.status="pending"),H()},z=()=>{H()};return Ye(()=>{H(),window.addEventListener("pwa-prompt-ready",C),F=window.matchMedia("(display-mode: standalone)"),F.addEventListener("change",z)}),Wt(()=>{window.removeEventListener("pwa-prompt-ready",C),F&&F.removeEventListener("change",z)}),(x,A)=>e.value?(c(),b(_,{key:0,class:"mb-4",color:"surface-variant",variant:"tonal"},{default:i(()=>[r("div",Ii,[r("div",Ei,[s(j,{class:"text-h6"},{default:i(()=>[...A[2]||(A[2]=[u(" 安装应用与授权 ",-1)])]),_:1}),s(yt,{class:"pb-1"},{default:i(()=>[...A[3]||(A[3]=[u(" 手动点选下方项目请求安装和权限,也可以直接关闭 ",-1)])]),_:1}),s(V,{class:"pt-0 pb-1"},{default:i(()=>[s(we,{density:"comfortable",lines:"two"},{default:i(()=>[(c(!0),p(E,null,U(h.value,R=>(c(),b(Se,{key:R.key,disabled:a.value,onClick:()=>pe(R.key)},{prepend:i(()=>[s(Ie,{color:m[R.status],size:"32",variant:"tonal"},{default:i(()=>[s(D,{icon:d[R.status]},null,8,["icon"])]),_:2},1032,["color"])]),append:i(()=>[s(O,{color:m[R.status],size:"small",variant:"tonal",class:"me-2"},{default:i(()=>[u(g(o[R.status]),1)]),_:2},1032,["color"]),s(y,{variant:"text",icon:"mdi-information",size:"small",disabled:a.value,onClick:qe(()=>te(R.key),["stop"])},null,8,["disabled","onClick"])]),default:i(()=>[s($e,null,{default:i(()=>[u(g(R.label),1)]),_:2},1024),s(Pe,null,{default:i(()=>[u(g(R.description),1)]),_:2},1024)]),_:2},1032,["disabled","onClick"]))),128))]),_:1})]),_:1}),s(X,null,{default:i(()=>[s(y,{class:"ms-2",variant:"outlined",size:"small",onClick:se},{default:i(()=>[...A[4]||(A[4]=[u(" 关闭 ",-1)])]),_:1}),s(y,{class:"ms-2",variant:"elevated",color:"primary",size:"small","prepend-icon":a.value?"mdi-timer-sand":"mdi-shield-check",disabled:!k.value||a.value,onClick:ge},{default:i(()=>[u(g(a.value?"处理中":"一次处理全部"),1)]),_:1},8,["prepend-icon","disabled"])]),_:1})]),s(Ie,{class:"ma-3",size:"100",rounded:"0"},{default:i(()=>[s(D,{icon:"mdi-monitor-cellphone",size:"80"})]),_:1})]),s(J,{modelValue:l.value,"onUpdate:modelValue":A[1]||(A[1]=R=>l.value=R),"max-width":"520"},{default:i(()=>[s(_,null,{default:i(()=>[s(j,{class:"text-h6"},{default:i(()=>[u(g(n.title),1)]),_:1}),s(V,null,{default:i(()=>[r("p",Ni,g(n.message),1),s(we,{density:"comfortable"},{default:i(()=>[(c(!0),p(E,null,U(n.links,(R,de)=>(c(),b(Se,{key:de,href:R.href,target:"_blank",rel:"noopener"},{default:i(()=>[s($e,null,{default:i(()=>[u(g(R.text),1)]),_:2},1024),s(Pe,null,{default:i(()=>[u(g(R.desc),1)]),_:2},1024)]),_:2},1032,["href"]))),128))]),_:1})]),_:1}),s(X,null,{default:i(()=>[s(L),s(y,{variant:"text",onClick:A[0]||(A[0]=R=>l.value=!1)},{default:i(()=>[...A[5]||(A[5]=[u("我知道了",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})):w("",!0)}},Vi={name:"HomeActions",props:{synced:Boolean,loadingUpload:Boolean,showRandomPickerButton:Boolean,showExamScheduleButton:Boolean,showListCardButton:Boolean,showFullscreenButton:Boolean,isFullscreen:Boolean,showAntiScreenBurnCard:Boolean,showTestCardButton:Boolean},emits:["upload","show-sync-message","open-random-picker","toggle-fullscreen","add-test-card"]},Ai={class:"d-flex flex-wrap align-center mt-4"};function Ui(t,e,a,l,n,o){return c(),p(E,null,[r("div",Ai,[a.synced?(c(),b(y,{key:1,color:"success",size:"large",onClick:e[1]||(e[1]=d=>t.$emit("show-sync-message"))},{default:i(()=>[...e[9]||(e[9]=[u(" 同步完成 ",-1)])]),_:1})):(c(),b(y,{key:0,loading:a.loadingUpload,class:"ml-2",color:"error",size:"large",onClick:e[0]||(e[0]=d=>t.$emit("upload"))},{default:i(()=>[...e[8]||(e[8]=[u(" 上传 ",-1)])]),_:1},8,["loading"])),a.showRandomPickerButton?(c(),b(y,{key:2,"append-icon":"mdi-dice-multiple",class:"ml-2",color:"amber","prepend-icon":"mdi-account-question",size:"large",onClick:e[2]||(e[2]=d=>t.$emit("open-random-picker"))},{default:i(()=>[...e[10]||(e[10]=[u(" 随机点名 ",-1)])]),_:1})):w("",!0),a.showExamScheduleButton?(c(),b(Je,{key:3,class:"ml-2",color:"green",variant:"elevated",divided:""},{default:i(()=>[s(y,{"prepend-icon":"mdi-calendar-check",size:"large",onClick:e[3]||(e[3]=d=>t.$router.push("/examschedule"))},{default:i(()=>[...e[11]||(e[11]=[u(" 考试看板 ",-1)])]),_:1}),s(y,{icon:"mdi-plus",size:"large",onClick:e[4]||(e[4]=d=>t.$emit("add-exam-card"))})]),_:1})):w("",!0),a.showListCardButton?(c(),b(y,{key:4,class:"ml-2",color:"primary-darken-1","prepend-icon":"mdi-list-box",size:"large",onClick:e[5]||(e[5]=d=>t.$router.push("/list"))},{default:i(()=>[...e[12]||(e[12]=[u(" 列表 ",-1)])]),_:1})):w("",!0),a.showFullscreenButton?(c(),b(y,{key:5,color:a.isFullscreen?"blue-grey":"blue","prepend-icon":a.isFullscreen?"mdi-fullscreen-exit":"mdi-fullscreen",class:"ml-2",size:"large",onClick:e[6]||(e[6]=d=>t.$emit("toggle-fullscreen"))},{default:i(()=>[u(g(a.isFullscreen?"退出全屏":"全屏显示"),1)]),_:1},8,["color","prepend-icon"])):w("",!0),a.showTestCardButton?(c(),b(y,{key:6,class:"ml-2",color:"purple","prepend-icon":"mdi-test-tube",size:"large",onClick:e[7]||(e[7]=d=>t.$emit("add-test-card"))},{default:i(()=>[...e[13]||(e[13]=[u(" 添加测试卡片 ",-1)])]),_:1})):w("",!0)]),a.showAntiScreenBurnCard?(c(),b(_,{key:0,border:"",class:"mt-4 anti-burn-card",color:"primary",variant:"tonal"},{default:i(()=>[s(j,{class:"text-subtitle-1"},{default:i(()=>[s(D,{icon:"mdi-shield-check",size:"small",start:""}),e[14]||(e[14]=u(" 屏幕保护技术已启用 ",-1))]),_:1}),s(V,{class:"text-body-2"},{default:i(()=>[...e[15]||(e[15]=[r("p",null," 为防止OLED/LCD屏幕烧屏,界面元素会定期微调位置。 ",-1),r("p",{class:"text-caption text-grey"}," 此功能不会影响正常使用,仅在长时间静止显示时生效。 ",-1),r("p",{class:"text-caption text-grey"}," 建议在放学后关闭显示器以节约能源。 ",-1)])]),_:1})]),_:1})):w("",!0)],64)}const $t=W(Vi,[["render",Ui]]),zi={name:"RelativeTimeDisplay",props:{time:{type:[String,Date,Number],required:!0}},computed:{displayTime(){if(!this.time)return"";const t=new Date(this.time),e=new Date,a=new Date(t.getFullYear(),t.getMonth(),t.getDate()),l=new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=a.getTime()-l.getTime(),o=Math.round(n/(1e3*60*60*24));if(o===0)return"今天";if(o===1)return"明天";if(o===2)return"后天";if(o===-1)return"昨天";if(o===-2)return"前天";const d=l.getDay()||7,m=new Date(l);m.setDate(l.getDate()-d+1);const f=new Date(l);if(f.setDate(l.getDate()+(7-d)),a>=m&&a<=f)return["周日","周一","周二","周三","周四","周五","周六"][t.getDay()];const h=t.getMonth()+1,k=t.getDate();return`${h}月${k}日`}}};function Mi(t,e,a,l,n,o){return c(),p("span",null,g(o.displayTime),1)}const Pt=W(zi,[["render",Mi]]),ze=Jt("exam",{state:()=>({examList:[],exams:{},loadingList:!1,loadingDetails:{}}),actions:{async fetchExamList(){if(!this.loadingList){this.loadingList=!0;try{const t=await Z.loadData("es_list");Array.isArray(t)?this.examList=t:this.examList=[]}catch(t){console.error("Failed to load exam list:",t)}finally{this.loadingList=!1}}},async fetchExam(t){if(this.exams[t])return this.exams[t];if(!this.loadingDetails[t]){this.loadingDetails[t]=!0;try{const e=await Z.loadData(`es_${t}`);return e&&(this.exams[t]=e),e}catch(e){console.error(`Failed to load exam details for ${t}:`,e)}finally{this.loadingDetails[t]=!1}}},async getUpcomingExams(t=25){await this.fetchExamList();const e=[],a=new Date,l=new Date(a.getTime()+2*24*60*60*1e3),n=this.examList.slice(0,t);for(const o of n){let d=this.exams[o.id];d||(d=await this.fetchExam(o.id)),d&&d.examInfos&&Array.isArray(d.examInfos)&&d.examInfos.some(f=>{const h=new Date(f.start);return h>=a&&h<=l})&&e.push({id:o.id,...d})}return e}}}),$i={name:"ConciseExamCard",components:{RelativeTimeDisplay:Pt},props:{examId:{type:String,required:!0},contentStyle:{type:Object,default:()=>({})},readonly:{type:Boolean,default:!1}},computed:{...bt(ze,["exams","loadingDetails"]),exam(){return this.exams[this.examId]},loading(){return this.loadingDetails[this.examId]},groupedExamInfos(){if(!this.exam||!this.exam.examInfos)return[];const t=[...this.exam.examInfos].sort((l,n)=>new Date(l.start)-new Date(n.start)),e=[];let a=null;return t.forEach(l=>{const o=new Date(l.start).toDateString();(!a||a.key!==o)&&(a={key:o,date:l.start,infos:[]},e.push(a)),a.infos.push(l)}),e}},mounted(){this.fetchExam(this.examId)},methods:{...kt(ze,["fetchExam"]),formatTimeOnly(t){if(!t)return"";try{const e=new Date(t),a=e.getHours().toString().padStart(2,"0"),l=e.getMinutes().toString().padStart(2,"0");return`${a}:${l}`}catch{return""}},isPast(t){return t?new Date(t)t.$emit("click"))},{default:i(()=>[s(j,{class:"d-flex align-center py-2 px-3 bg-primary-lighten-5 text-subtitle-1 font-weight-bold"},{default:i(()=>{var m;return[r("span",Pi,g(((m=o.exam)==null?void 0:m.examName)||"加载中..."),1)]}),_:1}),s(V,{class:"flex-grow-1 pa-4 overflow-y-auto",style:he(a.contentStyle)},{default:i(()=>[o.loading?(c(),p("div",Li,[s(xt,{indeterminate:"",size:"24",color:"primary"})])):o.exam?(c(),p("div",Fi,[(c(!0),p(E,null,U(o.groupedExamInfos,(m,f)=>(c(),p("div",{key:f,class:"mb-3"},[r("div",Ri,[s(d,{time:m.date},null,8,["time"])]),(c(!0),p(E,null,U(m.infos,(h,k)=>(c(),p("div",{key:k,class:fe(["d-flex align-center justify-space-between py-1 border-b-sm",{"border-none":k===m.infos.length-1,"text-grey":o.isPast(h.end)}])},[r("div",Oi,g(h.name),1),r("div",Bi,g(o.formatTimeOnly(h.start))+" - "+g(o.formatTimeOnly(h.end)),1)],2))),128))]))),128))])):(c(),p("div",ji,"无法加载"))]),_:1},8,["style"])]),_:1})}const Lt=W($i,[["render",Hi],["__scopeId","data-v-33424f55"]]),Ki=["6IO4","5Lmz","6JCd6I6J","5rer","5aW4"],qi=Ki.map(t=>_t.decode(t)),ht=.75,Wi={name:"HitokotoCard",data(){return{enabled:!1,refreshInterval:60,kvConfig:{sources:["zhaoyu"],sensitiveWords:[]},sentence:"",author:"",origin:"",loading:!1,timer:null,unwatch:null,fontSize:28}},computed:{contentStyle(){return{"font-size":`${this.fontSize*ht}px`,"white-space":"pre-wrap","line-height":"1.6","text-align":"left"}},authorStyle(){return{"font-size":`${this.fontSize*ht*.6}px`,"text-align":"left"}}},async mounted(){this.loadLocalSettings(),await this.loadKvSettings(),this.fetchSentence(),this.startTimer(),this.unwatch=Xe(()=>{this.loadLocalSettings(),this.startTimer()})},beforeUnmount(){this.stopTimer(),this.unwatch&&this.unwatch()},methods:{loadLocalSettings(){this.enabled=Oe.getSetting("hitokoto.enabled"),this.refreshInterval=Oe.getSetting("hitokoto.refreshInterval"),this.fontSize=Oe.getSetting("font.size")},async loadKvSettings(){try{const t=await Z.loadData("sentence-info");let e=t;t&&t.data&&(e=t.data),e&&(this.kvConfig={sources:Array.isArray(e.sources)&&e.sources.length>0?e.sources:["zhaoyu"],sensitiveWords:e.sensitiveWords?e.sensitiveWords.split(/[,,]/).map(a=>a.trim()).filter(a=>a):[],jinrishiciToken:e.jinrishiciToken})}catch(t){console.error("Failed to load sentence-info",t)}},startTimer(){this.timer&&clearInterval(this.timer),this.refreshInterval>0&&(this.timer=setInterval(this.fetchSentence,this.refreshInterval*1e3))},stopTimer(){this.timer&&clearInterval(this.timer)},async fetchSentence(){if(!this.loading){this.loading=!0;try{const t=this.kvConfig.sources,e=t[Math.floor(Math.random()*t.length)];let a=null,l="",n="",o="";if(e==="hitokoto")a=(await Be.get("https://v1.hitokoto.cn/")).data,l=a.hitokoto,n=a.from_who,o=a.from;else if(e==="zhaoyu"){const d=await Be.get("https://hub.saintic.com/openservice/sentence/all.json");d.data.success&&(a=d.data.data,l=a.sentence||a.content||a.name,n=a.author,o=a.name||a.origin)}else if(e==="jinrishici")if(this.kvConfig.jinrishiciToken){const d=await Be.get("https://v2.jinrishici.com/one.json?client=npm-sdk/1.0&X-User-Token="+encodeURIComponent(this.kvConfig.jinrishiciToken),{});d.data.status==="success"&&(a=d.data.data,l=a.content,n=a.origin.author,o=a.origin.title)}else return console.warn("Jinrishici token missing. Please enable it in settings to generate a token."),this.loading=!1,this.fetchSentence();if(l){if([...qi,...this.kvConfig.sensitiveWords].some(f=>f&&l.includes(f)))return this.loading=!1,this.fetchSentence();this.sentence=l,this.author=n||"",this.origin=o||"未知"}}catch(t){console.error("Failed to fetch sentence",t),this.sentence="获取失败",this.author="",this.origin=""}finally{this.loading=!1}}}}},Gi={key:0,class:"mr-2"},Qi={key:1};function Ji(t,e,a,l,n,o){return c(),b(_,{class:"hitokoto-card",elevation:"2",border:"",rounded:"xl",loading:n.loading,height:"100%",onClick:o.fetchSentence},{default:i(()=>[s(V,{class:"pa-6 d-flex flex-column justify-center",style:{height:"100%"}},{default:i(()=>[r("div",{class:"font-weight-medium mb-4 serif-font",style:he(o.contentStyle)},g(n.sentence),5),r("div",{class:"text-medium-emphasis serif-font",style:he(o.authorStyle)},[n.author?(c(),p("span",Gi,g(n.author),1)):w("",!0),n.origin?(c(),p("span",Qi,"《"+g(n.origin)+"》",1)):w("",!0)],4)]),_:1})]),_:1},8,["loading","onClick"])}const Ft=W(Wi,[["render",Ji],["__scopeId","data-v-de957b7d"]]),Yi={name:"HomeworkGrid",computed:{settings(){return settings}},components:{HitokotoCard:Ft,ConciseExamCard:Lt},props:{sortedItems:{type:Array,required:!0},unusedSubjects:{type:Array,required:!0},emptySubjectDisplay:{type:String,default:"button"},isMobile:{type:Boolean,default:!1},isEditingDisabled:{type:Boolean,default:!1},contentStyle:{type:Object,default:()=>({})},highlightedCards:{type:Object,default:()=>({})}},emits:["open-dialog","open-attendance","disabled-click"],data(){return{isReadOnlyToken:!1}},async mounted(){this.resizeObserver=new ResizeObserver(()=>{this.resizeAllGridItems()}),this.$refs.gridContainer&&this.resizeObserver.observe(this.$refs.gridContainer),this.$nextTick(()=>{this.resizeAllGridItems(),this.$refs.items&&this.$refs.items.forEach(t=>{t.firstElementChild&&this.resizeObserver.observe(t.firstElementChild)})}),await this.checkReadOnlyStatus()},updated(){this.$nextTick(()=>{this.resizeAllGridItems(),this.$refs.items&&this.$refs.items.forEach(t=>{t.firstElementChild&&this.resizeObserver.observe(t.firstElementChild)})})},beforeUnmount(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{getSetting:S,async checkReadOnlyStatus(){try{let t=null;if(this.$parent&&this.$parent.$refs&&this.$parent.$refs.studentNameManager?t=this.$parent.$refs.studentNameManager:this.$root&&this.$root.$refs&&this.$root.$refs.studentNameManager&&(t=this.$root.$refs.studentNameManager),t&&typeof t.isReadOnly<"u")this.isReadOnlyToken=t.isReadOnly;else{const{getSetting:e}=await nt(async()=>{const{getSetting:l}=await import("./index-BUM0TY0E.js").then(n=>n.cL);return{getSetting:l}},__vite__mapDeps([0,1]),import.meta.url),a=e("server.kvToken");if(a){const{default:l}=await nt(async()=>{const{default:o}=await import("./dataProvider-MQ8YacC2.js").then(d=>d.e);return{default:o}},__vite__mapDeps([2,0,1,3]),import.meta.url),n=e("server.domain");if(n)try{const o=await l.get(`${n}/kv/_token`,{headers:{Authorization:`Bearer ${a}`}});o.data&&typeof o.data.isReadOnly<"u"&&(this.isReadOnlyToken=o.data.isReadOnly)}catch(o){console.error("获取Token信息失败:",o)}}}}catch(t){console.error("检查只读状态失败:",t)}},resizeGridItem(t){const e=this.$refs.gridContainer;if(!e)return;const a=parseInt(window.getComputedStyle(e).getPropertyValue("grid-auto-rows")),l=parseInt(window.getComputedStyle(e).getPropertyValue("gap")),n=t.firstElementChild;if(!n)return;const o=n.getBoundingClientRect().height,d=Math.ceil((o+l)/(a+l));t.style.gridRowEnd=`span ${d}`},resizeAllGridItems(){const t=this.$refs.items;t&&t.forEach(e=>this.resizeGridItem(e))},handleCardClick(t,e){if(this.isEditingDisabled){this.$emit("disabled-click");return}t==="attendance"?this.$emit("open-attendance"):t==="dialog"&&this.$emit("open-dialog",e)},splitPoint(t){return t.split(` +`))},{default:i(()=>[...e[10]||(e[10]=[u(" 换行 ",-1)])]),_:1})])]),r("div",ci,[(c(!0),p(E,null,U(n.quickTexts,m=>(c(),b(y,{key:m,size:"small",variant:"flat",onClick:f=>o.insertAtCursor(m)},{default:i(()=>[u(g(m),1)]),_:2},1032,["onClick"]))),128))])])):w("",!0)])]}),_:1}),a.isEditingPastData?(c(),b(_e,{key:0,type:"warning",variant:"tonal",class:"mx-4 mb-4",border:"start","border-color":"warning",prominent:""},{prepend:i(()=>[...e[11]||(e[11]=[])]),default:i(()=>[r("div",mi,[e[12]||(e[12]=r("div",{class:"text-h6 mb-1"},"你打算修改历史?",-1)),r("div",fi," 这是 "+g(new Date(a.currentDateString.slice(0,4),a.currentDateString.slice(4,6)-1,a.currentDateString.slice(6,8)).toLocaleDateString())+" 的作业 • 请谨慎操作,确保不会覆盖重要数据 ",1)])]),_:1})):w("",!0),e[13]||(e[13]=r("div",{class:"text-center text-body-2 text-disabled mb-5"}," 点击空白处完成编辑 ",-1))]),_:1})]),_:1},8,["modelValue","fullscreen","onClick:outside"])}const Ut=W(Qn,[["render",hi],["__scopeId","data-v-af72d8a9"]]),gi={name:"AttendanceSidebar",props:{studentList:{type:Array,required:!0},attendance:{type:Object,required:!0},isEditingDisabled:{type:Boolean,default:!1}},emits:["click","disabled-click"],setup(){return{display:Ae()}},methods:{getSetting:S,handleClick(){this.isEditingDisabled?this.$emit("disabled-click"):this.$emit("click")}}},pi={style:{"white-space":"nowrap"}},vi={style:{"white-space":"nowrap"}},yi={style:{"white-space":"nowrap"}},ki={key:0},bi={style:{"white-space":"nowrap"}},xi={style:{"white-space":"nowrap"}},wi={key:0},Si={style:{"white-space":"nowrap"}},Ci={style:{"white-space":"nowrap"}},_i={key:0},Di={style:{"white-space":"nowrap"}};function Ti(t,e,a,l,n,o){return a.studentList&&a.studentList.length?oe((c(),b(ne,{key:0,class:fe([{"cursor-not-allowed":a.isEditingDisabled},"attendance-area no-select"]),cols:"1",onClick:o.handleClick},{default:i(()=>[e[10]||(e[10]=r("h1",null,"出勤",-1)),r("h2",null,[e[0]||(e[0]=r("span",{style:{"white-space":"nowrap"}}," 应到",-1)),e[1]||(e[1]=u(" : ",-1)),r("span",pi,g(a.studentList.length-a.attendance.exclude.length)+"人 ",1)]),r("h2",null,[e[2]||(e[2]=r("span",{style:{"white-space":"nowrap"}}," 实到",-1)),e[3]||(e[3]=u(" : ",-1)),r("span",vi,g(a.studentList.length-a.attendance.absent.length-!o.getSetting("display.lateStudentsArePresent")*a.attendance.late.length-a.attendance.exclude.length)+"人 ",1)]),r("h2",null,[e[4]||(e[4]=r("span",{style:{"white-space":"nowrap"}}," 请假",-1)),e[5]||(e[5]=u(" : ",-1)),r("span",yi,g(a.attendance.absent.length)+"人 ",1)]),(c(!0),p(E,null,U(a.attendance.absent,(d,m)=>(c(),p("h3",{key:"absent-"+m,class:"gray-text"},[l.display.lgAndUp.value?(c(),p("span",ki,g(`${m+1}. `),1)):w("",!0),r("span",bi,g(d),1)]))),128)),r("h2",null,[e[6]||(e[6]=r("span",{style:{"white-space":"nowrap"}},"迟到",-1)),e[7]||(e[7]=u(" : ",-1)),r("span",xi,g(a.attendance.late.length)+"人 ",1)]),(c(!0),p(E,null,U(a.attendance.late,(d,m)=>(c(),p("h3",{key:"late-"+m,class:"gray-text"},[l.display.lgAndUp.value?(c(),p("span",wi,g(`${m+1}. `),1)):w("",!0),r("span",Si,g(d),1)]))),128)),r("h2",null,[e[8]||(e[8]=r("span",{style:{"white-space":"nowrap"}},"不参与",-1)),e[9]||(e[9]=u(" : ",-1)),r("span",Ci,g(a.attendance.exclude.length)+"人 ",1)]),(c(!0),p(E,null,U(a.attendance.exclude,(d,m)=>(c(),p("h3",{key:"exclude-"+m,class:"gray-text"},[l.display.lgAndUp.value?(c(),p("span",_i,g(`${m+1}. `),1)):w("",!0),r("span",Di,g(d),1)]))),128))]),_:1},8,["class","onClick"])),[[xe,a.isEditingDisabled?!1:{class:`text-${["primary","secondary","info","success","warning","error"][Math.floor(Math.random()*6)]}`}]]):w("",!0)}const zt=W(gi,[["render",Ti],["__scopeId","data-v-5a7eaf6a"]]),Ii={class:"d-flex flex-no-wrap justify-space-between"},Ei={class:"pe-4"},Ni={class:"mb-3"},Mt={__name:"PwaInstallCard",setup(t){const e=$(!1),a=$(!1),l=$(!1),n=st({title:"",message:"",links:[]}),o={pending:"待授权",granted:"已完成",denied:"已拒绝",unavailable:"不可用"},d={pending:"mdi-progress-clock",granted:"mdi-check-circle",denied:"mdi-close-circle",unavailable:"mdi-help-circle"},m={pending:"primary",granted:"success",denied:"error",unavailable:"surface-variant"},f=st({pwa:{label:"安装应用",description:"将网站安装为独立应用,便于快速启动",status:"pending"},notification:{label:"通知权限",description:"允许接收作业、考试等通知提醒",status:"pending"},storage:{label:"离线存储",description:"启用持久化存储以获得更稳健的离线体验",status:"pending"}}),h=G(()=>[{key:"pwa",...f.pwa},{key:"notification",...f.notification},{key:"storage",...f.storage}]),k=G(()=>h.value.some(x=>x.status==="pending")),I={pwa:[{text:"MDN - 安装 PWA 指南",desc:"检查浏览器是否支持并手动触发安装",href:"https://developer.mozilla.org/zh-CN/docs/Web/Progressive_web_apps/Guides/Installing"},{text:"Microsoft Edge - PWA 体验",desc:"Edge 浏览器安装与 UX 说明",href:"https://learn.microsoft.com/zh-cn/microsoft-edge/progressive-web-apps/ux"}],notification:[{text:"MDN - 通知权限与用法",desc:"浏览器通知权限的工作方式与调试",href:"https://developer.mozilla.org/zh-CN/docs/Web/API/notification"}],storage:[{text:"MDN - Storage 持久化说明",desc:"了解持久化存储的可用性与申请方式",href:"https://developer.mozilla.org/zh-CN/docs/Web/API/StorageManager/persist"}]};let F;const H=async()=>{var de;if(S("pwa.hideInstallCard")){e.value=!1;return}if(window.matchMedia("(display-mode: standalone)").matches||window.navigator.standalone===!0?f.pwa.status="granted":(window.deferredPwaPrompt,f.pwa.status="pending"),typeof Notification>"u")f.notification.status="unavailable";else{const le=Notification.permission;f.notification.status=le==="granted"?"granted":le==="denied"?"denied":"pending"}if((de=navigator.storage)!=null&&de.persisted){const le=await navigator.storage.persisted();f.storage.status=le?"granted":"pending"}else f.storage.status="unavailable";const R=h.value.some(le=>le.status!=="granted");e.value=R},N=async()=>{const x=window.deferredPwaPrompt;if(!x){f.pwa.status="pending",te("pwa","浏览器没有提供安装提示,可按文档手动安装。");return}x.prompt();const{outcome:A}=await x.userChoice;f.pwa.status=A==="accepted"?"granted":"denied",A!=="accepted"&&te("pwa","如果未出现安装弹窗,或被拒绝,请按说明手动安装。"),window.deferredPwaPrompt=null},K=async()=>{if(typeof Notification>"u"){f.notification.status="unavailable",te("notification","当前环境不支持通知 API,可查看说明手动开启或更换浏览器。");return}const x=await Gt();f.notification.status=x?"granted":"denied",x||te("notification","通知请求未被授予,请按说明检查浏览器或系统设置。")},Q=async()=>{var A;if(!((A=navigator.storage)!=null&&A.persist)){f.storage.status="unavailable",te("storage","当前浏览器不支持持久化存储,可查看说明或更换浏览器。");return}const x=await Qt();f.storage.status=x?"granted":"denied",x||te("storage","未能启用持久化存储,可按说明检查浏览器或系统设置。")},ge=async()=>{if(!(!k.value||a.value)){a.value=!0;try{await N(),await K(),await Q()}finally{a.value=!1,await H()}}},pe=async x=>{if(!a.value){a.value=!0;try{x==="pwa"?await N():x==="notification"?await K():x==="storage"&&await Q()}finally{a.value=!1,await H()}}},te=(x,A="")=>{x==="pwa"?n.title="如何安装为应用":x==="notification"?n.title="如何开启通知":n.title="如何启用离线存储",n.message=A||"查看以下步骤获取更多说明。",n.links=I[x]||[],l.value=!0},se=()=>{re("pwa.hideInstallCard",!0),e.value=!1},C=()=>{f.pwa.status!=="granted"&&(f.pwa.status="pending"),H()},z=()=>{H()};return Ye(()=>{H(),window.addEventListener("pwa-prompt-ready",C),F=window.matchMedia("(display-mode: standalone)"),F.addEventListener("change",z)}),Wt(()=>{window.removeEventListener("pwa-prompt-ready",C),F&&F.removeEventListener("change",z)}),(x,A)=>e.value?(c(),b(_,{key:0,class:"mb-4",color:"surface-variant",variant:"tonal"},{default:i(()=>[r("div",Ii,[r("div",Ei,[s(j,{class:"text-h6"},{default:i(()=>[...A[2]||(A[2]=[u(" 安装应用与授权 ",-1)])]),_:1}),s(yt,{class:"pb-1"},{default:i(()=>[...A[3]||(A[3]=[u(" 手动点选下方项目请求安装和权限,也可以直接关闭 ",-1)])]),_:1}),s(V,{class:"pt-0 pb-1"},{default:i(()=>[s(we,{density:"comfortable",lines:"two"},{default:i(()=>[(c(!0),p(E,null,U(h.value,R=>(c(),b(Se,{key:R.key,disabled:a.value,onClick:()=>pe(R.key)},{prepend:i(()=>[s(Ie,{color:m[R.status],size:"32",variant:"tonal"},{default:i(()=>[s(D,{icon:d[R.status]},null,8,["icon"])]),_:2},1032,["color"])]),append:i(()=>[s(O,{color:m[R.status],size:"small",variant:"tonal",class:"me-2"},{default:i(()=>[u(g(o[R.status]),1)]),_:2},1032,["color"]),s(y,{variant:"text",icon:"mdi-information",size:"small",disabled:a.value,onClick:qe(()=>te(R.key),["stop"])},null,8,["disabled","onClick"])]),default:i(()=>[s($e,null,{default:i(()=>[u(g(R.label),1)]),_:2},1024),s(Pe,null,{default:i(()=>[u(g(R.description),1)]),_:2},1024)]),_:2},1032,["disabled","onClick"]))),128))]),_:1})]),_:1}),s(X,null,{default:i(()=>[s(y,{class:"ms-2",variant:"outlined",size:"small",onClick:se},{default:i(()=>[...A[4]||(A[4]=[u(" 关闭 ",-1)])]),_:1}),s(y,{class:"ms-2",variant:"elevated",color:"primary",size:"small","prepend-icon":a.value?"mdi-timer-sand":"mdi-shield-check",disabled:!k.value||a.value,onClick:ge},{default:i(()=>[u(g(a.value?"处理中":"一次处理全部"),1)]),_:1},8,["prepend-icon","disabled"])]),_:1})]),s(Ie,{class:"ma-3",size:"100",rounded:"0"},{default:i(()=>[s(D,{icon:"mdi-monitor-cellphone",size:"80"})]),_:1})]),s(J,{modelValue:l.value,"onUpdate:modelValue":A[1]||(A[1]=R=>l.value=R),"max-width":"520"},{default:i(()=>[s(_,null,{default:i(()=>[s(j,{class:"text-h6"},{default:i(()=>[u(g(n.title),1)]),_:1}),s(V,null,{default:i(()=>[r("p",Ni,g(n.message),1),s(we,{density:"comfortable"},{default:i(()=>[(c(!0),p(E,null,U(n.links,(R,de)=>(c(),b(Se,{key:de,href:R.href,target:"_blank",rel:"noopener"},{default:i(()=>[s($e,null,{default:i(()=>[u(g(R.text),1)]),_:2},1024),s(Pe,null,{default:i(()=>[u(g(R.desc),1)]),_:2},1024)]),_:2},1032,["href"]))),128))]),_:1})]),_:1}),s(X,null,{default:i(()=>[s(L),s(y,{variant:"text",onClick:A[0]||(A[0]=R=>l.value=!1)},{default:i(()=>[...A[5]||(A[5]=[u("我知道了",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})):w("",!0)}},Vi={name:"HomeActions",props:{synced:Boolean,loadingUpload:Boolean,showRandomPickerButton:Boolean,showExamScheduleButton:Boolean,showListCardButton:Boolean,showFullscreenButton:Boolean,isFullscreen:Boolean,showAntiScreenBurnCard:Boolean,showTestCardButton:Boolean},emits:["upload","show-sync-message","open-random-picker","toggle-fullscreen","add-test-card"]},Ai={class:"d-flex flex-wrap align-center mt-4"};function Ui(t,e,a,l,n,o){return c(),p(E,null,[r("div",Ai,[a.synced?(c(),b(y,{key:1,color:"success",size:"large",onClick:e[1]||(e[1]=d=>t.$emit("show-sync-message"))},{default:i(()=>[...e[9]||(e[9]=[u(" 同步完成 ",-1)])]),_:1})):(c(),b(y,{key:0,loading:a.loadingUpload,class:"ml-2",color:"error",size:"large",onClick:e[0]||(e[0]=d=>t.$emit("upload"))},{default:i(()=>[...e[8]||(e[8]=[u(" 上传 ",-1)])]),_:1},8,["loading"])),a.showRandomPickerButton?(c(),b(y,{key:2,"append-icon":"mdi-dice-multiple",class:"ml-2",color:"amber","prepend-icon":"mdi-account-question",size:"large",onClick:e[2]||(e[2]=d=>t.$emit("open-random-picker"))},{default:i(()=>[...e[10]||(e[10]=[u(" 随机点名 ",-1)])]),_:1})):w("",!0),a.showExamScheduleButton?(c(),b(Je,{key:3,class:"ml-2",color:"green",variant:"elevated",divided:""},{default:i(()=>[s(y,{"prepend-icon":"mdi-calendar-check",size:"large",onClick:e[3]||(e[3]=d=>t.$router.push("/examschedule"))},{default:i(()=>[...e[11]||(e[11]=[u(" 考试看板 ",-1)])]),_:1}),s(y,{icon:"mdi-plus",size:"large",onClick:e[4]||(e[4]=d=>t.$emit("add-exam-card"))})]),_:1})):w("",!0),a.showListCardButton?(c(),b(y,{key:4,class:"ml-2",color:"primary-darken-1","prepend-icon":"mdi-list-box",size:"large",onClick:e[5]||(e[5]=d=>t.$router.push("/list"))},{default:i(()=>[...e[12]||(e[12]=[u(" 列表 ",-1)])]),_:1})):w("",!0),a.showFullscreenButton?(c(),b(y,{key:5,color:a.isFullscreen?"blue-grey":"blue","prepend-icon":a.isFullscreen?"mdi-fullscreen-exit":"mdi-fullscreen",class:"ml-2",size:"large",onClick:e[6]||(e[6]=d=>t.$emit("toggle-fullscreen"))},{default:i(()=>[u(g(a.isFullscreen?"退出全屏":"全屏显示"),1)]),_:1},8,["color","prepend-icon"])):w("",!0),a.showTestCardButton?(c(),b(y,{key:6,class:"ml-2",color:"purple","prepend-icon":"mdi-test-tube",size:"large",onClick:e[7]||(e[7]=d=>t.$emit("add-test-card"))},{default:i(()=>[...e[13]||(e[13]=[u(" 添加测试卡片 ",-1)])]),_:1})):w("",!0)]),a.showAntiScreenBurnCard?(c(),b(_,{key:0,border:"",class:"mt-4 anti-burn-card",color:"primary",variant:"tonal"},{default:i(()=>[s(j,{class:"text-subtitle-1"},{default:i(()=>[s(D,{icon:"mdi-shield-check",size:"small",start:""}),e[14]||(e[14]=u(" 屏幕保护技术已启用 ",-1))]),_:1}),s(V,{class:"text-body-2"},{default:i(()=>[...e[15]||(e[15]=[r("p",null," 为防止OLED/LCD屏幕烧屏,界面元素会定期微调位置。 ",-1),r("p",{class:"text-caption text-grey"}," 此功能不会影响正常使用,仅在长时间静止显示时生效。 ",-1),r("p",{class:"text-caption text-grey"}," 建议在放学后关闭显示器以节约能源。 ",-1)])]),_:1})]),_:1})):w("",!0)],64)}const $t=W(Vi,[["render",Ui]]),zi={name:"RelativeTimeDisplay",props:{time:{type:[String,Date,Number],required:!0}},computed:{displayTime(){if(!this.time)return"";const t=new Date(this.time),e=new Date,a=new Date(t.getFullYear(),t.getMonth(),t.getDate()),l=new Date(e.getFullYear(),e.getMonth(),e.getDate()),n=a.getTime()-l.getTime(),o=Math.round(n/(1e3*60*60*24));if(o===0)return"今天";if(o===1)return"明天";if(o===2)return"后天";if(o===-1)return"昨天";if(o===-2)return"前天";const d=l.getDay()||7,m=new Date(l);m.setDate(l.getDate()-d+1);const f=new Date(l);if(f.setDate(l.getDate()+(7-d)),a>=m&&a<=f)return["周日","周一","周二","周三","周四","周五","周六"][t.getDay()];const h=t.getMonth()+1,k=t.getDate();return`${h}月${k}日`}}};function Mi(t,e,a,l,n,o){return c(),p("span",null,g(o.displayTime),1)}const Pt=W(zi,[["render",Mi]]),ze=Jt("exam",{state:()=>({examList:[],exams:{},loadingList:!1,loadingDetails:{}}),actions:{async fetchExamList(){if(!this.loadingList){this.loadingList=!0;try{const t=await Z.loadData("es_list");Array.isArray(t)?this.examList=t:this.examList=[]}catch(t){console.error("Failed to load exam list:",t)}finally{this.loadingList=!1}}},async fetchExam(t){if(this.exams[t])return this.exams[t];if(!this.loadingDetails[t]){this.loadingDetails[t]=!0;try{const e=await Z.loadData(`es_${t}`);return e&&(this.exams[t]=e),e}catch(e){console.error(`Failed to load exam details for ${t}:`,e)}finally{this.loadingDetails[t]=!1}}},async getUpcomingExams(t=25){await this.fetchExamList();const e=[],a=new Date,l=new Date(a.getTime()+2*24*60*60*1e3),n=this.examList.slice(0,t);for(const o of n){let d=this.exams[o.id];d||(d=await this.fetchExam(o.id)),d&&d.examInfos&&Array.isArray(d.examInfos)&&d.examInfos.some(f=>{const h=new Date(f.start);return h>=a&&h<=l})&&e.push({id:o.id,...d})}return e}}}),$i={name:"ConciseExamCard",components:{RelativeTimeDisplay:Pt},props:{examId:{type:String,required:!0},contentStyle:{type:Object,default:()=>({})},readonly:{type:Boolean,default:!1}},computed:{...bt(ze,["exams","loadingDetails"]),exam(){return this.exams[this.examId]},loading(){return this.loadingDetails[this.examId]},groupedExamInfos(){if(!this.exam||!this.exam.examInfos)return[];const t=[...this.exam.examInfos].sort((l,n)=>new Date(l.start)-new Date(n.start)),e=[];let a=null;return t.forEach(l=>{const o=new Date(l.start).toDateString();(!a||a.key!==o)&&(a={key:o,date:l.start,infos:[]},e.push(a)),a.infos.push(l)}),e}},mounted(){this.fetchExam(this.examId)},methods:{...kt(ze,["fetchExam"]),formatTimeOnly(t){if(!t)return"";try{const e=new Date(t),a=e.getHours().toString().padStart(2,"0"),l=e.getMinutes().toString().padStart(2,"0");return`${a}:${l}`}catch{return""}},isPast(t){return t?new Date(t)t.$emit("click"))},{default:i(()=>[s(j,{class:"d-flex align-center py-2 px-3 bg-primary-lighten-5 text-subtitle-1 font-weight-bold"},{default:i(()=>{var m;return[r("span",Pi,g(((m=o.exam)==null?void 0:m.examName)||"加载中..."),1)]}),_:1}),s(V,{class:"flex-grow-1 pa-4 overflow-y-auto",style:he(a.contentStyle)},{default:i(()=>[o.loading?(c(),p("div",Li,[s(xt,{indeterminate:"",size:"24",color:"primary"})])):o.exam?(c(),p("div",Fi,[(c(!0),p(E,null,U(o.groupedExamInfos,(m,f)=>(c(),p("div",{key:f,class:"mb-3"},[r("div",Ri,[s(d,{time:m.date},null,8,["time"])]),(c(!0),p(E,null,U(m.infos,(h,k)=>(c(),p("div",{key:k,class:fe(["d-flex align-center justify-space-between py-1 border-b-sm",{"border-none":k===m.infos.length-1,"text-grey":o.isPast(h.end)}])},[r("div",Oi,g(h.name),1),r("div",Bi,g(o.formatTimeOnly(h.start))+" - "+g(o.formatTimeOnly(h.end)),1)],2))),128))]))),128))])):(c(),p("div",ji,"无法加载"))]),_:1},8,["style"])]),_:1})}const Lt=W($i,[["render",Hi],["__scopeId","data-v-33424f55"]]),Ki=["6IO4","5Lmz","6JCd6I6J","5rer","5aW4"],qi=Ki.map(t=>_t.decode(t)),ht=.75,Wi={name:"HitokotoCard",data(){return{enabled:!1,refreshInterval:60,kvConfig:{sources:["zhaoyu"],sensitiveWords:[]},sentence:"",author:"",origin:"",loading:!1,timer:null,unwatch:null,fontSize:28}},computed:{contentStyle(){return{"font-size":`${this.fontSize*ht}px`,"white-space":"pre-wrap","line-height":"1.6","text-align":"left"}},authorStyle(){return{"font-size":`${this.fontSize*ht*.6}px`,"text-align":"left"}}},async mounted(){this.loadLocalSettings(),await this.loadKvSettings(),this.fetchSentence(),this.startTimer(),this.unwatch=Xe(()=>{this.loadLocalSettings(),this.startTimer()})},beforeUnmount(){this.stopTimer(),this.unwatch&&this.unwatch()},methods:{loadLocalSettings(){this.enabled=Oe.getSetting("hitokoto.enabled"),this.refreshInterval=Oe.getSetting("hitokoto.refreshInterval"),this.fontSize=Oe.getSetting("font.size")},async loadKvSettings(){try{const t=await Z.loadData("sentence-info");let e=t;t&&t.data&&(e=t.data),e&&(this.kvConfig={sources:Array.isArray(e.sources)&&e.sources.length>0?e.sources:["zhaoyu"],sensitiveWords:e.sensitiveWords?e.sensitiveWords.split(/[,,]/).map(a=>a.trim()).filter(a=>a):[],jinrishiciToken:e.jinrishiciToken})}catch(t){console.error("Failed to load sentence-info",t)}},startTimer(){this.timer&&clearInterval(this.timer),this.refreshInterval>0&&(this.timer=setInterval(this.fetchSentence,this.refreshInterval*1e3))},stopTimer(){this.timer&&clearInterval(this.timer)},async fetchSentence(){if(!this.loading){this.loading=!0;try{const t=this.kvConfig.sources,e=t[Math.floor(Math.random()*t.length)];let a=null,l="",n="",o="";if(e==="hitokoto")a=(await Be.get("https://v1.hitokoto.cn/")).data,l=a.hitokoto,n=a.from_who,o=a.from;else if(e==="zhaoyu"){const d=await Be.get("https://hub.saintic.com/openservice/sentence/all.json");d.data.success&&(a=d.data.data,l=a.sentence||a.content||a.name,n=a.author,o=a.name||a.origin)}else if(e==="jinrishici")if(this.kvConfig.jinrishiciToken){const d=await Be.get("https://v2.jinrishici.com/one.json?client=npm-sdk/1.0&X-User-Token="+encodeURIComponent(this.kvConfig.jinrishiciToken),{});d.data.status==="success"&&(a=d.data.data,l=a.content,n=a.origin.author,o=a.origin.title)}else return console.warn("Jinrishici token missing. Please enable it in settings to generate a token."),this.loading=!1,this.fetchSentence();if(l){if([...qi,...this.kvConfig.sensitiveWords].some(f=>f&&l.includes(f)))return this.loading=!1,this.fetchSentence();this.sentence=l,this.author=n||"",this.origin=o||"未知"}}catch(t){console.error("Failed to fetch sentence",t),this.sentence="获取失败",this.author="",this.origin=""}finally{this.loading=!1}}}}},Gi={key:0,class:"mr-2"},Qi={key:1};function Ji(t,e,a,l,n,o){return c(),b(_,{class:"hitokoto-card",elevation:"2",border:"",rounded:"xl",loading:n.loading,height:"100%",onClick:o.fetchSentence},{default:i(()=>[s(V,{class:"pa-6 d-flex flex-column justify-center",style:{height:"100%"}},{default:i(()=>[r("div",{class:"font-weight-medium mb-4 serif-font",style:he(o.contentStyle)},g(n.sentence),5),r("div",{class:"text-medium-emphasis serif-font",style:he(o.authorStyle)},[n.author?(c(),p("span",Gi,g(n.author),1)):w("",!0),n.origin?(c(),p("span",Qi,"《"+g(n.origin)+"》",1)):w("",!0)],4)]),_:1})]),_:1},8,["loading","onClick"])}const Ft=W(Wi,[["render",Ji],["__scopeId","data-v-de957b7d"]]),Yi={name:"HomeworkGrid",computed:{settings(){return settings}},components:{HitokotoCard:Ft,ConciseExamCard:Lt},props:{sortedItems:{type:Array,required:!0},unusedSubjects:{type:Array,required:!0},emptySubjectDisplay:{type:String,default:"button"},isMobile:{type:Boolean,default:!1},isEditingDisabled:{type:Boolean,default:!1},contentStyle:{type:Object,default:()=>({})},highlightedCards:{type:Object,default:()=>({})}},emits:["open-dialog","open-attendance","disabled-click"],data(){return{isReadOnlyToken:!1}},async mounted(){this.resizeObserver=new ResizeObserver(()=>{this.resizeAllGridItems()}),this.$refs.gridContainer&&this.resizeObserver.observe(this.$refs.gridContainer),this.$nextTick(()=>{this.resizeAllGridItems(),this.$refs.items&&this.$refs.items.forEach(t=>{t.firstElementChild&&this.resizeObserver.observe(t.firstElementChild)})}),await this.checkReadOnlyStatus()},updated(){this.$nextTick(()=>{this.resizeAllGridItems(),this.$refs.items&&this.$refs.items.forEach(t=>{t.firstElementChild&&this.resizeObserver.observe(t.firstElementChild)})})},beforeUnmount(){this.resizeObserver&&this.resizeObserver.disconnect()},methods:{getSetting:S,async checkReadOnlyStatus(){try{let t=null;if(this.$parent&&this.$parent.$refs&&this.$parent.$refs.studentNameManager?t=this.$parent.$refs.studentNameManager:this.$root&&this.$root.$refs&&this.$root.$refs.studentNameManager&&(t=this.$root.$refs.studentNameManager),t&&typeof t.isReadOnly<"u")this.isReadOnlyToken=t.isReadOnly;else{const{getSetting:e}=await nt(async()=>{const{getSetting:l}=await import("./index-BXl8SUNP.js").then(n=>n.cL);return{getSetting:l}},__vite__mapDeps([0,1]),import.meta.url),a=e("server.kvToken");if(a){const{default:l}=await nt(async()=>{const{default:o}=await import("./dataProvider-Cg4CSn_f.js").then(d=>d.e);return{default:o}},__vite__mapDeps([2,0,1,3]),import.meta.url),n=e("server.domain");if(n)try{const o=await l.get(`${n}/kv/_token`,{headers:{Authorization:`Bearer ${a}`}});o.data&&typeof o.data.isReadOnly<"u"&&(this.isReadOnlyToken=o.data.isReadOnly)}catch(o){console.error("获取Token信息失败:",o)}}}}catch(t){console.error("检查只读状态失败:",t)}},resizeGridItem(t){const e=this.$refs.gridContainer;if(!e)return;const a=parseInt(window.getComputedStyle(e).getPropertyValue("grid-auto-rows")),l=parseInt(window.getComputedStyle(e).getPropertyValue("gap")),n=t.firstElementChild;if(!n)return;const o=n.getBoundingClientRect().height,d=Math.ceil((o+l)/(a+l));t.style.gridRowEnd=`span ${d}`},resizeAllGridItems(){const t=this.$refs.items;t&&t.forEach(e=>this.resizeGridItem(e))},handleCardClick(t,e){if(this.isEditingDisabled){this.$emit("disabled-click");return}t==="attendance"?this.$emit("open-attendance"):t==="dialog"&&this.$emit("open-dialog",e)},splitPoint(t){return t.split(` `).filter(e=>e.trim())},handleMouseMove(t){const e=t.currentTarget,a=e.getBoundingClientRect(),l=(t.clientX-a.left)/a.width*100,n=(t.clientY-a.top)/a.height*100;e.style.setProperty("--x",`${l}%`),e.style.setProperty("--y",`${n}%`)},handleTouchMove(t){if(t.touches.length===1){const e=t.touches[0],a=t.currentTarget,l=a.getBoundingClientRect(),n=(e.clientX-l.left)/l.width*100,o=(e.clientY-l.top)/l.height*100;a.style.setProperty("--x",`${n}%`),a.style.setProperty("--y",`${o}%`)}}}},Xi={ref:"gridContainer",class:"grid-masonry"},Zi=["data-key"],ea={key:0,style:{height:"100%"}},ta={key:1,style:{height:"100%"}},sa={class:"d-flex justify-space-between align-center mb-2"},na={class:"text-h6"},ia={key:0,class:"mb-2"},aa={class:"text-error text-caption mb-1"},oa={class:"d-flex flex-wrap",style:{gap:"4px"}},la={key:1,class:"mb-2"},ra={class:"text-warning text-caption mb-1"},da={class:"d-flex flex-wrap",style:{gap:"4px"}},ua={key:2,class:"mb-2"},ca={class:"text-grey text-caption mb-1"},ma={class:"d-flex flex-wrap",style:{gap:"4px"}},fa={key:3,class:"text-success text-center mt-2"},ha={class:"empty-subjects mt-4"},ga={key:0,class:"d-flex flex-wrap justify-center"},pa={key:2,class:"empty-subjects-grid"};function va(t,e,a,l,n,o){const d=Ft,m=Lt;return c(),p(E,null,[r("div",Xi,[s(Ke,{name:"grid"},{default:i(()=>[(c(!0),p(E,null,U(a.sortedItems,f=>(c(),p("div",{key:f.key,ref_for:!0,ref:"items","data-key":f.key,style:he({order:f.order}),class:"grid-item"},[f.type==="hitokoto"?(c(),p("div",ea,[s(d)])):f.type==="exam"?(c(),p("div",ta,[s(m,{"exam-id":f.data.examId,"content-style":a.contentStyle,onClick:h=>t.$emit("open-exam-detail",f.data.examId)},null,8,["exam-id","content-style","onClick"])])):f.type==="attendance"?(c(),b(_,{key:2,class:fe([{"glow-highlight":a.highlightedCards[f.key],"cursor-not-allowed":a.isEditingDisabled,"cursor-pointer":!a.isEditingDisabled},"glow-track"]),border:"",height:"100%",onClick:e[0]||(e[0]=h=>o.handleCardClick("attendance",null)),onMousemove:o.handleMouseMove,onTouchmove:o.handleTouchMove},{default:i(()=>[s(j,{class:"d-flex align-center"},{default:i(()=>[s(D,{class:"mr-2",color:"primary",icon:"mdi-account-group"}),e[1]||(e[1]=u(" 出勤统计 ",-1))]),_:1}),s(V,null,{default:i(()=>[r("div",sa,[e[2]||(e[2]=r("span",null,"应到/实到",-1)),r("span",na,g(f.data.total-f.data.exclude.length)+"/"+g(f.data.total-f.data.absent.length-!o.getSetting("display.lateStudentsArePresent")*f.data.late.length-f.data.exclude.length),1)]),s(ve,{class:"mb-2"}),f.data.absent.length>0?(c(),p("div",ia,[r("div",aa,"请假 ("+g(f.data.absent.length)+")",1),r("div",oa,[(c(!0),p(E,null,U(f.data.absent,h=>(c(),b(O,{key:h,color:"error",size:"x-small",variant:"flat"},{default:i(()=>[u(g(h),1)]),_:2},1024))),128))])])):w("",!0),f.data.late.length>0?(c(),p("div",la,[r("div",ra,"迟到 ("+g(f.data.late.length)+")",1),r("div",da,[(c(!0),p(E,null,U(f.data.late,h=>(c(),b(O,{key:h,color:"warning",size:"x-small",variant:"flat"},{default:i(()=>[u(g(h),1)]),_:2},1024))),128))])])):w("",!0),f.data.exclude.length>0?(c(),p("div",ua,[r("div",ca,"不参与 ("+g(f.data.exclude.length)+")",1),r("div",ma,[(c(!0),p(E,null,U(f.data.exclude,h=>(c(),b(O,{key:h,color:"grey",size:"x-small",variant:"flat"},{default:i(()=>[u(g(h),1)]),_:2},1024))),128))])])):w("",!0),f.data.absent.length===0&&f.data.late.length===0&&f.data.exclude.length===0?(c(),p("div",fa," 全勤 ")):w("",!0)]),_:2},1024)]),_:2},1032,["class","onMousemove","onTouchmove"])):f.type==="custom"?(c(),b(_,{key:3,class:fe([{"glow-highlight":a.highlightedCards[f.key],"cursor-not-allowed":a.isEditingDisabled,"cursor-pointer":!a.isEditingDisabled},"glow-track"]),border:"",height:"100%",onClick:h=>o.handleCardClick("dialog",f.key),onMousemove:o.handleMouseMove,onTouchmove:o.handleTouchMove},{default:i(()=>[s(j,{class:"text-primary"},{default:i(()=>[s(D,{class:"mr-2",icon:"mdi-card-text-outline",size:"small"}),u(" "+g(f.name),1)]),_:2},1024),s(V,{style:he(a.contentStyle)},{default:i(()=>[u(g(f.content),1)]),_:2},1032,["style"])]),_:2},1032,["class","onClick","onMousemove","onTouchmove"])):(c(),b(_,{key:4,class:fe([{"glow-highlight":a.highlightedCards[f.key],"cursor-not-allowed":a.isEditingDisabled,"cursor-pointer":!a.isEditingDisabled},"glow-track"]),border:"",height:"100%",onClick:h=>o.handleCardClick("dialog",f.key),onMousemove:o.handleMouseMove,onTouchmove:o.handleTouchMove},{default:i(()=>[s(j,null,{default:i(()=>[u(g(f.name),1)]),_:2},1024),s(V,{style:he(a.contentStyle)},{default:i(()=>[s(we,null,{default:i(()=>[(c(!0),p(E,null,U(o.splitPoint(f.content),h=>(c(),b(Se,{key:h},{default:i(()=>[u(g(h),1)]),_:2},1024))),128))]),_:2},1024)]),_:2},1032,["style"])]),_:2},1032,["class","onClick","onMousemove","onTouchmove"]))],12,Zi))),128))]),_:1})],512),r("div",ha,[a.isMobile?(c(),p("div",ga,[(c(!0),p(E,null,U(a.unusedSubjects,f=>(c(),b(O,{key:f.name,class:"ma-1",color:"primary",variant:"tonal",onClick:h=>o.handleCardClick("dialog",f.name)},{default:i(()=>[s(D,{start:"",size:"small"},{default:i(()=>[u(g(n.isReadOnlyToken?"mdi-cancel":"mdi-plus"),1)]),_:1}),u(" "+g(f.name),1)]),_:2},1032,["onClick"]))),128))])):a.emptySubjectDisplay==="button"?(c(),b(Je,{key:1,divided:"",variant:"tonal"},{default:i(()=>[(c(!0),p(E,null,U(a.unusedSubjects,f=>(c(),b(y,{key:f.name,onClick:h=>o.handleCardClick("dialog",f.name)},{default:i(()=>[s(D,{start:""},{default:i(()=>[u(g(n.isReadOnlyToken?"mdi-cancel":"mdi-plus"),1)]),_:1}),u(" "+g(f.name),1)]),_:2},1032,["onClick"]))),128))]),_:1})):(c(),p("div",pa,[s(Ke,{name:"v-list"},{default:i(()=>[(c(!0),p(E,null,U(a.unusedSubjects,f=>(c(),b(_,{key:f.name,border:"",class:"empty-subject-card",onClick:h=>o.handleCardClick("dialog",f.name)},{default:i(()=>[s(j,{class:"text-subtitle-1"},{default:i(()=>[u(g(f.name),1)]),_:2},1024),s(V,{class:"text-center"},{default:i(()=>[n.isReadOnlyToken?(c(),p(E,{key:0},[s(D,{color:"grey",size:"small"},{default:i(()=>[...e[3]||(e[3]=[u(" mdi-cancel ",-1)])]),_:1}),e[4]||(e[4]=r("div",{class:"text-caption text-grey"}," 当日无作业 ",-1))],64)):(c(),p(E,{key:1},[s(D,{color:"grey",size:"small"},{default:i(()=>[...e[5]||(e[5]=[u(" mdi-plus ",-1)])]),_:1}),e[6]||(e[6]=r("div",{class:"text-caption text-grey"}," 点击添加作业 ",-1))],64))]),_:1})]),_:2},1032,["onClick"]))),128))]),_:1})]))])],64)}const Rt=W(Yi,[["render",va],["__scopeId","data-v-97399635"]]),ya={key:0,class:"mt-2 text-caption text-medium-emphasis"},ka={class:"mt-2 mb-4"},ba={class:"d-flex flex-wrap gap-2"},xa={key:0,class:"ms-1 text-error"},wa={__name:"StudentNameManager",emits:["token-info-updated"],setup(t,{expose:e,emit:a}){const l=a,n=$(!1),o=$(""),d=$([]),m=$(""),f=$(!1),h=$(""),k=$(null),I=$([]),F=$(""),H=$(""),N=$({name:"",isHeadTeacher:!1,subjects:[]}),K=G(()=>{var T;return((T=k.value)==null?void 0:T.deviceType)==="student"}),Q=G(()=>{var T;return((T=k.value)==null?void 0:T.deviceType)==="teacher"}),ge=G(()=>{var T;return((T=k.value)==null?void 0:T.isReadOnly)===!0}),pe=G(()=>{var T;return((T=k.value)==null?void 0:T.note)||"设置名称"}),te=G(()=>!!se.value),se=G(()=>S("server.kvToken")),C=G(()=>S("server.provider")),z=G(()=>C.value==="kv-server"||C.value==="classworkscloud"),x=G(()=>K.value?"设置学生姓名":Q.value?"设置教师姓名":"设置姓名"),A=G(()=>I.value),R=async()=>{var T;if(!(!z.value||!se.value))try{const M=S("server.domain");if(!M)return;const B=await me.get(`${M}/kv/_token`,{headers:{Authorization:`Bearer ${se.value}`}});if(k.value=B.data,k.value.deviceType==="student"){m.value=k.value.note||"";const P=(await me.get(`${M}/kv/classworks-list-main`,{headers:{Authorization:`Bearer ${se.value}`}})).data.value||[];if(d.value=Array.isArray(P)?P:[],d.value.length>0){const q=k.value.note||"",ye=d.value.some(ke=>ke.name===q);(!q||!ye)&&(n.value=!0,o.value="")}return}if(k.value.deviceType==="teacher"){H.value=k.value.note||"";try{const P=(await me.get(`${M}/kv/classworks-list-teacher`,{headers:{Authorization:`Bearer ${se.value}`}})).data.value||[];I.value=Array.isArray(P)?P:[]}catch(Y){((T=Y==null?void 0:Y.response)==null?void 0:T.status)===404?(console.log("教师列表不存在,初始化为空"),I.value=[]):(console.error("加载教师列表失败:",Y),I.value=[])}if(I.value.length>0){const Y=k.value.note||"",P=I.value.some(q=>q.name===Y);(!Y||!P)&&(n.value=!0,F.value="")}return}}catch(M){console.error("检查学生姓名状态失败:",M)}},de=async()=>{var T,M,B,Y;if(!(!o.value||f.value)){h.value="",f.value=!0;try{const P=S("server.domain"),q=se.value;(await me.post(`${P}/apps/tokens/${q}/set-student-name`,{name:o.value})).data.success&&(m.value=o.value,n.value=!1,await R(),l("token-info-updated"))}catch(P){const q=(T=P==null?void 0:P.response)==null?void 0:T.status;q===400?h.value="该名称不在学生列表中,请选择正确的姓名":q===403?h.value="只有学生类型的 Token 可以设置姓名":q===404?h.value="设备未设置学生列表或 Token 不存在":h.value=((Y=(B=(M=P==null?void 0:P.response)==null?void 0:M.data)==null?void 0:B.error)==null?void 0:Y.message)||(P==null?void 0:P.message)||"设置失败,请稍后重试"}finally{f.value=!1}}},le=async()=>{var T,M,B,Y,P;if(!(!N.value.name||f.value)){h.value="",f.value=!0;try{const q=S("server.domain"),ye=se.value,ke={name:N.value.name.trim(),isHeadTeacher:!!N.value.isHeadTeacher,subjects:Array.isArray(N.value.subjects)?N.value.subjects.filter(Te=>Te&&String(Te).trim()).map(Te=>String(Te).trim()):[]},et=I.value.findIndex(Te=>Te.name===ke.name);et>=0?I.value[et]=ke:I.value.push(ke);const De=await Z.saveData("classworks-list-teacher",I.value);if((De==null?void 0:De.success)===!1)throw new Error(((T=De==null?void 0:De.error)==null?void 0:T.message)||"保存列表失败");(await me.post(`${q}/apps/tokens/${ye}/set-teacher-name`,{name:ke.name})).data.success&&(H.value=ke.name,n.value=!1,await R(),l("token-info-updated"))}catch(q){const ye=(M=q==null?void 0:q.response)==null?void 0:M.status;ye===400?h.value="该名称不在教师列表中,请选择正确的姓名":ye===403?h.value="只有教师类型的 Token 可以设置姓名":ye===404?h.value="设备未设置教师列表或 Token 不存在":h.value=((P=(Y=(B=q==null?void 0:q.response)==null?void 0:B.data)==null?void 0:Y.error)==null?void 0:P.message)||(q==null?void 0:q.message)||"设置失败,请稍后重试"}finally{f.value=!1}}},ie=T=>{N.value.name=T.name,N.value.isHeadTeacher=T.isHeadTeacher||!1,N.value.subjects=Array.isArray(T.subjects)?[...T.subjects]:[]},v=()=>{n.value=!1},ae=async()=>{if(console.log("StudentNameManager.openDialog called"),console.log("isStudentToken:",K.value),console.log("studentList.length:",d.value.length),console.log("currentStudentName:",m.value),K.value){const T=await Z.loadData("classworks-list-main");d.value=Array.isArray(T==null?void 0:T.value)?T.value:Array.isArray(T)?T:[],d.value.length===0?(console.log("Student list is empty, trying to load..."),await R(),o.value=m.value,n.value=!0):(o.value=m.value,n.value=!0);return}if(Q.value){try{const T=await Z.loadData("classworks-list-teacher");I.value=Array.isArray(T==null?void 0:T.value)?T.value:Array.isArray(T)?T:[]}catch{console.log("教师列表不存在或加载失败,允许手动创建"),I.value=[]}if(N.value={name:H.value,isHeadTeacher:!1,subjects:[]},H.value){const T=I.value.find(M=>M.name===H.value);T&&(N.value.isHeadTeacher=T.isHeadTeacher||!1,N.value.subjects=Array.isArray(T.subjects)?[...T.subjects]:[])}n.value=!0,console.log("Dialog opened (teacher), showDialog:",n.value);return}console.log("Not a student/teacher token, cannot open dialog")};return Le(se,()=>{R()}),Xe(()=>{R()}),Le(k,()=>{l("token-info-updated")},{deep:!0}),Ye(()=>{R()}),e({checkStudentNameStatus:R,openDialog:ae,currentStudentName:m,currentTeacherName:H,isStudentToken:K,isTeacherToken:Q,isReadOnly:ge,displayName:pe,hasToken:te,tokenInfo:k}),(T,M)=>(c(),p(E,null,[s(J,{modelValue:n.value,"onUpdate:modelValue":M[4]||(M[4]=B=>n.value=B),"max-width":"720",persistent:""},{default:i(()=>[s(_,null,{default:i(()=>[s(j,null,{default:i(()=>[u(g(x.value),1)]),_:1}),s(V,null,{default:i(()=>[K.value?(c(),p(E,{key:0},[M[5]||(M[5]=r("div",{class:"mb-2"}," 请从列表中选择您的姓名: ",-1)),s(Ht,{modelValue:o.value,"onUpdate:modelValue":M[0]||(M[0]=B=>o.value=B),items:d.value,clearable:"","hide-details":"","item-title":"name","item-value":"name",label:"学生姓名",placeholder:"选择您的姓名"},null,8,["modelValue","items"]),d.value.length>0?(c(),p("div",ya," 共 "+g(d.value.length)+" 位学生 ",1)):w("",!0)],64)):Q.value?(c(),p(E,{key:1},[s(Ce,{modelValue:N.value.name,"onUpdate:modelValue":M[1]||(M[1]=B=>N.value.name=B),label:"教师姓名",placeholder:"输入姓名或从下方建议中选择",clearable:""},null,8,["modelValue"]),r("div",ka,[r("div",ba,[(c(!0),p(E,null,U(A.value,B=>(c(),b(O,{key:B.name,size:"small",onClick:Y=>ie(B)},{default:i(()=>[u(g(B.name)+" ",1),B.isHeadTeacher?(c(),p("span",xa," 👨‍🏫 ")):w("",!0)]),_:2},1032,["onClick"]))),128))])]),s(Ge,{modelValue:N.value.isHeadTeacher,"onUpdate:modelValue":M[2]||(M[2]=B=>N.value.isHeadTeacher=B),inset:"",color:"primary",label:N.value.isHeadTeacher?"班主任":"非班主任"},null,8,["modelValue","label"]),s(is,{modelValue:N.value.subjects,"onUpdate:modelValue":M[3]||(M[3]=B=>N.value.subjects=B),multiple:"",chips:"",clearable:"",label:"任教科目",hint:"可直接输入并回车添加多个科目","persistent-hint":""},null,8,["modelValue"])],64)):w("",!0),h.value?(c(),b(_e,{key:2,class:"mt-3",type:"error",variant:"tonal"},{default:i(()=>[u(g(h.value),1)]),_:1})):w("",!0)]),_:1}),s(X,null,{default:i(()=>[s(y,{variant:"text",onClick:v},{default:i(()=>[...M[6]||(M[6]=[u(" 稍后设置 ",-1)])]),_:1}),s(L),K.value?(c(),b(y,{key:0,disabled:!o.value||f.value,loading:f.value,color:"primary",onClick:de},{default:i(()=>[...M[7]||(M[7]=[u(" 确认 ",-1)])]),_:1},8,["disabled","loading"])):Q.value?(c(),b(y,{key:1,disabled:!N.value.name||f.value,loading:f.value,color:"primary",onClick:le},{default:i(()=>[...M[8]||(M[8]=[u(" 确认 ",-1)])]),_:1},8,["disabled","loading"])):w("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue"]),Yt(T.$slots,"header-display",{isStudent:K.value,openDialog:ae,studentName:m.value,teacherName:H.value},void 0)],64))}},Ot=W(wa,[["__scopeId","data-v-cebbe710"]]),Sa={class:"text-center mb-6"},Ca={class:"text-body-2"},_a={class:"form-section"},Da={__name:"DeviceAuthDialog",props:{showCancel:{type:Boolean,default:!1},preconfig:{type:Object,default:null}},emits:["success","cancel"],setup(t,{expose:e,emit:a}){const l=t,n=a,o=$({namespace:"",password:""}),d=$(!1),m=$("");Le(()=>l.preconfig,h=>{h&&(console.log("应用预配置数据:",h),o.value.namespace=h.namespace||"",o.value.password=h.password||"",h.autoExecute&&h.namespace?(console.log("检测到自动执行标志且有命名空间,自动执行认证"),setTimeout(()=>{f()},300)):h.namespace&&console.log("预配置数据已填入,等待手动认证"))},{immediate:!0,deep:!0});const f=async()=>{var h,k,I,F,H;if(!(!o.value.namespace||d.value)){m.value="",d.value=!0;try{const N=S("server.domain");if(!N)throw new Error("未配置服务器域名");const K=await me.post(`${N}/apps/auth/token`,{namespace:o.value.namespace,password:o.value.password||void 0,appId:"d158067f53627d2b98babe8bffd2fd7d"});if(!K.data.success)throw new Error("设备验证失败");const Q=K.data;re("server.kvToken",Q.token),(h=Q.device)!=null&&h.uuid&&re("device.uuid",Q.device.uuid),n("success",Q)}catch(N){const K=(k=N==null?void 0:N.response)==null?void 0:k.status;K===401||K===403?m.value="密码错误或无权限访问":K===404?m.value="设备不存在,请检查 namespace 是否正确":m.value=((H=(F=(I=N==null?void 0:N.response)==null?void 0:I.data)==null?void 0:F.error)==null?void 0:H.message)||(N==null?void 0:N.message)||"认证失败,请稍后重试"}finally{d.value=!1}}};return e({reset:()=>{o.value={namespace:"",password:""},m.value=""}}),(h,k)=>(c(),b(_,{class:"auth-card"},{default:i(()=>[s(V,{class:"pa-8"},{default:i(()=>[r("div",Sa,[s(D,{class:"mb-4",color:"success",size:"80"},{default:i(()=>[...k[4]||(k[4]=[u(" mdi-account-key ",-1)])]),_:1}),k[5]||(k[5]=r("h2",{class:"text-h4 mb-3"}," 设备认证 ",-1)),k[6]||(k[6]=r("p",{class:"text-body-1 text-medium-emphasis"}," 输入你在 Classworks KV 获取的认证信息 ",-1))]),s(_,{class:"pa-4 mb-6",color:"info",variant:"tonal"},{default:i(()=>[r("div",Ca,[s(D,{class:"mr-2",size:"20"},{default:i(()=>[...k[7]||(k[7]=[u(" mdi-information ",-1)])]),_:1}),k[8]||(k[8]=u(" 对于已有UUID的用户,您应当使用UUID与您的密码登录。 ",-1))])]),_:1}),r("div",_a,[s(Ce,{modelValue:o.value.namespace,"onUpdate:modelValue":k[0]||(k[0]=I=>o.value.namespace=I),class:"mb-4","hide-details":"auto",label:"命名空间","prepend-inner-icon":"mdi-identifier",variant:"outlined"},null,8,["modelValue"]),s(Ce,{modelValue:o.value.password,"onUpdate:modelValue":k[1]||(k[1]=I=>o.value.password=I),label:"认证码","prepend-inner-icon":"mdi-lock-outline",type:"text",variant:"outlined"},null,8,["modelValue"]),m.value?(c(),b(_e,{key:0,class:"mt-4",closable:"",type:"error",variant:"tonal","onClick:close":k[2]||(k[2]=I=>m.value="")},{default:i(()=>[u(g(m.value),1)]),_:1})):w("",!0)])]),_:1}),s(X,{class:"pa-6 pt-0"},{default:i(()=>[t.showCancel?(c(),b(y,{key:0,size:"large",variant:"text",onClick:k[3]||(k[3]=I=>h.$emit("cancel"))},{default:i(()=>[...k[9]||(k[9]=[u(" 取消 ",-1)])]),_:1})):w("",!0),s(L),s(y,{disabled:!o.value.namespace||d.value,loading:d.value,class:"px-8",color:"primary",size:"x-large",variant:"elevated",onClick:f},{default:i(()=>[s(D,{size:"24",start:""},{default:i(()=>[...k[10]||(k[10]=[u(" mdi-login ",-1)])]),_:1}),k[11]||(k[11]=r("span",{class:"text-h6"},"认证并登录",-1))]),_:1},8,["disabled","loading"])]),_:1})]),_:1}))}},Ta=W(Da,[["__scopeId","data-v-9e8d02e4"]]),Ia={__name:"TokenInputDialog",props:{showCancel:{type:Boolean,default:!1}},emits:["success","cancel"],setup(t,{expose:e,emit:a}){const l=a,n=$(""),o=$(!1),d=$(""),m=async()=>{var f,h,k;if(!(!n.value||o.value)){d.value="",o.value=!0;try{const I=S("server.domain");if(!I)throw new Error("未配置服务器域名");await me.get(`${I}/kv/_info`,{headers:{Accept:"application/json","x-app-token":n.value}}),re("server.kvToken",n.value),l("success")}catch(I){const F=(f=I==null?void 0:I.response)==null?void 0:f.status;F===401||F===403?d.value="Token 无效或无权限,请确认后重试":F===404?d.value="命名空间不存在或服务器未就绪":d.value=((k=(h=I==null?void 0:I.response)==null?void 0:h.data)==null?void 0:k.message)||(I==null?void 0:I.message)||"验证失败,请稍后重试"}finally{o.value=!1}}};return e({reset:()=>{n.value="",d.value=""}}),(f,h)=>(c(),b(_,null,{default:i(()=>[s(j,null,{default:i(()=>[...h[2]||(h[2]=[u("输入授权 Token",-1)])]),_:1}),s(V,null,{default:i(()=>[s(Ce,{modelValue:n.value,"onUpdate:modelValue":h[0]||(h[0]=k=>n.value=k),clearable:"",density:"comfortable","hide-details":"auto",label:"KV 授权 Token",placeholder:"粘贴从授权页面获取的 Token",variant:"outlined"},null,8,["modelValue"]),d.value?(c(),b(_e,{key:0,class:"mt-3",type:"error",variant:"tonal"},{default:i(()=>[u(g(d.value),1)]),_:1})):w("",!0)]),_:1}),s(X,null,{default:i(()=>[s(L),t.showCancel?(c(),b(y,{key:0,variant:"text",onClick:h[1]||(h[1]=k=>f.$emit("cancel"))},{default:i(()=>[...h[3]||(h[3]=[u(" 取消 ",-1)])]),_:1})):w("",!0),s(y,{disabled:!n.value||o.value,loading:o.value,color:"primary",onClick:m},{default:i(()=>[...h[4]||(h[4]=[u(" 保存 Token ",-1)])]),_:1},8,["disabled","loading"])]),_:1})]),_:1}))}},Ea={__name:"AlternativeCodeDialog",props:{showCancel:{type:Boolean,default:!1}},emits:["submit","cancel"],setup(t,{expose:e,emit:a}){const l=a,n=$(""),o=()=>{n.value&&l("submit",n.value)};return e({reset:()=>{n.value=""}}),(d,m)=>(c(),b(_,null,{default:i(()=>[s(j,null,{default:i(()=>[...m[2]||(m[2]=[u("输入替代代码",-1)])]),_:1}),s(V,null,{default:i(()=>[s(Ue,{modelValue:n.value,"onUpdate:modelValue":m[0]||(m[0]=f=>n.value=f),density:"comfortable","hide-details":"auto",label:"替代代码",placeholder:"请输入替代代码",rows:"5",variant:"outlined"},null,8,["modelValue"]),s(_e,{class:"mt-3",type:"info",variant:"tonal"},{default:i(()=>[...m[3]||(m[3]=[u(" 替代代码功能暂未实现,敬请期待 ",-1)])]),_:1})]),_:1}),s(X,null,{default:i(()=>[s(L),t.showCancel?(c(),b(y,{key:0,variant:"text",onClick:m[1]||(m[1]=f=>d.$emit("cancel"))},{default:i(()=>[...m[4]||(m[4]=[u(" 取消 ",-1)])]),_:1})):w("",!0),s(y,{disabled:!n.value,color:"primary",onClick:o},{default:i(()=>[...m[5]||(m[5]=[u(" 提交 ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1}))}},ee=[];for(let t=0;t<256;++t)ee.push((t+256).toString(16).slice(1));function Na(t,e=0){return(ee[t[e+0]]+ee[t[e+1]]+ee[t[e+2]]+ee[t[e+3]]+"-"+ee[t[e+4]]+ee[t[e+5]]+"-"+ee[t[e+6]]+ee[t[e+7]]+"-"+ee[t[e+8]]+ee[t[e+9]]+"-"+ee[t[e+10]]+ee[t[e+11]]+ee[t[e+12]]+ee[t[e+13]]+ee[t[e+14]]+ee[t[e+15]]).toLowerCase()}let je;const Va=new Uint8Array(16);function Aa(){if(!je){if(typeof crypto>"u"||!crypto.getRandomValues)throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");je=crypto.getRandomValues.bind(crypto)}return je(Va)}const Ua=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),gt={randomUUID:Ua};function za(t,e,a){var n;t=t||{};const l=t.random??((n=t.rng)==null?void 0:n.call(t))??Aa();if(l.length<16)throw new Error("Random bytes length must be >= 16");return l[6]=l[6]&15|64,l[8]=l[8]&63|128,Na(l)}function Ma(t,e,a){return gt.randomUUID&&!t?gt.randomUUID():za(t)}const $a={class:"step-content"},Pa={class:"text-center mb-6"},La={class:"step-content"},Fa={class:"relationship-diagram"},Ra={class:"diagram-item"},Oa={class:"text-center"},Ba={class:"diagram-description mt-3"},ja={class:"diagram-connector"},Ha={class:"diagram-item"},Ka={class:"text-center"},qa={class:"diagram-description mt-3"},Wa={class:"step-content"},Ga={class:"button-group"},Qa={class:"d-flex flex-column align-center py-2"},Ja={class:"d-flex flex-column align-center py-2"},Ya={class:"step-content"},Xa={class:"text-center mb-6"},Za={class:"step-content"},eo={class:"text-center mb-6"},to={class:"d-flex flex-column flex-sm-row align-center"},so={class:"flex-grow-1"},no={class:"text-h6 font-weight-bold"},io={class:"text-h5 mb-6"},ao={class:"text-subtitle-2"},oo={class:"d-flex align-center"},lo={class:"d-flex align-center"},ro={class:"step-content"},uo={class:"text-center mb-6"},co={class:"d-flex align-center mb-3"},mo={class:"text-h6 font-weight-medium"},fo={key:0,class:"text-body-2 mb-2"},ho={class:"mb-2"},go={class:"device-code"},po={key:1,class:"text-body-2 text-error"},vo={class:"log-box"},yo={key:0,class:"text-caption text-medium-emphasis"},ko={class:"d-flex flex-wrap gap-2 mt-4"},Me=5,bo={__name:"FirstTimeGuide",emits:["close","success"],setup(t,{emit:e}){const a=e,l=S("server.authDomain"),n=$(1),o=$(""),d=$("idle"),m=$(""),f=$(null),h=$(null),k=$([]),I=$({1:!1,2:!1,3:!1,4:!1}),F=()=>{n.value{n.value>1&&n.value--},N=ie=>{o.value=ie,F()},K=()=>{a("close")},Q=()=>{window.open(l,"_blank")},ge=()=>{n.value=5},pe=G(()=>Object.values(I.value).filter(Boolean).length/4*100),te=G(()=>d.value==="success"?"success":d.value==="error"?"error":"primary"),se=G(()=>d.value==="success"?"mdi-check-circle":d.value==="error"?"mdi-alert-circle":d.value==="registering"?"mdi-progress-clock":"mdi-rocket-launch"),C=G(()=>d.value==="success"?"完成!设备已创建":d.value==="error"?"创建失败":d.value==="registering"?"正在执行…":"准备开始"),z=ie=>{const v=new Date,ae=String(v.getHours()).padStart(2,"0"),T=String(v.getMinutes()).padStart(2,"0"),M=String(v.getSeconds()).padStart(2,"0");k.value.push({time:`${ae}:${T}:${M}`,message:ie})},x=()=>"Classworks",A=async()=>{var ie,v,ae;if(d.value!=="registering"){d.value="registering",m.value="",k.value=[],I.value={1:!1,2:!1,3:!1,4:!1};try{z("正在生成设备信息…");const T=Ma(),M=x(),B=S("server.domain");I.value[1]=!0,z("向服务器注册设备…");const Y=await me.post(`${B}/devices`,{uuid:T,deviceName:M});I.value[2]=!0,f.value={uuid:T,deviceName:M,createdAt:new Date().toISOString(),registered:!0},localStorage.setItem("Classworks_progressive_device",JSON.stringify(f.value)),z("获取访问令牌…");try{const P=await me.post(`${B}/apps/auth/token`,{namespace:T,password:"",appId:"d158067f53627d2b98babe8bffd2fd7d"});P.data&&P.data.token?(h.value=P.data,re("server.kvToken",P.data.token),(ie=P.data.device)!=null&&ie.uuid&&re("device.uuid",P.data.device.uuid),z("已获取 Token 并写入配置")):z("未返回 Token,您可以稍后在授权页完成配置")}catch(P){console.warn("自动获取 Token 失败:",P),z("自动获取 Token 失败,可在授权页手动完成")}I.value[3]=!0,z("完成!您可以应用令牌或前往授权页面继续配置"),I.value[4]=!0,d.value="success"}catch(T){console.error("设备注册失败:",T),m.value=((ae=(v=T.response)==null?void 0:v.data)==null?void 0:ae.message)||T.message||"网络连接失败",z("失败:"+m.value),d.value="error"}}},R=()=>{d.value="idle",m.value="",k.value=[],I.value={1:!1,2:!1,3:!1,4:!1}},de=()=>{const ie=f.value;if(!(ie!=null&&ie.uuid))return;const ae=`${S("server.authDomain")}/?uuid=${encodeURIComponent(ie.uuid)}&tolinktoaccount=true`;window.open(ae,"_blank")},le=()=>{h.value&&a("success",h.value),a("close")};return(ie,v)=>(c(),b(_,{class:"guide-card"},{default:i(()=>[s(it,{"model-value":n.value/Me*100,color:"primary",height:"6"},null,8,["model-value"]),s(V,{class:"pa-8"},{default:i(()=>[oe(r("div",$a,[r("div",Pa,[s(D,{class:"mb-4",color:"primary",size:"80"},{default:i(()=>[...v[2]||(v[2]=[u(" mdi-hand-wave ",-1)])]),_:1}),v[3]||(v[3]=r("h2",{class:"text-h4 mb-3"}," 欢迎使用 Classworks ",-1)),v[4]||(v[4]=r("p",{class:"text-body-1 text-medium-emphasis"}," 适用于班级大屏的作业板小工具 ",-1))])],512),[[be,n.value===1]]),oe(r("div",La,[v[17]||(v[17]=r("h3",{class:"text-h5 mb-6 text-center"}," Classworks 和 Classworks KV 的关系 ",-1)),s(_,{class:"pa-6 mb-6",color:"primary",variant:"tonal"},{default:i(()=>[r("div",Fa,[r("div",Ra,[s(_,{class:"pa-4",color:"blue-darken-1",elevation:"8"},{default:i(()=>[r("div",Oa,[s(D,{color:"white",size:"60"},{default:i(()=>[...v[5]||(v[5]=[u(" mdi-laptop ",-1)])]),_:1}),v[6]||(v[6]=r("h4",{class:"text-h6 text-white mt-2"}," Classworks ",-1)),v[7]||(v[7]=r("p",{class:"text-caption text-white mt-1"}," 作业板应用 ",-1))])]),_:1}),r("div",Ba,[s(O,{class:"mb-2",color:"blue",size:"small",variant:"flat"},{default:i(()=>[...v[8]||(v[8]=[u(" 前端应用 ",-1)])]),_:1}),v[9]||(v[9]=r("div",{class:"text-body-2"},[u(" • 显示作业内容"),r("br"),u(" • 管理班级信息"),r("br"),u(" • 提供用户界面 ")],-1))])]),r("div",ja,[s(D,{color:"primary",size:"40"},{default:i(()=>[...v[10]||(v[10]=[u(" mdi-swap-horizontal ",-1)])]),_:1}),v[11]||(v[11]=r("div",{class:"text-caption font-weight-bold mt-2"}," 数据同步 ",-1))]),r("div",Ha,[s(_,{class:"pa-4",color:"green-darken-1",elevation:"8"},{default:i(()=>[r("div",Ka,[s(D,{color:"white",size:"60"},{default:i(()=>[...v[12]||(v[12]=[u(" mdi-cloud-sync ",-1)])]),_:1}),v[13]||(v[13]=r("h4",{class:"text-h6 text-white mt-2"}," Classworks KV ",-1)),v[14]||(v[14]=r("p",{class:"text-caption text-white mt-1"}," 云端数据库 ",-1))])]),_:1}),r("div",qa,[s(O,{class:"mb-2",color:"green",size:"small",variant:"flat"},{default:i(()=>[...v[15]||(v[15]=[u(" 后端服务 ",-1)])]),_:1}),v[16]||(v[16]=r("div",{class:"text-body-2"},[u(" • 存储作业数据"),r("br"),u(" • 多设备同步"),r("br"),u(" • 权限管理 ")],-1))])])])]),_:1})],512),[[be,n.value===2]]),oe(r("div",Wa,[v[25]||(v[25]=r("h3",{class:"text-h5 mb-6 text-center"}," 你需要在多个设备上查看作业吗? ",-1)),s(_,{class:"mb-6 pa-4",color:"info",variant:"tonal"},{default:i(()=>[...v[18]||(v[18]=[r("div",{class:"text-body-2"}," 比如:在家里电脑、手机上查看,或者多个教室设备共享数据 ",-1)])]),_:1}),r("div",Ga,[s(y,{block:"",class:"mb-4 py-6",color:"primary",size:"x-large",variant:"elevated",onClick:v[0]||(v[0]=ae=>N("cloud"))},{default:i(()=>[r("div",Qa,[s(D,{class:"mb-2",size:"40"},{default:i(()=>[...v[19]||(v[19]=[u(" mdi-cloud-check ",-1)])]),_:1}),v[20]||(v[20]=r("span",{class:"text-h6"},"需要,使用云同步",-1)),v[21]||(v[21]=r("span",{class:"text-caption mt-1"},"多设备访问",-1))])]),_:1}),s(y,{block:"",class:"py-6",size:"x-large",variant:"outlined",onClick:v[1]||(v[1]=ae=>N("local"))},{default:i(()=>[r("div",Ja,[s(D,{class:"mb-2",size:"40"},{default:i(()=>[...v[22]||(v[22]=[u(" mdi-laptop ",-1)])]),_:1}),v[23]||(v[23]=r("span",{class:"text-h6"},"不需要,只用这台设备",-1)),v[24]||(v[24]=r("span",{class:"text-caption mt-1"},"本地存储",-1))])]),_:1})])],512),[[be,n.value===3]]),oe(r("div",Ya,[r("div",Xa,[s(D,{class:"mb-4",color:"success",size:"80"},{default:i(()=>[...v[26]||(v[26]=[u(" mdi-check-circle ",-1)])]),_:1}),v[28]||(v[28]=r("h3",{class:"text-h5 mb-4"}," 您可以使用本地模式 ",-1)),s(_,{class:"pa-4 text-left",variant:"tonal"},{default:i(()=>[...v[27]||(v[27]=[r("div",{class:"text-body-1 mb-2"}," 此数据将存储在您的浏览器中,如果您的浏览器不支持IndexedDB,可能会出现问题。如果您经常清除浏览器数据,请谨慎使用本地模式。 ",-1),r("div",{class:"text-body-1 mb-2"}," 在刚才地方点击使用本地模式的按钮使用。 ",-1)])]),_:1})])],512),[[be,n.value===4&&o.value==="local"]]),oe(r("div",Za,[r("div",eo,[s(D,{class:"mb-4",color:"primary",size:"80"},{default:i(()=>[...v[29]||(v[29]=[u(" mdi-cloud-cog ",-1)])]),_:1}),v[30]||(v[30]=r("h3",{class:"text-h5 mb-4"}," 需要先设置云端账号 ",-1))]),s(_,{class:"pa-6 mb-6",variant:"tonal"},{default:i(()=>[r("div",to,[r("div",so,[v[32]||(v[32]=r("h4",{class:"text-h6 font-weight-bold mb-2"}," 自动注册设备 ",-1)),v[33]||(v[33]=r("p",{class:"text-body-2 mb-3 text-medium-emphasis"}," 通过引导式流程自动创建设备、获取令牌并完成初始化。适合首次体验或快速部署多终端。 ",-1)),s(y,{color:"primary","prepend-icon":"mdi-flash",size:"large",variant:"elevated",onClick:ge},{default:i(()=>[...v[31]||(v[31]=[u(" 自动注册 ",-1)])]),_:1})])])]),_:1}),v[41]||(v[41]=r("div",{class:"mb-6"}," 也可以手动前往 Classworks KV 控制台获取认证信息: ",-1)),s(_,{color:Ee(l)=="https://kv.houlang.cloud"?"primary":"error",variant:Ee(l)=="https://kv.houlang.cloud"?"elevated":"outlined",class:"pa-6 mb-6",onClick:Q},{default:i(()=>[s(D,{class:"mb-3",size:"48"},{default:i(()=>[...v[34]||(v[34]=[u(" mdi-open-in-new ",-1)])]),_:1}),r("h4",no," 请访问 "+g(Ee(l)=="https://kv.houlang.cloud"?"Classworks KV":"自定义的 Classworks KV 实例 ")+" 控制台 ",1),r("div",io,g(Ee(l)),1),r("h6",ao,g(Ee(l)=="https://kv.houlang.cloud"?"此实例由 Classworks KV 官方提供":"此链接由您的实例、预配代码或管理员管理,当前可能不是 Classworks KV 官方的实例地址。"),1)]),_:1},8,["color","variant"]),s(ms,{class:"mt-6",variant:"accordion"},{default:i(()=>[s(ct,null,{default:i(()=>[s(mt,null,{default:i(()=>[r("div",oo,[s(D,{class:"mr-3",color:"warning"},{default:i(()=>[...v[35]||(v[35]=[u(" mdi-help-circle ",-1)])]),_:1}),v[36]||(v[36]=r("span",{class:"text-subtitle-1 font-weight-medium"},"我以前已经使用过 Classworks KV?",-1))])]),_:1}),s(ft,null,{default:i(()=>[s(_,{class:"pa-4",color:"success",variant:"tonal"},{default:i(()=>[...v[37]||(v[37]=[r("div",{class:"text-body-2 mb-2"},[u(" 如果您之前已经使用过 Classworks KV,可以直接使用您的 "),r("strong",null,"UUID(命名空间)"),u(" 和 "),r("strong",null,"设置的密码"),u(" 进行认证。 ")],-1),r("div",{class:"text-body-2"},' 返回上一页,点击"已注册"按钮,输入您的认证信息即可登录。 ',-1)])]),_:1})]),_:1})]),_:1}),s(ct,null,{default:i(()=>[s(mt,null,{default:i(()=>[r("div",lo,[s(D,{class:"mr-3",color:"info"},{default:i(()=>[...v[38]||(v[38]=[u(" mdi-help-circle ",-1)])]),_:1}),v[39]||(v[39]=r("span",{class:"text-subtitle-1 font-weight-medium"},"我如何配置不同类型的设备?",-1))])]),_:1}),s(ft,null,{default:i(()=>[s(_,{class:"pa-4",color:"info",variant:"tonal"},{default:i(()=>[...v[40]||(v[40]=[r("div",{class:"text-body-2 mb-2"},[u(" 不同的密码对应不同的设备类型,这将由 "),r("strong",null,"管理员管理"),u("。 ")],-1),r("div",{class:"text-body-2 mb-2"}," 例如: ",-1),r("ul",{class:"text-body-2 ml-4"},[r("li",{class:"mb-1"}," 班级大屏使用一个密码 "),r("li",{class:"mb-1"}," 教师设备使用另一个密码 "),r("li",null,"学生设备使用不同的密码")],-1),r("div",{class:"text-body-2 mt-3"}," 请联系您的管理员获取对应设备类型的密码。 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1})],512),[[be,n.value===4&&o.value==="cloud"]]),oe(r("div",ro,[r("div",uo,[s(Ie,{class:"mb-4",color:"primary",size:"80",variant:"tonal"},{default:i(()=>[s(D,{size:"48"},{default:i(()=>[...v[42]||(v[42]=[u(" mdi-rocket-launch ",-1)])]),_:1})]),_:1}),v[43]||(v[43]=r("h3",{class:"text-h5 font-weight-bold mb-2"}," 渐进式注册 ",-1)),v[44]||(v[44]=r("p",{class:"text-body-2 text-medium-emphasis"}," 您可以暂时不配置 Classworks KV ",-1))]),s(it,{"model-value":pe.value,class:"mb-6",color:"primary",height:"8",rounded:""},null,8,["model-value"]),s(ue,null,{default:i(()=>[s(ne,{cols:"12"},{default:i(()=>[s(_,{color:te.value,variant:"tonal"},{default:i(()=>[s(Ve,null,{default:i(()=>[r("div",co,[s(D,{color:te.value,class:"mr-2",size:"32"},{default:i(()=>[u(g(se.value),1)]),_:1},8,["color"]),r("div",mo,g(C.value),1)]),f.value?(c(),p("div",fo,[r("div",ho,[v[45]||(v[45]=r("strong",null,"设备名称:",-1)),u(g(f.value.deviceName),1)]),r("div",null,[v[46]||(v[46]=r("strong",null,"设备 UUID:",-1)),r("code",go,g(f.value.uuid),1)])])):w("",!0),d.value==="error"?(c(),p("div",po,g(m.value),1)):w("",!0)]),_:1})]),_:1},8,["color"])]),_:1}),s(ne,{cols:"12"},{default:i(()=>[s(_,{variant:"outlined"},{default:i(()=>[s(Ve,null,{default:i(()=>[v[47]||(v[47]=r("div",{class:"text-subtitle-2 font-weight-medium mb-3"}," 过程日志 ",-1)),r("div",vo,[(c(!0),p(E,null,U(k.value,(ae,T)=>(c(),p("div",{key:T,class:"text-caption log-line"},g(ae.time)+" · "+g(ae.message),1))),128)),k.value.length?w("",!0):(c(),p("div",yo," 等待开始… "))])]),_:1})]),_:1})]),_:1})]),_:1}),r("div",ko,[d.value==="idle"?(c(),b(y,{key:0,color:"primary","prepend-icon":"mdi-play",size:"large",onClick:A},{default:i(()=>[...v[48]||(v[48]=[u(" 开始创建 ",-1)])]),_:1})):w("",!0),d.value==="error"?(c(),b(y,{key:1,color:"error","prepend-icon":"mdi-refresh",variant:"outlined",onClick:R},{default:i(()=>[...v[49]||(v[49]=[u(" 重试 ",-1)])]),_:1})):w("",!0),d.value==="registering"?(c(),b(y,{key:2,loading:!0,color:"primary","prepend-icon":"mdi-progress-clock",variant:"tonal"},{default:i(()=>[...v[50]||(v[50]=[u(" 正在执行… ",-1)])]),_:1})):w("",!0),d.value==="success"?(c(),b(y,{key:3,color:"success","prepend-icon":"mdi-check-circle",size:"large",variant:"elevated",onClick:le},{default:i(()=>[...v[51]||(v[51]=[u(" 应用令牌并关闭 ",-1)])]),_:1})):w("",!0),d.value==="success"?(c(),b(y,{key:4,color:"primary","prepend-icon":"mdi-open-in-new",size:"large",variant:"outlined",onClick:de},{default:i(()=>[...v[52]||(v[52]=[u(" 前往绑定账户 ",-1)])]),_:1})):w("",!0)])],512),[[be,n.value===5]])]),_:1}),s(X,{class:"pa-6 pt-0"},{default:i(()=>[n.value>1?(c(),b(y,{key:0,size:"large",variant:"text",onClick:H},{default:i(()=>[s(D,{start:""},{default:i(()=>[...v[53]||(v[53]=[u(" mdi-chevron-left ",-1)])]),_:1}),v[54]||(v[54]=u(" 上一步 ",-1))]),_:1})):w("",!0),s(L),n.value[v[56]||(v[56]=u(" 下一步 ",-1)),s(D,{end:""},{default:i(()=>[...v[55]||(v[55]=[u(" mdi-chevron-right ",-1)])]),_:1})]),_:1},8,["disabled"])):w("",!0),n.value===Me||n.value===4?(c(),b(y,{key:2,color:"primary",size:"large",variant:"elevated",onClick:K},{default:i(()=>[...v[57]||(v[57]=[u(" 关闭 ",-1)])]),_:1})):w("",!0)]),_:1})]),_:1}))}},xo=W(bo,[["__scopeId","data-v-817c6e0e"]]),wo={key:0,class:"init-overlay"},So={class:"init-container"},Co={class:"main-card-row"},_o={class:"card-horizontal-layout"},Do={class:"card-icon-wrapper"},To={class:"card-horizontal-layout"},Io={class:"card-icon-wrapper"},Eo={class:"card-horizontal-layout"},No={class:"card-icon-wrapper"},Vo={class:"options-buttons"},Ao={__name:"InitServiceChooser",props:{preconfig:{type:Object,default:()=>({namespace:null,authCode:null,autoOpen:!1,autoExecute:!1})}},emits:["done"],setup(t,{emit:e}){const a=t,l=e,n=$(!1),o=$(!1),d=$(!1),m=$(!1),f=$(!1),h=$(null),k=G(()=>S("server.provider")),I=G(()=>k.value==="kv-server"||k.value==="classworkscloud"),F=G(()=>S("server.kvToken")),H=G(()=>{var z;return(z=a.preconfig)!=null&&z.namespace?{namespace:a.preconfig.namespace,password:a.preconfig.authCode||"",autoExecute:a.preconfig.autoExecute||!1}:null}),N=()=>{const z=window.location.pathname,x=z==="/"||z==="/index"||z==="/index.html",A=I.value&&(!F.value||F.value==="");n.value=x&&A};Le(()=>a.preconfig,z=>{z!=null&&z.autoOpen&&(z!=null&&z.namespace)&&n.value&&(console.log("检测到预配数据,自动打开设备认证对话框"),setTimeout(()=>{d.value=!0},500))},{immediate:!0,deep:!0}),Ye(()=>{N()});const K=()=>{const z=S("server.authDomain"),x="d158067f53627d2b98babe8bffd2fd7d",A=window.location.origin,R=encodeURIComponent(`${A}/authorizecallback`),de=S("device.uuid")||"00000000-0000-4000-8000-000000000000";let le=`${z}/authorize?app_id=${x}&mode=callback&callback_url=${R}&remark=Classworks 自动授权 来自${window.location.hostname} ${new Date().toLocaleString()}`;de!=="00000000-0000-4000-8000-000000000000"&&(le+=`&uuid=${encodeURIComponent(de)}`),window.location.href=le},Q=z=>{o.value=!1,console.log("渐进式注册成功:",z),N(),l("done")},ge=z=>{var x;d.value=!1,console.log("认证成功:",z),(x=a.preconfig)!=null&&x.namespace&&console.log(`预配数据认证成功: ${a.preconfig.namespace}`),N(),l("done")},pe=()=>{m.value=!1,N(),l("done")},te=z=>{console.log("替代代码:",z),f.value=!1},se=()=>{re("server.provider","kv-local"),n.value=!1,window.location.reload(),l("done")},C=()=>{window.open(S("server.authDomain"),"_blank")};return(z,x)=>n.value?(c(),p("div",wo,[r("div",So,[x[22]||(x[22]=r("div",{class:"init-header"},[r("div",{class:"title"}," 欢迎使用 Classworks "),r("div",{class:"subtitle"}," 请选择你的使用方式 ")],-1)),r("div",Co,[s(_,{class:"main-service-card gradient-new clickable",elevation:"4",onClick:x[0]||(x[0]=A=>o.value=!0)},{default:i(()=>[s(Ve,null,{default:i(()=>[r("div",_o,[r("div",Do,[s(D,{color:"primary",size:"48"},{default:i(()=>[...x[12]||(x[12]=[u(" mdi-new-box ",-1)])]),_:1})]),x[13]||(x[13]=r("div",{class:"card-content"},[r("div",{class:"text-h6 font-weight-bold"}," 初次使用 "),r("div",{class:"text-body-2 text-medium-emphasis mt-1"}," 了解 Classworks KV 并开始使用 ")],-1))])]),_:1})]),_:1}),s(_,{class:"main-service-card gradient-registered clickable",elevation:"4",onClick:x[1]||(x[1]=A=>d.value=!0)},{default:i(()=>[s(Ve,null,{default:i(()=>[r("div",To,[r("div",Io,[s(D,{color:"success",size:"48"},{default:i(()=>[...x[14]||(x[14]=[u(" mdi-account-check ",-1)])]),_:1})]),x[15]||(x[15]=r("div",{class:"card-content"},[r("div",{class:"text-h6 font-weight-bold"}," 已注册 "),r("div",{class:"text-body-2 text-medium-emphasis mt-1"}," 使用设备 Namespace 登录 ")],-1))])]),_:1})]),_:1}),s(_,{class:"main-service-card clickable",elevation:"4",onClick:C},{default:i(()=>[s(Ve,null,{default:i(()=>[r("div",Eo,[r("div",No,[s(D,{color:"info",size:"48"},{default:i(()=>[...x[16]||(x[16]=[u(" mdi-database-cog ",-1)])]),_:1})]),x[17]||(x[17]=r("div",{class:"card-content"},[r("div",{class:"text-h6 font-weight-bold"}," Classworks KV "),r("div",{class:"text-body-2 text-medium-emphasis mt-1"}," 打开云端控制台管理数据 ")],-1))])]),_:1})]),_:1})]),r("div",Vo,[s(y,{"prepend-icon":"mdi-laptop",size:"small",variant:"tonal",onClick:se},{default:i(()=>[...x[18]||(x[18]=[u(" 使用本地模式 ",-1)])]),_:1}),s(y,{"prepend-icon":"mdi-flash",size:"small",variant:"tonal",onClick:K},{default:i(()=>[...x[19]||(x[19]=[u(" 授权码式授权(弃用) ",-1)])]),_:1}),s(y,{"prepend-icon":"mdi-key",size:"small",variant:"tonal",onClick:x[2]||(x[2]=A=>m.value=!0)},{default:i(()=>[...x[20]||(x[20]=[u(" 输入 Token ",-1)])]),_:1}),s(y,{"prepend-icon":"mdi-code-tags",size:"small",variant:"tonal",onClick:x[3]||(x[3]=A=>f.value=!0)},{default:i(()=>[...x[21]||(x[21]=[u(" 输入替代代码 ",-1)])]),_:1})]),x[23]||(x[23]=r("div",{class:"footer-hint"}," 完成授权后可使用作业同步、考试看板等在线功能。 ",-1))]),s(J,{modelValue:o.value,"onUpdate:modelValue":x[5]||(x[5]=A=>o.value=A),"max-width":"600"},{default:i(()=>[s(xo,{onClose:x[4]||(x[4]=A=>o.value=!1),onSuccess:Q})]),_:1},8,["modelValue"]),s(J,{modelValue:d.value,"onUpdate:modelValue":x[7]||(x[7]=A=>d.value=A),"max-width":"500"},{default:i(()=>[s(Ta,{ref_key:"deviceAuthDialog",ref:h,preconfig:H.value,"show-cancel":!0,onCancel:x[6]||(x[6]=A=>d.value=!1),onSuccess:ge},null,8,["preconfig"])]),_:1},8,["modelValue"]),s(J,{modelValue:m.value,"onUpdate:modelValue":x[9]||(x[9]=A=>m.value=A),"max-width":"500"},{default:i(()=>[s(Ia,{"show-cancel":!0,onCancel:x[8]||(x[8]=A=>m.value=!1),onSuccess:pe})]),_:1},8,["modelValue"]),s(J,{modelValue:f.value,"onUpdate:modelValue":x[11]||(x[11]=A=>f.value=A),"max-width":"500"},{default:i(()=>[s(Ea,{"show-cancel":!0,onCancel:x[10]||(x[10]=A=>f.value=!1),onSubmit:te})]),_:1},8,["modelValue"])])):w("",!0)}},Bt=W(Ao,[["__scopeId","data-v-cbfbc6db"]]),Uo={name:"ExamScheduleCard",props:{examId:{type:String,required:!0},contentStyle:{type:Object,default:()=>({})}},computed:{...bt(ze,["exams","loadingDetails"]),exam(){return this.exams[this.examId]},loading(){return this.loadingDetails[this.examId]}},mounted(){this.fetchExam(this.examId)},methods:{...kt(ze,["fetchExam"]),formatTime(t){if(!t)return"";try{const e=new Date(t),a=(e.getMonth()+1).toString().padStart(2,"0"),l=e.getDate().toString().padStart(2,"0"),n=e.getHours().toString().padStart(2,"0"),o=e.getMinutes().toString().padStart(2,"0");return`${a}-${l} ${n}:${o}`}catch{return t}}}},zo={class:"text-truncate"},Mo={key:0,class:"d-flex justify-center align-center fill-height",style:{"min-height":"200px"}},$o={class:"d-flex align-center mb-1"},Po={class:"font-weight-medium"},Lo={class:"d-flex align-center"},Fo={class:"font-weight-medium"},Ro={key:2,class:"d-flex flex-column align-center justify-center fill-height text-grey mt-4"};function Oo(t,e,a,l,n,o){return c(),b(_,{class:"fill-height d-flex flex-column rounded-xl",elevation:"2"},{default:i(()=>[s(j,{class:"d-flex align-center py-3 px-4 bg-primary text-white"},{default:i(()=>{var d;return[s(D,{class:"mr-2"},{default:i(()=>[...e[1]||(e[1]=[u("mdi-calendar-clock",-1)])]),_:1}),r("span",zo,g(((d=o.exam)==null?void 0:d.examName)||"加载中..."),1),s(L),s(y,{icon:"mdi-close",variant:"text",density:"comfortable",onClick:e[0]||(e[0]=m=>t.$emit("close"))})]}),_:1}),s(V,{class:"flex-grow-1 pa-4 overflow-y-auto",style:he(a.contentStyle)},{default:i(()=>[o.loading?(c(),p("div",Mo,[s(xt,{indeterminate:"",color:"primary"})])):o.exam?(c(),p(E,{key:1},[o.exam.message?(c(),b(_e,{key:0,color:"info",variant:"tonal",class:"mb-4 text-body-1",border:"start",density:"compact"},{default:i(()=>[u(g(o.exam.message),1)]),_:1})):w("",!0),s(we,{density:"comfortable",class:"pa-0 bg-transparent"},{default:i(()=>[(c(!0),p(E,null,U(o.exam.examInfos,(d,m)=>(c(),b(Se,{key:m,class:"px-0 mb-3"},{prepend:i(()=>[s(Ie,{color:"primary",variant:"tonal",size:"large",class:"mr-3 font-weight-bold elevation-1"},{default:i(()=>[u(g(d.name.charAt(0)),1)]),_:2},1024)]),default:i(()=>[s($e,{class:"font-weight-bold text-h6 mb-1"},{default:i(()=>[u(g(d.name),1)]),_:2},1024),s(Pe,{class:"text-body-1"},{default:i(()=>[r("div",$o,[s(D,{size:"small",color:"success",class:"mr-2"},{default:i(()=>[...e[2]||(e[2]=[u("mdi-clock-start",-1)])]),_:1}),r("span",Po,g(o.formatTime(d.start)),1)]),r("div",Lo,[s(D,{size:"small",color:"error",class:"mr-2"},{default:i(()=>[...e[3]||(e[3]=[u("mdi-clock-end",-1)])]),_:1}),r("span",Fo,g(o.formatTime(d.end)),1)])]),_:2},1024)]),_:2},1024))),128))]),_:1})],64)):(c(),p("div",Ro,[s(D,{size:"large",class:"mb-2"},{default:i(()=>[...e[4]||(e[4]=[u("mdi-alert-circle-outline",-1)])]),_:1}),e[5]||(e[5]=u(" 无法加载考试信息 ",-1))]))]),_:1},8,["style"])]),_:1})}const Bo=W(Uo,[["render",Oo],["__scopeId","data-v-52dc8ca5"]]);function He(t,e){let a=null;return function(...l){a&&clearTimeout(a),a=setTimeout(()=>{t.apply(this,l)},e)}}function jo(t,e){let a=null,l=0;return function(...n){const o=Date.now();o-l{l=o,t.apply(this,n)},e)):(l=o,t.apply(this,n))}}const Ho={name:"Classworks 作业板",components:{MessageLog:St,RandomPicker:Tt,FloatingToolbar:Vt,FloatingICP:Nt,HomeworkEditDialog:Ut,InitServiceChooser:Bt,ChatWidget:Re,StudentNameManager:Ot,UrgentTestDialog:Et,AttendanceSidebar:zt,AttendanceManagementDialog:At,HomeworkGrid:Rt,HomeActions:$t,PwaInstallCard:Mt,ExamScheduleCard:Bo,ExamConfigEditor:pt},setup(){const{mobile:t}=Ae(),e=ze();return{mobile:t,examStore:e}},data(){const t=[{name:"语文",order:0},{name:"数学",order:1},{name:"英语",order:2},{name:"物理",order:3},{name:"化学",order:4},{name:"生物",order:5},{name:"政治",order:6},{name:"历史",order:7},{name:"地理",order:8},{name:"其他",order:9}];return{showAddExamDialog:!1,showExamDetailDialog:!1,selectedExamId:null,upcomingExams:[],dataKey:"",provider:"",useDisplay:Ae,state:{classNumber:"",namespaceInfo:null,deviceName:"",studentList:[],boardData:{homework:{},attendance:{absent:[],late:[],exclude:[]}},dialogVisible:!1,dialogTitle:"",textarea:"",dateString:"",synced:!1,attendDialogVisible:!1,contentStyle:{"font-size":`${S("font.size")}px`},uploadLoading:!1,downloadLoading:!1,snackbar:!1,snackbarText:"",fontSize:S("font.size"),datePickerDialog:!1,selectedDate:new Date().toISOString().split("T")[0].replace(/-/g,""),selectedDateObj:new Date,refreshInterval:null,showNoDataMessage:!1,noDataMessage:"",isToday:!1,attendanceDialog:!1,availableSubjects:t,isFullscreen:!1},loading:{download:!1,upload:!1,students:!1,copyToToday:!1},debouncedUpload:null,debouncedAttendanceSave:null,throttledReflow:null,sortedItemsCache:{key:"",value:[]},confirmDialog:{show:!1,resolve:null,reject:null},urlConfigDialog:{show:!1,config:null,changes:[],validSettings:{},confirmHandler:null,cancelHandler:null,icons:{}},settingsTick:0,isChatOpen:!1,highlightedCards:{},tokenDisplayInfo:{show:!1,readonly:!1,text:"",color:"primary",variant:"tonal",icon:"mdi-account",disabled:!1},realtimeInfo:{show:!1,time:"",key:""},$offKvChanged:null,$offConnect:null,debouncedRealtimeRefresh:null,preconfigData:{namespace:null,authCode:null,autoOpen:!1,autoExecute:!1},urgentTestDialog:!1,tokenInfo:null,persistentNotifications:[],notificationDetailDialog:!1,currentNotification:null}},computed:{isMobile(){return S("display.forceDesktopMode")?!1:this.mobile},titleText(){var d,m;const t=((m=(d=this.state.namespaceInfo)==null?void 0:d.device)==null?void 0:m.name)||this.state.classNumber||"高三八班",e=this.getToday(),a=new Date(e);a.setDate(a.getDate()-1);const l=this.state.dateString,n=this.formatDate(e),o=this.formatDate(a);return l===n?t+" - 今天的作业":l===o?t+" - 昨天的作业":`${t} - ${l}的作业`},sortedItems(){const t=[];this.isMobile&&t.push({key:"attendance-card",name:"出勤统计",type:"attendance",data:{total:this.state.studentList.length,absent:this.state.boardData.attendance.absent,late:this.state.boardData.attendance.late,exclude:this.state.boardData.attendance.exclude}});for(const e in this.state.boardData.homework)if(e.startsWith("exam-")){const a=this.state.boardData.homework[e];t.push({key:e,name:"考试安排",type:"exam",data:{examId:a.examId},order:-100,rowSpan:200})}for(const e of this.state.availableSubjects){const a=e.name,l=this.state.boardData.homework[a];if(l&&l.content){const o=100+l.content.split(` `).filter(d=>d.trim()).length*24;t.push({key:a,name:a,type:"homework",content:l.content,order:e.order,rowSpan:o})}}S("hitokoto.enabled")&&t.push({key:"hitokoto-card",name:"一言",type:"hitokoto",order:9998,rowSpan:150});for(const e in this.state.boardData.homework)if(e.startsWith("custom-")){const a=this.state.boardData.homework[e],n=100+a.content.split(` `).filter(o=>o.trim()).length*24;t.push({key:e,name:a.name,type:"custom",content:a.content,order:9999,rowSpan:n})}return t.sort((e,a)=>e.order-a.order),t},unusedSubjects(){const t=Object.keys(this.state.boardData.homework).filter(e=>{var a;return(a=this.state.boardData.homework[e].content)==null?void 0:a.trim()});return this.state.availableSubjects.filter(e=>!t.includes(e.name)).sort((e,a)=>e.order-a.order)},emptySubjects(){return this.emptySubjectDisplay!=="button"?[]:this.unusedSubjects},autoSave(){return S("edit.autoSave")},blockNonTodayAutoSave(){return S("edit.blockNonTodayAutoSave")},isToday(){const t=(()=>{const e=new Date,a=e.getFullYear(),l=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0");return`${a}${l}${n}`})();return this.state.dateString===t},canAutoSave(){return this.autoSave&&(!this.blockNonTodayAutoSave||this.isToday)},needConfirmSave(){return!this.isToday&&this.confirmNonTodaySave},shouldShowBlockedMessage(){return!this.isToday&&this.autoSave&&this.blockNonTodayAutoSave},refreshBeforeEdit(){return S("edit.refreshBeforeEdit")},emptySubjectDisplay(){return S("display.emptySubjectDisplay")},dynamicSort(){return S("display.dynamicSort")},isEditingDisabled(){if(this.state.uploadLoading||this.state.downloadLoading)return!0;const t=this.$refs.studentNameManager;return!!(t!=null&&t.isReadOnly||!this.canEditCurrentDate)},unreadCount(){var t;return((t=this.$refs.messageLog)==null?void 0:t.unreadCount)||0},showRandomPickerButton(){return S("randomPicker.enabled")},showListCardButton(){return S("display.showListCard")},confirmNonTodaySave(){return S("edit.confirmNonTodaySave")},blockPastDataEdit(){return S("edit.blockPastDataEdit")},shouldShowSaveConfirm(){return!this.isToday&&this.confirmNonTodaySave},shouldBlockAutoSave(){return!this.isToday&&this.autoSave&&this.blockNonTodayAutoSave},canEditCurrentDate(){return this.isToday?!0:!this.blockPastDataEdit},isEditingPastData(){return!this.isToday},showFullscreenButton(){return S("display.showFullscreenButton")},showExamScheduleButton(){return S("display.showExamScheduleButton")},showAntiScreenBurnCard(){return S("display.showAntiScreenBurnCard")},showTestCardButton(){return S("developer.enabled")},shouldShowInit(){var n;const t=S("server.provider"),e=t==="kv-server"||t==="classworkscloud",a=S("server.kvToken"),l=((n=this.$route)==null?void 0:n.path)==="/";return this.settingsTick,l&&e&&(!a||a==="")},hasExamCard(){for(const t in this.state.boardData.homework)if(t.startsWith("exam-"))return!0;return!1},shouldShowUrgentTestButton(){const t=S("server.provider");return!(t==="kv-server"||t==="classworkscloud")||!S("server.kvToken")||!this.tokenInfo?!1:this.tokenInfo.deviceType==="teacher"||this.tokenInfo.deviceType==="classroom"},subjectOrder(){return[...this.state.availableSubjects].sort((t,e)=>t.order-e.order).map(t=>t.name)}},watch:{homeworkData:{handler(){this.$nextTick(()=>{this.$refs.waterfall&&this.$refs.waterfall.reflow()})},deep:!0},"$vuetify.display.width":{handler(){this.throttledReflow()},deep:!0},"state.attendanceDialog":{handler(t){this.handleAttendanceDialogClose(t)}}},created(){this.debouncedUpload=He(this.uploadData,2e3),this.debouncedAttendanceSave=He(async()=>{this.autoSave&&await this.trySave(!0)},2e3),this.throttledReflow=jo(()=>{this.$refs.gridContainer&&this.optimizeGridLayout(this.sortedItems)},200)},async mounted(){try{this.updateBackendUrl(),await this.initializeData(),await this.loadDeviceInfo(),this.setupAutoRefresh(),this.unwatchSettings=Xe(()=>{this.updateSettings()}),this.$nextTick(()=>{const t=this.$refs.studentNameManager;t&&(this.studentNameInfo.name=t.currentStudentName||t.currentTeacherName||"",this.studentNameInfo.isStudent=t.isStudentToken,this.studentNameInfo.isTeacher=t.isTeacherToken,this.studentNameInfo.openDialog=()=>t.openDialog(),this.$watch(()=>t.currentStudentName,e=>{this.studentNameInfo.name=e,this.updateTokenDisplayInfo()}),this.$watch(()=>t.currentTeacherName,e=>{t.isTeacherToken&&(this.studentNameInfo.name=e,this.updateTokenDisplayInfo())}),this.$watch(()=>t.isStudentToken,e=>{this.studentNameInfo.isStudent=e,this.updateTokenDisplayInfo()}),this.$watch(()=>t.isTeacherToken,e=>{this.studentNameInfo.isTeacher=e,this.updateTokenDisplayInfo()}))}),document.addEventListener("fullscreenchange",this.fullscreenChangeHandler),document.addEventListener("webkitfullscreenchange",this.fullscreenChangeHandler),document.addEventListener("mozfullscreenchange",this.fullscreenChangeHandler),document.addEventListener("MSFullscreenChange",this.fullscreenChangeHandler),this.checkHashForRandomPicker(),window.addEventListener("hashchange",this.checkHashForRandomPicker),this.setupRealtimeChannel(),this.$nextTick(()=>{this.updateTokenDisplayInfo()}),await this.loadTokenInfo(),this.loadPersistentNotifications()}catch(t){console.error("初始化失败:",t),this.showError("初始化失败,请刷新页面重试")}},beforeUnmount(){this.unwatchSettings&&this.unwatchSettings(),this.state.refreshInterval&&clearInterval(this.state.refreshInterval),document.removeEventListener("fullscreenchange",this.fullscreenChangeHandler),document.removeEventListener("webkitfullscreenchange",this.fullscreenChangeHandler),document.removeEventListener("mozfullscreenchange",this.fullscreenChangeHandler),document.removeEventListener("MSFullscreenChange",this.fullscreenChangeHandler),window.removeEventListener("hashchange",this.checkHashForRandomPicker);try{this.$offKvChanged&&typeof this.$offKvChanged=="function"&&(this.$offKvChanged(),this.$offKvChanged=null),this.$offDeviceEvent&&typeof this.$offDeviceEvent=="function"&&(this.$offDeviceEvent(),this.$offDeviceEvent=null),this.$offConnect&&typeof this.$offConnect=="function"&&(this.$offConnect(),this.$offConnect=null),ss()}catch(t){console.warn("主页面事件清理失败:",t)}},methods:{async loadDeviceInfo(){var t;try{const e=S("server.provider");if(!(e==="kv-server"||e==="classworkscloud"))return;const l=await rs.loadNamespaceInfo();if(l&&l.success===!1)return;this.state.namespaceInfo=l||null,this.state.deviceName=((t=l==null?void 0:l.account)==null?void 0:t.deviceName)||""}catch(e){console.warn("加载设备信息失败:",e)}},async loadTokenInfo(){try{const t=S("server.provider");if(!(t==="kv-server"||t==="classworkscloud"))return;const a=S("server.kvToken");if(!a)return;const l=S("server.domain");if(!l)return;const n=await me.get(`${l}/kv/_token`,{headers:{Authorization:`Bearer ${a}`}});this.tokenInfo=n.data,console.log("Token info loaded:",this.tokenInfo)}catch(t){console.warn("Failed to load token info:",t),this.tokenInfo=null}},updateTokenDisplayInfo(){const t=this.$refs.studentNameManager;if(!t||!t.hasToken){this.tokenDisplayInfo.show=!1,this.tokenDisplayInfo.readonly=!1;return}const e=t.displayName,a=t.isReadOnly,l=t.isStudentToken,n=t.isTeacherToken;if(this.tokenDisplayInfo.readonly=a,!l&&!n){this.tokenDisplayInfo.show=!1;return}this.tokenDisplayInfo.text=e,this.tokenDisplayInfo.color="primary",this.tokenDisplayInfo.icon=n?"mdi-school":"mdi-account",this.tokenDisplayInfo.disabled=a,this.tokenDisplayInfo.show=!0},handleTokenChipClick(){console.log("Token chip clicked");const t=this.$refs.studentNameManager;console.log("Manager:",t),console.log("Is student token:",t==null?void 0:t.isStudentToken),console.log("Is teacher token:",t==null?void 0:t.isTeacherToken),t&&(t.isStudentToken||t.isTeacherToken)?(console.log("Opening dialog..."),t.openDialog()):console.log("Cannot open dialog - conditions not met")},ensureDate(t){if(t instanceof Date)return t;if(typeof t=="string"){const e=new Date(t);if(!isNaN(e.getTime()))return e}return new Date},formatDate(t){const e=this.ensureDate(t),a=e.getFullYear(),l=String(e.getMonth()+1).padStart(2,"0"),n=String(e.getDate()).padStart(2,"0");return`${a}${l}${n}`},formatTime(t){return t?new Date(t).toLocaleString():""},getToday(){return new Date},async initializeData(){this.parsePreconfigData();const t=await this.parseUrlConfig(),a=new URLSearchParams(window.location.search).get("date"),l=this.getToday();let n=l;if(a){if(/^\d{8}$/.test(a)){const o=a.substring(0,4),d=a.substring(4,6),m=a.substring(6,8);n=new Date(`${o}-${d}-${m}`)}else n=new Date(a);isNaN(n.getTime())&&(n=l)}if(this.state.dateString=this.formatDate(n),this.state.selectedDate=this.state.dateString,this.state.selectedDateObj=n,this.state.isToday=this.formatDate(n)===this.formatDate(l),!t){this.provider=S("server.provider");const o=S("server.classNumber");this.state.classNumber=o}await Promise.all([this.downloadData(),this.loadConfig()]),await this.examStore.fetchExamList();for(const o of this.examStore.examList)this.examStore.fetchExam(o.id);this.checkUpcomingExams()},async checkUpcomingExams(){this.upcomingExams=await this.examStore.getUpcomingExams()},loadExamCards(){},saveExamCards(){},addExamCard(t,e=!1,a=!1){const l=`exam-${t}`;!e&&this.state.boardData.homework[l]?delete this.state.boardData.homework[l]:this.state.boardData.homework[l]={type:"exam",examId:t,name:"考试安排",content:""},this.state.synced=!1,a||this.trySave(!0)},openExamDetail(t){this.selectedExamId=t,this.showExamDetailDialog=!0},removeCurrentExamCard(){this.selectedExamId&&(this.addExamCard(this.selectedExamId),this.showExamDetailDialog=!1)},async onExamConfigSaved(){this.selectedExamId&&(delete this.examStore.exams[this.selectedExamId],await this.examStore.fetchExam(this.selectedExamId),this.$message.success("保存成功","考试配置已更新"))},onExamConfigDeleted(){this.removeCurrentExamCard(),this.$message.success("删除成功","考试配置已删除")},isExamCardAdded(t){return!!this.state.boardData.homework[`exam-${t}`]},removeExamCard(t){},addAllUpcomingExams(){let t=0;for(const e of this.upcomingExams)this.isExamCardAdded(e.id)||(this.addExamCard(e.id,!0,!0),t++);t>0?(this.trySave(!0),this.$message.success("添加成功",`已添加 ${t} 个考试安排`)):this.$message.info("提示","所有考试已添加")},async downloadData(t=!1){var e,a,l;if(!this.loading.download)try{this.loading.download=!0;const n=await Z.loadData("classworks-data-"+this.state.dateString);if(n.success==!1)if(n.error.code==="NOT_FOUND")this.state.showNoDataMessage=!0,this.state.noDataMessage=n.error.message,(t||!this.state.boardData||!this.state.boardData.homework&&!this.state.boardData.attendance)&&(this.state.boardData={homework:{},attendance:{absent:[],late:[],exclude:[]}});else throw new Error(n.error.message);else this.state.boardData={homework:n.homework||{},attendance:{absent:((e=n.attendance)==null?void 0:e.absent)||[],late:((a=n.attendance)==null?void 0:a.late)||[],exclude:((l=n.attendance)==null?void 0:l.exclude)||[]}},this.state.synced=!0,this.state.showNoDataMessage=!1,this.$message.success("下载成功","数据已更新")}catch(n){console.error("数据加载失败:",n),this.$message.error("下载失败",n.message),(t||!this.state.boardData||!this.state.boardData.homework&&!this.state.boardData.attendance)&&(this.state.boardData={homework:{},attendance:{absent:[],late:[],exclude:[]}})}finally{this.loading.download=!1}},async trySave(t=!1){if(t&&!this.canAutoSave)return this.shouldShowBlockedMessage&&this.showMessage("需要手动保存","已禁止自动保存非当天数据","warning"),!1;if(!t&&this.needConfirmSave)try{await this.showConfirmDialog()}catch{return!1}try{return await this.uploadData(),!0}catch(e){return this.$message.error("保存失败",e.message||"请重试"),!1}},async handleClose(){var a;if(!this.currentEditSubject)return;const t=this.state.textarea.trim(),e=((a=this.state.boardData.homework[this.currentEditSubject])==null?void 0:a.content)||"";if(t!==e.trim()){if(!t&&this.currentEditSubject.startsWith("custom-")){delete this.state.boardData.homework[this.currentEditSubject],this.state.synced=!1,this.autoSave&&await this.trySave(!0),this.state.dialogVisible=!1;return}this.state.boardData.homework[this.currentEditSubject].type==="custom"?this.state.boardData.homework[this.currentEditSubject].content=t:this.state.boardData.homework[this.currentEditSubject]={content:t},this.state.synced=!1,this.autoSave&&await this.trySave(!0)}this.state.dialogVisible=!1},async uploadData(){if(!this.loading.upload)try{this.loading.upload=!0;const t=await Z.saveData("classworks-data-"+this.state.dateString,this.state.boardData);if(t.success==!1)throw new Error(t.error.message);this.state.synced=!0,this.$message.success(t.message||"保存成功")}finally{this.loading.upload=!1}},async loadConfig(){try{try{const t=await Z.loadData("classworks-list-main");t.success!=!1&&Array.isArray(t)&&(this.state.studentList=t.map(e=>e.name))}catch(t){console.warn("Failed to load student list from dedicated key, falling back to config",t)}await this.loadSubjects()}catch(t){console.error("加载配置失败:",t),this.$message.error("加载配置失败",t.message)}},async loadSubjects(){try{const t=await Z.loadData("classworks-config-subject");t&&Array.isArray(t)&&(this.state.availableSubjects=t)}catch(t){console.warn("Failed to load subject configuration:",t)}},showSyncMessage(){this.$message.success("数据已同步","数据已完成与服务器同步")},async openDialog(t){var e;if(this.isEditingDisabled){const a=this.$refs.studentNameManager;a!=null&&a.isReadOnly?this.$message.warning("无法编辑","当前使用的是只读令牌"):this.canEditCurrentDate?this.$message.warning("无法编辑","数据加载中,请稍候"):this.$message.warning("无法编辑","已禁止编辑过往数据");return}if(t.startsWith("custom-")){this.currentEditSubject=t,this.state.dialogTitle=this.state.boardData.homework[t].name,this.state.textarea=this.state.boardData.homework[t].content,this.state.dialogVisible=!0;return}if(this.refreshBeforeEdit)try{await this.downloadData()}catch(a){console.error("刷新数据失败:",a),this.$message.error("刷新数据失败,可能显示的不是最新数据")}this.currentEditSubject=t,this.state.boardData.homework[t]||(this.state.boardData.homework[t]={content:""}),this.state.dialogTitle=((e=this.state.availableSubjects.find(a=>a.name===t))==null?void 0:e.name)||t,this.state.textarea=this.state.boardData.homework[t].content,this.state.dialogVisible=!0},async handleHomeworkSave(t){this.currentEditSubject&&(this.state.boardData.homework[this.currentEditSubject].type==="custom"?this.state.boardData.homework[this.currentEditSubject].content=t:this.state.boardData.homework[this.currentEditSubject]={content:t},this.state.synced=!1,this.autoSave&&await this.trySave(!0))},setAttendanceArea(){if(this.isEditingDisabled){this.handleDisabledClick();return}this.state.attendanceDialog=!0},handleDisabledClick(){const t=this.$refs.studentNameManager;t!=null&&t.isReadOnly?this.$message.warning("无法编辑","当前使用的是只读令牌"):this.canEditCurrentDate?this.$message.warning("无法编辑","数据加载中,请稍候"):this.$message.warning("无法编辑","已禁止编辑过往数据")},zoom(t){t==="up"&&this.state.fontSize<100?this.state.fontSize+=2:t==="out"&&this.state.fontSize>16&&(this.state.fontSize-=2),this.state.contentStyle={"font-size":`${this.state.fontSize}px`},re("font.size",this.state.fontSize)},updateBackendUrl(){const t=S("server.provider"),e=S("server.classNumber");this.provider=t,this.state.classNumber=e},setupAutoRefresh(){const t=S("refresh.auto"),e=S("refresh.interval");this.state.refreshInterval&&clearInterval(this.state.refreshInterval),t&&(this.state.refreshInterval=setInterval(()=>{this.shouldSkipRefresh()||(this.downloadData(),this.loadPersistentNotifications())},e*1e3))},shouldSkipRefresh(){return!!(this.state.dialogVisible||this.state.attendanceDialog||this.confirmDialog.show||this.state.datePickerDialog||this.loading.upload||this.loading.download||!this.state.synced)},updateSettings(){this.state.fontSize=S("font.size"),this.state.contentStyle={"font-size":`${this.state.fontSize}px`},this.setupAutoRefresh(),this.updateBackendUrl(),this.loadDeviceInfo(),this.loadTokenInfo(),this.settingsTick++},async handleDateSelect(t){if(t)try{const e=this.ensureDate(t),a=this.formatDate(e);if(a===this.state.dateString)return;this.state.dateString=a,this.state.selectedDate=a,this.state.selectedDateObj=e,this.state.isToday=a===this.formatDate(this.getToday()),await Promise.all([this.downloadData(!0),this.loadSubjects()])}catch(e){console.error("Date processing error:",e),this.$message.error("日期处理错误","请重新选择日期")}},setupRealtimeChannel(){try{const t=S("server.kvToken");if(!t){console.warn("未配置 KV Token,无法加入实时频道");return}wt(),We(t),this.$offConnect=ts(()=>We(t)),this.debouncedRealtimeRefresh||(this.debouncedRealtimeRefresh=He(async()=>{var h,k,I;const l=JSON.parse(JSON.stringify(this.state.boardData.homework));await this.downloadData();const n=new Date,o=String(n.getHours()).padStart(2,"0"),d=String(n.getMinutes()).padStart(2,"0"),m=String(n.getSeconds()).padStart(2,"0");(h=this.$message)==null||h.info("数据已更新",`已于 ${o}:${d}:${m} 自动刷新`);const f={};for(const F in this.state.boardData.homework){const H=((k=l[F])==null?void 0:k.content)||"",N=((I=this.state.boardData.homework[F])==null?void 0:I.content)||"";H!==N&&(f[F]=!0)}for(const F in l)this.state.boardData.homework[F]||(f[F]=!0);this.highlightedCards=f,setTimeout(()=>{this.highlightedCards={}},1e4)},800));const e=l=>{var o;if(!l)return;if(l.key==="notification-list"){this.loadPersistentNotifications();return}const n=`classworks-data-${this.state.dateString}`;l.key===n&&(l.action!=="upsert"&&l.action!=="delete"||(o=this.debouncedRealtimeRefresh)==null||o.call(this,l.key))},a=l=>{let n=l;l.content&&l.timestamp&&(n={uuid:l.senderId||"realtime",key:l.content.key,action:l.content.action,created:l.content.created,updatedAt:l.content.updatedAt||l.timestamp,deletedAt:l.content.deletedAt,batch:l.content.batch}),e(n)};this.$offKvChanged=ce("kv-key-changed",a),this.deviceEventHandler=Ct({onKvChanged:e,enableLegacySupport:!0}),this.$offDeviceEvent=ce("device-event",this.deviceEventHandler)}catch(t){console.warn("实时频道初始化失败",t)}},async saveAttendance(){try{await this.trySave(!0),this.state.attendanceDialog=!1}catch(t){console.error("保存出勤状态失败:",t),this.$message.error("保存失败","请重试")}},showMessage(t,e="",a="success"){this.$message[a](t,e)},updateSortedItemsCache(t,e){this._sortedItemsCache={key:t,value:e}},addTestCard(){const t=Date.now().toString();this.state.boardData.homework[`custom-${t}`]={name:"测试卡片",content:`这是一个测试卡片 diff --git a/assets/serverRotation-CjK7Y7P9.js b/assets/serverRotation-BBUKyTw9.js similarity index 93% rename from assets/serverRotation-CjK7Y7P9.js rename to assets/serverRotation-BBUKyTw9.js index fba1fb0..df0c449 100644 --- a/assets/serverRotation-CjK7Y7P9.js +++ b/assets/serverRotation-BBUKyTw9.js @@ -1 +1 @@ -import{k as n}from"./index-BUM0TY0E.js";const u=["https://kv-service.houlang.cloud","https://kv-service.wuyuan.dev"];function f(t){if(t==="classworkscloud")return[...u];const o=n("server.domain");return o?[o]:[]}async function p(t,o={}){const d=o.provider||n("server.provider"),i=o.onServerTried,a=typeof i=="function",v=f(d),r=[];let c=null;for(const s of v)try{r.push({url:s,status:"trying"}),a&&i({url:s,status:"trying",tried:[...r]});const e=await t(s);return r[r.length-1].status="success",a&&i({url:s,status:"success",tried:[...r]}),e}catch(e){c=e,r[r.length-1].status="failed",r[r.length-1].error=e.message||String(e),a&&i({url:s,status:"failed",error:e,tried:[...r]}),console.warn(`Server ${s} failed:`,e.message)}console.error("All servers failed. Tried:",r);const l=c||new Error("All servers failed");throw l.triedServers=r,l}function S(){return n("server.provider")==="classworkscloud"?u[0]:n("server.domain")||""}function h(){return n("server.provider")==="classworkscloud"}export{S as g,h as i,p as t}; +import{k as n}from"./index-BXl8SUNP.js";const u=["https://kv-service.houlang.cloud","https://kv-service.wuyuan.dev"];function f(t){if(t==="classworkscloud")return[...u];const o=n("server.domain");return o?[o]:[]}async function p(t,o={}){const d=o.provider||n("server.provider"),i=o.onServerTried,a=typeof i=="function",v=f(d),r=[];let c=null;for(const s of v)try{r.push({url:s,status:"trying"}),a&&i({url:s,status:"trying",tried:[...r]});const e=await t(s);return r[r.length-1].status="success",a&&i({url:s,status:"success",tried:[...r]}),e}catch(e){c=e,r[r.length-1].status="failed",r[r.length-1].error=e.message||String(e),a&&i({url:s,status:"failed",error:e,tried:[...r]}),console.warn(`Server ${s} failed:`,e.message)}console.error("All servers failed. Tried:",r);const l=c||new Error("All servers failed");throw l.triedServers=r,l}function S(){return n("server.provider")==="classworkscloud"?u[0]:n("server.domain")||""}function h(){return n("server.provider")==="classworkscloud"}export{S as g,h as i,p as t}; diff --git a/assets/settings-BmFKtRQg.js b/assets/settings-D372VNSO.js similarity index 77% rename from assets/settings-BmFKtRQg.js rename to assets/settings-D372VNSO.js index 1a3888e..0a109d4 100644 --- a/assets/settings-BmFKtRQg.js +++ b/assets/settings-D372VNSO.js @@ -1,11 +1,11 @@ -import{s as mn,b as fn,V as mt,a as ft,_ as Ct,c as pn}from"./VCombobox-B-HflrVw.js";import{_ as Y,o as c,j as g,w as n,c as t,ai as ze,q as K,v as o,A as w,t as v,z as j,ag as He,D as k,af as Ke,M as re,l as E,i as m,br as hn,L as Ge,am as _t,bs as Vt,k as _,s as xe,bt as gn,C as x,a0 as L,a1 as ie,y as h,P as J,Q as A,K as M,E as je,aj as tt,F as ne,bu as Be,ac as nt,ak as et,G as ue,x as te,Y as Le,a4 as wn,N as Ve,O as Ae,H as we,aa as Dt,bf as vn,B as bn,g as yn,ar as kn,bv as xn,p as Sn,bw as Cn,bd as At,d as Fe,ae as pt,aU as _n,a2 as ge,R as ht,ap as Vn,Z as Dn,a3 as Me,aP as An,r as Tn,X as In}from"./index-BUM0TY0E.js";import{V as X}from"./VChip-vdRDApTi.js";import{V as Tt}from"./VSwitch-CjVC2rsZ.js";import{e as Je,V as It}from"./filter-ByuXXWRY.js";import{V as R}from"./VTextField-C579e7l1.js";import{d as ae,a as Qe,c as gt,b as jn,o as En,k as Un}from"./dataProvider-MQ8YacC2.js";import{V as $,a as Te}from"./VAlert-DFIvt6kt.js";import{V as de,a as z}from"./VRow-CPw1R1BU.js";import{V as st}from"./VContainer-DakLDC1m.js";import{a as Ce}from"./VPagination-CbPhc6Cb.js";import{V as Ie}from"./VTextarea-jqnFSwaH.js";import{V as jt}from"./VForm-Bz_LQtPX.js";import{V as it,a as lt,b as Et,c as ot}from"./VExpansionPanels-DzF6AfvT.js";import{e as Ut,b as Nn,a as he}from"./VTabsWindowItem-DtW2SDNN.js";import{V as wt}from"./VCheckboxBtn-CylQNaxd.js";import{i as Mn,t as Pn}from"./serverRotation-CjK7Y7P9.js";import{V as vt,a as bt,b as Bn,c as Ln}from"./VAppBarTitle-DZ_l7t3b.js";import{V as zn}from"./VSheet-CuIjBtz7.js";const On={name:"SettingsCard",props:{title:{type:String,required:!0},icon:{type:String,required:!0},loading:{type:Boolean,default:!1}}};function Rn(s,e,a,d,i,l){return c(),g(E,{class:"settings-card rounded-lg",elevation:"2"},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{icon:a.icon,class:"mr-2",size:"large"},null,8,["icon"])]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[o(w(a.title),1)]),_:1})]),_:1}),t(j,null,{default:n(()=>[a.loading?(c(),g(He,{key:0,class:"mb-4",color:"primary",indeterminate:""})):k("",!0),Ke(s.$slots,"default",{},void 0,!0)]),_:3}),s.$slots.actions?(c(),g(re,{key:0,class:"pa-4"},{default:n(()=>[Ke(s.$slots,"actions",{},void 0,!0)]),_:3})):k("",!0)]),_:3})}const ee=Y(On,[["render",Rn],["__scopeId","data-v-9c035df1"]]);var Kn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Fn(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var Nt={exports:{}};(function(s,e){(function(a,d){s.exports=d()})(typeof self<"u"?self:Kn,()=>(()=>{var a={3146:(r,p,u)=>{for(var y=u(3491),T=typeof window>"u"?u.g:window,I=["moz","webkit"],Q="AnimationFrame",H=T["request"+Q],q=T["cancel"+Q]||T["cancelRequest"+Q],fe=0;!H&&fe{var p=r&&r.__esModule?()=>r.default:()=>r;return i.d(p,{a:p}),p},i.d=(r,p)=>{for(var u in p)i.o(p,u)&&!i.o(r,u)&&Object.defineProperty(r,u,{enumerable:!0,get:p[u]})},i.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),i.o=(r,p)=>Object.prototype.hasOwnProperty.call(r,p);var l={};return(()=>{i.d(l,{default:()=>nn});var r=i(3146),p=i.n(r);const u=function(N){return new RegExp(/<[a-z][\s\S]*>/i).test(N)},y=function(N,S){return Math.floor(Math.random()*(S-N+1))+N};var T="TYPE_CHARACTER",I="REMOVE_CHARACTER",Q="REMOVE_ALL",H="REMOVE_LAST_VISIBLE_NODE",q="PAUSE_FOR",fe="CALL_FUNCTION",pe="ADD_HTML_TAG_ELEMENT",ce="CHANGE_DELETE_SPEED",se="CHANGE_DELAY",be="CHANGE_CURSOR",V="PASTE_STRING",b="HTML_TAG";function D(N){return D=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(S){return typeof S}:function(S){return S&&typeof Symbol=="function"&&S.constructor===Symbol&&S!==Symbol.prototype?"symbol":typeof S},D(N)}function P(N,S){var B=Object.keys(N);if(Object.getOwnPropertySymbols){var U=Object.getOwnPropertySymbols(N);S&&(U=U.filter(function(ke){return Object.getOwnPropertyDescriptor(N,ke).enumerable})),B.push.apply(B,U)}return B}function Z(N){for(var S=1;SN.length)&&(S=N.length);for(var B=0,U=Array(S);B1&&arguments[1]!==void 0?arguments[1]:null;if(u(C))return f.typeOutHTMLString(C,F);if(C){var le=(f.options||{}).stringSplitter,oe=typeof le=="function"?le(C):C.split("");f.typeCharacters(oe,F)}return f}),O(this,"pasteString",function(C){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return u(C)?f.typeOutHTMLString(C,F,!0):(C&&f.addEventToQueue(V,{character:C,node:F}),f)}),O(this,"typeOutHTMLString",function(C){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,le=arguments.length>2?arguments[2]:void 0,oe=function(Ee){var Ue=document.createElement("div");return Ue.innerHTML=Ee,Ue.childNodes}(C);if(oe.length>0)for(var W=0;W0&&arguments[0]!==void 0?arguments[0]:"natural";return f.addEventToQueue(Q,{speed:C}),f}),O(this,"changeDeleteSpeed",function(C){if(!C)throw new Error("Must provide new delete speed");return f.addEventToQueue(ce,{speed:C}),f}),O(this,"changeDelay",function(C){if(!C)throw new Error("Must provide new delay");return f.addEventToQueue(se,{delay:C}),f}),O(this,"changeCursor",function(C){if(!C)throw new Error("Must provide new cursor");return f.addEventToQueue(be,{cursor:C}),f}),O(this,"deleteChars",function(C){if(!C)throw new Error("Must provide amount of characters to delete");for(var F=0;F1&&arguments[1]!==void 0?arguments[1]:null;if(!C||!Array.isArray(C))throw new Error("Characters must be an array");return C.forEach(function(le){f.addEventToQueue(T,{character:le,node:F})}),f}),O(this,"removeCharacters",function(C){if(!C||!Array.isArray(C))throw new Error("Characters must be an array");return C.forEach(function(){f.addEventToQueue(I)}),f}),O(this,"addEventToQueue",function(C,F){var le=arguments.length>2&&arguments[2]!==void 0&&arguments[2];return f.addEventToStateProperty(C,F,le,"eventQueue")}),O(this,"addReverseCalledEvent",function(C,F){var le=arguments.length>2&&arguments[2]!==void 0&&arguments[2];return f.options.loop?f.addEventToStateProperty(C,F,le,"reverseCalledEvents"):f}),O(this,"addEventToStateProperty",function(C,F){var le=arguments.length>2&&arguments[2]!==void 0&&arguments[2],oe=arguments.length>3?arguments[3]:void 0,W={eventName:C,eventArgs:F||{}};return f.state[oe]=le?[W].concat(me(f.state[oe])):[].concat(me(f.state[oe]),[W]),f}),O(this,"runEventLoop",function(){f.state.lastFrameTime||(f.state.lastFrameTime=Date.now());var C=Date.now(),F=C-f.state.lastFrameTime;if(!f.state.eventQueue.length){if(!f.options.loop)return;f.state.eventQueue=me(f.state.calledEvents),f.state.calledEvents=[],f.options=Z({},f.state.initialOptions)}if(f.state.eventLoop=p()(f.runEventLoop),!f.state.eventLoopPaused){if(f.state.pauseUntil){if(C({typewriter:null,sourceWriter:null,currentQuote:xt,hasClicked:!1}),mounted(){this.initTypewriters()},methods:{initTypewriters(){this.typewriter=new yt(this.$refs.typewriter,St.main),this.sourceWriter=new yt(this.$refs.sourceWriter,St.source),this.typeQuote(xt)},typeQuote(s){this.typewriter.deleteAll(30).typeString(s.text).start(),s.author&&this.sourceWriter.deleteAll(20).typeString(s.author).start()},async handleClick(){this.hasClicked||(this.hasClicked=!0),await this.copyToClipboard(),this.currentQuote=this.getRandomQuote(),this.typeQuote(this.currentQuote)},getRandomQuote(){return kt.quotes[Math.floor(Math.random()*kt.quotes.length)]},async copyToClipboard(){if(!this.currentQuote)return;const{text:s,author:e,contributor:a,link:d}=this.currentQuote,i=[s,e&&`作者:${e}`,a&&`贡献者:${a}`,(d||a)&&`来源:${d||`https://github.com/${a}`}`].filter(Boolean);try{await navigator.clipboard.writeText(i.join(` -`))}catch(l){console.error("复制失败:",l)}}},beforeUnmount(){[this.typewriter,this.sourceWriter].forEach(s=>s==null?void 0:s.stop())}},Gn={ref:"typewriter",class:"typewriter-text"},Wn={ref:"sourceWriter",class:"source-text"};function Yn(s,e,a,d,i,l){const r=ee;return c(),g(r,{border:"",icon:"mdi-thought-bubble",title:"回声洞",onClick:l.handleClick},{default:n(()=>[t(j,null,{default:n(()=>[m("div",Gn,null,512),m("div",Wn,null,512)]),_:1}),t(hn,{name:"fade"},{default:n(()=>{var p;return[(p=s.currentQuote)!=null&&p.contributor?(c(),g(X,{key:0,class:"contributor"},{default:n(()=>[t(Ge,{start:""},{default:n(()=>[t(_t,{src:`https://github.com/${s.currentQuote.contributor}.png`},null,8,["src"])]),_:1}),o(" "+w(s.currentQuote.contributor),1)]),_:1})):k("",!0)]}),_:1})]),_:1},8,["onClick"])}const Mt=Y(Hn,[["render",Yn],["__scopeId","data-v-a6a55e27"]]),qn={name:"SettingItem",props:{settingKey:{type:String,required:!0},icon:{type:String,default:null},disabled:{type:Boolean,default:!1},title:{type:String,default:null},description:{type:String,default:null}},data(){return{localValue:null,definition:null,type:null,selectOptions:[],hasOptions:!1,minValue:0,maxValue:100,stepValue:1,showSnackbar:!1,snackbarText:"",fontFamilies:[{title:"Arial",value:"Arial, sans-serif"},{title:"Calibri",value:"Calibri, sans-serif"},{title:"Cambria",value:"Cambria, serif"},{title:"Consolas",value:"Consolas, monospace"},{title:"Courier New",value:"Courier New, monospace"},{title:"Georgia",value:"Georgia, serif"},{title:"Helvetica",value:"Helvetica, sans-serif"},{title:"Segoe UI",value:"Segoe UI, sans-serif"},{title:"Times New Roman",value:"Times New Roman, serif"},{title:"Trebuchet MS",value:"Trebuchet MS, sans-serif"},{title:"Verdana",value:"Verdana, sans-serif"},{title:"Monospace",value:"monospace"},{title:"Sans-serif",value:"sans-serif"},{title:"Serif",value:"serif"}],displayValueMappings:{"display.emptySubjectDisplay":{card:"卡片",button:"按钮"},"theme.mode":{light:"浅色",dark:"深色"},"server.provider":{classworkscloud:"Classworks云端存储","kv-local":"KV本地存储","kv-server":"KV远程服务器"}},defaultIcons:{boolean:"mdi-toggle-switch-outline",number:"mdi-numeric",string:"mdi-form-textbox"}}},computed:{displayTitle(){if(this.title)return this.title;if(this.definition&&this.definition.description)return this.definition.description;const s=this.settingKey.split(".");return s[s.length-1]},displayDescription(){return this.description?this.description:this.settingKey},isFontFamily(){return this.settingKey.toLowerCase().includes("fontfamily")||this.settingKey.toLowerCase().includes("font.family")},isDefaultValue(){return this.definition?typeof this.localValue=="object"&&this.localValue!==null?JSON.stringify(this.localValue)===JSON.stringify(this.definition.default):this.localValue===this.definition.default:!0},settingIcon(){return this.icon?this.icon:this.definition&&this.definition.icon?this.definition.icon:this.defaultIcons[this.type]||"mdi-cog-outline"}},created(){this.loadSetting()},methods:{loadSetting(){if(this.definition=gn(this.settingKey),!this.definition){console.error(`未找到设置项定义: ${this.settingKey}`);return}if(this.type=this.definition.type,this.localValue=_(this.settingKey),this.type==="string"){if(this.isFontFamily)this.selectOptions=this.fontFamilies,this.hasOptions=!0;else if(this.settingKey in this.displayValueMappings){const s=this.displayValueMappings[this.settingKey];this.selectOptions=Object.entries(s).map(([e,a])=>({title:a,value:e})),this.hasOptions=!0}else if(this.definition.validate){const e=this.definition.validate.toString().match(/\[(.*?)\]/);if(e){const d=e[1].split(",").map(i=>{const l=i.trim().replace(/['"]/g,"");return{title:this.getDisplayValue(l)||l,value:l}});d.length>0&&(this.selectOptions=d,this.hasOptions=!0)}}}if(this.type==="number"&&this.definition.validate){const s=this.definition.validate.toString(),e=s.match(/value\s*>=\s*(\d+)/);e&&(this.minValue=Number(e[1]));const a=s.match(/value\s*<=\s*(\d+)/);a&&(this.maxValue=Number(a[1]));const d=this.maxValue-this.minValue;d>100?this.stepValue=10:d>20?this.stepValue=5:d>10?this.stepValue=2:this.stepValue=1}},getDisplayValue(s){return this.settingKey in this.displayValueMappings&&this.displayValueMappings[this.settingKey][s]||s},updateSetting(s){let e=s;this.type==="boolean"?e=!!s:this.type==="number"&&(e=Number(s),ethis.maxValue&&(e=this.maxValue)),xe(this.settingKey,e)?this.$emit("update",this.settingKey,e):(this.localValue=_(this.settingKey),this.$emit("error",this.settingKey))},adjustValue(s){if(this.type!=="number")return;const e=this.localValue+s;e>=this.minValue&&e<=this.maxValue&&(this.localValue=e,this.updateSetting(e))},copySettingId(){navigator.clipboard.writeText(this.settingKey).then(()=>{this.showSnackbarMessage("设置ID已复制到剪贴板")}).catch(s=>{console.error("复制失败:",s)})},copySettingValue(){let s="";typeof this.localValue=="object"&&this.localValue!==null?s=JSON.stringify(this.localValue):s=String(this.localValue),navigator.clipboard.writeText(s).then(()=>{this.showSnackbarMessage("设置值已复制到剪贴板")}).catch(e=>{console.error("复制失败:",e)})},resetToDefault(){this.definition&&(Vt(this.settingKey),this.localValue=_(this.settingKey),this.showSnackbarMessage("已重置为默认值"),this.$emit("update",this.settingKey,this.localValue))},showSnackbarMessage(s){this.snackbarText=s,this.showSnackbar=!0}}},Zn={class:"text-caption text-grey-darken-1"},Xn={class:"d-flex flex-column flex-sm-row align-center"},$n={key:0,class:"me-2"},es={key:2,class:"d-flex align-center"},ts={key:0,class:"px-4 pb-2 pt-0"};function ns(s,e,a,d,i,l){return c(),x(ne,null,[t(A,{disabled:a.disabled,class:"setting-item"},{prepend:n(()=>[t(v,{icon:l.settingIcon},null,8,["icon"])]),append:n(()=>[m("div",Xn,[i.type!=="string"||i.hasOptions?(c(),x("div",$n,[i.type==="boolean"?(c(),g(Tt,{key:0,modelValue:i.localValue,"onUpdate:modelValue":[e[0]||(e[0]=r=>i.localValue=r),l.updateSetting],disabled:a.disabled,density:"comfortable","hide-details":""},null,8,["modelValue","disabled","onUpdate:modelValue"])):i.type==="string"&&i.hasOptions?(c(),g(Je,{key:1,modelValue:i.localValue,"onUpdate:modelValue":[e[1]||(e[1]=r=>i.localValue=r),l.updateSetting],disabled:a.disabled,items:i.selectOptions,"bg-color":"surface",class:"setting-select",density:"compact","hide-details":"","item-title":"title","item-value":"value",variant:"outlined"},null,8,["modelValue","disabled","items","onUpdate:modelValue"])):i.type==="number"?(c(),x("div",es,[t(h,{disabled:a.disabled||i.localValue<=i.minValue,icon:"mdi-minus",size:"small",variant:"text",onClick:e[2]||(e[2]=r=>l.adjustValue(-i.stepValue))},null,8,["disabled"]),t(R,{modelValue:i.localValue,"onUpdate:modelValue":[e[3]||(e[3]=r=>i.localValue=r),l.updateSetting],modelModifiers:{number:!0},disabled:a.disabled,max:i.maxValue,min:i.minValue,step:i.stepValue,"bg-color":"surface",class:"mx-2 setting-number-field",density:"compact","hide-details":"",style:{width:"80px"},type:"number",variant:"outlined"},null,8,["modelValue","disabled","max","min","step","onUpdate:modelValue"]),t(h,{disabled:a.disabled||i.localValue>=i.maxValue,icon:"mdi-plus",size:"small",variant:"text",onClick:e[4]||(e[4]=r=>l.adjustValue(i.stepValue))},null,8,["disabled"])])):k("",!0)])):k("",!0),t(It,{location:"bottom"},{activator:n(({props:r})=>[t(h,je({disabled:a.disabled,class:"ml-2",icon:"mdi-dots-vertical",size:"small"},r,{variant:"text"}),null,16,["disabled"])]),default:n(()=>[t(J,{density:"compact"},{default:n(()=>[t(A,{onClick:l.copySettingId},{prepend:n(()=>[t(v,{icon:"mdi-key",size:"small"})]),default:n(()=>[t(L,null,{default:n(()=>[...e[7]||(e[7]=[o("复制设置ID",-1)])]),_:1})]),_:1},8,["onClick"]),t(A,{onClick:l.copySettingValue},{prepend:n(()=>[t(v,{icon:"mdi-content-copy",size:"small"})]),default:n(()=>[t(L,null,{default:n(()=>[...e[8]||(e[8]=[o("复制设置值",-1)])]),_:1})]),_:1},8,["onClick"]),t(M),t(A,{disabled:l.isDefaultValue,onClick:l.resetToDefault},{prepend:n(()=>[t(v,{icon:"mdi-restore",size:"small"})]),default:n(()=>[t(L,null,{default:n(()=>[...e[9]||(e[9]=[o("重置为默认值",-1)])]),_:1})]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})])]),default:n(()=>[t(L,{class:"text-wrap"},{default:n(()=>[o(w(l.displayTitle),1)]),_:1}),t(ie,{class:"d-flex align-center text-wrap"},{default:n(()=>[m("span",Zn,w(a.settingKey),1)]),_:1})]),_:1},8,["disabled"]),i.type==="string"&&!i.hasOptions?(c(),x("div",ts,[t(R,{modelValue:i.localValue,"onUpdate:modelValue":[e[5]||(e[5]=r=>i.localValue=r),l.updateSetting],disabled:a.disabled,"bg-color":"surface",class:"setting-text-field mt-1",density:"compact","hide-details":"",variant:"outlined"},null,8,["modelValue","disabled","onUpdate:modelValue"])])):k("",!0),t(tt,{modelValue:i.showSnackbar,"onUpdate:modelValue":e[6]||(e[6]=r=>i.showSnackbar=r),timeout:2e3,color:"success",location:"top"},{default:n(()=>[o(w(i.snackbarText),1)]),_:1},8,["modelValue"])],64)}const _e=Y(qn,[["render",ns],["__scopeId","data-v-08b49b47"]]),ss={name:"SettingsExplorer",components:{SettingItem:_e},data(){return{searchQuery:"",currentSettings:{},unwatchFunction:null}},computed:{isDeveloperMode(){return _("developer.enabled")},allSettings(){var e;const s=[];for(const[a,d]of Object.entries(et))this.searchQuery&&!a.toLowerCase().includes(this.searchQuery.toLowerCase())&&!((e=d.description)!=null&&e.toLowerCase().includes(this.searchQuery.toLowerCase()))||s.push({key:a,...d});return s},formattedSettings(){return JSON.stringify(this.currentSettings,null,2)}},created(){this.updateCurrentSettings(),this.unwatchFunction=nt(()=>{this.updateCurrentSettings()})},beforeUnmount(){this.unwatchFunction&&this.unwatchFunction()},methods:{updateCurrentSettings(){this.currentSettings=Be()},onSettingUpdate(s,e){this.$emit("update",s,e),this.updateCurrentSettings()},onSettingError(s){this.$emit("error",s)},copySettingsToClipboard(){navigator.clipboard.writeText(JSON.stringify(this.currentSettings)).then(()=>{this.$emit("message",{type:"success",text:"设置已复制到剪贴板"})}).catch(s=>{console.error("复制到剪贴板失败:",s),this.$emit("message",{type:"error",text:"复制到剪贴板失败"})})}}},is={class:"settings-explorer"},ls={class:"settings-json"};function os(s,e,a,d,i,l){const r=_e;return c(),x("div",is,[m("div",null,[t(R,{modelValue:i.searchQuery,"onUpdate:modelValue":e[0]||(e[0]=p=>i.searchQuery=p),class:"mb-4",clearable:"",density:"comfortable",label:"搜索设置","prepend-inner-icon":"mdi-magnify",variant:"outlined"},null,8,["modelValue"]),t(J,null,{default:n(()=>[(c(!0),x(ne,null,ue(l.allSettings,p=>(c(),x("div",{key:p.key},[(c(),g(r,{key:p.key,disabled:p.requireDeveloper&&!l.isDeveloperMode,"setting-key":p.key,onError:l.onSettingError,onUpdate:l.onSettingUpdate},null,8,["disabled","setting-key","onError","onUpdate"])),t(M,{class:"my-2"})]))),128))]),_:1}),t(E,{border:""},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[...e[1]||(e[1]=[o("当前配置",-1)])]),_:1}),t(j,null,{default:n(()=>[m("pre",ls,w(l.formattedSettings),1)]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{onClick:l.copySettingsToClipboard},{default:n(()=>[e[3]||(e[3]=o(" 复制到剪贴板 ",-1)),t(v,{right:""},{default:n(()=>[...e[2]||(e[2]=[o("mdi-content-copy",-1)])]),_:1})]),_:1},8,["onClick"])]),_:1})]),_:1})])])}const Pt=Y(ss,[["render",os],["__scopeId","data-v-4d032f99"]]),as={name:"SettingGroup",props:{title:{type:String,default:null},description:{type:String,default:null},icon:{type:String,default:null},border:{type:Boolean,default:!1}},methods:{onSettingUpdate(s,e){this.$emit("update",s,e)},onSettingError(s){this.$emit("error",s)}}};function rs(s,e,a,d,i,l){return c(),g(E,{border:a.border,class:"setting-group"},{default:n(()=>[a.title?(c(),g(K,{key:0,class:"d-flex align-center"},{default:n(()=>[a.icon?(c(),g(v,{key:0,icon:a.icon,class:"mr-2"},null,8,["icon"])):k("",!0),o(" "+w(a.title),1)]),_:1})):k("",!0),a.description?(c(),g(Le,{key:1},{default:n(()=>[o(w(a.description),1)]),_:1})):k("",!0),t(j,null,{default:n(()=>[t(J,null,{default:n(()=>[Ke(s.$slots,"default",{},void 0,!0)]),_:3})]),_:3}),s.$slots.actions?(c(),g(re,{key:2},{default:n(()=>[Ke(s.$slots,"actions",{},void 0,!0)]),_:3})):k("",!0)]),_:3},8,["border"])}const We=Y(as,[["render",rs],["__scopeId","data-v-9af32ae4"]]),us={subjects:{语文:{books:{课本:["第一单元","第二单元"],练习册:["第一章","第二章"]}},数学:{books:{课本:["第一章","第二章"],习题册:["基础练习","提高练习"]}},英语:{books:{课本:["Unit 1","Unit 2"],练习册:["Chapter 1","Chapter 2"]}}},commonSubject:{books:{试卷:["单元测试","期中测试","期末测试"],假期作业:["必做题","选做题"]}},actions:["写完","下一课","不交","明天交"]},ds={name:"HomeworkTemplateCard",components:{SettingsCard:ee,SettingGroup:We},data(){return{loading:!1,error:null,config:wn(JSON.parse(JSON.stringify(us))),originalConfig:null,newSubject:"",newCommonBook:"",newAction:"",newTask:"",editedSubjects:{},editedBookTypes:{},newBookTypes:{},newBooks:{},showSnackbar:!1,snackbarText:"",snackbarColor:"success",isNewConfig:!0,dialog:{show:!1,title:"",nameLabel:"",editedItem:{name:"",type:"",subject:"",bookType:"",originalName:"",tasks:[]}}}},computed:{subjectList(){return Object.keys(this.config.subjects)},hasChanges(){return this.isNewConfig?!0:this.originalConfig&&JSON.stringify(this.config)!==JSON.stringify(this.originalConfig)}},created(){this.loadConfig()},methods:{async loadConfig(){var s,e;this.loading=!0;try{const a=await ae.loadData("classworks-config-homework-template");if(a){const d=a;Object.assign(this.config,d),this.originalConfig=JSON.parse(JSON.stringify(d)),this.isNewConfig=!1,this.showMessage("配置已加载","success")}else if(((s=a.error)==null?void 0:s.code)==="NOT_FOUND")this.showMessage("使用默认配置","info"),this.isNewConfig=!0;else{const d=((e=a.error)==null?void 0:e.message)||"加载失败";this.showMessage(`加载失败: ${d},可继续编辑当前配置`,"warning")}}catch(a){console.error("Failed to load config:",a),this.showMessage("加载失败,可继续编辑当前配置","warning")}this.loading=!1},async saveConfig(){this.loading=!0;try{const s=await ae.saveData("classworks-config-homework-template",this.config);if(s)this.originalConfig=JSON.parse(JSON.stringify(this.config)),this.isNewConfig=!1,this.showMessage("配置已保存","success");else throw new Error(s||"保存失败")}catch(s){console.error("Failed to save config:",s),this.showMessage(`保存失败: ${s.message},请稍后重试`,"error")}this.loading=!1},showMessage(s,e="success"){this.snackbarText=s,this.snackbarColor=e,this.showSnackbar=!0},addSubject(){this.newSubject&&(this.config.subjects[this.newSubject]||(this.config.subjects[this.newSubject]={books:{}}),this.newSubject="")},updateSubject(s){const e=this.editedSubjects[s];if(e&&e!==s){const a=this.config.subjects[s];this.config.subjects[e]=a,delete this.config.subjects[s]}delete this.editedSubjects[s]},deleteSubject(s){delete this.config.subjects[s]},addBookType(s){const e=this.newBookTypes[s];e&&(this.config.subjects[s].books[e]||(this.config.subjects[s].books[e]=[]),this.newBookTypes[s]="")},updateBookType(s,e){const a=`${s}-${e}`,d=this.editedBookTypes[a];if(d&&d!==e){const i=this.config.subjects[s].books[e];this.config.subjects[s].books[d]=i,delete this.config.subjects[s].books[e]}delete this.editedBookTypes[a]},deleteBookType(s,e){s==="common"?delete this.config.commonSubject.books[e]:delete this.config.subjects[s].books[e]},addBook(s,e){const a=`${s}-${e}`,d=this.newBooks[a];d&&(this.config.subjects[s].books[e].includes(d)||this.config.subjects[s].books[e].push(d),this.newBooks[a]="")},removeBook(s,e,a){const d=this.config.subjects[s].books[e],i=d.indexOf(a);i>-1&&d.splice(i,1)},addCommonBook(){this.newCommonBook&&(this.config.commonSubject.books[this.newCommonBook]||(this.config.commonSubject.books[this.newCommonBook]=[]),this.newCommonBook="")},removeCommonBook(s){delete this.config.commonSubject.books[s]},addAction(){this.newAction&&(this.config.actions.includes(this.newAction)||this.config.actions.push(this.newAction),this.newAction="")},removeAction(s){const e=this.config.actions.indexOf(s);e>-1&&this.config.actions.splice(e,1)},openBookDialog(s,e,a){this.dialog.show=!0,this.dialog.title="编辑需完成部分",this.dialog.nameLabel="部分名称",this.dialog.editedItem={name:a,type:"book",subject:s,bookType:e,originalName:a,tasks:this.config.subjects[s].books[e]}},openCommonBookDialog(s){this.dialog.show=!0,this.dialog.title="编辑通用作业本",this.dialog.nameLabel="作业本名称",this.dialog.editedItem={name:s,type:"commonBook",originalName:s,tasks:Array.isArray(this.config.commonSubject.books[s])?[...this.config.commonSubject.books[s]]:[]}},openActionDialog(s){this.dialog={show:!0,title:"编辑操作",nameLabel:"操作名称",editedItem:{name:s,type:"action",originalName:s,tasks:[]}}},addTask(){this.newTask&&(this.dialog.editedItem.tasks||(this.dialog.editedItem.tasks=[]),this.dialog.editedItem.tasks.push(this.newTask),this.newTask="")},removeTask(s){this.dialog.editedItem.tasks.splice(s,1)},openSubjectBookDialog(s,e,a){this.dialog.show=!0,this.dialog.title=s==="common"?"编辑通用作业本":"编辑作业本",this.dialog.nameLabel="作业本名称",this.dialog.editedItem={name:e,type:"subjectBook",subject:s,originalName:e,tasks:Array.isArray(a)?[...a]:[]}},saveDialog(){const{type:s,name:e,subject:a,originalName:d,tasks:i}=this.dialog.editedItem;if(!e){this.showMessage("名称不能为空","error");return}let l;const r=a==="common"?this.config.commonSubject.books:a?this.config.subjects[a].books:null;switch(s){case"subjectBook":r&&(d!==e?(r[e]=i||[],delete r[d]):r[e]=i||[]);break;case"action":l=this.config.actions.indexOf(d),l>-1&&(this.config.actions[l]=e);break}this.closeDialog()},closeDialog(){this.dialog={show:!1,title:"",nameLabel:"",editedItem:{name:"",type:"",subject:"",originalName:"",tasks:[]}},this.newTask=""}}},cs={class:"d-flex justify-space-between align-center mb-6"};function ms(s,e,a,d,i,l){const r=We,p=ee;return c(),g(p,{loading:i.loading,border:"",icon:"mdi-book-edit",title:"作业模板配置"},{default:n(()=>[i.error?(c(),g($,{key:0,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):k("",!0),m("div",cs,[m("div",null,[t(h,{loading:i.loading,class:"mr-2",color:"primary","prepend-icon":"mdi-refresh",size:"large",onClick:l.loadConfig},{default:n(()=>[...e[7]||(e[7]=[o(" 重新加载配置 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{loading:i.loading,color:"success","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveConfig},{default:n(()=>[...e[8]||(e[8]=[o(" 保存所有更改 ",-1)])]),_:1},8,["loading","onClick"])]),l.hasChanges?(c(),g(X,{key:0,color:"warning",variant:"elevated"},{default:n(()=>[...e[9]||(e[9]=[o(" 有未保存的更改 ",-1)])]),_:1})):k("",!0)]),t(de,null,{default:n(()=>[t(z,{cols:"12",md:"6"},{default:n(()=>[t(r,{border:"",icon:"mdi-book",title:"科目配置"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{default:n(()=>[t(R,{modelValue:i.newSubject,"onUpdate:modelValue":e[0]||(e[0]=u=>i.newSubject=u),"append-inner-icon":"mdi-plus",density:"comfortable",label:"添加新科目",variant:"outlined","onClick:appendInner":l.addSubject,onKeyup:Ve(l.addSubject,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1}),(c(!0),x(ne,null,ue(l.subjectList,u=>(c(),g(A,{key:u},{default:n(()=>[t(E,{border:"",class:"w-100 mb-2"},{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(R,{modelValue:i.editedSubjects[u],"onUpdate:modelValue":y=>i.editedSubjects[u]=y,placeholder:u,density:"comfortable","hide-details":"",variant:"plain",onBlur:y=>l.updateSubject(u)},null,8,["modelValue","onUpdate:modelValue","placeholder","onBlur"]),t(te),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:y=>l.deleteSubject(u)},null,8,["onClick"])]),_:2},1024),t(j,null,{default:n(()=>[t(R,{modelValue:i.newBookTypes[u],"onUpdate:modelValue":y=>i.newBookTypes[u]=y,"append-inner-icon":"mdi-plus",class:"mb-2",density:"comfortable",label:"添加作业本名称",variant:"outlined","onClick:appendInner":()=>l.addBookType(u),onKeyup:Ve(()=>l.addBookType(u),["enter"])},null,8,["modelValue","onUpdate:modelValue","onClick:appendInner","onKeyup"]),t(J,{border:"",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,ue(i.config.subjects[u].books,(y,T)=>(c(),g(A,{key:T,title:T,onClick:I=>l.openSubjectBookDialog(u,T,y)},{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-book-open-variant"})]),append:n(()=>[t(X,{class:"mr-2",color:"info",size:"small"},{default:n(()=>[o(w(y.length)+"个部分 ",1)]),_:2},1024),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:Ae(()=>l.deleteBookType(u,T),["stop"])},null,8,["onClick"])]),_:2},1032,["title","onClick"]))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),t(z,{cols:"12",md:"6"},{default:n(()=>[t(r,{border:"",icon:"mdi-cog",title:"通用配置"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{default:n(()=>[t(R,{modelValue:i.newCommonBook,"onUpdate:modelValue":e[1]||(e[1]=u=>i.newCommonBook=u),"append-inner-icon":"mdi-plus",density:"comfortable",label:"添加作业本名称",variant:"outlined","onClick:appendInner":l.addCommonBook,onKeyup:Ve(l.addCommonBook,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1}),t(A,null,{default:n(()=>[t(J,{border:"",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,ue(i.config.commonSubject.books,(u,y)=>(c(),g(A,{key:y,title:y,onClick:T=>l.openSubjectBookDialog("common",y,u)},{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-book-multiple"})]),append:n(()=>[t(X,{class:"mr-2",color:"info",size:"small"},{default:n(()=>[o(w(u.length)+"个部分 ",1)]),_:2},1024),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:Ae(()=>l.deleteBookType("common",y),["stop"])},null,8,["onClick"])]),_:2},1032,["title","onClick"]))),128))]),_:1})]),_:1}),t(M,{class:"my-2"}),t(A,null,{default:n(()=>[t(R,{modelValue:i.newAction,"onUpdate:modelValue":e[2]||(e[2]=u=>i.newAction=u),"append-inner-icon":"mdi-plus",density:"comfortable",label:"添加操作",variant:"outlined","onClick:appendInner":l.addAction,onKeyup:Ve(l.addAction,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1}),t(A,null,{default:n(()=>[t(J,{border:"",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,ue(i.config.actions,u=>(c(),g(A,{key:u,title:u,onClick:y=>l.openActionDialog(u)},{append:n(()=>[t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:Ae(y=>l.removeAction(u),["stop"])},null,8,["onClick"])]),_:2},1032,["title","onClick"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),t(we,{modelValue:i.dialog.show,"onUpdate:modelValue":e[5]||(e[5]=u=>i.dialog.show=u),"max-width":"600px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"text-h5 pa-4"},{default:n(()=>[o(w(i.dialog.title),1)]),_:1}),t(j,null,{default:n(()=>[t(st,null,{default:n(()=>[t(de,null,{default:n(()=>[t(z,{cols:"12"},{default:n(()=>[t(R,{modelValue:i.dialog.editedItem.name,"onUpdate:modelValue":e[3]||(e[3]=u=>i.dialog.editedItem.name=u),label:i.dialog.nameLabel,rules:[u=>!!u||"名称不能为空"],density:"comfortable",variant:"outlined"},null,8,["modelValue","label","rules"])]),_:1}),i.dialog.editedItem.type==="subjectBook"?(c(),g(z,{key:0,cols:"12"},{default:n(()=>[e[10]||(e[10]=m("div",{class:"text-subtitle-2 mb-2"},"所属科目",-1)),t(X,{color:"primary"},{default:n(()=>[o(w(i.dialog.editedItem.subject),1)]),_:1})]),_:1})):k("",!0),["subjectBook","commonBook"].includes(i.dialog.editedItem.type)?(c(),g(z,{key:1,cols:"12"},{default:n(()=>[t(E,{variant:"outlined"},{default:n(()=>[t(K,{class:"text-subtitle-1 py-2"},{default:n(()=>[...e[11]||(e[11]=[o("需完成部分",-1)])]),_:1}),t(j,{class:"pt-0"},{default:n(()=>[t(J,{border:"",class:"mb-2",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,ue(i.dialog.editedItem.tasks,(u,y)=>(c(),g(A,{key:y},{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-checkbox-blank-circle-outline",size:"small"})]),append:n(()=>[t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:T=>l.removeTask(y)},null,8,["onClick"])]),default:n(()=>[t(R,{modelValue:i.dialog.editedItem.tasks[y],"onUpdate:modelValue":T=>i.dialog.editedItem.tasks[y]=T,density:"compact","hide-details":"",variant:"plain"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024))),128))]),_:1}),t(R,{modelValue:i.newTask,"onUpdate:modelValue":e[4]||(e[4]=u=>i.newTask=u),"append-inner-icon":"mdi-plus",class:"mt-2",density:"comfortable",label:"添加需完成部分",variant:"outlined","onClick:appendInner":l.addTask,onKeyup:Ve(l.addTask,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1})]),_:1})]),_:1})):k("",!0)]),_:1})]),_:1})]),_:1}),t(re,{class:"pa-4"},{default:n(()=>[t(te),t(h,{color:"primary",variant:"elevated",onClick:l.saveDialog},{default:n(()=>[...e[12]||(e[12]=[o(" 关闭 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"error",variant:"text",onClick:l.closeDialog},{default:n(()=>[...e[13]||(e[13]=[o(" 取消 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(tt,{modelValue:i.showSnackbar,"onUpdate:modelValue":e[6]||(e[6]=u=>i.showSnackbar=u),color:i.snackbarColor,timeout:3e3},{default:n(()=>[o(w(i.snackbarText),1)]),_:1},8,["modelValue","color"])]),_:1},8,["loading"])}const Bt=Y(ds,[["render",ms],["__scopeId","data-v-67769fa2"]]),fs={name:"SubjectManagementCard",components:{SettingsCard:ee},data(){return{loading:!1,error:null,subjects:[],originalSubjects:null,newSubjectName:"",showSnackbar:!1,snackbarText:"",snackbarColor:"success",defaultSubjects:[{name:"语文",order:0},{name:"数学",order:1},{name:"英语",order:2},{name:"物理",order:3},{name:"化学",order:4},{name:"生物",order:5},{name:"政治",order:6},{name:"历史",order:7},{name:"地理",order:8},{name:"其他",order:9}]}},computed:{hasChanges(){return this.originalSubjects&&JSON.stringify(this.subjects)!==JSON.stringify(this.originalSubjects)}},created(){this.loadConfig()},methods:{async loadConfig(){this.loading=!0;try{const s=await ae.loadData("classworks-config-subject");s?(this.subjects=s.map((e,a)=>({name:e.name,order:e.order??a})).sort((e,a)=>e.order-a.order),this.originalSubjects=JSON.parse(JSON.stringify(this.subjects)),this.showMessage("配置已加载","success")):(this.subjects=[],this.originalSubjects=[],this.showMessage("使用默认配置","info"))}catch(s){console.error("Failed to load config:",s),this.showMessage("加载失败,可继续编辑当前配置","warning")}this.loading=!1},async saveConfig(){this.loading=!0;try{const s=await ae.saveData("classworks-config-subject",this.subjects);if(s)this.originalSubjects=JSON.parse(JSON.stringify(this.subjects)),this.showMessage("配置已保存","success");else throw new Error(s||"保存失败")}catch(s){console.error("Failed to save config:",s),this.showMessage(`保存失败: ${s.message},请稍后重试`,"error")}this.loading=!1},showMessage(s,e="success"){this.snackbarText=s,this.snackbarColor=e,this.showSnackbar=!0},addSubject(){if(!this.newSubjectName)return;const s={name:this.newSubjectName,order:this.subjects.length};this.subjects.push(s),this.newSubjectName=""},updateSubject(s){const e=this.subjects.findIndex(a=>a.order===s.order);e>-1&&(this.subjects[e]={...s})},deleteSubject(s){const e=this.subjects.findIndex(a=>a.order===s.order);e>-1&&(this.subjects.splice(e,1),this.subjects.forEach((a,d)=>{a.order=d}))},moveSubject(s,e){const a=s+e;if(a>=0&&a{i.order=l})}},resetToDefault(){this.subjects=JSON.parse(JSON.stringify(this.defaultSubjects)),this.showMessage("已重置为默认科目列表","info")}}},ps={class:"d-flex justify-space-between align-center mb-6"},hs={class:"d-flex flex-column align-center mr-2"};function gs(s,e,a,d,i,l){const r=ee;return c(),g(r,{loading:i.loading,border:"",icon:"mdi-book-multiple",title:"科目管理"},{default:n(()=>[i.error?(c(),g($,{key:0,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):k("",!0),m("div",ps,[m("div",null,[t(h,{loading:i.loading,class:"mr-2",color:"primary","prepend-icon":"mdi-refresh",size:"large",variant:"text",onClick:l.loadConfig},{default:n(()=>[...e[2]||(e[2]=[o(" 重新加载 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{loading:i.loading,color:"success","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveConfig},{default:n(()=>[...e[3]||(e[3]=[o(" 保存 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{loading:i.loading,class:"mr-2","prepend-icon":"mdi-restore",variant:"text",onClick:l.resetToDefault},{default:n(()=>[...e[4]||(e[4]=[o(" 重置为默认 ",-1)])]),_:1},8,["loading","onClick"])]),l.hasChanges?(c(),g(X,{key:0,color:"warning",variant:"elevated"},{default:n(()=>[...e[5]||(e[5]=[o(" 有未保存的更改 ",-1)])]),_:1})):k("",!0)]),t(E,{class:"mb-4",variant:"outlined"},{default:n(()=>[t(j,null,{default:n(()=>[t(de,null,{default:n(()=>[t(z,{cols:"12",sm:"6"},{default:n(()=>[t(R,{modelValue:i.newSubjectName,"onUpdate:modelValue":e[0]||(e[0]=p=>i.newSubjectName=p),rules:[p=>!!p||"科目名称不能为空"],"append-inner-icon":"mdi-plus",density:"comfortable",label:"科目名称",variant:"outlined",onKeyup:Ve(l.addSubject,["enter"]),"onClick:appendInner":l.addSubject},null,8,["modelValue","rules","onKeyup","onClick:appendInner"])]),_:1})]),_:1})]),_:1})]),_:1}),t(E,{variant:"outlined"},{default:n(()=>[t(j,{class:"pa-0"},{default:n(()=>[t(J,{lines:"one"},{default:n(()=>[(c(!0),x(ne,null,ue(i.subjects,(p,u)=>(c(),g(A,{key:p.order},{prepend:n(()=>[m("div",hs,[t(h,{disabled:u===0,icon:"mdi-chevron-up",size:"small",variant:"text",onClick:y=>l.moveSubject(u,-1)},null,8,["disabled","onClick"]),t(h,{disabled:u===i.subjects.length-1,icon:"mdi-chevron-down",size:"small",variant:"text",onClick:y=>l.moveSubject(u,1)},null,8,["disabled","onClick"])])]),append:n(()=>[t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:y=>l.deleteSubject(p)},null,8,["onClick"])]),default:n(()=>[t(L,null,{default:n(()=>[t(R,{modelValue:p.name,"onUpdate:modelValue":y=>p.name=y,density:"compact","hide-details":"",variant:"plain",onBlur:y=>l.updateSubject(p)},null,8,["modelValue","onUpdate:modelValue","onBlur"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),t(tt,{modelValue:i.showSnackbar,"onUpdate:modelValue":e[1]||(e[1]=p=>i.showSnackbar=p),color:i.snackbarColor,timeout:3e3},{default:n(()=>[o(w(i.snackbarText),1)]),_:1},8,["modelValue","color"])]),_:1},8,["loading"])}const Lt=Y(fs,[["render",gs],["__scopeId","data-v-f87674cf"]]),ws={};function vs(s,e,a,d,i,l){const r=_e,p=ee;return c(),g(p,{icon:"mdi-cog",title:"编辑设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"randomPicker.enabled"}),t(M,{class:"my-2"}),t(r,{"setting-key":"randomPicker.mode"}),t(M,{class:"my-2"}),t(r,{"setting-key":"randomPicker.minNumber"}),t(M,{class:"my-2"}),t(r,{"setting-key":"randomPicker.maxNumber"}),t(M,{class:"my-2"}),t(r,{"setting-key":"randomPicker.defaultCount"}),t(M,{class:"my-2"}),t(r,{"setting-key":"randomPicker.animation"})]),_:1})]),_:1})}const zt=Y(ws,[["render",vs]]),bs={name:"HitokotoSettings",components:{SettingGroup:We,SettingItem:_e},data(){return{kvConfig:{sources:["zhaoyu"],sensitiveWords:"",jinrishiciToken:null},loading:!1,testLoading:!1,testMessage:"",testColor:"info",testResultDialog:!1,testResultData:null,enableCloudSensitiveWords:!0}},mounted(){this.loadKvSettings()},methods:{async loadKvSettings(){this.loading=!0;try{const s=await ae.loadData("sentence-info");let e=s;s&&s.data&&(e=s.data),e&&(this.kvConfig={sources:Array.isArray(e.sources)?e.sources:["zhaoyu"],sensitiveWords:e.sensitiveWords||"",jinrishiciToken:e.jinrishiciToken})}catch(s){console.error("Failed to load sentence-info",s)}finally{this.loading=!1}},async saveKvSettings(){this.loading=!0;try{if(this.kvConfig.sources.includes("jinrishici")&&!this.kvConfig.jinrishiciToken)try{const s=await Qe.get("https://v2.jinrishici.com/token");s.data.status==="success"&&(this.kvConfig.jinrishiciToken=s.data.data)}catch(s){console.error("Failed to get jinrishici token",s)}await ae.saveData("sentence-info",this.kvConfig)}catch(s){console.error("Failed to save sentence-info",s)}finally{this.loading=!1}},async testJinrishici(){var s,e;this.testLoading=!0,this.testMessage="",this.testColor="info";try{const a={};this.kvConfig.jinrishiciToken&&(a["X-User-Token"]=this.kvConfig.jinrishiciToken);const d=await Qe.get("https://v2.jinrishici.com/info?X-User-Token="+encodeURIComponent(this.kvConfig.jinrishiciToken));if(d.data&&d.data.status==="success"){this.testResultData=d.data,this.testResultDialog=!0;const i=(s=d.data.data)==null?void 0:s.token,l=(e=d.data.data)==null?void 0:e.region,r=this.kvConfig.jinrishiciToken?i===this.kvConfig.jinrishiciToken:!0;this.testColor=r?"success":"warning",this.testMessage=r?`接口正常,Token 一致:${i}${l?`,地区:${l}`:""}`:`接口返回 Token 与当前设置不一致:${i}${l?`,地区:${l}`:""}`}else this.testColor="error",this.testMessage="接口返回非 success,请检查网络或 Token 配置。"}catch(a){console.error("Failed to test jinrishici info",a),this.testColor="error",this.testMessage="接口测试失败,请检查网络或 Token。"}finally{this.testLoading=!1}}}},ys={class:"d-flex flex-wrap gap-2"},ks={class:"text-caption text-orange mt-2"},xs={class:"d-flex flex-column flex-sm-row align-center w-100"},Ss={key:2,class:"text-center pb-4"},Cs={class:"d-flex align-center mb-2"},_s={class:"text-body-1 font-weight-medium"},Vs={class:"d-flex align-center mb-2"},Ds={class:"text-body-1 font-weight-medium"},As={class:"d-flex align-center mb-2"},Ts={class:"text-body-1 font-weight-medium"},Is={class:"d-flex align-center mb-2"},js={class:"text-body-2 font-weight-medium"},Es={class:"d-flex align-center mb-2"},Us={class:"text-body-1 font-weight-medium"},Ns={class:"d-flex align-center mb-2"},Ms={class:"text-body-1 font-weight-medium"},Ps={class:"px-4 py-3"},Bs={class:"d-flex flex-wrap gap-2"};function Ls(s,e,a,d,i,l){const r=_e,p=We;return c(),x("div",null,[t(p,{title:"一言设置",icon:"mdi-comment-quote"},{default:n(()=>[t(r,{"setting-key":"hitokoto.enabled"}),t(r,{"setting-key":"hitokoto.refreshInterval"})]),_:1}),t(p,{title:"数据源配置",icon:"mdi-cloud-sync",class:"mt-4"},{default:n(()=>[e[13]||(e[13]=m("div",{class:"text-caption text-grey px-4 pt-2 pb-2"},"以下配置将同步到云端,对所有连接此班级的设备生效。",-1)),t(A,null,{default:n(()=>[t(L,{class:"mb-2"},{default:n(()=>[...e[7]||(e[7]=[o("启用数据源",-1)])]),_:1}),m("div",ys,[t(Ce,{modelValue:i.kvConfig.sources,"onUpdate:modelValue":[e[0]||(e[0]=u=>i.kvConfig.sources=u),l.saveKvSettings],label:"一言 (Hitokoto)",value:"hitokoto","hide-details":"",density:"compact",class:"mr-4",disabled:i.loading},null,8,["modelValue","disabled","onUpdate:modelValue"]),t(Ce,{modelValue:i.kvConfig.sources,"onUpdate:modelValue":[e[1]||(e[1]=u=>i.kvConfig.sources=u),l.saveKvSettings],label:"诏预 (Zhaoyu)",value:"zhaoyu","hide-details":"",density:"compact",class:"mr-4",disabled:i.loading},null,8,["modelValue","disabled","onUpdate:modelValue"]),t(Ce,{modelValue:i.kvConfig.sources,"onUpdate:modelValue":[e[2]||(e[2]=u=>i.kvConfig.sources=u),l.saveKvSettings],label:"今日诗词 (Jinrishici)",value:"jinrishici","hide-details":"",density:"compact",disabled:i.loading},null,8,["modelValue","disabled","onUpdate:modelValue"])]),m("div",ks,[t(v,{size:"x-small",color:"orange",class:"mr-1"},{default:n(()=>[...e[8]||(e[8]=[o("mdi-alert",-1)])]),_:1}),e[9]||(e[9]=o(" 一言(Hitokoto)数据源已收到关于存在负面内容的大量反馈,请用户谨慎启用。 ",-1))])]),_:1}),i.kvConfig.sources.includes("jinrishici")?(c(),g(A,{key:0},{default:n(()=>[t(R,{modelValue:i.kvConfig.jinrishiciToken,"onUpdate:modelValue":e[3]||(e[3]=u=>i.kvConfig.jinrishiciToken=u),label:"今日诗词 Token",variant:"outlined",density:"comfortable",disabled:i.loading,hint:"留空则自动获取,也可以手动输入已有 Token","persistent-hint":"",class:"mt-2",onChange:l.saveKvSettings},null,8,["modelValue","disabled","onChange"])]),_:1})):k("",!0),i.kvConfig.sources.includes("jinrishici")?(c(),g(A,{key:1},{default:n(()=>[m("div",xs,[t(h,{loading:i.testLoading,color:"primary",variant:"outlined",class:"mr-sm-4 mb-2 mb-sm-0",onClick:l.testJinrishici},{default:n(()=>[...e[10]||(e[10]=[o(" 测试今日诗词接口 ",-1)])]),_:1},8,["loading","onClick"]),i.testMessage?(c(),g($,{key:0,type:i.testColor,density:"comfortable",border:"start",class:"flex-grow-1"},{default:n(()=>[o(w(i.testMessage),1)]),_:1},8,["type"])):k("",!0)])]),_:1})):k("",!0),t(A,null,{default:n(()=>[t(Ie,{modelValue:i.kvConfig.sensitiveWords,"onUpdate:modelValue":e[4]||(e[4]=u=>i.kvConfig.sensitiveWords=u),disabled:i.loading,label:"敏感词过滤 (用逗号分隔)",variant:"outlined",rows:"3","auto-grow":"","hide-details":"",class:"mt-2 mb-2",onChange:l.saveKvSettings},null,8,["modelValue","disabled","onChange"])]),_:1}),t(A,null,{default:n(()=>[t(Ce,{label:"启用云端敏感词列表","hide-details":"",modelValue:i.enableCloudSensitiveWords,"onUpdate:modelValue":e[5]||(e[5]=u=>i.enableCloudSensitiveWords=u),density:"compact",disabled:"",class:"mb-2"},null,8,["modelValue"]),e[11]||(e[11]=m("div",{class:"text-caption text-grey"},[o(" 已启用的数据源将在获取一言时随机尝试,直到成功获取内容为止。"),m("br"),o(" 敏感词过滤会将包含任意敏感词的句子过滤掉,避免显示不当内容。"),m("br")],-1))]),_:1}),i.loading?(c(),x("div",Ss,[t(Dt,{indeterminate:"",size:"24",color:"primary"}),e[12]||(e[12]=m("span",{class:"ml-2 text-caption"},"正在同步配置...",-1))])):k("",!0)]),_:1}),t(we,{modelValue:i.testResultDialog,"onUpdate:modelValue":e[6]||(e[6]=u=>i.testResultDialog=u),"max-width":"600"},{default:n(()=>[i.testResultData?(c(),g(E,{key:0,class:"rounded-lg"},{default:n(()=>[t(j,{class:"pa-0"},{default:n(()=>[t(J,{lines:"two",class:"py-0"},{default:n(()=>[t(A,{class:"px-4 py-3"},{prepend:n(()=>[t(Ge,{color:"primary",variant:"tonal",class:"mr-2"},{default:n(()=>[t(v,{icon:"mdi-key-variant"})]),_:1})]),default:n(()=>[t(L,{class:"text-subtitle-2 font-weight-bold mb-1"},{default:n(()=>[...e[14]||(e[14]=[o("Token",-1)])]),_:1}),t(ie,{class:"text-body-2 text-high-emphasis",style:{"word-break":"break-all"}},{default:n(()=>[o(w(i.testResultData.data.token),1)]),_:1})]),_:1}),t(M),t(de,{"no-gutters":""},{default:n(()=>[t(z,{cols:"6"},{default:n(()=>[t(A,{class:"px-4 py-2"},{prepend:n(()=>[t(v,{icon:"mdi-ip-network",color:"grey-darken-1",class:"mr-2"})]),default:n(()=>[t(L,{class:"text-caption text-grey-darken-1"},{default:n(()=>[...e[15]||(e[15]=[o("IP 地址",-1)])]),_:1}),t(ie,{class:"text-body-2"},{default:n(()=>[o(w(i.testResultData.data.ip),1)]),_:1})]),_:1})]),_:1}),t(z,{cols:"6"},{default:n(()=>[t(A,{class:"px-4 py-2"},{prepend:n(()=>[t(v,{icon:"mdi-map-marker-radius",color:"grey-darken-1",class:"mr-2"})]),default:n(()=>[t(L,{class:"text-caption text-grey-darken-1"},{default:n(()=>[...e[16]||(e[16]=[o("地区",-1)])]),_:1}),t(ie,{class:"text-body-2"},{default:n(()=>[o(w(i.testResultData.data.region),1)]),_:1})]),_:1})]),_:1})]),_:1}),t(M),t(st,{class:"px-4 py-3"},{default:n(()=>[t(de,{dense:""},{default:n(()=>[t(z,{cols:"6",sm:"4"},{default:n(()=>[m("div",Cs,[t(v,{icon:"mdi-thermometer",color:"orange",class:"mr-2"}),m("div",null,[e[17]||(e[17]=m("div",{class:"text-caption text-grey"},"温度",-1)),m("div",_s,w(i.testResultData.data.weatherData.temperature)+"°C",1)])])]),_:1}),t(z,{cols:"6",sm:"4"},{default:n(()=>[m("div",Vs,[t(v,{icon:"mdi-weather-cloudy",color:"blue-grey",class:"mr-2"}),m("div",null,[e[18]||(e[18]=m("div",{class:"text-caption text-grey"},"天气",-1)),m("div",Ds,w(i.testResultData.data.weatherData.weather),1)])])]),_:1}),t(z,{cols:"6",sm:"4"},{default:n(()=>[m("div",As,[t(v,{icon:"mdi-water-percent",color:"blue",class:"mr-2"}),m("div",null,[e[19]||(e[19]=m("div",{class:"text-caption text-grey"},"湿度",-1)),m("div",Ts,w(i.testResultData.data.weatherData.humidity)+"%",1)])])]),_:1}),t(z,{cols:"6",sm:"4"},{default:n(()=>[m("div",Is,[t(v,{icon:"mdi-weather-windy",color:"teal",class:"mr-2"}),m("div",null,[e[20]||(e[20]=m("div",{class:"text-caption text-grey"},"风向/风力",-1)),m("div",js,w(i.testResultData.data.weatherData.windDirection)+" "+w(i.testResultData.data.weatherData.windPower)+"级 ",1)])])]),_:1}),t(z,{cols:"6",sm:"4"},{default:n(()=>[m("div",Es,[t(v,{icon:"mdi-blur",color:"grey",class:"mr-2"}),m("div",null,[e[21]||(e[21]=m("div",{class:"text-caption text-grey"},"PM2.5",-1)),m("div",Us,w(i.testResultData.data.weatherData.pm25),1)])])]),_:1}),t(z,{cols:"6",sm:"4"},{default:n(()=>[m("div",Ns,[t(v,{icon:"mdi-eye",color:"indigo",class:"mr-2"}),m("div",null,[e[22]||(e[22]=m("div",{class:"text-caption text-grey"},"能见度",-1)),m("div",Ms,w(i.testResultData.data.weatherData.visibility),1)])])]),_:1})]),_:1})]),_:1}),t(M),m("div",Ps,[e[23]||(e[23]=m("div",{class:"text-caption text-grey mb-2"},"环境标签",-1)),m("div",Bs,[(c(!0),x(ne,null,ue(i.testResultData.data.tags,u=>(c(),g(X,{key:u,size:"small",color:"primary",variant:"tonal",class:"mr-1 mb-1"},{default:n(()=>[o(w(u),1)]),_:2},1024))),128))])]),t(M),t(A,{class:"px-4 py-2"},{prepend:n(()=>[t(v,{icon:"mdi-clock-outline",size:"small",class:"mr-2"})]),default:n(()=>[t(L,{class:"text-caption text-grey-darken-1"},{default:n(()=>[o(" 北京时间: "+w(new Date(i.testResultData.data.beijingTime).toLocaleString()),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})):k("",!0)]),_:1},8,["modelValue"])])}const Ot=Y(bs,[["render",Ls]]),zs={name:"NotificationSoundSettings",data(){return{singleSound:"",urgentSound:"",currentAudio:null,showAutoplayWarning:!0}},computed:{soundOptions(){return fn.map(s=>({title:s.replace(".mp3",""),value:s}))}},mounted(){this.loadSettings()},beforeUnmount(){this.stopPreview()},methods:{loadSettings(){this.singleSound=_("notification.singleSound"),this.urgentSound=_("notification.urgentSound")},onSingleSoundChange(s){var e;xe("notification.singleSound",s),(e=this.$message)==null||e.success("设置已保存",`单次通知铃声: ${s}`)},onUrgentSoundChange(s){var e;xe("notification.urgentSound",s),(e=this.$message)==null||e.success("设置已保存",`紧急通知铃声: ${s}`)},async previewSound(s){var e,a;this.showAutoplayWarning=!1,this.stopPreview();try{const d=await this.playSoundWithPromise(s,!1);this.currentAudio=d,this.currentAudio&&this.currentAudio.addEventListener("ended",()=>{this.currentAudio=null},{once:!0})}catch(d){console.error("播放音频失败:",d),d.name==="NotAllowedError"?(e=this.$message)==null||e.warning("无法播放音频","浏览器阻止了自动播放,请再次点击试听按钮"):(a=this.$message)==null||a.error("播放失败","音频文件加载失败,请稍后重试")}},playSoundWithPromise(s,e=!1){return new Promise((a,d)=>{const i=this.getSoundPath(s);if(!i){d(new Error("音频文件不存在"));return}try{const l=new Audio(i);l.loop=e,l.play().then(()=>{a(l)}).catch(r=>{d(r)})}catch(l){d(l)}})},getSoundPath(s){if(!s)return null;try{return`/sounds/${s}`}catch{return null}},stopPreview(){this.currentAudio&&(mn(this.currentAudio),this.currentAudio=null)},resetSingleSound(){var s;this.singleSound="Teams 默认.mp3",xe("notification.singleSound",this.singleSound),(s=this.$message)==null||s.success("已恢复单次通知铃声默认设置")},resetUrgentSound(){var s;this.urgentSound="Teams 默认通话铃.mp3",xe("notification.urgentSound",this.urgentSound),(s=this.$message)==null||s.success("已恢复紧急通知铃声默认设置")}}},Os={class:"d-flex align-center"},Rs={class:"mt-3 d-flex gap-2"},Ks={class:"mt-3 d-flex gap-2"};function Fs(s,e,a,d,i,l){return c(),g(E,{class:"notification-sound-settings"},{default:n(()=>[t(K,null,{default:n(()=>[...e[5]||(e[5]=[o(" 通知铃声设置 ",-1)])]),_:1}),t(j,null,{default:n(()=>[i.showAutoplayWarning?(c(),g($,{key:0,type:"info",variant:"tonal",closable:"",class:"mb-4","onClick:close":e[0]||(e[0]=r=>i.showAutoplayWarning=!1)},{default:n(()=>[m("div",Os,[t(v,{class:"mr-2"},{default:n(()=>[...e[6]||(e[6]=[o("mdi-information",-1)])]),_:1}),e[7]||(e[7]=m("span",null,"首次使用请点击试听按钮测试音频播放是否正常",-1))])]),_:1})):k("",!0),t(de,null,{default:n(()=>[t(z,{cols:"12"},{default:n(()=>[t(E,{border:""},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[8]||(e[8]=[o("mdi-bell-ring",-1)])]),_:1}),e[9]||(e[9]=o(" 单次通知铃声 ",-1))]),_:1}),t(j,null,{default:n(()=>[t(Je,{modelValue:i.singleSound,"onUpdate:modelValue":[e[1]||(e[1]=r=>i.singleSound=r),l.onSingleSoundChange],items:l.soundOptions,label:"选择铃声","prepend-icon":"mdi-music-note",variant:"outlined",density:"comfortable"},{item:n(({props:r,item:p})=>[t(A,je(r,{onClick:u=>l.previewSound(p.value)}),{prepend:n(()=>[t(v,null,{default:n(()=>[...e[10]||(e[10]=[o("mdi-music-note",-1)])]),_:1})]),append:n(()=>[t(h,{icon:"",size:"small",variant:"text",onClick:Ae(u=>l.previewSound(p.value),["stop"])},{default:n(()=>[t(v,null,{default:n(()=>[...e[11]||(e[11]=[o("mdi-play",-1)])]),_:1})]),_:1},8,["onClick"])]),_:2},1040,["onClick"])]),_:1},8,["modelValue","items","onUpdate:modelValue"]),m("div",Rs,[t(h,{color:"primary",variant:"tonal",onClick:e[2]||(e[2]=r=>l.previewSound(i.singleSound))},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[12]||(e[12]=[o("mdi-play",-1)])]),_:1}),e[13]||(e[13]=o(" 试听 ",-1))]),_:1}),t(h,{onClick:l.resetSingleSound},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[14]||(e[14]=[o("mdi-restore",-1)])]),_:1}),e[15]||(e[15]=o(" 恢复 ",-1))]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1}),t(z,{cols:"12"},{default:n(()=>[t(E,{border:""},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{left:"",color:"error"},{default:n(()=>[...e[16]||(e[16]=[o("mdi-bell-alert",-1)])]),_:1}),e[17]||(e[17]=o(" 紧急通知铃声 ",-1))]),_:1}),t(j,null,{default:n(()=>[t(Je,{modelValue:i.urgentSound,"onUpdate:modelValue":[e[3]||(e[3]=r=>i.urgentSound=r),l.onUrgentSoundChange],items:l.soundOptions,label:"选择铃声","prepend-icon":"mdi-music-note",variant:"outlined",density:"comfortable"},{item:n(({props:r,item:p})=>[t(A,je(r,{onClick:u=>l.previewSound(p.value)}),{prepend:n(()=>[t(v,null,{default:n(()=>[...e[18]||(e[18]=[o("mdi-music-note",-1)])]),_:1})]),append:n(()=>[t(h,{icon:"",size:"small",variant:"text",onClick:Ae(u=>l.previewSound(p.value),["stop"])},{default:n(()=>[t(v,null,{default:n(()=>[...e[19]||(e[19]=[o("mdi-play",-1)])]),_:1})]),_:1},8,["onClick"])]),_:2},1040,["onClick"])]),_:1},8,["modelValue","items","onUpdate:modelValue"]),m("div",Ks,[t(h,{color:"error",variant:"tonal",onClick:e[4]||(e[4]=r=>l.previewSound(i.urgentSound))},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[20]||(e[20]=[o("mdi-play",-1)])]),_:1}),e[21]||(e[21]=o(" 试听 ",-1))]),_:1}),t(h,{onClick:l.resetUrgentSound},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[22]||(e[22]=[o("mdi-restore",-1)])]),_:1}),e[23]||(e[23]=o(" 恢复 ",-1))]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}const Rt=Y(zs,[["render",Fs],["__scopeId","data-v-55be56a4"]]),Js={name:"ThemeSettingsCard",components:{SettingsCard:ee},data(){return{localTheme:_("theme.mode")}},watch:{localTheme(s){xe("theme.mode",s),this.updateTheme(s)}},setup(){return{theme:vn()}},methods:{updateTheme(s){this.theme.global.name.value=s}}};function Qs(s,e,a,d,i,l){const r=ee;return c(),g(r,{icon:"mdi-palette",title:"主题设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-theme-light-dark"})]),append:n(()=>[t(bn,{modelValue:i.localTheme,"onUpdate:modelValue":e[0]||(e[0]=p=>i.localTheme=p),color:"primary",density:"comfortable"},{default:n(()=>[t(h,{value:"light"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-white-balance-sunny"}),e[3]||(e[3]=o(" 明亮 ",-1))]),_:1}),t(h,{value:"dark"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-moon-waning-crescent"}),e[4]||(e[4]=o(" 暗黑 ",-1))]),_:1})]),_:1},8,["modelValue"])]),default:n(()=>[t(L,null,{default:n(()=>[...e[1]||(e[1]=[o("主题模式",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[2]||(e[2]=[o("选择明亮或暗黑主题",-1)])]),_:1})]),_:1})]),_:1})]),_:1})}const Kt=Y(Js,[["render",Qs]]),Hs={name:"DisplaySettingsCard",components:{SettingsCard:ee,SettingItem:_e},data(){return{}}};function Gs(s,e,a,d,i,l){const r=_e,p=ee;return c(),g(p,{border:"",icon:"mdi-monitor",title:"显示设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"display.emptySubjectDisplay"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.dynamicSort"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.showRandomButton"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.showFullscreenButton"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.cardHoverEffect"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.enhancedTouchMode"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.showQuickTools"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.showAntiScreenBurnCard"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.showExamScheduleButton"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.forceDesktopMode"}),t(M,{class:"my-2"}),t(r,{"setting-key":"display.lateStudentsArePresent"})]),_:1})]),_:1})}const Ft=Y(Hs,[["render",Gs]]),Ws={};function Ys(s,e,a,d,i,l){const r=_e,p=ee;return c(),g(p,{icon:"mdi-cog",title:"编辑设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"edit.autoSave"}),t(M,{class:"my-2"}),t(r,{"setting-key":"edit.blockNonTodayAutoSave"}),t(M,{class:"my-2"}),t(r,{"setting-key":"edit.confirmNonTodaySave"}),t(M,{class:"my-2"}),t(r,{"setting-key":"edit.refreshBeforeEdit"}),t(M,{class:"my-2"}),t(r,{"setting-key":"edit.autoSavePromptText"}),t(M,{class:"my-2"}),t(r,{"setting-key":"edit.manualSavePromptText"})]),_:1})]),_:1})}const Jt=Y(Ws,[["render",Ys]]),qs={name:"RefreshSettingsCard",components:{SettingsCard:ee},data(){return{}}};function Zs(s,e,a,d,i,l){const r=_e,p=ee;return c(),g(p,{icon:"mdi-refresh-circle",title:"刷新设置"},{default:n(()=>[t(jt,null,{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"refresh.auto",title:"自动刷新"}),t(M,{class:"my-2"}),t(r,{"setting-key":"refresh.interval",title:"刷新间隔"})]),_:1})]),_:1})]),_:1})}const Qt=Y(qs,[["render",Zs]]),Xs={name:"SettingsLinkGenerator",data(){return{selectedItems:[],generatedLink:"",linkCopied:!1,search:"",preconfigForm:{namespace:"",authCode:"",autoExecute:!1},unifiedLink:"",headers:[{title:"",key:"data-table-select"},{title:"设置项",key:"description",sortable:!0},{title:"当前值",key:"value",sortable:!0},{title:"键名",key:"key",class:"d-none d-sm-table-cell",sortable:!0},{title:"状态",key:"isChanged",sortable:!0}]}},computed:{settingItems(){const s=Be(),e=[];for(const[a,d]of Object.entries(et)){if(d.requireDeveloper&&!s["developer.enabled"])continue;const i=s[a]!==d.default;e.push({key:a,description:d.description||a,value:s[a],icon:d.icon||"mdi-cog",isChanged:i,defaultValue:d.default})}return e.sort((a,d)=>a.key.localeCompare(d.key))},filteredItems(){if(!this.search)return this.settingItems;const s=this.search.toLowerCase();return s==="已修改"?this.settingItems.filter(e=>e.isChanged):s==="是"||s==="否"?this.settingItems.filter(e=>typeof e.value=="boolean"&&(s==="是"?e.value:!e.value)):this.settingItems.filter(e=>{const a=e.description.toLowerCase(),d=e.key.toLowerCase(),i=String(e.value).toLowerCase(),l=e.isChanged?"已修改":"默认";return a.includes(s)||d.includes(s)||i.includes(s)||l.includes(s)})},hasDisplaySettings(){return this.selectedItems.some(s=>s.startsWith("display."))},hasEditSettings(){return this.selectedItems.some(s=>s.startsWith("edit."))},hasServerSettings(){return this.selectedItems.some(s=>s.startsWith("server."))},hasChangedSettings(){const s=Be();return this.selectedItems.some(e=>{const a=et[e];return a&&s[e]!==a.default})}},methods:{handleSelectionChange(s){this.selectedItems=s.map(e=>e.key),this.generateLink()},generateLink(){const s=`${window.location.protocol}//${window.location.host}/`,e=Be(),a={};for(const d of this.selectedItems)a[d]=e[d];if(Object.keys(a).length===0){this.generatedLink=s;return}try{const d=JSON.stringify(a),l=new TextEncoder().encode(d),p={config:btoa(Array.from(l).map(I=>String.fromCharCode(I)).join(""))},y=new URLSearchParams(window.location.search).get("date");y&&(p.date=y);const T=new URLSearchParams(p).toString();this.generatedLink=`${s}?${T}`}catch(d){console.error("生成链接失败:",d),this.generatedLink="链接生成失败,请重试"}this.linkCopied=!1},async copyLink(){this.generatedLink||this.generateLink();try{await navigator.clipboard.writeText(this.generatedLink),this.linkCopied=!0,setTimeout(()=>{this.linkCopied=!1},3e3)}catch(s){console.error("复制链接失败:",s)}},resetSelection(){this.selectedItems=[],this.generatedLink="",this.linkCopied=!1},selectAll(){this.selectedItems=this.settingItems.map(s=>s.key),this.generateLink()},selectDataSourceSettings(){const s=this.settingItems.filter(e=>e.key.startsWith("server.")&&e.key!=="server.kvToken").map(e=>e.key);this.selectedItems=s,this.generateLink()},selectChangedSettings(){const s=this.settingItems.filter(e=>e.isChanged&&e.key!=="server.kvToken").map(e=>e.key);this.selectedItems=s,this.generateLink()},selectByPrefix(s){const e=this.settingItems.filter(a=>a.key.startsWith(`${s}.`)).map(a=>a.key);this.selectedItems=e},autoGenerateLink(){this.selectedItems.length>0?this.generateLink():this.generatedLink=""},getSettingDescription(s){const e=this.settingItems.find(a=>a.key===s);return e?e.description:s},generateUnifiedLink(){if(this.preconfigForm.namespace.trim())try{const s=`${window.location.protocol}//${window.location.host}/`,e=new URLSearchParams;if(e.append("namespace",this.preconfigForm.namespace.trim()),this.preconfigForm.authCode.trim()&&e.append("authCode",this.preconfigForm.authCode.trim()),this.preconfigForm.autoExecute&&e.append("autoExecute","true"),this.selectedItems.length>0){const a=Be(),d={};for(const u of this.selectedItems)d[u]=a[u];const i=JSON.stringify(d),r=new TextEncoder().encode(i),p=btoa(Array.from(r).map(u=>String.fromCharCode(u)).join(""));e.append("config",p)}this.unifiedLink=`${s}?${e.toString()}`,this.linkCopied=!1,console.log("生成统一链接:",this.unifiedLink),console.log("包含预配置:",!!this.preconfigForm.namespace),console.log("包含设置数量:",this.selectedItems.length)}catch(s){console.error("生成统一链接失败:",s),this.unifiedLink="链接生成失败,请重试"}},async copyUnifiedLink(){if(this.unifiedLink||this.generateUnifiedLink(),!(!this.unifiedLink||this.unifiedLink.includes("失败")))try{await navigator.clipboard.writeText(this.unifiedLink),this.linkCopied=!0,setTimeout(()=>{this.linkCopied=!1},3e3)}catch(s){console.error("复制统一链接失败:",s)}},openTestLink(){this.unifiedLink&&!this.unifiedLink.includes("失败")&&window.open(this.unifiedLink,"_blank")},clearAll(){this.preconfigForm={namespace:"",authCode:"",autoExecute:!1},this.selectedItems=[],this.unifiedLink="",this.generatedLink="",this.linkCopied=!1}},watch:{selectedItems:{handler(){this.preconfigForm.namespace.trim()&&this.generateUnifiedLink()},deep:!0},"preconfigForm.namespace":{handler(){this.preconfigForm.namespace.trim()?this.generateUnifiedLink():this.unifiedLink=""}},"preconfigForm.authCode":{handler(){this.preconfigForm.namespace.trim()&&this.generateUnifiedLink()}},"preconfigForm.autoExecute":{handler(){this.preconfigForm.namespace.trim()&&this.generateUnifiedLink()}}}},$s={class:"d-flex mb-3 gap-2 flex-wrap"},ei={class:"d-flex align-center mb-3 flex-wrap gap-2"},ti={class:"d-flex align-center"},ni={class:"d-flex align-center"},si={key:0},ii={key:1},li={key:2},oi={class:"text-caption text-grey"},ai={class:"d-flex mb-3 gap-2 flex-wrap"},ri={class:"d-flex flex-wrap gap-1"};function ui(s,e,a,d,i,l){return c(),x("div",null,[t(E,{border:"",class:"unified-link-generator"},{default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-link-variant",start:""}),e[6]||(e[6]=o(" 统一链接生成器 ",-1))]),_:1}),t(j,null,{default:n(()=>[e[35]||(e[35]=m("div",{class:"text-body-2 text-medium-emphasis mb-4"}," 生成包含预配置认证信息和设置的统一链接。可以同时预配置设备认证和应用设置。 ",-1)),t(E,{class:"mb-4",variant:"tonal"},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{start:""},{default:n(()=>[...e[7]||(e[7]=[o("mdi-account-key",-1)])]),_:1}),e[8]||(e[8]=o(" 预配置认证信息 ",-1))]),_:1}),t(j,null,{default:n(()=>[t(de,null,{default:n(()=>[t(z,{cols:"12",md:"6"},{default:n(()=>[t(R,{modelValue:i.preconfigForm.namespace,"onUpdate:modelValue":e[0]||(e[0]=r=>i.preconfigForm.namespace=r),hint:"设备的命名空间标识符",label:"命名空间","persistent-hint":"",placeholder:"例如: classroom-001","prepend-inner-icon":"mdi-identifier",variant:"outlined"},null,8,["modelValue"])]),_:1}),t(z,{cols:"12",md:"6"},{default:n(()=>[t(R,{modelValue:i.preconfigForm.authCode,"onUpdate:modelValue":e[1]||(e[1]=r=>i.preconfigForm.authCode=r),hint:"留空则需要用户手动输入",label:"认证码","persistent-hint":"",placeholder:"设备认证码(可选)","prepend-inner-icon":"mdi-lock-outline",variant:"outlined"},null,8,["modelValue"])]),_:1})]),_:1}),t(de,{class:"mt-2"},{default:n(()=>[t(z,{cols:"12"},{default:n(()=>[t(Ce,{modelValue:i.preconfigForm.autoExecute,"onUpdate:modelValue":e[2]||(e[2]=r=>i.preconfigForm.autoExecute=r),density:"compact",hint:"启用后会自动尝试认证,即使没有认证码也会尝试",label:"自动执行认证","persistent-hint":""},null,8,["modelValue"])]),_:1})]),_:1}),i.preconfigForm.namespace?(c(),g($,{key:0,class:"mt-3",type:"info",variant:"tonal"},{default:n(()=>[e[13]||(e[13]=m("div",{class:"text-subtitle-2 mb-2"},"预配置信息:",-1)),t(X,{class:"mr-2 mb-1",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[9]||(e[9]=[o("mdi-identifier",-1)])]),_:1}),o(" 命名空间: "+w(i.preconfigForm.namespace),1)]),_:1}),i.preconfigForm.authCode?(c(),g(X,{key:0,class:"mr-2 mb-1",color:"warning",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[10]||(e[10]=[o("mdi-lock",-1)])]),_:1}),o(" 认证码: "+w(i.preconfigForm.authCode.length>8?i.preconfigForm.authCode.substring(0,8)+"...":i.preconfigForm.authCode),1)]),_:1})):(c(),g(X,{key:1,class:"mr-2 mb-1",color:"grey",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[11]||(e[11]=[o("mdi-lock-open",-1)])]),_:1}),e[12]||(e[12]=o(" 无认证码 ",-1))]),_:1})),t(X,{color:i.preconfigForm.autoExecute?"success":"orange",class:"mr-2 mb-1",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[o(w(i.preconfigForm.autoExecute?"mdi-play-circle":"mdi-hand-back-left"),1)]),_:1}),o(" "+w(i.preconfigForm.autoExecute?"自动认证":"手动认证"),1)]),_:1},8,["color"])]),_:1})):k("",!0)]),_:1})]),_:1}),t(E,{class:"mb-4",variant:"tonal"},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{start:""},{default:n(()=>[...e[14]||(e[14]=[o("mdi-cog-transfer",-1)])]),_:1}),e[15]||(e[15]=o(" 设置分享(可选) ",-1))]),_:1}),t(j,null,{default:n(()=>[e[22]||(e[22]=m("div",{class:"text-body-2 text-medium-emphasis mb-3"}," 选择需要包含在链接中的设置项。如果不选择任何设置,将只生成预配置认证链接。 ",-1)),m("div",$s,[t(h,{color:"primary","prepend-icon":"mdi-server-network",size:"small",variant:"tonal",onClick:l.selectDataSourceSettings},{default:n(()=>[...e[16]||(e[16]=[o(" 数据源设置 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"primary","prepend-icon":"mdi-compare",size:"small",variant:"tonal",onClick:l.selectChangedSettings},{default:n(()=>[...e[17]||(e[17]=[o(" 已变更设置 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"success","prepend-icon":"mdi-select-all",size:"small",variant:"tonal",onClick:l.selectAll},{default:n(()=>[...e[18]||(e[18]=[o(" 全选 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"error","prepend-icon":"mdi-select-remove",size:"small",variant:"tonal",onClick:l.resetSelection},{default:n(()=>[...e[19]||(e[19]=[o(" 清除选择 ",-1)])]),_:1},8,["onClick"])]),m("div",ei,[t(X,{class:"mr-2",color:"primary"},{default:n(()=>[o(" 已选 "+w(i.selectedItems.length)+" 项设置 ",1)]),_:1}),i.selectedItems.length>0?(c(),x(ne,{key:0},[(c(!0),x(ne,null,ue(i.selectedItems.slice(0,3),r=>(c(),g(X,{key:r,class:"mr-1",size:"small",variant:"text"},{default:n(()=>[o(w(l.getSettingDescription(r)),1)]),_:2},1024))),128)),i.selectedItems.length>3?(c(),g(X,{key:0,color:"grey",size:"small",variant:"text"},{default:n(()=>[o(" +"+w(i.selectedItems.length-3)+" 更多 ",1)]),_:1})):k("",!0)],64)):k("",!0)]),t(it,{variant:"accordion"},{default:n(()=>[t(lt,null,{default:n(()=>[t(Et,null,{default:n(({expanded:r})=>[m("div",ti,[t(v,{class:"mr-2"},{default:n(()=>[o(w(r?"mdi-chevron-up":"mdi-chevron-down"),1)]),_:2},1024),e[20]||(e[20]=o(" 显示设置列表详情 ",-1))])]),_:1}),t(ot,null,{default:n(()=>[t(R,{modelValue:i.search,"onUpdate:modelValue":e[3]||(e[3]=r=>i.search=r),class:"mb-4",clearable:"","hide-details":"",label:"搜索设置","prepend-inner-icon":"mdi-magnify","single-line":""},null,8,["modelValue"]),t(Ut,{modelValue:i.selectedItems,"onUpdate:modelValue":e[4]||(e[4]=r=>i.selectedItems=r),headers:i.headers,items:l.filteredItems,"items-per-page":l.settingItems.length,"sort-by":[{key:"isChanged",order:"desc"}],class:"rounded setting-table",density:"compact","item-value":"key","show-select":"","onUpdate:selected":l.handleSelectionChange},{"item.description":n(({item:r})=>[m("div",ni,[t(v,{icon:r.icon,class:"mr-2",size:"small"},null,8,["icon"]),o(" "+w(r.description)+" ",1),r.key==="server.kvToken"?(c(),g(X,{key:0,class:"ml-2",color:"error",size:"x-small"},{default:n(()=>[...e[21]||(e[21]=[o(" 敏感 ",-1)])]),_:1})):k("",!0)])]),"item.value":n(({item:r})=>[typeof r.value=="boolean"?(c(),x("span",si,w(r.value?"是":"否"),1)):r.key==="server.kvToken"&&r.value?(c(),x("span",ii,w(r.value.substring(0,8))+"... ",1)):(c(),x("span",li,w(r.value),1))]),"item.key":n(({item:r})=>[m("span",oi,w(r.key),1)]),"item.isChanged":n(({item:r})=>[t(X,{color:r.isChanged?"warning":"success",text:r.isChanged?"已修改":"默认",density:"compact",size:"x-small"},null,8,["color","text"])]),_:2},1032,["modelValue","headers","items","items-per-page","onUpdate:selected"])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),t(E,{class:"mb-4",variant:"outlined"},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{start:""},{default:n(()=>[...e[23]||(e[23]=[o("mdi-link",-1)])]),_:1}),e[24]||(e[24]=o(" 生成的统一链接 ",-1))]),_:1}),t(j,null,{default:n(()=>[m("div",ai,[t(h,{disabled:!i.preconfigForm.namespace.trim(),color:"primary","prepend-icon":"mdi-auto-fix",variant:"flat",onClick:l.generateUnifiedLink},{default:n(()=>[...e[25]||(e[25]=[o(" 生成统一链接 ",-1)])]),_:1},8,["disabled","onClick"]),t(h,{disabled:!i.unifiedLink,color:"success","prepend-icon":"mdi-test-tube",variant:"tonal",onClick:l.openTestLink},{default:n(()=>[...e[26]||(e[26]=[o(" 测试链接 ",-1)])]),_:1},8,["disabled","onClick"]),t(h,{color:"error","prepend-icon":"mdi-delete",variant:"tonal",onClick:l.clearAll},{default:n(()=>[...e[27]||(e[27]=[o(" 清空所有 ",-1)])]),_:1},8,["onClick"])]),t(R,{modelValue:i.unifiedLink,"onUpdate:modelValue":e[5]||(e[5]=r=>i.unifiedLink=r),"append-inner-icon":i.linkCopied?"mdi-check":"mdi-content-copy",placeholder:i.preconfigForm.namespace?"点击「生成统一链接」按钮":"请先输入命名空间",class:"mb-3",label:"统一链接",readonly:"",variant:"outlined","onClick:appendInner":l.copyUnifiedLink},null,8,["modelValue","append-inner-icon","placeholder","onClick:appendInner"]),i.unifiedLink?(c(),g($,{key:0,class:"mb-3",type:"success",variant:"tonal"},{default:n(()=>[e[33]||(e[33]=m("div",{class:"text-subtitle-2 mb-2"},"链接包含内容:",-1)),m("div",ri,[t(X,{color:"primary",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[28]||(e[28]=[o("mdi-account-key",-1)])]),_:1}),e[29]||(e[29]=o(" 预配置认证 ",-1))]),_:1}),i.selectedItems.length>0?(c(),g(X,{key:0,color:"secondary",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[30]||(e[30]=[o("mdi-cog",-1)])]),_:1}),o(" "+w(i.selectedItems.length)+" 项设置 ",1)]),_:1})):(c(),g(X,{key:1,color:"grey",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[31]||(e[31]=[o("mdi-cog-off",-1)])]),_:1}),e[32]||(e[32]=o(" 无额外设置 ",-1))]),_:1}))])]),_:1})):k("",!0)]),_:1})]),_:1}),t($,{type:"warning",variant:"tonal"},{default:n(()=>[...e[34]||(e[34]=[m("div",{class:"text-subtitle-2 mb-2"},"⚠️ 安全提醒",-1),m("ul",{class:"text-body-2 pl-4"},[m("li",null,"认证码和设置信息会在URL中传输,请谨慎分发"),m("li",null,"建议仅在受信任的网络环境中使用"),m("li",null,"生产环境建议使用HTTPS协议"),m("li",null,"数据源设置和已变更设置默认不包含敏感Token信息")],-1)])]),_:1})]),_:1})]),_:1})])}const Ht=Y(Xs,[["render",ui]]),di={name:"UnsavedWarning",props:{show:Boolean,message:{type:String,default:"未保存"}}},ci={class:"warning-container"};function mi(s,e,a,d,i,l){return c(),x("div",ci,[a.show?(c(),g(X,{key:0,class:"warning-chip",color:"warning",size:"small"},{default:n(()=>[o(w(a.message),1)]),_:1})):k("",!0)])}const Ye=Y(di,[["render",mi],["__scopeId","data-v-0f36b655"]]),fi=Sn({disabled:Boolean,modelValue:{type:Boolean,default:null},...Cn()},"VHover"),Gt=yn()({name:"VHover",props:fi(),emits:{"update:modelValue":s=>!0},setup(s,e){let{slots:a}=e;const d=kn(s,"modelValue"),{runOpenDelay:i,runCloseDelay:l}=xn(s,r=>!s.disabled&&(d.value=r));return()=>{var r;return(r=a.default)==null?void 0:r.call(a,{isHovering:d.value,props:{onMouseenter:i,onMouseleave:l}})}}}),pi={name:"TeacherListCard",components:{UnsavedWarning:Ye},props:{isMobile:Boolean},data(){return{newTeacher:{name:"",subjects:[],isHeadTeacher:!1},editState:{index:-1,teacher:null},modelValue:{list:[],text:"",advanced:!1},loading:!1,error:null,lastSavedData:null,unsavedChanges:!1,commonSubjects:["语文","数学","英语","物理","化学","生物","政治","历史","地理","信息技术","音乐","美术","体育"]}},watch:{modelValue:{handler(s){this.lastSavedData&&(this.unsavedChanges=JSON.stringify(s.list)!==JSON.stringify(this.lastSavedData)),this.modelValue.advanced||(this.modelValue.text=JSON.stringify(s.list,null,2))},deep:!0}},mounted(){this.loadTeachers()},methods:{async loadTeachers(){var s;this.error=null;try{if(this.loading=!0,!_("server.classNumber"))throw new Error("请先设置班号");try{const a=await ae.loadData("classworks-list-teacher");a.success!==!1&&Array.isArray(a)&&(this.modelValue.list=a.map(d=>({name:d.name||"",subjects:Array.isArray(d.subjects)?d.subjects:[],isHeadTeacher:!!d.isHeadTeacher})),this.modelValue.text=JSON.stringify(this.modelValue.list,null,2),this.lastSavedData=JSON.parse(JSON.stringify(this.modelValue.list)),this.unsavedChanges=!1)}catch(a){console.warn("Failed to load teacher list, initializing empty list",a),this.modelValue.list=[],this.modelValue.text="[]",this.lastSavedData=[]}}catch(e){console.error("加载教师列表失败:",e),this.error=e.message||"加载失败,请检查设置",(s=this.$message)==null||s.error("加载失败",this.error)}finally{this.loading=!1}},async saveTeachers(){var s,e,a;try{if(!_("server.classNumber"))throw new Error("请先设置班号");const i=this.modelValue.list.map(r=>({name:r.name,subjects:Array.isArray(r.subjects)?r.subjects:[],isHeadTeacher:!!r.isHeadTeacher})),l=await ae.saveData("classworks-list-teacher",i);if(l.success===!1)throw new Error(((s=l.error)==null?void 0:s.message)||"保存失败");this.modelValue.list=i,this.lastSavedData=JSON.parse(JSON.stringify(i)),this.unsavedChanges=!1,(e=this.$message)==null||e.success("保存成功","教师列表已更新")}catch(d){console.error("保存教师列表失败:",d),(a=this.$message)==null||a.error("保存失败",d.message||"请重试")}},toggleAdvanced(){this.modelValue.advanced=!this.modelValue.advanced,this.modelValue.advanced&&(this.modelValue.text=JSON.stringify(this.modelValue.list,null,2))},handleTextInput(s){if(this.modelValue.advanced)try{const e=JSON.parse(s);Array.isArray(e)?(this.modelValue.list=e.map(a=>({name:a.name||"",subjects:Array.isArray(a.subjects)?a.subjects:[],isHeadTeacher:!!a.isHeadTeacher})),this.error=null):this.error="JSON 必须是一个数组"}catch(e){this.error="JSON 格式错误: "+e.message}},addTeacher(){var e,a;const s=this.newTeacher.name.trim();if(!s){(e=this.$message)==null||e.warning("提示","请输入教师姓名");return}if(this.newTeacher.subjects.length===0){(a=this.$message)==null||a.warning("提示","请选择至少一个任教科目");return}this.modelValue.list.push({name:s,subjects:[...this.newTeacher.subjects],isHeadTeacher:this.newTeacher.isHeadTeacher}),this.newTeacher={name:"",subjects:[],isHeadTeacher:!1}},startEdit(s,e){this.editState.index=s,this.editState.teacher={name:e.name,subjects:[...e.subjects],isHeadTeacher:e.isHeadTeacher}},saveEdit(){var s,e;if(this.editState.index!==-1){const a=this.editState.teacher.name.trim();if(!a){(s=this.$message)==null||s.warning("提示","教师姓名不能为空");return}if(this.editState.teacher.subjects.length===0){(e=this.$message)==null||e.warning("提示","请选择至少一个任教科目");return}this.modelValue.list[this.editState.index]={name:a,subjects:[...this.editState.teacher.subjects],isHeadTeacher:this.editState.teacher.isHeadTeacher},this.editState.index=-1,this.editState.teacher=null}},cancelEdit(){this.editState.index=-1,this.editState.teacher=null},removeTeacher(s){s!==void 0&&this.modelValue.list.splice(s,1)},handleClick(s,e){this.isMobile&&this.startEdit(s,e)}}},hi={key:0},gi={class:"d-flex align-start mb-3"},wi={class:"flex-grow-1"},vi={class:"d-flex align-center mb-1"},bi=["onClick"],yi={key:0,class:"mt-2"},ki={key:1,class:"mt-1"},xi={key:1,class:"pt-2"};function Si(s,e,a,d,i,l){const r=Ye;return c(),g(E,{class:Fe({"unsaved-changes":i.unsavedChanges}),color:i.unsavedChanges?"warning-subtle":void 0,border:""},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-account-tie",size:"large"})]),append:n(()=>[t(r,{show:i.unsavedChanges,message:"有未保存的更改"},null,8,["show"]),t(h,{color:i.modelValue.advanced?"primary":void 0,"prepend-icon":"mdi-code-braces",variant:"text",onClick:l.toggleAdvanced},{default:n(()=>[o(w(i.modelValue.advanced?"返回基础编辑":"高级编辑"),1)]),_:1},8,["color","onClick"])]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[...e[4]||(e[4]=[o("教师列表",-1)])]),_:1})]),_:1}),t(j,null,{default:n(()=>[i.loading?(c(),g(He,{key:0,class:"mb-4",color:"primary",indeterminate:""})):k("",!0),i.error?(c(),g($,{key:1,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):k("",!0),t(At,null,{default:n(()=>[i.modelValue.advanced?(c(),x("div",xi,[t(Ie,{modelValue:i.modelValue.text,"onUpdate:modelValue":[e[3]||(e[3]=p=>i.modelValue.text=p),l.handleTextInput],hint:"JSON 格式编辑教师列表。每个教师需包含 name、subjects(数组)、isHeadTeacher(布尔值)",label:"批量编辑教师列表 (JSON)","persistent-hint":"",placeholder:'[{"name":"教师姓名","subjects":["语文","数学"],"isHeadTeacher":true}]',rows:"15",variant:"outlined"},null,8,["modelValue","onUpdate:modelValue"])])):(c(),x("div",hi,[t(E,{class:"mb-6",variant:"outlined"},{default:n(()=>[t(j,null,{default:n(()=>[t(de,null,{default:n(()=>[t(z,{cols:"12",md:"4"},{default:n(()=>[t(R,{modelValue:i.newTeacher.name,"onUpdate:modelValue":e[0]||(e[0]=p=>i.newTeacher.name=p),density:"comfortable","hide-details":"",label:"教师姓名",placeholder:"输入教师姓名","prepend-inner-icon":"mdi-account",variant:"outlined"},null,8,["modelValue"])]),_:1}),t(z,{cols:"12",md:"5"},{default:n(()=>[t(mt,{modelValue:i.newTeacher.subjects,"onUpdate:modelValue":e[1]||(e[1]=p=>i.newTeacher.subjects=p),items:i.commonSubjects,chips:"",clearable:"","closable-chips":"",density:"comfortable","hide-details":"",label:"任教科目",multiple:"",placeholder:"选择或输入科目","prepend-inner-icon":"mdi-book-open-variant",variant:"outlined"},null,8,["modelValue","items"])]),_:1}),t(z,{cols:"12",md:"3",class:"d-flex align-center gap-2"},{default:n(()=>[t(Ce,{modelValue:i.newTeacher.isHeadTeacher,"onUpdate:modelValue":e[2]||(e[2]=p=>i.newTeacher.isHeadTeacher=p),density:"comfortable","hide-details":"",label:"班主任"},null,8,["modelValue"]),t(h,{disabled:!i.newTeacher.name.trim()||i.newTeacher.subjects.length===0,color:"primary","prepend-icon":"mdi-plus",onClick:l.addTeacher},{default:n(()=>[...e[5]||(e[5]=[o(" 添加教师 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})]),_:1})]),_:1}),i.modelValue.list.length===0?(c(),g(de,{key:0},{default:n(()=>[t(z,{cols:"12"},{default:n(()=>[t($,{type:"info",variant:"tonal"},{default:n(()=>[...e[6]||(e[6]=[o(" 暂无教师信息,请添加教师 ",-1)])]),_:1})]),_:1})]),_:1})):(c(),g(de,{key:1},{default:n(()=>[(c(!0),x(ne,null,ue(i.modelValue.list,(p,u)=>(c(),g(z,{key:u,cols:"12",lg:"6",xl:"4"},{default:n(()=>[t(Gt,null,{default:n(({isHovering:y,props:T})=>[t(E,je({elevation:a.isMobile?1:y?4:1,border:"",class:"teacher-card"},{ref_for:!0},T),{default:n(()=>[t(j,{class:"pa-4"},{default:n(()=>[m("div",gi,[t(Ge,{color:p.isHeadTeacher?"primary":"grey-lighten-1",class:"mr-3",size:"48"},{default:n(()=>[t(v,{icon:p.isHeadTeacher?"mdi-star":"mdi-account",size:"28"},null,8,["icon"])]),_:2},1032,["color"]),m("div",wi,[m("div",vi,[i.editState.index===u?(c(),g(R,{key:0,modelValue:i.editState.teacher.name,"onUpdate:modelValue":I=>i.editState.teacher.name=I,autofocus:"",class:"flex-grow-1",density:"compact","hide-details":"",variant:"underlined"},null,8,["modelValue","onUpdate:modelValue"])):(c(),x("span",{key:1,class:"text-h6 font-weight-medium",onClick:I=>l.handleClick(u,p)},w(p.name),9,bi)),p.isHeadTeacher?(c(),g(X,{key:2,class:"ml-2",color:"primary",density:"comfortable",size:"small",variant:"flat"},{default:n(()=>[...e[7]||(e[7]=[o(" 班主任 ",-1)])]),_:1})):k("",!0)]),i.editState.index===u?(c(),x("div",yi,[t(mt,{modelValue:i.editState.teacher.subjects,"onUpdate:modelValue":I=>i.editState.teacher.subjects=I,items:i.commonSubjects,chips:"","closable-chips":"",density:"compact","hide-details":"",label:"任教科目",multiple:"",variant:"outlined"},null,8,["modelValue","onUpdate:modelValue","items"]),t(Ce,{modelValue:i.editState.teacher.isHeadTeacher,"onUpdate:modelValue":I=>i.editState.teacher.isHeadTeacher=I,class:"mt-2",density:"compact","hide-details":"",label:"班主任"},null,8,["modelValue","onUpdate:modelValue"])])):(c(),x("div",ki,[(c(!0),x(ne,null,ue(p.subjects,(I,Q)=>(c(),g(X,{key:Q,class:"mr-1 mb-1",density:"comfortable",size:"small",variant:"tonal"},{default:n(()=>[o(w(I),1)]),_:2},1024))),128))]))]),m("div",{class:Fe([{"opacity-100":y||a.isMobile||i.editState.index===u},"d-flex gap-1 action-buttons ml-2"])},[i.editState.index===u?(c(),g(h,{key:0,color:"success",icon:"mdi-check",size:"small",variant:"text",onClick:l.saveEdit},null,8,["onClick"])):k("",!0),i.editState.index===u?(c(),g(h,{key:1,color:"grey",icon:"mdi-close",size:"small",variant:"text",onClick:l.cancelEdit},null,8,["onClick"])):(c(),g(h,{key:2,color:"primary",icon:"mdi-pencil",size:"small",variant:"text",onClick:I=>l.startEdit(u,p)},null,8,["onClick"])),i.editState.index!==u?(c(),g(h,{key:3,color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:I=>l.removeTeacher(u)},null,8,["onClick"])):k("",!0)],2)])]),_:2},1024)]),_:2},1040,["elevation"])]),_:2},1024)]),_:2},1024))),128))]),_:1}))]))]),_:1}),t(de,{class:"mt-6"},{default:n(()=>[t(z,{class:"d-flex gap-2",cols:"12"},{default:n(()=>[t(h,{disabled:i.loading,loading:i.loading,color:"primary","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveTeachers},{default:n(()=>[...e[8]||(e[8]=[o(" 保存教师列表 ",-1)])]),_:1},8,["disabled","loading","onClick"]),t(h,{disabled:i.loading,loading:i.loading,color:"error","prepend-icon":"mdi-refresh",size:"large",variant:"outlined",onClick:l.loadTeachers},{default:n(()=>[...e[9]||(e[9]=[o(" 重载教师列表 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1})]),_:1},8,["class","color"])}const Wt=Y(pi,[["render",Si],["__scopeId","data-v-16455a49"]]),Ci={name:"StudentListCard",components:{UnsavedWarning:Ye},props:{isMobile:Boolean},data(){return{newStudentName:"",editState:{index:-1,name:""},modelValue:{list:[],text:"",advanced:!1},loading:!1,error:null,lastSavedData:null,unsavedChanges:!1}},watch:{modelValue:{handler(s){this.lastSavedData&&(this.unsavedChanges=JSON.stringify(s.list)!==JSON.stringify(this.lastSavedData)),this.modelValue.advanced||(this.modelValue.text=s.list.slice().sort((e,a)=>e.id-a.id).map(e=>e.name).join(` -`))},deep:!0}},mounted(){this.loadStudents()},methods:{async loadStudents(){var s;this.error=null;try{if(this.loading=!0,!_("server.classNumber"))throw new Error("请先设置班号");try{const a=await ae.loadData("classworks-list-main");a.success!=!1&&Array.isArray(a)&&(this.modelValue.list=a.map((d,i)=>typeof d=="string"?{id:i+1,name:d}:{id:d.id||i+1,name:d.name||d.toString()}),this.modelValue.list.sort((d,i)=>d.id-i.id),this.modelValue.text=this.modelValue.list.map(d=>d.name).join(` -`),this.lastSavedData=JSON.parse(JSON.stringify(this.modelValue.list)),this.unsavedChanges=!1)}catch(a){console.warn("Failed to load student list from dedicated key, falling back to config",a)}}catch(e){console.error("加载学生列表失败:",e),this.error=e.message||"加载失败,请检查设置",(s=this.$message)==null||s.error("加载失败",this.error)}finally{this.loading=!1}},async saveStudents(){var s,e,a;try{if(!_("server.classNumber"))throw new Error("请先设置班号");const i=this.modelValue.list.slice().sort((r,p)=>r.id-p.id).map((r,p)=>({id:p+1,name:r.name})),l=await ae.saveData("classworks-list-main",i);if(l.success===!1)throw new Error(((s=l.error)==null?void 0:s.message)||"保存失败");this.modelValue.list=i,this.lastSavedData=JSON.parse(JSON.stringify(i)),this.unsavedChanges=!1,(e=this.$message)==null||e.success("保存成功","学生列表已更新")}catch(d){console.error("保存学生列表失败:",d),(a=this.$message)==null||a.error("保存失败",d.message||"请重试")}},toggleAdvanced(){this.modelValue.advanced=!this.modelValue.advanced},handleTextInput(s){if(!this.modelValue.advanced)return;const e=s.split(` -`).filter(l=>l.trim()),a=new Map(this.modelValue.list.map(l=>[l.name,l.id]));let d=Math.max(0,...this.modelValue.list.map(l=>l.id));const i=e.map(l=>(l=l.trim(),a.has(l)?{id:a.get(l),name:l}:{id:++d,name:l}));this.modelValue.list=i},addStudent(){const s=this.newStudentName.trim();if(s&&!this.modelValue.list.some(e=>e.name===s)){const e=Math.max(0,...this.modelValue.list.map(a=>a.id));this.modelValue.list.push({id:e+1,name:s}),this.newStudentName=""}},startEdit(s,e){this.editState.index=s,this.editState.name=e.name},saveEdit(){if(this.editState.index!==-1){const s=this.editState.name.trim();s&&s!==this.modelValue.list[this.editState.index].name&&(this.modelValue.list[this.editState.index].name=s),this.editState.index=-1,this.editState.name=""}},removeStudent(s){s!==void 0&&this.modelValue.list.splice(s,1)},moveStudent(s,e){if(e==="top"){if(s>0){const a=this.modelValue.list[s];this.modelValue.list.splice(s,1),this.modelValue.list.unshift(a),this.modelValue.list.forEach((d,i)=>d.id=i+1)}}else{const a=e==="up"?s-1:s+1;a>=0&&a{const d=ft(e.name,{toneType:"none"}),i=ft(a.name,{toneType:"none"});return d.localeCompare(i)});s.forEach((e,a)=>e.id=a+1),this.modelValue.list=s}}},_i={key:0},Vi=["onClick"],Di={key:1,class:"pt-2"};function Ai(s,e,a,d,i,l){const r=Ye;return c(),g(E,{class:Fe({"unsaved-changes":i.unsavedChanges}),color:i.unsavedChanges?"warning-subtle":void 0,border:""},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-account-group",size:"large"})]),append:n(()=>[t(r,{show:i.unsavedChanges,message:"有未保存的更改"},null,8,["show"]),t(h,{disabled:i.modelValue.list.length===0,class:"mr-2","prepend-icon":"mdi-sort-alphabetical-variant",variant:"text",onClick:l.sortStudentsByPinyin},{default:n(()=>[...e[4]||(e[4]=[o(" 按姓名首字母排序 ",-1)])]),_:1},8,["disabled","onClick"]),t(h,{color:i.modelValue.advanced?"primary":void 0,"prepend-icon":"mdi-code-braces",variant:"text",onClick:l.toggleAdvanced},{default:n(()=>[o(w(i.modelValue.advanced?"返回基础编辑":"高级编辑"),1)]),_:1},8,["color","onClick"])]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[...e[3]||(e[3]=[o("学生列表",-1)])]),_:1})]),_:1}),t(j,null,{default:n(()=>[i.loading?(c(),g(He,{key:0,class:"mb-4",color:"primary",indeterminate:""})):k("",!0),i.error?(c(),g($,{key:1,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):k("",!0),t(At,null,{default:n(()=>[i.modelValue.advanced?(c(),x("div",Di,[t(Ie,{modelValue:i.modelValue.text,"onUpdate:modelValue":[e[2]||(e[2]=p=>i.modelValue.text=p),l.handleTextInput],hint:"使用文本编辑模式批量编辑学生名单,保存时会自动去除空行",label:"批量编辑学生列表","persistent-hint":"",placeholder:"每行输入一个学生姓名",rows:"10",variant:"outlined"},null,8,["modelValue","onUpdate:modelValue"])])):(c(),x("div",_i,[t(de,{class:"mb-6"},{default:n(()=>[t(z,{cols:"12",md:"4",sm:"6"},{default:n(()=>[t(R,{modelValue:i.newStudentName,"onUpdate:modelValue":e[0]||(e[0]=p=>i.newStudentName=p),class:"mb-4","hide-details":"",label:"添加学生",placeholder:"输入学生姓名后回车添加","prepend-inner-icon":"mdi-account-plus",variant:"outlined",onKeyup:Ve(l.addStudent,["enter"])},{append:n(()=>[t(h,{disabled:!i.newStudentName.trim(),color:"primary",icon:"mdi-plus",variant:"text",onClick:l.addStudent},null,8,["disabled","onClick"])]),_:1},8,["modelValue","onKeyup"])]),_:1})]),_:1}),t(de,null,{default:n(()=>[(c(!0),x(ne,null,ue(i.modelValue.list,(p,u)=>(c(),g(z,{key:u,cols:"12",lg:"3",md:"4",sm:"6"},{default:n(()=>[t(Gt,null,{default:n(({isHovering:y,props:T})=>[t(E,je({elevation:a.isMobile?1:y?4:1,border:"",class:"student-card"},{ref_for:!0},T),{default:n(()=>[t(j,{class:"d-flex align-center pa-3"},{default:n(()=>[t(It,{"open-on-hover":!a.isMobile,location:"bottom"},{activator:n(({props:I})=>[t(h,je({class:"mr-3 font-weight-medium",size:"small"},{ref_for:!0},I,{variant:"tonal"}),{default:n(()=>[o(w(u+1),1)]),_:2},1040)]),default:n(()=>[t(J,{density:"compact",nav:""},{default:n(()=>[t(A,{disabled:u===0,"prepend-icon":"mdi-arrow-up-bold",onClick:I=>l.moveStudent(u,"top")},{default:n(()=>[...e[5]||(e[5]=[o(" 置顶 ",-1)])]),_:1},8,["disabled","onClick"]),t(M),t(A,{disabled:u===0,"prepend-icon":"mdi-arrow-up",onClick:I=>l.moveStudent(u,"up")},{default:n(()=>[...e[6]||(e[6]=[o(" 上移 ",-1)])]),_:1},8,["disabled","onClick"]),t(A,{disabled:u===i.modelValue.list.length-1,"prepend-icon":"mdi-arrow-down",onClick:I=>l.moveStudent(u,"down")},{default:n(()=>[...e[7]||(e[7]=[o(" 下移 ",-1)])]),_:1},8,["disabled","onClick"])]),_:2},1024)]),_:2},1032,["open-on-hover"]),i.editState.index===u?(c(),g(R,{key:0,modelValue:i.editState.name,"onUpdate:modelValue":e[1]||(e[1]=I=>i.editState.name=I),autofocus:"",class:"flex-grow-1",density:"compact","hide-details":"",variant:"underlined",onBlur:l.saveEdit,onKeyup:Ve(l.saveEdit,["enter"])},null,8,["modelValue","onBlur","onKeyup"])):(c(),x("span",{key:1,class:"text-body-1 flex-grow-1",onClick:I=>l.handleClick(u,p)},w(p.name),9,Vi)),m("div",{class:Fe([{"opacity-100":y||a.isMobile},"d-flex gap-1 action-buttons"])},[t(h,{color:"primary",icon:"mdi-pencil",size:"small",variant:"text",onClick:I=>l.startEdit(u,p)},null,8,["onClick"]),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:I=>l.removeStudent(u)},null,8,["onClick"])],2)]),_:2},1024)]),_:2},1040,["elevation"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]))]),_:1}),t(de,{class:"mt-6"},{default:n(()=>[t(z,{class:"d-flex gap-2",cols:"12"},{default:n(()=>[t(h,{disabled:i.loading,loading:i.loading,color:"primary","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveStudents},{default:n(()=>[...e[8]||(e[8]=[o(" 保存名单 ",-1)])]),_:1},8,["disabled","loading","onClick"]),t(h,{disabled:i.loading,loading:i.loading,color:"error","prepend-icon":"mdi-refresh",size:"large",variant:"outlined",onClick:l.loadStudents},{default:n(()=>[...e[9]||(e[9]=[o(" 重载名单 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1})]),_:1},8,["class","color"])}const Yt=Y(Ci,[["render",Ai],["__scopeId","data-v-7e220985"]]),Ti={key:0,class:"d-flex justify-center align-center fill-height"},Ii={key:1,class:"d-flex justify-center align-center fill-height"},ji={key:2},Ei={class:"text-caption ml-4 text-medium-emphasis"},Ui={key:0},Ni={key:1},Mi={class:"text-error"},qt={__name:"CloudMigrationDialog",props:{modelValue:Boolean},emits:["update:modelValue"],setup(s,{emit:e}){const a=s,d=e,i=ge(!1),l=ge(!1),r=ge(!1),p=ge([]),u=ge([]),y=ge(!1),T=ge(null),I=ge(null),Q=[{id:"student-list",label:"学生列表",description:"classworks-list-main",matcher:V=>V==="classworks-list-main"||V.startsWith("classworks-list-main")},{id:"homework-data",label:"作业数据",description:"classworks-data-*",matcher:V=>V.startsWith("classworks-data-")},{id:"lists",label:"列表",description:"classworks-list-*",matcher:V=>V.startsWith("classworks-list-")},{id:"other",label:"其他",description:"所有其他键",matcher:V=>!V.startsWith("classworks-data-")&&!V.startsWith("classworks-list-")}];pt(()=>a.modelValue,V=>{i.value=V,V&&H()}),pt(i,V=>{d("update:modelValue",V)});const H=async()=>{l.value=!0;try{const V=await gt.loadKeys({limit:1e3});p.value=V.keys||[],u.value=[]}catch(V){console.error(V)}finally{l.value=!1}},q=V=>p.value.filter(V.matcher),fe=V=>q(V).length,pe=V=>{const b=q(V);return b.length===0?!1:b.filter(P=>u.value.includes(P)).length===b.length},ce=V=>{const b=q(V);if(b.length===0)return!1;const D=b.filter(P=>u.value.includes(P)).length;return D>0&&D{const b=q(V);if(b.length===0)return;const D=pe(V),P=new Set(u.value);D?b.forEach(Z=>P.delete(Z)):b.forEach(Z=>P.add(Z)),u.value=Array.from(P)},be=async()=>{var V,b,D;r.value=!0,I.value=null,T.value=null;try{const P={};for(const O of u.value){const Se=await gt.loadData(O);if(Se){if(Se&&Se.success===!1&&Se.error){console.warn(`Skipping key ${O} due to load error`,Se.error);continue}P[O]=Se}}const Z=_("server.domain"),me=_("server.kvToken");if(!Z||!me)throw new Error("请先配置服务器地址和 Token");const ye=Z.replace(/\/$/,""),G=await jn.post(`${ye}/kv/_batchimport`,P,{headers:{Authorization:`Bearer ${me}`,"Content-Type":"application/json"}});if(G.data&&G.data.code===200)T.value=G.data.data,y.value=!0,i.value=!1;else throw new Error(((V=G.data)==null?void 0:V.message)||"迁移失败")}catch(P){console.error(P),I.value=((D=(b=P.response)==null?void 0:b.data)==null?void 0:D.message)||P.message||"发生未知错误",y.value=!0}finally{r.value=!1}};return(V,b)=>(c(),x(ne,null,[t(we,{modelValue:i.value,"onUpdate:modelValue":b[2]||(b[2]=D=>i.value=D),"max-width":"600",scrollable:""},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[...b[5]||(b[5]=[o("迁移到云端",-1)])]),_:1}),t(j,{style:{height:"400px"}},{default:n(()=>[l.value?(c(),x("div",Ti,[t(Dt,{indeterminate:"",color:"primary"})])):p.value.length===0?(c(),x("div",Ii," 没有找到本地数据 ")):(c(),x("div",ji,[t(J,{"select-strategy":"classic",class:"mb-4"},{default:n(()=>[t(_n,null,{default:n(()=>[...b[6]||(b[6]=[o("选择数据类型",-1)])]),_:1}),(c(),x(ne,null,ue(Q,D=>t(A,{key:D.id,onClick:P=>se(D)},{prepend:n(()=>[t(wt,{"model-value":pe(D),indeterminate:ce(D),onClick:Ae(P=>se(D),["stop"])},null,8,["model-value","indeterminate","onClick"])]),default:n(()=>[t(L,null,{default:n(()=>[o(w(D.label),1)]),_:2},1024),t(ie,null,{default:n(()=>[o(w(D.description)+" ("+w(fe(D))+" 项)",1)]),_:2},1024)]),_:2},1032,["onClick"])),64))]),_:1}),t(M,{class:"mb-4"}),t(it,null,{default:n(()=>[t(lt,{title:"详细数据列表"},{default:n(()=>[t(ot,null,{default:n(()=>[t(J,{"select-strategy":"classic",density:"compact"},{default:n(()=>[(c(!0),x(ne,null,ue(p.value,D=>(c(),g(A,{key:D,value:D},{prepend:n(()=>[t(wt,{modelValue:u.value,"onUpdate:modelValue":b[0]||(b[0]=P=>u.value=P),value:D},null,8,["modelValue","value"])]),default:n(()=>[t(L,null,{default:n(()=>[o(w(D),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})]))]),_:1}),t(M),t(re,null,{default:n(()=>[m("div",Ei," 已选择 "+w(u.value.length)+" 项 ",1),t(te),t(h,{variant:"text",onClick:b[1]||(b[1]=D=>i.value=!1)},{default:n(()=>[...b[7]||(b[7]=[o("取消",-1)])]),_:1}),t(h,{color:"primary",onClick:be,loading:r.value,disabled:u.value.length===0},{default:n(()=>[...b[8]||(b[8]=[o(" 开始迁移 ",-1)])]),_:1},8,["loading","disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:y.value,"onUpdate:modelValue":b[4]||(b[4]=D=>y.value=D),"max-width":"500"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[...b[9]||(b[9]=[o("迁移结果",-1)])]),_:1}),t(j,null,{default:n(()=>[T.value?(c(),x("div",Ui,[m("p",null,"总计: "+w(T.value.summary.total),1),m("p",null,"成功: "+w(T.value.summary.successful),1),m("p",null,"失败: "+w(T.value.summary.failed),1)])):I.value?(c(),x("div",Ni,[m("p",Mi,w(I.value),1)])):k("",!0)]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{color:"primary",onClick:b[3]||(b[3]=D=>y.value=!1)},{default:n(()=>[...b[10]||(b[10]=[o("关闭",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])],64))}},Pi={name:"KvDatabaseCard",components:{SettingsCard:ee,CloudMigrationDialog:qt},data(){return{loading:!1,loadingData:!1,savingData:!1,deletingData:!1,kvData:[],searchQuery:"",viewDialog:!1,editDialog:!1,deleteDialog:!1,createDialog:!1,cloudUrlDialog:!1,showMigrationDialog:!1,selectedItem:null,editingItem:null,itemToDelete:null,selectedCloudItem:null,gettingCloudUrl:!1,cloudUrlResult:null,cloudUrlError:null,cloudUrlOptions:{migrateFromLocal:!0,autoConfigureCloud:!0},editingData:"",newKey:"",newData:"",tableHeaders:[{title:"键名",key:"key",sortable:!0},{title:"操作",key:"actions",sortable:!1,width:"120px"}]}},computed:{currentProvider(){return _("server.provider")},isKvProvider(){return this.currentProvider==="kv-local"||this.currentProvider==="kv-server"||this.currentProvider==="classworkscloud"},connectionStatus(){return this.isKvProvider?this.currentProvider==="kv-local"?"本地数据库":"服务器数据库":"当前数据提供者不支持KV数据库管理"},connectionIcon(){return this.isKvProvider?this.currentProvider==="kv-local"?"mdi-database":"mdi-database-sync":"mdi-database-off"},connectionColor(){return this.isKvProvider?"success":"error"},filteredKvData(){return this.searchQuery?this.kvData.filter(s=>s.key.toLowerCase().includes(this.searchQuery.toLowerCase())):this.kvData},isValidJson(){if(!this.editingData)return!0;try{return JSON.parse(this.editingData),!0}catch{return!1}},isValidNewJson(){if(!this.newData)return!0;try{return JSON.parse(this.newData),!0}catch{return!1}},isValidKey(){return!this.newKey||this.newKey.trim()===""?!1:!this.kvData.some(s=>s.key===this.newKey.trim())}},async mounted(){this.isKvProvider&&await this.loadKvData()},methods:{async refreshConnection(){this.loading=!0;try{await new Promise(s=>setTimeout(s,500)),this.$message.success("连接状态已刷新")}catch(s){this.$message.error("刷新失败",s.message)}finally{this.loading=!1}},async loadKvData(){var s;if(!this.isKvProvider){this.$message.warning("当前数据提供者不支持KV数据库管理");return}this.loadingData=!0;try{this.kvData=[];const e=await ae.loadKeys({sortBy:"key",sortDir:"asc",limit:1e3});if(e.success===!1)throw new Error(((s=e.error)==null?void 0:s.message)||"获取键名列表失败");this.kvData=e.keys.map(a=>({key:a,value:null,loaded:!1})),this.$message.success("键名加载完成",`共找到 ${this.kvData.length} 个键,总计 ${e.total_rows} 个键`)}catch(e){this.$message.error("加载数据失败",e.message)}finally{this.loadingData=!1}},async viewItem(s){this.selectedItem=s,this.viewDialog=!0,(!s.loaded||s.value===null)&&await this.loadItemData(s)},async editItem(s){this.editingItem=s,(!s.loaded||s.value===null)&&await this.loadItemData(s),this.editingData=this.formatJsonData(s.value),this.editDialog=!0},async loadItemData(s){try{const e=await ae.loadData(s.key);if(e&&e.success!==!1)s.value=e,s.loaded=!0;else throw new Error("数据加载失败")}catch(e){this.$message.error("加载数据失败",e.message),s.value=null,s.loaded=!1}},closeEditDialog(){this.editDialog=!1,this.editingItem=null,this.editingData=""},createNewItem(){this.newKey="",this.newData=`{ +import{s as mn,b as fn,V as mt,a as ft,_ as Ct,c as pn}from"./VCombobox-D_3YC1pP.js";import{_ as q,o as c,j as g,w as n,c as t,ai as ze,q as K,v as o,A as w,t as v,z as j,ag as He,D as y,af as Ke,M as ue,l as E,i as m,br as hn,L as Ge,am as _t,bs as Vt,k as _,s as ke,bt as gn,C as x,a0 as z,a1 as ie,y as h,P as J,Q as A,K as P,E as je,aj as tt,F as ne,bu as Be,ac as nt,ak as et,G as de,x as te,Y as Le,a4 as wn,N as Ve,O as Ae,H as we,aa as Dt,bf as vn,B as bn,g as yn,ar as kn,bv as xn,p as Sn,bw as Cn,bd as At,d as Fe,ae as pt,aU as _n,a2 as ge,R as ht,ap as Vn,Z as Dn,a3 as Me,aP as An,r as Tn,X as In}from"./index-BXl8SUNP.js";import{V as X}from"./VChip-jIQL7s_d.js";import{V as Tt}from"./VSwitch-7fkmr9E6.js";import{e as Je,V as It}from"./filter-BHXElGQ1.js";import{V as R}from"./VTextField-DxxbesnN.js";import{d as re,a as Qe,c as gt,b as jn,o as En,k as Un}from"./dataProvider-Cg4CSn_f.js";import{V as $,a as Te}from"./VAlert-DncbAu3E.js";import{V as ce,a as O}from"./VRow-DFPdcq_b.js";import{V as st}from"./VContainer-Doz_PneH.js";import{a as Se}from"./VPagination-BUmJ8K2V.js";import{V as Ie}from"./VTextarea-B0_PT1is.js";import{V as jt}from"./VForm-C1v7pkqf.js";import{V as it,a as lt,b as Et,c as ot}from"./VExpansionPanels-LOsDx07C.js";import{e as Ut,b as Nn,a as he}from"./VTabsWindowItem-CghRaqdq.js";import{V as wt}from"./VCheckboxBtn-iC2wkMdx.js";import{i as Mn,t as Pn}from"./serverRotation-BBUKyTw9.js";import{V as vt,a as bt,b as Bn,c as Ln}from"./VAppBarTitle-hRIhv4pw.js";import{V as zn}from"./VSheet-CWiuVQYN.js";const On={name:"SettingsCard",props:{title:{type:String,required:!0},icon:{type:String,required:!0},loading:{type:Boolean,default:!1}}};function Rn(s,e,a,d,i,l){return c(),g(E,{class:"settings-card rounded-lg",elevation:"2"},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{icon:a.icon,class:"mr-2",size:"large"},null,8,["icon"])]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[o(w(a.title),1)]),_:1})]),_:1}),t(j,null,{default:n(()=>[a.loading?(c(),g(He,{key:0,class:"mb-4",color:"primary",indeterminate:""})):y("",!0),Ke(s.$slots,"default",{},void 0,!0)]),_:3}),s.$slots.actions?(c(),g(ue,{key:0,class:"pa-4"},{default:n(()=>[Ke(s.$slots,"actions",{},void 0,!0)]),_:3})):y("",!0)]),_:3})}const ee=q(On,[["render",Rn],["__scopeId","data-v-9c035df1"]]);var Kn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Fn(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var Nt={exports:{}};(function(s,e){(function(a,d){s.exports=d()})(typeof self<"u"?self:Kn,()=>(()=>{var a={3146:(r,p,u)=>{for(var b=u(3491),T=typeof window>"u"?u.g:window,I=["moz","webkit"],H="AnimationFrame",G=T["request"+H],Z=T["cancel"+H]||T["cancelRequest"+H],fe=0;!G&&fe{var p=r&&r.__esModule?()=>r.default:()=>r;return i.d(p,{a:p}),p},i.d=(r,p)=>{for(var u in p)i.o(p,u)&&!i.o(r,u)&&Object.defineProperty(r,u,{enumerable:!0,get:p[u]})},i.g=function(){if(typeof globalThis=="object")return globalThis;try{return this||new Function("return this")()}catch{if(typeof window=="object")return window}}(),i.o=(r,p)=>Object.prototype.hasOwnProperty.call(r,p);var l={};return(()=>{i.d(l,{default:()=>nn});var r=i(3146),p=i.n(r);const u=function(M){return new RegExp(/<[a-z][\s\S]*>/i).test(M)},b=function(M,S){return Math.floor(Math.random()*(S-M+1))+M};var T="TYPE_CHARACTER",I="REMOVE_CHARACTER",H="REMOVE_ALL",G="REMOVE_LAST_VISIBLE_NODE",Z="PAUSE_FOR",fe="CALL_FUNCTION",pe="ADD_HTML_TAG_ELEMENT",me="CHANGE_DELETE_SPEED",se="CHANGE_DELAY",be="CHANGE_CURSOR",D="PASTE_STRING",V="HTML_TAG";function k(M){return k=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(S){return typeof S}:function(S){return S&&typeof Symbol=="function"&&S.constructor===Symbol&&S!==Symbol.prototype?"symbol":typeof S},k(M)}function N(M,S){var B=Object.keys(M);if(Object.getOwnPropertySymbols){var U=Object.getOwnPropertySymbols(M);S&&(U=U.filter(function(ye){return Object.getOwnPropertyDescriptor(M,ye).enumerable})),B.push.apply(B,U)}return B}function Q(M){for(var S=1;SM.length)&&(S=M.length);for(var B=0,U=Array(S);B1&&arguments[1]!==void 0?arguments[1]:null;if(u(C))return f.typeOutHTMLString(C,F);if(C){var oe=(f.options||{}).stringSplitter,ae=typeof oe=="function"?oe(C):C.split("");f.typeCharacters(ae,F)}return f}),L(this,"pasteString",function(C){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;return u(C)?f.typeOutHTMLString(C,F,!0):(C&&f.addEventToQueue(D,{character:C,node:F}),f)}),L(this,"typeOutHTMLString",function(C){var F=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null,oe=arguments.length>2?arguments[2]:void 0,ae=function(Ee){var Ue=document.createElement("div");return Ue.innerHTML=Ee,Ue.childNodes}(C);if(ae.length>0)for(var Y=0;Y0&&arguments[0]!==void 0?arguments[0]:"natural";return f.addEventToQueue(H,{speed:C}),f}),L(this,"changeDeleteSpeed",function(C){if(!C)throw new Error("Must provide new delete speed");return f.addEventToQueue(me,{speed:C}),f}),L(this,"changeDelay",function(C){if(!C)throw new Error("Must provide new delay");return f.addEventToQueue(se,{delay:C}),f}),L(this,"changeCursor",function(C){if(!C)throw new Error("Must provide new cursor");return f.addEventToQueue(be,{cursor:C}),f}),L(this,"deleteChars",function(C){if(!C)throw new Error("Must provide amount of characters to delete");for(var F=0;F1&&arguments[1]!==void 0?arguments[1]:null;if(!C||!Array.isArray(C))throw new Error("Characters must be an array");return C.forEach(function(oe){f.addEventToQueue(T,{character:oe,node:F})}),f}),L(this,"removeCharacters",function(C){if(!C||!Array.isArray(C))throw new Error("Characters must be an array");return C.forEach(function(){f.addEventToQueue(I)}),f}),L(this,"addEventToQueue",function(C,F){var oe=arguments.length>2&&arguments[2]!==void 0&&arguments[2];return f.addEventToStateProperty(C,F,oe,"eventQueue")}),L(this,"addReverseCalledEvent",function(C,F){var oe=arguments.length>2&&arguments[2]!==void 0&&arguments[2];return f.options.loop?f.addEventToStateProperty(C,F,oe,"reverseCalledEvents"):f}),L(this,"addEventToStateProperty",function(C,F){var oe=arguments.length>2&&arguments[2]!==void 0&&arguments[2],ae=arguments.length>3?arguments[3]:void 0,Y={eventName:C,eventArgs:F||{}};return f.state[ae]=oe?[Y].concat(le(f.state[ae])):[].concat(le(f.state[ae]),[Y]),f}),L(this,"runEventLoop",function(){f.state.lastFrameTime||(f.state.lastFrameTime=Date.now());var C=Date.now(),F=C-f.state.lastFrameTime;if(!f.state.eventQueue.length){if(!f.options.loop)return;f.state.eventQueue=le(f.state.calledEvents),f.state.calledEvents=[],f.options=Q({},f.state.initialOptions)}if(f.state.eventLoop=p()(f.runEventLoop),!f.state.eventLoopPaused){if(f.state.pauseUntil){if(C({typewriter:null,sourceWriter:null,currentQuote:xt,hasClicked:!1}),mounted(){this.initTypewriters()},methods:{initTypewriters(){this.typewriter=new yt(this.$refs.typewriter,St.main),this.sourceWriter=new yt(this.$refs.sourceWriter,St.source),this.typeQuote(xt)},typeQuote(s){this.typewriter.deleteAll(30).typeString(s.text).start(),s.author&&this.sourceWriter.deleteAll(20).typeString(s.author).start()},async handleClick(){this.hasClicked||(this.hasClicked=!0),await this.copyToClipboard(),this.currentQuote=this.getRandomQuote(),this.typeQuote(this.currentQuote)},getRandomQuote(){return kt.quotes[Math.floor(Math.random()*kt.quotes.length)]},async copyToClipboard(){if(!this.currentQuote)return;const{text:s,author:e,contributor:a,link:d}=this.currentQuote,i=[s,e&&`作者:${e}`,a&&`贡献者:${a}`,(d||a)&&`来源:${d||`https://github.com/${a}`}`].filter(Boolean);try{await navigator.clipboard.writeText(i.join(` +`))}catch(l){console.error("复制失败:",l)}}},beforeUnmount(){[this.typewriter,this.sourceWriter].forEach(s=>s==null?void 0:s.stop())}},Gn={ref:"typewriter",class:"typewriter-text"},Wn={ref:"sourceWriter",class:"source-text"};function Yn(s,e,a,d,i,l){const r=ee;return c(),g(r,{border:"",icon:"mdi-thought-bubble",title:"回声洞",onClick:l.handleClick},{default:n(()=>[t(j,null,{default:n(()=>[m("div",Gn,null,512),m("div",Wn,null,512)]),_:1}),t(hn,{name:"fade"},{default:n(()=>{var p;return[(p=s.currentQuote)!=null&&p.contributor?(c(),g(X,{key:0,class:"contributor"},{default:n(()=>[t(Ge,{start:""},{default:n(()=>[t(_t,{src:`https://github.com/${s.currentQuote.contributor}.png`},null,8,["src"])]),_:1}),o(" "+w(s.currentQuote.contributor),1)]),_:1})):y("",!0)]}),_:1})]),_:1},8,["onClick"])}const Mt=q(Hn,[["render",Yn],["__scopeId","data-v-a6a55e27"]]),qn={name:"SettingItem",props:{settingKey:{type:String,required:!0},icon:{type:String,default:null},disabled:{type:Boolean,default:!1},title:{type:String,default:null},description:{type:String,default:null}},data(){return{localValue:null,definition:null,type:null,selectOptions:[],hasOptions:!1,minValue:0,maxValue:100,stepValue:1,showSnackbar:!1,snackbarText:"",fontFamilies:[{title:"Arial",value:"Arial, sans-serif"},{title:"Calibri",value:"Calibri, sans-serif"},{title:"Cambria",value:"Cambria, serif"},{title:"Consolas",value:"Consolas, monospace"},{title:"Courier New",value:"Courier New, monospace"},{title:"Georgia",value:"Georgia, serif"},{title:"Helvetica",value:"Helvetica, sans-serif"},{title:"Segoe UI",value:"Segoe UI, sans-serif"},{title:"Times New Roman",value:"Times New Roman, serif"},{title:"Trebuchet MS",value:"Trebuchet MS, sans-serif"},{title:"Verdana",value:"Verdana, sans-serif"},{title:"Monospace",value:"monospace"},{title:"Sans-serif",value:"sans-serif"},{title:"Serif",value:"serif"}],displayValueMappings:{"display.emptySubjectDisplay":{card:"卡片",button:"按钮"},"theme.mode":{light:"浅色",dark:"深色"},"server.provider":{classworkscloud:"Classworks云端存储","kv-local":"KV本地存储","kv-server":"KV远程服务器"}},defaultIcons:{boolean:"mdi-toggle-switch-outline",number:"mdi-numeric",string:"mdi-form-textbox"}}},computed:{displayTitle(){if(this.title)return this.title;if(this.definition&&this.definition.description)return this.definition.description;const s=this.settingKey.split(".");return s[s.length-1]},displayDescription(){return this.description?this.description:this.settingKey},isFontFamily(){return this.settingKey.toLowerCase().includes("fontfamily")||this.settingKey.toLowerCase().includes("font.family")},isDefaultValue(){return this.definition?typeof this.localValue=="object"&&this.localValue!==null?JSON.stringify(this.localValue)===JSON.stringify(this.definition.default):this.localValue===this.definition.default:!0},settingIcon(){return this.icon?this.icon:this.definition&&this.definition.icon?this.definition.icon:this.defaultIcons[this.type]||"mdi-cog-outline"}},created(){this.loadSetting()},methods:{loadSetting(){if(this.definition=gn(this.settingKey),!this.definition){console.error(`未找到设置项定义: ${this.settingKey}`);return}if(this.type=this.definition.type,this.localValue=_(this.settingKey),this.type==="string"){if(this.isFontFamily)this.selectOptions=this.fontFamilies,this.hasOptions=!0;else if(this.settingKey in this.displayValueMappings){const s=this.displayValueMappings[this.settingKey];this.selectOptions=Object.entries(s).map(([e,a])=>({title:a,value:e})),this.hasOptions=!0}else if(this.definition.validate){const e=this.definition.validate.toString().match(/\[(.*?)\]/);if(e){const d=e[1].split(",").map(i=>{const l=i.trim().replace(/['"]/g,"");return{title:this.getDisplayValue(l)||l,value:l}});d.length>0&&(this.selectOptions=d,this.hasOptions=!0)}}}if(this.type==="number"&&this.definition.validate){const s=this.definition.validate.toString(),e=s.match(/value\s*>=\s*(\d+)/);e&&(this.minValue=Number(e[1]));const a=s.match(/value\s*<=\s*(\d+)/);a&&(this.maxValue=Number(a[1]));const d=this.maxValue-this.minValue;d>100?this.stepValue=10:d>20?this.stepValue=5:d>10?this.stepValue=2:this.stepValue=1}},getDisplayValue(s){return this.settingKey in this.displayValueMappings&&this.displayValueMappings[this.settingKey][s]||s},updateSetting(s){let e=s;this.type==="boolean"?e=!!s:this.type==="number"&&(e=Number(s),ethis.maxValue&&(e=this.maxValue)),ke(this.settingKey,e)?this.$emit("update",this.settingKey,e):(this.localValue=_(this.settingKey),this.$emit("error",this.settingKey))},adjustValue(s){if(this.type!=="number")return;const e=this.localValue+s;e>=this.minValue&&e<=this.maxValue&&(this.localValue=e,this.updateSetting(e))},copySettingId(){navigator.clipboard.writeText(this.settingKey).then(()=>{this.showSnackbarMessage("设置ID已复制到剪贴板")}).catch(s=>{console.error("复制失败:",s)})},copySettingValue(){let s="";typeof this.localValue=="object"&&this.localValue!==null?s=JSON.stringify(this.localValue):s=String(this.localValue),navigator.clipboard.writeText(s).then(()=>{this.showSnackbarMessage("设置值已复制到剪贴板")}).catch(e=>{console.error("复制失败:",e)})},resetToDefault(){this.definition&&(Vt(this.settingKey),this.localValue=_(this.settingKey),this.showSnackbarMessage("已重置为默认值"),this.$emit("update",this.settingKey,this.localValue))},showSnackbarMessage(s){this.snackbarText=s,this.showSnackbar=!0}}},Zn={class:"text-caption text-grey-darken-1"},Xn={class:"d-flex flex-column flex-sm-row align-center"},$n={key:0,class:"me-2"},es={key:2,class:"d-flex align-center"},ts={key:0,class:"px-4 pb-2 pt-0"};function ns(s,e,a,d,i,l){return c(),x(ne,null,[t(A,{disabled:a.disabled,class:"setting-item"},{prepend:n(()=>[t(v,{icon:l.settingIcon},null,8,["icon"])]),append:n(()=>[m("div",Xn,[i.type!=="string"||i.hasOptions?(c(),x("div",$n,[i.type==="boolean"?(c(),g(Tt,{key:0,modelValue:i.localValue,"onUpdate:modelValue":[e[0]||(e[0]=r=>i.localValue=r),l.updateSetting],disabled:a.disabled,density:"comfortable","hide-details":""},null,8,["modelValue","disabled","onUpdate:modelValue"])):i.type==="string"&&i.hasOptions?(c(),g(Je,{key:1,modelValue:i.localValue,"onUpdate:modelValue":[e[1]||(e[1]=r=>i.localValue=r),l.updateSetting],disabled:a.disabled,items:i.selectOptions,"bg-color":"surface",class:"setting-select",density:"compact","hide-details":"","item-title":"title","item-value":"value",variant:"outlined"},null,8,["modelValue","disabled","items","onUpdate:modelValue"])):i.type==="number"?(c(),x("div",es,[t(h,{disabled:a.disabled||i.localValue<=i.minValue,icon:"mdi-minus",size:"small",variant:"text",onClick:e[2]||(e[2]=r=>l.adjustValue(-i.stepValue))},null,8,["disabled"]),t(R,{modelValue:i.localValue,"onUpdate:modelValue":[e[3]||(e[3]=r=>i.localValue=r),l.updateSetting],modelModifiers:{number:!0},disabled:a.disabled,max:i.maxValue,min:i.minValue,step:i.stepValue,"bg-color":"surface",class:"mx-2 setting-number-field",density:"compact","hide-details":"",style:{width:"80px"},type:"number",variant:"outlined"},null,8,["modelValue","disabled","max","min","step","onUpdate:modelValue"]),t(h,{disabled:a.disabled||i.localValue>=i.maxValue,icon:"mdi-plus",size:"small",variant:"text",onClick:e[4]||(e[4]=r=>l.adjustValue(i.stepValue))},null,8,["disabled"])])):y("",!0)])):y("",!0),t(It,{location:"bottom"},{activator:n(({props:r})=>[t(h,je({disabled:a.disabled,class:"ml-2",icon:"mdi-dots-vertical",size:"small"},r,{variant:"text"}),null,16,["disabled"])]),default:n(()=>[t(J,{density:"compact"},{default:n(()=>[t(A,{onClick:l.copySettingId},{prepend:n(()=>[t(v,{icon:"mdi-key",size:"small"})]),default:n(()=>[t(z,null,{default:n(()=>[...e[7]||(e[7]=[o("复制设置ID",-1)])]),_:1})]),_:1},8,["onClick"]),t(A,{onClick:l.copySettingValue},{prepend:n(()=>[t(v,{icon:"mdi-content-copy",size:"small"})]),default:n(()=>[t(z,null,{default:n(()=>[...e[8]||(e[8]=[o("复制设置值",-1)])]),_:1})]),_:1},8,["onClick"]),t(P),t(A,{disabled:l.isDefaultValue,onClick:l.resetToDefault},{prepend:n(()=>[t(v,{icon:"mdi-restore",size:"small"})]),default:n(()=>[t(z,null,{default:n(()=>[...e[9]||(e[9]=[o("重置为默认值",-1)])]),_:1})]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})])]),default:n(()=>[t(z,{class:"text-wrap"},{default:n(()=>[o(w(l.displayTitle),1)]),_:1}),t(ie,{class:"d-flex align-center text-wrap"},{default:n(()=>[m("span",Zn,w(a.settingKey),1)]),_:1})]),_:1},8,["disabled"]),i.type==="string"&&!i.hasOptions?(c(),x("div",ts,[t(R,{modelValue:i.localValue,"onUpdate:modelValue":[e[5]||(e[5]=r=>i.localValue=r),l.updateSetting],disabled:a.disabled,"bg-color":"surface",class:"setting-text-field mt-1",density:"compact","hide-details":"",variant:"outlined"},null,8,["modelValue","disabled","onUpdate:modelValue"])])):y("",!0),t(tt,{modelValue:i.showSnackbar,"onUpdate:modelValue":e[6]||(e[6]=r=>i.showSnackbar=r),timeout:2e3,color:"success",location:"top"},{default:n(()=>[o(w(i.snackbarText),1)]),_:1},8,["modelValue"])],64)}const Ce=q(qn,[["render",ns],["__scopeId","data-v-08b49b47"]]),ss={name:"SettingsExplorer",components:{SettingItem:Ce},data(){return{searchQuery:"",currentSettings:{},unwatchFunction:null}},computed:{isDeveloperMode(){return _("developer.enabled")},allSettings(){var e;const s=[];for(const[a,d]of Object.entries(et))this.searchQuery&&!a.toLowerCase().includes(this.searchQuery.toLowerCase())&&!((e=d.description)!=null&&e.toLowerCase().includes(this.searchQuery.toLowerCase()))||s.push({key:a,...d});return s},formattedSettings(){return JSON.stringify(this.currentSettings,null,2)}},created(){this.updateCurrentSettings(),this.unwatchFunction=nt(()=>{this.updateCurrentSettings()})},beforeUnmount(){this.unwatchFunction&&this.unwatchFunction()},methods:{updateCurrentSettings(){this.currentSettings=Be()},onSettingUpdate(s,e){this.$emit("update",s,e),this.updateCurrentSettings()},onSettingError(s){this.$emit("error",s)},copySettingsToClipboard(){navigator.clipboard.writeText(JSON.stringify(this.currentSettings)).then(()=>{this.$emit("message",{type:"success",text:"设置已复制到剪贴板"})}).catch(s=>{console.error("复制到剪贴板失败:",s),this.$emit("message",{type:"error",text:"复制到剪贴板失败"})})}}},is={class:"settings-explorer"},ls={class:"settings-json"};function os(s,e,a,d,i,l){const r=Ce;return c(),x("div",is,[m("div",null,[t(R,{modelValue:i.searchQuery,"onUpdate:modelValue":e[0]||(e[0]=p=>i.searchQuery=p),class:"mb-4",clearable:"",density:"comfortable",label:"搜索设置","prepend-inner-icon":"mdi-magnify",variant:"outlined"},null,8,["modelValue"]),t(J,null,{default:n(()=>[(c(!0),x(ne,null,de(l.allSettings,p=>(c(),x("div",{key:p.key},[(c(),g(r,{key:p.key,disabled:p.requireDeveloper&&!l.isDeveloperMode,"setting-key":p.key,onError:l.onSettingError,onUpdate:l.onSettingUpdate},null,8,["disabled","setting-key","onError","onUpdate"])),t(P,{class:"my-2"})]))),128))]),_:1}),t(E,{border:""},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[...e[1]||(e[1]=[o("当前配置",-1)])]),_:1}),t(j,null,{default:n(()=>[m("pre",ls,w(l.formattedSettings),1)]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{onClick:l.copySettingsToClipboard},{default:n(()=>[e[3]||(e[3]=o(" 复制到剪贴板 ",-1)),t(v,{right:""},{default:n(()=>[...e[2]||(e[2]=[o("mdi-content-copy",-1)])]),_:1})]),_:1},8,["onClick"])]),_:1})]),_:1})])])}const Pt=q(ss,[["render",os],["__scopeId","data-v-4d032f99"]]),as={name:"SettingGroup",props:{title:{type:String,default:null},description:{type:String,default:null},icon:{type:String,default:null},border:{type:Boolean,default:!1}},methods:{onSettingUpdate(s,e){this.$emit("update",s,e)},onSettingError(s){this.$emit("error",s)}}};function rs(s,e,a,d,i,l){return c(),g(E,{border:a.border,class:"setting-group"},{default:n(()=>[a.title?(c(),g(K,{key:0,class:"d-flex align-center"},{default:n(()=>[a.icon?(c(),g(v,{key:0,icon:a.icon,class:"mr-2"},null,8,["icon"])):y("",!0),o(" "+w(a.title),1)]),_:1})):y("",!0),a.description?(c(),g(Le,{key:1},{default:n(()=>[o(w(a.description),1)]),_:1})):y("",!0),t(j,null,{default:n(()=>[t(J,null,{default:n(()=>[Ke(s.$slots,"default",{},void 0,!0)]),_:3})]),_:3}),s.$slots.actions?(c(),g(ue,{key:2},{default:n(()=>[Ke(s.$slots,"actions",{},void 0,!0)]),_:3})):y("",!0)]),_:3},8,["border"])}const We=q(as,[["render",rs],["__scopeId","data-v-9af32ae4"]]),us={subjects:{语文:{books:{课本:["第一单元","第二单元"],练习册:["第一章","第二章"]}},数学:{books:{课本:["第一章","第二章"],习题册:["基础练习","提高练习"]}},英语:{books:{课本:["Unit 1","Unit 2"],练习册:["Chapter 1","Chapter 2"]}}},commonSubject:{books:{试卷:["单元测试","期中测试","期末测试"],假期作业:["必做题","选做题"]}},actions:["写完","下一课","不交","明天交"]},ds={name:"HomeworkTemplateCard",components:{SettingsCard:ee,SettingGroup:We},data(){return{loading:!1,error:null,config:wn(JSON.parse(JSON.stringify(us))),originalConfig:null,newSubject:"",newCommonBook:"",newAction:"",newTask:"",editedSubjects:{},editedBookTypes:{},newBookTypes:{},newBooks:{},showSnackbar:!1,snackbarText:"",snackbarColor:"success",isNewConfig:!0,dialog:{show:!1,title:"",nameLabel:"",editedItem:{name:"",type:"",subject:"",bookType:"",originalName:"",tasks:[]}}}},computed:{subjectList(){return Object.keys(this.config.subjects)},hasChanges(){return this.isNewConfig?!0:this.originalConfig&&JSON.stringify(this.config)!==JSON.stringify(this.originalConfig)}},created(){this.loadConfig()},methods:{async loadConfig(){var s,e;this.loading=!0;try{const a=await re.loadData("classworks-config-homework-template");if(a){const d=a;Object.assign(this.config,d),this.originalConfig=JSON.parse(JSON.stringify(d)),this.isNewConfig=!1,this.showMessage("配置已加载","success")}else if(((s=a.error)==null?void 0:s.code)==="NOT_FOUND")this.showMessage("使用默认配置","info"),this.isNewConfig=!0;else{const d=((e=a.error)==null?void 0:e.message)||"加载失败";this.showMessage(`加载失败: ${d},可继续编辑当前配置`,"warning")}}catch(a){console.error("Failed to load config:",a),this.showMessage("加载失败,可继续编辑当前配置","warning")}this.loading=!1},async saveConfig(){this.loading=!0;try{const s=await re.saveData("classworks-config-homework-template",this.config);if(s)this.originalConfig=JSON.parse(JSON.stringify(this.config)),this.isNewConfig=!1,this.showMessage("配置已保存","success");else throw new Error(s||"保存失败")}catch(s){console.error("Failed to save config:",s),this.showMessage(`保存失败: ${s.message},请稍后重试`,"error")}this.loading=!1},showMessage(s,e="success"){this.snackbarText=s,this.snackbarColor=e,this.showSnackbar=!0},addSubject(){this.newSubject&&(this.config.subjects[this.newSubject]||(this.config.subjects[this.newSubject]={books:{}}),this.newSubject="")},updateSubject(s){const e=this.editedSubjects[s];if(e&&e!==s){const a=this.config.subjects[s];this.config.subjects[e]=a,delete this.config.subjects[s]}delete this.editedSubjects[s]},deleteSubject(s){delete this.config.subjects[s]},addBookType(s){const e=this.newBookTypes[s];e&&(this.config.subjects[s].books[e]||(this.config.subjects[s].books[e]=[]),this.newBookTypes[s]="")},updateBookType(s,e){const a=`${s}-${e}`,d=this.editedBookTypes[a];if(d&&d!==e){const i=this.config.subjects[s].books[e];this.config.subjects[s].books[d]=i,delete this.config.subjects[s].books[e]}delete this.editedBookTypes[a]},deleteBookType(s,e){s==="common"?delete this.config.commonSubject.books[e]:delete this.config.subjects[s].books[e]},addBook(s,e){const a=`${s}-${e}`,d=this.newBooks[a];d&&(this.config.subjects[s].books[e].includes(d)||this.config.subjects[s].books[e].push(d),this.newBooks[a]="")},removeBook(s,e,a){const d=this.config.subjects[s].books[e],i=d.indexOf(a);i>-1&&d.splice(i,1)},addCommonBook(){this.newCommonBook&&(this.config.commonSubject.books[this.newCommonBook]||(this.config.commonSubject.books[this.newCommonBook]=[]),this.newCommonBook="")},removeCommonBook(s){delete this.config.commonSubject.books[s]},addAction(){this.newAction&&(this.config.actions.includes(this.newAction)||this.config.actions.push(this.newAction),this.newAction="")},removeAction(s){const e=this.config.actions.indexOf(s);e>-1&&this.config.actions.splice(e,1)},openBookDialog(s,e,a){this.dialog.show=!0,this.dialog.title="编辑需完成部分",this.dialog.nameLabel="部分名称",this.dialog.editedItem={name:a,type:"book",subject:s,bookType:e,originalName:a,tasks:this.config.subjects[s].books[e]}},openCommonBookDialog(s){this.dialog.show=!0,this.dialog.title="编辑通用作业本",this.dialog.nameLabel="作业本名称",this.dialog.editedItem={name:s,type:"commonBook",originalName:s,tasks:Array.isArray(this.config.commonSubject.books[s])?[...this.config.commonSubject.books[s]]:[]}},openActionDialog(s){this.dialog={show:!0,title:"编辑操作",nameLabel:"操作名称",editedItem:{name:s,type:"action",originalName:s,tasks:[]}}},addTask(){this.newTask&&(this.dialog.editedItem.tasks||(this.dialog.editedItem.tasks=[]),this.dialog.editedItem.tasks.push(this.newTask),this.newTask="")},removeTask(s){this.dialog.editedItem.tasks.splice(s,1)},openSubjectBookDialog(s,e,a){this.dialog.show=!0,this.dialog.title=s==="common"?"编辑通用作业本":"编辑作业本",this.dialog.nameLabel="作业本名称",this.dialog.editedItem={name:e,type:"subjectBook",subject:s,originalName:e,tasks:Array.isArray(a)?[...a]:[]}},saveDialog(){const{type:s,name:e,subject:a,originalName:d,tasks:i}=this.dialog.editedItem;if(!e){this.showMessage("名称不能为空","error");return}let l;const r=a==="common"?this.config.commonSubject.books:a?this.config.subjects[a].books:null;switch(s){case"subjectBook":r&&(d!==e?(r[e]=i||[],delete r[d]):r[e]=i||[]);break;case"action":l=this.config.actions.indexOf(d),l>-1&&(this.config.actions[l]=e);break}this.closeDialog()},closeDialog(){this.dialog={show:!1,title:"",nameLabel:"",editedItem:{name:"",type:"",subject:"",originalName:"",tasks:[]}},this.newTask=""}}},cs={class:"d-flex justify-space-between align-center mb-6"};function ms(s,e,a,d,i,l){const r=We,p=ee;return c(),g(p,{loading:i.loading,border:"",icon:"mdi-book-edit",title:"作业模板配置"},{default:n(()=>[i.error?(c(),g($,{key:0,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):y("",!0),m("div",cs,[m("div",null,[t(h,{loading:i.loading,class:"mr-2",color:"primary","prepend-icon":"mdi-refresh",size:"large",onClick:l.loadConfig},{default:n(()=>[...e[7]||(e[7]=[o(" 重新加载配置 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{loading:i.loading,color:"success","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveConfig},{default:n(()=>[...e[8]||(e[8]=[o(" 保存所有更改 ",-1)])]),_:1},8,["loading","onClick"])]),l.hasChanges?(c(),g(X,{key:0,color:"warning",variant:"elevated"},{default:n(()=>[...e[9]||(e[9]=[o(" 有未保存的更改 ",-1)])]),_:1})):y("",!0)]),t(ce,null,{default:n(()=>[t(O,{cols:"12",md:"6"},{default:n(()=>[t(r,{border:"",icon:"mdi-book",title:"科目配置"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{default:n(()=>[t(R,{modelValue:i.newSubject,"onUpdate:modelValue":e[0]||(e[0]=u=>i.newSubject=u),"append-inner-icon":"mdi-plus",density:"comfortable",label:"添加新科目",variant:"outlined","onClick:appendInner":l.addSubject,onKeyup:Ve(l.addSubject,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1}),(c(!0),x(ne,null,de(l.subjectList,u=>(c(),g(A,{key:u},{default:n(()=>[t(E,{border:"",class:"w-100 mb-2"},{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(R,{modelValue:i.editedSubjects[u],"onUpdate:modelValue":b=>i.editedSubjects[u]=b,placeholder:u,density:"comfortable","hide-details":"",variant:"plain",onBlur:b=>l.updateSubject(u)},null,8,["modelValue","onUpdate:modelValue","placeholder","onBlur"]),t(te),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:b=>l.deleteSubject(u)},null,8,["onClick"])]),_:2},1024),t(j,null,{default:n(()=>[t(R,{modelValue:i.newBookTypes[u],"onUpdate:modelValue":b=>i.newBookTypes[u]=b,"append-inner-icon":"mdi-plus",class:"mb-2",density:"comfortable",label:"添加作业本名称",variant:"outlined","onClick:appendInner":()=>l.addBookType(u),onKeyup:Ve(()=>l.addBookType(u),["enter"])},null,8,["modelValue","onUpdate:modelValue","onClick:appendInner","onKeyup"]),t(J,{border:"",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,de(i.config.subjects[u].books,(b,T)=>(c(),g(A,{key:T,title:T,onClick:I=>l.openSubjectBookDialog(u,T,b)},{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-book-open-variant"})]),append:n(()=>[t(X,{class:"mr-2",color:"info",size:"small"},{default:n(()=>[o(w(b.length)+"个部分 ",1)]),_:2},1024),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:Ae(()=>l.deleteBookType(u,T),["stop"])},null,8,["onClick"])]),_:2},1032,["title","onClick"]))),128))]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),t(O,{cols:"12",md:"6"},{default:n(()=>[t(r,{border:"",icon:"mdi-cog",title:"通用配置"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{default:n(()=>[t(R,{modelValue:i.newCommonBook,"onUpdate:modelValue":e[1]||(e[1]=u=>i.newCommonBook=u),"append-inner-icon":"mdi-plus",density:"comfortable",label:"添加作业本名称",variant:"outlined","onClick:appendInner":l.addCommonBook,onKeyup:Ve(l.addCommonBook,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1}),t(A,null,{default:n(()=>[t(J,{border:"",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,de(i.config.commonSubject.books,(u,b)=>(c(),g(A,{key:b,title:b,onClick:T=>l.openSubjectBookDialog("common",b,u)},{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-book-multiple"})]),append:n(()=>[t(X,{class:"mr-2",color:"info",size:"small"},{default:n(()=>[o(w(u.length)+"个部分 ",1)]),_:2},1024),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:Ae(()=>l.deleteBookType("common",b),["stop"])},null,8,["onClick"])]),_:2},1032,["title","onClick"]))),128))]),_:1})]),_:1}),t(P,{class:"my-2"}),t(A,null,{default:n(()=>[t(R,{modelValue:i.newAction,"onUpdate:modelValue":e[2]||(e[2]=u=>i.newAction=u),"append-inner-icon":"mdi-plus",density:"comfortable",label:"添加操作",variant:"outlined","onClick:appendInner":l.addAction,onKeyup:Ve(l.addAction,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1}),t(A,null,{default:n(()=>[t(J,{border:"",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,de(i.config.actions,u=>(c(),g(A,{key:u,title:u,onClick:b=>l.openActionDialog(u)},{append:n(()=>[t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:Ae(b=>l.removeAction(u),["stop"])},null,8,["onClick"])]),_:2},1032,["title","onClick"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),t(we,{modelValue:i.dialog.show,"onUpdate:modelValue":e[5]||(e[5]=u=>i.dialog.show=u),"max-width":"600px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"text-h5 pa-4"},{default:n(()=>[o(w(i.dialog.title),1)]),_:1}),t(j,null,{default:n(()=>[t(st,null,{default:n(()=>[t(ce,null,{default:n(()=>[t(O,{cols:"12"},{default:n(()=>[t(R,{modelValue:i.dialog.editedItem.name,"onUpdate:modelValue":e[3]||(e[3]=u=>i.dialog.editedItem.name=u),label:i.dialog.nameLabel,rules:[u=>!!u||"名称不能为空"],density:"comfortable",variant:"outlined"},null,8,["modelValue","label","rules"])]),_:1}),i.dialog.editedItem.type==="subjectBook"?(c(),g(O,{key:0,cols:"12"},{default:n(()=>[e[10]||(e[10]=m("div",{class:"text-subtitle-2 mb-2"},"所属科目",-1)),t(X,{color:"primary"},{default:n(()=>[o(w(i.dialog.editedItem.subject),1)]),_:1})]),_:1})):y("",!0),["subjectBook","commonBook"].includes(i.dialog.editedItem.type)?(c(),g(O,{key:1,cols:"12"},{default:n(()=>[t(E,{variant:"outlined"},{default:n(()=>[t(K,{class:"text-subtitle-1 py-2"},{default:n(()=>[...e[11]||(e[11]=[o("需完成部分",-1)])]),_:1}),t(j,{class:"pt-0"},{default:n(()=>[t(J,{border:"",class:"mb-2",density:"compact",rounded:""},{default:n(()=>[(c(!0),x(ne,null,de(i.dialog.editedItem.tasks,(u,b)=>(c(),g(A,{key:b},{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-checkbox-blank-circle-outline",size:"small"})]),append:n(()=>[t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:T=>l.removeTask(b)},null,8,["onClick"])]),default:n(()=>[t(R,{modelValue:i.dialog.editedItem.tasks[b],"onUpdate:modelValue":T=>i.dialog.editedItem.tasks[b]=T,density:"compact","hide-details":"",variant:"plain"},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1024))),128))]),_:1}),t(R,{modelValue:i.newTask,"onUpdate:modelValue":e[4]||(e[4]=u=>i.newTask=u),"append-inner-icon":"mdi-plus",class:"mt-2",density:"comfortable",label:"添加需完成部分",variant:"outlined","onClick:appendInner":l.addTask,onKeyup:Ve(l.addTask,["enter"])},null,8,["modelValue","onClick:appendInner","onKeyup"])]),_:1})]),_:1})]),_:1})):y("",!0)]),_:1})]),_:1})]),_:1}),t(ue,{class:"pa-4"},{default:n(()=>[t(te),t(h,{color:"primary",variant:"elevated",onClick:l.saveDialog},{default:n(()=>[...e[12]||(e[12]=[o(" 关闭 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"error",variant:"text",onClick:l.closeDialog},{default:n(()=>[...e[13]||(e[13]=[o(" 取消 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(tt,{modelValue:i.showSnackbar,"onUpdate:modelValue":e[6]||(e[6]=u=>i.showSnackbar=u),color:i.snackbarColor,timeout:3e3},{default:n(()=>[o(w(i.snackbarText),1)]),_:1},8,["modelValue","color"])]),_:1},8,["loading"])}const Bt=q(ds,[["render",ms],["__scopeId","data-v-67769fa2"]]),fs={name:"SubjectManagementCard",components:{SettingsCard:ee},data(){return{loading:!1,error:null,subjects:[],originalSubjects:null,newSubjectName:"",showSnackbar:!1,snackbarText:"",snackbarColor:"success",defaultSubjects:[{name:"语文",order:0},{name:"数学",order:1},{name:"英语",order:2},{name:"物理",order:3},{name:"化学",order:4},{name:"生物",order:5},{name:"政治",order:6},{name:"历史",order:7},{name:"地理",order:8},{name:"其他",order:9}]}},computed:{hasChanges(){return this.originalSubjects&&JSON.stringify(this.subjects)!==JSON.stringify(this.originalSubjects)}},created(){this.loadConfig()},methods:{async loadConfig(){this.loading=!0;try{const s=await re.loadData("classworks-config-subject");s?(this.subjects=s.map((e,a)=>({name:e.name,order:e.order??a})).sort((e,a)=>e.order-a.order),this.originalSubjects=JSON.parse(JSON.stringify(this.subjects)),this.showMessage("配置已加载","success")):(this.subjects=[],this.originalSubjects=[],this.showMessage("使用默认配置","info"))}catch(s){console.error("Failed to load config:",s),this.showMessage("加载失败,可继续编辑当前配置","warning")}this.loading=!1},async saveConfig(){this.loading=!0;try{const s=await re.saveData("classworks-config-subject",this.subjects);if(s)this.originalSubjects=JSON.parse(JSON.stringify(this.subjects)),this.showMessage("配置已保存","success");else throw new Error(s||"保存失败")}catch(s){console.error("Failed to save config:",s),this.showMessage(`保存失败: ${s.message},请稍后重试`,"error")}this.loading=!1},showMessage(s,e="success"){this.snackbarText=s,this.snackbarColor=e,this.showSnackbar=!0},addSubject(){if(!this.newSubjectName)return;const s={name:this.newSubjectName,order:this.subjects.length};this.subjects.push(s),this.newSubjectName=""},updateSubject(s){const e=this.subjects.findIndex(a=>a.order===s.order);e>-1&&(this.subjects[e]={...s})},deleteSubject(s){const e=this.subjects.findIndex(a=>a.order===s.order);e>-1&&(this.subjects.splice(e,1),this.subjects.forEach((a,d)=>{a.order=d}))},moveSubject(s,e){const a=s+e;if(a>=0&&a{i.order=l})}},resetToDefault(){this.subjects=JSON.parse(JSON.stringify(this.defaultSubjects)),this.showMessage("已重置为默认科目列表","info")}}},ps={class:"d-flex justify-space-between align-center mb-6"},hs={class:"d-flex flex-column align-center mr-2"};function gs(s,e,a,d,i,l){const r=ee;return c(),g(r,{loading:i.loading,border:"",icon:"mdi-book-multiple",title:"科目管理"},{default:n(()=>[i.error?(c(),g($,{key:0,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):y("",!0),m("div",ps,[m("div",null,[t(h,{loading:i.loading,class:"mr-2",color:"primary","prepend-icon":"mdi-refresh",size:"large",variant:"text",onClick:l.loadConfig},{default:n(()=>[...e[2]||(e[2]=[o(" 重新加载 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{loading:i.loading,color:"success","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveConfig},{default:n(()=>[...e[3]||(e[3]=[o(" 保存 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{loading:i.loading,class:"mr-2","prepend-icon":"mdi-restore",variant:"text",onClick:l.resetToDefault},{default:n(()=>[...e[4]||(e[4]=[o(" 重置为默认 ",-1)])]),_:1},8,["loading","onClick"])]),l.hasChanges?(c(),g(X,{key:0,color:"warning",variant:"elevated"},{default:n(()=>[...e[5]||(e[5]=[o(" 有未保存的更改 ",-1)])]),_:1})):y("",!0)]),t(E,{class:"mb-4",variant:"outlined"},{default:n(()=>[t(j,null,{default:n(()=>[t(ce,null,{default:n(()=>[t(O,{cols:"12",sm:"6"},{default:n(()=>[t(R,{modelValue:i.newSubjectName,"onUpdate:modelValue":e[0]||(e[0]=p=>i.newSubjectName=p),rules:[p=>!!p||"科目名称不能为空"],"append-inner-icon":"mdi-plus",density:"comfortable",label:"科目名称",variant:"outlined",onKeyup:Ve(l.addSubject,["enter"]),"onClick:appendInner":l.addSubject},null,8,["modelValue","rules","onKeyup","onClick:appendInner"])]),_:1})]),_:1})]),_:1})]),_:1}),t(E,{variant:"outlined"},{default:n(()=>[t(j,{class:"pa-0"},{default:n(()=>[t(J,{lines:"one"},{default:n(()=>[(c(!0),x(ne,null,de(i.subjects,(p,u)=>(c(),g(A,{key:p.order},{prepend:n(()=>[m("div",hs,[t(h,{disabled:u===0,icon:"mdi-chevron-up",size:"small",variant:"text",onClick:b=>l.moveSubject(u,-1)},null,8,["disabled","onClick"]),t(h,{disabled:u===i.subjects.length-1,icon:"mdi-chevron-down",size:"small",variant:"text",onClick:b=>l.moveSubject(u,1)},null,8,["disabled","onClick"])])]),append:n(()=>[t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:b=>l.deleteSubject(p)},null,8,["onClick"])]),default:n(()=>[t(z,null,{default:n(()=>[t(R,{modelValue:p.name,"onUpdate:modelValue":b=>p.name=b,density:"compact","hide-details":"",variant:"plain",onBlur:b=>l.updateSubject(p)},null,8,["modelValue","onUpdate:modelValue","onBlur"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1}),t(tt,{modelValue:i.showSnackbar,"onUpdate:modelValue":e[1]||(e[1]=p=>i.showSnackbar=p),color:i.snackbarColor,timeout:3e3},{default:n(()=>[o(w(i.snackbarText),1)]),_:1},8,["modelValue","color"])]),_:1},8,["loading"])}const Lt=q(fs,[["render",gs],["__scopeId","data-v-f87674cf"]]),ws={};function vs(s,e,a,d,i,l){const r=Ce,p=ee;return c(),g(p,{icon:"mdi-cog",title:"编辑设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"randomPicker.enabled"}),t(P,{class:"my-2"}),t(r,{"setting-key":"randomPicker.mode"}),t(P,{class:"my-2"}),t(r,{"setting-key":"randomPicker.minNumber"}),t(P,{class:"my-2"}),t(r,{"setting-key":"randomPicker.maxNumber"}),t(P,{class:"my-2"}),t(r,{"setting-key":"randomPicker.defaultCount"}),t(P,{class:"my-2"}),t(r,{"setting-key":"randomPicker.animation"})]),_:1})]),_:1})}const zt=q(ws,[["render",vs]]),bs={name:"HitokotoSettings",components:{SettingGroup:We,SettingItem:Ce},data(){return{kvConfig:{sources:["zhaoyu"],sensitiveWords:"",jinrishiciToken:null},loading:!1,testLoading:!1,testMessage:"",testColor:"info",testResultDialog:!1,testResultData:null,enableCloudSensitiveWords:!0}},mounted(){this.loadKvSettings()},methods:{async loadKvSettings(){this.loading=!0;try{const s=await re.loadData("sentence-info");let e=s;s&&s.data&&(e=s.data),e&&(this.kvConfig={sources:Array.isArray(e.sources)?e.sources:["zhaoyu"],sensitiveWords:e.sensitiveWords||"",jinrishiciToken:e.jinrishiciToken})}catch(s){console.error("Failed to load sentence-info",s)}finally{this.loading=!1}},async saveKvSettings(){this.loading=!0;try{if(this.kvConfig.sources.includes("jinrishici")&&!this.kvConfig.jinrishiciToken)try{const s=await Qe.get("https://v2.jinrishici.com/token");s.data.status==="success"&&(this.kvConfig.jinrishiciToken=s.data.data)}catch(s){console.error("Failed to get jinrishici token",s)}await re.saveData("sentence-info",this.kvConfig)}catch(s){console.error("Failed to save sentence-info",s)}finally{this.loading=!1}},async testJinrishici(){var s,e;this.testLoading=!0,this.testMessage="",this.testColor="info";try{const a={};this.kvConfig.jinrishiciToken&&(a["X-User-Token"]=this.kvConfig.jinrishiciToken);const d=await Qe.get("https://v2.jinrishici.com/info?X-User-Token="+encodeURIComponent(this.kvConfig.jinrishiciToken));if(d.data&&d.data.status==="success"){this.testResultData=d.data,this.testResultDialog=!0;const i=(s=d.data.data)==null?void 0:s.token,l=(e=d.data.data)==null?void 0:e.region,r=this.kvConfig.jinrishiciToken?i===this.kvConfig.jinrishiciToken:!0;this.testColor=r?"success":"warning",this.testMessage=r?`接口正常,Token 一致:${i}${l?`,地区:${l}`:""}`:`接口返回 Token 与当前设置不一致:${i}${l?`,地区:${l}`:""}`}else this.testColor="error",this.testMessage="接口返回非 success,请检查网络或 Token 配置。"}catch(a){console.error("Failed to test jinrishici info",a),this.testColor="error",this.testMessage="接口测试失败,请检查网络或 Token。"}finally{this.testLoading=!1}}}},ys={class:"d-flex flex-wrap gap-2"},ks={class:"text-caption text-orange mt-2"},xs={class:"d-flex flex-column flex-sm-row align-center w-100"},Ss={key:2,class:"text-center pb-4"},Cs={class:"d-flex align-center mb-2"},_s={class:"text-body-1 font-weight-medium"},Vs={class:"d-flex align-center mb-2"},Ds={class:"text-body-1 font-weight-medium"},As={class:"d-flex align-center mb-2"},Ts={class:"text-body-1 font-weight-medium"},Is={class:"d-flex align-center mb-2"},js={class:"text-body-2 font-weight-medium"},Es={class:"d-flex align-center mb-2"},Us={class:"text-body-1 font-weight-medium"},Ns={class:"d-flex align-center mb-2"},Ms={class:"text-body-1 font-weight-medium"},Ps={class:"px-4 py-3"},Bs={class:"d-flex flex-wrap gap-2"};function Ls(s,e,a,d,i,l){const r=Ce,p=We;return c(),x("div",null,[t(p,{title:"一言设置",icon:"mdi-comment-quote"},{default:n(()=>[t(r,{"setting-key":"hitokoto.enabled"}),t(r,{"setting-key":"hitokoto.refreshInterval"})]),_:1}),t(p,{title:"数据源配置",icon:"mdi-cloud-sync",class:"mt-4"},{default:n(()=>[e[13]||(e[13]=m("div",{class:"text-caption text-grey px-4 pt-2 pb-2"},"以下配置将同步到云端,对所有连接此班级的设备生效。",-1)),t(A,null,{default:n(()=>[t(z,{class:"mb-2"},{default:n(()=>[...e[7]||(e[7]=[o("启用数据源",-1)])]),_:1}),m("div",ys,[t(Se,{modelValue:i.kvConfig.sources,"onUpdate:modelValue":[e[0]||(e[0]=u=>i.kvConfig.sources=u),l.saveKvSettings],label:"一言 (Hitokoto)",value:"hitokoto","hide-details":"",density:"compact",class:"mr-4",disabled:i.loading},null,8,["modelValue","disabled","onUpdate:modelValue"]),t(Se,{modelValue:i.kvConfig.sources,"onUpdate:modelValue":[e[1]||(e[1]=u=>i.kvConfig.sources=u),l.saveKvSettings],label:"诏预 (Zhaoyu)",value:"zhaoyu","hide-details":"",density:"compact",class:"mr-4",disabled:i.loading},null,8,["modelValue","disabled","onUpdate:modelValue"]),t(Se,{modelValue:i.kvConfig.sources,"onUpdate:modelValue":[e[2]||(e[2]=u=>i.kvConfig.sources=u),l.saveKvSettings],label:"今日诗词 (Jinrishici)",value:"jinrishici","hide-details":"",density:"compact",disabled:i.loading},null,8,["modelValue","disabled","onUpdate:modelValue"])]),m("div",ks,[t(v,{size:"x-small",color:"orange",class:"mr-1"},{default:n(()=>[...e[8]||(e[8]=[o("mdi-alert",-1)])]),_:1}),e[9]||(e[9]=o(" 一言(Hitokoto)数据源已收到关于存在负面内容的大量反馈,请用户谨慎启用。 ",-1))])]),_:1}),i.kvConfig.sources.includes("jinrishici")?(c(),g(A,{key:0},{default:n(()=>[t(R,{modelValue:i.kvConfig.jinrishiciToken,"onUpdate:modelValue":e[3]||(e[3]=u=>i.kvConfig.jinrishiciToken=u),label:"今日诗词 Token",variant:"outlined",density:"comfortable",disabled:i.loading,hint:"留空则自动获取,也可以手动输入已有 Token","persistent-hint":"",class:"mt-2",onChange:l.saveKvSettings},null,8,["modelValue","disabled","onChange"])]),_:1})):y("",!0),i.kvConfig.sources.includes("jinrishici")?(c(),g(A,{key:1},{default:n(()=>[m("div",xs,[t(h,{loading:i.testLoading,color:"primary",variant:"outlined",class:"mr-sm-4 mb-2 mb-sm-0",onClick:l.testJinrishici},{default:n(()=>[...e[10]||(e[10]=[o(" 测试今日诗词接口 ",-1)])]),_:1},8,["loading","onClick"]),i.testMessage?(c(),g($,{key:0,type:i.testColor,density:"comfortable",border:"start",class:"flex-grow-1"},{default:n(()=>[o(w(i.testMessage),1)]),_:1},8,["type"])):y("",!0)])]),_:1})):y("",!0),t(A,null,{default:n(()=>[t(Ie,{modelValue:i.kvConfig.sensitiveWords,"onUpdate:modelValue":e[4]||(e[4]=u=>i.kvConfig.sensitiveWords=u),disabled:i.loading,label:"敏感词过滤 (用逗号分隔)",variant:"outlined",rows:"3","auto-grow":"","hide-details":"",class:"mt-2 mb-2",onChange:l.saveKvSettings},null,8,["modelValue","disabled","onChange"])]),_:1}),t(A,null,{default:n(()=>[t(Se,{label:"启用云端敏感词列表","hide-details":"",modelValue:i.enableCloudSensitiveWords,"onUpdate:modelValue":e[5]||(e[5]=u=>i.enableCloudSensitiveWords=u),density:"compact",disabled:"",class:"mb-2"},null,8,["modelValue"]),e[11]||(e[11]=m("div",{class:"text-caption text-grey"},[o(" 已启用的数据源将在获取一言时随机尝试,直到成功获取内容为止。"),m("br"),o(" 敏感词过滤会将包含任意敏感词的句子过滤掉,避免显示不当内容。"),m("br")],-1))]),_:1}),i.loading?(c(),x("div",Ss,[t(Dt,{indeterminate:"",size:"24",color:"primary"}),e[12]||(e[12]=m("span",{class:"ml-2 text-caption"},"正在同步配置...",-1))])):y("",!0)]),_:1}),t(we,{modelValue:i.testResultDialog,"onUpdate:modelValue":e[6]||(e[6]=u=>i.testResultDialog=u),"max-width":"600"},{default:n(()=>[i.testResultData?(c(),g(E,{key:0,class:"rounded-lg"},{default:n(()=>[t(j,{class:"pa-0"},{default:n(()=>[t(J,{lines:"two",class:"py-0"},{default:n(()=>[t(A,{class:"px-4 py-3"},{prepend:n(()=>[t(Ge,{color:"primary",variant:"tonal",class:"mr-2"},{default:n(()=>[t(v,{icon:"mdi-key-variant"})]),_:1})]),default:n(()=>[t(z,{class:"text-subtitle-2 font-weight-bold mb-1"},{default:n(()=>[...e[14]||(e[14]=[o("Token",-1)])]),_:1}),t(ie,{class:"text-body-2 text-high-emphasis",style:{"word-break":"break-all"}},{default:n(()=>[o(w(i.testResultData.data.token),1)]),_:1})]),_:1}),t(P),t(ce,{"no-gutters":""},{default:n(()=>[t(O,{cols:"6"},{default:n(()=>[t(A,{class:"px-4 py-2"},{prepend:n(()=>[t(v,{icon:"mdi-ip-network",color:"grey-darken-1",class:"mr-2"})]),default:n(()=>[t(z,{class:"text-caption text-grey-darken-1"},{default:n(()=>[...e[15]||(e[15]=[o("IP 地址",-1)])]),_:1}),t(ie,{class:"text-body-2"},{default:n(()=>[o(w(i.testResultData.data.ip),1)]),_:1})]),_:1})]),_:1}),t(O,{cols:"6"},{default:n(()=>[t(A,{class:"px-4 py-2"},{prepend:n(()=>[t(v,{icon:"mdi-map-marker-radius",color:"grey-darken-1",class:"mr-2"})]),default:n(()=>[t(z,{class:"text-caption text-grey-darken-1"},{default:n(()=>[...e[16]||(e[16]=[o("地区",-1)])]),_:1}),t(ie,{class:"text-body-2"},{default:n(()=>[o(w(i.testResultData.data.region),1)]),_:1})]),_:1})]),_:1})]),_:1}),t(P),t(st,{class:"px-4 py-3"},{default:n(()=>[t(ce,{dense:""},{default:n(()=>[t(O,{cols:"6",sm:"4"},{default:n(()=>[m("div",Cs,[t(v,{icon:"mdi-thermometer",color:"orange",class:"mr-2"}),m("div",null,[e[17]||(e[17]=m("div",{class:"text-caption text-grey"},"温度",-1)),m("div",_s,w(i.testResultData.data.weatherData.temperature)+"°C",1)])])]),_:1}),t(O,{cols:"6",sm:"4"},{default:n(()=>[m("div",Vs,[t(v,{icon:"mdi-weather-cloudy",color:"blue-grey",class:"mr-2"}),m("div",null,[e[18]||(e[18]=m("div",{class:"text-caption text-grey"},"天气",-1)),m("div",Ds,w(i.testResultData.data.weatherData.weather),1)])])]),_:1}),t(O,{cols:"6",sm:"4"},{default:n(()=>[m("div",As,[t(v,{icon:"mdi-water-percent",color:"blue",class:"mr-2"}),m("div",null,[e[19]||(e[19]=m("div",{class:"text-caption text-grey"},"湿度",-1)),m("div",Ts,w(i.testResultData.data.weatherData.humidity)+"%",1)])])]),_:1}),t(O,{cols:"6",sm:"4"},{default:n(()=>[m("div",Is,[t(v,{icon:"mdi-weather-windy",color:"teal",class:"mr-2"}),m("div",null,[e[20]||(e[20]=m("div",{class:"text-caption text-grey"},"风向/风力",-1)),m("div",js,w(i.testResultData.data.weatherData.windDirection)+" "+w(i.testResultData.data.weatherData.windPower)+"级 ",1)])])]),_:1}),t(O,{cols:"6",sm:"4"},{default:n(()=>[m("div",Es,[t(v,{icon:"mdi-blur",color:"grey",class:"mr-2"}),m("div",null,[e[21]||(e[21]=m("div",{class:"text-caption text-grey"},"PM2.5",-1)),m("div",Us,w(i.testResultData.data.weatherData.pm25),1)])])]),_:1}),t(O,{cols:"6",sm:"4"},{default:n(()=>[m("div",Ns,[t(v,{icon:"mdi-eye",color:"indigo",class:"mr-2"}),m("div",null,[e[22]||(e[22]=m("div",{class:"text-caption text-grey"},"能见度",-1)),m("div",Ms,w(i.testResultData.data.weatherData.visibility),1)])])]),_:1})]),_:1})]),_:1}),t(P),m("div",Ps,[e[23]||(e[23]=m("div",{class:"text-caption text-grey mb-2"},"环境标签",-1)),m("div",Bs,[(c(!0),x(ne,null,de(i.testResultData.data.tags,u=>(c(),g(X,{key:u,size:"small",color:"primary",variant:"tonal",class:"mr-1 mb-1"},{default:n(()=>[o(w(u),1)]),_:2},1024))),128))])]),t(P),t(A,{class:"px-4 py-2"},{prepend:n(()=>[t(v,{icon:"mdi-clock-outline",size:"small",class:"mr-2"})]),default:n(()=>[t(z,{class:"text-caption text-grey-darken-1"},{default:n(()=>[o(" 北京时间: "+w(new Date(i.testResultData.data.beijingTime).toLocaleString()),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})):y("",!0)]),_:1},8,["modelValue"])])}const Ot=q(bs,[["render",Ls]]),zs={name:"NotificationSoundSettings",data(){return{singleSound:"",urgentSound:"",currentAudio:null,showAutoplayWarning:!0}},computed:{soundOptions(){return fn.map(s=>({title:s.replace(".mp3",""),value:s}))}},mounted(){this.loadSettings()},beforeUnmount(){this.stopPreview()},methods:{loadSettings(){this.singleSound=_("notification.singleSound"),this.urgentSound=_("notification.urgentSound")},onSingleSoundChange(s){var e;ke("notification.singleSound",s),(e=this.$message)==null||e.success("设置已保存",`单次通知铃声: ${s}`)},onUrgentSoundChange(s){var e;ke("notification.urgentSound",s),(e=this.$message)==null||e.success("设置已保存",`紧急通知铃声: ${s}`)},async previewSound(s){var e,a;this.showAutoplayWarning=!1,this.stopPreview();try{const d=await this.playSoundWithPromise(s,!1);this.currentAudio=d,this.currentAudio&&this.currentAudio.addEventListener("ended",()=>{this.currentAudio=null},{once:!0})}catch(d){console.error("播放音频失败:",d),d.name==="NotAllowedError"?(e=this.$message)==null||e.warning("无法播放音频","浏览器阻止了自动播放,请再次点击试听按钮"):(a=this.$message)==null||a.error("播放失败","音频文件加载失败,请稍后重试")}},playSoundWithPromise(s,e=!1){return new Promise((a,d)=>{const i=this.getSoundPath(s);if(!i){d(new Error("音频文件不存在"));return}try{const l=new Audio(i);l.loop=e,l.play().then(()=>{a(l)}).catch(r=>{d(r)})}catch(l){d(l)}})},getSoundPath(s){if(!s)return null;try{return`/sounds/${s}`}catch{return null}},stopPreview(){this.currentAudio&&(mn(this.currentAudio),this.currentAudio=null)},resetSingleSound(){var s;this.singleSound="Teams 默认.mp3",ke("notification.singleSound",this.singleSound),(s=this.$message)==null||s.success("已恢复单次通知铃声默认设置")},resetUrgentSound(){var s;this.urgentSound="Teams 默认通话铃.mp3",ke("notification.urgentSound",this.urgentSound),(s=this.$message)==null||s.success("已恢复紧急通知铃声默认设置")}}},Os={class:"d-flex align-center"},Rs={class:"mt-3 d-flex gap-2"},Ks={class:"mt-3 d-flex gap-2"};function Fs(s,e,a,d,i,l){return c(),g(E,{class:"notification-sound-settings"},{default:n(()=>[t(K,null,{default:n(()=>[...e[5]||(e[5]=[o(" 通知铃声设置 ",-1)])]),_:1}),t(j,null,{default:n(()=>[i.showAutoplayWarning?(c(),g($,{key:0,type:"info",variant:"tonal",closable:"",class:"mb-4","onClick:close":e[0]||(e[0]=r=>i.showAutoplayWarning=!1)},{default:n(()=>[m("div",Os,[t(v,{class:"mr-2"},{default:n(()=>[...e[6]||(e[6]=[o("mdi-information",-1)])]),_:1}),e[7]||(e[7]=m("span",null,"首次使用请点击试听按钮测试音频播放是否正常",-1))])]),_:1})):y("",!0),t(ce,null,{default:n(()=>[t(O,{cols:"12"},{default:n(()=>[t(E,{border:""},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[8]||(e[8]=[o("mdi-bell-ring",-1)])]),_:1}),e[9]||(e[9]=o(" 单次通知铃声 ",-1))]),_:1}),t(j,null,{default:n(()=>[t(Je,{modelValue:i.singleSound,"onUpdate:modelValue":[e[1]||(e[1]=r=>i.singleSound=r),l.onSingleSoundChange],items:l.soundOptions,label:"选择铃声","prepend-icon":"mdi-music-note",variant:"outlined",density:"comfortable"},{item:n(({props:r,item:p})=>[t(A,je(r,{onClick:u=>l.previewSound(p.value)}),{prepend:n(()=>[t(v,null,{default:n(()=>[...e[10]||(e[10]=[o("mdi-music-note",-1)])]),_:1})]),append:n(()=>[t(h,{icon:"",size:"small",variant:"text",onClick:Ae(u=>l.previewSound(p.value),["stop"])},{default:n(()=>[t(v,null,{default:n(()=>[...e[11]||(e[11]=[o("mdi-play",-1)])]),_:1})]),_:1},8,["onClick"])]),_:2},1040,["onClick"])]),_:1},8,["modelValue","items","onUpdate:modelValue"]),m("div",Rs,[t(h,{color:"primary",variant:"tonal",onClick:e[2]||(e[2]=r=>l.previewSound(i.singleSound))},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[12]||(e[12]=[o("mdi-play",-1)])]),_:1}),e[13]||(e[13]=o(" 试听 ",-1))]),_:1}),t(h,{onClick:l.resetSingleSound},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[14]||(e[14]=[o("mdi-restore",-1)])]),_:1}),e[15]||(e[15]=o(" 恢复 ",-1))]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1}),t(O,{cols:"12"},{default:n(()=>[t(E,{border:""},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{left:"",color:"error"},{default:n(()=>[...e[16]||(e[16]=[o("mdi-bell-alert",-1)])]),_:1}),e[17]||(e[17]=o(" 紧急通知铃声 ",-1))]),_:1}),t(j,null,{default:n(()=>[t(Je,{modelValue:i.urgentSound,"onUpdate:modelValue":[e[3]||(e[3]=r=>i.urgentSound=r),l.onUrgentSoundChange],items:l.soundOptions,label:"选择铃声","prepend-icon":"mdi-music-note",variant:"outlined",density:"comfortable"},{item:n(({props:r,item:p})=>[t(A,je(r,{onClick:u=>l.previewSound(p.value)}),{prepend:n(()=>[t(v,null,{default:n(()=>[...e[18]||(e[18]=[o("mdi-music-note",-1)])]),_:1})]),append:n(()=>[t(h,{icon:"",size:"small",variant:"text",onClick:Ae(u=>l.previewSound(p.value),["stop"])},{default:n(()=>[t(v,null,{default:n(()=>[...e[19]||(e[19]=[o("mdi-play",-1)])]),_:1})]),_:1},8,["onClick"])]),_:2},1040,["onClick"])]),_:1},8,["modelValue","items","onUpdate:modelValue"]),m("div",Ks,[t(h,{color:"error",variant:"tonal",onClick:e[4]||(e[4]=r=>l.previewSound(i.urgentSound))},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[20]||(e[20]=[o("mdi-play",-1)])]),_:1}),e[21]||(e[21]=o(" 试听 ",-1))]),_:1}),t(h,{onClick:l.resetUrgentSound},{default:n(()=>[t(v,{left:""},{default:n(()=>[...e[22]||(e[22]=[o("mdi-restore",-1)])]),_:1}),e[23]||(e[23]=o(" 恢复 ",-1))]),_:1},8,["onClick"])])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})}const Rt=q(zs,[["render",Fs],["__scopeId","data-v-55be56a4"]]),Js={name:"ThemeSettingsCard",components:{SettingsCard:ee},data(){return{localTheme:_("theme.mode")}},watch:{localTheme(s){ke("theme.mode",s),this.updateTheme(s)}},setup(){return{theme:vn()}},methods:{updateTheme(s){this.theme.global.name.value=s}}};function Qs(s,e,a,d,i,l){const r=ee;return c(),g(r,{icon:"mdi-palette",title:"主题设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-theme-light-dark"})]),append:n(()=>[t(bn,{modelValue:i.localTheme,"onUpdate:modelValue":e[0]||(e[0]=p=>i.localTheme=p),color:"primary",density:"comfortable"},{default:n(()=>[t(h,{value:"light"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-white-balance-sunny"}),e[3]||(e[3]=o(" 明亮 ",-1))]),_:1}),t(h,{value:"dark"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-moon-waning-crescent"}),e[4]||(e[4]=o(" 暗黑 ",-1))]),_:1})]),_:1},8,["modelValue"])]),default:n(()=>[t(z,null,{default:n(()=>[...e[1]||(e[1]=[o("主题模式",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[2]||(e[2]=[o("选择明亮或暗黑主题",-1)])]),_:1})]),_:1})]),_:1})]),_:1})}const Kt=q(Js,[["render",Qs]]),Hs={name:"DisplaySettingsCard",components:{SettingsCard:ee,SettingItem:Ce},data(){return{}}};function Gs(s,e,a,d,i,l){const r=Ce,p=ee;return c(),g(p,{border:"",icon:"mdi-monitor",title:"显示设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"display.emptySubjectDisplay"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.dynamicSort"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.showRandomButton"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.showFullscreenButton"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.cardHoverEffect"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.enhancedTouchMode"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.showQuickTools"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.showAntiScreenBurnCard"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.showExamScheduleButton"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.forceDesktopMode"}),t(P,{class:"my-2"}),t(r,{"setting-key":"display.lateStudentsArePresent"})]),_:1})]),_:1})}const Ft=q(Hs,[["render",Gs]]),Ws={};function Ys(s,e,a,d,i,l){const r=Ce,p=ee;return c(),g(p,{icon:"mdi-cog",title:"编辑设置"},{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"edit.autoSave"}),t(P,{class:"my-2"}),t(r,{"setting-key":"edit.blockNonTodayAutoSave"}),t(P,{class:"my-2"}),t(r,{"setting-key":"edit.confirmNonTodaySave"}),t(P,{class:"my-2"}),t(r,{"setting-key":"edit.refreshBeforeEdit"}),t(P,{class:"my-2"}),t(r,{"setting-key":"edit.autoSavePromptText"}),t(P,{class:"my-2"}),t(r,{"setting-key":"edit.manualSavePromptText"})]),_:1})]),_:1})}const Jt=q(Ws,[["render",Ys]]),qs={name:"RefreshSettingsCard",components:{SettingsCard:ee},data(){return{}}};function Zs(s,e,a,d,i,l){const r=Ce,p=ee;return c(),g(p,{icon:"mdi-refresh-circle",title:"刷新设置"},{default:n(()=>[t(jt,null,{default:n(()=>[t(J,null,{default:n(()=>[t(r,{"setting-key":"refresh.auto",title:"自动刷新"}),t(P,{class:"my-2"}),t(r,{"setting-key":"refresh.interval",title:"刷新间隔"})]),_:1})]),_:1})]),_:1})}const Qt=q(qs,[["render",Zs]]),Xs={name:"SettingsLinkGenerator",data(){return{selectedItems:[],generatedLink:"",linkCopied:!1,search:"",preconfigForm:{namespace:"",authCode:"",autoExecute:!1},unifiedLink:"",headers:[{title:"",key:"data-table-select"},{title:"设置项",key:"description",sortable:!0},{title:"当前值",key:"value",sortable:!0},{title:"键名",key:"key",class:"d-none d-sm-table-cell",sortable:!0},{title:"状态",key:"isChanged",sortable:!0}]}},computed:{settingItems(){const s=Be(),e=[];for(const[a,d]of Object.entries(et)){if(d.requireDeveloper&&!s["developer.enabled"])continue;const i=s[a]!==d.default;e.push({key:a,description:d.description||a,value:s[a],icon:d.icon||"mdi-cog",isChanged:i,defaultValue:d.default})}return e.sort((a,d)=>a.key.localeCompare(d.key))},filteredItems(){if(!this.search)return this.settingItems;const s=this.search.toLowerCase();return s==="已修改"?this.settingItems.filter(e=>e.isChanged):s==="是"||s==="否"?this.settingItems.filter(e=>typeof e.value=="boolean"&&(s==="是"?e.value:!e.value)):this.settingItems.filter(e=>{const a=e.description.toLowerCase(),d=e.key.toLowerCase(),i=String(e.value).toLowerCase(),l=e.isChanged?"已修改":"默认";return a.includes(s)||d.includes(s)||i.includes(s)||l.includes(s)})},hasDisplaySettings(){return this.selectedItems.some(s=>s.startsWith("display."))},hasEditSettings(){return this.selectedItems.some(s=>s.startsWith("edit."))},hasServerSettings(){return this.selectedItems.some(s=>s.startsWith("server."))},hasChangedSettings(){const s=Be();return this.selectedItems.some(e=>{const a=et[e];return a&&s[e]!==a.default})}},methods:{handleSelectionChange(s){this.selectedItems=s.map(e=>e.key),this.generateLink()},generateLink(){const s=`${window.location.protocol}//${window.location.host}/`,e=Be(),a={};for(const d of this.selectedItems)a[d]=e[d];if(Object.keys(a).length===0){this.generatedLink=s;return}try{const d=JSON.stringify(a),l=new TextEncoder().encode(d),p={config:btoa(Array.from(l).map(I=>String.fromCharCode(I)).join(""))},b=new URLSearchParams(window.location.search).get("date");b&&(p.date=b);const T=new URLSearchParams(p).toString();this.generatedLink=`${s}?${T}`}catch(d){console.error("生成链接失败:",d),this.generatedLink="链接生成失败,请重试"}this.linkCopied=!1},async copyLink(){this.generatedLink||this.generateLink();try{await navigator.clipboard.writeText(this.generatedLink),this.linkCopied=!0,setTimeout(()=>{this.linkCopied=!1},3e3)}catch(s){console.error("复制链接失败:",s)}},resetSelection(){this.selectedItems=[],this.generatedLink="",this.linkCopied=!1},selectAll(){this.selectedItems=this.settingItems.map(s=>s.key),this.generateLink()},selectDataSourceSettings(){const s=this.settingItems.filter(e=>e.key.startsWith("server.")&&e.key!=="server.kvToken").map(e=>e.key);this.selectedItems=s,this.generateLink()},selectChangedSettings(){const s=this.settingItems.filter(e=>e.isChanged&&e.key!=="server.kvToken").map(e=>e.key);this.selectedItems=s,this.generateLink()},selectByPrefix(s){const e=this.settingItems.filter(a=>a.key.startsWith(`${s}.`)).map(a=>a.key);this.selectedItems=e},autoGenerateLink(){this.selectedItems.length>0?this.generateLink():this.generatedLink=""},getSettingDescription(s){const e=this.settingItems.find(a=>a.key===s);return e?e.description:s},generateUnifiedLink(){if(this.preconfigForm.namespace.trim())try{const s=`${window.location.protocol}//${window.location.host}/`,e=new URLSearchParams;if(e.append("namespace",this.preconfigForm.namespace.trim()),this.preconfigForm.authCode.trim()&&e.append("authCode",this.preconfigForm.authCode.trim()),this.preconfigForm.autoExecute&&e.append("autoExecute","true"),this.selectedItems.length>0){const a=Be(),d={};for(const u of this.selectedItems)d[u]=a[u];const i=JSON.stringify(d),r=new TextEncoder().encode(i),p=btoa(Array.from(r).map(u=>String.fromCharCode(u)).join(""));e.append("config",p)}this.unifiedLink=`${s}?${e.toString()}`,this.linkCopied=!1,console.log("生成统一链接:",this.unifiedLink),console.log("包含预配置:",!!this.preconfigForm.namespace),console.log("包含设置数量:",this.selectedItems.length)}catch(s){console.error("生成统一链接失败:",s),this.unifiedLink="链接生成失败,请重试"}},async copyUnifiedLink(){if(this.unifiedLink||this.generateUnifiedLink(),!(!this.unifiedLink||this.unifiedLink.includes("失败")))try{await navigator.clipboard.writeText(this.unifiedLink),this.linkCopied=!0,setTimeout(()=>{this.linkCopied=!1},3e3)}catch(s){console.error("复制统一链接失败:",s)}},openTestLink(){this.unifiedLink&&!this.unifiedLink.includes("失败")&&window.open(this.unifiedLink,"_blank")},clearAll(){this.preconfigForm={namespace:"",authCode:"",autoExecute:!1},this.selectedItems=[],this.unifiedLink="",this.generatedLink="",this.linkCopied=!1}},watch:{selectedItems:{handler(){this.preconfigForm.namespace.trim()&&this.generateUnifiedLink()},deep:!0},"preconfigForm.namespace":{handler(){this.preconfigForm.namespace.trim()?this.generateUnifiedLink():this.unifiedLink=""}},"preconfigForm.authCode":{handler(){this.preconfigForm.namespace.trim()&&this.generateUnifiedLink()}},"preconfigForm.autoExecute":{handler(){this.preconfigForm.namespace.trim()&&this.generateUnifiedLink()}}}},$s={class:"d-flex mb-3 gap-2 flex-wrap"},ei={class:"d-flex align-center mb-3 flex-wrap gap-2"},ti={class:"d-flex align-center"},ni={class:"d-flex align-center"},si={key:0},ii={key:1},li={key:2},oi={class:"text-caption text-grey"},ai={class:"d-flex mb-3 gap-2 flex-wrap"},ri={class:"d-flex flex-wrap gap-1"};function ui(s,e,a,d,i,l){return c(),x("div",null,[t(E,{border:"",class:"unified-link-generator"},{default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-link-variant",start:""}),e[6]||(e[6]=o(" 统一链接生成器 ",-1))]),_:1}),t(j,null,{default:n(()=>[e[35]||(e[35]=m("div",{class:"text-body-2 text-medium-emphasis mb-4"}," 生成包含预配置认证信息和设置的统一链接。可以同时预配置设备认证和应用设置。 ",-1)),t(E,{class:"mb-4",variant:"tonal"},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{start:""},{default:n(()=>[...e[7]||(e[7]=[o("mdi-account-key",-1)])]),_:1}),e[8]||(e[8]=o(" 预配置认证信息 ",-1))]),_:1}),t(j,null,{default:n(()=>[t(ce,null,{default:n(()=>[t(O,{cols:"12",md:"6"},{default:n(()=>[t(R,{modelValue:i.preconfigForm.namespace,"onUpdate:modelValue":e[0]||(e[0]=r=>i.preconfigForm.namespace=r),hint:"设备的命名空间标识符",label:"命名空间","persistent-hint":"",placeholder:"例如: classroom-001","prepend-inner-icon":"mdi-identifier",variant:"outlined"},null,8,["modelValue"])]),_:1}),t(O,{cols:"12",md:"6"},{default:n(()=>[t(R,{modelValue:i.preconfigForm.authCode,"onUpdate:modelValue":e[1]||(e[1]=r=>i.preconfigForm.authCode=r),hint:"留空则需要用户手动输入",label:"认证码","persistent-hint":"",placeholder:"设备认证码(可选)","prepend-inner-icon":"mdi-lock-outline",variant:"outlined"},null,8,["modelValue"])]),_:1})]),_:1}),t(ce,{class:"mt-2"},{default:n(()=>[t(O,{cols:"12"},{default:n(()=>[t(Se,{modelValue:i.preconfigForm.autoExecute,"onUpdate:modelValue":e[2]||(e[2]=r=>i.preconfigForm.autoExecute=r),density:"compact",hint:"启用后会自动尝试认证,即使没有认证码也会尝试",label:"自动执行认证","persistent-hint":""},null,8,["modelValue"])]),_:1})]),_:1}),i.preconfigForm.namespace?(c(),g($,{key:0,class:"mt-3",type:"info",variant:"tonal"},{default:n(()=>[e[13]||(e[13]=m("div",{class:"text-subtitle-2 mb-2"},"预配置信息:",-1)),t(X,{class:"mr-2 mb-1",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[9]||(e[9]=[o("mdi-identifier",-1)])]),_:1}),o(" 命名空间: "+w(i.preconfigForm.namespace),1)]),_:1}),i.preconfigForm.authCode?(c(),g(X,{key:0,class:"mr-2 mb-1",color:"warning",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[10]||(e[10]=[o("mdi-lock",-1)])]),_:1}),o(" 认证码: "+w(i.preconfigForm.authCode.length>8?i.preconfigForm.authCode.substring(0,8)+"...":i.preconfigForm.authCode),1)]),_:1})):(c(),g(X,{key:1,class:"mr-2 mb-1",color:"grey",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[11]||(e[11]=[o("mdi-lock-open",-1)])]),_:1}),e[12]||(e[12]=o(" 无认证码 ",-1))]),_:1})),t(X,{color:i.preconfigForm.autoExecute?"success":"orange",class:"mr-2 mb-1",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[o(w(i.preconfigForm.autoExecute?"mdi-play-circle":"mdi-hand-back-left"),1)]),_:1}),o(" "+w(i.preconfigForm.autoExecute?"自动认证":"手动认证"),1)]),_:1},8,["color"])]),_:1})):y("",!0)]),_:1})]),_:1}),t(E,{class:"mb-4",variant:"tonal"},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{start:""},{default:n(()=>[...e[14]||(e[14]=[o("mdi-cog-transfer",-1)])]),_:1}),e[15]||(e[15]=o(" 设置分享(可选) ",-1))]),_:1}),t(j,null,{default:n(()=>[e[22]||(e[22]=m("div",{class:"text-body-2 text-medium-emphasis mb-3"}," 选择需要包含在链接中的设置项。如果不选择任何设置,将只生成预配置认证链接。 ",-1)),m("div",$s,[t(h,{color:"primary","prepend-icon":"mdi-server-network",size:"small",variant:"tonal",onClick:l.selectDataSourceSettings},{default:n(()=>[...e[16]||(e[16]=[o(" 数据源设置 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"primary","prepend-icon":"mdi-compare",size:"small",variant:"tonal",onClick:l.selectChangedSettings},{default:n(()=>[...e[17]||(e[17]=[o(" 已变更设置 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"success","prepend-icon":"mdi-select-all",size:"small",variant:"tonal",onClick:l.selectAll},{default:n(()=>[...e[18]||(e[18]=[o(" 全选 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"error","prepend-icon":"mdi-select-remove",size:"small",variant:"tonal",onClick:l.resetSelection},{default:n(()=>[...e[19]||(e[19]=[o(" 清除选择 ",-1)])]),_:1},8,["onClick"])]),m("div",ei,[t(X,{class:"mr-2",color:"primary"},{default:n(()=>[o(" 已选 "+w(i.selectedItems.length)+" 项设置 ",1)]),_:1}),i.selectedItems.length>0?(c(),x(ne,{key:0},[(c(!0),x(ne,null,de(i.selectedItems.slice(0,3),r=>(c(),g(X,{key:r,class:"mr-1",size:"small",variant:"text"},{default:n(()=>[o(w(l.getSettingDescription(r)),1)]),_:2},1024))),128)),i.selectedItems.length>3?(c(),g(X,{key:0,color:"grey",size:"small",variant:"text"},{default:n(()=>[o(" +"+w(i.selectedItems.length-3)+" 更多 ",1)]),_:1})):y("",!0)],64)):y("",!0)]),t(it,{variant:"accordion"},{default:n(()=>[t(lt,null,{default:n(()=>[t(Et,null,{default:n(({expanded:r})=>[m("div",ti,[t(v,{class:"mr-2"},{default:n(()=>[o(w(r?"mdi-chevron-up":"mdi-chevron-down"),1)]),_:2},1024),e[20]||(e[20]=o(" 显示设置列表详情 ",-1))])]),_:1}),t(ot,null,{default:n(()=>[t(R,{modelValue:i.search,"onUpdate:modelValue":e[3]||(e[3]=r=>i.search=r),class:"mb-4",clearable:"","hide-details":"",label:"搜索设置","prepend-inner-icon":"mdi-magnify","single-line":""},null,8,["modelValue"]),t(Ut,{modelValue:i.selectedItems,"onUpdate:modelValue":e[4]||(e[4]=r=>i.selectedItems=r),headers:i.headers,items:l.filteredItems,"items-per-page":l.settingItems.length,"sort-by":[{key:"isChanged",order:"desc"}],class:"rounded setting-table",density:"compact","item-value":"key","show-select":"","onUpdate:selected":l.handleSelectionChange},{"item.description":n(({item:r})=>[m("div",ni,[t(v,{icon:r.icon,class:"mr-2",size:"small"},null,8,["icon"]),o(" "+w(r.description)+" ",1),r.key==="server.kvToken"?(c(),g(X,{key:0,class:"ml-2",color:"error",size:"x-small"},{default:n(()=>[...e[21]||(e[21]=[o(" 敏感 ",-1)])]),_:1})):y("",!0)])]),"item.value":n(({item:r})=>[typeof r.value=="boolean"?(c(),x("span",si,w(r.value?"是":"否"),1)):r.key==="server.kvToken"&&r.value?(c(),x("span",ii,w(r.value.substring(0,8))+"... ",1)):(c(),x("span",li,w(r.value),1))]),"item.key":n(({item:r})=>[m("span",oi,w(r.key),1)]),"item.isChanged":n(({item:r})=>[t(X,{color:r.isChanged?"warning":"success",text:r.isChanged?"已修改":"默认",density:"compact",size:"x-small"},null,8,["color","text"])]),_:2},1032,["modelValue","headers","items","items-per-page","onUpdate:selected"])]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),t(E,{class:"mb-4",variant:"outlined"},{default:n(()=>[t(K,{class:"text-subtitle-1"},{default:n(()=>[t(v,{start:""},{default:n(()=>[...e[23]||(e[23]=[o("mdi-link",-1)])]),_:1}),e[24]||(e[24]=o(" 生成的统一链接 ",-1))]),_:1}),t(j,null,{default:n(()=>[m("div",ai,[t(h,{disabled:!i.preconfigForm.namespace.trim(),color:"primary","prepend-icon":"mdi-auto-fix",variant:"flat",onClick:l.generateUnifiedLink},{default:n(()=>[...e[25]||(e[25]=[o(" 生成统一链接 ",-1)])]),_:1},8,["disabled","onClick"]),t(h,{disabled:!i.unifiedLink,color:"success","prepend-icon":"mdi-test-tube",variant:"tonal",onClick:l.openTestLink},{default:n(()=>[...e[26]||(e[26]=[o(" 测试链接 ",-1)])]),_:1},8,["disabled","onClick"]),t(h,{color:"error","prepend-icon":"mdi-delete",variant:"tonal",onClick:l.clearAll},{default:n(()=>[...e[27]||(e[27]=[o(" 清空所有 ",-1)])]),_:1},8,["onClick"])]),t(R,{modelValue:i.unifiedLink,"onUpdate:modelValue":e[5]||(e[5]=r=>i.unifiedLink=r),"append-inner-icon":i.linkCopied?"mdi-check":"mdi-content-copy",placeholder:i.preconfigForm.namespace?"点击「生成统一链接」按钮":"请先输入命名空间",class:"mb-3",label:"统一链接",readonly:"",variant:"outlined","onClick:appendInner":l.copyUnifiedLink},null,8,["modelValue","append-inner-icon","placeholder","onClick:appendInner"]),i.unifiedLink?(c(),g($,{key:0,class:"mb-3",type:"success",variant:"tonal"},{default:n(()=>[e[33]||(e[33]=m("div",{class:"text-subtitle-2 mb-2"},"链接包含内容:",-1)),m("div",ri,[t(X,{color:"primary",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[28]||(e[28]=[o("mdi-account-key",-1)])]),_:1}),e[29]||(e[29]=o(" 预配置认证 ",-1))]),_:1}),i.selectedItems.length>0?(c(),g(X,{key:0,color:"secondary",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[30]||(e[30]=[o("mdi-cog",-1)])]),_:1}),o(" "+w(i.selectedItems.length)+" 项设置 ",1)]),_:1})):(c(),g(X,{key:1,color:"grey",size:"small"},{default:n(()=>[t(v,{size:"small",start:""},{default:n(()=>[...e[31]||(e[31]=[o("mdi-cog-off",-1)])]),_:1}),e[32]||(e[32]=o(" 无额外设置 ",-1))]),_:1}))])]),_:1})):y("",!0)]),_:1})]),_:1}),t($,{type:"warning",variant:"tonal"},{default:n(()=>[...e[34]||(e[34]=[m("div",{class:"text-subtitle-2 mb-2"},"⚠️ 安全提醒",-1),m("ul",{class:"text-body-2 pl-4"},[m("li",null,"认证码和设置信息会在URL中传输,请谨慎分发"),m("li",null,"建议仅在受信任的网络环境中使用"),m("li",null,"生产环境建议使用HTTPS协议"),m("li",null,"数据源设置和已变更设置默认不包含敏感Token信息")],-1)])]),_:1})]),_:1})]),_:1})])}const Ht=q(Xs,[["render",ui]]),di={name:"UnsavedWarning",props:{show:Boolean,message:{type:String,default:"未保存"}}},ci={class:"warning-container"};function mi(s,e,a,d,i,l){return c(),x("div",ci,[a.show?(c(),g(X,{key:0,class:"warning-chip",color:"warning",size:"small"},{default:n(()=>[o(w(a.message),1)]),_:1})):y("",!0)])}const Ye=q(di,[["render",mi],["__scopeId","data-v-0f36b655"]]),fi=Sn({disabled:Boolean,modelValue:{type:Boolean,default:null},...Cn()},"VHover"),Gt=yn()({name:"VHover",props:fi(),emits:{"update:modelValue":s=>!0},setup(s,e){let{slots:a}=e;const d=kn(s,"modelValue"),{runOpenDelay:i,runCloseDelay:l}=xn(s,r=>!s.disabled&&(d.value=r));return()=>{var r;return(r=a.default)==null?void 0:r.call(a,{isHovering:d.value,props:{onMouseenter:i,onMouseleave:l}})}}}),pi={name:"TeacherListCard",components:{UnsavedWarning:Ye},props:{isMobile:Boolean},data(){return{newTeacher:{name:"",subjects:[],isHeadTeacher:!1},editState:{index:-1,teacher:null},modelValue:{list:[],text:"",advanced:!1},loading:!1,error:null,lastSavedData:null,unsavedChanges:!1,commonSubjects:["语文","数学","英语","物理","化学","生物","政治","历史","地理","信息技术","音乐","美术","体育"]}},watch:{modelValue:{handler(s){this.lastSavedData&&(this.unsavedChanges=JSON.stringify(s.list)!==JSON.stringify(this.lastSavedData)),this.modelValue.advanced||(this.modelValue.text=JSON.stringify(s.list,null,2))},deep:!0}},mounted(){this.loadTeachers()},methods:{async loadTeachers(){var s;this.error=null;try{if(this.loading=!0,!_("server.classNumber"))throw new Error("请先设置班号");try{const a=await re.loadData("classworks-list-teacher");a.success!==!1&&Array.isArray(a)&&(this.modelValue.list=a.map(d=>({name:d.name||"",subjects:Array.isArray(d.subjects)?d.subjects:[],isHeadTeacher:!!d.isHeadTeacher})),this.modelValue.text=JSON.stringify(this.modelValue.list,null,2),this.lastSavedData=JSON.parse(JSON.stringify(this.modelValue.list)),this.unsavedChanges=!1)}catch(a){console.warn("Failed to load teacher list, initializing empty list",a),this.modelValue.list=[],this.modelValue.text="[]",this.lastSavedData=[]}}catch(e){console.error("加载教师列表失败:",e),this.error=e.message||"加载失败,请检查设置",(s=this.$message)==null||s.error("加载失败",this.error)}finally{this.loading=!1}},async saveTeachers(){var s,e,a;try{if(!_("server.classNumber"))throw new Error("请先设置班号");const i=this.modelValue.list.map(r=>({name:r.name,subjects:Array.isArray(r.subjects)?r.subjects:[],isHeadTeacher:!!r.isHeadTeacher})),l=await re.saveData("classworks-list-teacher",i);if(l.success===!1)throw new Error(((s=l.error)==null?void 0:s.message)||"保存失败");this.modelValue.list=i,this.lastSavedData=JSON.parse(JSON.stringify(i)),this.unsavedChanges=!1,(e=this.$message)==null||e.success("保存成功","教师列表已更新")}catch(d){console.error("保存教师列表失败:",d),(a=this.$message)==null||a.error("保存失败",d.message||"请重试")}},toggleAdvanced(){this.modelValue.advanced=!this.modelValue.advanced,this.modelValue.advanced&&(this.modelValue.text=JSON.stringify(this.modelValue.list,null,2))},handleTextInput(s){if(this.modelValue.advanced)try{const e=JSON.parse(s);Array.isArray(e)?(this.modelValue.list=e.map(a=>({name:a.name||"",subjects:Array.isArray(a.subjects)?a.subjects:[],isHeadTeacher:!!a.isHeadTeacher})),this.error=null):this.error="JSON 必须是一个数组"}catch(e){this.error="JSON 格式错误: "+e.message}},addTeacher(){var e,a;const s=this.newTeacher.name.trim();if(!s){(e=this.$message)==null||e.warning("提示","请输入教师姓名");return}if(this.newTeacher.subjects.length===0){(a=this.$message)==null||a.warning("提示","请选择至少一个任教科目");return}this.modelValue.list.push({name:s,subjects:[...this.newTeacher.subjects],isHeadTeacher:this.newTeacher.isHeadTeacher}),this.newTeacher={name:"",subjects:[],isHeadTeacher:!1}},startEdit(s,e){this.editState.index=s,this.editState.teacher={name:e.name,subjects:[...e.subjects],isHeadTeacher:e.isHeadTeacher}},saveEdit(){var s,e;if(this.editState.index!==-1){const a=this.editState.teacher.name.trim();if(!a){(s=this.$message)==null||s.warning("提示","教师姓名不能为空");return}if(this.editState.teacher.subjects.length===0){(e=this.$message)==null||e.warning("提示","请选择至少一个任教科目");return}this.modelValue.list[this.editState.index]={name:a,subjects:[...this.editState.teacher.subjects],isHeadTeacher:this.editState.teacher.isHeadTeacher},this.editState.index=-1,this.editState.teacher=null}},cancelEdit(){this.editState.index=-1,this.editState.teacher=null},removeTeacher(s){s!==void 0&&this.modelValue.list.splice(s,1)},handleClick(s,e){this.isMobile&&this.startEdit(s,e)}}},hi={key:0},gi={class:"d-flex align-start mb-3"},wi={class:"flex-grow-1"},vi={class:"d-flex align-center mb-1"},bi=["onClick"],yi={key:0,class:"mt-2"},ki={key:1,class:"mt-1"},xi={key:1,class:"pt-2"};function Si(s,e,a,d,i,l){const r=Ye;return c(),g(E,{class:Fe({"unsaved-changes":i.unsavedChanges}),color:i.unsavedChanges?"warning-subtle":void 0,border:""},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-account-tie",size:"large"})]),append:n(()=>[t(r,{show:i.unsavedChanges,message:"有未保存的更改"},null,8,["show"]),t(h,{color:i.modelValue.advanced?"primary":void 0,"prepend-icon":"mdi-code-braces",variant:"text",onClick:l.toggleAdvanced},{default:n(()=>[o(w(i.modelValue.advanced?"返回基础编辑":"高级编辑"),1)]),_:1},8,["color","onClick"])]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[...e[4]||(e[4]=[o("教师列表",-1)])]),_:1})]),_:1}),t(j,null,{default:n(()=>[i.loading?(c(),g(He,{key:0,class:"mb-4",color:"primary",indeterminate:""})):y("",!0),i.error?(c(),g($,{key:1,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):y("",!0),t(At,null,{default:n(()=>[i.modelValue.advanced?(c(),x("div",xi,[t(Ie,{modelValue:i.modelValue.text,"onUpdate:modelValue":[e[3]||(e[3]=p=>i.modelValue.text=p),l.handleTextInput],hint:"JSON 格式编辑教师列表。每个教师需包含 name、subjects(数组)、isHeadTeacher(布尔值)",label:"批量编辑教师列表 (JSON)","persistent-hint":"",placeholder:'[{"name":"教师姓名","subjects":["语文","数学"],"isHeadTeacher":true}]',rows:"15",variant:"outlined"},null,8,["modelValue","onUpdate:modelValue"])])):(c(),x("div",hi,[t(E,{class:"mb-6",variant:"outlined"},{default:n(()=>[t(j,null,{default:n(()=>[t(ce,null,{default:n(()=>[t(O,{cols:"12",md:"4"},{default:n(()=>[t(R,{modelValue:i.newTeacher.name,"onUpdate:modelValue":e[0]||(e[0]=p=>i.newTeacher.name=p),density:"comfortable","hide-details":"",label:"教师姓名",placeholder:"输入教师姓名","prepend-inner-icon":"mdi-account",variant:"outlined"},null,8,["modelValue"])]),_:1}),t(O,{cols:"12",md:"5"},{default:n(()=>[t(mt,{modelValue:i.newTeacher.subjects,"onUpdate:modelValue":e[1]||(e[1]=p=>i.newTeacher.subjects=p),items:i.commonSubjects,chips:"",clearable:"","closable-chips":"",density:"comfortable","hide-details":"",label:"任教科目",multiple:"",placeholder:"选择或输入科目","prepend-inner-icon":"mdi-book-open-variant",variant:"outlined"},null,8,["modelValue","items"])]),_:1}),t(O,{cols:"12",md:"3",class:"d-flex align-center gap-2"},{default:n(()=>[t(Se,{modelValue:i.newTeacher.isHeadTeacher,"onUpdate:modelValue":e[2]||(e[2]=p=>i.newTeacher.isHeadTeacher=p),density:"comfortable","hide-details":"",label:"班主任"},null,8,["modelValue"]),t(h,{disabled:!i.newTeacher.name.trim()||i.newTeacher.subjects.length===0,color:"primary","prepend-icon":"mdi-plus",onClick:l.addTeacher},{default:n(()=>[...e[5]||(e[5]=[o(" 添加教师 ",-1)])]),_:1},8,["disabled","onClick"])]),_:1})]),_:1})]),_:1})]),_:1}),i.modelValue.list.length===0?(c(),g(ce,{key:0},{default:n(()=>[t(O,{cols:"12"},{default:n(()=>[t($,{type:"info",variant:"tonal"},{default:n(()=>[...e[6]||(e[6]=[o(" 暂无教师信息,请添加教师 ",-1)])]),_:1})]),_:1})]),_:1})):(c(),g(ce,{key:1},{default:n(()=>[(c(!0),x(ne,null,de(i.modelValue.list,(p,u)=>(c(),g(O,{key:u,cols:"12",lg:"6",xl:"4"},{default:n(()=>[t(Gt,null,{default:n(({isHovering:b,props:T})=>[t(E,je({elevation:a.isMobile?1:b?4:1,border:"",class:"teacher-card"},{ref_for:!0},T),{default:n(()=>[t(j,{class:"pa-4"},{default:n(()=>[m("div",gi,[t(Ge,{color:p.isHeadTeacher?"primary":"grey-lighten-1",class:"mr-3",size:"48"},{default:n(()=>[t(v,{icon:p.isHeadTeacher?"mdi-star":"mdi-account",size:"28"},null,8,["icon"])]),_:2},1032,["color"]),m("div",wi,[m("div",vi,[i.editState.index===u?(c(),g(R,{key:0,modelValue:i.editState.teacher.name,"onUpdate:modelValue":I=>i.editState.teacher.name=I,autofocus:"",class:"flex-grow-1",density:"compact","hide-details":"",variant:"underlined"},null,8,["modelValue","onUpdate:modelValue"])):(c(),x("span",{key:1,class:"text-h6 font-weight-medium",onClick:I=>l.handleClick(u,p)},w(p.name),9,bi)),p.isHeadTeacher?(c(),g(X,{key:2,class:"ml-2",color:"primary",density:"comfortable",size:"small",variant:"flat"},{default:n(()=>[...e[7]||(e[7]=[o(" 班主任 ",-1)])]),_:1})):y("",!0)]),i.editState.index===u?(c(),x("div",yi,[t(mt,{modelValue:i.editState.teacher.subjects,"onUpdate:modelValue":I=>i.editState.teacher.subjects=I,items:i.commonSubjects,chips:"","closable-chips":"",density:"compact","hide-details":"",label:"任教科目",multiple:"",variant:"outlined"},null,8,["modelValue","onUpdate:modelValue","items"]),t(Se,{modelValue:i.editState.teacher.isHeadTeacher,"onUpdate:modelValue":I=>i.editState.teacher.isHeadTeacher=I,class:"mt-2",density:"compact","hide-details":"",label:"班主任"},null,8,["modelValue","onUpdate:modelValue"])])):(c(),x("div",ki,[(c(!0),x(ne,null,de(p.subjects,(I,H)=>(c(),g(X,{key:H,class:"mr-1 mb-1",density:"comfortable",size:"small",variant:"tonal"},{default:n(()=>[o(w(I),1)]),_:2},1024))),128))]))]),m("div",{class:Fe([{"opacity-100":b||a.isMobile||i.editState.index===u},"d-flex gap-1 action-buttons ml-2"])},[i.editState.index===u?(c(),g(h,{key:0,color:"success",icon:"mdi-check",size:"small",variant:"text",onClick:l.saveEdit},null,8,["onClick"])):y("",!0),i.editState.index===u?(c(),g(h,{key:1,color:"grey",icon:"mdi-close",size:"small",variant:"text",onClick:l.cancelEdit},null,8,["onClick"])):(c(),g(h,{key:2,color:"primary",icon:"mdi-pencil",size:"small",variant:"text",onClick:I=>l.startEdit(u,p)},null,8,["onClick"])),i.editState.index!==u?(c(),g(h,{key:3,color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:I=>l.removeTeacher(u)},null,8,["onClick"])):y("",!0)],2)])]),_:2},1024)]),_:2},1040,["elevation"])]),_:2},1024)]),_:2},1024))),128))]),_:1}))]))]),_:1}),t(ce,{class:"mt-6"},{default:n(()=>[t(O,{class:"d-flex gap-2",cols:"12"},{default:n(()=>[t(h,{disabled:i.loading,loading:i.loading,color:"primary","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveTeachers},{default:n(()=>[...e[8]||(e[8]=[o(" 保存教师列表 ",-1)])]),_:1},8,["disabled","loading","onClick"]),t(h,{disabled:i.loading,loading:i.loading,color:"error","prepend-icon":"mdi-refresh",size:"large",variant:"outlined",onClick:l.loadTeachers},{default:n(()=>[...e[9]||(e[9]=[o(" 重载教师列表 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1})]),_:1},8,["class","color"])}const Wt=q(pi,[["render",Si],["__scopeId","data-v-16455a49"]]),Ci={name:"StudentListCard",components:{UnsavedWarning:Ye},props:{isMobile:Boolean},data(){return{newStudentName:"",editState:{index:-1,name:""},modelValue:{list:[],text:"",advanced:!1},loading:!1,error:null,lastSavedData:null,unsavedChanges:!1}},watch:{modelValue:{handler(s){this.lastSavedData&&(this.unsavedChanges=JSON.stringify(s.list)!==JSON.stringify(this.lastSavedData)),this.modelValue.advanced||(this.modelValue.text=s.list.slice().sort((e,a)=>e.id-a.id).map(e=>e.name).join(` +`))},deep:!0}},mounted(){this.loadStudents()},methods:{async loadStudents(){var s;this.error=null;try{if(this.loading=!0,!_("server.classNumber"))throw new Error("请先设置班号");try{const a=await re.loadData("classworks-list-main");a.success!=!1&&Array.isArray(a)&&(this.modelValue.list=a.map((d,i)=>typeof d=="string"?{id:i+1,name:d}:{id:d.id||i+1,name:d.name||d.toString()}),this.modelValue.list.sort((d,i)=>d.id-i.id),this.modelValue.text=this.modelValue.list.map(d=>d.name).join(` +`),this.lastSavedData=JSON.parse(JSON.stringify(this.modelValue.list)),this.unsavedChanges=!1)}catch(a){console.warn("Failed to load student list from dedicated key, falling back to config",a)}}catch(e){console.error("加载学生列表失败:",e),this.error=e.message||"加载失败,请检查设置",(s=this.$message)==null||s.error("加载失败",this.error)}finally{this.loading=!1}},async saveStudents(){var s,e,a;try{if(!_("server.classNumber"))throw new Error("请先设置班号");const i=this.modelValue.list.slice().sort((r,p)=>r.id-p.id).map((r,p)=>({id:p+1,name:r.name})),l=await re.saveData("classworks-list-main",i);if(l.success===!1)throw new Error(((s=l.error)==null?void 0:s.message)||"保存失败");this.modelValue.list=i,this.lastSavedData=JSON.parse(JSON.stringify(i)),this.unsavedChanges=!1,(e=this.$message)==null||e.success("保存成功","学生列表已更新")}catch(d){console.error("保存学生列表失败:",d),(a=this.$message)==null||a.error("保存失败",d.message||"请重试")}},toggleAdvanced(){this.modelValue.advanced=!this.modelValue.advanced},handleTextInput(s){if(!this.modelValue.advanced)return;const e=s.split(` +`).filter(l=>l.trim()),a=new Map(this.modelValue.list.map(l=>[l.name,l.id]));let d=Math.max(0,...this.modelValue.list.map(l=>l.id));const i=e.map(l=>(l=l.trim(),a.has(l)?{id:a.get(l),name:l}:{id:++d,name:l}));this.modelValue.list=i},addStudent(){const s=this.newStudentName.trim();if(s&&!this.modelValue.list.some(e=>e.name===s)){const e=Math.max(0,...this.modelValue.list.map(a=>a.id));this.modelValue.list.push({id:e+1,name:s}),this.newStudentName=""}},startEdit(s,e){this.editState.index=s,this.editState.name=e.name},saveEdit(){if(this.editState.index!==-1){const s=this.editState.name.trim();s&&s!==this.modelValue.list[this.editState.index].name&&(this.modelValue.list[this.editState.index].name=s),this.editState.index=-1,this.editState.name=""}},removeStudent(s){s!==void 0&&this.modelValue.list.splice(s,1)},moveStudent(s,e){if(e==="top"){if(s>0){const a=this.modelValue.list[s];this.modelValue.list.splice(s,1),this.modelValue.list.unshift(a),this.modelValue.list.forEach((d,i)=>d.id=i+1)}}else{const a=e==="up"?s-1:s+1;a>=0&&a{const d=ft(e.name,{toneType:"none"}),i=ft(a.name,{toneType:"none"});return d.localeCompare(i)});s.forEach((e,a)=>e.id=a+1),this.modelValue.list=s}}},_i={key:0},Vi=["onClick"],Di={key:1,class:"pt-2"};function Ai(s,e,a,d,i,l){const r=Ye;return c(),g(E,{class:Fe({"unsaved-changes":i.unsavedChanges}),color:i.unsavedChanges?"warning-subtle":void 0,border:""},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-account-group",size:"large"})]),append:n(()=>[t(r,{show:i.unsavedChanges,message:"有未保存的更改"},null,8,["show"]),t(h,{disabled:i.modelValue.list.length===0,class:"mr-2","prepend-icon":"mdi-sort-alphabetical-variant",variant:"text",onClick:l.sortStudentsByPinyin},{default:n(()=>[...e[4]||(e[4]=[o(" 按姓名首字母排序 ",-1)])]),_:1},8,["disabled","onClick"]),t(h,{color:i.modelValue.advanced?"primary":void 0,"prepend-icon":"mdi-code-braces",variant:"text",onClick:l.toggleAdvanced},{default:n(()=>[o(w(i.modelValue.advanced?"返回基础编辑":"高级编辑"),1)]),_:1},8,["color","onClick"])]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[...e[3]||(e[3]=[o("学生列表",-1)])]),_:1})]),_:1}),t(j,null,{default:n(()=>[i.loading?(c(),g(He,{key:0,class:"mb-4",color:"primary",indeterminate:""})):y("",!0),i.error?(c(),g($,{key:1,class:"mb-4",closable:"",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.error),1)]),_:1})):y("",!0),t(At,null,{default:n(()=>[i.modelValue.advanced?(c(),x("div",Di,[t(Ie,{modelValue:i.modelValue.text,"onUpdate:modelValue":[e[2]||(e[2]=p=>i.modelValue.text=p),l.handleTextInput],hint:"使用文本编辑模式批量编辑学生名单,保存时会自动去除空行",label:"批量编辑学生列表","persistent-hint":"",placeholder:"每行输入一个学生姓名",rows:"10",variant:"outlined"},null,8,["modelValue","onUpdate:modelValue"])])):(c(),x("div",_i,[t(ce,{class:"mb-6"},{default:n(()=>[t(O,{cols:"12",md:"4",sm:"6"},{default:n(()=>[t(R,{modelValue:i.newStudentName,"onUpdate:modelValue":e[0]||(e[0]=p=>i.newStudentName=p),class:"mb-4","hide-details":"",label:"添加学生",placeholder:"输入学生姓名后回车添加","prepend-inner-icon":"mdi-account-plus",variant:"outlined",onKeyup:Ve(l.addStudent,["enter"])},{append:n(()=>[t(h,{disabled:!i.newStudentName.trim(),color:"primary",icon:"mdi-plus",variant:"text",onClick:l.addStudent},null,8,["disabled","onClick"])]),_:1},8,["modelValue","onKeyup"])]),_:1})]),_:1}),t(ce,null,{default:n(()=>[(c(!0),x(ne,null,de(i.modelValue.list,(p,u)=>(c(),g(O,{key:u,cols:"12",lg:"3",md:"4",sm:"6"},{default:n(()=>[t(Gt,null,{default:n(({isHovering:b,props:T})=>[t(E,je({elevation:a.isMobile?1:b?4:1,border:"",class:"student-card"},{ref_for:!0},T),{default:n(()=>[t(j,{class:"d-flex align-center pa-3"},{default:n(()=>[t(It,{"open-on-hover":!a.isMobile,location:"bottom"},{activator:n(({props:I})=>[t(h,je({class:"mr-3 font-weight-medium",size:"small"},{ref_for:!0},I,{variant:"tonal"}),{default:n(()=>[o(w(u+1),1)]),_:2},1040)]),default:n(()=>[t(J,{density:"compact",nav:""},{default:n(()=>[t(A,{disabled:u===0,"prepend-icon":"mdi-arrow-up-bold",onClick:I=>l.moveStudent(u,"top")},{default:n(()=>[...e[5]||(e[5]=[o(" 置顶 ",-1)])]),_:1},8,["disabled","onClick"]),t(P),t(A,{disabled:u===0,"prepend-icon":"mdi-arrow-up",onClick:I=>l.moveStudent(u,"up")},{default:n(()=>[...e[6]||(e[6]=[o(" 上移 ",-1)])]),_:1},8,["disabled","onClick"]),t(A,{disabled:u===i.modelValue.list.length-1,"prepend-icon":"mdi-arrow-down",onClick:I=>l.moveStudent(u,"down")},{default:n(()=>[...e[7]||(e[7]=[o(" 下移 ",-1)])]),_:1},8,["disabled","onClick"])]),_:2},1024)]),_:2},1032,["open-on-hover"]),i.editState.index===u?(c(),g(R,{key:0,modelValue:i.editState.name,"onUpdate:modelValue":e[1]||(e[1]=I=>i.editState.name=I),autofocus:"",class:"flex-grow-1",density:"compact","hide-details":"",variant:"underlined",onBlur:l.saveEdit,onKeyup:Ve(l.saveEdit,["enter"])},null,8,["modelValue","onBlur","onKeyup"])):(c(),x("span",{key:1,class:"text-body-1 flex-grow-1",onClick:I=>l.handleClick(u,p)},w(p.name),9,Vi)),m("div",{class:Fe([{"opacity-100":b||a.isMobile},"d-flex gap-1 action-buttons"])},[t(h,{color:"primary",icon:"mdi-pencil",size:"small",variant:"text",onClick:I=>l.startEdit(u,p)},null,8,["onClick"]),t(h,{color:"error",icon:"mdi-delete",size:"small",variant:"text",onClick:I=>l.removeStudent(u)},null,8,["onClick"])],2)]),_:2},1024)]),_:2},1040,["elevation"])]),_:2},1024)]),_:2},1024))),128))]),_:1})]))]),_:1}),t(ce,{class:"mt-6"},{default:n(()=>[t(O,{class:"d-flex gap-2",cols:"12"},{default:n(()=>[t(h,{disabled:i.loading,loading:i.loading,color:"primary","prepend-icon":"mdi-content-save",size:"large",onClick:l.saveStudents},{default:n(()=>[...e[8]||(e[8]=[o(" 保存名单 ",-1)])]),_:1},8,["disabled","loading","onClick"]),t(h,{disabled:i.loading,loading:i.loading,color:"error","prepend-icon":"mdi-refresh",size:"large",variant:"outlined",onClick:l.loadStudents},{default:n(()=>[...e[9]||(e[9]=[o(" 重载名单 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1})]),_:1},8,["class","color"])}const Yt=q(Ci,[["render",Ai],["__scopeId","data-v-7e220985"]]),Ti={key:0,class:"d-flex justify-center align-center fill-height"},Ii={key:1,class:"d-flex justify-center align-center fill-height"},ji={key:2},Ei={class:"text-caption ml-4 text-medium-emphasis"},Ui={key:0},Ni={key:1},Mi={class:"text-error"},qt={__name:"CloudMigrationDialog",props:{modelValue:Boolean},emits:["update:modelValue"],setup(s,{emit:e}){const a=s,d=e,i=ge(!1),l=ge(!1),r=ge(!1),p=ge([]),u=ge([]),b=ge(!1),T=ge(null),I=ge(null),H=[{id:"student-list",label:"学生列表",description:"classworks-list-main",matcher:D=>D==="classworks-list-main"||D.startsWith("classworks-list-main")},{id:"homework-data",label:"作业数据",description:"classworks-data-*",matcher:D=>D.startsWith("classworks-data-")},{id:"lists",label:"列表",description:"classworks-list-*",matcher:D=>D.startsWith("classworks-list-")},{id:"other",label:"其他",description:"所有其他键",matcher:D=>!D.startsWith("classworks-data-")&&!D.startsWith("classworks-list-")}];pt(()=>a.modelValue,D=>{i.value=D,D&&G()}),pt(i,D=>{d("update:modelValue",D)});const G=async()=>{l.value=!0;try{const D=await gt.loadKeys({limit:1e3});p.value=D.keys||[],u.value=[]}catch(D){console.error(D)}finally{l.value=!1}},Z=D=>p.value.filter(D.matcher),fe=D=>Z(D).length,pe=D=>{const V=Z(D);return V.length===0?!1:V.filter(N=>u.value.includes(N)).length===V.length},me=D=>{const V=Z(D);if(V.length===0)return!1;const k=V.filter(N=>u.value.includes(N)).length;return k>0&&k{const V=Z(D);if(V.length===0)return;const k=pe(D),N=new Set(u.value);k?V.forEach(Q=>N.delete(Q)):V.forEach(Q=>N.add(Q)),u.value=Array.from(N)},be=async()=>{var D,V,k;r.value=!0,I.value=null,T.value=null;try{const N={};for(const L of u.value){const xe=await gt.loadData(L);if(xe){if(xe&&xe.success===!1&&xe.error){console.warn(`Skipping key ${L} due to load error`,xe.error);continue}N[L]=xe}}const Q=_("server.domain"),le=_("server.kvToken");if(!Q||!le)throw new Error("请先配置服务器地址和 Token");const _e=Q.replace(/\/$/,""),W=await jn.post(`${_e}/kv/_batchimport`,N,{headers:{Authorization:`Bearer ${le}`,"Content-Type":"application/json"}});if(W.data&&W.data.code===200)T.value=W.data.data,b.value=!0,i.value=!1;else throw new Error(((D=W.data)==null?void 0:D.message)||"迁移失败")}catch(N){console.error(N),I.value=((k=(V=N.response)==null?void 0:V.data)==null?void 0:k.message)||N.message||"发生未知错误",b.value=!0}finally{r.value=!1}};return(D,V)=>(c(),x(ne,null,[t(we,{modelValue:i.value,"onUpdate:modelValue":V[2]||(V[2]=k=>i.value=k),"max-width":"600",scrollable:""},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[...V[5]||(V[5]=[o("迁移到云端",-1)])]),_:1}),t(j,{style:{height:"400px"}},{default:n(()=>[l.value?(c(),x("div",Ti,[t(Dt,{indeterminate:"",color:"primary"})])):p.value.length===0?(c(),x("div",Ii," 没有找到本地数据 ")):(c(),x("div",ji,[t(J,{"select-strategy":"classic",class:"mb-4"},{default:n(()=>[t(_n,null,{default:n(()=>[...V[6]||(V[6]=[o("选择数据类型",-1)])]),_:1}),(c(),x(ne,null,de(H,k=>t(A,{key:k.id,onClick:N=>se(k)},{prepend:n(()=>[t(wt,{"model-value":pe(k),indeterminate:me(k),onClick:Ae(N=>se(k),["stop"])},null,8,["model-value","indeterminate","onClick"])]),default:n(()=>[t(z,null,{default:n(()=>[o(w(k.label),1)]),_:2},1024),t(ie,null,{default:n(()=>[o(w(k.description)+" ("+w(fe(k))+" 项)",1)]),_:2},1024)]),_:2},1032,["onClick"])),64))]),_:1}),t(P,{class:"mb-4"}),t(it,null,{default:n(()=>[t(lt,{title:"详细数据列表"},{default:n(()=>[t(ot,null,{default:n(()=>[t(J,{"select-strategy":"classic",density:"compact"},{default:n(()=>[(c(!0),x(ne,null,de(p.value,k=>(c(),g(A,{key:k,value:k},{prepend:n(()=>[t(wt,{modelValue:u.value,"onUpdate:modelValue":V[0]||(V[0]=N=>u.value=N),value:k},null,8,["modelValue","value"])]),default:n(()=>[t(z,null,{default:n(()=>[o(w(k),1)]),_:2},1024)]),_:2},1032,["value"]))),128))]),_:1})]),_:1})]),_:1})]),_:1})]))]),_:1}),t(P),t(ue,null,{default:n(()=>[m("div",Ei," 已选择 "+w(u.value.length)+" 项 ",1),t(te),t(h,{variant:"text",onClick:V[1]||(V[1]=k=>i.value=!1)},{default:n(()=>[...V[7]||(V[7]=[o("取消",-1)])]),_:1}),t(h,{color:"primary",onClick:be,loading:r.value,disabled:u.value.length===0},{default:n(()=>[...V[8]||(V[8]=[o(" 开始迁移 ",-1)])]),_:1},8,["loading","disabled"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:b.value,"onUpdate:modelValue":V[4]||(V[4]=k=>b.value=k),"max-width":"500"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[...V[9]||(V[9]=[o("迁移结果",-1)])]),_:1}),t(j,null,{default:n(()=>[T.value?(c(),x("div",Ui,[m("p",null,"总计: "+w(T.value.summary.total),1),m("p",null,"成功: "+w(T.value.summary.successful),1),m("p",null,"失败: "+w(T.value.summary.failed),1)])):I.value?(c(),x("div",Ni,[m("p",Mi,w(I.value),1)])):y("",!0)]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{color:"primary",onClick:V[3]||(V[3]=k=>b.value=!1)},{default:n(()=>[...V[10]||(V[10]=[o("关闭",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])],64))}},Pi={name:"KvDatabaseCard",components:{SettingsCard:ee,CloudMigrationDialog:qt},data(){return{loading:!1,loadingData:!1,savingData:!1,deletingData:!1,kvData:[],searchQuery:"",viewDialog:!1,editDialog:!1,deleteDialog:!1,createDialog:!1,cloudUrlDialog:!1,showMigrationDialog:!1,selectedItem:null,editingItem:null,itemToDelete:null,selectedCloudItem:null,gettingCloudUrl:!1,cloudUrlResult:null,cloudUrlError:null,cloudUrlOptions:{migrateFromLocal:!0,autoConfigureCloud:!0},editingData:"",newKey:"",newData:"",tableHeaders:[{title:"键名",key:"key",sortable:!0},{title:"操作",key:"actions",sortable:!1,width:"120px"}]}},computed:{currentProvider(){return _("server.provider")},isKvProvider(){return this.currentProvider==="kv-local"||this.currentProvider==="kv-server"||this.currentProvider==="classworkscloud"},connectionStatus(){return this.isKvProvider?this.currentProvider==="kv-local"?"本地数据库":"服务器数据库":"当前数据提供者不支持KV数据库管理"},connectionIcon(){return this.isKvProvider?this.currentProvider==="kv-local"?"mdi-database":"mdi-database-sync":"mdi-database-off"},connectionColor(){return this.isKvProvider?"success":"error"},filteredKvData(){return this.searchQuery?this.kvData.filter(s=>s.key.toLowerCase().includes(this.searchQuery.toLowerCase())):this.kvData},isValidJson(){if(!this.editingData)return!0;try{return JSON.parse(this.editingData),!0}catch{return!1}},isValidNewJson(){if(!this.newData)return!0;try{return JSON.parse(this.newData),!0}catch{return!1}},isValidKey(){return!this.newKey||this.newKey.trim()===""?!1:!this.kvData.some(s=>s.key===this.newKey.trim())}},async mounted(){this.isKvProvider&&await this.loadKvData()},methods:{async refreshConnection(){this.loading=!0;try{await new Promise(s=>setTimeout(s,500)),this.$message.success("连接状态已刷新")}catch(s){this.$message.error("刷新失败",s.message)}finally{this.loading=!1}},async loadKvData(){var s;if(!this.isKvProvider){this.$message.warning("当前数据提供者不支持KV数据库管理");return}this.loadingData=!0;try{this.kvData=[];const e=await re.loadKeys({sortBy:"key",sortDir:"asc",limit:1e3});if(e.success===!1)throw new Error(((s=e.error)==null?void 0:s.message)||"获取键名列表失败");this.kvData=e.keys.map(a=>({key:a,value:null,loaded:!1})),this.$message.success("键名加载完成",`共找到 ${this.kvData.length} 个键,总计 ${e.total_rows} 个键`)}catch(e){this.$message.error("加载数据失败",e.message)}finally{this.loadingData=!1}},async viewItem(s){this.selectedItem=s,this.viewDialog=!0,(!s.loaded||s.value===null)&&await this.loadItemData(s)},async editItem(s){this.editingItem=s,(!s.loaded||s.value===null)&&await this.loadItemData(s),this.editingData=this.formatJsonData(s.value),this.editDialog=!0},async loadItemData(s){try{const e=await re.loadData(s.key);if(e&&e.success!==!1)s.value=e,s.loaded=!0;else throw new Error("数据加载失败")}catch(e){this.$message.error("加载数据失败",e.message),s.value=null,s.loaded=!1}},closeEditDialog(){this.editDialog=!1,this.editingItem=null,this.editingData=""},createNewItem(){this.newKey="",this.newData=`{ "example": "value" -}`,this.createDialog=!0},closeCreateDialog(){this.createDialog=!1,this.newKey="",this.newData=""},async saveNewData(){var s;if(!(!this.isValidKey||!this.isValidNewJson)){this.savingData=!0;try{const e=JSON.parse(this.newData),a=this.newKey.trim(),d=await ae.saveData(a,e);if(d&&!d.error)this.kvData.push({key:a,value:e,loaded:!0}),this.$message.success("数据创建成功"),this.closeCreateDialog();else throw new Error(((s=d.error)==null?void 0:s.message)||"创建失败")}catch(e){this.$message.error("创建失败",e.message)}finally{this.savingData=!1}}},async saveEditedData(){var s;if(!(!this.isValidJson||!this.editingItem)){this.savingData=!0;try{const e=JSON.parse(this.editingData),a=await ae.saveData(this.editingItem.key,e);if(a&&!a.error){const d=this.kvData.findIndex(i=>i.key===this.editingItem.key);d!==-1&&(this.kvData[d].value=e,this.kvData[d].loaded=!0),this.$message.success("数据保存成功"),this.closeEditDialog()}else throw new Error(((s=a.error)==null?void 0:s.message)||"保存失败")}catch(e){this.$message.error("保存失败",e.message)}finally{this.savingData=!1}}},confirmDelete(s){this.itemToDelete=s,this.deleteDialog=!0},async deleteItem(){if(this.itemToDelete){this.deletingData=!0;try{this.currentProvider==="kv-local"?await(await En("ClassworksDB",2)).transaction("kv","readwrite").objectStore("kv").delete(this.itemToDelete.key):await ae.saveData(this.itemToDelete.key,null);const s=this.kvData.findIndex(e=>e.key===this.itemToDelete.key);s!==-1&&this.kvData.splice(s,1),this.$message.success("数据删除成功"),this.deleteDialog=!1,this.itemToDelete=null}catch(s){this.$message.error("删除失败",s.message)}finally{this.deletingData=!1}}},formatJsonData(s){try{return JSON.stringify(s,null,2)}catch{return String(s)}},async copyToClipboard(s){try{const e=this.formatJsonData(s);await navigator.clipboard.writeText(e),this.$message.success("数据已复制到剪贴板")}catch(e){this.$message.error("复制失败",e.message)}},async getCloudUrl(s){this.selectedCloudItem=s,this.cloudUrlResult=null,this.cloudUrlError=null,this.cloudUrlDialog=!0,await this.fetchCloudUrl()},async fetchCloudUrl(){var s;if(this.selectedCloudItem){this.gettingCloudUrl=!0,this.cloudUrlError=null;try{const e=await ae.getKeyCloudUrl(this.selectedCloudItem.key,this.cloudUrlOptions);e.success?(this.cloudUrlResult=e,this.$message.success("云端地址获取成功")):(this.cloudUrlError=((s=e.error)==null?void 0:s.message)||"获取云端地址失败",this.$message.error("获取失败",this.cloudUrlError))}catch(e){this.cloudUrlError=e.message||"获取云端地址时发生错误",this.$message.error("获取失败",this.cloudUrlError)}finally{this.gettingCloudUrl=!1}}},async refreshCloudUrl(){await this.fetchCloudUrl()},async copyCloudUrl(){var s;if((s=this.cloudUrlResult)!=null&&s.url)try{await navigator.clipboard.writeText(this.cloudUrlResult.url),this.$message.success("云端地址已复制到剪贴板")}catch(e){this.$message.error("复制失败",e.message)}},openCloudUrl(){var s;if((s=this.cloudUrlResult)!=null&&s.url)try{window.open(this.cloudUrlResult.url,"_blank")}catch(e){this.$message.error("打开链接失败",e.message)}}}},Bi={class:"text-primary"},Li={class:"mt-2"},zi={key:0,class:"mb-2"},Oi={key:1,class:"mb-2"};function Ri(s,e,a,d,i,l){const r=qt,p=ee;return c(),g(p,{loading:i.loading,icon:"mdi-database-edit",title:"KV数据库管理"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{prepend:n(()=>[t(v,{color:l.connectionColor,icon:l.connectionIcon,class:"mr-3"},null,8,["color","icon"])]),append:n(()=>[t(h,{loading:i.loading,variant:"tonal",onClick:l.refreshConnection},{default:n(()=>[...e[20]||(e[20]=[o(" 刷新 ",-1)])]),_:1},8,["loading","onClick"])]),default:n(()=>[t(L,null,{default:n(()=>[...e[19]||(e[19]=[o("数据库状态",-1)])]),_:1}),t(ie,null,{default:n(()=>[o(w(l.connectionStatus),1)]),_:1})]),_:1}),t(M,{class:"my-2"}),t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-format-list-bulleted"})]),append:n(()=>[t(ht,{variant:"tonal"},{default:n(()=>[t(h,{loading:i.loadingData,onClick:l.loadKvData},{default:n(()=>[...e[22]||(e[22]=[o(" 加载数据 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{disabled:!l.isKvProvider,onClick:l.createNewItem},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-plus"}),e[23]||(e[23]=o(" 新建 ",-1))]),_:1},8,["disabled","onClick"]),t(h,{onClick:e[0]||(e[0]=u=>i.showMigrationDialog=!0)},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-cloud-upload"}),e[24]||(e[24]=o(" 从本地迁移 ",-1))]),_:1})]),_:1})]),default:n(()=>[t(L,null,{default:n(()=>[...e[21]||(e[21]=[o("数据条目",-1)])]),_:1}),t(ie,null,{default:n(()=>[o("共 "+w(i.kvData.length)+" 条记录",1)]),_:1})]),_:1})]),_:1}),i.kvData.length>0?(c(),g(E,{key:0,class:"mt-4",variant:"outlined"},{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-table"}),e[25]||(e[25]=o(" KV数据列表 ",-1)),t(te),t(R,{modelValue:i.searchQuery,"onUpdate:modelValue":e[1]||(e[1]=u=>i.searchQuery=u),clearable:"",density:"compact","hide-details":"",label:"搜索键名","prepend-inner-icon":"mdi-magnify",style:{"max-width":"300px"},variant:"outlined"},null,8,["modelValue"])]),_:1}),t(Ut,{headers:i.tableHeaders,items:l.filteredKvData,"items-per-page":10,loading:i.loadingData,class:"elevation-0","item-value":"key"},{"item.key":n(({item:u})=>[m("code",Bi,w(u.key),1)]),"item.actions":n(({item:u})=>[t(ht,{density:"compact",variant:"text"},{default:n(()=>[t(h,{icon:"mdi-eye",size:"small",title:"查看",onClick:y=>l.viewItem(u)},null,8,["onClick"]),t(h,{icon:"mdi-pencil",size:"small",title:"编辑",onClick:y=>l.editItem(u)},null,8,["onClick"]),t(h,{color:"primary",icon:"mdi-cloud-download",size:"small",title:"获取云端地址",onClick:y=>l.getCloudUrl(u)},null,8,["onClick"]),t(h,{color:"error",icon:"mdi-delete",size:"small",title:"删除",onClick:y=>l.confirmDelete(u)},null,8,["onClick"])]),_:2},1024)]),_:2},1032,["headers","items","loading"])]),_:1})):k("",!0),t(we,{modelValue:i.viewDialog,"onUpdate:modelValue":e[5]||(e[5]=u=>i.viewDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-eye"}),e[26]||(e[26]=o(" 查看数据 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:e[2]||(e[2]=u=>i.viewDialog=!1)})]),_:1}),i.selectedItem?(c(),g(Le,{key:0},{default:n(()=>[e[27]||(e[27]=o(" 键名: ",-1)),m("code",null,w(i.selectedItem.key),1)]),_:1})):k("",!0),t(j,null,{default:n(()=>[i.selectedItem?(c(),g(Ie,{key:0,"model-value":l.formatJsonData(i.selectedItem.value),class:"font-monospace",label:"数据内容",readonly:"",rows:"15",variant:"outlined"},null,8,["model-value"])):k("",!0)]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"tonal",onClick:e[3]||(e[3]=u=>{var y;return l.copyToClipboard((y=i.selectedItem)==null?void 0:y.value)})},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-content-copy"}),e[28]||(e[28]=o(" 复制数据 ",-1))]),_:1}),t(h,{variant:"text",onClick:e[4]||(e[4]=u=>i.viewDialog=!1)},{default:n(()=>[...e[29]||(e[29]=[o(" 关闭 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.editDialog,"onUpdate:modelValue":e[7]||(e[7]=u=>i.editDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-pencil"}),e[30]||(e[30]=o(" 编辑数据 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:l.closeEditDialog},null,8,["onClick"])]),_:1}),i.editingItem?(c(),g(Le,{key:0},{default:n(()=>[e[31]||(e[31]=o(" 键名: ",-1)),m("code",null,w(i.editingItem.key),1)]),_:1})):k("",!0),t(j,null,{default:n(()=>[t(Ie,{modelValue:i.editingData,"onUpdate:modelValue":e[6]||(e[6]=u=>i.editingData=u),error:!l.isValidJson,"error-messages":l.isValidJson?[]:["请输入有效的JSON格式"],class:"font-monospace",label:"数据内容 (JSON格式)",rows:"15",variant:"outlined"},null,8,["modelValue","error","error-messages"])]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:l.closeEditDialog},{default:n(()=>[...e[32]||(e[32]=[o(" 取消 ",-1)])]),_:1},8,["onClick"]),t(h,{disabled:!l.isValidJson,loading:i.savingData,color:"primary",variant:"tonal",onClick:l.saveEditedData},{default:n(()=>[...e[33]||(e[33]=[o(" 保存 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.createDialog,"onUpdate:modelValue":e[10]||(e[10]=u=>i.createDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-plus"}),e[34]||(e[34]=o(" 新建数据 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:l.closeCreateDialog},null,8,["onClick"])]),_:1}),t(j,null,{default:n(()=>[t(R,{modelValue:i.newKey,"onUpdate:modelValue":e[8]||(e[8]=u=>i.newKey=u),error:!l.isValidKey,"error-messages":l.isValidKey?[]:["键名不能为空且不能与现有键重复"],class:"mb-4",label:"键名",placeholder:"请输入键名,如:my-config",variant:"outlined"},null,8,["modelValue","error","error-messages"]),t(Ie,{modelValue:i.newData,"onUpdate:modelValue":e[9]||(e[9]=u=>i.newData=u),error:!l.isValidNewJson,"error-messages":l.isValidNewJson?[]:["请输入有效的JSON格式"],class:"font-monospace",label:"数据内容 (JSON格式)",placeholder:'请输入JSON数据,如:{"name": "value"}',rows:"15",variant:"outlined"},null,8,["modelValue","error","error-messages"])]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:l.closeCreateDialog},{default:n(()=>[...e[35]||(e[35]=[o(" 取消 ",-1)])]),_:1},8,["onClick"]),t(h,{disabled:!l.isValidKey||!l.isValidNewJson,loading:i.savingData,color:"primary",variant:"tonal",onClick:l.saveNewData},{default:n(()=>[...e[36]||(e[36]=[o(" 创建 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.cloudUrlDialog,"onUpdate:modelValue":e[15]||(e[15]=u=>i.cloudUrlDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-cloud-download"}),e[37]||(e[37]=o(" 获取云端访问地址 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:e[11]||(e[11]=u=>i.cloudUrlDialog=!1)})]),_:1}),i.selectedCloudItem?(c(),g(Le,{key:0},{default:n(()=>[e[38]||(e[38]=o(" 键名: ",-1)),m("code",null,w(i.selectedCloudItem.key),1)]),_:1})):k("",!0),t(j,null,{default:n(()=>[i.cloudUrlError?(c(),g($,{key:0,class:"mb-4",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.cloudUrlError),1)]),_:1})):k("",!0),i.cloudUrlResult&&i.cloudUrlResult.success?(c(),g($,{key:1,class:"mb-4",type:"success",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[39]||(e[39]=[o("云端地址获取成功",-1)])]),_:1}),m("div",Li,[i.cloudUrlResult.migrated?(c(),x("div",zi,[t(v,{class:"mr-1",color:"success",icon:"mdi-database-arrow-up"}),e[40]||(e[40]=o(" 数据已从本地迁移到云端 ",-1))])):k("",!0),i.cloudUrlResult.configured?(c(),x("div",Oi,[t(v,{class:"mr-1",color:"info",icon:"mdi-cog"}),e[41]||(e[41]=o(" 云端配置已自动设置 ",-1))])):k("",!0)])]),_:1})):k("",!0),i.cloudUrlResult&&i.cloudUrlResult.url?(c(),g(R,{key:2,"model-value":i.cloudUrlResult.url,"append-inner-icon":"mdi-content-copy",class:"font-monospace",label:"云端访问地址",readonly:"",variant:"outlined","onClick:appendInner":l.copyCloudUrl},null,8,["model-value","onClick:appendInner"])):k("",!0),i.cloudUrlResult&&i.cloudUrlResult.url?(c(),g(it,{key:3,class:"mt-4"},{default:n(()=>[t(lt,null,{default:n(()=>[t(Et,null,{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-cog"}),e[42]||(e[42]=o(" 高级选项 ",-1))]),_:1}),t(ot,null,{default:n(()=>[t(Ce,{modelValue:i.cloudUrlOptions.migrateFromLocal,"onUpdate:modelValue":e[12]||(e[12]=u=>i.cloudUrlOptions.migrateFromLocal=u),density:"compact",label:"从本地迁移数据到云端"},null,8,["modelValue"]),t(Ce,{modelValue:i.cloudUrlOptions.autoConfigureCloud,"onUpdate:modelValue":e[13]||(e[13]=u=>i.cloudUrlOptions.autoConfigureCloud=u),density:"compact",label:"自动配置云端默认设置"},null,8,["modelValue"]),t(h,{loading:i.gettingCloudUrl,class:"mt-2",color:"primary",variant:"tonal",onClick:l.refreshCloudUrl},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-refresh"}),e[43]||(e[43]=o(" 重新获取 ",-1))]),_:1},8,["loading","onClick"])]),_:1})]),_:1})]),_:1})):k("",!0)]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[14]||(e[14]=u=>i.cloudUrlDialog=!1)},{default:n(()=>[...e[44]||(e[44]=[o(" 关闭 ",-1)])]),_:1}),i.cloudUrlResult&&i.cloudUrlResult.url?(c(),g(h,{key:0,color:"primary",variant:"tonal",onClick:l.openCloudUrl},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-open-in-new"}),e[45]||(e[45]=o(" 在新窗口打开 ",-1))]),_:1},8,["onClick"])):k("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.deleteDialog,"onUpdate:modelValue":e[17]||(e[17]=u=>i.deleteDialog=u),"max-width":"400px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center text-error"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-alert"}),e[46]||(e[46]=o(" 确认删除 ",-1))]),_:1}),t(j,null,{default:n(()=>{var u;return[e[48]||(e[48]=o(" 确定要删除键名为 ",-1)),m("code",null,w((u=i.itemToDelete)==null?void 0:u.key),1),e[49]||(e[49]=o(" 的数据吗? ",-1)),e[50]||(e[50]=m("br",null,null,-1)),e[51]||(e[51]=m("br",null,null,-1)),t($,{class:"mt-2",type:"warning",variant:"tonal"},{default:n(()=>[...e[47]||(e[47]=[o(" 此操作不可撤销,请谨慎操作! ",-1)])]),_:1})]}),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[16]||(e[16]=u=>i.deleteDialog=!1)},{default:n(()=>[...e[52]||(e[52]=[o(" 取消 ",-1)])]),_:1}),t(h,{loading:i.deletingData,color:"error",variant:"tonal",onClick:l.deleteItem},{default:n(()=>[...e[53]||(e[53]=[o(" 删除 ",-1)])]),_:1},8,["loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(r,{modelValue:i.showMigrationDialog,"onUpdate:modelValue":e[18]||(e[18]=u=>i.showMigrationDialog=u)},null,8,["modelValue"])]),_:1},8,["loading"])}const Zt=Y(Pi,[["render",Ri],["__scopeId","data-v-67879974"]]),Ki={name:"DataProviderSettingsCard",components:{SettingsCard:ee},data(){return{loading:!1,serverchecktime:{},confirmDialog:!1,confirmTitle:"",confirmMessage:"",confirmAction:null,machineId:null,migrateLoading:!1}},computed:{currentProvider(){return _("server.provider")},isKvProvider(){return this.currentProvider==="kv-local"||this.currentProvider==="kv-server"||this.currentProvider==="classworkscloud"}},async created(){this.machineId=_("device.uuid")},methods:{async checkServerConnection(){this.loading=!0,this.serverchecktime=new Date;const s=[];try{const e=_("server.siteKey"),a={Accept:"application/json"};if(e&&(a["x-site-key"]=e),Mn()){const d=await Pn(async p=>{const u=await Qe.get(`${p}/check`,{method:"GET",headers:a});if(u.data.status!=="success")throw new Error("服务器响应异常");return u},{onServerTried:({url:p,status:u,tried:y})=>{s.length=0,s.push(...y)}}),i=new Date-this.serverchecktime,l=s.find(p=>p.status==="success");let r=`服务器连接正常 延迟${i}ms`;if(s.length>1){const p=s.map((u,y)=>`${y+1}. ${u.url} (${u.status==="success"?"成功":"失败"})`).join(` +}`,this.createDialog=!0},closeCreateDialog(){this.createDialog=!1,this.newKey="",this.newData=""},async saveNewData(){var s;if(!(!this.isValidKey||!this.isValidNewJson)){this.savingData=!0;try{const e=JSON.parse(this.newData),a=this.newKey.trim(),d=await re.saveData(a,e);if(d&&!d.error)this.kvData.push({key:a,value:e,loaded:!0}),this.$message.success("数据创建成功"),this.closeCreateDialog();else throw new Error(((s=d.error)==null?void 0:s.message)||"创建失败")}catch(e){this.$message.error("创建失败",e.message)}finally{this.savingData=!1}}},async saveEditedData(){var s;if(!(!this.isValidJson||!this.editingItem)){this.savingData=!0;try{const e=JSON.parse(this.editingData),a=await re.saveData(this.editingItem.key,e);if(a&&!a.error){const d=this.kvData.findIndex(i=>i.key===this.editingItem.key);d!==-1&&(this.kvData[d].value=e,this.kvData[d].loaded=!0),this.$message.success("数据保存成功"),this.closeEditDialog()}else throw new Error(((s=a.error)==null?void 0:s.message)||"保存失败")}catch(e){this.$message.error("保存失败",e.message)}finally{this.savingData=!1}}},confirmDelete(s){this.itemToDelete=s,this.deleteDialog=!0},async deleteItem(){if(this.itemToDelete){this.deletingData=!0;try{this.currentProvider==="kv-local"?await(await En("ClassworksDB",2)).transaction("kv","readwrite").objectStore("kv").delete(this.itemToDelete.key):await re.saveData(this.itemToDelete.key,null);const s=this.kvData.findIndex(e=>e.key===this.itemToDelete.key);s!==-1&&this.kvData.splice(s,1),this.$message.success("数据删除成功"),this.deleteDialog=!1,this.itemToDelete=null}catch(s){this.$message.error("删除失败",s.message)}finally{this.deletingData=!1}}},formatJsonData(s){try{return JSON.stringify(s,null,2)}catch{return String(s)}},async copyToClipboard(s){try{const e=this.formatJsonData(s);await navigator.clipboard.writeText(e),this.$message.success("数据已复制到剪贴板")}catch(e){this.$message.error("复制失败",e.message)}},async getCloudUrl(s){this.selectedCloudItem=s,this.cloudUrlResult=null,this.cloudUrlError=null,this.cloudUrlDialog=!0,await this.fetchCloudUrl()},async fetchCloudUrl(){var s;if(this.selectedCloudItem){this.gettingCloudUrl=!0,this.cloudUrlError=null;try{const e=await re.getKeyCloudUrl(this.selectedCloudItem.key,this.cloudUrlOptions);e.success?(this.cloudUrlResult=e,this.$message.success("云端地址获取成功")):(this.cloudUrlError=((s=e.error)==null?void 0:s.message)||"获取云端地址失败",this.$message.error("获取失败",this.cloudUrlError))}catch(e){this.cloudUrlError=e.message||"获取云端地址时发生错误",this.$message.error("获取失败",this.cloudUrlError)}finally{this.gettingCloudUrl=!1}}},async refreshCloudUrl(){await this.fetchCloudUrl()},async copyCloudUrl(){var s;if((s=this.cloudUrlResult)!=null&&s.url)try{await navigator.clipboard.writeText(this.cloudUrlResult.url),this.$message.success("云端地址已复制到剪贴板")}catch(e){this.$message.error("复制失败",e.message)}},openCloudUrl(){var s;if((s=this.cloudUrlResult)!=null&&s.url)try{window.open(this.cloudUrlResult.url,"_blank")}catch(e){this.$message.error("打开链接失败",e.message)}}}},Bi={class:"text-primary"},Li={class:"mt-2"},zi={key:0,class:"mb-2"},Oi={key:1,class:"mb-2"};function Ri(s,e,a,d,i,l){const r=qt,p=ee;return c(),g(p,{loading:i.loading,icon:"mdi-database-edit",title:"KV数据库管理"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{prepend:n(()=>[t(v,{color:l.connectionColor,icon:l.connectionIcon,class:"mr-3"},null,8,["color","icon"])]),append:n(()=>[t(h,{loading:i.loading,variant:"tonal",onClick:l.refreshConnection},{default:n(()=>[...e[20]||(e[20]=[o(" 刷新 ",-1)])]),_:1},8,["loading","onClick"])]),default:n(()=>[t(z,null,{default:n(()=>[...e[19]||(e[19]=[o("数据库状态",-1)])]),_:1}),t(ie,null,{default:n(()=>[o(w(l.connectionStatus),1)]),_:1})]),_:1}),t(P,{class:"my-2"}),t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-format-list-bulleted"})]),append:n(()=>[t(ht,{variant:"tonal"},{default:n(()=>[t(h,{loading:i.loadingData,onClick:l.loadKvData},{default:n(()=>[...e[22]||(e[22]=[o(" 加载数据 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{disabled:!l.isKvProvider,onClick:l.createNewItem},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-plus"}),e[23]||(e[23]=o(" 新建 ",-1))]),_:1},8,["disabled","onClick"]),t(h,{onClick:e[0]||(e[0]=u=>i.showMigrationDialog=!0)},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-cloud-upload"}),e[24]||(e[24]=o(" 从本地迁移 ",-1))]),_:1})]),_:1})]),default:n(()=>[t(z,null,{default:n(()=>[...e[21]||(e[21]=[o("数据条目",-1)])]),_:1}),t(ie,null,{default:n(()=>[o("共 "+w(i.kvData.length)+" 条记录",1)]),_:1})]),_:1})]),_:1}),i.kvData.length>0?(c(),g(E,{key:0,class:"mt-4",variant:"outlined"},{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-table"}),e[25]||(e[25]=o(" KV数据列表 ",-1)),t(te),t(R,{modelValue:i.searchQuery,"onUpdate:modelValue":e[1]||(e[1]=u=>i.searchQuery=u),clearable:"",density:"compact","hide-details":"",label:"搜索键名","prepend-inner-icon":"mdi-magnify",style:{"max-width":"300px"},variant:"outlined"},null,8,["modelValue"])]),_:1}),t(Ut,{headers:i.tableHeaders,items:l.filteredKvData,"items-per-page":10,loading:i.loadingData,class:"elevation-0","item-value":"key"},{"item.key":n(({item:u})=>[m("code",Bi,w(u.key),1)]),"item.actions":n(({item:u})=>[t(ht,{density:"compact",variant:"text"},{default:n(()=>[t(h,{icon:"mdi-eye",size:"small",title:"查看",onClick:b=>l.viewItem(u)},null,8,["onClick"]),t(h,{icon:"mdi-pencil",size:"small",title:"编辑",onClick:b=>l.editItem(u)},null,8,["onClick"]),t(h,{color:"primary",icon:"mdi-cloud-download",size:"small",title:"获取云端地址",onClick:b=>l.getCloudUrl(u)},null,8,["onClick"]),t(h,{color:"error",icon:"mdi-delete",size:"small",title:"删除",onClick:b=>l.confirmDelete(u)},null,8,["onClick"])]),_:2},1024)]),_:2},1032,["headers","items","loading"])]),_:1})):y("",!0),t(we,{modelValue:i.viewDialog,"onUpdate:modelValue":e[5]||(e[5]=u=>i.viewDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-eye"}),e[26]||(e[26]=o(" 查看数据 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:e[2]||(e[2]=u=>i.viewDialog=!1)})]),_:1}),i.selectedItem?(c(),g(Le,{key:0},{default:n(()=>[e[27]||(e[27]=o(" 键名: ",-1)),m("code",null,w(i.selectedItem.key),1)]),_:1})):y("",!0),t(j,null,{default:n(()=>[i.selectedItem?(c(),g(Ie,{key:0,"model-value":l.formatJsonData(i.selectedItem.value),class:"font-monospace",label:"数据内容",readonly:"",rows:"15",variant:"outlined"},null,8,["model-value"])):y("",!0)]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"tonal",onClick:e[3]||(e[3]=u=>{var b;return l.copyToClipboard((b=i.selectedItem)==null?void 0:b.value)})},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-content-copy"}),e[28]||(e[28]=o(" 复制数据 ",-1))]),_:1}),t(h,{variant:"text",onClick:e[4]||(e[4]=u=>i.viewDialog=!1)},{default:n(()=>[...e[29]||(e[29]=[o(" 关闭 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.editDialog,"onUpdate:modelValue":e[7]||(e[7]=u=>i.editDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-pencil"}),e[30]||(e[30]=o(" 编辑数据 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:l.closeEditDialog},null,8,["onClick"])]),_:1}),i.editingItem?(c(),g(Le,{key:0},{default:n(()=>[e[31]||(e[31]=o(" 键名: ",-1)),m("code",null,w(i.editingItem.key),1)]),_:1})):y("",!0),t(j,null,{default:n(()=>[t(Ie,{modelValue:i.editingData,"onUpdate:modelValue":e[6]||(e[6]=u=>i.editingData=u),error:!l.isValidJson,"error-messages":l.isValidJson?[]:["请输入有效的JSON格式"],class:"font-monospace",label:"数据内容 (JSON格式)",rows:"15",variant:"outlined"},null,8,["modelValue","error","error-messages"])]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:l.closeEditDialog},{default:n(()=>[...e[32]||(e[32]=[o(" 取消 ",-1)])]),_:1},8,["onClick"]),t(h,{disabled:!l.isValidJson,loading:i.savingData,color:"primary",variant:"tonal",onClick:l.saveEditedData},{default:n(()=>[...e[33]||(e[33]=[o(" 保存 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.createDialog,"onUpdate:modelValue":e[10]||(e[10]=u=>i.createDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-plus"}),e[34]||(e[34]=o(" 新建数据 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:l.closeCreateDialog},null,8,["onClick"])]),_:1}),t(j,null,{default:n(()=>[t(R,{modelValue:i.newKey,"onUpdate:modelValue":e[8]||(e[8]=u=>i.newKey=u),error:!l.isValidKey,"error-messages":l.isValidKey?[]:["键名不能为空且不能与现有键重复"],class:"mb-4",label:"键名",placeholder:"请输入键名,如:my-config",variant:"outlined"},null,8,["modelValue","error","error-messages"]),t(Ie,{modelValue:i.newData,"onUpdate:modelValue":e[9]||(e[9]=u=>i.newData=u),error:!l.isValidNewJson,"error-messages":l.isValidNewJson?[]:["请输入有效的JSON格式"],class:"font-monospace",label:"数据内容 (JSON格式)",placeholder:'请输入JSON数据,如:{"name": "value"}',rows:"15",variant:"outlined"},null,8,["modelValue","error","error-messages"])]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:l.closeCreateDialog},{default:n(()=>[...e[35]||(e[35]=[o(" 取消 ",-1)])]),_:1},8,["onClick"]),t(h,{disabled:!l.isValidKey||!l.isValidNewJson,loading:i.savingData,color:"primary",variant:"tonal",onClick:l.saveNewData},{default:n(()=>[...e[36]||(e[36]=[o(" 创建 ",-1)])]),_:1},8,["disabled","loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.cloudUrlDialog,"onUpdate:modelValue":e[15]||(e[15]=u=>i.cloudUrlDialog=u),"max-width":"800px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-cloud-download"}),e[37]||(e[37]=o(" 获取云端访问地址 ",-1)),t(te),t(h,{icon:"mdi-close",variant:"text",onClick:e[11]||(e[11]=u=>i.cloudUrlDialog=!1)})]),_:1}),i.selectedCloudItem?(c(),g(Le,{key:0},{default:n(()=>[e[38]||(e[38]=o(" 键名: ",-1)),m("code",null,w(i.selectedCloudItem.key),1)]),_:1})):y("",!0),t(j,null,{default:n(()=>[i.cloudUrlError?(c(),g($,{key:0,class:"mb-4",type:"error",variant:"tonal"},{default:n(()=>[o(w(i.cloudUrlError),1)]),_:1})):y("",!0),i.cloudUrlResult&&i.cloudUrlResult.success?(c(),g($,{key:1,class:"mb-4",type:"success",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[39]||(e[39]=[o("云端地址获取成功",-1)])]),_:1}),m("div",Li,[i.cloudUrlResult.migrated?(c(),x("div",zi,[t(v,{class:"mr-1",color:"success",icon:"mdi-database-arrow-up"}),e[40]||(e[40]=o(" 数据已从本地迁移到云端 ",-1))])):y("",!0),i.cloudUrlResult.configured?(c(),x("div",Oi,[t(v,{class:"mr-1",color:"info",icon:"mdi-cog"}),e[41]||(e[41]=o(" 云端配置已自动设置 ",-1))])):y("",!0)])]),_:1})):y("",!0),i.cloudUrlResult&&i.cloudUrlResult.url?(c(),g(R,{key:2,"model-value":i.cloudUrlResult.url,"append-inner-icon":"mdi-content-copy",class:"font-monospace",label:"云端访问地址",readonly:"",variant:"outlined","onClick:appendInner":l.copyCloudUrl},null,8,["model-value","onClick:appendInner"])):y("",!0),i.cloudUrlResult&&i.cloudUrlResult.url?(c(),g(it,{key:3,class:"mt-4"},{default:n(()=>[t(lt,null,{default:n(()=>[t(Et,null,{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-cog"}),e[42]||(e[42]=o(" 高级选项 ",-1))]),_:1}),t(ot,null,{default:n(()=>[t(Se,{modelValue:i.cloudUrlOptions.migrateFromLocal,"onUpdate:modelValue":e[12]||(e[12]=u=>i.cloudUrlOptions.migrateFromLocal=u),density:"compact",label:"从本地迁移数据到云端"},null,8,["modelValue"]),t(Se,{modelValue:i.cloudUrlOptions.autoConfigureCloud,"onUpdate:modelValue":e[13]||(e[13]=u=>i.cloudUrlOptions.autoConfigureCloud=u),density:"compact",label:"自动配置云端默认设置"},null,8,["modelValue"]),t(h,{loading:i.gettingCloudUrl,class:"mt-2",color:"primary",variant:"tonal",onClick:l.refreshCloudUrl},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-refresh"}),e[43]||(e[43]=o(" 重新获取 ",-1))]),_:1},8,["loading","onClick"])]),_:1})]),_:1})]),_:1})):y("",!0)]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[14]||(e[14]=u=>i.cloudUrlDialog=!1)},{default:n(()=>[...e[44]||(e[44]=[o(" 关闭 ",-1)])]),_:1}),i.cloudUrlResult&&i.cloudUrlResult.url?(c(),g(h,{key:0,color:"primary",variant:"tonal",onClick:l.openCloudUrl},{default:n(()=>[t(v,{class:"mr-1",icon:"mdi-open-in-new"}),e[45]||(e[45]=o(" 在新窗口打开 ",-1))]),_:1},8,["onClick"])):y("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:i.deleteDialog,"onUpdate:modelValue":e[17]||(e[17]=u=>i.deleteDialog=u),"max-width":"400px"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,{class:"d-flex align-center text-error"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-alert"}),e[46]||(e[46]=o(" 确认删除 ",-1))]),_:1}),t(j,null,{default:n(()=>{var u;return[e[48]||(e[48]=o(" 确定要删除键名为 ",-1)),m("code",null,w((u=i.itemToDelete)==null?void 0:u.key),1),e[49]||(e[49]=o(" 的数据吗? ",-1)),e[50]||(e[50]=m("br",null,null,-1)),e[51]||(e[51]=m("br",null,null,-1)),t($,{class:"mt-2",type:"warning",variant:"tonal"},{default:n(()=>[...e[47]||(e[47]=[o(" 此操作不可撤销,请谨慎操作! ",-1)])]),_:1})]}),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[16]||(e[16]=u=>i.deleteDialog=!1)},{default:n(()=>[...e[52]||(e[52]=[o(" 取消 ",-1)])]),_:1}),t(h,{loading:i.deletingData,color:"error",variant:"tonal",onClick:l.deleteItem},{default:n(()=>[...e[53]||(e[53]=[o(" 删除 ",-1)])]),_:1},8,["loading","onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(r,{modelValue:i.showMigrationDialog,"onUpdate:modelValue":e[18]||(e[18]=u=>i.showMigrationDialog=u)},null,8,["modelValue"])]),_:1},8,["loading"])}const Zt=q(Pi,[["render",Ri],["__scopeId","data-v-67879974"]]),Ki={name:"DataProviderSettingsCard",components:{SettingsCard:ee},data(){return{loading:!1,serverchecktime:{},confirmDialog:!1,confirmTitle:"",confirmMessage:"",confirmAction:null,machineId:null,migrateLoading:!1}},computed:{currentProvider(){return _("server.provider")},isKvProvider(){return this.currentProvider==="kv-local"||this.currentProvider==="kv-server"||this.currentProvider==="classworkscloud"}},async created(){this.machineId=_("device.uuid")},methods:{async checkServerConnection(){this.loading=!0,this.serverchecktime=new Date;const s=[];try{const e=_("server.siteKey"),a={Accept:"application/json"};if(e&&(a["x-site-key"]=e),Mn()){const d=await Pn(async p=>{const u=await Qe.get(`${p}/check`,{method:"GET",headers:a});if(u.data.status!=="success")throw new Error("服务器响应异常");return u},{onServerTried:({url:p,status:u,tried:b})=>{s.length=0,s.push(...b)}}),i=new Date-this.serverchecktime,l=s.find(p=>p.status==="success");let r=`服务器连接正常 延迟${i}ms`;if(s.length>1){const p=s.map((u,b)=>`${b+1}. ${u.url} (${u.status==="success"?"成功":"失败"})`).join(` `);r+=` 依次尝试的服务器: @@ -16,10 +16,10 @@ ${p}`}else l&&(r+=` 依次尝试的服务器: ${d} -所有服务器均连接失败`}this.$message.error("连接失败",a)}finally{this.loading=!1}},confirmClearLocalStorage(){this.confirmTitle="确认清除",this.confirmMessage="此操作将清除所有本地存储的数据,确定要继续吗?",this.confirmAction=this.clearLocalStorage,this.confirmDialog=!0},clearLocalStorage(){try{localStorage.clear(),this.$message.success("清除成功","本地存储数据已清除"),this.confirmDialog=!1}catch(s){this.$message.error("清除失败",s.message)}},confirmClearIndexedDB(){this.confirmTitle="确认清除",this.confirmMessage="此操作将清除所有IndexedDB中的数据,确定要继续吗?",this.confirmAction=this.clearIndexedDB,this.confirmDialog=!0},async clearIndexedDB(){try{await window.indexedDB.deleteDatabase("ClassworksDB"),this.$message.success("清除成功","数据库缓存已清除"),this.confirmDialog=!1,this.isKvProvider&&setTimeout(()=>{window.location.reload()},1500)}catch(s){this.$message.error("清除失败",s.message)}},async exportData(){try{const s="ClassworksDB",e={indexedDB:{}},a=await new Promise((u,y)=>{const T=window.indexedDB.open(s);T.onerror=()=>y(T.error),T.onsuccess=()=>u(T.result)}),d=Array.from(a.objectStoreNames);for(const u of d){const T=a.transaction(u,"readonly").objectStore(u),I=await new Promise((Q,H)=>{const q=T.getAll();q.onerror=()=>H(q.error),q.onsuccess=()=>Q(q.result)});e.indexedDB[u]=I}const i=new Blob([JSON.stringify(e,null,2)],{type:"application/json"}),l=URL.createObjectURL(i),r=document.createElement("a"),p=new Date().toISOString().split("T")[0];r.href=l,r.download=`homework-indexeddb-${p}.json`,r.click(),URL.revokeObjectURL(l),this.$message.success("导出成功","IndexedDB数据已导出")}catch(s){console.error("导出失败:",s),this.$message.error("导出失败",s.message||"无法导出数据库数据")}},async migrateData(){this.migrateLoading=!0,this.$router.push("/datamigration"),this.migrateLoading=!1},handleConfirm(){this.confirmAction&&this.confirmAction()}}};function Fi(s,e,a,d,i,l){const r=ee;return c(),g(r,{icon:"mdi-database-cog",title:"数据源设置"},{default:n(()=>[t(J,null,{default:n(()=>[l.currentProvider==="kv-server"||l.currentProvider==="classworkscloud"?(c(),g(A,{key:0},{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-lan-connect"})]),append:n(()=>[t(h,{loading:i.loading,variant:"tonal",onClick:l.checkServerConnection},{default:n(()=>[...e[3]||(e[3]=[o(" 测试连接 ",-1)])]),_:1},8,["loading","onClick"])]),default:n(()=>[t(L,null,{default:n(()=>[...e[2]||(e[2]=[o("检查服务器连接",-1)])]),_:1})]),_:1})):k("",!0),l.currentProvider==="kv-local"?(c(),x(ne,{key:1},[t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-database"})]),append:n(()=>[t(h,{color:"error",variant:"tonal",onClick:l.confirmClearIndexedDB},{default:n(()=>[...e[6]||(e[6]=[o(" 清除 ",-1)])]),_:1},8,["onClick"])]),default:n(()=>[t(L,null,{default:n(()=>[...e[4]||(e[4]=[o("清除数据库缓存",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[5]||(e[5]=[o("这将清除所有本地数据库中的数据 ",-1)])]),_:1})]),_:1}),t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-database-export"})]),append:n(()=>[t(h,{variant:"tonal",onClick:l.exportData},{default:n(()=>[...e[8]||(e[8]=[o(" 导出",-1)])]),_:1},8,["onClick"])]),default:n(()=>[t(L,null,{default:n(()=>[...e[7]||(e[7]=[o("导出数据库",-1)])]),_:1})]),_:1})],64)):k("",!0),t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-lan-connect"})]),append:n(()=>[t(h,{to:"/cachemanagement",variant:"tonal"},{default:n(()=>[...e[10]||(e[10]=[o(" 查看",-1)])]),_:1})]),default:n(()=>[t(L,null,{default:n(()=>[...e[9]||(e[9]=[o("查看本地缓存",-1)])]),_:1})]),_:1})]),_:1}),t(we,{modelValue:i.confirmDialog,"onUpdate:modelValue":e[1]||(e[1]=p=>i.confirmDialog=p),"max-width":"400"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[o(w(i.confirmTitle),1)]),_:1}),t(j,null,{default:n(()=>[o(w(i.confirmMessage),1)]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{color:"grey",variant:"text",onClick:e[0]||(e[0]=p=>i.confirmDialog=!1)},{default:n(()=>[...e[11]||(e[11]=[o("取消 ",-1)])]),_:1}),t(h,{color:"error",variant:"tonal",onClick:l.handleConfirm},{default:n(()=>[...e[12]||(e[12]=[o("确认 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})}const Xt=Y(Ki,[["render",Fi]]),Ji={name:"CloudNamespaceInfoCard",props:{visible:{type:Boolean,default:!0}},data(){return{namespaceInfo:{},loading:!1,hasNamespaceInfo:!1,showReinitDialog:!1,defaultAuthServer:_("server.authDomain")}},watch:{visible(s){s===!0&&this.fetchNamespaceInfo()}},mounted(){this.visible&&this.fetchNamespaceInfo()},methods:{formatDate(s){if(!s)return"未知";try{return new Date(s).toLocaleString("zh-CN")}catch{return s}},async fetchNamespaceInfo(){this.loading=!0;try{const s=await Un.loadNamespaceInfo();this.namespaceInfo=s,this.hasNamespaceInfo=!0,this.loading=!1}catch(s){console.error("获取命名空间信息失败:",s),this.hasNamespaceInfo=!1,this.namespaceInfo={}}finally{this.loading=!1}},async reloadInfo(){await this.fetchNamespaceInfo()},getBindAccountUrl(){var e,a;const s=(a=(e=this.namespaceInfo)==null?void 0:e.device)==null?void 0:a.uuid;return s?`${this.defaultAuthServer}?uuid=${encodeURIComponent(s)}&tolinktoaccount=true`:this.defaultAuthServer},confirmReinitialize(){xe("server.kvToken",""),xe("device.uuid",""),this.showReinitDialog=!1,this.$router.push("/")}}},Qi={key:0,class:"mb-4"},Hi={key:1,class:"d-flex align-center mb-4"},Gi={class:"d-flex flex-column gap-1"},Wi={class:"d-flex align-center"},Yi={class:"d-flex align-center"},qi={key:0,class:"d-flex align-center"},Zi={class:"text-truncate"},Xi={class:"d-flex align-center"},$i={key:1,class:"d-flex align-center"};function el(s,e,a,d,i,l){return c(),g(E,{disabled:!i.hasNamespaceInfo,loading:i.loading,class:"my-4"},{loader:n(()=>[i.loading?(c(),g(He,{key:0,color:"primary",indeterminate:""})):k("",!0)]),default:n(()=>[t(K,null,{default:n(()=>[t(v,{class:"me-2"},{default:n(()=>[...e[3]||(e[3]=[o(" mdi-cloud-check ",-1)])]),_:1}),e[4]||(e[4]=o(" 设备信息 ",-1))]),_:1}),i.hasNamespaceInfo?(c(),g(j,{key:0},{default:n(()=>[i.namespaceInfo.hasAccount===!1?(c(),x("div",Qi,[t($,{border:"",type:"warning",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[5]||(e[5]=[o("设备未绑定账号",-1)])]),_:1}),e[7]||(e[7]=m("div",null,"当前设备尚未绑定账号,部分功能可能受限。请前往绑定账号以获得完整体验。",-1)),t(h,{href:l.getBindAccountUrl(),"append-icon":"mdi-open-in-new",class:"mt-3",target:"_blank",variant:"outlined"},{default:n(()=>[...e[6]||(e[6]=[o(" 前往绑定账号 ",-1)])]),_:1},8,["href"])]),_:1})])):k("",!0),i.namespaceInfo.hasAccount&&i.namespaceInfo.account?(c(),x("div",Hi,[t(E,{"prepend-avatar":i.namespaceInfo.account.avatarUrl,subtitle:"此设备由贵校管理 管理员账号 ID: "+i.namespaceInfo.account.id,title:i.namespaceInfo.account.name||"未命名用户",border:"",class:"w-100",hover:"",variant:"tonal"},{default:n(()=>[t(j,null,{default:n(()=>[...e[8]||(e[8]=[o(" 此设备由贵校或贵单位管理,该管理员系此空间所有者,如有疑问请咨询他,对于恶意绑定、滥用行为请反馈。 ",-1)])]),_:1})]),_:1},8,["prepend-avatar","subtitle","title"])])):k("",!0),i.namespaceInfo.device?(c(),g(E,{key:2,border:"",class:"mb-4",hover:"",variant:"tonal"},{default:n(()=>[t(K,{class:"pb-1"},{default:n(()=>[...e[9]||(e[9]=[o(" 设备信息 ",-1)])]),_:1}),t(j,null,{default:n(()=>[m("div",Gi,[m("div",Wi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[10]||(e[10]=[o(" mdi-tag ",-1)])]),_:1}),e[11]||(e[11]=m("span",{class:"font-weight-medium me-2"},"设备名称:",-1)),m("span",null,w(i.namespaceInfo.device.name||"未命名设备"),1)]),m("div",Yi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[12]||(e[12]=[o(" mdi-identifier ",-1)])]),_:1}),e[13]||(e[13]=m("span",{class:"font-weight-medium me-2"},"设备 ID:",-1)),m("span",null,w(i.namespaceInfo.device.id),1)]),i.namespaceInfo.hasAccount===!1&&i.namespaceInfo.device.uuid?(c(),x("div",qi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[14]||(e[14]=[o(" mdi-uuid ",-1)])]),_:1}),e[15]||(e[15]=m("span",{class:"font-weight-medium me-2"},"UUID:",-1)),m("span",Zi,w(i.namespaceInfo.device.uuid),1)])):k("",!0),m("div",Xi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[16]||(e[16]=[o(" mdi-calendar ",-1)])]),_:1}),e[17]||(e[17]=m("span",{class:"font-weight-medium me-2"},"创建时间:",-1)),m("span",null,w(l.formatDate(i.namespaceInfo.device.createdAt)),1)]),i.namespaceInfo.device.updatedAt?(c(),x("div",$i,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[18]||(e[18]=[o(" mdi-calendar-clock ",-1)])]),_:1}),e[19]||(e[19]=m("span",{class:"font-weight-medium me-2"},"更新时间:",-1)),m("span",null,w(l.formatDate(i.namespaceInfo.device.updatedAt)),1)])):k("",!0)])]),_:1})]),_:1})):k("",!0),t(E,{border:"",hover:"",subtitle:"文档形键值数据库",title:"Classworks KV"},{default:n(()=>[t(j,null,{default:n(()=>[...e[20]||(e[20]=[o(" Classworks KV 是厚浪云推出的文档形键值数据库,其是一个开放的云应用平台,为各种应用提供存储服务。此设备正在使用其服务,如果您希望管理设备信息,请前往 Classworks KV 的网站,如果您在服务推出前就在使用 Classworks,您的数据已被自动迁移。 ",-1),m("br",null,null,-1),m("br",null,null,-1),o(" Classworks KV 的全域管理员是 ",-1),m("a",{href:"https://wuyuan.dev",target:"_blank"}," 孙悟元 ",-1)])]),_:1}),t(re,null,{default:n(()=>[t(h,{href:i.defaultAuthServer,"append-icon":"mdi-open-in-new",class:"text-none",target:"_blank"},{default:n(()=>[...e[21]||(e[21]=[o(" 前往 Classworks KV ",-1)])]),_:1},8,["href"])]),_:1})]),_:1})]),_:1})):(c(),g(j,{key:1},{default:n(()=>[t($,{type:"info",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[22]||(e[22]=[o("未获取到设备信息",-1)])]),_:1}),e[23]||(e[23]=m("p",null,"您尚未完成云端存储授权或连接失败,请点击下方按钮进行初始化。",-1))]),_:1})]),_:1})),t(re,null,{default:n(()=>[t(te),t(h,{loading:i.loading,color:"primary",variant:"outlined",onClick:l.reloadInfo},{default:n(()=>[...e[24]||(e[24]=[o(" 刷新设备信息 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{color:"error",variant:"outlined",onClick:e[0]||(e[0]=r=>i.showReinitDialog=!0)},{default:n(()=>[...e[25]||(e[25]=[o(" 重新初始化云端存储 ",-1)])]),_:1})]),_:1}),t(we,{modelValue:i.showReinitDialog,"onUpdate:modelValue":e[2]||(e[2]=r=>i.showReinitDialog=r),"max-width":"500"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[...e[26]||(e[26]=[o("确认重新初始化",-1)])]),_:1}),t(j,null,{default:n(()=>[t($,{class:"mb-3",type:"warning",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[27]||(e[27]=[o("警告",-1)])]),_:1}),e[28]||(e[28]=o(" 此操作将清除当前的云端存储配置(包括 Token),您需要重新进行授权。 ",-1))]),_:1}),e[29]||(e[29]=m("p",null,"您确定要重新初始化云端存储吗?",-1))]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[1]||(e[1]=r=>i.showReinitDialog=!1)},{default:n(()=>[...e[30]||(e[30]=[o(" 取消 ",-1)])]),_:1}),t(h,{color:"error",onClick:l.confirmReinitialize},{default:n(()=>[...e[31]||(e[31]=[o(" 确认 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["disabled","loading"])}const $t=Y(Ji,[["render",el]]),tl={name:"ServerSettingsCard",components:{SettingsCard:ee,CloudNamespaceInfoCard:$t},props:{loading:Boolean},data(){return{unwatch:null,serverSettings:{provider:_("server.provider"),domain:_("server.domain"),classNumber:_("server.classNumber"),kvToken:_("server.kvToken")},settingsChangeTimeout:null}},computed:{currentProvider(){return this.serverSettings.provider},isKvProvider(){return this.currentProvider==="kv-local"||this.currentProvider==="kv-server"},isClassworksCloud(){return this.currentProvider==="classworkscloud"},useServer(){return this.currentProvider==="server"||this.currentProvider==="kv-server"||this.currentProvider==="classworkscloud"}},watch:{serverSettings:{handler(){this.settingsChangeTimeout&&clearTimeout(this.settingsChangeTimeout),this.settingsChangeTimeout=setTimeout(()=>{this.saveAllSettings()},100)},deep:!0}},mounted(){this.loadAllSettings(),this.unwatch=nt(()=>{this.loadAllSettings(),this.$forceUpdate&&this.$forceUpdate()})},beforeUnmount(){this.unwatch&&this.unwatch()},methods:{loadAllSettings(){this.serverSettings={provider:_("server.provider"),domain:_("server.domain"),classNumber:_("server.classNumber"),kvToken:_("server.kvToken")}},saveAllSettings(){Object.entries(this.serverSettings).forEach(([s,e])=>{const a=`server.${s}`,d=_(a);e!==d&&(xe(a,e)?console.log(`设置已更新: ${a} = ${e}`):(console.error(`设置失败: ${a}`),this.serverSettings[s]=d))})}}},nl={key:0},sl={key:2},il={key:3},ll={key:4};function ol(s,e,a,d,i,l){const r=$t,p=ee;return c(),g(p,{loading:a.loading,icon:"mdi-database",title:"数据源设置"},{default:n(()=>[t(jt,null,{default:n(()=>[t(Je,{modelValue:i.serverSettings.provider,"onUpdate:modelValue":e[0]||(e[0]=u=>i.serverSettings.provider=u),items:[{title:"Classworks云端存储",value:"classworkscloud"},{title:"KV本地存储",value:"kv-local"},{title:"KV远程服务器",value:"kv-server"}],class:"mb-3",density:"comfortable","item-title":"title","item-value":"value",label:"数据提供者","prepend-icon":"mdi-database",variant:"outlined"},null,8,["modelValue"]),l.isKvProvider?(c(),g($,{key:0,class:"my-2",type:"info",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[5]||(e[5]=[o("KV 存储系统",-1)])]),_:1}),e[7]||(e[7]=m("p",null,"KV存储系统使用本机唯一标识符(UUID)来区分不同设备的数据。",-1)),l.currentProvider==="kv-server"?(c(),x("p",nl,[...e[6]||(e[6]=[o(" 服务器端点格式: ",-1),m("code",null,"http(s)://服务器域名/",-1),m("br",null,null,-1),o(" 在服务器域名处仅填写基础URL,不需要任何路径。 ",-1)])])):k("",!0)]),_:1})):k("",!0),l.isClassworksCloud?(c(),g($,{key:1,class:"my-2",color:"success",type:"info",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[8]||(e[8]=[o("Classworks云端存储",-1)])]),_:1}),e[9]||(e[9]=m("p",null,"Classworks云端存储是官方提供的存储解决方案,自动配置了最优的访问设置。",-1)),e[10]||(e[10]=m("p",null,"使用此选项时,服务器域名和网站令牌将自动配置,无需手动设置。",-1))]),_:1})):k("",!0),t(M,{class:"my-2"}),l.isClassworksCloud?(c(),x("div",sl,[t(R,{modelValue:i.serverSettings.kvToken,"onUpdate:modelValue":e[1]||(e[1]=u=>i.serverSettings.kvToken=u),class:"mb-2",density:"comfortable",hint:"令牌用于云端存储授权",label:"KV 授权令牌","persistent-hint":"","prepend-icon":"mdi-shield-key",variant:"outlined"},null,8,["modelValue"]),t(r,{visible:l.isClassworksCloud,class:"mt-4"},null,8,["visible"])])):l.currentProvider==="kv-server"?(c(),x("div",il,[t(R,{modelValue:i.serverSettings.domain,"onUpdate:modelValue":e[2]||(e[2]=u=>i.serverSettings.domain=u),class:"mb-2",density:"comfortable",hint:"例如: https://example.com (不需要路径)",label:"服务器域名","persistent-hint":"","prepend-icon":"mdi-web",variant:"outlined"},null,8,["modelValue"]),t(R,{modelValue:i.serverSettings.kvToken,"onUpdate:modelValue":e[3]||(e[3]=u=>i.serverSettings.kvToken=u),class:"mb-2",density:"comfortable",hint:"令牌用于服务器验证",label:"KV 授权令牌","persistent-hint":"","prepend-icon":"mdi-shield-key",variant:"outlined"},null,8,["modelValue"])])):l.currentProvider==="kv-local"?(c(),x("div",ll,[t(R,{modelValue:i.serverSettings.classNumber,"onUpdate:modelValue":e[4]||(e[4]=u=>i.serverSettings.classNumber=u),class:"mb-2",density:"comfortable",hint:"例如: 高三八班",label:"班级编号","persistent-hint":"","prepend-icon":"mdi-account-group",variant:"outlined"},null,8,["modelValue"])])):k("",!0)]),_:1})]),_:1},8,["loading"])}const en=Y(tl,[["render",ol]]),al="classworks",rl="module",ul="0.0.0",dl={dev:"vite --host",build:"vite build",preview:"vite preview",lint:"eslint . --fix",prebuild:"node scripts/generate-sound-list.js"},cl={"@fingerprintjs/fingerprintjs":"^5.0.1","@mdi/font":"7.4.47","@microsoft/clarity":"^1.0.2","@sentry/vue":"^10.36.0","@vueuse/core":"^14.1.0",axios:"^1.13.2",idb:"^8.0.3","js-base64":"^3.7.8","js-yaml":"^4.1.1","lucide-vue-next":"^0.555.0",marked:"^17.0.1","pinyin-pro":"^3.27.0","ratelimit-header-parser":"^0.1.0","roboto-fontface":"*","socket.io-client":"^4.8.1","typewriter-effect":"^2.22.0",uuid:"^13.0.0",vue:"^3.5.25","vue-sonner":"^2.0.9",vuetify:"^3.11.0"},ml={"@eslint/js":"^9.39.1","@vite-pwa/assets-generator":"^1.0.2","@vitejs/plugin-vue":"^6.0.2",eslint:"^9.39.1","eslint-plugin-import":"^2.32.0","eslint-plugin-n":"^17.23.1","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^7.2.1","eslint-plugin-vue":"^10.6.2",pinia:"^3.0.4",sass:"1.94.2","sass-embedded":"^1.93.3","unplugin-auto-import":"^20.3.0","unplugin-fonts":"^1.4.0","unplugin-vue-components":"^30.0.0","unplugin-vue-router":"^0.18.0",vite:"^5.4.11","vite-plugin-pwa":"^1.2.0","vite-plugin-vue-devtools":"^7.6.8","vite-plugin-vue-layouts":"^0.11.0","vite-plugin-vuetify":"^2.1.2","vue-router":"^4.6.3"},Pe={name:al,private:!0,type:rl,version:ul,scripts:dl,dependencies:cl,devDependencies:ml},fl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAa9SURBVHic7dY9jlxVFIXRY8SsCEDyMCAjgRFBYokARoGQQII5EDIJYhNgyb9td9euqvfu3WuN4CTf1nn2958/vRyg0mdHHwAcxwBAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFDAAUMwBQzABAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFDAAUMwBQzABAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFDAAUMwBQzABAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFPj/6AI7z2+9/zW9//HX0Gct6/uUX8/yrL44+I+IDKCX+zA7xzxiASuLP7BL/jAGoI/7MTvHPGIAq4s/sFv+MAagh/syO8c8YgAriz+wa/4wB2J74MzvHP2MAtib+zO7xzxiAbYk/0xD/jAHYkvgzLfHPGIDtiD/TFP+MAdiK+DNt8c8YgG2IP9MY/4wB2IL4M63xzxiA5Yk/0xz/jAFYmvgz7fHPGIBliT8j/v8ZgAWJPyP+1wzAYsSfEf/bDMBCxJ8R//sMwCLEnxH/hxmABYg/I/6HGYCTE39G/B9nAE5M/Bnxf5oBOCnxZ8T/OAbghMSfEf/jGYCTEX9G/E9jAE5E/BnxP50BOAnxZ8R/GQNwAuLPiP9yBuBg4s+IP2MADiT+jPhzBuAg4s+I/zoMwAHEnxH/9RiAOxN/RvzXZQDuSPwZ8V+fAbgT8WfEfxsG4A7EnxH/7RiAGxN/Rvy3ZQBuSPwZ8d+eAbgR8WfEfx8G4AbEnxH//RiAKxN/Rvz3ZQCuSPwZ8d+fAbgS8WfEfwwDcAXiz4j/OAYgJP6M+I9lAALiz4j/eAbgQuLPiP8cDMAFxJ8R/3kYgCcSf0b852IAnkD8GfGfjwF4JPFnxH9OBuARxJ8R/3kZgE8Qf0b852YAPkL8GfGfnwF4gPgz4l+DAfgA8WfEvw4D8A7xZ8S/FgPwBvFnxL8eA/CK+DPiX5MBGPGnxL+u+gEQf0b8a6seAPFnxL++2gEQf0b8e6gcAPFnxL+PugEQf0b8e6kaAPFnxL+fmgEQf0b8e6oYAPFnxL+v7QdA/Bnx723rARB/Rvz723YAxJ8Rf4ctB0D8GfH32G4AxJ8Rf5etBkD8GfH32WYAxJ8Rf6ctBkD8GfH3Wn4AxJ8Rf7dn//7z68ujj+AYP774ZX548fPRZyzr+2+/me++/froMyLLfwBcRvyZHeKfMQCVxJ/ZJf4ZA1BH/Jmd4p8xAFXEn9kt/hkDUEP8mR3jnzEAFcSf2TX+GQOwPfFndo5/xgBsTfyZ3eOfMQDbEn+mIf4ZA7Al8Wda4p8xANsRf6Yp/hkDsBXxZ9rinzEA2xB/pjH+GQOwBfFnWuOfMQDLE3+mOf4ZA7A08Wfa458xAMsSf0b8/zMACxJ/RvyvGYDFiD8j/rcZgIWIPyP+9xmARYg/I/4PMwALEH9G/A8zACcn/oz4P84AnJj4M+L/NANwUuLPiP9xDMAJiT8j/sczACcj/oz4n8YAnIj4M+J/OgNwEuLPiP8yBuAExJ8R/+UMwMHEnxF/xgAcSPwZ8ecMwEHEnxH/dRiAA4g/I/7rMQB3Jv6M+K/LANyR+DPivz4DcCfiz4j/NgzAHYg/I/7bMQA3Jv6M+G/LANyQ+DPivz0DcCPiz4j/PgzADYg/I/77MQBXJv6M+O/LAFyR+DPivz8DcCXiz4j/GAbgCsSfEf9xDEBI/BnxH8sABMSfEf/xDMCFxJ8R/zkYgAuIPyP+8zAATyT+jPjPxQA8gfgz4j8fA/BI4s+I/5wMwCOIPyP+8zIAnyD+jPjPzQB8hPgz4j8/A/AA8WfEvwYD8AHiz4h/HQbgHeLPiH8tBuAN4s+Ifz0G4BXxZ8S/JgMw4k+Jf131AyD+jPjXVj0A4s+If321AyD+jPj3UDkA4s+Ifx91AyD+jPj3UjUA4s+Ifz81AyD+jPj3VDEA4s+If1/bD4D4M+Lf29YDIP6M+Pe37QCIPyP+DlsOgPgz4u+x3QCIPyP+LlsNgPgz4u+zzQCIPyP+TlsMgPgz4u+1/ACIPyP+bs/+/efXl0cfARxj+Q8AuJwBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAihkAKGYAoJgBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAihkAKGYAoJgBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAihkAKGYAoJgBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAiv0Hs2PMhrt8KlMAAAAASUVORK5CYII=",pl={name:"AboutCard",setup(){const s=ge([]),e=ge(!1),a=ge(!1),d=ge(""),i=ge(!1),l=ge(!1),r="964979747",p="https://qm.qq.com/q/T6qImKJjGi",u=Vn(),y=()=>{try{const b={...Pe.dependencies||{},...Pe.devDependencies||{}},D=Object.entries(b).map(([P,Z])=>({name:P,version:Z.replace(/[\^~]/g,""),description:T(P)}));s.value=D}catch(b){console.error("加载依赖信息失败:",b),s.value=[]}},T=b=>({vue:"渐进式 JavaScript 框架",vuetify:"材料设计组件框架",axios:"Promise 基础的 HTTP 客户端",pinia:"Vue 状态管理库","vue-router":"Vue.js 官方路由管理器","@vitejs/plugin-vue":"Vite 的 Vue 插件"})[b]||"",I=()=>{u.push("/debug")},Q=async()=>{i.value=!0;try{const b=await An();d.value=b||""}catch(b){console.error("获取访客ID失败",b)}finally{i.value=!1}},H=()=>Q(),q=async()=>{a.value=!0,d.value||await Q()},fe=async()=>{try{await navigator.clipboard.writeText(ce.value),l.value=!0,setTimeout(()=>l.value=!1,1800)}catch(b){console.error("复制失败",b)}},pe=Me(()=>{var ye,G;const b=navigator||{},D=typeof Intl<"u"&&Intl.DateTimeFormat?Intl.DateTimeFormat().resolvedOptions():{},P=D&&D.timeZone?D.timeZone:"",Z=((G=(ye=u.currentRoute)==null?void 0:ye.value)==null?void 0:G.fullPath)||location.pathname;return[`App 版本: v${Pe==null?void 0:Pe.version}`,`URL: ${location.href}`,`路由: ${Z}`,`UserAgent: ${b.userAgent||""}`,`语言: ${b.language||""}`,`时区: ${P}`,`平台: ${b.platform||""}`,`在线: ${String(b.onLine)}`,`屏幕: ${(screen==null?void 0:screen.width)||"-"}x${(screen==null?void 0:screen.height)||"-"}`,`视口: ${window.innerWidth||"-"}x${window.innerHeight||"-"}`].join(` -`)}),ce=Me(()=>`调试ID: ${d.value||"获取失败"} +所有服务器均连接失败`}this.$message.error("连接失败",a)}finally{this.loading=!1}},confirmClearLocalStorage(){this.confirmTitle="确认清除",this.confirmMessage="此操作将清除所有本地存储的数据,确定要继续吗?",this.confirmAction=this.clearLocalStorage,this.confirmDialog=!0},clearLocalStorage(){try{localStorage.clear(),this.$message.success("清除成功","本地存储数据已清除"),this.confirmDialog=!1}catch(s){this.$message.error("清除失败",s.message)}},confirmClearIndexedDB(){this.confirmTitle="确认清除",this.confirmMessage="此操作将清除所有IndexedDB中的数据,确定要继续吗?",this.confirmAction=this.clearIndexedDB,this.confirmDialog=!0},async clearIndexedDB(){try{await window.indexedDB.deleteDatabase("ClassworksDB"),this.$message.success("清除成功","数据库缓存已清除"),this.confirmDialog=!1,this.isKvProvider&&setTimeout(()=>{window.location.reload()},1500)}catch(s){this.$message.error("清除失败",s.message)}},async exportData(){try{const s="ClassworksDB",e={indexedDB:{}},a=await new Promise((u,b)=>{const T=window.indexedDB.open(s);T.onerror=()=>b(T.error),T.onsuccess=()=>u(T.result)}),d=Array.from(a.objectStoreNames);for(const u of d){const T=a.transaction(u,"readonly").objectStore(u),I=await new Promise((H,G)=>{const Z=T.getAll();Z.onerror=()=>G(Z.error),Z.onsuccess=()=>H(Z.result)});e.indexedDB[u]=I}const i=new Blob([JSON.stringify(e,null,2)],{type:"application/json"}),l=URL.createObjectURL(i),r=document.createElement("a"),p=new Date().toISOString().split("T")[0];r.href=l,r.download=`homework-indexeddb-${p}.json`,r.click(),URL.revokeObjectURL(l),this.$message.success("导出成功","IndexedDB数据已导出")}catch(s){console.error("导出失败:",s),this.$message.error("导出失败",s.message||"无法导出数据库数据")}},async migrateData(){this.migrateLoading=!0,this.$router.push("/datamigration"),this.migrateLoading=!1},handleConfirm(){this.confirmAction&&this.confirmAction()}}};function Fi(s,e,a,d,i,l){const r=ee;return c(),g(r,{icon:"mdi-database-cog",title:"数据源设置"},{default:n(()=>[t(J,null,{default:n(()=>[l.currentProvider==="kv-server"||l.currentProvider==="classworkscloud"?(c(),g(A,{key:0},{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-lan-connect"})]),append:n(()=>[t(h,{loading:i.loading,variant:"tonal",onClick:l.checkServerConnection},{default:n(()=>[...e[3]||(e[3]=[o(" 测试连接 ",-1)])]),_:1},8,["loading","onClick"])]),default:n(()=>[t(z,null,{default:n(()=>[...e[2]||(e[2]=[o("检查服务器连接",-1)])]),_:1})]),_:1})):y("",!0),l.currentProvider==="kv-local"?(c(),x(ne,{key:1},[t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-database"})]),append:n(()=>[t(h,{color:"error",variant:"tonal",onClick:l.confirmClearIndexedDB},{default:n(()=>[...e[6]||(e[6]=[o(" 清除 ",-1)])]),_:1},8,["onClick"])]),default:n(()=>[t(z,null,{default:n(()=>[...e[4]||(e[4]=[o("清除数据库缓存",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[5]||(e[5]=[o("这将清除所有本地数据库中的数据 ",-1)])]),_:1})]),_:1}),t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-database-export"})]),append:n(()=>[t(h,{variant:"tonal",onClick:l.exportData},{default:n(()=>[...e[8]||(e[8]=[o(" 导出",-1)])]),_:1},8,["onClick"])]),default:n(()=>[t(z,null,{default:n(()=>[...e[7]||(e[7]=[o("导出数据库",-1)])]),_:1})]),_:1})],64)):y("",!0),t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-lan-connect"})]),append:n(()=>[t(h,{to:"/cachemanagement",variant:"tonal"},{default:n(()=>[...e[10]||(e[10]=[o(" 查看",-1)])]),_:1})]),default:n(()=>[t(z,null,{default:n(()=>[...e[9]||(e[9]=[o("查看本地缓存",-1)])]),_:1})]),_:1})]),_:1}),t(we,{modelValue:i.confirmDialog,"onUpdate:modelValue":e[1]||(e[1]=p=>i.confirmDialog=p),"max-width":"400"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[o(w(i.confirmTitle),1)]),_:1}),t(j,null,{default:n(()=>[o(w(i.confirmMessage),1)]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{color:"grey",variant:"text",onClick:e[0]||(e[0]=p=>i.confirmDialog=!1)},{default:n(()=>[...e[11]||(e[11]=[o("取消 ",-1)])]),_:1}),t(h,{color:"error",variant:"tonal",onClick:l.handleConfirm},{default:n(()=>[...e[12]||(e[12]=[o("确认 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1})}const Xt=q(Ki,[["render",Fi]]),Ji={name:"CloudNamespaceInfoCard",props:{visible:{type:Boolean,default:!0}},data(){return{namespaceInfo:{},loading:!1,hasNamespaceInfo:!1,showReinitDialog:!1,defaultAuthServer:_("server.authDomain")}},watch:{visible(s){s===!0&&this.fetchNamespaceInfo()}},mounted(){this.visible&&this.fetchNamespaceInfo()},methods:{formatDate(s){if(!s)return"未知";try{return new Date(s).toLocaleString("zh-CN")}catch{return s}},async fetchNamespaceInfo(){this.loading=!0;try{const s=await Un.loadNamespaceInfo();this.namespaceInfo=s,this.hasNamespaceInfo=!0,this.loading=!1}catch(s){console.error("获取命名空间信息失败:",s),this.hasNamespaceInfo=!1,this.namespaceInfo={}}finally{this.loading=!1}},async reloadInfo(){await this.fetchNamespaceInfo()},getBindAccountUrl(){var e,a;const s=(a=(e=this.namespaceInfo)==null?void 0:e.device)==null?void 0:a.uuid;return s?`${this.defaultAuthServer}?uuid=${encodeURIComponent(s)}&tolinktoaccount=true`:this.defaultAuthServer},confirmReinitialize(){ke("server.kvToken",""),ke("device.uuid",""),this.showReinitDialog=!1,this.$router.push("/")}}},Qi={key:0,class:"mb-4"},Hi={key:1,class:"d-flex align-center mb-4"},Gi={class:"d-flex flex-column gap-1"},Wi={class:"d-flex align-center"},Yi={class:"d-flex align-center"},qi={key:0,class:"d-flex align-center"},Zi={class:"text-truncate"},Xi={class:"d-flex align-center"},$i={key:1,class:"d-flex align-center"};function el(s,e,a,d,i,l){return c(),g(E,{disabled:!i.hasNamespaceInfo,loading:i.loading,class:"my-4"},{loader:n(()=>[i.loading?(c(),g(He,{key:0,color:"primary",indeterminate:""})):y("",!0)]),default:n(()=>[t(K,null,{default:n(()=>[t(v,{class:"me-2"},{default:n(()=>[...e[3]||(e[3]=[o(" mdi-cloud-check ",-1)])]),_:1}),e[4]||(e[4]=o(" 设备信息 ",-1))]),_:1}),i.hasNamespaceInfo?(c(),g(j,{key:0},{default:n(()=>[i.namespaceInfo.hasAccount===!1?(c(),x("div",Qi,[t($,{border:"",type:"warning",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[5]||(e[5]=[o("设备未绑定账号",-1)])]),_:1}),e[7]||(e[7]=m("div",null,"当前设备尚未绑定账号,部分功能可能受限。请前往绑定账号以获得完整体验。",-1)),t(h,{href:l.getBindAccountUrl(),"append-icon":"mdi-open-in-new",class:"mt-3",target:"_blank",variant:"outlined"},{default:n(()=>[...e[6]||(e[6]=[o(" 前往绑定账号 ",-1)])]),_:1},8,["href"])]),_:1})])):y("",!0),i.namespaceInfo.hasAccount&&i.namespaceInfo.account?(c(),x("div",Hi,[t(E,{"prepend-avatar":i.namespaceInfo.account.avatarUrl,subtitle:"此设备由贵校管理 管理员账号 ID: "+i.namespaceInfo.account.id,title:i.namespaceInfo.account.name||"未命名用户",border:"",class:"w-100",hover:"",variant:"tonal"},{default:n(()=>[t(j,null,{default:n(()=>[...e[8]||(e[8]=[o(" 此设备由贵校或贵单位管理,该管理员系此空间所有者,如有疑问请咨询他,对于恶意绑定、滥用行为请反馈。 ",-1)])]),_:1})]),_:1},8,["prepend-avatar","subtitle","title"])])):y("",!0),i.namespaceInfo.device?(c(),g(E,{key:2,border:"",class:"mb-4",hover:"",variant:"tonal"},{default:n(()=>[t(K,{class:"pb-1"},{default:n(()=>[...e[9]||(e[9]=[o(" 设备信息 ",-1)])]),_:1}),t(j,null,{default:n(()=>[m("div",Gi,[m("div",Wi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[10]||(e[10]=[o(" mdi-tag ",-1)])]),_:1}),e[11]||(e[11]=m("span",{class:"font-weight-medium me-2"},"设备名称:",-1)),m("span",null,w(i.namespaceInfo.device.name||"未命名设备"),1)]),m("div",Yi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[12]||(e[12]=[o(" mdi-identifier ",-1)])]),_:1}),e[13]||(e[13]=m("span",{class:"font-weight-medium me-2"},"设备 ID:",-1)),m("span",null,w(i.namespaceInfo.device.id),1)]),i.namespaceInfo.hasAccount===!1&&i.namespaceInfo.device.uuid?(c(),x("div",qi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[14]||(e[14]=[o(" mdi-uuid ",-1)])]),_:1}),e[15]||(e[15]=m("span",{class:"font-weight-medium me-2"},"UUID:",-1)),m("span",Zi,w(i.namespaceInfo.device.uuid),1)])):y("",!0),m("div",Xi,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[16]||(e[16]=[o(" mdi-calendar ",-1)])]),_:1}),e[17]||(e[17]=m("span",{class:"font-weight-medium me-2"},"创建时间:",-1)),m("span",null,w(l.formatDate(i.namespaceInfo.device.createdAt)),1)]),i.namespaceInfo.device.updatedAt?(c(),x("div",$i,[t(v,{class:"me-2",size:"small"},{default:n(()=>[...e[18]||(e[18]=[o(" mdi-calendar-clock ",-1)])]),_:1}),e[19]||(e[19]=m("span",{class:"font-weight-medium me-2"},"更新时间:",-1)),m("span",null,w(l.formatDate(i.namespaceInfo.device.updatedAt)),1)])):y("",!0)])]),_:1})]),_:1})):y("",!0),t(E,{border:"",hover:"",subtitle:"文档形键值数据库",title:"Classworks KV"},{default:n(()=>[t(j,null,{default:n(()=>[...e[20]||(e[20]=[o(" Classworks KV 是厚浪云推出的文档形键值数据库,其是一个开放的云应用平台,为各种应用提供存储服务。此设备正在使用其服务,如果您希望管理设备信息,请前往 Classworks KV 的网站,如果您在服务推出前就在使用 Classworks,您的数据已被自动迁移。 ",-1),m("br",null,null,-1),m("br",null,null,-1),o(" Classworks KV 的全域管理员是 ",-1),m("a",{href:"https://wuyuan.dev",target:"_blank"}," 孙悟元 ",-1)])]),_:1}),t(ue,null,{default:n(()=>[t(h,{href:i.defaultAuthServer,"append-icon":"mdi-open-in-new",class:"text-none",target:"_blank"},{default:n(()=>[...e[21]||(e[21]=[o(" 前往 Classworks KV ",-1)])]),_:1},8,["href"])]),_:1})]),_:1})]),_:1})):(c(),g(j,{key:1},{default:n(()=>[t($,{type:"info",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[22]||(e[22]=[o("未获取到设备信息",-1)])]),_:1}),e[23]||(e[23]=m("p",null,"您尚未完成云端存储授权或连接失败,请点击下方按钮进行初始化。",-1))]),_:1})]),_:1})),t(ue,null,{default:n(()=>[t(te),t(h,{loading:i.loading,color:"primary",variant:"outlined",onClick:l.reloadInfo},{default:n(()=>[...e[24]||(e[24]=[o(" 刷新设备信息 ",-1)])]),_:1},8,["loading","onClick"]),t(h,{color:"error",variant:"outlined",onClick:e[0]||(e[0]=r=>i.showReinitDialog=!0)},{default:n(()=>[...e[25]||(e[25]=[o(" 重新初始化云端存储 ",-1)])]),_:1})]),_:1}),t(we,{modelValue:i.showReinitDialog,"onUpdate:modelValue":e[2]||(e[2]=r=>i.showReinitDialog=r),"max-width":"500"},{default:n(()=>[t(E,null,{default:n(()=>[t(K,null,{default:n(()=>[...e[26]||(e[26]=[o("确认重新初始化",-1)])]),_:1}),t(j,null,{default:n(()=>[t($,{class:"mb-3",type:"warning",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[27]||(e[27]=[o("警告",-1)])]),_:1}),e[28]||(e[28]=o(" 此操作将清除当前的云端存储配置(包括 Token),您需要重新进行授权。 ",-1))]),_:1}),e[29]||(e[29]=m("p",null,"您确定要重新初始化云端存储吗?",-1))]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[1]||(e[1]=r=>i.showReinitDialog=!1)},{default:n(()=>[...e[30]||(e[30]=[o(" 取消 ",-1)])]),_:1}),t(h,{color:"error",onClick:l.confirmReinitialize},{default:n(()=>[...e[31]||(e[31]=[o(" 确认 ",-1)])]),_:1},8,["onClick"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]),_:1},8,["disabled","loading"])}const $t=q(Ji,[["render",el]]),tl={name:"ServerSettingsCard",components:{SettingsCard:ee,CloudNamespaceInfoCard:$t},props:{loading:Boolean},data(){return{unwatch:null,serverSettings:{provider:_("server.provider"),domain:_("server.domain"),classNumber:_("server.classNumber"),kvToken:_("server.kvToken")},settingsChangeTimeout:null}},computed:{currentProvider(){return this.serverSettings.provider},isKvProvider(){return this.currentProvider==="kv-local"||this.currentProvider==="kv-server"},isClassworksCloud(){return this.currentProvider==="classworkscloud"},useServer(){return this.currentProvider==="server"||this.currentProvider==="kv-server"||this.currentProvider==="classworkscloud"}},watch:{serverSettings:{handler(){this.settingsChangeTimeout&&clearTimeout(this.settingsChangeTimeout),this.settingsChangeTimeout=setTimeout(()=>{this.saveAllSettings()},100)},deep:!0}},mounted(){this.loadAllSettings(),this.unwatch=nt(()=>{this.loadAllSettings(),this.$forceUpdate&&this.$forceUpdate()})},beforeUnmount(){this.unwatch&&this.unwatch()},methods:{loadAllSettings(){this.serverSettings={provider:_("server.provider"),domain:_("server.domain"),classNumber:_("server.classNumber"),kvToken:_("server.kvToken")}},saveAllSettings(){Object.entries(this.serverSettings).forEach(([s,e])=>{const a=`server.${s}`,d=_(a);e!==d&&(ke(a,e)?console.log(`设置已更新: ${a} = ${e}`):(console.error(`设置失败: ${a}`),this.serverSettings[s]=d))})}}},nl={key:0},sl={key:2},il={key:3},ll={key:4};function ol(s,e,a,d,i,l){const r=$t,p=ee;return c(),g(p,{loading:a.loading,icon:"mdi-database",title:"数据源设置"},{default:n(()=>[t(jt,null,{default:n(()=>[t(Je,{modelValue:i.serverSettings.provider,"onUpdate:modelValue":e[0]||(e[0]=u=>i.serverSettings.provider=u),items:[{title:"Classworks云端存储",value:"classworkscloud"},{title:"KV本地存储",value:"kv-local"},{title:"KV远程服务器",value:"kv-server"}],class:"mb-3",density:"comfortable","item-title":"title","item-value":"value",label:"数据提供者","prepend-icon":"mdi-database",variant:"outlined"},null,8,["modelValue"]),l.isKvProvider?(c(),g($,{key:0,class:"my-2",type:"info",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[5]||(e[5]=[o("KV 存储系统",-1)])]),_:1}),e[7]||(e[7]=m("p",null,"KV存储系统使用本机唯一标识符(UUID)来区分不同设备的数据。",-1)),l.currentProvider==="kv-server"?(c(),x("p",nl,[...e[6]||(e[6]=[o(" 服务器端点格式: ",-1),m("code",null,"http(s)://服务器域名/",-1),m("br",null,null,-1),o(" 在服务器域名处仅填写基础URL,不需要任何路径。 ",-1)])])):y("",!0)]),_:1})):y("",!0),l.isClassworksCloud?(c(),g($,{key:1,class:"my-2",color:"success",type:"info",variant:"tonal"},{default:n(()=>[t(Te,null,{default:n(()=>[...e[8]||(e[8]=[o("Classworks云端存储",-1)])]),_:1}),e[9]||(e[9]=m("p",null,"Classworks云端存储是官方提供的存储解决方案,自动配置了最优的访问设置。",-1)),e[10]||(e[10]=m("p",null,"使用此选项时,服务器域名和网站令牌将自动配置,无需手动设置。",-1))]),_:1})):y("",!0),t(P,{class:"my-2"}),l.isClassworksCloud?(c(),x("div",sl,[t(R,{modelValue:i.serverSettings.kvToken,"onUpdate:modelValue":e[1]||(e[1]=u=>i.serverSettings.kvToken=u),class:"mb-2",density:"comfortable",hint:"令牌用于云端存储授权",label:"KV 授权令牌","persistent-hint":"","prepend-icon":"mdi-shield-key",variant:"outlined"},null,8,["modelValue"]),t(r,{visible:l.isClassworksCloud,class:"mt-4"},null,8,["visible"])])):l.currentProvider==="kv-server"?(c(),x("div",il,[t(R,{modelValue:i.serverSettings.domain,"onUpdate:modelValue":e[2]||(e[2]=u=>i.serverSettings.domain=u),class:"mb-2",density:"comfortable",hint:"例如: https://example.com (不需要路径)",label:"服务器域名","persistent-hint":"","prepend-icon":"mdi-web",variant:"outlined"},null,8,["modelValue"]),t(R,{modelValue:i.serverSettings.kvToken,"onUpdate:modelValue":e[3]||(e[3]=u=>i.serverSettings.kvToken=u),class:"mb-2",density:"comfortable",hint:"令牌用于服务器验证",label:"KV 授权令牌","persistent-hint":"","prepend-icon":"mdi-shield-key",variant:"outlined"},null,8,["modelValue"])])):l.currentProvider==="kv-local"?(c(),x("div",ll,[t(R,{modelValue:i.serverSettings.classNumber,"onUpdate:modelValue":e[4]||(e[4]=u=>i.serverSettings.classNumber=u),class:"mb-2",density:"comfortable",hint:"例如: 高三八班",label:"班级编号","persistent-hint":"","prepend-icon":"mdi-account-group",variant:"outlined"},null,8,["modelValue"])])):y("",!0)]),_:1})]),_:1},8,["loading"])}const en=q(tl,[["render",ol]]),al="classworks",rl="module",ul="0.0.0",dl={dev:"vite --host",build:"vite build",preview:"vite preview",lint:"eslint . --fix",prebuild:"node scripts/generate-sound-list.js"},cl={"@fingerprintjs/fingerprintjs":"^5.0.1","@mdi/font":"7.4.47","@microsoft/clarity":"^1.0.2","@sentry/vue":"^10.36.0","@vueuse/core":"^14.1.0",axios:"^1.13.2",idb:"^8.0.3","js-base64":"^3.7.8","js-yaml":"^4.1.1","lucide-vue-next":"^0.555.0",marked:"^17.0.1","pinyin-pro":"^3.27.0","ratelimit-header-parser":"^0.1.0","roboto-fontface":"*","socket.io-client":"^4.8.1","typewriter-effect":"^2.22.0",uuid:"^13.0.0",vue:"^3.5.25","vue-sonner":"^2.0.9",vuetify:"^3.11.0"},ml={"@eslint/js":"^9.39.1","@vite-pwa/assets-generator":"^1.0.2","@vitejs/plugin-vue":"^6.0.2",eslint:"^9.39.1","eslint-plugin-import":"^2.32.0","eslint-plugin-n":"^17.23.1","eslint-plugin-node":"^11.1.0","eslint-plugin-promise":"^7.2.1","eslint-plugin-vue":"^10.6.2",pinia:"^3.0.4",sass:"1.94.2","sass-embedded":"^1.93.3","unplugin-auto-import":"^20.3.0","unplugin-fonts":"^1.4.0","unplugin-vue-components":"^30.0.0","unplugin-vue-router":"^0.18.0",vite:"^5.4.11","vite-plugin-pwa":"^1.2.0","vite-plugin-vue-devtools":"^7.6.8","vite-plugin-vue-layouts":"^0.11.0","vite-plugin-vuetify":"^2.1.2","vue-router":"^4.6.3"},Pe={name:al,private:!0,type:rl,version:ul,scripts:dl,dependencies:cl,devDependencies:ml},fl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAAAAXNSR0IArs4c6QAAAARzQklUCAgICHwIZIgAAAa9SURBVHic7dY9jlxVFIXRY8SsCEDyMCAjgRFBYokARoGQQII5EDIJYhNgyb9td9euqvfu3WuN4CTf1nn2958/vRyg0mdHHwAcxwBAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFDAAUMwBQzABAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFDAAUMwBQzABAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFDAAUMwBQzABAMQMAxQwAFDMAUMwAQDEDAMUMABQzAFDMAEAxAwDFPj/6AI7z2+9/zW9//HX0Gct6/uUX8/yrL44+I+IDKCX+zA7xzxiASuLP7BL/jAGoI/7MTvHPGIAq4s/sFv+MAagh/syO8c8YgAriz+wa/4wB2J74MzvHP2MAtib+zO7xzxiAbYk/0xD/jAHYkvgzLfHPGIDtiD/TFP+MAdiK+DNt8c8YgG2IP9MY/4wB2IL4M63xzxiA5Yk/0xz/jAFYmvgz7fHPGIBliT8j/v8ZgAWJPyP+1wzAYsSfEf/bDMBCxJ8R//sMwCLEnxH/hxmABYg/I/6HGYCTE39G/B9nAE5M/Bnxf5oBOCnxZ8T/OAbghMSfEf/jGYCTEX9G/E9jAE5E/BnxP50BOAnxZ8R/GQNwAuLPiP9yBuBg4s+IP2MADiT+jPhzBuAg4s+I/zoMwAHEnxH/9RiAOxN/RvzXZQDuSPwZ8V+fAbgT8WfEfxsG4A7EnxH/7RiAGxN/Rvy3ZQBuSPwZ8d+eAbgR8WfEfx8G4AbEnxH//RiAKxN/Rvz3ZQCuSPwZ8d+fAbgS8WfEfwwDcAXiz4j/OAYgJP6M+I9lAALiz4j/eAbgQuLPiP8cDMAFxJ8R/3kYgCcSf0b852IAnkD8GfGfjwF4JPFnxH9OBuARxJ8R/3kZgE8Qf0b852YAPkL8GfGfnwF4gPgz4l+DAfgA8WfEvw4D8A7xZ8S/FgPwBvFnxL8eA/CK+DPiX5MBGPGnxL+u+gEQf0b8a6seAPFnxL++2gEQf0b8e6gcAPFnxL+PugEQf0b8e6kaAPFnxL+fmgEQf0b8e6oYAPFnxL+v7QdA/Bnx723rARB/Rvz723YAxJ8Rf4ctB0D8GfH32G4AxJ8Rf5etBkD8GfH32WYAxJ8Rf6ctBkD8GfH3Wn4AxJ8Rf7dn//7z68ujj+AYP774ZX548fPRZyzr+2+/me++/froMyLLfwBcRvyZHeKfMQCVxJ/ZJf4ZA1BH/Jmd4p8xAFXEn9kt/hkDUEP8mR3jnzEAFcSf2TX+GQOwPfFndo5/xgBsTfyZ3eOfMQDbEn+mIf4ZA7Al8Wda4p8xANsRf6Yp/hkDsBXxZ9rinzEA2xB/pjH+GQOwBfFnWuOfMQDLE3+mOf4ZA7A08Wfa458xAMsSf0b8/zMACxJ/RvyvGYDFiD8j/rcZgIWIPyP+9xmARYg/I/4PMwALEH9G/A8zACcn/oz4P84AnJj4M+L/NANwUuLPiP9xDMAJiT8j/sczACcj/oz4n8YAnIj4M+J/OgNwEuLPiP8yBuAExJ8R/+UMwMHEnxF/xgAcSPwZ8ecMwEHEnxH/dRiAA4g/I/7rMQB3Jv6M+K/LANyR+DPivz4DcCfiz4j/NgzAHYg/I/7bMQA3Jv6M+G/LANyQ+DPivz0DcCPiz4j/PgzADYg/I/77MQBXJv6M+O/LAFyR+DPivz8DcCXiz4j/GAbgCsSfEf9xDEBI/BnxH8sABMSfEf/xDMCFxJ8R/zkYgAuIPyP+8zAATyT+jPjPxQA8gfgz4j8fA/BI4s+I/5wMwCOIPyP+8zIAnyD+jPjPzQB8hPgz4j8/A/AA8WfEvwYD8AHiz4h/HQbgHeLPiH8tBuAN4s+Ifz0G4BXxZ8S/JgMw4k+Jf131AyD+jPjXVj0A4s+If321AyD+jPj3UDkA4s+Ifx91AyD+jPj3UjUA4s+Ifz81AyD+jPj3VDEA4s+If1/bD4D4M+Lf29YDIP6M+Pe37QCIPyP+DlsOgPgz4u+x3QCIPyP+LlsNgPgz4u+zzQCIPyP+TlsMgPgz4u+1/ACIPyP+bs/+/efXl0cfARxj+Q8AuJwBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAihkAKGYAoJgBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAihkAKGYAoJgBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAihkAKGYAoJgBgGIGAIoZAChmAKCYAYBiBgCKGQAoZgCgmAGAYgYAiv0Hs2PMhrt8KlMAAAAASUVORK5CYII=",pl={name:"AboutCard",setup(){const s=ge([]),e=ge(!1),a=ge(!1),d=ge(""),i=ge(!1),l=ge(!1),r="964979747",p="https://qm.qq.com/q/T6qImKJjGi",u=Vn(),b=()=>{try{const k={...Pe.dependencies||{},...Pe.devDependencies||{}},N=Object.entries(k).map(([Q,le])=>({name:Q,version:le.replace(/[\^~]/g,""),description:T(Q)}));s.value=N}catch(k){console.error("加载依赖信息失败:",k),s.value=[]}},T=k=>({vue:"渐进式 JavaScript 框架",vuetify:"材料设计组件框架",axios:"Promise 基础的 HTTP 客户端",pinia:"Vue 状态管理库","vue-router":"Vue.js 官方路由管理器","@vitejs/plugin-vue":"Vite 的 Vue 插件"})[k]||"",I=()=>{u.push("/debug")},H=async()=>{i.value=!0;try{const k=await An();d.value=k||""}catch(k){console.error("获取访客ID失败",k)}finally{i.value=!1}},G=()=>H(),Z=async()=>{a.value=!0,d.value||await H()},fe=async()=>{try{await navigator.clipboard.writeText(me.value),l.value=!0,setTimeout(()=>l.value=!1,1800)}catch(k){console.error("复制失败",k)}},pe=Me(()=>{var W,L;const k=navigator||{},N=typeof Intl<"u"&&Intl.DateTimeFormat?Intl.DateTimeFormat().resolvedOptions():{},Q=N&&N.timeZone?N.timeZone:"",le=((L=(W=u.currentRoute)==null?void 0:W.value)==null?void 0:L.fullPath)||location.pathname;return[`App 版本: v${Pe==null?void 0:Pe.version}`,`URL: ${location.href}`,`路由: ${le}`,`UserAgent: ${k.userAgent||""}`,`语言: ${k.language||""}`,`时区: ${Q}`,`平台: ${k.platform||""}`,`在线: ${String(k.onLine)}`,`屏幕: ${(screen==null?void 0:screen.width)||"-"}x${(screen==null?void 0:screen.height)||"-"}`,`视口: ${window.innerWidth||"-"}x${window.innerHeight||"-"}`].join(` +`)}),me=Me(()=>`调试ID: ${d.value||"获取失败"} 浏览器/环境信息: -${pe.value}`),se=Me(()=>["问题描述:","1. 期望行为:","2. 实际行为:","3. 复现步骤:","",ce.value].join(` -`)),be=Me(()=>{const b="https://github.com/ZeroCatDev/Classworks/issues/new",D=encodeURIComponent("问题报告"),P=encodeURIComponent(se.value);return`${b}?title=${D}&body=${P}`}),V=Me(()=>{const b=encodeURIComponent("Classworks 问题报告"),D=encodeURIComponent(se.value);return`mailto:sun@wuyuan.dev?subject=${b}&body=${D}`});return Dn(()=>{y()}),{Dependencies:s,showDeps:e,showReportDialog:a,debugIdInput:d,visitorLoading:i,copyOk:l,qqGroupNumber:r,qqGroupLink:p,goToDebug:I,reloadVisitorId:H,openReportDialog:q,copyEnvInfo:fe,envBoxText:ce,envInfo:pe,reportBody:se,githubIssueUrl:be,mailtoLink:V}}},hl={class:"d-flex flex-column align-start"},gl={class:"d-flex gap-2 flex-wrap mb-6"},wl={class:"text-body-2",style:{"white-space":"pre-wrap",margin:"0"}},vl={class:"d-flex gap-2 flex-wrap mb-4"},bl={class:"text-caption text-medium-emphasis"};function yl(s,e,a,d,i,l){return c(),g(E,{border:"",hover:"",rounded:"xl"},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-information",size:"large"})]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[...e[6]||(e[6]=[o("关于",-1)])]),_:1})]),_:1}),t(j,null,{default:n(()=>[t(de,null,{default:n(()=>[t(z,{class:"mx-auto",cols:"12",md:"8"},{default:n(()=>[m("div",hl,[t(Ge,{class:"mb-4",size:"120"},{default:n(()=>[t(_t,{alt:"Classworks",src:fl})]),_:1}),e[36]||(e[36]=m("h2",{class:"text-h5 mb-2"},"Classworks",-1)),e[37]||(e[37]=m("p",{class:"text-body-1 mb-4"},"适用于班级大屏的作业板小工具",-1)),m("div",gl,[t(h,{color:"red","prepend-icon":"mdi-bug",variant:"tonal",onClick:d.openReportDialog},{default:n(()=>[...e[7]||(e[7]=[o(" 报告问题 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"primary",href:"https://qm.qq.com/q/qNBX4ZZVeg","prepend-icon":"mdi-qqchat",target:"_blank",variant:"tonal"},{default:n(()=>[...e[8]||(e[8]=[o(" QQ 群 ",-1)])]),_:1}),t(h,{href:"https://github.com/ClassworksDev/Classworks","prepend-icon":"mdi-github",target:"_blank",variant:"text"},{default:n(()=>[...e[9]||(e[9]=[o(" 前端 ",-1)])]),_:1}),t(h,{href:"https://github.com/ClassworksDev/ClassworksServer","prepend-icon":"mdi-github",target:"_blank",variant:"text"},{default:n(()=>[...e[10]||(e[10]=[o(" 后端 ",-1)])]),_:1})]),t(M,{class:"mb-4 w-100"}),e[38]||(e[38]=m("h3",{class:"text-h6 mb-2"},"备注与致谢",-1)),t(J,{class:"mb-4 bg-transparent"},{default:n(()=>[t(A,{"append-icon":"mdi-link",href:"https://github.com/EnderWolf006/HomeworkBoard",target:"_blank"},{default:n(()=>[t(L,null,{default:n(()=>[...e[11]||(e[11]=[o(" 本项目受到 HomeworkBoard 的启发而开发 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[12]||(e[12]=[o(" 感谢 EnderWolf006 (@EnderWolf) fhzit(@Hellofhz) KeyFac 等人的贡献 ",-1)])]),_:1})]),_:1}),t(A,{"append-icon":"mdi-link",href:"https://hlyun.org",target:"_blank"},{default:n(()=>[t(L,null,{default:n(()=>[...e[13]||(e[13]=[o(" Classworks 由",-1),m("strong",null,"厚浪云",-1),o("提供 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[14]||(e[14]=[o(" 长江后浪推前浪 浮事新人换旧人 ",-1)])]),_:1})]),_:1}),t(A,{"append-icon":"mdi-link",href:"https://zerocat.houlangs.com",target:"_blank"},{default:n(()=>[t(L,null,{default:n(()=>[...e[15]||(e[15]=[o(" 感谢 ZeroCat 社区的开发者们 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[16]||(e[16]=[o(" 新一代,开源,编程社区 ",-1)])]),_:1})]),_:1}),t(M,{class:"ma-1"}),t(A,{"append-icon":"mdi-link",href:"https://github.com/HUSX100/IslandCaller",target:"_blank"},{default:n(()=>[t(L,null,{default:n(()=>[...e[17]||(e[17]=[o(" 本项目与 IslandCaller 没有从属关系 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[18]||(e[18]=[o(" IslandCaller 是由 HUSX100 开发的基于 ClassIsland 提醒服务的轻量级点名器 ",-1)])]),_:1})]),_:1}),t(A,{"append-icon":"mdi-link",href:"https://classisland.tech",target:"_blank"},{default:n(()=>[t(L,null,{default:n(()=>[...e[19]||(e[19]=[o(" 本项目与 ClassIsland 没有从属关系 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[20]||(e[20]=[o(" ClassIsland 是由 HelloWRC 开发的适用于班级大屏的课表信息显示工具 ",-1)])]),_:1})]),_:1})]),_:1}),t(h,{class:"mb-4","prepend-icon":"mdi-package-variant",variant:"text",onClick:e[0]||(e[0]=r=>d.showDeps=!0)},{default:n(()=>[...e[21]||(e[21]=[o(" 查看使用的第三方库 ",-1)])]),_:1}),t(we,{modelValue:d.showDeps,"onUpdate:modelValue":e[2]||(e[2]=r=>d.showDeps=r),fullscreen:"",transition:"dialog-bottom-transition"},{default:n(()=>[t(E,null,{default:n(()=>[t(vt,null,{default:n(()=>[t(h,{icon:"mdi-close",onClick:e[1]||(e[1]=r=>d.showDeps=!1)}),t(bt,null,{default:n(()=>[...e[22]||(e[22]=[o("使用的第三方库",-1)])]),_:1}),t(te)]),_:1}),t(j,null,{default:n(()=>[t(J,null,{default:n(()=>[(c(!0),x(ne,null,ue(d.Dependencies,r=>(c(),g(A,{key:r.name,href:"https://www.npmjs.com/package/"+r.name,"append-icon":"mdi-link",target:"_blank"},{default:n(()=>[t(L,null,{default:n(()=>[o(w(r.name),1)]),_:2},1024),t(ie,null,{default:n(()=>[o(" v"+w(r.version),1)]),_:2},1024)]),_:2},1032,["href"]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:d.showReportDialog,"onUpdate:modelValue":e[5]||(e[5]=r=>d.showReportDialog=r),"max-width":"640"},{default:n(()=>[t(E,null,{default:n(()=>[t(vt,{density:"compact"},{default:n(()=>[t(h,{icon:"mdi-close",onClick:e[3]||(e[3]=r=>d.showReportDialog=!1)}),t(bt,null,{default:n(()=>[...e[23]||(e[23]=[o("报告问题",-1)])]),_:1}),t(te)]),_:1}),t(j,null,{default:n(()=>[e[33]||(e[33]=m("p",{class:"mb-4"}," 调试ID与下方的浏览器环境信息将帮助我们快速定位问题,请在反馈中一并附上。 ",-1)),t(zn,{class:"mb-3 pa-3 bg-grey-lighten-4 rounded",style:{"max-height":"260px",overflow:"auto"}},{default:n(()=>[m("pre",wl,w(d.envBoxText),1)]),_:1}),m("div",vl,[t(h,{size:"small",variant:"text","prepend-icon":"mdi-refresh",onClick:d.reloadVisitorId,loading:d.visitorLoading},{default:n(()=>[...e[24]||(e[24]=[o("刷新",-1)])]),_:1},8,["onClick","loading"]),t(h,{size:"small",variant:"text","prepend-icon":"mdi-content-copy",onClick:d.copyEnvInfo},{default:n(()=>[...e[25]||(e[25]=[o("复制信息",-1)])]),_:1},8,["onClick"]),t(h,{size:"small",variant:"text","prepend-icon":"mdi-open-in-new",onClick:d.goToDebug},{default:n(()=>[...e[26]||(e[26]=[o("查看 /debug 页面",-1)])]),_:1},8,["onClick"])]),d.copyOk?(c(),g($,{key:0,type:"success",density:"compact",class:"mb-4"},{default:n(()=>[...e[27]||(e[27]=[o("已复制到剪贴板",-1)])]),_:1})):k("",!0),e[34]||(e[34]=m("h4",{class:"text-subtitle-1 mb-2"},"反馈渠道",-1)),t(J,{lines:"one",class:"bg-transparent"},{default:n(()=>[t(A,{href:d.qqGroupLink,target:"_blank","prepend-icon":"mdi-qqchat"},{default:n(()=>[t(L,null,{default:n(()=>[o("QQ群 ("+w(d.qqGroupNumber)+")",1)]),_:1}),t(ie,null,{default:n(()=>[...e[28]||(e[28]=[o("964979747",-1)])]),_:1})]),_:1},8,["href"]),t(A,{href:d.githubIssueUrl,target:"_blank","prepend-icon":"mdi-github"},{default:n(()=>[t(L,null,{default:n(()=>[...e[29]||(e[29]=[o("GitHub Issue",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[30]||(e[30]=[o("ZeroCatDev/Classworks",-1)])]),_:1})]),_:1},8,["href"]),t(A,{href:d.mailtoLink,target:"_blank","prepend-icon":"mdi-email"},{default:n(()=>[t(L,null,{default:n(()=>[...e[31]||(e[31]=[o("邮件",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[32]||(e[32]=[o("sun@wuyuan.dev",-1)])]),_:1})]),_:1},8,["href"])]),_:1})]),_:1}),t(re,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[4]||(e[4]=r=>d.showReportDialog=!1)},{default:n(()=>[...e[35]||(e[35]=[o("关闭",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),m("p",bl," Copyright © "+w(new Date().getFullYear())+" Sunwuyuan ",1)])]),_:1})]),_:1})]),_:1})]),_:1})}const tn=Y(pl,[["render",yl]]),kl={name:"Settings",components:{ServerSettingsCard:en,EditSettingsCard:Jt,RefreshSettingsCard:Qt,DisplaySettingsCard:Ft,MessageLog:Ct,SettingsCard:ee,StudentListCard:Yt,TeacherListCard:Wt,AboutCard:tn,DataProviderSettingsCard:Xt,ThemeSettingsCard:Kt,EchoChamberCard:Mt,SettingsExplorer:Pt,SettingsLinkGenerator:Ht,RandomPickerCard:zt,HomeworkTemplateCard:Bt,SubjectManagementCard:Lt,KvDatabaseCard:Zt,HitokotoSettings:Ot,NotificationSoundSettings:Rt},setup(){const{mobile:s}=In();return{isMobile:s}},data(){return _("server.provider"),{settings:{server:{domain:_("server.domain"),classNumber:_("server.classNumber"),provider:_("server.provider")},refresh:{auto:_("refresh.auto"),interval:_("refresh.interval")},font:{size:_("font.size")},edit:{autoSave:_("edit.autoSave"),blockNonTodayAutoSave:_("edit.blockNonTodayAutoSave"),confirmNonTodaySave:_("edit.confirmNonTodaySave"),refreshBeforeEdit:_("edit.refreshBeforeEdit")},display:{emptySubjectDisplay:_("display.emptySubjectDisplay"),dynamicSort:_("display.dynamicSort"),showRandomButton:_("display.showRandomButton"),showFullscreenButton:_("display.showFullscreenButton")},developer:{enabled:_("developer.enabled"),showDebugConfig:_("developer.showDebugConfig")},message:{showSidebar:_("message.showSidebar"),maxActiveMessages:_("message.maxActiveMessages"),timeout:_("message.timeout"),saveHistory:_("message.saveHistory")}},dataProviders:[{title:"服务器",value:"server"},{title:"本地数据库",value:"indexedDB"}],studentData:{list:[],text:"",advanced:!1},newStudent:"",editingIndex:-1,editingName:"",deleteDialog:!1,studentToDelete:null,numberDialog:!1,newPosition:"",studentToMove:null,touchStartTime:0,touchTimeout:null,studentsLoading:!1,studentsError:null,debugConfig:"",loading:{server:!1,students:!1},hasUnsavedChanges:!1,lastSavedData:null,settingsTab:"index",settingsTabs:[{title:"首页",icon:"mdi-home",value:"index"},{title:"服务器",icon:"mdi-server",value:"server"},{title:"科目",icon:"mdi-book-edit",value:"subject"},{title:"花名册",icon:"mdi-account-group",value:"student"},{title:"预配链接",icon:"mdi-share",value:"share"},{title:"刷新",icon:"mdi-refresh",value:"refresh"},{title:"编辑",icon:"mdi-pencil",value:"edit"},{title:"显示",icon:"mdi-eye",value:"display"},{title:"主题",icon:"mdi-theme-light-dark",value:"theme"},{title:"通知铃声",icon:"mdi-bell-ring",value:"notification"},{title:"一言",icon:"mdi-comment-quote",value:"hitokoto"},{title:"随机点名",icon:"mdi-dice-multiple",value:"randomPicker"},{title:"开发者",icon:"mdi-developer-board",value:"developer"},{title:"关于",icon:"mdi-information",value:"about"}],drawer:!1}},watch:{settings:{handler(s){this.handleSettingsChange(s)},deep:!0},isMobile:{handler(s){this.drawer=!s},immediate:!0},studentData:{handler(s){this.lastSavedData&&(this.hasUnsavedChanges=JSON.stringify(s.list)!==JSON.stringify(this.lastSavedData)),this.studentData.text=s.list.join(` -`)},deep:!0}},mounted(){this.loadAllSettings(),this.unwatchSettings=nt(()=>{this.loadAllSettings()}),this.drawer=!this.isMobile},beforeUnmount(){this.unwatchSettings&&this.unwatchSettings()},methods:{openClassworksKV(){window.open(_("server.authDomain"),"_blank")},loadAllSettings(){Object.keys(this.settings).forEach(s=>{Object.keys(this.settings[s]).forEach(e=>{this.settings[s][e]=_(`${s}.${e}`)})})},handleSettingsChange(s){this.settingsChangeTimeout&&clearTimeout(this.settingsChangeTimeout),this.settingsChangeTimeout=setTimeout(()=>{Object.entries(s).forEach(([e,a])=>{Object.entries(a).forEach(([d,i])=>{const l=`${e}.${d}`,r=_(l);i!==r&&(xe(l,i)?this.showMessage("设置已更新",`${l} 已保存`):(this.showError("保存失败",`${l} 设置失败`),this.settings[e][d]=r))})})},100)},showMessage(s,e="",a="success"){this.$message[a](s,e)},showError(s,e=""){this.$message.error(s,e)},saveEdit(){if(this.editingIndex!==-1){const s=this.editingName.trim();s&&s!==this.studentData.list[this.editingIndex]&&(this.studentData.list[this.editingIndex]=s),this.editingIndex=-1,this.editingName=""}},startEdit(s,e){this.editingIndex=s,this.editingName=e},confirmDelete(s){this.studentToDelete={index:s,name:this.studentData.list[s]},this.deleteDialog=!0},moveStudent(s,e){const a=e==="up"?s-1:s+1;a>=0&&a=0&&s0){const e=this.studentData.list[s];this.studentData.list.splice(s,1),this.studentData.list.unshift(e)}},addStudent(){const s=this.newStudent.trim();s&&!this.studentData.list.includes(s)&&(this.studentData.list.push(s),this.newStudent="")},removeStudent(s){s!==void 0&&(this.studentData.list.splice(s,1),this.deleteDialog=!1,this.studentToDelete=null)},resetFontSize(){Vt("font.size"),this.settings.font.size=_("font.size"),this.showMessage("字体已重置","字体大小已恢复默认值")},handleDeveloperChange(s){s||(this.settings.message={showSidebar:!0,maxActiveMessages:5,timeout:5e3,saveHistory:!0})},resetDeveloperSettings(){this.settings.developer={enabled:!1},this.settings.message={showSidebar:!0,maxActiveMessages:5,timeout:5e3,saveHistory:!0},this.handleSettingsChange(this.settings),this.showMessage("已重置","开发者设置已重置为默认值","warning")},adjustFontSize(s){const a=this.settings.font.size;s==="up"&&a<100?this.settings.font.size=a+2:s==="down"&&a>16&&(this.settings.font.size=a-2),this.handleSettingsChange(this.settings)},onSettingsSaved(){this.showMessage("设置已更新","您的设置已成功保存")},onSettingUpdate(s,e){this.showMessage("设置已更新",`${s} 已保存为 ${e}`)}}},xl={class:"settings-page"},Sl={class:"mt-4"};function Cl(s,e,a,d,i,l){const r=tn,p=en,u=Xt,y=Zt,T=Yt,I=Wt,Q=Ht,H=Qt,q=Jt,fe=Ft,pe=Kt,ce=Rt,se=Ot,be=zt,V=Lt,b=Bt,D=ee,P=Tn("developer-settings-card"),Z=Pt,me=Mt,ye=Ct;return c(),x("div",xl,[t(Ln,{elevation:"1"},{prepend:n(()=>[t(h,{icon:"mdi-arrow-left",variant:"text",onClick:e[0]||(e[0]=G=>s.$router.push("/"))}),t(h,{icon:"mdi-menu",variant:"text",onClick:e[1]||(e[1]=G=>i.drawer=!i.drawer)})]),default:n(()=>[t(Bn,{class:"text-h6"},{default:n(()=>[...e[5]||(e[5]=[o("设置",-1)])]),_:1})]),_:1}),t(st,{fluid:""},{default:n(()=>[t(pn,{modelValue:i.drawer,"onUpdate:modelValue":e[2]||(e[2]=G=>i.drawer=G),permanent:!d.isMobile,temporary:d.isMobile},{default:n(()=>[t(J,null,{default:n(()=>[(c(!0),x(ne,null,ue(i.settingsTabs,G=>(c(),g(A,{key:G.value,active:i.settingsTab===G.value,color:i.settingsTab===G.value?"primary":"default","prepend-icon":G.icon,class:"rounded-e-xl",onClick:O=>i.settingsTab=G.value},{default:n(()=>[t(L,null,{default:n(()=>[o(w(G.title),1)]),_:2},1024)]),_:2},1032,["active","color","prepend-icon","onClick"]))),128))]),_:1})]),_:1},8,["modelValue","permanent","temporary"]),t(Nn,{modelValue:i.settingsTab,"onUpdate:modelValue":e[4]||(e[4]=G=>i.settingsTab=G),direction:"vertical",style:{width:"100%"}},{default:n(()=>[t(he,{value:"index"},{default:n(()=>[t(E,{border:"",class:"service-card gradient-right clickable mb-4",color:"primary",elevation:"8",hover:"",rounded:"xl",variant:"tonal",onClick:l.openClassworksKV},{default:n(()=>[t(ze,null,{default:n(()=>[...e[6]||(e[6]=[m("div",{class:"card-title"},[m("div",null,[m("div",{class:"text-h6"},"在寻找 Classworks KV ?"),m("div",{class:"text-caption text-medium-emphasis"}," 文档形键值数据库 ")])],-1)])]),_:1}),t(j,null,{default:n(()=>[m("div",Sl,[t(h,{"append-icon":"mdi-arrow-right",class:"text-none",rounded:"xl",variant:"text",onClick:l.openClassworksKV},{default:n(()=>[...e[7]||(e[7]=[o(" 打开 Classworks KV ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1},8,["onClick"]),t(E,{border:"",class:"rounded-xl mb-4",subtitle:"设置",title:"Classworks"},{default:n(()=>[t(j,null,{default:n(()=>[t($,{class:"rounded-xl",color:"error",icon:"mdi-alert-circle",variant:"tonal"},{default:n(()=>[...e[8]||(e[8]=[o("Classworks 是开源免费的软件,官方没有提供任何形式的付费支持服务,源代码仓库地址在 ",-1),m("a",{href:"https://github.com/ZeroCatDev/Classworks",target:"_blank"},"https://github.com/ZeroCatDev/Classworks",-1),o("。如果您通过有偿协助等付费方式取得本应用,在遇到问题时请在与卖家约定的服务框架下,优先向卖家求助。如果卖家没有提供您预期的服务,请退款或通过其它形式积极维护您的合法权益。 ",-1)])]),_:1}),t($,{class:"mt-4 rounded-xl",color:"info",icon:"mdi-information",variant:"tonal"},{default:n(()=>[...e[9]||(e[9]=[o("请不要使用浏览器清除缓存功能,否则会导致配置丢失。 ",-1),m("del",null,"恶意的操作可能导致您受到贵校教师的处理 ",-1)])]),_:1}),t($,{class:"mt-4 rounded-xl",color:"warning",icon:"mdi-information",variant:"tonal"},{default:n(()=>[e[11]||(e[11]=m("p",null," 请不要使用包括但不限于360极速浏览器、360安全浏览器、夸克浏览器、QQ浏览器等浏览器使用 Classworks ,这些浏览器过时且存在严重的一致性问题。在Windows上,使用新版 Microsoft Edge 浏览器是最推荐的选择。 ",-1)),e[12]||(e[12]=m("p",{style:{color:"#666"}}," 上述浏览器商标为其所属公司所有,Classworks™ 与上述浏览器所属公司无竞争关系。 ",-1)),e[13]||(e[13]=m("br",null,null,-1)),t(h,{"append-icon":"mdi-open-in-new",class:"text-none rounded-xl",color:"warning",href:"https://www.microsoft.com/zh-cn/windows/microsoft-edge",target:"_blank",variant:"tonal"},{default:n(()=>[...e[10]||(e[10]=[o("下载 Microsoft Edge(微软边缘浏览器) ",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),t(r)]),_:1}),t(he,{value:"server"},{default:n(()=>[t(p,{loading:i.loading.server,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"]),t(u,{border:"",class:"mt-4"}),t(y,{border:"",class:"mt-4"})]),_:1}),t(he,{value:"student"},{default:n(()=>[t(T,{"is-mobile":d.isMobile,border:""},null,8,["is-mobile"]),t(I,{"is-mobile":d.isMobile,border:"",class:"mt-4"},null,8,["is-mobile"])]),_:1}),t(he,{value:"share"},{default:n(()=>[t(Q,{border:"",class:"mt-4"})]),_:1}),t(he,{value:"refresh"},{default:n(()=>[t(H,{loading:i.loading.refresh,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"edit"},{default:n(()=>[t(q,{loading:i.loading.edit,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"display"},{default:n(()=>[t(fe,{loading:i.loading.display,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"theme"},{default:n(()=>[t(pe,{loading:i.loading.theme,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"notification"},{default:n(()=>[t(ce,{border:""})]),_:1}),t(he,{value:"hitokoto"},{default:n(()=>[t(se,{border:""})]),_:1}),t(he,{value:"randomPicker"},{default:n(()=>[t(be,{"is-mobile":d.isMobile,border:""},null,8,["is-mobile"])]),_:1}),t(he,{value:"subject"},{default:n(()=>[t(V,{border:""}),e[14]||(e[14]=m("br",null,null,-1)),t(b,{border:""})]),_:1}),t(he,{value:"developer"},{default:n(()=>[t(D,{border:"",icon:"mdi-developer-board",title:"开发者选项"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-code-tags"})]),append:n(()=>[t(Tt,{modelValue:i.settings.developer.enabled,"onUpdate:modelValue":e[3]||(e[3]=G=>i.settings.developer.enabled=G),density:"comfortable","hide-details":"",onChange:l.handleDeveloperChange},null,8,["modelValue","onChange"])]),default:n(()=>[t(L,null,{default:n(()=>[...e[15]||(e[15]=[o("启用开发者选项",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[16]||(e[16]=[o("启用后可以查看和修改开发者设置 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),t(P,{loading:i.loading.developer,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"]),i.settings.developer.enabled?(c(),g(E,{key:0,border:"",class:"mt-4 rounded-lg"},{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-cog-outline"}),e[17]||(e[17]=o(" 所有设置 ",-1))]),_:1}),t(Le,null,{default:n(()=>[...e[18]||(e[18]=[o(" 浏览和修改所有可用设置",-1)])]),_:1}),t(j,null,{default:n(()=>[t(Z,{onUpdate:l.onSettingUpdate},null,8,["onUpdate"])]),_:1})]),_:1})):k("",!0),i.settings.developer.enabled?(c(),g(z,{key:1,cols:"12"})):k("",!0)]),_:1}),t(he,{value:"about"},{default:n(()=>[t(r),t(me,{border:"",class:"mt-4"})]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(ye,{ref:"messageLog"},null,512)])}const Jl=Y(kl,[["render",Cl]]);export{Jl as default}; +${pe.value}`),se=Me(()=>["问题描述:","1. 期望行为:","2. 实际行为:","3. 复现步骤:","",me.value].join(` +`)),be=Me(()=>{const k="https://github.com/ZeroCatDev/Classworks/issues/new",N=encodeURIComponent("问题报告"),Q=encodeURIComponent(se.value);return`${k}?title=${N}&body=${Q}`}),D=Me(()=>{const k=encodeURIComponent("Classworks 问题报告"),N=encodeURIComponent(se.value);return`mailto:sun@wuyuan.dev?subject=${k}&body=${N}`}),V=()=>{typeof window.openSentryFeedback=="function"?window.openSentryFeedback():console.warn("Sentry Feedback 功能不可用")};return Dn(()=>{b()}),{Dependencies:s,showDeps:e,showReportDialog:a,debugIdInput:d,visitorLoading:i,copyOk:l,qqGroupNumber:r,qqGroupLink:p,goToDebug:I,reloadVisitorId:G,openReportDialog:Z,copyEnvInfo:fe,openFeedback:V,envBoxText:me,envInfo:pe,reportBody:se,githubIssueUrl:be,mailtoLink:D}}},hl={class:"d-flex flex-column align-start"},gl={class:"d-flex gap-2 flex-wrap mb-6"},wl={class:"text-body-2",style:{"white-space":"pre-wrap",margin:"0"}},vl={class:"d-flex gap-2 flex-wrap mb-4"},bl={class:"d-flex gap-2 mb-4"},yl={class:"text-caption text-medium-emphasis"};function kl(s,e,a,d,i,l){return c(),g(E,{border:"",hover:"",rounded:"xl"},{default:n(()=>[t(ze,null,{prepend:n(()=>[t(v,{class:"mr-2",icon:"mdi-information",size:"large"})]),default:n(()=>[t(K,{class:"text-h6"},{default:n(()=>[...e[6]||(e[6]=[o("关于",-1)])]),_:1})]),_:1}),t(j,null,{default:n(()=>[t(ce,null,{default:n(()=>[t(O,{class:"mx-auto",cols:"12",md:"8"},{default:n(()=>[m("div",hl,[t(Ge,{class:"mb-4",size:"120"},{default:n(()=>[t(_t,{alt:"Classworks",src:fl})]),_:1}),e[37]||(e[37]=m("h2",{class:"text-h5 mb-2"},"Classworks",-1)),e[38]||(e[38]=m("p",{class:"text-body-1 mb-4"},"适用于班级大屏的作业板小工具",-1)),m("div",gl,[t(h,{color:"red","prepend-icon":"mdi-bug",variant:"tonal",onClick:d.openReportDialog},{default:n(()=>[...e[7]||(e[7]=[o(" 报告问题 ",-1)])]),_:1},8,["onClick"]),t(h,{color:"primary",href:"https://qm.qq.com/q/qNBX4ZZVeg","prepend-icon":"mdi-qqchat",target:"_blank",variant:"tonal"},{default:n(()=>[...e[8]||(e[8]=[o(" QQ 群 ",-1)])]),_:1}),t(h,{href:"https://github.com/ClassworksDev/Classworks","prepend-icon":"mdi-github",target:"_blank",variant:"text"},{default:n(()=>[...e[9]||(e[9]=[o(" 前端 ",-1)])]),_:1}),t(h,{href:"https://github.com/ClassworksDev/ClassworksServer","prepend-icon":"mdi-github",target:"_blank",variant:"text"},{default:n(()=>[...e[10]||(e[10]=[o(" 后端 ",-1)])]),_:1})]),t(P,{class:"mb-4 w-100"}),e[39]||(e[39]=m("h3",{class:"text-h6 mb-2"},"备注与致谢",-1)),t(J,{class:"mb-4 bg-transparent"},{default:n(()=>[t(A,{"append-icon":"mdi-link",href:"https://github.com/EnderWolf006/HomeworkBoard",target:"_blank"},{default:n(()=>[t(z,null,{default:n(()=>[...e[11]||(e[11]=[o(" 本项目受到 HomeworkBoard 的启发而开发 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[12]||(e[12]=[o(" 感谢 EnderWolf006 (@EnderWolf) fhzit(@Hellofhz) KeyFac 等人的贡献 ",-1)])]),_:1})]),_:1}),t(A,{"append-icon":"mdi-link",href:"https://hlyun.org",target:"_blank"},{default:n(()=>[t(z,null,{default:n(()=>[...e[13]||(e[13]=[o(" Classworks 由",-1),m("strong",null,"厚浪云",-1),o("提供 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[14]||(e[14]=[o(" 长江后浪推前浪 浮事新人换旧人 ",-1)])]),_:1})]),_:1}),t(A,{"append-icon":"mdi-link",href:"https://zerocat.houlangs.com",target:"_blank"},{default:n(()=>[t(z,null,{default:n(()=>[...e[15]||(e[15]=[o(" 感谢 ZeroCat 社区的开发者们 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[16]||(e[16]=[o(" 新一代,开源,编程社区 ",-1)])]),_:1})]),_:1}),t(P,{class:"ma-1"}),t(A,{"append-icon":"mdi-link",href:"https://github.com/HUSX100/IslandCaller",target:"_blank"},{default:n(()=>[t(z,null,{default:n(()=>[...e[17]||(e[17]=[o(" 本项目与 IslandCaller 没有从属关系 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[18]||(e[18]=[o(" IslandCaller 是由 HUSX100 开发的基于 ClassIsland 提醒服务的轻量级点名器 ",-1)])]),_:1})]),_:1}),t(A,{"append-icon":"mdi-link",href:"https://classisland.tech",target:"_blank"},{default:n(()=>[t(z,null,{default:n(()=>[...e[19]||(e[19]=[o(" 本项目与 ClassIsland 没有从属关系 ",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[20]||(e[20]=[o(" ClassIsland 是由 HelloWRC 开发的适用于班级大屏的课表信息显示工具 ",-1)])]),_:1})]),_:1})]),_:1}),t(h,{class:"mb-4","prepend-icon":"mdi-package-variant",variant:"text",onClick:e[0]||(e[0]=r=>d.showDeps=!0)},{default:n(()=>[...e[21]||(e[21]=[o(" 查看使用的第三方库 ",-1)])]),_:1}),t(we,{modelValue:d.showDeps,"onUpdate:modelValue":e[2]||(e[2]=r=>d.showDeps=r),fullscreen:"",transition:"dialog-bottom-transition"},{default:n(()=>[t(E,null,{default:n(()=>[t(vt,null,{default:n(()=>[t(h,{icon:"mdi-close",onClick:e[1]||(e[1]=r=>d.showDeps=!1)}),t(bt,null,{default:n(()=>[...e[22]||(e[22]=[o("使用的第三方库",-1)])]),_:1}),t(te)]),_:1}),t(j,null,{default:n(()=>[t(J,null,{default:n(()=>[(c(!0),x(ne,null,de(d.Dependencies,r=>(c(),g(A,{key:r.name,href:"https://www.npmjs.com/package/"+r.name,"append-icon":"mdi-link",target:"_blank"},{default:n(()=>[t(z,null,{default:n(()=>[o(w(r.name),1)]),_:2},1024),t(ie,null,{default:n(()=>[o(" v"+w(r.version),1)]),_:2},1024)]),_:2},1032,["href"]))),128))]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),t(we,{modelValue:d.showReportDialog,"onUpdate:modelValue":e[5]||(e[5]=r=>d.showReportDialog=r),"max-width":"640"},{default:n(()=>[t(E,null,{default:n(()=>[t(vt,{density:"compact"},{default:n(()=>[t(h,{icon:"mdi-close",onClick:e[3]||(e[3]=r=>d.showReportDialog=!1)}),t(bt,null,{default:n(()=>[...e[23]||(e[23]=[o("报告问题",-1)])]),_:1}),t(te)]),_:1}),t(j,null,{default:n(()=>[e[34]||(e[34]=m("p",{class:"mb-4"}," 调试ID与下方的浏览器环境信息将帮助我们快速定位问题,请在反馈中一并附上。 ",-1)),t(zn,{class:"mb-3 pa-3 bg-grey-lighten-4 rounded",style:{"max-height":"260px",overflow:"auto"}},{default:n(()=>[m("pre",wl,w(d.envBoxText),1)]),_:1}),m("div",vl,[t(h,{size:"small",variant:"text","prepend-icon":"mdi-refresh",onClick:d.reloadVisitorId,loading:d.visitorLoading},{default:n(()=>[...e[24]||(e[24]=[o("刷新",-1)])]),_:1},8,["onClick","loading"]),t(h,{size:"small",variant:"text","prepend-icon":"mdi-content-copy",onClick:d.copyEnvInfo},{default:n(()=>[...e[25]||(e[25]=[o("复制信息",-1)])]),_:1},8,["onClick"]),t(h,{size:"small",variant:"text","prepend-icon":"mdi-open-in-new",onClick:d.goToDebug},{default:n(()=>[...e[26]||(e[26]=[o("查看 /debug 页面",-1)])]),_:1},8,["onClick"])]),d.copyOk?(c(),g($,{key:0,type:"success",density:"compact",class:"mb-4"},{default:n(()=>[...e[27]||(e[27]=[o("已复制到剪贴板",-1)])]),_:1})):y("",!0),m("div",bl,[t(h,{size:"small",color:"primary",variant:"elevated","prepend-icon":"mdi-message-alert",onClick:d.openFeedback,block:""},{default:n(()=>[...e[28]||(e[28]=[o(" 发送错误反馈到 Sentry ",-1)])]),_:1},8,["onClick"])]),e[35]||(e[35]=m("h4",{class:"text-subtitle-1 mb-2"},"反馈渠道",-1)),t(J,{lines:"one",class:"bg-transparent"},{default:n(()=>[t(A,{href:d.qqGroupLink,target:"_blank","prepend-icon":"mdi-qqchat"},{default:n(()=>[t(z,null,{default:n(()=>[o("QQ群 ("+w(d.qqGroupNumber)+")",1)]),_:1}),t(ie,null,{default:n(()=>[...e[29]||(e[29]=[o("964979747",-1)])]),_:1})]),_:1},8,["href"]),t(A,{href:d.githubIssueUrl,target:"_blank","prepend-icon":"mdi-github"},{default:n(()=>[t(z,null,{default:n(()=>[...e[30]||(e[30]=[o("GitHub Issue",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[31]||(e[31]=[o("ZeroCatDev/Classworks",-1)])]),_:1})]),_:1},8,["href"]),t(A,{href:d.mailtoLink,target:"_blank","prepend-icon":"mdi-email"},{default:n(()=>[t(z,null,{default:n(()=>[...e[32]||(e[32]=[o("邮件",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[33]||(e[33]=[o("sun@wuyuan.dev",-1)])]),_:1})]),_:1},8,["href"])]),_:1})]),_:1}),t(ue,null,{default:n(()=>[t(te),t(h,{variant:"text",onClick:e[4]||(e[4]=r=>d.showReportDialog=!1)},{default:n(()=>[...e[36]||(e[36]=[o("关闭",-1)])]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"]),m("p",yl," Copyright © "+w(new Date().getFullYear())+" Sunwuyuan ",1)])]),_:1})]),_:1})]),_:1})]),_:1})}const tn=q(pl,[["render",kl]]),xl={name:"Settings",components:{ServerSettingsCard:en,EditSettingsCard:Jt,RefreshSettingsCard:Qt,DisplaySettingsCard:Ft,MessageLog:Ct,SettingsCard:ee,StudentListCard:Yt,TeacherListCard:Wt,AboutCard:tn,DataProviderSettingsCard:Xt,ThemeSettingsCard:Kt,EchoChamberCard:Mt,SettingsExplorer:Pt,SettingsLinkGenerator:Ht,RandomPickerCard:zt,HomeworkTemplateCard:Bt,SubjectManagementCard:Lt,KvDatabaseCard:Zt,HitokotoSettings:Ot,NotificationSoundSettings:Rt},setup(){const{mobile:s}=In();return{isMobile:s}},data(){return _("server.provider"),{settings:{server:{domain:_("server.domain"),classNumber:_("server.classNumber"),provider:_("server.provider")},refresh:{auto:_("refresh.auto"),interval:_("refresh.interval")},font:{size:_("font.size")},edit:{autoSave:_("edit.autoSave"),blockNonTodayAutoSave:_("edit.blockNonTodayAutoSave"),confirmNonTodaySave:_("edit.confirmNonTodaySave"),refreshBeforeEdit:_("edit.refreshBeforeEdit")},display:{emptySubjectDisplay:_("display.emptySubjectDisplay"),dynamicSort:_("display.dynamicSort"),showRandomButton:_("display.showRandomButton"),showFullscreenButton:_("display.showFullscreenButton")},developer:{enabled:_("developer.enabled"),showDebugConfig:_("developer.showDebugConfig")},message:{showSidebar:_("message.showSidebar"),maxActiveMessages:_("message.maxActiveMessages"),timeout:_("message.timeout"),saveHistory:_("message.saveHistory")}},dataProviders:[{title:"服务器",value:"server"},{title:"本地数据库",value:"indexedDB"}],studentData:{list:[],text:"",advanced:!1},newStudent:"",editingIndex:-1,editingName:"",deleteDialog:!1,studentToDelete:null,numberDialog:!1,newPosition:"",studentToMove:null,touchStartTime:0,touchTimeout:null,studentsLoading:!1,studentsError:null,debugConfig:"",loading:{server:!1,students:!1},hasUnsavedChanges:!1,lastSavedData:null,settingsTab:"index",settingsTabs:[{title:"首页",icon:"mdi-home",value:"index"},{title:"服务器",icon:"mdi-server",value:"server"},{title:"科目",icon:"mdi-book-edit",value:"subject"},{title:"花名册",icon:"mdi-account-group",value:"student"},{title:"预配链接",icon:"mdi-share",value:"share"},{title:"刷新",icon:"mdi-refresh",value:"refresh"},{title:"编辑",icon:"mdi-pencil",value:"edit"},{title:"显示",icon:"mdi-eye",value:"display"},{title:"主题",icon:"mdi-theme-light-dark",value:"theme"},{title:"通知铃声",icon:"mdi-bell-ring",value:"notification"},{title:"一言",icon:"mdi-comment-quote",value:"hitokoto"},{title:"随机点名",icon:"mdi-dice-multiple",value:"randomPicker"},{title:"开发者",icon:"mdi-developer-board",value:"developer"},{title:"关于",icon:"mdi-information",value:"about"}],drawer:!1}},watch:{settings:{handler(s){this.handleSettingsChange(s)},deep:!0},isMobile:{handler(s){this.drawer=!s},immediate:!0},studentData:{handler(s){this.lastSavedData&&(this.hasUnsavedChanges=JSON.stringify(s.list)!==JSON.stringify(this.lastSavedData)),this.studentData.text=s.list.join(` +`)},deep:!0}},mounted(){this.loadAllSettings(),this.unwatchSettings=nt(()=>{this.loadAllSettings()}),this.drawer=!this.isMobile},beforeUnmount(){this.unwatchSettings&&this.unwatchSettings()},methods:{openClassworksKV(){window.open(_("server.authDomain"),"_blank")},loadAllSettings(){Object.keys(this.settings).forEach(s=>{Object.keys(this.settings[s]).forEach(e=>{this.settings[s][e]=_(`${s}.${e}`)})})},handleSettingsChange(s){this.settingsChangeTimeout&&clearTimeout(this.settingsChangeTimeout),this.settingsChangeTimeout=setTimeout(()=>{Object.entries(s).forEach(([e,a])=>{Object.entries(a).forEach(([d,i])=>{const l=`${e}.${d}`,r=_(l);i!==r&&(ke(l,i)?this.showMessage("设置已更新",`${l} 已保存`):(this.showError("保存失败",`${l} 设置失败`),this.settings[e][d]=r))})})},100)},showMessage(s,e="",a="success"){this.$message[a](s,e)},showError(s,e=""){this.$message.error(s,e)},saveEdit(){if(this.editingIndex!==-1){const s=this.editingName.trim();s&&s!==this.studentData.list[this.editingIndex]&&(this.studentData.list[this.editingIndex]=s),this.editingIndex=-1,this.editingName=""}},startEdit(s,e){this.editingIndex=s,this.editingName=e},confirmDelete(s){this.studentToDelete={index:s,name:this.studentData.list[s]},this.deleteDialog=!0},moveStudent(s,e){const a=e==="up"?s-1:s+1;a>=0&&a=0&&s0){const e=this.studentData.list[s];this.studentData.list.splice(s,1),this.studentData.list.unshift(e)}},addStudent(){const s=this.newStudent.trim();s&&!this.studentData.list.includes(s)&&(this.studentData.list.push(s),this.newStudent="")},removeStudent(s){s!==void 0&&(this.studentData.list.splice(s,1),this.deleteDialog=!1,this.studentToDelete=null)},resetFontSize(){Vt("font.size"),this.settings.font.size=_("font.size"),this.showMessage("字体已重置","字体大小已恢复默认值")},handleDeveloperChange(s){s||(this.settings.message={showSidebar:!0,maxActiveMessages:5,timeout:5e3,saveHistory:!0})},resetDeveloperSettings(){this.settings.developer={enabled:!1},this.settings.message={showSidebar:!0,maxActiveMessages:5,timeout:5e3,saveHistory:!0},this.handleSettingsChange(this.settings),this.showMessage("已重置","开发者设置已重置为默认值","warning")},adjustFontSize(s){const a=this.settings.font.size;s==="up"&&a<100?this.settings.font.size=a+2:s==="down"&&a>16&&(this.settings.font.size=a-2),this.handleSettingsChange(this.settings)},onSettingsSaved(){this.showMessage("设置已更新","您的设置已成功保存")},onSettingUpdate(s,e){this.showMessage("设置已更新",`${s} 已保存为 ${e}`)}}},Sl={class:"settings-page"},Cl={class:"mt-4"};function _l(s,e,a,d,i,l){const r=tn,p=en,u=Xt,b=Zt,T=Yt,I=Wt,H=Ht,G=Qt,Z=Jt,fe=Ft,pe=Kt,me=Rt,se=Ot,be=zt,D=Lt,V=Bt,k=ee,N=Tn("developer-settings-card"),Q=Pt,le=Mt,_e=Ct;return c(),x("div",Sl,[t(Ln,{elevation:"1"},{prepend:n(()=>[t(h,{icon:"mdi-arrow-left",variant:"text",onClick:e[0]||(e[0]=W=>s.$router.push("/"))}),t(h,{icon:"mdi-menu",variant:"text",onClick:e[1]||(e[1]=W=>i.drawer=!i.drawer)})]),default:n(()=>[t(Bn,{class:"text-h6"},{default:n(()=>[...e[5]||(e[5]=[o("设置",-1)])]),_:1})]),_:1}),t(st,{fluid:""},{default:n(()=>[t(pn,{modelValue:i.drawer,"onUpdate:modelValue":e[2]||(e[2]=W=>i.drawer=W),permanent:!d.isMobile,temporary:d.isMobile},{default:n(()=>[t(J,null,{default:n(()=>[(c(!0),x(ne,null,de(i.settingsTabs,W=>(c(),g(A,{key:W.value,active:i.settingsTab===W.value,color:i.settingsTab===W.value?"primary":"default","prepend-icon":W.icon,class:"rounded-e-xl",onClick:L=>i.settingsTab=W.value},{default:n(()=>[t(z,null,{default:n(()=>[o(w(W.title),1)]),_:2},1024)]),_:2},1032,["active","color","prepend-icon","onClick"]))),128))]),_:1})]),_:1},8,["modelValue","permanent","temporary"]),t(Nn,{modelValue:i.settingsTab,"onUpdate:modelValue":e[4]||(e[4]=W=>i.settingsTab=W),direction:"vertical",style:{width:"100%"}},{default:n(()=>[t(he,{value:"index"},{default:n(()=>[t(E,{border:"",class:"service-card gradient-right clickable mb-4",color:"primary",elevation:"8",hover:"",rounded:"xl",variant:"tonal",onClick:l.openClassworksKV},{default:n(()=>[t(ze,null,{default:n(()=>[...e[6]||(e[6]=[m("div",{class:"card-title"},[m("div",null,[m("div",{class:"text-h6"},"在寻找 Classworks KV ?"),m("div",{class:"text-caption text-medium-emphasis"}," 文档形键值数据库 ")])],-1)])]),_:1}),t(j,null,{default:n(()=>[m("div",Cl,[t(h,{"append-icon":"mdi-arrow-right",class:"text-none",rounded:"xl",variant:"text",onClick:l.openClassworksKV},{default:n(()=>[...e[7]||(e[7]=[o(" 打开 Classworks KV ",-1)])]),_:1},8,["onClick"])])]),_:1})]),_:1},8,["onClick"]),t(E,{border:"",class:"rounded-xl mb-4",subtitle:"设置",title:"Classworks"},{default:n(()=>[t(j,null,{default:n(()=>[t($,{class:"rounded-xl",color:"error",icon:"mdi-alert-circle",variant:"tonal"},{default:n(()=>[...e[8]||(e[8]=[o("Classworks 是开源免费的软件,官方没有提供任何形式的付费支持服务,源代码仓库地址在 ",-1),m("a",{href:"https://github.com/ZeroCatDev/Classworks",target:"_blank"},"https://github.com/ZeroCatDev/Classworks",-1),o("。如果您通过有偿协助等付费方式取得本应用,在遇到问题时请在与卖家约定的服务框架下,优先向卖家求助。如果卖家没有提供您预期的服务,请退款或通过其它形式积极维护您的合法权益。 ",-1)])]),_:1}),t($,{class:"mt-4 rounded-xl",color:"info",icon:"mdi-information",variant:"tonal"},{default:n(()=>[...e[9]||(e[9]=[o("请不要使用浏览器清除缓存功能,否则会导致配置丢失。 ",-1),m("del",null,"恶意的操作可能导致您受到贵校教师的处理 ",-1)])]),_:1}),t($,{class:"mt-4 rounded-xl",color:"warning",icon:"mdi-information",variant:"tonal"},{default:n(()=>[e[11]||(e[11]=m("p",null," 请不要使用包括但不限于360极速浏览器、360安全浏览器、夸克浏览器、QQ浏览器等浏览器使用 Classworks ,这些浏览器过时且存在严重的一致性问题。在Windows上,使用新版 Microsoft Edge 浏览器是最推荐的选择。 ",-1)),e[12]||(e[12]=m("p",{style:{color:"#666"}}," 上述浏览器商标为其所属公司所有,Classworks™ 与上述浏览器所属公司无竞争关系。 ",-1)),e[13]||(e[13]=m("br",null,null,-1)),t(h,{"append-icon":"mdi-open-in-new",class:"text-none rounded-xl",color:"warning",href:"https://www.microsoft.com/zh-cn/windows/microsoft-edge",target:"_blank",variant:"tonal"},{default:n(()=>[...e[10]||(e[10]=[o("下载 Microsoft Edge(微软边缘浏览器) ",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),t(r)]),_:1}),t(he,{value:"server"},{default:n(()=>[t(p,{loading:i.loading.server,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"]),t(u,{border:"",class:"mt-4"}),t(b,{border:"",class:"mt-4"})]),_:1}),t(he,{value:"student"},{default:n(()=>[t(T,{"is-mobile":d.isMobile,border:""},null,8,["is-mobile"]),t(I,{"is-mobile":d.isMobile,border:"",class:"mt-4"},null,8,["is-mobile"])]),_:1}),t(he,{value:"share"},{default:n(()=>[t(H,{border:"",class:"mt-4"})]),_:1}),t(he,{value:"refresh"},{default:n(()=>[t(G,{loading:i.loading.refresh,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"edit"},{default:n(()=>[t(Z,{loading:i.loading.edit,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"display"},{default:n(()=>[t(fe,{loading:i.loading.display,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"theme"},{default:n(()=>[t(pe,{loading:i.loading.theme,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"])]),_:1}),t(he,{value:"notification"},{default:n(()=>[t(me,{border:""})]),_:1}),t(he,{value:"hitokoto"},{default:n(()=>[t(se,{border:""})]),_:1}),t(he,{value:"randomPicker"},{default:n(()=>[t(be,{"is-mobile":d.isMobile,border:""},null,8,["is-mobile"])]),_:1}),t(he,{value:"subject"},{default:n(()=>[t(D,{border:""}),e[14]||(e[14]=m("br",null,null,-1)),t(V,{border:""})]),_:1}),t(he,{value:"developer"},{default:n(()=>[t(k,{border:"",icon:"mdi-developer-board",title:"开发者选项"},{default:n(()=>[t(J,null,{default:n(()=>[t(A,null,{prepend:n(()=>[t(v,{class:"mr-3",icon:"mdi-code-tags"})]),append:n(()=>[t(Tt,{modelValue:i.settings.developer.enabled,"onUpdate:modelValue":e[3]||(e[3]=W=>i.settings.developer.enabled=W),density:"comfortable","hide-details":"",onChange:l.handleDeveloperChange},null,8,["modelValue","onChange"])]),default:n(()=>[t(z,null,{default:n(()=>[...e[15]||(e[15]=[o("启用开发者选项",-1)])]),_:1}),t(ie,null,{default:n(()=>[...e[16]||(e[16]=[o("启用后可以查看和修改开发者设置 ",-1)])]),_:1})]),_:1})]),_:1})]),_:1}),t(N,{loading:i.loading.developer,border:"",onSaved:l.onSettingsSaved},null,8,["loading","onSaved"]),i.settings.developer.enabled?(c(),g(E,{key:0,border:"",class:"mt-4 rounded-lg"},{default:n(()=>[t(K,{class:"d-flex align-center"},{default:n(()=>[t(v,{class:"mr-2",icon:"mdi-cog-outline"}),e[17]||(e[17]=o(" 所有设置 ",-1))]),_:1}),t(Le,null,{default:n(()=>[...e[18]||(e[18]=[o(" 浏览和修改所有可用设置",-1)])]),_:1}),t(j,null,{default:n(()=>[t(Q,{onUpdate:l.onSettingUpdate},null,8,["onUpdate"])]),_:1})]),_:1})):y("",!0),i.settings.developer.enabled?(c(),g(O,{key:1,cols:"12"})):y("",!0)]),_:1}),t(he,{value:"about"},{default:n(()=>[t(r),t(le,{border:"",class:"mt-4"})]),_:1})]),_:1},8,["modelValue"])]),_:1}),t(_e,{ref:"messageLog"},null,512)])}const Ql=q(xl,[["render",_l]]);export{Ql as default}; diff --git a/assets/socket-debugger-qP6I1v4J.js b/assets/socket-debugger-DtAcJK1B.js similarity index 96% rename from assets/socket-debugger-qP6I1v4J.js rename to assets/socket-debugger-DtAcJK1B.js index ae6a682..351441b 100644 --- a/assets/socket-debugger-qP6I1v4J.js +++ b/assets/socket-debugger-DtAcJK1B.js @@ -1,4 +1,4 @@ -import{c as Ce,g as T,d as se}from"./socketClient-BEFY8Nxz.js";import{_ as we,a2 as c,Z as Se,ct as Le,o as x,j as G,w as t,c as n,l as g,q as D,t as L,v as o,x as re,A as u,z as k,P as Z,Q as y,a0 as _,a1 as V,K as ue,i as p,y as C,D as H,C as B,F as de,G as ie,d as $e,aw as Re,a3 as ce}from"./index-BUM0TY0E.js";import{V as W,a as m}from"./VRow-CPw1R1BU.js";import{V as X}from"./VChip-vdRDApTi.js";import{V as De}from"./VTextField-C579e7l1.js";import{V as Te}from"./VTextarea-jqnFSwaH.js";import{V as Ie}from"./VSwitch-CjVC2rsZ.js";import{V as Ue}from"./VAlert-DFIvt6kt.js";import{V as ze}from"./VContainer-DakLDC1m.js";import"./serverRotation-CjK7Y7P9.js";const Be={class:"d-flex flex-wrap gap-2"},Me={class:"text-h4"},Pe={class:"text-h4"},Ne={class:"text-h4"},Ee={class:"text-h4"},Oe={class:"log-time"},je={class:"log-type"},Ae={class:"log-message"},Fe={key:0,class:"log-data"},Je={key:0,class:"text-center text-disabled pa-8"},Ge={__name:"socket-debugger",setup(He){const fe=c(Ce()),$=c(!1),K=c(""),w=c(""),Y=c(0),h=c(""),M=c(null),q=c("00:00:00"),Q=c(!0),d=c({eventsReceived:0,eventsSent:0,errors:0,reconnects:0,avgLatency:0,lastPing:0,bytesSent:0,bytesReceived:0}),R=c([]),P=c(new Set),N=c(null),b=c({name:"",data:"{}"}),v=c(null),ee=ce(()=>$.value?{text:"已连接",color:"success"}:{text:"未连接",color:"error"}),me=ce(()=>w.value==="websocket"?"success":w.value==="polling"?"warning":"grey");function s(l,e,a=null){const f=new Date().toLocaleTimeString("zh-CN",{hour12:!1});R.value.push({type:l,message:e,data:a,time:f}),R.value.length>500&&R.value.shift(),Q.value&&Re(()=>{N.value&&(N.value.scrollTop=N.value.scrollHeight)})}function pe(){R.value=[],s("info","日志已清空")}function te(l){if(l===0)return"0 B";const e=1024,a=["B","KB","MB","GB"],i=Math.floor(Math.log(l)/Math.log(e));return Math.round(l/Math.pow(e,i)*100)/100+" "+a[i]}let S=null;function ve(){if(M.value){const e=Date.now()-M.value,a=Math.floor(e/36e5),i=Math.floor(e%36e5/6e4),f=Math.floor(e%6e4/1e3);q.value=`${String(a).padStart(2,"0")}:${String(i).padStart(2,"0")}:${String(f).padStart(2,"0")}`}else q.value="00:00:00"}let I=null;function ne(){var U;const l=T();I&&le();const e=()=>{var r,z,ae;$.value=!0,K.value=l.id,w.value=((ae=(z=(r=l.io)==null?void 0:r.engine)==null?void 0:z.transport)==null?void 0:ae.name)||"unknown",M.value=Date.now(),h.value=new Date().toLocaleString("zh-CN"),s("success","已连接到服务器",{socketId:l.id,transport:w.value}),S||(S=setInterval(ve,1e3))},a=r=>{$.value=!1,K.value="",w.value="",M.value=null,s("warning","连接已断开",{reason:r}),S&&(clearInterval(S),S=null)},i=r=>{d.value.errors++,s("error","连接错误",{message:r.message,type:r.type})},f=r=>{d.value.reconnects++,Y.value++,s("info",`重连成功 (尝试 #${r})`)},E=r=>{s("info",`正在尝试重连 #${r}...`)},O=r=>{d.value.errors++,s("error","重连失败",{message:r.message})},j=()=>{d.value.errors++,s("error","重连彻底失败")},A=()=>{s("debug","Ping 发送")},F=r=>{d.value.lastPing=r;const z=d.value.avgLatency;d.value.avgLatency=z===0?r:Math.round(z*.8+r*.2),s("debug",`Pong 接收 (${r}ms)`)},J=r=>{w.value=r.name,s("success",`传输已升级到 ${r.name}`)};I={socket:l,onConnect:e,onDisconnect:a,onConnectError:i,onReconnect:f,onReconnectAttempt:E,onReconnectError:O,onReconnectFailed:j,onPing:A,onPong:F,onUpgrade:J},l.on("connect",e),l.on("disconnect",a),l.on("connect_error",i),l.io.on("reconnect",f),l.io.on("reconnect_attempt",E),l.io.on("reconnect_error",O),l.io.on("reconnect_failed",j),l.io.on("ping",A),l.io.on("pong",F),(U=l.io)!=null&&U.engine&&l.io.engine.on("upgrade",J),P.value=new Set(Object.keys(l._callbacks||{}).map(r=>r.replace("$",""))),l.connected&&e()}function le(){var U;if(!I)return;const{socket:l,onConnect:e,onDisconnect:a,onConnectError:i,onReconnect:f,onReconnectAttempt:E,onReconnectError:O,onReconnectFailed:j,onPing:A,onPong:F,onUpgrade:J}=I;try{l.off("connect",e),l.off("disconnect",a),l.off("connect_error",i),l.io.off("reconnect",f),l.io.off("reconnect_attempt",E),l.io.off("reconnect_error",O),l.io.off("reconnect_failed",j),l.io.off("ping",A),l.io.off("pong",F),(U=l.io)!=null&&U.engine&&l.io.engine.off("upgrade",J)}catch{}I=null}function oe(){try{T().connect(),s("info","正在连接...")}catch(l){s("error","连接失败",{message:l.message})}}function ge(){try{se(),s("info","已手动断开连接")}catch(l){s("error","断开连接失败",{message:l.message})}}function ye(){try{se(),setTimeout(()=>{ne(),oe()},100)}catch(l){s("error","重连失败",{message:l.message})}}function _e(){try{const l=T();let e;try{e=JSON.parse(b.value.data)}catch{e=b.value.data}l.emit(b.value.name,e),d.value.eventsSent++,d.value.bytesSent+=JSON.stringify(e).length,s("info",`已发送事件: ${b.value.name}`,e)}catch(l){s("error","发送事件失败",{message:l.message})}}function ke(){v.value=null,s("info","开始连接测试...");const l=T(),e=setTimeout(()=>{v.value={type:"error",message:"连接测试超时 (20秒)"},s("error","连接测试超时")},2e4);l.connected?(clearTimeout(e),v.value={type:"success",message:`连接正常! Socket ID: ${l.id}, 传输: ${w.value}`},s("success","连接测试通过")):(l.once("connect",()=>{clearTimeout(e),v.value={type:"success",message:"连接测试成功!"},s("success","连接测试通过")}),l.once("connect_error",a=>{clearTimeout(e),v.value={type:"error",message:`连接失败: ${a.message}`},s("error","连接测试失败",{message:a.message})}))}function be(){const l=T(),e=Date.now();l.emit("ping",()=>{const a=Date.now()-e;v.value={type:"info",message:`测量延迟: ${a}ms`},s("info",`延迟测量结果: ${a}ms`)})}function xe(){s("warning","模拟错误场景..."),T().emit("nonexistent-event-test",{test:!0}),v.value={type:"info",message:"已发送测试事件到服务器,请检查服务器响应"}}function Ve(){const l=R.value.map(f=>`[${f.time}] [${f.type.toUpperCase()}] ${f.message}${f.data?` +import{c as Ce,g as T,d as se}from"./socketClient-BAypaVYV.js";import{_ as we,a2 as c,Z as Se,ct as Le,o as x,j as G,w as t,c as n,l as g,q as D,t as L,v as o,x as re,A as u,z as k,P as Z,Q as y,a0 as _,a1 as V,K as ue,i as p,y as C,D as H,C as B,F as de,G as ie,d as $e,aw as Re,a3 as ce}from"./index-BXl8SUNP.js";import{V as W,a as m}from"./VRow-DFPdcq_b.js";import{V as X}from"./VChip-jIQL7s_d.js";import{V as De}from"./VTextField-DxxbesnN.js";import{V as Te}from"./VTextarea-B0_PT1is.js";import{V as Ie}from"./VSwitch-7fkmr9E6.js";import{V as Ue}from"./VAlert-DncbAu3E.js";import{V as ze}from"./VContainer-Doz_PneH.js";import"./serverRotation-BBUKyTw9.js";const Be={class:"d-flex flex-wrap gap-2"},Me={class:"text-h4"},Pe={class:"text-h4"},Ne={class:"text-h4"},Ee={class:"text-h4"},Oe={class:"log-time"},je={class:"log-type"},Ae={class:"log-message"},Fe={key:0,class:"log-data"},Je={key:0,class:"text-center text-disabled pa-8"},Ge={__name:"socket-debugger",setup(He){const fe=c(Ce()),$=c(!1),K=c(""),w=c(""),Y=c(0),h=c(""),M=c(null),q=c("00:00:00"),Q=c(!0),d=c({eventsReceived:0,eventsSent:0,errors:0,reconnects:0,avgLatency:0,lastPing:0,bytesSent:0,bytesReceived:0}),R=c([]),P=c(new Set),N=c(null),b=c({name:"",data:"{}"}),v=c(null),ee=ce(()=>$.value?{text:"已连接",color:"success"}:{text:"未连接",color:"error"}),me=ce(()=>w.value==="websocket"?"success":w.value==="polling"?"warning":"grey");function s(l,e,a=null){const f=new Date().toLocaleTimeString("zh-CN",{hour12:!1});R.value.push({type:l,message:e,data:a,time:f}),R.value.length>500&&R.value.shift(),Q.value&&Re(()=>{N.value&&(N.value.scrollTop=N.value.scrollHeight)})}function pe(){R.value=[],s("info","日志已清空")}function te(l){if(l===0)return"0 B";const e=1024,a=["B","KB","MB","GB"],i=Math.floor(Math.log(l)/Math.log(e));return Math.round(l/Math.pow(e,i)*100)/100+" "+a[i]}let S=null;function ve(){if(M.value){const e=Date.now()-M.value,a=Math.floor(e/36e5),i=Math.floor(e%36e5/6e4),f=Math.floor(e%6e4/1e3);q.value=`${String(a).padStart(2,"0")}:${String(i).padStart(2,"0")}:${String(f).padStart(2,"0")}`}else q.value="00:00:00"}let I=null;function ne(){var U;const l=T();I&&le();const e=()=>{var r,z,ae;$.value=!0,K.value=l.id,w.value=((ae=(z=(r=l.io)==null?void 0:r.engine)==null?void 0:z.transport)==null?void 0:ae.name)||"unknown",M.value=Date.now(),h.value=new Date().toLocaleString("zh-CN"),s("success","已连接到服务器",{socketId:l.id,transport:w.value}),S||(S=setInterval(ve,1e3))},a=r=>{$.value=!1,K.value="",w.value="",M.value=null,s("warning","连接已断开",{reason:r}),S&&(clearInterval(S),S=null)},i=r=>{d.value.errors++,s("error","连接错误",{message:r.message,type:r.type})},f=r=>{d.value.reconnects++,Y.value++,s("info",`重连成功 (尝试 #${r})`)},E=r=>{s("info",`正在尝试重连 #${r}...`)},O=r=>{d.value.errors++,s("error","重连失败",{message:r.message})},j=()=>{d.value.errors++,s("error","重连彻底失败")},A=()=>{s("debug","Ping 发送")},F=r=>{d.value.lastPing=r;const z=d.value.avgLatency;d.value.avgLatency=z===0?r:Math.round(z*.8+r*.2),s("debug",`Pong 接收 (${r}ms)`)},J=r=>{w.value=r.name,s("success",`传输已升级到 ${r.name}`)};I={socket:l,onConnect:e,onDisconnect:a,onConnectError:i,onReconnect:f,onReconnectAttempt:E,onReconnectError:O,onReconnectFailed:j,onPing:A,onPong:F,onUpgrade:J},l.on("connect",e),l.on("disconnect",a),l.on("connect_error",i),l.io.on("reconnect",f),l.io.on("reconnect_attempt",E),l.io.on("reconnect_error",O),l.io.on("reconnect_failed",j),l.io.on("ping",A),l.io.on("pong",F),(U=l.io)!=null&&U.engine&&l.io.engine.on("upgrade",J),P.value=new Set(Object.keys(l._callbacks||{}).map(r=>r.replace("$",""))),l.connected&&e()}function le(){var U;if(!I)return;const{socket:l,onConnect:e,onDisconnect:a,onConnectError:i,onReconnect:f,onReconnectAttempt:E,onReconnectError:O,onReconnectFailed:j,onPing:A,onPong:F,onUpgrade:J}=I;try{l.off("connect",e),l.off("disconnect",a),l.off("connect_error",i),l.io.off("reconnect",f),l.io.off("reconnect_attempt",E),l.io.off("reconnect_error",O),l.io.off("reconnect_failed",j),l.io.off("ping",A),l.io.off("pong",F),(U=l.io)!=null&&U.engine&&l.io.engine.off("upgrade",J)}catch{}I=null}function oe(){try{T().connect(),s("info","正在连接...")}catch(l){s("error","连接失败",{message:l.message})}}function ge(){try{se(),s("info","已手动断开连接")}catch(l){s("error","断开连接失败",{message:l.message})}}function ye(){try{se(),setTimeout(()=>{ne(),oe()},100)}catch(l){s("error","重连失败",{message:l.message})}}function _e(){try{const l=T();let e;try{e=JSON.parse(b.value.data)}catch{e=b.value.data}l.emit(b.value.name,e),d.value.eventsSent++,d.value.bytesSent+=JSON.stringify(e).length,s("info",`已发送事件: ${b.value.name}`,e)}catch(l){s("error","发送事件失败",{message:l.message})}}function ke(){v.value=null,s("info","开始连接测试...");const l=T(),e=setTimeout(()=>{v.value={type:"error",message:"连接测试超时 (20秒)"},s("error","连接测试超时")},2e4);l.connected?(clearTimeout(e),v.value={type:"success",message:`连接正常! Socket ID: ${l.id}, 传输: ${w.value}`},s("success","连接测试通过")):(l.once("connect",()=>{clearTimeout(e),v.value={type:"success",message:"连接测试成功!"},s("success","连接测试通过")}),l.once("connect_error",a=>{clearTimeout(e),v.value={type:"error",message:`连接失败: ${a.message}`},s("error","连接测试失败",{message:a.message})}))}function be(){const l=T(),e=Date.now();l.emit("ping",()=>{const a=Date.now()-e;v.value={type:"info",message:`测量延迟: ${a}ms`},s("info",`延迟测量结果: ${a}ms`)})}function xe(){s("warning","模拟错误场景..."),T().emit("nonexistent-event-test",{test:!0}),v.value={type:"info",message:"已发送测试事件到服务器,请检查服务器响应"}}function Ve(){const l=R.value.map(f=>`[${f.time}] [${f.type.toUpperCase()}] ${f.message}${f.data?` `+JSON.stringify(f.data,null,2):""}`).join(` `),e=new Blob([l],{type:"text/plain"}),a=URL.createObjectURL(e),i=document.createElement("a");i.href=a,i.download=`socket-logs-${Date.now()}.txt`,i.click(),URL.revokeObjectURL(a),s("success","日志已导出")}return Se(()=>{ne(),s("info","Socket 调试器已初始化")}),Le(()=>{le(),S&&(clearInterval(S),S=null)}),(l,e)=>(x(),G(ze,{fluid:""},{default:t(()=>[n(W,null,{default:t(()=>[n(m,{cols:"12"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,{class:"d-flex align-center"},{default:t(()=>[n(L,{class:"mr-2",color:"primary"},{default:t(()=>[...e[4]||(e[4]=[o("mdi-network",-1)])]),_:1}),e[5]||(e[5]=o(" Socket.IO 连接调试器 ",-1)),n(re),n(X,{color:ee.value.color,size:"small"},{default:t(()=>[o(u(ee.value.text),1)]),_:1},8,["color"])]),_:1})]),_:1})]),_:1}),n(m,{cols:"12",md:"6"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,null,{default:t(()=>[...e[6]||(e[6]=[o("连接信息",-1)])]),_:1}),n(k,null,{default:t(()=>[n(Z,{density:"compact"},{default:t(()=>[n(y,null,{prepend:t(()=>[n(L,null,{default:t(()=>[...e[7]||(e[7]=[o("mdi-server",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[...e[8]||(e[8]=[o("服务器地址",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(fe.value),1)]),_:1})]),_:1}),n(y,null,{prepend:t(()=>[n(L,null,{default:t(()=>[...e[9]||(e[9]=[o("mdi-identifier",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[...e[10]||(e[10]=[o("Socket ID",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(K.value||"未连接"),1)]),_:1})]),_:1}),n(y,null,{prepend:t(()=>[n(L,null,{default:t(()=>[...e[11]||(e[11]=[o("mdi-transit-connection-variant",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[...e[12]||(e[12]=[o("传输方式",-1)])]),_:1}),n(V,null,{default:t(()=>[n(X,{size:"x-small",color:me.value},{default:t(()=>[o(u(w.value||"未知"),1)]),_:1},8,["color"])]),_:1})]),_:1}),n(y,null,{prepend:t(()=>[n(L,null,{default:t(()=>[...e[13]||(e[13]=[o("mdi-clock-outline",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[...e[14]||(e[14]=[o("连接时长",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(q.value),1)]),_:1})]),_:1}),n(y,null,{prepend:t(()=>[n(L,null,{default:t(()=>[...e[15]||(e[15]=[o("mdi-refresh",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[...e[16]||(e[16]=[o("重连次数",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(Y.value),1)]),_:1})]),_:1}),n(y,null,{prepend:t(()=>[n(L,null,{default:t(()=>[...e[17]||(e[17]=[o("mdi-calendar-clock",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[...e[18]||(e[18]=[o("上次连接",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(h.value||"从未连接"),1)]),_:1})]),_:1})]),_:1}),n(ue,{class:"my-4"}),p("div",Be,[n(C,{color:"primary","prepend-icon":"mdi-connection",disabled:$.value,onClick:oe},{default:t(()=>[...e[19]||(e[19]=[o(" 连接 ",-1)])]),_:1},8,["disabled"]),n(C,{color:"error","prepend-icon":"mdi-connection",disabled:!$.value,onClick:ge},{default:t(()=>[...e[20]||(e[20]=[o(" 断开 ",-1)])]),_:1},8,["disabled"]),n(C,{color:"warning","prepend-icon":"mdi-refresh",onClick:ye},{default:t(()=>[...e[21]||(e[21]=[o(" 重连 ",-1)])]),_:1}),n(C,{color:"info","prepend-icon":"mdi-delete-sweep",onClick:pe},{default:t(()=>[...e[22]||(e[22]=[o(" 清空日志 ",-1)])]),_:1})])]),_:1})]),_:1})]),_:1}),n(m,{cols:"12",md:"6"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,null,{default:t(()=>[...e[23]||(e[23]=[o("统计信息",-1)])]),_:1}),n(k,null,{default:t(()=>[n(W,null,{default:t(()=>[n(m,{cols:"6"},{default:t(()=>[n(g,{variant:"tonal",color:"success"},{default:t(()=>[n(k,{class:"text-center"},{default:t(()=>[p("div",Me,u(d.value.eventsReceived),1),e[24]||(e[24]=p("div",{class:"text-caption"},"接收事件",-1))]),_:1})]),_:1})]),_:1}),n(m,{cols:"6"},{default:t(()=>[n(g,{variant:"tonal",color:"primary"},{default:t(()=>[n(k,{class:"text-center"},{default:t(()=>[p("div",Pe,u(d.value.eventsSent),1),e[25]||(e[25]=p("div",{class:"text-caption"},"发送事件",-1))]),_:1})]),_:1})]),_:1}),n(m,{cols:"6"},{default:t(()=>[n(g,{variant:"tonal",color:"warning"},{default:t(()=>[n(k,{class:"text-center"},{default:t(()=>[p("div",Ne,u(d.value.errors),1),e[26]||(e[26]=p("div",{class:"text-caption"},"错误次数",-1))]),_:1})]),_:1})]),_:1}),n(m,{cols:"6"},{default:t(()=>[n(g,{variant:"tonal",color:"info"},{default:t(()=>[n(k,{class:"text-center"},{default:t(()=>[p("div",Ee,u(d.value.reconnects),1),e[27]||(e[27]=p("div",{class:"text-caption"},"重连次数",-1))]),_:1})]),_:1})]),_:1})]),_:1}),n(ue,{class:"my-4"}),n(Z,{density:"compact"},{default:t(()=>[n(y,null,{default:t(()=>[n(_,null,{default:t(()=>[...e[28]||(e[28]=[o("平均延迟",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(d.value.avgLatency)+" ms",1)]),_:1})]),_:1}),n(y,null,{default:t(()=>[n(_,null,{default:t(()=>[...e[29]||(e[29]=[o("上次 Ping",-1)])]),_:1}),n(V,null,{default:t(()=>[o(u(d.value.lastPing)+" ms",1)]),_:1})]),_:1}),n(y,null,{default:t(()=>[n(_,null,{default:t(()=>[...e[30]||(e[30]=[o("数据传输",-1)])]),_:1}),n(V,null,{default:t(()=>[o(" ↑ "+u(te(d.value.bytesSent))+" / ↓ "+u(te(d.value.bytesReceived)),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),n(m,{cols:"12",md:"6"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,null,{default:t(()=>[e[31]||(e[31]=o(" 事件监控 ",-1)),n(X,{class:"ml-2",size:"small"},{default:t(()=>[o(u(P.value.size)+" 个监听器",1)]),_:1})]),_:1}),n(k,null,{default:t(()=>[n(Z,{density:"compact","max-height":"300",style:{"overflow-y":"auto"}},{default:t(()=>[P.value.size===0?(x(),G(y,{key:0},{default:t(()=>[n(_,{class:"text-center text-disabled"},{default:t(()=>[...e[32]||(e[32]=[o(" 暂无活动监听器 ",-1)])]),_:1})]),_:1})):H("",!0),(x(!0),B(de,null,ie(Array.from(P.value),a=>(x(),G(y,{key:a},{prepend:t(()=>[n(L,{size:"small"},{default:t(()=>[...e[33]||(e[33]=[o("mdi-eye",-1)])]),_:1})]),default:t(()=>[n(_,null,{default:t(()=>[o(u(a),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1}),n(m,{cols:"12",md:"6"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,null,{default:t(()=>[...e[34]||(e[34]=[o("发送自定义事件",-1)])]),_:1}),n(k,null,{default:t(()=>[n(De,{modelValue:b.value.name,"onUpdate:modelValue":e[0]||(e[0]=a=>b.value.name=a),label:"事件名称","prepend-icon":"mdi-tag",density:"compact",class:"mb-2"},null,8,["modelValue"]),n(Te,{modelValue:b.value.data,"onUpdate:modelValue":e[1]||(e[1]=a=>b.value.data=a),label:"数据 (JSON)","prepend-icon":"mdi-code-json",rows:"4",density:"compact",class:"mb-2"},null,8,["modelValue"]),n(C,{block:"",color:"primary","prepend-icon":"mdi-send",disabled:!$.value||!b.value.name,onClick:_e},{default:t(()=>[...e[35]||(e[35]=[o(" 发送事件 ",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})]),_:1}),n(m,{cols:"12"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,{class:"d-flex align-center"},{default:t(()=>[e[37]||(e[37]=o(" 连接日志 ",-1)),n(re),n(Ie,{modelValue:Q.value,"onUpdate:modelValue":e[2]||(e[2]=a=>Q.value=a),label:"自动滚动",density:"compact","hide-details":"",class:"mr-4"},null,8,["modelValue"]),n(C,{size:"small",variant:"text","prepend-icon":"mdi-download",onClick:Ve},{default:t(()=>[...e[36]||(e[36]=[o(" 导出 ",-1)])]),_:1})]),_:1}),n(k,null,{default:t(()=>[p("div",{ref_key:"logContainer",ref:N,class:"log-container",style:{height:"400px","overflow-y":"auto",background:"#1e1e1e","border-radius":"4px",padding:"12px"}},[(x(!0),B(de,null,ie(R.value,(a,i)=>(x(),B("div",{key:i,class:$e(["log-entry",`log-${a.type}`])},[p("span",Oe,"["+u(a.time)+"]",1),p("span",je,"["+u(a.type.toUpperCase())+"]",1),p("span",Ae,u(a.message),1),a.data?(x(),B("pre",Fe,u(a.data),1)):H("",!0)],2))),128)),R.value.length===0?(x(),B("div",Je," 暂无日志 ")):H("",!0)],512)]),_:1})]),_:1})]),_:1}),n(m,{cols:"12"},{default:t(()=>[n(g,{border:""},{default:t(()=>[n(D,null,{default:t(()=>[...e[38]||(e[38]=[o("连接诊断",-1)])]),_:1}),n(k,null,{default:t(()=>[n(W,null,{default:t(()=>[n(m,{cols:"12",md:"4"},{default:t(()=>[n(C,{block:"",color:"info","prepend-icon":"mdi-test-tube",onClick:ke},{default:t(()=>[...e[39]||(e[39]=[o(" 测试连接 ",-1)])]),_:1})]),_:1}),n(m,{cols:"12",md:"4"},{default:t(()=>[n(C,{block:"",color:"success","prepend-icon":"mdi-timer",disabled:!$.value,onClick:be},{default:t(()=>[...e[40]||(e[40]=[o(" 测量延迟 ",-1)])]),_:1},8,["disabled"])]),_:1}),n(m,{cols:"12",md:"4"},{default:t(()=>[n(C,{block:"",color:"warning","prepend-icon":"mdi-alert",onClick:xe},{default:t(()=>[...e[41]||(e[41]=[o(" 模拟错误 ",-1)])]),_:1})]),_:1})]),_:1}),v.value?(x(),G(Ue,{key:0,type:v.value.type,class:"mt-4",closable:"","onClick:close":e[3]||(e[3]=a=>v.value=null)},{default:t(()=>[o(u(v.value.message),1)]),_:1},8,["type"])):H("",!0)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}))}},nt=we(Ge,[["__scopeId","data-v-59f4b407"]]);export{nt as default}; diff --git a/assets/socketClient-BEFY8Nxz.js b/assets/socketClient-BAypaVYV.js similarity index 99% rename from assets/socketClient-BEFY8Nxz.js rename to assets/socketClient-BAypaVYV.js index f94a4ee..e128f7d 100644 --- a/assets/socketClient-BEFY8Nxz.js +++ b/assets/socketClient-BAypaVYV.js @@ -1 +1 @@ -import{k as pe}from"./index-BUM0TY0E.js";import{i as de,g as ye}from"./serverRotation-CjK7Y7P9.js";const m=Object.create(null);m.open="0";m.close="1";m.ping="2";m.pong="3";m.message="4";m.upgrade="5";m.noop="6";const O=Object.create(null);Object.keys(m).forEach(n=>{O[m[n]]=n});const U={type:"error",data:"parser error"},ee=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",te=typeof ArrayBuffer=="function",se=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer,W=({type:n,data:e},t,s)=>ee&&e instanceof Blob?t?s(e):X(e,s):te&&(e instanceof ArrayBuffer||se(e))?t?s(e):X(new Blob([e]),s):s(m[n]+(e||"")),X=(n,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(n)};function Q(n){return n instanceof Uint8Array?n:n instanceof ArrayBuffer?new Uint8Array(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let P;function me(n,e){if(ee&&n.data instanceof Blob)return n.data.arrayBuffer().then(Q).then(e);if(te&&(n.data instanceof ArrayBuffer||se(n.data)))return e(Q(n.data));W(n,!1,t=>{P||(P=new TextEncoder),e(P.encode(t))})}const j="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",k=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let n=0;n{let e=n.length*.75,t=n.length,s,i=0,r,o,c,h;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);const g=new ArrayBuffer(e),l=new Uint8Array(g);for(s=0;s>4,l[i++]=(o&15)<<4|c>>2,l[i++]=(c&3)<<6|h&63;return g},_e=typeof ArrayBuffer=="function",$=(n,e)=>{if(typeof n!="string")return{type:"message",data:ne(n,e)};const t=n.charAt(0);return t==="b"?{type:"message",data:be(n.substring(1),e)}:O[t]?n.length>1?{type:O[t],data:n.substring(1)}:{type:O[t]}:U},be=(n,e)=>{if(_e){const t=ge(n);return ne(t,e)}else return{base64:!0,data:n}},ne=(n,e)=>{switch(e){case"blob":return n instanceof Blob?n:new Blob([n]);case"arraybuffer":default:return n instanceof ArrayBuffer?n:n.buffer}},ie="",we=(n,e)=>{const t=n.length,s=new Array(t);let i=0;n.forEach((r,o)=>{W(r,!1,c=>{s[o]=c,++i===t&&e(s.join(ie))})})},ve=(n,e)=>{const t=n.split(ie),s=[];for(let i=0;i{const s=t.length;let i;if(s<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,s);else if(s<65536){i=new Uint8Array(3);const r=new DataView(i.buffer);r.setUint8(0,126),r.setUint16(1,s)}else{i=new Uint8Array(9);const r=new DataView(i.buffer);r.setUint8(0,127),r.setBigUint64(1,BigInt(s))}n.data&&typeof n.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}let q;function A(n){return n.reduce((e,t)=>e+t.length,0)}function R(n,e){if(n[0].length===e)return n.shift();const t=new Uint8Array(e);let s=0;for(let i=0;iMath.pow(2,21)-1){c.enqueue(U);break}i=l*Math.pow(2,32)+g.getUint32(4),s=3}else{if(A(t)n){c.enqueue(U);break}}}})}const re=4;function u(n){if(n)return Te(n)}function Te(n){for(var e in u.prototype)n[e]=u.prototype[e];return n}u.prototype.on=u.prototype.addEventListener=function(n,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+n]=this._callbacks["$"+n]||[]).push(e),this};u.prototype.once=function(n,e){function t(){this.off(n,t),e.apply(this,arguments)}return t.fn=e,this.on(n,t),this};u.prototype.off=u.prototype.removeListener=u.prototype.removeAllListeners=u.prototype.removeEventListener=function(n,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+n];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+n],this;for(var s,i=0;iPromise.resolve().then(e):(e,t)=>t(e,0),p=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),Ae="arraybuffer";function oe(n,...e){return e.reduce((t,s)=>(n.hasOwnProperty(s)&&(t[s]=n[s]),t),{})}const Re=p.setTimeout,Oe=p.clearTimeout;function N(n,e){e.useNativeTimers?(n.setTimeoutFn=Re.bind(p),n.clearTimeoutFn=Oe.bind(p)):(n.setTimeoutFn=p.setTimeout.bind(p),n.clearTimeoutFn=p.clearTimeout.bind(p))}const Se=1.33;function Ce(n){return typeof n=="string"?Be(n):Math.ceil((n.byteLength||n.size)*Se)}function Be(n){let e=0,t=0;for(let s=0,i=n.length;s=57344?t+=3:(s++,t+=4);return t}function ae(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function xe(n){let e="";for(let t in n)n.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return e}function Ne(n){let e={},t=n.split("&");for(let s=0,i=t.length;s{this.readyState="paused",e()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||t()})),this.writable||(s++,this.once("drain",function(){--s||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};ve(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,we(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=ae()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let ce=!1;try{ce=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const qe=ce;function De(){}class Ue extends Pe{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let s=location.port;s||(s=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||s!==e.port}}doWrite(e,t){const s=this.request({method:"POST",data:e});s.on("success",t),s.on("error",(i,r)=>{this.onError("xhr post error",i,r)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,s)=>{this.onError("xhr poll error",t,s)}),this.pollXhr=e}}class y extends u{constructor(e,t,s){super(),this.createRequest=e,N(this,s),this._opts=s,this._method=s.method||"GET",this._uri=t,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var e;const t=oe(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(t);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&s.setRequestHeader(i,this._opts.extraHeaders[i])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var i;s.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=y.requestsCount++,y.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=De,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete y.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}y.requestsCount=0;y.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",G);else if(typeof addEventListener=="function"){const n="onpagehide"in p?"pagehide":"unload";addEventListener(n,G,!1)}}function G(){for(let n in y.requests)y.requests.hasOwnProperty(n)&&y.requests[n].abort()}const Ie=function(){const n=he({xdomain:!1});return n&&n.responseType!==null}();class Ve extends Ue{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=Ie&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new y(he,this.uri(),e)}}function he(n){const e=n.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||qe))return new XMLHttpRequest}catch{}if(!e)try{return new p[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const ue=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class Fe extends Y{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=ue?{}:oe(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,s)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.doWrite(s,r)}catch{}i&&x(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=ae()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const D=p.WebSocket||p.MozWebSocket;class Me extends Fe{createSocket(e,t,s){return ue?new D(e,t,s):t?new D(e,t):new D(e)}doWrite(e,t){this.ws.send(t)}}class He extends Y{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=ke(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),i=Ee();i.readable.pipeTo(e.writable),this._writer=i.writable.getWriter();const r=()=>{s.read().then(({done:c,value:h})=>{c||(this.onPacket(h),r())}).catch(c=>{})};r();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t{i&&x(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const Ke={websocket:Me,webtransport:He,polling:Ve},We=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,$e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function I(n){if(n.length>8e3)throw"URI too long";const e=n,t=n.indexOf("["),s=n.indexOf("]");t!=-1&&s!=-1&&(n=n.substring(0,t)+n.substring(t,s).replace(/:/g,";")+n.substring(s,n.length));let i=We.exec(n||""),r={},o=14;for(;o--;)r[$e[o]]=i[o]||"";return t!=-1&&s!=-1&&(r.source=e,r.host=r.host.substring(1,r.host.length-1).replace(/;/g,":"),r.authority=r.authority.replace("[","").replace("]","").replace(/;/g,":"),r.ipv6uri=!0),r.pathNames=Ye(r,r.path),r.queryKey=ze(r,r.query),r}function Ye(n,e){const t=/\/{2,9}/g,s=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&s.splice(0,1),e.slice(-1)=="/"&&s.splice(s.length-1,1),s}function ze(n,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,i,r){i&&(t[i]=r)}),t}const V=typeof addEventListener=="function"&&typeof removeEventListener=="function",S=[];V&&addEventListener("offline",()=>{S.forEach(n=>n())},!1);class b extends u{constructor(e,t){if(super(),this.binaryType=Ae,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const s=I(e);t.hostname=s.host,t.secure=s.protocol==="https"||s.protocol==="wss",t.port=s.port,s.query&&(t.query=s.query)}else t.host&&(t.hostname=I(t.host).host);N(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(s=>{const i=s.prototype.name;this.transports.push(i),this._transportsByName[i]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Ne(this.opts.query)),V&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},S.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=re,t.transport=e,this.id&&(t.sid=this.id);const s=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&b.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",b.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let s=0;s0&&t>this._maxPayload)return this.writeBuffer.slice(0,s);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,x(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,s){return this._sendPacket("message",e,t,s),this}send(e,t,s){return this._sendPacket("message",e,t,s),this}_sendPacket(e,t,s,i){if(typeof t=="function"&&(i=t,t=void 0),typeof s=="function"&&(i=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const r={type:e,data:t,options:s};this.emitReserved("packetCreate",r),this.writeBuffer.push(r),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},s=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():e()}):this.upgrading?s():e()),this}_onError(e){if(b.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),V&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=S.indexOf(this._offlineEventListener);s!==-1&&S.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}b.protocol=re;class Je extends b{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",_=>{if(!s)if(_.type==="pong"&&_.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;b.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const v=new Error("probe error");v.transport=t.name,this.emitReserved("upgradeError",v)}}))};function r(){s||(s=!0,l(),t.close(),t=null)}const o=_=>{const v=new Error("probe error: "+_);v.transport=t.name,r(),this.emitReserved("upgradeError",v)};function c(){o("transport closed")}function h(){o("socket closed")}function g(_){t&&_.name!==t.name&&r()}const l=()=>{t.removeListener("open",i),t.removeListener("error",o),t.removeListener("close",c),this.off("close",h),this.off("upgrading",g)};t.once("open",i),t.once("error",o),t.once("close",c),this.once("close",h),this.once("upgrading",g),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{s||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let s=0;sKe[i]).filter(i=>!!i)),super(e,s)}};function Qe(n,e="",t){let s=n;t=t||typeof location<"u"&&location,n==null&&(n=t.protocol+"//"+t.host),typeof n=="string"&&(n.charAt(0)==="/"&&(n.charAt(1)==="/"?n=t.protocol+n:n=t.host+n),/^(https?|wss?):\/\//.test(n)||(typeof t<"u"?n=t.protocol+"//"+n:n="https://"+n),s=I(n)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const r=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+r+":"+s.port+e,s.href=s.protocol+"://"+r+(t&&t.port===s.port?"":":"+s.port),s}const je=typeof ArrayBuffer=="function",Ge=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n.buffer instanceof ArrayBuffer,fe=Object.prototype.toString,Ze=typeof Blob=="function"||typeof Blob<"u"&&fe.call(Blob)==="[object BlobConstructor]",et=typeof File=="function"||typeof File<"u"&&fe.call(File)==="[object FileConstructor]";function z(n){return je&&(n instanceof ArrayBuffer||Ge(n))||Ze&&n instanceof Blob||et&&n instanceof File}function C(n,e){if(!n||typeof n!="object")return!1;if(Array.isArray(n)){for(let t=0,s=n.length;t=0&&n.num{delete this.acks[e];for(let c=0;c{this.io.clearTimeoutFn(r),t.apply(this,c)};o.withError=!0,this.acks[e]=o}emitWithAck(e,...t){return new Promise((s,i)=>{const r=(o,c)=>o?i(o):s(c);r.withError=!0,t.push(r),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...r)=>(this._queue[0],i!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(i)):(this._queue.shift(),t&&t(null,...r)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:a.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(s=>String(s.id)===e)){const s=this.acks[e];delete this.acks[e],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case a.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case a.EVENT:case a.BINARY_EVENT:this.onevent(e);break;case a.ACK:case a.BINARY_ACK:this.onack(e);break;case a.DISCONNECT:this.ondisconnect();break;case a.CONNECT_ERROR:this.destroy();const s=new Error(e.data.message);s.data=e.data.data,this.emitReserved("connect_error",s);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const s of t)s.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let s=!1;return function(...i){s||(s=!0,t.packet({type:a.ACK,id:e,data:i}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:a.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let s=0;s0&&n.jitter<=1?n.jitter:0,this.attempts=0}w.prototype.duration=function(){var n=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*n);n=Math.floor(e*10)&1?n+t:n-t}return Math.min(n,this.max)|0};w.prototype.reset=function(){this.attempts=0};w.prototype.setMin=function(n){this.ms=n};w.prototype.setMax=function(n){this.max=n};w.prototype.setJitter=function(n){this.jitter=n};class H extends u{constructor(e,t){var s;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,N(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((s=t.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new w({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||ot;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new Xe(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const i=d(t,"open",function(){s.onopen(),e&&e()}),r=c=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",c),e?e(c):this.maybeReconnectOnOpen()},o=d(t,"error",r);if(this._timeout!==!1){const c=this._timeout,h=this.setTimeoutFn(()=>{i(),r(new Error("timeout")),t.close()},c);this.opts.autoUnref&&h.unref(),this.subs.push(()=>{this.clearTimeoutFn(h)})}return this.subs.push(i),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(d(e,"ping",this.onping.bind(this)),d(e,"data",this.ondata.bind(this)),d(e,"error",this.onerror.bind(this)),d(e,"close",this.onclose.bind(this)),d(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){x(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let s=this.nsps[e];return s?this._autoConnect&&!s.active&&s.connect():(s=new le(this,e,t),this.nsps[e]=s),s}_destroy(e){const t=Object.keys(this.nsps);for(const s of t)if(this.nsps[s].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let s=0;se()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},t);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const E={};function B(n,e){typeof n=="object"&&(e=n,n=void 0),e=e||{};const t=Qe(n,e.path||"/socket.io"),s=t.source,i=t.id,r=t.path,o=E[i]&&r in E[i].nsps,c=e.forceNew||e["force new connection"]||e.multiplex===!1||o;let h;return c?h=new H(s,e):(E[i]||(E[i]=new H(s,e)),h=E[i]),t.query&&!e.query&&(e.query=t.queryKey),h.socket(t.path,e)}Object.assign(B,{Manager:H,Socket:le,io:B,connect:B});let f=null,K=null;const T=new Set;function ct(){var t,s;if(de())return ye();const n=pe("server.domain"),e=(s=(t=import.meta)==null?void 0:t.env)==null?void 0:s.VITE_SERVER_URL;return n||e||window.location.origin}function L(){const n=ct();if(!f||K!==n){if(f){try{f.disconnect()}catch{}f=null}K=n,f=B(n,{transports:["polling","websocket"]}),T.forEach(({event:e,handler:t})=>{f.on(e,t)})}return f}function pt(n,e){return L().on(n,e),T.add({event:n,handler:e}),()=>ht(n,e)}function ht(n,e){if(f){f.off(n,e);for(const t of Array.from(T))t.event===n&&t.handler===e&&T.delete(t)}}function dt(n){const e=L();n&&e.emit("join-token",{token:n})}function yt(n){f&&f.emit("leave-token",{token:n})}function mt(){f&&f.emit("leave-all")}function gt(n){const e=L();return e.on("connect",n),()=>e.off("connect",n)}function _t(n,e=null){L().emit("send-event",{type:n,content:e})}function bt(){if(f){try{f.disconnect()}catch{}f=null,K=null,T.clear()}}export{gt as a,yt as b,ct as c,bt as d,L as g,dt as j,mt as l,pt as o,_t as s}; +import{k as pe}from"./index-BXl8SUNP.js";import{i as de,g as ye}from"./serverRotation-BBUKyTw9.js";const m=Object.create(null);m.open="0";m.close="1";m.ping="2";m.pong="3";m.message="4";m.upgrade="5";m.noop="6";const O=Object.create(null);Object.keys(m).forEach(n=>{O[m[n]]=n});const U={type:"error",data:"parser error"},ee=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",te=typeof ArrayBuffer=="function",se=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer,W=({type:n,data:e},t,s)=>ee&&e instanceof Blob?t?s(e):X(e,s):te&&(e instanceof ArrayBuffer||se(e))?t?s(e):X(new Blob([e]),s):s(m[n]+(e||"")),X=(n,e)=>{const t=new FileReader;return t.onload=function(){const s=t.result.split(",")[1];e("b"+(s||""))},t.readAsDataURL(n)};function Q(n){return n instanceof Uint8Array?n:n instanceof ArrayBuffer?new Uint8Array(n):new Uint8Array(n.buffer,n.byteOffset,n.byteLength)}let P;function me(n,e){if(ee&&n.data instanceof Blob)return n.data.arrayBuffer().then(Q).then(e);if(te&&(n.data instanceof ArrayBuffer||se(n.data)))return e(Q(n.data));W(n,!1,t=>{P||(P=new TextEncoder),e(P.encode(t))})}const j="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",k=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let n=0;n{let e=n.length*.75,t=n.length,s,i=0,r,o,c,h;n[n.length-1]==="="&&(e--,n[n.length-2]==="="&&e--);const g=new ArrayBuffer(e),l=new Uint8Array(g);for(s=0;s>4,l[i++]=(o&15)<<4|c>>2,l[i++]=(c&3)<<6|h&63;return g},_e=typeof ArrayBuffer=="function",$=(n,e)=>{if(typeof n!="string")return{type:"message",data:ne(n,e)};const t=n.charAt(0);return t==="b"?{type:"message",data:be(n.substring(1),e)}:O[t]?n.length>1?{type:O[t],data:n.substring(1)}:{type:O[t]}:U},be=(n,e)=>{if(_e){const t=ge(n);return ne(t,e)}else return{base64:!0,data:n}},ne=(n,e)=>{switch(e){case"blob":return n instanceof Blob?n:new Blob([n]);case"arraybuffer":default:return n instanceof ArrayBuffer?n:n.buffer}},ie="",we=(n,e)=>{const t=n.length,s=new Array(t);let i=0;n.forEach((r,o)=>{W(r,!1,c=>{s[o]=c,++i===t&&e(s.join(ie))})})},ve=(n,e)=>{const t=n.split(ie),s=[];for(let i=0;i{const s=t.length;let i;if(s<126)i=new Uint8Array(1),new DataView(i.buffer).setUint8(0,s);else if(s<65536){i=new Uint8Array(3);const r=new DataView(i.buffer);r.setUint8(0,126),r.setUint16(1,s)}else{i=new Uint8Array(9);const r=new DataView(i.buffer);r.setUint8(0,127),r.setBigUint64(1,BigInt(s))}n.data&&typeof n.data!="string"&&(i[0]|=128),e.enqueue(i),e.enqueue(t)})}})}let q;function A(n){return n.reduce((e,t)=>e+t.length,0)}function R(n,e){if(n[0].length===e)return n.shift();const t=new Uint8Array(e);let s=0;for(let i=0;iMath.pow(2,21)-1){c.enqueue(U);break}i=l*Math.pow(2,32)+g.getUint32(4),s=3}else{if(A(t)n){c.enqueue(U);break}}}})}const re=4;function u(n){if(n)return Te(n)}function Te(n){for(var e in u.prototype)n[e]=u.prototype[e];return n}u.prototype.on=u.prototype.addEventListener=function(n,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+n]=this._callbacks["$"+n]||[]).push(e),this};u.prototype.once=function(n,e){function t(){this.off(n,t),e.apply(this,arguments)}return t.fn=e,this.on(n,t),this};u.prototype.off=u.prototype.removeListener=u.prototype.removeAllListeners=u.prototype.removeEventListener=function(n,e){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var t=this._callbacks["$"+n];if(!t)return this;if(arguments.length==1)return delete this._callbacks["$"+n],this;for(var s,i=0;iPromise.resolve().then(e):(e,t)=>t(e,0),p=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),Ae="arraybuffer";function oe(n,...e){return e.reduce((t,s)=>(n.hasOwnProperty(s)&&(t[s]=n[s]),t),{})}const Re=p.setTimeout,Oe=p.clearTimeout;function N(n,e){e.useNativeTimers?(n.setTimeoutFn=Re.bind(p),n.clearTimeoutFn=Oe.bind(p)):(n.setTimeoutFn=p.setTimeout.bind(p),n.clearTimeoutFn=p.clearTimeout.bind(p))}const Se=1.33;function Ce(n){return typeof n=="string"?Be(n):Math.ceil((n.byteLength||n.size)*Se)}function Be(n){let e=0,t=0;for(let s=0,i=n.length;s=57344?t+=3:(s++,t+=4);return t}function ae(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function xe(n){let e="";for(let t in n)n.hasOwnProperty(t)&&(e.length&&(e+="&"),e+=encodeURIComponent(t)+"="+encodeURIComponent(n[t]));return e}function Ne(n){let e={},t=n.split("&");for(let s=0,i=t.length;s{this.readyState="paused",e()};if(this._polling||!this.writable){let s=0;this._polling&&(s++,this.once("pollComplete",function(){--s||t()})),this.writable||(s++,this.once("drain",function(){--s||t()}))}else t()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(e){const t=s=>{if(this.readyState==="opening"&&s.type==="open"&&this.onOpen(),s.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(s)};ve(e,this.socket.binaryType).forEach(t),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){const e=()=>{this.write([{type:"close"}])};this.readyState==="open"?e():this.once("open",e)}write(e){this.writable=!1,we(e,t=>{this.doWrite(t,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){const e=this.opts.secure?"https":"http",t=this.query||{};return this.opts.timestampRequests!==!1&&(t[this.opts.timestampParam]=ae()),!this.supportsBinary&&!t.sid&&(t.b64=1),this.createUri(e,t)}}let ce=!1;try{ce=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}const qe=ce;function De(){}class Ue extends Pe{constructor(e){if(super(e),typeof location<"u"){const t=location.protocol==="https:";let s=location.port;s||(s=t?"443":"80"),this.xd=typeof location<"u"&&e.hostname!==location.hostname||s!==e.port}}doWrite(e,t){const s=this.request({method:"POST",data:e});s.on("success",t),s.on("error",(i,r)=>{this.onError("xhr post error",i,r)})}doPoll(){const e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(t,s)=>{this.onError("xhr poll error",t,s)}),this.pollXhr=e}}class y extends u{constructor(e,t,s){super(),this.createRequest=e,N(this,s),this._opts=s,this._method=s.method||"GET",this._uri=t,this._data=s.data!==void 0?s.data:null,this._create()}_create(){var e;const t=oe(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");t.xdomain=!!this._opts.xd;const s=this._xhr=this.createRequest(t);try{s.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){s.setDisableHeaderCheck&&s.setDisableHeaderCheck(!0);for(let i in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(i)&&s.setRequestHeader(i,this._opts.extraHeaders[i])}}catch{}if(this._method==="POST")try{s.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{s.setRequestHeader("Accept","*/*")}catch{}(e=this._opts.cookieJar)===null||e===void 0||e.addCookies(s),"withCredentials"in s&&(s.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(s.timeout=this._opts.requestTimeout),s.onreadystatechange=()=>{var i;s.readyState===3&&((i=this._opts.cookieJar)===null||i===void 0||i.parseCookies(s.getResponseHeader("set-cookie"))),s.readyState===4&&(s.status===200||s.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof s.status=="number"?s.status:0)},0))},s.send(this._data)}catch(i){this.setTimeoutFn(()=>{this._onError(i)},0);return}typeof document<"u"&&(this._index=y.requestsCount++,y.requests[this._index]=this)}_onError(e){this.emitReserved("error",e,this._xhr),this._cleanup(!0)}_cleanup(e){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=De,e)try{this._xhr.abort()}catch{}typeof document<"u"&&delete y.requests[this._index],this._xhr=null}}_onLoad(){const e=this._xhr.responseText;e!==null&&(this.emitReserved("data",e),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}}y.requestsCount=0;y.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",G);else if(typeof addEventListener=="function"){const n="onpagehide"in p?"pagehide":"unload";addEventListener(n,G,!1)}}function G(){for(let n in y.requests)y.requests.hasOwnProperty(n)&&y.requests[n].abort()}const Ie=function(){const n=he({xdomain:!1});return n&&n.responseType!==null}();class Ve extends Ue{constructor(e){super(e);const t=e&&e.forceBase64;this.supportsBinary=Ie&&!t}request(e={}){return Object.assign(e,{xd:this.xd},this.opts),new y(he,this.uri(),e)}}function he(n){const e=n.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!e||qe))return new XMLHttpRequest}catch{}if(!e)try{return new p[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}const ue=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative";class Fe extends Y{get name(){return"websocket"}doOpen(){const e=this.uri(),t=this.opts.protocols,s=ue?{}:oe(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(s.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(e,t,s)}catch(i){return this.emitReserved("error",i)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=e=>this.onClose({description:"websocket connection closed",context:e}),this.ws.onmessage=e=>this.onData(e.data),this.ws.onerror=e=>this.onError("websocket error",e)}write(e){this.writable=!1;for(let t=0;t{try{this.doWrite(s,r)}catch{}i&&x(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){const e=this.opts.secure?"wss":"ws",t=this.query||{};return this.opts.timestampRequests&&(t[this.opts.timestampParam]=ae()),this.supportsBinary||(t.b64=1),this.createUri(e,t)}}const D=p.WebSocket||p.MozWebSocket;class Me extends Fe{createSocket(e,t,s){return ue?new D(e,t,s):t?new D(e,t):new D(e)}doWrite(e,t){this.ws.send(t)}}class He extends Y{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(e){return this.emitReserved("error",e)}this._transport.closed.then(()=>{this.onClose()}).catch(e=>{this.onError("webtransport error",e)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(e=>{const t=ke(Number.MAX_SAFE_INTEGER,this.socket.binaryType),s=e.readable.pipeThrough(t).getReader(),i=Ee();i.readable.pipeTo(e.writable),this._writer=i.writable.getWriter();const r=()=>{s.read().then(({done:c,value:h})=>{c||(this.onPacket(h),r())}).catch(c=>{})};r();const o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(e){this.writable=!1;for(let t=0;t{i&&x(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var e;(e=this._transport)===null||e===void 0||e.close()}}const Ke={websocket:Me,webtransport:He,polling:Ve},We=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,$e=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function I(n){if(n.length>8e3)throw"URI too long";const e=n,t=n.indexOf("["),s=n.indexOf("]");t!=-1&&s!=-1&&(n=n.substring(0,t)+n.substring(t,s).replace(/:/g,";")+n.substring(s,n.length));let i=We.exec(n||""),r={},o=14;for(;o--;)r[$e[o]]=i[o]||"";return t!=-1&&s!=-1&&(r.source=e,r.host=r.host.substring(1,r.host.length-1).replace(/;/g,":"),r.authority=r.authority.replace("[","").replace("]","").replace(/;/g,":"),r.ipv6uri=!0),r.pathNames=Ye(r,r.path),r.queryKey=ze(r,r.query),r}function Ye(n,e){const t=/\/{2,9}/g,s=e.replace(t,"/").split("/");return(e.slice(0,1)=="/"||e.length===0)&&s.splice(0,1),e.slice(-1)=="/"&&s.splice(s.length-1,1),s}function ze(n,e){const t={};return e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(s,i,r){i&&(t[i]=r)}),t}const V=typeof addEventListener=="function"&&typeof removeEventListener=="function",S=[];V&&addEventListener("offline",()=>{S.forEach(n=>n())},!1);class b extends u{constructor(e,t){if(super(),this.binaryType=Ae,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,e&&typeof e=="object"&&(t=e,e=null),e){const s=I(e);t.hostname=s.host,t.secure=s.protocol==="https"||s.protocol==="wss",t.port=s.port,s.query&&(t.query=s.query)}else t.host&&(t.hostname=I(t.host).host);N(this,t),this.secure=t.secure!=null?t.secure:typeof location<"u"&&location.protocol==="https:",t.hostname&&!t.port&&(t.port=this.secure?"443":"80"),this.hostname=t.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=t.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},t.transports.forEach(s=>{const i=s.prototype.name;this.transports.push(i),this._transportsByName[i]=s}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},t),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=Ne(this.opts.query)),V&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},S.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(e){const t=Object.assign({},this.opts.query);t.EIO=re,t.transport=e,this.id&&(t.sid=this.id);const s=Object.assign({},this.opts,{query:t,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[e]);return new this._transportsByName[e](s)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}const e=this.opts.rememberUpgrade&&b.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";const t=this.createTransport(e);t.open(),this.setTransport(t)}setTransport(e){this.transport&&this.transport.removeAllListeners(),this.transport=e,e.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",t=>this._onClose("transport close",t))}onOpen(){this.readyState="open",b.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",e),this.emitReserved("heartbeat"),e.type){case"open":this.onHandshake(JSON.parse(e.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":const t=new Error("server error");t.code=e.data,this._onError(t);break;case"message":this.emitReserved("data",e.data),this.emitReserved("message",e.data);break}}onHandshake(e){this.emitReserved("handshake",e),this.id=e.sid,this.transport.query.sid=e.sid,this._pingInterval=e.pingInterval,this._pingTimeout=e.pingTimeout,this._maxPayload=e.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);const e=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+e,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},e),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){const e=this._getWritablePackets();this.transport.send(e),this._prevBufferLen=e.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let t=1;for(let s=0;s0&&t>this._maxPayload)return this.writeBuffer.slice(0,s);t+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;const e=Date.now()>this._pingTimeoutTime;return e&&(this._pingTimeoutTime=0,x(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),e}write(e,t,s){return this._sendPacket("message",e,t,s),this}send(e,t,s){return this._sendPacket("message",e,t,s),this}_sendPacket(e,t,s,i){if(typeof t=="function"&&(i=t,t=void 0),typeof s=="function"&&(i=s,s=null),this.readyState==="closing"||this.readyState==="closed")return;s=s||{},s.compress=s.compress!==!1;const r={type:e,data:t,options:s};this.emitReserved("packetCreate",r),this.writeBuffer.push(r),i&&this.once("flush",i),this.flush()}close(){const e=()=>{this._onClose("forced close"),this.transport.close()},t=()=>{this.off("upgrade",t),this.off("upgradeError",t),e()},s=()=>{this.once("upgrade",t),this.once("upgradeError",t)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?s():e()}):this.upgrading?s():e()),this}_onError(e){if(b.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",e),this._onClose("transport error",e)}_onClose(e,t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),V&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){const s=S.indexOf(this._offlineEventListener);s!==-1&&S.splice(s,1)}this.readyState="closed",this.id=null,this.emitReserved("close",e,t),this.writeBuffer=[],this._prevBufferLen=0}}}b.protocol=re;class Je extends b{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let e=0;e{s||(t.send([{type:"ping",data:"probe"}]),t.once("packet",_=>{if(!s)if(_.type==="pong"&&_.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",t),!t)return;b.priorWebsocketSuccess=t.name==="websocket",this.transport.pause(()=>{s||this.readyState!=="closed"&&(l(),this.setTransport(t),t.send([{type:"upgrade"}]),this.emitReserved("upgrade",t),t=null,this.upgrading=!1,this.flush())})}else{const v=new Error("probe error");v.transport=t.name,this.emitReserved("upgradeError",v)}}))};function r(){s||(s=!0,l(),t.close(),t=null)}const o=_=>{const v=new Error("probe error: "+_);v.transport=t.name,r(),this.emitReserved("upgradeError",v)};function c(){o("transport closed")}function h(){o("socket closed")}function g(_){t&&_.name!==t.name&&r()}const l=()=>{t.removeListener("open",i),t.removeListener("error",o),t.removeListener("close",c),this.off("close",h),this.off("upgrading",g)};t.once("open",i),t.once("error",o),t.once("close",c),this.once("close",h),this.once("upgrading",g),this._upgrades.indexOf("webtransport")!==-1&&e!=="webtransport"?this.setTimeoutFn(()=>{s||t.open()},200):t.open()}onHandshake(e){this._upgrades=this._filterUpgrades(e.upgrades),super.onHandshake(e)}_filterUpgrades(e){const t=[];for(let s=0;sKe[i]).filter(i=>!!i)),super(e,s)}};function Qe(n,e="",t){let s=n;t=t||typeof location<"u"&&location,n==null&&(n=t.protocol+"//"+t.host),typeof n=="string"&&(n.charAt(0)==="/"&&(n.charAt(1)==="/"?n=t.protocol+n:n=t.host+n),/^(https?|wss?):\/\//.test(n)||(typeof t<"u"?n=t.protocol+"//"+n:n="https://"+n),s=I(n)),s.port||(/^(http|ws)$/.test(s.protocol)?s.port="80":/^(http|ws)s$/.test(s.protocol)&&(s.port="443")),s.path=s.path||"/";const r=s.host.indexOf(":")!==-1?"["+s.host+"]":s.host;return s.id=s.protocol+"://"+r+":"+s.port+e,s.href=s.protocol+"://"+r+(t&&t.port===s.port?"":":"+s.port),s}const je=typeof ArrayBuffer=="function",Ge=n=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(n):n.buffer instanceof ArrayBuffer,fe=Object.prototype.toString,Ze=typeof Blob=="function"||typeof Blob<"u"&&fe.call(Blob)==="[object BlobConstructor]",et=typeof File=="function"||typeof File<"u"&&fe.call(File)==="[object FileConstructor]";function z(n){return je&&(n instanceof ArrayBuffer||Ge(n))||Ze&&n instanceof Blob||et&&n instanceof File}function C(n,e){if(!n||typeof n!="object")return!1;if(Array.isArray(n)){for(let t=0,s=n.length;t=0&&n.num{delete this.acks[e];for(let c=0;c{this.io.clearTimeoutFn(r),t.apply(this,c)};o.withError=!0,this.acks[e]=o}emitWithAck(e,...t){return new Promise((s,i)=>{const r=(o,c)=>o?i(o):s(c);r.withError=!0,t.push(r),this.emit(e,...t)})}_addToQueue(e){let t;typeof e[e.length-1]=="function"&&(t=e.pop());const s={id:this._queueSeq++,tryCount:0,pending:!1,args:e,flags:Object.assign({fromQueue:!0},this.flags)};e.push((i,...r)=>(this._queue[0],i!==null?s.tryCount>this._opts.retries&&(this._queue.shift(),t&&t(i)):(this._queue.shift(),t&&t(null,...r)),s.pending=!1,this._drainQueue())),this._queue.push(s),this._drainQueue()}_drainQueue(e=!1){if(!this.connected||this._queue.length===0)return;const t=this._queue[0];t.pending&&!e||(t.pending=!0,t.tryCount++,this.flags=t.flags,this.emit.apply(this,t.args))}packet(e){e.nsp=this.nsp,this.io._packet(e)}onopen(){typeof this.auth=="function"?this.auth(e=>{this._sendConnectPacket(e)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(e){this.packet({type:a.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},e):e})}onerror(e){this.connected||this.emitReserved("connect_error",e)}onclose(e,t){this.connected=!1,delete this.id,this.emitReserved("disconnect",e,t),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(e=>{if(!this.sendBuffer.some(s=>String(s.id)===e)){const s=this.acks[e];delete this.acks[e],s.withError&&s.call(this,new Error("socket has been disconnected"))}})}onpacket(e){if(e.nsp===this.nsp)switch(e.type){case a.CONNECT:e.data&&e.data.sid?this.onconnect(e.data.sid,e.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case a.EVENT:case a.BINARY_EVENT:this.onevent(e);break;case a.ACK:case a.BINARY_ACK:this.onack(e);break;case a.DISCONNECT:this.ondisconnect();break;case a.CONNECT_ERROR:this.destroy();const s=new Error(e.data.message);s.data=e.data.data,this.emitReserved("connect_error",s);break}}onevent(e){const t=e.data||[];e.id!=null&&t.push(this.ack(e.id)),this.connected?this.emitEvent(t):this.receiveBuffer.push(Object.freeze(t))}emitEvent(e){if(this._anyListeners&&this._anyListeners.length){const t=this._anyListeners.slice();for(const s of t)s.apply(this,e)}super.emit.apply(this,e),this._pid&&e.length&&typeof e[e.length-1]=="string"&&(this._lastOffset=e[e.length-1])}ack(e){const t=this;let s=!1;return function(...i){s||(s=!0,t.packet({type:a.ACK,id:e,data:i}))}}onack(e){const t=this.acks[e.id];typeof t=="function"&&(delete this.acks[e.id],t.withError&&e.data.unshift(null),t.apply(this,e.data))}onconnect(e,t){this.id=e,this.recovered=t&&this._pid===t,this._pid=t,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(e=>this.emitEvent(e)),this.receiveBuffer=[],this.sendBuffer.forEach(e=>{this.notifyOutgoingListeners(e),this.packet(e)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(e=>e()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:a.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(e){return this.flags.compress=e,this}get volatile(){return this.flags.volatile=!0,this}timeout(e){return this.flags.timeout=e,this}onAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(e),this}prependAny(e){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(e),this}offAny(e){if(!this._anyListeners)return this;if(e){const t=this._anyListeners;for(let s=0;s0&&n.jitter<=1?n.jitter:0,this.attempts=0}w.prototype.duration=function(){var n=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var e=Math.random(),t=Math.floor(e*this.jitter*n);n=Math.floor(e*10)&1?n+t:n-t}return Math.min(n,this.max)|0};w.prototype.reset=function(){this.attempts=0};w.prototype.setMin=function(n){this.ms=n};w.prototype.setMax=function(n){this.max=n};w.prototype.setJitter=function(n){this.jitter=n};class H extends u{constructor(e,t){var s;super(),this.nsps={},this.subs=[],e&&typeof e=="object"&&(t=e,e=void 0),t=t||{},t.path=t.path||"/socket.io",this.opts=t,N(this,t),this.reconnection(t.reconnection!==!1),this.reconnectionAttempts(t.reconnectionAttempts||1/0),this.reconnectionDelay(t.reconnectionDelay||1e3),this.reconnectionDelayMax(t.reconnectionDelayMax||5e3),this.randomizationFactor((s=t.randomizationFactor)!==null&&s!==void 0?s:.5),this.backoff=new w({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(t.timeout==null?2e4:t.timeout),this._readyState="closed",this.uri=e;const i=t.parser||ot;this.encoder=new i.Encoder,this.decoder=new i.Decoder,this._autoConnect=t.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(e){return arguments.length?(this._reconnection=!!e,e||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(e){return e===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=e,this)}reconnectionDelay(e){var t;return e===void 0?this._reconnectionDelay:(this._reconnectionDelay=e,(t=this.backoff)===null||t===void 0||t.setMin(e),this)}randomizationFactor(e){var t;return e===void 0?this._randomizationFactor:(this._randomizationFactor=e,(t=this.backoff)===null||t===void 0||t.setJitter(e),this)}reconnectionDelayMax(e){var t;return e===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=e,(t=this.backoff)===null||t===void 0||t.setMax(e),this)}timeout(e){return arguments.length?(this._timeout=e,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(e){if(~this._readyState.indexOf("open"))return this;this.engine=new Xe(this.uri,this.opts);const t=this.engine,s=this;this._readyState="opening",this.skipReconnect=!1;const i=d(t,"open",function(){s.onopen(),e&&e()}),r=c=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",c),e?e(c):this.maybeReconnectOnOpen()},o=d(t,"error",r);if(this._timeout!==!1){const c=this._timeout,h=this.setTimeoutFn(()=>{i(),r(new Error("timeout")),t.close()},c);this.opts.autoUnref&&h.unref(),this.subs.push(()=>{this.clearTimeoutFn(h)})}return this.subs.push(i),this.subs.push(o),this}connect(e){return this.open(e)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");const e=this.engine;this.subs.push(d(e,"ping",this.onping.bind(this)),d(e,"data",this.ondata.bind(this)),d(e,"error",this.onerror.bind(this)),d(e,"close",this.onclose.bind(this)),d(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(e){try{this.decoder.add(e)}catch(t){this.onclose("parse error",t)}}ondecoded(e){x(()=>{this.emitReserved("packet",e)},this.setTimeoutFn)}onerror(e){this.emitReserved("error",e)}socket(e,t){let s=this.nsps[e];return s?this._autoConnect&&!s.active&&s.connect():(s=new le(this,e,t),this.nsps[e]=s),s}_destroy(e){const t=Object.keys(this.nsps);for(const s of t)if(this.nsps[s].active)return;this._close()}_packet(e){const t=this.encoder.encode(e);for(let s=0;se()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(e,t){var s;this.cleanup(),(s=this.engine)===null||s===void 0||s.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",e,t),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;const e=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{const t=this.backoff.duration();this._reconnecting=!0;const s=this.setTimeoutFn(()=>{e.skipReconnect||(this.emitReserved("reconnect_attempt",e.backoff.attempts),!e.skipReconnect&&e.open(i=>{i?(e._reconnecting=!1,e.reconnect(),this.emitReserved("reconnect_error",i)):e.onreconnect()}))},t);this.opts.autoUnref&&s.unref(),this.subs.push(()=>{this.clearTimeoutFn(s)})}}onreconnect(){const e=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",e)}}const E={};function B(n,e){typeof n=="object"&&(e=n,n=void 0),e=e||{};const t=Qe(n,e.path||"/socket.io"),s=t.source,i=t.id,r=t.path,o=E[i]&&r in E[i].nsps,c=e.forceNew||e["force new connection"]||e.multiplex===!1||o;let h;return c?h=new H(s,e):(E[i]||(E[i]=new H(s,e)),h=E[i]),t.query&&!e.query&&(e.query=t.queryKey),h.socket(t.path,e)}Object.assign(B,{Manager:H,Socket:le,io:B,connect:B});let f=null,K=null;const T=new Set;function ct(){var t,s;if(de())return ye();const n=pe("server.domain"),e=(s=(t=import.meta)==null?void 0:t.env)==null?void 0:s.VITE_SERVER_URL;return n||e||window.location.origin}function L(){const n=ct();if(!f||K!==n){if(f){try{f.disconnect()}catch{}f=null}K=n,f=B(n,{transports:["polling","websocket"]}),T.forEach(({event:e,handler:t})=>{f.on(e,t)})}return f}function pt(n,e){return L().on(n,e),T.add({event:n,handler:e}),()=>ht(n,e)}function ht(n,e){if(f){f.off(n,e);for(const t of Array.from(T))t.event===n&&t.handler===e&&T.delete(t)}}function dt(n){const e=L();n&&e.emit("join-token",{token:n})}function yt(n){f&&f.emit("leave-token",{token:n})}function mt(){f&&f.emit("leave-all")}function gt(n){const e=L();return e.on("connect",n),()=>e.off("connect",n)}function _t(n,e=null){L().emit("send-event",{type:n,content:e})}function bt(){if(f){try{f.disconnect()}catch{}f=null,K=null,T.clear()}}export{gt as a,yt as b,ct as c,bt as d,L as g,dt as j,mt as l,pt as o,_t as s}; diff --git a/index.html b/index.html index 6b5ce37..03b5f23 100644 --- a/index.html +++ b/index.html @@ -75,7 +75,7 @@ /* 当被移除或隐藏时可渐隐(由应用控制) */ body.app-loaded #app-loader { opacity: 0; pointer-events: none; } - + diff --git a/sw.js b/sw.js index 8e64949..0e04207 100644 --- a/sw.js +++ b/sw.js @@ -1 +1 @@ -if(!self.define){let e,a={};const s=(s,n)=>(s=new URL(s+".js",n).href,a[s]||new Promise(a=>{if("document"in self){const e=document.createElement("script");e.src=s,e.onload=a,document.head.appendChild(e)}else e=s,importScripts(s),a()}).then(()=>{let e=a[s];if(!e)throw new Error(`Module ${s} didn’t register its module`);return e}));self.define=(n,i)=>{const c=e||("document"in self?document.currentScript.src:"")||location.href;if(a[c])return;let r={};const t=e=>s(e,c),o={module:{uri:c},exports:r,require:t};a[c]=Promise.all(n.map(e=>o[e]||t(e))).then(e=>(i(...e),r))}}define(["./workbox-ec372ce3"],function(e){"use strict";importScripts("/sw-cache-manager.js"),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"sw-cache-manager.js",revision:"e1c99eed8d27ad84cb5fc7c56efd223b"},{url:"registerSW.js",revision:"402b66900e731ca748771b6fc5e7a068"},{url:"manifest.webmanifest",revision:"b0b994b429676afc68d0e6f9fe77af13"},{url:"index.html",revision:"573c1048d112bd0921ca2a8277d26aea"},{url:"favicon.ico",revision:"8e3a55390cf66d227f765a6063bb6c31"},{url:"328a0e159cf9b3fb3caacaab9c83bf17.txt",revision:"d06a7b1a4998b04f6c949893fa6b3c3b"},{url:"pwa/image/maskable-icon-512x512.png",revision:"dfa412c4bbe0f716216ac5db7a4c706d"},{url:"pwa/image/pwa-192x192.png",revision:"81802c789e8b735f7f8b181f002932f8"},{url:"pwa/image/pwa-512x512.png",revision:"57cc60501279a6d172b32211b1c67688"},{url:"pwa/image/pwa-64x64.png",revision:"b4ca4c3d8333391f20cddbb3f6cca2df"},{url:"manifest.webmanifest",revision:"b0b994b429676afc68d0e6f9fe77af13"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"))),e.registerRoute(({url:e,sameOrigin:a})=>a&&e.pathname.endsWith("/assets/"),new e.CacheFirst({cacheName:"assets-cache",plugins:[new e.ExpirationPlugin({maxEntries:200,maxAgeSeconds:5184e3}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(({url:e,sameOrigin:a})=>a&&e.pathname.startsWith("/pwa/"),new e.StaleWhileRevalidate({cacheName:"pwa-cache",plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:604800}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(({url:e,sameOrigin:a})=>{if(!a)return!1;const s=e.pathname;return!(s.includes("/assets/")||s.includes("/pwa/"))},new e.NetworkFirst({cacheName:"other-resources",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:100,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET")}); +if(!self.define){let e,s={};const a=(a,n)=>(a=new URL(a+".js",n).href,s[a]||new Promise(s=>{if("document"in self){const e=document.createElement("script");e.src=a,e.onload=s,document.head.appendChild(e)}else e=a,importScripts(a),s()}).then(()=>{let e=s[a];if(!e)throw new Error(`Module ${a} didn’t register its module`);return e}));self.define=(n,i)=>{const c=e||("document"in self?document.currentScript.src:"")||location.href;if(s[c])return;let r={};const t=e=>a(e,c),o={module:{uri:c},exports:r,require:t};s[c]=Promise.all(n.map(e=>o[e]||t(e))).then(e=>(i(...e),r))}}define(["./workbox-ec372ce3"],function(e){"use strict";importScripts("/sw-cache-manager.js"),self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"sw-cache-manager.js",revision:"e1c99eed8d27ad84cb5fc7c56efd223b"},{url:"registerSW.js",revision:"402b66900e731ca748771b6fc5e7a068"},{url:"manifest.webmanifest",revision:"b0b994b429676afc68d0e6f9fe77af13"},{url:"index.html",revision:"5407d515023568044087c2e30bb57443"},{url:"favicon.ico",revision:"8e3a55390cf66d227f765a6063bb6c31"},{url:"328a0e159cf9b3fb3caacaab9c83bf17.txt",revision:"d06a7b1a4998b04f6c949893fa6b3c3b"},{url:"pwa/image/maskable-icon-512x512.png",revision:"dfa412c4bbe0f716216ac5db7a4c706d"},{url:"pwa/image/pwa-192x192.png",revision:"81802c789e8b735f7f8b181f002932f8"},{url:"pwa/image/pwa-512x512.png",revision:"57cc60501279a6d172b32211b1c67688"},{url:"pwa/image/pwa-64x64.png",revision:"b4ca4c3d8333391f20cddbb3f6cca2df"},{url:"manifest.webmanifest",revision:"b0b994b429676afc68d0e6f9fe77af13"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"))),e.registerRoute(({url:e,sameOrigin:s})=>s&&e.pathname.endsWith("/assets/"),new e.CacheFirst({cacheName:"assets-cache",plugins:[new e.ExpirationPlugin({maxEntries:200,maxAgeSeconds:5184e3}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(({url:e,sameOrigin:s})=>s&&e.pathname.startsWith("/pwa/"),new e.StaleWhileRevalidate({cacheName:"pwa-cache",plugins:[new e.ExpirationPlugin({maxEntries:50,maxAgeSeconds:604800}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET"),e.registerRoute(({url:e,sameOrigin:s})=>{if(!s)return!1;const a=e.pathname;return!(a.includes("/assets/")||a.includes("/pwa/"))},new e.NetworkFirst({cacheName:"other-resources",networkTimeoutSeconds:10,plugins:[new e.ExpirationPlugin({maxEntries:100,maxAgeSeconds:86400}),new e.CacheableResponsePlugin({statuses:[0,200]})]}),"GET")});