From 718393965ec111d2b6d1e5d5d35ddaac9da62dbb Mon Sep 17 00:00:00 2001 From: TermiNexus Date: Sun, 2 Aug 2026 22:45:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B8=85=E7=90=86=E4=BA=86=E4=B8=8D=E9=9C=80?= =?UTF-8?q?=E8=A6=81=E7=9A=84=E6=96=87=E4=BB=B6=EF=BC=8C=E9=98=BB=E6=AD=A2?= =?UTF-8?q?=E4=BA=86=20GERP=20=E7=9A=84=E7=BC=96=E8=AF=91=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E7=9A=84=E4=B8=8A=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + TempLate/Chat/app.py | 108 --- TempLate/Chat/chat.html | 169 ---- TempLate/Chat/index.html | 65 -- TempLate/FTP/FULLCHAIN.PEM | 48 - TempLate/FTP/MYYY.docx | Bin 69182 -> 0 bytes TempLate/FTP/PRIVKEY.PEM | 5 - TempLate/FTP/hookop-1.0.0.jar | Bin 17239 -> 0 bytes TempLate/FTP/mail copy.html | 223 ----- TempLate/FTP/mail.html | 262 ------ TempLate/FTP/map.html | 842 ------------------ TempLate/FTP/oneqwq.png | Bin 1785 -> 0 bytes TempLate/FTP/policeman.png | Bin 2221 -> 0 bytes TempLate/FTP/r.js | 466 ---------- TempLate/GERP/assets/Admin-BH3hT3BL.js | 1 - TempLate/GERP/assets/AuditLog-DSDRHrcO.js | 1 - TempLate/GERP/assets/Company-CxKo2eoH.js | 1 - .../GERP/assets/CompanyDetail-COaiszTK.js | 1 - TempLate/GERP/assets/CrudTable-B49nrpUt.js | 1 - TempLate/GERP/assets/Dashboard-tJlcukj9.js | 1 - TempLate/GERP/assets/Database-BhusFIP8.js | 1 - TempLate/GERP/assets/DbTable-CtvpMX5E.js | 1 - .../GERP/assets/DefaultLayout-rzjKdYWy.js | 1 - TempLate/GERP/assets/Department-BtlmnFbj.js | 1 - .../GERP/assets/DepartmentDetail-TMUHEraO.js | 1 - TempLate/GERP/assets/Editor-5D3bQtSW.js | 1 - .../GERP/assets/EmployeeDetail-Ck3_5FKo.js | 1 - TempLate/GERP/assets/EpCreate-Dd8uzb-x.js | 1 - TempLate/GERP/assets/Login-hDgdqSpL.js | 1 - TempLate/GERP/assets/Manager-YB4nxbIc.js | 2 - TempLate/GERP/assets/Menu-CmxVaJIX.js | 4 - TempLate/GERP/assets/Message-DDcpqM0D.js | 1 - TempLate/GERP/assets/My-DPrAT3Sr.js | 1 - TempLate/GERP/assets/Orders-bra8jrHL.js | 1 - .../GERP/assets/PaymentConfig-BUuaxSoB.js | 1 - TempLate/GERP/assets/Products-Dgz6Q-xi.js | 1 - TempLate/GERP/assets/Profile-B8DTMeKY.js | 1 - TempLate/GERP/assets/Role-CUf-lqkA.js | 1 - TempLate/GERP/assets/RoleDetail-C4PpwcmI.js | 1 - TempLate/GERP/assets/RoleDetail-CoZwf-El.js | 1 - .../GERP/assets/RolePermissions-Ui2y81ee.js | 1 - TempLate/GERP/assets/Roles-CJaooumV.js | 1 - TempLate/GERP/assets/Settings-az6weoSF.js | 1 - TempLate/GERP/assets/Tenant-CRSIX85t.js | 1 - TempLate/GERP/assets/TenantCreate-CsrbEqrJ.js | 1 - TempLate/GERP/assets/TenantDetail-CHvvHAc4.js | 1 - TempLate/GERP/assets/TenantReview-DQeJSqcy.js | 1 - TempLate/GERP/assets/UserDetail-DSBYMFBg.js | 1 - TempLate/GERP/assets/Users-DnduOYy3.js | 1 - TempLate/GERP/assets/Workgroup-0dl3kaJX.js | 1 - .../GERP/assets/WorkgroupDetail-AJMWwNyx.js | 1 - TempLate/GERP/assets/app-Bqwt3qVF.js | 1 - TempLate/GERP/assets/dialog-_5VhSQg5.js | 1 - TempLate/GERP/assets/form-B2Pzr8Vf.js | 1 - TempLate/GERP/assets/index-CjWCN1N9.js | 29 - TempLate/GERP/assets/pagination-DOGDdUWm.js | 1 - TempLate/GERP/assets/router-CMu0lceh.js | 10 - TempLate/GERP/assets/select-BGsfCDCJ.js | 1 - TempLate/GERP/assets/switch-7puThziV.js | 1 - TempLate/GERP/assets/table-DPU4-geg.js | 1 - TempLate/GERP/assets/tabs-BSMusFE5.js | 1 - TempLate/GERP/assets/time-picker-DcDLR-nT.js | 1 - .../GERP/assets/useResolveUUIDs-ipmPZLo4.js | 1 - TempLate/GERP/index.html | 18 +- TempLate/Help/GIT | 13 - TempLate/assets/config/Megas.js | 1 - .../VDISK/2c13a0b94f83316387885f859971f750 | Bin 108944 -> 0 bytes .../VDISK/3c3674d0c9983225952b7ba889020c84 | Bin 138056 -> 0 bytes TempLate/gdrive/index.html | 708 --------------- TempLate/gdrive/lib/css/gdrive.css | 42 - TempLate/gdrive/lib/css/tailwindcss.tool.css | 67 -- TempLate/gdrive/lib/js/gdrive.js | 521 ----------- TempLate/gdrive/lib/js/main.js | 445 --------- TempLate/gdrive/lib/js/tailwindcss.config.js | 23 - TempLate/gdrive/s | 455 ---------- TempLate/history/index.html | 521 ----------- _check.log | 1 - _test.tmp | 0 _test_write.txt | 0 .../AKS/2023/09/08/MikOS开源协议/index.html | 0 .../AKS/2023/09/28/550OS/index.html | 0 {TempLate => backup}/AKS/404.html | 0 {TempLate => backup}/AKS/_Footer | 0 {TempLate => backup}/AKS/_Nav | 0 {TempLate => backup}/AKS/about/index.html | 0 .../AKS/archives/2023/09/index.html | 0 .../AKS/archives/2023/index.html | 0 {TempLate => backup}/AKS/archives/index.html | 0 .../AKS/categories/index.html | 0 .../AKS/css/backgroundize.css | 0 {TempLate => backup}/AKS/css/gitalk.css | 0 .../AKS/css/highlight-dark.css | 0 {TempLate => backup}/AKS/css/highlight.css | 0 {TempLate => backup}/AKS/css/main.css | 0 .../AKS/custom_code/custom.css | 0 .../AKS/custom_code/custom.js | 0 {TempLate => backup}/AKS/fors.py | 0 {TempLate => backup}/AKS/img/2233.jpg | Bin {TempLate => backup}/AKS/img/avatar.png | Bin {TempLate => backup}/AKS/img/default.png | Bin {TempLate => backup}/AKS/img/fluid.png | Bin {TempLate => backup}/AKS/img/loading.gif | Bin {TempLate => backup}/AKS/img/police_beian.png | Bin {TempLate => backup}/AKS/index.html | 0 {TempLate => backup}/AKS/js/background.js | 0 {TempLate => backup}/AKS/js/boot.js | 0 {TempLate => backup}/AKS/js/color-schema.js | 0 {TempLate => backup}/AKS/js/events.js | 0 {TempLate => backup}/AKS/js/img-lazyload.js | 0 {TempLate => backup}/AKS/js/leancloud.js | 0 {TempLate => backup}/AKS/js/local-search.js | 0 {TempLate => backup}/AKS/js/plugins.js | 0 {TempLate => backup}/AKS/js/utils.js | 0 {TempLate => backup}/AKS/links/index.html | 0 .../AKS/live2dw/lib/L2Dwidget.0.min.js | 0 .../AKS/live2dw/lib/L2Dwidget.0.min.js.map | 0 .../AKS/live2dw/lib/L2Dwidget.min.js | 0 .../AKS/live2dw/lib/L2Dwidget.min.js.map | 0 {TempLate => backup}/AKS/tags/index.html | 0 {TempLate => backup}/AKS/xml/local-search.xml | 0 {TempLate => backup}/CAP/Login.html | 0 {TempLate => backup}/CAP/window.html | 0 {TempLate => backup}/CAP/window.js | 0 {TempLate => backup}/Olds/2/8.html | 0 {TempLate => backup}/Olds/2/API.html | 0 {TempLate => backup}/Olds/2/ContactUS.html | 0 {TempLate => backup}/Olds/2/Gallery.html | 0 {TempLate => backup}/Olds/2/_base | 0 {TempLate => backup}/Olds/2/_error.html | 0 {TempLate => backup}/Olds/2/about.html | 0 {TempLate => backup}/Olds/2/assets/8/8.8.png | Bin .../2/assets/bootstrap/css/bootstrap-grid.css | 0 .../bootstrap/css/bootstrap-grid.css.map | 0 .../bootstrap/css/bootstrap-grid.min.css | 0 .../bootstrap/css/bootstrap-grid.min.css.map | 0 .../bootstrap/css/bootstrap-grid.rtl.css | 0 .../bootstrap/css/bootstrap-grid.rtl.css.map | 0 .../bootstrap/css/bootstrap-grid.rtl.min.css | 0 .../css/bootstrap-grid.rtl.min.css.map | 0 .../assets/bootstrap/css/bootstrap-reboot.css | 0 .../bootstrap/css/bootstrap-reboot.css.map | 0 .../bootstrap/css/bootstrap-reboot.min.css | 0 .../css/bootstrap-reboot.min.css.map | 0 .../bootstrap/css/bootstrap-reboot.rtl.css | 0 .../css/bootstrap-reboot.rtl.css.map | 0 .../css/bootstrap-reboot.rtl.min.css | 0 .../css/bootstrap-reboot.rtl.min.css.map | 0 .../bootstrap/css/bootstrap-utilities.css | 0 .../bootstrap/css/bootstrap-utilities.css.map | 0 .../bootstrap/css/bootstrap-utilities.min.css | 0 .../css/bootstrap-utilities.min.css.map | 0 .../bootstrap/css/bootstrap-utilities.rtl.css | 0 .../css/bootstrap-utilities.rtl.css.map | 0 .../css/bootstrap-utilities.rtl.min.css | 0 .../css/bootstrap-utilities.rtl.min.css.map | 0 .../Olds/2/assets/bootstrap/css/bootstrap.css | 0 .../2/assets/bootstrap/css/bootstrap.css.map | 0 .../2/assets/bootstrap/css/bootstrap.min.css | 0 .../bootstrap/css/bootstrap.min.css.map | 0 .../2/assets/bootstrap/css/bootstrap.rtl.css | 0 .../bootstrap/css/bootstrap.rtl.css.map | 0 .../bootstrap/css/bootstrap.rtl.min.css | 0 .../bootstrap/css/bootstrap.rtl.min.css.map | 0 .../2/assets/bootstrap/js/bootstrap.bundle.js | 0 .../bootstrap/js/bootstrap.bundle.js.map | 0 .../bootstrap/js/bootstrap.bundle.min.js | 0 .../bootstrap/js/bootstrap.bundle.min.js.map | 0 .../2/assets/bootstrap/js/bootstrap.esm.js | 0 .../assets/bootstrap/js/bootstrap.esm.js.map | 0 .../assets/bootstrap/js/bootstrap.esm.min.js | 0 .../bootstrap/js/bootstrap.esm.min.js.map | 0 .../Olds/2/assets/bootstrap/js/bootstrap.js | 0 .../2/assets/bootstrap/js/bootstrap.js.map | 0 .../2/assets/bootstrap/js/bootstrap.min.js | 0 .../assets/bootstrap/js/bootstrap.min.js.map | 0 .../2/assets/css/gvs-design-public-system.css | 0 .../Olds/2/assets/css/gvs-design-system.css | 0 .../2/assets/css/gvs-design-system.min.css | 0 .../Olds/2/assets/css/gvs-win.css | 0 .../Olds/2/assets/css/nucleo-icons.css | 0 .../Olds/2/assets/css/nucleo-icons.min.css | 0 .../Olds/2/assets/css/radio-card.css | 0 .../Olds/2/assets/demo/demo.css | 0 .../Olds/2/assets/demo/demo.js | 0 .../Olds/2/assets/demo/demo.min.css | 0 .../Olds/2/assets/demo/demo.min.js | 0 .../Olds/2/assets/demo/text.html | 0 .../Olds/2/assets/fonts/Mojangles.ttf | Bin .../Olds/2/assets/fonts/iconfont.eot | Bin .../Olds/2/assets/fonts/iconfont.svg | 0 .../Olds/2/assets/fonts/iconfont.ttf | Bin .../Olds/2/assets/fonts/iconfont.woff | Bin .../Olds/2/assets/fonts/nucleo.eot | Bin .../Olds/2/assets/fonts/nucleo.ttf | Bin .../Olds/2/assets/fonts/nucleo.woff | Bin .../Olds/2/assets/fonts/nucleo.woff2 | Bin .../Olds/2/assets/gallery/1.png | Bin .../Olds/2/assets/hlogos/2.jpg | Bin .../Olds/2/assets/hlogos/3.jpg | Bin .../Olds/2/assets/hlogos/4.jpg | Bin .../Olds/2/assets/hlogos/5.jpg | Bin .../527924593a817b7fa2335e5e504e68e.jpg | Bin .../Olds/2/assets/hlogos/6.jpg | Bin .../b47170821c58cd978078f9c043bcae8.jpg | Bin .../c07a83c48fd2b55c886572c7e15bb11.jpg | Bin .../Olds/2/assets/hlogos/gnobg.png | Bin .../Olds/2/assets/hlogos/new - Copy.jpg | Bin .../Olds/2/assets/hlogos/new - 副本 (2).jpg | Bin .../Olds/2/assets/hlogos/new - 副本.jpg | Bin .../Olds/2/assets/hlogos/new.jpg | Bin .../Olds/2/assets/hlogos/new1.jpg | Bin .../Olds/2/assets/hlogos/nobg.png | Bin .../Olds/2/assets/img/UserDefaultImg.png | Bin {TempLate => backup}/Olds/2/assets/img/Z.png | Bin .../Olds/2/assets/img/apple-icon.png | Bin .../Olds/2/assets/img/asc.gif | Bin {TempLate => backup}/Olds/2/assets/img/bg.gif | Bin .../Olds/2/assets/img/bitcoin.png | Bin .../Olds/2/assets/img/blob.png | Bin .../Olds/2/assets/img/cercuri.png | Bin .../Olds/2/assets/img/chester-wade.jpg | Bin .../Olds/2/assets/img/cogs.gif | Bin .../Olds/2/assets/img/denys.jpg | Bin .../Olds/2/assets/img/desc.gif | Bin .../Olds/2/assets/img/dots.png | Bin .../Olds/2/assets/img/etherum.png | Bin .../Olds/2/assets/img/fabien-bazanegue.jpg | Bin .../Olds/2/assets/img/favicon.png | Bin .../Olds/2/assets/img/github.svg | 0 .../Olds/2/assets/img/google.svg | 0 .../Olds/2/assets/img/james.jpg | Bin .../Olds/2/assets/img/julie.jpeg | Bin .../Olds/2/assets/img/landing-page.png | Bin .../Olds/2/assets/img/levitation.png | Bin .../Olds/2/assets/img/logo.png | Bin .../Olds/2/assets/img/lora.jpg | Bin .../Olds/2/assets/img/lzhbg.jpg | Bin .../Olds/2/assets/img/mark-finn.jpg | Bin .../Olds/2/assets/img/mike.jpg | Bin .../Olds/2/assets/img/nucleo-logo.svg | 0 .../Olds/2/assets/img/path1.png | Bin .../Olds/2/assets/img/path2.png | Bin .../Olds/2/assets/img/path3.png | Bin .../Olds/2/assets/img/path4.png | Bin .../Olds/2/assets/img/path5.png | Bin .../Olds/2/assets/img/patrat.png | Bin .../Olds/2/assets/img/profile-page.png | Bin .../Olds/2/assets/img/ripp.png | Bin .../Olds/2/assets/img/ryan.jpg | Bin .../Olds/2/assets/img/square-purple-1.png | Bin .../Olds/2/assets/img/square1.png | Bin .../Olds/2/assets/img/square2.png | Bin .../Olds/2/assets/img/square3.png | Bin .../Olds/2/assets/img/square4.png | Bin .../Olds/2/assets/img/square5.png | Bin .../Olds/2/assets/img/square6.png | Bin .../Olds/2/assets/img/terminexusbg.png | Bin .../Olds/2/assets/img/triunghiuri.png | Bin .../Olds/2/assets/img/waves.png | Bin .../Olds/2/assets/js/core/bootstrap.min.js | 0 .../Olds/2/assets/js/core/echarts.min.js | 0 .../Olds/2/assets/js/core/echarts.world.js | 0 .../Olds/2/assets/js/core/jquery.min.js | 0 .../Olds/2/assets/js/core/popper.min.js | 0 .../Olds/2/assets/js/core/scrollreveal.min.js | 0 .../Olds/2/assets/js/gvs-design-system.js | 0 .../Olds/2/assets/js/gvs-top-system.js | 0 .../Olds/2/assets/js/i18n.lib.js | 0 .../js/plugins/bootstrap-datepicker.min.js | 0 .../plugins/bootstrap-datetimepicker.min.js | 0 .../assets/js/plugins/bootstrap-switch.min.js | 0 .../Olds/2/assets/js/plugins/chartjs.min.js | 0 .../2/assets/js/plugins/jquery.sharrre.min.js | 0 .../Olds/2/assets/js/plugins/moment.min.js | 0 .../2/assets/js/plugins/nouislider.min.js | 0 .../plugins/perfect-scrollbar.jquery.min.js | 0 .../2/assets/js/socket/socket.io.esm.min.js | 0 .../assets/js/socket/socket.io.esm.min.js.map | 0 .../Olds/2/assets/js/socket/socket.io.js | 0 .../Olds/2/assets/js/socket/socket.io.js.map | 0 .../Olds/2/assets/js/socket/socket.io.min.js | 0 .../2/assets/js/socket/socket.io.min.js.map | 0 .../assets/js/socket/socket.io.msgpack.min.js | 0 .../js/socket/socket.io.msgpack.min.js.map | 0 .../Olds/2/assets/links/G.jpg | Bin .../Olds/2/assets/links/GDEV.jpg | Bin .../Olds/2/assets/logo/1 - 副本.jpg | Bin {TempLate => backup}/Olds/2/assets/logo/1.jpg | Bin .../Olds/2/assets/logo/GVSDS.jpg | Bin .../Olds/2/assets/mp4/ZYBWHATISWYT.mp4 | Bin .../Olds/2/assets/scss/blk-design-system.scss | 0 .../blk-design-system/bootstrap/_alert.scss | 0 .../blk-design-system/bootstrap/_badge.scss | 0 .../bootstrap/_breadcrumb.scss | 0 .../bootstrap/_button-group.scss | 0 .../blk-design-system/bootstrap/_buttons.scss | 0 .../blk-design-system/bootstrap/_card.scss | 0 .../bootstrap/_carousel.scss | 0 .../blk-design-system/bootstrap/_close.scss | 0 .../blk-design-system/bootstrap/_code.scss | 0 .../bootstrap/_custom-forms.scss | 0 .../bootstrap/_dropdown.scss | 0 .../blk-design-system/bootstrap/_forms.scss | 0 .../bootstrap/_functions.scss | 0 .../blk-design-system/bootstrap/_grid.scss | 0 .../blk-design-system/bootstrap/_images.scss | 0 .../bootstrap/_input-group.scss | 0 .../bootstrap/_jumbotron.scss | 0 .../bootstrap/_list-group.scss | 0 .../blk-design-system/bootstrap/_media.scss | 0 .../blk-design-system/bootstrap/_mixins.scss | 0 .../blk-design-system/bootstrap/_modal.scss | 0 .../blk-design-system/bootstrap/_nav.scss | 0 .../blk-design-system/bootstrap/_navbar.scss | 0 .../bootstrap/_pagination.scss | 0 .../blk-design-system/bootstrap/_popover.scss | 0 .../blk-design-system/bootstrap/_print.scss | 0 .../bootstrap/_progress.scss | 0 .../blk-design-system/bootstrap/_reboot.scss | 0 .../blk-design-system/bootstrap/_root.scss | 0 .../blk-design-system/bootstrap/_tables.scss | 0 .../blk-design-system/bootstrap/_tooltip.scss | 0 .../bootstrap/_transitions.scss | 0 .../blk-design-system/bootstrap/_type.scss | 0 .../bootstrap/_utilities.scss | 0 .../bootstrap/_variables.scss | 0 .../bootstrap/mixins/_alert.scss | 0 .../bootstrap/mixins/_background-variant.scss | 0 .../bootstrap/mixins/_badge.scss | 0 .../bootstrap/mixins/_border-radius.scss | 0 .../bootstrap/mixins/_box-shadow.scss | 0 .../bootstrap/mixins/_breakpoints.scss | 0 .../bootstrap/mixins/_buttons.scss | 0 .../bootstrap/mixins/_caret.scss | 0 .../bootstrap/mixins/_clearfix.scss | 0 .../bootstrap/mixins/_float.scss | 0 .../bootstrap/mixins/_forms.scss | 0 .../bootstrap/mixins/_gradients.scss | 0 .../bootstrap/mixins/_grid-framework.scss | 0 .../bootstrap/mixins/_grid.scss | 0 .../bootstrap/mixins/_hover.scss | 0 .../bootstrap/mixins/_image.scss | 0 .../bootstrap/mixins/_list-group.scss | 0 .../bootstrap/mixins/_lists.scss | 0 .../bootstrap/mixins/_nav-divider.scss | 0 .../bootstrap/mixins/_pagination.scss | 0 .../bootstrap/mixins/_reset-text.scss | 0 .../bootstrap/mixins/_resize.scss | 0 .../bootstrap/mixins/_screen-reader.scss | 0 .../bootstrap/mixins/_size.scss | 0 .../bootstrap/mixins/_table-row.scss | 0 .../bootstrap/mixins/_text-emphasis.scss | 0 .../bootstrap/mixins/_text-hide.scss | 0 .../bootstrap/mixins/_text-truncate.scss | 0 .../bootstrap/mixins/_transition.scss | 0 .../bootstrap/mixins/_visibility.scss | 0 .../bootstrap/utilities/_align.scss | 0 .../bootstrap/utilities/_background.scss | 0 .../bootstrap/utilities/_borders.scss | 0 .../bootstrap/utilities/_clearfix.scss | 0 .../bootstrap/utilities/_display.scss | 0 .../bootstrap/utilities/_embed.scss | 0 .../bootstrap/utilities/_flex.scss | 0 .../bootstrap/utilities/_float.scss | 0 .../bootstrap/utilities/_position.scss | 0 .../bootstrap/utilities/_screenreaders.scss | 0 .../bootstrap/utilities/_shadows.scss | 0 .../bootstrap/utilities/_sizing.scss | 0 .../bootstrap/utilities/_spacing.scss | 0 .../bootstrap/utilities/_text.scss | 0 .../bootstrap/utilities/_visibility.scss | 0 .../blk-design-system/custom/_alerts.scss | 0 .../scss/blk-design-system/custom/_badge.scss | 0 .../blk-design-system/custom/_buttons.scss | 0 .../scss/blk-design-system/custom/_card.scss | 0 .../custom/_checkboxes-radio.scss | 0 .../blk-design-system/custom/_dropdown.scss | 0 .../custom/_example-pages.scss | 0 .../custom/_fixed-plugin.scss | 0 .../blk-design-system/custom/_footer.scss | 0 .../scss/blk-design-system/custom/_forms.scss | 0 .../blk-design-system/custom/_functions.scss | 0 .../scss/blk-design-system/custom/_icons.scss | 0 .../blk-design-system/custom/_images.scss | 0 .../blk-design-system/custom/_info-areas.scss | 0 .../custom/_input-group.scss | 0 .../scss/blk-design-system/custom/_misc.scss | 0 .../blk-design-system/custom/_mixins.scss | 0 .../scss/blk-design-system/custom/_modal.scss | 0 .../blk-design-system/custom/_navbar.scss | 0 .../blk-design-system/custom/_pagination.scss | 0 .../scss/blk-design-system/custom/_pills.scss | 0 .../blk-design-system/custom/_progress.scss | 0 .../scss/blk-design-system/custom/_rtl.scss | 0 .../blk-design-system/custom/_sections.scss | 0 .../blk-design-system/custom/_tables.scss | 0 .../scss/blk-design-system/custom/_tabs.scss | 0 .../scss/blk-design-system/custom/_type.scss | 0 .../blk-design-system/custom/_utilities.scss | 0 .../blk-design-system/custom/_variables.scss | 0 .../custom/cards/_card-chart.scss | 0 .../custom/cards/_card-map.scss | 0 .../custom/cards/_card-plain.scss | 0 .../custom/cards/_card-register.scss | 0 .../custom/cards/_card-stats.scss | 0 .../custom/cards/_card-task.scss | 0 .../custom/cards/_card-user.scss | 0 .../custom/mixins/_alert.scss | 0 .../custom/mixins/_background-variant.scss | 0 .../custom/mixins/_badges.scss | 0 .../custom/mixins/_buttons.scss | 0 .../custom/mixins/_dropdown.scss | 0 .../custom/mixins/_forms.scss | 0 .../custom/mixins/_icon.scss | 0 .../custom/mixins/_inputs.scss | 0 .../custom/mixins/_modals.scss | 0 .../custom/mixins/_page-header.scss | 0 .../custom/mixins/_popovers.scss | 0 .../custom/mixins/_vendor-prefixes.scss | 0 .../custom/mixins/_wizard.scss | 0 .../custom/mixins/opacity.scss | 0 .../custom/sections/_blogs.scss | 0 .../custom/sections/_contactus.scss | 0 .../custom/sections/_features.scss | 0 .../custom/sections/_headers.scss | 0 .../custom/sections/_pricing.scss | 0 .../custom/sections/_projects.scss | 0 .../sections/_social-subscribe-lines.scss | 0 .../custom/sections/_team.scss | 0 .../custom/sections/_testimonials.scss | 0 .../custom/utilities/_backgrounds.scss | 0 .../custom/utilities/_floating.scss | 0 .../custom/utilities/_helper.scss | 0 .../custom/utilities/_position.scss | 0 .../custom/utilities/_shadows.scss | 0 .../custom/utilities/_sizing.scss | 0 .../custom/utilities/_spacing.scss | 0 .../custom/utilities/_text.scss | 0 .../custom/utilities/_transform.scss | 0 .../_plugin-animate-bootstrap-notify.scss | 0 .../vendor/_plugin-bootstrap-switch.scss | 0 .../custom/vendor/_plugin-datetimepicker.scss | 0 .../custom/vendor/_plugin-nouislider.scss | 0 .../vendor/_plugin-perfect-scrollbar.scss | 0 .../Olds/2/assets/xterm/xterm.css | 0 {TempLate => backup}/Olds/2/demo.html | 0 {TempLate => backup}/Olds/2/enroll.html | 0 {TempLate => backup}/Olds/2/history.html | 0 {TempLate => backup}/Olds/2/index.html | 0 {TempLate => backup}/Olds/2/landing.html | 0 {TempLate => backup}/Olds/2/links copy.html | 0 {TempLate => backup}/Olds/2/links.html | 0 {TempLate => backup}/Olds/2/login.html | 0 {TempLate => backup}/Olds/2/logos.html | 0 {TempLate => backup}/Olds/2/members.html | 0 {TempLate => backup}/Olds/2/news.html | 0 {TempLate => backup}/Olds/2/profile.html | 0 {TempLate => backup}/Olds/2/test.html | 0 {TempLate => backup}/Olds/2/voucher.html | 0 {TempLate => backup}/Olds/3/1.html | 0 {TempLate => backup}/Olds/3/ContactUS.html | 0 {TempLate => backup}/Olds/3/Errors/404.html | 0 {TempLate => backup}/Olds/3/Errors/500.html | 0 {TempLate => backup}/Olds/3/Errors/503.html | 0 .../Olds/3/Errors/Piracy/best-loving.cn | 0 .../Olds/3/Errors/Piracy/kanglaohui.com | 0 .../Olds/3/Errors/_403_HOST.html | 0 {TempLate => backup}/Olds/3/Errors/_CSRFError | 0 .../Olds/3/Errors/_website_debug | 0 {TempLate => backup}/Olds/3/_base | 0 {TempLate => backup}/Olds/3/app.py | 0 .../Olds/3/assets/css/gvsds-page.css | 0 .../Olds/3/assets/css/typewriter.css | 0 .../Olds/3/assets/hlogos/2.jpg | Bin .../Olds/3/assets/hlogos/3.jpg | Bin .../Olds/3/assets/hlogos/4.jpg | Bin .../Olds/3/assets/hlogos/5.jpg | Bin .../527924593a817b7fa2335e5e504e68e.jpg | Bin .../Olds/3/assets/hlogos/6.jpg | Bin .../b47170821c58cd978078f9c043bcae8.jpg | Bin .../c07a83c48fd2b55c886572c7e15bb11.jpg | Bin .../Olds/3/assets/hlogos/gnobg.png | Bin .../Olds/3/assets/hlogos/new - Copy.jpg | Bin .../3/assets/hlogos/new - 副本 (2) - 副本.jpg | Bin .../Olds/3/assets/hlogos/new - 副本 (2).jpg | Bin .../Olds/3/assets/hlogos/new - 副本.jpg | Bin .../Olds/3/assets/hlogos/new.jpg | Bin .../Olds/3/assets/hlogos/new1.jpg | Bin .../Olds/3/assets/hlogos/nobg.png | Bin .../Olds/3/assets/icon/ICON - 副本.png | Bin .../Olds/3/assets/icon/ICON.html | 0 .../Olds/3/assets/icon/ICON.png | Bin .../3/assets/icon/ICON_DARKLINE - 副本.png | Bin .../Olds/3/assets/icon/ICON_DARKLINE.png | Bin .../Olds/3/assets/img/Mascot/1.png | Bin .../Olds/3/assets/img/Mascot/2.png | Bin .../3D2757A144FF5F1EAA4919221A5CA7D8.png | Bin .../3/assets/img/Mascot/OriginalImage.png | Bin .../Olds/3/assets/js/chart.js | 0 .../Olds/3/assets/js/footer.js | 0 .../Olds/3/assets/js/i18n.lib.js | 0 {TempLate => backup}/Olds/3/assets/js/icon.js | 0 {TempLate => backup}/Olds/3/assets/js/nav.js | 0 .../Olds/3/assets/js/reveal.js | 0 .../Olds/3/assets/js/scrollreveal.min.js | 0 .../Olds/3/assets/js/tailwind-config.js | 0 .../Olds/3/assets/js/typewriter.js | 0 .../Olds/3/assets/members/Chindows.jpg | Bin .../Olds/3/assets/members/terminexus.jpg | Bin .../Olds/3/assets/members/yrzd.jpg | Bin .../Olds/3/assets/members/赤砂.jpg | Bin .../Olds/3/assets/project/asdg.png | Bin .../Olds/3/assets/project/emstc.png | Bin .../Olds/3/assets/project/nsql.png | Bin {TempLate => backup}/Olds/3/gallery.html | 0 {TempLate => backup}/Olds/3/history.html | 0 {TempLate => backup}/Olds/3/index.html | 0 {TempLate => backup}/Olds/3/index2.html | 0 {TempLate => backup}/Olds/3/login.html | 0 {TempLate => backup}/Olds/3/members.html | 0 {TempLate => backup}/Olds/3/register.html | 0 {TempLate => backup}/nav/bp3.html | 0 {TempLate => backup}/nav/index.html | 0 .../crb/__pycache__/views.cpython-312.pyc | Bin 121340 -> 127632 bytes gvsds/apps/crb/views.py | 61 +- php/fix-nextcloud-ini.ps1 | 123 --- php/keepalive-nextcloud.ps1 | 35 - php/php-upstream.conf | 8 - php/start-php.ps1 | 54 -- php/stop-php.ps1 | 3 - php/test-mysql.php | 63 -- php/test-nc-public.py | 81 -- service.log | 1 + service_err.log | 43 + 534 files changed, 99 insertions(+), 5468 deletions(-) delete mode 100644 TempLate/Chat/app.py delete mode 100644 TempLate/Chat/chat.html delete mode 100644 TempLate/Chat/index.html delete mode 100644 TempLate/FTP/FULLCHAIN.PEM delete mode 100644 TempLate/FTP/MYYY.docx delete mode 100644 TempLate/FTP/PRIVKEY.PEM delete mode 100644 TempLate/FTP/hookop-1.0.0.jar delete mode 100644 TempLate/FTP/mail copy.html delete mode 100644 TempLate/FTP/mail.html delete mode 100644 TempLate/FTP/map.html delete mode 100644 TempLate/FTP/oneqwq.png delete mode 100644 TempLate/FTP/policeman.png delete mode 100644 TempLate/FTP/r.js delete mode 100644 TempLate/GERP/assets/Admin-BH3hT3BL.js delete mode 100644 TempLate/GERP/assets/AuditLog-DSDRHrcO.js delete mode 100644 TempLate/GERP/assets/Company-CxKo2eoH.js delete mode 100644 TempLate/GERP/assets/CompanyDetail-COaiszTK.js delete mode 100644 TempLate/GERP/assets/CrudTable-B49nrpUt.js delete mode 100644 TempLate/GERP/assets/Dashboard-tJlcukj9.js delete mode 100644 TempLate/GERP/assets/Database-BhusFIP8.js delete mode 100644 TempLate/GERP/assets/DbTable-CtvpMX5E.js delete mode 100644 TempLate/GERP/assets/DefaultLayout-rzjKdYWy.js delete mode 100644 TempLate/GERP/assets/Department-BtlmnFbj.js delete mode 100644 TempLate/GERP/assets/DepartmentDetail-TMUHEraO.js delete mode 100644 TempLate/GERP/assets/Editor-5D3bQtSW.js delete mode 100644 TempLate/GERP/assets/EmployeeDetail-Ck3_5FKo.js delete mode 100644 TempLate/GERP/assets/EpCreate-Dd8uzb-x.js delete mode 100644 TempLate/GERP/assets/Login-hDgdqSpL.js delete mode 100644 TempLate/GERP/assets/Manager-YB4nxbIc.js delete mode 100644 TempLate/GERP/assets/Menu-CmxVaJIX.js delete mode 100644 TempLate/GERP/assets/Message-DDcpqM0D.js delete mode 100644 TempLate/GERP/assets/My-DPrAT3Sr.js delete mode 100644 TempLate/GERP/assets/Orders-bra8jrHL.js delete mode 100644 TempLate/GERP/assets/PaymentConfig-BUuaxSoB.js delete mode 100644 TempLate/GERP/assets/Products-Dgz6Q-xi.js delete mode 100644 TempLate/GERP/assets/Profile-B8DTMeKY.js delete mode 100644 TempLate/GERP/assets/Role-CUf-lqkA.js delete mode 100644 TempLate/GERP/assets/RoleDetail-C4PpwcmI.js delete mode 100644 TempLate/GERP/assets/RoleDetail-CoZwf-El.js delete mode 100644 TempLate/GERP/assets/RolePermissions-Ui2y81ee.js delete mode 100644 TempLate/GERP/assets/Roles-CJaooumV.js delete mode 100644 TempLate/GERP/assets/Settings-az6weoSF.js delete mode 100644 TempLate/GERP/assets/Tenant-CRSIX85t.js delete mode 100644 TempLate/GERP/assets/TenantCreate-CsrbEqrJ.js delete mode 100644 TempLate/GERP/assets/TenantDetail-CHvvHAc4.js delete mode 100644 TempLate/GERP/assets/TenantReview-DQeJSqcy.js delete mode 100644 TempLate/GERP/assets/UserDetail-DSBYMFBg.js delete mode 100644 TempLate/GERP/assets/Users-DnduOYy3.js delete mode 100644 TempLate/GERP/assets/Workgroup-0dl3kaJX.js delete mode 100644 TempLate/GERP/assets/WorkgroupDetail-AJMWwNyx.js delete mode 100644 TempLate/GERP/assets/app-Bqwt3qVF.js delete mode 100644 TempLate/GERP/assets/dialog-_5VhSQg5.js delete mode 100644 TempLate/GERP/assets/form-B2Pzr8Vf.js delete mode 100644 TempLate/GERP/assets/index-CjWCN1N9.js delete mode 100644 TempLate/GERP/assets/pagination-DOGDdUWm.js delete mode 100644 TempLate/GERP/assets/router-CMu0lceh.js delete mode 100644 TempLate/GERP/assets/select-BGsfCDCJ.js delete mode 100644 TempLate/GERP/assets/switch-7puThziV.js delete mode 100644 TempLate/GERP/assets/table-DPU4-geg.js delete mode 100644 TempLate/GERP/assets/tabs-BSMusFE5.js delete mode 100644 TempLate/GERP/assets/time-picker-DcDLR-nT.js delete mode 100644 TempLate/GERP/assets/useResolveUUIDs-ipmPZLo4.js delete mode 100644 TempLate/Help/GIT delete mode 100644 TempLate/gdrive/VDISK/2c13a0b94f83316387885f859971f750 delete mode 100644 TempLate/gdrive/VDISK/3c3674d0c9983225952b7ba889020c84 delete mode 100644 TempLate/gdrive/index.html delete mode 100644 TempLate/gdrive/lib/css/gdrive.css delete mode 100644 TempLate/gdrive/lib/css/tailwindcss.tool.css delete mode 100644 TempLate/gdrive/lib/js/gdrive.js delete mode 100644 TempLate/gdrive/lib/js/main.js delete mode 100644 TempLate/gdrive/lib/js/tailwindcss.config.js delete mode 100644 TempLate/gdrive/s delete mode 100644 TempLate/history/index.html delete mode 100644 _check.log delete mode 100644 _test.tmp delete mode 100644 _test_write.txt rename {TempLate => backup}/AKS/2023/09/08/MikOS开源协议/index.html (100%) rename {TempLate => backup}/AKS/2023/09/28/550OS/index.html (100%) rename {TempLate => backup}/AKS/404.html (100%) rename {TempLate => backup}/AKS/_Footer (100%) rename {TempLate => backup}/AKS/_Nav (100%) rename {TempLate => backup}/AKS/about/index.html (100%) rename {TempLate => backup}/AKS/archives/2023/09/index.html (100%) rename {TempLate => backup}/AKS/archives/2023/index.html (100%) rename {TempLate => backup}/AKS/archives/index.html (100%) rename {TempLate => backup}/AKS/categories/index.html (100%) rename {TempLate => backup}/AKS/css/backgroundize.css (100%) rename {TempLate => backup}/AKS/css/gitalk.css (100%) rename {TempLate => backup}/AKS/css/highlight-dark.css (100%) rename {TempLate => backup}/AKS/css/highlight.css (100%) rename {TempLate => backup}/AKS/css/main.css (100%) rename {TempLate => backup}/AKS/custom_code/custom.css (100%) rename {TempLate => backup}/AKS/custom_code/custom.js (100%) rename {TempLate => backup}/AKS/fors.py (100%) rename {TempLate => backup}/AKS/img/2233.jpg (100%) rename {TempLate => backup}/AKS/img/avatar.png (100%) rename {TempLate => backup}/AKS/img/default.png (100%) rename {TempLate => backup}/AKS/img/fluid.png (100%) rename {TempLate => backup}/AKS/img/loading.gif (100%) rename {TempLate => backup}/AKS/img/police_beian.png (100%) rename {TempLate => backup}/AKS/index.html (100%) rename {TempLate => backup}/AKS/js/background.js (100%) rename {TempLate => backup}/AKS/js/boot.js (100%) rename {TempLate => backup}/AKS/js/color-schema.js (100%) rename {TempLate => backup}/AKS/js/events.js (100%) rename {TempLate => backup}/AKS/js/img-lazyload.js (100%) rename {TempLate => backup}/AKS/js/leancloud.js (100%) rename {TempLate => backup}/AKS/js/local-search.js (100%) rename {TempLate => backup}/AKS/js/plugins.js (100%) rename {TempLate => backup}/AKS/js/utils.js (100%) rename {TempLate => backup}/AKS/links/index.html (100%) rename {TempLate => backup}/AKS/live2dw/lib/L2Dwidget.0.min.js (100%) rename {TempLate => backup}/AKS/live2dw/lib/L2Dwidget.0.min.js.map (100%) rename {TempLate => backup}/AKS/live2dw/lib/L2Dwidget.min.js (100%) rename {TempLate => backup}/AKS/live2dw/lib/L2Dwidget.min.js.map (100%) rename {TempLate => backup}/AKS/tags/index.html (100%) rename {TempLate => backup}/AKS/xml/local-search.xml (100%) rename {TempLate => backup}/CAP/Login.html (100%) rename {TempLate => backup}/CAP/window.html (100%) rename {TempLate => backup}/CAP/window.js (100%) rename {TempLate => backup}/Olds/2/8.html (100%) rename {TempLate => backup}/Olds/2/API.html (100%) rename {TempLate => backup}/Olds/2/ContactUS.html (100%) rename {TempLate => backup}/Olds/2/Gallery.html (100%) rename {TempLate => backup}/Olds/2/_base (100%) rename {TempLate => backup}/Olds/2/_error.html (100%) rename {TempLate => backup}/Olds/2/about.html (100%) rename {TempLate => backup}/Olds/2/assets/8/8.8.png (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.rtl.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.rtl.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.bundle.js (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.bundle.js.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.esm.js (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.esm.js.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.js (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.js.map (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.min.js (100%) rename {TempLate => backup}/Olds/2/assets/bootstrap/js/bootstrap.min.js.map (100%) rename {TempLate => backup}/Olds/2/assets/css/gvs-design-public-system.css (100%) rename {TempLate => backup}/Olds/2/assets/css/gvs-design-system.css (100%) rename {TempLate => backup}/Olds/2/assets/css/gvs-design-system.min.css (100%) rename {TempLate => backup}/Olds/2/assets/css/gvs-win.css (100%) rename {TempLate => backup}/Olds/2/assets/css/nucleo-icons.css (100%) rename {TempLate => backup}/Olds/2/assets/css/nucleo-icons.min.css (100%) rename {TempLate => backup}/Olds/2/assets/css/radio-card.css (100%) rename {TempLate => backup}/Olds/2/assets/demo/demo.css (100%) rename {TempLate => backup}/Olds/2/assets/demo/demo.js (100%) rename {TempLate => backup}/Olds/2/assets/demo/demo.min.css (100%) rename {TempLate => backup}/Olds/2/assets/demo/demo.min.js (100%) rename {TempLate => backup}/Olds/2/assets/demo/text.html (100%) rename {TempLate => backup}/Olds/2/assets/fonts/Mojangles.ttf (100%) rename {TempLate => backup}/Olds/2/assets/fonts/iconfont.eot (100%) rename {TempLate => backup}/Olds/2/assets/fonts/iconfont.svg (100%) rename {TempLate => backup}/Olds/2/assets/fonts/iconfont.ttf (100%) rename {TempLate => backup}/Olds/2/assets/fonts/iconfont.woff (100%) rename {TempLate => backup}/Olds/2/assets/fonts/nucleo.eot (100%) rename {TempLate => backup}/Olds/2/assets/fonts/nucleo.ttf (100%) rename {TempLate => backup}/Olds/2/assets/fonts/nucleo.woff (100%) rename {TempLate => backup}/Olds/2/assets/fonts/nucleo.woff2 (100%) rename {TempLate => backup}/Olds/2/assets/gallery/1.png (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/2.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/3.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/4.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/5.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/6.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/gnobg.png (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/new - Copy.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/new - 副本 (2).jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/new - 副本.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/new.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/new1.jpg (100%) rename {TempLate => backup}/Olds/2/assets/hlogos/nobg.png (100%) rename {TempLate => backup}/Olds/2/assets/img/UserDefaultImg.png (100%) rename {TempLate => backup}/Olds/2/assets/img/Z.png (100%) rename {TempLate => backup}/Olds/2/assets/img/apple-icon.png (100%) rename {TempLate => backup}/Olds/2/assets/img/asc.gif (100%) rename {TempLate => backup}/Olds/2/assets/img/bg.gif (100%) rename {TempLate => backup}/Olds/2/assets/img/bitcoin.png (100%) rename {TempLate => backup}/Olds/2/assets/img/blob.png (100%) rename {TempLate => backup}/Olds/2/assets/img/cercuri.png (100%) rename {TempLate => backup}/Olds/2/assets/img/chester-wade.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/cogs.gif (100%) rename {TempLate => backup}/Olds/2/assets/img/denys.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/desc.gif (100%) rename {TempLate => backup}/Olds/2/assets/img/dots.png (100%) rename {TempLate => backup}/Olds/2/assets/img/etherum.png (100%) rename {TempLate => backup}/Olds/2/assets/img/fabien-bazanegue.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/favicon.png (100%) rename {TempLate => backup}/Olds/2/assets/img/github.svg (100%) rename {TempLate => backup}/Olds/2/assets/img/google.svg (100%) rename {TempLate => backup}/Olds/2/assets/img/james.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/julie.jpeg (100%) rename {TempLate => backup}/Olds/2/assets/img/landing-page.png (100%) rename {TempLate => backup}/Olds/2/assets/img/levitation.png (100%) rename {TempLate => backup}/Olds/2/assets/img/logo.png (100%) rename {TempLate => backup}/Olds/2/assets/img/lora.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/lzhbg.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/mark-finn.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/mike.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/nucleo-logo.svg (100%) rename {TempLate => backup}/Olds/2/assets/img/path1.png (100%) rename {TempLate => backup}/Olds/2/assets/img/path2.png (100%) rename {TempLate => backup}/Olds/2/assets/img/path3.png (100%) rename {TempLate => backup}/Olds/2/assets/img/path4.png (100%) rename {TempLate => backup}/Olds/2/assets/img/path5.png (100%) rename {TempLate => backup}/Olds/2/assets/img/patrat.png (100%) rename {TempLate => backup}/Olds/2/assets/img/profile-page.png (100%) rename {TempLate => backup}/Olds/2/assets/img/ripp.png (100%) rename {TempLate => backup}/Olds/2/assets/img/ryan.jpg (100%) rename {TempLate => backup}/Olds/2/assets/img/square-purple-1.png (100%) rename {TempLate => backup}/Olds/2/assets/img/square1.png (100%) rename {TempLate => backup}/Olds/2/assets/img/square2.png (100%) rename {TempLate => backup}/Olds/2/assets/img/square3.png (100%) rename {TempLate => backup}/Olds/2/assets/img/square4.png (100%) rename {TempLate => backup}/Olds/2/assets/img/square5.png (100%) rename {TempLate => backup}/Olds/2/assets/img/square6.png (100%) rename {TempLate => backup}/Olds/2/assets/img/terminexusbg.png (100%) rename {TempLate => backup}/Olds/2/assets/img/triunghiuri.png (100%) rename {TempLate => backup}/Olds/2/assets/img/waves.png (100%) rename {TempLate => backup}/Olds/2/assets/js/core/bootstrap.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/core/echarts.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/core/echarts.world.js (100%) rename {TempLate => backup}/Olds/2/assets/js/core/jquery.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/core/popper.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/core/scrollreveal.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/gvs-design-system.js (100%) rename {TempLate => backup}/Olds/2/assets/js/gvs-top-system.js (100%) rename {TempLate => backup}/Olds/2/assets/js/i18n.lib.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/bootstrap-datepicker.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/bootstrap-datetimepicker.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/bootstrap-switch.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/chartjs.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/jquery.sharrre.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/moment.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/nouislider.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/plugins/perfect-scrollbar.jquery.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.esm.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.esm.min.js.map (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.js (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.js.map (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.min.js.map (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.msgpack.min.js (100%) rename {TempLate => backup}/Olds/2/assets/js/socket/socket.io.msgpack.min.js.map (100%) rename {TempLate => backup}/Olds/2/assets/links/G.jpg (100%) rename {TempLate => backup}/Olds/2/assets/links/GDEV.jpg (100%) rename {TempLate => backup}/Olds/2/assets/logo/1 - 副本.jpg (100%) rename {TempLate => backup}/Olds/2/assets/logo/1.jpg (100%) rename {TempLate => backup}/Olds/2/assets/logo/GVSDS.jpg (100%) rename {TempLate => backup}/Olds/2/assets/mp4/ZYBWHATISWYT.mp4 (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_alert.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_badge.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_breadcrumb.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_button-group.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_buttons.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_card.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_carousel.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_close.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_code.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_custom-forms.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_dropdown.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_forms.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_functions.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_grid.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_images.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_input-group.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_jumbotron.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_list-group.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_media.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_mixins.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_modal.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_nav.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_navbar.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_pagination.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_popover.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_print.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_progress.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_reboot.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_root.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_tables.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_tooltip.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_transitions.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_type.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_utilities.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/_variables.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_alert.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_background-variant.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_badge.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_border-radius.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_box-shadow.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_breakpoints.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_buttons.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_caret.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_clearfix.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_float.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_forms.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_gradients.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid-framework.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_hover.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_image.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_list-group.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_lists.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_nav-divider.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_pagination.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_reset-text.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_resize.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_screen-reader.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_size.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_table-row.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-emphasis.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-hide.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-truncate.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_transition.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_visibility.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_align.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_background.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_borders.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_clearfix.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_display.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_embed.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_flex.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_float.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_position.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_screenreaders.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_shadows.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_sizing.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_spacing.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_text.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_visibility.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_alerts.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_badge.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_buttons.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_card.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_checkboxes-radio.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_dropdown.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_example-pages.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_fixed-plugin.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_footer.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_forms.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_functions.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_icons.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_images.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_info-areas.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_input-group.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_misc.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_mixins.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_modal.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_navbar.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_pagination.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_pills.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_progress.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_rtl.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_sections.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_tables.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_tabs.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_type.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_utilities.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/_variables.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-chart.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-map.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-plain.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-register.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-stats.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-task.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/cards/_card-user.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_alert.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_background-variant.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_badges.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_buttons.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_dropdown.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_forms.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_icon.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_inputs.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_modals.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_page-header.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_popovers.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_vendor-prefixes.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/_wizard.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/mixins/opacity.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_blogs.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_contactus.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_features.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_headers.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_pricing.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_projects.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_social-subscribe-lines.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_team.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/sections/_testimonials.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_backgrounds.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_floating.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_helper.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_position.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_shadows.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_sizing.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_spacing.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_text.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/utilities/_transform.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-animate-bootstrap-notify.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-bootstrap-switch.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-datetimepicker.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-nouislider.scss (100%) rename {TempLate => backup}/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-perfect-scrollbar.scss (100%) rename {TempLate => backup}/Olds/2/assets/xterm/xterm.css (100%) rename {TempLate => backup}/Olds/2/demo.html (100%) rename {TempLate => backup}/Olds/2/enroll.html (100%) rename {TempLate => backup}/Olds/2/history.html (100%) rename {TempLate => backup}/Olds/2/index.html (100%) rename {TempLate => backup}/Olds/2/landing.html (100%) rename {TempLate => backup}/Olds/2/links copy.html (100%) rename {TempLate => backup}/Olds/2/links.html (100%) rename {TempLate => backup}/Olds/2/login.html (100%) rename {TempLate => backup}/Olds/2/logos.html (100%) rename {TempLate => backup}/Olds/2/members.html (100%) rename {TempLate => backup}/Olds/2/news.html (100%) rename {TempLate => backup}/Olds/2/profile.html (100%) rename {TempLate => backup}/Olds/2/test.html (100%) rename {TempLate => backup}/Olds/2/voucher.html (100%) rename {TempLate => backup}/Olds/3/1.html (100%) rename {TempLate => backup}/Olds/3/ContactUS.html (100%) rename {TempLate => backup}/Olds/3/Errors/404.html (100%) rename {TempLate => backup}/Olds/3/Errors/500.html (100%) rename {TempLate => backup}/Olds/3/Errors/503.html (100%) rename {TempLate => backup}/Olds/3/Errors/Piracy/best-loving.cn (100%) rename {TempLate => backup}/Olds/3/Errors/Piracy/kanglaohui.com (100%) rename {TempLate => backup}/Olds/3/Errors/_403_HOST.html (100%) rename {TempLate => backup}/Olds/3/Errors/_CSRFError (100%) rename {TempLate => backup}/Olds/3/Errors/_website_debug (100%) rename {TempLate => backup}/Olds/3/_base (100%) rename {TempLate => backup}/Olds/3/app.py (100%) rename {TempLate => backup}/Olds/3/assets/css/gvsds-page.css (100%) rename {TempLate => backup}/Olds/3/assets/css/typewriter.css (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/2.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/3.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/4.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/5.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/6.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/gnobg.png (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/new - Copy.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/new - 副本 (2) - 副本.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/new - 副本 (2).jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/new - 副本.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/new.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/new1.jpg (100%) rename {TempLate => backup}/Olds/3/assets/hlogos/nobg.png (100%) rename {TempLate => backup}/Olds/3/assets/icon/ICON - 副本.png (100%) rename {TempLate => backup}/Olds/3/assets/icon/ICON.html (100%) rename {TempLate => backup}/Olds/3/assets/icon/ICON.png (100%) rename {TempLate => backup}/Olds/3/assets/icon/ICON_DARKLINE - 副本.png (100%) rename {TempLate => backup}/Olds/3/assets/icon/ICON_DARKLINE.png (100%) rename {TempLate => backup}/Olds/3/assets/img/Mascot/1.png (100%) rename {TempLate => backup}/Olds/3/assets/img/Mascot/2.png (100%) rename {TempLate => backup}/Olds/3/assets/img/Mascot/3D2757A144FF5F1EAA4919221A5CA7D8.png (100%) rename {TempLate => backup}/Olds/3/assets/img/Mascot/OriginalImage.png (100%) rename {TempLate => backup}/Olds/3/assets/js/chart.js (100%) rename {TempLate => backup}/Olds/3/assets/js/footer.js (100%) rename {TempLate => backup}/Olds/3/assets/js/i18n.lib.js (100%) rename {TempLate => backup}/Olds/3/assets/js/icon.js (100%) rename {TempLate => backup}/Olds/3/assets/js/nav.js (100%) rename {TempLate => backup}/Olds/3/assets/js/reveal.js (100%) rename {TempLate => backup}/Olds/3/assets/js/scrollreveal.min.js (100%) rename {TempLate => backup}/Olds/3/assets/js/tailwind-config.js (100%) rename {TempLate => backup}/Olds/3/assets/js/typewriter.js (100%) rename {TempLate => backup}/Olds/3/assets/members/Chindows.jpg (100%) rename {TempLate => backup}/Olds/3/assets/members/terminexus.jpg (100%) rename {TempLate => backup}/Olds/3/assets/members/yrzd.jpg (100%) rename {TempLate => backup}/Olds/3/assets/members/赤砂.jpg (100%) rename {TempLate => backup}/Olds/3/assets/project/asdg.png (100%) rename {TempLate => backup}/Olds/3/assets/project/emstc.png (100%) rename {TempLate => backup}/Olds/3/assets/project/nsql.png (100%) rename {TempLate => backup}/Olds/3/gallery.html (100%) rename {TempLate => backup}/Olds/3/history.html (100%) rename {TempLate => backup}/Olds/3/index.html (100%) rename {TempLate => backup}/Olds/3/index2.html (100%) rename {TempLate => backup}/Olds/3/login.html (100%) rename {TempLate => backup}/Olds/3/members.html (100%) rename {TempLate => backup}/Olds/3/register.html (100%) rename {TempLate => backup}/nav/bp3.html (100%) rename {TempLate => backup}/nav/index.html (100%) delete mode 100644 php/fix-nextcloud-ini.ps1 delete mode 100644 php/keepalive-nextcloud.ps1 delete mode 100644 php/php-upstream.conf delete mode 100644 php/start-php.ps1 delete mode 100644 php/stop-php.ps1 delete mode 100644 php/test-mysql.php delete mode 100644 php/test-nc-public.py create mode 100644 service.log create mode 100644 service_err.log diff --git a/.gitignore b/.gitignore index 3be87ae2..a99a26f4 100644 --- a/.gitignore +++ b/.gitignore @@ -15,5 +15,7 @@ # GERP 新前端工程(独立 git 仓库) /GERP/ +# GERP 的编译文件 +/TempLate/GERP/ /gvsdsdk/ \ No newline at end of file diff --git a/TempLate/Chat/app.py b/TempLate/Chat/app.py deleted file mode 100644 index 05479567..00000000 --- a/TempLate/Chat/app.py +++ /dev/null @@ -1,108 +0,0 @@ -from flask import Flask, render_template, request, session, redirect, url_for -from flask_socketio import SocketIO, join_room, leave_room - - -app = Flask(__name__) -app.config['SECRET_KEY'] = 'jjj' - -socketio = SocketIO() -socketio.init_app(app) - - -online_user = [] -room_user = {} - - -@app.route('/', methods=['GET', 'POST']) -def index(): - if request.method == 'GET': - if 'username' in session: - return redirect(url_for('chat')) - return render_template('index.html') - else: - username = request.form.get('username') - room = request.form.get('room') - session['username'] = username - session['room'] = room - return redirect(url_for('chat')) - - -@app.route('/chat/') -def chat(): - if 'username' in session and 'room' in session: - username = session['username'] - room = session['room'] - return render_template('chat.html', username=username, room=room) - else: - return redirect(url_for('index')) - - -@app.route('/logout/') -def logout(): - if 'username' in session: - session.clear() - return redirect(url_for('index')) - - -# # 连接 -@socketio.on('connect') -def handle_connect(): - username = session.get('username') - online_user.append(username) - # print('connect info: ' + f'{username} connect') - # print(online_user) - # socketio.emit('connect info', f'{username} connect') - - -# 断开连接 -@socketio.on('disconnect') -def handle_disconnect(): - username = session.get('username') - print('connect info: ' + f'{username} disconnect') - # socketio.emit('connect info', f'{username} disconnect') - - -# @socketio.on('connect info') -# def handle_connect_info(info): -# print('connect info' + str(info)) -# room = session.get('room') -# socketio.emit('connect info', info, to=room) - - -@socketio.on('send msg') -def handle_message(data): - print('sendMsg' + str(data)) - room = session.get('room') - data['message'] = data.get('message').replace('<', '<').replace('>', '>').replace(' ', ' ') - socketio.emit('send msg', data, to=room) - - -@socketio.on('join') -def on_join(data): - username = data.get('username') - room = data.get('room') - try: - room_user[room].append(username) - except: - room_user[room] = [] - room_user[room].append(username) - - join_room(room) - print('join room: ' + str(data)) - print(room_user) - socketio.emit('connect info', username + '加入房间', to=room) - - -@socketio.on('leave') -def on_leave(data): - username = data.get('username') - room = data.get('room') - room_user[room].remove(username) - leave_room(room) - print('leave room ' + str(data)) - print(room_user) - socketio.emit('connect info', username + '离开房间', to=room) - - -if __name__ == '__main__': - socketio.run(app, host='0.0.0.0', port=5000, debug=True) diff --git a/TempLate/Chat/chat.html b/TempLate/Chat/chat.html deleted file mode 100644 index a6422c75..00000000 --- a/TempLate/Chat/chat.html +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - - - - - - - CGY's ChatRoom - - - - - - - - -
-
-
-
-
{{ username }}
-
-
-
- - -
-
-
-
-
-
-
- - - - \ No newline at end of file diff --git a/TempLate/Chat/index.html b/TempLate/Chat/index.html deleted file mode 100644 index d3ee762c..00000000 --- a/TempLate/Chat/index.html +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - - register - - - - - - - -
-
-
-
-
-
-
-
- - -
-
-
-
- - -
-
- -
-
-
-
- - - \ No newline at end of file diff --git a/TempLate/FTP/FULLCHAIN.PEM b/TempLate/FTP/FULLCHAIN.PEM deleted file mode 100644 index 5a75484b..00000000 --- a/TempLate/FTP/FULLCHAIN.PEM +++ /dev/null @@ -1,48 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDjTCCAxOgAwIBAgISBTV8t4ABCVIR2ONpNFnjoS0AMAoGCCqGSM49BAMDMDIx -CzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQDEwJF -NjAeFw0yNTA2MTcwMzQxNTNaFw0yNTA5MTUwMzQxNTJaMBYxFDASBgNVBAMMCyou -Z3ZzZHMuY29tMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEiiQo5+oVGkXCZyqY -c0OoKgrhze+29pbAQG+cCRE5gy+jPzURiLhTHBd1ceB973k3EUQv1gPkNV9u32bH -ujl/76OCAiMwggIfMA4GA1UdDwEB/wQEAwIHgDAdBgNVHSUEFjAUBggrBgEFBQcD -AQYIKwYBBQUHAwIwDAYDVR0TAQH/BAIwADAdBgNVHQ4EFgQUZ8UMmWhguY+Dwezm -XtgeMg4UUuwwHwYDVR0jBBgwFoAUkydGmAOpUWiOmNbEQkjbI79YlNIwMgYIKwYB -BQUHAQEEJjAkMCIGCCsGAQUFBzAChhZodHRwOi8vZTYuaS5sZW5jci5vcmcvMCEG -A1UdEQQaMBiCCyouZ3ZzZHMuY29tgglndnNkcy5jb20wEwYDVR0gBAwwCjAIBgZn -gQwBAgEwLAYDVR0fBCUwIzAhoB+gHYYbaHR0cDovL2U2LmMubGVuY3Iub3JnLzEu -Y3JsMIIBBAYKKwYBBAHWeQIEAgSB9QSB8gDwAHYA7TxL1ugGwqSiAFfbyyTiOAHf -US/txIbFcA8g3bc+P+AAAAGXfDA1jQAABAMARzBFAiBQjVnBQipFwx8zN95aqyKM -2kaSQ9xyAnwjBSV3hTDAowIhANRFJ3GxbszEggL45PKW5Fv5JefrKMMihqBGCEHQ -ic6wAHYA3dzKNJXX4RYF55Uy+sef+D0cUN/bADoUEnYKLKy7yCoAAAGXfDA9lQAA -BAMARzBFAiBZw+3FvIiMzX+BZfK8xd+AfQ1BeuiqqNAmHc1qnOh+VQIhAPxnB8SD -spB0y7ggOvuUiWmKXbRhs2cAOp4ek6xP2DdmMAoGCCqGSM49BAMDA2gAMGUCMEMc -XjnlFEUQ0pjoYCk4juJ3y6j0rJLTMGuwtH96viOQyC2RTU8CPP2s7oxYvlVKyAIx -AJoroV4iK5QUaRUhQ4adUkIsypz6WUO+AO7Xa7siP8GbfX63NfjBbIGrcW8KzXBP -FA== ------END CERTIFICATE----- ------BEGIN CERTIFICATE----- -MIIEVzCCAj+gAwIBAgIRALBXPpFzlydw27SHyzpFKzgwDQYJKoZIhvcNAQELBQAw -TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh -cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjQwMzEzMDAwMDAw -WhcNMjcwMzEyMjM1OTU5WjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg -RW5jcnlwdDELMAkGA1UEAxMCRTYwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATZ8Z5G -h/ghcWCoJuuj+rnq2h25EqfUJtlRFLFhfHWWvyILOR/VvtEKRqotPEoJhC6+QJVV -6RlAN2Z17TJOdwRJ+HB7wxjnzvdxEP6sdNgA1O1tHHMWMxCcOrLqbGL0vbijgfgw -gfUwDgYDVR0PAQH/BAQDAgGGMB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcD -ATASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQWBBSTJ0aYA6lRaI6Y1sRCSNsj -v1iU0jAfBgNVHSMEGDAWgBR5tFnme7bl5AFzgAiIyBpY9umbbjAyBggrBgEFBQcB -AQQmMCQwIgYIKwYBBQUHMAKGFmh0dHA6Ly94MS5pLmxlbmNyLm9yZy8wEwYDVR0g -BAwwCjAIBgZngQwBAgEwJwYDVR0fBCAwHjAcoBqgGIYWaHR0cDovL3gxLmMubGVu -Y3Iub3JnLzANBgkqhkiG9w0BAQsFAAOCAgEAfYt7SiA1sgWGCIpunk46r4AExIRc -MxkKgUhNlrrv1B21hOaXN/5miE+LOTbrcmU/M9yvC6MVY730GNFoL8IhJ8j8vrOL -pMY22OP6baS1k9YMrtDTlwJHoGby04ThTUeBDksS9RiuHvicZqBedQdIF65pZuhp -eDcGBcLiYasQr/EO5gxxtLyTmgsHSOVSBcFOn9lgv7LECPq9i7mfH3mpxgrRKSxH -pOoZ0KXMcB+hHuvlklHntvcI0mMMQ0mhYj6qtMFStkF1RpCG3IPdIwpVCQqu8GV7 -s8ubknRzs+3C/Bm19RFOoiPpDkwvyNfvmQ14XkyqqKK5oZ8zhD32kFRQkxa8uZSu -h4aTImFxknu39waBxIRXE4jKxlAmQc4QjFZoq1KmQqQg0J/1JF8RlFvJas1VcjLv -YlvUB2t6npO6oQjB3l+PNf0DpQH7iUx3Wz5AjQCi6L25FjyE06q6BZ/QlmtYdl/8 -ZYao4SRqPEs/6cAiF+Qf5zg2UkaWtDphl1LKMuTNLotvsX99HP69V2faNyegodQ0 -LyTApr/vT01YPE46vNsDLgK+4cL6TrzC/a4WcmF5SRJ938zrv/duJHLXQIku5v0+ -EwOy59Hdm0PT/Er/84dDV0CSjdR/2XuZM3kpysSKLgD1cKiDA+IRguODCxfO9cyY -Ig46v9mFmBvyH04= ------END CERTIFICATE----- diff --git a/TempLate/FTP/MYYY.docx b/TempLate/FTP/MYYY.docx deleted file mode 100644 index a9ede6c138db10ab2d29e4dc17fa9975eac78f92..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69182 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±%-r3^=)N|Ua`_H3S>jO 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

<60?<8yzhU7N0@{R#cqj827+OogY| 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 A3;+NC diff --git a/TempLate/FTP/PRIVKEY.PEM b/TempLate/FTP/PRIVKEY.PEM deleted file mode 100644 index d487d477..00000000 --- a/TempLate/FTP/PRIVKEY.PEM +++ /dev/null @@ -1,5 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgHnavAJ1RXA37EqxY -fOqm6dGuXxZlaNil1jX7bYtjqgehRANCAASKJCjn6hUaRcJnKphzQ6gqCuHN77b2 -lsBAb5wJETmDL6M/NRGIuFMcF3Vx4H3veTcRRC/WA+Q1X27fZse6OX/v ------END PRIVATE KEY----- diff --git a/TempLate/FTP/hookop-1.0.0.jar b/TempLate/FTP/hookop-1.0.0.jar deleted file mode 100644 index 28db29e49368c09ed9d55243866700d43a028617..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17239 zcmbVz1yEhvvMufsEVx^6cXxMpcXx;2!QI_mf(Cbj1lNtbyE{L*_r1!w=bdw^?(eEq z1;rj?uem0xXZPrCc_~mZR3IoQC?Fsp!k^b~L;d-qjEJ%TjfAWyos592gs6y;GOdiL zNvwigFFk7Tdddmk$!ddq}JH^A3q%+d`uk$(t}S;?aIwGJPrGO5JM$(AR219-9gXWsPN1 zp=6K^>B=AW!kWFl@k>#aW3|?dKj2P;gs;H?f@0_lwDhZ!di2$CcqYS~R)djpZjz~D z`8B`d!f_!?BLE0kPE+6(JIUKl!&Ehu)ht~Hy-c2 zt6SkCCc!Me>js0E1;J4fd(^^EqBeyUus?yzOF=?8)D$Y<0|NokfdB!?|Lp@t`1ydP zC4@v|l|=N+?d+`V?29y(ZI{K7efHIuU+P%9KP9a800Fou>N25>r2I+9Q@?)%)Nv95 zGHn&Z-+X0NSSTo)oB+6R`j@KroG#@|m!fR0cC-CSMHK<9EQqb$Dz@>)jE^!MSg*xr zRPCFAwDH25UBix?x)Z#zbH)yC&8amPZjT0E`#T1-$5bsl)hoWX;`%AF)$e9uP1MZY z8dBc#QKRFVEhr^Barv-ys#F|aZCf+yM9tn>H|mbBt<`4^L}_+~)*cV+yxDT<9)-WK)tnS*N)yl1}KxzY))Kxvid=8D!Fu}^ST;--7z!cOgWk{d@T9$ zWlyK#erET^*Oy197`Y2z>ByD6S~YuW{o?A%rS)D!AgB{_K6tMG!?CrsODEwdV|OcB zAuc$ zt&>e)jwo&>onz7RU{Yy|H2Q#oN%ay|PHK(D6hv9y)4^$9wLFA2J zP4ICP#mc5+V`GK7v#805x8Qn^E6R^`nq|+@$Sydwqv-?d@5p&91Bfm?6SUPs&f1&@ z4QQ13qP{&HV5Vo8h+JATW^`Fqfu7Xgf}S8VyzjGsfeej%x~NL9hJ@);m*suH+40!aLFyskaoB+tl3u4l^M;@a_m_Nkq&`JNev-#B`kKoN^6ih zbw-e@P6o~vTAqhDSvE9-dsA-2JDchhP!1QDCfN{aO!K+3mu|lWHwCPZuo4P%N(x8u zJSnya8C*f0o#0XjkD;FA&@&$1#z#*dgd2)1Gznrjw(DISh(;T5wILK>;>)QAdUs*@ zsI5X3WT+%@ibq}=bB_0$AyQ^WYtg?edBAh`*LfDb- zKLHo>!9d<}q?-%fh89<7C)ihPXAMed*y#8J0~fuMju?u0D+v=tnN!+ILrt|*XE?|9 zCQ8PC2(_CJ<}K!i!xUVCF^X8*`worfZ#m^56h;bGa4Y-j zTQ=3p-EH9SIUTULs%sX2IwVX_3PPSzf;2r6Ti8Rb3fHkr9P&DJ7Eae73?_I2viC9 z`*e#>sfcfwdKn6x`9tik~;30flK>N zM|7@$*+K_$H4dm?TM6-^ca=qDG&TFL<#A7Ww2oIkt}@Ck#79oa16k}GGbk3s&Gw_aYbJfr5X9?IE@T7E05jde#OINsFp*Dpw8s)Cj&cr2Z1(5; zri!9$?n^OalUqz9b_95m%=Jp)gRitl4uxB>{i{QR2e!piVE$h;7idDWHkl0#A5+zl)Q zTMb$xbgNu)Bqjmg9(8?nv$$7VpB@E%7C!QeHlMc6gF*i6z>6$icAc#Q-4d5yJhgys zP}Y@7V6YeJ1IE^UU9}4=rv-&`+>R0JNl(OlA!J-QP1(}(R5)9)Xa^lS!JeUqVTqw{SYlQRAg4A@ zU4)@*V7muwh=YY*hRWBiJ#-wRtllmXi(B8IOOnPPA!nIjsE^4(3XYX$FS)^SA7Z+n zGqKy)XXUIDQ9|*PR%*^W+%4{e*`veRo=3NuN7I>?Nh)Y1#a7a&LiG!rfyqMHAiY+- z-ROTA-D9AwATo`mevq^YU!Nefzj~>@fIBENlWfQlPq`%OfW~OI}dd}XkFNU03ZcN=fzBpC% zu2n!$vDJHmYc-1~HQ%FopYo`QXdkH9?v3qwbK!p-kBvkKU6M@A{Ysf4c!7wY`V z4ZkR{Y5OKlm$k(52yFk(E4U&n1(jxR1By*TjxQNAyMoleW3Q!M#zL$~(#)llxqx<> zA$@w4y|igY^engIdP5BYzW^802>P81Bs-E^n8!^+DkKKE5%Y&{=)E^aCTkEnD_%c6 zRjF|>_{lvE$C(%8DYTIdiS-cp2fh*@(?PXWOHzU8O{p}yViGsS45k`YmhS`;l&)f{b(c z>boHUQtrvXP+uuZbmUW^#T!yBGmU}T(oUQs(-5d9N%S!>zxt)oM_yH@-0Tb@AyVfA zfbFni@36*@VkDj@KEw+3Aq~S6go=@_a_Fp_2{D6I$%N87GP7_ehXcuKU7|c2gswQ! zPLjtseC6VK0BqMGNwvf|jo*;3I%S*<1(3%P)`d06?zk7_g9SGrmL|Hu@%v?i%!eWz zo2hUE9jH#2Yw|*|?}Mr6>^ek@JSlyHN=UGKhyMXV3(BFGixs7S=S&^3WN|joj^^z~ zK!*54VIJYpckfNM4`~`P{QfgWhJ-qKim`Zr0Rjre{->B3`j1Ho=)Zu!GM1ll_P^}! zgKfy4e>ZS)GI4gI`)^>sV)Xxk{X0beuh1X=58A@W&X(5R*33uEjeBnW-A`|OBzt(I zH8L4e$zDe|>xR@_u9AcF5ju zAN1(Z-FL{AC?0IRVb*2_0-8KNwpb^Q8hUS}(pOwBcrynA!U(=;WEm6UKenT&0CQ1i zNQ&&4&0txb=r&%JEbR^2pV$Xn&ZbS;^77tnd-+#v`d3g_DgrF~IPsEIgw_tvRFgam5?Z?K!AmG z(8t4E!DVKSXxVr{&f_s4PJKW}`Ex2>t{>-?+PGvygB{|rpUE~&aoyZqT(l4j)}qD5 z(Vi6c`A6JixoU4Qrk;Zg1l;ml?1*)x-#fH=&cF6U1Rm7;*M?C7bg#2dD92eh_ey; zR@W1vG2SO@A>fW)>Tj$>v-0e5{gfcp(wJ3{!st}Cfx*f#7jM1=PeiXSF`n_~(hxFU z97ffUW_HYDVYg4`dei9m zBe4C~Dgg!n4h?=i6*@E$Lt#R>@ohBiES4W%=@6$bKg_qTbx%}KwwDlhfn0LGG_!GU z%rP6a-1rBg2}IZ`6Ki~3A&-sYi6Qp@x6qL8Bs4!!M0BQ!32EYX+ZlqdyR3|ZMpuBn6u6@eJ6DBS{6>l7oxDAEk49LNrQa#`D*1Bo&4BE@VFkS!pVL05u z3Nb9Xer%o{c1J-Cy8TGPND8qaZFl#9-p`85AhLW}T)6V)*n(;G zc+_iEnf2y!U2;XXwTytRfNmnAP+C=y8**xns$$ptt|&;mMi`dZL zWbVk=XLzcEZ&q;?qC^PBDS(D~eRx9>1z{>q3$5;gr;~sO^lqaX1sI?9Cvq7}}Q8S1~ zf8|kT|DL5p2aP7mf_ zdQmY`Aaytib$8>3tXR`j8PXwAze4$fALS&+GR+mA#he`}Q zmBpbYj~FrSlDj(6$J!30_SJB=)T?+6r<*gcX}bZ0Ar_}qGaY+VsL*7yXzNm-+Aq77 zPCTt^>ScT6d5zh2YuzmJL8t{<3s?rEg?wuIENHv^)tuETk9-sEF1?(;-G*lR5pl>k z7f$SYb;fk8S}&+&(y>@T5Pen=f*sEp@9nPko-98#neEsUV|I#a^%ejEX9J7l5T1^S zfOrDplv>*AxLvjNO>mmMu*()L%?4}?j5pPhMk1mV_OZ;Vim$N}b5=q3gR9&1=sFgo z2!m$w$f&yLtxeV*`NdMlDZAyM2(a0aL56?41_BjoS>qBv#TY;04&CkaBUs1Hc2xa_N?;;8f#8+4QY3GNbIM!?Iv|;ch%NBA6Axcb* z8&uGkC~GbalHO1Uuh{5{+f^3}E}a@I(e0^KEXoP4B%ndgO~pw^W8N8OEFDr(Of8=`rdMr3i7GQa4R74%c zCwB?}uB1exnN`hqgFaKsV!GBkTo|G=Yv1`IT*B*vgzQaF9ekd^b(C8MN03DV9U2yT z12!^gi=%ML2tX)${h(XI?+7PFjzrQG5}QugQD4h724;1mmZ}II&fQ&bF6hgsQs$H` zGuL@Vdus7g@pn97ls+$#xoGuYKOfNH8=C*fqA0dguVMsQt_|7~cLFxm6p%OE^c)BE zVwjZ+WR@i0ck00F^Fo>*|7eqao^>A)542E8j4=peF4dRAbMIGQ?ai$;@5Kht zogW)7489b96i9<8wTFhjZ${PlaQTgnYJRAY%v3-(17RwHmP}8l^__*d?~{9Ui|qp*@s;~)=p@TK za$jLZQkxzFG)UA!1yk?qs%P4H#-|q)UsvkXN~GQ#Z9e+=S{yUCBp+Fl#p|U{-K*YKWv^9ol8!{ z9;7{o3?0;lcv468fcs>kmfiKpEauYKk&B1yv2bv; zHbYb#ReYV-LCpj>t=e+$Sub%p?}z4Els5Ov=lkhiJNHkk;z%mXJGQHarTwULnTFh|t!Hd>Sv@Sif6a++m>>icM~zs|0wJlCTuvF3 z1jVycLI7(hs0|law4+EN)fTpsQAlcyNP~+7^PTK-j1(GW$Uo#^Dx=hS@*Uz=gi+?) zwbZDcI6|T6?yCBb?5=MqR3e+(%jf5B%#So*s-p*Nw1uRYlzl`%vy5{Y<j}NTF6wb6tL(7 zD9GgT>9G{NAxyV1K6~J`(SA+!<@i3S-AbKt4*y2GXd`O&Ze>Gr?XCo8<)xQvHjVC; z4WkWnn$pSCaY4a!JPhpHAM5u(YxR~I7#Q(=e4|TWGM#{%+t=GlV!>DkM}N2m9VdS8 zexB%Hydr76#dz7QCxX6__mSQp@uzzOb@u$)I}IAS*ok{)1wpLD5w6uK0bJKY#n^1g zFYoWJmdcDvuk0D0egu3&dey;_OC0*#RtEdw+vjE_X(7vZS_$XJt1E;KrbuSs_Za#F z(47LPIxF|{3p-7;dH zrxrnjr2@;T*Lm982Ne+b%PU)?WWi)rm$t#dnA_rCj|agQX9b zb^QX|jB_?$IepSz+vxwPPe9GQV#JKcf^PAnUgCUEIjVLUsoM_mCg$Q`tmR}T0tQBt zTw;hBOds5#VM1Lc&*41nj0LeHj)W$ng-PKdJ_D9b~8v9~()4~|Zk zM@+YX5XipbYlL^^af9+P^xN!O((3pr(MClp(2_-On8SoRM1m>X)+>=oH-H0f8FtQC zDce(C?|rOw@%lmc_l7udPqS)U?8*PVe5t%RW+=0vXRkl7$Waq zG6~gb-nSQ}y*a&tI%pfx~=IeC#*5AU44vKWh7Ki6fm4r{Y^tJ6>SYQ$3>X^oYk$kg*@;zy}qil#m6szuKJXV zJSbZ!N#bnE-eOZ>BEdxE-kO0D*I#IM6vMm|Nd&@y#M~!K*At9lNvYl<3tBY(MJTU} zsecAE_nh8?x-RmhX$8``1D=rhW)+VU1*5120F;Z}Ca8z#ibDC#JHgsMdH6L-XLK>c zD@G{Co;v`Y-mnHKqBF1W(_rs$9G+tN@aorSE})i6%5q0^gAdIn`*>9aD?bR=Oj*psF7A|$?E4ea!kWSPGQD{Mtq3}3 zz97cn1O6}XfY~0XM*<22Bn19X-hu3|UN<>=B|8^KBNJsu10yRF$A710ly*<4To~(m&Sh6w`kmAwLv3L7HHwvX-MOGP0Oq?9lZuZ@M#rUI}h=5SAzZaOqe~ zW&hs&4vUba+!lg<0fx1d4BCiK9D58)A|EKsGM^ilPlZ*Un>H`MjoTWKdoNC>fsN8~ z!F@c&Tp$}kcvfhHVj-l;JxdqO&|xZ#(7eEuSDU!U8q`&2B2bo7j4~rjq(X|Yc~0d> zE})*a7DIeMu*KlaM(hz3FKek;?Yfp)v_Q28t1BrTpG1cx*=g}I`|z*_6FA_ZXkG!ipsf4?wzQMiID z`|k4Pv1|3)Q=N{p5=ylVgDmH<6rxczhJXl+wPs@>cz(5UoxpcMQ_>Uahe%Ux#{kLv ztAH$xgS9s5KB-~f1zejIsj^SDDRQ4-~pZ@;89GS}?Ti^TDA z^_iRk)ibM8Mq-YavL>_bz!Kso8KoPI_ylX9E8o=a)w&-bU>DEVBoS+VC5k_2W;c7O zW_8D@iS(T5di!GIbt6ax;izV6MlKtqVN~ws@i8mdUgt;$O z@)4Y#O+Xm?z|eZku3dK`S|*^9Md0`r>dB#Ot@F7SSyA*OisE!o0G^q5gbOClgynv zEyQ!4T<6EFjvb-F>F`%-;Bw=l)a&Wm=5-Ik$|tO+i7<08EFBrLx%_05@MkGfxiW+f?J%ih4~S`(Fvn?ne-x3vl>Ab$z62a1}P7(UQQrTLV-I_P?2t9S?T zq{a))`vB~l$i7OWISYwzDm$LWF-+p|?(PHnnarAg(WT*gr~^IJgZMEd&t`OlV(`m! zU3F!Ksvw*`oTU*G>=_KpPBKq2LYW4Hmt@F`?jkQ|cHaP)hh@urV07CHiC&< z-mcwYXEumnrow6`2tZ(;FXqQw^#GhijGbO22)Mhk_aAN}xp{N<9%Uo?%P%ZCS_21G zyG7OB)GOkQi%<1m@7d#KmCe(#T${z18gD+QSCCNxqPVr5cnsPKnWaymn(4eVuhP_8 zXX4I>U^C;#mc@e)hIt{x=ZY0MQ3);4x)F>IMx5b%Btl}>K3_31$PPhWi_z6SWG1S8 zLRUmmrARS5W>kj4r1nXRL6N-(sulE1$|uW1h?4sie|;6StyTTm z=ScgHeU9jVwOck8?iRNH)uvPZJ&l~bke!Wk*XUctHyz-sOTo?ov6cN=z#c<*GIWQY&l{)toeb^AHT^Zt5F4iFS!&t%dpqod`FI>Qc&%<^QN zqv)f$!mc`Nr3s_9PFhnkGKSDA=lYIgdIbeXvO2nik|0OlVPCdSGK!Fx@{Cel+}v#9 zkR?8}PUXHZd3grZ+UV0vwP`GNewvj(-!ecQ?nai>nM&| zx5>yoII}i};W@NZg=bZ4WK%hGcEcK=?x^X#FWY;*dvDWydQ*3PCm<@PP!vRrUM{4B zrzs&n94b2LB1$4h%gQ?siX*;@6t4NPC^ov`KsNgJ=AS1J!f4C*Ap7NGU97eeo8SWG zc%q_IKuTWm2NUKG7zXSMt4hk+e)`Vr2R)+)_S;09nCWikE2Dm`S?@1zGg<4|K9AdH zX3aToPeN$44DK=7HR`Ok6-+e=`GP5vWAZjoOuCbmEzh5;9hB65I=9wV-u5j~#OlPM z9wO4bnxIC$4^ZOYT5~oxx-aYx;Xnh0d`IX%`?49sCB{d!lfWUpqE0oZF)}0VAid#5 z>Ni02xhLhZus)xR%RS~acl_{DuVx4tCvH3?2x4Iw9+SvsX7P~%nRBuVv4b-6Qeapx zH%--MIV|__lJ7Q3m$>*ep-4AwXCi`hUv%J?VN$#QDM*FKVF0zT7fjH$J=)4835rRZ z(sg>EKchQJ)N(grHuT!fO}t{Y27kBfU37eX4e)y8i&iYjqSgja-;i_yHaj2Q{3%51 z-7H1_+hagF!7Wr?dU%V9BxsvvStZPA2Am+@WQWdmo_OLBQQAjsH_OSuZ?|a&J=|%1 zOE73AI*IaTj%h)Y`&G4YQ3_F|H1;}Q=Yz+VzDdB9cr?}8a-0Y^m+F^BQ&A)-Av4=$ zj4FU&e$B;z!4xVlPg@zuTAbs$w@W_Ggjpav2`eq1>{GQ3NVW~VE;Q`Prr{Tv9W&Hl zU>;+Z&N9PQ4s2D!^ntJHa-=`r7M}pu9A;+3qVn#_-2|2ysTH4)^s2`@pPbod&qXS+ za4vuz12gG(38MaJ-rXEkowmj&KjZ#L=y{%3aPRieC1iEZ3W4uGzQbS((o|N?AXtDl z9PDP(e$_QeAYkhTh@<1rH$xe)5@pex{H&Upw~p4(7vscAoP&}?ZMR4PK7`k(0WleZ zIg$s`@x>rH-Y3RY%l!MLr_+R0`d#vgx0Zdx;I*+u$sB-`K5#3u#35jDvSh4V$~{Nh za+HDy3jC&X;H8R(6uGH3aYm^9wL6<`2~Smy%&_XHt;ZUl(ukk{(~DVQnr!9Q9<>kZCj=oomMQQOVn&`7|_v71%Yj_ z)@oCPv4V6350D5WOaY8CI=h-OG08_g&Cx;3q&^53b)}}7NA^Dft4Tiszae~lLBX2H z($E_*6q+8}>&*1h&A!fb+H2-(ZUQ!@ADt{(CT;w-_fgvg(1gEa(rDanrf#{ma}F!U zq;03ThDINfjMh1*lAtBR()^9cSx(?fo=uKr&8*?KQh=<2%V?7ds>ySly|BQpZQ0)1 zf;5xx{I?cLjB(54i-R%b*1i;O6}FaRS~$3y67jemiwWzrH5rtc*RP1^n`YMxlAlx|v~) z5YdPf;Xz7cSUC9Bo=Gq96peQh6gp@-0NJ&=z50O^yzV)<-HOoxZ((!f4Qe*V=t|Lz zi|t`A^J6}R;4Fyp?A^NwzW^kuz-%(QV%ZyTxieAO>oN#awvqaPGhEGlSj~A?I?K_L(njO>RUUz4fRXN_} z=Ua)}?=jo>-l*?BMqcNDL0J>3lo)bX%Hz43&ei8FjoV94m)Gm85yat#(92cw^%Gkj zJi^n0Z=!u)`65Bel^>AYs6((JH|Fl-W`L0aXB2R(20%h^hbaf*;0s}ixi1WnLrAT_ z93NUKzFoU<*h+Yi+w!p;1M7mjl?J{WSe?(Dmt$w}s_6N>>osMQ@5$tM=Uym5m6YzemY*aOi zf;G=Y%y?n>JbaE*g|(`@gn1fwmV@MV#3wiH*^ka@6h5z>%inDD_UzC=u!C)vFbZ|r zr^bquQ@(K}{;ec{N^k3joV?bv=TcvnK6_+E#y5=~Y`G%)S@bnnA($cNAe<^0eZO2O zfsi-f7h4dhOoH<&XUl>aiOla5mbo+EBAE^ZAyr;*LJm*}8Hz!0SR${SLAH6%46f(} zN{J7|KH4dCfAX}?ku}&k>_}+PCA3)PPL)!So$?LMr~gC?Zt3^A-aX?63wwxkD6LR` zNsl-+?-ip=vK5ta*5QWkm#+X@5+<1bDSUza47vZ_SJ3{wuTU~^bTx65v;VWVP+3(% zQA2&#A+UxLKmw0Kjli!W1n~#UgRsd%WnuXM^F_t-FrM0g0U+a+LRVE)rDKK zXPl8;$npm+=44-Mo0g6q8m zp%6c(P!EVb$9D#6xKhpjs_!bKL<4gI5(&Mw3Nc06sY99&qn|NOQ!wTsP=|AwL|`lo zV>S^)M0C!tJUf!WMpkI4>MkjTTI&n@qNx|Hhxl2ALZ+yW;i|i@$pi--6TZmoh)jc& zW0;mY(PCCqURax`IE40_H)z4(Im; zDY$hMhxKJL0MjkX_j~wqawDcWCWDz?!do(@!xha(qbpbo5zaGJYQhof69=l0?THA@ zm3r-|UzO|_?~}G?M#(JxsI|W1##DwDS`)+t*1`zVRj^AAfvZ_*Ex$mE9$&)T|U z_W{MwotHL=?fYqewe`2!3_4*~Q-W_+YDQEHnbw`=aw<7oxuQhKbR&3RbwlPTLbXho zGd)}VZr_plvOMgcG`BJ;!s<&*L(d7aF8akQn4`AIos#V~MY18{8VK#m#CD)^<0uy=(?t(&h*T9~fSY z#R@=^lF2Fxaz7u2RXA}_WNrFy)2@kUcA0|9jKJyeQm4@zHxmcZ-;2Gg{V?5EgB#u< z7R*aSVOs2?i+Mj(mGm!_Wqh(e7$9V%nfY8toLm@WPMsd+@-$uq$>+_3GPV1a&sO^@ zku0&sG_x<8jug|{T18o)p_?+J#6qqUqVqrwiN&L(n@lUR5jJfGK{mn9U* z%`tON+q1hA?I*S|qPQ5#%vU{9A;q zo{_oRN7f5H+|RxWz$X;#0xMdc#kfdma*;2$r=gmJmJYx8Nv6)2%Gb&ma^H68)0(rt zfgPBis=;xPxeT>R2Y8Aoz{i!yPMF&!05)jyMbQesN)l;hEY$=TW-%_%NFP2W`GYU1 z$1r;)Jkr5O@=Y~l7y8*gF+OQ(vl-ws#qbre%%JXVqE_9J0CA|BX48q$PPZ^VM|5hC zw4Jwx_97Waww&eHTEK`r+ZpOO9kR1Z_e!AC_r)L@=m;-+mc z?xEoH^33XXbB5ZZH}Y2WaYiqYO|pY{rS)+_`(fQhy*)btNY*lq#?u(TCs8jA}ckO;vCVaF7=gn7k zI(Wh0EuP*pg2~wcOS-LB-b{$!CV9*x5g{2SUKx?4&&nSvvBUMq11c? zqA)7E%#W(GtcTY#<8F6#chu(7tc%L4jWXM=~08#QwL&E*xAmz@5Oz~ z980&S`&qNpgg*pja!3@T6PgPmoF7?WrgBe}EoB#=vzQi>Qx5p{^3;*3i`qptu-(9( zok;F>ZC5fkSNRPCt$;4dwBY5YfV)!-hJ|Jv|K;e!j3N8M&SU3VIbUa3!^H>Hb!4Jo zy|cd5y@~YHuRn#G#(xxUFn{j$zsuV{C6!+y9qqqV8>fHm zJ5MwNVgUUI(fvEM)bV2IXxqxc;hq5urO`0*qEH(F_{}aav@LhK^W9Db7_<$5(Pv2; zHHw>B(^<^rRIJobQdQNV>LNbmmZdZEgb#&U-UVtJrUgvUH3#%Qcl4h}SF5>`Q)C#h zyMhi6Gv#g&Yr_PM86^po!P#cooKr*TX$n*8BtV1Iy21QhFtt48!gAtcMy+XgNVBK%yK$ik^wYBfAG?JANRMBr3^6hm?E7vjmX zqTHa1^QMQDY>s$>wbsnxB01F;DZisd1vFs&H4G2K!qRaZ@p@+Mb;0;|{=8l9U1X%K;WWBu^!d zt`|O~)v=n4optx75N3cx*X#5R^C7^7j3c;P;K$A*FVjL)jeC|TzsDZh9>_PaU(5cq zhttsfb5Srqw^m*X7z7pQ_h|PYXOe%7cK@gS)u8vE8U8q-@oO&Pw;BBWzWC*u>Tp%_$SbR-Y57^b^1T2IsT0OW53C->5bne z^nbAbJInEBj$fGnUF)yTl;2i?^Y5OMe?t7~OZjc<|AY8*dy>CWyZ=o5#{}`0Wc1sT>Hhxi{z^dlGxHw zH~-B2$7AVNsPWrSIsZ@K@n`TKeg3bL>$ib$|HC= - - - - - - - -

- - \ No newline at end of file diff --git a/TempLate/FTP/mail.html b/TempLate/FTP/mail.html deleted file mode 100644 index f3530c39..00000000 --- a/TempLate/FTP/mail.html +++ /dev/null @@ -1,262 +0,0 @@ - - - - - - - - - - - \ No newline at end of file diff --git a/TempLate/FTP/map.html b/TempLate/FTP/map.html deleted file mode 100644 index 0e1d2b32..00000000 --- a/TempLate/FTP/map.html +++ /dev/null @@ -1,842 +0,0 @@ - - - - - - 全球攻防态势监控平台 - - - - - - - - - - - - -
-
-
-
- -
-

全球攻防态势监控平台

-
- -
-
-
- 系统运行中 -
- -
- - - -
-
-
-
- - -
- -
- -
-
-

服务器信息

- 在线 -
-
-
- 位置 - 天津 -
-
- IP地址 - 121.58.245.100 -
-
- 系统负载 -
-
-
-
- 35% -
-
-
- 响应时间 - 24ms -
-
-
- - -
-

攻击统计

-
-
-

今日攻击

-

2,583

-

12.5%

-
-
-

防护成功率

-

99.8%

-

0.3%

-
-
-

活跃攻击源

-

128

-

8.2%

-
-
-

流量峰值

-

42.6 Gbps

-

0.0%

-
-
-
- - -
-

攻击类型分布

-
- -
-
- - -
-

最近攻击记录

-
-
-
-

182.168.123.45

-

DDOS攻击 · 3分钟前

-
- 高风险 -
-
-
-

203.0.113.78

-

SQL注入 · 15分钟前

-
- 中风险 -
-
-
-

54.176.101.202

-

XSS攻击 · 28分钟前

-
- 中风险 -
-
-
-

192.168.1.100

-

暴力破解 · 42分钟前

-
- 中风险 -
-
-
-

104.236.209.25

-

端口扫描 · 1小时前

-
- 低风险 -
-
-
-
- - -
-
-
-

全球攻击态势

-
- - -
-
- - -
- -
- -
-
-
-

加载地图数据...

-
-
- - -
-
-
-
-
- - - - - - -
-
-
-
- - -
- -
-

攻击趋势

-
- -
-
- - -
-

攻击源分布

-
-
-
- 美国 - 32% -
-
-
-
-
-
-
- 俄罗斯 - 24% -
-
-
-
-
-
-
- 中国 - 18% -
-
-
-
-
-
-
- 印度 - 12% -
-
-
-
-
-
-
- 其他 - 14% -
-
-
-
-
-
-
- - -
-

防护效果

-
-
-
99.8%
-

拦截成功率

-
-
-
0.2%
-

漏报率

-
-
-
- - -
-

系统状态

-
-
-
-
- Web应用防火墙 -
- 正常 -
-
-
-
- 入侵检测系统 -
- 正常 -
-
-
-
- 流量清洗系统 -
- 正常 -
-
-
-
- 威胁情报更新 -
- 延迟 -
-
-
-
- 日志分析系统 -
- 正常 -
-
-
- - -
-
- - - -
-
-
-
- - -
-

API调用示例

-
-
- - - -
- -
-
- - - - \ No newline at end of file diff --git a/TempLate/FTP/oneqwq.png b/TempLate/FTP/oneqwq.png deleted file mode 100644 index 7f7319febbc2e41134ac092cef5b46cf535dd3c1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1785 zcmVT~7#kB46BHUA6%`c~8XXoE78n>9 z85tQFA0rtbBpD$l8X6iJASN0jCL0?Y8zLtgBqSXj9UveeASo{(DlZ`^FeN1=B`-E6 zE;S}EH6}1PConlFHasdSDk?NPD>gqYIYBKqK`l5#GCxQ&K}$GBQ8`IfJWN+TOjbWp zUqDe^Kv7;oQ(#9~Wk*?ONKaKsTWLyMXiZ^pPh)aXW_3|#byHJQQ)hWpYkXBzRatL? zS#g70bA(@aj9+<-VR(sQdyry!jb(q6Wq_1rfR$x|m2HQbZHSz2hn;ngqIZv?dy=Jp zmZ*T1r+}BKhMB8~ovw(Uu8E$lji9cMqq32sw2`E=m7JoLr?r)+wVJECp02!~ue+eI zzN53jrnJ7QxWuZs#jLu=t-8jwz{s}3&9}F=xy8=B$I!mW&%Vjezsl3Y%+$rt*T&D* z$IsQt$;rvl*vrey&eh$|*4)q5-O$(E)6>(~-s0ir>E-3+>h16E@9*;U_WAny|Ns9d zE0eJR0004WQchCQ*ZgokUT`*4nDGFE&F&D{SJ7ing6^^PJY3w`=pq`dltYcxf2)qrZf^=OE9Q=W@@z zNRlt=3t@!eMpBn3^-IiZEcJ*I3?dYB0Pg*rm4r%RqKrTw0>l6aNy93LfNOYwAHl%^ zegp`)po4TlMBsWlNEiHJzDNY>wwrljfy(`r+fk=gNmy z{3qJPoaolbh^F)cB1fOT5H|wACt(0>WQ%qJ>aJS{K+-fXB?CaAFdqV-N@oO^0WgY0 z7~ruMptK)gga#Llk5Dgm25>O%2X@Nq0GlrrN&xUwm~R8{mmlY89EV{j6krIKogeEk zgv}<{^}4f6P;o9>%%=*TBKbBzJPMcQ&jmLg#km|L$$GVHLlQX-*mk+PPH|!Sa4{o$ zibOJPfGCq1RXu@0CMO|{a|`b+K{}VqU@t8#yy=ocDv`?>x*pSYJ(+6*XiSR60br1+ zDR4SFm$3m*uY+x8=FYk#8i9Bk#KaXevsl5z-AamOPG7K9A4|T{fRh zA}<4CkoFpUf3g4^QicZj>w(|6 zPa7J**TkTCur6p(-(6E+zz9D_z5#TlT@?)wg4K@kyXsPhaEoC5}$ z2cmAD0|QTK-`QI?6t-Ez!s9O;o8MQ?onIUVu%)s^ss;G#*Xys$yfst=TOEL#w|7oW zy*3PhsA>yL-m&%(1kt`2!|d(nE`6oYtEmwO09C2Wg!~815KP8)<7TG z8`Z|ms{O@UsJp+t!nz=~d9m#;udKZP?y6n;{q|4xrz>|^SJ=wd4Om>fc=7ei6}xuB zuGpay3LJRMA_8${iYmqPufF{J8<$r3jy>|kOK-pP@dt~= bLa*z;k$zL0{63Z!00000NkvXXu0mjfybc`^ diff --git a/TempLate/FTP/policeman.png b/TempLate/FTP/policeman.png deleted file mode 100644 index cd0357231d4fcd1d4ad005c17b405ad1878500bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2221 zcmV;e2vYZnP)r<229i}s#{oL-VTo+_TBwUgJF@z8Z5E7E8fWUH>J6=#OUJyY90u>i(rBimDGSiV| zad%Nxw^PK~FZNsgXr~|i;uq~-^7K3>IoX#Ghz@LNGxN;*%kTF)=RMDJ?r&67gkPG` zh@CLo;DoQX6eHCRT(7WWSYWie6w?jm@YROlq7dT^u3a~96L~>cLLa1CC8&l!Z zr=r@DiEgI}S1XJ6RDf{yz6&r~=SGjyjLPE~u%{=ZP7bBq7YJkg-0!LN~Doi@GmE@qW%KrZ^K)PO!oiKgIjcZkfauhTaWQ(a_z!`fE zE_y7uT;td~0jyOBXYacJ^X(_)ia%U!$7Qkb4V);#keK_!Vpo`KJGCbQaL&i(okXnJ z>xZz_I`Cf=Kp%kCw|Mq6<^|C|wpQR?TNUoL3ba)UVZ{Hgs$DmbWMhtdaL7=CfBjUB zjlUd|Hhqlkn&1(=4M+6_IBFK6X>&At+3f_u-ok@DJhY*#bSZkY!0?7BO?P3=8X7h zMI5xw#iGvpvGl1pb6JLESqJN)&ALPD4~<8;^NjFVjNsE@%0zKaI*N=s6dKbo(3SNHZ~Uh zZ84~D{6^aJ?a3TxL!4$kN^>(L38h$3QIS-utfmhq&y1kj1SZ?dal74v`@OYT6un$}`T{(S*HGCpj-}x)3EK2A z#vJCd49l_(U%Pjc07?*wpn9LN{|N!uh_8C9v2dvdU-o~F2SW{5x>Ap|u}(alxPZsE zdhp#%;w%a?k|k)<#~5>%%Q7s>I_?Xw&OdZj1V!L`Xlthch2M7pmajD9>wzY$TyDnq zLoIl6vjb~4JMp9MBA!n6;>q|~VV_5>&47EICnRbL4ARFKbC}CAEXz6`UTMMdU=tn; zHsWrF7gOTGq(*{PggG(l_FaGn1C3bfZ@@P~fUo2z|-A!v(~j|6@#@T;%~7qK_b%*?>&^WoO5TM`o!6PTKsl82YzonCvi z4IrWD^N4~ZmNp})tQCh{9iYvT_h_U8f1NsqheOTSa{*FPQskCH(2jU=69UZ6&cfI1 z#dMP!zQ%G)xA=XGN#Y^U9%drdFUdRGqzDvX{dc{1cBdb!H`?&+Q0v|ckd%~!fVs$l(Ti~~6*?sHie0djluOX2k3wYU7fCVH zlVUNZZG;*D?B#=5Me-(?nVGreD$9|uThhVlLGlV=M2RQ>iQc)Mfc#Q7@*RE@IK2|I z88_RVet~QyQViM@jsj`P%LUC=Bf*arB%hX+w&g0z^<>i=-=PP$Bd*pQwFaqrLgNty zAj$c$#2|5->jZ4&rzEsONR(<2_^)0_@<&e(%0?!;yK%ItUmlz&0Bv=ZWe!IG^RF+mfFw8q=$C|qk1^)R zU56hv17CR6nM2tMk;v^Nh#Fz<^|?u1c=%0^TNf8Qx!?(#K6Mdd?%|YUNIH@#L7QX_ z869%fKaf%IGsHIeaax{#%M|}VNw-R<7{M|M94!h5^~JJI3iRg98@zq{7VqA@llJS^ zukq^DE4+O95-(o7!20?+mX?+zXw%0SbC?@Z0G{#Hg+~dYK4NN#Ge_MAcqArhANe#6 zsY&q?w3Fjwa5yd+i7^MUy1I(xkH;em@E>j4Pqie|`RM=v002ovPDHLkV1f+_SRE{> diff --git a/TempLate/FTP/r.js b/TempLate/FTP/r.js deleted file mode 100644 index a37dcb20..00000000 --- a/TempLate/FTP/r.js +++ /dev/null @@ -1,466 +0,0 @@ -/** - * 高性能跨iframe资源共享系统 - 通用版 - * 修复了资源处理和消息传递的问题 - */ -class ResourceShareManager { - constructor() { - this.cache = new Map(); - this.pendingRequests = new Map(); - this.blobUrls = new Set(); - this.isTopLevel = !window.parent || window.parent === window; - this.myOrigin = window.location.origin; - - // 配置阈值 - this.POST_MESSAGE_LIMIT = 1 * 1024 * 1024; // 1MB - this.BLOB_LIMIT = 1024 * 1024 * 1024; // 1GB - - this.init(); - } - - init() { - this.log(`系统初始化 - ${this.isTopLevel ? '顶级页面' : '子页面'}`, 'info'); - this.log(`传输阈值: PM=${this.formatBytes(this.POST_MESSAGE_LIMIT)}, Blob=${this.formatBytes(this.BLOB_LIMIT)}`, 'info'); - - if (this.isTopLevel) { - window.addEventListener('message', (event) => { - this.handleChildRequest(event); - }); - this.log('顶级页面:监听同源子页面请求', 'success'); - } else { - this.log('子页面:准备向同源父页面请求资源', 'info'); - } - - // 页面卸载时清理Blob URL - window.addEventListener('beforeunload', () => { - this.cleanupBlobUrls(); - }); - - this.updateStatus(); - } - - async loadResource(type, url) { - const cacheKey = `${type}:${url}`; - - if (this.cache.has(cacheKey)) { - const cachedData = this.cache.get(cacheKey); - this.log(`本地缓存命中: ${cacheKey}`, 'cache'); - return this.processCachedData(cachedData, type); - } - - if (this.isTopLevel) { - const content = await this.fetchAndCache(type, url); - return this.processContent(content, type); - } else { - try { - const parentResponse = await this.requestFromParent(type, url); - if (parentResponse !== undefined && parentResponse !== null) { - this.log(`从父页面获取资源: ${cacheKey}`, 'response'); - return this.processParentResponse(parentResponse, type); - } - } catch (error) { - this.log(`父页面请求失败: ${error.message}`, 'warning'); - } - - const content = await this.fetchAndCache(type, url); - const processedContent = this.processContent(content, type); - this.sendToParent(type, url, content); - return processedContent; - } - } - - async fetchAndCache(type, url) { - const cacheKey = `${type}:${url}`; - - if (this.pendingRequests.has(cacheKey)) { - this.log(`等待已有请求: ${cacheKey}`, 'request'); - return await this.pendingRequests.get(cacheKey); - } - - this.log(`发起网络请求: ${cacheKey}`, 'request'); - - const requestPromise = new Promise(async (resolve, reject) => { - try { - const response = await fetch(url); - if (!response.ok) { - throw new Error(`HTTP ${response.status}: ${response.statusText}`); - } - - const content = await response.text(); - const size = new Blob([content]).size; - - // 超过1GB的资源不缓存 - if (size > this.BLOB_LIMIT) { - this.log(`资源过大 (${this.formatBytes(size)}),跳过缓存: ${cacheKey}`, 'large'); - resolve(content); - return; - } - - this.cache.set(cacheKey, content); - this.log(`资源已缓存 (${this.formatBytes(size)}): ${cacheKey}`, 'cache'); - this.updateStatus(); - resolve(content); - } catch (error) { - this.log(`请求失败: ${cacheKey} - ${error.message}`, 'danger'); - reject(error); - } finally { - this.pendingRequests.delete(cacheKey); - } - }); - - this.pendingRequests.set(cacheKey, requestPromise); - return await requestPromise; - } - - processContent(content, type) { - if (!content) { - this.log('警告:处理空内容', 'warning'); - return content; - } - - const size = new Blob([content]).size; - - if (size <= this.POST_MESSAGE_LIMIT) { - // 小文件:直接返回内容 - return content; - } else { - // 大文件:创建Blob URL - const blob = new Blob([content], { type: type === 'script' ? 'text/javascript' : 'text/css' }); - const blobUrl = URL.createObjectURL(blob); - this.blobUrls.add(blobUrl); - this.log(`创建Blob URL (${this.formatBytes(size)}): ${blobUrl}`, 'blob'); - this.updateStatus(); - return blobUrl; - } - } - - processCachedData(cachedData, type) { - if (!cachedData) { - this.log('警告:缓存数据为空', 'warning'); - return cachedData; - } - - // 如果缓存的是Blob URL,直接返回 - if (typeof cachedData === 'string' && cachedData.startsWith('blob:')) { - return cachedData; - } - // 否则按内容处理 - return this.processContent(cachedData, type); - } - - processParentResponse(response, type) { - if (!response) { - this.log('警告:父页面响应为空', 'warning'); - return null; - } - - if (response.contentType === 'blob') { - // 收到Blob URL - if (response.content) { - this.blobUrls.add(response.content); - this.updateStatus(); - } - return response.content; - } else { - // 收到直接内容 - return this.processContent(response.content, type); - } - } - - async requestFromParent(type, url) { - return new Promise((resolve, reject) => { - const messageId = Date.now() + Math.random(); - const timeout = setTimeout(() => { - reject(new Error('请求超时')); - }, 10000); // 增加超时时间以适应大文件 - - const handleMessage = (event) => { - if (event.origin !== this.myOrigin) { - return; - } - - if (event.data.type === 'resource-response' && event.data.messageId === messageId) { - clearTimeout(timeout); - window.removeEventListener('message', handleMessage); - if (event.data.success) { - resolve({ - contentType: event.data.contentType || 'direct', - content: event.data.content - }); - } else { - reject(new Error(event.data.error)); - } - } - }; - - window.addEventListener('message', handleMessage); - - window.parent.postMessage({ - type: 'resource-request', - messageId, - resourceType: type, - url: url - }, this.myOrigin); - }); - } - - sendToParent(type, url, content) { - if (!content) { - this.log('警告:发送空内容到父页面', 'warning'); - return; - } - - const size = new Blob([content]).size; - let messageData; - - if (size <= this.POST_MESSAGE_LIMIT) { - // 小文件:直接发送内容 - messageData = { - type: 'resource-cache-update', - resourceType: type, - url: url, - contentType: 'direct', - content: content - }; - } else { - // 大文件:创建Blob并发送URL - const blob = new Blob([content], { type: type === 'script' ? 'text/javascript' : 'text/css' }); - const blobUrl = URL.createObjectURL(blob); - this.blobUrls.add(blobUrl); - - messageData = { - type: 'resource-cache-update', - resourceType: type, - url: url, - contentType: 'blob', - content: blobUrl - }; - } - - window.parent.postMessage(messageData, this.myOrigin); - this.log(`发送缓存到父页面 (${this.formatBytes(size)}): ${type}:${url}`, 'response'); - } - - handleChildRequest(event) { - if (event.origin !== this.myOrigin) { - this.log(`🚨 安全拦截:拒绝来自非同源 (${event.origin}) 的消息`, 'security'); - return; - } - - const { type, messageId, resourceType, url } = event.data; - - if (type === 'resource-request') { - const cacheKey = `${resourceType}:${url}`; - - if (this.cache.has(cacheKey)) { - const content = this.cache.get(cacheKey); - const size = new Blob([content]).size; - let responseData; - - if (size <= this.POST_MESSAGE_LIMIT) { - // 小文件:直接发送 - responseData = { - type: 'resource-response', - messageId, - success: true, - contentType: 'direct', - content: content - }; - } else { - // 大文件:创建Blob并发送URL - const blob = new Blob([content], { type: resourceType === 'script' ? 'text/javascript' : 'text/css' }); - const blobUrl = URL.createObjectURL(blob); - this.blobUrls.add(blobUrl); - - responseData = { - type: 'resource-response', - messageId, - success: true, - contentType: 'blob', - content: blobUrl - }; - } - - event.source.postMessage(responseData, event.origin); - this.log(`响应子页面请求 (${this.formatBytes(size)}): ${cacheKey}`, 'response'); - } else { - event.source.postMessage({ - type: 'resource-response', - messageId, - success: false, - error: 'Resource not cached' - }, event.origin); - } - } else if (type === 'resource-cache-update') { - const cacheKey = `${resourceType}:${url}`; - - // 根据内容类型处理 - if (event.data.contentType === 'blob') { - // 存储Blob URL的引用(注意:这里不存储实际内容) - this.cache.set(cacheKey, event.data.content); - this.blobUrls.add(event.data.content); - } else { - // 直接存储内容 - this.cache.set(cacheKey, event.data.content); - } - - this.log(`更新缓存: ${cacheKey}`, 'cache'); - this.updateStatus(); - } - } - - cleanupBlobUrls() { - this.blobUrls.forEach(url => { - URL.revokeObjectURL(url); - }); - this.blobUrls.clear(); - this.log('已清理所有Blob URL', 'info'); - this.updateStatus(); - } - - formatBytes(bytes) { - if (bytes === 0) return '0 Bytes'; - const k = 1024; - const sizes = ['Bytes', 'KB', 'MB', 'GB']; - const i = Math.floor(Math.log(bytes) / Math.log(k)); - return parseFloat((bytes / Math.pow(k, i)).toFixed(2)) + ' ' + sizes[i]; - } - - log(message, category = 'info') { - const timestamp = new Date().toLocaleTimeString(); - const logMessage = `[${timestamp}] ${message}`; - - // 尝试更新UI(如果存在) - const logContainer = document.getElementById('logContainer'); - if (logContainer) { - const logEntry = document.createElement('div'); - logEntry.className = `log-entry ${category}`; - logEntry.textContent = logMessage; - logContainer.appendChild(logEntry); - logContainer.scrollTop = logContainer.scrollHeight; - } - - // 始终输出到控制台 - console.log(`[ResourceShare] ${message}`); - } - - updateStatus() { - // 尝试更新UI状态(如果存在) - const pageTypeEl = document.getElementById('pageType'); - const cacheCountEl = document.getElementById('cacheCount'); - const blobCountEl = document.getElementById('blobCount'); - const currentOriginEl = document.getElementById('currentOrigin'); - - if(pageTypeEl) pageTypeEl.textContent = this.isTopLevel ? '顶级页面' : '子页面'; - if(cacheCountEl) cacheCountEl.textContent = this.cache.size; - if(blobCountEl) blobCountEl.textContent = this.blobUrls.size; - if(currentOriginEl) currentOriginEl.textContent = this.myOrigin; - } - - clearCache() { - this.cache.clear(); - this.cleanupBlobUrls(); - this.log('缓存已清空', 'warning'); - this.updateStatus(); - } -} - -// 自定义元素实现 -class ResourceShareElement extends HTMLElement { - constructor() { - super(); - this.manager = window.resourceShareManager; - } - - connectedCallback() { - const type = this.getAttribute('type'); - const url = this.getAttribute('src') || this.getAttribute('href'); - - if (!type || !url) { - console.error('ResourceShare: 缺少必要的 type 或 url 属性'); - return; - } - - this.loadResource(type, url); - } - - async loadResource(type, url) { - try { - const content = await this.manager.loadResource(type, url); - - if (content) { - if (type === 'script') { - this.executeScript(content); - } else if (type === 'style') { - this.injectStyle(content); - } - } else { - this.manager.log(`资源内容为空: ${url}`, 'warning'); - } - } catch (error) { - console.error(`ResourceShare 加载失败: ${url}`, error); - this.manager.log(`加载失败: ${url} - ${error.message}`, 'danger'); - } - } - - executeScript(content) { - if (!content) { - this.manager.log('警告:尝试执行空脚本', 'warning'); - return; - } - - // 如果是Blob URL,使用src方式加载 - if (content.startsWith('blob:')) { - const script = document.createElement('script'); - script.src = content; - script.onload = () => { - this.manager.log(`JavaScript (Blob) 已执行`, 'success'); - }; - script.onerror = (error) => { - this.manager.log(`JavaScript (Blob) 执行失败: ${error}`, 'danger'); - }; - document.head.appendChild(script); - } else { - // 直接内容 - const script = document.createElement('script'); - script.textContent = content; - document.head.appendChild(script); - this.manager.log(`JavaScript 已执行`, 'success'); - } - } - - injectStyle(content) { - if (!content) { - this.manager.log('警告:尝试注入空样式', 'warning'); - return; - } - - // 如果是Blob URL,使用link方式加载 - if (content.startsWith('blob:')) { - const link = document.createElement('link'); - link.rel = 'stylesheet'; - link.href = content; - link.onload = () => { - this.manager.log(`CSS (Blob) 已注入`, 'success'); - }; - link.onerror = (error) => { - this.manager.log(`CSS (Blob) 注入失败: ${error}`, 'danger'); - }; - document.head.appendChild(link); - } else { - // 直接内容 - const style = document.createElement('style'); - style.textContent = content; - document.head.appendChild(style); - this.manager.log(`CSS 已注入`, 'success'); - } - } -} - -// 初始化系统 -window.resourceShareManager = new ResourceShareManager(); -customElements.define('resource-share', ResourceShareElement); - -// 导出管理器供外部使用 -if (typeof module !== 'undefined' && module.exports) { - module.exports = { ResourceShareManager, ResourceShareElement }; -} \ No newline at end of file diff --git a/TempLate/GERP/assets/Admin-BH3hT3BL.js b/TempLate/GERP/assets/Admin-BH3hT3BL.js deleted file mode 100644 index 0c1be47b..00000000 --- a/TempLate/GERP/assets/Admin-BH3hT3BL.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,hn as n,ln as r,mn as i}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a}from"./serverScope-O8Rw8SFk.js";import{t as o}from"./CrudTable-B49nrpUt.js";var s={class:`wo-admin-page`},c=t(n({__name:`Admin`,setup(t){return a(`工单管理`),(t,n)=>(e(),r(`div`,s,[i(o,{table:`WorkOrder`,title:`工单管理`,searchable:``,pageable:``,selectable:``,stretch:``})]))}}),[[`__scopeId`,`data-v-7d410849`]]);export{c as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/AuditLog-DSDRHrcO.js b/TempLate/GERP/assets/AuditLog-DSDRHrcO.js deleted file mode 100644 index ac06fab8..00000000 --- a/TempLate/GERP/assets/AuditLog-DSDRHrcO.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Nn as i,Yn as a,_ as o,an as s,cn as c,en as l,hn as u,ir as d,ln as f,mn as p,on as m,pn as h,sn as g}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as _}from"./serverScope-O8Rw8SFk.js";import{t as v}from"./date-picker-CM_15T0u.js";import{r as y,t as b}from"./select-BGsfCDCJ.js";import{n as ee,t as te}from"./table-DPU4-geg.js";import{r as x,s as S}from"./router-CMu0lceh.js";import{t as ne}from"./button-CPx9BSuo.js";import{t as re}from"./tag-BSnLMVgs.js";import{t as ie}from"./dialog-_5VhSQg5.js";import{t as ae}from"./empty-CnQTxkvl.js";import{t as oe}from"./pagination-DOGDdUWm.js";import{t as se}from"./directive-CY41a6pJ.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-yeo4Q6aC.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-Cy-4mdDD.js";import"./css-DMLZMbB9.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-fhPIiYtD.js";import{t as C}from"./AdminBadge-Z72F8Boy.js";import"./css-ByqxgOA-.js";import"./css-D4jab2ni2.js";var ce={class:`audit-log-page`},w={class:`audit-log-header`},T={class:`audit-log-filters`},le={class:`mono`},ue={class:`mono`},de={key:0,style:{color:`var(--el-color-danger)`,padding:`20px`}},fe={class:`audit-log-pagination`},pe={class:`detail-section`},me={class:`detail-base`},he={class:`mono`},ge={class:`mono`},_e={key:0,class:`detail-section`},E={class:`detail-json`},D={key:1,class:`detail-section`},O={class:`detail-json`},k=20,A=o(u({__name:`AuditLog`,setup(o){_(`操作审计日志`);let u=x(),A=s(()=>u.isAdmin),j=d(!1),M=[`User`,`Role`,`Permission`,`Tenant`,`Company`],N=[{value:`add`,label:`新增`},{value:`modify`,label:`修改`},{value:`delete`,label:`删除`}],P=d(``),F=d(``),I=d(null),L=d(1),R=d(0),z=d([]),B=d(!1),V=d(``),H=d(!1),U=d(null);function W(e){return e&&{add:`新增`,modify:`修改`,delete:`删除`}[e]||e||`-`}function G(e){return e&&{add:`success`,modify:`warning`,delete:`danger`}[e]||`info`}function K(e){return e?String(e).replace(`T`,` `).substring(0,19):`-`}function q(e){if(typeof e!=`string`)return e;try{return JSON.parse(e)}catch{return e}}function J(e){if(!e)return null;if(typeof e==`string`){let t=q(e);return typeof t==`object`&&t?t:null}return typeof e==`object`?e:null}let Y=s(()=>J(U.value?.OldData)),X=s(()=>J(U.value?.NewData));function Z(){let e={page:L.value,page_size:k,ordering:`-CreateTime`};return P.value&&(e.TableName=P.value),F.value&&(e.Action=F.value),I.value&&I.value.length===2&&(e.CreateTime__gte=I.value[0]+` 00:00:00`,e.CreateTime__lte=I.value[1]+` 23:59:59`),e}async function Q(){B.value=!0,V.value=``;try{let e=await S(`/API/FormAPI/Get/AuditLog`,Z());Array.isArray(e)?(z.value=e,R.value=e.length):e&&Array.isArray(e.records)?(z.value=e.records,R.value=e.total??z.value.length):(z.value=[],R.value=0)}catch(e){V.value=`加载审计日志失败:`+(e instanceof Error?e.message:String(e)),z.value=[],R.value=0}finally{B.value=!1}}function ve(){L.value=1,Q()}function ye(){P.value=``,F.value=``,I.value=null,L.value=1,Q()}function be(e){L.value=e,Q()}function xe(e){U.value=e,H.value=!0}function $(e){if(!e)return``;try{return JSON.stringify(e,null,2)}catch{return String(e)}}return e(()=>{if(!A.value){j.value=!0;return}Q()}),(e,o)=>{let s=ae,u=ne,d=b,_=y,x=v,S=ee,A=re,q=te,J=oe,Z=ie,Se=se;return i(),f(`div`,ce,[p(C),j.value?(i(),g(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:r(()=>[...o[4]||=[m(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(i(),f(l,{key:1},[m(`div`,w,[o[6]||=m(`h1`,{class:`page-title`},[m(`i`,{class:`fas fa-history icon-primary`}),m(`span`,null,`操作审计日志`)],-1),p(u,{icon:`Refresh`,onClick:Q},{default:r(()=>[...o[5]||=[h(`刷新`,-1)]]),_:1})]),m(`div`,T,[o[9]||=m(`span`,{class:`filter-label`},`表名:`,-1),p(_,{modelValue:P.value,"onUpdate:modelValue":o[0]||=e=>P.value=e,placeholder:`全部`,clearable:``,style:{width:`140px`}},{default:r(()=>[(i(),f(l,null,n(M,e=>p(d,{key:e,label:e,value:e},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),o[10]||=m(`span`,{class:`filter-label`},`操作:`,-1),p(_,{modelValue:F.value,"onUpdate:modelValue":o[1]||=e=>F.value=e,placeholder:`全部`,clearable:``,style:{width:`120px`}},{default:r(()=>[(i(),f(l,null,n(N,e=>p(d,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`]),o[11]||=m(`span`,{class:`filter-label`},`时间范围:`,-1),p(x,{modelValue:I.value,"onUpdate:modelValue":o[2]||=e=>I.value=e,type:`daterange`,"range-separator":`至`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,"value-format":`YYYY-MM-DD`,style:{width:`280px`}},null,8,[`modelValue`]),p(u,{type:`primary`,icon:`Search`,onClick:ve},{default:r(()=>[...o[7]||=[h(`查询`,-1)]]),_:1}),p(u,{icon:`RefreshLeft`,onClick:ye},{default:r(()=>[...o[8]||=[h(`重置`,-1)]]),_:1})]),a((i(),g(q,{data:z.value,border:``,stripe:``,style:{width:`100%`},class:`audit-log-table`},{empty:r(()=>[V.value?(i(),f(`div`,de,[o[13]||=m(`i`,{class:`fas fa-exclamation-circle`},null,-1),h(` `+t(V.value),1)])):(i(),g(s,{key:1,description:`暂无审计日志`}))]),default:r(()=>[p(S,{label:`时间`,width:`170`},{default:r(({row:e})=>[h(t(K(e.CreateTime)),1)]),_:1}),p(S,{prop:`TableName`,label:`表名`,width:`120`}),p(S,{label:`操作`,width:`90`},{default:r(({row:e})=>[p(A,{type:G(e.Action),size:`small`},{default:r(()=>[h(t(W(e.Action)),1)]),_:2},1032,[`type`])]),_:1}),p(S,{label:`目标UUID`,width:`190`},{default:r(({row:e})=>[m(`code`,le,t(e.TargetUUID||`-`),1)]),_:1}),p(S,{label:`IP地址`,width:`150`},{default:r(({row:e})=>[m(`code`,ue,t(e.IPAddress||`-`),1)]),_:1}),p(S,{label:`操作人`,"min-width":`140`},{default:r(({row:e})=>[h(t(e.UserUUID_label||e.UserUUID||`-`),1)]),_:1}),p(S,{label:`详情`,width:`90`,fixed:`right`},{default:r(({row:e})=>[p(u,{size:`small`,link:``,type:`primary`,onClick:t=>xe(e)},{default:r(()=>[...o[12]||=[m(`i`,{class:`fas fa-eye`},null,-1),h(` 详情 `,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`])),[[Se,B.value]]),m(`div`,fe,[p(J,{background:``,layout:`total, prev, pager, next`,total:R.value,"page-size":k,"current-page":L.value,onCurrentChange:be},null,8,[`total`,`current-page`])])],64)),p(Z,{modelValue:H.value,"onUpdate:modelValue":o[3]||=e=>H.value=e,title:`审计日志详情`,width:`800px`,top:`6vh`},{default:r(()=>[U.value?(i(),f(l,{key:0},[m(`div`,pe,[o[22]||=m(`h4`,null,`基本信息`,-1),m(`div`,me,[m(`div`,null,[o[14]||=m(`strong`,null,`时间:`,-1),h(` `+t(K(U.value.CreateTime)),1)]),m(`div`,null,[o[15]||=m(`strong`,null,`表名:`,-1),h(` `+t(U.value.TableName||``),1)]),m(`div`,null,[o[16]||=m(`strong`,null,`操作:`,-1),p(A,{type:G(U.value.Action),size:`small`},{default:r(()=>[h(t(W(U.value.Action)),1)]),_:1},8,[`type`])]),m(`div`,null,[o[17]||=m(`strong`,null,`目标UUID:`,-1),o[18]||=h(),m(`code`,he,t(U.value.TargetUUID||`-`),1)]),m(`div`,null,[o[19]||=m(`strong`,null,`IP地址:`,-1),o[20]||=h(),m(`code`,ge,t(U.value.IPAddress||`-`),1)]),m(`div`,null,[o[21]||=m(`strong`,null,`操作人:`,-1),h(` `+t(U.value.UserUUID_label||U.value.UserUUID||`-`),1)])])]),Y.value?(i(),f(`div`,_e,[o[23]||=m(`h4`,null,`变更前数据 (OldData)`,-1),m(`pre`,E,t($(Y.value)),1)])):c(``,!0),X.value?(i(),f(`div`,D,[o[24]||=m(`h4`,null,`变更后数据 (NewData)`,-1),m(`pre`,O,t($(X.value)),1)])):c(``,!0)],64)):c(``,!0)]),_:1},8,[`modelValue`])])}}}),[[`__scopeId`,`data-v-5977e9e6`]]);export{A as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Company-CxKo2eoH.js b/TempLate/GERP/assets/Company-CxKo2eoH.js deleted file mode 100644 index 52352054..00000000 --- a/TempLate/GERP/assets/Company-CxKo2eoH.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./AdminBadge-Z72F8Boy.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`company-page`},u=t(r({__name:`Company`,setup(t){o(`公司管理`);let r=n();function u(e){r.push({path:`/company/company-detail`,query:{CompanyUUID:e.CompanyUUID||``}})}return(t,n)=>(e(),i(`div`,l,[a(s),a(c,{table:`Company`,title:`公司管理`,"pk-field":`CompanyUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-6eb2ef38`]]);export{u as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/CompanyDetail-COaiszTK.js b/TempLate/GERP/assets/CompanyDetail-COaiszTK.js deleted file mode 100644 index b9367c28..00000000 --- a/TempLate/GERP/assets/CompanyDetail-COaiszTK.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as ee,Nn as i,_ as a,an as o,cn as s,en as c,h as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as te}from"./serverScope-O8Rw8SFk.js";import{t as x}from"./date-picker-CM_15T0u.js";import{u as S}from"./use-global-config-D-dPcPvU.js";import{n as C}from"./descriptions-Cq_aE9sg.js";import{r as w,t as T}from"./select-BGsfCDCJ.js";import{n as E,t as D}from"./form-F--u6XQJ.js";import{t as O}from"./alert-BpFV-0dO.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./tag-BSnLMVgs.js";import{t as j}from"./card-Dj_UeWcA.js";import{t as M}from"./dialog-_5VhSQg5.js";import{t as ne}from"./input-number-CiNOxXL6.js";import{t as re}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{t as N}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-B2Pzr8Vf.js";import{t as ie}from"./DetailPage-m11wfvkM.js";import{t as ae}from"./InfoGrid-C1it9Z2Y.js";import{t as F}from"./useResolveUUIDs-ipmPZLo4.js";var I=`CompanyUUID`,L=a(u({__name:`CompanyDetail`,setup(a){let u=p(),L=l(),{resolveUUIDs:R}=F(),z=d(!1),B=d(null),V=d({}),H=d(``),U=u.query.CompanyUUID||``,W={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}};function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}async function J(){if(!U){H.value=`缺少 CompanyUUID 参数,无法加载公司详情。`;return}z.value=!0,H.value=``;try{let e=q(await P.list(`Company`,{CompanyUUID:U,pageSize:1})),t=e.find(e=>e.CompanyUUID===U)||e[0];if(!t){H.value=`未找到公司数据`;return}B.value=t,y(G(t.CompanyName)||`公司详情`);let n={};t.ParentCompanyUUID&&(n.parentCompany={table:`Company`,uuids:[t.ParentCompanyUUID]}),t.TenantUUID&&(n.tenant={table:`Tenant`,uuids:[t.TenantUUID]}),Object.keys(n).length&&(V.value=await R(n))}catch(e){H.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{z.value=!1}}function oe(e){L.push({path:`/company/department-detail`,query:{DeptUUID:G(e.DeptUUID)}})}function se(e){L.push({path:`/company/workgroup-detail`,query:{WorkgroupUUID:G(e.WorkgroupUUID)}})}function ce(e){L.push({path:`/company/employee-detail`,query:{UserUUID:G(e.UserUUID)}})}let Y=d(!1),X=d(!1),Z=d([]),Q=h({}),le=o(()=>Z.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==I));async function $(){if(B.value){try{Z.value.length||(Z.value=await P.getColumns(`Company`))}catch{Z.value=[]}Object.keys(Q).forEach(e=>delete Q[e]),Object.assign(Q,B.value),Y.value=!0}}async function ue(){if(B.value){X.value=!0;try{await P.update(`Company`,B.value[I],{...Q}),b.success(`保存成功`),Y.value=!1,await J()}catch{}finally{X.value=!1}}}return e(J),(e,a)=>{let o=ee(`Edit`),l=S,u=k,d=O,p=C,h=A,y=j,b=te,P=ne,F=T,I=w,L=x,R=re,q=E,J=D,Z=M;return i(),v(ie,{title:B.value?.CompanyName||`公司详情`,loading:z.value},{actions:r(()=>[m(u,{type:`primary`,disabled:!B.value,onClick:$},{default:r(()=>[m(l,null,{default:r(()=>[m(o)]),_:1}),a[2]||=g(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:r(()=>[H.value?(i(),v(d,{key:0,type:`error`,title:H.value,"show-icon":``,closable:!1},null,8,[`title`])):s(``,!0),B.value?(i(),v(ae,{key:1,title:`基本信息`,columns:2},{default:r(()=>[m(p,{label:`公司名称`},{default:r(()=>[g(t(G(B.value.CompanyName)||`-`),1)]),_:1}),m(p,{label:`公司简称`},{default:r(()=>[g(t(G(B.value.CompanyShort)||`-`),1)]),_:1}),m(p,{label:`公司状态`},{default:r(()=>[m(h,{type:W[String(B.value.CompanyStatus)]?.type||`info`,size:`small`},{default:r(()=>[g(t(W[String(B.value.CompanyStatus)]?.text??B.value.CompanyStatus),1)]),_:1},8,[`type`])]),_:1}),m(p,{label:`上级公司`},{default:r(()=>[g(t(V.value.parentCompany?.[B.value.ParentCompanyUUID]||G(B.value.ParentCompanyUUID)||`-`),1)]),_:1}),m(p,{label:`租户`},{default:r(()=>[g(t(V.value.tenant?.[B.value.TenantUUID]||G(B.value.TenantUUID)||`-`),1)]),_:1}),m(p,{label:`创建时间`},{default:r(()=>[g(t(K(B.value.CompanyCreateTime)),1)]),_:1})]),_:1})):s(``,!0),B.value?(i(),v(y,{key:2,shadow:`never`},{default:r(()=>[m(N,{table:`Department`,title:`部门`,query:{CompanyUUID:_(U)},selectable:!0,pageable:!0,"pk-field":`DeptUUID`,"on-view":oe},null,8,[`query`])]),_:1})):s(``,!0),B.value?(i(),v(y,{key:3,shadow:`never`},{default:r(()=>[m(N,{table:`Workgroup`,title:`工作组`,query:{CompanyUUID:_(U)},selectable:!0,pageable:!0,"pk-field":`WorkgroupUUID`,"on-view":se},null,8,[`query`])]),_:1})):s(``,!0),B.value?(i(),v(y,{key:4,shadow:`never`},{default:r(()=>[m(N,{table:`UserRole`,title:`员工`,query:{CompanyUUID:_(U)},selectable:!0,pageable:!0,"pk-field":`UserRoleUUID`,"on-view":ce},null,8,[`query`])]),_:1})):s(``,!0),m(Z,{modelValue:Y.value,"onUpdate:modelValue":a[1]||=e=>Y.value=e,title:`编辑公司`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[m(u,{onClick:a[0]||=e=>Y.value=!1},{default:r(()=>[...a[3]||=[g(`取消`,-1)]]),_:1}),m(u,{type:`primary`,loading:X.value,onClick:ue},{default:r(()=>[...a[4]||=[g(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[m(J,{model:Q,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(i(!0),f(c,null,n(le.value,e=>(i(),v(q,{key:e.field,label:e.title,required:e.required},{default:r(()=>[!e.type||e.type===`text`||e.type===`string`?(i(),v(b,{key:0,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`number`?(i(),v(P,{key:1,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`textarea`?(i(),v(b,{key:2,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`password`?(i(),v(b,{key:3,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,type:`password`,"show-password":``,placeholder:e.placeholder},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`select`?(i(),v(I,{key:4,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(i(!0),f(c,null,n(e.options,e=>(i(),v(F,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(i(),v(L,{key:5,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(i(),v(R,{key:6,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`readonly`?(i(),v(b,{key:7,"model-value":String(Q[e.field]??``),readonly:``},null,8,[`model-value`])):(i(),v(b,{key:8,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,placeholder:e.placeholder,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}}),[[`__scopeId`,`data-v-71c7a581`]]);export{L as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/CrudTable-B49nrpUt.js b/TempLate/GERP/assets/CrudTable-B49nrpUt.js deleted file mode 100644 index 2e11fcb4..00000000 --- a/TempLate/GERP/assets/CrudTable-B49nrpUt.js +++ /dev/null @@ -1 +0,0 @@ -import{$n as e,An as t,Br as n,Dn as r,Fn as i,Jn as a,Kn as o,Ln as s,Lr as c,Nn as l,Yn as u,_ as d,an as f,cn as p,en as m,hn as h,ir as g,ln as _,mn as v,nr as y,on as b,pn as x,pr as S,sn as C}from"./useApi-CROJJdhE-mMpa5RAf.js";import{l as w}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{o as T,u as E}from"./serverScope-O8Rw8SFk.js";import{t as D}from"./date-picker-CM_15T0u.js";import{u as O}from"./use-global-config-D-dPcPvU.js";import{r as k,t as A}from"./select-BGsfCDCJ.js";import{t as j}from"./time-picker-DcDLR-nT.js";import{_ as M,l as N,n as P,s as F}from"./router-CMu0lceh.js";import{n as I,t as L}from"./form-F--u6XQJ.js";import{t as R}from"./button-CPx9BSuo.js";import{t as z}from"./tag-BSnLMVgs.js";import{t as B}from"./card-Dj_UeWcA.js";import{r as V,t as ee}from"./checkbox-CdKclTX1.js";import{r as te,t as ne}from"./radio-Cb0vAm4I.js";import{t as re}from"./dialog-_5VhSQg5.js";import{t as ie}from"./input-number-CiNOxXL6.js";import{t as ae}from"./pagination-DOGDdUWm.js";import{t as oe}from"./switch-7puThziV.js";import{t as se}from"./directive-CY41a6pJ.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-fhPIiYtD.js";import"./css-BLJI5-W_.js";import"./css-ByqxgOA-.js";import"./css-0wcCNliC.js";import{t as H}from"./form-B2Pzr8Vf.js";function U(e){let{table:n,query:r={}}=e,i=g(!1),a=g(!1),o=g([]),s=g([]),c=g(0),l=g(1),u=g(20),d=g(``),f=g(`asc`),p=g(``),m=g([]),h=g(!1),_=g(`新增`),v=y({}),b=g(!1);function x(){return e.pkField?e.pkField:o.value.find(e=>e.isPrimary||e.primaryKey)?.field||`Id`}async function S(){try{o.value=await H.getColumns(n)}catch{}}async function C(){i.value=!0;try{let e={page:l.value,pageSize:u.value,sortField:d.value||void 0,sortOrder:f.value,keyword:p.value||void 0,...r},t=await H.list(n,e);if(Array.isArray(t))s.value=t,c.value=t.length;else{let e=t;s.value=e.list||[],c.value=e.total??0}}finally{i.value=!1}}function w(){b.value=!1,_.value=`新增`;let e={};for(let t of o.value)t.defaultValue!==void 0&&(e[t.field]=t.defaultValue);Object.keys(v).forEach(e=>delete v[e]),Object.assign(v,e),h.value=!0}async function E(t){e.beforeEdit&&!await e.beforeEdit(t)||(b.value=!0,_.value=`编辑`,Object.keys(v).forEach(e=>delete v[e]),Object.assign(v,t),h.value=!0)}function D(t){e.onView&&e.onView(t)}function O(t){e.onRowClick&&e.onRowClick(t)}async function k(){if(!(e.beforeCreate&&!b.value&&!await e.beforeCreate(v))){a.value=!0;try{if(b.value){let e=x(),t=v[e];await H.update(n,t,v),T.success(`更新成功`)}else await H.create(n,v),T.success(`新增成功`);h.value=!1,await C()}finally{a.value=!1}}}async function A(t){if(e.beforeDelete&&!await e.beforeDelete(t))return;try{await M.confirm(`确认删除该记录?删除后不可恢复`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}let r=t[x()];await H.remove(n,r),T.success(`删除成功`),await C()}async function j(){if(m.value.length===0){T.warning(`请先选择要删除的记录`);return}if(e.beforeBatchDelete&&!await e.beforeBatchDelete(m.value))return;try{await M.confirm(`确认删除选中的 ${m.value.length} 条记录?删除后不可恢复`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}let t=x();for(let e of m.value){let r=e[t];await H.remove(n,r)}T.success(`批量删除成功`),m.value=[],await C()}function N(e){m.value=e}function F(){return m.value}function I(){m.value=[]}function L(){l.value=1,C()}function R(){p.value=``,l.value=1,C()}function z(e){l.value=e,C()}function B(e){u.value=e,l.value=1,C()}function V(e,t){s.value=e,c.value=t??e.length}return t(async()=>{try{await Promise.all([S(),C()])}finally{P().done()}}),{loading:i,submitting:a,columns:o,dataList:s,total:c,currentPage:l,pageSize:u,sortField:d,sortOrder:f,searchKeyword:p,selectedRows:m,dialogVisible:h,dialogTitle:_,editingRow:v,isEdit:b,getPkField:x,fetchColumns:S,fetchData:C,handleCreate:w,handleEdit:E,handleView:D,handleRowClick:O,handleSubmit:k,handleDelete:A,handleBatchDelete:j,handleSelectionChange:N,getSelectedRows:F,clearSelection:I,handleSearch:L,handleReset:R,handlePageChange:z,handleSizeChange:B,setData:V}}var W={key:0,class:`entity-picker-secondary`},G=d(h({__name:`EntityPicker`,props:{modelValue:{default:``},config:{},disabled:{type:Boolean,default:!1},placeholder:{default:``},existingLabel:{default:``},clearable:{type:Boolean,default:!1}},emits:[`update:modelValue`,`update:label`],setup(e,{emit:t}){let s=e,c=t,u=g([]),d=g(!1),h=g(!1),v=g(``),y=f(()=>s.placeholder||s.config.placeholder||`请选择`),x=null;function S(e){x&&clearTimeout(x),x=setTimeout(()=>{w(e)},300)}async function w(e){let t=s.config,n=t.searchParam||`keyword`,r=t.method||`GET`;d.value=!0;try{let i;i=r===`POST`?await N(t.api,{[n]:e}):await F(t.api,{[n]:e}),u.value=T(i,t)}catch{u.value=[]}finally{d.value=!1}}function T(e,t){let n=e;if(!Array.isArray(e)&&e&&typeof e==`object`){let r=e;n=t.resultPath?r[t.resultPath]:r.data}return Array.isArray(n)?n.map(e=>{let n=e;return{value:String(n[t.valueField]??``),label:String(n[t.labelField]??``),secondary:t.secondaryField?String(n[t.secondaryField]??``):void 0}}):[]}function E(e){if(!e){u.value=[],h.value=!1;return}h.value=!0,S(e)}function D(e){if(c(`update:modelValue`,e),!e){c(`update:label`,``),u.value=[],h.value=!1;return}let t=u.value.find(t=>t.value===e);c(`update:label`,t?t.label:``)}function O(){s.existingLabel?v.value=s.existingLabel:s.modelValue?v.value=s.modelValue.slice(0,8)+`...`:v.value=``}return o(()=>s.existingLabel,O,{immediate:!0}),o(()=>s.modelValue,O),r(()=>{x&&clearTimeout(x)}),(t,r)=>{let o=A,s=k;return l(),C(s,{"model-value":e.modelValue,placeholder:y.value,disabled:e.disabled,clearable:e.clearable,loading:d.value,filterable:``,remote:``,"remote-method":E,onChange:D},{default:a(()=>[e.modelValue&&!h.value?(l(),C(o,{key:0,value:e.modelValue,label:v.value},null,8,[`value`,`label`])):h.value&&!d.value&&u.value.length===0?(l(),C(o,{key:1,disabled:``,label:`无匹配`,value:`__no_match__`})):p(``,!0),(l(!0),_(m,null,i(u.value,e=>(l(),C(o,{key:e.value,value:e.value,label:e.label},{default:a(()=>[b(`span`,null,n(e.label),1),e.secondary?(l(),_(`span`,W,n(e.secondary),1)):p(``,!0)]),_:2},1032,[`value`,`label`]))),128))]),_:1},8,[`model-value`,`placeholder`,`disabled`,`clearable`,`loading`])}}}),[[`__scopeId`,`data-v-a44d7dd7`]]),ce={class:`table-header`},le={class:`table-title`},ue={class:`table-actions`},de={key:0},fe={key:3},pe={key:4},me={key:0,class:`pagination`},K=d(h({__name:`CrudTable`,props:{table:{},title:{},query:{},searchable:{type:Boolean},pageable:{type:Boolean},selectable:{type:Boolean},pkField:{},onView:{type:Function},onRowClick:{type:Function},stretch:{type:Boolean}},setup(t){let r=t,{loading:o,submitting:d,columns:h,dataList:y,total:T,currentPage:M,pageSize:N,searchKeyword:P,selectedRows:F,dialogVisible:H,dialogTitle:W,editingRow:K,fetchData:he,handleCreate:ge,handleEdit:_e,handleView:ve,handleRowClick:ye,handleSubmit:be,handleDelete:xe,handleBatchDelete:Se,handleSelectionChange:q,handleSearch:J,handleReset:Ce,handlePageChange:we,handleSizeChange:Te}=U({table:r.table,query:r.query,pkField:r.pkField,selectable:r.selectable,onView:r.onView,onRowClick:r.onRowClick}),Y=g(),Ee=f(()=>h.value.filter(e=>e.visible!==!1&&e.type!==`hidden`)),De=f(()=>{let e=h.value.find(e=>e.isPrimary||e.primaryKey)?.field||`Id`;return h.value.filter(t=>t.editable!==!1&&!t.hideInForm&&t.type!==`hidden`&&t.type!==`divider`&&t.type!==`html`&&t.field!==e)});function X(){let e=Y.value?.getCheckboxRecords?.()||[];q(e)}function Oe(e,t){let n=e[`${t}_label`]??e[`${t}__label`];if(n)return String(n);let r=e[t];return r?String(r).slice(0,8)+`...`:``}function ke(e,t=`,`){return e?String(e).split(t).map(e=>e.trim()).filter(Boolean):[]}function Ae(e){return e?String(e).slice(0,8)+`...`:``}return(f,h)=>{let g=E,U=s(`Search`),q=O,Z=R,Q=B,je=s(`Plus`),Me=s(`Delete`),Ne=s(`Refresh`),$=s(`vxe-column`),Pe=z,Fe=s(`vxe-table`),Ie=ae,Le=ie,Re=A,ze=k,Be=ne,Ve=te,He=ee,Ue=V,We=D,Ge=j,Ke=oe,qe=I,Je=L,Ye=re,Xe=se;return l(),_(`div`,{class:c([`crud-table`,{"crud-table-stretch":r.stretch}])},[t.searchable?(l(),C(Q,{key:0,shadow:`never`,class:`search-bar`},{default:a(()=>[v(g,{modelValue:S(P),"onUpdate:modelValue":h[0]||=t=>e(P)?P.value=t:null,placeholder:`关键字搜索`,clearable:``,style:{width:`240px`},onKeyup:w(S(J),[`enter`])},null,8,[`modelValue`,`onKeyup`]),v(Z,{type:`primary`,onClick:S(J)},{default:a(()=>[v(q,null,{default:a(()=>[v(U)]),_:1}),h[6]||=x(`搜索 `,-1)]),_:1},8,[`onClick`]),v(Z,{onClick:S(Ce)},{default:a(()=>[...h[7]||=[x(`重置`,-1)]]),_:1},8,[`onClick`])]),_:1})):p(``,!0),v(Q,{shadow:`never`,class:`table-card`},{header:a(()=>[b(`div`,ce,[b(`span`,le,n(t.title||t.table),1),b(`div`,ue,[v(Z,{type:`primary`,onClick:S(ge)},{default:a(()=>[v(q,null,{default:a(()=>[v(je)]),_:1}),h[8]||=x(`新增 `,-1)]),_:1},8,[`onClick`]),t.selectable?(l(),C(Z,{key:0,type:`danger`,disabled:S(F).length===0,onClick:S(Se)},{default:a(()=>[v(q,null,{default:a(()=>[v(Me)]),_:1}),x(`批量删除`+n(S(F).length?`(${S(F).length})`:``),1)]),_:1},8,[`disabled`,`onClick`])):p(``,!0),v(Z,{onClick:S(he)},{default:a(()=>[v(q,null,{default:a(()=>[v(Ne)]),_:1}),h[9]||=x(`刷新 `,-1)]),_:1},8,[`onClick`])])])]),default:a(()=>[u((l(),C(Fe,{ref_key:`xTableRef`,ref:Y,data:S(y),border:``,stripe:``,round:``,height:r.stretch?`100%`:`auto`,"row-config":{isHover:!0},"column-config":{resizable:!0},"checkbox-config":{range:!0},onRowClick:h[1]||=e=>S(ye)(e.row),onCheckboxChange:X,onCheckboxAll:X},{default:a(()=>[t.selectable?(l(),C($,{key:0,type:`checkbox`,width:`50`})):p(``,!0),v($,{type:`seq`,width:`60`,title:`#`}),(l(!0),_(m,null,i(Ee.value,e=>(l(),C($,{key:e.field,field:e.field,title:e.title,width:e.width,"min-width":e.minWidth??200,fixed:e.fixed,sortable:e.sortable},{default:a(({row:t})=>[e.type===`entityPicker`?(l(),_(`span`,de,n(Oe(t,e.field)),1)):e.type===`status`&&e.statusMap?(l(),C(Pe,{key:1,type:e.statusMap[String(t[e.field])]?.type||`info`,color:e.statusMap[String(t[e.field])]?.color,size:`small`},{default:a(()=>[x(n(e.statusMap[String(t[e.field])]?.text||t[e.field]),1)]),_:2},1032,[`type`,`color`])):e.type===`tags`?(l(!0),_(m,{key:2},i(ke(t[e.field],e.tagsSeparator),e=>(l(),C(Pe,{key:e,size:`small`,style:{"margin-right":`4px`}},{default:a(()=>[x(n(e),1)]),_:2},1024))),128)):e.type===`uuid`?(l(),_(`span`,fe,n(Ae(t[e.field])),1)):(l(),_(`span`,pe,n(t[e.field]),1))]),_:2},1032,[`field`,`title`,`width`,`min-width`,`fixed`,`sortable`]))),128)),v($,{title:`操作`,width:`200`,fixed:`right`},{default:a(({row:e})=>[t.onView?(l(),C(Z,{key:0,link:``,type:`primary`,onClick:t=>S(ve)(e)},{default:a(()=>[...h[10]||=[x(`查看`,-1)]]),_:1},8,[`onClick`])):p(``,!0),v(Z,{link:``,type:`primary`,onClick:t=>S(_e)(e)},{default:a(()=>[...h[11]||=[x(`编辑`,-1)]]),_:1},8,[`onClick`]),v(Z,{link:``,type:`danger`,onClick:t=>S(xe)(e)},{default:a(()=>[...h[12]||=[x(`删除`,-1)]]),_:1},8,[`onClick`])]),_:1})]),_:1},8,[`data`,`height`])),[[Xe,S(o)]]),t.pageable?(l(),_(`div`,me,[v(Ie,{"current-page":S(M),"onUpdate:currentPage":h[2]||=t=>e(M)?M.value=t:null,"page-size":S(N),"onUpdate:pageSize":h[3]||=t=>e(N)?N.value=t:null,total:S(T),"page-sizes":[10,20,50,100],layout:`total, sizes, prev, pager, next, jumper`,background:``,onCurrentChange:S(we),onSizeChange:S(Te)},null,8,[`current-page`,`page-size`,`total`,`onCurrentChange`,`onSizeChange`])])):p(``,!0)]),_:1}),v(Ye,{modelValue:S(H),"onUpdate:modelValue":h[5]||=t=>e(H)?H.value=t:null,title:S(W),width:`600px`,"destroy-on-close":``},{footer:a(()=>[v(Z,{onClick:h[4]||=e=>H.value=!1},{default:a(()=>[...h[13]||=[x(`取消`,-1)]]),_:1}),v(Z,{type:`primary`,loading:S(d),onClick:S(be)},{default:a(()=>[...h[14]||=[x(`保存`,-1)]]),_:1},8,[`loading`,`onClick`])]),default:a(()=>[v(Je,{model:S(K),"label-width":`120px`,"label-position":`right`},{default:a(()=>[(l(!0),_(m,null,i(De.value,e=>(l(),C(qe,{key:e.field,label:e.title,required:e.required},{default:a(()=>[e.type===`entityPicker`&&e.entityPicker?(l(),C(G,{key:0,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,config:e.entityPicker,"existing-label":S(K)[`${e.field}_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>S(K)[`${e.field}_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(l(),C(g,{key:1,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`number`?(l(),C(Le,{key:2,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`textarea`?(l(),C(g,{key:3,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`password`?(l(),C(g,{key:4,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,type:`password`,"show-password":``,placeholder:e.placeholder},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`select`?(l(),C(ze,{key:5,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:a(()=>[(l(!0),_(m,null,i(e.options,e=>(l(),C(Re,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`radio`?(l(),C(Ve,{key:6,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,disabled:e.disabled},{default:a(()=>[(l(!0),_(m,null,i(e.options,e=>(l(),C(Be,{key:String(e.value),value:e.value},{default:a(()=>[x(n(e.label),1)]),_:2},1032,[`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`checkbox`?(l(),C(Ue,{key:7,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,disabled:e.disabled},{default:a(()=>[(l(!0),_(m,null,i(e.options,e=>(l(),C(He,{key:String(e.value),value:e.value},{default:a(()=>[x(n(e.label),1)]),_:2},1032,[`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`date`||e.type===`datetime`?(l(),C(We,{key:8,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`time`?(l(),C(Ge,{key:9,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(l(),C(Ke,{key:10,modelValue:S(K)[e.field],"onUpdate:modelValue":t=>S(K)[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`readonly`?(l(),C(g,{key:11,"model-value":String(S(K)[e.field]??``),readonly:``},null,8,[`model-value`])):p(``,!0)]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])],2)}}}),[[`__scopeId`,`data-v-c0e792f2`]]);export{G as n,K as t}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Dashboard-tJlcukj9.js b/TempLate/GERP/assets/Dashboard-tJlcukj9.js deleted file mode 100644 index 916828d5..00000000 --- a/TempLate/GERP/assets/Dashboard-tJlcukj9.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Jn as n,Ln as r,Nn as i,Yn as a,_ as o,hn as s,ir as c,ln as l,mn as u,on as d}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as f}from"./use-global-config-D-dPcPvU.js";import{s as p}from"./router-CMu0lceh.js";import{t as m}from"./card-Dj_UeWcA.js";import{n as h,t as g}from"./col-BXlaMgkQ.js";import{t as _}from"./directive-CY41a6pJ.js";/* empty css */import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-D-a1H3t1.js";var v={class:`dashboard`},y={class:`stat-content`},b={class:`stat-icon user`},x={class:`stat-info`},S={class:`stat-value`},C={class:`stat-content`},w={class:`stat-icon order`},T={class:`stat-info`},E={class:`stat-value`},D={class:`stat-content`},O={class:`stat-icon revenue`},k={class:`stat-info`},A={class:`stat-value`},j={class:`stat-content`},M={class:`stat-icon tenant`},N={class:`stat-info`},P={class:`stat-value`},F=o(s({__name:`Dashboard`,setup(o){let s=c({UserCount:0,OrderCount:0,TodayRevenue:0,ActiveTenants:0}),F=c(!1);return e(async()=>{F.value=!0;try{let e=await p(`/API/Dashboard/Stats`);s.value={...s.value,...e}}finally{F.value=!1}}),(e,o)=>{let c=r(`User`),p=f,I=m,L=g,R=r(`ShoppingCart`),z=r(`Money`),B=r(`OfficeBuilding`),V=h,H=_;return a((i(),l(`div`,v,[u(V,{gutter:16},{default:n(()=>[u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,y,[d(`div`,b,[u(p,{size:32},{default:n(()=>[u(c)]),_:1})]),d(`div`,x,[d(`div`,S,t(s.value.UserCount),1),o[0]||=d(`div`,{class:`stat-label`},`用户总数`,-1)])])]),_:1})]),_:1}),u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,C,[d(`div`,w,[u(p,{size:32},{default:n(()=>[u(R)]),_:1})]),d(`div`,T,[d(`div`,E,t(s.value.OrderCount),1),o[1]||=d(`div`,{class:`stat-label`},`订单总数`,-1)])])]),_:1})]),_:1}),u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,D,[d(`div`,O,[u(p,{size:32},{default:n(()=>[u(z)]),_:1})]),d(`div`,k,[d(`div`,A,`¥`+t((Number(s.value.TodayRevenue)||0).toFixed(2)),1),o[2]||=d(`div`,{class:`stat-label`},`今日收入`,-1)])])]),_:1})]),_:1}),u(L,{xs:24,sm:12,lg:6},{default:n(()=>[u(I,{shadow:`hover`,class:`stat-card`},{default:n(()=>[d(`div`,j,[d(`div`,M,[u(p,{size:32},{default:n(()=>[u(B)]),_:1})]),d(`div`,N,[d(`div`,P,t(s.value.ActiveTenants),1),o[3]||=d(`div`,{class:`stat-label`},`活跃租户`,-1)])])]),_:1})]),_:1})]),_:1}),u(I,{class:`welcome-card`,shadow:`never`},{header:n(()=>[...o[4]||=[d(`span`,null,`欢迎使用 GERP 管理系统`,-1)]]),default:n(()=>[o[5]||=d(`p`,null,`当前技术栈:Vue 3 + TypeScript + Vite + Element Plus + vxe-table + FormKit`,-1),o[6]||=d(`p`,null,`后端:Django + DRF(已就绪,无需修改)`,-1),o[7]||=d(`p`,null,`路由模式:SPA(已移除 iframe)`,-1)]),_:1})])),[[H,F.value]])}}}),[[`__scopeId`,`data-v-29b7fb49`]]);export{F as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Database-BhusFIP8.js b/TempLate/GERP/assets/Database-BhusFIP8.js deleted file mode 100644 index 50316fac..00000000 --- a/TempLate/GERP/assets/Database-BhusFIP8.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Nn as i,Yn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,mn as m,on as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,i as b,t as x}from"./serverScope-O8Rw8SFk.js";import{r as S,s as C}from"./router-CMu0lceh.js";import{t as w}from"./button-CPx9BSuo.js";import{t as T}from"./empty-CnQTxkvl.js";import{t as E}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-Cy-4mdDD.js";import{t as D}from"./AdminBadge-Z72F8Boy.js";import"./css-D4jab2ni2.js";var O={class:`db-page`},k={class:`db-header`},A={class:`page-title`},j={key:1,class:`db-section`},M={class:`db-list`},N={class:`db-table-name`},P={class:`db-table-meta`},F={class:`db-section`},I={class:`db-list`},L={class:`db-table-name`},R={class:`db-table-meta`},z=o(d({__name:`Database`,setup(o){let d=u(),z=S(),B=s(()=>z.isAdmin),V=f(!1),H=x(),U=b(),W=f(!1),G=f([]),K=f([]),q=s(()=>U?`数据库管理`:`${H} — 数据库管理`);y(q.value);async function J(){W.value=!0;try{let e=await C(`/API/FormAPI/Tables`),t=Array.isArray(e)?e:[];G.value=t.filter(e=>e.type===`static`),K.value=t.filter(e=>e.type===`dynamic`)}catch{}finally{W.value=!1}}async function Y(){W.value=!0;try{let e=await C(`/api/gerp/msync/servers/${encodeURIComponent(H)}/form/`,{Action:`tables`});K.value=Array.isArray(e)?e:[]}catch{K.value=[]}finally{W.value=!1}}function X(e){let t={table:e.name,title:e.title||e.name};U||(t.server=H),d.push({path:`/system/dbtable`,query:t})}function Z(){d.push({path:`/system/msync-servers`})}function Q(e){return e.title&&e.title!==e.name?`${e.title}(${e.name})`:e.name}function $(e){return typeof e.count==`number`&&e.count>=0?`${e.count} 条记录`:e.type===`dynamic`?`系统表`:`自定义表`}return e(()=>{if(!B.value){V.value=!0;return}U?J():Y()}),(e,o)=>{let s=T,u=w,d=E;return i(),p(`div`,O,[m(D),V.value?(i(),v(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:r(()=>[...o[0]||=[h(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(i(),p(l,{key:1},[_(U)?c(``,!0):(i(),p(`div`,{key:0,class:`db-back`,onClick:Z},[...o[1]||=[h(`i`,{class:`fas fa-arrow-left`},null,-1),g(),h(`span`,null,`返回服务器列表`,-1)]])),h(`div`,k,[h(`h1`,A,[o[2]||=h(`i`,{class:`fas fa-database icon-primary`},null,-1),h(`span`,null,t(q.value),1)])]),_(U)?(i(),p(`div`,j,[o[4]||=h(`h3`,null,`静态表`,-1),a((i(),p(`div`,M,[(i(!0),p(l,null,n(G.value,e=>(i(),p(`div`,{key:e.name,class:`db-table-item`},[h(`span`,N,t(Q(e)),1),h(`span`,P,t($(e)),1),m(u,{size:`small`,type:`primary`,onClick:t=>X(e)},{default:r(()=>[...o[3]||=[h(`i`,{class:`fas fa-table`},null,-1),g(` 查看 `,-1)]]),_:1},8,[`onClick`])]))),128)),!W.value&&G.value.length===0?(i(),v(s,{key:0,description:`暂无数据`,"image-size":60})):c(``,!0)])),[[d,W.value]])])):c(``,!0),h(`div`,F,[h(`h3`,null,t(_(U)?`系统表`:`数据表`),1),a((i(),p(`div`,I,[(i(!0),p(l,null,n(K.value,e=>(i(),p(`div`,{key:e.name,class:`db-table-item`},[h(`span`,L,t(Q(e)),1),h(`span`,R,t($(e)),1),m(u,{size:`small`,type:`primary`,onClick:t=>X(e)},{default:r(()=>[...o[5]||=[h(`i`,{class:`fas fa-table`},null,-1),g(` 查看 `,-1)]]),_:1},8,[`onClick`])]))),128)),!W.value&&K.value.length===0?(i(),v(s,{key:0,description:`暂无数据表`,"image-size":60})):c(``,!0)])),[[d,W.value]])])],64))])}}}),[[`__scopeId`,`data-v-2477c93a`]]);export{z as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/DbTable-CtvpMX5E.js b/TempLate/GERP/assets/DbTable-CtvpMX5E.js deleted file mode 100644 index 8780c650..00000000 --- a/TempLate/GERP/assets/DbTable-CtvpMX5E.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Jn as n,Nn as r,_ as i,an as a,en as o,h as s,hn as c,ir as l,ln as u,m as d,mn as f,on as p,pn as m,pr as h,sn as g}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as _,i as v,t as y}from"./serverScope-O8Rw8SFk.js";import{r as b}from"./router-CMu0lceh.js";import{t as x}from"./alert-BpFV-0dO.js";import{t as S}from"./empty-CnQTxkvl.js";/* empty css */import{t as C}from"./AdminBadge-Z72F8Boy.js";import{t as w}from"./CrudTable-B49nrpUt.js";import"./css-D4jab2ni2.js";var T={class:`dbtable-page`},E={class:`dbtable-header`},D={class:`page-title`},O={class:`dbtable-info`},k={class:`dbtable-container`},A=i(c({__name:`DbTable`,setup(i){let c=d(),A=s(),j=b(),M=a(()=>j.isAdmin),N=l(!1),P=y(),F=v(),I=c.query.table||``,L=c.query.title||I,R=a(()=>F?L:`${P} — ${L}`);_(R.value);function z(){let e={};F||(e.server=P),A.push({path:`/system/database`,query:e})}return e(()=>{M.value||(N.value=!0)}),(e,i)=>{let a=S,s=x;return r(),u(`div`,T,[f(C),N.value?(r(),g(a,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:n(()=>[...i[0]||=[p(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):h(I)?(r(),u(o,{key:2},[p(`div`,E,[p(`div`,{class:`dbtable-back`,onClick:z},[...i[2]||=[p(`i`,{class:`fas fa-arrow-left`},null,-1),m(` 返回数据库 `,-1)]]),p(`h1`,D,[i[3]||=p(`i`,{class:`fas fa-table icon-primary`},null,-1),p(`span`,null,t(R.value),1)])]),p(`div`,O,[p(`span`,null,[i[4]||=p(`i`,{class:`fas fa-server`},null,-1),m(` 服务器: `+t(h(F)?`主实例`:h(P)),1)]),p(`span`,null,[i[5]||=p(`i`,{class:`fas fa-table`},null,-1),m(` 表名: `+t(h(I)),1)])]),p(`div`,k,[h(F)?(r(),g(w,{key:0,table:h(I),title:h(L),searchable:``,pageable:``,selectable:``,stretch:``},null,8,[`table`,`title`])):(r(),g(s,{key:1,type:`warning`,closable:!1,"show-icon":``,title:`子服务器表浏览待迁移`,description:`子服务器 subproxy 代理模式(/api/gerp/msync/servers/{server}/form/)暂未迁移,待 DbTableHelper 完整迁移后接入。`}))])],64)):(r(),g(a,{key:1,description:`未指定表名`},{image:n(()=>[...i[1]||=[p(`i`,{class:`fas fa-table`,style:{"font-size":`48px`,opacity:`0.3`}},null,-1)]]),_:1}))])}}}),[[`__scopeId`,`data-v-cf6eab3f`]]);export{A as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/DefaultLayout-rzjKdYWy.js b/TempLate/GERP/assets/DefaultLayout-rzjKdYWy.js deleted file mode 100644 index a4710162..00000000 --- a/TempLate/GERP/assets/DefaultLayout-rzjKdYWy.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Kn as a,Ln as o,Lr as s,Nn as c,Yn as l,_ as u,an as d,cn as f,en as p,h as m,hn as h,ir as g,ln as _,m as v,mn as y,on as b,pn as x,pr as S,sn as C,tn as w,zn as T,zr as E}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as D,t as O,u as k}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{l as A,o as j}from"./serverScope-O8Rw8SFk.js";import{u as M}from"./use-global-config-D-dPcPvU.js";import{a as N,i as P,n as F,p as I,r as L}from"./router-CMu0lceh.js";import{n as R}from"./click-outside-bcMsT2om.js";import{t as ee}from"./button-CPx9BSuo.js";import{t as te}from"./tag-BSnLMVgs.js";import{a as ne,i as re,n as ie,o as ae,s as oe,t as se}from"./menu-BLdj5hCm.js";/* empty css */import"./css-CY4c3_XL.js";import"./css-yeo4Q6aC.js";import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-6qaeDme6.js";import"./css-CttyGzET.js";import"./favicon-CjgOoDgN.js";import{t as ce}from"./app-Bqwt3qVF.js";var z={class:`tab-bar`},B={class:`tab-list`},V=[`onClick`,`onContextmenu`],H={class:`tab-title`},le=u(h({__name:`TabBar`,setup(e){let a=I(),l=m(),u=g(!1),d=g(0),h=g(0),v=g(``);function D(e){if(a.activePath===e)return;let t=a.tabs.find(t=>t.path===e);t&&l.push(t.fullPath)}function O(e,t){t.stopPropagation();let n=a.removeTab(e);n&&l.push(n)}function k(e,t){t.preventDefault(),a.tabs.find(t=>t.path===e)?.closable&&(v.value=e,d.value=t.clientX,h.value=t.clientY,u.value=!0,document.addEventListener(`click`,A))}function A(){u.value=!1,document.removeEventListener(`click`,A)}function j(){a.removeOthers(v.value);let e=a.tabs.find(e=>e.path===v.value);e&&l.push(e.fullPath),A()}function N(){a.removeAll(),l.push(`/dashboard`),A()}return n(()=>{document.removeEventListener(`click`,A)}),(e,n)=>{let l=M,m=o(`Close`),g=R,v=o(`CircleClose`),A=o(`Delete`);return c(),_(`div`,z,[y(g,{class:`tab-scroll`},{default:i(()=>[b(`div`,B,[(c(!0),_(p,null,r(S(a).tabs,e=>(c(),_(`div`,{key:e.path,class:s([`tab-item`,{active:S(a).activePath===e.path}]),onClick:t=>D(e.path),onContextmenu:t=>k(e.path,t)},[e.icon&&!S(a).isFaIcon(e.icon)?(c(),C(l,{key:0,class:`tab-icon`},{default:i(()=>[(c(),C(T(e.icon)))]),_:2},1024)):e.icon&&S(a).isFaIcon(e.icon)?(c(),_(`i`,{key:1,class:s([e.icon,`tab-icon-fa`])},null,2)):f(``,!0),b(`span`,H,t(e.title),1),e.closable?(c(),C(l,{key:2,class:`tab-close`,onClick:t=>O(e.path,t)},{default:i(()=>[y(m)]),_:1},8,[`onClick`])):f(``,!0)],42,V))),128))])]),_:1}),(c(),C(w,{to:`body`},[u.value?(c(),_(`ul`,{key:0,class:`tab-ctx-menu`,style:E({left:d.value+`px`,top:h.value+`px`})},[b(`li`,{onClick:j},[y(l,null,{default:i(()=>[y(v)]),_:1}),n[0]||=x(`关闭其他 `,-1)]),b(`li`,{onClick:N},[y(l,null,{default:i(()=>[y(A)]),_:1}),n[1]||=x(`关闭所有 `,-1)])],4)):f(``,!0)]))])}}}),[[`__scopeId`,`data-v-e1c867fe`]]),ue=u(h({__name:`RouteProgress`,setup(e){let t=F();return(e,n)=>(c(),_(`div`,{class:s([`route-progress`,{"is-visible":S(t).visible}])},[b(`div`,{class:`route-progress-bar`,style:E({width:S(t).percent+`%`})},null,4)],2))}}),[[`__scopeId`,`data-v-85523620`]]),U={class:`page-mask-content`},de=u(h({__name:`PageMask`,setup(e){let t=F();return(e,n)=>{let r=o(`Loading`),a=M;return c(),_(`div`,{class:s([`page-mask`,{show:S(t).visible}])},[b(`div`,U,[y(a,{class:`page-mask-icon is-loading`},{default:i(()=>[y(r)]),_:1}),n[0]||=b(`span`,{class:`page-mask-text`},`加载中`,-1)])],2)}}}),[[`__scopeId`,`data-v-7f6076a1`]]),W={class:`role-switcher-content`},G={class:`role-switcher-body`},K={class:`role-grid`},q=[`title`,`onClick`],J={class:`role-info`},Y={class:`role-name`},X={class:`role-desc`},fe={key:0,class:`role-badge role-badge-active`},Z={key:1,class:`role-badge role-badge-disabled`},Q={key:2,class:`role-check`},pe={class:`role-switcher-footer`},me=[`disabled`],he={key:0,class:`role-switching`},$={key:1},ge=u(h({__name:`RoleSwitcher`,props:{modelValue:{type:Boolean},roles:{}},emits:[`update:modelValue`,`switched`],setup(e,{emit:n}){let a=n,o=L(),l=I(),u=m(),d=g(null),h=g(!1),v=e=>e.RoleStatus===1||e.RoleStatus===`1`;function S(e){e.active||!v(e)||(d.value=e)}function T(){a(`update:modelValue`,!1),d.value=null}async function E(){if(!(!d.value||h.value)){h.value=!0;try{await N(d.value),await o.fetchUserInfo(),await o.fetchMenus(),await o.fetchRoles(),l.reset(),j.success(`已切换为 "${d.value.RoleName}"`),a(`switched`,d.value),T(),u.push(`/dashboard`)}catch{j.error(`身份切换失败,请重试`)}finally{h.value=!1}}}function D(e){return e.CompanyName?e.CompanyShort?`${e.CompanyName} (${e.CompanyShort})`:e.CompanyName:`无所属公司`}return(n,a)=>(c(),C(w,{to:`body`},[y(O,{name:`role-switcher`},{default:i(()=>[e.modelValue?(c(),_(`div`,{key:0,class:`role-switcher`,onClick:k(T,[`self`])},[b(`div`,{class:`role-switcher-overlay`,onClick:T}),b(`div`,W,[b(`div`,{class:`role-switcher-header`},[a[1]||=b(`h3`,{class:`role-switcher-title`},`切换角色`,-1),b(`button`,{class:`role-switcher-close`,onClick:T},[...a[0]||=[b(`svg`,{viewBox:`0 0 1024 1024`,width:`14`,height:`14`},[b(`path`,{fill:`currentColor`,d:`M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9c-4.4 5.2-.7 13.1 6.1 13.1h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z`})],-1)]])]),b(`div`,G,[b(`div`,K,[(c(!0),_(p,null,r(e.roles,e=>(c(),_(`div`,{key:e.RoleUUID,class:s([`role-card`,{selected:d.value?.RoleUUID===e.RoleUUID,disabled:!v(e)}]),title:v(e)?void 0:`该角色已禁用`,onClick:t=>S(e)},[a[3]||=b(`div`,{class:`role-icon`},[b(`svg`,{viewBox:`0 0 1024 1024`,width:`20`,height:`20`},[b(`path`,{fill:`currentColor`,d:`M482.9 339.2c-42.3 0-76.8-34.5-76.8-76.8s34.5-76.8 76.8-76.8 76.8 34.5 76.8 76.8-34.5 76.8-76.8 76.8z m0-102.4c-14.1 0-25.6 11.5-25.6 25.6s11.5 25.6 25.6 25.6 25.6-11.5 25.6-25.6-11.5-25.6-25.6-25.6zM512 896c-11.8 0-23.6-4.5-32.6-13.5L332.6 735.7c-72.8-72.8-72.8-191.2 0-264l18-18c35.4-35.4 93.3-35.4 128.7 0l32.7 32.7 32.7-32.7c35.4-35.4 93.3-35.4 128.7 0l18 18c72.8 72.8 72.8 191.2 0 264l-146.8 146.8c-9 9-20.8 13.5-32.6 13.5z m0-43.8 137-137c50-50 50-131.4 0-181.4l-18-18c-8.8-8.8-20.6-13.2-32.2-13.2s-23.4 4.4-32.2 13.2L512 571.2l-54.6-54.6c-8.8-8.8-20.6-13.2-32.2-13.2s-23.4 4.4-32.2 13.2l-18 18c-50 50-50 131.4 0 181.4z`})])],-1),b(`div`,J,[b(`div`,Y,t(e.RoleName),1),b(`div`,X,t(D(e)),1)]),e.active?(c(),_(`span`,fe,`当前`)):v(e)?f(``,!0):(c(),_(`span`,Z,`已禁用`)),d.value?.RoleUUID===e.RoleUUID?(c(),_(`div`,Q,[...a[2]||=[b(`svg`,{viewBox:`0 0 1024 1024`,width:`12`,height:`12`},[b(`path`,{fill:`currentColor`,d:`M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 0 0-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z`})],-1)]])):f(``,!0)],10,q))),128))])]),b(`div`,pe,[b(`button`,{class:`gerp-btn gerp-btn-secondary`,onClick:T},`取消`),b(`button`,{class:`gerp-btn gerp-btn-primary`,disabled:!d.value||h.value,onClick:E},[h.value?(c(),_(`span`,he,[...a[4]||=[b(`svg`,{viewBox:`0 0 1024 1024`,width:`14`,height:`14`,class:`is-loading`},[b(`path`,{fill:`currentColor`,d:`M512 64a448 448 0 1 0 0 896 448 448 0 0 0 0-896z m0 64a384 384 0 1 1 0 768 384 384 0 0 1 0-768z`})],-1),x(` 切换中... `,-1)]])):(c(),_(`span`,$,`确认切换`))],8,me)])])])):f(``,!0)]),_:1})]))}}),[[`__scopeId`,`data-v-5338f17c`]]),_e={class:`gerp-layout`},ve={class:`gerp-header`},ye={class:`gerp-header-left`},be={class:`gerp-header-center`},xe={class:`gerp-nav-title`},Se={class:`gerp-header-right`},Ce={class:`gerp-header-actions`},we={class:`gerp-user-info`},Te=[`src`],Ee={class:`gerp-user-name`},De={class:`user-dropdown-header`},Oe=[`src`],ke={class:`user-dropdown-info`},Ae={class:`user-dropdown-name`},je={class:`user-dropdown-role`},Me={key:0,class:`user-dropdown-email`},Ne={key:1,class:`user-dropdown-account`},Pe={class:`gerp-main`},Fe={class:`gerp-sidebar-footer`},Ie={class:`gerp-content`},Le={class:`gerp-content-body`},Re=u(h({__name:`DefaultLayout`,setup(n){let u=ce(),h=L(),w=I(),E=v(),O=m(),k=d(()=>E.meta.title||`GERP`),j=d(()=>E.path),N=P(),F=d(()=>h.userInfo),z=d(()=>h.isAdmin?`管理员`:h.currentRole||`普通用户`),B=d(()=>h.roles),V=g(!1);e(()=>{u.initTheme(),h.isLoggedIn&&h.fetchRoles().catch(()=>{})});function H(){h.fetchRoles().catch(()=>{}),V.value=!0}function U(e){O.push(e)}function W(){u.sidebarCollapsed&&u.toggleSidebar()}let G=g();function K(){let e=G.value;if(e){for(let t of h.menus)if(t.Children?.length)try{e.close(t.Path||t.Title)}catch{}}}a(()=>u.sidebarCollapsed,e=>{e&&K()});function q(e){switch(e){case`logout`:J();break;case`theme`:X();break;case`profile`:O.push(`/profile`);break;case`settings`:O.push(`/system/settings`);break;case`switchRole`:H()}}async function J(){w.reset(),await h.logout(),O.push(`/login`)}function Y(){u.toggleSidebar()}function X(){u.toggleTheme()}function fe(e){let t=O.resolve(e);return t.matched[t.matched.length-1]?.components?.default}let Z=e=>{if(!e)return!1;let t=e.trim();return t.includes(` `)||t.startsWith(`fa-`)||/^fa[brsl]?\b/.test(t)};return(e,n)=>{let a=o(`Menu`),d=M,m=ee,g=o(`Search`),v=o(`Bell`),P=A,I=o(`Brush`),L=o(`ArrowDown`),ce=te,H=o(`Switch`),K=ae,J=o(`User`),Q=o(`Setting`),pe=o(`SwitchButton`),me=oe,he=ne,$=ie,Re=re,ze=se,Be=R;return c(),_(`div`,_e,[y(ue),b(`header`,ve,[b(`div`,ye,[y(m,{text:``,class:`gerp-toggle-btn`,onClick:Y},{default:i(()=>[y(d,{size:18},{default:i(()=>[y(a)]),_:1})]),_:1}),n[2]||=b(`div`,{class:`gerp-logo`},[b(`img`,{src:`/favicon.svg`,alt:`logo`,class:`gerp-logo-icon`}),b(`span`,{class:`gerp-logo-text`},`GERP 管理系统`)],-1)]),b(`div`,be,[b(`h1`,xe,t(k.value),1)]),b(`div`,Se,[b(`div`,Ce,[y(m,{text:``,circle:``,title:`搜索`},{default:i(()=>[y(d,null,{default:i(()=>[y(g)]),_:1})]),_:1}),y(P,{value:3,class:`gerp-notify-badge`},{default:i(()=>[y(m,{text:``,circle:``,title:`通知`},{default:i(()=>[y(d,null,{default:i(()=>[y(v)]),_:1})]),_:1})]),_:1}),y(m,{text:``,circle:``,title:`主题切换`,onClick:X},{default:i(()=>[y(d,null,{default:i(()=>[y(I)]),_:1})]),_:1})]),y(he,{trigger:`click`,onCommand:q},{dropdown:i(()=>[y(me,{class:`gerp-user-dropdown`},{default:i(()=>[b(`div`,De,[b(`img`,{src:S(N),alt:`头像`,class:`user-dropdown-avatar`},null,8,Oe),b(`div`,ke,[b(`div`,Ae,t(S(h).displayName),1),b(`div`,je,[y(ce,{size:`small`,type:S(h).isAdmin?`danger`:`info`},{default:i(()=>[x(t(z.value),1)]),_:1},8,[`type`])]),F.value?.Email?(c(),_(`div`,Me,t(F.value.Email),1)):f(``,!0),F.value?.UserName?(c(),_(`div`,Ne,`@`+t(F.value.UserName),1)):f(``,!0)])]),y(K,{command:`switchRole`},{default:i(()=>[y(d,null,{default:i(()=>[y(H)]),_:1}),n[3]||=x(`切换角色 `,-1)]),_:1}),y(K,{divided:``,command:`profile`},{default:i(()=>[y(d,null,{default:i(()=>[y(J)]),_:1}),n[4]||=x(`个人中心 `,-1)]),_:1}),y(K,{command:`settings`},{default:i(()=>[y(d,null,{default:i(()=>[y(Q)]),_:1}),n[5]||=x(`系统设置 `,-1)]),_:1}),y(K,{command:`theme`},{default:i(()=>[y(d,null,{default:i(()=>[y(I)]),_:1}),n[6]||=x(`切换主题 `,-1)]),_:1}),y(K,{divided:``,command:`logout`,class:`danger-item`},{default:i(()=>[y(d,null,{default:i(()=>[y(pe)]),_:1}),n[7]||=x(`退出登录 `,-1)]),_:1})]),_:1})]),default:i(()=>[b(`div`,we,[b(`img`,{src:S(N),alt:`头像`,class:`gerp-user-avatar`},null,8,Te),b(`span`,Ee,t(S(h).displayName),1),y(d,null,{default:i(()=>[y(L)]),_:1})])]),_:1})])]),b(`div`,Pe,[b(`aside`,{class:s([`gerp-sidebar`,{collapsed:S(u).sidebarCollapsed}])},[y(Be,null,{default:i(()=>[y(ze,{ref_key:`menuRef`,ref:G,"default-active":j.value,router:``,onSelect:U,onClickCapture:W},{default:i(()=>[(c(!0),_(p,null,r(S(h).menus,e=>(c(),_(p,{key:e.Path||e.Title},[e.Children?.length?(c(),C(Re,{key:0,index:e.Path||e.Title},{title:i(()=>[e.Icon&&Z(e.Icon)?(c(),_(`i`,{key:0,class:s([e.Icon,`gerp-menu-icon`])},null,2)):e.Icon?(c(),C(d,{key:1},{default:i(()=>[(c(),C(T(e.Icon)))]),_:2},1024)):f(``,!0),b(`span`,null,t(e.Title),1)]),default:i(()=>[(c(!0),_(p,null,r(e.Children,e=>(c(),C($,{key:e.Path||e.Title,index:e.Path||``},{title:i(()=>[b(`span`,null,t(e.Title),1)]),default:i(()=>[e.Icon&&Z(e.Icon)?(c(),_(`i`,{key:0,class:s([e.Icon,`gerp-menu-icon`])},null,2)):e.Icon?(c(),C(d,{key:1},{default:i(()=>[(c(),C(T(e.Icon)))]),_:2},1024)):f(``,!0)]),_:2},1032,[`index`]))),128))]),_:2},1032,[`index`])):(c(),C($,{key:1,index:e.Path||``},{title:i(()=>[b(`span`,null,t(e.Title),1)]),default:i(()=>[e.Icon&&Z(e.Icon)?(c(),_(`i`,{key:0,class:s([e.Icon,`gerp-menu-icon`])},null,2)):e.Icon?(c(),C(d,{key:1},{default:i(()=>[(c(),C(T(e.Icon)))]),_:2},1024)):f(``,!0)]),_:2},1032,[`index`]))],64))),128))]),_:1},8,[`default-active`])]),_:1}),b(`div`,Fe,[n[8]||=b(`span`,{class:`gerp-version`},`v1.0.0`,-1),y(m,{text:``,circle:``,size:`small`,title:`设置`,onClick:n[0]||=e=>S(O).push(`/system/settings`)},{default:i(()=>[y(d,null,{default:i(()=>[y(Q)]),_:1})]),_:1})])],2),b(`main`,Ie,[y(le),b(`div`,Le,[(c(!0),_(p,null,r(S(w).tabs,e=>l((c(),_(`div`,{key:e.path,class:`tab-pane`},[e.loaded?(c(),C(T(fe(e.path)),{key:e.path})):f(``,!0)])),[[D,e.path===S(E).path]])),128)),y(de)])])]),y(ge,{modelValue:V.value,"onUpdate:modelValue":n[1]||=e=>V.value=e,roles:B.value},null,8,[`modelValue`,`roles`])])}}}),[[`__scopeId`,`data-v-da44a33f`]]);export{Re as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Department-BtlmnFbj.js b/TempLate/GERP/assets/Department-BtlmnFbj.js deleted file mode 100644 index 00999d5c..00000000 --- a/TempLate/GERP/assets/Department-BtlmnFbj.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./CrudTable-B49nrpUt.js";var c={class:`department-page`},l=t(r({__name:`Department`,setup(t){o(`部门管理`);let r=n();function l(e){r.push({path:`/company/department-detail`,query:{DeptUUID:e.DeptUUID||``}})}return(t,n)=>(e(),i(`div`,c,[a(s,{table:`Department`,title:`部门管理`,"pk-field":`DeptUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-570e4d75`]]);export{l as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/DepartmentDetail-TMUHEraO.js b/TempLate/GERP/assets/DepartmentDetail-TMUHEraO.js deleted file mode 100644 index 7fc4330b..00000000 --- a/TempLate/GERP/assets/DepartmentDetail-TMUHEraO.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,an as o,cn as s,en as c,h as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{t as S}from"./date-picker-CM_15T0u.js";import{u as C}from"./use-global-config-D-dPcPvU.js";import{n as w}from"./descriptions-Cq_aE9sg.js";import{r as T,t as E}from"./select-BGsfCDCJ.js";import{n as D,t as O}from"./form-F--u6XQJ.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./tag-BSnLMVgs.js";import{t as j}from"./card-Dj_UeWcA.js";import{t as M}from"./dialog-_5VhSQg5.js";import{t as ee}from"./input-number-CiNOxXL6.js";import{t as te}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as ne,t as N}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-B2Pzr8Vf.js";import{t as F}from"./DetailPage-m11wfvkM.js";import{t as I}from"./InfoGrid-C1it9Z2Y.js";import{t as L}from"./useResolveUUIDs-ipmPZLo4.js";var R=`DeptUUID`,z=u({__name:`DepartmentDetail`,setup(u){let z=p(),B=l(),{resolveUUIDs:V}=L(),H=z.query.DeptUUID||``,U=d(!1),W=d(null),G=d(``),K=d(!1),q=d(!1),J=d([]),Y=h({}),X=o(()=>W.value?.DeptName||`部门详情`);function Z(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`info`}}function re(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}async function Q(){if(!H){b.warning(`缺少 DeptUUID 参数,无法加载部门详情`);return}U.value=!0;try{let e=await P.list(`Department`,{[R]:H,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[R]===H)||t[0];if(!n){b.error(`未找到部门数据`);return}W.value=n,y(n.DeptName||`部门详情`),await $(n.ParentDeptUUID)}finally{U.value=!1}}async function $(e){if(!e){G.value=``;return}try{let t=await V({parentDept:{table:`Department`,uuids:[e]}});G.value=t.parentDept?.[e]||e}catch{G.value=e}}async function ie(){try{J.value=await P.getColumns(`Department`)}catch{}}let ae=o(()=>J.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==R));function oe(){W.value&&(Object.keys(Y).forEach(e=>delete Y[e]),Object.assign(Y,W.value),K.value=!0)}async function se(){q.value=!0;try{await P.update(`Department`,Y[R],Y),b.success(`保存成功`),K.value=!1,await Q()}finally{q.value=!1}}function ce(e){B.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return e(async()=>{await Promise.all([Q(),ie()])}),(e,o)=>{let l=i(`Edit`),u=C,d=k,p=w,h=A,y=j,b=x,P=ee,L=E,R=T,z=S,B=te,V=D,J=O,Q=M;return a(),v(F,{title:X.value,loading:U.value},{actions:r(()=>[m(d,{type:`primary`,onClick:oe},{default:r(()=>[m(u,null,{default:r(()=>[m(l)]),_:1}),o[2]||=g(`编辑 `,-1)]),_:1})]),default:r(()=>[m(I,{title:`基本信息`,columns:2},{default:r(()=>[m(p,{label:`部门名称`},{default:r(()=>[g(t(W.value?.DeptName||`-`),1)]),_:1}),m(p,{label:`部门状态`},{default:r(()=>[m(h,{type:Z(W.value?.DeptStatus).type,size:`small`},{default:r(()=>[g(t(Z(W.value?.DeptStatus).text),1)]),_:1},8,[`type`])]),_:1}),m(p,{label:`上级部门`},{default:r(()=>[g(t(G.value||W.value?.ParentDeptUUID||`-`),1)]),_:1}),m(p,{label:`排序`},{default:r(()=>[g(t(W.value?.DeptSort??`-`),1)]),_:1}),m(p,{label:`创建时间`},{default:r(()=>[g(t(re(W.value?.DeptCreateTime)),1)]),_:1})]),_:1}),m(y,{shadow:`never`},{header:r(()=>[...o[3]||=[g(`部门员工`,-1)]]),default:r(()=>[_(H)?(a(),v(N,{key:0,table:`UserRole`,title:`部门员工`,query:{DeptUUID:_(H)},"pk-field":`UserRoleUUID`,selectable:``,pageable:``,"on-view":ce},null,8,[`query`])):s(``,!0)]),_:1}),m(Q,{modelValue:K.value,"onUpdate:modelValue":o[1]||=e=>K.value=e,title:`编辑部门`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[m(d,{onClick:o[0]||=e=>K.value=!1},{default:r(()=>[...o[4]||=[g(`取消`,-1)]]),_:1}),m(d,{type:`primary`,loading:q.value,onClick:se},{default:r(()=>[...o[5]||=[g(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[m(J,{model:Y,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),f(c,null,n(ae.value,e=>(a(),v(V,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(a(),v(ne,{key:0,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,config:e.entityPicker,"existing-label":Y[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>Y[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(a(),v(b,{key:1,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(a(),v(b,{key:2,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(a(),v(P,{key:3,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`select`?(a(),v(R,{key:4,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(a(!0),f(c,null,n(e.options,e=>(a(),v(L,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(a(),v(z,{key:5,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(a(),v(B,{key:6,modelValue:Y[e.field],"onUpdate:modelValue":t=>Y[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):(a(),v(b,{key:7,"model-value":String(Y[e.field]??``),readonly:``},null,8,[`model-value`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}});export{z as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Editor-5D3bQtSW.js b/TempLate/GERP/assets/Editor-5D3bQtSW.js deleted file mode 100644 index 9ef406cd..00000000 --- a/TempLate/GERP/assets/Editor-5D3bQtSW.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Ln as a,Lr as o,Nn as s,Yn as ee,_ as c,an as l,cn as u,en as d,hn as f,ir as p,ln as m,mn as h,on as g,pn as _,sn as v,sr as y,zr as te}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as b,o as x,u as S}from"./serverScope-O8Rw8SFk.js";import{u as C}from"./use-global-config-D-dPcPvU.js";import{_ as w,d as T,l as E}from"./router-CMu0lceh.js";import{t as ne}from"./button-CPx9BSuo.js";import{t as re}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-DmmbJMxg.js";import{t as ie}from"./AdminBadge-Z72F8Boy.js";var ae={class:`gerp-page`},oe={class:`doc-page`},se={class:`doc-header`},ce={class:`doc-title`},le={class:`doc-toolbar`},ue={class:`doc-body`},de={class:`doc-sidebar`},fe={class:`sidebar-header`},pe={class:`doc-list`},D={key:0,class:`doc-empty`},O={key:1,class:`doc-empty`},k=[`onClick`],A={class:`doc-item-title`},j={class:`doc-item-time`},M={class:`doc-editor`},N={class:`doc-title-bar`},P={class:`editor-container`},F={key:0,class:`doc-loading`},I=c(f({__name:`Editor`,setup(c){b(`文档编辑器`);let f=p([]),I=p(!1),L=p(``),R=p(``),z=null,B=p(null),V=p(``),H=p(``),U=p(!1),W=p(``),me=l(()=>{switch(W.value){case`已保存`:case`导出成功`:return`#10b981`;case`未保存`:return`#f59e0b`;case`保存失败`:case`导出失败`:return`#ef4444`;default:return`#6b7280`}}),G=y(null),K=l(()=>!!B.value&&U.value),he=l(()=>!!B.value),ge=l(()=>!!B.value);async function q(e,t={}){return E(`/API/doc/doc/${e}`,t)}async function J(e=``){I.value=!0,L.value=``;try{let t=await q(`GetDocs`,e?{keyword:e}:{});f.value=Array.isArray(t)?t:[]}catch(e){L.value=e?.message||`加载失败`,f.value=[]}finally{I.value=!1}}async function Y(e){if(U.value&&B.value)try{await w.confirm(`当前文档未保存,是否丢弃改动?`,`提示`,{type:`warning`,confirmButtonText:`丢弃`,cancelButtonText:`取消`})}catch{return}B.value=e,U.value=!1;try{let t=await q(`GetDoc`,{DocUUID:e});V.value=t.DocTitle||``,H.value=t.DocContent||``,W.value=``}catch(e){x.error(`加载文档失败: `+(e?.message||``))}}async function X(){if(U.value&&B.value)try{await w.confirm(`当前文档未保存,是否丢弃改动?`,`提示`,{type:`warning`,confirmButtonText:`丢弃`,cancelButtonText:`取消`})}catch{return}let e;try{e=(await w.prompt(`请输入文档标题:`,`新建文档`,{confirmButtonText:`确定`,cancelButtonText:`取消`,inputValue:`未命名文档`,inputValidator:e=>e&&e.trim()?!0:`标题不能为空`})).value.trim()}catch{return}try{let t=await q(`AddDoc`,{DocTitle:e,DocContent:``});await J(R.value),t?.DocUUID&&await Y(t.DocUUID)}catch(e){x.error(`新建失败: `+(e?.message||``))}}async function Z(){if(!B.value||!G.value)return;let e=V.value.trim();if(!e){x.warning(`请输入文档标题`);return}let t=G.value.getContent();W.value=`保存中...`;try{await q(`ModifyDocSettings`,{DocUUID:B.value,DocTitle:e,DocContent:t}),U.value=!1,W.value=`已保存`,await J(R.value)}catch(e){W.value=`保存失败`,x.error(`保存失败: `+(e?.message||``))}}async function _e(){if(B.value){W.value=`导出中...`;try{let e=await T.post(`/API/doc/doc/ExportDocx`,{DocUUID:B.value},{responseType:`blob`}),t=e.data,n=e.headers[`content-disposition`]||``,r=`document.docx`,i=n.match(/filename="?([^"]+)"?/);i&&(r=decodeURIComponent(i[1]));let a=URL.createObjectURL(t),o=document.createElement(`a`);o.href=a,o.download=r,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a),W.value=`导出成功`}catch(e){W.value=`导出失败`,x.error(`导出失败: `+(e?.message||``))}}}async function ve(){if(B.value){try{await w.confirm(`确定删除此文档?此操作不可撤销。`,`危险操作`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}try{await q(`DeleteDoc`,{DocUUID:B.value}),B.value=null,V.value=``,H.value=``,U.value=!1,W.value=``,await J(R.value)}catch(e){x.error(`删除失败: `+(e?.message||``))}}}function Q(){U.value=!0,W.value=`未保存`}function ye(){z&&clearTimeout(z),z=setTimeout(()=>{J(R.value.trim())},300)}function be(){J(R.value.trim())}function $(e){(e.ctrlKey||e.metaKey)&&e.key===`s`&&(e.preventDefault(),K.value&&Z())}e(()=>{J(),document.addEventListener(`keydown`,$)}),n(()=>{document.removeEventListener(`keydown`,$),z&&clearTimeout(z),G.value&&=(G.value.remove(),null)});function xe(e){return e?new Date(e).toLocaleString(`zh-CN`):``}return(e,n)=>{let c=a(`Document`),l=C,p=a(`Plus`),y=ne,b=a(`Save`),x=a(`Download`),w=a(`Delete`),T=a(`Search`),E=S,z=a(`Refresh`),U=re;return s(),m(`div`,ae,[h(ie),g(`div`,oe,[g(`div`,se,[g(`h1`,ce,[h(l,null,{default:i(()=>[h(c)]),_:1}),n[3]||=_(` 文档编辑器 `,-1)]),n[8]||=g(`div`,{class:`spacer`},null,-1),g(`div`,le,[h(y,{type:`primary`,onClick:X},{default:i(()=>[h(l,null,{default:i(()=>[h(p)]),_:1}),n[4]||=_(`\xA0新建 `,-1)]),_:1}),h(y,{disabled:!K.value,onClick:Z},{default:i(()=>[h(l,null,{default:i(()=>[h(b)]),_:1}),n[5]||=_(`\xA0保存 `,-1)]),_:1},8,[`disabled`]),h(y,{disabled:!he.value,onClick:_e},{default:i(()=>[h(l,null,{default:i(()=>[h(x)]),_:1}),n[6]||=_(`\xA0导出 .docx `,-1)]),_:1},8,[`disabled`]),h(y,{type:`danger`,disabled:!ge.value,onClick:ve},{default:i(()=>[h(l,null,{default:i(()=>[h(w)]),_:1}),n[7]||=_(`\xA0删除 `,-1)]),_:1},8,[`disabled`])])]),g(`div`,ue,[g(`div`,de,[g(`div`,fe,[h(E,{modelValue:R.value,"onUpdate:modelValue":n[0]||=e=>R.value=e,placeholder:`搜索文档...`,clearable:``,onInput:ye},{prefix:i(()=>[h(l,null,{default:i(()=>[h(T)]),_:1})]),_:1},8,[`modelValue`]),h(y,{title:`刷新列表`,onClick:be},{default:i(()=>[h(l,null,{default:i(()=>[h(z)]),_:1})]),_:1})]),ee((s(),m(`div`,pe,[L.value?(s(),m(`div`,D,t(L.value),1)):!f.value.length&&!I.value?(s(),m(`div`,O,` 暂无文档,点击"新建"创建 `)):u(``,!0),(s(!0),m(d,null,r(f.value,e=>(s(),m(`div`,{key:e.DocUUID,class:o([`doc-item`,{active:e.DocUUID===B.value}]),onClick:t=>Y(e.DocUUID)},[g(`div`,A,t(e.DocTitle||`未命名`),1),g(`div`,j,t(xe(e.DocCreateTime)),1)],10,k))),128))])),[[U,I.value]])]),g(`div`,M,[g(`div`,N,[h(E,{modelValue:V.value,"onUpdate:modelValue":n[1]||=e=>V.value=e,placeholder:`请选择或新建文档`,disabled:!B.value,onInput:Q},null,8,[`modelValue`,`disabled`]),g(`span`,{class:`doc-save-status`,style:te({color:me.value})},t(W.value),5)]),g(`div`,P,[B.value?(s(),v(E,{key:1,modelValue:H.value,"onUpdate:modelValue":n[2]||=e=>H.value=e,type:`textarea`,autosize:{minRows:20},placeholder:`TinyMCE 待 npm install @tinymce/tinymce-vue tinymce 后集成(已标 TODO)`,onInput:Q},null,8,[`modelValue`])):(s(),m(`div`,F,` 请从左侧选择或新建文档 `))])])])])])}}}),[[`__scopeId`,`data-v-d51a79a6`]]);export{I as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/EmployeeDetail-Ck3_5FKo.js b/TempLate/GERP/assets/EmployeeDetail-Ck3_5FKo.js deleted file mode 100644 index 81740e31..00000000 --- a/TempLate/GERP/assets/EmployeeDetail-Ck3_5FKo.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,m,mn as h,nr as g,on as _,pn as v,pr as y,sn as b,zr as x}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as S,n as C,o as w,u as ee}from"./serverScope-O8Rw8SFk.js";import{t as te}from"./date-picker-CM_15T0u.js";import{u as ne}from"./use-global-config-D-dPcPvU.js";import{n as re,t as ie}from"./descriptions-Cq_aE9sg.js";import{r as ae,t as oe}from"./select-BGsfCDCJ.js";import{s as T}from"./router-CMu0lceh.js";import{n as E,t as se}from"./form-F--u6XQJ.js";import{t as D}from"./alert-BpFV-0dO.js";import{t as ce}from"./avatar-DXM6bmhO.js";import{t as le}from"./button-CPx9BSuo.js";import{t as O}from"./tag-BSnLMVgs.js";import{t as k}from"./card-Dj_UeWcA.js";import{t as A}from"./dialog-_5VhSQg5.js";import{t as ue}from"./input-number-CiNOxXL6.js";import{t as de}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{t as j}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as M}from"./form-B2Pzr8Vf.js";import{t as fe}from"./DetailPage-m11wfvkM.js";import{t as pe}from"./InfoGrid-C1it9Z2Y.js";var N={key:1,class:`profile-row`},P={class:`profile-info`},F={key:1,style:{color:`#6b7280`}},I={key:1},L=`UserUUID`,R=o(d({__name:`EmployeeDetail`,setup(o){let d=m(),R=u(),z=f(!1),B=f(null),V=f(null),H=f(``),U=d.query.UserUUID||``,W={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}},me=s(()=>{let e=new URLSearchParams;e.set(`UserUUID`,U);let t=C();return t.server&&e.set(`server`,t.server),t.admin_verify&&e.set(`admin_verify`,t.admin_verify),`/Query/GetELTUserAvatar?${e.toString()}`});function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}function J(e){return e===1||e===!0||e===`1`||e===`true`}async function Y(){if(!U){H.value=`缺少 UserUUID 参数,无法加载员工详情。`;return}z.value=!0,H.value=``,V.value=null;try{let e=q(await M.list(`User`,{UserUUID:U,pageSize:1})),t=e.find(e=>e.UserUUID===U)||e[0];if(!t){H.value=`未找到用户数据`;return}B.value=t,S(G(t.UserName)||`员工详情`);try{V.value=await T(`/API/SiteUserManagement/GetUser2FAInfo`,{UserUUID:U})}catch{V.value=null}}catch(e){H.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{z.value=!1}}function he(e){R.push({path:`/company/department-detail`,query:{DeptUUID:G(e.DeptUUID)}})}let X=f(!1),Z=f(!1),Q=f([]),$=g({}),ge=s(()=>Q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function _e(){if(B.value){try{Q.value.length||(Q.value=await M.getColumns(`User`))}catch{Q.value=[]}Object.keys($).forEach(e=>delete $[e]),Object.assign($,B.value),X.value=!0}}async function ve(){if(B.value){Z.value=!0;try{await M.update(`User`,B.value[L],{...$}),w.success(`保存成功`),X.value=!1,await Y()}catch{}finally{Z.value=!1}}}return e(Y),(e,o)=>{let s=i(`Edit`),u=ne,d=le,f=D,m=i(`User`),g=ce,S=re,C=O,w=ie,T=k,M=ee,L=ue,R=oe,q=ae,Y=te,Q=de,ye=E,be=se,xe=A;return a(),b(fe,{title:B.value?.UserName||`员工详情`,loading:z.value},{actions:r(()=>[h(d,{type:`primary`,disabled:!B.value,onClick:_e},{default:r(()=>[h(u,null,{default:r(()=>[h(s)]),_:1}),o[2]||=v(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:r(()=>[H.value?(a(),b(f,{key:0,type:`error`,title:H.value,"show-icon":``,closable:!1},null,8,[`title`])):c(``,!0),B.value?(a(),p(`div`,N,[h(g,{size:96,src:me.value,class:`profile-avatar`},{default:r(()=>[h(u,{size:32},{default:r(()=>[h(m)]),_:1})]),_:1},8,[`src`]),_(`div`,P,[h(w,{title:`基本信息`,column:2,border:``},{default:r(()=>[h(S,{label:`用户名`},{default:r(()=>[v(t(G(B.value.UserName)||`-`),1)]),_:1}),h(S,{label:`真实姓名`},{default:r(()=>[v(t(G(B.value.UserRealName)||`-`),1)]),_:1}),h(S,{label:`邮箱`},{default:r(()=>[v(t(G(B.value.UserEmail)||`-`),1)]),_:1}),h(S,{label:`电话`},{default:r(()=>[v(t(G(B.value.UserTele)||`-`),1)]),_:1}),h(S,{label:`账号状态`},{default:r(()=>[h(C,{type:W[String(B.value.UserAccountLicense)]?.type||`info`,size:`small`},{default:r(()=>[v(t(W[String(B.value.UserAccountLicense)]?.text??B.value.UserAccountLicense),1)]),_:1},8,[`type`])]),_:1}),h(S,{label:`是否员工`},{default:r(()=>[_(`span`,{style:x({color:J(B.value.IsStaff)?`#166534`:`#991b1b`})},t(J(B.value.IsStaff)?`是`:`否`),5)]),_:1}),h(S,{label:`创建时间`},{default:r(()=>[v(t(K(B.value.UserCreateTime)),1)]),_:1})]),_:1})])])):c(``,!0),B.value?(a(),b(pe,{key:2,title:`安全信息`,columns:2},{default:r(()=>[h(S,{label:`2FA状态`},{default:r(()=>[V.value?(a(),p(`span`,{key:0,style:x({color:V.value.IsEnabled===1?`#166534`:`#991b1b`})},t(V.value.IsEnabled===1?`已启用`:`未启用`),5)):(a(),p(`span`,F,`未配置`))]),_:1}),h(S,{label:`验证状态`},{default:r(()=>[V.value?(a(),p(`span`,{key:0,style:x({color:V.value.Verified===1?`#166534`:`#991b1b`})},t(V.value.Verified===1?`已验证`:`未验证`),5)):(a(),p(`span`,I,`-`))]),_:1}),h(S,{label:`最后使用`},{default:r(()=>[v(t(V.value&&V.value.LastUsedAt?K(V.value.LastUsedAt):`-`),1)]),_:1}),h(S,{label:`2FA创建时间`},{default:r(()=>[v(t(V.value&&V.value.CreateTime?K(V.value.CreateTime):`-`),1)]),_:1})]),_:1})):c(``,!0),B.value?(a(),b(T,{key:3,shadow:`never`},{default:r(()=>[h(j,{table:`UserRole`,title:`角色与组织`,query:{UserUUID:y(U)},selectable:!0,pageable:!0,"pk-field":`UserRoleUUID`},null,8,[`query`])]),_:1})):c(``,!0),B.value?(a(),b(T,{key:4,shadow:`never`},{default:r(()=>[h(j,{table:`UserDept`,title:`部门关联`,query:{UserUUID:y(U)},selectable:!0,pageable:!0,"pk-field":`UserDeptUUID`,"on-view":he},null,8,[`query`])]),_:1})):c(``,!0),h(xe,{modelValue:X.value,"onUpdate:modelValue":o[1]||=e=>X.value=e,title:`编辑员工`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[h(d,{onClick:o[0]||=e=>X.value=!1},{default:r(()=>[...o[3]||=[v(`取消`,-1)]]),_:1}),h(d,{type:`primary`,loading:Z.value,onClick:ve},{default:r(()=>[...o[4]||=[v(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[h(be,{model:$,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),p(l,null,n(ge.value,e=>(a(),b(ye,{key:e.field,label:e.title,required:e.required},{default:r(()=>[!e.type||e.type===`text`||e.type===`string`?(a(),b(M,{key:0,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`number`?(a(),b(L,{key:1,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`textarea`?(a(),b(M,{key:2,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`password`?(a(),b(M,{key:3,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,type:`password`,"show-password":``,placeholder:e.placeholder},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`select`?(a(),b(q,{key:4,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(a(!0),p(l,null,n(e.options,e=>(a(),b(R,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(a(),b(Y,{key:5,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(a(),b(Q,{key:6,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`readonly`?(a(),b(M,{key:7,"model-value":String($[e.field]??``),readonly:``},null,8,[`model-value`])):(a(),b(M,{key:8,modelValue:$[e.field],"onUpdate:modelValue":t=>$[e.field]=t,placeholder:e.placeholder,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}}),[[`__scopeId`,`data-v-0f6399fb`]]);export{R as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/EpCreate-Dd8uzb-x.js b/TempLate/GERP/assets/EpCreate-Dd8uzb-x.js deleted file mode 100644 index 5746c893..00000000 --- a/TempLate/GERP/assets/EpCreate-Dd8uzb-x.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Lr as i,Nn as a,_ as o,an as s,cn as c,en as l,fn as ee,hn as u,ir as d,ln as f,mn as p,nr as m,on as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{t as S}from"./date-picker-CM_15T0u.js";import{r as te,t as ne}from"./select-BGsfCDCJ.js";import{t as re}from"./button-CPx9BSuo.js";import{t as ie}from"./input-number-CiNOxXL6.js";import{n as ae,t as oe}from"./steps-C4-7Ybf-.js";/* empty css */import"./css-DsD2Typt.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import"./css-Dmy6QwIc.js";import"./css-ByqxgOA-.js";import{t as C}from"./form-B2Pzr8Vf.js";var se={class:`ep-create-page`},ce={class:`step-card`},w={key:0,class:`start-page`},T={key:1,class:`step-form`},E={class:`step-header`},D={class:`step-title`},O={class:`step-desc`},k={class:`form-body`},A={class:`section-title`},j={class:`section-grid`},M={class:`form-label`},N={key:0,class:`required`},P={class:`step-actions`},F={key:2,class:`preview-page`},I={class:`preview-body`},L={class:`preview-section-title`},R={class:`preview-grid`},z={class:`preview-label`},le={class:`preview-value`},B={class:`step-actions`},V={key:3,class:`success-page`},H={class:`success-actions`},U=o(u({__name:`EpCreate`,setup(o){let u=[{title:`企业名称`,icon:`fa-font`,desc:`填写企业名称和品牌信息`,sections:[{name:`名称信息`,fields:[{id:`EnterpriseName`,label:`企业全称`,type:`text`,required:!0,placeholder:`请输入营业执照上的企业全称`},{id:`EnterpriseShortName`,label:`企业简称`,type:`text`,placeholder:`请输入企业简称`},{id:`EnterpriseAbbr`,label:`企业缩写`,type:`text`,placeholder:`请输入企业英文缩写`},{id:`FormerName`,label:`曾用名`,type:`text`,placeholder:`请输入企业曾用名(如有)`}]},{name:`品牌信息`,fields:[{id:`BrandName`,label:`品牌名称`,type:`text`,placeholder:`请输入品牌名称`},{id:`EnglishName`,label:`英文名称`,type:`text`,placeholder:`请输入英文名称`},{id:`BrandLogo`,label:`品牌Logo链接`,type:`text`,placeholder:`请输入品牌Logo URL`},{id:`BrandSlogan`,label:`品牌口号`,type:`text`,placeholder:`请输入品牌口号`}]},{name:`企业简介`,fields:[{id:`EnterpriseIntro`,label:`企业简介`,type:`textarea`,fullWidth:!0,placeholder:`请输入企业简介(200字以内)`}]}]},{title:`企业编码`,icon:`fa-barcode`,desc:`填写企业各类编码信息`,sections:[{name:`工商编码`,fields:[{id:`CreditCode`,label:`统一社会信用代码`,type:`text`,required:!0,maxlength:18,placeholder:`请输入18位信用代码`},{id:`OrgCode`,label:`组织机构代码`,type:`text`,placeholder:`请输入组织机构代码`},{id:`RegistrationNo`,label:`工商注册号`,type:`text`,placeholder:`请输入工商注册号`},{id:`BusinessLicenseNo`,label:`营业执照编号`,type:`text`,placeholder:`请输入营业执照编号`}]},{name:`税务编码`,fields:[{id:`TaxpayerId`,label:`纳税人识别号`,type:`text`,placeholder:`请输入纳税人识别号`},{id:`TaxRegNo`,label:`税务登记号`,type:`text`,placeholder:`请输入税务登记号`},{id:`TaxpayerType`,label:`纳税人类型`,type:`select`,options:[{value:`general`,label:`一般纳税人`},{value:`small`,label:`小规模纳税人`},{value:`individual`,label:`个体工商户`}]},{id:`TaxAuthority`,label:`主管税务机关`,type:`text`,placeholder:`请输入主管税务机关`}]},{name:`其他编码`,fields:[{id:`ImportExportCode`,label:`进出口企业代码`,type:`text`,placeholder:`请输入进出口企业代码`},{id:`CustomsCode`,label:`海关编码`,type:`text`,placeholder:`请输入海关编码`},{id:`SocialSecurityNo`,label:`社保登记号`,type:`text`,placeholder:`请输入社保登记号`},{id:`HousingFundNo`,label:`公积金登记号`,type:`text`,placeholder:`请输入公积金登记号`}]},{name:`资质证书`,fields:[{id:`CertificateType`,label:`资质类型`,type:`select`,options:[{value:`iso9001`,label:`ISO9001质量管理体系`},{value:`iso14001`,label:`ISO14001环境管理体系`},{value:`iso45001`,label:`ISO45001职业健康安全`},{value:`highTech`,label:`高新技术企业`},{value:`other`,label:`其他`}]},{id:`CertificateNo`,label:`证书编号`,type:`text`,placeholder:`请输入证书编号`},{id:`CertificateExpiry`,label:`证书有效期`,type:`date`}]}]},{title:`企业分类`,icon:`fa-tags`,desc:`选择企业类型、行业和规模`,sections:[{name:`企业类型`,fields:[{id:`EnterpriseType`,label:`企业类型`,type:`select`,required:!0,options:[{value:`limited`,label:`有限责任公司`},{value:`joint`,label:`股份有限公司`},{value:`private`,label:`个人独资企业`},{value:`partnership`,label:`合伙企业`},{value:`state`,label:`国有企业`},{value:`collective`,label:`集体企业`},{value:`foreign`,label:`外商投资企业`},{value:`hkMacaoTaiwan`,label:`港澳台投资企业`}]},{id:`OwnershipType`,label:`所有制性质`,type:`select`,options:[{value:`state`,label:`国有`},{value:`collective`,label:`集体`},{value:`private`,label:`私营`},{value:`foreign`,label:`外资`},{value:`joint`,label:`合资`},{value:`mixed`,label:`混合所有制`}]},{id:`ListingStatus`,label:`上市状态`,type:`select`,options:[{value:`unlisted`,label:`未上市`},{value:`listed`,label:`已上市`},{value:`newThirdBoard`,label:`新三板`},{value:`preparing`,label:`筹备上市`}]},{id:`StockCode`,label:`股票代码`,type:`text`,placeholder:`请输入股票代码(如已上市)`}]},{name:`行业分类`,fields:[{id:`Industry`,label:`所属行业`,type:`select`,required:!0,options:[{value:`it`,label:`信息技术`},{value:`finance`,label:`金融业`},{value:`manufacture`,label:`制造业`},{value:`retail`,label:`零售业`},{value:`service`,label:`服务业`},{value:`construction`,label:`建筑业`},{value:`education`,label:`教育业`},{value:`medical`,label:`医疗健康`},{value:`logistics`,label:`物流运输`},{value:`realestate`,label:`房地产`},{value:`agriculture`,label:`农林牧渔`},{value:`energy`,label:`能源矿产`}]},{id:`SubIndustry`,label:`细分行业`,type:`text`,placeholder:`请输入细分行业`},{id:`IndustryCode`,label:`行业代码`,type:`text`,placeholder:`请输入国民经济行业代码`},{id:`MainBusiness`,label:`主营业务`,type:`text`,placeholder:`请输入主营业务`}]},{name:`企业规模`,fields:[{id:`Scale`,label:`企业规模`,type:`select`,options:[{value:`micro`,label:`微型企业 (20人以下)`},{value:`small`,label:`小型企业 (20-300人)`},{value:`medium`,label:`中型企业 (300-1000人)`},{value:`large`,label:`大型企业 (1000人以上)`}]},{id:`EmployeeCount`,label:`员工人数`,type:`number`,placeholder:`请输入员工人数`},{id:`RegisteredCapital`,label:`注册资本 (万元)`,type:`number`,placeholder:`请输入注册资本`},{id:`PaidCapital`,label:`实缴资本 (万元)`,type:`number`,placeholder:`请输入实缴资本`},{id:`TotalAssets`,label:`总资产 (万元)`,type:`number`,placeholder:`请输入总资产`},{id:`AnnualRevenue`,label:`年营业额 (万元)`,type:`number`,placeholder:`请输入年营业额`}]}]},{title:`经营信息`,icon:`fa-calendar-alt`,desc:`填写企业经营相关信息`,sections:[{name:`经营期限`,fields:[{id:`EstablishDate`,label:`成立日期`,type:`date`},{id:`BusinessTerm`,label:`营业期限`,type:`date-range`},{id:`BusinessTermType`,label:`期限类型`,type:`select`,options:[{value:`limited`,label:`有限期限`},{value:`permanent`,label:`长期`}]},{id:`OperatingYears`,label:`经营年限`,type:`text`,placeholder:`自动计算或手动输入`}]},{name:`经营状态`,fields:[{id:`BusinessStatus`,label:`经营状态`,type:`select`,options:[{value:`normal`,label:`正常`},{value:`suspend`,label:`停业`},{value:`liquidation`,label:`清算中`},{value:`revoked`,label:`吊销`},{value:`cancelled`,label:`注销`},{value:`moved`,label:`迁出`}]},{id:`RegistrationAuthority`,label:`登记机关`,type:`text`,placeholder:`请输入登记机关`},{id:`ApprovalDate`,label:`核准日期`,type:`date`},{id:`LastInspectionDate`,label:`最近年检日期`,type:`date`}]},{name:`经营范围`,fields:[{id:`BusinessScope`,label:`经营范围`,type:`tags`,fullWidth:!0,placeholder:`输入后按回车添加`}]},{name:`经营资质`,fields:[{id:`BusinessLicenseType`,label:`执照类型`,type:`select`,options:[{value:`original`,label:`正本`},{value:`copy`,label:`副本`},{value:`both`,label:`正副本齐全`}]},{id:`LicenseIssueDate`,label:`发证日期`,type:`date`},{id:`LicenseExpiryDate`,label:`有效期至`,type:`date`}]}]},{title:`联系信息`,icon:`fa-map-marker-alt`,desc:`填写企业地址和联系方式`,sections:[{name:`注册地址`,fields:[{id:`RegProvince`,label:`注册省份`,type:`select`,required:!0,options:[{value:`beijing`,label:`北京市`},{value:`shanghai`,label:`上海市`},{value:`guangdong`,label:`广东省`},{value:`jiangsu`,label:`江苏省`},{value:`zhejiang`,label:`浙江省`},{value:`sichuan`,label:`四川省`},{value:`shandong`,label:`山东省`},{value:`henan`,label:`河南省`},{value:`hubei`,label:`湖北省`},{value:`fujian`,label:`福建省`}]},{id:`RegCity`,label:`注册城市`,type:`text`,placeholder:`请输入城市`},{id:`RegDistrict`,label:`注册区县`,type:`text`,placeholder:`请输入区县`},{id:`RegPostalCode`,label:`邮政编码`,type:`text`,placeholder:`请输入邮政编码`}]},{name:`办公地址`,fields:[{id:`OfficeProvince`,label:`办公省份`,type:`select`,options:[{value:`beijing`,label:`北京市`},{value:`shanghai`,label:`上海市`},{value:`guangdong`,label:`广东省`},{value:`jiangsu`,label:`江苏省`},{value:`zhejiang`,label:`浙江省`},{value:`sichuan`,label:`四川省`},{value:`shandong`,label:`山东省`},{value:`henan`,label:`河南省`}]},{id:`OfficeCity`,label:`办公城市`,type:`text`,placeholder:`请输入城市`},{id:`OfficeDistrict`,label:`办公区县`,type:`text`,placeholder:`请输入区县`},{id:`OfficePostalCode`,label:`邮政编码`,type:`text`,placeholder:`请输入邮政编码`}]},{name:`详细地址`,fields:[{id:`RegAddress`,label:`注册地址`,type:`text`,required:!0,fullWidth:!0,placeholder:`请输入注册详细地址`},{id:`OfficeAddress`,label:`办公地址`,type:`text`,fullWidth:!0,placeholder:`请输入办公详细地址(如与注册地址相同可留空)`}]},{name:`联系方式`,fields:[{id:`Phone`,label:`联系电话`,type:`text`,required:!0,placeholder:`请输入联系电话`},{id:`Phone2`,label:`备用电话`,type:`text`,placeholder:`请输入备用电话`},{id:`Fax`,label:`传真号码`,type:`text`,placeholder:`请输入传真号码`},{id:`Email`,label:`企业邮箱`,type:`text`,required:!0,placeholder:`请输入企业邮箱`},{id:`Hotline`,label:`服务热线`,type:`text`,placeholder:`请输入服务热线`},{id:`ServicePhone`,label:`客服电话`,type:`text`,placeholder:`请输入客服电话`}]},{name:`网络信息`,fields:[{id:`Website`,label:`企业网站`,type:`text`,placeholder:`请输入企业网站URL`},{id:`Wechat`,label:`微信公众号`,type:`text`,placeholder:`请输入微信公众号`},{id:`WechatMini`,label:`微信小程序`,type:`text`,placeholder:`请输入小程序名称`},{id:`Weibo`,label:`官方微博`,type:`text`,placeholder:`请输入微博账号`},{id:`LinkedIn`,label:`领英主页`,type:`text`,placeholder:`请输入领英主页URL`}]}]},{title:`银行信息`,icon:`fa-university`,desc:`填写企业银行账户信息`,sections:[{name:`基本账户`,fields:[{id:`Bank`,label:`开户银行`,type:`select`,options:[{value:`icbc`,label:`中国工商银行`},{value:`abc`,label:`中国农业银行`},{value:`boc`,label:`中国银行`},{value:`ccb`,label:`中国建设银行`},{value:`comm`,label:`交通银行`},{value:`cmb`,label:`招商银行`},{value:`spdb`,label:`浦发银行`},{value:`cib`,label:`兴业银行`},{value:`citic`,label:`中信银行`},{value:`ceb`,label:`中国光大银行`},{value:`other`,label:`其他银行`}]},{id:`BankAccount`,label:`银行账号`,type:`text`,placeholder:`请输入银行账号`},{id:`BankBranch`,label:`开户支行`,type:`text`,placeholder:`请输入开户支行名称`},{id:`BankProvince`,label:`开户省份`,type:`text`,placeholder:`请输入开户省份`},{id:`BankCity`,label:`开户城市`,type:`text`,placeholder:`请输入开户城市`}]},{name:`账户信息`,fields:[{id:`AccountName`,label:`账户名称`,type:`text`,placeholder:`请输入账户名称`},{id:`BankCode`,label:`银行行号`,type:`text`,placeholder:`请输入银行行号`},{id:`AccountType`,label:`账户类型`,type:`select`,options:[{value:`basic`,label:`基本存款账户`},{value:`general`,label:`一般存款账户`},{value:`special`,label:`专用存款账户`},{value:`temporary`,label:`临时存款账户`}]},{id:`AccountStatus`,label:`账户状态`,type:`select`,options:[{value:`normal`,label:`正常`},{value:`frozen`,label:`冻结`},{value:`cancelled`,label:`注销`}]}]},{name:`税务银行`,fields:[{id:`TaxBank`,label:`纳税开户行`,type:`text`,placeholder:`请输入纳税开户行`},{id:`TaxAccount`,label:`纳税账号`,type:`text`,placeholder:`请输入纳税账号`},{id:`TaxBankCode`,label:`纳税银行行号`,type:`text`,placeholder:`请输入纳税银行行号`}]},{name:`其他账户`,fields:[{id:`SalaryBank`,label:`工资开户行`,type:`text`,placeholder:`请输入工资开户行`},{id:`SalaryAccount`,label:`工资账号`,type:`text`,placeholder:`请输入工资账号`},{id:`SocialSecurityBank`,label:`社保开户行`,type:`text`,placeholder:`请输入社保开户行`},{id:`SocialSecurityAccount`,label:`社保账号`,type:`text`,placeholder:`请输入社保账号`}]}]},{title:`法人信息`,icon:`fa-user-tie`,desc:`填写法定代表人信息`,sections:[{name:`法人身份`,fields:[{id:`LegalPersonName`,label:`法人姓名`,type:`text`,required:!0,placeholder:`请输入法人姓名`},{id:`LegalPersonIdCard`,label:`身份证号`,type:`text`,required:!0,maxlength:18,placeholder:`请输入身份证号`},{id:`LegalPersonGender`,label:`性别`,type:`select`,options:[{value:`male`,label:`男`},{value:`female`,label:`女`}]},{id:`LegalPersonBirthday`,label:`出生日期`,type:`date`},{id:`LegalPersonNationality`,label:`国籍`,type:`text`,placeholder:`请输入国籍`},{id:`LegalPersonEducation`,label:`学历`,type:`select`,options:[{value:`doctor`,label:`博士`},{value:`master`,label:`硕士`},{value:`bachelor`,label:`本科`},{value:`college`,label:`大专`},{value:`highschool`,label:`高中`},{value:`other`,label:`其他`}]}]},{name:`法人联系`,fields:[{id:`LegalPersonPhone`,label:`联系电话`,type:`text`,required:!0,placeholder:`请输入联系电话`},{id:`LegalPersonEmail`,label:`电子邮箱`,type:`text`,placeholder:`请输入电子邮箱`},{id:`LegalPersonAddress`,label:`通讯地址`,type:`text`,fullWidth:!0,placeholder:`请输入通讯地址`}]},{name:`法人职务`,fields:[{id:`LegalPersonPosition`,label:`职务`,type:`select`,options:[{value:`chairman`,label:`董事长`},{value:`ceo`,label:`总经理/CEO`},{value:`director`,label:`董事`},{value:`manager`,label:`经理`},{value:`other`,label:`其他`}]},{id:`LegalPersonShareRatio`,label:`持股比例 (%)`,type:`number`,placeholder:`请输入持股比例`},{id:`LegalPersonAppointment`,label:`任职日期`,type:`date`}]},{name:`经办人信息`,fields:[{id:`OperatorName`,label:`经办人姓名`,type:`text`,placeholder:`请输入经办人姓名`},{id:`OperatorIdCard`,label:`经办人身份证`,type:`text`,placeholder:`请输入经办人身份证号`},{id:`OperatorPhone`,label:`经办人电话`,type:`text`,placeholder:`请输入经办人电话`},{id:`OperatorEmail`,label:`经办人邮箱`,type:`text`,placeholder:`请输入经办人邮箱`},{id:`OperatorDepartment`,label:`所属部门`,type:`text`,placeholder:`请输入所属部门`},{id:`OperatorPosition`,label:`职务`,type:`text`,placeholder:`请输入职务`}]},{name:`财务负责人`,fields:[{id:`FinanceManagerName`,label:`财务负责人`,type:`text`,placeholder:`请输入财务负责人姓名`},{id:`FinanceManagerPhone`,label:`联系电话`,type:`text`,placeholder:`请输入联系电话`},{id:`FinanceManagerEmail`,label:`电子邮箱`,type:`text`,placeholder:`请输入电子邮箱`},{id:`FinanceManagerIdCard`,label:`身份证号`,type:`text`,placeholder:`请输入身份证号`}]},{name:`备注`,fields:[{id:`Remark`,label:`备注说明`,type:`textarea`,fullWidth:!0,placeholder:`请输入备注说明`}]}]}],U=[{title:`基本信息`,icon:`fa-info-circle`,items:[{label:`企业全称`,field:`EnterpriseName`},{label:`企业简称`,field:`EnterpriseShortName`},{label:`信用代码`,field:`CreditCode`},{label:`企业类型`,field:`EnterpriseType`,useOptions:!0},{label:`所属行业`,field:`Industry`,useOptions:!0},{label:`企业规模`,field:`Scale`,useOptions:!0}]},{title:`经营信息`,icon:`fa-calendar-alt`,items:[{label:`注册资本`,field:`RegisteredCapital`},{label:`成立日期`,field:`EstablishDate`},{label:`经营状态`,field:`BusinessStatus`,useOptions:!0},{label:`经营范围`,field:`BusinessScope`}]},{title:`联系信息`,icon:`fa-map-marker-alt`,items:[{label:`注册地址`,field:`RegAddress`},{label:`办公地址`,field:`OfficeAddress`},{label:`联系电话`,field:`Phone`},{label:`企业邮箱`,field:`Email`}]},{title:`银行信息`,icon:`fa-university`,items:[{label:`开户银行`,field:`Bank`,useOptions:!0},{label:`银行账号`,field:`BankAccount`},{label:`开户支行`,field:`BankBranch`}]},{title:`法人信息`,icon:`fa-user-tie`,items:[{label:`法人姓名`,field:`LegalPersonName`},{label:`身份证号`,field:`LegalPersonIdCard`},{label:`联系电话`,field:`LegalPersonPhone`}]}];function W(){let e=[];for(let t of u)for(let n of t.sections)for(let t of n.fields)e.push(t);return e}let G=W(),ue=G.reduce((e,t)=>(e[t.id]=t,e),{});function K(){let e={};for(let t of G)t.type===`tags`||t.type===`date-range`?e[t.id]=[]:t.type===`number`?e[t.id]=void 0:e[t.id]=``;return e}let q=d(-1),J=m(K()),Y=d(!1),X=u.length,Z=s(()=>q.value>=0&&q.value0?q.value--:q.value===0&&(q.value=-1)}function fe(e){q.value=e}function pe(e){let t=J[e],n=ue[e];if(n?.options||n?.type===`select`){let e=n.options?.find(e=>e.value===t);return e?e.label:t?String(t):`-`}return Array.isArray(t)?t.length?t.join(`,`):`-`:t==null||t===``?`-`:e===`RegisteredCapital`?`${t} 万元`:String(t)}function me(){let e={};for(let t of G){let n=J[t.id];t.type===`tags`||t.type===`date-range`?e[t.id]=Array.isArray(n)?n.join(`,`):``:t.type===`number`?e[t.id]=n===void 0?``:n:e[t.id]=n??``}return e.ReviewStatus=0,e}async function he(){Y.value=!0;try{await C.create(`CompanyInfo`,me()),q.value=X+1,b.success(`创建成功`)}catch{}finally{Y.value=!1}}function ge(){Object.assign(J,K()),q.value=-1}return e(()=>{y(`企业创建`)}),(e,o)=>{let s=oe,d=ae,m=re,y=x,b=ne,C=te,W=S,G=ie;return a(),f(`div`,se,[o[12]||=h(`div`,{class:`create-header`},[h(`h1`,null,[h(`i`,{class:`fas fa-building icon-primary`}),g(`企业创建`)]),h(`p`,null,`创建新企业,完善企业信息`)],-1),q.value>=0&&q.value<=_(X)?(a(),v(d,{key:0,active:q.value,"align-center":``,class:`steps-wrapper`},{default:r(()=>[(a(),f(l,null,n(u,(e,t)=>p(s,{key:t,title:e.title},null,8,[`title`])),64)),p(s,{title:`预览确认`})]),_:1},8,[`active`])):c(``,!0),h(`div`,ce,[q.value===-1?(a(),f(`div`,w,[o[2]||=ee(`
创建新企业
完善企业信息,开启企业管理之旅。请准备好相关材料。
营业执照 法人身份证 联系方式 银行信息
`,4),p(m,{type:`primary`,size:`large`,onClick:Q},{default:r(()=>[...o[1]||=[h(`i`,{class:`fas fa-plus`},null,-1),g(` 创建企业 `,-1)]]),_:1})])):Z.value?(a(),f(`div`,T,[h(`div`,E,[h(`div`,D,[h(`i`,{class:i([`fas`,u[q.value].icon])},null,2),g(` `+t(u[q.value].title),1)]),h(`div`,O,t(u[q.value].desc),1)]),h(`div`,k,[(a(!0),f(l,null,n(u[q.value].sections,(e,o)=>(a(),f(`div`,{key:o,class:`form-section`},[h(`div`,A,t(e.name),1),h(`div`,j,[(a(!0),f(l,null,n(e.fields,e=>(a(),f(`div`,{key:e.id,class:i([`form-group`,{"full-width":e.fullWidth}])},[h(`label`,M,[g(t(e.label)+` `,1),e.required?(a(),f(`span`,N,`*`)):c(``,!0)]),e.type===`text`?(a(),v(y,{key:0,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,placeholder:e.placeholder,maxlength:e.maxlength},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`])):e.type===`textarea`?(a(),v(y,{key:1,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,type:`textarea`,rows:3,placeholder:e.placeholder},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`select`?(a(),v(C,{key:2,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,placeholder:e.placeholder||`请选择`,style:{width:`100%`}},{default:r(()=>[(a(!0),f(l,null,n(e.options,e=>(a(),v(b,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`date`?(a(),v(W,{key:3,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,type:`date`,"value-format":`YYYY-MM-DD`,placeholder:e.placeholder||`请选择日期`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`date-range`?(a(),v(W,{key:4,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,type:`daterange`,"value-format":`YYYY-MM-DD`,"start-placeholder":`开始日期`,"end-placeholder":`结束日期`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`])):e.type===`number`?(a(),v(G,{key:5,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`tags`?(a(),v(C,{key:6,modelValue:J[e.id],"onUpdate:modelValue":t=>J[e.id]=t,multiple:``,filterable:``,"allow-create":``,"default-first-option":``,placeholder:e.placeholder||`输入后按回车添加`,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):c(``,!0)],2))),128))])]))),128))]),h(`div`,P,[p(m,{onClick:$},{default:r(()=>[...o[3]||=[g(`上一步`,-1)]]),_:1}),p(m,{type:`primary`,onClick:de},{default:r(()=>[g(t(q.value===_(X)-1?`下一步(预览)`:`下一步`),1)]),_:1})])])):q.value===_(X)?(a(),f(`div`,F,[o[7]||=h(`div`,{class:`step-header`},[h(`div`,{class:`step-title`},[h(`i`,{class:`fas fa-check-circle`}),g(`预览确认`)]),h(`div`,{class:`step-desc`},`请核对以下信息,确认无误后提交`)],-1),h(`div`,I,[(a(),f(l,null,n(U,(e,r)=>h(`div`,{key:r,class:`preview-section`},[h(`div`,L,[h(`i`,{class:i([`fas`,e.icon])},null,2),g(` `+t(e.title),1)]),h(`div`,R,[(a(!0),f(l,null,n(e.items,e=>(a(),f(`div`,{key:e.field,class:`preview-item`},[h(`span`,z,t(e.label)+`:`,1),h(`span`,le,t(pe(e.field)),1)]))),128))])])),64))]),h(`div`,B,[p(m,{onClick:$},{default:r(()=>[...o[4]||=[g(`上一步`,-1)]]),_:1}),p(m,{onClick:o[0]||=e=>fe(0)},{default:r(()=>[...o[5]||=[g(`重新编辑`,-1)]]),_:1}),p(m,{type:`primary`,loading:Y.value,onClick:he},{default:r(()=>[...o[6]||=[g(`提交创建`,-1)]]),_:1},8,[`loading`])])])):q.value===_(X)+1?(a(),f(`div`,V,[o[9]||=h(`div`,{class:`success-icon`},[h(`i`,{class:`fas fa-check-circle`})],-1),o[10]||=h(`div`,{class:`success-title`},`企业创建成功`,-1),o[11]||=h(`div`,{class:`success-desc`},`企业信息已提交,等待审核通过后生效。`,-1),h(`div`,H,[p(m,{type:`primary`,onClick:ge},{default:r(()=>[...o[8]||=[g(`继续创建`,-1)]]),_:1})])])):c(``,!0)])])}}}),[[`__scopeId`,`data-v-2e6986a4`]]);export{U as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Login-hDgdqSpL.js b/TempLate/GERP/assets/Login-hDgdqSpL.js deleted file mode 100644 index 0e09d42f..00000000 --- a/TempLate/GERP/assets/Login-hDgdqSpL.js +++ /dev/null @@ -1 +0,0 @@ -import{Jn as e,Nn as t,_ as n,h as r,hn as i,ir as a,ln as o,m as s,mn as c,nr as l,on as u,pn as d}from"./useApi-CROJJdhE-mMpa5RAf.js";import{l as f,u as p}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{o as m,u as h}from"./serverScope-O8Rw8SFk.js";import{r as g}from"./router-CMu0lceh.js";import{n as _,t as v}from"./form-F--u6XQJ.js";import{t as y}from"./button-CPx9BSuo.js";import{t as b}from"./checkbox-CdKclTX1.js";/* empty css */import"./css-DsD2Typt.js";import"./favicon-CjgOoDgN.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";var x={class:`login-page`},S={class:`login-card`},C=n(i({__name:`Login`,setup(n){let i=r(),C=s(),w=g(),T=a(!1),E=l({UserName:``,UserPassword:``,RememberMe:!1}),D={UserName:[{required:!0,message:`请输入用户名`,trigger:`blur`}],UserPassword:[{required:!0,message:`请输入密码`,trigger:`blur`}]};async function O(){if(!E.UserName||!E.UserPassword){m.warning(`请输入用户名和密码`);return}T.value=!0;try{await w.login(E);let e=C.query.redirect||`/dashboard`;i.push(e)}catch{}finally{T.value=!1}}return(n,r)=>{let i=h,a=_,s=b,l=y,m=v;return t(),o(`div`,x,[u(`div`,S,[r[5]||=u(`div`,{class:`login-header`},[u(`img`,{src:`/favicon.svg`,alt:`logo`,class:`login-logo`}),u(`h1`,{class:`login-title`},`GERP 管理系统`),u(`p`,{class:`login-subtitle`},`登录到后台管理`)],-1),c(m,{model:E,rules:D,"label-position":`top`,size:`large`,onSubmit:p(O,[`prevent`])},{default:e(()=>[c(a,{label:`用户名`,prop:`UserName`},{default:e(()=>[c(i,{modelValue:E.UserName,"onUpdate:modelValue":r[0]||=e=>E.UserName=e,placeholder:`请输入用户名`,"prefix-icon":`User`,clearable:``},null,8,[`modelValue`])]),_:1}),c(a,{label:`密码`,prop:`UserPassword`},{default:e(()=>[c(i,{modelValue:E.UserPassword,"onUpdate:modelValue":r[1]||=e=>E.UserPassword=e,type:`password`,placeholder:`请输入密码`,"prefix-icon":`Lock`,"show-password":``,onKeyup:f(O,[`enter`])},null,8,[`modelValue`])]),_:1}),c(a,null,{default:e(()=>[c(s,{modelValue:E.RememberMe,"onUpdate:modelValue":r[2]||=e=>E.RememberMe=e},{default:e(()=>[...r[3]||=[d(`记住我`,-1)]]),_:1},8,[`modelValue`])]),_:1}),c(l,{type:`primary`,size:`large`,class:`login-btn`,loading:T.value,onClick:O},{default:e(()=>[...r[4]||=[d(` 登 录 `,-1)]]),_:1},8,[`loading`])]),_:1},8,[`model`])])])}}}),[[`__scopeId`,`data-v-e370fea4`]]);export{C as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Manager-YB4nxbIc.js b/TempLate/GERP/assets/Manager-YB4nxbIc.js deleted file mode 100644 index b4c54f55..00000000 --- a/TempLate/GERP/assets/Manager-YB4nxbIc.js +++ /dev/null @@ -1,2 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Lr as a,Nn as o,Yn as ee,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,mn as m,nr as h,on as g,pn as _,sn as v,zr as y}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as b}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as x,o as S,u as te}from"./serverScope-O8Rw8SFk.js";import{u as ne}from"./use-global-config-D-dPcPvU.js";import{_ as C,f as w,l as T,o as E,s as D}from"./router-CMu0lceh.js";import{t as re}from"./image-HD4q5QFa.js";import{t as ie}from"./button-CPx9BSuo.js";import{t as ae}from"./checkbox-CdKclTX1.js";import{t as oe}from"./dialog-_5VhSQg5.js";import{t as se}from"./pagination-DOGDdUWm.js";import{t as ce}from"./progress-CJYzD9Cp.js";import{t as le}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-Cy-4mdDD.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-B0rEpZpL.js";import"./css-DMOjom7l.js";import"./css-fhPIiYtD.js";import{t as ue}from"./AdminBadge-Z72F8Boy.js";var de={class:`asset-manager-page`},fe={class:`asset-header`},pe={class:`header-left`},me={class:`asset-count`},he={class:`header-right`},ge={class:`filter-group`},_e={class:`asset-body`},ve={class:`asset-timeline`},ye={class:`timeline-track`},be={class:`timeline-labels`},xe={class:`timeline-sort`},Se={class:`asset-main`},Ce={key:0,class:`batch-bar`},we={class:`batch-count`},Te={class:`batch-actions`},Ee={class:`asset-grid-wrap`},De={key:0,class:`asset-empty`},Oe={key:1,class:`asset-empty`},ke={key:2,class:`asset-grid`},Ae=[`onClick`],je=[`onClick`],Me={class:`card-thumb`},Ne=[`src`,`alt`],Pe={class:`card-info`},Fe=[`title`],Ie={class:`card-meta`},Le={class:`card-actions`},Re={key:1,class:`asset-pagination`},ze={class:`preview-content`},Be=[`src`],Ve={key:2,class:`preview-unsupported`},He={key:0,class:`upload-panel`},Ue={class:`upload-panel-header`},We={class:`upload-file-list`},Ge=[`title`],Ke={class:`upload-file-size`},qe={class:`upload-file-status`},O=24,k=5242880,A=5242880,j=`https://api.gvsds.com/API/Asset/Download`,M=s(d({__name:`Manager`,setup(s){x(`资产管理`);let d=f([]),M=f(0),N=f(1),P=f(``),F=f(``),I=f(`desc`),L=f(!1),R=f(``),z=f(null),B=f(null),V=null,H=f(new Set),U=f(!1),W=f(!1),G=f(null),Je=f(null),K=f(!1),q=f([]),J=h({left:0,top:0,width:0,height:0}),Ye=f(!1),Xe=[{label:`全部`,value:``},{label:`图片`,value:`image`},{label:`视频`,value:`video`},{label:`文档`,value:`document`},{label:`其他`,value:`other`}],Ze=c(()=>Math.ceil(M.value/O)||1),Qe=c(()=>d.value.length>0&&d.value.every(e=>H.value.has(e.sha1))),$e=c(()=>d.value.some(e=>H.value.has(e.sha1))&&!Qe.value),et=c(()=>H.value.size),tt=c(()=>et.value>0||U.value),nt=c(()=>!!z.value&&!!B.value);async function Y(){L.value=!0,R.value=``;try{let e=await D(`/API/Asset/List`,{page:N.value,pageSize:O,orderDir:I.value,type:P.value||void 0,keyword:F.value||void 0});d.value=e.assets||[],M.value=e.total||0,N.value=e.page||1,z.value=e.minTime||null,B.value=e.maxTime||null,St()}catch(e){let t=e?.response?.status||0,n=e?.response?.data?.msg||e?.message||`加载资产列表失败`;t===401?R.value=`未登录,请先登录后查看资产`:t===403?R.value=`权限不足,需要 admin:fileasset_read 权限`:R.value=n,d.value=[],M.value=0,S.error(n)}finally{L.value=!1}}async function rt(e){try{await C.confirm(`确定删除此文件?`,`危险操作`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}try{await E(`/API/Asset/Delete/${e}`),H.value.delete(e),S.success(`删除成功`),await Y()}catch(e){S.error(`删除失败: `+(e?.message||``))}}function it(e){let t=`${j}/${e}`;navigator.clipboard.writeText(t).then(()=>S.success(`引用链接已复制`)).catch(()=>S.error(`复制失败,请手动复制`))}function at(e){window.open(`${j}/${e}?download=1`,`_blank`)}function ot(e){U.value||(G.value=e,W.value=!0)}function st(){W.value=!1,G.value=null}function X(e){return`${j}/${e}`}function ct(e){let t=new Set(H.value);t.has(e)?(t.delete(e),t.size===0&&(U.value=!1)):(t.add(e),U.value=!0),H.value=t}function lt(e){let t=new Set(H.value);e?(d.value.forEach(e=>t.add(e.sha1)),U.value=!0):d.value.forEach(e=>t.delete(e.sha1)),H.value=t}function ut(){H.value=new Set,U.value=!1}async function dt(){if(H.value.size===0)return;try{await C.confirm(`确定删除 ${H.value.size} 个文件?`,`批量删除`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`,confirmButtonClass:`el-button--danger`})}catch{return}let e=Array.from(H.value),t=0,n=0;for(let r of e)try{await E(`/API/Asset/Delete/${r}`),H.value.delete(r),t++}catch{n++}S.success(`删除完成: ${t} 成功, ${n} 失败`),await Y()}function ft(){if(H.value.size===0)return;let e=Array.from(H.value).map(e=>`${j}/${e}`).join(` -`);navigator.clipboard.writeText(e).then(()=>S.success(`已复制 ${H.value.size} 个链接`)).catch(()=>S.error(`复制失败`))}function pt(){H.value.size!==0&&Array.from(H.value).forEach(e=>{window.open(`${j}/${e}?download=1`,`_blank`)})}function mt(e){P.value=e,N.value=1,Y()}function Z(e){I.value=e,N.value=1,Y()}function ht(e){N.value=e,Y()}function gt(){V&&clearTimeout(V),V=setTimeout(()=>{N.value=1,Y()},300)}function _t(){Je.value?.click()}async function vt(e){let t=e.target;t.files?.length&&(await Q(Array.from(t.files)),t.value=``)}async function Q(e){K.value=!0,q.value=e.map(e=>({name:e.name,size:e.size,status:`等待中`,progress:0}));for(let t=0;t{r.progress=e})):(r.status=`分片上传中`,await bt(n,(e,t)=>{r.progress=e,t&&(r.status=t)})),r.status=`完成`,r.progress=100}catch(e){r.status=`失败: `+(e?.message||``)}}await Y(),setTimeout(()=>{K.value=!1},2e3)}async function yt(e,t){let n=new FormData;n.append(`file`,e),await new Promise((e,r)=>{let i=new XMLHttpRequest;i.open(`POST`,`/API/Asset/Upload`),i.withCredentials=!0,i.upload.onprogress=e=>{e.lengthComputable&&t(Math.round(e.loaded/e.total*100))},i.onload=()=>{try{let t=JSON.parse(i.responseText);t.code===0?e():r(Error(t.msg||`上传失败`))}catch{r(Error(`解析响应失败`))}},i.onerror=()=>r(Error(`网络错误`)),i.send(n)})}async function bt(e,t){let n=Math.ceil(e.size/k),r=e.type||`application/octet-stream`;t(0,`初始化上传...`);let i=(await T(`/API/Asset/UploadInit`,{fileName:e.name,fileSize:e.size,mimeType:r,totalChunks:n})).uploadId;if(!i)throw Error(`UploadInit 未返回 uploadId`);for(let r=0;r{Y()}),(e,s)=>{let c=i(`Search`),f=ne,h=te,x=ie,S=i(`Upload`),C=ae,w=i(`Link`),T=i(`Download`),E=i(`Delete`),D=i(`Close`),k=i(`Warning`),A=i(`FolderOpened`),j=i(`Check`),z=se,B=re,V=i(`Document`),U=oe,Y=ce,Q=le;return o(),p(`div`,de,[m(ue),g(`div`,fe,[g(`div`,pe,[s[4]||=g(`h2`,{class:`asset-title`},`资产管理`,-1),g(`span`,me,t(M.value)+` 个文件`,1)]),g(`div`,he,[m(h,{modelValue:F.value,"onUpdate:modelValue":s[0]||=e=>F.value=e,placeholder:`搜索文件名...`,clearable:``,class:`search-input`,onInput:gt},{prefix:r(()=>[m(f,null,{default:r(()=>[m(c)]),_:1})]),_:1},8,[`modelValue`]),g(`div`,ge,[(o(),p(u,null,n(Xe,e=>m(x,{key:e.value,size:`small`,type:P.value===e.value?`primary`:`default`,onClick:t=>mt(e.value)},{default:r(()=>[_(t(e.label),1)]),_:2},1032,[`type`,`onClick`])),64))]),m(x,{type:`primary`,onClick:_t},{default:r(()=>[m(f,null,{default:r(()=>[m(S)]),_:1}),s[5]||=_(`\xA0上传 `,-1)]),_:1})])]),g(`input`,{ref_key:`FileInput`,ref:Je,type:`file`,multiple:``,style:{display:`none`},accept:`image/*,video/*,.pdf,.doc,.docx,.xls,.xlsx,.zip,.rar`,onChange:vt},null,544),g(`div`,_e,[g(`div`,ve,[g(`div`,ye,[nt.value?(o(),p(`div`,{key:0,class:`timeline-thumb`,style:y({top:xt.value+`px`})},null,4)):l(``,!0)]),g(`div`,be,[(o(!0),p(u,null,n($.value,(e,n)=>(o(),p(`span`,{key:n},t(e),1))),128))]),g(`div`,xe,[m(x,{size:`small`,type:I.value===`desc`?`primary`:`default`,onClick:s[1]||=e=>Z(`desc`)},{default:r(()=>[...s[6]||=[_(` 最新优先 `,-1)]]),_:1},8,[`type`]),m(x,{size:`small`,type:I.value===`asc`?`primary`:`default`,onClick:s[2]||=e=>Z(`asc`)},{default:r(()=>[...s[7]||=[_(` 最早优先 `,-1)]]),_:1},8,[`type`])])]),g(`div`,Se,[tt.value?(o(),p(`div`,Ce,[m(C,{"model-value":Qe.value,indeterminate:$e.value,onChange:lt},{default:r(()=>[...s[8]||=[_(` 全选 `,-1)]]),_:1},8,[`model-value`,`indeterminate`]),g(`span`,we,`已选 `+t(et.value)+` 项`,1),g(`div`,Te,[m(x,{size:`small`,onClick:ft},{default:r(()=>[m(f,null,{default:r(()=>[m(w)]),_:1}),s[9]||=_(`\xA0复制链接 `,-1)]),_:1}),m(x,{size:`small`,onClick:pt},{default:r(()=>[m(f,null,{default:r(()=>[m(T)]),_:1}),s[10]||=_(`\xA0下载 `,-1)]),_:1}),m(x,{size:`small`,type:`danger`,onClick:dt},{default:r(()=>[m(f,null,{default:r(()=>[m(E)]),_:1}),s[11]||=_(`\xA0删除 `,-1)]),_:1})]),m(x,{link:``,onClick:ut},{default:r(()=>[m(f,null,{default:r(()=>[m(D)]),_:1})]),_:1})])):l(``,!0),ee((o(),p(`div`,Ee,[R.value&&!L.value?(o(),p(`div`,De,[m(f,null,{default:r(()=>[m(k)]),_:1}),g(`p`,null,t(R.value),1)])):!d.value.length&&!L.value?(o(),p(`div`,Oe,[m(f,null,{default:r(()=>[m(A)]),_:1}),s[12]||=g(`p`,null,`暂无文件`,-1),s[13]||=g(`p`,{class:`text-sm`},`点击上方"上传"按钮添加文件`,-1)])):(o(),p(`div`,ke,[(o(!0),p(u,null,n(d.value,e=>(o(),p(`div`,{key:e.sha1,class:a([`asset-card`,{selected:H.value.has(e.sha1)}]),onClick:t=>ot(e)},[g(`div`,{class:`card-check`,onClick:b(t=>ct(e.sha1),[`stop`])},[H.value.has(e.sha1)?(o(),v(f,{key:0},{default:r(()=>[m(j)]),_:1})):l(``,!0)],8,je),g(`div`,Me,[e.isImage&&e.thumbnailUrl?(o(),p(`img`,{key:0,src:e.thumbnailUrl,alt:e.fileName,loading:`lazy`},null,8,Ne)):(o(),p(`i`,{key:1,class:a([`fas`,wt(e.mimeType)])},null,2))]),g(`div`,Pe,[g(`div`,{class:`card-name`,title:e.fileName},t(e.fileName),9,Fe),g(`div`,Ie,[g(`span`,null,t(e.fileSizeDisplay),1),g(`span`,null,t(e.createTime?e.createTime.split(` `)[0]:``),1)])]),g(`div`,Le,[m(x,{size:`small`,type:`primary`,circle:``,title:`复制引用链接`,onClick:b(t=>it(e.sha1),[`stop`])},{default:r(()=>[m(f,null,{default:r(()=>[m(w)]),_:1})]),_:1},8,[`onClick`]),m(x,{size:`small`,type:`success`,circle:``,title:`下载`,onClick:b(t=>at(e.sha1),[`stop`])},{default:r(()=>[m(f,null,{default:r(()=>[m(T)]),_:1})]),_:1},8,[`onClick`]),m(x,{size:`small`,type:`danger`,circle:``,title:`删除`,onClick:b(t=>rt(e.sha1),[`stop`])},{default:r(()=>[m(f,null,{default:r(()=>[m(E)]),_:1})]),_:1},8,[`onClick`])])],10,Ae))),128))])),Ye.value?(o(),p(`div`,{key:3,class:`box-select`,style:y({left:J.left+`px`,top:J.top+`px`,width:J.width+`px`,height:J.height+`px`})},null,4)):l(``,!0)])),[[Q,L.value]]),Ze.value>1?(o(),p(`div`,Re,[m(z,{background:``,layout:`prev, pager, next`,"current-page":N.value,"page-size":O,total:M.value,onCurrentChange:ht},null,8,[`current-page`,`total`])])):l(``,!0)])]),m(U,{modelValue:W.value,"onUpdate:modelValue":s[3]||=e=>W.value=e,title:G.value?.fileName,width:`80%`,"destroy-on-close":``,onClose:st},{default:r(()=>[g(`div`,ze,[G.value?.mimeType?.startsWith(`video/`)?(o(),p(`video`,{key:0,src:X(G.value.sha1),controls:``,autoplay:``},null,8,Be)):G.value?.isImage?(o(),v(B,{key:1,src:X(G.value.sha1),fit:`contain`,"preview-src-list":[X(G.value.sha1)],"hide-on-click-modal":``},null,8,[`src`,`preview-src-list`])):(o(),p(`div`,Ve,[m(f,null,{default:r(()=>[m(V)]),_:1}),g(`p`,null,t(G.value?.fileName),1),s[14]||=g(`p`,{class:`text-sm`},`此文件类型暂不支持预览`,-1)]))])]),_:1},8,[`modelValue`,`title`]),K.value?(o(),p(`div`,He,[g(`div`,Ue,[s[15]||=g(`h4`,null,`批量上传`,-1),g(`span`,null,t(q.value.filter(e=>e.status===`完成`).length)+`/`+t(q.value.length)+` 完成 `,1)]),m(Y,{percentage:q.value.length?Math.round(q.value.filter(e=>e.status===`完成`).length/q.value.length*100):0,"stroke-width":6},null,8,[`percentage`]),g(`div`,We,[(o(!0),p(u,null,n(q.value,(e,n)=>(o(),p(`div`,{key:n,class:`upload-file-item`},[g(`span`,{class:`upload-file-name`,title:e.name},t(e.name),9,Ge),g(`span`,Ke,t(Ct(e.size)),1),g(`span`,qe,t(e.status),1),e.status.includes(`上传`)||e.status===`完成`?(o(),v(Y,{key:0,percentage:e.progress,"stroke-width":3},null,8,[`percentage`])):l(``,!0)]))),128))])])):l(``,!0)])}}}),[[`__scopeId`,`data-v-9560db8e`]]);export{M as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Menu-CmxVaJIX.js b/TempLate/GERP/assets/Menu-CmxVaJIX.js deleted file mode 100644 index 543e2835..00000000 --- a/TempLate/GERP/assets/Menu-CmxVaJIX.js +++ /dev/null @@ -1,4 +0,0 @@ -import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Lr as a,Nn as o,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,mn as m,on as h,pn as g,sn as _,zr as ee}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as v}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as y,o as b,u as te}from"./serverScope-O8Rw8SFk.js";import{_ as x,d as S,r as C}from"./router-CMu0lceh.js";import{n as ne,t as re}from"./form-F--u6XQJ.js";import{t as ie}from"./button-CPx9BSuo.js";import{t as ae}from"./tag-BSnLMVgs.js";import{n as oe,t as se}from"./tabs-BSMusFE5.js";import{r as ce,t as le}from"./radio-Cb0vAm4I.js";import{t as ue}from"./empty-CnQTxkvl.js";import{t as de}from"./input-number-CiNOxXL6.js";import{t as fe}from"./tree-DqeBDBpX.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-w8-s2aei.js";import{t as pe}from"./AdminBadge-Z72F8Boy.js";import"./css-0wcCNliC.js";import"./css-D4jab2ni2.js";import"./css-CLuE7SsA.js";import"./css-DcINL9JV2.js";var me={class:`menu-editor`},he={class:`menu-header`},ge={class:`company-search-wrap`},_e={key:0,class:`company-search-dropdown`},ve=[`onClick`],ye={class:`menu-body`},be=[`innerHTML`],xe={class:`node-title`},Se={class:`node-actions`},Ce={class:`menu-form`},we={style:{display:`flex`,gap:`8px`,width:`100%`}},Te=[`innerHTML`],Ee={class:`form-actions`},De={key:2,class:`ctx-sep`},Oe={key:5,class:`ctx-sep`},w=s(d({__name:`Menu`,setup(s){y(`菜单编辑器`);let d=C(),w=c(()=>d.isAdmin),T=f(!1),E=f([]),D=f(-1),O=c(()=>D.value>=0?E.value[D.value]:null),k=f(``),A=f([]),j=f(!1),M=null,N=f(!1),P=f(0),F=f(0),I=f(null),L=f(null),R=f({MenuUUID:``,MenuName:``,MenuTitle:``,MenuIcon:``,MenuLink:``,MenuType:0,MenuSort:0,PermissionLevel:1,PermissionAttr:``,MenuStatus:1,visibility:`public`}),z=c(()=>{let e=O.value;return e?B(e.menus):[]}),ke=c(()=>{let e=O.value;return!e||!e.selectedUUID?null:e.menus.find(t=>t.MenuUUID===e.selectedUUID)||null});function B(e){let t={},n=[];e.forEach(e=>{t[e.MenuUUID]={...e,children:[]}}),e.forEach(e=>{e.ParentMenuUUID&&t[e.ParentMenuUUID]?t[e.ParentMenuUUID].children.push(t[e.MenuUUID]):n.push(t[e.MenuUUID])});let r=(e,t)=>(e.MenuSort||0)-(t.MenuSort||0),i=e=>{e.sort(r),e.forEach(e=>i(e.children||[]))};return i(n),n}function V(e,t){let n=e.find(e=>e.MenuUUID===t);if(!n)return null;let r={...n,children:[]},i=e.filter(e=>e.ParentMenuUUID===t);for(let t of i){let n=V(e,t.MenuUUID);n&&r.children.push(n)}return r.children.sort((e,t)=>(e.MenuSort||0)-(t.MenuSort||0)),r}function Ae(){M&&clearTimeout(M);let e=k.value.trim();if(!e){A.value=[],j.value=!1;return}M=setTimeout(async()=>{try{let t=await S.get(`/API/FormAPI/CompanySearch`,{params:{keyword:e,limit:10}});A.value=Array.isArray(t)?t:[],j.value=A.value.length>0}catch{A.value=[],j.value=!1}},300)}function je(e){k.value=e.CompanyName,j.value=!1;let t=E.value.findIndex(t=>t.companyUUID===e.CompanyUUID);t>=0?H(t):(E.value.push({companyUUID:e.CompanyUUID,companyName:e.CompanyName,menus:[],selectedUUID:null}),H(E.value.length-1),U())}function H(e){e<0||e>=E.value.length||(D.value=e,W())}function Me(e){E.value.splice(e,1),E.value.length===0?D.value=-1:D.value>=E.value.length?D.value=E.value.length-1:D.value>e?D.value--:D.value===e&&(D.value=Math.min(e,E.value.length-1)),W()}async function U(){let e=O.value;if(e)try{let t=await S.get(`/API/Menu/AdminList`,{params:{CompanyUUID:e.companyUUID}});e.menus=Array.isArray(t)?t:[]}catch{e.menus=[]}}function Ne(e){let t=O.value;t&&(t.selectedUUID=e.MenuUUID,W())}function Pe(){let e=O.value;e&&(e.selectedUUID=null,W())}function W(){let e=O.value;if(!e||!e.selectedUUID)return;let t=e.menus.find(t=>t.MenuUUID===e.selectedUUID);if(!t){e.selectedUUID=null;return}R.value={...t,visibility:t.CompanyUUID?`private`:`public`}}async function Fe(){let e=O.value;if(!e||!e.selectedUUID)return;let t=e.menus.find(t=>t.MenuUUID===e.selectedUUID);if(!t)return;let n={MenuUUID:e.selectedUUID,MenuTitle:R.value.MenuTitle||``,MenuName:R.value.MenuName||``,MenuIcon:R.value.MenuIcon||``,MenuLink:R.value.MenuLink||``,MenuType:String(R.value.MenuType??0),MenuSort:String(R.value.MenuSort||0),PermissionLevel:String(R.value.PermissionLevel??1),PermissionAttr:R.value.PermissionAttr||``,MenuStatus:String(R.value.MenuStatus??1),CompanyUUID:R.value.visibility===`public`?``:e.companyUUID,ParentMenuUUID:t.ParentMenuUUID||``};try{await S.post(`/API/Menu/Save`,new URLSearchParams(n),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),Object.assign(t,n,{CompanyUUID:n.CompanyUUID||void 0}),b.success(`保存成功`)}catch{}}async function Ie(e){let t=O.value;if(!t)return;let n=e?t.menus.filter(t=>t.ParentMenuUUID===e):t.menus.filter(e=>!e.ParentMenuUUID),r=n.length>0?Math.max(...n.map(e=>e.MenuSort||0)):-1,i={CompanyUUID:t.companyUUID,ParentMenuUUID:e||``,MenuName:`new-menu`,MenuTitle:`新菜单`,MenuIcon:``,MenuLink:``,MenuType:`1`,MenuSort:String(r+1),PermissionLevel:`1.0`,PermissionAttr:``,MenuStatus:`1`};try{let e=G(await S.post(`/API/Menu/Save`,new URLSearchParams(i),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}));e&&(t.selectedUUID=e),await U(),e&&W(),b.success(`创建成功`)}catch{}}async function Le(){let e=O.value;if(!e)return;let t=e.menus.filter(e=>!e.ParentMenuUUID),n=t.length>0?Math.max(...t.map(e=>e.MenuSort||0)):-1,r={CompanyUUID:e.companyUUID,ParentMenuUUID:``,MenuName:`new-root`,MenuTitle:`新菜单组`,MenuIcon:``,MenuLink:``,MenuType:`0`,MenuSort:String(n+1),PermissionLevel:`1.0`,PermissionAttr:``,MenuStatus:`1`};try{let t=G(await S.post(`/API/Menu/Save`,new URLSearchParams(r),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}));t&&(e.selectedUUID=t),await U(),t&&W(),b.success(`创建成功`)}catch{}}function G(e){if(!e)return null;if(typeof e==`string`)return e;if(typeof e==`object`){let t=e;return t.id||t.Id||t.MenuUUID||null}return null}async function K(e){let t=O.value;if(!t)return;let n=e||t.selectedUUID;if(!n)return;let r=t.menus.find(e=>e.MenuUUID===n),i=r?r.MenuTitle||r.MenuName:`此菜单`;try{await x.confirm(`确定要删除"${i}"吗?`,`删除菜单`,{type:`error`,confirmButtonText:`删除`,cancelButtonText:`取消`})}catch{return}try{await S.post(`/API/Menu/Delete`,new URLSearchParams({MenuUUID:n}),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),t.selectedUUID===n&&(t.selectedUUID=null),await U(),W(),b.success(`已删除"${i}"`)}catch{}}async function Re(e,t){let n=O.value;if(!n)return;let r=n.menus.find(t=>t.MenuUUID===e);if(!r)return;let i=r.ParentMenuUUID,a=n.menus.filter(e=>e.ParentMenuUUID===i).sort((e,t)=>(e.MenuSort||0)-(t.MenuSort||0)),o=a.findIndex(t=>t.MenuUUID===e),s=o+t;if(s<0||s>=a.length)return;let c=a[o],l=a[s],u=c.MenuSort||0,d=l.MenuSort||0;c.MenuSort=d,l.MenuSort=u;let f=await ze(c),p=await ze(l);(!f||!p)&&(c.MenuSort=u,l.MenuSort=d,await U())}async function ze(e){let t={MenuUUID:e.MenuUUID,CompanyUUID:e.CompanyUUID||``,ParentMenuUUID:e.ParentMenuUUID||``,MenuName:e.MenuName||``,MenuTitle:e.MenuTitle||``,MenuIcon:e.MenuIcon||``,MenuLink:e.MenuLink||``,MenuType:String(e.MenuType??0),MenuSort:String(e.MenuSort||0),MenuStatus:String(e.MenuStatus??1),PermissionLevel:String(e.PermissionLevel??1),PermissionAttr:e.PermissionAttr||``};try{return await S.post(`/API/Menu/Save`,new URLSearchParams(t),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),!0}catch{return!1}}function Be(e,t){e.preventDefault(),I.value=t.MenuUUID,He(e)}function Ve(e,t){e.preventDefault(),e.stopPropagation(),I.value=t?`__ROOT__`:null,He(e)}function He(e){P.value=e.clientX,F.value=e.clientY,N.value=!0}function q(){N.value=!1}let J=c(()=>I.value===`__ROOT__`),Y=c(()=>!!I.value&&!J.value);function Ue(e){let t=O.value;if(!t||!I.value)return;let n=J.value?null:I.value;if(!n)return;let r=t.menus.find(e=>e.MenuUUID===n);if(!r)return;if(e){let e=V(t.menus,n);L.value=e?JSON.parse(JSON.stringify(e)):{...JSON.parse(JSON.stringify(r)),children:[]}}else L.value=JSON.parse(JSON.stringify(r)),delete L.value.children;let i=L.value?.children?.length||0;b.success(e?`已复制子树(${i} 个子节点)`:`已复制节点`),q()}async function X(e){if(!L.value){b.warning(`剪贴板为空`);return}let t=O.value;if(!t)return;let n=J.value?null:I.value,r=null;if(n){let i=t.menus.find(e=>e.MenuUUID===n);i&&(r=e?n:i.ParentMenuUUID||null)}let i=r||null,a=t.menus.filter(e=>(e.ParentMenuUUID||null)===i),o=a.length>0?Math.max(...a.map(e=>e.MenuSort||0)):-1;await We(L.value,r,o+1,t.companyUUID),await U(),b.success(`粘贴成功`),q()}async function We(e,t,n,r){let i={CompanyUUID:r,ParentMenuUUID:t||``,MenuName:e.MenuName||`pasted`,MenuTitle:e.MenuTitle||`粘贴菜单`,MenuIcon:e.MenuIcon||``,MenuLink:e.MenuLink||``,MenuType:String(e.MenuType??1),MenuSort:String(n),PermissionLevel:String(e.PermissionLevel??1),PermissionAttr:e.PermissionAttr||``,MenuStatus:String(e.MenuStatus??1)},a=null;try{a=G(await S.post(`/API/Menu/Save`,new URLSearchParams(i),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}))}catch{return}let o=e.children||[];if(o.length>0&&a)for(let e=0;e/g,`>`)}function Q(e,t=0){let n=` `.repeat(t),r=`${n}\n`,i=``;return e.children?.length&&e.children.forEach(e=>{i+=Q(e,t+1)}),r+i+`${n}\n`}async function Ge(){let e=O.value;if(!e)return;let t=B(e.menus),n=` - -`;t.forEach(e=>{n+=Q(e,1)}),n+=``,await navigator.clipboard.writeText(n),b.success(`XML 已复制到剪贴板`)}async function Ke(){let e=O.value;if(!e||!I.value)return;let t=J.value?null:I.value;if(!t)return;let n=V(e.menus,t);if(!n)return;let r=` -`+Q(n);await navigator.clipboard.writeText(r),b.success(`XML 已复制到剪贴板`),q()}async function qe(e){let t=e.target,n=t.files?.[0];if(!n)return;t.value=``;let r=O.value;if(r)try{let e=await n.text(),t=new DOMParser().parseFromString(e,`text/xml`).querySelectorAll(`:scope > menus > menu, :scope > menu`);if(t.length===0){b.error(`未找到有效的菜单结构`);return}let i=r.menus.filter(e=>!e.ParentMenuUUID),a=i.length>0?Math.max(...i.map(e=>e.MenuSort||0))+1:0;for(let e of Array.from(t))await Je(e,``,a++,r.companyUUID);await U(),b.success(`导入成功`)}catch(e){b.error(`导入失败: `+(e instanceof Error?e.message:String(e)))}}async function Je(e,t,n,r){let i={CompanyUUID:r,ParentMenuUUID:t||``,MenuName:e.getAttribute(`name`)||`imported`,MenuTitle:e.getAttribute(`title`)||`导入菜单`,MenuIcon:e.getAttribute(`icon`)||``,MenuLink:e.getAttribute(`link`)||``,MenuType:String(parseInt(e.getAttribute(`type`)||`1`)||1),MenuSort:String(n),PermissionLevel:String(parseFloat(e.getAttribute(`permLevel`)||`1.0`)||1),PermissionAttr:e.getAttribute(`permAttr`)||``,MenuStatus:String(parseInt(e.getAttribute(`status`)||`1`)||1)},a=null;try{a=G(await S.post(`/API/Menu/Save`,new URLSearchParams(i),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}))}catch{return}let o=e.querySelectorAll(`:scope > menu`);if(o.length>0&&a)for(let e=0;ee.MenuUUID===n.selectedUUID)){let e=V(n.menus,n.selectedUUID);L.value=e?JSON.parse(JSON.stringify(e)):null,b.success(`已复制子树`)}}else if((e.ctrlKey||e.metaKey)&&(e.key===`v`||e.key===`V`))e.preventDefault(),n.selectedUUID?(I.value=n.selectedUUID,X(!0)):(I.value=`__ROOT__`,X(!1));else if(e.key===`Delete`||e.key===`Backspace`){if(!n.selectedUUID)return;e.preventDefault(),K(n.selectedUUID)}}}function Xe(e){if(!e)return``;let t=e.trim();return t.startsWith(`<`)?t:``}e(()=>{if(!w.value){T.value=!0;return}document.addEventListener(`keydown`,Ye),document.addEventListener(`click`,$)}),n(()=>{document.removeEventListener(`keydown`,Ye),document.removeEventListener(`click`,$)});function $(e){let t=e.target;t.closest(`.menu-ctx-panel`)||(N.value=!1),t.closest(`.company-search-wrap`)||(j.value=!1)}return(e,n)=>{let s=ue,c=te,d=ie,f=se,y=oe,b=ae,x=fe,S=ne,C=le,w=ce,M=de,I=re;return o(),p(`div`,me,[m(pe),T.value?(o(),_(s,{key:0,description:`无权访问:该页面仅管理员可查看,请切换至管理员角色或联系管理员`},{image:i(()=>[...n[24]||=[h(`i`,{class:`fas fa-lock`,style:{"font-size":`48px`,color:`var(--el-color-danger)`}},null,-1)]]),_:1})):(o(),p(u,{key:1},[h(`div`,he,[n[28]||=h(`h1`,{class:`page-title`},[h(`i`,{class:`fas fa-bars icon-primary`}),h(`span`,null,`菜单编辑器`)],-1),h(`div`,ge,[m(c,{modelValue:k.value,"onUpdate:modelValue":n[0]||=e=>k.value=e,placeholder:`搜索公司添加标签页...`,clearable:``,style:{width:`240px`},onInput:Ae},null,8,[`modelValue`]),j.value?(o(),p(`div`,_e,[(o(!0),p(u,null,r(A.value,e=>(o(),p(`div`,{key:e.CompanyUUID,class:`company-search-item`,onClick:t=>je(e)},[h(`strong`,null,t(e.CompanyName),1),h(`span`,null,t(e.CompanyShort||``),1)],8,ve))),128))])):l(``,!0)]),m(d,{type:`primary`,disabled:!O.value,onClick:Le},{default:i(()=>[...n[25]||=[h(`i`,{class:`fas fa-plus`},null,-1),g(` 新增根菜单 `,-1)]]),_:1},8,[`disabled`]),m(d,{disabled:!O.value,onClick:Ge},{default:i(()=>[...n[26]||=[h(`i`,{class:`fas fa-file-export`},null,-1),g(` 导出XML `,-1)]]),_:1},8,[`disabled`]),m(d,{disabled:!O.value,onClick:n[1]||=t=>e.$refs.importInput.click()},{default:i(()=>[...n[27]||=[h(`i`,{class:`fas fa-file-import`},null,-1),g(` 导入XML `,-1)]]),_:1},8,[`disabled`]),h(`input`,{ref:`importInput`,type:`file`,accept:`.xml,.json`,style:{display:`none`},onChange:qe},null,544)]),E.value.length>0?(o(),_(y,{key:0,modelValue:D.value,"onUpdate:modelValue":n[2]||=e=>D.value=e,type:`card`,closable:``,onTabClick:n[3]||=e=>H(e.index),onTabRemove:n[4]||=e=>Me(Number(e))},{default:i(()=>[(o(!0),p(u,null,r(E.value,(e,t)=>(o(),_(f,{key:e.companyUUID,label:e.companyName,name:t},null,8,[`label`,`name`]))),128))]),_:1},8,[`modelValue`])):l(``,!0),h(`div`,ye,[h(`div`,{class:`menu-preview`,onContextmenu:n[6]||=e=>Ve(e,!1)},[O.value?(o(),p(u,{key:0},[h(`div`,{class:a([`menu-root-node`,{selected:!O.value.selectedUUID}]),onClick:Pe,onContextmenu:n[5]||=e=>Ve(e,!0)},[...n[29]||=[h(`span`,{class:`node-icon`},[h(`i`,{class:`fas fa-folder-open`})],-1),h(`span`,null,`根目录`,-1)]],34),z.value.length>0?(o(),_(x,{key:0,data:z.value,props:{children:`children`,label:`MenuTitle`},"node-key":`MenuUUID`,"expand-on-click-node":!1,"default-expand-all":!0,"highlight-current":``,onNodeClick:Ne,onNodeContextmenu:Be},{default:i(({data:e})=>[h(`div`,{class:a([`menu-node`,{selected:O.value?.selectedUUID===e.MenuUUID}])},[h(`span`,{class:`node-icon`,innerHTML:Xe(e.MenuIcon)},null,8,be),h(`span`,xe,t(e.MenuTitle||e.MenuName),1),e.CompanyUUID?(o(),_(b,{key:0,size:`small`,type:`info`},{default:i(()=>[...n[30]||=[g(`私有`,-1)]]),_:1})):(o(),_(b,{key:1,size:`small`,type:`warning`},{default:i(()=>[...n[31]||=[g(`公有`,-1)]]),_:1})),m(b,{size:`small`,type:e.MenuType==1?`success`:`primary`},{default:i(()=>[g(t(e.MenuType==1?`页面`:`目录`),1)]),_:2},1032,[`type`]),e.MenuStatus==0?(o(),_(b,{key:2,size:`small`,type:`danger`},{default:i(()=>[...n[32]||=[g(`禁用`,-1)]]),_:1})):l(``,!0),e.PermissionAttr?(o(),_(b,{key:3,size:`small`,type:`success`,class:`perm-tag`},{default:i(()=>[g(t(e.PermissionAttr),1)]),_:2},1024)):l(``,!0),h(`span`,Se,[m(d,{size:`small`,link:``,onClick:v(t=>Re(e.MenuUUID,-1),[`stop`])},{default:i(()=>[...n[33]||=[h(`i`,{class:`fas fa-arrow-up`},null,-1)]]),_:1},8,[`onClick`]),m(d,{size:`small`,link:``,onClick:v(t=>Re(e.MenuUUID,1),[`stop`])},{default:i(()=>[...n[34]||=[h(`i`,{class:`fas fa-arrow-down`},null,-1)]]),_:1},8,[`onClick`]),m(d,{size:`small`,link:``,onClick:v(t=>Ie(e.MenuUUID),[`stop`])},{default:i(()=>[...n[35]||=[h(`i`,{class:`fas fa-plus`},null,-1)]]),_:1},8,[`onClick`]),m(d,{size:`small`,link:``,type:`danger`,onClick:v(t=>K(e.MenuUUID),[`stop`])},{default:i(()=>[...n[36]||=[h(`i`,{class:`fas fa-trash`},null,-1)]]),_:1},8,[`onClick`])])],2)]),_:1},8,[`data`])):(o(),_(s,{key:1,description:`暂无菜单,右键根目录粘贴或点击新增根菜单`}))],64)):(o(),_(s,{key:1,description:`点击上方搜索公司,开始编辑菜单`}))],32),h(`div`,Ce,[ke.value?(o(),p(u,{key:0},[h(`h3`,null,`编辑: `+t(R.value.MenuTitle||R.value.MenuName),1),m(I,{"label-width":`100px`,"label-position":`top`},{default:i(()=>[m(S,{label:`显示名称`},{default:i(()=>[m(c,{modelValue:R.value.MenuTitle,"onUpdate:modelValue":n[7]||=e=>R.value.MenuTitle=e,placeholder:`如:工单管理`},null,8,[`modelValue`])]),_:1}),m(S,{label:`标识名 (Id)`},{default:i(()=>[m(c,{modelValue:R.value.MenuName,"onUpdate:modelValue":n[8]||=e=>R.value.MenuName=e,placeholder:`如:workorder-admin`},null,8,[`modelValue`])]),_:1}),m(S,{label:`图标`},{default:i(()=>[h(`div`,we,[m(c,{modelValue:R.value.MenuIcon,"onUpdate:modelValue":n[9]||=e=>R.value.MenuIcon=e,placeholder:`如:fas fa-tasks`},null,8,[`modelValue`]),h(`span`,{class:`icon-preview`,innerHTML:Xe(R.value.MenuIcon)},null,8,Te)])]),_:1}),m(S,{label:`链接`},{default:i(()=>[m(c,{modelValue:R.value.MenuLink,"onUpdate:modelValue":n[10]||=e=>R.value.MenuLink=e,placeholder:`如:pages/workorder/admin.html`},null,8,[`modelValue`])]),_:1}),m(S,{label:`类型`},{default:i(()=>[m(w,{modelValue:R.value.MenuType,"onUpdate:modelValue":n[11]||=e=>R.value.MenuType=e},{default:i(()=>[m(C,{value:0},{default:i(()=>[...n[37]||=[g(`目录`,-1)]]),_:1}),m(C,{value:1},{default:i(()=>[...n[38]||=[g(`页面`,-1)]]),_:1})]),_:1},8,[`modelValue`])]),_:1}),m(S,{label:`排序`},{default:i(()=>[m(M,{modelValue:R.value.MenuSort,"onUpdate:modelValue":n[12]||=e=>R.value.MenuSort=e,min:0},null,8,[`modelValue`])]),_:1}),m(S,{label:`权限等级`},{default:i(()=>[m(M,{modelValue:R.value.PermissionLevel,"onUpdate:modelValue":n[13]||=e=>R.value.PermissionLevel=e,min:0,step:.1},null,8,[`modelValue`])]),_:1}),m(S,{label:`权限字段 (分号分隔)`},{default:i(()=>[m(c,{modelValue:R.value.PermissionAttr,"onUpdate:modelValue":n[14]||=e=>R.value.PermissionAttr=e,placeholder:`如:admin:workorder_read`},null,8,[`modelValue`])]),_:1}),m(S,{label:`可见性`},{default:i(()=>[m(w,{modelValue:R.value.visibility,"onUpdate:modelValue":n[15]||=e=>R.value.visibility=e},{default:i(()=>[m(C,{value:`public`},{default:i(()=>[...n[39]||=[g(`公有 (全局)`,-1)]]),_:1}),m(C,{value:`private`},{default:i(()=>[...n[40]||=[g(`私有 (公司)`,-1)]]),_:1})]),_:1},8,[`modelValue`])]),_:1}),m(S,{label:`状态`},{default:i(()=>[m(w,{modelValue:R.value.MenuStatus,"onUpdate:modelValue":n[16]||=e=>R.value.MenuStatus=e},{default:i(()=>[m(C,{value:1},{default:i(()=>[...n[41]||=[g(`启用`,-1)]]),_:1}),m(C,{value:0},{default:i(()=>[...n[42]||=[g(`禁用`,-1)]]),_:1})]),_:1},8,[`modelValue`])]),_:1}),m(S,null,{default:i(()=>[h(`div`,Ee,[m(d,{type:`primary`,onClick:Fe},{default:i(()=>[...n[43]||=[h(`i`,{class:`fas fa-check`},null,-1),g(` 保存`,-1)]]),_:1}),m(d,{onClick:n[17]||=e=>Ie(O.value?.selectedUUID||null)},{default:i(()=>[...n[44]||=[h(`i`,{class:`fas fa-plus`},null,-1),g(` 子菜单`,-1)]]),_:1}),m(d,{type:`danger`,onClick:n[18]||=e=>K()},{default:i(()=>[...n[45]||=[h(`i`,{class:`fas fa-trash`},null,-1),g(` 删除`,-1)]]),_:1})])]),_:1})]),_:1})],64)):(o(),_(s,{key:1,description:`选择菜单项编辑,或右键根目录粘贴`},{image:i(()=>[...n[46]||=[h(`i`,{class:`fas fa-folder-open`,style:{"font-size":`36px`,opacity:`0.3`}},null,-1)]]),_:1}))])])],64)),N.value?(o(),p(`div`,{key:2,class:`menu-ctx-panel`,style:ee({left:P.value+`px`,top:F.value+`px`}),onClick:n[23]||=v(()=>{},[`stop`])},[Y.value?(o(),p(`div`,{key:0,class:`ctx-item`,onClick:n[19]||=e=>Ue(!1)},[...n[47]||=[h(`i`,{class:`fas fa-copy`},null,-1),g(` 复制节点`,-1)]])):l(``,!0),Y.value?(o(),p(`div`,{key:1,class:`ctx-item`,onClick:n[20]||=e=>Ue(!0)},[...n[48]||=[h(`i`,{class:`fas fa-copy`},null,-1),g(` 复制子树`,-1)]])):l(``,!0),Y.value||J.value?(o(),p(`div`,De)):l(``,!0),L.value?(o(),p(`div`,{key:3,class:`ctx-item`,onClick:n[21]||=e=>X(!J.value)},[n[49]||=h(`i`,{class:`fas fa-paste`},null,-1),g(` `+t(J.value?`粘贴为根菜单`:`粘贴为子菜单`),1)])):l(``,!0),Y.value&&L.value?(o(),p(`div`,{key:4,class:`ctx-item`,onClick:n[22]||=e=>X(!1)},[...n[50]||=[h(`i`,{class:`fas fa-paste`},null,-1),g(` 粘贴为同级 `,-1)]])):l(``,!0),Y.value?(o(),p(`div`,Oe)):l(``,!0),Y.value?(o(),p(`div`,{key:6,class:`ctx-item`,onClick:Ke},[...n[51]||=[h(`i`,{class:`fas fa-file-export`},null,-1),g(` 导出为XML`,-1)]])):l(``,!0)],4)):l(``,!0)])}}}),[[`__scopeId`,`data-v-88b57326`]]);export{w as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Message-DDcpqM0D.js b/TempLate/GERP/assets/Message-DDcpqM0D.js deleted file mode 100644 index 96f58149..00000000 --- a/TempLate/GERP/assets/Message-DDcpqM0D.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Lr as a,Nn as o,Yn as ee,_ as s,cn as c,en as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,on as g,pn as _,sn as v,zr as te}from"./useApi-CROJJdhE-mMpa5RAf.js";import{u as ne}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{a as y,l as re,o as b,u as ie}from"./serverScope-O8Rw8SFk.js";import{_ as x,c as S,d as C,l as w,o as T}from"./router-CMu0lceh.js";import{n as ae,t as oe}from"./form-F--u6XQJ.js";import{t as se}from"./button-CPx9BSuo.js";import{t as ce}from"./tag-BSnLMVgs.js";import{n as le,t as ue}from"./tabs-BSMusFE5.js";import{t as de}from"./dialog-_5VhSQg5.js";import{t as fe}from"./empty-CnQTxkvl.js";import{t as pe}from"./pagination-DOGDdUWm.js";import{t as me}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-6qaeDme6.js";import"./css-Cy-4mdDD.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-fhPIiYtD.js";import"./css-D4jab2ni2.js";import"./css-DcINL9JV2.js";var he={class:`message-page`},ge={key:0},_e={key:1},ve={class:`msg-toolbar`},ye={class:`msg-list`},be=[`onClick`],xe={class:`msg-item-body`},Se={class:`msg-item-title`},Ce={class:`msg-item-content`},we={class:`msg-item-meta`},Te={class:`msg-item-actions`},Ee={key:0,class:`msg-pagination`},De={class:`detail-title`},Oe={key:0,class:`detail-body`},ke={class:`detail-meta`},Ae={class:`detail-content`},je={class:`detail-footer`},Me={class:`recipient-search`},Ne={key:0,class:`recipient-dropdown`},Pe=[`onClick`],Fe={key:0,class:`selected-recipient`},E=20,D=s(u({__name:`Message`,setup(s){let u={0:`fa-info-circle`,1:`fa-clipboard-check`,2:`fa-tools`,3:`fa-envelope`},D={0:`系统通知`,1:`审核通知`,2:`工单通知`,3:`个人消息`},O={0:{bg:`rgba(37,99,235,0.1)`,color:`#2563eb`},1:{bg:`rgba(34,197,94,0.1)`,color:`#16a34a`},2:{bg:`rgba(234,179,8,0.1)`,color:`#ca8a04`},3:{bg:`rgba(139,92,246,0.1)`,color:`#8b5cf6`}},Ie=[{name:`all`,label:`全部`},{name:`unread`,label:`未读`},{name:`0`,label:`系统通知`},{name:`1`,label:`审核通知`},{name:`2`,label:`工单通知`},{name:`3`,label:`个人消息`}],k=p(),A=d(`all`),j=d(1),M=d([]),N=d(0),P=d(0),F=d(!1),I=d(!1),L=d(null),R=d(!1),z=h({title:``,content:``}),B=d(null),V=d(``),H=d([]),U=d(!1),W=d(!1),G=null;async function K(e,t){let n=await C.get(e,{params:t,responseType:`text`});return JSON.parse(n.data)}async function q(){F.value=!0;try{let e={action:`list`,PageIndex:j.value,PageSize:E};A.value===`unread`?e.IsRead=0:A.value!==`all`&&(e.MsgType=A.value);let t=await K(`/API/Message`,e);t.code===0?(M.value=t.data||[],N.value=t.total||0):(M.value=[],N.value=0)}catch{M.value=[],N.value=0}finally{F.value=!1}}async function J(){try{let e=await K(`/API/Message`,{action:`unread_count`});e.code===0&&(P.value=e.UnreadCount||0)}catch{}}function Le(e){A.value=String(e),j.value=1,q()}function Y(e){j.value=e,q()}async function X(e){try{let t=await K(`/API/Message`,{action:`detail`,MessageUUID:e});t.code===0&&t.data&&(L.value=t.data,I.value=!0,q(),J())}catch{}}function Z(){I.value=!1,L.value=null}async function Q(e,t=!1){try{await x.confirm(`确定要删除这条消息吗?此操作不可撤销。`,`删除消息`,{type:`warning`,confirmButtonText:`删除`,cancelButtonText:`取消`})}catch{return}try{await T(`/API/Message`,void 0,{data:{MessageUUID:e}}),b.success(`已删除`),t&&Z(),q(),J()}catch{}}async function Re(){try{await S(`/API/Message`,`action=read_all`,{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),b.success(`已全部标记为已读`),q(),J()}catch{}}function $(){B.value=null,V.value=``,z.title=``,z.content=``,H.value=[],U.value=!1,R.value=!0}function ze(e,t){$(),B.value={type:`user`,uuid:e,name:t,label:t},V.value=t}function Be(e){if(G&&clearTimeout(G),!e){H.value=[],U.value=!1;return}G=setTimeout(()=>{Ve(e)},300)}async function Ve(e){try{let t=await K(`/API/Message`,{action:`search_recipients`,keyword:e,limit:10});t.code===0&&t.data?(H.value=t.data,U.value=t.data.length>0):(H.value=[],U.value=!1)}catch{H.value=[],U.value=!1}}function He(e){B.value=e,V.value=e.name,U.value=!1}function Ue(){B.value=null,V.value=``}async function We(){if(!B.value){b.warning(`请选择收件人`);return}if(!z.title.trim()){b.warning(`请输入标题`);return}let e={ReceiverUUID:B.value.uuid,ReceiverType:B.value.type,Title:z.title.trim(),Content:z.content.trim(),MsgType:`3`};W.value=!0;try{await w(`/API/Message`,new URLSearchParams(e).toString(),{headers:{"Content-Type":`application/x-www-form-urlencoded`}}),b.success(`发送成功`),R.value=!1,(A.value===`3`||A.value===`all`)&&q()}catch{}finally{W.value=!1}}return e(()=>{y(`站内信`),q(),J();let e=k.query.id;e&&X(e)}),n(()=>{G&&clearTimeout(G)}),(e,n)=>{let s=re,d=ue,p=le,h=se,y=fe,b=pe,x=de,S=ie,C=ce,w=ae,T=oe,k=me;return ee((o(),f(`div`,he,[n[22]||=g(`h1`,{class:`page-title`},[g(`i`,{class:`fas fa-envelope icon-primary`}),_(`站内信 `)],-1),m(p,{modelValue:A.value,"onUpdate:modelValue":n[0]||=e=>A.value=e,class:`msg-tabs`,onTabChange:Le},{default:i(()=>[(o(),f(l,null,r(Ie,e=>m(d,{key:e.name,name:e.name},{label:i(()=>[e.name===`unread`?(o(),f(`span`,ge,[_(t(e.label)+` `,1),P.value>0?(o(),v(s,{key:0,value:P.value,class:`unread-badge`},null,8,[`value`])):c(``,!0)])):(o(),f(`span`,_e,t(e.label),1))]),_:2},1032,[`name`])),64))]),_:1},8,[`modelValue`]),g(`div`,ve,[m(h,{type:`primary`,size:`small`,onClick:$},{default:i(()=>[...n[10]||=[g(`i`,{class:`fas fa-paper-plane`},null,-1),_(` 发送消息 `,-1)]]),_:1}),m(h,{size:`small`,onClick:Re},{default:i(()=>[...n[11]||=[g(`i`,{class:`fas fa-check-double`},null,-1),_(` 全部已读 `,-1)]]),_:1}),m(h,{size:`small`,onClick:q},{default:i(()=>[...n[12]||=[g(`i`,{class:`fas fa-sync-alt`},null,-1),_(` 刷新 `,-1)]]),_:1})]),g(`div`,ye,[!F.value&&M.value.length===0?(o(),v(y,{key:0,description:`暂无消息`,"image-size":60})):c(``,!0),(o(!0),f(l,null,r(M.value,e=>(o(),f(`div`,{key:e.MessageUUID,class:a([`msg-item`,{unread:e.IsRead===0}]),onClick:t=>X(e.MessageUUID)},[g(`div`,{class:`msg-item-icon`,style:te({background:O[e.MsgType].bg,color:O[e.MsgType].color})},[g(`i`,{class:a([`fas`,u[e.MsgType]])},null,2)],4),g(`div`,xe,[g(`div`,Se,t(e.Title||`(无标题)`),1),g(`div`,Ce,t(e.Content||``),1),g(`div`,we,[g(`span`,null,[n[13]||=g(`i`,{class:`fas fa-user`},null,-1),_(` `+t(e.SenderName||`系统`),1)]),g(`span`,null,t(D[e.MsgType]||`消息`),1),g(`span`,null,t(e.CreateTime||``),1)])]),g(`div`,Te,[m(h,{circle:``,size:`small`,type:`danger`,title:`删除`,onClick:ne(t=>Q(e.MessageUUID),[`stop`])},{default:i(()=>[...n[14]||=[g(`i`,{class:`fas fa-trash-alt`},null,-1)]]),_:1},8,[`onClick`])])],10,be))),128))]),N.value>E?(o(),f(`div`,Ee,[m(b,{"current-page":j.value,"page-size":E,total:N.value,layout:`prev, pager, next`,background:``,onCurrentChange:Y},null,8,[`current-page`,`total`])])):c(``,!0),m(x,{modelValue:I.value,"onUpdate:modelValue":n[3]||=e=>I.value=e,width:`600px`,"show-close":!0,onClose:Z},{header:i(()=>[g(`div`,De,[g(`i`,{class:a([`fas`,u[L.value?.MsgType??3]])},null,2),g(`span`,null,t(L.value?.Title||`(无标题)`),1)])]),footer:i(()=>[g(`div`,je,[L.value&&L.value.MsgType===3&&L.value.SenderName&&L.value.SenderName!==`系统`?(o(),v(h,{key:0,type:`primary`,onClick:n[1]||=e=>{Z(),ze(L.value.SenderUUID||``,L.value.SenderName||``)}},{default:i(()=>[...n[18]||=[g(`i`,{class:`fas fa-reply`},null,-1),_(` 回复 `,-1)]]),_:1})):c(``,!0),m(h,{type:`danger`,onClick:n[2]||=e=>L.value&&Q(L.value.MessageUUID,!0)},{default:i(()=>[...n[19]||=[g(`i`,{class:`fas fa-trash-alt`},null,-1),_(` 删除 `,-1)]]),_:1})])]),default:i(()=>[L.value?(o(),f(`div`,Oe,[g(`div`,ke,[g(`span`,null,[n[15]||=g(`i`,{class:`fas fa-user`},null,-1),_(` `+t(L.value.SenderName||`系统`),1)]),g(`span`,null,[n[16]||=g(`i`,{class:`fas fa-tag`},null,-1),_(` `+t(D[L.value.MsgType]||`消息`),1)]),g(`span`,null,[n[17]||=g(`i`,{class:`fas fa-clock`},null,-1),_(` `+t(L.value.CreateTime||``),1)])]),g(`div`,Ae,t(L.value.Content||`(无内容)`),1)])):c(``,!0)]),_:1},8,[`modelValue`]),m(x,{modelValue:R.value,"onUpdate:modelValue":n[9]||=e=>R.value=e,title:`发送消息`,width:`560px`},{footer:i(()=>[m(h,{onClick:n[8]||=e=>R.value=!1},{default:i(()=>[...n[20]||=[_(`取消`,-1)]]),_:1}),m(h,{type:`primary`,loading:W.value,onClick:We},{default:i(()=>[...n[21]||=[_(`发送`,-1)]]),_:1},8,[`loading`])]),default:i(()=>[m(T,{"label-position":`top`},{default:i(()=>[m(w,{label:`收件人`,required:``},{default:i(()=>[g(`div`,Me,[m(S,{modelValue:V.value,"onUpdate:modelValue":n[4]||=e=>V.value=e,placeholder:`输入用户名或角色名搜索...`,autocomplete:`off`,onInput:Be,onFocus:n[5]||=e=>H.value.length&&(U.value=!0)},null,8,[`modelValue`]),U.value?(o(),f(`div`,Ne,[(o(!0),f(l,null,r(H.value,e=>(o(),f(`div`,{key:e.uuid,class:`recipient-item`,onClick:t=>He(e)},[m(C,{size:`small`,type:e.type===`role`?`success`:`primary`},{default:i(()=>[_(t(e.type===`role`?`角色`:`用户`),1)]),_:2},1032,[`type`]),g(`span`,null,t(e.label),1)],8,Pe))),128))])):c(``,!0)]),B.value?(o(),f(`div`,Fe,[m(C,{size:`small`,type:B.value.type===`role`?`success`:`primary`},{default:i(()=>[_(t(B.value.type===`role`?`角色`:`用户`),1)]),_:1},8,[`type`]),g(`span`,null,t(B.value.name),1),g(`i`,{class:`fas fa-times remove`,onClick:Ue})])):c(``,!0)]),_:1}),m(w,{label:`标题`,required:``},{default:i(()=>[m(S,{modelValue:z.title,"onUpdate:modelValue":n[6]||=e=>z.title=e,placeholder:`消息标题`},null,8,[`modelValue`])]),_:1}),m(w,{label:`内容`},{default:i(()=>[m(S,{modelValue:z.content,"onUpdate:modelValue":n[7]||=e=>z.content=e,type:`textarea`,rows:5,placeholder:`消息内容...`},null,8,[`modelValue`])]),_:1})]),_:1})]),_:1},8,[`modelValue`])])),[[k,F.value]])}}}),[[`__scopeId`,`data-v-706c396b`]]);export{D as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/My-DPrAT3Sr.js b/TempLate/GERP/assets/My-DPrAT3Sr.js deleted file mode 100644 index c4dd7acd..00000000 --- a/TempLate/GERP/assets/My-DPrAT3Sr.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,an as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{r as s}from"./router-CMu0lceh.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`wo-my-page`},u=t(r({__name:`My`,setup(t){let r=s();o(`我的工单`);let u=n(()=>{let e=r.userInfo?.UserUUID;return e?{CreatorUUID:e}:{}});return(t,n)=>(e(),i(`div`,l,[a(c,{table:`WorkOrder`,title:`我的工单`,query:u.value,searchable:``,pageable:``,stretch:``,selectable:!1},null,8,[`query`])]))}}),[[`__scopeId`,`data-v-b1c4d29e`]]);export{u as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Orders-bra8jrHL.js b/TempLate/GERP/assets/Orders-bra8jrHL.js deleted file mode 100644 index 101d3818..00000000 --- a/TempLate/GERP/assets/Orders-bra8jrHL.js +++ /dev/null @@ -1 +0,0 @@ -import{Br as e,Lr as t,Nn as n,_ as r,an as i,h as a,hn as o,ln as s,mn as c,on as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as u}from"./serverScope-O8Rw8SFk.js";import{r as d}from"./router-CMu0lceh.js";import{t as f}from"./AdminBadge-Z72F8Boy.js";import{t as p}from"./CrudTable-B49nrpUt.js";var m={class:`order-page`},h=r(o({__name:`Orders`,setup(r){let o=d(),h=a();u(`销售订单`);let g=i(()=>o.isAdmin),_=i(()=>`scope-banner ${g.value?`admin`:`normal`}`),v=i(()=>g.value?`管理员视图:可查看全公司订单,含跨公司特权模式。`:`普通组员视图:仅可查看自己的订单。`);function y(e){h.push({path:`/sales/order-detail`,query:{OrderUUID:e.OrderUUID||``}})}return(r,i)=>(n(),s(`div`,m,[c(f),l(`div`,{class:t(_.value)},[l(`i`,{class:t([`fas`,g.value?`fa-shield-alt`:`fa-info-circle`])},null,2),l(`span`,null,e(v.value),1)],2),c(p,{table:`Order`,title:`销售订单`,"pk-field":`OrderUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":y})]))}}),[[`__scopeId`,`data-v-d8a23658`]]);export{h as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/PaymentConfig-BUuaxSoB.js b/TempLate/GERP/assets/PaymentConfig-BUuaxSoB.js deleted file mode 100644 index cdd3d4a2..00000000 --- a/TempLate/GERP/assets/PaymentConfig-BUuaxSoB.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Lr as i,Nn as a,Yn as o,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,mn as m,nr as h,on as g,pn as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{r as ee,t as te}from"./select-BGsfCDCJ.js";import{_ as S,l as C,r as w,s as T}from"./router-CMu0lceh.js";import{n as ne,t as re}from"./form-F--u6XQJ.js";import{t as ie}from"./button-CPx9BSuo.js";import{t as ae}from"./tag-BSnLMVgs.js";import{t as oe}from"./checkbox-CdKclTX1.js";import{t as se}from"./dialog-_5VhSQg5.js";import{t as ce}from"./empty-CnQTxkvl.js";import{t as le}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-Cy-4mdDD.js";import"./css-49fsIjk3.js";import"./css-DMLZMbB9.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import{t as ue}from"./AdminBadge-Z72F8Boy.js";import"./css-D4jab2ni2.js";var de={class:`payment-config-page`},fe={class:`pc-header`},E={class:`pc-grid`},D={key:0,class:`pc-error`},O={class:`pc-card-header`},k={class:`platform`},A={class:`pc-card-body`},j={class:`row`},M={class:`value`},N={class:`row`},P={class:`value`},F={class:`row`},I={class:`row`},L={class:`row`},R={key:0,class:`row`},z={class:`value`},B={class:`pc-card-actions`},pe={key:0,class:`secret-hint`},me={key:0,class:`secret-hint`},he={key:0,class:`secret-hint`},V=s(d({__name:`PaymentConfig`,setup(s){let d=w(),V=[{value:`wechat`,label:`微信支付`},{value:`alipay`,label:`支付宝`},{value:`bank`,label:`银行直连`},{value:`other`,label:`其他`}],H={wechat:`微信支付`,alipay:`支付宝`,bank:`银行直连`,other:`其他`};function U(){return{Platform:`wechat`,AppID:``,MchID:``,APIKey:``,PrivateKey:``,PublicKey:``,NotifyURL:``,ReturnURL:``,CertPath:``,CertKeyPath:``,ConfigDefault:!1,ConfigStatus:!0}}let W=f([]),G=f(!1),K=f(``),q=f(!1),J=f(null),Y=c(()=>J.value!==null),X=h(U()),Z=f(!1),ge=c(()=>d.isAdmin);async function Q(){if(!ge.value){K.value=`无权访问:仅管理员可查看支付网关配置`,W.value=[];return}G.value=!0,K.value=``;try{let e=await T(`/API/Payment/Configs`);W.value=Array.isArray(e)?e:[]}catch(e){W.value=[],K.value=e instanceof Error?e.message:`加载失败`}finally{G.value=!1}}function _e(){J.value=null,Object.assign(X,U()),q.value=!0}function ve(e){J.value=e.ConfigUUID,Object.assign(X,{Platform:e.Platform,AppID:e.AppID||``,MchID:e.MchID||``,APIKey:``,PrivateKey:``,PublicKey:``,NotifyURL:e.NotifyURL||``,ReturnURL:e.ReturnURL||``,CertPath:e.CertPath||``,CertKeyPath:e.CertKeyPath||``,ConfigDefault:!!e.ConfigDefault,ConfigStatus:e.ConfigStatus===1}),q.value=!0}function $(e){return e||(Y.value?`***`:``)}async function ye(){let e={ConfigUUID:J.value||null,Platform:X.Platform,AppID:X.AppID,MchID:X.MchID,APIKey:$(X.APIKey),PrivateKey:$(X.PrivateKey),PublicKey:$(X.PublicKey),NotifyURL:X.NotifyURL,ReturnURL:X.ReturnURL,CertPath:X.CertPath,CertKeyPath:X.CertKeyPath,ConfigDefault:X.ConfigDefault,ConfigStatus:+!!X.ConfigStatus};Z.value=!0;try{await C(`/API/Payment/SaveConfig`,e),b.success(`保存成功`),q.value=!1,Q()}catch{}finally{Z.value=!1}}async function be(e,t){let n=H[t]||t;try{await S.confirm(`确认删除 ${n} 网关配置?`,`提示`,{type:`warning`,confirmButtonText:`确认删除`,cancelButtonText:`取消`})}catch{return}try{await C(`/API/Payment/DeleteConfig/${e}`),b.success(`已删除`),Q()}catch{}}return e(()=>{y(`支付网关配置`),Q()}),(e,s)=>{let c=ie,d=ce,f=ae,h=te,y=ee,b=ne,S=x,C=oe,w=re,T=se,U=le;return a(),p(`div`,de,[m(ue),g(`div`,fe,[s[16]||=g(`h1`,{class:`page-title`},[g(`i`,{class:`fas fa-credit-card icon-primary`}),g(`span`,null,`支付网关配置`)],-1),m(c,{type:`primary`,onClick:_e},{default:r(()=>[...s[14]||=[g(`i`,{class:`fas fa-plus`},null,-1),_(` 新增配置 `,-1)]]),_:1}),m(c,{onClick:Q},{default:r(()=>[...s[15]||=[g(`i`,{class:`fas fa-sync`},null,-1),_(` 刷新 `,-1)]]),_:1})]),o((a(),p(`div`,E,[K.value?(a(),p(`div`,D,[s[17]||=g(`i`,{class:`fas fa-exclamation-triangle`},null,-1),g(`div`,null,t(K.value),1)])):!G.value&&W.value.length===0?(a(),v(d,{key:1,description:`暂无支付网关配置`,"image-size":60})):l(``,!0),(a(!0),p(u,null,n(W.value,e=>(a(),p(`div`,{key:e.ConfigUUID,class:`pc-card`},[g(`div`,O,[g(`span`,k,t(H[e.Platform]||e.Platform),1),e.ConfigDefault?(a(),v(f,{key:0,type:`primary`,size:`small`},{default:r(()=>[...s[18]||=[_(`默认`,-1)]]),_:1})):l(``,!0),m(f,{type:e.ConfigStatus===1?`success`:`danger`,size:`small`},{default:r(()=>[_(t(e.ConfigStatus===1?`启用`:`停用`),1)]),_:2},1032,[`type`])]),g(`div`,A,[g(`div`,j,[s[19]||=g(`span`,{class:`label`},`AppID`,-1),g(`span`,M,t(e.AppID||`-`),1)]),g(`div`,N,[s[20]||=g(`span`,{class:`label`},`商户号`,-1),g(`span`,P,t(e.MchID||`-`),1)]),g(`div`,F,[s[21]||=g(`span`,{class:`label`},`APIKey`,-1),g(`span`,{class:i([`value`,e.APIKeySet?`secret-set`:`secret-unset`])},t(e.APIKeySet?`已设置 ***`:`未设置`),3)]),g(`div`,I,[s[22]||=g(`span`,{class:`label`},`PrivateKey`,-1),g(`span`,{class:i([`value`,e.PrivateKeySet?`secret-set`:`secret-unset`])},t(e.PrivateKeySet?`已设置 ***`:`未设置`),3)]),g(`div`,L,[s[23]||=g(`span`,{class:`label`},`PublicKey`,-1),g(`span`,{class:i([`value`,e.PublicKeySet?`secret-set`:`secret-unset`])},t(e.PublicKeySet?`已设置 ***`:`未设置`),3)]),e.NotifyURL?(a(),p(`div`,R,[s[24]||=g(`span`,{class:`label`},`回调`,-1),g(`span`,z,t(e.NotifyURL),1)])):l(``,!0)]),g(`div`,B,[m(c,{size:`small`,onClick:t=>ve(e)},{default:r(()=>[...s[25]||=[g(`i`,{class:`fas fa-edit`},null,-1),_(` 编辑 `,-1)]]),_:1},8,[`onClick`]),m(c,{size:`small`,type:`danger`,onClick:t=>be(e.ConfigUUID,e.Platform)},{default:r(()=>[...s[26]||=[g(`i`,{class:`fas fa-trash`},null,-1),_(` 删除 `,-1)]]),_:1},8,[`onClick`])])]))),128))])),[[U,G.value]]),m(T,{modelValue:q.value,"onUpdate:modelValue":s[13]||=e=>q.value=e,title:Y.value?`编辑 - ${H[X.Platform]||X.Platform}`:`新增支付网关配置`,width:`600px`},{footer:r(()=>[m(c,{onClick:s[12]||=e=>q.value=!1},{default:r(()=>[...s[29]||=[_(`取消`,-1)]]),_:1}),m(c,{type:`primary`,loading:Z.value,onClick:ye},{default:r(()=>[...s[30]||=[_(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[m(w,{model:X,"label-position":`top`},{default:r(()=>[m(b,{label:`平台 *`},{default:r(()=>[m(y,{modelValue:X.Platform,"onUpdate:modelValue":s[0]||=e=>X.Platform=e,style:{width:`100%`}},{default:r(()=>[(a(),p(u,null,n(V,e=>m(h,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`modelValue`])]),_:1}),m(b,{label:`AppID`},{default:r(()=>[m(S,{modelValue:X.AppID,"onUpdate:modelValue":s[1]||=e=>X.AppID=e,placeholder:`应用ID`},null,8,[`modelValue`])]),_:1}),m(b,{label:`商户号 MchID`},{default:r(()=>[m(S,{modelValue:X.MchID,"onUpdate:modelValue":s[2]||=e=>X.MchID=e,placeholder:`商户号`},null,8,[`modelValue`])]),_:1}),m(b,{label:`APIKey`},{default:r(()=>[m(S,{modelValue:X.APIKey,"onUpdate:modelValue":s[3]||=e=>X.APIKey=e,type:`password`,"show-password":``,placeholder:`留空保留原值`},null,8,[`modelValue`]),Y.value?(a(),p(`div`,pe,`已设置时留空表示保留原值`)):l(``,!0)]),_:1}),m(b,{label:`PrivateKey`},{default:r(()=>[m(S,{modelValue:X.PrivateKey,"onUpdate:modelValue":s[4]||=e=>X.PrivateKey=e,type:`textarea`,rows:3,placeholder:`留空保留原值`},null,8,[`modelValue`]),Y.value?(a(),p(`div`,me,`已设置时留空表示保留原值`)):l(``,!0)]),_:1}),m(b,{label:`PublicKey`},{default:r(()=>[m(S,{modelValue:X.PublicKey,"onUpdate:modelValue":s[5]||=e=>X.PublicKey=e,type:`textarea`,rows:3,placeholder:`留空保留原值`},null,8,[`modelValue`]),Y.value?(a(),p(`div`,he,`已设置时留空表示保留原值`)):l(``,!0)]),_:1}),m(b,{label:`NotifyURL`},{default:r(()=>[m(S,{modelValue:X.NotifyURL,"onUpdate:modelValue":s[6]||=e=>X.NotifyURL=e,placeholder:`支付回调通知地址`},null,8,[`modelValue`])]),_:1}),m(b,{label:`ReturnURL`},{default:r(()=>[m(S,{modelValue:X.ReturnURL,"onUpdate:modelValue":s[7]||=e=>X.ReturnURL=e,placeholder:`支付完成跳转地址`},null,8,[`modelValue`])]),_:1}),m(b,{label:`CertPath`},{default:r(()=>[m(S,{modelValue:X.CertPath,"onUpdate:modelValue":s[8]||=e=>X.CertPath=e,placeholder:`证书路径(可选)`},null,8,[`modelValue`])]),_:1}),m(b,{label:`CertKeyPath`},{default:r(()=>[m(S,{modelValue:X.CertKeyPath,"onUpdate:modelValue":s[9]||=e=>X.CertKeyPath=e,placeholder:`证书密钥路径(可选)`},null,8,[`modelValue`])]),_:1}),m(b,null,{default:r(()=>[m(C,{modelValue:X.ConfigDefault,"onUpdate:modelValue":s[10]||=e=>X.ConfigDefault=e},{default:r(()=>[...s[27]||=[_(`设为默认网关`,-1)]]),_:1},8,[`modelValue`]),m(C,{modelValue:X.ConfigStatus,"onUpdate:modelValue":s[11]||=e=>X.ConfigStatus=e},{default:r(()=>[...s[28]||=[_(`启用`,-1)]]),_:1},8,[`modelValue`])]),_:1})]),_:1},8,[`model`])]),_:1},8,[`modelValue`,`title`])])}}}),[[`__scopeId`,`data-v-5817813e`]]);export{V as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Products-Dgz6Q-xi.js b/TempLate/GERP/assets/Products-Dgz6Q-xi.js deleted file mode 100644 index c0352216..00000000 --- a/TempLate/GERP/assets/Products-Dgz6Q-xi.js +++ /dev/null @@ -1 +0,0 @@ -import{Br as e,Lr as t,Nn as n,_ as r,an as i,h as a,hn as o,ln as s,mn as c,on as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as u}from"./serverScope-O8Rw8SFk.js";import{r as d}from"./router-CMu0lceh.js";import{t as f}from"./AdminBadge-Z72F8Boy.js";import{t as p}from"./CrudTable-B49nrpUt.js";var m={class:`product-page`},h=r(o({__name:`Products`,setup(r){let o=d(),h=a();u(`产品管理`);let g=i(()=>o.isAdmin),_=i(()=>`scope-banner ${g.value?`admin`:`normal`}`),v=i(()=>g.value?`管理员视图:可查看和管理全公司产品模板,含跨公司特权模式。`:`普通组员视图:可查看可用产品列表。`);function y(e){h.push({path:`/inventory/product-detail`,query:{TemplateUUID:e.TemplateUUID||``}})}return(r,i)=>(n(),s(`div`,m,[c(f),l(`div`,{class:t(_.value)},[l(`i`,{class:t([`fas`,g.value?`fa-shield-alt`:`fa-info-circle`])},null,2),l(`span`,null,e(v.value),1)],2),c(p,{table:`OrderTemplate`,title:`产品管理`,"pk-field":`TemplateUUID`,searchable:``,pageable:``,stretch:``,selectable:g.value,"on-view":y},null,8,[`selectable`])]))}}),[[`__scopeId`,`data-v-2c36b7b7`]]);export{h as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Profile-B8DTMeKY.js b/TempLate/GERP/assets/Profile-B8DTMeKY.js deleted file mode 100644 index 55b33d97..00000000 --- a/TempLate/GERP/assets/Profile-B8DTMeKY.js +++ /dev/null @@ -1 +0,0 @@ -import{Br as e,Jn as t,Nn as n,_ as r,hn as i,mn as a,on as o,pn as s,pr as c,sn as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{n as u,t as d}from"./descriptions-Cq_aE9sg.js";import{i as f,r as p}from"./router-CMu0lceh.js";import{t as m}from"./tag-BSnLMVgs.js";import{t as h}from"./card-Dj_UeWcA.js";/* empty css */import"./css-BEipSTAx.js";import"./css-D-a1H3t1.js";import"./css-CysIl0tz.js";var g={class:`profile`},_=[`src`],v=r(i({__name:`Profile`,setup(r){let i=p(),v=f();return(r,f)=>{let p=u,y=m,b=d,x=h;return n(),l(x,{shadow:`never`},{header:t(()=>[...f[0]||=[o(`span`,null,`个人中心`,-1)]]),default:t(()=>[o(`div`,g,[o(`img`,{src:c(v),alt:`头像`,class:`avatar`},null,8,_),a(b,{column:1,border:``},{default:t(()=>[a(p,{label:`用户名`},{default:t(()=>[s(e(c(i).userInfo?.UserName||`-`),1)]),_:1}),a(p,{label:`显示名`},{default:t(()=>[s(e(c(i).userInfo?.DisplayName||`-`),1)]),_:1}),a(p,{label:`邮箱`},{default:t(()=>[s(e(c(i).userInfo?.Email||`-`),1)]),_:1}),a(p,{label:`当前角色`},{default:t(()=>[s(e(c(i).currentRole||`-`),1)]),_:1}),a(p,{label:`是否管理员`},{default:t(()=>[a(y,{type:c(i).isAdmin?`danger`:`info`},{default:t(()=>[s(e(c(i).isAdmin?`是`:`否`),1)]),_:1},8,[`type`])]),_:1})]),_:1})])]),_:1})}}}),[[`__scopeId`,`data-v-0032e664`]]);export{v as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Role-CUf-lqkA.js b/TempLate/GERP/assets/Role-CUf-lqkA.js deleted file mode 100644 index ed1411f9..00000000 --- a/TempLate/GERP/assets/Role-CUf-lqkA.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./AdminBadge-Z72F8Boy.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`role-page`},u=t(r({__name:`Role`,setup(t){o(`角色管理`);let r=n();function u(e){r.push({path:`/company/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return(t,n)=>(e(),i(`div`,l,[a(s),a(c,{table:`Role`,title:`角色管理`,"pk-field":`RoleUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-fe35ce37`]]);export{u as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/RoleDetail-C4PpwcmI.js b/TempLate/GERP/assets/RoleDetail-C4PpwcmI.js deleted file mode 100644 index a53added..00000000 --- a/TempLate/GERP/assets/RoleDetail-C4PpwcmI.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as ee,Nn as i,_ as a,an as o,cn as s,en as c,hn as l,ir as u,ln as d,m as f,mn as p,nr as m,pn as h,pr as g,sn as _}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as v,i as y,o as b,r as x,u as S}from"./serverScope-O8Rw8SFk.js";import{t as C}from"./date-picker-CM_15T0u.js";import{u as w}from"./use-global-config-D-dPcPvU.js";import{n as T}from"./descriptions-Cq_aE9sg.js";import{r as E,t as D}from"./select-BGsfCDCJ.js";import{n as O,t as k}from"./form-F--u6XQJ.js";import{t as A}from"./alert-BpFV-0dO.js";import{t as te}from"./button-CPx9BSuo.js";import{t as ne}from"./tag-BSnLMVgs.js";import{t as re}from"./card-Dj_UeWcA.js";import{t as ie}from"./dialog-_5VhSQg5.js";import{t as ae}from"./input-number-CiNOxXL6.js";import{t as oe}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{t as j}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as M}from"./form-B2Pzr8Vf.js";import{t as N}from"./DetailPage-m11wfvkM.js";import{t as P}from"./InfoGrid-C1it9Z2Y.js";var F=`RoleUUID`,I=a(l({__name:`RoleDetail`,setup(a){let l=f(),I=u(!1),L=u(null),R=u(``),z=l.query.RoleUUID||``,B={0:`组员`,1:`组长`,2:`其他`},V={0:`全租户`,1:`公司`,2:`部门`},H={0:{text:`禁用`,type:`danger`},1:{text:`启用`,type:`success`}},U=o(()=>!y()||x()),W=o(()=>U.value?`特权模式:显示该角色在所有公司的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function G(e){return e==null||e===``?``:String(e)}function K(e){if(!e)return`-`;let t=String(e),n=new Date(t);if(isNaN(n.getTime()))return t;let r=e=>String(e).padStart(2,`0`);return`${n.getFullYear()}-${r(n.getMonth()+1)}-${r(n.getDate())} ${r(n.getHours())}:${r(n.getMinutes())}:${r(n.getSeconds())}`}function q(e){return Array.isArray(e)?e:e?.list||[]}async function J(){if(!z){R.value=`缺少 RoleUUID 参数,无法加载角色详情。`;return}I.value=!0,R.value=``;try{let e=q(await M.list(`Role`,{RoleUUID:z,pageSize:1})),t=e.find(e=>e.RoleUUID===z)||e[0];if(!t){R.value=`未找到角色数据`;return}L.value=t,v(G(t.RoleName)||`角色详情`)}catch(e){R.value=`加载失败: ${e instanceof Error?e.message:String(e)}`}finally{I.value=!1}}let Y=u(!1),X=u(!1),Z=u([]),Q=m({}),se=o(()=>Z.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==F));async function ce(){if(L.value){try{Z.value.length||(Z.value=await M.getColumns(`Role`))}catch{Z.value=[]}Object.keys(Q).forEach(e=>delete Q[e]),Object.assign(Q,L.value),Y.value=!0}}async function le(){if(L.value){X.value=!0;try{await M.update(`Role`,L.value[F],{...Q}),b.success(`保存成功`),Y.value=!1,await J()}catch{}finally{X.value=!1}}}return e(J),(e,a)=>{let o=ee(`Edit`),l=w,u=te,f=A,m=T,v=ne,y=re,b=S,x=ae,M=D,F=E,q=C,J=oe,Z=O,$=k,ue=ie;return i(),_(N,{title:L.value?.RoleName||`角色详情`,loading:I.value},{actions:r(()=>[p(u,{type:`primary`,disabled:!L.value,onClick:ce},{default:r(()=>[p(l,null,{default:r(()=>[p(o)]),_:1}),a[2]||=h(`编辑 `,-1)]),_:1},8,[`disabled`])]),default:r(()=>[R.value?(i(),_(f,{key:0,type:`error`,title:R.value,"show-icon":``,closable:!1},null,8,[`title`])):s(``,!0),L.value?(i(),_(P,{key:1,title:`基本信息`,columns:2},{default:r(()=>[p(m,{label:`角色名称`},{default:r(()=>[h(t(G(L.value.RoleName)||`-`),1)]),_:1}),p(m,{label:`角色类型`},{default:r(()=>[h(t(B[String(L.value.RoleType)]??`-`),1)]),_:1}),p(m,{label:`状态`},{default:r(()=>[p(v,{type:H[String(L.value.RoleStatus)]?.type||`info`,size:`small`},{default:r(()=>[h(t(H[String(L.value.RoleStatus)]?.text??L.value.RoleStatus),1)]),_:1},8,[`type`])]),_:1}),p(m,{label:`分配范围`},{default:r(()=>[h(t(V[String(L.value.AssignScope)]??`-`),1)]),_:1}),p(m,{label:`角色描述`},{default:r(()=>[h(t(G(L.value.RoleDesc)||`-`),1)]),_:1}),p(m,{label:`创建时间`},{default:r(()=>[h(t(K(L.value.CreateTime)),1)]),_:1})]),_:1})):s(``,!0),L.value?(i(),_(f,{key:2,type:U.value?`warning`:`info`,closable:!1,"show-icon":``,class:`scope-banner`},{default:r(()=>[h(t(W.value),1)]),_:1},8,[`type`])):s(``,!0),L.value?(i(),_(y,{key:3,shadow:`never`},{default:r(()=>[p(j,{table:`RolePermission`,title:`权限列表`,query:{RoleUUID:g(z)},selectable:!0,pageable:!0,"pk-field":`RolePermUUID`},null,8,[`query`])]),_:1})):s(``,!0),L.value?(i(),_(y,{key:4,shadow:`never`},{default:r(()=>[p(j,{table:`UserRole`,title:`关联用户`,query:{RoleUUID:g(z)},selectable:!0,pageable:!0,"pk-field":`UserRoleUUID`},null,8,[`query`])]),_:1})):s(``,!0),p(ue,{modelValue:Y.value,"onUpdate:modelValue":a[1]||=e=>Y.value=e,title:`编辑角色`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[p(u,{onClick:a[0]||=e=>Y.value=!1},{default:r(()=>[...a[3]||=[h(`取消`,-1)]]),_:1}),p(u,{type:`primary`,loading:X.value,onClick:le},{default:r(()=>[...a[4]||=[h(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[p($,{model:Q,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(i(!0),d(c,null,n(se.value,e=>(i(),_(Z,{key:e.field,label:e.title,required:e.required},{default:r(()=>[!e.type||e.type===`text`||e.type===`string`?(i(),_(b,{key:0,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`number`?(i(),_(x,{key:1,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`textarea`?(i(),_(b,{key:2,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`password`?(i(),_(b,{key:3,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,type:`password`,"show-password":``,placeholder:e.placeholder},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):e.type===`select`?(i(),_(F,{key:4,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(i(!0),d(c,null,n(e.options,e=>(i(),_(M,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(i(),_(q,{key:5,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(i(),_(J,{key:6,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`readonly`?(i(),_(b,{key:7,"model-value":String(Q[e.field]??``),readonly:``},null,8,[`model-value`])):(i(),_(b,{key:8,modelValue:Q[e.field],"onUpdate:modelValue":t=>Q[e.field]=t,placeholder:e.placeholder,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}}),[[`__scopeId`,`data-v-fa98a33c`]]);export{I as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/RoleDetail-CoZwf-El.js b/TempLate/GERP/assets/RoleDetail-CoZwf-El.js deleted file mode 100644 index 96122972..00000000 --- a/TempLate/GERP/assets/RoleDetail-CoZwf-El.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,m,mn as h,nr as g,on as _,pn as v,pr as y,sn as b}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as x,o as S,u as C}from"./serverScope-O8Rw8SFk.js";import{t as ee}from"./date-picker-CM_15T0u.js";import{u as w}from"./use-global-config-D-dPcPvU.js";import{n as T}from"./descriptions-Cq_aE9sg.js";import{r as E,t as D}from"./select-BGsfCDCJ.js";import{r as O}from"./router-CMu0lceh.js";import{n as k,t as A}from"./form-F--u6XQJ.js";import{t as j}from"./alert-BpFV-0dO.js";import{t as M}from"./button-CPx9BSuo.js";import{t as N}from"./tag-BSnLMVgs.js";import{t as te}from"./card-Dj_UeWcA.js";import{t as ne}from"./dialog-_5VhSQg5.js";import{t as re}from"./input-number-CiNOxXL6.js";import{t as ie}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{n as ae,t as P}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-B2Pzr8Vf.js";import{t as I}from"./DetailPage-m11wfvkM.js";import{t as L}from"./InfoGrid-C1it9Z2Y.js";var R={class:`perm-hint`},z=`RoleUUID`,B=o(d({__name:`RoleDetail`,setup(o){let d=m(),B=u(),V=O(),H=d.query.RoleUUID||``,U=f(!1),W=f(null),G=f(!1),K=f(!1),q=f([]),J=g({}),oe=s(()=>W.value?.RoleName||`角色详情`),se=s(()=>V.isAdmin?`特权模式:显示该角色在所有公司的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function ce(e){return e===0||e===`0`?`组员`:e===1||e===`1`?`组长`:`-`}function Y(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`warning`}}function X(e){return e===0||e===`0`?{text:`全租户可分发`,type:`success`}:e===1||e===`1`?{text:`指定公司可分发`,type:`primary`}:e===2||e===`2`?{text:`指定部门可分发`,type:`warning`}:{text:`-`,type:`info`}}function Z(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let le=s(()=>q.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==z));async function Q(){if(!H){S.warning(`缺少 RoleUUID 参数,无法加载角色详情`);return}U.value=!0;try{let e=await F.list(`Role`,{[z]:H,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[z]===H)||t[0];if(!n){S.error(`未找到角色数据`);return}W.value=n,x(n.RoleName||`角色详情`)}finally{U.value=!1}}async function $(){try{q.value=await F.getColumns(`Role`)}catch{}}function ue(){W.value&&(Object.keys(J).forEach(e=>delete J[e]),Object.assign(J,W.value),G.value=!0)}async function de(){K.value=!0;try{await F.update(`Role`,J[z],J),S.success(`保存成功`),G.value=!1,await Q()}finally{K.value=!1}}function fe(){if(!H){S.warning(`缺少 RoleUUID`);return}B.push({path:`/system/role-permissions`,query:{RoleUUID:H}})}function pe(e){B.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return e(async()=>{await Promise.all([Q(),$()])}),(e,o)=>{let s=i(`Edit`),u=w,d=M,f=i(`Connection`),m=j,g=T,x=N,S=te,O=i(`InfoFilled`),F=C,z=re,B=D,q=E,Q=ee,$=ie,me=k,he=A,ge=ne;return a(),b(I,{title:oe.value,loading:U.value},{actions:r(()=>[h(d,{type:`primary`,onClick:ue},{default:r(()=>[h(u,null,{default:r(()=>[h(s)]),_:1}),o[2]||=v(`编辑 `,-1)]),_:1}),h(d,{onClick:fe,title:`按权限组勾选分配权限`},{default:r(()=>[h(u,null,{default:r(()=>[h(f)]),_:1}),o[3]||=v(`权限树分配 `,-1)]),_:1})]),default:r(()=>[h(m,{type:y(V).isAdmin?`warning`:`info`,closable:!1,"show-icon":``},{default:r(()=>[v(t(se.value),1)]),_:1},8,[`type`]),h(L,{title:`基本信息`,columns:2},{default:r(()=>[h(g,{label:`角色名称`},{default:r(()=>[v(t(W.value?.RoleName||`-`),1)]),_:1}),h(g,{label:`角色类型`},{default:r(()=>[v(t(ce(W.value?.RoleType)),1)]),_:1}),h(g,{label:`角色状态`},{default:r(()=>[h(x,{type:Y(W.value?.RoleStatus).type,size:`small`},{default:r(()=>[v(t(Y(W.value?.RoleStatus).text),1)]),_:1},8,[`type`])]),_:1}),h(g,{label:`分配范围`},{default:r(()=>[h(x,{type:X(W.value?.AssignScope).type,size:`small`},{default:r(()=>[v(t(X(W.value?.AssignScope).text),1)]),_:1},8,[`type`])]),_:1}),h(g,{label:`角色描述`},{default:r(()=>[v(t(W.value?.RoleDesc||`-`),1)]),_:1}),h(g,{label:`创建时间`},{default:r(()=>[v(t(Z(W.value?.CreateTime)),1)]),_:1})]),_:1}),h(S,{shadow:`never`},{header:r(()=>[...o[4]||=[v(`关联用户`,-1)]]),default:r(()=>[y(H)?(a(),b(P,{key:0,table:`UserRole`,title:`角色用户`,query:{RoleUUID:y(H)},"pk-field":`UserRoleUUID`,selectable:``,pageable:``,"on-view":pe},null,8,[`query`])):c(``,!0)]),_:1}),h(S,{shadow:`never`},{header:r(()=>[...o[5]||=[v(`角色权限`,-1)]]),default:r(()=>[y(H)?(a(),b(P,{key:0,table:`RolePermission`,title:`角色权限`,query:{RoleUUID:y(H)},"pk-field":`RolePermUUID`,selectable:``,pageable:``},null,8,[`query`])):c(``,!0),_(`div`,R,[h(u,null,{default:r(()=>[h(O)]),_:1}),o[6]||=v(` 添加 `,-1),o[7]||=_(`code`,null,`admin:super`,-1),o[8]||=v(` 权限可使该角色成为超级管理员 `,-1)])]),_:1}),h(ge,{modelValue:G.value,"onUpdate:modelValue":o[1]||=e=>G.value=e,title:`编辑角色`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[h(d,{onClick:o[0]||=e=>G.value=!1},{default:r(()=>[...o[9]||=[v(`取消`,-1)]]),_:1}),h(d,{type:`primary`,loading:K.value,onClick:de},{default:r(()=>[...o[10]||=[v(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[h(he,{model:J,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),p(l,null,n(le.value,e=>(a(),b(me,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(a(),b(ae,{key:0,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,config:e.entityPicker,"existing-label":J[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>J[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(a(),b(F,{key:1,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(a(),b(F,{key:2,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(a(),b(z,{key:3,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`select`?(a(),b(q,{key:4,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(a(!0),p(l,null,n(e.options,e=>(a(),b(B,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(a(),b(Q,{key:5,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(a(),b($,{key:6,modelValue:J[e.field],"onUpdate:modelValue":t=>J[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):(a(),b(F,{key:7,"model-value":String(J[e.field]??``),readonly:``},null,8,[`model-value`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}}),[[`__scopeId`,`data-v-f6a835e9`]]);export{B as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/RolePermissions-Ui2y81ee.js b/TempLate/GERP/assets/RolePermissions-Ui2y81ee.js deleted file mode 100644 index 114e185b..00000000 --- a/TempLate/GERP/assets/RolePermissions-Ui2y81ee.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Dn as n,Fn as r,Jn as i,Ln as a,Nn as o,_ as s,an as c,cn as l,en as u,hn as d,ir as f,ln as p,m,mn as h,on as g,pn as _,sn as v,wn as y}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as b,o as x}from"./serverScope-O8Rw8SFk.js";import{u as ee}from"./use-global-config-D-dPcPvU.js";import{r as te,t as S}from"./select-BGsfCDCJ.js";import{g as C,l as w,r as ne,s as re}from"./router-CMu0lceh.js";import{t as T}from"./button-CPx9BSuo.js";import{t as E}from"./tag-BSnLMVgs.js";import{t as D}from"./card-Dj_UeWcA.js";import{t as O}from"./empty-CnQTxkvl.js";import{t as k}from"./tree-DqeBDBpX.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-Dmy6QwIc.js";import{t as A}from"./form-B2Pzr8Vf.js";import{t as ie}from"./DetailPage-m11wfvkM.js";import"./css-D4jab2ni2.js";import"./css-CLuE7SsA.js";var ae={key:0,class:`denied-state`},oe={class:`toolbar-row`},se={class:`toolbar-stat`},ce={class:`toolbar-actions`},le={key:0,class:`empty-state`},ue={class:`perm-row`},de={class:`perm-name`},fe={key:1,class:`perm-desc`},j=s(d({__name:`RolePermissions`,setup(s){let d=m(),j=ne(),M=d.query.RoleUUID||``,N=d.query.CompanyUUID||``,P=f(M),F=f(N),I=f([]),L=f([]),R=f([]),z=f(!1),B=f(!1),V=f(!1),H=f(!1),U=f(new Set),W=f([]),G=f(!1),K=f(0),q=f(null),pe=c(()=>j.isAdmin),J=c(()=>R.value.map((e,t)=>({_nodeKey:`group_${t}`,label:e.Category,children:e.Permissions.map(e=>({_nodeKey:e.PermUUID,label:e.PermName,permCode:e.PermCode,permDesc:e.PermDesc||``,isLeaf:!0}))}))),me=c(()=>R.value.reduce((e,t)=>e+t.Permissions.length,0)),he=c(()=>W.value.length),ge=c(()=>!!P.value&&!!F.value&&!B.value);async function _e(){try{let e=await A.list(`Role`,{pageSize:500});I.value=Array.isArray(e)?e:e?.list||[]}catch{}}async function Y(){try{let e=await A.list(`Company`,{pageSize:500});L.value=Array.isArray(e)?e:e?.list||[]}catch{}}async function X(){let e=P.value,t=F.value;if(!e||!t){R.value=[];return}z.value=!0,H.value=!1;try{let n=await re(`/API/Role/PermissionsTree`,{RoleUUID:e,CompanyUUID:t});R.value=n?.Groups||[];let r=R.value.flatMap(e=>e.Permissions.filter(e=>e.Checked).map(e=>e.PermUUID));U.value=new Set(r),W.value=[...r],K.value++,await y(),Q()}finally{z.value=!1}}function ve(){F.value&&X()}function ye(){P.value&&X()}function Z(){let e=q.value?.getCheckedKeys?.(!0);W.value=e||[],Q()}function Q(){let e=new Set(W.value);H.value=!(e.size===U.value.size&&[...e].every(e=>U.value.has(e)))}function be(){G.value=!0,K.value++,y(()=>Z())}function xe(){G.value=!1,K.value++,y(()=>Z())}function Se(){let e=R.value.flatMap(e=>e.Permissions.map(e=>e.PermUUID));q.value?.setCheckedKeys?.(e),W.value=e,Q()}function Ce(){q.value?.setCheckedKeys?.([]),W.value=[],Q()}async function we(){let e=P.value,t=F.value;if(!e||!t){x.warning(`请先选择角色和公司`);return}B.value=!0;try{let n=await w(`/API/Role/SavePermissions`,{RoleUUID:e,CompanyUUID:t,PermUUIDs:W.value})||{};x.success(`保存成功(新增 ${n.Added||0},移除 ${n.Removed||0},保留 ${n.Kept||0})`),U.value=new Set(W.value),H.value=!1}finally{B.value=!1}}function $(e){H.value&&(e.preventDefault(),e.returnValue=``)}return C((e,t,n)=>{if(!H.value){n();return}window.confirm(`有未保存的权限变更,确定离开?`)?n():n(!1)}),e(async()=>{if(b(`角色权限分配`),!pe.value){V.value=!0;return}await Promise.all([_e(),Y()]),M&&(P.value=M),N&&(F.value=N),M&&N&&await X()}),n(()=>{window.removeEventListener(`beforeunload`,$)}),window.addEventListener(`beforeunload`,$),(e,n)=>{let s=a(`Lock`),c=ee,d=S,f=te,m=T,y=D,b=O,x=E,C=k,w=a(`Select`);return o(),v(ie,{title:`角色权限分配`,loading:z.value},{default:i(()=>[V.value?(o(),p(`div`,ae,[h(c,{class:`denied-icon`},{default:i(()=>[h(s)]),_:1}),n[2]||=g(`div`,{class:`denied-title`},`无权访问`,-1),n[3]||=g(`div`,{class:`denied-desc`},`该页面仅管理员可查看,请切换至管理员角色或联系管理员。`,-1)])):(o(),p(u,{key:1},[h(y,{shadow:`never`,class:`toolbar`},{default:i(()=>[g(`div`,oe,[n[11]||=g(`span`,{class:`toolbar-label`},`角色:`,-1),h(f,{modelValue:P.value,"onUpdate:modelValue":n[0]||=e=>P.value=e,placeholder:`请选择角色`,filterable:``,style:{"min-width":`200px`},onChange:ve},{default:i(()=>[h(d,{label:`请选择角色`,value:``}),(o(!0),p(u,null,r(I.value,e=>(o(),v(d,{key:e.RoleUUID,label:e.RoleName,value:e.RoleUUID},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),n[12]||=g(`span`,{class:`toolbar-label`},`公司:`,-1),h(f,{modelValue:F.value,"onUpdate:modelValue":n[1]||=e=>F.value=e,placeholder:`请选择公司`,filterable:``,style:{"min-width":`200px`},onChange:ye},{default:i(()=>[h(d,{label:`请选择公司`,value:``}),(o(!0),p(u,null,r(L.value,e=>(o(),v(d,{key:e.CompanyUUID,label:e.CompanyName,value:e.CompanyUUID},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`]),g(`div`,se,[n[4]||=_(` 共 `,-1),g(`strong`,null,t(me.value),1),n[5]||=_(` 项权限,已勾选 `,-1),g(`strong`,null,t(he.value),1),n[6]||=_(` 项 `,-1)]),g(`div`,ce,[h(m,{onClick:be},{default:i(()=>[...n[7]||=[_(`全部展开`,-1)]]),_:1}),h(m,{onClick:xe},{default:i(()=>[...n[8]||=[_(`全部折叠`,-1)]]),_:1}),h(m,{onClick:Se},{default:i(()=>[...n[9]||=[_(`全选`,-1)]]),_:1}),h(m,{onClick:Ce},{default:i(()=>[...n[10]||=[_(`清空`,-1)]]),_:1})])])]),_:1}),h(y,{shadow:`never`,class:`tree-wrap`},{default:i(()=>[!P.value||!F.value?(o(),p(`div`,le,[h(c,{class:`empty-icon`},{default:i(()=>[h(s)]),_:1}),n[13]||=g(`div`,null,`请先选择角色和公司`,-1)])):J.value.length===0&&!z.value?(o(),v(b,{key:1,description:`暂无权限定义`})):(o(),v(C,{ref_key:`treeRef`,ref:q,key:K.value,data:J.value,"node-key":`_nodeKey`,"show-checkbox":``,"default-checked-keys":W.value,"default-expand-all":G.value,props:{label:`label`,children:`children`},onCheck:Z},{default:i(({data:e})=>[g(`div`,ue,[g(`span`,de,t(e.label),1),e.permCode?(o(),v(x,{key:0,size:`small`,type:`info`,class:`perm-code`},{default:i(()=>[_(t(e.permCode),1)]),_:2},1024)):l(``,!0),e.permDesc?(o(),p(`span`,fe,t(e.permDesc),1)):l(``,!0)])]),_:1},8,[`data`,`default-checked-keys`,`default-expand-all`]))]),_:1}),h(y,{shadow:`never`,class:`footer`},{default:i(()=>[h(m,{type:`primary`,loading:B.value,disabled:!ge.value,onClick:we},{default:i(()=>[h(c,null,{default:i(()=>[h(w)]),_:1}),n[14]||=_(`保存权限 `,-1)]),_:1},8,[`loading`,`disabled`])]),_:1})],64))]),_:1},8,[`loading`])}}}),[[`__scopeId`,`data-v-fd0b7bce`]]);export{j as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Roles-CJaooumV.js b/TempLate/GERP/assets/Roles-CJaooumV.js deleted file mode 100644 index 745ddbb8..00000000 --- a/TempLate/GERP/assets/Roles-CJaooumV.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./CrudTable-B49nrpUt.js";var c={class:`role-page`},l=t(r({__name:`Roles`,setup(t){o(`角色管理`);let r=n();function l(e){r.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return(t,n)=>(e(),i(`div`,c,[a(s,{table:`Role`,title:`角色管理`,"pk-field":`RoleUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-4d1d8792`]]);export{l as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Settings-az6weoSF.js b/TempLate/GERP/assets/Settings-az6weoSF.js deleted file mode 100644 index f2a73bae..00000000 --- a/TempLate/GERP/assets/Settings-az6weoSF.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Fn as t,Jn as n,Kn as r,Nn as i,_ as a,en as ee,hn as o,ir as s,ln as c,mn as l,nr as u,on as d,pn as f}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as p,o as m}from"./serverScope-O8Rw8SFk.js";import{r as h,t as te}from"./select-BGsfCDCJ.js";import{_ as g,l as _,s as v}from"./router-CMu0lceh.js";import{t as y}from"./button-CPx9BSuo.js";import{t as b}from"./input-number-CiNOxXL6.js";import{t as ne}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import{t as re}from"./app-Bqwt3qVF.js";import"./css-w8-s2aei.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";var ie={class:`settings-page`},ae={class:`settings-section`},oe={class:`settings-item`},se={class:`settings-item-control`},x={class:`settings-item`},S={class:`settings-item-control`},C={class:`settings-section`},w={class:`settings-item`},T={class:`settings-item-control`},E={class:`settings-item`},D={class:`settings-item-control`},O={class:`settings-item`},k={class:`settings-item-control`},A={class:`settings-section`},j={class:`settings-item`},M={class:`settings-item-control`},N={class:`settings-item`},P={class:`settings-item-control`},F={class:`settings-section`},I={class:`settings-item`},L={class:`settings-item-control`},R={class:`settings-item`},z={class:`settings-item-control`},ce={class:`settings-section danger-zone`},B={class:`settings-item`},V={class:`settings-item-control`},H={class:`settings-item`},U={class:`settings-item-control`},W=`GERPSettings`,G=`/API/Settings`,K=a(o({__name:`Settings`,setup(a){p(`系统设置`);let o=re(),K={themeMode:`default`,sidebarExpanded:!0,maxTabs:20,allowDuplicate:!1,confirmClose:!1,desktopNotify:!0,notifySound:!0,animations:!0,preload:!0},le=[{value:`default`,label:`默认主题`},{value:`light`,label:`浅色主题`},{value:`dark`,label:`深色主题`},{value:`green`,label:`绿色主题`},{value:`purple`,label:`紫色主题`},{value:`red`,label:`红色主题`}],q=u({...K}),J=s(!1);async function Y(){let e={...K};try{let t=await v(G);t&&Object.keys(t).length>0&&Object.assign(e,t)}catch{let t=localStorage.getItem(W);if(t)try{Object.assign(e,JSON.parse(t))}catch{}}return e}let X=null;function Z(e=200){J.value&&(X&&clearTimeout(X),X=setTimeout(()=>ue(!0),e))}async function ue(e=!1){localStorage.setItem(W,JSON.stringify(q));try{await _(G,q),e||m.success(`已保存`)}catch{e||m.warning(`保存到服务器失败`)}}function Q(e){let t=document.documentElement;t.style.setProperty(`--TransitionSpeed`,e.animations?`0.2s`:`0s`),t.style.setProperty(`--AnimationDuration`,e.animations?`0.3s`:`0s`),t.classList.toggle(`GERPNoAnimations`,!e.animations),o.sidebarCollapsed===e.sidebarExpanded&&(o.sidebarCollapsed=!e.sidebarExpanded),$(e.themeMode)}function $(e){if(e===`light`||e===`dark`){o.setTheme(e);return}e==="default"&&o.setTheme(`light`)}function de(e){$(e),Z(300)}function fe(e){o.sidebarCollapsed=!e,Z(200)}function pe(e){let t=document.documentElement;t.style.setProperty(`--TransitionSpeed`,e?`0.2s`:`0s`),t.style.setProperty(`--AnimationDuration`,e?`0.3s`:`0s`),t.classList.toggle(`GERPNoAnimations`,!e),Z(200)}async function me(){try{await g.confirm(`确定要清除所有缓存吗?`,`清除缓存`,{type:`warning`,confirmButtonText:`确定`,cancelButtonText:`取消`})}catch{return}localStorage.removeItem(W);try{await _(G,{})}catch{}let e=await Y();Object.assign(q,e),Q(q),m.success(`缓存已清除`)}async function he(){try{await g.confirm(`确定要重置所有设置为默认值吗?`,`重置设置`,{type:`error`,confirmButtonText:`确定重置`,cancelButtonText:`取消`})}catch{return}Object.assign(q,K),localStorage.setItem(W,JSON.stringify(q));try{await _(G,q)}catch{}$(`default`),Q(q),m.success(`设置已重置`)}return r(()=>[q.maxTabs,q.allowDuplicate,q.confirmClose,q.desktopNotify,q.notifySound,q.preload],()=>Z(200)),e(async()=>{let e=await Y();Object.assign(q,e),Q(q),J.value=!0}),(e,r)=>{let a=te,o=h,s=ne,u=b,p=y;return i(),c(`div`,ie,[r[24]||=d(`div`,{class:`settings-header`},[d(`h1`,{class:`settings-title`},[d(`i`,{class:`fas fa-cog icon-primary`}),d(`span`,null,`系统设置`)]),d(`p`,{class:`settings-desc`},`管理系统外观、行为和功能配置`)],-1),d(`div`,ae,[r[8]||=d(`h2`,{class:`settings-section-title`},`外观设置`,-1),d(`div`,oe,[r[6]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`主题模式`),d(`div`,{class:`settings-item-desc`},`选择系统的主题风格`)],-1),d(`div`,se,[l(o,{"model-value":q.themeMode,style:{width:`160px`},"onUpdate:modelValue":de},{default:n(()=>[(i(),c(ee,null,t(le,e=>l(a,{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`])),64))]),_:1},8,[`model-value`])])]),d(`div`,x,[r[7]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`侧边栏默认展开`),d(`div`,{class:`settings-item-desc`},`启动时是否默认展开侧边栏`)],-1),d(`div`,S,[l(s,{"model-value":q.sidebarExpanded,"onUpdate:modelValue":fe},null,8,[`model-value`])])])]),d(`div`,C,[r[12]||=d(`h2`,{class:`settings-section-title`},`标签页设置`,-1),d(`div`,w,[r[9]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`最大标签页数量`),d(`div`,{class:`settings-item-desc`},`超过数量时自动关闭最早的标签页`)],-1),d(`div`,T,[l(u,{modelValue:q.maxTabs,"onUpdate:modelValue":r[0]||=e=>q.maxTabs=e,min:5,max:50,step:1},null,8,[`modelValue`])])]),d(`div`,E,[r[10]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`允许重复标签页`),d(`div`,{class:`settings-item-desc`},`是否允许打开相同页面的多个标签页`)],-1),d(`div`,D,[l(s,{modelValue:q.allowDuplicate,"onUpdate:modelValue":r[1]||=e=>q.allowDuplicate=e},null,8,[`modelValue`])])]),d(`div`,O,[r[11]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`关闭标签页时确认`),d(`div`,{class:`settings-item-desc`},`关闭标签页前是否弹出确认对话框`)],-1),d(`div`,k,[l(s,{modelValue:q.confirmClose,"onUpdate:modelValue":r[2]||=e=>q.confirmClose=e},null,8,[`modelValue`])])])]),d(`div`,A,[r[15]||=d(`h2`,{class:`settings-section-title`},`通知设置`,-1),d(`div`,j,[r[13]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`启用桌面通知`),d(`div`,{class:`settings-item-desc`},`接收系统桌面通知推送`)],-1),d(`div`,M,[l(s,{modelValue:q.desktopNotify,"onUpdate:modelValue":r[3]||=e=>q.desktopNotify=e},null,8,[`modelValue`])])]),d(`div`,N,[r[14]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`通知声音`),d(`div`,{class:`settings-item-desc`},`收到通知时播放提示音`)],-1),d(`div`,P,[l(s,{modelValue:q.notifySound,"onUpdate:modelValue":r[4]||=e=>q.notifySound=e},null,8,[`modelValue`])])])]),d(`div`,F,[r[18]||=d(`h2`,{class:`settings-section-title`},`性能设置`,-1),d(`div`,I,[r[16]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`动画效果`),d(`div`,{class:`settings-item-desc`},`启用界面过渡动画效果`)],-1),d(`div`,L,[l(s,{"model-value":q.animations,"onUpdate:modelValue":pe},null,8,[`model-value`])])]),d(`div`,R,[r[17]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`预加载页面`),d(`div`,{class:`settings-item-desc`},`预加载常用页面以提升响应速度`)],-1),d(`div`,z,[l(s,{modelValue:q.preload,"onUpdate:modelValue":r[5]||=e=>q.preload=e},null,8,[`modelValue`])])])]),d(`div`,ce,[r[23]||=d(`h2`,{class:`settings-section-title`},`危险操作`,-1),d(`div`,B,[r[20]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`清除缓存`),d(`div`,{class:`settings-item-desc`},`清除所有本地存储的设置和缓存数据`)],-1),d(`div`,V,[l(p,{onClick:me},{default:n(()=>[...r[19]||=[f(`清除缓存`,-1)]]),_:1})])]),d(`div`,H,[r[22]||=d(`div`,{class:`settings-item-info`},[d(`div`,{class:`settings-item-title`},`重置所有设置`),d(`div`,{class:`settings-item-desc`},`将所有设置恢复为默认值`)],-1),d(`div`,U,[l(p,{type:`danger`,onClick:he},{default:n(()=>[...r[21]||=[f(`重置设置`,-1)]]),_:1})])])])])}}}),[[`__scopeId`,`data-v-110fdfa0`]]);export{K as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Tenant-CRSIX85t.js b/TempLate/GERP/assets/Tenant-CRSIX85t.js deleted file mode 100644 index 1676b2ca..00000000 --- a/TempLate/GERP/assets/Tenant-CRSIX85t.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./AdminBadge-Z72F8Boy.js";import{t as c}from"./CrudTable-B49nrpUt.js";var l={class:`tenant-page`},u=t(r({__name:`Tenant`,setup(t){o(`租户管理`);let r=n();function u(e){r.push({path:`/company/tenant-detail`,query:{TenantUUID:e.TenantUUID||``}})}return(t,n)=>(e(),i(`div`,l,[a(s),a(c,{table:`Tenant`,title:`租户管理`,"pk-field":`TenantUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":u})]))}}),[[`__scopeId`,`data-v-4b7a75c4`]]);export{u as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/TenantCreate-CsrbEqrJ.js b/TempLate/GERP/assets/TenantCreate-CsrbEqrJ.js deleted file mode 100644 index 24574704..00000000 --- a/TempLate/GERP/assets/TenantCreate-CsrbEqrJ.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Jn as t,Nn as n,_ as r,h as i,hn as a,ir as o,ln as s,mn as c,nr as l,on as u,pn as d}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as f,o as p,u as m}from"./serverScope-O8Rw8SFk.js";import{t as h}from"./date-picker-CM_15T0u.js";import{l as g}from"./router-CMu0lceh.js";import{n as _,t as v}from"./form-F--u6XQJ.js";import{t as y}from"./button-CPx9BSuo.js";/* empty css */import"./css-DsD2Typt.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-ByqxgOA-.js";var b={class:`tenant-create-page`},x={class:`tenant-create-card`},S={key:0,class:`form-section`},C={class:`card-actions`},w={key:1,class:`success-section`},T={class:`success-actions`},E=r(a({__name:`TenantCreate`,setup(r){let a=i(),E=o(),D=l({TenantName:``,TenantExpireTime:``,ReviewRemark:``}),O={TenantName:[{required:!0,message:`请输入租户名称`,trigger:`blur`}],TenantExpireTime:[{required:!0,message:`请选择有效期`,trigger:`change`}]},k=o(!1),A=o(!1);async function j(){if(E.value){try{await E.value.validate()}catch{return}k.value=!0;try{await g(`/API/Tenant/Apply`,{TenantName:D.TenantName.trim(),TenantExpireTime:D.TenantExpireTime,ReviewRemark:D.ReviewRemark.trim()}),A.value=!0,p.success(`申请已提交`)}catch{}finally{k.value=!1}}}function M(){A.value=!1,D.TenantName=``,D.TenantExpireTime=``,D.ReviewRemark=``,E.value?.clearValidate()}function N(){a.back()}return e(()=>{f(`租户入驻申请`)}),(e,r)=>{let i=m,a=_,o=h,l=v,f=y;return n(),s(`div`,b,[u(`div`,x,[A.value?(n(),s(`div`,w,[r[9]||=u(`i`,{class:`fas fa-check-circle success-icon`},null,-1),r[10]||=u(`h3`,null,`申请已提交`,-1),r[11]||=u(`p`,null,`租户入驻申请已提交,等待审核通过后激活。`,-1),u(`div`,T,[c(f,{type:`primary`,onClick:M},{default:t(()=>[...r[7]||=[d(`继续申请`,-1)]]),_:1}),c(f,{onClick:N},{default:t(()=>[...r[8]||=[d(`返回`,-1)]]),_:1})])])):(n(),s(`div`,S,[r[5]||=u(`div`,{class:`card-title`},[u(`i`,{class:`fas fa-key icon-primary`}),u(`span`,null,`租户入驻申请`)],-1),r[6]||=u(`div`,{class:`card-desc`},`提交租户入驻申请,等待超管或审核员审核通过后激活。`,-1),c(l,{ref_key:`formRef`,ref:E,model:D,rules:O,"label-position":`top`,class:`tenant-form`},{default:t(()=>[c(a,{label:`租户名称`,prop:`TenantName`},{default:t(()=>[c(i,{modelValue:D.TenantName,"onUpdate:modelValue":r[0]||=e=>D.TenantName=e,placeholder:`请输入租户名称`},null,8,[`modelValue`])]),_:1}),c(a,{label:`有效期`,prop:`TenantExpireTime`},{default:t(()=>[c(o,{modelValue:D.TenantExpireTime,"onUpdate:modelValue":r[1]||=e=>D.TenantExpireTime=e,type:`datetime`,format:`YYYY-MM-DD HH:mm:ss`,"value-format":`YYYY-MM-DD HH:mm:ss`,placeholder:`请选择有效期`,style:{width:`100%`}},null,8,[`modelValue`])]),_:1}),c(a,{label:`申请说明`},{default:t(()=>[c(i,{modelValue:D.ReviewRemark,"onUpdate:modelValue":r[2]||=e=>D.ReviewRemark=e,type:`textarea`,rows:3,placeholder:`可选,填写申请理由或备注`},null,8,[`modelValue`])]),_:1})]),_:1},8,[`model`]),u(`div`,C,[c(f,{onClick:N},{default:t(()=>[...r[3]||=[d(`取消`,-1)]]),_:1}),c(f,{type:`primary`,loading:k.value,onClick:j},{default:t(()=>[...r[4]||=[d(`提交申请`,-1)]]),_:1},8,[`loading`])])]))])])}}}),[[`__scopeId`,`data-v-1b563c9c`]]);export{E as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/TenantDetail-CHvvHAc4.js b/TempLate/GERP/assets/TenantDetail-CHvvHAc4.js deleted file mode 100644 index 5eae2ed9..00000000 --- a/TempLate/GERP/assets/TenantDetail-CHvvHAc4.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as ee,Nn as i,an as a,cn as o,en as s,h as c,hn as l,ir as u,ln as d,m as f,mn as p,nr as m,pn as h,pr as g,sn as _}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as v,o as y,u as b}from"./serverScope-O8Rw8SFk.js";import{t as x}from"./date-picker-CM_15T0u.js";import{u as S}from"./use-global-config-D-dPcPvU.js";import{n as C}from"./descriptions-Cq_aE9sg.js";import{r as w,t as te}from"./select-BGsfCDCJ.js";import{n as T,t as ne}from"./form-F--u6XQJ.js";import{t as E}from"./button-CPx9BSuo.js";import{t as D}from"./tag-BSnLMVgs.js";import{t as O}from"./card-Dj_UeWcA.js";import{t as k}from"./dialog-_5VhSQg5.js";import{t as A}from"./input-number-CiNOxXL6.js";import{t as j}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as M,t as N}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as P}from"./form-B2Pzr8Vf.js";import{t as F}from"./DetailPage-m11wfvkM.js";import{t as I}from"./InfoGrid-C1it9Z2Y.js";var L=`TenantUUID`,R=l({__name:`TenantDetail`,setup(l){let R=f(),z=c(),B=R.query.TenantUUID||``,V=u(!1),H=u(null),U=u(!1),W=u(!1),G=u([]),K=m({}),q=a(()=>H.value?.TenantName||`租户详情`);function J(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`info`}}function Y(e){return e===0||e===`0`?{text:`待审核`,type:`warning`}:e===1||e===`1`?{text:`已通过`,type:`success`}:e===2||e===`2`?{text:`已拒绝`,type:`danger`}:{text:String(e??`-`),type:`info`}}function X(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let Z=a(()=>G.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function Q(){if(!B){y.warning(`缺少 TenantUUID 参数,无法加载租户详情`);return}V.value=!0;try{let e=await P.list(`Tenant`,{[L]:B,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[L]===B)||t[0];if(!n){y.error(`未找到租户数据`);return}H.value=n,v(n.TenantName||`租户详情`)}finally{V.value=!1}}async function $(){try{G.value=await P.getColumns(`Tenant`)}catch{}}function re(){H.value&&(Object.keys(K).forEach(e=>delete K[e]),Object.assign(K,H.value),U.value=!0)}async function ie(){W.value=!0;try{await P.update(`Tenant`,K[L],K),y.success(`保存成功`),U.value=!1,await Q()}finally{W.value=!1}}function ae(e){z.push({path:`/company/company-detail`,query:{CompanyUUID:e.CompanyUUID||``}})}return e(async()=>{await Promise.all([Q(),$()])}),(e,a)=>{let c=ee(`Edit`),l=S,u=E,f=C,m=D,v=O,y=b,P=A,L=te,R=w,z=x,G=j,Q=T,$=ne,oe=k;return i(),_(F,{title:q.value,loading:V.value},{actions:r(()=>[p(u,{type:`primary`,onClick:re},{default:r(()=>[p(l,null,{default:r(()=>[p(c)]),_:1}),a[2]||=h(`编辑 `,-1)]),_:1})]),default:r(()=>[p(I,{title:`基本信息`,columns:2},{default:r(()=>[p(f,{label:`租户名称`},{default:r(()=>[h(t(H.value?.TenantName||`-`),1)]),_:1}),p(f,{label:`租户状态`},{default:r(()=>[p(m,{type:J(H.value?.TenantStatus).type,size:`small`},{default:r(()=>[h(t(J(H.value?.TenantStatus).text),1)]),_:1},8,[`type`])]),_:1}),p(f,{label:`到期时间`},{default:r(()=>[h(t(X(H.value?.TenantExpireTime)),1)]),_:1}),p(f,{label:`创建时间`},{default:r(()=>[h(t(X(H.value?.CreateTime)),1)]),_:1})]),_:1}),p(I,{title:`审核信息`,columns:2},{default:r(()=>[p(f,{label:`审核状态`},{default:r(()=>[p(m,{type:Y(H.value?.ReviewStatus).type,size:`small`},{default:r(()=>[h(t(Y(H.value?.ReviewStatus).text),1)]),_:1},8,[`type`])]),_:1}),p(f,{label:`审核时间`},{default:r(()=>[h(t(X(H.value?.ReviewTime)),1)]),_:1}),p(f,{label:`审核备注`},{default:r(()=>[h(t(H.value?.ReviewRemark||`-`),1)]),_:1})]),_:1}),p(v,{shadow:`never`},{header:r(()=>[...a[3]||=[h(`关联公司`,-1)]]),default:r(()=>[g(B)?(i(),_(N,{key:0,table:`Company`,title:`租户公司`,query:{TenantUUID:g(B)},"pk-field":`CompanyUUID`,selectable:``,pageable:``,"on-view":ae},null,8,[`query`])):o(``,!0)]),_:1}),p(oe,{modelValue:U.value,"onUpdate:modelValue":a[1]||=e=>U.value=e,title:`编辑租户`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[p(u,{onClick:a[0]||=e=>U.value=!1},{default:r(()=>[...a[4]||=[h(`取消`,-1)]]),_:1}),p(u,{type:`primary`,loading:W.value,onClick:ie},{default:r(()=>[...a[5]||=[h(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[p($,{model:K,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(i(!0),d(s,null,n(Z.value,e=>(i(),_(Q,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(i(),_(M,{key:0,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,config:e.entityPicker,"existing-label":K[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>K[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(i(),_(y,{key:1,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(i(),_(y,{key:2,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(i(),_(P,{key:3,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`select`?(i(),_(R,{key:4,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(i(!0),d(s,null,n(e.options,e=>(i(),_(L,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(i(),_(z,{key:5,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(i(),_(G,{key:6,modelValue:K[e.field],"onUpdate:modelValue":t=>K[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):(i(),_(y,{key:7,"model-value":String(K[e.field]??``),readonly:``},null,8,[`model-value`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}});export{R as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/TenantReview-DQeJSqcy.js b/TempLate/GERP/assets/TenantReview-DQeJSqcy.js deleted file mode 100644 index f860e54d..00000000 --- a/TempLate/GERP/assets/TenantReview-DQeJSqcy.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Nn as i,Yn as a,_ as o,cn as s,en as c,hn as l,ir as u,ln as d,mn as f,on as p,pn as m,sn as h}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as g,o as _,u as v}from"./serverScope-O8Rw8SFk.js";import{_ as y,l as b,s as x}from"./router-CMu0lceh.js";import{t as S}from"./button-CPx9BSuo.js";import{t as C}from"./dialog-_5VhSQg5.js";import{t as w}from"./empty-CnQTxkvl.js";import{t as T}from"./directive-CY41a6pJ.js";/* empty css */import"./css-DsD2Typt.js";import"./css-Cy-4mdDD.js";import"./css-DmmbJMxg.js";import"./css-DMOjom7l.js";import"./css-D4jab2ni2.js";var E={class:`tenant-review-page`},D={class:`review-header`},O={class:`review-container`},k={key:0,class:`error-state`},A={key:2,class:`review-list`},j={class:`info`},M={class:`name`},N={class:`meta`},P={key:0,class:`remark`},F={class:`actions`},I={class:`reject-target`},L=o(l({__name:`TenantReview`,setup(o){let l=u([]),L=u(!1),R=u(``),z=u(!1),B=u(``),V=u(``),H=u(``),U=u(!1);function W(e){return e?e.replace(`T`,` `).substring(0,19):`-`}async function G(){L.value=!0,R.value=``;try{let e=await x(`/API/Tenant/Pending`);l.value=Array.isArray(e)?e:[]}catch(e){l.value=[],R.value=e instanceof Error?e.message:`加载失败`}finally{L.value=!1}}async function K(e){try{await y.confirm(`确认批准该租户入驻申请?`,`提示`,{type:`warning`,confirmButtonText:`确认批准`,cancelButtonText:`取消`})}catch{return}try{await b(`/API/Tenant/Approve/${e}`),_.success(`审核通过`),G()}catch{}}function q(e,t){B.value=e,V.value=t,H.value=``,z.value=!0}async function J(){if(!H.value.trim()){_.warning(`请输入拒绝理由`);return}U.value=!0;try{await b(`/API/Tenant/Reject/${B.value}`,{ReviewRemark:H.value.trim()}),_.success(`已拒绝申请`),z.value=!1,G()}catch{}finally{U.value=!1}}return e(()=>{g(`租户审核工作台`),G()}),(e,o)=>{let u=S,g=w,_=v,y=C,b=T;return i(),d(`div`,E,[p(`div`,D,[o[4]||=p(`h1`,{class:`page-title`},[p(`i`,{class:`fas fa-clipboard-check icon-primary`}),p(`span`,null,`租户审核工作台`)],-1),f(u,{onClick:G},{default:r(()=>[...o[3]||=[p(`i`,{class:`fas fa-sync`},null,-1),m(` 刷新 `,-1)]]),_:1})]),a((i(),d(`div`,O,[R.value?(i(),d(`div`,k,[o[5]||=p(`i`,{class:`fas fa-exclamation-triangle`},null,-1),p(`div`,null,t(R.value),1)])):!L.value&&l.value.length===0?(i(),h(g,{key:1,description:`暂无待审核的租户申请`,"image-size":60})):(i(),d(`div`,A,[(i(!0),d(c,null,n(l.value,e=>(i(),d(`div`,{key:e.TenantUUID,class:`review-card`},[p(`div`,j,[p(`div`,M,t(e.TenantName),1),p(`div`,N,[p(`span`,null,[o[6]||=p(`i`,{class:`fas fa-calendar`},null,-1),m(` 有效期: `+t(W(e.TenantExpireTime)),1)]),p(`span`,null,[o[7]||=p(`i`,{class:`fas fa-clock`},null,-1),m(` 申请时间: `+t(W(e.CreateTime)),1)])]),e.ReviewRemark?(i(),d(`div`,P,[o[8]||=p(`i`,{class:`fas fa-comment`},null,-1),m(` `+t(e.ReviewRemark),1)])):s(``,!0)]),p(`div`,F,[f(u,{type:`primary`,onClick:t=>K(e.TenantUUID)},{default:r(()=>[...o[9]||=[p(`i`,{class:`fas fa-check`},null,-1),m(` 批准 `,-1)]]),_:1},8,[`onClick`]),f(u,{type:`danger`,onClick:t=>q(e.TenantUUID,e.TenantName)},{default:r(()=>[...o[10]||=[p(`i`,{class:`fas fa-times`},null,-1),m(` 拒绝 `,-1)]]),_:1},8,[`onClick`])])]))),128))]))])),[[b,L.value]]),f(y,{modelValue:z.value,"onUpdate:modelValue":o[2]||=e=>z.value=e,title:`拒绝入驻申请`,width:`420px`},{footer:r(()=>[f(u,{onClick:o[1]||=e=>z.value=!1},{default:r(()=>[...o[12]||=[m(`取消`,-1)]]),_:1}),f(u,{type:`danger`,loading:U.value,onClick:J},{default:r(()=>[...o[13]||=[m(`确认拒绝`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[p(`p`,I,[o[11]||=m(`租户:`,-1),p(`span`,null,t(V.value),1)]),f(_,{modelValue:H.value,"onUpdate:modelValue":o[0]||=e=>H.value=e,type:`textarea`,rows:4,placeholder:`请输入拒绝理由`},null,8,[`modelValue`])]),_:1},8,[`modelValue`])])}}}),[[`__scopeId`,`data-v-2b23f899`]]);export{L as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/UserDetail-DSBYMFBg.js b/TempLate/GERP/assets/UserDetail-DSBYMFBg.js deleted file mode 100644 index bd33c48a..00000000 --- a/TempLate/GERP/assets/UserDetail-DSBYMFBg.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,_ as o,an as s,cn as c,en as l,h as u,hn as d,ir as f,ln as p,m,mn as h,nr as g,on as ee,pn as _,pr as v,sn as y}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as b,o as x,u as S}from"./serverScope-O8Rw8SFk.js";import{t as C}from"./date-picker-CM_15T0u.js";import{u as w}from"./use-global-config-D-dPcPvU.js";import{n as te}from"./descriptions-Cq_aE9sg.js";import{r as ne,t as re}from"./select-BGsfCDCJ.js";import{r as T,s as E}from"./router-CMu0lceh.js";import{n as D,t as ie}from"./form-F--u6XQJ.js";import{t as O}from"./alert-BpFV-0dO.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./tag-BSnLMVgs.js";import{t as j}from"./card-Dj_UeWcA.js";import{t as M}from"./dialog-_5VhSQg5.js";import{t as N}from"./input-number-CiNOxXL6.js";import{t as ae}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-BEipSTAx.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./AdminBadge-Z72F8Boy.js";import"./css-BLJI5-W_.js";import{n as oe,t as P}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as F}from"./form-B2Pzr8Vf.js";import{t as se}from"./DetailPage-m11wfvkM.js";import{t as I}from"./InfoGrid-C1it9Z2Y.js";var L=`UserUUID`,R=o(d({__name:`UserDetail`,setup(o){let d=m(),R=u(),z=T(),B=d.query.UserUUID||``,V=f(!1),H=f(null),U=f(null),W=f(!1),G=f(!1),K=f([]),q=g({}),ce=s(()=>H.value?.UserName||`用户详情`),le=s(()=>z.isAdmin?`特权模式:显示该用户在所有公司、所有部门的关联记录(无公司隔离)`:`仅显示当前公司数据。如需查看所有公司记录,需管理员特权。`);function ue(e){return e===1||e===`1`?`男`:e===0||e===`0`?`女`:`-`}function J(e){return e?`是`:`否`}function Y(e){return e===1||e===`1`?{text:`启用`,type:`success`}:e===0||e===`0`?{text:`禁用`,type:`danger`}:{text:String(e??`-`),type:`warning`}}function X(e){if(!e)return`-`;let t=new Date(e);if(isNaN(t.getTime()))return String(e);let n=e=>String(e).padStart(2,`0`);return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())} ${n(t.getHours())}:${n(t.getMinutes())}`}let de=s(()=>K.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==L));async function Z(){if(!B){x.warning(`缺少 UserUUID 参数,无法加载用户详情`);return}V.value=!0;try{let e=await F.list(`User`,{[L]:B,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[L]===B)||t[0];if(!n){x.error(`未找到用户数据`);return}H.value=n,b(n.UserName||`用户详情`)}finally{V.value=!1}}async function Q(){if(B)try{U.value=await E(`/API/SiteUserManagement/GetUser2FAInfo`,{UserUUID:B})}catch{U.value=null}}async function $(){try{K.value=await F.getColumns(`User`)}catch{}}function fe(){H.value&&(Object.keys(q).forEach(e=>delete q[e]),Object.assign(q,H.value),W.value=!0)}async function pe(){G.value=!0;try{await F.update(`User`,q[L],q),x.success(`保存成功`),W.value=!1,await Z()}finally{G.value=!1}}function me(e){R.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}function he(e){R.push({path:`/company/department-detail`,query:{DeptUUID:e.DeptUUID||``}})}return e(async()=>{await Promise.all([Z(),$()]),Q()}),(e,o)=>{let s=i(`Edit`),u=w,d=k,f=O,m=te,g=A,b=j,x=S,T=N,E=re,F=ne,L=C,R=ae,K=D,Z=ie,Q=M;return a(),y(se,{title:ce.value,loading:V.value},{actions:r(()=>[h(d,{type:`primary`,onClick:fe},{default:r(()=>[h(u,null,{default:r(()=>[h(s)]),_:1}),o[2]||=_(`编辑 `,-1)]),_:1})]),default:r(()=>[h(f,{type:v(z).isAdmin?`warning`:`info`,closable:!1,"show-icon":``},{default:r(()=>[_(t(le.value),1)]),_:1},8,[`type`]),h(I,{title:`基本信息`,columns:2},{default:r(()=>[h(m,{label:`用户名`},{default:r(()=>[_(t(H.value?.UserName||`-`),1)]),_:1}),h(m,{label:`邮箱`},{default:r(()=>[_(t(H.value?.UserEmail||`-`),1)]),_:1}),h(m,{label:`电话`},{default:r(()=>[_(t(H.value?.UserTele||`-`),1)]),_:1}),h(m,{label:`性别`},{default:r(()=>[_(t(ue(H.value?.UserGender)),1)]),_:1}),h(m,{label:`账号状态`},{default:r(()=>[h(g,{type:Y(H.value?.UserAccountLicense).type,size:`small`},{default:r(()=>[_(t(Y(H.value?.UserAccountLicense).text),1)]),_:1},8,[`type`])]),_:1}),h(m,{label:`是否员工`},{default:r(()=>[_(t(J(H.value?.IsStaff)),1)]),_:1}),h(m,{label:`是否超级用户`},{default:r(()=>[_(t(J(H.value?.IsSuperuser)),1)]),_:1}),h(m,{label:`创建时间`},{default:r(()=>[_(t(X(H.value?.UserCreateTime)),1)]),_:1}),h(m,{label:`最后登录`},{default:r(()=>[_(t(X(H.value?.UserLastLoginDate)),1)]),_:1})]),_:1}),h(I,{title:`双因素认证 (2FA)`,columns:2},{default:r(()=>[h(m,{label:`2FA 状态`},{default:r(()=>[U.value?(a(),y(g,{key:0,type:`success`,size:`small`},{default:r(()=>[...o[3]||=[_(`已加载`,-1)]]),_:1})):(a(),y(g,{key:1,type:`info`,size:`small`},{default:r(()=>[...o[4]||=[_(`未启用 / 未加载`,-1)]]),_:1}))]),_:1}),h(m,{label:`说明`},{default:r(()=>[...o[5]||=[ee(`span`,{style:{color:`#909399`,"font-size":`12px`}},`2FA 详情字段待 GetUser2FAInfo 契约确认后接入`,-1)]]),_:1})]),_:1}),h(b,{shadow:`never`},{header:r(()=>[...o[6]||=[_(`角色与组织`,-1)]]),default:r(()=>[v(B)?(a(),y(P,{key:0,table:`UserRole`,title:`用户角色`,query:{UserUUID:v(B)},"pk-field":`UserRoleUUID`,selectable:``,pageable:``,"on-view":me},null,8,[`query`])):c(``,!0)]),_:1}),h(b,{shadow:`never`},{header:r(()=>[...o[7]||=[_(`部门关联`,-1)]]),default:r(()=>[v(B)?(a(),y(P,{key:0,table:`UserDept`,title:`用户部门`,query:{UserUUID:v(B)},"pk-field":`UserDeptUUID`,selectable:``,pageable:``,"on-view":he},null,8,[`query`])):c(``,!0)]),_:1}),h(Q,{modelValue:W.value,"onUpdate:modelValue":o[1]||=e=>W.value=e,title:`编辑用户`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[h(d,{onClick:o[0]||=e=>W.value=!1},{default:r(()=>[...o[8]||=[_(`取消`,-1)]]),_:1}),h(d,{type:`primary`,loading:G.value,onClick:pe},{default:r(()=>[...o[9]||=[_(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[h(Z,{model:q,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),p(l,null,n(de.value,e=>(a(),y(K,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(a(),y(oe,{key:0,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,config:e.entityPicker,"existing-label":q[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>q[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(a(),y(x,{key:1,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(a(),y(x,{key:2,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(a(),y(T,{key:3,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`select`?(a(),y(F,{key:4,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(a(!0),p(l,null,n(e.options,e=>(a(),y(E,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(a(),y(L,{key:5,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(a(),y(R,{key:6,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):e.type===`password`?(a(),y(x,{key:7,modelValue:q[e.field],"onUpdate:modelValue":t=>q[e.field]=t,type:`password`,"show-password":``,placeholder:e.placeholder},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(a(),y(x,{key:8,"model-value":String(q[e.field]??``),readonly:``},null,8,[`model-value`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}}),[[`__scopeId`,`data-v-7a748f58`]]);export{R as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Users-DnduOYy3.js b/TempLate/GERP/assets/Users-DnduOYy3.js deleted file mode 100644 index 0e83f0ec..00000000 --- a/TempLate/GERP/assets/Users-DnduOYy3.js +++ /dev/null @@ -1 +0,0 @@ -import{Br as e,Lr as t,Nn as n,_ as r,an as i,h as a,hn as o,ln as s,mn as c,on as l}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as u}from"./serverScope-O8Rw8SFk.js";import{r as d}from"./router-CMu0lceh.js";import{t as f}from"./AdminBadge-Z72F8Boy.js";import{t as p}from"./CrudTable-B49nrpUt.js";var m={class:`user-page`},h=r(o({__name:`Users`,setup(r){let o=d(),h=a();u(`用户管理`);let g=i(()=>o.isAdmin?`admin`:`member`),_=i(()=>{switch(g.value){case`admin`:return`管理员视图:可查看和管理全公司用户,含跨公司特权模式。`;default:return`普通组员视图:仅可查看和编辑自己的资料,无法查看他人数据。`}}),v=i(()=>`user-scope-banner ${g.value}`),y=i(()=>g.value===`member`);function b(e){h.push({path:`/system/user-detail`,query:{UserUUID:e.UserUUID||``}})}return(r,i)=>(n(),s(`div`,m,[c(f),l(`div`,{class:t(v.value)},[l(`i`,{class:t([`fas`,y.value?`fa-user`:`fa-shield-alt`])},null,2),l(`span`,null,e(_.value),1)],2),c(p,{table:`User`,title:`用户管理`,"pk-field":`UserUUID`,searchable:``,pageable:``,stretch:``,selectable:!y.value,"on-view":b},null,8,[`selectable`])]))}}),[[`__scopeId`,`data-v-ab31be72`]]);export{h as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/Workgroup-0dl3kaJX.js b/TempLate/GERP/assets/Workgroup-0dl3kaJX.js deleted file mode 100644 index 44c5ec44..00000000 --- a/TempLate/GERP/assets/Workgroup-0dl3kaJX.js +++ /dev/null @@ -1 +0,0 @@ -import{Nn as e,_ as t,h as n,hn as r,ln as i,mn as a}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as o}from"./serverScope-O8Rw8SFk.js";import{t as s}from"./CrudTable-B49nrpUt.js";var c={class:`workgroup-page`},l=t(r({__name:`Workgroup`,setup(t){o(`工作组管理`);let r=n();function l(e){r.push({path:`/company/workgroup-detail`,query:{WorkgroupUUID:e.WorkgroupUUID||``}})}return(t,n)=>(e(),i(`div`,c,[a(s,{table:`Workgroup`,title:`工作组管理`,"pk-field":`WorkgroupUUID`,searchable:``,pageable:``,stretch:``,selectable:``,"on-view":l})]))}}),[[`__scopeId`,`data-v-5b07f6a7`]]);export{l as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/WorkgroupDetail-AJMWwNyx.js b/TempLate/GERP/assets/WorkgroupDetail-AJMWwNyx.js deleted file mode 100644 index de954b0b..00000000 --- a/TempLate/GERP/assets/WorkgroupDetail-AJMWwNyx.js +++ /dev/null @@ -1 +0,0 @@ -import{An as e,Br as t,Fn as n,Jn as r,Ln as i,Nn as a,an as o,cn as s,en as c,h as l,hn as u,ir as d,ln as f,m as p,mn as m,nr as h,pn as g,pr as _,sn as v}from"./useApi-CROJJdhE-mMpa5RAf.js";import{a as y,o as b,u as x}from"./serverScope-O8Rw8SFk.js";import{t as S}from"./date-picker-CM_15T0u.js";import{u as C}from"./use-global-config-D-dPcPvU.js";import{n as w}from"./descriptions-Cq_aE9sg.js";import{r as T,t as E}from"./select-BGsfCDCJ.js";import{n as D,t as O}from"./form-F--u6XQJ.js";import{t as k}from"./button-CPx9BSuo.js";import{t as A}from"./card-Dj_UeWcA.js";import{t as j}from"./dialog-_5VhSQg5.js";import{t as M}from"./input-number-CiNOxXL6.js";import{t as N}from"./switch-7puThziV.js";/* empty css */import"./css-DsD2Typt.js";import"./css-CttyGzET.js";import"./css-D-a1H3t1.js";import"./css-49fsIjk3.js";import"./css-DmmbJMxg.js";import"./css-CysIl0tz.js";import"./css-w8-s2aei.js";import"./css-DMOjom7l.js";import"./css-Dmy6QwIc.js";import"./css-BLJI5-W_.js";import{n as P,t as F}from"./CrudTable-B49nrpUt.js";import"./css-ByqxgOA-.js";import{t as I}from"./form-B2Pzr8Vf.js";import{t as L}from"./DetailPage-m11wfvkM.js";import{t as R}from"./InfoGrid-C1it9Z2Y.js";import{t as z}from"./useResolveUUIDs-ipmPZLo4.js";var B=`WorkgroupUUID`,V=u({__name:`WorkgroupDetail`,setup(u){let V=p(),H=l(),{resolveUUIDs:U}=z(),W=V.query.WorkgroupUUID||``,G=d(!1),K=d(null),q=d(``),J=d(!1),Y=d(!1),X=d([]),Z=h({}),Q=o(()=>K.value?.WorkgroupName||`工作组详情`);async function $(){if(!W){b.warning(`缺少 WorkgroupUUID 参数,无法加载工作组详情`);return}G.value=!0;try{let e=await I.list(`Workgroup`,{[B]:W,pageSize:1}),t=Array.isArray(e)?e:e?.list||[],n=t.find(e=>e[B]===W)||t[0];if(!n){b.error(`未找到工作组数据`);return}K.value=n,y(n.WorkgroupName||`工作组详情`),await ee(n.CompanyUUID)}finally{G.value=!1}}async function ee(e){if(!e){q.value=``;return}try{let t=await U({company:{table:`Company`,uuids:[e]}});q.value=t.company?.[e]||e}catch{q.value=e}}async function te(){try{X.value=await I.getColumns(`Workgroup`)}catch{}}let ne=o(()=>X.value.filter(e=>e.editable!==!1&&!e.hideInForm&&e.type!==`hidden`&&e.type!==`divider`&&e.type!==`html`&&e.field!==B));function re(){K.value&&(Object.keys(Z).forEach(e=>delete Z[e]),Object.assign(Z,K.value),J.value=!0)}async function ie(){Y.value=!0;try{await I.update(`Workgroup`,Z[B],Z),b.success(`保存成功`),J.value=!1,await $()}finally{Y.value=!1}}function ae(e){H.push({path:`/system/role-detail`,query:{RoleUUID:e.RoleUUID||``}})}return e(async()=>{await Promise.all([$(),te()])}),(e,o)=>{let l=i(`Edit`),u=C,d=k,p=w,h=A,y=x,b=M,I=E,z=T,B=S,V=N,H=D,U=O,X=j;return a(),v(L,{title:Q.value,loading:G.value},{actions:r(()=>[m(d,{type:`primary`,onClick:re},{default:r(()=>[m(u,null,{default:r(()=>[m(l)]),_:1}),o[2]||=g(`编辑 `,-1)]),_:1})]),default:r(()=>[m(R,{title:`基本信息`,columns:2},{default:r(()=>[m(p,{label:`工作组名称`},{default:r(()=>[g(t(K.value?.WorkgroupName||`-`),1)]),_:1}),m(p,{label:`英文名称`},{default:r(()=>[g(t(K.value?.WorkgroupEnglishName||`-`),1)]),_:1}),m(p,{label:`所属公司`},{default:r(()=>[g(t(q.value||K.value?.CompanyUUID||`-`),1)]),_:1}),m(p,{label:`工作组介绍`},{default:r(()=>[g(t(K.value?.WorkgroupIntroduction||`-`),1)]),_:1})]),_:1}),m(h,{shadow:`never`},{header:r(()=>[...o[3]||=[g(`工作组角色`,-1)]]),default:r(()=>[_(W)?(a(),v(F,{key:0,table:`WorkgroupRole`,title:`工作组角色`,query:{WorkgroupUUID:_(W)},"pk-field":`WorkgroupRoleUUID`,selectable:``,pageable:``,"on-view":ae},null,8,[`query`])):s(``,!0)]),_:1}),m(X,{modelValue:J.value,"onUpdate:modelValue":o[1]||=e=>J.value=e,title:`编辑工作组`,width:`600px`,"destroy-on-close":``},{footer:r(()=>[m(d,{onClick:o[0]||=e=>J.value=!1},{default:r(()=>[...o[4]||=[g(`取消`,-1)]]),_:1}),m(d,{type:`primary`,loading:Y.value,onClick:ie},{default:r(()=>[...o[5]||=[g(`保存`,-1)]]),_:1},8,[`loading`])]),default:r(()=>[m(U,{model:Z,"label-width":`120px`,"label-position":`right`},{default:r(()=>[(a(!0),f(c,null,n(ne.value,e=>(a(),v(H,{key:e.field,label:e.title,required:e.required},{default:r(()=>[e.type===`entityPicker`&&e.entityPicker?(a(),v(P,{key:0,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,config:e.entityPicker,"existing-label":Z[e.field+`_label`],placeholder:e.placeholder,disabled:e.disabled,"onUpdate:label":t=>Z[e.field+`_label`]=t},null,8,[`modelValue`,`onUpdate:modelValue`,`config`,`existing-label`,`placeholder`,`disabled`,`onUpdate:label`])):!e.type||e.type===`text`||e.type===`string`?(a(),v(y,{key:1,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,placeholder:e.placeholder,maxlength:e.maxLength,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`maxlength`,`disabled`])):e.type===`textarea`?(a(),v(y,{key:2,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,type:`textarea`,rows:e.rows||3,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`rows`,`disabled`])):e.type===`number`?(a(),v(b,{key:3,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,min:e.min,max:e.max,step:e.step,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`min`,`max`,`step`,`disabled`])):e.type===`select`?(a(),v(z,{key:4,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,placeholder:e.placeholder,disabled:e.disabled,style:{width:`100%`}},{default:r(()=>[(a(!0),f(c,null,n(e.options,e=>(a(),v(I,{key:String(e.value),label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`,`disabled`])):e.type===`date`||e.type===`datetime`?(a(),v(B,{key:5,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,type:e.type,placeholder:e.placeholder,style:{width:`100%`}},null,8,[`modelValue`,`onUpdate:modelValue`,`type`,`placeholder`])):e.type===`switch`||e.type===`boolean`?(a(),v(V,{key:6,modelValue:Z[e.field],"onUpdate:modelValue":t=>Z[e.field]=t,disabled:e.disabled},null,8,[`modelValue`,`onUpdate:modelValue`,`disabled`])):(a(),v(y,{key:7,"model-value":String(Z[e.field]??``),readonly:``},null,8,[`model-value`]))]),_:2},1032,[`label`,`required`]))),128))]),_:1},8,[`model`])]),_:1},8,[`modelValue`])]),_:1},8,[`title`,`loading`])}}});export{V as default}; \ No newline at end of file diff --git a/TempLate/GERP/assets/app-Bqwt3qVF.js b/TempLate/GERP/assets/app-Bqwt3qVF.js deleted file mode 100644 index d362a068..00000000 --- a/TempLate/GERP/assets/app-Bqwt3qVF.js +++ /dev/null @@ -1 +0,0 @@ -import{ir as e}from"./useApi-CROJJdhE-mMpa5RAf.js";import{h as t}from"./router-CMu0lceh.js";var n=t(`app`,()=>{let t=e(!1),n=e(`light`),r=e(`zh-CN`);function i(){t.value=!t.value}function a(e){n.value=e,document.documentElement.classList.toggle(`dark`,e===`dark`),localStorage.setItem(`gerp-theme`,e)}function o(){let e=localStorage.getItem(`gerp-theme`);e&&a(e)}function s(){a(n.value===`light`?`dark`:`light`)}return{sidebarCollapsed:t,theme:n,locale:r,toggleSidebar:i,setTheme:a,initTheme:o,toggleTheme:s}});export{n as t}; \ No newline at end of file diff --git a/TempLate/GERP/assets/dialog-_5VhSQg5.js b/TempLate/GERP/assets/dialog-_5VhSQg5.js deleted file mode 100644 index 95a4113f..00000000 --- a/TempLate/GERP/assets/dialog-_5VhSQg5.js +++ /dev/null @@ -1 +0,0 @@ -import{Br as e,Cn as t,Ct as n,In as r,Jn as i,Lr as a,Nn as o,Pn as s,Wn as c,Yn as l,_t as u,an as d,cn as f,dn as p,hn as m,ir as h,ln as g,mn as _,on as v,pr as y,sn as b,tn as x,xn as S,zn as C,zr as w}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as T,t as E}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{h as D,p as O,s as k,y as A}from"./serverScope-O8Rw8SFk.js";import{C as j,R as M,d as N,u as P}from"./use-global-config-D-dPcPvU.js";import{y as F}from"./router-CMu0lceh.js";import{a as I,i as L,n as R,o as z,r as B,t as V}from"./use-dialog-BxrOdCc2.js";import{t as H}from"./refs-Cc5FwKWV.js";var U=[`aria-level`],W=[`aria-label`],G=[`id`],K=m({name:`ElDialogContent`,__name:`dialog-content`,props:z,emits:I,setup(t,{expose:n}){let{t:s}=j(),{Close:c}=N,l=t,{dialogRef:u,headerRef:p,bodyId:m,ns:h,style:x}=S(R),{focusTrapRef:T}=S(D),E=H(T,u),O=d(()=>!!l.draggable),{resetPosition:k,updatePosition:A,isDragging:M}=F(u,p,O,d(()=>!!l.overflow)),I=d(()=>[h.b(),h.is(`fullscreen`,l.fullscreen),h.is(`draggable`,O.value),h.is(`dragging`,M.value),h.is(`align-center`,!!l.alignCenter),{[h.m(`center`)]:l.center}]);return n({resetPosition:k,updatePosition:A}),(n,l)=>(o(),g(`div`,{ref:y(E),class:a(I.value),style:w(y(x)),tabindex:`-1`},[v(`header`,{ref_key:`headerRef`,ref:p,class:a([y(h).e(`header`),t.headerClass,{"show-close":t.showClose}])},[r(n.$slots,`header`,{},()=>[v(`span`,{role:`heading`,"aria-level":t.ariaLevel,class:a(y(h).e(`title`))},e(t.title),11,U)]),t.showClose?(o(),g(`button`,{key:0,"aria-label":y(s)(`el.dialog.close`),class:a(y(h).e(`headerbtn`)),type:`button`,onClick:l[0]||=e=>n.$emit(`close`)},[_(y(P),{class:a(y(h).e(`close`))},{default:i(()=>[(o(),b(C(t.closeIcon||y(c))))]),_:1},8,[`class`])],10,W)):f(`v-if`,!0)],2),v(`div`,{id:y(m),class:a([y(h).e(`body`),t.bodyClass])},[r(n.$slots,`default`)],10,G),n.$slots.footer?(o(),g(`footer`,{key:0,class:a([y(h).e(`footer`),t.footerClass])},[r(n.$slots,`footer`)],2)):f(`v-if`,!0)],6))}}),q=[`aria-label`,`aria-labelledby`,`aria-describedby`],J=u(m({name:`ElDialog`,inheritAttrs:!1,__name:`dialog`,props:L,emits:B,setup(e,{expose:u}){let m=e,g=c();M({scope:`el-dialog`,from:`the title slot`,replacement:`the header slot`,version:`3.0.0`,ref:`https://element-plus.org/en-US/component/dialog.html#slots`},d(()=>!!g.title));let S=n(`dialog`),C=h(),D=h(),j=h(),{visible:N,titleId:P,bodyId:F,style:I,overlayDialogStyle:L,rendered:z,transitionConfig:B,zIndex:H,_draggable:U,_alignCenter:W,_overflow:G,penetrable:J,handleClose:Y,onModalClick:X,onOpenAutoFocus:Z,onCloseAutoFocus:Q,onCloseRequested:ee,onFocusoutPrevented:te,bringToFront:ne,closing:re}=V(m,C);s(R,{dialogRef:C,headerRef:D,bodyId:F,ns:S,rendered:z,style:I});let $=A(X);return u({visible:N,dialogContentRef:j,resetPosition:()=>{j.value?.resetPosition()},handleClose:Y}),(n,s)=>(o(),b(x,{to:e.appendTo,disabled:e.appendTo===`body`&&!e.appendToBody},[_(E,t(y(B),{persisted:``}),{default:i(()=>[l(_(y(k),{"custom-mask-event":``,mask:e.modal,"overlay-class":[e.modalClass??``,`${y(S).namespace.value}-modal-dialog`,y(S).is(`penetrable`,y(J))],"z-index":y(H)},{default:i(()=>[v(`div`,{role:`dialog`,"aria-modal":`true`,"aria-label":e.title||void 0,"aria-labelledby":e.title?void 0:y(P),"aria-describedby":y(F),class:a([`${y(S).namespace.value}-overlay-dialog`,y(S).is(`closing`,y(re))]),style:w(y(L)),onClick:s[0]||=(...e)=>y($).onClick&&y($).onClick(...e),onMousedown:s[1]||=(...e)=>y($).onMousedown&&y($).onMousedown(...e),onMouseup:s[2]||=(...e)=>y($).onMouseup&&y($).onMouseup(...e)},[_(y(O),{loop:``,trapped:y(N),"focus-start-el":`container`,onFocusAfterTrapped:y(Z),onFocusAfterReleased:y(Q),onFocusoutPrevented:y(te),onReleaseRequested:y(ee)},{default:i(()=>[y(z)?(o(),b(K,t({key:0,ref_key:`dialogContentRef`,ref:j},n.$attrs,{center:e.center,"align-center":y(W),"close-icon":e.closeIcon,draggable:y(U),overflow:y(G),fullscreen:e.fullscreen,"header-class":e.headerClass,"body-class":e.bodyClass,"footer-class":e.footerClass,"show-close":e.showClose,title:e.title,"aria-level":e.headerAriaLevel,onClose:y(Y),onMousedown:y(ne)}),p({header:i(()=>[n.$slots.title?r(n.$slots,`title`,{key:1}):r(n.$slots,`header`,{key:0,close:y(Y),titleId:y(P),titleClass:y(S).e(`title`)})]),default:i(()=>[r(n.$slots,`default`)]),_:2},[n.$slots.footer?{name:`footer`,fn:i(()=>[r(n.$slots,`footer`)]),key:`0`}:void 0]),1040,[`center`,`align-center`,`close-icon`,`draggable`,`overflow`,`fullscreen`,`header-class`,`body-class`,`footer-class`,`show-close`,`title`,`aria-level`,`onClose`,`onMousedown`])):f(`v-if`,!0)]),_:3},8,[`trapped`,`onFocusAfterTrapped`,`onFocusAfterReleased`,`onFocusoutPrevented`,`onReleaseRequested`])],46,q)]),_:3},8,[`mask`,`overlay-class`,`z-index`]),[[T,y(N)]])]),_:3},16)],8,[`to`,`disabled`]))}}));export{J as t}; \ No newline at end of file diff --git a/TempLate/GERP/assets/form-B2Pzr8Vf.js b/TempLate/GERP/assets/form-B2Pzr8Vf.js deleted file mode 100644 index 69a87b1c..00000000 --- a/TempLate/GERP/assets/form-B2Pzr8Vf.js +++ /dev/null @@ -1 +0,0 @@ -import{c as e,l as t,o as n,s as r,u as i}from"./router-CMu0lceh.js";var a={getColumns:e=>r(`/API/FormAPI/Columns/${e}`),list:(e,t)=>r(`/API/FormAPI/Get/${e}`,t),get:(e,t)=>r(`/API/FormAPI/Get/${e}`,{id:t}),create:(e,n)=>t(`/API/FormAPI/Add/${e}`,n),update:(e,t,n)=>i(`/API/FormAPI/Modify/${e}/${t}`,n),modifyItem:(e,n,r)=>t(`/API/FormAPI/ModifyItem/${e}/${n}`,r),patchItem:(t,n,r)=>e(`/API/FormAPI/ModifyItem/${t}/${n}`,r),remove:(e,t)=>n(`/API/FormAPI/Delete/${e}/${t}`),search:(e,t)=>r(`/API/FormAPI/${e}Search`,{keyword:t})};export{a as t}; \ No newline at end of file diff --git a/TempLate/GERP/assets/index-CjWCN1N9.js b/TempLate/GERP/assets/index-CjWCN1N9.js deleted file mode 100644 index 82cb0bc3..00000000 --- a/TempLate/GERP/assets/index-CjWCN1N9.js +++ /dev/null @@ -1,29 +0,0 @@ -import{$ as e,$n as t,$t as n,A as r,An as i,At as a,B as o,Br as s,Cn as c,Cr as l,Ct as u,Dn as d,Dt as f,E as p,Er as m,Et as h,F as g,Fn as _,Ft as v,Gr as y,I as b,In as x,Jn as S,Kn as C,Ln as w,Lr as T,Mn as E,Mr as D,N as O,Nn as k,Nt as A,On as j,Or as M,Ot as N,Pn as P,Pt as ee,Qn as F,Rn as I,Rr as te,S as ne,Sn as re,Sr as L,T as ie,Tn as ae,Tt as R,Un as oe,V as z,Vr as se,Wn as ce,Wr as le,Yn as ue,_ as de,_t as fe,an as B,b as pe,bt as me,cn as V,cr as he,ct as ge,dn as _e,en as ve,er as ye,fr as be,gn as xe,hn as Se,ht as Ce,ir as H,j as we,jn as Te,jt as Ee,kn as De,kr as Oe,kt as ke,ln as U,lr as Ae,lt as je,mn as W,mr as Me,nr as Ne,on as G,pn as Pe,pr as K,q as Fe,qn as Ie,rt as Le,sn as q,sr as Re,st as ze,tn as Be,ur as Ve,ut as He,v as Ue,vn as We,vr as Ge,vt as Ke,wn as J,wr as qe,wt as Je,x as Ye,xn as Xe,y as Ze,yn as Y,yt as Qe,z as $e,zn as et,zr as tt}from"./useApi-CROJJdhE-mMpa5RAf.js";import{c as nt,i as rt,l as it,n as at,r as ot,s as st,t as ct,u as lt}from"./runtime-dom.esm-bundler-YxjRGSuG.js";import{$ as ut,A as dt,B as ft,D as pt,E as mt,F as ht,G as gt,H as _t,J as vt,K as yt,L as bt,M as xt,N as St,O as Ct,P as wt,R as Tt,T as Et,V as Dt,W as Ot,X as kt,Y as At,_ as jt,at as Mt,c as Nt,ct as Pt,d as Ft,et as It,f as Lt,g as Rt,j as zt,k as Bt,l as Vt,m as Ht,o as Ut,ot as Wt,p as Gt,st as Kt,u as qt,v as Jt,w as Yt,x as Xt}from"./serverScope-O8Rw8SFk.js";import{h as Zt,i as Qt,m as $t,n as en,p as tn,r as nn,t as rn,v as an}from"./date-picker-CM_15T0u.js";import{C as on,E as sn,H as cn,Kt as ln,M as un,N as dn,Ot as fn,P as X,R as pn,S as mn,T as hn,W as gn,Y as _n,_ as vn,a as yn,at as bn,b as xn,ct as Sn,d as Cn,et as wn,g as Tn,h as En,i as Dn,it as On,j as kn,k as An,l as jn,m as Mn,n as Nn,nt as Pn,o as Fn,ot as In,p as Ln,r as Rn,s as zn,t as Bn,tt as Vn,u as Hn,ut as Un,wt as Wn,x as Gn,y as Kn,z as qn}from"./use-global-config-D-dPcPvU.js";import{n as Jn,t as Yn}from"./descriptions-Cq_aE9sg.js";import{a as Xn,c as Zn,i as Qn,l as $n,n as er,o as tr,r as nr,s as rr,t as ir}from"./select-BGsfCDCJ.js";import{t as ar}from"./omit-zqi_K1DB.js";import{t as or}from"./time-picker-DcDLR-nT.js";import{n as sr,t as cr}from"./table-DPU4-geg.js";import{t as lr}from"./castArray-CpgoCob_.js";import{_ as ur,b as dr,m as fr,t as pr}from"./router-CMu0lceh.js";import{n as mr,r as hr,t as gr}from"./form-F--u6XQJ.js";import{t as _r}from"./debounce-DcxdqJyS.js";import{t as vr}from"./numbers-cik3maFd.js";import{n as yr,r as br,t as xr}from"./image-HD4q5QFa.js";import{n as Sr}from"./strings-B6ImqFWg.js";import{a as Cr,c as wr,d as Tr,i as Er,l as Dr,m as Or,n as kr,o as Ar,r as jr,s as Mr,t as Nr}from"./click-outside-bcMsT2om.js";import{n as Pr,t as Fr}from"./skeleton-DGDficlh.js";import{a as Ir,i as Lr,t as Rr}from"./vnode-SMLE-MKY.js";import{t as zr}from"./use-ordered-children-DGQ-CQup.js";import{t as Br}from"./alert-BpFV-0dO.js";import{n as Vr,t as Hr}from"./avatar-DXM6bmhO.js";import{i as Ur,n as Wr,r as Gr,t as Kr}from"./button-CPx9BSuo.js";import{n as qr,t as Jr}from"./tag-BSnLMVgs.js";import{t as Yr}from"./card-Dj_UeWcA.js";import{n as Xr,r as Zr,t as Qr}from"./drawer-Cu-arLgK.js";import{a as $r,i as ei,n as ti,r as ni,t as ri}from"./tabs-BSMusFE5.js";import{n as ii,r as ai,t as oi}from"./checkbox-CdKclTX1.js";import{n as si,r as ci,t as li}from"./radio-Cb0vAm4I.js";import{n as ui,t as di}from"./col-BXlaMgkQ.js";import{t as fi}from"./collapse-transition-D5PfF1iI.js";import{t as pi}from"./dialog-_5VhSQg5.js";import{a as mi,c as hi,i as gi,n as _i,o as vi,r as yi,s as bi,t as xi}from"./menu-BLdj5hCm.js";import{t as Si}from"./empty-CnQTxkvl.js";import{t as Ci}from"./input-number-CiNOxXL6.js";import{t as wi}from"./pagination-DOGDdUWm.js";import{t as Ti}from"./progress-CJYzD9Cp.js";import{t as Ei}from"./result-gkzjWpF7.js";import{n as Di,t as Oi}from"./steps-C4-7Ybf-.js";import{t as ki}from"./switch-7puThziV.js";import{n as Ai,r as ji,t as Mi}from"./tree-DqeBDBpX.js";import{n as Ni,t as Pi}from"./directive-CY41a6pJ.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Fi=Symbol(`INSTALLED_KEY`),Ii=1/0;function Li(e){return e!=null&&e.length?It(e,Ii):[]}var Ri=R({zIndex:{type:h([Number,String]),default:100},target:{type:String,default:``},offset:{type:Number,default:0},position:{type:String,values:[`top`,`bottom`],default:`top`},teleported:Boolean,appendTo:{type:h([String,Object]),default:`body`}}),zi={scroll:({scrollTop:e,fixed:t})=>a(e)&&f(t),[Mt]:e=>f(e)},Bi=Math.min,Vi=Math.max,Hi=Math.round,Ui=Math.floor,Wi=e=>({x:e,y:e}),Gi={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Ki(e,t,n){return Vi(e,Bi(t,n))}function qi(e,t){return typeof e==`function`?e(t):e}function Ji(e){return e.split(`-`)[0]}function Yi(e){return e.split(`-`)[1]}function Xi(e){return e===`x`?`y`:`x`}function Zi(e){return e===`y`?`height`:`width`}function Qi(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function $i(e){return Xi(Qi(e))}function ea(e,t,n){n===void 0&&(n=!1);let r=Yi(e),i=$i(e),a=Zi(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=la(o)),[o,la(o)]}function ta(e){let t=la(e);return[na(e),t,na(t)]}function na(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var ra=[`left`,`right`],ia=[`right`,`left`],aa=[`top`,`bottom`],oa=[`bottom`,`top`];function sa(e,t,n){switch(e){case`top`:case`bottom`:return n?t?ia:ra:t?ra:ia;case`left`:case`right`:return t?aa:oa;default:return[]}}function ca(e,t,n,r){let i=Yi(e),a=sa(Ji(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(na)))),a}function la(e){let t=Ji(e);return Gi[t]+e.slice(t.length)}function ua(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function da(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:ua(e)}function fa(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function pa(e,t,n){let{reference:r,floating:i}=e,a=Qi(t),o=$i(t),s=Zi(o),c=Ji(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=Yi(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function ma(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=qi(t,e),p=da(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=fa(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=fa(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var ha=50,ga=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:ma},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=pa(l,r,c),f=r,p=0,m={};for(let n=0;n({name:`arrow`,options:e,async fn(t){let{x:n,y:r,placement:i,rects:a,platform:o,elements:s,middlewareData:c}=t,{element:l,padding:u=0}=qi(e,t)||{};if(l==null)return{};let d=da(u),f={x:n,y:r},p=$i(i),m=Zi(p),h=await o.getDimensions(l),g=p===`y`,_=g?`top`:`left`,v=g?`bottom`:`right`,y=g?`clientHeight`:`clientWidth`,b=a.reference[m]+a.reference[p]-f[p]-a.floating[m],x=f[p]-a.reference[p],S=await(o.getOffsetParent==null?void 0:o.getOffsetParent(l)),C=S?S[y]:0;(!C||!await(o.isElement==null?void 0:o.isElement(S)))&&(C=s.floating[y]||a.floating[m]);let w=b/2-x/2,T=C/2-h[m]/2-1,E=Bi(d[_],T),D=Bi(d[v],T),O=C-h[m]-D,k=C/2-h[m]/2+w,A=Ki(E,k,O),j=!c.arrow&&Yi(i)!=null&&k!==A&&a.reference[m]/2-(ke<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===Qi(t)||T.every(e=>Qi(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=Qi(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}},ya=new Set([`left`,`top`]);async function ba(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Ji(n),s=Yi(n),c=Qi(n)===`y`,l=ya.has(o)?-1:1,u=a&&c?-1:1,d=qi(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var xa=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await ba(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},Sa=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=qi(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=Qi(i),p=Xi(f),m=u[p],h=u[f],g=(e,t)=>Ki(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}};function Ca(){return typeof window<`u`}function wa(e){return Da(e)?(e.nodeName||``).toLowerCase():`#document`}function Ta(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function Ea(e){return((Da(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Da(e){return Ca()?e instanceof Node||e instanceof Ta(e).Node:!1}function Oa(e){return Ca()?e instanceof Element||e instanceof Ta(e).Element:!1}function ka(e){return Ca()?e instanceof HTMLElement||e instanceof Ta(e).HTMLElement:!1}function Aa(e){return!Ca()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof Ta(e).ShadowRoot}function ja(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=Ha(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function Ma(e){return/^(table|td|th)$/.test(wa(e))}function Na(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Pa=/transform|translate|scale|rotate|perspective|filter/,Fa=/paint|layout|strict|content/,Ia=e=>!!e&&e!==`none`,La;function Ra(e){let t=Oa(e)?Ha(e):e;return Ia(t.transform)||Ia(t.translate)||Ia(t.scale)||Ia(t.rotate)||Ia(t.perspective)||!Ba()&&(Ia(t.backdropFilter)||Ia(t.filter))||Pa.test(t.willChange||``)||Fa.test(t.contain||``)}function za(e){let t=Wa(e);for(;ka(t)&&!Va(t);){if(Ra(t))return t;if(Na(t))return null;t=Wa(t)}return null}function Ba(){return La??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),La}function Va(e){return/^(html|body|#document)$/.test(wa(e))}function Ha(e){return Ta(e).getComputedStyle(e)}function Ua(e){return Oa(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Wa(e){if(wa(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Aa(e)&&e.host||Ea(e);return Aa(t)?t.host:t}function Ga(e){let t=Wa(e);return Va(t)?(e.ownerDocument||e).body:ka(t)&&ja(t)?t:Ga(t)}function Ka(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=Ga(e),i=r===e.ownerDocument?.body,a=Ta(r);if(i){let e=qa(a);return t.concat(a,a.visualViewport||[],ja(r)?r:[],e&&n?Ka(e):[])}return t.concat(r,Ka(r,[],n))}function qa(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Ja(e){let t=Ha(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=ka(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Hi(n)!==a||Hi(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Ya(e){return Oa(e)?e:e.contextElement}function Xa(e){let t=Ya(e);if(!ka(t))return Wi(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Ja(t),o=(a?Hi(n.width):n.width)/r,s=(a?Hi(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var Za=Wi(0);function Qa(e){let t=Ta(e);return!Ba()||!t.visualViewport?Za:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function $a(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===Ta(e)}function eo(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Ya(e),o=Wi(1);t&&(r?Oa(r)&&(o=Xa(r)):o=Xa(e));let s=$a(a,n,r)?Qa(a):Wi(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=Ta(a),t=Oa(r)?Ta(r):r,n=e,i=qa(n);for(;i&&t!==n;){let e=Xa(i),t=i.getBoundingClientRect(),r=Ha(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=Ta(i),i=qa(n)}}return fa({width:u,height:d,x:c,y:l})}function to(e,t){let n=Ua(e).scrollLeft;return t?t.left+n:eo(Ea(e)).left+n}function no(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-to(e,n),y:n.top+t.scrollTop}}function ro(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=Ea(r),s=t?Na(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Wi(1),u=Wi(0),d=ka(r);if((d||!a)&&((wa(r)!==`body`||ja(o))&&(c=Ua(r)),d)){let e=eo(r);l=Xa(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?no(o,c):Wi(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function io(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function ao(e){let t=Ua(e),n=e.ownerDocument.body,r=Vi(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=Vi(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+to(e),o=-t.scrollTop;return Ha(n).direction===`rtl`&&(a+=Vi(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var oo=25;function so(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=Ta(e),a=Ea(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!Ba()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(to(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=oo&&(s-=o)}return{width:s,height:c,x:l,y:u}}function co(e,t){let n=eo(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=Xa(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function lo(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=so(e,n,t);else if(t===`document`)r=ao(Ea(e));else if(Oa(t))r=co(t,n);else{let n=Qa(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return fa(r)}function uo(e,t){let n=t.get(e);if(n)return n;let r=Ka(e,[],!1).filter(e=>Oa(e)&&wa(e)!==`body`),i=null,a=Ha(e).position===`fixed`,o=a?Wa(e):e;for(;Oa(o)&&!Va(o);){let e=Ha(o),t=Ra(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=Wa(o)}return t.set(e,r),r}function fo(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Na(t)?[]:uo(t,this._c):[].concat(n),r],o=lo(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e{s(!1,1e-7)},1e3)}y=!1}try{r=new IntersectionObserver(b,{...v,root:a.ownerDocument})}catch{r=new IntersectionObserver(b,v)}r.observe(e)}let c=Ta(e),l=()=>s(n);return c.addEventListener(`resize`,l),s(!0),()=>{c.removeEventListener(`resize`,l),o()}}function Co(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=Ya(e),u=i||a?[...l?Ka(l):[],...t?Ka(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n),a&&e.addEventListener(`resize`,n)});let d=l&&s?So(l,n,a):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?eo(e):null;c&&g();function g(){let t=eo(e);h&&!xo(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var wo=ma,To=xa,Eo=Sa,Do=va,Oo=_a,ko=(e,t,n)=>{let r=new Map,i=n??{},a={...bo,...i.platform,_c:r};return ga(e,t,{...i,platform:a})},Ao=`ElAffix`,jo=fe(Se({name:Ao,__name:`affix`,props:Ri,emits:zi,setup(e,{expose:t,emit:n}){let r=e,a=n,o=u(`affix`),s=Re(),c=Re(),l=Re(),{height:d}=vt(),{height:f,width:p,top:m,bottom:h,left:g,update:_}=ft(c,{windowScroll:!1}),v=ft(s),y=H(!1),b=H(0),S=H(0),w=B(()=>!r.teleported||!y.value),E=B(()=>({display:`flow-root`,height:y.value?`${f.value}px`:``,width:y.value?`${p.value}px`:``})),D=B(()=>{if(!y.value)return{};let e=hn(r.offset);return{height:`${f.value}px`,width:`${p.value}px`,top:r.position===`top`?e:``,bottom:r.position===`bottom`?e:``,left:r.teleported?`${g.value}px`:``,transform:S.value?`translateY(${S.value}px)`:``,zIndex:r.zIndex}}),O=()=>{if(!l.value)return;b.value=l.value instanceof Window?document.documentElement.scrollTop:l.value.scrollTop||0;let{position:e,target:t,offset:n}=r,i=n+f.value;if(e===`top`)if(t){let e=v.bottom.value-i;y.value=n>m.value&&v.bottom.value>0,S.value=e<0?e:0}else y.value=n>m.value;else if(t){let e=d.value-v.top.value-i;y.value=d.value-nv.top.value,S.value=e<0?-e:0}else y.value=d.value-n{if(!y.value){_();return}y.value=!1,await J(),_(),y.value=!0};return C(y,e=>a(Mt,e)),i(()=>{r.target?(s.value=document.querySelector(r.target)??void 0,s.value||bn(Ao,`Target does not exist: ${r.target}`)):s.value=document.documentElement,l.value=pt(c.value,!0),_()}),ae(()=>{J(A)}),De(()=>{y.value=!1}),_t(l,`scroll`,async()=>{_(),await J(),a(`scroll`,{scrollTop:b.value,fixed:y.value})}),Ie(O),t({update:O,updateRoot:A}),(t,n)=>(k(),U(`div`,{ref_key:`root`,ref:c,class:T(K(o).b()),style:tt(E.value)},[(k(),q(Be,{disabled:w.value,to:e.appendTo},[G(`div`,{class:T({[K(o).m(`fixed`)]:y.value}),style:tt(D.value)},[x(t.$slots,`default`)],6)],8,[`disabled`,`to`]))],6))}})),Mo=R({...Ft,valueKey:{type:String,default:`value`},modelValue:{type:[String,Number],default:``},debounce:{type:Number,default:300},placement:{type:h(String),values:[`top`,`top-start`,`top-end`,`bottom`,`bottom-start`,`bottom-end`],default:`bottom-start`},fetchSuggestions:{type:h([Function,Array]),default:Me},popperClass:Mr.popperClass,popperStyle:Mr.popperStyle,popperOptions:Mr.popperOptions,showArrow:{type:Boolean,default:!0},triggerOnFocus:{type:Boolean,default:!0},selectWhenUnmatched:Boolean,hideLoading:Boolean,teleported:Mr.teleported,appendTo:Mr.appendTo,highlightFirstItem:Boolean,fitInputWidth:Boolean,loopNavigation:{type:Boolean,default:!0}}),No={[Kt]:e=>D(e)||a(e),[Wt]:e=>D(e)||a(e),[Mt]:e=>D(e)||a(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,select:e=>m(e)},Po=[`aria-expanded`,`aria-owns`],Fo={key:0},Io=[`id`,`aria-selected`,`onClick`],Lo=`ElAutocomplete`,Ro=fe(Se({name:Lo,inheritAttrs:!1,__name:`autocomplete`,props:Mo,emits:No,setup(e,{expose:t,emit:n}){let r=e,a=n,o=B(()=>{let e=qt.props??[];return kt(r,L(e)?e:Object.keys(e))}),l=oe(),f=Fn(),p=u(`autocomplete`),m=H(),h=H(),g=H(),v=H(),y=!1,b=!1,C=H([]),w=H(-1),E=H(``),D=H(!1),O=H(!1),A=H(!1),j=Gn(),M=B(()=>l.style),N=B(()=>(C.value.length>0||A.value)&&D.value),P=B(()=>!r.hideLoading&&A.value),ee=B(()=>m.value?Array.from(m.value.$el.querySelectorAll(`input`)):[]),F=()=>{N.value&&(E.value=`${m.value.$el.offsetWidth}px`)},I=()=>{w.value=-1},te=async e=>{if(O.value)return;let t=e=>{A.value=!1,!O.value&&(L(e)?(C.value=e,w.value=r.highlightFirstItem?0:-1):bn(Lo,`autocomplete suggestions must be an array`))};if(A.value=!0,L(r.fetchSuggestions))t(r.fetchSuggestions);else{let n=await r.fetchSuggestions(e,t);L(n)&&t(n)}},ne=wn(te,B(()=>r.debounce)),re=e=>{let t=!!e;if(a(Wt,e),a(Kt,e),O.value=!1,D.value||=t,!r.triggerOnFocus&&!e){O.value=!0,C.value=[];return}ne(e)},ie=e=>{f.value||(e.target?.tagName!==`INPUT`||ee.value.includes(document.activeElement))&&(D.value=!0)},ae=e=>{a(Mt,e)},R=e=>{if(b)b=!1;else{D.value=!0,a(`focus`,e);let t=r.modelValue??``;r.triggerOnFocus&&!y&&ne(String(t))}},z=e=>{setTimeout(()=>{if(g.value?.isFocusInsideContent()){b=!0;return}D.value&&ue(),a(`blur`,e)})},se=()=>{D.value=!1,a(Kt,``),a(`clear`)},ce=async()=>{m.value?.isComposing||(N.value&&w.value>=0&&w.value{N.value&&(e.preventDefault(),e.stopPropagation(),ue())},ue=()=>{D.value=!1},de=()=>{m.value?.focus()},fe=()=>{m.value?.blur()},pe=async e=>{a(Wt,e[r.valueKey]),a(Kt,e[r.valueKey]),a(`select`,e),C.value=[],w.value=-1},me=e=>{if(!N.value||A.value)return;if(e<0){if(!r.loopNavigation){w.value=-1;return}e=C.value.length-1}e>=C.value.length&&(e=r.loopNavigation?0:C.value.length-1);let[t,n]=he(),i=n[e],a=t.scrollTop,{offsetTop:o,scrollHeight:s}=i;o+s>a+t.clientHeight&&(t.scrollTop=o+s-t.clientHeight),o{let e=h.value.querySelector(`.${p.be(`suggestion`,`wrap`)}`);return[e,e.querySelectorAll(`.${p.be(`suggestion`,`list`)} li`)]},ge=ht(v,e=>{if(g.value?.isFocusInsideContent())return;let t=b;b=!1,N.value&&(t?z(new FocusEvent(`blur`,e)):ue())}),ye=e=>{switch(Xt(e)){case Pt.up:e.preventDefault(),me(w.value-1);break;case Pt.down:e.preventDefault(),me(w.value+1);break;case Pt.enter:case Pt.numpadEnter:e.preventDefault(),ce();break;case Pt.tab:ue();break;case Pt.esc:le(e);break;case Pt.home:e.preventDefault(),me(0);break;case Pt.end:e.preventDefault(),me(C.value.length-1);break;case Pt.pageUp:e.preventDefault(),me(Math.max(0,w.value-10));break;case Pt.pageDown:e.preventDefault(),me(Math.min(C.value.length-1,w.value+10))}};return d(()=>{ge?.()}),i(()=>{let e=m.value?.ref;e&&([{key:`role`,value:`textbox`},{key:`aria-autocomplete`,value:`list`},{key:`aria-controls`,value:j.value},{key:`aria-activedescendant`,value:`${j.value}-item-${w.value}`}].forEach(({key:t,value:n})=>e.setAttribute(t,n)),y=e.hasAttribute(`readonly`))}),t({highlightedIndex:w,activated:D,loading:A,inputRef:m,popperRef:g,suggestions:C,handleSelect:pe,handleKeyEnter:ce,focus:de,blur:fe,close:ue,highlight:me,getData:te}),(t,n)=>(k(),q(K(Cr),{ref_key:`popperRef`,ref:g,visible:N.value,placement:e.placement,"fallback-placements":[`bottom-start`,`top-start`],"popper-class":[K(p).e(`popper`),e.popperClass],"popper-style":e.popperStyle,"popper-options":e.popperOptions,"show-arrow":e.showArrow,teleported:e.teleported,"append-to":e.appendTo,"gpu-acceleration":!1,pure:``,"manual-mode":``,effect:`light`,trigger:`click`,transition:`${K(p).namespace.value}-zoom-in-top`,persistent:``,role:`listbox`,onBeforeShow:F,onHide:I},{content:S(()=>[G(`div`,{ref_key:`regionRef`,ref:h,class:T([K(p).b(`suggestion`),K(p).is(`loading`,P.value)]),style:tt({[e.fitInputWidth?`width`:`minWidth`]:E.value,outline:`none`}),role:`region`},[t.$slots.header?(k(),U(`div`,{key:0,class:T(K(p).be(`suggestion`,`header`)),onClick:n[0]||=lt(()=>{},[`stop`])},[x(t.$slots,`header`)],2)):V(`v-if`,!0),W(K(kr),{id:K(j),tag:`ul`,"wrap-class":K(p).be(`suggestion`,`wrap`),"view-class":K(p).be(`suggestion`,`list`),role:`listbox`},{default:S(()=>[P.value?(k(),U(`li`,Fo,[x(t.$slots,`loading`,{},()=>[W(K(Hn),{class:T(K(p).is(`loading`))},{default:S(()=>[W(K(Fe))]),_:1},8,[`class`])])])):(k(!0),U(ve,{key:1},_(C.value,(n,r)=>(k(),U(`li`,{id:`${K(j)}-item-${r}`,key:r,class:T({highlighted:w.value===r}),role:`option`,"aria-selected":w.value===r,onClick:e=>pe(n)},[x(t.$slots,`default`,{item:n},()=>[Pe(s(n[e.valueKey]),1)])],10,Io))),128))]),_:3},8,[`id`,`wrap-class`,`view-class`]),t.$slots.footer?(k(),U(`div`,{key:1,class:T(K(p).be(`suggestion`,`footer`)),onClick:n[1]||=lt(()=>{},[`stop`])},[x(t.$slots,`footer`)],2)):V(`v-if`,!0)],6)]),default:S(()=>[G(`div`,{ref_key:`listboxRef`,ref:v,class:T([K(p).b(),t.$attrs.class]),style:tt(M.value),role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":N.value,"aria-owns":K(j)},[W(K(qt),c({ref_key:`inputRef`,ref:m},c(o.value,t.$attrs),{"model-value":e.modelValue,disabled:K(f),onInput:re,onChange:ae,onFocus:R,onBlur:z,onClear:se,onKeydown:ye,onMousedown:ie}),_e({_:2},[t.$slots.prepend?{name:`prepend`,fn:S(()=>[x(t.$slots,`prepend`)]),key:`0`}:void 0,t.$slots.append?{name:`append`,fn:S(()=>[x(t.$slots,`append`)]),key:`1`}:void 0,t.$slots.prefix?{name:`prefix`,fn:S(()=>[x(t.$slots,`prefix`)]),key:`2`}:void 0,t.$slots.suffix?{name:`suffix`,fn:S(()=>[x(t.$slots,`suffix`)]),key:`3`}:void 0]),1040,[`model-value`,`disabled`])],14,Po)]),_:3},8,[`visible`,`placement`,`popper-class`,`popper-style`,`popper-options`,`show-arrow`,`teleported`,`append-to`,`transition`]))}})),zo={visibilityHeight:{type:Number,default:200},target:{type:String,default:``},right:{type:Number,default:40},bottom:{type:Number,default:40}},Bo={click:e=>e instanceof MouseEvent},Vo=(e,t,n)=>{let r=Re(),a=Re(),o=H(!1),s=()=>{r.value&&(o.value=r.value.scrollTop>=e.visibilityHeight)};return _t(a,`scroll`,Vn(s,300,!0)),i(()=>{a.value=document,r.value=document.documentElement,e.target&&(r.value=document.querySelector(e.target)??void 0,r.value||bn(n,`target does not exist: ${e.target}`),a.value=r.value),s()}),{visible:o,handleClick:e=>{r.value?.scrollTo({top:0,behavior:`smooth`}),t(`click`,e)}}},Ho=`ElBacktop`,Uo=fe(Se({name:Ho,__name:`backtop`,props:zo,emits:Bo,setup(e,{emit:t}){let n=e,r=t,i=u(`backtop`),{handleClick:a,visible:o}=Vo(n,r,Ho),s=B(()=>({right:`${n.right}px`,bottom:`${n.bottom}px`}));return(e,t)=>(k(),q(ct,{name:`${K(i).namespace.value}-fade-in`},{default:S(()=>[K(o)?(k(),U(`div`,{key:0,style:tt(s.value),class:T(K(i).b()),onClick:t[0]||=lt((...e)=>K(a)&&K(a)(...e),[`stop`])},[x(e.$slots,`default`,{},()=>[W(K(Hn),{class:T(K(i).e(`icon`))},{default:S(()=>[W(K(p))]),_:1},8,[`class`])])],6)):V(`v-if`,!0)]),_:3},8,[`name`]))}})),Wo=R({separator:{type:String,default:`/`},separatorIcon:{type:En}}),Go=Symbol(`breadcrumbKey`),Ko=R({to:{type:h([String,Object]),default:``},replace:Boolean}),qo=[`aria-label`],Jo=Se({name:`ElBreadcrumb`,__name:`breadcrumb`,props:Wo,setup(e){let{t}=on(),n=e,r=u(`breadcrumb`),a=H();return P(Go,n),i(()=>{let e=a.value.querySelectorAll(`.${r.e(`item`)}`);e.length&&e[e.length-1].setAttribute(`aria-current`,`page`)}),(e,n)=>(k(),U(`div`,{ref_key:`breadcrumb`,ref:a,class:T(K(r).b()),"aria-label":K(t)(`el.breadcrumb.label`),role:`navigation`},[x(e.$slots,`default`)],10,qo))}}),Yo=Se({name:`ElBreadcrumbItem`,__name:`breadcrumb-item`,props:Ko,setup(e){let t=e,n=xe(),r=Xe(Go,void 0),i=u(`breadcrumb`),a=n.appContext.config.globalProperties.$router,o=()=>{!t.to||!a||(t.replace?a.replace(t.to):a.push(t.to))};return(t,n)=>(k(),U(`span`,{class:T(K(i).e(`item`))},[G(`span`,{class:T([K(i).e(`inner`),K(i).is(`link`,!!e.to)]),role:`link`,onClick:o},[x(t.$slots,`default`)],2),K(r)?.separatorIcon?(k(),q(K(Hn),{key:0,class:T(K(i).e(`separator`))},{default:S(()=>[(k(),q(et(K(r).separatorIcon)))]),_:1},8,[`class`])):(k(),U(`span`,{key:1,class:T(K(i).e(`separator`)),role:`presentation`},s(K(r)?.separator),3))],2))}}),Xo=fe(Jo,{BreadcrumbItem:Yo}),Zo=me(Yo),Qo=fe(Nt),$o=R({modelValue:{type:Date},range:{type:h(Array),validator:e=>L(e)&&e.length===2&&e.every(e=>l(e))},controllerType:{type:String,values:[`button`,`select`],default:`button`},formatter:{type:h(Function)}}),es={[Kt]:e=>l(e),[Wt]:e=>l(e)},ts=(e,t)=>{let n=e.subtract(1,`month`).endOf(`month`).date();return tn(t).map((e,r)=>n-(t-r-1))},ns=e=>tn(e.daysInMonth()).map((e,t)=>t+1),rs=e=>tn(e.length/7).map(t=>{let n=t*7;return e.slice(n,n+7)}),is=R({selectedDay:{type:h(Object)},range:{type:h(Array)},date:{type:h(Object),required:!0},hideHeader:{type:Boolean}}),as={pick:e=>m(e)},os=y($t(),1),ss=y(nn(),1),cs=(e,t)=>{os.default.extend(ss.default);let n=os.default.localeData().firstDayOfWeek(),{t:r,lang:i}=on(),a=(0,os.default)().locale(i.value),o=B(()=>!!e.range&&!!e.range.length),s=B(()=>{let t=[];if(o.value){let[n,r]=e.range,i=tn(r.date()-n.date()+1).map(e=>({text:n.date()+e,type:`current`})),a=i.length%7;a=a===0?0:7-a;let o=tn(a).map((e,t)=>({text:t+1,type:`next`}));t=i.concat(o)}else{let r=e.date.startOf(`month`).day(),i=ts(e.date,(r-n+7)%7).map(e=>({text:e,type:`prev`})),a=ns(e.date).map(e=>({text:e,type:`current`}));t=[...i,...a];let o=tn(7-(t.length%7||7)).map((e,t)=>({text:t+1,type:`next`}));t=t.concat(o)}return rs(t)}),c=B(()=>{let e=n;return e===0?an.map(e=>r(`el.datepicker.weeks.${e}`)):an.slice(e).concat(an.slice(0,e)).map(e=>r(`el.datepicker.weeks.${e}`))}),l=(t,n)=>{switch(n){case`prev`:return e.date.startOf(`month`).subtract(1,`month`).date(t);case`next`:return e.date.startOf(`month`).add(1,`month`).date(t);case`current`:return e.date.date(t)}};return{now:a,isInRange:o,rows:s,weekDays:c,getFormattedDate:l,handlePickDay:({text:e,type:n})=>{t(`pick`,l(e,n))},getSlotData:({text:t,type:n})=>{let r=l(t,n);return{isSelected:r.isSame(e.selectedDay),type:`${n}-month`,day:r.format(Zt),date:r.toDate()}}}},ls={key:0},us=[`onClick`],ds=Se({name:`DateTable`,__name:`date-table`,props:is,emits:as,setup(e,{expose:t,emit:n}){let r=e,{isInRange:i,now:a,rows:o,weekDays:c,getFormattedDate:l,handlePickDay:d,getSlotData:f}=cs(r,n),p=u(`calendar-table`),m=u(`calendar-day`),h=({text:e,type:t})=>{let n=[t];if(t===`current`){let i=l(e,t);i.isSame(r.selectedDay,`day`)&&n.push(m.is(`selected`)),i.isSame(a,`day`)&&n.push(m.is(`today`))}return n};return t({getFormattedDate:l}),(t,n)=>(k(),U(`table`,{class:T([K(p).b(),K(p).is(`range`,K(i))]),cellspacing:`0`,cellpadding:`0`},[e.hideHeader?V(`v-if`,!0):(k(),U(`thead`,ls,[G(`tr`,null,[(k(!0),U(ve,null,_(K(c),e=>(k(),U(`th`,{key:e,scope:`col`},s(e),1))),128))])])),G(`tbody`,null,[(k(!0),U(ve,null,_(K(o),(n,r)=>(k(),U(`tr`,{key:r,class:T({[K(p).e(`row`)]:!0,[K(p).em(`row`,`hide-border`)]:r===0&&e.hideHeader})},[(k(!0),U(ve,null,_(n,(e,n)=>(k(),U(`td`,{key:n,class:T(h(e)),onClick:t=>K(d)(e)},[G(`div`,{class:T(K(m).b())},[x(t.$slots,`date-cell`,{data:K(f)(e)},()=>[G(`span`,null,s(e.text),1)])],2)],10,us))),128))],2))),128))])],2))}}),fs=(e,t)=>{let n=e.endOf(`month`),r=t.startOf(`month`),i=n.isSame(r,`week`)?r.add(1,`week`):r;return[[e,n],[i.startOf(`week`),t]]},ps=(e,t)=>{let n=e.endOf(`month`),r=e.add(1,`month`).startOf(`month`),i=n.isSame(r,`week`)?r.add(1,`week`):r,a=i.endOf(`month`),o=t.startOf(`month`),s=a.isSame(o,`week`)?o.add(1,`week`):o;return[[e,n],[i.startOf(`week`),a],[s.startOf(`week`),t]]},ms=(e,t,n)=>{let{lang:r}=on(),i=H(),a=(0,os.default)().locale(r.value),o=B({get(){return e.modelValue?c.value:i.value},set(e){if(!e)return;i.value=e;let n=e.toDate();t(Wt,n),t(Kt,n)}}),s=B(()=>{if(!e.range||!L(e.range)||e.range.length!==2||e.range.some(e=>!l(e)))return[];let[t,i]=e.range.map(e=>(0,os.default)(e).locale(r.value));return t.isAfter(i)?(On(n,`end time should be greater than start time`),[]):t.isSame(i,`month`)||t.add(1,`month`).isSame(i,`month`)?m(t,i):(On(n,`start time and end time interval must not exceed two months`),[])}),c=B(()=>e.modelValue?(0,os.default)(e.modelValue).locale(r.value):o.value||(s.value.length?s.value[0][0]:a)),u=B(()=>c.value.subtract(1,`month`).date(1)),d=B(()=>c.value.add(1,`month`).date(1)),f=B(()=>c.value.subtract(1,`year`).date(1)),p=B(()=>c.value.add(1,`year`).date(1)),m=(e,t)=>{let r=e.startOf(`week`),i=t.endOf(`week`),a=r.get(`month`),o=i.get(`month`);return a===o?[[r,i]]:(a+1)%12===o?fs(r,i):a+2===o||(a+1)%11===o?ps(r,i):(On(n,`start time and end time interval must not exceed two months`),[])},h=e=>{o.value=e},g=e=>{let t={"prev-month":u.value,"next-month":d.value,"prev-year":f.value,"next-year":p.value,today:a}[e];t.isSame(c.value,`day`)||h(t)};return{calculateValidatedDateRange:m,date:c,realSelectedDay:o,pickDay:h,selectDate:g,validatedRange:s,handleDateChange:e=>{e===`today`?g(`today`):h(e)}}},hs=R({date:{type:h(Object),required:!0},formatter:{type:h(Function)}}),gs=Se({name:`SelectController`,__name:`select-controller`,props:hs,emits:{"date-change":e=>m(e)||D(e)},setup(e,{emit:t}){let n=e,r=t,i=u(`calendar-select`),{t:a,lang:o}=on(),c=Array.from({length:12},(e,t)=>{let r=t+1;return{value:r,label:qe(n.formatter)?n.formatter(r,`month`):r}}),l=B(()=>n.date.year()),d=B(()=>n.date.month()+1),f=B(()=>{let e=[];for(let t=-10;t<10;t++){let r=l.value+t;if(r>0){let t=qe(n.formatter)?n.formatter(r,`year`):r;e.push({value:r,label:t})}}return e}),p=e=>{r(`date-change`,(0,os.default)(new Date(e,d.value-1,1)).locale(o.value))},m=e=>{r(`date-change`,(0,os.default)(new Date(l.value,e-1,1)).locale(o.value))},h=()=>{r(`date-change`,`today`)};return(e,t)=>(k(),U(ve,null,[W(K(nr),{"model-value":l.value,size:`small`,class:T(K(i).e(`year`)),"validate-event":!1,options:f.value,onChange:p},null,8,[`model-value`,`class`,`options`]),W(K(nr),{"model-value":d.value,size:`small`,class:T(K(i).e(`month`)),"validate-event":!1,options:K(c),onChange:m},null,8,[`model-value`,`class`,`options`]),W(K(Kr),{size:`small`,onClick:h},{default:S(()=>[Pe(s(K(a)(`el.datepicker.today`)),1)]),_:1})],64))}}),_s=`ElCalendar`,vs=fe(Se({name:_s,__name:`calendar`,props:$o,emits:es,setup(e,{expose:t,emit:n}){let r=u(`calendar`),{calculateValidatedDateRange:i,date:a,pickDay:o,realSelectedDay:l,selectDate:d,validatedRange:f,handleDateChange:p}=ms(e,n,_s),{t:m}=on(),h=B(()=>{let e=`el.datepicker.month${a.value.format(`M`)}`;return`${a.value.year()} ${m(`el.datepicker.year`)} ${m(e)}`});return t({selectedDay:l,pickDay:o,selectDate:d,calculateValidatedDateRange:i}),(t,n)=>(k(),U(`div`,{class:T(K(r).b())},[G(`div`,{class:T(K(r).e(`header`))},[x(t.$slots,`header`,{date:h.value},()=>[G(`div`,{class:T(K(r).e(`title`))},s(h.value),3),K(f).length===0&&e.controllerType===`button`?(k(),U(`div`,{key:0,class:T(K(r).e(`button-group`))},[W(K(Wr),null,{default:S(()=>[W(K(Kr),{size:`small`,onClick:n[0]||=e=>K(d)(`prev-month`)},{default:S(()=>[Pe(s(K(m)(`el.datepicker.prevMonth`)),1)]),_:1}),W(K(Kr),{size:`small`,onClick:n[1]||=e=>K(d)(`today`)},{default:S(()=>[Pe(s(K(m)(`el.datepicker.today`)),1)]),_:1}),W(K(Kr),{size:`small`,onClick:n[2]||=e=>K(d)(`next-month`)},{default:S(()=>[Pe(s(K(m)(`el.datepicker.nextMonth`)),1)]),_:1})]),_:1})],2)):K(f).length===0&&e.controllerType===`select`?(k(),U(`div`,{key:1,class:T(K(r).e(`select-controller`))},[W(gs,{date:K(a),formatter:e.formatter,onDateChange:K(p)},null,8,[`date`,`formatter`,`onDateChange`])],2)):V(`v-if`,!0)])],2),K(f).length===0?(k(),U(`div`,{key:0,class:T(K(r).e(`body`))},[W(ds,{date:K(a),"selected-day":K(l),onPick:K(o)},_e({_:2},[t.$slots[`date-cell`]?{name:`date-cell`,fn:S(e=>[x(t.$slots,`date-cell`,te(We(e)))]),key:`0`}:void 0]),1032,[`date`,`selected-day`,`onPick`])],2)):(k(),U(`div`,{key:1,class:T(K(r).e(`body`))},[(k(!0),U(ve,null,_(K(f),(e,n)=>(k(),q(ds,{key:n,date:e[0],"selected-day":K(l),range:e,"hide-header":n!==0,onPick:K(o)},_e({_:2},[t.$slots[`date-cell`]?{name:`date-cell`,fn:S(e=>[x(t.$slots,`date-cell`,c({ref_for:!0},e))]),key:`0`}:void 0]),1032,[`date`,`selected-day`,`range`,`hide-header`,`onPick`]))),128))],2))],2))}})),ys=R({modelValue:{type:h([Number,String,Array,Object])},options:{type:h(Array),default:()=>[]},props:{type:h(Object),default:()=>({})},virtualScroll:Boolean,itemSize:{type:Number,default:34},height:{type:Number,default:204}}),bs={expandTrigger:`click`,multiple:!1,checkStrictly:!1,emitPath:!0,lazy:!1,lazyLoad:Me,value:`value`,label:`label`,children:`children`,leaf:`leaf`,disabled:`disabled`,hoverThreshold:500,checkOnClickNode:!1,checkOnClickLeaf:!0,showPrefix:!0},xs=R({...ys,border:{type:Boolean,default:!0},renderLabel:{type:Function}}),Ss=e=>!0,Cs={[Kt]:Ss,[Mt]:Ss,close:()=>!0,"expand-change":e=>e},ws=e=>B(()=>({...bs,...e.props})),Ts=`itemRendered`,Es=`scroll`,Ds=`end-reached`,Os=`forward`,ks=`backward`,As=`auto`,js=`start`,Ms=`center`,Ns=`horizontal`,Ps=`vertical`,Fs=`negative`,Is=`positive-ascending`,Ls=`positive-descending`,Rs={[Ns]:`left`,[Ps]:`top`},zs=Je({type:h([Number,Function]),required:!0}),Bs=Je({type:Number}),Vs=Je({type:Number,default:2}),Hs=Je({type:String,values:[`ltr`,`rtl`],default:`ltr`}),Us=Je({type:Number,default:0}),Ws=Je({type:Number,required:!0}),Gs=Je({type:String,values:[`horizontal`,`vertical`],default:Ps}),Ks=R({className:{type:String,default:``},containerElement:{type:h([String,Object]),default:`div`},data:{type:h(Array),default:()=>Lt([])},direction:Hs,height:{type:[String,Number],required:!0},innerElement:{type:[String,Object],default:`div`},innerProps:{type:h(Object),default:()=>({})},style:{type:h([Object,String,Array,Boolean]),default:void 0},useIsScrolling:Boolean,width:{type:[Number,String],required:!1},innerWidth:{type:[Number,String],required:!1},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),qs=R({cache:Vs,estimatedItemSize:Bs,layout:Gs,initScrollOffset:Us,total:Ws,itemSize:zs,...Ks}),Js={type:Number,default:6},Ys={type:Number,default:0},Xs={type:Number,default:2},Zs=R({columnCache:Vs,columnWidth:zs,estimatedColumnWidth:Bs,estimatedRowHeight:Bs,initScrollLeft:Us,initScrollTop:Us,itemKey:{type:h(Function),default:({columnIndex:e,rowIndex:t})=>`${t}:${e}`},rowCache:Vs,rowHeight:zs,totalColumn:Ws,totalRow:Ws,hScrollbarSize:Js,vScrollbarSize:Js,scrollbarStartGap:Ys,scrollbarEndGap:Xs,role:String,...Ks}),Qs=R({alwaysOn:Boolean,class:String,layout:Gs,total:Ws,ratio:{type:Number,required:!0},clientSize:{type:Number,required:!0},scrollFrom:{type:Number,required:!0},scrollbarSize:Js,startGap:Ys,endGap:Xs,visible:Boolean}),$s=(e,t)=>ee===`ltr`||e===`rtl`||e===`horizontal`,tc=e=>e===`rtl`,nc=null;function rc(e=!1){if(nc===null||e){let e=document.createElement(`div`),t=e.style;t.width=`50px`,t.height=`50px`,t.overflow=`scroll`,t.direction=`rtl`;let n=document.createElement(`div`),r=n.style;return r.width=`100px`,r.height=`100px`,e.appendChild(n),document.body.appendChild(e),e.scrollLeft>0?nc=Ls:(e.scrollLeft=1,nc=e.scrollLeft===0?Fs:Is),document.body.removeChild(e),nc}return nc}function ic({move:e,size:t,bar:n},r){let i={},a=`translate${n.axis}(${e}px)`;return i[n.size]=t,i.transform=a,r===`horizontal`?i.height=`100%`:i.width=`100%`,i}var ac=Number.isNaN||function(e){return typeof e==`number`&&e!==e};function oc(e,t){return!!(e===t||ac(e)&&ac(t))}function sc(e,t){if(e.length!==t.length)return!1;for(var n=0;n{let e=xe().proxy.$props;return B(()=>{let t=(e,t,n)=>({});return e.perfMode?fn(t):cc(t)})},uc=Se({name:`ElVirtualScrollBar`,props:Qs,emits:[`scroll`,`start-move`,`stop-move`],setup(e,{emit:t}){let n=B(()=>e.startGap+e.endGap),r=u(`virtual-scrollbar`),i=u(`scrollbar`),a=H(),o=H(),s=null,c=null,l=Ne({isDragging:!1,traveled:0}),f=B(()=>jr[e.layout]),p=B(()=>e.clientSize-K(n)),m=B(()=>({position:`absolute`,width:`${e.layout===`horizontal`?p.value:e.scrollbarSize}px`,height:`${e.layout===`horizontal`?e.scrollbarSize:p.value}px`,[Rs[e.layout]]:`2px`,right:`2px`,bottom:`2px`,borderRadius:`4px`})),h=B(()=>{let t=e.ratio;if(t>=100)return 1/0;if(t>=50)return t*p.value/100;let n=p.value/3;return Math.floor(Math.min(Math.max(t*p.value/100,20),n))}),g=B(()=>{if(!Number.isFinite(h.value))return{display:`none`};let t=`${h.value}px`;return ic({bar:f.value,size:t,move:l.traveled},e.layout)}),_=B(()=>Math.ceil(e.clientSize-h.value-K(n))),v=()=>{window.addEventListener(`mousemove`,S),window.addEventListener(`mouseup`,x);let e=K(o);e&&(c=document.onselectstart,document.onselectstart=()=>!1,e.addEventListener(`touchmove`,S,{passive:!0}),e.addEventListener(`touchend`,x))},y=()=>{window.removeEventListener(`mousemove`,S),window.removeEventListener(`mouseup`,x),document.onselectstart=c,c=null;let e=K(o);e&&(e.removeEventListener(`touchmove`,S),e.removeEventListener(`touchend`,x))},b=e=>{e.stopImmediatePropagation(),!(e.ctrlKey||[1,2].includes(e.button))&&(l.isDragging=!0,l[f.value.axis]=e.currentTarget[f.value.offset]-(e[f.value.client]-e.currentTarget.getBoundingClientRect()[f.value.direction]),t(`start-move`),v())},x=()=>{l.isDragging=!1,l[f.value.axis]=0,t(`stop-move`),y()},S=e=>{let{isDragging:n}=l;if(!n||!o.value||!a.value)return;let r=l[f.value.axis];if(!r)return;zt(s);let i=(a.value.getBoundingClientRect()[f.value.direction]-e[f.value.client])*-1-(o.value[f.value.offset]-r);s=xt(()=>{l.traveled=Math.max(0,Math.min(i,_.value)),t(`scroll`,i,_.value)})},w=e=>{let n=Math.abs(e.target.getBoundingClientRect()[f.value.direction]-e[f.value.client])-o.value[f.value.offset]/2;l.traveled=Math.max(0,Math.min(n,_.value)),t(`scroll`,n,_.value)};return C(()=>e.scrollFrom,e=>{l.isDragging||(l.traveled=Math.ceil(e*_.value))}),d(()=>{y()}),()=>Y(`div`,{role:`presentation`,ref:a,class:[r.b(),e.class,(e.alwaysOn||l.isDragging)&&`always-on`],style:m.value,onMousedown:lt(w,[`stop`,`prevent`]),onTouchstartPrevent:b},Y(`div`,{ref:o,class:i.e(`thumb`),style:g.value,onMousedown:b},[]))}}),dc=({name:e,getOffset:t,getItemSize:n,getItemOffset:r,getEstimatedTotalSize:o,getStartIndexForOffset:s,getStopIndexForStartIndex:l,initCache:d,clearCache:f,validateProps:p})=>Se({name:e??`ElVirtualList`,props:qs,emits:[Ts,Es,Ds],setup(e,{emit:c,expose:m}){p(e);let h=xe(),g=u(`vl`),_=H(d(e,h)),v=lc(),y=H(),b=H(),x=H(),S=H({isScrolling:!1,scrollDir:Os,scrollOffset:a(e.initScrollOffset)?e.initScrollOffset:0,updateRequested:!1,isScrollbarDragging:!1}),w=B(()=>{let{total:t,cache:n}=e,{isScrolling:r,scrollDir:i,scrollOffset:a}=K(S);if(t===0)return[0,0,0,0];let o=s(e,a,K(_)),c=l(e,o,a,K(_)),u=!r||i===`backward`?Math.max(1,n):1,d=!r||i===`forward`?Math.max(1,n):1;return[Math.max(0,o-u),Math.max(0,Math.min(t-1,c+d)),o,c]}),T=B(()=>o(e,K(_))),D=B(()=>ec(e.layout)),O=B(()=>[{position:`relative`,[`overflow-${D.value?`x`:`y`}`]:`scroll`,WebkitOverflowScrolling:`touch`,willChange:`transform`},{direction:e.direction,height:a(e.height)?`${e.height}px`:e.height,width:a(e.width)?`${e.width}px`:e.width},e.style]),k=B(()=>{let t=K(T),n=K(D),r=e.innerWidth;return{height:n?`100%`:`${t}px`,pointerEvents:K(S).isScrolling?`none`:void 0,width:n?`${t}px`:r===void 0?`100%`:a(r)?`${r}px`:r,margin:0,boxSizing:`border-box`}}),A=B(()=>D.value?e.width:e.height),j=B(()=>Math.max(0,T.value-A.value)),M=e=>qn(e,0,j.value),N=e=>({start:!vr(e,0,1),end:!vr(j.value,e,1)}),P=B(()=>M(S.value.scrollOffset)),ee=B(()=>N(P.value)),F=ee.value,{onWheel:I}=$r({atStartEdge:B(()=>ee.value.start),atEndEdge:B(()=>ee.value.end),layout:B(()=>e.layout)},e=>{x.value.onMouseUp?.(),z(Math.min(S.value.scrollOffset+e,j.value))});_t(y,`wheel`,I,{passive:!1});let te=()=>{let{total:t}=e;if(t>0){let[e,t,n,r]=K(w);c(Ts,e,t,n,r)}let{scrollDir:n,scrollOffset:r,updateRequested:i}=K(S);c(Es,n,r,i)},ne=(t,n)=>{let r=N(n),i=e.direction===`rtl`?`left`:`right`,a=e.direction===`rtl`?`right`:`left`;t===`forward`&&r.end&&!F.end&&c(Ds,D.value?i:`bottom`),t===`backward`&&r.start&&!F.start&&c(Ds,D.value?a:`top`),F=r},re=(e,{isScrolling:t,updateRequested:n})=>{let r=K(S),i=Math.max(e,0);if(i===r.scrollOffset)return;let a=$s(r.scrollOffset,i);S.value={...r,isScrolling:t,scrollDir:a,scrollOffset:i,updateRequested:n},ne(a,M(i)),J(le)},L=e=>{let{clientHeight:t,scrollHeight:n,scrollTop:r}=e.currentTarget;K(S).scrollOffset!==r&&re(Math.min(r,n-t),{isScrolling:!0,updateRequested:!1})},ie=t=>{let{clientWidth:n,scrollLeft:r,scrollWidth:i}=t.currentTarget;if(K(S).scrollOffset===r)return;let{direction:a}=e,o=r;if(a===`rtl`)switch(rc()){case Fs:o=-r;break;case Ls:o=i-n-r;break}re(Math.min(o,i-n),{isScrolling:!0,updateRequested:!1})},R=e=>{K(D)?ie(e):L(e),te()},oe=(e,t)=>{let n=j.value/t*e;z(Math.min(j.value,n))},z=e=>{re(e,{isScrolling:K(S).isScrolling,updateRequested:!0})},se=(n,r=As)=>{let{scrollOffset:i}=K(S);n=Math.max(0,Math.min(n,e.total-1)),z(t(e,n,r,i,K(_)))},ce=t=>{let{direction:i,itemSize:a,layout:o}=e,s=v.value(f&&a,f&&o,f&&i),c;if(Ge(s,String(t)))c=s[t];else{let a=r(e,t,K(_)),o=n(e,t,K(_)),l=K(D),u=i===`rtl`,d=l?a:0;s[t]=c={position:`absolute`,left:u?void 0:`${d}px`,right:u?`${d}px`:void 0,top:l?0:`${a}px`,height:l?`100%`:`${o}px`,width:l?`${o}px`:`100%`}}return c},le=()=>{S.value.isScrolling=!1,J(()=>{v.value(-1,null,null)})},ue=()=>{let e=y.value;e&&(e.scrollTop=0)};i(()=>{if(!cn)return;let{initScrollOffset:t}=e,n=K(y);a(t)&&n&&(K(D)?n.scrollLeft=t:n.scrollTop=t),te()}),E(()=>{let{direction:t,layout:n}=e,{scrollOffset:r,updateRequested:i}=K(S),a=K(y);if(i&&a)if(n===`horizontal`)if(t===`rtl`)switch(rc()){case Fs:a.scrollLeft=-r;break;case Is:a.scrollLeft=r;break;default:{let{clientWidth:e,scrollWidth:t}=a;a.scrollLeft=t-e-r;break}}else a.scrollLeft=r;else a.scrollTop=r}),ae(()=>{K(y).scrollTop=K(S).scrollOffset}),C(j,()=>{F=ee.value});let de={ns:g,clientSize:A,estimatedTotalSize:T,windowStyle:O,windowRef:y,innerRef:b,innerStyle:k,itemsToRender:w,scrollbarRef:x,states:S,getItemStyle:ce,onScroll:R,onScrollbarScroll:oe,onWheel:I,scrollTo:z,scrollToItem:se,resetScrollTop:ue};return m({windowRef:y,innerRef:b,getItemStyleCache:v,scrollTo:z,scrollToItem:se,resetScrollTop:ue,states:S}),de},render(e){let{$slots:t,className:n,clientSize:r,containerElement:i,data:a,getItemStyle:o,innerElement:s,itemsToRender:l,innerStyle:u,layout:d,scrollbarAlwaysOn:f,total:p,onScroll:m,onScrollbarScroll:h,states:g,useIsScrolling:_,windowStyle:v,ns:y}=e,[b,x]=l,S=et(i),C=et(s),w=[];if(p>0)for(let e=b;e<=x;e++)w.push(Y(ve,{key:e},t.default?.({data:a,index:e,isScrolling:_?g.isScrolling:void 0,style:o(e)})));let T=[Y(C,c(e.innerProps,{style:u,ref:`innerRef`}),D(C)?w:{default:()=>w})],E=Y(uc,{ref:`scrollbarRef`,clientSize:r,layout:d,onScroll:h,ratio:r*100/this.estimatedTotalSize,scrollFrom:g.scrollOffset/(this.estimatedTotalSize-r),total:p,alwaysOn:f}),O=Y(S,{class:[y.e(`window`),n],style:v,onScroll:m,ref:`windowRef`,key:0},D(S)?[T]:{default:()=>[T]});return Y(`div`,{key:0,class:[y.e(`wrapper`),f?`always-on`:``]},[O,E])}}),fc=dc({name:`ElFixedSizeList`,getItemOffset:({itemSize:e},t)=>t*e,getItemSize:({itemSize:e})=>e,getEstimatedTotalSize:({total:e,itemSize:t})=>t*e,getOffset:({height:e,total:t,itemSize:n,layout:r,width:i},a,o,s)=>{let c=ec(r)?i:e;D(c)&&bn(`[ElVirtualList]`,` - You should set - width/height - to number when your layout is - horizontal/vertical - `);let l=Math.max(0,t*n-c),u=Math.min(l,a*n),d=Math.max(0,(a+1)*n-c);switch(o===`smart`&&(o=s>=d-c&&s<=u+c?As:Ms),o){case js:return u;case`end`:return d;case Ms:{let e=Math.round(d+(u-d)/2);return el+Math.floor(c/2)?l:e}case As:default:return s>=d&&s<=u?s:sMath.max(0,Math.min(e-1,Math.floor(n/t))),getStopIndexForStartIndex:({height:e,total:t,itemSize:n,layout:r,width:i},a,o)=>{let s=a*n,c=ec(r)?i:e,l=Math.ceil((c+o-s)/n);return Math.max(0,Math.min(t-1,a+l-1))},initCache(){},clearCache:!0,validateProps(){}}),pc=`ElDynamicSizeList`,mc=(e,t,n)=>{let{itemSize:r}=e,{items:i,lastVisitedIndex:a}=n;if(t>a){let e=0;if(a>=0){let t=i[a];e=t.offset+t.size}for(let n=a+1;n<=t;n++){let t=r(n);i[n]={offset:e,size:t},e+=t}n.lastVisitedIndex=t}return i[t]},hc=(e,t,n)=>{let{items:r,lastVisitedIndex:i}=t;return(i>0?r[i].offset:0)>=n?gc(e,t,0,i,n):_c(e,t,Math.max(0,i),n)},gc=(e,t,n,r,i)=>{for(;n<=r;){let a=n+Math.floor((r-n)/2),o=mc(e,a,t).offset;if(o===i)return a;oi&&(r=a-1)}return Math.max(0,n-1)},_c=(e,t,n,r)=>{let{total:i}=e,a=1;for(;n{let i=0;if(r>=e&&(r=e-1),r>=0){let e=t[r];i=e.offset+e.size}let a=(e-r-1)*n;return i+a},yc=dc({name:`ElDynamicSizeList`,getItemOffset:(e,t,n)=>mc(e,t,n).offset,getItemSize:(e,t,{items:n})=>n[t].size,getEstimatedTotalSize:vc,getOffset:(e,t,n,r,i)=>{let{height:a,layout:o,width:s}=e,c=ec(o)?s:a,l=mc(e,t,i),u=vc(e,i),d=Math.max(0,Math.min(u-c,l.offset)),f=Math.max(0,l.offset-c+l.size);switch(n===`smart`&&(n=r>=f-c&&r<=d+c?As:Ms),n){case js:return d;case`end`:return f;case Ms:return Math.round(f+(d-f)/2);case As:default:return r>=f&&r<=d?r:rhc(e,n,t),getStopIndexForStartIndex:(e,t,n,r)=>{let{height:i,total:a,layout:o,width:s}=e,c=ec(o)?s:i,l=mc(e,t,r),u=n+c,d=l.offset+l.size,f=t;for(;f{n.lastVisitedIndex=Math.min(n.lastVisitedIndex,e-1),t.exposed?.getItemStyleCache(-1),r&&t.proxy?.$forceUpdate()},n},clearCache:!1,validateProps:({itemSize:e})=>{typeof e!=`function`&&bn(pc,` - itemSize is required as function, but the given value was ${typeof e} - `)}}),bc=({atXEndEdge:e,atXStartEdge:t,atYEndEdge:n,atYStartEdge:r},i)=>{let a=null,o=0,s=0,c=(i,a)=>{let o=i<0&&t.value||i>0&&e.value,s=a<0&&r.value||a>0&&n.value;return o||s};return{hasReachedEdge:c,onWheel:e=>{zt(a);let t=e.deltaX,n=e.deltaY;if(Math.abs(t)>Math.abs(n)?n=0:t=0,e.shiftKey&&n!==0&&(t=n,n=0),c(t,n)){e.deltaX!==0&&t===0&&e.preventDefault();return}o+=t,s+=n,e.preventDefault(),a=xt(()=>{i(o,s),o=0,s=0})}}},xc=(e,t,n,r,i,a,o)=>{let s=H(0),c=H(0),l,u=0,d=0,f=e=>{zt(l),s.value=e.touches[0].clientX,c.value=e.touches[0].clientY,u=0,d=0},p=e=>{e.preventDefault(),zt(l),u+=s.value-e.touches[0].clientX,d+=c.value-e.touches[0].clientY,s.value=e.touches[0].clientX,c.value=e.touches[0].clientY,l=xt(()=>{let e=r.value-K(a),s=i.value-K(o);n({scrollLeft:Math.min(t.value.scrollLeft+u,e),scrollTop:Math.min(t.value.scrollTop+d,s)}),u=0,d=0})};return _t(e,`touchstart`,f,{passive:!0}),_t(e,`touchmove`,p,{passive:!1}),{touchStartX:s,touchStartY:c,handleTouchStart:f,handleTouchMove:p}},Sc=({name:e,clearCache:t,getColumnPosition:n,getColumnStartIndexForOffset:r,getColumnStopIndexForStartIndex:o,getEstimatedTotalHeight:s,getEstimatedTotalWidth:l,getColumnOffset:d,getRowOffset:f,getRowPosition:p,getRowStartIndexForOffset:m,getRowStopIndexForStartIndex:h,initCache:g,injectToInstance:_,validateProps:v})=>Se({name:e??`ElVirtualList`,props:Zs,emits:[Ts,Es],setup(e,{emit:y,expose:b,slots:x}){let S=u(`vl`);v(e);let C=xe(),w=H(g(e,C));_?.(C,w);let T=H(),E=H(),O=H(),k=H(),A=H({isScrolling:!1,scrollLeft:a(e.initScrollLeft)?e.initScrollLeft:0,scrollTop:a(e.initScrollTop)?e.initScrollTop:0,updateRequested:!1,xAxisScrollDir:Os,yAxisScrollDir:Os}),j=lc(),M=B(()=>Number.parseInt(`${e.height}`,10)),N=B(()=>Number.parseInt(`${e.width}`,10)),P=B(()=>{let{totalColumn:t,totalRow:n,columnCache:i}=e,{isScrolling:a,xAxisScrollDir:s,scrollLeft:c}=K(A);if(t===0||n===0)return[0,0,0,0];let l=r(e,c,K(w)),u=o(e,l,c,K(w)),d=!a||s===`backward`?Math.max(1,i):1,f=!a||s===`forward`?Math.max(1,i):1;return[Math.max(0,l-d),Math.max(0,Math.min(t-1,u+f)),l,u]}),ee=B(()=>{let{totalColumn:t,totalRow:n,rowCache:r}=e,{isScrolling:i,yAxisScrollDir:a,scrollTop:o}=K(A);if(t===0||n===0)return[0,0,0,0];let s=m(e,o,K(w)),c=h(e,s,o,K(w)),l=!i||a===`backward`?Math.max(1,r):1,u=!i||a===`forward`?Math.max(1,r):1;return[Math.max(0,s-l),Math.max(0,Math.min(n-1,c+u)),s,c]}),F=B(()=>s(e,K(w))),I=B(()=>l(e,K(w))),te=B(()=>[{position:`relative`,overflow:`hidden`,WebkitOverflowScrolling:`touch`,willChange:`transform`},{direction:e.direction,height:a(e.height)?`${e.height}px`:e.height,width:a(e.width)?`${e.width}px`:e.width},e.style??{}]),ne=B(()=>{let e=`${K(I)}px`;return{height:`${K(F)}px`,pointerEvents:K(A).isScrolling?`none`:void 0,width:e,margin:0,boxSizing:`border-box`}}),re=()=>{let{totalColumn:t,totalRow:n}=e;if(t>0&&n>0){let[e,t,n,r]=K(P),[i,a,o,s]=K(ee);y(Ts,{columnCacheStart:e,columnCacheEnd:t,rowCacheStart:i,rowCacheEnd:a,columnVisibleStart:n,columnVisibleEnd:r,rowVisibleStart:o,rowVisibleEnd:s})}let{scrollLeft:r,scrollTop:i,updateRequested:a,xAxisScrollDir:o,yAxisScrollDir:s}=K(A);y(Es,{xAxisScrollDir:o,scrollLeft:r,yAxisScrollDir:s,scrollTop:i,updateRequested:a})},L=t=>{let{clientHeight:n,clientWidth:r,scrollHeight:i,scrollLeft:a,scrollTop:o,scrollWidth:s}=t.currentTarget,c=K(A);if(c.scrollTop===o&&c.scrollLeft===a)return;let l=a;if(tc(e.direction))switch(rc()){case Fs:l=-a;break;case Ls:l=s-r-a;break}A.value={...c,isScrolling:!0,scrollLeft:l,scrollTop:Math.max(0,Math.min(o,i-n)),updateRequested:!0,xAxisScrollDir:$s(c.scrollLeft,l),yAxisScrollDir:$s(c.scrollTop,o)},J(()=>fe()),pe(),re()},ie=(e,t)=>{let n=K(M),r=(F.value-n)/t*e;oe({scrollTop:Math.min(F.value-n,r)})},ae=(e,t)=>{let n=K(N),r=(I.value-n)/t*e;oe({scrollLeft:Math.min(I.value-n,r)})},{onWheel:R}=bc({atXStartEdge:B(()=>A.value.scrollLeft<=0),atXEndEdge:B(()=>A.value.scrollLeft>=I.value-K(N)),atYStartEdge:B(()=>A.value.scrollTop<=0),atYEndEdge:B(()=>A.value.scrollTop>=F.value-K(M))},(e,t)=>{E.value?.onMouseUp?.(),O.value?.onMouseUp?.();let n=K(N),r=K(M);oe({scrollLeft:Math.min(A.value.scrollLeft+e,I.value-n),scrollTop:Math.min(A.value.scrollTop+t,F.value-r)})});_t(T,`wheel`,R,{passive:!1});let oe=({scrollLeft:e=A.value.scrollLeft,scrollTop:t=A.value.scrollTop})=>{e=Math.max(e,0),t=Math.max(t,0);let n=K(A);(t!==n.scrollTop||e!==n.scrollLeft)&&(A.value={...n,xAxisScrollDir:$s(n.scrollLeft,e),yAxisScrollDir:$s(n.scrollTop,t),scrollLeft:e,scrollTop:t,updateRequested:!0},J(()=>fe()),pe(),re())},{touchStartX:z,touchStartY:se,handleTouchStart:ce,handleTouchMove:le}=xc(T,A,oe,I,F,N,M),ue=(t=0,n=0,r=As)=>{let i=K(A);n=Math.max(0,Math.min(n,e.totalColumn-1)),t=Math.max(0,Math.min(t,e.totalRow-1));let a=mt(S.namespace.value),o=K(w),c=s(e,o),u=l(e,o);oe({scrollLeft:d(e,n,r,i.scrollLeft,o,u>e.width?a:0),scrollTop:f(e,t,r,i.scrollTop,o,c>e.height?a:0)})},de=(r,i)=>{let{columnWidth:a,direction:o,rowHeight:s}=e,c=j.value(t&&a,t&&s,t&&o),l=`${r},${i}`;if(Ge(c,l))return c[l];{let[,t]=n(e,i,K(w)),a=K(w),s=tc(o),[u,d]=p(e,r,a),[f]=n(e,i,a);return c[l]={position:`absolute`,left:s?void 0:`${t}px`,right:s?`${t}px`:void 0,top:`${d}px`,height:`${u}px`,width:`${f}px`},c[l]}},fe=()=>{A.value.isScrolling=!1,J(()=>{j.value(-1,null,null)})};i(()=>{if(!cn)return;let{initScrollLeft:t,initScrollTop:n}=e,r=K(T);r&&(a(t)&&(r.scrollLeft=t),a(n)&&(r.scrollTop=n)),re()});let pe=()=>{let{direction:t}=e,{scrollLeft:n,scrollTop:r,updateRequested:i}=K(A),a=K(T);if(i&&a){if(t===`rtl`)switch(rc()){case Fs:a.scrollLeft=-n;break;case Is:a.scrollLeft=n;break;default:{let{clientWidth:e,scrollWidth:t}=a;a.scrollLeft=t-e-n;break}}else a.scrollLeft=Math.max(0,n);a.scrollTop=Math.max(0,r)}},{resetAfterColumnIndex:me,resetAfterRowIndex:V,resetAfter:he}=C.proxy;b({windowRef:T,innerRef:k,getItemStyleCache:j,touchStartX:z,touchStartY:se,handleTouchStart:ce,handleTouchMove:le,scrollTo:oe,scrollToItem:ue,states:A,resetAfterColumnIndex:me,resetAfterRowIndex:V,resetAfter:he});let ge=()=>{let{scrollbarAlwaysOn:t,scrollbarStartGap:n,scrollbarEndGap:r,totalColumn:i,totalRow:a}=e,o=K(N),s=K(M),c=K(I),l=K(F),{scrollLeft:u,scrollTop:d}=K(A);return{horizontalScrollbar:Y(uc,{ref:E,alwaysOn:t,startGap:n,endGap:r,class:S.e(`horizontal`),clientSize:o,layout:`horizontal`,onScroll:ae,ratio:o*100/c,scrollFrom:u/(c-o),total:a,visible:!0}),verticalScrollbar:Y(uc,{ref:O,alwaysOn:t,startGap:n,endGap:r,class:S.e(`vertical`),clientSize:s,layout:`vertical`,onScroll:ie,ratio:s*100/l,scrollFrom:d/(l-s),total:i,visible:!0})}},_e=()=>{let[t,n]=K(P),[r,i]=K(ee),{data:a,totalColumn:o,totalRow:s,useIsScrolling:c,itemKey:l}=e,u=[];if(s>0&&o>0)for(let e=r;e<=i;e++)for(let r=t;r<=n;r++){let t=l({columnIndex:r,data:a,rowIndex:e});u.push(Y(ve,{key:t},x.default?.({columnIndex:r,data:a,isScrolling:c?K(A).isScrolling:void 0,style:de(e,r),rowIndex:e})))}return u},ye=()=>{let t=et(e.innerElement),n=_e();return[Y(t,c(e.innerProps,{style:K(ne),ref:k}),D(t)?n:{default:()=>n})]};return()=>{let t=et(e.containerElement),{horizontalScrollbar:n,verticalScrollbar:r}=ge(),i=ye();return Y(`div`,{key:0,class:S.e(`wrapper`),role:e.role},[Y(t,{class:e.className,style:K(te),onScroll:L,ref:T},D(t)?i:{default:()=>i}),n,r])}}}),Cc=`ElFixedSizeGrid`,wc=Sc({name:`ElFixedSizeGrid`,getColumnPosition:({columnWidth:e},t)=>[e,t*e],getRowPosition:({rowHeight:e},t)=>[e,t*e],getEstimatedTotalHeight:({totalRow:e,rowHeight:t})=>t*e,getEstimatedTotalWidth:({totalColumn:e,columnWidth:t})=>t*e,getColumnOffset:({totalColumn:e,columnWidth:t,width:n},r,i,a,o,s)=>{n=Number(n);let c=Math.max(0,e*t-n),l=Math.min(c,r*t),u=Math.max(0,r*t-n+s+t);switch(i===`smart`&&(i=a>=u-n&&a<=l+n?As:Ms),i){case js:return l;case`end`:return u;case Ms:{let e=Math.round(u+(l-u)/2);return ec+Math.floor(n/2)?c:e}case As:default:return a>=u&&a<=l?a:u>l||a{t=Number(t);let c=Math.max(0,n*e-t),l=Math.min(c,r*e),u=Math.max(0,r*e-t+s+e);switch(i===`smart`&&(i=a>=u-t&&a<=l+t?As:Ms),i){case js:return l;case`end`:return u;case Ms:{let e=Math.round(u+(l-u)/2);return ec+Math.floor(t/2)?c:e}case As:default:return a>=u&&a<=l?a:u>l||aMath.max(0,Math.min(t-1,Math.floor(n/e))),getColumnStopIndexForStartIndex:({columnWidth:e,totalColumn:t,width:n},r,i)=>{let a=r*e,o=Math.ceil((n+i-a)/e);return Math.max(0,Math.min(t-1,r+o-1))},getRowStartIndexForOffset:({rowHeight:e,totalRow:t},n)=>Math.max(0,Math.min(t-1,Math.floor(n/e))),getRowStopIndexForStartIndex:({rowHeight:e,totalRow:t,height:n},r,i)=>{let a=r*e,o=Math.ceil((n+i-a)/e);return Math.max(0,Math.min(t-1,r+o-1))},initCache:()=>void 0,clearCache:!0,validateProps:({columnWidth:e,rowHeight:t})=>{a(e)||bn(Cc,` - "columnWidth" must be passed as number, - instead ${typeof e} was given. - `),a(t)||bn(Cc,` - "columnWidth" must be passed as number, - instead ${typeof t} was given. - `)}}),{max:Tc,min:Ec,floor:Dc}=Math,Oc=`ElDynamicSizeGrid`,kc={column:`columnWidth`,row:`rowHeight`},Ac={column:`lastVisitedColumnIndex`,row:`lastVisitedRowIndex`},jc=(e,t,n,r)=>{let[i,a,o]=[n[r],e[kc[r]],n[Ac[r]]];if(t>o){let e=0;if(o>=0){let t=i[o];e=t.offset+t.size}for(let n=o+1;n<=t;n++){let t=a(n);i[n]={offset:e,size:t},e+=t}n[Ac[r]]=t}return i[t]},Mc=(e,t,n,r,i,a)=>{for(;n<=r;){let o=n+Dc((r-n)/2),s=jc(e,o,t,a).offset;if(s===i)return o;s{let a=i===`column`?e.totalColumn:e.totalRow,o=1;for(;n{let[i,a]=[t[r],t[Ac[r]]];return(a>0?i[a].offset:0)>=n?Mc(e,t,0,a,n,r):Nc(e,t,Tc(0,a),n,r)},Fc=({totalRow:e},{estimatedRowHeight:t,lastVisitedRowIndex:n,row:r})=>{let i=0;if(n>=e&&(n=e-1),n>=0){let e=r[n];i=e.offset+e.size}let a=(e-n-1)*t;return i+a},Ic=({totalColumn:e},{column:t,estimatedColumnWidth:n,lastVisitedColumnIndex:r})=>{let i=0;if(r>e&&(r=e-1),r>=0){let e=t[r];i=e.offset+e.size}let a=(e-r-1)*n;return i+a},Lc={column:Ic,row:Fc},Rc=(e,t,n,r,i,a,o)=>{let[s,c]=[a===`row`?e.height:e.width,Lc[a]],l=jc(e,t,i,a),u=Tc(0,Ec(c(e,i)-s,l.offset)),d=Tc(0,l.offset-s+o+l.size);switch(n===`smart`&&(n=r>=d-s&&r<=u+s?As:Ms),n){case js:return u;case`end`:return d;case Ms:return Math.round(d+(u-d)/2);case As:default:return r>=d&&r<=u?r:d>u||r{let r=jc(e,t,n,`column`);return[r.size,r.offset]},getRowPosition:(e,t,n)=>{let r=jc(e,t,n,`row`);return[r.size,r.offset]},getColumnOffset:(e,t,n,r,i,a)=>Rc(e,t,n,r,i,`column`,a),getRowOffset:(e,t,n,r,i,a)=>Rc(e,t,n,r,i,`row`,a),getColumnStartIndexForOffset:(e,t,n)=>Pc(e,n,t,`column`),getColumnStopIndexForStartIndex:(e,t,n,r)=>{let i=jc(e,t,r,`column`),a=n+e.width,o=i.offset+i.size,s=t;for(;sPc(e,n,t,`row`),getRowStopIndexForStartIndex:(e,t,n,r)=>{let{totalRow:i,height:a}=e,o=jc(e,t,r,`row`),s=n+a,c=o.size+o.offset,l=t;for(;l{let n=({columnIndex:n,rowIndex:r},i)=>{i=A(i)?!0:i,a(n)&&(t.value.lastVisitedColumnIndex=Math.min(t.value.lastVisitedColumnIndex,n-1)),a(r)&&(t.value.lastVisitedRowIndex=Math.min(t.value.lastVisitedRowIndex,r-1)),e.exposed?.getItemStyleCache.value(-1,null,null),i&&e.proxy?.$forceUpdate()};Object.assign(e.proxy,{resetAfterColumnIndex:(e,t)=>{n({columnIndex:e},t)},resetAfterRowIndex:(e,t)=>{n({rowIndex:e},t)},resetAfter:n})},initCache:({estimatedColumnWidth:e=50,estimatedRowHeight:t=50})=>({column:{},estimatedColumnWidth:e,estimatedRowHeight:t,lastVisitedColumnIndex:-1,lastVisitedRowIndex:-1,row:{}}),clearCache:!1,validateProps:({columnWidth:e,rowHeight:t})=>{qe(e)||bn(Oc,` - "columnWidth" must be passed as function, - instead ${typeof e} was given. - `),qe(t)||bn(Oc,` - "rowHeight" must be passed as function, - instead ${typeof t} was given. - `)}}),Bc=Symbol();function Vc(e){return!!(L(e)?e.every(({type:e})=>e===n):e?.type===n)}var Hc=Se({name:`NodeContent`,props:{node:{type:Object,required:!0}},setup(e){let t=u(`cascader-node`),{renderLabelFn:n}=Xe(Bc),{node:r}=e,{data:i,label:a}=r,o=()=>{let e=n?.({node:r,data:i});return Vc(e)?a:e??a};return()=>W(`span`,{class:t.e(`label`)},[o()])}}),Uc=[`id`,`aria-haspopup`,`aria-owns`,`aria-expanded`,`tabindex`],Wc=Se({name:`ElCascaderNode`,__name:`node`,props:{node:{type:Object,required:!0},menuId:{type:String,required:!1}},emits:[`expand`],setup(e,{emit:t}){let n=e,i=t,a=Xe(Bc),o=u(`cascader-node`),s=B(()=>a.isHoverMenu),c=B(()=>a.config.multiple),l=B(()=>a.config.checkStrictly),d=B(()=>a.config.showPrefix),f=B(()=>a.checkedNodes[0]?.uid),p=B(()=>n.node.isDisabled),m=B(()=>n.node.isLeaf),h=B(()=>l.value&&!m.value||!p.value),g=B(()=>v(a.expandingNode)),_=B(()=>l.value&&a.checkedNodes.some(v)),v=e=>{let{level:t,uid:r}=n.node;return e?.pathNodes[t-1]?.uid===r},y=()=>{g.value||a.expandNode(n.node)},b=e=>{let{node:t}=n;e!==t.checked&&a.handleCheckChange(t,e)},x=()=>{a.lazyLoad(n.node,()=>{m.value||y()})},C=e=>{s.value&&(w(),!m.value&&i(`expand`,e))},w=()=>{let{node:e}=n;!h.value||e.loading||(e.loaded?y():x())},E=()=>{m.value&&!p.value&&!l.value&&!c.value?O(!0):(a.config.checkOnClickNode&&(c.value||l.value)||m.value&&a.config.checkOnClickLeaf)&&!p.value?D(!n.node.checked):s.value||w()},D=e=>{l.value?(b(e),n.node.loaded&&y()):O(e)},O=e=>{n.node.loaded?(b(e),!l.value&&y()):x()};return(t,n)=>(k(),U(`li`,{id:`${e.menuId}-${e.node.uid}`,role:`menuitem`,"aria-haspopup":!m.value,"aria-owns":m.value?void 0:e.menuId,"aria-expanded":g.value,tabindex:h.value?-1:void 0,class:T([K(o).b(),K(o).is(`selectable`,l.value),K(o).is(`active`,e.node.checked),K(o).is(`disabled`,!h.value),g.value&&`in-active-path`,_.value&&`in-checked-path`]),onMouseenter:C,onFocus:C,onClick:E},[V(` prefix `),c.value&&d.value?(k(),q(K(oi),{key:0,"model-value":e.node.checked,indeterminate:e.node.indeterminate,disabled:p.value,onClick:n[0]||=lt(()=>{},[`stop`]),"onUpdate:modelValue":D},null,8,[`model-value`,`indeterminate`,`disabled`])):l.value&&d.value?(k(),q(K(li),{key:1,"model-value":f.value,label:e.node.uid,disabled:p.value,"onUpdate:modelValue":D,onClick:n[1]||=lt(()=>{},[`stop`])},{default:S(()=>[V(` - Add an empty element to avoid render label, - do not use empty fragment here for https://github.com/vuejs/vue-next/pull/2485 - `),n[2]||=G(`span`,null,null,-1)]),_:1},8,[`model-value`,`label`,`disabled`])):m.value&&e.node.checked?(k(),q(K(Hn),{key:2,class:T(K(o).e(`prefix`))},{default:S(()=>[W(K(r))]),_:1},8,[`class`])):V(`v-if`,!0),V(` content `),W(K(Hc),{node:e.node},null,8,[`node`]),V(` postfix `),m.value?V(`v-if`,!0):(k(),U(ve,{key:3},[e.node.loading?(k(),q(K(Hn),{key:0,class:T([K(o).is(`loading`),K(o).e(`postfix`)])},{default:S(()=>[W(K(Fe))]),_:1},8,[`class`])):(k(),q(K(Hn),{key:1,class:T([`arrow-right`,K(o).e(`postfix`)])},{default:S(()=>[W(K(pe))]),_:1},8,[`class`]))],64))],42,Uc))}}),Gc=Se({name:`ElCascaderMenu`,__name:`menu`,props:{nodes:{type:Array,required:!0},index:{type:Number,required:!0},virtualScroll:{type:Boolean,required:!1,default:!1},itemSize:{type:Number,required:!1,default:34},height:{type:Number,required:!1,default:204}},setup(e,{expose:t}){let n=e,r=xe(),i=u(`cascader-menu`),{t:a}=on(),o=Gn(),c,l,d=Xe(Bc),f=H(),p=H(),m=B(()=>!n.nodes.length),h=B(()=>!d.initialLoaded),g=B(()=>`${o.value}-${n.index}`),v=()=>{let e;if(d.expandingNode){let{level:t,pathNodes:r}=d.expandingNode;n.index0&&(e=d.checkedNodes[0]?.pathNodes[n.index]?.uid)}else d.checkedNodes.length>0&&n.indext.uid===e)},y=e=>e?n.nodes.findIndex(t=>`${g.value}-${t.uid}`===e):-1,b=e=>{let t=dr(e,0,n.nodes.length-1);p.value?.scrollToItem(t)},C=e=>{if(!n.nodes.length)return;let t=dr(e,0,n.nodes.length-1);b(t),J(()=>{let e=r.vnode.el?.querySelector(`#${g.value}-${n.nodes[t].uid}`);e&&kn(e)})},w=e=>{c=e.target},E=e=>{if(!(!d.isHoverMenu||!c||!f.value))if(c.contains(e.target)){D();let t=r.vnode.el,{left:a}=t.getBoundingClientRect(),{offsetWidth:o,offsetHeight:s}=t,l=e.clientX-a,u=c.offsetTop,d=u+c.offsetHeight,m=n.virtualScroll?p.value?.states?.scrollOffset||0:t.querySelector(`.${i.e(`wrap`)}`)?.scrollTop||0;f.value.innerHTML=` - - - `}else l||=window.setTimeout(O,d.config.hoverThreshold)},D=()=>{l&&=(clearTimeout(l),void 0)},O=()=>{f.value&&(f.value.innerHTML=``,D())};return t({getActiveNodeIndex:v,getNodeIndexById:y,scrollToItem:b,focusNodeAt:C,virtualListRef:p,get $el(){return r.vnode.el}}),(t,n)=>e.virtualScroll?(k(),U(`div`,{key:g.value,class:T(K(i).b()),onMousemove:E,onMouseleave:O},[W(K(fc),{ref_key:`virtualListRef`,ref:p,height:e.height,"item-size":e.itemSize,data:e.nodes,total:e.nodes.length,"class-name":K(i).e(`list`),"inner-element":`ul`,"inner-props":{role:`menu`,class:K(i).is(`empty`,m.value)}},{default:S(({data:e,index:t,style:n})=>[(k(),q(Wc,{key:e[t].uid,node:e[t],"menu-id":g.value,style:tt(n),onExpand:w},null,8,[`node`,`menu-id`,`style`]))]),_:1},8,[`height`,`item-size`,`data`,`total`,`class-name`,`inner-props`]),h.value?(k(),U(`div`,{key:0,class:T(K(i).e(`empty-text`))},[W(K(Hn),{size:14,class:T(K(i).is(`loading`))},{default:S(()=>[W(K(Fe))]),_:1},8,[`class`]),Pe(` `+s(K(a)(`el.cascader.loading`)),1)],2)):m.value?(k(),U(`div`,{key:1,class:T(K(i).e(`empty-text`))},[x(t.$slots,`empty`,{},()=>[Pe(s(K(a)(`el.cascader.noData`)),1)])],2)):K(d)?.isHoverMenu?(k(),U(ve,{key:2},[V(` eslint-disable vue/html-self-closing `),(k(),U(`svg`,{ref_key:`hoverZone`,ref:f,class:T(K(i).e(`hover-zone`))},null,2))],2112)):V(`v-if`,!0),V(` eslint-enable vue/html-self-closing `)],34)):(k(),q(K(kr),{key:g.value,tag:`ul`,role:`menu`,class:T(K(i).b()),"wrap-class":K(i).e(`wrap`),"view-class":[K(i).e(`list`),K(i).is(`empty`,m.value)],onMousemove:E,onMouseleave:O},{default:S(()=>[(k(!0),U(ve,null,_(e.nodes,e=>(k(),q(Wc,{key:e.uid,node:e,"menu-id":g.value,onExpand:w},null,8,[`node`,`menu-id`]))),128)),h.value?(k(),U(`div`,{key:0,class:T(K(i).e(`empty-text`))},[W(K(Hn),{size:14,class:T(K(i).is(`loading`))},{default:S(()=>[W(K(Fe))]),_:1},8,[`class`]),Pe(` `+s(K(a)(`el.cascader.loading`)),1)],2)):m.value?(k(),U(`div`,{key:1,class:T(K(i).e(`empty-text`))},[x(t.$slots,`empty`,{},()=>[Pe(s(K(a)(`el.cascader.noData`)),1)])],2)):K(d)?.isHoverMenu?(k(),U(ve,{key:2},[V(` eslint-disable vue/html-self-closing `),(k(),U(`svg`,{ref_key:`hoverZone`,ref:f,class:T(K(i).e(`hover-zone`))},null,2))],2112)):V(`v-if`,!0),V(` eslint-enable vue/html-self-closing `)]),_:3},8,[`class`,`wrap-class`,`view-class`]))}}),Kc=0,qc=e=>{let t=[e],{parent:n}=e;for(;n;)t.unshift(n),n=n.parent;return t},Jc=class e{constructor(t,n,r,i=!1){this.data=t,this.config=n,this.parent=r,this.root=i,this.uid=Kc++,this.checked=!1,this.indeterminate=!1,this.loading=!1;let{value:a,label:o,children:s}=n,c=t[s],l=qc(this);this.level=i?0:r?r.level+1:1,this.value=t[a],this.label=t[o],this.pathNodes=l,this.pathValues=l.map(e=>e.value),this.pathLabels=l.map(e=>e.label),this.childrenData=c,this.children=(c||[]).map(t=>new e(t,n,this)),this.loaded=!n.lazy||this.isLeaf||!ke(c),this.text=``}get isDisabled(){let{data:e,parent:t,config:n}=this,{disabled:r,checkStrictly:i}=n;return(qe(r)?r(e,this):!!e[r])||!i&&!!t?.isDisabled}get isLeaf(){let{data:e,config:t,childrenData:n,loaded:r}=this,{lazy:i,leaf:a}=t,o=qe(a)?a(e,this):e[a];return A(o)?i&&!r?!1:!(L(n)&&n.length):!!o}get valueByOption(){return this.config.emitPath?this.pathValues:this.value}appendChild(t){let{childrenData:n,children:r}=this,i=new e(t,this.config,this);return L(n)?n.push(t):this.childrenData=[t],r.push(i),i}calcText(e,t){let n=e?this.pathLabels.join(t):this.label;return this.text=n,n}broadcast(e){this.children.forEach(t=>{t&&(t.broadcast(e),t.onParentCheck?.(e))})}emit(){let{parent:e}=this;e&&(e.onChildCheck?.(),e.emit())}onParentCheck(e){this.isDisabled||this.setCheckState(e)}onChildCheck(){let{children:e}=this,t=e.filter(e=>!e.isDisabled),n=t.length?t.every(e=>e.checked):!1;this.setCheckState(n)}setCheckState(e){let t=this.children.length,n=this.children.reduce((e,t)=>e+(t.checked?1:t.indeterminate?.5:0),0);this.checked=this.loaded&&this.children.filter(e=>!e.isDisabled).every(e=>e.loaded&&e.checked)&&e,this.indeterminate=this.loaded&&n!==t&&n>0}doCheck(e){if(this.checked===e)return;let{checkStrictly:t,multiple:n}=this.config;t||!n?this.checked=e:(this.broadcast(e),this.setCheckState(e),this.emit())}},Yc=(e,t)=>e.reduce((e,n)=>(n.isLeaf?e.push(n):(!t&&e.push(n),e=e.concat(Yc(n.children,t))),e),[]),Xc=class{constructor(e,t){this.config=t;let n=(e||[]).map(e=>new Jc(e,this.config));this.nodes=n,this.allNodes=Yc(n,!1),this.leafNodes=Yc(n,!0)}getNodes(){return this.nodes}getFlattedNodes(e){return e?this.leafNodes:this.allNodes}appendNode(e,t){let n=t?t.appendChild(e):new Jc(e,this.config);t||this.nodes.push(n),this.appendAllNodesAndLeafNodes(n)}appendNodes(e,t){e.length>0?e.forEach(e=>this.appendNode(e,t)):t&&t.isLeaf&&this.leafNodes.push(t)}appendAllNodesAndLeafNodes(e){this.allNodes.push(e),e.isLeaf&&this.leafNodes.push(e),e.children&&e.children.forEach(e=>{this.appendAllNodesAndLeafNodes(e)})}getNodeByValue(e,t=!1){return Ee(e)?null:this.getFlattedNodes(t).find(t=>Un(t.value,e)||Un(t.pathValues,e))||null}getSameNode(e){return e&&this.getFlattedNodes(!1).find(({value:t,level:n})=>Un(e.value,t)&&e.level===n)||null}},Zc=e=>{if(!e)return 0;let t=e.id.split(`-`);return Number(t[t.length-2])},Qc=e=>{if(!e)return;let t=e.querySelector(`input`);t?t.click():X(e)&&e.click()},$c=(e,t)=>{let n=t.slice(0),r=n.map(e=>e.uid),i=e.reduce((e,t)=>{let i=r.indexOf(t.uid);return i>-1&&(e.push(t),n.splice(i,1),r.splice(i,1)),e},[]);return i.push(...n),i},el=fe(Se({name:`ElCascaderPanel`,__name:`index`,props:xs,emits:Cs,setup(e,{expose:t,emit:n}){let r=e,a=n,o=!1,s=u(`cascader`),c=ws(r),l=ce(),d,f=H(!0),p=H(!1),m=H([]),h=H(),g=H([]),v=H(),y=H([]),b=B(()=>c.value.expandTrigger===`hover`),w=B(()=>r.renderLabel||l.default),E=B(()=>r.virtualScroll),D=B(()=>r.itemSize),O=B(()=>r.height),A=()=>{let{options:e}=r,t=c.value;o=!1,d=new Xc(e,t),g.value=[d.getNodes()],t.lazy&&ke(r.options)?(f.value=!1,M(void 0,e=>{e&&(d=new Xc(e,t),g.value=[d.getNodes()]),f.value=!0,L(!1,!0)})):L(!1,!0)},M=(e,t)=>{let n=c.value;e||=new Jc({},n,void 0,!0),e.loading=!0,n.lazyLoad(e,n=>{let r=e,i=r.root?null:r;r.loading=!1,r.loaded=!0,r.childrenData=r.childrenData||[],n&&d?.appendNodes(n,i),n&&t?.(n),e.level===0&&(p.value=!0)},()=>{e.loading=!1,e.loaded=!1,e.level===0&&(f.value=!0)})},N=(e,t)=>{let{level:n}=e,r=g.value.slice(0,n),i;e.isLeaf?i=e.pathNodes[n-2]:(i=e,r.push(e.children)),v.value?.uid!==i?.uid&&(v.value=e,g.value=r,!t&&a(`expand-change`,e?.pathValues||[]))},ee=(e,t,n=!0)=>{let{checkStrictly:r,multiple:i}=c.value,s=y.value[0];o=!0,!i&&s?.doCheck(!1),e.doCheck(t),re(),n&&!i&&!r&&a(`close`),!n&&!i&&F(e)},F=e=>{e&&(e=e.parent,F(e),e&&N(e))},I=e=>d?.getFlattedNodes(e),te=e=>I(e)?.filter(({checked:e})=>e!==!1),ne=()=>{y.value.forEach(e=>e.doCheck(!1)),re(),g.value=g.value.slice(0,1),v.value=void 0,a(`expand-change`,[])},re=()=>{let{checkStrictly:e,multiple:t}=c.value,n=y.value,r=$c(n,te(!e)),i=r.map(e=>e.valueByOption);y.value=r,h.value=t?i:i[0]??null},L=(e=!1,t=!1)=>{let{modelValue:n}=r,{lazy:i,multiple:a,checkStrictly:s}=c.value,l=!s;if(!(!f.value||o||!t&&Un(n,h.value)))if(i&&!e){let e=Tr(Li(Dr(n))).map(e=>d?.getNodeByValue(e)).filter(e=>!!e&&!e.loaded&&!e.loading);e.length?e.forEach(e=>{M(e,()=>L(!1,t))}):L(!0,t)}else ie(Tr((a?Dr(n):[n]).map(e=>d?.getNodeByValue(e,l))),t),h.value=hr(n??void 0)},ie=(e,t=!0)=>{let{checkStrictly:n}=c.value,r=y.value,i=e.filter(e=>!!e&&(n||e.isLeaf)),a=d?.getSameNode(v.value),o=t&&a||i[0];o?o.pathNodes.forEach(e=>N(e,!0)):v.value=void 0,r.forEach(e=>e.doCheck(!1)),Ne(i).forEach(e=>e.doCheck(!0)),y.value=i,J(ae)},ae=()=>{cn&&m.value.forEach(e=>{let t=e?.$el;if(t)if(E.value){let t=e?.getActiveNodeIndex?.();t!==void 0&&t>=0&&e?.scrollToItem?.(t)}else{let e=t.querySelector(`.${s.namespace.value}-scrollbar__wrap`),n=t.querySelector(`.${s.b(`node`)}.in-active-path`);if(!n){let e=t.querySelectorAll(`.${s.b(`node`)}.${s.is(`active`)}`);n=e[e.length-1]}dt(e,n)}})},R=e=>{let t=e.target,n=Xt(e);switch(n){case Pt.up:case Pt.down:{e.preventDefault();let r=n===Pt.up?-1:1;if(E.value){let e=Zc(t),n=m.value[e];if(n){let i=n.getNodeIndexById(t.id);if(i>=0){let t=g.value[e]??[],a=t.length,o=i+r;for(;o>=0&&o{Un(e,t)||A()},{immediate:!0}),C(()=>r.options,A,{deep:!0}),C(()=>r.modelValue,()=>{o=!1,L()},{deep:!0}),C(()=>h.value,e=>{Un(e,r.modelValue)||(a(Kt,e),a(Mt,e))}),j(()=>m.value=[]),i(()=>!ke(r.modelValue)&&L()),t({menuList:m,menus:g,checkedNodes:y,handleKeyDown:R,handleCheckChange:ee,getFlattedNodes:I,getCheckedNodes:te,clearCheckedNodes:ne,calculateCheckedValue:re,scrollToExpandingNode:ae,loadLazyRootNodes:()=>{p.value||!f.value||A()}}),(t,n)=>(k(),U(`div`,{class:T([K(s).b(`panel`),K(s).is(`bordered`,e.border)]),onKeydown:R},[(k(!0),U(ve,null,_(g.value,(e,n)=>(k(),q(Gc,{key:n,ref_for:!0,ref:e=>m.value[n]=e,index:n,nodes:[...e],"virtual-scroll":E.value,"item-size":D.value,height:O.value},{empty:S(()=>[x(t.$slots,`empty`)]),_:3},8,[`index`,`nodes`,`virtual-scroll`,`item-size`,`height`]))),128))],34))}})),tl=R({...ys,size:Kn,placeholder:String,disabled:{type:Boolean,default:void 0},clearable:Boolean,clearIcon:{type:En,default:O},filterable:Boolean,filterMethod:{type:h(Function),default:(e,t)=>e.text.includes(t)},separator:{type:String,default:` / `},showAllLevels:{type:Boolean,default:!0},collapseTags:Boolean,maxCollapseTags:{type:Number,default:1},collapseTagsTooltip:Boolean,maxCollapseTagsTooltipHeight:{type:[String,Number]},debounce:{type:Number,default:300},beforeFilter:{type:h(Function),default:()=>!0},placement:{type:h(String),values:Or,default:`bottom-start`},fallbackPlacements:{type:h(Array),default:[`bottom-start`,`bottom`,`top-start`,`top`,`right`,`left`]},popperClass:Mr.popperClass,popperStyle:Mr.popperStyle,teleported:Mr.teleported,effect:{type:h(String),default:`light`},tagType:{...qr.type,default:`info`},tagEffect:{...qr.effect,default:`light`},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},showCheckedStrategy:{type:String,values:[`parent`,`child`],default:`child`},checkOnClickNode:Boolean,showPrefix:{type:Boolean,default:!0},fitInputWidth:{type:[Boolean,Number],default:!1},...vn}),nl=e=>!0,rl={[Kt]:nl,[Mt]:nl,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0,visibleChange:e=>f(e),expandChange:e=>!!e,removeTag:e=>!!e},il=[`placeholder`],al=[`onClick`],ol=[`id`,`data-suggestion-index`,`onClick`],sl=34,cl=fe(Se({name:`ElCascader`,__name:`cascader`,props:tl,emits:rl,setup(e,{expose:t,emit:n}){let o={modifiers:[{name:`arrowPosition`,enabled:!0,phase:`main`,fn:({state:e})=>{let{modifiersData:t,placement:n}=e;[`right`,`left`,`bottom`,`top`].includes(n)||t.arrow&&(t.arrow.x=35)},requires:[`arrow`]}]},c=e,l=n,d=oe(),f=ce(),p=0,m=0,h=u(`cascader`),g=u(`input`),v={small:7,default:11,large:15},{t:y}=on(),{formItem:b}=Dn(),w=Fn(),{valueOnClear:E}=Tn(c),{isComposing:D,handleComposition:O}=jt({afterComposition(e){let t=e.target?.value;pt(t)}}),A=H(),j=H(),M=H(),N=H(),P=H(),ee=H(),F=H(),I=H(!1),te=H(!1),ne=H(!1),re=H(``),L=H(``),ie=H([]),ae=H([]),R=H(`100%`),z=B(()=>!!f[`suggestion-item`]),se=B(()=>dr(ae.value.length*c.itemSize,c.itemSize,c.height)),le=B(()=>c.props.multiple?c.collapseTags?ie.value.slice(0,c.maxCollapseTags):ie.value:[]),de=B(()=>c.props.multiple&&c.collapseTags?ie.value.slice(c.maxCollapseTags):[]),fe=B(()=>d.style),pe=B(()=>c.placeholder??y(`el.cascader.placeholder`)),me=B(()=>L.value||ie.value.length>0||D.value?``:pe.value),he=zn(),ge=B(()=>he.value===`small`?`small`:`default`),ye=B(()=>!!c.props.multiple),be=B(()=>!c.filterable||ye.value),xe=B(()=>ye.value?L.value:re.value),Se=B(()=>P.value?.checkedNodes||[]),{wrapperRef:Ce,isFocused:we,handleBlur:Te}=Jt(M,{disabled:w,beforeBlur(e){return A.value?.isFocusInsideContent(e)||j.value?.isFocusInsideContent(e)},afterBlur(){c.validateEvent&&b?.validate?.(`blur`).catch(Me)}}),Ee=B(()=>!c.clearable||w.value||ne.value||!te.value&&!we.value?!1:!!Se.value.length),De=B(()=>{let{showAllLevels:e,separator:t}=c,n=Se.value;return n.length?ye.value?``:n[0].calcText(e,t):``}),ke=B(()=>b?.validateState||``),Ae=B({get(){return hr(c.modelValue)},set(e){let t=e??E.value;l(Kt,t),l(Mt,t),c.validateEvent&&b?.validate(`change`).catch(Me)}}),je=B(()=>[h.b(),h.m(he.value),h.is(`disabled`,w.value),d.class]),Ne=B(()=>[g.e(`icon`),`icon-arrow-down`,h.is(`reverse`,I.value)]),Pe=B(()=>h.is(`focus`,we.value)),Fe=B(()=>A.value?.popperRef?.contentRef),Ie=e=>{we.value&&Te(new FocusEvent(`blur`,e)),Le(!1)},Le=e=>{w.value||(e??=!I.value,e!==I.value&&(I.value=e,M.value?.input?.setAttribute(`aria-expanded`,`${e}`),e?(Re(),P.value&&J(P.value.scrollToExpandingNode)):c.filterable&&at(),l(`visibleChange`,e)))},Re=()=>{J(()=>{A.value?.updatePopper()})},ze=()=>{ne.value=!1},Be=e=>{let{showAllLevels:t,separator:n}=c;return{node:e,key:e.uid,text:e.calcText(t,n),hitState:!1,closable:!w.value&&!e.isDisabled}},Ve=e=>{let t=e.node;t.doCheck(!1),P.value?.calculateCheckedValue(),l(`removeTag`,t.valueByOption)},He=()=>{switch(c.showCheckedStrategy){case`child`:return Se.value;case`parent`:{let e=Y(!1),t=e.map(e=>e.value);return e.filter(e=>!e.parent||!t.includes(e.parent.value))}default:return[]}},We=()=>{if(!ye.value)return;let e=He(),t=[];e.forEach(e=>t.push(Be(e))),ie.value=t},Ge=()=>{let{filterMethod:e,showAllLevels:t,separator:n}=c,r=P.value?.getFlattedNodes(!c.props.checkStrictly)?.filter(r=>!r.isDisabled&&(r.calcText(t,n),e(r,xe.value)));ye.value&&ie.value.forEach(e=>{e.hitState=!1}),ne.value=!0,ae.value=r,J(()=>{c.virtualScroll&&ae.value.length>0&&F.value?.scrollToItem(0),Xe()}),Re()},Ke=e=>{let t=ee.value;return e?t?.querySelector(e)??void 0:t},qe=()=>{let e;e=ne.value&&ee.value?Ke(`.${h.e(`suggestion-item`)}`):P.value?.$el.querySelector(`.${h.b(`node`)}[tabindex="-1"]`),e&&(e.focus(),!ne.value&&e.getAttribute(`aria-haspopup`)===`true`&&e.click())},Je=e=>{let t=Ke();if(!t)return;let n=a(c.fitInputWidth)?`${c.fitInputWidth}px`:`${e}px`,r=e=>{c.fitInputWidth===!1?(e.style.width=``,e.style.minWidth=n):(e.style.width=n,e.style.minWidth=``)};if(r(t),c.virtualScroll){R.value=c.fitInputWidth===!1?z.value?`${e}px`:`${Math.max(e,Ze())}px`:n;return}let i=Ke(`.${h.e(`suggestion-list`)}`);i&&r(i)},Ye=()=>{if(!f.prefix)return 0;let e=M.value?.$el.querySelector(`.${g.e(`prefix`)}`);if(!e)return 0;let t=e.getBoundingClientRect().width;return t<=0?0:t+v[he.value||`default`]},Xe=()=>{let e=M.value?.input,t=M.value?.$el;if(!cn||!e||!t)return;ee.value&&Je(t.getBoundingClientRect().width);let n=N.value;if(n){let t=ie.value.length>0?`${Math.max(n.offsetHeight,p)-2}px`:`${p}px`;e.style.height=t,n.style.left=`${Ye()}px`,Re()}},Ze=()=>{if(z.value||!ae.value.length)return 0;let e=document.createElement(`canvas`).getContext(`2d`);if(!e)return 0;let t=Ke(`.${h.e(`suggestion-item`)}`);if(!t||!cn)return 0;let n=getComputedStyle(t),r=Number.parseFloat(n.paddingLeft)+Number.parseFloat(n.paddingRight);e.font=`bold ${n.fontSize} ${n.fontFamily}`;let i=0,a=!1;for(let t of ae.value){let n=t.text||``,r=e.measureText(n);i=Math.max(i,r.width),t.checked&&!a&&(a=!0)}return i+r+(a?sl:0)},Y=e=>P.value?.getCheckedNodes(e),Qe=e=>{Re(),l(`expandChange`,e)},$e=e=>{if(!D.value)switch(Xt(e)){case Pt.enter:case Pt.numpadEnter:Le();break;case Pt.down:Le(!0),J(qe),e.preventDefault();break;case Pt.esc:I.value===!0&&(e.preventDefault(),e.stopPropagation(),Le(!1));break;case Pt.tab:Le(!1)}},rt=()=>{P.value?.clearCheckedNodes(),!I.value&&c.filterable&&at(),Le(!1),l(`clear`)},at=()=>{let{value:e}=De;re.value=e,L.value=e},ot=e=>{let{checked:t}=e;ye.value?P.value?.handleCheckChange(e,!t,!1):(!t&&P.value?.handleCheckChange(e,!0,!1),Le(!1))},ct=e=>{let t=e.closest(`[data-suggestion-index]`)?.dataset.suggestionIndex;if(!t)return-1;let n=Number.parseInt(t,10);return Number.isNaN(n)||n<0||n>=ae.value.length?-1:n},ut=e=>{let t=e.target,n=Xt(e);switch(n){case Pt.up:case Pt.down:{e.preventDefault();let r=n===Pt.up?-1:1;if(c.virtualScroll&&F.value){let e=ct(t);if(e>=0){let t=ae.value.length,n=(e+r+t)%t;F.value.scrollToItem(n),J(()=>{let e=Ke(`#suggestion-${ae.value[n].uid}`);e&&kn(e)});return}}kn(un(t,r,`.${h.e(`suggestion-item`)}[tabindex="-1"]`));break}case Pt.enter:case Pt.numpadEnter:t.click()}},dt=()=>{let e=ie.value[ie.value.length-1];m=L.value?0:m+1,!(!e||!m||c.collapseTags&&ie.value.length>1)&&(e.hitState?Ve(e):e.hitState=!0)},ft=wn(()=>{let{value:e}=xe;if(!e)return;let t=c.beforeFilter(e);Oe(t)?t.then(Ge).catch(()=>{}):t===!1?ze():Ge()},B(()=>c.debounce)),pt=(e,t)=>{if(!I.value&&Le(!0),!t?.isComposing)if(e)ft();else{let e=c.beforeFilter(``);Oe(e)&&e.catch(()=>{}),ze()}},mt=e=>Number.parseFloat(Tt(g.cssVarName(`input-height`),e).value)-2;return C(ne,Re),C([Se,w,()=>c.collapseTags,()=>c.maxCollapseTags],We),C(ie,()=>{J(()=>Xe())}),C(he,async()=>{await J();let e=M.value.input;p=mt(e)||p,Xe()}),C(De,at,{immediate:!0}),C(()=>I.value,e=>{e&&c.props.lazy&&c.props.lazyLoad&&P.value?.loadLazyRootNodes()}),i(()=>{let e=M.value.input,t=M.value.$el,n=mt(e);p=e.offsetHeight||n,gt(t,Xe)}),t({getCheckedNodes:Y,cascaderPanelRef:P,togglePopperVisible:Le,contentRef:Fe,presentText:De,focus:()=>{M.value?.focus()},blur:()=>{M.value?.blur()}}),(t,n)=>(k(),q(K(Cr),{ref_key:`tooltipRef`,ref:A,visible:I.value,teleported:e.teleported,"popper-class":[K(h).e(`dropdown`),e.popperClass],"popper-style":e.popperStyle,"popper-options":o,"fallback-placements":e.fallbackPlacements,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,placement:e.placement,transition:`${K(h).namespace.value}-zoom-in-top`,effect:e.effect,pure:``,persistent:e.persistent,onHide:ze},{default:S(()=>[ue((k(),U(`div`,{ref_key:`wrapperRef`,ref:Ce,class:T(je.value),style:tt(fe.value),onClick:n[8]||=()=>Le(!be.value||void 0),onKeydown:$e,onMouseenter:n[9]||=e=>te.value=!0,onMouseleave:n[10]||=e=>te.value=!1},[W(K(qt),{ref_key:`inputRef`,ref:M,modelValue:re.value,"onUpdate:modelValue":n[1]||=e=>re.value=e,placeholder:me.value,readonly:be.value,disabled:K(w),"validate-event":!1,size:K(he),class:T(Pe.value),tabindex:ye.value&&e.filterable&&!K(w)?-1:void 0,onCompositionstart:K(O),onCompositionupdate:K(O),onCompositionend:K(O),onInput:pt},_e({suffix:S(()=>[Ee.value?(k(),q(K(Hn),{key:`clear`,class:T([K(g).e(`icon`),`icon-circle-close`]),onClick:lt(rt,[`stop`])},{default:S(()=>[(k(),q(et(e.clearIcon)))]),_:1},8,[`class`])):(k(),q(K(Hn),{key:`arrow-down`,class:T(Ne.value),onClick:n[0]||=lt(e=>Le(),[`stop`])},{default:S(()=>[W(K(Ue))]),_:1},8,[`class`]))]),_:2},[t.$slots.prefix?{name:`prefix`,fn:S(()=>[x(t.$slots,`prefix`)]),key:`0`}:void 0]),1032,[`modelValue`,`placeholder`,`readonly`,`disabled`,`size`,`class`,`tabindex`,`onCompositionstart`,`onCompositionupdate`,`onCompositionend`]),ye.value?(k(),U(`div`,{key:0,ref_key:`tagWrapper`,ref:N,class:T([K(h).e(`tags`),K(h).is(`validate`,!!ke.value)])},[x(t.$slots,`tag`,{data:ie.value,deleteTag:Ve},()=>[(k(!0),U(ve,null,_(le.value,t=>(k(),q(K(Jr),{key:t.key,type:e.tagType,size:ge.value,effect:e.tagEffect,hit:t.hitState,closable:t.closable,"disable-transitions":``,onClose:e=>Ve(t)},{default:S(()=>[G(`span`,null,s(t.text),1)]),_:2},1032,[`type`,`size`,`effect`,`hit`,`closable`,`onClose`]))),128))]),e.collapseTags&&ie.value.length>e.maxCollapseTags?(k(),q(K(Cr),{key:0,ref_key:`tagTooltipRef`,ref:j,disabled:I.value||!e.collapseTagsTooltip,"fallback-placements":[`bottom`,`top`,`right`,`left`],placement:`bottom`,"popper-class":e.popperClass,"popper-style":e.popperStyle,effect:e.effect,persistent:e.persistent},{default:S(()=>[W(K(Jr),{closable:!1,size:ge.value,type:e.tagType,effect:e.tagEffect,"disable-transitions":``},{default:S(()=>[G(`span`,{class:T(K(h).e(`tags-text`))},` + `+s(ie.value.length-e.maxCollapseTags),3)]),_:1},8,[`size`,`type`,`effect`])]),content:S(()=>[W(K(kr),{"max-height":e.maxCollapseTagsTooltipHeight},{default:S(()=>[G(`div`,{class:T(K(h).e(`collapse-tags`))},[(k(!0),U(ve,null,_(de.value,(t,n)=>(k(),U(`div`,{key:n,class:T(K(h).e(`collapse-tag`))},[(k(),q(K(Jr),{key:t.key,class:`in-tooltip`,type:e.tagType,size:ge.value,effect:e.tagEffect,hit:t.hitState,closable:t.closable,"disable-transitions":``,onClose:e=>Ve(t)},{default:S(()=>[G(`span`,null,s(t.text),1)]),_:2},1032,[`type`,`size`,`effect`,`hit`,`closable`,`onClose`]))],2))),128))],2)]),_:1},8,[`max-height`])]),_:1},8,[`disabled`,`popper-class`,`popper-style`,`effect`,`persistent`])):V(`v-if`,!0),e.filterable&&!K(w)?ue((k(),U(`input`,{key:1,"onUpdate:modelValue":n[2]||=e=>L.value=e,type:`text`,class:T(K(h).e(`search-input`)),placeholder:De.value?``:pe.value,onInput:n[3]||=e=>pt(L.value,e),onClick:n[4]||=lt(e=>Le(!0),[`stop`]),onKeydown:it(dt,[`delete`]),onCompositionstart:n[5]||=(...e)=>K(O)&&K(O)(...e),onCompositionupdate:n[6]||=(...e)=>K(O)&&K(O)(...e),onCompositionend:n[7]||=(...e)=>K(O)&&K(O)(...e)},null,42,il)),[[st,L.value]]):V(`v-if`,!0)],2)):V(`v-if`,!0)],38)),[[K(Nr),Ie,Fe.value]])]),content:S(()=>[t.$slots.header?(k(),U(`div`,{key:0,class:T(K(h).e(`header`)),onClick:n[11]||=lt(()=>{},[`stop`])},[x(t.$slots,`header`)],2)):V(`v-if`,!0),ue(W(K(el),{ref_key:`cascaderPanelRef`,ref:P,modelValue:Ae.value,"onUpdate:modelValue":n[12]||=e=>Ae.value=e,options:e.options,props:c.props,border:!1,"render-label":t.$slots.default,"virtual-scroll":e.virtualScroll,"item-size":e.itemSize,height:e.height,onExpandChange:Qe,onClose:n[13]||=e=>t.$nextTick(()=>Le(!1))},{empty:S(()=>[x(t.$slots,`empty`)]),_:3},8,[`modelValue`,`options`,`props`,`render-label`,`virtual-scroll`,`item-size`,`height`]),[[nt,!ne.value]]),e.filterable?(k(),U(ve,{key:1},[e.virtualScroll?ue((k(),U(`div`,{key:1,ref_key:`suggestionPanel`,ref:ee,class:T(K(h).e(`suggestion-panel`)),onKeydown:ut},[ue(W(K(fc),{ref_key:`suggestionVirtualListRef`,ref:F,height:se.value,"item-size":e.itemSize,data:ae.value,total:ae.value.length,"class-name":K(h).e(`suggestion-list`),"inner-element":`ul`,"inner-width":R.value},{default:S(({data:e,index:n,style:i})=>[(k(),U(`li`,{id:`suggestion-${e[n].uid}`,key:e[n].uid,"data-suggestion-index":n,class:T([K(h).e(`suggestion-item`),K(h).is(`checked`,e[n].checked)]),tabindex:-1,style:tt(i),onClick:t=>ot(e[n])},[x(t.$slots,`suggestion-item`,{item:e[n]},()=>[G(`span`,null,s(e[n].text),1),e[n].checked?(k(),q(K(Hn),{key:0},{default:S(()=>[W(K(r))]),_:1})):V(`v-if`,!0)])],14,ol))]),_:3},8,[`height`,`item-size`,`data`,`total`,`class-name`,`inner-width`]),[[nt,ae.value.length]]),ae.value.length?V(`v-if`,!0):x(t.$slots,`empty`,{key:0},()=>[G(`ul`,{class:T(K(h).e(`suggestion-list`))},[G(`li`,{class:T(K(h).e(`empty-text`))},s(K(y)(`el.cascader.noMatch`)),3)],2)])],34)),[[nt,ne.value]]):ue((k(),q(K(kr),{key:0,ref:e=>ee.value=e?.$el,tag:`ul`,class:T(K(h).e(`suggestion-panel`)),"wrap-class":K(h).e(`suggestion-wrap`),"view-class":K(h).e(`suggestion-list`),onKeydown:ut},{default:S(()=>[ae.value.length?(k(!0),U(ve,{key:0},_(ae.value,e=>(k(),U(`li`,{key:e.uid,class:T([K(h).e(`suggestion-item`),K(h).is(`checked`,e.checked)]),tabindex:-1,onClick:t=>ot(e)},[x(t.$slots,`suggestion-item`,{item:e},()=>[G(`span`,null,s(e.text),1),e.checked?(k(),q(K(Hn),{key:0},{default:S(()=>[W(K(r))]),_:1})):V(`v-if`,!0)])],10,al))),128)):x(t.$slots,`empty`,{key:1},()=>[G(`li`,{class:T(K(h).e(`empty-text`))},s(K(y)(`el.cascader.noMatch`)),3)])]),_:3},8,[`class`,`wrap-class`,`view-class`])),[[nt,ne.value]])],64)):V(`v-if`,!0),t.$slots.footer?(k(),U(`div`,{key:2,class:T(K(h).e(`footer`)),onClick:n[14]||=lt(()=>{},[`stop`])},[x(t.$slots,`footer`)],2)):V(`v-if`,!0)]),_:3},8,[`visible`,`teleported`,`popper-class`,`popper-style`,`fallback-placements`,`placement`,`transition`,`effect`,`persistent`]))}})),ll=R({checked:Boolean,disabled:Boolean,type:{type:String,values:[`primary`,`success`,`info`,`warning`,`danger`],default:`primary`}}),ul=fe(Se({name:`ElCheckTag`,__name:`check-tag`,props:ll,emits:{"update:checked":e=>f(e),[Mt]:e=>f(e)},setup(e,{emit:t}){let n=e,r=t,i=u(`check-tag`),a=B(()=>[i.b(),i.is(`checked`,n.checked),i.is(`disabled`,n.disabled),i.m(n.type||`primary`)]),o=()=>{if(n.disabled)return;let e=!n.checked;r(Mt,e),r(`update:checked`,e)};return(e,t)=>(k(),U(`span`,{class:T(a.value),onClick:o},[x(e.$slots,`default`)],2))}})),dl=e=>a(e)||D(e)||L(e),fl=R({accordion:Boolean,modelValue:{type:h([Array,String,Number]),default:()=>Lt([])},expandIconPosition:{type:h([String]),default:`right`},beforeCollapse:{type:h(Function)}}),pl={[Kt]:dl,[Mt]:dl},ml=Symbol(`collapseContextKey`),hl=R({title:{type:String,default:``},name:{type:h([String,Number]),default:void 0},icon:{type:En,default:pe},disabled:Boolean}),gl=`ElCollapse`,_l=(e,t)=>{let n=H(lr(e.modelValue)),r=r=>{n.value=r;let i=e.accordion?n.value[0]:n.value;t(Kt,i),t(Mt,i)},i=t=>{if(e.accordion)r([n.value[0]===t?``:t]);else{let e=[...n.value],i=e.indexOf(t);i>-1?e.splice(i,1):e.push(t),r(e)}};return C(()=>e.modelValue,()=>n.value=lr(e.modelValue),{deep:!0}),P(ml,{activeNames:n,handleItemClick:async t=>{let{beforeCollapse:n}=e;if(!n){i(t);return}let r=n(t);[Oe(r),f(r)].includes(!0)||bn(gl,"beforeCollapse must return type `Promise` or `boolean`"),Oe(r)?r.then(e=>{e!==!1&&i(t)}).catch(e=>{On(gl,`some error occurred: ${e}`)}):r&&i(t)}}),{activeNames:n,setActiveNames:r}},vl=e=>{let t=u(`collapse`);return{rootKls:B(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}},yl=Se({name:`ElCollapse`,__name:`collapse`,props:fl,emits:pl,setup(e,{expose:t,emit:n}){let r=e,{activeNames:i,setActiveNames:a}=_l(r,n),{rootKls:o}=vl(r);return t({activeNames:i,setActiveNames:a}),(e,t)=>(k(),U(`div`,{class:T(K(o))},[x(e.$slots,`default`)],2))}}),bl=e=>{let t=Xe(ml),{namespace:n}=u(`collapse`),r=H(!1),i=H(!1),a=mn(),o=B(()=>a.current++),s=B(()=>e.name??`${n.value}-id-${a.prefix}-${K(o)}`);return{focusing:r,id:o,isActive:B(()=>t?.activeNames.value.includes(K(s))),handleFocus:()=>{setTimeout(()=>{i.value?i.value=!1:r.value=!0},50)},handleHeaderClick:n=>{e.disabled||n.target?.closest(`input, textarea, select`)||(t?.handleItemClick(K(s)),r.value=!1,i.value=!0)},handleEnterClick:e=>{e.target?.closest(`input, textarea, select`)||(e.preventDefault(),t?.handleItemClick(K(s)))}}},xl=(e,{focusing:t,isActive:n,id:r})=>{let i=u(`collapse`),a=B(()=>[i.b(`item`),i.is(`active`,K(n)),i.is(`disabled`,e.disabled)]),o=B(()=>[i.be(`item`,`header`),i.is(`active`,K(n)),{focusing:K(t)&&!e.disabled}]),s=B(()=>[i.be(`item`,`arrow`),i.is(`active`,K(n))]);return{itemTitleKls:B(()=>[i.be(`item`,`title`)]),arrowKls:s,headKls:o,rootKls:a,itemWrapperKls:B(()=>i.be(`item`,`wrap`)),itemContentKls:B(()=>i.be(`item`,`content`)),scopedContentId:B(()=>i.b(`content-${K(r)}`)),scopedHeadId:B(()=>i.b(`head-${K(r)}`))}},Sl=[`id`,`aria-expanded`,`aria-controls`,`aria-describedby`,`tabindex`,`aria-disabled`],Cl=[`id`,`aria-hidden`,`aria-labelledby`],wl=Se({name:`ElCollapseItem`,__name:`collapse-item`,props:hl,setup(e,{expose:t}){let n=e,{focusing:r,id:i,isActive:a,handleFocus:o,handleHeaderClick:c,handleEnterClick:l}=bl(n),{arrowKls:u,headKls:d,rootKls:f,itemTitleKls:p,itemWrapperKls:m,itemContentKls:h,scopedContentId:g,scopedHeadId:_}=xl(n,{focusing:r,isActive:a,id:i});return t({isActive:a}),(t,n)=>(k(),U(`div`,{class:T(K(f))},[G(`div`,{id:K(_),class:T(K(d)),"aria-expanded":K(a),"aria-controls":K(g),"aria-describedby":K(g),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:`button`,onClick:n[0]||=(...e)=>K(c)&&K(c)(...e),onKeydown:n[1]||=it(lt((...e)=>K(l)&&K(l)(...e),[`stop`]),[`space`,`enter`]),onFocus:n[2]||=(...e)=>K(o)&&K(o)(...e),onBlur:n[3]||=e=>r.value=!1},[G(`span`,{class:T(K(p))},[x(t.$slots,`title`,{isActive:K(a)},()=>[Pe(s(e.title),1)])],2),x(t.$slots,`icon`,{isActive:K(a)},()=>[W(K(Hn),{class:T(K(u))},{default:S(()=>[(k(),q(et(e.icon)))]),_:1},8,[`class`])])],42,Sl),W(K(fi),null,{default:S(()=>[ue(G(`div`,{id:K(g),role:`region`,class:T(K(m)),"aria-hidden":!K(a),"aria-labelledby":K(_)},[G(`div`,{class:T(K(h))},[x(t.$slots,`default`)],2)],10,Cl),[[nt,K(a)]])]),_:3})],2))}}),Tl=fe(yl,{CollapseItem:wl}),El=me(wl),Dl=R({modelValue:{type:h(String),default:void 0},border:{type:Boolean,default:!0},showAlpha:Boolean,colorFormat:{type:h(String)},disabled:Boolean,predefine:{type:h(Array)},validateEvent:{type:Boolean,default:!0},hueSliderClass:{type:h([String,Array,Object])},hueSliderStyle:{type:h([String,Array,Object,Boolean]),default:void 0}}),Ol={[Kt]:e=>D(e)||v(e)},kl=Symbol(`colorCommonPickerKey`),Al=Symbol(`colorPickerPanelContextKey`),jl=R({color:{type:h(Object),required:!0},vertical:Boolean,disabled:Boolean}),Ml=jl,Nl=!1;function Pl(e,t){if(!cn)return;let n=function(e){t.drag?.(e)},r=function(e){document.removeEventListener(`mousemove`,n),document.removeEventListener(`mouseup`,r),document.removeEventListener(`touchmove`,n),document.removeEventListener(`touchend`,r),document.onselectstart=null,document.ondragstart=null,Nl=!1,t.end?.(e)},i=function(e){Nl||(document.onselectstart=()=>!1,document.ondragstart=()=>!1,document.addEventListener(`mousemove`,n),document.addEventListener(`mouseup`,r),document.addEventListener(`touchmove`,n),document.addEventListener(`touchend`,r),Nl=!0,t.start?.(e))};e.addEventListener(`mousedown`,i),e.addEventListener(`touchstart`,i,{passive:!1})}var Fl=(e,{key:t,minValue:n,maxValue:r})=>{let i=xe(),a=Re(),o=Re(),s=B(()=>e.color.get(t));function c(t){e.disabled||(t.target!==a.value&&l(t),a.value?.focus())}function l(n){if(!o.value||!a.value||e.disabled)return;let s=i.vnode.el.getBoundingClientRect(),{clientX:c,clientY:l}=ni(n),u;if(e.vertical){let e=l-s.top;e=Math.max(a.value.offsetHeight/2,e),e=Math.min(e,s.height-a.value.offsetHeight/2),u=Math.round((e-a.value.offsetHeight/2)/(s.height-a.value.offsetHeight)*r)}else{let e=c-s.left;e=Math.max(a.value.offsetWidth/2,e),e=Math.min(e,s.width-a.value.offsetWidth/2),u=Math.round((e-a.value.offsetWidth/2)/(s.width-a.value.offsetWidth)*r)}e.color.set(t,u)}function u(i){if(e.disabled)return;let{shiftKey:a}=i,o=Xt(i),s=a?10:1,c=t===`hue`?-1:1,l=!0;switch(o){case Pt.left:case Pt.down:d(-s*c);break;case Pt.right:case Pt.up:d(s*c);break;case Pt.home:e.color.set(t,t===`hue`?r:n);break;case Pt.end:e.color.set(t,t===`hue`?n:r);break;case Pt.pageDown:d(-4*c);break;case Pt.pageUp:d(4*c);break;default:l=!1}l&&i.preventDefault()}function d(i){let a=s.value+i;a=ar?r:a,e.color.set(t,a)}return{thumb:a,bar:o,currentValue:s,handleDrag:l,handleClick:c,handleKeydown:u}},Il=(e,{namespace:t,maxValue:n,bar:r,thumb:a,currentValue:o,handleDrag:s,getBackground:c})=>{let l=xe(),d=u(t),f=H(0),p=H(0),m=H();function h(){if(!a.value||e.vertical)return 0;let t=l.vnode.el,r=o.value;return t?Math.round(r*(t.offsetWidth-a.value.offsetWidth/2)/n):0}function g(){if(!a.value)return 0;let t=l.vnode.el;if(!e.vertical)return 0;let r=o.value;return t?Math.round(r*(t.offsetHeight-a.value.offsetHeight/2)/n):0}function _(){f.value=h(),p.value=g(),m.value=c?.()}i(()=>{if(!r.value||!a.value)return;let e={drag:e=>{s(e)},end:e=>{s(e)}};Pl(r.value,e),Pl(a.value,e),_()}),C(o,()=>_()),C(()=>e.color.value,()=>_());let v=B(()=>[d.b(),d.is(`vertical`,e.vertical),d.is(`disabled`,e.disabled)]),y=B(()=>d.e(`bar`)),b=B(()=>d.e(`thumb`));return{rootKls:v,barKls:y,barStyle:B(()=>({background:m.value})),thumbKls:b,thumbStyle:B(()=>({left:hn(f.value),top:hn(p.value)})),thumbLeft:f,thumbTop:p,update:_}},Ll=[`aria-label`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`tabindex`,`aria-disabled`],Rl=0,zl=100,Bl=Se({name:`ElColorAlphaSlider`,__name:`alpha-slider`,props:jl,setup(e,{expose:t}){let n=e,{currentValue:r,bar:i,thumb:a,handleDrag:o,handleClick:s,handleKeydown:c}=Fl(n,{key:`alpha`,minValue:Rl,maxValue:zl}),{rootKls:l,barKls:u,barStyle:d,thumbKls:f,thumbStyle:p,update:m}=Il(n,{namespace:`color-alpha-slider`,maxValue:zl,currentValue:r,bar:i,thumb:a,handleDrag:o,getBackground:v}),{t:h}=on(),g=B(()=>h(`el.colorpicker.alphaLabel`)),_=B(()=>h(`el.colorpicker.alphaDescription`,{alpha:r.value,color:n.color.value}));function v(){if(n.color&&n.color.value){let{r:e,g:t,b:r}=n.color.toRgb();return`linear-gradient(to right, rgba(${e}, ${t}, ${r}, 0) 0%, rgba(${e}, ${t}, ${r}, 1) 100%)`}return``}return t({update:m,bar:i,thumb:a}),(t,n)=>(k(),U(`div`,{class:T(K(l))},[G(`div`,{ref_key:`bar`,ref:i,class:T(K(u)),style:tt(K(d)),onClick:n[0]||=(...e)=>K(s)&&K(s)(...e)},null,6),G(`div`,{ref_key:`thumb`,ref:a,class:T(K(f)),style:tt(K(p)),"aria-label":g.value,"aria-valuenow":K(r),"aria-valuetext":_.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-valuemin":Rl,"aria-valuemax":zl,role:`slider`,tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,onKeydown:n[1]||=(...e)=>K(c)&&K(c)(...e)},null,46,Ll)],2))}}),Vl=[`aria-label`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`tabindex`,`aria-disabled`],Hl=0,Ul=360,Wl=Se({name:`ElColorHueSlider`,__name:`hue-slider`,props:Ml,setup(e,{expose:t}){let n=e,{currentValue:r,bar:i,thumb:a,handleDrag:o,handleClick:s,handleKeydown:c}=Fl(n,{key:`hue`,minValue:Hl,maxValue:Ul}),{rootKls:l,barKls:u,thumbKls:d,thumbStyle:f,thumbTop:p,update:m}=Il(n,{namespace:`color-hue-slider`,maxValue:Ul,currentValue:r,bar:i,thumb:a,handleDrag:o}),{t:h}=on(),g=B(()=>h(`el.colorpicker.hueLabel`)),_=B(()=>h(`el.colorpicker.hueDescription`,{hue:r.value,color:n.color.value}));return t({bar:i,thumb:a,thumbTop:p,update:m}),(t,n)=>(k(),U(`div`,{class:T(K(l))},[G(`div`,{ref_key:`bar`,ref:i,class:T(K(u)),onClick:n[0]||=(...e)=>K(s)&&K(s)(...e)},null,2),G(`div`,{ref_key:`thumb`,ref:a,class:T(K(d)),style:tt(K(f)),"aria-label":g.value,"aria-valuenow":K(r),"aria-valuetext":_.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-valuemin":Hl,"aria-valuemax":Ul,role:`slider`,tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,onKeydown:n[1]||=(...e)=>K(c)&&K(c)(...e)},null,46,Vl)],2))}}),Gl=R({colors:{type:h(Array),required:!0},color:{type:h(Object),required:!0},enableAlpha:{type:Boolean,required:!0},disabled:Boolean}),Kl=class{constructor(e={}){this._hue=0,this._saturation=100,this._value=100,this._alpha=100,this._tiny=new Gr,this._isValid=!1,this.enableAlpha=!1,this.format=``,this.value=``;for(let t in e)Ge(e,t)&&(this[t]=e[t]);e.value?this.fromString(e.value):this.doOnChange()}set(e,t){if(arguments.length===1&&typeof e==`object`){for(let t in e)Ge(e,t)&&this.set(t,e[t]);return}this[`_${e}`]=t,this._isValid=!0,this.doOnChange()}get(e){return[`hue`,`saturation`,`value`,`alpha`].includes(e)?Math.round(this[`_${e}`]):this[`_${e}`]}toRgb(){return this._isValid?this._tiny.toRgb():{r:255,g:255,b:255,a:0}}fromString(e){let t=new Gr(e);if(this._isValid=t.isValid,t.isValid){let{h:e,s:n,v:r,a:i}=t.toHsv();this._hue=e,this._saturation=n*100,this._value=r*100,this._alpha=i*100}else this._hue=0,this._saturation=100,this._value=100,this._alpha=100;this.doOnChange()}clear(){this._isValid=!1,this.value=``,this._hue=0,this._saturation=100,this._value=100,this._alpha=100}compare(e){let t=new Gr({h:e._hue,s:e._saturation/100,v:e._value/100,a:e._alpha/100});return this._tiny.equals(t)}doOnChange(){let{_hue:e,_saturation:t,_value:n,_alpha:r,format:i,enableAlpha:a}=this,o=i||(a?`rgb`:`hex`);i===`hex`&&a&&(o=`hex8`),this._tiny=new Gr({h:e,s:t/100,v:n/100,a:r/100}),this.value=this._isValid?this._tiny.toString(o):``}},ql=e=>{let{currentColor:t}=Xe(Al),n=H(i(e.colors,e.color));C(()=>t.value,t=>{let r=new Kl({value:t,enableAlpha:e.enableAlpha});n.value.forEach(e=>{e.selected=r.compare(e)})}),Ie(()=>{n.value=i(e.colors,e.color)});function r(t){e.color.fromString(e.colors[t])}function i(t,n){return t.map(t=>{let r=new Kl({value:t,enableAlpha:e.enableAlpha});return r.selected=r.compare(n),r})}return{rgbaColors:n,handleSelect:r}},Jl=e=>{let t=u(`color-predefine`),n=B(()=>[t.b(),t.is(`disabled`,e.disabled)]),r=B(()=>t.e(`colors`));function i(e){return[t.e(`color-selector`),t.is(`alpha`,e.get(`alpha`)<100),{selected:e.selected}]}return{rootKls:n,colorsKls:r,colorSelectorKls:i}},Yl=[`disabled`,`aria-label`,`onClick`],Xl=Se({name:`ElColorPredefine`,__name:`predefine`,props:Gl,setup(e){let t=e,{rgbaColors:n,handleSelect:r}=ql(t),{rootKls:i,colorsKls:a,colorSelectorKls:o}=Jl(t),{t:s}=on(),c=e=>s(`el.colorpicker.predefineDescription`,{value:e});return(t,s)=>(k(),U(`div`,{class:T(K(i))},[G(`div`,{class:T(K(a))},[(k(!0),U(ve,null,_(K(n),(t,n)=>(k(),U(`button`,{key:e.colors[n],type:`button`,disabled:e.disabled,"aria-label":c(t.value),class:T(K(o)(t)),onClick:e=>K(r)(n)},[G(`div`,{style:tt({backgroundColor:t.value})},null,4)],10,Yl))),128))],2)],2))}}),Zl=R({color:{type:h(Object),required:!0},disabled:Boolean}),Ql=e=>{let t=xe(),n=H(),r=H(0),i=H(0),a=H(`hsl(0, 100%, 50%)`),o=B(()=>e.color.get(`saturation`)),s=B(()=>e.color.get(`value`)),c=B(()=>e.color.get(`hue`));function l(t){e.disabled||(t.target!==n.value&&u(t),n.value?.focus({preventScroll:!0}))}function u(n){if(e.disabled)return;let a=t.vnode.el.getBoundingClientRect(),{clientX:o,clientY:s}=ni(n),c=o-a.left,l=s-a.top;c=Math.max(0,c),c=Math.min(c,a.width),l=Math.max(0,l),l=Math.min(l,a.height),i.value=c,r.value=l,e.color.set({saturation:c/a.width*100,value:100-l/a.height*100})}function d(t){if(e.disabled)return;let{shiftKey:n}=t,r=Xt(t),i=n?10:1,a=!0;switch(r){case Pt.left:f(-i);break;case Pt.right:f(i);break;case Pt.up:p(i);break;case Pt.down:p(-i);break;default:a=!1}a&&t.preventDefault()}function f(t){let n=o.value+t;n=n<0?0:n>100?100:n,e.color.set(`saturation`,n)}function p(t){let n=s.value+t;n=n<0?0:n>100?100:n,e.color.set(`value`,n)}return{cursorRef:n,cursorTop:r,cursorLeft:i,background:a,saturation:o,brightness:s,hue:c,handleClick:l,handleDrag:u,handleKeydown:d}},$l=(e,{cursorTop:t,cursorLeft:n,background:r,handleDrag:a})=>{let o=xe(),s=u(`color-svpanel`);function c(){let i=e.color.get(`saturation`),a=e.color.get(`value`),{clientWidth:s,clientHeight:c}=o.vnode.el;n.value=i*s/100,t.value=(100-a)*c/100,r.value=`hsl(${e.color.get(`hue`)}, 100%, 50%)`}return i(()=>{Pl(o.vnode.el,{drag:e=>{a(e)},end:e=>{a(e)}}),c()}),C([()=>e.color.get(`hue`),()=>e.color.get(`value`),()=>e.color.value],()=>c()),{rootKls:B(()=>s.b()),cursorKls:B(()=>s.e(`cursor`)),rootStyle:B(()=>({backgroundColor:r.value})),cursorStyle:B(()=>({top:hn(t.value),left:hn(n.value)})),update:c}},eu=[`tabindex`,`aria-disabled`,`aria-label`,`aria-valuenow`,`aria-valuetext`],tu=Se({name:`ElSvPanel`,__name:`sv-panel`,props:Zl,setup(e,{expose:t}){let n=e,{cursorRef:r,cursorTop:i,cursorLeft:a,background:o,saturation:s,brightness:c,handleClick:l,handleDrag:u,handleKeydown:d}=Ql(n),{rootKls:f,cursorKls:p,rootStyle:m,cursorStyle:h,update:g}=$l(n,{cursorTop:i,cursorLeft:a,background:o,handleDrag:u}),{t:_}=on(),v=B(()=>_(`el.colorpicker.svLabel`)),y=B(()=>_(`el.colorpicker.svDescription`,{saturation:s.value,brightness:c.value,color:n.color.value}));return t({update:g}),(t,n)=>(k(),U(`div`,{class:T(K(f)),style:tt(K(m)),onClick:n[1]||=(...e)=>K(l)&&K(l)(...e)},[G(`div`,{ref_key:`cursorRef`,ref:r,class:T(K(p)),style:tt(K(h)),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:`slider`,"aria-valuemin":`0,0`,"aria-valuemax":`100,100`,"aria-label":v.value,"aria-valuenow":`${K(s)},${K(c)}`,"aria-valuetext":y.value,onKeydown:n[0]||=(...e)=>K(d)&&K(d)(...e)},null,46,eu)],6))}}),nu=(e,t)=>{let n=Ne(new Kl({enableAlpha:e.showAlpha,format:e.colorFormat||``,value:e.modelValue}));return C(()=>[e.colorFormat,e.showAlpha],()=>{n.enableAlpha=e.showAlpha,n.format=e.colorFormat||n.format,n.doOnChange(),t(Kt,n.value)}),{color:n}},ru=fe(Se({name:`ElColorPickerPanel`,__name:`color-picker-panel`,props:Dl,emits:Ol,setup(e,{expose:t,emit:n}){let r=e,a=n,o=u(`color-picker-panel`),{formItem:s}=Dn(),c=Fn(),l=H(),d=H(),f=H(),p=H(),m=H(``),{color:h}=Xe(kl,()=>nu(r,a),!0);function g(){h.fromString(m.value),h.value!==m.value&&(m.value=h.value)}function _(){r.validateEvent&&s?.validate?.(`blur`).catch(Me)}function v(){l.value?.update(),d.value?.update(),f.value?.update()}return i(()=>{r.modelValue&&(m.value=h.value),J(v)}),C(()=>r.modelValue,e=>{e!==h.value&&(e?h.fromString(e):h.clear())}),C(()=>h.value,e=>{a(Kt,e),m.value=e,r.validateEvent&&s?.validate(`change`).catch(Me)}),P(Al,{currentColor:B(()=>h.value)}),t({color:h,inputRef:p,update:v}),(t,n)=>(k(),U(`div`,{class:T([K(o).b(),K(o).is(`disabled`,K(c)),K(o).is(`border`,e.border)]),onFocusout:_},[G(`div`,{class:T(K(o).e(`wrapper`))},[W(Wl,{ref_key:`hueRef`,ref:l,color:K(h),vertical:``,disabled:K(c),class:T([`hue-slider`,e.hueSliderClass]),style:tt(e.hueSliderStyle)},null,8,[`color`,`disabled`,`class`,`style`]),W(tu,{ref_key:`svRef`,ref:d,color:K(h),disabled:K(c)},null,8,[`color`,`disabled`])],2),e.showAlpha?(k(),q(Bl,{key:0,ref_key:`alphaRef`,ref:f,color:K(h),disabled:K(c)},null,8,[`color`,`disabled`])):V(`v-if`,!0),e.predefine?(k(),q(Xl,{key:1,ref:`predefine`,"enable-alpha":e.showAlpha,color:K(h),colors:e.predefine,disabled:K(c)},null,8,[`enable-alpha`,`color`,`colors`,`disabled`])):V(`v-if`,!0),G(`div`,{class:T(K(o).e(`footer`))},[W(K(qt),{ref_key:`inputRef`,ref:p,modelValue:m.value,"onUpdate:modelValue":n[0]||=e=>m.value=e,"validate-event":!1,size:`small`,disabled:K(c),onChange:g},null,8,[`modelValue`,`disabled`]),x(t.$slots,`footer`)],2)],34))}})),iu=R({persistent:{type:Boolean,default:!0},modelValue:{type:h(String),default:void 0},id:String,showAlpha:Boolean,colorFormat:{type:h(String)},disabled:{type:Boolean,default:void 0},clearable:{type:Boolean,default:!0},size:Kn,popperClass:Mr.popperClass,popperStyle:Mr.popperStyle,tabindex:{type:[String,Number],default:0},teleported:Mr.teleported,appendTo:Mr.appendTo,predefine:{type:h(Array)},validateEvent:{type:Boolean,default:!0},...vn,...Rt([`ariaLabel`])}),au={[Kt]:e=>D(e)||v(e),[Mt]:e=>D(e)||v(e),activeChange:e=>D(e)||v(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},ou=[`id`,`aria-label`,`aria-labelledby`,`aria-description`,`aria-disabled`,`tabindex`],su=fe(Se({name:`ElColorPicker`,__name:`color-picker`,props:iu,emits:au,setup(e,{expose:t,emit:n}){let r=e,i=n,{t:a}=on(),o=u(`color`),{formItem:l}=Dn(),d=zn(),f=Fn(),{valueOnClear:p,isEmptyValue:m}=Tn(r,null),h=nu(r,i),{inputId:g,isLabeledByFormItem:_}=yn(r,{formItemContext:l}),v=H(),y=H(),x=H(),w=H(!1),E=H(!1),D=!0,{isFocused:O,handleFocus:A,handleBlur:j}=Jt(y,{disabled:f,beforeBlur(e){return v.value?.isFocusInsideContent(e)},afterBlur(){L(!1),oe(),r.validateEvent&&l?.validate?.(`blur`).catch(Me)}}),M=_n(()=>x.value?.color??h.color),N=B(()=>kt(r,Object.keys(Dl))),ee=B(()=>!r.modelValue&&!E.value?`transparent`:re(M,r.showAlpha)),F=B(()=>!r.modelValue&&!E.value?``:M.value),I=B(()=>_.value?void 0:r.ariaLabel||a(`el.colorpicker.defaultLabel`)),te=B(()=>_.value?l?.labelId:void 0),ne=B(()=>[o.b(`picker`),o.is(`disabled`,f.value),o.bm(`picker`,d.value),o.is(`focused`,O.value)]);function re(e,t){let{r:n,g:r,b:i,a}=e.toRgb();return t?`rgba(${n}, ${r}, ${i}, ${a})`:`rgb(${n}, ${r}, ${i})`}function L(e){w.value=e}let ie=_r(L,100,{leading:!0});function ae(){f.value||L(!0)}function R(){ie(!1),oe()}function oe(){J(()=>{r.modelValue?M.fromString(r.modelValue):(M.value=``,J(()=>{E.value=!1}))})}function z(){f.value||(w.value&&oe(),ie(!w.value))}function se(){let e=m(M.value)?p.value:M.value;i(Kt,e),i(Mt,e),r.validateEvent&&l?.validate(`change`).catch(Me),ie(!1),J(()=>{let e=new Kl({enableAlpha:r.showAlpha,format:r.colorFormat||``,value:r.modelValue});M.compare(e)||oe()})}function ce(){ie(!1),i(Kt,p.value),i(Mt,p.value),r.modelValue!==p.value&&r.validateEvent&&l?.validate(`change`).catch(Me),oe(),i(`clear`)}function le(){x?.value?.inputRef?.focus()}function de(){w.value&&(R(),O.value&&me())}function fe(e){e.preventDefault(),e.stopPropagation(),L(!1),oe()}function pe(e){switch(Xt(e)){case Pt.enter:case Pt.numpadEnter:case Pt.space:e.preventDefault(),e.stopPropagation(),ae();break;case Pt.esc:fe(e)}}function me(){y.value.focus()}function he(){y.value.blur()}return C(()=>F.value,e=>{D&&i(`activeChange`,e),D=!0}),C(()=>M.value,()=>{!r.modelValue&&!E.value&&(E.value=!0)}),C(()=>r.modelValue,e=>{e?e&&e!==M.value&&(D=!1,M.fromString(e)):E.value=!1}),C(()=>w.value,()=>{x.value&&J(x.value.update)}),P(kl,h),t({color:M,show:ae,hide:R,focus:me,blur:he}),(t,n)=>(k(),q(K(Cr),{ref_key:`popper`,ref:v,visible:w.value,"show-arrow":!1,"fallback-placements":[`bottom`,`top`,`right`,`left`],offset:0,"gpu-acceleration":!1,"popper-class":[K(o).be(`picker`,`panel`),e.popperClass],"popper-style":e.popperStyle,"stop-popper-mouse-event":!1,pure:``,loop:``,role:`dialog`,effect:`light`,trigger:`click`,teleported:e.teleported,transition:`${K(o).namespace.value}-zoom-in-top`,persistent:e.persistent,"append-to":e.appendTo,onShow:le,onHide:n[2]||=e=>L(!1)},{content:S(()=>[ue((k(),q(K(ru),c({ref_key:`pickerPanelRef`,ref:x},N.value,{border:!1,"validate-event":!1,onKeydown:it(fe,[`esc`])}),{footer:S(()=>[G(`div`,null,[e.clearable?(k(),q(K(Kr),{key:0,class:T(K(o).be(`footer`,`link-btn`)),text:``,size:`small`,onClick:ce},{default:S(()=>[Pe(s(K(a)(`el.colorpicker.clear`)),1)]),_:1},8,[`class`])):V(`v-if`,!0),W(K(Kr),{plain:``,size:`small`,class:T(K(o).be(`footer`,`btn`)),onClick:se},{default:S(()=>[Pe(s(K(a)(`el.colorpicker.confirm`)),1)]),_:1},8,[`class`])])]),_:1},16)),[[K(Nr),de,y.value]])]),default:S(()=>[G(`div`,c({id:K(g),ref_key:`triggerRef`,ref:y},t.$attrs,{class:ne.value,role:`button`,"aria-label":I.value,"aria-labelledby":te.value,"aria-description":K(a)(`el.colorpicker.description`,{color:e.modelValue||``}),"aria-disabled":K(f),tabindex:K(f)?void 0:e.tabindex,onKeydown:pe,onFocus:n[0]||=(...e)=>K(A)&&K(A)(...e),onBlur:n[1]||=(...e)=>K(j)&&K(j)(...e)}),[G(`div`,{class:T(K(o).be(`picker`,`trigger`)),onClick:z},[G(`span`,{class:T([K(o).be(`picker`,`color`),K(o).is(`alpha`,e.showAlpha)])},[G(`span`,{class:T(K(o).be(`picker`,`color-inner`)),style:tt({backgroundColor:ee.value})},[ue(W(K(Hn),{class:T([K(o).be(`picker`,`icon`),K(o).is(`icon-arrow-down`)])},{default:S(()=>[W(K(Ue))]),_:1},8,[`class`]),[[nt,e.modelValue||E.value]]),ue(W(K(Hn),{class:T([K(o).be(`picker`,`empty`),K(o).is(`icon-close`)])},{default:S(()=>[W(K(b))]),_:1},8,[`class`]),[[nt,!e.modelValue&&!E.value]])],6)],2)],2)],16,ou)]),_:1},8,[`visible`,`popper-class`,`popper-style`,`teleported`,`transition`,`persistent`,`append-to`]))}})),cu=Se({name:`ElContainer`,__name:`container`,props:{direction:{type:String,required:!1}},setup(e){let t=e,n=ce(),r=u(`container`),i=B(()=>t.direction===`vertical`?!0:t.direction===`horizontal`?!1:n&&n.default?n.default().some(e=>{let t=e.type.name;return t===`ElHeader`||t===`ElFooter`}):!1);return(e,t)=>(k(),U(`section`,{class:T([K(r).b(),K(r).is(`vertical`,i.value)])},[x(e.$slots,`default`)],2))}}),lu=Se({name:`ElAside`,__name:`aside`,props:{width:{type:[String,null],required:!1,default:null}},setup(e){let t=e,n=u(`aside`),r=B(()=>t.width?n.cssVarBlock({width:t.width}):{});return(e,t)=>(k(),U(`aside`,{class:T(K(n).b()),style:tt(r.value)},[x(e.$slots,`default`)],6))}}),uu=Se({name:`ElFooter`,__name:`footer`,props:{height:{type:[String,null],required:!1,default:null}},setup(e){let t=e,n=u(`footer`),r=B(()=>t.height?n.cssVarBlock({height:t.height}):{});return(e,t)=>(k(),U(`footer`,{class:T(K(n).b()),style:tt(r.value)},[x(e.$slots,`default`)],6))}}),du=Se({name:`ElHeader`,__name:`header`,props:{height:{type:[String,null],required:!1,default:null}},setup(e){let t=e,n=u(`header`),r=B(()=>t.height?n.cssVarBlock({height:t.height}):{});return(e,t)=>(k(),U(`header`,{class:T(K(n).b()),style:tt(r.value)},[x(e.$slots,`default`)],6))}}),fu=Se({name:`ElMain`,__name:`main`,setup(e){let t=u(`main`);return(e,n)=>(k(),U(`main`,{class:T(K(t).b())},[x(e.$slots,`default`)],2))}}),pu=fe(cu,{Aside:lu,Footer:uu,Header:du,Main:fu}),mu=me(lu),hu=me(uu),gu=me(du),_u=me(fu),vu=R({format:{type:String,default:`HH:mm:ss`},prefix:String,suffix:String,title:String,value:{type:h([Number,Object]),default:0},valueStyle:{type:h([String,Object,Array,Boolean]),default:void 0}}),yu={finish:()=>!0,[Mt]:e=>a(e)},bu=R({decimalSeparator:{type:String,default:`.`},groupSeparator:{type:String,default:`,`},precision:{type:Number,default:0},formatter:Function,value:{type:h([Number,Object]),default:0},prefix:String,suffix:String,title:String,valueStyle:{type:h([String,Object,Array,Boolean]),default:void 0}}),xu=fe(Se({name:`ElStatistic`,__name:`statistic`,props:bu,setup(e,{expose:t}){let n=e,r=u(`statistic`),i=B(()=>{let{value:e,formatter:t,precision:r,decimalSeparator:i,groupSeparator:o}=n;if(qe(t))return t(e);if(!a(e)||Number.isNaN(e))return e;let[s,c=``]=String(e).split(`.`);return c=c.padEnd(r,`0`).slice(0,r>0?r:0),s=s.replace(/\B(?=(\d{3})+(?!\d))/g,o),[s,c].join(c?i:``)});return t({displayValue:i}),(t,n)=>(k(),U(`div`,{class:T(K(r).b())},[t.$slots.title||e.title?(k(),U(`div`,{key:0,class:T(K(r).e(`head`))},[x(t.$slots,`title`,{},()=>[Pe(s(e.title),1)])],2)):V(`v-if`,!0),G(`div`,{class:T(K(r).e(`content`))},[t.$slots.prefix||e.prefix?(k(),U(`div`,{key:0,class:T(K(r).e(`prefix`))},[x(t.$slots,`prefix`,{},()=>[G(`span`,null,s(e.prefix),1)])],2)):V(`v-if`,!0),G(`span`,{class:T(K(r).e(`number`)),style:tt(e.valueStyle)},s(i.value),7),t.$slots.suffix||e.suffix?(k(),U(`div`,{key:1,class:T(K(r).e(`suffix`))},[x(t.$slots,`suffix`,{},()=>[G(`span`,null,s(e.suffix),1)])],2)):V(`v-if`,!0)],2)],2))}})),Su=[[`Y`,31536e6],[`M`,2592e6],[`D`,864e5],[`H`,36e5],[`m`,6e4],[`s`,1e3],[`S`,1]],Cu=e=>a(e)?new Date(e).getTime():e.valueOf(),wu=(e,t)=>{let n=e;return Su.reduce((e,[t,r])=>{let i=RegExp(`${t}+(?![^\\[\\]]*\\])`,`g`);if(i.test(e)){let t=Math.floor(n/r);return n-=t*r,e.replace(i,e=>String(t).padStart(e.length,`0`))}return e},t).replace(/\[([^\]]*)]/g,`$1`)},Tu=fe(Se({name:`ElCountdown`,__name:`countdown`,props:vu,emits:yu,setup(e,{expose:t,emit:n}){let r=e,a=n,o,s=H(0),c=B(()=>wu(s.value,r.format)),l=e=>wu(e,r.format),u=()=>{o&&=(zt(o),void 0)},f=()=>{let e=Cu(r.value),t=()=>{let n=e-Date.now();a(Mt,n),n<=0?(n=0,u(),a(`finish`)):o=xt(t),s.value=n};o=xt(t)};return i(()=>{s.value=Cu(r.value)-Date.now(),C(()=>[r.value,r.format],()=>{u(),f()},{immediate:!0})}),d(()=>{u()}),t({displayValue:c}),(t,n)=>(k(),q(K(xu),{value:s.value,title:e.title,prefix:e.prefix,suffix:e.suffix,"value-style":e.valueStyle,formatter:l},_e({_:2},[_(t.$slots,(e,n)=>({name:n,fn:S(()=>[x(t.$slots,n)])}))]),1032,[`value`,`title`,`prefix`,`suffix`,`value-style`]))}})),Eu=R({direction:{type:String,values:[`horizontal`,`vertical`],default:`horizontal`},contentPosition:{type:String,values:[`left`,`center`,`right`],default:`center`},borderStyle:{type:h(String),default:`solid`}}),Du=fe(Se({name:`ElDivider`,__name:`divider`,props:Eu,setup(e){let t=e,n=u(`divider`),r=B(()=>n.cssVar({"border-style":t.borderStyle}));return(t,i)=>(k(),U(`div`,{class:T([K(n).b(),K(n).m(e.direction)]),style:tt(r.value),role:`separator`},[t.$slots.default&&e.direction!==`vertical`?(k(),U(`div`,{key:0,class:T([K(n).e(`text`),K(n).is(e.contentPosition)])},[x(t.$slots,`default`)],2)):V(`v-if`,!0)],6))}})),Ou=R({modelValue:{type:h(Array)},max:Number,tagType:{...qr.type,default:`info`},tagEffect:qr.effect,effect:{type:h(String),default:`light`},trigger:{type:h(String),default:Pt.enter},draggable:Boolean,delimiter:{type:[String,RegExp],default:``},size:Kn,clearable:Boolean,clearIcon:{type:En,default:O},disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},readonly:Boolean,autofocus:Boolean,id:{type:String,default:void 0},tabindex:{type:[String,Number],default:0},maxlength:{type:[String,Number]},minlength:{type:[String,Number]},placeholder:String,autocomplete:{type:h(String),default:`off`},saveOnBlur:{type:Boolean,default:!0},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},ariaLabel:String}),ku={[Kt]:e=>L(e)||A(e),[Mt]:e=>L(e)||A(e),[Wt]:e=>D(e),"add-tag":e=>D(e)||L(e),"remove-tag":(e,t)=>D(e)&&a(t),"drag-tag":(e,t,n)=>a(e)&&a(t)&&D(n),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0};function Au({wrapperRef:e,handleDragged:t,afterDragged:n}){let r=u(`input-tag`),i=Re(),a=H(!1),o,s,c,l;function d(e){return`.${r.e(`inner`)} .${r.namespace.value}-tag:nth-child(${e+1})`}function f(t,n){o=n,s=e.value.querySelector(d(n)),s&&(s.style.opacity=`0.5`),t.dataTransfer.effectAllowed=`move`}function p(t,n){if(c=n,t.preventDefault(),t.dataTransfer.dropEffect=`move`,A(o)||o===n){a.value=!1;return}let s=e.value.querySelector(d(n)).getBoundingClientRect(),u=o+1!==n,f=o-1!==n,p=t.clientX-s.left,m=u?f?.5:1:-1,h=f?u?.5:0:1;l=p<=s.width*m?`before`:p>s.width*h?`after`:void 0;let g=e.value.querySelector(`.${r.e(`inner`)}`),_=g.getBoundingClientRect(),v=Number.parseFloat(sn(g,`gap`))/2,y=s.top-_.top,b=-9999;if(l===`before`)b=Math.max(s.left-_.left-v,Math.floor(-v/2));else if(l===`after`){let e=s.right-_.left;b=e+(_.width===e?Math.floor(v/2):v)}An(i.value,{top:`${y}px`,left:`${b}px`}),a.value=!!l}function m(e){e.preventDefault(),s&&(s.style.opacity=``),l&&!A(o)&&!A(c)&&o!==c&&t(o,c,l),a.value=!1,o=void 0,s=null,c=void 0,l=void 0,n?.()}return{dropIndicatorRef:i,showDropIndicator:a,handleDragStart:f,handleDragOver:p,handleDragEnd:m}}function ju(){let e=H(!1);return{hovering:e,handleMouseEnter:()=>{e.value=!0},handleMouseLeave:()=>{e.value=!1}}}function Mu({props:e,emit:t,formItem:n}){let r=Fn(),i=zn(),a=Re(),o=H(),s=H(),c=B(()=>[`small`].includes(i.value)?`small`:`default`),l=B(()=>e.modelValue?.length?void 0:e.placeholder),u=B(()=>!(e.readonly||r.value)),d=B(()=>!A(e.max)&&(e.modelValue?.length??0)>=e.max),f=B(()=>e.collapseTags?e.modelValue?.slice(0,e.maxCollapseTags):e.modelValue),p=B(()=>e.collapseTags?e.modelValue?.slice(e.maxCollapseTags):[]),m=n=>{let r=[...e.modelValue??[],...lr(n)];t(Kt,r),t(Mt,r),t(`add-tag`,n),o.value=void 0},h=t=>{let n=t.split(e.delimiter),r=n.length>1?n.map(e=>e.trim()).filter(Boolean):[];if(e.max){let t=e.max-(e.modelValue?.length??0);r.splice(t)}return r.length===1?r[0]:r},g=n=>{let r=n.clipboardData?.getData(`text`);if(e.readonly||d.value||!e.delimiter||!r)return;let{selectionStart:i=0,selectionEnd:a=0,value:o}=n.target,s=o.slice(0,i)+r+o.slice(a),c=h(s);c.length&&(m(c),t(Wt,s),n.preventDefault())},_=n=>{if(d.value){o.value=void 0;return}if(!k.value){if(e.delimiter&&o.value){let e=h(o.value);e.length&&m(e)}t(Wt,n.target.value)}},v=t=>{if(!k.value)switch(Xt(t)){case e.trigger:t.preventDefault(),t.stopPropagation(),b();break;case Pt.numpadEnter:e.trigger===Pt.enter&&(t.preventDefault(),t.stopPropagation(),b());break;case Pt.backspace:!o.value&&e.modelValue?.length&&(t.preventDefault(),t.stopPropagation(),x(e.modelValue.length-1))}},y=t=>{if(!(k.value||!St()))switch(Xt(t)){case Pt.space:e.trigger===Pt.space&&(t.preventDefault(),t.stopPropagation(),b())}},b=()=>{let e=o.value?.trim();!e||d.value||m(e)},x=n=>{let r=(e.modelValue??[]).slice(),[i]=r.splice(n,1);t(Kt,r),t(Mt,r),t(`remove-tag`,i,n)},S=()=>{o.value=void 0,t(Kt,void 0),t(Mt,void 0),t(`clear`)},w=(n,r,i)=>{let a=(e.modelValue??[]).slice(),[o]=a.splice(n,1),s=r>n&&i===`before`?-1:+(r{a.value?.focus()},E=()=>{a.value?.blur()},{wrapperRef:D,isFocused:O}=Jt(a,{disabled:r,beforeBlur(e){return s.value?.isFocusInsideContent(e)},afterBlur(){e.saveOnBlur?b():o.value=void 0,e.validateEvent&&n?.validate?.(`blur`).catch(Me)}}),{isComposing:k,handleCompositionStart:j,handleCompositionUpdate:M,handleCompositionEnd:N}=jt({afterComposition:_});return C(()=>e.modelValue,()=>{e.validateEvent&&n?.validate?.(Mt).catch(Me)}),{inputRef:a,wrapperRef:D,tagTooltipRef:s,isFocused:O,isComposing:k,inputValue:o,size:i,tagSize:c,placeholder:l,closable:u,disabled:r,inputLimit:d,showTagList:f,collapseTagList:p,handleDragged:w,handlePaste:g,handleInput:_,handleKeydown:v,handleKeyup:y,handleAddTag:b,handleRemoveTag:x,handleClear:S,handleCompositionStart:j,handleCompositionUpdate:M,handleCompositionEnd:N,focus:T,blur:E}}function Nu({props:e,isFocused:t,hovering:n,disabled:r,inputValue:i,size:a,validateState:o,validateIcon:s,needStatusIcon:c}){let l=oe(),d=ce(),f=u(`input-tag`),p=u(`input`),m=H(),h=H(),g=B(()=>[f.b(),f.is(`focused`,t.value),f.is(`hovering`,n.value),f.is(`disabled`,r.value),f.m(a.value),f.e(`wrapper`),l.class]),_=B(()=>[l.style]),v=B(()=>[f.e(`inner`),f.is(`draggable`,e.draggable),f.is(`left-space`,!e.modelValue?.length&&!d.prefix),f.is(`right-space`,!e.modelValue?.length&&!b.value)]),y=B(()=>e.clearable&&!r.value&&!e.readonly&&(e.modelValue?.length||i.value)&&(t.value||n.value)),b=B(()=>d.suffix||y.value||o.value&&s.value&&c.value),x=Ne({innerWidth:0,collapseItemWidth:0}),S=()=>{if(!h.value)return 0;let e=window.getComputedStyle(h.value);return Number.parseFloat(e.gap||`6px`)},C=()=>{x.innerWidth=Number.parseFloat(window.getComputedStyle(h.value).width)},w=()=>{x.collapseItemWidth=m.value.getBoundingClientRect().width},T=B(()=>{if(!e.collapseTags)return{};let t=S(),n=t+11,r=m.value&&e.maxCollapseTags===1?x.innerWidth-x.collapseItemWidth-t-n:x.innerWidth-n;return{maxWidth:`${Math.max(r,0)}px`}});return gt(h,C),gt(m,w),{ns:f,nsInput:p,containerKls:g,containerStyle:_,innerKls:v,showClear:y,showSuffix:b,tagStyle:T,collapseItemRef:m,innerRef:h}}var Pu=[`id`,`minlength`,`maxlength`,`disabled`,`readonly`,`autocomplete`,`tabindex`,`placeholder`,`autofocus`,`ariaLabel`],Fu=[`textContent`],Iu=fe(Se({name:`ElInputTag`,inheritAttrs:!1,__name:`input-tag`,props:Ou,emits:ku,setup(e,{expose:n,emit:r}){let i=e,a=r,o=At(),l=ce(),{form:u,formItem:d}=Dn(),{inputId:f}=yn(i,{formItemContext:d}),p=B(()=>u?.statusIcon??!1),m=B(()=>d?.validateState||``),h=B(()=>m.value&&Mn[m.value]),{inputRef:g,wrapperRef:v,tagTooltipRef:y,isFocused:b,inputValue:C,size:w,tagSize:E,placeholder:D,closable:O,disabled:A,showTagList:j,collapseTagList:M,handleDragged:N,handlePaste:P,handleInput:ee,handleKeydown:F,handleKeyup:I,handleRemoveTag:te,handleClear:ne,handleCompositionStart:re,handleCompositionUpdate:L,handleCompositionEnd:ie,focus:ae,blur:R}=Mu({props:i,emit:a,formItem:d}),{hovering:oe,handleMouseEnter:z,handleMouseLeave:se}=ju(),{calculatorRef:le,inputStyle:de}=Zn(),{dropIndicatorRef:fe,showDropIndicator:pe,handleDragStart:me,handleDragOver:he,handleDragEnd:ge}=Au({wrapperRef:v,handleDragged:N,afterDragged:ae}),{ns:_e,nsInput:ye,containerKls:be,containerStyle:xe,innerKls:Se,showClear:Ce,showSuffix:H,tagStyle:we,collapseItemRef:Te,innerRef:Ee}=Nu({props:i,hovering:oe,isFocused:b,inputValue:C,disabled:A,size:w,validateState:m,validateIcon:h,needStatusIcon:p});return n({focus:ae,blur:R}),(n,r)=>(k(),U(`div`,{ref_key:`wrapperRef`,ref:v,class:T(K(be)),style:tt(K(xe)),onMouseenter:r[9]||=(...e)=>K(z)&&K(z)(...e),onMouseleave:r[10]||=(...e)=>K(se)&&K(se)(...e)},[K(l).prefix?(k(),U(`div`,{key:0,class:T(K(_e).e(`prefix`))},[x(n.$slots,`prefix`)],2)):V(`v-if`,!0),G(`div`,{ref_key:`innerRef`,ref:Ee,class:T(K(Se))},[(k(!0),U(ve,null,_(K(j),(t,i)=>(k(),q(K(Jr),{key:i,size:K(E),closable:K(O),type:e.tagType,effect:e.tagEffect,draggable:K(O)&&e.draggable,style:tt(K(we)),"disable-transitions":``,onClose:e=>K(te)(i),onDragstart:e=>K(me)(e,i),onDragover:e=>K(he)(e,i),onDragend:K(ge),onDrop:r[0]||=lt(()=>{},[`stop`])},{default:S(()=>[x(n.$slots,`tag`,{value:t,index:i},()=>[Pe(s(t),1)])]),_:2},1032,[`size`,`closable`,`type`,`effect`,`draggable`,`style`,`onClose`,`onDragstart`,`onDragover`,`onDragend`]))),128)),e.collapseTags&&e.modelValue&&e.modelValue.length>e.maxCollapseTags?(k(),q(K(Cr),{key:0,ref_key:`tagTooltipRef`,ref:y,disabled:!e.collapseTagsTooltip,"fallback-placements":[`bottom`,`top`,`right`,`left`],effect:e.effect,placement:`bottom`},{default:S(()=>[G(`div`,{ref_key:`collapseItemRef`,ref:Te,class:T(K(_e).e(`collapse-tag`))},[W(K(Jr),{closable:!1,size:K(E),type:e.tagType,effect:e.tagEffect,"disable-transitions":``},{default:S(()=>[Pe(` + `+s(e.modelValue.length-e.maxCollapseTags),1)]),_:1},8,[`size`,`type`,`effect`])],2)]),content:S(()=>[G(`div`,{class:T(K(_e).e(`input-tag-list`))},[(k(!0),U(ve,null,_(K(M),(t,r)=>(k(),q(K(Jr),{key:r,size:K(E),closable:K(O),type:e.tagType,effect:e.tagEffect,"disable-transitions":``,onClose:t=>K(te)(r+e.maxCollapseTags)},{default:S(()=>[x(n.$slots,`tag`,{value:t,index:r+e.maxCollapseTags},()=>[Pe(s(t),1)])]),_:2},1032,[`size`,`closable`,`type`,`effect`,`onClose`]))),128))],2)]),_:3},8,[`disabled`,`effect`])):V(`v-if`,!0),G(`div`,{class:T(K(_e).e(`input-wrapper`))},[ue(G(`input`,c({id:K(f),ref_key:`inputRef`,ref:g,"onUpdate:modelValue":r[1]||=e=>t(C)?C.value=e:null},K(o),{type:`text`,minlength:e.minlength,maxlength:e.maxlength,disabled:K(A),readonly:e.readonly,autocomplete:e.autocomplete,tabindex:e.tabindex,placeholder:K(D),autofocus:e.autofocus,ariaLabel:e.ariaLabel,class:K(_e).e(`input`),style:K(de),onCompositionstart:r[2]||=(...e)=>K(re)&&K(re)(...e),onCompositionupdate:r[3]||=(...e)=>K(L)&&K(L)(...e),onCompositionend:r[4]||=(...e)=>K(ie)&&K(ie)(...e),onPaste:r[5]||=(...e)=>K(P)&&K(P)(...e),onInput:r[6]||=(...e)=>K(ee)&&K(ee)(...e),onKeydown:r[7]||=(...e)=>K(F)&&K(F)(...e),onKeyup:r[8]||=(...e)=>K(I)&&K(I)(...e)}),null,16,Pu),[[st,K(C)]]),G(`span`,{ref_key:`calculatorRef`,ref:le,"aria-hidden":`true`,class:T(K(_e).e(`input-calculator`)),textContent:s(K(C))},null,10,Fu)],2),ue(G(`div`,{ref_key:`dropIndicatorRef`,ref:fe,class:T(K(_e).e(`drop-indicator`))},null,2),[[nt,K(pe)]])],2),K(H)?(k(),U(`div`,{key:1,class:T(K(_e).e(`suffix`))},[x(n.$slots,`suffix`),K(Ce)?(k(),q(K(Hn),{key:0,class:T([K(_e).e(`icon`),K(_e).e(`clear`)]),onMousedown:lt(K(Me),[`prevent`]),onClick:K(ne)},{default:S(()=>[(k(),q(et(e.clearIcon)))]),_:1},8,[`class`,`onMousedown`,`onClick`])):V(`v-if`,!0),m.value&&h.value&&p.value?(k(),q(K(Hn),{key:1,class:T([K(ye).e(`icon`),K(ye).e(`validateIcon`),K(ye).is(`loading`,m.value===`validating`)])},{default:S(()=>[(k(),q(et(h.value)))]),_:1},8,[`class`])):V(`v-if`,!0)],2)):V(`v-if`,!0)],38))}})),Lu={[Kt]:e=>D(e),[Mt]:e=>D(e),finish:e=>D(e),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},Ru=[`id`,`aria-label`,`aria-labelledby`],zu=[`value`,`type`,`disabled`,`readonly`,`inputmode`,`aria-label`,`onClick`,`onKeydown`,`onInput`],Bu=fe(Se({name:`ElInputOtp`,__name:`input-otp`,props:{modelValue:{type:[String,Number],required:!1},length:{type:Number,required:!1,default:6},validator:{type:Function,required:!1,default:()=>!0},inputmode:{type:null,required:!1},type:{type:String,required:!1,default:`outlined`},size:{type:null,required:!1},mask:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1,default:void 0},readonly:{type:Boolean,required:!1},id:{type:String,required:!1},validateEvent:{type:Boolean,required:!1,default:!0},separator:{type:[String,Object,Function],required:!1},ariaLabel:{type:String,required:!1}},emits:Lu,setup(e,{expose:t,emit:n}){let r=e,i=n,a=B(()=>{let e=String(r.modelValue??``);return Array.from({length:r.length},(t,n)=>e.charAt(n))}),o=B(()=>{let{separator:e}=r,t=qe(e)?e:()=>e;return Array.from({length:r.length-1},(e,n)=>t(n))}),s=H(a.value),c=H(!1),l=H([]),d=u(`input-otp`),{t:f}=on(),{formItem:p}=Dn(),{inputId:m,isLabeledByFormItem:h}=yn(r,{formItemContext:p}),g=zn(),v=Fn(),y=r.modelValue,b=e=>{let t=s.value.findIndex((t,n)=>!t&&n<=e);return t===-1?e:t},S=e=>{l.value?.includes(e.relatedTarget)||(c.value=!0,i(`focus`,e))},w=e=>{l.value?.includes(e.relatedTarget)||(c.value=!1,i(`blur`,e),r.validateEvent&&p?.validate?.(`blur`).catch(Me))},E=(e=!0)=>{let t=s.value.join(``).slice(0,r.length);t!==r.modelValue&&(i(Kt,t),e&&t.length===r.length&&i(`finish`,t))},D=(e,t)=>{let n=Xt(e),i=!0;switch(n){case Pt.backspace:if(r.readonly)break;s.value[t]=``,j(t-1),E();break;case Pt.delete:if(r.readonly)break;s.value[t]=``,j(t),E();break;case Pt.up:case Pt.left:j(t-1);break;case Pt.down:case Pt.right:j(t+1);break;default:i=!1}i&&e.preventDefault()},O=(e,t)=>{let n=e.target,i=b(t),a=i+1,o=n.value;if(o.length>1){let e=A(o,i);n.value=s.value[t]??``,e.forEach((e,t)=>s.value[i+t]=e),j(i+e.length),E();return}r.validator(o,i)||(n.value=s.value[t]??``,o=n.value,a=i),s.value[i]=o,i!==t&&(n.value=s.value[t]??``),j(a),E()},A=(e,t=0)=>{let n=`${e??``}`.split(``),i=[];for(let e of n){if(i.length+t>=r.length)break;r.validator(e,i.length+t)&&i.push(e)}return i},j=(e=0)=>{let t=qn(e,0,r.length-1),n=l.value?.[t];document.activeElement!==n&&n?.focus(),xt(()=>{!r.readonly&&document.activeElement===n&&n?.select()})};return C(()=>r.modelValue,()=>{s.value=a.value,r.validateEvent&&p?.validate?.(`change`).catch(Me)}),C(()=>r.length,()=>{s.value=a.value,E(!1)}),C(c,e=>{if(e){y=r.modelValue;return}y!==r.modelValue&&i(Mt,r.modelValue)}),t({inputRefs:l,focus:j,blur:()=>{(l.value?.find(e=>document.activeElement===e))?.blur()}}),(t,n)=>(k(),U(`div`,{id:K(m),class:T([K(d).b(),K(d).m(K(g)),K(d).m(e.type),K(d).is(`disabled`,K(v))]),role:`group`,"aria-label":K(h)?void 0:e.ariaLabel||K(f)(`el.inputOTP.groupLabel`),"aria-labelledby":K(h)?K(p)?.labelId:void 0},[(k(!0),U(ve,null,_(e.length,(n,r)=>(k(),U(ve,{key:r},[G(`label`,{class:T(K(d).e(`input-field`))},[G(`input`,{ref_for:!0,ref_key:`inputRefs`,ref:l,value:s.value[r],class:T(K(d).e(`input`)),type:e.mask?`password`:`text`,disabled:K(v),readonly:e.readonly,inputmode:e.inputmode,autocomplete:`one-time-code`,"aria-label":K(f)(`el.inputOTP.defaultLabel`,{index:r+1}),onFocus:S,onBlur:w,onClick:e=>j(r),onKeydown:e=>D(e,r),onInput:e=>O(e,r)},null,42,zu)],2),(t.$slots.separator||o.value[r])&&r[(k(),q(et(()=>o.value[r])))]):V(`v-if`,!0)],64))),128))],10,Ru))}})),Vu=R({type:{type:String,values:[`primary`,`success`,`warning`,`info`,`danger`,`default`],default:void 0},underline:{type:[Boolean,String],values:[!0,!1,`always`,`never`,`hover`],default:void 0},disabled:Boolean,href:{type:String,default:``},target:{type:String,default:`_self`},icon:{type:En}}),Hu={click:e=>e instanceof MouseEvent},Uu=[`href`,`target`],Wu=fe(Se({name:`ElLink`,__name:`link`,props:Vu,emits:Hu,setup(e,{emit:t}){let n=e,r=t,i=Rn(`link`);pn({scope:`el-link`,from:`The underline option (boolean)`,replacement:`'always' | 'hover' | 'never'`,version:`3.0.0`,ref:`https://element-plus.org/en-US/component/link.html#underline`},B(()=>f(n.underline)));let a=u(`link`),o=B(()=>[a.b(),a.m(n.type??i.value?.type??`default`),a.is(`disabled`,n.disabled),a.is(`underline`,s.value===`always`),a.is(`hover-underline`,s.value===`hover`&&!n.disabled)]),s=B(()=>f(n.underline)?n.underline?`hover`:`never`:n.underline??i.value?.underline??`hover`);function c(e){n.disabled||r(`click`,e)}return(t,n)=>(k(),U(`a`,{class:T(o.value),href:e.disabled||!e.href?void 0:e.href,target:e.disabled||!e.href?void 0:e.target,onClick:c},[e.icon?(k(),q(K(Hn),{key:0},{default:S(()=>[(k(),q(et(e.icon)))]),_:1})):V(`v-if`,!0),t.$slots.default?(k(),U(`span`,{key:1,class:T(K(a).e(`inner`))},[x(t.$slots,`default`)],2)):V(`v-if`,!0),t.$slots.icon?x(t.$slots,`icon`,{key:2}):V(`v-if`,!0)],10,Uu))}})),Gu=R({icon:{type:En,default:()=>ne},title:String,content:{type:String,default:``}}),Ku={back:()=>!0},qu=[`aria-label`],Ju=fe(Se({name:`ElPageHeader`,__name:`page-header`,props:Gu,emits:Ku,setup(e,{emit:t}){let n=t,{t:r}=on(),i=u(`page-header`);function a(){n(`back`)}return(t,n)=>(k(),U(`div`,{class:T([K(i).b(),K(i).is(`contentful`,!!t.$slots.default),{[K(i).m(`has-breadcrumb`)]:!!t.$slots.breadcrumb,[K(i).m(`has-extra`)]:!!t.$slots.extra}])},[t.$slots.breadcrumb?(k(),U(`div`,{key:0,class:T(K(i).e(`breadcrumb`))},[x(t.$slots,`breadcrumb`)],2)):V(`v-if`,!0),G(`div`,{class:T(K(i).e(`header`))},[G(`div`,{class:T(K(i).e(`left`))},[G(`div`,{class:T(K(i).e(`back`)),role:`button`,tabindex:`0`,onClick:a},[e.icon||t.$slots.icon?(k(),U(`div`,{key:0,"aria-label":e.title||K(r)(`el.pageHeader.title`),class:T(K(i).e(`icon`))},[x(t.$slots,`icon`,{},()=>[e.icon?(k(),q(K(Hn),{key:0},{default:S(()=>[(k(),q(et(e.icon)))]),_:1})):V(`v-if`,!0)])],10,qu)):V(`v-if`,!0),G(`div`,{class:T(K(i).e(`title`))},[x(t.$slots,`title`,{},()=>[Pe(s(e.title||K(r)(`el.pageHeader.title`)),1)])],2)],2),W(K(Du),{direction:`vertical`}),G(`div`,{class:T(K(i).e(`content`))},[x(t.$slots,`content`,{},()=>[Pe(s(e.content),1)])],2)],2),t.$slots.extra?(k(),U(`div`,{key:0,class:T(K(i).e(`extra`))},[x(t.$slots,`extra`)],2)):V(`v-if`,!0)],2),t.$slots.default?(k(),U(`div`,{key:1,class:T(K(i).e(`main`))},[x(t.$slots,`default`)],2)):V(`v-if`,!0)],2))}})),Yu=R({title:String,confirmButtonText:String,cancelButtonText:String,confirmButtonType:{type:String,values:Ur,default:`primary`},cancelButtonType:{type:String,values:Ur,default:`text`},icon:{type:En,default:()=>e},iconColor:{type:String,default:`#f90`},hideIcon:Boolean,hideAfter:{type:Number,default:200},effect:{...Mr.effect,default:`light`},teleported:Mr.teleported,persistent:Mr.persistent,width:{type:[String,Number],default:150},virtualTriggering:Ar.virtualTriggering,virtualRef:Ar.virtualRef}),Xu=fe(Se({name:`ElPopconfirm`,__name:`popconfirm`,props:Yu,emits:{confirm:e=>e instanceof MouseEvent,cancel:e=>e instanceof MouseEvent},setup(e,{expose:t,emit:n}){let r=e,i=n,{t:a}=on(),o=u(`popconfirm`),l=H(),d=H(),f=B(()=>K(l)?.popperRef),p=()=>{d.value?.focus?.()},m=()=>{l.value?.onClose?.()},h=B(()=>({width:hn(r.width)})),g=e=>{i(`confirm`,e),m()},_=e=>{i(`cancel`,e),m()},v=B(()=>r.confirmButtonText||a(`el.popconfirm.confirmButtonText`)),y=B(()=>r.cancelButtonText||a(`el.popconfirm.cancelButtonText`));return t({popperRef:f,hide:m}),(t,n)=>(k(),q(K(Cr),c({ref_key:`tooltipRef`,ref:l,trigger:`click`,effect:e.effect},t.$attrs,{"virtual-triggering":e.virtualTriggering,"virtual-ref":e.virtualRef,"popper-class":`${K(o).namespace.value}-popover`,"popper-style":h.value,teleported:e.teleported,"fallback-placements":[`bottom`,`top`,`right`,`left`],"hide-after":e.hideAfter,persistent:e.persistent,loop:``,onShow:p}),{content:S(()=>[G(`div`,{ref_key:`rootRef`,ref:d,tabindex:`-1`,class:T(K(o).b())},[G(`div`,{class:T(K(o).e(`main`))},[!e.hideIcon&&e.icon?(k(),q(K(Hn),{key:0,class:T(K(o).e(`icon`)),style:tt({color:e.iconColor})},{default:S(()=>[(k(),q(et(e.icon)))]),_:1},8,[`class`,`style`])):V(`v-if`,!0),Pe(` `+s(e.title),1)],2),G(`div`,{class:T(K(o).e(`action`))},[x(t.$slots,`actions`,{confirm:g,cancel:_},()=>[W(K(Kr),{size:`small`,type:e.cancelButtonType===`text`?``:e.cancelButtonType,text:e.cancelButtonType===`text`,onClick:_},{default:S(()=>[Pe(s(y.value),1)]),_:1},8,[`type`,`text`]),W(K(Kr),{size:`small`,type:e.confirmButtonType===`text`?``:e.confirmButtonType,text:e.confirmButtonType===`text`,onClick:g},{default:S(()=>[Pe(s(v.value),1)]),_:1},8,[`type`,`text`])])],2)],2)]),default:S(()=>[t.$slots.reference?x(t.$slots,`reference`,{key:0}):V(`v-if`,!0)]),_:3},16,[`effect`,`virtual-triggering`,`virtual-ref`,`popper-class`,`popper-style`,`teleported`,`hide-after`,`persistent`]))}})),Zu=R({modelValue:{type:Number,default:0},id:{type:String,default:void 0},lowThreshold:{type:Number,default:2},highThreshold:{type:Number,default:4},max:{type:Number,default:5},colors:{type:h([Array,Object]),default:()=>Lt([``,``,``])},voidColor:{type:String,default:``},disabledVoidColor:{type:String,default:``},icons:{type:h([Array,Object]),default:()=>[He,He,He]},voidIcon:{type:En,default:()=>je},disabledVoidIcon:{type:En,default:()=>He},disabled:{type:Boolean,default:void 0},allowHalf:Boolean,showText:Boolean,showScore:Boolean,textColor:{type:String,default:``},texts:{type:h(Array),default:()=>Lt([`Extremely bad`,`Disappointed`,`Fair`,`Satisfied`,`Surprise`])},scoreTemplate:{type:String,default:`{value}`},size:Kn,clearable:Boolean,...Rt([`ariaLabel`])}),Qu={[Mt]:e=>a(e),[Kt]:e=>a(e)},$u=[`id`,`aria-label`,`aria-labelledby`,`aria-valuenow`,`aria-valuetext`,`aria-valuemax`,`tabindex`,`aria-disabled`],ed=[`onMousemove`,`onClick`],td=fe(Se({name:`ElRate`,__name:`rate`,props:Zu,emits:Qu,setup(e,{expose:t,emit:n}){function r(e,t){let n=e=>m(e),r=t[Object.keys(t).map(e=>+e).filter(r=>{let i=t[r];return n(i)&&i.excluded?ee-t)[0]];return n(r)&&r.value||r}let i=e,a=n,o=Xe(jn,void 0),c=zn(),l=u(`rate`),{inputId:d,isLabeledByFormItem:f}=yn(i,{formItemContext:o}),p=H(dr(i.modelValue,0,i.max)),h=H(-1),g=H(!0),v=H([]),y=B(()=>v.value.map(e=>e.$el.clientWidth)),b=B(()=>[l.b(),l.m(c.value)]),x=Fn(),w=B(()=>l.cssVarBlock({"void-color":i.voidColor,"disabled-void-color":i.disabledVoidColor,"fill-color":j.value})),E=B(()=>{let e=``;return i.showScore?e=i.scoreTemplate.replace(/\{\s*value\s*\}/,x.value?`${i.modelValue}`:`${p.value}`):i.showText&&(e=i.texts[Math.ceil(p.value)-1]),e}),O=B(()=>i.modelValue*100-Math.floor(i.modelValue)*100),A=B(()=>L(i.colors)?{[i.lowThreshold]:i.colors[0],[i.highThreshold]:{value:i.colors[1],excluded:!0},[i.max]:i.colors[2]}:i.colors),j=B(()=>{let e=r(p.value,A.value);return m(e)?``:e}),M=B(()=>{let e=``;return x.value?e=`${O.value}%`:i.allowHalf&&(e=`50%`),{color:j.value,width:e}}),N=B(()=>{let e=L(i.icons)?[...i.icons]:{...i.icons};return e=ye(e),L(e)?{[i.lowThreshold]:e[0],[i.highThreshold]:{value:e[1],excluded:!0},[i.max]:e[2]}:e}),P=B(()=>r(i.modelValue,N.value)),ee=B(()=>x.value?D(i.disabledVoidIcon)?i.disabledVoidIcon:ye(i.disabledVoidIcon):D(i.voidIcon)?i.voidIcon:ye(i.voidIcon)),F=B(()=>r(p.value,N.value));function I(e){let t=x.value&&O.value>0&&e-1i.modelValue,n=i.allowHalf&&g.value&&e-.5<=p.value&&e>p.value;return t||n}function te(e){i.clearable&&e===i.modelValue&&(e=0),a(Kt,e),i.modelValue!==e&&a(Mt,e)}function ne(e){x.value||(i.allowHalf&&g.value?te(p.value):te(e))}function re(e){if(x.value)return;let t=Xt(e),n=i.allowHalf?.5:1,r=p.value;switch(t){case Pt.up:case Pt.right:r+=n;break;case Pt.left:case Pt.down:r-=n}if(r=dr(r,0,i.max),r!==p.value)return e.stopPropagation(),e.preventDefault(),a(Kt,r),a(Mt,r),r}function ie(e,t){x.value||(i.allowHalf&&t?(g.value=t.offsetX*2<=y.value[e-1],p.value=g.value?e-.5:e):p.value=e,h.value=e)}function ae(){x.value||(i.allowHalf&&(g.value=i.modelValue!==Math.floor(i.modelValue)),p.value=dr(i.modelValue,0,i.max),h.value=-1)}return C(()=>i.modelValue,e=>{p.value=dr(e,0,i.max),g.value=i.modelValue!==Math.floor(i.modelValue)}),i.modelValue||a(Kt,0),t({setCurrentValue:ie,resetCurrentValue:ae}),(t,n)=>(k(),U(`div`,{id:K(d),class:T([b.value,K(l).is(`disabled`,K(x))]),role:`slider`,"aria-label":K(f)?void 0:e.ariaLabel||`rating`,"aria-labelledby":K(f)?K(o)?.labelId:void 0,"aria-valuenow":p.value,"aria-valuetext":E.value||void 0,"aria-valuemin":`0`,"aria-valuemax":e.max,style:tt(w.value),tabindex:K(x)?void 0:0,"aria-disabled":K(x),onKeydown:re},[(k(!0),U(ve,null,_(e.max,(e,t)=>(k(),U(`span`,{key:t,class:T(K(l).e(`item`)),onMousemove:t=>ie(e,t),onMouseleave:ae,onClick:t=>ne(e)},[W(K(Hn),{ref_for:!0,ref_key:`iconRefs`,ref:v,class:T([K(l).e(`icon`),{hover:h.value===e},K(l).is(`active`,e<=p.value),K(l).is(`focus-visible`,e===Math.ceil(p.value||1))])},{default:S(()=>[ue((k(),q(et(F.value),null,null,512)),[[nt,!I(e)&&e<=p.value]]),ue((k(),q(et(ee.value),null,null,512)),[[nt,!I(e)&&e>p.value]]),ue((k(),q(et(ee.value),{class:T([K(l).em(`decimal`,`box`)])},null,8,[`class`])),[[nt,I(e)]]),ue(W(K(Hn),{style:tt(M.value),class:T([K(l).e(`icon`),K(l).e(`decimal`)])},{default:S(()=>[(k(),q(et(P.value)))]),_:1},8,[`style`,`class`]),[[nt,I(e)]])]),_:2},1032,[`class`])],42,ed))),128)),e.showText||e.showScore?(k(),U(`span`,{key:0,class:T(K(l).e(`text`)),style:tt({color:e.textColor})},s(E.value),7)):V(`v-if`,!0)],46,$u))}})),nd=Symbol(`ElSelectV2Injection`),rd=R({allowCreate:Boolean,autocomplete:{type:h(String),default:`none`},automaticDropdown:Boolean,clearable:Boolean,clearIcon:{type:En,default:O},effect:{type:h(String),default:`light`},collapseTags:Boolean,collapseTagsTooltip:Boolean,tagTooltip:{type:h(Object),default:()=>({})},maxCollapseTags:{type:Number,default:1},defaultFirstOption:Boolean,disabled:{type:Boolean,default:void 0},estimatedOptionHeight:{type:Number,default:void 0},filterable:Boolean,filterMethod:{type:h(Function)},height:{type:Number,default:274},itemHeight:{type:Number,default:34},id:String,loading:Boolean,loadingText:String,modelValue:{type:h([Array,String,Number,Boolean,Object]),default:void 0},multiple:Boolean,multipleLimit:{type:Number,default:0},name:String,noDataText:String,noMatchText:String,remoteMethod:{type:h(Function)},reserveKeyword:{type:Boolean,default:!0},options:{type:h(Array),required:!0},placeholder:{type:String},teleported:Mr.teleported,persistent:{type:Boolean,default:!0},popperClass:Mr.popperClass,popperStyle:Mr.popperStyle,popperOptions:{type:h(Object),default:()=>({})},remote:Boolean,debounce:{type:Number,default:300},size:Kn,props:{type:h(Object),default:()=>Xn},valueKey:{type:String,default:`value`},scrollbarAlwaysOn:Boolean,validateEvent:{type:Boolean,default:!0},offset:{type:Number,default:12},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},placement:{type:h(String),values:Or,default:`bottom-start`},fallbackPlacements:{type:h(Array),default:[`bottom-start`,`top-start`,`right`,`left`]},tagType:{...qr.type,default:`info`},tagEffect:{...qr.effect,default:`light`},tabindex:{type:[String,Number],default:0},appendTo:Mr.appendTo,fitInputWidth:{type:[Boolean,Number],default:!0,validator(e){return f(e)||a(e)}},suffixIcon:{type:En,default:Ue},...vn,...Rt([`ariaLabel`])}),id=R({data:Array,disabled:Boolean,hovering:Boolean,item:{type:h(Object),required:!0},index:Number,style:Object,selected:Boolean,created:Boolean}),ad={[Kt]:e=>!0,[Mt]:e=>!0,"end-reached":Er[`end-reached`],"remove-tag":e=>!0,"visible-change":e=>!0,focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent,clear:()=>!0},od={hover:e=>a(e),select:(e,t)=>!0},sd=Se({props:{item:{type:Object,required:!0},style:{type:Object},height:Number},setup(){return{ns:u(`select`)}}});function cd(e,t,n,r,i,a){return k(),U(`div`,{class:T(e.ns.be(`group`,`title`)),style:tt({...e.style,lineHeight:`${e.height}px`})},s(e.item.label),7)}var ld=Ht(sd,[[`render`,cd]]);function ud(e,{emit:t}){return{hoverItem:()=>{e.disabled||t(`hover`,e.index)},selectOptionClick:()=>{e.disabled||t(`select`,e.item,e.index)}}}var dd=Se({props:id,emits:od,setup(e,{emit:t}){let n=Xe(nd),r=u(`select`),i=gn?null:`mousemove`,{hoverItem:a,selectOptionClick:o}=ud(e,{emit:t}),{getLabel:s}=tr(n.props);return{ns:r,contentId:n.contentId,mouseMoveEventName:i,hoverItem:a,handleMousedown:e=>{let t=e.target,n=e.currentTarget;for(;t&&t!==n;){if(dn(t))return;t=t.parentElement}e.preventDefault()},selectOptionClick:o,getLabel:s}}}),fd=[`id`,`aria-selected`,`aria-disabled`];function pd(e,t,n,r,i,a){return k(),U(`li`,c({id:`${e.contentId}-${e.index}`,role:`option`,"aria-selected":e.selected,"aria-disabled":e.disabled||void 0,style:e.style,class:[e.ns.be(`dropdown`,`item`),e.ns.is(`selected`,e.selected),e.ns.is(`disabled`,e.disabled),e.ns.is(`created`,e.created),e.ns.is(`hovering`,e.hovering)]},{[se(e.mouseMoveEventName)]:t[0]||=(...t)=>e.hoverItem&&e.hoverItem(...t)},{onMousedown:t[1]||=(...t)=>e.handleMousedown&&e.handleMousedown(...t),onClick:t[2]||=lt((...t)=>e.selectOptionClick&&e.selectOptionClick(...t),[`stop`])}),[x(e.$slots,`default`,{item:e.item,index:e.index,disabled:e.disabled},()=>[G(`span`,null,s(e.getLabel(e.item)),1)])],16,fd)}var md=Ht(dd,[[`render`,pd]]),hd=Se({name:`ElSelectDropdown`,props:{loading:Boolean,data:{type:Array,required:!0},hoveringIndex:Number,width:Number,id:String,ariaLabel:String},emits:{"end-reached":Er[`end-reached`]},setup(e,{slots:t,expose:n,emit:r}){let i=Xe(nd),a=u(`select`),{getLabel:o,getValue:s,getDisabled:l}=tr(i.props),d=H([]),f=H(),p=B(()=>e.data.length);C(()=>p.value,()=>{i.tooltipRef.value?.updatePopper?.()});let h=B(()=>A(i.props.estimatedOptionHeight)),g=B(()=>h.value?{itemSize:i.props.itemHeight}:{estimatedSize:i.props.estimatedOptionHeight,itemSize:e=>d.value[e]}),_=(e=[],t)=>{let{props:{valueKey:n}}=i;return m(t)?e&&e.some(e=>he(Wn(e,n))===Wn(t,n)):e.includes(t)},v=(e,t)=>{if(m(t)){let{valueKey:n}=i.props;return Wn(e,n)===Wn(t,n)}return e===t},y=(e,t)=>i.props.multiple?_(e,s(t)):v(e,s(t)),b=(e,t)=>{let{disabled:n,multiple:r,multipleLimit:a}=i.props;return n||!t&&(r?a>0&&e.length>=a:!1)},x=t=>e.hoveringIndex===t;n({listRef:f,isSized:h,isItemDisabled:b,isItemHovering:x,isItemSelected:y,scrollToItem:e=>{let t=f.value;t&&t.scrollToItem(e)},resetScrollTop:()=>{let e=f.value;e&&e.resetScrollTop()}});let S=e=>{let{index:n,data:r,style:a}=e,s=K(h),{itemSize:u,estimatedSize:d}=K(g),{modelValue:f}=i.props,{onSelect:p,onHover:m}=i,_=r[n];if(_.type===`Group`)return W(ld,{item:_,style:a,height:s?u:d},null);let v=y(f,_),S=b(f,v),C=x(n);return W(md,c(e,{selected:v,disabled:l(_)||S,created:!!_.created,hovering:C,item:_,onSelect:p,onHover:m}),{default:e=>t.default?.(e)||W(`span`,null,[o(_)])})},{onKeyboardNavigate:w,onKeyboardSelect:T}=i,E=()=>{w(`forward`)},D=()=>{w(`backward`)},O=e=>{let t=Xt(e),{tab:n,esc:r,down:i,up:a,enter:o,numpadEnter:s}=Pt;switch([r,i,a,o,s].includes(t)&&(e.preventDefault(),e.stopPropagation()),t){case n:case r:break;case i:E();break;case a:D();break;case o:case s:T()}},k=e=>{r(`end-reached`,e)};return()=>{let{data:n,width:r}=e,{height:o,multiple:s,scrollbarAlwaysOn:l}=i.props,u=gn?!0:l,d=K(h)?fc:yc;return W(`div`,{class:[a.b(`dropdown`),a.is(`multiple`,s)],style:{width:`${r}px`}},[t.header?.(),t.loading?.()||t.empty?.()||W(d,c({ref:f},K(g),{className:a.be(`dropdown`,`list`),scrollbarAlwaysOn:u,data:n,height:o,width:r,total:n.length,innerElement:`ul`,innerProps:{id:e.id,role:`listbox`,"aria-label":e.ariaLabel,"aria-orientation":`vertical`},onEndReached:k,onKeydown:O}),{default:e=>W(S,e,null)}),t.footer?.()])}}});function gd(e,t){let{aliasProps:n,getLabel:r,getValue:i}=tr(e),a=H(0),o=H(),s=B(()=>e.allowCreate&&e.filterable);C(()=>e.options,e=>{let n=new Set(e.map(e=>r(e)));t.createdOptions=t.createdOptions.filter(e=>!n.has(r(e)))});function c(n){let i=e=>r(e)===n;return e.options&&e.options.some(i)||t.createdOptions.some(i)}function l(t){s.value&&(e.multiple&&t.created?a.value++:o.value=t)}function u(i){if(s.value)if(i&&i.length>0){if(c(i)){t.createdOptions=t.createdOptions.filter(e=>r(e)!==t.previousQuery);return}let e={[n.value.value]:i,[n.value.label]:i,created:!0,[n.value.disabled]:!1};t.createdOptions.length>=a.value?t.createdOptions[a.value]=e:t.createdOptions.push(e)}else if(e.multiple)t.createdOptions.length=a.value;else{let e=o.value;t.createdOptions.length=0,e&&e.created&&t.createdOptions.push(e)}}function d(n){if(!s.value||!n||!n.created||n.created&&e.reserveKeyword&&t.inputValue===r(n))return;let o=t.createdOptions.findIndex(e=>i(e)===i(n));~o&&(t.createdOptions.splice(o,1),a.value--)}function f(){s.value&&(t.createdOptions.length=0,a.value=0)}return{createNewOption:u,removeNewOption:d,selectNewOption:l,clearAllNewOption:f}}var _d=(e,t)=>{let{t:n}=on(),r=ce(),o=u(`select`),s=u(`input`),{form:c,formItem:l}=Dn(),{inputId:d}=yn(e,{formItemContext:l}),{aliasProps:f,getLabel:p,getValue:h,getDisabled:g,getOptions:_}=tr(e),{valueOnClear:v,isEmptyValue:y}=Tn(e),b=Ne({inputValue:``,cachedOptions:[],createdOptions:[],hoveringIndex:-1,inputHovering:!1,selectionWidth:0,collapseItemWidth:0,previousQuery:null,previousValue:void 0,selectedLabel:``,menuVisibleOnFocus:!1,isBeforeHide:!1}),x=H(-1),S=H(!1),w=H(),T=H(),E=H(),D=H(),O=H(),k=H(),j=H(),M=H(),N=H(),P=H(),{isComposing:ee,handleCompositionStart:F,handleCompositionEnd:I,handleCompositionUpdate:te}=jt({afterComposition:e=>_t(e)}),ne=Fn(),{wrapperRef:re,isFocused:ie,handleBlur:ae}=Jt(O,{disabled:ne,afterFocus(){e.automaticDropdown&&!se.value&&(se.value=!0,b.menuVisibleOnFocus=!0)},beforeBlur(e){return E.value?.isFocusInsideContent(e)||D.value?.isFocusInsideContent(e)},afterBlur(){se.value=!1,b.menuVisibleOnFocus=!1,e.validateEvent&&l?.validate?.(`blur`).catch(Me)}}),R=B(()=>xe(``)),oe=B(()=>e.loading?!1:e.options.length>0||b.createdOptions.length>0),z=H([]),se=H(!1),le=B(()=>c?.statusIcon??!1),ue=B(()=>{let t=z.value.length*e.itemHeight;return t>e.height?e.height:t}),de=B(()=>e.multiple?L(e.modelValue)&&e.modelValue.length>0:!y(e.modelValue)),fe=B(()=>e.clearable&&!ne.value&&de.value&&(ie.value||b.inputHovering)),pe=B(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?``:e.suffixIcon),me=B(()=>pe.value&&o.is(`reverse`,se.value)),V=B(()=>l?.validateState||``),he=B(()=>{if(V.value)return Mn[V.value]}),ge=B(()=>e.remote?e.debounce:0),_e=B(()=>e.remote&&!b.inputValue&&!oe.value),ve=B(()=>e.loading?e.loadingText||n(`el.select.loading`):e.filterable&&b.inputValue&&oe.value&&z.value.length===0?e.noMatchText||n(`el.select.noMatch`):oe.value?null:e.noDataText||n(`el.select.noData`)),ye=B(()=>e.filterable&&qe(e.filterMethod)),be=B(()=>e.filterable&&e.remote&&qe(e.remoteMethod)),xe=t=>{let n=new RegExp(Sr(t),`i`),r=e=>ye.value||be.value?!0:!t||n.test(p(e)||``);return e.loading?[]:[...b.createdOptions,...e.options].reduce((t,n)=>{let i=_(n);if(L(i)){let e=i.filter(r);e.length>0&&t.push({label:p(n),type:`Group`},...e)}else(e.remote||r(n))&&t.push(n);return t},[])},Se=()=>{z.value=xe(b.inputValue)},Ce=B(()=>{let e=new Map;return R.value.forEach((t,n)=>{e.set(Y(h(t)),{option:t,index:n})}),e}),we=B(()=>{let e=new Map;return z.value.forEach((t,n)=>{e.set(Y(h(t)),{option:t,index:n})}),e}),Te=B(()=>z.value.every(e=>g(e))),Ee=zn(),De=B(()=>Ee.value===`small`?`small`:`default`),Oe=()=>{if(a(e.fitInputWidth)){x.value=e.fitInputWidth;return}let t=w.value?.offsetWidth||200;!e.fitInputWidth&&oe.value?J(()=>{x.value=Math.max(t,U())}):x.value=t},U=()=>{let e=document.createElement(`canvas`).getContext(`2d`),t=o.be(`dropdown`,`item`),n=(M.value?.listRef?.innerRef||document).querySelector(`.${t}`);if(n===null||e===null)return 0;let r=getComputedStyle(n),i=Number.parseFloat(r.paddingLeft)+Number.parseFloat(r.paddingRight);return e.font=`bold ${r.font.replace(RegExp(`\\b${r.fontWeight}\\b`),``)}`,z.value.reduce((t,n)=>{let r=e.measureText(p(n));return Math.max(r.width,t)},0)+i},Ae=()=>{if(!T.value)return 0;let e=window.getComputedStyle(T.value);return Number.parseFloat(e.gap||`6px`)},je=B(()=>{let t=Ae(),n=e.filterable?t+11:0;return{maxWidth:`${P.value&&e.maxCollapseTags===1?b.selectionWidth-b.collapseItemWidth-t-n:b.selectionWidth-n}px`}}),W=B(()=>({maxWidth:`${b.selectionWidth}px`})),G=B(()=>L(e.modelValue)?e.modelValue.length===0&&!b.inputValue:!e.filterable||!b.inputValue),Pe=B(()=>{let t=e.placeholder??n(`el.select.placeholder`);return e.multiple||!de.value?t:b.selectedLabel}),K=B(()=>E.value?.popperRef?.contentRef),Fe=B(()=>{if(e.multiple){let t=e.modelValue.length;if(t>0&&we.value.has(e.modelValue[t-1])){let{index:n}=we.value.get(e.modelValue[t-1]);return n}}else if(!y(e.modelValue)&&we.value.has(e.modelValue)){let{index:t}=we.value.get(e.modelValue);return t}return-1}),Le=B({get(){return se.value&&(e.loading||!_e.value||e.remote&&!!r.empty)&&(!S.value||!ke(b.previousQuery)||oe.value)},set(e){se.value=e}}),q=B(()=>e.multiple?e.collapseTags?b.cachedOptions.slice(0,e.maxCollapseTags):b.cachedOptions:[]),Re=B(()=>e.multiple&&e.collapseTags?b.cachedOptions.slice(e.maxCollapseTags):[]),{createNewOption:ze,removeNewOption:Be,selectNewOption:Ve,clearAllNewOption:He}=gd(e,b),Ue=t=>{ne.value||e.filterable&&se.value&&t&&!j.value?.contains(t.target)||(b.menuVisibleOnFocus?b.menuVisibleOnFocus=!1:se.value=!se.value)},We=()=>{b.inputValue.length>0&&!se.value&&(se.value=!0),ze(b.inputValue),J(()=>{Ke(b.inputValue)})},Ge=wn(()=>{We(),S.value=!1},ge),Ke=t=>{b.previousQuery===t||ee.value||(b.previousQuery=t,e.filterable&&qe(e.filterMethod)?e.filterMethod(t):e.filterable&&e.remote&&qe(e.remoteMethod)&&e.remoteMethod(t),e.defaultFirstOption&&(e.filterable||e.remote)&&z.value.length?J(Je):J(ht))},Je=()=>{let e=z.value.filter(e=>!e.disabled&&e.type!==`Group`),t=e.find(e=>e.created),n=e[0];b.hoveringIndex=Ze(z.value,t||n)},Ye=n=>{Un(e.modelValue,n)||t(Mt,n)},Xe=n=>{t(Kt,n),Ye(n),b.previousValue=e.multiple?String(n):n,J(()=>{if(e.multiple&&L(e.modelValue)){let t=b.cachedOptions.slice(),n=e.modelValue.map(e=>xt(e,t));Un(b.cachedOptions,n)||(b.cachedOptions=n)}else Ct(!0)})},Ze=(t=[],n)=>{if(!m(n))return t.indexOf(n);let r=e.valueKey,i=-1;return t.some((e,t)=>Wn(e,r)===Wn(n,r)&&(i=t,!0)),i},Y=t=>m(t)?Wn(t,e.valueKey):t,Qe=()=>{Oe()},$e=e=>{t(`end-reached`,e)},et=()=>{b.selectionWidth=Number.parseFloat(window.getComputedStyle(T.value).width)},tt=()=>{b.collapseItemWidth=P.value.getBoundingClientRect().width},nt=()=>{E.value?.updatePopper?.()},rt=()=>{D.value?.updatePopper?.()},it=t=>{let n=h(t);if(e.multiple){let r=e.modelValue.slice(),i=Ze(r,n);i>-1?(r=[...r.slice(0,i),...r.slice(i+1)],b.cachedOptions.splice(i,1),Be(t)):(e.multipleLimit<=0||r.length{let i=e.modelValue.slice(),a=Ze(i,h(r));a>-1&&!ne.value&&(i=[...e.modelValue.slice(0,a),...e.modelValue.slice(a+1)],b.cachedOptions.splice(a,1),Xe(i),t(`remove-tag`,h(r)),Be(r)),n.stopPropagation(),ot()},ot=()=>{O.value?.focus()},st=()=>{if(se.value){se.value=!1,J(()=>O.value?.blur());return}O.value?.blur()},ct=()=>{b.inputValue.length>0?b.inputValue=``:se.value=!1},lt=e=>$n(e,e=>!b.cachedOptions.some(t=>h(t)===e&&g(t))),ut=n=>{let r=Xt(n);if(e.multiple&&r!==Pt.delete&&b.inputValue.length===0){n.preventDefault();let r=e.modelValue.slice(),i=lt(r);if(i<0)return;let a=r[i];r.splice(i,1);let o=b.cachedOptions[i];b.cachedOptions.splice(i,1),Be(o),Xe(r),t(`remove-tag`,a)}},dt=()=>{let n;n=L(e.modelValue)?[]:v.value,b.selectedLabel=``,se.value=!1,Xe(n),t(`clear`),He(),ot()},ft=(e,t=void 0)=>{let n=z.value;if(![`forward`,`backward`].includes(e)||ne.value||n.length<=0||Te.value||ee.value)return;if(!se.value)return Ue();A(t)&&(t=b.hoveringIndex);let r=-1;e===`forward`?(r=t+1,r>=n.length&&(r=0)):e===`backward`&&(r=t-1,(r<0||r>=n.length)&&(r=n.length-1));let i=n[r];if(g(i)||i.type===`Group`)return ft(e,r);b.hoveringIndex=r,bt(r)},pt=()=>{if(se.value)~b.hoveringIndex&&z.value[b.hoveringIndex]&&it(z.value[b.hoveringIndex]);else return Ue()},mt=e=>{b.hoveringIndex=e??-1},ht=()=>{if(!e.multiple)b.hoveringIndex=z.value.findIndex(t=>Y(h(t))===Y(e.modelValue));else{let t=e.modelValue.length;if(t>0){let n=e.modelValue[t-1];b.hoveringIndex=z.value.findIndex(e=>Y(n)===Y(h(e)))}else b.hoveringIndex=-1}},_t=t=>{if(b.inputValue=t.target.value,e.remote)S.value=!0,Ge();else return We()},vt=e=>{se.value=!1,ie.value&&ae(new FocusEvent(`blur`,e))},yt=()=>(b.isBeforeHide=!1,J(()=>{~Fe.value&&bt(Fe.value)})),bt=e=>{M.value.scrollToItem(e)},xt=(e,t)=>{let n=Y(e);if(Ce.value.has(n)){let{option:e}=Ce.value.get(n);return e}if(t&&t.length){let e=t.find(e=>Y(h(e))===n);if(e)return e}return{[f.value.value]:e,[f.value.label]:e}},St=e=>Ce.value.get(h(e))?.index??-1,Ct=(t=!1)=>{if(e.multiple)if(e.modelValue.length>0){let t=b.cachedOptions.slice();b.cachedOptions.length=0,b.previousValue=e.modelValue.toString();for(let n of e.modelValue){let e=xt(n,t);b.cachedOptions.push(e)}}else b.cachedOptions=[],b.previousValue=void 0;else if(de.value){b.previousValue=e.modelValue;let n=z.value,r=n.findIndex(t=>Y(h(t))===Y(e.modelValue));~r?b.selectedLabel=p(n[r]):(!b.selectedLabel||t)&&(b.selectedLabel=Y(e.modelValue))}else b.selectedLabel=``,b.previousValue=void 0;He(),Oe()};C(()=>e.fitInputWidth,()=>{Oe()}),C(se,t=>{t?(e.persistent||Oe(),Ke(``)):(b.inputValue=``,b.previousQuery=null,b.isBeforeHide=!0,b.menuVisibleOnFocus=!1,ze(``))}),C(()=>e.modelValue,(t,n)=>{(!t||L(t)&&t.length===0||e.multiple&&!Un(t.toString(),b.previousValue)||!e.multiple&&Y(t)!==Y(b.previousValue))&&Ct(!0),!Un(t,n)&&e.validateEvent&&l?.validate?.(`change`).catch(Me)},{deep:!0}),C(()=>e.options,()=>{let e=O.value;(!e||e&&document.activeElement!==e)&&Ct()},{deep:!0,flush:`post`}),C(()=>z.value,()=>(Oe(),M.value&&J(M.value.resetScrollTop))),Ie(()=>{b.isBeforeHide||Se()}),Ie(()=>{let{valueKey:t,options:n}=e,r=new Map;for(let e of n){let n=h(e),i=n;if(m(i)&&(i=Wn(n,t)),r.get(i)){On(`ElSelectV2`,`The option values you provided seem to be duplicated, which may cause some problems, please check.`);break}r.set(i,!0)}}),i(()=>{Ct()}),gt(w,Qe),gt(T,et),gt(re,nt),gt(N,rt),gt(P,tt);let wt;return C(()=>Le.value,e=>{e?wt=gt(M,nt).stop:(wt?.(),wt=void 0),t(`visible-change`,e)}),{inputId:d,collapseTagSize:De,currentPlaceholder:Pe,expanded:se,emptyText:ve,popupHeight:ue,debounce:ge,allOptions:R,allOptionsValueMap:Ce,filteredOptions:z,iconComponent:pe,iconReverse:me,tagStyle:je,collapseTagStyle:W,popperSize:x,dropdownMenuVisible:Le,hasModelValue:de,shouldShowPlaceholder:G,selectDisabled:ne,selectSize:Ee,needStatusIcon:le,showClearBtn:fe,states:b,isFocused:ie,nsSelect:o,nsInput:s,inputRef:O,menuRef:M,tagMenuRef:N,tooltipRef:E,tagTooltipRef:D,selectRef:w,wrapperRef:re,selectionRef:T,prefixRef:k,suffixRef:j,collapseItemRef:P,popperRef:K,validateState:V,validateIcon:he,showTagList:q,collapseTagList:Re,debouncedOnInputChange:Ge,deleteTag:at,getLabel:p,getValue:h,getDisabled:g,getValueKey:Y,getIndex:St,handleClear:dt,handleClickOutside:vt,handleDel:ut,handleEsc:ct,focus:ot,blur:st,handleMenuEnter:yt,handleResize:Qe,resetSelectionWidth:et,updateTooltip:nt,updateTagTooltip:rt,updateOptions:Se,toggleMenu:Ue,scrollTo:bt,onInput:_t,onKeyboardNavigate:ft,onKeyboardSelect:pt,onEndReached:$e,onSelect:it,onHover:mt,handleCompositionStart:F,handleCompositionEnd:I,handleCompositionUpdate:te}},vd=Se({name:`ElSelectV2`,components:{ElSelectMenu:hd,ElTag:Jr,ElTooltip:Cr,ElIcon:Hn},directives:{ClickOutside:Nr},props:rd,emits:ad,setup(e,{emit:t}){let n=B(()=>{let{modelValue:t,multiple:n}=e,r=n?[]:void 0;return L(t)?n?t:r:n?r:t}),r=_d(Ne({...Ve(e),modelValue:n}),t),{calculatorRef:i,inputStyle:a}=Zn(),o=Gn();P(nd,{props:Ne({...Ve(e),height:r.popupHeight,modelValue:n}),expanded:r.expanded,tooltipRef:r.tooltipRef,contentId:o,onSelect:r.onSelect,onHover:r.onHover,onKeyboardNavigate:r.onKeyboardNavigate,onKeyboardSelect:r.onKeyboardSelect});let s=B(()=>e.multiple?r.states.cachedOptions.map(e=>r.getLabel(e)):r.states.selectedLabel);return{...r,modelValue:n,selectedLabel:s,calculatorRef:i,inputStyle:a,contentId:o,BORDER_HORIZONTAL_WIDTH:2}}}),yd=[`id`,`value`,`autocomplete`,`tabindex`,`aria-expanded`,`aria-label`,`disabled`,`aria-controls`,`aria-activedescendant`,`readonly`,`name`],bd=[`textContent`],xd={key:1};function Sd(e,t,n,r,i,a){let o=w(`el-tag`),c=w(`el-tooltip`),l=w(`el-icon`),u=w(`el-select-menu`),d=I(`click-outside`);return ue((k(),U(`div`,{ref:`selectRef`,class:T([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),onMouseenter:t[15]||=t=>e.states.inputHovering=!0,onMouseleave:t[16]||=t=>e.states.inputHovering=!1},[W(c,{ref:`tooltipRef`,visible:e.dropdownMenuVisible,teleported:e.teleported,"popper-class":[e.nsSelect.e(`popper`),e.popperClass],"popper-style":e.popperStyle,"gpu-acceleration":!1,"stop-popper-mouse-event":!1,"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,placement:e.placement,pure:``,transition:`${e.nsSelect.namespace.value}-zoom-in-top`,trigger:`click`,persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:t[14]||=t=>e.states.isBeforeHide=!1},{default:S(()=>[G(`div`,{ref:`wrapperRef`,class:T([e.nsSelect.e(`wrapper`),e.nsSelect.is(`focused`,e.isFocused),e.nsSelect.is(`hovering`,e.states.inputHovering),e.nsSelect.is(`filterable`,e.filterable),e.nsSelect.is(`disabled`,e.selectDisabled)]),onClick:t[11]||=lt((...t)=>e.toggleMenu&&e.toggleMenu(...t),[`prevent`])},[e.$slots.prefix?(k(),U(`div`,{key:0,ref:`prefixRef`,class:T(e.nsSelect.e(`prefix`))},[x(e.$slots,`prefix`)],2)):V(`v-if`,!0),G(`div`,{ref:`selectionRef`,class:T([e.nsSelect.e(`selection`),e.nsSelect.is(`near`,e.multiple&&!e.$slots.prefix&&!!e.modelValue.length)])},[e.multiple?x(e.$slots,`tag`,{key:0,data:e.states.cachedOptions,deleteTag:e.deleteTag,selectDisabled:e.selectDisabled},()=>[(k(!0),U(ve,null,_(e.showTagList,t=>(k(),U(`div`,{key:e.getValueKey(e.getValue(t)),class:T(e.nsSelect.e(`selected-item`))},[W(o,{closable:!e.selectDisabled&&!e.getDisabled(t),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":``,style:tt(e.tagStyle),onClose:n=>e.deleteTag(n,t)},{default:S(()=>[G(`span`,{class:T(e.nsSelect.e(`tags-text`))},[x(e.$slots,`label`,{index:e.getIndex(t),label:e.getLabel(t),value:e.getValue(t)},()=>[Pe(s(e.getLabel(t)),1)])],2)]),_:2},1032,[`closable`,`size`,`type`,`effect`,`style`,`onClose`])],2))),128)),e.collapseTags&&e.states.cachedOptions.length>e.maxCollapseTags?(k(),q(c,{key:0,ref:`tagTooltipRef`,disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":e.tagTooltip?.fallbackPlacements??[`bottom`,`top`,`right`,`left`],effect:e.tagTooltip?.effect??e.effect,placement:e.tagTooltip?.placement??`bottom`,"popper-class":e.tagTooltip?.popperClass??e.popperClass,"popper-style":e.tagTooltip?.popperStyle??e.popperStyle,teleported:e.tagTooltip?.teleported??e.teleported,"append-to":e.tagTooltip?.appendTo??e.appendTo,"popper-options":e.tagTooltip?.popperOptions??e.popperOptions,transition:e.tagTooltip?.transition,"show-after":e.tagTooltip?.showAfter,"hide-after":e.tagTooltip?.hideAfter,"auto-close":e.tagTooltip?.autoClose,offset:e.tagTooltip?.offset},{default:S(()=>[G(`div`,{ref:`collapseItemRef`,class:T(e.nsSelect.e(`selected-item`))},[W(o,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,style:tt(e.collapseTagStyle),"disable-transitions":``},{default:S(()=>[G(`span`,{class:T(e.nsSelect.e(`tags-text`))},` + `+s(e.states.cachedOptions.length-e.maxCollapseTags),3)]),_:1},8,[`size`,`type`,`effect`,`style`])],2)]),content:S(()=>[G(`div`,{ref:`tagMenuRef`,class:T(e.nsSelect.e(`selection`))},[(k(!0),U(ve,null,_(e.collapseTagList,t=>(k(),U(`div`,{key:e.getValueKey(e.getValue(t)),class:T(e.nsSelect.e(`selected-item`))},[W(o,{class:`in-tooltip`,closable:!e.selectDisabled&&!e.getDisabled(t),size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":``,onClose:n=>e.deleteTag(n,t)},{default:S(()=>[G(`span`,{class:T(e.nsSelect.e(`tags-text`))},[x(e.$slots,`label`,{index:e.getIndex(t),label:e.getLabel(t),value:e.getValue(t)},()=>[Pe(s(e.getLabel(t)),1)])],2)]),_:2},1032,[`closable`,`size`,`type`,`effect`,`onClose`])],2))),128))],2)]),_:3},8,[`disabled`,`fallback-placements`,`effect`,`placement`,`popper-class`,`popper-style`,`teleported`,`append-to`,`popper-options`,`transition`,`show-after`,`hide-after`,`auto-close`,`offset`])):V(`v-if`,!0)]):V(`v-if`,!0),G(`div`,{class:T([e.nsSelect.e(`selected-item`),e.nsSelect.e(`input-wrapper`),e.nsSelect.is(`hidden`,!e.filterable||e.selectDisabled||e.multiple&&!e.states.inputValue&&!e.isFocused)])},[G(`input`,{id:e.inputId,ref:`inputRef`,value:e.states.inputValue,style:tt(e.inputStyle),autocomplete:e.autocomplete,tabindex:e.tabindex,"aria-autocomplete":`none`,"aria-haspopup":`listbox`,autocapitalize:`off`,"aria-expanded":e.expanded,"aria-label":e.ariaLabel,class:T([e.nsSelect.e(`input`),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,role:`combobox`,"aria-controls":e.contentId,"aria-activedescendant":e.states.hoveringIndex>=0?`${e.contentId}-${e.states.hoveringIndex}`:``,readonly:!e.filterable,spellcheck:`false`,type:`text`,name:e.name,onInput:t[0]||=(...t)=>e.onInput&&e.onInput(...t),onChange:t[1]||=lt(()=>{},[`stop`]),onCompositionstart:t[2]||=(...t)=>e.handleCompositionStart&&e.handleCompositionStart(...t),onCompositionupdate:t[3]||=(...t)=>e.handleCompositionUpdate&&e.handleCompositionUpdate(...t),onCompositionend:t[4]||=(...t)=>e.handleCompositionEnd&&e.handleCompositionEnd(...t),onKeydown:[t[5]||=it(lt(t=>e.onKeyboardNavigate(`backward`),[`stop`,`prevent`]),[`up`]),t[6]||=it(lt(t=>e.onKeyboardNavigate(`forward`),[`stop`,`prevent`]),[`down`]),t[7]||=it(lt((...t)=>e.onKeyboardSelect&&e.onKeyboardSelect(...t),[`stop`,`prevent`]),[`enter`]),t[8]||=it(lt((...t)=>e.handleEsc&&e.handleEsc(...t),[`stop`,`prevent`]),[`esc`]),t[9]||=it(lt((...t)=>e.handleDel&&e.handleDel(...t),[`stop`]),[`delete`])],onClick:t[10]||=lt((...t)=>e.toggleMenu&&e.toggleMenu(...t),[`stop`])},null,46,yd),e.filterable?(k(),U(`span`,{key:0,ref:`calculatorRef`,"aria-hidden":`true`,class:T(e.nsSelect.e(`input-calculator`)),textContent:s(e.states.inputValue)},null,10,bd)):V(`v-if`,!0)],2),e.shouldShowPlaceholder?(k(),U(`div`,{key:1,class:T([e.nsSelect.e(`selected-item`),e.nsSelect.e(`placeholder`),e.nsSelect.is(`transparent`,!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?x(e.$slots,`label`,{key:0,index:e.allOptionsValueMap.get(e.modelValue)?.index??-1,label:e.currentPlaceholder,value:e.modelValue},()=>[G(`span`,null,s(e.currentPlaceholder),1)]):(k(),U(`span`,xd,s(e.currentPlaceholder),1))],2)):V(`v-if`,!0)],2),G(`div`,{ref:`suffixRef`,class:T(e.nsSelect.e(`suffix`))},[e.iconComponent?ue((k(),q(l,{key:0,class:T([e.nsSelect.e(`caret`),e.nsInput.e(`icon`),e.iconReverse])},{default:S(()=>[(k(),q(et(e.iconComponent)))]),_:1},8,[`class`])),[[nt,!e.showClearBtn]]):V(`v-if`,!0),e.showClearBtn&&e.clearIcon?(k(),q(l,{key:1,class:T([e.nsSelect.e(`caret`),e.nsInput.e(`icon`),e.nsSelect.e(`clear`)]),onClick:lt(e.handleClear,[`prevent`,`stop`])},{default:S(()=>[(k(),q(et(e.clearIcon)))]),_:1},8,[`class`,`onClick`])):V(`v-if`,!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(k(),q(l,{key:2,class:T([e.nsInput.e(`icon`),e.nsInput.e(`validateIcon`),e.nsInput.is(`loading`,e.validateState===`validating`)])},{default:S(()=>[(k(),q(et(e.validateIcon)))]),_:1},8,[`class`])):V(`v-if`,!0)],2)],2)]),content:S(()=>[W(u,{id:e.contentId,ref:`menuRef`,data:e.filteredOptions,width:e.popperSize-e.BORDER_HORIZONTAL_WIDTH,"hovering-index":e.states.hoveringIndex,"scrollbar-always-on":e.scrollbarAlwaysOn,"aria-label":e.ariaLabel,onEndReached:e.onEndReached},_e({default:S(t=>[x(e.$slots,`default`,te(We(t)))]),_:2},[e.$slots.header?{name:`header`,fn:S(()=>[G(`div`,{class:T(e.nsSelect.be(`dropdown`,`header`)),onClick:t[12]||=lt(()=>{},[`stop`])},[x(e.$slots,`header`)],2)]),key:`0`}:void 0,e.$slots.loading&&e.loading?{name:`loading`,fn:S(()=>[G(`div`,{class:T(e.nsSelect.be(`dropdown`,`loading`))},[x(e.$slots,`loading`)],2)]),key:`1`}:e.loading||e.filteredOptions.length===0?{name:`empty`,fn:S(()=>[G(`div`,{class:T(e.nsSelect.be(`dropdown`,`empty`))},[x(e.$slots,`empty`,{},()=>[G(`span`,null,s(e.emptyText),1)])],2)]),key:`2`}:void 0,e.$slots.footer?{name:`footer`,fn:S(()=>[G(`div`,{class:T(e.nsSelect.be(`dropdown`,`footer`)),onClick:t[13]||=lt(()=>{},[`stop`])},[x(e.$slots,`footer`)],2)]),key:`3`}:void 0]),1032,[`id`,`data`,`width`,`hovering-index`,`scrollbar-always-on`,`aria-label`,`onEndReached`])]),_:3},8,[`visible`,`teleported`,`popper-class`,`popper-style`,`popper-options`,`fallback-placements`,`effect`,`placement`,`transition`,`persistent`,`append-to`,`show-arrow`,`offset`,`onBeforeShow`])],34)),[[d,e.handleClickOutside,e.popperRef]])}var Cd=fe(Ht(vd,[[`render`,Sd]])),wd=Symbol(`sliderContextKey`),Td=R({modelValue:{type:h([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:h([Number,String]),default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:Kn,inputSize:Kn,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:h(Function),default:void 0},disabled:{type:Boolean,default:void 0},range:Boolean,vertical:Boolean,height:String,rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:h(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:Or,default:`top`},marks:{type:h(Object)},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},...Rt([`ariaLabel`])}),Ed=e=>a(e)||L(e)&&e.every(a),Dd={[Kt]:Ed,[Wt]:Ed,[Mt]:Ed},Od=(e,t,n)=>{let r=H();return i(async()=>{e.range?(L(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(t.firstValue=!a(e.modelValue)||Number.isNaN(e.modelValue)?e.min:Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),_t(window,`resize`,n),await J(),n()}),{sliderWrapper:r}},kd=e=>{let t=B(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((e,t)=>e-t).filter(t=>t<=e.max&&t>=e.min).map(t=>({point:t,position:(t-e.min)*100/(e.max-e.min),mark:e.marks[t]})):[]);return Ie(()=>{if(e.step===`mark`&&!e.marks&&On(`ElSlider`,`marks prop must be provided when step is mark`),e.marks){let n=Object.keys(e.marks),r=t.value.map(e=>e.point),i=n.filter(e=>{let t=Number.parseFloat(e);return Number.isNaN(t)||!r.includes(t)});i.length>0&&On(`ElSlider`,`Some marks keys are invalid (not a number or out of [min, max]): [${i.map(e=>`'${e}'`).join(`, `)}] and will be ignored.`)}}),t},Ad=(e,t,n)=>{let{formItem:r}=Dn(),i=Re(),a=H(),o=H(),s={firstButton:a,secondButton:o},c=Fn(),l=B(()=>Math.min(t.firstValue,t.secondValue)),u=B(()=>Math.max(t.firstValue,t.secondValue)),d=B(()=>e.range?`${100*(u.value-l.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),f=B(()=>e.range?`${100*(l.value-e.min)/(e.max-e.min)}%`:`0%`),p=B(()=>e.vertical?{height:e.height}:{}),m=B(()=>e.vertical?{height:d.value,bottom:f.value}:{width:d.value,left:f.value}),h=()=>{i.value&&(t.sliderSize=i.value.getBoundingClientRect()[e.vertical?`height`:`width`])},g=n=>{let r=e.min+n*(e.max-e.min)/100;if(!e.range)return a;let i;return i=Math.abs(l.value-r)t.secondValue?`firstButton`:`secondButton`,s[i]},_=e=>{let t=g(e);return t.value.setPosition(e),t},v=n=>{t.firstValue=n??e.min,b(e.range?[l.value,u.value]:n??e.min)},y=n=>{t.secondValue=n,e.range&&b([l.value,u.value])},b=e=>{n(Kt,e),n(Wt,e)},x=async()=>{await J(),n(Mt,e.range?[l.value,u.value]:e.modelValue)},S=n=>{if(c.value||t.dragging)return;h();let r=0;if(e.vertical){let e=n.touches?.item(0)?.clientY??n.clientY;r=(i.value.getBoundingClientRect().bottom-e)/t.sliderSize*100}else r=((n.touches?.item(0)?.clientX??n.clientX)-i.value.getBoundingClientRect().left)/t.sliderSize*100;if(!(r<0||r>100))return _(r)};return{elFormItem:r,slider:i,firstButton:a,secondButton:o,sliderDisabled:c,minValue:l,maxValue:u,runwayStyle:p,barStyle:m,resetSize:h,setPosition:_,emitChange:x,onSliderWrapperPrevent:e=>{(s.firstButton.value?.dragging||s.secondButton.value?.dragging)&&e.preventDefault()},onSliderClick:e=>{S(e)&&x()},onSliderDown:async e=>{let t=S(e);t&&(await J(),t.value.onButtonDown(e))},onSliderMarkerDown:e=>{c.value||t.dragging||_(e)&&x()},setFirstValue:v,setSecondValue:y}},jd=(e,t,n,r)=>({stops:B(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===`mark`||e.step===0)return e.step===0&&On(`ElSlider`,`step should not be 0.`),[];let i=Math.ceil((e.max-e.min)/e.step),a=100*e.step/(e.max-e.min),o=Array.from({length:i-1}).map((e,t)=>(t+1)*a);return e.range?o.filter(t=>t<100*(n.value-e.min)/(e.max-e.min)||t>100*(r.value-e.min)/(e.max-e.min)):o.filter(n=>n>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:t=>e.vertical?{bottom:`${t}%`}:{left:`${t}%`}}),Md=(e,t,n,r,i,o)=>{let s=e=>{i(Kt,e),i(Wt,e)},c=()=>e.range?![n.value,r.value].every((e,n)=>e===t.oldValue[n]):e.modelValue!==t.oldValue,l=()=>{e.min>e.max&&bn(`Slider`,`min should not be greater than max.`);let n=e.modelValue;e.range&&L(n)?n[1]e.max?s([e.max,e.max]):n[0]e.max?s([n[0],e.max]):(t.firstValue=n[0],t.secondValue=n[1],c()&&(e.validateEvent&&o?.validate?.(`change`).catch(Me),t.oldValue=n.slice())):!e.range&&a(n)&&!Number.isNaN(n)&&(ne.max?s(e.max):(t.firstValue=n,c()&&(e.validateEvent&&o?.validate?.(`change`).catch(Me),t.oldValue=n)))};l(),C(()=>t.dragging,e=>{e||l()}),C(()=>e.modelValue,(e,n)=>{t.dragging||L(e)&&L(n)&&e.every((e,t)=>e===n[t])&&t.firstValue===e[0]&&t.secondValue===e[1]||l()},{deep:!0}),C(()=>[e.min,e.max],()=>{l()})},Nd=(e,t,n)=>{let r=H(),i=H(!1),a=B(()=>t.value instanceof Function);return{tooltip:r,tooltipVisible:i,formatValue:B(()=>a.value&&t.value(e.modelValue)||e.modelValue),displayTooltip:_r(()=>{n.value&&(i.value=!0)},50),hideTooltip:_r(()=>{n.value&&(i.value=!1)},50)}},Pd=(e,t,n)=>{let{disabled:r,min:i,max:o,step:s,showTooltip:c,persistent:l,precision:u,sliderSize:d,formatTooltip:f,emitChange:p,resetSize:m,updateDragging:h,markList:g}=Xe(wd),{tooltip:_,tooltipVisible:v,formatValue:y,displayTooltip:b,hideTooltip:x}=Nd(e,f,c),S=H(),w=B(()=>`${(e.modelValue-i.value)/(o.value-i.value)*100}%`),T=B(()=>e.vertical?{bottom:w.value}:{left:w.value}),E=B(()=>s.value===`mark`&&g.value.length>0),D=()=>{t.hovering=!0,b()},O=()=>{t.hovering=!1,t.dragging||x()},k=e=>{r.value||(e.preventDefault(),re(e),window.addEventListener(`mousemove`,L),window.addEventListener(`touchmove`,L),window.addEventListener(`mouseup`,ie),window.addEventListener(`touchend`,ie),window.addEventListener(`contextmenu`,ie),S.value.focus())},A=e=>{r.value||(t.newPosition=Number.parseFloat(w.value)+e/(o.value-i.value)*100,ae(t.newPosition),p())},j=t=>{if(r.value||!g.value.length)return;let n=e.modelValue,a=2**-52,s=Math.abs(t),c;if(t>0){let e=g.value.findIndex(e=>e.point>n+a);if(e!==-1){let t=Math.min(e+s-1,g.value.length-1);c=g.value[t].point}}else{let e=-1;for(let t=g.value.length-1;t>=0;t--)if(g.value[t].point{E.value?j(-1):a(s.value)&&A(-s.value)},N=()=>{E.value?j(1):a(s.value)&&A(s.value)},P=()=>{E.value?j(-4):a(s.value)&&A(-s.value*4)},ee=()=>{E.value?j(4):a(s.value)&&A(s.value*4)},F=()=>{r.value||(ae(0),p())},I=()=>{r.value||(ae(100),p())},te=e=>{let t=Xt(e),n=!0;switch(t){case Pt.left:case Pt.down:M();break;case Pt.right:case Pt.up:N();break;case Pt.home:F();break;case Pt.end:I();break;case Pt.pageDown:P();break;case Pt.pageUp:ee();break;default:n=!1}n&&e.preventDefault()},ne=e=>{let t,n;return e.type.startsWith(`touch`)?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}},re=n=>{t.dragging=!0,t.isClick=!0;let{clientX:r,clientY:i}=ne(n);e.vertical?t.startY=i:t.startX=r,t.startPosition=Number.parseFloat(w.value),t.newPosition=t.startPosition},L=n=>{if(t.dragging){t.isClick=!1,b(),m();let r,{clientX:i,clientY:a}=ne(n);e.vertical?(t.currentY=a,r=(t.startY-t.currentY)/d.value*100):(t.currentX=i,r=(t.currentX-t.startX)/d.value*100),t.newPosition=t.startPosition+r,ae(t.newPosition)}},ie=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||x(),t.isClick||ae(t.newPosition),p()},0),window.removeEventListener(`mousemove`,L),window.removeEventListener(`touchmove`,L),window.removeEventListener(`mouseup`,ie),window.removeEventListener(`touchend`,ie),window.removeEventListener(`contextmenu`,ie))},ae=async r=>{if(r===null||Number.isNaN(+r))return;r=dr(r,0,100);let a;if(s.value===`mark`)a=g.value.length===0?r<=50?i.value:o.value:g.value.reduce((e,t)=>Math.abs(t.position-r)t.dragging,e=>{h(e)}),_t(S,`touchstart`,k,{passive:!1}),{disabled:r,button:S,tooltip:_,tooltipVisible:v,showTooltip:c,persistent:l,wrapperStyle:T,formatValue:y,handleMouseEnter:D,handleMouseLeave:O,onButtonDown:k,onKeyDown:te,setPosition:ae}},Fd=R({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:Or,default:`top`}}),Id={[Kt]:e=>a(e)},Ld=[`tabindex`],Rd=Se({name:`ElSliderButton`,__name:`button`,props:Fd,emits:Id,setup(e,{expose:t,emit:n}){let r=e,i=n,a=u(`slider`),o=Ne({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:r.modelValue}),c=B(()=>p.value?m.value:!1),{disabled:l,button:d,tooltip:f,showTooltip:p,persistent:m,tooltipVisible:h,wrapperStyle:g,formatValue:_,handleMouseEnter:v,handleMouseLeave:y,onButtonDown:b,onKeyDown:x,setPosition:C}=Pd(r,o,i),{hovering:w,dragging:E}=Ve(o);return t({onButtonDown:b,onKeyDown:x,setPosition:C,hovering:w,dragging:E}),(e,t)=>(k(),U(`div`,{ref_key:`button`,ref:d,class:T([K(a).e(`button-wrapper`),{hover:K(w),dragging:K(E)}]),style:tt(K(g)),tabindex:K(l)?void 0:0,onMouseenter:t[0]||=(...e)=>K(v)&&K(v)(...e),onMouseleave:t[1]||=(...e)=>K(y)&&K(y)(...e),onMousedown:t[2]||=(...e)=>K(b)&&K(b)(...e),onFocus:t[3]||=(...e)=>K(v)&&K(v)(...e),onBlur:t[4]||=(...e)=>K(y)&&K(y)(...e),onKeydown:t[5]||=(...e)=>K(x)&&K(x)(...e)},[W(K(Cr),{ref_key:`tooltip`,ref:f,visible:K(h),placement:e.placement,"fallback-placements":[`top`,`bottom`,`right`,`left`],"stop-popper-mouse-event":!1,"popper-class":e.tooltipClass,disabled:!K(p),persistent:c.value},{content:S(()=>[G(`span`,null,s(K(_)),1)]),default:S(()=>[G(`div`,{class:T([K(a).e(`button`),{hover:K(w),dragging:K(E)}])},null,2)]),_:1},8,[`visible`,`placement`,`popper-class`,`disabled`,`persistent`])],46,Ld))}}),zd=R({mark:{type:h([String,Object]),default:void 0}}),Bd=Se({name:`ElSliderMarker`,props:zd,setup(e){let t=u(`slider`),n=B(()=>D(e.mark)?e.mark:e.mark.label),r=B(()=>D(e.mark)?void 0:e.mark.style);return()=>Y(`div`,{class:t.e(`marks-text`),style:r.value},n.value)}}),Vd=[`id`,`role`,`aria-label`,`aria-labelledby`],Hd={key:1},Ud=fe(Se({name:`ElSlider`,__name:`slider`,props:Td,emits:Dd,setup(e,{expose:t,emit:n}){let r=e,i=n,o=u(`slider`),{t:s}=on(),c=Ne({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:l,slider:d,firstButton:f,secondButton:p,sliderDisabled:m,minValue:h,maxValue:g,runwayStyle:v,barStyle:y,resetSize:b,emitChange:x,onSliderWrapperPrevent:S,onSliderClick:C,onSliderDown:w,onSliderMarkerDown:E,setFirstValue:D,setSecondValue:O}=Ad(r,c,i),{stops:A,getStopStyle:j}=jd(r,c,h,g),{inputId:M,isLabeledByFormItem:N}=yn(r,{formItemContext:l}),ee=zn(),F=B(()=>r.inputSize||ee.value),I=B(()=>r.showInput&&!r.range&&r.step!==`mark`),te=B(()=>r.ariaLabel||s(`el.slider.defaultLabel`,{min:r.min,max:r.max})),ne=B(()=>r.range?r.rangeStartLabel||s(`el.slider.defaultRangeStartLabel`):te.value),re=B(()=>r.formatValueText?r.formatValueText(ce.value):`${ce.value}`),L=B(()=>r.rangeEndLabel||s(`el.slider.defaultRangeEndLabel`)),ie=B(()=>r.formatValueText?r.formatValueText(le.value):`${le.value}`),ae=B(()=>[o.b(),o.m(ee.value),o.is(`vertical`,r.vertical),{[o.m(`with-input`)]:I.value}]),R=kd(r);Md(r,c,h,g,i,l);let oe=B(()=>a(r.step)?r.step:1),z=B(()=>{let e=a(r.step)?r.step:1,t=[r.min,r.max,e].map(e=>{let t=`${e}`.split(`.`)[1];return t?t.length:0});return Math.max.apply(null,t)}),{sliderWrapper:se}=Od(r,c,b),{firstValue:ce,secondValue:le,sliderSize:ue}=Ve(c),de=e=>{c.dragging=e};return _t(se,`touchstart`,S,{passive:!1}),_t(se,`touchmove`,S,{passive:!1}),P(wd,{...Ve(r),sliderSize:ue,disabled:m,precision:z,markList:R,emitChange:x,resetSize:b,updateDragging:de}),t({onSliderClick:C}),(e,t)=>(k(),U(`div`,{id:e.range?K(M):void 0,ref_key:`sliderWrapper`,ref:se,class:T(ae.value),role:e.range?`group`:void 0,"aria-label":e.range&&!K(N)?te.value:void 0,"aria-labelledby":e.range&&K(N)?K(l)?.labelId:void 0},[G(`div`,{ref_key:`slider`,ref:d,class:T([K(o).e(`runway`),{"show-input":I.value},K(o).is(`disabled`,K(m))]),style:tt(K(v)),onMousedown:t[0]||=(...e)=>K(w)&&K(w)(...e),onTouchstartPassive:t[1]||=(...e)=>K(w)&&K(w)(...e)},[G(`div`,{class:T(K(o).e(`bar`)),style:tt(K(y))},null,6),W(Rd,{id:e.range?void 0:K(M),ref_key:`firstButton`,ref:f,"model-value":K(ce),vertical:e.vertical,"tooltip-class":e.tooltipClass,placement:e.placement,role:`slider`,"aria-label":e.range||!K(N)?ne.value:void 0,"aria-labelledby":!e.range&&K(N)?K(l)?.labelId:void 0,"aria-valuemin":e.min,"aria-valuemax":e.range?K(le):e.max,"aria-valuenow":K(ce),"aria-valuetext":re.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-disabled":K(m),"onUpdate:modelValue":K(D)},null,8,[`id`,`model-value`,`vertical`,`tooltip-class`,`placement`,`aria-label`,`aria-labelledby`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`aria-disabled`,`onUpdate:modelValue`]),e.range?(k(),q(Rd,{key:0,ref_key:`secondButton`,ref:p,"model-value":K(le),vertical:e.vertical,"tooltip-class":e.tooltipClass,placement:e.placement,role:`slider`,"aria-label":L.value,"aria-valuemin":K(ce),"aria-valuemax":e.max,"aria-valuenow":K(le),"aria-valuetext":ie.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-disabled":K(m),"onUpdate:modelValue":K(O)},null,8,[`model-value`,`vertical`,`tooltip-class`,`placement`,`aria-label`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`aria-disabled`,`onUpdate:modelValue`])):V(`v-if`,!0),e.showStops?(k(),U(`div`,Hd,[(k(!0),U(ve,null,_(K(A),(e,t)=>(k(),U(`div`,{key:t,class:T(K(o).e(`stop`)),style:tt(K(j)(e))},null,6))),128))])):V(`v-if`,!0),K(R).length>0?(k(),U(ve,{key:2},[G(`div`,null,[(k(!0),U(ve,null,_(K(R),(e,t)=>(k(),U(`div`,{key:t,style:tt(K(j)(e.position)),class:T([K(o).e(`stop`),K(o).e(`marks-stop`)])},null,6))),128))]),G(`div`,{class:T(K(o).e(`marks`))},[(k(!0),U(ve,null,_(K(R),(e,t)=>(k(),q(K(Bd),{key:t,mark:e.mark,style:tt(K(j)(e.position)),onMousedown:lt(t=>K(E)(e.position),[`stop`])},null,8,[`mark`,`style`,`onMousedown`]))),128))],2)],64)):V(`v-if`,!0)],38),I.value?(k(),q(K(Ci),{key:0,ref:`input`,"model-value":K(ce),class:T(K(o).e(`input`)),step:oe.value,disabled:K(m),controls:e.showInputControls,min:e.min,max:e.max,precision:z.value,size:F.value,"onUpdate:modelValue":K(D),onChange:K(x)},null,8,[`model-value`,`class`,`step`,`disabled`,`controls`,`min`,`max`,`precision`,`size`,`onUpdate:modelValue`,`onChange`])):V(`v-if`,!0)],10,Vd))}})),Wd=R({prefixCls:{type:String}}),Gd=Se({name:`ElSpaceItem`,props:Wd,setup(e,{slots:t}){let n=u(`space`),r=B(()=>`${e.prefixCls||n.b()}__item`);return()=>Y(`div`,{class:r.value},x(t,`default`))}}),Kd={small:8,default:12,large:16};function qd(e){let t=u(`space`),n=B(()=>[t.b(),t.m(e.direction),e.class]),r=H(0),i=H(0),o=B(()=>[e.wrap||e.fill?{flexWrap:`wrap`}:{},{alignItems:e.alignment},{rowGap:`${i.value}px`,columnGap:`${r.value}px`},e.style]),s=B(()=>e.fill?{flexGrow:1,minWidth:`${e.fillRatio}%`}:{});return Ie(()=>{let{size:t=`small`,wrap:n,direction:o,fill:s}=e;if(L(t)){let[e=0,n=0]=t;r.value=e,i.value=n}else{let e;e=a(t)?t:Kd[t||`small`]||Kd.small,(n||s)&&o===`horizontal`?r.value=i.value=e:o===`horizontal`?(r.value=e,i.value=0):(i.value=e,r.value=0)}}),{classes:n,containerStyle:o,itemStyle:s}}var Jd=R({direction:{type:String,values:[`horizontal`,`vertical`],default:`horizontal`},class:{type:h([String,Object,Array]),default:``},style:{type:h([String,Array,Object,Boolean]),default:``},alignment:{type:h(String),default:`center`},prefixCls:{type:String},spacer:{type:h([Object,String,Number,Array]),default:null,validator:e=>re(e)||a(e)||D(e)},wrap:Boolean,fill:Boolean,fillRatio:{type:Number,default:100},size:{type:[String,Array,Number],values:ln,validator:e=>a(e)||L(e)&&e.length===2&&e.every(a)}}),Yd=Se({name:`ElSpace`,props:Jd,setup(e,{slots:t}){let{classes:r,containerStyle:i,itemStyle:a}=qd(e);function o(t,r=``,i=[]){let{prefixCls:s}=e;return t.forEach((e,t)=>{Lr(e)?L(e.children)&&e.children.forEach((e,t)=>{Lr(e)&&L(e.children)?o(e.children,`${r+t}-`,i):re(e)&&e?.type===n?i.push(e):i.push(W(Gd,{style:a.value,prefixCls:s,key:`nested-${r+t}`},{default:()=>[e]},12,[`style`,`prefixCls`]))}):Ir(e)&&i.push(W(Gd,{style:a.value,prefixCls:s,key:`LoopKey${r+t}`},{default:()=>[e]},12,[`style`,`prefixCls`]))}),i}return()=>{let{spacer:n,direction:s}=e,c=x(t,`default`,{key:0},()=>[]);if((c.children??[]).length===0)return null;if(L(c.children)){let e=o(c.children);if(n){let t=e.length-1;e=e.reduce((e,r,i)=>{let o=[...e,r];return i!==t&&o.push(W(`span`,{style:[a.value,s===`vertical`?`width: 100%`:null],key:i},[re(n)?n:Pe(n,1)],4)),o},[])}return W(`div`,{class:r.value,style:i.value},e,6)}return c.children}}}),Xd=fe(Yd),Zd={asc:`desc`,desc:`asc`},Qd=Symbol(`placeholder`),$d=String,ef={type:h(Array),required:!0};h(Object);var tf={type:h(Array)},nf={...tf,required:!0},rf=String,af={type:h(Array),default:()=>Lt([])},of={type:Number,required:!0},sf={type:h([String,Number,Symbol]),default:`id`},cf={type:h(Object)},lf=R({class:String,columns:ef,columnsStyles:{type:h(Object),required:!0},depth:Number,expandColumnKey:rf,estimatedRowHeight:{...Zs.estimatedRowHeight,default:void 0},isScrolling:Boolean,onRowExpand:{type:h(Function)},onRowHover:{type:h(Function)},onRowHeightChange:{type:h(Function)},rowData:{type:h(Object),required:!0},rowEventHandlers:{type:h(Object)},rowIndex:{type:Number,required:!0},rowKey:sf,style:{type:h(Object)}}),uf={type:Number,required:!0},df=R({class:String,columns:ef,fixedHeaderData:{type:h(Array)},headerData:{type:h(Array),required:!0},headerHeight:{type:h([Number,Array]),default:50},rowWidth:uf,rowHeight:{type:Number,default:50},height:uf,width:uf}),ff=R({columns:ef,data:nf,fixedData:tf,estimatedRowHeight:lf.estimatedRowHeight,width:of,height:of,headerWidth:of,headerHeight:df.headerHeight,bodyWidth:of,rowHeight:of,cache:qs.cache,useIsScrolling:Boolean,scrollbarAlwaysOn:Zs.scrollbarAlwaysOn,scrollbarStartGap:Zs.scrollbarStartGap,scrollbarEndGap:Zs.scrollbarEndGap,class:$d,style:cf,containerStyle:cf,getRowHeight:{type:h(Function),required:!0},rowKey:lf.rowKey,onRowsRendered:{type:h(Function)},onScroll:{type:h(Function)}}),pf=R({cache:ff.cache,estimatedRowHeight:lf.estimatedRowHeight,rowKey:sf,headerClass:{type:h([String,Function])},headerProps:{type:h([Object,Function])},headerCellProps:{type:h([Object,Function])},headerHeight:df.headerHeight,footerHeight:{type:Number,default:0},rowClass:{type:h([String,Function])},rowProps:{type:h([Object,Function])},rowHeight:{type:Number,default:50},cellProps:{type:h([Object,Function])},columns:ef,data:nf,dataGetter:{type:h(Function)},fixedData:tf,expandColumnKey:lf.expandColumnKey,expandedRowKeys:af,defaultExpandedRowKeys:af,class:$d,fixed:Boolean,style:{type:h(Object)},width:of,height:of,maxHeight:Number,useIsScrolling:Boolean,indentSize:{type:Number,default:12},iconSize:{type:Number,default:12},hScrollbarSize:Zs.hScrollbarSize,vScrollbarSize:Zs.vScrollbarSize,scrollbarAlwaysOn:Qs.alwaysOn,sortBy:{type:h(Object),default:()=>({})},sortState:{type:h(Object),default:void 0},onColumnSort:{type:h(Function)},onExpandedRowsChange:{type:h(Function)},onEndReached:{type:h(Function)},onRowExpand:lf.onRowExpand,onScroll:ff.onScroll,onRowsRendered:ff.onRowsRendered,rowEventHandlers:lf.rowEventHandlers}),mf=(e,t,n)=>{let r={flexGrow:0,flexShrink:0,...n?{}:{flexGrow:e.flexGrow??0,flexShrink:e.flexShrink??1}},i={...e.style??{},...r,flexBasis:`auto`,width:e.width};return t||(e.maxWidth&&(i.maxWidth=e.maxWidth),e.minWidth&&(i.minWidth=e.minWidth)),i};function hf(e,t,n){let r=B(()=>K(t).map((e,t)=>({...e,key:e.key??e.dataKey??t}))),i=B(()=>K(r).filter(e=>!e.hidden)),a=B(()=>K(i).filter(e=>e.fixed===`left`||e.fixed===!0)),o=B(()=>K(i).filter(e=>e.fixed===`right`)),s=B(()=>K(i).filter(e=>!e.fixed)),c=B(()=>{let e=[];return K(a).forEach(t=>{e.push({...t,placeholderSign:Qd})}),K(s).forEach(t=>{e.push(t)}),K(o).forEach(t=>{e.push({...t,placeholderSign:Qd})}),e}),l=B(()=>K(a).length||K(o).length),u=B(()=>K(r).reduce((t,r)=>(t[r.key]=mf(r,K(n),e.fixed),t),{})),d=B(()=>K(i).reduce((e,t)=>e+t.width,0)),f=e=>K(r).find(t=>t.key===e),p=e=>K(u)[e],h=(e,t)=>{e.width=t};function g(t){let{key:n}=t.currentTarget.dataset;if(!n)return;let{sortState:r,sortBy:i}=e,a=`asc`;a=m(r)?Zd[r[n]]:Zd[i.order],e.onColumnSort?.({column:f(n),key:n,order:a})}return{columns:r,columnsStyles:u,columnsTotalWidth:d,fixedColumnsOnLeft:a,fixedColumnsOnRight:o,hasFixedColumns:l,mainColumns:c,normalColumns:s,visibleColumns:i,getColumn:f,getColumnStyle:p,updateColumnWidth:h,onColumnSorted:g}}var gf=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,onMaybeEndReached:i})=>{let a=H({scrollLeft:0,scrollTop:0});function o(e){let{scrollTop:i}=e;t.value?.scrollTo(e),n.value?.scrollToTop(i),r.value?.scrollToTop(i)}function s(e){a.value=e,o(e)}function c(e){a.value.scrollTop=e,o(K(a))}function l(e){a.value.scrollLeft=e,t.value?.scrollTo?.(K(a))}function u(t){s(t),e.onScroll?.(t)}function d({scrollTop:e}){let{scrollTop:t}=K(a);e!==t&&c(e)}function f(e,n=`auto`){t.value?.scrollToRow(e,n)}return C(()=>K(a).scrollTop,(e,t)=>{e>t&&i()}),{scrollPos:a,scrollTo:s,scrollToLeft:l,scrollToTop:c,scrollToRow:f,onScroll:u,onVerticalScroll:d}},_f=(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,tableInstance:i,ns:o,isScrolling:s})=>{let c=xe(),{emit:l}=c,u=Re(!1),d=H(e.defaultExpandedRowKeys||[]),f=H(-1),p=Re(null),m=H({}),h=H({}),g=Re({}),_=Re({}),v=Re({}),y=B(()=>a(e.estimatedRowHeight));function b(t){e.onRowsRendered?.(t),t.rowCacheEnd>K(f)&&(f.value=t.rowCacheEnd)}function x({hovered:e,rowKey:t}){s.value||i.vnode.el.querySelectorAll(`[rowkey="${String(t)}"]`).forEach(t=>{e?t.classList.add(o.is(`hovered`)):t.classList.remove(o.is(`hovered`))})}function S({expanded:t,rowData:n,rowIndex:r,rowKey:a}){let s=[...K(d)],c=s.indexOf(a);t?c===-1&&s.push(a):c>-1&&s.splice(c,1),d.value=s,l(`update:expandedRowKeys`,s),e.onRowExpand?.({expanded:t,rowData:n,rowIndex:r,rowKey:a}),e.onExpandedRowsChange?.(s),i.vnode.el.querySelector(`.${o.is(`hovered`)}[rowkey="${String(a)}"]`)&&J(()=>x({hovered:!0,rowKey:a}))}let C=_r(()=>{u.value=!0,m.value={...K(m),...K(h)},w(K(p),!1),h.value={},p.value=null,t.value?.forceUpdate(),n.value?.forceUpdate(),r.value?.forceUpdate(),c.proxy?.$forceUpdate(),u.value=!1},0);function w(e,i=!1){K(y)&&[t,n,r].forEach(t=>{let n=K(t);n&&n.resetAfterRowIndex(e,i)})}function T(e,t,n){let r=K(p);(r===null||r>n)&&(p.value=n),h.value[e]=t}function E({rowKey:e,height:t,rowIndex:n},r){r?r===`right`?v.value[e]=t:g.value[e]=t:_.value[e]=t;let i=Math.max(...[g,v,_].map(t=>t.value[e]||0));K(m)[e]!==i&&(T(e,i,n),C())}return{expandedRowKeys:d,lastRenderedRowIndex:f,isDynamic:y,isResetting:u,rowHeights:m,resetAfterIndex:w,onRowExpanded:S,onRowHovered:x,onRowsRendered:b,onRowHeightChange:E}},vf=(e,{expandedRowKeys:t,lastRenderedRowIndex:n,resetAfterIndex:r})=>{let i=H({}),a=B(()=>{let n={},{data:r,rowKey:a}=e,o=K(t);if(!o||!o.length)return r;let s=[],c=new Set;o.forEach(e=>c.add(e));let l=r.slice();for(l.forEach(e=>n[e[a]]=0);l.length>0;){let e=l.shift();s.push(e),c.has(e[a])&&L(e.children)&&e.children.length>0&&(l=[...e.children,...l],e.children.forEach(t=>n[t[a]]=n[e[a]]+1))}return i.value=n,s}),o=B(()=>{let{data:t,expandColumnKey:n}=e;return n?K(a):t});return C(o,(e,t)=>{e!==t&&(n.value=-1,r(0,!0))}),{data:o,depthMap:i}},yf=(e,t)=>e+t,bf=e=>L(e)?e.reduce(yf,0):e,xf=(e,t,n={})=>qe(e)?e(t):e??n,Sf=e=>([`width`,`maxWidth`,`minWidth`,`height`].forEach(t=>{e[t]=hn(e[t])}),e),Cf=e=>re(e)?t=>Y(e,t):e,wf=(e,{columnsTotalWidth:t,rowsHeight:n,fixedColumnsOnLeft:r,fixedColumnsOnRight:i})=>{let o=B(()=>{let{fixed:n,width:r,vScrollbarSize:i}=e,a=r-i;return n?Math.max(Math.round(K(t)),a):a}),s=B(()=>{let{height:t=0,maxHeight:r=0,footerHeight:i,hScrollbarSize:a}=e;if(r>0){let e=K(p),t=K(n),o=K(f)+e+t+a;return Math.min(o,r-i)}return t-i}),c=B(()=>{let{maxHeight:t}=e,r=K(s);if(a(t)&&t>0)return r;let i=K(n)+K(f)+K(p);return Math.min(r,i)}),l=e=>e.width,u=B(()=>bf(K(r).map(l))),d=B(()=>bf(K(i).map(l))),f=B(()=>bf(e.headerHeight)),p=B(()=>(e.fixedData?.length||0)*e.rowHeight),m=B(()=>K(s)-K(f)-K(p)),h=B(()=>{let{style:t={},height:n,width:r}=e;return Sf({...t,height:n,width:r})});return{bodyWidth:o,fixedTableHeight:c,mainTableHeight:s,leftTableWidth:u,rightTableWidth:d,windowHeight:m,footerHeight:B(()=>Sf({height:e.footerHeight})),emptyStyle:B(()=>({top:hn(K(f)),bottom:hn(e.footerHeight),width:hn(e.width)})),rootStyle:h,headerHeight:f}};function Tf(e){let t=H(),n=H(),r=H(),{columns:i,columnsStyles:o,columnsTotalWidth:s,fixedColumnsOnLeft:c,fixedColumnsOnRight:l,hasFixedColumns:d,mainColumns:f,onColumnSorted:p}=hf(e,Ae(e,`columns`),Ae(e,`fixed`)),{scrollTo:m,scrollToLeft:h,scrollToTop:g,scrollToRow:_,onScroll:v,onVerticalScroll:y,scrollPos:b}=gf(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,onMaybeEndReached:pe}),x=u(`table-v2`),S=xe(),w=Re(!1),{expandedRowKeys:T,lastRenderedRowIndex:E,isDynamic:D,isResetting:O,rowHeights:k,resetAfterIndex:A,onRowExpanded:j,onRowHeightChange:M,onRowHovered:N,onRowsRendered:P}=_f(e,{mainTableRef:t,leftTableRef:n,rightTableRef:r,tableInstance:S,ns:x,isScrolling:w}),{data:ee,depthMap:F}=vf(e,{expandedRowKeys:T,lastRenderedRowIndex:E,resetAfterIndex:A}),I=B(()=>{let{estimatedRowHeight:t,rowHeight:n}=e,r=K(ee);return a(t)?Object.values(K(k)).reduce((e,t)=>e+t,0):r.length*n}),{bodyWidth:te,fixedTableHeight:ne,mainTableHeight:re,leftTableWidth:ie,rightTableWidth:ae,windowHeight:R,footerHeight:oe,emptyStyle:z,rootStyle:se,headerHeight:ce}=wf(e,{columnsTotalWidth:s,fixedColumnsOnLeft:c,fixedColumnsOnRight:l,rowsHeight:I}),le=H(),ue=B(()=>{let t=K(ee).length===0;return L(e.fixedData)?e.fixedData.length===0&&t:t});function de(t){let{estimatedRowHeight:n,rowHeight:r,rowKey:i}=e;return n?K(k)[K(ee)[t][i]]||n:r}let fe=H(!1);function pe(){let{onEndReached:t}=e;if(!t)return;let{scrollTop:n}=K(b),r=K(I),i=r-(n+K(R))+e.hScrollbarSize;!fe.value&&K(E)>=0&&r<=n+K(re)-K(ce)?(fe.value=!0,t(i)):fe.value=!1}return C(()=>K(I),()=>fe.value=!1),C(()=>e.expandedRowKeys,e=>T.value=e,{deep:!0}),{columns:i,containerRef:le,mainTableRef:t,leftTableRef:n,rightTableRef:r,isDynamic:D,isResetting:O,isScrolling:w,hasFixedColumns:d,columnsStyles:o,columnsTotalWidth:s,data:ee,expandedRowKeys:T,depthMap:F,fixedColumnsOnLeft:c,fixedColumnsOnRight:l,mainColumns:f,bodyWidth:te,emptyStyle:z,rootStyle:se,footerHeight:oe,mainTableHeight:re,fixedTableHeight:ne,leftTableWidth:ie,rightTableWidth:ae,showEmpty:ue,getRowHeight:de,onColumnSorted:p,onRowHovered:N,onRowExpanded:j,onRowsRendered:P,onRowHeightChange:M,scrollTo:m,scrollToLeft:h,scrollToTop:g,scrollToRow:_,onScroll:v,onVerticalScroll:y}}var Ef=Symbol(`tableV2`),Df=`tableV2GridScrollLeft`,Of=Se({name:`ElTableV2Header`,props:df,setup(e,{slots:t,expose:n}){let r=u(`table-v2`),i=Xe(Df),a=H(),o=B(()=>Sf({width:e.width,height:e.height})),s=B(()=>Sf({width:e.rowWidth,height:e.height})),c=B(()=>lr(K(e.headerHeight))),l=e=>{let t=K(a);J(()=>{t?.scroll&&t.scroll({left:e})})},d=()=>{let n=r.e(`fixed-header-row`),{columns:i,fixedHeaderData:a,rowHeight:o}=e;return a?.map((e,r)=>{let a=Sf({height:o,width:`100%`});return t.fixed?.({class:n,columns:i,rowData:e,rowIndex:-(r+1),style:a})})},f=()=>{let n=r.e(`dynamic-header-row`),{columns:i}=e;return K(c).map((e,r)=>{let a=Sf({width:`100%`,height:e});return t.dynamic?.({class:n,columns:i,headerIndex:r,style:a})})};return E(()=>{i?.value&&l(i.value)}),n({scrollToLeft:l}),()=>{if(!(e.height<=0))return W(`div`,{ref:a,class:e.class,style:K(o),role:`rowgroup`},[W(`div`,{style:K(s),class:r.e(`header`)},[f(),d()])])}}}),kf=`ElTableV2Grid`,Af=e=>{let t=H(),n=H(),r=H(0),i=B(()=>{let{data:t,rowHeight:n,estimatedRowHeight:r}=e;if(!r)return t.length*n}),o=B(()=>{let{fixedData:t,rowHeight:n}=e;return(t?.length||0)*n}),s=B(()=>bf(e.headerHeight)),c=B(()=>{let{height:t}=e;return Math.max(0,t-K(s)-K(o))}),l=B(()=>K(s)+K(o)>0),u=({data:t,rowIndex:n})=>t[n][e.rowKey];function d({rowCacheStart:t,rowCacheEnd:n,rowVisibleStart:r,rowVisibleEnd:i}){e.onRowsRendered?.({rowCacheStart:t,rowCacheEnd:n,rowVisibleStart:r,rowVisibleEnd:i})}function f(e,t){n.value?.resetAfterRowIndex(e,t)}function p(e,i){let a=K(t),o=K(n);m(e)?(a?.scrollToLeft(e.scrollLeft),r.value=e.scrollLeft,o?.scrollTo(e)):(a?.scrollToLeft(e),r.value=e,o?.scrollTo({scrollLeft:e,scrollTop:i}))}function h(e){K(n)?.scrollTo({scrollTop:e})}function g(e,t){let i=K(n);if(!i)return;let a=r.value;i.scrollToItem(e,0,t),a&&p({scrollLeft:a})}function _(){K(n)?.$forceUpdate(),K(t)?.$forceUpdate()}return C(()=>e.bodyWidth,()=>{a(e.estimatedRowHeight)&&n.value?.resetAfter({columnIndex:0},!1)}),{bodyRef:n,forceUpdate:_,fixedRowHeight:o,gridHeight:c,hasHeader:l,headerHeight:s,headerRef:t,totalHeight:i,itemKey:u,onItemRendered:d,resetAfterRowIndex:f,scrollTo:p,scrollToTop:h,scrollToRow:g,scrollLeft:r}},jf=Se({name:kf,props:ff,setup(e,{slots:t,expose:n}){let{ns:r}=Xe(Ef),{bodyRef:i,fixedRowHeight:o,gridHeight:s,hasHeader:c,headerRef:l,headerHeight:u,totalHeight:d,forceUpdate:f,itemKey:p,onItemRendered:m,resetAfterRowIndex:h,scrollTo:g,scrollToTop:_,scrollToRow:v,scrollLeft:y}=Af(e);P(Df,y),ae(async()=>{await J();let e=i.value?.states.scrollTop;e&&_(Math.round(e)+1)}),n({forceUpdate:f,totalHeight:d,scrollTo:g,scrollToTop:_,scrollToRow:v,resetAfterRowIndex:h});let b=()=>e.bodyWidth;return()=>{let{cache:n,columns:d,data:f,fixedData:h,useIsScrolling:g,scrollbarAlwaysOn:_,scrollbarEndGap:v,scrollbarStartGap:y,style:x,rowHeight:S,bodyWidth:C,estimatedRowHeight:w,headerWidth:T,height:E,width:D,getRowHeight:O,onScroll:k}=e,A=a(w),j=A?zc:wc,M=K(u);return W(`div`,{role:`table`,class:[r.e(`table`),e.class],style:x},[W(j,{ref:i,data:f,useIsScrolling:g,itemKey:p,columnCache:0,columnWidth:A?b:C,totalColumn:1,totalRow:f.length,rowCache:n,rowHeight:A?O:S,width:D,height:K(s),class:r.e(`body`),role:`rowgroup`,scrollbarStartGap:y,scrollbarEndGap:v,scrollbarAlwaysOn:_,onScroll:k,onItemRendered:m,perfMode:!1},{default:e=>{let n=f[e.rowIndex];return t.row?.({...e,columns:d,rowData:n})}}),K(c)&&W(Of,{ref:l,class:r.e(`header-wrapper`),columns:d,headerData:f,headerHeight:e.headerHeight,fixedHeaderData:h,rowWidth:T,rowHeight:S,width:D,height:Math.min(M+K(o),E)},{dynamic:t.header,fixed:t.row})])}}});function Mf(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!re(e)}var Nf=(e,{slots:t})=>{let{mainTableRef:n,...r}=e;return W(jf,c({ref:n},r),Mf(t)?t:{default:()=>[t]})};function Pf(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!re(e)}var Ff=(e,{slots:t})=>{if(!e.columns.length)return;let{leftTableRef:n,...r}=e;return W(jf,c({ref:n},r),Pf(t)?t:{default:()=>[t]})};function If(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!re(e)}var Lf=(e,{slots:t})=>{if(!e.columns.length)return;let{rightTableRef:n,...r}=e;return W(jf,c({ref:n},r),If(t)?t:{default:()=>[t]})},Rf=e=>{let{isScrolling:t}=Xe(Ef),n=H(!1),r=H(),o=B(()=>a(e.estimatedRowHeight)&&e.rowIndex>=0),s=(t=!1)=>{let i=K(r);if(!i)return;let{columns:a,onRowHeightChange:o,rowKey:s,rowIndex:c,style:l}=e,{height:u}=i.getBoundingClientRect();n.value=!0,J(()=>{if(t||u!==Number.parseInt(l.height)){let e=a[0],t=e?.placeholderSign===Qd;o?.({rowKey:s,height:u,rowIndex:c},e&&!t&&e.fixed)}})},c=B(()=>{let{rowData:t,rowIndex:n,rowKey:r,onRowHover:i}=e,a=e.rowEventHandlers||{},o={};return Object.entries(a).forEach(([e,i])=>{qe(i)&&(o[e]=e=>{i({event:e,rowData:t,rowIndex:n,rowKey:r})})}),i&&[{name:`onMouseleave`,hovered:!1},{name:`onMouseenter`,hovered:!0}].forEach(({name:e,hovered:a})=>{let s=o[e];o[e]=e=>{i({event:e,hovered:a,rowData:t,rowIndex:n,rowKey:r}),s?.(e)}}),o});return i(()=>{K(o)&&s(!0)}),{isScrolling:t,measurable:o,measured:n,rowRef:r,eventHandlers:c,onExpand:t=>{let{onRowExpand:n,rowData:r,rowIndex:i,rowKey:a}=e;n?.({expanded:t,rowData:r,rowIndex:i,rowKey:a})}}},zf=Se({name:`ElTableV2TableRow`,props:lf,setup(e,{expose:t,slots:n,attrs:r}){let{eventHandlers:i,isScrolling:a,measurable:o,measured:s,rowRef:l,onExpand:u}=Rf(e);return t({onExpand:u}),()=>{let{columns:t,columnsStyles:d,expandColumnKey:f,depth:p,rowData:m,rowIndex:h,style:g}=e,_=t.map((e,r)=>{let i=L(m.children)&&m.children.length>0&&e.key===f;return n.cell({column:e,columns:t,columnIndex:r,depth:p,style:d[e.key],rowData:m,rowIndex:h,isScrolling:K(a),expandIconProps:i?{rowData:m,rowIndex:h,onExpand:u}:void 0})});if(n.row&&(_=n.row({cells:_.map(e=>L(e)&&e.length===1?e[0]:e),style:g,columns:t,depth:p,rowData:m,rowIndex:h,isScrolling:K(a)})),K(o)){let{height:t,...n}=g||{},a=K(s);return W(`div`,c({ref:l,class:e.class,style:a?g:n,role:`row`},r,K(i)),[_])}return W(`div`,c(r,{ref:l,class:e.class,style:g,role:`row`},K(i)),[_])}}});function Bf(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!re(e)}var Vf=(e,{slots:t})=>{let{columns:n,columnsStyles:r,depthMap:i,expandColumnKey:a,expandedRowKeys:o,estimatedRowHeight:s,hasFixedColumns:l,rowData:u,rowIndex:d,style:f,isScrolling:p,rowProps:m,rowClass:h,rowKey:g,rowEventHandlers:_,ns:v,onRowHovered:y,onRowExpanded:b}=e,x=xf(h,{columns:n,rowData:u,rowIndex:d},``),S=xf(m,{columns:n,rowData:u,rowIndex:d}),C=u[g],w=i[C]||0,T=!!a,E=d<0,D=[v.e(`row`),x,v.is(`expanded`,T&&o.includes(C)),v.is(`fixed`,!w&&E),v.is(`customized`,!!t.row),{[v.e(`row-depth-${w}`)]:T&&d>=0}],O=l?y:void 0,k={...S,columns:n,columnsStyles:r,class:D,depth:w,expandColumnKey:a,estimatedRowHeight:E?void 0:s,isScrolling:p,rowIndex:d,rowData:u,rowKey:C,rowEventHandlers:_,style:f};return W(zf,c(k,{onRowExpand:b,onMouseenter:e=>{O?.({hovered:!0,rowKey:C,event:e,rowData:u,rowIndex:d})},onMouseleave:e=>{O?.({hovered:!1,rowKey:C,event:e,rowData:u,rowIndex:d})},rowkey:C}),Bf(t)?t:{default:()=>[t]})},Hf=(e,{slots:t})=>{let{cellData:n,style:r}=e,i=n?.toString?.()||``,a=x(t,`default`,e,()=>[i]);return W(`div`,{class:e.class,title:i,style:r},[a])};Hf.displayName=`ElTableV2Cell`,Hf.inheritAttrs=!1;var Uf=e=>{let{expanded:t,expandable:n,onExpand:r,style:i,size:a,ariaLabel:o}=e;return W(`button`,c({onClick:n?()=>r(!t):void 0,ariaLabel:o,ariaExpanded:t,class:e.class},{type:`button`}),[W(Hn,{size:a,style:i},{default:()=>[W(pe,null,null)]})])};Uf.inheritAttrs=!1;var Wf=({columns:e,column:t,columnIndex:n,depth:r,expandIconProps:i,isScrolling:a,rowData:o,rowIndex:s,style:l,expandedRowKeys:u,ns:d,t:f,cellProps:p,expandColumnKey:h,indentSize:g,iconSize:_,rowKey:v},{slots:y})=>{let b=Sf(l);if(t.placeholderSign===Qd)return W(`div`,{class:d.em(`row-cell`,`placeholder`),style:b},null);let{cellRenderer:S,dataKey:C,dataGetter:w}=t,T=qe(w)?w({columns:e,column:t,columnIndex:n,rowData:o,rowIndex:s}):Wn(o,C??``),E=xf(p,{cellData:T,columns:e,column:t,columnIndex:n,rowIndex:s,rowData:o}),D={class:d.e(`cell-text`),columns:e,column:t,columnIndex:n,cellData:T,isScrolling:a,rowData:o,rowIndex:s},O=Cf(S),k=O?O(D):x(y,`default`,D,()=>[W(Hf,D,null)]),A=[d.e(`row-cell`),t.class,t.align===`center`&&d.is(`align-center`),t.align===`right`&&d.is(`align-right`)],j=s>=0&&h&&t.key===h,M=s>=0&&u.includes(o[v]),N,P=`margin-inline-start: ${r*g}px;`;return j&&(N=m(i)?W(Uf,c(i,{class:[d.e(`expand-icon`),d.is(`expanded`,M)],size:_,expanded:M,ariaLabel:f(M?`el.table.collapseRowLabel`:`el.table.expandRowLabel`),style:P,expandable:!0}),null):W(`div`,{style:[P,`width: ${_}px; height: ${_}px;`].join(` `)},null)),W(`div`,c({class:A,style:b},E,{role:`cell`}),[N,k])};Wf.inheritAttrs=!1;var Gf=R({class:String,columns:ef,columnsStyles:{type:h(Object),required:!0},headerIndex:Number,style:{type:h(Object)}}),Kf=Se({name:`ElTableV2HeaderRow`,props:Gf,setup(e,{slots:t}){return()=>{let{columns:n,columnsStyles:r,headerIndex:i,style:a}=e,o=n.map((e,a)=>t.cell({columns:n,column:e,columnIndex:a,headerIndex:i,style:r[e.key]}));return t.header&&(o=t.header({cells:o.map(e=>L(e)&&e.length===1?e[0]:e),columns:n,headerIndex:i})),W(`div`,{class:e.class,style:a,role:`row`},[o])}}});function qf(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!re(e)}var Jf=({columns:e,columnsStyles:t,headerIndex:n,style:r,headerClass:i,headerProps:a,ns:o},{slots:s})=>{let c={columns:e,headerIndex:n},l=[o.e(`header-row`),xf(i,c,``),o.is(`customized`,!!s.header)];return W(Kf,{...xf(a,c),columnsStyles:t,class:l,columns:e,headerIndex:n,style:r},qf(s)?s:{default:()=>[s]})},Yf=(e,{slots:t})=>x(t,`default`,e,()=>[W(`div`,{class:e.class,title:e.column?.title},[e.column?.title])]);Yf.displayName=`ElTableV2HeaderCell`,Yf.inheritAttrs=!1;var Xf=e=>{let{sortOrder:t}=e;return W(`button`,{type:`button`,"aria-label":e.ariaLabel,class:e.class},[W(Hn,{size:14},{default:()=>[W(t===`asc`?ge:ze,null,null)]})])},Zf=(e,{slots:t})=>{let{column:n,ns:r,t:i,style:a,onColumnSorted:o}=e,s=Sf(a);if(n.placeholderSign===Qd)return W(`div`,{class:r.em(`header-row-cell`,`placeholder`),style:s},null);let{headerCellRenderer:l,headerClass:u,sortable:d}=n,f={...e,class:r.e(`header-cell-text`)},p=Cf(l),m=p?p(f):x(t,`default`,f,()=>[W(Yf,f,null)]),{sortBy:h,sortState:g,headerCellProps:_}=e,v,y,b;if(g){let e=g[n.key];v=!!Zd[e],y=v?e:`asc`}else v=n.key===h.key,y=v?h.order:`asc`;b=y===`asc`?`ascending`:y===`desc`?`descending`:void 0;let S=[r.e(`header-cell`),xf(u,e,``),n.align===`center`&&r.is(`align-center`),n.align===`right`&&r.is(`align-right`),d&&r.is(`sortable`)];return W(`div`,c({...xf(_,e),onClick:n.sortable?o:void 0,ariaSort:d?b:void 0,class:S,style:s,"data-key":n.key},{role:`columnheader`}),[m,d&&W(Xf,{class:[r.e(`sort-icon`),v&&r.is(`sorting`)],sortOrder:y,ariaLabel:i(`el.table.sortLabel`,{column:n.title||``})},null)])},Qf=(e,{slots:t})=>W(`div`,{class:e.class,style:e.style},[t.default?.()]);Qf.displayName=`ElTableV2Footer`;var $f=(e,{slots:t})=>{let n=x(t,`default`,{},()=>[W(Si,null,null)]);return W(`div`,{class:e.class,style:e.style},[n])};$f.displayName=`ElTableV2Empty`;var ep=(e,{slots:t})=>W(`div`,{class:e.class,style:e.style},[t.default?.()]);ep.displayName=`ElTableV2Overlay`;function tp(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!re(e)}var np=Se({name:`ElTableV2`,props:pf,slots:Object,setup(e,{slots:t,expose:n}){let r=u(`table-v2`),{t:i}=on(),{columnsStyles:a,fixedColumnsOnLeft:o,fixedColumnsOnRight:s,mainColumns:l,mainTableHeight:d,fixedTableHeight:f,leftTableWidth:p,rightTableWidth:m,data:h,depthMap:g,expandedRowKeys:_,hasFixedColumns:v,mainTableRef:y,leftTableRef:b,rightTableRef:x,isDynamic:S,isResetting:C,isScrolling:w,bodyWidth:T,emptyStyle:E,rootStyle:D,footerHeight:O,showEmpty:k,scrollTo:A,scrollToLeft:j,scrollToTop:M,scrollToRow:N,getRowHeight:ee,onColumnSorted:F,onRowHeightChange:I,onRowHovered:te,onRowExpanded:ne,onRowsRendered:re,onScroll:L,onVerticalScroll:ie}=Tf(e);return n({scrollTo:A,scrollToLeft:j,scrollToTop:M,scrollToRow:N}),P(Ef,{ns:r,isResetting:C,isScrolling:w}),()=>{let{cache:n,cellProps:u,estimatedRowHeight:C,expandColumnKey:w,fixedData:A,headerHeight:j,headerClass:M,headerProps:N,headerCellProps:P,sortBy:ae,sortState:R,rowHeight:oe,rowClass:z,rowEventHandlers:se,rowKey:ce,rowProps:le,scrollbarAlwaysOn:ue,indentSize:de,iconSize:fe,useIsScrolling:B,vScrollbarSize:pe,width:me}=e,V=K(h),he={cache:n,class:r.e(`main`),columns:K(l),data:V,fixedData:A,estimatedRowHeight:C,bodyWidth:K(T),headerHeight:j,headerWidth:K(T),height:K(d),mainTableRef:y,rowKey:ce,rowHeight:oe,scrollbarAlwaysOn:ue,scrollbarStartGap:2,scrollbarEndGap:pe,useIsScrolling:B,width:me,getRowHeight:ee,onRowsRendered:re,onScroll:L},ge=K(p),_e=K(f),ve={cache:n,class:r.e(`left`),columns:K(o),data:V,fixedData:A,estimatedRowHeight:C,leftTableRef:b,rowHeight:oe,bodyWidth:ge,headerWidth:ge,headerHeight:j,height:_e,rowKey:ce,scrollbarAlwaysOn:ue,scrollbarStartGap:2,scrollbarEndGap:pe,useIsScrolling:B,width:ge,getRowHeight:ee,onScroll:ie},ye=K(m),be={cache:n,class:r.e(`right`),columns:K(s),data:V,fixedData:A,estimatedRowHeight:C,rightTableRef:x,rowHeight:oe,bodyWidth:ye,headerWidth:ye,headerHeight:j,height:_e,rowKey:ce,scrollbarAlwaysOn:ue,scrollbarStartGap:2,scrollbarEndGap:pe,width:ye,style:`${r.cssVarName(`table-scrollbar-size`)}: ${pe}px`,useIsScrolling:B,getRowHeight:ee,onScroll:ie},xe=K(a),Se={ns:r,depthMap:K(g),columnsStyles:xe,expandColumnKey:w,expandedRowKeys:K(_),estimatedRowHeight:C,hasFixedColumns:K(v),rowProps:le,rowClass:z,rowKey:ce,rowEventHandlers:se,onRowHovered:te,onRowExpanded:ne,onRowHeightChange:I},Ce={cellProps:u,expandColumnKey:w,indentSize:de,iconSize:fe,rowKey:ce,expandedRowKeys:K(_),ns:r,t:i},H={ns:r,headerClass:M,headerProps:N,columnsStyles:xe},we={ns:r,t:i,sortBy:ae,sortState:R,headerCellProps:P,onColumnSorted:F},Te={row:e=>W(Vf,c(e,Se),{row:t.row,cell:e=>{let n;return t.cell?W(Wf,c(e,Ce,{style:xe[e.column.key]}),tp(n=t.cell(e))?n:{default:()=>[n]}):W(Wf,c(e,Ce,{style:xe[e.column.key]}),null)}}),header:e=>W(Jf,c(e,H),{header:t.header,cell:e=>{let n;return t[`header-cell`]?W(Zf,c(e,we,{style:xe[e.column.key]}),tp(n=t[`header-cell`](e))?n:{default:()=>[n]}):W(Zf,c(e,we,{style:xe[e.column.key]}),null)}})},Ee=[e.class,r.b(),r.e(`root`),r.is(`dynamic`,K(S))],De={class:r.e(`footer`),style:K(O)};return W(`div`,{class:Ee,style:K(D)},[W(Nf,he,tp(Te)?Te:{default:()=>[Te]}),W(Ff,ve,tp(Te)?Te:{default:()=>[Te]}),W(Lf,be,tp(Te)?Te:{default:()=>[Te]}),t.footer&&W(Qf,De,{default:t.footer}),K(k)&&W($f,{class:r.e(`empty`),style:K(E)},{default:t.empty}),t.overlay&&W(ep,{class:r.e(`overlay`)},{default:t.overlay})])}}}),rp=R({disableWidth:Boolean,disableHeight:Boolean,onResize:{type:h(Function)}}),ip=e=>{let t=H(),n=H(0),r=H(0),a;return i(()=>{a=gt(t,([e])=>{let{width:t,height:i}=e.contentRect,{paddingLeft:a,paddingRight:o,paddingTop:s,paddingBottom:c}=getComputedStyle(e.target),l=Number.parseInt(a)||0,u=Number.parseInt(o)||0,d=Number.parseInt(s)||0,f=Number.parseInt(c)||0;n.value=t-l-u,r.value=i-d-f}).stop}),d(()=>{a?.()}),C([n,r],([t,n])=>{e.onResize?.({width:t,height:n})}),{sizer:t,width:n,height:r}},ap=Se({name:`ElAutoResizer`,props:rp,setup(e,{slots:t}){let n=u(`auto-resizer`),{height:r,width:i,sizer:a}=ip(e),o={width:`100%`,height:`100%`};return()=>W(`div`,{ref:a,class:n.b(),style:o},[t.default?.({height:r.value,width:i.value})])}}),op=fe(np),sp=fe(ap),cp=`09:00`,lp=`18:00`,up=`00:30`,dp=R({format:{type:String,default:`HH:mm`},modelValue:{type:h(String)},disabled:{type:Boolean,default:void 0},editable:{type:Boolean,default:!0},effect:{type:h(String),default:`light`},clearable:{type:Boolean,default:!0},size:Kn,placeholder:String,start:{type:String,default:cp},end:{type:String,default:lp},step:{type:String,default:up},minTime:{type:h(String)},maxTime:{type:h(String)},includeEndTime:Boolean,name:String,prefixIcon:{type:h([String,Object]),default:()=>g},clearIcon:{type:h([String,Object]),default:()=>O},popperClass:{type:String,default:``},popperStyle:{type:h([String,Object])},...vn}),fp=e=>{let t=(e||``).split(`:`);if(t.length>=2){let n=Number.parseInt(t[0],10),r=Number.parseInt(t[1],10);if(Number.isNaN(n)||Number.isNaN(r))return null;let i=e.toUpperCase();return i.includes(`AM`)&&n===12?n=0:i.includes(`PM`)&&n!==12&&(n+=12),{hours:n,minutes:r}}return null},pp=e=>!!e&&e.hours>=0&&e.minutes>=0&&!Number.isNaN(e.hours)&&!Number.isNaN(e.minutes),mp=(e,t)=>{let n=fp(e);if(!n)return-1;let r=fp(t);if(!r)return-1;let i=n.minutes+n.hours*60,a=r.minutes+r.hours*60;return i===a?0:i>a?1:-1},hp=e=>`${e}`.padStart(2,`0`),gp=e=>`${hp(e.hours)}:${hp(e.minutes)}`,_p=(e,t)=>{let n=fp(e);if(!n)return``;let r=fp(t);if(!r)return``;let i={hours:n.hours,minutes:n.minutes};return i.minutes+=r.minutes,i.hours+=r.hours,i.hours+=Math.floor(i.minutes/60),i.minutes%=60,gp(i)},vp=y(Qt(),1),yp=fe(Se({name:`ElTimeSelect`,__name:`time-select`,props:dp,emits:[Mt,`blur`,`focus`,`clear`,Kt],setup(e,{expose:t}){os.default.extend(vp.default);let{Option:n}=nr,r=e,i=u(`input`),a=H(),o=Fn(),{lang:s}=on(),c=(e,t,n,r=!0)=>{let i=fp(e);return!pp(i)||!r&&i.hours===0&&i.minutes===0?(On(`ElTimeSelect`,`invalid ${t}, fallback to default ${t} (${n}).`),n):gp(i)},l=B(()=>r.modelValue),d=B(()=>c(r.start,`start`,cp)),f=B(()=>c(r.end,`end`,lp)),p=B(()=>{let e=fp(r.minTime||``);return e?gp(e):null}),m=B(()=>{let e=fp(r.maxTime||``);return e?gp(e):null}),h=B(()=>c(r.step,`step`,up,!1)),g=B(()=>{let e=[],t=(t,n)=>{e.push({value:t,rawValue:n,disabled:mp(n,p.value||`-1:-1`)<=0||mp(n,m.value||`100:100`)>=0})},n=d.value;for(;mp(n,f.value)<=0;)t((0,os.default)(n,`HH:mm`).locale(s.value).format(r.format),n),n=_p(n,h.value);return r.includeEndTime&&e[e.length-1]?.rawValue!==f.value&&t((0,os.default)(f.value,`HH:mm`).locale(s.value).format(r.format),f.value),e});return t({blur:()=>{a.value?.blur?.()},focus:()=>{a.value?.focus?.()}}),(t,r)=>(k(),q(K(nr),{ref_key:`select`,ref:a,name:e.name,"model-value":l.value,disabled:K(o),clearable:e.clearable,"clear-icon":e.clearIcon,size:e.size,effect:e.effect,placeholder:e.placeholder,"default-first-option":``,filterable:e.editable,"empty-values":e.emptyValues,"value-on-clear":e.valueOnClear,"popper-class":e.popperClass,"popper-style":e.popperStyle,"onUpdate:modelValue":r[0]||=e=>t.$emit(K(`update:modelValue`),e),onChange:r[1]||=e=>t.$emit(K(`change`),e),onBlur:r[2]||=e=>t.$emit(`blur`,e),onFocus:r[3]||=e=>t.$emit(`focus`,e),onClear:r[4]||=()=>t.$emit(`clear`)},{prefix:S(()=>[e.prefixIcon?(k(),q(K(Hn),{key:0,class:T(K(i).e(`prefix-icon`))},{default:S(()=>[(k(),q(et(e.prefixIcon)))]),_:1},8,[`class`])):V(`v-if`,!0)]),default:S(()=>[(k(!0),U(ve,null,_(g.value,e=>(k(),q(K(n),{key:e.value,label:e.value,value:e.value,disabled:e.disabled},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`name`,`model-value`,`disabled`,`clearable`,`clear-icon`,`size`,`effect`,`placeholder`,`filterable`,`empty-values`,`value-on-clear`,`popper-class`,`popper-style`]))}})),bp=`timeline`,xp=R({mode:{type:String,values:[`start`,`alternate`,`alternate-reverse`,`end`],default:`start`},reverse:Boolean}),Sp=Se({name:`ElTimeline`,props:xp,setup(e,{slots:t}){let n=u(`timeline`);P(bp,{props:e,slots:t});let r=B(()=>[n.b(),n.is(e.mode)]);return()=>{let n=Rr(t.default?.()??[]);return Y(`ul`,{class:r.value},e.reverse?n.reverse():n)}}}),Cp=R({timestamp:{type:String,default:``},hideTimestamp:Boolean,center:Boolean,placement:{type:String,values:[`top`,`bottom`],default:`bottom`},type:{type:String,values:[`primary`,`success`,`warning`,`danger`,`info`],default:``},color:{type:String,default:``},size:{type:String,values:[`normal`,`large`],default:`normal`},icon:{type:En},hollow:Boolean}),wp=Se({name:`ElTimelineItem`,__name:`timeline-item`,props:Cp,setup(e){let t=e,{props:n}=Xe(bp),r=u(`timeline-item`),i=B(()=>[r.e(`node`),r.em(`node`,t.size||``),r.em(`node`,t.type||``),r.is(`hollow`,t.hollow)]),a=B(()=>[r.b(),{[r.e(`center`)]:t.center},r.is(n.mode)]);return(t,n)=>(k(),U(`li`,{class:T(a.value)},[G(`div`,{class:T(K(r).e(`tail`))},null,2),t.$slots.dot?V(`v-if`,!0):(k(),U(`div`,{key:0,class:T(i.value),style:tt({backgroundColor:e.color})},[e.icon?(k(),q(K(Hn),{key:0,class:T(K(r).e(`icon`))},{default:S(()=>[(k(),q(et(e.icon)))]),_:1},8,[`class`])):V(`v-if`,!0)],6)),t.$slots.dot?(k(),U(`div`,{key:1,class:T(K(r).e(`dot`))},[x(t.$slots,`dot`)],2)):V(`v-if`,!0),G(`div`,{class:T(K(r).e(`wrapper`))},[!e.hideTimestamp&&e.placement===`top`?(k(),U(`div`,{key:0,class:T([K(r).e(`timestamp`),K(r).is(`top`)])},s(e.timestamp),3)):V(`v-if`,!0),G(`div`,{class:T(K(r).e(`content`))},[x(t.$slots,`default`)],2),!e.hideTimestamp&&e.placement===`bottom`?(k(),U(`div`,{key:1,class:T([K(r).e(`timestamp`),K(r).is(`bottom`)])},s(e.timestamp),3)):V(`v-if`,!0)],2)],2))}}),Tp=fe(Sp,{TimelineItem:wp}),Ep=me(wp),Dp=`left-check-change`,Op=`right-check-change`,kp=R({data:{type:h(Array),default:()=>[]},titles:{type:h(Array),default:()=>[]},buttonTexts:{type:h(Array),default:()=>[]},filterPlaceholder:String,filterMethod:{type:h(Function)},leftDefaultChecked:{type:h(Array),default:()=>[]},rightDefaultChecked:{type:h(Array),default:()=>[]},renderContent:{type:h(Function)},modelValue:{type:h(Array),default:()=>[]},format:{type:h(Object),default:()=>({})},filterable:Boolean,props:{type:h(Object),default:()=>Lt({label:`label`,key:`key`,disabled:`disabled`})},targetOrder:{type:String,values:[`original`,`push`,`unshift`],default:`original`},validateEvent:{type:Boolean,default:!0},virtualScroll:Boolean,itemSize:{type:Number,default:30}}),Ap=(e,t)=>[e,t].every(L)||L(e)&&v(t),jp={[Mt]:(e,t,n)=>[e,n].every(L)&&[`left`,`right`].includes(t),[Kt]:e=>L(e),[Dp]:Ap,[Op]:Ap},Mp=e=>{let t={label:`label`,key:`key`,disabled:`disabled`};return B(()=>({...t,...e.props}))},Np=(e,t)=>({onSourceCheckedChange:(n,r)=>{e.leftChecked=n,r&&t(Dp,n,r)},onTargetCheckedChange:(n,r)=>{e.rightChecked=n,r&&t(Op,n,r)}}),Pp=e=>{let t=Mp(e),n=B(()=>e.data.reduce((e,n)=>(e[n[t.value.key]]=n,e),{}));return{sourceData:B(()=>e.data.filter(n=>!e.modelValue.includes(n[t.value.key]))),targetData:B(()=>e.targetOrder===`original`?e.data.filter(n=>e.modelValue.includes(n[t.value.key])):e.modelValue.reduce((e,t)=>{let r=n.value[t];return r&&e.push(r),e},[]))}},Fp=(e,t,n)=>{let r=Mp(e),i=(e,t,r)=>{n(Kt,e),n(Mt,e,t,r)};return{addToLeft:()=>{let n=e.modelValue.slice();t.rightChecked.forEach(e=>{let t=n.indexOf(e);t>-1&&n.splice(t,1)}),i(n,`left`,t.rightChecked)},addToRight:()=>{let n=e.modelValue.slice(),a=e.data.filter(n=>{let i=n[r.value.key];return t.leftChecked.includes(i)&&!e.modelValue.includes(i)}).map(e=>e[r.value.key]);n=e.targetOrder===`unshift`?a.concat(n):n.concat(a),e.targetOrder===`original`&&(n=e.data.filter(e=>n.includes(e[r.value.key])).map(e=>e[r.value.key])),i(n,`right`,t.leftChecked)}}},Ip=`checked-change`,Lp=R({data:kp.data,optionRender:{type:h(Function)},placeholder:String,title:String,filterable:Boolean,format:kp.format,filterMethod:kp.filterMethod,defaultChecked:kp.leftDefaultChecked,props:kp.props,virtualScroll:kp.virtualScroll,itemSize:kp.itemSize}),Rp={[Ip]:Ap},zp=(e,t,n)=>{let r=Mp(e),i=B(()=>e.data.filter(n=>qe(e.filterMethod)?e.filterMethod(t.query,n):String(n[r.value.label]||n[r.value.key]).toLowerCase().includes(t.query.toLowerCase()))),a=B(()=>i.value.filter(e=>!e[r.value.disabled])),o=B(()=>{let n=t.checked.length,r=e.data.length,{noChecked:i,hasChecked:a}=e.format;return i&&a?n>0?a.replace(/\${checked}/g,n.toString()).replace(/\${total}/g,r.toString()):i.replace(/\${total}/g,r.toString()):`${n}/${r}`}),s=B(()=>{let e=t.checked.length;return e>0&&e{let e=a.value.map(e=>e[r.value.key]);t.allChecked=e.length>0&&e.every(e=>t.checked.includes(e))},l=e=>{t.checked=e?a.value.map(e=>e[r.value.key]):[]},u=H(),{height:d}=Dt(B(()=>u.value?.$el)),f=H();return C(()=>t.checked,(e,r)=>{c(),t.checkChangeByUser?n(Ip,e,e.concat(r).filter(t=>!e.includes(t)||!r.includes(t))):(n(Ip,e),t.checkChangeByUser=!0)}),C(a,()=>{c()}),C(()=>e.data,()=>{let e=[],n=i.value.map(e=>e[r.value.key]);t.checked.forEach(t=>{n.includes(t)&&e.push(t)}),t.checkChangeByUser=!1,t.checked=e}),C(()=>e.defaultChecked,(e,n)=>{if(n&&e.length===n.length&&e.every(e=>n.includes(e)))return;let i=[],o=a.value.map(e=>e[r.value.key]);e.forEach(e=>{o.includes(e)&&i.push(e)}),t.checkChangeByUser=!1,t.checked=i},{immediate:!0}),C(()=>t.query,()=>{e.virtualScroll&&f.value?.scrollToItem(0)},{flush:`post`}),{filteredData:i,checkableData:a,checkedSummary:o,virtualListRef:f,isIndeterminate:s,checkboxGroupRef:u,virtualListHeight:d,updateAllChecked:c,handleAllCheckedChange:l}},Bp=Se({name:`ElTransferPanel`,__name:`transfer-panel`,props:Lp,emits:Rp,setup(e,{expose:n,emit:r}){let i=e,a=r,o=ce(),c=({option:e})=>e,{t:l}=on(),d=u(`transfer`),f=Ne({checked:[],allChecked:!1,query:``,checkChangeByUser:!0}),p=Mp(i),{filteredData:m,checkedSummary:h,virtualListRef:g,isIndeterminate:v,checkboxGroupRef:y,virtualListHeight:b,handleAllCheckedChange:C}=zp(i,f,a),w=B(()=>!ke(f.query)&&ke(m.value)),E=B(()=>!ke(o.default()[0].children)),{checked:D,allChecked:O,query:A}=Ve(f);return n({query:A}),(n,r)=>(k(),U(`div`,{class:T(K(d).b(`panel`))},[G(`p`,{class:T(K(d).be(`panel`,`header`))},[W(K(oi),{modelValue:K(O),"onUpdate:modelValue":r[0]||=e=>t(O)?O.value=e:null,indeterminate:K(v),"validate-event":!1,onChange:K(C)},{default:S(()=>[G(`span`,{class:T(K(d).be(`panel`,`header-title`))},s(e.title),3),G(`span`,{class:T(K(d).be(`panel`,`header-count`))},s(K(h)),3)]),_:1},8,[`modelValue`,`indeterminate`,`onChange`])],2),G(`div`,{class:T([K(d).be(`panel`,`body`),K(d).is(`with-footer`,E.value)])},[e.filterable?(k(),q(K(qt),{key:0,modelValue:K(A),"onUpdate:modelValue":r[1]||=e=>t(A)?A.value=e:null,class:T(K(d).be(`panel`,`filter`)),size:`default`,placeholder:e.placeholder,"prefix-icon":K(Le),clearable:``,"validate-event":!1},null,8,[`modelValue`,`class`,`placeholder`,`prefix-icon`])):V(`v-if`,!0),ue(W(K(ai),{ref_key:`checkboxGroupRef`,ref:y,modelValue:K(D),"onUpdate:modelValue":r[2]||=e=>t(D)?D.value=e:null,"validate-event":!1,class:T([K(d).is(`filterable`,e.filterable),K(d).be(`panel`,`list`)])},{default:S(()=>[e.virtualScroll?(k(),q(K(fc),{key:1,ref_key:`virtualListRef`,ref:g,data:K(m),total:K(m).length,"item-size":e.itemSize,height:K(b)},{default:S(({data:t,index:n,style:r})=>[(k(),U(`div`,{key:t[n][K(p).key],style:tt(r)},[W(K(oi),{class:T(K(d).be(`panel`,`item`)),value:t[n][K(p).key],disabled:t[n][K(p).disabled],"validate-event":!1},{default:S(()=>[W(c,{option:e.optionRender?.(t[n])},null,8,[`option`])]),_:2},1032,[`class`,`value`,`disabled`])],4))]),_:1},8,[`data`,`total`,`item-size`,`height`])):(k(!0),U(ve,{key:0},_(K(m),t=>(k(),q(K(oi),{key:t[K(p).key],class:T(K(d).be(`panel`,`item`)),value:t[K(p).key],disabled:t[K(p).disabled],"validate-event":!1},{default:S(()=>[W(c,{option:e.optionRender?.(t)},null,8,[`option`])]),_:2},1032,[`class`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`class`]),[[nt,!w.value&&!K(ke)(e.data)]]),ue(G(`div`,{class:T(K(d).be(`panel`,`empty`))},[x(n.$slots,`empty`,{},()=>[Pe(s(w.value?K(l)(`el.transfer.noMatch`):K(l)(`el.transfer.noData`)),1)])],2),[[nt,w.value||K(ke)(e.data)]])],2),E.value?(k(),U(`p`,{key:0,class:T(K(d).be(`panel`,`footer`))},[x(n.$slots,`default`)],2)):V(`v-if`,!0)],2))}}),Vp={key:0},Hp={key:0},Up=fe(Se({name:`ElTransfer`,__name:`transfer`,props:kp,emits:jp,setup(e,{expose:t,emit:r}){let i=e,a=r,o=ce(),{t:c}=on(),l=u(`transfer`),{formItem:d}=Dn(),f=Ne({leftChecked:[],rightChecked:[]}),p=Mp(i),{sourceData:m,targetData:h}=Pp(i),{onSourceCheckedChange:g,onTargetCheckedChange:_}=Np(f,a),{addToLeft:v,addToRight:y}=Fp(i,f,a),b=H(),w=H(),E=e=>{switch(e){case`left`:b.value.query=``;break;case`right`:w.value.query=``}},D=B(()=>i.buttonTexts.length===2),O=B(()=>i.titles[0]||c(`el.transfer.titles.0`)),j=B(()=>i.titles[1]||c(`el.transfer.titles.1`)),M=B(()=>i.filterPlaceholder||c(`el.transfer.filterPlaceholder`));C(()=>i.modelValue,()=>{i.validateEvent&&d?.validate?.(`change`).catch(Me)});let N=B(()=>e=>{if(i.renderContent)return i.renderContent(Y,e);let t=(o.default?.({option:e})||[]).filter(e=>e.type!==n);return t.length?t:Y(`span`,e[p.value.label]||e[p.value.key])});return t({clearQuery:E,leftPanel:b,rightPanel:w}),(t,n)=>(k(),U(`div`,{class:T(K(l).b())},[W(Bp,{ref_key:`leftPanel`,ref:b,data:K(m),"option-render":N.value,placeholder:M.value,title:O.value,filterable:e.filterable,format:e.format,"filter-method":e.filterMethod,"default-checked":e.leftDefaultChecked,props:i.props,"virtual-scroll":e.virtualScroll,"item-size":e.itemSize,onCheckedChange:K(g)},{empty:S(()=>[x(t.$slots,`left-empty`)]),default:S(()=>[x(t.$slots,`left-footer`)]),_:3},8,[`data`,`option-render`,`placeholder`,`title`,`filterable`,`format`,`filter-method`,`default-checked`,`props`,`virtual-scroll`,`item-size`,`onCheckedChange`]),G(`div`,{class:T(K(l).e(`buttons`))},[W(K(Kr),{type:`primary`,class:T([K(l).e(`button`),K(l).is(`with-texts`,D.value)]),disabled:K(ke)(f.rightChecked),onClick:K(v)},{default:S(()=>[W(K(Hn),null,{default:S(()=>[W(K(Ze))]),_:1}),K(A)(e.buttonTexts[0])?V(`v-if`,!0):(k(),U(`span`,Vp,s(e.buttonTexts[0]),1))]),_:1},8,[`class`,`disabled`,`onClick`]),W(K(Kr),{type:`primary`,class:T([K(l).e(`button`),K(l).is(`with-texts`,D.value)]),disabled:K(ke)(f.leftChecked),onClick:K(y)},{default:S(()=>[K(A)(e.buttonTexts[1])?V(`v-if`,!0):(k(),U(`span`,Hp,s(e.buttonTexts[1]),1)),W(K(Hn),null,{default:S(()=>[W(K(pe))]),_:1})]),_:1},8,[`class`,`disabled`,`onClick`])],2),W(Bp,{ref_key:`rightPanel`,ref:w,data:K(h),"option-render":N.value,placeholder:M.value,filterable:e.filterable,format:e.format,"filter-method":e.filterMethod,title:j.value,"default-checked":e.rightDefaultChecked,props:i.props,"virtual-scroll":e.virtualScroll,"item-size":e.itemSize,onCheckedChange:K(_)},{empty:S(()=>[x(t.$slots,`right-empty`)]),default:S(()=>[x(t.$slots,`right-footer`)]),_:3},8,[`data`,`option-render`,`placeholder`,`filterable`,`format`,`filter-method`,`title`,`default-checked`,`props`,`virtual-scroll`,`item-size`,`onCheckedChange`])],2))}})),Wp=(e,{attrs:t,emit:n},{select:r,tree:a,key:o})=>{let s=u(`tree-select`);C(()=>e.data,()=>{e.filterable&&J(()=>{a.value?.filter(r.value?.states.inputValue)})},{flush:`post`});let c=e=>{let t=e.at(-1);if(t.expanded&&t.childNodes.at(-1))c([t.childNodes.at(-1)]);else{(a.value.el$?.querySelector(`[data-key="${e.at(-1).key}"]`))?.focus({preventScroll:!0});return}};return i(()=>{_t(()=>r.value?.$el,`keydown`,async e=>{let t=Xt(e),{dropdownMenuVisible:n}=r.value;[Pt.down,Pt.up].includes(t)&&n&&(await J(),setTimeout(()=>{if(Pt.up===t){let e=a.value.store.root.childNodes;c(e);return}r.value.optionsArray[r.value.states.hoveringIndex].$el?.parentNode?.parentNode?.focus({preventScroll:!0})}))},{capture:!0})}),{...kt(Ve(e),Object.keys(nr.props)),...t,class:B(()=>t.class),style:B(()=>t.style),"onUpdate:modelValue":e=>n(Kt,e),valueKey:o,popperClass:B(()=>{let t=[s.e(`popper`)];return e.popperClass&&t.push(e.popperClass),t.join(` `)}),filterMethod:(t=``)=>{e.filterMethod?e.filterMethod(t):e.remoteMethod?e.remoteMethod(t):a.value?.filter(t)}}},Gp=Se({extends:ir,setup(e,t){let n=ir.setup(e,t);delete n.selectOptionClick;let r=xe().proxy;return J(()=>{n.select.states.cachedOptions.get(r.value)||n.select.onOptionCreate(r)}),C(()=>t.attrs.visible,e=>{J(()=>{n.states.visible=e})},{immediate:!0}),n},methods:{selectOptionClick(){this.$el.parentElement.click()}}});function Kp(e){return e||e===0}function qp(e){return L(e)&&e.length}function Jp(e){return L(e)?e:Kp(e)?[e]:[]}function Yp(e,t,n,r,i){for(let a=0;a{C([()=>e.modelValue,a],()=>{e.showCheckbox&&J(()=>{let t=a.value;t&&!Un(t.getCheckedKeys(),Jp(e.modelValue))&&t.setCheckedKeys(Jp(e.modelValue))})},{immediate:!0,deep:!0});let s=B(()=>({value:o.value,label:`label`,children:`children`,disabled:`disabled`,isLeaf:`isLeaf`,...e.props})),c=(e,t)=>{let n=s.value[e];return qe(n)?n(t,a.value?.getNode(c(`value`,t))):t[n]},l=Jp(e.modelValue).map(t=>Yp(e.data||[],e=>c(`value`,e)===t,e=>c(`children`,e),(e,t,n,r)=>r&&c(`value`,r))).filter(e=>Kp(e)),u=B(()=>{if(!e.renderAfterExpand&&!e.lazy)return[];let t=[];return Xp(e.data.concat(e.cacheData),e=>{let n=c(`value`,e);t.push({value:n,currentLabel:c(`label`,e),isDisabled:c(`disabled`,e)})},e=>c(`children`,e)),t}),d=()=>a.value?.getCheckedKeys().filter(e=>{let t=a.value?.getNode(e);return!v(t)&&ke(t.childNodes)}),f=t=>{Un(e.modelValue,t)||r(Mt,t)};function p(e){r(Kt,e),f(e)}return{...kt(Ve(e),Object.keys(Mi.props)),...t,nodeKey:o,expandOnClickNode:B(()=>!e.checkStrictly&&e.expandOnClickNode),defaultExpandedKeys:B(()=>e.defaultExpandedKeys?e.defaultExpandedKeys.concat(l):l),renderContent:(t,{node:r,data:i,store:a})=>t(Gp,{value:c(`value`,i),label:c(`label`,i),disabled:c(`disabled`,i),visible:r.visible},e.renderContent?()=>e.renderContent(t,{node:r,data:i,store:a}):n.default?()=>n.default({node:r,data:i,store:a}):void 0),filterNodeMethod:(t,n,r)=>e.filterNodeMethod?e.filterNodeMethod(t,n,r):!t||new RegExp(Sr(t),`i`).test(c(`label`,n)||``),onNodeClick:(n,r,a)=>{if(t.onNodeClick?.(n,r,a),!(e.showCheckbox&&e.checkOnClickNode))if(!e.showCheckbox&&(e.checkStrictly||r.isLeaf)){if(!c(`disabled`,n)){let e=i.value?.states.options.get(c(`value`,n));i.value?.handleOptionSelect(e)}}else e.expandOnClickNode&&a.proxy.handleExpandIconClick()},onCheck:(n,r)=>{if(!e.showCheckbox)return;let o=c(`value`,n),s={};Xp([a.value.store.root],e=>s[e.key]=e,e=>e.childNodes);let l=r.checkedKeys,u=e.multiple?Jp(e.modelValue).filter(e=>!(e in s)&&!l.includes(e)):[],f=u.concat(l);if(e.checkStrictly)p(e.multiple?f:f.includes(o)?o:void 0);else if(e.multiple){let e=d();p(u.concat(e))}else{let t=Yp([n],e=>!qp(c(`children`,e))&&!c(`disabled`,e),e=>c(`children`,e)),r=t?c(`value`,t):void 0,i=Kp(e.modelValue)&&!!Yp([n],t=>c(`value`,t)===e.modelValue,e=>c(`children`,e));p(r===e.modelValue||i?void 0:r)}J(()=>{let r=Jp(e.modelValue);a.value.setCheckedKeys(r),t.onCheck?.(n,{checkedKeys:a.value.getCheckedKeys(),checkedNodes:a.value.getCheckedNodes(),halfCheckedKeys:a.value.getHalfCheckedKeys(),halfCheckedNodes:a.value.getHalfCheckedNodes()})}),i.value?.focus()},onNodeExpand:(n,r,i)=>{t.onNodeExpand?.(n,r,i),J(()=>{if(!e.checkStrictly&&e.lazy&&e.multiple&&r.checked){let t={},n=a.value.getCheckedKeys();Xp([a.value.store.root],e=>t[e.key]=e,e=>e.childNodes);let r=Jp(e.modelValue).filter(e=>!(e in t)&&!n.includes(e)),i=d();p(r.concat(i))}})},cacheOptions:u}},Qp=Se({props:{data:{type:Array,default:()=>[]}},setup(e){let t=Xe(rr);return C(()=>e.data,()=>{e.data.forEach(e=>{t.states.cachedOptions.has(e.value)||t.states.cachedOptions.set(e.value,e)});let n=t.selectRef?.querySelectorAll(`input`)||[];cn&&!Array.from(n).includes(document.activeElement)&&t.setSelected()},{flush:`post`,immediate:!0}),()=>void 0}}),$p=Se({name:`ElTreeSelect`,inheritAttrs:!1,props:{...Qn,...Ai,cacheData:{type:Array,default:()=>[]}},setup(e,t){let{slots:n,expose:r,emit:a,attrs:o}=t,s={...o,onChange:void 0},c=H(),l=H(),u=B(()=>e.nodeKey||e.valueKey||`value`),d=Wp(e,{attrs:o,emit:a},{select:c,tree:l,key:u}),{cacheOptions:f,...p}=Zp(e,{attrs:s,slots:n,emit:a},{select:c,tree:l,key:u}),m=Ne({});return r(m),i(()=>{Object.assign(m,{...kt(l.value,[`filter`,`updateKeyChildren`,`getCheckedNodes`,`setCheckedNodes`,`getCheckedKeys`,`setCheckedKeys`,`setChecked`,`getHalfCheckedNodes`,`getHalfCheckedKeys`,`getCurrentKey`,`getCurrentNode`,`setCurrentKey`,`setCurrentNode`,`getNode`,`remove`,`append`,`insertBefore`,`insertAfter`]),...kt(c.value,[`focus`,`blur`,`selectedLabel`]),treeRef:l.value,selectRef:c.value})}),()=>Y(nr,Ne({...d,ref:e=>c.value=e}),{...n,default:()=>[Y(Qp,{data:f.value}),Y(Mi,Ne({...p,ref:e=>l.value=e}))]})}}),em=fe($p),tm=Symbol(),nm={key:-1,level:-1,data:{}},rm={type:Number,default:26},im=R({data:{type:h(Array),default:()=>Lt([])},emptyText:{type:String},height:{type:Number,default:200},props:{type:h(Object),default:()=>Lt({children:`children`,label:`label`,disabled:`disabled`,value:`id`,class:``})},highlightCurrent:Boolean,showCheckbox:Boolean,defaultCheckedKeys:{type:h(Array),default:()=>Lt([])},checkStrictly:Boolean,defaultExpandedKeys:{type:h(Array),default:()=>Lt([])},indent:{type:Number,default:16},itemSize:rm,icon:{type:En},expandOnClickNode:{type:Boolean,default:!0},checkOnClickNode:Boolean,checkOnClickLeaf:{type:Boolean,default:!0},currentNodeKey:{type:h([String,Number])},accordion:Boolean,filterMethod:{type:h(Function)},perfMode:{type:Boolean,default:!0},scrollbarAlwaysOn:Boolean}),am=R({node:{type:h(Object),default:()=>Lt(nm)},expanded:Boolean,checked:Boolean,indeterminate:Boolean,showCheckbox:Boolean,disabled:Boolean,current:Boolean,hiddenExpandIcon:Boolean,itemSize:rm}),om=R({node:{type:h(Object),required:!0}}),sm=`node-click`,cm=`node-drop`,lm=`node-expand`,um=`node-collapse`,dm=`current-change`,fm=`check`,pm=`check-change`,mm=`node-contextmenu`,hm={[sm]:(e,t,n)=>e&&t&&n,[cm]:(e,t,n)=>e&&t&&n,[lm]:(e,t)=>e&&t,[um]:(e,t)=>e&&t,[dm]:(e,t)=>e&&t,[fm]:(e,t)=>e&&t,[pm]:(e,t)=>e&&f(t),[mm]:(e,t,n)=>e&&t&&n},gm={click:(e,t)=>!!(e&&t),drop:(e,t)=>!!(e&&t),toggle:e=>!!e,check:(e,t)=>e&&f(t)};function _m(e,t){let n=H(new Set),r=H(new Set),{emit:i}=xe();C([()=>t.value,()=>e.defaultCheckedKeys],()=>J(()=>{v(e.defaultCheckedKeys)}),{immediate:!0});let a=(i=!1)=>{if(!t.value||!e.showCheckbox||e.checkStrictly&&!i)return;let{levelTreeNodeMap:a,maxLevel:o}=t.value,s=n.value,c=new Set;for(let e=o;e>=1;--e){let t=a.get(e);t&&t.forEach(e=>{let t=e.children,n=!e.isLeaf||e.disabled||s.has(e.key);if(t){let r=!0,i=!1;for(let e of t){let t=e.key;if(e.isEffectivelyChecked||(n=!1),s.has(t))i=!0;else if(c.has(t)){r=!1,i=!0;break}else r=!1}r?s.add(e.key):i?(c.add(e.key),s.delete(e.key)):(s.delete(e.key),c.delete(e.key))}e.isEffectivelyChecked=n})}r.value=c},o=e=>n.value.has(e.key),s=e=>r.value.has(e.key),c=(t,r,i=!0,o=!0,s=!1)=>{let c=n.value,u=t.children;(!e.checkStrictly||s)&&i&&u?.length&&(r=u.some(e=>!e.isEffectivelyChecked));let d=(t,n)=>{c[n?`add`:`delete`](t.key);let r=t.children;(!e.checkStrictly||s)&&r&&r.forEach(e=>{(!e.disabled||e.children)&&d(e,n)})};d(t,r),o&&a(),i&&l(t,r)},l=(e,t)=>{let{checkedNodes:n,checkedKeys:r}=m(),{halfCheckedNodes:a,halfCheckedKeys:o}=h();i(fm,e.data,{checkedKeys:r,checkedNodes:n,halfCheckedKeys:o,halfCheckedNodes:a}),i(pm,e.data,t)};function u(e=!1){return m(e).checkedKeys}function d(e=!1){return m(e).checkedNodes}function f(){return h().halfCheckedKeys}function p(){return h().halfCheckedNodes}function m(r=!1){let i=[],a=[];if(t?.value&&e.showCheckbox){let{treeNodeMap:e}=t.value;n.value.forEach(t=>{let n=e.get(t);n&&(!r||r&&n.isLeaf)&&(a.push(t),i.push(n.data))})}return{checkedKeys:a,checkedNodes:i}}function h(){let n=[],i=[];if(t?.value&&e.showCheckbox){let{treeNodeMap:e}=t.value;r.value.forEach(t=>{let r=e.get(t);r&&(i.push(t),n.push(r.data))})}return{halfCheckedNodes:n,halfCheckedKeys:i}}function g(e){n.value.clear(),r.value.clear(),J(()=>{v(e)})}function _(n,r,i){if(t?.value&&e.showCheckbox){let e=t.value.treeNodeMap.get(n);e&&c(e,r,!1,void 0,i)}}function v(n){if(t?.value){let{treeNodeMap:r}=t.value;if(e.showCheckbox&&r&&n?.length>0){for(let e of n){let t=r.get(e);t&&!o(t)&&c(t,!0,!1,!1)}a()}}}return{updateCheckedKeys:a,toggleCheckbox:c,isChecked:o,isIndeterminate:s,getCheckedKeys:u,getCheckedNodes:d,getHalfCheckedKeys:f,getHalfCheckedNodes:p,setChecked:_,setCheckedKeys:g}}function vm(e,t){let n=H(new Set([])),r=H(new Set([])),i=B(()=>qe(e.filterMethod));function a(a){if(!i.value)return;let o=new Set,s=r.value,c=n.value,l=[],u=t.value?.treeNodes||[],d=e.filterMethod;c.clear();function f(e){e.forEach(e=>{l.push(e),d?.(a,e.data,e)?l.forEach(e=>{o.add(e.key),e.expanded=!0}):(e.expanded=!1,e.isLeaf&&c.add(e.key));let t=e.children;if(t&&f(t),!e.isLeaf){if(!o.has(e.key))c.add(e.key);else if(t){let n=!0;for(let e of t)if(!c.has(e.key)){n=!1;break}n?s.add(e.key):s.delete(e.key)}}l.pop()})}return f(u),o}function o(e){return r.value.has(e.key)}return{hiddenExpandIconKeySet:r,hiddenNodeKeySet:n,doFilter:a,isForceHiddenExpandIcon:o}}function ym(e,t){let n=H(new Set),r=H(),i=Re(),a=H(),{isIndeterminate:o,isChecked:s,toggleCheckbox:c,getCheckedKeys:l,getCheckedNodes:u,getHalfCheckedKeys:d,getHalfCheckedNodes:f,setChecked:p,setCheckedKeys:h}=_m(e,i),{doFilter:g,hiddenNodeKeySet:_,isForceHiddenExpandIcon:v}=vm(e,i),y=B(()=>e.props?.value||`id`),b=B(()=>e.props?.children||`children`),x=B(()=>e.props?.disabled||`disabled`),S=B(()=>e.props?.label||`label`),w=B(()=>{let e=n.value,t=_.value,r=[],a=i.value?.treeNodes||[],o=[];for(let e=a.length-1;e>=0;--e)o.push(a[e]);for(;o.length;){let n=o.pop();if(!t.has(n.key)&&(r.push(n),n.children&&e.has(n.key)))for(let e=n.children.length-1;e>=0;--e)o.push(n.children[e])}return r}),T=B(()=>w.value.length>0);function E(e){let t=new Map,r=new Map,i=1;function a(e,o=1,s=void 0){let c=[];for(let i of e){let e=k(i),l={level:o,key:e,data:i};l.label=j(i),l.parent=s;let u=O(i);l.disabled=A(i),l.isLeaf=!u||u.length===0,l.expanded=n.value.has(e),u&&u.length&&(l.children=a(u,o+1,l)),c.push(l),t.set(e,l),r.has(o)||r.set(o,[]),r.get(o)?.push(l)}return o>i&&(i=o),c}let o=a(e);return{treeNodeMap:t,levelTreeNodeMap:r,maxLevel:i,treeNodes:o}}function D(e){let t=g(e);t&&(n.value=t)}function O(e){return e[b.value]}function k(e){return e?e[y.value]:``}function A(e){return e[x.value]}function j(e){return e[S.value]}function M(e){n.value.has(e.key)?ne(e):te(e)}function N(e){let t=new Set,r=i.value.treeNodeMap;n.value.forEach(e=>{let t=r.get(e);t&&(t.expanded=!1)}),e.forEach(e=>{let n=r.get(e);for(;n&&!t.has(n.key);)t.add(n.key),n.expanded=!0,n=n.parent}),n.value=t}function P(n,r){F(n),t(sm,n.data,n,r),e.expandOnClickNode&&M(n),e.showCheckbox&&(e.checkOnClickNode||n.isLeaf&&e.checkOnClickLeaf)&&!n.disabled&&c(n,!s(n),!0)}function ee(e,n){t(cm,e.data,e,n)}function F(e){L(e)||(r.value=e.key,t(dm,e.data,e))}function I(e,t){c(e,t)}function te(r){let a=n.value;if(i.value&&e.accordion){let{treeNodeMap:e}=i.value;a.forEach(t=>{let n=e.get(t);r&&r.level===n?.level&&(a.delete(t),n.expanded=!1)})}a.add(r.key);let o=z(r.key);o&&(o.expanded=!0,t(lm,o.data,o))}function ne(e){n.value.delete(e.key);let r=z(e.key);r&&(r.expanded=!1,t(um,r.data,r))}function re(e){return!!e.disabled}function L(e){let t=r.value;return t!==void 0&&t===e.key}function ie(){if(r.value!==void 0)return i.value?.treeNodeMap.get(r.value)?.data}function ae(){return r.value}function R(e){r.value=e}function oe(e){i.value=E(e)}function z(e){let t=m(e)?k(e):e;return i.value?.treeNodeMap.get(t)}function se(e,t=`auto`){let n=z(e);n&&a.value&&a.value.scrollToItem(w.value.indexOf(n),t)}function ce(e){a.value?.scrollTo(e)}return C(()=>e.currentNodeKey,e=>{r.value=e},{immediate:!0}),C(()=>e.defaultExpandedKeys,e=>{N(e||[])}),C(()=>e.data,t=>{oe(t),N(e.defaultExpandedKeys||[])},{immediate:!0}),{tree:i,flattenTree:w,isNotEmpty:T,listRef:a,getKey:k,getChildren:O,toggleExpand:M,toggleCheckbox:c,isChecked:s,isIndeterminate:o,isDisabled:re,isCurrent:L,isForceHiddenExpandIcon:v,handleNodeClick:P,handleNodeDrop:ee,handleNodeCheck:I,getCurrentNode:ie,getCurrentKey:ae,setCurrentKey:R,getCheckedKeys:l,getCheckedNodes:u,getHalfCheckedKeys:d,getHalfCheckedNodes:f,setChecked:p,setCheckedKeys:h,filter:D,setData:oe,getNode:z,expandNode:te,collapseNode:ne,setExpandedKeys:N,scrollToNode:se,scrollTo:ce}}var bm=Se({name:`ElTreeNodeContent`,props:om,setup(e){let t=Xe(tm),n=u(`tree`);return()=>{let r=e.node,{data:i}=r;return t?.ctx.slots.default?t.ctx.slots.default({node:r,data:i}):Y(ji,{tag:`span`,truncated:!0,class:n.be(`node`,`label`)},()=>[r?.label])}}}),xm=[`aria-expanded`,`aria-disabled`,`aria-checked`,`data-key`],Sm=Se({name:`ElTreeNode`,__name:`tree-node`,props:am,emits:gm,setup(e,{emit:t}){let n=e,r=t,i=Xe(tm),a=u(`tree`),o=B(()=>i?.props.indent??16),s=B(()=>i?.props.icon??ie),c=e=>{let t=i?.props.props?.class;if(!t)return{};let n;if(qe(t)){let{data:r}=e;n=t(r,e)}else n=t;return D(n)?{[n]:!0}:n},l=e=>{r(`click`,n.node,e)},d=e=>{r(`drop`,n.node,e)},f=()=>{r(`toggle`,n.node)},p=e=>{r(`check`,n.node,e)},m=e=>{i?.instance?.vnode?.props?.onNodeContextmenu&&(e.stopPropagation(),e.preventDefault()),i?.ctx.emit(mm,e,n.node?.data,n.node)};return(t,n)=>(k(),U(`div`,{ref:`node$`,class:T([K(a).b(`node`),K(a).is(`expanded`,e.expanded),K(a).is(`current`,e.current),K(a).is(`focusable`,!e.disabled),K(a).is(`checked`,!e.disabled&&e.checked),c(e.node)]),role:`treeitem`,tabindex:`-1`,"aria-expanded":e.expanded,"aria-disabled":e.disabled,"aria-checked":e.checked,"data-key":e.node?.key,onClick:lt(l,[`stop`]),onContextmenu:m,onDragover:n[1]||=lt(()=>{},[`prevent`]),onDragenter:n[2]||=lt(()=>{},[`prevent`]),onDrop:lt(d,[`stop`])},[G(`div`,{class:T(K(a).be(`node`,`content`)),style:tt({paddingLeft:`${(e.node.level-1)*o.value}px`,height:e.itemSize+`px`})},[s.value?(k(),q(K(Hn),{key:0,class:T([K(a).is(`leaf`,!!e.node?.isLeaf),K(a).is(`hidden`,e.hiddenExpandIcon),{expanded:!e.node?.isLeaf&&e.expanded},K(a).be(`node`,`expand-icon`)]),onClick:lt(f,[`stop`])},{default:S(()=>[(k(),q(et(s.value)))]),_:1},8,[`class`])):V(`v-if`,!0),e.showCheckbox?(k(),q(K(oi),{key:1,"model-value":e.checked,indeterminate:e.indeterminate,disabled:e.disabled,onChange:p,onClick:n[0]||=lt(()=>{},[`stop`])},null,8,[`model-value`,`indeterminate`,`disabled`])):V(`v-if`,!0),W(K(bm),{node:{...e.node,expanded:e.expanded}},null,8,[`node`])],6)],42,xm))}}),Cm=fe(Se({name:`ElTreeV2`,__name:`tree`,props:im,emits:hm,setup(e,{expose:t,emit:n}){let r=e,i=n,a=ce(),o=B(()=>r.itemSize);P(tm,{ctx:{emit:i,slots:a},props:r,instance:xe()}),P(jn,void 0);let{t:c}=on(),l=u(`tree`),{flattenTree:d,isNotEmpty:f,listRef:p,toggleExpand:m,isIndeterminate:h,isChecked:g,isDisabled:_,isCurrent:v,isForceHiddenExpandIcon:y,handleNodeClick:b,handleNodeDrop:C,handleNodeCheck:w,toggleCheckbox:E,getCurrentNode:D,getCurrentKey:O,setCurrentKey:A,getCheckedKeys:j,getCheckedNodes:M,getHalfCheckedKeys:N,getHalfCheckedNodes:ee,setChecked:F,setCheckedKeys:I,filter:te,setData:ne,getNode:re,expandNode:L,collapseNode:ie,setExpandedKeys:ae,scrollToNode:R,scrollTo:oe}=ym(r,i);return t({toggleCheckbox:E,getCurrentNode:D,getCurrentKey:O,setCurrentKey:A,getCheckedKeys:j,getCheckedNodes:M,getHalfCheckedKeys:N,getHalfCheckedNodes:ee,setChecked:F,setCheckedKeys:I,filter:te,setData:ne,getNode:re,expandNode:L,collapseNode:ie,setExpandedKeys:ae,scrollToNode:R,scrollTo:oe}),(t,n)=>(k(),U(`div`,{class:T([K(l).b(),{[K(l).m(`highlight-current`)]:e.highlightCurrent}]),role:`tree`},[K(f)?(k(),q(K(fc),{key:0,ref_key:`listRef`,ref:p,"class-name":K(l).b(`virtual-list`),data:K(d),total:K(d).length,height:e.height,"item-size":o.value,"perf-mode":e.perfMode,"scrollbar-always-on":e.scrollbarAlwaysOn},{default:S(({data:t,index:n,style:r})=>[(k(),q(Sm,{key:t[n].key,style:tt(r),node:t[n],expanded:t[n].expanded,"show-checkbox":e.showCheckbox,checked:K(g)(t[n]),indeterminate:K(h)(t[n]),"item-size":o.value,disabled:K(_)(t[n]),current:K(v)(t[n]),"hidden-expand-icon":K(y)(t[n]),onClick:K(b),onToggle:K(m),onCheck:K(w),onDrop:K(C)},null,8,[`style`,`node`,`expanded`,`show-checkbox`,`checked`,`indeterminate`,`item-size`,`disabled`,`current`,`hidden-expand-icon`,`onClick`,`onToggle`,`onCheck`,`onDrop`]))]),_:1},8,[`class-name`,`data`,`total`,`height`,`item-size`,`perf-mode`,`scrollbar-always-on`])):(k(),U(`div`,{key:1,class:T(K(l).e(`empty-block`))},[x(t.$slots,`empty`,{},()=>[G(`span`,{class:T(K(l).e(`empty-text`))},s(e.emptyText??K(c)(`el.tree.emptyText`)),3)])],2))],2))}})),wm=`ElUpload`,Tm=class extends Error{constructor(e,t,n,r){super(e),this.name=`UploadAjaxError`,this.status=t,this.method=n,this.url=r}};function Em(e,t,n){let r;return r=n.response?`${n.response.error||n.response}`:n.responseText?`${n.responseText}`:`fail to ${t.method} ${e} ${n.status}`,new Tm(r,n.status,t.method,e)}function Dm(e){let t=e.responseText||e.response;if(!t)return t;try{return JSON.parse(t)}catch{return t}}var Om=e=>{typeof XMLHttpRequest>`u`&&bn(wm,`XMLHttpRequest is undefined`);let t=new XMLHttpRequest,n=e.action;t.upload&&t.upload.addEventListener(`progress`,t=>{let n=t;n.percent=t.total>0?t.loaded/t.total*100:0,e.onProgress(n)});let r=new FormData;if(e.data)for(let[t,n]of Object.entries(e.data))L(n)?n.length===2&&n[0]instanceof Blob&&D(n[1])?r.append(t,n[0],n[1]):n.forEach(e=>{r.append(t,e)}):r.append(t,n);r.append(e.filename,e.file,e.file.name),t.addEventListener(`error`,()=>{e.onError(Em(n,e,t))}),t.addEventListener(`load`,()=>{if(t.status<200||t.status>=300)return e.onError(Em(n,e,t));e.onSuccess(Dm(t))}),t.open(e.method,n,!0),e.withCredentials&&`withCredentials`in t&&(t.withCredentials=!0);let i=e.headers||{};if(i instanceof Headers)i.forEach((e,n)=>t.setRequestHeader(n,e));else for(let[e,n]of Object.entries(i))v(n)||t.setRequestHeader(e,String(n));return t.send(r),t},km=[`text`,`picture`,`picture-card`],Am=1,jm=()=>Date.now()+Am++,Mm=R({action:{type:String,default:`#`},headers:{type:h(Object)},method:{type:String,default:`post`},data:{type:h([Object,Function,Promise]),default:()=>Lt({})},multiple:Boolean,name:{type:String,default:`file`},drag:Boolean,withCredentials:Boolean,showFileList:{type:Boolean,default:!0},accept:{type:String,default:``},fileList:{type:h(Array),default:()=>Lt([])},autoUpload:{type:Boolean,default:!0},listType:{type:String,values:km,default:`text`},httpRequest:{type:h(Function),default:Om},disabled:{type:Boolean,default:void 0},limit:Number,directory:Boolean}),Nm=R({...Mm,beforeUpload:{type:h(Function),default:Me},beforeRemove:{type:h(Function)},onRemove:{type:h(Function),default:Me},onChange:{type:h(Function),default:Me},onPreview:{type:h(Function),default:Me},onSuccess:{type:h(Function),default:Me},onProgress:{type:h(Function),default:Me},onError:{type:h(Function),default:Me},onExceed:{type:h(Function),default:Me},crossorigin:{type:h(String)}}),Pm={action:`#`,method:`post`,data:()=>Lt({}),name:`file`,showFileList:!0,accept:``,fileList:()=>Lt([]),autoUpload:!0,listType:`text`,httpRequest:Om,disabled:void 0};({...Pm});var Fm=Symbol(`uploadContextKey`),Im=R({files:{type:h(Array),default:()=>Lt([])},disabled:{type:Boolean,default:void 0},handlePreview:{type:h(Function),default:Me},listType:{type:String,values:km,default:`text`},crossorigin:{type:h(String)}}),Lm={remove:e=>!!e},Rm=R({...Mm,beforeUpload:{type:h(Function),default:Me},onRemove:{type:h(Function),default:Me},onStart:{type:h(Function),default:Me},onSuccess:{type:h(Function),default:Me},onProgress:{type:h(Function),default:Me},onError:{type:h(Function),default:Me},onExceed:{type:h(Function),default:Me}});({...Pm});var zm=R({disabled:{type:Boolean,default:void 0},directory:Boolean}),Bm={file:e=>L(e)},Vm=[`tabindex`,`aria-disabled`,`onKeydown`],Hm=[`src`,`crossorigin`],Um=[`onClick`],Wm=[`title`],Gm=[`onClick`],Km=[`onClick`],qm=Se({name:`ElUploadList`,__name:`upload-list`,props:Im,emits:Lm,setup(e,{emit:t}){let n=e,i=t,{t:a}=on(),o=u(`upload`),c=u(`icon`),l=u(`list`),d=Fn(),f=H(!1),p=B(()=>[o.b(`list`),o.bm(`list`,n.listType),o.is(`disabled`,d.value)]),m=e=>{i(`remove`,e)};return(t,n)=>(k(),q(at,{tag:`ul`,class:T(p.value),name:K(l).b()},{default:S(()=>[(k(!0),U(ve,null,_(e.files,(i,l)=>(k(),U(`li`,{key:i.uid||i.name,class:T([K(o).be(`list`,`item`),K(o).is(i.status),{focusing:f.value}]),tabindex:K(d)?void 0:0,"aria-disabled":K(d),role:`button`,onKeydown:it(e=>!K(d)&&m(i),[`delete`]),onFocus:n[0]||=e=>f.value=!0,onBlur:n[1]||=e=>f.value=!1,onClick:n[2]||=e=>f.value=!1},[x(t.$slots,`default`,{file:i,index:l},()=>[e.listType===`picture`||i.status!==`uploading`&&e.listType===`picture-card`?(k(),U(`img`,{key:0,class:T(K(o).be(`list`,`item-thumbnail`)),src:i.url,crossorigin:e.crossorigin,alt:``},null,10,Hm)):V(`v-if`,!0),i.status===`uploading`||e.listType!==`picture-card`?(k(),U(`div`,{key:1,class:T(K(o).be(`list`,`item-info`))},[G(`a`,{class:T(K(o).be(`list`,`item-name`)),onClick:lt(t=>e.handlePreview(i),[`prevent`])},[W(K(Hn),{class:T(K(c).m(`document`))},{default:S(()=>[W(K(z))]),_:1},8,[`class`]),G(`span`,{class:T(K(o).be(`list`,`item-file-name`)),title:i.name},s(i.name),11,Wm)],10,Um),i.status===`uploading`?(k(),q(K(Ti),{key:0,type:e.listType===`picture-card`?`circle`:`line`,"stroke-width":e.listType===`picture-card`?6:2,percentage:Number(i.percentage),style:tt(e.listType===`picture-card`?``:`margin-top: 0.5rem`)},null,8,[`type`,`stroke-width`,`percentage`,`style`])):V(`v-if`,!0)],2)):V(`v-if`,!0),G(`label`,{class:T(K(o).be(`list`,`item-status-label`))},[e.listType===`text`?(k(),q(K(Hn),{key:0,class:T([K(c).m(`upload-success`),K(c).m(`circle-check`)])},{default:S(()=>[W(K(we))]),_:1},8,[`class`])):[`picture-card`,`picture`].includes(e.listType)?(k(),q(K(Hn),{key:1,class:T([K(c).m(`upload-success`),K(c).m(`check`)])},{default:S(()=>[W(K(r))]),_:1},8,[`class`])):V(`v-if`,!0)],2),K(d)?V(`v-if`,!0):(k(),q(K(Hn),{key:2,class:T(K(c).m(`close`)),"aria-label":K(a)(`el.upload.delete`),role:`button`,tabindex:`0`,onClick:e=>m(i),onKeydown:it(lt(e=>m(i),[`prevent`]),[`enter`,`space`])},{default:S(()=>[W(K(b))]),_:1},8,[`class`,`aria-label`,`onClick`,`onKeydown`])),K(d)?V(`v-if`,!0):(k(),U(`i`,{key:3,class:T(K(c).m(`close-tip`))},s(K(a)(`el.upload.deleteTip`)),3)),e.listType===`picture-card`?(k(),U(`span`,{key:4,class:T(K(o).be(`list`,`item-actions`))},[G(`span`,{class:T(K(o).be(`list`,`item-preview`)),onClick:t=>e.handlePreview(i)},[W(K(Hn),{class:T(K(c).m(`zoom-in`))},{default:S(()=>[W(K(Ce))]),_:1},8,[`class`])],10,Gm),K(d)?V(`v-if`,!0):(k(),U(`span`,{key:0,class:T(K(o).be(`list`,`item-delete`)),onClick:e=>m(i)},[W(K(Hn),{class:T(K(c).m(`delete`))},{default:S(()=>[W(K($e))]),_:1},8,[`class`])],10,Km))],2)):V(`v-if`,!0)])],42,Vm))),128)),x(t.$slots,`append`)]),_:3},8,[`class`,`name`]))}}),Jm=`ElUploadDrag`,Ym=Se({name:Jm,__name:`upload-dragger`,props:zm,emits:Bm,setup(e,{emit:t}){let n=e,r=t;Xe(Fm)||bn(Jm,`usage: `);let i=u(`upload`),a=H(!1),o=Fn(),s=e=>new Promise((t,n)=>e.file(t,n)),c=async e=>{try{if(e.isFile){let t=await s(e);return t.isDirectory=!1,[t]}if(e.isDirectory){let t=e.createReader(),n=()=>new Promise((e,n)=>t.readEntries(e,n)),r=[],i=await n();for(;i.length>0;)r.push(...i),i=await n();let a=r.map(e=>c(e).catch(()=>[]));return ut(await Promise.all(a))}}catch{return[]}return[]},l=async e=>{if(o.value)return;a.value=!1,e.stopPropagation();let t=Array.from(e.dataTransfer.files),i=e.dataTransfer.items||[];if(n.directory){let e=Array.from(i).map(e=>e?.webkitGetAsEntry?.()).filter(e=>e);r(`file`,ut(await Promise.all(e.map(c))));return}t.forEach((e,t)=>{let n=i[t]?.webkitGetAsEntry?.();n&&(e.isDirectory=n.isDirectory)}),r(`file`,t)},d=()=>{o.value||(a.value=!0)},f=e=>{e.currentTarget.contains(e.relatedTarget)||(a.value=!1)};return(e,t)=>(k(),U(`div`,{class:T([K(i).b(`dragger`),K(i).is(`dragover`,a.value)]),onDrop:lt(l,[`prevent`]),onDragover:lt(d,[`prevent`]),onDragleave:lt(f,[`prevent`])},[x(e.$slots,`default`)],34))}}),Xm=[`tabindex`,`aria-disabled`,`onKeydown`],Zm=[`name`,`disabled`,`multiple`,`accept`,`webkitdirectory`],Qm=Se({name:`ElUploadContent`,inheritAttrs:!1,__name:`upload-content`,props:Rm,setup(e,{expose:t}){let n=e,r=u(`upload`),i=Fn(),a=Re({}),o=Re(),s=e=>{if(e.length===0)return;let{autoUpload:t,limit:r,fileList:i,multiple:a,onStart:o,onExceed:s}=n;if(r&&i.length+e.length>r){s(e,i);return}a||(e=e.slice(0,1));for(let n of e){let e=n;e.uid=jm(),o(e),t&&c(e)}},c=async e=>{if(o.value.value=``,!n.beforeUpload)return d(e);let t,r={};try{let i=n.data,a=n.beforeUpload(e);r=M(n.data)?hr(n.data):n.data,t=await a,M(n.data)&&Un(i,r)&&(r=hr(n.data))}catch{t=!1}if(t===!1){n.onRemove(e);return}let i=e;t instanceof Blob&&(i=t instanceof File?t:new File([t],e.name,{type:e.type})),d(Object.assign(i,{uid:e.uid}),r)},l=async(e,t)=>qe(e)?e(t):e,d=async(e,t)=>{let{headers:r,data:i,method:o,withCredentials:s,name:c,action:u,onProgress:d,onSuccess:f,onError:p,httpRequest:m}=n;try{t=await l(t??i,e)}catch{n.onRemove(e);return}let{uid:h}=e,g={headers:r||{},withCredentials:s,file:e,data:t,method:o,filename:c,action:u,onProgress:t=>{d(t,e)},onSuccess:t=>{f(t,e),delete a.value[h]},onError:t=>{p(t,e),delete a.value[h]}},_=m(g);a.value[h]=_,_ instanceof Promise&&_.then(g.onSuccess,g.onError)},f=e=>{let t=e.target.files;t&&s(Array.from(t))},p=()=>{i.value||(o.value.value=``,o.value.click())},m=()=>{p()};return t({abort:e=>{In(a.value).filter(e?([t])=>String(e.uid)===t:()=>!0).forEach(([e,t])=>{t instanceof XMLHttpRequest&&t.abort(),delete a.value[e]})},upload:c}),(t,n)=>(k(),U(`div`,{class:T([K(r).b(),K(r).m(e.listType),K(r).is(`drag`,e.drag),K(r).is(`disabled`,K(i))]),tabindex:K(i)?void 0:0,"aria-disabled":K(i),role:`button`,onClick:p,onKeydown:it(lt(m,[`self`]),[`enter`,`space`])},[e.drag?(k(),q(Ym,{key:0,disabled:K(i),directory:e.directory,onFile:s},{default:S(()=>[x(t.$slots,`default`)]),_:3},8,[`disabled`,`directory`])):x(t.$slots,`default`,{key:1}),G(`input`,{ref_key:`inputRef`,ref:o,class:T(K(r).e(`input`)),name:e.name,disabled:K(i),multiple:e.multiple,accept:e.accept,webkitdirectory:e.directory||void 0,type:`file`,onChange:f,onClick:n[0]||=lt(()=>{},[`stop`])},null,42,Zm)],42,Xm))}}),$m=`ElUpload`,eh=e=>{e.url?.startsWith(`blob:`)&&URL.revokeObjectURL(e.url)},th=(e,t)=>{let n=yt(e,`fileList`,void 0,{passive:!0}),r=e=>n.value.find(t=>t.uid===e.uid);function i(e){t.value?.abort(e)}function a(e=[`ready`,`uploading`,`success`,`fail`]){n.value=n.value.filter(t=>!e.includes(t.status))}function o(e){n.value=n.value.filter(t=>t.uid!==e.uid)}let s=t=>{J(()=>e.onChange(t,n.value))},c=(t,i)=>{let a=r(i);a&&(console.error(t),a.status=`fail`,o(a),e.onError(t,a,n.value),s(a))},l=(t,i)=>{let a=r(i);a&&(e.onProgress(t,a,n.value),a.status=`uploading`,a.percentage=Math.round(t.percent))},u=(t,i)=>{let a=r(i);a&&(a.status=`success`,a.response=t,e.onSuccess(t,a,n.value),s(a))},d=t=>{v(t.uid)&&(t.uid=jm());let r={name:t.name,percentage:0,status:`ready`,size:t.size,raw:t,uid:t.uid};if(e.listType===`picture-card`||e.listType===`picture`)try{r.url=URL.createObjectURL(t)}catch(t){On($m,t.message),e.onError(t,r,n.value)}n.value=[...n.value,r],s(r)},f=async t=>{let a=t instanceof File?r(t):t;a||bn($m,`file to be removed not found`);let s=t=>{i(t),o(t),e.onRemove(t,n.value),eh(t)};e.beforeRemove?await e.beforeRemove(a,n.value)!==!1&&s(a):s(a)};function p(){n.value.filter(({status:e})=>e===`ready`).forEach(({raw:e})=>e&&t.value?.upload(e))}return C(()=>e.listType,t=>{(t===`picture-card`||t===`picture`)&&(n.value=n.value.map(t=>{let{raw:r,url:i}=t;if(!i&&r)try{t.url=URL.createObjectURL(r)}catch(r){e.onError(r,t,n.value)}return t}))}),C(n,e=>{for(let t of e)t.uid||=jm(),t.status||=`success`},{immediate:!0,deep:!0}),{uploadFiles:n,abort:i,clearFiles:a,handleError:c,handleProgress:l,handleStart:d,handleSuccess:u,handleRemove:f,submit:p,revokeFileObjectURL:eh}},nh=fe(Se({name:`ElUpload`,__name:`upload`,props:Nm,setup(e,{expose:t}){let n=e,r=Fn(),i=Re(),{abort:a,submit:o,clearFiles:s,uploadFiles:l,handleStart:u,handleError:f,handleRemove:p,handleSuccess:m,handleProgress:h,revokeFileObjectURL:g}=th(n,i),_=B(()=>n.listType===`picture-card`),v=B(()=>({...n,fileList:l.value,onStart:u,onProgress:h,onSuccess:m,onError:f,onRemove:p}));return d(()=>{l.value.forEach(g)}),P(Fm,{accept:Ae(n,`accept`)}),t({abort:a,submit:o,clearFiles:s,handleStart:u,handleRemove:p}),(t,n)=>(k(),U(`div`,null,[_.value&&e.showFileList?(k(),q(qm,{key:0,disabled:K(r),"list-type":e.listType,files:K(l),crossorigin:e.crossorigin,"handle-preview":e.onPreview,onRemove:K(p)},_e({append:S(()=>[W(Qm,c({ref_key:`uploadRef`,ref:i},v.value),{default:S(()=>[t.$slots.trigger?x(t.$slots,`trigger`,{key:0}):V(`v-if`,!0),!t.$slots.trigger&&t.$slots.default?x(t.$slots,`default`,{key:1}):V(`v-if`,!0)]),_:3},16)]),_:2},[t.$slots.file?{name:`default`,fn:S(({file:e,index:n})=>[x(t.$slots,`file`,{file:e,index:n})]),key:`0`}:void 0]),1032,[`disabled`,`list-type`,`files`,`crossorigin`,`handle-preview`,`onRemove`])):V(`v-if`,!0),!_.value||_.value&&!e.showFileList?(k(),q(Qm,c({key:1,ref_key:`uploadRef`,ref:i},v.value),{default:S(()=>[t.$slots.trigger?x(t.$slots,`trigger`,{key:0}):V(`v-if`,!0),!t.$slots.trigger&&t.$slots.default?x(t.$slots,`default`,{key:1}):V(`v-if`,!0)]),_:3},16)):V(`v-if`,!0),t.$slots.trigger?x(t.$slots,`default`,{key:2}):V(`v-if`,!0),x(t.$slots,`tip`),!_.value&&e.showFileList?(k(),q(qm,{key:3,disabled:K(r),"list-type":e.listType,files:K(l),crossorigin:e.crossorigin,"handle-preview":e.onPreview,onRemove:K(p)},_e({_:2},[t.$slots.file?{name:`default`,fn:S(({file:e,index:n})=>[x(t.$slots,`file`,{file:e,index:n})]),key:`0`}:void 0]),1032,[`disabled`,`list-type`,`files`,`crossorigin`,`handle-preview`,`onRemove`])):V(`v-if`,!0)]))}})),rh=R({zIndex:{type:Number,default:9},rotate:{type:Number,default:-22},width:Number,height:Number,image:String,content:{type:h([String,Array]),default:`Element Plus`},font:{type:h(Object)},gap:{type:h(Array),default:()=>[100,100]},offset:{type:h(Array)}});function ih(e){return e.replace(/([A-Z])/g,`-$1`).toLowerCase()}function ah(e){return Object.keys(e).map(t=>`${ih(t)}: ${e[t]};`).join(` `)}function oh(){return window.devicePixelRatio||1}var sh=(e,t)=>{let n=!1;return e.removedNodes.length&&t&&(n=Array.from(e.removedNodes).includes(t)),e.type===`attributes`&&e.target===t&&(n=!0),n},ch={left:[0,.5],start:[0,.5],center:[.5,0],right:[1,-.5],end:[1,-.5]};function lh(e,t,n=1){let r=document.createElement(`canvas`),i=r.getContext(`2d`),a=e*n,o=t*n;return r.setAttribute(`width`,`${a}px`),r.setAttribute(`height`,`${o}px`),i.save(),[i,r,a,o]}function uh(){function e(e,t,n,r,i,a,o,s,c){let[l,u,d,f]=lh(r,i,n),p=0;if(e instanceof HTMLImageElement)l.drawImage(e,0,0,d,f);else{let{color:t,fontSize:r,fontStyle:o,fontWeight:s,fontFamily:u,textAlign:f,textBaseline:m}=a,h=Number(r)*n;l.font=`${o} normal ${s} ${h}px/${i}px ${u}`,l.fillStyle=t,l.textAlign=f,l.textBaseline=m;let g=L(e)?e:[e];if(m!==`top`&&g[0]){let e=l.measureText(g[0]);l.textBaseline=`top`;let t=l.measureText(g[0]);p=e.actualBoundingBoxAscent-t.actualBoundingBoxAscent}g?.forEach((e,t)=>{let[r,i]=ch[f];l.fillText(e??``,d*r+c*i,t*(h+a.fontGap*n))})}let m=Math.PI/180*Number(t),h=Math.max(r,i),[g,_,v]=lh(h,h,n);g.translate(v/2,v/2),g.rotate(m),d>0&&f>0&&g.drawImage(u,-d/2,-f/2);function y(e,t){return[e*Math.cos(m)-t*Math.sin(m),e*Math.sin(m)+t*Math.cos(m)]}let b=0,x=0,S=0,C=0,w=d/2,T=f/2;[[0-w,0-T],[0+w,0-T],[0+w,0+T],[0-w,0+T]].forEach(([e,t])=>{let[n,r]=y(e,t);b=Math.min(b,n),x=Math.max(x,n),S=Math.min(S,r),C=Math.max(C,r)});let E=b+v/2,D=S+v/2,O=x-b,k=C-S,A=o*n,j=s*n,M=(O+A)*2,N=k+j,[P,ee]=lh(M,N);function F(e=0,t=0){P.drawImage(_,E,D,O,k,e,t+p,O,k)}return F(),F(O+A,-k/2-j/2),F(O+A,k/2+j/2),[ee.toDataURL(),M/n,N/n]}return e}var dh=fe(Se({name:`ElWatermark`,__name:`watermark`,props:rh,setup(e){let t={position:`relative`},n=e,r=B(()=>n.font?.fontGap??3),a=B(()=>n.font?.color??`rgba(0,0,0,.15)`),o=B(()=>n.font?.fontSize??16),s=B(()=>n.font?.fontWeight??`normal`),c=B(()=>n.font?.fontStyle??`normal`),l=B(()=>n.font?.fontFamily??`sans-serif`),u=B(()=>n.font?.textAlign??`center`),f=B(()=>n.font?.textBaseline??`hanging`),p=B(()=>n.gap[0]),m=B(()=>n.gap[1]),h=B(()=>p.value/2),g=B(()=>m.value/2),_=B(()=>n.offset?.[0]??h.value),v=B(()=>n.offset?.[1]??g.value),y=()=>{let e={zIndex:n.zIndex,position:`absolute`,left:0,top:0,width:`100%`,height:`100%`,pointerEvents:`none`,backgroundRepeat:`repeat`},t=_.value-h.value,r=v.value-g.value;return t>0&&(e.left=`${t}px`,e.width=`calc(100% - ${t}px)`,t=0),r>0&&(e.top=`${r}px`,e.height=`calc(100% - ${r}px)`,r=0),e.backgroundPosition=`${t}px ${r}px`,e},b=Re(null),S=Re(),w=H(!1),T=()=>{S.value&&=(S.value.remove(),void 0)},E=(e,t)=>{b.value&&S.value&&(w.value=!0,S.value.setAttribute(`style`,ah({...y(),backgroundImage:`url('${e}')`,backgroundSize:`${Math.floor(t)}px`})),b.value?.append(S.value),setTimeout(()=>{w.value=!1}))},D=e=>{let t=120,i=64,a=0,{image:s,content:c,width:u,height:d,rotate:f}=n;if(!s&&e.measureText){e.font=`${Number(o.value)}px ${l.value}`;let n=L(c)?c:[c],s=0,u=0;n.forEach(t=>{let{width:n,fontBoundingBoxAscent:r,fontBoundingBoxDescent:i,actualBoundingBoxAscent:a,actualBoundingBoxDescent:o}=e.measureText(t),c=A(r)?a+o:r+i;n>s&&(s=Math.ceil(n)),c>u&&(u=Math.ceil(c))}),t=s,i=u*n.length+(n.length-1)*r.value;let d=Math.PI/180*Number(f);a=Math.ceil(Math.abs(Math.sin(d)*i)/2),t+=a}return[u??t,d??i,a]},O=uh(),j=()=>{let e=document.createElement(`canvas`).getContext(`2d`),t=n.image,i=n.content,d=n.rotate;if(e){S.value||=document.createElement(`div`);let n=oh(),[h,g,_]=D(e),v=e=>{let[t,i]=O(e||``,d,n,h,g,{color:a.value,fontSize:o.value,fontStyle:c.value,fontWeight:s.value,fontFamily:l.value,fontGap:r.value,textAlign:u.value,textBaseline:f.value},p.value,m.value,_);E(t,i)};if(t){let e=new Image;e.onload=()=>{v(e)},e.onerror=()=>{v(i)},e.crossOrigin=`anonymous`,e.referrerPolicy=`no-referrer`,e.src=t}else v(i)}};return i(()=>{j()}),C(()=>n,()=>{j()},{deep:!0,flush:`post`}),d(()=>{T()}),Ot(b,e=>{w.value||e.forEach(e=>{sh(e,S.value)&&(T(),j())})},{attributes:!0,subtree:!0,childList:!0}),(e,n)=>(k(),U(`div`,{ref_key:`containerRef`,ref:b,style:tt([t])},[x(e.$slots,`default`)],4))}})),fh=R({placement:{type:h(String),values:[`top-start`,`top-end`,`top`,`bottom-start`,`bottom-end`,`bottom`,`left-start`,`left-end`,`left`,`right-start`,`right-end`,`right`],default:`bottom`},reference:{type:h(Object),default:null},strategy:{type:h(String),values:[`absolute`,`fixed`],default:`absolute`},offset:{type:Number,default:10},showArrow:Boolean,zIndex:{type:Number,default:2001}}),ph={close:()=>!0},mh=R({modelValue:Boolean,current:{type:Number},showArrow:{type:Boolean,default:!0},showClose:{type:Boolean,default:!0},closeIcon:{type:En},placement:fh.placement,contentStyle:{type:h([Object])},mask:{type:h([Boolean,Object]),default:!0},gap:{type:h(Object),default:()=>({offset:6,radius:2})},zIndex:{type:Number},scrollIntoViewOptions:{type:h([Boolean,Object]),default:()=>({block:`center`})},type:{type:h(String)},appendTo:{type:h([String,Object]),default:`body`},closeOnPressEscape:{type:Boolean,default:!0},targetAreaClickable:{type:Boolean,default:!0}}),hh={[Kt]:e=>f(e),"update:current":e=>a(e),close:e=>a(e),finish:()=>!0,change:e=>a(e)},gh=R({target:{type:h([String,Object,Function])},title:String,description:String,showClose:{type:Boolean,default:void 0},closeIcon:{type:En},showArrow:{type:Boolean,default:void 0},placement:fh.placement,mask:{type:h([Boolean,Object]),default:void 0},contentStyle:{type:h([Object])},prevButtonProps:{type:h(Object)},nextButtonProps:{type:h(Object)},scrollIntoViewOptions:{type:h([Boolean,Object]),default:void 0},type:{type:h(String)}}),_h={close:()=>!0},vh=(e,t,n,r,a)=>{let o=H(null),s=()=>{let t;return t=D(e.value)?document.querySelector(e.value):qe(e.value)?e.value():e.value,t},c=()=>{let e=s();if(!e||!t.value){o.value=null;return}bh(e)||e.scrollIntoView(a.value);let{left:n,top:r,width:i,height:c}=e.getBoundingClientRect();o.value={left:n,top:r,width:i,height:c,radius:0}};i(()=>{C([t,e],()=>{c()},{immediate:!0}),window.addEventListener(`resize`,c)}),d(()=>{window.removeEventListener(`resize`,c)});let l=e=>(L(n.value.offset)?n.value.offset[e]:n.value.offset)??6,u=B(()=>{if(!o.value)return o.value;let e=l(0),t=l(1),r=n.value?.radius||2;return{left:o.value.left-e,top:o.value.top-t,width:o.value.width+e*2,height:o.value.height+t*2,radius:r}});return{mergedPosInfo:u,triggerTarget:B(()=>{let e=s();return!r.value||!e||!window.DOMRect?e||void 0:{getBoundingClientRect(){return window.DOMRect.fromRect({width:u.value?.width||0,height:u.value?.height||0,x:u.value?.left||0,y:u.value?.top||0})}}})}},yh=Symbol(`ElTour`);function bh(e){let t=window.innerWidth||document.documentElement.clientWidth,n=window.innerHeight||document.documentElement.clientHeight,{top:r,right:i,bottom:a,left:o}=e.getBoundingClientRect();return r>=0&&o>=0&&i<=t&&a<=n}var xh=(e,t,n,r,a,o,s,c)=>{let l=H(),u=H(),f=H({}),p={x:l,y:u,placement:r,strategy:a,middlewareData:f},m=B(()=>{let e=[To(K(o)),Do(),Eo(),Sh()];return K(c)&&K(n)&&e.push(Oo({element:K(n)})),e}),h=async()=>{if(!cn)return;let n=K(e),i=K(t);if(!n||!i)return;let o=await ko(n,i,{placement:K(r),strategy:K(a),middleware:K(m)});Sn(p).forEach(e=>{p[e].value=o[e]})},g=B(()=>{if(!K(e))return{position:`fixed`,top:`50%`,left:`50%`,transform:`translate3d(-50%, -50%, 0)`,maxWidth:`100vw`,zIndex:K(s)};let{overflow:t}=K(f);return{position:K(a),zIndex:K(s),top:K(u)==null?``:`${K(u)}px`,left:K(l)==null?``:`${K(l)}px`,maxWidth:t?.maxWidth?`${t?.maxWidth}px`:``}}),_=B(()=>{if(!K(c))return{};let{arrow:e}=K(f);return{left:e?.x==null?``:`${e?.x}px`,top:e?.y==null?``:`${e?.y}px`}}),v;return i(()=>{let n=K(e),r=K(t);n&&r&&(v=Co(n,r,h)),Ie(()=>{h()})}),d(()=>{v&&v()}),{update:h,contentStyle:g,arrowStyle:_}},Sh=()=>({name:`overflow`,async fn(e){let t=await wo(e),n=0;return t.left>0&&(n=t.left),t.right>0&&(n=t.right),{data:{maxWidth:e.rects.floating.width-n}}}}),Ch=R({zIndex:{type:Number,default:1001},visible:Boolean,fill:{type:String,default:`rgba(0,0,0,0.5)`},pos:{type:h(Object)},targetAreaClickable:{type:Boolean,default:!0}}),wh={style:{width:`100%`,height:`100%`}},Th=[`d`],Eh=Se({name:`ElTourMask`,inheritAttrs:!1,__name:`mask`,props:Ch,setup(e){let t=e,{ns:n}=Xe(yh),r=B(()=>t.pos?.radius??2),i=B(()=>{let e=r.value,t=`a${e},${e} 0 0 1`;return{topRight:`${t} ${e},${e}`,bottomRight:`${t} ${-e},${e}`,bottomLeft:`${t} ${-e},${-e}`,topLeft:`${t} ${e},${-e}`}}),{width:a,height:o}=vt(),s=B(()=>{let e=a.value,n=o.value,s=i.value,c=`M${e},0 L0,0 L0,${n} L${e},${n} L${e},0 Z`,l=r.value;return t.pos?`${c} M${t.pos.left+l},${t.pos.top} h${t.pos.width-l*2} ${s.topRight} v${t.pos.height-l*2} ${s.bottomRight} h${-t.pos.width+l*2} ${s.bottomLeft} v${-t.pos.height+l*2} ${s.topLeft} z`:c}),l=B(()=>({position:`fixed`,left:0,right:0,top:0,bottom:0,zIndex:t.zIndex,pointerEvents:t.pos&&t.targetAreaClickable?`none`:`auto`})),u=B(()=>({fill:t.fill,pointerEvents:`auto`,cursor:`auto`}));return Yt(Ae(t,`visible`),{ns:n}),(t,r)=>e.visible?(k(),U(`div`,c({key:0,class:K(n).e(`mask`),style:l.value},t.$attrs),[(k(),U(`svg`,wh,[G(`path`,{class:T(K(n).e(`hollow`)),style:tt(u.value),d:s.value},null,14,Th)]))],16)):V(`v-if`,!0)}}),Dh=[`data-side`],Oh=Se({name:`ElTourContent`,__name:`content`,props:fh,emits:ph,setup(e,{emit:t}){let n=e,r=t,i=H(n.placement),a=H(n.strategy),o=H(null),s=H(null);C(()=>n.placement,()=>{i.value=n.placement});let{contentStyle:c,arrowStyle:l}=xh(Ae(n,`reference`),o,s,i,a,Ae(n,`offset`),Ae(n,`zIndex`),Ae(n,`showArrow`)),u=B(()=>i.value.split(`-`)[0]),{ns:d}=Xe(yh),f=()=>{r(`close`)},p=e=>{e.detail.focusReason===`pointer`&&e.preventDefault()};return(t,n)=>(k(),U(`div`,{ref_key:`contentRef`,ref:o,style:tt(K(c)),class:T(K(d).e(`content`)),"data-side":u.value,tabindex:`-1`},[W(K(Gt),{loop:``,trapped:``,"focus-start-el":`container`,"focus-trap-el":o.value||void 0,onReleaseRequested:f,onFocusoutPrevented:p},{default:S(()=>[x(t.$slots,`default`)]),_:3},8,[`focus-trap-el`]),e.showArrow?(k(),U(`span`,{key:0,ref_key:`arrowRef`,ref:s,style:tt(K(l)),class:T(K(d).e(`arrow`))},null,6)):V(`v-if`,!0)],14,Dh))}}),kh=Se({name:`ElTourSteps`,props:{current:{type:Number,default:0}},emits:[`update-total`],setup(e,{slots:t,emit:n}){let r=0;return()=>{let i=t.default?.(),a=[],o=0;function s(e){L(e)&&e.forEach(e=>{(e?.type||{})?.name===`ElTourStep`&&(a.push(e),o+=1)})}return i.length&&s(Rr(i[0]?.children)),r!==o&&(r=o,n(`update-total`,o)),a.length?a[e.current]:null}}}),Ah=Se({name:`ElTour`,inheritAttrs:!1,__name:`tour`,props:mh,emits:hh,setup(e,{emit:t}){let n=e,r=t,i=u(`tour`),a=H(0),o=H(),s=B(()=>!A(n.current)),l=H(n.current??0),d=B({get(){return A(n.current)?l.value:n.current},set(e){(s.value?n.current:l.value)!==e&&(s.value||(l.value=e),r(`update:current`,e))}}),p=B(()=>o.value?.target),m=B(()=>[i.b(),T.value===`primary`?i.m(`primary`):``]),h=B(()=>o.value?.placement||n.placement),g=B(()=>o.value?.contentStyle??n.contentStyle),_=B(()=>o.value?.mask??n.mask),v=B(()=>!!_.value&&n.modelValue),y=B(()=>f(_.value)?void 0:_.value),b=B(()=>!!p.value&&(o.value?.showArrow??n.showArrow)),w=B(()=>o.value?.scrollIntoViewOptions??n.scrollIntoViewOptions),T=B(()=>o.value?.type??n.type),{nextZIndex:E}=xn(),D=E(),O=B(()=>n.zIndex??D),{mergedPosInfo:j,triggerTarget:M}=vh(p,Ae(n,`modelValue`),Ae(n,`gap`),_,w);C(()=>n.current,e=>!A(e)&&(l.value=e)),C(d,(e,t)=>{!n.modelValue||e===t||r(Mt,e)},{flush:`post`}),C(()=>n.modelValue,e=>{!e&&d.value!==0&&(d.value=0)});let N=()=>{n.closeOnPressEscape&&(r(Kt,!1),r(`close`,d.value))},ee=e=>{a.value=e},F=ce();return P(yh,{currentStep:o,current:d,total:a,showClose:Ae(n,`showClose`),closeIcon:Ae(n,`closeIcon`),mergedType:T,ns:i,slots:F,updateModelValue(e){r(Kt,e)},onClose(){r(`close`,d.value)},onFinish(){r(`finish`)}}),(t,n)=>(k(),U(ve,null,[(k(),q(Be,{to:e.appendTo},[G(`div`,c({class:m.value},t.$attrs),[W(Eh,{visible:v.value,fill:y.value?.color,style:tt(y.value?.style),pos:K(j),"z-index":O.value,"target-area-clickable":e.targetAreaClickable},null,8,[`visible`,`fill`,`style`,`pos`,`z-index`,`target-area-clickable`]),e.modelValue?(k(),q(Oh,{key:d.value,reference:K(M),placement:h.value,"show-arrow":b.value,"z-index":O.value,style:tt(g.value),onClose:N},{default:S(()=>[W(K(kh),{current:d.value,onUpdateTotal:ee},{default:S(()=>[x(t.$slots,`default`)]),_:3},8,[`current`])]),_:3},8,[`reference`,`placement`,`show-arrow`,`z-index`,`style`])):V(`v-if`,!0)],16)],8,[`to`])),V(` just for IDE `),V(`v-if`,!0)],64))}}),jh=[`aria-label`],Mh=Se({name:`ElTourStep`,__name:`step`,props:gh,emits:_h,setup(e,{emit:t}){let n=e,r=t,{Close:a}=Cn,{t:o}=on(),{currentStep:l,current:u,total:f,showClose:p,closeIcon:m,mergedType:h,ns:g,slots:v,updateModelValue:y,onClose:b,onFinish:w}=Xe(yh);C(n,e=>{l.value=e},{immediate:!0});let E=B(()=>n.showClose??p.value),D=B(()=>n.closeIcon??m.value??a),O=e=>{if(e)return ar(e,[`children`,`onClick`])},A=()=>{--u.value,n.prevButtonProps?.onClick&&n.prevButtonProps?.onClick()},j=()=>{u.value>=f.value-1?M():u.value+=1,n.nextButtonProps?.onClick&&n.nextButtonProps.onClick()},M=()=>{N(),w()},N=()=>{y(!1),b(),r(`close`)},P=e=>{if(!e.target?.isContentEditable)switch(Xt(e)){case Pt.left:e.preventDefault(),u.value>0&&A();break;case Pt.right:e.preventDefault(),j()}};return i(()=>{window.addEventListener(`keydown`,P)}),d(()=>{window.removeEventListener(`keydown`,P)}),(t,n)=>(k(),U(ve,null,[E.value?(k(),U(`button`,{key:0,"aria-label":K(o)(`el.tour.close`),class:T(K(g).e(`closebtn`)),type:`button`,onClick:N},[W(K(Hn),{class:T(K(g).e(`close`))},{default:S(()=>[(k(),q(et(D.value)))]),_:1},8,[`class`])],10,jh)):V(`v-if`,!0),G(`header`,{class:T([K(g).e(`header`),{"show-close":K(p)}])},[x(t.$slots,`header`,{},()=>[G(`span`,{role:`heading`,class:T(K(g).e(`title`))},s(e.title),3)])],2),G(`div`,{class:T(K(g).e(`body`))},[x(t.$slots,`default`,{},()=>[G(`span`,null,s(e.description),1)])],2),G(`footer`,{class:T(K(g).e(`footer`))},[G(`div`,{class:T(K(g).b(`indicators`))},[K(v).indicators?(k(),q(et(K(v).indicators),{key:0,current:K(u),total:K(f)},null,8,[`current`,`total`])):(k(!0),U(ve,{key:1},_(K(f),(e,t)=>(k(),U(`span`,{key:e,class:T([K(g).b(`indicator`),K(g).is(`active`,t===K(u))])},null,2))),128))],2),G(`div`,{class:T(K(g).b(`buttons`))},[K(u)>0?(k(),q(K(Kr),c({key:0,size:`small`,type:K(h)},O(e.prevButtonProps),{onClick:A}),{default:S(()=>[Pe(s(e.prevButtonProps?.children??K(o)(`el.tour.previous`)),1)]),_:1},16,[`type`])):V(`v-if`,!0),K(u)<=K(f)-1?(k(),q(K(Kr),c({key:1,size:`small`,type:K(h)===`primary`?`default`:`primary`},O(e.nextButtonProps),{onClick:j}),{default:S(()=>[Pe(s(e.nextButtonProps?.children??(K(u)===K(f)-1?K(o)(`el.tour.finish`):K(o)(`el.tour.next`))),1)]),_:1},16,[`type`])):V(`v-if`,!0)],2)],2)],64))}}),Nh=fe(Ah,{TourStep:Mh}),Ph=me(Mh),Fh=R({container:{type:h([String,Object])},offset:{type:Number,default:0},bound:{type:Number,default:15},duration:{type:Number,default:300},marker:{type:Boolean,default:!0},type:{type:h(String),default:`default`},direction:{type:h(String),default:`vertical`},selectScrollTop:Boolean}),Ih={change:e=>D(e),click:(e,t)=>e instanceof MouseEvent&&(D(t)||A(t))},Lh=(e=>{if(!cn||e===``)return null;if(D(e))try{return document.querySelector(e)}catch{return null}return e});function Rh(e){let t=0,n=(...n)=>{t&&zt(t),t=xt(()=>{e(...n),t=0})};return n.cancel=()=>{zt(t),t=0},n}var zh=Symbol(`anchor`),Bh=Se({name:`ElAnchor`,__name:`anchor`,props:Fh,emits:Ih,setup(e,{expose:t,emit:n}){let r=e,a=n,o=ce(),s=H(``),c=H({}),l=H(null),d=H(null),f=H(),p={},m=!1,h=0,g=u(`anchor`),_=B(()=>[g.b(),r.type===`underline`?g.m(`underline`):``,g.m(r.direction)]),v=e=>{p[e.href]=e.el},y=e=>{delete p[e]},b=e=>{s.value!==e&&(s.value=e,a(Mt,e))},S=null,w=``,E=e=>{if(!f.value)return;let t=Lh(e);if(!t)return;if(S){if(w===e)return;S()}w=e,m=!0;let n=Ct(t,f.value),i=ei(t,n),a=n.scrollHeight-n.clientHeight,o=Math.min(i-r.offset,a);S=Et(f.value,h,o,r.duration,()=>{setTimeout(()=>{m=!1,w=``},20)})},D=e=>{e&&(b(e),E(e))},O=(e,t)=>{a(`click`,e,t),D(t)},j=Rh(()=>{f.value&&(h=Bt(f.value));let e=M();m||A(e)||b(e)}),M=()=>{if(!f.value)return;let e=Bt(f.value),t=[];for(let e of Object.keys(p)){let n=Lh(e);if(!n)continue;let i=ei(n,Ct(n,f.value));t.push({top:i-r.offset-r.bound,href:e})}t.sort((e,t)=>e.top-t.top);for(let n=0;ne))return i.href}},N=()=>{let e=Lh(r.container);!e||ee(e)?f.value=window:f.value=e};_t(f,`scroll`,j);let F=()=>{J(()=>{if(!l.value||!d.value||!s.value){c.value={};return}let e=p[s.value];if(!e){c.value={};return}let t=l.value.getBoundingClientRect(),n=d.value.getBoundingClientRect(),i=e.getBoundingClientRect();r.direction===`horizontal`?c.value={left:`${i.left-t.left}px`,width:`${i.width}px`,opacity:1}:c.value={top:`${i.top-t.top+(i.height-n.height)/2}px`,opacity:1}})};return C(s,F),C(()=>o.default?.(),F),i(()=>{N();let e=decodeURIComponent(window.location.hash);Lh(e)?D(e):j()}),C(()=>r.container,()=>{N()}),P(zh,{ns:g,direction:r.direction,currentAnchor:s,addLink:v,removeLink:y,handleClick:O}),t({scrollTo:D}),(t,n)=>(k(),U(`div`,{ref_key:`anchorRef`,ref:l,class:T(_.value)},[e.marker?(k(),U(`div`,{key:0,ref_key:`markerRef`,ref:d,class:T(K(g).e(`marker`)),style:tt(c.value)},null,6)):V(`v-if`,!0),G(`div`,{class:T(K(g).e(`list`))},[x(t.$slots,`default`)],2)],2))}}),Vh=R({title:String,href:String}),Hh=[`href`],Uh=Se({name:`ElAnchorLink`,__name:`anchor-link`,props:Vh,setup(e){let t=e,n=H(null),{ns:r,direction:a,currentAnchor:o,addLink:c,removeLink:l,handleClick:u}=Xe(zh),f=B(()=>[r.e(`link`),r.is(`active`,o.value===t.href)]),p=e=>{u(e,t.href)};return C(()=>t.href,(e,t)=>{J(()=>{t&&l(t),e&&c({href:e,el:n.value})})}),i(()=>{let{href:e}=t;e&&c({href:e,el:n.value})}),d(()=>{let{href:e}=t;e&&l(e)}),(t,i)=>(k(),U(`div`,{class:T(K(r).e(`item`))},[G(`a`,{ref_key:`linkRef`,ref:n,class:T(f.value),href:e.href,onClick:p},[x(t.$slots,`default`,{},()=>[Pe(s(e.title),1)])],10,Hh),t.$slots[`sub-link`]&&K(a)===`vertical`?(k(),U(`div`,{key:0,class:T(K(r).e(`list`))},[x(t.$slots,`sub-link`)],2)):V(`v-if`,!0)],2))}}),Wh=fe(Bh,{AnchorLink:Uh}),Gh=me(Uh),Kh={label:`label`,value:`value`,disabled:`disabled`},qh=R({direction:{type:h(String),default:`horizontal`},options:{type:h(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:h(Object),default:()=>Kh},block:Boolean,size:Kn,disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},id:String,name:String,...Rt([`ariaLabel`])}),Jh={[Kt]:e=>D(e)||a(e)||f(e),[Mt]:e=>D(e)||a(e)||f(e)},Yh=[`id`,`aria-label`,`aria-labelledby`],Xh=[`name`,`disabled`,`checked`,`onChange`],Zh=fe(Se({name:`ElSegmented`,__name:`segmented`,props:qh,emits:Jh,setup(e,{emit:t}){let n=e,r=t,i=u(`segmented`),a=Gn(),o=zn(),c=Fn(),{formItem:l}=Dn(),{inputId:d,isLabeledByFormItem:f}=yn(n,{formItemContext:l}),p=H(null),h=bt(),g=Ne({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),v=(e,t)=>{let i=b(t);r(Kt,i),r(Mt,i),e.target.checked=i===n.modelValue},y=B(()=>({...Kh,...n.props})),b=e=>m(e)?e[y.value.value]:e,S=e=>m(e)?e[y.value.label]:e,w=e=>!!(c.value||m(e)&&e[y.value.disabled]),E=e=>n.modelValue===b(e),D=e=>n.options.find(t=>b(t)===e),O=e=>[i.e(`item`),i.is(`selected`,E(e)),i.is(`disabled`,w(e))],A=()=>{if(!p.value)return;let e=p.value.querySelector(`.is-selected`),t=p.value.querySelector(`.is-selected input`);if(!e||!t){g.width=0,g.height=0,g.translateX=0,g.translateY=0,g.focusVisible=!1;return}g.isInit=!0,n.direction===`vertical`?(g.height=e.offsetHeight,g.translateY=e.offsetTop):(g.width=e.offsetWidth,g.translateX=e.offsetLeft);try{g.focusVisible=t.matches(`:focus-visible`)}catch{}},j=B(()=>[i.b(),i.m(o.value),i.is(`block`,n.block)]),M=B(()=>({width:n.direction===`vertical`?`100%`:`${g.width}px`,height:n.direction===`vertical`?`${g.height}px`:`100%`,transform:n.direction===`vertical`?`translateY(${g.translateY}px)`:`translateX(${g.translateX}px)`,display:g.isInit?`block`:`none`})),N=B(()=>[i.e(`item-selected`),i.is(`disabled`,w(D(n.modelValue))),i.is(`focus-visible`,g.focusVisible)]),P=B(()=>n.name||a.value);return gt(p,A),C(h,A),C(()=>n.options,A,{deep:!0,flush:`post`}),C(()=>n.modelValue,()=>{A(),n.validateEvent&&l?.validate?.(`change`).catch(Me)},{flush:`post`}),(t,n)=>e.options.length?(k(),U(`div`,{key:0,id:K(d),ref_key:`segmentedRef`,ref:p,class:T(j.value),role:`radiogroup`,"aria-label":K(f)?void 0:e.ariaLabel||`segmented`,"aria-labelledby":K(f)?K(l).labelId:void 0},[G(`div`,{class:T([K(i).e(`group`),K(i).m(e.direction)])},[G(`div`,{style:tt(M.value),class:T(N.value)},null,6),(k(!0),U(ve,null,_(e.options,(e,n)=>(k(),U(`label`,{key:n,class:T(O(e))},[G(`input`,{class:T(K(i).e(`item-input`)),type:`radio`,name:P.value,disabled:w(e),checked:E(e),onChange:t=>v(t,e)},null,42,Xh),G(`div`,{class:T(K(i).e(`item-label`))},[x(t.$slots,`default`,{item:e},()=>[Pe(s(S(e)),1)])],2)],2))),128))],2)],10,Yh)):V(`v-if`,!0)}})),Qh=(e,t)=>{let n=e.toLowerCase();return(t.label||t.value||``).toLowerCase().includes(n)},$h=(e,t,n)=>{let{selectionEnd:r}=e;if(r===null)return;let i=e.value,a=lr(t),o=-1,s;for(let e=r-1;e>=0;--e){let t=i[e];if(o===-1&&(t===n||t===` -`||t===`\r`)){o=e;continue}if(a.includes(t)){let n=o===-1?r:o;s={pattern:i.slice(e+1,n),start:e+1,end:n,prefix:t,prefixIndex:e,splitIndex:o,selectionEnd:r};break}}return s},eg=(e,t={debug:!1,useSelectionEnd:!1})=>{let n=e.selectionStart===null?0:e.selectionStart,r=e.selectionEnd===null?0:e.selectionEnd,i=t.useSelectionEnd?r:n,a=`direction.boxSizing.width.height.overflowX.overflowY.borderTopWidth.borderRightWidth.borderBottomWidth.borderLeftWidth.borderStyle.paddingTop.paddingRight.paddingBottom.paddingLeft.fontStyle.fontVariant.fontWeight.fontStretch.fontSize.fontSizeAdjust.lineHeight.fontFamily.textAlign.textTransform.textIndent.textDecoration.letterSpacing.wordSpacing.tabSize.MozTabSize`.split(`.`);if(t.debug){let e=document.querySelector(`#input-textarea-caret-position-mirror-div`);e?.parentNode&&e.parentNode.removeChild(e)}let o=document.createElement(`div`);o.id=`input-textarea-caret-position-mirror-div`,document.body.appendChild(o);let s=o.style,c=window.getComputedStyle(e),l=e.nodeName===`INPUT`;s.whiteSpace=l?`nowrap`:`pre-wrap`,l||(s.wordWrap=`break-word`),s.position=`absolute`,t.debug||(s.visibility=`hidden`),a.forEach(e=>{if(l&&e===`lineHeight`)if(c.boxSizing===`border-box`){let e=Number.parseInt(c.height),t=Number.parseInt(c.paddingTop)+Number.parseInt(c.paddingBottom)+Number.parseInt(c.borderTopWidth)+Number.parseInt(c.borderBottomWidth),n=t+Number.parseInt(c.lineHeight);e>n?s.lineHeight=`${e-t}px`:e===n?s.lineHeight=c.lineHeight:s.lineHeight=`0`}else s.lineHeight=c.height;else s[e]=c[e]}),wt()?e.scrollHeight>Number.parseInt(c.height)&&(s.overflowY=`scroll`):s.overflow=`hidden`,o.textContent=e.value.slice(0,Math.max(0,i)),l&&o.textContent&&(o.textContent=o.textContent.replace(/\s/g,`\xA0`));let u=document.createElement(`span`);u.textContent=e.value.slice(Math.max(0,i))||`.`,u.style.position=`relative`,u.style.left=`${-e.scrollLeft}px`,u.style.top=`${-e.scrollTop}px`,o.appendChild(u);let d={top:u.offsetTop+Number.parseInt(c.borderTopWidth),left:u.offsetLeft+Number.parseInt(c.borderLeftWidth),height:Number.parseInt(c.fontSize)*1.5};return t.debug?u.style.backgroundColor=`#aaa`:document.body.removeChild(o),d.left>=e.clientWidth&&(d.left=e.clientWidth),d},tg=R({...Ft,options:{type:h(Array),default:()=>[]},prefix:{type:h([String,Array]),default:`@`,validator:e=>D(e)?e.length===1:e.every(e=>D(e)&&e.length===1)},split:{type:String,default:` `,validator:e=>e.length===1},filterOption:{type:h([Boolean,Function]),default:()=>Qh,validator:e=>e===!1||qe(e)},placement:{type:h(String),default:`bottom`},showArrow:Boolean,offset:{type:Number,default:0},whole:Boolean,checkIsWhole:{type:h(Function)},modelValue:String,loading:Boolean,popperClass:Mr.popperClass,popperStyle:Mr.popperStyle,popperOptions:{type:h(Object),default:()=>({})},props:{type:h(Object),default:()=>rg}}),ng={[Kt]:e=>D(e),"whole-remove":(e,t)=>D(e)&&D(t),input:e=>D(e),search:(e,t)=>D(e)&&D(t),select:(e,t)=>m(e)&&D(t),focus:e=>e instanceof FocusEvent,blur:e=>e instanceof FocusEvent},rg={value:`value`,label:`label`,disabled:`disabled`},ig=R({options:{type:h(Array),default:()=>[]},loading:Boolean,disabled:Boolean,contentId:String,ariaLabel:String}),ag={select:e=>D(e.value)},og=[`id`,`aria-disabled`,`aria-selected`,`onMousemove`,`onClick`],sg=Se({name:`ElMentionDropdown`,__name:`mention-dropdown`,props:ig,emits:ag,setup(e,{expose:t,emit:n}){let r=e,i=n,a=u(`mention`),{t:o}=on(),c=H(-1),l=H(),d=H(),f=H(),p=(e,t)=>[a.be(`dropdown`,`item`),a.is(`hovering`,c.value===t),a.is(`disabled`,e.disabled||r.disabled)],m=e=>{e.disabled||r.disabled||i(`select`,e)},h=e=>{c.value=e},g=B(()=>r.disabled||r.options.every(e=>e.disabled)),v=B(()=>r.options[c.value]),y=()=>{!v.value||v.value.disabled||r.disabled||i(`select`,v.value)},b=e=>{let{options:t}=r;if(t.length===0||g.value)return;e===`next`?(c.value++,c.value===t.length&&(c.value=0)):e===`prev`&&(c.value--,c.value<0&&(c.value=t.length-1));let n=t[c.value];if(n.disabled){b(e);return}J(()=>w(n))},w=e=>{let{options:t}=r,n=t.findIndex(t=>t.value===e.value),i=d.value?.[n];if(i){let e=f.value?.querySelector?.(`.${a.be(`dropdown`,`wrap`)}`);e&&dt(e,i)}l.value?.handleScroll()};return C(()=>r.options,()=>{g.value||r.options.length===0?c.value=-1:c.value=r.options.findIndex(e=>!e.disabled)},{immediate:!0}),t({hoveringIndex:c,navigateOptions:b,selectHoverOption:y,hoverOption:v}),(t,n)=>(k(),U(`div`,{ref_key:`dropdownRef`,ref:f,class:T(K(a).b(`dropdown`))},[t.$slots.header?(k(),U(`div`,{key:0,class:T(K(a).be(`dropdown`,`header`))},[x(t.$slots,`header`)],2)):V(`v-if`,!0),ue(W(K(kr),{id:e.contentId,ref_key:`scrollbarRef`,ref:l,tag:`ul`,"wrap-class":K(a).be(`dropdown`,`wrap`),"view-class":K(a).be(`dropdown`,`list`),role:`listbox`,"aria-label":e.ariaLabel,"aria-orientation":`vertical`},{default:S(()=>[(k(!0),U(ve,null,_(e.options,(n,r)=>(k(),U(`li`,{id:`${e.contentId}-${r}`,ref_for:!0,ref_key:`optionRefs`,ref:d,key:r,class:T(p(n,r)),role:`option`,"aria-disabled":n.disabled||e.disabled||void 0,"aria-selected":c.value===r,onMousemove:e=>h(r),onClick:lt(e=>m(n),[`stop`])},[x(t.$slots,`label`,{item:n,index:r},()=>[G(`span`,null,s(n.label??n.value),1)])],42,og))),128))]),_:3},8,[`id`,`wrap-class`,`view-class`,`aria-label`]),[[nt,e.options.length>0&&!e.loading]]),e.loading?(k(),U(`div`,{key:1,class:T(K(a).be(`dropdown`,`loading`))},[x(t.$slots,`loading`,{},()=>[Pe(s(K(o)(`el.mention.loading`)),1)])],2)):V(`v-if`,!0),t.$slots.footer?(k(),U(`div`,{key:2,class:T(K(a).be(`dropdown`,`footer`))},[x(t.$slots,`footer`)],2)):V(`v-if`,!0)],2))}}),cg=fe(Se({name:`ElMention`,inheritAttrs:!1,__name:`mention`,props:tg,emits:ng,setup(e,{expose:t,emit:n}){let r=e,i=n,a=B(()=>{let e=qt.props??[];return kt(r,L(e)?e:Object.keys(e))}),o=u(`mention`),s=Fn(),l=Gn(),d=H(),f=H(),p=H(),m=H(!1),h=H(),g=H(),v=B(()=>r.showArrow?r.placement:`${r.placement}-start`),y=B(()=>r.showArrow?[`bottom`,`top`]:[`bottom-start`,`top-start`]),b=B(()=>({...rg,...r.props})),C=e=>{let t={label:e[b.value.label],value:e[b.value.value],disabled:e[b.value.disabled]};return{...e,...t}},w=B(()=>r.options.map(C)),E=B(()=>{let{filterOption:e}=r;return!g.value||!e?w.value:w.value.filter(t=>e(g.value.pattern,t))}),D=B(()=>m.value&&(!!E.value.length||r.loading)),O=B(()=>`${l.value}-${p.value?.hoveringIndex}`),A=e=>{i(Kt,e),i(Wt,e),I()},j=e=>{if(d.value?.isComposing)return;let t=Xt(e);switch(t){case Pt.left:case Pt.right:I();break;case Pt.up:case Pt.down:if(!m.value)return;e.preventDefault(),p.value?.navigateOptions(t===Pt.up?`prev`:`next`);break;case Pt.enter:case Pt.numpadEnter:if(!m.value){r.type!==`textarea`&&I();return}e.preventDefault(),p.value?.hoverOption?p.value?.selectHoverOption():m.value=!1;break;case Pt.esc:if(!m.value)return;e.preventDefault(),m.value=!1;break;case Pt.backspace:if(r.whole&&g.value){let{splitIndex:t,selectionEnd:n,pattern:a,prefixIndex:o,prefix:s}=g.value,c=F();if(!c)return;let l=c.value,u=w.value.find(e=>e.value===a);if((qe(r.checkIsWhole)?r.checkIsWhole(a,s):u)&&t!==-1&&t+1===n){e.preventDefault();let n=l.slice(0,o)+l.slice(t+1);i(Kt,n),i(Wt,n),i(`whole-remove`,a,s);let r=o;J(()=>{c.selectionStart=r,c.selectionEnd=r,re()})}}}},{wrapperRef:M}=Jt(d,{disabled:s,afterFocus(){I()},beforeBlur(e){return f.value?.isFocusInsideContent(e)},afterBlur(){m.value=!1}}),N=()=>{I()},P=e=>r.options.find(t=>e.value===t[b.value.value]),ee=e=>{if(!g.value)return;let t=F();if(!t)return;let n=t.value,{split:a}=r,o=n.slice(g.value.end),s=o.startsWith(a),c=`${e.value}${s?``:a}`,l=n.slice(0,g.value.start)+c+o;i(Kt,l),i(Wt,l),i(`select`,P(e),g.value.prefix);let u=g.value.start+c.length+ +!!s;J(()=>{t.selectionStart=u,t.selectionEnd=u,t.focus(),re()})},F=()=>r.type===`textarea`?d.value?.textarea:d.value?.input,I=()=>{setTimeout(()=>{ne(),re(),J(()=>f.value?.updatePopper())},0)},ne=()=>{let e=F();if(!e)return;let t=eg(e),n=e.getBoundingClientRect(),r=M.value.getBoundingClientRect();h.value={position:`absolute`,width:0,height:`${t.height}px`,left:`${t.left+n.left-r.left}px`,top:`${t.top+n.top-r.top}px`}},re=()=>{let e=F();if(document.activeElement!==e){m.value=!1;return}let{prefix:t,split:n}=r;if(g.value=$h(e,t,n),g.value&&g.value.splitIndex===-1){m.value=!0,i(`search`,g.value.pattern,g.value.prefix);return}m.value=!1};return t({input:d,tooltip:f,dropdownVisible:D}),(t,n)=>(k(),U(`div`,{ref_key:`wrapperRef`,ref:M,class:T(K(o).b())},[W(K(qt),c(c(a.value,t.$attrs),{ref_key:`elInputRef`,ref:d,"model-value":e.modelValue,disabled:K(s),role:D.value?`combobox`:void 0,"aria-activedescendant":D.value?O.value||``:void 0,"aria-controls":D.value?K(l):void 0,"aria-expanded":D.value||void 0,"aria-label":e.ariaLabel,"aria-autocomplete":D.value?`none`:void 0,"aria-haspopup":D.value?`listbox`:void 0,onInput:A,onKeydown:j,onMousedown:N}),_e({_:2},[_(t.$slots,(e,n)=>({name:n,fn:S(e=>[x(t.$slots,n,te(We(e)))])}))]),1040,[`model-value`,`disabled`,`role`,`aria-activedescendant`,`aria-controls`,`aria-expanded`,`aria-label`,`aria-autocomplete`,`aria-haspopup`]),W(K(Cr),{ref_key:`tooltipRef`,ref:f,visible:D.value,"popper-class":[K(o).e(`popper`),e.popperClass],"popper-style":e.popperStyle,"popper-options":e.popperOptions,placement:v.value,"fallback-placements":y.value,effect:`light`,pure:``,offset:e.offset,"show-arrow":e.showArrow},{default:S(()=>[G(`div`,{style:tt(h.value)},null,4)]),content:S(()=>[W(sg,{ref_key:`dropdownRef`,ref:p,options:E.value,disabled:K(s),loading:e.loading,"content-id":K(l),"aria-label":e.ariaLabel,onSelect:ee,onClick:n[0]||=lt(e=>d.value?.focus(),[`stop`])},_e({_:2},[_(t.$slots,(e,n)=>({name:n,fn:S(e=>[x(t.$slots,n,te(We(e)))])}))]),1032,[`options`,`disabled`,`loading`,`content-id`,`aria-label`])]),_:3},8,[`visible`,`popper-class`,`popper-style`,`popper-options`,`placement`,`fallback-placements`,`offset`,`show-arrow`])],2))}})),lg=R({layout:{type:String,default:`horizontal`,values:[`horizontal`,`vertical`]},lazy:Boolean}),ug={resizeStart:(e,t)=>!0,resize:(e,t)=>!0,resizeEnd:(e,t)=>!0,collapse:(e,t,n)=>!0},dg=R({min:{type:[String,Number]},max:{type:[String,Number]},size:{type:[String,Number]},resizable:{type:Boolean,default:!0},collapsible:Boolean}),fg={"update:size":e=>typeof e==`number`||typeof e==`string`};function pg(e){let t=H(),{width:n,height:r}=Dt(t);return{containerEl:t,containerSize:B(()=>e.value===`horizontal`?n.value:r.value)}}function mg(e){return Number(e.slice(0,-1))/100}function hg(e){return Number(e.slice(0,-2))}function gg(e){return D(e)&&e.endsWith(`%`)}function _g(e){return D(e)&&e.endsWith(`px`)}function vg(e,t){let n=B(()=>e.value.map(e=>e.size)),r=B(()=>e.value.length),i=H([]);C([n,r,t],()=>{let n=[],a=0;for(let i=0;ie+(t||0),0);if(o>1||!a){let e=1/o;n=n.map(t=>t===void 0?0:t*e)}else{let e=(1-o)/a;n=n.map(t=>t===void 0?e:t)}i.value=n});let a=e=>e*t.value;return{percentSizes:i,pxSizes:B(()=>i.value.map(a))}}function yg(e,t,n,r){let i=e=>e*t.value||0;function a(e,t){return gg(e)?i(mg(e)):_g(e)?hg(e):e??t}let o=H(0),s=H(null),c=[],l=Me,u=B(()=>e.value.map(e=>[e.min,e.max]));C(r,()=>{if(o.value){let e=new MouseEvent(`mouseup`,{bubbles:!0});window.dispatchEvent(e)}});let d=e=>{o.value=0,s.value={index:e,confirmed:!1},c=n.value},f=(n,i)=>{let d=null;if((!s.value||!s.value.confirmed)&&i!==0){if(i>0)d=n,s.value={index:n,confirmed:!0};else for(let e=n;e>=0;--e)if(c[e]>0){d=e,s.value={index:e,confirmed:!0};break}}let f=d??s.value?.index??n,p=[...c],m=f+1,h=a(u.value[f][0],0),g=a(u.value[m][0],0),_=a(u.value[f][1],t.value||0),v=a(u.value[m][1],t.value||0),y=i;p[f]+y_&&(y=_-p[f]),p[m]-y>v&&(y=p[m]-v),p[f]+=y,p[m]-=y,o.value=y,l=()=>{e.value.forEach((e,t)=>{e.size=p[t]}),l=Me},r.value||l()},p=()=>{r.value&&l(),o.value=0,s.value=null,c=[]},m=[];return{lazyOffset:o,onMoveStart:d,onMoving:f,onMoveEnd:p,movingIndex:s,onCollapse:(t,r)=>{m.length||m.push(...n.value.map((e,t)=>e<=0?a(u.value[t]?.[0],0):e));let i=n.value,o=r===`start`?t:t+1,s=r===`start`?t+1:t,c=i[o],l=i[s];if(c!==0&&l!==0)i[o]=0,i[s]+=c,m[t]=c;else{let e=c+l,n=dr(m[t],0,e),r=e-n;i[s]=n,i[o]=r}e.value.forEach((e,t)=>{e.size=i[t]})}}}var bg=Symbol(`splitterRootContextKey`),xg=Se({name:`ElSplitter`,__name:`splitter`,props:lg,emits:ug,setup(e,{emit:t}){let n=u(`splitter`),r=t,i=e,a=Ae(i,`layout`),o=Ae(i,`lazy`),{containerEl:s,containerSize:c}=pg(a),{removeChild:l,children:d,addChild:f,ChildrenSorter:p}=zr(xe(),`ElSplitterPanel`);C(d,()=>{_.value=null,d.value.forEach((e,t)=>{e.setIndex(t)})});let{percentSizes:m,pxSizes:h}=vg(d,c),{lazyOffset:g,movingIndex:_,onMoveStart:v,onMoving:y,onMoveEnd:b,onCollapse:S}=yg(d,c,h,o),w=B(()=>({[n.cssVarBlockName(`bar-offset`)]:o.value?`${g.value}px`:void 0}));return P(bg,Ne({panels:d,percentSizes:m,pxSizes:h,layout:a,lazy:o,movingIndex:_,containerSize:c,onMoveStart:e=>{v(e),r(`resizeStart`,e,h.value)},onMoving:(e,t)=>{y(e,t),o.value||r(`resize`,e,h.value)},onMoveEnd:async e=>{b(),await J(),r(`resizeEnd`,e,h.value)},onCollapse:(e,t)=>{S(e,t),r(`collapse`,e,t,h.value)},registerPanel:f,unregisterPanel:l})),(e,t)=>(k(),U(`div`,{ref_key:`containerEl`,ref:s,class:T([K(n).b(),K(n).e(a.value)]),style:tt(w.value)},[x(e.$slots,`default`),W(K(p)),V(` Prevent iframe touch events from breaking `),K(_)?(k(),U(`div`,{key:0,class:T([K(n).e(`mask`),K(n).e(`mask-${a.value}`)])},null,2)):V(`v-if`,!0)],6))}});function Sg(e){return e&&m(e)?e:{start:!!e,end:!!e}}function Cg(e,t,n,r){return!!(e?.collapsible.end&&t>0||n?.collapsible.start&&r===0&&t>0)}var wg=Se({name:`ElSplitterBar`,__name:`split-bar`,props:{index:{type:Number,required:!0},layout:{type:String,values:[`horizontal`,`vertical`],default:`horizontal`},resizable:{type:Boolean,default:!0},lazy:Boolean,startCollapsible:Boolean,endCollapsible:Boolean},emits:[`moveStart`,`moving`,`moveEnd`,`collapse`],setup(e,{emit:t}){let n=u(`splitter-bar`),r=e,i=t,a=B(()=>r.layout===`horizontal`),o=B(()=>a.value?{width:0}:{height:0}),s=B(()=>({width:a.value?`16px`:`100%`,height:a.value?`100%`:`16px`,cursor:r.resizable?a.value?`ew-resize`:`ns-resize`:`auto`,touchAction:`none`})),c=B(()=>{let e=n.e(`dragger`);return{[`${e}-horizontal`]:a.value,[`${e}-vertical`]:!a.value,[`${e}-active`]:!!l.value}}),l=H(null),d=e=>{r.resizable&&(l.value=[e.pageX,e.pageY],i(`moveStart`,r.index),window.addEventListener(`mouseup`,h),window.addEventListener(`mousemove`,p))},f=e=>{if(r.resizable&&e.touches.length===1){e.preventDefault();let t=e.touches[0];l.value=[t.pageX,t.pageY],i(`moveStart`,r.index),window.addEventListener(`touchend`,g),window.addEventListener(`touchmove`,m)}},p=e=>{let{pageX:t,pageY:n}=e,o=t-l.value[0],s=n-l.value[1],c=a.value?o:s;i(`moving`,r.index,c)},m=e=>{if(e.touches.length===1){e.preventDefault();let t=e.touches[0],n=t.pageX-l.value[0],o=t.pageY-l.value[1],s=a.value?n:o;i(`moving`,r.index,s)}},h=()=>{l.value=null,window.removeEventListener(`mouseup`,h),window.removeEventListener(`mousemove`,p),i(`moveEnd`,r.index)},g=()=>{l.value=null,window.removeEventListener(`touchend`,g),window.removeEventListener(`touchmove`,m),i(`moveEnd`,r.index)},_=B(()=>a.value?Ze:Ye),v=B(()=>a.value?pe:Ue);return(t,r)=>(k(),U(`div`,{class:T([K(n).b()]),style:tt(o.value)},[e.startCollapsible?(k(),U(`div`,{key:0,class:T([K(n).e(`collapse-icon`),K(n).e(`${e.layout}-collapse-icon-start`)]),onClick:r[0]||=t=>i(`collapse`,e.index,`start`)},[x(t.$slots,`start-collapsible`,{},()=>[(k(),q(et(_.value),{style:{width:`12px`,height:`12px`}}))])],2)):V(`v-if`,!0),G(`div`,{class:T([K(n).e(`dragger`),c.value,K(n).is(`disabled`,!e.resizable),K(n).is(`lazy`,e.resizable&&e.lazy)]),style:tt(s.value),onMousedown:d,onTouchstart:f},null,38),e.endCollapsible?(k(),U(`div`,{key:1,class:T([K(n).e(`collapse-icon`),K(n).e(`${e.layout}-collapse-icon-end`)]),onClick:r[1]||=t=>i(`collapse`,e.index,`end`)},[x(t.$slots,`end-collapsible`,{},()=>[(k(),q(et(v.value),{style:{width:`12px`,height:`12px`}}))])],2)):V(`v-if`,!0)],6))}}),Tg=`ElSplitterPanel`,Eg=Se({name:Tg,__name:`split-panel`,props:dg,emits:fg,setup(e,{expose:t,emit:n}){let r=u(`splitter-panel`),i=e,a=n,o=Xe(bg);o||bn(Tg,`usage: `);let{panels:s,layout:l,lazy:f,containerSize:p,pxSizes:m}=Ve(o),{registerPanel:h,unregisterPanel:g,onCollapse:_,onMoveEnd:v,onMoveStart:y,onMoving:b}=o,w=H(),T=xe(),E=T.uid,D=H(0),O=B(()=>s.value[D.value]),A=e=>{D.value=e},j=B(()=>O.value?m.value[D.value]??0:0),M=B(()=>O.value?m.value[D.value+1]??0:0),N=B(()=>O.value?s.value[D.value+1]:null),P=B(()=>N.value?i.resizable&&N.value?.resizable&&(j.value!==0||!i.min)&&(M.value!==0||!N.value.min):!1),ee=B(()=>O.value?D.value!==s.value.length-1:!1),F=B(()=>Cg(O.value,j.value,N.value,M.value)),I=B(()=>Cg(N.value,M.value,O.value,j.value));function te(e){return gg(e)?mg(e)*p.value||0:_g(e)?hg(e):e??0}let ne=!1;C(()=>i.size,()=>{if(!ne&&O.value){if(!p.value){O.value.size=i.size;return}let e=te(i.size),t=te(i.max),n=te(i.min),r=Math.min(Math.max(e,n||0),t||e);r!==e&&a(`update:size`,r),O.value.size=r}}),C(()=>O.value?.size,e=>{e!==i.size&&(ne=!0,a(`update:size`,e),J(()=>ne=!1))}),C(()=>i.resizable,e=>{O.value&&(O.value.resizable=e)});let re=Ne({uid:E,getVnode:()=>T.vnode,setIndex:A,...i,collapsible:B(()=>Sg(i.collapsible))});return h(re),d(()=>g(re)),t({splitterPanelRef:w}),(e,t)=>(k(),U(ve,null,[G(`div`,c({ref_key:`panelEl`,ref:w,class:[K(r).b()],style:{flexBasis:`${j.value}px`}},e.$attrs),[x(e.$slots,`default`)],16),ee.value?(k(),q(wg,{key:0,index:D.value,layout:K(l),lazy:K(f),resizable:P.value,"start-collapsible":F.value,"end-collapsible":I.value,onMoveStart:K(y),onMoving:K(b),onMoveEnd:K(v),onCollapse:K(_)},{"start-collapsible":S(()=>[x(e.$slots,`start-collapsible`)]),"end-collapsible":S(()=>[x(e.$slots,`end-collapsible`)]),_:3},8,[`index`,`layout`,`lazy`,`resizable`,`start-collapsible`,`end-collapsible`,`onMoveStart`,`onMoving`,`onMoveEnd`,`onCollapse`])):V(`v-if`,!0)],64))}}),Dg=fe(xg,{SplitPanel:Eg}),Og=me(Eg),kg=`ElInfiniteScroll`,Ag={delay:{type:Number,default:200},distance:{type:Number,default:0},disabled:{type:Boolean,default:!1},immediate:{type:Boolean,default:!0}},jg=(e,t)=>Object.entries(Ag).reduce((n,[r,i])=>{let{type:a,default:o}=i,s=e.getAttribute(`infinite-scroll-${r}`),c=t[s]??s??o;return c=c!==`false`&&c,c=a(c),n[r]=Number.isNaN(c)?o:c,n},{}),Mg=e=>{let{observer:t}=e[kg];t&&(t.disconnect(),delete e[kg].observer)},Ng=(e,t)=>{let{container:n,containerEl:r,instance:i,observer:a,lastScrollTop:o}=e[kg],{disabled:s,distance:c}=jg(e,i),{clientHeight:l,scrollHeight:u,scrollTop:d}=r,f=d-o;if(e[kg].lastScrollTop=d,a||s||f<0)return;let p=!1;if(n===e)p=u-(l+d)<=c;else{let{clientTop:t,scrollHeight:n}=e,i=ei(e,r);p=d+l>=i+t+n-c}p&&t.call(i)};function Pg(e,t){let{containerEl:n,instance:r}=e[kg],{disabled:i}=jg(e,r);i||n.clientHeight===0||(n.scrollHeight<=n.clientHeight?t.call(r):Mg(e))}var Fg={async mounted(e,t){let{instance:n,value:r}=t;pn({scope:kg,from:`the directive v-infinite-scroll`,replacement:`the el-scrollbar infinite scroll`,version:`3.0.0`,ref:`https://element-plus.org/en-US/component/scrollbar#infinite-scroll`},!0),qe(r)||bn(kg,`'v-infinite-scroll' binding value must be a function`),await J();let{delay:i,immediate:a}=jg(e,n),o=pt(e,!0),s=o===window?document.documentElement:o,c=br(Ng.bind(null,e,r),i);if(o){if(e[kg]={instance:n,container:o,containerEl:s,delay:i,cb:r,onScroll:c,lastScrollTop:s.scrollTop},a){let t=new MutationObserver(br(Pg.bind(null,e,r),50));e[kg].observer=t,t.observe(e,{childList:!0,subtree:!0}),Pg(e,r)}o.addEventListener(`scroll`,c)}},unmounted(e){if(!e.ElInfiniteScroll)return;let{container:t,onScroll:n}=e[kg];t?.removeEventListener(`scroll`,n),Mg(e)},async updated(e){if(!e.ElInfiniteScroll)await J();else{let{containerEl:t,cb:n,observer:r}=e[kg];t.clientHeight&&r&&Pg(e,n)}}};Fg.install=e=>{e.directive(`InfiniteScroll`,Fg)};var Ig=Fg,Lg={install(e){Ni._context=e._context,Pi._context=e._context,e.directive(`loading`,Pi),e.config.globalProperties.$loading=Ni},directive:Pi,service:Ni},Rg=[`primary`,`success`,`info`,`warning`,`error`],zg=R({customClass:{type:String,default:``},dangerouslyUseHTMLString:Boolean,duration:{type:Number,default:4500},icon:{type:En},id:{type:String,default:``},message:{type:h([String,Object,Function]),default:``},offset:{type:Number,default:0},onClick:{type:h(Function),default:()=>void 0},onClose:{type:h(Function),required:!0},position:{type:String,values:[`top-right`,`top-left`,`bottom-right`,`bottom-left`],default:`top-right`},showClose:{type:Boolean,default:!0},title:{type:String,default:``},type:{type:String,values:[...Rg,``],default:``},zIndex:Number,closeIcon:{type:En,default:b}}),Bg={destroy:()=>!0},Vg=[`id`],Hg=[`textContent`],Ug={key:0},Wg=[`innerHTML`],Gg=Se({name:`ElNotification`,__name:`notification`,props:zg,emits:Bg,setup(e,{expose:t}){let n=e,{ns:r,zIndex:a}=Nn(`notification`),{nextZIndex:o,currentZIndex:c}=a,l=H(!1),u,d=B(()=>{let e=n.type;return e&&Ln[n.type]?r.m(e):``}),f=B(()=>n.type&&Ln[n.type]||n.icon),p=B(()=>n.position.endsWith(`right`)?`right`:`left`),m=B(()=>n.position.startsWith(`top`)?`top`:`bottom`),h=B(()=>({[m.value]:`${n.offset}px`,zIndex:n.zIndex??c.value}));function g(){n.duration>0&&({stop:u}=Pn(()=>{l.value&&v()},n.duration))}function _(){u?.()}function v(){l.value=!1}function y(e){switch(Xt(e)){case Pt.delete:case Pt.backspace:_();break;case Pt.esc:l.value&&v();break;default:g()}}return i(()=>{g(),o(),l.value=!0}),_t(document,`keydown`,y),t({visible:l,close:v}),(t,n)=>(k(),q(ct,{name:K(r).b(`fade`),onBeforeLeave:e.onClose,onAfterLeave:n[1]||=e=>t.$emit(`destroy`),persisted:``},{default:S(()=>[ue(G(`div`,{id:e.id,class:T([K(r).b(),e.customClass,p.value]),style:tt(h.value),role:`alert`,onMouseenter:_,onMouseleave:g,onClick:n[0]||=(...t)=>e.onClick&&e.onClick(...t)},[f.value?(k(),q(K(Hn),{key:0,class:T([K(r).e(`icon`),d.value])},{default:S(()=>[(k(),q(et(f.value)))]),_:1},8,[`class`])):V(`v-if`,!0),G(`div`,{class:T(K(r).e(`group`))},[G(`h2`,{class:T(K(r).e(`title`)),textContent:s(e.title)},null,10,Hg),ue(G(`div`,{class:T(K(r).e(`content`)),style:tt(e.title?void 0:{margin:0})},[x(t.$slots,`default`,{},()=>[e.dangerouslyUseHTMLString?(k(),U(ve,{key:1},[V(` Caution here, message could've been compromised, never use user's input as message `),G(`p`,{innerHTML:e.message},null,8,Wg)],2112)):(k(),U(`p`,Ug,s(e.message),1))])],6),[[nt,e.message]]),e.showClose?(k(),q(K(Hn),{key:0,class:T(K(r).e(`closeBtn`)),onClick:lt(v,[`stop`])},{default:S(()=>[(k(),q(et(e.closeIcon)))]),_:1},8,[`class`])):V(`v-if`,!0)],2)],46,Vg),[[nt,l.value]])]),_:3},8,[`name`,`onBeforeLeave`]))}}),Kg={"top-left":[],"top-right":[],"bottom-left":[],"bottom-right":[]},qg=16,Jg=1,Yg=function(e={},t){if(!cn)return{close:()=>void 0};(D(e)||re(e))&&(e={message:e});let n=e.position||`top-right`,r=e.offset||0;Kg[n].forEach(({vm:e})=>{r+=(e.el?.offsetHeight||0)+qg}),r+=qg;let i=`notification_${Jg++}`,a=e.onClose,o={...e,offset:r,id:i,onClose:()=>{Xg(i,n,a)}},s=document.body;N(e.appendTo)?s=e.appendTo:D(e.appendTo)&&(s=document.querySelector(e.appendTo)),N(s)||(On(`ElNotification`,`the appendTo option is not an HTMLElement. Falling back to document.body.`),s=document.body);let c=document.createElement(`div`),l=W(Gg,o,qe(o.message)?o.message:re(o.message)?()=>o.message:null);return l.appContext=A(t)?Yg._context:t,l.props.onDestroy=()=>{rt(null,c)},rt(l,c),Kg[n].push({vm:l}),s.appendChild(c.firstElementChild),{close:()=>{l.component.exposed.visible.value=!1}}};Rg.forEach(e=>{Yg[e]=(t={},n)=>((D(t)||re(t))&&(t={message:t}),Yg({...t,type:e},n))});function Xg(e,t,n){let r=Kg[t],i=r.findIndex(({vm:t})=>t.component?.props.id===e);if(i===-1)return;let{vm:a}=r[i];if(!a)return;n?.(a);let o=a.el.offsetHeight,s=t.split(`-`)[0];r.splice(i,1);let c=r.length;if(!(c<1))for(let e=i;e{e.component.exposed.visible.value=!1})}function Qg(e=`top-right`){let t=Kg[e][0]?.vm.component?.props?.offset||0;for(let{vm:n}of Kg[e])n.component.props.offset=t,t+=(n.el?.offsetHeight||0)+qg}Yg.closeAll=Zg,Yg.updateOffsets=Qg,Yg._context=null;var $g=Qe(Yg,`$notify`),e_=R({trigger:Ar.trigger,triggerKeys:Ar.triggerKeys,placement:hi.placement,disabled:Ar.disabled,visible:Mr.visible,transition:Mr.transition,popperOptions:hi.popperOptions,tabindex:hi.tabindex,content:Mr.content,popperStyle:Mr.popperStyle,popperClass:Mr.popperClass,enterable:{...Mr.enterable,default:!0},effect:{...Mr.effect,default:`light`},teleported:Mr.teleported,appendTo:Mr.appendTo,title:String,width:{type:[String,Number],default:150},offset:{type:Number,default:void 0},showAfter:{type:Number,default:0},hideAfter:{type:Number,default:200},autoClose:{type:Number,default:0},showArrow:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},"onUpdate:visible":{type:Function}}),t_={"update:visible":e=>f(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0},n_=`onUpdate:visible`,r_=Se({name:`ElPopover`,__name:`popover`,props:e_,emits:t_,setup(e,{expose:t,emit:n}){let r=e,i=n,a=B(()=>r[n_]),o=u(`popover`),l=H(),d=B(()=>K(l)?.popperRef),f=B(()=>[{width:hn(r.width)},r.popperStyle]),p=B(()=>[o.b(),r.popperClass,{[o.m(`plain`)]:!!r.content}]),m=B(()=>r.transition===`${o.namespace.value}-fade-in-linear`),h=()=>{l.value?.hide()},g=()=>{i(`before-enter`)},_=()=>{i(`before-leave`)},v=()=>{i(`after-enter`)},y=()=>{i(`update:visible`,!1),i(`after-leave`)};return t({popperRef:d,hide:h}),(t,n)=>(k(),q(K(Cr),c({ref_key:`tooltipRef`,ref:l},t.$attrs,{trigger:e.trigger,"trigger-keys":e.triggerKeys,placement:e.placement,disabled:e.disabled,visible:e.visible,transition:e.transition,"popper-options":e.popperOptions,tabindex:e.tabindex,content:e.content,offset:e.offset,"show-after":e.showAfter,"hide-after":e.hideAfter,"auto-close":e.autoClose,"show-arrow":e.showArrow,"aria-label":e.title,effect:e.effect,enterable:e.enterable,"popper-class":p.value,"popper-style":f.value,teleported:e.teleported,"append-to":e.appendTo,persistent:e.persistent,"gpu-acceleration":m.value,"onUpdate:visible":a.value,onBeforeShow:g,onBeforeHide:_,onShow:v,onHide:y}),{content:S(()=>[e.title?(k(),U(`div`,{key:0,class:T(K(o).e(`title`)),role:`title`},s(e.title),3)):V(`v-if`,!0),x(t.$slots,`default`,{hide:h},()=>[Pe(s(e.content),1)])]),default:S(()=>[t.$slots.reference?x(t.$slots,`reference`,{key:0}):V(`v-if`,!0)]),_:3},16,[`trigger`,`trigger-keys`,`placement`,`disabled`,`visible`,`transition`,`popper-options`,`tabindex`,`content`,`offset`,`show-after`,`hide-after`,`auto-close`,`show-arrow`,`aria-label`,`effect`,`enterable`,`popper-class`,`popper-style`,`teleported`,`append-to`,`persistent`,`gpu-acceleration`,`onUpdate:visible`]))}}),i_=(e,t)=>{let n=(t.arg||t.value)?.popperRef;n&&(n.triggerRef=e)},a_=Ke({mounted(e,t){i_(e,t)},updated(e,t){i_(e,t)}},`popover`),o_=fe(r_,{directive:a_}),s_=`2.14.3`,c_=(e=[])=>({version:s_,install:(t,n)=>{t[Fi]||(t[Fi]=!0,e.forEach(e=>t.use(e)),n&&Bn(n,t,!0))}}),l_=[jo,Br,Ro,sp,Hr,Vr,Uo,Vt,Xo,Zo,Kr,Wr,vs,Yr,Xr,Zr,cl,el,ul,oi,ii,ai,di,Tl,El,fi,ru,su,Qo,pu,mu,hu,gu,_u,rn,en,Yn,Jn,pi,Du,Qr,mi,vi,bi,Si,gr,mr,Hn,xr,yr,qt,Ci,Iu,Bu,Wu,xi,_i,yi,gi,Ju,wi,Xu,o_,wr,Ti,li,si,ci,td,Ei,ui,kr,nr,ir,er,Cd,Fr,Pr,Ud,Xd,xu,Tu,Di,Oi,ki,cr,sr,op,ti,ri,Jr,ji,or,yp,Tp,Ep,Cr,Up,Mi,em,Cm,nh,dh,Nh,Ph,Wh,Gh,Zh,cg,Dg,Og],u_=[Ig,Lg,Ut,ur,$g,a_],d_=c_([...l_,...u_]);d_.install,d_.version;var f_=d_,p_={coreVersion:`4.4.19`,uiVersion:``,tableVersion:``,designVersion:``,ganttVersion:``},m_={keyId:1,cookies:{path:`/`},treeOptions:{parentKey:`parentId`,key:`id`,children:`children`},parseDateFormat:`yyyy-MM-dd HH:mm:ss`,firstDayOfWeek:1};function h_(e,t,n){if(e)if(e.forEach)e.forEach(t,n);else for(var r=0,i=e.length;r1?function(t){r.push([``+t,e[t]])}:function(){r.push(arguments[t])})}return r}}var T_=w_(`keys`,1);function E_(e,t){var n=e.__proto__.constructor;return t?new n(t):new n}function D_(e,t){return t?O_(e,t):e}function O_(e,t){if(e)switch(g_.call(e)){case`[object Object]`:var n=Object.create(Object.getPrototypeOf(e));return b_(e,function(e,r){n[r]=D_(e,t)}),n;case`[object Date]`:case`[object RegExp]`:return E_(e,e.valueOf());case`[object Array]`:case`[object Arguments]`:var r=[];return h_(e,function(e){r.push(D_(e,t))}),r;case`[object Set]`:var i=E_(e);return i.forEach(function(e){i.add(D_(e,t))}),i;case`[object Map]`:var a=E_(e);return a.forEach(function(e,n){a.set(n,D_(e,t))}),a}return e}function k_(e,t){return e&&O_(e,t)}var A_=Object.assign;function j_(e,t,n){for(var r=t.length,i,a=1;a1)return e=v_(e[1])?[]:{},j_(e,t,!0)}else return A_?A_.apply(Object,t):j_(e,t)}return e},N_=function(){};function P_(){h_(arguments,function(e){x_(e,function(e,t){N_[t]=C_(e)?function(){var t=e.apply(N_.$context,arguments);return N_.$context=null,t}:e})})}function F_(e){return M_(m_,e)}function I_(){return m_}var L_=`4.0.12`;N_.VERSION=L_,N_.version=L_,N_.mixin=P_,N_.setup=F_,N_.setConfig=F_,N_.getConfig=I_;function R_(e,t,n){for(var r=e.length-1;r>=0;r--)t.call(n,e[r],r,e)}function z_(e,t,n){R_(T_(e),function(r){t.call(n,e[r],r,e)})}function B_(e){return e===null}function V_(e,t){return function(n){return B_(n)?t:n[e]}}function H_(e,t,n){var r={};if(e)if(t)C_(t)||(t=V_(t)),x_(e,function(i,a){r[a]=t.call(n,i,a,e)});else return e;return r}function U_(e){return e?e.constructor===Object:!1}function W_(e){return e!==`__proto__`&&e!==`constructor`}function G_(e,t){return U_(e)&&U_(t)||v_(e)&&v_(t)?(x_(t,function(n,r){W_(r)&&(e[r]=C_(t)?n:G_(e[r],n))}),e):k_(t,!0)}var K_=function(e){e||={};for(var t=arguments,n=t.length,r,i=1;i1){if(e.map)return e.map(t,n);x_(e,function(){r.push(t.apply(n,arguments))})}return r}function J_(e,t,n,r,i){return function(a,o,s){if(a&&o){if(e&&a[e])return a[e](o,s);if(t&&v_(a)){for(var c=0,l=a.length;ct?1:-1}function pv(e,t,n){return function(r,i){var a=r[e],o=i[e];return a===o?n?n(r,i):0:t.order===dv?fv(o,a):fv(a,o)}}function mv(e,t,n,r){var i=[];return n=v_(n)?n:[n],h_(n,function(n,a){if(n){var o=n,s;v_(n)?(o=n[0],s=n[1]):U_(n)&&(o=n.field,s=n.order),i.push({field:o,order:s||uv}),h_(t,C_(o)?function(t,n){t[a]=o.call(r,t.data,n,e)}:function(e){e[a]=o?sv(e.data,o):e.data})}}),i}function hv(e,t,n){if(e){if(iv(t))return ev(e).sort(fv);for(var r,i=q_(e,function(e){return{data:e}}),a=mv(e,i,t,n),o=a.length-1;o>=0;)r=pv(o,a[o],r),o--;return r&&(i=i.sort(r)),q_(i,V_(`data`))}return[]}var gv=hv;function _v(e,t){return e>=t?e:(e>>=0)+Math.round(Math.random()*((t||9)-e))}var vv=w_(`values`,0);function yv(e){for(var t,n=[],r=vv(e),i=r.length-1;i>=0;i--)t=i>0?_v(0,i):0,n.push(r[t]),r.splice(t,1);return n}function bv(e,t){var n=yv(e);return arguments.length<=1?n[0]:(t=2?Sv(t):0,n=a>=3?Sv(n):e.length,e.slice)return e.slice(t,n);if(t<0&&(t=Math.max(0,e.length+t)),r)return e.substring(t,n);for(;t=0;r--)if(t.call(n,e[r],r,e))return e[r]}}function kv(e,t,n){if(e){var r,i,a=0,o=null,s=n,c=arguments.length>2,l=T_(e);if(e.length&&e.reduce)return i=function(){return t.apply(o,arguments)},c?e.reduce(i,s):e.reduce(i);for(c&&(a=1,s=e[l[0]]),r=l.length;a>0,s=n>>0,c=e.length,l=arguments.length>3?r>>0:c;if(o=0?o:c+o,o>=0&&(s=s>=0?s:c+s,l=l>=0?l:c+l,s>0||1;if(v_(e))if(i>=0&&e.length>i)for(n=0;n1&&(B_(t)||!Gv(t)),a=i?n:t;if(U_(e))b_(e,i?function(n,r){e[r]=t}:function(t,n){Uv(e,n)}),a&&M_(e,a);else if(v_(e)){if(i)for(r=e.length;r>0;)r--,e[r]=t;else e.length=0;a&&e.push.apply(e,a)}}return e}function qv(e){return function(t,n){return n===e}}function Jv(e,t,n){if(e){if(!iv(t)){var r=[],i=[];return C_(t)||(t=qv(t)),x_(e,function(e,i,a){t.call(n,e,i,a)&&r.push(i)}),v_(e)?Wv(r,function(t,n){i.push(e[t]),e.splice(t,1)}):(i={},h_(r,function(t){i[t]=e[t],Uv(e,t)})),i}return Kv(e)}return e}function Yv(e,t){x_(e,function(e){e[t]&&!e[t].length&&Jv(e,t)})}function Xv(e,t){var n=M_({},m_.treeOptions,t),r=n.strict,i=n.key,a=n.parentKey,o=n.children,s=n.mapChildren,c=n.rootValues,l=n.rootParentValue,u=n.sortKey,d=n.reverse,f=n.data,p=[],m={},h={},g={},_={},v={},y=l===void 0,b,x,S,C,w,T,E,D;return u&&(e=hv(k_(e),u),d&&(e=e.reverse())),c&&c.length&&x_(c,function(e){v[e]=1}),x_(e,function(e){b=e[i],C=iv(b)?_:g,C[b]&&Hv(`warn`,`Duplicate primary key=`+b),C[b]=!0}),x_(e,function(e){b=e[i],w=iv(b),f?(x={},x[f]=e):x=e,S=e[a],T=iv(S),E=w?h:m,E[b]=E[b]||[],x[i]=b,x[a]=S,b===S&&(S=null,Hv(`warn`,`Error infinite Loop. key=`+b+` parentKey=`+b)),D=T?h:m,C=T?_:g,D[S]=D[S]||[],D[S].push(x),x[o]=E[b],s&&(x[s]=E[b]),c&&c.length?v[b]&&p.push(x):y?(!r||r&&T)&&(C[S]||p.push(x)):S===l&&p.push(x)}),r&&Yv(e,o),p}function Zv(e,t,n,r){var i=r.key,a=r.parentKey,o=r.children,s=r.data,c=r.updated,l=r.clear;return h_(n,function(n){var u=n[o];s&&(n=n[s]),c!==!1&&(n[a]=t?t[i]:null),e.push(n),u&&u.length&&Zv(e,n,u,r),l&&delete n[o]}),e}function Qv(e,t){return Zv([],null,e,M_({},m_.treeOptions,t))}function $v(e){return function(t,n,r,i){var a=r||{};return e(null,t,n,i,[],[],a.children||`children`,a)}}function ey(e,t,n,r,i,a,o,s){if(t){var c,l,u,d,f,p;for(l=0,u=t.length;l=0;n--)if(t===e[n])return n;return-1}var dy=S_(`number`);function fy(e){return dy(e)&&isNaN(e)}var py=__(`Date`),my=parseInt;function hy(e){return Date.UTC(e.y,e.M||0,e.d||1,e.H||0,e.m||0,e.s||0,e.S||0)}function gy(e){return e.getTime()}function _y(e){return`(\\d{`+e+`})`}function vy(e){return e<10?e*100:e<100?e*10:e}function yy(e){return isNaN(e)?e:my(e)}for(var by=_y(2),xy=_y(`1,2`),Sy=_y(`1,7`),Cy=_y(`3,4`),wy=`.{1}`,Ty=wy+xy,Ey=`(([zZ])|([-+]\\d{2}:?\\d{2}))`,Dy=[Cy,Ty,Ty,Ty,Ty,Ty,wy+Sy,Ey],Oy=[],ky=Dy.length-1;ky>=0;ky--){for(var Ay=``,jy=0;jy=0&&t.call(n,e[r],r,e)!==!1;r--);else for(i=y_(e),r=i.length-1;r>=0&&t.call(n,e[i[r]],i[r],e)!==!1;r--);}}function Ky(e,t){return function(n,r){if(n){if(n[e])return n[e](r);if(Cv(n)||v_(n))return t(n,r);for(var i in n)if(y_(n,i)&&r===n[i])return i}return-1}}var qy=Ky(`indexOf`,ly),Jy=Ky(`lastIndexOf`,uy);function Yy(e){var t=0;return Cv(e)||v_(e)?e.length:(x_(e,function(){t++}),t)}function Xy(e){return dy(e)&&isFinite(e)}var Zy=function(e){return!B_(e)&&!isNaN(e)&&!v_(e)&&e%1==0};function Qy(e){return!B_(e)&&!isNaN(e)&&!v_(e)&&!Zy(e)}var $y=S_(`boolean`),eb=__(`RegExp`),tb=__(`Error`);function nb(e){return e?e.constructor===TypeError:!1}function rb(e){for(var t in e)return!1;return!0}var ib=typeof Symbol!==nv;function ab(e){return ib&&Symbol.isSymbol?Symbol.isSymbol(e):typeof e==`symbol`}var ob=__(`Arguments`);function sb(e){return!!(e&&Cv(e.nodeName)&&dy(e.nodeType))}var cb=typeof document>`u`?0:document;function lb(e){return!!(e&&cb&&e.nodeType===9)}var ub=typeof window>`u`?0:window;function db(e){return!!(ub&&e&&e===e.window)}var fb=typeof FormData!==nv;function pb(e){return fb&&e instanceof FormData}var mb=typeof Map!==nv;function hb(e){return mb&&e instanceof Map}var gb=typeof WeakMap!==nv;function _b(e){return gb&&e instanceof WeakMap}var vb=typeof Set!==nv;function yb(e){return vb&&e instanceof Set}var bb=typeof WeakSet!==nv;function xb(e){return bb&&e instanceof WeakSet}function Sb(e){return function(t,n,r){if(t&&C_(n)){if(v_(t)||Cv(t))return e(t,n,r);for(var i in t)if(y_(t,i)&&n.call(r,t[i],i,t))return i}return-1}}var Cb=Sb(function(e,t,n){for(var r=0,i=e.length;r-1})}else return!0;return Eb(e,t)}function Ob(e,t,n){return C_(n)?wb(e,t,function(e,t,r,i,a){var o=n(e,t,r,i,a);return rv(o)?Tb(e,t):!!o},n):wb(e,t,Tb)}function kb(e){return B_(e)?`null`:ab(e)?`symbol`:py(e)?`date`:v_(e)?`array`:eb(e)?`regexp`:tb(e)?`error`:typeof e}function Ab(e){return``+(iv(e)?``:e)+m_.keyId++}var jb=Sb(function(e,t,n){for(var r=e.length-1;r>=0;r--)if(t.call(n,e[r],r,e))return r;return-1});function Mb(e){if(U_(e))return e;if(Cv(e))try{return JSON.parse(e)}catch{}return{}}function Nb(e){return iv(e)?``:JSON.stringify(e)}var Pb=w_(`entries`,2);function Fb(e,t){return function(n,r){var i,a,o={},s=[],c=this,l=arguments,u=l.length;if(!C_(r)){for(a=1;a-1)?e:t)&&(o[a]=i)}),o}}var Ib=Fb(1,0),Lb=Fb(0,1);function Rb(e){return vv(e)[0]}function zb(e){var t=vv(e);return t[t.length-1]}function Bb(e,t){if(e){if(y_(e,t))return!0;var n,r,i,a,o,s,c=ov(t),l=0,u=c.length;for(o=e;l>0,i=t>>0,r>0||1;rt});function Zb(e){return(e.split(`.`)[1]||``).length}function Qb(e,t){if(e.repeat)return e.repeat(t);var n=isNaN(t)?[]:Array(my(t));return n.join(e)+(n.length>0?e:``)}function $b(e,t){return e.substring(0,t)+`.`+e.substring(t,e.length)}function ex(e){var t=``+e,n=t.match(/^([-+]?)((\d+)|((\d+)?[.](\d+)?))e([-+]{1})([0-9]+)$/);if(n){var r=e<0?`-`:``,i=n[3]||``,a=n[5]||``,o=n[6]||``,s=n[7],c=n[8],l=c-o.length,u=c-i.length,d=c-a.length;return s===`+`?i?r+i+Qb(`0`,c):l>0?r+a+o+Qb(`0`,l):r+a+$b(o,c):i?u>0?r+`0.`+Qb(`0`,Math.abs(u))+i:r+$b(i,u):d>0?r+`0.`+Qb(`0`,Math.abs(d))+a+o:r+$b(a,d)+o}return t}function tx(e,t){var n=ex(e),r=ex(t);return parseInt(n.replace(`.`,``))*parseInt(r.replace(`.`,``))/10**(Zb(n)+Zb(r))}function nx(e,t){return function(n,r,i){var a=Sv(n),o=a;if(a){r>>=0;var s=ex(a).split(`.`),c=s[0],l=s[1]||``,u=l.substring(0,r+1),d=c+(u?`.`+u:``);if(r>=l.length)return Sv(d);if(d=a,r>0){var f=10**r,p=tx(d,f);o=t&&d<0&&i!==!1?-(Math[e](Math.abs(p))/f):Math[e](p)/f}else o=Math[e](d)}return o}}var rx=nx(`round`,!0),ix=nx(`ceil`),ax=nx(`floor`);function ox(e){return dy(e)?ex(e):``+(iv(e)?``:e)}function sx(e,t,n){t>>=0;var r=ox(rx(e,t,n)).split(`.`),i=r[0],a=r[1]||``,o=t-a.length;return t?o>0?i+`.`+a+Qb(`0`,o):i+$b(a,Math.abs(o)):i}function cx(e,t){var n=M_({},m_.commafyOptions,t),r=n.digits,i=dy(e),a,o,s,c,l;return i?(a=(n.ceil?ix:n.floor?ax:rx)(e,r),o=ex(r?sx(a,r):a).split(`.`),c=o[0],l=o[1],s=c&&a<0,s&&(c=c.substring(1,c.length))):(a=ox(e).replace(/,/g,``),o=a?[a]:[],c=o[0]),o.length?(s?`-`:``)+c.replace(RegExp(`(?=(?!(\\b))(.{`+(n.spaceNumber||3)+`})+$)`,`g`),n.separator||`,`)+(l?`.`+l:``):a}var lx=xv(my);function ux(e,t){return tx(Sv(e),Sv(t))}function dx(e,t){var n=ex(e),r=ex(t),i=10**Math.max(Zb(n),Zb(r));return(ux(e,i)+ux(t,i))/i}function fx(e,t){return dx(Sv(e),Sv(t))}function px(e,t){var n=Sv(e),r=Sv(t),i=ex(n),a=ex(r),o=Zb(i),s=Zb(a),c=10**Math.max(o,s),l=o>=s?o:s;return parseFloat(sx((n*c-r*c)/c,l))}function mx(e,t){var n=ex(e),r=ex(t),i=Zb(n),a=Zb(r)-i,o=a<0,s=10**(o?Math.abs(a):a);return ux(n.replace(`.`,``)/r.replace(`.`,``),o?1/s:s)}function hx(e,t){return mx(Sv(e),Sv(t))}function gx(e,t,n){var r=0;return x_(e&&e.length>2&&v_(e)?e.sort():e,t?C_(t)?function(){r=dx(r,t.apply(n,arguments))}:function(e){r=dx(r,sv(e,t))}:function(e){r=dx(r,e)}),r}function _x(e,t,n){return mx(gx(e,t,n),Yy(e))}var vx=`first`,yx=`last`;function bx(e){return e.getFullYear()}var xx=864e5;function Sx(e){return e.getMonth()}function Cx(e){return py(e)&&!isNaN(gy(e))}function wx(e,t,n){var r=t&&!isNaN(t)?t:0;if(e=Vy(e),Cx(e)){if(n===`first`)return new Date(bx(e),Sx(e)+r,1);if(n===`last`)return new Date(gy(wx(e,r+1,vx))-1);if(dy(n)&&e.setDate(n),r){var i=e.getDate();if(e.setMonth(Sx(e)+r),i!==e.getDate())return e.setDate(1),new Date(gy(e)-xx)}}return e}function Tx(e,t,n){var r;if(e=Vy(e),Cx(e)&&(t&&(r=t&&!isNaN(t)?t:0,e.setFullYear(bx(e)+r)),n||!isNaN(n))){if(n===`first`)return new Date(bx(e),0,1);if(n===`last`)return e.setMonth(11),wx(e,0,yx);e.setMonth(n)}return e}function Ex(e){var t=e.getMonth();return t<3?1:t<6?2:t<9?3:4}function Dx(e,t,n){var r,i=t&&!isNaN(t)?t*3:0;return e=Vy(e),Cx(e)?(r=(Ex(e)-1)*3+(n===`last`?2:0),e.setMonth(r),wx(e,i,n)):e}var Ox=xx*7;function kx(e,t,n,r){if(e=Vy(e),Cx(e)){var i=dy(r),a=gy(e),o=i?r:m_.firstDayOfWeek,s=e.getDay(),c=!1,l,u;return n===`first`?(c=!0,u=o):n===`last`?(c=!0,u=(o+6)%7):(u=dy(n)?n:s,c=!0),c&&s!==u&&(l=0,o>s?l=-(7-o+s):oo?((u===0?7:u)-o+l)*xx:u>=0,n=rv(n)?` `:``+n,r.padStart?r.padStart(t,n):t>r.length?(t-=r.length,t>n.length&&(n+=Qb(n,t/n.length)),n.slice(0,t)+r):r}function Ux(e,t,n,r){var i=t[n];return i?C_(i)?i(r,n,e):i[r]:r}var Wx=/\[([^\]]+)]|y{2,4}|M{1,2}|d{1,2}|H{1,2}|h{1,2}|m{1,2}|s{1,2}|S{1,3}|Z{1,2}|W{1,2}|D{1,3}|[aAeEq]/g;function Gx(e,t,n){if(e){if(e=Vy(e),Cx(e)){var r=n||{},i=t||m_.parseDateFormat||m_.formatString,a=e.getHours(),o=a<12?`am`:`pm`,s=M_({},m_.parseDateRules||m_.formatStringMatchs,r.formats),c=function(t,n){return(``+bx(e)).substring(4-n)},l=function(t,n){return Hx(Sx(e)+1,n,`0`)},u=function(t,n){return Hx(e.getDate(),n,`0`)},d=function(e,t){return Hx(a,t,`0`)},f=function(e,t){return Hx(a<=12?a:a-12,t,`0`)},p=function(t,n){return Hx(e.getMinutes(),n,`0`)},m=function(t,n){return Hx(e.getSeconds(),n,`0`)},h=function(t,n){return Hx(e.getMilliseconds(),n,`0`)},g=function(t,n){var r=e.getTimezoneOffset()/60*-1;return Ux(e,s,t,(r>=0?`+`:`-`)+Hx(r,2,`0`)+(n===1?`:`:``)+`00`)},_=function(t,n){return Hx(Ux(e,s,t,Rx(e,iv(r.firstDay)?m_.firstDayOfWeek:r.firstDay)),n,`0`)},v=function(t,n){return Hx(Ux(e,s,t,Vx(e)),n,`0`)},y={yyyy:c,yy:c,MM:l,M:l,dd:u,d:u,HH:d,H:d,hh:f,h:f,mm:p,m:p,ss:m,s:m,SSS:h,S:h,ZZ:g,Z:g,WW:_,W:_,DDD:v,D:v,a:function(t){return Ux(e,s,t,o)},A:function(t){return Ux(e,s,t,Px(o))},e:function(t){return Ux(e,s,t,e.getDay())},E:function(t){return Ux(e,s,t,e.getDay())},q:function(t){return Ux(e,s,t,Math.floor((Sx(e)+3)/3))}};return i.replace(Wx,function(e,t){return t||(y[e]?y[e](e,e.length):e)})}return`Invalid Date`}return``}var Kx=Date.now||function(){return gy(Hy())},qx=function(e,t){if(e){var n=Vy(e,t);return py(n)?gy(n):n}return Kx()};function Jx(e,t,n){return e&&t?(e=Gx(e,n),e!==`Invalid Date`&&e===Gx(t,n)):!1}var Yx=Lx(function(e){return new Date(e.getFullYear(),e.getMonth(),1)},function(e,t){return e.getMonth()!==t.getMonth()});function Xx(e,t){return e=Vy(e),Cx(e)?Uy(Tx(e,t))?366:365:NaN}function Zx(e,t){return e=Vy(e),Cx(e)?Math.floor((gy(Dx(e,t,yx))-gy(Dx(e,t,vx)))/xx)+1:NaN}function Qx(e,t){return e=Vy(e),Cx(e)?Math.floor((gy(wx(e,t,yx))-gy(wx(e,t,vx)))/xx)+1:NaN}var $x=[[`yyyy`,31536e6],[`MM`,2592e6],[`dd`,864e5],[`HH`,36e5],[`mm`,6e4],[`ss`,1e3],[`S`,0]];function eS(e,t){var n,r,i,a,o,s,c={done:!1,status:!1,time:0};if(e=Vy(e),t=t?Vy(t):Hy(),Cx(e)&&Cx(t)&&(n=gy(e),r=gy(t),n=i[1]?s===o-1?c[i[0]]=a||0:(c[i[0]]=Math.floor(a/i[1]),a-=c[i[0]]*i[1]):c[i[0]]=0;return c}function tS(e,t,n){var r=ox(e);return t>>=0,n=rv(n)?` `:``+n,r.padEnd?r.padEnd(t,n):t>r.length?(t-=r.length,t>n.length&&(n+=Qb(n,t/n.length)),r+n.slice(0,t)):r}function nS(e,t){return Qb(ox(e),t)}function rS(e){return e&&e.trimRight?e.trimRight():ox(e).replace(/[\s\uFEFF\xA0]+$/g,``)}function iS(e){return e&&e.trimLeft?e.trimLeft():ox(e).replace(/^[\s\uFEFF\xA0]+/g,``)}function aS(e){return e&&e.trim?e.trim():rS(iS(e))}var oS={"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`,"`":```};function sS(e){var t=RegExp(`(?:`+T_(e).join(`|`)+`)`,`g`);return function(n){return ox(n).replace(t,function(t){return e[t]})}}var cS=sS(oS),lS={};x_(oS,function(e,t){lS[oS[t]]=t});var uS=sS(lS);function dS(e,t,n){return e.substring(t,n)}function fS(e){return e.toLowerCase()}var pS={};function mS(e){if(e=ox(e),pS[e])return pS[e];var t=e.length,n=e.replace(/([-]+)/g,function(e,n,r){return r&&r+n.length2&&r+i1&&r+i1?t+`-`+fS(dS(n,0,i-1))+`-`+fS(dS(n,i-1,i))+r:fS(t+`-`+n+r)}).replace(/^([A-Z]+)([a-z]+)?$/,function(e,t,n){var r=t.length;return fS(dS(t,0,r-1)+`-`+dS(t,r-1,r)+(n||``))}).replace(/([a-z]?)([A-Z]+)([a-z]?)/g,function(e,t,n,r,i){var a=n.length;return a>1&&(t&&(t+=`-`),r)?(t||``)+fS(dS(n,0,a-1))+`-`+fS(dS(n,a-1,a))+r:(t||``)+(i?`-`:``)+fS(n)+(r||``)});return t=t.replace(/([-]+)/g,function(e,n,r){return r&&r+n.length1&&(i>2?r.substring(0,n).indexOf(t)===n-1:r.indexOf(t)===r.length-1)}function yS(e,t,n){return ox(e).replace((n||m_).tmplRE||/\{{2}([.\w[\]\s]+)\}{2}/g,function(e,n){return sv(t,aS(n))})}function bS(e,t){return yS(e,t,{tmplRE:/\{([.\w[\]\s]+)\}/g})}function xS(){}function SS(e,t){var n=wv(arguments,2);return function(){return e.apply(t,wv(arguments).concat(n))}}function CS(e,t){var n=!1,r=null,i=wv(arguments,2);return function(){return n?r:(r=e.apply(t,wv(arguments).concat(i)),n=!0,r)}}function wS(e,t,n){var r=0,i=[];return function(){var a=arguments;r++,r<=e&&i.push(a[0]),r>=e&&t.apply(n,[i].concat(wv(a)))}}function TS(e,t,n){var r=0,i=[];return n||=this,function(){var a=arguments;r++,r`u`?0:location;function FS(){return PS?PS.origin||PS.protocol+`//`+PS.host:``}function IS(e){return AS(e.split(`?`)[1]||``)}function LS(e){var t,n,r,i,a=``+e;return a.indexOf(`//`)===0?a=(PS?PS.protocol:``)+a:a.indexOf(`/`)===0&&(a=FS()+a),r=a.replace(/#.*/,``).match(/(\?.*)/),i={href:a,hash:``,host:``,hostname:``,protocol:``,port:``,search:r&&r[1]&&r[1].length>1?r[1]:``},i.path=a.replace(/^([a-z0-9.+-]*:)\/\//,function(e,t){return i.protocol=t,``}).replace(/^([a-z0-9.+-]*)(:\d+)?\/?/,function(e,t,r){return n=r||``,i.port=n.replace(`:`,``),i.hostname=t,i.host=t+n,`/`}).replace(/(#.*)/,function(e,t){return i.hash=t.length>1?t:``,``}),t=i.hash.match(/#((.*)\?|(.*))/),i.pathname=i.path.replace(/(\?|#.*).*/,``),i.origin=i.protocol+`//`+i.host,i.hashKey=t&&(t[2]||t[1])||``,i.hashQuery=IS(i.hash),i.searchQuery=IS(i.search),i}function RS(){if(PS){var e=PS.pathname,t=Jy(e,`/`)+1;return FS()+(t===e.length?e:e.substring(0,t))}return``}function zS(){return PS?LS(PS.href):{}}function BS(e,t){var n=parseFloat(t),r=Hy(),i=gy(r);switch(e){case`y`:return gy(Tx(r,n));case`M`:return gy(wx(r,n));case`d`:return gy(Ax(r,n));case`h`:case`H`:return i+n*60*60*1e3;case`m`:return i+n*60*1e3;case`s`:return i+n*1e3}return i}function VS(e){return(py(e)?e:new Date(e)).toUTCString()}function HS(e,t,n){if(cb){var r,i,a,o,s,c,l=[],u=arguments;return v_(e)?l=e:u.length>1?l=[M_({name:e,value:t},n)]:Gv(e)&&(l=[e]),l.length>0?(h_(l,function(e){r=M_({},m_.cookies,e),a=[],r.name&&(i=r.expires,a.push(jS(r.name)+`=`+jS(Gv(r.value)?JSON.stringify(r.value):r.value)),i&&(i=isNaN(i)?i.replace(/^([0-9]+)(y|M|d|H|h|m|s)$/,function(e,t,n){return VS(BS(n,t))}):/^[0-9]{11,13}$/.test(i)||py(i)?VS(i):VS(BS(`d`,i)),r.expires=i),h_([`expires`,`path`,`domain`,`secure`],function(e){rv(r[e])||a.push(r[e]&&e===`secure`?e:e+`=`+r[e])})),cb.cookie=a.join(`; `)}),!0):(o={},s=cb.cookie,s&&h_(s.split(`; `),function(e){c=e.indexOf(`=`),o[kS(e.substring(0,c))]=kS(e.substring(c+1)||``)}),u.length===1?o[e]:o)}return!1}function US(e){return Z_(qS(),e)}function WS(e){return HS(e)}function GS(e,t,n){return HS(e,t,n),HS}function KS(e,t){HS(e,``,M_({expires:-1},m_.cookies,t))}function qS(){return T_(HS())}function JS(){return HS()}M_(HS,{has:US,set:GS,setItem:GS,get:WS,getItem:WS,remove:KS,removeItem:KS,keys:qS,getJSON:JS});function YS(e){try{var t=`__xe_t`;return e.setItem(t,1),e.removeItem(t),!0}catch{return!1}}function XS(e){return navigator.userAgent.indexOf(e)>-1}function ZS(){var e,t,n,r=!1,i=!1,a=!1,o={isNode:!1,isMobile:r,isPC:!1,isDoc:!!cb};if(!ub&&typeof process<`u`)o.isNode=!0;else{n=XS(`Edge`),t=XS(`Chrome`),r=/(Android|webOS|iPhone|iPad|iPod|SymbianOS|BlackBerry|Windows Phone)/.test(navigator.userAgent),o.isDoc&&(e=cb.body||cb.documentElement,h_([`webkit`,`khtml`,`moz`,`ms`,`o`],function(t){o[`-`+t]=!!e[t+`MatchesSelector`]}));try{i=YS(ub.localStorage)}catch{}try{a=YS(ub.sessionStorage)}catch{}M_(o,{edge:n,firefox:XS(`Firefox`),msie:!n&&o[`-ms`],safari:!t&&!n&&XS(`Safari`),isMobile:r,isPC:!r,isLocalStorage:i,isSessionStorage:a})}return o}M_(N_,{assign:M_,objectEach:b_,lastObjectEach:z_,objectMap:H_,merge:K_,uniq:$_,union:tv,sortBy:gv,orderBy:hv,shuffle:yv,sample:bv,some:Y_,every:X_,slice:wv,filter:Tv,find:Dv,findLast:Ov,findKey:Ev,includes:Z_,arrayIndexOf:ly,arrayLastIndexOf:uy,map:q_,reduce:kv,copyWithin:Av,chunk:jv,zip:Iv,unzip:Fv,zipObject:Lv,flatten:zv,toArray:ev,includeArrays:Q_,pluck:Mv,invoke:Vv,arrayEach:h_,lastArrayEach:R_,toArrayTree:Xv,toTreeArray:Qv,findTree:ty,eachTree:ry,mapTree:ay,filterTree:oy,searchTree:cy,hasOwnProp:y_,eqNull:iv,isNaN:fy,isFinite:Xy,isUndefined:rv,isArray:v_,isFloat:Qy,isInteger:Zy,isFunction:C_,isBoolean:$y,isString:Cv,isNumber:dy,isRegExp:eb,isObject:Gv,isPlainObject:U_,isDate:py,isError:tb,isTypeError:nb,isEmpty:rb,isNull:B_,isSymbol:ab,isArguments:ob,isElement:sb,isDocument:lb,isWindow:db,isFormData:pb,isMap:hb,isWeakMap:_b,isSet:yb,isWeakSet:xb,isLeapYear:Uy,isMatch:Db,isEqual:Eb,isEqualWith:Ob,getType:kb,uniqueId:Ab,getSize:Yy,indexOf:qy,lastIndexOf:Jy,findIndexOf:Cb,findLastIndexOf:jb,toStringJSON:Mb,toJSONString:Nb,keys:T_,values:vv,entries:Pb,pick:Ib,omit:Lb,first:Rb,last:zb,each:x_,forOf:Wy,lastForOf:Gy,lastEach:Wv,has:Bb,get:sv,set:Ub,groupBy:Kb,countBy:qb,clone:k_,clear:Kv,remove:Jv,range:Jb,destructuring:Yb,random:_v,min:Xb,max:Pv,commafy:cx,round:rx,ceil:ix,floor:ax,toFixed:sx,toNumber:Sv,toNumberString:ex,toInteger:lx,add:fx,subtract:px,multiply:ux,divide:hx,sum:gx,mean:_x,now:Kx,timestamp:qx,isValidDate:Cx,isDateSame:Jx,toStringDate:Vy,toDateString:Gx,getWhatYear:Tx,getWhatQuarter:Dx,getWhatMonth:wx,getWhatWeek:kx,getWhatDay:Ax,getWhatHours:jx,getWhatMinutes:Mx,getWhatSeconds:Nx,getYearDay:Vx,getYearWeek:Rx,getMonthWeek:Yx,getDayOfYear:Xx,getDayOfQuarter:Zx,getDayOfMonth:Qx,getDateDiff:eS,trim:aS,trimLeft:iS,trimRight:rS,escape:cS,unescape:uS,camelCase:mS,kebabCase:gS,repeat:nS,padStart:Hx,padEnd:tS,startsWith:_S,endsWith:vS,template:yS,toFormatString:bS,toString:ox,toValueString:ox,noop:xS,property:V_,bind:SS,once:CS,after:wS,before:TS,throttle:ES,debounce:DS,delay:OS,unserialize:AS,serialize:NS,parseUrl:LS,getBaseURL:RS,locat:zS,browse:ZS,cookie:HS});var Z=N_,QS=null,$S=null,eC=null,tC=`z-index-manage`,nC=null,rC=`z-index-style`,iC=`m`,aC=`s`,oC={m:1e3,s:1e3};function sC(){return QS||typeof document<`u`&&(QS=document),QS}function cC(){return QS&&!$S&&($S=QS.body||QS.getElementsByTagName(`body`)[0]),$S}function lC(){var e=0;if(sC()){var t=cC();if(t)for(var n=t.getElementsByTagName(`*`),r=0;r{e.cancelBubble||(n===e.type||t&&n===`mousewheel`)&&r(e)})}var HC=class{constructor(e,t,n){Object.defineProperty(this,"$event",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"type",{enumerable:!0,configurable:!0,writable:!0,value:``}),Object.defineProperty(this,"key",{enumerable:!0,configurable:!0,writable:!0,value:``}),Object.defineProperty(this,"code",{enumerable:!0,configurable:!0,writable:!0,value:``}),this.$event=e,e&&(e.type&&(this.type=e.type),e.key&&(this.key=e.key),e.code&&(this.code=e.code)),Object.assign(this,t),Z.objectEach(n,(e,t)=>{if(Z.isFunction(e)){let n=null,r=!1;Object.defineProperty(this,t,{get(){return r||(r=!0,n=e()),n}})}else this[t]=e})}stopPropagation(){let e=this.$event;e&&e.stopPropagation()}preventDefault(){let e=this.$event;e&&e.preventDefault()}},UC=(e,t,n)=>(e instanceof HC&&(e=e.$event),new HC(e,t,n)),WC={on(e,t,n){BC.push({comp:e,type:t,cb:n})},off(e,t){Z.remove(BC,n=>n.comp===e&&n.type===t)},hasKey(e,t){if(!t)return!1;let{key:n}=e;return t=t.toLowerCase(),n?t===n.toLowerCase()||!!(RC[n]&&RC[n].toLowerCase()===t):!1}};LC.isDoc&&(LC.msie||(window.addEventListener(`copy`,VC,!1),window.addEventListener(`cut`,VC,!1),window.addEventListener(`paste`,VC,!1)),document.addEventListener(`scroll`,VC,!0),document.addEventListener(`keydown`,VC,!1),document.addEventListener(`contextmenu`,VC,!1),window.addEventListener(`mousedown`,VC,!1),window.addEventListener(`click`,VC,!1),window.addEventListener(`blur`,VC,!1),window.addEventListener(`resize`,VC,!1),window.addEventListener(zC,Z.throttle(VC,100,{leading:!0,trailing:!1}),{passive:!0,capture:!1}));var GC,KC=[],qC=500;function JC(){KC.length&&(KC.forEach(e=>{e.tarList.forEach(t=>{let{target:n,width:r,heighe:i}=t,a=n.clientWidth,o=n.clientHeight;(a&&r!==a||o&&i!==o)&&(t.width=a,t.heighe=o,setTimeout(e.callback))})}),YC())}function YC(){clearTimeout(GC),GC=setTimeout(JC,CC.resizeInterval||qC)}var XC=class{constructor(e){Object.defineProperty(this,"tarList",{enumerable:!0,configurable:!0,writable:!0,value:[]}),Object.defineProperty(this,"callback",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.callback=e}observe(e){if(e){let{tarList:t}=this;t.some(t=>t.target===e)||t.push({target:e,width:e.clientWidth,heighe:e.clientHeight}),KC.length||YC(),KC.some(e=>e===this)||KC.push(this)}}unobserve(e){Z.remove(KC,t=>t.tarList.some(t=>t.target===e))}disconnect(){Z.remove(KC,e=>e===this)}},ZC={create(e){return window.ResizeObserver?new window.ResizeObserver(e):new XC(e)}},QC=Ne({language:``,langMaps:{}}),$C=!1,ew={};function tw(e){return e&&e.__esModule?e.default:e}function nw(e,t){let{langMaps:n,language:r}=QC,{i18n:i}=CC;if(i)return`${i(e,t)||``}`;if($C||=(n[r]||console.error(`[vxe core] 语言包未安装。Language not installed. https://${p_.uiVersion?`vxeui.com`:`vxetable.cn`}/#/start/i18n`),!0),!t&&ew[e])return ew[e];let a=Z.toFormatString(Z.get(n[r],e,e),t);return t||(ew[e]=a),a}function rw(e){let{language:t}=QC,n=e||`zh-CN`;return t!==n&&(QC.language=n,ew={}),p_}function iw(e,t){return QC.langMaps[e]=Object.assign({},tw(t)),p_}function aw(e){let{langMaps:t}=QC;return!!t[e]}function ow(){let{language:e}=QC;return e}function sw(e,t){return function(n,r){let i=`[vxe ${t||``}] ${nw(n,r)}`;return console[e](i),i}}var cw=`4.4.19`,lw={create:sw,warn:sw(`warn`,`v${cw}`),err:sw(`error`,`v${cw}`)},uw={},dw={mixin(e){return Z.each(e,(e,t)=>dw.add(t,e)),dw},get(e){return uw[e]||null},add(e,t){if(e&&t){let n=uw[e];n?(Z.each(t,(t,r)=>{!Z.eqNull(n[r])&&n[r]!==t&&lw.warn(`vxe.error.coverProp`,[`Renderer.${e}`,r])}),Object.assign(n,t)):uw[e]=t}return dw},forEach(e){return Z.objectEach(uw,e),dw},delete(e){return delete uw[e],dw}},fw=class{constructor(){Object.defineProperty(this,"store",{enumerable:!0,configurable:!0,writable:!0,value:{}})}mixin(e){return Z.each(e,(e,t)=>{this.add(t,e)}),this}has(e){return!!this.get(e)}get(e){return this.store[e]}add(e,t){let n=this.store[e],r=Z.keys(n);return Z.each(t,(t,n)=>{r.includes(n)&&lw.warn(`vxe.error.coverProp`,[e,n])}),this.store[e]=n?Z.merge(n,t):t,this}delete(e){delete this.store[e]}forEach(e){Z.objectEach(this.store,e)}},pw=new fw;Object.assign(pw,{_name:`Validators`});var mw=new class{constructor(){Object.defineProperty(this,"store",{enumerable:!0,configurable:!0,writable:!0,value:{}})}mixin(e){return Z.each(e,(e,t)=>{this.add(t,e)}),this}has(e){return!!this.get(e)}get(e){return this.store[e]}add(e,t){let n=this.store[e];Z.isFunction(t)&&(lw.warn(`vxe.error.delProp`,[`menus -> callback`,`menuMethod`]),t={menuMethod:t});let r=Z.keys(n);return Z.each(t,(t,n)=>{r.includes(n)&&lw.warn(`vxe.error.coverProp`,[e,n])}),this.store[e]=n?Z.merge(n,t):t,this}delete(e){delete this.store[e]}forEach(e){Z.objectEach(this.store,e)}};Object.assign(mw,{_name:`Menus`});var hw=new class{constructor(){Object.defineProperty(this,"store",{enumerable:!0,configurable:!0,writable:!0,value:{}})}mixin(e){return Z.each(e,(e,t)=>{this.add(t,e)}),this}has(e){return!!this.get(e)}get(e){return this.store[e]}add(e,t){let n=this.store[e];Z.isFunction(t)&&(lw.warn(`vxe.error.delProp`,[`formats -> callback`,`cellFormatMethod`]),t={cellFormatMethod:t});let r=Z.keys(n);return Z.each(t,(t,n)=>{r.includes(n)&&lw.warn(`vxe.error.coverProp`,[e,n])}),this.store[e]=n?Z.merge(n,t):t,this}delete(e){delete this.store[e]}forEach(e){Z.objectEach(this.store,e)}};Object.assign(hw,{_name:`Formats`});var gw=new class{constructor(){Object.defineProperty(this,"store",{enumerable:!0,configurable:!0,writable:!0,value:{}})}mixin(e){return Z.each(e,(e,t)=>{this.add(t,e)}),this}has(e){return!!this.get(e)}get(e){return this.store[e]}add(e,t){let n=this.store[e];Z.isFunction(t)&&(lw.warn(`vxe.error.delProp`,[`commands -> callback`,`commandMethod`]),t={commandMethod:t});let r=Z.keys(n);return Z.each(t,(t,n)=>{r.includes(n)&&lw.warn(`vxe.error.coverProp`,[e,n])}),this.store[e]=n?Z.merge(n,t):t,this}delete(e){delete this.store[e]}forEach(e){Z.objectEach(this.store,e)}};Object.assign(gw,{_name:`Commands`});var _w={},vw={mixin(e){return Z.each(e,(e,t)=>{vw.add(t,e)}),vw},get(e){return e&&_w[e]||[]},add(e,t){Z.isFunction(t)&&(t={tableInterceptorMethod:t});let n=t.tableInterceptorMethod;if(n){let t=_w[e];t||=_w[e]=[],t.indexOf(n)>-1&&lw.warn(`vxe.error.coverProp`,[`Interceptor`,e]),t.push(n)}return vw},delete(e,t){let n=_w[e];if(n){Z.isFunction(t)&&(t={tableInterceptorMethod:t});let r=t?t.tableInterceptorMethod:null;r?Z.remove(n,e=>e===r):delete _w[e]}}},yw,bw={text:``,html:``};function xw(e){if(!yw){yw=document.createElement(`textarea`),yw.id=`$VxeCopy`;let e=yw.style;e.width=`48px`,e.height=`24px`,e.position=`fixed`,e.zIndex=`0`,e.left=`-500px`,e.top=`-500px`,document.body.appendChild(yw)}yw.value=e}var Sw={getStore(){return bw},setStore(e){Object.assign(bw,e||{})},copy(e){let t=!1;try{let n=Z.toValueString(e);xw(n),yw.select(),yw.setSelectionRange(0,yw.value.length),t=document.execCommand(`copy`),yw.blur(),bw.text=n,bw.html=``}catch{}return t},getText(){return bw.text||``}};function Cw(e,t){let n=!0,r=!1,i=t||CC.permissionMethod;if(e&&i){n=!1,r=!0;let t=!1,a=!1,o=String(e).split(`|`);for(let e=0;ee.size||(t?t.value:null));return P(`xeSizeInfo`,n),{computeSize:n}}function Dw(e){return{computePermissionInfo:B(()=>Cw(e.permissionCode,e.permissionMethod))}}var Ow={useSize:Ew,usePermission:Dw},kw=[];function Aw(e,t){return e&&e.install&&kw.indexOf(e)===-1&&(e.install(Q,t),kw.push(e)),Q}var jw={};function Mw(e){return jw[e]||null}function Nw(e){return!!jw[e]}function Pw(e){e&&e.name&&(jw[e.name]=e,jw[Z.kebabCase(e.name)]=e)}function Fw(){return V()}function Iw(e,t,n){if(e){let r=`${e}`.match(/(\d+).(\d+).(\d+)/);if(r){let e=Z.toNumber(r[1]);if(n){let i=Z.toNumber(r[2]);return e>=t&&i>=n}return e>=t}}return!1}var Q=Object.assign(p_,{renderEmptyElement:Fw,setTheme:TC,getTheme:EC,setConfig:DC,getConfig:OC,setIcon:MC,getIcon:NC,renderGlobalIcon:PC,renderCustomIcon:FC,setLanguage:rw,hasLanguage:aw,getLanguage:ow,setI18n:iw,getI18n:nw,globalEvents:WC,GLOBAL_EVENT_KEYS:IC,createEvent:UC,globalResize:ZC,renderer:dw,validators:pw,menus:mw,formats:hw,commands:gw,interceptor:vw,clipboard:Sw,log:lw,permission:ww,globalStore:kC,hooks:Tw,component:Pw,getComponent:Mw,hasComponent:Nw,useFns:Ow,getSlotVNs:jC,checkVersion:Iw,use:Aw});TC();var{getConfig:Lw}=Q;function Rw(e){return e&&e.enabled!==!1}function zw(e){return e==null||e===``}function Bw(e){let t=e.name,n=Z.lastIndexOf(t,`.`),r=t.substring(n+1,t.length).toLowerCase();return{filename:t.substring(0,n),type:r}}function Vw(){return SC.getNext()}function Hw(){return SC.getCurrent()}function Uw(e){return e&&e.children&&e.children.length>0}function Ww(e,t){if(Z.eqNull(e))return``;let n=Lw().translate;return`${n?n(``+e,t):e}`}function Gw(e,t){return``+(zw(e)?t?Lw().emptyCell:``:e)}function Kw(e){return e===``||Z.eqNull(e)}var qw=`4.20.9`;Q.version=qw,Q.tableVersion=qw,Q.setConfig({emptyCell:` `,table:{fit:!0,showHeader:!0,animat:!0,delayHover:250,autoResize:!0,resizeConfig:{},resizableConfig:{dragMode:`auto`,showDragTip:!0,isSyncAutoHeight:!0,isSyncAutoWidth:!0,minHeight:18},currentRowConfig:{strict:!0},currentColumnConfig:{strict:!0},radioConfig:{strict:!0},rowDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},columnDragConfig:{showIcon:!0,animation:!0,showGuidesStatus:!0,showDragTip:!0},checkboxConfig:{strict:!0},tooltipConfig:{mode:`tooltip`,enterable:!0,defaultPlacement:`top`},headerTooltipConfig:{mode:`tooltip`,enterable:!0},footerTooltipConfig:{mode:`tooltip`,enterable:!0},validConfig:{showErrorMessage:!0,autoClear:!0,autoPos:!0,message:`inline`,msgMode:`single`,theme:`beautify`},columnConfig:{autoOptions:{isCalcHeader:!0,isCalcBody:!0,isCalcFooter:!0},maxFixedSize:4},cellConfig:{padding:!0},headerCellConfig:{height:`unset`},footerCellConfig:{height:`unset`},menuConfig:{destroyOnClose:!0},customConfig:{allowVisible:!0,allowResizable:!0,allowFixed:!0,allowSort:!0,allowAlign:!0,showSortDragButton:!0,showFooter:!0,placement:`top-right`,storeOptions:{visible:!0,resizable:!0,sort:!0,fixed:!0,align:!0,headerAlign:!0,footerAlign:!0,aggFunc:!0},modalOptions:{showMaximize:!0,mask:!0,lockView:!0,resize:!0,escClosable:!0},drawerOptions:{mask:!0,lockView:!0,escClosable:!0,resize:!0}},sortConfig:{showIcon:!0,allowClear:!0,allowBtn:!0,iconLayout:`vertical`},filterConfig:{destroyOnClose:!0,multiple:!0,showIcon:!0,maxHeight:280},floatingFilterConfig:{},aggregateConfig:{padding:!0,placement:`left`,rowField:`id`,parentField:`_X_ROW_PARENT_KEY`,childrenField:`_X_ROW_CHILDREN`,mapChildrenField:`_X_ROW_CHILD_LIST`,indent:20,showIcon:!0,maxGroupSize:4,showAggFuncTitle:!0},treeConfig:{padding:!0,rowField:`id`,parentField:`parentId`,childrenField:`children`,hasChildField:`hasChild`,mapChildrenField:`_X_ROW_CHILD`,indent:20,showIcon:!0,showRootLine:!0},expandConfig:{showIcon:!0,mode:`fixed`},editConfig:{showIcon:!0,showAsterisk:!0,autoFocus:!0},importConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},exportConfig:{_typeMaps:{csv:1,html:1,xml:1,txt:1}},printConfig:{},mouseConfig:{extension:!0},keyboardConfig:{isAll:!0,isEsc:!0},areaConfig:{autoClear:!0,selectCellByHeader:!0,selectCellByBody:!0,extendDirection:{top:!0,left:!0,bottom:!0,right:!0}},clipConfig:{isCopy:!0,isCut:!0,isPaste:!0},fnrConfig:{isFind:!0,isReplace:!0},virtualXConfig:{gt:24,preSize:1,oSize:0},virtualYConfig:{gt:100,preSize:1,oSize:0},scrollbarConfig:{x:{visible:!0},y:{visible:!0}},undoRedoHistoryConfig:{stackSize:50}},grid:{formConfig:{enabled:!0},pagerConfig:{enabled:!0},toolbarConfig:{enabled:!0},proxyConfig:{enabled:!0,autoLoad:!0,showLoading:!0,showResponseMsg:!0,showActionMsg:!0,response:{list:`list`,result:`result`,total:`page.total`,footerData:`footerData`,message:`message`}}},toolbar:{},gantt:{}}),Q.setIcon({TABLE_SORT_ASC:`vxe-table-icon-caret-up`,TABLE_SORT_DESC:`vxe-table-icon-caret-down`,TABLE_FILTER_NONE:`vxe-table-icon-funnel`,TABLE_FILTER_MATCH:`vxe-table-icon-funnel`,TABLE_EDIT:`vxe-table-icon-edit`,TABLE_TITLE_PREFIX:`vxe-table-icon-question-circle-fill`,TABLE_TITLE_SUFFIX:`vxe-table-icon-question-circle-fill`,TABLE_TREE_LOADED:`vxe-table-icon-spinner roll`,TABLE_TREE_OPEN:`vxe-table-icon-caret-right rotate90`,TABLE_TREE_CLOSE:`vxe-table-icon-caret-right`,TABLE_EXPAND_LOADED:`vxe-table-icon-spinner roll`,TABLE_EXPAND_OPEN:`vxe-table-icon-arrow-right rotate90`,TABLE_EXPAND_CLOSE:`vxe-table-icon-arrow-right`,TABLE_CHECKBOX_CHECKED:`vxe-table-icon-checkbox-checked-fill`,TABLE_CHECKBOX_UNCHECKED:`vxe-table-icon-checkbox-unchecked`,TABLE_CHECKBOX_INDETERMINATE:`vxe-table-icon-checkbox-indeterminate-fill`,TABLE_CHECKBOX_DISABLED_UNCHECKED:`vxe-table-icon-checkbox-unchecked-fill`,TABLE_RADIO_CHECKED:`vxe-table-icon-radio-checked-fill`,TABLE_RADIO_UNCHECKED:`vxe-table-icon-radio-unchecked`,TABLE_RADIO_DISABLED_UNCHECKED:`vxe-table-icon-radio-unchecked-fill`,TABLE_CUSTOM_SORT:`vxe-table-icon-drag-handle`,TABLE_CUSTOM_FIXED_LEFT:`vxe-table-icon-fixed-left`,TABLE_CUSTOM_FIXED_RIGHT:`vxe-table-icon-fixed-right`,TABLE_CUSTOM_ALIGN_LEFT:`vxe-table-icon-align-left`,TABLE_CUSTOM_ALIGN_CENTER:`vxe-table-icon-align-center`,TABLE_CUSTOM_ALIGN_RIGHT:`vxe-table-icon-align-right`,TABLE_CUSTOM_MOVE_UP:`vxe-table-icon-arrows-up`,TABLE_CUSTOM_MOVE_DN:`vxe-table-icon-arrows-down`,TABLE_CUSTOM_PUT_TOP:`vxe-table-icon-top`,TABLE_CUSTOM_PUT_BOTTOM:`vxe-table-icon-bottom`,TABLE_MENU_OPTIONS:`vxe-table-icon-arrow-right`,TABLE_MENU_OPTION_LOADING:`vxe-table-icon-repeat roll`,TABLE_DRAG_ROW:`vxe-table-icon-drag-handle`,TABLE_DRAG_COLUMN:`vxe-table-icon-drag-handle`,TABLE_DRAG_STATUS_ROW:`vxe-table-icon-sort`,TABLE_DRAG_STATUS_SUB_ROW:`vxe-table-icon-add-sub`,TABLE_DRAG_STATUS_AGG_GROUP:`vxe-table-icon-grouping`,TABLE_DRAG_STATUS_AGG_VALUES:`vxe-table-icon-values`,TABLE_DRAG_STATUS_COLUMN:`vxe-table-icon-swap`,TABLE_DRAG_DISABLED:`vxe-table-icon-no-drop`,TABLE_ROW_GROUP_OPEN:`vxe-table-icon-arrow-right rotate90`,TABLE_ROW_GROUP_CLOSE:`vxe-table-icon-arrow-right`,TABLE_AGGREGATE_GROUPING:`vxe-table-icon-grouping`,TABLE_AGGREGATE_VALUES:`vxe-table-icon-values`,TABLE_AGGREGATE_SORT:`vxe-table-icon-drag-handle`,TABLE_AGGREGATE_DELETE:`vxe-table-icon-close`,TOOLBAR_TOOLS_REFRESH:`vxe-table-icon-repeat`,TOOLBAR_TOOLS_REFRESH_LOADING:`vxe-table-icon-repeat roll`,TOOLBAR_TOOLS_IMPORT:`vxe-table-icon-upload`,TOOLBAR_TOOLS_EXPORT:`vxe-table-icon-download`,TOOLBAR_TOOLS_PRINT:`vxe-table-icon-print`,TOOLBAR_TOOLS_FULLSCREEN:`vxe-table-icon-fullscreen`,TOOLBAR_TOOLS_MINIMIZE:`vxe-table-icon-minimize`,TOOLBAR_TOOLS_CUSTOM:`vxe-table-icon-setting`,TOOLBAR_TOOLS_FIXED_LEFT:`vxe-table-icon-fixed-left`,TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:`vxe-table-icon-fixed-left-fill`,TOOLBAR_TOOLS_FIXED_RIGHT:`vxe-table-icon-fixed-right`,TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:`vxe-table-icon-fixed-right-fill`});var Jw=Q.setTheme,Yw=Q.getTheme,Xw=Q.setConfig,Zw=Q.getConfig,Qw=Q.setIcon,$w=Q.getIcon,eT=Q.setLanguage,tT=Q.setI18n,nT=Q.getI18n,rT=Q.globalEvents,iT=Q.globalResize,aT=Q.renderer,oT=Q.validators,sT=Q.menus,cT=Q.formats,lT=Q.commands,uT=Q.interceptor,dT=Q.clipboard,fT=Q.log,pT=Q.hooks,mT=Q.use,hT=e=>Q.setConfig(e);Q.setup=hT;var gT=e=>Q.setConfig(e);Q.config=gT;var _T=(e,t)=>Q.getI18n(e,t);Q.t=_T;var vT=(e,t)=>Ww(e,t);Q._t=vT;var yT=Q,bT=e=>Q.saveFile(e),xT=e=>Q.readFile(e),ST=e=>Q.print(e),CT={get(e){return Q.modal.get(e)},close(e){return Q.modal.close(e)},open(e){return Q.modal.open(e)},alert(e,t,n){return Q.modal.alert(e,t,n)},confirm(e,t,n){return Q.modal.confirm(e,t,n)},message(e,t){return Q.modal.message(e,t)},notification(e,t,n){return Q.modal.notification(e,t,n)}},wT=Se,TT={},ET;function DT(){return ET||(ET=new Image,ET.src=`data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=`),ET}function OT(){return ET||DT()}function kT(e,t){return e?Z.isFunction(e)?e(t):e:``}function AT(e){return TT[e]||(TT[e]=RegExp(`(?:^|\\s)${e}(?!\\S)`,`g`)),TT[e]}function jT(e){return e&&/^\d+(\.\d+)?(px)?$/.test(e)}function MT(e){return e&&/^\d+(\.\d+)?%$/.test(e)}function NT(e,t){return!!(e&&e.className&&e.className.match&&e.className.match(AT(t)))}function PT(e,t){e&&NT(e,t)&&(e.className=e.className.replace(AT(t),``))}function FT(e,t){e&&!NT(e,t)&&(PT(e,t),e.className=`${e.className} ${t}`)}function IT(e){return e.ctrlKey||e.metaKey}function LT(e,t=`px`){return Z.isNumber(e)||/^\d+$/.test(`${e}`)?`${e}${t}`:`${e||``}`}function RT(e,t){return e?e.querySelector(t):null}function zT(){let e=document.documentElement,t=document.body;return{scrollTop:e.scrollTop||t.scrollTop,scrollLeft:e.scrollLeft||t.scrollLeft,visibleHeight:e.clientHeight||t.clientHeight,visibleWidth:e.clientWidth||t.clientWidth}}function BT(e){return e?e.offsetHeight:0}function VT(e){if(e){let t=getComputedStyle(e);return Z.toNumber(t.paddingTop)+Z.toNumber(t.paddingBottom)}return 0}function HT(e,t){e&&(e.scrollTop=t)}function UT(e,t){e&&(e.scrollLeft=t)}function WT(e,t){let n=t.type===`html`?e.innerText:e.textContent;e.getAttribute(`title`)!==n&&e.setAttribute(`title`,n)}function GT(e,t,n){let r=e;if(!t||!t.length)return!1;let[i,a,o]=t;for(;r;){if(i===r||a&&r===a||o&&r===o)return!0;if(n&&r===n)return!1;r=r.parentElement}return!1}function KT(e,t,n,r){let i,a=e.target.shadowRoot&&e.composed&&e.composedPath()[0]||e.target;for(;a&&a.nodeType&&a!==document;){if(n&&NT(a,n)&&(!r||r(a)))i=a;else if(a===t)return{flag:!n||!!i,container:t,targetElem:i};a=a.parentNode}return{flag:!1}}function qT(e){let t=e.getBoundingClientRect(),n=t.top,r=t.left,{scrollTop:i,scrollLeft:a,visibleHeight:o,visibleWidth:s}=zT();return{boundingTop:n,top:i+n,boundingLeft:r,left:a+r,visibleHeight:o,visibleWidth:s}}function JT(e){let t=e?e.tagName:``;return t&&[`input`,`textarea`].includes(t.toLowerCase())}var YT=`scrollIntoViewIfNeeded`,XT=`scrollIntoView`;function ZT(e){e&&(e[YT]?e[YT]():e[XT]&&e[XT]())}function QT(e,t){e&&e.dispatchEvent(new Event(t))}var $T;function eE(e,t){$T&&cancelAnimationFrame($T),$T=requestAnimationFrame(()=>{t(e),$T=null})}var tE;function nE(e,t){tE&&cancelAnimationFrame(tE),tE=requestAnimationFrame(()=>{t(e),tE=null})}var{log:rE}=Q,iE=`table v4.20.9`;function aE(e){let t=[Q.uiVersion?`ui v${Q.uiVersion}`:``,iE,Q.ganttVersion?`gantt v${Q.ganttVersion}`:``,Q.designVersion?`design v${Q.designVersion}`:``].filter(e=>e).join(` `);return{warnLog:rE.create(`warn`,t+`] [`+e),errLog:rE.create(`error`,t+`] [`+e)}}rE.create(`warn`,iE),rE.create(`error`,iE);var{warnLog:oE,errLog:sE}=aE(`table`),{getI18n:cE,formats:lE,renderer:uE}=Q,dE=class{constructor(e,t,{renderHeader:n,renderCell:r,renderFooter:i,renderData:a}={}){let o=e.props,s=e.xeGrid,c=e.xeGantt,l=s||c,{type:u,field:d,width:f,visible:p,fixed:m,align:h,headerAlign:g,footerAlign:_,aggFunc:v,formatter:y,filterMultiple:b,cellRender:x,editRender:S,filterRender:C}=t,w=t.colId||Z.uniqueId(`col_`),T=!Z.isBoolean(p)||p,E=f&&jT(f)&&f!==`auto`?Math.max(0,Z.toInteger(f)):0,D=C&&Rw(C)?uE.get(C.name):null,O=D?D.createTableFilterOptions:null,k=IE(t.filters,w),A=[`seq`,`checkbox`,`radio`,`expand`,`html`];if(u&&A.indexOf(u)===-1&&oE(`vxe.error.errProp`,[`type=${u}`,A.join(`, `)]),(Z.isBoolean(x)||x&&!Z.isObject(x))&&oE(`vxe.error.errProp`,[`column.cell-render=${x}`,`column.cell-render={}`]),(Z.isBoolean(S)||S&&!Z.isObject(S))&&oE(`vxe.error.errProp`,[`column.edit-render=${S}`,`column.edit-render={}`]),u===`expand`){let{treeConfig:t}=o,{computeTreeOpts:n}=e.getComputeMaps(),r=n.value;t&&(r.showLine||r.line)&&sE(`vxe.error.errConflicts`,[`tree-config.showLine`,`column.type=expand`])}if(y){if(Z.isString(y)){let e=lE.get(y)||Z[y];(!e||!Z.isFunction(e.tableCellFormatMethod||e.cellFormatMethod))&&sE(`vxe.error.notFormats`,[y])}else if(Z.isArray(y)){let e=lE.get(y[0])||Z[y[0]];(!e||!Z.isFunction(e.tableCellFormatMethod||e.cellFormatMethod))&&sE(`vxe.error.notFormats`,[y[0]])}}if(v&&!e.handlePivotTableAggData&&v!==!0&&sE(`vxe.error.errProp`,[`column.agg-func=${v}`,`column.agg-func=true`]),d&&S&&(S.startField&&`${S.startField}`.indexOf(d)>=0&&sE(`vxe.error.modelConflicts`,[`field=${d}`,`edit-render.startField=${S.startField}`]),S.endField&&`${S.endField}`.indexOf(d)>=0&&sE(`vxe.error.modelConflicts`,[`field=${d}`,`edit-render.endField=${S.endField}`])),Object.assign(this,{type:t.type,property:t.field,field:d,title:t.title,width:t.width,minWidth:t.minWidth,maxWidth:t.maxWidth,resizable:t.resizable,fixed:m,align:h,headerAlign:g,footerAlign:_,showOverflow:t.showOverflow,showHeaderOverflow:t.showHeaderOverflow,showFooterOverflow:t.showFooterOverflow,className:t.className,headerClassName:t.headerClassName,footerClassName:t.footerClassName,formatter:y,headerFormatter:t.headerFormatter,footerFormatter:t.footerFormatter,padding:t.padding,verticalAlign:t.verticalAlign,sortable:t.sortable,sortBy:t.sortBy,sortType:t.sortType,filters:k,filterMultiple:!Z.isBoolean(b)||b,filterMethod:t.filterMethod,filterResetMethod:t.filterResetMethod,filterRecoverMethod:t.filterRecoverMethod,filterRender:C,floatingFilters:t.floatingFilters,rules:t.rules,rowGroupNode:t.rowGroupNode,treeNode:t.treeNode,dragSort:t.dragSort,rowResize:t.rowResize,cellType:t.cellType,cellRender:x,editRender:S,contentRender:t.contentRender,headerExportMethod:t.headerExportMethod,exportMethod:t.exportMethod,footerExportMethod:t.footerExportMethod,titleHelp:t.titleHelp,titlePrefix:t.titlePrefix,titleSuffix:t.titleSuffix,aggFunc:v,copyMethod:t.copyMethod,cutMethod:t.cutMethod,pasteMethod:t.pasteMethod,params:t.params,id:w,parentId:null,visible:T,defaultParentId:null,halfVisible:!1,defaultVisible:T,defaultFixed:m,defaultAlign:h,defaultHeaderAlign:g,defaultFooterAlign:_,defaultAggFunc:v,checked:!1,halfChecked:!1,disabled:!1,level:1,rowSpan:1,colSpan:1,order:null,sortTime:0,sortNumber:0,renderSortNumber:0,renderAggFn:``,renderAggDigits:null,renderAggFormat:null,renderAlign:``,renderHeaderAlign:``,renderFooterAlign:``,renderFixed:``,renderVisible:!1,renderWidth:E,renderHeight:0,renderResizeWidth:0,renderAutoWidth:0,resizeWidth:0,renderLeft:0,renderArgs:[],model:{},renderHeader:n||t.renderHeader,renderCell:r||t.renderCell,renderFooter:i||t.renderFooter,renderData:a,slots:t.slots}),O&&(!k||!k.length)&&(this.filters=IE(O({$table:e,column:this}),w)),l){let{computeProxyOpts:t}=l.getComputeMaps(),n=t.value;n.beforeColumn&&n.beforeColumn({$table:e,$grid:s,$gantt:c,column:this})}}getTitle(){return Ww(this.title||(this.type===`seq`?cE(`vxe.table.seqTitle`):``))}getKey(){let{type:e,field:t}=this;return t||(e?`type=${e}`:null)}update(e,t){e!==`filters`&&(e===`field`&&(this.property=t),this[e]=t)}};function fE(){return{tZindex:0,currKeyField:``,isCurrDeepKey:!1,elemStore:{},scrollXStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},scrollYStore:{preloadSize:0,offsetSize:0,visibleSize:0,visibleStartIndex:0,visibleEndIndex:0,startIndex:0,endIndex:0},tableWidth:0,tableHeight:0,customHeight:0,customMinHeight:0,customMaxHeight:0,hoverRow:null,lastScrollLeft:0,lastScrollTop:0,radioReserveRow:null,checkboxReserveRowMap:{},rowExpandedReserveRowMap:{},treeExpandedReserveRowMap:{},treeIndeterminateRowMaps:{},tableFullData:[],afterFullData:[],afterTreeFullData:[],afterGroupFullData:[],afterFullRowMaps:{},tableFullTreeData:[],tableFullGroupData:[],tableSynchData:[],tableSourceData:[],collectColumn:[],tableFullColumn:[],visibleColumn:[],fullAllDataRowIdData:{},fullDataRowIdData:{},visibleDataRowIdData:{},keepUpdateFieldMaps:{},headerFullDataColData:{},footerFullDataRowData:{},sourceDataRowIdData:{},fullColumnIdData:{},fullColumnFieldData:{},fullCellHeightMaps:{},fullCellStoreMaps:{},currentRow:null,mergeHeaderList:[],mergeHeaderMaps:{},mergeHeaderCellMaps:{},mergeHeaderRowMaps:{},mergeHeaderColMaps:{},mergeBodyList:[],mergeBodyMaps:{},mergeBodyCellMaps:{},mergeBodyRowMaps:{},mergeBodyColMaps:{},mergeFooterList:[],mergeFooterMaps:{},mergeFooterCellMaps:{},mergeFooterRowMaps:{},mergeFooterColMaps:{},rowExpandedMaps:{},rowExpandLazyLoadedMaps:{},rowGroupExpandedMaps:{},treeExpandedMaps:{},treeExpandLazyLoadedMaps:{},selectCheckboxMaps:{},pendingRowMaps:{},insertRowMaps:{},removeRowMaps:{},cvCacheMaps:{},tHeaderHeight:0,tBodyHeight:0,tFooterHeight:0,stackHistoryStore:{undoStacks:[],redoStacks:[]},teleportToWrapperElem:null,popupToWrapperElem:null,customPopupToElem:null,lastSTime:0,inited:!1,tooltipTimeout:null,initStatus:!1,isActivated:!1,rceDelay:0}}function pE(){return{updateColFlag:0,staticColumns:[],tableGroupColumn:[],tableColumn:[],tableData:[],scrollXLoad:!1,scrollYLoad:!1,overflowY:!0,overflowX:!1,scrollbarWidth:0,scrollbarHeight:0,rowHeight:0,parentHeight:0,isGroup:!1,isAllOverflow:!1,isAllSelected:!1,isIndeterminate:!1,currentColumn:null,selectRadioRow:null,footerTableData:[],rowGroupColumn:null,expandColumn:null,checkboxColumn:null,radioColumn:null,treeNodeColumn:null,hasFixedColumn:!1,upDataFlag:0,reColumnFlag:0,initStore:{filter:!1,import:!1,export:!1,custom:!1},customStore:{btnEl:null,isAll:!1,isIndeterminate:!1,activeBtn:!1,activeWrapper:!1,visible:!1,maxHeight:null,defPopupStyle:{},panePopupStyle:{},oldSortMaps:{},oldFixedMaps:{},oldVisibleMaps:{}},customColumnList:[],filterStore:{isAllSelected:!1,isIndeterminate:!1,style:null,column:null,visible:!1,maxHeight:null},columnStore:{leftList:[],centerList:[],rightList:[],resizeList:[],pxList:[],pxMinList:[],autoMinList:[],scaleList:[],scaleMinList:[],autoList:[],remainList:[]},ctxMenuStore:{selected:null,visible:!1,showChild:!1,selectChild:null,list:[],style:null},editStore:{indexs:{columns:[]},titles:{columns:[]},selected:{row:null,column:null},copyed:{cut:!1,rows:[],columns:[]},actived:{row:null,column:null},focused:{row:null,column:null}},tooltipStore:{row:null,column:null,content:``,visible:!1,type:null,currOpts:{}},validStore:{visible:!1},validErrorMaps:{},importStore:{inited:!1,file:null,type:``,modeList:[],typeList:[],filename:``,visible:!1},importParams:{mode:``,types:null,message:!0},exportStore:{inited:!1,name:``,modeList:[],typeList:[],columns:[],isPrint:!1,hasFooter:!1,hasMerge:!1,hasTree:!1,hasRowGroup:!1,hasColgroup:!1,visible:!1},exportParams:{filename:``,sheetName:``,mode:``,type:``,isColgroup:!1,isMerge:!1,isTreeAllExpanded:!1,isRowGroupAllExpanded:!1,useStyle:!1,original:!1,message:!0,isHeader:!1,isTitle:!1,isFooter:!1},visiblwRowsFlag:1,isRowGroupStatus:!1,rowGroupList:[],aggHandleFields:[],aggHandleAggColumns:[],rowGroupExpandedFlag:1,rowExpandedFlag:1,treeExpandedFlag:1,updateCheckboxFlag:1,pendingRowFlag:1,insertRowFlag:1,removeRowFlag:1,mergeHeadFlag:1,mergeBodyFlag:1,mergeFootFlag:1,rowHeightStore:{xlarge:54,large:52,default:48,medium:44,small:40,mini:36},scrollVMLoading:!1,scrollYHeight:0,scrollYTop:0,isScrollYBig:!1,scrollXLeft:0,scrollXWidth:0,isScrollXBig:!1,lazScrollLoading:!1,rowExpandHeightFlag:1,calcCellHeightFlag:1,resizeHeightFlag:1,resizeWidthFlag:1,isCustomStatus:!1,isCustomDragStatus:!0,ctPopupFlag:1,isCrossDragRow:!1,dragRow:null,isCrossDragCol:!1,dragCol:null,dragTipText:``,isDragResize:!1,isRowLoading:!1,isColLoading:!1}}var mE=`__max`;function hE(e,t){if(t||!e[mE]){let t=0;for(let n in e){let r=e[n];n!==mE&&Z.isNumber(r)&&r>t&&(t=r)}return e[mE]=t,t}return e[mE]}var gE=(e,t)=>{let n=[];return e.forEach(e=>{e.parentId=t?t.id:null,e.visible&&(e.children&&e.children.length&&e.children.some(e=>e.visible)?(n.push(e),n.push(...gE(e.children,e))):n.push(e))}),n},_E=e=>{let t=1,n=(e,r)=>{if(r&&(e.level=r.level+1,te.visible)){let t=0;e.children.forEach(r=>{r.visible&&(n(r,e),t+=r.colSpan)}),e.colSpan=t}else e.colSpan=1};e.forEach(e=>{e.level=1,n(e)});let r=[];for(let e=0;e{e.rowSpan=e.children&&e.children.length&&e.children.some(e=>e.visible)?1:t-e.level+1,r[e.level-1].push(e)}),r};function vE(e){let t=e.length,n=e[0].reduce((e,t)=>e+t.colSpan,0),r=[],i=[];for(let e=0;e-1}function CE(e){let{currKeyField:t}=e.internalData;return t}function $(e,t){let{isCurrDeepKey:n,currKeyField:r}=e.internalData;return t?EE((n?DE:kE)(t,r)):``}function wE(e){let{isCurrDeepKey:t,currKeyField:n}=e.internalData,{computeRowOpts:r}=e.getComputeMaps(),i=r.value,a=t?OE:AE;return{rowKey:n,handleUpdateRowId(e){return e?a(i,e,n):``}}}function TE(e){let{isCurrDeepKey:t,currKeyField:n}=e.internalData,r=t?DE:kE;return{rowKey:n,handleGetRowId(e){return e?EE(r(e,n)):``}}}function EE(e){return Z.eqNull(e)?``:encodeURIComponent(e)}function DE(e,t){return Z.get(e,t)}function OE(e,t,n){let r=EE(DE(t,n));return Kw(r)&&(r=``+xE(e,t,n),Z.set(t,n,r)),r}function kE(e,t){return e[t]}function AE(e,t,n){let r=EE(kE(t,n));if(Kw(r)){let i=xE(e,t,n);r=``+i,t[n]=i}return r}function jE(e,t){return t?Z.isString(t)||Z.isNumber(t)?e.getColumnByField(`${t}`):t:null}function ME(e,t){if(t){let n=Z.isString(t)||Z.isNumber(t)?t:$(e,t);return e.getRowById(n)}return null}function NE(e,t,n,r){return e.resizeHeight||t.height||n.height||e.height||r}function PE(e){if(e){let t=getComputedStyle(e);return Z.toNumber(t.paddingLeft)+Z.toNumber(t.paddingRight)}return 0}function FE(e){if(e){let t=getComputedStyle(e),n=Z.toNumber(t.marginLeft),r=Z.toNumber(t.marginRight);return e.offsetWidth+n+r}return 0}function IE(e,t){return e&&(Z.isArray(e)?e.map(({label:e,value:n,data:r,resetValue:i,checked:a})=>({label:e,value:n,data:r,resetValue:i,checked:!!a,_checked:!!a,_colId:t})):[])}function LE(e){return e.map((e,t)=>t%2==0?Number(e)+1:`.`).join(``)}function RE(e,t){return t?Z.get(e,t.field):null}function zE(e,t,n){t&&Z.set(e,t.field,n)}function BE(e){if(e){let t=e.value;if(t)return t.$el||t}return null}function VE(e){return e===`unset`?0:e||0}function HE(e){let{$table:t,column:n,cell:r}=e,{elemStore:i}=t.internalData,{computeColumnOpts:a,computeResizableOpts:o}=t.getComputeMaps(),s=o.value,c=a.value,{maxWidth:l}=s,u=n.maxWidth||c.maxWidth;if(l){let t=Z.isFunction(l)?l(e):l;if(t!==`auto`)return Math.max(1,Z.toNumber(t))}let d=Z.floor((Z.toNumber(getComputedStyle(r).fontSize)||14)*1.8)+(PE(r)+PE(RT(r,`.vxe-cell`)));if(u){let e=BE(i[`main-body-scroll`]);if(e){if(MT(u)){let t=(e.clientWidth-1)/100;return Math.max(d,Math.floor(Z.toInteger(u)*t))}if(jT(u))return Math.max(d,Z.toInteger(u))}}return-1}function UE(e){let{$table:t,column:n,cell:r}=e,i=t.props,a=t.internalData,{computeColumnOpts:o,computeResizableOpts:s}=t.getComputeMaps(),c=s.value,l=o.value,{minWidth:u}=c;if(u){let t=Z.isFunction(u)?u(e):u;if(t!==`auto`)return Math.max(1,Z.toNumber(t))}let{elemStore:d}=a,{showHeaderOverflow:f}=i,{showHeaderOverflow:p}=n,m=n.minWidth||l.minWidth,h=Z.isUndefined(p)||Z.isNull(p)?f:p,g=h===`title`||h===!0||h===`tooltip`||h===`ellipsis`,_=Z.floor((Z.toNumber(getComputedStyle(r).fontSize)||14)*1.8)+(PE(r)+PE(RT(r,`.vxe-cell`)));if(g){let e=FE(RT(r,`.vxe-cell--drag-handle`)),t=FE(RT(r,`.vxe-cell--checkbox`)),n=FE(RT(r,`.vxe-cell--required-icon`)),i=FE(RT(r,`.vxe-cell--edit-icon`)),a=FE(RT(r,`.vxe-cell-title-prefix-icon`)),o=FE(RT(r,`.vxe-cell-title-suffix-icon`)),s=FE(RT(r,`.vxe-cell--sort`)),c=FE(RT(r,`.vxe-cell--filter`));_+=e+t+n+i+a+o+c+s}if(m){let e=BE(d[`main-body-scroll`]);if(e){if(MT(m)){let t=(e.clientWidth-1)/100;return Math.max(_,Math.floor(Z.toInteger(m)*t))}if(jT(m))return Math.max(_,Z.toInteger(m))}}return _}function WE(e){return e&&(e.constructor===dE||e instanceof dE)}function GE(e){let t=[];return e.forEach(e=>{t.push(...e.children&&e.children.length?GE(e.children):[e])}),t}function KE(e,t,n){return WE(t)?t:Ne(new dE(e,t,n))}function qE(e,t,n){Object.keys(t).forEach(r=>{C(()=>t[r],t=>{n.update(r,t),e&&(r===`filters`?(e.setFilter(n,t),e.handleUpdateDataQueue()):[`visible`,`fixed`,`width`,`minWidth`,`maxWidth`].includes(r)&&e.handleRefreshColumnQueue())})})}function JE(e,t,n,r){let{reactData:i}=e,{staticColumns:a}=i,o=t.parentNode,s=r?r.columnConfig:null,c=s?s.children:a;o&&c&&(n.defaultParentId=s?s.id:null,c.splice(Z.arrayIndexOf(o.children,t),0,n),i.staticColumns=a.slice(0))}function YE(e,t){let{reactData:n}=e,{staticColumns:r}=n,i=Z.findTree(r,e=>e.id===t.id,{children:`children`});i&&i.items.splice(i.index,1),n.staticColumns=r.slice(0)}function XE(e,t){let{internalData:n}=e,{fullColumnIdData:r}=n;if(!t)return null;let i=t.parentId;for(;r[i];){let e=r[i].column;if(i=e.parentId,!i)return e}return t}function ZE(e){let{children:t}=e;return t&&t.length?ZE(Z.first(t)):e}function QE(e){let{children:t}=e;return t&&t.length?ZE(Z.last(t)):e}function $E(e){let{props:t,internalData:n}=e;n.initStatus=!1;let r=[e.clearSort(),e.clearCurrentRow(),e.clearCurrentColumn(),e.clearRadioRow(),e.clearRadioReserve(),e.clearCheckboxRow(),e.clearCheckboxReserve(),e.clearRowExpand(),e.clearTreeExpand(),e.clearTreeExpandReserve(),e.clearPendingRow()];return e.clearFilter&&r.push(e.clearFilter()),e.clearSelected&&(t.keyboardConfig||t.mouseConfig)&&r.push(e.clearSelected()),e.clearCellAreas&&t.mouseConfig&&r.push(e.clearCellAreas(),e.clearCopyCellArea()),Promise.all(r).then(()=>e.clearScroll())}function eD(e){return e.clearFilter&&e.clearFilter(),$E(e)}function tD(e,t){let n=e.reactData,r=e.internalData,{computeLeftFixedWidth:i,computeRightFixedWidth:a,computeRowOpts:o,computeCellOpts:s,computeDefaultRowHeight:c}=e.getComputeMaps(),{scrollYLoad:l,scrollYTop:u,isAllOverflow:d}=n,{elemStore:f,afterFullData:p,fullAllDataRowIdData:m,isResizeCellHeight:h}=r,g=o.value,_=s.value,v=c.value,y=i.value,b=a.value,x=BE(f[`main-body-scroll`]),S=$(e,t);if(x){let n=x.clientHeight,r=x.scrollTop,i=x.querySelector(`[rowid="${S}"]`);if(i){let t=i.offsetTop+(l?u:0),a=i.clientHeight;if(tr+n)return e.scrollTo(null,t);if(t+a>=n+r)return e.scrollTo(null,r+a)}else if(l){if(!(h||_.height||g.height)&&d)return e.scrollTo(null,(e.findRowIndexOf(p,t)-1)*v);let i=m[S]||{},a=i.resizeHeight||_.height||g.height||i.height||v,o=i.oTop;return oa+f)&&!(n>=a+f&&ni-p)return e.scrollTo(n+r-(i-p-1))}}else if(c){let r=0,o=n.renderWidth;for(let e=0;ea+f)&&!(r>=a+f&&r{p||t.handleCellDragMousedownEvent(n,e)},h.onMouseup=t.handleCellDragMouseupEvent),Y(`span`,Object.assign({key:`dg`,class:[`vxe-cell--drag-handle`,{"is--disabled":p}]},h),m?t.callSlot(m,e):[Y(`i`,{class:l||(s?s.rowIcon:``)||dD().TABLE_DRAG_ROW})])}function _D(e,t){let{$table:n,column:r,level:i}=e,{dragSort:a}=r,{treeConfig:o,dragConfig:s}=n.props,{computeRowOpts:c,computeRowDragOpts:l,computeTreeOpts:u}=n.getComputeMaps(),d=c.value,f=l.value,p=u.value,{showIcon:m,isPeerDrag:h,isCrossDrag:g,visibleMethod:_}=f,v=_||(s?s.rowVisibleMethod:null),y=[];return a&&d.drag&&(m||s&&s.showRowIcon)&&(!v||v(e))&&(o?p.transform&&(h||g||!i)&&y.push(gD(e)):y.push(gD(e))),y.concat(Z.isArray(t)?t:[t])}function vD(e){let{$table:t,column:n}=e,{context:r}=t,i=r.slots,{slots:a}=n,{computeColumnOpts:o,computeColumnDragOpts:s}=t.getComputeMaps(),c=o.value,{showIcon:l,icon:u,trigger:d,isPeerDrag:f,isCrossDrag:p,visibleMethod:m,disabledMethod:h}=s.value;if(c.drag&&l&&(!m||m(e))&&!n.fixed&&(f||p||!n.parentId)){let n=h&&h(e),r=(a?a.columnDragIcon||a[`column-drag-icon`]:null)||i.columnDragIcon||i[`column-drag-icon`],o={};return d!==`cell`&&(o.onMousedown=r=>{n||t.handleHeaderCellDragMousedownEvent(r,e)},o.onMouseup=t.handleHeaderCellDragMouseupEvent),Y(`span`,Object.assign({key:`dg`,class:[`vxe-cell--drag-handle`,{"is--disabled":n}]},o),r?t.callSlot(r,e):[Y(`i`,{class:u||dD().TABLE_DRAG_COLUMN})])}return pD(t)}function yD(e,t){return[mD(e),vD(e),...Z.isArray(t)?t:[t],hD(e)]}function bD(e,t){return e.type===`html`&&Z.isString(t)?Y(`span`,{key:`ch`,innerHTML:t}):Y(`span`,{key:`ct`},lD(t))}function xD(e,t){let{$table:n,column:r}=e,i=n.props,a=n.reactData,{computeHeaderTooltipOpts:o}=n.getComputeMaps(),{showHeaderOverflow:s}=i,{isRowGroupStatus:c}=a,{showHeaderOverflow:l,slots:u}=r,d=u?u.title:null,f=o.value,p=f.showAll,m=Z.eqNull(l)?s:l,h=(m===!0?f.mode:m)===`title`,g=(m===!0?f.mode:m)===`tooltip`,_={};(h||g||p)&&(_.onMouseenter=t=>{a.isDragResize||(h?WT(t.currentTarget,r):(g||p)&&n.triggerHeaderTooltipEvent(t,e))}),(g||p)&&(_.onMouseleave=e=>{a.isDragResize||(g||p)&&n.handleTargetLeaveEvent(e)});let v=bD(r,t);return[Y(`span`,Object.assign({class:`vxe-cell--title`},_),c&&r.aggFunc&&n.getPivotTableAggregateRenderColTitles?n.getPivotTableAggregateRenderColTitles(r,v):d?n.callSlot(d,e):[v])]}function SD(e){let{$table:t,column:n,row:r}=e,{editConfig:i}=t.props,{slots:a,editRender:o,cellRender:s}=n,c=a?a.footer:null;if(c)return t.callSlot(c,e);let l=i&&Rw(i)&&Rw(o)?o:null,u=Rw(s)?s:null,d=l||u,f=t.getFooterCellLabel(r,n);if(d){let t=fD.get(d.name);if(t){let n=t.renderTableFooter||t.renderFooter;if(n)return lD(n(d,Object.assign(e,{cellValue:f,itemValue:f})))}}return[Y(`span`,{class:`vxe-cell--label`},Gw(f,1))]}function CD(e){let{$table:t,row:n,column:r}=e;return Gw(t.getCellLabel(n,r),1)}function wD(e){let{column:t,row:n,$table:r}=e,i=r.props,{isRowGroupStatus:a}=r.reactData,{editConfig:o}=i,{type:s,treeNode:c,rowGroupNode:l,editRender:u}=t,{computeEditOpts:d,computeCheckboxOpts:f,computeAggregateOpts:p}=r.getComputeMaps(),{mode:m}=p.value,h=f.value,g=d.value,_=c||a&&(m===`column`?t.field===n.groupField:l);switch(s){case`seq`:return _?DD.renderDeepIndexCell(e):DD.renderSeqCell(e);case`radio`:return _?DD.renderDeepRadioCell(e):DD.renderRadioCell(e);case`checkbox`:return h.checkField?_?DD.renderDeepSelectionCellByProp(e):DD.renderCheckboxCellByProp(e):_?DD.renderDeepSelectionCell(e):DD.renderCheckboxCell(e);case`expand`:return DD.renderExpandCell(e);case`html`:return _?DD.renderDeepHTMLCell(e):DD.renderHTMLCell(e)}return o&&Rw(o)&&Rw(u)&&u?g.mode===`cell`?_?DD.renderDeepCellEdit(e):DD.renderCellEdit(e):_?DD.renderDeepRowEdit(e):DD.renderRowEdit(e):_?DD.renderDeepCell(e):DD.renderDefaultCell(e)}function TD(e){let{column:t,$table:n}=e,{editConfig:r}=n.props,{type:i,filters:a,sortable:o,editRender:s}=t;switch(i){case`seq`:return DD.renderSeqHeader(e);case`radio`:return DD.renderRadioHeader(e);case`checkbox`:return DD.renderCheckboxHeader(e);case`html`:if(a&&o)return DD.renderSortAndFilterHeader(e);if(o)return DD.renderSortHeader(e);if(a)return DD.renderFilterHeader(e)}return r&&Rw(r)&&Rw(s)&&s?DD.renderEditHeader(e):a&&o?DD.renderSortAndFilterHeader(e):o?DD.renderSortHeader(e):a?DD.renderFilterHeader(e):DD.renderDefaultHeader(e)}function ED(e){return DD.renderDefaultFooter(e)}var DD={createColumn(e,t){let{type:n}=t,r={renderHeader:TD,renderCell:wD,renderFooter:ED};return n===`expand`&&(r.renderData=DD.renderExpandData),KE(e,t,r)},renderHeaderTitle(e){let{$table:t,column:n}=e,{editConfig:r}=t.props,{slots:i,editRender:a,cellRender:o}=n,s=i?i.header:null;if(s)return xD(e,t.callSlot(s,e));let c=r&&Rw(r)&&Rw(a)?a:null,l=Rw(o)?o:null,u=c||l;if(u){let t=fD.get(u.name);if(t){let n=t.renderTableHeader||t.renderHeader;if(n)return xD(e,lD(n(u,e)))}}return xD(e,t.getHeaderCellLabel(n))},renderDefaultHeader(e){return yD(e,DD.renderHeaderTitle(e))},renderDefaultCell(e){let{$table:t,row:n,column:r}=e,i=t.props,a=t.reactData,o=t.internalData,{isRowGroupStatus:s}=a,{editConfig:c}=i,{field:l,slots:u,editRender:d,cellRender:f,rowGroupNode:p,aggFunc:m}=r,h=c&&Rw(c)&&Rw(d)?d:null,g=Rw(f)?f:null,_=u?u.default:null,v=u?u.groupContent||u[`group-content`]:null,y=u?u.groupValues||u[`group-values`]:null,b=``;if(s&&l&&n.isAggregate){let i=n,{fullColumnFieldData:a}=o,{computeAggregateOpts:s}=t.getComputeMaps(),{mode:c,showTotal:u,totalMethod:d,countFields:f,contentMethod:h,formatValuesMethod:g,mapChildrenField:_}=s.value,x=i.aggData,S=x?x[l]:null,C=i.groupField,w=i.groupContent,T=_&&i[_]||[],E=i.childCount,D=a[C]||{},O={$table:t,groupField:C,groupColumn:D?D.column:null,column:r,groupValue:w,childList:T,childCount:E,aggValue:null,children:T,totalValue:E};if(c===`column`?l===i.groupField:p){if(b=w,h&&(b=`${h(O)}`),u&&(b=uD(`vxe.table.rowGroupContentTotal`,[b,d?d(O):E,E])),v)return _D(e,t.callSlot(v,Object.assign({groupField:C,groupContent:w,childList:T,childCount:E},e)))}else if(t.getPivotTableAggregateCellAggValue){if(b=t.getPivotTableAggregateCellAggValue(e),O.aggValue=b,y)return _D(e,t.callSlot(y,Object.assign({groupField:C,groupContent:w,childList:T,childCount:E},e,O)))}else if((m===!0||f&&f.includes(l))&&(b=S?S.value:E,O.aggValue=b,g&&(b=g(O)),y))return _D(e,t.callSlot(y,Object.assign({groupField:C,groupContent:w,childList:T,childCount:E},e,O)))}else{if(_)return _D(e,t.callSlot(_,e));let i=h||g;if(i){let t=fD.get(i.name);if(t){let n=h?t.renderTableCell||t.renderCell:t.renderTableDefault||t.renderDefault;if(n)return _D(e,lD(n(i,Object.assign({$type:h?`edit`:`cell`},e))))}}b=t.getCellLabel(n,r)}let x=h?h.placeholder:``;return _D(e,[Y(`span`,{class:`vxe-cell--label`},[h&&Kw(b)?Y(`span`,{class:`vxe-cell--placeholder`},Gw(Ww(x),1)):Y(`span`,Gw(b,1))])])},renderDeepCell(e){return DD.renderDeepNodeBtn(e,DD.renderDefaultCell(e))},renderDefaultFooter(e){return SD(e)},renderRowGroupBtn(e,t){let{$table:n}=e,r=n.reactData,i=n.internalData,{row:a,level:o}=e,{computeAggregateOpts:s}=n.getComputeMaps(),{rowGroupExpandedFlag:c}=r,{rowGroupExpandedMaps:l}=i,{mode:u,padding:d,indent:f,showIcon:p,iconOpen:m,iconClose:h}=s.value,g=$(n,a),_=!!c&&!!l[g];return Y(`div`,{class:[`vxe-row-group--tree-node`,{"is--expanded":_}],style:u!==`column`&&d&&f?{paddingLeft:`${o*f}px`}:void 0},[p&&a.isAggregate?Y(`span`,{class:`vxe-row-group--node-btn`,onClick(t){n.triggerRowGroupExpandEvent(t,e)}},[Y(`i`,{class:_?m||dD().TABLE_ROW_GROUP_OPEN:h||dD().TABLE_ROW_GROUP_CLOSE})]):pD(n),Y(`div`,{class:`vxe-row-group-cell`},t)])},renderTreeNodeBtn(e,t){let{$table:n,isHidden:r}=e,i=n.reactData,a=n.internalData,{row:o,column:s,level:c}=e,{slots:l}=s,u=l?l.icon:null;if(u)return n.callSlot(u,e);let{computeTreeOpts:d}=n.getComputeMaps(),{treeExpandedFlag:f}=i,{fullAllDataRowIdData:p,treeExpandedMaps:m,treeExpandLazyLoadedMaps:h}=a,g=d.value,{padding:_,indent:v,lazy:y,trigger:b,visibleMethod:x,iconLoaded:S,showIcon:C,iconOpen:w,iconClose:T}=g,E=g.children||g.childrenField,D=g.hasChild||g.hasChildField,O=o[E],k=O&&O.length,A=!1,j=!1,M=!1,N=!1,P={};if(!r){let e=$(n,o);if(j=!!f&&!!m[e],y){let t=p[e];M=!!h[e],A=o[D],N=!!t.treeLoaded}}return(!b||b==="default")&&(P.onClick=t=>{n.triggerTreeExpandEvent(t,e)}),Y(`div`,{class:[`vxe-cell--tree-node`,{"is--active":j}],style:_&&v?{paddingLeft:`${c*v}px`}:void 0},[C&&(y?N?k:k||A:k)&&(!x||x(e))?[Y(`div`,Object.assign({class:`vxe-cell--tree-btn`},P),[Y(`i`,{class:M?S||dD().TABLE_TREE_LOADED:j?w||dD().TABLE_TREE_OPEN:T||dD().TABLE_TREE_CLOSE})])]:null,Y(`div`,{class:`vxe-tree-cell`},t)])},renderDeepNodeBtn(e,t){let{$table:n,row:r,column:i}=e,{rowGroupNode:a}=i,{rowGroupList:o}=n.reactData;if(o.length){let{computeAggregateOpts:o}=n.getComputeMaps(),{mode:s}=o.value;if(s===`column`)return r.groupField&&i.field===r.groupField?[DD.renderRowGroupBtn(e,t)]:t;if(a)return[DD.renderRowGroupBtn(e,t)]}return[DD.renderTreeNodeBtn(e,t)]},renderSeqHeader(e){let{$table:t,column:n}=e,{slots:r}=n,i=r?r.header:null;return yD(e,xD(e,i?t.callSlot(i,e):t.getHeaderCellLabel(n)))},renderSeqCell(e){let{$table:t,column:n}=e,{treeConfig:r}=t.props,{computeSeqOpts:i}=t.getComputeMaps(),a=i.value,{slots:o}=n,s=o?o.default:null;if(s)return _D(e,t.callSlot(s,e));let{seq:c}=e,l=a.seqMethod;return _D(e,[Y(`span`,`${Gw(l?l(e):r?c:(a.startIndex||0)+c,1)}`)])},renderDeepIndexCell(e){return DD.renderDeepNodeBtn(e,DD.renderSeqCell(e))},renderRadioHeader(e){let{$table:t,column:n}=e,{slots:r}=n,i=r?r.header:null,a=r?r.title:null;return yD(e,xD(e,i?t.callSlot(i,e):[Y(`span`,{class:`vxe-radio--label`},a?t.callSlot(a,e):t.getHeaderCellLabel(n))]))},renderRadioCell(e){let{$table:t,column:n,isHidden:r}=e,i=t.reactData,{computeRadioOpts:a}=t.getComputeMaps(),{selectRadioRow:o}=i,s=a.value,{slots:c}=n,{labelField:l,checkMethod:u,visibleMethod:d}=s,{row:f}=e,p=c?c.default:null,m=c?c.radio:null,h=t.eqRow(f,o),g=!d||d({$table:t,row:f}),_=!!u,v;r||(v={onClick(n){!_&&g&&t.triggerRadioRowEvent(n,e)}},u&&(_=!u({$table:t,row:f})));let y=Object.assign(Object.assign({},e),{checked:h,disabled:_,visible:g});if(m)return _D(e,t.callSlot(m,y));let b=[];return g&&b.push(Y(`span`,{class:[`vxe-radio--icon`,h?dD().TABLE_RADIO_CHECKED:_?dD().TABLE_RADIO_DISABLED_UNCHECKED:dD().TABLE_RADIO_UNCHECKED]})),(p||l)&&b.push(Y(`span`,{class:`vxe-radio--label`},p?t.callSlot(p,y):Z.get(f,l))),_D(e,[Y(`span`,Object.assign({class:[`vxe-cell--radio`,{"is--checked":h,"is--disabled":_}]},v),b)])},renderDeepRadioCell(e){return DD.renderDeepNodeBtn(e,DD.renderRadioCell(e))},renderCheckboxHeader(e){let{$table:t,column:n,isHidden:r}=e,i=t.reactData,{computeIsAllCheckboxDisabled:a,computeCheckboxOpts:o}=t.getComputeMaps(),{isAllSelected:s,isIndeterminate:c}=i,l=a.value,{slots:u}=n,d=u?u.header:null,f=u?u.title:null,{checkStrictly:p,showHeader:m,headerTitle:h}=o.value,g=t.getHeaderCellLabel(n),_={};r||(_.onClick=e=>{l||t.triggerCheckAllEvent(e,!s)});let v=Object.assign(Object.assign({},e),{checked:s,disabled:l,indeterminate:c});return d?yD(e,xD(v,t.callSlot(d,v))):(p?!m:m===!1)?yD(e,xD(v,[Y(`span`,{class:`vxe-checkbox--label`},f?t.callSlot(f,v):g)])):yD(e,xD(v,[Y(`span`,Object.assign({class:[`vxe-cell--checkbox`,{"is--checked":s,"is--disabled":l,"is--indeterminate":c}],title:Z.eqNull(h)?uD(`vxe.table.allTitle`):`${h||``}`},_),[Y(`span`,{class:[`vxe-checkbox--icon`,c?dD().TABLE_CHECKBOX_INDETERMINATE:s?dD().TABLE_CHECKBOX_CHECKED:l?dD().TABLE_CHECKBOX_DISABLED_UNCHECKED:dD().TABLE_CHECKBOX_UNCHECKED]})].concat(f||g?[Y(`span`,{class:`vxe-checkbox--label`},f?t.callSlot(f,v):g)]:[]))]))},renderCheckboxCell(e){let{$table:t,row:n,column:r,isHidden:i}=e,a=t.props,o=t.reactData,s=t.internalData,{treeConfig:c}=a,{updateCheckboxFlag:l,isRowGroupStatus:u}=o,{selectCheckboxMaps:d,treeIndeterminateRowMaps:f}=s,{computeCheckboxOpts:p,computeAggregateOpts:m}=t.getComputeMaps(),{mapChildrenField:h}=m.value,{labelField:g,checkMethod:_,visibleMethod:v}=p.value,{slots:y}=r,b=y?y.default:null,x=y?y.checkbox:null,S=!1,C=!1,w=!0,T=!1,E={};if(!i){let r=$(t,n);if(C=!!l&&!!d[r],_&&u&&t.isAggregateRecord(n)){let e=n[h||``];(!e||!e.length||e.every(e=>!_({$table:t,row:e})))&&(T=!0)}else w=!v||v({$table:t,row:n}),T=_?!_({$table:t,row:n}):!!_;(c||u)&&(S=!!f[r]),E.onClick=n=>{!T&&w&&t.triggerCheckRowEvent(n,e,!C)}}let D=Object.assign(Object.assign({},e),{checked:C,disabled:T,visible:w,indeterminate:S});if(x)return _D(e,t.callSlot(x,D));let O=[];return w&&O.push(Y(`span`,{class:[`vxe-checkbox--icon`,S?dD().TABLE_CHECKBOX_INDETERMINATE:C?dD().TABLE_CHECKBOX_CHECKED:T?dD().TABLE_CHECKBOX_DISABLED_UNCHECKED:dD().TABLE_CHECKBOX_UNCHECKED]})),(b||g)&&O.push(Y(`span`,{class:`vxe-checkbox--label`},b?t.callSlot(b,D):Z.get(n,g))),_D(e,[Y(`span`,Object.assign({class:[`vxe-cell--checkbox`,{"is--checked":C,"is--disabled":T,"is--indeterminate":S,"is--hidden":!w}]},E),O)])},renderDeepSelectionCell(e){return DD.renderDeepNodeBtn(e,DD.renderCheckboxCell(e))},renderCheckboxCellByProp(e){let{$table:t,row:n,column:r,isHidden:i}=e,a=t.props,o=t.reactData,s=t.internalData,{treeConfig:c}=a,{updateCheckboxFlag:l,isRowGroupStatus:u}=o,{treeIndeterminateRowMaps:d}=s,{computeCheckboxOpts:f,computeAggregateOpts:p}=t.getComputeMaps(),{mapChildrenField:m}=p.value,h=f.value,{labelField:g,checkField:_,checkMethod:v,visibleMethod:y}=h,b=h.indeterminateField||h.halfField,{slots:x}=r,S=x?x.default:null,C=x?x.checkbox:null,w=!1,T=!1,E=!0,D=!1,O={};if(!i){let r=$(t,n);if(T=!!l&&Z.get(n,_),v&&u&&t.isAggregateRecord(n)){let e=n[m||``];(!e||!e.length||e.every(e=>!v({$table:t,row:e})))&&(D=!0)}else E=!y||y({$table:t,row:n}),D=v?!v({$table:t,row:n}):!!v;(c||u)&&(w=!!d[r]),O.onClick=n=>{!D&&E&&t.triggerCheckRowEvent(n,e,!T)}}let k=Object.assign(Object.assign({},e),{checked:T,disabled:D,visible:E,indeterminate:w});if(C)return _D(e,t.callSlot(C,k));let A=[];return E&&(A.push(Y(`span`,{class:[`vxe-checkbox--icon`,w?dD().TABLE_CHECKBOX_INDETERMINATE:T?dD().TABLE_CHECKBOX_CHECKED:D?dD().TABLE_CHECKBOX_DISABLED_UNCHECKED:dD().TABLE_CHECKBOX_UNCHECKED]})),(S||g)&&A.push(Y(`span`,{class:`vxe-checkbox--label`},S?t.callSlot(S,k):Z.get(n,g)))),_D(e,[Y(`span`,Object.assign({class:[`vxe-cell--checkbox`,{"is--checked":T,"is--disabled":D,"is--indeterminate":b&&!T?n[b]:w,"is--hidden":!E}]},O),A)])},renderDeepSelectionCellByProp(e){return DD.renderDeepNodeBtn(e,DD.renderCheckboxCellByProp(e))},renderExpandCell(e){let{$table:t,isHidden:n,row:r,column:i}=e,a=t.reactData,o=t.internalData,{isRowGroupStatus:s}=a,{rowExpandedMaps:c,rowExpandLazyLoadedMaps:l}=o,{computeExpandOpts:u}=t.getComputeMaps(),{lazy:d,labelField:f,iconLoaded:p,showIcon:m,iconOpen:h,iconClose:g,visibleMethod:_}=u.value,{slots:v}=i,y=v?v.default:null,b=v?v.icon:null,x=!1,S=!1;if(s&&r.isAggregate)return _D(e,[]);if(b)return _D(e,t.callSlot(b,e));if(!n){let e=$(t,r);x=!!c[e],d&&(S=!!l[e])}return _D(e,[m&&(!_||_(e))?Y(`div`,{class:[`vxe-table--expanded`,{"is--active":x}]},[Y(`span`,{class:`vxe-table--expand-btn`,onMousedown(e){e.stopPropagation()},onClick(n){t.triggerRowExpandEvent(n,e)}},[Y(`i`,{class:S?p||dD().TABLE_EXPAND_LOADED:x?h||dD().TABLE_EXPAND_OPEN:g||dD().TABLE_EXPAND_CLOSE})])]):pD(t),y||f?Y(`div`,{class:`vxe-table--expand-label`},y?t.callSlot(y,e):Z.get(r,f)):pD(t)])},renderExpandData(e){let{$table:t,column:n}=e,{slots:r,contentRender:i}=n,a=r?r.content:null;if(a)return t.callSlot(a,e);if(i){let t=fD.get(i.name);if(t){let n=t.renderTableExpand||t.renderExpand;if(n)return lD(n(i,e))}}return[]},renderHTMLCell(e){let{$table:t,column:n}=e,{slots:r}=n,i=r?r.default:null;return i?_D(e,t.callSlot(i,e)):_D(e,[Y(`span`,{class:`vxe-cell--html`,innerHTML:CD(e)})])},renderDeepHTMLCell(e){return DD.renderDeepNodeBtn(e,DD.renderHTMLCell(e))},renderSortAndFilterHeader(e){return yD(e,DD.renderHeaderTitle(e).concat(DD.renderSortIcon(e).concat(DD.renderFilterIcon(e))))},renderSortHeader(e){return yD(e,DD.renderHeaderTitle(e).concat(DD.renderSortIcon(e)))},renderSortIcon(e){let{$table:t,column:n}=e,{computeSortOpts:r}=t.getComputeMaps(),{showIcon:i,allowBtn:a,ascTitle:o,descTitle:s,iconLayout:c,iconAsc:l,iconDesc:u,iconVisibleMethod:d}=r.value,{order:f,slots:p}=n;if(i&&(!d||d(e))){let r=p?p.sort:null;return r?lD(t.callSlot(r,e)):[Y(`span`,{class:[`vxe-cell--sort`,`vxe-cell--sort-${c}-layout`]},[Y(`i`,{class:[`vxe-sort--asc-btn`,l||dD().TABLE_SORT_ASC,{"sort--active":f===`asc`}],title:Z.eqNull(o)?uD(`vxe.table.sortAsc`):`${o||``}`,onClick:a?e=>{e.stopPropagation(),t.triggerSortEvent(e,n,`asc`)}:void 0}),Y(`i`,{class:[`vxe-sort--desc-btn`,u||dD().TABLE_SORT_DESC,{"sort--active":f===`desc`}],title:Z.eqNull(s)?uD(`vxe.table.sortDesc`):`${s||``}`,onClick:a?e=>{e.stopPropagation(),t.triggerSortEvent(e,n,`desc`)}:void 0})])]}return[]},renderFilterHeader(e){return yD(e,DD.renderHeaderTitle(e).concat(DD.renderFilterIcon(e)))},renderFilterIcon(e){let{$table:t,column:n,hasFilter:r}=e,{filterStore:i}=t.reactData,{computeFilterOpts:a}=t.getComputeMaps(),{showIcon:o,iconNone:s,iconMatch:c,iconVisibleMethod:l}=a.value;return o&&(!l||l(e))?[Y(`span`,{class:[`vxe-cell--filter`,{"is--active":i.visible&&i.column===n}],onClick(n){t.triggerFilterEvent&&t.triggerFilterEvent(n,e.column,e)}},[Y(`i`,{class:[`vxe-filter--btn`,r?c||dD().TABLE_FILTER_MATCH:s||dD().TABLE_FILTER_NONE],title:uD(`vxe.table.filter`)})])]:[]},renderEditHeader(e){let{$table:t,column:n}=e,r=t.props,{computeEditOpts:i}=t.getComputeMaps(),{editConfig:a,editRules:o}=r,s=i.value,{sortable:c,filters:l,editRender:u}=n,d=a&&Rw(a),f=d&&Rw(u)?u:null,p=!1;if(o){let e=n.rules?n.rules:Z.get(o,n.field);e&&(p=e.some(e=>e.required))}let m=[];if(d){let{showAsterisk:e,showIcon:n,icon:r}=s;m=[p&&e?Y(`span`,{class:`vxe-cell--required-icon`},[Y(`i`)]):pD(t),f&&n?Y(`span`,{class:`vxe-cell--edit-icon`},Z.isFunction(r)?lD(r({})):[Y(`i`,{class:r||dD().TABLE_EDIT})]):pD(t)]}return yD(e,m.concat(DD.renderHeaderTitle(e)).concat(c?DD.renderSortIcon(e):[]).concat(l?DD.renderFilterIcon(e):[]))},renderRowEdit(e){let{$table:t,column:n}=e,{editConfig:r}=t.props,{editStore:i}=t.reactData,{actived:a}=i,{editRender:o}=n,s=r&&Rw(r)&&Rw(o)?o:null;return DD.runRenderer(e,!!(s&&a&&a.row===e.row))},renderDeepRowEdit(e){return DD.renderDeepNodeBtn(e,DD.renderRowEdit(e))},renderCellEdit(e){let{$table:t,column:n}=e,{editConfig:r}=t.props,{editStore:i}=t.reactData,{actived:a}=i,{editRender:o}=n,s=r&&Rw(r)&&Rw(o)?o:null;return DD.runRenderer(e,!!(s&&a&&a.row===e.row&&a.column===e.column))},renderDeepCellEdit(e){return DD.renderDeepNodeBtn(e,DD.renderCellEdit(e))},runRenderer(e,t){let{$table:n,row:r,column:i}=e,{editConfig:a}=n.props,{isRowGroupStatus:o}=n.reactData,{slots:s,field:c,editRender:l,formatter:u}=i,d=a&&Rw(a)&&Rw(l)?l:null,f=s?s.default:null,p=s?s.groupContent||s[`group-content`]:null,m=s?s.edit:null,h=Object.assign({$type:``,isEdit:t},e);if(t&&d){if(h.$type=`edit`,m)return n.callSlot(m,h);let e=fD.get(d.name),t=e?e.renderTableEdit||e.renderEdit:null;return t?lD(t(d,h)):[]}if(o&&c&&r.isAggregate){let t=r,{computeAggregateOpts:i}=n.getComputeMaps(),{mapChildrenField:a}=i.value,o=t.groupField,s=t.groupContent,c=a&&t[a]||[],l=t.childCount;if(p)return _D(e,n.callSlot(p,Object.assign({groupField:o,groupContent:s,childList:c,childCount:l},e)))}else if(f)return _D(e,n.callSlot(f,h));return u?_D(e,[Y(`span`,{class:`vxe-cell--label`},CD(h))]):DD.renderDefaultCell(h)}},OD={colId:[String,Number],type:String,field:String,title:String,width:[Number,String],minWidth:[Number,String],maxWidth:[Number,String],resizable:{type:Boolean,default:null},fixed:String,align:String,headerAlign:String,footerAlign:String,showOverflow:{type:[Boolean,String],default:null},showHeaderOverflow:{type:[Boolean,String],default:null},showFooterOverflow:{type:[Boolean,String],default:null},className:[String,Function],headerClassName:[String,Function],footerClassName:[String,Function],formatter:[Function,Array,String],headerFormatter:[Function,Array,String],footerFormatter:[Function,Array,String],padding:{type:Boolean,default:null},verticalAlign:{type:String,default:null},sortable:Boolean,sortBy:[String,Function],sortType:String,filters:{type:Array,default:null},filterMultiple:{type:Boolean,default:!0},filterMethod:Function,filterResetMethod:Function,filterRecoverMethod:Function,filterRender:Object,floatingFilters:Object,rules:Array,rowGroupNode:Boolean,treeNode:Boolean,dragSort:Boolean,rowResize:Boolean,visible:{type:Boolean,default:null},headerExportMethod:Function,exportMethod:Function,footerExportMethod:Function,titleHelp:Object,titlePrefix:Object,titleSuffix:Object,cellType:String,cellRender:Object,editRender:Object,contentRender:Object,aggFunc:[Boolean,String],copyMethod:Function,cutMethod:Function,pasteMethod:Function,params:Object},kD=wT({name:`VxeColumn`,props:OD,setup(e,{slots:t}){let n=H(),r=Xe(`$xeTable`,null),a=Xe(`$xeColgroup`,null);if(!r)return()=>V();let o=DD.createColumn(r,e);o.slots=t;let s=()=>Y(`div`,{ref:n}),c={columnConfig:o,renderVN:s};return qE(r,e,o),i(()=>{let e=n.value;e&&JE(r,e,o,a)}),Te(()=>{YE(r,o)}),P(`$xeColumn`,c),P(`$xeGrid`,null),P(`$xeGantt`,null),s}}),AD=Object.assign({},kD,{install(e){e.component(kD.name,kD),e.component(`VxeTableColumn`,kD)}});Q.dynamicApp&&(Q.dynamicApp.component(kD.name,kD),Q.dynamicApp.component(`VxeTableColumn`,kD)),Q.component(kD);var jD=AD,MD=wT({name:`VxeColgroup`,props:OD,setup(e,{slots:t}){let n=H(),r=Xe(`$xeTable`,null),a=Xe(`$xeColgroup`,null);if(!r)return()=>V();let o=DD.createColumn(r,e),s={};return t.header&&(s.header=t.header),t.title&&(s.title=t.title),o.slots=s,o.children=[],qE(r,e,o),i(()=>{let e=n.value;e&&JE(r,e,o,a)}),Te(()=>{YE(r,o)}),P(`$xeColgroup`,{columnConfig:o}),P(`$xeGrid`,null),P(`$xeGantt`,null),()=>{let e=t.default;return Y(`div`,{ref:n},e?e():[])}}}),ND=Object.assign({},MD,{install(e){e.component(MD.name,MD),e.component(`VxeTableColgroup`,MD)}});Q.dynamicApp&&(Q.dynamicApp.component(MD.name,MD),Q.dynamicApp.component(`VxeTableColgroup`,MD)),Q.component(MD);var PD=ND,{getConfig:FD}=Q,ID={id:[String,Function],data:Array,height:[Number,String],minHeight:{type:[Number,String],default:()=>null},maxHeight:[Number,String],resizable:{type:Boolean,default:()=>FD().table.resizable},stripe:{type:Boolean,default:()=>FD().table.stripe},border:{type:[Boolean,String],default:()=>FD().table.border},padding:{type:Boolean,default:null},round:{type:Boolean,default:()=>FD().table.round},size:{type:String,default:()=>FD().table.size||FD().size},fit:{type:Boolean,default:()=>FD().table.fit},loading:Boolean,align:{type:String,default:()=>FD().table.align},headerAlign:{type:String,default:()=>FD().table.headerAlign},footerAlign:{type:String,default:()=>FD().table.footerAlign},showHeader:{type:Boolean,default:()=>FD().table.showHeader},highlightCurrentRow:{type:Boolean,default:()=>FD().table.highlightCurrentRow},highlightHoverRow:{type:Boolean,default:()=>FD().table.highlightHoverRow},highlightCurrentColumn:{type:Boolean,default:()=>FD().table.highlightCurrentColumn},highlightHoverColumn:{type:Boolean,default:()=>FD().table.highlightHoverColumn},highlightCell:Boolean,showFooter:Boolean,footerData:Array,footerMethod:Function,rowClassName:[String,Function],cellClassName:[String,Function],headerRowClassName:[String,Function],headerCellClassName:[String,Function],footerRowClassName:[String,Function],footerCellClassName:[String,Function],cellStyle:[Object,Function],headerCellStyle:[Object,Function],footerCellStyle:[Object,Function],rowStyle:[Object,Function],headerRowStyle:[Object,Function],footerRowStyle:[Object,Function],showCustomHeader:{type:Boolean,default:()=>FD().table.showCustomHeader},mergeHeaderCells:Array,mergeCells:Array,mergeFooterCells:Array,mergeFooterItems:Array,spanMethod:Function,footerSpanMethod:Function,showOverflow:{type:[Boolean,String],default:()=>FD().table.showOverflow},showHeaderOverflow:{type:[Boolean,String],default:()=>FD().table.showHeaderOverflow},showFooterOverflow:{type:[Boolean,String],default:()=>FD().table.showFooterOverflow},columnKey:Boolean,rowKey:Boolean,rowId:{type:String,default:()=>FD().table.rowId},zIndex:Number,emptyText:{type:String,default:()=>FD().table.emptyText},keepSource:{type:Boolean,default:()=>FD().table.keepSource},autoResize:{type:Boolean,default:()=>FD().table.autoResize},syncResize:[Boolean,String,Number],resizeConfig:Object,columnConfig:Object,currentColumnConfig:Object,cellConfig:Object,headerCellConfig:Object,footerCellConfig:Object,rowConfig:Object,aggregateConfig:Object,aggregateAccuracyConfig:Object,rowGroupConfig:Object,currentRowConfig:Object,dragConfig:Object,rowDragConfig:Object,columnDragConfig:Object,resizableConfig:Object,seqConfig:Object,sortConfig:Object,filterConfig:Object,floatingFilterConfig:Object,radioConfig:Object,checkboxConfig:Object,tooltipConfig:Object,headerTooltipConfig:Object,footerTooltipConfig:Object,exportConfig:Object,importConfig:Object,printConfig:Object,expandConfig:Object,treeConfig:Object,menuConfig:Object,mouseConfig:Object,areaConfig:Object,keyboardConfig:Object,clipConfig:Object,fnrConfig:Object,editConfig:Object,editDirtyConfig:Object,validConfig:Object,editRules:Object,loadingConfig:Object,emptyRender:Object,customConfig:Object,scrollX:Object,scrollY:Object,virtualXConfig:Object,virtualYConfig:Object,scrollbarConfig:Object,undoRedoHistoryConfig:Object,animat:{type:Boolean,default:()=>FD().table.animat},delayHover:{type:Number,default:()=>FD().table.delayHover},params:Object},{getConfig:LD}=Q,RD=Object.assign(Object.assign({},ID),{layouts:Array,columns:Array,pagerConfig:Object,proxyConfig:Object,toolbarConfig:Object,formConfig:Object,zoomConfig:Object,size:{type:String,default:()=>LD().grid.size||LD().size}}),zD=`ready.init-rendered.data-rendered.update:data.keydown-start.keydown.keydown-end.paste.copy.cut.undo.redo.context-menu.columns-change.data-change.footer-data-change.current-change.current-row-change.current-row-disabled.current-column-change.current-column-disabled.radio-change.checkbox-change.checkbox-all.checkbox-range-start.checkbox-range-change.checkbox-range-end.checkbox-range-select.cell-click.cell-dblclick.cell-menu.cell-mouseenter.cell-mouseleave.cell-selected.cell-delete-value.cell-backspace-value.header-cell-click.header-cell-dblclick.header-cell-menu.footer-cell-click.footer-cell-dblclick.footer-cell-menu.clear-merge.sort-change.clear-sort.clear-all-sort.filter-change.filter-visible.clear-filter.clear-all-filter.resizable-change.column-resizable-change.row-resizable-change.toggle-row-group-expand.toggle-row-expand.toggle-tree-expand.menu-click.edit-closed.row-dragstart.row-dragover.row-dragend.row-remove-dragend.row-insert-dragend.column-dragstart.column-dragover.column-dragend.enter-append-row.tab-append-row.edit-actived.edit-activated.edit-disabled.valid-error.scroll.scroll-boundary.custom.custom-open.custom-close.custom-cancel.custom-reset.custom-confirm.custom-visible-change.custom-visible-all.custom-fixed-change.custom-sort-change.custom-align-change.custom-header-align-change.custom-footer-align-change.change-fnr.open-fnr.show-fnr.hide-fnr.fnr-change.fnr-find.fnr-find-all.fnr-replace.fnr-replace-all.cell-area-copy.cell-area-cut.cell-area-paste.cell-area-merge.clear-cell-area-selection.clear-cell-area-merge.header-cell-area-selection.cell-area-selection-invalid.cell-area-selection-start.cell-area-selection-drag.cell-area-selection-end.cell-area-extension-start.cell-area-extension-drag.cell-area-extension-end.cell-area-extension-fill.cell-area-selection-all-start.cell-area-selection-all-end.cell-area-arrows-start.cell-area-arrows-end.cell-area-fill-copy.active-cell-change-start.active-cell-change-end`.split(`.`),BD=[...zD,`page-change`,`form-submit`,`form-submit-invalid`,`form-reset`,`form-collapse`,`form-toggle-collapse`,`proxy-query`,`proxy-delete`,`proxy-save`,`toolbar-button-click`,`toolbar-tool-click`,`zoom`],VD=`row--drag-move`,HD=`col--drag-move`;function UD(e,t){Z.arrayEach(e,e=>{e.style.transform=`translateY(${t}px)`}),requestAnimationFrame(()=>{Z.arrayEach(e,e=>{FT(e,VD),e.style.transform=``})})}function WD(e,t){setTimeout(()=>{e&&Z.arrayEach(e.querySelectorAll(t.map(e=>`${e}.${VD}`).join(`,`)),e=>PT(e,VD))},500)}function GD(e,t){Z.arrayEach(e,e=>{e.style.transform=`translateX(${t}px)`}),requestAnimationFrame(()=>{Z.arrayEach(e,e=>{FT(e,HD),e.style.transform=``})})}function KD(e,t){setTimeout(()=>{e&&Z.arrayEach(e.querySelectorAll(t.map(e=>`${e}.${VD}`).join(`,`)),e=>PT(e,HD))},500)}var qD=Ne({row:null});function JD(){return qD}var{getI18n:YD,renderer:XD,renderEmptyElement:ZD}=Q,QD=`table`,$D=`body`,eO=wT({name:`VxeTableBody`,props:{tableData:Array,tableColumn:Array,fixedColumn:Array,fixedType:{type:String,default:``}},setup(e){let t=Xe(`$xeTable`,{}),{xID:n,props:r,context:a,reactData:o,internalData:s}=t,{computeEditOpts:c,computeMouseOpts:l,computeCellOffsetWidth:u,computeAreaOpts:d,computeDefaultRowHeight:f,computeEmptyOpts:p,computeTooltipOpts:m,computeRadioOpts:h,computeExpandOpts:g,computeTreeOpts:_,computeCheckboxOpts:v,computeCellOpts:y,computeValidOpts:b,computeRowOpts:x,computeColumnOpts:S,computeRowDragOpts:C,computeResizableOpts:w,computeVirtualXOpts:T,computeVirtualYOpts:E,computeIsBodyRenderOptimize:D}=t.getComputeMaps(),O=H(),k=H(),A=H(),j=H(),M=H(),N=H(),P=H(),ee=H(),F=()=>{let{delayHover:e}=r,{isDragResize:t}=o,{lastSTime:n}=s;return!!(t||n&&Date.now(){let{column:a}=n,{treeConfig:o}=r,c=y.value,l=x.value,u=f.value,d=_.value,{slots:p,treeNode:m}=a,{fullAllDataRowIdData:h}=s;if(o&&m&&(d.showLine||d.line)){if(p&&p.line)return t.callSlot(p.line,n);let r=h[e],a=0,o=null,s=null,f=``;if(r&&(a=r.level,o=r.items[r.treeIndex-1],s=r.parent),!a&&!d.showRootLine)return[];if(o)f=`${(h[$(t,o)]||{}).lineHeight||0}px`;else if(a&&s){let e=h[$(t,s)]||{};f=`calc(-1em + ${Math.floor(i/2+NE(e,c,l,u)/2)}px)`}return[Y(`div`,{key:`tl`,class:`vxe-tree--line-wrapper`},[Y(`div`,{class:`vxe-tree--line`,style:{height:f,bottom:`-${Math.floor(i/2)}px`,left:`calc(${a*d.indent}px + 1em)`}})])]}return[]},te=(e,n,i,a,p,h,g,_,D,O,k,A,j)=>{let M=t.xeGrid,N=t.xeGantt,{columnKey:P,resizable:ee,showOverflow:te,border:ne,height:re,treeConfig:L,cellClassName:ie,cellStyle:ae,align:R,spanMethod:oe,mouseConfig:z,editConfig:se,editRules:ce,tooltipConfig:le,padding:ue}=r,{tableData:de,tableColumn:fe,dragRow:B,overflowX:pe,overflowY:me,currentColumn:V,scrollXLoad:he,scrollYLoad:ge,mergeBodyFlag:_e,calcCellHeightFlag:ve,resizeHeightFlag:ye,resizeWidthFlag:be,editStore:xe,isAllOverflow:Se,validErrorMaps:Ce}=o,{fullAllDataRowIdData:H,fullColumnIdData:we,mergeBodyCellMaps:Te,visibleColumn:Ee,afterFullData:De,mergeBodyList:Oe,scrollXStore:ke,scrollYStore:U,keepUpdateFieldMaps:Ae}=s,je=y.value,W=b.value,Me=v.value,Ne=c.value,G=m.value,Pe=w.value,K=T.value,Fe=E.value,{isAllColumnDrag:Ie,isAllRowDrag:Le}=Pe,q=x.value,Re=C.value,ze=f.value,Be=ve?je.height||q.height:0,{disabledMethod:Ve,isCrossDrag:He,isPeerDrag:Ue}=Re,We=S.value,Ge=l.value,Ke=d.value,J=u.value,{selectCellToRow:qe}=Ke,{field:Je,type:Ye,cellRender:Xe,editRender:Ze,align:Qe,showOverflow:$e,className:et,treeNode:tt,rowResize:nt,padding:rt,verticalAlign:it,slots:at}=O,{verticalAlign:ot}=je,{actived:st}=xe,ct=H[n]||{},lt=O.id,ut=we[lt]||{},dt=Ze||Xe,ft=dt?XD.get(dt.name):null,pt=ft?ft.tableCellClassName||ft.cellClassName:null,mt=ft?ft.tableCellStyle||ft.cellStyle:``,ht=G.showAll,gt=ut.index,_t=ut._index,vt=Rw(Ze),yt=ye?ct.resizeHeight:0,bt=pe&&(i?O.fixed!==i:!!O.fixed),xt=Z.eqNull(rt)?ue===null?je.padding:ue:rt,St=Z.eqNull($e)?te:$e,Ct=(St===!0?G.mode:St)===`ellipsis`,wt=(St===!0?G.mode:St)===`title`,Tt=(St===!0?G.mode:St)===`tooltip`,Et=Se||wt||Tt||Ct,Dt=Z.isBoolean(O.resizable)?O.resizable:We.resizable||ee,Ot=!!Be,kt=yt>0,At,jt={},Mt=Qe||(ft?ft.tableCellAlign:``)||R,Nt=Z.eqNull(it)?ot:it,Pt=Ce[`${n}:${lt}`],Ft=ce&&W.showErrorMessage&&(W.message==="default"?re||de.length>1:W.message===`inline`),It={colid:lt},Lt={$table:t,$grid:M,$gantt:N,isEdit:!1,seq:e,rowid:n,row:h,rowIndex:g,$rowIndex:_,_rowIndex:D,column:O,columnIndex:gt,$columnIndex:k,_columnIndex:_t,fixed:i,source:QD,type:$D,isHidden:!!bt,level:p,visibleData:De,data:de,items:j},Rt=!1,zt=!1;q.drag&&(Rt=Re.trigger===`row`||O.dragSort&&Re.trigger===`cell`),Rt&&(zt=!!(Ve&&Ve(Lt))),(wt||Tt||ht||le)&&(jt.onMouseover=e=>{F()||(wt?WT(e.currentTarget,O):(Tt||ht)&&t.triggerBodyTooltipEvent(e,Lt)),t.dispatchEvent(`cell-mouseenter`,Object.assign({cell:e.currentTarget},Lt),e)}),(Tt||ht||le)&&(jt.onMouseleave=e=>{F()||(Tt||ht)&&t.handleTargetLeaveEvent(e),t.dispatchEvent(`cell-mouseleave`,Object.assign({cell:e.currentTarget},Lt),e)}),(Rt||Me.range||z)&&(jt.onMousedown=e=>{t.triggerCellMousedownEvent(e,Lt)}),Rt&&(jt.onMouseup=t.triggerCellMouseupEvent),jt.onClick=e=>{t.triggerCellClickEvent(e,Lt)},jt.onDblclick=e=>{t.triggerCellDblclickEvent(e,Lt)};let Bt=!1,Vt=1,Ht=1;if(_e&&Oe.length){let e=Te[`${D}:${_t}`];if(e){let{rowspan:n,colspan:r}=e;if(!n||!r)return ZD(t);n>1&&(Bt=!0,Ht=n,It.rowspan=n),r>1&&(Bt=!0,Vt=r,It.colspan=r)}}else if(oe){let{rowspan:e=1,colspan:n=1}=oe(Lt)||{};if(!e||!n)return ZD(t);e>1&&(Bt=!0,Ht=e,It.rowspan=e),n>1&&(Bt=!0,Vt=n,It.colspan=n)}bt&&Bt&&(It.colspan>1||It.rowspan>1)&&(bt=!1),!bt&&se&&(Ne.showStatus||Ne.showUpdateStatus)&&Ae[Je]&&(At=t.isUpdateByRow(h,Je));let Ut=!Et&&(ge||he),Wt=NE(ct,je,q,ze),Gt=k===A.length-1,Kt=!O.resizeWidth&&(O.minWidth===`auto`||O.width===`auto`),qt=!1;if(Bt||(!B||$(t,B)!==n)&&(me&&ge&&de.length>16&&!L&&!Fe.immediate&&(DU.visibleEndIndex+U.preloadSize)||pe&&he&&fe.length>10&&!K.immediate&&!O.fixed&&(_tke.visibleEndIndex+ke.preloadSize))&&(qt=!0),Ht>1){let e=De[D+Ht-1];if(e){let n=H[$(t,e)];n&&(Wt+=n.oTop+NE(n,je,q,ze)-ct.oTop-NE(ct,je,q,ze))}}let Jt={};if(Et&&be){let e=0;if(Vt>1)for(let t=1;tt.handleColResizeMousedownEvent(e,i,Lt),onDblclick:e=>t.handleColResizeDblclickEvent(e,Lt)})),(nt||Le)&&q.resizable&&Yt.push(Y(`div`,{key:`tcr`,class:`vxe-cell--row-resizable`,onMousedown:e=>t.handleRowResizeMousedownEvent(e,Lt),onDblclick:e=>t.handleRowResizeDblclickEvent(e,Lt)})),Y(`td`,Object.assign(Object.assign(Object.assign({class:[`vxe-table--column vxe-body--column`,lt,Nt?`col--vertical-${Nt}`:``,Mt?`col--${Mt}`:``,Ye?`col--${Ye}`:``,{"col--last":Gt,"col--tree-node":tt,"col--edit":vt,"col--ellipsis":Et,"col--cs-height":Ot,"col--rs-height":kt,"col--to-row":Xt,"col--auto-height":Ut,"fixed--width":!Kt,"fixed--hidden":bt,"is--padding":xt,"is--progress":bt&&Se||qt,"is--drag-cell":Rt&&(He||Ue||!p),"is--drag-disabled":zt,"col--dirty":At,"col--active":se&&vt&&st.row===h&&(st.column===O||Ne.mode===`row`),"col--valid-error":!!Pt,"show--valid-bg":Pt&&W.showErrorBackground,"col--current":V===O},kT(pt,Lt),kT(et,Lt),kT(ie,Lt)],key:P||he||ge||We.useKey||q.useKey||We.drag?lt:k},It),{style:Object.assign({},Z.isFunction(mt)?mt(Lt):mt,Z.isFunction(ae)?ae(Lt):ae)}),jt),a&&bt?[]:Yt)},ne=(e,n,i,a)=>{let l=t.xeGrid,u=t.xeGantt,{stripe:d,rowKey:f,highlightHoverRow:p,rowClassName:m,rowStyle:y,editConfig:b,treeConfig:C}=r,{hasFixedColumn:w,treeExpandedFlag:T,scrollYLoad:E,isAllOverflow:D,rowExpandedFlag:O,expandColumn:k,selectRadioRow:A,pendingRowFlag:j,rowExpandHeightFlag:M,isRowGroupStatus:N}=o,{fullAllDataRowIdData:P,fullColumnIdData:ee,treeExpandedMaps:I,pendingRowMaps:re,rowExpandedMaps:L,currentRow:ie}=s,ae=v.value,R=h.value,oe=_.value,z=c.value,se=x.value,ce=S.value,{transform:le,seqMode:ue}=oe,de=oe.children||oe.childrenField,fe=[],{handleGetRowId:B}=TE(t),pe=C||N;return i.forEach((r,o)=>{let s=B(r),c=P[s]||{},h=o,_=0,v=-1,x=-1,S=N&&r.isAggregate,me={};(se.isHover||p)&&(me.onMouseover=e=>{F()||t.triggerHoverEvent(e,{row:r,rowIndex:h})},me.onMouseleave=()=>{F()||t.clearHoverRow()}),c&&(h=c.index,x=c._index,_=c.level,v=c.seq,S||C&&le&&ue===`increasing`?v=c._index+1:C&&ue===`fixed`&&(v=c._tIndex+1));let V={$table:t,seq:v,rowid:s,fixed:e,type:$D,level:_,row:r,rowIndex:h,$rowIndex:o,_rowIndex:x},he=k&&!!O&&!!L[s],ge=!1,_e=[],ve=!1;b&&(ve=t.isInsertByRow(r)),C&&!E&&!le&&(_e=r[de],ge=!!T&&_e&&_e.length>0&&!!I[s]),se.drag&&!N&&(!C||le)&&(me.onDragstart=t.handleRowDragDragstartEvent,me.onDragend=t.handleRowDragDragendEvent,me.onDragover=t.handleRowDragDragoverEvent);let ye=[`vxe-body--row`,pe?`row--level-${_}`:``,{"row--stripe":d&&(x+1)%2==0,"is--new":ve,"is--expand-row":he,"is--expand-tree":ge,"row--new":ve&&(z.showStatus||z.showInsertStatus),"row--radio":R.highlight&&t.eqRow(A,r),"row--checked":ae.highlight&&t.isCheckedByCheckboxRow(r),"row--pending":!!j&&!!re[s],"row--group":S,"row--current":ie&&s===$(t,ie)},kT(m,V)],be=a.map((t,c)=>te(v,s,e,n,_,r,h,o,x,t,c,a,i));if(fe.push(Y(`tr`,Object.assign({class:ye,rowid:s,style:y?Z.isFunction(y)?y(V):y:null,key:f||se.useKey||se.drag||ce.drag||N||C?s:o},me),be)),he){let{height:n,padding:i,mode:d}=g.value;if(d===`fixed`){let e=c.expandHeight,t=0;M&&(e||n)&&(t=(e||n||0)+1),fe.push(Y(`tr`,{class:`vxe-body--row-expanded-place`,key:`expand_${s}`,rowid:s},[Y(`td`,{class:`vxe-body--row-expanded-place-column`,colspan:a.length,style:{height:`${t}px`}})]))}else{let c={};n&&(c.height=`${n}px`),C&&(c.paddingLeft=`${_*oe.indent+30}px`);let{showOverflow:d}=k||{},f=k.id,p=ee[f]||{},m=Z.eqNull(d)?D:d,g=-1,y=-1,b=-1;p&&(g=p.index,y=p.$index,b=p._index);let S={$table:t,$grid:l,$gantt:u,seq:v,column:k,columnIndex:g,$columnIndex:y,_columnIndex:b,fixed:e,source:QD,type:$D,level:_,row:r,rowid:s,rowIndex:h,$rowIndex:o,_rowIndex:x,isHidden:!1,isEdit:!1,visibleData:[],data:[],items:[]};fe.push(Y(`tr`,{class:[`vxe-body--expanded-row`,{"is--padding":i}],key:`expand_${s}`},[Y(`td`,{class:[`vxe-body--expanded-column`,{"fixed--hidden":e&&!w,"col--ellipsis":m}],colspan:a.length},[Y(`div`,{class:[`vxe-body--expanded-cell`,{"is--ellipsis":n}],style:c},[k.renderData(S)])])]))}}ge&&fe.push(...ne(e,n,_e,a))}),fe};return i(()=>{J(()=>{let{fixedType:t}=e,{elemStore:n}=s,r=`${t||`main`}-body-`;n[`${r}wrapper`]=O,n[`${r}scroll`]=k,n[`${r}table`]=A,n[`${r}colgroup`]=j,n[`${r}list`]=M,n[`${r}xSpace`]=N,n[`${r}ySpace`]=P,n[`${r}emptyBlock`]=ee})}),Te(()=>{let{fixedType:t}=e,{elemStore:n}=s,r=`${t||`main`}-body-`;n[`${r}wrapper`]=null,n[`${r}scroll`]=null,n[`${r}table`]=null,n[`${r}colgroup`]=null,n[`${r}list`]=null,n[`${r}xSpace`]=null,n[`${r}ySpace`]=null,n[`${r}emptyBlock`]=null}),()=>{let{slots:i}=a,c=t.xeGrid,u=t.xeGantt,{fixedColumn:d,fixedType:f,tableColumn:m}=e,{mouseConfig:h}=r,{isGroup:g,tableData:_,isColLoading:v,overflowX:y,scrollXLoad:b,scrollYLoad:x,dragRow:S,dragCol:C}=o,{visibleColumn:w,fullAllDataRowIdData:T,fullColumnIdData:E}=s,F=p.value,I=l.value,te=D.value,re=_,L=m,ie=te;if(!v&&(f||!y)&&(L=w),f&&ie&&(L=d||[]),x&&S&&re.length>2){let e=T[$(t,S)];if(e){let n=e._index,r=re[0],i=re[re.length-1],a=T[$(t,r)],o=T[$(t,i)];if(a&&o){let e=a._index,t=o._index;nt&&(re=re.concat([S]))}}}if(!f&&!g&&b&&C&&L.length>2){let e=E[C.id];if(e){let t=e._index,n=L[0],r=L[L.length-1],i=E[n.id],a=E[r.id];if(i&&a){let e=i._index,n=a._index;tn&&(L=L.concat([C]))}}}let ae,R=i?i.empty:null,oe={$table:t,$grid:c,$gantt:u};if(R)ae=t.callSlot(R,oe);else{let e=F.name?XD.get(F.name):null,t=e?e.renderTableEmpty||e.renderTableEmptyView||e.renderEmpty:null;ae=t?lD(t(F,oe)):r.emptyText||YD(`vxe.table.emptyText`)}return Y(`div`,{ref:O,class:[`vxe-table--body-wrapper`,f?`fixed-${f}--wrapper`:`body--wrapper`],xid:n},[Y(`div`,{ref:k,class:`vxe-table--body-inner-wrapper`,onScroll(e){t.triggerBodyScrollEvent(e,f)}},[f?ZD(t):Y(`div`,{ref:N,class:`vxe-body--x-space`}),Y(`div`,{ref:P,class:`vxe-body--y-space`}),Y(`table`,{ref:A,class:`vxe-table--body`,xid:n,cellspacing:0,cellpadding:0,border:0,xvm:ie?`1`:null},[Y(`colgroup`,{ref:j},L.map((e,t)=>Y(`col`,{name:e.id,key:t,style:{width:`${e.renderWidth}px`}}))),Y(`tbody`,{ref:M},ne(f,ie,re,L))]),Y(`div`,{class:`vxe-table--checkbox-range`}),h&&I.area?Y(`div`,{class:`vxe-table--cell-area`,xid:n},[Y(`span`,{class:`vxe-table--cell-main-area`},I.extension?[Y(`span`,{class:`vxe-table--cell-main-area-btn`,onMousedown(e){t.triggerCellAreaExtendMousedownEvent&&t.triggerCellAreaExtendMousedownEvent(e,{$table:t,fixed:f,type:$D})}})]:[]),Y(`span`,{class:`vxe-table--cell-clip-area`}),Y(`span`,{class:`vxe-table--cell-extend-area`}),Y(`span`,{class:`vxe-table--cell-multi-area`}),Y(`span`,{class:`vxe-table--cell-active-area`}),Y(`span`,{class:`vxe-table--cell-row-status-area`})]):ZD(t),f?ZD(t):Y(`div`,{class:`vxe-table--empty-block`,ref:ee},[Y(`div`,{class:`vxe-table--empty-content`},ae)])])])}}}),{renderer:tO,renderEmptyElement:nO}=Q,rO=`table`,iO=`header`,aO=wT({name:`VxeTableHeader`,props:{tableData:Array,tableColumn:Array,tableGroupColumn:Array,fixedColumn:Array,fixedType:{type:String,default:null}},setup(e){let t=Xe(`$xeTable`,{}),{xID:n,props:r,reactData:a,internalData:o}=t,{computeColumnOpts:s,computeColumnDragOpts:c,computeCellOpts:l,computeMouseOpts:u,computeHeaderCellOpts:d,computeDefaultRowHeight:f,computeVirtualXOpts:p,computeFloatingFilterOpts:m,computeIsHeaderRenderOptimize:h,computeHeaderTooltipOpts:g}=t.getComputeMaps(),_=H([]),v=H(),y=H(),b=H(),x=H(),S=H(),w=H(),T=H(),E=()=>{let{showCustomHeader:n}=r,{collectColumn:i,visibleColumn:s}=o,{tableGroupColumn:c}=e,{isGroup:l}=a,u=l?_E(c):[],d=[];n&&u.length>1&&(d=vE(u),u=d),_.value=u,J(()=>{t.dispatchEvent(`columns-change`,{visibleColgroups:d,collectColumn:i,visibleColumn:s},null)})},D=(n,i,u,m,h)=>{let _=t.xeGrid,v=t.xeGantt,{fixedType:y}=e,{resizable:b,columnKey:x,showCustomHeader:S,headerCellClassName:C,headerCellStyle:w,showHeaderOverflow:T,headerAlign:E,align:D,mouseConfig:O}=r,{currentColumn:k,dragCol:A,scrollXLoad:j,scrollYLoad:M,overflowX:N,mergeHeadFlag:P,tableColumn:ee}=a,{fullColumnIdData:F,scrollXStore:I,mergeHeaderList:te,mergeHeaderCellMaps:ne}=o,re=p.value,L=s.value,ie=c.value,ae=g.value,R=l.value,oe=f.value,z=d.value,se=VE(z.height)||oe,{disabledMethod:ce,isCrossDrag:le,isPeerDrag:ue}=ie,de=m===u.length-1;return h.map((e,r)=>{let{type:a,showHeaderOverflow:o,headerAlign:s,align:c,filters:l,headerClassName:u,editRender:d,cellRender:f}=e,p=e.id,g=F[p]||{},oe=d||f,fe=oe?tO.get(oe.name):null,B=e.children&&e.children.length,pe=N&&!B&&(y?e.fixed!==y:!!e.fixed),me=Z.isBoolean(z.padding)?z.padding:R.padding,V=Z.eqNull(o)?T:o,he=s||(fe?fe.tableHeaderCellAlign:``)||E||c||(fe?fe.tableCellAlign:``)||D,ge=(V===!0?ae.mode:V)===`ellipsis`,_e=(V===!0?ae.mode:V)===`title`,ve=(V===!0?ae.mode:V)===`tooltip`,ye=_e||ve||ge,be=!1,xe=null;l&&(xe=l[0],be=l.some(e=>e.checked));let Se=g.index,Ce=g._index,H={$table:t,$grid:_,$gantt:v,rowIndex:m,_rowIndex:m,$rowIndex:m,column:e,columnIndex:Se,$columnIndex:r,_columnIndex:Ce,firstFilterOption:xe,fixed:y,source:rO,type:iO,isHidden:pe,hasFilter:be},we={colid:p},Te=!1;if(S||(we.colspan=e.colSpan>1?e.colSpan:null,we.rowspan=e.rowSpan>1?e.rowSpan:null),P&&te.length&&(S||de)){let e=ne[`${m}:${S?r:Ce}`];if(e){let{rowspan:t,colspan:n}=e;if(!t||!n)return null;t>1&&(Te=!0,we.rowspan=t),n>1&&(Te=!0,we.colspan=n)}}let Ee={onClick:e=>t.triggerHeaderCellClickEvent(e,H),onDblclick:e=>t.triggerHeaderCellDblclickEvent(e,H)},De=L.drag&&ie.trigger===`cell`,Oe=!1;De&&(Oe=!!(ce&&ce(H))),(O||De)&&(Ee.onMousedown=e=>t.triggerHeaderCellMousedownEvent(e,H)),L.drag&&(Ee.onDragstart=t.handleHeaderCellDragDragstartEvent,Ee.onDragend=t.handleHeaderCellDragDragendEvent,Ee.onDragover=t.handleHeaderCellDragDragoverEvent,De&&(Ee.onMouseup=t.handleHeaderCellDragMouseupEvent));let ke=r===h.length-1,U=Z.isBoolean(e.resizable)?e.resizable:L.resizable||b,Ae=!e.resizeWidth&&(e.minWidth===`auto`||e.width===`auto`),je=!1;i&&N&&!n&&!Te&&(!A||A.id!==p)&&j&&ee.length>10&&!e.fixed&&!re.immediate&&(CeI.visibleEndIndex+I.preloadSize)&&(je=!0);let W={};if(ye?W.height=`${se}px`:W.minHeight=`${se}px`,!S&&B&&!de){let t=0;Z.eachTree(e.children,e=>{e.visible&&(!e.children||!e.children.length)&&(t+=e.renderWidth)}),W.width=`${t}px`}return Y(`th`,Object.assign(Object.assign(Object.assign({class:[`vxe-table--column vxe-header--column`,p,pe?`fixed--hidden`:`fixed--visible`,{[`col--${he}`]:he,[`col--${a}`]:a,"col--last":ke,"col--fixed":e.fixed,"col--group":B,"col--ellipsis":ye,"fixed--width":!Ae,"is--padding":me,"is--sortable":e.sortable,"col--filter":!!l,"is--filter-active":be,"is--drag-active":L.drag&&!e.fixed&&!Oe&&(le||ue||!e.parentId),"is--drag-disabled":L.drag&&Oe,"col--current":k===e},u?Z.isFunction(u)?u(H):u:``,C?Z.isFunction(C)?C(H):C:``],style:w?Z.isFunction(w)?w(H):w:null},we),Ee),{key:S?`${p}${r}`:x||j||M||L.useKey||L.drag||B?p:r}),[Y(`div`,{class:[`vxe-cell`,{"c--title":_e,"c--tooltip":ve,"c--ellipsis":ge}],style:W},je||i&&pe?[]:[Y(`div`,{colid:p,class:`vxe-cell--wrapper vxe-header-cell--wrapper`},e.renderHeader(H))]),!pe&&U&&(!S||de)?Y(`div`,{class:`vxe-cell--col-resizable`,onMousedown:e=>t.handleColResizeMousedownEvent(e,y,H),onDblclick:e=>t.handleColResizeDblclickEvent(e,H)}):nO(t)])})},O=(n,i)=>{let s=t.xeGrid,c=t.xeGantt,{fixedType:u}=e,{showHeaderOverflow:p,headerAlign:h,align:_}=r,{currentColumn:v,overflowX:y}=a,{fullColumnIdData:b}=o,x=g.value,S=l.value,C=f.value,w=d.value,{cellClassName:T}=m.value,E=VE(w.height)||C;return i.map((e,r)=>{let{type:a,showHeaderOverflow:o,headerAlign:l,align:d,filters:f,editRender:m,cellRender:g,floatingFilters:C,filterRender:D,slots:O}=e,k=e.id,A=b[k]||{},j=m||g,M=O?O.floatingFilter||O[`floating-filter`]:null,N=j?tO.get(j.name):null,P=Rw(D)?tO.get(D.name):null,ee=P?P.renderTableFloatingFilter:null,F=y&&(u?e.fixed!==u:!!e.fixed),I=Z.isBoolean(w.padding)?w.padding:S.padding,te=Z.eqNull(o)?p:o,ne=l||(N?N.tableHeaderCellAlign:``)||h||d||(N?N.tableCellAlign:``)||_,re=te===`ellipsis`,L=te===`title`,ie=te===!0?x.mode===`tooltip`:te===`tooltip`,ae=L||ie||re,R=!1,oe=null;f&&(oe=f[0],R=f.some(e=>e.checked));let z=A.index,se=A._index,ce={$table:t,$grid:s,$gantt:c,column:e,columnIndex:z,$columnIndex:r,_columnIndex:se,option:oe,fixed:u,source:rO,type:iO,isHidden:F,hasFilter:R},le={colid:k},ue=r===i.length-1,de=!e.resizeWidth&&(e.minWidth===`auto`||e.width===`auto`),fe={};return ae?fe.height=`${E}px`:fe.minHeight=`${E}px`,Y(`th`,Object.assign({class:[`vxe-table--column vxe-header--column is--floating-filters`,k,F?`fixed--hidden`:`fixed--visible`,{[`col--${ne}`]:ne,[`col--${a}`]:a,"col--last":ue,"col--fixed":e.fixed,"col--ellipsis":ae,"fixed--width":!de,"is--padding":I,"is--sortable":e.sortable,"col--current":v===e}],key:k},le),[Y(`div`,{class:[`vxe-cell`,``+(T||``),{"c--title":L,"c--tooltip":ie,"c--ellipsis":re}],style:fe},n&&F&&!C?[]:[Y(`div`,{colid:k,class:`vxe-cell--wrapper vxe-header-cell--wrapper`},M?t.callSlot(M,ce):ee&&oe?lD(ee(D,ce)):[])])])})},k=(n,i,a,o)=>{let{fixedType:s}=e,{headerRowClassName:c,headerRowStyle:l}=r,u=m.value,d=a.map((e,r)=>{let o={$table:t,rowIndex:r,_rowIndex:r,$rowIndex:r,fixed:s,type:iO};return Y(`tr`,{key:r,class:[`vxe-header--row`,c?Z.isFunction(c)?c(o):c:``],style:l?Z.isFunction(l)?l(o):l:null},D(n,i,a,r,e))});return u.enabled&&d.push(Y(`tr`,{key:`ff`,class:[`vxe-header--row is--floating-filters`,``+(u.rowClassName||``)]},O(i,o))),d};return C(()=>e.tableColumn,E),i(()=>{J(()=>{let{fixedType:n}=e,{internalData:r}=t,{elemStore:i}=r,a=`${n||`main`}-header-`;i[`${a}wrapper`]=v,i[`${a}scroll`]=y,i[`${a}table`]=b,i[`${a}colgroup`]=x,i[`${a}list`]=S,i[`${a}xSpace`]=w,i[`${a}repair`]=T,E()})}),Te(()=>{let{fixedType:n}=e,{internalData:r}=t,{elemStore:i}=r,a=`${n||`main`}-header-`;i[`${a}wrapper`]=null,i[`${a}scroll`]=null,i[`${a}table`]=null,i[`${a}colgroup`]=null,i[`${a}list`]=null,i[`${a}xSpace`]=null,i[`${a}repair`]=null}),()=>{let{fixedType:i,fixedColumn:s,tableColumn:c}=e,{mouseConfig:l}=r,{isGroup:d,isColLoading:f,overflowX:p,scrollXLoad:m,dragCol:g}=a,{visibleColumn:C,fullColumnIdData:T}=o,E=u.value,D=h.value,O=_.value||[],A=c,j=D;if(d?A=C:((!j||!f&&(i||!p))&&(A=C),i&&j&&(A=s||[]),O=[A]),!i&&!d&&m&&g&&A.length>2){let e=T[g.id];if(e){let t=e._index,n=A[0],r=A[A.length-1],i=T[n.id],a=T[r.id];if(i&&a){let e=i._index,n=a._index;tn&&(A=A.concat([g]),O=[O[0].concat([g])].concat(O.slice(1)))}}}return Y(`div`,{ref:v,class:[`vxe-table--header-wrapper`,i?`fixed-${i}--wrapper`:`body--wrapper`],xid:n},[Y(`div`,{ref:y,class:`vxe-table--header-inner-wrapper`,onScroll(e){t.triggerHeaderScrollEvent(e,i)}},[i?nO(t):Y(`div`,{ref:w,class:`vxe-body--x-space`}),Y(`table`,{ref:b,class:`vxe-table--header`,xid:n,cellspacing:0,cellpadding:0,border:0,xvm:j?`1`:null},[Y(`colgroup`,{ref:x},A.map((e,t)=>Y(`col`,{name:e.id,key:t,style:{width:`${e.renderWidth}px`}}))),Y(`thead`,{ref:S},k(d,j,O,A))]),l&&E.area?Y(`div`,{class:`vxe-table--cell-area`,xid:n},[Y(`span`,{class:`vxe-table--cell-main-area`}),Y(`span`,{class:`vxe-table--cell-clip-area`}),Y(`span`,{class:`vxe-table--cell-extend-area`}),Y(`span`,{class:`vxe-table--cell-multi-area`}),Y(`span`,{class:`vxe-table--cell-active-area`}),Y(`span`,{class:`vxe-table--cell-col-status-area`})]):nO(t)])])}}}),{renderer:oO,renderEmptyElement:sO}=Q,cO=`table`,lO=`footer`,uO=wT({name:`VxeTableFooter`,props:{footerTableData:{type:Array,default:()=>[]},tableColumn:{type:Array,default:()=>[]},fixedColumn:{type:Array,default:()=>[]},fixedType:{type:String,default:null}},setup(e){let t=Xe(`$xeTable`,{}),{xID:n,props:r,reactData:a,internalData:o}=t,{computeFooterTooltipOpts:s,computeColumnOpts:c,computeCellOpts:l,computeFooterCellOpts:u,computeDefaultRowHeight:d,computeResizableOpts:f,computeVirtualXOpts:p,computeIsFooterRenderOptimize:m}=t.getComputeMaps(),h=H(),g=H(),_=H(),v=H(),y=H(),b=H(),x=(n,i,m,h,g,_)=>{let v=t.xeGrid,y=t.xeGantt,{fixedType:b}=e,{resizable:x,border:S,footerCellClassName:C,footerCellStyle:w,footerAlign:T,footerSpanMethod:E,align:D,columnKey:O,showFooterOverflow:k}=r,{scrollXLoad:A,scrollYLoad:j,overflowX:M,currentColumn:N,mergeFootFlag:P}=a,{fullColumnIdData:ee,mergeFooterList:F,mergeFooterCellMaps:I,scrollXStore:te}=o,ne=p.value,re=s.value,{isAllColumnDrag:L}=f.value,ie=c.value,ae=d.value,R=l.value,oe=u.value,z=VE(oe.height)||ae;return i.map((e,r)=>{let{type:a,showFooterOverflow:o,footerAlign:s,align:c,footerClassName:l,editRender:u,cellRender:d}=e,f=e.id,p=ee[f]||{},ae=u||d,se=ae?oO.get(ae.name):null,ce=re.showAll,le=M&&(b?e.fixed!==b:!!e.fixed),ue=Z.isBoolean(oe.padding)?oe.padding:R.padding,de=Z.eqNull(o)?k:o,fe=s||(se?se.tableFooterCellAlign:``)||T||c||(se?se.tableCellAlign:``)||D,B=(de===!0?re.mode:de)===`ellipsis`,pe=(de===!0?re.mode:de)===`title`,me=(de===!0?re.mode:de)===`tooltip`,V=pe||me||B,he=Z.isBoolean(e.resizable)?e.resizable:ie.resizable||x,ge={colid:f},_e={},ve=p.index,ye=p._index,be={$table:t,$grid:v,$gantt:y,row:h,rowIndex:_,_rowIndex:_,$rowIndex:g,column:e,columnIndex:ve,$columnIndex:r,_columnIndex:ye,itemIndex:ye,items:h,fixed:b,source:cO,type:lO,data:m};(pe||me||ce)&&(_e.onMouseenter=n=>{pe?WT(n.currentTarget,e):(me||ce)&&t.triggerFooterTooltipEvent(n,be)}),(me||ce)&&(_e.onMouseleave=e=>{(me||ce)&&t.handleTargetLeaveEvent(e)}),_e.onClick=e=>{t.triggerFooterCellClickEvent(e,be)},_e.onDblclick=e=>{t.triggerFooterCellDblclickEvent(e,be)};let xe=!1;if(P&&F.length){let e=I[`${_}:${ye}`];if(e){let{rowspan:t,colspan:n}=e;if(!t||!n)return null;t>1&&(xe=!0,ge.rowspan=t),n>1&&(xe=!0,ge.colspan=n)}}else if(E){let{rowspan:e=1,colspan:t=1}=E(be)||{};if(!e||!t)return null;e>1&&(ge.rowspan=e),t>1&&(ge.colspan=t)}let Se=r===i.length-1,Ce=!e.resizeWidth&&(e.minWidth===`auto`||e.width===`auto`),H=!1;n&&M&&!xe&&A&&i.length>10&&!e.fixed&&!ne.immediate&&(yete.visibleEndIndex+te.preloadSize)&&(H=!0);let we={};return V?we.height=`${z}px`:we.minHeight=`${z}px`,Y(`td`,Object.assign(Object.assign(Object.assign(Object.assign({class:[`vxe-table--column vxe-footer--column`,e.id,{[`col--${fe}`]:fe,[`col--${a}`]:a,"col--last":Se,"fixed--width":!Ce,"fixed--hidden":le,"is--padding":ue,"col--ellipsis":V,"col--current":N===e},kT(l,be),kT(C,be)]},ge),{style:w?Z.isFunction(w)?w(be):w:null}),_e),{key:O||A||j||ie.useKey||ie.drag?e.id:r}),[Y(`div`,{class:[`vxe-cell`,{"c--title":pe,"c--tooltip":me,"c--ellipsis":B}],style:we},H?[]:[Y(`div`,{colid:f,class:`vxe-cell--wrapper vxe-footer-cell--wrapper`},e.renderFooter(be))]),!le&&he&&L?Y(`div`,{class:[`vxe-cell--col-resizable`,{"is--line":!S||S===`none`}],onMousedown:e=>t.handleColResizeMousedownEvent(e,b,be),onDblclick:e=>t.handleColResizeDblclickEvent(e,be)}):sO(t)])})},S=(n,i)=>{let{fixedType:a,footerTableData:o}=e,{footerRowClassName:s,footerRowStyle:c}=r;return o.map((e,r)=>{let l={$table:t,row:e,rowIndex:r,_rowIndex:r,$rowIndex:r,fixed:a,type:lO};return Y(`tr`,{key:r,class:[`vxe-footer--row`,s?Z.isFunction(s)?s(l):s:``],style:c?Z.isFunction(c)?c(l):c:null},x(n,i,o,e,r,r))})};return i(()=>{J(()=>{let{fixedType:t}=e,{elemStore:n}=o,r=`${t||`main`}-footer-`;n[`${r}wrapper`]=h,n[`${r}scroll`]=g,n[`${r}table`]=_,n[`${r}colgroup`]=v,n[`${r}list`]=y,n[`${r}xSpace`]=b})}),Te(()=>{let{fixedType:t}=e,{elemStore:n}=o,r=`${t||`main`}-footer-`;n[`${r}wrapper`]=null,n[`${r}scroll`]=null,n[`${r}table`]=null,n[`${r}colgroup`]=null,n[`${r}list`]=null,n[`${r}xSpace`]=null}),()=>{let{fixedType:r,fixedColumn:i,tableColumn:s}=e,{visibleColumn:c,fullColumnIdData:l}=o,{isGroup:u,isColLoading:d,overflowX:f,scrollXLoad:p,dragCol:x}=a,C=m.value,w=s,T=C;if((!T||!d&&(r||!f))&&(w=c),r&&T&&(w=i||[]),!r&&!u&&p&&x&&w.length>2){let e=l[x.id];if(e){let t=e._index,n=w[0],r=w[w.length-1],i=l[n.id],a=l[r.id];if(i&&a){let e=i._index,n=a._index;tn&&(w=w.concat([x]))}}}return Y(`div`,{ref:h,class:[`vxe-table--footer-wrapper`,r?`fixed-${r}--wrapper`:`body--wrapper`],xid:n},[Y(`div`,{ref:g,class:`vxe-table--footer-inner-wrapper`,onScroll(e){t.triggerFooterScrollEvent(e,r)}},[r?sO(t):Y(`div`,{ref:b,class:`vxe-body--x-space`}),Y(`table`,{ref:_,class:`vxe-table--footer`,xid:n,cellspacing:0,cellpadding:0,border:0,xvm:T?`1`:null},[Y(`colgroup`,{ref:v},w.map((e,t)=>Y(`col`,{name:e.id,key:t,style:{width:`${e.renderWidth}px`}}))),Y(`tfoot`,{ref:y},S(T,w))])])])}}}),{errLog:dO}=aE(`table`),{getI18n:fO,getIcon:pO,renderEmptyElement:mO}=Q;function hO(){return{}}var gO=wT({name:`TableCustomPanel`,props:{customStore:{type:Object,default:()=>({})}},setup(e,t){let n=Z.uniqueId(),r=Q.getComponent(`VxeModal`),i=Q.getComponent(`VxeDrawer`),a=Q.getComponent(`VxeButton`),o=Q.getComponent(`VxeNumberInput`),s=Q.getComponent(`VxeRadioGroup`),c=Xe(`$xeTable`,{}),{props:l,reactData:u,internalData:d}=c,{computeSize:f,computeCustomOpts:p,computeColumnDragOpts:m,computeColumnOpts:h,computeIsMaxFixedColumn:g,computeResizableOpts:_,computeAggregateOpts:v}=c.getComputeMaps(),y=H(),b=H(),x=H(),S=H(),C=H(),w=Ne({dragCol:null,dragGroupField:null,dragAggFnCol:null,dragTipText:``}),T=hO(),E={refElem:y,refBodyWrapperElem:b,refCustomBodyElem:x,refDragLineElem:S,refDragTipElem:C},D={},O=t=>{let{customStore:n}=e;n.activeWrapper=!0,c.customOpenEvent(t)},k=t=>{let{customStore:n}=e;n.activeWrapper=!1,setTimeout(()=>{!n.activeBtn&&!n.activeWrapper&&c.customCloseEvent(t)},300)},A=({$event:e})=>{u.isCustomStatus=!0,c.saveCustom(),c.closeCustom(),c.emitCustomEvent(`confirm`,e),c.dispatchEvent(`custom-confirm`,{},e),c.emitCustomEvent(`close`,e),c.dispatchEvent(`custom-close`,{},e)},j=({$event:e})=>{c.closeCustom(),c.emitCustomEvent(`close`,e),c.dispatchEvent(`custom-close`,{},e)},M=({$event:e})=>{c.cancelCustom(),c.closeCustom(),c.emitCustomEvent(`cancel`,e),c.dispatchEvent(`custom-cancel`,{},e),c.emitCustomEvent(`close`,e),c.dispatchEvent(`custom-close`,{},e)},N=e=>{c.resetCustom(!0),c.closeCustom(),c.emitCustomEvent(`reset`,e),c.dispatchEvent(`custom-reset`,{},e),c.emitCustomEvent(`close`,e),c.dispatchEvent(`custom-close`,{},e)},ee=({$event:e})=>{Q.modal?Q.modal.confirm({content:fO(`vxe.custom.cstmConfirmRestore`),className:`vxe-table--ignore-clear`,escClosable:!0}).then(t=>{t===`confirm`&&N(e)}):N(e)},F=e=>{let{customColumnList:t}=u,n=Z.findTree(t,t=>t===e);if(n&&n.parent){let{parent:e}=n;e.children&&e.children.length&&(e.renderVisible=e.children.every(e=>e.renderVisible),e.halfVisible=!e.renderVisible&&e.children.some(e=>e.renderVisible||e.halfVisible),F(e))}},I=(e,t)=>{let n=!e.renderVisible;p.value.immediate?(Z.eachTree([e],e=>{e.visible=n,e.renderVisible=n,e.halfVisible=!1}),u.isCustomStatus=!0,c.handleCustom(),c.saveCustomStore(`update:visible`)):Z.eachTree([e],e=>{e.renderVisible=n,e.halfVisible=!1}),F(e),c.checkCustomStatus(),c.dispatchEvent(`custom-visible-change`,{column:e,checked:n},t)},te=e=>{p.value.immediate&&e.renderResizeWidth!==e.renderWidth&&(e.resizeWidth=e.renderResizeWidth,e.renderWidth=e.renderResizeWidth,u.isCustomStatus=!0,c.handleCustom(),c.saveCustomStore(`update:width`))},ne=(e,t,n)=>{let r=g.value,i=p.value,a=null;i.immediate?(e.renderFixed===t?(a=``,Z.eachTree([e],e=>{e.fixed=``,e.renderFixed=``})):(!r||e.renderFixed)&&(a=t,Z.eachTree([e],e=>{e.fixed=t,e.renderFixed=t})),u.isCustomStatus=!0,c.handleCustom(),c.saveCustomStore(`update:fixed`)):e.renderFixed===t?(a=``,Z.eachTree([e],e=>{e.renderFixed=``})):(!r||e.renderFixed)&&(a=t,Z.eachTree([e],e=>{e.renderFixed=t})),a!==null&&c.dispatchEvent(`custom-fixed-change`,{column:e,fixed:a},n)},re=(e,t,n,r,i,a)=>{p.value.immediate?(e[n]=t,e[r]=t,u.isCustomStatus=!0,c.handleCustom(),c.saveCustomStore(`update:${n}`)):e[r]=t,c.dispatchEvent(i,{column:e,[n]:t},a)},L=e=>{let{customStore:t}=u,n=!t.isAll;c.toggleCustomAllCheckbox(),c.dispatchEvent(`custom-visible-all`,{checked:n},e)},ie=(e,t,n,r)=>{let i=b.value;if(!i)return;let a=x.value;if(!a)return;let{prevDragToChild:o}=T,s=i.getBoundingClientRect(),c=a.getBoundingClientRect(),l=S.value;if(t){if(l)if(n){let e=t.getBoundingClientRect();l.style.display=`block`,l.style.left=`${Math.max(0,c.x-s.x)}px`,l.style.top=`${Math.max(1,e.y+i.scrollTop-s.y)}px`,l.style.height=`${e.height}px`,l.style.width=`${e.width}px`,l.setAttribute(`drag-pos`,r),l.setAttribute(`drag-to-child`,o?`y`:`n`)}else l.style.display=``}else l&&(l.style.display=`node`);let u=C.value;u&&(u.style.display=`block`,u.style.top=`${Math.min(i.clientHeight+i.scrollTop-u.clientHeight,e.clientY+i.scrollTop-s.y)}px`,u.style.left=`${Math.min(i.clientWidth+i.scrollLeft-u.clientWidth,e.clientX+i.scrollLeft-s.x)}px`,u.setAttribute(`drag-status`,n?o?`sub`:`normal`:`disabled`))},ae=()=>{let{dragCol:e}=w,{tooltipMethod:t}=m.value,n=``;n=t?`${t({$table:c,column:e})||``}`:fO(`vxe.custom.cstmDragTarget`,[e&&e.type!==`html`?e.getTitle():``]),w.dragTipText=n},R=()=>{let e=C.value,t=S.value;e&&(e.style.display=``),t&&(t.style.display=``)},oe=e=>{let t=e.currentTarget.parentElement.parentElement.parentElement,n=t.getAttribute(`colid`),r=c.getColumnById(n);t.draggable=!0,w.dragCol=r,w.dragGroupField=null,w.dragAggFnCol=null,ae(),FT(t,`active--drag-origin`)},z=e=>{let t=e.currentTarget.parentElement.parentElement.parentElement;R(),t.draggable=!1,w.dragCol=null,w.dragGroupField=null,w.dragAggFnCol=null,PT(t,`active--drag-origin`)},se=e=>{let{customDragTime:t}=T;e.dataTransfer&&e.dataTransfer.setDragImage(OT(),0,0),t&&clearTimeout(t),u.isCustomDragStatus=!0,T.prevDragGroupField=null,T.prevDragAggFnColid=null},ce=e=>{let{mouseConfig:t}=l,{customColumnList:n}=u,{collectColumn:r}=d,{immediate:i}=p.value,a=e.currentTarget,{isCrossDrag:o,isPeerDrag:s,isSelfToChildDrag:f,isToChildDrag:h,dragEndMethod:g}=m.value,{dragCol:_}=w,{prevDragCol:v,prevDragGroupField:y,prevDragAggFnColid:b,prevDragPos:x,prevDragToChild:S}=T,C=+(x===`bottom`);if(y||b)c.handlePivotTableAggregatePanelDragendEvent&&c.handlePivotTableAggregatePanelDragendEvent(e);else if(v&&_&&v!==_){let a=_,l=v;Promise.resolve(!g||g({oldColumn:a,newColumn:l,dragColumn:a,dragPos:x,dragToChild:!!S,offsetIndex:C})).then(d=>{if(!d)return;let p=-1,m=-1,g={};Z.eachTree([a],e=>{g[e.id]=e});let _=!1;if(i){if(a.parentId&&l.parentId)if(s&&!o){if(a.parentId!==l.parentId)return}else{if(!o)return;if(g[l.id]&&(_=!0,!(o&&f))){Q.modal&&Q.modal.message({status:`error`,content:fO(`vxe.error.treeDragChild`)});return}}else if(a.parentId){if(!o)return}else if(l.parentId){if(!o)return;if(g[l.id]&&(_=!0,!(o&&f))){Q.modal&&Q.modal.message({status:`error`,content:fO(`vxe.error.treeDragChild`)});return}}let e=Z.findTree(r,e=>e.id===a.id);if(_&&o&&f){if(e){let{items:t,index:n}=e,r=a.children||[];r.forEach(e=>{e.parentId=a.parentId}),t.splice(n,1,...r),a.children=[]}}else if(e){let{items:t,index:n,parent:r}=e;t.splice(n,1),r||(p=n)}let t=Z.findTree(r,e=>e.id===l.id);if(t){let{items:e,index:n,parent:r}=t;o&&h&&S?(a.parentId=l.id,l.children=(l.children||[]).concat([a])):(a.parentId=l.parentId,e.splice(n+C,0,a)),r||(m=n)}Z.eachTree(r,(e,t,n,r,i)=>{i||(e.renderSortNumber=t+1)})}else p=Z.findIndexOf(n,e=>e.id===a.id),n.splice(p,1),m=Z.findIndexOf(n,e=>e.id===l.id),n.splice(m+C,0,a);t&&(c.clearSelected&&c.clearSelected(),c.clearCellAreas&&(c.clearCellAreas(),c.clearCopyCellArea()));let v={oldColumn:a,newColumn:l,dragColumn:a,dragPos:x,offsetIndex:C,_index:{newIndex:m,oldIndex:p}};c.dispatchEvent(`custom-sort-change`,v,e),c.dispatchEvent(`column-dragend`,v,e),i&&(u.customColumnList=r.slice(0),c.handleColDragSwapColumn()),ue()}).catch(()=>{})}R(),w.dragCol=null,w.dragGroupField=null,w.dragAggFnCol=null,T.prevDragGroupField=null,T.prevDragAggFnColid=null,a.draggable=!1,a.removeAttribute(`drag-pos`),PT(a,`active--drag-target`),PT(a,`active--drag-origin`)},le=e=>{let{showSortDragButton:t,allowSort:n,immediate:r}=p.value,{isCrossDrag:i,isPeerDrag:a,isToChildDrag:o}=m.value,s=e.currentTarget,l=IT(e),u=s.getAttribute(`colid`),d=c.getColumnById(u),{dragCol:f}=w;if(T.prevDragGroupField=null,T.prevDragAggFnColid=null,d&&(i||a||d.level===1)){e.preventDefault();let c=e.clientY-s.getBoundingClientRect().y1)||!r&&d.level>1||!i&&(a?f.parentId!==d.parentId:f.level>1)||!r&&f.level>1){ie(e,s,!1,c);return}T.prevDragToChild=!!(i&&o&&l&&r),T.prevDragCol=d,T.prevDragPos=c,ie(e,s,!0,c)}},ue=()=>{T.customDragTime=setTimeout(()=>{u.isCustomDragStatus=!1,T.customDragTime=void 0},350)},de=(e,t)=>{let{customColumnList:n}=u,r=Z.findTree(n,e=>e===t);if(r){let{item:e,items:t,index:n}=r;n>0&&(u.isCustomDragStatus=!0,J(()=>{t.splice(n,1),t.splice(n-1,0,e),ue()}))}},fe=(e,t)=>{let{customColumnList:n}=u,r=Z.findTree(n,e=>e===t);if(r){let{item:e,items:t,index:n}=r;n{t.splice(n,1),t.splice(n+1,0,e),ue()}))}},B=(e,t)=>{let{customColumnList:n}=u,r=Z.findTree(n,e=>e===t);if(r){let{item:e,items:t,index:i,parent:a}=r;(a||i>0)&&(u.isCustomDragStatus=!0,J(()=>{e.parentId=null,t.splice(i,1),n.unshift(e),ue()}))}},pe=(e,t)=>{let{customColumnList:n}=u,r=Z.findTree(n,e=>e===t);if(r){let{item:e,items:t,index:i,parent:a}=r;(a||i{e.parentId=null,t.splice(i,1),n.push(e),ue()}))}},me=()=>{let{dragTipText:e}=w,t=m.value;return Y(`div`,{},[Y(`div`,{ref:S,class:[`vxe-table-custom-popup--drag-line`,{"is--guides":t.showGuidesStatus}]}),Y(`div`,{ref:C,class:`vxe-table-custom-popup--drag-tip`},[Y(`div`,{class:`vxe-table-custom-popup--drag-tip-wrapper`},[Y(`div`,{class:`vxe-table-custom-popup--drag-tip-status`},[Y(`span`,{class:[`vxe-table-custom-popup--drag-tip-normal-status`,pO().TABLE_DRAG_STATUS_ROW]}),Y(`span`,{class:[`vxe-table-custom-popup--drag-tip-sub-status`,pO().TABLE_DRAG_STATUS_SUB_ROW]}),Y(`span`,{class:[`vxe-table-custom-popup--drag-tip-group-status`,pO().TABLE_DRAG_STATUS_AGG_GROUP]}),Y(`span`,{class:[`vxe-table-custom-popup--drag-tip-values-status`,pO().TABLE_DRAG_STATUS_AGG_VALUES]}),Y(`span`,{class:[`vxe-table-custom-popup--drag-tip-disabled-status`,pO().TABLE_DRAG_DISABLED]})]),Y(`div`,{class:`vxe-table-custom-popup--drag-tip-content`},`${e||``}`)])])])},V=()=>{let t=c.xeGrid,n=c.xeGantt,r=c.props,{customStore:i}=e,{treeConfig:o,rowGroupConfig:s,aggregateConfig:l}=r,{isCustomStatus:d,customColumnList:h,isCustomDragStatus:_}=u,v=p.value,S=m.value,{defPopupStyle:C}=i,{immediate:w,checkMethod:T,visibleMethod:E,allowVisible:D,allowSort:N,allowFixed:P,allowGroup:F,allowValues:te,trigger:re,placement:ie,showSortDragButton:ae,showSortMoveButton:R,showSortPutButton:ue}=v,V=g.value,he=f.value,{isCrossDrag:ge,isPeerDrag:_e}=S,ve=v.slots||{},ye=ve.header,be=ve.top,xe=ve.bottom,Se=ve.default,Ce=ve.footer,H=[],we={},Te=i.isAll,Ee=i.isIndeterminate;re===`hover`&&(we.onMouseenter=O,we.onMouseleave=k);let De={$table:c,$grid:t,$gantt:n,columns:h,isAllChecked:Te,isAllIndeterminate:Ee,isCustomStatus:d};return Z.eachTree(h,(e,t,n,r,i)=>{if(!E||E({$table:c,column:e})){let r=e.renderVisible,o=e.halfVisible,s=e.children&&e.children.length,l=Gw(e.getTitle(),1),u=T?!T({$table:c,column:e}):!1,d=!r,f=(ge||_e?w:!1)||e.level===1;H.push(Y(`li`,{key:e.id,colid:e.id,class:[`vxe-table-custom--option`,`level--${e.level}`,{"is--hidden":u||d,"is--group":s}],onDragstart:se,onDragend:ce,onDragover:le},[D?Y(`div`,{class:[`vxe-table-custom--checkbox-option`,{"is--checked":r,"is--indeterminate":o,"is--disabled":u}],title:fO(`vxe.custom.setting.colVisible`),onClick:t=>{u||I(e,t)}},[Y(`span`,{class:[`vxe-checkbox--icon`,o?pO().TABLE_CHECKBOX_INDETERMINATE:r?pO().TABLE_CHECKBOX_CHECKED:pO().TABLE_CHECKBOX_UNCHECKED]})]):mO(c),Y(`div`,{class:`vxe-table-custom--name-option`},[(N&&ae||F||te)&&(f||(F||te)&&!s)?Y(`div`,{class:`vxe-table-custom--sort-option`},[Y(`span`,Object.assign({class:[`vxe-table-custom--sort-btn`,{"is--disabled":d}],title:fO(`vxe.custom.setting.sortHelpTip`)},d?{}:{onMousedown:oe,onMouseup:z}),[Y(`i`,{class:pO().TABLE_CUSTOM_SORT})])]):mO(c),e.type===`html`?Y(`div`,{key:`1`,class:`vxe-table-custom--checkbox-label`,innerHTML:l}):Y(`div`,{key:`0`,class:`vxe-table-custom--checkbox-label`},l)]),f&&(R||ue)?Y(`div`,{class:`vxe-table-custom--move-btn-option`},a?[R?Y(a,{mode:`text`,icon:`vxe-icon-arrows-up`,title:fO(`vxe.custom.setting.moveUpTitle`),disabled:t<=0,onClick(t){de(t,e)}}):mO(c),R?Y(a,{mode:`text`,icon:`vxe-icon-arrows-down`,title:fO(`vxe.custom.setting.moveDnTitle`),disabled:t>=n.length-1,onClick(t){fe(t,e)}}):mO(c),ue&&!i?Y(a,{mode:`text`,icon:`vxe-icon-top`,title:fO(`vxe.custom.setting.putTopTitle`),disabled:t<=0,onClick(t){B(t,e)}}):mO(c),ue&&!i?Y(a,{mode:`text`,icon:`vxe-icon-bottom`,title:fO(`vxe.custom.setting.putBottomTitle`),disabled:t>=n.length-1,onClick(t){pe(t,e)}}):mO(c)]:[]):mO(c),!i&&P?Y(`div`,{class:`vxe-table-custom--fixed-option`},a?[Y(a,{mode:`text`,icon:e.renderFixed===`left`?pO().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:pO().TOOLBAR_TOOLS_FIXED_LEFT,status:e.renderFixed===`left`?`primary`:``,disabled:d||V&&!e.renderFixed,title:fO(e.renderFixed===`left`?`vxe.toolbar.cancelFixed`:`vxe.toolbar.fixedLeft`),onClick:({$event:t})=>{ne(e,`left`,t)}}),Y(a,{mode:`text`,icon:e.renderFixed===`right`?pO().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:pO().TOOLBAR_TOOLS_FIXED_RIGHT,status:e.renderFixed===`right`?`primary`:``,disabled:d||V&&!e.renderFixed,title:fO(e.renderFixed===`right`?`vxe.toolbar.cancelFixed`:`vxe.toolbar.fixedRight`),onClick:({$event:t})=>{ne(e,`right`,t)}})]:[]):mO(c)]))}}),Y(`div`,{ref:y,key:`simple`,class:[`vxe-table-custom-wrapper`,`placement--${ie}`,{[`size--${he}`]:he,"is--active":i.visible}],style:C},i.visible?[Y(`div`,{ref:b,class:`vxe-table-custom-simple--body-wrapper`},[!o&&(l||s)&&c.getPivotTableAggregateSimplePanel?Y(c.getPivotTableAggregateSimplePanel(),{customStore:i}):mO(c),Y(`div`,{ref:x,class:`vxe-table-custom--handle-wrapper`},[Y(`div`,{class:`vxe-table-custom--header`},ye?c.callSlot(ye,De):[Y(`ul`,{class:`vxe-table-custom--panel-list`},[Y(`li`,{class:`vxe-table-custom--option`},[D?Y(`div`,{class:[`vxe-table-custom--checkbox-option`,{"is--checked":Te,"is--indeterminate":Ee}],title:fO(`vxe.table.allTitle`),onClick:L},[Y(`span`,{class:[`vxe-checkbox--icon`,Ee?pO().TABLE_CHECKBOX_INDETERMINATE:Te?pO().TABLE_CHECKBOX_CHECKED:pO().TABLE_CHECKBOX_UNCHECKED]}),Y(`span`,{class:`vxe-checkbox--label`},fO(`vxe.toolbar.customAll`))]):Y(`span`,{class:`vxe-checkbox--label`},fO(`vxe.table.customTitle`))])])]),Y(`div`,{class:`vxe-table-custom--body`},[be?Y(`div`,{class:`vxe-table-custom--panel-top`},c.callSlot(be,De)):mO(c),Se?Y(`div`,{class:`vxe-table-custom--panel-body`},c.callSlot(Se,De)):Y(at,Object.assign({class:`vxe-table-custom--panel-list`,name:_?`vxe-table-custom--list`:``,tag:`ul`},we),{default:()=>H}),xe?Y(`div`,{class:`vxe-table-custom--panel-bottom`},c.callSlot(xe,De)):mO(c)]),v.showFooter?Y(`div`,{class:`vxe-table-custom--footer`},Ce?c.callSlot(Ce,De):[Y(`div`,{class:`vxe-table-custom--footer-buttons`},[a?Y(a,{mode:`text`,content:v.resetButtonText||fO(`vxe.table.customRestore`),disabled:!d,onClick:ee}):mO(c),w?a?Y(a,{mode:`text`,content:v.closeButtonText||fO(`vxe.table.customClose`),onClick:j}):mO(c):a?Y(a,{mode:`text`,content:v.cancelButtonText||fO(`vxe.table.customCancel`),onClick:M}):mO(c),w?mO(c):a?Y(a,{mode:`text`,status:`primary`,content:v.confirmButtonText||fO(`vxe.table.customConfirm`),onClick:A}):mO(c)])]):null]),me()])]:[])},he=()=>{let{resizable:e}=l,{customColumnList:t}=u,n=p.value,r=m.value,{immediate:i,showSortDragButton:d,showSortMoveButton:f,showSortPutButton:v,allowVisible:y,allowSort:b,allowFixed:x,allowAlign:S,allowHeaderAlign:C,allowFooterAlign:w,allowResizable:T,allowGroup:E,allowValues:D,checkMethod:O,visibleMethod:k}=n,A=h.value,{minWidth:j,maxWidth:M}=_.value,N=g.value,{isCrossDrag:P,isPeerDrag:ee}=r,F=[];return Z.eachTree(t,(t,n,r,l,u)=>{if(!k||k({$table:c,column:t})){let l=0,p=0;if(T){let e={$table:c,column:t,columnIndex:c.getColumnIndex(t),$columnIndex:c.getVMColumnIndex(t),_columnIndex:c.getVTColumnIndex(t),rowIndex:-1,_rowIndex:-1,$rowIndex:-1};j&&(l=Z.toNumber(Z.isFunction(j)?j(e):j)),M&&(p=Z.toNumber(Z.isFunction(M)?M(e):M))}let m=t.renderVisible,h=t.halfVisible,g=Gw(t.getTitle(),1),_=t.children&&t.children.length,k=O?!O({$table:c,column:t}):!1,L=!m,ie=(P||ee?i:!1)||t.level===1,ae=[{icon:pO().TABLE_CUSTOM_ALIGN_LEFT,value:`left`,title:fO(`vxe.custom.setting.anLeftTitle`),disabled:L},{icon:pO().TABLE_CUSTOM_ALIGN_CENTER,value:`center`,title:fO(`vxe.custom.setting.anCenterTitle`),disabled:L},{icon:pO().TABLE_CUSTOM_ALIGN_RIGHT,value:`right`,title:fO(`vxe.custom.setting.anRightTitle`),disabled:L}],R=[];y&&R.push(Y(`td`,{key:`av`,class:`vxe-table-custom-popup--column-td col--visible`},[Y(`div`,{class:[`vxe-table-custom--checkbox-option`,{"is--checked":m,"is--indeterminate":h,"is--disabled":k}],title:fO(`vxe.custom.setting.colVisible`),onClick:e=>{k||I(t,e)}},[Y(`span`,{class:[`vxe-checkbox--icon`,h?pO().TABLE_CHECKBOX_INDETERMINATE:m?pO().TABLE_CHECKBOX_CHECKED:pO().TABLE_CHECKBOX_UNCHECKED]})])])),R.push(Y(`td`,{key:`at`,class:`vxe-table-custom-popup--column-td col--name`},[Y(`div`,{class:`vxe-table-custom-popup--name`},[b&&d||E||D?ie||(E||D)&&!_?Y(`div`,Object.assign({class:[`vxe-table-custom-popup--column-sort-btn`,{"is--disabled":L}],title:fO(`vxe.custom.setting.sortHelpTip`)},L?{}:{onMousedown:oe,onMouseup:z}),[Y(`i`,{class:pO().TABLE_CUSTOM_SORT})]):Y(`div`,{class:`vxe-table-custom-popup--column-sort-placeholder`}):mO(c),t.type===`html`?Y(`div`,{key:`1`,class:`vxe-table-custom-popup--title`,innerHTML:g}):Y(`div`,{key:`0`,class:`vxe-table-custom-popup--title`,title:g},g),ie&&(f||v)?Y(`div`,{class:`vxe-table-custom-popup--move-btn`},a?[f?Y(a,{mode:`text`,icon:`vxe-icon-arrows-up`,title:fO(`vxe.custom.setting.moveUpTitle`),disabled:n<=0,onClick(e){de(e,t)}}):mO(c),f?Y(a,{mode:`text`,icon:`vxe-icon-arrows-down`,title:fO(`vxe.custom.setting.moveDnTitle`),disabled:n>=r.length-1,onClick(e){fe(e,t)}}):mO(c),v&&!u?Y(a,{mode:`text`,icon:`vxe-icon-top`,title:fO(`vxe.custom.setting.putTopTitle`),disabled:n<=0,onClick(e){B(e,t)}}):mO(c),v&&!u?Y(a,{mode:`text`,icon:`vxe-icon-bottom`,title:fO(`vxe.custom.setting.putBottomTitle`),disabled:n>=r.length-1,onClick(e){pe(e,t)}}):mO(c)]:[]):mO(c)])])),T&&R.push(Y(`td`,{key:`aw`,class:`vxe-table-custom-popup--column-td col--resizable`},[t.children&&t.children.length||!(Z.isBoolean(t.resizable)?t.resizable:A.resizable||e)?Y(`span`,`-`):o?Y(o,{type:`integer`,immediate:!1,disabled:L,modelValue:t.renderResizeWidth,min:l||0,max:p||9999,"onUpdate:modelValue"(e){t.renderResizeWidth=Math.max(0,Number(e))},onChange(){te(t)}}):mO(c)])),x&&R.push(Y(`td`,{key:`af`,class:`vxe-table-custom-popup--column-td col--fixed`},u?[Y(`span`,`-`)]:s?[Y(a,{icon:t.renderFixed===`left`?pO().TOOLBAR_TOOLS_FIXED_LEFT_ACTIVE:pO().TOOLBAR_TOOLS_FIXED_LEFT,status:t.renderFixed===`left`?`primary`:``,disabled:L||N&&!t.renderFixed,title:fO(t.renderFixed===`left`?`vxe.toolbar.cancelFixed`:`vxe.toolbar.fixedLeft`),onClick:({$event:e})=>{ne(t,`left`,e)}}),Y(a,{icon:t.renderFixed===`right`?pO().TOOLBAR_TOOLS_FIXED_RIGHT_ACTIVE:pO().TOOLBAR_TOOLS_FIXED_RIGHT,status:t.renderFixed===`right`?`primary`:``,disabled:L||N&&!t.renderFixed,title:fO(t.renderFixed===`right`?`vxe.toolbar.cancelFixed`:`vxe.toolbar.fixedRight`),onClick:({$event:e})=>{ne(t,`right`,e)}})]:[])),S&&R.push(Y(`td`,{key:`aa`,class:`vxe-table-custom-popup--column-td col--align`},s?[Y(s,{modelValue:t.renderAlign||``,type:`button`,strict:!1,disabled:L,options:ae,onChange({value:e,$event:n}){re(t,e,`align`,`renderAlign`,`custom-align-change`,n)}})]:[])),C&&R.push(Y(`td`,{key:`aha`,class:`vxe-table-custom-popup--column-td col--header-align`},_?[Y(`span`,`-`)]:s?[Y(s,{modelValue:t.renderHeaderAlign||``,type:`button`,strict:!1,disabled:L,options:ae,onChange({value:e,$event:n}){re(t,e,`headerAlign`,`renderHeaderAlign`,`custom-header-align-change`,n)}})]:[])),w&&R.push(Y(`td`,{key:`afa`,class:`vxe-table-custom-popup--column-td col--footer-align`},_?[Y(`span`,`-`)]:s?[Y(s,{modelValue:t.renderFooterAlign||``,type:`button`,strict:!1,disabled:L,options:ae,onChange({value:e,$event:n}){re(t,e,`footerAlign`,`renderFooterAlign`,`custom-footer-align-change`,n)}})]:[])),F.push(Y(`tr`,{key:t.id,colid:t.id,class:[`vxe-table-custom-popup--row level--${t.level}`,{"is--group":_}],onDragstart:se,onDragend:ce,onDragover:le},R))}}),F},ge=()=>{let t=c.xeGrid,n=c.xeGantt,{customStore:o}=e,{treeConfig:s,rowGroupConfig:d,aggregateConfig:m}=l,{isCustomStatus:g,customColumnList:_}=u,y=f.value,S=p.value,C=v.value,{panePopupStyle:w}=o,{placement:T}=C,{mode:E,immediate:D,modalOptions:O,drawerOptions:k,allowVisible:N,allowFixed:P,allowAlign:F,allowHeaderAlign:I,allowFooterAlign:te,allowResizable:ne}=S,{maxFixedSize:re}=h.value,ie=Object.assign({},O),ae=Object.assign({},k),R=S.slots||{},oe=R.header,z=R.top,se=R.bottom,ce=R.default,le=R.footer,ue=o.isAll,de=o.isIndeterminate,fe=T===`right`||T===`bottom`,B={$table:c,$grid:t,$gantt:n,columns:_,isAllChecked:ue,isAllIndeterminate:de,isCustomStatus:g},pe=[],V=[];N&&(pe.push(Y(`col`,{key:`av`,class:`vxe-table-custom-popup--column-col col--checkbox`})),V.push(Y(`th`,{key:`av`,class:`vxe-table-custom-popup--column-th col--checkbox`},[Y(`div`,{class:[`vxe-table-custom--checkbox-option`,{"is--checked":ue,"is--indeterminate":de}],title:fO(`vxe.table.allTitle`),onClick:L},[Y(`span`,{class:[`vxe-checkbox--icon`,de?pO().TABLE_CHECKBOX_INDETERMINATE:ue?pO().TABLE_CHECKBOX_CHECKED:pO().TABLE_CHECKBOX_UNCHECKED]})])]))),pe.push(Y(`col`,{key:`at`,class:`vxe-table-custom-popup--column-col col--title`})),V.push(Y(`th`,{key:`at`,class:`vxe-table-custom-popup--column-th col--title`},fO(`vxe.custom.setting.colTitle`))),ne&&(pe.push(Y(`col`,{key:`aw`,class:`vxe-table-custom-popup--column-col col--width`})),V.push(Y(`th`,{key:`aw`,class:`vxe-table-custom-popup--column-th col--width`},fO(`vxe.custom.setting.colResizable`)))),P&&(pe.push(Y(`col`,{key:`af`,class:`vxe-table-custom-popup--column-col col--fixed`})),V.push(Y(`th`,{key:`af`,class:`vxe-table-custom-popup--column-th col--fixed`},fO(`vxe.custom.setting.${re?`colFixedMax`:`colFixed`}`,[re])))),F&&(pe.push(Y(`col`,{key:`aa`,class:`vxe-table-custom-popup--column-col col--align`})),V.push(Y(`th`,{key:`aa`,class:`vxe-table-custom-popup--column-th col--align`},fO(`vxe.custom.setting.colAlign`)))),I&&(pe.push(Y(`col`,{key:`aha`,class:`vxe-table-custom-popup--column-col col--header-align`})),V.push(Y(`th`,{key:`aha`,class:`vxe-table-custom-popup--column-th col--header-align`},fO(`vxe.custom.setting.colHeadAlign`)))),te&&(pe.push(Y(`col`,{key:`afa`,class:`vxe-table-custom-popup--column-col col--footer-align`})),V.push(Y(`th`,{key:`afa`,class:`vxe-table-custom-popup--column-th col--footer-align`},fO(`vxe.custom.setting.colFootAlign`))));let ge={default:()=>Y(`div`,{ref:b,class:[`vxe-table-custom-popup--body-wrapper`,`agg-layout--${T}`,{[`size--${y}`]:y}],style:w},ce?c.callSlot(ce,B):[!fe&&!s&&(m||d)&&c.getPivotTableAggregatePopupPanel?Y(c.getPivotTableAggregatePopupPanel(),{customStore:o}):mO(c),Y(`div`,{ref:x,class:`vxe-table-custom-popup--handle-wrapper`},[z?Y(`div`,{class:`vxe-table-custom-popup--table-top`},c.callSlot(z,B)):mO(c),Y(`div`,{class:`vxe-table-custom-popup--table-wrapper`},[Y(`table`,{},[Y(`colgroup`,{},pe),Y(`thead`,{},[Y(`tr`,{},V)]),Y(at,{class:`vxe-table-custom--panel-list`,tag:`tbody`,name:`vxe-table-custom--list`},{default:()=>he()})])]),se?Y(`div`,{class:`vxe-table-custom-popup--table-bottom`},c.callSlot(se,B)):mO(c),me()]),fe&&!s&&(m||d)&&c.getPivotTableAggregatePopupPanel?Y(c.getPivotTableAggregatePopupPanel(),{customStore:o}):mO(c)]),footer:()=>le?c.callSlot(le,B):Y(`div`,{class:`vxe-table-custom-popup--footer`},[a?Y(a,{content:S.resetButtonText||fO(`vxe.custom.cstmRestore`),disabled:!g,onClick:ee}):mO(c),D?a?Y(a,{status:`primary`,content:S.closeButtonText||fO(`vxe.table.customClose`),onClick:j}):mO(c):a?Y(a,{content:S.cancelButtonText||fO(`vxe.table.customCancel`),onClick:M}):mO(c),D?mO(c):a?Y(a,{status:`primary`,content:S.confirmButtonText||fO(`vxe.custom.cstmConfirm`),onClick:A}):mO(c)])};return oe&&(ge.header=()=>c.callSlot(oe,B)),E===`drawer`?i?Y(i,{key:`drawer`,className:[`vxe-table-custom-drawer-wrapper`,`vxe-table--ignore-clear`,ae.className||``].join(` `),modelValue:o.visible,title:ae.title||fO(`vxe.custom.cstmTitle`),width:ae.width||Math.min(880,Math.floor(document.documentElement.clientWidth*.6)),position:ae.position,resize:!!ae.resize,escClosable:!!ae.escClosable,maskClosable:!!ae.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){o.visible=e}},ge):mO(c):r?Y(r,{key:`modal`,className:[`vxe-table-custom-modal-wrapper`,`vxe-table--ignore-clear`,ie.className||``].join(` `),modelValue:o.visible,title:ie.title||fO(`vxe.custom.cstmTitle`),width:ie.width||Math.min(1e3,document.documentElement.clientWidth),minWidth:ie.minWidth||800,height:ie.height||Math.min(680,document.documentElement.clientHeight),minHeight:ie.minHeight||400,showZoom:ie.showZoom,showMaximize:ie.showMaximize,showMinimize:ie.showMinimize,mask:ie.mask,lockView:ie.lockView,resize:ie.resize,transfer:ie.transfer,escClosable:!!ie.escClosable,maskClosable:!!ie.maskClosable,destroyOnClose:!0,showFooter:!0,"onUpdate:modelValue"(e){o.visible=e}},ge):mO(c)},_e=()=>{let e=p.value;return[`modal`,`drawer`,`popup`].includes(`${e.mode}`)?ge():V()};J(()=>{let{mode:e}=p.value;!r&&e===`modal`&&dO(`vxe.error.reqComp`,[`vxe-modal`]),!i&&e===`drawer`&&dO(`vxe.error.reqComp`,[`vxe-drawer`]),a||dO(`vxe.error.reqComp`,[`vxe-button`]),o||dO(`vxe.error.reqComp`,[`vxe-number-input`]),s||dO(`vxe.error.reqComp`,[`vxe-radio-group`])});let ve={xID:n,props:e,context:t,reactData:w,internalData:T,xeTable:c,getRefMaps:()=>E,getComputeMaps:()=>D,renderVN:_e};return Te(()=>{T=hO()}),P(`$xeTableCustomPanel`,ve),ve},render(){return this.renderVN()}}),{warnLog:_O}=aE(`table`),{getI18n:vO,getIcon:yO,renderer:bO,renderEmptyElement:xO}=Q,SO=wT({name:`VxeTableFilterPanel`,props:{filterStore:{type:Object,default:()=>({})}},setup(e,t){let n=Z.uniqueId(),r=Xe(`$xeTable`,{}),{reactData:i,internalData:a,getComputeMaps:o}=r,{computeFilterOpts:s}=o(),c=H(),l={refElem:c},u={xID:n,props:e,context:t,getRefMaps:()=>l},d=B(()=>{let{filterStore:t}=e,{column:n}=t;return n&&n.filters&&n.filters.some(e=>e.checked)}),f=(t,n)=>{let{filterStore:r}=e,{column:i}=r;i&&i.filters&&i.filters.forEach(e=>{e._checked=n,e.checked=n}),r.isAllSelected=n,r.isIndeterminate=!1},p=t=>{let{filterStore:n}=e;t||_O(`vxe.error.delFunc`,[`confirmFilter`,`saveFilterPanelByEvent`]),r.handleFilterConfirmFilter(t||new Event(`click`),n.column||null)},m=(e,t,n)=>{r.handleFilterChangeRadioOption(e,t,n)},h=t=>{let{filterStore:n}=e;r.handleFilterResetFilter(t,n.column||null)},g=(e,t,n)=>{r.handleFilterChangeMultipleOption(e,t,n)},_=(e,t,n)=>{r.handleFilterChangeOption(e,t,n)},v=(t,n)=>{let{filterStore:r}=e,{column:i}=r;i&&i.filterMultiple?f(t,n):h(t)};Object.assign(u,{changeRadioOption:m,changeMultipleOption:g,changeAllOption:v,changeOption:_,confirmFilter:p,resetFilter:h});let y=(t,n)=>{let{filterStore:i}=e,{column:o,maxHeight:s}=i;if(!o)return[];let{filterMultiple:c,filters:l,slots:d}=o,f=l||[],p=d?d.filter:null,m=Object.assign({},a._currFilterParams,{option:f[0],$panel:u,$table:r}),h=n?n.renderTableFilter||n.renderFilter:null;if(p)return[Y(`div`,{class:`vxe-table--filter-template`,style:s?{maxHeight:LT(s)}:{}},r.callSlot(p,m))];if(t&&h)return[Y(`div`,{class:`vxe-table--filter-template`,style:s?{maxHeight:LT(s)}:{}},lD(h(t,m)))];let g=c?i.isAllSelected:!f.some(e=>e._checked),y=c&&i.isIndeterminate;return[Y(`ul`,{class:`vxe-table--filter-header`},[Y(`li`,{class:[`vxe-table--filter-option`,{"is--checked":g,"is--indeterminate":y}],title:vO(c?`vxe.table.allTitle`:`vxe.table.allFilter`),onClick:e=>{v(e,!i.isAllSelected)}},(c?[Y(`span`,{class:[`vxe-checkbox--icon`,y?yO().TABLE_CHECKBOX_INDETERMINATE:g?yO().TABLE_CHECKBOX_CHECKED:yO().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([Y(`span`,{class:`vxe-checkbox--label`},vO(`vxe.table.allFilter`))]))]),Y(`ul`,{class:`vxe-table--filter-body`,style:s?{maxHeight:LT(s)}:{}},f.map(e=>{let t=e._checked;return Y(`li`,{class:[`vxe-table--filter-option`,{"is--checked":e._checked}],title:e.label,onClick:t=>{_(t,!e._checked,e)}},(c?[Y(`span`,{class:[`vxe-checkbox--icon`,t?yO().TABLE_CHECKBOX_CHECKED:yO().TABLE_CHECKBOX_UNCHECKED]})]:[]).concat([Y(`span`,{class:`vxe-checkbox--label`},Gw(e.label,1))]))}))]},b=()=>{let{filterStore:t}=e,{column:n}=t;if(!n)return[];let r=s.value,i=d.value,{filterRender:a,filterMultiple:o}=n,{confirmButtonText:c,resetButtonText:l,showFooter:u}=r,f=Rw(a)?bO.get(a.name):null,m=!i&&!t.isAllSelected&&!t.isIndeterminate,g=!!o;return Z.isBoolean(u)?g=u:f&&(g=f.showTableFilterFooter!==!1&&f.showFilterFooter!==!1&&f.isFooter!==!1),g?[Y(`div`,{class:`vxe-table--filter-footer`},[Y(`button`,{class:{"is--disabled":m},disabled:m,onClick:p},c||vO(`vxe.table.confirmFilter`)),Y(`button`,{onClick:h},l||vO(`vxe.table.resetFilter`))])]:[]};return u.renderVN=()=>{let{filterStore:t}=e,{initStore:n}=i,{visible:o,column:l}=t;if(!l)return xO(u);let d=l?l.filterRender:null,f=d&&Rw(d)?bO.get(d.name):null,p=f?f.tableFilterClassName||f.filterClassName:``,m=Object.assign({},a._currFilterParams,{$panel:u,$table:r}),h=r.props,{computeSize:g}=r.getComputeMaps(),_=g.value,{transfer:v,destroyOnClose:x,className:S}=s.value;return Y(Be,{to:`body`,disabled:!v},[Y(`div`,{ref:c,class:[`vxe-table--filter-wrapper`,`filter--prevent-default`,S,kT(p,m),{[`size--${_}`]:_,"is--animat":h.animat,"is--multiple":l.filterMultiple,"is--active":o}],style:t.style},n.filter&&(!x||o)&&l?y(d,f).concat(b()):[])])},u},render(){return this.renderVN()}}),{errLog:CO}=aE(`table`),{getI18n:wO,getIcon:TO,renderEmptyElement:EO}=Q,DO=wT({name:`VxeTableImportPanel`,props:{defaultOptions:{type:Object,default:()=>({})},storeData:{type:Object,default:()=>({})}},setup(e){let t=Q.getComponent(`VxeModal`),n=Q.getComponent(`VxeButton`),r=Q.getComponent(`VxeSelect`),i=Xe(`$xeTable`,{}),{computeImportOpts:a}=i.getComputeMaps(),o=Ne({loading:!1}),s=H(),c=B(()=>{let{storeData:t}=e;return`${t.filename}.${t.type}`}),l=B(()=>{let{storeData:t}=e;return t.file&&t.type}),u=B(()=>{let{storeData:t}=e,{type:n,typeList:r}=t;if(n){let e=Z.find(r,e=>n===e.value);return`${e?e.label:`*.*`}`}return`*.${r.map(e=>e.value).join(`, *.`)}`}),d=()=>{let{storeData:t}=e;Object.assign(t,{filename:``,sheetName:``,type:``})},f=()=>{let{storeData:t,defaultOptions:n}=e;i.readFile(n).then(e=>{let{file:n}=e;Object.assign(t,Bw(n),{file:n})}).catch(()=>{})},p=()=>{J(()=>{let e=s.value;e&&e.focus()})},m=()=>{let{storeData:t}=e;t.visible=!1},h=()=>{let{storeData:t,defaultOptions:n}=e,r=a.value;o.loading=!0,i.importByFile(t.file,Object.assign({},r,n)).then(()=>{o.loading=!1,t.visible=!1}).catch(()=>{o.loading=!1})};return J(()=>{t||CO(`vxe.error.reqComp`,[`vxe-modal`]),n||CO(`vxe.error.reqComp`,[`vxe-button`]),r||CO(`vxe.error.reqComp`,[`vxe-select`])}),()=>{let a=i.xeGrid,g=i.xeGantt,{defaultOptions:_,storeData:v}=e,y=c.value,b=l.value,x=u.value,S=_.slots||{},C=S.top,w=S.bottom,T=S.default,E=S.footer;return t?Y(t,{id:`VXE_IMPORT_MODAL`,modelValue:v.visible,title:wO(`vxe.import.impTitle`),className:`vxe-table-export-popup-wrapper`,width:540,minWidth:360,minHeight:240,mask:!0,lockView:!0,showFooter:!0,escClosable:!0,maskClosable:!0,showMaximize:!0,resize:!0,loading:o.loading,"onUpdate:modelValue"(e){v.visible=e},onShow:p},{default:()=>{let e={$table:i,$grid:a,$gantt:g,options:_,params:_.params};return Y(`div`,{class:`vxe-table-export--panel`},[C?Y(`div`,{class:`vxe-table-export--panel-top`},i.callSlot(C,e)):EO(i),Y(`div`,{class:`vxe-table-export--panel-body`},T?i.callSlot(T,e):[Y(`table`,{class:`vxe-table-export--panel-table`,cellspacing:0,cellpadding:0,border:0},[Y(`tbody`,[Y(`tr`,[Y(`td`,wO(`vxe.import.impFile`)),Y(`td`,[b?Y(`div`,{class:`vxe-table-export--selected--file`,title:y},[Y(`span`,y),Y(`i`,{class:TO().INPUT_CLEAR,onClick:d})]):Y(`button`,{ref:s,class:`vxe-table-export--select--file`,onClick:f},wO(`vxe.import.impSelect`))])]),Y(`tr`,[Y(`td`,wO(`vxe.import.impType`)),Y(`td`,x)]),Y(`tr`,[Y(`td`,wO(`vxe.import.impMode`)),Y(`td`,[r?Y(r,{modelValue:_.mode,options:v.modeList,"onUpdate:modelValue"(e){_.mode=e}}):EO(i)])])])])]),w?Y(`div`,{class:`vxe-table-export--panel-bottom`},i.callSlot(w,e)):EO(i)])},footer(){let e={$table:i,$grid:a,$gantt:g,options:_,params:_.params};return Y(`div`,{class:`vxe-table-export--panel-footer`},E?i.callSlot(E,e):[Y(`div`,{class:`vxe-table-export--panel-btns`},[n?Y(n,{content:wO(`vxe.import.impCancel`),onClick:m}):EO(i),n?Y(n,{status:`primary`,disabled:!b||o.loading,content:wO(`vxe.import.impConfirm`),onClick:h}):EO(i)])])}}):EO(i)}}}),{errLog:OO}=aE(`table`),{getI18n:kO,getIcon:AO,renderEmptyElement:jO}=Q,MO=wT({name:`VxeTableExportPanel`,props:{defaultOptions:{type:Object,default:()=>({})},storeData:{type:Object,default:()=>({})}},setup(e){let t=Q.getComponent(`VxeModal`),n=Q.getComponent(`VxeButton`),r=Q.getComponent(`VxeSelect`),i=Q.getComponent(`VxeInput`),a=Q.getComponent(`VxeCheckbox`),o=Xe(`$xeTable`,{}),{computeExportOpts:s,computePrintOpts:c}=o.getComputeMaps(),l=Ne({isAll:!1,isIndeterminate:!1,loading:!1}),u=H(),d=H(),f=H(),p=B(()=>[{value:``,label:kO(`vxe.export.wdModes.default`)},{value:`auto`,label:kO(`vxe.export.wdModes.auto`)},{value:`scale`,label:kO(`vxe.export.wdModes.scale`)}]),m=B(()=>{let{storeData:t}=e;return t.columns.every(e=>e.checked)}),h=B(()=>{let{defaultOptions:t}=e;return[`html`,`xml`,`xlsx`,`pdf`].indexOf(t.type)>-1}),g=B(()=>{let{storeData:t,defaultOptions:n}=e;return!n.original&&n.mode===`current`&&(t.isPrint||[`html`,`xlsx`].indexOf(n.type)>-1)}),_=B(()=>{let{defaultOptions:t}=e;return!t.original&&[`xlsx`].indexOf(t.type)>-1}),v=t=>{let{storeData:n}=e,r=Z.findTree(n.columns,e=>e===t);if(r&&r.parent){let{parent:e}=r;e.children&&e.children.length&&(e.checked=e.children.every(e=>e.checked),e.halfChecked=!e.checked&&e.children.some(e=>e.checked||e.halfChecked),v(e))}},y=()=>{let{storeData:t}=e,n=t.columns;l.isAll=n.every(e=>e.disabled||e.checked),l.isIndeterminate=!l.isAll&&n.some(e=>!e.disabled&&(e.checked||e.halfChecked))},b=e=>{let t=!e.checked;Z.eachTree([e],e=>{e.checked=t,e.halfChecked=!1}),v(e),y()},x=()=>{let{storeData:t}=e,n=!l.isAll;Z.eachTree(t.columns,e=>{e.disabled||(e.checked=n,e.halfChecked=!1)}),l.isAll=n,y()},S=()=>{J(()=>{let e=d.value,t=f.value,n=u.value,r=e||t||n;r&&r.focus()}),y()},C=()=>{let{storeData:t,defaultOptions:n}=e,{hasMerge:r,columns:i}=t,a=m.value,o=g.value,s=Z.searchTree(i,e=>e.checked,{children:`children`,mapChildren:`childNodes`,original:!0});return Object.assign({},n,{columns:s,isMerge:r&&o&&a?n.isMerge:!1})},w=()=>{let{storeData:t}=e,n=c.value;t.visible=!1,o.print(Object.assign({},n,C()))},T=()=>{let{storeData:t}=e,n=s.value;l.loading=!0,o.exportData(Object.assign({},n,C())).then(()=>{l.loading=!1,t.visible=!1}).catch(()=>{l.loading=!1})},E=()=>{let{storeData:t}=e;t.visible=!1},D=()=>{let{storeData:t}=e;t.isPrint?w():T()};return J(()=>{t||OO(`vxe.error.reqComp`,[`vxe-modal`]),n||OO(`vxe.error.reqComp`,[`vxe-button`]),r||OO(`vxe.error.reqComp`,[`vxe-select`]),i||OO(`vxe.error.reqComp`,[`vxe-input`]),a||OO(`vxe.error.reqComp`,[`vxe-checkbox`])}),()=>{let s=o.xeGrid,c=o.xeGantt,{defaultOptions:v,storeData:y}=e,{isAll:C,isIndeterminate:w}=l,{hasTree:T,hasRowGroup:O,hasMerge:k,isPrint:A,hasColgroup:j,columns:M}=y,{isHeader:N}=v,P=[],ee=m.value,F=h.value,I=g.value,te=_.value,ne=p.value,re=v.slots||{},L=re.top,ie=re.bottom,ae=re.default,R=re.footer,oe=re.parameter;return Z.eachTree(M,e=>{let t=Gw(e.getTitle(),1),n=e.children&&e.children.length,r=e.checked,i=e.halfChecked,a=e.type===`html`;P.push(Y(`li`,{key:e.id,class:[`vxe-table-export--panel-column-option`,`level--${e.level}`,{"is--group":n,"is--checked":r,"is--indeterminate":i,"is--disabled":e.disabled}],title:a?``:t,onClick:()=>{e.disabled||b(e)}},[Y(`span`,{class:[`vxe-checkbox--icon`,i?AO().TABLE_CHECKBOX_INDETERMINATE:r?AO().TABLE_CHECKBOX_CHECKED:AO().TABLE_CHECKBOX_UNCHECKED]}),a?Y(`span`,{key:`1`,class:`vxe-checkbox--label`,innerHTML:t}):Y(`span`,{key:`0`,class:`vxe-checkbox--label`},t)]))}),t?Y(t,{id:`VXE_EXPORT_MODAL`,modelValue:y.visible,title:kO(A?`vxe.export.printTitle`:`vxe.export.expTitle`),className:`vxe-table-export-popup-wrapper`,width:660,minWidth:500,minHeight:400,mask:!0,lockView:!0,showFooter:!0,escClosable:!0,maskClosable:!0,showMaximize:!0,resize:!0,loading:l.loading,"onUpdate:modelValue"(e){y.visible=e},onShow:S},{default:()=>{let e={$table:o,$grid:s,$gantt:c,options:v,columns:M,params:v.params},t=v.mode===`empty`;return Y(`div`,{class:`vxe-table-export--panel`},[L?Y(`div`,{class:`vxe-table-export--panel-top`},o.callSlot(L,e)):jO(o),Y(`div`,{class:`vxe-table-export--panel-body`},ae?o.callSlot(ae,e):[Y(`table`,{class:`vxe-table-export--panel-table`,cellspacing:0,cellpadding:0,border:0},[Y(`tbody`,[[A?jO(o):Y(`tr`,[Y(`td`,kO(`vxe.export.expName`)),Y(`td`,[i?Y(i,{ref:d,modelValue:v.filename,type:`text`,clearable:!0,placeholder:kO(`vxe.export.expNamePlaceholder`),"onUpdate:modelValue"(e){v.filename=e}}):jO(o)])]),A?jO(o):Y(`tr`,[Y(`td`,kO(`vxe.export.expType`)),Y(`td`,[r?Y(r,{modelValue:v.type,options:y.typeList,"onUpdate:modelValue"(e){v.type=e}}):jO(o)])]),A||F?Y(`tr`,[Y(`td`,kO(`vxe.export.expSheetName`)),Y(`td`,[i?Y(i,{ref:f,modelValue:v.sheetName,type:`text`,clearable:!0,placeholder:kO(`vxe.export.expSheetNamePlaceholder`),"onUpdate:modelValue"(e){v.sheetName=e}}):jO(o)])]):jO(o),Y(`tr`,[Y(`td`,kO(`vxe.export.expMode`)),Y(`td`,[r?Y(r,{modelValue:v.mode,options:y.modeList.map(e=>({value:e.value,label:kO(e.label)})),"onUpdate:modelValue"(e){v.mode=e}}):jO(o)])]),Y(`tr`,[Y(`td`,[kO(`vxe.export.expColumn`)]),Y(`td`,[Y(`div`,{class:`vxe-table-export--panel-column`},[Y(`ul`,{class:`vxe-table-export--panel-column-header`},[Y(`li`,{class:[`vxe-table-export--panel-column-option`,{"is--checked":C,"is--indeterminate":w}],title:kO(`vxe.table.allTitle`),onClick:x},[Y(`span`,{class:[`vxe-checkbox--icon`,w?AO().TABLE_CHECKBOX_INDETERMINATE:C?AO().TABLE_CHECKBOX_CHECKED:AO().TABLE_CHECKBOX_UNCHECKED]}),Y(`span`,{class:`vxe-checkbox--label`},kO(`vxe.export.expCurrentColumn`))])]),Y(`ul`,{class:`vxe-table-export--panel-column-body`},P)])])]),A?Y(`tr`,[Y(`td`,kO(`vxe.export.widthMode`)),Y(`td`,[r?Y(r,{modelValue:v.widthMode,options:ne,"onUpdate:modelValue"(e){v.widthMode=e}}):jO(o)])]):jO(o),Y(`tr`,[Y(`td`,kO(`vxe.export.expOpts`)),oe?Y(`td`,[Y(`div`,{class:`vxe-table-export--panel-option-row`},o.callSlot(oe,e))]):Y(`td`,[Y(`div`,{class:`vxe-table-export--panel-option-row`},a?[Y(a,{modelValue:t||N,disabled:t,title:kO(`vxe.export.expHeaderTitle`),content:kO(`vxe.export.expOptHeader`),"onUpdate:modelValue"(e){v.isHeader=e}}),Y(a,{modelValue:v.isFooter,disabled:!y.hasFooter,title:kO(`vxe.export.expFooterTitle`),content:kO(`vxe.export.expOptFooter`),"onUpdate:modelValue"(e){v.isFooter=e}}),Y(a,{modelValue:N?v.isTitle:!1,disabled:!N,title:kO(`vxe.export.expTitleTitle`),content:kO(`vxe.export.expOptTitle`),"onUpdate:modelValue"(e){v.isTitle=e}}),Y(a,{modelValue:N&&j&&I?v.isColgroup:!1,title:kO(`vxe.export.expColgroupTitle`),disabled:!N||!j||!I,content:kO(`vxe.export.expOptColgroup`),"onUpdate:modelValue"(e){v.isColgroup=e}})]:[]),Y(`div`,{class:`vxe-table-export--panel-option-row`},a?[Y(a,{modelValue:!t&&v.original,disabled:t,title:kO(`vxe.export.expOriginalTitle`),content:kO(`vxe.export.expOptOriginal`),"onUpdate:modelValue"(e){v.original=e}}),Y(a,{modelValue:k&&I&&ee?v.isMerge:!1,title:kO(`vxe.export.expMergeTitle`),disabled:t||!k||!I||!ee,content:kO(`vxe.export.expOptMerge`),"onUpdate:modelValue"(e){v.isMerge=e}}),A?jO(o):Y(a,{modelValue:te?v.useStyle:!1,disabled:!te,title:kO(`vxe.export.expUseStyleTitle`),content:kO(`vxe.export.expOptUseStyle`),"onUpdate:modelValue"(e){v.useStyle=e}})]:[]),Y(`div`,{class:`vxe-table-export--panel-option-row`},a?[Y(a,{modelValue:T?v.isTreeAllExpanded:!1,disabled:t||!T,title:kO(`vxe.export.expTreeAllExpandTitle`),content:kO(`vxe.export.expOptTreeAllExpand`),"onUpdate:modelValue"(e){v.isTreeAllExpanded=e}}),Y(a,{modelValue:O?v.isRowGroupAllExpanded:!1,disabled:t||!O,title:kO(`vxe.export.expRowGroupAllExpandTitle`),content:kO(`vxe.export.expOptRowGroupAllExpand`),"onUpdate:modelValue"(e){v.isRowGroupAllExpanded=e}})]:[])])])]])])]),ie?Y(`div`,{class:`vxe-table-export--panel-bottom`},o.callSlot(ie,e)):jO(o)])},footer(){let e={$table:o,$grid:s,$gantt:c,options:v,columns:M,params:v.params};return Y(`div`,{class:`vxe-table-export--panel-footer`},R?o.callSlot(R,e):[Y(`div`,{class:`vxe-table-export--panel-btns`},[n?Y(n,{content:kO(`vxe.export.expCancel`),onClick:E}):jO(o),n?Y(n,{ref:u,status:`primary`,content:kO(A?`vxe.export.expPrint`:`vxe.export.expConfirm`),onClick:D}):jO(o)])])}}):jO(o)}}}),{getIcon:NO,getI18n:PO,renderEmptyElement:FO}=Q,IO=wT({name:`VxeTableMenuPanel`,setup(e,t){let n=Z.uniqueId(),r=Xe(`$xeTable`,{}),{reactData:i}=r,a=H(),o={refElem:a},s={xID:n,props:e,context:t,getRefMaps:()=>o};return s.renderVN=()=>{let{ctxMenuStore:e}=i,{computeMenuOpts:t}=r.getComputeMaps(),{transfer:n,destroyOnClose:o,className:s}=t.value,{visible:c,list:l}=e;return Y(Be,{to:`body`,disabled:!n},[Y(`div`,{ref:a,class:[`vxe-table--context-menu-wrapper`,s,{"is--visible":c}],style:e.style},!o||c?l.map((t,n)=>t.every(e=>e.visible===!1)?FO(r):Y(`ul`,{class:`vxe-table--context-menu-group-wrapper`,key:n},t.map((t,i)=>{let{children:a,loading:o}=t,s=a&&a.some(e=>e.visible!==!1),c=Object.assign({},t.prefixConfig),l=c.icon||t.prefixIcon,u=Object.assign({},t.suffixConfig),d=u.icon||t.suffixIcon,f=Ww(t.name);return t.visible===!1?FO(r):Y(`li`,{class:[`vxe-table--context-menu--option`,t.className,{"link--loading":o,"link--disabled":t.disabled,"link--active":t===e.selected}],key:`${n}_${i}`},[Y(`a`,{class:`vxe-context-menu--link`,onClick(e){r.ctxMenuLinkEvent(e,t)},onMouseover(e){r.ctxMenuMouseoverEvent(e,t)},onMouseout(e){r.ctxMenuMouseoutEvent(e,t)}},[Y(`div`,{class:[`vxe-context-menu--link-prefix`,c.className||``]},[o?Y(`span`,{class:NO(`TABLE_MENU_OPTION_LOADING`)}):l&&Z.isFunction(l)?Y(`span`,{},lD(l({}))):Y(`span`,{},[Y(`i`,{class:l})]),c.content?Y(`span`,{},`${c.content}`):FO(r)]),Y(`div`,{class:`vxe-context-menu--link-content`,title:f},o?PO(`vxe.table.menuLoading`):f),Y(`div`,{class:[`vxe-context-menu--link-suffix`,u.className||``]},[d&&Z.isFunction(d)?Y(`span`,{},lD(d({}))):Y(`i`,{class:d||(s?NO().TABLE_MENU_OPTIONS:``)}),u.content?Y(`span`,`${u.content}`):FO(r)])]),s&&a?Y(`ul`,{class:[`vxe-table--context-menu-clild-wrapper`,{"is--show":t===e.selected&&e.showChild}]},a.map((a,o)=>{let{loading:s}=a,c=Object.assign({},a.prefixConfig),l=c.icon||a.prefixIcon,u=Object.assign({},a.suffixConfig),d=u.icon||a.suffixIcon,f=Ww(a.name);return a.visible===!1?null:Y(`li`,{class:[`vxe-table--context-menu--option`,a.className,{"link--loading":s,"link--disabled":a.disabled,"link--active":a===e.selectChild}],key:`${n}_${i}_${o}`},[Y(`a`,{class:`vxe-context-menu--link`,onClick(e){r.ctxMenuLinkEvent(e,a)},onMouseover(e){r.ctxMenuMouseoverEvent(e,t,a)},onMouseout(e){r.ctxMenuMouseoutEvent(e,t)}},[Y(`div`,{class:[`vxe-context-menu--link-prefix`,c.className||``]},[a.loading?Y(`span`,{class:NO(`TABLE_MENU_OPTION_LOADING`)}):l&&Z.isFunction(l)?Y(`span`,{},lD(l({}))):Y(`span`,{},[Y(`i`,{class:l})]),c.content?Y(`span`,`${c.content}`):FO(r)]),Y(`div`,{class:`vxe-context-menu--link-content`,title:f},s?PO(`vxe.table.menuLoading`):f),Y(`div`,{class:[`vxe-context-menu--link-suffix`,u.className||``]},[d&&Z.isFunction(d)?Y(`span`,{},lD(d({}))):Y(`i`,{class:d}),u.content?Y(`span`,`${u.content}`):FO(r)])])])})):null])}))):[])])},s},render(){return this.renderVN()}}),{renderer:LO,hooks:RO}=Q,zO=[`openFilter`,`setFilter`,`clearFilter`,`saveFilter`,`saveFilterByEvent`,`saveFilterPanel`,`saveFilterPanelByEvent`,`resetFilter`,`resetFilterByEvent`,`resetFilterPanel`,`resetFilterPanelByEvent`,`getCheckedFilters`,`updateFilterOptionStatus`],BO=`table`;RO.add(`tableFilterModule`,{setupTable(e){let t=e.xeGrid,n=e.xeGantt,r=t||n,{props:i,reactData:a,internalData:o}=e,{refElem:s,refTableFilter:c}=e.getRefMaps(),{computeFilterOpts:l,computeMouseOpts:u}=e.getComputeMaps();return Object.assign(Object.assign({},{openFilter(r){let i=jE(e,r);if(i&&i.filters){let{elemStore:r}=o,{fixed:a,filters:s}=i;return e.scrollToColumn(i).then(()=>{let o=BE(r[`${a||`main`}-header-wrapper`]||r[`main-header-wrapper`]);if(o){let r=o.querySelector(`.vxe-header--column.${i.id} .vxe-cell--filter`);if(r)QT(r,`click`);else{let r=o.querySelector(`.vxe-header--column.${i.id}`);if(r){let o=null;s&&(o=s[0]);let c={$table:e,$grid:t,$gantt:n,$rowIndex:-1,column:i,columnIndex:e.getColumnIndex(i),$columnIndex:e.getVMColumnIndex(i),_columnIndex:e.getVTColumnIndex(i),firstFilterOption:o,fixed:a,source:BO,type:`header`};e.handleOpenFilterColumn(new Event(`click`),null,r,i,c)}}}})}return J()},setFilter(t,n,r){let{filterStore:i}=a,o=jE(e,t);if(o&&o.filters){if(o.filters=IE(n||[],o.id),r)return e.handleColumnConfirmFilter(o,null);i.visible&&e.handleFilterOptions(o)}return J()},clearFilter(t){let{filterStore:n}=a,{tableFullColumn:r}=o,i=l.value,s;return t?(s=jE(e,t),s&&e.handleClearFilter(s)):r.forEach(e.handleClearFilter),(!t||s!==n.column)&&Object.assign(n,{isAllSelected:!1,isIndeterminate:!1,style:null,options:[],column:null,multiple:!1,visible:!1}),i.remote?J():e.updateData()},saveFilter(t){if(t){let n=jE(e,t);e.handleFilterConfirmFilter(null,n)}return J()},saveFilterByEvent(t,n){if(n){let r=jE(e,n);e.handleFilterConfirmFilter(t,r)}return J()},resetFilter(t){if(t){let n=jE(e,t);e.handleFilterResetFilter(null,n)}return J()},resetFilterByEvent(t,n){if(n){let r=jE(e,n);e.handleFilterResetFilter(t,r)}return J()},saveFilterPanel(){let{filterStore:t}=a;return e.handleFilterConfirmFilter(null,t.column||null),J()},saveFilterPanelByEvent(t){let{filterStore:n}=a;return e.handleFilterConfirmFilter(t,n.column||null),J()},resetFilterPanel(){let{filterStore:t}=a;return e.handleFilterResetFilter(null,t.column||null),J()},resetFilterPanelByEvent(t){let{filterStore:n}=a;return e.handleFilterResetFilter(t,n.column||null),J()},getCheckedFilters(){let{tableFullColumn:e}=o,t=[];return e.forEach(e=>{let{field:n,filters:r}=e,i=r||[],a=[],o=[];i&&(i.forEach(e=>{e.checked&&(a.push(e.value),o.push(e.data))}),a.length&&t.push({column:e,field:n,property:n,values:a,datas:o}))}),t},updateFilterOptionStatus(e,t){return e._checked=t,e.checked=t,J()}}),{checkFilterOptions(){let{filterStore:e}=a,{column:t}=e;if(t){let n=t.filters||[];e.isAllSelected=n.every(e=>e._checked),e.isIndeterminate=!e.isAllSelected&&n.some(e=>e._checked)}},handleOpenFilterColumn(t,n,i,u,d){let{initStore:f,filterStore:p}=a,{elemStore:m}=o;if(p.column===u&&p.visible)p.visible=!1;else{let t=s.value,{scrollTop:a,scrollLeft:h,visibleHeight:g,visibleWidth:_}=zT(),{maxHeight:v,transfer:y,zIndex:b}=l.value,x=n||i,S=t.getBoundingClientRect(),C=u?u.filterRender:null,w=C&&Rw(C)?LO.get(C.name):null;e.handleFilterOptions(u),o._currFilterParams=d,p.style=null,p.visible=!0,f.filter=!0,J(()=>{if(!BE(m[`main-header-scroll`]))return;let e=c.value,i=e?e.getRefMaps().refElem.value:null;if(!i)return;let o=x.getBoundingClientRect(),s=i.querySelector(`.vxe-table--filter-header`),l=i.querySelector(`.vxe-table--filter-footer`),d=i.offsetWidth,f=n?d/2:(d-u.renderWidth)/2,C=0,T=0,E=0;if(y)C=o.left-f+h,T=o.top+x.clientHeight+a,E=Math.min(Math.max(S.height,Math.floor(g/2)),Math.max(80,g-T-(s?s.clientHeight:0)-(l?l.clientHeight:0)-28)),C<16?C=16:C>_-d-16&&(C=_-d-16);else if(C=o.left-S.left-f,T=o.top-S.top+x.clientHeight,E=Math.max(40,t.clientHeight-T-(s?s.clientHeight:0)-(l?l.clientHeight:0)-14),C<1?C=1:C>t.clientWidth-d-1&&(C=t.clientWidth-d-1),r){let e=r.getRefMaps().refElem.value;if(e){let t=e.getBoundingClientRect();T+=S.top-t.top}}let D={top:LT(T),left:LT(C)};b&&(D.zIndex=b),p.style=D,w&&!w.tableFilterAutoHeight?E=0:v&&(E=v>E?E:v),p.maxHeight=E})}e.dispatchEvent(`filter-visible`,{column:u,field:u.field,property:u.field,filterList:e.getCheckedFilters(),visible:p.visible},t)},triggerFilterEvent(t,n,r){let{elemStore:i}=o,{fixed:a}=n,s=BE(i[`${a||`main`}-header-wrapper`]||i[`main-header-wrapper`]),c=t.currentTarget,l=s?s.querySelector(`.vxe-header--column.${n.id}`):null;e.handleOpenFilterColumn(t,c,l||c,n,r)},handleClearFilter(t){if(t){let{filters:n,filterRender:r}=t;if(n){let i=Rw(r)?LO.get(r.name):null,a=t.filterResetMethod||(i?i.tableFilterResetMethod||i.filterResetMethod:null);n.forEach(e=>{e._checked=!1,e.checked=!1,a||(e.data=Z.clone(e.resetValue,!0))}),a&&a({options:n,column:t,$table:e})}}},handleColumnConfirmFilter(t,n){let{mouseConfig:r}=i,{scrollXLoad:o,scrollYLoad:s}=a,c=l.value,d=u.value,{field:f,filters:p}=t,m=p||[],h=[],g=[];m.forEach(e=>{e.checked&&(h.push(e.value),g.push(e.data))});let _=e.getCheckedFilters(),v={$table:e,$event:n,column:t,field:f,property:f,values:h,datas:g,filters:_,filterList:_};return c.remote||(e.handleTableData(!0),e.checkSelectionStatus()),r&&d.area&&e.handleFilterEvent&&e.handleFilterEvent(n,v),n&&e.dispatchEvent(`filter-change`,v,n),e.closeFilter(),e.updateFooter().then(()=>{let{scrollXLoad:t,scrollYLoad:n}=a;if(o||t||s||n)return(o||t)&&e.updateScrollXSpace(),(s||n)&&e.updateScrollYSpace(),e.refreshScroll()}).then(()=>(e.updateCellAreas(),e.recalculate(!0))).then(()=>{setTimeout(()=>e.recalculate(),50)})},confirmFilterEvent(t,n){n&&e.handleColumnConfirmFilter(n,t)},handleFilterChangeRadioOption(t,n,r){let{filterStore:i}=a,{column:o}=i;o&&((o.filters||[]).forEach(e=>{e._checked=!1}),r._checked=n,e.checkFilterOptions(),e.handleFilterConfirmFilter(t,o))},handleFilterChangeMultipleOption(t,n,r){r._checked=n,e.checkFilterOptions()},handleFilterChangeOption(t,n,r){let{filterStore:i}=a,{fullColumnIdData:s}=o,c=i.column;if(!c){let e=s[r._colId];e&&(c=e.column,i.column=c)}c&&(c.filterMultiple?e.handleFilterChangeMultipleOption(t,n,r):e.handleFilterChangeRadioOption(t,n,r))},handleFilterConfirmFilter(t,n){n&&((n.filters||[]).forEach(e=>{e.checked=e._checked}),e.confirmFilterEvent(t,n))},handleFilterResetFilter(t,n){n&&(e.handleClearFilter(n),e.confirmFilterEvent(t,n),t&&e.dispatchEvent(`clear-filter`,{filterList:[]},t))}})},setupGrid(e){return e.extendTableMethods(zO)},setupGantt(e){return e.extendTableMethods(zO)}});var{menus:VO,hooks:HO,globalEvents:UO,GLOBAL_EVENT_KEYS:WO}=Q,GO=[`closeMenu`];HO.add(`tableMenuModule`,{setupTable(e){let{xID:t,props:n,reactData:r,internalData:i}=e,{refElem:a,refTableFilter:o,refTableMenu:s}=e.getRefMaps(),{computeMouseOpts:c,computeIsContentMenu:l,computeMenuOpts:u}=e.getComputeMaps(),d=e.xeGrid,f=e.xeGantt,p=d||f,m={},h={},g=(t,n,o)=>{let{ctxMenuStore:c}=r,d=l.value,f=u.value,h=f[n],{zIndex:g,transfer:_,width:v,visibleMethod:y}=f;if(h){let{options:n,disabled:r}=h;r?t.preventDefault():d&&n&&n.length&&(o.options=n,e.preventEvent(t,`event.showMenu`,o,()=>{if(!y||y(o)){t.preventDefault(),e.updateZindex();let r=p?p.getRefMaps().refElem.value:a.value;if(!r)return;let l=r.getBoundingClientRect(),{scrollTop:u,scrollLeft:d,visibleHeight:f,visibleWidth:m}=zT(),h=t.clientY-l.y,y=t.clientX-l.x;_&&(h=t.clientY+u,y=t.clientX+d);let b=()=>{i._currMenuParams=o;let e={zIndex:g||i.tZindex,top:`${h}px`,left:`${y}px`};v&&(e[`--vxe-ui-table-menu-item-width`]=LT(v)),Object.assign(c,{visible:!0,list:n,selected:null,selectChild:null,showChild:!1,style:e}),J(()=>{let e=s.value.getRefMaps().refElem.value,t=e.clientHeight,n=e.clientWidth,{boundingTop:r,boundingLeft:i}=qT(e),a=r+t-f,o=i+n-m;a>-10&&(c.style.top=`${Math.max(u+2,h-t-2)}px`),o>-10&&(c.style.left=`${Math.max(d+2,y-n-2)}px`)})},{keyboard:x,row:S,column:C}=o;x&&S&&C?e.scrollToRow(S,C).then(()=>{let t=e.getCellElement(S,C);if(t){let{boundingTop:e,boundingLeft:n}=qT(t);h=e+u+Math.floor(t.offsetHeight/2),y=n+d+Math.floor(t.offsetWidth/2)}b()}):b()}else m.closeMenu()}))}e.closeFilter()};return m={closeMenu(){return Object.assign(r.ctxMenuStore,{visible:!1,selected:null,selectChild:null,showChild:!1}),J()}},h={moveCtxMenu(t,n,r,i,a,o){let s,c=Z.findIndexOf(o,e=>n[r]===e);if(i)a&&Uw(n.selected)?n.showChild=!0:(n.showChild=!1,n.selectChild=null);else if(UO.hasKey(t,WO.ARROW_UP)){for(let e=c-1;e>=0;e--)if(o[e].visible!==!1){s=o[e];break}n[r]=s||o[o.length-1]}else if(UO.hasKey(t,WO.ARROW_DOWN)){for(let e=c+1;ee.parentNode.parentNode.parentNode.getAttribute(`xid`)===t),a={source:`table`,type:r,$table:e,$grid:d,$gantt:f,columns:y.slice(0),$event:l};if(i.flag){let t=i.targetElem,n=e.getColumnNode(t),o=n?n.item:null,s=`${r}-`;if(o&&Object.assign(a,{column:o,columnIndex:e.getColumnIndex(o),cell:t}),r===`body`){let n=e.getRowNode(t.parentNode),r=n?n.item:null;s=``,r&&(a.row=r,a.rowIndex=e.getRowIndex(r))}let c=`${s}cell-menu`;g(l,r,a),e.dispatchEvent(c,a,l);return}if(KT(l,w,`vxe-table--${r}-wrapper`,e=>e.getAttribute(`xid`)===t).flag||r===`body`&&KT(l,w,`vxe-table--empty-place-wrapper`,e=>e.getAttribute(`xid`)===t).flag){C.trigger===`cell`?l.preventDefault():g(l,r,a);return}}}b&&!KT(l,b.getRefMaps().refElem.value).flag&&e.closeFilter(),m.closeMenu()},ctxMenuMouseoverEvent(e,t,n){let i=e.currentTarget,{ctxMenuStore:a}=r;e.preventDefault(),e.stopPropagation(),a.selected=t,a.selectChild=n,n||(a.showChild=Uw(t),a.showChild&&J(()=>{let e=i.nextElementSibling;if(e){let{boundingTop:t,boundingLeft:n,visibleHeight:r,visibleWidth:a}=qT(i),o=t+i.offsetHeight,s=n+i.offsetWidth,c=``,l=``;s+e.offsetWidth>a-10&&(c=`auto`,l=`${i.offsetWidth}px`);let u=``,d=``;o+e.offsetHeight>r-10&&(u=`auto`,d=`0`),e.style.left=c,e.style.right=l,e.style.top=u,e.style.bottom=d}}))},ctxMenuMouseoutEvent(e,t){let{ctxMenuStore:n}=r;t.children||(n.selected=null),n.selectChild=null},ctxMenuLinkEvent(t,n){let r=e.xeGrid,a=e.xeGantt;if(!n.loading&&!n.disabled&&(n.code||!n.children||!n.children.length)){let o=VO.get(n.code),s=Object.assign({},i._currMenuParams,{menu:n,$table:e,$grid:r,$gantt:a,$event:t}),c=o?o.tableMenuMethod||o.menuMethod:null;c&&c(s,t),e.dispatchEvent(`menu-click`,s,t),m.closeMenu()}}},Object.assign(Object.assign({},m),h)},setupGrid(e){return e.extendTableMethods(GO)},setupGantt(e){return e.extendTableMethods(GO)}});var{warnLog:KO,errLog:qO}=aE(`table`),{getConfig:JO,renderer:YO,hooks:XO,getI18n:ZO}=Q,QO=`insert.insertAt.insertNextAt.insertChild.insertChildAt.insertChildNextAt.remove.removeCheckboxRow.removeRadioRow.removeCurrentRow.getRecordset.getInsertRecords.getRemoveRecords.getUpdateRecords.getEditRecord.getActiveRecord.getEditCell.getSelectedCell.clearEdit.clearActived.clearSelected.isEditByRow.isActiveByRow.setEditRow.setActiveRow.setEditCell.setActiveCell.setSelectCell`.split(`.`);XO.add(`tableEditModule`,{setupTable(e){let{props:t,reactData:n,internalData:r}=e,{refElem:i}=e.getRefMaps(),{computeMouseOpts:a,computeEditOpts:o,computeCheckboxOpts:s,computeTreeOpts:c,computeValidOpts:l}=e.getComputeMaps(),u=Z.browse(),d={},f={},p=(e,t)=>{let{model:n,editRender:r}=t;r&&(n.value=RE(e,t),n.update=!1)},m=(e,t)=>{let{model:n,editRender:r}=t;r&&n.update&&(zE(e,t,n.value),n.update=!1,n.value=null)},h=()=>{let e=i.value;if(e){let t=e.querySelector(`.col--selected`);t&&PT(t,`col--selected`)}},g=()=>{let{editStore:e,tableColumn:t}=n,r=o.value,{actived:i}=e,{row:a,column:s}=i;a&&s&&(r.mode===`row`?t.forEach(e=>m(a,e)):m(a,s))},_=(t,n)=>{let{tableFullTreeData:i,afterFullData:a,fullDataRowIdData:o,fullAllDataRowIdData:s}=r,l=c.value,{rowField:u,parentField:d,mapChildrenField:f}=l,p=l.children||l.childrenField,m=n?`push`:`unshift`;t.forEach(t=>{let n=t[d],r=$(e,t),c=n?Z.findTree(i,e=>n===e[u],{children:f}):null;if(c){let{item:n}=c,i=s[$(e,n)],a=i?i.level:0,l=n[p],u=n[f];Z.isArray(l)||(l=n[p]=[]),Z.isArray(u)||(u=n[f]=[]),l[m](t),u[m](t);let d={row:t,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:l,parent:n,level:a+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};o[r]=d,s[r]=d}else{n&&KO(`vxe.error.unableInsert`),a[m](t),i[m](t);let e={row:t,rowid:r,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:i,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};o[r]=e,s[r]=e}})},v=(i,a,o)=>{let{treeConfig:s}=t,{isRowGroupStatus:l}=n,{tableFullTreeData:u,afterFullData:d,mergeBodyList:f,tableFullData:p,fullDataRowIdData:m,fullAllDataRowIdData:h,insertRowMaps:g,removeRowMaps:v}=r,y=c.value,{transform:b,parentField:x,rowField:S,mapChildrenField:C}=y,w=y.children||y.childrenField;Z.isArray(i)||(i=[i]);let T=a;if(Z.isString(a)||Z.isNumber(a)){let e=h[a];e&&(T=e.row)}if(!i.length)return Promise.resolve({row:null,rows:[]});e.handlePushStack();let E=Ne(e.defineField(i.map(e=>Object.assign(s&&b?{[C]:[],[w]:[]}:{},e)))),D=[];if(s&&b&&(D=Z.toArrayTree(E,{key:S,parentKey:x,children:w})),Z.eqNull(T))if(s&&b)_(E,!1);else if(l){if(s)throw Error(ZO(`vxe.error.noTree`,[`insert`]));qO(ZO(`vxe.error.noGroup`,[`insert`]))}else E.forEach(t=>{let n=$(e,t),r={row:t,rowid:n,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};m[n]=r,h[n]=r,d.unshift(t),p.unshift(t)}),f.forEach(e=>{let{row:t}=e;t>=0&&(e.row=t+E.length)});else if(T===-1)if(s&&b)_(E,!0);else if(l){if(s)throw Error(ZO(`vxe.error.noTree`,[`insert`]));qO(ZO(`vxe.error.noGroup`,[`insert`]))}else E.forEach(t=>{let n=$(e,t),r={row:t,rowid:n,_seq:-1,seq:-1,index:-1,_index:-1,treeIndex:-1,_tIndex:-1,$index:-1,items:d,parent:null,level:0,height:0,resizeHeight:0,oTop:0,expandHeight:0};m[n]=r,h[n]=r,d.push(t),p.push(t)});else if(s&&b){let t=Z.findTree(u,e=>T[S]===e[S],{children:C});if(t){let{parent:n}=t,r=n?n[C]:u,i=h[$(e,n)],a=i?i.level:0;if(D.forEach((e,i)=>{n?e[x]!==n[S]&&(qO(`vxe.error.errProp`,[`${x}=${e[x]}`,`${x}=${n[S]}`]),e[x]=n[S]):e[x]!==null&&(Z.eqNull(e[x])||qO(`vxe.error.errProp`,[`${x}=${e[x]}`,`null`]),e[x]=null);let a=t.index+i;o&&(a+=1),r.splice(a,0,e)}),Z.eachTree(D,t=>{let i=$(e,t),o={row:t,rowid:i,_seq:-1,seq:-1,index:-1,_index:-1,$index:-1,treeIndex:-1,_tIndex:-1,items:r,parent:n,level:a+1,height:0,resizeHeight:0,oTop:0,expandHeight:0};t[w]&&(t[C]=t[w]),m[i]=o,h[i]=o},{children:w}),n){let e=Z.findTree(u,e=>T[S]===e[S],{children:w});if(e){let t=e.items,n=e.index;o&&(n+=1),t.splice(n,0,...D)}}}else KO(`vxe.error.unableInsert`),_(E,!0)}else if(l){if(s)throw Error(ZO(`vxe.error.noTree`,[`insert`]));qO(ZO(`vxe.error.noGroup`,[`insert`]))}else{if(s)throw Error(ZO(`vxe.error.noTree`,[`insert`]));let t=-1;if(Z.isNumber(T)?T-1?p.splice(n+ +!!o,0,...E):p.push(...E),f.forEach(e=>{let{row:n,rowspan:r}=e;n>=t?e.row=n+E.length:(o?n+r>=t:n+r>t)&&(e.rowspan=r+E.length)})}let O=t=>{let n=$(e,t);v[n]?(delete v[n],g[n]&&delete g[n]):g[n]=t};return s&&b?Z.eachTree(D,O,{children:C}):E.forEach(O),n.removeRowFlag++,n.insertRowFlag++,e.cacheRowMap(!1),e.updateScrollYStatus(),e.handleTableData(s&&b),s&&b||e.updateAfterDataIndex(),e.updateFooter(),e.handleUpdateBodyMerge(),e.checkSelectionStatus(),n.scrollYLoad&&e.updateScrollYSpace(),J().then(()=>(e.updateCellAreas(),e.recalculate(!0))).then(()=>({row:E.length?E[E.length-1]:null,rows:E}))},y=(e,n,i,a)=>{let{treeConfig:o}=t,{fullAllDataRowIdData:s}=r,{transform:l,rowField:u,parentField:d}=c.value;if(o&&l){Z.isArray(e)||(e=[e]);let t=n;if(Z.isString(n)||Z.isNumber(n)){let e=s[n];e&&(t=e.row)}return v(e.map(e=>Object.assign({},e,{[d]:t[u]})),i,a)}return qO(`vxe.error.errProp`,[`tree-config.transform=false`,`tree-config.transform=true`]),Promise.resolve({row:null,rows:[]})},b=(t,r)=>{let{editStore:i}=n,{actived:a,focused:o}=i,{row:s,column:c}=a,u=l.value;if(s||c){if(r&&$(e,r)!==$(e,s))return J();g(),e.updateFooter(),a.args=null,a.row=null,a.column=null,e.dispatchEvent(`edit-closed`,{row:s,rowIndex:e.getRowIndex(s),$rowIndex:e.getVMRowIndex(s),column:c,columnIndex:e.getColumnIndex(c),$columnIndex:e.getVMColumnIndex(c)},t||null)}return o.row=null,o.column=null,u.autoClear&&(u.msgMode!==`full`||JO().cellVaildMode===`obsolete`)&&e.clearValidate?e.clearValidate():J().then(()=>e.updateCellAreas())},x=(r,i,a)=>{let s=e.xeGrid,c=e.xeGantt,{editConfig:l,mouseConfig:u}=t,{editStore:d,tableColumn:f}=n,m=o.value,{mode:h}=m,{actived:g,focused:_}=d,{row:v,column:y}=r,{editRender:x}=y,{isFocus:S,isPos:C,isClear:w}=a,T=r.cell||e.getCellElement(v,y),E=m.beforeEditMethod||m.activeMethod;if(r.cell=T,T&&Rw(l)&&Rw(x)&&!e.isPendingByRow(v)&&!e.isAggregateRecord(v)){if(g.row!==v||h===`cell`&&g.column!==y){let t=`edit-disabled`;if(!E||E(Object.assign(Object.assign({},r),{$table:e,$grid:s,$gantt:c}))){u&&(e.clearSelected(),e.clearCellAreas&&(e.clearCellAreas(),e.clearCopyCellArea())),e.closeTooltip(),g.column&&b(i),t=`edit-activated`,y.renderHeight=T.offsetHeight,g.args=r,g.row=v,g.column=y,e.handlePushStack(),w&&zE(v,y,null),h===`row`?f.forEach(e=>p(v,e)):p(v,y);let n=m.afterEditMethod;J(()=>{S&&e.handleFocus(r,i),n&&n(Object.assign(Object.assign({},r),{$table:e,$grid:s,$gantt:c}))})}e.dispatchEvent(t,{row:v,rowIndex:e.getRowIndex(v),$rowIndex:e.getVMRowIndex(v),column:y,columnIndex:e.getColumnIndex(y),$columnIndex:e.getVMColumnIndex(y)},i),t===`edit-activated`&&e.dispatchEvent(`edit-actived`,{row:v,rowIndex:e.getRowIndex(v),$rowIndex:e.getVMRowIndex(v),column:y,columnIndex:e.getColumnIndex(y),$columnIndex:e.getVMColumnIndex(y)},i)}else{let{column:t}=g;if(u&&(e.clearSelected(),e.clearCellAreas&&(e.clearCellAreas(),e.clearCopyCellArea())),t&&t!==y){let{model:n}=t;n.update&&zE(v,t,n.value),e.clearValidate&&e.clearValidate(v,y)}y.renderHeight=T.offsetHeight,g.args=r,g.column=y,C&&setTimeout(()=>{e.handleFocus(r,i)})}_.column=null,_.row=null,e.focus()}return J()},S=(n,i,a)=>{let{editConfig:o}=t,{isPos:s}=a,c=Z.isString(i)?e.getColumnByField(i):i;return n&&c&&Rw(o)&&Rw(c.editRender)&&!e.isAggregateRecord(n)?Promise.resolve(s?e.scrollToRow(n,c):null).then(()=>{let t=e.getCellElement(n,c);return t&&(x({row:n,rowIndex:e.getRowIndex(n),column:c,columnIndex:e.getColumnIndex(c),cell:t,$table:e},null,{isFocus:s,isPos:s}),r._lastCallTime=Date.now()),J()}):J()};return d={insert(e){return v(e,null)},insertAt(e,t){return v(e,t)},insertNextAt(e,t){return v(e,t,!0)},insertChild(e,t){return y(e,t,null)},insertChildAt(e,t,n){return y(e,t,n)},insertChildNextAt(e,t,n){return y(e,t,n,!0)},remove(i){let{treeConfig:a}=t,{editStore:o,isRowGroupStatus:l}=n,{tableFullTreeData:u,selectCheckboxMaps:f,afterFullData:p,mergeBodyList:m,tableFullData:h,pendingRowMaps:g,insertRowMaps:_,removeRowMaps:v}=r,y=s.value,b=c.value,{transform:x,mapChildrenField:S}=b,C=b.children||b.childrenField,{actived:w}=o,{checkField:T}=y,E=[];return i?Z.isArray(i)||(i=[i]):i=h,i.length?(e.handlePushStack(),i.forEach(t=>{if(!e.isInsertByRow(t)){let n=$(e,t);v[n]=t}}),T||(i.forEach(t=>{let n=$(e,t);f[n]&&delete f[n]}),n.updateCheckboxFlag++),h===i?(i=E=h.slice(0),r.tableFullData=[],r.afterFullData=[],e.clearMergeCells()):a&&x?i.forEach(t=>{let n=$(e,t),r=Z.findTree(u,t=>n===$(e,t),{children:S});if(r){let e=r.items.splice(r.index,1);E.push(e[0])}let i=Z.findTree(u,t=>n===$(e,t),{children:C});i&&i.items.splice(i.index,1);let a=e.findRowIndexOf(p,t);a>-1&&p.splice(a,1)}):l?KO(ZO(`vxe.error.noGroup`,[`remove`])):i.forEach(t=>{let n=e.findRowIndexOf(h,t);if(n>-1){let e=h.splice(n,1);E.push(e[0])}let r=e.findRowIndexOf(p,t);r>-1&&(m.forEach(e=>{let{row:t,rowspan:n}=e;t>r?e.row=t-1:t+n>r&&(e.rowspan=n-1)}),p.splice(r,1))}),w.row&&e.findRowIndexOf(i,w.row)>-1&&d.clearEdit(),i.forEach(t=>{let n=$(e,t);_[n]&&delete _[n],g[n]&&delete g[n]}),n.removeRowFlag++,n.insertRowFlag++,n.pendingRowFlag++,e.cacheRowMap(!1),e.handleTableData(a&&x),e.updateFooter(),e.handleUpdateBodyMerge(),a&&x||e.updateAfterDataIndex(),e.checkSelectionStatus(),n.scrollYLoad&&e.updateScrollYSpace(),J().then(()=>(e.updateCellAreas(),e.recalculate(!0))).then(()=>({row:E.length?E[E.length-1]:null,rows:E}))):Promise.resolve({row:null,rows:[]})},removeCheckboxRow(){return d.remove(e.getCheckboxRecords()).then(t=>(e.clearCheckboxRow(),t))},removeRadioRow(){let t=e.getRadioRecord();return d.remove(t||[]).then(t=>(e.clearRadioRow(),t))},removeCurrentRow(){let t=e.getCurrentRecord();return d.remove(t||[]).then(t=>(e.clearCurrentRow(),t))},getRecordset(){let t=d.getRemoveRecords(),n=e.getPendingRecords(),r=t.concat(n),i=d.getUpdateRecords().filter(t=>!r.some(n=>e.eqRow(n,t)));return{insertRecords:d.getInsertRecords(),removeRecords:t,updateRecords:i,pendingRecords:n}},getInsertRecords(){let{fullAllDataRowIdData:e,insertRowMaps:t}=r,n=[];return Z.each(t,(t,r)=>{e[r]&&n.push(t)}),n},getRemoveRecords(){let{removeRowMaps:e}=r,t=[];return Z.each(e,e=>{t.push(e)}),t},getUpdateRecords(){let{keepSource:n,treeConfig:i}=t,{tableFullData:a,tableFullTreeData:o}=r,s=c.value,l=[];if(n)if(g(),i){let t=s.children||s.childrenField;Z.eachTree(o,t=>{e.isUpdateByRow(t)&&l.push(t)},{children:t})}else a.forEach(t=>{e.isUpdateByRow(t)&&l.push(t)});return l},getActiveRecord(){KO(`vxe.error.delFunc`,[`getActiveRecord`,`getEditCell`]);let{editStore:t}=n,{fullAllDataRowIdData:i}=r,{args:a,row:o}=t.actived;return a&&o&&i[$(e,o)]?Object.assign({},a,{row:o}):null},getEditRecord(){KO(`vxe.error.delFunc`,[`getEditRecord`,`getEditCell`]);let{editStore:t}=n,{fullAllDataRowIdData:i}=r,{args:a,row:o}=t.actived;return a&&o&&i[$(e,o)]?Object.assign({},a,{row:o}):null},getEditCell(){let{editStore:t}=n,{row:r,column:i}=t.actived;return i&&r?{row:r,rowIndex:e.getRowIndex(r),column:i,columnIndex:e.getColumnIndex(i)}:null},getSelectedCell(){let{editStore:e}=n,{row:t,column:r}=e.selected;return t&&r?{row:t,column:r}:null},clearActived(t){return KO(`vxe.error.delFunc`,[`clearActived`,`clearEdit`]),e.clearEdit(t)},clearEdit(e){return b(null,e)},clearSelected(){let{editStore:e}=n,{selected:t}=e;return t.row=null,t.column=null,h(),J()},isActiveByRow(t){return KO(`vxe.error.delFunc`,[`isActiveByRow`,`isEditByRow`]),e.isEditByRow(t)},isEditByRow(e){let{editStore:t}=n;return t.actived.row===e},setActiveRow(e){return KO(`vxe.error.delFunc`,[`setActiveRow`,`setEditRow`]),d.setEditRow(e)},setEditRow(t,n,i){let{visibleColumn:a}=r,o=Z.find(a,e=>Rw(e.editRender)),s=!1;return n&&(s=!0,n!==!0&&(o=Z.isString(n)?e.getColumnByField(n):n)),S(t,o,Object.assign({isPos:s,isFocus:s},i))},setActiveCell(e,t){return KO(`vxe.error.delFunc`,[`setActiveCell`,`setEditCell`]),d.setEditCell(e,t)},setEditCell(e,t,n){return S(e,t,Object.assign({isFocus:!0,isPos:!0},n))},setSelectCell(t,r){let{tableData:i}=n,a=o.value,s=Z.isString(r)?e.getColumnByField(r):r;if(t&&s&&a.trigger!==`manual`){let n=e.findRowIndexOf(i,t);if(n>-1&&s){let r=e.getCellElement(t,s),i={row:t,rowIndex:n,column:s,columnIndex:e.getColumnIndex(s),cell:r};e.handleSelected(i,{})}}return J()}},f={handleEdit(e,t,n){return x(e,t,Object.assign({isFocus:!0,isPos:!0},n))},handleActived(e,t){return f.handleEdit(e,t)},handleClearEdit:b,handleFocus(t){let{row:n,column:r,cell:i}=t,{editRender:a}=r,s=o.value;if(Rw(a)){let o=YO.get(a.name),c=a.autofocus||a.autoFocus,l=a.autoSelect||a.autoselect,d;if(s.autoFocus&&(!c&&o&&(c=o.tableAutoFocus||o.tableAutofocus||o.autofocus),!l&&o&&(l=o.tableAutoSelect||o.autoselect),Z.isFunction(c)?d=c(t):c&&(d=c===!0?i.querySelector(`input,textarea`):i.querySelector(c),d&&d.focus())),d){if(l)d.select();else if(u.msie){let e=d.createTextRange();e.collapse(!1),e.select()}}else s.autoPos&&(r.fixed||e.scrollToRow(n,r))}},handleSelected(r,i){let{mouseConfig:s}=t,{editStore:c}=n,l=a.value,u=o.value,{actived:d,selected:p}=c,{row:m,column:h}=r,g=s&&l.selected;return g&&(p.row!==m||p.column!==h)&&(d.row!==m||u.mode===`cell`&&d.column!==h)&&(b(i),e.clearSelected(),e.clearCellAreas&&(e.clearCellAreas(),e.clearCopyCellArea()),p.args=r,p.row=m,p.column=h,g&&f.addCellSelectedClass(),e.focus(),i&&e.dispatchEvent(`cell-selected`,r,i)),J()},addCellSelectedClass(){let{editStore:t}=n,{selected:r}=t,{row:i,column:a}=r;if(h(),i&&a){let t=e.getCellElement(i,a);t&&FT(t,`col--selected`)}}},Object.assign(Object.assign({},d),f)},setupGrid(e){return e.extendTableMethods(QO)},setupGantt(e){return e.extendTableMethods(QO)}});var $O=`body{padding:0;color:rgba(0,0,0,0.7);font-family:"Microsoft YaHei",微软雅黑,"MicrosoftJhengHei",华文细黑,STHeiti,MingLiu}body *{-webkit-box-sizing:border-box;box-sizing:border-box}.vxe-table{border-collapse:collapse;text-align:left;border-spacing:0}.vxe-table.is--default-width,.vxe-table.is--auto-width{width:100%}.vxe-table.is--scale-width{table-layout:fixed}.vxe-table,.vxe-table th,.vxe-table td,.vxe-table td{white-space:pre-line;word-break:break-all;border-color:#D0D0D0;border-style:solid;border-width:0}.border--default,.border--full,.border--outer{border-top-width:1px}.border--default,.border--full,.border--outer{border-left-width:1px}.border--outer,.border--default th,.border--default td,.border--full th,.border--full td,.border--outer th,.border--inner th,.border--inner td{border-bottom-width:1px}.border--default,.border--outer,.border--full th,.border--full td{border-right-width:1px}.border--default th,.border--full th,.border--outer th{background-color:#f8f8f9}.vxe-table td>div,.vxe-table th>div{padding:0.5em 0.4em}.col--center{text-align:center}.col--right{text-align:right}.vxe-table .col--ellipsis>div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-all}.vxe-table--tree-node{text-align:left}.vxe-table--tree-node-wrapper{position:relative}.vxe-table--tree-icon-wrapper{position:absolute;top:50%;width:1em;height:1em;text-align:center;-webkit-transform:translateY(-50%);transform:translateY(-50%);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer}.vxe-table--tree-unfold-icon,.vxe-table--tree-fold-icon{position:absolute;width:0;height:0;border-style:solid;border-width:0.5em;border-right-color:transparent;border-bottom-color:transparent}.vxe-table--tree-unfold-icon{left:.3em;top:0;border-left-color:#939599;border-top-color:transparent}.vxe-table--tree-fold-icon{left:0;top:.3em;border-left-color:transparent;border-top-color:#939599}.vxe-table--tree-cell{display:block;padding-left:1.5em}.vxe-table input[type="checkbox"]{margin:0}.vxe-table input[type="checkbox"],.vxe-table input[type="radio"],.vxe-table input[type="checkbox"]+span,.vxe-table input[type="radio"]+span{vertical-align:middle;padding-left:0.4em}`;function ek(e,t){return new Blob([e],{type:`text/${t.type};charset=utf-8;`})}function tk(e,t){let{style:n}=e;return[``,``,``,`${e.sheetName}`,``,``,n?``:``,``,`${t}`,``].join(``)}var{warnLog:nk,errLog:rk}=aE(`table`),{getI18n:ik,hooks:ak,renderer:ok}=Q,sk,ck=``,lk=`\r -`;function uk(e){return!!e.field||[`seq`,`checkbox`,`radio`].indexOf(e.type||``)===-1}var dk=e=>{let t=[];return e.forEach(e=>{e.childNodes&&e.childNodes.length?(t.push(e),t.push(...dk(e.childNodes))):t.push(e)}),t},fk=e=>{let t=1,n=(e,r)=>{if(r&&(e._level=r._level+1,t{n(r,e),t+=r._colSpan}),e._colSpan=t}else e._colSpan=1};e.forEach(e=>{e._level=1,n(e)});let r=[];for(let e=0;e{e._rowSpan=e.childNodes&&e.childNodes.length?1:t-e._level+1,r[e._level-1].push(e)}),r};function pk(e){return e===!0?`full`:e||`default`}function mk(e){return e===`TRUE`||e===`true`||e===!0}function hk(e,t,n){let r=e.xeGrid,i=e.xeGantt,{footerFilterMethod:a}=t;return a?n.filter((t,n)=>a({$table:e,$grid:r,$gantt:i,items:t,$rowIndex:n})):n}function gk(e,t){if(t){if(e.type===`seq`)return`\t${t}`;switch(e.cellType){case`string`:if(!isNaN(t))return`\t${t}`;break;case`number`:break;default:if(t.length>=12&&!isNaN(t))return`\t${t}`}}return t}function _k(e){return/[",\s\n]/.test(e)?`"${e.replace(/"/g,`""`)}"`:Z.eqNull(e)?``:e}function vk(e,t){return e.getElementsByTagName(t)}function yk(e){return`#${e}@${Z.uniqueId()}`}function bk(e,t){return e.replace(/#\d+@\d+/g,e=>Z.hasOwnProp(t,e)?t[e]:e)}function xk(e,t){return bk(e,t).replace(/^"+$/g,e=>`"`.repeat(Math.ceil(e.length/2)))}function Sk(e,t){let{fieldMaps:n,titleMaps:r}=e;if(!n[t]){let e=r[t];e&&e.field&&(t=e.field)}return t}function Ck(e,t,n){let r=t.split(lk),i=[],a=[];if(r.length){let t={},o=Date.now();r.forEach(r=>{if(r){let s={};r=r.replace(/("")|(\n)/g,(e,n)=>{let r=yk(o);return t[r]=n?`"`:` -`,r}).replace(/"(.*?)"/g,(e,n)=>{let r=yk(o);return t[r]=bk(n,t),r});let c=r.split(n);a.length?(c.forEach((e,n)=>{nSk(e,xk(n.trim(),t)))}})}return{fields:a,rows:i}}function wk(e,t){return Ck(e,t,`,`)}function Tk(e,t){return Ck(e,t,` `)}function Ek(e,t){let n=vk(new DOMParser().parseFromString(t,`text/html`),`body`),r=[],i=[];if(n.length){let t=vk(n[0],`table`);if(t.length){let n=vk(t[0],`thead`);if(n.length){Z.arrayEach(vk(n[0],`tr`),t=>{Z.arrayEach(vk(t,`th`),t=>{i.push(Sk(e,t.textContent||``))})});let a=vk(t[0],`tbody`);a.length&&Z.arrayEach(vk(a[0],`tr`),e=>{let t={};Z.arrayEach(vk(e,`td`),(e,n)=>{i[n]&&(t[i[n]]=e.textContent||``)}),r.push(t)})}}}return{fields:i,rows:r}}function Dk(e,t){let n=vk(new DOMParser().parseFromString(t,`application/xml`),`Worksheet`),r=[],i=[];if(n.length){let t=vk(n[0],`Table`);if(t.length){let n=vk(t[0],`Row`);n.length&&(Z.arrayEach(vk(n[0],`Cell`),t=>{i.push(Sk(e,t.textContent||``))}),Z.arrayEach(n,(e,t)=>{if(t){let t={},n=vk(e,`Cell`);Z.arrayEach(n,(e,n)=>{i[n]&&(t[i[n]]=e.textContent)}),r.push(t)}}))}}return{fields:i,rows:r}}function Ok(e){Z.eachTree(e,e=>{delete e._level,delete e._colSpan,delete e._rowSpan,delete e._children,delete e.childNodes},{children:`children`})}var kk=[`exportData`,`importByFile`,`importData`,`saveFile`,`readFile`,`print`,`getPrintHtml`,`openImport`,`closeImport`,`openExport`,`closeExport`,`openPrint`,`closePrint`];ak.add(`tableExportModule`,{setupTable(e){let{props:t,reactData:n,internalData:r}=e,{computeTreeOpts:i,computePrintOpts:a,computeExportOpts:o,computeImportOpts:s,computeCustomOpts:c,computeSeqOpts:l,computeRadioOpts:u,computeCheckboxOpts:d,computeColumnOpts:f,computeAggregateOpts:p}=e.getComputeMaps(),m=(t,n,r,i,a)=>{let o=l.value.seqMethod||i.seqMethod;return o?o({$table:e,row:n,rowIndex:e.getRowIndex(n),_rowIndex:e.getVTRowIndex(n),$rowIndex:r,column:i,columnIndex:e.getColumnIndex(i),_columnIndex:e.getVTColumnIndex(i),$columnIndex:a}):t};function h(t,n){let r=f.value,i=n.headerExportMethod||r.headerExportMethod;return i?i({column:n,options:t,$table:e}):(t.isTitle?e.getHeaderCellLabel(n):n.field)||``}let g=e=>Z.isBoolean(e)?e?`TRUE`:`FALSE`:e,_=e=>Kw(e)?``:`${e}`,v=(a,o,s)=>{let{isTreeAllExpanded:c,isRowGroupAllExpanded:l,mode:h}=a,{treeConfig:v}=t,{isRowGroupStatus:y}=n,{fullColumnFieldData:b}=r,x=u.value,S=d.value,C=i.value,w=f.value,T=p.value;sk||=document.createElement(`div`);let{handleGetRowId:E}=TE(e);if(y){let{mode:t,showTotal:n,totalMethod:r,countFields:i,contentMethod:c,formatValuesMethod:u,mapChildrenField:d}=T,f=[],p={},v={};return Z.eachTree(s,(s,y,C,T,D,O)=>{let k=s._row||s,A=E(k);if(v[A])return;let j=D&&D._row?D._row:D,M=j?E(j):``;if(l||!j||p[M]&&e.isRowExpandByRow(j)){let s=d&&k[d]&&k[d].length,l={_row:k,_level:O.length-1,_hasChild:s,_expand:s&&e.isRowExpandByRow(k)};o.forEach((o,s)=>{let{field:f,editRender:p,cellRender:v,aggFunc:C,rowGroupNode:E}=o,D=``,O=p||v,A=o.exportMethod||w.exportMethod;if(!A&&O&&O.name){let e=ok.get(O.name);e&&(A=e.tableExportMethod||e.exportMethod)}if(A||=w.exportMethod,A)D=A({$table:e,row:k,column:o,options:a});else switch(o.type){case`seq`:{let e=T.map((e,t)=>t%2==0?Number(e)+1:`.`).join(``);D=h===`all`?e:m(e,k,y,o,s);break}case`checkbox`:D=g(e.isCheckedByCheckboxRow(k)),l._checkboxLabel=S.labelField?Z.get(k,S.labelField):``,l._checkboxDisabled=S.checkMethod&&!S.checkMethod({$table:e,row:k});break;case`radio`:D=g(e.isCheckedByRadioRow(k)),l._radioLabel=x.labelField?Z.get(k,x.labelField):``,l._radioDisabled=x.checkMethod&&!x.checkMethod({$table:e,row:k});break;default:if(f&&k.isAggregate){let a=k,s=a.aggData,l=s?s[f]:null,p=a.groupField,m=a.groupContent,h=d&&a[d]||[],g=a.childCount,_=b[p]||{},v={$table:e,groupField:p,groupColumn:_?_.column:null,column:o,groupValue:m,childList:h,childCount:g,aggValue:null,children:h,totalValue:g};if(t===`column`?f===a.groupField:E)D=m,c&&(D=`${c(v)}`),n&&(D=ik(`vxe.table.rowGroupContentTotal`,[D,r?r(v):g,g]));else if(e.getPivotTableAggregateCellAggValue){let t={$table:e,row:k,column:o};D=e.getPivotTableAggregateCellAggValue(t)}else(C===!0||i&&i.includes(f))&&(D=l?l.value:g,v.aggValue=D,u&&(D=u(v)))}else if(a.original)D=RE(k,o);else if(D=e.getCellLabel(k,o),o.type===`html`)sk.innerHTML=D,D=sk.innerText.trim();else{let t=e.getCellElement(k,o);t&&!NT(t,`is--progress`)&&(D=t.innerText.trim())}}l[o.id]=_(D)}),v[A]=!0,M&&(p[M]=!0),f.push(Object.assign(l,k))}},{children:d}),f}if(v){let t=C.children||C.childrenField,n=[],r={},i={};return Z.eachTree(s,(s,l,u,d,f,p)=>{let v=s._row||s,y=E(v);if(i[y])return;let b=f&&f._row?f._row:f,C=b?E(b):``;if(c||!b||r[C]&&e.isTreeExpandByRow(b)){let s=v[t]&&v[t].length,c={_row:v,_level:p.length-1,_hasChild:s,_expand:s&&e.isTreeExpandByRow(v)};o.forEach((t,n)=>{let r=``,i=t.editRender||t.cellRender,o=t.exportMethod||w.exportMethod;if(!o&&i&&i.name){let e=ok.get(i.name);e&&(o=e.tableExportMethod||e.exportMethod)}if(o||=w.exportMethod,o)r=o({$table:e,row:v,column:t,options:a});else switch(t.type){case`seq`:{let e=d.map((e,t)=>t%2==0?Number(e)+1:`.`).join(``);r=h===`all`?e:m(e,v,l,t,n);break}case`checkbox`:r=g(e.isCheckedByCheckboxRow(v)),c._checkboxLabel=S.labelField?Z.get(v,S.labelField):``,c._checkboxDisabled=S.checkMethod&&!S.checkMethod({$table:e,row:v});break;case`radio`:r=g(e.isCheckedByRadioRow(v)),c._radioLabel=x.labelField?Z.get(v,x.labelField):``,c._radioDisabled=x.checkMethod&&!x.checkMethod({$table:e,row:v});break;default:if(a.original)r=RE(v,t);else if(r=e.getCellLabel(v,t),t.type===`html`)sk.innerHTML=r,r=sk.innerText.trim();else{let n=e.getCellElement(v,t);n&&!NT(n,`is--progress`)&&(r=n.innerText.trim())}}c[t.id]=_(r)}),i[y]=!0,C&&(r[C]=!0),n.push(Object.assign(c,v))}},{children:t}),n}return s.map((t,n)=>{let r={_row:t};return o.forEach((i,o)=>{let s=``,c=i.editRender||i.cellRender,l=i.exportMethod||w.exportMethod;if(!l&&c&&c.name){let e=ok.get(c.name);e&&(l=e.tableExportMethod||e.exportMethod)}if(l)s=l({$table:e,row:t,column:i,options:a});else switch(i.type){case`seq`:{let e=n+1;s=h===`all`?e:m(e,t,n,i,o);break}case`checkbox`:s=g(e.isCheckedByCheckboxRow(t)),r._checkboxLabel=S.labelField?Z.get(t,S.labelField):``,r._checkboxDisabled=S.checkMethod&&!S.checkMethod({$table:e,row:t});break;case`radio`:s=g(e.isCheckedByRadioRow(t)),r._radioLabel=x.labelField?Z.get(t,x.labelField):``,r._radioDisabled=x.checkMethod&&!x.checkMethod({$table:e,row:t});break;default:if(a.original)s=RE(t,i);else if(s=e.getCellLabel(t,i),i.type===`html`)sk.innerHTML=s,s=sk.innerText.trim();else{let n=e.getCellElement(t,i);n&&!NT(n,`is--progress`)&&(s=n.innerText.trim())}}r[i.id]=_(s)}),r})},y=t=>{let n=e.xeGrid,r=e.xeGantt,{columns:i,dataFilterMethod:a}=t,o=t.data;return a&&(o=o.filter((t,i)=>a({$table:e,$grid:n,$gantt:r,row:t,$rowIndex:i}))),v(t,i,o)},b=(t,n,r)=>{let i=f.value,a=r.editRender||r.cellRender,o=r.footerExportMethod;if(!o&&a&&a.name){let e=ok.get(a.name);e&&(o=e.tableFooterExportMethod||e.footerExportMethod)}if(o||=i.footerExportMethod,o){let i=e.getVTColumnIndex(r);return o({$table:e,items:n,itemIndex:i,row:n,_columnIndex:i,column:r,options:t})}return e.getFooterCellLabel(n,r)},x=(e,t,r,i)=>{let a=ck;if(t.isHeader&&(a+=r.map(e=>_k(h(t,e))).join(`,`)+lk),i.forEach(e=>{a+=r.map(t=>_k(gk(t,e[t.id]))).join(`,`)+lk}),t.isFooter){let{footerTableData:i}=n;hk(e,t,i).forEach(e=>{a+=r.map(n=>_k(b(t,e,n))).join(`,`)+lk})}return a},S=(e,t,r,i)=>{let a=``;if(t.isHeader&&(a+=r.map(e=>_k(h(t,e))).join(` `)+lk),i.forEach(e=>{a+=r.map(t=>_k(e[t.id])).join(` `)+lk}),t.isFooter){let{footerTableData:i}=n;hk(e,t,i).forEach(e=>{a+=r.map(n=>_k(b(t,e,n))).join(` `)+lk})}return a},C=(e,t,r)=>{let i=e[t],a=Z.isUndefined(i)||Z.isNull(i)?r:i,o=a===`title`||a===!0||a===`tooltip`||a===`ellipsis`,{scrollXLoad:s,scrollYLoad:c}=n;return(s||c)&&!o&&(o=!0),o},w=e=>`${e.field||``}:${e.type||``}`,T=(a,o,s)=>{let{id:c,border:l,treeConfig:u,headerAlign:d,align:f,footerAlign:p,showOverflow:m,showHeaderOverflow:g}=t,{isAllSelected:_,isIndeterminate:v}=n,{mergeBodyCellMaps:y,mergeFooterCellMaps:x}=r,S=i.value,{print:T,widthMode:E,isHeader:D,isFooter:O,isColgroup:k,isMerge:A,colgroups:j,_columnConfs:M,original:N}=a,P=E===`auto`,ee=E===`scale`,F=!P&&!ee,I={};M&&M.forEach(e=>{WE(e)||(e.field||e.type)&&e.width&&(I[w(e)]=e.width)});let te={},ne={};if(T){let e=0;o.forEach(t=>{e+=t.renderWidth}),j&&j.forEach(t=>{t.forEach(t=>{if(!t.childNodes||!t.childNodes.length)return;let n=0,r=0;Z.eachTree([t],e=>{(!e.childNodes||!t.childNodes.length)&&r++;let i=ne[e.id];n+=i||0},{children:`childNodes`});let i=n-r;te[t.id]=i,ne[t.id]=Z.floor(i/e*180,2)})}),o.forEach(t=>{let n=t.renderWidth;t.width&&(te[t.id]=n),ne[t.id]=Z.floor(n/e*180,2)})}let re=e=>{let t=w(e),n=I[t];return n?`width:`+LT(n):P?``:ee?ne[e.id]?`width:`+ne[e.id]+`mm`:``:te[e.id]?`width:`+LT(te[e.id]):``},L=e=>{let t=w(e),n=I[t];return n?`width:`+LT(n):P||F?``:ee?ne[e.id]?`width:`+ne[e.id]+`mm`:``:te[e.id]?`width:`+LT(te[e.id]):``},ie=`check-all`,ae=[``,`${o.map(e=>``).join(``)}`];if(D&&(ae.push(``),k&&!N?j.forEach(e=>{ae.push(`${e.map(e=>{let t=e.headerAlign||e.align||d||f,n=C(e,`showHeaderOverflow`,g)?[`col--ellipsis`]:[],r=h(a,e);return t&&n.push(`col--${t}`),e.type===`checkbox`?``:``}).join(``)}`)}):ae.push(`${o.map(e=>{let t=e.headerAlign||e.align||d||f,n=C(e,`showHeaderOverflow`,g)?[`col--ellipsis`]:[],r=h(a,e);return t&&n.push(`col--${t}`),e.type===`checkbox`?``:``}).join(``)}`),ae.push(``)),s.length&&(ae.push(``),u?s.forEach(e=>{ae.push(``+o.map(t=>{let n=t.id,r=t.align||f,i=C(t,`showOverflow`,m)?[`col--ellipsis`]:[],a=e[n];if(r&&i.push(`col--${r}`),t.treeNode){let n=``;return e._hasChild&&(n=``),i.push(`vxe-table--tree-node`),t.type===`radio`?``:t.type===`checkbox`?``:``}return t.type===`radio`?``:t.type===`checkbox`?``:``}).join(``)+``)}):s.forEach(t=>{ae.push(``+o.map(n=>{let r=n.align||f,i=C(n,`showOverflow`,m)?[`col--ellipsis`]:[],a=t[n.id],o=1,s=1;if(A){let r=e.getVTRowIndex(t._row),i=e.getVTColumnIndex(n),a=y[`${r}:${i}`];if(a){let{rowspan:e,colspan:t}=a;if(!e||!t)return``;e>1&&(o=e),t>1&&(s=t)}}return r&&i.push(`col--${r}`),n.type===`radio`?``:n.type===`checkbox`?``:``}).join(``)+``)}),ae.push(``)),O){let{footerTableData:t}=n,r=hk(e,a,t);r.length&&(ae.push(``),r.forEach((t,n)=>{ae.push(`${o.map(r=>{let i=r.footerAlign||r.align||p||f,o=C(r,`showOverflow`,m)?[`col--ellipsis`]:[],s=b(a,t,r),c=1,l=1;if(A){let t=n,i=e.getVTColumnIndex(r),a=x[`${t}:${i}`];if(a){let{rowspan:e,colspan:t}=a;if(!e||!t)return``;e>1&&(c=e),t>1&&(l=t)}}return i&&o.push(`col--${i}`),``}).join(``)}`)}),ae.push(``))}let R=!_&&v?` + @@ -20,14 +20,14 @@ - + - + - + - + @@ -37,20 +37,20 @@ - + - + - + - + diff --git a/TempLate/Help/GIT b/TempLate/Help/GIT deleted file mode 100644 index f1c1f89a..00000000 --- a/TempLate/Help/GIT +++ /dev/null @@ -1,13 +0,0 @@ -git init -git add . -git commit -m "XXX" -git remote add origin https://github.com/XXX -git push -u origin master - -git branch -m main master - -git remote remove origin -git remote add origin [新的仓库地址] - -git pull --rebase origin master # (或 main) -git push -u origin master # (或 main) \ No newline at end of file diff --git a/TempLate/assets/config/Megas.js b/TempLate/assets/config/Megas.js index 45e9c31c..fce878d6 100644 --- a/TempLate/assets/config/Megas.js +++ b/TempLate/assets/config/Megas.js @@ -40,7 +40,6 @@ const MenuData1 = { title: "相关页面", items: [ { name: "工作室 API", description: "竭尽全力为您提供我们最好的应用程序编程接口", link: "https://api.gvsds.com", target: "_blank" }, - { name: "历史页面托管", description: "为您托管曾经发生过的一切", link: "https://history.gvsds.com", target: "_blank" }, { name: "南京大屠杀", description: "谨以此页,悼念所有南京大屠杀死难者,缅怀为民族解放献身的先烈。历史不容篡改,真相不容否认。", link: "https://nanjingmassacre.gvsds.com", target: "_blank" } ] }, diff --git a/TempLate/gdrive/VDISK/2c13a0b94f83316387885f859971f750 b/TempLate/gdrive/VDISK/2c13a0b94f83316387885f859971f750 deleted file mode 100644 index f8c4685d6bf7722a381e9f27e8138e30102dfa16..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 108944 zcmeFa4}4X{nKynyE^vVhx!6RbqDBR!iu^I)f`Jy5AXWoOAc+(K5kfC10)=~9bU|?g zmFwXuU2RLde70EWF72{iT4;@xYLFCSn`#!Rrj@p7o7xkJZ4eftrQY}Zoo8n5xycP^ zx1asIzu&v)WX{Z)dFJ^y&ph+z%q{ukRwvtWoB%>H={R+W`ERQFd-gwFcs=B@9}IE! z4fyHhby;`(^zu28WorsntzP-5)r;;eSiES(ij~oVd#Vdo$5s?9TTw7=*6f0NS1zd@ zJ$UfI;Tm-8@Xg;F_b;Q~FyZUozBk4qeNEAKb^Q4^rXW4>SI@susPgx`F;SJj?v3B6 z^uupVR`Jui{C8AbzHD)XFngn*wAgX($m;71&c1M|DbwooxqML8K*wo7&Q{62<=+v9 z5n5F`te*QgPG2WWWtiC6iZqz`%iH=meVnOCpc3oZSds^Mt4lI1Mn>(VS| zpMYY@aqi4=ww58jJIk4TsmeL)pUrP|lU1wZOr$`2`8PURy*7$>eP6&I;zwG6xBp)O zS|7c7$)e~Y$9Zod-n1gzjnIhT`!^L$kCtLiDPfRo@WvVGCrIH}KYI0=)r;{;(F&SX zxodiqn>u=R_41V{`1Na07(8%BAs*GE+|9`S-+zAt4pg`uWo~iUEeTb+v0!OgLAMF;s@(O#P03jQ!uo~tUkEsr&pB^^sMls6&raOtJaW;Em&PvI_tcIxCd1I=SHgPiJimAq7Pbs z$fg&gpP08GaZ^x$G*?<>?KPpWWpIY)1^V}2hSZ88p5L&>F zm(1Grn=8Ow*_3qqO8UyJhYp&pDiVi$Selj2WpM=&#o-02~A>f}xJIgkDZ zirN$9-bn25CjRBakl5j^%~-xS5<9#ZC|{FIlypSqK!9b*ye$-4XQHCB+zMy!|=#3Zpdt(Us zrHPp#Zv#w%J3UC8dX||PEQ3k$?owp}8r7b~Dg))PG~SQ?3{WYnve23p;184FO+Z&U zT^!7c4yg2g_XWqPZ3tkP>e=0z+yjT5<>0E(m%~~9l(LtE1DJ>V@eKj~<5>Vo`-l7O zLD^(pDHw0ixGQ5V;rCm9e)lv-VsAO>W`oz-G|nWm`GThMm~VntX4?R*XNL5GM_qcp;lkM@QB;?n}wMb=31)F?<9Q zRUwhVq3O9!e0nfGGZe23AMaCmT5DGPb76N@*v)cFM(0i#~f+4LE7 zqDY6IE>*dtvrLhrbn&%bDsTKp&;tJ{;;H%_njC@VfgH{UBopL-lti%yE`fr+$vh#) zLjq%zQt6V86ght-MnXKgP_N`XPI8tEcOtE6^awc8)89`|aYrddr05Cy z>FJ+=p1%?$MNgu*4O~m+O@;!9k_}LJOjQceW|@|z-+sqK^n2z$+y84jax>|7;ps@1 zur3}u6OU_kbcXy!iY4KgleC-e3ojhFHH9rAv+N_(44 zM^Ig87c!rRg-^OKT?8DTLs2PWo$-J`Pk` zX;=w;C?1F=T7ASsJH$C@(fiTx*4jS?*uQB6i{6QySO^~`s3tzTlHmIppS&{lUNvJ& z=COzR6<5+)X_<)ZLLWDS%4U;+D#<)w3Kos2G#<)y=AhP}!QZ#~Q`<2<6Gn%Nk0}MZ zUW=x{wZ7@-dD6b?+Fx6n6p8;dyL2HrhLUO4aTpBOwK+$C0G*VL1;bOey<5D;L zJW*d-bbhq&^TYliAm2>B!qNAQ3?Saj1Om06Ba~?0=LjNETwm%Pdk38}1##&Tr!^=@ERKxGv-l_IO3cO|kCCAnp#iHc?x>hC>?4odrYlm&ub9~7u< zmI1n;-+s#VR@@ zc!J4#*7+5V6F=B+5f>EbWh#^epG$DzKV7a0L($ck5L8(NcfTa%b zXulft)HwVvQQQhMm&_afJ0+{TI8F2-1whR=P3)llK_AjkgR)2?9r99I@eiZ^7Qct- zok(Bf0G6fkHO+-Ke1(k?`Hrgd*@GFG>;aZ><_F8%rg-)K*)o8ZCH_9ZbbXbUyve>L z$m|C4+l;mS+|rOZ2L`DlRbo4u%8;XGs8_tpuEbGrH)=u{6n3Jd2?^Uhb|>?4MbI0+ z0YOLFz{o^J!|ZZz4r*6H@fz7|KksK;(``Q41UmIu=9c5+i(RlSf zg;u%uMO8nPnAzpM2kk^R`!to%$S4pwYLprsQIwiy8sJ1uY!z4sRjZ^26G5s5m|!@d z`gNMR+a;$+Bk3wRrk(QrDn)U_(yHmpgb)E&w8AT|*E9}JzKR;~MA}42ha_KhCxlh| z^{5%H%WB0ffP57Ft_=l0l6=j*Bwsb!Ebw!auh31Y zJ;1fKJmcmyBav%bpaJ{{+ik&vX=cu**WIqaAV!&VOZ}c+FvMs8uW(^r= zCyMuhj!sl8039WD0`YQ12Qse!t1KyX$hh1<-KVO6O=O+{zp*FyIt~6xg5M|LhhqpG zh{-h-dqgrX3>9-Lf_NRjIfSg?rVTcDCF$|Eu`aER;%30F19M2iRTRZO5yjQMHb&|; zN`mp5!e|CXulBcbRrfYlrM02hWa#*)kB)16ZCsm92gj;w{B3-+dmE9oHqz)A<)h;| zUmK%+bPN+ZuJgAss(TxEr?rtr#~4KiupA4S_}UnkPDcSt_}duMy^TB5+DN10dLJEy zrsoX@L@ejZ1dF05^n<^?8+Z}ydCX;x9>|9eYNpag4{N6A;>!5(n1B4p&*UGRNE8R5 zUu|}*&_lT(lNGP-=suFiWh5^NMLNM3-*6e;+lQ{0vBglsV40o2a?FGj^w=5p4bbcl z)&U|1dKoFxOtOrWA%|vF8RX&UVG&OWiUt%8M1eBvaCB#&=|pkI-oBvom}+CwVLH>C%n0miDR-CUl0F_b2_~MMpQ7Uallaiwy~7%2VZn_MSS1~5&=pv!R}pRNW%Ld!-@<|qk%7jLp%Jfz zUp`pyf)f>9yqbeo{b5Jeou?`#;c!3rQ1MCV_he+yD}DhobtiBw!kxl7Fob1MRI{8-h&E*pNYyqpK*; z)PB%Rr~detbS8apDtZ@f*m$K&wAk7XCW?=N2*=X z3ZiRFoPRRchhT&wG_%nj7Mq z#Ok%Sls{7R1K)TT>bZW)xu^G}hee^O;4ehf!D%SC?|6fbvyTFCQmO|Owg17rBQC(m zcn$&Ip_D>~YZR0<7w!b5R4#2$R;!rM|FYTcg_TwA-%pH}oN-TXO0FH_MxPB7jf)P) zevC^uX(krc81#R_?1dKdITV>*zS649VR zR1$*Y2jdS!@j>{*Mfv|x{-p5wko@WV5d4As+@V$O{SaT5`vUZ5CX{COvr2d^m5K3n zu$k_(9|YVBiw;6?B_Ve}9NHr1oglVJGrHCffwZz;a+}>iR?)%On{G*0{Cq5B&$^FF zG+<%Tf#^V-_j1oGD(za|$32jekl63f`1@DJ^BVDL?ghB(!_Q_zi+~aKq>5sp=&kWs z7#%BsP2mAmTp6QFS$imeK3{t{aQx?PtbK*+ZjM?2{%o@24p6%WAhFZ_AXyWo>z`Gtvy_l^Qy!(24 zeot$CjLX|c_x4lE+k;W4wqbm!`!eca#1R{QR9R$kP`H3#o$e+=Hr@&cXY1NGvDs5o;HS+xx#g)$a?@TEWe(BB`1_gua|T z&TxxdvEC6~C97^}6Jsi(R<}y!g6Z86`Xdm7VXC}SOsxpRbLy-t^`8DMvF;>Q@RycA z8!+O-)0@nFTr7IpjRx7o8KgW;oGS<0xzC_Vh)YN>3n0YZ?39*8=0pSN{k1zWYJ|i- zjL2`~exE%X)>D3I+b^^JX4@}f_Pg)CXx~q5zFcIP0`@JFjTbK0VBqa#<0Z9P1H+NN zT0=Dl%VY(e%rx$o>L_47+1!2`+$**8U4r#$-*OC<1DaBRGBp8u$Q)fdl@E#@M{&vK z%QonyZ#Ajg=1U4a=wmv1lqmF4(4%*lrkB7~W=2$BjVpkqxr6EcYidxnz16JOJpDtT zyfg2|yc-$b4pmgEY7O*W)qn-#f{tZ2QGioW>1zXUvUYm6Y@&!q&uPa$qbfz$6bS*O z5nYSkOaYa8V`{dVQ-THL3;c9pf$*a#)q)^K>2Og4({4j|18>RpN`R&1aXN$ffnCx2*KYsbN8Qs8g~kp*p3g zj=J|MEF>t!Ac_&8yvcCAgN>^pxQW=J+SQ82R0Ub<&=u%az$Aeb79E*hG*KMJl6i&N zXx;~d#Yu!)(wHdTU+N8Phqpl?epD9N&=|PS5(%}fcdf89(x3!mTZ5Idt#Q{#Z9JQ@ zVx&x293g?l(zIV^7IkO=$7oSicu+3xb72ctj8q*NZZ?^%=`Q!S|AL-oBRZxx6noAX zMepY@wJ)*<=$T=vD^XEL?`mu}12xWc$2xf_{c)cU5w+BGE!$3+TqAg7Qt#B#Xh(Yy zraHhE86TuLihY1yZq42Ik0g_6gP%2b;@=E?-Z$P&%rswfe~v8@CGY*I!*vuY#1>M= z5Xc}{UCG1NiaCRTK~SkjwmO5*T&7ky9qhEo&>5MG0f^Q=+uQMTxUM`>fC-U0I27>y z(n7AN6F_Pj)z|xbJK>lj z1uKb=3bW0sEBBqSHme+5YLYue_VkY?UrRqFpfr+tr|`n=zX&s|wLN`@e?kYlgF14^ z(V0C=R><*SYK&C_vo>7dvf}7|a``;nor;epZtp6Mm+bexgc%fYG_cgBKMf^HrmU3# zoPGiTL$%mJB9W^!HH8FFL(AObXfqv&gv&m^v8l?6cIxhkaf7S`E`Xv>3q)iyT`#G+ z6}j#u5xRo|(QBp$T?`Gx>eW5CJ2xdoS>0(4P#Ko_gMrHcS8 z6Cl|fw}6JF01fL7NF7Fy5lOSukC7Zk(0~#Z1zKlF%B3X5UsiU@O`|2lYX*YF^_1&n zx>2QXtXp8%pid>F1ClLq3ut5t5Dq;kep*0kxFPnJXJUiwdmHRaMrn}~19fJ>hdsAR z!AywBDnvbuHTLtcA%@*B_EnxCDfM1CO2fLJhPCc(HJ+)#G)&V@RU6C)x&;IIz`l&B zhxl*JNH_-3QSel*_IWA=czKn18Af7+NraHVNGJ-Q?)ayz18dti(zjlS@8|Y=n9L|0EBuBwsZ&Yfh0z85DX5`O-V)gY ztV;#!cyTiwG5~=c)h?(DxvGI3)>OPuB8c~bEjzq!F|tnCu2ySjp)=GbEZc~+Zbd>{ z*ho~B)n~25imDSqD1r$9jR_pJW(^^S%UR8)OIa&xV95rMHcSRG0KxPr$DI}uea#HK z3OY$u+e8i8_?(BcRy<$=`W3k!VVg(UCWjJrfP-C08ElT%+OCSpGnj}I+$`-zbPq$} zT%D8Js)EH-j%U%+m{^JVoSgnXu(k;a}Qg^e>-YEaQ;Q)7Dp z(bh1fV-REO+*5$SNZzp98T6Mcp=gt!8OirJw53o}mW3`D#fno~6jQvoo?Tx?6Xp*C zBWWut8U)2l$jAnRk#g;c4Qw^=H`Ri>#@~hLz7ZT|6De>g(G#4gy~YkTMrqZzW24MbWxTqMJ&*>aRn&Vl z)AW~)NqP*`{TP*-=590}*ekB%0|^?H0Rx`0QR^4BGWi2`#NTc4D$sHkM4S`V-%joxAT~9Z>oP_6b_)se$nho_ho$7iP4a!z+`(n zdcOPebSYcZx$c(>7hGSD@6&_M!UcP>)Pn(z81QkJ4BxERuAPj}W7M8-^lEIP;iDPv z<5)E*>KDz&Vs>r)8MVN82m6}c&%}-w79BYaw|PF;e3bdlzyo%?&-^`;+pjPgU*9=t z?d0g4y7Avihk#QLzUh zm)78beF=KgaRwST^hyEuO4zq%;*B2`@5Kuo);gA6X<-- z<@0?1rz;AM=;xFdY=5imD9GqvL;gRH&p+l4;`!;Df^nR9Ebb@@ub*Fo(QF+gvavo| zhPO9iQ#+W*otlV#Azak8{$sU&gaWsHsM|KOlQV*DcG244x)%U&eW>WZKrF;&n$cC! z%)&(I!9;F?xBJutph|aA7x7JX5Z~7HOXkf%G9L3%iNy3E4uib}d=FDkG2li~q;_T~ z3t#rf9|)k4vQX`B`_#5(4Qj?k5pHpZ>mW1cp+9EVXV)j@1jC7SW5b{u;()sIEJ0Cl zeKwa|oOp37RMstSos_k{(tW4)FbHmmug71GB7M;rCb{p`zJPDyUW!*>ia zq1B{m=rAXsy-Ix`2VZ|PGTf3@m6!1YIn{Wr>V3yby>VCpQ{8S4?r#Ef@L9S$2+ZJd zo}!nc@QSwsASPJ@-9cDI^0H7qUYKTkR1fzbccZ=kfcpE$d7FFH-@9M%>2JpG+iAaW z4S@$bsV!aVybcaVlWQB9(*o(t=jkNT5LF5)19_=OtfiK;RV8x2P>x~EJ0IHx>bp@H zQ#KHQuP{!NN5-N8q+7f}ys><(vi7G$Q?6RyH?cN@8X9pAO+}y-nkLMQsI+|1a zrvQg&IzL6fj-7x8z&zbWg~c5Zz*eDy76O|yu@-W%h0sw0Th%DcI>dXyAs{gX0|Vhf zqX3c;ji2uwo26umi)Zx968mz9_dH%|t0VSegP-4_-t0w+-{^WgxJAsiuw}(;b|hi8 z@Xzfs#C4Qa5!*e-GO_GhcXr6VC76glo|{-#n~SeZbNq*3-jAKY2Uvz*Jx;;k^cOgk zVnHy)f}hU>l|tY1Df-GXQK!B~B}JGjfF7}Kq{UmlA0D8(+9Jyo$QvH|gd0N1ItxSAy2f6K`r zcVcmA`%17bau(HT{s8$E+74h0c>*lRfFVhoFTwt;#p}ZfH z2$64+NE50)+$SCCL-Q*n{NmQZ+4!~Z)c>FPwZ*Sr!OZ&A0WERd(tz-b69C1pD@DJC zDg8R%>euj-t2%%h7VLDR^Q_`s`ph%_}eMX^k?!>#&u&QH6OLf`T zD?k93eThCyXz=x)+}>_5a)+dxqS$!1pF1O%D9b7;4Lo>tB6M5gj?H0wZVtMGAZpW# zIU9dThF}TBJN(0BvYlJoaMh|X{nb7RuZ8e^fn?nhH8}@`$}Jh`lq&=mbCc#Q;ZWXs!&d5MF7A8Q*MR zw#Kri7pf0J`vX_gt=PxVBc;Q&0tGQhOuIKE;gk5S5+`J-$qu@l;=kqnxY( zE^ge3K8zvwvD~6x+3}^XRii?Zl~?+atES)z9=n}8!MD&W@uBeN7F}R!^0B6R5cu^WN>AjhI zrnEbt^>x(;qM!bNrN0GB2%7%+r2lr%Kg7K+5T9RH^fAzXYp11uw!NamyM**V*pvR> z?=ke>3i=m={vm$)2fF9OKlYwSsW=W?+dD&KUCmFE^uMisdNS^}(w}_SM@)YoF|!mg zITYsn{Y8HlElLSUwvle&KD%t!u==m`HmnPwZ_20Ms{5jkFp~G);qjPGqBCtLWLbakW-|=F* zbWlty)dzkImrVHCs~FGjn#Ye3DmvUg$r&NVp~`7o!46{DA=RKMavzd1y}W}%JfHa*|^a1yw;z+tX7W4VonMsAw`E<*7(|lr1s0XDRs@x)X zR>-XiCZ>HkHxYd-H(nepIus52UF}#f)~Riy8#{vzurOYDdU`l3HprbGz?V|q%N*0( zgKE~NtuXX)_9MJ6^Tg?ceWIh>>1V1U&7Z_b@W7eUn&Fk+bGJCo>4UiUuF9K*M*wvX zqnFZ(dkzK_^{&!;`DS^COP;I=P@f5ra(Zs~9gTt^Y{x1SaOIKm67o>A2036i(DkMs>q=#>&Mc&Obx47Tu`Ic^X!R9N$S&@c~)!u2Sy+tgT^j8bdR)ms>u& z=;3zeZ23OEOH7pPL9g$txGlzFHv|QvC5c^WCZUJlVQ%#jdk{Nh?QbvZ$?7;tr+k>r zg%r%H@lh?P!E^*I0SgE{HH+68ls4Jdv~u$fw$`UkZD}b_QZj7^Ig`-{cZ=6hlVTxv z${u9wHQ#?3plKj_0f>{<#CoD&E!?c_D#&^CPr%-sapl(%LI+oBVe%!xjdhrNCUlcr zEQSI0(SdzVUkWEMn1aHqvnJ{k^lRW7>%pW?RmvT-r$yBl%P)DmPrxxwvX@}{oHM|}A*&96MCBp5kL6>iP_UVU-Nr#`%k?F1EZSBa z(k$QjHKk@A;0!T9=_i?^1m-gaX^t~j8H4!UKyL~s`qu8(w_%y=Q%`+^P(|M`jZf1z z5^eR3aG1jC1uZVRhpBp zaYXWbBNCSgt$c~2malsWsg$EG*~wREBfd&0T|y~|eE3OubMh5+DJ%}b2I(FKysm$j z4=L1fIS7pe*Huz}$8pM(#;@}@ z+#pIH)@rQ6f-VNknlP^!w%UkbHAEn&f?9RQ1wXNG(RW>cK;zZ?RHPn|`X~7U zoe^1Rr4d;{Q$w!zfjp_#a&$%S7RiBd7yzHf??YAC2cO2*rKR>uN=`Km7B=##8g6Dy zpsCbqw=b<$W*E3(iDyyp`O1FM!Gjrf#GVhRKOWGq-82HZHi4@Kfq{MlLxek;UiSXA zgKFGDWTG2{s2s!EI?!XS5sA}^?M|TC(X3*F!bUt$$JHnPT6aW5TB{^M6K6HQ*=YW& zy%{m9?Pk9I<;HXByS^}pR+3W~^X)y+;Dkl7CTG)5yvlgwF}ydsmm`lbXX(eE!pd-^ zjywXqqEZb*82{=NpEUg*hJbGVar$H;(=m74A7qbAHkW%7zh#b0QXUvGgQ|sQBlG+ZR0_tBXXJ2B&?Rs?AWK~l9*>|! zGeTUWGO(Su>hpSCIa@ANk|uf>1-7FBjEUp0Cgjctxuw|G*o=Mht+{TC|2}3y;eE`h zt#a_vj8p2QYA<6Iq_eGB&^xbs7^c_JLiZ({=)J01Os zx?-2}K-g^c?EzkF!ly)7;#{~Op5-1;>w_Vj@`8-`gE<>P1C$^>(H?tE4Up$(|K2~O zwLg=a)|uM>S*G^qhi4~dozfogE!Yg>&-f6T+Jiy7$%vW4hdVy*yKau+M|?eMS(d!) z-H&T@u%b6(a=he}J7Xg56zSab;@Tp0A4wwCa4jycc_dKOiG3L?czhiC?5;mE>4C2G zIf=<`_WSOuZgfgRQD>~(UEg(Ed`_bAzL!yWJXU|*K1I{J)?MS~V59M~0qpER++9VL zUF-B(Aq84pY$VW@w@H4|u)I67&cx;zA{7@D#t?EfHxI04;m7IY4_)OLc-oee^jp z9gddjprZY>;~KC#LHPsfDuQkF%(mej`kV0w9!9t4neStfW;T=Z2U_;_%is^d`iVav z&557G<^WQ)jUmQ-V-X~PzNgc*p{D({ZutICnzffqyK)w}&SeI-hE(DG-aVNO?S9FCLrZsk(& zq~cg)3vd8E$~)+U|FAcwRIzz0_1ydbPuNnY-lce=J>~Z8@HsVc7(r=6^#HAIH01Xo zq)B~(!C?pAMU$10jfx#G?aJz^57|3_B!@pWTDRgs5727ifP-@CJN!Jg_QzXxBkL5P z7R^`TGG&HO(8Qqg(+u7>OLL0xAs3Z6c~G*$$V|tGpVD()!6Nu>LWnOa5mm4b4|Zs$Ta?dSjgge~IUiUdwPXAq&`%8T0d*Uw z)%alf) z+Q8B6KgrkJ3(wh93?Ubu##v(C8R!n?i}Yb;;4{qgu2eUxKzl0oluJ(5_hD#Ng`xwo z3lqgB;gDgqqcM&Ro>Z*Ce8_#3`w>M8^(PNH#K9|;6C0y!3eo=rGodp5!I^m4D~9u47=b2YL1 zRYN0&*TUEBO3+#)F)Dj7hh}-a8S3HYk(ur%Cgwan(R~}^(#`I)M*~GK;FrzhKCDS= zyVehMJKbrUksCX4+kL;r%S(#ZcCE{=DVPnXK@KPzm`#LP61+v)Eoxbp;gDk5c?=nU zw)pich?UDIqBJT^>9>jMJK&peEKG4;I(&M*=It!uT=1T~QEaen( zn}7};wiY%%2qB}e^{m$6Ye{%&KQY4*`xvx}3q#uiydvS_v;wVI|50|WWJnqBv&N=^zQ!D*%~6!YIT3Gm zDGi z7Z_MB-ob|R5_PoGhLpa29L|3$Va{*GS)4BIDIT*%r9ZaIH{gh{Ismn49ZWJe&`0A~ zk2^@L35P3O>-9yx!`HkxUybkJj%UZ$o^huf17um(>Z?9_63k@W;oxcoznfGiUz?sR zY0KFZ1|(=(ZT&!O?$>q|<~({*4JJ(}1a|ILGmX?TyeNLRvoqM2&!8_~Z}N>7OET$; zd!n!&=OyCBXRrXOmIO<^9bcyAViOn>rmdJ6-NByKzi&Z#_*;Xrmnhi+a2o+aiUuG&yxjs2d+(@0rFfQe zO$fCG--bv@yy%a-(>TJAQ~SHWP-*yz90ItYI;0@`bI6gkt(|g_f;VrQ>7Jb^ip3~d z2il2*-f7X_v_XBSS`aQ_s4xAvn#)=t3Yk)}3zt~b#V~`nat(lciQIy)2W!>xB`fTl zG9YSsf<71F=DrEsu@q8=YpYw$9!~e9MlnAm+D>ky$Tw1fPQtd(|9 z9S)z8h`I|!-C%)CdmDkhPlt9}Lw2XMl2i;zBJ5U*k0O@UvIY%MeUfax{l(1$N`KV1 z(U)sQrG zB{ch`Ja*V?1_JACT;UvH4Kh5e{d&ToeqMpzE#8Xq(L*=DWa+L>fZ@V)UO+?kUTr*h zQ&2v8-KVkSr#fmUf@MdtEFFAPR=#P4A}C?r%FP_Q^el@XVqn3PnkZ2}ffBI$BFZOt zNPuN=B}B6LD83zP|7T@`JLUIQhKccLDJ%D`c${qA%Fj&uV^}~PT$^!>E0y1XObDkL zdAWvg4)LbfDWx64BAj3i;sZGzH1h$DWOn?_hjF`(5H$yL@p6<&gps(`Btl4BV-gra zeN%}{i-P%oV5J#bMt-$IDfAfbz!3uI$%#*cJSq2J*4m!h*PVNsNWeG*kPR1QAH)?L&(wM{@?Z zWh%<5BQvm3yzja#=W7S09J|rR*K;=J0yB5YMx-L!lnrYYm8VyQ4aj2N(?ekJbHqCf zzVq{oU)08NyK-uTqbrYx+O9r1 zTM7ZH2D++OcwuHav;Zlk;n-%;FJRf#n4{*=dPfr-69|WdLDH+S*21-S^hxw#z8!+= zbmSLJ^elo7ye^{gtPc~h79!5-(Z|(E(`F~@ryr3$9)Ok5P;+SESh_l zdi>7uM*R#vpW0H?W4YcQ-L1D#i+7_u7NfaF+*t1YMIAq*{lS1N7LHijj=mcS?M4W4 z;D8jPkx4NTiGa5U_a-R4!0muaV?Lx#YZWBP z&((uf_|fC7IBkHBB)u8&WRgD=*v++6ex}Svu6fDVA2Xk~FKH%JZ!!->H7SK{vkI%| z9aM&c0kiOx=9x5&y|R&dTl<^s4;^S^A1%QwFm-l;ymT+wLKTCn-WF*9j5WeJue+0_eWesRORcX62HE$#+ekg6eY8ppP20Pm#`vJ7fLaZ2sF&NLi}~(C_3D5)cndb#POYX zZ&pVN{W&gF4r>6n71Z8`FWLed66FXerQ?zArjaC>-;U02zP zWbDKz?t25deX*{>>%{r!t~$e?dzMB&om}#jcix|!n06yn3=0_6_mP`%Xm_!U&C3@g%7zMReM!%gBRe2m+$W<}kd=+^6juj=Vw=xU z5w2~7Z`G*2T`mAzG)X%JlROM5nVVR1CXm>?8cxMd)4#Juo5lxbly5Y#b;!X^_vTd2 z{{C|2rpst-?JzO1cDT;BbwP?W--M$Ol~AF_OD5dn zwy8MwUsQZFXG=nv)niacOwje(Y$jiYA5x1w-2Jl89!4_Gx8K!wSo4dw1))f!18x39 ze*T0$x({8VB;o9J=vlqF zEM^-zR%RCBe#KoIC! zqRGdQfbYYEp2KT*$@TqMVl(Uzp$$#_SYngR+RrmT*%riWY!=ZS6@z2D7oFW6cQDGt zSI^otX`IYp7Nn+Q>gq!t86#0R1|m1xa(fEP4nzgZ1wuUyh1#=Wb-R;8_fAi~WeNx% zVwBoKX*T;rc_W#I-Bj>~Vfg`RwN|OFo4N!)E#apJ1%zXyM;+dvGlxASS@!J&u4qGW z>ckst1f2mh*hS;8=UWpcTfD~4!>5tSEct~gz9N?Av5NP=jCUX}O zJ$_hG=FCk7HpZOd9U3-&Sh0kQVOImbg8c*%BMofz#;|Y)-l!RW6CS_?;;kIzE#=<6 z1{&yXG8kZB+OFY$)NZqpOPIZSO4YU_p?)`UTMCr0>{9QWpChPFD~OG2WrmKDYVVIT zZS~V!@AD4=yE+9CYdR>~*E{);pr-nn8R3;blsW=2 z6{>+>bc^hinw@)t>Zdd6q$-f{0BV3j#^*l}7Y$G!eNa0hyI79h3wAsg*Wa z_SfKWN49}TbYg>#Nv5t76WFy|fVDc^I6WBP|6b0WQ z3)(Ua1$b)46GjMS(i42E-e{|?>&r+cfYqR}S+!&gd&vgW!H^@(@FMq$Z5(=$iy;AR z5Xs@jwA1olX-vDWDGfB)&JbCr8i0SLM!W>~!cYxE58J@gRWS9~axdAc#!Y{qfB#21$XA?o)v-fWyO z!+{)CMsrPrk=8mbQEKT$^XLiUjXKxbVT!3yW|-nwcr8cBdS7jF(XMck-0KV%DZ}pC z#13*;O)v;q-BL>J!w*j9lhEi@(DD z-%lUst?u?80{<)R|5Slx?7skletZD?AGY=%SLeekfc?J@*cB*<*8czf2elzlzw*EKAGgKep!lKbxsLY)*nxS?W3QT2C~`nz2Hji|p%)Ze?+-@DY`JJsJg_*;`3sXq@#0k>gE zDLLVeX*kF>VLVnAldobWt+p!}3ngQid~ZS4+~Z4Xg5Dw&oLgIs4GL9Sl}k>Tfr@-= zP4GY}_6AT3pQ_VPkB+E}?D!76=+B)=-cS>&@;HOSyR2ycN)ML~C+Ff8-Q&4lUC?A#c{l@!?86JW zdy*WnibRZvs=sU1-*xy4zO|BXcLPbqjgs)%8?j_@Z3(W^4kjydkH3Xm2YCqz{&&C_ z+->>L#KmjwZH?l-$74W(v>xfkAmK&zOg=(^B=|G zEF3Z-@6pb4t^j3i`m;%E$(k zgOd(&=DM9&`J=p)aFkr|Nk-qo`l$;J)?Vd!Lx5*w@_*pe>8H`e;lS{Ld|rs>xrOx$ zL`r34vkU7ht0onPV%JaV8^Q^W2d-T5WIh`i%#?d)fXKTOMxvePr$Y4YZ{lTPeS1By z$5wAv&ZfP1TH+37C3kK>ipKF_n<{>MD1L49f{5OWpcI_hRmoR3)yMvD96xp$A`hON z47fFY7U15P0X3I-K`c5RpA?w`e?M{u{v7Vh_bllB0VK_xi&Kl6FpMT6GgxFI{&v zg)Vksql1C$JT~0E2Nk<_#Sjly)~XlM)o}e|F*;N@K0k=x!Y!H~T0OJ2$iWRdc}s|9 zcCh8S(67MVINZ(p~uuUsHBXD!~z(NyWkF)3{$a4)w)7sV&F9MP13;23T_i zf>H^k9EJ5yku{Tw&%}bInlI23d=c>?R!eHakpimjt>7`f=Xe{ZN%0aLq3}ig7IAz+ zCps)ntQDPzg(oSkh~XaGwswBYjc+pg*1q2-Hu}kRaPF{y6RfJ7oouEdf)eL!d>mzv z<2?q~8<}Lu2Ay>sB*Aj;XT^p?9SW*SXL}bSuL>ICEkt<*5~AwIoMbaL4bfC~>=wfN zINqaD_T|!0RN6=35vKj)7xO;bAb;ex6_@irgURt+n5Js4wz^Gqf7A2ChP8Q*0!9us3PPwu?umTDLG;TxSbraQT^SFzh?a>^7DVk(ob>% zU}EoUcsRa%csPM@ZL3)V8drR#@JFTbYA+eXt*mD>Hjprm_bz#g^>Al$=aTqfKF(bz zAFq@d+nO>Bk+1GTC!kIB{s~ytHssHjLJxI}MEa@xn<2cxx%`_K=HE*~{5v7Yzf%JE zyL3z5SQQN(uA)mE74LjF^unBLTi z{fWbUBPg2XWI0drMeRbagJ|lL6s*P)#EWdVo?WdeClo# zs>$+R#>{^%&pG5HGqM3HhAlEY)=psoCx+u#-oLR-gs|}|k9dcro8gFF#CWrnwZ^mC z|04^5FO_xqC!Fwe{8Qz26&+fW@q2e@|zvwvRn=hXvmuB{(g^y+G_ zupZix2ChlLt9d^%1N~Zb@k#0tu5ZE}SXGMkxws@#aQ%>TrDM|4uWmkk$(9*ID($;|EnYEIjhiBv{INMLBz+E?!vQ zvqEyj-H=;y#9iv|9qR8i{7rSp^J=Hi+&HlT%7TaS5(Y~x{Hjjd5mpq|R(GkMKD+Aq znQu&e_F44dWYOX1;7tdk1Kw$Vib{998h76CSI8%`f!LYC7_6^DcvuAq=s2ii9=pdD z1Np2l!-G2G6R6$qyc(atRu(Lr_u@f# zIx|o?IighkoumHViNDk!a3MKD))G2#bGd$=Gd!5MIplugRAHmna5|Z+n+T0;--jo9 z5xP8%hj%aEiSkdd{BoAxsLB&;`=+~D6_3I8Pb|`pq4tmS(X`cpx_7efF4moaC*p^- zRcVhq0wcKeX)AcBa5XC&V}%Q(f@&nto|kIx7v?e4{xTm;d&Jel@_$|a+o;}xr{4LY zFgJ9AickhVZ6~a|2y2Um^}*rgXMlGH;q4&2$$ofH2Ja?hz^M2sxs;`wSbB)BH2J6H zi^UGZNIyqqam?n}GPYLFS8d&pZ3QF0hN}qcI@$bVcp~BYU#9k3lOuLR{m?(reRDQ) zpsB6yc;BklL5r&;@fg}DVjD|NqK#`)ZJb?yDdPaE)w9|uOol8z7BtJW;!Rx#%QWN3 z;LaE)OngXorXi_WV*|d1x>Xjpm`rJT#k!qvoMS9xx^GapqVWXCPsZ5;nN)2X5wvkKJ4p=@gGf1#-?UsI|{ z`~;guA4fKI!xok$dbh!#Cu7i_EYJdP*@-!3-~eywPJlcNlLM?ZnFq}?ERQEg6sT90 zuV;DHo#oiLFaXg%r3njXpMhLw(6FzNBaNbrVEBK4G*Ic5Dp}m>Q|Hz+b+!ru z6oh{oyl-^s`RYUEKxKpi3)xn;`sLRYLBlGDey|*6hZ{t4_mkW|<30-A;Viv48e;f~ zCiT|2Q7YRcC>J%eEmxeIMSm};9SSkvxf9fX!>sTwOYvH0zBeRfJiQ*QYpj*-e-C)XsH^Sj2 z^Ps6zJy>4Z99zcLvT$G$(nzZZl521|NnJCMT#P3z7ZaV;UfUL}5UilA?a^YvkBIoF z^wOw=yor?0zCya}T2_Qdfo2mfE~&fgJ)pTCPbvI@h9lso7(le$o4p32qSjC(+jG*q zICjiMY^s$_mHC=dO+sJWgY!6U+jcE;cbj(o0uYoegTM~aZ9k_(rF+)0OzbeVdX@

(4f2ef2+X^2{Izs41lVK!1&UgzB6u0DT!xmRhb4KnW=b zJfy1PoF{JbE%SagQzK2kR!SZ9l{$)2EoEMvEv4mz+*Bz(>uzKP& zwg_4AQ5IR(2SqM4MeO@FydS{#XZZeI{2;iZO3kOXa;%fph{v3BSUJktLBmI^(c(FZg)7A1bQ^niNjsQ z;Rc0+uYIVmVtKFAXbXrM_!pd9tZOBpxA0^o%r7W#|8b|=2Zy~seI%5aHWWWAf@5=D zpAwO+nvY3Ww3xQG2S{kcoEjAVVir6)j(D1|zQhz0^cbQ+%QEB47re6^FW zK5A%4dw(I{pW*ufJ>Jv&zKc6d>gM#t`*u8uKA2v>_dnI{nkk^eFwbP~eD0)hU^jPf-9rL+B0U!j&1m@b1Kqzd?+Ez6K^mCZhcrKHbK z%-3}dB~;xU;<3FS@JQlL6Dw_wH@ggg-R5DBdDzu{9R%02h$V3+K<@*hHV|vl?9|a z(-s&kIbg6<-)$cDbYuAw;KhT#0xvd`7c24PWBHT3y{fkL{ihhGCiA;d=XTcFJqUG* zQgtwCZI8fw`j!u@ep%YIpsX}F$NbAL0j-(P-olf`zz4^Q7Yyb4G;SG5j*y#Pte#rd zfPTI*O+3PL)M(|)Y-LyotvoEPaK1DHMin;+2!Fay%&oP>uB$0h@`SH!AG1R4@!k`8 z0k6SgveWP#`Xt>8_=`xu8Ih>fl@60*DT1`5u;re8wLLkaORd8~pX8z06t-n-b;~{b zs=*Y78VMR!S5R1Tz(#3(n|ZJrw$J3)CW0m>WFEriA=f;dyNnUpC$>Ode|R18T1$Do zh9_nJfPh#s5GzyzZL!7RUN>HW!;%9U<)O3v#V=7kd-7wqDPjrQ-TuRAENf-i)V@Vk z?q1a5%;`C98G~IJ0-UcDoUJk|{H+{6)Pu#}(r8I*GI(2(tYjO_D=RfCP%G=Y_Lf^n zWcMPLCVF-Ye*v02(liTCK7!nm9nwb6exqAJzuBgXlx+8vP3t!rWAqzK76_H@0+kWd zYI$G@1vRz<$%7RYv_lM_Wsg;STLvUcEr>!Mpwx0x5UNX#t=?&JwzU82&14wx5|x6! z^tODz%e>lc3R`&Ko7CEAUTHSrA|GkWN?8ufybkGARsfrEB?L3GY!x9t^hX%M?=)k`Y;ff4xCyG=;6uw9tLqFwLfnl~r^5 zjW?0m;IZJiQ9r0}FifUp>IRczd1**dpEsDdTg?N=60l&oJU}e+P;VZdFoN%nosrKY z{LwRr=tf*;SXVFNn1OQL3`F~<4 zQvaVgWAVzX+(0ITC-sSNO%1fINCH%HM{MvK^wYSH$7Z9VmPdZT|1S z|2H}C3tX$wfUpnYs|XJu)F9k}Fcx7LLJ;B2v02V<5tNjiVHd(7gf|f0Ll{y3 zdJ&c*Y)1GOgnEQuAOtQ)eS}hk8ib7qyAT=>{)iB|BFniGVJ*T|gk1=S5PpH+T$$zM zBFscsjqr~MhY;RF_%7(0JUq*}3*ml*T?mZ`e?$n3$Z{@4_!z=H2>*bv6QKd&4TQi| zSGN+;}ze5TXd%5uQUhitskVHMm}ED#HB;+Yyc-oI*J7qgl=k2zMiV zAK?vz@HJV^0)$5pzKzg~(2DRjLh#xwrvTxzz`qjV284?c0tjzjjP?+ABWy-kfG`%J z55kd)kdLq$VJ1QW!uuCyIc*4s5Wa=50bvQkRD@9o0}O_p{BscV-?Y)d4WZ>a(1x%P;gbkc5rPOEqq3aOM0cRixQDdWZ=8b9R*{GBjmT;bq>*N;Sj8$7UZ+?0v<3jnBD2mq*4r~niK07{QnEsRG2CQx83qVa?_UICbZ1||$1I6(?b zDCC<7;|Y4ggej9i%QKm9FC>QJ6rQLEki?xNj3zwPE^xX{@JO0%P{|mxygt374UBq<=&mlA*{1~Ab;Z=kU2)v$XApY?1_5l1TKwN-7 z%T_F#zHE8*%tiNBJ7Z#Ns#lM3oH_TcsxDr%=036n#T;ZgcRD4`9S*7aU3}}O#?2j( zaGXE8ug+%9?0cMrlH)k5rmb9Duxw4i%!)hiVBJqw-$!uH;+3mcS1*nth8aNqn#i)H z(Pb+>#WKrQEU8|LIJyi-;NL2+TE(kZerh%3aodWeE14#G3Q;^SHAv%ml`h9J%s1s1 zFIrKsVr8^o`N~C0Mvop1<#U{hIn%FW-yqJ!op@iAMBCMCh?euYdmLxQ%FjBBS2#{J z0?+Z@br*O5CLnSaEnl{14dUx?s~~7uy+*e-#?Q1dz#8usSC5e*D4+Q~@_opsfzYy; zeNWXq;u*f@YvsS3b?3a34_%a`ESYyfd1N#54DXjM5&Bn9nE1CWT755LmScI!%ak>F z7ni@cz~n7oCOj~(Z+vjv+)#4yr$<(?l;iOI=(YDQCrlwsiPoX)mMmMdYWbr3c-NwN zMwxq8En2;7&9ap%9HTYl_2QK)qSep>!<@DEE`)BZT)kwCK)>*de{%P@6$`t!|Hsc( zEF3)Z&UquNQdm){lTtZDhCXr)(qDDLoz;NxDdgRTKE2ur4@3Rdp$M=A&4{<+{n`53)MbGE zX_UVgFjhKYuq%x?KW*d{*;&07tXsAMdcRCrp5-vBi<~76&FczhDNO38oZHmXO6NxO z-1U!Dmz8{B#eFt{8#j(}PqW7`=DG0aTd^>NwcedSg<80>LzgXgjmq`5T{SseOBXLda-c>Az z{(p5e%>pPsu+s{Tt5z>tv3S|4<<(zNuU@<8-ZB0n zQ{JB^5EPz~MXMJrj&gWGpID-JP`zUD>ibrqkC=BbI!1<{y9WZ${je7~+9GLnC^XWT zW@xOfQgv7)RR@ASS39~$TAg#XqxGd3eQOWKOyb1PUHBQy3?}}{fBb@=pwkIcXZ-)d z$ZzB45Bgsg;!{YU(RqAt-eJW8y~S~+BKYetZ!F4<;`puq5zb_!r|CStH}Cv#{B`(# z4$4J+aOmP}MEVJYJqVtD$8vOf_|FfIb)$I4_W95Mu1VKrKI;Y@x3XV)}F5pK2LLg^c~0fFNAU5b)0(; zoWwA5C(rAwjN0 zF=E2G3NhQGPHjC$-BMk5uC7BIo6b>ZgRbKuW_w@Kb(IdkeRlflb=?0-ph zX%%8*JNF?bY?j$`4%j<%S;B2QN7-f#|4kqK@Ts%o9{!%-Lip3pQMMFiQOuc(nB}W= zUFzGav(zQ6w0F&CDMS9eso`(c@V|nXJo-9fw()O>DZ71$DVHB2<{bJEV#@Ai#I&_7 zh&gZk4Pw>{d|znfyE*@Lc7BXSSrl_7>G)>E#Nl?tgf&N}=j(VWV&bq8G3n$7!FA_o zV+YEjnDb4t<#M8o-zA|r{fcd$?x|N4@R8* zH14iL974=AW4>q1dW_FQoQL=$h%ZH)i}-4tKNj)%NKZn10pgo={_Th_M0yV5ixAI8 zd@!^~r1Kv^d?nJ4BOZ=;yUzax;;WGUHsY%hKdtlY z5!2~^5%D#MkLdi@5syN;4e@n|-_rS~5z}c-A|8u4SSR=lMSMNd7a=Z0d?jMalDyvd z&e`>)6lGD&nTwcx;vU45<)?KzikLdP9x-M0dBlXBhv(LFzOj?+?yX)+H+JUkt=6n+|Y56WaKv3S!c?A2DJ62r=<}2{Cbg z4KZhc@T|NajF`C4K5TfecRrDh%_xgv&Q!$2cI?Z?}(mzE^d-^J3%Hh|DX|FxRv@0hN z(_X)anB}v7=!EkThY-^q=OL!OzEr0f^F3phXM8E*s}a*)k40R7c#_V)8SxcJ->%bh z5D!OszD_f~3hAXfUa8}?h(C(_hjg0pwMajryrF=ci&V%nRrI?b3e zn}nFQ^Jbl9OayM%@f^gI*?gT|s^gW2DYLaY&6s2CLx?GpM|Ape#FW`~o&E;mVMu>l zr=QkwJz~o2MV&r^_;RFQ*XcII)S0&sQ)Z_Tk3gJ6Oqm6r7ao(}8{R)VkH?}ciaC=I zlgBqBX1}-{F?luzF?l#&r=&;iCXd??vtPW0m^?m>m^@A*Cj4N%@OUU<`Y{(FCXcT~ zOgu*+X1|!A(~Jv{{upBN_*TU17o|FXE@JZd9-U@P9)DWLQN+~c^*a4|#MdDGm`-m) zOh4vH#MdGI7UI!}_adeY{|hma&igvuikSRwN6dag-ec5KWz?hZ59Kx0m;TXgtS$S} zdyys#%4-i`5bow~un2?s%FZHYdX6r`w%MMw0N+t>o!h%a^QD4vL~2pkzqWplH&hj1@A^^BgiynKFftE15#boGDZ2nrGkd z+2@=(#l7zPeeZhL`qsKE3?%b&fkghKKr&A(5KYb?_3?0^ zW}W$evj)vN?eHcJ8DIUUp~EHh{5OH*d=G(Son=5mi@JHLbv6c){G3bBvy7=Kpz6{>knc503j*(E;>YW8d6yQ96tLubC#nox^X@M$(*`>sII3r zknA@Dk~y0J$@R1blC^eJ?-v8f^)PC5Q}6cz5_i4*d;)+Zw-*pdJB-ydXIYlVIW!CNj08V@4p5lYbybgbCQ!~{N|h{r&Q~00wm|O z29k5O2af0ckDmsTeV2e_jW>a0jStoB7eGRn_v$u5vc?}kvPQ#vRl7crtkFW< zCP?(Q6_D`E9!S;$pX3nNet@=Yyj-5ZWAQO36gmTk{EU{ki@Vfa)krxHbFw?<3K{^GeAP;A|RpjZ6L|VN`ZvVuYjcg zM<9_q9sJMYA0uuea4J2zT1(LaW_l$=pNKZGvdBZK78(XcK-X14)}8(fu?a(T8d3HbKJg`9Q+&73wxY z!teD!qE|cA?fpQ)?_+8#022OP1`>YXQnv|`egp}>9{~x!U#i<5fP~+iv#R4pK%x%~ z)NO)RXg38~18vl8f;MP(0Ja8-)NMwMZff)b5?=KKwnM)lV0&N$&>oneK0X%M5$#F9 zPQckf3b+JFct&L06Yu>1e)?(TAs2ng!P7vp?~=Mrknrp#kjTSBHNH^edmw8I)$JcZ z!n2y^R61$`Bs^;ZBs{ZLx7z~=&-g&XGr4-d3y|=v2T-$iW4tkgT|fOaYfnL6LZ>Ne zoU6uVYRpvQHZ^7giG4W=Bx}zH68XBQ#v4FlUmgI-+RN1KcR*raz5~hHYo1qMqZ-YD zWbIZ!vUb9&{NJqI6Mf0r`vS@J!~uz}j8?ZN0tww$soMlee}ZJ~8-Zl)JJom)NY;J= zNY;K9Na%h=-6lwm6C~pZ65`$glC?hu5?v`*@BaiOI-q+&RY$1}B)VdzZWAQO36gmT z5?yHyB)Vb?Bz2Td>ism3)KMIPL|3{3ErH%ZD`0>1{$OA$v?GB;R}$6x#{q58o(yaQ zoTJ{q6xbH+wLn69q6aQ`jR)}4Pa`*l=t~aX0uq`MB(#47Br^X}-TnY1c8XJ|I!=(# z-Uvu&*g)NG3M90(0TSAGP`5>DWPn6&+<-*pd#l?7$vA?9_WnSkv!Osj+h}z=2}o$4 zs%{e`erYO@_@#O3HbFxBFFb?WwZAfbIWkkI}p&=Q!h-d_YHcIq~e(7sf?{}qtf zsgFQHd;N>5dFlY|&~5}Iv~Q{2ZwDl@&jpfoNP!)I&OiX?J7`VttQs}#_>F&kT)YX- zI%3lvUsP@U;cCYVs~xAesmALA&9Q0Di+AzZ^^o?oERM-aY++_ZN>o1wyi1T#0w3O} za-S~Vb-8sPdA(M@4D543zkJimezkb`8~c9s`}aMbf8XQz_dTBf{5_tsI?QnIkRf=& zJ0w=~oGy8K*TJE$V?a+gPbXK3a_EN~1^s-YV*f$Uho($?tb(whBPu31`aPV|;Vdr!+Lr5o~Fo;uXz>r7p!=n;HI>&~Dup_*BXojMfAECqJnoMxW-=6)B z4w>C0WN-qQsGeM@$1ozTeU6U4l!K#FC9^T}5y*~uR9{CT2`<}%UZgJ<($a-2kFyEaCa5@w)3c{i@n_vHk6{^<1BUwI`XfRDA(R>kB-c#N z-W^v&dG!v94G9cZU6Lo3r;z}1R$pU=h=zJsMOPmuS5K#^+#~Z%)RGe-OPZOrWvRDT zAHqYeKEIKrTtg-#5id|wk-vbRWXZ1VesZy#^XguBy$3q|b6-%j%7B**81e#6tZIsi zi|+vvk&eA9kCEwRpk-KiMDSnqcCI`|dUvVG1SP~lj{l;2<+69OG8zSQ(K9+eJQQM} z;R3r5Rtv2R8N6-+QU3dG92-^(wCKueff>tdEeRlE%F0LcpNBn_1Ar>e+GBPAsOXgT3$Ys|ulju2K{s_X{S}TG?LyevA z4@Im>Tu85wsJQU>@I<^6;ot>3K=^A@i(y}!@_?PF80+Nf#*Skp=-1<#{B)Hn-3f<; zhyP-oZmiawtj$D(L=A}#t9mjJp$<#sULo=1b*?xE2go>kZ4IE&>X)=Irs8llA3&)1 zg+sJYs|#l6Bj_9*8yOhyK;h3`LD4ZG_zRa-ajCrO8hRc!F?=Kl=?*8RvW7U98&0sb znzi(WbVbK%8_Z~8eL^r+`%o`feMi_+_WEDIzV)a$IVKM1sSz7a87Rv2f}XMOf>oGA zPCCZWKaKHnhZ~6EYFGwVZeXv!>TY6IReYK7%UM|Q;>4@0rej=Ccz7jaDh#FzS$YD| zsNj$w(9>CU(zwd56sy`HNq9XMT^xw-=%mjueJfY3wy&Ct-BgX1mBi-xuoPwe&s~-x zF5xO=A>uF^(lsn5kjRf}x0-?#C&Ehaz+xqVd05|H_K9U_RWY-+L|}&HH5iCY#hgUe zATlbgCA8?qj;_#R2jbJ8S8%UVcI(w)AaPL+EK}Lt0X=;g8?Vk0fe`UN0uLPQ0g92f zgI8A%mypD8=rH*~o~N^CA@ZP-g=&lBbo-UBR56>=8qrNO@%7plfiMCw7^W_%q>y@g zLPnxPtyH!SoCJ?U0wXK0Xw`SD+pf1c|Rcrg8u~7$a2Y>CO7^UqsrhUNw`C5u;jMRsZOQUqDaH*97q$OY&+tMK8i8wFmWL zrKvh0$jTsYAjD>t4;oRx*;)E)tT#@=xePixvDVxh$&n_TR9SOE$pRdAtPm!(eItk2 z?&P`;lPD&%s&QqL3zmyzzYLbaZ3xr zRIU)$3NOa)^VJGi92~R_8rH`q46NO$dZ<@)Y`n_nsSkn>K`h@Y$gE);ajl#~)naEA z-w10-_#6$1h=u>uTt9KwB=Ut+5nG{RET-|Q=Cys)Ayh>NP6w=k>*b4=%>&hGGKo2C zD|~6?5tv@$OfhTAhD>5$L;_f?6?v)(6cydIO&0#<5hIh%dWVWGL``t6PwX1CW>WE^ z;@Y(0*=m8SZ>3&T5JK(s)PC_Mn-j(36>+V|O+_p(r|9Sigl!~O_{&tGh}Cwdj$~Z}Fp|mC>luE3_#2_jB+c0P}n>P|4ryVP4)Q4QD z8LA7hf$%zr0!R+j2<_#6CP3V z>~8fzwZq0ZFT{Di*2=7SVu8GLV)=^5Nxp zSR0A*QDKUXbc{z0Q6sO(n!T$Tz#Y;#;-B6LmrTz+uwRa`7_z@1pRAuMNERPACA7;9fSTRC2fvkJ(>nza(Ps3LxK zO{Z9gi6WUy_}~bXCp6uvtVPXr&9N#~2CNE}U6qxvEY`jZHY(7{O*-hPqae*x)hMTm zBD7bleL+OV#_2NgfkRZLNxPrgrfLcEH1v$tKF?pu8{y6{Z7J2h1eTeqT9jA3Uu1+z zfjLs0fB@&Dq|UK0l5Vgf5h1aByq^kc^GQ~r&JT+90%8*I5vIfdy5|7niLcgLox_FRfApuzLitV&<{w6LT)mQ(;sJq?T7}m!s9uu^a9wur}YBV zdwTTpb@t{`6l-8Ox;hL(l*sTX66KTWaFGJNfJipc2?&af=S-_X3Oaa3LN@@P(m=1~{(lC3!}(6LJbTE-=}_A)0oXE(!=Cv4nyl z!Jt0Yiw`R8((e@!5)#9Cs(sX1m77*{;^gZ0)(}?xH7q=Ls?!B!0hRUF?7Xb+6Q!a9 zIfIJ7YC>_==_3yM>%)3obf;{pdqgs6(O?%{)D17nlP{ggP) z20gEYkl19;kl0XC5sV57aVFo8!q-yf>0({I!-IygJMfI9);d)abq&T7Nm_f=tHwvml;$-ZK^3EcD0bFdqBc;qRrm zwLPE1p)5HZe6NUuZxC_tjUo=dTg1Wlj5zqV5eMHk!uS8M;lTn+JhW7ThfE5wmEb&u zWK*EuM4Y!PHW%!d;e61AK|`+#UF%?!ZsV58?G@5+hlB6 z*luC_hRs~4!*Rowgl#9bH`qiXd@~Z;N^Bpn3B)>_dDz}ybES1SQ?TV@t1H31d~Bn! z?ZWmMo0AmZlf^wlhC+wa3tI-Z%h=47_%cAU1HcAWMcdwdzJBfgAA zak!k|_?XzBxL8(T;IXTIN=_BMREzl$-Bj4pl~CM}OI``q%0H zx^Kme6?U@D)lUjXN(>Scpwem*NIO*T<4An6R`dqLkN#}k{-5`U9y*ebs&&TgKX{;D zodmTbt+S}oFeX4Vkj))_x3tO$RH+8L)UI*tnO#ZI`S<7jhIDaGh{Ph>zLyw9ct;HAPXi&P7yaQrlf%gFeDIG*qX!+SuSA(nWIgM3u)S0~oy2~|nJO4YzD z@RjV>7k@n-gwb?R6`<7T*6d_UUH`!)dxs#J3no*!M*ZrH)kvj2Tji)e_$Jz~$N2;V z^zm`(8sP2W(L11PZ`U3uX;o1D7xPHy|I2wuTv@rGUroYhSPc0b<*y7KEUq?Rh|53@ zP?`IYwMK%ky%Gi!>hjo#g(y;WGOOzfT9U;Mt$ci;`hZ_Q#ZdV;3~n9$G{n*M@1Ihr z9Q_O13fV`ZpenVHj;cpv)DPeM;%v?&=cs%j<8L3eAy3XAtPE4B_Ai}7HLLWKT_gGG z?<_-=LBF%IWWoxq{6|X3ngTLRqfo!%KtRu5C?Og2e=A<i|DDokWJGwE5RRvM^iB3_9ryY9o6rc*tM>8j-nGIz zXdXz?o&&`&^}}b?##Kb=)%I5>1UX;NQinr3n;dn~TAQy{iGg&f_~Ef^_E)jv-#=Ii z=(GPKuLNRCVVn3zvtJi~Q@_}6gbr>v=I4oT>m%)as2aeL2gb#PL=KKfwoHnQh>BBK zC&WfcVsB zvQ8~aOF6!f8y8Q4q<=UYUo{RRHQ&@_=dr|39vgzB1@(_$&saQI77;QeB(CD1_F>l~ ze2$lt@7zNYLn16A$iE8fKzx-uF?v`?thHrAxML9cY`Vgl{gAJ0sDLyxedxCqF`<(lptIuoA@NhyRfOf&YzPN6C`pQBwq(6zx8$fKPjXK3TB0MZCG8}2 zly;MPNCTt^(lqHz={)Ij=`m@c^t$xBw7$$j)>76<<|^}+4U`4RB4l%98)W-rCuF6v zkFwfw3we9FgWOX-NFE_ikWY{=kgt(%mmiXs%HPRN6gCQ>!dDTh7@?T1$WZK3TvXgt zyjSQeJ1Dy-LzN?xOO<<+r<9kK@0I#YN2WV7iCNENGv}Dw%roW{^MygN1<%qE1v8@R zQjIAQ?Q+jAFi*Kl`mbGWC$p9kC*+%H@s zUL#&B9>r7eLU|*2%Xn*fJ9s&~v%Hr)L%s#yiqGXc@_X|8@q_sz_~ZGr`5X9q`8oWv z{9F8|{C9j^ftkPt-0}mjW(ZabZVH|V{uF!{*a?L~Ct-{*NjO0`N4QeBMR-VfRd`qU zQ23|tgRq52AaWFS7I}z#L=mDXqJ^TZqMf3HqDSDJp}3B?k+`YYPOK1niHCrP$>KC| zmiVyvvbb1$Ph6L_qQ&5$D;-Nuq?ged^d|Z${gnPe>r3iLq>>)sWSC^QWTj-Meog*RuBR|jG*q-uv{FzC55)jQ zpkk;ZS}|I&OtDe1O_8lQq{vr1R=iczQMORpD|t$p(p~AT3{<8lrz;mIS1GqD4=Hab zOO>ybpOiJ3MvRbgWV$iEnL$hfvxv!H4l@PJHKv4l&8UoM2Fq&$sv%`XaVduKqe7@y zY8*A4%BD_%&)=!q+{WBCTvu*iZYVd7JBmA*JA=EF<@ibNCGJgb33zV6Gv!%AFFW!W zo;NR;HQT(a=rTpuB9l>zH7U-ZAczH&cD4Hxf zCVDJt1Rgnyy~V-e(c)?1W#aYVQjYkN_`djs_@nrTxDFja52KU7rMdJ*dLMm?zC_=m zpU~gwx{@Xm8%cYKP?9W}D48o+CD|&;hQ?iz+?A9`K1pn)BI!WsaOpznIq41QW9eI| zj;ywRro7H6tRkN(7GjxO^U0ECyFl$OK6=)DOdJX`Y1z` z3Cc9(EaiOV3gvcXj`EnYKzUbLru?R?&(I8>#$y7Q2qu}C$t+_wGWVIsOgY1Gz>`Vf zj}A1kIn|Z&geDHB#!yqCi<#6;>KJvNx=B5uK2oOKW?U<7N3MW743;vLJBz!TyP3O> zdyZSmeZ%GO>hN0fI`Eu%?mU0+CXP3mw-Efv!S6^Wsf{X{{c5u(+i?V{bH9MKKYbJ07|caf>sQrueHQ7je@ z7Dq!b$B4Ix_d_rLfMwO84d{Aw2bxFA=x{ob9z{=}chN`bJo+5{oc>Dpl=PPjlO(a+ zUL*NKQY`r*F_bovHkWpkI>Ea7N`s^^(z()A(v8yX(mm3H(zDXb(9#c5eOY~3BiL9< zrjR+wy2}R1rpRW>7Ri>&Hp!024CJPAbGa4tln+gHm3Nc(kx!Rzk?)tEWOcMe{z(2> zUX#_%S&I3J6^iZ9N+YG2vNgD^RCZJLQ3flAE5|CQDHki(DfcQ1mDiOom0y$`#)xUb zv}Y(r!YE;T2QiV%NM;-}nVG>XWp*$*%xUI4tDR37{4X&agfSc?)tySG=202cHtHa3 z?+>aGw*{mD53W(ao(&%uhm5pqP0MDs+MqP?P*;7x6@iMW~A zM%+%^3BE59npg@QY(U%4H0?}>&@uF4`T(neAK>#EO9T>MSjjZW9LYM#4#^p4-3N&U zw63!>5I$~-bhdPbber_5v{d>H9H=d`hL!Y_B|`6R%bv+T$n@oP92e3e7t*_J7@;o0sh+b}Z5 zoe2d+w}7H&nd=Owi5n~UzY9Rm#+01uLWRPk%?B-;b8Wd2*tH~3^9NVNbK?c_cJt1_ zW*P9!;ity)m+?38ukpX~YYJ=yw7^#|MQ}=RRqzqsh!XY@1_?6}DHw<>MD5^vB1B_E zGexUJS)yB_Pa-4uoK|8=?0~2tQ9M<=R9pyO^IEJ&o6!!mKOISrq$kny=}fwmeno$w zn@QS8I!pW{k%$>4OJ+!x!iH^>Y=afcmt2*+m3);LOUw2QP4Bzr0(dky5e0G{Wr zv|RcLkwZz}g8SzaJYv8|R;&{4x9){F8_b zZ}MO8-|}k+8X_+2D3A%<1U`ZgK?-=gRIowtO7K}wTi8r!0}d;M-N5Bw;c($tM2DM% zyI|k)gawE=YKqLj^;V*`A_tKdtlJQ1PKIckC|i^-x+*FYwGj)%j^du;f#P)WV)(Gf zuxJLf3EdE}29I{4y&wTmuxYdC{jg{k>6>&p-B@A`{}n9RBY7whAVTaZ9RW?TmC-UE za5DvQ;6hop?6~ZL?27EU>>D(uA@qeSSAvr&jTtAOET19YDn9@}^#rj*eTBKAE&LPV z-~f22VTvh=nTkbt!(jNNdAvisTwVe10Z$LSYtC=S z?+hCj&L7F220OMAapG3QiC6h${Ez$};9nzXWOwjxupmY-Rxlm0VyWP(z(^<)b{8fJ zCkxjLPYACGzX{FYg}g8I_(<|shbUuBaenh{d^&}>eP7;5~ zEXiVM>_No(`I1|b&yt!_V`)PvB^64Q(gCo8L#30YOQdh49C#mlnOxRY=8FhFPPSOK zPL?OTD7yzO{US4j|LH9ElSj*^$v4Pz_E5&c2W?aCLQHr|`4lm~9%I6EfPHjke8AHYi2koK zPZ-W@+^+@?Yaq_BMc(B@1yHHfQpEa&)Kf~2+mcIjy}41`N!*p(L);?7d!M+q5b-tT z+3rLV>7q@`d>MjlxM~UMQN2ZCFh_l5f#Mi}lpoL}P zPl)%e;lo^MZ+b8y{&adColT#hufq=4m$ZN%lSrIkg-0T9TY#AVG^}qKvNltxl~gQs zmyVWBm%ftLl7%5Ni;=~{e=UQRy$6l_6BgEp)yMwwWchexW{2ek@09}zE_C@dBB z&_!qDXF-Y>#Yn|?#bm{1#X-d>#ZzQx4U|owg;Hf_WiO>aENX;uD&ob(@M=euCy}u| zQodIHK-Ol$G-n(bPsSgXGzvVNz+^HznInknFTkRLn|L?@&lZ56hKTB0BdQl6u6Jjn zh*i`^L=pMaZR#2FH+^m$F2!|5WFO8==Pu(O=H5ew{U`SWG?U9yBBDq}j=g|)7&=+V zE9HIU{ot7()3)bJ5GAT?>PYy=$>8xp{wZW{`pC7L2-*px$lrPi`~{(c2t*Q)(gU7;S-^usG+DeVn>mP z5xI-fVO>{=HX@(P7u^;;6MYcrBd4Q~EA$nIBOl)=-Y(uFJ}AybV>Frv~(h}gzeH3 z(tPQ8L@Un`G1ipTk(tTbBVuut`6H_vg?Mqh>?nNeCD~`0j@&?A8-BH=oPtN~Cyzy> z_*yPigejt+p{a_Misy=QMJ=U?vXQcx(pqV!?1V^B0S)br+^sLNw{XOZW0dL8);Wk{ zGL<`^vAM9pSCluE_uxgpD-D?1j0MvYoOfmL@lwug6u}IsI;fN=C@-oHb%e@;wJoIX zQ7>R`ZMgWq5s|a?0B_T{Q@IP_GuLo8a`$qNaj$V7fyXtG4fyZ|^5PNioa9~P-A0!7 zgVzuqvje#60bjX*wYXXQ1N`IsGl(H?^Ggv2H59ZEv=KN6x(Nme5>QK7Bv>an1g^dk z)IcsE7y1YTg^|MXsHChEZV+Y(4+xJVzbg{n7M2Qs2#rK7MM9BM)J5be>MI&78YYSt zO%<&}R^N@B)W-e%L~za(GO(p^~Dy5pzOs$R9?D>J;Ce2u+bz-NEgq7S6waM zEZz;@dQyB|d`(;;ev0Voi&&qo1Do9vHd{&i&;#iqh*Xp5G}!Fb^j_HOV)`EajDCX* zqK2d{q`*>Lt#Lt~?<)ylGkv1_>m=JH`y{#0|4Wja@W?MD?-7BuMs^{V_K=R3E|9L2 z?nBk409nN?=_Bb&$O%VgBx@kEgOv0{Ryjx(E{lb%Oh5%-gDgvS0G|618;5b^Mv#}L zavQ{9{_;>*`XqU(d@8ccN914 zymbhw3F}cmx&rI-1#)SHOjW}3;Kic4w+@o|2>HwhRF2H}B0j_S;fJ7#FbT4G4SA`l zpe6DeuAmEIfHc7x!EsoY=E9Cbsj#!qTi73wTO=ZZ>B4pD%=Du0vGASnJEAuekriTg zzQ{$?L*y$85QT|`qtdrPv{JMI@%sT$f#@=#_(!5IqK5D%ZD4C8VkdZ&-eP~m^U>lY z@f7h~*qy(UJuWRpmgLS#U^FTgsq|F%nN9RbRF>|dV(};anKqHMmUNVeB@U9V5^rR) z!SFhXl5vRs=OFrDiweeG$q`hX3MJPi_a)Df1ALPhNSjHyQi;@48YxYbjzc`LQo2`q zM0$#?9^Qww(w8+y2H=3$VlX^Zf^4j8l5DnYiEIt3P#HX{f?_BC8S5*}()4@&Xc5 zW*`dLg-ke4aSoZ;T|^^)Dn2Xpl*Y>DN?TMxd=OtIDN_+&W+EmbUM*jF5w)rZsDiwM zg{ukA)`YP}ek@=VOi!i{^5bwOmKg;PH-lNotU_Jn2t3?9WDReauf)$4;<-5hiCY>| zmQ-7cN6C;ucv5|-!PGG15o6%>W>Jf&)u>z^f`u%ku2c6Bk-o(vV@BKth)Qj^9k?Pc z!*$~Za))yhQQsQRosRrsC$j5f+&{QyxR)W9FS#F4MIqn2F^6B3qn72u_vD+QKI{Mq za)XERgak#1VqnjbM59G1q6w&IO&84;%@-{eEk|aMiF#xfBG3J(e&mYs;K$C23PnYT zT5gGQQK!mBU9nJ7get}@NeQgY6T}?l;P^-6eH^L2)DV%RiPQ`kU^A(u)JAG2wMSej zkkV4Q)B&E$4Uvhbw6`=~k)%jbOaK@16}J%Gm!nqrRbi&If!CqI1sCN2L>4iq7fw)4 zM$K?OqWvszq8JfkiSh~ZH50}RQNKMShp%yA+>lH6MrA4n(f@Qr8he=iOg^&eTc{zH zGjCOVDCgjN#d!W4`I><1z#YU5L#8$#J|~l##VzC(b04B=Z_G18jnDx(wkOXIHNpwJ z>Ad;8<){+o^NJ8#m?N^V<5Q?xIPl#-T|fRHeguCye?EUXKNFGv9>o6n{3nPZ%>>P$ z^=^XRf_TAb!34o{@GQGE=uZTvB#b#`^#2$H{TCG$U%N`R#t>c!b4e^>@6&Z zzT8-DCT|8GW-k}W<**&@^4{_R@?g{x;^m`pXJWd1KKxlG^3grWV)Eo?7 zDgt(9F}0P-q0Ule)K|)oYXU8BL(L+L8-vQyV(wOCyt&YV64($!o(az!dSHk9BW}D31D*Ji3LsEo$Bv1Ip0(<06a)FD$9Xc=o`BMb+AVaW~ z)q{_${M#e89svJ00e7_aK;myf(m$fYXCtCvt0qH|e=Wn7s8_im*76e%g7n6V=Zlw% zGsRmGUFSf0&x(u0x3px~gr<;5InZvjC+$ZMqQektB|&yG5ozziy|6s`EM0^O{X@Ep zev61pUt%mVlQe_ux=B1y>l%b;D+Usr0-rY)gft$p`UKP!v!wf_xro*arNz<`NOZaMBOcy$59yKZjJeWMUn-m zqYZ!zN1%>2`fnt;Txr6XGnTN>6z&^1z&?ATJ~N03gN06FQedTLBTmbJ1Xq(?e1$O& zzEYo3$*v7$PYF;9bwQNYn;Jj`vvNF|nt(e$^Qq;yzpxege-3=+S*nP-MLmRUzlC(` zbB(!Xh}!HR;hvCjV(W>Nr{KQOY{+^BvWzTN-t$?@U&4LDEoZ%_w&c?leqazU3{|@% zUJB|zvw4eo8Sn>Ly#1&syk&g?@dhsZ0q_M_yn_y&2`ATJh^sK6D6Bjl>&?U(vHRcO zzZCeF0{>FrUkdz7fqyCRF9rUkz`qpumjeG%;9m;-e?o!TURbEEE{96X-HbG^;n)?atE0oMO&J-~XkS-P*P;f8ayO{e-atoRCrzxYqo1KfHrrThPd&;= z5AP`JuhC86;Nix~ar$Pw6v2vx-;egV*fnXJZQl;h61*nbW~5p5qta^3pwjdcGW2wH zbahSYE;FC`sj$Q2S2sQH8#+mJFfK%3L+)4x zyM`_TDoxi~`|5RSaP-o2>w#0cwRF>TbvQ>$XUB!zIrPxKo1C(y!ue&#H?;0}+Dh?y zYH{D=_u6hy_-#pCdT#rurW5MqQ7zvz&7>PW_x)p0Wb-Y%l3y3pzw|KRY7Mz}J@1x( ztZcY$?2%QQ`ZVh66T2g9Ud-`b2NRYIjpNO~XyRhh@ow6iniERnWs$@0cQ9`H((=k_ z%jQ9CJDe{Y*fW3LN2|bPg6B2<7+BWdBIo((3+J{990GQZ41GBw-)&=PpFXR4`^_|N zzt3X>b=~)6!6^R++fI87d?b9#J#%B;z*{qCrQFD#v)EyF@`$lcp>RAL&+JvZg`P(53MO zce=NDTsLTYY0;~>bEPX4w>S@7TTjVe>e8hB*xdPhE(JzD=U+d0x4S;)?3iW?PR#mX zwQE=XeTT-qzA`<=-f__8ok8X<3oH@`kA0t#_2o(Mdj7>JHSZnXSL&Q;zJL7)oqP4> z8(THs)w^x$DG`tAdV6(=KVrKz+cDwJ$gKf0nA16z9qTvf|H#DiIrn5iY$I!X+`PlP>zj5pf7DbL zs;09xO-D+l>4>O$5U1v*Iyyh}YfyRssyW$FSHF?IS=qG*X_tok2fN?xID~n8aPjtL z^*mVdYu-xVoNAO}=K6fij<<8qq;WfVP1~@+YQ>w#{CZSfGQJ*}P#>z9P9+-{Li20X zsHvl)ABj6XHkvl2lWrasA0H#_)G0bBE~bjQQO*^;bkoJ^UP1WoZ)|*Am5!Y>YM@re zt}g70*^V9Yg%Qe?ETyGBu{P2SIzyB$(99GY!T+bzL{Rm~G?x0cP|7ke(8r$~ZT*6E z(M!|O;lyMdbspgJm=4HT8{brs-RRnfqkU=~Ub=PlB>S?712;9BD}Zti_FO* zA`e@by*2GNvQvkB^sBc&QVx7v{o!@&9h)3)z5Jeq?e2W;;CtcI+Yei*kxQrT8d!AU zqO;2~XRGH6V^_QFS#oBD#|8sE(-Cc4iXM-9(syI|(N4A3KYcBbmwnJXHEH7|cZVjz z&O^g{XYF6@JF_hFisH%6Ti==$za7zUK=0|%uU301z9t%lO;{COaMN;za8NT{y)%|s zTm3TXIs~0uY<+B3-*-O4F0|Pak$673Rfo4@hYxKv%=$-z{k=Q18Cxv9UYnl|Ata9l0_}LJsJe@-zo5HAc6K zz|y;yqkxi#EPJ^*@`NHw@==st@qv*sczKbygx{ItKhlK;U3VW-#CG-aIn`P(@AVw< zrbS+>uU;B|ai#m3$c(JB<3II#Uw^erL#Keu$#23wk9o6vO6_qgTCS|eZ|P}T+cs`t zj-ZSAw{XgS&?ta-mWx`Zz^SjS)DDoPQ+tQ@H(&^Tana{iwaGilc)0##^K+s)1Fn=d-FPfG-eE&- z?8$>YTkhQJ*CYA+wOMiVw%SYXuXDRvp2aoY)TiyjHXYwhT0g62VnZL>n8mi^GAz1S zIzMm@N*R?9)u#3A#ZtQd?)UFkmdg5U$*t{^#DQs1C=iMu$Yp>{)94%iXFL1hL?l#U$aN&~s zmRHLZ-|OxVZudFC&c^YD)6p8sL%Vu=zV&(|>e^$PzzO z^S(=RKkcH{xnFy_xSOByvfkwHyJuY<*gdg<*Syoyjb;6(T5mjNYxv2`q=DX;fL4cs z9|V=Gzo&eEJbo9`!YHw9i+|^Y`-9f{8R^(@>Q3nW^88c({DD-1!<|>|y_|U9Qr%%o zj4$!`oZG1}$Nn(KeW?b-*0AOn#s)?d{#wf-A8d3zvd6?uacvWqc1oB&)N3_d_+b=Ow z>uhct{x$sAh2}M%DhK5k*M2mh|Fy_TpC?$h7I250%WkkRI?vO6aC2kBw2h4pZ}Pp+ zFm8s9b?fsB!kI23zQo3xUHh@cW2*hgEfdc<2fP@Rz1d?<=t}#QB~!OP`Zhf$*mhFH z+`}tI7sk{Y{c2-Qg2%yrA2yln@_+inuJ@GkD^rIjhTJ$?9=o>H=iD}FF58#1X}ZOx zh3&C@ciKIFzj9~tlGL@n>04^Kp1zwmBjfSnFJIQLh~1HQ>e#WN!>|8gnqrifz3SYg zNj8T()^#J6hby-|5)7Yv&34#BI&RB)9go9|ENPqjwl8@LM!l#Nz?V#N zOd3f)U4HL&t8dNiE}#1J^p8;)wxWSVIIyrRsr*!eeE@V=Y#DEW>RMy9Qla z?!Ic^xlM=XZNIK9G9-ogUwJGpCE!UaJ(dVfTH~?8|Dnfnq!?%fJQn>ck43)VY1u1$ zNEC5VTJDQa3oLQ3n+vza{jJ}+vZs?%q20Emeg0P@eVgu_?DUR5{kbA_QOwChc@u4^ zRhcuxiU+)VF0iS2ue-C%-U7Tz9pSNHikdC9RkXH)f*Jz{Kvch9(Q zI7TqWJ*7{BVa`jJygn&w`TEtFF8xf`yYJSqZ2iXM^0ZxF49lmMtT4(A+3||| zg;$d&v#pX`JFZ@3f6x55#o3cD=XH&7;?4T<$FpW{Lc->(>EWJM-_1Mhj>%!OKK@V4 zO+!wO+vPFQ-YwI2g7E66j>|W58eSBCw=kH0e02V^ro7UE<8L>t)vFu7Zigg$%b*4i zo?JcffqU=Pwuj~!#m8E8>9Tuuy{NTYA{QHsZ@O>jkPep)yI9OMNu8A?GrD$a8L!{* zA43QAp4Ro)ychTO3@C|yZu@Eam0h1`lhSAB=e#>|`AhV?K*4~Vd9HTjMeRcE0tnINDFqW%uXovgte{-LnyLW8eB3zttCh%jY+K zD@GWUmTYCSW`>kdwzlCxHRnwpb@mqQo4y=mLVzUhR zENLqj#SFv5m$P!DOD_AC=vu7%=q7k$pIsUs`eA@US9P@43zSWOed!J1n6*H_fzVZ>KrH}2Htqr!X>tr3__$h5b!_c!4bqh|WpLlP}H?G+|<8n>ip+g-gx9)i{ zbyD;3Gy88<_TJs9`sv(7X1^@TGv z*Hd8yHywX$f2sF^ytR~DRq zW!U&xT5yjatsWGlzuc2)6&&;Y%A<@MLAyIXt?_d6dz*L7bCxyRwJ+dq`OCyH+$AAh zd{%U`>9n=|q9dywej631_^ycIJCysQ7hbt%V){L>OReeO%d<~iIdvz( zru?W=T0zEe#qzoH^!J3vw5j8Wsbn6+iK{;c0Ixa5p=`+`61Os%?ljWr0p zEIab~`5d~~t7gIcefK?AzmZ;^I{u8qD2-2=2A?#kY9*>>3S~@;Et^~EQXHxgX|*PG zs;Y_5?^6jRe&)>MOpRLbz-1TzSxy>PN=6)bE9tK|C^g zWOPsO`cE^SE&_G5rm8h)ml~W&$t!|Novq2pkjJHtr&3e?VJ7FN8HY^HU9+BlkjedS zN%7T85}SFYT3o%8v1#w(#yK%FJf_OSmKV4FamN1Pxo7^?bIYb%>u%bAA!XzB#}7`v zuuYpfyp#Fup4oRIuH757y#0$83b&d2haDX4fB1NyIIQc4wa;g7Zg8#5#5Xfr%)N2k zfnMdGpV6^(QtK7%YK)xFc5!x}G5FT)a5Z!}oyq@$41!rqsugjsvEL zUp&x0?~hRzmVZvVKhGj@O?bj(&xbAzj#$=NxyhyQ1OoHp`b$+%(^<3{<_uT6_eTVO1_mlTJpR~KY z?Xfc_=FZv0E1OKwdsZ|@{Hlldo701=@_f6zxKY3Rbl!={rGEFbZz?|pWI0`(^`P;b zi<@(O9;6@L+Q#0oa4EmrMp4m$*o9*kCDU#J1;=kGcy|-7iiY%?^6~wKQ;$4^a?ar+ z%iBdH>)g8GQYyVe%W4jk_`Mw+$Mwlbsei`IcIyAq=G>FpfHHwL>l+#yJvwmo;r`{1 zm#1p>)igGGJS(Gg@4iR-)3`i}BK>Naw(S>|5EdA2*&VqT`IM2R2mbexAf#jXdj$U5 zBTMJ#j`o)B@xdK6WAy%mF~9YYTP|h=Ty9(|Kzg_KMTZI5JxY1)+Y~uZb*}T{cJ_Xk zwXbS6$N!eyb4{NaeXnl#BWdZQ9v_xI*d25-KVVo{?Sh*}&o6IQ zoTRUK@Nv#}_aM=nw19q2=iE;YI%-nyvR#t2|8~K&b2r+qjo6=gecW>AY4SH;zdUrS zt5lw^^<7U_H~(15xJI`kDE}9)N_Y+?kM|ce?PKdc`+dZnqQ#ST54`#Lz!ZLs&qt5{ zvCnIx{;ik^EsBO@cUo<7$aLN2^jtkh&lxp)&)Ch+w5e|xWE6Pp%iH>0R}H=zo?5Ob z9g|w`hUKY0S~K^%r7dv1;3!z;xaZx>P6htfsJS>b?VZzTOX23iKlDeguWOWK)^nxD zlvrC6YJc|1n#Eh6mlhQId>po*Lp$B3yExO4iPU5O=xs9Cab?HB9#r(oLjT`6$AK7~2?)Rs!3v#W$7o=J& z{5EZL^PE$yKO8#$XUkHz*3+Ek_}gCH$uHQ@I_Y}jp|b78g0H=1wl~>jHb4I59dEPF zPkOy?{LJP@g5HHgYkE)F;nXnBY3Ie!BTC*)6O5jmxVq=-E0cmxEZJr>FMEBbkpUOE ze;j*%fLdh~VjUrfz5hzmuG{Wi7f*kwS?U?RSugs+q1E~&iSO-EZb6F zObIEzx~8au_mli<%S!cpI;5{Ox4|r;opv!^XZc&h1A??0m zm^X7t*A9BEvcA>Z((YNG(O*-axg3kQ;Ick2c~yhGvttT#9-J6;>*Z8~v@L!)Our^e ze%$QU$~Qi8{b%L+=J&#z%%4D|c)brO9$UNqo1CLjpW3uPY4thjVyNKD4yRpfoEyoe zEad*W)lriYwY@4VD2H$~B5!KdXj^oCAp;3d8v^J(C*x!u1{Y_jOs zlwBFcn@lE5^6x#!!*6AlGS~Eo)0l2PnQL-pt=PM$do3!k?V=_|&62&6goTeH3TLk@ z|MKXQ(~;+t`*X$ZCCR!CuK2FbZDilq?RmTD%LnhXUy+=1X~whVQ@d_hW9(kEckGB$ z-WJIPd(7)~%RHpJcUrKCMQs8nD>vT3oHi_qN7aRu( z(+fv$wdSt&yna4Ams*%br{B-p;L5~OS;rc8Y`kvAu!A@I<#+#Ky2_y>amh5_l8Gq~ zYApEXQd}@*NUzuCJAM0a;XXHQ8ZNy!d7e(It%0xJTTaazzth%kB}I1NeJJh;u#MkJ+86VVSTEZR;xC*E~LJ4a6_t9 zWLOXYX6PZPN8;cbDbY z9bF?LmH%x-?HW^gvIW;R9T>NEW5$XJsiSWtGEr`I=Z^5=FSzlT+ao?yY7g+ccBV zhJhm`V~*ch)Tq}8-f4Q+zH!^^rkpBYw4!OF<+-iXy>5>^nkpZ-=;)ZX=}GHvo*CLU z(o|G;GJSNN$FUygUs^QF_t>AC7;^Wp#q1uVn3uX+$Bx=VjUD_Z=ffY9l-6yVr+<8P zRKB*8{;(#g?QE_!Hkdm8Y=Tc4m-x@&(XFEw<$E+5R8r`XoYV7sZiGV6eQ$<=UAH}^ zVdLMHToz3=sWakm`*&fXy?VU}FUcBM?`eL=b?+xxbQo!{BYf=l```Q84nN#;jOh@^ z-b1G3$eS$Q5Zid?_4;$Y6(fwU9~s!Ack8Ryx?Pyrv5)!kv3Fg!e7bF!I(T^9MaeZr z9ux68FPinebx!93pEh}&LSLV>{9v{x%BA#uVUmP048Pmr`RmEFb<5EYYSioS#O~;% zSK~s9rv2Ic%z{B{>vfWjr=)ExzRPk}JnHTLtnuf1myMl|b$*qaG~`b0AWn_My(f?P z8{2-B8M@6hyzqQ=n*BT~O|My{^cZl{^y*-j5mA;A|C4eH)Z`aMA9ABBL{DEAl9~}t znOCk*kBi%2n&-20pck5kQ4MZA1iJ!CfIw3sqr?4vqd#duJXF^}fe(%+R$r_8BrH`!++i zN=AgrBua`Yk@X-Ijnv$;jGdII<_oR-&?uEZGj(6OoZj)Ew?O_f|S}?>*-{ z=ef7%xxatE&-~`E?{A*@zCN$_`^%q$d(mS>+IOKwRx_d13OS^5qV&Bz-O8+!(h2Rm z++}a0)G8WH@yH$W5`mhg`5fDgs@Dj5iWQZMUx}$^%^2w>)r>8j#s;t$W^tfAqr=Z$ zfT?Vtba-W24Z*nwVUSM2@-r&8RvJQy48xGr{7l8?4fHXN%g;7pxj6l0&!==497!mi z^xSPe9rUOO`PevX*#q`^6-U^+@LF%LXy#QTJ>-~0-g&|YHtgW)R?5(h{lO)vyvNM? z472V!+d%5$8hz9pR-1&O9)pi+^O#2-D<6GCjT13E^8l`AzNVEopby{gbG^Yf@d)N+ zT{+%U*%b23E!O2qytWa-NcT#voWbF7$h}<0U7SijD~sK};gb3$mgMNMLVCV=QLkN# zBr3q#`yO#y=aM^#+hT?5%<0kU%29Fks}E&B6%OtuH6|2Op_cdV>OWM!ZAR@K>q9|EKI(n)|cMBtMYI!VO@8RfBtPd8BBl+I@rJ`%- z$`f`vSuFCzyNIrw<0bIhgjc&1I8@&bX?U$k`%{{)#YAnQAldSc;)}z|;?z`u)MFAHYiiUJCG1fR_Ti^y{nuz)JyM`ak8Run+_R zcJ@2qrC*+#yokmz+|E6=-Naz?%qdoQvnXw6#iQy4bFOBUh;O zk!Py6Wu_Lp@5+vFN--m*Pg|4*OR-ka+q$Osp_pMf4Qw$#XZcp)rxHs@ z>$6QttZHGwe(Z_Chr6t~Vu?Dgve>AJZ702!dj;!XYRo&v2zVpSj5v}r&C@F5_8z1q z9Jn9(Ho^uW<01V!8lGsh#}-D7+-I^{H9v;i#d5g78+DY&X?p05$c%tTXGcE zn(kgqH`&G2cQzn8FHxa7+q6jQ{HgGF+T(lD?6RYs^q}P9I&H3!PziPYv8nxJQ|>rb za?I7i@;G9o4%NORVyX=~@*(o+FEmzA(vIh^ZOD&?=>yyYsX6oZwFgiVlvaFyM{Jtl z&(0f8@Xs=@Ivz+e&Y__oZdCqBPLgK_me6(l!^*wS^~KX=X%Bq`A*c5W%w? zv84?YACC{ebgjq7c;$+^1kMlQ=W|D+47AZXWc#Z~(&+8B3F@muiFb_ipwmgLyp+QY zG?n-V{t`&m6p(e6l{IE$HAX39NnRT~6mKn9?@@I^b&NBDVmK#Mup5=|wol5Ed^EKr z$bHaq8OL2@l}QjaKoCT?f5JW>5R(~+Dl^yQzhFk9V$3BWHdfHr%qWn9`{S10$b?32 zU>AfFb6>C5|G#EM@JLU+bkd|75mUI)f^{A~KVyWNVDDI-A>eZ0=}(!NQZs|b=xcTG zQoBiOw4nchsu(|W=J=VH>e^-y1UUgAZ`}y-tE?#?|1eF+0Hz6vT?5MBiwTKuN5DQoM5ZIm`voZccQT}|Ekb$ShuL_L z63kl_zB0Tc~MUqEug7wsISb)MGo~U5wu`L_!fbwr#N{HMv!FG zUa_h7d|31`u9d8F2%Yucu8ve--sZ-vm;+07(8s-I{WiC>ccE4trK#RrF6;t!+3+8S%$N0_77g5&15pf4pEyd?m!n__t|3Jyz|6Y zRh~1)Ags!-pH8cnEzaF0ARQWeyL?GEi#@;6I5aNg$B?boJBeZeb4t~nQY8@(mS$QD z&bzU&Ykc&vrJhb`Px+8qX?;TB(KDg`m8bAE?XV>HCG^n-Ey){$;wlRLY&uJOcrC2k zqkIv;h-7b_nPu(fu*QN{^)4nM!wn3U9$R+KLoyOppl40(m2*uteOTC3p@cmxu!6=MXg&=kMaa+&DFxl6ODE6s{7}qpF7t( z7Ej!9b2fG8!=d{|@^8JQR!#2-yq=ZtA;xJZ>T-#l2!;?W)F(3J{nFvCOwb6+Nnuza zF@I89(u6%o9GUOy-tchn(A{fol@(Vpw=cp9^2$)zjw7VR^LlyjjPJ4<5!vJ#&W=(e z9X6BD;8~La8wT!0rmMIAfEcAi=K9WsFbMIw**4m%Z1b5N7Nnkme%|S8{&>7E&VA9* z-+$^BB!Xx2@SWlG8{_%LOB%N3sF0Q$vSGnWg=O5U-6K(L^%sAfv9`N<1&o@)J-^!dt4W>(`aS{Ar|{JM6(MIvb4&9Yq^W(t7|=xSKcigHjOO}=^(Z*U zihT5qqdtFdM!6f1`v3p^9~^-Z@PpyWByJ*L2A~As1hfOb2lzGMCBO%OVSw>xNn94- zV!#~0O@LbgUO+40KEU??j{|-UI0ASNFbqikc@j4PkPEm5a1)>!;04?T*a~-Ts1k{{XWy8!SE!jbg$Q(eBCb9efbvYo#ErLpu=-`eThQyz;) z%IlvI8HZKJWX_yotixH5LEI*;iL2+zxV7AE$gASkb8e33HgdIGGt%j=idzm?!r3`h zOjaSZfLqE{ayKG%xmKo_<(31_I;~zQ!%-K9>qf2-*z1AYjodY?WC`jtAQYj65H0{6 z>prLiC)#R29TG-_mwH|Wu%!+zG#4Gq-2O7Rqc7zZ94HyL<=fVgza#wTt z_($UspHB0=CYp7~<48$84XK)M z$4NZV|BfL%u|7LS@r3@>VVH=1;%UJX>Ow~@o~d|F#S^4;l;KJBn((B0kKjr5cH>F) zPT)!PM)0J1rQFR}LzQeq)$r12xJ+ByluoJibTH0W!wYrc1;9doRK||=UxRoVMyd+` z?0_1yaSQ$}Nhm`SqY@<+Bc}$fP-&tjhNld*764Nj^2_mDfV>+~-cHTw%0=qZiqxk& z7{(G{sbuvR1A`s776R82fWGWPP`>yp@>J;-qjdo=E(TNI$SnenanSlQxHk4we~Ahe zH`S#4yHO%hma6sc*6L?~wgzxk3;wB+jM`g-Hb~Z1YI3z4@~Ms!P_iDhR-*hy)|Nh< z68@cBV3qI_QUfK$OUkahw2An82}b)m?ox0#{bgtiF~nkAiNpHQGxr%@%e?nlE_BPY z56zgt~1Y-*}6TYFo{`sSrA z_05!h3+md@^QGv!x~3N*rHs|={Pp*K_4IS+Tb_B8`x!U$f^_SzKFMucGRbm(J^D25 zweyyu7k2>GV;&mO6FVqvW_t+7nG(h>bltwLpS}A^=Jr1W*UjA(9Q1nn3$b6WMA~@l z*FSh_S=kdu{@T2_YT};oPRKC8zq%m59`EwG--P@HJo#>y@1sY%eCF+4zQTiDz6E&R ziDv_z|Aptncpk!YKb|9aeuC$WLtVa~`~tEW&&z()<+~No1o$t+AH;JX;5Z=Z$B?Ih zYQVPur~bRk_dK3E_CYp-79#bRc$NZ=fv(s0cKOcj?((exbOCw*e*uhtw#zpgP!0G# z;BWMN4tv}4Xd7?^@VS7)1gPBA<@@bpD!h#6?=_f&y!X*Y4)X8$RhO?8&zXSzNDqPT zY>dei#1{bmi8MFhkEr|B8yFuvGm!o=(yjnJYe&65booy2#=eUFymY+Fw;g5H?dbBI zK)wL@JKFjjc^4s#%6I>=%Qqe2t?yw!!?OzT1=6Sv!CipMfbYiuDnI!rUA}pMm4F`r zx&i%wqd)EP-Ga961Uv{JI$lDZ9cZ%<&;&XOAJKI#@K*zf21@%Q`uHT^5a1Gw^^2JI z-LH1}yqHT5;(Z6YeB1E6?O2!ZmEU#w-tO!2y@0WL3gt$r4&&%+xog?3k0Vd{P3>o|6zi>a^w#S5LA?M^Jvg?ecRI@^cd6-%eORwVyk;j+uEZ z^T|6PKi*FL>2=^I>)L`#KTmlz^V`RO)3g4Z$C64%pPcq;=1(t2d|pfC#R)jaC&afV zv|&!jPfFWqIDbIYI|(Y^v%o=|s6Lj1cod~)6QOs{0_c$Mmo z>7I~~zY^nLdIakM@O?lQ;EP_&E!OR?kXLtsx`woBw4Btx1U$79O>g}2Z8I!y|pV7VgxAAJT^@sRCjO^WRDhZ0?s*F z_!z=PTG*qb=V{c9&~_N%QmxExl&AB9He?8?f4g3oRrt>0l{ap2^j~z~&-dND;}X{-%x9XwXJv04@A$>^NA>aZGz1~FdWo2@1}YNv>Ch$DzcByJS2IN$@V)TL`7xfi zLXT;N9zi>@RXZirvHgrt>&q?08c8hSf?idlX$_08`z^svOu7+iEVQrE-(T*d*|)+-Bw#?t!;qGsFq*5zEQ2)4DEpQ z2=$a{MIR#juay-b9gF@*tD!cl(1TbRHJ8qci=kI<~?5f8_`D^ue|5y4O8>X5&N<&(}yZCcTq z!0=PP745D^yqV?ES(-4aHP#}h5hoxkdPBWbsixC(3yV|9J3yOCJCAmWPO>7j0Am9y zL)HbNohYU9YR_s}%aL)ql8qCMrD_)-J#Z>_6;d03?Q+E2z}JX4jRw&~DWrwbcv6qf z9H~Y|BXJMaBKv_=`;FCH$Y?4D2BK>Qn_c~UUlW~g(*I}#NT;RIx*dJBqJ<{ZC0hc~ zqqfn2r`lUeCA@0RI+To1AK}>uUtJw-=j?n%SmNiKa7V_QPIyZYr+J~VS98=6rm-UW zX8b?G7m5AIkM<)%Q)JxE)`Pl)@xF$e6Rl6PUCUO5+8 zwHO;Ql@G7sW=8RS^YN+yoCeB<*4T#HvY8? zzbXUnKud``5pheb|NjZU#J5z(#=BM<1$7?D0vO?Y8hw%qJme|KQ4h+~E^r$ti;S%* znQ3GqW2xfF*Uis2=Lf>7@*wd=#0sEdj^K^W&o{?Q*6G_Z-Vux~QEDUOnGb7Sq~C7L z%X&68BsFL+CCf5}Ns80%L_3{2GPHZB(p{}X+!Y%OnlC!Vho-_Fil+z93_LA(lIC$_ z3eLQEHsOhDJI;b9U7H=btjl)}rQ?}{Cx_>Gc?e~MZbuxp>wph^gHHI<^LH|xaB1Tmjq5iyTI+pl>YFsR za2WaHChhdCX<65w#9C2*U<>7}sSnaHv%dxFo9(`}yrX&jn)()89jwC$kVZz5lJ>-i zWq0@Soj&6`J8_O^#CVXNayhF%wNYqjKoB<7G*aj-TuK_3mTWQD?eeLaU~RXy*lZ4g*^kuF?J>N2%Of3W$6#;QT?0)$}`W`Ez)g@Xt);*fK{F8pm> z_yJw`JG$_9b>Rnf;ir>hIQQtnG#|89fR8f)K)5y+uCo->Ms-ll{GS%I3o40-q ze`BM2ee*h&LH2m$mDRTJ#cTMr8|oeFn}jBorp8q?Tsda9_V)T4*2Bggu@oncWht!5 z*MS4p;g>A1^jD|-n+~ok*Z$G&QpZusChZ^H1(joGqx7p-8r5|mjsDbIFgi!j4nrpb zlC8|_h*?$do%Ct9pcLt&ky2GCO=k#w&0=sN$vV;v=f%d4EtP1|rMb|49qVB%bqPw*nIeLTY~ggWiQuh5 zetewTCYq={IvY|ubWSDQ6eoN{JK-T(sXpxarPr-ncO6Lz@CN>-Tg&lhrNAcqapmP# z)zw{v0R9}9{$jww`Ze|IZd2{di`Q?6hHqKJuczcHNUca>v2eT40>W+*8W@h7ghn=z z#ZAp?*&Nn3uVM37e_OLq+pLzUZDc{T!vQ}Byo8ejF2Vz7`HG*^9HW4#txBB-JA^^GjIO3W68F%Sr(!rddk!_l!7Qf}&$ISy9`NChNlbmNm_5o3w1sdP8kXy;i8Wxw&=|D(TZ=#jUlxbt-42D}w|itH}(}U~M50 zwZ_VOaPL=Vy&Y3gH-%fhuC@{Krp~$n@@jpvbhKE}nDYLe5Ex)$5VeMV@%~maUb-gD- z_P-@bSN3ZOPaF>&O}dc)U1yBjS%-{U-PBNvRaM_e-6I}YvC6upVSS6xT(9;oF<+Ov zdi}b_wQxIYXlPk`JI#9p1My8`{l*omK!-ZF8{B;DZ4ERjF*2gf#FxRGS1ws{BaN-S zlv^#-@z&;gEU?D4jc8=`8KV zOKgbN)iz-qBE0o=L`2G*l>q8{lt0hf1#Wc<#=W*#9de9}jyW~HtasN64gA?hJcgf5 z+1cu=#K*{^eu4ejBoKXZYgSvVl+I&)uXn37Y#`pioNc&`%|0cr);NK})$`y>2e=F{ zckVoH{``5|r3haIxDqf8a0Q^X6=g2Nlj;E40aKwXPRA2fIMRMm9r`kdyH?Z(Tsi*= z4ppFeBTRswX^33G@;GjNlPWe4<%mxwqy9X=WW?tJ(R?69G{V!2pQ&t3jnIfyetRQi zbWKe&Nrbi7CJ=7on`h6&v%dB=Y=kv6YZ{uV`>c)|YLyzPso~+X840)Wb;83eXa0*XznP2uOX9xSKRt$fx!6DQCH^M= zBK58Rw@*L%f9AY;{@><+q|MQPN#F1+R$3{Nddbe|+!#{y%;2=aV1)<*)L< zN8!Q0{rw+9AAj=c@Mot^k9_{mFGm0MrNSj8rx;Sx(v2Bo#+t^BH(N3%oRgJ3@!XvA z&YzTf!G#xDCtrL?-ldmKnR@vZ)23fJr znW^=!WquEa@sSJ1jq9IRR=9rd>zSMHhR@5UyY{~HWN6h-ziYVRfs~W4)MWl?7p-CX zTi;M0a~44SmNI+s(j~E^rB(LISd3MP{#-&vNBo7@FISSjMT*qrWeOrx*rTlG1uFB~$cLsn;5=?J_UFTGZYYgmgneNU}LgmoK=GOLib8*-a@S1dQ^GUvQlNu;ujeNi>4mKsXCdIV+Ux zEY!egOjNQh2-$kt$6QK$H4YaN9nz50Q>~U)vjZW0b_A0;eerqGW{~NW1Y_WoV8D=E z4<;j_`K^Lb4HBxO*BfQC@Zi@3cs-$oXFq1Nsa-B{@mjbQOdm zrGmwV4%{>HV;wz3Ih>N6gJvQVhrwV3k8#LHe}=KR3{91Q_fS}Vo)X*!Zn@u$R--k7 zcN);*{(qg(qND(uE4bJoe;?!&gv1hqSYi@OjN+_L3}kSzMJ$;r2Ux{T89k{Y5|hH| zy(I?PkZN?3!0@yi{MU2*75;V;$B%KzJ;3RAn>eXtD#+6~#@}OcsvYuA;cB8ZRyn12 zq?YNf0>yTkzaV_BRARC9M(Vi4c8fZ1h4Y0EwP_nCrJ;lY9I2bNa80%JyA=ZsSgtYA z0q)3Ras$(JImU}tD}N3ao4oD|8WP9`OOl}@JPthLWXsy5IPx(2+KOc?MwO&-G%8XO zpNeG=PEj08{^)rh!+_E3O&dN3_JP^x|0%mMiBEURnNJc+^Z;p$5ipS@M)VkqaC$)T z&9sfQR;2a@$Djo0!YbFeNqM&_iAh|B^i0qTI;3 zt;$(i!mePu#ie8$!9X<4TQD##X-LU7A%W&kPmeMy=Y4c!fOKF>b%KzU0|^1R6+ z5arSNa=N6CF_c)A?FKLBlGD*YEX$rnIdNq*^; zASc^KK@$XNb}mQ?U&ush4l5>qh+cNgW5xJX`Bs#p-6XOo{RfN?h1TfOP~&;gxKwP6 ztN@TftCzUz{m4#mH5TGj@YDHD&&(`%XeYTmM~gsXwuk0;1QTMC(!>;Lwz@e;z120b zW!#+#;U32yv=fHk&4euZ74$g57oT^XjW3+C4ZIU9v78|V zXc7-#Sn#YK_y^cGvN1>>JLNR0w0OGw0@9^dst0z*mH{?J>EnWTX}&B~F0tAmRvX1? zlYGlgHg8*Na)=vN=mv}ygFj?&s6#9b`M*pS#zs~EZ3A)4qwN^3UX8`L-6OIj4g^aLy>$2s^>Va=28RC`?I0RZm!_uyV@Mn1*bzmE zGK01ad@S!ppCg0&=o4oQuF46Pm_kqoZNTaBPJMAa_D*>vhC>=!4yr9Q(pebk-n1oX z5DLjDq+WwjL55h8CqE9_7@HWdg3(hc4Jv`jsaPnH&xm%Kx(LRJ?j#Tqa)UNePlFSB z(;fo;_<@ZH3D66b;B>tu@VbzS4Q)eu_r&D%j#Y=Sy^2ZkdQ}D5_t%ed7@VMe)FJQ3 zP+(04LYuIQ_Z?D%Q6;+$%-yG(Wz?~#bxf?zeP`C8wYfT>T0v-Yn~_G$%b6bvkq9dF z_ot=et#>FdY**CDA&eR1|8)O|37XQ#L~O<*7xQNSh=b4Z&^nTzM57+klfuIuLK^;C zbn9o+o}~$8OnT1axU7|*U{q%5OJP{Csq?cvrfgco)4_pgbe3lrgA0S**3kcA!X4Diuun358K$Jh}>f z2W`(r>toeGHZ>i$rJ&961tBy#2BLZga%ua8f)d?FFuxVpr*en~T|s-UgSZeQCw(s6 zLYpy76PjY(1e$bt9hOcwP06Owlgh0~OO=-9ikaBPv!z$%t>~3hKDzlY9FA_HS=?x- zsqQLBTBL;Dd-(mT+%S^X=pQ9((fb3svXW=U}FBL7H|@Hd)mZ#ofd zgjUV)FwqiGK$5&umb-06;T&*eC-!hP%46{t;RL2z^d#D`Tt@2JQoCi06K&+l4k&-} z)7UwdFNXq%DNZfubBo5ahv<-TbE0hgJ`2pZ%qKIDr7{8$Y%kq2EtqwEC3=?9R{=H+ z8j2nAm#CC9UrIx~;B~i{Ra_9lfvAYihKbC5D)k6)r?AvNjs?8NW$wqGLQ=P}h~vEH zxF35Ok!9XY_hb7g(3`po4|?meH+45c^bUA$YBxgkCU|dZ2qAhO-2K>LgmCIoW`0IB zXy~)^Rar8&#Q&wC`7d-%IOLWLpHXu-4CCa20S|u^(?897=`51pdYONuuszp5Qba!` z?c;)_KlXo~y3yChoATw(TLImeBTit!*^jfb8&atVNn&>{lVd z9G>L1m7DlXjU~)`jcy!j!{KChOwhQC0p9PbV%jvjaq~gW%5kra1j`mB z+g>vJ?*}Sq))TN%PJ7iYWfi)`bN#)^r8xKDgiq__F)hHm3qo!&9X+BZ9nyv7y(tbf z{2@dQ8osVd?Wx+(A+-gyHQP%qSD+2^wD;YT$>tW#@eS-@c)_hJAcG7X>vs5)*fcr! zmx0I7u5M<}!4Y)xm#s)|1#8hhWZ-ZHKOL)8Q4n&df5Gz63WQKyv}14I#RL|u_i#o* z$Yvj%6gqvJ8jjWNHeih8k9Kg}PssFD@LN=*V}jd1f1XSFT)4_9+gY!DQy@$;5ex=K z-&Yg|V$;=(@lJ%TY8WdK!nUU1^NwEQN?a%yzWZ& zFjYD1$6jaH+;EMG0=R9K6>ERl?l${W}Wp4VzmMN`TiA`D#cI7U=Wmxko=L`2WP z2IR;1jqGu>EfP;+D~Ir;O^rAf>+2WjN5bSuON~;}fe(^X4)PgnPn<30S4+hP#M7m6 zi-Q`_s_TGZkT%T2Qh-J#Yd8@2`J~bHk$2V}B0tJZJ9w z4pOCgBpy53ev^craVXXH6epBOX&(9>g+soGRt{Mz3#9S31HzRR%G(YxP5UFS5VKSG`D}wrRKnoL4!ki zTVzpTl8Rpz8Frzi*ZwpczPCZK_fm(P&DH=qit&f@GK9;t1FwzvM=mmdoBWd<6+!zx zuhk)s$8b1g;ZyMDVuSy17LpzELACj6Hc?B|$d3vy;gq!MQ8fbMICCI~ zX2TOTnm&V6fe?CMqsia)G-uv6A0;IFE`R+lPD~jf>mIV%K9{G4>7+A|gD^8iMHlP! zAh0jaev0)1Q;*kBygbAC$@yH#%`-+Z7|4Hkv#q+WFAh~*au)Pg1WVvY$_$N zPSO4mQ4dK%IlalW_CA(h!|8ST@_C$r<2H<;&F*0&gi~>RM-z!6)d|}utM$XgS~Xu= zOKYoMs|Ds&+q(Q~YiVs=m00UjO!-+U#DJ-X=-!g)Xd@ImOGC<354`_(y+lG`rjJBy z1ipvQW+U(q=D-?SE*IL3=FXSEP=$7rx$^)5P}OJAGKVtGcHOsvtz2?JpEvndsrU2; z<_8X(erN2F3i*ov0$Q4t(P}_bk zk}t$_`SOBLp&fgJd3$IDDbMljMkg1($lqq+`0Gd&&{+(zpFx^}2Klex+o;{}^m~&| zZT`zA%E&!6!7bEwwRX)BFPgh^Cqvh0eB0>vQ)Wkj*v(eL&l z`h8&-zw*6t&b~q;P|VX8{VC_cBC& z8Phuop7F~W=FYJQl$M%1doj&des(=d1+XQf&C&PKrYhb2p=4~NBaAxwl`}C7(jE%J zaD9i{{{j`}g6zT1QgvCE@`ib@+5h=UAsgZ(Uog|jYP`eWlMMBBB%FZ=!q6Q_+6%8q zK^g8 z_DrLBZ)Y1DdU?+$m}lv2{|BTScn!;^z4Us&F>R5JRc!5*7}FFe((Eb~vo{4zP|tCS zrsK9Wq#r8Ys*&>`I3j$GH%aSh6~y3Gw9tkyl^IU??UQIVe6F&G_*7%7DcDJDy{($! z%hatlNRYmmeGgK$d*#L8{7$6D)CXAcNY!gI7QBmL|059Evs_|u2qAHMKl?q&er5U% z?82}79J&o+J~eN93fD~obMYh1BJJ5j-zIbQ22P+9W|>poI(^(j-z}T;u4{qv7Dn7i z8{^x^l2{Wixsl-toHB1+4K%de&7FIZUvSF1(k1RWMy>97ll>m2wx0&0kse_VyoNm@ zg2j&R1N&@=b-@)3vU-6tYLCaro{1DH>)Z&Y_ZTA+J$@a27x1e{p;7LG{!9gai2?&7 zuv4fx^5aPN&==aEaj9ns*o#;VE6{~ZeIq)(FDO_dYtJN`35s86rAi^qR_<}6v5V!B6@!TGw@f^T* z77S7;X-M2o&$#SkgWxN)a|qZ6Ost74p{{T{%`m^xlLkQq-X^{Y2A^V;)!*GL{4{>$ z3o$IVL*{^uMoJ|_*+Zq2>_@Q%Y=`&^|41^rPx%aqd@EXwOvnlJb>RMgLA_e(lArlU zWcJ^K1T3^$%$?XtxcziSabj($gb>@xJAnf%G2e3@^5V0$sacm4yjxY}tfFPFtH)8> z#N2@&pos_-y=Yh(qFH|ysp^RTD>`2;FM39;I^-Xa0ys2q0tEZpvN&PVS=u*I6UQMc zlUHDKP4Bg5(PHtkc|tvp0a1q>hQjEOD+f@PF%h&xmwbJcj;nRlbu;Ne)J;;UyIZ(X zQ~Sw6HxKqo6$fI<#pFk!kMyAl4cA57121&K{*yw&+EBmj8=nbLTBc z0nrm_1uj6iN-pguAviR!gL2@ypthj4Cw~BXX%^HdrXT%t$lqhB=FVhP@xMU41PVUG z7-$88K{kb}Y3koYavaKUqq15+3_Omi^7M~rIAK{hZVu1}QOH)Cx$|)rrXuD5c6-bv zO|uv{!hVn9S8YxV9!413Cq3lbG2jJ#YMK~iWrI}KcEB9KWg=LV72AtqOgSkAGu$oM zbi;jBbgbb;p$&H{mKhDHuT9N#$pV%IOTp%ReVaM(94VhQnkZQg?E6Ve50|Sc;Ub6p zKE(ZUb%lhl(uOD>1)cJ5DJPnii?pinM-KVF)e1x}#8xVjwOap_kSffcxYb>5>*2>Zr6cm857ln))9Hq93V4BCK4oIh+69dx zb`!;qja)s=EI1|giUrI@9A^YFS+PBR2m_gZdouc;7$MaK3Nqw61uN)Wz%)`$($Nc2ATYL+fp%;9c7nt@miD^0heNE{FDjY7kDHaB7Jt7O3zJ zGNlm|cX;n!=C%b!QOX<;qh+L53Rjuf6+Kw<4b-5aq|y%tnYTUA&+DzcjyGLY~x=%LfNW)w6B@=!gz_eI7XyJIE|Oqm77 z)!3A+)=gQiq)r*#v0&21LxUjR;|pohnn{fS-9DPMPl;J5^7Yq;%*v#{K7@L)c`ysR zQQX|I3j}Bv7F_WrS3#E^g4hwa53=78{3_X{suqVZ&bKDH|6L+&fKL7{CzRWT$R=?t zq|3iWR`@R1freSdBFe!e@qdXX&1HpyB}ulPmh}DX_)$h`G0MviL6{V7ry&0!Dp0`b zs`92N*>g|}yU>rNhZ#je7OBCe8`LteBT?-Y|01#?P0vIP%q%jXYWVELtkYZlB+Ci&o(WQ>dV=)jR@5=mt~J5p4&;K>i8aP&;0uM!2wZWZh#tBUb<~I&rqye-{!qLT4Fc zkr9wn$cQ2qVZD6@g~&vUrB5vKHmHw3_!jgPmK%lf>XcW=7vbO%&X(*JSk2N^H^X$% z$UKAM&$Sw_nB*ch_j>aRWq~zJ@}*~FRaB6%xqbv!<YE9wT%yhuncOI85TQhVK4tBf@&`#qcW(ocNsd4=RYByoZQqEGyso7AxNw z63$m!M`yLh)g$gPuzQeI*UtVaA@9Y@-Qu=XLP@e~TPooTK1}g&TJT|NM8zc;D?N|H z*hy|ck=~Jde?5(wQ7u{N*%mE9c^6P#kj(}g4aws1p}^?_(90BIl6h}m1y~#MvBE*; zk5r{{I!v*Z`QeF)=~?hitIUy(tF-6_HFigEWD6|^y^Di-FHU#j@(-90h7wf@Ho+9< zge^41<)aDn`w{pZUL_JdC$pG}m4g^901J3mbsdv8F;R7XY+uEX?FwW0!^qOfbp zGVBAAFhV!njU$WMS3Y4e;v{t-UR=?;0$W@rHVdsQzR4Ad9C z#jG9i4!vZPg)t0D^$?#2BO`wi-RD`hra8TsbQ8i^@V)^f{O$i#xzV>yOs4is7apYE*H+N=%XxKAtelj2QSa&$G({n1&G_#gPpM0SYBI|7A1ccvovf`tzv})#1DR z>qcQ^r$v{YMWm+Fw(vaD$f~9B!KEYcseqRYi6OM%vq|<5TnzK5UIg#->9oo~Q*yA} zSOFJ!wa`Qmku0RU>GFA-MuKHkc`w zkhjH1f*_y;u4mo*?8cvVpkU%_0yKB7fq1%Z0CV;cA4&zLZshHh(F_q3q(S6QqL9GA(Blj%BLPJl39ib*!h9>F#~D&m)+p z5Q(ChEie#yuAWHp0|KE7fw{USeytMc!WmIpm{SWvPHCgDD108>flA}y-bB)j*k0ZY zX-3}e8%@n0d_9)S2?y?PCxNwc8ItkRjalR>g}eM^AVNdaPiW%A>!6ixOCHCRyS#?y z6)d|duM)%^Ep(u_3X}mqvGqt24^QTSdl6QIet3ydaTl~BTQ4?+eg}_B<42K3E?JM@ z33sE(lnxg##3)qQHcEva&!3BgH-m9PK z6D=(9btFpB;Hd*e{JB7difQ2#Dj>nv0d@O?&-|g38h`)j3OzBj7lLFepF`y*Xv7<% zO-E6?3uB2 zr`?5%Xc!Ji?_nR2e}jB%E2K6rUoMqHk`IdI5EAWn2v8CP*!AXP=159X0V4kZk$+%< z+h2G$U5<@Fi{!%T(vfN9#*}xIa%=@g;V>i|c5A7Zoqwxn1$)3Nbb3NIaLf1p9+q{S z;SWuF51Xm&_=Yj6tLm3;qB&f!okx_n4J|L|n_NBuH#rdFV&oDj@E~4}-UJur2r0ou zAZ5S6NK;xc1yQ{J3~8!+6YkF?1QaOO7`J|T@P{rZ#6~4#3jrE zGRyF~=9;z}{4J)Du5jrWFDmz>l9W%p0zMl8?tg%wg7yWt;G_Vz{P#Ct17n^MFjfxI zKpp`J(yXWH)@8)I%%!~Ly%nq3q`U>=Ept;kOaQO|s_EI%qzlZKfAMmf)=$=SD~^ zymdo`WY!#pX_uY~B>F)#;K=&~Lq$1xtz?!9`Z@We)j9!gbgJ zkyJxPf+cR`lsM!+<0Rpo9o&Mq1309(y|W$i1<|qv?!uB1-fG@kQsUU$a{^_Yj^MYT z{XzXZjn99n7{_%}id$Ti2hS?#jikiHjV0R!rOz2RF_C6du9Zt+4_i(~Y;2gzHj-<)J=y72mj2`7E2~*sd?z`yZdOc!r zp9)ZEci|p-@K>7mvf2+t3q1MlpG`JP|BSbw9EBb2>n8gl05U z@hr79?MQ{fD3pEd_Tr&q)B>#F)IuC?--Qwzx2ew`;)1>7}~p=qR?AWl+FhsXN= z&NMAj)o?a3)hxmQ=!L8{72N3d)OyGa- zA2|n`a_A%IS>|uyy+pPAz)x6cxUj^C%Usg6_zZMMRZyXaLnZ3OiJo+D)j+eTfm z>rB8^)Ye~7BHj-cW@u zOdndG+b}fLUGvsrtSe~)9J5YB0|$z&upcuNzEU=TZxkrBCki8XoXSfPEHu`E|DxTO zQLX9J5J=P2(s9WuV^4_Yz!G_qsnkr*(_26Mn0a;LBZs+*A-=%zSv3C^gbUj+?ddFl z$@~)Y8$bUKA|*EeYY=12#^(PqHW=FE=U{T~S;C*^A2IS5_(#U#eVEV?=4fNfed$~6 zgW;RqQaYw|Fnj}XE?cwqL2MHRh3WiNy8c8>R&?YWScg_=!l9MXgm1h|N(T<&xX8H2 zc+EnR$Go*4RH^u&kkjo9R1V^bIbXpQFHn*4Tqz^CbhHw4o(tmvW|1~3l`r({uml!o zHkanD0Tdw4c7xU6lWsrBXFH&jpTy}go5K=e$Go-z1*guF<9IrJp3D$Z3)==^oTt^H zb^uHRx^1Uhy(-N*&d6e%(Qy{exK%e^;knTW2+`a7!UfSB?DJXra;yS`rut$x z-U;kGn4@#B-aN=9+|8K$R^lVyV0)y`@gCd*-Ys`Z2Xy7o;Gyh<7(&tf4+^GDt(=of7LZ)V?`t z3*C3Y^}t;ipw99a6-7eX-5Yf2x2cPERcv@L05o*k@c0(^e?d_LKj%dm_0&cRU!b(+ zWT_WckB4bkD`D=!KrW{K-Qi;=VH-@P?JQdpopUpfgm26Uc{UfP(E6HvQ zkH^8&GZmYAagtBm}3_4GWKEEhxJx0$I7JW_;s`0w;?%UEx6IL&JaC*w66 z$y^0THoWSOl^MPx2+u?^X)&pXmkNy1JYp^WaxbppoRq7rb|S&7#%ar}Qr?C!N*E5O zfLhz9Jl>^zTV&@uD4B9Ov|+e#vD#W`sYg4iOUfDy!0muL0H6Bt|1sg&3czQKl9Q8D zQ-#Z% z!KMAtDQAZGNs_%^5l*m)RZa65tgy_9>B!QzrEfUqs;~>+gw-#M&4b-w!uavRV4299 zZ8c=BxV;X)bbSozb}e>E#x)N4&F68Pz`c$j2Ln{X;dvTN=uN8foQS?`4JMr+v0Pli zgj8k>cS}9+5cQx+;f3bF7ib)p9_BzF0^Xuvpp|ebd#Gt8dnRVb^EmMC@4(~)1EWaA zEUdzwMM(D_&SwrqY8L7E9oVjdOMqE?p_G2N zm$6?5`(^3d$(>%@zLNbC<+9XEUO9rJO8pD6{!mQWLp9V_b~LPP808~9bcIUY63#E& zPDq3aDh;?_r*`G5P=a+fO102Q{rt}1Gy8dnUF$f`k^+j>$Frs_tm&M8+qB-)569nv zJ~$bSVdw1u+JI?hM5FDU$k~Iuatg;H2IE7=08aSOAY0%uUv3OvB+Z9accT9u+|5{U zHh{B1(=(ck9YdD*7E|+y@RHz03w`5ehX0TSH{wP*X=A!6$?Wv7yOoV5#f5X65!v)U z6umrep%JCICwq^D%^Q6P(xP0v6b1aWBZj-z&jAD2o`z2|x1F5GeK>5N(1_9`k>Z>{hoJ97V=ySg5dl zl$rOQW>>J-z9_kZyuFU9`u`+PF8&j|V1UwH4taVzZ6u}pX5e<(8>e~=;qq*dL@V>4f`et`uqS|%gjD7asv^|QQq0*b2!7~0sQ;vZf3Q@q8Nu-^ zOIn&kb3`*Eww(~|hsE-f;?m<}x4$bCmA3=MP>_=UsFN$sbEUQ$_I>@q+6kHn8_AaXNb0m8q7ee%NLjJ*O;*iVs z5!;2_QfZE~^rTxHgV6cX(&O-)Mno#_SN%ltiNF&To>C$Zqo6PgvSdGj^VI}JI4t2z zpvqJBt_qbti9?E7S{7k8VrPBxHe3#Y?2|;>AkhYw8lp{R$&6&VQpp3)_zKc{GB@>F2Oq zSwqA4J}&=QF^n6s(0Cc5IxB-+Rs@xJWSor4&_`%IBP?w1*GG=(BS&>to*u!*M@D2u}8;M@!t zfah+85Kyk)IMbW#s+4~Tyy{6PPi!~R>x%{)&<(}3vfR>Gx;ZO>Sf`6ux;%z}|173& z!M}qp3Qf|-Ff{V>-M0B~q=gTMdc4Ga64Wq?k^KmV2ylxUr!yk7yliMmu$ar=h7~IO zXHwGw2+>7_UMs55_O7@y_yVv!qy!n8Z~kdGa4gS-};W z98mpzxOH*CF#>u9dm$}+2`qD?M*6-6?SJ&GI3Ax!9IbLO^FXEeV^2QDS#=kK;F67M+v*XVuL{U5b z-)Y=Raj%k5Ab<2O4ciFp@UV2Ht9=hoh2Bm!(&0)BAMVH) zCA3q%L)wLm#0O-!fS0?L(3< z#Ek7GW>Td~`fw@QpiS!qM3|T}4*Z&eaZ0v*gskvyI>I@u6K^oO!Y@$-7xA=v;l7J# z4IhnJ;q_`HoAA7hL7Gg` z&Y7<=-2}2lIs_-H!fM>l&}%O+C3MmqiL^M^_B;MYsU#=Go~6#{bSYn4H4M|!7>#{J z0UidBAH(u1AJ84QcB&fq7S&&Bl&-0&a8xQzv=`nOw4c!COtKHrl;AsIqcCPsS z&p-}VwAy-PPv{NLjMa(DQcbNBDfdM-Jxt<-L$TS3?g&s@m1pP{Qd`_xMnJhvKiV>! z5T~70pHB>{kCVL8$H~V{AK#h~hsh!?zau_g(yFUm(iDpX7dzxFxPX;P=Ef4S0&r+Z zbIQ$N3;p+MRQ;d7k{x2F;6e%?a(WYD&AfL=#N8b#;o~AENAMP_{1$G?-8fjXyY+a> z?%A*$KRcEO&W_~(Hdb)PYi_Z0d_iAtk%9iV>fR#bHYm_;(P0uxEn;bwSehf2=BoDV zpBzI2m?hY+#r6iV-5|DSiS0RJJI+?t;Nmi|eJ=ZMn%LeXwzrDRR3`4HQ5E;oSd05< z2E_erAK6c{CGMv=6!+82iu-B4MdrvYZ8?dszw2rIhW!0s_>ZJ`jUr1F_sd9BvQK~( zwZMzwmO&(Gb^3qlKQdL^PkW=-&Wro|k)_tG>D@Af2!|c3cgt=BUdCVV7I-^S64z7W zOTt*|O!erhY-GG{6iXU<({|y%{O&EuYh{nA%h+Rj|M`@d-_0H~cd*Btt?W_cV~>T) z*rU|K9%ViZGuqKPvcb$xYYqAZz9FORRunxA+CDAb2s=2VXzdAlD$Q_c^GuYWGI*w|1mt=Tf~k#%GDSjFr^m~3I=n0au^X1kmcEj zDS+V`Ngbe>xjnO67rAU%%(e{Iaf>P;6Fu#4I)FoP zE%^AqFQ_Ls`5Tg}uVeTR>KMPK4h9?E21#EtSn2d~#5WmFTIXjg$e3~~$(L_1DOBuC zB<2^H!_k31rAAo8`afh1>sOCK6nR<%dC~t6dC^xRr)w3uCT8ce@HyabWp_9FsJQ{8 zY3?%YnADvFhK_q3Aj0XioriH2H%d1ij~gAeO8nw5`nS>+04K4i;8Tmm+bxa$9aQXJ zx=B%s#e4ngq=R~h)c0qdE7&#&>jskyEytgbW(`7evTqh-1nt8PrR6w2JB%MDRY+d) zInt~ll%X1snUF2%RFI^pePo(_2u1`b)YC}P2t)8gXO;U=LA~Z>*9q@b(eXB+(^3Zw z>*-_uelWAX3nWtTza4Vi0oibtY^EEWOLzLp2GGet;Q8;T;+AT>D3d)CO#_2ER{zkA zRpjIM5!|U~!L3R&#*74Y_Ow4JsY@?htmWm zB%5q|hnX!+TAKBUujHvh;$j9l){qPxN~=3+wPjcn_168Z12mowX02#DgMPADI;*tG0l@LpE@WRF`WV00bs^{-TNAU`Dj%tKq-}>KR z#Z?{V85auS3bJd>dkQfxK41GbLk913+`Zrps2i-_ zQ7W6g3z`1Kxk)Qvb-?F#tOc(ZE;R|~(bvoRzZ6SyrL+p^6%ki&&K#JZ!m14>2OLFq zE&Zy2PKY;|@DdArgBNGXZ^DNHU7;(KTxCNRyiUBMSOwG^W_|!?1bpzS-2g*e{8+;P zhx-bH)SgAuW>XiXBlPZ%Q83`P=MwT}Tx@W7;R+l!X%|C-hO%z)SjQ?!Zr?(SbPwyC&;M z%o?~On#Vf#fIey+xLqI38fex>4FfkuqD%&C9wd1d+o8ap;72%a1Y2<&p<@F1Y``r8 zF+`YuBaSVR4|_iH7`OqioA%I`MK35LX{=xWjJ3gm{N<=irbfD-!QLZ0OvLq<;a*+zUE*(fIyRf%}eGu4la z%ux7}C&ZEJ*J_4rgiR3l2XGR?H-BI;UX&x&WWmJb#`oe(w?@ALhZh+S7|h?r$6Ci8 zaL7Y9(-xO5a3nyW?&SB(nf z%LT=UwOyuuX7WJ{KkQkBH974YCA^}mx=;>5yhFvR$iiJ%B};>Y2fZXHEhRgdat-qG zkvAFJC_esyB>6A!?V$JA$YT%}ov?3VnZnJCS{!06LhTw+r$ND6jrL*u7dW;>Ij!4Z zX#!E=BD$nkNuzUb!rOs(LF{Atu;=%Vfnf8C2M!EaT+;qGS)?!JRq_542u^!7TMYVeJhS2m z@Hu(P!S<86G;j7@WIvw;j#QN;>@%b+DbL906%1UY3LUq-&u3S$eEJY6DP>ULNNJv>M`1OWqIz{V}kQNMD`4iXP6O4Lrly{a13hlvEI z7cFC&lm!|EG^q*Dq$YFS2F}nCQ&Q+f(#?ZJrCvhfz3es^f*&F=$S@Aj=c>R$!Ef(E zQGX%a9>nrT%>lAxOS4XZL~kauESbFH=xOe}A369cYlU|u1mkfwb^FAC4=dO$*>}UA zywm)QeJ`F{@O)adZ^dJeXy1m%Got+g$-bjEz@xMkctranuz97PK8}F2s2iQS5J->E zG{XOdzs!3pZhXkw)v0Xk##gqcNwbP*8s3VOB2!no?0Xou2W5B%OfBq^aJ)ka^(C-J z)`mJp$8bM5{RKwfU*ExbPQYj+vTY&AC_&MaXhX6;B$Yqvkbej*rg{Z4Bh|=;l0-Ef zngvFE^8q^7$*+A*uXM(nDM%GmXG`Iy!O4@(r_zEf=l(&o%jOL)qBCECO=Dca1u))I zjCqOZ506Z%R5qN@#$%-5b=yC+tH1D-Qb`@I1kcA?DtNd3eww<93K!mUS2?iCv;x{A zYSIWWLty;YMoi%U_EyxQ7m1UUjZ5GlhP_f+w8X!Yl25}|skhGM83o0lO?`VtzdM2n z)wAc9QfVC&tug-9bsST^nMp=plpUtn(KQLTsc3D3)*2lS`CO@FiF&Yw{0_FGO;fJs zNwF!1^13v7Se{0YbUjY&<0W%&%i|!{fn$0_u1e!sZ3$Xz$0+k&U^r&Ipr*GlDjN5?&{e}Y7tle+9ng#TF zurv6pljzNCdq$B1u)Ba|7HKEKBU|U={6mcsW(nbOSAAFwrGT0jI$Io9}-)3 zC&Msxvm4--+-#I84Gw1|HFu|W@`$#G zP4rYrRx+RG!v8;pSM%@{fQUx``R28oU=_hl=~&SlfsqYMa<@ns%PE^uG^fn)$ONCX<8R_B|d_0cfe1>K7vooR+}HPkBv2r ztuGe2&ptMsd`;+#7q0U3A`nXAC*&w&KS6K!sY0-Vgy1DyuU#gSR!=%duUB4&M0muz zN$Aa>0wd-0-xaJA+_*1G_K#FitVLLcn880%N->Xc6JlxpktG!4g}I2~?p>=l12O!k z2W6DkAXsrHXu3`~uL`bgUe2=`Y_IxV_oOEcJcC*EtVEJiKK)nCMbeD@M+QS0K$ znC`2X1g(}27D0kW4$P#9m6XP23>T6Vamb7RfL&$r)arry@5Fh-O2w_j87MTLZr4W)83Jz9wI$UbvT2Rp;+X)l@W-zNxe~1XG7fo6t#ChDUEom z1bGxvrE-)iq;^m$n?JSb4BXXeaVDqLx+HhCy7$vTOHHLv1YIK~YBJOSAqpYsP z|4C+&3@~8^2^a(evdt=(PQ^(9utgkS<{HK0XWs78x=<4_HP5FloL-*cat$s`Qj-QVZ8|34ox&-2{Z zbKlNA_ndRjc?3|hnEA_OC zck8fK!jS6TxY!zMvAu9nyvxFxioXGR53;JSS{Mcu7Z2*3INhB=nh03T2T&G$=wN<= zd(NnpD9mQ)h%s|{K-`9=$rdtrlE@s%j7yKWF&-noC3l?Rf|K@Ks( zNSpvniO!T`kp?IEwwx3(&!-(kS?ob%d&%_4De)JdHh!eJz-6W#`}6qS=*Rn}3?}=M z${C#Q^8aSKX{Sv$iP>e266q#Gz&_}TF6X~fj{-w5J+ZTEzKBePDswsNDq?k2su!Lish_C*z8lr^LvL&XSzQ zLW^?bf(pDTkHuiJj2BqEso&nmm~%BRr-H2-lRiFQr8!ZCSnOoHC6+|i&J^-@sxV)) z&UPR-pr5T&88omiZ=xgxIs+eKN->at8Wf0Fro#4A|rY+K4znrU;tyI$hC~<*W4Rr zH#MR~?nZ5Rqs-Y|FN0F%imWweqy_Gh?dF@j1+(FOV?2ufq-jebaUwUHnUU)HsNAs( z%&U)z70p%G))(P{F$q&_NF!Gi^A2}b}i4mTH8&nozDu2$ticFE4= zVx>efHHF>I*o=tpJ|&TBOjB^`(N-t=MF<{_wx$IpnTF;gAw!cX@4P`&j_NyXdGNQG z`hqeeXABA(^Ay1Ag_S&tq@zI??-9`szC!No-Zx}P7 ziH@X`IAQLIC@!o$M)~3?$B3bk$oN<&`-hxyd~)pJR6fQbct*n|+RCjmSUP+7frHe8 zVG7I#^P+KMZam@IHD;rP;=6-ixYSzyR^hNh!w-mKpBwzI3lrxdd6(RB@q#;y^2r@W z$)_HYC|v}@VCpDL+Y(5L7B=P*UhF$gR%_s5q_Bp8v?HzWNG1+Lq{uSY5<*8aAiw(t1g2e2{*r{xVvhR@`nnrSw=P+=Rq(eO>2r4CHzhmhLGq zmFq@_H$Fi{v5r1k$F13!0^j_nwL$1pnw+T19;<7HuFE-4*Wy%l#oGTARbdT}UYeF7 zm5c$0C|8x5sFi-XSaBBORK|C-NHSW;T;cE3LwttWtJz*>nmSl`OU7f8AbuFc2=ZX^ z73GoG?GCvP3g-GTb`-*8YhfW2K z?B}vNxF+Dk$x*c8relPr+nD_#IQLRuxxh=psUay4o!hLmE zk8?Nf5ZJT0l0fFK%5-+!plugu)`A3%Go3~3g^sW6?E-b_cEzxUbc%&b=@e;V9PMR= zey%wObhZc#D*Z0TfsO!h*zVWsgR!thF0$UU=s}Yk&df3mUhfV5r(#%ytl@u_gCI0{FU`Hq9FI~ETBg0GT{y>BZk-_IbF}T! zSt@d3xYGd#tWl9Oys?wtBx#VARQQF3BvJtJe`?RWtAsoG1m4U6AUDLk#qWDnVqK`~ zu-qWjF2{Y3In!0Jt+hA3sMNI@dwZ^M&fTF34;N?gaP~l}**X|ifUPkI$pJ8rjdO5u z8byW6Br>&!%n7G@$b>J>-RE6_^w4mq#G-N*tKfFXM9vJ}li2>)@1+;^MSAE;oH9htf^59LQa$(=p`tmSbu( zp6d50Q)%R$?4qKqx^`OJtH}2zi+(}OtH`75SX!JnNkH3m7hj0&ET0qujzlJ$#*s+u za^Aq{@q846%3N@`>6UiL8FRi1pSbIBFgLMFN0#K8tm|EYjH2~9l0Qe^ z*^rQBl>`OKIdrB4=P-saw={2^>sZ%w*=$Xr`QB~&VASGlA;){2-GPl-SFSlb*MTEW zoxDPwEZ}e`cbo!~jEL*{@9h?58McKv&}7OU8}&`TS%Avn#F%qi)Md`jf=1EerN~EG z4M&qWbiQsMK$gXTe4m4nZr|C_;ACB7z7(0zS{H=?iock`^W#>cCbkm=T7EEwAz9gG3+Rf{7;olg?bI=ZJFZ!|U z4nfX-p|2x-oPsf@2T5iece@*FPFCG^95A^B>TJ&cWz6eUIjb`{kYC z1-UnH4Xzy35B7MrhwzUD1K%Jb3Yc2xrE~Gn9=x=f9Z@VMHck=X$|s2a9gz9V*8owy z^==$EcjIL&iUfdWXX_{F=XD<42B0;R&@9IuDdyHx#grr!6QMyAbJREhIL^RVVjW_> zMyy^hXG5xo@5(7i-QJKc@nl$R|sJnx0h?5^aiIo;~KhBk?6vC{z! z%@QsbKjq^|9e!M1AC_=OEd0j<>6;{6oY6|6y9UCS^ICs=7!mG9NfT?D%o+_+bDGuT z4fhgRBAFX`X~xQuE@@3X^bQHlh=qQO4~!2>>S}pCUMYH(dPeGk%XQ$S!GS^+H*eGs z2G5O6k@#@=)YAQwqX#Q+iPo*NfF4}L7ofNL(leZ zIG*lqe3R^_4DAN^65WpxW-%m30MN;E#yXOKOa};U6hi8kB|1yc{PHGf6HDQ?*8L4_nrrU)gL^Y;-^LRMTGaI)xo|q*lja`0V^>^v$S`PgL!mV7P0)4od*- zBt8!afjK_3$b*7briFW8W{W*Igx9$A`>wljG4;XM(SmP6R=OLnvqH4+n-IUd(Gr%elZ`wKBn;i>Qkq~9yzjGy!sWg+G?k%$IphMqhqkSgwL_vtZvNqr57I6f)*{Tfo|eVFgJu> zj_};qP5er+k)b@7!ykL@8>-|JG7053%FL|vFQt`nrz;76_nMj?BF@n_VX~S>hy%S* zdMUBxd(dW8`%%;y%s@pR2sa1Hi)d@JXK2+)oh}&@3Lz!RrTLiEPokuRIv|5j-N_j! ziJH=wNY2c1?{!@t_ss3ES)~`Z(Z!)@a#cuu1T7l7H~$+#HLlePGh?7hV~8pQ*@?7s zku!3px!6GcAhmMkxve5>*weL&L#MTmZ5}XFY z(ro$IjFqeYYxRUK^XNX-M~Lds9FMx{yBa`F^w}ufz;&oiqY~c)blpmO(V0osS~3nU z7Y;jSBaeFfx#bVLpgj;^X5e1+yG6mAfPY!h$`W^DCQBEu0oX9?vAEDy@Bx{5v!;;8 zZ(chYO3l3134#unw^aD>*6=h_vZJ(R3aPYi;kl$Wuji6IR$(f12*W^u!br9Dv9?-Q zO*q(Mo;>`hIm-!Lp;?!+VT5Kej=iB-SfnUgIXxg35A5a~XLRK>7G5*8gl0`J=Q!%W z?TEe%j<{>GEi@}9cxI*l0NO?2l~>oEU!~SvK@+xnLMtbmvnES53+}tYJRDwkA5~qO z13Y5{+-0FzCCiW?WQ!C{P2GmJBOwD&9xYlqg~bh2(5h+6%vmMfvj;7!|J@#a@&A(^ zZTUMrdT^je=TH5wdQ`w2+@lw^{?B?;4yj|nLLHecAQJ9mH}FW!u;5};Z0++FV|DNr zV}PS36c3E^m}NqzVn%=+G}b`wwcp=KefV|7w#i^2uwcPtq2uV=ELLzbk7W?h9c8jd zwx~P#9cX~|D*rlmGX@Z|H2EdwRQz0i?wKi1?|$EVkFQY|{-jex=$L!-@{D{JYb|-U zz!z0ml<`@$U-vtUa1OeTmFBR@O9FPzKVT8EI-75A5$Q9>)_fE6J2e-0O%xhPz_LeD z?<_b}Rj>^qQfXcVtU!Hc6E%-9YXKC{xOgZ3%&7E;=a5W-8_(90U=*?!8$~- zo$WP{Ra{V)UKhO5oS#pF3MCg;+EQdf`z05;YShuvTrA;%5k-FSM{GGJ^B~wY_25~% zDz&@R!>CJRh-&cc8k*=22qR8O#ImB3=+!?6g?WxD^G-)_#K7>mPRY)Yd)W8A$KoUr+BB}v4E4aRvJxmfFdQpIGH)Ca zd^-if4o?4rdX)b_5|q2NY-C{lhwpTDq)8h(W(wuo0%=tHPI43UIDh*4q2tWTORW8` zj7~Mqsd#b;Pro0s5EDGP7wF?SPj0d*_6wY+^5h(+;mQ5odhm5RP|rTgeLa|pQ z315&h5(zz4LcJbtQkAb*X~cGxpnx~kOhQ0>lJRaGm}3?zLB3oM=00bxeir>)*f7CK z+TFqlsQo_C&h7Ozad&FWO{9+LsIHsPktMj*+$f@`R+TQwadS{i+-qHH56y8}x|X3i z7*nuHbwAJoB?umlS!UDR|7610l1Ud8KLv^oW`^`LjB%jn>j+Taq1Eo^TJTa46i4S& zTg4G2XqUrEFwcC$H$)$g!Ba1=VsE^ruQIP-jsz$9D$Lh?ew*!0oB!=ekFBW)rJ1jX(m-4L)jc#5&Wrff zkn$26Qlh+_QX=9K?Qc-@IwGlx?Hf|;PfuU0anMy+t)54=B$kB>quNF*<{R-a(yMk# zKJI6&g|X9z3O?dY7v^!{qzG;sh57m5wS`Az&lay(dBS&{V7dNd>|Mfoom|Deo0wI$ zBa1l%Cl1k~if|!CpNBp~$Vr9x6lH1aE16=+F!+R}tCmsA`rxphOL{mFYcVa+E9rY9 zZVAT9+CZ5}+R&nkw{w6hpaVsk#vy2sa;Qv3S+;|xBC9T@DJywm2S7IeJZbJm@!o=iX55kU664b74RO!Q+`F+ga(WbZ z9<_uyqkBel_^dZgjdhEom)eN#Bw_Cia3rE*ZilVWE$nu@H=|I=mrk~nWY{L0eZ}x% zn*$!?Xw`cm^==0fPUwJOLO46hr(Si-oX2QbhfSP`vQ^<_1(SmAN_DRZ$I93d?UqZW zWo%>&Gh=iM<@#smXfYHTK~f90g^wbPmttUcv<2+$=df$m%cav9RRatgZnA$Z#;D;; zWDct`TGO!$tL|a5N#@q{4sdHY`{IjQtdnv_um@~{>&hOWs8-YAd1_H~X%7`9CRXpj zM|Jm=LM(A#6lKSQ6?*crc*%r4Uc@8LNGCT%V|^+VuN5k@Dp6py3ZbA@lROW&w@2FW ztzDo>eW5{pP8SZ=ZX9GM<1`cFGdeXkF%IymC&oTrQcnz-MyV&p;}Y|CCdLnl|F0&- zdl#HKF@BqU>cpUDWMTx-z10(=n6hPJ^#1*cq3F=$i6I8>{yP(6<+8yOU&7TU=di#%1O!cm{)erS-~dZ`6_)u&KDl)y$PlQ=e; zsw2NeCqrhBs_-ubs}7z$U6>p>W%e+?Qvsl^ZaU30+Mk$4PtxIorxET!eU?XqGCpA*wj+UYF88d^pZxFxNl^zF|+U>^wX4F$0=+!YEQ z;0i2RQRIQ7{pR`QLcnGGT5N%qz78Uo zHcZ$AsHOqi+bLk90DxPb5;&l8e)xY6Rp3n70WFAD{)z*nB}d@0d$2FouUd)E5=kUo zWWic&WtCbbdnHO2Q)hDmHp-7g5eJB4;XSayM005~O|JI$@M{H&z6&>3No*EB$S>%8 zINBI{u;Kw%k9jOgP<#{aBTQ2vbC}3g>T6+{?QBw*hSa+gmx{;Su6ti399$&BayItR zC{((uKQN9dc|TtqQ19ar8Hf~B?HP5AWB=!_n~{;&78GW+~D)?|0(G8dOp5U6YXlg zU!p!_A8dY5-Y_2=ZT^|O?UJ{L<*h^B9+9_~JMb5P@50jUg)PTKP+$wM z>+C3fF`u_kuq9Of`jesZw?pN7L*@H}lftDhax}JtcNO>&`)&*BGPt?%?mNS{bwA2A zbYTXdiX*Gen1gnwtyxSrBqnH|OwfO40qO}VZq2L-Dt0ie2`Yv_tO+V6IjjjP<~ytj zDyBQE2`bjr^aO2wTi$*llU6KIbUz?(VziNsqK@PZjhF;sru9%eAR?9v89^Ki4S7hSKGPzrW6$%t$s+d+Odm6Q`GtA zlf6AMSG&0xTNHGy7zNGjp)!@3rzxID2RJ~En@)8(U_k@vv@ei$UQuP=(I)McY;^-cSl+s zG-~%ev;+s@H4j|E)un{Tg&f7?Nui=B=<|@8O~Q^$$#V+V7GfrX=CD)!gft?!#(=z2 ziCu2__-JR_(TvHAd)mtr_}wZ+1TQwSb&#;z`p{~DC~OjNUPu4YU-2O8bE+g(U!ZzZ zBW`llb`DbhCy0^r2^6rZiMI&h1k()8Agof?GVVcEo4tWqF@wED=B|P^SeDD^E{_fqoNatZ}ky z^&M5!MzPFgTQFC(%UGPPMlk&TD2-Mn(hW5*vK(ex#E#HQTrkF_{?mdL1lxV3*0s1O z<2MX#AiGj6p>=dt@K=#6_0$A#_7wFi{gC~KoBwKtBv20!)?sr|iI_A>S|zBk02|j_ zz&{==Rd~e6+!P!%dyV$c9`4Gx8VfByJN+0v$f`aY*{(-+b*$r*n4b|?tziBxYpj+R*kRi zD%^e3u|w!9t#qr|)F1EA$V~Ttl#7FkL*g_MNsCk2P&BPE_kvTL>gtQ=uU^JA8p!d! zyV6r|xT@A>f3H&Qha_YP%18|wlSSR{LQ4&RASz)~WffOPr@ju(z%1(29X!Rp67JDq z&K-8&UC-E>{RJn(b5QkhtO!=BwNme1zH7XDSI%v=IpMMIU72pS+1tErE8J|NeX2m< zl=(9@JPUsOiWxd|Oe{3;HLmOV!k0Hk$2>*#TXf|t>SFogSd@v*bXD}7EgBfKrJ;g^ zSskBVRke=VJhd7yYHG|L1a*l*bPkYnMs4m*i`%$^%as}{SFOu$`w8o}hg_;$a1^I5 z>BY|l$KWQB1+NLfgWxQI}v}8cK85LF4V|#1nCeL``1AEL4L!qYi z9PIJA?uK7jkK3)sIo9JRNN*T?K@YWg-{`&!ew{hRdubrxes+rc*>MGj1EUM~VS?lr zZQ;Op+_}0N3rOOAb~%=$Ytm9gyR2v|H`k=6i2fTGi`;gi?L@ni3b%B4+>Ni21P^%L zI~{>lB*mU{jUz=#Tda~Yh|Wk6-C#v$5}lbM`c^ACi|DM=z;U&P!|A=#so}szbd57b zN#m`Oh7mn1MYQPE(2C(i4^I*O7b|)M(IZX+$L~pkP}+N^OT*zJsVhZEKekHBCOSJs zw76XYj*&!S>>n9j}cZ$qewC;Mf5@FUUHs6 z^cg9l|6oOrCVKQ~;E;Q#=JFixojJNca!8t!q9nsAX$;Y0QbaGcqQ??FHbr!)6@4br zXPyR*b2S{f-aB(O9JwUTO;OTGmM{$-M|7&?wBL$8i|DgbN}HBl3Zns{o|LZZ$l>g-daW)d}ts7XVjV)}OH+PB$XEjZyl z;WpYq^Y#w=n?`h!`v;G(CZhQ-eK-R2ZE5D4z60Kh11Qix`?>qsiUS3ov-EchUfCAL zITrA}LrotN_2H>eFB0_;Q6HTewV9}oiTZd*R1ChmO`q~ss6f!FR*`D-plaQX3qhb1 z(oG@VDWZ$5=ue3LBt`VuR&<2uNJ9H3+j4Xgy<3)FfUrr%6i)gL--f1;n~A5 zWq=VH)K(yqyMGG3Z2JD{t@vxaC;pmTm|mUk#;E{GT?eR37VpqiG}elaFW{lk7(A5R zsTOg3*MFNNrtf2K#m8|lWK9n(=-;h^6kw!U%s;fEPq&ztThZ~woQ#3uV3cbxBHoHf z91L04L&3PfD(E0!q*}~QEBbVcxf|Xcy%Ar`slaF_iRt^yTk%;O3|ZGh!Fbpzs0T1o zE#`VF`gDu=TUK;@F{c9KDh6&zDE94EaMC*$2A z>v|{{!>xk)07Dk@(C7$yLo^`1pod1kZbiozbt*7^rIXB~loA%UyI~rOFKKaiPu57~ z18>C#aWFqf0mrwkiv9|isTTZfEBbT`{(LJszTi`VnNAYZ_mQ{aqc|9{fe&r(eteeF z9q~m;T_iDmpLi=iiGz`9BVS+@6yL~)f^mfveYypIrWGAu z@TtJi7WjRidMiGSgOO?@e*#iQ z)kZ$YDk#2@4+Ueg6@9t|Kg^1bFZfhoe8fEn(|6Qcaa6Bp7XR{88~Mv5V}71)!9Q$8 zv*4GfTJZH&Gz)&Y?B1#1SgheV;jK6k?~YU(`7~Y7^7uwRv^&OG(WhJRC&YHrz=BT& z#yccgX8QVCQ^e()_06p)_c3VaUTSBcdy>7-uG6#uRHO5(!ZZ# zg?-8x3{7@4n``1{&uUNI1MlqjB+dbba>#aR&*Q>qyl4v2IFtu zioeCdNJY?p$n86NBTfSh1*6@HJ{=x-+=`ClfmC2Lki_&I@>U$ulLMTvJQYR1$SNsL z1Pp~^h82A}L?9joC^(J?Qo+%OQoQN=!dvl0ygO16^m|A}L2)8rC>YOK(Q$%)X!L_t zbbRAa1x8SVaok&RJPt-Gg8q7|pg0XMw4Nze^y%=xC@VUS2U3CYDa=^f8Qc8b4P#DO z+70QldvELhwk#@SW?X%I7GB%ff^B+5LBVee&*oUr;%@ikk9J-+65Up}_x7QQdzdpzF-eE-Sz_?jmjkFUAk`S_Yg`W{qaBIZ~ zBmj$f#$X2SG$QYrdkQ*5+7fc5#{>a(1O%MFqCqZDW~wewd0fc$;@_#KS<-2--u!`j z1|$-hk-wOGmKj&t0-46P^y`C1V8nl1u*(un43CK>5;bp=nwKTj{Of_5<({O71d$WE zgvD$hCo;60WbX3NB-LjnC(%VEencMOEZAYZ@3yy&-#MbSru!Qo;}azwniUV7O{mUP z>-6UdbNnq~O_yrN&EHpN04rT8)|}L zjI10XCK`5Gsu3U~Z>lBv^1TL!rswFFGZ7Qc8435E;zvX?E+$X6-0oG2iI40Q)62n| zi;5+DeSI`ro~R8M6+eP(Dwv_1$Wlb}+^xP!dX+~dstFcooP(c5QQddT+TwDxCx}3F zO&h|EK!*B)er=1?8olYk8ucH1_;bjIz4d}KELnnhes-}4s-jbMo~d2?$f+fr(M|+S zXI59K&&h`x%$NWzM^Z805se@>{w4Q+Yq~pO$B6ZbtZKCYxmFFLHq}PiafNZD5GB&l zwS?iy<#VKWBtiNBJI+-!Mp|llwGioqw+9uk{`BBiH$R9ZlG^bcP#NtcwSi-4cf&u^ zL_*XIDwQJ8Ju_lK2d3#DqdzT}PbcS9W8SEfFzgUls*$9R7nvy`H0`KVWe1 z3YqNZSQQ0E#Sb2e&K>TS<7sR6uA+kJH>zEgr02+Ni(7HuLuV$-NR9v#!LcDRl7Rp)?@db(? zsT!mvMk2-bXsfx)-tO(kG*Pen?uS`w^~dWN#}yOelKj!tRmR6|<0H4XfANxFM)x0C zPsch~g|;9@QPPpy8^@h1E;C9U7IqSvNn~aHO)!eRF+P$O>@$XcDvD`3x7RPczB*IkyfWlGuqP; zR0{}?B~smIr7_ym1V9uHh;2&5QpV%dc|U*m@YlfKTK)q3-Ok@q{><6;9th3;;Q^kC zr{Z~#=Rux5JbQQ^;dz8-FV9|{eLVZZ4zbT_v-jA0wvVbVodGIB;oScx_Q%Yz*=T#vuF4!;kh+?{zuU5E8QYQqcliEX}}JeVT53 zrbnSEDdl}h>1Y8hjE&i+cH=V{S@+#l%=4rilx+hbCx0IPa{0^SZ!&*V_?yKaeLaD` zp1?DgC$^C8&Ec8D)5Ful)5Q}jNB25;I(a&HItGu8)kg~{Zz+EP{+guh_}G-$>4BuN z(BHH+X&h)9X{@k8W2YBdTnS^#?A?MW2Es73%JN7uv{q96Yzj^%##L(6_>sUuwO2!+KeYlp5cjjJOe z%S`FKzL2(b3h@>S3tVDxHZ0(V8V~Y|vm?+C_8NL|A;Vi(gN7wQMWxwlbm7V&xB-2S4>q)_tiad9kAU*HL*d?# z#@|ej{N%~c6!|HUAD{f(B0tN+p*j-J4R)eu@^w)ZbOhWHI}@AOwD3I7+~85;12=9g zwiWKf+7l)h$A#xPt_k*nECZQM<7Uncp1Ap@HgoT>eMXz7;H|=z8_c)Bvc#p$ye4>} zH6nQ^$#HG4_Z!^{;*F{uj;AX+Ws4|a6}DJyQa{a;4JY8N9jkuHYt7LNA3INaU{r0I zp9{MswRR<<5xSPQQ4lZIHepTQa@S@_jW*4B3tY!`owsAetD$TONuJPRj@jvTy^?p~ zV`~D#ON`#JE1-5|lYAwgpyZ_W2gPPi(%jd?b(MOWHkiGI`)WcjIT&Z}Nq58TBm|qD4x!E6Y(j%UEklwue;$268RTi^w=7I4vXyNxumF8Q#o1D zJ~=_5M{4uS&DX8pC#tG)*_ONCmPxaaetY30)EFgC@?T5=sM>$Y!CvPJaEZ~HFMhhJ zN{s-95}=yC>Y^&u&zcQ8O6979xuf8XTKlf!{(K53_!H(~?%1d27p1=BpFrSN0Soie z!{ZE>Cy=QOLTX*Tkh! z@f+rnMW9l*lWlOyijK6WrNBy>nB2)!rQS`dq#CDEM!&d zRJ&zrTCnoIW~DCx!F8c+$UQJp~Oe_|A<>3)9H z&!io)m~P}c)mfL5Y22StAYMz{*8BLWL1VvtrRC}h9anL4)xYA9QM^~`S+Y1V-Y;+J zs#r~8zcpQs1rnMVw%R=ZEpp)dp0F&O>ffYW_7G*ra$h#ZFR@W9e+HNZK{PJO* zV)Mw|_%OkiTArn&hdv%^d7UV6`YkOz0(!O5_5RShy~bw_-n}PRT&rFf&ha=a@HakY zM87WC)Dr}SvZ8Or)%>`ss}=pCdx{qA4`vjV?hT9#E!t1en4;=CKl=L%$pb(D6!s1tOx#1eE3BlYYzV@~tVzjtnR7Ld$KI$Sp52 z<{cSN@jDDst0UuS-lT){E^U#UoA-0rwMb2iu-jrICya~TVg^QLozQrGTY;=*q411i zNnk_AJx%?)r14AHgGjdokrz{mhZTd7j>q1jyB4*{@f4nfR-*3cB#1>=ULBc2Seo1d zP12n|Ky_MyIIcZhQl-v8P9n>1qS4>A>a{90O1_mJR%~3iRd{x)nt%ai`*glgwvT+E zt{N2n305-+NAda9BvdGx_hZx;UF2ALOZ^&|5I2|?wGDz!0bMc%!}`EcnHF1j3&Df# zZ194jjJM(PtirF!n1iGaZ&b`YuN7#gM6<`>#?GsH!%3Q9Qj#$3G{^1)a~3P<&^Z6? z0@37_P8evC1)45SY%N%-y}^r%N?n2fCXB5~MOqVG|N1@Wa>$Beml%jUMh?qG63a z?44Lmd`BH&7^oB{-)l-XV3V%b+)J&&H|o|!Z2=7D4hG@;7zkAwge%n;4Z;ztb#1bT z@-MOzTB*M1+bh4@6}-?WZV~Js$n(on&4MLrY!}kU4TWBtb_17V2{*P2Pn{5Tzf6l# zSJ6$bz!`q4Q{KYb#6MfXV&GsdMvDhS^}}6O$Hbx9Am21|u9F5{M9$wcIif|CE_cKA zyu^xqP0b{#dt4mF=`q3cni%-cMU|QBRam;NdE)NinX2octV2= z0@>;n9mPgzi~JR%D)=HEi{+>%u%i6~!p!+j@ew~#d}@@zTKde`kuLsS7CTTF|CNhE zf)}gZTsAOT^59;&RJ(pJ@%9KNajAuJ4}l#wt4i7B^;nrpyo*%38|tKVJg3YE&rJ)B zH0S3Q^v(;-cX&^(pNJVnvYy}`2FnX7CsJZfYPUHjt&0UV`+D(O|6MEL0(fk^bW2Flc@lN%k3>+@8%UBl6(}Ow2 z+~w(1k`}?C0VS7U)A>}3M-YjX)rI?NVcge**BuBg>N@-+wr{u>qCSyv*T`}mcvA-c zKI!*$9+@YYY#8S~3{GtwNLFPfi`>@CyxIVh+1tAsgD;Si+!2%0Jr}^QrU))KZ1y!Z()k%!lZd#nPqXMi)4~~1 z_d_j)N*Di8Nmx;n4P(^B13TESEktBkZrh!YORsPUI7VCSO zM#x1lVQU^r}_EpthuwBbi~xRrGYCi|JcmG^tms=+&#GSBL9fjh1%BJJt!` z$LiP=y&jP*c%av@-A}J``DK0o-|O~gRAS0pga5cx-TqIBBoT~;C3pMe+v)cIOmw@x zgEP|V_(eLC?)cCDrpt|Yybv>TpTn90(J?)|4>%b>Fte8B9369nV7V$E93P#!KOv-% z+aR$7y^wsL# zR{tgz+VstnResCJU|eW5gY>m7b&n)K*d@0t%WemmI5!L0;61wPcD3D4Es zSHB^(%VKsn^wKP|45?Kh%criBV$HIPt*;r@*X7pN6zglc^>wcGRbqYRSYNZPuT1Mp zJkL^QFLt;nb78TJngo0-0rZ|nI!y-0T<=Gedlrq!r!fqIyFMxd7(lG|dr2H0f@*8f z-a%|CVT?6-Zzu10I9mdD*LaIH($A@n<_Yq5891+_kRFMP7s75tw|+~?RsVt>7n9u@ z&4)xN*(UEU^&|Zr8&ILPVlvHZ^$pYuVzb_yD$7Efk{BJAVCs3iN5qEC#jLFqa!nzJ zS2C)JMKBDGH};t*DnXuBC(n7gEjUa)0k+{@7Fc+y@C*FSbZ0ddNPZ*FEqi5=?eRaX zKlB3K<9|?pXp!n3&e5d6FosmKMV4e>Eb=Z1!@E$iB(epdtb+NQrA=ETX0xo!jtt3o z+hjSSNh+P!LK9nJtJvMpN}pPI!6&`pZg`3SwE`3zohsSQse)qUzMGUA12$@vX8~)W zi7ghex(@X%#>12-|YqNWU9Q6#6F@v@p8 z)mYgQCR?is&Hz^~uO*zjYfF+h!h_dUg-f4iWSktfYfEbL7FVeiR8mueth6=gl>OYD z4yk>gT*=!a)DNdve!bgPUSYIk7;{fXmvxjxZNo!z?YvB~4R0?whmXRhxnDD&cU?OE}M%IalBTa1-XWUX~v*6=5Z#ckx z&1Sj*$^HgFd3UYY4G+euV(l+s1M12OqmBF4uMkR~Ej=1oD717ntkg}z#Q9-4t`LJG z=rRXg1{B5SG2^32W=CspM(anJb}$Jr>CBK}rG1-hO=S-M!`OHVm*E$5Ob+8Lvq!e} zD89T)dmVG47-KlO_TIvM=3yy9cbky#(ZC3)JF{-Sqb_o1dzqtNuASB%y(uz0JWF2~ zG+Mr(OwBg#HKNhL)gX!)Aek6!g_^Jo%@FMbDWxQWfpmM&!K?EWm;x6APh_|x>&O&z zKFc_1cZ+o`X1H`TE=*{$Tp5N?WoAT<%0XxC^Gjlg+$ippgAua*myzv*5=0RM z!9HGw!Ad5MGW@69o`yKal3!bNs#K^Byez5Y6-VIF$bq=D;RGa^?lXOZC5G5TS*UI- zaCL~M3aoiKv3SKb>{6#AG@4aWH{;x(kXNOB|9P(a{+2R1vrLa>A&hb&QBJ=)w7|8A z%U^B2GIgwszMvVSqgmS0IX3THn=+%NuBNmyaW`DMAKfq`OuDbGNLe zuF%vve#KNd6AezoQ21GXIY4Lb)!voFruph+MTG&6D6$nzK}2aid#cUiTUe%5RaFIT zRl9m|a9mY|H9u`r3S%+Td@385#0dpo7gfQs>*Zj3gjCUYSSWCr`qZZ{N{XOZf%Zt9 z%+q19_aPUqn|)Wq6_+1O8KmHf$I$@fUh_?oRDS-eq>wRHY7tyJAr9RQm&wL5e<5rW zv$eX&0~OHX3O_FgRBy+M&+1$CTkA>(QTi?w`hY$sceO-8?F*UbCo+&|-vSlhQqp}u z2Oygi?mAPg(p-E?X#OpjoEDvj#%Bqw&95=nFEo}GIc-L(tNyr@zxHn?6x`BcJj=EO zhjo-KH3*EXFDB0Vu9xqBEC!uf-wpD;xEM`N>$_3D=NF@cVtwB&-!qDT82{cV-(M~M zr}+0K`98b&neGxGcrWa+NEUfc(BIlf--8POBc48mi3LQ|!dfdhZF*{((Zn9`)(<}Ty?4XvMK1#aa`{8Ivu-`|nR-+bi% zcU0x^vsmQ+S^Qm3(1vP)HY_3Nj%6kM{G*SbRk!f7emN1}A#B4Pgl$+&*oF^2YP(I;Y7<;>*zHe`iYdBPh!*91R9r4lw`D>^iAGRKC_46ky8H#p`6 z51VLP+5^KxW2kJ-yx_5$kbJiN-b2X+odvH}nA_qB#x|X)6JWA8xrn*J!!_L_Krwo^ zG0uO4Ej(Fq4y3oG2i&#gi2U@*Pai+YgHIAOd+EjCgd!gb59XoUj=Jnng)Mk*SaI;S zoi2O1b1_?ehD5W1VtJ!er8G+b89S8a`8(xM_6p1kad~k7`I0s>GGfEEIFW9vO|Ri{ z4cyNY!{nAi*XUCkS_fU+4Tx@3FM8{&P%FJHKi(P*fmG56S&MejH5G6M0O}~BJZ-PXOIonwCT9PU?Fge z!vuBO8Je>cjmiL=6Kk9-!h~P31$3;{PDO$IO=(7J8XNL_D!fkj<`IRj#tv;a4nSJEEtl>Z)|5soGTVON~TQra!`9pYSRB9<`Z41xr zPrQAZcIkg|4e^76W?|E+ZF%blEWLc zgU9c;N+iz~4`G|-$He2Rwugf0usKE9k~VM^DWX&56-_E+snDhuL)}akU;;Sc+Fw!Y z63?6BE%YsdGLM$_rUi%9m$UZsY>~pv0*kj)1umo@;?I?n_(93LS)h^_ET%{dHkA+R z$mmqv9trbkop3F^mq@upoKO?_&hrU15#8bR@iP1zK_5VveNj;A+|@hCJ_%xs#+_@< z#_!mAc;@zC&gN-Q#f#eXBb04@sO@hjR$&d|aF+5Q9J2uJ1EI>|)_WcxxuqgsKx!;s z6$<+2m|;WtKGT44?>q800VtdQL5oTrn$G?LunA>Zo=3dj#`b%aW}f zsWxz!wHPueXUunipue_x0-g5zTz<61b6`}Ftj@WP&@~R9IvW9RjVPClkr(YQAZFAB z`L|77NvUmSXXF)%p2^&bX)CaPZp?Quf1Ss+$r=hyH`A|73x0KYOW-S4elsn2{_q2V ziLJ_W<;?WpI08pq`AxfaL1b)m3_lRuZE{d=yKj8Ut}de`t?k%0!AODJP3gwAG>Z9{ z=_tJ&%ZL1b$^vjWDdIsM~R7|3=LcS{C$k?*{T-ZAxkp<3lKiGe6YuVxrV>!Y%bGx zM7~>_tI9qg3ZnBQ`u-Onpo|lZJ8jjP}p*?tJwHis&YSib* z&#X+LMF%1yLNhS2rw;#?s5pw|d=B2&dkEy)#2IBTsX+%K@a9!m-qOJVdhOv`=3xn8Gg0VGTFOlh0-UBLB&~T>)L+5 zj~=sR)tea+o6k7t91u|VBA`x4qmfiIc#_C3b}7|GjE5zNy^#*OM8d@IJ~2KW1!bRPh>a^CgwhV z3dLPJ3j}smb(DIS{42&S0{7;tbKWV2)lkuL+48`l5`3q zMe2(S$6@)%=C-_q$|eK7MQo^J24p= z$j{MY645jooQDwv*(N;QY>K6NgQHr|ZZaBpdpy890@<{GDTnD0ccfglc- z_f_Zv_?RhBH^MIM2#&UdGEB^2KDC}aHIX;Xb{LZ;TyLm<_>}M$!?UM2>hiu67Ucre zLu1^6+8qCK!7k^$%d~$js#UijuJE(ik8j&?6b5fZ9e+ImNSpaqx2!4jBAi~$h+T1( zIz+sr+m%SCmVsa+yRZm(JR>|ktoejJ79ghEz4f|F9me}qk!^rw~Po!dK|{*ieXLzQ)Vh-9s-;)4x;rm8)OE8u)jn9o;=irBicgn)>T&(ko-B zQLSNTkh6+O607U`E5j2kp0M5ccv9=fnVYVgmY=?}^LXf?e9CMJU&U|T@pKq*$J2rr zunLdu65iQF^$5jEXEqEJKaS$NCsOv&+0)QIaEp4N@cf^KB}DI3sdALPS>Eo3pFkU! z_M@}29Chx7d-zb>VLX~8x8pQ@Zcex{k6PXLxB5(b^ztn8P;|^RrjaoH-3_;p+IuMA znx;W>H~9F*fUFSF59uz^nK|<`UM!tb>Tz#8kF^Ggv*aWWQW62P=zo0jPyw?H-0MEDJ?EiF&S`Hrd#WSdvU~PHcF#R8(n89T1$@) zCz+|MHp4Po?5&|jnL9<#NH@9fISR@#UXu3P+zo$VvLwnB1EB+jwwE5s9#rsebw(*9 z&3(^Pd_)_i{HQLy+n}WB?6=d?gXg%PD=ge;^wZO=Mq9d}fk_WNBkc=?rRG?|8=^W) zokUrrW|>#_q`PsR)T0YckHHzZkehM7kd9Yx3`#sf!y)anpaF3e>H6GvA7?UlJBc?( zZW?Vt*>t1(a&u&8wtHIlXUwL;oia72$<*A;XWdIOXKW!o5bnk&Wa;XeR#eX1`jQmp zYlTM(^h5|Z&Lyq4+_Um4n?}!?8G1+tt?tBdR1I~nwA->v%9=bSW%d10WT-3thz}E; zrJzUpdormRLmiTO7-va!I$fIX3tSG|0X>&E z<55`H#+Ols-SaQqeNXtaUz_iexwZ>%}f)W^(X&7r*QnQZ7n&mYg z(3AbSGt%^|x4$7x<9?+y>a@*y0))1rrSND~m487toP}^tMD7-c=TdAz>rV={?dtWJ zt-dOM_m_f+^vc}peb?RaFR@jmN0nyazpY`aWKK1-0hj$5N$7od!)pwWlMUAseMZnx^zv!(g%A5m&lclRS!Q5CSrdcHH}oE23*K(L zq|*d0sm)kiq?ceYM?LyVd{0%s<25uTa#d`3zQAWq-}+x+lYvQM@rK;Q5xt=?_6L2ZQ5pAZ@7;n+5x<=)DMjyJJD zd!=grDkw*5M8vlF*dAZ0{sFxct&Vpfa;Ca(pyY>ml}42x5VsnT0a0ab?g!Kh+=*xd z_)3-WHHuBz+M^k3IML{PwW=D{0C&-xp_xLnXB+ce&W@S6a^*HMiVsJ4W)4vVv1V=N zOsDZphb@$rI1NGA#pocnI?hc6ix3myJBjo;L%o}bQY&}T7w^KJ?V1GDW4biegZ?1> zkVZe0#ENeAyb?c$ZGM;ztE$c6x&^KPYyc9;^tP|dGTXOEOf8&Y z!lF=2M;5zjz=@bg)FskGmy-Qzt`L)9?HfxH25{B%DIo7+xnO{8aCL-362ea^R3HBm zV3USJs9W7!Z_kQz>-(1j#p<)nHwuI*G+I3s>SN@u_48e}I)*Va+-T23Xq9~Ujh_#V z-kfz~jTVnjJwpzNwfebMCMa{P47B9IxRrcEMo;$!a~{{0j{A1V8MgJkLRo#9m}X;_Wj*F;zSwE#}2$K#%RNZ9ZY0lewihn7<`vJ!ZsN= z*WfzgnTE;^xaJ11rQO!-fR<=$K12UHoboS$|vV2lLiNe~4!-IFQ37RhS*nSPPB zz8ty1>dTJC0~GTM0505lp?)_XkdSc0NXcaH41XifI5}?h@Ve_pPV|H;@*>&BiE*o4 z@|hQ|=xXvr?Cmz&Oz)d3+AXwwvwCyO0NQr>pAxivS0{Mz5b_PPceB?1owJ;)5gTr| z1`GVSp z%A*-InfQby3zk-@QmanB_xULGy402XNcl@iDMu# zvR(3`58P|qviwW4eTe)!Z{Tbvw(|uORjVZo4|h|KhSoW8=Qz@AQ;#vO9PKs(5luwZ zqPc};yBkEyB#PCFmMO(Oysr4TKB}NX+zkOz)<=aRaX0vRcR$ww?wJdmvKFcc370A# z%tKit67+R~^r{Wdn!uIDO+Tl?-B-(wcb6ly(p9uTxi`uZs$2IdMZU#bIQZG7kqtZD z4a^6O>6Ec>c6N*WB&nEL6l0bjpqSfsPC@lI{M$|$uHb=40r%Hga~Hawo#B4AB|^V- zZK`{bNat)XHiXO4=6HKoeS)+BO9CEnImN2U1noOv3j z(COh>XFuOhX?0F#$-LlkbCyH(vN$L;RO!TB7B@XCJZ7PR1|Jwi)NHr<}bFE zjZby|l*FOM{z|i07E1J;qh-rEB78!&qZzVT@#gp!K3FiHArQ4z8ol*Oxs$djrIx<9|2GH0tk`RWt50E~? z@VyhwPxA*)kpij>aRDFA$sbQAf3ysIgqPq$&dHI&R)1IT)ATl~RQ6aA#$D(m4QJNH zzuP>~a%YgD-zI&A6iG#zZ8yM$6{{|Z@;tuox2A~5XL|GeO1h~R| z)#x4FQJniGjrN-xrSAw>T$CI9hPhEXkFPWNLflaL6ISE1l1uG@ZbMSCQCdHcAb%ji z9GxKgtdyr*1L0}BO2!r|<7`SUF*k1K>k?VxKGpRgD{tfLylah!f)1bhgAVE>NWNa? zEBb5;U+QUIVPTmYWh9E5W!%OWJt!~VU$|PY;O?Z7`ls8zTJj%=h`Vjzu zSbmu#Dq7OV<(N5+f#B;U*yzxM-chAW$mj-yYkt|B0iOY}sAp5ViX^KIB`Ac&3Wpx6yukmAa8m6J(TdFrioIR#LwNj}MvG z0c(EfozK{j2FowwL68P)p}0XIP20)t%r+=8Hhy9zhW-S9bVP_>^qUMK|TR8}DPJmT?v5dAZrNjBVfw z6xrMqKcX5V4EO$vjI~SsnxZ;v7s;spf>+aK?c^2}z_{#eBiC2FCs*gG4N~j5;ty#I zwMx3i*p9EQCp4kWAYdcU5S&81yJ0%r6i=h~o^n@3Wpx$Yw(^{c%FrUD1CX%7O(0`V z(IS_-u~xER_~Ny|OQE#L^A?l9=>5LC(MJrvOBzoG$+0N(waW9Ip`I-vwadp1TCC2RFb@lI`E zqlQC^u6D>zl}Ktvv;-$3;Si~ft8n+RL*`x)fbi@w+m0lW)G=yNHII#bL=Dgt`#G_q+9J=;r5bt)v);mM2x>NKc{dX zZ%*D^$Nqe5ukmM_`KtMr`6sDo@ivcj>*eT7R|)s4zK7L@{OCN#ni1xxrgS))kSH$n zJ1czZe$GkyT2atGEVC_|nS|^rj?QwGQ~|#zS8|lUiyOO8ey+64$P9FGMd5Y*6lTIE zTa??9uc;q0Dp7R=G1eE#ipxP_hn_l?)TxAH zVG9f8|FHKqU{zIV|L{US#6-cwL_<3nmXjZy@9z%~M4V6&5F|B0I0$s)FmO;TRP4Y6 z9x0owvB?U{uO_Fl(xj5YB(buhvKgnbqO#hAm6fAZO#FZM+It@ksPoMKdY+bDnoTHAz+tWi}&yIun6Z6q?J>lr^C)U^xr2JViA z$hv;-_ZrgW16}jejrhJ-dq_hI6~1qMZ$k@7f@wm7%g-8efgi}!bqid4b>x3r>lKkN zy^crP9S!`x%R$ULDPOEhBgK3Dz<9}%;*I9<(j8XUd5lB{#z^;FUt_tT=BGKHg*87F zd6H^=a(QBEep($__deXk4ABn!uA{_eaaCTGC^<&K@Zn|H^(4GRl|*$t>ZcW5_krFR zY}Hpzthpmdi%s}PhDc$dA}OpJJXQ_oP>UQpNwgZY-Sv#GsFuW$ybx~yP1YEs4sczsxWs6mOYJ6#t&%Kf+?1S-u$3z?Js50hwCixmW zKs54dDBSxqDsZq=HStKQ_I|Pi0y*5^=z0;)%&4yP6hz*05Ti$A?LxGEZ%;<#Jujf_ zJ*i$H!4rkbLlr1IB?V6?VDr|zqG;zek;WUbF?3}h+y#EnmJ(7&);$8R0G;21+kWrL zEBd{BylP_?cx5PBf8To40Ff~Y@dVT{Iub0h_GhdGVc*m6?H;uLhB|We@xSf-oxFr1?Z0+)Ijd_bUN&_@FMvIc=~wFy+lGDW#qxx_y{Sjku=uPNnvR?>5DFc;zt_C zqA)MIrk(d_lvMZVjk9~}Ib%ELBS$fyC|ehuRDzd3MFXQ_KN)>bcR|69udwGl zS|h5`uTk;D&g__5O!>oqn z{t&7Q{>3-D$CusPH4Fj_2<2^|2F@BErZVA+#0?LV#v1Cj;_upsc7BW-89v=5m7{8Y zT2YxVI`LAM2@oQAq4c%ZzZ#FA_{ zKq>i7c3&YzOu>Ca#SM<$_V9+f8uFgq+fY{vLTaad2dKYB1MB0-h_x9{TPdnW9wGy8 z(Du-7BfL}SYaxYr+hR9-36(IcX^FYUjt8;X&8<2?IGt6D?Blx zLe3w?tSIv3*}dH%)chXo9t}N`WAK9*G~exKy1MS&^<%4Hz*daH6zg4f;e-C{NzG|9 zWd6x_5?_Ytle8yS4qg++dwHLHfmfk{wZeB~czb2owOr^%Y(eK$rjK_{b*<~e$lEjB z$6NV>>1o*+!WO)1;XSNucv!3$c!KbwXDW_Q*ShXEz5}G`hPuu88+kCSuaStfk}%qF&{$VbH&~z(l7B!{)U#LWP2ANpqwfIu z4v>_G;bNBZq$w^e9aQe>zRt@Js_g3?F9tySrgWuD#e*9&daegnt(G!{7n{UPU8J>> zBu${!ye&{hBl+jSocyoH2ds2W#7Dzsw;ii|71H? zAMV3941*FHMs|AV)58`Z;G~wD9)ys~cEE7-L!*<%u#*q{j!eP9T1~6;Cp;#=v*e zofUqI1x#`IqH?0hgwIZn#Ft+KA1`1FQuiB_&B*7%(gZcK%3noZOAjUL_d=WAAA{CS z#=ezmh2~v+Vm0#qSJI)L1z9D-_-ca@s||In;HFQ-Mp<}}a)t5MAZ&20q40d=q7dDM zWcGL60$SLxQ(h^@f5Q!EN~g}Us&devSqG=S|bmV zX`Y5BF84wxyx=+n#yQr}$U2WIalm~I+;g~j-f>y;yo#oQ{ylsAtH4+Vg?WyAVWV(k z<9YXLzHHl2w~znrz+YhdEcYq&nJ_Y~S(9#4q6Aux&sS3_8o(sJ_WIi7pY(5{LxJ2_=8E8I}GnvoxNv}Oa zBkvl4cwjsqTP+&TlwIU$D=u<=MLmcb5H&*@=<0-ZiF5}V&v-9OG@j`L3BwK$d)Gm3 zk`fux^`xH;>UtFPhDLI)L6z>>Od5V>$pf)%sshC+WNu${@V zD-$jl&p?u;dr-2SxtEEUcT%=k*K|4F$phjgPl|UWkC$tpYY2~#=)f51zUxaeM3C{G zIXGOPr^plU?Sc91?Sc7x9A09UxcS_I+d{9yRXHm7N68rzyRKbu_VS!Yb^XClE4uCm z9eEJDD)g1(3cc%xXe+P8^iK*19d)fF<{pjcs}_BC_CTh-^^j{m_l41nBSguJ5v^vj zVrsSA1$OgPPQY-U#0gk_(8`pv3M2 zE0S1@od1>7#RnxP_wfvvS}1UJN7pGbI?2TT81j>OeLu-942`Tkhv_{W>Rtdx+&PIa>D`{<6M(G$=H3f6UiNqiMnf*$iJ3 z*>GSVoVte=HgG?YqoI!SC3ZbsddLvaCNSeRi^jJ`RIA_krZAo>VSM-3kFM`vBYSs} zz^v;_&;dG36Hd}PZC3}ekm>z7stPu?;;**{ruR$S9j5n}7(B@IE+x}Dj+@?(!B132 zO~V1|4n51Iwg63bXZbq@l%inxk~iVnDsFI7B@qp7>Rk&Pg2~|K9c^$s@5HHEcU_>8 z;mr`HHpP#gP^v|&hNOHDY{4J-5_^0ZyeiuG7|H#5hcN&nnJOs-^aV>s@)5+i8IHb07|B~e zNQDk_7&qKVrZ8glz$BWgS|bmU9cUy!OnM+A`7>mP8_5(3-)@ki!`IjQjpRaa3+aHY zt?0QYa<9tYjyZ&x;$q5VK9%C{GeLdXy!w|I*zG#>aFRo=(l`*@ESXggC;h_>^hFOWB~oi|YgC;hhbUfhbda~(y*&1Wts z8i&}2Ht>$iLx(eCi(rjW>B;D8q`K$hHBjuQjxuGpm3MsNGGV`ee*^CxHlG{WVZn!C zRsS%R2Y;tWOvT%>4^g5J_8|8@-n-&J$EkR;7ga8#WP0~VoaGo&GPOHw&k!7hsK_a7 zXr!WTuOlsx#(XU&K~3cy=F}E)ZQxaLPef&0_e60}Dp81|(tM$Y+iKL9v64&1@<)9K zC=4u0`up$+{B7iw2R$LN33qa1nRG+O@=an%hg4qgPCJm1LQ*TQL zLbA%+d=H-ifkS`tu=)gQKu0Y1z|>P`r`;?xiIy^+LQt62b#Z+M$V<$On4It&?91R5 zV#ulc`}%#|Gw|pFH+|ic#TG5*sE?PToG+dsvgpZBrW;nRkuv1DQOeLoDw_*_ky}=o zw`C87B}UxpXX3tN7rwlArqfn;>lVI%^P4U z2f^_Y(_OLC^_$8w)=H-GGWYJPWh-}A-3y!njHSD)l7NlC2Ke>cAp8MnI6VLz@h9|r z&*3o9x#u=6jIPZLnov2BpWJ-qfJdU&&5EMON2v4IA{l@AXQLtf=_sAx42@$=L$Xrv zxe5I)XjgoiD88+=klvmts;|OwBCMRJu4Zg0o;u?k+Kb;WQ{&-hv@fMsb4*C6=I@t9 z`O>DO`_kglg=kcDZ(I09ub0tFb9gekFbyvvZbl-~dAXwD(w5ek6c-|%gbS`I^sXGe zCD-RMd#mH7^?AZ9p15hNrsFL+U&ONwsc{kXnq2j>cu#Ju_?}$Sv*E%VYGp($1JQku zUW=2C)RkV8)3g@&M!=74SQA1rz&=_K;Y*J&EeOYf{M1N~WGr}*y^RNj!zBWdL^RwS z-jEp5a9hN}1!;?NmgX$R8*zOd0Z(G_l$;-oV|k-`v1J4u4^@G$Y|vif@38G#-U2=p z@0*ElbLqWSWuHeWe`H|7)Hgg)b3Ea5Do1COoa+wHDEUWsa7M}bzA>rTE{BH&5n(WE zyT=H3;rY6_<677PvVo3%8nj~rRwccq79&*9vv>s)GW=n{JYbvlcwxT8bCaJ(XnP1P z^L_q?nzUD&o{n}x@Nm3__NFgH{s0tqb3{Fa-5hGFNk%$9j5asZ zi^Z*w;RsF)TN{o!g12Vysv&Kf2**28W77C;M$f0TI3vG07*(VswFp?G(EJ@4!rPH!u^XPU zT@t*kVQr_yMmyElX8JDh{phCHec0<6vJdMFUK~{*c#$sFoccV$w9~RLx_Sy{1BbXD zo8C3&E`8d4!X^)57Pqy>?wj4cT~-~eI!21w4JnR5f@iStI&dqhxK9eF3?HlcBv|uz zym40<{{-!9^q6oME?#1v+EdrJZd!I)mSDjvi#ch+2X9gT5rH@TB5^cvZR?syZ|6U8 zN-$2$p)-!(=v#(>bRw4<|xH?jW*M@Zt)e$IuHIajw*CnvvtTM}KAMyhSZ`h#?C$|>aSdCD7(^h6I{ z*=gag0Yo->krLNSW5_;}(Q~Vhas6f?LoaoJKL@)_8y5D;s>RFH=MQ^5H<=cOSB}Dd zFcOc-U?R$(dz@))cx5!LfuneCl)SJVV-`LP&?~^MWXavN8l11$DVGb@GI=66io=#dY!E$*a{%bA&U84hOBCO=zJL?+$__#hmP%fcqsrRPjb&w2J@G3uOndM$ls0IAV) z!%n2_(`BL+Wn_p9d?D^H^ak${@s!EuDapFIQCJ_Jr65N#0Zp@dBJUwn0)oc|2JE8q zoP29>n!&o60mAD^c+26{R|yFuc`uG)E@~f2lH);L_xLm+>LTG`vfzmk7#(=A7)hMv z@{8i3;!euQFfCP7hGb-PhhhIG#2_{(Hcs3`g&brH4`TC14#EkWL16P$PNVZQ4XJZ` zHE#;xl^3nhV%()Ez!hk;eU($Nuu9QMk;nM=P+=z_8If&qmmT#NEC^T*qyyV{eTWUL z53&9AK|%E)n%9S@{`wG0^#PRuM;COjUuWIWht=KntF?i(;2(G-Ft`@9mk+K5w3XQN z0?u5<7dSJ7?Pa_hAx+WNA*u^V2@1uxZDP{kig(c#p*}!=8A8rCvf9r0)%H%s<<#~b z-V1=jxY|$}feQPA45zl(%PLIlp(1PZgRw}6^G$SaM71hhn9i>e!eoAp5+?9#v@nKW zV}ucO)eB+#Rw4XSO2OiU^ZYtR_=aDn319H5Quv5pwZdQcHCA|wUyZ_1ezgiO;p%OR z?^_iwJjs|5?LBmzIWOPEfs&()$$36nTkPvlrmZXz;*ldu$-5X8wX zM4n$s!L}0F&B<*|&5NYJ(86u~1l5ez~#L2Vd zI+l~?h>YN550OEf>?QKNi}FvFq0r4q`W~0i$w?Yyh4(>nk?BZ(p`ClsX-vW)PDT^? zG$&(-+{H;+eH0$zq=LxJoQxx~j+0Y}yq%NNh;(yONn`;hwM6D{(n#byPFjgffX=69 zV%ziN_`)oqe6Kb(EFS=04nMX(785W!S?qDq1&1prB$sW9x zC9EWuOQaTA`xVLw^B7BLoD_Jb7+sVlbc*Dn6kVb%q0=OniK0u4B~&T7M2If2mQbza z@>2;HU113|N-l!v5@!juN-lp9U5u8{G|8n+bg^1OGbNX2M3;C==pxCbNpwlFgf5X> z?iO8AETOrQOEq^{m1@xyaF;Bhgj@!wK>BD!J~m$Vf3#wpFmq9Qe@+_|OjRjFKVve#PS9M=(c}zg!V>6vZ!nxgvto z{x4TN_A12019xm4pF?E-mn&!{N1tuLmn()yU#^(?2EO=!`RN2K1L9i}4p{7J}1Cf{T!w_@ZMDI*Dx&CS;G3g(1%PWMc!T znB$4_P?#5~U=r28l8+CVI-|+VCBs^XBdW>1Zc&vkD;TZa# zutb(6+yO4Q5b=bs0JPtRz;I-#e?w2 z+r~JXho2vRKh_-ZCg(rz@+behMsQ#nKZ2g_W3hzdf$1>~0gq(yx1;%%{Vc(NLJ8cc zkB1Aa`vjuR67s0b#jN60?5&jW?yV?7ocjASeMjPMo*Y>}&w=x79?HHC{y$*wEtI7~w#2hCFdSAlLIvk?FkM+l^1@scnX-wd8 zpx`)RJQBl8X83|}&u{%r<`VB?PelgA_pvJ}t-%GEC8SbvWM!mnr@hJaG3jCFYiP6$ zsvJ%qrj9)ypM(#@V6o;}u$Ba&Ok*ev&cUJ6iy|a(shXfr@Nvv2P~yZjOUVBgVqSFK zP0mrgeUAN-o``Ir7~u07;ynBdN`xHAq?M~pIX>tR{a3Dx*0CQeJnwwH}V zaGu;SoH-ZyWJp~1cc`^6y5NrE=Qf6MucJYckB7une1os#v?=5r^#2#}`TBT75%{Jv zkLbI`WOOeBW8%>r#|jx8B^5RN7_ClK4#R!Og-`HKLB@qoq}LkoibAmXg2N}l?=6;J zHxPp#NB-~~a%{O6{+eela)M0)2NRyX~ZlHk+Q<}b^`%%80u zGUN+$JE$X|j+#4BL%V`1-_g8g?(__M9xc1Ce8`2r`3^6pFF*5ia8@yvzwFFo#Noi< zmRln#uFdvYQ1wRnX49_OFdsezv>@EOB8uUm2K>uES=N{wh4x2F95^y>vHwGbh^Qn6 ze)Of_Wd*22pvq;o*aG>^|(Dbf-ZvhxnHn8y=K_a(1v&L zrd@Yfd)O3I-+{4E8qt)-&-sY0a2oR#DgiB>s56ige3G1v^QPU}^+@+G^7}3jRroW6 z!3-3iI-3{W9%e*3VkLtx3=iMhlcTEQadg_Z_)Z998Y;;YkOB&5dn%3&fI;ZRX_uq0 zh&!eTof6XA1Klh=0-^x-@@g)OrW0Z(Ff{&g3V5Vodkm7rGEbS(dsOQS%SH!b_D!Hj zN}%@l5W#-lS!h}2przUxhOqf7>^VS%`n5{!i9{qPCOrZ z#mD8P?}U17lsdluitkqx!Ur+U;yIygj4c@vkP%8A-q&{*`fMJaH##>vrzF0ac7@_Z zBILOY?)=LpWQE#&VSPHTmA}&G@bJMeRzv3o;SFpT@wIoyHokN=5@Vjk##Q7!8fCdq ze#UoHev!Xx5#;Kxpj75qBu^8DE~heApuFRNDTB(Kx&%G|Vkt124Xx?EnIGSn=N_zGFjHet=0OH6?kt6#m7H#fC@Jo&effb^Atiw*DpAyAVjJ?sItpw zfeS~V(fp$%s0e0NtN0~RsjX8h5*9$_toE>JC{sc6Ij=TXNYw^WP|ayBLNZ$@eVud}&;ygo-1&ACMVov0;5VX>{Rc@a_VL}e1yLR1=2&k~hN6n6Ra zHK!2uC{am7(F29%c%sn7_cdFIqSxY@jYQD`U$d4dGK-p(M4?gjHBTcdho~t;QT1t# zBWe~=3Zg7T#S*0=%0<)-+_wXioJA{Tv1N&r#aQy_&k@D5c$O%h#WO_lEDA*NES@HcXEB80<5{dBN)~tt2^=8{ zTuWYD;CiCCz?+ET0&gaY3%rFWF7Q^OxWLccqRe440#5G4?W4zsWM3{jsDb(W~V5_OKKH;L*Y>IhN2L_JRwqq^{CqC$w;NmMvd z4-pkX)V)MS5p@?)S_-?CC?!$!9iHZCL=_V?g{Wmj8Hrj*l$EHPiHavGfv6;+3`C_6 zHJzwbqOKz zh$9@Z?p5CsI@(6t5J@^f;VZ7O1Kyi)&7|vTxJ7}` z0@uAmXSw54hWgn-8U*W@$+)7AZ*e0whti@cKNwBi#(XI zkbvz$p5J{ z;o5_153aqq_BMu)4a|bi2KUI?=%Y-Z1Wp4z0G8otR6{r!YL*{Mt zsCpZ#O}$bX#PyfKh=2aDvlrLWmx0~_ z90E2b2VeJ2{p?`xH(Yz)a_v165H-mr@${F~H$%MN@=~Y|;M^R*ha4b>Qki`d?ERKX zHuBCabPNF@5O)*=iUAbB6hH|Wfp{PTfUaYq>sVZ4aE-w=8rNuCqj1G5y?008ikEfo z4#zbd*AQGo29}MeBNyWH0JXqYid!z5w*h6xn;Yi4FC9mV z^t~k%KJ`mqk#Q@1c9>iuqOqW@+XhOwY8j?W(#-YwGatdl`VSn^TmoL-XwU?RiSJ>jsFyMQaa@#lg@uid|LD6VWyOPN~n} zB6Ou=!GQDeWV^;AS$^B6i$PjNJi#B&_w_wrhTE>EJEd4@^_AJb-&IA|X2^my2G)ja zCqQmZhs7%j9IGLWMF6);{D&^#_ttokAH62$KOtS^`>)Q6Y039A>8E(*`#mEsAAUsC z?y8AEAU~eH4G5n#aiIU;_&5IwkA|f%j|R|#`SPar^Q{b^2d5Wr8kpYT{I**Ewf~3q zf&PJVBswtb1OoFL=>PZl-BsTJf&Rw_=_4;`pnu08e@p5>|H1MfUNF#qaQu%g9Oyqd zd{WN8_SfGr(0{Oe^Q#B?4^CfLEBccT_JfwocCZ{@*AI+ma5`@^{A+)muRk3Ow=7q| zSopg^Z1dYeY}>XVR<@H|#UD{+3dUmKzaRds@ZU1Xe{(#(r1NnQi+v}EO?f1UwGHxb zf`1MCPb2(Ugpb`dF#dh;uZ91Vjv%IeIEdv2__P1wSA+C61CIgEP};z|z-gcdpkMf- zK`aJ{1C&5KkOq_hHNZyT5nwMsza4OX9U{L5;3eal?Ew0c8W{35=rd{_1BLZxD}`d9su?LF97cXXMiy1 zQUTb365MCu5Udhl74Tc&55QBvD?kVE5pWh5`B)HB0BT?+kO?dYJiwj6-M|CD4&XW9 zb>Ji54Db_h1!Nr$Oatsd8juT=0qcNzU<>dVumrNvPm6RX0Z~9NCURc^CxN5DbHEN@ z3s4Od0P_GnFcAm`dZ7Q)z`MXpKoa5+f9cK@^UIv2H#^tNs>+5F?i0(Mc^+q=OOn&& zTb7rw; zWnLM>@tcEv5ML5w@So}OP|Tu#hTBzKFtfa}g4XXDq!Od%GUG18y9-FxxfLt2^NKym?((^n zE>Cfp%PAIi#Vi`2(Qw27sqWGhJVnGe$R)#BS`a9^tV3#Dv#Ln+R5wbevb@4wPIm+S zDbjv_x=Tk3LQUe$3%vYF9HP33Bgt7P%78M-=TZ%*m13gQqWf#A)bbHu#+r&mx656Q zc;>oSImL)@)1TKgcLkLJm$TSe>Pe@jjdFL<4JuteT1Y7m!KqBQ=tC}ZN>`y06rez) zK!GkRC{VhypgeE2lq&BpJm_IOmF2vx&Z$T&Ds~ls52>f+l_NosPI9f7<8e~u_v>$7 z-b$&rahGT2p<9Dos4L0t{7UL9Nk)GV(0+Hh{t=JZ3y5rD@rW*iqoxA( z*TYPy!SttaX_r)I=?YI#HcRI{JFf>~O8%OPP9X^`*1ck;yJ}8pL2)@s85+-9$!pjp zeW><|GKwJw1@rf8m+(!Xes54Oz*{wG;(vetf7U?t?jV2mjy?$*4;e1?>)8{;LY@d> zR{=ACWFQMz2Rr~g1H2A=3Y-JN{}{xgfk}W7_%(0~Py$o~8-WLa9l$fdG2kQM954iO zTnWSiYT(zvtw0HIJ5Ud71$F_?0VjY@fgT`yFVY3#04)#?qyxD?DXU^B1{*abWT zv;il8)4(|(?9Z6v0!APcCh(hYp5r$VBaEc$cCBSZO(!@r5KS`@g7bU9PxsLbN}$X{7joXwU8(Uee1l&uKn z^MsjeJeYrF7Z*5b8pECr$-vadU6}5ya95VoyfYz~#_az4c|pmTdC2$K%+CF#Sb6uK zju945ELx`9FE9HsM4IYk zV8SO)bl9^)#0jW4J-&H>oC&Ou@|#q=im_Ko3QS{YP!>xIE-a;@!`a``Jxxg&s|dk}7f^#sfuMn zmzc=4!E{r-!m6;Lh8@D#`z9TzmKs+czuDz|sJ)agz!k01S}$ry`quK=ED5gY6FH=5HD-GIu$O3PvvVKT!L9 zltyN8{%w*>hcB+hsPt>NY-?Z!uFNc6=}f2~9TLSHf%OQrJSHUF<62m{8cm-SQjUpJ zu1M?;Vr?m{aJ!s|X^ia+xJQSCmS4_Y(ntX~Z5y&B5TAk4pFe9Z(N~~^q1)nuM5>~B zsLOXzIss)FCzf-fo2Qe_rU$1c&dnXNvMaFN zaC5$#h6u6wu3#dF$}=J0;{ozk^qBw1SG#OQw*6>iPvP#;6)AKao`v* z|4YXH@F`xizg8*5ICdQ~vV_c3l~Oq)DK(WPcw7kut1#)|R8@kc5S-uKA ztQdKkr#zveq8KXz;{Ad-16?r9qa_4dz`#_GGjXTPyz&)%Nd&>LJV~8owwkMjx)N!v z4Lutc)+i7%Cd!<_XJ!41YN8(ofQ1##aycD7sTF;)(C5(<7k4SebDiiM^E2IP#Z^vT z9p)fl1w=!qR^}}CteKg&Vj0c$i2YK2v{)DDCkjZ#a#64VFMlW+nM(6q(vmH1_&Ore zqBNwJE#|s`16UXwd;`ik5z1fTE-!Xgq&Qv3Au(V~ z;j?)@6p8njQQyMSJbzpAuV+Fiie+J$xHiNKb`32e%Coj4@}}u&cCklZ_DglU%eZrK zsaR2w53zw|mlp6PRth6~&Z8`4)Z{AgP-EHDCZ<6iN#9dW{_aEO?bqG61pP$w5 z7bv^T6X^CY=o7)qy_`fkx(XN~fi_PO9RkDvp}+`$^o-}8m~DuA zC-D4}@1Y>K2!Q6DcH6EmLP$Ug>3A^i|YFXR_kE*^|l%Zkxi#>c}4 z{8M*Tg#*~$;Q!T-p#P0ukQ7$F%2CPp^7V4=m-GL><(K1;uX6bRH?Pa9c31s7kY#Mb zwj-kH8Wfljs@Q{mRMvqkgS>fNAfEsI{jUc8Gc*u&*`Fw%;J z9H0PV0s7ue6c7$D;M`4k`wi#>P5>Riao`xx2DAc)fM#Gnun*V^>;ZNF+knkLJx~J> ze-%&$6ahSa9|iF+x~e1?t5nJsyYh@Kqqh#=m1)QeLxei38(^! zfJ`72NCK>Y7MKRa0kJ?d5CMb$z0;9r;55(yv;oZk@$bd83D^u&11?|@kOWu(Eua8; zrXf5)CE%A^ERO%Nzw~{;z{vi)_ax_FS?P!eIgM5$%E*Rtw?iLDn?4>#eu~ih#>qT% zogpC#VNYVu{C|b@(k~kPr@((XkSrv_E9PB%?{6EfBrl~GD0ki0C?nvHz<%H*;27{O za0&oByZ-F1ss!L>U?H#!C!|-0t zXkY?x1oy`f|7XD0zy%=ace|^G17m<|fL{R`zy{0)766L@C*TIw0A8RG_&u;4coH}O zybQbsya#*;dV$snW>Ro#Oo05z8UVcRd8OfPqF0q~f+31%5 z$Zc41;_mck5zs5eD;xX@xYYm@M&>U7eGHfe$4p=|K>W0>5(g$FuJU~*?rF_KzNag0 z{r9I~bk+pi7a;xCfcr9pM^XFv%TU-&;r;hfNOV8K$nm#fA*U=L{NVHk-)l#U>mhRZ z!Ty8qubYIrhA{F^E(Xf`;9m?mpi)Ll9{gUSDc&GxoU%u{9l}?v#C%+TE%p(Ol^Ai6 z)982Ur)2p$pdx>OoeR)c?4aEQl(QYS@3H2*99p}2zB zrc35SJ1LkI1k`IeAC%w0zddlEG?GxZ^o!?z#Xn*in|T^k?}G7!kbdM&;pm!zE7~%r z>0bVk&Sm;vUFAA^DIUsy?q%Z9g`P=@jPDrr@SCjZwcvZ-qd6b_&fcN$ z^-LT=%W_-}Wr$c%t>l0c66uck*&uh)5xGxDiT-in`WJEw58!En8`X7kS0ddV$OqAQY|akBy$!t4kgXX?P)hl& zgUEhUQxRxtd+`$QR>{2{ZpRUSyd;|^KpyIID85{{$$c>0hcW%< zcz%xupV`@nmh+4=p88=nyG0 z^@`#RVJ|;XuzF4s(ew*q?x-rM-dPbr5OYPXk?zTV1dA#v%U@Z5J@R;vyvkW1`B7RU z*mJj*72rjNL4Fi2oXxB$Se?$dMagmvXYW2QJ-VmIiGG>FS?!Xtg4M~cycHD`_5=cq zWa*RPmgKI)u1IXZ&%dode_^b72IX(z9I?Gnm=Uby?Xm=H&s!zE-Vl(7ku2fEGCc67 zJ!|6g_5N^S><_!J4UTr&`{fB?>+dduo@KeiSkN~q*a%7K$!_6nltO&gyKoM<#i9<6 zWX9KLmC`m&dTj5)#`7v6m}pg9YCt zjQ7UU@;o@vO#Fqjg4@d|GPsjVHRKq=`j!-|?$6r@W?qc&N!UaoS3AFa!&$w%EWn52 zpqHE@SYu^bfQPK7;cRLN;=&dHzE#2>&lT*0h2WRoChAW+f?d%0^}4W}4pQX5;q0;K zg4KQ>e>}t3pN>*?7N)1pDGeyk;cU}Xo=X@$!tqn~>N(2We=Vg184oP9vC^ zj+7cbf0vyaS4s6zcoSh<{DyXnsY=ShV=$FYRJ(v~^t zWg2QwQft7@l>iyXvWLDZTb`I#D%QpTKBqsuVeBLC%skrmh&O`*!j5DOe<;g$m6P8J zRESb^aI%cU*yz!CZ3=rQ2ZuR6oWhXb;4tB=VjJI$>+J7iN3ip&%Ut=z1+oXyr!?w; za28cUTXd+$ko9*3dt_hPa@nGo&V0-kJn#jxEf?`&<-;Ccjs*cQs|p2mAJi z4PgtTk})30X@s(0-Y6pnNfvS+$$tDoYFg>eLVC-wzrABe+M%-Lc$ZA_k#!WwR=!Vt z@$B-v<>H7`;jdGpSp4&4%Ln_4GAS|MMX+}tC*Kr$5e^%+Ne24v>_~RYIx(E=BZkSu zSRBEAH(VM5{o_Ru>R2Q@a4#P(_~^*J{N*^7&3{4)6EL2LJe1}h$TFUNy{13>MQl8- zW{lxctis3ZWWeA`acqJNSF)6UmMtIb+g}F5+1U5FuQYg3xD%Koj9|a7lEO(o{b5G1 zH?0FYAgS)gLl;-F&`#bq2QkR=(y_*~cV4oMVK+YUH1T>f>RRl4x~LJ7Z1fw(Dt!Un zOLjEvDpaUvC>69XOCfFV&(6M%U3O-o@b5~4?ANeMN;H7y2JAnlQB>hBR}_fvMJQJD zfrgs4B9BISylcz*00rK7ytJpn$s<8~j-j{96rLidV!6MSEAqug9YgP#UB*x050@wQ zQ3~v)mRh_VUf~aad7i5-iU)f-@?6fVE($BUkGqJ!5k6!MMUfJ(gxvn|C6bSVmKzsB1G6)3}m@_|nNVA)sum-e4^55o`pm!{UdrVYm*DAI^qzKC*qsgWrfNg`>rDx=)erCrkG)sVNjxOm4vEHvwF0!2 zMhRazeg!MQIvuTSiu-fOeufBquMR~*bS`{l{x~kr5X>P(8Dx1VU9w9lU7~3|BGY6$ z%QVgVh^AjFK=Q;O6*>MX*o{3bgi%z|sk&ZT&WrZH8fX5w83FxCbqPF_F6D*RNQfrcXw8Pg zDlyZM!)9`MM*8KUH4@@i0JNq-{P>%Tnw>iY2nIrcP#_E#3WNj00B9i>Im?XzMgWL4 zmu!2otI1B?1T+D(7DM(Vt$)M=w8p{LV2}Y?+oAP}CV+mq0Idz41!%op0VDy`7AU?m z0M(y*fa=02fXcW7;in;toX=R)%WKg-!OnjL_)GPN`U-NJ1|OMM0iBOZ67@jLl)jR9 zFb|{hpT+{)F~u9~k9R-(jX;0Afo+oFl~?s4BlzM0T2~X}4Q!_ruh<^J!l*wP7;j+P zrFcX9GDIOm@!+R5Dly)HZTQ*{v3-JtX~9eFqF>&?woLJg?VWh3FAB$%)|A9}1KTvo zJIpUb0eA=MH?VzDyy1S{8t{^SX)REUH?VzCyu^W+aNLbf|te&Gyo~y!1hG)M*8E8MtvNphe&@tTg2KTZ+7+{JgoGca)!(`cbZ5Kkt=(-U8k(M*DfU zfOlYh813gR;_+VT=iLupst>fzD#{S;=XLRT$M|_qTomsZKW`b2H`>p8PKuY-H^q3b z^7DFlykq^m(P--f^*h$jTgBtO%Fk;AFX@5Sa>aOK{JhmX-f@0j8UqH#i{3$+OVsdq zWBj}>DPCIV7UQKitHgOnEsytVKW{a7sbB7|XIJ}q>v_E6{k&VjOZ|2nluYqbKTJr( z@tA~o2@YHd76}Gi2?-MHxDrf&5x5d@5TYeqg)1RO!gyQ>v>r~NHEKew1hPj7wB}Es z^>hNQcN1uxnLzd}t%uVy0RpX)6KH*!KsG3W*3k*{qdt2PPz&q>P65>KQ$LjpP@mrn zP< zevV`?vqKt^d`p70xXZ%6@n!fs3;W13@Z5Gjn}_>3_?rxxek~#2V&4&krvB*ahvln- z`-;zFA?kqN3vdWRd>-sFFJ`4|1!614*zQEkrL2&-!TkW|QDPRS#2a{YUC!%tDt4O( zu|)8!#52@9@UMY1dAM`(H0C0ve8lT!6+j`WyZUyr1!aqeoJQe(o^hJ4Fg}()mgnqZcioxj;a20ixk5vD4 z`8D ztFlRg95_`3X_fm^?yt4f&O*SE316z46_78m#?c;!eZ+uYG};uE6y=;+0>wyqrJA8Y z>spRO#qkz9FEug5zxo?2)zW{(^S^%o4`?6?{W1Ek8da^TUbRWJRkcmkq}rj{r`oTY zrcr9N8l%RliPt1)QZ%WWG)<;vk!Fb|S5u%V(zrBb8jq$*vrW^a*`e8^*{j*7*{^BV zoYVAZdNoWNq7BzZXrr{z+8AxDR-uj4PSH-&Dz%x~McO6WTy252NbAyW(Qegl(>7^$ zX!mIMYWHdPYn!!)w5{4U?J@0fZIP}_SEZ}b)$2Cvw(6R6dvyDB&AL|IFISSX_H_&V>)X(XX-KanwUAn9Bz&>N1J2Jv1Wxi&OF6D&8#$Q%|^4; z9B)oCrq^x0tt@x0##FJIs5` zd(HdI`_0YfL*`aGEYmDXi`HVaSS|6EBuk1V)skk(v@EhLvE*6`EJYTVrOe{7R9UJmHI`aS zy=9YSvt^5At7V&|$+E+;$FkS5&$8drY?)?L+O#&K&1#FcCD~GJskT~My={|ivu%rQ zt8JUD$+p9`$F|qD&$i#zY&&FYwYAxf*^b*fY^Q93O=;KKjdrU&-kxMnv8US8?3wmO z_9gaQdx5>oUT@!I-)!Gv-)i4s-)BE$KW0B+@3fz>_t--mQI1&06o=Lk??`o^tKj>v zs+Bd$T4kJRnn`Q2nvzVZrcBckQ-R54@}LxJQG#1gdOJ{Z`%!9bC^1o|q)E~eb+O0M zJdAp)K3<=sPtm99)AX78MfxTBTz!GQNbk~@={@=?eYL(uU#qXzZ_;npZ_#hnZ__vF zcj))%_v-iQ_v@SWhxD!bHvKXEaeasWg#M)dl)h7cS}*9&=+ElU>3j6OdS(bQgc~9Z zQHE$kj3L&bFvJW!oLz%&2s4`R= zY7Di8dc!8eX2TZ4R>L+!lVOKpk72K2pMh#HG7&G%r>3ctDwnEECAP)Qsy(W`sy5XL z)k)PE)ma=45TcG&$EX!*qxuW=)0)pTUuzPF;Lt1_$Xsw7p4 zYMyG5Do<5~oPMbKK^3DeQNND&bHQek8Q2v9>;qQR)e({$p4J8Ru!k#s*}_YsBhD((`?o}fYiR#glflYQ?v`v zv({;l0M1Pn5QT=ZHpY-2DlQU2YPaCc>I*m`7 zo;JN;I&6B~6oNXCWEpLpWK~;z*6r4(tS?!+A)OPh;b+NiiU8mlpzF+;c`hE3} zYK7(ojA+X>wHlZ1cHRBD?YftA)AdXBx9h!npK+J*S>v~8875Pfd6oGq%Sh|>&_S|w zuJsmcwer(!Pf z8^}IWyG!?^Zj9azxp$yH{aPPkSb_eo*>K))rO{!$)#x++&bZb1nQ;jEoY|%v^f_;u zLe1mNHjJjLFkb%N{4hqsV2c?e+hWT~%UYDL!j^!xS8A`Ye{H|Y@oPtw<5A>MaC}F4 z?Zn(Q2%G(s^OV_2jcTLnsOodocy+S+ZFP@Yty!$OO>>8)LGwG!S7;qQnhDw)wX?M8 zn0GvecG;~RrMp?@(bejertWk@eBiop3bQ!(I`;E^Sj~Y)IKQ#`;sAe{;HQi%+ zn2%vEqgRPCUuDiQ-)3HeSwg+}A@j=^_rEvmEHg2hXIqw8$}JCAj#yr^L|DgJZ?Mj= z>aBCEBW=I3{nmD$ZM*GB+X36l=y~6>eQ5iKt!lU7C06; z@*IVZgN`GPHyr0lM`y+Luwc{$t#YO^RhgyCRhB3{%5}Ui}cw3IgW>(Jm|)nBT=Q(sUI*KF0aqYaH`L*Rc%RekXTK;JXvW8lRSw~n$S;rtp6Rg)-CtH7Ioo-cGbykzr zW=*ipLJsFz7g!fsbI@<+Sx?v^?4#^g+vnR?*xmLj`_uN%k-zWkVGf%k$MG9S8f24W2)n*r$4H$QQOc@rl?cZY3fYm zZizZq{YSLB{px1*A@wB9bj)ezOEcQFn%$beX*xBh(VL#poR#LV$=XzH8lSKJS$h<9 ze4nmG$Mi$>%tI}&!;I_=%R812ET34y(YriiecF1+df57&^+W5Y)?cjQwu!bG zn5AXd7Ta#K{l<2u?M2(Gwr<<^(9&qT-ToG4SRY`H^#x{GKiGe=2RXtWk&dez6VNM9 zcjz1mXfg903mwZGMUD!`dPl8ei{nAGpq-8v9j{;>hBJtu$8hCH<#^=+WwCOXarlhnQH5KXMcfRSyF_Rm^_&VkWnneJ)*6!hFHjq8lH z#?8p_qsE=+L0`rU<4xmx#*dAk8!upd8)_P5(wI_ArKV?1G`e<~zD3KQV4iDkH-CkB z?=;M9>n!(M9x0%k7^m8-$F1*J|7QKj`US?U?=g0V*&;A|(b+7}V~uSWX19N_U2UI) zdCNM?S)aAPVehh!K>eEUSc^H!E=MbR7}|g;pgxBx$0*~JOO%Dm-O6W_hm>zBPbwc% zKdXLGeHf$takWun*DOQt{hsDy%@62fCTg$KzM}hF_r2~HU6_8Pemwe&s>R;d)tz3eGz*9 zhn3mJqu0{gX4=wiIkqC3$F{+?6V}A*w$rw6Y|*eBa_zZj5~Ii{&> zs@1SV??y}Bsrs`@z-;iJs;e;L)u8R(r#`0syZUC>olk2N+9d7s+E=wFwO?sNbt80R zFu$3l%hQ#>T3n-Br)$*h*L{kSE&}$zUd-a>8lsGLubUW;``>jS> zmaQ6NXb{lksWe0ps(SBc3siG-boG z6wFx`t@Rq40WFl3;e1hqEl}=JeWt!%la6`dQk`g*o-mv=oHBG`rd4hH#Q3$*X<82( z^<~q$rmsv_n3tP3Vz$|4{?0tn@+-^%ODtqTw;G&*ic2DDXrJ;&?Qq=$-A&vYSO;tQG3el^?xgN3U9WDWUZGdRO3F8s z@bUhP;esLDc$bl3?)huj%o|PLn{G0j%nQuxQQQ7zX0Q-v+vZ`;zXyHJr?&5Gq4qKM zSo>tyfOh*W_Ck9#?7jP7=e=$J2)*=o_F;~z9V*96M~dSunuTCKh%;f)zYI}MQR*=E zq$zJv7AQ-VRhX4*Qa+$;QvOl7U-=Sd7Vj!gq0c$1{0Vc6k(gynR%uWVW~&yc7OR{p zw`z^bt7=sJUbS8IB4mgc19Q;Y=Xv5s*CRxl=F?ZT+N9V--V+BYz-KdC*X?bHr~zUQJZT%=o~%heU= zieQPA>0ZG4L>pEpj_cHV8*1P($sTRQc-eK4Rhi|t7+)|P z2*=t5tyj<*MLp`+G0d>SF`rJsnt=yv1p6!<793m3pV=~Hh%#Imp^Q<+Di!GUrYPf; zNth+XU^VEFDwD7DbZSp)1?`yuc14sfM%Qd<#>mx*-uD>#-wx{u>q+Y=%#%-B1?w5> zS?f7i554FYLTusajiYSQwisKiO<{|(O|f0PCXr^#v@NnNvE|yz(05d!eb)Tj>l7zo zpPWK_K8^K?Gq$s~b7;j>_H$UJh`}0# z!V!mcifNclX&pv~6?Hk)k><$6ylROf*HM7p)8#0`EOawQ(yfkd=)HD0_Bi%B_B)y# zhcI%q{h#)(JF2N{>!%TVKtSoe_j>~fG4v*=G(kowDh3!jp)1l7Fn|pjtXs@JX83$o5(y-|=GO@r+7GvLx-e`Mem-}KB0@qE>_9Haz6fS+kW+RHjO13b+d zvV(Sl$g>ytj0fZckpXAh4}GbbBmn>U1}E4XkNkO#^EhSku6o2G%t2->m^NUNC+X z3IS1hiCAU@ni=gAJCYHVN99!lA~_Ti39~}XSO!HL8YRGhfIP4)idZBDN!3IlF?kLk zOI2GX;ee#kVDEjge32L-P)eh}=o5qJQ`_j%<>=GHbm=chd{v(qp0p_W-AS)`*o`lu zRr>TrdD#=j+ViMfFhs@dg{bIld1w?8gG#pxd@J|2`}+rr8H5CTfGxs<4?rTk?2sm;g$I`!4B;Jk*!Jm^)-+Qbrd6_x)vPQ!q|c=4$`PD( zgS6sg-tX*^qHP9JbNfy_<~KQ?zD4vzONpw)y)DWS{ypnOh{*&_LSL2qv^!B5iCnvx3-Z*Cy+y#BN)0rI4DGdhjOv?<%)s60L3dTHS39T)7(m&|Wu} zYMtQ6a9yMBpj6d%cbyZK&5BWKesPPvlw397Op9aRYS< zOJmp|7AzC6X$A&HG#aAh)1^oZeMQggovUm?LQu#dE_Vb*br0;NNd=R1QQP zB1v02VO^W3nQXmd8JxdUHdrB~gtkzyEn`2z;?1MCe7&9x zxcrDIl+pc1@y#=~&3ALF?ENQ5#+Qu|?=l~r><}tv&E;p$=z1n{RX%cj>_SlCk$ys| zPL|glE#LNpYmy5CZ#q4hk0w+tzCcu}PkoA*<>XRfcq^ZoZs;u+P^NWckdeL7*`uW@ z#=zVCQe|0Xs`{fzG-pKkhxS3kfrE=LUKB2V9Oz&#A$O(?S>4jgk5GQ9^IV;EpC&4o z;w72*(TQ}V*rAfpwKsW3oPgQ~VpblNEq_l^iBj2_^GyZM#BS9<{D;JN*cI+tXpJ!p48;MA2?rRn?<>Z*ARp8J695(vul6GbfHVJ~SJMH905C=q zk5`BA1UlfrklObqM2Y=>K^*pF!vVO8v9Pk<{tcke{|2D`Blc85iSs6bmu$Ur60H!D zwbf6Bb*}Hy*P04CN|pI7lM7+nBSgh%w+dHQeKJfr{`9k!z^mJ{L!-aCplkAe?F_MS zGQB*ud!qfNr=vj7NQqDirbXU3&vlooNS3qTg91JR)vf;Goq~`A{*n0OJTfKGGNI?5 zY7ydwN@P0tW)Jy~oHkebEola$7unL1nMPv|K)-yl$Y!Xq)K#w6 zmukWi`LS#3RmX|YK;baS$V82LA?F*`=&hT5887Zg$il{4pj@@H?51?i)fm>o)jQZv zbl946L2qB5Pl(uEAMU^t&s3`EnfDeimCW>Z_9;)r;OCZ+bL+oi&kRKQ@MG**@nWt0 z3_%YC@u&8r(RN%*thj&TdT{D;z!2u3dp&Su#+cS`M2#(Jn1qZ1b*@AGQ0z{D6H*`cI zG1|~3Nb6f0LeZ4Ib{G~G_M;BLQ6Vcm1^>yRmeEHJ9b3T7{(fHe+9_q5~g0p?L4Yvn9+G)Y(zoz#V z3PO`2p$BQ#?#FjtR~Rd7#?`*cjUIkH92aOurx)u9t6GF~!Mf)r zqC3NX&i|9j{{Gmr%yl*b@Yx8#kh;1i9eN0$`44a%`f+36jB9X0;s229^lJLeUwde{ zC4lc?tC_BC?OXv*g%ZA!%WC_>*fCwT9&$2!`JDb@kn1_q^|Ye@$-egP4KnZ79u* z54AZ=_97meTY73kom3-lNn=Xw9leA|OED4J?>aEj7KE^1M(4Xu-84<5kVf2y2!S~w zbn�U-;mt?vdj;0k}O1R($*R;&a+#Efpo4JWP`MRpU6VZ_M5lNbz|meTsXgiL>hv zZkiezwDJD2@cibz*inXJnp)XRhGU#T+|EN8e#N3nX3hTDMuT3%(K4ytU+{*Clmo~t z^&`Y#`tM*noLJ_sDaU#wox&hi(H;L`OTFW_)eE-Lj@-!}DI^*g-G2h{e}8}ng<%t6 z0Sh!jKo(+zF!&=A`U{O(#hgLJUk0cQi*@kb2PTU6md)gYr_j zjqM?!F~ZTZv-Yh0$+w7tZS#c}8_TZShzt5Nc}97o^Ce8jd`f*IB+5;Hjhjm0sAfF8 zvF>fu8?v)WZd!YDYhP;ZiyDQNh|$I(d`JB4CQ|*zHa_v1(0<~{62YJx@r3TuQZBpX z>Fm31TTaT!WbZx9L43gNw%@Gs@zvN(R>k{v_Cs&p5QK*kC!Y~0v)tmzt}!GmCUf#6 z%1HH~X+p&ks>f}1OaC);aC!-YA6xV3UOATtv-iB&>%_HCLh*&zhD?0G;{vzv><>})o51{&Xx{0IQ*3IM3IZ}bS8p}b6wnEwn-e;+;i3lPxhkrrS> z8UUK`@G?fx$q{J6^d>|p`8(*5EF=x$EnrI`eny^T53oUpv8{=iiLK=(O#>~w@ zGYu89pQ8F)UMNE%*)qzZdcT=wrWSQ4YIZk|Pd#?L_t|4`()Gxx;d@-OXRG5rcP6zm z=u{y?t!2?Oab+85DSNA(<(0G_pI^vw&=9uTP^;A~;-aUsvBaKdeb_M~=NzIq{iU;J zfovs7$&81xW5{RZvf{Cn1YFcv#Q88O#w-Ogx?Dl(my`Vs`4U@ew(Y`#ov4h8bzS?? zC_5yk~@}AgCf3tmQfLD z$}!h89d&xC?GH@phlugNVM@V4WRlDO2~+ykQ}B<$nqDyY&i}Bre{#TOv_iZq{QR;# z!Tpi^ki+d31T~7+sX=NNSLLNo-d*vFDNQ#+MFk~3etPk!^tJ&~K=Z1ZW+r*AS?!`+ zayjd*U~ajxl8_e)%rBFy2D0>ym#K46MmYO~dn;TYTUryh9bVw?lP>DWj33!r|9WE9 zfY%xM_NRo%(D2v(i}7NG>DkFAYxW4_fjM)7`B5%Mh2`b%ng6oMC^qq3e@ASem68VW zcLM|D6$BgWWT&}ct6|E);wj}6XZaV^DbYvQhnDW0=aIeQ&qXqn+qvm5F-iYbSwnN$ zPeP{l-bb3!EbJK&k7gi!6UzbqgsKmm6MX^$aw4TRlVO80LzT=Fu3nK%PfTDcCIlc> z04Q5Ql=y!zWka#7N+egxXL*!7dUX0)W@ARfY^#cA7*Ls7DXy`?IB50V^#C=#KZt=r zsz2Va0GoCVxMr%ks+wW~oU;rj1R?!ZU9f?a5y}JE!Sb3upXGIl^c9${pcvqVg?Wj%T%@Acx%ZfO7zL->SdAu396MgLfsiedvIroY|L{v7;(p{;~u#;vwi*VPWf^Biou104;uf0|ouB7i5+ zO(gQ_b|JCLe8FtI*>aMmC`^0Nh+}$!s~65bU%4SQFa0@@qi6Q9ZCbPiPJyXcL*%z> zDvQ=$Mh2JmOdqZbWywvMzre9IR<|&d7U>p!#ZA~PE$R_%GU*AY&~E;enm}2?o2)ET zUB@>x7oG>Fm}i_OYLc)RWbpyAvloWhtJ6;Pn8$(rZmcb5Bkpg$($1ibo$T7wp54(= z@yyI|hR0la@x~Oi^_JC8(w)(&Xse%R+PZ$nj88S5evcXF`NhUc;^)Nh_=_zpC1O60 z)Z%0w^rkvtW$Q%SOckez2G^wPoQqr~3^}VE7pnJ{D^}KR&MxX<@Wq<$PeAPd^|jRQ I(P+fK0C>H0UjP6A diff --git a/TempLate/gdrive/index.html b/TempLate/gdrive/index.html deleted file mode 100644 index 1c6e5e91..00000000 --- a/TempLate/gdrive/index.html +++ /dev/null @@ -1,708 +0,0 @@ - - - - - - 【GDrive - 云存储】当数据获得自由,创新便无所限制 - - - - - - - - - - - - - -

-
- -
- -
-
- -
-

GDrive

-
-
- - -
- - - - - -
-
-
- -
- - - - -
- -
- -
-
-

仪表盘

-

欢迎回来,UserName!这是您的存储概览

-
- -
-
-
-

总空间

-
- -
-
-

... GB

-

- 内部储存 -

-
-
-
-

已使用空间

-
- -
-
-

... GB

-

- ...% -

-
-
-
-

共享文件

-
- -
-
-

42

-

- 24% 较上月 -

-
-
-
-

回收站

-
- -
-
-

18

-

- 5% 较上月 -

-
-
- -
- -
-
-

存储使用趋势

-
- - - -
-
-
- -
-
- -
-

文件类型分布

-
- -
-
-
-
- - - -
${r}
${Gw(r,!0)}
${r}
${Gw(r,!0)}
${n}
${e._radioLabel}
${n}
${e._checkboxLabel}
${n}
${a}
${e._radioLabel}
${e._checkboxLabel}
${Gw(a,!0)}
${t._radioLabel}
${t._checkboxLabel}
${Gw(a,!0)}
${Gw(s,!0)}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
名称共享者权限大小修改日期操作
-
- - 设计资源 -
-
-
- 用户头像 - 李四 -
-
- 可编辑 - 42.5 MB2023-05-18 -
- - - -
-
-
- - 市场分析.pdf -
-
-
- 用户头像 - 王五 -
-
- 只读 - 3.8 MB2023-05-15 -
- - - -
-
-
- - 销售数据.xlsx -
-
-
- 用户头像 - 赵六 -
-
- 可编辑 - 5.2 MB2023-05-12 -
- - - -
-
-
- - 项目文档 -
-
-
- 用户头像 - 孙七 -
-
- 可编辑 - 12.8 MB2023-05-10 -
- - - -
-
- -
-

显示 1-4 项,共 12 项

-
- - - - - -
-
- - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/TempLate/gdrive/lib/css/gdrive.css b/TempLate/gdrive/lib/css/gdrive.css deleted file mode 100644 index 85c7ae97..00000000 --- a/TempLate/gdrive/lib/css/gdrive.css +++ /dev/null @@ -1,42 +0,0 @@ -.loading-overlay { - position: absolute; - left: 0; - width: 100%; - height: 80%; - backdrop-filter: blur(5px); - display: flex; - justify-content: center; - align-items: center; - z-index: 100; - border-radius: 8px; - opacity: 0; - pointer-events: none; -} -.loading-spinner { - border: 4px solid rgba(0, 0, 0, 0.1); - border-left-color: #0051ff; - border-radius: 50%; - width: 60px; - height: 60px; - animation: spin 1s linear infinite; -} -.loading-overlay.show { - opacity: 1; - pointer-events: auto; - transition: opacity 0.3s ease-in-out; -} - -.loading-overlay.hide { - opacity: 0; - pointer-events: none; - transition: opacity 0.3s ease-in-out; -} -@keyframes spin { - to { - transform: rotate(360deg); - } -} - -#breadcrumb-container a { - cursor: pointer; -} \ No newline at end of file diff --git a/TempLate/gdrive/lib/css/tailwindcss.tool.css b/TempLate/gdrive/lib/css/tailwindcss.tool.css deleted file mode 100644 index cf6e13a4..00000000 --- a/TempLate/gdrive/lib/css/tailwindcss.tool.css +++ /dev/null @@ -1,67 +0,0 @@ -@layer utilities { - .content-auto { - content-visibility: auto; - } - .scrollbar-hide { - scrollbar-width: none; - -ms-overflow-style: none; - } - .scrollbar-hide::-webkit-scrollbar { - display: none; - } - .transition-height { - transition: max-height 0.3s ease-in-out; - } - .file-item-hover { - @apply hover:bg-gray-100 dark:hover:bg-dark-100 transition-all duration-200; - } - .btn-primary { - @apply bg-primary text-white px-4 py-2 rounded-lg hover:bg-primary/90 transition-all duration-200 shadow-md hover:shadow-lg; - } - .btn-secondary { - @apply bg-white dark:bg-dark-200 text-gray-700 dark:text-gray-200 border border-gray-300 dark:border-dark-100 px-4 py-2 rounded-lg hover:bg-gray-50 dark:hover:bg-dark-100 transition-all duration-200; - } - .page { - @apply transition-all duration-300 ease-in-out transform; - opacity: 0; - transform: translateY(20px); - } - - .page.active { - @apply opacity-100 translate-y-0; - } - - /* 模态框动画 */ - .modal-enter { - @apply opacity-0 scale-95; - } - - .modal-enter-active { - @apply opacity-100 scale-100 transition-all duration-300 ease-out; - } - - .modal-exit { - @apply opacity-100 scale-100; - } - - .modal-exit-active { - @apply opacity-0 scale-95 transition-all duration-300 ease-in; - } - - /* 侧边栏动画 */ - .sidebar-enter { - @apply -translate-x-full; - } - - .sidebar-enter-active { - @apply translate-x-0 transition-transform duration-300 ease-out; - } - - .sidebar-exit { - @apply translate-x-0; - } - - .sidebar-exit-active { - @apply -translate-x-full transition-transform duration-300 ease-in; - } -} \ No newline at end of file diff --git a/TempLate/gdrive/lib/js/gdrive.js b/TempLate/gdrive/lib/js/gdrive.js deleted file mode 100644 index 2f31de2d..00000000 --- a/TempLate/gdrive/lib/js/gdrive.js +++ /dev/null @@ -1,521 +0,0 @@ -// 初始化GDrive API -const GDrive = (function() { - // 内部状态变量 - const state = { - storage: { - used: 520, - total: 521, - percentage: 99 - }, - user: { - UserName: null, - UserVersion: null, - UserVDiskTotal: null - } - }; - // 存储相关API - const storage = { - // 获取存储使用情况 - getUsage: () => { - return { - ...state.storage - }; - }, - // 更新存储使用情况 - updateUsage: (used, total) => { - state.storage = { - used: used, - total: total, - percentage: Math.round((used / total) * 100) - }; - // 更新侧边栏存储信息 - document.getElementById('sidebar-storage-usage') - .textContent = `${state.storage.used}GB/${state.storage.total}GB`; - document.getElementById('sidebar-storage-bar') - .style.width = `${state.storage.percentage}%`; - document.getElementById('sidebar-storage-span-bar') - .textContent = `${state.storage.percentage}%`; - // 更新仪表盘存储信息 - document.getElementById('dashboard-storage-usage') - .textContent = `${state.storage.used} GB`; - document.getElementById('dashboard-storage-percentage') - .textContent = `${state.storage.percentage}%`; - document.getElementById('dashboard-storage-total') - .textContent = `${state.storage.total} GB`; - return { - ...state.storage - }; - } - }; - // 用户相关API - const user = { - // 获取当前用户信息 - getInfo: () => { - return { - ...state.user - }; - }, - // 更新用户信息 - updateInfo: (data) => { - // 合并数据 - state.user = { - ...state.user, - ...data - }; - // 更新UI - document.getElementById('user-menu-name') .textContent = state.user.UserName; - document.getElementById('dashboard-user-name') .textContent = state.user.UserName; - // document.querySelector('.user-menu-version') .textContent = state.user.UserVersion; - return { - ...state.user - }; - } - }; - // 文件相关API - const files = { - // 获取文件夹列表 - getList: (FileUUID="0", FileTypeParent=0) => { - try { - const formData = new FormData(); - formData.append('FileUUID', FileUUID); - formData.append('FileTypeParent', FileTypeParent); - return fetch("/API/GetFileList.api", {method: "POST", body: formData}).then(res => res.json()).then(res => { - if (res.code) { - notifications.error('错误', '获取文件列表失败!'); - return; - } - files.currentUUID = res.FileUUID; - return res.FileList; - }) - } catch (error) { - notifications.error('错误', '获取文件列表失败,json解析错误'); - console.error(error); - } - }, - // 删除文件/文件夹 - delete: (id) => { - try { - const formData = new FormData(); - formData.append('FileUUID', id); - return fetch("/API/DeleteFile.api", {method: "POST", body: formData}).then(res => res.json()).then(res => { - return res; - }) - } catch (error) { - notifications.error('错误', '删除文件失败,json解析错误'); - console.error(error); - } - }, - createFolder: (FileName) => { - try { - const formData = new FormData(); - formData.append('FileParentUUID', files.currentUUID); - formData.append('FileName', FileName); - return fetch("/API/CreateFolder.api", {method: "POST", body: formData}).then(res => res.json()).then(res => { - if (res.code) { - notifications.error('错误', `创建文件夹失败,错误原因:${res.msg}`); - } else { - notifications.success('成功', '创建文件夹成功'); - } - return res; - }) - } catch (error) { - notifications.error('错误', '创建文件夹失败,json解析错误'); - console.error(error); - } - }, - // 恢复文件/文件夹 - restore: (id, isFolder = false) => { - // 实际应通过API恢复 - console.log(`恢复${isFolder ? '文件夹' : '文件'} ID: ${id}`); - return true; - }, - currentPath: '/', - currentUUID: '0', - // 导航到文件夹 - navigateToFolder: (folderId) => { - // 更新当前路径 - files.currentUUID = folderId; - const loading = GDrive.files.loading(); - // 获取文件夹内容 - files.getList(files.currentUUID).then(folderContents => { - if (folderContents) { - // 更新UI - files.updateFileListUI(folderContents); - // 更新面包屑导航 - files.updateBreadcrumb(); - GDrive.files.close(loading); - } - }); - }, - // 返回上一级 - navigateUp: () => { - if (files.currentPath !== '/') { - const loading = GDrive.files.loading(); - // 获取上一级内容 - files.getList(files.currentUUID, 1).then(folderContents => { - if (folderContents) { - // 更新UI - files.updateFileListUI(folderContents); - // 更新面包屑导航 - files.updateBreadcrumb(); - GDrive.files.close(loading); - } - }); - } - }, - loading: () => { - const container = document.getElementById('file-list-container'); - const overlay = document.createElement('div'); - overlay.classList.add('loading-overlay'); - const spinner = document.createElement('div'); - spinner.classList.add('loading-spinner'); - overlay.appendChild(spinner); - container.appendChild(overlay); - setTimeout(() => { - overlay.classList.add('show'); - }, 0); - return overlay; - }, - close: (overlay) => { - if (overlay && overlay.parentNode) { - overlay.classList.remove('show'); - overlay.classList.add('hide'); - setTimeout(() => { - if (overlay.parentNode) { - overlay.parentNode.removeChild(overlay); - } - }, 300); - } - }, - getFileExtension: (filename) => { - if (!filename) {return ''} - const parts = filename.split('.'); - return (parts.length > 1 ? parts.pop() : '').toLowerCase(); - }, - updateBreadcrumb: () => { - const breadcrumbContainer = document.getElementById('breadcrumb-container'); - const pathParts = GDrive.files.currentPath.split('/').filter(part => part !== ''); - let breadcrumbHTML = '
'; - breadcrumbHTML += '根目录'; - let currentPath = ''; - pathParts.forEach((part, index) => { - currentPath += `${part}/`; - const isLast = index === pathParts.length - 1; - breadcrumbHTML += ` - / - ${isLast - ? `${part}` - : `${part}` - } - `; - }); - breadcrumbHTML += '
'; - breadcrumbContainer.innerHTML = breadcrumbHTML; - // 为面包屑链接添加点击事件 - document.querySelectorAll('#breadcrumb-container a[data-path]') - .forEach(link => { - link.addEventListener('click', (e) => { - e.preventDefault(); - // GDrive.files.currentPath = link.getAttribute('data-path'); - //files.getList(GDrive.files.currentPath).then(folderContents => { - // if (folderContents) { - // files.updateFileListUI(folderContents); - // files.updateBreadcrumb(); - // } - //}); - files.navigateToFolder(link.getAttribute('data-folder-id')); - }); - }); - }, - // 更新文件列表UI的函数 - updateFileListUI: (items) => { - const container = document.getElementById('file-list-container'); - container.innerHTML = ''; - - items.forEach(item => { - const itemElement = document.createElement('div'); - itemElement.className = 'bg-white dark:bg-dark-200 rounded-xl shadow-sm p-4 file-item-hover cursor-pointer'; - - if (!item.FileType) { - // Folder item - itemElement.innerHTML = ` -
-
- -
-
-
-

${item.FileName}

-
- - - -
-
-

${item.Files}个文件

-

修改于 ${item.FileLastChangeTime}

-
-
- `; - } else { - // File item - let ico = `
- FILE
`; - if (files.getFileExtension(item.FileName) === 'pdf') { - ico=` -
- PDF
`; - } else if (files.getFileExtension(item.FileName) === 'xlsx') { - ico=` -
- XLSX
`; - } else if (files.getFileExtension(item.FileName) === 'pptx') { - ico=` -
- PPTX
`; - } else if (files.getFileExtension(item.FileName) === 'xls') { - ico=` -
- XLS
`; - } else if (files.getFileExtension(item.FileName) === 'ppt') { - ico=` -
- PPT
`; - } else if (files.getFileExtension(item.FileName) === 'doc') { - ico=` -
- DOC
`; - } else if (files.getFileExtension(item.FileName) === 'docx') { - ico=` -
- DOCX
`; - } else if (files.getFileExtension(item.FileName) === 'zip') { - ico=` -
- ZIP
` - } else if (files.getFileExtension(item.FileName).match(/(jpg|jpeg|png|gif|bmp|webp)$/i)) { - ico=` - 产品截图`; - } - itemElement.innerHTML = ` -
-
- ${ico} -
-
-
-

${item.FileName}

-
- - - -
-
-

${(item.FileSize/(1024*1024)).toFixed(2)}MB

-

修改于 ${item.FileLastChangeTime}

-
-
- `; - } - - container.appendChild(itemElement); - }); - - // Add event listeners after all items are rendered - document.querySelectorAll('.share-btn').forEach(btn => { - btn.addEventListener('click', (e) => { - e.stopPropagation(); - const fileId = btn.getAttribute('data-id'); - // Call your share function here - console.log('Share file/folder with ID:', fileId); - // Example: files.shareFile(fileId); - }); - }); - - document.querySelectorAll('.download-btn').forEach(btn => { - btn.addEventListener('click', (e) => { - e.stopPropagation(); - const fileId = btn.getAttribute('data-id'); - // Call your download function here - console.log('Download file/folder with ID:', fileId); - // Example: files.downloadFile(fileId); - }); - }); - - document.querySelectorAll('.delete-btn').forEach(btn => { - btn.addEventListener('click', (e) => { - e.stopPropagation(); - const fileId = btn.getAttribute('data-id'); - const loading = GDrive.files.loading(); - GDrive.files.delete(fileId).then(res => { - if (res.code) { - notifications.error('错误', `删除文件失败,错误原因:${res.msg}`); - } else { - notifications.success('成功', '删除文件成功'); - } - GDrive.files.refreshFileList(); - GDrive.files.close(loading); - }) - }); - }); - - // Add click handler for folder/file items if needed - document.querySelectorAll('.folder-item, .file-item').forEach(item => { - item.addEventListener('click', () => { - const id = item.getAttribute('data-folder-id') || item.getAttribute('data-file-id'); - if (item.classList.contains('folder-item')) { - // Handle folder click (e.g., navigate into folder) - console.log('Open folder with ID:', id); - // Example: files.openFolder(id); - } else { - // Handle file click (e.g., preview file) - console.log('Open file with ID:', id); - // Example: files.previewFile(id); - } - }); - }); - }, - refreshFileList: () => { - const initialFiles = GDrive.files.getList(); - const loading = GDrive.files.loading(); - initialFiles.then(folderContents => { - if (folderContents) { - GDrive.files.updateFileListUI(folderContents); - GDrive.files.updateBreadcrumb(); - GDrive.files.close(loading); - } - }); - } - }; - // 共享相关API - const sharing = { - // 获取共享列表 - getSharedWithMe: () => { - // 这里返回模拟数据,实际应通过API获取 - return [{ - id: 1, - name: "设计资源", - type: "folder", - owner: { - name: "李四", - avatar: "https://picsum.photos/200/200?random=3" - }, - permission: "edit", - size: 42.5, // MB - modified: "2023-05-18" - }, - { - id: 2, - name: "市场分析.pdf", - type: "file", - owner: { - name: "王五", - avatar: "https://picsum.photos/200/200?random=4" - }, - permission: "view", - size: 3.8, // MB - modified: "2023-05-15" - } - ]; - }, - // 共享文件/文件夹 - share: (id, users, permission) => { - // 实际应通过API共享 - console.log(`共享${id}给用户:`, users); - console.log(`权限: ${permission}`); - return true; - } - } - // 主题相关API - const theme = { - // 切换主题 - toggle: () => { - if (document.documentElement.classList.contains('dark')) { - document.documentElement.classList.remove('dark'); - localStorage.theme = 'light'; - return 'light'; - } else { - document.documentElement.classList.add('dark'); - localStorage.theme = 'dark'; - return 'dark'; - } - }, - // 设置主题 - set: (theme) => { - if (theme === 'dark') { - document.documentElement.classList.add('dark'); - localStorage.theme = 'dark'; - } else { - document.documentElement.classList.remove('dark'); - localStorage.theme = 'light'; - } - return theme; - }, - // 获取当前主题 - get: () => { - if (localStorage.theme === 'dark' || (!('theme' in localStorage) && window.matchMedia('(prefers-color-scheme: dark)') - .matches)) { - return 'dark'; - } else { - return 'light'; - } - } - }; - /* 通知相关API - const notifications = { - // 显示成功通知 - success: (message) => { - const toast = document.getElementById('success-toast'); - const toastMessage = document.getElementById('success-message'); - - toastMessage.textContent = message || "操作成功!"; - toast.classList.remove('translate-y-20', 'opacity-0'); - toast.classList.add('translate-y-0', 'opacity-100'); - - setTimeout(() => { - toast.classList.remove('translate-y-0', 'opacity-100'); - toast.classList.add('translate-y-20', 'opacity-0'); - }, 3000); - }, - - // 显示错误通知 - error: (message) => { - const toast = document.getElementById('error-toast'); - const toastMessage = document.getElementById('error-message'); - - toastMessage.textContent = message || "操作失败!"; - toast.classList.remove('translate-y-20', 'opacity-0'); - toast.classList.add('translate-y-0', 'opacity-100'); - - setTimeout(() => { - toast.classList.remove('translate-y-0', 'opacity-100'); - toast.classList.add('translate-y-20', 'opacity-0'); - }, 3000); - } - };*/ - const notifications = Toast; - - // 返回API对象 - return { - storage, - user, - files, - sharing, - theme, - notifications - }; -})(); -// 注册到window对象 -window.GDrive = GDrive; \ No newline at end of file diff --git a/TempLate/gdrive/lib/js/main.js b/TempLate/gdrive/lib/js/main.js deleted file mode 100644 index 5ca37108..00000000 --- a/TempLate/gdrive/lib/js/main.js +++ /dev/null @@ -1,445 +0,0 @@ -// DOM 加载完成后初始化 -document.addEventListener('DOMContentLoaded', () => { - // 初始化主题 - if (GDrive.theme.get() === 'dark') { - document.documentElement.classList.add('dark'); - } - // 主题切换按钮 - document.getElementById('theme-toggle') - .addEventListener('click', () => { - GDrive.theme.toggle(); - }); - // 用户菜单 - document.getElementById('user-menu-button') - .addEventListener('click', () => { - const menu = document.getElementById('user-menu'); - menu.classList.toggle('hidden'); - menu.classList.toggle('scale-95'); - menu.classList.toggle('scale-100'); - menu.classList.toggle('opacity-0'); - menu.classList.toggle('opacity-100'); - }); - // 点击其他区域关闭用户菜单 - document.addEventListener('click', (e) => { - const userMenuButton = document.getElementById('user-menu-button'); - const userMenu = document.getElementById('user-menu'); - - if (!userMenuButton.contains(e.target) && !userMenu.contains(e.target)) { - userMenu.classList.add('hidden', 'scale-95', 'opacity-0'); - userMenu.classList.remove('scale-100', 'opacity-100'); - } - }); - // 侧边栏切换 - document.getElementById('sidebar-toggle') - .addEventListener('click', () => { - const sidebar = document.getElementById('sidebar'); - const backdrop = document.getElementById('sidebar-backdrop'); - - sidebar.classList.toggle('-translate-x-full'); - backdrop.classList.toggle('hidden'); - }); - // 点击遮罩层关闭侧边栏 - document.getElementById('sidebar-backdrop') - .addEventListener('click', () => { - const sidebar = document.getElementById('sidebar'); - const backdrop = document.getElementById('sidebar-backdrop'); - - sidebar.classList.add('-translate-x-full'); - backdrop.classList.add('hidden'); - }); - // 页面切换 - document.querySelectorAll('nav a[href^="#"]') - .forEach(anchor => { - anchor.addEventListener('click', function(e) { - e.preventDefault(); - const targetId = this.getAttribute('href') - .substring(1); - const currentPage = document.querySelector('.page.active'); - const targetPage = document.getElementById(`${targetId}-page`); - if (!targetPage || targetPage === currentPage) return; - currentPage.classList.add('hidden'); - currentPage.classList.remove('active'); - targetPage.classList.remove('hidden'); - setTimeout(() => { - targetPage.classList.add('active'); - }, 10); - document.querySelectorAll('nav a') - .forEach(link => { - link.classList.remove('bg-primary/10', 'text-primary'); - link.classList.add('hover:bg-gray-100', 'dark:hover:bg-dark-100'); - }); - this.classList.add('bg-primary/10', 'text-primary'); - this.classList.remove('hover:bg-gray-100', 'dark:hover:bg-dark-100'); - if (window.innerWidth < 1024) { - document.getElementById('sidebar') - .classList.add('-translate-x-full'); - document.getElementById('sidebar-backdrop') - .classList.add('hidden'); - } - }); - }); - // 上传文件模态框 - document.querySelector('.btn-primary:has(.fa-upload)') - .addEventListener('click', () => { - const modal = document.getElementById('upload-modal'); - const modalContent = document.getElementById('upload-modal-content'); - modal.classList.remove('hidden'); - setTimeout(() => { - modalContent.classList.remove('scale-95', 'opacity-0'); - modalContent.classList.add('scale-100', 'opacity-100'); - }, 10); - }); - // 关闭上传模态框 - document.getElementById('close-upload-modal') - .addEventListener('click', () => { - const modal = document.getElementById('upload-modal'); - const modalContent = document.getElementById('upload-modal-content'); - modalContent.classList.remove('scale-100', 'opacity-100'); - modalContent.classList.add('scale-95', 'opacity-0'); - setTimeout(() => { - modal.classList.add('hidden'); - }, 300); - }); - // 取消上传 - document.getElementById('cancel-upload') - .addEventListener('click', () => { - const modal = document.getElementById('upload-modal'); - const modalContent = document.getElementById('upload-modal-content'); - modalContent.classList.remove('scale-100', 'opacity-100'); - modalContent.classList.add('scale-95', 'opacity-0'); - setTimeout(() => { - modal.classList.add('hidden'); - }, 300); - }); - // 选择文件按钮 - document.getElementById('drop-area') - .addEventListener('click', () => { - document.getElementById('file-input') - .click(); - }); - // 文件选择 - document.getElementById('file-input') - .addEventListener('change', (e) => { - const files = e.target.files; - if (files.length > 0) { - document.getElementById('upload-progress-container') - .classList.remove('hidden'); - document.getElementById('upload-status') - .textContent = `已选择 ${files.length} 个文件`; - } - }); - // 开始上传 - document.getElementById('start-upload').addEventListener('click', async () => { - const files = document.getElementById('file-input').files; - if (files.length === 0) return; - const uploadStatus = document.getElementById('upload-status'); - const progressBar = document.querySelector('#upload-progress div'); - const uploadProgressContainer = document.getElementById('upload-progress-container'); - uploadStatus.textContent = '正在上传...'; - uploadProgressContainer.classList.remove('hidden'); - try { - let totalUploaded = 0; - const totalSize = Array.from(files).reduce((sum, file) => sum + file.size, 0); - for (let i = 0; i < files.length; i++) { - const file = files[i]; - uploadStatus.textContent = `正在上传文件 ${i + 1}/${files.length}...`; - const formData = new FormData(); - formData.append('file', file); - formData.append('FileParentUUID', GDrive.files.currentUUID); - const xhr = new XMLHttpRequest(); - - // 添加进度节流控制 - let lastUpdateTime = 0; - let lastLoaded = 0; - await new Promise((resolve, reject) => { - xhr.upload.onprogress = (event) => { - if (event.lengthComputable) { - const now = Date.now(); - // 每500毫秒(0.5秒)更新一次 - if (now - lastUpdateTime >= 500) { - const currentFileProgress = event.loaded / event.total; - var overallProgress = (totalUploaded + event.loaded) / totalSize; - // 计算瞬时速度 (KB/s) - const deltaLoaded = event.loaded - lastLoaded; - const deltaTime = (now - lastUpdateTime) / 1000; // 秒 - const speed = deltaLoaded / deltaTime / 1024; // KB/s - if (overallProgress > 1){ - overallProgress=1; - } - progressBar.style.width = `${overallProgress * 100}%`; - console.log(`进度: ${(overallProgress * 100).toFixed(1)}% 速度: ${speed.toFixed(2)}KB/s`); - // 更新最后记录值 - lastUpdateTime = now; - lastLoaded = event.loaded; - } - } - }; - xhr.onload = () => { - // 强制触发最终进度更新(100%) - progressBar.style.width = `${((totalUploaded + file.size) / totalSize) * 100}%`; - if (xhr.status >= 200 && xhr.status < 300) { - try { - const response = JSON.parse(xhr.response); - if (!response.code) { - totalUploaded += file.size; - resolve(xhr.response); - GDrive.notifications.success("恭喜", `文件上传成功,文件名:${file.name}`); - GDrive.files.refreshFileList(); - } else { - GDrive.notifications.error("错误", `文件上传失败,文件名:${file.name},错误原因:${response.msg}`); - } - } catch { - GDrive.notifications.error("错误", `文件上传失败: JSON格式化失败`) - } - } else { - reject(new Error(`上传失败: ${xhr.statusText}`)); - } - }; - - xhr.onerror = () => reject(new Error('上传过程中发生错误')); - xhr.open('POST', '/API/UpdateFile.api', true); - xhr.send(formData); - }); - } - // 上传完成 - uploadStatus.textContent = '上传完成!'; - // 动画效果和通知 - setTimeout(() => { - const modal = document.getElementById('upload-modal'); - const modalContent = document.getElementById('upload-modal-content'); - modalContent.classList.remove('scale-100', 'opacity-100'); - modalContent.classList.add('scale-95', 'opacity-0'); - setTimeout(() => { - modal.classList.add('hidden'); - uploadProgressContainer.classList.add('hidden'); - document.getElementById('file-input').value = ''; - progressBar.style.width = '0%'; - }, 300); - }, 1000); - } catch (error) { - console.error('上传错误:', error); - uploadStatus.textContent = '上传失败'; - GDrive.notifications.error('错误', '文件上传失败!'); - } - }); - // 刷新 - document.querySelector('.btn-secondary:has(.fa-refresh)') - .addEventListener('click', () => { - GDrive.files.refreshFileList(); - }); - // 新建文件夹模态框 - document.querySelector('.btn-secondary:has(.fa-folder)') - .addEventListener('click', () => { - const modal = document.getElementById('new-folder-modal'); - const modalContent = document.getElementById('new-folder-modal-content'); - modal.classList.remove('hidden'); - setTimeout(() => { - modalContent.classList.remove('scale-95', 'opacity-0'); - modalContent.classList.add('scale-100', 'opacity-100'); - }, 10); - }); - // 关闭新建文件夹模态框 - document.getElementById('close-new-folder-modal') - .addEventListener('click', () => { - const modal = document.getElementById('new-folder-modal'); - const modalContent = document.getElementById('new-folder-modal-content'); - modalContent.classList.remove('scale-100', 'opacity-100'); - modalContent.classList.add('scale-95', 'opacity-0'); - setTimeout(() => { - modal.classList.add('hidden'); - }, 300); - }); - // 取消新建文件夹 - document.getElementById('cancel-new-folder') - .addEventListener('click', () => { - const modal = document.getElementById('new-folder-modal'); - const modalContent = document.getElementById('new-folder-modal-content'); - modalContent.classList.remove('scale-100', 'opacity-100'); - modalContent.classList.add('scale-95', 'opacity-0'); - setTimeout(() => { - modal.classList.add('hidden'); - }, 300); - }); - // 创建文件夹 - document.getElementById('create-folder') - .addEventListener('click', () => { - const folderName = document.getElementById('folder-name') - .value.trim(); - if (folderName) { - GDrive.files.createFolder(folderName).then(res => { - // 关闭模态框 - const modal = document.getElementById('new-folder-modal'); - const modalContent = document.getElementById('new-folder-modal-content'); - modalContent.classList.remove('scale-100', 'opacity-100'); - modalContent.classList.add('scale-95', 'opacity-0'); - setTimeout(() => { - modal.classList.add('hidden'); - document.getElementById('folder-name').value = ''; - if (res.code) { - GDrive.notifications.error('错误', `创建文件夹失败,错误原因:${res.msg}`); - } else { - GDrive.notifications.success('成功', '创建文件夹成功'); - GDrive.files.up - } - }, 300); - }); - // 模拟创建文件夹 - // const newFolder = GDrive.files.createFolder(folderName); - } else { - // 显示错误通知 - GDrive.notifications.error('错误', '请输入文件夹名称!'); - } - }); - // 账户设置表单提交 - document.getElementById('account-settings-form') - .addEventListener('submit', (e) => { - e.preventDefault(); - - // 获取表单数据 - const firstName = document.getElementById('first-name') - .value; - const lastName = document.getElementById('last-name') - .value; - const email = document.getElementById('email') - .value; - const phone = document.getElementById('phone') - .value; - const bio = document.getElementById('bio') - .value; - - // 更新用户信息 - GDrive.user.updateInfo({ - name: `${firstName}${lastName}`, - email, - phone, - bio - }); - - // 显示成功通知 - GDrive.notifications.success('恭喜', '账户信息更新成功!'); - }); - - - // 文件夹点击事件委托 - document.getElementById('file-list-container') - .addEventListener('click', (e) => { - const folderItem = e.target.closest('.folder-item'); - if (folderItem) { - const folderId = folderItem.getAttribute('data-folder-id'); - GDrive.files.navigateToFolder(folderId); - } - }); - - // 返回上一级按钮 - document.getElementById('navigate-up') - .addEventListener('click', () => { - GDrive.files.navigateUp(); - }); - - try { - fetch("/API/info.api", {method: "GET"}).then(res => res.json()).then(res => { - if (res.code) { - GDrive.notifications.error('错误', '获取用户信息失败!E: 0'); - return; - } - GDrive.user.updateInfo(res) - }) - } catch { - GDrive.notifications.error('错误', '获取用户信息失败!E: 1'); - } - - try { - fetch("/API/GetVDiskTheStorageSpaceSize.api", {method: "GET"}).then(res => res.json()).then(res => { - if (res.code) { - GDrive.notifications.error('错误', '获取用户VDISK信息失败!E: 0'); - return; - } - GDrive.storage.updateUsage((res.UserVDiskUsed / (1024*1024*1024)).toFixed(2), (res.UserVDiskTotal / (1024*1024*1024)).toFixed(2)) - }) - } catch { - GDrive.notifications.error('错误', '获取用户VDISK信息失败!E: 1'); - } - - // 初始化文件列表 - GDrive.files.refreshFileList(); - - // 初始化图表 - initCharts(); -}); - -// 初始化图表 -function initCharts() { - // 存储使用趋势图表 - const storageCtx = document.getElementById('storageChart') - .getContext('2d'); - new Chart(storageCtx, { - type: 'line', - data: { - labels: ['1月', '2月', '3月', '4月', '5月', '6月'], - datasets: [{ - label: '已使用空间 (GB)', - data: [1.2, 1.5, 1.8, 2.0, 2.2, 2.4], - borderColor: '#165DFF', - backgroundColor: 'rgba(22, 93, 255, 0.1)', - tension: 0.3, - fill: true - }] - }, - options: { - responsive: true, - maintainAspectRatio: false, - plugins: { - legend: { - display: false - } - }, - scales: { - y: { - beginAtZero: true, - grid: { - color: 'rgba(0, 0, 0, 0.05)' - } - }, - x: { - grid: { - display: false - } - } - } - } - }); - // 文件类型分布图表 - const fileTypeCtx = document.getElementById('fileTypeChart') - .getContext('2d'); - new Chart(fileTypeCtx, { - type: 'doughnut', - data: { - labels: ['图片', '文档', '视频', '其他'], - datasets: [{ - data: [40000, 30000, 20000, 114514], - backgroundColor: [ - '#165DFF', - '#36D399', - '#FBBD23', - '#6B7280' - ], - borderWidth: 0 - }] - }, - options: { - responsive: true, - maintainAspectRatio: false, - plugins: { - legend: { - position: 'bottom', - labels: { - padding: 20, - usePointStyle: true, - pointStyle: 'circle' - } - } - }, - cutout: '70%' - } - }); -} \ No newline at end of file diff --git a/TempLate/gdrive/lib/js/tailwindcss.config.js b/TempLate/gdrive/lib/js/tailwindcss.config.js deleted file mode 100644 index 69a1f088..00000000 --- a/TempLate/gdrive/lib/js/tailwindcss.config.js +++ /dev/null @@ -1,23 +0,0 @@ -tailwind.config = { - darkMode: 'class', - theme: { - extend: { - colors: { - primary: '#165DFF', - secondary: '#6B7280', - success: '#36D399', - warning: '#FBBD23', - danger: '#F87272', - dark: { - 100: '#374151', - 200: '#1F2937', - 300: '#111827', - 400: '#030712' - } - }, - fontFamily: { - inter: ['Inter', 'sans-serif'], - }, - }, - } -} \ No newline at end of file diff --git a/TempLate/gdrive/s b/TempLate/gdrive/s deleted file mode 100644 index 5b23dbc3..00000000 --- a/TempLate/gdrive/s +++ /dev/null @@ -1,455 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-

最近活动

- 查看全部 -
-
-
-
- -
-
-
-

上传了文档

- 10分钟前 -
-

project_report.pdf

-
-
- -
-
- -
-
-
-

共享了文件夹

- 1小时前 -
-

Design Resources

-
-
- -
-
- -
-
-
-

下载了文件

- 3小时前 -
-

marketing_plan.xlsx

-
-
- -
-
- -
-
-
-

删除了文件

- 昨天 -
-

old_designs.zip

-
-
-
-
\ No newline at end of file diff --git a/TempLate/history/index.html b/TempLate/history/index.html deleted file mode 100644 index b9a8024c..00000000 --- a/TempLate/history/index.html +++ /dev/null @@ -1,521 +0,0 @@ - - - - - - 银河锋锐历史网页托管 - history.gvsds.com - - - - - - -
-
-

银河锋锐历史网页托管

-

保存时光印记,传承历史记忆
聚焦近现代中国红色历史,兼收世界各角落的历史碎片

- 了解更多 -
-
- - -
-
-

关于历史网页托管

-

这里是历史记忆的数字档案馆,是时光碎片的汇聚之地

- -
-
-
- -
-

红色历史聚焦

-

重点托管近现代中国红色历史相关网页

-
- 包含革命战争时期的文献资料、根据地建设史料、重要会议记录、先烈手稿与影像等。我们致力于构建数字化的红色记忆库,让井冈山精神、长征精神、延安精神等通过网页载体永续传承。 -
-
- -
-
- -
-

世界历史碎片

-

接收来自世界各地、各时期的历史网页托管

-
- 从两河流域的楔形文字泥板数字化档案,到二战时期欧洲抵抗运动的秘密通讯记录;从日本明治维新的政论报纸扫描件,到非洲独立运动的珍贵影像网页——任何地域的历史切片都能在此找到寄存之处。 -
-
- -
-
- -
-

数字存档技术

-

提供专业的网页存档技术,确保历史内容保存

-
- 采用Memento协议进行网页捕获,保留JavaScript、CSS等动态元素,同时生成WARC格式存档。针对历史网页特有的字体、格式问题,开发了兼容1990年代至今的浏览器渲染引擎模拟系统,确保内容原貌呈现。 -
-
- -
-
- -
-

非系统梳理模式

-

平台不做系统历史梳理,内容呈现更具随机性

-
- 区别于传统档案馆的线性叙事,我们保留历史的碎片化特质:可能上一页是1950年代上海纺织厂的工资单扫描件,下一页就是1980年代深圳蛇口工业区的招商广告。这种「无序性」恰是历史原生状态的数字镜像。 -
-
-
-
-
- - -
-
-

历史的意义

-

每一段历史都值得被铭记,每一个印记都值得被保存

- -
-
-
- -
-

传承记忆

-

将散落的历史记忆汇聚,让过去的声音在数字时代继续回响

-
- -
-
- -
-

连接过去与现在

-

历史不是割裂的片段,而是连接过去与现在的桥梁

-
- -
-
- -
-

集体记忆

-

无论是个人回忆还是群体历史,都是构成集体记忆的重要部分

-
-
-
-
- - -
-
-

提交历史网页托管

-

如果您有需要托管的历史网页或相关内容,请通过以下方式联系我们:

-

邮箱:

-

请在邮件中说明您的来意、托管内容的简要介绍以及相关文件或链接。

-

我们将尽快与您联系,评估并处理您的托管请求。

-
-
- - - - - - - \ No newline at end of file diff --git a/_check.log b/_check.log deleted file mode 100644 index 562dc760..00000000 --- a/_check.log +++ /dev/null @@ -1 +0,0 @@ - HINT: ForeignKey(unique=True) is usually better served by a OneToOneField. diff --git a/_test.tmp b/_test.tmp deleted file mode 100644 index e69de29b..00000000 diff --git a/_test_write.txt b/_test_write.txt deleted file mode 100644 index e69de29b..00000000 diff --git a/TempLate/AKS/2023/09/08/MikOS开源协议/index.html b/backup/AKS/2023/09/08/MikOS开源协议/index.html similarity index 100% rename from TempLate/AKS/2023/09/08/MikOS开源协议/index.html rename to backup/AKS/2023/09/08/MikOS开源协议/index.html diff --git a/TempLate/AKS/2023/09/28/550OS/index.html b/backup/AKS/2023/09/28/550OS/index.html similarity index 100% rename from TempLate/AKS/2023/09/28/550OS/index.html rename to backup/AKS/2023/09/28/550OS/index.html diff --git a/TempLate/AKS/404.html b/backup/AKS/404.html similarity index 100% rename from TempLate/AKS/404.html rename to backup/AKS/404.html diff --git a/TempLate/AKS/_Footer b/backup/AKS/_Footer similarity index 100% rename from TempLate/AKS/_Footer rename to backup/AKS/_Footer diff --git a/TempLate/AKS/_Nav b/backup/AKS/_Nav similarity index 100% rename from TempLate/AKS/_Nav rename to backup/AKS/_Nav diff --git a/TempLate/AKS/about/index.html b/backup/AKS/about/index.html similarity index 100% rename from TempLate/AKS/about/index.html rename to backup/AKS/about/index.html diff --git a/TempLate/AKS/archives/2023/09/index.html b/backup/AKS/archives/2023/09/index.html similarity index 100% rename from TempLate/AKS/archives/2023/09/index.html rename to backup/AKS/archives/2023/09/index.html diff --git a/TempLate/AKS/archives/2023/index.html b/backup/AKS/archives/2023/index.html similarity index 100% rename from TempLate/AKS/archives/2023/index.html rename to backup/AKS/archives/2023/index.html diff --git a/TempLate/AKS/archives/index.html b/backup/AKS/archives/index.html similarity index 100% rename from TempLate/AKS/archives/index.html rename to backup/AKS/archives/index.html diff --git a/TempLate/AKS/categories/index.html b/backup/AKS/categories/index.html similarity index 100% rename from TempLate/AKS/categories/index.html rename to backup/AKS/categories/index.html diff --git a/TempLate/AKS/css/backgroundize.css b/backup/AKS/css/backgroundize.css similarity index 100% rename from TempLate/AKS/css/backgroundize.css rename to backup/AKS/css/backgroundize.css diff --git a/TempLate/AKS/css/gitalk.css b/backup/AKS/css/gitalk.css similarity index 100% rename from TempLate/AKS/css/gitalk.css rename to backup/AKS/css/gitalk.css diff --git a/TempLate/AKS/css/highlight-dark.css b/backup/AKS/css/highlight-dark.css similarity index 100% rename from TempLate/AKS/css/highlight-dark.css rename to backup/AKS/css/highlight-dark.css diff --git a/TempLate/AKS/css/highlight.css b/backup/AKS/css/highlight.css similarity index 100% rename from TempLate/AKS/css/highlight.css rename to backup/AKS/css/highlight.css diff --git a/TempLate/AKS/css/main.css b/backup/AKS/css/main.css similarity index 100% rename from TempLate/AKS/css/main.css rename to backup/AKS/css/main.css diff --git a/TempLate/AKS/custom_code/custom.css b/backup/AKS/custom_code/custom.css similarity index 100% rename from TempLate/AKS/custom_code/custom.css rename to backup/AKS/custom_code/custom.css diff --git a/TempLate/AKS/custom_code/custom.js b/backup/AKS/custom_code/custom.js similarity index 100% rename from TempLate/AKS/custom_code/custom.js rename to backup/AKS/custom_code/custom.js diff --git a/TempLate/AKS/fors.py b/backup/AKS/fors.py similarity index 100% rename from TempLate/AKS/fors.py rename to backup/AKS/fors.py diff --git a/TempLate/AKS/img/2233.jpg b/backup/AKS/img/2233.jpg similarity index 100% rename from TempLate/AKS/img/2233.jpg rename to backup/AKS/img/2233.jpg diff --git a/TempLate/AKS/img/avatar.png b/backup/AKS/img/avatar.png similarity index 100% rename from TempLate/AKS/img/avatar.png rename to backup/AKS/img/avatar.png diff --git a/TempLate/AKS/img/default.png b/backup/AKS/img/default.png similarity index 100% rename from TempLate/AKS/img/default.png rename to backup/AKS/img/default.png diff --git a/TempLate/AKS/img/fluid.png b/backup/AKS/img/fluid.png similarity index 100% rename from TempLate/AKS/img/fluid.png rename to backup/AKS/img/fluid.png diff --git a/TempLate/AKS/img/loading.gif b/backup/AKS/img/loading.gif similarity index 100% rename from TempLate/AKS/img/loading.gif rename to backup/AKS/img/loading.gif diff --git a/TempLate/AKS/img/police_beian.png b/backup/AKS/img/police_beian.png similarity index 100% rename from TempLate/AKS/img/police_beian.png rename to backup/AKS/img/police_beian.png diff --git a/TempLate/AKS/index.html b/backup/AKS/index.html similarity index 100% rename from TempLate/AKS/index.html rename to backup/AKS/index.html diff --git a/TempLate/AKS/js/background.js b/backup/AKS/js/background.js similarity index 100% rename from TempLate/AKS/js/background.js rename to backup/AKS/js/background.js diff --git a/TempLate/AKS/js/boot.js b/backup/AKS/js/boot.js similarity index 100% rename from TempLate/AKS/js/boot.js rename to backup/AKS/js/boot.js diff --git a/TempLate/AKS/js/color-schema.js b/backup/AKS/js/color-schema.js similarity index 100% rename from TempLate/AKS/js/color-schema.js rename to backup/AKS/js/color-schema.js diff --git a/TempLate/AKS/js/events.js b/backup/AKS/js/events.js similarity index 100% rename from TempLate/AKS/js/events.js rename to backup/AKS/js/events.js diff --git a/TempLate/AKS/js/img-lazyload.js b/backup/AKS/js/img-lazyload.js similarity index 100% rename from TempLate/AKS/js/img-lazyload.js rename to backup/AKS/js/img-lazyload.js diff --git a/TempLate/AKS/js/leancloud.js b/backup/AKS/js/leancloud.js similarity index 100% rename from TempLate/AKS/js/leancloud.js rename to backup/AKS/js/leancloud.js diff --git a/TempLate/AKS/js/local-search.js b/backup/AKS/js/local-search.js similarity index 100% rename from TempLate/AKS/js/local-search.js rename to backup/AKS/js/local-search.js diff --git a/TempLate/AKS/js/plugins.js b/backup/AKS/js/plugins.js similarity index 100% rename from TempLate/AKS/js/plugins.js rename to backup/AKS/js/plugins.js diff --git a/TempLate/AKS/js/utils.js b/backup/AKS/js/utils.js similarity index 100% rename from TempLate/AKS/js/utils.js rename to backup/AKS/js/utils.js diff --git a/TempLate/AKS/links/index.html b/backup/AKS/links/index.html similarity index 100% rename from TempLate/AKS/links/index.html rename to backup/AKS/links/index.html diff --git a/TempLate/AKS/live2dw/lib/L2Dwidget.0.min.js b/backup/AKS/live2dw/lib/L2Dwidget.0.min.js similarity index 100% rename from TempLate/AKS/live2dw/lib/L2Dwidget.0.min.js rename to backup/AKS/live2dw/lib/L2Dwidget.0.min.js diff --git a/TempLate/AKS/live2dw/lib/L2Dwidget.0.min.js.map b/backup/AKS/live2dw/lib/L2Dwidget.0.min.js.map similarity index 100% rename from TempLate/AKS/live2dw/lib/L2Dwidget.0.min.js.map rename to backup/AKS/live2dw/lib/L2Dwidget.0.min.js.map diff --git a/TempLate/AKS/live2dw/lib/L2Dwidget.min.js b/backup/AKS/live2dw/lib/L2Dwidget.min.js similarity index 100% rename from TempLate/AKS/live2dw/lib/L2Dwidget.min.js rename to backup/AKS/live2dw/lib/L2Dwidget.min.js diff --git a/TempLate/AKS/live2dw/lib/L2Dwidget.min.js.map b/backup/AKS/live2dw/lib/L2Dwidget.min.js.map similarity index 100% rename from TempLate/AKS/live2dw/lib/L2Dwidget.min.js.map rename to backup/AKS/live2dw/lib/L2Dwidget.min.js.map diff --git a/TempLate/AKS/tags/index.html b/backup/AKS/tags/index.html similarity index 100% rename from TempLate/AKS/tags/index.html rename to backup/AKS/tags/index.html diff --git a/TempLate/AKS/xml/local-search.xml b/backup/AKS/xml/local-search.xml similarity index 100% rename from TempLate/AKS/xml/local-search.xml rename to backup/AKS/xml/local-search.xml diff --git a/TempLate/CAP/Login.html b/backup/CAP/Login.html similarity index 100% rename from TempLate/CAP/Login.html rename to backup/CAP/Login.html diff --git a/TempLate/CAP/window.html b/backup/CAP/window.html similarity index 100% rename from TempLate/CAP/window.html rename to backup/CAP/window.html diff --git a/TempLate/CAP/window.js b/backup/CAP/window.js similarity index 100% rename from TempLate/CAP/window.js rename to backup/CAP/window.js diff --git a/TempLate/Olds/2/8.html b/backup/Olds/2/8.html similarity index 100% rename from TempLate/Olds/2/8.html rename to backup/Olds/2/8.html diff --git a/TempLate/Olds/2/API.html b/backup/Olds/2/API.html similarity index 100% rename from TempLate/Olds/2/API.html rename to backup/Olds/2/API.html diff --git a/TempLate/Olds/2/ContactUS.html b/backup/Olds/2/ContactUS.html similarity index 100% rename from TempLate/Olds/2/ContactUS.html rename to backup/Olds/2/ContactUS.html diff --git a/TempLate/Olds/2/Gallery.html b/backup/Olds/2/Gallery.html similarity index 100% rename from TempLate/Olds/2/Gallery.html rename to backup/Olds/2/Gallery.html diff --git a/TempLate/Olds/2/_base b/backup/Olds/2/_base similarity index 100% rename from TempLate/Olds/2/_base rename to backup/Olds/2/_base diff --git a/TempLate/Olds/2/_error.html b/backup/Olds/2/_error.html similarity index 100% rename from TempLate/Olds/2/_error.html rename to backup/Olds/2/_error.html diff --git a/TempLate/Olds/2/about.html b/backup/Olds/2/about.html similarity index 100% rename from TempLate/Olds/2/about.html rename to backup/Olds/2/about.html diff --git a/TempLate/Olds/2/assets/8/8.8.png b/backup/Olds/2/assets/8/8.8.png similarity index 100% rename from TempLate/Olds/2/assets/8/8.8.png rename to backup/Olds/2/assets/8/8.8.png diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-grid.rtl.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-reboot.rtl.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap-utilities.rtl.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.css b/backup/Olds/2/assets/bootstrap/css/bootstrap.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.css b/backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css b/backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css rename to backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css diff --git a/TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css.map b/backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css.map rename to backup/Olds/2/assets/bootstrap/css/bootstrap.rtl.min.css.map diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.js b/backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.js similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.js rename to backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.js diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.js.map b/backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.js.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.js.map rename to backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.js.map diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js b/backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js rename to backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js.map b/backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js.map rename to backup/Olds/2/assets/bootstrap/js/bootstrap.bundle.min.js.map diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.js b/backup/Olds/2/assets/bootstrap/js/bootstrap.esm.js similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.js rename to backup/Olds/2/assets/bootstrap/js/bootstrap.esm.js diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.js.map b/backup/Olds/2/assets/bootstrap/js/bootstrap.esm.js.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.js.map rename to backup/Olds/2/assets/bootstrap/js/bootstrap.esm.js.map diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js b/backup/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js rename to backup/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js.map b/backup/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js.map rename to backup/Olds/2/assets/bootstrap/js/bootstrap.esm.min.js.map diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.js b/backup/Olds/2/assets/bootstrap/js/bootstrap.js similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.js rename to backup/Olds/2/assets/bootstrap/js/bootstrap.js diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.js.map b/backup/Olds/2/assets/bootstrap/js/bootstrap.js.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.js.map rename to backup/Olds/2/assets/bootstrap/js/bootstrap.js.map diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.min.js b/backup/Olds/2/assets/bootstrap/js/bootstrap.min.js similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.min.js rename to backup/Olds/2/assets/bootstrap/js/bootstrap.min.js diff --git a/TempLate/Olds/2/assets/bootstrap/js/bootstrap.min.js.map b/backup/Olds/2/assets/bootstrap/js/bootstrap.min.js.map similarity index 100% rename from TempLate/Olds/2/assets/bootstrap/js/bootstrap.min.js.map rename to backup/Olds/2/assets/bootstrap/js/bootstrap.min.js.map diff --git a/TempLate/Olds/2/assets/css/gvs-design-public-system.css b/backup/Olds/2/assets/css/gvs-design-public-system.css similarity index 100% rename from TempLate/Olds/2/assets/css/gvs-design-public-system.css rename to backup/Olds/2/assets/css/gvs-design-public-system.css diff --git a/TempLate/Olds/2/assets/css/gvs-design-system.css b/backup/Olds/2/assets/css/gvs-design-system.css similarity index 100% rename from TempLate/Olds/2/assets/css/gvs-design-system.css rename to backup/Olds/2/assets/css/gvs-design-system.css diff --git a/TempLate/Olds/2/assets/css/gvs-design-system.min.css b/backup/Olds/2/assets/css/gvs-design-system.min.css similarity index 100% rename from TempLate/Olds/2/assets/css/gvs-design-system.min.css rename to backup/Olds/2/assets/css/gvs-design-system.min.css diff --git a/TempLate/Olds/2/assets/css/gvs-win.css b/backup/Olds/2/assets/css/gvs-win.css similarity index 100% rename from TempLate/Olds/2/assets/css/gvs-win.css rename to backup/Olds/2/assets/css/gvs-win.css diff --git a/TempLate/Olds/2/assets/css/nucleo-icons.css b/backup/Olds/2/assets/css/nucleo-icons.css similarity index 100% rename from TempLate/Olds/2/assets/css/nucleo-icons.css rename to backup/Olds/2/assets/css/nucleo-icons.css diff --git a/TempLate/Olds/2/assets/css/nucleo-icons.min.css b/backup/Olds/2/assets/css/nucleo-icons.min.css similarity index 100% rename from TempLate/Olds/2/assets/css/nucleo-icons.min.css rename to backup/Olds/2/assets/css/nucleo-icons.min.css diff --git a/TempLate/Olds/2/assets/css/radio-card.css b/backup/Olds/2/assets/css/radio-card.css similarity index 100% rename from TempLate/Olds/2/assets/css/radio-card.css rename to backup/Olds/2/assets/css/radio-card.css diff --git a/TempLate/Olds/2/assets/demo/demo.css b/backup/Olds/2/assets/demo/demo.css similarity index 100% rename from TempLate/Olds/2/assets/demo/demo.css rename to backup/Olds/2/assets/demo/demo.css diff --git a/TempLate/Olds/2/assets/demo/demo.js b/backup/Olds/2/assets/demo/demo.js similarity index 100% rename from TempLate/Olds/2/assets/demo/demo.js rename to backup/Olds/2/assets/demo/demo.js diff --git a/TempLate/Olds/2/assets/demo/demo.min.css b/backup/Olds/2/assets/demo/demo.min.css similarity index 100% rename from TempLate/Olds/2/assets/demo/demo.min.css rename to backup/Olds/2/assets/demo/demo.min.css diff --git a/TempLate/Olds/2/assets/demo/demo.min.js b/backup/Olds/2/assets/demo/demo.min.js similarity index 100% rename from TempLate/Olds/2/assets/demo/demo.min.js rename to backup/Olds/2/assets/demo/demo.min.js diff --git a/TempLate/Olds/2/assets/demo/text.html b/backup/Olds/2/assets/demo/text.html similarity index 100% rename from TempLate/Olds/2/assets/demo/text.html rename to backup/Olds/2/assets/demo/text.html diff --git a/TempLate/Olds/2/assets/fonts/Mojangles.ttf b/backup/Olds/2/assets/fonts/Mojangles.ttf similarity index 100% rename from TempLate/Olds/2/assets/fonts/Mojangles.ttf rename to backup/Olds/2/assets/fonts/Mojangles.ttf diff --git a/TempLate/Olds/2/assets/fonts/iconfont.eot b/backup/Olds/2/assets/fonts/iconfont.eot similarity index 100% rename from TempLate/Olds/2/assets/fonts/iconfont.eot rename to backup/Olds/2/assets/fonts/iconfont.eot diff --git a/TempLate/Olds/2/assets/fonts/iconfont.svg b/backup/Olds/2/assets/fonts/iconfont.svg similarity index 100% rename from TempLate/Olds/2/assets/fonts/iconfont.svg rename to backup/Olds/2/assets/fonts/iconfont.svg diff --git a/TempLate/Olds/2/assets/fonts/iconfont.ttf b/backup/Olds/2/assets/fonts/iconfont.ttf similarity index 100% rename from TempLate/Olds/2/assets/fonts/iconfont.ttf rename to backup/Olds/2/assets/fonts/iconfont.ttf diff --git a/TempLate/Olds/2/assets/fonts/iconfont.woff b/backup/Olds/2/assets/fonts/iconfont.woff similarity index 100% rename from TempLate/Olds/2/assets/fonts/iconfont.woff rename to backup/Olds/2/assets/fonts/iconfont.woff diff --git a/TempLate/Olds/2/assets/fonts/nucleo.eot b/backup/Olds/2/assets/fonts/nucleo.eot similarity index 100% rename from TempLate/Olds/2/assets/fonts/nucleo.eot rename to backup/Olds/2/assets/fonts/nucleo.eot diff --git a/TempLate/Olds/2/assets/fonts/nucleo.ttf b/backup/Olds/2/assets/fonts/nucleo.ttf similarity index 100% rename from TempLate/Olds/2/assets/fonts/nucleo.ttf rename to backup/Olds/2/assets/fonts/nucleo.ttf diff --git a/TempLate/Olds/2/assets/fonts/nucleo.woff b/backup/Olds/2/assets/fonts/nucleo.woff similarity index 100% rename from TempLate/Olds/2/assets/fonts/nucleo.woff rename to backup/Olds/2/assets/fonts/nucleo.woff diff --git a/TempLate/Olds/2/assets/fonts/nucleo.woff2 b/backup/Olds/2/assets/fonts/nucleo.woff2 similarity index 100% rename from TempLate/Olds/2/assets/fonts/nucleo.woff2 rename to backup/Olds/2/assets/fonts/nucleo.woff2 diff --git a/TempLate/Olds/2/assets/gallery/1.png b/backup/Olds/2/assets/gallery/1.png similarity index 100% rename from TempLate/Olds/2/assets/gallery/1.png rename to backup/Olds/2/assets/gallery/1.png diff --git a/TempLate/Olds/2/assets/hlogos/2.jpg b/backup/Olds/2/assets/hlogos/2.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/2.jpg rename to backup/Olds/2/assets/hlogos/2.jpg diff --git a/TempLate/Olds/2/assets/hlogos/3.jpg b/backup/Olds/2/assets/hlogos/3.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/3.jpg rename to backup/Olds/2/assets/hlogos/3.jpg diff --git a/TempLate/Olds/2/assets/hlogos/4.jpg b/backup/Olds/2/assets/hlogos/4.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/4.jpg rename to backup/Olds/2/assets/hlogos/4.jpg diff --git a/TempLate/Olds/2/assets/hlogos/5.jpg b/backup/Olds/2/assets/hlogos/5.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/5.jpg rename to backup/Olds/2/assets/hlogos/5.jpg diff --git a/TempLate/Olds/2/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg b/backup/Olds/2/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg rename to backup/Olds/2/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg diff --git a/TempLate/Olds/2/assets/hlogos/6.jpg b/backup/Olds/2/assets/hlogos/6.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/6.jpg rename to backup/Olds/2/assets/hlogos/6.jpg diff --git a/TempLate/Olds/2/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg b/backup/Olds/2/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg rename to backup/Olds/2/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg diff --git a/TempLate/Olds/2/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg b/backup/Olds/2/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg rename to backup/Olds/2/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg diff --git a/TempLate/Olds/2/assets/hlogos/gnobg.png b/backup/Olds/2/assets/hlogos/gnobg.png similarity index 100% rename from TempLate/Olds/2/assets/hlogos/gnobg.png rename to backup/Olds/2/assets/hlogos/gnobg.png diff --git a/TempLate/Olds/2/assets/hlogos/new - Copy.jpg b/backup/Olds/2/assets/hlogos/new - Copy.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/new - Copy.jpg rename to backup/Olds/2/assets/hlogos/new - Copy.jpg diff --git a/TempLate/Olds/2/assets/hlogos/new - 副本 (2).jpg b/backup/Olds/2/assets/hlogos/new - 副本 (2).jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/new - 副本 (2).jpg rename to backup/Olds/2/assets/hlogos/new - 副本 (2).jpg diff --git a/TempLate/Olds/2/assets/hlogos/new - 副本.jpg b/backup/Olds/2/assets/hlogos/new - 副本.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/new - 副本.jpg rename to backup/Olds/2/assets/hlogos/new - 副本.jpg diff --git a/TempLate/Olds/2/assets/hlogos/new.jpg b/backup/Olds/2/assets/hlogos/new.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/new.jpg rename to backup/Olds/2/assets/hlogos/new.jpg diff --git a/TempLate/Olds/2/assets/hlogos/new1.jpg b/backup/Olds/2/assets/hlogos/new1.jpg similarity index 100% rename from TempLate/Olds/2/assets/hlogos/new1.jpg rename to backup/Olds/2/assets/hlogos/new1.jpg diff --git a/TempLate/Olds/2/assets/hlogos/nobg.png b/backup/Olds/2/assets/hlogos/nobg.png similarity index 100% rename from TempLate/Olds/2/assets/hlogos/nobg.png rename to backup/Olds/2/assets/hlogos/nobg.png diff --git a/TempLate/Olds/2/assets/img/UserDefaultImg.png b/backup/Olds/2/assets/img/UserDefaultImg.png similarity index 100% rename from TempLate/Olds/2/assets/img/UserDefaultImg.png rename to backup/Olds/2/assets/img/UserDefaultImg.png diff --git a/TempLate/Olds/2/assets/img/Z.png b/backup/Olds/2/assets/img/Z.png similarity index 100% rename from TempLate/Olds/2/assets/img/Z.png rename to backup/Olds/2/assets/img/Z.png diff --git a/TempLate/Olds/2/assets/img/apple-icon.png b/backup/Olds/2/assets/img/apple-icon.png similarity index 100% rename from TempLate/Olds/2/assets/img/apple-icon.png rename to backup/Olds/2/assets/img/apple-icon.png diff --git a/TempLate/Olds/2/assets/img/asc.gif b/backup/Olds/2/assets/img/asc.gif similarity index 100% rename from TempLate/Olds/2/assets/img/asc.gif rename to backup/Olds/2/assets/img/asc.gif diff --git a/TempLate/Olds/2/assets/img/bg.gif b/backup/Olds/2/assets/img/bg.gif similarity index 100% rename from TempLate/Olds/2/assets/img/bg.gif rename to backup/Olds/2/assets/img/bg.gif diff --git a/TempLate/Olds/2/assets/img/bitcoin.png b/backup/Olds/2/assets/img/bitcoin.png similarity index 100% rename from TempLate/Olds/2/assets/img/bitcoin.png rename to backup/Olds/2/assets/img/bitcoin.png diff --git a/TempLate/Olds/2/assets/img/blob.png b/backup/Olds/2/assets/img/blob.png similarity index 100% rename from TempLate/Olds/2/assets/img/blob.png rename to backup/Olds/2/assets/img/blob.png diff --git a/TempLate/Olds/2/assets/img/cercuri.png b/backup/Olds/2/assets/img/cercuri.png similarity index 100% rename from TempLate/Olds/2/assets/img/cercuri.png rename to backup/Olds/2/assets/img/cercuri.png diff --git a/TempLate/Olds/2/assets/img/chester-wade.jpg b/backup/Olds/2/assets/img/chester-wade.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/chester-wade.jpg rename to backup/Olds/2/assets/img/chester-wade.jpg diff --git a/TempLate/Olds/2/assets/img/cogs.gif b/backup/Olds/2/assets/img/cogs.gif similarity index 100% rename from TempLate/Olds/2/assets/img/cogs.gif rename to backup/Olds/2/assets/img/cogs.gif diff --git a/TempLate/Olds/2/assets/img/denys.jpg b/backup/Olds/2/assets/img/denys.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/denys.jpg rename to backup/Olds/2/assets/img/denys.jpg diff --git a/TempLate/Olds/2/assets/img/desc.gif b/backup/Olds/2/assets/img/desc.gif similarity index 100% rename from TempLate/Olds/2/assets/img/desc.gif rename to backup/Olds/2/assets/img/desc.gif diff --git a/TempLate/Olds/2/assets/img/dots.png b/backup/Olds/2/assets/img/dots.png similarity index 100% rename from TempLate/Olds/2/assets/img/dots.png rename to backup/Olds/2/assets/img/dots.png diff --git a/TempLate/Olds/2/assets/img/etherum.png b/backup/Olds/2/assets/img/etherum.png similarity index 100% rename from TempLate/Olds/2/assets/img/etherum.png rename to backup/Olds/2/assets/img/etherum.png diff --git a/TempLate/Olds/2/assets/img/fabien-bazanegue.jpg b/backup/Olds/2/assets/img/fabien-bazanegue.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/fabien-bazanegue.jpg rename to backup/Olds/2/assets/img/fabien-bazanegue.jpg diff --git a/TempLate/Olds/2/assets/img/favicon.png b/backup/Olds/2/assets/img/favicon.png similarity index 100% rename from TempLate/Olds/2/assets/img/favicon.png rename to backup/Olds/2/assets/img/favicon.png diff --git a/TempLate/Olds/2/assets/img/github.svg b/backup/Olds/2/assets/img/github.svg similarity index 100% rename from TempLate/Olds/2/assets/img/github.svg rename to backup/Olds/2/assets/img/github.svg diff --git a/TempLate/Olds/2/assets/img/google.svg b/backup/Olds/2/assets/img/google.svg similarity index 100% rename from TempLate/Olds/2/assets/img/google.svg rename to backup/Olds/2/assets/img/google.svg diff --git a/TempLate/Olds/2/assets/img/james.jpg b/backup/Olds/2/assets/img/james.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/james.jpg rename to backup/Olds/2/assets/img/james.jpg diff --git a/TempLate/Olds/2/assets/img/julie.jpeg b/backup/Olds/2/assets/img/julie.jpeg similarity index 100% rename from TempLate/Olds/2/assets/img/julie.jpeg rename to backup/Olds/2/assets/img/julie.jpeg diff --git a/TempLate/Olds/2/assets/img/landing-page.png b/backup/Olds/2/assets/img/landing-page.png similarity index 100% rename from TempLate/Olds/2/assets/img/landing-page.png rename to backup/Olds/2/assets/img/landing-page.png diff --git a/TempLate/Olds/2/assets/img/levitation.png b/backup/Olds/2/assets/img/levitation.png similarity index 100% rename from TempLate/Olds/2/assets/img/levitation.png rename to backup/Olds/2/assets/img/levitation.png diff --git a/TempLate/Olds/2/assets/img/logo.png b/backup/Olds/2/assets/img/logo.png similarity index 100% rename from TempLate/Olds/2/assets/img/logo.png rename to backup/Olds/2/assets/img/logo.png diff --git a/TempLate/Olds/2/assets/img/lora.jpg b/backup/Olds/2/assets/img/lora.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/lora.jpg rename to backup/Olds/2/assets/img/lora.jpg diff --git a/TempLate/Olds/2/assets/img/lzhbg.jpg b/backup/Olds/2/assets/img/lzhbg.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/lzhbg.jpg rename to backup/Olds/2/assets/img/lzhbg.jpg diff --git a/TempLate/Olds/2/assets/img/mark-finn.jpg b/backup/Olds/2/assets/img/mark-finn.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/mark-finn.jpg rename to backup/Olds/2/assets/img/mark-finn.jpg diff --git a/TempLate/Olds/2/assets/img/mike.jpg b/backup/Olds/2/assets/img/mike.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/mike.jpg rename to backup/Olds/2/assets/img/mike.jpg diff --git a/TempLate/Olds/2/assets/img/nucleo-logo.svg b/backup/Olds/2/assets/img/nucleo-logo.svg similarity index 100% rename from TempLate/Olds/2/assets/img/nucleo-logo.svg rename to backup/Olds/2/assets/img/nucleo-logo.svg diff --git a/TempLate/Olds/2/assets/img/path1.png b/backup/Olds/2/assets/img/path1.png similarity index 100% rename from TempLate/Olds/2/assets/img/path1.png rename to backup/Olds/2/assets/img/path1.png diff --git a/TempLate/Olds/2/assets/img/path2.png b/backup/Olds/2/assets/img/path2.png similarity index 100% rename from TempLate/Olds/2/assets/img/path2.png rename to backup/Olds/2/assets/img/path2.png diff --git a/TempLate/Olds/2/assets/img/path3.png b/backup/Olds/2/assets/img/path3.png similarity index 100% rename from TempLate/Olds/2/assets/img/path3.png rename to backup/Olds/2/assets/img/path3.png diff --git a/TempLate/Olds/2/assets/img/path4.png b/backup/Olds/2/assets/img/path4.png similarity index 100% rename from TempLate/Olds/2/assets/img/path4.png rename to backup/Olds/2/assets/img/path4.png diff --git a/TempLate/Olds/2/assets/img/path5.png b/backup/Olds/2/assets/img/path5.png similarity index 100% rename from TempLate/Olds/2/assets/img/path5.png rename to backup/Olds/2/assets/img/path5.png diff --git a/TempLate/Olds/2/assets/img/patrat.png b/backup/Olds/2/assets/img/patrat.png similarity index 100% rename from TempLate/Olds/2/assets/img/patrat.png rename to backup/Olds/2/assets/img/patrat.png diff --git a/TempLate/Olds/2/assets/img/profile-page.png b/backup/Olds/2/assets/img/profile-page.png similarity index 100% rename from TempLate/Olds/2/assets/img/profile-page.png rename to backup/Olds/2/assets/img/profile-page.png diff --git a/TempLate/Olds/2/assets/img/ripp.png b/backup/Olds/2/assets/img/ripp.png similarity index 100% rename from TempLate/Olds/2/assets/img/ripp.png rename to backup/Olds/2/assets/img/ripp.png diff --git a/TempLate/Olds/2/assets/img/ryan.jpg b/backup/Olds/2/assets/img/ryan.jpg similarity index 100% rename from TempLate/Olds/2/assets/img/ryan.jpg rename to backup/Olds/2/assets/img/ryan.jpg diff --git a/TempLate/Olds/2/assets/img/square-purple-1.png b/backup/Olds/2/assets/img/square-purple-1.png similarity index 100% rename from TempLate/Olds/2/assets/img/square-purple-1.png rename to backup/Olds/2/assets/img/square-purple-1.png diff --git a/TempLate/Olds/2/assets/img/square1.png b/backup/Olds/2/assets/img/square1.png similarity index 100% rename from TempLate/Olds/2/assets/img/square1.png rename to backup/Olds/2/assets/img/square1.png diff --git a/TempLate/Olds/2/assets/img/square2.png b/backup/Olds/2/assets/img/square2.png similarity index 100% rename from TempLate/Olds/2/assets/img/square2.png rename to backup/Olds/2/assets/img/square2.png diff --git a/TempLate/Olds/2/assets/img/square3.png b/backup/Olds/2/assets/img/square3.png similarity index 100% rename from TempLate/Olds/2/assets/img/square3.png rename to backup/Olds/2/assets/img/square3.png diff --git a/TempLate/Olds/2/assets/img/square4.png b/backup/Olds/2/assets/img/square4.png similarity index 100% rename from TempLate/Olds/2/assets/img/square4.png rename to backup/Olds/2/assets/img/square4.png diff --git a/TempLate/Olds/2/assets/img/square5.png b/backup/Olds/2/assets/img/square5.png similarity index 100% rename from TempLate/Olds/2/assets/img/square5.png rename to backup/Olds/2/assets/img/square5.png diff --git a/TempLate/Olds/2/assets/img/square6.png b/backup/Olds/2/assets/img/square6.png similarity index 100% rename from TempLate/Olds/2/assets/img/square6.png rename to backup/Olds/2/assets/img/square6.png diff --git a/TempLate/Olds/2/assets/img/terminexusbg.png b/backup/Olds/2/assets/img/terminexusbg.png similarity index 100% rename from TempLate/Olds/2/assets/img/terminexusbg.png rename to backup/Olds/2/assets/img/terminexusbg.png diff --git a/TempLate/Olds/2/assets/img/triunghiuri.png b/backup/Olds/2/assets/img/triunghiuri.png similarity index 100% rename from TempLate/Olds/2/assets/img/triunghiuri.png rename to backup/Olds/2/assets/img/triunghiuri.png diff --git a/TempLate/Olds/2/assets/img/waves.png b/backup/Olds/2/assets/img/waves.png similarity index 100% rename from TempLate/Olds/2/assets/img/waves.png rename to backup/Olds/2/assets/img/waves.png diff --git a/TempLate/Olds/2/assets/js/core/bootstrap.min.js b/backup/Olds/2/assets/js/core/bootstrap.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/core/bootstrap.min.js rename to backup/Olds/2/assets/js/core/bootstrap.min.js diff --git a/TempLate/Olds/2/assets/js/core/echarts.min.js b/backup/Olds/2/assets/js/core/echarts.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/core/echarts.min.js rename to backup/Olds/2/assets/js/core/echarts.min.js diff --git a/TempLate/Olds/2/assets/js/core/echarts.world.js b/backup/Olds/2/assets/js/core/echarts.world.js similarity index 100% rename from TempLate/Olds/2/assets/js/core/echarts.world.js rename to backup/Olds/2/assets/js/core/echarts.world.js diff --git a/TempLate/Olds/2/assets/js/core/jquery.min.js b/backup/Olds/2/assets/js/core/jquery.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/core/jquery.min.js rename to backup/Olds/2/assets/js/core/jquery.min.js diff --git a/TempLate/Olds/2/assets/js/core/popper.min.js b/backup/Olds/2/assets/js/core/popper.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/core/popper.min.js rename to backup/Olds/2/assets/js/core/popper.min.js diff --git a/TempLate/Olds/2/assets/js/core/scrollreveal.min.js b/backup/Olds/2/assets/js/core/scrollreveal.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/core/scrollreveal.min.js rename to backup/Olds/2/assets/js/core/scrollreveal.min.js diff --git a/TempLate/Olds/2/assets/js/gvs-design-system.js b/backup/Olds/2/assets/js/gvs-design-system.js similarity index 100% rename from TempLate/Olds/2/assets/js/gvs-design-system.js rename to backup/Olds/2/assets/js/gvs-design-system.js diff --git a/TempLate/Olds/2/assets/js/gvs-top-system.js b/backup/Olds/2/assets/js/gvs-top-system.js similarity index 100% rename from TempLate/Olds/2/assets/js/gvs-top-system.js rename to backup/Olds/2/assets/js/gvs-top-system.js diff --git a/TempLate/Olds/2/assets/js/i18n.lib.js b/backup/Olds/2/assets/js/i18n.lib.js similarity index 100% rename from TempLate/Olds/2/assets/js/i18n.lib.js rename to backup/Olds/2/assets/js/i18n.lib.js diff --git a/TempLate/Olds/2/assets/js/plugins/bootstrap-datepicker.min.js b/backup/Olds/2/assets/js/plugins/bootstrap-datepicker.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/bootstrap-datepicker.min.js rename to backup/Olds/2/assets/js/plugins/bootstrap-datepicker.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/bootstrap-datetimepicker.min.js b/backup/Olds/2/assets/js/plugins/bootstrap-datetimepicker.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/bootstrap-datetimepicker.min.js rename to backup/Olds/2/assets/js/plugins/bootstrap-datetimepicker.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/bootstrap-switch.min.js b/backup/Olds/2/assets/js/plugins/bootstrap-switch.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/bootstrap-switch.min.js rename to backup/Olds/2/assets/js/plugins/bootstrap-switch.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/chartjs.min.js b/backup/Olds/2/assets/js/plugins/chartjs.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/chartjs.min.js rename to backup/Olds/2/assets/js/plugins/chartjs.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/jquery.sharrre.min.js b/backup/Olds/2/assets/js/plugins/jquery.sharrre.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/jquery.sharrre.min.js rename to backup/Olds/2/assets/js/plugins/jquery.sharrre.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/moment.min.js b/backup/Olds/2/assets/js/plugins/moment.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/moment.min.js rename to backup/Olds/2/assets/js/plugins/moment.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/nouislider.min.js b/backup/Olds/2/assets/js/plugins/nouislider.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/nouislider.min.js rename to backup/Olds/2/assets/js/plugins/nouislider.min.js diff --git a/TempLate/Olds/2/assets/js/plugins/perfect-scrollbar.jquery.min.js b/backup/Olds/2/assets/js/plugins/perfect-scrollbar.jquery.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/plugins/perfect-scrollbar.jquery.min.js rename to backup/Olds/2/assets/js/plugins/perfect-scrollbar.jquery.min.js diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.esm.min.js b/backup/Olds/2/assets/js/socket/socket.io.esm.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.esm.min.js rename to backup/Olds/2/assets/js/socket/socket.io.esm.min.js diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.esm.min.js.map b/backup/Olds/2/assets/js/socket/socket.io.esm.min.js.map similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.esm.min.js.map rename to backup/Olds/2/assets/js/socket/socket.io.esm.min.js.map diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.js b/backup/Olds/2/assets/js/socket/socket.io.js similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.js rename to backup/Olds/2/assets/js/socket/socket.io.js diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.js.map b/backup/Olds/2/assets/js/socket/socket.io.js.map similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.js.map rename to backup/Olds/2/assets/js/socket/socket.io.js.map diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.min.js b/backup/Olds/2/assets/js/socket/socket.io.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.min.js rename to backup/Olds/2/assets/js/socket/socket.io.min.js diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.min.js.map b/backup/Olds/2/assets/js/socket/socket.io.min.js.map similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.min.js.map rename to backup/Olds/2/assets/js/socket/socket.io.min.js.map diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.msgpack.min.js b/backup/Olds/2/assets/js/socket/socket.io.msgpack.min.js similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.msgpack.min.js rename to backup/Olds/2/assets/js/socket/socket.io.msgpack.min.js diff --git a/TempLate/Olds/2/assets/js/socket/socket.io.msgpack.min.js.map b/backup/Olds/2/assets/js/socket/socket.io.msgpack.min.js.map similarity index 100% rename from TempLate/Olds/2/assets/js/socket/socket.io.msgpack.min.js.map rename to backup/Olds/2/assets/js/socket/socket.io.msgpack.min.js.map diff --git a/TempLate/Olds/2/assets/links/G.jpg b/backup/Olds/2/assets/links/G.jpg similarity index 100% rename from TempLate/Olds/2/assets/links/G.jpg rename to backup/Olds/2/assets/links/G.jpg diff --git a/TempLate/Olds/2/assets/links/GDEV.jpg b/backup/Olds/2/assets/links/GDEV.jpg similarity index 100% rename from TempLate/Olds/2/assets/links/GDEV.jpg rename to backup/Olds/2/assets/links/GDEV.jpg diff --git a/TempLate/Olds/2/assets/logo/1 - 副本.jpg b/backup/Olds/2/assets/logo/1 - 副本.jpg similarity index 100% rename from TempLate/Olds/2/assets/logo/1 - 副本.jpg rename to backup/Olds/2/assets/logo/1 - 副本.jpg diff --git a/TempLate/Olds/2/assets/logo/1.jpg b/backup/Olds/2/assets/logo/1.jpg similarity index 100% rename from TempLate/Olds/2/assets/logo/1.jpg rename to backup/Olds/2/assets/logo/1.jpg diff --git a/TempLate/Olds/2/assets/logo/GVSDS.jpg b/backup/Olds/2/assets/logo/GVSDS.jpg similarity index 100% rename from TempLate/Olds/2/assets/logo/GVSDS.jpg rename to backup/Olds/2/assets/logo/GVSDS.jpg diff --git a/TempLate/Olds/2/assets/mp4/ZYBWHATISWYT.mp4 b/backup/Olds/2/assets/mp4/ZYBWHATISWYT.mp4 similarity index 100% rename from TempLate/Olds/2/assets/mp4/ZYBWHATISWYT.mp4 rename to backup/Olds/2/assets/mp4/ZYBWHATISWYT.mp4 diff --git a/TempLate/Olds/2/assets/scss/blk-design-system.scss b/backup/Olds/2/assets/scss/blk-design-system.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system.scss rename to backup/Olds/2/assets/scss/blk-design-system.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_alert.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_alert.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_alert.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_alert.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_badge.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_badge.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_badge.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_badge.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_breadcrumb.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_breadcrumb.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_breadcrumb.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_breadcrumb.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_button-group.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_button-group.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_button-group.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_button-group.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_buttons.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_buttons.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_buttons.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_buttons.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_card.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_card.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_card.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_card.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_carousel.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_carousel.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_carousel.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_carousel.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_close.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_close.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_close.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_close.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_code.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_code.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_code.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_code.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_custom-forms.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_custom-forms.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_custom-forms.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_custom-forms.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_dropdown.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_dropdown.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_dropdown.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_dropdown.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_forms.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_forms.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_forms.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_forms.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_functions.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_functions.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_functions.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_functions.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_grid.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_grid.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_grid.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_grid.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_images.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_images.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_images.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_images.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_input-group.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_input-group.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_input-group.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_input-group.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_jumbotron.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_jumbotron.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_jumbotron.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_jumbotron.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_list-group.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_list-group.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_list-group.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_list-group.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_media.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_media.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_media.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_media.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_mixins.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_mixins.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_mixins.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_mixins.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_modal.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_modal.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_modal.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_modal.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_nav.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_nav.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_nav.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_nav.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_navbar.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_navbar.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_navbar.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_navbar.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_pagination.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_pagination.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_pagination.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_pagination.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_popover.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_popover.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_popover.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_popover.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_print.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_print.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_print.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_print.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_progress.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_progress.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_progress.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_progress.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_reboot.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_reboot.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_reboot.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_reboot.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_root.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_root.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_root.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_root.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_tables.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_tables.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_tables.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_tables.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_tooltip.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_tooltip.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_tooltip.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_tooltip.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_transitions.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_transitions.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_transitions.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_transitions.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_type.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_type.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_type.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_type.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_utilities.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_utilities.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_utilities.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_utilities.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_variables.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/_variables.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/_variables.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/_variables.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_alert.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_alert.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_alert.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_alert.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_background-variant.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_background-variant.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_background-variant.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_background-variant.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_badge.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_badge.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_badge.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_badge.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_border-radius.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_border-radius.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_border-radius.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_border-radius.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_box-shadow.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_box-shadow.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_box-shadow.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_box-shadow.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_breakpoints.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_breakpoints.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_breakpoints.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_breakpoints.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_buttons.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_buttons.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_buttons.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_buttons.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_caret.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_caret.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_caret.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_caret.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_clearfix.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_clearfix.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_clearfix.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_clearfix.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_float.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_float.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_float.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_float.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_forms.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_forms.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_forms.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_forms.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_gradients.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_gradients.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_gradients.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_gradients.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid-framework.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid-framework.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid-framework.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid-framework.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_grid.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_hover.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_hover.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_hover.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_hover.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_image.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_image.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_image.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_image.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_list-group.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_list-group.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_list-group.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_list-group.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_lists.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_lists.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_lists.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_lists.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_nav-divider.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_nav-divider.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_nav-divider.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_nav-divider.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_pagination.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_pagination.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_pagination.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_pagination.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_reset-text.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_reset-text.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_reset-text.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_reset-text.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_resize.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_resize.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_resize.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_resize.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_screen-reader.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_screen-reader.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_screen-reader.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_screen-reader.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_size.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_size.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_size.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_size.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_table-row.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_table-row.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_table-row.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_table-row.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-emphasis.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-emphasis.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-emphasis.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-emphasis.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-hide.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-hide.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-hide.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-hide.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-truncate.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-truncate.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-truncate.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_text-truncate.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_transition.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_transition.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_transition.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_transition.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_visibility.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_visibility.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_visibility.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/mixins/_visibility.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_align.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_align.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_align.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_align.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_background.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_background.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_background.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_background.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_borders.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_borders.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_borders.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_borders.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_clearfix.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_clearfix.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_clearfix.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_clearfix.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_display.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_display.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_display.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_display.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_embed.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_embed.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_embed.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_embed.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_flex.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_flex.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_flex.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_flex.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_float.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_float.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_float.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_float.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_position.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_position.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_position.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_position.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_screenreaders.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_screenreaders.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_screenreaders.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_screenreaders.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_shadows.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_shadows.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_shadows.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_shadows.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_sizing.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_sizing.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_sizing.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_sizing.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_spacing.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_spacing.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_spacing.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_spacing.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_text.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_text.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_text.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_text.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_visibility.scss b/backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_visibility.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_visibility.scss rename to backup/Olds/2/assets/scss/blk-design-system/bootstrap/utilities/_visibility.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_alerts.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_alerts.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_alerts.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_alerts.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_badge.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_badge.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_badge.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_badge.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_buttons.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_buttons.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_buttons.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_buttons.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_card.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_card.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_card.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_card.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_checkboxes-radio.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_checkboxes-radio.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_checkboxes-radio.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_checkboxes-radio.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_dropdown.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_dropdown.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_dropdown.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_dropdown.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_example-pages.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_example-pages.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_example-pages.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_example-pages.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_fixed-plugin.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_fixed-plugin.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_fixed-plugin.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_fixed-plugin.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_footer.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_footer.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_footer.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_footer.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_forms.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_forms.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_forms.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_forms.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_functions.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_functions.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_functions.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_functions.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_icons.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_icons.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_icons.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_icons.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_images.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_images.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_images.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_images.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_info-areas.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_info-areas.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_info-areas.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_info-areas.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_input-group.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_input-group.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_input-group.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_input-group.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_misc.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_misc.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_misc.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_misc.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_mixins.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_mixins.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_mixins.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_mixins.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_modal.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_modal.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_modal.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_modal.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_navbar.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_navbar.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_navbar.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_navbar.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_pagination.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_pagination.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_pagination.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_pagination.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_pills.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_pills.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_pills.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_pills.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_progress.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_progress.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_progress.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_progress.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_rtl.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_rtl.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_rtl.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_rtl.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_sections.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_sections.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_sections.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_sections.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_tables.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_tables.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_tables.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_tables.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_tabs.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_tabs.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_tabs.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_tabs.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_type.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_type.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_type.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_type.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_utilities.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_utilities.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_utilities.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_utilities.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/_variables.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/_variables.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/_variables.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/_variables.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-chart.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-chart.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-chart.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-chart.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-map.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-map.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-map.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-map.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-plain.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-plain.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-plain.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-plain.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-register.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-register.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-register.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-register.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-stats.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-stats.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-stats.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-stats.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-task.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-task.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-task.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-task.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-user.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-user.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/cards/_card-user.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/cards/_card-user.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_alert.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_alert.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_alert.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_alert.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_background-variant.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_background-variant.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_background-variant.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_background-variant.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_badges.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_badges.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_badges.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_badges.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_buttons.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_buttons.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_buttons.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_buttons.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_dropdown.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_dropdown.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_dropdown.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_dropdown.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_forms.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_forms.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_forms.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_forms.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_icon.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_icon.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_icon.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_icon.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_inputs.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_inputs.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_inputs.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_inputs.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_modals.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_modals.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_modals.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_modals.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_page-header.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_page-header.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_page-header.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_page-header.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_popovers.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_popovers.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_popovers.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_popovers.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_vendor-prefixes.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_vendor-prefixes.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_vendor-prefixes.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_vendor-prefixes.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_wizard.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_wizard.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/_wizard.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/_wizard.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/opacity.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/mixins/opacity.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/mixins/opacity.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/mixins/opacity.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_blogs.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_blogs.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_blogs.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_blogs.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_contactus.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_contactus.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_contactus.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_contactus.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_features.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_features.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_features.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_features.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_headers.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_headers.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_headers.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_headers.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_pricing.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_pricing.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_pricing.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_pricing.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_projects.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_projects.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_projects.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_projects.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_social-subscribe-lines.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_social-subscribe-lines.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_social-subscribe-lines.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_social-subscribe-lines.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_team.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_team.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_team.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_team.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_testimonials.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/sections/_testimonials.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/sections/_testimonials.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/sections/_testimonials.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_backgrounds.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_backgrounds.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_backgrounds.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_backgrounds.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_floating.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_floating.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_floating.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_floating.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_helper.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_helper.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_helper.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_helper.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_position.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_position.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_position.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_position.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_shadows.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_shadows.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_shadows.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_shadows.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_sizing.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_sizing.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_sizing.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_sizing.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_spacing.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_spacing.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_spacing.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_spacing.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_text.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_text.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_text.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_text.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_transform.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_transform.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/utilities/_transform.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/utilities/_transform.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-animate-bootstrap-notify.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-animate-bootstrap-notify.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-animate-bootstrap-notify.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-animate-bootstrap-notify.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-bootstrap-switch.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-bootstrap-switch.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-bootstrap-switch.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-bootstrap-switch.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-datetimepicker.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-datetimepicker.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-datetimepicker.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-datetimepicker.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-nouislider.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-nouislider.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-nouislider.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-nouislider.scss diff --git a/TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-perfect-scrollbar.scss b/backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-perfect-scrollbar.scss similarity index 100% rename from TempLate/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-perfect-scrollbar.scss rename to backup/Olds/2/assets/scss/blk-design-system/custom/vendor/_plugin-perfect-scrollbar.scss diff --git a/TempLate/Olds/2/assets/xterm/xterm.css b/backup/Olds/2/assets/xterm/xterm.css similarity index 100% rename from TempLate/Olds/2/assets/xterm/xterm.css rename to backup/Olds/2/assets/xterm/xterm.css diff --git a/TempLate/Olds/2/demo.html b/backup/Olds/2/demo.html similarity index 100% rename from TempLate/Olds/2/demo.html rename to backup/Olds/2/demo.html diff --git a/TempLate/Olds/2/enroll.html b/backup/Olds/2/enroll.html similarity index 100% rename from TempLate/Olds/2/enroll.html rename to backup/Olds/2/enroll.html diff --git a/TempLate/Olds/2/history.html b/backup/Olds/2/history.html similarity index 100% rename from TempLate/Olds/2/history.html rename to backup/Olds/2/history.html diff --git a/TempLate/Olds/2/index.html b/backup/Olds/2/index.html similarity index 100% rename from TempLate/Olds/2/index.html rename to backup/Olds/2/index.html diff --git a/TempLate/Olds/2/landing.html b/backup/Olds/2/landing.html similarity index 100% rename from TempLate/Olds/2/landing.html rename to backup/Olds/2/landing.html diff --git a/TempLate/Olds/2/links copy.html b/backup/Olds/2/links copy.html similarity index 100% rename from TempLate/Olds/2/links copy.html rename to backup/Olds/2/links copy.html diff --git a/TempLate/Olds/2/links.html b/backup/Olds/2/links.html similarity index 100% rename from TempLate/Olds/2/links.html rename to backup/Olds/2/links.html diff --git a/TempLate/Olds/2/login.html b/backup/Olds/2/login.html similarity index 100% rename from TempLate/Olds/2/login.html rename to backup/Olds/2/login.html diff --git a/TempLate/Olds/2/logos.html b/backup/Olds/2/logos.html similarity index 100% rename from TempLate/Olds/2/logos.html rename to backup/Olds/2/logos.html diff --git a/TempLate/Olds/2/members.html b/backup/Olds/2/members.html similarity index 100% rename from TempLate/Olds/2/members.html rename to backup/Olds/2/members.html diff --git a/TempLate/Olds/2/news.html b/backup/Olds/2/news.html similarity index 100% rename from TempLate/Olds/2/news.html rename to backup/Olds/2/news.html diff --git a/TempLate/Olds/2/profile.html b/backup/Olds/2/profile.html similarity index 100% rename from TempLate/Olds/2/profile.html rename to backup/Olds/2/profile.html diff --git a/TempLate/Olds/2/test.html b/backup/Olds/2/test.html similarity index 100% rename from TempLate/Olds/2/test.html rename to backup/Olds/2/test.html diff --git a/TempLate/Olds/2/voucher.html b/backup/Olds/2/voucher.html similarity index 100% rename from TempLate/Olds/2/voucher.html rename to backup/Olds/2/voucher.html diff --git a/TempLate/Olds/3/1.html b/backup/Olds/3/1.html similarity index 100% rename from TempLate/Olds/3/1.html rename to backup/Olds/3/1.html diff --git a/TempLate/Olds/3/ContactUS.html b/backup/Olds/3/ContactUS.html similarity index 100% rename from TempLate/Olds/3/ContactUS.html rename to backup/Olds/3/ContactUS.html diff --git a/TempLate/Olds/3/Errors/404.html b/backup/Olds/3/Errors/404.html similarity index 100% rename from TempLate/Olds/3/Errors/404.html rename to backup/Olds/3/Errors/404.html diff --git a/TempLate/Olds/3/Errors/500.html b/backup/Olds/3/Errors/500.html similarity index 100% rename from TempLate/Olds/3/Errors/500.html rename to backup/Olds/3/Errors/500.html diff --git a/TempLate/Olds/3/Errors/503.html b/backup/Olds/3/Errors/503.html similarity index 100% rename from TempLate/Olds/3/Errors/503.html rename to backup/Olds/3/Errors/503.html diff --git a/TempLate/Olds/3/Errors/Piracy/best-loving.cn b/backup/Olds/3/Errors/Piracy/best-loving.cn similarity index 100% rename from TempLate/Olds/3/Errors/Piracy/best-loving.cn rename to backup/Olds/3/Errors/Piracy/best-loving.cn diff --git a/TempLate/Olds/3/Errors/Piracy/kanglaohui.com b/backup/Olds/3/Errors/Piracy/kanglaohui.com similarity index 100% rename from TempLate/Olds/3/Errors/Piracy/kanglaohui.com rename to backup/Olds/3/Errors/Piracy/kanglaohui.com diff --git a/TempLate/Olds/3/Errors/_403_HOST.html b/backup/Olds/3/Errors/_403_HOST.html similarity index 100% rename from TempLate/Olds/3/Errors/_403_HOST.html rename to backup/Olds/3/Errors/_403_HOST.html diff --git a/TempLate/Olds/3/Errors/_CSRFError b/backup/Olds/3/Errors/_CSRFError similarity index 100% rename from TempLate/Olds/3/Errors/_CSRFError rename to backup/Olds/3/Errors/_CSRFError diff --git a/TempLate/Olds/3/Errors/_website_debug b/backup/Olds/3/Errors/_website_debug similarity index 100% rename from TempLate/Olds/3/Errors/_website_debug rename to backup/Olds/3/Errors/_website_debug diff --git a/TempLate/Olds/3/_base b/backup/Olds/3/_base similarity index 100% rename from TempLate/Olds/3/_base rename to backup/Olds/3/_base diff --git a/TempLate/Olds/3/app.py b/backup/Olds/3/app.py similarity index 100% rename from TempLate/Olds/3/app.py rename to backup/Olds/3/app.py diff --git a/TempLate/Olds/3/assets/css/gvsds-page.css b/backup/Olds/3/assets/css/gvsds-page.css similarity index 100% rename from TempLate/Olds/3/assets/css/gvsds-page.css rename to backup/Olds/3/assets/css/gvsds-page.css diff --git a/TempLate/Olds/3/assets/css/typewriter.css b/backup/Olds/3/assets/css/typewriter.css similarity index 100% rename from TempLate/Olds/3/assets/css/typewriter.css rename to backup/Olds/3/assets/css/typewriter.css diff --git a/TempLate/Olds/3/assets/hlogos/2.jpg b/backup/Olds/3/assets/hlogos/2.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/2.jpg rename to backup/Olds/3/assets/hlogos/2.jpg diff --git a/TempLate/Olds/3/assets/hlogos/3.jpg b/backup/Olds/3/assets/hlogos/3.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/3.jpg rename to backup/Olds/3/assets/hlogos/3.jpg diff --git a/TempLate/Olds/3/assets/hlogos/4.jpg b/backup/Olds/3/assets/hlogos/4.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/4.jpg rename to backup/Olds/3/assets/hlogos/4.jpg diff --git a/TempLate/Olds/3/assets/hlogos/5.jpg b/backup/Olds/3/assets/hlogos/5.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/5.jpg rename to backup/Olds/3/assets/hlogos/5.jpg diff --git a/TempLate/Olds/3/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg b/backup/Olds/3/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg rename to backup/Olds/3/assets/hlogos/527924593a817b7fa2335e5e504e68e.jpg diff --git a/TempLate/Olds/3/assets/hlogos/6.jpg b/backup/Olds/3/assets/hlogos/6.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/6.jpg rename to backup/Olds/3/assets/hlogos/6.jpg diff --git a/TempLate/Olds/3/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg b/backup/Olds/3/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg rename to backup/Olds/3/assets/hlogos/b47170821c58cd978078f9c043bcae8.jpg diff --git a/TempLate/Olds/3/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg b/backup/Olds/3/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg rename to backup/Olds/3/assets/hlogos/c07a83c48fd2b55c886572c7e15bb11.jpg diff --git a/TempLate/Olds/3/assets/hlogos/gnobg.png b/backup/Olds/3/assets/hlogos/gnobg.png similarity index 100% rename from TempLate/Olds/3/assets/hlogos/gnobg.png rename to backup/Olds/3/assets/hlogos/gnobg.png diff --git a/TempLate/Olds/3/assets/hlogos/new - Copy.jpg b/backup/Olds/3/assets/hlogos/new - Copy.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/new - Copy.jpg rename to backup/Olds/3/assets/hlogos/new - Copy.jpg diff --git a/TempLate/Olds/3/assets/hlogos/new - 副本 (2) - 副本.jpg b/backup/Olds/3/assets/hlogos/new - 副本 (2) - 副本.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/new - 副本 (2) - 副本.jpg rename to backup/Olds/3/assets/hlogos/new - 副本 (2) - 副本.jpg diff --git a/TempLate/Olds/3/assets/hlogos/new - 副本 (2).jpg b/backup/Olds/3/assets/hlogos/new - 副本 (2).jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/new - 副本 (2).jpg rename to backup/Olds/3/assets/hlogos/new - 副本 (2).jpg diff --git a/TempLate/Olds/3/assets/hlogos/new - 副本.jpg b/backup/Olds/3/assets/hlogos/new - 副本.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/new - 副本.jpg rename to backup/Olds/3/assets/hlogos/new - 副本.jpg diff --git a/TempLate/Olds/3/assets/hlogos/new.jpg b/backup/Olds/3/assets/hlogos/new.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/new.jpg rename to backup/Olds/3/assets/hlogos/new.jpg diff --git a/TempLate/Olds/3/assets/hlogos/new1.jpg b/backup/Olds/3/assets/hlogos/new1.jpg similarity index 100% rename from TempLate/Olds/3/assets/hlogos/new1.jpg rename to backup/Olds/3/assets/hlogos/new1.jpg diff --git a/TempLate/Olds/3/assets/hlogos/nobg.png b/backup/Olds/3/assets/hlogos/nobg.png similarity index 100% rename from TempLate/Olds/3/assets/hlogos/nobg.png rename to backup/Olds/3/assets/hlogos/nobg.png diff --git a/TempLate/Olds/3/assets/icon/ICON - 副本.png b/backup/Olds/3/assets/icon/ICON - 副本.png similarity index 100% rename from TempLate/Olds/3/assets/icon/ICON - 副本.png rename to backup/Olds/3/assets/icon/ICON - 副本.png diff --git a/TempLate/Olds/3/assets/icon/ICON.html b/backup/Olds/3/assets/icon/ICON.html similarity index 100% rename from TempLate/Olds/3/assets/icon/ICON.html rename to backup/Olds/3/assets/icon/ICON.html diff --git a/TempLate/Olds/3/assets/icon/ICON.png b/backup/Olds/3/assets/icon/ICON.png similarity index 100% rename from TempLate/Olds/3/assets/icon/ICON.png rename to backup/Olds/3/assets/icon/ICON.png diff --git a/TempLate/Olds/3/assets/icon/ICON_DARKLINE - 副本.png b/backup/Olds/3/assets/icon/ICON_DARKLINE - 副本.png similarity index 100% rename from TempLate/Olds/3/assets/icon/ICON_DARKLINE - 副本.png rename to backup/Olds/3/assets/icon/ICON_DARKLINE - 副本.png diff --git a/TempLate/Olds/3/assets/icon/ICON_DARKLINE.png b/backup/Olds/3/assets/icon/ICON_DARKLINE.png similarity index 100% rename from TempLate/Olds/3/assets/icon/ICON_DARKLINE.png rename to backup/Olds/3/assets/icon/ICON_DARKLINE.png diff --git a/TempLate/Olds/3/assets/img/Mascot/1.png b/backup/Olds/3/assets/img/Mascot/1.png similarity index 100% rename from TempLate/Olds/3/assets/img/Mascot/1.png rename to backup/Olds/3/assets/img/Mascot/1.png diff --git a/TempLate/Olds/3/assets/img/Mascot/2.png b/backup/Olds/3/assets/img/Mascot/2.png similarity index 100% rename from TempLate/Olds/3/assets/img/Mascot/2.png rename to backup/Olds/3/assets/img/Mascot/2.png diff --git a/TempLate/Olds/3/assets/img/Mascot/3D2757A144FF5F1EAA4919221A5CA7D8.png b/backup/Olds/3/assets/img/Mascot/3D2757A144FF5F1EAA4919221A5CA7D8.png similarity index 100% rename from TempLate/Olds/3/assets/img/Mascot/3D2757A144FF5F1EAA4919221A5CA7D8.png rename to backup/Olds/3/assets/img/Mascot/3D2757A144FF5F1EAA4919221A5CA7D8.png diff --git a/TempLate/Olds/3/assets/img/Mascot/OriginalImage.png b/backup/Olds/3/assets/img/Mascot/OriginalImage.png similarity index 100% rename from TempLate/Olds/3/assets/img/Mascot/OriginalImage.png rename to backup/Olds/3/assets/img/Mascot/OriginalImage.png diff --git a/TempLate/Olds/3/assets/js/chart.js b/backup/Olds/3/assets/js/chart.js similarity index 100% rename from TempLate/Olds/3/assets/js/chart.js rename to backup/Olds/3/assets/js/chart.js diff --git a/TempLate/Olds/3/assets/js/footer.js b/backup/Olds/3/assets/js/footer.js similarity index 100% rename from TempLate/Olds/3/assets/js/footer.js rename to backup/Olds/3/assets/js/footer.js diff --git a/TempLate/Olds/3/assets/js/i18n.lib.js b/backup/Olds/3/assets/js/i18n.lib.js similarity index 100% rename from TempLate/Olds/3/assets/js/i18n.lib.js rename to backup/Olds/3/assets/js/i18n.lib.js diff --git a/TempLate/Olds/3/assets/js/icon.js b/backup/Olds/3/assets/js/icon.js similarity index 100% rename from TempLate/Olds/3/assets/js/icon.js rename to backup/Olds/3/assets/js/icon.js diff --git a/TempLate/Olds/3/assets/js/nav.js b/backup/Olds/3/assets/js/nav.js similarity index 100% rename from TempLate/Olds/3/assets/js/nav.js rename to backup/Olds/3/assets/js/nav.js diff --git a/TempLate/Olds/3/assets/js/reveal.js b/backup/Olds/3/assets/js/reveal.js similarity index 100% rename from TempLate/Olds/3/assets/js/reveal.js rename to backup/Olds/3/assets/js/reveal.js diff --git a/TempLate/Olds/3/assets/js/scrollreveal.min.js b/backup/Olds/3/assets/js/scrollreveal.min.js similarity index 100% rename from TempLate/Olds/3/assets/js/scrollreveal.min.js rename to backup/Olds/3/assets/js/scrollreveal.min.js diff --git a/TempLate/Olds/3/assets/js/tailwind-config.js b/backup/Olds/3/assets/js/tailwind-config.js similarity index 100% rename from TempLate/Olds/3/assets/js/tailwind-config.js rename to backup/Olds/3/assets/js/tailwind-config.js diff --git a/TempLate/Olds/3/assets/js/typewriter.js b/backup/Olds/3/assets/js/typewriter.js similarity index 100% rename from TempLate/Olds/3/assets/js/typewriter.js rename to backup/Olds/3/assets/js/typewriter.js diff --git a/TempLate/Olds/3/assets/members/Chindows.jpg b/backup/Olds/3/assets/members/Chindows.jpg similarity index 100% rename from TempLate/Olds/3/assets/members/Chindows.jpg rename to backup/Olds/3/assets/members/Chindows.jpg diff --git a/TempLate/Olds/3/assets/members/terminexus.jpg b/backup/Olds/3/assets/members/terminexus.jpg similarity index 100% rename from TempLate/Olds/3/assets/members/terminexus.jpg rename to backup/Olds/3/assets/members/terminexus.jpg diff --git a/TempLate/Olds/3/assets/members/yrzd.jpg b/backup/Olds/3/assets/members/yrzd.jpg similarity index 100% rename from TempLate/Olds/3/assets/members/yrzd.jpg rename to backup/Olds/3/assets/members/yrzd.jpg diff --git a/TempLate/Olds/3/assets/members/赤砂.jpg b/backup/Olds/3/assets/members/赤砂.jpg similarity index 100% rename from TempLate/Olds/3/assets/members/赤砂.jpg rename to backup/Olds/3/assets/members/赤砂.jpg diff --git a/TempLate/Olds/3/assets/project/asdg.png b/backup/Olds/3/assets/project/asdg.png similarity index 100% rename from TempLate/Olds/3/assets/project/asdg.png rename to backup/Olds/3/assets/project/asdg.png diff --git a/TempLate/Olds/3/assets/project/emstc.png b/backup/Olds/3/assets/project/emstc.png similarity index 100% rename from TempLate/Olds/3/assets/project/emstc.png rename to backup/Olds/3/assets/project/emstc.png diff --git a/TempLate/Olds/3/assets/project/nsql.png b/backup/Olds/3/assets/project/nsql.png similarity index 100% rename from TempLate/Olds/3/assets/project/nsql.png rename to backup/Olds/3/assets/project/nsql.png diff --git a/TempLate/Olds/3/gallery.html b/backup/Olds/3/gallery.html similarity index 100% rename from TempLate/Olds/3/gallery.html rename to backup/Olds/3/gallery.html diff --git a/TempLate/Olds/3/history.html b/backup/Olds/3/history.html similarity index 100% rename from TempLate/Olds/3/history.html rename to backup/Olds/3/history.html diff --git a/TempLate/Olds/3/index.html b/backup/Olds/3/index.html similarity index 100% rename from TempLate/Olds/3/index.html rename to backup/Olds/3/index.html diff --git a/TempLate/Olds/3/index2.html b/backup/Olds/3/index2.html similarity index 100% rename from TempLate/Olds/3/index2.html rename to backup/Olds/3/index2.html diff --git a/TempLate/Olds/3/login.html b/backup/Olds/3/login.html similarity index 100% rename from TempLate/Olds/3/login.html rename to backup/Olds/3/login.html diff --git a/TempLate/Olds/3/members.html b/backup/Olds/3/members.html similarity index 100% rename from TempLate/Olds/3/members.html rename to backup/Olds/3/members.html diff --git a/TempLate/Olds/3/register.html b/backup/Olds/3/register.html similarity index 100% rename from TempLate/Olds/3/register.html rename to backup/Olds/3/register.html diff --git a/TempLate/nav/bp3.html b/backup/nav/bp3.html similarity index 100% rename from TempLate/nav/bp3.html rename to backup/nav/bp3.html diff --git a/TempLate/nav/index.html b/backup/nav/index.html similarity index 100% rename from TempLate/nav/index.html rename to backup/nav/index.html diff --git a/gvsds/apps/crb/__pycache__/views.cpython-312.pyc b/gvsds/apps/crb/__pycache__/views.cpython-312.pyc index c7e761bf95b85b97c7281a0829deea40995b875e..66bae94d2b8502205aeadf98a94b072bf72d035e 100644 GIT binary patch delta 21046 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 dict | None: +def RequireCompanyPrivateAccess(request, page_path: str = None, explicit_company_uuid: str = None) -> dict | None: """校验当前角色有权访问页面对应的公司私有业务 规则(对齐 menu.py 菜单过滤): + - 显式指定 explicit_company_uuid:直接按该公司校验(不查菜单表) - 页面无对应菜单 / 菜单为公有 → 放行 - 菜单私有:当前角色公司必须等于菜单所属公司,否则拒绝 - 管理员(admin:super / admin:tenant)跳过校验(与菜单管理员特权一致) @@ -133,21 +135,30 @@ def RequireCompanyPrivateAccess(request, page_path: str = None) -> dict | None: request: DRF request(依赖 CurrentRoleMiddleware 注入 current_company_uuid) page_path: 请求对应的菜单页面路径(如 pages/private/CreateE/wallet.html)。 缺省时从 Referer 头自动提取。 + explicit_company_uuid: 显式指定归属公司 UUID 字符串(可选,用于菜单公有 + 但业务归属明确的场景,如商店交易)。 Returns: None 表示放行;dict 表示拒绝响应(直接返回给前端)。 """ - if page_path is None: - referer = request.META.get('HTTP_REFERER', '') or '' - # Referer 形如 https://gerp.gvsds.com/pages/private/CreateE/wallet.html - page_path = referer.split('?')[0].rstrip('/') - if page_path.startswith('http'): - from urllib.parse import urlparse - page_path = urlparse(page_path).path.lstrip('/') + if explicit_company_uuid: + try: + company_uuid = UUIDObj(explicit_company_uuid).bytes + except (ValueError, TypeError): + return _Err('业务公司配置异常,无权访问') + is_private = True + else: + if page_path is None: + referer = request.META.get('HTTP_REFERER', '') or '' + # Referer 形如 https://gerp.gvsds.com/pages/private/CreateE/wallet.html + page_path = referer.split('?')[0].rstrip('/') + if page_path.startswith('http'): + from urllib.parse import urlparse + page_path = urlparse(page_path).path.lstrip('/') - company_uuid, is_private = _MenuLinkCompanyUUID(page_path) - if not is_private: - return None # 公有菜单或未配置菜单:放行 + company_uuid, is_private = _MenuLinkCompanyUUID(page_path) + if not is_private: + return None # 公有菜单或未配置菜单:放行 # 管理员特权:与菜单过滤一致,管理员可访问所有公司私有业务 try: @@ -174,6 +185,10 @@ class CompanyPrivateAccessMixin: 配置(子类覆盖): - company_private_page: 本 ViewSet 对应的菜单页面路径 (如 pages/private/CreateE/wallet.html;缺省时按 Referer 自动提取) + - company_private_company_uuid: 显式指定归属公司 UUID 字符串(可选)。 + 当菜单为公有(CompanyUUID 为空)但业务实际归属某公司时使用, + 指定后直接按该公司校验,不查菜单表。示例:商店菜单为公有 + (允许公开浏览商品),但购物车/下单等交易仅限枢机协律公司。 - company_private_exempt: 免校验的 action 名集合(如公开浏览接口) 校验不通过时抛 PermissionDenied(HTTP 403),iframe 内旧页面 @@ -181,6 +196,7 @@ class CompanyPrivateAccessMixin: """ company_private_page = None + company_private_company_uuid = None company_private_exempt = set() def initial(self, request, *args, **kwargs): @@ -188,7 +204,11 @@ class CompanyPrivateAccessMixin: action = getattr(self, 'action', None) if action in self.company_private_exempt: return - err = RequireCompanyPrivateAccess(request, self.company_private_page) + err = RequireCompanyPrivateAccess( + request, + self.company_private_page, + explicit_company_uuid=self.company_private_company_uuid, + ) if err: from rest_framework.exceptions import PermissionDenied raise PermissionDenied(err.get('msg', '无权访问该公司业务')) @@ -1509,7 +1529,7 @@ def _get_buyer_info(gvsds_user_uuid): return player_uuid_bytes, player_name, None -class ShopProductViewSet(viewsets.ModelViewSet): +class ShopProductViewSet(CompanyPrivateAccessMixin, viewsets.ModelViewSet): """商品 ViewSet——商品管理 + 公开浏览 业务 action: @@ -1525,6 +1545,9 @@ class ShopProductViewSet(viewsets.ModelViewSet): queryset = ShopProduct.objects.all() serializer_class = ShopProductSerializer permission_classes = [IsAuthenticated] + company_private_page = 'pages/private/CreateE/shop.html' + company_private_company_uuid = 'ef67bb82-a590-402e-a893-81ae6127fb08' + company_private_exempt = {'list_public', 'detail'} @action(detail=False, methods=['get'], permission_classes=[AllowAny]) def list_public(self, request): @@ -1777,7 +1800,7 @@ class ShopProductViewSet(viewsets.ModelViewSet): return Response({'status': 0}) -class ShopCartViewSet(viewsets.ModelViewSet): +class ShopCartViewSet(CompanyPrivateAccessMixin, viewsets.ModelViewSet): """购物车 ViewSet——当前用户的购物车 业务 action: @@ -1791,6 +1814,8 @@ class ShopCartViewSet(viewsets.ModelViewSet): queryset = ShopCartItem.objects.all() serializer_class = ShopCartItemSerializer permission_classes = [IsAuthenticated] + company_private_page = 'pages/private/CreateE/shop.html' + company_private_company_uuid = 'ef67bb82-a590-402e-a893-81ae6127fb08' @action(detail=False, methods=['get']) def list(self, request): @@ -1953,7 +1978,7 @@ class ShopCartViewSet(viewsets.ModelViewSet): return Response({'status': 0}) -class ShopOrderViewSet(viewsets.ModelViewSet): +class ShopOrderViewSet(CompanyPrivateAccessMixin, viewsets.ModelViewSet): """订单 ViewSet——订单全生命周期 状态机: @@ -1976,6 +2001,8 @@ class ShopOrderViewSet(viewsets.ModelViewSet): queryset = ShopOrder.objects.all() serializer_class = ShopOrderSerializer permission_classes = [IsAuthenticated] + company_private_page = 'pages/private/CreateE/shop.html' + company_private_company_uuid = 'ef67bb82-a590-402e-a893-81ae6127fb08' @action(detail=False, methods=['get']) def list_orders(self, request): diff --git a/php/fix-nextcloud-ini.ps1 b/php/fix-nextcloud-ini.ps1 deleted file mode 100644 index ce7b7b17..00000000 --- a/php/fix-nextcloud-ini.ps1 +++ /dev/null @@ -1,123 +0,0 @@ -# Fix D:\php\php.ini for Nextcloud 34 - 5 changes, idempotent -$ErrorActionPreference = 'Stop' -$iniPath = 'D:\php\php.ini' - -if (-not (Test-Path $iniPath)) { throw "$iniPath not found" } - -$lines = [System.IO.File]::ReadAllLines($iniPath, [System.Text.Encoding]::UTF8) -$patched = 0 -$log = New-Object System.Collections.Generic.List[string] - -# 1) [opcache] 段后插入 zend_extension=opcache -$opcacheIdx = -1 -for ($i = 0; $i -lt $lines.Count; $i++) { - if ($lines[$i] -eq '[opcache]') { $opcacheIdx = $i; break } -} -if ($opcacheIdx -lt 0) { throw '[opcache] section not found' } - -$hasZend = $false -for ($j = $opcacheIdx; $j -lt [Math]::Min($opcacheIdx + 3, $lines.Count); $j++) { - if ($lines[$j] -match '^zend_extension=opcache') { $hasZend = $true; break } -} -if (-not $hasZend) { - $newLines = New-Object System.Collections.Generic.List[string] - for ($k = 0; $k -lt $lines.Count; $k++) { - $newLines.Add($lines[$k]) - if ($k -eq $opcacheIdx) { - $newLines.Add('zend_extension=opcache') - $patched++ - $line1 = $opcacheIdx + 2 - $log.Add(" [+] line $line1 : added zend_extension=opcache") - } - } - $lines = $newLines.ToArray() -} else { - $log.Add(' [.] zend_extension=opcache already present, skip') -} - -# 2-5) 直接按行内容替换(幂等) -$patterns = @( - @{ Old = 'cgi.fix_pathinfo=0'; New = 'cgi.fix_pathinfo=1' }, - @{ Old = 'max_execution_time = 360'; New = 'max_execution_time = 3600' }, - @{ Old = 'max_input_time = 360'; New = 'max_input_time = 3600' }, - @{ Old = 'opcache.revalidate_freq=1'; New = 'opcache.revalidate_freq=60' } -) - -foreach ($p in $patterns) { - $foundIdx = -1 - for ($i = 0; $i -lt $lines.Count; $i++) { - if ($lines[$i] -eq $p.Old) { $foundIdx = $i; break } - } - if ($foundIdx -ge 0) { - $lines[$foundIdx] = $p.New - $patched++ - $lineNum = $foundIdx + 1 - $log.Add(" [+] line $lineNum : $($p.Old) -> $($p.New)") - } else { - $alreadyNew = $false - for ($i = 0; $i -lt $lines.Count; $i++) { - if ($lines[$i] -eq $p.New) { $alreadyNew = $true; break } - } - if ($alreadyNew) { - $log.Add(" [.] already set to $($p.New), skip") - } else { - $log.Add(" [!] pattern not found: $($p.Old)") - } - } -} - -# 写回(不写 BOM) -$utf8 = New-Object System.Text.UTF8Encoding($false) -[System.IO.File]::WriteAllLines($iniPath, $lines, $utf8) - -Write-Host '=== 1) 改了 ' $patched ' 处 ===' -ForegroundColor Cyan -foreach ($l in $log) { Write-Host $l } - -Write-Host '' -Write-Host '=== 2) 验证 5 处最终值 ===' -ForegroundColor Cyan -$verify = [System.IO.File]::ReadAllLines($iniPath) -$keys = @('^zend_extension=opcache', '^cgi\.fix_pathinfo=', '^max_execution_time', '^max_input_time', '^opcache\.revalidate_freq') -foreach ($k in $keys) { - $m = $verify | Select-String -Pattern $k | Select-Object -First 1 - if ($m) { Write-Host (' line ' + $m.LineNumber + ' : ' + $m.Line.Trim()) } else { Write-Host ' NOT FOUND' } -} - -Write-Host '' -Write-Host '=== 3) 重启 PHP-CGI(kill + 拉起 4 worker)===' -ForegroundColor Cyan -Get-Process php-cgi -ErrorAction SilentlyContinue | Stop-Process -Force -Start-Sleep -Seconds 2 -$alive = @(Get-Process php-cgi -ErrorAction SilentlyContinue) -Write-Host (' kill 后剩余:' + $alive.Count) - -$PhpCgi = 'D:\php\php-cgi.exe' -$PhpIni = 'D:\php\php.ini' -$LogDir = 'D:\SMANAGE\logs' -if (-not (Test-Path $LogDir)) { New-Item -ItemType Directory -Path $LogDir -Force | Out-Null } -$LogOut = Join-Path $LogDir 'php-cgi.out.log' -$LogErr = Join-Path $LogDir 'php-cgi.err.log' - -for ($i = 0; $i -lt 4; $i++) { - $port = 9001 + $i - $env:PHP_FCGI_MAX_REQUESTS = 1000 - $argList = "-b 127.0.0.1:$port -c `"$PhpIni`"" - $p = Start-Process -FilePath $PhpCgi -ArgumentList $argList -WindowStyle Hidden -PassThru -RedirectStandardOutput $LogOut -RedirectStandardError $LogErr - Write-Host (' [start] worker ' + $i + ' on 127.0.0.1:' + $port + ' pid=' + $p.Id) -} -Start-Sleep -Seconds 3 - -Write-Host '' -Write-Host '=== 4) 验证:进程 / 端口 / 扩展 ===' -ForegroundColor Cyan -Write-Host ' --- 进程 ---' -Get-Process php-cgi -ErrorAction SilentlyContinue | Format-Table Id,StartTime -AutoSize | Out-String | Write-Host -Write-Host ' --- 9001-9004 LISTENING ---' -$listen = netstat -ano | findstr ':900[1-4]' | findstr LISTENING -if ($listen) { $listen | ForEach-Object { Write-Host (' ' + $_) } } else { Write-Host ' (无)' } - -Write-Host ' --- 关键扩展加载情况 ---' -$mods = & 'D:\php\php.exe' -m 2>&1 | Out-String -@('pdo_mysql','mysqli','PDO','mbstring','gd','intl','zip','curl','opcache','fileinfo','exif','ldap','openssl','sodium','gmp') | ForEach-Object { - $name = $_ - $hit = $false - foreach ($ln in $mods -split "`r?`n") { if ($ln.Trim() -eq $name) { $hit = $true; break } } - if ($hit) { Write-Host (' [v] ' + $name) -ForegroundColor Green } else { Write-Host (' [ ] ' + $name) -ForegroundColor Yellow } -} diff --git a/php/keepalive-nextcloud.ps1 b/php/keepalive-nextcloud.ps1 deleted file mode 100644 index 11a3832e..00000000 --- a/php/keepalive-nextcloud.ps1 +++ /dev/null @@ -1,35 +0,0 @@ -# keepalive-nextcloud.ps1 -# 每 30s 一次 curl https://127.0.0.1:14443/status.php -# 目的:让 PHP-CGI 4 worker 永远保持热,避免公网 nc.gvsds.com 第一次 60-90s cold start 撞 frpc 60s 超时 -# 用法:Start-Process powershell -WindowStyle Hidden -FilePath D:\SMANAGE\php\keepalive-nextcloud.ps1 -# 停止:Stop-Process -Name powershell -Filter "CommandLine -like 'keepalive-nextcloud*'" - -$ErrorActionPreference = 'SilentlyContinue' -$url = 'https://127.0.0.1:14443/status.php' -$intervalSec = 30 -$logDir = 'D:\SMANAGE\logs' -if (-not (Test-Path $logDir)) { New-Item -ItemType Directory -Path $logDir -Force | Out-Null } -$logFile = Join-Path $logDir 'keepalive-nextcloud.log' - -function Log($msg) { - $ts = Get-Date -Format 'yyyy-MM-dd HH:mm:ss' - "$ts $msg" | Out-File -FilePath $logFile -Append -Encoding UTF8 -} - -Log '=== keepalive-nextcloud 启动 ===' -Log "target: $url interval: ${intervalSec}s" - -# 让 curl 跳过证书验证(自签/通配证书) -$env:CURL_CA_BUNDLE = '' -$skipCert = '-k' - -while ($true) { - $sw = [System.Diagnostics.Stopwatch]::StartNew() - $out = & curl.exe $skipCert -s -o $null --max-time 60 -w 'code=%{http_code} time=%{time_total}s' $url 2>&1 - $sw.Stop() - $ms = [int]$sw.ElapsedMilliseconds - if ($ms -gt 1500 -or $LASTEXITCODE -ne 0) { - Log " SLOW/FAIL $out wall=${ms}ms exit=$LASTEXITCODE" - } - Start-Sleep -Seconds $intervalSec -} diff --git a/php/php-upstream.conf b/php/php-upstream.conf deleted file mode 100644 index 2658df1f..00000000 --- a/php/php-upstream.conf +++ /dev/null @@ -1,8 +0,0 @@ -# Auto-generated by start-php.ps1 鈥?DO NOT EDIT -# Nextcloud FastCGI upstream pool -upstream php_fcgi_nextcloud { - server 127.0.0.1:9001; - server 127.0.0.1:9002; - server 127.0.0.1:9003; - server 127.0.0.1:9004; -} diff --git a/php/start-php.ps1 b/php/start-php.ps1 deleted file mode 100644 index 66461a32..00000000 --- a/php/start-php.ps1 +++ /dev/null @@ -1,54 +0,0 @@ -# 启动 PHP-CGI(FastCGI for nginx) -# 监听 127.0.0.1:9001-9004,4 个并发子进程 -# 由 nginx upstream 负载均衡 -# 用法:以管理员身份运行 powershell -ExecutionPolicy Bypass -File start-php.ps1 - -# 提权 -if (!([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)) { - Start-Process powershell.exe "-ExecutionPolicy Bypass -File `"$PSCommandPath`"" -Verb RunAs - exit -} - -# 路径 -$PhpDir = "D:\php" -$PhpCgi = Join-Path $PhpDir "php-cgi.exe" -$PhpIni = Join-Path $PhpDir "php.ini" -$LogDir = "D:\SMANAGE\logs" -if (!(Test-Path $LogDir)) { New-Item -ItemType Directory -Path $LogDir -Force | Out-Null } -$LogOut = Join-Path $LogDir "php-cgi.out.log" -$LogErr = Join-Path $LogDir "php-cgi.err.log" - -# 配置 -$StartPort = 9001 -$NumWorkers = 4 -$MaxRequests = 1000 - -# 杀掉残留 php-cgi -Get-Process -Name "php-cgi" -ErrorAction SilentlyContinue | Stop-Process -Force -Start-Sleep -Milliseconds 500 - -# 启动 N 个 worker(stdout/stderr 分开到不同文件) -for ($i = 0; $i -lt $NumWorkers; $i++) { - $port = $StartPort + $i - $env:PHP_FCGI_MAX_REQUESTS = $MaxRequests - $argList = "-b 127.0.0.1:$port -c `"$PhpIni`"" - $p = Start-Process -FilePath $PhpCgi -ArgumentList $argList -WindowStyle Hidden -PassThru -RedirectStandardOutput $LogOut -RedirectStandardError $LogErr - Write-Host "[php-cgi] worker $i on 127.0.0.1:$port pid=$($p.Id)" -ForegroundColor Green -} - -Start-Sleep -Seconds 1 -$alive = @(Get-Process -Name "php-cgi" -ErrorAction SilentlyContinue) -Write-Host "[php-cgi] $($alive.Count) of $NumWorkers workers alive" -ForegroundColor Cyan - -# 写 upstream 配置文件给 nginx include -$upstreamFile = "D:\SMANAGE\php\php-upstream.conf" -$portList = ($StartPort..($StartPort + $NumWorkers - 1)) | ForEach-Object { " server 127.0.0.1:$_;" } -$upstreamContent = @" -# Auto-generated by start-php.ps1 — DO NOT EDIT -# Nextcloud FastCGI upstream pool -upstream php_fcgi_nextcloud { -$($portList -join "`n") -} -"@ -$upstreamContent | Out-File -FilePath $upstreamFile -Encoding UTF8 -Force -Write-Host "[php-cgi] upstream config -> $upstreamFile" -ForegroundColor Green diff --git a/php/stop-php.ps1 b/php/stop-php.ps1 deleted file mode 100644 index 095df050..00000000 --- a/php/stop-php.ps1 +++ /dev/null @@ -1,3 +0,0 @@ -# 停止所有 PHP-CGI workers -Get-Process -Name "php-cgi" -ErrorAction SilentlyContinue | Stop-Process -Force -Write-Host "[php-cgi] stopped all workers" -ForegroundColor Yellow diff --git a/php/test-mysql.php b/php/test-mysql.php deleted file mode 100644 index 2e9ae73e..00000000 --- a/php/test-mysql.php +++ /dev/null @@ -1,63 +0,0 @@ - '127.0.0.1', - 'port' => 3306, - 'user' => 'root', - 'pass' => '1Qq@1Qq@190*', -]; - -echo "=== 1) TCP 3306 握手耗时 ===\n"; -$start = microtime(true); -$fp = @fsockopen($creds['host'], $creds['port'], $errno, $errstr, 5); -$elapsed = round((microtime(true) - $start) * 1000); -if ($fp) { - echo " TCP connect OK in {$elapsed}ms\n"; - fclose($fp); -} else { - echo " TCP connect FAILED: $errstr ($errno) in {$elapsed}ms\n"; - exit(1); -} - -echo "\n=== 2) MySQL PDO 握手 ===\n"; -$start = microtime(true); -try { - $dsn = "mysql:host={$creds['host']};port={$creds['port']};charset=utf8mb4"; - $pdo = new PDO($dsn, $creds['user'], $creds['pass'], [ - PDO::ATTR_TIMEOUT => 10, - PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, - ]); - $elapsed = round((microtime(true) - $start) * 1000); - echo " PDO connect OK in {$elapsed}ms\n"; - - $ver = $pdo->query('SELECT VERSION()')->fetchColumn(); - echo " MySQL version: $ver\n"; - - echo "\n=== 3) Nextcloud 相关 db ===\n"; - $dbs = $pdo->query('SHOW DATABASES')->fetchAll(PDO::FETCH_COLUMN); - foreach ($dbs as $d) { - $l = strtolower($d); - if (strpos($l, 'nextcloud') !== false || strpos($l, 'nc_') !== false) { - echo " - $d\n"; - } - } - - echo "\n=== 4) nextcloud db 表数(如果存在)===\n"; - foreach ($dbs as $d) { - $l = strtolower($d); - if (strpos($l, 'nextcloud') !== false) { - $pdo->exec("USE `$d`"); - $tables = $pdo->query('SHOW TABLES')->fetchAll(PDO::FETCH_COLUMN); - echo " $d: " . count($tables) . " tables\n"; - if (count($tables) > 0 && count($tables) < 20) { - foreach ($tables as $t) echo " - $t\n"; - } - } - } -} catch (Throwable $e) { - $elapsed = round((microtime(true) - $start) * 1000); - echo " PDO connect FAILED in {$elapsed}ms: " . $e->getMessage() . "\n"; -} diff --git a/php/test-nc-public.py b/php/test-nc-public.py deleted file mode 100644 index 6993fc37..00000000 --- a/php/test-nc-public.py +++ /dev/null @@ -1,81 +0,0 @@ -#!/usr/bin/env python3 -"""test-nc-public.py - 模拟 frpc 行为:发 PROXY v1 + TLS ClientHello SNI=nc.gvsds.com 到 127.0.0.1:10443""" -import socket -import ssl -import time -import sys - -HOST = "127.0.0.1" -PORT = 10443 -SNI = "nc.gvsds.com" -PROXY_SRC_IP = "8.8.8.8" # 模拟客户端公网 IP -PROXY_SRC_PORT = 54321 - -def build_proxy_v1_header(src_ip, src_port, dst_ip, dst_port): - return f"PROXY TCP4 {src_ip} {dst_ip} {src_port} {dst_port}\r\n".encode("ascii") - -def main(): - # 1) 裸 TCP 到 10443 - raw = socket.socket(socket.AF_INET, socket.SOCK_STREAM) - raw.settimeout(180) - raw.connect((HOST, PORT)) - - # 2) 发 PROXY v1 header - proxy_hdr = build_proxy_v1_header(PROXY_SRC_IP, PROXY_SRC_PORT, HOST, PORT) - print(f" -> PROXY header: {proxy_hdr!r}") - raw.sendall(proxy_hdr) - - # 3) 包 TLS - ctx = ssl.SSLContext(ssl.PROTOCOL_TLS_CLIENT) - ctx.check_hostname = False - ctx.verify_mode = ssl.CERT_NONE - ctx.set_alpn_protocols(["http/1.1"]) # 强制 http/1.1,避免 h2 frame 复杂度 - s = ctx.wrap_socket(raw, server_hostname=SNI) - print(f" TLS SNI: {SNI}, ALPN: {s.selected_alpn_protocol()}") - - # 4) 发 HTTP/1.1(绕开 h2 SETTINGS frame 复杂度) - req = ( - f"GET /login HTTP/1.1\r\n" - f"Host: {SNI}\r\n" - f"User-Agent: test-nc-public/1.0\r\n" - f"Accept: */*\r\n" - f"Connection: close\r\n" - f"\r\n" - ).encode("ascii") - t0 = time.time() - s.sendall(req) - print(f" -> sent {len(req)} bytes request") - - # 5) 读响应 - chunks = [] - while True: - try: - data = s.recv(65536) - except socket.timeout: - print(" [timeout 30s]") - break - if not data: - break - chunks.append(data) - s.close() - elapsed = time.time() - t0 - - body = b"".join(chunks) - head, _, body = body.partition(b"\r\n\r\n") - status_line = head.split(b"\r\n", 1)[0].decode("latin-1", errors="replace") - print(f" Status: {status_line}") - print(f" Body size: {len(body)} bytes") - print(f" Elapsed: {elapsed:.2f}s") - print(f" Body preview (前 500 字符):") - text = body[:500].decode("utf-8", errors="replace") - for line in text.splitlines()[:15]: - print(f" {line}") - - return 0 if b"200 OK" in head or b"302" in head else 1 - -if __name__ == "__main__": - try: - sys.exit(main()) - except Exception as e: - print(f" EXCEPTION: {type(e).__name__}: {e}") - sys.exit(2) diff --git a/service.log b/service.log new file mode 100644 index 00000000..a67943bd --- /dev/null +++ b/service.log @@ -0,0 +1 @@ +[EXCEPTION] CmeBalancesViewSet: 身份认证信息未提供。 diff --git a/service_err.log b/service_err.log new file mode 100644 index 00000000..e609b1dc --- /dev/null +++ b/service_err.log @@ -0,0 +1,43 @@ +D:\Python312\Lib\site-packages\django\db\backends\utils.py:98: RuntimeWarning: Accessing the database during app initialization is discouraged. To fix this warning, avoid executing queries in AppConfig.ready() or when your app modules are imported. + warnings.warn(self.APPS_NOT_READY_WARNING_MSG, category=RuntimeWarning) +Server initialized for gevent. +[2026-08-02 22:39:46,866] [INFO] Server initialized for gevent. +[2026-08-02 22:39:46] [INFO ] [域:system ] Django 应用初始化完成 +[2026-08-02 22:39:46] [INFO ] [域:system ] === 启动 Django 服务器集群 === +[2026-08-02 22:39:46] [INFO ] [域:system ] 协程池: 800 | 线程池: 32 +[2026-08-02 22:39:46] [INFO ] [域:system ] === Django URL 路由已加载 === +[2026-08-02 22:39:46] [INFO ] [域:system ] 启动 HTTP Redirect 服务器 on 0.0.0.0:80 +[2026-08-02 22:39:46] [INFO ] [域:system ] 启动 Main Django App 服务器 on 0.0.0.0:443 +[2026-08-02 22:40:22] [INFO ] [域:gerp.gvsds.com ] [200] [GET ] [127.0.0.1 ] [5.634511s] / +Traceback (most recent call last): + File "D:\Python312\Lib\site-packages\rest_framework\views.py", line 503, in dispatch + self.initial(request, *args, **kwargs) + File "d:\SMANAGE\gvsds\apps\crb\views.py", line 203, in initial + super().initial(request, *args, **kwargs) + File "D:\Python312\Lib\site-packages\rest_framework\views.py", line 421, in initial + self.check_permissions(request) + File "D:\Python312\Lib\site-packages\rest_framework\views.py", line 339, in check_permissions + self.permission_denied( + File "D:\Python312\Lib\site-packages\rest_framework\views.py", line 180, in permission_denied + raise exceptions.NotAuthenticated() +rest_framework.exceptions.NotAuthenticated: 身份认证信息未提供。 +[2026-08-02 22:40:22,167] [WARNING] Unauthorized: /API/wallet +[2026-08-02 22:40:22] [WARNING] [域:gerp.gvsds.com ] [401] [GET ] [127.0.0.1 ] [0.009752s] /API/wallet +[2026-08-02 22:40:22] [INFO ] [域:gerp.gvsds.com ] [200] [GET ] [127.0.0.1 ] [0.004518s] /pages/private/CreateE/wallet.html +[2026-08-02 22:44:27,185] [ERROR] [www.gvsds.com] [500] [GET] [127.0.0.1] /assets/links/GDEV.jpg +Traceback (most recent call last): + File "D:\Python312\Lib\site-packages\django\core\handlers\base.py", line 198, in _get_response + response = wrapped_callback(request, *callback_args, **callback_kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "D:\Python312\Lib\site-packages\django\views\generic\base.py", line 106, in view + return self.dispatch(request, *args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "D:\Python312\Lib\site-packages\django\views\generic\base.py", line 145, in dispatch + return handler(request, *args, **kwargs) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "d:\SMANAGE\gvsds\apps\core\views.py", line 180, in get + raise Http404 +django.http.response.Http404 +[2026-08-02 22:44:27,318] [WARNING] Not Found: /assets/links/GDEV.jpg +[2026-08-02 22:44:27] [WARNING] [域:www.gvsds.com ] [404] [GET ] [105.76.188.247 ] [0.193609s] /assets/links/GDEV.jpg +[2026-08-02 22:44:46] [INFO ] [域:www.gvsds.com ] [200] [GET ] [180.178.48.66 ] [0.013619s] /