libre-webui 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/README.md +24 -28
  2. package/backend/dist/index.d.ts.map +1 -1
  3. package/backend/dist/index.js +13 -0
  4. package/backend/dist/index.js.map +1 -1
  5. package/backend/dist/routes/libreClaw.d.ts +3 -0
  6. package/backend/dist/routes/libreClaw.d.ts.map +1 -0
  7. package/backend/dist/routes/libreClaw.js +156 -0
  8. package/backend/dist/routes/libreClaw.js.map +1 -0
  9. package/backend/dist/services/libreClawService.d.ts +105 -0
  10. package/backend/dist/services/libreClawService.d.ts.map +1 -0
  11. package/backend/dist/services/libreClawService.js +169 -0
  12. package/backend/dist/services/libreClawService.js.map +1 -0
  13. package/backend/dist/services/pluginCapabilityRegistryService.d.ts.map +1 -1
  14. package/backend/dist/services/pluginCapabilityRegistryService.js.map +1 -1
  15. package/backend/dist/services/pluginService.d.ts.map +1 -1
  16. package/backend/dist/services/pluginService.js +1 -3
  17. package/backend/dist/services/pluginService.js.map +1 -1
  18. package/backend/dist/services/pluginTTSService.d.ts.map +1 -1
  19. package/backend/dist/services/pluginTTSService.js.map +1 -1
  20. package/backend/dist/storage.d.ts.map +1 -1
  21. package/backend/dist/storage.js.map +1 -1
  22. package/backend/dist/types/index.d.ts.map +1 -1
  23. package/backend/dist/types/index.js.map +1 -1
  24. package/backend/dist/utils/pluginValidation.d.ts +0 -1
  25. package/backend/dist/utils/pluginValidation.d.ts.map +1 -1
  26. package/backend/dist/utils/pluginValidation.js +0 -10
  27. package/backend/dist/utils/pluginValidation.js.map +1 -1
  28. package/backend/package.json +2 -2
  29. package/frontend/dist/assets/index-Dc8Q4dJZ.css +1 -0
  30. package/frontend/dist/assets/index-ONn9VIq7.js +5 -0
  31. package/frontend/dist/index.html +10 -10
  32. package/frontend/dist/js/{ArtifactContainer-CA523BOS.js → ArtifactContainer-CqKsiKz0.js} +1 -1
  33. package/frontend/dist/js/{ArtifactDemoPage-C0p2-ccP.js → ArtifactDemoPage-Dd5BjIu2.js} +1 -1
  34. package/frontend/dist/js/ArtifactSlideOutPanel-Yc7ttIaY.js +1 -0
  35. package/frontend/dist/js/{Button-BmZQkAPD.js → Button-BUjLpHmR.js} +1 -1
  36. package/frontend/dist/js/ChatPage-Cpy7lQ0D.js +16 -0
  37. package/frontend/dist/js/{FirstTimeSetup-pi-S4VU-.js → FirstTimeSetup-DcGhm0H0.js} +1 -1
  38. package/frontend/dist/js/GalleryPage-DNI2Evvf.js +1 -0
  39. package/frontend/dist/js/LibreClawPage-CmTiROsJ.js +1 -0
  40. package/frontend/dist/js/ModelManagerModals-CfvSeNsT.js +1 -0
  41. package/frontend/dist/js/ModelsPage-CeTGqx4q.js +2 -0
  42. package/frontend/dist/js/{OptimizedSyntaxHighlighter-DlI4omE2.js → OptimizedSyntaxHighlighter-CNjLqj1Z.js} +1 -1
  43. package/frontend/dist/js/PersonasPage-BUqu7gJ3.js +13 -0
  44. package/frontend/dist/js/{RichMessageContent-Darvuw8F.js → RichMessageContent-B0JO8vkR.js} +3 -3
  45. package/frontend/dist/js/SettingsModal-B5aJ5vfV.js +1 -0
  46. package/frontend/dist/js/UserManagementPage-BqIIWX2M.js +1 -0
  47. package/frontend/dist/js/api-CbmZzKBu.js +15 -0
  48. package/frontend/dist/js/{ar-BIL8U_dv.js → ar-BAOdgn6O.js} +2 -2
  49. package/frontend/dist/js/{artifactHtml-CRdkOCnz.js → artifactHtml-B7Oy2e__.js} +16 -16
  50. package/frontend/dist/js/{bn-BWQoWPn6.js → bn-Bp2KS5mx.js} +2 -2
  51. package/frontend/dist/js/{cs-DOD1vscE.js → cs-DOgJ0c5p.js} +2 -2
  52. package/frontend/dist/js/{da-DYPzSzX4.js → da-BCKTkC35.js} +2 -2
  53. package/frontend/dist/js/{de-CHd4b2Xf.js → de-BXyECph5.js} +2 -2
  54. package/frontend/dist/js/{es-BmDO6uNe.js → es-Db4bDYIF.js} +2 -2
  55. package/frontend/dist/js/fr-BPIkf6zH.js +2 -0
  56. package/frontend/dist/js/{hi-BRDq_y1B.js → hi-Bm8D_Aux.js} +2 -2
  57. package/frontend/dist/js/{id-I_F2nstV.js → id-DiWaH74_.js} +2 -2
  58. package/frontend/dist/js/{is-Boj7-J12.js → is-DLgJywtZ.js} +2 -2
  59. package/frontend/dist/js/{it-CNeHl9Fh.js → it-lldrM8pE.js} +2 -2
  60. package/frontend/dist/js/{ja-DrVG6G8s.js → ja-Cfe9uZmQ.js} +2 -2
  61. package/frontend/dist/js/{ko-BtKRwlHW.js → ko-BhChO3MQ.js} +2 -2
  62. package/frontend/dist/js/logger-BmpKNkls.js +1 -0
  63. package/frontend/dist/js/markdown-core-fkbHPd-g.js +16 -0
  64. package/frontend/dist/js/markdown-math-Ci4QOsf-.js +261 -0
  65. package/frontend/dist/js/{ms-Dp9MigoU.js → ms-SWtmetXo.js} +2 -2
  66. package/frontend/dist/js/{nl-Bk9pGoCF.js → nl-CUO6I3nO.js} +2 -2
  67. package/frontend/dist/js/{pl-seE8_lLS.js → pl-BUAu96P6.js} +2 -2
  68. package/frontend/dist/js/{pt-BAeBtldI.js → pt-DCHwoWiE.js} +2 -2
  69. package/frontend/dist/js/{react-vendor-DtQrJICq.js → react-vendor-Co1u1rWb.js} +2 -2
  70. package/frontend/dist/js/{ru-CkCpWFNb.js → ru-Ciz053N7.js} +2 -2
  71. package/frontend/dist/js/{sv-BM7nqxmA.js → sv-D38ZHjv-.js} +2 -2
  72. package/frontend/dist/js/{syntax-highlight-B758xPeo.js → syntax-highlight-D5wpTVgr.js} +2 -2
  73. package/frontend/dist/js/{th-vDIZbpa4.js → th-D2cAucvn.js} +2 -2
  74. package/frontend/dist/js/{tr-G2-XodhW.js → tr-Go355oDu.js} +2 -2
  75. package/frontend/dist/js/ui-vendor-BJAeWL11.js +177 -0
  76. package/frontend/dist/js/{uk-DfVfZcBQ.js → uk-cdzjhgya.js} +2 -2
  77. package/frontend/dist/js/useBaseQuery-6OJiOiyu.js +1 -0
  78. package/frontend/dist/js/useQuery-DfkI6VAv.js +1 -0
  79. package/frontend/dist/js/{utils-es0n-47H.js → utils-BaPYjs_z.js} +1 -1
  80. package/frontend/dist/js/utils-vendor-BX3ZwoIK.js +9 -0
  81. package/frontend/dist/js/{vi-Yp9yjb06.js → vi-BSOpE423.js} +2 -2
  82. package/frontend/dist/js/{zh-DtRb97we.js → zh-BFh6sHZG.js} +2 -2
  83. package/package.json +2 -2
  84. package/frontend/dist/assets/index-BxHDVIti.css +0 -1
  85. package/frontend/dist/assets/index-CDA2f43l.js +0 -5
  86. package/frontend/dist/js/ArtifactSlideOutPanel-BBYuYyr_.js +0 -1
  87. package/frontend/dist/js/ChatPage-QSOhIynr.js +0 -16
  88. package/frontend/dist/js/GalleryPage-BPXB-D4f.js +0 -1
  89. package/frontend/dist/js/ModelManagerModals-D3SZV7CU.js +0 -1
  90. package/frontend/dist/js/ModelsPage-Fmqc1Zxb.js +0 -2
  91. package/frontend/dist/js/PersonasPage-BuLOCG1Y.js +0 -13
  92. package/frontend/dist/js/SettingsModal-CQhAeaia.js +0 -1
  93. package/frontend/dist/js/UserManagementPage-yX9vOase.js +0 -1
  94. package/frontend/dist/js/api-d05r9G59.js +0 -15
  95. package/frontend/dist/js/fr-DW24sUV7.js +0 -2
  96. package/frontend/dist/js/logger-1THq8-96.js +0 -1
  97. package/frontend/dist/js/markdown-core-CEpaJrKd.js +0 -16
  98. package/frontend/dist/js/markdown-math-DAmpvM9y.js +0 -261
  99. package/frontend/dist/js/ui-vendor-MCs1MDmN.js +0 -177
  100. package/frontend/dist/js/useBaseQuery-CrdrLcmR.js +0 -1
  101. package/frontend/dist/js/useQuery-DaEnYfWR.js +0 -1
  102. package/frontend/dist/js/utils-vendor-B2ZBL57Y.js +0 -9
  103. package/plugins/openclaw-agent.json +0 -69
