12345678910111213 |
- import{J as r,K as Ee,r as ie,o as l,N as o,a as e,O as B,Q as R,V as ge,W as I,X as $,Y as g,b as D,w as le,Z as re,c as qt,$ as x,a0 as Rs,a1 as O,v as J,d as Gt,a2 as Js,a3 as me,H as Rt,a4 as Jt,a5 as Be,a6 as Oe,a7 as Ns,a8 as qe,a9 as gt,aa as ne,ab as Fs,ac as Ks,ad as z,ae as ht,af as Hs,ag as je,ah as Qs,ai as be,aj as Ys,ak as Vt,al as js,am as Xs,an as Zs,ao as ea,ap as ta,aq as sa,ar as aa}from"./vendor-f-XNYvyw.js";import{S as la}from"./index-D71-mty3.js";import{_ as oa}from"./index.vue_vue_type_style_index_0_scoped_2125171d_lang-Dtl7QzQB.js";import{_ as Ae}from"./index-B5yv6piM.js";const na="/assets/logoa-BfYir6wW.png",ia="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAyBJREFUWEftlkmojmEUx3//naRYmRVRZIiiDCVTRBky3UwLd8MGa4pcQ7F2bdiQTBnLEBaGUrhFkUth4ZZrXLkb7I733J7v9tzXO9zvpVh46u3re9/nnPN/znPO/3/EX16qGt/MZgP++Lon6V4VX78L4G4IOuc/gD+aATNbDewHVkpqrXK3NRszGwucA/ZIOp/2lVkDZvYGGAW8ANbEIMysPzAeGAdMDQ5bwt5WSV8ygvve15JG9xSAo74IjEkCnZfU4IZm1gxsKcnIYUlbw34/uWfzFbAqK5u5XRBS1+TBzWw5cAzoGwVv8/YL/70dh0ffOoBGSZcTPw5ib95VlrahmU0GHkfOr3l9SPK0dy0z8+vYmexdHL2eIulJUcZ6AuA9MDg4acgqpBQQT7mf2tcHSUMqAzAzP9G+4KD0NFHxxVnbJck7KnMV1cBA4GOwOippc0nxdftsZkeSDGwKLwdJ+pRlXwRgYdJmN4LRDEkP6wQwHXgQbBZJupkLIAhL13dnNTPbDhwA2iUNqyd4dBXvgKHADkkHs+J0ZsDMmpKf3TVDSTKzM05CwBlJ6yoCOJ1wwNqET85KWmtJoMiPM2NTEYCTwPqkv49LaqwIwLljI3BK0oYiADVd74wTrsDZ7FDioE3SiIoA3gaC2iapOfcKspyb2Vzgdvg2LU08ZYACMT0K++ZJulNvF7jofA5G1xJGW1IWNP6eMOjViBUHxCIV7ytkwpT4lLJgVP0xG3aJU10ZiJx9jUSolA1T2tEhqV9R5nqiBa6ElyInR0NndCMmM3Pi8YqvsZ+brABaJH3IA1EmxwckLQunuhKJkvtrB+4HxzMD4dTieMClyUT1HLjuhFZXEUZjlE8y8UASi1PeoTrFx8xcS04A84HvXpBZIH7JQCq4j2RefC+jmnDHk8IzMbx/Bjz1JxYdM5sF+PzQB/gBjExfR95MWBskuwVPtVkvSe7Uqby3pG85fOIgXIg8AzVe6dpaWAPxydPOQ6ZqI9ncounZr6NuOS4jnQDAr8jXhKrje2kb5gH5FwAsCCO3Y7wg6VZZ1ioxYRWn9dj8BApzYTC98kdgAAAAAElFTkSuQmCC",ra="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAABFNJREFUWEe1V12IVVUU/taeh6keegismEwmGCPP3ntyKMpRoUas6A+xKCoxKmkyLdLChwizP0KiVBSnsohoaKQ/kQiL0hSissCXu9eemPGlUIgiCqa3GWav7rqcO4zjnTlnxtuGy92c++1vfXud9XcJJVeWZQ8R0TYiOsTMG0seK4TRTAhr7UUAHgTwFBG1K1ZEBmKMawqZSwKmFeC9f0BEtgO4POd6C8B6AMuY+YeS/IWwhgK894+JiBrUVUkp3WmM+QXAMDN3FbLOAnCWAO/90yLyRs7Rp+/bWruJiHYCeI6ZX50FfyH0DAHe+60i8lJ+6kVmfkH31to9RPSEiPTGGN8pZJ0FYEJAZ2fnkpTSj3mgbY8xPlvncc59CuBuIlodQjg4C/5C6IQA59wHANY2inLn3NcAbgJwCzPrvmmrJsBau4KIjujeGLOkUqn8NNmCc24/gPs0JZm5v2nWAdQEOOc+q0b7XUQ0EEI4K8frMQBgCzO/3lQB3vuVIvJNTnozM9f3E3accxqM2wD0M7MWpqYtstZuIKK9InIkxriyEbO1NiOiCOAPZr60adb1FXjvd4rIJhF5P8b48HTkzrnvASxNKa0aHBz8vFkiyDn3BYDbieiVEMLWGQTUXoMGawihoafmIkoFDANYCGAdM783HYk2JiLS7OgQkUdjjO/OxeDUMypA8oc9zHxsJlLn3JMAdiuGiG4LIXx5riJUwCkA84no3hDCJ0WEzrmjAG5UHDPP2M6LuGoXcc5pa+0WkY0xxr6iQ1mWLTDG/DYJdzUzV4rOTfe7puHH1RS7pypmovkUkWVZttwY810ddy4xoQJ2ENHmqluPMXNPkfH6711dXW1jY2MfAViex8SR8fHx3WVStNpblqrHjTGntQ7cKiKHlMQYc0mlUvmzrIju7u7zR0ZGdhFR7yRv/AXgaDVIf9bCpR8iuiClNK9a8OYBUG8vVryI/FrvBSc1vQBsYOY3ywqo47z316SUeo0xd4hIW4nzmsKPpJTW1QVo79dJZ4iIukMI/5QgaQjJsuw6IlpmjFmQUro4v/WIiPwuIifUM0S0X0QujDFeURPgvb9KRHTm01U6GOci0lr7IRHpwLs5xrhr8kBS98L/JmLSbHlKRBbHGP8+o5A45w4AWJ3frLAyzsYDzrm1AHTq0iq6JoQwUNtPJXHOnQZwWf68KROQ914H2j258fUhhLfrdhuWUmvtcSK6Pk+VfcaYfSGEE7O5sWI7OjpaW1tbtxDRy7nxZ0IIOybzTFvLnXOPA5gozdX0UiGHR0dHvxoaGvp3JjGLFi1a2NLSsoaI7q8OuVfmxp8PIdSElBKgIGttT7WIvAbg2inntGsOikisNrHBlFK7MaadiNpERF/fCgDn5Wf6jTF9lUrleCPRpbpZHkA6LZUu1QAOiMjeGOO3M3mrlIA6gfd+VUrphrx9z8//uOq3VtLhanSfTCmdNMYMhxAOl4mZ/wA1oMF+HdM3kAAAAABJRU5ErkJggg==",ca="/assets/avter-DUp3luTf.png",Wt="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735280866862'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='17804'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='32'%20height='32'%3e%3cpath%20d='M474%20152m8%200l60%200q8%200%208%208l0%20704q0%208-8%208l-60%200q-8%200-8-8l0-704q0-8%208-8Z'%20fill='%2381bdfe'%20p-id='17805'%3e%3c/path%3e%3cpath%20d='M168%20474m8%200l672%200q8%200%208%208l0%2060q0%208-8%208l-672%200q-8%200-8-8l0-60q0-8%208-8Z'%20fill='%2381bdfe'%20p-id='17806'%3e%3c/path%3e%3c/svg%3e",ua="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAABSUlEQVR4AbSTPU7EMBCFEzqKXIAjJCmRULpwCRoaCjgC9WZrjgAtDZcgXYQEVAlKScUFgkSX8I0xI2fXxTrajebZ4xm/54l/jqI9f4cXzPO8DMHmD2qFiFRgYsJzCIQDKjjGVDCO4xsi67Zt4xAIx3Jxo0gFp2k6IVIDY1mWXYPUDJymKIpjtyJSteXiOoJm5DSsegkunJBxh2E4w1kBr2mF3qw/eCphqiyl38QSwTsr4q1yieCtFVzbftYtEXwVBW6CHqCM/+EVTNP0igklhyJXCXd38wqO4yirf3Md3naX+pvpFez7/pO0/No7fZB5BUWB6h7Bk/gukiR5YaxPDX9mKsh+fZHRu9V13QP4IDazpml+OBD3hGWvhWvmqSDV3BNZcWGnEAjHcnGdp8eqFYiJnodAOEC3QCtExBjJOgSG5DRbgk5ukfsLAAD//+lbKp0AAAAGSURBVAMAr6jDKdZkcgQAAAAASUVORK5CYII=",Ve="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1736386047967'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='2366'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='16'%20height='16'%3e%3cpath%20d='M545.322667%20615.808L248.021333%20329.258667a33.706667%2033.706667%200%200%200-46.421333%200c-12.8%2012.373333-12.8%2032.384%200%2044.714666L544%20704l342.4-330.026667c12.8-12.373333%2012.8-32.341333%200-44.714666a33.706667%2033.706667%200%200%200-46.421333%200l-294.656%20286.549333z'%20fill='%23000000'%20p-id='2367'%3e%3c/path%3e%3c/svg%3e",da="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAACVUlEQVR4AayTPUhbURTHX7J06GAttJTSyaGl7yYvCbWDUErTQpdOBXUqtlu3tlD3BkK7VBBKdfBjEkFQFPwYIoIIOviFw8sXDhJx0cUtEMyXvxPN4768hCAYzp977v+c87/n3HfjN27511bQsqy7wWAwHggEfofD4Xvtzm8pGIlEHiPyr1KpnCNy4fP5CqVS6QxuPBQKPYVrah5BCp6DqWKxmKHiJJlM3rFtO24D8eEOy+XyLjlLpmm+Yu8yR5CxekhaJrpON9sUd4C/7A34GPgmvnCgg5yE3++fg9/nWnolJnAEq9XqDMQCyY/o5j9+zSiIMXaOzX3xWWsmOZLLZpT4kFLKxDccQTadJEyyuoxOesEOSBF4AFx2XdOZz+ePJKALFmj9mZAN+IGYzQTDdJJoiBlKKZPYaS6XK0hMFzyh4KWQOhhtjX0cjKTT6UVWl3FYD3e5Xyd1wU1IjyBcO+umw4N6ki64AtkNbmoWXcr91uocQS53FeYhz6eLtZl18ZXf6AHu/Al7izebZq2ZIyg7Wl8EQ+I3wVu4X8Ax7vw7m0Q2m5VnhWu4no2RSqV+wn7k5HesjTbBFNE6ySSv8Qf510gN7pW5OhSK+/jEyWtKKef1Cw/+MPI6q4HYCybZIPdrJpM5Fq4OjyDPZJrEfjBLYZ8k0lkM+EAUTsT24AfIHWN1mUdQoiTOIthPF+N0NSicgK4/w83jDyA+xeqxpoKSJaKM/h7/A6J7YItDvsD1tRIj1/1RhNDBP2OH4ihdTYM58YXTcxr9lh3qiXz9YYHOtfIvAQAA//8HOb/RAAAABklEQVQDAB+FDDjdUQJeAAAAAElFTkSuQmCC",va="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735280492544'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='4326'%20width='32'%20height='32'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3cpath%20d='M442.514286%2073.142857c82.529524%2064.24381%20140.239238%20126.610286%20173.129143%20187.099429%2031.158857%2057.295238%2043.666286%20115.907048%2037.546666%20175.835428l-1.219047%209.996191%206.095238-4.973715a174.055619%20174.055619%200%200%200%2049.249524-69.607619l2.681904-7.411809%207.704381-23.04c82.285714%2055.734857%20123.440762%20150.064762%20123.440762%20283.062857C841.142857%20823.515429%20665.795048%20950.857143%20521.654857%20950.857143c-144.11581%200-308.224-85.333333-334.750476-263.875048-26.550857-178.541714%2083.480381-261.90019%20158.427429-378.197333C395.288381%20231.253333%20427.690667%20152.697905%20442.514286%2073.142857z%20m33.718857%20154.575238c-17.554286%2041.447619-39.424%2082.407619-65.536%20122.904381l-8.313905%2012.653714c-8.411429%2012.507429-17.310476%2024.941714-28.818286%2040.374858l-40.96%2054.467047c-63.634286%2086.869333-80.944762%20136.021333-68.851809%20217.526857%2017.92%20120.441905%20128.341333%20197.778286%20257.901714%20197.778286%20120.905143%200%20241.785905-110.933333%20241.785905-249.344%200-61.976381-9.825524-111.323429-29.110857-149.699048-8.240762%209.411048-17.237333%2018.285714-26.965334%2026.59962l-159.085714%20130.023619%2026.697143-195.364572c6.41219-46.811429-2.462476-92.208762-27.648-138.483809-13.214476-24.30781-31.98781-49.737143-56.368762-76.166096l-8.338286-8.850285-6.387809%2015.579428z'%20p-id='4327'%20fill='%23ff4d4f'%3e%3c/path%3e%3c/svg%3e",pa="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735287774232'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1465'%20width='16'%20height='16'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3cpath%20d='M563.8%20512l262.5-312.9c4.4-5.2%200.7-13.1-6.1-13.1h-79.8c-4.7%200-9.2%202.1-12.3%205.7L511.6%20449.8%20295.1%20191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8%200-10.5%207.9-6.1%2013.1L459.4%20512%20196.9%20824.9c-4.4%205.2-0.7%2013.1%206.1%2013.1h79.8c4.7%200%209.2-2.1%2012.3-5.7l216.5-258.1%20216.5%20258.1c3%203.6%207.5%205.7%2012.3%205.7h79.8c6.8%200%2010.5-7.9%206.1-13.1L563.8%20512z'%20p-id='1466'%3e%3c/path%3e%3c/svg%3e",ha="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735280690063'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='8850'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='32'%20height='32'%3e%3cpath%20d='M1022.955204%20556.24776c0%20100.19191-81.516572%20181.698249-181.718715%20181.698249l-185.637977%200c-11.2973%200-20.466124-9.168824-20.466124-20.466124%200-11.307533%209.168824-20.466124%2020.466124-20.466124l185.637977%200c77.628008%200%20140.786467-63.148226%20140.786467-140.766001%200-77.423347-62.841234-140.448776-140.203182-140.766001-0.419556%200.030699-0.828878%200.051165-1.248434%200.061398-5.935176%200.153496-11.665691-2.302439-15.666818-6.702656-4.001127-4.41045-5.884011-10.345626-5.157463-16.250102%201.330298-10.806113%201.944282-19.760043%201.944282-28.192086%200-60.763922-23.658839-117.874641-66.617234-160.833035-42.968627-42.958394-100.089579-66.617234-160.843268-66.617234-47.368844%200-92.742241%2014.449084-131.208321%2041.781592-37.616736%2026.738991-65.952084%2063.700811-81.925894%20106.884332-2.425236%206.54916-8.012488%2011.399631-14.827707%2012.893658-6.815219%201.483794-13.927197-0.603751-18.859533-5.536087-19.289322-19.340487-44.943608-29.982872-72.245418-29.982872-56.322773%200-102.146425%2045.813419-102.146425%20102.125959%200%200.317225%200.040932%200.982374%200.092098%201.627057%200.061398%200.920976%200.122797%201.831718%200.153496%202.762927%200.337691%209.465582-5.863545%2017.928325-15.001669%2020.455891-32.356942%208.943696-61.541635%2028.550243-82.181721%2055.217602-21.305235%2027.516704-32.571836%2060.508096-32.571836%2095.41307%200%2086.244246%2070.188572%20156.422585%20156.443052%20156.422585l169.981393%200c11.2973%200%2020.466124%209.15859%2020.466124%2020.466124%200%2011.2973-9.168824%2020.466124-20.466124%2020.466124l-169.981393%200c-108.828614%200-197.3753-88.536452-197.3753-197.354833%200-44.053332%2014.223956-85.712127%2041.126676-120.473839%2022.809495-29.450752%2053.897537-52.086285%2088.710414-64.816215%205.065366-74.322729%2067.149353-133.2447%20142.751215-133.2447%2028.386514%200%2055.504128%208.217149%2078.651314%2023.52581%2019.657712-39.868009%2048.842405-74.169233%2085.497233-100.212376%2045.434795-32.295544%2099.004875-49.354058%20154.918325-49.354058%2071.692832%200%20139.087778%2027.915793%20189.782368%2078.600149%2050.694589%2050.694589%2078.610382%20118.089535%2078.610382%20189.782368%200%203.704368-0.102331%207.470135-0.296759%2011.368932C952.633602%20386.245901%201022.955204%20463.188294%201022.955204%20556.24776z'%20p-id='8851'%3e%3c/path%3e%3cpath%20d='M629.258611%20589.106122c-3.990894%203.990894-9.230222%205.996574-14.46955%205.996574s-10.478655-2.00568-14.46955-5.996574l-67.087954-67.077721%200%20358.689289c0%2011.307533-9.15859%2020.466124-20.466124%2020.466124-11.307533%200-20.466124-9.15859-20.466124-20.466124l0-358.689289-67.087954%2067.077721c-7.992021%207.992021-20.947078%207.992021-28.939099%200s-7.992021-20.957311%200-28.949332l102.023628-102.013395c7.992021-7.992021%2020.947078-7.992021%2028.939099%200l102.023628%20102.013395C637.250632%20568.148811%20637.250632%20581.114101%20629.258611%20589.106122z'%20p-id='8852'%3e%3c/path%3e%3c/svg%3e",ga="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735280632344'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='7700'%20width='32'%20height='32'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3cpath%20d='M924.672%20126.976q36.864%2036.864%2054.784%2082.432t17.92%2093.696-17.92%2093.696-54.784%2082.432l-392.192%20389.12q-36.864%2036.864-90.624%2061.44t-113.664%2028.672-122.368-16.384-115.712-73.728q-52.224-52.224-72.704-113.152t-16.384-121.344%2028.16-113.664%2060.928-90.112l348.16-345.088q9.216-9.216%2027.136-4.608t27.136%2013.824q8.192%209.216%2013.312%2027.136t-4.096%2027.136l-347.136%20344.064q-27.648%2027.648-46.08%2064.512t-21.504%2078.848%2012.288%2084.992%2055.296%2082.944q35.84%2035.84%2079.36%2050.688t86.528%2012.288%2081.92-18.944%2066.56-44.032l391.168-388.096q27.648-27.648%2039.424-57.344t11.264-58.88-13.824-56.832-36.864-51.2q-44.032-43.008-98.816-40.448t-110.08%2057.856l-353.28%20351.232q-23.552%2023.552-23.04%2052.224t18.944%2047.104q22.528%2022.528%2051.712%2018.432t47.616-22.528l320.512-318.464q9.216-9.216%2027.136-4.608t27.136%2013.824%2014.336%2027.136-4.096%2027.136l-321.536%20318.464q-36.864%2036.864-70.656%2051.2t-63.488%2012.8-55.296-15.872-47.104-34.816q-17.408-16.384-31.232-41.984t-15.872-56.32%2010.752-65.536%2049.664-70.656q18.432-18.432%2032.768-33.792%2012.288-13.312%2023.04-23.552t11.776-11.264l285.696-284.672q36.864-36.864%2080.384-57.856t88.576-24.064%2088.576%2012.288%2080.384%2052.224z'%20p-id='7701'%20fill='%231e1e1e'%3e%3c/path%3e%3c/svg%3e",ma="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735280808939'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='15804'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='32'%20height='32'%3e%3cpath%20d='M873.8816%20150.1184C973.9264%20250.2656%201024%20370.8928%201024%20512c0%20141.2096-50.0736%20261.8368-150.1184%20361.8816C773.7344%20973.9264%20653.1072%201024%20512%201024c-141.1072%200-261.7344-50.0736-361.8816-150.1184C50.0736%20773.8368%200%20653.2096%200%20512c0-141.1072%2050.0736-261.7344%20150.1184-361.8816C250.2656%2050.0736%20370.8928%200%20512%200%20653.1072%200%20773.7344%2050.0736%20873.8816%20150.1184zM819.712%20526.7456%20507.0848%20211.6608%20192%20526.7456l56.6272%2054.1696%20219.0336-219.0336%200%20477.4912%2078.7456%200L546.4064%20361.8816l219.0336%20219.0336L819.712%20526.7456z'%20p-id='15805'%20fill='%234096ff'%3e%3c/path%3e%3c/svg%3e",fa="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735295375625'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='3239'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='16'%20height='16'%3e%3cpath%20d='M659.748571%20245.272381l-51.687619-51.687619-318.439619%20318.585905%20318.415238%20318.268952%2051.712-51.736381-266.703238-266.556952z'%20p-id='3240'%3e%3c/path%3e%3c/svg%3e",ya="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735295357873'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='2254'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='16'%20height='16'%3e%3cpath%20d='M605.086476%20512.146286L338.358857%20245.272381l51.760762-51.687619%20318.415238%20318.585905L390.095238%20830.415238l-51.687619-51.736381z'%20p-id='2255'%3e%3c/path%3e%3c/svg%3e",wa="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735287324782'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='1522'%20width='32'%20height='32'%20xmlns:xlink='http://www.w3.org/1999/xlink'%3e%3cpath%20d='M616.746667%2085.333333L896%20347.904V853.333333a85.333333%2085.333333%200%200%201-85.333333%2085.333334H213.333333a85.333333%2085.333333%200%200%201-85.333333-85.333334V170.666667a85.333333%2085.333333%200%200%201%2085.333333-85.333334h403.413334z%20m244.352%20295.381334L581.802667%20118.186667v177.237333a85.333333%2085.333333%200%200%200%2085.333333%2085.333333h193.962667z%20m-107.264%2076.373333h-49.152l-79.488%20227.157333-109.354667-227.114666h-13.226667l-110.506666%20226.688-77.824-226.688H265.130667l113.749333%20328.192h13.226667l117.12-239.36%20114.858666%20239.36h13.781334l115.968-328.192z'%20fill='%235197e8'%20p-id='1523'%3e%3c/path%3e%3c/svg%3e",_a="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1735378230313'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='3218'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='16'%20height='16'%3e%3cpath%20d='M784%20371.2c-16-25.6-35.2-44.8-44.8-54.4-9.6-9.6-28.8-9.6-38.4%203.2-9.6%209.6-9.6%2028.8%203.2%2038.4%203.2%203.2%206.4%206.4%209.6%209.6%209.6%209.6%2019.2%2022.4%2025.6%2035.2%2057.6%2086.4%2057.6%20179.2-38.4%20278.4-9.6%209.6-9.6%2028.8%200%2038.4%209.6%209.6%2028.8%209.6%2038.4%200C851.2%20598.4%20851.2%20476.8%20784%20371.2z'%20p-id='3219'%3e%3c/path%3e%3cpath%20d='M896%20246.4c-16-25.6-35.2-48-54.4-70.4-9.6-12.8-19.2-19.2-25.6-25.6-9.6-9.6-28.8-9.6-38.4%203.2-9.6%209.6-9.6%2028.8%203.2%2038.4%203.2%203.2%2012.8%209.6%2022.4%2022.4%2016%2019.2%2032%2038.4%2048%2064%20105.6%20160%20105.6%20336-70.4%20518.4-9.6%209.6-9.6%2028.8%200%2038.4%209.6%209.6%2028.8%209.6%2038.4%200C1014.4%20630.4%201014.4%20425.6%20896%20246.4z'%20p-id='3220'%3e%3c/path%3e%3cpath%20d='M483.2%2086.4l-217.6%20185.6-108.8%200c-57.6%200-108.8%2048-108.8%20108.8l0%20272c0%2060.8%2048%20108.8%20108.8%20108.8l96%200%20230.4%20182.4c54.4%2041.6%20105.6%2016%20105.6-51.2l0-755.2C588.8%2067.2%20534.4%2041.6%20483.2%2086.4zM534.4%20889.6c0%2022.4-3.2%2022.4-19.2%209.6l-236.8-185.6c-3.2-3.2-9.6-6.4-16-6.4l-105.6%200c-28.8%200-54.4-25.6-54.4-54.4l0-272c0-28.8%2025.6-54.4%2054.4-54.4l118.4%200c6.4%200%2012.8-3.2%2016-6.4l224-192c16-12.8%2016-12.8%2016%206.4L531.2%20889.6z'%20p-id='3221'%3e%3c/path%3e%3c/svg%3e",mt="data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!DOCTYPE%20svg%20PUBLIC%20'-//W3C//DTD%20SVG%201.1//EN'%20'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd'%3e%3csvg%20t='1736386332100'%20class='icon'%20viewBox='0%200%201024%201024'%20version='1.1'%20xmlns='http://www.w3.org/2000/svg'%20p-id='3350'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20width='16'%20height='16'%3e%3cpath%20d='M923.04%20689.226667L515.786667%20281.973333a5.333333%205.333333%200%200%200-7.573334%200l-407.253333%20407.253334a5.333333%205.333333%200%200%200%200%207.573333l45.226667%2045.226667a5.333333%205.333333%200%200%200%207.573333%200l354.453333-354.453334a5.333333%205.333333%200%200%201%207.573334%200l354.453333%20354.453334a5.333333%205.333333%200%200%200%207.573333%200l45.226667-45.226667a5.333333%205.333333%200%200%200%200-7.573333z'%20p-id='3351'%3e%3c/path%3e%3c/svg%3e",ka={class:"model-config"},ba=["src"],Aa={class:"config-panel"},Sa={class:"model-list"},Ca={class:"model-header"},xa={class:"model-title"},Ta={class:"model-form"},Da={class:"form-item"},Ia={class:"form-item"},Ma={key:0,class:"form-item"},Ea={class:"form-item"},$a={class:"form-item"},Pa={class:"action-buttons"},Ua={__name:"index",setup(f){const p=[{label:"主流模型",options:[{label:"ChatGPT",value:"chatgpt",endpoint:"https://api.openai.com/v1"},{label:"Claude",value:"claude",endpoint:"https://api.anthropic.com"},{label:"GPT-4",value:"gpt4",endpoint:"https://api.openai.com/v1"}]},{label:"开源模型",options:[{label:"DeepSeek",value:"deepseek",endpoint:"https://api.deepseek.com/v1"},{label:"Ollama",value:"ollama",endpoint:"http://localhost:11434"},{label:"ChatGLM",value:"chatglm",endpoint:"https://api.zhipuai.cn/v1"}]},{label:"国内模型",options:[{label:"阿里通义千问",value:"qianwen",endpoint:"https://dashscope.aliyuncs.com/api/v1"},{label:"百度文心一言",value:"wenxin",endpoint:"https://aip.baidubce.com/rpc/2.0/ai_custom/v1"},{label:"讯飞星火",value:"spark",endpoint:"https://spark-api.xf-yun.com/v1"}]},{label:"其他",options:[{label:"自定义模型",value:"custom",endpoint:""}]}],m=r(!1),C=r(!1),h=r(!1),k=r([{type:"",key:"",endpoint:"",name:""}]),c=r([]),w=async()=>{h.value=!0;try{const v=(await O.get("https://aiapi.raycos.com.cn/api/models")).data;if(console.log(v),v.code===2e3){const M=v.data.models.map(N=>({label:N.name,value:N.type,description:N.description||""}));c.value=[{label:"API模型",options:M},...p]}}catch(u){console.error("获取模型列表失败:",u),J.error("获取模型列表失败")}finally{h.value=!1}},X=u=>({chatgpt:"请输入 OpenAI API Key",gpt4:"请输入 OpenAI API Key",claude:"请输入 Anthropic API Key",deepseek:"请输入 DeepSeek API Key",qianwen:"请输入阿里云 API Key",wenxin:"请输入百度 API Key",spark:"请输入讯飞 API Key",chatglm:"请输入智谱 API Key",ollama:"可选:请输入访问密钥",custom:"请输入 API Key"})[u]||"请输入 API Key",Z=(u,v)=>{const M=k.value[v],N=c.value.flatMap(fe=>fe.options).find(fe=>fe.value===u);N&&(M.endpoint=N.endpoint,M.name=N.label)},U=()=>{m.value=!m.value},E=()=>{k.value.push({type:"",key:"",endpoint:"",name:""})},_=u=>{if(k.value.length===1){J.warning("至少保留一个模型配置");return}k.value.splice(u,1)},K=u=>!(!u.type||!u.key||u.type==="ollama"&&!u.endpoint||u.type==="custom"&&(!u.name||!u.endpoint)),ee=async()=>{if(k.value.some(v=>!K(v))){J.error("请填写完整的模型信息");return}C.value=!0;try{localStorage.setItem("modelConfig",JSON.stringify(k.value)),J.success("配置保存成功")}catch{J.error("配置保存失败")}finally{C.value=!1}},y=()=>{const u=localStorage.getItem("modelConfig");u&&(k.value=JSON.parse(u))};return Ee(async()=>{y(),await w()}),(u,v)=>{const M=ie("a-button"),N=ie("a-select-option"),fe=ie("a-select-opt-group"),Xe=ie("a-select"),Se=ie("a-input-password"),Q=ie("a-input");return l(),o("div",ka,[e("div",{class:"config-header",onClick:U},[v[0]||(v[0]=e("img",{src:oa,alt:"setting",class:"config-icon"},null,-1)),v[1]||(v[1]=e("span",null,"模型配置",-1)),e("img",{src:m.value?B(mt):B(Ve),alt:"toggle",class:"toggle-icon"},null,8,ba)]),R(e("div",Aa,[e("div",Sa,[(l(!0),o(I,null,$(k.value,(T,V)=>(l(),o("div",{key:V,class:"model-item"},[e("div",Ca,[e("span",xa,"模型 "+g(V+1),1),D(M,{type:"link",danger:"",size:"small",onClick:P=>_(V)},{default:le(()=>v[2]||(v[2]=[re("删除")])),_:2},1032,["onClick"])]),e("div",Ta,[e("div",Da,[v[3]||(v[3]=e("label",null,"选择模型",-1)),D(Xe,{style:{width:"200px"},value:T.type,"onUpdate:value":P=>T.type=P,placeholder:"请选择模型",onChange:P=>Z(P,V)},{default:le(()=>[(l(!0),o(I,null,$(c.value,P=>(l(),qt(fe,{key:P.label,label:P.label},{default:le(()=>[(l(!0),o(I,null,$(P.options,ce=>(l(),qt(N,{key:ce.value,value:ce.value},{default:le(()=>[re(g(ce.label),1)]),_:2},1032,["value"]))),128))]),_:2},1032,["label"]))),128))]),_:2},1032,["value","onUpdate:value","onChange"])]),T.type?(l(),o(I,{key:0},[e("div",Ia,[v[4]||(v[4]=e("label",null,"API Key",-1)),D(Se,{value:T.key,"onUpdate:value":P=>T.key=P,placeholder:X(T.type)},null,8,["value","onUpdate:value","placeholder"])]),T.type==="ollama"?(l(),o("div",Ma,[v[5]||(v[5]=e("label",null,"服务器地址",-1)),D(Q,{value:T.endpoint,"onUpdate:value":P=>T.endpoint=P,placeholder:"例如: http://localhost:11434"},null,8,["value","onUpdate:value"])])):x("",!0),T.type==="custom"?(l(),o(I,{key:1},[e("div",Ea,[v[6]||(v[6]=e("label",null,"模型名称",-1)),D(Q,{value:T.name,"onUpdate:value":P=>T.name=P,placeholder:"请输入自定义模型名称"},null,8,["value","onUpdate:value"])]),e("div",$a,[v[7]||(v[7]=e("label",null,"服务器地址",-1)),D(Q,{value:T.endpoint,"onUpdate:value":P=>T.endpoint=P,placeholder:"请输入API地址"},null,8,["value","onUpdate:value"])])],64)):x("",!0)],64)):x("",!0)])]))),128))]),D(M,{type:"dashed",block:"",class:"add-model-btn",onClick:E},{default:le(()=>[D(B(Rs)),v[8]||(v[8]=re(" 添加模型 "))]),_:1}),e("div",Pa,[D(M,{type:"primary",loading:C.value,onClick:ee},{default:le(()=>v[9]||(v[9]=[re(" 保存配置 ")])),_:1},8,["loading"])])],512),[[ge,m.value]])])}}},La=Ae(Ua,[["__scopeId","data-v-e8e9ff38"]]),za=Gt({name:"SearchResults",components:{FileSearchOutlined:Js},props:{searchResults:{type:Array,default:()=>[]},loading:{type:Boolean,default:!1},total:{type:Number,default:0},message:{type:String,default:""},enableWebSearch:{type:Boolean,default:!0}},emits:["update:total","update:enableWebSearch"],setup(f,{emit:p}){const m=r([]),C=r(!1),h=r(""),k=r(!1),c=r(f.total),w=r(f.enableWebSearch);me(()=>f.total,_=>{c.value=_}),me(()=>f.searchResults,_=>{m.value=_,C.value=m.value.length<f.total},{immediate:!0}),me(()=>f.message,_=>{_&&f.enableWebSearch&&(h.value=_)}),me(()=>f.enableWebSearch,_=>{w.value=_,_||U()});const X=_=>Rt(_).format("YYYY-MM-DD"),Z=async()=>{if(!(!h.value.trim()||k.value||!f.enableWebSearch)){k.value=!0;try{const _=await O.post("https://aiapi.raycos.com.cn/api/web-search-results/",{query:h.value,num_results:20,page:1,page_size:20,engine:"bing"});console.log("API Response:",_.data),_.data&&_.data.code===200&&(m.value=_.data.data.result||[],console.log("Total Results:",_.data.data.total),c.value=_.data.data.total||0,p("update:total",_.data.data.total||0))}catch(_){console.error("Web search failed:",_),m.value=[],c.value=0,p("update:total",0)}finally{k.value=!1}}},U=()=>{h.value="",m.value=[],c.value=0,p("update:total",0)},E=()=>{w.value=!w.value,p("update:enableWebSearch",w.value)};return{displayResults:m,loading:f.loading,total:c,hasMore:C,formatDate:X,searchQuery:h,isSearching:k,handleSearch:Z,clearSearch:U,isSearchEnabled:w,toggleSearch:E}}}),Oa={class:"search-results"},Ba={key:0,class:"results-list"},qa={class:"result-title"},Va=["href"],Wa={class:"result-url"},Ga={class:"result-snippet"},Ra={class:"result-meta"},Ja={class:"result-date"},Na={class:"result-source"},Fa={key:0,class:"loading-more",ref:"loadingTrigger"},Ka={key:0,class:"loading-spinner"},Ha={key:1},Qa={key:1,class:"no-results"};function Ya(f,p,m,C,h,k){return l(),o("div",Oa,[e("div",{class:"results-container",ref:"resultsContainer",onScroll:p[0]||(p[0]=(...c)=>f.handleScroll&&f.handleScroll(...c))},[f.displayResults.length>0?(l(),o("div",Ba,[(l(!0),o(I,null,$(f.displayResults,(c,w)=>(l(),o("div",{key:w,class:"result-item"},[e("h3",qa,[e("a",{href:c.link,target:"_blank",rel:"noopener noreferrer"},g(c.title),9,Va)]),e("p",Wa,g(c.link),1),e("p",Ga,g(c.snippet),1),e("div",Ra,[e("span",Ja,g(f.formatDate(c.date)),1),e("span",Na,g(c.source),1)])]))),128)),f.hasMore?(l(),o("div",Fa,[f.loading?(l(),o("div",Ka)):(l(),o("span",Ha,"Loading more results..."))],512)):x("",!0)])):(l(),o("div",Qa))],544)])}const ja=Ae(za,[["render",Ya],["__scopeId","data-v-23d582dd"]]),Xa="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAVZJREFUOE+l079Ll1EUBvDP/b73G9HeIISDUxiOtQTiEGFOCipE0BiELQ0KgoOgk/Rjk5zdGnL2L2hyMRIHocEpaGgsvfrq1feFF339Wni3e885z3mec58T3PCEXvWRJSwkrsy7MhB5h6cYqgEiH/EnMV83bgUoWA086vDymO9NBpEVPEsMZZBLAJHPGEhMYD9SZoBb3D9gNxdFFjGXuBMKpgJTjVnk4if4XSWfART8CNxO9FXv2yUrIXcoma4BjviCo/peM6iKPmTWibeRkVMyy2cAvaZ8IX4vsl/l343s/C9A1l837I9stUnYOP371Cahy0zJTGKw4EXgdejyqjwfWn0G07m+X80hVnlrGE1sFnzqsHvpGwvWAo8Lxv+yV1Puso6vh6x2eYPZQx72MtJwh+kWI2UPTHZ4fsC366w8igcNK2dp7xNj+NnqxOZy3WiZ/nXLTwAE1GVpm7M6FwAAAABJRU5ErkJggg==",Za={class:"voice-config"},el=["src"],tl={class:"config-panel"},sl={class:"config-item"},al={class:"voice-select-container"},ll=["value"],ol={class:"config-item"},nl={class:"slider-container"},il={class:"slider-value"},rl={class:"config-item",style:{display:"flex","justify-content":"space-around"}},cl=["disabled"],ul=["disabled"],dl={__name:"index",setup(f){const p=Jt(),m=r(!1),C=r([]),h=Be({role:"",speed:1,language:"zh"}),k=r(!1),c=r(!1),w=r(null),X=async()=>{try{const u=(await O.get("https://aiapi.raycos.com.cn/chatbot/current_voice_config")).data.data;if(console.log("Current config:",u),u&&u.voice_name&&C.value.length>0){const v=C.value.find(M=>M.name===u.voice_name);console.log("Matched voice:",v),v&&(h.role=v.id,h.speed=u.speed||1,h.language=v.language,_())}}catch(y){console.error("获取当前语音配置失败:",y)}},Z=async()=>{try{const u=(await O.get("https://aiapi.raycos.com.cn/chatbot/list_voices")).data.data.voices;C.value=Object.values(u).flat(),console.log("Voice list:",C.value),await X()}catch(y){console.error("获取语音列表失败:",y)}},U=y=>({"zh-cn":"中文","en-us":"英文","ja-jp":"日语","ko-kr":"韩语"})[y]||y;Ee(()=>{Z()});const E=()=>{m.value=!m.value},_=()=>{p.commit("updateVoiceConfig",{...h})},K=async()=>{if(h.role){k.value=!0;try{const y=new FormData;y.append("voice_id",h.role),await O.post("https://aiapi.raycos.com.cn/switch_voice_config",y,{headers:{"Content-Type":"multipart/form-data"}})}catch(y){console.error("切换语音失败:",y),alert("语音切换失败")}finally{k.value=!1}}},ee=async()=>{if(!(!h.role||c.value))try{c.value=!0;const u=(await O.get(`https://aiapi.raycos.com.cn/get_voice_preview?voice_id=${h.role}`)).data;if(u.code!==200)throw new Error(u.msg||"获取音频失败");w.value&&(w.value.pause(),w.value=null);let v;if(u.audio&&u.audio.startsWith("data:audio"))v=new Audio(u.audio);else if(u.audio_url){const N=u.audio_url.startsWith("http")?u.audio_url:`https://aiapi.raycos.com.cn${u.audio_url}`;v=new Audio(N)}else throw new Error("无效的音频数据");w.value=v,v.onended=()=>{c.value=!1,w.value=null},v.onerror=M=>{console.error("音频播放失败:",M),c.value=!1,w.value=null,alert("试听失败")},v.oncanplaythrough=async()=>{try{await v.play()}catch(M){console.error("播放音频失败:",M),c.value=!1,w.value=null,alert("播放失败")}}}catch(y){console.error("试听失败:",y),c.value=!1,alert(y.message||"试听失败")}};return Oe(()=>{w.value&&(w.value.pause(),w.value=null)}),(y,u)=>(l(),o("div",Za,[e("div",{class:"config-header",onClick:E},[u[2]||(u[2]=e("img",{src:Xa,alt:"voice",class:"config-icon"},null,-1)),u[3]||(u[3]=e("span",null,"语音配置",-1)),e("img",{src:m.value?B(mt):B(Ve),alt:"toggle",class:"toggle-icon"},null,8,el)]),R(e("div",tl,[e("div",sl,[u[4]||(u[4]=e("label",null,"语音角色",-1)),e("div",al,[R(e("select",{"onUpdate:modelValue":u[0]||(u[0]=v=>h.role=v),onChange:_},[(l(!0),o(I,null,$(C.value,v=>(l(),o("option",{key:v.id,value:v.id},g(v.name+"_"+v.gender)+" ("+g(U(v.language))+") ",9,ll))),128))],544),[[Ns,h.role]])])]),e("div",ol,[u[5]||(u[5]=e("label",null,"语速",-1)),e("div",nl,[R(e("input",{type:"range","onUpdate:modelValue":u[1]||(u[1]=v=>h.speed=v),min:"0.5",max:"2",step:"0.1",onChange:_},null,544),[[qe,h.speed]]),e("span",il,g(h.speed)+"x",1)])]),e("div",rl,[e("button",{class:"preview-button",onClick:ee,disabled:c.value},g(c.value?"播放中...":"试听"),9,cl),e("button",{class:"switch-button",onClick:K,disabled:k.value},g(k.value?"切换中...":"切换语音"),9,ul)])],512),[[ge,m.value]])]))}},vl=Ae(dl,[["__scopeId","data-v-8bc2e758"]]),pl="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='64%2064%20896%20896'%20width='16'%20height='16'%20fill='currentColor'%3e%3cpath%20d='M832%2064H192c-17.7%200-32%2014.3-32%2032v832c0%2017.7%2014.3%2032%2032%2032h640c17.7%200%2032-14.3%2032-32V96c0-17.7-14.3-32-32-32zm-260%2072h96v209.9L621.5%20312%20572%20347.4V136zm220%20752H232V136h280v296.9c0%203.3%201%206.6%203%209.3a15.9%2015.9%200%200%200%2022.3%203.7l83.8-59.9%2081.4%2059.4c2.7%202%206%203.1%209.3%203.1%208.8%200%2016-7.2%2016-16V136h64v752z'/%3e%3c/svg%3e",hl={class:"knowledge-config"},gl=["src"],ml={class:"config-panel"},fl={class:"knowledge-list"},yl={class:"group-header"},wl={class:"checkbox-list"},_l={class:"item-desc"},kl={class:"action-buttons"},bl={__name:"index",setup(f){const p=r([]),m=r(!1),C=r(!1),h=Be({product:[],tech:[],industry:[]}),k=()=>{m.value=!m.value},c=async()=>{C.value=!0;try{localStorage.setItem("knowledgeConfig",JSON.stringify(h)),J.success("知识库配置保存成功")}catch{J.error("知识库配置保存失败")}finally{C.value=!1}},w=()=>{const U=localStorage.getItem("knowledgeConfig");if(U){const E=JSON.parse(U);Object.keys(E).forEach(_=>{h[_]=E[_]})}},X=async U=>{try{const E=new URLSearchParams;return E.append("page",1),E.append("kb_id",U),E.append("pageSize",9999),(await O.post("https://aiapi.raycos.com.cn/docType/selectTypeList",E,{headers:{"Content-Type":"application/x-www-form-urlencoded",Authorization:`JWT ${localStorage.getItem("token")}`}})).data.data||[]}catch(E){return console.error("获取知识库子项失败:",E),[]}},Z=async()=>{try{const E=await O.post("https://aiapi.raycos.com.cn/kbm/selectBucketInfo",{user_id:2},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}}),_=await Promise.all(E.data.data.map(async K=>{const ee=await X(K.id);return console.log(ee),{label:K.name,key:K.id,items:ee.map(y=>({label:y.name,value:y.id}))}}));p.value=_,p.value.forEach(K=>{h[K.key]||(h[K.key]=[])})}catch(U){J.error("获取知识库信息失败"),console.error("获取知识库信息失败:",U)}};return Ee(async()=>{await Z(),w()}),(U,E)=>{const _=ie("a-checkbox"),K=ie("a-checkbox-group"),ee=ie("a-button");return l(),o("div",hl,[e("div",{class:"config-header",onClick:k},[E[0]||(E[0]=e("img",{src:pl,alt:"knowledge",class:"config-icon"},null,-1)),E[1]||(E[1]=e("span",null,"知识库配置",-1)),e("img",{src:m.value?B(mt):B(Ve),alt:"toggle",class:"toggle-icon"},null,8,gl)]),R(e("div",ml,[e("div",fl,[(l(!0),o(I,null,$(p.value,y=>(l(),o("div",{class:"knowledge-group",key:y.label},[e("div",yl,g(y.label),1),e("div",wl,[D(K,{value:h[y.key],"onUpdate:value":u=>h[y.key]=u},{default:le(()=>[(l(!0),o(I,null,$(y.items,u=>(l(),o("div",{key:u.value,class:"checkbox-item"},[D(_,{value:u.value},{default:le(()=>[re(g(u.label)+" ",1),e("span",_l,g(u.description),1)]),_:2},1032,["value"])]))),128))]),_:2},1032,["value","onUpdate:value"])])]))),128))]),e("div",kl,[D(ee,{type:"primary",loading:C.value,onClick:c},{default:le(()=>E[2]||(E[2]=[re(" 保存配置 ")])),_:1},8,["loading"])])],512),[[ge,m.value]])])}}},Al=Ae(bl,[["__scopeId","data-v-6b9363c0"]]),Sl=Gt({name:"KnowledgeResults",props:{searchResults:{type:Array,default:()=>[]},loading:{type:Boolean,default:!1},total:{type:Number,default:0},message:{type:String,default:""},searchType:{type:String,default:"remote",validator:f=>["remote","local"].includes(f)},showTranslation:{type:Boolean,default:!0}},emits:["update:enableSearch","search","translate"],setup(f,{emit:p}){const m=r(""),C=r(!1),h=r(!1),k=r([]),c=r(1),w=r(20),X=gt(()=>f.searchType==="local"?"搜索本地知识库...":"搜索远程知识库...");me(()=>f.searchResults,y=>{console.log("New search results:",y),k.value=y.map(u=>({...u,translation:u.translation||""}))}),me(()=>f.message,y=>{y&&(m.value=y,Z())});const Z=async()=>{if(!(!m.value.trim()||C.value)){C.value=!0,c.value=1;try{p("search",{query:m.value,page:c.value,pageSize:w.value,type:f.searchType,needTranslation:f.showTranslation})}finally{C.value=!1}}},U=async()=>{if(!(C.value||!h.value)){C.value=!0,c.value+=1;try{p("search",{query:m.value,page:c.value,pageSize:w.value,type:f.searchType})}finally{C.value=!1}}};return{searchQuery:m,isSearching:C,displayResults:k,hasMore:h,handleSearch:Z,clearSearch:()=>{m.value="",k.value=[],c.value=1,p("update:enableSearch",!1)},formatDate:y=>Rt(y).format("YYYY-MM-DD HH:mm"),handleScroll:y=>{const{scrollTop:u,scrollHeight:v,clientHeight:M}=y.target;v-u-M<50&&!C.value&&h.value&&U()},placeholder:X,formatContent:y=>{if(!y)return"";const u=m.value.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return y.replace(new RegExp(u,"gi"),v=>`<span class="highlight">${v}</span>`)}}}}),Cl={class:"knowledge-results"},xl={class:"result-title"},Tl=["href"],Dl=["innerHTML"],Il={key:0,class:"result-translation"},Ml={class:"translation-content"},El={class:"result-meta"},$l={class:"result-source"},Pl={class:"result-date"},Ul={key:0,class:"load-more"},Ll={key:1,class:"loading-state"},zl={key:2,class:"empty-state"};function Ol(f,p,m,C,h,k){return l(),o("div",Cl,[p[4]||(p[4]=e("div",{class:"search-box"},null,-1)),!f.loading&&f.searchResults.length>0?(l(),o("div",{key:0,class:"results-container",ref:"resultsContainer",onScroll:p[0]||(p[0]=(...c)=>f.handleScroll&&f.handleScroll(...c))},[(l(!0),o(I,null,$(f.displayResults,c=>(l(),o("div",{key:c.id,class:"result-item"},[e("h3",xl,[e("a",{href:c.link,target:"_blank",rel:"noopener noreferrer"},g(c.title),9,Tl)]),e("div",{class:"result-content",innerHTML:f.formatContent(c.content)},null,8,Dl),c.translation?(l(),o("div",Il,[p[1]||(p[1]=e("span",{class:"translation-label"},"中文释义:",-1)),e("span",Ml,g(c.translation),1)])):x("",!0),e("div",El,[e("span",$l,"来源: "+g(c.source||"知识库"),1),e("span",Pl,g(f.formatDate(c.date)),1)])]))),128)),f.hasMore?(l(),o("div",Ul,p[2]||(p[2]=[e("div",{class:"loading-spinner"},null,-1),e("span",null,"加载更多...",-1)]))):x("",!0)],544)):f.loading?(l(),o("div",Ll,p[3]||(p[3]=[e("div",{class:"loading-spinner"},null,-1),e("p",null,"正在搜索...",-1)]))):(l(),o("div",zl))])}const Bl=Ae(Sl,[["render",Ol],["__scopeId","data-v-c3cce166"]]),ql={name:"ChangePasswordDialog",props:{visible:{type:Boolean,default:!1}},data(){return{formData:{old_password:"",new_password:"",confirm_password:""}}},methods:{closeDialog(){this.$emit("update:visible",!1),this.resetForm()},resetForm(){this.formData={old_password:"",new_password:"",confirm_password:""}},async handleSubmit(){var f,p;if(!this.formData.old_password){this.$message.error("请输入原密码");return}if(!this.formData.new_password){this.$message.error("请输入新密码");return}if(!this.formData.confirm_password){this.$message.error("请确认新密码");return}if(this.formData.new_password!==this.formData.confirm_password){this.$message.error("两次输入的新密码不一致");return}try{const m=await O.post("https://aiapi.raycos.com.cn/user/change_password",{old_password:this.formData.old_password,new_password:this.formData.new_password,confirm_password:this.formData.confirm_password},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});if(m.data.code===200){this.$message.success("密码修改成功"),this.closeDialog();try{await O.post("https://aiapi.raycos.com.cn/user/logout",{},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}}),localStorage.removeItem("token"),this.$router.push("/login")}catch(C){console.error("退出登录失败:",C),localStorage.removeItem("token"),this.$router.push("/login")}}else this.$message.error(m.data.message||"密码修改失败")}catch(m){this.$message.error("密码修改失败:"+(((p=(f=m.response)==null?void 0:f.data)==null?void 0:p.message)||m.message))}}}},Vl={class:"dialog-content"},Wl={class:"dialog-header"},Gl={class:"dialog-body"},Rl={class:"form-group"},Jl={class:"form-group"},Nl={class:"form-group"},Fl={class:"dialog-footer"};function Kl(f,p,m,C,h,k){return m.visible?(l(),o("div",{key:0,class:"dialog-overlay",onClick:p[6]||(p[6]=ne((...c)=>k.closeDialog&&k.closeDialog(...c),["self"]))},[e("div",Vl,[e("div",Wl,[p[7]||(p[7]=e("h3",null,"修改密码",-1)),e("button",{class:"close-button",onClick:p[0]||(p[0]=(...c)=>k.closeDialog&&k.closeDialog(...c))},"×")]),e("div",Gl,[e("div",Rl,[p[8]||(p[8]=e("label",null,"原密码:",-1)),R(e("input",{type:"password","onUpdate:modelValue":p[1]||(p[1]=c=>h.formData.old_password=c),placeholder:"请输入原密码"},null,512),[[qe,h.formData.old_password]])]),e("div",Jl,[p[9]||(p[9]=e("label",null,"新密码:",-1)),R(e("input",{type:"password","onUpdate:modelValue":p[2]||(p[2]=c=>h.formData.new_password=c),placeholder:"请输入新密码"},null,512),[[qe,h.formData.new_password]])]),e("div",Nl,[p[10]||(p[10]=e("label",null,"确认密码:",-1)),R(e("input",{type:"password","onUpdate:modelValue":p[3]||(p[3]=c=>h.formData.confirm_password=c),placeholder:"请确认新密码"},null,512),[[qe,h.formData.confirm_password]])])]),e("div",Fl,[e("button",{class:"cancel-button",onClick:p[4]||(p[4]=(...c)=>k.closeDialog&&k.closeDialog(...c))},"取消"),e("button",{class:"confirm-button",onClick:p[5]||(p[5]=(...c)=>k.handleSubmit&&k.handleSubmit(...c))},"确认")])])])):x("",!0)}const Hl=Ae(ql,[["render",Kl],["__scopeId","data-v-b963ecb7"]]),Ql={key:0,class:"progress-modal-overlay"},Yl={class:"progress-modal"},jl={class:"progress-list"},Xl={class:"progress-info"},Zl={class:"progress-title-wrapper"},eo={class:"progress-icon"},to={class:"progress-title"},so={class:"progress-bar-container"},ao={class:"progress-status"},lo={key:0,class:"sub-progress-list"},oo={class:"sub-progress-info"},no={class:"sub-progress-icon"},io={class:"sub-progress-title"},ro={class:"sub-progress-percentage"},co={class:"sub-progress-bar-container"},uo={key:0,class:"sub-sub-progress-list"},vo={class:"sub-sub-progress-info"},po={class:"sub-sub-progress-icon"},ho={class:"sub-sub-progress-title"},go={class:"sub-sub-progress-percentage"},mo={class:"sub-sub-progress-bar-container"},fo={class:"header"},yo={class:"user-profile-bar"},wo={class:"user-info-bar"},_o=["title"],ko={key:1,class:"theme-icon",src:ra,alt:"切换到深色模式"},bo={class:"user-name"},Ao={class:"user-name",style:{"margin-left":"10px"}},So={class:"dropdown-menu"},Co=["src"],xo={class:"conversation-list"},To=["onClick"],Do={class:"conversation-title"},Io={key:0,class:"conversation-meta"},Mo={class:"conversation-time"},Eo={class:"conversation-type"},$o={class:"config-container"},Po={class:"chat"},Uo={key:0,class:"welcome-section",style:{"margin-top":"-220px"}},Lo={class:"suggestion-section",style:{"margin-top":"185px"}},zo={class:"cards-container"},Oo={class:"suggestion-card"},Bo={key:0,class:"suggestion-items"},qo={class:"questions-list"},Vo=["onClick"],Wo={key:1,class:"suggestion-items"},Go=["onClick"],Ro={key:1,class:"welcome-section",style:{"margin-top":"-220px"}},Jo={class:"suggestion-section"},No={class:"cards-container"},Fo={class:"suggestion-card"},Ko={class:"card-header"},Ho={key:0},Qo={key:1},Yo={key:0,class:"card-subtitle"},jo={key:1,class:"suggestion-items"},Xo=["onClick"],Zo={key:2,class:"suggestion-items"},en=["onClick"],tn={key:0,class:"thinking-steps-stream"},sn={key:0,class:"typing-indicator"},an={class:"message-bubble"},ln={class:"message-content"},on={key:0,class:"thinking-steps"},nn={class:"step-content"},rn={key:0,class:"image-preview"},cn=["src"],un={key:1,class:"video-preview"},dn=["src"],vn={key:2,class:"file-info-display"},pn=["src"],hn={class:"file-details"},gn=["title"],mn={class:"file-size"},fn=["innerHTML"],yn={key:3},wn={key:4,style:{"background-color":"#f5f5f5",padding:"12px","border-radius":"8px",margin:"8px 0"}},_n={style:{"margin-bottom":"6px","border-bottom":"1px dashed #e5e5e5"}},kn={style:{"margin-bottom":"6px","border-bottom":"1px dashed #e5e5e5"}},bn={style:{"margin-bottom":"6px","border-bottom":"1px dashed #e5e5e5"}},An={style:{"margin-bottom":"6px"}},Sn=["onClick"],Cn={key:5,class:"audio-controls"},xn=["onClick"],Tn={key:0,class:"wave-animation"},Dn=["src"],In={key:0,style:{width:"80%"},class:"recommended-questions"},Mn={class:"questions-list"},En=["onClick"],$n={class:"input-container"},Pn={class:"left_item",style:{display:"flex"}},Un={class:"search-toggle-item",style:{width:"33%"}},Ln={class:"toggle-content"},zn={class:"toggle-switch"},On=["disabled"],Bn={class:"search-toggle-item",style:{width:"33%"}},qn={class:"toggle-content"},Vn={class:"toggle-switch"},Wn={class:"search-toggle-item",style:{width:"33%"}},Gn={class:"toggle-content"},Rn={class:"toggle-switch"},Jn={class:"search-toggle-item"},Nn={class:"toggle-content"},Fn=["value","disabled"],Kn={key:0,value:""},Hn={key:1,value:""},Qn=["value"],Yn={key:0,class:"attachments-panel"},jn={class:"panel-content"},Xn={key:0,style:{display:"flex","justify-content":"center"}},Zn={key:0,class:"upload-loading"},ei={key:1},ti={class:"file-list"},si={key:0,class:"file-loading"},ai=["src"],li=["src"],oi=["src"],ni=["onClick"],ii={key:0,class:"file-info"},ri={class:"file-name"},ci={class:"file-size"},ui={class:"input-wrapper"},di={key:0,class:"loading-btn"},vi={key:1,src:ma,alt:"send"},pi={key:0,class:"fab-dots"},hi={class:"option-content option-content--below"},gi={class:"option-content option-content--below"},mi={class:"option-content option-content--below"},fi={key:0},yi={style:{height:"91vh",overflow:"auto"},class:"file-list"},wi={id:"stepsContainer",class:"steps-container"},_i=["innerHTML"],ki={class:"right-menu-content"},bi={class:"panel-container"},Ai={class:"panel-container"},Si={class:"document-preview"},Ci={class:"preview-container"},xi={key:0,class:"direct-preview"},Ti={class:"preview-header"},Di={class:"preview-body"},Ii=["src"],Mi=["src"],Ei={key:2},$i={key:3},Pi=["src"],Ui={key:5,class:"file-preview"},Li={class:"panel-container"},zi=0,Oi=800,Bi={__name:"report",setup(f){const p=new Fs({html:!0,linkify:!0,typographer:!0});r(!1);const m=r(""),C=r(!1),h=r(!1),k=r(null),c=r([]),w=r([]);r(!1);const X=r(1),Z=r(1),U=r(null),E=Jt(),_=Qs(),K=()=>{_.push("/role")},ee=r(!1),y=()=>{ee.value=!0},u=()=>{ee.value=!1},v=r([]),M=r(!1),N=r(null),fe=(s,t="content",i="displayContent",a=15,n=35)=>{if(!s)return Promise.resolve();const d=s[t]||"";s[i]="";let b=0;return new Promise(A=>{const G=()=>{if(b>=d.length)return A();const te=d[b];s[i]+=te,b+=1;const L=/[\u4e00-\u9fa5]/.test(te)?n:a;be(()=>{requestAnimationFrame(()=>{setTimeout(G,L)})})};G()})},Xe=async(s,t=0)=>{var i;try{if(console.log("message",t),!s||!Array.isArray(s.thinkingSteps))return;for(let a=t;a<s.thinkingSteps.length;a+=1){console.log("message.thinkingSteps",s.thinkingSteps);const n=s.thinkingSteps[a];n.displayContent||(n.displayContent=""),await fe(n)}}catch(a){console.error("animateThinkingStepsForMessage error:",a);for(let n=t;n<(((i=s.thinkingSteps)==null?void 0:i.length)||0);n+=1){const d=s.thinkingSteps[n];d&&(d.displayContent=d.content||"")}}},Se=r(null),Q=r(!1),T=r(null),V=r(null),P=r(!1),ce=r(null),ft=r(!1),yt=r([]),wt=r([]);let $e=null;const We=r([]),Ze=r(!1),et=r(0),W=r(!1),oe=r(!1),Pe=r(!1),ye=r(!1),ue=r(!1),tt=r([]),st=r(0),at=r(!1),Ge=r(""),lt=r(!1),Nt=r([]),ot=r(!1),de=r([]),we=r([]),Re=r(!1),Ft=(s,t)=>{switch(s){case"html_start":Ge.value="";break;case"html_chunk":t&&typeof t.html=="string"&&(Ge.value+=t.html,be(()=>{const i=document.getElementById("resultContent");i&&(i.scrollTop=i.scrollHeight)}));break;case"html_end":break;case"init_steps":lt.value=!0,Kt(t.steps);break;case"step_update":Qt(t.step_id,t.status,t.details,t.progress);break;case"final_summary":break;case"stream_end":lt.value=!1;break;case"error":console.error("SSE错误:",t.message);break}},Kt=s=>{const t=document.getElementById("stepsList");t&&(t.innerHTML="",Nt.value=s,s.forEach(i=>{t.appendChild(Ht(i))}))},Ht=s=>{const t=document.createElement("div");return t.className=`step ${s.status}`,t.id=`step-${s.step_id}`,t.innerHTML=`
- <div class="step-header">
- <div class="step-header-content">
- <div class="step-icon" style="display: none;">${_t(s.status)}</div>
- <div class="step-name">${s.name||s.step_id}</div>
- </div>
- </div>
- <div class="step-details" style="margin-bottom:15px;">${s.details||""}</div>
- <div class="progress-bar">
- <div class="progress-fill" style="width: ${s.progress||0}%"></div>
- </div>
- `,t},Qt=(s,t,i,a)=>{const n=document.getElementById(`step-${s}`);n&&(n.className=`step ${t}`,n.querySelector(".step-icon").textContent=_t(t),i&&(n.querySelector(".step-details").textContent=i),a!==void 0&&(n.querySelector(".progress-fill").style.width=`${a}%`))},_t=s=>{switch(s){case"pending":return"⏳";case"running":return"🔄";case"completed":return"✅";case"error":return"❌";default:return"⏳"}},se=r(!1),Ce=()=>{Pe.value=window.innerWidth<=768,Pe.value?(h.value=!0,oe.value=!0):(h.value=!1,oe.value=!1)};Ee(()=>{Ce(),window.addEventListener("resize",Ce),Zt()});const _e=r(!1),kt=()=>{console.log(_e.value),_e.value=!_e.value},Yt=()=>{oe.value=!oe.value,Pe.value&&(document.body.style.overflow=oe.value?"auto":"hidden",oe.value||(h.value=!0)),document.querySelector(".chat")&&(document.querySelector(".chat").style.left=oe.value?"460px":"260px")},jt=()=>{h.value=!1,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${q.value}px`)},Xt=async()=>{ft.value=!0;try{const s=await O.get("https://aiapi.raycos.com.cn/api/document/summary?limit=2",{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});console.log("API Response:",s.data),s.data.status===200&&(ce.value=s.data.data,console.log("Document Summary:",ce.value),cs())}catch(s){console.error("获取文档摘要失败:",s)}finally{ft.value=!1}},Zt=async()=>{try{const s=await O.get("https://aiapi.raycos.com.cn/api/chat/history",{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});console.log("Chat History Response:",s.data),s.data.code===2e3&&(v.value=s.data.data.sessions.map(t=>({id:t.session_id,title:t.user_message.content,messages:[],sessionData:t})),v.value.length>0&&(X.value=v.value[0].id))}catch(s){console.error("获取聊天历史失败:",s)}},es=s=>{if(!s)return"";try{const t=new Date(s),a=(new Date-t)/(1e3*60*60);return a<24?t.toLocaleTimeString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"}):a<48?"昨天":t.toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit"})}catch{return""}},ts=s=>({chat:"对话",document_chat:"文档对话",streaming_demo:"演示"})[s]||"对话",bt=s=>{ot.value=!0;const t=[{id:Date.now(),title:"数据分析任务",value:0,status:"准备中...",subTasks:[{title:"数据收集",value:0,isActive:!0,subSubTasks:[{title:"连接数据源",value:0,isActive:!0},{title:"验证数据格式",value:0,isActive:!1},{title:"下载数据文件",value:0,isActive:!1}]},{title:"数据清洗",value:0,isActive:!1,subSubTasks:[{title:"检测异常值",value:0,isActive:!1},{title:"处理缺失值",value:0,isActive:!1},{title:"数据标准化",value:0,isActive:!1},{title:"去重处理",value:0,isActive:!1}]},{title:"特征提取",value:0,isActive:!1,subSubTasks:[{title:"特征选择",value:0,isActive:!1},{title:"特征工程",value:0,isActive:!1},{title:"降维处理",value:0,isActive:!1}]},{title:"模型训练",value:0,isActive:!1,subSubTasks:[{title:"参数初始化",value:0,isActive:!1},{title:"训练迭代",value:0,isActive:!1},{title:"模型验证",value:0,isActive:!1},{title:"超参数调优",value:0,isActive:!1}]},{title:"结果验证",value:0,isActive:!1,subSubTasks:[{title:"交叉验证",value:0,isActive:!1},{title:"性能评估",value:0,isActive:!1},{title:"结果输出",value:0,isActive:!1}]}]},{id:Date.now()+1,title:"报告生成任务",value:0,status:"等待中...",subTasks:[{title:"模板加载",value:0,isActive:!1,subSubTasks:[{title:"读取模板文件",value:0,isActive:!1},{title:"解析模板结构",value:0,isActive:!1},{title:"初始化变量",value:0,isActive:!1}]},{title:"数据填充",value:0,isActive:!1,subSubTasks:[{title:"获取分析结果",value:0,isActive:!1},{title:"格式化数据",value:0,isActive:!1},{title:"填充模板",value:0,isActive:!1}]},{title:"图表生成",value:0,isActive:!1,subSubTasks:[{title:"创建统计图表",value:0,isActive:!1},{title:"生成趋势图",value:0,isActive:!1},{title:"制作对比图",value:0,isActive:!1},{title:"优化图表样式",value:0,isActive:!1}]},{title:"格式化处理",value:0,isActive:!1,subSubTasks:[{title:"调整页面布局",value:0,isActive:!1},{title:"设置字体样式",value:0,isActive:!1},{title:"添加页眉页脚",value:0,isActive:!1}]},{title:"文件导出",value:0,isActive:!1,subSubTasks:[{title:"生成PDF文件",value:0,isActive:!1},{title:"创建Excel文件",value:0,isActive:!1},{title:"压缩文件包",value:0,isActive:!1}]}]},{id:Date.now()+2,title:"系统优化任务",value:0,status:"等待中...",subTasks:[{title:"性能检测",value:0,isActive:!1,subSubTasks:[{title:"CPU使用率检测",value:0,isActive:!1},{title:"内存占用分析",value:0,isActive:!1},{title:"磁盘IO监控",value:0,isActive:!1},{title:"网络延迟测试",value:0,isActive:!1}]},{title:"缓存清理",value:0,isActive:!1,subSubTasks:[{title:"清理临时文件",value:0,isActive:!1},{title:"清空浏览器缓存",value:0,isActive:!1},{title:"清理系统缓存",value:0,isActive:!1}]},{title:"数据库优化",value:0,isActive:!1,subSubTasks:[{title:"索引重建",value:0,isActive:!1},{title:"查询优化",value:0,isActive:!1},{title:"数据压缩",value:0,isActive:!1},{title:"备份清理",value:0,isActive:!1}]},{title:"内存整理",value:0,isActive:!1,subSubTasks:[{title:"垃圾回收",value:0,isActive:!1},{title:"内存碎片整理",value:0,isActive:!1},{title:"进程优化",value:0,isActive:!1}]}]}];de.value=t,ss()},ss=()=>{let s=0,t=0,i=0;const a=setInterval(()=>{if(s>=de.value.length){clearInterval(a);return}const n=de.value[s],d=n.subTasks[t];if(!d)return;const b=d.subSubTasks[i];if(b){b.isActive=!0,b.value=Math.min(b.value+Math.random()*20+10,100);const A=d.subSubTasks.filter(F=>F.value>=100).length,G=d.subSubTasks.length;d.value=Math.floor(A/G*100);const te=n.subTasks.filter(F=>F.value>=100).length,L=n.subTasks.length;n.value=Math.floor(te/L*100),n.value===0?n.status="准备中...":n.value<100?n.status=`进行中... (${te}/${L})`:n.status="已完成",b.value>=100&&(b.isActive=!1,i++,i>=d.subSubTasks.length&&(d.isActive=!1,t++,i=0,t<n.subTasks.length?n.subTasks[t].isActive=!0:(s++,t=0,s<de.value.length&&(de.value[s].status="准备中...",de.value[s].subTasks[0].isActive=!0))))}},150)},as=s=>s.status==="错误"?"❌":s.value>=100?"✅":s.value>0?"🔄":"⏳",ls=s=>s.value>=100?"✓":s.isActive?"▶":"○",os=s=>s.value>=100?"●":s.isActive?"▸":"◦",ns=s=>s.status==="错误"?"error":s.value>=100?"completed":s.value>0?"active":"pending",is=s=>s.status==="错误"?"error-bar":s.value>=100?"completed-bar":"active-bar",rs=()=>{ot.value=!1,de.value=[]},cs=()=>{$e&&clearInterval($e);const s=()=>{var t;if(!((t=ce.value)!=null&&t.length)){console.log("没有可用的文档摘要数据");return}try{const i=ce.value[0];if(i!=null&&i.questions){const n=[...i.questions.map(d=>({question:d}))].sort(()=>.5-Math.random());yt.value=n.slice(0,3)}}catch(i){console.error("处理第一篇文档问题失败:",i)}try{const i=ce.value[1];if(i!=null&&i.questions){const n=[...i.questions.map(d=>({question:d}))].sort(()=>.5-Math.random());wt.value=n.slice(0,3)}}catch(i){console.error("处理第二篇文档问题失败:",i)}};s(),$e=setInterval(s,5e3)},us=s=>{console.log("QA clicked:",s),s!=null&&s.question&&(m.value=s.question||s.title,Fe())},nt=async()=>{try{const s=await O.get("https://aiapi.raycos.com.cn/api/agents/commands/",{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});console.log(s.data),s.data&&(we.value=s.data.data.commands,Re.value=!0)}catch(s){console.error("获取推荐问题失败:",s),Re.value=!1}},Je=s=>{m.value=s,Fe()};Oe(()=>{$e&&clearInterval($e)});const At=()=>{C.value=!C.value},ds=s=>{c.value=c.value.filter(t=>t!==s),c.value.length===0?(q.value=0,document.querySelector(".chat")&&(document.querySelector(".chat").style.right="0px")):(q.value=450,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${q.value}px`)),console.log(c.value.length)},St=()=>{var s;P.value||(s=k.value)==null||s.click()},Ct=async s=>{try{const t=new FormData;t.append("file",s);const i=await O.post("https://aiapi.raycos.com.cn/upload/file",t,{headers:{"Content-Type":"multipart/form-data"}});if(i.data.status===2e3)return i.data.data.fileUrl;throw new Error(i.data.message||"文件上传失败")}catch(t){throw console.error("文件上传失败:",t),t}},xt=async s=>{const t=Array.from(s.target.files);if(t.length===0)return;const i=10*1024*1024;if(t.filter(n=>!!(xe(n)&&n.size>i)).length>0){alert("Video files must not exceed 10MB"),s.target.value="";return}P.value=!0,q.value=450;try{for(const n of t){const d={name:n.name,size:n.size,sizeFormatted:Tt(n.size),type:n.type,isUploading:!0};c.value.push(d);try{const b=await Ct(n),A=c.value.findIndex(G=>G.name===n.name);A!==-1&&c.value.splice(A,1,{...d,url:b,isUploading:!1})}catch(b){c.value=c.value.filter(A=>A.name!==n.name),console.error("单个文件上传失败:",b)}}}catch(n){console.error("文件上传失败:",n)}finally{P.value=!1,s.target.value="",c.value.length>0&&(pe.value="preview",h.value=!1,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${q.value}px`))}t.length>0&&W.value&&(W.value=!1)},Tt=s=>{if(!s||isNaN(s))return"0 B";const t=1024,i=["B","KB","MB","GB"],a=Math.floor(Math.log(s)/Math.log(t));return parseFloat((s/Math.pow(t,a)).toFixed(2))+" "+i[a]},Dt=s=>s.url&&ve(s)?s.url:wa,ve=s=>{var a,n,d;const t=["jpg","jpeg","png","gif","webp"],i=((d=(n=(a=s.name)==null?void 0:a.split("."))==null?void 0:n.pop())==null?void 0:d.toLowerCase())||"";return t.includes(i)},xe=s=>{var a,n,d;const t=["mp4","webm","ogg"],i=((d=(n=(a=s.name)==null?void 0:a.split("."))==null?void 0:n.pop())==null?void 0:d.toLowerCase())||"";return t.includes(i)},vs=s=>{const t=s.name.split(".").pop().toLowerCase(),i=["jpg","jpeg","png","gif","webp"],a=["mp4","webm","ogg"];return i.includes(t)?"image":a.includes(t)?"video":"document"},ps=()=>{U.value&&be(()=>{U.value.scrollTop=U.value.scrollHeight})},Ne=r(""),Te=r(null),Fe=async()=>{var G,te;const s=localStorage.getItem("token");if(!s){_.push("/login");return}if(M.value){M.value=!1,Te.value&&(Te.value.abort(),Te.value=null),N.value&&(clearTimeout(N.value),N.value=null);return}if(!m.value.trim()&&c.value.length===0||M.value)return;M.value=!0,ps();const t=m.value.trim();m.value="",W.value?(Le.value=t,hs(t).catch(L=>{console.error("Web search failed:",L)})):ye.value&&(Le.value=t,Pt({query:t,page:1,pageSize:20}));const i=[],a=[],n=[];c.value.forEach(L=>{const F=vs(L);F==="image"?i.push(L.url):F==="video"?a.push(L.url):n.push(L.url)});const d={id:Date.now(),role:"user",content:t,displayContent:t,files:c.value.map(L=>({name:L.name,size:L.sizeFormatted,type:L.type,url:L.url}))};w.value.push(d);const b=r(""),A=Be({id:Date.now()+1,role:"assistant",content:"思考中...",displayContent:"思考中...",isLoading:!0});w.value.push(A);try{if(Te.value=new AbortController,se.value){const L={query:t};let F=null;Ge.value="";try{const Y=await fetch("https://aiapi.raycos.com.cn/api/agents/database/streaming/",{method:"POST",headers:{Authorization:`JWT ${s}`,"Content-Type":"application/json"},body:JSON.stringify(L)});if(!Y.ok)throw new Error("SSE请求失败");F=Y.body.getReader();const vt=new TextDecoder;let ze="",he="",Ie="";for(;;){const{done:pt,value:Ws}=await F.read();if(pt)break;ze+=vt.decode(Ws,{stream:!0});const Bt=ze.split(`
- `);ze=Bt.pop()||"";for(const Me of Bt)if(Me.startsWith("event:"))he=Me.substring(6).trim();else if(Me.startsWith("data:"))try{const Qe=Me.substring(5).trim();if(Qe){const S=JSON.parse(Qe);if(Ft(he||"message",S),he==="thinking_process"){console.log(S),A.thinkingSteps=[...Array.isArray(S.alternative_approaches)?S.alternative_approaches:[],...Array.isArray(S.key_insights)?S.key_insights:[],...Array.isArray(S.reasoning_steps)?S.reasoning_steps:[]].map(Gs=>({content:Gs,displayContent:""}));const j=[];typeof S.analysis_approach=="string"&&S.analysis_approach.trim()&&j.push({content:`${S.analysis_approach}`,displayContent:""}),typeof S.business_impact=="string"&&S.business_impact.trim()&&j.push({content:`${S.business_impact}`,displayContent:""}),S.model_version!=null&&`${S.model_version}`.trim()!==""&&j.push({content:`${S.model_version}`,displayContent:""}),S.processing_time!=null&&`${S.processing_time}`.trim()!==""&&j.push({content:`${S.processing_time}`,displayContent:""}),typeof S.query_intent=="string"&&S.query_intent.trim()&&j.push({content:`${S.query_intent}`,displayContent:""}),typeof S.risk_assessment=="string"&&S.risk_assessment.trim()&&j.push({content:`${S.risk_assessment}`,displayContent:""}),S.technical_constraints!=null&&`${S.technical_constraints}`.trim()!==""&&j.push({content:`${S.technical_constraints}`,displayContent:""});const Ye=A.thinkingSteps.length;A.thinkingSteps=[...A.thinkingSteps,...j],j.length>0&&(console.log("tempAiMessage",A),be(()=>{requestAnimationFrame(()=>{Xe(A,0)})}))}if(he==="final_summary"){S.summary&&S.summary.startsWith("命令集提示:")?await nt():Re.value=!1,w.value=w.value.filter(Ye=>Ye.id!==A.id);const j=Be({id:Date.now()+2,role:"assistant",content:S.summary,summaryHtml:S.html_content,analysis_result:S.analysis_result,automation_plan:S.automation_plan,thinkingSteps:[],displayContent:"",audioData:null,showRecommendedQuestions:Re.value||!1});M.value=!0,b.value=S.html_content,w.value.push(j);try{await It(j)}catch(Ye){console.error("打字效果出错:",Ye),j.displayContent=j.content}finally{M.value=!1}}}}catch(Qe){console.error("Failed to parse SSE data:",Me,Qe)}else Me===""&&(he="")}}catch(Y){throw console.error("请求或处理过程出错:",Y),Y}finally{if(F)try{await F.cancel()}catch(Y){console.error("关闭reader时出错:",Y)}}}else{const L=W.value?"https://aiapi.raycos.com.cn/api/chat/web-search-llm/":"https://aiapi.raycos.com.cn/api/chat/online/multimodal",F=await O.post(L,{message:t,chat_config_id:"2",user_id:"13365429324",session_id:Ne.value,source:"pc",image_urls:i,video_urls:a,documents:n,merchant_id:JSON.parse(localStorage.getItem("userInfo")).merchant.merchant_id,model_type:Ut.value.type,model_name:Ut.value.name},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`},signal:Te.value.signal});w.value=w.value.filter(pt=>pt.id!==A.id);const Y=W.value?F.data.data:F.data,vt=W.value?Y.answer:Y.choices[0].message.content,ze=W.value?(G=Y.audio_info)==null?void 0:G.audio:(te=Y.audio_info)==null?void 0:te.audio,he=(W.value,Y.session_id);he&&(Ne.value=he);const Ie=Be({id:Date.now()+2,role:"assistant",content:vt,displayContent:"",audioData:ze||null});w.value.push(Ie),Ie.audioData&&!Q.value&&await Lt(Ie.audioData,Ie.id),await It(Ie)}}catch(L){console.error("发送消息失败:",L),w.value=w.value.filter(F=>F.id!==A.id),w.value.push({id:Date.now()+2,role:"assistant",content:"发送消息失败,请重试",displayContent:"发送消息失败,请重试"})}finally{M.value=!1,Te.value=null}},hs=async s=>{Ze.value=!0;try{const t=await O.post("https://aiapi.raycos.com.cn/api/web-search-results/",{query:s,num_results:20,page:1,page_size:20,engine:"tavily"});console.log(t),t.data&&t.data.code===200&&(We.value=t.data.data.result||[],console.log(We.value),et.value=t.data.data.total||0)}catch(t){console.error("Web search failed:",t),We.value=[],et.value=0}finally{Ze.value=!1}},It=async s=>{if(!s||!s.content){console.error("Invalid message or content is missing");return}return new Promise(t=>{let n=0;s.displayContent="";const d=()=>{if(n<s.content.length&&M.value){let b="";const A=s.content[n];if(/[\u4e00-\u9fa5]/.test(A))b=A;else if(/[.,!?;,。!?;]/.test(A))b=A;else if(A===" "&&n+1<s.content.length){let te=n+1;for(;te<s.content.length&&!/[\s\n]/.test(s.content[te]);)te++;b=s.content.substring(n,te)}else b=A;s.displayContent=s.content.substring(0,n)+b,n+=b.length;const G=b.length>1?50:20;N.value=setTimeout(d,G)}else M.value||(s.displayContent=s.content),t()};d()})},gs=()=>{Z.value++;const s={id:Date.now(),title:`New Conversation ${Z.value}`,messages:[]};v.value.push(s),Ne.value="",Mt(s.id)},Mt=s=>{X.value=s;const t=v.value.find(i=>i.id===s);w.value=t?t.messages:[],Ne.value=""},ms=async s=>{if(P.value)return;const t=Array.from(s.dataTransfer.files);if(t.length===0)return;const i=10*1024*1024;t.filter(a=>!!(xe(a)&&a.size>i)),P.value=!0;try{for(const a of t){const n={name:a.name,size:a.size,sizeFormatted:Tt(a.size),type:a.type,isUploading:!0};c.value.push(n);try{const d=await Ct(a),b=c.value.findIndex(A=>A.name===a.name);b!==-1&&c.value.splice(b,1,{...n,url:d,isUploading:!1})}catch(d){c.value=c.value.filter(b=>b.name!==a.name),console.error("单个文件上传失败:",d)}}}catch(a){console.error("文件上传失败:",a)}finally{P.value=!1,c.value.length>0&&(pe.value="preview",h.value=!1,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${q.value}px`))}t.length>0&&W.value&&(W.value=!1)},fs=s=>{s.audioData?T.value===s.id?Ue():Lt(s.audioData,s.id):T.value===s.id?Ue():ys(s.content,s.id)},ys=async(s,t)=>{try{if(T.value&&T.value!==t&&Ue(),T.value===t)return;const i=await O.post("https://aiapi.raycos.com.cn/api/voices/play_text",{text:s},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});if(i.data.code===200){const a=new Audio(`https://aiapi.raycos.com.cn${i.data.audio_url}`);V.value=a,T.value=t,Q.value=!0,a.onended=()=>{T.value=null,V.value=null,Q.value=!1},a.onerror=n=>{console.error("播放文本失败:",n),J.error("播放失败,请稍后重试"),T.value=null,V.value=null,Q.value=!1},await a.play()}}catch(i){console.error("播放文本失败:",i),J.error("播放失败,请稍后重试"),T.value=null,V.value=null,Q.value=!1}},Ue=()=>{Se.value&&(Se.value.pause(),Se.value.currentTime=0,Se.value=null),V.value&&(V.value.pause(),V.value.currentTime=0,V.value=null),Q.value=!1,T.value=null};Oe(()=>{Ue()});const ws=s=>s?p.render(s):"",q=r(0),Et=s=>{s.preventDefault();const t=s.type==="mousedown"?s.clientX:s.touches[0].clientX,i=q.value,a=d=>{if(h.value)return;const b=d.type==="mousemove"?d.clientX:d.touches[0].clientX,A=t-b;let G=Math.min(Math.max(i+A,zi),Oi);q.value=G,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${G}px`,G==800?document.querySelector(".input-container").style.width="97%":document.querySelector(".input-container").style.width="98%")},n=()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",n),document.removeEventListener("touchmove",a),document.removeEventListener("touchend",n)};document.addEventListener("mousemove",a),document.addEventListener("mouseup",n),document.addEventListener("touchmove",a),document.addEventListener("touchend",n)};r(!0);const Le=r(""),_s=s=>{console.log(W),W.value=s,s&&(jt(),pe.value="search")},pe=r("search"),ks=r(!1),it=()=>{ks.value=window.innerWidth<=480};Oe(()=>{window.removeEventListener("resize",it)});const $t=r(!1),rt=()=>{$t.value=window.innerWidth<=768};Oe(()=>{window.removeEventListener("resize",rt)});const bs=gt(()=>(Ce(),!h.value)),As=r([]);me(se,async s=>{if(console.log("智能体状态:",s),s){q.value=800,h.value=!1,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${q.value}px`);const t=await O.get("https://aiapi.raycos.com.cn/api/agents/notifications/stream/",{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});console.log("API Response:",t.data),As.value=t.data.notifications,await nt(),ye.value=!1,W.value=!1}else h.value=!0,ye.value||(q.value=0,document.querySelector(".chat")&&(document.querySelector(".chat").style.right="460px",document.querySelector(".input-container").style.width="98%"))});const Ss=async s=>{if(s.target.checked){q.value=450,await be();const t=document.querySelector(".chat");t?t.style.right=`${q.value}px`:console.warn("未找到聊天容器元素"),W.value=!1,se.value=!1,pe.value="knowledge",m.value.trim()&&Pt({query:m.value,page:1,pageSize:20})}else{q.value=0,await be();const t=document.querySelector(".chat");document.querySelector(".input-container").style.width="98%",t?t.style.right="460px":console.warn("未找到聊天容器元素")}},Pt=async s=>{if(!(!s.query.trim()||!ye.value)){at.value=!0;try{const t=await O.post("https://aiapi.raycos.com.cn/chataids/mysql_fuzzy_search/",{keywords:s.query,documents:[],document_ids:[],limit:5},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});console.log(t),t.data&&t.data.status===200&&(tt.value=t.data.data.data||[],st.value=t.data.data.data.total||0)}catch(t){console.error("Knowledge search failed:",t),tt.value=[],st.value=0}finally{at.value=!1}}},Cs=s=>{s.target.checked?(q.value=450,document.querySelector(".chat")&&(document.querySelector(".chat").style.right=`${q.value}px`),ye.value=!1,se.value=!1,pe.value="search",m.value.trim()&&(Le.value=m.value)):(q.value=0,document.querySelector(".chat")&&(document.querySelector(".chat").style.right="460px"))},xs="https://aiapi.raycos.com.cn",ke=r([]),De=r(null),Ke=r(!1),Ut=gt(()=>{if(!De.value||!ke.value.length)return{type:"",name:""};const s=ke.value.find(t=>t.id==De.value);return{type:(s==null?void 0:s.type)||"",name:(s==null?void 0:s.name)||""}}),Ts=async()=>{Ke.value=!0;try{const t=await(await fetch(`${xs}/api/models?merchant_id=${JSON.parse(localStorage.getItem("userInfo")).merchant.merchant_id}`)).json();console.log(t),t.code===2e3&&(ke.value=(t.data.models||[]).map(i=>({id:i.id,name:i.name,type:i.type||i.model_type||"default"})),ke.value.length>0&&(De.value=ke.value[0].id))}catch(s){console.error("Failed to fetch models:",s)}finally{Ke.value=!1}},Ds=s=>{De.value=s,console.log(De.value)},ct=r({name:"",role:""});Ee(()=>{rt(),window.addEventListener("resize",rt),it(),window.addEventListener("resize",it),Ce(),window.addEventListener("resize",Ce),Ts(),Xt();const s=localStorage.getItem("userInfo");if(s)try{ct.value=JSON.parse(s)}catch(t){console.error("解析用户信息失败:",t)}});const ut=r(!1),Is=()=>{ut.value=!0,_e.value=!1},Ms=async()=>{try{await O.post("https://aiapi.raycos.com.cn/user/logout",{},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}}),localStorage.removeItem("token"),localStorage.removeItem("userInfo"),localStorage.removeItem("permissions"),localStorage.removeItem("username"),localStorage.removeItem("mobile"),E.commit("app/setUser",{user:{},permission:[],auth:{}}),_e.value=!1,_.push("/login")}catch(s){console.error("退出登录失败:",s),localStorage.clear(),_.push("/login")}},Es=async()=>{var s,t;try{const i=await O.post("https://aiapi.raycos.com.cn/user/create_invitation",{},{headers:{Authorization:`JWT ${localStorage.getItem("token")}`}});if(console.log(i),i.data.code===200){J.success("创建邀请成功");const a=`${window.location.protocol}//${window.location.host}`;window.location.href=`${a}${i.data.data.invitation_link}`}else J.error(i.data.message||"创建邀请失败")}catch(i){console.error("创建邀请失败:",i),J.error(((t=(s=i.response)==null?void 0:s.data)==null?void 0:t.message)||"创建邀请失败,请稍后重试")}_e.value=!1},Lt=async(s,t)=>{try{if(T.value&&T.value!==t&&Ue(),T.value===t)return;const i=new Audio(s);V.value=i,T.value=t,Q.value=!0,i.onended=()=>{T.value=null,V.value=null,Q.value=!1},i.onerror=a=>{console.error("播放音频失败:",a),J.error("播放失败,请稍后重试"),T.value=null,V.value=null,Q.value=!1},await i.play()}catch(i){console.error("播放音频失败:",i),J.error("播放失败,请稍后重试"),T.value=null,V.value=null,Q.value=!1}},ae=r(!1),dt=s=>{document.documentElement.classList.toggle("dark-theme",s)},$s=()=>{ae.value=!ae.value,localStorage.setItem("theme",ae.value?"dark":"light"),dt(ae.value)},zt=()=>{const s=document.querySelector(".fab");s&&s.classList.add("animated"),ue.value=!ue.value},Ps=()=>{console.log("回复功能"),J.info("回复功能")},Us=async()=>{se.value=!0,await nt()};Ee(()=>{document.querySelector(".chat")&&(document.querySelector(".chat").style.right="460px"),Ce();const s=localStorage.getItem("theme");s?ae.value=s==="dark":ae.value=window.matchMedia("(prefers-color-scheme: dark)").matches,dt(ae.value),window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",i=>{localStorage.getItem("theme")||(ae.value=i.matches,dt(i.matches))})});const Ls=r({xls:!1,minColLength:15,minRowLength:50,widthOffset:50,heightOffset:30,forceRender:!0,maxSheetLength:10,showGridLines:!0,defaultFontSize:12,defaultRowHeight:24,autoFitColumn:!0,overflowColumns:!0,showToolbar:!0}),Ot=()=>{console.log("Excel文件渲染完成"),be(()=>{window.dispatchEvent(new Event("resize"))})},zs=s=>{console.error("Excel文件渲染失败:",s),J.error("Excel预览失败:"+(s.message||"请尝试下载后查看"))},Os=s=>{var n,d,b;if(!s)return!1;const t=["doc","docx"],i=((b=(d=(n=s.name)==null?void 0:n.split("."))==null?void 0:d.pop())==null?void 0:b.toLowerCase())||"",a=t.includes(i);return a&&s.type?s.type==="application/msword"||s.type==="application/vnd.openxmlformats-officedocument.wordprocessingml.document":a},Bs=s=>{var a,n,d;if(!s)return!1;const t=["xls","xlsx"],i=((d=(n=(a=s.name)==null?void 0:a.split("."))==null?void 0:n.pop())==null?void 0:d.toLowerCase())||"";return t.includes(i)},qs=s=>{var t,i;return s&&((i=(t=s.name)==null?void 0:t.toLowerCase())==null?void 0:i.endsWith(".pdf"))||!1},H=r(null);me(()=>c.value,s=>{s&&s.length>0?H.value=s[s.length-1]:H.value=null},{immediate:!0,deep:!0});const Vs=()=>{H.value=null},He=r([]);return(s,t)=>{const i=ie("a-drawer");return l(),o("div",{class:z(["layout",{"dark-theme":ae.value}])},[D(Hl,{visible:ut.value,"onUpdate:visible":t[0]||(t[0]=a=>ut.value=a)},null,8,["visible"]),ot.value?(l(),o("div",Ql,[e("div",Yl,[e("div",{class:"progress-modal-header"},[t[8]||(t[8]=e("h3",null,"处理进度",-1)),e("button",{class:"close-btn",onClick:rs},"×")]),e("div",jl,[(l(!0),o(I,null,$(de.value,(a,n)=>(l(),o("div",{key:n,class:z(["progress-item",{completed:a.value>=100,error:a.status==="错误"}])},[e("div",Xl,[e("div",Zl,[e("span",eo,g(as(a)),1),e("span",to,g(a.title),1)]),e("span",{class:z(["progress-percentage",ns(a)])},g(a.value)+"%",3)]),e("div",so,[e("div",{class:z(["progress-bar",is(a)]),style:je({width:a.value+"%"})},null,6)]),e("div",ao,g(a.status),1),a.subTasks&&a.subTasks.length>0?(l(),o("div",lo,[(l(!0),o(I,null,$(a.subTasks,(d,b)=>(l(),o("div",{key:b,class:z(["sub-progress-item",{completed:d.value>=100,active:d.isActive}])},[e("div",oo,[e("span",no,g(ls(d)),1),e("span",io,g(d.title),1),e("span",ro,g(d.value)+"%",1)]),e("div",co,[e("div",{class:"sub-progress-bar",style:je({width:d.value+"%"})},null,4)]),d.subSubTasks&&d.subSubTasks.length>0?(l(),o("div",uo,[(l(!0),o(I,null,$(d.subSubTasks,(A,G)=>(l(),o("div",{key:G,class:z(["sub-sub-progress-item",{completed:A.value>=100,active:A.isActive}])},[e("div",vo,[e("span",po,g(os(A)),1),e("span",ho,g(A.title),1),e("span",go,g(A.value)+"%",1)]),e("div",mo,[e("div",{class:"sub-sub-progress-bar",style:je({width:A.value+"%"})},null,4)])],2))),128))])):x("",!0)],2))),128))])):x("",!0)],2))),128))])])])):x("",!0),e("div",fo,[e("div",yo,[t[13]||(t[13]=e("div",{class:"logo"},[e("img",{src:na,alt:"logo",class:"logo-img"})],-1)),e("div",wo,[e("div",{class:"theme-switch",onClick:$s,title:ae.value?"切换到浅色模式":"切换到深色模式"},[D(Ks,{name:"theme-icon",mode:"out-in"},{default:le(()=>[ae.value?(l(),o("img",{key:ae.value,src:ia,alt:"切换到浅色模式",class:"theme-icon"})):(l(),o("img",ko))]),_:1})],8,_o),Pe.value?x("",!0):(l(),o("div",{key:0,class:"user-info",onClick:kt},[e("div",bo,"商户名称:"+g(ct.value.merchant_name||"未登录用户"),1),e("div",Ao,"当前用户:"+g(ct.value.username||"未登录用户"),1)])),e("div",{class:"avatar",onClick:kt},t[9]||(t[9]=[e("img",{src:ca,alt:"用户头像"},null,-1)]))]),R(e("div",So,[e("div",{class:"dropdown-item",onClick:Is},t[10]||(t[10]=[e("i",{class:"fas fa-key"},null,-1),re(" 修改密码 ")])),e("div",{class:"dropdown-item",onClick:Es},t[11]||(t[11]=[e("i",{class:"fas fa-user-plus"},null,-1),re(" 创建邀请 ")])),e("div",{class:"dropdown-item",onClick:Ms},t[12]||(t[12]=[e("i",{class:"fas fa-sign-out-alt"},null,-1),re(" 退出登录 ")]))],512),[[ge,_e.value]])])]),e("div",{class:z(["collapse-left-button",{"menu-collapsed":oe.value}]),onClick:Yt},[e("img",{src:oe.value?B(ya):B(fa),alt:"toggle",class:"collapse-icon"},null,8,Co)],2),e("div",{class:z(["menu",{collapsed:oe.value}])},[e("button",{class:"new-conversation-btn",onClick:gs},t[14]||(t[14]=[e("img",{class:"tab-icon",src:Wt,alt:""},null,-1),e("span",null,"New Conversation",-1)])),e("div",xo,[(l(!0),o(I,null,$(v.value.slice(0,10),a=>(l(),o("div",{key:a.id,class:z(["conversation-item",{active:X.value===a.id}]),onClick:n=>Mt(a.id)},[e("div",Do,g(a.title),1),a.sessionData?(l(),o("div",Io,[e("span",Mo,g(es(a.sessionData.user_message.created_at)),1),e("span",Eo,g(ts(a.sessionData.metadata.type)),1)])):x("",!0)],10,To))),128))]),e("div",$o,[e("div",{class:"config-header",style:{"border-bottom":"1px solid #e5e5e5"},onClick:y},t[15]||(t[15]=[e("img",{src:ua,alt:"permission",class:"config-icon"},null,-1),e("span",{style:{color:"#333333"}},"系统配置",-1),e("img",{src:Ve,alt:"permission",style:{"margin-left":"auto"},class:"config-icon"},null,-1)])),D(i,{title:"系统配置图",placement:"right",width:1e3,visible:ee.value,onClose:u},{default:le(()=>[D(la)]),_:1},8,["visible"]),e("div",{class:"config-header",onClick:K},t[16]||(t[16]=[e("img",{src:da,alt:"permission",class:"config-icon"},null,-1),e("span",{style:{color:"#333333"}},"角色及权限",-1),e("img",{src:Ve,alt:"permission",style:{"margin-left":"auto"},class:"config-icon"},null,-1)])),D(Al),D(La),D(vl)])],2),e("div",Po,[t[43]||(t[43]=e("div",{class:"chat-header"},[e("h2",null,"智能助手"),e("div",{class:"chat-status"},[e("span",{class:"status-indicator online"}),e("span",null,"在线")])],-1)),w.value.length===0&&we.value.length!==0?(l(),o("div",Uo,[e("div",Lo,[e("div",zo,[e("div",Oo,[se.value?(l(),o("div",Wo,[(l(!0),o(I,null,$(we.value,(a,n)=>(l(),o("div",{key:n,class:"suggestion-item",onClick:d=>Je(a.example)},g(a.example),9,Go))),128))])):(l(),o("div",Bo,[e("div",qo,[(l(!0),o(I,null,$(we.value,(a,n)=>(l(),o("div",{key:n,class:"suggestion-item",onClick:d=>Je(a.example)},g(a.example),9,Vo))),128))])]))])])])])):x("",!0),w.value.length===0&&we.value.length===0?(l(),o("div",Ro,[e("div",Jo,[t[18]||(t[18]=e("h3",null,"嗨,我是你的智能助手",-1)),e("div",No,[e("div",Fo,[e("div",Ko,[t[17]||(t[17]=e("img",{src:va,alt:"hot topics",class:"tab-icon"},null,-1)),se.value?(l(),o("h4",Qo,"待处理问题")):(l(),o("h4",Ho,"推荐问题"))]),se.value?x("",!0):(l(),o("p",Yo,"为您精选的热门问题")),se.value?(l(),o("div",Zo,[(l(!0),o(I,null,$(we.value,(a,n)=>(l(),o("div",{key:n,class:"suggestion-item",onClick:d=>Je(a.example)},g(a.example),9,en))),128))])):(l(),o("div",jo,[(l(!0),o(I,null,$([...yt.value,...wt.value],(a,n)=>(l(),o("div",{key:n,class:"suggestion-item",onClick:d=>us(a)},g(a.question),9,Xo))),128))]))])])])])):x("",!0),w.value.length!==0?(l(),o("div",{key:2,class:"message-list",ref_key:"messageList",ref:U},[He.value&&He.value.length>0?(l(),o("div",tn,[(l(!0),o(I,null,$(He.value,(a,n)=>(l(),o("div",{key:n,class:z(["thinking-step-stream",[a.type,{"fade-in":!0}]])},[re(g(a.displayContent!==void 0?a.displayContent:a.content)+" ",1),n===He.value.length-1?(l(),o("div",sn,t[19]||(t[19]=[e("span",null,null,-1),e("span",null,null,-1),e("span",null,null,-1)]))):x("",!0)],2))),128))])):x("",!0),(l(!0),o(I,null,$(w.value,a=>(l(),o("div",{key:a.id,class:z(["message-item",a.role==="user"?"user":"assistant"])},[e("div",an,[e("div",ln,[a.thinkingSteps&&a.thinkingSteps.length>0?(l(),o("div",on,[(l(!0),o(I,null,$(a.thinkingSteps,(n,d)=>(l(),o("div",{key:d,class:"thinking-step"},[e("div",nn,g(n.displayContent!==void 0?n.displayContent:n.content),1)]))),128))])):x("",!0),a.role==="user"&&a.files?(l(!0),o(I,{key:1},$(a.files,n=>(l(),o("div",{key:n.name,class:"file-message"},[ve(n)?(l(),o("div",rn,[e("img",{src:n.url,class:"preview-image"},null,8,cn)])):xe(n)?(l(),o("div",un,[e("video",{controls:"",class:"preview-video",src:n.url,preload:"metadata"}," Your browser does not support the video tag. ",8,dn)])):(l(),o("div",vn,[e("img",{src:Dt(n),class:"file-type-icon"},null,8,pn),e("div",hn,[e("span",{class:"file-name",title:n.name},g(n.name),9,gn),e("span",mn,g(n.size),1)])]))]))),128)):x("",!0),a.role==="assistant"?(l(),o("div",{key:2,class:"message-text",innerHTML:ws(a.displayContent)},null,8,fn)):(l(),o("div",yn,g(a.content),1)),a.analysis_result?(l(),o("div",wn,[(l(!0),o(I,null,$(a.analysis_result.insights,n=>(l(),o("div",_n,g(n.message),1))),256)),(l(!0),o(I,null,$(a.analysis_result.issues,n=>(l(),o("div",kn,g(n.message),1))),256)),(l(!0),o(I,null,$(a.analysis_result.recommendations,n=>(l(),o("div",bn,g(n.description),1))),256)),(l(!0),o(I,null,$(a.automation_plan.steps,n=>(l(),o("div",An,[e("a",{href:"#",onClick:d=>bt(),style:{color:"#0066cc","text-decoration":"none"}},g(n.description),9,Sn)]))),256))])):x("",!0),a.role==="assistant"?(l(),o("div",Cn,[e("button",{class:"audio-btn",onClick:n=>fs(a)},[T.value===a.id?(l(),o("div",Tn,t[20]||(t[20]=[e("span",{class:"wave-bar"},null,-1),e("span",{class:"wave-bar"},null,-1),e("span",{class:"wave-bar"},null,-1),e("span",{class:"wave-bar"},null,-1)]))):(l(),o("img",{key:1,src:B(_a),alt:"播放",class:"audio-icon"},null,8,Dn))],8,xn)])):x("",!0)])]),a.role==="assistant"&&a.showRecommendedQuestions?(l(),o("div",In,[t[21]||(t[21]=e("div",{class:"questions-header"},null,-1)),e("div",Mn,[(l(!0),o(I,null,$(we.value,(n,d)=>(l(),o("div",{key:d,class:"question-item",onClick:b=>Je(n.example)},g(n.example),9,En))),128))])])):x("",!0)],2))),128))],512)):x("",!0),e("div",$n,[e("div",{class:z(["search-toggles",{compact:$t.value}])},[e("div",Pn,[e("div",Un,[e("div",Ln,[D(B(Ys)),t[23]||(t[23]=e("span",{class:"toggle-text"},"互联网",-1)),e("div",zn,[R(e("input",{type:"checkbox",id:"webSearchToggle","onUpdate:modelValue":t[1]||(t[1]=a=>W.value=a),onChange:Cs,disabled:c.value.length>0,class:"toggle-input"},null,40,On),[[ht,W.value]]),e("label",{for:"webSearchToggle",class:z(["toggle-label",{disabled:c.value.length>0}])},t[22]||(t[22]=[e("span",{class:"toggle-slider"},null,-1)]),2)])])]),e("div",Bn,[e("div",qn,[D(B(Vt)),t[25]||(t[25]=e("span",{class:"toggle-text"},"知识库",-1)),e("div",Vn,[R(e("input",{type:"checkbox",id:"knowledgeSearchToggle","onUpdate:modelValue":t[2]||(t[2]=a=>ye.value=a),onChange:Ss,class:"toggle-input"},null,544),[[ht,ye.value]]),t[24]||(t[24]=e("label",{for:"knowledgeSearchToggle",class:"toggle-label"},[e("span",{class:"toggle-slider"})],-1))])])]),e("div",Wn,[e("div",Gn,[D(B(Vt)),t[27]||(t[27]=e("span",{class:"toggle-text"},"智能体",-1)),e("div",Rn,[R(e("input",{type:"checkbox",id:"inferenceModelId","onUpdate:modelValue":t[3]||(t[3]=a=>se.value=a),class:"toggle-input"},null,512),[[ht,se.value]]),t[26]||(t[26]=e("label",{for:"inferenceModelId",class:"toggle-label"},[e("span",{class:"toggle-slider"})],-1))])])])]),e("div",Jn,[e("div",Nn,[e("select",{class:"model-select",value:De.value,onChange:t[4]||(t[4]=a=>Ds(a.target.value)),disabled:Ke.value},[Ke.value?(l(),o("option",Kn,"加载中...")):ke.value.length===0?(l(),o("option",Hn,"无可用模型")):x("",!0),(l(!0),o(I,null,$(ke.value,a=>(l(),o("option",{key:a.id,value:a.id},g(a.name),9,Qn))),128))],40,Fn)])])],2),C.value?(l(),o("div",Yn,[e("div",jn,[e("div",{class:"attachments-header"},[t[29]||(t[29]=e("span",null,"Attachments",-1)),e("button",{class:"close-btn",onClick:At},t[28]||(t[28]=[e("img",{src:pa,alt:""},null,-1)]))]),c.value.length===0?(l(),o("div",Xn,[e("div",{class:z(["upload-area",{"has-files":c.value.length>0}]),onClick:St,onDrop:ne(ms,["prevent"]),onDragover:t[5]||(t[5]=ne(()=>{},["prevent"])),onDragenter:t[6]||(t[6]=ne(()=>{},["prevent"]))},[P.value?(l(),o("div",Zn,t[30]||(t[30]=[e("div",{class:"loading-spinner"},null,-1),e("div",{class:"upload-text"},"Uploading...",-1)]))):(l(),o(I,{key:1},[t[31]||(t[31]=e("img",{src:ha,alt:"upload",class:"upload-icon"},null,-1)),t[32]||(t[32]=e("div",{class:"upload-text"},"Upload files",-1)),t[33]||(t[33]=e("div",{class:"upload-hint"}," Click or drag files to this area to upload ",-1))],64)),e("input",{type:"file",ref_key:"fileInput",ref:k,style:{display:"none"},onChange:xt,multiple:""},null,544)],34)])):x("",!0),c.value.length!==0?(l(),o("div",ei,[e("div",ti,[(l(!0),o(I,null,$(c.value,a=>(l(),o("div",{key:a.name,class:z(["file-item",{"is-image":ve(a)}])},[e("div",{class:z(ve(a)?"file-wrapper":"")},[a.isUploading?(l(),o("div",si,t[34]||(t[34]=[e("div",{class:"loading-spinner"},null,-1)]))):ve(a)?(l(),o("img",{key:1,src:a.url,alt:"file",class:"file-icon"},null,8,ai)):xe(a)?(l(),o("video",{key:2,src:a.url,class:"file-icon",preload:"metadata"}," Your browser does not support the video tag. ",8,li)):(l(),o("img",{key:3,src:Dt(a),alt:"file",class:z(ve(a)||xe(a)?"file-icon":"")},null,10,oi)),a.isUploading?x("",!0):(l(),o("button",{key:4,class:"remove-btn",onClick:ne(n=>ds(a),["stop"])}," × ",8,ni))],2),ve(a)?x("",!0):(l(),o("div",ii,[e("span",ri,g(a.name),1),e("span",ci,g(a.sizeFormatted),1)]))],2))),128)),e("button",{class:"add-more-btn",onClick:ne(St,["stop"])},t[35]||(t[35]=[e("img",{src:Wt,alt:"add"},null,-1)]))]),e("input",{type:"file",ref_key:"fileInput",ref:k,style:{display:"none"},onChange:xt,multiple:""},null,544)])):x("",!0)])])):x("",!0),e("div",ui,[e("button",{class:"attachment-btn",onClick:At},t[36]||(t[36]=[e("img",{src:ga,alt:"attachment",class:"tab-icon"},null,-1)])),R(e("input",{type:"text",class:"message-input","onUpdate:modelValue":t[7]||(t[7]=a=>m.value=a),onKeyup:Hs(Fe,["enter"]),placeholder:"Type a message..."},null,544),[[qe,m.value]]),e("button",{class:"send-btn",onClick:Fe},[M.value?(l(),o("span",di,t[37]||(t[37]=[e("span",{class:"loading-square"},null,-1)]))):(l(),o("img",vi))])])]),e("div",{class:z(["fab",{open:ue.value}]),onClick:zt},[ue.value?x("",!0):(l(),o("div",pi,t[38]||(t[38]=[e("span",null,null,-1),e("span",null,null,-1),e("span",null,null,-1)]))),e("div",{class:z(["option reply",{open:ue.value}]),onClick:ne(Ps,["stop"])},[e("div",hi,[D(B(js),{class:"option-icon"}),t[39]||(t[39]=e("span",{class:"option-label"},"查看",-1))])],2),e("div",{class:z(["option love",{open:ue.value}]),onClick:ne(bt,["stop"])},[e("div",gi,[D(B(Xs),{class:"option-icon"}),t[40]||(t[40]=e("span",{class:"option-label"},"任务",-1))])],2),e("div",{class:z(["option delete",{open:ue.value}]),onClick:ne(Us,["stop"])},[e("div",mi,[D(B(Zs),{class:"option-icon"}),t[41]||(t[41]=e("span",{class:"option-label"},"命令集",-1))])],2),ue.value?(l(),o("div",{key:1,class:"close",onClick:ne(zt,["stop"])},t[42]||(t[42]=[e("i",{class:"material-icons"},"close",-1)]))):x("",!0)],2)]),Pe.value?x("",!0):(l(),o("div",{key:1,class:z(["right_menu",{collapsed:!bs.value}]),style:je({width:q.value+"px"})},[se.value?(l(),o("div",fi,[e("div",yi,[R(e("div",wi,t[44]||(t[44]=[e("h3",{class:"steps-title"},"处理步骤",-1),e("div",{id:"stepsList"},null,-1)]),512),[[ge,lt.value]]),e("div",{id:"resultContent",innerHTML:Ge.value},null,8,_i)])])):x("",!0),e("div",{class:"resize-handle",onMousedown:Et,onTouchstart:Et},null,32),e("div",ki,[R(e("div",bi,[D(ja,{searchResults:We.value,loading:Ze.value,total:et.value,enableWebSearch:W.value,message:Le.value,"onUpdate:enableWebSearch":_s},null,8,["searchResults","loading","total","enableWebSearch","message"])],512),[[ge,pe.value==="search"]]),R(e("div",Ai,[t[46]||(t[46]=e("div",{class:"preview-header"},[e("span",null,"文档预览")],-1)),e("div",Si,[e("div",Ci,[H.value?(l(),o("div",xi,[e("div",Ti,[e("span",null,g(H.value.name),1),e("button",{class:"close-btn",onClick:Vs},[D(B(ea))])]),e("div",Di,[ve(H.value)?(l(),o("img",{key:0,src:H.value.url,class:"preview-image",alt:"preview"},null,8,Ii)):xe(H.value)?(l(),o("video",{key:1,src:H.value.url,controls:"",class:"preview-video"},null,8,Mi)):Os(H.value)?(l(),o("div",Ei,[D(B(ta),{src:H.value.url,class:"doc-preview",onRendered:Ot,onError:s.handleError},null,8,["src","onError"])])):Bs(H.value)?(l(),o("div",$i,[D(B(sa),{options:Ls.value,onRendered:Ot,onError:zs,src:H.value.url,class:"doc-preview"},null,8,["options","src"])])):qs(H.value)?(l(),o("iframe",{key:4,src:H.value.url,style:{width:"100%",height:"100%"},frameborder:"0"},null,8,Pi)):(l(),o("div",Ui,[D(B(aa),{class:"large-icon"}),t[45]||(t[45]=e("p",null,"该文件类型暂不支持预览",-1))]))])])):x("",!0)])])],512),[[ge,pe.value==="preview"]]),R(e("div",Li,[D(Bl,{searchResults:tt.value,loading:at.value,total:st.value,message:Le.value},null,8,["searchResults","loading","total","message"])],512),[[ge,pe.value==="knowledge"]])])],6))],2)}}},Ri=Ae(Bi,[["__scopeId","data-v-f51cef3d"]]);export{Ri as default};
|