@@ -0,0 +1,177 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{f as t}from"./markdown-core-fkbHPd-g.js";var n=e(t(),1),r={data:``},i=e=>{if(typeof window==`object`){let t=(e?e.querySelector(`#_goober`):window._goober)||Object.assign(document.createElement(`style`),{innerHTML:` `,id:`_goober`});return t.nonce=window.__nonce__,t.parentNode||(e||document.head).appendChild(t),t.firstChild}return e||r},a=/(?:([\u0080-\uFFFF\w-%@]+) *:? *([^{;]+?);|([^;}{]*?) *{)|(}\s*)/g,o=/\/\*[^]*?\*\/| +/g,s=/\n+/g,c=(e,t)=>{let n=``,r=``,i=``;for(let a in e){let o=e[a];a[0]==`@`?a[1]==`i`?n=a+` `+o+`;`:r+=a[1]==`f`?c(o,a):a+`{`+c(o,a[1]==`k`?``:t)+`}`:typeof o==`object`?r+=c(o,t?t.replace(/([^,])+/g,e=>a.replace(/([^,]*:\S+\([^)]*\))|([^,])+/g,t=>/&/.test(t)?t.replace(/&/g,e):e?e+` `+t:t)):a):o!=null&&(a=/^--/.test(a)?a:a.replace(/[A-Z]/g,`-$&`).toLowerCase(),i+=c.p?c.p(a,o):a+`:`+o+`;`)}return n+(t&&i?t+`{`+i+`}`:i)+r},l={},u=e=>{if(typeof e==`object`){let t=``;for(let n in e)t+=n+u(e[n]);return t}return e},d=(e,t,n,r,i)=>{let d=u(e),f=l[d]||(l[d]=(e=>{let t=0,n=11;for(;t<e.length;)n=101*n+e.charCodeAt(t++)>>>0;return`go`+n})(d));if(!l[f]){let t=d===e?(e=>{let t,n,r=[{}];for(;t=a.exec(e.replace(o,``));)t[4]?r.shift():t[3]?(n=t[3].replace(s,` `).trim(),r.unshift(r[0][n]=r[0][n]||{})):r[0][t[1]]=t[2].replace(s,` `).trim();return r[0]})(e):e;l[f]=c(i?{[`@keyframes `+f]:t}:t,n?``:`.`+f)}let p=n&&l.g?l.g:null;return n&&(l.g=l[f]),((e,t,n,r)=>{r?t.data=t.data.replace(r,e):t.data.indexOf(e)===-1&&(t.data=n?e+t.data:t.data+e)})(l[f],t,r,p),f},f=(e,t,n)=>e.reduce((e,r,i)=>{let a=t[i];if(a&&a.call){let e=a(n),t=e&&e.props&&e.props.className||/^go/.test(e)&&e;a=t?`.`+t:e&&typeof e==`object`?e.props?``:c(e,``):!1===e?``:e}return e+r+(a??``)},``);function p(e){let t=this||{},n=e.call?e(t.p):e;return d(n.unshift?n.raw?f(n,[].slice.call(arguments,1),t.p):n.reduce((e,n)=>Object.assign(e,n&&n.call?n(t.p):n),{}):n,i(t.target),t.g,t.o,t.k)}var m,h,g;p.bind({g:1});var _=p.bind({k:1});function ee(e,t,n,r){c.p=t,m=e,h=n,g=r}function v(e,t){let n=this||{};return function(){let r=arguments;function i(a,o){let s=Object.assign({},a),c=s.className||i.className;n.p=Object.assign({theme:h&&h()},s),n.o=/ *go\d+/.test(c),s.className=p.apply(n,r)+(c?` `+c:``),t&&(s.ref=o);let l=e;return e[0]&&(l=s.as||e,delete s.as),g&&l[0]&&g(s),m(l,s)}return t?t(i):i}}var te=e=>typeof e==`function`,y=(e,t)=>te(e)?e(t):e,b=(()=>{let e=0;return()=>(++e).toString()})(),x=(()=>{let e;return()=>{if(e===void 0&&typeof window<`u`){let t=matchMedia(`(prefers-reduced-motion: reduce)`);e=!t||t.matches}return e}})(),ne=20,S=`default`,C=(e,t)=>{let{toastLimit:n}=e.settings;switch(t.type){case 0:return{...e,toasts:[t.toast,...e.toasts].slice(0,n)};case 1:return{...e,toasts:e.toasts.map(e=>e.id===t.toast.id?{...e,...t.toast}:e)};case 2:let{toast:r}=t;return C(e,{type:+!!e.toasts.find(e=>e.id===r.id),toast:r});case 3:let{toastId:i}=t;return{...e,toasts:e.toasts.map(e=>e.id===i||i===void 0?{...e,dismissed:!0,visible:!1}:e)};case 4:return t.toastId===void 0?{...e,toasts:[]}:{...e,toasts:e.toasts.filter(e=>e.id!==t.toastId)};case 5:return{...e,pausedAt:t.time};case 6:let a=t.time-(e.pausedAt||0);return{...e,pausedAt:void 0,toasts:e.toasts.map(e=>({...e,pauseDuration:e.pauseDuration+a}))}}},w=[],T={toasts:[],pausedAt:void 0,settings:{toastLimit:ne}},E={},D=(e,t=S)=>{E[t]=C(E[t]||T,e),w.forEach(([e,n])=>{e===t&&n(E[t])})},O=e=>Object.keys(E).forEach(t=>D(e,t)),re=e=>Object.keys(E).find(t=>E[t].toasts.some(t=>t.id===e)),k=(e=S)=>t=>{D(t,e)},ie={blank:4e3,error:4e3,success:2e3,loading:1/0,custom:4e3},ae=(e={},t=S)=>{let[r,i]=(0,n.useState)(E[t]||T),a=(0,n.useRef)(E[t]);(0,n.useEffect)(()=>(a.current!==E[t]&&i(E[t]),w.push([t,i]),()=>{let e=w.findIndex(([e])=>e===t);e>-1&&w.splice(e,1)}),[t]);let o=r.toasts.map(t=>({...e,...e[t.type],...t,removeDelay:t.removeDelay||e[t.type]?.removeDelay||e?.removeDelay,duration:t.duration||e[t.type]?.duration||e?.duration||ie[t.type],style:{...e.style,...e[t.type]?.style,...t.style}}));return{...r,toasts:o}},oe=(e,t=`blank`,n)=>({createdAt:Date.now(),visible:!0,dismissed:!1,type:t,ariaProps:{role:`status`,"aria-live":`polite`},message:e,pauseDuration:0,...n,id:n?.id||b()}),A=e=>(t,n)=>{let r=oe(t,e,n);return k(r.toasterId||re(r.id))({type:2,toast:r}),r.id},j=(e,t)=>A(`blank`)(e,t);j.error=A(`error`),j.success=A(`success`),j.loading=A(`loading`),j.custom=A(`custom`),j.dismiss=(e,t)=>{let n={type:3,toastId:e};t?k(t)(n):O(n)},j.dismissAll=e=>j.dismiss(void 0,e),j.remove=(e,t)=>{let n={type:4,toastId:e};t?k(t)(n):O(n)},j.removeAll=e=>j.remove(void 0,e),j.promise=(e,t,n)=>{let r=j.loading(t.loading,{...n,...n?.loading});return typeof e==`function`&&(e=e()),e.then(e=>{let i=t.success?y(t.success,e):void 0;return i?j.success(i,{id:r,...n,...n?.success}):j.dismiss(r),e}).catch(e=>{let i=t.error?y(t.error,e):void 0;i?j.error(i,{id:r,...n,...n?.error}):j.dismiss(r)}),e};var M=1e3,N=(e,t=`default`)=>{let{toasts:r,pausedAt:i}=ae(e,t),a=(0,n.useRef)(new Map).current,o=(0,n.useCallback)((e,t=M)=>{if(a.has(e))return;let n=setTimeout(()=>{a.delete(e),s({type:4,toastId:e})},t);a.set(e,n)},[]);(0,n.useEffect)(()=>{if(i)return;let e=Date.now(),n=r.map(n=>{if(n.duration===1/0)return;let r=(n.duration||0)+n.pauseDuration-(e-n.createdAt);if(r<0){n.visible&&j.dismiss(n.id);return}return setTimeout(()=>j.dismiss(n.id,t),r)});return()=>{n.forEach(e=>e&&clearTimeout(e))}},[r,i,t]);let s=(0,n.useCallback)(k(t),[t]),c=(0,n.useCallback)(()=>{s({type:5,time:Date.now()})},[s]),l=(0,n.useCallback)((e,t)=>{s({type:1,toast:{id:e,height:t}})},[s]),u=(0,n.useCallback)(()=>{i&&s({type:6,time:Date.now()})},[i,s]),d=(0,n.useCallback)((e,t)=>{let{reverseOrder:n=!1,gutter:i=8,defaultPosition:a}=t||{},o=r.filter(t=>(t.position||a)===(e.position||a)&&t.height),s=o.findIndex(t=>t.id===e.id),c=o.filter((e,t)=>t<s&&e.visible).length;return o.filter(e=>e.visible).slice(...n?[c+1]:[0,c]).reduce((e,t)=>e+(t.height||0)+i,0)},[r]);return(0,n.useEffect)(()=>{r.forEach(e=>{if(e.dismissed)o(e.id,e.removeDelay);else{let t=a.get(e.id);t&&(clearTimeout(t),a.delete(e.id))}})},[r,o]),{toasts:r,handlers:{updateHeight:l,startPause:c,endPause:u,calculateOffset:d}}},P=_`
2
+ from {
3
+ transform: scale(0) rotate(45deg);
4
+ opacity: 0;
5
+ }
6
+ to {
7
+ transform: scale(1) rotate(45deg);
8
+ opacity: 1;
9
+ }`,F=_`
10
+ from {
11
+ transform: scale(0);
12
+ opacity: 0;
13
+ }
14
+ to {
15
+ transform: scale(1);
16
+ opacity: 1;
17
+ }`,I=_`
18
+ from {
19
+ transform: scale(0) rotate(90deg);
20
+ opacity: 0;
21
+ }
22
+ to {
23
+ transform: scale(1) rotate(90deg);
24
+ opacity: 1;
25
+ }`,L=v(`div`)`
26
+ width: 20px;
27
+ opacity: 0;
28
+ height: 20px;
29
+ border-radius: 10px;
30
+ background: ${e=>e.primary||`#ff4b4b`};
31
+ position: relative;
32
+ transform: rotate(45deg);
33
+
34
+ animation: ${P} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)
35
+ forwards;
36
+ animation-delay: 100ms;
37
+
38
+ &:after,
39
+ &:before {
40
+ content: '';
41
+ animation: ${F} 0.15s ease-out forwards;
42
+ animation-delay: 150ms;
43
+ position: absolute;
44
+ border-radius: 3px;
45
+ opacity: 0;
46
+ background: ${e=>e.secondary||`#fff`};
47
+ bottom: 9px;
48
+ left: 4px;
49
+ height: 2px;
50
+ width: 12px;
51
+ }
52
+
53
+ &:before {
54
+ animation: ${I} 0.15s ease-out forwards;
55
+ animation-delay: 180ms;
56
+ transform: rotate(90deg);
57
+ }
58
+ `,R=_`
59
+ from {
60
+ transform: rotate(0deg);
61
+ }
62
+ to {
63
+ transform: rotate(360deg);
64
+ }
65
+ `,z=v(`div`)`
66
+ width: 12px;
67
+ height: 12px;
68
+ box-sizing: border-box;
69
+ border: 2px solid;
70
+ border-radius: 100%;
71
+ border-color: ${e=>e.secondary||`#e0e0e0`};
72
+ border-right-color: ${e=>e.primary||`#616161`};
73
+ animation: ${R} 1s linear infinite;
74
+ `,B=_`
75
+ from {
76
+ transform: scale(0) rotate(45deg);
77
+ opacity: 0;
78
+ }
79
+ to {
80
+ transform: scale(1) rotate(45deg);
81
+ opacity: 1;
82
+ }`,V=_`
83
+ 0% {
84
+ height: 0;
85
+ width: 0;
86
+ opacity: 0;
87
+ }
88
+ 40% {
89
+ height: 0;
90
+ width: 6px;
91
+ opacity: 1;
92
+ }
93
+ 100% {
94
+ opacity: 1;
95
+ height: 10px;
96
+ }`,H=v(`div`)`
97
+ width: 20px;
98
+ opacity: 0;
99
+ height: 20px;
100
+ border-radius: 10px;
101
+ background: ${e=>e.primary||`#61d345`};
102
+ position: relative;
103
+ transform: rotate(45deg);
104
+
105
+ animation: ${B} 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275)
106
+ forwards;
107
+ animation-delay: 100ms;
108
+ &:after {
109
+ content: '';
110
+ box-sizing: border-box;
111
+ animation: ${V} 0.2s ease-out forwards;
112
+ opacity: 0;
113
+ animation-delay: 200ms;
114
+ position: absolute;
115
+ border-right: 2px solid;
116
+ border-bottom: 2px solid;
117
+ border-color: ${e=>e.secondary||`#fff`};
118
+ bottom: 6px;
119
+ left: 6px;
120
+ height: 10px;
121
+ width: 6px;
122
+ }
123
+ `,U=v(`div`)`
124
+ position: absolute;
125
+ `,W=v(`div`)`
126
+ position: relative;
127
+ display: flex;
128
+ justify-content: center;
129
+ align-items: center;
130
+ min-width: 20px;
131
+ min-height: 20px;
132
+ `,G=_`
133
+ from {
134
+ transform: scale(0.6);
135
+ opacity: 0.4;
136
+ }
137
+ to {
138
+ transform: scale(1);
139
+ opacity: 1;
140
+ }`,K=v(`div`)`
141
+ position: relative;
142
+ transform: scale(0.6);
143
+ opacity: 0.4;
144
+ min-width: 20px;
145
+ animation: ${G} 0.3s 0.12s cubic-bezier(0.175, 0.885, 0.32, 1.275)
146
+ forwards;
147
+ `,q=({toast:e})=>{let{icon:t,type:r,iconTheme:i}=e;return t===void 0?r===`blank`?null:n.createElement(W,null,n.createElement(z,{...i}),r!==`loading`&&n.createElement(U,null,r===`error`?n.createElement(L,{...i}):n.createElement(H,{...i}))):typeof t==`string`?n.createElement(K,null,t):t},se=e=>`
148
+ 0% {transform: translate3d(0,${e*-200}%,0) scale(.6); opacity:.5;}
149
+ 100% {transform: translate3d(0,0,0) scale(1); opacity:1;}
150
+ `,ce=e=>`
151
+ 0% {transform: translate3d(0,0,-1px) scale(1); opacity:1;}
152
+ 100% {transform: translate3d(0,${e*-150}%,-1px) scale(.6); opacity:0;}
153
+ `,le=`0%{opacity:0;} 100%{opacity:1;}`,ue=`0%{opacity:1;} 100%{opacity:0;}`,de=v(`div`)`
154
+ display: flex;
155
+ align-items: center;
156
+ background: #fff;
157
+ color: #363636;
158
+ line-height: 1.3;
159
+ will-change: transform;
160
+ box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), 0 3px 3px rgba(0, 0, 0, 0.05);
161
+ max-width: 350px;
162
+ pointer-events: auto;
163
+ padding: 8px 10px;
164
+ border-radius: 8px;
165
+ `,fe=v(`div`)`
166
+ display: flex;
167
+ justify-content: center;
168
+ margin: 4px 10px;
169
+ color: inherit;
170
+ flex: 1 1 auto;
171
+ white-space: pre-line;
172
+ `,pe=(e,t)=>{let n=e.includes(`top`)?1:-1,[r,i]=x()?[le,ue]:[se(n),ce(n)];return{animation:t?`${_(r)} 0.35s cubic-bezier(.21,1.02,.73,1) forwards`:`${_(i)} 0.4s forwards cubic-bezier(.06,.71,.55,1)`}},me=n.memo(({toast:e,position:t,style:r,children:i})=>{let a=e.height?pe(e.position||t||`top-center`,e.visible):{opacity:0},o=n.createElement(q,{toast:e}),s=n.createElement(fe,{...e.ariaProps},y(e.message,e));return n.createElement(de,{className:e.className,style:{...a,...r,...e.style}},typeof i==`function`?i({icon:o,message:s}):n.createElement(n.Fragment,null,o,s))});ee(n.createElement);var he=({id:e,className:t,style:r,onHeightUpdate:i,children:a})=>{let o=n.useCallback(t=>{if(t){let n=()=>{let n=t.getBoundingClientRect().height;i(e,n)};n(),new MutationObserver(n).observe(t,{subtree:!0,childList:!0,characterData:!0})}},[e,i]);return n.createElement(`div`,{ref:o,className:t,style:r},a)},ge=(e,t)=>{let n=e.includes(`top`),r=n?{top:0}:{bottom:0},i=e.includes(`center`)?{justifyContent:`center`}:e.includes(`right`)?{justifyContent:`flex-end`}:{};return{left:0,right:0,display:`flex`,position:`absolute`,transition:x()?void 0:`all 230ms cubic-bezier(.21,1.02,.73,1)`,transform:`translateY(${t*(n?1:-1)}px)`,...r,...i}},_e=p`
173
+ z-index: 9999;
174
+ > * {
175
+ pointer-events: auto;
176
+ }
177
+ `,J=16,ve=({reverseOrder:e,position:t=`top-center`,toastOptions:r,gutter:i,children:a,toasterId:o,containerStyle:s,containerClassName:c})=>{let{toasts:l,handlers:u}=N(r,o);return n.createElement(`div`,{"data-rht-toaster":o||``,style:{position:`fixed`,zIndex:9999,top:J,left:J,right:J,bottom:J,pointerEvents:`none`,...s},className:c,onMouseEnter:u.startPause,onMouseLeave:u.endPause},l.map(r=>{let o=r.position||t,s=ge(o,u.calculateOffset(r,{reverseOrder:e,gutter:i,defaultPosition:t}));return n.createElement(he,{id:r.id,key:r.id,onHeightUpdate:u.updateHeight,className:r.visible?_e:``,style:s},r.type===`custom`?y(r.message,r):a?a(r):n.createElement(me,{toast:r,position:o}))}))},ye=j,Y=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),be=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),xe=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),X=e=>{let t=xe(e);return t.charAt(0).toUpperCase()+t.slice(1)},Z={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},Se=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Ce=(0,n.createContext)({}),we=()=>(0,n.useContext)(Ce),Te=(0,n.forwardRef)(({color:e,size:t,strokeWidth:r,absoluteStrokeWidth:i,className:a=``,children:o,iconNode:s,...c},l)=>{let{size:u=24,strokeWidth:d=2,absoluteStrokeWidth:f=!1,color:p=`currentColor`,className:m=``}=we()??{},h=i??f?Number(r??d)*24/Number(t??u):r??d;return(0,n.createElement)(`svg`,{ref:l,...Z,width:t??u??Z.width,height:t??u??Z.height,stroke:e??p,strokeWidth:h,className:Y(`lucide`,m,a),...!o&&!Se(c)&&{"aria-hidden":`true`},...c},[...s.map(([e,t])=>(0,n.createElement)(e,t)),...Array.isArray(o)?o:[o]])}),Q=(e,t)=>{let r=(0,n.forwardRef)(({className:r,...i},a)=>(0,n.createElement)(Te,{ref:a,iconNode:t,className:Y(`lucide-${be(X(e))}`,`lucide-${e}`,r),...i}));return r.displayName=X(e),r},Ee=Q(`code-xml`,[[`path`,{d:`m18 16 4-4-4-4`,key:`1inbqp`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}],[`path`,{d:`m14.5 4-5 16`,key:`e7oirm`}]]),De=Q(`ellipsis`,[[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}],[`circle`,{cx:`19`,cy:`12`,r:`1`,key:`1wjl8i`}],[`circle`,{cx:`5`,cy:`12`,r:`1`,key:`1pcz8c`}]]),Oe=Q(`funnel`,[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`,key:`sc7q7i`}]]),ke=Q(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),Ae=Q(`layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),je=Q(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),Me=Q(`pen-line`,[[`path`,{d:`M13 21h8`,key:`1jsn5i`}],[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}]]),Ne=Q(`sliders-vertical`,[[`path`,{d:`M10 8h4`,key:`1sr2af`}],[`path`,{d:`M12 21v-9`,key:`17s77i`}],[`path`,{d:`M12 8V3`,key:`13r4qs`}],[`path`,{d:`M17 16h4`,key:`h1uq16`}],[`path`,{d:`M19 12V3`,key:`o1uvq1`}],[`path`,{d:`M19 21v-5`,key:`qua636`}],[`path`,{d:`M3 14h4`,key:`bcjad9`}],[`path`,{d:`M5 10V3`,key:`cb8scm`}],[`path`,{d:`M5 21v-7`,key:`1w1uti`}]]),Pe=Q(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),Fe=Q(`square-pen`,[[`path`,{d:`M12 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7`,key:`1m0v6g`}],[`path`,{d:`M18.375 2.625a1 1 0 0 1 3 3l-9.013 9.014a2 2 0 0 1-.853.505l-2.873.84a.5.5 0 0 1-.62-.62l.84-2.873a2 2 0 0 1 .506-.852z`,key:`ohrbg2`}]]),Ie=Q(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Le=Q(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),Re=Q(`archive`,[[`rect`,{width:`20`,height:`5`,x:`2`,y:`3`,rx:`1`,key:`1wp1u1`}],[`path`,{d:`M4 8v11a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8`,key:`1s80jp`}],[`path`,{d:`M10 12h4`,key:`a56b0p`}]]),ze=Q(`arrow-down`,[[`path`,{d:`M12 5v14`,key:`s699le`}],[`path`,{d:`m19 12-7 7-7-7`,key:`1idqje`}]]),Be=Q(`arrow-right`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),Ve=Q(`book-open`,[[`path`,{d:`M12 7v14`,key:`1akyts`}],[`path`,{d:`M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z`,key:`ruj8y`}]]),He=Q(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),Ue=Q(`brain`,[[`path`,{d:`M12 18V5`,key:`adv99a`}],[`path`,{d:`M15 13a4.17 4.17 0 0 1-3-4 4.17 4.17 0 0 1-3 4`,key:`1e3is1`}],[`path`,{d:`M17.598 6.5A3 3 0 1 0 12 5a3 3 0 1 0-5.598 1.5`,key:`1gqd8o`}],[`path`,{d:`M17.997 5.125a4 4 0 0 1 2.526 5.77`,key:`iwvgf7`}],[`path`,{d:`M18 18a4 4 0 0 0 2-7.464`,key:`efp6ie`}],[`path`,{d:`M19.967 17.483A4 4 0 1 1 12 18a4 4 0 1 1-7.967-.517`,key:`1gq6am`}],[`path`,{d:`M6 18a4 4 0 0 1-2-7.464`,key:`k1g0md`}],[`path`,{d:`M6.003 5.125a4 4 0 0 0-2.526 5.77`,key:`q97ue3`}]]),We=Q(`calendar-clock`,[[`path`,{d:`M16 14v2.2l1.6 1`,key:`fo4ql5`}],[`path`,{d:`M16 2v4`,key:`4m81vk`}],[`path`,{d:`M21 7.5V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h3.5`,key:`1osxxc`}],[`path`,{d:`M3 10h5`,key:`r794hk`}],[`path`,{d:`M8 2v4`,key:`1cmpym`}],[`circle`,{cx:`16`,cy:`16`,r:`6`,key:`qoo3c4`}]]),Ge=Q(`camera`,[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`,key:`18u6gg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),Ke=Q(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),qe=Q(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),Je=Q(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),Ye=Q(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),Xe=Q(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),Ze=Q(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),Qe=Q(`cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]),$e=Q(`code`,[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]),et=Q(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),tt=Q(`cpu`,[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]),nt=Q(`database`,[[`ellipse`,{cx:`12`,cy:`5`,rx:`9`,ry:`3`,key:`msslwz`}],[`path`,{d:`M3 5V19A9 3 0 0 0 21 19V5`,key:`1wlel7`}],[`path`,{d:`M3 12A9 3 0 0 0 21 12`,key:`mv7ke4`}]]),rt=Q(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),it=Q(`external-link`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`M10 14 21 3`,key:`gplh6r`}],[`path`,{d:`M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6`,key:`a6xqqp`}]]),at=Q(`eye-off`,[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),ot=Q(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),st=Q(`file-code`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 12.5 8 15l2 2.5`,key:`1tg20x`}],[`path`,{d:`m14 12.5 2 2.5-2 2.5`,key:`yinavb`}]]),ct=Q(`file-down`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M12 18v-6`,key:`17g6i2`}],[`path`,{d:`m9 15 3 3 3-3`,key:`1npd3o`}]]),lt=Q(`file-text`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),ut=Q(`file`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}]]),dt=Q(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]),ft=Q(`ghost`,[[`path`,{d:`M9 10h.01`,key:`qbtxuw`}],[`path`,{d:`M15 10h.01`,key:`1qmjsl`}],[`path`,{d:`M12 2a8 8 0 0 0-8 8v12l3-3 2.5 2.5L12 19l2.5 2.5L17 19l3 3V10a8 8 0 0 0-8-8z`,key:`uwwb07`}]]),pt=Q(`git-branch`,[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`,key:`1cii5b`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}]]),mt=Q(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),ht=Q(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),gt=Q(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),_t=Q(`hard-drive`,[[`path`,{d:`M10 16h.01`,key:`1bzywj`}],[`path`,{d:`M2.212 11.577a2 2 0 0 0-.212.896V18a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-5.527a2 2 0 0 0-.212-.896L18.55 5.11A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z`,key:`18tbho`}],[`path`,{d:`M21.946 12.013H2.054`,key:`zqlbp7`}],[`path`,{d:`M6 16h.01`,key:`1pmjb7`}]]),vt=Q(`hash`,[[`line`,{x1:`4`,x2:`20`,y1:`9`,y2:`9`,key:`4lhtct`}],[`line`,{x1:`4`,x2:`20`,y1:`15`,y2:`15`,key:`vyu0kd`}],[`line`,{x1:`10`,x2:`8`,y1:`3`,y2:`21`,key:`1ggp8o`}],[`line`,{x1:`16`,x2:`14`,y1:`3`,y2:`21`,key:`weycgp`}]]),yt=Q(`heart`,[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`,key:`mvr1a0`}]]),bt=Q(`image-off`,[[`line`,{x1:`2`,x2:`22`,y1:`2`,y2:`22`,key:`a6p6uj`}],[`path`,{d:`M10.41 10.41a2 2 0 1 1-2.83-2.83`,key:`1bzlo9`}],[`line`,{x1:`13.5`,x2:`6`,y1:`13.5`,y2:`21`,key:`1q0aeu`}],[`line`,{x1:`18`,x2:`21`,y1:`12`,y2:`15`,key:`5mozeu`}],[`path`,{d:`M3.59 3.59A1.99 1.99 0 0 0 3 5v14a2 2 0 0 0 2 2h14c.55 0 1.052-.22 1.41-.59`,key:`mmje98`}],[`path`,{d:`M21 15V5a2 2 0 0 0-2-2H9`,key:`43el77`}]]),xt=Q(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),St=Q(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Ct=Q(`key`,[[`path`,{d:`m15.5 7.5 2.3 2.3a1 1 0 0 0 1.4 0l2.1-2.1a1 1 0 0 0 0-1.4L19 4`,key:`g0fldk`}],[`path`,{d:`m21 2-9.6 9.6`,key:`1j0ho8`}],[`circle`,{cx:`7.5`,cy:`15.5`,r:`5.5`,key:`yqb3hr`}]]),wt=Q(`keyboard`,[[`path`,{d:`M10 8h.01`,key:`1r9ogq`}],[`path`,{d:`M12 12h.01`,key:`1mp3jc`}],[`path`,{d:`M14 8h.01`,key:`1primd`}],[`path`,{d:`M16 12h.01`,key:`1l6xoz`}],[`path`,{d:`M18 8h.01`,key:`emo2bl`}],[`path`,{d:`M6 8h.01`,key:`x9i8wu`}],[`path`,{d:`M7 16h10`,key:`wp8him`}],[`path`,{d:`M8 12h.01`,key:`czm47f`}],[`rect`,{width:`20`,height:`16`,x:`2`,y:`4`,rx:`2`,key:`18n3k1`}]]),Tt=Q(`loader`,[[`path`,{d:`M12 2v4`,key:`3427ic`}],[`path`,{d:`m16.2 7.8 2.9-2.9`,key:`r700ao`}],[`path`,{d:`M18 12h4`,key:`wj9ykh`}],[`path`,{d:`m16.2 16.2 2.9 2.9`,key:`1bxg5t`}],[`path`,{d:`M12 18v4`,key:`jadmvz`}],[`path`,{d:`m4.9 19.1 2.9-2.9`,key:`bwix9q`}],[`path`,{d:`M2 12h4`,key:`j09sii`}],[`path`,{d:`m4.9 4.9 2.9 2.9`,key:`giyufr`}]]),Et=Q(`log-in`,[[`path`,{d:`m10 17 5-5-5-5`,key:`1bsop3`}],[`path`,{d:`M15 12H3`,key:`6jk70r`}],[`path`,{d:`M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4`,key:`u53s6r`}]]),Dt=Q(`log-out`,[[`path`,{d:`m16 17 5-5-5-5`,key:`1bji2h`}],[`path`,{d:`M21 12H9`,key:`dn1m92`}],[`path`,{d:`M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4`,key:`1uf3rs`}]]),Ot=Q(`maximize-2`,[[`path`,{d:`M15 3h6v6`,key:`1q9fwt`}],[`path`,{d:`m21 3-7 7`,key:`1l2asr`}],[`path`,{d:`m3 21 7-7`,key:`tjx5ai`}],[`path`,{d:`M9 21H3v-6`,key:`wtvkvv`}]]),kt=Q(`memory-stick`,[[`path`,{d:`M12 12v-2`,key:`fwoke6`}],[`path`,{d:`M12 18v-2`,key:`qj6yno`}],[`path`,{d:`M16 12v-2`,key:`heuere`}],[`path`,{d:`M16 18v-2`,key:`s1ct0w`}],[`path`,{d:`M2 11h1.5`,key:`15p63e`}],[`path`,{d:`M20 18v-2`,key:`12ehxp`}],[`path`,{d:`M20.5 11H22`,key:`khsy7a`}],[`path`,{d:`M4 18v-2`,key:`1c3oqr`}],[`path`,{d:`M8 12v-2`,key:`1mwtfd`}],[`path`,{d:`M8 18v-2`,key:`qcmpov`}],[`rect`,{x:`2`,y:`6`,width:`20`,height:`10`,rx:`2`,key:`1qcswk`}]]),At=Q(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),jt=Q(`minus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}]]),Mt=Q(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),Nt=Q(`palette`,[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`,key:`e79jfc`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`,key:`1okk4w`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`,key:`f64h9f`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`,key:`qy21gx`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`fotxhn`}]]),Pt=Q(`paperclip`,[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]),Ft=Q(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),It=Q(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),Lt=Q(`plus`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]),Rt=Q(`puzzle`,[[`path`,{d:`M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z`,key:`w46dr5`}]]),zt=Q(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),Bt=Q(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),Vt=Q(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),Ht=Q(`search`,[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]),Ut=Q(`send`,[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]),Wt=Q(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),Gt=Q(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),Kt=Q(`settings-2`,[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]),qt=Q(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),$=Q(`shield`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}]]),Jt=Q(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),Yt=Q(`star`,[[`path`,{d:`M11.525 2.295a.53.53 0 0 1 .95 0l2.31 4.679a2.123 2.123 0 0 0 1.595 1.16l5.166.756a.53.53 0 0 1 .294.904l-3.736 3.638a2.123 2.123 0 0 0-.611 1.878l.882 5.14a.53.53 0 0 1-.771.56l-4.618-2.428a2.122 2.122 0 0 0-1.973 0L6.396 21.01a.53.53 0 0 1-.77-.56l.881-5.139a2.122 2.122 0 0 0-.611-1.879L2.16 9.795a.53.53 0 0 1 .294-.906l5.165-.755a2.122 2.122 0 0 0 1.597-1.16z`,key:`r04s7s`}]]),Xt=Q(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),Zt=Q(`terminal`,[[`path`,{d:`M12 19h8`,key:`baeox8`}],[`path`,{d:`m4 17 6-6-6-6`,key:`1yngyt`}]]),Qt=Q(`test-tube`,[[`path`,{d:`M14.5 2v17.5c0 1.4-1.1 2.5-2.5 2.5c-1.4 0-2.5-1.1-2.5-2.5V2`,key:`125lnx`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}],[`path`,{d:`M14.5 16h-5`,key:`1ox875`}]]),$t=Q(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),en=Q(`trending-up`,[[`path`,{d:`M16 7h6v6`,key:`box55l`}],[`path`,{d:`m22 7-8.5 8.5-5-5L2 17`,key:`1t1m79`}]]),tn=Q(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),nn=Q(`user-plus`,[[`path`,{d:`M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2`,key:`1yyitq`}],[`circle`,{cx:`9`,cy:`7`,r:`4`,key:`nufk8`}],[`line`,{x1:`19`,x2:`19`,y1:`8`,y2:`14`,key:`1bvyxn`}],[`line`,{x1:`22`,x2:`16`,y1:`11`,y2:`11`,key:`1shjgl`}]]),rn=Q(`user`,[[`path`,{d:`M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2`,key:`975kel`}],[`circle`,{cx:`12`,cy:`7`,r:`4`,key:`17ys0d`}]]),an=Q(`volume-2`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}],[`path`,{d:`M19.364 18.364a9 9 0 0 0 0-12.728`,key:`ijwkga`}]]),on=Q(`volume-x`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`line`,{x1:`22`,x2:`16`,y1:`9`,y2:`15`,key:`1ewh16`}],[`line`,{x1:`16`,x2:`22`,y1:`9`,y2:`15`,key:`5ykzw1`}]]),sn=Q(`wrench`,[[`path`,{d:`M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z`,key:`1ngwbx`}]]),cn=Q(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),ln=Q(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]);export{dt as $,Pt as A,Pe as At,wt as B,j as Bt,Vt as C,Ve as Ct,Lt as D,Le as Dt,Rt as E,Re as Et,kt as F,ke as Ft,yt as G,St as H,Ot as I,Oe as It,gt as J,vt as K,Dt as L,De as Lt,Mt as M,Me as Mt,jt as N,je as Nt,It as O,Ie as Ot,At as P,Ae as Pt,ft as Q,Et as R,Ee as Rt,Ht as S,He as St,zt as T,ze as Tt,xt as U,Ct as V,ye as Vt,bt as W,mt as X,ht as Y,pt as Z,qt as _,qe as _t,an as a,at,Wt as b,We as bt,tn as c,nt as ct,Qt as d,$e as dt,ut as et,Zt as f,Qe as ft,$ as g,Je as gt,Jt as h,Ye as ht,on as i,ot as it,Nt as j,Ne as jt,Ft as k,Fe as kt,en as l,tt as lt,Yt as m,Xe as mt,cn as n,ct as nt,rn as o,it as ot,Xt as p,Ze as pt,_t as q,sn as r,st as rt,nn as s,rt as st,ln as t,lt as tt,$t as u,et as ut,Kt as v,Ke as vt,Bt as w,Be as wt,Ut as x,Ue as xt,Gt as y,Ge as yt,Tt as z,ve as zt};
@@ -1,2 +1,2 @@
1
- var e={common:{loading:`Завантаження...`,save:`Зберегти`,saving:`Збереження...`,cancel:`Скасувати`,delete:`Видалити`,edit:`Редагувати`,close:`Закрити`,back:`Назад`,next:`Далі`,confirm:`Підтвердити`,error:`Помилка`,success:`Успіх`,warning:`Попередження`,or:`або`,optional:`необов'язково`,enabled:`Увімкнено`,disabled:`Вимкнено`,on:`Увімк.`,off:`Вимк.`,yes:`Так`,no:`Ні`,search:`Пошук`,noResults:`Результатів не знайдено`,retry:`Повторити`,refresh:`Оновити`,download:`Завантажити`,upload:`Вивантажити`,export:`Експорт`,import:`Імпорт`,reset:`Скинути`,apply:`Застосувати`,clear:`Очистити`,all:`Усі`,none:`Жодного`,default:`За замовчуванням`,custom:`Власний`,remove:`Видалити`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`З поверненням`,subtitle:`Увійдіть до свого облікового запису, щоб продовжити`,username:`Ім'я користувача`,usernamePlaceholder:`Введіть ім'я користувача`,password:`Пароль`,passwordPlaceholder:`Введіть пароль`,signIn:`Увійти`,signingIn:`Вхід...`,noAccount:`Немає облікового запису?`,signUpHere:`Зареєструйтеся тут`,loginSuccess:`Вхід успішний!`,loginFailed:`Помилка входу`,checkCredentials:`Помилка входу. Перевірте свої облікові дані.`,enterBoth:`Введіть ім'я користувача та пароль`,githubSuccess:`Вхід через GitHub успішний!`,githubFailed:`Помилка автентифікації GitHub`,githubVerifyFailed:`Не вдалося перевірити автентифікацію GitHub`},signup:{title:`Створити обліковий запис`,subtitle:`Зареєструйте новий обліковий запис`,username:`Ім'я користувача`,usernamePlaceholder:`Виберіть ім'я користувача`,email:`Електронна пошта`,emailPlaceholder:`ваша@пошта.com`,password:`Пароль`,passwordPlaceholder:`Виберіть пароль`,confirmPassword:`Підтвердіть пароль`,confirmPasswordPlaceholder:`Підтвердіть пароль`,createAccount:`Створити обліковий запис`,creatingAccount:`Створення облікового запису...`,hasAccount:`Вже є обліковий запис?`,signInHere:`Увійдіть тут`,signupSuccess:`Обліковий запис успішно створено!`,signupFailed:`Помилка реєстрації`,tryAgain:`Помилка реєстрації. Спробуйте ще раз.`,usernameRequired:`Ім'я користувача та пароль обов'язкові`,passwordMismatch:`Паролі не збігаються`,passwordTooShort:`Пароль має містити щонайменше 6 символів`},logout:{button:`Вийти`,success:`Ви успішно вийшли`},oauth:{continueWith:`Продовжити з {{provider}}`,connectingTo:`Підключення до {{provider}}...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`Перевірка автентифікації...`,welcome:`Ласкаво просимо`,noEmail:`Email не вказано`,role:`Роль`,id:`ID`,userId:`ID користувача`,signInDescription:`Увійдіть за допомогою облікового запису GitHub, щоб продовжити`,signInWithGitHub:`Увійти через GitHub`,jwtActive:`JWT-автентифікація активна`,jwtDescription:`JWT-автентифікація з GitHub OAuth`,github:`GitHub`,provider:`Провайдер`},setup:{welcome:{title:`Ласкаво просимо до Libre WebUI`,subtitle:`Почнімо`,description:`Налаштуйте Libre WebUI за кілька простих кроків`,createAdmin:`Створити обліковий запис адміністратора`,features:{secure:{title:`Безпечний і приватний`,description:`Ваші розмови залишаються на вашому пристрої`},fast:{title:`Швидкий і чутливий`,description:`Оптимізовано для швидкості та продуктивності`},openSource:{title:`Відкритий код`,description:`Безкоштовне програмне забезпечення з відкритим кодом`}}},admin:{title:`Створити обліковий запис адміністратора`,subtitle:`Налаштування адміністратора`,description:`Створіть перший обліковий запис адміністратора для вашого екземпляра Libre WebUI`,usernamePlaceholder:`Введіть ім'я адміністратора`,passwordPlaceholder:`Введіть пароль (мін. 6 символів)`,confirmPlaceholder:`Підтвердіть пароль`,creating:`Створення...`,createAdmin:`Створити адміністратора`,success:`Обліковий запис адміністратора успішно створено!`,failed:`Не вдалося створити обліковий запис адміністратора`,fillAllFields:`Заповніть усі поля`,note:`Це буде основний обліковий запис адміністратора для вашого екземпляра Libre WebUI`},encryptionKey:{title:`Збережіть ключ шифрування`,subtitle:`Важливо: збережіть цей ключ`,description:`Цей ключ шифрування захищає ваші конфіденційні дані. Зберігайте його надійно - він знадобиться для відновлення бази даних.`,warning:`Попередження`,warningText:`Якщо ви втратите цей ключ і вам потрібно буде відновити базу даних, ваші зашифровані дані (API-ключі, налаштування) будуть безповоротно втрачені.`,label:`Ваш ключ шифрування`,loading:`Завантаження...`,copyToClipboard:`Копіювати в буфер обміну`,copied:`Ключ шифрування скопійовано!`,copyFailed:`Не вдалося скопіювати ключ`,envNote:`Цей ключ також збережено у файлі backend/.env як ENCRYPTION_KEY`,acknowledgment:`Я зберіг ключ шифрування в надійному місці та розумію, що його втрата може призвести до втрати даних.`,confirmRequired:`Підтвердіть, що ви зберегли ключ шифрування`,continue:`Продовжити до Libre WebUI`}},chat:{greeting:{morning:`Доброго ранку`,afternoon:`Доброго дня`,evening:`Доброго вечора`,night:`Доброї ночі`},welcome:{helpToday:`Чим можу допомогти сьогодні?`,helpTonight:`Чим можу допомогти сьогодні ввечері?`},input:{placeholder:`Надіслати повідомлення`,messagePlaceholder:`Повідомлення...`,attachImages:`Прикріпити зображення`,attachments:`Вкладення та розширені функції`,sendMessage:`Надіслати повідомлення`,stopGeneration:`Зупинити генерацію`},session:{new:`Новий чат`,private:`Приватний`,privateMode:`Приватний режим`,privateDescription:`Ця розмова не буде збережена`,privateTooltip:`Почати приватну розмову, яка не буде збережена`,deleteConfirm:`Ви впевнені, що хочете видалити цей чат?`,generatingTitle:`Генерація заголовка`,noChats:`Чатів ще немає`,createFirst:`Створіть свій перший чат вище`,chats:`Чати`,renameChat:`Перейменувати чат`,deleteChat:`Видалити чат`},persona:{applied:`Персону застосовано`,label:`Персона`},model:{updated:`Модель оновлено`,noModels:`Моделі недоступні`,noModelsDescription:`Моделі недоступні. Переконайтеся, що Ollama працює та моделі встановлені.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`Моделі недоступні. Переконайтеся, що Ollama працює та моделі встановлені.`},footer:{disclaimer:`LLM може помилятися - перевіряйте важливу інформацію`,images:`{{count}} зображення`,images_plural:`{{count}} зображень`,structuredOutput:`Структурований вивід`},mediaUpload:{dropImagesHere:`Перетягніть зображення сюди або`,supportedFormats:`Підтримується: JPG, PNG, GIF, WebP (макс. 10 МБ кожне)`,browse:`оберіть`},structuredOutput:{title:`Формат відповіді`,none:`Без формату (природна мова)`,noneDescription:`Стандартна відповідь природною мовою`,json:`JSON`,jsonDescription:`Структурований формат JSON`,list:`Список`,listDescription:`Масив елементів`,summary:`Підсумок`,summaryDescription:`Підсумок документа з ключовими пунктами`,analysis:`Аналіз`,analysisDescription:`Структурований аналіз з перевагами/недоліками`,custom:`Власна схема`,customDescription:`Визначте власну JSON-схему`,customSchema:`Власна JSON-схема`,schemaPreview:`Попередній перегляд схеми`,applySchema:`Застосувати схему`,cancel:`Скасувати`,enabled:`Структурований вивід увімкнено`}},sidebar:{navigation:{chat:`Чат`,models:`Моделі`,personas:`Персони`,imagine:`Генерація`,settings:`Налаштування`,userManagement:`Керування користувачами`,signOut:`Вийти`},toggleSize:`Змінити розмір бічної панелі`,expandSidebar:`Розгорнути бічну панель`},user:{menu:{changePicture:`Змінити зображення`,settings:`Налаштування`,userManagement:`Керування користувачами`,logout:`Вийти`},avatar:{title:`Змінити фото профілю`,updated:`Фото профілю оновлено`,updateFailed:`Не вдалося оновити фото профілю`,saving:`Збереження...`,label:`Аватар`,uploadAvatarImage:`Завантажити зображення аватара`,dragAndDrop:`Перетягніть зображення або натисніть для вибору`,chooseImage:`Вибрати зображення`,uploading:`Завантаження...`,enterImageUrl:`Або введіть URL зображення`,supportedFormats:`Підтримуються: JPG, PNG, GIF, WebP (макс. 2 МБ). Квадратні зображення підходять найкраще.`,customAvatar:`Користувацьке зображення аватара`,clickToChange:`Натисніть, щоб змінити або видалити`,removed:`Аватар видалено`,uploaded:`Аватар успішно завантажено`,invalidFile:`Будь ласка, виберіть дійсний файл зображення`,fileTooLarge:`Розмір зображення аватара має бути менше 2 МБ`,readFailed:`Не вдалося прочитати файл зображення`,uploadFailed:`Не вдалося завантажити зображення аватара`},profile:{noEmail:`Електронна пошта не вказана`}},settings:JSON.parse(`{"title":"Налаштування","tabs":{"appearance":"Зовнішній вигляд","model":"Модель","systemMessage":"Системне повідомлення","plugins":"Плагіни","generation":"Генерація","documents":"Документи","tts":"Текст у мовлення","imageGen":"Генерація зображень","data":"Дані","about":"Про програму"},"appearance":{"title":"Зовнішній вигляд","language":{"title":"Мова","description":"Виберіть бажану мову"},"theme":{"title":"Тема","light":"Світла","dark":"Темна","amoled":"Глибокий чорний","system":"Системна"},"accent":{"title":"Акцентний колір","custom":"Власний колір","useColor":"Використати {{color}} як акцент"},"chatInterface":{"title":"Інтерфейс чату","showUsername":"Показувати ім'я користувача","showUsernameDescription":"Відображати ім'я користувача в повідомленнях чату"},"background":{"title":"Фонове зображення","enable":"Увімкнути фонове зображення","enableDescription":"Показувати власний фон з ефектом розмиття","blur":"Розмиття","opacity":"Прозорість","upload":"Завантажити фонове зображення","dragDrop":"Перетягніть зображення або клацніть для вибору","chooseImage":"Вибрати зображення"}},"saveSettings":"Зберегти налаштування","model":{"title":"Налаштування моделі","defaultModel":"Модель за замовчуванням","defaultModelDescription":"Ця модель буде використовуватися за замовчуванням для нових розмов","selectModel":"Виберіть модель","updateAll":"Оновити всі моделі","updateAllDescription":"Перевірити оновлення та завантажити останні версії всіх встановлених моделей","updateAllButton":"Оновити всі","updating":"Оновлення моделей...","currentModelInfo":"Інформація про поточну модель","name":"Назва","size":"Розмір","family":"Сімейство","format":"Формат","status":"Статус","statusStarting":"Запуск...","statusComplete":"Завершено","statusError":"Помилка","bulkOperations":"Масові операції","autoTitle":{"title":"Автоматична генерація заголовків","enable":"Увімкнути автозаголовки","enableDescription":"Автоматично генерувати заголовки для нових розмов","taskModel":"Модель для завдань","selectTaskModel":"Виберіть модель для завдань","taskModelDescription":"Модель, що використовується для генерації заголовків розмов"},"persona":"Персона","updatingModel":"Оновлення {{name}} ({{current}}/{{total}})","modelsProgress":"{{current}} з {{total}} моделей","modelPullAccess":"Доступ до встановлення моделей","modelPullAccessDescription":"Дозволити користувачам без прав адміністратора завантажувати та встановлювати нові моделі.","modelPullAccessSaved":"Дозволи на встановлення моделей оновлено","modelPullAccessSaveFailed":"Не вдалося оновити дозволи на встановлення моделей"},"systemMessage":{"title":"Системне повідомлення","description":"Встановіть власне системне повідомлення, яке буде використовуватися для всіх нових розмов.","placeholder":"Введіть системне повідомлення...","saved":"Системне повідомлення збережено","saveFailed":"Не вдалося зберегти системне повідомлення"},"plugins":{"title":"Плагіни","description":"Керуйте встановленими плагінами","addNew":"Додати новий плагін","upload":"Завантажити плагін","addJson":"Додати JSON","uploading":"Завантаження...","jsonPlaceholder":"Вставте JSON-конфігурацію плагіна...","install":"Встановити плагін","noPlugins":"Плагіни не встановлено","noPluginsDescription":"Додайте плагін для розширення функціональності","loading":"Завантаження плагінів...","installed":"Встановлені плагіни","active":"Активні плагіни","activeLabel":"Активний","inactive":"Неактивний","activate":"Активувати","deactivate":"Деактивувати","models":"моделей","apiKeySet":"API-ключ встановлено","apiKeyConfiguration":"Налаштування API-ключа","apiKeyEnvAlternative":"Або встановіть","environmentVariable":"змінну середовища","apiKeyConfigured":"API-ключ налаштовано","apiKeyPlaceholder":"Введіть API-ключ...","saveApiKey":"Зберегти API-ключ","apiKey":{"title":"API-ключ","placeholder":"Введіть API-ключ","save":"Зберегти ключ","remove":"Видалити ключ","configured":"API-ключ налаштовано","notConfigured":"Потрібен API-ключ","saved":"API-ключ успішно збережено","removed":"API-ключ видалено","saveFailed":"Не вдалося зберегти API-ключ","removeFailed":"Не вдалося видалити API-ключ","enterKey":"Введіть API-ключ"},"variables":"Variables"},"generation":{"title":"Параметри генерації","description":"Налаштуйте, як AI генерує відповіді","coreParameters":"Основні параметри","temperature":"Температура","temperatureDescription":"Контролює випадковість. Нижчі значення більш зосереджені, вищі — більш креативні.","topP":"Top P","topPDescription":"Контролює різноманітність через nucleus sampling. Нижчі значення фокусуються на ймовірних токенах.","topK":"Top K","topKDescription":"Обмежує вибір токенів до K найімовірніших. Встановіть 0 для вимкнення.","minP":"Min P","minPDescription":"Мінімальний поріг ймовірності для вибору токенів.","generationControl":"Контроль генерації","maxTokens":"Макс. токенів","maxTokensDescription":"Максимальна кількість токенів для генерації у відповіді.","repeatPenalty":"Штраф за повторення","repeatPenaltyDescription":"Штрафує повторювані токени. Вищі значення зменшують повторення.","contextLength":"Довжина контексту","contextLengthDescription":"Максимальний розмір контекстного вікна для розмов.","seed":"Seed","optional":"необов'язково","random":"Випадковий","seedDescription":"Встановіть конкретний seed для відтворюваних результатів.","advancedOptions":"Розширені параметри","presencePenalty":"Штраф за присутність","presencePenaltyDescription":"Штрафує токени, що з'являються в контексті.","frequencyPenalty":"Штраф за частоту","frequencyPenaltyDescription":"Штрафує часто використовувані токени.","stopSequences":"Стоп-послідовності","commaSeparated":"через кому","stopSequencesDescription":"Власні токени, які зупинять генерацію при зустрічі.","resetDefaults":"Скинути до стандартних","saveOptions":"Зберегти параметри","embeddingSettings":"Налаштування ембедингів","enableEmbeddings":"Увімкнути ембединги документів"},"documents":{"title":"Налаштування документів","embeddings":{"title":"Ембединги","enable":"Увімкнути ембединги документів","model":"Модель ембедингів","modelDescription":"Виберіть модель для ембедингу документів","chunkSize":"Розмір частини","chunkSizeInTokens":"(у токенах)","chunkSizeDescription":"Розмір текстових частин для ембедингу","chunkOverlap":"Перекриття частин","chunkOverlapInTokens":"(у токенах)","chunkOverlapDescription":"Перекриття між послідовними частинами","similarityThreshold":"Поріг схожості","similarityDescription":"Мінімальний бал схожості для включення результатів","status":"Статус ембедингів","statusLabel":"Статус","available":"Доступно","unavailable":"Недоступно","chunksWithEmbeddings":"Частини з ембедингами","coverage":"Покриття","regenerate":"Перегенерувати ембединги","regenerating":"Перегенерація..."}},"tts":{"title":"Текст у мовлення","description":"Налаштуйте параметри синтезу мовлення для озвучення повідомлень","loadingProviders":"Завантаження провайдерів TTS...","noProviders":"Немає провайдерів TTS","noProvidersDescription":"Налаштуйте плагін з підтримкою TTS, щоб увімкнути синтез мовлення","enable":"Увімкнути TTS","enableDescription":"Дозволити синтез мовлення для повідомлень асистента","autoPlay":"Автовідтворення відповідей","autoPlayDescription":"Автоматично озвучувати нові повідомлення асистента","streamSentences":"Потокове відтворення речень","streamSentencesDescription":"Відтворювати аудіо по реченнях замість очікування повного повідомлення. Рекомендується для локального TTS, щоб уникнути тайм-аутів на довгих повідомленнях.","voiceConfiguration":"Налаштування голосу","model":"Модель TTS","modelDescription":"Виберіть модель для синтезу мовлення","voice":"Голос","selectVoice":"Виберіть голос","voiceDescription":"Виберіть голос для синтезу мовлення","speed":"Швидкість","speedSlow":"0.5x","speedNormal":"1.0x","speedFast":"2.0x","availableProviders":"Доступні провайдери","models":"моделей","test":"Тест","testing":"Тестування...","stop":"Зупинити"},"imageGen":{"title":"Генерація зображень","description":"Налаштуйте параметри та провайдерів генерації зображень","loadingProviders":"Завантаження провайдерів генерації зображень...","noProviders":"Немає провайдерів генерації зображень","noProvidersDescription":"Налаштуйте плагін з підтримкою генерації зображень","enable":"Увімкнути генерацію зображень","enableDescription":"Дозволити AI-генерацію зображень у розмовах","configuration":"Налаштування","model":"Модель","modelDescription":"Виберіть модель для генерації зображень","size":"Розмір","sizeDescription":"Роздільна здатність згенерованих зображень","quality":"Якість","qualityDescription":"Рівень якості згенерованих зображень","style":"Стиль","styleDescription":"Пресет стилю для згенерованих зображень","availableProviders":"Доступні провайдери","models":"моделей"},"data":{"title":"Керування даними","export":"Експорт даних","exportDescription":"Завантажте всі ваші дані, включаючи налаштування, сесії та документи.","exportAll":"Експортувати всі дані","import":"Імпорт даних","importDescription":"Імпортуйте дані з попереднього експорту.","importData":"Імпортувати дані","importing":"Імпорт...","clearSessions":"Очистити сесії","clearSessionsDescription":"Видалити всі сесії чату. Цю дію неможливо скасувати.","clearAll":"Очистити все","clearing":"Очищення...","importOptions":"Параметри імпорту","importOptionsDescription":"Виберіть, як обробляти існуючі дані","skipDuplicates":"Пропустити дублікати","overwrite":"Перезаписати існуючі","importResults":"Результати імпорту","preferences":"Налаштування","imported":"Імпортовано","failed":"Помилка","sessions":"Сесії","importedLabel":"імпортовано","skipped":"пропущено","documents":"Документи","errors":"Помилки"},"about":{"title":"Про програму","versionLabel":"Версія","ollama":{"title":"Статус Ollama","version":"Версія","healthy":"Працює","unhealthy":"Не працює"},"stats":{"models":"Моделі","sessions":"Сесії"},"features":{"privacy":{"title":"Приватність перш за все","description":"Ваші дані залишаються на вашому пристрої"},"openSource":{"title":"Відкритий код","description":"Безкоштовне програмне забезпечення з відкритим кодом"},"localInference":{"title":"Локальний інференс","description":"Запускайте AI-моделі локально з Ollama"}},"openSourceBy":"Відкритий код від {{company}}","links":{"title":"Посилання","github":"GitHub","githubDescription":"Переглянути вихідний код та зробити внесок","website":"Веб-сайт","websiteDescription":"Відвідайте наш веб-сайт","ollama":"Ollama","ollamaDescription":"Дізнайтеся більше про Ollama","documentation":"Документація","reportIssue":"Повідомити про проблему","reportIssueDescription":"Звіти про помилки та запити функцій","gitlab":"Дзеркало GitLab","gitlabDescription":"Самостійно розміщений репозиторій GitLab","documentationDescription":"Посібники, навчальні матеріали та довідник API"},"version":"Версія {{version}}"}}`),models:{title:`Моделі`,subtitle:`Завантажуйте, керуйте та моніторте ваші моделі Ollama`,installed:`Встановлені моделі`,available:`Доступні моделі`,pull:`Завантажити модель`,pulling:`Завантаження...`,delete:`Видалити модель`,deleting:`Видалення...`,size:`Розмір`,modified:`Змінено`,family:`Сімейство`,parameters:`Параметри`,quantization:`Квантизація`,noModels:`Моделі не встановлено`,pullFirst:`Завантажте модель, щоб почати`,noModelsFound:`Моделей не знайдено`},personas:{title:`Персони`,create:`Створити персону`,edit:`Редагувати персону`,delete:`Видалити персону`,name:`Назва`,description:`Опис`,systemPrompt:`Системний промпт`,model:`Модель`,avatar:`Аватар`,background:`Фон`,noPersonas:`Персони не створено`,createFirst:`Створіть свою першу персону, щоб налаштувати досвід чату`},gallery:{title:`Галерея`,subtitle:`Ваша галерея зображень, згенерованих AI`,imageCount:`{{count}} зображень`,generate:`Згенерувати зображення`,generateDescription:`Створюйте зображення за допомогою AI`,generating:`Генерація...`,prompt:`Промпт`,promptPlaceholder:`Опишіть зображення, яке хочете згенерувати...`,noImages:`Зображення ще не згенеровано`,download:`Завантажити`,delete:`Видалити`,regenerate:`Перегенерувати`,model:`Модель`,size:`Розмір`,quality:`Якість`,created:`Створено`},errors:{generic:`Сталася помилка`,network:`Помилка мережі. Перевірте підключення.`,unauthorized:`У вас немає дозволу на виконання цієї дії.`,notFound:`Запитуваний ресурс не знайдено.`,serverError:`Помилка сервера. Спробуйте пізніше.`,validation:`Перевірте введені дані та спробуйте ще раз.`},keyboard:{title:`Гарячі клавіші`,toggleSidebar:`Перемкнути бічну панель`,openSettings:`Відкрити налаштування`,toggleDarkMode:`Перемкнути темний режим`,showShortcuts:`Показати гарячі клавіші`,closeModals:`Закрити модальні вікна`,groups:{navigation:`Навігація`,settings:`Налаштування`,general:`Загальні`,chat:`Чат`},actions:{sendMessage:`Надіслати повідомлення`,newLine:`Новий рядок у повідомленні`},footer:`Натисніть {{key1}} або {{key2}}, щоб показати цю довідку`,tooltip:`Гарячі клавіші`},modelManager:{title:`Моделі`,loading:`Завантаження моделей...`,systemStatus:{online:`Ollama онлайн`,offline:`Ollama офлайн`,models:`модель`,models_plural:`моделей`,running:`працює`,vram:`VRAM`},sections:{pull:`Завантажити нову модель`,library:`Переглянути бібліотеку`,running:`Запущені моделі`,local:`Локальні моделі`,advanced:`Розширені дії`,huggingface:`HuggingFace Hub`},pull:{placeholder:`Введіть назву моделі (напр., llama3.2:3b, deepseek-r1:14b)`,button:`Завантажити`,cancel:`Скасувати`,popular:`Популярні моделі:`,browseAll:`Переглянути всі моделі на ollama.com`,success:`Модель {{name}} успішно завантажено`,cancelled:`Завантаження моделі скасовано`,failed:`Не вдалося завантажити модель`,enterName:`Введіть назву моделі`,restricted:`Встановлення моделей у цьому екземплярі доступне лише адміністраторам.`},progress:{starting:`Ініціалізація...`,pulling:`Завантаження моделі...`,pullingLayer:`завантаження`,verifying:`Перевірка цілісності...`,verifyingDigest:`перевірка sha256 дайджесту`,writing:`Запис маніфесту...`,cleaning:`Очищення...`},library:{available:`доступно`,search:`Пошук моделей...`,noResults:`Моделі, що відповідають критеріям, не знайдено`,installed:`Встановлено`,more:`+{{count}} ще`,refresh:`Оновити бібліотеку`},local:{noModels:`Моделі ще не встановлено`,pullToStart:`Завантажте модель вище, щоб почати`,installed:`встановлено`,running:`Працює`,info:`Інфо`,copy:`Копіювати`,delete:`Видалити`,deleteConfirm:`Ви впевнені, що хочете видалити модель "{{name}}"?`,deleteSuccess:`Модель {{name}} успішно видалено`,deleteFailed:`Не вдалося видалити модель`},advanced:{createModel:`Створити модель`,fromModelfile:`З Modelfile`,copyModel:`Копіювати модель`,duplicateExisting:`Дублювати існуючу`,testEmbeddings:`Тестувати ембединги`,generateVectors:`Генерувати вектори`,healthCheck:`Перевірка справності`,testConnection:`Тест підключення`,healthy:`Ollama справний!`},modals:{details:{title:`Деталі моделі`,info:`Інформація про модель`,family:`Сімейство`,parameters:`Параметри`,quantization:`Квантизація`,format:`Формат`,systemPrompt:`Системний промпт`,template:`Шаблон`,license:`Ліцензія`,modelfile:`Modelfile`,noDetails:`Деталі недоступні`},copy:{title:`Копіювати модель`,source:`Вихідна модель`,selectModel:`Виберіть модель...`,newName:`Нова назва моделі`,placeholder:`напр., my-custom-model`,copying:`Копіювання...`,button:`Копіювати модель`,success:`Модель скопійовано як {{name}}`,failed:`Не вдалося скопіювати модель`,enterBoth:`Введіть назву вихідної та цільової моделі`},create:{title:`Створити власну модель`,name:`Назва моделі`,namePlaceholder:`напр., my-assistant`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
- SYSTEM You are a helpful assistant.`,see:`Див.`,docs:`Документація Modelfile`,docsLink:`для довідки з синтаксису`,creating:`Створення...`,button:`Створити модель`,success:`Модель {{name}} успішно створено`,failed:`Не вдалося створити модель`,enterBoth:`Введіть назву моделі та вміст Modelfile`},embeddings:{title:`Тестувати ембединги`,model:`Модель ембедингів`,selectModel:`Виберіть модель...`,recommended:`Рекомендовано: nomic-embed-text, mxbai-embed-large`,input:`Вхідний текст`,placeholder:`Введіть текст для генерації ембедингів...`,generating:`Генерація...`,button:`Згенерувати ембединги`,result:`Результат ({{count}} вимірів)`,success:`Згенеровано {{count}}-вимірний вектор ембедингу`,failed:`Не вдалося згенерувати ембединги`,enterBoth:`Виберіть модель та введіть текст`}},huggingface:{browseAll:`Переглянути все на HuggingFace`,checkingGguf:`Пошук GGUF-файлів...`,noGgufAvailable:`Немає GGUF-файлів для прямого завантаження в Ollama`,ggufFilesCount:`GGUF-файли ({{count}}) - Завантажити напряму в Ollama`,noModelsFound:`Моделей не знайдено`,noResults:`Моделей не знайдено. Спробуйте змінити пошук або фільтри.`,browseAllLink:`Переглянути все`,search:`Пошук моделей HuggingFace...`,by:`від`,gated:`Обмежений доступ`,viewOnHF:`Переглянути на HuggingFace`,sortDownloads:`Завантаження`,sortLikes:`Вподобання`,sortRecent:`Нещодавні`,taskTextGeneration:`Генерація тексту`,taskTextToSpeech:`Текст у мовлення`,taskTextToImage:`Текст у зображення`,taskSpeechRecognition:`Розпізнавання мовлення`,tasks:{textGen:`Генерація тексту`,tts:`Текст у мовлення`,image:`Текст у зображення`,stt:`Розпізнавання мовлення`},sort:{downloads:`Найбільш завантажувані`,likes:`Найпопулярніші`,recent:`Нещодавно оновлені`}}},personaManager:{title:`Персони`,subtitle:`Створюйте та керуйте AI-персонами з унікальними особистостями, пам'яттю та поведінкою`,loading:`Завантаження персон...`,createButton:`Створити персону`,importExport:`Імпорт/Експорт`,stats:{title:`Ваші персони`,count:`{{count}} персона створена`,count_plural:`{{count}} персон створено`},empty:{title:`Персон ще немає`,description:`Створіть свою першу персону, щоб почати персоналізовану взаємодію з AI`,button:`Створити першу персону`},deleteConfirm:`Ви впевнені, що хочете видалити "{{name}}"?`,deleteSuccess:`Персону "{{name}}" успішно видалено`,downloadSuccess:`Персону "{{name}}" успішно завантажено`,failed:`Не вдалося {{action}} персону`},personaForm:{title:{create:`Створити нову персону`,edit:`Редагувати персону`},subtitle:{create:`Створіть нову AI-персону з унікальною особистістю, системою пам'яті та адаптивним навчанням`,edit:`Налаштуйте вашу AI-персону з розширеною пам'яттю, адаптивним навчанням та інтелектуальними параметрами`},loading:`Завантаження форми...`,saved:`Збережено`,tabs:{basic:`Основне`,parameters:`Параметри`,memory:`Пам'ять і навчання`,advanced:`Розширене`},basic:{name:`Назва`,namePlaceholder:`Введіть назву персони`,model:`Модель`,selectModel:`Виберіть модель`,description:`Опис`,descriptionPlaceholder:`Опишіть вашу персону...`,systemPrompt:`Системний промпт`,systemPromptPlaceholder:`Введіть системний промпт, який визначає поведінку персони...`,systemPromptHint:`Системний промпт визначає, як ваша персона буде поводитися та відповідати.`},parameters:{temperature:`Температура`,temperatureHint:`Контролює креативність vs послідовність`,topP:`Top-P`,topPHint:`Контролює різноманітність відповідей`,topK:`Top-K`,topKHint:`Обмежує словник до top-k токенів`,contextWindow:`Контекстне вікно`,contextWindowHint:`Максимальна довжина історії розмови`,maxTokens:`Макс. токенів`,maxTokensHint:`Максимальна довжина відповіді`,repeatPenalty:`Штраф за повторення`,repeatPenaltyHint:`Зменшує повторювані відповіді`},memory:{title:`Система пам'яті`,subtitle:`Персона запам'ятовує розмови з часом`,enableHint:`Увімкніть систему пам'яті, щоб ваша персона запам'ятовувала розмови та будувала контекст з часом.`,loading:`Завантаження статусу пам'яті...`,noData:`Даних пам'яті ще немає`,memories:`Спогади`,mbUsed:`МБ використано`,lastBackup:`Останній бекап`,never:`Ніколи`,maxMemories:`Максимум спогадів`,maxMemoriesHint:`Скільки спогадів може зберігати персона`,retention:`Збереження пам'яті`,retentionHint:`Днів зберігання спогадів до очищення`,autoCleanup:`Автоочищення старих спогадів`,wipeAll:`Очистити всі спогади`,wipeCannot:`Цю дію неможливо скасувати`,wipeButton:`Очистити`,wiping:`Очищення...`,wipeConfirm:`Ви впевнені, що хочете очистити всі спогади? Цю дію неможливо скасувати.`,wipeSuccess:`Очищено {{count}} спогадів`},learning:{title:`Адаптивне навчання`,subtitle:`Персона еволюціонує на основі взаємодій`,enableHint:`Увімкніть адаптивне навчання, щоб персона еволюціонувала та персоналізувала відповіді на основі ваших взаємодій.`,speed:`Швидкість навчання`,slow:`Повільна`,slowDesc:`Поступові зміни`,balanced:`Збалансована`,balancedDesc:`Помірний темп`,fast:`Швидка`,fastDesc:`Швидка адаптація`,autoAdapt:`Автоадаптація до вподобань користувача`,whatLearns:`Що вивчає персона:`,conversationTone:`Тон розмови`,responseStyle:`Стиль відповідей`,userPreferences:`Вподобання користувача`,topicInterests:`Інтереси щодо тем`},advanced:{embeddingModel:`Модель ембедингів`,embeddingHint:`Виберіть модель для кодування пам'яті та семантичного пошуку. Моделі ембедингів показані першими, потім інші доступні моделі.`,noModels:`Моделі не знайдено`,embeddingModels:`Моделі ембедингів`,otherModels:`Інші моделі`,installHint:`Встановіть модель ембедингів:`,recommended:`Рекомендовано: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`Про розширені налаштування`,aboutDescription:`Модель ембедингів використовується системою пам'яті для розуміння семантичного значення та пошуку релевантних спогадів під час розмов. Виберіть модель, що відповідає вашому випадку використання та доступним ресурсам.`},actions:{cancel:`Скасувати`,save:`Зберегти`,saving:`Збереження...`,saveClose:`Зберегти і закрити`,create:`Створити`},success:{created:`Персону створено`,updated:`Персону оновлено`},error:{saveFailed:`Не вдалося зберегти`}},personaCard:{enhanced:`Покращена`,systemPrompt:`Системний промпт`,memories:`спогадів`,use:`Використати`,editTooltip:`Редагувати персону`,downloadTooltip:`Завантажити персону`,backup:`Бекап`,exportDNA:`Експорт ДНК`,wipeMemories:`Очистити спогади`,wipeConfirm:`Ви впевнені, що хочете очистити всі спогади цієї персони? Цю дію неможливо скасувати.`,wipeSuccess:`Очищено {{count}} спогадів`,backupSuccess:`Бекап персони успішно завантажено`,dnaSuccess:`ДНК персони успішно експортовано`,failed:`Не вдалося {{action}}`},userManager:{title:`Керування користувачами`,subtitle:`Керуйте обліковими записами та дозволами користувачів`,pageDescription:`Керуйте обліковими записами користувачів, дозволами та контролем доступу для вашого екземпляра Libre WebUI.`,loading:`Завантаження користувачів...`,createUser:`Створити користувача`,search:`Пошук користувачів...`,noUsers:`Користувачів не знайдено`,noUsersMatching:`Користувачів, що відповідають пошуку, не знайдено`,columns:{user:`Користувач`,email:`Електронна пошта`,role:`Роль`,created:`Створено`,actions:`Дії`},roles:{admin:`Адміністратор`,user:`Користувач`},noEmail:`Пошта не вказана`,deleteConfirm:`Ви впевнені, що хочете видалити користувача "{{name}}"?`,deleteSuccess:`Користувача успішно видалено`,deleteFailed:`Не вдалося видалити користувача`,cannotDeleteSelf:`Ви не можете видалити власний обліковий запис`,form:{title:{create:`Створити користувача`,edit:`Редагувати користувача`},username:`Ім'я користувача`,usernamePlaceholder:`Введіть ім'я користувача`,email:`Електронна пошта`,emailPlaceholder:`Введіть пошту (необов'язково)`,password:`Пароль`,passwordPlaceholder:`Введіть пароль`,passwordHint:`Залиште порожнім, щоб зберегти поточний пароль`,role:`Роль`,creating:`Створення...`,updating:`Оновлення...`,createButton:`Створити користувача`,updateButton:`Оновити користувача`,createSuccess:`Користувача успішно створено`,updateSuccess:`Користувача успішно оновлено`,createFailed:`Не вдалося створити користувача`,updateFailed:`Не вдалося оновити користувача`}},chatMessage:{you:`Ви`,assistant:`Асистент`,system:`Система`,copy:`Копіювати`,copyMessage:`Копіювати повідомлення`,copied:`Скопійовано!`,regenerate:`Перегенерувати`,regenerateResponse:`Перегенерувати відповідь`,edit:`Редагувати`,editSystemMessage:`Редагувати системне повідомлення`,saveChanges:`Зберегти зміни`,cancelEditing:`Скасувати редагування`,delete:`Видалити`,deleteConfirm:`Видалити це повідомлення?`,branch:`Гілка`,speaking:`Озвучення...`,speakMessage:`Озвучити повідомлення`,stopSpeaking:`Зупинити озвучення`,showMore:`Показати більше`,showLess:`Показати менше`,thinking:`Обмірковує`,systemMessagePlaceholder:`Введіть системне повідомлення...`,fullSizeImage:`Повнорозмірне зображення`,startConversation:`Почати розмову`,startConversationDescription:`Надішліть повідомлення, щоб почати спілкування з AI-асистентом. Ставте запитання, отримуйте допомогу з кодом або ведіть звичайну розмову.`,scrollToBottom:`Прокрутити донизу`,newMessages:`Нові повідомлення`},imageGallery:{title:`Галерея зображень`,noImages:`Зображень ще немає`,noImagesHint:`Згенеруйте перше зображення за допомогою панелі праворуч`,delete:`Видалити`,download:`Завантажити`,deleteConfirm:`Ви впевнені, що хочете видалити це зображення?`,deleteSuccess:`Зображення видалено`,deleteFailed:`Не вдалося видалити зображення`,downloadFailed:`Не вдалося завантажити зображення`,loadMore:`Завантажити ще ({{current}} з {{total}})`,loadFailed:`Не вдалося завантажити галерею`},imageGeneration:{title:`Згенерувати зображення`,prompt:`Промпт`,promptPlaceholder:`Опишіть зображення, яке хочете створити...`,model:`Модель`,selectModel:`Виберіть модель`,noModels:`Моделі генерації зображень недоступні`,configurePlugin:`Налаштуйте плагін з підтримкою генерації зображень`,size:`Розмір`,quality:`Якість`,style:`Стиль`,generate:`Згенерувати`,generating:`Генерація...`,success:`Зображення успішно згенеровано`,failed:`Не вдалося згенерувати зображення`,enterPrompt:`Введіть промпт`,promptTooLong:`Промпт перевищує максимальну довжину в {{max}} символів`},errorBoundary:{title:`Щось пішло не так`,description:`Виникла неочікувана помилка. Спробуйте оновити сторінку.`,tryAgain:`Оновити сторінку`,goHome:`На головну`,errorDetails:`Деталі помилки (розробка)`},documents:{title:`Документи`,upload:`Завантажити документ`,uploading:`Завантаження...`,noDocuments:`Документи не завантажено`,uploadHint:`Завантажте документи для використання в розмовах`,delete:`Видалити`,deleteConfirm:`Ви впевнені, що хочете видалити цей документ?`,deleteSuccess:`Документ видалено`,deleteFailed:`Не вдалося видалити документ`,uploadSuccess:`Документ успішно завантажено`,uploadFailed:`Не вдалося завантажити документ`,types:`Підтримується: PDF, TXT, MD, DOCX`,unsupportedFileType:`Підтримуються лише файли PDF та TXT`,fileSizeTooLarge:`Розмір файлу має бути менше 10 МБ`,uploadSuccessWithName:`Документ "{{name}}" успішно завантажено`,removeSuccess:`Документ успішно видалено`,removeFailed:`Не вдалося видалити документ`,removeError:`Сталася помилка при видаленні документа`,clickToUpload:`Натисніть, щоб завантажити`,orDragAndDrop:`або перетягніть`,fileTypesAndSize:`PDF або TXT файли до 10 МБ`,uploadedDocuments:`Завантажені документи`,removeDocument:`Видалити документ`},ttsButton:{speak:`Озвучити`,stop:`Зупинити`,speaking:`Озвучення...`,generateFailed:`Не вдалося згенерувати мовлення`,playbackFailed:`Помилка відтворення аудіо`,stopSpeaking:`Зупинити озвучення`,generatingSpeech:`Генерація мовлення...`,readAloud:`Прочитати вголос`},artifacts:{title:`Артефакти`,code:`Код`,preview:`Попередній перегляд`,copy:`Копіювати код`,copied:`Скопійовано!`,download:`Завантажити`,expand:`Розгорнути`,collapse:`Згорнути`,openInNewTab:`Відкрити в новій вкладці`,invalidSvg:`Недійсний SVG-вміст`,invalidJson:`Недійсний JSON-вміст`,previewMode:`Режим перегляду`,codeMode:`Режим коду`,copyContent:`Копіювати вміст`,openInPanel:`Відкрити в панелі`,openInNewWindow:`Відкрити в новому вікні`,created:`Створено`,closePanelEsc:`Закрити панель (Esc)`,copyButton:`Копіювати`,open:`Відкрити`,dragEdgeToResize:`Перетягніть край для зміни розміру`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`Імпорт та експорт персон`,description:`Експортуйте персони, щоб поділитися ними, або імпортуйте персони інших`,exportPersonas:`Експорт персон`,importPersonas:`Імпорт персон`,noPersonasToExport:`Немає персон для експорту`,personasAvailable:`{{count}} персона доступна`,personasAvailable_plural:`{{count}} персон доступно`,exportAll:`Експортувати всі`,uploadJsonFile:`Завантажити JSON-файл`,pasteJsonLabel:`Вставити JSON-дані`,pasteJsonPlaceholder:`Вставте JSON-дані персони сюди...`,importing:`Імпорт...`,importButton:`Імпортувати персону(и)`,expectedFormat:`Очікуваний формат JSON:`,exportSuccess:`Персону "{{name}}" успішно експортовано`,exportFailed:`Не вдалося експортувати персону`,exportAllSuccess:`Усі {{count}} персон успішно експортовано`,exportAllFailed:`Не вдалося експортувати персони`,pasteJsonData:`Вставте JSON-дані персони`,importMultipleSuccess:`Успішно імпортовано {{count}} персон`,importMultipleFailed:`Не вдалося імпортувати {{count}} персон`,importNoneFailed:`Не вдалося імпортувати жодної персони`,importSuccess:`Персону успішно імпортовано`,importFailed:`Не вдалося імпортувати персону`},generationStats:{details:`Деталі`,promptTokens:`Токени промпту:`,generatedTokens:`Згенеровані токени:`,totalTokens:`Всього токенів:`,speed:`Швидкість:`,promptEval:`Оцінка промпту:`,generation:`Генерація:`,modelLoad:`Завантаження моделі:`,totalTime:`Загальний час:`,generatedAt:`Згенеровано о:`},userMenu:{loggedOut:`Вихід виконано успішно`,pictureUpdated:`Фото профілю оновлено`,failedUpdateAvatar:`Не вдалося оновити аватар`,failedUpdatePicture:`Не вдалося оновити фото профілю`,noEmail:`Email не вказано`,changePicture:`Змінити фото`,settings:`Налаштування`,userManagement:`Керування користувачами`,signOut:`Вийти`,changeProfilePicture:`Змінити фото профілю`},pluginManager:{title:`Менеджер плагінів`,upload:`Завантажити`,addJson:`Додати JSON`,browseHF:`Переглянути HF Hub`,confirmDelete:`Ви впевнені, що хочете видалити цей плагін?`,uploading:`Завантаження плагіну...`,pasteJson:`Вставте JSON плагіну тут...`,installPlugin:`Встановити плагін`,loading:`Завантаження плагінів...`,noPlugins:`Немає встановлених плагінів`,noPluginsDescription:`Завантажте файл плагіну або додайте плагін з JSON.`,active:`Активний`,id:`ID`,endpoint:`Ендпоінт`,activate:`Активувати`,deactivate:`Деактивувати`,activePlugin:`Активний плагін`,activePluginDescription:`Усі запити чату будуть спрямовані через цей плагін`,variables:{title:`Змінні`,save:`Зберегти`,saving:`Збереження...`,saved:`Змінні збережені`,saveFailed:`Не вдалося зберегти змінні`,resetDefaults:`Скинути до стандартних`,reset:`Змінні скинуті`,sensitiveSet:`Значення встановлено (введіть нове для зміни)`}},huggingface:{title:`Браузер моделей HuggingFace`,subtitle:`Переглядайте та обирайте моделі з Hub`,searchPlaceholder:`Пошук моделей...`,filters:`Фільтри`,task:`Завдання`,sortBy:`Сортувати за`,noModels:`Моделей не знайдено`,adjustSearch:`Спробуйте змінити пошуковий запит або фільтри`,gated:`Обмежений`,selected:`Обрано`,select:`Обрати`,refresh:`Оновити`,modelsFound:`моделей знайдено`},demoMode:{title:`Демо-режим`,github:`GitHub`},personaBackground:{label:`Фонове зображення`,uploadBackgroundImage:`Завантажити фонове зображення`,dragAndDrop:`Перетягніть зображення або натисніть для вибору`,chooseImage:`Вибрати зображення`,uploading:`Завантаження...`,enterImageUrl:`Або введіть URL зображення`,supportedFormats:`Підтримує: JPG, PNG, GIF, WebP (макс. 5МБ). Широкі альбомні зображення працюють найкраще.`,customBackground:`Користувацьке фонове зображення`,clickToChange:`Натисніть для зміни або видалення`,removed:`Фон видалено`,uploaded:`Фон успішно завантажено`,invalidFile:`Будь ласка, виберіть дійсний файл зображення`,fileTooLarge:`Розмір фонового зображення має бути менше 5МБ`,readFailed:`Не вдалося прочитати файл зображення`,uploadFailed:`Не вдалося завантажити фонове зображення`},modelSelector:{searchInstalled:`Пошук встановлених моделей...`,searchOllama:`Пошук у бібліотеці Ollama...`,searchHuggingFace:`Пошук на HuggingFace...`,selectModel:`Вибрати модель`,personas:`Персони`,ollamaModels:`Моделі Ollama`,pluginModels:`Моделі плагінів`,actions:`Дії`,installed:`Встановлено`,use:`Використати`,pull:`Завантажити`,pullRestricted:`Встановлення моделей у цьому екземплярі доступне лише адміністраторам.`,adminOnlyPull:`Лише адміністратори`}};export{e as default};
1
+ var e={common:{loading:`Завантаження...`,save:`Зберегти`,saving:`Збереження...`,cancel:`Скасувати`,delete:`Видалити`,edit:`Редагувати`,close:`Закрити`,back:`Назад`,next:`Далі`,confirm:`Підтвердити`,error:`Помилка`,success:`Успіх`,warning:`Попередження`,or:`або`,optional:`необов'язково`,enabled:`Увімкнено`,disabled:`Вимкнено`,on:`Увімк.`,off:`Вимк.`,yes:`Так`,no:`Ні`,search:`Пошук`,noResults:`Результатів не знайдено`,retry:`Повторити`,refresh:`Оновити`,download:`Завантажити`,upload:`Вивантажити`,export:`Експорт`,import:`Імпорт`,reset:`Скинути`,apply:`Застосувати`,clear:`Очистити`,all:`Усі`,none:`Жодного`,default:`За замовчуванням`,custom:`Власний`,remove:`Видалити`},brand:{name:`Libre WebUI`,shortName:`Libre`},auth:{login:{title:`З поверненням`,subtitle:`Увійдіть до свого облікового запису, щоб продовжити`,username:`Ім'я користувача`,usernamePlaceholder:`Введіть ім'я користувача`,password:`Пароль`,passwordPlaceholder:`Введіть пароль`,signIn:`Увійти`,signingIn:`Вхід...`,noAccount:`Немає облікового запису?`,signUpHere:`Зареєструйтеся тут`,loginSuccess:`Вхід успішний!`,loginFailed:`Помилка входу`,checkCredentials:`Помилка входу. Перевірте свої облікові дані.`,enterBoth:`Введіть ім'я користувача та пароль`,githubSuccess:`Вхід через GitHub успішний!`,githubFailed:`Помилка автентифікації GitHub`,githubVerifyFailed:`Не вдалося перевірити автентифікацію GitHub`},signup:{title:`Створити обліковий запис`,subtitle:`Зареєструйте новий обліковий запис`,username:`Ім'я користувача`,usernamePlaceholder:`Виберіть ім'я користувача`,email:`Електронна пошта`,emailPlaceholder:`ваша@пошта.com`,password:`Пароль`,passwordPlaceholder:`Виберіть пароль`,confirmPassword:`Підтвердіть пароль`,confirmPasswordPlaceholder:`Підтвердіть пароль`,createAccount:`Створити обліковий запис`,creatingAccount:`Створення облікового запису...`,hasAccount:`Вже є обліковий запис?`,signInHere:`Увійдіть тут`,signupSuccess:`Обліковий запис успішно створено!`,signupFailed:`Помилка реєстрації`,tryAgain:`Помилка реєстрації. Спробуйте ще раз.`,usernameRequired:`Ім'я користувача та пароль обов'язкові`,passwordMismatch:`Паролі не збігаються`,passwordTooShort:`Пароль має містити щонайменше 6 символів`},logout:{button:`Вийти`,success:`Ви успішно вийшли`},oauth:{continueWith:`Продовжити з {{provider}}`,connectingTo:`Підключення до {{provider}}...`,github:`GitHub`,huggingFace:`Hugging Face`},checkingAuth:`Перевірка автентифікації...`,welcome:`Ласкаво просимо`,noEmail:`Email не вказано`,role:`Роль`,id:`ID`,userId:`ID користувача`,signInDescription:`Увійдіть за допомогою облікового запису GitHub, щоб продовжити`,signInWithGitHub:`Увійти через GitHub`,jwtActive:`JWT-автентифікація активна`,jwtDescription:`JWT-автентифікація з GitHub OAuth`,github:`GitHub`,provider:`Провайдер`},setup:{welcome:{title:`Ласкаво просимо до Libre WebUI`,subtitle:`Почнімо`,description:`Налаштуйте Libre WebUI за кілька простих кроків`,createAdmin:`Створити обліковий запис адміністратора`,features:{secure:{title:`Безпечний і приватний`,description:`Ваші розмови залишаються на вашому пристрої`},fast:{title:`Швидкий і чутливий`,description:`Оптимізовано для швидкості та продуктивності`},openSource:{title:`Відкритий код`,description:`Безкоштовне програмне забезпечення з відкритим кодом`}}},admin:{title:`Створити обліковий запис адміністратора`,subtitle:`Налаштування адміністратора`,description:`Створіть перший обліковий запис адміністратора для вашого екземпляра Libre WebUI`,usernamePlaceholder:`Введіть ім'я адміністратора`,passwordPlaceholder:`Введіть пароль (мін. 6 символів)`,confirmPlaceholder:`Підтвердіть пароль`,creating:`Створення...`,createAdmin:`Створити адміністратора`,success:`Обліковий запис адміністратора успішно створено!`,failed:`Не вдалося створити обліковий запис адміністратора`,fillAllFields:`Заповніть усі поля`,note:`Це буде основний обліковий запис адміністратора для вашого екземпляра Libre WebUI`},encryptionKey:{title:`Збережіть ключ шифрування`,subtitle:`Важливо: збережіть цей ключ`,description:`Цей ключ шифрування захищає ваші конфіденційні дані. Зберігайте його надійно - він знадобиться для відновлення бази даних.`,warning:`Попередження`,warningText:`Якщо ви втратите цей ключ і вам потрібно буде відновити базу даних, ваші зашифровані дані (API-ключі, налаштування) будуть безповоротно втрачені.`,label:`Ваш ключ шифрування`,loading:`Завантаження...`,copyToClipboard:`Копіювати в буфер обміну`,copied:`Ключ шифрування скопійовано!`,copyFailed:`Не вдалося скопіювати ключ`,envNote:`Цей ключ також збережено у файлі backend/.env як ENCRYPTION_KEY`,acknowledgment:`Я зберіг ключ шифрування в надійному місці та розумію, що його втрата може призвести до втрати даних.`,confirmRequired:`Підтвердіть, що ви зберегли ключ шифрування`,continue:`Продовжити до Libre WebUI`}},chat:{greeting:{morning:`Доброго ранку`,afternoon:`Доброго дня`,evening:`Доброго вечора`,night:`Доброї ночі`},welcome:{helpToday:`Чим можу допомогти сьогодні?`,helpTonight:`Чим можу допомогти сьогодні ввечері?`},input:{placeholder:`Надіслати повідомлення`,messagePlaceholder:`Повідомлення...`,attachImages:`Прикріпити зображення`,attachments:`Вкладення та розширені функції`,sendMessage:`Надіслати повідомлення`,stopGeneration:`Зупинити генерацію`},session:{new:`Новий чат`,private:`Приватний`,privateMode:`Приватний режим`,privateDescription:`Ця розмова не буде збережена`,privateTooltip:`Почати приватну розмову, яка не буде збережена`,deleteConfirm:`Ви впевнені, що хочете видалити цей чат?`,generatingTitle:`Генерація заголовка`,noChats:`Чатів ще немає`,createFirst:`Створіть свій перший чат вище`,chats:`Чати`,renameChat:`Перейменувати чат`,deleteChat:`Видалити чат`},persona:{applied:`Персону застосовано`,label:`Персона`},model:{updated:`Модель оновлено`,noModels:`Моделі недоступні`,noModelsDescription:`Моделі недоступні. Переконайтеся, що Ollama працює та моделі встановлені.`,pullCommand:`ollama pull llama3.2:3b`,noModelsTooltip:`Моделі недоступні. Переконайтеся, що Ollama працює та моделі встановлені.`},footer:{disclaimer:`LLM може помилятися - перевіряйте важливу інформацію`,images:`{{count}} зображення`,images_plural:`{{count}} зображень`,structuredOutput:`Структурований вивід`},mediaUpload:{dropImagesHere:`Перетягніть зображення сюди або`,supportedFormats:`Підтримується: JPG, PNG, GIF, WebP (макс. 10 МБ кожне)`,browse:`оберіть`},structuredOutput:{title:`Формат відповіді`,none:`Без формату (природна мова)`,noneDescription:`Стандартна відповідь природною мовою`,json:`JSON`,jsonDescription:`Структурований формат JSON`,list:`Список`,listDescription:`Масив елементів`,summary:`Підсумок`,summaryDescription:`Підсумок документа з ключовими пунктами`,analysis:`Аналіз`,analysisDescription:`Структурований аналіз з перевагами/недоліками`,custom:`Власна схема`,customDescription:`Визначте власну JSON-схему`,customSchema:`Власна JSON-схема`,schemaPreview:`Попередній перегляд схеми`,applySchema:`Застосувати схему`,cancel:`Скасувати`,enabled:`Структурований вивід увімкнено`}},sidebar:{navigation:{chat:`Чат`,models:`Моделі`,personas:`Персони`,imagine:`Генерація`,settings:`Налаштування`,userManagement:`Керування користувачами`,signOut:`Вийти`,agents:`Libre Claw`},toggleSize:`Змінити розмір бічної панелі`,expandSidebar:`Розгорнути бічну панель`},user:{menu:{changePicture:`Змінити зображення`,settings:`Налаштування`,userManagement:`Керування користувачами`,logout:`Вийти`},avatar:{title:`Змінити фото профілю`,updated:`Фото профілю оновлено`,updateFailed:`Не вдалося оновити фото профілю`,saving:`Збереження...`,label:`Аватар`,uploadAvatarImage:`Завантажити зображення аватара`,dragAndDrop:`Перетягніть зображення або натисніть для вибору`,chooseImage:`Вибрати зображення`,uploading:`Завантаження...`,enterImageUrl:`Або введіть URL зображення`,supportedFormats:`Підтримуються: JPG, PNG, GIF, WebP (макс. 2 МБ). Квадратні зображення підходять найкраще.`,customAvatar:`Користувацьке зображення аватара`,clickToChange:`Натисніть, щоб змінити або видалити`,removed:`Аватар видалено`,uploaded:`Аватар успішно завантажено`,invalidFile:`Будь ласка, виберіть дійсний файл зображення`,fileTooLarge:`Розмір зображення аватара має бути менше 2 МБ`,readFailed:`Не вдалося прочитати файл зображення`,uploadFailed:`Не вдалося завантажити зображення аватара`},profile:{noEmail:`Електронна пошта не вказана`}},settings:JSON.parse(`{"title":"Налаштування","tabs":{"appearance":"Зовнішній вигляд","model":"Модель","systemMessage":"Системне повідомлення","plugins":"Плагіни","generation":"Генерація","documents":"Документи","tts":"Текст у мовлення","imageGen":"Генерація зображень","data":"Дані","about":"Про програму"},"appearance":{"title":"Зовнішній вигляд","language":{"title":"Мова","description":"Виберіть бажану мову"},"theme":{"title":"Тема","light":"Світла","dark":"Темна","amoled":"Глибокий чорний","system":"Системна"},"accent":{"title":"Акцентний колір","custom":"Власний колір","useColor":"Використати {{color}} як акцент"},"chatInterface":{"title":"Інтерфейс чату","showUsername":"Показувати ім'я користувача","showUsernameDescription":"Відображати ім'я користувача в повідомленнях чату"},"background":{"title":"Фонове зображення","enable":"Увімкнути фонове зображення","enableDescription":"Показувати власний фон з ефектом розмиття","blur":"Розмиття","opacity":"Прозорість","upload":"Завантажити фонове зображення","dragDrop":"Перетягніть зображення або клацніть для вибору","chooseImage":"Вибрати зображення"}},"saveSettings":"Зберегти налаштування","model":{"title":"Налаштування моделі","defaultModel":"Модель за замовчуванням","defaultModelDescription":"Ця модель буде використовуватися за замовчуванням для нових розмов","selectModel":"Виберіть модель","updateAll":"Оновити всі моделі","updateAllDescription":"Перевірити оновлення та завантажити останні версії всіх встановлених моделей","updateAllButton":"Оновити всі","updating":"Оновлення моделей...","currentModelInfo":"Інформація про поточну модель","name":"Назва","size":"Розмір","family":"Сімейство","format":"Формат","status":"Статус","statusStarting":"Запуск...","statusComplete":"Завершено","statusError":"Помилка","bulkOperations":"Масові операції","autoTitle":{"title":"Автоматична генерація заголовків","enable":"Увімкнути автозаголовки","enableDescription":"Автоматично генерувати заголовки для нових розмов","taskModel":"Модель для завдань","selectTaskModel":"Виберіть модель для завдань","taskModelDescription":"Модель, що використовується для генерації заголовків розмов"},"persona":"Персона","updatingModel":"Оновлення {{name}} ({{current}}/{{total}})","modelsProgress":"{{current}} з {{total}} моделей","modelPullAccess":"Доступ до встановлення моделей","modelPullAccessDescription":"Дозволити користувачам без прав адміністратора завантажувати та встановлювати нові моделі.","modelPullAccessSaved":"Дозволи на встановлення моделей оновлено","modelPullAccessSaveFailed":"Не вдалося оновити дозволи на встановлення моделей"},"systemMessage":{"title":"Системне повідомлення","description":"Встановіть власне системне повідомлення, яке буде використовуватися для всіх нових розмов.","placeholder":"Введіть системне повідомлення...","saved":"Системне повідомлення збережено","saveFailed":"Не вдалося зберегти системне повідомлення"},"plugins":{"title":"Плагіни","description":"Керуйте встановленими плагінами","addNew":"Додати новий плагін","upload":"Завантажити плагін","addJson":"Додати JSON","uploading":"Завантаження...","jsonPlaceholder":"Вставте JSON-конфігурацію плагіна...","install":"Встановити плагін","noPlugins":"Плагіни не встановлено","noPluginsDescription":"Додайте плагін для розширення функціональності","loading":"Завантаження плагінів...","installed":"Встановлені плагіни","active":"Активні плагіни","activeLabel":"Активний","inactive":"Неактивний","activate":"Активувати","deactivate":"Деактивувати","models":"моделей","apiKeySet":"API-ключ встановлено","apiKeyConfiguration":"Налаштування API-ключа","apiKeyEnvAlternative":"Або встановіть","environmentVariable":"змінну середовища","apiKeyConfigured":"API-ключ налаштовано","apiKeyPlaceholder":"Введіть API-ключ...","saveApiKey":"Зберегти API-ключ","apiKey":{"title":"API-ключ","placeholder":"Введіть API-ключ","save":"Зберегти ключ","remove":"Видалити ключ","configured":"API-ключ налаштовано","notConfigured":"Потрібен API-ключ","saved":"API-ключ успішно збережено","removed":"API-ключ видалено","saveFailed":"Не вдалося зберегти API-ключ","removeFailed":"Не вдалося видалити API-ключ","enterKey":"Введіть API-ключ"},"variables":"Variables"},"generation":{"title":"Параметри генерації","description":"Налаштуйте, як AI генерує відповіді","coreParameters":"Основні параметри","temperature":"Температура","temperatureDescription":"Контролює випадковість. Нижчі значення більш зосереджені, вищі — більш креативні.","topP":"Top P","topPDescription":"Контролює різноманітність через nucleus sampling. Нижчі значення фокусуються на ймовірних токенах.","topK":"Top K","topKDescription":"Обмежує вибір токенів до K найімовірніших. Встановіть 0 для вимкнення.","minP":"Min P","minPDescription":"Мінімальний поріг ймовірності для вибору токенів.","generationControl":"Контроль генерації","maxTokens":"Макс. токенів","maxTokensDescription":"Максимальна кількість токенів для генерації у відповіді.","repeatPenalty":"Штраф за повторення","repeatPenaltyDescription":"Штрафує повторювані токени. Вищі значення зменшують повторення.","contextLength":"Довжина контексту","contextLengthDescription":"Максимальний розмір контекстного вікна для розмов.","seed":"Seed","optional":"необов'язково","random":"Випадковий","seedDescription":"Встановіть конкретний seed для відтворюваних результатів.","advancedOptions":"Розширені параметри","presencePenalty":"Штраф за присутність","presencePenaltyDescription":"Штрафує токени, що з'являються в контексті.","frequencyPenalty":"Штраф за частоту","frequencyPenaltyDescription":"Штрафує часто використовувані токени.","stopSequences":"Стоп-послідовності","commaSeparated":"через кому","stopSequencesDescription":"Власні токени, які зупинять генерацію при зустрічі.","resetDefaults":"Скинути до стандартних","saveOptions":"Зберегти параметри","embeddingSettings":"Налаштування ембедингів","enableEmbeddings":"Увімкнути ембединги документів"},"documents":{"title":"Налаштування документів","embeddings":{"title":"Ембединги","enable":"Увімкнути ембединги документів","model":"Модель ембедингів","modelDescription":"Виберіть модель для ембедингу документів","chunkSize":"Розмір частини","chunkSizeInTokens":"(у токенах)","chunkSizeDescription":"Розмір текстових частин для ембедингу","chunkOverlap":"Перекриття частин","chunkOverlapInTokens":"(у токенах)","chunkOverlapDescription":"Перекриття між послідовними частинами","similarityThreshold":"Поріг схожості","similarityDescription":"Мінімальний бал схожості для включення результатів","status":"Статус ембедингів","statusLabel":"Статус","available":"Доступно","unavailable":"Недоступно","chunksWithEmbeddings":"Частини з ембедингами","coverage":"Покриття","regenerate":"Перегенерувати ембединги","regenerating":"Перегенерація..."}},"tts":{"title":"Текст у мовлення","description":"Налаштуйте параметри синтезу мовлення для озвучення повідомлень","loadingProviders":"Завантаження провайдерів TTS...","noProviders":"Немає провайдерів TTS","noProvidersDescription":"Налаштуйте плагін з підтримкою TTS, щоб увімкнути синтез мовлення","enable":"Увімкнути TTS","enableDescription":"Дозволити синтез мовлення для повідомлень асистента","autoPlay":"Автовідтворення відповідей","autoPlayDescription":"Автоматично озвучувати нові повідомлення асистента","streamSentences":"Потокове відтворення речень","streamSentencesDescription":"Відтворювати аудіо по реченнях замість очікування повного повідомлення. Рекомендується для локального TTS, щоб уникнути тайм-аутів на довгих повідомленнях.","voiceConfiguration":"Налаштування голосу","model":"Модель TTS","modelDescription":"Виберіть модель для синтезу мовлення","voice":"Голос","selectVoice":"Виберіть голос","voiceDescription":"Виберіть голос для синтезу мовлення","speed":"Швидкість","speedSlow":"0.5x","speedNormal":"1.0x","speedFast":"2.0x","availableProviders":"Доступні провайдери","models":"моделей","test":"Тест","testing":"Тестування...","stop":"Зупинити"},"imageGen":{"title":"Генерація зображень","description":"Налаштуйте параметри та провайдерів генерації зображень","loadingProviders":"Завантаження провайдерів генерації зображень...","noProviders":"Немає провайдерів генерації зображень","noProvidersDescription":"Налаштуйте плагін з підтримкою генерації зображень","enable":"Увімкнути генерацію зображень","enableDescription":"Дозволити AI-генерацію зображень у розмовах","configuration":"Налаштування","model":"Модель","modelDescription":"Виберіть модель для генерації зображень","size":"Розмір","sizeDescription":"Роздільна здатність згенерованих зображень","quality":"Якість","qualityDescription":"Рівень якості згенерованих зображень","style":"Стиль","styleDescription":"Пресет стилю для згенерованих зображень","availableProviders":"Доступні провайдери","models":"моделей"},"data":{"title":"Керування даними","export":"Експорт даних","exportDescription":"Завантажте всі ваші дані, включаючи налаштування, сесії та документи.","exportAll":"Експортувати всі дані","import":"Імпорт даних","importDescription":"Імпортуйте дані з попереднього експорту.","importData":"Імпортувати дані","importing":"Імпорт...","clearSessions":"Очистити сесії","clearSessionsDescription":"Видалити всі сесії чату. Цю дію неможливо скасувати.","clearAll":"Очистити все","clearing":"Очищення...","importOptions":"Параметри імпорту","importOptionsDescription":"Виберіть, як обробляти існуючі дані","skipDuplicates":"Пропустити дублікати","overwrite":"Перезаписати існуючі","importResults":"Результати імпорту","preferences":"Налаштування","imported":"Імпортовано","failed":"Помилка","sessions":"Сесії","importedLabel":"імпортовано","skipped":"пропущено","documents":"Документи","errors":"Помилки"},"about":{"title":"Про програму","versionLabel":"Версія","ollama":{"title":"Статус Ollama","version":"Версія","healthy":"Працює","unhealthy":"Не працює"},"stats":{"models":"Моделі","sessions":"Сесії"},"features":{"privacy":{"title":"Приватність перш за все","description":"Ваші дані залишаються на вашому пристрої"},"openSource":{"title":"Відкритий код","description":"Безкоштовне програмне забезпечення з відкритим кодом"},"localInference":{"title":"Локальний інференс","description":"Запускайте AI-моделі локально з Ollama"}},"openSourceBy":"Відкритий код від {{company}}","links":{"title":"Посилання","github":"GitHub","githubDescription":"Переглянути вихідний код та зробити внесок","website":"Веб-сайт","websiteDescription":"Відвідайте наш веб-сайт","ollama":"Ollama","ollamaDescription":"Дізнайтеся більше про Ollama","documentation":"Документація","reportIssue":"Повідомити про проблему","reportIssueDescription":"Звіти про помилки та запити функцій","gitlab":"Дзеркало GitLab","gitlabDescription":"Самостійно розміщений репозиторій GitLab","documentationDescription":"Посібники, навчальні матеріали та довідник API"},"version":"Версія {{version}}"}}`),models:{title:`Моделі`,subtitle:`Завантажуйте, керуйте та моніторте ваші моделі Ollama`,installed:`Встановлені моделі`,available:`Доступні моделі`,pull:`Завантажити модель`,pulling:`Завантаження...`,delete:`Видалити модель`,deleting:`Видалення...`,size:`Розмір`,modified:`Змінено`,family:`Сімейство`,parameters:`Параметри`,quantization:`Квантизація`,noModels:`Моделі не встановлено`,pullFirst:`Завантажте модель, щоб почати`,noModelsFound:`Моделей не знайдено`},personas:{title:`Персони`,create:`Створити персону`,edit:`Редагувати персону`,delete:`Видалити персону`,name:`Назва`,description:`Опис`,systemPrompt:`Системний промпт`,model:`Модель`,avatar:`Аватар`,background:`Фон`,noPersonas:`Персони не створено`,createFirst:`Створіть свою першу персону, щоб налаштувати досвід чату`},gallery:{title:`Галерея`,subtitle:`Ваша галерея зображень, згенерованих AI`,imageCount:`{{count}} зображень`,generate:`Згенерувати зображення`,generateDescription:`Створюйте зображення за допомогою AI`,generating:`Генерація...`,prompt:`Промпт`,promptPlaceholder:`Опишіть зображення, яке хочете згенерувати...`,noImages:`Зображення ще не згенеровано`,download:`Завантажити`,delete:`Видалити`,regenerate:`Перегенерувати`,model:`Модель`,size:`Розмір`,quality:`Якість`,created:`Створено`},errors:{generic:`Сталася помилка`,network:`Помилка мережі. Перевірте підключення.`,unauthorized:`У вас немає дозволу на виконання цієї дії.`,notFound:`Запитуваний ресурс не знайдено.`,serverError:`Помилка сервера. Спробуйте пізніше.`,validation:`Перевірте введені дані та спробуйте ще раз.`},keyboard:{title:`Гарячі клавіші`,toggleSidebar:`Перемкнути бічну панель`,openSettings:`Відкрити налаштування`,toggleDarkMode:`Перемкнути темний режим`,showShortcuts:`Показати гарячі клавіші`,closeModals:`Закрити модальні вікна`,groups:{navigation:`Навігація`,settings:`Налаштування`,general:`Загальні`,chat:`Чат`},actions:{sendMessage:`Надіслати повідомлення`,newLine:`Новий рядок у повідомленні`},footer:`Натисніть {{key1}} або {{key2}}, щоб показати цю довідку`,tooltip:`Гарячі клавіші`},modelManager:{title:`Моделі`,loading:`Завантаження моделей...`,systemStatus:{online:`Ollama онлайн`,offline:`Ollama офлайн`,models:`модель`,models_plural:`моделей`,running:`працює`,vram:`VRAM`},sections:{pull:`Завантажити нову модель`,library:`Переглянути бібліотеку`,running:`Запущені моделі`,local:`Локальні моделі`,advanced:`Розширені дії`,huggingface:`HuggingFace Hub`},pull:{placeholder:`Введіть назву моделі (напр., llama3.2:3b, deepseek-r1:14b)`,button:`Завантажити`,cancel:`Скасувати`,popular:`Популярні моделі:`,browseAll:`Переглянути всі моделі на ollama.com`,success:`Модель {{name}} успішно завантажено`,cancelled:`Завантаження моделі скасовано`,failed:`Не вдалося завантажити модель`,enterName:`Введіть назву моделі`,restricted:`Встановлення моделей у цьому екземплярі доступне лише адміністраторам.`},progress:{starting:`Ініціалізація...`,pulling:`Завантаження моделі...`,pullingLayer:`завантаження`,verifying:`Перевірка цілісності...`,verifyingDigest:`перевірка sha256 дайджесту`,writing:`Запис маніфесту...`,cleaning:`Очищення...`},library:{available:`доступно`,search:`Пошук моделей...`,noResults:`Моделі, що відповідають критеріям, не знайдено`,installed:`Встановлено`,more:`+{{count}} ще`,refresh:`Оновити бібліотеку`},local:{noModels:`Моделі ще не встановлено`,pullToStart:`Завантажте модель вище, щоб почати`,installed:`встановлено`,running:`Працює`,info:`Інфо`,copy:`Копіювати`,delete:`Видалити`,deleteConfirm:`Ви впевнені, що хочете видалити модель "{{name}}"?`,deleteSuccess:`Модель {{name}} успішно видалено`,deleteFailed:`Не вдалося видалити модель`},advanced:{createModel:`Створити модель`,fromModelfile:`З Modelfile`,copyModel:`Копіювати модель`,duplicateExisting:`Дублювати існуючу`,testEmbeddings:`Тестувати ембединги`,generateVectors:`Генерувати вектори`,healthCheck:`Перевірка справності`,testConnection:`Тест підключення`,healthy:`Ollama справний!`},modals:{details:{title:`Деталі моделі`,info:`Інформація про модель`,family:`Сімейство`,parameters:`Параметри`,quantization:`Квантизація`,format:`Формат`,systemPrompt:`Системний промпт`,template:`Шаблон`,license:`Ліцензія`,modelfile:`Modelfile`,noDetails:`Деталі недоступні`},copy:{title:`Копіювати модель`,source:`Вихідна модель`,selectModel:`Виберіть модель...`,newName:`Нова назва моделі`,placeholder:`напр., my-custom-model`,copying:`Копіювання...`,button:`Копіювати модель`,success:`Модель скопійовано як {{name}}`,failed:`Не вдалося скопіювати модель`,enterBoth:`Введіть назву вихідної та цільової моделі`},create:{title:`Створити власну модель`,name:`Назва моделі`,namePlaceholder:`напр., my-assistant`,modelfile:`Modelfile`,modelfilePlaceholder:`FROM llama3.2
2
+ SYSTEM You are a helpful assistant.`,see:`Див.`,docs:`Документація Modelfile`,docsLink:`для довідки з синтаксису`,creating:`Створення...`,button:`Створити модель`,success:`Модель {{name}} успішно створено`,failed:`Не вдалося створити модель`,enterBoth:`Введіть назву моделі та вміст Modelfile`},embeddings:{title:`Тестувати ембединги`,model:`Модель ембедингів`,selectModel:`Виберіть модель...`,recommended:`Рекомендовано: nomic-embed-text, mxbai-embed-large`,input:`Вхідний текст`,placeholder:`Введіть текст для генерації ембедингів...`,generating:`Генерація...`,button:`Згенерувати ембединги`,result:`Результат ({{count}} вимірів)`,success:`Згенеровано {{count}}-вимірний вектор ембедингу`,failed:`Не вдалося згенерувати ембединги`,enterBoth:`Виберіть модель та введіть текст`}},huggingface:{browseAll:`Переглянути все на HuggingFace`,checkingGguf:`Пошук GGUF-файлів...`,noGgufAvailable:`Немає GGUF-файлів для прямого завантаження в Ollama`,ggufFilesCount:`GGUF-файли ({{count}}) - Завантажити напряму в Ollama`,noModelsFound:`Моделей не знайдено`,noResults:`Моделей не знайдено. Спробуйте змінити пошук або фільтри.`,browseAllLink:`Переглянути все`,search:`Пошук моделей HuggingFace...`,by:`від`,gated:`Обмежений доступ`,viewOnHF:`Переглянути на HuggingFace`,sortDownloads:`Завантаження`,sortLikes:`Вподобання`,sortRecent:`Нещодавні`,taskTextGeneration:`Генерація тексту`,taskTextToSpeech:`Текст у мовлення`,taskTextToImage:`Текст у зображення`,taskSpeechRecognition:`Розпізнавання мовлення`,tasks:{textGen:`Генерація тексту`,tts:`Текст у мовлення`,image:`Текст у зображення`,stt:`Розпізнавання мовлення`},sort:{downloads:`Найбільш завантажувані`,likes:`Найпопулярніші`,recent:`Нещодавно оновлені`}}},personaManager:{title:`Персони`,subtitle:`Створюйте та керуйте AI-персонами з унікальними особистостями, пам'яттю та поведінкою`,loading:`Завантаження персон...`,createButton:`Створити персону`,importExport:`Імпорт/Експорт`,stats:{title:`Ваші персони`,count:`{{count}} персона створена`,count_plural:`{{count}} персон створено`},empty:{title:`Персон ще немає`,description:`Створіть свою першу персону, щоб почати персоналізовану взаємодію з AI`,button:`Створити першу персону`},deleteConfirm:`Ви впевнені, що хочете видалити "{{name}}"?`,deleteSuccess:`Персону "{{name}}" успішно видалено`,downloadSuccess:`Персону "{{name}}" успішно завантажено`,failed:`Не вдалося {{action}} персону`},personaForm:{title:{create:`Створити нову персону`,edit:`Редагувати персону`},subtitle:{create:`Створіть нову AI-персону з унікальною особистістю, системою пам'яті та адаптивним навчанням`,edit:`Налаштуйте вашу AI-персону з розширеною пам'яттю, адаптивним навчанням та інтелектуальними параметрами`},loading:`Завантаження форми...`,saved:`Збережено`,tabs:{basic:`Основне`,parameters:`Параметри`,memory:`Пам'ять і навчання`,advanced:`Розширене`},basic:{name:`Назва`,namePlaceholder:`Введіть назву персони`,model:`Модель`,selectModel:`Виберіть модель`,description:`Опис`,descriptionPlaceholder:`Опишіть вашу персону...`,systemPrompt:`Системний промпт`,systemPromptPlaceholder:`Введіть системний промпт, який визначає поведінку персони...`,systemPromptHint:`Системний промпт визначає, як ваша персона буде поводитися та відповідати.`},parameters:{temperature:`Температура`,temperatureHint:`Контролює креативність vs послідовність`,topP:`Top-P`,topPHint:`Контролює різноманітність відповідей`,topK:`Top-K`,topKHint:`Обмежує словник до top-k токенів`,contextWindow:`Контекстне вікно`,contextWindowHint:`Максимальна довжина історії розмови`,maxTokens:`Макс. токенів`,maxTokensHint:`Максимальна довжина відповіді`,repeatPenalty:`Штраф за повторення`,repeatPenaltyHint:`Зменшує повторювані відповіді`},memory:{title:`Система пам'яті`,subtitle:`Персона запам'ятовує розмови з часом`,enableHint:`Увімкніть систему пам'яті, щоб ваша персона запам'ятовувала розмови та будувала контекст з часом.`,loading:`Завантаження статусу пам'яті...`,noData:`Даних пам'яті ще немає`,memories:`Спогади`,mbUsed:`МБ використано`,lastBackup:`Останній бекап`,never:`Ніколи`,maxMemories:`Максимум спогадів`,maxMemoriesHint:`Скільки спогадів може зберігати персона`,retention:`Збереження пам'яті`,retentionHint:`Днів зберігання спогадів до очищення`,autoCleanup:`Автоочищення старих спогадів`,wipeAll:`Очистити всі спогади`,wipeCannot:`Цю дію неможливо скасувати`,wipeButton:`Очистити`,wiping:`Очищення...`,wipeConfirm:`Ви впевнені, що хочете очистити всі спогади? Цю дію неможливо скасувати.`,wipeSuccess:`Очищено {{count}} спогадів`},learning:{title:`Адаптивне навчання`,subtitle:`Персона еволюціонує на основі взаємодій`,enableHint:`Увімкніть адаптивне навчання, щоб персона еволюціонувала та персоналізувала відповіді на основі ваших взаємодій.`,speed:`Швидкість навчання`,slow:`Повільна`,slowDesc:`Поступові зміни`,balanced:`Збалансована`,balancedDesc:`Помірний темп`,fast:`Швидка`,fastDesc:`Швидка адаптація`,autoAdapt:`Автоадаптація до вподобань користувача`,whatLearns:`Що вивчає персона:`,conversationTone:`Тон розмови`,responseStyle:`Стиль відповідей`,userPreferences:`Вподобання користувача`,topicInterests:`Інтереси щодо тем`},advanced:{embeddingModel:`Модель ембедингів`,embeddingHint:`Виберіть модель для кодування пам'яті та семантичного пошуку. Моделі ембедингів показані першими, потім інші доступні моделі.`,noModels:`Моделі не знайдено`,embeddingModels:`Моделі ембедингів`,otherModels:`Інші моделі`,installHint:`Встановіть модель ембедингів:`,recommended:`Рекомендовано: nomic-embed-text, mxbai-embed-large, bge-m3, snowflake-arctic-embed`,aboutTitle:`Про розширені налаштування`,aboutDescription:`Модель ембедингів використовується системою пам'яті для розуміння семантичного значення та пошуку релевантних спогадів під час розмов. Виберіть модель, що відповідає вашому випадку використання та доступним ресурсам.`},actions:{cancel:`Скасувати`,save:`Зберегти`,saving:`Збереження...`,saveClose:`Зберегти і закрити`,create:`Створити`},success:{created:`Персону створено`,updated:`Персону оновлено`},error:{saveFailed:`Не вдалося зберегти`}},personaCard:{enhanced:`Покращена`,systemPrompt:`Системний промпт`,memories:`спогадів`,use:`Використати`,editTooltip:`Редагувати персону`,downloadTooltip:`Завантажити персону`,backup:`Бекап`,exportDNA:`Експорт ДНК`,wipeMemories:`Очистити спогади`,wipeConfirm:`Ви впевнені, що хочете очистити всі спогади цієї персони? Цю дію неможливо скасувати.`,wipeSuccess:`Очищено {{count}} спогадів`,backupSuccess:`Бекап персони успішно завантажено`,dnaSuccess:`ДНК персони успішно експортовано`,failed:`Не вдалося {{action}}`},userManager:{title:`Керування користувачами`,subtitle:`Керуйте обліковими записами та дозволами користувачів`,pageDescription:`Керуйте обліковими записами користувачів, дозволами та контролем доступу для вашого екземпляра Libre WebUI.`,loading:`Завантаження користувачів...`,createUser:`Створити користувача`,search:`Пошук користувачів...`,noUsers:`Користувачів не знайдено`,noUsersMatching:`Користувачів, що відповідають пошуку, не знайдено`,columns:{user:`Користувач`,email:`Електронна пошта`,role:`Роль`,created:`Створено`,actions:`Дії`},roles:{admin:`Адміністратор`,user:`Користувач`},noEmail:`Пошта не вказана`,deleteConfirm:`Ви впевнені, що хочете видалити користувача "{{name}}"?`,deleteSuccess:`Користувача успішно видалено`,deleteFailed:`Не вдалося видалити користувача`,cannotDeleteSelf:`Ви не можете видалити власний обліковий запис`,form:{title:{create:`Створити користувача`,edit:`Редагувати користувача`},username:`Ім'я користувача`,usernamePlaceholder:`Введіть ім'я користувача`,email:`Електронна пошта`,emailPlaceholder:`Введіть пошту (необов'язково)`,password:`Пароль`,passwordPlaceholder:`Введіть пароль`,passwordHint:`Залиште порожнім, щоб зберегти поточний пароль`,role:`Роль`,creating:`Створення...`,updating:`Оновлення...`,createButton:`Створити користувача`,updateButton:`Оновити користувача`,createSuccess:`Користувача успішно створено`,updateSuccess:`Користувача успішно оновлено`,createFailed:`Не вдалося створити користувача`,updateFailed:`Не вдалося оновити користувача`}},chatMessage:{you:`Ви`,assistant:`Асистент`,system:`Система`,copy:`Копіювати`,copyMessage:`Копіювати повідомлення`,copied:`Скопійовано!`,regenerate:`Перегенерувати`,regenerateResponse:`Перегенерувати відповідь`,edit:`Редагувати`,editSystemMessage:`Редагувати системне повідомлення`,saveChanges:`Зберегти зміни`,cancelEditing:`Скасувати редагування`,delete:`Видалити`,deleteConfirm:`Видалити це повідомлення?`,branch:`Гілка`,speaking:`Озвучення...`,speakMessage:`Озвучити повідомлення`,stopSpeaking:`Зупинити озвучення`,showMore:`Показати більше`,showLess:`Показати менше`,thinking:`Обмірковує`,systemMessagePlaceholder:`Введіть системне повідомлення...`,fullSizeImage:`Повнорозмірне зображення`,startConversation:`Почати розмову`,startConversationDescription:`Надішліть повідомлення, щоб почати спілкування з AI-асистентом. Ставте запитання, отримуйте допомогу з кодом або ведіть звичайну розмову.`,scrollToBottom:`Прокрутити донизу`,newMessages:`Нові повідомлення`},imageGallery:{title:`Галерея зображень`,noImages:`Зображень ще немає`,noImagesHint:`Згенеруйте перше зображення за допомогою панелі праворуч`,delete:`Видалити`,download:`Завантажити`,deleteConfirm:`Ви впевнені, що хочете видалити це зображення?`,deleteSuccess:`Зображення видалено`,deleteFailed:`Не вдалося видалити зображення`,downloadFailed:`Не вдалося завантажити зображення`,loadMore:`Завантажити ще ({{current}} з {{total}})`,loadFailed:`Не вдалося завантажити галерею`},imageGeneration:{title:`Згенерувати зображення`,prompt:`Промпт`,promptPlaceholder:`Опишіть зображення, яке хочете створити...`,model:`Модель`,selectModel:`Виберіть модель`,noModels:`Моделі генерації зображень недоступні`,configurePlugin:`Налаштуйте плагін з підтримкою генерації зображень`,size:`Розмір`,quality:`Якість`,style:`Стиль`,generate:`Згенерувати`,generating:`Генерація...`,success:`Зображення успішно згенеровано`,failed:`Не вдалося згенерувати зображення`,enterPrompt:`Введіть промпт`,promptTooLong:`Промпт перевищує максимальну довжину в {{max}} символів`},errorBoundary:{title:`Щось пішло не так`,description:`Виникла неочікувана помилка. Спробуйте оновити сторінку.`,tryAgain:`Оновити сторінку`,goHome:`На головну`,errorDetails:`Деталі помилки (розробка)`},documents:{title:`Документи`,upload:`Завантажити документ`,uploading:`Завантаження...`,noDocuments:`Документи не завантажено`,uploadHint:`Завантажте документи для використання в розмовах`,delete:`Видалити`,deleteConfirm:`Ви впевнені, що хочете видалити цей документ?`,deleteSuccess:`Документ видалено`,deleteFailed:`Не вдалося видалити документ`,uploadSuccess:`Документ успішно завантажено`,uploadFailed:`Не вдалося завантажити документ`,types:`Підтримується: PDF, TXT, MD, DOCX`,unsupportedFileType:`Підтримуються лише файли PDF та TXT`,fileSizeTooLarge:`Розмір файлу має бути менше 10 МБ`,uploadSuccessWithName:`Документ "{{name}}" успішно завантажено`,removeSuccess:`Документ успішно видалено`,removeFailed:`Не вдалося видалити документ`,removeError:`Сталася помилка при видаленні документа`,clickToUpload:`Натисніть, щоб завантажити`,orDragAndDrop:`або перетягніть`,fileTypesAndSize:`PDF або TXT файли до 10 МБ`,uploadedDocuments:`Завантажені документи`,removeDocument:`Видалити документ`},ttsButton:{speak:`Озвучити`,stop:`Зупинити`,speaking:`Озвучення...`,generateFailed:`Не вдалося згенерувати мовлення`,playbackFailed:`Помилка відтворення аудіо`,stopSpeaking:`Зупинити озвучення`,generatingSpeech:`Генерація мовлення...`,readAloud:`Прочитати вголос`},artifacts:{title:`Артефакти`,code:`Код`,preview:`Попередній перегляд`,copy:`Копіювати код`,copied:`Скопійовано!`,download:`Завантажити`,expand:`Розгорнути`,collapse:`Згорнути`,openInNewTab:`Відкрити в новій вкладці`,invalidSvg:`Недійсний SVG-вміст`,invalidJson:`Недійсний JSON-вміст`,previewMode:`Режим перегляду`,codeMode:`Режим коду`,copyContent:`Копіювати вміст`,openInPanel:`Відкрити в панелі`,openInNewWindow:`Відкрити в новому вікні`,created:`Створено`,closePanelEsc:`Закрити панель (Esc)`,copyButton:`Копіювати`,open:`Відкрити`,dragEdgeToResize:`Перетягніть край для зміни розміру`,previewUnavailable:`Preview unavailable`,previewUnavailableDescription:`This artifact does not contain renderable preview content. Switch to code view to inspect the source.`},personaImportExport:{title:`Імпорт та експорт персон`,description:`Експортуйте персони, щоб поділитися ними, або імпортуйте персони інших`,exportPersonas:`Експорт персон`,importPersonas:`Імпорт персон`,noPersonasToExport:`Немає персон для експорту`,personasAvailable:`{{count}} персона доступна`,personasAvailable_plural:`{{count}} персон доступно`,exportAll:`Експортувати всі`,uploadJsonFile:`Завантажити JSON-файл`,pasteJsonLabel:`Вставити JSON-дані`,pasteJsonPlaceholder:`Вставте JSON-дані персони сюди...`,importing:`Імпорт...`,importButton:`Імпортувати персону(и)`,expectedFormat:`Очікуваний формат JSON:`,exportSuccess:`Персону "{{name}}" успішно експортовано`,exportFailed:`Не вдалося експортувати персону`,exportAllSuccess:`Усі {{count}} персон успішно експортовано`,exportAllFailed:`Не вдалося експортувати персони`,pasteJsonData:`Вставте JSON-дані персони`,importMultipleSuccess:`Успішно імпортовано {{count}} персон`,importMultipleFailed:`Не вдалося імпортувати {{count}} персон`,importNoneFailed:`Не вдалося імпортувати жодної персони`,importSuccess:`Персону успішно імпортовано`,importFailed:`Не вдалося імпортувати персону`},generationStats:{details:`Деталі`,promptTokens:`Токени промпту:`,generatedTokens:`Згенеровані токени:`,totalTokens:`Всього токенів:`,speed:`Швидкість:`,promptEval:`Оцінка промпту:`,generation:`Генерація:`,modelLoad:`Завантаження моделі:`,totalTime:`Загальний час:`,generatedAt:`Згенеровано о:`},userMenu:{loggedOut:`Вихід виконано успішно`,pictureUpdated:`Фото профілю оновлено`,failedUpdateAvatar:`Не вдалося оновити аватар`,failedUpdatePicture:`Не вдалося оновити фото профілю`,noEmail:`Email не вказано`,changePicture:`Змінити фото`,settings:`Налаштування`,userManagement:`Керування користувачами`,signOut:`Вийти`,changeProfilePicture:`Змінити фото профілю`},pluginManager:{title:`Менеджер плагінів`,upload:`Завантажити`,addJson:`Додати JSON`,browseHF:`Переглянути HF Hub`,confirmDelete:`Ви впевнені, що хочете видалити цей плагін?`,uploading:`Завантаження плагіну...`,pasteJson:`Вставте JSON плагіну тут...`,installPlugin:`Встановити плагін`,loading:`Завантаження плагінів...`,noPlugins:`Немає встановлених плагінів`,noPluginsDescription:`Завантажте файл плагіну або додайте плагін з JSON.`,active:`Активний`,id:`ID`,endpoint:`Ендпоінт`,activate:`Активувати`,deactivate:`Деактивувати`,activePlugin:`Активний плагін`,activePluginDescription:`Усі запити чату будуть спрямовані через цей плагін`,variables:{title:`Змінні`,save:`Зберегти`,saving:`Збереження...`,saved:`Змінні збережені`,saveFailed:`Не вдалося зберегти змінні`,resetDefaults:`Скинути до стандартних`,reset:`Змінні скинуті`,sensitiveSet:`Значення встановлено (введіть нове для зміни)`}},huggingface:{title:`Браузер моделей HuggingFace`,subtitle:`Переглядайте та обирайте моделі з Hub`,searchPlaceholder:`Пошук моделей...`,filters:`Фільтри`,task:`Завдання`,sortBy:`Сортувати за`,noModels:`Моделей не знайдено`,adjustSearch:`Спробуйте змінити пошуковий запит або фільтри`,gated:`Обмежений`,selected:`Обрано`,select:`Обрати`,refresh:`Оновити`,modelsFound:`моделей знайдено`},demoMode:{title:`Демо-режим`,github:`GitHub`},personaBackground:{label:`Фонове зображення`,uploadBackgroundImage:`Завантажити фонове зображення`,dragAndDrop:`Перетягніть зображення або натисніть для вибору`,chooseImage:`Вибрати зображення`,uploading:`Завантаження...`,enterImageUrl:`Або введіть URL зображення`,supportedFormats:`Підтримує: JPG, PNG, GIF, WebP (макс. 5МБ). Широкі альбомні зображення працюють найкраще.`,customBackground:`Користувацьке фонове зображення`,clickToChange:`Натисніть для зміни або видалення`,removed:`Фон видалено`,uploaded:`Фон успішно завантажено`,invalidFile:`Будь ласка, виберіть дійсний файл зображення`,fileTooLarge:`Розмір фонового зображення має бути менше 5МБ`,readFailed:`Не вдалося прочитати файл зображення`,uploadFailed:`Не вдалося завантажити фонове зображення`},modelSelector:{searchInstalled:`Пошук встановлених моделей...`,searchOllama:`Пошук у бібліотеці Ollama...`,searchHuggingFace:`Пошук на HuggingFace...`,selectModel:`Вибрати модель`,personas:`Персони`,ollamaModels:`Моделі Ollama`,pluginModels:`Моделі плагінів`,actions:`Дії`,installed:`Встановлено`,use:`Використати`,pull:`Завантажити`,pullRestricted:`Встановлення моделей у цьому екземплярі доступне лише адміністраторам.`,adminOnlyPull:`Лише адміністратори`},libreClaw:{title:`Libre Claw`,subtitle:`Запуски локального агента, затвердження, графіки, пам’ять, інструменти та використання.`,dashboard:`Панель керування`,connection:{disconnectedTitle:`Демон Libre Claw не підключено`,disconnectedDescription:`Запустіть його локально за допомогою <command>libre-claw start</command> або встановіть <env>LIBRE_CLAW_BASE_URL</env> у серверному середовищі.`},status:{connected:`Підключено`,disconnected:`Відключено`,activeRuns:`{{count}} активний`,activeRuns_plural:`{{count}} активний`},states:{queued:`У черзі`,running:`Виконується`,blocked:`заблоковано`,done:`Готово`,failed:`Не вдалося`,cancelled:`Скасовано`},startRun:{title:`Запустити виконання агента`,placeholder:`Попросіть Libre Claw перевірити репо, виправити помилку, запустити перевірку, запланувати звіт...`,chatRun:`Запуск чату`,goalMode:`Режим цілі`,providerOverride:`Заміна постачальника`,modelOverride:`Перевизначення моделі`,run:`Запустити`},modelRoute:{title:`Модельний маршрут`,providerPlaceholder:`провайдер`,modelPlaceholder:`модель`,persistGlobal:`Зберігайте Libre Claw глобальну конфігурацію`,saveModel:`Зберегти модель`,theme:`Тема Libre Claw`,saveTheme:`Зберегти тему`},runs:{title:`Запуски`,empty:`Запусків Libre Claw ще немає.`},timeline:{title:`Хронологія виконання`,empty:`Виберіть запуск, щоб перевірити його події.`,streaming:`Потокове передавання...`,assistantResponse:`Відповідь помічника`,resultOk:`добре`,resultError:`помилка`,labels:{userMessage:`Повідомлення користувача`,toolCall:`Виклик інструменту`,toolResult:`Результат інструменту`,approvalRequest:`Запит на схвалення`,approvalResponse:`Відповідь схвалення`,runStarted:`Запуск розпочато`,runFinished:`Запуск завершено`,usage:`Використання`,error:`Помилка`}},approvals:{needed:`Потрібне схвалення`,allowOnce:`Дозвольте один раз`,alwaysAllowTool:`Завжди дозволяти інструмент`,deny:`Відхилити`,toolApprovalRequested:`Запит на схвалення інструменту`},automations:{title:`Автоматизації`,namePlaceholder:`Ім'я`,schedulePlaceholder:`daily 09:00`,promptPlaceholder:`Підказка автоматизації`,create:`Створити`,empty:`Немає запланованих автоматизацій Libre Claw.`,runNow:`Запустити зараз`,pause:`Пауза`,resume:`Відновити`,routes:{report:`звіт`,telegram:`Telegram`},status:{active:`Активний`,paused:`Призупинено`}},usageFallback:{title:`Використання та резервний варіант`,usage:`Використання`,fallbackRoute:`Запасний маршрут`,noUsage:`Записів про використання ще немає.`},metrics:{provider:`Провайдер`,model:`Модель`,input:`Введення`,output:`Вихід`,cached:`Кешовано`,reasoning:`Міркування`,cost:`Вартість`,tool:`Інструмент`,resolution:`роздільна здатність`,state:`Стан`,stopReason:`Причина зупинки`,tokens:`{{formatted}} лексема`,tokens_plural:`{{formatted}} лексеми`},fallbacks:{tool:`інструмент`,unknown:`невідомий`,resolved:`вирішено`,unknownError:`Невідома помилка`},toasts:{loadStatusFailed:`Не вдалося завантажити статус Libre Claw`,enterTask:`Введіть завдання до Libre Claw`,runStarted:`Запуск Libre Claw розпочато`,startRunFailed:`Не вдалося запустити Libre Claw`,runCancelled:`Запуск скасовано`,cancelRunFailed:`Не вдалося скасувати запуск`,approved:`Затверджено`,denied:`Відмовлено`,resolvePermissionFailed:`Не вдалося вирішити дозвіл`,providerModelRequired:`Необхідні постачальник і модель`,modelUpdated:`Модель Libre Claw оновлено`,updateModelFailed:`Не вдалося оновити модель`,themeUpdated:`Тему Libre Claw оновлено`,updateThemeFailed:`Не вдалося оновити тему`,automationRequired:`Потрібні ім’я автоматизації, розклад і підказка`,automationCreated:`Автоматика створена`,createAutomationFailed:`Не вдалося створити автоматизацію`,automationUpdated:`Автоматика оновлена`,updateAutomationFailed:`Не вдалося оновити автоматизацію`}}};export{e as default};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-QTnfLwEv.js";import{d as t,f as n}from"./markdown-core-fkbHPd-g.js";import{$ as r,H as i,J as a,Q as o,U as s,W as c,X as l,Y as u,Z as d,at as f,ct as p,et as m,it as h,lt as g,nt as _,ot as v,q as y,rt as b,st as x,tt as S,ut as C}from"../assets/index-ONn9VIq7.js";var w,T,E,D,O,k,A,j,M,N,P,F,I,L,R,z,ee=(w=new WeakMap,T=new WeakMap,E=new WeakMap,D=new WeakMap,O=new WeakMap,k=new WeakMap,A=new WeakMap,j=new WeakMap,M=new WeakMap,N=new WeakMap,P=new WeakMap,F=new WeakMap,I=new WeakMap,L=new WeakMap,R=new WeakMap,z=new WeakSet,class extends l{constructor(e,t){super(),c(this,z),C(this,w,void 0),C(this,T,void 0),C(this,E,void 0),C(this,D,void 0),C(this,O,void 0),C(this,k,void 0),C(this,A,void 0),C(this,j,void 0),C(this,M,void 0),C(this,N,void 0),C(this,P,void 0),C(this,F,void 0),C(this,I,void 0),C(this,L,void 0),C(this,R,new Set),this.options=t,x(w,this,e),x(j,this,null),x(A,this,y()),this.bindMethods(),this.setOptions(t)}bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(p(T,this).addObserver(this),J(p(T,this),this.options)?g(z,this,B).call(this):this.updateResult(),g(z,this,W).call(this))}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Y(p(T,this),this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Y(p(T,this),this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,g(z,this,G).call(this),g(z,this,K).call(this),p(T,this).removeObserver(this)}setOptions(e){let t=this.options,n=p(T,this);if(this.options=p(w,this).defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof S(this.options.enabled,p(T,this))!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);g(z,this,q).call(this),p(T,this).setOptions(this.options),t._defaulted&&!b(this.options,t)&&p(w,this).getQueryCache().notify({type:`observerOptionsUpdated`,query:p(T,this),observer:this});let r=this.hasListeners();r&&X(p(T,this),n,this.options,t)&&g(z,this,B).call(this),this.updateResult(),r&&(p(T,this)!==n||S(this.options.enabled,p(T,this))!==S(t.enabled,p(T,this))||_(this.options.staleTime,p(T,this))!==_(t.staleTime,p(T,this)))&&g(z,this,V).call(this);let i=g(z,this,H).call(this);r&&(p(T,this)!==n||S(this.options.enabled,p(T,this))!==S(t.enabled,p(T,this))||i!==p(L,this))&&g(z,this,U).call(this,i)}getOptimisticResult(e){let t=p(w,this).getQueryCache().build(p(w,this),e),n=this.createResult(t,e);return re(this,n)&&(x(D,this,n),x(k,this,this.options),x(O,this,p(T,this).state)),n}getCurrentResult(){return p(D,this)}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&p(A,this).status===`pending`&&p(A,this).reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){p(R,this).add(e)}getCurrentQuery(){return p(T,this)}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=p(w,this).defaultQueryOptions(e),n=p(w,this).getQueryCache().build(p(w,this),t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return g(z,this,B).call(this,{...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),p(D,this)))}createResult(e,t){let n=p(T,this),r=this.options,i=p(D,this),a=p(O,this),o=p(k,this),c=e===n?p(E,this):e.state,{state:l}=e,u={...l},d=!1,f;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&J(e,t),o=i&&X(e,n,t,r);(a||o)&&(u={...u,...s(l.data,e.options)}),t._optimisticResults===`isRestoring`&&(u.fetchStatus=`idle`)}let{error:h,errorUpdatedAt:g,status:_}=u;f=u.data;let v=!1;if(t.placeholderData!==void 0&&f===void 0&&_===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,v=!0):e=typeof t.placeholderData==`function`?t.placeholderData(p(P,this)?.state.data,p(P,this)):t.placeholderData,e!==void 0&&(_=`success`,f=m(i?.data,e,t),d=!0)}if(t.select&&f!==void 0&&!v)if(i&&f===a?.data&&t.select===p(M,this))f=p(N,this);else try{x(M,this,t.select),f=t.select(f),f=m(i?.data,f,t),x(N,this,f),x(j,this,null)}catch(e){x(j,this,e)}p(j,this)&&(h=p(j,this),f=p(N,this),g=Date.now(),_=`error`);let b=u.fetchStatus===`fetching`,C=_===`pending`,w=_===`error`,F=C&&b,I=f!==void 0,L={status:_,fetchStatus:u.fetchStatus,isPending:C,isSuccess:_===`success`,isError:w,isInitialLoading:F,isLoading:F,data:f,dataUpdatedAt:u.dataUpdatedAt,error:h,errorUpdatedAt:g,failureCount:u.fetchFailureCount,failureReason:u.fetchFailureReason,errorUpdateCount:u.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:u.dataUpdateCount>c.dataUpdateCount||u.errorUpdateCount>c.errorUpdateCount,isFetching:b,isRefetching:b&&!C,isLoadingError:w&&!I,isPaused:u.fetchStatus===`paused`,isPlaceholderData:d,isRefetchError:w&&I,isStale:Z(e,t),refetch:this.refetch,promise:p(A,this),isEnabled:S(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=L.data!==void 0,r=L.status===`error`&&!t,i=e=>{r?e.reject(L.error):t&&e.resolve(L.data)},a=()=>{i(x(A,this,L.promise=y()))},o=p(A,this);switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||L.data!==o.value)&&a();break;case`rejected`:(!r||L.error!==o.reason)&&a();break}}return L}updateResult(){let e=p(D,this),t=this.createResult(p(T,this),this.options);x(O,this,p(T,this).state),x(k,this,this.options),p(O,this).data!==void 0&&x(P,this,p(T,this)),!b(t,e)&&(x(D,this,t),g(z,this,te).call(this,{listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!p(R,this).size)return!0;let r=new Set(n??p(R,this));return this.options.throwOnError&&r.add(`error`),Object.keys(p(D,this)).some(t=>{let n=t;return p(D,this)[n]!==e[n]&&r.has(n)})})()}))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&g(z,this,W).call(this)}});function B(e){g(z,this,q).call(this);let t=p(T,this).fetch(this.options,e);return e?.throwOnError||(t=t.catch(r)),t}function V(){g(z,this,G).call(this);let e=_(this.options.staleTime,p(T,this));if(d.isServer()||p(D,this).isStale||!o(e))return;let t=f(p(D,this).dataUpdatedAt,e)+1;x(F,this,v.setTimeout(()=>{p(D,this).isStale||this.updateResult()},t))}function H(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(p(T,this)):this.options.refetchInterval)??!1}function U(e){g(z,this,K).call(this),x(L,this,e),!(d.isServer()||S(this.options.enabled,p(T,this))===!1||!o(p(L,this))||p(L,this)===0)&&x(I,this,v.setInterval(()=>{(this.options.refetchIntervalInBackground||u.isFocused())&&g(z,this,B).call(this)},p(L,this)))}function W(){g(z,this,V).call(this),g(z,this,U).call(this,g(z,this,H).call(this))}function G(){p(F,this)!==void 0&&(v.clearTimeout(p(F,this)),x(F,this,void 0))}function K(){p(I,this)!==void 0&&(v.clearInterval(p(I,this)),x(I,this,void 0))}function q(){let e=p(w,this).getQueryCache().build(p(w,this),this.options);if(e===p(T,this))return;let t=p(T,this);x(T,this,e),x(E,this,e.state),this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}function te(e){a.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(p(D,this))}),p(w,this).getQueryCache().notify({query:p(T,this),type:`observerResultsUpdated`})})}function ne(e,t){return S(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&S(t.retryOnMount,e)===!1)}function J(e,t){return ne(e,t)||e.state.data!==void 0&&Y(e,t,t.refetchOnMount)}function Y(e,t,n){if(S(t.enabled,e)!==!1&&_(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&Z(e,t)}return!1}function X(e,t,n,r){return(e!==t||S(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&Z(e,n)}function Z(e,t){return S(t.enabled,e)!==!1&&e.isStaleByTime(_(t.staleTime,e))}function re(e,t){return!b(e.getCurrentResult(),t)}var Q=e(n(),1);t();function ie(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var ae=Q.createContext(ie()),oe=()=>Q.useContext(ae),se=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?h(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},ce=e=>{Q.useEffect(()=>{e.clearReset()},[e])},le=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||h(n,[e.error,r])),$=Q.createContext(!1),ue=()=>Q.useContext($);$.Provider;var de=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},fe=(e,t)=>e.isLoading&&e.isFetching&&!t,pe=(e,t)=>e?.suspense&&t.isPending,me=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function he(e,t,n){let o=ue(),s=oe(),c=i(n),l=c.defaultQueryOptions(e);c.getDefaultOptions().queries?._experimental_beforeQuery?.(l);let u=c.getQueryCache().get(l.queryHash),f=e.subscribed!==!1;l._optimisticResults=o?`isRestoring`:f?`optimistic`:void 0,de(l),se(l,s,u),ce(s);let p=!c.getQueryCache().get(l.queryHash),[m]=Q.useState(()=>new t(c,l)),h=m.getOptimisticResult(l),g=!o&&f;if(Q.useSyncExternalStore(Q.useCallback(e=>{let t=g?m.subscribe(a.batchCalls(e)):r;return m.updateResult(),t},[m,g]),()=>m.getCurrentResult(),()=>m.getCurrentResult()),Q.useEffect(()=>{m.setOptions(l)},[l,m]),pe(l,h))throw me(l,m,s);if(le({result:h,errorResetBoundary:s,throwOnError:l.throwOnError,query:u,suspense:l.suspense}))throw h.error;return c.getDefaultOptions().queries?._experimental_afterQuery?.(l,h),l.experimental_prefetchInRender&&!d.isServer()&&fe(h,o)&&(p?me(l,m,s):u?.promise)?.catch(r).finally(()=>{m.updateResult()}),l.notifyOnChangeProps?h:m.trackResult(h)}export{ee as n,he as t};
@@ -0,0 +1 @@
1
+ import{n as e,t}from"./useBaseQuery-6OJiOiyu.js";function n(n,r){return t(n,e,r)}export{n as t};
@@ -1 +1 @@
1
- import{n as e,r as t}from"./utils-vendor-B2ZBL57Y.js";function n(...n){return e(t(n))}function r(e){let t=new Date(e),n=new Date().getTime()-t.getTime(),r=Math.floor(n/(1e3*60)),i=Math.floor(n/(1e3*60*60)),a=Math.floor(n/(1e3*60*60*24));return r<1?`Just now`:r<60?`${r}m ago`:i<24?`${i}h ago`:a<7?`${a}d ago`:t.toLocaleDateString()}function i(){return Math.random().toString(36).substring(2)+Date.now().toString(36)}function a(e,t){return e.length<=t?e:e.substring(0,t)+`...`}function o(e){let t=/^\[Thinking:\s*([\s\S]*?)\]\s*/i,n=/^<thinking>([\s\S]*?)<\/thinking>\s*/i,r=e.match(t);if(r)return{thinking:r[1].trim(),content:e.slice(r[0].length).trim()};let i=e.match(n);return i?{thinking:i[1].trim(),content:e.slice(i[0].length).trim()}:{thinking:null,content:e}}export{a,o as i,r as n,i as r,n as t};
1
+ import{n as e,r as t}from"./utils-vendor-BX3ZwoIK.js";function n(...n){return e(t(n))}function r(e){let t=new Date(e),n=new Date().getTime()-t.getTime(),r=Math.floor(n/(1e3*60)),i=Math.floor(n/(1e3*60*60)),a=Math.floor(n/(1e3*60*60*24));return r<1?`Just now`:r<60?`${r}m ago`:i<24?`${i}h ago`:a<7?`${a}d ago`:t.toLocaleDateString()}function i(){return Math.random().toString(36).substring(2)+Date.now().toString(36)}function a(e,t){return e.length<=t?e:e.substring(0,t)+`...`}function o(e){let t=/^\[Thinking:\s*([\s\S]*?)\]\s*/i,n=/^<thinking>([\s\S]*?)<\/thinking>\s*/i,r=e.match(t);if(r)return{thinking:r[1].trim(),content:e.slice(r[0].length).trim()};let i=e.match(n);return i?{thinking:i[1].trim(),content:e.slice(i[0].length).trim()}:{thinking:null,content:e}}export{a,o as i,r as n,i as r,n as t};