@nextclaw/ui 0.20.0 → 0.20.1
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.
- package/CHANGELOG.md +18 -0
- package/dist/assets/{api-C2iYhdTe.js → api-BBFMpRGl.js} +1 -1
- package/dist/assets/{appearance-settings-page-BwQDQr0n.js → appearance-settings-page-C1Erayzl.js} +1 -1
- package/dist/assets/{book-open-C0IlT9zs.js → book-open-BhTIpBKg.js} +1 -1
- package/dist/assets/{channels-list-page-B0z4bh8e.js → channels-list-page-OTCkjMOW.js} +1 -1
- package/dist/assets/{config-split-page-VDTf3zZb.js → config-split-page-By7p-4X-.js} +1 -1
- package/dist/assets/{confirm-dialog-BI_Vt2s_.js → confirm-dialog-xpl1Yl7r.js} +1 -1
- package/dist/assets/{createLucideIcon-Bydi9Gc5.js → createLucideIcon-B_8khHn8.js} +1 -1
- package/dist/assets/{desktop-update-config-DVoD6NxG.js → desktop-update-config-CGFfa7-Z.js} +1 -1
- package/dist/assets/{dist-CmHtkFbs.js → dist-CXN62DSs.js} +1 -1
- package/dist/assets/{dist-A5btQciA.js → dist-DdE-kCbi.js} +1 -1
- package/dist/assets/{doc-browser-Cm_tMZ_C.js → doc-browser-5xrHcQ2z.js} +1 -1
- package/dist/assets/doc-browser-c2yO477-.js +1 -0
- package/dist/assets/{doc-browser-context-Bxw0ora-.js → doc-browser-context-B8NCuMv5.js} +1 -1
- package/dist/assets/{extensions-CG4voDCh.js → extensions-CMctxyTf.js} +1 -1
- package/dist/assets/{form-actions-lv47uGIB.js → form-actions-BFgTdxqI.js} +1 -1
- package/dist/assets/index-DUCA8m2w.js +109 -0
- package/dist/assets/loader-circle-CbdTrSp3.js +1 -0
- package/dist/assets/{mcp-marketplace-page-BSk0qUOX.js → mcp-marketplace-page-DGve0muV.js} +1 -1
- package/dist/assets/mcp-marketplace-page-_37VzG2q.js +1 -0
- package/dist/assets/{model-config-page-c8RnUGoH.js → model-config-page-DyC5H0bu.js} +1 -1
- package/dist/assets/{navigation-link-D0agTj5t.js → navigation-link-BwWrm4k1.js} +1 -1
- package/dist/assets/plus-DbeE4r-Q.js +1 -0
- package/dist/assets/{privacy-settings-page-CPkyTvEE.js → privacy-settings-page--MOnhAZ6.js} +1 -1
- package/dist/assets/{providers-config-page-CGUEb5Dx.js → providers-config-page-ChL3FUvK.js} +1 -1
- package/dist/assets/react-DVMmnPWz.js +8 -0
- package/dist/assets/{refresh-cw-DjgY2Eju.js → refresh-cw-B7NmPJ_Z.js} +1 -1
- package/dist/assets/remote-DFoxj4ls.js +1 -0
- package/dist/assets/{rotate-cw-Dot4PVh0.js → rotate-cw-B0ajMaHu.js} +1 -1
- package/dist/assets/{runtime-config-page-C6nzqTHg.js → runtime-config-page-BQdT3nmd.js} +1 -1
- package/dist/assets/{save-B-jdTe_c.js → save-DWnYYpgQ.js} +1 -1
- package/dist/assets/{search-CEp2AIiV.js → search-D6pX7FC-.js} +1 -1
- package/dist/assets/{search-config-page-Dp5guS5O.js → search-config-page-Cx3o_675.js} +1 -1
- package/dist/assets/{secrets-config-page-C7nRMjiv.js → secrets-config-page-tyFl7Rvt.js} +1 -1
- package/dist/assets/security-config-CUTUm6JT.js +1 -0
- package/dist/assets/{select-BNA3cma8.js → select-qEtFTWB5.js} +1 -1
- package/dist/assets/skeleton-7MYPzn8w.js +1 -0
- package/dist/assets/{tag-chip-DmCNi4-9.js → tag-chip-vcjAYdV_.js} +1 -1
- package/dist/assets/x-DThaS5ZL.js +1 -0
- package/dist/index.html +20 -20
- package/package.json +7 -7
- package/src/features/chat/features/message/components/chat-message-list.container.tsx +33 -4
- package/src/features/chat/features/message/utils/__tests__/chat-message-file-operation.utils.test.ts +186 -0
- package/src/features/chat/features/message/utils/__tests__/chat-message-texts.utils.test.ts +9 -0
- package/src/features/chat/features/message/utils/__tests__/chat-message-timeline.utils.test.ts +71 -0
- package/src/features/chat/features/message/utils/__tests__/chat-message-trigger-details.utils.test.ts +112 -0
- package/src/features/chat/features/message/utils/chat-message-part.utils.ts +1 -1
- package/src/features/chat/features/message/utils/chat-message-texts.utils.ts +36 -0
- package/src/features/chat/features/message/utils/chat-message-trigger-details.utils.ts +118 -0
- package/src/features/chat/features/ncp/hooks/__tests__/use-ncp-agent-runtime.test.tsx +90 -1
- package/src/features/chat/features/session/utils/ncp-session-context-metadata.utils.ts +5 -1
- package/src/features/chat/features/workspace/components/__tests__/chat-session-workspace-panel-content.test.tsx +5 -5
- package/src/features/chat/features/workspace/components/chat-session-workspace-panel-content.tsx +3 -40
- package/src/features/chat/managers/__tests__/chat-completion-notification.manager.test.ts +70 -0
- package/src/features/chat/managers/chat-completion-notification.manager.ts +23 -6
- package/src/shared/lib/i18n/locales/en-US/chat.json +21 -0
- package/src/shared/lib/i18n/locales/zh-CN/chat.json +21 -0
- package/dist/assets/doc-browser-Dto54tCf.js +0 -1
- package/dist/assets/index-BTSwNDVi.js +0 -109
- package/dist/assets/loader-circle-CkaqeEne.js +0 -1
- package/dist/assets/mcp-marketplace-page-BgZGc-S_.js +0 -1
- package/dist/assets/plus-BiMjkv3R.js +0 -1
- package/dist/assets/react-BMYFkaGi.js +0 -8
- package/dist/assets/remote-1LxkpRED.js +0 -1
- package/dist/assets/security-config-DvHUDxSg.js +0 -1
- package/dist/assets/skeleton-CbroEO8Q.js +0 -1
- package/dist/assets/x-BTo5-A8h.js +0 -1
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import{i as e,t}from"./chunk-DseTPa7n.js";var n=t((e=>{var t=Symbol.for(`react.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.provider`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.iterator;function p(e){return typeof e!=`object`||!e?null:(e=f&&e[f]||e[`@@iterator`],typeof e==`function`?e:null)}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},h=Object.assign,g={};function _(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}_.prototype.isReactComponent={},_.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`setState(...): takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},_.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function v(){}v.prototype=_.prototype;function y(e,t,n){this.props=e,this.context=t,this.refs=g,this.updater=n||m}var b=y.prototype=new v;b.constructor=y,h(b,_.prototype),b.isPureReactComponent=!0;var ee=Array.isArray,te=Object.prototype.hasOwnProperty,x={current:null},ne={key:!0,ref:!0,__self:!0,__source:!0};function re(e,n,r){var i,a={},o=null,s=null;if(n!=null)for(i in n.ref!==void 0&&(s=n.ref),n.key!==void 0&&(o=``+n.key),n)te.call(n,i)&&!ne.hasOwnProperty(i)&&(a[i]=n[i]);var c=arguments.length-2;if(c===1)a.children=r;else if(1<c){for(var l=Array(c),u=0;u<c;u++)l[u]=arguments[u+2];a.children=l}if(e&&e.defaultProps)for(i in c=e.defaultProps,c)a[i]===void 0&&(a[i]=c[i]);return{$$typeof:t,type:e,key:o,ref:s,props:a,_owner:x.current}}function ie(e,n){return{$$typeof:t,type:e.type,key:n,ref:e.ref,props:e.props,_owner:e._owner}}function ae(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function S(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var oe=/\/+/g;function se(e,t){return typeof e==`object`&&e&&e.key!=null?S(``+e.key):t.toString(36)}function ce(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0}}if(c)return c=e,o=o(c),e=a===``?`.`+se(c,0):a,ee(o)?(i=``,e!=null&&(i=e.replace(oe,`$&/`)+`/`),ce(o,r,i,``,function(e){return e})):o!=null&&(ae(o)&&(o=ie(o,i+(!o.key||c&&c.key===o.key?``:(``+o.key).replace(oe,`$&/`)+`/`)+e)),r.push(o)),1;if(c=0,a=a===``?`.`:a+`:`,ee(e))for(var l=0;l<e.length;l++){s=e[l];var u=a+se(s,l);c+=ce(s,r,i,u,o)}else if(u=p(e),typeof u==`function`)for(e=u.call(e),l=0;!(s=e.next()).done;)s=s.value,u=a+se(s,l++),c+=ce(s,r,i,u,o);else if(s===`object`)throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`);return c}function C(e,t,n){if(e==null)return e;var r=[],i=0;return ce(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function le(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var w={current:null},T={transition:null},ue={ReactCurrentDispatcher:w,ReactCurrentBatchConfig:T,ReactCurrentOwner:x};function de(){throw Error(`act(...) is not supported in production builds of React.`)}e.Children={map:C,forEach:function(e,t,n){C(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return C(e,function(){t++}),t},toArray:function(e){return C(e,function(e){return e})||[]},only:function(e){if(!ae(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}},e.Component=_,e.Fragment=r,e.Profiler=a,e.PureComponent=y,e.StrictMode=i,e.Suspense=l,e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ue,e.act=de,e.cloneElement=function(e,n,r){if(e==null)throw Error(`React.cloneElement(...): The argument must be a React element, but you passed `+e+`.`);var i=h({},e.props),a=e.key,o=e.ref,s=e._owner;if(n!=null){if(n.ref!==void 0&&(o=n.ref,s=x.current),n.key!==void 0&&(a=``+n.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(l in n)te.call(n,l)&&!ne.hasOwnProperty(l)&&(i[l]=n[l]===void 0&&c!==void 0?c[l]:n[l])}var l=arguments.length-2;if(l===1)i.children=r;else if(1<l){c=Array(l);for(var u=0;u<l;u++)c[u]=arguments[u+2];i.children=c}return{$$typeof:t,type:e.type,key:a,ref:o,props:i,_owner:s}},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:o,_context:e},e.Consumer=e},e.createElement=re,e.createFactory=function(e){var t=re.bind(null,e);return t.type=e,t},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=ae,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:le}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=T.transition;T.transition={};try{e()}finally{T.transition=t}},e.unstable_act=de,e.useCallback=function(e,t){return w.current.useCallback(e,t)},e.useContext=function(e){return w.current.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e){return w.current.useDeferredValue(e)},e.useEffect=function(e,t){return w.current.useEffect(e,t)},e.useId=function(){return w.current.useId()},e.useImperativeHandle=function(e,t,n){return w.current.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.current.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.current.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.current.useMemo(e,t)},e.useReducer=function(e,t,n){return w.current.useReducer(e,t,n)},e.useRef=function(e){return w.current.useRef(e)},e.useState=function(e){return w.current.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.current.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.current.useTransition()},e.version=`18.3.1`})),r=t(((e,t)=>{t.exports=n()})),i=t((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=typeof setTimeout==`function`?setTimeout:null,_=typeof clearTimeout==`function`?clearTimeout:null,v=typeof setImmediate<`u`?setImmediate:null;typeof navigator<`u`&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function y(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function b(e){if(h=!1,y(e),!m)if(n(c)!==null)m=!0,C(ee);else{var t=n(l);t!==null&&le(b,t.startTime-e)}}function ee(t,i){m=!1,h&&(h=!1,_(ne),ne=-1),p=!0;var a=f;try{for(y(i),d=n(c);d!==null&&(!(d.expirationTime>i)||t&&!ae());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=i);i=e.unstable_now(),typeof s==`function`?d.callback=s:d===n(c)&&r(c),y(i)}else r(c);d=n(c)}if(d!==null)var u=!0;else{var g=n(l);g!==null&&le(b,g.startTime-i),u=!1}return u}finally{d=null,f=a,p=!1}}var te=!1,x=null,ne=-1,re=5,ie=-1;function ae(){return!(e.unstable_now()-ie<re)}function S(){if(x!==null){var t=e.unstable_now();ie=t;var n=!0;try{n=x(!0,t)}finally{n?oe():(te=!1,x=null)}}else te=!1}var oe;if(typeof v==`function`)oe=function(){v(S)};else if(typeof MessageChannel<`u`){var se=new MessageChannel,ce=se.port2;se.port1.onmessage=S,oe=function(){ce.postMessage(null)}}else oe=function(){g(S,0)};function C(e){x=e,te||(te=!0,oe())}function le(t,n){ne=g(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_continueExecution=function(){m||p||(m=!0,C(ee))},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):re=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(_(ne),ne=-1):h=!0,le(b,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,C(ee))),r},e.unstable_shouldYield=ae,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),a=t(((e,t)=>{t.exports=i()})),o=t((e=>{var t=r(),n=a();function i(e){for(var t=`https://reactjs.org/docs/error-decoder.html?invariant=`+e,n=1;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n]);return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}var o=new Set,s={};function c(e,t){l(e,t),l(e+`Capture`,t)}function l(e,t){for(s[e]=t,e=0;e<t.length;e++)o.add(t[e])}var u=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),d=Object.prototype.hasOwnProperty,f=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p={},m={};function h(e){return d.call(m,e)?!0:d.call(p,e)?!1:f.test(e)?m[e]=!0:(p[e]=!0,!1)}function g(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case`function`:case`symbol`:return!0;case`boolean`:return r?!1:n===null?(e=e.toLowerCase().slice(0,5),e!==`data-`&&e!==`aria-`):!n.acceptsBooleans;default:return!1}}function _(e,t,n,r){if(t==null||g(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function v(e,t,n,r,i,a,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=i,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var y={};`children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style`.split(` `).forEach(function(e){y[e]=new v(e,0,!1,e,null,!1,!1)}),[[`acceptCharset`,`accept-charset`],[`className`,`class`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`]].forEach(function(e){var t=e[0];y[t]=new v(t,1,!1,e[1],null,!1,!1)}),[`contentEditable`,`draggable`,`spellCheck`,`value`].forEach(function(e){y[e]=new v(e,2,!1,e.toLowerCase(),null,!1,!1)}),[`autoReverse`,`externalResourcesRequired`,`focusable`,`preserveAlpha`].forEach(function(e){y[e]=new v(e,2,!1,e,null,!1,!1)}),`allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope`.split(` `).forEach(function(e){y[e]=new v(e,3,!1,e.toLowerCase(),null,!1,!1)}),[`checked`,`multiple`,`muted`,`selected`].forEach(function(e){y[e]=new v(e,3,!0,e,null,!1,!1)}),[`capture`,`download`].forEach(function(e){y[e]=new v(e,4,!1,e,null,!1,!1)}),[`cols`,`rows`,`size`,`span`].forEach(function(e){y[e]=new v(e,6,!1,e,null,!1,!1)}),[`rowSpan`,`start`].forEach(function(e){y[e]=new v(e,5,!1,e.toLowerCase(),null,!1,!1)});var b=/[\-:]([a-z])/g;function ee(e){return e[1].toUpperCase()}`accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height`.split(` `).forEach(function(e){var t=e.replace(b,ee);y[t]=new v(t,1,!1,e,null,!1,!1)}),`xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type`.split(` `).forEach(function(e){var t=e.replace(b,ee);y[t]=new v(t,1,!1,e,`http://www.w3.org/1999/xlink`,!1,!1)}),[`xml:base`,`xml:lang`,`xml:space`].forEach(function(e){var t=e.replace(b,ee);y[t]=new v(t,1,!1,e,`http://www.w3.org/XML/1998/namespace`,!1,!1)}),[`tabIndex`,`crossOrigin`].forEach(function(e){y[e]=new v(e,1,!1,e.toLowerCase(),null,!1,!1)}),y.xlinkHref=new v(`xlinkHref`,1,!1,`xlink:href`,`http://www.w3.org/1999/xlink`,!0,!1),[`src`,`href`,`action`,`formAction`].forEach(function(e){y[e]=new v(e,1,!1,e.toLowerCase(),null,!0,!0)});function te(e,t,n,r){var i=y.hasOwnProperty(t)?y[t]:null;(i===null?r||!(2<t.length)||t[0]!==`o`&&t[0]!==`O`||t[1]!==`n`&&t[1]!==`N`:i.type!==0)&&(_(t,n,i,r)&&(n=null),r||i===null?h(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,``+n)):i.mustUseProperty?e[i.propertyName]=n===null?i.type===3?!1:``:n:(t=i.attributeName,r=i.attributeNamespace,n===null?e.removeAttribute(t):(i=i.type,n=i===3||i===4&&!0===n?``:``+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var x=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,ne=Symbol.for(`react.element`),re=Symbol.for(`react.portal`),ie=Symbol.for(`react.fragment`),ae=Symbol.for(`react.strict_mode`),S=Symbol.for(`react.profiler`),oe=Symbol.for(`react.provider`),se=Symbol.for(`react.context`),ce=Symbol.for(`react.forward_ref`),C=Symbol.for(`react.suspense`),le=Symbol.for(`react.suspense_list`),w=Symbol.for(`react.memo`),T=Symbol.for(`react.lazy`),ue=Symbol.for(`react.offscreen`),de=Symbol.iterator;function fe(e){return typeof e!=`object`||!e?null:(e=de&&e[de]||e[`@@iterator`],typeof e==`function`?e:null)}var E=Object.assign,pe;function me(e){if(pe===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);pe=t&&t[1]||``}return`
|
|
2
|
-
`+pe+e}var he=!1;function ge(e,t){if(!e||he)return``;he=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(t,[])}catch(e){var r=e}Reflect.construct(e,[],t)}else{try{t.call()}catch(e){r=e}e.call(t.prototype)}else{try{throw Error()}catch(e){r=e}e()}}catch(t){if(t&&r&&typeof t.stack==`string`){for(var i=t.stack.split(`
|
|
3
|
-
`),a=r.stack.split(`
|
|
4
|
-
`),o=i.length-1,s=a.length-1;1<=o&&0<=s&&i[o]!==a[s];)s--;for(;1<=o&&0<=s;o--,s--)if(i[o]!==a[s]){if(o!==1||s!==1)do if(o--,s--,0>s||i[o]!==a[s]){var c=`
|
|
5
|
-
`+i[o].replace(` at new `,` at `);return e.displayName&&c.includes(`<anonymous>`)&&(c=c.replace(`<anonymous>`,e.displayName)),c}while(1<=o&&0<=s);break}}}finally{he=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:``)?me(e):``}function _e(e){switch(e.tag){case 5:return me(e.type);case 16:return me(`Lazy`);case 13:return me(`Suspense`);case 19:return me(`SuspenseList`);case 0:case 2:case 15:return e=ge(e.type,!1),e;case 11:return e=ge(e.type.render,!1),e;case 1:return e=ge(e.type,!0),e;default:return``}}function ve(e){if(e==null)return null;if(typeof e==`function`)return e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case ie:return`Fragment`;case re:return`Portal`;case S:return`Profiler`;case ae:return`StrictMode`;case C:return`Suspense`;case le:return`SuspenseList`}if(typeof e==`object`)switch(e.$$typeof){case se:return(e.displayName||`Context`)+`.Consumer`;case oe:return(e._context.displayName||`Context`)+`.Provider`;case ce:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case w:return t=e.displayName||null,t===null?ve(e.type)||`Memo`:t;case T:t=e._payload,e=e._init;try{return ve(e(t))}catch{}}return null}function ye(e){var t=e.type;switch(e.tag){case 24:return`Cache`;case 9:return(t.displayName||`Context`)+`.Consumer`;case 10:return(t._context.displayName||`Context`)+`.Provider`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return ve(t);case 8:return t===ae?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t}return null}function D(e){switch(typeof e){case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function be(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function xe(e){var t=be(e)?`checked`:`value`,n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=``+e[t];if(!e.hasOwnProperty(t)&&n!==void 0&&typeof n.get==`function`&&typeof n.set==`function`){var i=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){r=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Se(e){e._valueTracker||=xe(e)}function Ce(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=be(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function we(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function Te(e,t){var n=t.checked;return E({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Ee(e,t){var n=t.defaultValue==null?``:t.defaultValue,r=t.checked==null?t.defaultChecked:t.checked;n=D(t.value==null?n:t.value),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type===`checkbox`||t.type===`radio`?t.checked!=null:t.value!=null}}function De(e,t){t=t.checked,t!=null&&te(e,`checked`,t,!1)}function Oe(e,t){De(e,t);var n=D(t.value),r=t.type;if(n!=null)r===`number`?(n===0&&e.value===``||e.value!=n)&&(e.value=``+n):e.value!==``+n&&(e.value=``+n);else if(r===`submit`||r===`reset`){e.removeAttribute(`value`);return}t.hasOwnProperty(`value`)?Ae(e,t.type,n):t.hasOwnProperty(`defaultValue`)&&Ae(e,t.type,D(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function ke(e,t,n){if(t.hasOwnProperty(`value`)||t.hasOwnProperty(`defaultValue`)){var r=t.type;if(!(r!==`submit`&&r!==`reset`||t.value!==void 0&&t.value!==null))return;t=``+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==``&&(e.name=``),e.defaultChecked=!!e._wrapperState.initialChecked,n!==``&&(e.name=n)}function Ae(e,t,n){(t!==`number`||we(e.ownerDocument)!==e)&&(n==null?e.defaultValue=``+e._wrapperState.initialValue:e.defaultValue!==``+n&&(e.defaultValue=``+n))}var je=Array.isArray;function Me(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+D(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Ne(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(i(91));return E({},t,{value:void 0,defaultValue:void 0,children:``+e._wrapperState.initialValue})}function Pe(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(i(92));if(je(n)){if(1<n.length)throw Error(i(93));n=n[0]}t=n}t??=``,n=t}e._wrapperState={initialValue:D(n)}}function O(e,t){var n=D(t.value),r=D(t.defaultValue);n!=null&&(n=``+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=``+r)}function Fe(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==``&&t!==null&&(e.value=t)}function Ie(e){switch(e){case`svg`:return`http://www.w3.org/2000/svg`;case`math`:return`http://www.w3.org/1998/Math/MathML`;default:return`http://www.w3.org/1999/xhtml`}}function k(e,t){return e==null||e===`http://www.w3.org/1999/xhtml`?Ie(t):e===`http://www.w3.org/2000/svg`&&t===`foreignObject`?`http://www.w3.org/1999/xhtml`:e}var Le,Re=function(e){return typeof MSApp<`u`&&MSApp.execUnsafeLocalFunction?function(t,n,r,i){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,i)})}:e}(function(e,t){if(e.namespaceURI!==`http://www.w3.org/2000/svg`||`innerHTML`in e)e.innerHTML=t;else{for(Le||=document.createElement(`div`),Le.innerHTML=`<svg>`+t.valueOf().toString()+`</svg>`,t=Le.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function ze(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Be={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Ve=[`Webkit`,`ms`,`Moz`,`O`];Object.keys(Be).forEach(function(e){Ve.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Be[t]=Be[e]})});function He(e,t,n){return t==null||typeof t==`boolean`||t===``?``:n||typeof t!=`number`||t===0||Be.hasOwnProperty(e)&&Be[e]?(``+t).trim():t+`px`}function Ue(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=n.indexOf(`--`)===0,i=He(n,t[n],r);n===`float`&&(n=`cssFloat`),r?e.setProperty(n,i):e[n]=i}}var We=E({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Ge(e,t){if(t){if(We[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(i(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(i(60));if(typeof t.dangerouslySetInnerHTML!=`object`||!(`__html`in t.dangerouslySetInnerHTML))throw Error(i(61))}if(t.style!=null&&typeof t.style!=`object`)throw Error(i(62))}}function Ke(e,t){if(e.indexOf(`-`)===-1)return typeof t.is==`string`;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var qe=null;function Je(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Ye=null,Xe=null,Ze=null;function Qe(e){if(e=Xi(e)){if(typeof Ye!=`function`)throw Error(i(280));var t=e.stateNode;t&&(t=Qi(t),Ye(e.stateNode,e.type,t))}}function $e(e){Xe?Ze?Ze.push(e):Ze=[e]:Xe=e}function et(){if(Xe){var e=Xe,t=Ze;if(Ze=Xe=null,Qe(e),t)for(e=0;e<t.length;e++)Qe(t[e])}}function tt(e,t){return e(t)}function nt(){}var rt=!1;function it(e,t,n){if(rt)return e(t,n);rt=!0;try{return tt(e,t,n)}finally{rt=!1,(Xe!==null||Ze!==null)&&(nt(),et())}}function at(e,t){var n=e.stateNode;if(n===null)return null;var r=Qi(n);if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var ot=!1;if(u)try{var st={};Object.defineProperty(st,`passive`,{get:function(){ot=!0}}),window.addEventListener(`test`,st,st),window.removeEventListener(`test`,st,st)}catch{ot=!1}function ct(e,t,n,r,i,a,o,s,c){var l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}}var lt=!1,ut=null,dt=!1,ft=null,pt={onError:function(e){lt=!0,ut=e}};function mt(e,t,n,r,i,a,o,s,c){lt=!1,ut=null,ct.apply(pt,arguments)}function ht(e,t,n,r,a,o,s,c,l){if(mt.apply(this,arguments),lt){if(lt){var u=ut;lt=!1,ut=null}else throw Error(i(198));dt||(dt=!0,ft=u)}}function gt(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function _t(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function vt(e){if(gt(e)!==e)throw Error(i(188))}function yt(e){var t=e.alternate;if(!t){if(t=gt(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var o=a.alternate;if(o===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===o.child){for(o=a.child;o;){if(o===n)return vt(a),e;if(o===r)return vt(a),t;o=o.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=o;else{for(var s=!1,c=a.child;c;){if(c===n){s=!0,n=a,r=o;break}if(c===r){s=!0,r=a,n=o;break}c=c.sibling}if(!s){for(c=o.child;c;){if(c===n){s=!0,n=o,r=a;break}if(c===r){s=!0,r=o,n=a;break}c=c.sibling}if(!s)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function bt(e){return e=yt(e),e===null?null:xt(e)}function xt(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=xt(e);if(t!==null)return t;e=e.sibling}return null}var St=n.unstable_scheduleCallback,Ct=n.unstable_cancelCallback,wt=n.unstable_shouldYield,Tt=n.unstable_requestPaint,A=n.unstable_now,Et=n.unstable_getCurrentPriorityLevel,Dt=n.unstable_ImmediatePriority,Ot=n.unstable_UserBlockingPriority,kt=n.unstable_NormalPriority,At=n.unstable_LowPriority,jt=n.unstable_IdlePriority,Mt=null,Nt=null;function Pt(e){if(Nt&&typeof Nt.onCommitFiberRoot==`function`)try{Nt.onCommitFiberRoot(Mt,e,void 0,(e.current.flags&128)==128)}catch{}}var Ft=Math.clz32?Math.clz32:Rt,It=Math.log,Lt=Math.LN2;function Rt(e){return e>>>=0,e===0?32:31-(It(e)/Lt|0)|0}var zt=64,Bt=4194304;function Vt(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ht(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,i=e.suspendedLanes,a=e.pingedLanes,o=n&268435455;if(o!==0){var s=o&~i;s===0?(a&=o,a!==0&&(r=Vt(a))):r=Vt(s)}else o=n&~i,o===0?a!==0&&(r=Vt(a)):r=Vt(o);if(r===0)return 0;if(t!==0&&t!==r&&(t&i)===0&&(i=r&-r,a=t&-t,i>=a||i===16&&a&4194240))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Ft(t),i=1<<n,r|=e[n],t&=~i;return r}function Ut(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Wt(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes;0<a;){var o=31-Ft(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Ut(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}}function Gt(e){return e=e.pendingLanes&-1073741825,e===0?e&1073741824?1073741824:0:e}function Kt(){var e=zt;return zt<<=1,!(zt&4194240)&&(zt=64),e}function qt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Jt(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ft(t),e[t]=n}function Yt(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var i=31-Ft(n),a=1<<i;t[i]=0,r[i]=-1,e[i]=-1,n&=~a}}function Xt(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Ft(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}var j=0;function Zt(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var Qt,$t,en,tn,nn,rn=!1,an=[],on=null,sn=null,cn=null,ln=new Map,un=new Map,dn=[],fn=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit`.split(` `);function pn(e,t){switch(e){case`focusin`:case`focusout`:on=null;break;case`dragenter`:case`dragleave`:sn=null;break;case`mouseover`:case`mouseout`:cn=null;break;case`pointerover`:case`pointerout`:ln.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:un.delete(t.pointerId)}}function mn(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=Xi(t),t!==null&&$t(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function hn(e,t,n,r,i){switch(t){case`focusin`:return on=mn(on,e,t,n,r,i),!0;case`dragenter`:return sn=mn(sn,e,t,n,r,i),!0;case`mouseover`:return cn=mn(cn,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return ln.set(a,mn(ln.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,un.set(a,mn(un.get(a)||null,e,t,n,r,i)),!0}return!1}function gn(e){var t=Yi(e.target);if(t!==null){var n=gt(t);if(n!==null){if(t=n.tag,t===13){if(t=_t(n),t!==null){e.blockedOn=t,nn(e.priority,function(){en(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function _n(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=On(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);qe=r,n.target.dispatchEvent(r),qe=null}else return t=Xi(n),t!==null&&$t(t),e.blockedOn=n,!1;t.shift()}return!0}function vn(e,t,n){_n(e)&&n.delete(t)}function yn(){rn=!1,on!==null&&_n(on)&&(on=null),sn!==null&&_n(sn)&&(sn=null),cn!==null&&_n(cn)&&(cn=null),ln.forEach(vn),un.forEach(vn)}function bn(e,t){e.blockedOn===t&&(e.blockedOn=null,rn||(rn=!0,n.unstable_scheduleCallback(n.unstable_NormalPriority,yn)))}function xn(e){function t(t){return bn(t,e)}if(0<an.length){bn(an[0],e);for(var n=1;n<an.length;n++){var r=an[n];r.blockedOn===e&&(r.blockedOn=null)}}for(on!==null&&bn(on,e),sn!==null&&bn(sn,e),cn!==null&&bn(cn,e),ln.forEach(t),un.forEach(t),n=0;n<dn.length;n++)r=dn[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<dn.length&&(n=dn[0],n.blockedOn===null);)gn(n),n.blockedOn===null&&dn.shift()}var Sn=x.ReactCurrentBatchConfig,Cn=!0;function wn(e,t,n,r){var i=j,a=Sn.transition;Sn.transition=null;try{j=1,En(e,t,n,r)}finally{j=i,Sn.transition=a}}function Tn(e,t,n,r){var i=j,a=Sn.transition;Sn.transition=null;try{j=4,En(e,t,n,r)}finally{j=i,Sn.transition=a}}function En(e,t,n,r){if(Cn){var i=On(e,t,n,r);if(i===null)xi(e,t,r,Dn,n),pn(e,r);else if(hn(i,e,t,n,r))r.stopPropagation();else if(pn(e,r),t&4&&-1<fn.indexOf(e)){for(;i!==null;){var a=Xi(i);if(a!==null&&Qt(a),a=On(e,t,n,r),a===null&&xi(e,t,r,Dn,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else xi(e,t,r,null,n)}}var Dn=null;function On(e,t,n,r){if(Dn=null,e=Je(r),e=Yi(e),e!==null)if(t=gt(e),t===null)e=null;else if(n=t.tag,n===13){if(e=_t(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Dn=e,null}function kn(e){switch(e){case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 1;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`toggle`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 4;case`message`:switch(Et()){case Dt:return 1;case Ot:return 4;case kt:case At:return 16;case jt:return 536870912;default:return 16}default:return 16}}var An=null,jn=null,Mn=null;function Nn(){if(Mn)return Mn;var e,t=jn,n=t.length,r,i=`value`in An?An.value:An.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return Mn=i.slice(e,1<r?1-r:void 0)}function Pn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Fn(){return!0}function In(){return!1}function Ln(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?Fn:In,this.isPropagationStopped=In,this}return E(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=Fn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=Fn)},persist:function(){},isPersistent:Fn}),t}var Rn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},zn=Ln(Rn),Bn=E({},Rn,{view:0,detail:0}),Vn=Ln(Bn),Hn,Un,Wn,Gn=E({},Bn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:nr,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Wn&&(Wn&&e.type===`mousemove`?(Hn=e.screenX-Wn.screenX,Un=e.screenY-Wn.screenY):Un=Hn=0,Wn=e),Hn)},movementY:function(e){return`movementY`in e?e.movementY:Un}}),Kn=Ln(Gn),qn=Ln(E({},Gn,{dataTransfer:0})),Jn=Ln(E({},Bn,{relatedTarget:0})),Yn=Ln(E({},Rn,{animationName:0,elapsedTime:0,pseudoElement:0})),Xn=Ln(E({},Rn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Zn=Ln(E({},Rn,{data:0})),Qn={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},$n={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},er={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function tr(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=er[e])?!!t[e]:!1}function nr(){return tr}var rr=Ln(E({},Bn,{key:function(e){if(e.key){var t=Qn[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=Pn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?$n[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:nr,charCode:function(e){return e.type===`keypress`?Pn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?Pn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),ir=Ln(E({},Gn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),ar=Ln(E({},Bn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:nr})),or=Ln(E({},Rn,{propertyName:0,elapsedTime:0,pseudoElement:0})),sr=Ln(E({},Gn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),cr=[9,13,27,32],lr=u&&`CompositionEvent`in window,ur=null;u&&`documentMode`in document&&(ur=document.documentMode);var dr=u&&`TextEvent`in window&&!ur,fr=u&&(!lr||ur&&8<ur&&11>=ur),pr=` `,mr=!1;function hr(e,t){switch(e){case`keyup`:return cr.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function gr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var _r=!1;function vr(e,t){switch(e){case`compositionend`:return gr(t);case`keypress`:return t.which===32?(mr=!0,pr):null;case`textInput`:return e=t.data,e===pr&&mr?null:e;default:return null}}function yr(e,t){if(_r)return e===`compositionend`||!lr&&hr(e,t)?(e=Nn(),Mn=jn=An=null,_r=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return fr&&t.locale!==`ko`?null:t.data;default:return null}}var br={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function xr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!br[e.type]:t===`textarea`}function Sr(e,t,n,r){$e(r),t=Ci(t,`onChange`),0<t.length&&(n=new zn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var Cr=null,wr=null;function Tr(e){gi(e,0)}function Er(e){if(Ce(Zi(e)))return e}function Dr(e,t){if(e===`change`)return t}var Or=!1;if(u){var kr;if(u){var Ar=`oninput`in document;if(!Ar){var jr=document.createElement(`div`);jr.setAttribute(`oninput`,`return;`),Ar=typeof jr.oninput==`function`}kr=Ar}else kr=!1;Or=kr&&(!document.documentMode||9<document.documentMode)}function Mr(){Cr&&(Cr.detachEvent(`onpropertychange`,Nr),wr=Cr=null)}function Nr(e){if(e.propertyName===`value`&&Er(wr)){var t=[];Sr(t,wr,e,Je(e)),it(Tr,t)}}function Pr(e,t,n){e===`focusin`?(Mr(),Cr=t,wr=n,Cr.attachEvent(`onpropertychange`,Nr)):e===`focusout`&&Mr()}function Fr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Er(wr)}function Ir(e,t){if(e===`click`)return Er(t)}function Lr(e,t){if(e===`input`||e===`change`)return Er(t)}function Rr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var zr=typeof Object.is==`function`?Object.is:Rr;function Br(e,t){if(zr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!d.call(t,i)||!zr(e[i],t[i]))return!1}return!0}function Vr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Hr(e,t){var n=Vr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Vr(n)}}function Ur(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ur(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Wr(){for(var e=window,t=we();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=we(e.document)}return t}function Gr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}function Kr(e){var t=Wr(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Ur(n.ownerDocument.documentElement,n)){if(r!==null&&Gr(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),`selectionStart`in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var i=n.textContent.length,a=Math.min(r.start,i);r=r.end===void 0?a:Math.min(r.end,i),!e.extend&&a>r&&(i=r,r=a,a=i),i=Hr(n,a);var o=Hr(n,r);i&&o&&(e.rangeCount!==1||e.anchorNode!==i.node||e.anchorOffset!==i.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(i.node,i.offset),e.removeAllRanges(),a>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus==`function`&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var qr=u&&`documentMode`in document&&11>=document.documentMode,Jr=null,Yr=null,Xr=null,Zr=!1;function Qr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Zr||Jr==null||Jr!==we(r)||(r=Jr,`selectionStart`in r&&Gr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Xr&&Br(Xr,r)||(Xr=r,r=Ci(Yr,`onSelect`),0<r.length&&(t=new zn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Jr)))}function $r(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var ei={animationend:$r(`Animation`,`AnimationEnd`),animationiteration:$r(`Animation`,`AnimationIteration`),animationstart:$r(`Animation`,`AnimationStart`),transitionend:$r(`Transition`,`TransitionEnd`)},ti={},ni={};u&&(ni=document.createElement(`div`).style,`AnimationEvent`in window||(delete ei.animationend.animation,delete ei.animationiteration.animation,delete ei.animationstart.animation),`TransitionEvent`in window||delete ei.transitionend.transition);function ri(e){if(ti[e])return ti[e];if(!ei[e])return e;var t=ei[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in ni)return ti[e]=t[n];return e}var ii=ri(`animationend`),ai=ri(`animationiteration`),oi=ri(`animationstart`),si=ri(`transitionend`),ci=new Map,li=`abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);function ui(e,t){ci.set(e,t),c(t,[e])}for(var di=0;di<li.length;di++){var fi=li[di];ui(fi.toLowerCase(),`on`+(fi[0].toUpperCase()+fi.slice(1)))}ui(ii,`onAnimationEnd`),ui(ai,`onAnimationIteration`),ui(oi,`onAnimationStart`),ui(`dblclick`,`onDoubleClick`),ui(`focusin`,`onFocus`),ui(`focusout`,`onBlur`),ui(si,`onTransitionEnd`),l(`onMouseEnter`,[`mouseout`,`mouseover`]),l(`onMouseLeave`,[`mouseout`,`mouseover`]),l(`onPointerEnter`,[`pointerout`,`pointerover`]),l(`onPointerLeave`,[`pointerout`,`pointerover`]),c(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),c(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),c(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),c(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),c(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),c(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var pi=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),mi=new Set(`cancel close invalid load scroll toggle`.split(` `).concat(pi));function hi(e,t,n){var r=e.type||`unknown-event`;e.currentTarget=n,ht(r,t,void 0,e),e.currentTarget=null}function gi(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;hi(i,s,l),a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;hi(i,s,l),a=c}}}if(dt)throw e=ft,dt=!1,ft=null,e}function M(e,t){var n=t[Ki];n===void 0&&(n=t[Ki]=new Set);var r=e+`__bubble`;n.has(r)||(bi(t,e,2,!1),n.add(r))}function _i(e,t,n){var r=0;t&&(r|=4),bi(n,e,r,t)}var vi=`_reactListening`+Math.random().toString(36).slice(2);function yi(e){if(!e[vi]){e[vi]=!0,o.forEach(function(t){t!==`selectionchange`&&(mi.has(t)||_i(t,!1,e),_i(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[vi]||(t[vi]=!0,_i(`selectionchange`,!1,t))}}function bi(e,t,n,r){switch(kn(t)){case 1:var i=wn;break;case 4:i=Tn;break;default:i=En}n=i.bind(null,t,n,e),i=void 0,!ot||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function xi(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===i||s.nodeType===8&&s.parentNode===i)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===i||c.nodeType===8&&c.parentNode===i))return;o=o.return}for(;s!==null;){if(o=Yi(s),o===null)return;if(c=o.tag,c===5||c===6){r=a=o;continue a}s=s.parentNode}}r=r.return}it(function(){var r=a,i=Je(n),o=[];a:{var s=ci.get(e);if(s!==void 0){var c=zn,l=e;switch(e){case`keypress`:if(Pn(n)===0)break a;case`keydown`:case`keyup`:c=rr;break;case`focusin`:l=`focus`,c=Jn;break;case`focusout`:l=`blur`,c=Jn;break;case`beforeblur`:case`afterblur`:c=Jn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:c=Kn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:c=qn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:c=ar;break;case ii:case ai:case oi:c=Yn;break;case si:c=or;break;case`scroll`:c=Vn;break;case`wheel`:c=sr;break;case`copy`:case`cut`:case`paste`:c=Xn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:c=ir}var u=(t&4)!=0,d=!u&&e===`scroll`,f=u?s===null?null:s+`Capture`:s;u=[];for(var p=r,m;p!==null;){m=p;var h=m.stateNode;if(m.tag===5&&h!==null&&(m=h,f!==null&&(h=at(p,f),h!=null&&u.push(Si(p,h,m)))),d)break;p=p.return}0<u.length&&(s=new c(s,l,null,n,i),o.push({event:s,listeners:u}))}}if(!(t&7)){a:{if(s=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,s&&n!==qe&&(l=n.relatedTarget||n.fromElement)&&(Yi(l)||l[Gi]))break a;if((c||s)&&(s=i.window===i?i:(s=i.ownerDocument)?s.defaultView||s.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?Yi(l):null,l!==null&&(d=gt(l),l!==d||l.tag!==5&&l.tag!==6)&&(l=null)):(c=null,l=r),c!==l)){if(u=Kn,h=`onMouseLeave`,f=`onMouseEnter`,p=`mouse`,(e===`pointerout`||e===`pointerover`)&&(u=ir,h=`onPointerLeave`,f=`onPointerEnter`,p=`pointer`),d=c==null?s:Zi(c),m=l==null?s:Zi(l),s=new u(h,p+`leave`,c,n,i),s.target=d,s.relatedTarget=m,h=null,Yi(i)===r&&(u=new u(f,p+`enter`,l,n,i),u.target=m,u.relatedTarget=d,h=u),d=h,c&&l)b:{for(u=c,f=l,p=0,m=u;m;m=wi(m))p++;for(m=0,h=f;h;h=wi(h))m++;for(;0<p-m;)u=wi(u),p--;for(;0<m-p;)f=wi(f),m--;for(;p--;){if(u===f||f!==null&&u===f.alternate)break b;u=wi(u),f=wi(f)}u=null}else u=null;c!==null&&Ti(o,s,c,u,!1),l!==null&&d!==null&&Ti(o,d,l,u,!0)}}a:{if(s=r?Zi(r):window,c=s.nodeName&&s.nodeName.toLowerCase(),c===`select`||c===`input`&&s.type===`file`)var g=Dr;else if(xr(s))if(Or)g=Lr;else{g=Fr;var _=Pr}else (c=s.nodeName)&&c.toLowerCase()===`input`&&(s.type===`checkbox`||s.type===`radio`)&&(g=Ir);if(g&&=g(e,r)){Sr(o,g,n,i);break a}_&&_(e,s,r),e===`focusout`&&(_=s._wrapperState)&&_.controlled&&s.type===`number`&&Ae(s,`number`,s.value)}switch(_=r?Zi(r):window,e){case`focusin`:(xr(_)||_.contentEditable===`true`)&&(Jr=_,Yr=r,Xr=null);break;case`focusout`:Xr=Yr=Jr=null;break;case`mousedown`:Zr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Zr=!1,Qr(o,n,i);break;case`selectionchange`:if(qr)break;case`keydown`:case`keyup`:Qr(o,n,i)}var v;if(lr)b:{switch(e){case`compositionstart`:var y=`onCompositionStart`;break b;case`compositionend`:y=`onCompositionEnd`;break b;case`compositionupdate`:y=`onCompositionUpdate`;break b}y=void 0}else _r?hr(e,n)&&(y=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(y=`onCompositionStart`);y&&(fr&&n.locale!==`ko`&&(_r||y!==`onCompositionStart`?y===`onCompositionEnd`&&_r&&(v=Nn()):(An=i,jn=`value`in An?An.value:An.textContent,_r=!0)),_=Ci(r,y),0<_.length&&(y=new Zn(y,e,null,n,i),o.push({event:y,listeners:_}),v?y.data=v:(v=gr(n),v!==null&&(y.data=v)))),(v=dr?vr(e,n):yr(e,n))&&(r=Ci(r,`onBeforeInput`),0<r.length&&(i=new Zn(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:i,listeners:r}),i.data=v))}gi(o,t)})}function Si(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Ci(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;i.tag===5&&a!==null&&(i=a,a=at(e,n),a!=null&&r.unshift(Si(e,a,i)),a=at(e,t),a!=null&&r.push(Si(e,a,i))),e=e.return}return r}function wi(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function Ti(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(c!==null&&c===r)break;s.tag===5&&l!==null&&(s=l,i?(c=at(n,a),c!=null&&o.unshift(Si(n,c,s))):i||(c=at(n,a),c!=null&&o.push(Si(n,c,s)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Ei=/\r\n?/g,Di=/\u0000|\uFFFD/g;function Oi(e){return(typeof e==`string`?e:``+e).replace(Ei,`
|
|
6
|
-
`).replace(Di,``)}function ki(e,t,n){if(t=Oi(t),Oi(e)!==t&&n)throw Error(i(425))}function Ai(){}var ji=null,Mi=null;function Ni(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Pi=typeof setTimeout==`function`?setTimeout:void 0,Fi=typeof clearTimeout==`function`?clearTimeout:void 0,Ii=typeof Promise==`function`?Promise:void 0,Li=typeof queueMicrotask==`function`?queueMicrotask:Ii===void 0?Pi:function(e){return Ii.resolve(null).then(e).catch(Ri)};function Ri(e){setTimeout(function(){throw e})}function zi(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`){if(r===0){e.removeChild(i),xn(t);return}r--}else n!==`$`&&n!==`$?`&&n!==`$!`||r++;n=i}while(n);xn(t)}function Bi(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`)break;if(t===`/$`)return null}}return e}function Vi(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`){if(t===0)return e;t--}else n===`/$`&&t++}e=e.previousSibling}return null}var Hi=Math.random().toString(36).slice(2),Ui=`__reactFiber$`+Hi,Wi=`__reactProps$`+Hi,Gi=`__reactContainer$`+Hi,Ki=`__reactEvents$`+Hi,qi=`__reactListeners$`+Hi,Ji=`__reactHandles$`+Hi;function Yi(e){var t=e[Ui];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Gi]||n[Ui]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=Vi(e);e!==null;){if(n=e[Ui])return n;e=Vi(e)}return t}e=n,n=e.parentNode}return null}function Xi(e){return e=e[Ui]||e[Gi],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function Zi(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(i(33))}function Qi(e){return e[Wi]||null}var $i=[],ea=-1;function ta(e){return{current:e}}function N(e){0>ea||(e.current=$i[ea],$i[ea]=null,ea--)}function P(e,t){ea++,$i[ea]=e.current,e.current=t}var na={},F=ta(na),ra=ta(!1),ia=na;function aa(e,t){var n=e.type.contextTypes;if(!n)return na;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var i={},a;for(a in n)i[a]=t[a];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function oa(e){return e=e.childContextTypes,e!=null}function sa(){N(ra),N(F)}function ca(e,t,n){if(F.current!==na)throw Error(i(168));P(F,t),P(ra,n)}function la(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!=`function`)return n;for(var a in r=r.getChildContext(),r)if(!(a in t))throw Error(i(108,ye(e)||`Unknown`,a));return E({},n,r)}function ua(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||na,ia=F.current,P(F,e),P(ra,ra.current),!0}function da(e,t,n){var r=e.stateNode;if(!r)throw Error(i(169));n?(e=la(e,t,ia),r.__reactInternalMemoizedMergedChildContext=e,N(ra),N(F),P(F,e)):N(ra),P(ra,n)}var fa=null,pa=!1,ma=!1;function ha(e){fa===null?fa=[e]:fa.push(e)}function ga(e){pa=!0,ha(e)}function _a(){if(!ma&&fa!==null){ma=!0;var e=0,t=j;try{var n=fa;for(j=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}fa=null,pa=!1}catch(t){throw fa!==null&&(fa=fa.slice(e+1)),St(Dt,_a),t}finally{j=t,ma=!1}}return null}var va=[],ya=0,ba=null,xa=0,Sa=[],I=0,Ca=null,wa=1,Ta=``;function Ea(e,t){va[ya++]=xa,va[ya++]=ba,ba=e,xa=t}function Da(e,t,n){Sa[I++]=wa,Sa[I++]=Ta,Sa[I++]=Ca,Ca=e;var r=wa;e=Ta;var i=32-Ft(r)-1;r&=~(1<<i),n+=1;var a=32-Ft(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,wa=1<<32-Ft(t)+i|n<<i|r,Ta=a+e}else wa=1<<a|n<<i|r,Ta=e}function Oa(e){e.return!==null&&(Ea(e,1),Da(e,1,0))}function ka(e){for(;e===ba;)ba=va[--ya],va[ya]=null,xa=va[--ya],va[ya]=null;for(;e===Ca;)Ca=Sa[--I],Sa[I]=null,Ta=Sa[--I],Sa[I]=null,wa=Sa[--I],Sa[I]=null}var L=null,Aa=null,R=!1,ja=null;function Ma(e,t){var n=Kl(5,null,null,0);n.elementType=`DELETED`,n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function Na(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t===null?!1:(e.stateNode=t,L=e,Aa=Bi(t.firstChild),!0);case 6:return t=e.pendingProps===``||t.nodeType!==3?null:t,t===null?!1:(e.stateNode=t,L=e,Aa=null,!0);case 13:return t=t.nodeType===8?t:null,t===null?!1:(n=Ca===null?null:{id:wa,overflow:Ta},e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=Kl(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,L=e,Aa=null,!0);default:return!1}}function Pa(e){return(e.mode&1)!=0&&(e.flags&128)==0}function Fa(e){if(R){var t=Aa;if(t){var n=t;if(!Na(e,t)){if(Pa(e))throw Error(i(418));t=Bi(n.nextSibling);var r=L;t&&Na(e,t)?Ma(r,n):(e.flags=e.flags&-4097|2,R=!1,L=e)}}else{if(Pa(e))throw Error(i(418));e.flags=e.flags&-4097|2,R=!1,L=e}}}function Ia(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;L=e}function La(e){if(e!==L)return!1;if(!R)return Ia(e),R=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!==`head`&&t!==`body`&&!Ni(e.type,e.memoizedProps)),t&&=Aa){if(Pa(e))throw Ra(),Error(i(418));for(;t;)Ma(e,t),t=Bi(t.nextSibling)}if(Ia(e),e.tag===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));a:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`){if(t===0){Aa=Bi(e.nextSibling);break a}t--}else n!==`$`&&n!==`$!`&&n!==`$?`||t++}e=e.nextSibling}Aa=null}}else Aa=L?Bi(e.stateNode.nextSibling):null;return!0}function Ra(){for(var e=Aa;e;)e=Bi(e.nextSibling)}function za(){Aa=L=null,R=!1}function Ba(e){ja===null?ja=[e]:ja.push(e)}var Va=x.ReactCurrentBatchConfig;function Ha(e,t,n){if(e=n.ref,e!==null&&typeof e!=`function`&&typeof e!=`object`){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(i(309));var r=n.stateNode}if(!r)throw Error(i(147,e));var a=r,o=``+e;return t!==null&&t.ref!==null&&typeof t.ref==`function`&&t.ref._stringRef===o?t.ref:(t=function(e){var t=a.refs;e===null?delete t[o]:t[o]=e},t._stringRef=o,t)}if(typeof e!=`string`)throw Error(i(284));if(!n._owner)throw Error(i(290,e))}return e}function Ua(e,t){throw e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e))}function Wa(e){var t=e._init;return t(e._payload)}function Ga(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;t!==null;)t.key===null?e.set(t.index,t):e.set(t.key,t),t=t.sibling;return e}function a(e,t){return e=Yl(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=2,n):(r=r.index,r<n?(t.flags|=2,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=2),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=$l(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===ie?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===T&&Wa(i)===t.type)?(r=a(t,n.props),r.ref=Ha(e,t,n),r.return=e,r):(r=Xl(n.type,n.key,n.props,null,e.mode,r),r.ref=Ha(e,t,n),r.return=e,r)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=eu(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=Zl(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`)return t=$l(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case ne:return n=Xl(t.type,t.key,t.props,null,e.mode,n),n.ref=Ha(e,null,t),n.return=e,n;case re:return t=eu(t,e.mode,n),t.return=e,t;case T:var r=t._init;return f(e,r(t._payload),n)}if(je(t)||fe(t))return t=Zl(t,e.mode,n,null),t.return=e,t;Ua(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case ne:return n.key===i?l(e,t,n,r):null;case re:return n.key===i?u(e,t,n,r):null;case T:return i=n._init,p(e,t,i(n._payload),r)}if(je(n)||fe(n))return i===null?d(e,t,n,r,null):null;Ua(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case ne:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case re:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case T:var a=r._init;return m(e,t,n,a(r._payload),i)}if(je(r)||fe(r))return e=e.get(n)||null,d(t,e,r,i,null);Ua(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),R&&Ea(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return R&&Ea(i,h),l}for(d=r(i,d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),R&&Ea(i,h),l}function g(a,s,c,l){var u=fe(c);if(typeof u!=`function`)throw Error(i(150));if(c=u.call(c),c==null)throw Error(i(151));for(var d=u=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),R&&Ea(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return R&&Ea(a,g),u}for(h=r(a,h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),R&&Ea(a,g),u}function _(e,r,i,o){if(typeof i==`object`&&i&&i.type===ie&&i.key===null&&(i=i.props.children),typeof i==`object`&&i){switch(i.$$typeof){case ne:a:{for(var c=i.key,l=r;l!==null;){if(l.key===c){if(c=i.type,c===ie){if(l.tag===7){n(e,l.sibling),r=a(l,i.props.children),r.return=e,e=r;break a}}else if(l.elementType===c||typeof c==`object`&&c&&c.$$typeof===T&&Wa(c)===l.type){n(e,l.sibling),r=a(l,i.props),r.ref=Ha(e,l,i),r.return=e,e=r;break a}n(e,l);break}else t(e,l);l=l.sibling}i.type===ie?(r=Zl(i.props.children,e.mode,o,i.key),r.return=e,e=r):(o=Xl(i.type,i.key,i.props,null,e.mode,o),o.ref=Ha(e,r,i),o.return=e,e=o)}return s(e);case re:a:{for(l=i.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(e,r.sibling),r=a(r,i.children||[]),r.return=e,e=r;break a}else{n(e,r);break}else t(e,r);r=r.sibling}r=eu(i,e.mode,o),r.return=e,e=r}return s(e);case T:return l=i._init,_(e,r,l(i._payload),o)}if(je(i))return h(e,r,i,o);if(fe(i))return g(e,r,i,o);Ua(e,i)}return typeof i==`string`&&i!==``||typeof i==`number`?(i=``+i,r!==null&&r.tag===6?(n(e,r.sibling),r=a(r,i),r.return=e,e=r):(n(e,r),r=$l(i,e.mode,o),r.return=e,e=r),s(e)):n(e,r)}return _}var Ka=Ga(!0),qa=Ga(!1),Ja=ta(null),Ya=null,Xa=null,Za=null;function Qa(){Za=Xa=Ya=null}function $a(e){var t=Ja.current;N(Ja),e._currentValue=t}function eo(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function to(e,t){Ya=e,Za=Xa=null,e=e.dependencies,e!==null&&e.firstContext!==null&&((e.lanes&t)!==0&&(Bs=!0),e.firstContext=null)}function no(e){var t=e._currentValue;if(Za!==e)if(e={context:e,memoizedValue:t,next:null},Xa===null){if(Ya===null)throw Error(i(308));Xa=e,Ya.dependencies={lanes:0,firstContext:e}}else Xa=Xa.next=e;return t}var ro=null;function io(e){ro===null?ro=[e]:ro.push(e)}function ao(e,t,n,r){var i=t.interleaved;return i===null?(n.next=n,io(t)):(n.next=i.next,i.next=n),t.interleaved=n,oo(e,r)}function oo(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var so=!1;function co(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function lo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function uo(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function fo(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,J&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,oo(e,n)}return i=r.interleaved,i===null?(t.next=t,io(r)):(t.next=i.next,i.next=t),r.interleaved=t,oo(e,n)}function po(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194240)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Xt(e,n)}}function mo(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ho(e,t,n,r){var i=e.updateQueue;so=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane,p=s.eventTime;if((r&f)===f){u!==null&&(u=u.next={eventTime:p,lane:0,tag:s.tag,payload:s.payload,callback:s.callback,next:null});a:{var m=e,h=s;switch(f=t,p=n,h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(p,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(p,d,f):m,f==null)break a;d=E({},d,f);break a;case 2:so=!0}}s.callback!==null&&s.lane!==0&&(e.flags|=64,f=i.effects,f===null?i.effects=[s]:f.push(s))}else p={eventTime:p,lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;f=s,s=f.next,f.next=null,i.lastBaseUpdate=f,i.shared.pending=null}}while(1);if(u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,t=i.shared.interleaved,t!==null){i=t;do o|=i.lane,i=i.next;while(i!==t)}else a===null&&(i.shared.lanes=0);Yc|=o,e.lanes=o,e.memoizedState=d}}function go(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!=`function`)throw Error(i(191,a));a.call(r)}}}var _o={},vo=ta(_o),yo=ta(_o),bo=ta(_o);function xo(e){if(e===_o)throw Error(i(174));return e}function So(e,t){switch(P(bo,t),P(yo,e),P(vo,_o),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:k(null,``);break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=k(t,e)}N(vo),P(vo,t)}function Co(){N(vo),N(yo),N(bo)}function wo(e){xo(bo.current);var t=xo(vo.current),n=k(t,e.type);t!==n&&(P(yo,e),P(vo,n))}function To(e){yo.current===e&&(N(vo),N(yo))}var z=ta(0);function Eo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data===`$?`||n.data===`$!`))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Do=[];function Oo(){for(var e=0;e<Do.length;e++)Do[e]._workInProgressVersionPrimary=null;Do.length=0}var ko=x.ReactCurrentDispatcher,Ao=x.ReactCurrentBatchConfig,jo=0,B=null,V=null,H=null,Mo=!1,No=!1,Po=0,Fo=0;function U(){throw Error(i(321))}function Io(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!zr(e[n],t[n]))return!1;return!0}function Lo(e,t,n,r,a,o){if(jo=o,B=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,ko.current=e===null||e.memoizedState===null?bs:xs,e=n(r,a),No){o=0;do{if(No=!1,Po=0,25<=o)throw Error(i(301));o+=1,H=V=null,t.updateQueue=null,ko.current=Ss,e=n(r,a)}while(No)}if(ko.current=ys,t=V!==null&&V.next!==null,jo=0,H=V=B=null,Mo=!1,t)throw Error(i(300));return e}function Ro(){var e=Po!==0;return Po=0,e}function zo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return H===null?B.memoizedState=H=e:H=H.next=e,H}function Bo(){if(V===null){var e=B.alternate;e=e===null?null:e.memoizedState}else e=V.next;var t=H===null?B.memoizedState:H.next;if(t!==null)H=t,V=e;else{if(e===null)throw Error(i(310));V=e,e={memoizedState:V.memoizedState,baseState:V.baseState,baseQueue:V.baseQueue,queue:V.queue,next:null},H===null?B.memoizedState=H=e:H=H.next=e}return H}function Vo(e,t){return typeof t==`function`?t(e):t}function Ho(e){var t=Bo(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=V,a=r.baseQueue,o=n.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}r.baseQueue=a=o,n.pending=null}if(a!==null){o=a.next,r=r.baseState;var c=s=null,l=null,u=o;do{var d=u.lane;if((jo&d)===d)l!==null&&(l=l.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};l===null?(c=l=f,s=r):l=l.next=f,B.lanes|=d,Yc|=d}u=u.next}while(u!==null&&u!==o);l===null?s=r:l.next=c,zr(r,t.memoizedState)||(Bs=!0),t.memoizedState=r,t.baseState=s,t.baseQueue=l,n.lastRenderedState=r}if(e=n.interleaved,e!==null){a=e;do o=a.lane,B.lanes|=o,Yc|=o,a=a.next;while(a!==e)}else a===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function Uo(e){var t=Bo(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);zr(o,t.memoizedState)||(Bs=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Wo(){}function Go(e,t){var n=B,r=Bo(),a=t(),o=!zr(r.memoizedState,a);if(o&&(r.memoizedState=a,Bs=!0),r=r.queue,rs(Jo.bind(null,n,r,e),[e]),r.getSnapshot!==t||o||H!==null&&H.memoizedState.tag&1){if(n.flags|=2048,Qo(9,qo.bind(null,n,r,a,t),void 0,null),Y===null)throw Error(i(349));jo&30||Ko(n,t,a)}return a}function Ko(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=B.updateQueue,t===null?(t={lastEffect:null,stores:null},B.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function qo(e,t,n,r){t.value=n,t.getSnapshot=r,Yo(t)&&Xo(e)}function Jo(e,t,n){return n(function(){Yo(t)&&Xo(e)})}function Yo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!zr(e,n)}catch{return!0}}function Xo(e){var t=oo(e,1);t!==null&&hl(t,e,1,-1)}function Zo(e){var t=zo();return typeof e==`function`&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Vo,lastRenderedState:e},t.queue=e,e=e.dispatch=hs.bind(null,B,e),[t.memoizedState,e]}function Qo(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=B.updateQueue,t===null?(t={lastEffect:null,stores:null},B.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function $o(){return Bo().memoizedState}function es(e,t,n,r){var i=zo();B.flags|=e,i.memoizedState=Qo(1|t,n,void 0,r===void 0?null:r)}function ts(e,t,n,r){var i=Bo();r=r===void 0?null:r;var a=void 0;if(V!==null){var o=V.memoizedState;if(a=o.destroy,r!==null&&Io(r,o.deps)){i.memoizedState=Qo(t,n,a,r);return}}B.flags|=e,i.memoizedState=Qo(1|t,n,a,r)}function ns(e,t){return es(8390656,8,e,t)}function rs(e,t){return ts(2048,8,e,t)}function is(e,t){return ts(4,2,e,t)}function as(e,t){return ts(4,4,e,t)}function os(e,t){if(typeof t==`function`)return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function ss(e,t,n){return n=n==null?null:n.concat([e]),ts(4,4,os.bind(null,t,e),n)}function cs(){}function ls(e,t){var n=Bo();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Io(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function us(e,t){var n=Bo();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Io(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function ds(e,t,n){return jo&21?(zr(n,t)||(n=Kt(),B.lanes|=n,Yc|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Bs=!0),e.memoizedState=n)}function fs(e,t){var n=j;j=n!==0&&4>n?n:4,e(!0);var r=Ao.transition;Ao.transition={};try{e(!1),t()}finally{j=n,Ao.transition=r}}function ps(){return Bo().memoizedState}function ms(e,t,n){var r=ml(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},gs(e))_s(t,n);else if(n=ao(e,t,n,r),n!==null){var i=pl();hl(n,e,r,i),vs(n,t,r)}}function hs(e,t,n){var r=ml(e),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(gs(e))_s(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,zr(s,o)){var c=t.interleaved;c===null?(i.next=i,io(t)):(i.next=c.next,c.next=i),t.interleaved=i;return}}catch{}n=ao(e,t,i,r),n!==null&&(i=pl(),hl(n,e,r,i),vs(n,t,r))}}function gs(e){var t=e.alternate;return e===B||t!==null&&t===B}function _s(e,t){No=Mo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function vs(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Xt(e,n)}}var ys={readContext:no,useCallback:U,useContext:U,useEffect:U,useImperativeHandle:U,useInsertionEffect:U,useLayoutEffect:U,useMemo:U,useReducer:U,useRef:U,useState:U,useDebugValue:U,useDeferredValue:U,useTransition:U,useMutableSource:U,useSyncExternalStore:U,useId:U,unstable_isNewReconciler:!1},bs={readContext:no,useCallback:function(e,t){return zo().memoizedState=[e,t===void 0?null:t],e},useContext:no,useEffect:ns,useImperativeHandle:function(e,t,n){return n=n==null?null:n.concat([e]),es(4194308,4,os.bind(null,t,e),n)},useLayoutEffect:function(e,t){return es(4194308,4,e,t)},useInsertionEffect:function(e,t){return es(4,2,e,t)},useMemo:function(e,t){var n=zo();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=zo();return t=n===void 0?t:n(t),r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=ms.bind(null,B,e),[r.memoizedState,e]},useRef:function(e){var t=zo();return e={current:e},t.memoizedState=e},useState:Zo,useDebugValue:cs,useDeferredValue:function(e){return zo().memoizedState=e},useTransition:function(){var e=Zo(!1),t=e[0];return e=fs.bind(null,e[1]),zo().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=B,a=zo();if(R){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Y===null)throw Error(i(349));jo&30||Ko(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,ns(Jo.bind(null,r,o,e),[e]),r.flags|=2048,Qo(9,qo.bind(null,r,o,n,t),void 0,null),n},useId:function(){var e=zo(),t=Y.identifierPrefix;if(R){var n=Ta,r=wa;n=(r&~(1<<32-Ft(r)-1)).toString(32)+n,t=`:`+t+`R`+n,n=Po++,0<n&&(t+=`H`+n.toString(32)),t+=`:`}else n=Fo++,t=`:`+t+`r`+n.toString(32)+`:`;return e.memoizedState=t},unstable_isNewReconciler:!1},xs={readContext:no,useCallback:ls,useContext:no,useEffect:rs,useImperativeHandle:ss,useInsertionEffect:is,useLayoutEffect:as,useMemo:us,useReducer:Ho,useRef:$o,useState:function(){return Ho(Vo)},useDebugValue:cs,useDeferredValue:function(e){return ds(Bo(),V.memoizedState,e)},useTransition:function(){return[Ho(Vo)[0],Bo().memoizedState]},useMutableSource:Wo,useSyncExternalStore:Go,useId:ps,unstable_isNewReconciler:!1},Ss={readContext:no,useCallback:ls,useContext:no,useEffect:rs,useImperativeHandle:ss,useInsertionEffect:is,useLayoutEffect:as,useMemo:us,useReducer:Uo,useRef:$o,useState:function(){return Uo(Vo)},useDebugValue:cs,useDeferredValue:function(e){var t=Bo();return V===null?t.memoizedState=e:ds(t,V.memoizedState,e)},useTransition:function(){return[Uo(Vo)[0],Bo().memoizedState]},useMutableSource:Wo,useSyncExternalStore:Go,useId:ps,unstable_isNewReconciler:!1};function Cs(e,t){if(e&&e.defaultProps){for(var n in t=E({},t),e=e.defaultProps,e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function ws(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:E({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Ts={isMounted:function(e){return(e=e._reactInternals)?gt(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=pl(),i=ml(e),a=uo(r,i);a.payload=t,n!=null&&(a.callback=n),t=fo(e,a,i),t!==null&&(hl(t,e,i,r),po(t,e,i))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=pl(),i=ml(e),a=uo(r,i);a.tag=1,a.payload=t,n!=null&&(a.callback=n),t=fo(e,a,i),t!==null&&(hl(t,e,i,r),po(t,e,i))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=pl(),r=ml(e),i=uo(n,r);i.tag=2,t!=null&&(i.callback=t),t=fo(e,i,r),t!==null&&(hl(t,e,r,n),po(t,e,r))}};function Es(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Br(n,r)||!Br(i,a):!0}function Ds(e,t,n){var r=!1,i=na,a=t.contextType;return typeof a==`object`&&a?a=no(a):(i=oa(t)?ia:F.current,r=t.contextTypes,a=(r=r!=null)?aa(e,i):na),t=new t(n,a),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=Ts,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=i,e.__reactInternalMemoizedMaskedChildContext=a),t}function Os(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Ts.enqueueReplaceState(t,t.state,null)}function ks(e,t,n,r){var i=e.stateNode;i.props=n,i.state=e.memoizedState,i.refs={},co(e);var a=t.contextType;typeof a==`object`&&a?i.context=no(a):(a=oa(t)?ia:F.current,i.context=aa(e,a)),i.state=e.memoizedState,a=t.getDerivedStateFromProps,typeof a==`function`&&(ws(e,t,a,n),i.state=e.memoizedState),typeof t.getDerivedStateFromProps==`function`||typeof i.getSnapshotBeforeUpdate==`function`||typeof i.UNSAFE_componentWillMount!=`function`&&typeof i.componentWillMount!=`function`||(t=i.state,typeof i.componentWillMount==`function`&&i.componentWillMount(),typeof i.UNSAFE_componentWillMount==`function`&&i.UNSAFE_componentWillMount(),t!==i.state&&Ts.enqueueReplaceState(i,i.state,null),ho(e,n,i,r),i.state=e.memoizedState),typeof i.componentDidMount==`function`&&(e.flags|=4194308)}function As(e,t){try{var n=``,r=t;do n+=_e(r),r=r.return;while(r);var i=n}catch(e){i=`
|
|
7
|
-
Error generating stack: `+e.message+`
|
|
8
|
-
`+e.stack}return{value:e,source:t,stack:i,digest:null}}function js(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Ms(e,t){try{console.error(t.value)}catch(e){setTimeout(function(){throw e})}}var Ns=typeof WeakMap==`function`?WeakMap:Map;function Ps(e,t,n){n=uo(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){rl||(rl=!0,il=r),Ms(e,t)},n}function Fs(e,t,n){n=uo(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r==`function`){var i=t.value;n.payload=function(){return r(i)},n.callback=function(){Ms(e,t)}}var a=e.stateNode;return a!==null&&typeof a.componentDidCatch==`function`&&(n.callback=function(){Ms(e,t),typeof r!=`function`&&(al===null?al=new Set([this]):al.add(this));var n=t.stack;this.componentDidCatch(t.value,{componentStack:n===null?``:n})}),n}function Is(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ns;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(i.add(n),e=zl.bind(null,e,t,n),t.then(e,e))}function Ls(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t===null?!0:t.dehydrated!==null),t)return e;e=e.return}while(e!==null);return null}function Rs(e,t,n,r,i){return e.mode&1?(e.flags|=65536,e.lanes=i,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=uo(-1,1),t.tag=2,fo(n,t,1))),n.lanes|=1),e)}var zs=x.ReactCurrentOwner,Bs=!1;function Vs(e,t,n,r){t.child=e===null?qa(t,null,n,r):Ka(t,e.child,n,r)}function Hs(e,t,n,r,i){n=n.render;var a=t.ref;return to(t,i),r=Lo(e,t,n,r,a,i),n=Ro(),e!==null&&!Bs?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,cc(e,t,i)):(R&&n&&Oa(t),t.flags|=1,Vs(e,t,r,i),t.child)}function Us(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!ql(a)&&a.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=a,Ws(e,t,a,r,i)):(e=Xl(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,(e.lanes&i)===0){var o=a.memoizedProps;if(n=n.compare,n=n===null?Br:n,n(o,r)&&e.ref===t.ref)return cc(e,t,i)}return t.flags|=1,e=Yl(a,r),e.ref=t.ref,e.return=t,t.child=e}function Ws(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Br(a,r)&&e.ref===t.ref)if(Bs=!1,t.pendingProps=r=a,(e.lanes&i)!==0)e.flags&131072&&(Bs=!0);else return t.lanes=e.lanes,cc(e,t,i)}return qs(e,t,n,r,i)}function Gs(e,t,n){var r=t.pendingProps,i=r.children,a=e===null?null:e.memoizedState;if(r.mode===`hidden`)if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},P(qc,Kc),Kc|=n;else{if(!(n&1073741824))return e=a===null?n:a.baseLanes|n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,P(qc,Kc),Kc|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=a===null?n:a.baseLanes,P(qc,Kc),Kc|=r}else a===null?r=n:(r=a.baseLanes|n,t.memoizedState=null),P(qc,Kc),Kc|=r;return Vs(e,t,i,n),t.child}function Ks(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function qs(e,t,n,r,i){var a=oa(n)?ia:F.current;return a=aa(t,a),to(t,i),n=Lo(e,t,n,r,a,i),r=Ro(),e!==null&&!Bs?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~i,cc(e,t,i)):(R&&r&&Oa(t),t.flags|=1,Vs(e,t,n,i),t.child)}function Js(e,t,n,r,i){if(oa(n)){var a=!0;ua(t)}else a=!1;if(to(t,i),t.stateNode===null)sc(e,t),Ds(t,n,r),ks(t,n,r,i),r=!0;else if(e===null){var o=t.stateNode,s=t.memoizedProps;o.props=s;var c=o.context,l=n.contextType;typeof l==`object`&&l?l=no(l):(l=oa(n)?ia:F.current,l=aa(t,l));var u=n.getDerivedStateFromProps,d=typeof u==`function`||typeof o.getSnapshotBeforeUpdate==`function`;d||typeof o.UNSAFE_componentWillReceiveProps!=`function`&&typeof o.componentWillReceiveProps!=`function`||(s!==r||c!==l)&&Os(t,o,r,l),so=!1;var f=t.memoizedState;o.state=f,ho(t,r,o,i),c=t.memoizedState,s!==r||f!==c||ra.current||so?(typeof u==`function`&&(ws(t,n,u,r),c=t.memoizedState),(s=so||Es(t,n,s,r,f,c,l))?(d||typeof o.UNSAFE_componentWillMount!=`function`&&typeof o.componentWillMount!=`function`||(typeof o.componentWillMount==`function`&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount==`function`&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount==`function`&&(t.flags|=4194308)):(typeof o.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),o.props=r,o.state=c,o.context=l,r=s):(typeof o.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,lo(e,t),s=t.memoizedProps,l=t.type===t.elementType?s:Cs(t.type,s),o.props=l,d=t.pendingProps,f=o.context,c=n.contextType,typeof c==`object`&&c?c=no(c):(c=oa(n)?ia:F.current,c=aa(t,c));var p=n.getDerivedStateFromProps;(u=typeof p==`function`||typeof o.getSnapshotBeforeUpdate==`function`)||typeof o.UNSAFE_componentWillReceiveProps!=`function`&&typeof o.componentWillReceiveProps!=`function`||(s!==d||f!==c)&&Os(t,o,r,c),so=!1,f=t.memoizedState,o.state=f,ho(t,r,o,i);var m=t.memoizedState;s!==d||f!==m||ra.current||so?(typeof p==`function`&&(ws(t,n,p,r),m=t.memoizedState),(l=so||Es(t,n,l,r,f,m,c)||!1)?(u||typeof o.UNSAFE_componentWillUpdate!=`function`&&typeof o.componentWillUpdate!=`function`||(typeof o.componentWillUpdate==`function`&&o.componentWillUpdate(r,m,c),typeof o.UNSAFE_componentWillUpdate==`function`&&o.UNSAFE_componentWillUpdate(r,m,c)),typeof o.componentDidUpdate==`function`&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof o.componentDidUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),o.props=r,o.state=m,o.context=c,r=l):(typeof o.componentDidUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!=`function`||s===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return Ys(e,t,n,r,a,i)}function Ys(e,t,n,r,i,a){Ks(e,t);var o=(t.flags&128)!=0;if(!r&&!o)return i&&da(t,n,!1),cc(e,t,a);r=t.stateNode,zs.current=t;var s=o&&typeof n.getDerivedStateFromError!=`function`?null:r.render();return t.flags|=1,e!==null&&o?(t.child=Ka(t,e.child,null,a),t.child=Ka(t,null,s,a)):Vs(e,t,s,a),t.memoizedState=r.state,i&&da(t,n,!0),t.child}function Xs(e){var t=e.stateNode;t.pendingContext?ca(e,t.pendingContext,t.pendingContext!==t.context):t.context&&ca(e,t.context,!1),So(e,t.containerInfo)}function Zs(e,t,n,r,i){return za(),Ba(i),t.flags|=256,Vs(e,t,n,r),t.child}var Qs={dehydrated:null,treeContext:null,retryLane:0};function $s(e){return{baseLanes:e,cachePool:null,transitions:null}}function ec(e,t,n){var r=t.pendingProps,i=z.current,a=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:(i&2)!=0),s?(a=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(i|=1),P(z,i&1),e===null)return Fa(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data===`$!`?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,a?(r=t.mode,a=t.child,o={mode:`hidden`,children:o},!(r&1)&&a!==null?(a.childLanes=0,a.pendingProps=o):a=Ql(o,r,0,null),e=Zl(e,r,n,null),a.return=t,e.return=t,a.sibling=e,t.child=a,t.child.memoizedState=$s(n),t.memoizedState=Qs,e):tc(t,o));if(i=e.memoizedState,i!==null&&(s=i.dehydrated,s!==null))return rc(e,t,o,r,s,i,n);if(a){a=r.fallback,o=t.mode,i=e.child,s=i.sibling;var c={mode:`hidden`,children:r.children};return!(o&1)&&t.child!==i?(r=t.child,r.childLanes=0,r.pendingProps=c,t.deletions=null):(r=Yl(i,c),r.subtreeFlags=i.subtreeFlags&14680064),s===null?(a=Zl(a,o,n,null),a.flags|=2):a=Yl(s,a),a.return=t,r.return=t,r.sibling=a,t.child=r,r=a,a=t.child,o=e.child.memoizedState,o=o===null?$s(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},a.memoizedState=o,a.childLanes=e.childLanes&~n,t.memoizedState=Qs,r}return a=e.child,e=a.sibling,r=Yl(a,{mode:`visible`,children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function tc(e,t){return t=Ql({mode:`visible`,children:t},e.mode,0,null),t.return=e,e.child=t}function nc(e,t,n,r){return r!==null&&Ba(r),Ka(t,e.child,null,n),e=tc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function rc(e,t,n,r,a,o,s){if(n)return t.flags&256?(t.flags&=-257,r=js(Error(i(422))),nc(e,t,s,r)):t.memoizedState===null?(o=r.fallback,a=t.mode,r=Ql({mode:`visible`,children:r.children},a,0,null),o=Zl(o,a,s,null),o.flags|=2,r.return=t,o.return=t,r.sibling=o,t.child=r,t.mode&1&&Ka(t,e.child,null,s),t.child.memoizedState=$s(s),t.memoizedState=Qs,o):(t.child=e.child,t.flags|=128,null);if(!(t.mode&1))return nc(e,t,s,null);if(a.data===`$!`){if(r=a.nextSibling&&a.nextSibling.dataset,r)var c=r.dgst;return r=c,o=Error(i(419)),r=js(o,r,void 0),nc(e,t,s,r)}if(c=(s&e.childLanes)!==0,Bs||c){if(r=Y,r!==null){switch(s&-s){case 4:a=2;break;case 16:a=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}a=(a&(r.suspendedLanes|s))===0?a:0,a!==0&&a!==o.retryLane&&(o.retryLane=a,oo(e,a),hl(r,e,a,-1))}return kl(),r=js(Error(i(421))),nc(e,t,s,r)}return a.data===`$?`?(t.flags|=128,t.child=e.child,t=Vl.bind(null,e),a._reactRetry=t,null):(e=o.treeContext,Aa=Bi(a.nextSibling),L=t,R=!0,ja=null,e!==null&&(Sa[I++]=wa,Sa[I++]=Ta,Sa[I++]=Ca,wa=e.id,Ta=e.overflow,Ca=t),t=tc(t,r.children),t.flags|=4096,t)}function ic(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),eo(e.return,t,n)}function ac(e,t,n,r,i){var a=e.memoizedState;a===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=i)}function oc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;if(Vs(e,t,r.children,n),r=z.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&ic(e,n,t);else if(e.tag===19)ic(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(P(z,r),!(t.mode&1))t.memoizedState=null;else switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Eo(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),ac(t,!1,i,n,a);break;case`backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Eo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}ac(t,!0,n,null,a);break;case`together`:ac(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function sc(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function cc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Yc|=t.lanes,(n&t.childLanes)===0)return null;if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Yl(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Yl(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function lc(e,t,n){switch(t.tag){case 3:Xs(t),za();break;case 5:wo(t);break;case 1:oa(t.type)&&ua(t);break;case 4:So(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,i=t.memoizedProps.value;P(Ja,r._currentValue),r._currentValue=i;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(P(z,z.current&1),e=cc(e,t,n),e===null?null:e.sibling):ec(e,t,n):(P(z,z.current&1),t.flags|=128,null);P(z,z.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return oc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),P(z,z.current),r)break;return null;case 22:case 23:return t.lanes=0,Gs(e,t,n)}return cc(e,t,n)}var uc=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},dc=function(e,t,n,r){var i=e.memoizedProps;if(i!==r){e=t.stateNode,xo(vo.current);var a=null;switch(n){case`input`:i=Te(e,i),r=Te(e,r),a=[];break;case`select`:i=E({},i,{value:void 0}),r=E({},r,{value:void 0}),a=[];break;case`textarea`:i=Ne(e,i),r=Ne(e,r),a=[];break;default:typeof i.onClick!=`function`&&typeof r.onClick==`function`&&(e.onclick=Ai)}Ge(n,r);var o;for(u in n=null,i)if(!r.hasOwnProperty(u)&&i.hasOwnProperty(u)&&i[u]!=null)if(u===`style`){var c=i[u];for(o in c)c.hasOwnProperty(o)&&(n||={},n[o]=``)}else u!==`dangerouslySetInnerHTML`&&u!==`children`&&u!==`suppressContentEditableWarning`&&u!==`suppressHydrationWarning`&&u!==`autoFocus`&&(s.hasOwnProperty(u)?a||=[]:(a||=[]).push(u,null));for(u in r){var l=r[u];if(c=i?.[u],r.hasOwnProperty(u)&&l!==c&&(l!=null||c!=null))if(u===`style`)if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(n||={},n[o]=``);for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(n||={},n[o]=l[o])}else n||(a||=[],a.push(u,n)),n=l;else u===`dangerouslySetInnerHTML`?(l=l?l.__html:void 0,c=c?c.__html:void 0,l!=null&&c!==l&&(a||=[]).push(u,l)):u===`children`?typeof l!=`string`&&typeof l!=`number`||(a||=[]).push(u,``+l):u!==`suppressContentEditableWarning`&&u!==`suppressHydrationWarning`&&(s.hasOwnProperty(u)?(l!=null&&u===`onScroll`&&M(`scroll`,e),a||c===l||(a=[])):(a||=[]).push(u,l))}n&&(a||=[]).push(`style`,n);var u=a;(t.updateQueue=u)&&(t.flags|=4)}},fc=function(e,t,n,r){n!==r&&(t.flags|=4)};function pc(e,t){if(!R)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function W(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&14680064,r|=i.flags&14680064,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function mc(e,t,n){var r=t.pendingProps;switch(ka(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return W(t),null;case 1:return oa(t.type)&&sa(),W(t),null;case 3:return r=t.stateNode,Co(),N(ra),N(F),Oo(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(La(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ja!==null&&(yl(ja),ja=null))),W(t),null;case 5:To(t);var a=xo(bo.current);if(n=t.type,e!==null&&t.stateNode!=null)dc(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(i(166));return W(t),null}if(e=xo(vo.current),La(t)){r=t.stateNode,n=t.type;var o=t.memoizedProps;switch(r[Ui]=t,r[Wi]=o,e=(t.mode&1)!=0,n){case`dialog`:M(`cancel`,r),M(`close`,r);break;case`iframe`:case`object`:case`embed`:M(`load`,r);break;case`video`:case`audio`:for(a=0;a<pi.length;a++)M(pi[a],r);break;case`source`:M(`error`,r);break;case`img`:case`image`:case`link`:M(`error`,r),M(`load`,r);break;case`details`:M(`toggle`,r);break;case`input`:Ee(r,o),M(`invalid`,r);break;case`select`:r._wrapperState={wasMultiple:!!o.multiple},M(`invalid`,r);break;case`textarea`:Pe(r,o),M(`invalid`,r)}for(var c in Ge(n,o),a=null,o)if(o.hasOwnProperty(c)){var l=o[c];c===`children`?typeof l==`string`?r.textContent!==l&&(!0!==o.suppressHydrationWarning&&ki(r.textContent,l,e),a=[`children`,l]):typeof l==`number`&&r.textContent!==``+l&&(!0!==o.suppressHydrationWarning&&ki(r.textContent,l,e),a=[`children`,``+l]):s.hasOwnProperty(c)&&l!=null&&c===`onScroll`&&M(`scroll`,r)}switch(n){case`input`:Se(r),ke(r,o,!0);break;case`textarea`:Se(r),Fe(r);break;case`select`:case`option`:break;default:typeof o.onClick==`function`&&(r.onclick=Ai)}r=a,t.updateQueue=r,r!==null&&(t.flags|=4)}else{c=a.nodeType===9?a:a.ownerDocument,e===`http://www.w3.org/1999/xhtml`&&(e=Ie(n)),e===`http://www.w3.org/1999/xhtml`?n===`script`?(e=c.createElement(`div`),e.innerHTML=`<script><\/script>`,e=e.removeChild(e.firstChild)):typeof r.is==`string`?e=c.createElement(n,{is:r.is}):(e=c.createElement(n),n===`select`&&(c=e,r.multiple?c.multiple=!0:r.size&&(c.size=r.size))):e=c.createElementNS(e,n),e[Ui]=t,e[Wi]=r,uc(e,t,!1,!1),t.stateNode=e;a:{switch(c=Ke(n,r),n){case`dialog`:M(`cancel`,e),M(`close`,e),a=r;break;case`iframe`:case`object`:case`embed`:M(`load`,e),a=r;break;case`video`:case`audio`:for(a=0;a<pi.length;a++)M(pi[a],e);a=r;break;case`source`:M(`error`,e),a=r;break;case`img`:case`image`:case`link`:M(`error`,e),M(`load`,e),a=r;break;case`details`:M(`toggle`,e),a=r;break;case`input`:Ee(e,r),a=Te(e,r),M(`invalid`,e);break;case`option`:a=r;break;case`select`:e._wrapperState={wasMultiple:!!r.multiple},a=E({},r,{value:void 0}),M(`invalid`,e);break;case`textarea`:Pe(e,r),a=Ne(e,r),M(`invalid`,e);break;default:a=r}for(o in Ge(n,a),l=a,l)if(l.hasOwnProperty(o)){var u=l[o];o===`style`?Ue(e,u):o===`dangerouslySetInnerHTML`?(u=u?u.__html:void 0,u!=null&&Re(e,u)):o===`children`?typeof u==`string`?(n!==`textarea`||u!==``)&&ze(e,u):typeof u==`number`&&ze(e,``+u):o!==`suppressContentEditableWarning`&&o!==`suppressHydrationWarning`&&o!==`autoFocus`&&(s.hasOwnProperty(o)?u!=null&&o===`onScroll`&&M(`scroll`,e):u!=null&&te(e,o,u,c))}switch(n){case`input`:Se(e),ke(e,r,!1);break;case`textarea`:Se(e),Fe(e);break;case`option`:r.value!=null&&e.setAttribute(`value`,``+D(r.value));break;case`select`:e.multiple=!!r.multiple,o=r.value,o==null?r.defaultValue!=null&&Me(e,!!r.multiple,r.defaultValue,!0):Me(e,!!r.multiple,o,!1);break;default:typeof a.onClick==`function`&&(e.onclick=Ai)}switch(n){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return W(t),null;case 6:if(e&&t.stateNode!=null)fc(e,t,e.memoizedProps,r);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(n=xo(bo.current),xo(vo.current),La(t)){if(r=t.stateNode,n=t.memoizedProps,r[Ui]=t,(o=r.nodeValue!==n)&&(e=L,e!==null))switch(e.tag){case 3:ki(r.nodeValue,n,(e.mode&1)!=0);break;case 5:!0!==e.memoizedProps.suppressHydrationWarning&&ki(r.nodeValue,n,(e.mode&1)!=0)}o&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[Ui]=t,t.stateNode=r}return W(t),null;case 13:if(N(z),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(R&&Aa!==null&&t.mode&1&&!(t.flags&128))Ra(),za(),t.flags|=98560,o=!1;else if(o=La(t),r!==null&&r.dehydrated!==null){if(e===null){if(!o)throw Error(i(318));if(o=t.memoizedState,o=o===null?null:o.dehydrated,!o)throw Error(i(317));o[Ui]=t}else za(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;W(t),o=!1}else ja!==null&&(yl(ja),ja=null),o=!0;if(!o)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||z.current&1?Q===0&&(Q=3):kl())),t.updateQueue!==null&&(t.flags|=4),W(t),null);case 4:return Co(),e===null&&yi(t.stateNode.containerInfo),W(t),null;case 10:return $a(t.type._context),W(t),null;case 17:return oa(t.type)&&sa(),W(t),null;case 19:if(N(z),o=t.memoizedState,o===null)return W(t),null;if(r=(t.flags&128)!=0,c=o.rendering,c===null)if(r)pc(o,!1);else{if(Q!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(c=Eo(e),c!==null){for(t.flags|=128,pc(o,!1),r=c.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)o=n,e=r,o.flags&=14680066,c=o.alternate,c===null?(o.childLanes=0,o.lanes=e,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=c.childLanes,o.lanes=c.lanes,o.child=c.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=c.memoizedProps,o.memoizedState=c.memoizedState,o.updateQueue=c.updateQueue,o.type=c.type,e=c.dependencies,o.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return P(z,z.current&1|2),t.child}e=e.sibling}o.tail!==null&&A()>tl&&(t.flags|=128,r=!0,pc(o,!1),t.lanes=4194304)}else{if(!r)if(e=Eo(c),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),pc(o,!0),o.tail===null&&o.tailMode===`hidden`&&!c.alternate&&!R)return W(t),null}else 2*A()-o.renderingStartTime>tl&&n!==1073741824&&(t.flags|=128,r=!0,pc(o,!1),t.lanes=4194304);o.isBackwards?(c.sibling=t.child,t.child=c):(n=o.last,n===null?t.child=c:n.sibling=c,o.last=c)}return o.tail===null?(W(t),null):(t=o.tail,o.rendering=t,o.tail=t.sibling,o.renderingStartTime=A(),t.sibling=null,n=z.current,P(z,r?n&1|2:n&1),t);case 22:case 23:return Tl(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Kc&1073741824&&(W(t),t.subtreeFlags&6&&(t.flags|=8192)):W(t),null;case 24:return null;case 25:return null}throw Error(i(156,t.tag))}function hc(e,t){switch(ka(t),t.tag){case 1:return oa(t.type)&&sa(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Co(),N(ra),N(F),Oo(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return To(t),null;case 13:if(N(z),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));za()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return N(z),null;case 4:return Co(),null;case 10:return $a(t.type._context),null;case 22:case 23:return Tl(),null;case 24:return null;default:return null}}var gc=!1,G=!1,_c=typeof WeakSet==`function`?WeakSet:Set,K=null;function vc(e,t){var n=e.ref;if(n!==null)if(typeof n==`function`)try{n(null)}catch(n){$(e,t,n)}else n.current=null}function yc(e,t,n){try{n()}catch(n){$(e,t,n)}}var bc=!1;function xc(e,t){if(ji=Cn,e=Wr(),Gr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(Mi={focusedElem:e,selectionRange:n},Cn=!1,K=t;K!==null;)if(t=K,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,K=e;else for(;K!==null;){t=K;try{var h=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(h!==null){var g=h.memoizedProps,_=h.memoizedState,v=t.stateNode;v.__reactInternalSnapshotBeforeUpdate=v.getSnapshotBeforeUpdate(t.elementType===t.type?g:Cs(t.type,g),_)}break;case 3:var y=t.stateNode.containerInfo;y.nodeType===1?y.textContent=``:y.nodeType===9&&y.documentElement&&y.removeChild(y.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(i(163))}}catch(e){$(t,t.return,e)}if(e=t.sibling,e!==null){e.return=t.return,K=e;break}K=t.return}return h=bc,bc=!1,h}function Sc(e,t,n){var r=t.updateQueue;if(r=r===null?null:r.lastEffect,r!==null){var i=r=r.next;do{if((i.tag&e)===e){var a=i.destroy;i.destroy=void 0,a!==void 0&&yc(t,n,a)}i=i.next}while(i!==r)}}function Cc(e,t){if(t=t.updateQueue,t=t===null?null:t.lastEffect,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function wc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t==`function`?t(e):t.current=e}}function Tc(e){var t=e.alternate;t!==null&&(e.alternate=null,Tc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Ui],delete t[Wi],delete t[Ki],delete t[qi],delete t[Ji])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Ec(e){return e.tag===5||e.tag===3||e.tag===4}function Dc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Ec(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Oc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Ai));else if(r!==4&&(e=e.child,e!==null))for(Oc(e,t,n),e=e.sibling;e!==null;)Oc(e,t,n),e=e.sibling}function kc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(kc(e,t,n),e=e.sibling;e!==null;)kc(e,t,n),e=e.sibling}var q=null,Ac=!1;function jc(e,t,n){for(n=n.child;n!==null;)Mc(e,t,n),n=n.sibling}function Mc(e,t,n){if(Nt&&typeof Nt.onCommitFiberUnmount==`function`)try{Nt.onCommitFiberUnmount(Mt,n)}catch{}switch(n.tag){case 5:G||vc(n,t);case 6:var r=q,i=Ac;q=null,jc(e,t,n),q=r,Ac=i,q!==null&&(Ac?(e=q,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):q.removeChild(n.stateNode));break;case 18:q!==null&&(Ac?(e=q,n=n.stateNode,e.nodeType===8?zi(e.parentNode,n):e.nodeType===1&&zi(e,n),xn(e)):zi(q,n.stateNode));break;case 4:r=q,i=Ac,q=n.stateNode.containerInfo,Ac=!0,jc(e,t,n),q=r,Ac=i;break;case 0:case 11:case 14:case 15:if(!G&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){i=r=r.next;do{var a=i,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&yc(n,t,o),i=i.next}while(i!==r)}jc(e,t,n);break;case 1:if(!G&&(vc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(e){$(n,t,e)}jc(e,t,n);break;case 21:jc(e,t,n);break;case 22:n.mode&1?(G=(r=G)||n.memoizedState!==null,jc(e,t,n),G=r):jc(e,t,n);break;default:jc(e,t,n)}}function Nc(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new _c),t.forEach(function(t){var r=Hl.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))})}}function Pc(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r];try{var o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 5:q=c.stateNode,Ac=!1;break a;case 3:q=c.stateNode.containerInfo,Ac=!0;break a;case 4:q=c.stateNode.containerInfo,Ac=!0;break a}c=c.return}if(q===null)throw Error(i(160));Mc(o,s,a),q=null,Ac=!1;var l=a.alternate;l!==null&&(l.return=null),a.return=null}catch(e){$(a,t,e)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)Fc(t,e),t=t.sibling}function Fc(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Pc(t,e),Ic(e),r&4){try{Sc(3,e,e.return),Cc(3,e)}catch(t){$(e,e.return,t)}try{Sc(5,e,e.return)}catch(t){$(e,e.return,t)}}break;case 1:Pc(t,e),Ic(e),r&512&&n!==null&&vc(n,n.return);break;case 5:if(Pc(t,e),Ic(e),r&512&&n!==null&&vc(n,n.return),e.flags&32){var a=e.stateNode;try{ze(a,``)}catch(t){$(e,e.return,t)}}if(r&4&&(a=e.stateNode,a!=null)){var o=e.memoizedProps,s=n===null?o:n.memoizedProps,c=e.type,l=e.updateQueue;if(e.updateQueue=null,l!==null)try{c===`input`&&o.type===`radio`&&o.name!=null&&De(a,o),Ke(c,s);var u=Ke(c,o);for(s=0;s<l.length;s+=2){var d=l[s],f=l[s+1];d===`style`?Ue(a,f):d===`dangerouslySetInnerHTML`?Re(a,f):d===`children`?ze(a,f):te(a,d,f,u)}switch(c){case`input`:Oe(a,o);break;case`textarea`:O(a,o);break;case`select`:var p=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!o.multiple;var m=o.value;m==null?p!==!!o.multiple&&(o.defaultValue==null?Me(a,!!o.multiple,o.multiple?[]:``,!1):Me(a,!!o.multiple,o.defaultValue,!0)):Me(a,!!o.multiple,m,!1)}a[Wi]=o}catch(t){$(e,e.return,t)}}break;case 6:if(Pc(t,e),Ic(e),r&4){if(e.stateNode===null)throw Error(i(162));a=e.stateNode,o=e.memoizedProps;try{a.nodeValue=o}catch(t){$(e,e.return,t)}}break;case 3:if(Pc(t,e),Ic(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{xn(t.containerInfo)}catch(t){$(e,e.return,t)}break;case 4:Pc(t,e),Ic(e);break;case 13:Pc(t,e),Ic(e),a=e.child,a.flags&8192&&(o=a.memoizedState!==null,a.stateNode.isHidden=o,!o||a.alternate!==null&&a.alternate.memoizedState!==null||(el=A())),r&4&&Nc(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(G=(u=G)||d,Pc(t,e),G=u):Pc(t,e),Ic(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!d&&e.mode&1)for(K=e,d=e.child;d!==null;){for(f=K=d;K!==null;){switch(p=K,m=p.child,p.tag){case 0:case 11:case 14:case 15:Sc(4,p,p.return);break;case 1:vc(p,p.return);var h=p.stateNode;if(typeof h.componentWillUnmount==`function`){r=p,n=p.return;try{t=r,h.props=t.memoizedProps,h.state=t.memoizedState,h.componentWillUnmount()}catch(e){$(r,n,e)}}break;case 5:vc(p,p.return);break;case 22:if(p.memoizedState!==null){Bc(f);continue}}m===null?Bc(f):(m.return=p,K=m)}d=d.sibling}a:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{a=f.stateNode,u?(o=a.style,typeof o.setProperty==`function`?o.setProperty(`display`,`none`,`important`):o.display=`none`):(c=f.stateNode,l=f.memoizedProps.style,s=l!=null&&l.hasOwnProperty(`display`)?l.display:null,c.style.display=He(`display`,s))}catch(t){$(e,e.return,t)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=u?``:f.memoizedProps}catch(t){$(e,e.return,t)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break a;for(;f.sibling===null;){if(f.return===null||f.return===e)break a;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:Pc(t,e),Ic(e),r&4&&Nc(e);break;case 21:break;default:Pc(t,e),Ic(e)}}function Ic(e){var t=e.flags;if(t&2){try{a:{for(var n=e.return;n!==null;){if(Ec(n)){var r=n;break a}n=n.return}throw Error(i(160))}switch(r.tag){case 5:var a=r.stateNode;r.flags&32&&(ze(a,``),r.flags&=-33),kc(e,Dc(e),a);break;case 3:case 4:var o=r.stateNode.containerInfo;Oc(e,Dc(e),o);break;default:throw Error(i(161))}}catch(t){$(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Lc(e,t,n){K=e,Rc(e,t,n)}function Rc(e,t,n){for(var r=(e.mode&1)!=0;K!==null;){var i=K,a=i.child;if(i.tag===22&&r){var o=i.memoizedState!==null||gc;if(!o){var s=i.alternate,c=s!==null&&s.memoizedState!==null||G;s=gc;var l=G;if(gc=o,(G=c)&&!l)for(K=i;K!==null;)o=K,c=o.child,o.tag===22&&o.memoizedState!==null||c===null?Vc(i):(c.return=o,K=c);for(;a!==null;)K=a,Rc(a,t,n),a=a.sibling;K=i,gc=s,G=l}zc(e,t,n)}else i.subtreeFlags&8772&&a!==null?(a.return=i,K=a):zc(e,t,n)}}function zc(e){for(;K!==null;){var t=K;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:G||Cc(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!G)if(n===null)r.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:Cs(t.type,n.memoizedProps);r.componentDidUpdate(a,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var o=t.updateQueue;o!==null&&go(t,o,r);break;case 3:var s=t.updateQueue;if(s!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}go(t,s,n)}break;case 5:var c=t.stateNode;if(n===null&&t.flags&4){n=c;var l=t.memoizedProps;switch(t.type){case`button`:case`input`:case`select`:case`textarea`:l.autoFocus&&n.focus();break;case`img`:l.src&&(n.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var d=u.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&xn(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(i(163))}G||t.flags&512&&wc(t)}catch(e){$(t,t.return,e)}}if(t===e){K=null;break}if(n=t.sibling,n!==null){n.return=t.return,K=n;break}K=t.return}}function Bc(e){for(;K!==null;){var t=K;if(t===e){K=null;break}var n=t.sibling;if(n!==null){n.return=t.return,K=n;break}K=t.return}}function Vc(e){for(;K!==null;){var t=K;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Cc(4,t)}catch(e){$(t,n,e)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount==`function`){var i=t.return;try{r.componentDidMount()}catch(e){$(t,i,e)}}var a=t.return;try{wc(t)}catch(e){$(t,a,e)}break;case 5:var o=t.return;try{wc(t)}catch(e){$(t,o,e)}}}catch(e){$(t,t.return,e)}if(t===e){K=null;break}var s=t.sibling;if(s!==null){s.return=t.return,K=s;break}K=t.return}}var Hc=Math.ceil,Uc=x.ReactCurrentDispatcher,Wc=x.ReactCurrentOwner,Gc=x.ReactCurrentBatchConfig,J=0,Y=null,X=null,Z=0,Kc=0,qc=ta(0),Q=0,Jc=null,Yc=0,Xc=0,Zc=0,Qc=null,$c=null,el=0,tl=1/0,nl=null,rl=!1,il=null,al=null,ol=!1,sl=null,cl=0,ll=0,ul=null,dl=-1,fl=0;function pl(){return J&6?A():dl===-1?dl=A():dl}function ml(e){return e.mode&1?J&2&&Z!==0?Z&-Z:Va.transition===null?(e=j,e===0?(e=window.event,e=e===void 0?16:kn(e.type),e):e):(fl===0&&(fl=Kt()),fl):1}function hl(e,t,n,r){if(50<ll)throw ll=0,ul=null,Error(i(185));Jt(e,n,r),(!(J&2)||e!==Y)&&(e===Y&&(!(J&2)&&(Xc|=n),Q===4&&xl(e,Z)),gl(e,r),n===1&&J===0&&!(t.mode&1)&&(tl=A()+500,pa&&_a()))}function gl(e,t){var n=e.callbackNode;Wt(e,t);var r=Ht(e,e===Y?Z:0);if(r===0)n!==null&&Ct(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&Ct(n),t===1)e.tag===0?ga(Sl.bind(null,e)):ha(Sl.bind(null,e)),Li(function(){!(J&6)&&_a()}),n=null;else{switch(Zt(r)){case 1:n=Dt;break;case 4:n=Ot;break;case 16:n=kt;break;case 536870912:n=jt;break;default:n=kt}n=Wl(n,_l.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function _l(e,t){if(dl=-1,fl=0,J&6)throw Error(i(327));var n=e.callbackNode;if(Ll()&&e.callbackNode!==n)return null;var r=Ht(e,e===Y?Z:0);if(r===0)return null;if(r&30||(r&e.expiredLanes)!==0||t)t=Al(e,r);else{t=r;var a=J;J|=2;var o=Ol();(Y!==e||Z!==t)&&(nl=null,tl=A()+500,El(e,t));do try{Ml();break}catch(t){Dl(e,t)}while(1);Qa(),Uc.current=o,J=a,X===null?(Y=null,Z=0,t=Q):t=0}if(t!==0){if(t===2&&(a=Gt(e),a!==0&&(r=a,t=vl(e,a))),t===1)throw n=Jc,El(e,0),xl(e,r),gl(e,A()),n;if(t===6)xl(e,r);else{if(a=e.current.alternate,!(r&30)&&!bl(a)&&(t=Al(e,r),t===2&&(o=Gt(e),o!==0&&(r=o,t=vl(e,o))),t===1))throw n=Jc,El(e,0),xl(e,r),gl(e,A()),n;switch(e.finishedWork=a,e.finishedLanes=r,t){case 0:case 1:throw Error(i(345));case 2:Fl(e,$c,nl);break;case 3:if(xl(e,r),(r&130023424)===r&&(t=el+500-A(),10<t)){if(Ht(e,0)!==0)break;if(a=e.suspendedLanes,(a&r)!==r){pl(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=Pi(Fl.bind(null,e,$c,nl),t);break}Fl(e,$c,nl);break;case 4:if(xl(e,r),(r&4194240)===r)break;for(t=e.eventTimes,a=-1;0<r;){var s=31-Ft(r);o=1<<s,s=t[s],s>a&&(a=s),r&=~o}if(r=a,r=A()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Hc(r/1960))-r,10<r){e.timeoutHandle=Pi(Fl.bind(null,e,$c,nl),r);break}Fl(e,$c,nl);break;case 5:Fl(e,$c,nl);break;default:throw Error(i(329))}}}return gl(e,A()),e.callbackNode===n?_l.bind(null,e):null}function vl(e,t){var n=Qc;return e.current.memoizedState.isDehydrated&&(El(e,t).flags|=256),e=Al(e,t),e!==2&&(t=$c,$c=n,t!==null&&yl(t)),e}function yl(e){$c===null?$c=e:$c.push.apply($c,e)}function bl(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!zr(a(),i))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function xl(e,t){for(t&=~Zc,t&=~Xc,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Ft(t),r=1<<n;e[n]=-1,t&=~r}}function Sl(e){if(J&6)throw Error(i(327));Ll();var t=Ht(e,0);if(!(t&1))return gl(e,A()),null;var n=Al(e,t);if(e.tag!==0&&n===2){var r=Gt(e);r!==0&&(t=r,n=vl(e,r))}if(n===1)throw n=Jc,El(e,0),xl(e,t),gl(e,A()),n;if(n===6)throw Error(i(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,Fl(e,$c,nl),gl(e,A()),null}function Cl(e,t){var n=J;J|=1;try{return e(t)}finally{J=n,J===0&&(tl=A()+500,pa&&_a())}}function wl(e){sl!==null&&sl.tag===0&&!(J&6)&&Ll();var t=J;J|=1;var n=Gc.transition,r=j;try{if(Gc.transition=null,j=1,e)return e()}finally{j=r,Gc.transition=n,J=t,!(J&6)&&_a()}}function Tl(){Kc=qc.current,N(qc)}function El(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,Fi(n)),X!==null)for(n=X.return;n!==null;){var r=n;switch(ka(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&sa();break;case 3:Co(),N(ra),N(F),Oo();break;case 5:To(r);break;case 4:Co();break;case 13:N(z);break;case 19:N(z);break;case 10:$a(r.type._context);break;case 22:case 23:Tl()}n=n.return}if(Y=e,X=e=Yl(e.current,null),Z=Kc=t,Q=0,Jc=null,Zc=Xc=Yc=0,$c=Qc=null,ro!==null){for(t=0;t<ro.length;t++)if(n=ro[t],r=n.interleaved,r!==null){n.interleaved=null;var i=r.next,a=n.pending;if(a!==null){var o=a.next;a.next=i,r.next=o}n.pending=r}ro=null}return e}function Dl(e,t){do{var n=X;try{if(Qa(),ko.current=ys,Mo){for(var r=B.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}Mo=!1}if(jo=0,H=V=B=null,No=!1,Po=0,Wc.current=null,n===null||n.return===null){Q=1,Jc=t,X=null;break}a:{var o=e,s=n.return,c=n,l=t;if(t=Z,c.flags|=32768,typeof l==`object`&&l&&typeof l.then==`function`){var u=l,d=c,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var p=d.alternate;p?(d.updateQueue=p.updateQueue,d.memoizedState=p.memoizedState,d.lanes=p.lanes):(d.updateQueue=null,d.memoizedState=null)}var m=Ls(s);if(m!==null){m.flags&=-257,Rs(m,s,c,o,t),m.mode&1&&Is(o,u,t),t=m,l=u;var h=t.updateQueue;if(h===null){var g=new Set;g.add(l),t.updateQueue=g}else h.add(l);break a}else{if(!(t&1)){Is(o,u,t),kl();break a}l=Error(i(426))}}else if(R&&c.mode&1){var _=Ls(s);if(_!==null){!(_.flags&65536)&&(_.flags|=256),Rs(_,s,c,o,t),Ba(As(l,c));break a}}o=l=As(l,c),Q!==4&&(Q=2),Qc===null?Qc=[o]:Qc.push(o),o=s;do{switch(o.tag){case 3:o.flags|=65536,t&=-t,o.lanes|=t;var v=Ps(o,l,t);mo(o,v);break a;case 1:c=l;var y=o.type,b=o.stateNode;if(!(o.flags&128)&&(typeof y.getDerivedStateFromError==`function`||b!==null&&typeof b.componentDidCatch==`function`&&(al===null||!al.has(b)))){o.flags|=65536,t&=-t,o.lanes|=t;var ee=Fs(o,c,t);mo(o,ee);break a}}o=o.return}while(o!==null)}Pl(n)}catch(e){t=e,X===n&&n!==null&&(X=n=n.return);continue}break}while(1)}function Ol(){var e=Uc.current;return Uc.current=ys,e===null?ys:e}function kl(){(Q===0||Q===3||Q===2)&&(Q=4),Y===null||!(Yc&268435455)&&!(Xc&268435455)||xl(Y,Z)}function Al(e,t){var n=J;J|=2;var r=Ol();(Y!==e||Z!==t)&&(nl=null,El(e,t));do try{jl();break}catch(t){Dl(e,t)}while(1);if(Qa(),J=n,Uc.current=r,X!==null)throw Error(i(261));return Y=null,Z=0,Q}function jl(){for(;X!==null;)Nl(X)}function Ml(){for(;X!==null&&!wt();)Nl(X)}function Nl(e){var t=Ul(e.alternate,e,Kc);e.memoizedProps=e.pendingProps,t===null?Pl(e):X=t,Wc.current=null}function Pl(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=hc(n,t),n!==null){n.flags&=32767,X=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Q=6,X=null;return}}else if(n=mc(n,t,Kc),n!==null){X=n;return}if(t=t.sibling,t!==null){X=t;return}X=t=e}while(t!==null);Q===0&&(Q=5)}function Fl(e,t,n){var r=j,i=Gc.transition;try{Gc.transition=null,j=1,Il(e,t,n,r)}finally{Gc.transition=i,j=r}return null}function Il(e,t,n,r){do Ll();while(sl!==null);if(J&6)throw Error(i(327));n=e.finishedWork;var a=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(i(177));e.callbackNode=null,e.callbackPriority=0;var o=n.lanes|n.childLanes;if(Yt(e,o),e===Y&&(X=Y=null,Z=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||ol||(ol=!0,Wl(kt,function(){return Ll(),null})),o=(n.flags&15990)!=0,n.subtreeFlags&15990||o){o=Gc.transition,Gc.transition=null;var s=j;j=1;var c=J;J|=4,Wc.current=null,xc(e,n),Fc(n,e),Kr(Mi),Cn=!!ji,Mi=ji=null,e.current=n,Lc(n,e,a),Tt(),J=c,j=s,Gc.transition=o}else e.current=n;if(ol&&(ol=!1,sl=e,cl=a),o=e.pendingLanes,o===0&&(al=null),Pt(n.stateNode,r),gl(e,A()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],r(a.value,{componentStack:a.stack,digest:a.digest});if(rl)throw rl=!1,e=il,il=null,e;return cl&1&&e.tag!==0&&Ll(),o=e.pendingLanes,o&1?e===ul?ll++:(ll=0,ul=e):ll=0,_a(),null}function Ll(){if(sl!==null){var e=Zt(cl),t=Gc.transition,n=j;try{if(Gc.transition=null,j=16>e?16:e,sl===null)var r=!1;else{if(e=sl,sl=null,cl=0,J&6)throw Error(i(331));var a=J;for(J|=4,K=e.current;K!==null;){var o=K,s=o.child;if(K.flags&16){var c=o.deletions;if(c!==null){for(var l=0;l<c.length;l++){var u=c[l];for(K=u;K!==null;){var d=K;switch(d.tag){case 0:case 11:case 15:Sc(8,d,o)}var f=d.child;if(f!==null)f.return=d,K=f;else for(;K!==null;){d=K;var p=d.sibling,m=d.return;if(Tc(d),d===u){K=null;break}if(p!==null){p.return=m,K=p;break}K=m}}}var h=o.alternate;if(h!==null){var g=h.child;if(g!==null){h.child=null;do{var _=g.sibling;g.sibling=null,g=_}while(g!==null)}}K=o}}if(o.subtreeFlags&2064&&s!==null)s.return=o,K=s;else b:for(;K!==null;){if(o=K,o.flags&2048)switch(o.tag){case 0:case 11:case 15:Sc(9,o,o.return)}var v=o.sibling;if(v!==null){v.return=o.return,K=v;break b}K=o.return}}var y=e.current;for(K=y;K!==null;){s=K;var b=s.child;if(s.subtreeFlags&2064&&b!==null)b.return=s,K=b;else b:for(s=y;K!==null;){if(c=K,c.flags&2048)try{switch(c.tag){case 0:case 11:case 15:Cc(9,c)}}catch(e){$(c,c.return,e)}if(c===s){K=null;break b}var ee=c.sibling;if(ee!==null){ee.return=c.return,K=ee;break b}K=c.return}}if(J=a,_a(),Nt&&typeof Nt.onPostCommitFiberRoot==`function`)try{Nt.onPostCommitFiberRoot(Mt,e)}catch{}r=!0}return r}finally{j=n,Gc.transition=t}}return!1}function Rl(e,t,n){t=As(n,t),t=Ps(e,t,1),e=fo(e,t,1),t=pl(),e!==null&&(Jt(e,1,t),gl(e,t))}function $(e,t,n){if(e.tag===3)Rl(e,e,n);else for(;t!==null;){if(t.tag===3){Rl(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(al===null||!al.has(r))){e=As(n,e),e=Fs(t,e,1),t=fo(t,e,1),e=pl(),t!==null&&(Jt(t,1,e),gl(t,e));break}}t=t.return}}function zl(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=pl(),e.pingedLanes|=e.suspendedLanes&n,Y===e&&(Z&n)===n&&(Q===4||Q===3&&(Z&130023424)===Z&&500>A()-el?El(e,0):Zc|=n),gl(e,t)}function Bl(e,t){t===0&&(e.mode&1?(t=Bt,Bt<<=1,!(Bt&130023424)&&(Bt=4194304)):t=1);var n=pl();e=oo(e,t),e!==null&&(Jt(e,t,n),gl(e,n))}function Vl(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Bl(e,n)}function Hl(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(i(314))}r!==null&&r.delete(t),Bl(e,n)}var Ul=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ra.current)Bs=!0;else{if((e.lanes&n)===0&&!(t.flags&128))return Bs=!1,lc(e,t,n);Bs=!!(e.flags&131072)}else Bs=!1,R&&t.flags&1048576&&Da(t,xa,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;sc(e,t),e=t.pendingProps;var a=aa(t,F.current);to(t,n),a=Lo(null,t,r,e,a,n);var o=Ro();return t.flags|=1,typeof a==`object`&&a&&typeof a.render==`function`&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,oa(r)?(o=!0,ua(t)):o=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,co(t),a.updater=Ts,t.stateNode=a,a._reactInternals=t,ks(t,r,e,n),t=Ys(null,t,r,!0,o,n)):(t.tag=0,R&&o&&Oa(t),Vs(null,t,a,n),t=t.child),t;case 16:r=t.elementType;a:{switch(sc(e,t),e=t.pendingProps,a=r._init,r=a(r._payload),t.type=r,a=t.tag=Jl(r),e=Cs(r,e),a){case 0:t=qs(null,t,r,e,n);break a;case 1:t=Js(null,t,r,e,n);break a;case 11:t=Hs(null,t,r,e,n);break a;case 14:t=Us(null,t,r,Cs(r.type,e),n);break a}throw Error(i(306,r,``))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),qs(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),Js(e,t,r,a,n);case 3:a:{if(Xs(t),e===null)throw Error(i(387));r=t.pendingProps,o=t.memoizedState,a=o.element,lo(e,t),ho(t,r,null,n);var s=t.memoizedState;if(r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache,pendingSuspenseBoundaries:s.pendingSuspenseBoundaries,transitions:s.transitions},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){a=As(Error(i(423)),t),t=Zs(e,t,r,n,a);break a}else if(r!==a){a=As(Error(i(424)),t),t=Zs(e,t,r,n,a);break a}else for(Aa=Bi(t.stateNode.containerInfo.firstChild),L=t,R=!0,ja=null,n=qa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(za(),r===a){t=cc(e,t,n);break a}Vs(e,t,r,n)}t=t.child}return t;case 5:return wo(t),e===null&&Fa(t),r=t.type,a=t.pendingProps,o=e===null?null:e.memoizedProps,s=a.children,Ni(r,a)?s=null:o!==null&&Ni(r,o)&&(t.flags|=32),Ks(e,t),Vs(e,t,s,n),t.child;case 6:return e===null&&Fa(t),null;case 13:return ec(e,t,n);case 4:return So(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ka(t,null,r,n):Vs(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),Hs(e,t,r,a,n);case 7:return Vs(e,t,t.pendingProps,n),t.child;case 8:return Vs(e,t,t.pendingProps.children,n),t.child;case 12:return Vs(e,t,t.pendingProps.children,n),t.child;case 10:a:{if(r=t.type._context,a=t.pendingProps,o=t.memoizedProps,s=a.value,P(Ja,r._currentValue),r._currentValue=s,o!==null)if(zr(o.value,s)){if(o.children===a.children&&!ra.current){t=cc(e,t,n);break a}}else for(o=t.child,o!==null&&(o.return=t);o!==null;){var c=o.dependencies;if(c!==null){s=o.child;for(var l=c.firstContext;l!==null;){if(l.context===r){if(o.tag===1){l=uo(-1,n&-n),l.tag=2;var u=o.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?l.next=l:(l.next=d.next,d.next=l),u.pending=l}}o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),eo(o.return,n,t),c.lanes|=n;break}l=l.next}}else if(o.tag===10)s=o.type===t.type?null:o.child;else if(o.tag===18){if(s=o.return,s===null)throw Error(i(341));s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),eo(s,n,t),s=o.sibling}else s=o.child;if(s!==null)s.return=o;else for(s=o;s!==null;){if(s===t){s=null;break}if(o=s.sibling,o!==null){o.return=s.return,s=o;break}s=s.return}o=s}Vs(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=t.pendingProps.children,to(t,n),a=no(a),r=r(a),t.flags|=1,Vs(e,t,r,n),t.child;case 14:return r=t.type,a=Cs(r,t.pendingProps),a=Cs(r.type,a),Us(e,t,r,a,n);case 15:return Ws(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Cs(r,a),sc(e,t),t.tag=1,oa(r)?(e=!0,ua(t)):e=!1,to(t,n),Ds(t,r,a),ks(t,r,a,n),Ys(null,t,r,!0,e,n);case 19:return oc(e,t,n);case 22:return Gs(e,t,n)}throw Error(i(156,t.tag))};function Wl(e,t){return St(e,t)}function Gl(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Kl(e,t,n,r){return new Gl(e,t,n,r)}function ql(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Jl(e){if(typeof e==`function`)return ql(e)?1:0;if(e!=null){if(e=e.$$typeof,e===ce)return 11;if(e===w)return 14}return 2}function Yl(e,t){var n=e.alternate;return n===null?(n=Kl(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Xl(e,t,n,r,a,o){var s=2;if(r=e,typeof e==`function`)ql(e)&&(s=1);else if(typeof e==`string`)s=5;else a:switch(e){case ie:return Zl(n.children,a,o,t);case ae:s=8,a|=8;break;case S:return e=Kl(12,n,t,a|2),e.elementType=S,e.lanes=o,e;case C:return e=Kl(13,n,t,a),e.elementType=C,e.lanes=o,e;case le:return e=Kl(19,n,t,a),e.elementType=le,e.lanes=o,e;case ue:return Ql(n,a,o,t);default:if(typeof e==`object`&&e)switch(e.$$typeof){case oe:s=10;break a;case se:s=9;break a;case ce:s=11;break a;case w:s=14;break a;case T:s=16,r=null;break a}throw Error(i(130,e==null?e:typeof e,``))}return t=Kl(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function Zl(e,t,n,r){return e=Kl(7,e,r,t),e.lanes=n,e}function Ql(e,t,n,r){return e=Kl(22,e,r,t),e.elementType=ue,e.lanes=n,e.stateNode={isHidden:!1},e}function $l(e,t,n){return e=Kl(6,e,null,t),e.lanes=n,e}function eu(e,t,n){return t=Kl(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function tu(e,t,n,r,i){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=qt(0),this.expirationTimes=qt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=qt(0),this.identifierPrefix=r,this.onRecoverableError=i,this.mutableSourceEagerHydrationData=null}function nu(e,t,n,r,i,a,o,s,c){return e=new tu(e,t,n,s,c),t===1?(t=1,!0===a&&(t|=8)):t=0,a=Kl(3,null,null,t),e.current=a,a.stateNode=e,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},co(a),e}function ru(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:re,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}function iu(e){if(!e)return na;e=e._reactInternals;a:{if(gt(e)!==e||e.tag!==1)throw Error(i(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break a;case 1:if(oa(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break a}}t=t.return}while(t!==null);throw Error(i(171))}if(e.tag===1){var n=e.type;if(oa(n))return la(e,n,t)}return t}function au(e,t,n,r,i,a,o,s,c){return e=nu(n,r,!0,e,i,a,o,s,c),e.context=iu(null),n=e.current,r=pl(),i=ml(n),a=uo(r,i),a.callback=t??null,fo(n,a,i),e.current.lanes=i,Jt(e,i,r),gl(e,r),e}function ou(e,t,n,r){var i=t.current,a=pl(),o=ml(i);return n=iu(n),t.context===null?t.context=n:t.pendingContext=n,t=uo(a,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=fo(i,t,o),e!==null&&(hl(e,i,o,a),po(e,i,o)),o}function su(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function cu(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function lu(e,t){cu(e,t),(e=e.alternate)&&cu(e,t)}function uu(){return null}var du=typeof reportError==`function`?reportError:function(e){console.error(e)};function fu(e){this._internalRoot=e}pu.prototype.render=fu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));ou(e,t,null,null)},pu.prototype.unmount=fu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;wl(function(){ou(null,e,null,null)}),t[Gi]=null}};function pu(e){this._internalRoot=e}pu.prototype.unstable_scheduleHydration=function(e){if(e){var t=tn();e={blockedOn:null,target:e,priority:t};for(var n=0;n<dn.length&&t!==0&&t<dn[n].priority;n++);dn.splice(n,0,e),n===0&&gn(e)}};function mu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function hu(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==` react-mount-point-unstable `))}function gu(){}function _u(e,t,n,r,i){if(i){if(typeof r==`function`){var a=r;r=function(){var e=su(o);a.call(e)}}var o=au(t,r,e,0,null,!1,!1,``,gu);return e._reactRootContainer=o,e[Gi]=o.current,yi(e.nodeType===8?e.parentNode:e),wl(),o}for(;i=e.lastChild;)e.removeChild(i);if(typeof r==`function`){var s=r;r=function(){var e=su(c);s.call(e)}}var c=nu(e,0,!1,null,null,!1,!1,``,gu);return e._reactRootContainer=c,e[Gi]=c.current,yi(e.nodeType===8?e.parentNode:e),wl(function(){ou(t,c,n,r)}),c}function vu(e,t,n,r,i){var a=n._reactRootContainer;if(a){var o=a;if(typeof i==`function`){var s=i;i=function(){var e=su(o);s.call(e)}}ou(t,o,e,i)}else o=_u(n,t,e,i,r);return su(o)}Qt=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=Vt(t.pendingLanes);n!==0&&(Xt(t,n|1),gl(t,A()),!(J&6)&&(tl=A()+500,_a()))}break;case 13:wl(function(){var t=oo(e,1);t!==null&&hl(t,e,1,pl())}),lu(e,1)}},$t=function(e){if(e.tag===13){var t=oo(e,134217728);t!==null&&hl(t,e,134217728,pl()),lu(e,134217728)}},en=function(e){if(e.tag===13){var t=ml(e),n=oo(e,t);n!==null&&hl(n,e,t,pl()),lu(e,t)}},tn=function(){return j},nn=function(e,t){var n=j;try{return j=e,t()}finally{j=n}},Ye=function(e,t,n){switch(t){case`input`:if(Oe(e,n),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name=`+JSON.stringify(``+t)+`][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=Qi(r);if(!a)throw Error(i(90));Ce(r),Oe(r,a)}}}break;case`textarea`:O(e,n);break;case`select`:t=n.value,t!=null&&Me(e,!!n.multiple,t,!1)}},tt=Cl,nt=wl;var yu={usingClientEntryPoint:!1,Events:[Xi,Zi,Qi,$e,et,Cl]},bu={findFiberByHostInstance:Yi,bundleType:0,version:`18.3.1`,rendererPackageName:`react-dom`},xu={bundleType:bu.bundleType,version:bu.version,rendererPackageName:bu.rendererPackageName,rendererConfig:bu.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:x.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=bt(e),e===null?null:e.stateNode},findFiberByHostInstance:bu.findFiberByHostInstance||uu,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:`18.3.1-next-f1338f8080-20240426`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var Su=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Su.isDisabled&&Su.supportsFiber)try{Mt=Su.inject(xu),Nt=Su}catch{}}e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=yu,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!mu(t))throw Error(i(200));return ru(e,t,null,n)},e.createRoot=function(e,t){if(!mu(e))throw Error(i(299));var n=!1,r=``,a=du;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(a=t.onRecoverableError)),t=nu(e,1,!1,null,null,n,!1,r,a),e[Gi]=t.current,yi(e.nodeType===8?e.parentNode:e),new fu(t)},e.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=bt(t),e=e===null?null:e.stateNode,e},e.flushSync=function(e){return wl(e)},e.hydrate=function(e,t,n){if(!hu(t))throw Error(i(200));return vu(null,e,t,!0,n)},e.hydrateRoot=function(e,t,n){if(!mu(e))throw Error(i(405));var r=n!=null&&n.hydratedSources||null,a=!1,o=``,s=du;if(n!=null&&(!0===n.unstable_strictMode&&(a=!0),n.identifierPrefix!==void 0&&(o=n.identifierPrefix),n.onRecoverableError!==void 0&&(s=n.onRecoverableError)),t=au(t,null,e,1,n??null,a,!1,o,s),e[Gi]=t.current,yi(e),r)for(e=0;e<r.length;e++)n=r[e],a=n._getVersion,a=a(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new pu(t)},e.render=function(e,t,n){if(!hu(t))throw Error(i(200));return vu(null,e,t,!1,n)},e.unmountComponentAtNode=function(e){if(!hu(e))throw Error(i(40));return e._reactRootContainer?(wl(function(){vu(null,null,e,!1,function(){e._reactRootContainer=null,e[Gi]=null})}),!0):!1},e.unstable_batchedUpdates=Cl,e.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!hu(n))throw Error(i(200));if(e==null||e._reactInternals===void 0)throw Error(i(38));return vu(e,t,n,!1,r)},e.version=`18.3.1-next-f1338f8080-20240426`})),s=t(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=o()})),c=t((e=>{var t=r(),n=Symbol.for(`react.element`),i=Symbol.for(`react.fragment`),a=Object.prototype.hasOwnProperty,o=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,s={key:!0,ref:!0,__self:!0,__source:!0};function c(e,t,r){var i,c={},l=null,u=null;for(i in r!==void 0&&(l=``+r),t.key!==void 0&&(l=``+t.key),t.ref!==void 0&&(u=t.ref),t)a.call(t,i)&&!s.hasOwnProperty(i)&&(c[i]=t[i]);if(e&&e.defaultProps)for(i in t=e.defaultProps,t)c[i]===void 0&&(c[i]=t[i]);return{$$typeof:n,type:e,key:l,ref:u,props:c,_owner:o.current}}e.Fragment=i,e.jsx=c,e.jsxs=c})),l=t(((e,t)=>{t.exports=c()}));function u(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=u(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function d(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=u(e))&&(r&&(r+=` `),r+=t);return r}var f=`-`,p=e=>{let t=_(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{let n=e.split(f);return n[0]===``&&n.length!==1&&n.shift(),m(n,t)||g(e)},getConflictingClassGroupIds:(e,t)=>{let i=n[e]||[];return t&&r[e]?[...i,...r[e]]:i}}},m=(e,t)=>{if(e.length===0)return t.classGroupId;let n=e[0],r=t.nextPart.get(n),i=r?m(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;let a=e.join(f);return t.validators.find(({validator:e})=>e(a))?.classGroupId},h=/^\[(.+)\]$/,g=e=>{if(h.test(e)){let t=h.exec(e)[1],n=t?.substring(0,t.indexOf(`:`));if(n)return`arbitrary..`+n}},_=e=>{let{theme:t,prefix:n}=e,r={nextPart:new Map,validators:[]};return ee(Object.entries(e.classGroups),n).forEach(([e,n])=>{v(n,r,e,t)}),r},v=(e,t,n,r)=>{e.forEach(e=>{if(typeof e==`string`){let r=e===``?t:y(t,e);r.classGroupId=n;return}if(typeof e==`function`){if(b(e)){v(e(r),t,n,r);return}t.validators.push({validator:e,classGroupId:n});return}Object.entries(e).forEach(([e,i])=>{v(i,y(t,e),n,r)})})},y=(e,t)=>{let n=e;return t.split(f).forEach(e=>{n.nextPart.has(e)||n.nextPart.set(e,{nextPart:new Map,validators:[]}),n=n.nextPart.get(e)}),n},b=e=>e.isThemeGetter,ee=(e,t)=>t?e.map(([e,n])=>[e,n.map(e=>typeof e==`string`?t+e:typeof e==`object`?Object.fromEntries(Object.entries(e).map(([e,n])=>[t+e,n])):e)]):e,te=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=new Map,r=new Map,i=(i,a)=>{n.set(i,a),t++,t>e&&(t=0,r=n,n=new Map)};return{get(e){let t=n.get(e);if(t!==void 0)return t;if((t=r.get(e))!==void 0)return i(e,t),t},set(e,t){n.has(e)?n.set(e,t):i(e,t)}}},x=`!`,ne=e=>{let{separator:t,experimentalParseClassName:n}=e,r=t.length===1,i=t[0],a=t.length,o=e=>{let n=[],o=0,s=0,c;for(let l=0;l<e.length;l++){let u=e[l];if(o===0){if(u===i&&(r||e.slice(l,l+a)===t)){n.push(e.slice(s,l)),s=l+a;continue}if(u===`/`){c=l;continue}}u===`[`?o++:u===`]`&&o--}let l=n.length===0?e:e.substring(s),u=l.startsWith(x);return{modifiers:n,hasImportantModifier:u,baseClassName:u?l.substring(1):l,maybePostfixModifierPosition:c&&c>s?c-s:void 0}};return n?e=>n({className:e,parseClassName:o}):o},re=e=>{if(e.length<=1)return e;let t=[],n=[];return e.forEach(e=>{e[0]===`[`?(t.push(...n.sort(),e),n=[]):n.push(e)}),t.push(...n.sort()),t},ie=e=>({cache:te(e.cacheSize),parseClassName:ne(e),...p(e)}),ae=/\s+/,S=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i}=t,a=[],o=e.trim().split(ae),s=``;for(let e=o.length-1;e>=0;--e){let t=o[e],{modifiers:c,hasImportantModifier:l,baseClassName:u,maybePostfixModifierPosition:d}=n(t),f=!!d,p=r(f?u.substring(0,d):u);if(!p){if(!f){s=t+(s.length>0?` `+s:s);continue}if(p=r(u),!p){s=t+(s.length>0?` `+s:s);continue}f=!1}let m=re(c).join(`:`),h=l?m+x:m,g=h+p;if(a.includes(g))continue;a.push(g);let _=i(p,f);for(let e=0;e<_.length;++e){let t=_[e];a.push(h+t)}s=t+(s.length>0?` `+s:s)}return s};function oe(){let e=0,t,n,r=``;for(;e<arguments.length;)(t=arguments[e++])&&(n=se(t))&&(r&&(r+=` `),r+=n);return r}var se=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=se(e[r]))&&(n&&(n+=` `),n+=t);return n};function ce(e,...t){let n,r,i,a=o;function o(o){return n=ie(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)}function s(e){let t=r(e);if(t)return t;let a=S(e,n);return i(e,a),a}return function(){return a(oe.apply(null,arguments))}}var C=e=>{let t=t=>t[e]||[];return t.isThemeGetter=!0,t},le=/^\[(?:([a-z-]+):)?(.+)\]$/i,w=/^\d+\/\d+$/,T=new Set([`px`,`full`,`screen`]),ue=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,de=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,fe=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,E=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,pe=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,me=e=>ge(e)||T.has(e)||w.test(e),he=e=>Oe(e,`length`,ke),ge=e=>!!e&&!Number.isNaN(Number(e)),_e=e=>Oe(e,`number`,ge),ve=e=>!!e&&Number.isInteger(Number(e)),ye=e=>e.endsWith(`%`)&&ge(e.slice(0,-1)),D=e=>le.test(e),be=e=>ue.test(e),xe=new Set([`length`,`size`,`percentage`]),Se=e=>Oe(e,xe,Ae),Ce=e=>Oe(e,`position`,Ae),we=new Set([`image`,`url`]),Te=e=>Oe(e,we,Me),Ee=e=>Oe(e,``,je),De=()=>!0,Oe=(e,t,n)=>{let r=le.exec(e);return r?r[1]?typeof t==`string`?r[1]===t:t.has(r[1]):n(r[2]):!1},ke=e=>de.test(e)&&!fe.test(e),Ae=()=>!1,je=e=>E.test(e),Me=e=>pe.test(e),Ne=ce(()=>{let e=C(`colors`),t=C(`spacing`),n=C(`blur`),r=C(`brightness`),i=C(`borderColor`),a=C(`borderRadius`),o=C(`borderSpacing`),s=C(`borderWidth`),c=C(`contrast`),l=C(`grayscale`),u=C(`hueRotate`),d=C(`invert`),f=C(`gap`),p=C(`gradientColorStops`),m=C(`gradientColorStopPositions`),h=C(`inset`),g=C(`margin`),_=C(`opacity`),v=C(`padding`),y=C(`saturate`),b=C(`scale`),ee=C(`sepia`),te=C(`skew`),x=C(`space`),ne=C(`translate`),re=()=>[`auto`,`contain`,`none`],ie=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],ae=()=>[`auto`,D,t],S=()=>[D,t],oe=()=>[``,me,he],se=()=>[`auto`,ge,D],ce=()=>[`bottom`,`center`,`left`,`left-bottom`,`left-top`,`right`,`right-bottom`,`right-top`,`top`],le=()=>[`solid`,`dashed`,`dotted`,`double`,`none`],w=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],T=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`],ue=()=>[``,`0`,D],de=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],fe=()=>[ge,D];return{cacheSize:500,separator:`:`,theme:{colors:[De],spacing:[me,he],blur:[`none`,``,be,D],brightness:fe(),borderColor:[e],borderRadius:[`none`,``,`full`,be,D],borderSpacing:S(),borderWidth:oe(),contrast:fe(),grayscale:ue(),hueRotate:fe(),invert:ue(),gap:S(),gradientColorStops:[e],gradientColorStopPositions:[ye,he],inset:ae(),margin:ae(),opacity:fe(),padding:S(),saturate:fe(),scale:fe(),sepia:ue(),skew:fe(),space:S(),translate:S()},classGroups:{aspect:[{aspect:[`auto`,`square`,`video`,D]}],container:[`container`],columns:[{columns:[be]}],"break-after":[{"break-after":de()}],"break-before":[{"break-before":de()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:[...ce(),D]}],overflow:[{overflow:ie()}],"overflow-x":[{"overflow-x":ie()}],"overflow-y":[{"overflow-y":ie()}],overscroll:[{overscroll:re()}],"overscroll-x":[{"overscroll-x":re()}],"overscroll-y":[{"overscroll-y":re()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:[h]}],"inset-x":[{"inset-x":[h]}],"inset-y":[{"inset-y":[h]}],start:[{start:[h]}],end:[{end:[h]}],top:[{top:[h]}],right:[{right:[h]}],bottom:[{bottom:[h]}],left:[{left:[h]}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[`auto`,ve,D]}],basis:[{basis:ae()}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`wrap`,`wrap-reverse`,`nowrap`]}],flex:[{flex:[`1`,`auto`,`initial`,`none`,D]}],grow:[{grow:ue()}],shrink:[{shrink:ue()}],order:[{order:[`first`,`last`,`none`,ve,D]}],"grid-cols":[{"grid-cols":[De]}],"col-start-end":[{col:[`auto`,{span:[`full`,ve,D]},D]}],"col-start":[{"col-start":se()}],"col-end":[{"col-end":se()}],"grid-rows":[{"grid-rows":[De]}],"row-start-end":[{row:[`auto`,{span:[ve,D]},D]}],"row-start":[{"row-start":se()}],"row-end":[{"row-end":se()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":[`auto`,`min`,`max`,`fr`,D]}],"auto-rows":[{"auto-rows":[`auto`,`min`,`max`,`fr`,D]}],gap:[{gap:[f]}],"gap-x":[{"gap-x":[f]}],"gap-y":[{"gap-y":[f]}],"justify-content":[{justify:[`normal`,...T()]}],"justify-items":[{"justify-items":[`start`,`end`,`center`,`stretch`]}],"justify-self":[{"justify-self":[`auto`,`start`,`end`,`center`,`stretch`]}],"align-content":[{content:[`normal`,...T(),`baseline`]}],"align-items":[{items:[`start`,`end`,`center`,`baseline`,`stretch`]}],"align-self":[{self:[`auto`,`start`,`end`,`center`,`stretch`,`baseline`]}],"place-content":[{"place-content":[...T(),`baseline`]}],"place-items":[{"place-items":[`start`,`end`,`center`,`baseline`,`stretch`]}],"place-self":[{"place-self":[`auto`,`start`,`end`,`center`,`stretch`]}],p:[{p:[v]}],px:[{px:[v]}],py:[{py:[v]}],ps:[{ps:[v]}],pe:[{pe:[v]}],pt:[{pt:[v]}],pr:[{pr:[v]}],pb:[{pb:[v]}],pl:[{pl:[v]}],m:[{m:[g]}],mx:[{mx:[g]}],my:[{my:[g]}],ms:[{ms:[g]}],me:[{me:[g]}],mt:[{mt:[g]}],mr:[{mr:[g]}],mb:[{mb:[g]}],ml:[{ml:[g]}],"space-x":[{"space-x":[x]}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":[x]}],"space-y-reverse":[`space-y-reverse`],w:[{w:[`auto`,`min`,`max`,`fit`,`svw`,`lvw`,`dvw`,D,t]}],"min-w":[{"min-w":[D,t,`min`,`max`,`fit`]}],"max-w":[{"max-w":[D,t,`none`,`full`,`min`,`max`,`fit`,`prose`,{screen:[be]},be]}],h:[{h:[D,t,`auto`,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],"min-h":[{"min-h":[D,t,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],"max-h":[{"max-h":[D,t,`min`,`max`,`fit`,`svh`,`lvh`,`dvh`]}],size:[{size:[D,t,`auto`,`min`,`max`,`fit`]}],"font-size":[{text:[`base`,be,he]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`,_e]}],"font-family":[{font:[De]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`,D]}],"line-clamp":[{"line-clamp":[`none`,ge,_e]}],leading:[{leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`,me,D]}],"list-image":[{"list-image":[`none`,D]}],"list-style-type":[{list:[`none`,`disc`,`decimal`,D]}],"list-style-position":[{list:[`inside`,`outside`]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[_]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[_]}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...le(),`wavy`]}],"text-decoration-thickness":[{decoration:[`auto`,`from-font`,me,he]}],"underline-offset":[{"underline-offset":[`auto`,me,D]}],"text-decoration-color":[{decoration:[e]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:S()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,D]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,D]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-opacity":[{"bg-opacity":[_]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:[...ce(),Ce]}],"bg-repeat":[{bg:[`no-repeat`,{repeat:[``,`x`,`y`,`round`,`space`]}]}],"bg-size":[{bg:[`auto`,`cover`,`contain`,Se]}],"bg-image":[{bg:[`none`,{"gradient-to":[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},Te]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[m]}],"gradient-via-pos":[{via:[m]}],"gradient-to-pos":[{to:[m]}],"gradient-from":[{from:[p]}],"gradient-via":[{via:[p]}],"gradient-to":[{to:[p]}],rounded:[{rounded:[a]}],"rounded-s":[{"rounded-s":[a]}],"rounded-e":[{"rounded-e":[a]}],"rounded-t":[{"rounded-t":[a]}],"rounded-r":[{"rounded-r":[a]}],"rounded-b":[{"rounded-b":[a]}],"rounded-l":[{"rounded-l":[a]}],"rounded-ss":[{"rounded-ss":[a]}],"rounded-se":[{"rounded-se":[a]}],"rounded-ee":[{"rounded-ee":[a]}],"rounded-es":[{"rounded-es":[a]}],"rounded-tl":[{"rounded-tl":[a]}],"rounded-tr":[{"rounded-tr":[a]}],"rounded-br":[{"rounded-br":[a]}],"rounded-bl":[{"rounded-bl":[a]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[_]}],"border-style":[{border:[...le(),`hidden`]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":[`divide-y-reverse`],"divide-opacity":[{"divide-opacity":[_]}],"divide-style":[{divide:le()}],"border-color":[{border:[i]}],"border-color-x":[{"border-x":[i]}],"border-color-y":[{"border-y":[i]}],"border-color-s":[{"border-s":[i]}],"border-color-e":[{"border-e":[i]}],"border-color-t":[{"border-t":[i]}],"border-color-r":[{"border-r":[i]}],"border-color-b":[{"border-b":[i]}],"border-color-l":[{"border-l":[i]}],"divide-color":[{divide:[i]}],"outline-style":[{outline:[``,...le()]}],"outline-offset":[{"outline-offset":[me,D]}],"outline-w":[{outline:[me,he]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:oe()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[_]}],"ring-offset-w":[{"ring-offset":[me,he]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:[``,`inner`,`none`,be,Ee]}],"shadow-color":[{shadow:[De]}],opacity:[{opacity:[_]}],"mix-blend":[{"mix-blend":[...w(),`plus-lighter`,`plus-darker`]}],"bg-blend":[{"bg-blend":w()}],filter:[{filter:[``,`none`]}],blur:[{blur:[n]}],brightness:[{brightness:[r]}],contrast:[{contrast:[c]}],"drop-shadow":[{"drop-shadow":[``,`none`,be,D]}],grayscale:[{grayscale:[l]}],"hue-rotate":[{"hue-rotate":[u]}],invert:[{invert:[d]}],saturate:[{saturate:[y]}],sepia:[{sepia:[ee]}],"backdrop-filter":[{"backdrop-filter":[``,`none`]}],"backdrop-blur":[{"backdrop-blur":[n]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[c]}],"backdrop-grayscale":[{"backdrop-grayscale":[l]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[u]}],"backdrop-invert":[{"backdrop-invert":[d]}],"backdrop-opacity":[{"backdrop-opacity":[_]}],"backdrop-saturate":[{"backdrop-saturate":[y]}],"backdrop-sepia":[{"backdrop-sepia":[ee]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":[o]}],"border-spacing-x":[{"border-spacing-x":[o]}],"border-spacing-y":[{"border-spacing-y":[o]}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[`none`,`all`,``,`colors`,`opacity`,`shadow`,`transform`,D]}],duration:[{duration:fe()}],ease:[{ease:[`linear`,`in`,`out`,`in-out`,D]}],delay:[{delay:fe()}],animate:[{animate:[`none`,`spin`,`ping`,`pulse`,`bounce`,D]}],transform:[{transform:[``,`gpu`,`none`]}],scale:[{scale:[b]}],"scale-x":[{"scale-x":[b]}],"scale-y":[{"scale-y":[b]}],rotate:[{rotate:[ve,D]}],"translate-x":[{"translate-x":[ne]}],"translate-y":[{"translate-y":[ne]}],"skew-x":[{"skew-x":[te]}],"skew-y":[{"skew-y":[te]}],"transform-origin":[{origin:[`center`,`top`,`top-right`,`right`,`bottom-right`,`bottom`,`bottom-left`,`left`,`top-left`,D]}],accent:[{accent:[`auto`,e]}],appearance:[{appearance:[`none`,`auto`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,D]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":[`none`,`auto`]}],resize:[{resize:[`none`,`y`,`x`,``]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":S()}],"scroll-mx":[{"scroll-mx":S()}],"scroll-my":[{"scroll-my":S()}],"scroll-ms":[{"scroll-ms":S()}],"scroll-me":[{"scroll-me":S()}],"scroll-mt":[{"scroll-mt":S()}],"scroll-mr":[{"scroll-mr":S()}],"scroll-mb":[{"scroll-mb":S()}],"scroll-ml":[{"scroll-ml":S()}],"scroll-p":[{"scroll-p":S()}],"scroll-px":[{"scroll-px":S()}],"scroll-py":[{"scroll-py":S()}],"scroll-ps":[{"scroll-ps":S()}],"scroll-pe":[{"scroll-pe":S()}],"scroll-pt":[{"scroll-pt":S()}],"scroll-pr":[{"scroll-pr":S()}],"scroll-pb":[{"scroll-pb":S()}],"scroll-pl":[{"scroll-pl":S()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,D]}],fill:[{fill:[e,`none`]}],"stroke-w":[{stroke:[me,he,_e]}],stroke:[{stroke:[e,`none`]}],sr:[`sr-only`,`not-sr-only`],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-s`,`border-w-e`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-s`,`border-color-e`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]}}});function Pe(...e){return Ne(d(e))}function O(e){let t=e.trim();if(!t)throw Error(`typed key id is required`);return{id:t}}function Fe(e){return typeof e==`string`?e.trim():e.id}var Ie=class{listeners=new Map;globalListeners=new Set;listenerCount=0;onFirstSubscriber;onListenerError;onNoSubscribers;constructor(e={}){this.onFirstSubscriber=e.onFirstSubscriber,this.onListenerError=e.onListenerError,this.onNoSubscribers=e.onNoSubscribers}emit=(e,t,n={})=>{let r={type:Fe(e),payload:t,...n.emittedAt?{emittedAt:n.emittedAt}:{},...n.source?{source:n.source}:{}};this.emitEnvelope(r)};emitEnvelope=e=>{let t=this.listeners.get(e.type);if(t)for(let n of t)this.safeInvokeListener(e,n);if(this.globalListeners.size!==0)for(let t of this.globalListeners)this.safeInvokeGlobalListener(e,t)};on=(e,t)=>{let n=Fe(e),r=this.listeners.get(n)??new Set,i=t,a=!r.has(i);return r.add(i),this.listeners.set(n,r),a&&this.registerSubscriber(),()=>{this.off(e,t)}};off=(e,t)=>{let n=Fe(e),r=this.listeners.get(n);if(!r)return;let i=r.delete(t);r.size===0&&this.listeners.delete(n),i&&this.unregisterSubscriber()};once=(e,t)=>{let n=this.on(e,(e,r)=>{n(),t(e,r)});return n};subscribeAll=e=>{let t=!this.globalListeners.has(e);return this.globalListeners.add(e),t&&this.registerSubscriber(),()=>{this.globalListeners.delete(e)&&this.unregisterSubscriber()}};registerSubscriber=()=>{this.listenerCount+=1,this.listenerCount===1&&this.onFirstSubscriber?.()};unregisterSubscriber=()=>{this.listenerCount=Math.max(0,this.listenerCount-1),this.listenerCount===0&&this.onNoSubscribers?.()};safeInvokeListener=(e,t)=>{try{t(e.payload,e)}catch(t){this.onListenerError?.({type:e.type,payload:e.payload,error:t})}};safeInvokeGlobalListener=(e,t)=>{try{t(e)}catch(t){this.onListenerError?.({type:e.type,payload:e.payload,error:t})}}};function k(e){return O(e)}var Le={configUpdated:k(`config.updated`),channelConfigApplyStatus:k(`channel.config.apply-status`),sessionUpdated:k(`session.updated`),sessionRunStatus:k(`session.run-status`),sessionRunQueueUpdated:k(`session.run-queue.updated`),sessionMetadataChanged:k(`session.metadata.changed`),ncpEvent:k(`ncp.event`),sessionSummaryUpsert:k(`session.summary.upsert`),sessionSummaryDelete:k(`session.summary.delete`),uiShowContent:k(`ui.show-content`),serverPathChanged:k(`server-path.changed`),inboxDeliveryChanged:k(`inbox.delivery.changed`),configReloadStarted:k(`config.reload.started`),configReloadFinished:k(`config.reload.finished`),error:k(`error`),connectionOpen:k(`connection.open`),connectionClose:k(`connection.close`),connectionError:k(`connection.error`),runtimeUpdateSnapshot:k(`runtime.update.snapshot`)},Re=`session_materialization`,ze=`chat_continuation_target_message_id`;O(`extension.channel.config.get`),O(`extension.channel.message.submit`),O(`extension.diagnostic.emit`),O(`extension.channel.command.list`),O(`extension.channel.command.execute`),O(`extension.runtime.ready`),O(`extension.response`),O(`extension.observation.event`),O(`agent-run.send`),O(`agent-run.abort`),O(`agent-run.edit-message`),O(`agent-run.continue`),O(`agent-run.session-message.request`);var Be=`__nextclaw_runtime_default__`;function Ve(e){return e===Be}var He=`ui_inline_tokens`,Ue=`project`,We=`conversation_excerpt`,Ge=`workspace_file`,Ke=`workspace_directory`,qe=`workspace_excerpt`,Je=`system_object`,Ye={bootstrapQueryParam:`nextclawContentParams`,bootstrapQueryValue:`1`,maxDepth:32,maxSerializedBytes:64*1024,windowNamePrefix:`nextclaw:content-params:v1:`},Xe=class extends Error{constructor(e){super(e),this.name=`UiContentParamsError`}};function Ze(e,t,n){if(e===null||typeof e==`string`||typeof e==`boolean`)return;if(typeof e==`number`){if(!Number.isFinite(e))throw new Xe(`params must contain only finite numbers.`);return}if(typeof e!=`object`)throw new Xe(`params must contain only JSON values.`);if(t>=Ye.maxDepth)throw new Xe(`params must not exceed ${Ye.maxDepth} nested levels.`);if(n.includes(e))throw new Xe(`params must not contain circular references.`);let r=[...n,e];if(Array.isArray(e)){for(let n of e)Ze(n,t+1,r);return}let i=Object.getPrototypeOf(e);if(i!==Object.prototype&&i!==null)throw new Xe(`params must contain only plain objects.`);for(let n of Object.values(e))Ze(n,t+1,r)}function Qe(e){if(e===void 0)return;if(typeof e!=`object`||!e||Array.isArray(e))throw new Xe(`params must be a JSON object.`);Ze(e,0,[]);let t=JSON.stringify(e);if(new TextEncoder().encode(t).byteLength>Ye.maxSerializedBytes)throw new Xe(`params must not exceed ${Ye.maxSerializedBytes} serialized bytes.`);return e}function $e(e){let t=Qe(e);return t?`${Ye.windowNamePrefix}${JSON.stringify(t)}`:void 0}function et(e,t){if(!Qe(t))return e;let[n,r]=e.split(`#`,2),i=n.indexOf(`?`),a=i>=0?n.slice(0,i):n,o=new URLSearchParams(i>=0?n.slice(i+1):``);return o.set(Ye.bootstrapQueryParam,Ye.bootstrapQueryValue),`${a}?${o.toString()}${typeof r==`string`?`#${r}`:``}`}var tt=`ui_resource`,nt=80,rt=512,it=8192;function at(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function ot(e,t){if(typeof e!=`string`)return null;let n=e.trim();return n&&n.length<=t?n:null}function st(e){if(!at(e))return null;let t=ot(e.uri,it),n=ot(e.resourceKind,nt),r=ot(e.title,rt),i=ot(e.currentUrl,it);if(!t||!n||!r||!i)return null;try{let a=Qe(e.contentParams);return{uri:t,resourceKind:n,title:r,currentUrl:i,...a?{contentParams:structuredClone(a)}:{}}}catch{return null}}var ct=`objects`,lt=`inbox-delivery`;function ut(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function dt(e){return typeof e==`string`&&e.trim()?e.trim():null}function ft(e,t){let n=e.trim(),r=t.trim();if(!n||!r)throw Error(`System object type and id must be non-empty.`);return`nextclaw://${ct}/${encodeURIComponent(n)}/${encodeURIComponent(r)}`}function pt(e){try{let t=new URL(e.trim());if(t.protocol!==`nextclaw:`||t.host!==`objects`||t.search||t.hash)return null;let n=t.pathname.split(`/`).filter(Boolean);if(n.length!==2)return null;let r=decodeURIComponent(n[0]??``).trim(),i=decodeURIComponent(n[1]??``).trim();return r&&i?{objectType:r,objectId:i}:null}catch{return null}}function mt(e){if(!ut(e))return null;let t=dt(e.uri),n=dt(e.objectType),r=dt(e.objectId),i=dt(e.label),a=dt(e.updatedAt),o=dt(e.version),s=dt(e.assetUri),c=dt(e.fileName),l=dt(e.mimeType),{sizeBytes:u}=e,d=t?pt(t):null;return!t||!n||!r||!d||d.objectType!==n||d.objectId!==r||!i||!a||!o||!s||!c||!l||typeof u!=`number`||!Number.isSafeInteger(u)||u<0?null:{uri:t,objectType:n,objectId:r,label:i,description:dt(e.description),updatedAt:a,version:o,assetUri:s,fileName:c,mimeType:l,sizeBytes:u}}var ht={contentHeightMessageType:`nextclaw:panel-app-content-height`,displayMode:`card`,displayModeSearchParam:`nextclawDisplayMode`,placement:`inline`,placementSearchParam:`nextclawPlacement`},gt={restoreScrollMessageType:`nextclaw:panel-app-restore-scroll`,scrollMessageType:`nextclaw:panel-app-scroll`,version:1};function _t(e,t){return Math.ceil(Math.max(e?.clientHeight??0,e?.offsetHeight??0,e?.scrollHeight??0,t.offsetHeight))}var vt=/<\s*noreply\s*\/\s*>/i;function yt(e){return!!(e&&vt.test(e))}function bt(e){return e.role===`assistant`&&e.parts.some(e=>(e.type===`text`||e.type===`rich-text`)&&yt(e.text))}var xt={agentsPageTitle:`Agent 管理`,agentsPageDescription:`管理可对话的 Agent 身份。每个 Agent 都有自己的主目录、设定、记忆与技能。`,agentsHeroEyebrow:`Agent 管理台`,agentsHeroTitle:`让每个 Agent 都像真正的协作者一样存在`,agentsHeroDescription:`在这里浏览、创建并切换不同的 Agent 身份。每个 Agent 都有自己的头像、名称、主目录,以及独立的记忆与技能空间。`,agentsCreateButton:`新增 Agent`,agentsCreateDialogTitle:`创建新的 Agent 身份`,agentsCreateDialogDescription:`默认逻辑保持简单。只填必要信息,其余能力继续走统一配置与主目录模板。`,agentsCreateDialogHint:"如果你希望让 AI 自动完成全部自定义,也可以继续使用 `nextclaw agents new`。",agentsCreateTitle:`创建 Agent`,agentsCreateDescription:"这里提供轻量入口。完整自动化创建链路也可通过 `nextclaw agents new` 使用。",agentsFormIdPlaceholder:`Agent ID,例如 engineer`,agentsFormNamePlaceholder:`显示名称,可选`,agentsFormDescriptionPlaceholder:`角色描述,可选`,agentsFormAvatarPlaceholder:`头像 URL 或本地路径,可选`,agentsFormHomePlaceholder:`主目录,可选`,agentsFormRuntimePlaceholder:`Runtime(如 native 或 codex,可选)`,agentsRuntimeSelectPlaceholder:`选择 Runtime`,agentsRuntimeUnavailableHelp:`当前 Runtime 已不在可用列表中;建议改选一个已安装且可用的 Runtime。`,agentsCreateAction:`创建 Agent`,agentsViewDetailsAction:`查看详情`,agentsEditAction:`编辑`,agentsEditDialogTitle:`编辑 Agent 身份`,agentsEditDialogDescription:`更新名称、角色描述与头像。Agent ID 与主目录保持稳定,避免影响既有记忆、技能与会话。`,agentsEditHomeReadonly:`主目录保持不变`,agentsEditHomeReadonlyHint:`如需迁移主目录,请走独立配置迁移流程,避免意外丢失 Agent 上下文。`,agentsEditSaveAction:`保存编辑`,agentsAdvancedConfigToggle:`高级配置`,agentsAdvancedConfigDescription:`留空会继承默认配置;填写后会成为这个 Agent 的专属覆盖。`,agentsAdvancedInheritOption:`继承默认`,agentsAdvancedInheritPlaceholder:`留空继承默认`,agentsAdvancedContextTokensLabel:`上下文窗口大小`,agentsAdvancedReservedContextTokensLabel:`预留上下文大小`,agentsAdvancedMaxToolIterationsLabel:`最大工具迭代次数`,agentsAdvancedThinkingDefaultLabel:`默认思考强度`,agentsAdvancedRuntimeConfigLabel:`Runtime 配置 JSON`,agentsAdvancedModelsLabel:`模型覆盖 JSON`,agentsAdvancedJsonPlaceholder:`留空继承默认;填写时请输入 JSON 对象`,agentsAdvancedInvalidNumberError:`高级配置里的数字必须是有效数字`,agentsAdvancedInvalidJsonError:`高级配置 JSON 解析失败`,agentsAdvancedJsonObjectError:`高级配置 JSON 必须是对象`,agentsAdvancedParseFailed:`高级配置解析失败`,agentsDetailsDialogTitle:`Agent 详情`,agentsDetailsDialogDescription:`查看这个 Agent 当前可见的身份、运行时与上下文配置。`,agentsDetailsEditAction:`编辑`,agentsDetailsIdentitySection:`身份`,agentsDetailsRuntimeSection:`运行`,agentsDetailsContextSection:`上下文`,agentsDetailsBehaviorSection:`行为`,agentsDetailsFieldId:`Agent ID`,agentsDetailsFieldDisplayName:`显示名称`,agentsDetailsFieldDescription:`角色描述`,agentsDetailsFieldWorkspace:`主目录`,agentsDetailsFieldAvatar:`头像`,agentsDetailsFieldModel:`模型`,agentsDetailsFieldRuntime:`Runtime`,agentsDetailsFieldRuntimeConfig:`Runtime 配置`,agentsDetailsFieldContextTokens:`上下文窗口大小`,agentsDetailsFieldReservedContextTokens:`预留上下文大小`,agentsDetailsFieldMaxToolIterations:`最大工具迭代次数`,agentsDetailsFieldThinkingDefault:`默认思考强度`,agentsDetailsFieldModelOverrides:`模型覆盖`,agentsDetailsInheritedDefault:`继承默认`,agentsDetailsAgentOverride:`Agent 覆盖`,agentsDetailsEmptyValue:`暂无描述`,agentsDetailsUnsetValue:`未设置`,agentsRemoveAction:`移除`,agentsNewChat:`新建会话`,agentsLoading:`正在加载 Agent...`,agentsEmpty:`当前还没有附加 Agent`,agentsEmptyDescription:`先创建第一个专职 Agent,让它拥有自己的名字、头像与主目录。`,agentsBuiltIn:`内建`,agentsCustom:`自定义`,agentsOverviewTotal:`全部 Agent`,agentsOverviewBuiltIn:`系统主 Agent`,agentsOverviewCustom:`专职 Agent`,agentsCardBuiltInSummary:`系统主 Agent,适合作为默认入口与总控协作者。`,agentsCardCustomSummary:`专属 Agent 身份,可沉淀自己的记忆、技能与角色风格。`,agentsCardRuntimeLabel:`Runtime`,agentsCardContextTokensLabel:`上下文`,agentsCardHomeLabel:`主目录`,agentsCardAvatarLabel:`Avatar`,agentsCardStartChat:`开始对话`,agentsCardBuiltInTag:`系统主`,agentsCardCustomTag:`专职`,chatDraftAgentTitle:`本次会话 Agent`,chatDraftAgentDescription:`创建后不可切换`,chatDraftAgentCurrent:`当前 Agent`},St={weixinAuthTitle:`扫码连接微信`,weixinAuthDescription:`微信渠道现在以扫码连接为主流程。`,weixinAuthHint:`通常只需要点击按钮并扫码确认,连接成功后会自动写入配置。`,weixinAuthCapabilityHint:`连接成功后,Agent 可以通过微信渠道向已知微信用户主动发消息。`,weixinAuthPrimaryAccount:`当前默认账号`,weixinAuthConnectedAccounts:`已连接账号`,weixinAuthBaseUrl:`当前接口地址`,weixinAuthConnect:`扫码连接微信`,weixinAuthReconnect:`重新扫码连接`,weixinAuthStarting:`正在生成二维码...`,weixinAuthWaiting:`等待扫码确认`,weixinAuthScanned:`已扫码,等待确认`,weixinAuthAuthorized:`已连接`,weixinAuthConnectedDisabled:`已连接,但渠道未启用`,weixinAuthNotConnected:`未连接`,weixinAuthDisabledHint:`当前账号已完成扫码连接,但渠道处于未启用状态。打开 Enabled 后才会开始收发消息。`,weixinAuthRetryRequired:`二维码已失效,请重新扫码。`,weixinAuthQrAlt:`微信登录二维码`,weixinAuthScanPrompt:`请用微信扫码,并在手机上确认登录。`,weixinAuthExpiresAt:`二维码过期时间`,weixinAuthOpenQr:`新窗口打开二维码`,weixinAuthReadyTitle:`准备连接微信`,weixinAuthReadyDescription:`点击左侧按钮后,这里会显示二维码。整个首配流程默认不需要手动填写底层参数。`,weixinAuthAdvancedTitle:`高级设置`,weixinAuthAdvancedDescription:`仅在你需要自定义接口地址、账号映射或白名单时再展开这些字段。`,feishuAuthTitle:`扫码连接飞书`,feishuAuthCreateNew:`创建新智能体`,feishuAuthConnectExisting:`连接已有智能体`,feishuAuthDescription:`飞书渠道使用扫码创建新的智能体,不再要求手动复制应用凭证。`,feishuAuthHint:`点击按钮后用飞书扫码确认,连接成功后会自动保存新智能体凭证并启用 WebSocket 收发。`,feishuAuthCapabilityHint:`连接成功后,Agent 可以通过飞书自建应用收发私聊和群聊消息。`,feishuAuthDisabledHint:`当前飞书应用已完成扫码连接,但渠道处于未启用状态。打开 Enabled 后才会开始收发消息。`,feishuAuthConnect:`扫码连接飞书`,feishuAuthQrAlt:`飞书智能体创建二维码`,feishuAuthScanPrompt:`请用飞书扫码,并按页面提示完成智能体创建授权。`,feishuAuthReadyTitle:`准备连接飞书`,feishuAuthReadyDescription:`点击左侧按钮后,这里会显示智能体创建二维码。已有智能体请切换到连接入口。`,feishuAuthAdvancedTitle:`高级设置`,feishuAuthAdvancedDescription:`仅在你需要切换 Feishu/Lark 域名、指定默认账号、白名单或群聊策略时再展开这些字段。`,feishuAuthDomain:`飞书平台`,feishuPlatform:`平台`,feishuExistingAgentTitle:`连接已有飞书智能体`,feishuExistingAgentDescription:`填入已有智能体的 App ID 和 App Secret。`,feishuExistingAgentHint:`在飞书开放平台选择已有智能体,进入基础信息里的凭证与基础信息,然后复制凭证回来验证。`,feishuExistingAgentOpenFeishuList:`打开飞书智能体列表`,feishuExistingAgentOpenLarkList:`打开 Lark 智能体列表`,feishuExistingAgentConnect:`验证并连接`,feishuExistingAgentConnecting:`正在验证`,feishuExistingAgentConnectSuccess:`飞书智能体已连接`},Ct={channelsPageTitle:`消息渠道`,channelsPageDescription:`在一个页面中连续筛选、切换并配置各个消息渠道。`,channelsLoading:`加载渠道中...`,channelsTabEnabled:`已启用`,channelsTabAll:`全部渠道`,channelsFilterPlaceholder:`搜索渠道`,channelsNoMatch:`没有匹配的渠道`,channelsSelectTitle:`选择左侧渠道开始配置`,channelsSelectDescription:`你可以连续切换多个渠道并逐个保存配置。`,channelsFormDescription:`配置消息渠道参数`,channelsEmptyTitle:`暂无启用渠道`,channelsEmptyDescription:`启用一个消息渠道以开始接收消息。`,channelDescriptionDefault:`配置该通信渠道`,channelDescTelegram:`连接 Telegram 机器人以进行即时消息收发`,channelDescSlack:`接入 Slack 工作区进行团队协作消息处理`,channelDescEmail:`通过邮件协议收发消息`,channelDescWebhook:`接收 HTTP Webhook 以支持自定义集成`,channelDescDiscord:`将 Discord 机器人连接到你的社区服务器`,channelDescFeishu:`企业消息与协作平台接入`,channelDescWeixin:`通过微信扫码登录并使用长轮询收发个人微信消息`,configureMessageChannelParameters:`配置消息渠道参数`,channelsGuideTitle:`查看指南`,allowFrom:`允许来源`,token:`Token`,botToken:`Bot Token`,appToken:`App Token`,appId:`App ID`,domain:`域名`,corpId:`企业 ID`,agentId:`应用 Agent ID`,appSecret:`App Secret`,markdownSupport:`Markdown 支持`,clientId:`Client ID`,clientSecret:`Client Secret`,encryptKey:`加密密钥`,verificationToken:`验证令牌`,bridgeUrl:`桥接 URL`,gatewayUrl:`网关 URL`,proxy:`代理`,intents:`Intents`,mode:`模式`,webhookPath:`Webhook 路径`,callbackPort:`回调端口`,callbackPath:`回调路径`,defaultAccountId:`默认账号 ID`,pollTimeoutMs:`长轮询超时(毫秒)`,accountsJson:`账号配置 JSON`,groupPolicy:`群组策略`},wt={chatPageTitle:`Agent 对话`,chatPageDescription:`在 UI 内直接与 Agent 交互,支持多会话与多 Agent 切换。`,chatRefresh:`刷新`,chatNewSession:`新会话`,chatSearchSessionPlaceholder:`搜索会话 key / 标签`,chatAgentLabel:`目标 Agent`,chatSelectAgent:`选择 Agent`,chatModelLabel:`对话模型`,chatSelectModel:`选择模型`,chatRuntimeDefaultModel:`运行时默认`,chatThinkingLevelOff:`思考关闭`,chatThinkingLevelMinimal:`思考 Minimal`,chatThinkingLevelLow:`思考 Low`,chatThinkingLevelMedium:`思考 Medium`,chatThinkingLevelHigh:`思考 High`,chatThinkingLevelAdaptive:`思考 Adaptive`,chatThinkingLevelXhigh:`思考 XHigh`,chatSessionTypeLabel:`会话类型`,chatSessionTypeNative:`原生`,chatSessionTypeCodex:`Codex`,chatSessionTypeClaude:`Claude Code`,chatSessionTypeWeixin:`微信`,chatSessionTypeFeishu:`飞书`,chatSessionTypeCron:`定时任务`,chatSessionTypeUnavailableSuffix:`当前不可用,请启用对应运行时或新建 Native 会话。`,chatModelNoOptions:`暂无可用模型,请先配置提供商。`,chatGoConfigureProvider:`去配置提供商`,chatProviderSetupTitle:`开始前先配置提供商`,chatProviderSetupDescription:`你还没有可用模型。先在提供商页面配置并保存至少一个 Provider 后,再回来开始对话。`,chatSessionLabel:`当前会话`,chatSessionSwitch:`切换会话`,chatSessionSwitcherTitle:`最近会话`,chatSessionSwitcherNoResults:`没有匹配的会话`,chatNoSession:`未选择会话`,chatHistoryLoading:`加载会话历史中...`,chatBackToParent:`返回父会话`,chatSessionOpenChildSessions:`查看子会话`,chatSessionOpenCronJobs:`查看本会话定时任务`,chatSessionOpenWorkspace:`打开会话工作台`,chatSessionCloseWorkspace:`收起会话工作台`,chatChildSessionLoading:`正在加载子会话…`,chatChildSessionEmpty:`子会话还没有消息。`,chatWorkspaceBack:`工作区后退`,chatWorkspaceForward:`工作区前进`,chatWorkspaceRefreshFile:`刷新预览`,chatWorkspaceMaximizePanel:`最大化工作区侧栏`,chatWorkspaceRestorePanel:`还原工作区侧栏`,chatWorkspaceClosePanel:`关闭工作区侧栏`,chatWorkspaceOverview:`概览`,chatWorkspaceOverviewDescription:`查看与当前会话相关的子会话、定时任务和项目文件。`,chatWorkspaceContinuousAttention:`持续关注`,chatWorkspaceContinuousAttentionDescription:`查看这个会话持续获取的状态和事件。`,chatWorkspaceContinuousAttentionState:`状态`,chatWorkspaceContinuousAttentionEvents:`事件`,chatWorkspaceContinuousAttentionTotal:`总数`,chatWorkspaceContinuousAttentionNeedsAttention:`需要处理`,chatWorkspaceContinuousAttentionStatusActive:`运行中`,chatWorkspaceContinuousAttentionStatusPaused:`已暂停`,chatWorkspaceContinuousAttentionStatusDegraded:`异常`,chatWorkspaceContinuousAttentionStatusExpired:`已过期`,chatWorkspaceContinuousAttentionStatusBroken:`不可用`,chatWorkspaceContinuousAttentionCreated:`建立于`,chatWorkspaceContinuousAttentionExpires:`到期于`,chatWorkspaceContinuousAttentionLastRead:`最近读取`,chatWorkspaceContinuousAttentionPending:`待处理 {count}`,chatWorkspaceContinuousAttentionSuppressed:`已抑制 {count}`,chatWorkspaceContinuousAttentionFailures:`投递失败 {count}`,chatWorkspaceContinuousAttentionPause:`暂停`,chatWorkspaceContinuousAttentionResume:`恢复`,chatWorkspaceContinuousAttentionRemove:`移除`,chatWorkspaceContinuousAttentionUpdating:`更新中…`,chatWorkspaceContinuousAttentionRemoveTitle:`移除持续关注?`,chatWorkspaceContinuousAttentionRemoveDescription:`移除后,这个会话将不再保持这条状态或事件关系。此操作无法撤销。`,chatWorkspaceContinuousAttentionLoading:`正在加载持续关注…`,chatWorkspaceContinuousAttentionLoadFailed:`持续关注加载失败。`,chatWorkspaceContinuousAttentionRetry:`重试`,chatWorkspaceContinuousAttentionActionFailed:`操作失败,请重试。`,chatWorkspaceContinuousAttentionEmpty:`暂无持续关注`,chatWorkspaceContinuousAttentionEmptyDescription:`Agent 尚未为这个会话建立这类持续关系。`,chatWorkspaceTokenUsage:`Token 用量`,chatWorkspaceTokenUsageDescription:`统计当前会话自身的 AI 运行。缓存输入已包含在输入 Token 中;命中率为缓存读取占全部输入的比例。`,chatWorkspaceTokenUsageLoading:`正在统计 Token 用量…`,chatWorkspaceTokenUsageLoadFailed:`Token 用量加载失败。`,chatWorkspaceTokenUsageRetry:`重试`,chatWorkspaceTokenUsageEmpty:`当前会话还没有可统计的 Token 用量。部分模型或旧运行可能不会报告用量。`,chatWorkspaceTokenUsageTotal:`总 Token`,chatWorkspaceTokenUsageInput:`输入`,chatWorkspaceTokenUsageOutput:`输出`,chatWorkspaceTokenUsageCachedInput:`缓存输入`,chatWorkspaceTokenUsageCacheHitRate:`缓存命中率`,chatWorkspaceTokenUsageRuns:`AI 运行`,chatWorkspaceTokenUsageByModel:`按模型`,chatWorkspaceTokenUsageModelRunCount:`{count} 次运行`,chatWorkspaceTokenUsageModelCacheHitRate:`缓存命中率 {rate}`,chatWorkspaceTokenUsageReported:`用量已报告`,chatWorkspaceTokenUsagePartial:`部分用量`,chatWorkspaceTokenUsageUnavailable:`用量不可用`,chatWorkspaceChildSessionsDescription:`查看从当前会话创建的子会话。`,chatWorkspaceChildSessionsEmpty:`当前还没有子会话。`,chatWorkspaceCreateChildSession:`新建子会话`,chatWorkspaceSessionCronJobsDescription:`查看与当前会话关联的定时任务。`,chatWorkspaceProjectFiles:`项目文件`,chatWorkspaceShowProjectFiles:`展开项目文件`,chatWorkspaceHideProjectFiles:`收起项目文件`,chatWorkspaceResizeProjectFiles:`调整项目文件宽度`,chatWorkspaceProjectFilesDescription:`浏览已选项目目录中的文件。`,chatWorkspaceProjectFilesUnavailable:`请先选择项目目录,再浏览其中的文件。`,chatWorkspaceSideChatDraftTitle:`侧边对话`,chatWorkspaceSideChatDraftSubtitle:`发送第一条消息后,会继承父会话上下文并创建真实子会话。`,chatWorkspaceChildSessions:`子会话`,chatWorkspaceOpen:`打开`,chatWorkspaceOpenFiles:`打开的文件`,chatWorkspacePreview:`预览`,chatWorkspaceOpenPreview:`打开预览`,chatWorkspaceOpenSource:`打开源码`,chatWorkspaceFileMoreActions:`文件操作`,chatWorkspaceDiff:`Diff`,chatWorkspaceCloseFile:`关闭文件`,chatWorkspaceCloseTab:`关闭标签页`,chatWorkspaceLoadingPreview:`正在加载预览…`,chatWorkspaceLoadingFile:`正在加载文件…`,chatWorkspaceLoadingDirectory:`正在加载目录…`,chatWorkspaceOpenDirectory:`打开目录`,chatWorkspaceOpenFile:`打开文件`,chatWorkspaceDirectoryEmpty:`这个目录为空。`,chatWorkspaceDirectoryLoadFailed:`读取目录失败`,chatWorkspaceFileContextMenu:`项目文件操作`,chatWorkspaceRootContextMenu:`项目根目录操作`,chatWorkspaceAddToChat:`添加到聊天`,chatWorkspaceMoreActionsFor:`{name} 的更多操作`,chatWorkspaceNewFolder:`新建文件夹`,chatWorkspaceNewFile:`新建文件`,chatWorkspaceRefreshExplorer:`刷新项目文件`,chatWorkspaceCollapseAll:`全部折叠`,chatWorkspaceRootMoreActions:`更多项目文件操作`,chatWorkspaceFileName:`文件名称`,chatWorkspaceFileNamePlaceholder:`未命名文件`,chatWorkspaceFileCreated:`文件已创建。`,chatWorkspaceFileCreateFailed:`创建文件失败`,chatWorkspaceCreateFolder:`创建`,chatWorkspaceCreateFolderIn:`在 {name} 中创建`,chatWorkspaceFolderName:`文件夹名称`,chatWorkspaceFolderNamePlaceholder:`未命名文件夹`,chatWorkspaceFolderCreated:`文件夹已创建。`,chatWorkspaceFolderCreateFailed:`无法创建文件夹`,chatWorkspaceUploadFiles:`上传文件`,chatWorkspaceUploadingFiles:`正在上传…`,chatWorkspaceUploadFilesHere:`上传文件到此处`,chatWorkspaceUploadSucceeded:`已上传 {count} 个文件。`,chatWorkspaceUploadFailed:`无法上传文件`,chatWorkspaceUploadConflictTitle:`替换已有文件?`,chatWorkspaceUploadConflictDescription:`这个文件夹中已有 {count} 个同名文件。替换后无法撤销。`,chatWorkspaceReplaceFiles:`替换文件`,chatWorkspaceDownloadFile:`下载`,chatWorkspaceDelete:`删除`,chatWorkspaceRename:`重命名`,chatWorkspaceRenameSucceeded:`已重命名为 {name}。`,chatWorkspaceRenameFailed:`重命名失败`,chatWorkspaceRenameName:`新名称`,chatWorkspaceDeleting:`正在删除 {name}…`,chatWorkspaceDeleteFileTitle:`删除 {name}?`,chatWorkspaceDeleteFolderTitle:`删除文件夹 {name}?`,chatWorkspaceDeleteFileDescription:`这个文件将从项目工作区中永久删除。`,chatWorkspaceDeleteFolderDescription:`这个文件夹及其中的全部内容将从项目工作区中永久删除。`,chatWorkspaceDeleteSucceeded:`已删除 {name}。`,chatWorkspaceDeleteFailed:`无法删除 {name}`,chatWorkspaceExcerptSelectionTooLong:`选择内容过长`,chatWorkspaceRevealInFileManager:`在文件管理器中显示`,chatWorkspaceCopyPath:`复制路径`,chatWorkspaceCopyRelativePath:`复制相对路径`,chatWorkspaceCopyPathFailed:`无法复制路径。`,chatWorkspaceRevealPathFailed:`无法在文件管理器中显示该项目。`,chatWorkspacePreviewUnsupported:`该文件暂不支持在侧栏预览。`,chatWorkspacePreviewUnsupportedHint:`旧版 Word、PowerPoint、压缩包等暂不支持的格式,可以下载后用本机应用打开。`,chatWorkspacePreviewFailed:`文件预览失败。你仍可以下载后用本机应用打开。`,chatWorkspacePreviewNotFound:`找不到这个文件。它可能已被移动、重命名或删除。`,chatWorkspaceSpreadsheetPreviewTruncated:`工作簿较大,当前最多显示 500 行和 100 列。`,chatWorkspacePreviewDownload:`下载文件`,chatWorkspacePreviewOpenExternally:`用系统应用打开`,chatWorkspacePreviewEmpty:`当前没有可显示的文件内容。`,chatWorkspaceDiffEmpty:`当前没有可显示的 diff 内容。`,chatWorkspaceHtmlPreviewTitle:`HTML 渲染预览`,chatWorkspacePreviewTruncated:`内容已截断`,chatWorkspaceSessionCronJobs:`定时任务`,chatWorkspaceCronJobEmpty:`这个会话暂无定时任务。`,chatSessionUnread:`会话有未读更新`,chatTyping:`Agent 正在思考...`,chatReasoningInProgressCharacterCount:`思考中 · 已思考 {count} 个字符`,chatReasoningCompletedCharacterCount:`已思考 {count} 个字符`,chatToolTerminalRunning:`执行中`,chatToolTerminalSuccess:`已执行`,chatToolTerminalError:`执行失败`,chatToolTerminalCancelled:`已取消执行`,chatToolFileReadRunning:`读取中`,chatToolFileReadSuccess:`已读取`,chatToolFileReadError:`读取失败`,chatToolFileReadCancelled:`已取消读取`,chatToolFileEditRunning:`编辑中`,chatToolFileEditSuccess:`已编辑`,chatToolFileEditError:`编辑失败`,chatToolFileEditCancelled:`已取消编辑`,chatToolSearchRunning:`搜索中`,chatToolSearchSuccess:`已搜索`,chatToolSearchError:`搜索失败`,chatToolSearchCancelled:`已取消搜索`,chatToolDirectoryRunning:`正在查看目录`,chatToolDirectorySuccess:`已查看目录`,chatToolDirectoryError:`查看目录失败`,chatToolDirectoryCancelled:`已取消查看目录`,chatToolWebRunning:`正在读取网页`,chatToolWebSuccess:`已读取网页`,chatToolWebError:`读取网页失败`,chatToolWebCancelled:`已取消读取网页`,chatToolMessageRunning:`正在发送消息`,chatToolMessageSuccess:`已发送消息`,chatToolMessageError:`发送消息失败`,chatToolMessageCancelled:`已取消发送消息`,chatToolSessionRunning:`正在读取会话`,chatToolSessionSuccess:`已读取会话`,chatToolSessionError:`读取会话失败`,chatToolSessionCancelled:`已取消读取会话`,chatToolAgentRunning:`正在处理子任务`,chatToolAgentSuccess:`已处理子任务`,chatToolAgentError:`处理子任务失败`,chatToolAgentCancelled:`已取消处理子任务`,chatToolMemoryRunning:`正在访问记忆`,chatToolMemorySuccess:`已访问记忆`,chatToolMemoryError:`访问记忆失败`,chatToolMemoryCancelled:`已取消访问记忆`,chatToolScheduleRunning:`正在管理定时任务`,chatToolScheduleSuccess:`已管理定时任务`,chatToolScheduleError:`管理定时任务失败`,chatToolScheduleCancelled:`已取消管理定时任务`,chatToolSystemRunning:`正在管理服务`,chatToolSystemSuccess:`已管理服务`,chatToolSystemError:`管理服务失败`,chatToolSystemCancelled:`已取消管理服务`,chatToolImageRunning:`正在查看图片`,chatToolImageSuccess:`已查看图片`,chatToolImageError:`查看图片失败`,chatToolImageCancelled:`已取消查看图片`,chatToolDisplayRunning:`正在展示结果`,chatToolDisplaySuccess:`已展示结果`,chatToolDisplayError:`展示结果失败`,chatToolDisplayCancelled:`已取消展示结果`,chatScrollToBottom:`滚动到底部`,chatHistoryLoadFailed:`较早消息加载失败`,chatHistoryRetry:`重试`,chatProcessSummaryProcessed:`已处理`,chatProcessSummaryToolCalls:`{count} 次工具调用`,chatToolPayloadLoading:`正在加载详情`,chatToolPayloadLoadFailed:`详情加载失败,点击重试`,chatToolActivityShowMore:`继续显示 {count} 项(剩余 {remaining} 项)`,chatAiExecutionInput:`输入`,chatAiExecutionOutput:`输出`,chatAiExecutionTokens:`Token`,chatAiExecutionPartial:`部分用量`,chatMessageMoreActions:`更多操作`,chatAiExecutionViewMetadata:`查看运行元数据`,chatAiExecutionMetadataTitle:`AI 运行元数据`,chatAiExecutionMetadataDescription:`随本条 assistant 消息持久化的运行事实,可用于检查与调试。`,chatAiExecutionMetadataClose:`关闭运行元数据`,chatAiExecutionNotAvailable:`暂无`,chatAiExecutionRunId:`运行 ID`,chatAiExecutionRuntime:`Runtime`,chatAiExecutionModel:`模型`,chatAiExecutionRequestedModel:`请求模型`,chatAiExecutionOutcome:`运行结果`,chatAiExecutionInputTokens:`输入 Token`,chatAiExecutionOutputTokens:`输出 Token`,chatAiExecutionCachedInputTokens:`缓存输入 Token`,chatAiExecutionTotalTokens:`总 Token`,chatAiExecutionModelCallCount:`模型调用次数`,chatAiExecutionReportedModelCallCount:`已报告用量的调用次数`,chatAiExecutionUsageStatus:`用量状态`,chatAiExecutionOutcomeCompleted:`已完成`,chatAiExecutionOutcomeFailed:`失败`,chatAiExecutionOutcomeAborted:`已取消`,chatAiExecutionUsageReported:`已报告`,chatAiExecutionUsagePartial:`部分报告`,chatAiExecutionUsageUnavailable:`不可用`,chatToolActivityReadOne:`读取 1 个文件`,chatToolActivityReadOther:`读取 {count} 个文件`,chatToolActivityEditOne:`编辑 1 个文件`,chatToolActivityEditOther:`编辑 {count} 个文件`,chatToolActivityDirectoryOne:`查看 1 个目录`,chatToolActivityDirectoryOther:`查看 {count} 个目录`,chatToolActivitySearchOne:`搜索 1 次`,chatToolActivitySearchOther:`搜索 {count} 次`,chatToolActivityBashOne:`运行 1 条命令`,chatToolActivityBashOther:`运行 {count} 条命令`,chatToolActivityWebOne:`访问 1 个网页`,chatToolActivityWebOther:`访问 {count} 个网页`,chatToolActivityAgentOne:`启动 1 个子任务`,chatToolActivityAgentOther:`启动 {count} 个子任务`,chatToolActivityPanelOne:`展示 1 个结果`,chatToolActivityPanelOther:`展示 {count} 个结果`,chatToolActivityOtherOne:`调用 1 个工具`,chatToolActivityOtherOther:`调用 {count} 个工具`,chatProcessSummaryFailed:`失败`,chatProcessSummaryCancelled:`已取消`,chatRuntimeInitializing:`聊天能力正在初始化。你可以先输入内容,完成后即可发送。`,chatRuntimeInitializationFailed:`聊天能力启动失败,请稍后重试或检查服务日志。`,chatInputPlaceholder:`输入消息,/ 选命令、应用或技能,@ 引用文件、文件夹、项目或面板应用,Enter 发送,Shift + Enter 换行`,chatInputPlaceholderCompact:`发消息...`,chatWelcomeInputPlaceholder:`描述你想完成的目标……`,chatInputHint:`支持多轮上下文,默认走当前会话。`,chatSlashSection:`斜杠菜单`,chatSlashSectionCommands:`命令`,chatSlashSectionSkills:`技能`,chatSlashFilterAll:`全部`,chatSlashFilterCommands:`命令`,chatSlashFilterSkills:`技能`,chatSlashFilterPanelApps:`面板应用`,chatSlashTypeCommand:`命令`,chatSlashTypeSkill:`技能`,chatSlashSkillSpec:`标识`,chatSlashSkillScope:`作用域`,chatSlashLoading:`加载命令、面板应用与技能中…`,chatSlashNoResult:`无匹配项`,chatSlashHint:`输入 / 触发命令、面板应用或技能选择`,chatSlashCommandHint:`回车执行这个命令。`,chatSlashCommandSideChatTitle:`侧边对话`,chatSlashCommandSideChatDescription:`打开一个继承当前会话上下文的右侧草稿会话。`,chatSlashCommandSideChatDetail:`只有发送第一条消息后才会创建真实 child 会话。`,chatSlashCommandCompactContextTitle:`压缩上下文`,chatSlashCommandCompactContextDescription:`总结较早的消息,为当前会话释放上下文空间。`,chatSlashCommandCompactContextDetail:`保留最近一轮和当前任务,供后续继续处理。`,chatSlashCommandCompactContextSuccess:`上下文已压缩`,chatSlashCommandCompactContextFailed:`无法压缩上下文`,chatSlashCommandUpdateSessionTitleTitle:`更新会话标题`,chatSlashCommandUpdateSessionTitleDescription:`让 AI 根据当前会话内容生成简洁标题并完成更新。`,chatSlashCommandUpdateSessionTitleDetail:`命令会自动发送一条消息,不会覆盖输入框中的草稿。`,chatSlashCommandUpdateSessionTitlePrompt:`请根据当前会话内容生成一个简洁、准确的标题,然后立即使用 sessions_update 工具更新当前会话标题。不要只给出标题建议。`,chatSlashPanelAppHint:`回车在右侧打开这个面板应用。`,chatSlashSkillHint:`回车把该技能加入本轮请求。`,chatPanelAppReferenceLoading:`加载面板应用中…`,chatPanelAppReferenceSection:`面板应用`,chatPanelAppReferenceNoResult:`没有匹配的面板应用`,chatPanelAppReferenceHint:`输入 @ 引用面板应用`,chatPanelAppReferenceItemHint:`回车引用这个面板应用。`,chatPanelAppReferenceType:`面板应用`,chatPanelAppReferenceAppId:`应用 ID`,chatPanelAppReferenceFile:`文件`,chatPanelAppReferenceNoDescription:`暂无面板应用描述`,chatContextReferenceLoading:`搜索引用中…`,chatContextReferenceSection:`引用`,chatContextReferenceNoResult:`没有匹配的系统对象、文件、文件夹、项目或面板应用`,chatContextReferenceHint:`输入 @ 引用系统对象、文件、文件夹、项目或面板应用`,chatContextReferenceItemHint:`回车添加这个引用。`,chatContextReferenceFilesLabel:`文件`,chatContextReferenceFilesType:`项目文件`,chatContextReferenceFilesDescription:`浏览并引用当前项目中的文件。`,chatContextReferenceFilesHint:`回车进入文件列表。`,chatContextReferenceFoldersLabel:`文件夹`,chatContextReferenceFoldersType:`项目文件夹`,chatContextReferenceFoldersDescription:`浏览并引用当前项目中的文件夹。`,chatContextReferenceFoldersHint:`回车进入文件夹列表。`,chatContextReferenceBack:`返回全部引用`,chatContextReferenceBackDescription:`返回系统对象、文件、文件夹、项目和面板应用的统一引用入口。`,chatContextReferenceBackHint:`回车返回。`,chatContextReferenceParent:`返回上一级`,chatContextReferenceParentDescription:`在不关闭引用菜单的情况下浏览上一级文件夹。`,chatContextReferenceParentHint:`回车打开上一级文件夹。`,chatContextReferenceCurrentDirectory:`引用当前文件夹`,chatSystemObjectSection:`系统对象`,chatSystemObjectGroupHint:`回车进入该分类。`,chatSystemObjectResolveFailed:`无法引用系统对象`,chatContextReferenceFileDescription:`把这个文件作为本次消息的显式上下文。`,chatContextReferenceDirectoryDescription:`把这个文件夹作为本次消息的上下文范围。`,chatContextReferenceProjectsLabel:`项目`,chatContextReferenceProjectsType:`项目上下文`,chatContextReferenceProjectsDescription:`从已登记项目中选择一个,作为本次消息的上下文。`,chatContextReferenceProjectsHint:`回车进入项目列表。`,chatContextReferenceProjectType:`项目`,chatContextReferenceProjectDescription:`把这个项目的名称、路径和目录概览作为本次消息的显式上下文。`,chatContextReferenceProjectPath:`项目路径`,chatContextReferenceProjectSection:`项目`,chatContextReferenceProjectsLoadFailed:`项目加载失败`,chatContextReferenceProjectRoot:`项目目录`,chatContextReferenceSearchFailed:`引用搜索失败`,chatSkillScopeBuiltin:`内建`,chatSkillScopeGlobal:`全局`,chatSkillScopeProject:`项目`,chatSkillScopeWorkspace:`工作区`,chatSkillGroupBuiltin:`内建技能`,chatSkillGroupGlobal:`全局技能`,chatSkillGroupProject:`项目技能`,chatSkillGroupWorkspace:`NextClaw 技能`,chatPickerRecent:`最近使用`,chatPickerFavoriteModels:`收藏模型`,chatPickerRecentModels:`最近选择`,chatPickerAllModels:`全部模型`,chatModelSearchPlaceholder:`搜索模型`,chatModelSearchEmpty:`没有匹配的模型`,chatFavoriteModel:`收藏模型`,chatUnfavoriteModel:`取消收藏`,chatManageModels:`管理模型与提供商`,chatDiscoveredModelsSummary:`发现 {count} 个可添加的新模型`,chatDiscoveredModelsView:`查看`,chatDiscoveredModelsGroup:`新模型`,chatDiscoveredModelsDismiss:`忽略这批提醒`,chatDiscoveredModelsDone:`完成`,chatDiscoveredModelsClose:`关闭新模型窗口`,chatDiscoveredModelAdd:`添加`,chatDiscoveredModelAddedShort:`已添加`,chatDiscoveredModelAdded:`已添加 {model}`,chatDiscoveredModelUnavailable:`这个模型已不可用,请重新打开模型选择器`,chatPickerAllSkills:`全部技能`,chatSend:`发送`,chatContinueRun:`继续运行`,chatEditMessage:`编辑消息`,chatEditMessageCancel:`取消`,chatEditMessagePlaceholder:`编辑消息`,chatEditMessageSubmit:`发送`,chatStop:`停止`,chatStopPreparing:`正在建立可停止会话,请稍候…`,chatStopUnavailable:`当前后端引擎不支持手动停止。`,chatContextWindow:`上下文窗口`,chatContextWindowUsed:`预计占用`,chatContextWindowFixed:`系统与工具`,chatContextWindowDynamic:`会话内容`,chatContextWindowTrigger:`自动压缩线`,chatContextWindowReserve:`输出预留`,chatContextWindowTotal:`总窗口`,chatContextWindowAvailable:`剩余`,chatContextWindowAvailableBeforeCompaction:`距自动压缩`,chatContextWindowPruned:`安全裁剪后`,chatContextWindowDroppedHistory:`已丢弃历史消息`,chatContextWindowTruncatedTools:`已截断工具结果`,chatContextWindowUpdatedAt:`更新时间`,chatContextCompactionCompressing:`正在压缩较早上下文`,chatContextCompactionCompressed:`较早上下文已自动压缩`,chatContextCompactionCancelled:`上下文压缩已取消`,chatContextCompactionFailed:`上下文压缩失败`,chatContextCompactionCoveredMessages:`覆盖消息数`,chatContextCompactionOriginalTokens:`压缩前估算`,chatContextCompactionProjectedTokens:`压缩后估算`,chatContextInheritanceInherited:`已继承父会话上下文`,chatContextInheritanceSourceSession:`来源会话`,chatContextInheritanceMessages:`继承消息数`,chatSending:`发送中...`,chatQueueSend:`排队发送`,chatQueuedBannerAttachmentFallback:`附件消息`,chatQueuedSubmitting:`正在加入队列…`,chatQueuedEdit:`编辑排队输入`,chatQueuedDelete:`删除排队输入`,chatQueuedSteer:`插入当前运行的下一步`,chatQueuedEditComposerNotEmpty:`请先发送或清空输入框,再编辑排队内容`,chatSteeringPending:`等待进入下一步`,chatDeleteSession:`删除会话`,chatDeleteSessionConfirm:`确认删除当前会话?`,chatSessionMoreActions:`更多操作`,chatSessionCopyId:`复制会话 ID`,chatSessionCopyIdSuccess:`会话 ID 已复制`,chatSessionCopyIdFailed:`无法复制会话 ID。`,chatSessionViewMetadata:`查看元数据`,chatSessionMetadataDialogTitle:`会话元数据`,chatSessionMetadataDialogDescription:`当前会话保存的原始元数据。`,chatSessionSetProject:`设置项目目录`,chatSessionClearProject:`清除项目目录`,chatSessionProjectDialogTitle:`设置项目目录`,chatSessionProjectDialogDescription:`把当前会话绑定到运行 NextClaw 服务的那台机器上的一个目录,让后续消息和工具执行围绕这个目录展开。`,chatSessionProjectPathLabel:`项目目录路径`,chatSessionProjectPathPlaceholder:`/path/to/project`,chatSessionProjectUpdateHint:`这里浏览和选择的是服务端机器上的目录。修改项目目录只影响后续消息和后续工具执行,不会改写历史会话。`,chatSessionProjectUpdated:`项目目录已更新`,chatSessionProjectCleared:`项目目录已清除`,chatProjectAdd:`添加项目`,chatProjectAddTitle:`添加项目`,chatProjectAddDescription:`新建一个项目目录,或将已有目录添加到项目列表。`,chatProjectCreateMode:`新建项目`,chatProjectCreateModeDescription:`创建新的项目目录,并可使用模板初始化项目内容。`,chatProjectExistingMode:`添加已有目录`,chatProjectExistingModeDescription:`选择服务端机器上的已有目录。项目名称取目录名,不会修改或初始化目录内容。`,chatProjectNameLabel:`项目名称`,chatProjectNamePlaceholder:`例如:个人知识库`,chatProjectTemplateLabel:`项目模板`,chatProjectTemplateEmpty:`空项目`,chatProjectTemplateKnowledgeBase:`知识库`,chatProjectCreatePathLabel:`项目目录(可选)`,chatProjectCreatePathPlaceholder:`/path/to/new-project`,chatProjectCreatePathHint:`留空时,会在默认工作目录下新建与项目同名的文件夹;也可以选择一个空目录。`,chatProjectCreatePathPickerTitle:`选择或新建项目目录`,chatProjectCreatePathPickerDescription:`选择一个空目录,或新建文件夹作为项目目录。`,chatProjectExistingPathLabel:`已有项目目录`,chatProjectExistingPathPlaceholder:`/path/to/existing-project`,chatProjectExistingPathHint:`目录必须已经存在;添加后目录内容保持不变。`,chatProjectExistingPathPickerTitle:`选择已有项目目录`,chatProjectExistingPathPickerDescription:`选择要添加到项目列表的服务端目录。`,chatProjectCreateAction:`创建项目`,chatProjectExistingAction:`添加到项目列表`,chatProjectCreated:`项目已创建`,chatProjectCreateFailed:`创建项目失败`,chatProjectExistingAdded:`项目已添加`,chatProjectExistingFailed:`添加项目失败`,chatSessionErrorTitle:`出错了`,chatSessionActivityInterrupted:`运行意外中断,请重新发送消息。`,chatSendFailed:`发送消息失败`,chatRoleUser:`你`,chatRoleAssistant:`助手`,chatRoleTool:`工具`,chatRoleSystem:`系统`,chatRoleMessage:`消息`,chatObservationEventLabel:`外部事件`,chatObservationEventDetailsTitle:`事件详情`,chatObservationEventExtension:`Extension`,chatObservationEventId:`事件 ID`,chatObservationEventTime:`时间`,chatObservationEventPayloadLabel:`事件数据`,chatObservationEventShowDetails:`查看事件数据`,chatObservationEventPayloadEmpty:`无事件数据`,chatToolCall:`工具调用`,chatToolResult:`工具结果`,chatToolInput:`输入`,chatToolWorkflow:`工具工作流`,chatToolWorkflowDetails:`展开查看参数和结果`,chatToolOutput:`输出`,chatToolNoOutput:`无输出(执行完成)`,chatToolStatusPreparing:`准备中`,chatToolStatusRunning:`执行中`,chatToolStatusCompleted:`已完成`,chatToolStatusFailed:`失败`,chatToolStatusCancelled:`已取消`,chatShowContentAction:`展示内容`,chatPanelCardExpand:`展开到侧栏`,chatReasoning:`推理过程`,chatImageAttachment:`图片附件`,chatFileAttachment:`文件附件`,chatAttachmentOpen:`打开`,chatAttachmentAttached:`已附加`,chatAttachmentExpand:`放大查看`,chatAttachmentClosePreview:`关闭预览`,chatAttachmentCategoryArchive:`压缩包`,chatAttachmentCategoryAudio:`音频`,chatAttachmentCategoryCode:`代码文件`,chatAttachmentCategoryData:`数据文件`,chatAttachmentCategoryDocument:`文档`,chatAttachmentCategoryGeneric:`文件`,chatAttachmentCategoryImage:`图片`,chatAttachmentCategoryPdf:`PDF 文档`,chatAttachmentCategorySheet:`表格`,chatAttachmentCategoryVideo:`视频`,chatUnknownPart:`未知消息片段`,chatCodeCopy:`复制代码`,chatCodeCopied:`已复制`,chatMessageCopy:`复制`,chatMessageCopied:`已复制`,chatMermaidDiagram:`图表`,chatMermaidExpand:`放大图表`,chatMermaidLoading:`正在渲染图表…`,chatMermaidRenderError:`图表无法渲染,已显示源代码`,chatPreviewZoomIn:`放大`,chatPreviewZoomOut:`缩小`,chatPreviewResetZoom:`重置缩放`,chatSidebarNewTask:`新任务`,chatSidebarSearchPlaceholder:`搜索对话...`,chatSidebarScheduledTasks:`定时任务`,chatSidebarSkills:`技能`,chatSidebarTaskRecords:`会话记录`,chatSidebarViewTime:`时间`,chatSidebarViewProject:`项目`,chatSidebarViewMode:`会话列表视图`,chatSidebarToday:`今天`,chatSidebarYesterday:`昨天`,chatSidebarPrevious7Days:`近 7 天`,chatSidebarOlder:`更早`,chatSidebarPinned:`已置顶`,chatSidebarPinSession:`置顶会话`,chatSidebarUnpinSession:`取消置顶会话`,chatSidebarPinProject:`置顶项目`,chatSidebarUnpinProject:`取消置顶项目`,chatSidebarExpandProject:`展开项目`,chatSidebarCollapseProject:`收起项目`,chatSidebarProjectViewEmpty:`还没有项目`,chatBackgroundReplyFallbackTitle:`有新回复`,chatBackgroundReplyFallbackPreview:`回复已完成,点击查看。`,chatBackgroundReplyOpenAriaLabel:`打开“{title}”的新回复`,chatWelcomeTitle:`今天想完成什么?`,chatWelcomeContextLabel:`任务上下文`,chatWelcomeProjectPickerLabel:`选择工作目录`,chatWelcomeProjectPickerPlaceholder:`选择工作目录`,chatWelcomeProjectRecentTitle:`工作目录`,chatWelcomeProjectDefaultBadge:`默认`,chatWelcomeProjectNoRecent:`暂无最近项目`,chatWelcomeProjectOpenFolder:`打开文件夹`,chatWelcomeSessionTypePickerLabel:`选择会话类型`,chatWelcomeSuggestion1Label:`梳理当前项目`,chatWelcomeSuggestion1Prompt:`帮我理解当前项目,并给出接下来最值得推进的三个具体建设方向。`,chatWelcomeSuggestion2Label:`推荐实用技能`,chatWelcomeSuggestion2Prompt:`帮我看看这个项目适合启用哪些技能,并推荐我优先配置哪些能力。`,chatWelcomeSuggestion3Label:`创建定时任务`,chatWelcomeSuggestion3Prompt:`帮我设计一个适合当前项目的定时自动化任务,包括触发条件、消息内容和安全检查。`,chatSkillsPickerTitle:`技能`,chatSkillsPickerEmpty:`暂无已安装技能`,chatSkillsPickerSearchPlaceholder:`搜索技能`,chatSkillsPickerNoDescription:`暂无描述`,chatSkillsPickerOfficial:`官方`,chatSkillsPickerManage:`管理技能`,chatSkillPreviewUnavailable:`无法打开这个技能文件,它可能已被移动或删除。`,chatInputAdd:`添加内容`,chatInputAttach:`添加附件`,chatInputRemoveReference:`移除引用`,chatWorkspaceExcerptCharacterCount:`{count} 个字符`,chatInputAttachmentUnsupported:`当前上传流程不支持该文件类型。`,chatInputAttachmentTooLarge:`文件不能超过 {maxMb} MB。`,chatInputAttachmentReadFailed:`读取文件失败,请重试。`},Tt={chat:`对话`,model:`模型`,searchChannels:`搜索渠道`,providers:`提供商`,extensions:`Extensions`,channels:`渠道`,cron:`定时任务`,secrets:`密钥管理`,runtime:`路由与运行时`,remote:`远程访问`,marketplace:`市场`,advanced:`高级`,settings:`设置`,settingsGroupBasic:`基础配置`,settingsGroupAdvanced:`高级配置`,appearance:`外观`,chatMessageLayoutTitle:`消息布局`,chatMessageLayoutDescription:`选择聊天消息的展示方式。`,chatMessageLayoutCard:`卡片式`,chatMessageLayoutCardDescription:`用户与 AI 消息都使用独立卡片展示。`,chatMessageLayoutFlat:`平铺式`,chatMessageLayoutFlatDescription:`用户消息保留气泡,AI 消息以头像、名称和正文平铺展示。`,settingsMenu:`设置菜单`,sidebarCollapse:`收起侧边栏`,sidebarExpand:`展开侧边栏`,security:`登录管理`,privacy:`隐私与统计`,backToMain:`返回主界面`,enabled:`启用`,disabled:`禁用`,save:`保存`,cancel:`取消`,delete:`删除`,add:`添加`,edit:`编辑`,loading:`加载中...`,success:`成功`,error:`错误`,confirm:`确认`,unchanged:`未修改`,saving:`保存中...`,remove:`移除`,more:`更多`,notificationDismiss:`关闭通知`,all:`全部`,yes:`是`,no:`否`,prev:`上一页`,next:`下一页`,noneOption:`无`,language:`语言`,theme:`主题`,themeNatural:`自然`,themeWork:`默认`,themeMinimal:`简白`,themeWarm:`纸暖`,themeCool:`雾蓝`,themeDawn:`晨砂`,themeGraphite:`石墨`,themeNight:`暗夜`,themeCharcoal:`炭夜`,themeProbe:`探针`,isRequired:`必填`,duplicate:`重复`,notFound:`未找到`,modelPageTitle:`模型配置`,modelPageDescription:`配置默认 AI 模型选择`,defaultModel:`默认模型`,workspace:`工作空间`,modelName:`模型`,modelPickerNoOptions:`暂无可选模型`,modelPickerUseCustom:`使用自定义模型:{value}`,modelPickerToggleOptions:`展开或收起模型选项`,modelInputCustomHint:`如果列表里没有目标模型,可直接输入自定义模型 ID。`,modelIdentifierHelp:`智能体默认模型标识,使用带提供商前缀的格式。例如:openai/gpt-5.1、anthropic/claude-opus-4-1、deepseek/deepseek-chat、minimax/MiniMax-M2.5、openrouter/openai/gpt-5.3-codex。`,maxToolIterations:`最大工具迭代次数`,saveChanges:`保存变更`,providersPageTitle:`AI 提供商`,providersPageDescription:`在一个页面内完成提供商切换、配置与保存。`,providersLoading:`加载中...`,providersTabConfigured:`已配置`,providersTabAll:`全部提供商`,providersFilterPlaceholder:`搜索提供商`,providersNoMatch:`没有匹配的提供商`,providerAdd:`新增提供商`,providerAddCustom:`新增自定义提供商`,providerTemplatePickerTitle:`选择提供商模板`,providerDelete:`删除该提供商`,providerDeleteConfirm:`确认删除这个提供商吗?删除后不可恢复。`,providersSelectPlaceholder:`选择提供商`,providersSelectTitle:`选择左侧提供商开始配置`,providersSelectDescription:`你可以连续切换多个提供商并逐个保存配置。`,providersDefaultDescription:`为你的智能体配置 AI 服务`,providersEmptyTitle:`尚未配置提供商`,providersEmptyDescription:`添加一个 AI 提供商后即可开始使用。`,extensionsPageTitle:`Extensions 管理`,extensionsPageDescription:`查看已发现的 Extension、能力和当前运行状态。`,extensionsRefresh:`刷新`,extensionsLifecycleDescription:`Extension 由运行时按渠道和会话持续关注关系按需启停;这里集中查看全局能力和运行状态。`,extensionsLoading:`正在加载 Extensions…`,extensionsLoadFailed:`Extensions 加载失败。`,extensionsRetry:`重试`,extensionsEmpty:`暂无已发现的 Extension`,extensionsEmptyDescription:`安装或放置 Extension 后,重新刷新此页面。`,extensionsTotal:`全部`,extensionsRunning:`运行中`,extensionsWithObservations:`支持持续关注`,extensionsWithChannels:`支持渠道`,extensionsObservationCapabilities:`持续关注能力`,extensionsChannelCapabilities:`渠道能力`,extensionsContextCapability:`状态`,extensionsEventsCapability:`事件`,extensionsNone:`无`,extensionsLeaseCount:`活跃使用数`,extensionsProcess:`进程`,extensionsStartedAt:`启动于`,extensionsStateRunning:`运行中`,extensionsStateStarting:`启动中`,extensionsStateStopping:`停止中`,extensionsStateStopped:`已停止`,extensionsStateFailed:`失败`,apiKey:`API 密钥`,apiBase:`API Base URL`,extraHeaders:`额外请求头`,wireApi:`请求接口`,wireApiAuto:`自动(优先 Chat,必要时 Responses)`,wireApiChat:`Chat Completions`,wireApiResponses:`Responses`,apiKeySet:`已设置`,apiKeyNotSet:`未设置`,showKey:`显示密钥`,hideKey:`隐藏密钥`,providerFormDescription:`配置 AI 提供商的 API 密钥与参数`,providerDisplayName:`自定义名称`,providerDisplayNamePlaceholder:`例如:中转站 A`,providerDisplayNameHelp:`仅用于界面展示,便于区分多个自定义 Provider。`,enterApiKey:`请输入 API 密钥`,providerApiBaseHelp:`留空或恢复默认即可使用预置 API Base。`,providerApiBaseHelpMinimax:`MiniMax 中国区请使用 https://api.minimaxi.com/v1;海外请使用 https://api.minimax.io/v1。`,providerOpenAICompatHint:`自定义提供商默认按 OpenAI 兼容 API 格式接入(Chat Completions / Responses)。`,providerExtraHeadersHelp:`用于自定义请求头(可选)。`,providerTestConnection:`测试连接`,providerTestingConnection:`测试中...`,providerTestConnectionSuccess:`连接测试通过`,providerTestConnectionFailed:`连接测试失败`,providerModelsTitle:`可用模型列表`,providerModelsFetch:`获取模型列表`,providerModelsFetching:`获取中...`,providerModelsFetchSuccess:`模型列表获取成功`,providerModelsFetchFailed:`获取模型列表失败`,providerModelsApiKeyRequired:`请先填写 API Key,再获取模型列表`,providerModelsAuthorizationFailed:`认证失败,请检查 API Key 是否正确,以及 API 地址是否匹配`,providerModelsSuggestionsChecking:`正在读取模型目录…`,providerModelsSuggestionsFailed:`模型目录读取失败。请检查 API Key、API 地址或网络连接;你仍可手动添加模型。`,providerModelsSuggestionsSummary:`目录中有 {count} 个未添加模型`,providerModelsFetchedSuggestionsSummary:`已获取 {count} 个可添加模型`,providerModelsFetchedAllConfigured:`已获取 {count} 个模型,当前列表已全部包含`,providerModelsSuggestionsAddAll:`全部添加`,providerModelsSuggestionSelect:`选择模型 {model}`,providerModelsSuggestionsSelected:`已选择 {count} 个`,providerModelsSuggestionsAddSelected:`添加所选`,providerModelsSuggestionsSaveHint:`添加后请保存以应用配置。`,providerModelsSuggestionsSearchPlaceholder:`搜索目录模型`,providerModelsSuggestionsSearchEmpty:`没有匹配的模型`,providerModelsSuggestionsShowing:`显示前 {visible} 个匹配项,共 {count} 个;继续搜索可缩小范围`,providerModelsBulkRemove:`批量删除`,providerModelsSelectAll:`全选`,providerModelsClearSelection:`取消全选`,providerModelsRemoveSelected:`删除所选`,providerModelsRemoveSaveHint:`删除只会修改当前草稿,保存后才会应用。`,providerModelInputPlaceholder:`输入 provider 本地模型 ID(可包含 /)`,providerModelInputHint:`列表仅作参考,不在列表也可直接输入并添加。`,providerAddModel:`添加模型`,providerModelsEmpty:`当前没有模型,可直接输入并添加。`,providerModelDefaultTag:`默认`,providerModelCustomTag:`自定义`,providerModelsHelp:`系统会先填充预置模型;你可以在这里新增或删除。请填写不带当前 provider 路由前缀的本地模型 ID;vendor/model 这类多段 ID 合法。若输入包含当前 provider 前缀,只会去掉最外层前缀。`,providerModelsEmptyShort:`暂无可用模型`,providerAddFirstModel:`添加第一个模型`,providerModelVisionTitle:`视觉能力`,providerModelVisionHint:`允许向该模型发送图片输入。`,providerModelThinkingTitle:`思考档位能力`,providerModelThinkingHint:`为该模型声明可切换的思考档位,聊天会话将按这里的能力展示下拉。`,providerModelThinkingDefault:`默认思考档位`,providerModelThinkingDefaultNone:`无默认(回落 off)`,providerModelThinkingNoSupported:`请先至少选择一个支持档位。`,providerDisplayNameHelpShort:`便于区分多个自定义提供商`,providerApiBaseHelpShort:`一般只需填写域名,系统自动补全路径`,providerExtraHeadersHelpShort:`可选,用于自定义鉴权等场景`,providerAdvancedSettings:`高级设置`,providerAuthSectionTitle:`提供商授权`,providerAuthStarting:`启动中...`,providerAuthAuthorizing:`授权中...`,providerAuthAuthorizeInBrowser:`浏览器授权`,providerAuthWaitingBrowser:`等待浏览器完成授权...`,providerAuthCompleted:`授权已完成。`,providerAuthOpenPrompt:`请在浏览器完成授权,验证码:`,providerAuthOpenPromptSuffix:``,providerAuthStartFailed:`启动授权失败`,providerAuthMethodLabel:`授权区域`,providerAuthMethodPlaceholder:`请选择授权方式`,providerAuthImportFromCli:`从 Qwen CLI 导入`,providerAuthImporting:`导入中...`,providerAuthImportSuccess:`已从 CLI 导入凭证。`,providerAuthImportStatusPrefix:`CLI 导入成功。`,providerAuthImportFailed:`导入凭证失败`,providerAuthSessionLabel:`会话`,resetToDefault:`恢复默认`,leaveBlankToKeepUnchanged:`留空则保持不变`,consentGranted:`同意条款`,imapHost:`IMAP 服务器`,imapPort:`IMAP 端口`,imapUsername:`IMAP 用户名`,imapPassword:`IMAP 密码`,imapMailbox:`IMAP 邮箱`,imapUseSsl:`IMAP 使用 SSL`,smtpHost:`SMTP 服务器`,smtpPort:`SMTP 端口`,smtpUsername:`SMTP 用户名`,smtpPassword:`SMTP 密码`,smtpUseTls:`SMTP 使用 TLS`,smtpUseSsl:`SMTP 使用 SSL`,fromAddress:`发件地址`,autoReplyEnabled:`自动回复已启用`,pollIntervalSeconds:`轮询间隔(秒)`,markSeen:`标记为已读`,maxBodyChars:`最大正文字符数`,subjectPrefix:`主题前缀`,baseUrl:`Base URL`,socketUrl:`Socket URL`,socketPath:`Socket 路径`,socketDisableMsgpack:`禁用 Msgpack`,socketReconnectDelayMs:`重连延迟(ms)`,socketMaxReconnectDelayMs:`最大重连延迟(ms)`,socketConnectTimeoutMs:`连接超时(ms)`,refreshIntervalMs:`刷新间隔(ms)`,watchTimeoutMs:`监视超时(ms)`,watchLimit:`监视限制`,retryDelayMs:`重试延迟(ms)`,maxRetryAttempts:`最大重试次数`,clawToken:`Claw Token`,agentUserId:`代理用户ID`,sessions:`会话`,panels:`面板`,mentionRequireInGroups:`群组中需要@`,groups:`群组`,replyDelayMode:`回复延迟模式`,replyDelayMs:`回复延迟(ms)`,secret:`密钥`,accountId:`账号 ID`,dmPolicy:`私聊策略`,groupAllowFrom:`群组允许来源`,requireMention:`需要 @ 提及`,mentionPatterns:`提及匹配规则`,groupRulesJson:`群组规则(JSON)`,allowBotMessages:`允许机器人消息`,attachmentMaxSizeMb:`附件最大体积(MB)`,streamingMode:`流式模式`,draftChunkingJson:`草稿分块(JSON)`,textChunkLimit:`文本分块上限`,invalidJson:`JSON 格式无效`,authBrand:`NextClaw UI`,authLoginTitle:`管理员登录`,authLoginDescription:`认证已开启。登录后才能查看这台机器的 NextClaw UI。`,authUsername:`管理员用户名`,authUsernamePlaceholder:`输入管理员用户名`,authPassword:`管理员密码`,authPasswordPlaceholder:`输入管理员密码`,authConfirmPassword:`确认密码`,authConfirmPasswordPlaceholder:`再次输入密码`,authLoginAction:`登录`,authLoggingIn:`登录中...`,authLoggingOut:`退出中...`,authActionFailed:`认证操作失败`,authLoginSuccess:`登录成功`,authLogoutSuccess:`已退出登录`,authSetupSuccess:`认证已开启,当前标签页已自动登录,可直接继续使用`,authPasswordUpdated:`管理员密码已更新`,authEnabledSuccess:`认证已开启`,authDisabledSuccess:`认证已关闭`,authRetryStatus:`重试`,authStatusLoadFailed:`无法获取认证状态,请检查 UI 服务是否正常。`,authSecurityTitle:`登录管理`,authSecurityDescription:`设置进入 NextClaw 时是否需要登录,并管理登录账号和密码。`,authSetupTitle:`开启轻量认证`,authSetupDescription:`首次开启时设置单个管理员账号。完成后当前标签页会自动登录。`,authSetupAction:`开启认证`,authSettingUp:`开启中...`,authPasswordMismatch:`两次输入的密码不一致`,authPasswordMinLengthHint:`密码至少 8 个字符。当前版本只支持单管理员账号。`,authStatusLabel:`当前状态`,authStatusConfiguredUser:`管理员账号:{username}`,authUsernameFixedHelp:`首版不提供修改用户名和多用户管理;如需重新定义账号,请后续扩展这套边界。`,authEnableLabel:`要求登录`,authEnableOnHelp:`已开启后,除健康检查与认证接口外,其余 UI API 和 WebSocket 都需要登录。`,authEnableOffHelp:`当前保持即开即用。重新打开后,这个标签页会自动拿到新的登录会话。`,authPasswordSectionTitle:`修改管理员密码`,authPasswordSectionDescription:`更新密码后,旧会话会立即失效;当前标签页会自动续成新会话(仅在认证开启时)。`,authPasswordAction:`更新密码`,authPasswordUpdating:`更新中...`,authLogoutAction:`退出当前标签页`,authSessionMemoryNotice:`当前版本的会话只保存在服务端内存里。NextClaw UI 进程重启后,需要重新登录。`,privacyPageTitle:`隐私与统计`,privacyPageDescription:`选择是否分享最小化的产品活跃数据,并把团队自用与测试设备分开。`,productAnalyticsSectionTitle:`产品活跃统计`,productAnalyticsSectionDescription:`默认关闭。修改后立即生效,不需要重启 NextClaw。`,productAnalyticsEnabledTitle:`分享产品活跃数据`,productAnalyticsEnabledDescription:`开启后,只分享是否提交过 Agent 请求以及请求是否成功。`,productAnalyticsAudienceTitle:`统计人群`,productAnalyticsAudienceDescription:`团队成员和测试人员请选择对应分类,避免进入外部用户指标。`,productAnalyticsAudienceExternal:`外部用户`,productAnalyticsAudienceInternal:`团队 / 自用`,productAnalyticsAudienceQa:`QA 测试`,productAnalyticsDataTitle:`数据范围`,productAnalyticsCollectedTitle:`会分享什么`,productAnalyticsCollectedDescription:`事件类型、时间、随机安装标识、运行环境、发布通道、系统类别和产品版本。登录后,安装会与平台账号归并。`,productAnalyticsExcludedTitle:`不会分享什么`,productAnalyticsExcludedDescription:`不会分享消息、提示词、回复、工具参数、会话与项目标识、文件路径、URL、设备指纹或诊断日志。`,productAnalyticsAnonymousTitle:`未登录时如何统计`,productAnalyticsAnonymousDescription:`NextClaw 使用启用后生成的随机安装标识。它只代表一个安装,不等于精确人数,也不会读取硬件标识。`,dmScope:`私聊范围`,dmScopeHelp:`控制私聊会话如何隔离。`,defaultContextTokens:`默认上下文额度`,defaultContextTokensHelp:`当智能体未设置单独值时使用该上下文预算。`,runtimeCompanionEnabled:`桌宠 Companion`,runtimeCompanionEnabledHelp:`开启后会自动拉起悬浮 Companion;关闭后会立即停止,并在下次启动时保持关闭。`,defaultEngine:`默认运行时`,defaultEngineHelp:`默认使用的智能体运行时,例如 native、codex 或 claude。`,agentList:`智能体列表`,agentListHelp:`在同一个网关进程中运行多个固定角色智能体。`,bindings:`绑定规则`,bindingsHelp:`根据渠道 + 账号 + 对端将入站消息路由到目标智能体。`,agentIdRequiredError:`agents.list[{index}].id 必填`,duplicateAgentId:`重复的智能体 ID`,bindingAgentIdRequired:`bindings[{index}].agentId 必填`,bindingAgentIdNotFound:`bindings[{index}].agentId 未在 agents.list/main 中找到`,bindingChannelRequired:`bindings[{index}].match.channel 必填`,bindingPeerIdRequired:`设置 peer.kind 时,bindings[{index}].match.peer.id 必填`,agentIdPlaceholder:`智能体 ID(例如 engineer)`,workspaceOverridePlaceholder:`工作空间覆盖(可选)`,modelOverridePlaceholder:`模型覆盖(可选)`,defaultEnginePlaceholder:`默认运行时(如 native 或 codex)`,engineOverridePlaceholder:`运行时覆盖(可选)`,contextTokensPlaceholder:`上下文额度`,maxToolsPlaceholder:`最大工具次数`,defaultAgent:`默认智能体`,addAgent:`添加智能体`,targetAgentIdPlaceholder:`目标智能体 ID`,channelPlaceholder:`渠道(例如 discord)`,accountIdOptionalPlaceholder:`账号 ID(可选)`,peerKindOptional:`对端类型(可选)`,peerIdPlaceholder:`对端 ID(需先设置对端类型)`,addBinding:`添加绑定`,saveRuntimeSettings:`保存运行时设置`,secretsPageTitle:`密钥管理`,secretsPageDescription:`集中管理 secrets.providers、secrets.defaults 与 secrets.refs。`,secretsEnabledHelp:"关闭后不会解析 `{{secret:*}}` 引用。",defaultEnvProvider:`默认 Env 提供器`,defaultFileProvider:`默认 File 提供器`,defaultExecProvider:`默认 Exec 提供器`,secretProvidersTitle:`密钥提供器`,secretProvidersDescription:`定义可复用的 secrets provider(env/file/exec)。`,providerAlias:`提供器别名`,removeProvider:`移除提供器`,envPrefix:`环境变量前缀`,secretFilePath:`Secrets 文件路径`,secretExecCommand:`执行命令`,secretExecArgs:`命令参数(每行一个)`,secretExecCwd:`执行目录(可选)`,secretExecTimeoutMs:`超时(毫秒)`,addSecretProvider:`添加 Provider`,secretRefsTitle:`密钥引用`,secretRefsDescription:`把配置路径映射到 secret 引用(source/provider/id)。`,secretConfigPath:`配置路径`,secretId:`Secret ID`,secretProviderAlias:`Provider 别名`,addSecretRef:`添加 Ref`,sessionsLoading:`加载会话中...`,sessionsEmpty:`暂无会话。`,sessionsLabelPlaceholder:`会话标签(可选)`,sessionsRunStatusRunning:`运行中`,sessionsRunStatusQueued:`排队中`,actionConfigure:`配置`,actionAddProvider:`添加提供商`,actionEnable:`启用`,configSaved:`配置已保存`,configSavedApplying:`配置已保存,正在应用`,configSavedApplied:`配置已保存并已应用`,configSaveFailed:`保存配置失败`,configReloaded:`配置已重载`,configReloadFailed:`重载配置失败`,channelConfigApplying:`渠道配置正在应用`,channelConfigApplied:`渠道配置已应用`,channelConfigApplyFailed:`渠道配置应用失败`,feishuVerifySuccess:`验证成功,请到飞书开放平台完成事件订阅与发布后再开始使用。`,feishuVerifyFailed:`验证失败`,enterTag:`输入后按回车...`,headerName:`Header 名称`,headerValue:`Header 值`},A={cronPageTitle:`定时任务`,cronWorkspaceEyebrow:`自动化工作台`,cronPageDescription:`查看所有自动运行的 Agent 任务,或通过 AI 会话安排新的任务。`,cronComposerPlaceholder:`描述你想定期完成的事`,cronComposerLabel:`描述你想安排的任务`,cronComposerSubmit:`进入 AI 会话`,cronComposerHint:`请求会进入 AI 会话确认,不会在这里直接启用任务。`,cronSearchPlaceholder:`搜索名称、任务内容或会话`,cronStatusLabel:`状态`,cronStatusAll:`全部`,cronStatusEnabled:`运行中`,cronStatusDisabled:`已暂停`,cronStatusAttention:`需要关注`,cronPaginationLabel:`任务列表分页`,cronPreviousPage:`上一页`,cronNextPage:`下一页`,cronTotalLabel:`总数`,cronLoading:`加载定时任务中...`,cronEmpty:`暂无定时任务。`,cronScheduleLabel:`执行计划`,cronSessionLabel:`执行会话`,cronDeliverTo:`投递到`,cronNextRun:`下次执行`,cronLastRun:`上次执行`,cronLastStatus:`上次状态`,cronDeleteConfirm:`确认删除定时任务`,cronOneShot:`一次性`,cronEnable:`启用`,cronDisable:`暂停`,cronRunNow:`立即执行`,cronEnableConfirm:`确认启用定时任务`,cronDisableConfirm:`确认暂停定时任务`,cronRunConfirm:`确认立即执行定时任务`,cronRunForceConfirm:`任务已暂停,仍要立即执行`,cronMoreActions:`更多操作`,cronExpandTask:`展开任务`,cronCollapseTask:`收起任务`,cronCreatedAt:`创建时间`,cronEmptyGuide:`在对话中告诉 Agent 你需要定时执行的任务`,cronId:`任务 ID`,cronUpdatedAt:`更新时间`,cronSummaryLabel:`当前任务概况`,cronSummaryTotal:`全部任务`,cronSummaryEnabled:`运行中`,cronSummaryPaused:`已暂停`,cronSummaryAttention:`需要关注`,cronAttentionSummary:`项需要处理`,cronAttentionSummaryHint:`打开任务详情查看最近错误`,cronAllHealthy:`当前任务运行正常`,cronAllHealthyHint:`暂时没有需要处理的异常`,cronMyTasks:`我的任务`,cronTaskCountUnit:`个任务`,cronNeedInspiration:`需要新灵感?`,cronStartFromResult:`从一个具体结果开始`,cronTemplateSelectionHint:`选择模板后仍可修改,再进入 AI 会话确认。`,cronEmptyHeroTitle:`想让 NextClaw 定期替你做什么?`,cronEmptyHeroDescription:`描述目标,或者选一个模板作为起点。AI 会和你确认执行时间、范围与结果发送方式。`,cronNoMatchingTasks:`没有符合条件的任务`,cronNoMatchingTasksHint:`尝试更换关键词或状态筛选。`,cronNeedsAttention:`需要关注`,cronRunningNormally:`运行中`,cronPaused:`已暂停`,cronRunFailed:`最近执行失败`,cronBoundSession:`绑定会话`,cronDedicatedSession:`独立会话`,cronEditDetails:`查看与编辑任务`,cronDetailDescription:`查看任务设置与最近一次运行状态。修改任务可回到执行会话继续说明。`,cronTaskPrompt:`任务内容`,cronTaskDetails:`任务设置`,cronAgentLabel:`执行 Agent`,cronLatestRun:`最近一次运行`,cronLatestRunHint:`当前系统只保存最近一次执行快照。`,cronLastError:`错误信息`,cronNeverRun:`尚未运行`,cronLastStatusOk:`成功`,cronLastStatusError:`失败`,cronLastStatusSkipped:`已跳过`,cronEnabledState:`任务运行中`,cronToggleHint:`暂停后不会按计划自动执行。`,cronOpenSession:`打开会话`,cronCloseDetails:`关闭任务详情`,cronSessionAvailableAfterRun:`独立会话会在任务首次运行后创建。`,cronTemplateAiNewsTitle:`每日 AI 新闻简报`,cronTemplateAiNewsDescription:`每天汇总真正影响工作的 AI 产品与研究进展。`,cronTemplateAiNewsPrompt:`每天早上 8 点汇总过去 24 小时最重要的 AI 产品和研究进展,并附上原始来源。`,cronTemplateWeeklyReviewTitle:`每周项目复盘`,cronTemplateWeeklyReviewDescription:`周五汇总进展、决定、遗留问题和下周重点。`,cronTemplateWeeklyReviewPrompt:`每周五下午 6 点汇总当前项目本周的进展、关键决定、遗留问题和下周优先事项。`,cronTemplateMeetingPrepTitle:`会议前准备`,cronTemplateMeetingPrepDescription:`会前整理议题、材料、未决问题与参会人背景。`,cronTemplateMeetingPrepPrompt:`每次会议开始前 30 分钟,整理会议议题、相关材料、未决问题和我需要准备的内容。`,cronTemplateLearningTitle:`每日学习练习`,cronTemplateLearningDescription:`每天生成一组贴近当前学习目标的短练习。`,cronTemplateLearningPrompt:`每天晚上 8 点,根据我最近的学习内容生成一组 15 分钟可以完成的练习。`,cronTemplateCompetitorTitle:`竞品变化追踪`,cronTemplateCompetitorDescription:`定期核对官方更新,只报告值得行动的变化。`,cronTemplateCompetitorPrompt:`每周一检查主要竞品的官方公告和 Release Notes,只报告会影响产品判断的实质变化。`,cronTemplateFamilyTitle:`家人联系提醒`,cronTemplateFamilyDescription:`在合适的时间提醒你联系重要的人。`,cronTemplateFamilyPrompt:`每周日早上 10 点提醒我联系父母,并回顾上次提到需要继续关心的事情。`},Et=`更新`,Dt=`版本更新`,Ot=`系统每两小时自动检查新版本;发现更新后,由你决定何时开始更新。`,kt=`当前环境暂不支持更新`,At=`这个运行环境暂时没有可用的更新宿主。`,jt=`更新入口会在宿主支持后自动出现,不需要前端单独区分环境。`,Mt=`宿主版本`,Nt=`版本 {version} 已下载完成,可以继续完成更新。`,Pt=`你可以手动检查,并在准备好之后一次完成更新。`,Ft=`立即更新`,It=`读取更新状态失败`,Lt=`检查更新失败`,Rt=`下载更新失败`,zt=`应用更新失败`,Bt=`更新失败`,Vt=`切换更新通道失败`,Ht=`当前已经是最新版本。`,Ut=`更新已下载完成,已经可以切换到新版本。`,Wt=`发现新版本 {version}。`,Gt=`新版本`,Kt=`已切换到 {channel} 更新通道。`,qt=`已切换到 {channel} 通道,发现版本 {version}。`,Jt=`桌面端更新`,Yt=`在应用内检查、下载并决定何时应用新的桌面端版本。`,Xt=`当前仅桌面端可用`,j=`这个页面暂时只在 NextClaw Desktop 中可用。`,Zt=`网页端与其他产品形态的更新体验还在继续完善,敬请期待。`,Qt=`当前状态`,$t=`查看当前已运行版本、可用版本和最近一次检查结果。`,en=`更新状态`,tn=`待命`,nn=`检查中`,rn=`有可用更新`,an=`下载中`,on=`已下载待应用`,sn=`更新中`,cn=`等待重启生效`,ln=`已是最新`,un=`更新被阻塞`,dn=`更新失败`,fn=`完整日志:{command}`,pn=`下载`,mn=`下载中`,hn=`下载 {percent}%`,gn=`更新`,_n=`应用中`,vn=`当前版本 {version}`,yn=`点击查看 {version} 更新说明`,bn=`当前版本 {currentVersion},查看 {releaseVersion} 更新说明`,xn=`查看 {version} 更新说明`,Sn=`桌面壳版本`,Cn=`当前内核版本`,wn=`可用版本`,Tn=`上次检查时间`,En=`当前更新通道`,Dn=`更新已就绪`,On=`版本 {version} 已下载完成,等你确认后即可重启应用并完成更新。`,kn=`正在下载 {percent}%`,An=`正在下载`,jn=`更新暂时无法继续`,Mn=`当前安装环境需要先处理阻塞项,之后才能继续更新。`,Nn=`更新通道`,Pn=`系统每两小时自动检查更新;是否开始更新由你确认。`,Fn=`更新通道`,In=`Stable 面向日常主力使用;Beta 用于提前体验新版本,但可能更不稳定。`,Ln=`切回 Stable 后不会立刻强制降级;只有当 Stable 追平或超过当前版本时,才会继续提供 Stable 更新。`,Rn=`Stable`,zn=`Beta`,Bn=`当前正在跟随 Beta 通道`,Vn=`你会更早收到新版本,但也可能遇到更多变动和回归。`,Hn=`更新操作`,Un=`支持手动检查、手动下载,以及在你准备好之后重启应用完成更新。`,Wn=`检查更新`,Gn=`下载更新`,Kn=`立即重启更新`,qn=`查看更新说明`,Jn=`本次更新`,Yn=`更新前可以先查看这个版本的主要变化。`,Xn=`正在读取更新说明...`,Zn=`暂时无法在应用内读取结构化更新说明,可以打开完整说明。`,Qn=`功能`,$n=`增强`,er=`修复`,tr=`默认行为与兼容性`,nr=`读取更新状态失败`,rr=`检查更新失败`,ir=`下载更新失败`,ar=`应用更新失败`,or=`切换更新通道失败`,sr=`当前已经是最新版本。`,cr=`更新已下载完成,可以在方便的时候重启应用。`,lr=`发现新版本 {version}。`,ur=`新版本`,dr=`已切换到 {channel} 更新通道。`,fr=`已切换到 {channel} 通道,发现版本 {version}。`,pr={updates:Et,runtimeUpdatesPageTitle:Dt,runtimeUpdatesPageDescription:Ot,runtimeUpdatesUnavailableTitle:kt,runtimeUpdatesUnavailableDescription:At,runtimeUpdatesUnavailableHint:jt,runtimeUpdatesHostVersion:Mt,runtimeUpdatesDownloadedBannerDescription:Nt,runtimeUpdatesActionsDescription:Pt,runtimeUpdatesApplyNow:Ft,runtimeUpdatesLoadFailed:It,runtimeUpdatesCheckFailed:Lt,runtimeUpdatesDownloadFailed:Rt,runtimeUpdatesApplyFailed:zt,runtimeUpdatesUpdateFailed:Bt,runtimeUpdatesChannelChangeFailed:Vt,runtimeUpdatesAlreadyLatest:Ht,runtimeUpdatesReadyToApply:Ut,runtimeUpdatesAvailable:Wt,runtimeUpdatesUnknownVersion:Gt,runtimeUpdatesChannelChanged:Kt,runtimeUpdatesChannelChangedWithUpdate:qt,desktopUpdatesPageTitle:Jt,desktopUpdatesPageDescription:Yt,desktopUpdatesDesktopOnlyTitle:Xt,desktopUpdatesDesktopOnlyDescription:j,desktopUpdatesDesktopOnlyFutureHint:Zt,desktopUpdatesOverviewTitle:Qt,desktopUpdatesOverviewDescription:$t,desktopUpdatesStatusLabel:en,desktopUpdatesStatusIdle:tn,desktopUpdatesStatusChecking:nn,desktopUpdatesStatusAvailable:rn,desktopUpdatesStatusDownloading:an,desktopUpdatesStatusDownloaded:on,desktopUpdatesStatusApplying:sn,desktopUpdatesStatusRestartRequired:cn,desktopUpdatesStatusUpToDate:ln,desktopUpdatesStatusBlocked:un,desktopUpdatesStatusFailed:dn,"desktopUpdatesFailureStage.check":`检查更新失败`,"desktopUpdatesFailureStage.download":`下载更新失败`,"desktopUpdatesFailureStage.apply":`应用更新失败`,desktopUpdatesDiagnosticCommand:fn,desktopUpdatesInlineDownload:pn,desktopUpdatesInlineDownloading:mn,desktopUpdatesInlineDownloadingPercent:hn,desktopUpdatesInlineReady:gn,desktopUpdatesInlineApplying:_n,desktopUpdatesVersionTooltipCurrent:vn,desktopUpdatesVersionTooltipReleaseNotes:yn,desktopUpdatesVersionReleaseNotesLabel:bn,desktopUpdatesUpdateReleaseNotesLabel:xn,desktopUpdatesLauncherVersion:Sn,desktopUpdatesCurrentBundleVersion:Cn,desktopUpdatesAvailableVersion:wn,desktopUpdatesLastCheckedAt:Tn,desktopUpdatesCurrentChannel:En,desktopUpdatesDownloadedBannerTitle:Dn,desktopUpdatesDownloadedBannerDescription:On,desktopUpdatesDownloadProgressPercent:kn,desktopUpdatesDownloadProgressUnknown:An,desktopUpdatesBlockedTitle:jn,desktopUpdatesBlockedDescription:Mn,"desktopUpdatesBlockedRootCause.signature-verification-unavailable":`根因:缺少更新签名公钥,无法验证更新包来源;请安装包含正确更新配置的新版本,或由维护者配置更新公钥。`,"desktopUpdatesBlockedRootCause.host-too-old":`根因:当前宿主版本太旧,不满足新运行包的最低宿主版本要求;请先升级 NextClaw 启动器。`,"desktopUpdatesBlockedRootCause.unsupported-installation":`根因:当前安装形态或更新源配置不支持自动更新;请安装支持自动更新的版本,或由维护者补齐更新源配置。`,desktopUpdatesChannelSettingsTitle:Nn,desktopUpdatesChannelSettingsDescription:Pn,desktopUpdatesReleaseChannel:Fn,desktopUpdatesReleaseChannelHelp:In,desktopUpdatesReleaseChannelDowngradeHint:Ln,desktopUpdatesChannelStable:Rn,desktopUpdatesChannelBeta:zn,desktopUpdatesBetaBadgeTitle:Bn,desktopUpdatesBetaBadgeDescription:Vn,desktopUpdatesActionsTitle:Hn,desktopUpdatesActionsDescription:Un,desktopUpdatesCheckNow:Wn,desktopUpdatesDownloadNow:Gn,desktopUpdatesApplyNow:Kn,desktopUpdatesReleaseNotes:qn,desktopUpdatesReleaseNotesPreviewTitle:Jn,desktopUpdatesReleaseNotesPreviewDescription:Yn,desktopUpdatesReleaseNotesPreviewLoading:Xn,desktopUpdatesReleaseNotesPreviewUnavailable:Zn,desktopUpdatesReleaseNotesFeature:Qn,desktopUpdatesReleaseNotesEnhancement:$n,desktopUpdatesReleaseNotesFix:er,desktopUpdatesReleaseNotesCompatibility:tr,desktopUpdatesLoadFailed:nr,desktopUpdatesCheckFailed:rr,desktopUpdatesDownloadFailed:ir,desktopUpdatesApplyFailed:ar,desktopUpdatesChannelChangeFailed:or,desktopUpdatesAlreadyLatest:sr,desktopUpdatesReadyToApply:cr,desktopUpdatesAvailable:lr,desktopUpdatesUnknownVersion:ur,desktopUpdatesChannelChanged:dr,desktopUpdatesChannelChangedWithUpdate:fr},mr={docBrowserTitle:`内嵌浏览器`,docBrowserSearchPlaceholder:`搜索,也可以输入文档地址直接打开`,docBrowserAddressLabel:`地址`,docBrowserAddressPlaceholder:`输入地址,例如 http://localhost:5173`,docBrowserUrlPlaceholder:`输入文档路径,如 /guide/channels`,docBrowserOpenExternal:`文档中心打开`,docBrowserOpenInBrowser:`系统浏览器打开`,docBrowserRefresh:`刷新`,docBrowserFloatMode:`悬浮窗口`,docBrowserDockMode:`固定到侧栏`,docBrowserClose:`关闭`,docBrowserHelp:`帮助文档`,docBrowserBack:`后退`,docBrowserForward:`前进`,docBrowserNewTab:`新建标签`,docBrowserHomeTitle:`导航页`,docBrowserCloseTab:`关闭标签`,docBrowserTabUntitled:`未命名`,docBrowserTabMoreActions:`更多标签操作`,docBrowserAddToChat:`添加到聊天`,sideDockPinCurrent:`固定到快捷栏`,sideDockUnpinCurrent:`从快捷栏移除`,sideDockBuiltInDocked:`内置快捷入口`,sideDockUnpinItem:`移除快捷入口`,sideDockGitHubProject:`GitHub 项目`,sideDockHide:`隐藏快捷栏`,sideDockHideConfirmTitle:`隐藏快捷栏?`,sideDockHideConfirmDescription:`隐藏后可在「设置 > 外观」中重新打开。`,sideDockHideConfirmAction:`隐藏`,sideDockVisibilityTitle:`显示快捷栏`,sideDockVisibilityDescription:`在工作区右侧显示快捷入口栏。`,appsTitle:`应用`,appPackagesLibraryTitle:`你的应用`,appPackagesLibraryDescription:`打开和管理装进 NextClaw 的应用。安装会在后台继续,个人数据保存在本机。`,appPackagesLoading:`加载应用中…`,appPackagesDataUsageUnavailable:`大小不可用`,appPackagesNoDataYet:`尚无数据`,appPackagesLoadFailed:`应用加载失败`,appPackagesRefresh:`刷新应用`,appPackagesBrowse:`添加应用`,appPackagesMarketplaceTitle:`添加应用`,appPackagesMarketplaceDescription:`挑选适合自己的应用。开始安装后,你可以继续浏览或直接离开这里。`,appPackagesMarketplaceSearch:`搜索应用、功能或标签`,appPackagesMarketplaceLoading:`正在加载应用市场…`,appPackagesMarketplaceLoadMore:`加载更多`,appPackagesMarketplaceLoadingMore:`正在加载…`,appPackagesMarketplaceFailed:`应用市场暂时不可用,你仍可从可信来源手动安装。`,appPackagesMarketplaceEmpty:`没有找到匹配的应用`,appPackagesMarketplaceEmptyHint:`试试更短的关键词,或切换到“全部”。`,appPackagesMarketplaceFeatured:`精选`,appPackagesMarketplaceDetails:`查看详情`,appPackagesMarketplaceInstalled:`已安装`,appPackagesMarketplaceTrustHint:`应用从 NextClaw 官方应用库下载。安装前可查看访问范围,安装后可随时停用或卸载。`,appPackagesInstall:`安装应用`,appPackagesInstallTitle:`安装 Mini APP`,appPackagesInstallDescription:`输入可信的 .napp 文件路径、本机应用目录或应用 ID。`,appPackagesInstallSource:`安装来源`,appPackagesInstallPlaceholder:`文件路径、目录或 nextclaw.example-app`,appPackagesInstallTrustHint:`只安装你信任的来源。包含 Service 的应用可在本机运行代码,并仅在启用后启动。`,appPackagesInstalling:`安装中…`,appPackagesEmptyTitle:`还没有可用应用`,appPackagesEmptyDescription:`安装一个 Mini APP,或升级到包含内置应用的 NextClaw 版本。`,appPackagesEnabled:`已启用`,appPackagesAvailable:`可用`,appPackagesBuiltIn:`NextClaw 内置`,appPackagesLocalService:`本地数据服务`,appPackagesIsolationLabel:`运行隔离`,appPackagesPlatformsLabel:`支持平台`,appPackagesAllPlatforms:`全部平台`,appPackagesPlatformOnly:`仅支持 {platforms}`,appPackagesUnavailableOnDevice:`这台设备无法安装`,appPackagesUnavailable:`无法安装`,appPackagesTemporarilyUnavailable:`暂无法安装`,appPackagesCompatibilityUnknown:`暂时无法确认兼容性`,appPackagesCompatibilityUnknownReason:`NextClaw 暂时无法确认这台设备是否支持此应用,请刷新后再试。`,appPackagesUnsupportedOsReason:`此应用目前仅支持 {platforms},不能安装在这台设备上。`,appPackagesUnsupportedTargetReason:`此应用支持 {platforms},但没有适配这台设备的系统架构。`,appPackagesIsolationPanel:`隔离界面`,appPackagesIsolationMediated:`受限运行`,appPackagesIsolationFullUser:`以当前用户权限运行`,appPackagesDataUsage:`应用数据`,appPackagesEnable:`启用`,appPackagesDisable:`停用`,appPackagesWorking:`处理中…`,appPackagesEnableToOpen:`启用后即可打开`,appPackagesMoreActions:`更多应用操作`,appPackagesCheckUpdate:`检查更新`,appPackagesRollback:`切换到`,appPackagesUninstall:`卸载`,appPackagesUninstallTitle:`卸载这个应用?`,appPackagesUninstallDescription:`应用代码会被移除,个人数据默认保留,之后重新安装仍可继续使用。`,appPackagesKeepData:`保留个人数据`,appPackagesKeepDataDescription:`只移除应用代码,重新安装后可以继续使用原有内容。`,appPackagesDeleteData:`同时删除个人数据`,appPackagesDeleteDataDescription:`永久移除该应用保存的数据,此操作无法撤销。`,appPackagesActionFailed:`应用操作失败`,appPackagesFilterLabel:`应用分类`,appPackagesFilterAll:`全部`,appPackagesFilterPersonal:`个人`,appPackagesFilterLocal:`本地优先`,appPackagesBackToMarketplace:`返回应用列表`,appPackagesAboutApp:`关于这个应用`,appPackagesPanelsAdded:`可打开的界面`,appPackagesServicesAdded:`本机服务`,appPackagesNone:`无`,appPackagesAccessTitle:`访问范围`,appPackagesOpenPublicDetails:`查看公开详情页`,appPackagesDocumentAccess:`需要访问 {count} 个由你授权的文件目录`,appPackagesNetworkAccess:`需要连接 {count} 个网络域名`,appPackagesHostBridgeAccess:`需要调用 NextClaw 提供的本机能力`,appPackagesNativeProcessAccess:`会启动本机进程;该进程拥有当前用户可访问的文件和网络权限`,appPackagesLocalStorageAccess:`会在本机保存自己的应用数据`,appPackagesNoExtraAccess:`没有声明额外的文件或网络访问`,appPackagesPreparing:`准备中`,appPackagesResolving:`正在检查应用`,appPackagesDownloading:`正在下载`,appPackagesVerifying:`正在校验`,appPackagesFinalizing:`即将完成`,appPackagesCompleted:`已完成`,appPackagesSwitchingVersion:`正在切换版本`,appPackagesUninstalling:`正在卸载`,appPackagesInstallCompleted:`应用已安装`,appPackagesUpdateCompleted:`应用已更新`,appPackagesAlreadyCurrent:`已经是最新版本`,appPackagesAlreadyOnVersion:`已经在这个版本`,appPackagesUpdate:`更新`,appPackagesRollbackCompleted:`应用版本已切换`,appPackagesUninstallCompleted:`应用已卸载`,appPackagesNextClawRequirement:`需要 NextClaw`,appDataRetainedTitle:`已保留的应用数据`,appDataRetainedDescription:`卸载应用时保留的数据会留在这里。重新安装可以继续使用,也可以单独永久删除。`,appDataLoadFailed:`已保留的应用数据加载失败`,appDataDiagnosticsTitle:`部分应用数据需要处理`,appDataDeleteAction:`删除数据`,appDataDeleteTitle:`永久删除这些应用数据?`,appDataDeleteDescription:`这会从本机移除该应用的私有数据。已导出或保存在应用目录之外的文件不会被删除。`,appDataDeletePermanently:`永久删除数据`,appDataDeleting:`正在删除数据…`,appDataDeleteCompleted:`应用数据已删除`,appDataDeleteFailed:`应用数据删除失败`,appDataStorageTotal:`应用数据总量`,appDataStoragePath:`受管实例路径`,appDataClassData:`个人数据`,appDataClassConfig:`设置`,appDataClassState:`状态`,appDataClassCache:`缓存`,appDataClassTemporary:`临时文件`,appDataClassLogs:`日志`,panelAppsTitle:`面板应用`,panelAppsLoading:`加载面板应用中...`,panelAppsLoadFailed:`面板应用加载失败`,panelAppsEmpty:`暂无面板应用`,panelAppsEmptyTitle:`创建你的第一个面板应用`,panelAppsEmptyDescription:`面板应用是在聊天旁边打开的轻量工具,适合仪表盘、表单、计算器和临时工作台。`,panelAppsEmptyAskTitle:`让 NextClaw 帮你生成`,panelAppsEmptyAskDescription:`从一段现成提示词开始,让 NextClaw 直接创建一个可打开的示例小工具。`,panelAppsEmptyAskAction:`生成示例面板应用`,panelAppsExamplePrompt:`请直接为我创建一个示例 NextClaw Panel App:个人任务看板。请把它放到 NextClaw panels 目录,使用单文件 *.panel.html,包含任务添加、完成状态切换、筛选和本地状态保存。创建完成后告诉我刷新 Panel Apps 并打开它。不要先问我问题。`,panelAppsEmptyFileTitle:`放入 panels 目录`,panelAppsEmptyFileDescription:`也可以添加 *.panel.html 文件,或带 panel-app.json 的 *.panel 目录。`,panelAppsPanelsPath:`面板目录`,panelAppsEmptyFiltered:`当前分类暂无面板应用`,panelAppsRefresh:`刷新面板应用`,panelAppsRefreshCurrent:`刷新当前面板应用`,panelAppsSortLabel:`排序`,panelAppsSortSmart:`智能排序`,panelAppsFavorites:`收藏`,panelAppsSortRecentOpen:`最近打开`,panelAppsSortUpdated:`最近更新`,panelAppsSortName:`名称`,panelAppsFavorite:`收藏面板应用`,panelAppsUnfavorite:`取消收藏面板应用`,panelAppsMoreActions:`更多面板应用操作`,panelAppsMainSidebarGroup:`应用`,panelAppsMainSidebarGroupCollapse:`收起应用`,panelAppsMainSidebarGroupExpand:`展开应用`,panelAppsAddToMainSidebar:`添加到主侧栏`,panelAppsRemoveFromMainSidebar:`从主侧栏移除`,panelAppsPreferenceUpdateFailed:`无法更新面板应用设置`,panelAppsOpenInRightPanel:`在右侧面板打开`,panelAppsOpenApps:`打开应用管理`,panelAppsMainUnavailable:`此面板应用当前不可用。它可能已被禁用、卸载或从工作区删除。`,panelAppsCheckingPermission:`正在确认此面板应用的权限…`,panelAppsPermissionDenied:`未授予此面板应用所需的 NextClaw Client 权限。`,panelAppsPermissionFailed:`无法确认此面板应用的权限。`,panelAppsTryAgain:`重试`,panelAppsDelete:`删除面板应用`,panelAppsDeleteConfirmTitle:`删除面板应用?`,panelAppsDeleteConfirmDescription:`将删除这个面板应用文件,删除后不可恢复。`,panelAppsClientGrantTitle:`NextClaw Client SDK`,panelAppsClientGrantDescription:`允许这个面板应用使用完整 NextClaw Client SDK。`,panelAppsLastOpened:`上次打开`,panelAppsUpdated:`更新于`,serviceAppsTitle:`服务应用`,serviceAppsLoading:`加载服务应用中...`,serviceAppsLoadFailed:`服务应用加载失败`,serviceAppsEmpty:`暂无服务应用`,serviceAppsEmptyTitle:`暂无服务应用`,serviceAppsEmptyDescription:`服务应用提供本地运行时与动作,供面板应用调用。`,serviceAppsRefresh:`刷新服务应用`,serviceAppsConnect:`连接`,serviceAppsDiscoverActions:`连接并发现动作`,serviceAppsDiscoverActionsHint:`连接服务应用运行时,并发现它当前可用的动作。`,serviceAppsDisconnectRuntime:`断开连接`,serviceAppsDisconnectRuntimeHint:`断开当前运行时连接,并将服务应用恢复为未连接状态。`,serviceAppsMoreActions:`更多操作`,serviceAppsDelete:`删除服务应用`,serviceAppsManagePackage:`在应用中管理`,serviceAppsDeleteConfirmTitle:`删除服务应用?`,serviceAppsDeleteConfirmDescription:`服务源码会被删除,私有数据默认保留。`,serviceAppsKeepDataDescription:`删除服务源码,但保留私有数据,之后放回同一服务仍可继续使用。`,serviceAppsDeleteDataDescription:`永久删除服务源码及其受管私有数据。`,serviceAppsDataUnavailable:`暂时无法读取存储详情。请保留数据,或刷新后再删除。`,serviceAppsStatus_idle:`未连接`,serviceAppsStatus_starting:`连接中`,serviceAppsStatus_running:`已连接`,serviceAppsStatus_failed:`连接失败`,serviceAppsStatus_stopped:`已停止`,serviceAppsStatusHint_idle:`运行时尚未连接;执行连接并发现动作会启动连接。`,serviceAppsStatusHint_starting:`正在连接服务应用运行时。`,serviceAppsStatusHint_running:`服务应用运行时已连接,可用于发现或调用动作。`,serviceAppsStatusHint_failed:`运行时连接失败,请查看错误信息或断开连接后重试。`,serviceAppsStatusHint_stopped:`服务应用已停止。`,serviceAppsActionsSection:`动作`,serviceAppsActionsEmpty:`尚未发现动作`,serviceAppsDetails:`运行时详情`,serviceAppsGrantedTo:`已授权给`,serviceAppsRevokeGrant:`撤销授权`,serviceAppsRuntimeState_matched:`已匹配`,serviceAppsRuntimeState_missing:`运行时缺失`,serviceAppsRuntimeState_undeclared:`未声明`,serviceAppsCommand:`命令`,serviceAppsCwd:`工作目录`,serviceAppsManifest:`Manifest`,serviceAppsLastStarted:`上次启动`,serviceAppsLastReady:`上次就绪`,serviceAppsLastFailed:`上次失败`,serviceActionAuthorizationTitle:`授权服务动作`,serviceActionAuthorizationDescription:`此面板应用正在请求调用本地服务应用动作。允许后,这些动作会为该面板应用记住授权。`,serviceActionAuthorizationSource:`来源`,serviceActionAuthorizationAction:`动作`,serviceActionAuthorizationActions:`动作`,serviceActionAuthorizationPurpose:`用途`,serviceActionAuthorizationRisk:`风险`,serviceActionAuthorizationInput:`输入`,serviceActionAuthorizationReject:`拒绝`,serviceActionAuthorizationAllow:`允许`},hr={marketplaceSkillsPageTitle:`技能市场`,marketplaceSkillsPageDescription:`安装与管理技能。`,marketplaceMcpPageTitle:`MCP 市场`,marketplaceMcpPageDescription:`发现、安装、诊断并管理 MCP servers。`,marketplaceTabMarketplaceSkills:`技能市场`,marketplaceMcpTabCatalog:`MCP 市场`,marketplaceMcpTabInstalled:`已安装 MCP`,marketplaceTabInstalledSkills:`已安装技能`,marketplaceExternalSkillSourceTitle:`访问 SkillHub`,marketplaceSearchPlaceholderSkills:`搜索技能...`,marketplaceMcpSearchPlaceholder:`搜索 MCP servers...`,marketplaceFilterSkills:`技能`,marketplaceFilterMcp:`MCP`,marketplaceSortRelevance:`相关性`,marketplaceSortUpdated:`最近更新`,marketplaceUnknownItem:`未知项目`,marketplaceInstalledLocalSummary:`已在本地安装,市场暂无详情。`,marketplaceTypeSkill:`技能`,marketplaceTypeMcp:`MCP`,marketplaceInstall:`安装`,marketplaceInstalling:`安装中...`,marketplaceInstalledStatus:`已安装`,marketplaceDisabledStatus:`已禁用`,marketplaceEnable:`启用`,marketplaceDisable:`禁用`,marketplaceEnabling:`启用中...`,marketplaceDisabling:`禁用中...`,marketplaceUninstall:`卸载`,marketplaceRemoving:`卸载中...`,marketplaceUpdate:`更新`,marketplaceUpdating:`更新中...`,marketplaceSectionSkills:`技能列表`,marketplaceMcpSectionCatalog:`MCP 列表`,marketplaceMcpSectionInstalled:`已安装 MCP`,marketplaceSectionInstalledSkills:`已安装技能`,marketplaceErrorLoadingSkillsData:`加载技能市场数据失败`,marketplaceErrorLoadingInstalledSkills:`加载已安装技能失败`,marketplaceAllSkills:`全部技能`,marketplaceRefreshingResults:`正在更新...`,marketplaceNoSkills:`未找到技能。`,marketplaceNoMcp:`未找到 MCP server。`,marketplaceNoInstalledSkills:`未找到已安装技能。`,marketplaceNoInstalledMcp:`未找到已安装 MCP server。`,marketplaceUninstallTitle:`确认卸载`,marketplaceUninstallDescription:`该操作会移除扩展,后续可在市场中重新安装。`,marketplaceUpdateConflictTitle:`覆盖本地修改并更新?`,marketplaceUpdateConflictDescription:`这个技能安装后被修改过。继续会用市场最新版本替换技能目录中的本地修改;取消不会改动现有文件。`,marketplaceUpdateConflictConfirm:`覆盖并更新`,marketplaceInstallSuccessSkill:`技能安装成功`,marketplaceInstallSuccessMcp:`MCP 安装成功`,marketplaceEnableSuccess:`启用成功`,marketplaceDisableSuccess:`禁用成功`,marketplaceUninstallSuccess:`卸载成功`,marketplaceUpdateSuccess:`更新成功`,marketplaceMcpManageSuccess:`MCP 操作成功`,marketplaceInstallFailed:`安装失败`,marketplaceOperationFailed:`操作失败`,marketplaceSkillsCountSuffix:`个技能`,marketplaceInstalledSkillsCountSuffix:`个已安装技能`,marketplaceDetailPanelTitle:`详情预览`,marketplaceDetailPanelEmpty:`点击左侧任意插件/技能,在这里查看详情。`,marketplaceDetailSummary:`摘要`,marketplaceDetailDescription:`描述`,marketplaceDetailMetadata:`元数据`,marketplaceDetailContent:`内容`,marketplaceDetailSource:`来源`,marketplaceDetailUnavailableTitle:`详情暂不可用`,marketplaceDetailUnavailableDescription:`这个右侧详情标签页缺少当前会话中的内容数据,请从市场列表重新打开一次。`,marketplaceOpenInDocBrowserTab:`新标签打开`,marketplaceMcpInstallDialogTitle:`安装 MCP Server`,marketplaceMcpServerName:`Server 名称`,marketplaceMcpAllAgents:`默认对全部 Agent 可用`,marketplaceMcpAllAgentsDescription:`默认作为公共资源池接入,不做 runtime 级限制。`,marketplaceMcpDoctor:`Doctor`,marketplaceMcpDoctorTitle:`MCP Doctor`,marketplaceMcpDoctorAccessible:`可访问`,marketplaceMcpDoctorTransport:`传输方式`,marketplaceMcpDoctorTools:`工具数`,marketplaceMcpRemove:`移除`,marketplaceMcpRemoveTitle:`确认移除`,marketplaceMcpRemoveDescription:`该操作会删除 MCP server 配置,并通过热插拔立即从工具源中移除。`},gr={inboxTitle:`收件箱`,inboxDescription:`AI 主动送达的报告、推荐和文章`,inboxUnread:`未读`,inboxAll:`全部`,inboxArchived:`已归档`,inboxEmptyTitle:`这里还没有内容`,inboxEmptyDescription:`AI 送达的报告、推荐和文章会保存在这里。`,inboxSelectTitle:`选择一项开始阅读`,inboxSelectDescription:`打开左侧列表中的内容,阅读状态会在这里同步。`,inboxDeliveredBy:`由 AI 送达`,inboxReaderPosition:`第 {current} 项,共 {total} 项`,inboxPrevious:`上一项`,inboxNext:`下一项`,inboxOpenInbox:`在收件箱中打开`,inboxReadLater:`稍后阅读`,inboxMarkRead:`标记已读`,inboxMarkUnread:`标记未读`,inboxArchive:`归档`,inboxRestore:`恢复`,inboxDelete:`删除`,inboxContinueChat:`继续聊`,inboxDeleteTitle:`删除这项内容?`,inboxDeleteDescription:`删除后将无法从收件箱恢复,但已经创建的会话不会被删除。`,inboxDeleteConfirm:`删除`,inboxLoadError:`无法加载收件箱,请稍后重试。`,inboxActionError:`操作失败,请重试。`,inboxUnreadCount:`{count} 项未读`,inboxNoSummary:`没有摘要`},_r={browse:`浏览`,pathPickerBack:`后退`,pathPickerForward:`前进`,pathPickerAddressLabel:`地址`,pathPickerEditAddress:`编辑地址`,pathPickerShowFullAddress:`显示完整地址`,openPath:`打开`,homeDirectory:`主目录`,currentDirectory:`当前目录`,parentDirectory:`上一级`,pathPickerQuickAccess:`常用位置`,pathPickerDefaultWorkspace:`NextClaw 工作区`,pathPickerFileSystem:`文件系统`,pathPickerDesktop:`桌面`,pathPickerDocuments:`文稿`,pathPickerDownloads:`下载`,pathPickerICloudDrive:`iCloud 云盘`,pathPickerApplications:`应用程序`,pathPickerVolumes:`磁盘与卷`,pathPickerLocations:`位置`,pathPickerSearchPlaceholder:`搜索当前目录`,pathPickerSearchEmpty:`当前目录下没有匹配结果。`,pathPickerNewFolder:`新建文件夹`,pathPickerNewFolderName:`文件夹名称`,pathPickerNewFolderPlaceholder:`输入文件夹名称`,pathPickerCreateFolder:`创建`,pathPickerCreateFolderFailed:`创建文件夹失败`,pathPickerDirectoryList:`目录列表`,pathPickerNameColumn:`名称`,pathPickerTypeColumn:`类型`,pathPickerDirectoryType:`文件夹`,pathPickerDoubleClickHint:`单击选择,双击进入`,selectCurrentDirectory:`选择当前目录`,emptyDirectory:`当前目录下暂无可浏览项。`,pathBrowseFailed:`读取目录失败`},vr={pwaInstallTitle:`安装为应用`,pwaInstallDescription:`把当前 NextClaw UI 安装为独立入口,方便从桌面、启动器或任务栏直接打开。`,pwaInstallAction:`安装 NextClaw`,pwaInstallDismiss:`不再提示`,pwaInstallAccepted:`已打开安装面板。`,pwaInstalledToast:`NextClaw 已安装为应用入口。`,pwaInstallStatusAvailable:`可安装`,pwaInstallStatusInstalled:`已安装`,pwaInstallStatusDesktopHost:`桌面宿主已接管`,pwaInstallStatusUnavailable:`当前不可安装`,pwaInstallCardPrompt:`当前浏览器已经准备好安装面板。安装后,NextClaw 会以独立窗口形态打开,但仍沿用同一套 Web UI 和运行时连接逻辑。`,pwaInstallCardManual:`当前环境支持把 NextClaw 安装为应用,但浏览器没有提供即时安装弹窗。你仍可通过浏览器菜单中的“安装应用”或“添加到主屏幕”完成安装。`,pwaInstallCardInstalled:`当前已经以应用形态运行。浏览器访问与已安装形态共用同一套 NextClaw UI,不会分叉成第二套产品逻辑。`,pwaInstallCardSuppressed:`当前 UI 已运行在 Electron 桌面宿主中,原生桌面壳优先于 PWA 入口,因此这里不会继续展示安装入口。`,pwaInstallCardInsecureContext:"当前地址不是浏览器允许安装 PWA 的安全上下文。请使用 `localhost`、`127.0.0.1` 或 HTTPS 域名访问。",pwaInstallCardDevServer:`当前是 Vite 开发环境。为避免 service worker 缓存和 HMR 热更新互相干扰,开发态默认关闭 PWA 安装与更新能力;请使用 preview 或正式构建验证 PWA。`,pwaInstallCardUnsupported:`当前浏览器环境不支持这套安装能力,或缺少 PWA 所需的关键运行能力。`,pwaInstallPromptHint:`安装后仍然连接当前本地或远端 NextClaw 服务,不会额外生成一套离线副本。`,pwaInstallManualHint:`如果浏览器没有弹出安装面板,请打开浏览器菜单,选择“安装应用”“安装此站点”或“添加到主屏幕”等同类入口。`,pwaInstallBannerTitle:`把 NextClaw 固定成桌面入口`,pwaInstallBannerDescription:`当前站点已经满足安装条件。安装后你可以像打开普通应用一样直接进入 NextClaw。`,pwaUpdateBannerTitle:`NextClaw 已准备好更新`,pwaUpdateBannerDescription:`检测到新的 PWA 壳版本,刷新后即可切换到最新 UI 资源。`,pwaUpdateAction:`刷新更新`},yr={remotePageTitle:`远程访问`,remotePageDescription:`让这台设备出现在 NextClaw Platform 的设备列表里,并从网页中打开它。`,remoteOpenWeb:`前往 NextClaw Web`,remoteOpenDeviceList:`前往 NextClaw Web`,remoteOpenWebHint:`开启后,这台设备会出现在 NextClaw Web 中,你可以在那里点击打开并继续使用。`,remoteOpenWebUnavailable:`暂时还没有可用的平台地址,请先完成登录。`,remoteLoading:`正在加载远程访问状态...`,remoteStatusNeedsSignIn:`先登录 NextClaw`,remoteStatusNeedsSignInDescription:`远程访问依赖 NextClaw 账号。登录后,这台设备才能和网页版关联起来。`,remoteStatusNeedsEnable:`还没有开启远程访问`,remoteStatusNeedsEnableDescription:`你已经登录 NextClaw。开启后,这台设备会出现在网页版的设备列表中。`,remoteStatusConnectingTitle:`正在把这台设备接入 NextClaw Web`,remoteStatusConnectingDescription:`后台服务正在建立连接,几秒后刷新即可看到最新状态。`,remoteStatusReadyTitle:`这台设备已经可在网页中打开`,remoteStatusReadyDescription:`你现在可以前往 NextClaw Web,在设备列表中点击打开,继续这条 Agent 链路。`,remoteStatusNeedsServiceTitle:`需要拉起后台服务`,remoteStatusNeedsServiceDescription:`远程访问已经开启,但后台服务没有运行。拉起后才会真正连到网页版。`,remoteStatusReauthorizationTitle:`登录已过期,请重新登录 NextClaw`,remoteStatusReauthorizationDescription:`为了保护你的账号安全,远程访问已暂停。重新登录后会自动恢复,不需要重新配置设备。`,remoteStatusIssueTitle:`远程访问暂时没有连上`,remoteStatusIssueDescription:`设备配置还在,但当前没有稳定连上平台。你可以先重新连接;如果问题持续,再重新登录或稍后再试。`,remoteStatusIssueDetailTitle:`下一步`,remoteStatusRecoveryTitle:`推荐操作`,remoteStatusIssueDetailGeneric:`远程访问暂时不可用。你可以先重新连接;如果问题持续,再重新登录或稍后再试。`,remoteStatusIssueDetailServiceStopped:`后台服务当前没有运行。启动后,这台设备才会重新出现在网页版设备列表里。`,remoteStatusReauthorizationHint:`点击下方按钮后会打开登录页。完成登录后,这台设备会自动恢复远程访问,不需要重新配置。`,remoteSignInAndEnable:`登录并开启远程访问`,remoteEnableNow:`开启远程访问`,remoteReconnectNow:`重新连接`,remoteReauthorizeNow:`重新登录并恢复远程访问`,remoteDisable:`关闭远程访问`,remoteDeviceSummaryTitle:`当前设备`,remoteDeviceSummaryDescription:`普通用户只需要关心账号、设备名、连接状态和网页版入口。`,remoteSignedInAccount:`当前账号`,remoteConnectionStatus:`连接状态`,remoteAdvancedTitle:`高级设置`,remoteAdvancedDescription:`只有在排查或自定义平台地址时,才需要打开这一层。`,remoteAdvancedToggleOpen:`展开高级设置`,remoteAdvancedToggleClose:`收起高级设置`,remoteAdvancedSaved:`高级设置已保存`,remoteEnabledReady:`远程访问已开启,现在可以前往 NextClaw Web 使用`,remoteDisabledDone:`远程访问已关闭`,remoteServiceRecovered:`后台服务已重新接上远程访问`,remoteActionEnabling:`正在开启远程访问...`,remoteActionDisabling:`正在关闭远程访问...`,remoteActionSavingAdvanced:`正在保存高级设置...`,remoteActionStarting:`正在启动后台服务...`,remoteActionRestarting:`正在重启后台服务...`,remoteActionStopping:`正在停止后台服务...`,remoteAccountEntryTitle:`NextClaw 账号`,remoteAccountEntryDisconnected:`未登录,点击连接`,remoteAccountEntryConnected:`已连接到 NextClaw`,remoteAccountEntryManage:`账号`,accountPanelTitle:`NextClaw 账号`,accountPanelDescription:`远程访问依赖这个账号登录。后续 token、授权和更多云端能力也会基于它展开。`,accountPanelSignedInTitle:`账号已连接`,accountPanelSignedInDescription:`这台设备已经和你的 NextClaw 账号关联,可以直接去网页版查看设备。`,accountPanelSignedOutTitle:`通过浏览器完成登录`,accountPanelSignedOutDescription:`点击下方按钮后会打开 NextClaw 网页,在网页中登录或注册,当前设备会自动接入。`,remoteOverviewTitle:`连接总览`,remoteOverviewDescription:`只保留普通用户真正需要知道的信息。`,remoteAccountConnected:`平台已登录`,remoteAccountNotConnected:`平台未登录`,remoteRuntimeMissing:`连接器未运行`,remoteStateConnected:`已连接`,remoteStateConnecting:`连接中`,remoteStateError:`连接异常`,remoteStateDisconnected:`已断开`,remoteStateDisabled:`未启用`,remoteStateReauthorizationRequired:`需要重新登录`,remoteLocalOrigin:`本地服务地址`,remotePublicPlatform:`平台地址`,remoteDeviceId:`设备 ID`,remoteRuntimeUpdatedAt:`状态更新时间`,remoteLastConnectedAt:`上次连接时间`,remoteLastError:`最近错误`,remoteDeviceTitle:`设备配置`,remoteDeviceDescription:`保存远程访问开关、设备名和平台 API Base。`,remoteDeviceSectionTitle:`设备信息`,remoteDeviceSectionDescription:`开启之后,这台设备会在平台网页的设备列表中出现。`,remoteDeviceNameAuto:`未命名设备`,remoteEnabled:`启用远程访问`,remoteEnabledHelp:`保存后需要启动或重启后台服务,新的远程配置才会真正生效。`,remoteDeviceName:`设备名称`,remoteDeviceNamePlaceholder:`例如:PeideMacBook-Pro`,remotePlatformApiBase:`平台 API Base`,remotePlatformApiBaseHelp:`留空可回退到登录时写入的 providers.nextclaw.apiBase。`,remoteSaveSettings:`保存设置`,remoteSettingsSaved:`远程设置已保存`,remoteSettingsSaveFailed:`远程设置保存失败`,remoteSaveHint:`推荐流程:先保存设置,再启动或重启服务,最后运行诊断确认。`,remoteAccountTitle:`平台账号`,remoteAccountDescription:`通过浏览器授权把当前设备安全连接到 NextClaw 平台。`,remoteAccountEmail:`邮箱`,remoteAccountUsername:`用户名`,remoteAccountUsernameRequiredTitle:`发布 skill 前需要先设置用户名`,remoteAccountUsernameRequiredDescription:"平台账号已经登录,但还没有正式用户名。设置后,你的个人 skill 会使用 `@username/skill-name` 作为发布标识。",remoteAccountUsernamePlaceholder:`例如:alice-dev`,remoteAccountUsernameSave:`保存用户名`,remoteAccountUsernameSaving:`保存中...`,remoteAccountUsernameSetSuccess:`用户名已保存`,remoteAccountUsernameSetFailed:`用户名保存失败`,remoteAccountUsernameLockedHelp:`当前版本先支持首次设置用户名;设置后暂不支持改名。`,remoteAccountRole:`角色`,remoteApiBase:`API Base`,remoteBrowserAuthTitle:`浏览器授权登录`,remoteBrowserAuthDescription:`点击后会打开平台授权页,在浏览器内登录或注册并授权当前设备。`,remoteBrowserAuthAction:`前往浏览器授权`,remoteBrowserAuthActionRetry:`重新发起浏览器登录`,remoteBrowserAuthResume:`重新打开授权页`,remoteBrowserAuthStarting:`正在创建授权会话...`,remoteBrowserAuthAuthorizing:`等待浏览器完成授权...`,remoteBrowserAuthWaiting:`浏览器授权页已打开。请在网页中完成登录或注册,然后此页面会自动接入。`,remoteBrowserAuthCompleted:`浏览器授权完成,正在刷新登录状态。`,remoteBrowserAuthExpired:`授权会话已过期,请重新发起。`,remoteBrowserAuthPopupBlocked:`浏览器没有自动打开,请点击“重新打开授权页”。`,remoteBrowserAuthSession:`授权会话`,remoteBrowserAuthExpiresAt:`授权过期时间`,remoteBrowserAuthHint:`如果你刚修改了上方 Platform API Base,建议先保存设置;未保存时当前页面也会沿用你输入的新地址发起授权。`,remoteBrowserAuthStartFailed:`启动浏览器授权失败`,remoteBrowserAuthPollFailed:`浏览器授权状态检查失败`,remoteEmail:`邮箱`,remotePassword:`密码`,remotePasswordPlaceholder:`请输入你的平台密码`,remoteRegisterIfNeeded:`首次验证自动创建账号`,remoteRegisterIfNeededHelp:`如果邮箱还没有对应账号,平台会在验证码验证成功后自动创建账号并保存登录态。`,remoteLogin:`登录平台`,remoteCreateAccount:`注册并登录`,remoteLoggingIn:`登录中...`,remoteLoginSuccess:`平台登录成功`,remoteLoginFailed:`平台登录失败`,remoteLogout:`退出登录`,remoteLoggingOut:`退出中...`,remoteLogoutSuccess:`已退出平台登录`,remoteLogoutFailed:`退出登录失败`,remoteServiceTitle:`后台服务`,remoteServiceDescription:`直接控制托管当前 UI 的后台服务。`,remoteServiceRunning:`服务运行中`,remoteServiceManagedRunning:`当前就是托管服务`,remoteServiceStopped:`服务未运行`,remoteServicePid:`进程 PID`,remoteServiceUiUrl:`UI 地址`,remoteServiceCurrentProcess:`当前页面是否由该服务提供`,remoteStartService:`启动服务`,remoteRestartService:`重启服务`,remoteStopService:`停止服务`,remoteServiceHint:`如果当前页面本身就是托管服务,停止或重启时页面会短暂断开,这是预期行为。`,remoteServiceActionFailed:`服务操作失败`,remoteDoctorTitle:`远程诊断`,remoteDoctorDescription:`检查开关、平台登录、本地 UI 健康和连接器状态。`,remoteRunDoctor:`运行诊断`,remoteDoctorRunning:`诊断中...`,remoteDoctorCompleted:`诊断完成`,remoteDoctorFailed:`诊断失败`,remoteDoctorGeneratedAt:`生成时间`,remoteDoctorEmpty:`点击上方按钮运行一次诊断。`,remoteCheckPassed:`通过`,remoteCheckFailed:`失败`,connected:`已连接`,disconnected:`未连接`,connecting:`连接中...`,feishuConnecting:`验证 / 连接中...`,statusReady:`就绪`,statusSetup:`待配置`,statusActive:`活跃`,statusInactive:`未启用`},br={runtimePageTitle:`路由与运行时`,runtimePageDescription:`对齐 OpenClaw 的多智能体路由:绑定规则、智能体池、私聊范围。`,dmScopeMain:`统一到主会话`,dmScopePerPeer:`按对端隔离`,dmScopePerChannelPeer:`按渠道和对端隔离`,dmScopePerAccountChannelPeer:`按账号、渠道和对端隔离`,runtimeEntries:`运行时入口`,runtimeEntriesHelp:`统一管理可见的运行时入口与其配置。`,runtimeEntryIdPlaceholder:`入口 ID,例如 hermes`,runtimeEntryLabelPlaceholder:`展示名称,例如 Hermes`,runtimeEntryTypePlaceholder:`运行时类型,例如 narp-stdio`,runtimeEntryConfigJson:`配置 JSON`,addRuntimeEntry:`添加运行时入口`,runtimeEntryIdRequired:`运行时入口 ID 必填,位置:{index}`,runtimeEntryTypeRequired:`运行时入口 "{id}" 的类型必填`,runtimeEntryDuplicate:`重复的运行时入口 ID`,runtimeEntryConfigObjectRequired:`运行时入口 "{id}" 的配置必须是 JSON 对象。`,peerKindDirect:`私聊`,peerKindGroup:`群组`,peerKindChannel:`频道`,runtimeLoading:`加载运行时配置中...`,runtimeControlTitle:`服务管理`,runtimeControlDescription:`明确当前服务状态,并在宿主允许的范围内执行启动、重启、停止或桌面应用重启。`,runtimePresenceTitle:`运行形态与常驻`,runtimePresenceDescription:`明确当前环境里“关闭窗口/页面”会发生什么,以及哪些后台能力由宿主层负责。`,runtimePresenceLoading:`正在读取常驻状态...`,runtimePresenceLoadFailed:`读取桌面端常驻状态失败`,runtimePresenceBehaviorLabel:`当前关闭行为`,runtimePresenceBehaviorBackground:`关闭窗口时隐藏到后台`,runtimePresenceBehaviorQuit:`关闭窗口时退出应用`,runtimePresenceCloseToBackground:`关闭窗口时继续在后台运行`,runtimePresenceCloseToBackgroundHelp:`开启后,关闭桌面窗口只会隐藏到托盘,不会停止本地 NextClaw 服务。`,runtimePresenceLaunchAtLogin:`登录系统时自动启动 NextClaw`,runtimePresenceLaunchAtLoginHelp:`开启后,桌面端会在登录系统后自动启动,并默认保持后台运行。`,runtimePresenceLaunchAtLoginUnavailable:`当前环境暂不支持在这里配置开机自启。`,runtimePresenceSaved:`桌面端常驻设置已保存`,runtimePresenceSaveFailed:`保存桌面端常驻设置失败`,runtimePresenceManagedLocalTitle:`浏览器只是本地服务控制面`,runtimePresenceManagedLocalDescription:`关闭浏览器标签页不会停止本地 NextClaw 服务。服务生命周期由本地受管服务负责,而不是由页面生命周期决定。`,runtimePresenceSelfHostedTitle:`页面不拥有自托管服务生命周期`,runtimePresenceSelfHostedDescription:`关闭浏览器页面不会影响自托管实例。服务启停和开机常驻应由宿主环境或部署层管理。`,runtimePresenceSharedTitle:`共享网页端只暴露状态,不暴露进程控制`,runtimePresenceSharedDescription:`关闭页面只会结束当前连接或会话,不会影响共享服务本体。服务生命周期由平台托管层负责。`,runtimeControlLoading:`读取运行时控制能力中...`,runtimeControlLoadFailed:`读取运行时控制状态失败`,runtimeControlManagedLocalMessage:`使用此页面管理本地 NextClaw 服务。关闭浏览器不会停止服务。`,runtimeControlManagedLocalHint:`此页面由正在运行的本地服务提供。关闭浏览器不会停止它。`,runtimeControlManagedLocalHintShort:`此页面由正在运行的本地服务提供。`,runtimeControlStartUnavailableHosted:`当前页面已经由运行中的本地服务托管。`,runtimeControlRestartAppDesktopOnly:`只有桌面壳环境支持重启整个应用。`,runtimeControlServiceNotRunning:`本地服务未运行。`,runtimeControlServiceAlreadyStopped:`本地服务已经停止。`,runtimeControlManagedServiceStarted:`本地服务已启动。`,runtimeControlManagedServiceStartScheduled:`本地服务启动已安排。`,runtimeControlRestartScheduled:`重启已安排。此页面可能会短暂断开。`,runtimeControlStopScheduled:`停止已安排。此页面即将断开。`,runtimeControlServiceRunning:`服务运行中`,runtimeControlServiceStopped:`服务已停止`,runtimeControlServiceStarting:`正在启动服务`,runtimeControlServiceStopping:`正在停止服务`,runtimeControlServiceRestarting:`正在重启服务`,runtimeControlServiceUnknown:`服务状态未知`,runtimeControlHealthy:`运行时正常`,runtimeControlStartingService:`正在启动服务`,runtimeControlRestartingService:`正在重启服务`,runtimeControlStoppingService:`正在停止服务`,runtimeControlRestartingApp:`正在重启应用`,runtimeControlRecovering:`正在恢复连接`,runtimeControlFailed:`重启失败`,runtimeControlUnavailable:`当前不可用`,runtimeControlEnvironmentDesktop:`桌面端内嵌运行时`,runtimeControlEnvironmentManagedService:`本地托管服务`,runtimeControlEnvironmentSelfHosted:`自托管网页端`,runtimeControlEnvironmentSharedWeb:`共享网页端`,runtimeControlStartService:`启动服务`,runtimeControlRestartService:`重启服务`,runtimeControlStopService:`停止服务`,runtimeControlRestartApp:`重启应用`,runtimeControlPendingRestartTitle:`待重启`,runtimeControlPendingRestartDescription:`这次改动已经保存,但系统不会自动重启。请在你方便的时候手动重启,重启完成后该提示会自动清空。`,runtimeControlPendingRestartPaths:`待生效项`,runtimeStatusLoadingTitle:`读取状态中`,runtimeStatusLoadingDescription:`正在读取当前系统状态。`,runtimeStatusHealthyTitle:`系统正常`,runtimeStatusHealthyDescription:`当前没有需要你立即处理的系统动作。`,runtimeStatusPendingRestartTitle:`待重启`,runtimeStatusPendingRestartDescription:`这些改动已经保存,但不会自动重启。你可以在这里查看原因,并在方便的时候手动重启。`,runtimeStatusPendingRestartReasonItem:`{path} 改动将在重启后生效。`,runtimeStatusActionHint:`准备好时再执行`,runtimeStatusRestartAction:`立即重启`,runtimeStatusRestartingAction:`重启中...`,runtimeControlStartingServiceHelp:`正在启动 NextClaw 服务,页面可能会在服务恢复后重新连接。`,runtimeControlRestartingServiceHelp:`正在重启 NextClaw 服务,页面可能会短暂断开。`,runtimeControlStoppingServiceHelp:`正在停止 NextClaw 服务,当前页面会很快断开。`,runtimeControlRestartingAppHelp:`正在重新启动桌面应用,当前窗口会短暂关闭并立即拉起。`,runtimeControlRecoveringHelp:`正在等待服务恢复连接...`,runtimeControlRecovered:`运行时已恢复连接`,runtimeControlActionFailed:`服务管理动作失败`,runtimeControlRestartAppConfirm:`这会重启整个 NextClaw 桌面应用,并中断当前窗口。确定继续吗?`,runtimeControlStopServiceConfirm:`这会停止当前 NextClaw 服务,当前页面会立即断开。确定继续吗?`,runtimeRestartAppUnavailable:`当前环境不支持从前端重启整个应用。`,runtimeControlDesktopServiceHint:`桌面端由 Launcher 持有应用生命周期;普通用户无需单独停止内嵌服务。`,runtimeRecoveryTimedOut:`等待运行时恢复超时,请稍后重试或查看日志。`},xr={searchPageTitle:`搜索渠道`,searchPageDescription:`配置网页搜索提供商`,searchActiveProvider:`当前搜索提供商`,searchDefaultMaxResults:`默认返回条数`,searchProviderSummary:`结果摘要`,searchProviderFreshness:`时间范围`,searchProviderSearchDepth:`搜索深度`,searchProviderIncludeAnswer:`包含回答`,searchProviderBaseUrl:`接口地址`,searchProviderOpenDocs:`查看文档`,searchProviderActivate:`激活`,searchProviderActivated:`已激活`,searchProviderDeactivate:`取消激活`,searchProviderBochaDescription:`更适合中国大陆用户的 AI 搜索。`,searchProviderTavilyDescription:`更适合调研和网页信息整合的搜索 provider。`,searchProviderBraveDescription:`保留 Brave 作为可选 provider。`,searchProviderExaDescription:`语义搜索并提取网页正文,适合调研和资料发现。`,searchStatusConfigured:`已配置`,searchStatusNeedsSetup:`待配置`,searchFreshnessNoLimit:`不限`,searchFreshnessOneDay:`一天内`,searchFreshnessOneWeek:`一周内`,searchFreshnessOneMonth:`一个月内`,searchFreshnessOneYear:`一年内`,searchDepthBasic:`基础`,searchDepthAdvanced:`高级`,searchNoProviderSelected:`请选择左侧搜索 provider`},Sr={agentsPageTitle:`Agents`,agentsPageDescription:`Manage conversational agent identities. Each agent owns its home directory, setup, memory, and skills.`,agentsHeroEyebrow:`Agent Gallery`,agentsHeroTitle:`Give every agent the presence of a real collaborator`,agentsHeroDescription:`Browse, create, and choose distinct agent identities. Every agent carries its own avatar, name, home directory, memory, and skills space.`,agentsCreateButton:`New Agent`,agentsCreateDialogTitle:`Create a new agent identity`,agentsCreateDialogDescription:`Keep the flow simple. Provide only the essentials and let shared defaults plus the home directory template do the rest.`,agentsCreateDialogHint:"If you want AI to automate the full setup, you can still use `nextclaw agents new`.",agentsCreateTitle:`Create Agent`,agentsCreateDescription:"This is the lightweight UI entry. The full automation path is also available through `nextclaw agents new`.",agentsFormIdPlaceholder:`Agent ID, for example engineer`,agentsFormNamePlaceholder:`Display name, optional`,agentsFormDescriptionPlaceholder:`Role description, optional`,agentsFormAvatarPlaceholder:`Avatar URL or local path, optional`,agentsFormHomePlaceholder:`Home Directory, optional`,agentsFormRuntimePlaceholder:`Runtime (e.g. native or codex, optional)`,agentsRuntimeSelectPlaceholder:`Select runtime`,agentsRuntimeUnavailableHelp:`This runtime is no longer available in the current list. Switch to an installed and available runtime.`,agentsCreateAction:`Create Agent`,agentsViewDetailsAction:`View details`,agentsEditAction:`Edit`,agentsEditDialogTitle:`Edit agent identity`,agentsEditDialogDescription:`Update the name, role description, and avatar. The agent ID and home directory stay stable to protect existing memory, skills, and sessions.`,agentsEditHomeReadonly:`Home directory stays unchanged`,agentsEditHomeReadonlyHint:`Use a dedicated config migration flow to move the home directory and avoid losing agent context unexpectedly.`,agentsEditSaveAction:`Save edits`,agentsAdvancedConfigToggle:`Advanced configuration`,agentsAdvancedConfigDescription:`Leave a field empty to inherit the default configuration; filled values become overrides for this agent.`,agentsAdvancedInheritOption:`Inherit default`,agentsAdvancedInheritPlaceholder:`Empty inherits default`,agentsAdvancedContextTokensLabel:`Context window size`,agentsAdvancedReservedContextTokensLabel:`Reserved context size`,agentsAdvancedMaxToolIterationsLabel:`Max tool iterations`,agentsAdvancedThinkingDefaultLabel:`Default thinking level`,agentsAdvancedRuntimeConfigLabel:`Runtime config JSON`,agentsAdvancedModelsLabel:`Model overrides JSON`,agentsAdvancedJsonPlaceholder:`Leave empty to inherit defaults; enter a JSON object when filled`,agentsAdvancedInvalidNumberError:`Advanced numeric fields must contain a valid number`,agentsAdvancedInvalidJsonError:`Advanced JSON parsing failed`,agentsAdvancedJsonObjectError:`Advanced JSON must be an object`,agentsAdvancedParseFailed:`Failed to parse advanced configuration`,agentsDetailsDialogTitle:`Agent details`,agentsDetailsDialogDescription:`View this agent's visible identity, runtime, and context configuration.`,agentsDetailsEditAction:`Edit`,agentsDetailsIdentitySection:`Identity`,agentsDetailsRuntimeSection:`Runtime`,agentsDetailsContextSection:`Context`,agentsDetailsBehaviorSection:`Behavior`,agentsDetailsFieldId:`Agent ID`,agentsDetailsFieldDisplayName:`Display name`,agentsDetailsFieldDescription:`Role description`,agentsDetailsFieldWorkspace:`Home directory`,agentsDetailsFieldAvatar:`Avatar`,agentsDetailsFieldModel:`Model`,agentsDetailsFieldRuntime:`Runtime`,agentsDetailsFieldRuntimeConfig:`Runtime config`,agentsDetailsFieldContextTokens:`Context window size`,agentsDetailsFieldReservedContextTokens:`Reserved context size`,agentsDetailsFieldMaxToolIterations:`Max tool iterations`,agentsDetailsFieldThinkingDefault:`Default thinking level`,agentsDetailsFieldModelOverrides:`Model overrides`,agentsDetailsInheritedDefault:`Inherited default`,agentsDetailsAgentOverride:`Agent override`,agentsDetailsEmptyValue:`No description`,agentsDetailsUnsetValue:`Not set`,agentsRemoveAction:`Remove`,agentsNewChat:`New Chat`,agentsLoading:`Loading agents...`,agentsEmpty:`No extra agents yet`,agentsEmptyDescription:`Create the first specialist agent with its own name, avatar, and home directory.`,agentsBuiltIn:`Built-in`,agentsCustom:`Custom`,agentsOverviewTotal:`Conversational agents`,agentsOverviewBuiltIn:`System main agents`,agentsOverviewCustom:`Specialist agents`,agentsCardBuiltInSummary:`The built-in main agent, ideal as the default entry and coordinating collaborator.`,agentsCardCustomSummary:`A dedicated identity with its own memory, skills, and role style.`,agentsCardRuntimeLabel:`Runtime`,agentsCardContextTokensLabel:`Context`,agentsCardHomeLabel:`Home Directory`,agentsCardAvatarLabel:`Avatar`,agentsCardStartChat:`Start Chat`,agentsCardBuiltInTag:`Main Agent`,agentsCardCustomTag:`Specialist`,chatDraftAgentTitle:`Draft agent`,chatDraftAgentDescription:`Locked after creation`,chatDraftAgentCurrent:`Current Agent`},Cr={weixinAuthTitle:`Connect Weixin by QR`,weixinAuthDescription:`Weixin now uses QR login as the primary setup flow.`,weixinAuthHint:`In most cases you only need to start the flow, scan the QR code, and confirm on your phone. The config will be saved automatically.`,weixinAuthCapabilityHint:`After connecting, the agent can proactively message known Weixin users through this channel.`,weixinAuthPrimaryAccount:`Current default account`,weixinAuthConnectedAccounts:`Connected accounts`,weixinAuthBaseUrl:`Current API base URL`,weixinAuthConnect:`Scan QR to connect Weixin`,weixinAuthReconnect:`Reconnect with QR`,weixinAuthStarting:`Generating QR code...`,weixinAuthWaiting:`Waiting for scan confirmation`,weixinAuthScanned:`Scanned, waiting for confirmation`,weixinAuthAuthorized:`Connected`,weixinAuthConnectedDisabled:`Connected, but channel inactive`,weixinAuthNotConnected:`Not connected`,weixinAuthDisabledHint:`This account is connected, but the channel is inactive. Turn on Enabled before it can send or receive messages.`,weixinAuthRetryRequired:`QR session expired. Please start again.`,weixinAuthQrAlt:`Weixin login QR code`,weixinAuthScanPrompt:`Scan with Weixin and confirm the login on your phone.`,weixinAuthExpiresAt:`QR expires at`,weixinAuthOpenQr:`Open QR code in new tab`,weixinAuthReadyTitle:`Ready to connect Weixin`,weixinAuthReadyDescription:`After you start the flow, the QR code will appear here. Most first-time setups do not require filling low-level fields manually.`,weixinAuthAdvancedTitle:`Advanced settings`,weixinAuthAdvancedDescription:`Expand these fields only when you need to customize the API base URL, account mapping, or allowlist.`,feishuAuthTitle:`Connect Feishu by QR`,feishuAuthCreateNew:`Create new agent`,feishuAuthConnectExisting:`Connect existing agent`,feishuAuthDescription:`Feishu can create a new agent by QR, so you no longer need to copy app credentials manually.`,feishuAuthHint:`Start the flow, scan with Feishu, and the new agent credentials will be saved automatically for WebSocket messaging.`,feishuAuthCapabilityHint:`After connecting, the agent can send and receive Feishu direct and group messages through the registered app.`,feishuAuthDisabledHint:`This Feishu app is connected, but the channel is inactive. Turn on Enabled before it can send or receive messages.`,feishuAuthConnect:`Scan QR to connect Feishu`,feishuAuthQrAlt:`Feishu agent creation QR code`,feishuAuthScanPrompt:`Scan with Feishu and follow the prompts to finish agent creation.`,feishuAuthReadyTitle:`Ready to connect Feishu`,feishuAuthReadyDescription:`After you start the flow, the agent creation QR code will appear here. Use the existing-agent tab when you already have one.`,feishuAuthAdvancedTitle:`Advanced settings`,feishuAuthAdvancedDescription:`Expand these fields only when you need to switch Feishu/Lark domains, choose a default account, or adjust allowlist and group policies.`,feishuAuthDomain:`Feishu platform`,feishuPlatform:`Platform`,feishuExistingAgentTitle:`Connect an existing Feishu agent`,feishuExistingAgentDescription:`Enter the App ID and App Secret for an existing agent.`,feishuExistingAgentHint:`Open the developer console, choose an existing agent, then copy the credentials from its basic information page.`,feishuExistingAgentOpenFeishuList:`Open Feishu agent list`,feishuExistingAgentOpenLarkList:`Open Lark agent list`,feishuExistingAgentConnect:`Verify and connect`,feishuExistingAgentConnecting:`Verifying`,feishuExistingAgentConnectSuccess:`Feishu agent connected`},wr={channelsPageTitle:`Message Channels`,channelsPageDescription:`Filter, switch, and configure messaging channels in one continuous workspace.`,channelsLoading:`Loading channels...`,channelsTabEnabled:`Enabled`,channelsTabAll:`All Channels`,channelsFilterPlaceholder:`Search channels`,channelsNoMatch:`No matching channels`,channelsSelectTitle:`Select a channel from the left to configure`,channelsSelectDescription:`Switch between channels continuously and save each configuration.`,channelsFormDescription:`Configure message channel parameters`,channelsEmptyTitle:`No channels enabled`,channelsEmptyDescription:`Enable a messaging channel to start receiving messages.`,channelDescriptionDefault:`Configure this communication channel`,channelDescTelegram:`Connect with Telegram bots for instant messaging`,channelDescSlack:`Integrate with Slack workspaces for team collaboration`,channelDescEmail:`Send and receive messages via email protocols`,channelDescWebhook:`Receive HTTP webhooks for custom integrations`,channelDescDiscord:`Connect Discord bots to your community servers`,channelDescFeishu:`Enterprise messaging and collaboration platform`,channelDescWeixin:`Use QR login and long-poll updates for personal Weixin messaging`,configureMessageChannelParameters:`Configure message channel parameters`,channelsGuideTitle:`View Guide`,allowFrom:`Allow From`,token:`Token`,botToken:`Bot Token`,appToken:`App Token`,appId:`App ID`,domain:`Domain`,corpId:`Corp ID`,agentId:`Agent ID`,appSecret:`App Secret`,markdownSupport:`Markdown Support`,clientId:`Client ID`,clientSecret:`Client Secret`,encryptKey:`Encrypt Key`,verificationToken:`Verification Token`,bridgeUrl:`Bridge URL`,gatewayUrl:`Gateway URL`,proxy:`Proxy`,intents:`Intents`,mode:`Mode`,webhookPath:`Webhook Path`,callbackPort:`Callback Port`,callbackPath:`Callback Path`,defaultAccountId:`Default Account ID`,pollTimeoutMs:`Long Poll Timeout (ms)`,accountsJson:`Accounts JSON`,groupPolicy:`Group Policy`},Tr={chatPageTitle:`Agent Chat`,chatPageDescription:`Chat with your agent directly in UI with multi-session and multi-agent switching.`,chatRefresh:`Refresh`,chatNewSession:`New Session`,chatSearchSessionPlaceholder:`Search session key / label`,chatAgentLabel:`Target Agent`,chatSelectAgent:`Select Agent`,chatModelLabel:`Chat Model`,chatSelectModel:`Select model`,chatRuntimeDefaultModel:`Runtime default`,chatThinkingLevelOff:`Thinking Off`,chatThinkingLevelMinimal:`Thinking Minimal`,chatThinkingLevelLow:`Thinking Low`,chatThinkingLevelMedium:`Thinking Medium`,chatThinkingLevelHigh:`Thinking High`,chatThinkingLevelAdaptive:`Thinking Adaptive`,chatThinkingLevelXhigh:`Thinking XHigh`,chatSessionTypeLabel:`Session Type`,chatSessionTypeNative:`Native`,chatSessionTypeCodex:`Codex`,chatSessionTypeClaude:`Claude Code`,chatSessionTypeWeixin:`WeChat`,chatSessionTypeFeishu:`Feishu`,chatSessionTypeCron:`Cron`,chatSessionTypeUnavailableSuffix:`is unavailable now. Re-enable the runtime or create a native session.`,chatModelNoOptions:`No available models. Configure a provider first.`,chatGoConfigureProvider:`Go to Providers`,chatProviderSetupTitle:`Configure a Provider First`,chatProviderSetupDescription:`No models are available yet. Configure and save at least one provider, then return to start chatting.`,chatSessionLabel:`Current Session`,chatSessionSwitch:`Switch session`,chatSessionSwitcherTitle:`Recent sessions`,chatSessionSwitcherNoResults:`No matching sessions`,chatNoSession:`No session selected`,chatHistoryLoading:`Loading session history...`,chatBackToParent:`Back to parent`,chatSessionOpenChildSessions:`View child sessions`,chatSessionOpenCronJobs:`View session cron jobs`,chatSessionOpenWorkspace:`Open session workspace`,chatSessionCloseWorkspace:`Close session workspace`,chatChildSessionLoading:`Loading child session…`,chatChildSessionEmpty:`No child session messages yet.`,chatWorkspaceBack:`Back in workspace`,chatWorkspaceForward:`Forward in workspace`,chatWorkspaceRefreshFile:`Refresh preview`,chatWorkspaceMaximizePanel:`Maximize workspace panel`,chatWorkspaceRestorePanel:`Restore workspace panel`,chatWorkspaceClosePanel:`Close workspace panel`,chatWorkspaceOverview:`Overview`,chatWorkspaceOverviewDescription:`Open this session's related conversations, scheduled work, and project files.`,chatWorkspaceContinuousAttention:`Continuous attention`,chatWorkspaceContinuousAttentionDescription:`Review the state and events this session keeps receiving.`,chatWorkspaceContinuousAttentionState:`State`,chatWorkspaceContinuousAttentionEvents:`Events`,chatWorkspaceContinuousAttentionTotal:`Total`,chatWorkspaceContinuousAttentionNeedsAttention:`Needs attention`,chatWorkspaceContinuousAttentionStatusActive:`Active`,chatWorkspaceContinuousAttentionStatusPaused:`Paused`,chatWorkspaceContinuousAttentionStatusDegraded:`Degraded`,chatWorkspaceContinuousAttentionStatusExpired:`Expired`,chatWorkspaceContinuousAttentionStatusBroken:`Unavailable`,chatWorkspaceContinuousAttentionCreated:`Created`,chatWorkspaceContinuousAttentionExpires:`Expires`,chatWorkspaceContinuousAttentionLastRead:`Last read`,chatWorkspaceContinuousAttentionPending:`Pending {count}`,chatWorkspaceContinuousAttentionSuppressed:`Suppressed {count}`,chatWorkspaceContinuousAttentionFailures:`Delivery failures {count}`,chatWorkspaceContinuousAttentionPause:`Pause`,chatWorkspaceContinuousAttentionResume:`Resume`,chatWorkspaceContinuousAttentionRemove:`Remove`,chatWorkspaceContinuousAttentionUpdating:`Updating…`,chatWorkspaceContinuousAttentionRemoveTitle:`Remove continuous attention?`,chatWorkspaceContinuousAttentionRemoveDescription:`This session will stop keeping this state or event relationship. This cannot be undone.`,chatWorkspaceContinuousAttentionLoading:`Loading continuous attention…`,chatWorkspaceContinuousAttentionLoadFailed:`Couldn’t load continuous attention.`,chatWorkspaceContinuousAttentionRetry:`Retry`,chatWorkspaceContinuousAttentionActionFailed:`The action failed. Try again.`,chatWorkspaceContinuousAttentionEmpty:`No continuous attention`,chatWorkspaceContinuousAttentionEmptyDescription:`The Agent has not established this type of ongoing relationship for the session.`,chatWorkspaceTokenUsage:`Token usage`,chatWorkspaceTokenUsageDescription:`Counts this session's own AI runs. Cached input is included in input tokens; the hit rate is cached reads divided by all input.`,chatWorkspaceTokenUsageLoading:`Calculating token usage…`,chatWorkspaceTokenUsageLoadFailed:`Couldn’t load token usage.`,chatWorkspaceTokenUsageRetry:`Retry`,chatWorkspaceTokenUsageEmpty:`This session has no token usage to show yet. Some models and older runs may not report usage.`,chatWorkspaceTokenUsageTotal:`Total tokens`,chatWorkspaceTokenUsageInput:`Input`,chatWorkspaceTokenUsageOutput:`Output`,chatWorkspaceTokenUsageCachedInput:`Cached input`,chatWorkspaceTokenUsageCacheHitRate:`Cache hit rate`,chatWorkspaceTokenUsageRuns:`AI runs`,chatWorkspaceTokenUsageByModel:`By model`,chatWorkspaceTokenUsageModelRunCount:`Runs: {count}`,chatWorkspaceTokenUsageModelCacheHitRate:`Cache hit rate: {rate}`,chatWorkspaceTokenUsageReported:`Usage reported`,chatWorkspaceTokenUsagePartial:`Partial usage`,chatWorkspaceTokenUsageUnavailable:`Usage unavailable`,chatWorkspaceChildSessionsDescription:`Review the child sessions created from this conversation.`,chatWorkspaceChildSessionsEmpty:`No child sessions yet.`,chatWorkspaceCreateChildSession:`New child session`,chatWorkspaceSessionCronJobsDescription:`Review scheduled tasks associated with this session.`,chatWorkspaceProjectFiles:`Project files`,chatWorkspaceShowProjectFiles:`Show project files`,chatWorkspaceHideProjectFiles:`Hide project files`,chatWorkspaceResizeProjectFiles:`Resize project files`,chatWorkspaceProjectFilesDescription:`Browse files from the selected project directory.`,chatWorkspaceProjectFilesUnavailable:`Select a project directory to browse its files.`,chatWorkspaceSideChatDraftTitle:`Side chat`,chatWorkspaceSideChatDraftSubtitle:`This draft will inherit the parent session context when you send the first message.`,chatWorkspaceChildSessions:`Child sessions`,chatWorkspaceOpen:`Open`,chatWorkspaceOpenFiles:`Open files`,chatWorkspacePreview:`Preview`,chatWorkspaceOpenPreview:`Open preview`,chatWorkspaceOpenSource:`Open source`,chatWorkspaceFileMoreActions:`File actions`,chatWorkspaceDiff:`Diff`,chatWorkspaceCloseFile:`Close file`,chatWorkspaceCloseTab:`Close tab`,chatWorkspaceLoadingPreview:`Loading preview…`,chatWorkspaceLoadingFile:`Loading file…`,chatWorkspaceLoadingDirectory:`Loading directory…`,chatWorkspaceOpenDirectory:`Open directory`,chatWorkspaceOpenFile:`Open file`,chatWorkspaceDirectoryEmpty:`This directory is empty.`,chatWorkspaceDirectoryLoadFailed:`Failed to load directory`,chatWorkspaceFileContextMenu:`Project file actions`,chatWorkspaceRootContextMenu:`Project root actions`,chatWorkspaceAddToChat:`Add to chat`,chatWorkspaceMoreActionsFor:`More actions for {name}`,chatWorkspaceNewFolder:`New folder`,chatWorkspaceNewFile:`New file`,chatWorkspaceRefreshExplorer:`Refresh project files`,chatWorkspaceCollapseAll:`Collapse all`,chatWorkspaceRootMoreActions:`More project file actions`,chatWorkspaceFileName:`File name`,chatWorkspaceFileNamePlaceholder:`untitled`,chatWorkspaceFileCreated:`File created.`,chatWorkspaceFileCreateFailed:`Failed to create file`,chatWorkspaceCreateFolder:`Create`,chatWorkspaceCreateFolderIn:`Create in {name}`,chatWorkspaceFolderName:`Folder name`,chatWorkspaceFolderNamePlaceholder:`Untitled folder`,chatWorkspaceFolderCreated:`Folder created.`,chatWorkspaceFolderCreateFailed:`Could not create the folder`,chatWorkspaceUploadFiles:`Upload files`,chatWorkspaceUploadingFiles:`Uploading…`,chatWorkspaceUploadFilesHere:`Upload files here`,chatWorkspaceUploadSucceeded:`Uploaded {count} file(s).`,chatWorkspaceUploadFailed:`Could not upload the files`,chatWorkspaceUploadConflictTitle:`Replace existing files?`,chatWorkspaceUploadConflictDescription:`{count} file(s) already exist in this folder. Replacing them cannot be undone.`,chatWorkspaceReplaceFiles:`Replace files`,chatWorkspaceDownloadFile:`Download`,chatWorkspaceDelete:`Delete`,chatWorkspaceRename:`Rename`,chatWorkspaceRenameSucceeded:`Renamed to {name}.`,chatWorkspaceRenameFailed:`Failed to rename`,chatWorkspaceRenameName:`New name`,chatWorkspaceDeleting:`Deleting {name}…`,chatWorkspaceDeleteFileTitle:`Delete {name}?`,chatWorkspaceDeleteFolderTitle:`Delete folder {name}?`,chatWorkspaceDeleteFileDescription:`This file will be permanently deleted from the project workspace.`,chatWorkspaceDeleteFolderDescription:`This folder and everything inside it will be permanently deleted from the project workspace.`,chatWorkspaceDeleteSucceeded:`Deleted {name}.`,chatWorkspaceDeleteFailed:`Could not delete {name}`,chatWorkspaceExcerptSelectionTooLong:`Selection is too long`,chatWorkspaceRevealInFileManager:`Reveal in file manager`,chatWorkspaceCopyPath:`Copy path`,chatWorkspaceCopyRelativePath:`Copy relative path`,chatWorkspaceCopyPathFailed:`Could not copy the path.`,chatWorkspaceRevealPathFailed:`Could not reveal this item in the file manager.`,chatWorkspacePreviewUnsupported:`This file is not supported in the sidebar preview yet.`,chatWorkspacePreviewUnsupportedHint:`Legacy Word or PowerPoint files, archives, and other unsupported formats can be downloaded and opened with a local app.`,chatWorkspacePreviewFailed:`The file could not be previewed. You can still download it and open it with a local app.`,chatWorkspacePreviewNotFound:`This file could not be found. It may have been moved, renamed, or deleted.`,chatWorkspaceSpreadsheetPreviewTruncated:`This workbook is large. The preview shows up to 500 rows and 100 columns.`,chatWorkspacePreviewDownload:`Download file`,chatWorkspacePreviewOpenExternally:`Open with system app`,chatWorkspacePreviewEmpty:`No file content is available for preview.`,chatWorkspaceDiffEmpty:`No diff content is available.`,chatWorkspaceHtmlPreviewTitle:`Rendered HTML preview`,chatWorkspacePreviewTruncated:`Preview truncated`,chatWorkspaceSessionCronJobs:`Scheduled tasks`,chatWorkspaceCronJobEmpty:`This session has no cron jobs.`,chatSessionUnread:`Session has unread updates`,chatTyping:`Agent is thinking...`,chatReasoningInProgressCharacterCount:`Thinking · {count} characters so far`,chatReasoningCompletedCharacterCount:`Thought through {count} characters`,chatToolTerminalRunning:`Running command`,chatToolTerminalSuccess:`Ran command`,chatToolTerminalError:`Command failed`,chatToolTerminalCancelled:`Command cancelled`,chatToolFileReadRunning:`Reading file`,chatToolFileReadSuccess:`Read file`,chatToolFileReadError:`File read failed`,chatToolFileReadCancelled:`File read cancelled`,chatToolFileEditRunning:`Editing file`,chatToolFileEditSuccess:`Edited file`,chatToolFileEditError:`File edit failed`,chatToolFileEditCancelled:`File edit cancelled`,chatToolSearchRunning:`Searching`,chatToolSearchSuccess:`Searched`,chatToolSearchError:`Search failed`,chatToolSearchCancelled:`Search cancelled`,chatToolDirectoryRunning:`Listing directory`,chatToolDirectorySuccess:`Listed directory`,chatToolDirectoryError:`Directory listing failed`,chatToolDirectoryCancelled:`Directory listing cancelled`,chatToolWebRunning:`Fetching page`,chatToolWebSuccess:`Fetched page`,chatToolWebError:`Page fetch failed`,chatToolWebCancelled:`Page fetch cancelled`,chatToolMessageRunning:`Sending message`,chatToolMessageSuccess:`Sent message`,chatToolMessageError:`Message failed`,chatToolMessageCancelled:`Message cancelled`,chatToolSessionRunning:`Reading sessions`,chatToolSessionSuccess:`Read sessions`,chatToolSessionError:`Session read failed`,chatToolSessionCancelled:`Session read cancelled`,chatToolAgentRunning:`Managing subtask`,chatToolAgentSuccess:`Managed subtask`,chatToolAgentError:`Subtask failed`,chatToolAgentCancelled:`Subtask cancelled`,chatToolMemoryRunning:`Accessing memory`,chatToolMemorySuccess:`Accessed memory`,chatToolMemoryError:`Memory access failed`,chatToolMemoryCancelled:`Memory access cancelled`,chatToolScheduleRunning:`Managing schedule`,chatToolScheduleSuccess:`Managed schedule`,chatToolScheduleError:`Schedule action failed`,chatToolScheduleCancelled:`Schedule action cancelled`,chatToolSystemRunning:`Managing service`,chatToolSystemSuccess:`Managed service`,chatToolSystemError:`Service action failed`,chatToolSystemCancelled:`Service action cancelled`,chatToolImageRunning:`Viewing image`,chatToolImageSuccess:`Viewed image`,chatToolImageError:`Image view failed`,chatToolImageCancelled:`Image view cancelled`,chatToolDisplayRunning:`Showing result`,chatToolDisplaySuccess:`Showed result`,chatToolDisplayError:`Display failed`,chatToolDisplayCancelled:`Display cancelled`,chatScrollToBottom:`Scroll to bottom`,chatHistoryLoadFailed:`Couldn’t load earlier messages`,chatHistoryRetry:`Retry`,chatProcessSummaryProcessed:`Processed`,chatProcessSummaryToolCalls:`{count} tool calls`,chatToolPayloadLoading:`Loading details`,chatToolPayloadLoadFailed:`Couldn’t load details. Try again`,chatToolActivityShowMore:`Show next {count} ({remaining} remaining)`,chatAiExecutionInput:`input`,chatAiExecutionOutput:`output`,chatAiExecutionTokens:`tokens`,chatAiExecutionPartial:`partial usage`,chatMessageMoreActions:`More actions`,chatAiExecutionViewMetadata:`View run metadata`,chatAiExecutionMetadataTitle:`AI run metadata`,chatAiExecutionMetadataDescription:`Runtime facts persisted with this assistant message for inspection and debugging.`,chatAiExecutionMetadataClose:`Close run metadata`,chatAiExecutionNotAvailable:`Not available`,chatAiExecutionRunId:`Run ID`,chatAiExecutionRuntime:`Runtime`,chatAiExecutionModel:`Model`,chatAiExecutionRequestedModel:`Requested model`,chatAiExecutionOutcome:`Outcome`,chatAiExecutionInputTokens:`Input tokens`,chatAiExecutionOutputTokens:`Output tokens`,chatAiExecutionCachedInputTokens:`Cached input tokens`,chatAiExecutionTotalTokens:`Total tokens`,chatAiExecutionModelCallCount:`Model calls`,chatAiExecutionReportedModelCallCount:`Calls with reported usage`,chatAiExecutionUsageStatus:`Usage status`,chatAiExecutionOutcomeCompleted:`Completed`,chatAiExecutionOutcomeFailed:`Failed`,chatAiExecutionOutcomeAborted:`Aborted`,chatAiExecutionUsageReported:`Reported`,chatAiExecutionUsagePartial:`Partial`,chatAiExecutionUsageUnavailable:`Unavailable`,chatToolActivityReadOne:`Read 1 file`,chatToolActivityReadOther:`Read {count} files`,chatToolActivityEditOne:`Edit 1 file`,chatToolActivityEditOther:`Edit {count} files`,chatToolActivityDirectoryOne:`View 1 directory`,chatToolActivityDirectoryOther:`View {count} directories`,chatToolActivitySearchOne:`Search 1 time`,chatToolActivitySearchOther:`Search {count} times`,chatToolActivityBashOne:`Run 1 command`,chatToolActivityBashOther:`Run {count} commands`,chatToolActivityWebOne:`Open 1 page`,chatToolActivityWebOther:`Open {count} pages`,chatToolActivityAgentOne:`Start 1 subtask`,chatToolActivityAgentOther:`Start {count} subtasks`,chatToolActivityPanelOne:`Show 1 result`,chatToolActivityPanelOther:`Show {count} results`,chatToolActivityOtherOne:`Use 1 tool`,chatToolActivityOtherOther:`Use {count} tools`,chatProcessSummaryFailed:`failed`,chatProcessSummaryCancelled:`cancelled`,chatRuntimeInitializing:`Chat is still initializing. You can keep typing and send once startup finishes.`,chatRuntimeInitializationFailed:`Chat startup failed. Please retry in a moment or inspect the service logs.`,chatInputPlaceholder:`Type a message, / for commands, apps or skills, @ for files, folders, projects or panel apps, Enter to send, Shift + Enter for newline`,chatInputPlaceholderCompact:`Message NextClaw...`,chatWelcomeInputPlaceholder:`Describe what you want to get done…`,chatInputHint:`Multi-turn context is preserved in the current session.`,chatSlashSection:`Slash menu`,chatSlashSectionCommands:`Commands`,chatSlashSectionSkills:`Skills`,chatSlashFilterAll:`All`,chatSlashFilterCommands:`Commands`,chatSlashFilterSkills:`Skills`,chatSlashFilterPanelApps:`Panel Apps`,chatSlashTypeCommand:`Command`,chatSlashTypeSkill:`Skill`,chatSlashSkillSpec:`Spec`,chatSlashSkillScope:`Scope`,chatSlashLoading:`Loading commands, panel apps and skills…`,chatSlashNoResult:`No matches`,chatSlashHint:`Type / to access commands, panel apps or skills`,chatSlashCommandHint:`Press Enter to run this command.`,chatSlashCommandSideChatTitle:`Side chat`,chatSlashCommandSideChatDescription:`Open a draft side conversation that inherits this session context.`,chatSlashCommandSideChatDetail:`Creates the child session only after your first message.`,chatSlashCommandCompactContextTitle:`Compact context`,chatSlashCommandCompactContextDescription:`Summarize older messages to free context space in this session.`,chatSlashCommandCompactContextDetail:`Keeps the latest turn and the active task available for continuation.`,chatSlashCommandCompactContextSuccess:`Context compacted`,chatSlashCommandCompactContextFailed:`Couldn't compact context`,chatSlashCommandUpdateSessionTitleTitle:`Update session title`,chatSlashCommandUpdateSessionTitleDescription:`Ask AI to create a concise title from this conversation and update the session.`,chatSlashCommandUpdateSessionTitleDetail:`Sends a message automatically without replacing your current draft.`,chatSlashCommandUpdateSessionTitlePrompt:`Create a concise, accurate title based on this conversation, then use the sessions_update tool to update the current session title now. Do not only suggest a title.`,chatSlashPanelAppHint:`Press Enter to open this panel app on the right.`,chatSlashSkillHint:`Press Enter to add this skill for the next turn.`,chatPanelAppReferenceLoading:`Loading panel apps...`,chatPanelAppReferenceSection:`Panel Apps`,chatPanelAppReferenceNoResult:`No matching panel apps`,chatPanelAppReferenceHint:`Type @ to reference a panel app`,chatPanelAppReferenceItemHint:`Press Enter to reference this panel app.`,chatPanelAppReferenceType:`Panel App`,chatPanelAppReferenceAppId:`App ID`,chatPanelAppReferenceFile:`File`,chatPanelAppReferenceNoDescription:`No panel app description`,chatContextReferenceLoading:`Searching references...`,chatContextReferenceSection:`References`,chatContextReferenceNoResult:`No matching system objects, files, folders, projects, or panel apps`,chatContextReferenceHint:`Type @ to reference a system object, file, folder, project, or panel app`,chatContextReferenceItemHint:`Press Enter to add this reference.`,chatContextReferenceFilesLabel:`Files`,chatContextReferenceFilesType:`Project Files`,chatContextReferenceFilesDescription:`Browse and reference files in the current project.`,chatContextReferenceFilesHint:`Press Enter to browse files.`,chatContextReferenceFoldersLabel:`Folders`,chatContextReferenceFoldersType:`Project Folders`,chatContextReferenceFoldersDescription:`Browse and reference folders in the current project.`,chatContextReferenceFoldersHint:`Press Enter to browse folders.`,chatContextReferenceBack:`Back to all references`,chatContextReferenceBackDescription:`Return to the unified system object, file, folder, project, and panel app reference menu.`,chatContextReferenceBackHint:`Press Enter to go back.`,chatContextReferenceParent:`Up one folder`,chatContextReferenceParentDescription:`Browse the parent folder without closing the reference menu.`,chatContextReferenceParentHint:`Press Enter to open the parent folder.`,chatContextReferenceCurrentDirectory:`Reference current folder`,chatSystemObjectSection:`System Objects`,chatSystemObjectGroupHint:`Press Enter to browse this category.`,chatSystemObjectResolveFailed:`Could not reference system object`,chatContextReferenceFileDescription:`Use this file as explicit context for the current message.`,chatContextReferenceDirectoryDescription:`Use this folder as a context scope for the current message.`,chatContextReferenceProjectsLabel:`Projects`,chatContextReferenceProjectsType:`Project Context`,chatContextReferenceProjectsDescription:`Choose a registered project as context for the current message.`,chatContextReferenceProjectsHint:`Press Enter to browse projects.`,chatContextReferenceProjectType:`Project`,chatContextReferenceProjectDescription:`Use this project's name, path, and directory outline as explicit context for the current message.`,chatContextReferenceProjectPath:`Project path`,chatContextReferenceProjectSection:`Projects`,chatContextReferenceProjectsLoadFailed:`Failed to load projects`,chatContextReferenceProjectRoot:`Project directory`,chatContextReferenceSearchFailed:`Reference search failed`,chatSkillScopeBuiltin:`Built-in`,chatSkillScopeGlobal:`Global`,chatSkillScopeProject:`Project`,chatSkillScopeWorkspace:`Workspace`,chatSkillGroupBuiltin:`Built-in skills`,chatSkillGroupGlobal:`Global skills`,chatSkillGroupProject:`Project skills`,chatSkillGroupWorkspace:`NextClaw skills`,chatPickerRecent:`Recent`,chatPickerFavoriteModels:`Favorites`,chatPickerRecentModels:`Recent`,chatPickerAllModels:`All models`,chatModelSearchPlaceholder:`Search models`,chatModelSearchEmpty:`No matching models`,chatFavoriteModel:`Add to favorites`,chatUnfavoriteModel:`Remove from favorites`,chatManageModels:`Manage models and providers`,chatDiscoveredModelsSummary:`{count} new models available`,chatDiscoveredModelsView:`View`,chatDiscoveredModelsGroup:`New models`,chatDiscoveredModelsDismiss:`Dismiss this batch`,chatDiscoveredModelsDone:`Done`,chatDiscoveredModelsClose:`Close new models`,chatDiscoveredModelAdd:`Add`,chatDiscoveredModelAddedShort:`Added`,chatDiscoveredModelAdded:`Added {model}`,chatDiscoveredModelUnavailable:`This model is no longer available. Reopen the model selector.`,chatPickerAllSkills:`All skills`,chatSend:`Send`,chatContinueRun:`Continue`,chatEditMessage:`Edit message`,chatEditMessageCancel:`Cancel`,chatEditMessagePlaceholder:`Edit your message`,chatEditMessageSubmit:`Send`,chatStop:`Stop`,chatStopPreparing:`Preparing stoppable run…`,chatStopUnavailable:`Manual stop is not supported by the current backend engine.`,chatContextWindow:`Context window`,chatContextWindowUsed:`Projected use`,chatContextWindowFixed:`System and tools`,chatContextWindowDynamic:`Conversation`,chatContextWindowTrigger:`Auto-compaction threshold`,chatContextWindowReserve:`Output reserve`,chatContextWindowTotal:`Total`,chatContextWindowAvailable:`Available`,chatContextWindowAvailableBeforeCompaction:`Until auto-compaction`,chatContextWindowPruned:`After safety pruning`,chatContextWindowDroppedHistory:`Dropped history`,chatContextWindowTruncatedTools:`Truncated tool results`,chatContextWindowUpdatedAt:`Updated`,chatContextCompactionCompressing:`Compressing earlier context`,chatContextCompactionCompressed:`Earlier context was auto-compacted`,chatContextCompactionCancelled:`Context compaction was cancelled`,chatContextCompactionFailed:`Context compaction failed`,chatContextCompactionCoveredMessages:`Covered messages`,chatContextCompactionOriginalTokens:`Estimated before compaction`,chatContextCompactionProjectedTokens:`Estimated after compaction`,chatContextInheritanceInherited:`Inherited parent session context`,chatContextInheritanceSourceSession:`Source session`,chatContextInheritanceMessages:`Inherited messages`,chatSending:`Sending...`,chatQueueSend:`Queue`,chatQueuedBannerAttachmentFallback:`Attachment message`,chatQueuedSubmitting:`Adding to queue…`,chatQueuedEdit:`Edit queued input`,chatQueuedDelete:`Delete queued input`,chatQueuedSteer:`Steer into the active run at its next step`,chatQueuedEditComposerNotEmpty:`Send or clear the composer before editing this queued input`,chatSteeringPending:`Waiting for the next step`,chatDeleteSession:`Delete Session`,chatDeleteSessionConfirm:`Delete the current session?`,chatSessionMoreActions:`More actions`,chatSessionCopyId:`Copy session ID`,chatSessionCopyIdSuccess:`Session ID copied`,chatSessionCopyIdFailed:`Couldn’t copy the session ID.`,chatSessionViewMetadata:`View Metadata`,chatSessionMetadataDialogTitle:`Session Metadata`,chatSessionMetadataDialogDescription:`Raw metadata stored on the current session.`,chatSessionSetProject:`Set Project Directory`,chatSessionClearProject:`Clear Project Directory`,chatSessionProjectDialogTitle:`Set Project Directory`,chatSessionProjectDialogDescription:`Bind this session to a directory on the machine running the NextClaw service so future messages and tool runs work around that directory.`,chatSessionProjectPathLabel:`Project Directory Path`,chatSessionProjectPathPlaceholder:`/path/to/project`,chatSessionProjectUpdateHint:`The browser lists directories from the server machine. Changing the project directory only affects future messages and tool runs. History stays unchanged.`,chatSessionProjectUpdated:`Project directory updated`,chatSessionProjectCleared:`Project directory cleared`,chatProjectAdd:`Add Project`,chatProjectAddTitle:`Add Project`,chatProjectAddDescription:`Create a new project directory or add an existing directory to the project list.`,chatProjectCreateMode:`Create new`,chatProjectCreateModeDescription:`Create a new project directory and optionally initialize it from a template.`,chatProjectExistingMode:`Add existing directory`,chatProjectExistingModeDescription:`Select an existing directory on the server machine. Its folder name becomes the project name, and its contents will not be changed or initialized.`,chatProjectNameLabel:`Project name`,chatProjectNamePlaceholder:`For example: Personal knowledge base`,chatProjectTemplateLabel:`Project template`,chatProjectTemplateEmpty:`Empty project`,chatProjectTemplateKnowledgeBase:`Knowledge base`,chatProjectCreatePathLabel:`Project directory (optional)`,chatProjectCreatePathPlaceholder:`/path/to/new-project`,chatProjectCreatePathHint:`Leave this blank to create a same-named folder under the default working directory, or select an empty directory.`,chatProjectCreatePathPickerTitle:`Select or Create Project Directory`,chatProjectCreatePathPickerDescription:`Select an empty directory or create a new folder for the project.`,chatProjectExistingPathLabel:`Existing project directory`,chatProjectExistingPathPlaceholder:`/path/to/existing-project`,chatProjectExistingPathHint:`The directory must already exist. Its contents will remain unchanged.`,chatProjectExistingPathPickerTitle:`Select Existing Project Directory`,chatProjectExistingPathPickerDescription:`Select the server directory to add to the project list.`,chatProjectCreateAction:`Create project`,chatProjectExistingAction:`Add to project list`,chatProjectCreated:`Project created`,chatProjectCreateFailed:`Failed to create project`,chatProjectExistingAdded:`Project added`,chatProjectExistingFailed:`Failed to add project`,chatSessionErrorTitle:`Something went wrong`,chatSessionActivityInterrupted:`The run was interrupted. Send the message again.`,chatSendFailed:`Failed to send message`,chatRoleUser:`You`,chatRoleAssistant:`Assistant`,chatRoleTool:`Tool`,chatRoleSystem:`System`,chatRoleMessage:`Message`,chatObservationEventLabel:`External event`,chatObservationEventDetailsTitle:`Event details`,chatObservationEventExtension:`Extension`,chatObservationEventId:`Event ID`,chatObservationEventTime:`Time`,chatObservationEventPayloadLabel:`Event data`,chatObservationEventShowDetails:`View event data`,chatObservationEventPayloadEmpty:`No event data`,chatToolCall:`Tool Call`,chatToolResult:`Tool Result`,chatToolInput:`Input`,chatToolWorkflow:`Tool Workflow`,chatToolWorkflowDetails:`Expand to view params and results`,chatToolOutput:`Output`,chatToolNoOutput:`No output (completed)`,chatToolStatusPreparing:`Preparing`,chatToolStatusRunning:`Running`,chatToolStatusCompleted:`Completed`,chatToolStatusFailed:`Failed`,chatToolStatusCancelled:`Cancelled`,chatShowContentAction:`Show content`,chatPanelCardExpand:`Expand to side panel`,chatReasoning:`Reasoning`,chatImageAttachment:`Image attachment`,chatFileAttachment:`File attachment`,chatAttachmentOpen:`Open`,chatAttachmentAttached:`Attached`,chatAttachmentExpand:`Expand image`,chatAttachmentClosePreview:`Close preview`,chatAttachmentCategoryArchive:`Archive`,chatAttachmentCategoryAudio:`Audio`,chatAttachmentCategoryCode:`Code file`,chatAttachmentCategoryData:`Data file`,chatAttachmentCategoryDocument:`Document`,chatAttachmentCategoryGeneric:`File`,chatAttachmentCategoryImage:`Image`,chatAttachmentCategoryPdf:`PDF document`,chatAttachmentCategorySheet:`Spreadsheet`,chatAttachmentCategoryVideo:`Video`,chatUnknownPart:`Unknown message part`,chatCodeCopy:`Copy`,chatCodeCopied:`Copied`,chatMessageCopy:`Copy`,chatMessageCopied:`Copied`,chatMermaidDiagram:`Diagram`,chatMermaidExpand:`Expand diagram`,chatMermaidLoading:`Rendering diagram…`,chatMermaidRenderError:`Diagram could not be rendered; showing source instead`,chatPreviewZoomIn:`Zoom in`,chatPreviewZoomOut:`Zoom out`,chatPreviewResetZoom:`Reset zoom`,chatSidebarNewTask:`New Task`,chatSidebarSearchPlaceholder:`Search conversations...`,chatSidebarScheduledTasks:`Scheduled Tasks`,chatSidebarSkills:`Skills`,chatSidebarTaskRecords:`Sessions`,chatSidebarViewTime:`Time`,chatSidebarViewProject:`Project`,chatSidebarViewMode:`Session list view`,chatSidebarToday:`Today`,chatSidebarYesterday:`Yesterday`,chatSidebarPrevious7Days:`Previous 7 Days`,chatSidebarOlder:`Older`,chatSidebarPinned:`Pinned`,chatSidebarPinSession:`Pin session`,chatSidebarUnpinSession:`Unpin session`,chatSidebarPinProject:`Pin project`,chatSidebarUnpinProject:`Unpin project`,chatSidebarExpandProject:`Expand project`,chatSidebarCollapseProject:`Collapse project`,chatSidebarProjectViewEmpty:`No projects yet`,chatBackgroundReplyFallbackTitle:`New reply`,chatBackgroundReplyFallbackPreview:`A reply is ready. Open the session to view it.`,chatBackgroundReplyOpenAriaLabel:`Open the new reply in {title}`,chatWelcomeTitle:`What would you like to get done?`,chatWelcomeContextLabel:`Task context`,chatWelcomeProjectPickerLabel:`Choose working directory`,chatWelcomeProjectPickerPlaceholder:`Choose working directory`,chatWelcomeProjectRecentTitle:`Working directories`,chatWelcomeProjectDefaultBadge:`Default`,chatWelcomeProjectNoRecent:`No recent projects yet`,chatWelcomeProjectOpenFolder:`Open folder`,chatWelcomeSessionTypePickerLabel:`Choose session type`,chatWelcomeSuggestion1Label:`Review this project`,chatWelcomeSuggestion1Prompt:`Help me understand this project and propose the next three concrete things we should build.`,chatWelcomeSuggestion2Label:`Find useful skills`,chatWelcomeSuggestion2Prompt:`Review the skills that would be useful for this project and recommend which ones I should enable first.`,chatWelcomeSuggestion3Label:`Create a scheduled task`,chatWelcomeSuggestion3Prompt:`Help me design a scheduled automation for this project, including the trigger, message, and safety checks.`,chatSkillsPickerTitle:`Skills`,chatSkillsPickerEmpty:`No skills installed`,chatSkillsPickerSearchPlaceholder:`Search skills`,chatSkillsPickerNoDescription:`No description`,chatSkillsPickerOfficial:`Official`,chatSkillsPickerManage:`Manage Skills`,chatSkillPreviewUnavailable:`This skill file is unavailable. It may have been moved or removed.`,chatInputAdd:`Add content`,chatInputAttach:`Attach file`,chatInputRemoveReference:`Remove reference`,chatWorkspaceExcerptCharacterCount:`{count} characters`,chatInputAttachmentUnsupported:`This file type is not supported in the current upload flow.`,chatInputAttachmentTooLarge:`Files must be {maxMb} MB or smaller.`,chatInputAttachmentReadFailed:`Failed to read the file. Please try again.`},Er={chat:`Chat`,model:`Model`,searchChannels:`Search Channels`,providers:`Providers`,extensions:`Extensions`,channels:`Channels`,cron:`Cron Jobs`,secrets:`Secrets`,runtime:`Routing & Runtime`,remote:`Remote Access`,marketplace:`Marketplace`,advanced:`Advanced`,settings:`Settings`,settingsGroupBasic:`Basic Configuration`,settingsGroupAdvanced:`Advanced Configuration`,appearance:`Appearance`,chatMessageLayoutTitle:`Message layout`,chatMessageLayoutDescription:`Choose how chat messages are displayed.`,chatMessageLayoutCard:`Cards`,chatMessageLayoutCardDescription:`Show user and AI messages in separate cards.`,chatMessageLayoutFlat:`Flat`,chatMessageLayoutFlatDescription:`Keep user bubbles while showing AI identity and content in a flat layout.`,settingsMenu:`Settings menu`,sidebarCollapse:`Collapse sidebar`,sidebarExpand:`Expand sidebar`,security:`Sign-in Management`,privacy:`Privacy & Analytics`,backToMain:`Back to Main`,enabled:`Enabled`,disabled:`Disabled`,save:`Save`,cancel:`Cancel`,delete:`Delete`,add:`Add`,edit:`Edit`,loading:`Loading...`,success:`Success`,error:`Error`,confirm:`Confirm`,unchanged:`Unchanged`,saving:`Saving...`,remove:`Remove`,more:`More`,notificationDismiss:`Dismiss notification`,all:`All`,yes:`Yes`,no:`No`,prev:`Prev`,next:`Next`,noneOption:`None`,language:`Language`,theme:`Theme`,themeNatural:`Natural`,themeWork:`Default`,themeMinimal:`Minimal`,themeWarm:`Paper`,themeCool:`Mist`,themeDawn:`Dawn`,themeGraphite:`Graphite`,themeNight:`Night`,themeCharcoal:`Charcoal`,themeProbe:`Probe`,isRequired:`is required`,duplicate:`duplicate`,notFound:`not found`,modelPageTitle:`Model Configuration`,modelPageDescription:`Configure default AI model selection`,defaultModel:`Default Model`,workspace:`Workspace`,modelName:`Model`,modelPickerNoOptions:`No model options available`,modelPickerUseCustom:`Use custom model: {value}`,modelPickerToggleOptions:`Toggle model options`,modelInputCustomHint:`If the model is not listed, type a custom model ID directly.`,modelIdentifierHelp:`Default model identifier used by the agent. Use provider-prefixed format. Examples: openai/gpt-5.1 · anthropic/claude-opus-4-1 · deepseek/deepseek-chat · minimax/MiniMax-M2.5 · openrouter/openai/gpt-5.3-codex.`,maxToolIterations:`Max Tool Iterations`,saveChanges:`Save Changes`,providersPageTitle:`AI Providers`,providersPageDescription:`Switch, configure, and save providers in one continuous workspace.`,providersLoading:`Loading...`,providersTabConfigured:`Configured`,providersTabAll:`All Providers`,providersFilterPlaceholder:`Search providers`,providersNoMatch:`No matching providers`,providerAdd:`Add Provider`,providerAddCustom:`Add Custom Provider`,providerTemplatePickerTitle:`Choose a provider template`,providerDelete:`Delete Provider`,providerDeleteConfirm:`Delete this provider? This action cannot be undone.`,providersSelectPlaceholder:`Select Provider`,providersSelectTitle:`Select a provider from the left to configure`,providersSelectDescription:`Switch between providers continuously and save each configuration.`,providersDefaultDescription:`Configure AI services for your agents`,providersEmptyTitle:`No providers configured`,providersEmptyDescription:`Add an AI provider to start using the platform.`,extensionsPageTitle:`Extension Management`,extensionsPageDescription:`Review discovered Extensions, their capabilities, and current runtime state.`,extensionsRefresh:`Refresh`,extensionsLifecycleDescription:`Extensions start and stop on demand based on channel usage and session continuous-attention relationships. This page is the global view of their capabilities and runtime state.`,extensionsLoading:`Loading Extensions…`,extensionsLoadFailed:`Couldn’t load Extensions.`,extensionsRetry:`Retry`,extensionsEmpty:`No Extensions discovered`,extensionsEmptyDescription:`Install or place an Extension, then refresh this page.`,extensionsTotal:`Total`,extensionsRunning:`Running`,extensionsWithObservations:`Continuous attention`,extensionsWithChannels:`Channels`,extensionsObservationCapabilities:`Continuous-attention capabilities`,extensionsChannelCapabilities:`Channel capabilities`,extensionsContextCapability:`State`,extensionsEventsCapability:`Events`,extensionsNone:`None`,extensionsLeaseCount:`Active uses`,extensionsProcess:`Process`,extensionsStartedAt:`Started`,extensionsStateRunning:`Running`,extensionsStateStarting:`Starting`,extensionsStateStopping:`Stopping`,extensionsStateStopped:`Stopped`,extensionsStateFailed:`Failed`,apiKey:`API Key`,apiBase:`API Base URL`,extraHeaders:`Extra Headers`,wireApi:`Wire API`,wireApiAuto:`Auto (Chat with fallback)`,wireApiChat:`Chat Completions`,wireApiResponses:`Responses`,apiKeySet:`Set`,apiKeyNotSet:`Not Set`,showKey:`Show Key`,hideKey:`Hide Key`,providerFormDescription:`Configure API keys and parameters for AI provider`,providerDisplayName:`Custom Name`,providerDisplayNamePlaceholder:`For example: Relay A`,providerDisplayNameHelp:`Display-only label to distinguish multiple custom providers.`,enterApiKey:`Enter API Key`,providerApiBaseHelp:`Leave empty or reset to use the default API base.`,providerApiBaseHelpMinimax:`Use https://api.minimaxi.com/v1 for Mainland China accounts, and https://api.minimax.io/v1 for overseas accounts.`,providerOpenAICompatHint:`Custom providers use OpenAI-compatible API format by default (Chat Completions / Responses).`,providerExtraHeadersHelp:`Optional custom request headers.`,providerTestConnection:`Test Connection`,providerTestingConnection:`Testing...`,providerTestConnectionSuccess:`Connection test passed`,providerTestConnectionFailed:`Connection test failed`,providerModelsTitle:`Available Models`,providerModelsFetch:`Fetch model list`,providerModelsFetching:`Fetching...`,providerModelsFetchSuccess:`Model list fetched`,providerModelsFetchFailed:`Failed to fetch model list`,providerModelsApiKeyRequired:`Please enter an API Key before fetching the model list`,providerModelsAuthorizationFailed:`Authentication failed. Check the API Key and API address`,providerModelsSuggestionsChecking:`Loading the model catalog…`,providerModelsSuggestionsFailed:`Unable to load the model catalog. Check the API Key, API address, or network connection; you can still add models manually.`,providerModelsSuggestionsSummary:`Catalog models not added: {count}`,providerModelsFetchedSuggestionsSummary:`{count} fetched models available to add`,providerModelsFetchedAllConfigured:`Fetched {count} models; all are already in the current list`,providerModelsSuggestionsAddAll:`Add all`,providerModelsSuggestionSelect:`Select model {model}`,providerModelsSuggestionsSelected:`{count} selected`,providerModelsSuggestionsAddSelected:`Add selected`,providerModelsSuggestionsSaveHint:`Save to apply the added models.`,providerModelsSuggestionsSearchPlaceholder:`Search catalog models`,providerModelsSuggestionsSearchEmpty:`No matching models`,providerModelsSuggestionsShowing:`Showing the first {visible} of {count} matches; refine your search to narrow the list`,providerModelsBulkRemove:`Bulk delete`,providerModelsSelectAll:`Select all`,providerModelsClearSelection:`Clear selection`,providerModelsRemoveSelected:`Delete selected`,providerModelsRemoveSaveHint:`Deletion only changes this draft and applies after you save.`,providerModelInputPlaceholder:`Enter provider-local model id (may contain /)`,providerModelInputHint:`The list is only a reference. You can type and add models that are not listed.`,providerAddModel:`Add Model`,providerModelsEmpty:`No models yet. Add one by typing model id.`,providerModelDefaultTag:`Default`,providerModelCustomTag:`Custom`,providerModelsHelp:`Built-in models are prefilled and can be added or removed here. Enter provider-local model ids without the current provider route prefix. Nested ids such as vendor/model are valid; if the current provider prefix is included, only that outer prefix is removed.`,providerModelsEmptyShort:`No models available`,providerAddFirstModel:`Add first model`,providerModelVisionTitle:`Vision`,providerModelVisionHint:`Allow image input for this model.`,providerModelThinkingTitle:`Thinking Capability`,providerModelThinkingHint:`Declare supported thinking levels for this model. Chat sessions will show the selector accordingly.`,providerModelThinkingDefault:`Default Thinking Level`,providerModelThinkingDefaultNone:`No default (fallback off)`,providerModelThinkingNoSupported:`Select at least one supported level first.`,providerDisplayNameHelpShort:`Helps distinguish multiple custom providers`,providerApiBaseHelpShort:`Usually just the domain; path auto-appended`,providerExtraHeadersHelpShort:`Optional, for custom auth etc.`,providerAdvancedSettings:`Advanced Settings`,providerAuthSectionTitle:`Provider Authorization`,providerAuthStarting:`Starting...`,providerAuthAuthorizing:`Authorizing...`,providerAuthAuthorizeInBrowser:`Authorize in Browser`,providerAuthWaitingBrowser:`Waiting for browser authorization...`,providerAuthCompleted:`Authorization completed.`,providerAuthOpenPrompt:`Open browser and complete authorization (code: `,providerAuthOpenPromptSuffix:`)`,providerAuthStartFailed:`Failed to start authorization`,providerAuthMethodLabel:`Authorization Region`,providerAuthMethodPlaceholder:`Select authorization method`,providerAuthImportFromCli:`Import From Qwen CLI`,providerAuthImporting:`Importing...`,providerAuthImportSuccess:`Imported provider credentials from CLI.`,providerAuthImportStatusPrefix:`Imported credentials from CLI successfully.`,providerAuthImportFailed:`Failed to import credentials`,providerAuthSessionLabel:`Session`,resetToDefault:`Reset to Default`,leaveBlankToKeepUnchanged:`Leave blank to keep unchanged`,consentGranted:`Consent Granted`,imapHost:`IMAP Host`,imapPort:`IMAP Port`,imapUsername:`IMAP Username`,imapPassword:`IMAP Password`,imapMailbox:`IMAP Mailbox`,imapUseSsl:`IMAP Use SSL`,smtpHost:`SMTP Host`,smtpPort:`SMTP Port`,smtpUsername:`SMTP Username`,smtpPassword:`SMTP Password`,smtpUseTls:`SMTP Use TLS`,smtpUseSsl:`SMTP Use SSL`,fromAddress:`From Address`,autoReplyEnabled:`Auto Reply Enabled`,pollIntervalSeconds:`Poll Interval (s)`,markSeen:`Mark Seen`,maxBodyChars:`Max Body Chars`,subjectPrefix:`Subject Prefix`,baseUrl:`Base URL`,socketUrl:`Socket URL`,socketPath:`Socket Path`,socketDisableMsgpack:`Disable Msgpack`,socketReconnectDelayMs:`Reconnect Delay (ms)`,socketMaxReconnectDelayMs:`Max Reconnect Delay (ms)`,socketConnectTimeoutMs:`Connect Timeout (ms)`,refreshIntervalMs:`Refresh Interval (ms)`,watchTimeoutMs:`Watch Timeout (ms)`,watchLimit:`Watch Limit`,retryDelayMs:`Retry Delay (ms)`,maxRetryAttempts:`Max Retry Attempts`,clawToken:`Claw Token`,agentUserId:`Agent User ID`,sessions:`Sessions`,panels:`Panels`,mentionRequireInGroups:`Require Mention in Groups`,groups:`Groups`,replyDelayMode:`Reply Delay Mode`,replyDelayMs:`Reply Delay (ms)`,secret:`Secret`,accountId:`Account ID`,dmPolicy:`DM Policy`,groupAllowFrom:`Group Allow From`,requireMention:`Require Mention`,mentionPatterns:`Mention Patterns`,groupRulesJson:`Group Rules (JSON)`,allowBotMessages:`Allow Bot Messages`,attachmentMaxSizeMb:`Attachment Max Size (MB)`,streamingMode:`Streaming Mode`,draftChunkingJson:`Draft Chunking (JSON)`,textChunkLimit:`Text Chunk Limit`,invalidJson:`Invalid JSON`,authBrand:`NextClaw UI`,authLoginTitle:`Admin Sign In`,authLoginDescription:`Authentication is enabled. Sign in to access this machine’s NextClaw UI.`,authUsername:`Admin Username`,authUsernamePlaceholder:`Enter admin username`,authPassword:`Admin Password`,authPasswordPlaceholder:`Enter admin password`,authConfirmPassword:`Confirm Password`,authConfirmPasswordPlaceholder:`Enter password again`,authLoginAction:`Sign In`,authLoggingIn:`Signing in...`,authLoggingOut:`Signing out...`,authActionFailed:`Authentication action failed`,authLoginSuccess:`Signed in successfully`,authLogoutSuccess:`Signed out successfully`,authSetupSuccess:`Authentication enabled. This tab is now signed in and ready to use.`,authPasswordUpdated:`Admin password updated`,authEnabledSuccess:`Authentication enabled`,authDisabledSuccess:`Authentication disabled`,authRetryStatus:`Retry`,authStatusLoadFailed:`Failed to load authentication status. Check whether the UI server is healthy.`,authSecurityTitle:`Sign-in Management`,authSecurityDescription:`Choose whether opening NextClaw requires sign-in, and manage the admin username and password.`,authSetupTitle:`Enable Lightweight Authentication`,authSetupDescription:`Create the single admin account the first time you enable authentication. This tab will be signed in automatically.`,authSetupAction:`Enable Authentication`,authSettingUp:`Enabling...`,authPasswordMismatch:`Passwords do not match`,authPasswordMinLengthHint:`Passwords must be at least 8 characters. This version supports a single admin account only.`,authStatusLabel:`Current Status`,authStatusConfiguredUser:`Admin account: {username}`,authUsernameFixedHelp:`This first version does not support renaming the admin account or managing multiple users.`,authEnableLabel:`Require Login`,authEnableOnHelp:`When enabled, every UI API and WebSocket except health and auth endpoints requires login.`,authEnableOffHelp:`The UI is currently open for local-style use. Re-enabling will issue a fresh signed-in session to this tab.`,authPasswordSectionTitle:`Change Admin Password`,authPasswordSectionDescription:`Updating the password invalidates old sessions immediately. This tab gets a fresh session automatically while auth is enabled.`,authPasswordAction:`Update Password`,authPasswordUpdating:`Updating...`,authLogoutAction:`Sign Out This Tab`,authSessionMemoryNotice:`Sessions are stored only in server memory for now. You will need to sign in again after the NextClaw UI process restarts.`,privacyPageTitle:`Privacy & Analytics`,privacyPageDescription:`Choose whether to share minimal product activity and keep team or test installations separate.`,productAnalyticsSectionTitle:`Product activity analytics`,productAnalyticsSectionDescription:`Disabled by default. Changes apply immediately without restarting NextClaw.`,productAnalyticsEnabledTitle:`Share product activity`,productAnalyticsEnabledDescription:`When enabled, share only whether an Agent request was submitted and whether it succeeded.`,productAnalyticsAudienceTitle:`Analytics audience`,productAnalyticsAudienceDescription:`Team members and testers should choose the matching category so they stay out of external-user metrics.`,productAnalyticsAudienceExternal:`External user`,productAnalyticsAudienceInternal:`Team / personal`,productAnalyticsAudienceQa:`QA testing`,productAnalyticsDataTitle:`Data scope`,productAnalyticsCollectedTitle:`What is shared`,productAnalyticsCollectedDescription:`Event type, time, random installation identifier, environment, release channel, operating-system category, and product version. Signed-in installations are linked to the platform account.`,productAnalyticsExcludedTitle:`What is never shared`,productAnalyticsExcludedDescription:`Messages, prompts, replies, tool arguments, session or project identifiers, file paths, URLs, device fingerprints, and diagnostic logs are never shared.`,productAnalyticsAnonymousTitle:`How signed-out use is counted`,productAnalyticsAnonymousDescription:`NextClaw creates a random installation identifier only after you enable sharing. It represents one installation, not an exact person, and does not use hardware identifiers.`,dmScope:`DM Scope`,dmScopeHelp:`Control how direct-message sessions are isolated.`,defaultContextTokens:`Default Context Tokens`,defaultContextTokensHelp:`Input context budget for agents when no per-agent override is set.`,runtimeCompanionEnabled:`Companion`,runtimeCompanionEnabledHelp:`When enabled, NextClaw auto-starts the floating companion. When disabled, it stops immediately and stays off after restart.`,defaultEngine:`Default Runtime`,defaultEngineHelp:`Default agent runtime, for example native, codex, or claude.`,agentList:`Agent List`,agentListHelp:`Run multiple fixed-role agents in one gateway process.`,bindings:`Bindings`,bindingsHelp:`Route inbound message by channel + account + peer to target agent.`,agentIdRequiredError:`agents.list[{index}].id is required`,duplicateAgentId:`Duplicate agent id`,bindingAgentIdRequired:`bindings[{index}].agentId is required`,bindingAgentIdNotFound:`bindings[{index}].agentId not found in agents.list/main`,bindingChannelRequired:`bindings[{index}].match.channel is required`,bindingPeerIdRequired:`bindings[{index}].match.peer.id is required when peer.kind is set`,agentIdPlaceholder:`Agent ID (e.g. engineer)`,workspaceOverridePlaceholder:`Workspace override (optional)`,modelOverridePlaceholder:`Model override (optional)`,defaultEnginePlaceholder:`Default runtime (e.g. native or codex)`,engineOverridePlaceholder:`Runtime override (optional)`,contextTokensPlaceholder:`Context tokens`,maxToolsPlaceholder:`Max tools`,defaultAgent:`Default agent`,addAgent:`Add Agent`,targetAgentIdPlaceholder:`Target agent ID`,channelPlaceholder:`Channel (e.g. discord)`,accountIdOptionalPlaceholder:`Account ID (optional)`,peerKindOptional:`Peer kind (optional)`,peerIdPlaceholder:`Peer ID (requires peer kind)`,addBinding:`Add Binding`,saveRuntimeSettings:`Save Runtime Settings`,secretsPageTitle:`Secrets Management`,secretsPageDescription:`Manage secrets.providers, secrets.defaults, and secrets.refs in one place.`,secretsEnabledHelp:"When disabled, `{{secret:*}}` refs are not resolved.",defaultEnvProvider:`Default Env Provider`,defaultFileProvider:`Default File Provider`,defaultExecProvider:`Default Exec Provider`,secretProvidersTitle:`Secret Providers`,secretProvidersDescription:`Define reusable secret providers (env/file/exec).`,providerAlias:`Provider Alias`,removeProvider:`Remove Provider`,envPrefix:`Environment Prefix`,secretFilePath:`Secrets File Path`,secretExecCommand:`Exec Command`,secretExecArgs:`Exec Args (one per line)`,secretExecCwd:`Exec Working Directory (optional)`,secretExecTimeoutMs:`Timeout (ms)`,addSecretProvider:`Add Provider`,secretRefsTitle:`Secret Refs`,secretRefsDescription:`Map config paths to secret refs (source/provider/id).`,secretConfigPath:`Config Path`,secretId:`Secret ID`,secretProviderAlias:`Provider Alias`,addSecretRef:`Add Ref`,sessionsLoading:`Loading sessions...`,sessionsEmpty:`No sessions yet.`,sessionsLabelPlaceholder:`Session label (optional)`,sessionsRunStatusRunning:`Running`,sessionsRunStatusQueued:`Queued`,actionConfigure:`Configure`,actionAddProvider:`Add Provider`,actionEnable:`Enable`,configSaved:`Configuration saved`,configSavedApplying:`Configuration saved, applying changes`,configSavedApplied:`Configuration saved and applied`,configSaveFailed:`Failed to save configuration`,configReloaded:`Configuration reloaded`,configReloadFailed:`Failed to reload configuration`,channelConfigApplying:`Channel configuration is applying`,channelConfigApplied:`Channel configuration applied`,channelConfigApplyFailed:`Failed to apply channel configuration`,feishuVerifySuccess:`Verified. Please finish Feishu event subscription and app publishing before using.`,feishuVerifyFailed:`Verification failed`,enterTag:`Type and press Enter...`,headerName:`Header Name`,headerValue:`Header Value`},Dr={cronPageTitle:`Scheduled tasks`,cronWorkspaceEyebrow:`Automation workspace`,cronPageDescription:`View every automated Agent task, or arrange a new one through an AI conversation.`,cronComposerPlaceholder:`Describe what you want done regularly`,cronComposerLabel:`Describe the task you want to arrange`,cronComposerSubmit:`Continue in AI chat`,cronComposerHint:`Your request opens an AI conversation for confirmation. It is not enabled here directly.`,cronSearchPlaceholder:`Search name, task, or session`,cronStatusLabel:`Status`,cronStatusAll:`All`,cronStatusEnabled:`Running`,cronStatusDisabled:`Paused`,cronStatusAttention:`Needs attention`,cronPaginationLabel:`Task list pagination`,cronPreviousPage:`Previous page`,cronNextPage:`Next page`,cronTotalLabel:`Total`,cronLoading:`Loading scheduled tasks...`,cronEmpty:`No scheduled tasks yet.`,cronScheduleLabel:`Schedule`,cronSessionLabel:`Execution session`,cronDeliverTo:`Deliver to`,cronNextRun:`Next run`,cronLastRun:`Last run`,cronLastStatus:`Last status`,cronDeleteConfirm:`Delete scheduled task`,cronOneShot:`One-shot`,cronEnable:`Enable`,cronDisable:`Pause`,cronRunNow:`Run now`,cronEnableConfirm:`Enable scheduled task`,cronDisableConfirm:`Pause scheduled task`,cronRunConfirm:`Run scheduled task now`,cronRunForceConfirm:`Task is paused. Run it anyway`,cronMoreActions:`More actions`,cronExpandTask:`Expand task`,cronCollapseTask:`Collapse task`,cronCreatedAt:`Created`,cronEmptyGuide:`Tell your Agent about the task you want to schedule`,cronId:`Task ID`,cronUpdatedAt:`Updated`,cronSummaryLabel:`Current task overview`,cronSummaryTotal:`All tasks`,cronSummaryEnabled:`Running`,cronSummaryPaused:`Paused`,cronSummaryAttention:`Needs attention`,cronAttentionSummary:`tasks need attention`,cronAttentionSummaryHint:`Open task details to review the latest error`,cronAllHealthy:`Tasks are running normally`,cronAllHealthyHint:`There are no issues that need attention`,cronMyTasks:`My tasks`,cronTaskCountUnit:`tasks`,cronNeedInspiration:`Need fresh ideas?`,cronStartFromResult:`Start from a concrete outcome`,cronTemplateSelectionHint:`Choose a template, edit it, then confirm it in an AI conversation.`,cronEmptyHeroTitle:`What should NextClaw do for you regularly?`,cronEmptyHeroDescription:`Describe an outcome or start with a template. AI will confirm timing, scope, and how results should be delivered.`,cronNoMatchingTasks:`No matching tasks`,cronNoMatchingTasksHint:`Try a different search or status filter.`,cronNeedsAttention:`Needs attention`,cronRunningNormally:`Running`,cronPaused:`Paused`,cronRunFailed:`Latest run failed`,cronBoundSession:`Bound session`,cronDedicatedSession:`Dedicated session`,cronEditDetails:`View and edit task`,cronDetailDescription:`Review the task and its latest run. Return to its execution session to describe changes.`,cronTaskPrompt:`Task prompt`,cronTaskDetails:`Task settings`,cronAgentLabel:`Execution Agent`,cronLatestRun:`Latest run`,cronLatestRunHint:`The system currently stores only the latest execution snapshot.`,cronLastError:`Error`,cronNeverRun:`Never run`,cronLastStatusOk:`Succeeded`,cronLastStatusError:`Failed`,cronLastStatusSkipped:`Skipped`,cronEnabledState:`Task is running`,cronToggleHint:`Paused tasks do not run automatically on schedule.`,cronOpenSession:`Open session`,cronCloseDetails:`Close task details`,cronSessionAvailableAfterRun:`A dedicated session is created after the task runs for the first time.`,cronTemplateAiNewsTitle:`Daily AI news brief`,cronTemplateAiNewsDescription:`Summarize AI product and research changes that affect real work.`,cronTemplateAiNewsPrompt:`Every morning at 8, summarize the most important AI product and research developments from the past 24 hours and include original sources.`,cronTemplateWeeklyReviewTitle:`Weekly project review`,cronTemplateWeeklyReviewDescription:`Summarize progress, decisions, loose ends, and next priorities on Friday.`,cronTemplateWeeklyReviewPrompt:`Every Friday at 6 PM, summarize this project's progress, key decisions, open issues, and priorities for next week.`,cronTemplateMeetingPrepTitle:`Meeting preparation`,cronTemplateMeetingPrepDescription:`Collect the agenda, material, open questions, and participant context.`,cronTemplateMeetingPrepPrompt:`Thirty minutes before each meeting, organize the agenda, related material, open questions, and anything I need to prepare.`,cronTemplateLearningTitle:`Daily learning practice`,cronTemplateLearningDescription:`Create a short practice set aligned with the current learning goal.`,cronTemplateLearningPrompt:`Every evening at 8, create a 15-minute practice set based on what I have been learning recently.`,cronTemplateCompetitorTitle:`Competitor change tracker`,cronTemplateCompetitorDescription:`Check official updates and report only changes worth acting on.`,cronTemplateCompetitorPrompt:`Every Monday, check official announcements and release notes from major competitors and report only material changes that affect product decisions.`,cronTemplateFamilyTitle:`Family check-in reminder`,cronTemplateFamilyDescription:`Remind you to contact important people at a suitable time.`,cronTemplateFamilyPrompt:`Every Sunday at 10 AM, remind me to contact my parents and recap anything from our last conversation that I should follow up on.`},Or=`Updates`,kr=`Runtime Updates`,Ar=`NextClaw checks every two hours; you choose when to start each update.`,jr=`Updates Are Currently Unavailable`,Mr=`This runtime environment does not currently expose an update host.`,Nr=`The update entry appears automatically once the host supports updates.`,Pr=`Host Version`,Fr=`Version {version} has finished downloading and is ready to finish updating.`,Ir=`Check manually, then complete the update in one action whenever you are ready.`,Lr=`Update Now`,Rr=`Failed to load update state`,zr=`Failed to check for updates`,Br=`Failed to download update`,Vr=`Failed to apply update`,Hr=`Failed to update`,Ur=`Failed to change the release channel`,Wr=`You already have the latest version.`,Gr=`The update is ready and can be applied now.`,Kr=`Version {version} is available.`,qr=`a new version`,Jr=`Switched to the {channel} release channel.`,Yr=`Switched to the {channel} channel and found version {version}.`,Xr=`Desktop Updates`,Zr=`Check, download, and decide when to apply new desktop versions without leaving the app.`,Qr=`Currently Desktop Only`,$r=`This page is currently only available inside NextClaw Desktop.`,ei=`Update experiences for the web and other product surfaces are still being built. Stay tuned.`,ti=`Current Status`,ni=`Review the running version, the available version, and the latest check result.`,ri=`Update Status`,ii=`Idle`,ai=`Checking`,oi=`Update Available`,si=`Downloading`,ci=`Downloaded`,li=`Updating`,ui=`Restart Required`,di=`Up to Date`,fi=`Blocked`,pi=`Failed`,mi=`Full logs: {command}`,hi=`Download`,gi=`Downloading`,M=`{percent}%`,_i=`Update`,vi=`Applying`,yi=`Current version {version}`,bi=`Click to view {version} release notes`,xi=`Current version {currentVersion}, view {releaseVersion} release notes`,Si=`View {version} release notes`,Ci=`Launcher Version`,wi=`Current Kernel Version`,Ti=`Available Version`,Ei=`Last Checked`,Di=`Current Release Channel`,Oi=`Update Ready`,ki=`Version {version} is ready. Restart the app whenever you want to apply it.`,Ai=`Downloading {percent}%`,ji=`Downloading`,Mi=`Update Blocked`,Ni=`Resolve the current installation requirement before continuing the update.`,Pi=`Update Channel`,Fi=`NextClaw checks every two hours; you choose when an update starts.`,Ii=`Release Channel`,Li=`Stable is for everyday use, while Beta lets you try newer builds earlier with more risk.`,Ri=`Switching back to Stable does not force an immediate downgrade. Stable updates resume once that channel catches up with or exceeds your current version.`,zi=`Stable`,Bi=`Beta`,Vi=`Following the Beta Channel`,Hi=`You will receive new versions earlier, but you may also encounter more change and regression risk.`,Ui=`Update Actions`,Wi=`Manually check, manually download, and restart the app when you are ready to finish the update.`,Gi=`Check for Updates`,Ki=`Download Update`,qi=`Restart to Update`,Ji=`Release Notes`,Yi=`What's New`,Xi=`Review the main changes in this version before updating.`,Zi=`Loading release notes...`,Qi=`Structured release notes could not be loaded in the app. Open the full notes instead.`,$i=`Features`,ea=`Enhancements`,ta=`Fixes`,N=`Defaults and Compatibility`,P=`Failed to load update state`,na=`Failed to check for updates`,F=`Failed to download update`,ra=`Failed to apply update`,ia=`Failed to change the release channel`,aa=`You already have the latest version.`,oa=`The update is ready. Restart the app whenever you want to apply it.`,sa=`Version {version} is available.`,ca=`a new version`,la=`Switched to the {channel} release channel.`,ua=`Switched to the {channel} channel and found version {version}.`,da={updates:Or,runtimeUpdatesPageTitle:kr,runtimeUpdatesPageDescription:Ar,runtimeUpdatesUnavailableTitle:jr,runtimeUpdatesUnavailableDescription:Mr,runtimeUpdatesUnavailableHint:Nr,runtimeUpdatesHostVersion:Pr,runtimeUpdatesDownloadedBannerDescription:Fr,runtimeUpdatesActionsDescription:Ir,runtimeUpdatesApplyNow:Lr,runtimeUpdatesLoadFailed:Rr,runtimeUpdatesCheckFailed:zr,runtimeUpdatesDownloadFailed:Br,runtimeUpdatesApplyFailed:Vr,runtimeUpdatesUpdateFailed:Hr,runtimeUpdatesChannelChangeFailed:Ur,runtimeUpdatesAlreadyLatest:Wr,runtimeUpdatesReadyToApply:Gr,runtimeUpdatesAvailable:Kr,runtimeUpdatesUnknownVersion:qr,runtimeUpdatesChannelChanged:Jr,runtimeUpdatesChannelChangedWithUpdate:Yr,desktopUpdatesPageTitle:Xr,desktopUpdatesPageDescription:Zr,desktopUpdatesDesktopOnlyTitle:Qr,desktopUpdatesDesktopOnlyDescription:$r,desktopUpdatesDesktopOnlyFutureHint:ei,desktopUpdatesOverviewTitle:ti,desktopUpdatesOverviewDescription:ni,desktopUpdatesStatusLabel:ri,desktopUpdatesStatusIdle:ii,desktopUpdatesStatusChecking:ai,desktopUpdatesStatusAvailable:oi,desktopUpdatesStatusDownloading:si,desktopUpdatesStatusDownloaded:ci,desktopUpdatesStatusApplying:li,desktopUpdatesStatusRestartRequired:ui,desktopUpdatesStatusUpToDate:di,desktopUpdatesStatusBlocked:fi,desktopUpdatesStatusFailed:pi,"desktopUpdatesFailureStage.check":`Update Check Failed`,"desktopUpdatesFailureStage.download":`Update Download Failed`,"desktopUpdatesFailureStage.apply":`Update Apply Failed`,desktopUpdatesDiagnosticCommand:mi,desktopUpdatesInlineDownload:hi,desktopUpdatesInlineDownloading:gi,desktopUpdatesInlineDownloadingPercent:M,desktopUpdatesInlineReady:_i,desktopUpdatesInlineApplying:vi,desktopUpdatesVersionTooltipCurrent:yi,desktopUpdatesVersionTooltipReleaseNotes:bi,desktopUpdatesVersionReleaseNotesLabel:xi,desktopUpdatesUpdateReleaseNotesLabel:Si,desktopUpdatesLauncherVersion:Ci,desktopUpdatesCurrentBundleVersion:wi,desktopUpdatesAvailableVersion:Ti,desktopUpdatesLastCheckedAt:Ei,desktopUpdatesCurrentChannel:Di,desktopUpdatesDownloadedBannerTitle:Oi,desktopUpdatesDownloadedBannerDescription:ki,desktopUpdatesDownloadProgressPercent:Ai,desktopUpdatesDownloadProgressUnknown:ji,desktopUpdatesBlockedTitle:Mi,desktopUpdatesBlockedDescription:Ni,"desktopUpdatesBlockedRootCause.signature-verification-unavailable":`Root cause: missing update public key; install a configured build or ask the maintainer to set the key.`,"desktopUpdatesBlockedRootCause.host-too-old":`Root cause: the host is too old for this runtime bundle; upgrade the NextClaw launcher first.`,"desktopUpdatesBlockedRootCause.unsupported-installation":`Root cause: this installation or update source does not support auto-update; use a configured build.`,desktopUpdatesChannelSettingsTitle:Pi,desktopUpdatesChannelSettingsDescription:Fi,desktopUpdatesReleaseChannel:Ii,desktopUpdatesReleaseChannelHelp:Li,desktopUpdatesReleaseChannelDowngradeHint:Ri,desktopUpdatesChannelStable:zi,desktopUpdatesChannelBeta:Bi,desktopUpdatesBetaBadgeTitle:Vi,desktopUpdatesBetaBadgeDescription:Hi,desktopUpdatesActionsTitle:Ui,desktopUpdatesActionsDescription:Wi,desktopUpdatesCheckNow:Gi,desktopUpdatesDownloadNow:Ki,desktopUpdatesApplyNow:qi,desktopUpdatesReleaseNotes:Ji,desktopUpdatesReleaseNotesPreviewTitle:Yi,desktopUpdatesReleaseNotesPreviewDescription:Xi,desktopUpdatesReleaseNotesPreviewLoading:Zi,desktopUpdatesReleaseNotesPreviewUnavailable:Qi,desktopUpdatesReleaseNotesFeature:$i,desktopUpdatesReleaseNotesEnhancement:ea,desktopUpdatesReleaseNotesFix:ta,desktopUpdatesReleaseNotesCompatibility:N,desktopUpdatesLoadFailed:P,desktopUpdatesCheckFailed:na,desktopUpdatesDownloadFailed:F,desktopUpdatesApplyFailed:ra,desktopUpdatesChannelChangeFailed:ia,desktopUpdatesAlreadyLatest:aa,desktopUpdatesReadyToApply:oa,desktopUpdatesAvailable:sa,desktopUpdatesUnknownVersion:ca,desktopUpdatesChannelChanged:la,desktopUpdatesChannelChangedWithUpdate:ua},fa={docBrowserTitle:`Embedded Browser`,docBrowserSearchPlaceholder:`Search, or enter a doc URL to open`,docBrowserAddressLabel:`Address`,docBrowserAddressPlaceholder:`Enter a URL, e.g. http://localhost:5173`,docBrowserUrlPlaceholder:`Enter a doc path, e.g. /guide/channels`,docBrowserOpenExternal:`Open in Docs`,docBrowserOpenInBrowser:`Open in Browser`,docBrowserRefresh:`Refresh`,docBrowserFloatMode:`Float Window`,docBrowserDockMode:`Dock to Sidebar`,docBrowserClose:`Close`,docBrowserHelp:`Help Docs`,docBrowserBack:`Back`,docBrowserForward:`Forward`,docBrowserNewTab:`New Tab`,docBrowserHomeTitle:`Start Page`,docBrowserCloseTab:`Close Tab`,docBrowserTabUntitled:`Untitled`,docBrowserTabMoreActions:`More tab actions`,docBrowserAddToChat:`Add to Chat`,sideDockPinCurrent:`Pin to SideDock`,sideDockUnpinCurrent:`Remove from SideDock`,sideDockBuiltInDocked:`Built-in shortcut`,sideDockUnpinItem:`Remove shortcut`,sideDockGitHubProject:`GitHub Project`,sideDockHide:`Hide SideDock`,sideDockHideConfirmTitle:`Hide SideDock?`,sideDockHideConfirmDescription:`You can turn it back on from Settings > Appearance.`,sideDockHideConfirmAction:`Hide`,sideDockVisibilityTitle:`Show SideDock`,sideDockVisibilityDescription:`Keep the right shortcut dock visible beside the workspace.`,appsTitle:`Apps`,appPackagesLibraryTitle:`Your apps`,appPackagesLibraryDescription:`Open and manage the apps in NextClaw. Installs continue in the background, and personal data stays local.`,appPackagesLoading:`Loading apps…`,appPackagesDataUsageUnavailable:`Size unavailable`,appPackagesNoDataYet:`No data yet`,appPackagesLoadFailed:`Failed to load apps`,appPackagesRefresh:`Refresh apps`,appPackagesBrowse:`Add apps`,appPackagesMarketplaceTitle:`Add apps`,appPackagesMarketplaceDescription:`Choose apps that fit the way you use NextClaw. You can keep browsing or leave while an install continues.`,appPackagesMarketplaceSearch:`Search apps, features, or tags`,appPackagesMarketplaceLoading:`Loading the app marketplace…`,appPackagesMarketplaceLoadMore:`Load more`,appPackagesMarketplaceLoadingMore:`Loading…`,appPackagesMarketplaceFailed:`The app marketplace is temporarily unavailable. You can still install from a trusted source.`,appPackagesMarketplaceEmpty:`No matching apps found`,appPackagesMarketplaceEmptyHint:`Try a shorter search or switch back to All.`,appPackagesMarketplaceFeatured:`Featured`,appPackagesMarketplaceDetails:`Details`,appPackagesMarketplaceInstalled:`Installed`,appPackagesMarketplaceTrustHint:`Apps come from the official NextClaw library. Review access before installing, then disable or uninstall at any time.`,appPackagesInstall:`Install app`,appPackagesInstallTitle:`Install a Mini APP`,appPackagesInstallDescription:`Enter a trusted .napp file path, local app directory, or app ID.`,appPackagesInstallSource:`Install source`,appPackagesInstallPlaceholder:`File path, directory, or nextclaw.example-app`,appPackagesInstallTrustHint:`Only install sources you trust. Apps with a Service can run local code, and start only after you enable them.`,appPackagesInstalling:`Installing…`,appPackagesEmptyTitle:`No apps available yet`,appPackagesEmptyDescription:`Install a Mini APP, or upgrade to a NextClaw version that includes built-in apps.`,appPackagesEnabled:`Enabled`,appPackagesAvailable:`Available`,appPackagesBuiltIn:`Built into NextClaw`,appPackagesLocalService:`Local data service`,appPackagesIsolationLabel:`Runtime isolation`,appPackagesPlatformsLabel:`Supported platforms`,appPackagesAllPlatforms:`All platforms`,appPackagesPlatformOnly:`{platforms} only`,appPackagesUnavailableOnDevice:`Unavailable on this device`,appPackagesUnavailable:`Unavailable`,appPackagesTemporarilyUnavailable:`Temporarily unavailable`,appPackagesCompatibilityUnknown:`Compatibility could not be confirmed`,appPackagesCompatibilityUnknownReason:`NextClaw could not confirm whether this app supports this device. Refresh and try again.`,appPackagesUnsupportedOsReason:`This app currently supports {platforms} only and cannot be installed on this device.`,appPackagesUnsupportedTargetReason:`This app supports {platforms}, but no build is available for this device architecture.`,appPackagesIsolationPanel:`Isolated interface`,appPackagesIsolationMediated:`Host-mediated runtime`,appPackagesIsolationFullUser:`Runs with your user permissions`,appPackagesDataUsage:`App data`,appPackagesEnable:`Enable`,appPackagesDisable:`Disable`,appPackagesWorking:`Working…`,appPackagesEnableToOpen:`Enable this app to open it`,appPackagesMoreActions:`More app actions`,appPackagesCheckUpdate:`Check for updates`,appPackagesRollback:`Switch to`,appPackagesUninstall:`Uninstall`,appPackagesUninstallTitle:`Uninstall this app?`,appPackagesUninstallDescription:`The app code will be removed. Personal data is kept by default so a future reinstall can continue using it.`,appPackagesKeepData:`Keep personal data`,appPackagesKeepDataDescription:`Remove only the app code so a future reinstall can continue with existing content.`,appPackagesDeleteData:`Delete personal data too`,appPackagesDeleteDataDescription:`Permanently remove data saved by this app. This cannot be undone.`,appPackagesActionFailed:`App action failed`,appPackagesFilterLabel:`App categories`,appPackagesFilterAll:`All`,appPackagesFilterPersonal:`Personal`,appPackagesFilterLocal:`Local-first`,appPackagesBackToMarketplace:`Back to apps`,appPackagesAboutApp:`About this app`,appPackagesPanelsAdded:`App views`,appPackagesServicesAdded:`Local services`,appPackagesNone:`None`,appPackagesAccessTitle:`Access`,appPackagesOpenPublicDetails:`View the public app page`,appPackagesDocumentAccess:`Needs access to {count} file folder(s) you approve`,appPackagesNetworkAccess:`Needs to connect to {count} network domain(s)`,appPackagesHostBridgeAccess:`Uses local capabilities provided by NextClaw`,appPackagesNativeProcessAccess:`Starts a local process with the file and network access available to your user account`,appPackagesLocalStorageAccess:`Stores its own app data on this device`,appPackagesNoExtraAccess:`No additional file or network access declared`,appPackagesPreparing:`Preparing`,appPackagesResolving:`Checking app`,appPackagesDownloading:`Downloading`,appPackagesVerifying:`Verifying`,appPackagesFinalizing:`Finishing up`,appPackagesCompleted:`Completed`,appPackagesSwitchingVersion:`Switching version`,appPackagesUninstalling:`Uninstalling`,appPackagesInstallCompleted:`App installed`,appPackagesUpdateCompleted:`App updated`,appPackagesAlreadyCurrent:`Already up to date`,appPackagesAlreadyOnVersion:`Already on this version`,appPackagesUpdate:`Update`,appPackagesRollbackCompleted:`App version switched`,appPackagesUninstallCompleted:`App uninstalled`,appPackagesNextClawRequirement:`Requires NextClaw`,appDataRetainedTitle:`Saved app data`,appDataRetainedDescription:`Data kept after an app was removed stays here until you reinstall the app or delete the data.`,appDataLoadFailed:`Failed to load saved app data`,appDataDiagnosticsTitle:`Some app data needs attention`,appDataDeleteAction:`Delete data`,appDataDeleteTitle:`Permanently delete this app data?`,appDataDeleteDescription:`This removes the app's private data from this device. Files you exported or saved outside the app remain untouched.`,appDataDeletePermanently:`Permanently delete data`,appDataDeleting:`Deleting data…`,appDataDeleteCompleted:`App data deleted`,appDataDeleteFailed:`Failed to delete app data`,appDataStorageTotal:`Total app data`,appDataStoragePath:`Managed instance path`,appDataClassData:`Personal data`,appDataClassConfig:`Settings`,appDataClassState:`State`,appDataClassCache:`Cache`,appDataClassTemporary:`Temporary`,appDataClassLogs:`Logs`,panelAppsTitle:`Panel Apps`,panelAppsLoading:`Loading panel apps...`,panelAppsLoadFailed:`Failed to load panel apps`,panelAppsEmpty:`No panel apps yet`,panelAppsEmptyTitle:`Create your first panel app`,panelAppsEmptyDescription:`Panel apps are lightweight tools that open beside chat, such as dashboards, forms, calculators, and temporary workbenches.`,panelAppsEmptyAskTitle:`Ask NextClaw to generate one`,panelAppsEmptyAskDescription:`Start with a ready-made prompt that creates a sample local tool for this panel.`,panelAppsEmptyAskAction:`Create sample panel app`,panelAppsExamplePrompt:`Create a sample NextClaw Panel App for me: a personal task board. Put it in the NextClaw panels folder as a single *.panel.html file. Include adding tasks, toggling completion, filtering, and local state persistence. After creating it, tell me to refresh Panel Apps and open it. Do not ask follow-up questions first.`,panelAppsEmptyFileTitle:`Add it to the panels folder`,panelAppsEmptyFileDescription:`You can also add a *.panel.html file, or a *.panel folder with panel-app.json.`,panelAppsPanelsPath:`Panels folder`,panelAppsEmptyFiltered:`No panel apps in this view`,panelAppsRefresh:`Refresh panel apps`,panelAppsRefreshCurrent:`Refresh current panel app`,panelAppsSortLabel:`Sort`,panelAppsSortSmart:`Smart`,panelAppsFavorites:`Favorites`,panelAppsSortRecentOpen:`Recently Opened`,panelAppsSortUpdated:`Recently Updated`,panelAppsSortName:`Name`,panelAppsFavorite:`Favorite panel app`,panelAppsUnfavorite:`Unfavorite panel app`,panelAppsMoreActions:`More panel app actions`,panelAppsMainSidebarGroup:`Apps`,panelAppsMainSidebarGroupCollapse:`Collapse apps`,panelAppsMainSidebarGroupExpand:`Expand apps`,panelAppsAddToMainSidebar:`Add to main sidebar`,panelAppsRemoveFromMainSidebar:`Remove from main sidebar`,panelAppsPreferenceUpdateFailed:`Could not update panel app preferences`,panelAppsOpenInRightPanel:`Open in right panel`,panelAppsOpenApps:`Open app management`,panelAppsMainUnavailable:`This panel app is unavailable. It may be disabled, uninstalled, or removed from the workspace.`,panelAppsCheckingPermission:`Checking this panel app's permissions…`,panelAppsPermissionDenied:`The required NextClaw Client permission was not granted to this panel app.`,panelAppsPermissionFailed:`NextClaw could not confirm this panel app's permissions.`,panelAppsTryAgain:`Try again`,panelAppsDelete:`Delete panel app`,panelAppsDeleteConfirmTitle:`Delete panel app?`,panelAppsDeleteConfirmDescription:`This will delete the panel app file and cannot be undone.`,panelAppsClientGrantTitle:`NextClaw Client SDK`,panelAppsClientGrantDescription:`Allow this panel app to use the full NextClaw Client SDK.`,panelAppsLastOpened:`Last opened`,panelAppsUpdated:`Updated`,serviceAppsTitle:`Service Apps`,serviceAppsLoading:`Loading service apps...`,serviceAppsLoadFailed:`Failed to load service apps`,serviceAppsEmpty:`No service apps yet`,serviceAppsEmptyTitle:`No service apps`,serviceAppsEmptyDescription:`Service apps expose local runtimes and actions that panel apps can call.`,serviceAppsRefresh:`Refresh service apps`,serviceAppsConnect:`Connect`,serviceAppsDiscoverActions:`Connect and discover actions`,serviceAppsDiscoverActionsHint:`Connect to the service app runtime and discover its available actions.`,serviceAppsDisconnectRuntime:`Disconnect runtime`,serviceAppsDisconnectRuntimeHint:`Close the current runtime connection and return the service app to not connected.`,serviceAppsMoreActions:`More actions`,serviceAppsDelete:`Delete service app`,serviceAppsManagePackage:`Manage in Apps`,serviceAppsDeleteConfirmTitle:`Delete service app?`,serviceAppsDeleteConfirmDescription:`The service source will be deleted. Its private data is kept by default.`,serviceAppsKeepDataDescription:`Delete the service source but keep its private data for a future copy of the same service.`,serviceAppsDeleteDataDescription:`Permanently delete the service source and its managed private data.`,serviceAppsDataUnavailable:`Storage details are unavailable. Keep data selected or refresh before deleting.`,serviceAppsStatus_idle:`Not connected`,serviceAppsStatus_starting:`Connecting`,serviceAppsStatus_running:`Connected`,serviceAppsStatus_failed:`Connection failed`,serviceAppsStatus_stopped:`Stopped`,serviceAppsStatusHint_idle:`The runtime is not connected yet; connecting and discovering actions will start it.`,serviceAppsStatusHint_starting:`Connecting to the service app runtime.`,serviceAppsStatusHint_running:`The service app runtime is connected and ready for action discovery or invocation.`,serviceAppsStatusHint_failed:`The runtime connection failed; check the error or disconnect and try again.`,serviceAppsStatusHint_stopped:`The service app is stopped.`,serviceAppsActionsSection:`Actions`,serviceAppsActionsEmpty:`No actions discovered yet`,serviceAppsDetails:`Runtime details`,serviceAppsGrantedTo:`Granted to`,serviceAppsRevokeGrant:`Revoke grant`,serviceAppsRuntimeState_matched:`Matched`,serviceAppsRuntimeState_missing:`Missing`,serviceAppsRuntimeState_undeclared:`Undeclared`,serviceAppsCommand:`Command`,serviceAppsCwd:`Working directory`,serviceAppsManifest:`Manifest`,serviceAppsLastStarted:`Last started`,serviceAppsLastReady:`Last ready`,serviceAppsLastFailed:`Last failed`,serviceActionAuthorizationTitle:`Authorize service actions`,serviceActionAuthorizationDescription:`This panel app is requesting local service actions. If allowed, these actions will stay granted for this panel app.`,serviceActionAuthorizationSource:`Source`,serviceActionAuthorizationAction:`Action`,serviceActionAuthorizationActions:`Actions`,serviceActionAuthorizationPurpose:`Purpose`,serviceActionAuthorizationRisk:`Risk`,serviceActionAuthorizationInput:`Input`,serviceActionAuthorizationReject:`Reject`,serviceActionAuthorizationAllow:`Allow`},pa={marketplaceSkillsPageTitle:`Skill Marketplace`,marketplaceSkillsPageDescription:`Install and manage skills.`,marketplaceMcpPageTitle:`MCP Marketplace`,marketplaceMcpPageDescription:`Discover, install, diagnose, and manage MCP servers.`,marketplaceTabMarketplaceSkills:`Skill Market`,marketplaceMcpTabCatalog:`MCP Market`,marketplaceMcpTabInstalled:`Installed MCP`,marketplaceTabInstalledSkills:`Installed Skills`,marketplaceExternalSkillSourceTitle:`More Skills on SkillHub`,marketplaceSearchPlaceholderSkills:`Search skills...`,marketplaceMcpSearchPlaceholder:`Search MCP servers...`,marketplaceFilterSkills:`Skills`,marketplaceFilterMcp:`MCP`,marketplaceSortRelevance:`Relevance`,marketplaceSortUpdated:`Recently Updated`,marketplaceUnknownItem:`Unknown Item`,marketplaceInstalledLocalSummary:`Installed locally. Details are currently unavailable from marketplace.`,marketplaceTypeSkill:`Skill`,marketplaceTypeMcp:`MCP`,marketplaceInstall:`Install`,marketplaceInstalling:`Installing...`,marketplaceInstalledStatus:`Installed`,marketplaceDisabledStatus:`Disabled`,marketplaceEnable:`Enable`,marketplaceDisable:`Disable`,marketplaceEnabling:`Enabling...`,marketplaceDisabling:`Disabling...`,marketplaceUninstall:`Uninstall`,marketplaceRemoving:`Removing...`,marketplaceUpdate:`Update`,marketplaceUpdating:`Updating...`,marketplaceSectionSkills:`Skill Catalog`,marketplaceMcpSectionCatalog:`MCP Catalog`,marketplaceMcpSectionInstalled:`Installed MCP`,marketplaceSectionInstalledSkills:`Installed Skills`,marketplaceErrorLoadingSkillsData:`Failed to load skill marketplace data`,marketplaceErrorLoadingInstalledSkills:`Failed to load installed skills`,marketplaceAllSkills:`All Skills`,marketplaceRefreshingResults:`Updating...`,marketplaceNoSkills:`No skills found.`,marketplaceNoMcp:`No MCP servers found.`,marketplaceNoInstalledSkills:`No installed skills found.`,marketplaceNoInstalledMcp:`No installed MCP servers found.`,marketplaceUninstallTitle:`Uninstall`,marketplaceUninstallDescription:`This will remove the extension. You can install it again from the marketplace.`,marketplaceUpdateConflictTitle:`Overwrite local changes and update?`,marketplaceUpdateConflictDescription:`This skill was changed after installation. Continuing replaces local changes in its skill directory with the latest marketplace version. Canceling leaves the current files unchanged.`,marketplaceUpdateConflictConfirm:`Overwrite and Update`,marketplaceInstallSuccessSkill:`Skill installed successfully`,marketplaceInstallSuccessMcp:`MCP installed successfully`,marketplaceEnableSuccess:`Enabled successfully`,marketplaceDisableSuccess:`Disabled successfully`,marketplaceUninstallSuccess:`Uninstalled successfully`,marketplaceUpdateSuccess:`Updated successfully`,marketplaceMcpManageSuccess:`MCP operation completed`,marketplaceInstallFailed:`Install failed`,marketplaceOperationFailed:`Operation failed`,marketplaceSkillsCountSuffix:`skills`,marketplaceInstalledSkillsCountSuffix:`installed skills`,marketplaceDetailPanelTitle:`Detail Preview`,marketplaceDetailPanelEmpty:`Click an item on the left to preview details here.`,marketplaceDetailSummary:`Summary`,marketplaceDetailDescription:`Description`,marketplaceDetailMetadata:`Metadata`,marketplaceDetailContent:`Content`,marketplaceDetailSource:`Source`,marketplaceDetailUnavailableTitle:`Detail unavailable`,marketplaceDetailUnavailableDescription:`This right-side detail tab is missing content data for the current session. Open it again from the marketplace list.`,marketplaceOpenInDocBrowserTab:`Open in New Tab`,marketplaceMcpInstallDialogTitle:`Install MCP Server`,marketplaceMcpServerName:`Server Name`,marketplaceMcpAllAgents:`Available to All Agents`,marketplaceMcpAllAgentsDescription:`Use the server as a shared tool source by default instead of scoping it per runtime.`,marketplaceMcpDoctor:`Doctor`,marketplaceMcpDoctorTitle:`MCP Doctor`,marketplaceMcpDoctorAccessible:`Accessible`,marketplaceMcpDoctorTransport:`Transport`,marketplaceMcpDoctorTools:`Tools`,marketplaceMcpRemove:`Remove`,marketplaceMcpRemoveTitle:`Remove MCP Server`,marketplaceMcpRemoveDescription:`This removes the MCP server config and hot-unplugs it from the tool source immediately.`},ma={inboxTitle:`Inbox`,inboxDescription:`Reports, recommendations, and articles delivered by AI`,inboxUnread:`Unread`,inboxAll:`All`,inboxArchived:`Archived`,inboxEmptyTitle:`Nothing here yet`,inboxEmptyDescription:`Reports, recommendations, and articles from AI will be saved here.`,inboxSelectTitle:`Select something to read`,inboxSelectDescription:`Open an item from the list and its reading state will stay in sync.`,inboxDeliveredBy:`Delivered by AI`,inboxReaderPosition:`{current} of {total}`,inboxPrevious:`Previous`,inboxNext:`Next`,inboxOpenInbox:`Open in Inbox`,inboxReadLater:`Read later`,inboxMarkRead:`Mark as read`,inboxMarkUnread:`Mark as unread`,inboxArchive:`Archive`,inboxRestore:`Restore`,inboxDelete:`Delete`,inboxContinueChat:`Continue in chat`,inboxDeleteTitle:`Delete this item?`,inboxDeleteDescription:`It cannot be recovered from Inbox. Any chat already created will remain.`,inboxDeleteConfirm:`Delete`,inboxLoadError:`Inbox could not be loaded. Try again shortly.`,inboxActionError:`The action failed. Please try again.`,inboxUnreadCount:`{count} unread`,inboxNoSummary:`No summary`},ha={browse:`Browse`,pathPickerBack:`Back`,pathPickerForward:`Forward`,pathPickerAddressLabel:`Address`,pathPickerEditAddress:`Edit address`,pathPickerShowFullAddress:`Show full address`,openPath:`Open`,homeDirectory:`Home`,currentDirectory:`Current Directory`,parentDirectory:`Up`,pathPickerQuickAccess:`Quick access`,pathPickerDefaultWorkspace:`NextClaw Workspace`,pathPickerFileSystem:`File system`,pathPickerDesktop:`Desktop`,pathPickerDocuments:`Documents`,pathPickerDownloads:`Downloads`,pathPickerICloudDrive:`iCloud Drive`,pathPickerApplications:`Applications`,pathPickerVolumes:`Volumes`,pathPickerLocations:`Locations`,pathPickerSearchPlaceholder:`Search current directory`,pathPickerSearchEmpty:`No matching entries in the current directory.`,pathPickerNewFolder:`New Folder`,pathPickerNewFolderName:`Folder name`,pathPickerNewFolderPlaceholder:`Enter a folder name`,pathPickerCreateFolder:`Create`,pathPickerCreateFolderFailed:`Failed to create folder`,pathPickerDirectoryList:`Directory list`,pathPickerNameColumn:`Name`,pathPickerTypeColumn:`Type`,pathPickerDirectoryType:`Folder`,pathPickerDoubleClickHint:`Click to select · Double-click to open`,selectCurrentDirectory:`Select Current Directory`,emptyDirectory:`No entries in the current directory.`,pathBrowseFailed:`Failed to load directory`},ga={pwaInstallTitle:`Install as App`,pwaInstallDescription:`Install this NextClaw UI as a standalone entry point you can launch from your desktop, launcher, or dock.`,pwaInstallAction:`Install NextClaw`,pwaInstallDismiss:`Don't Ask Again`,pwaInstallAccepted:`Install prompt opened.`,pwaInstalledToast:`NextClaw is now installed as an app.`,pwaInstallStatusAvailable:`Installable`,pwaInstallStatusInstalled:`Installed`,pwaInstallStatusDesktopHost:`Desktop Host Active`,pwaInstallStatusUnavailable:`Unavailable`,pwaInstallCardPrompt:`Your browser is ready to install NextClaw. Once installed, it opens in a standalone window while keeping the same Web UI and runtime behavior.`,pwaInstallCardManual:`This environment can install NextClaw as an app, but the browser did not expose an immediate install prompt. Use your browser menu to install or add it to the home screen.`,pwaInstallCardInstalled:`NextClaw is already running as an installed app. Browser access and the installed experience share the same UI and product behavior.`,pwaInstallCardSuppressed:`This UI is already running inside the Electron desktop host. The native desktop shell takes priority, so the PWA install entry stays hidden here.`,pwaInstallCardInsecureContext:`This address is not a secure context for browser-managed app installation. Use localhost, 127.0.0.1, or an HTTPS origin instead.`,pwaInstallCardDevServer:`This is the Vite development server. PWA install and update are disabled in dev to avoid service worker caching conflicts with HMR; use preview or a production build to verify the PWA.`,pwaInstallCardUnsupported:`This browser environment does not support the required installation capabilities for this PWA shell.`,pwaInstallPromptHint:`The installed app still connects to the same local or remote NextClaw service instead of creating an offline copy.`,pwaInstallManualHint:`If the browser does not show an install prompt, open the browser menu and look for actions such as Install App, Install Site, or Add to Home Screen.`,pwaInstallBannerTitle:`Pin NextClaw as an App`,pwaInstallBannerDescription:`This site is ready to install. Once installed, you can launch NextClaw like a regular app.`,pwaUpdateBannerTitle:`NextClaw Update Ready`,pwaUpdateBannerDescription:`A newer PWA shell version is ready. Refresh to switch to the latest UI assets.`,pwaUpdateAction:`Refresh Now`},_a={remotePageTitle:`Remote Access`,remotePageDescription:`Make this device appear in your NextClaw Platform device list and open it from the web.`,remoteOpenWeb:`Open NextClaw Web`,remoteOpenDeviceList:`Open NextClaw Web`,remoteOpenWebHint:`Once enabled, this device appears in NextClaw Web, where you can open it and keep working.`,remoteOpenWebUnavailable:`No platform URL is available yet. Sign in first.`,remoteLoading:`Loading remote access status...`,remoteStatusNeedsSignIn:`Sign in to NextClaw first`,remoteStatusNeedsSignInDescription:`Remote access depends on your NextClaw account. Sign in first to link this device to the web app.`,remoteStatusNeedsEnable:`Remote access is not enabled yet`,remoteStatusNeedsEnableDescription:`You are already signed in. Enable remote access and this device will appear in your web device list.`,remoteStatusConnectingTitle:`Connecting this device to NextClaw Web`,remoteStatusConnectingDescription:`The managed service is establishing the connection. Refresh in a few seconds to see the latest state.`,remoteStatusReadyTitle:`This device is ready in the web app`,remoteStatusReadyDescription:`You can now open NextClaw Web, find this device in the list, and continue your agent workflow there.`,remoteStatusNeedsServiceTitle:`The managed service needs to run`,remoteStatusNeedsServiceDescription:`Remote access is enabled, but the managed service is not running yet. Start it to connect to the web app.`,remoteStatusReauthorizationTitle:`Your sign-in expired. Sign in to NextClaw again.`,remoteStatusReauthorizationDescription:`Remote access is paused to protect your account. Sign in again and it will recover automatically without reconfiguring this device.`,remoteStatusIssueTitle:`Remote access is temporarily offline`,remoteStatusIssueDescription:`Your device settings are still there, but this device is not stably connected to the platform right now. Reconnect first, then sign in again or try later if it keeps happening.`,remoteStatusIssueDetailTitle:`Next Step`,remoteStatusRecoveryTitle:`Recommended Next Step`,remoteStatusIssueDetailGeneric:`Remote access is temporarily unavailable. Reconnect first, then sign in again or try later if the issue continues.`,remoteStatusIssueDetailServiceStopped:`The managed service is not running right now. Start it so this device can show up in the web device list again.`,remoteStatusReauthorizationHint:`Use the button below to open the sign-in page. Once you finish signing in, this device will recover remote access automatically.`,remoteSignInAndEnable:`Sign In and Enable Remote Access`,remoteEnableNow:`Enable Remote Access`,remoteReconnectNow:`Reconnect`,remoteReauthorizeNow:`Sign In Again and Restore Remote Access`,remoteDisable:`Disable Remote Access`,remoteDeviceSummaryTitle:`This Device`,remoteDeviceSummaryDescription:`Users only need the account, device name, connection state, and web entry.`,remoteSignedInAccount:`Signed-in Account`,remoteConnectionStatus:`Connection Status`,remoteAdvancedTitle:`Advanced Settings`,remoteAdvancedDescription:`Only open this section when you need diagnostics or a custom platform API base.`,remoteAdvancedToggleOpen:`Show Advanced Settings`,remoteAdvancedToggleClose:`Hide Advanced Settings`,remoteAdvancedSaved:`Advanced settings saved`,remoteEnabledReady:`Remote access is enabled. You can now use NextClaw Web.`,remoteDisabledDone:`Remote access is disabled`,remoteServiceRecovered:`The managed service is connected again`,remoteActionEnabling:`Enabling remote access...`,remoteActionDisabling:`Disabling remote access...`,remoteActionSavingAdvanced:`Saving advanced settings...`,remoteActionStarting:`Starting the managed service...`,remoteActionRestarting:`Restarting the managed service...`,remoteActionStopping:`Stopping the managed service...`,remoteAccountEntryTitle:`NextClaw Account`,remoteAccountEntryDisconnected:`Not signed in. Click to connect.`,remoteAccountEntryConnected:`Connected to NextClaw`,remoteAccountEntryManage:`Account`,accountPanelTitle:`NextClaw Account`,accountPanelDescription:`Remote access depends on this account. Tokens, authorization, and future cloud capabilities will build on it.`,accountPanelSignedInTitle:`Account Connected`,accountPanelSignedInDescription:`This device is linked to your NextClaw account. You can go to the web app and open the device there.`,accountPanelSignedOutTitle:`Continue Sign-In in Your Browser`,accountPanelSignedOutDescription:`Click the button below to open NextClaw Web, sign in or create an account there, and this device will attach automatically.`,remoteOverviewTitle:`Connection Overview`,remoteOverviewDescription:`Keep only the information ordinary users actually need.`,remoteAccountConnected:`Platform Connected`,remoteAccountNotConnected:`Platform Not Connected`,remoteRuntimeMissing:`Connector Not Running`,remoteStateConnected:`Connected`,remoteStateConnecting:`Connecting`,remoteStateError:`Error`,remoteStateDisconnected:`Disconnected`,remoteStateDisabled:`Disabled`,remoteStateReauthorizationRequired:`Sign-In Required`,remoteLocalOrigin:`Local Origin`,remotePublicPlatform:`Platform Base`,remoteDeviceId:`Device ID`,remoteRuntimeUpdatedAt:`Status Updated At`,remoteLastConnectedAt:`Last Connected At`,remoteLastError:`Last Error`,remoteDeviceTitle:`Device Settings`,remoteDeviceDescription:`Save remote access state, device name, and platform API base.`,remoteDeviceSectionTitle:`Device Info`,remoteDeviceSectionDescription:`Once enabled, this device will appear in the platform web device list.`,remoteDeviceNameAuto:`Unnamed Device`,remoteEnabled:`Enable Remote Access`,remoteEnabledHelp:`After saving, start or restart the managed service to apply the new remote configuration.`,remoteDeviceName:`Device Name`,remoteDeviceNamePlaceholder:`For example: PeideMacBook-Pro`,remotePlatformApiBase:`Platform API Base`,remotePlatformApiBaseHelp:`Leave empty to fall back to providers.nextclaw.apiBase saved at login time.`,remoteSaveSettings:`Save Settings`,remoteSettingsSaved:`Remote settings saved`,remoteSettingsSaveFailed:`Failed to save remote settings`,remoteSaveHint:`Recommended flow: save settings, start or restart the service, then run diagnostics.`,remoteAccountTitle:`Platform Account`,remoteAccountDescription:`Authorize this device in your browser and connect it to the NextClaw platform.`,remoteAccountEmail:`Email`,remoteAccountUsername:`Username`,remoteAccountUsernameRequiredTitle:`Set a username before publishing skills`,remoteAccountUsernameRequiredDescription:"Your platform account is already signed in, but it does not have a username yet. Once set, your personal skills will publish as `@username/skill-name`.",remoteAccountUsernamePlaceholder:`For example: alice-dev`,remoteAccountUsernameSave:`Save Username`,remoteAccountUsernameSaving:`Saving...`,remoteAccountUsernameSetSuccess:`Username saved`,remoteAccountUsernameSetFailed:`Failed to save username`,remoteAccountUsernameLockedHelp:`This version supports initial username setup only. Renaming is not available yet.`,remoteAccountRole:`Role`,remoteApiBase:`API Base`,remoteBrowserAuthTitle:`Browser Authorization`,remoteBrowserAuthDescription:`Open the platform authorization page in your browser, then sign in or create an account there.`,remoteBrowserAuthAction:`Continue in Browser`,remoteBrowserAuthActionRetry:`Restart Browser Sign-In`,remoteBrowserAuthResume:`Reopen Authorization Page`,remoteBrowserAuthStarting:`Starting authorization...`,remoteBrowserAuthAuthorizing:`Waiting for browser authorization...`,remoteBrowserAuthWaiting:`The authorization page is open. Complete sign in or registration there and this page will connect automatically.`,remoteBrowserAuthCompleted:`Authorization completed. Refreshing account status.`,remoteBrowserAuthExpired:`Authorization session expired. Start again.`,remoteBrowserAuthPopupBlocked:`Your browser did not open automatically. Use "Reopen Authorization Page".`,remoteBrowserAuthSession:`Auth Session`,remoteBrowserAuthExpiresAt:`Auth Expires At`,remoteBrowserAuthHint:`If you just changed the Platform API Base above, saving settings is recommended. This page will still use the current value for browser authorization.`,remoteBrowserAuthStartFailed:`Failed to start browser authorization`,remoteBrowserAuthPollFailed:`Failed to check browser authorization status`,remoteEmail:`Email`,remotePassword:`Password`,remotePasswordPlaceholder:`Enter your platform password`,remoteRegisterIfNeeded:`Auto-create on First Verification`,remoteRegisterIfNeededHelp:`When enabled, the UI will sign in on the platform and then save the resulting login token.`,remoteLogin:`Login to Platform`,remoteCreateAccount:`Create Account & Login`,remoteLoggingIn:`Logging in...`,remoteLoginSuccess:`Platform login succeeded`,remoteLoginFailed:`Platform login failed`,remoteLogout:`Logout`,remoteLoggingOut:`Logging out...`,remoteLogoutSuccess:`Logged out from platform`,remoteLogoutFailed:`Failed to logout`,remoteServiceTitle:`Managed Service`,remoteServiceDescription:`Directly control the managed service that hosts the current UI.`,remoteServiceRunning:`Service Running`,remoteServiceManagedRunning:`Current Managed Service`,remoteServiceStopped:`Service Stopped`,remoteServicePid:`Process PID`,remoteServiceUiUrl:`UI URL`,remoteServiceCurrentProcess:`Current Page Served By It`,remoteStartService:`Start Service`,remoteRestartService:`Restart Service`,remoteStopService:`Stop Service`,remoteServiceHint:`If this page is served by the managed service itself, stop/restart may briefly disconnect the page.`,remoteServiceActionFailed:`Service action failed`,remoteDoctorTitle:`Remote Diagnostics`,remoteDoctorDescription:`Check config state, platform login, local UI health, and connector status.`,remoteRunDoctor:`Run Diagnostics`,remoteDoctorRunning:`Running diagnostics...`,remoteDoctorCompleted:`Diagnostics completed`,remoteDoctorFailed:`Diagnostics failed`,remoteDoctorGeneratedAt:`Generated At`,remoteDoctorEmpty:`Run diagnostics to see the latest checks here.`,remoteCheckPassed:`Passed`,remoteCheckFailed:`Failed`,connected:`Connected`,disconnected:`Disconnected`,connecting:`Connecting...`,feishuConnecting:`Verifying / connecting...`,statusReady:`Ready`,statusSetup:`Setup`,statusActive:`Active`,statusInactive:`Inactive`},va={runtimePageTitle:`Routing & Runtime`,runtimePageDescription:`Align multi-agent routing with OpenClaw: bindings, agent pool, and DM scope.`,dmScopeMain:`Main session`,dmScopePerPeer:`Per peer`,dmScopePerChannelPeer:`Per channel and peer`,dmScopePerAccountChannelPeer:`Per account, channel, and peer`,runtimeEntries:`Runtime Entries`,runtimeEntriesHelp:`Manage visible runtime entries and their configuration in one place.`,runtimeEntryIdPlaceholder:`Entry ID, for example hermes`,runtimeEntryLabelPlaceholder:`Display name, for example Hermes`,runtimeEntryTypePlaceholder:`Runtime type, for example narp-stdio`,runtimeEntryConfigJson:`Config JSON`,addRuntimeEntry:`Add Runtime Entry`,runtimeEntryIdRequired:`Runtime entry id is required at index {index}.`,runtimeEntryTypeRequired:`Runtime entry type is required for "{id}".`,runtimeEntryDuplicate:`Duplicate runtime entry id`,runtimeEntryConfigObjectRequired:`Runtime entry config for "{id}" must be a JSON object.`,peerKindDirect:`Direct`,peerKindGroup:`Group`,peerKindChannel:`Channel`,runtimeLoading:`Loading runtime settings...`,runtimeControlTitle:`Service Management`,runtimeControlDescription:`Make the current service state explicit and manage start, restart, stop, or full desktop app restart when the host allows it.`,runtimePresenceTitle:`Presence & Lifecycle`,runtimePresenceDescription:`Make the current environment explicit: what happens when the window or page closes, and which background behaviors belong to the host.`,runtimePresenceLoading:`Loading presence settings...`,runtimePresenceLoadFailed:`Failed to load desktop presence settings`,runtimePresenceBehaviorLabel:`Current Close Behavior`,runtimePresenceBehaviorBackground:`Closing the window hides it to the background`,runtimePresenceBehaviorQuit:`Closing the window quits the app`,runtimePresenceCloseToBackground:`Keep running in background when closing the window`,runtimePresenceCloseToBackgroundHelp:`When enabled, closing the desktop window hides it to the tray instead of stopping the local NextClaw service.`,runtimePresenceLaunchAtLogin:`Launch NextClaw at login`,runtimePresenceLaunchAtLoginHelp:`When enabled, the desktop app starts automatically after login and stays in the background by default.`,runtimePresenceLaunchAtLoginUnavailable:`Launch-at-login is not configurable in this environment yet.`,runtimePresenceSaved:`Desktop presence settings saved`,runtimePresenceSaveFailed:`Failed to save desktop presence settings`,runtimePresenceManagedLocalTitle:`The browser is only a control surface for the local service`,runtimePresenceManagedLocalDescription:`Closing the browser tab does not stop the local NextClaw service. The local managed service owns the lifecycle, not the page.`,runtimePresenceSelfHostedTitle:`The page does not own the self-hosted service lifecycle`,runtimePresenceSelfHostedDescription:`Closing the browser page does not affect the self-hosted instance. Service start, stop, and auto-start belong to the host environment or deployment layer.`,runtimePresenceSharedTitle:`Shared web exposes service state, not process ownership`,runtimePresenceSharedDescription:`Closing the page only ends the current connection or session, not the shared service itself. The platform owns the lifecycle.`,runtimeControlLoading:`Loading runtime control capabilities...`,runtimeControlLoadFailed:`Failed to load runtime control state`,runtimeControlManagedLocalMessage:`Use this page to manage the local NextClaw service. Closing the browser does not stop the service.`,runtimeControlManagedLocalHint:`This page is served by the running local service. Closing the browser does not stop it.`,runtimeControlManagedLocalHintShort:`This page is served by the running local service.`,runtimeControlStartUnavailableHosted:`This page is already hosted by the running local service.`,runtimeControlRestartAppDesktopOnly:`App restart is only available in the desktop shell.`,runtimeControlServiceNotRunning:`The local service is not running.`,runtimeControlServiceAlreadyStopped:`The local service is already stopped.`,runtimeControlManagedServiceStarted:`Managed service started.`,runtimeControlManagedServiceStartScheduled:`Managed service start scheduled.`,runtimeControlRestartScheduled:`Restart scheduled. This page may disconnect for a few seconds.`,runtimeControlStopScheduled:`Stop scheduled. This page will disconnect shortly.`,runtimeControlServiceRunning:`Service running`,runtimeControlServiceStopped:`Service stopped`,runtimeControlServiceStarting:`Starting service`,runtimeControlServiceStopping:`Stopping service`,runtimeControlServiceRestarting:`Restarting service`,runtimeControlServiceUnknown:`Service state unknown`,runtimeControlHealthy:`Runtime healthy`,runtimeControlStartingService:`Starting service`,runtimeControlRestartingService:`Restarting service`,runtimeControlStoppingService:`Stopping service`,runtimeControlRestartingApp:`Restarting app`,runtimeControlRecovering:`Recovering connection`,runtimeControlFailed:`Restart failed`,runtimeControlUnavailable:`Currently unavailable`,runtimeControlEnvironmentDesktop:`Desktop embedded runtime`,runtimeControlEnvironmentManagedService:`Managed local service`,runtimeControlEnvironmentSelfHosted:`Self-hosted web`,runtimeControlEnvironmentSharedWeb:`Shared web`,runtimeControlStartService:`Start Service`,runtimeControlRestartService:`Restart Service`,runtimeControlStopService:`Stop Service`,runtimeControlRestartApp:`Restart App`,runtimeControlPendingRestartTitle:`Pending Restart`,runtimeControlPendingRestartDescription:`These changes are saved, but the system will not restart automatically. Restart manually when you are ready, and this notice clears after the restart finishes.`,runtimeControlPendingRestartPaths:`Changes Waiting For Restart`,runtimeStatusLoadingTitle:`Loading status`,runtimeStatusLoadingDescription:`Loading the current system status.`,runtimeStatusHealthyTitle:`System healthy`,runtimeStatusHealthyDescription:`There is no system action that needs your attention right now.`,runtimeStatusPendingRestartTitle:`Restart required`,runtimeStatusPendingRestartDescription:`These changes are saved, but the system will not restart automatically. Review the reason here and restart when you are ready.`,runtimeStatusPendingRestartReasonItem:`Changes in {path} will apply after restart.`,runtimeStatusActionHint:`Run when you are ready`,runtimeStatusRestartAction:`Restart now`,runtimeStatusRestartingAction:`Restarting...`,runtimeControlStartingServiceHelp:`Starting the NextClaw service. The page may reconnect after the service becomes available.`,runtimeControlRestartingServiceHelp:`Restarting the NextClaw service. The page may disconnect briefly.`,runtimeControlStoppingServiceHelp:`Stopping the NextClaw service. This page will disconnect shortly.`,runtimeControlRestartingAppHelp:`Restarting the desktop app. The current window will close briefly and relaunch.`,runtimeControlRecoveringHelp:`Waiting for the service to come back...`,runtimeControlRecovered:`Runtime connection restored`,runtimeControlActionFailed:`Service management action failed`,runtimeControlRestartAppConfirm:`This restarts the entire NextClaw desktop app and interrupts the current window. Continue?`,runtimeControlStopServiceConfirm:`This stops the current NextClaw service and disconnects the page immediately. Continue?`,runtimeRestartAppUnavailable:`This environment does not support restarting the entire app from the UI.`,runtimeControlDesktopServiceHint:`The desktop launcher owns the app lifecycle, so end users do not stop the embedded service separately.`,runtimeRecoveryTimedOut:`Timed out waiting for the runtime to recover. Try again or inspect the logs.`},ya={searchPageTitle:`Search Channels`,searchPageDescription:`Configure web search providers.`,searchActiveProvider:`Active Search Provider`,searchDefaultMaxResults:`Default Result Count`,searchProviderSummary:`Result Summary`,searchProviderFreshness:`Freshness`,searchProviderSearchDepth:`Search Depth`,searchProviderIncludeAnswer:`Include Answer`,searchProviderBaseUrl:`API Base URL`,searchProviderOpenDocs:`Open Docs`,searchProviderActivate:`Activate`,searchProviderActivated:`Activated`,searchProviderDeactivate:`Deactivate`,searchProviderBochaDescription:`AI-ready search that works better for mainland China users.`,searchProviderTavilyDescription:`Research-focused search with configurable answer synthesis.`,searchProviderBraveDescription:`Keep Brave as an optional provider.`,searchProviderExaDescription:`Semantic search with page content for research and discovery.`,searchStatusConfigured:`Configured`,searchStatusNeedsSetup:`Needs Setup`,searchFreshnessNoLimit:`No Limit`,searchFreshnessOneDay:`One Day`,searchFreshnessOneWeek:`One Week`,searchFreshnessOneMonth:`One Month`,searchFreshnessOneYear:`One Year`,searchDepthBasic:`Basic`,searchDepthAdvanced:`Advanced`,searchNoProviderSelected:`Select a search provider from the left.`},ba=`nextclaw.ui.language`,xa={en:`en-US`,zh:`zh-CN`},Sa=[{value:`en`,label:`English`},{value:`zh`,label:`中文`}],I=new class{constructor(){this.activeLanguage=`en`,this.initialized=!1,this.listeners=new Set,this.isLanguage=e=>e===`en`||e===`zh`,this.detectBrowserLanguage=()=>typeof navigator>`u`?`en`:(navigator.language?.toLowerCase()??`en`).startsWith(`zh`)?`zh`:`en`,this.getDesktopBridge=()=>typeof window>`u`?null:window.nextclawDesktop??null,this.resolveInitialLanguage=()=>{if(typeof window>`u`)return`en`;let e=this.getDesktopBridge();if(e)return this.isLanguage(e.localePreference)?e.localePreference:this.detectBrowserLanguage();try{let e=window.localStorage.getItem(ba);if(this.isLanguage(e))return e}catch{}return this.detectBrowserLanguage()},this.initialize=()=>(this.initialized||=(this.activeLanguage=this.resolveInitialLanguage(),!0),this.activeLanguage),this.getLanguage=()=>this.initialized?this.activeLanguage:this.initialize(),this.setLanguage=e=>{if(this.initialize(),this.activeLanguage===e)return;this.activeLanguage=e;let t=this.getDesktopBridge();if(t)t.setLocalePreference?.(e);else if(typeof window<`u`)try{window.localStorage.setItem(ba,e)}catch{}this.listeners.forEach(t=>t(e))},this.subscribeLanguageChange=e=>(this.listeners.add(e),()=>{this.listeners.delete(e)}),this.getLocale=(e=this.getLanguage())=>xa[e]}},{resolveInitialLanguage:Ca}=I,wa=I.initialize,{getLanguage:Ta}=I,{setLanguage:Ea}=I,{subscribeLanguageChange:Da}=I,{getLocale:Oa}=I,ka={...Tt,...pr,...xr,...Ct,...A,...yr,...br,...wt,...xt,...hr,...gr,...mr,..._r,...vr,...St},L={...Er,...da,...ya,...wr,...Dr,..._a,...va,...Tr,...Sr,...pa,...ma,...fa,...ha,...ga,...Cr},Aa={zh:ka,en:L};Object.fromEntries(Object.keys(L).map(e=>[e,{zh:ka[e]??L[e]??e,en:L[e]??e}]));function R(e,t=Ta()){if(!e)return`-`;let n=e instanceof Date?e:new Date(e);return Number.isNaN(n.getTime())?typeof e==`string`?e:`-`:n.toLocaleString(Oa(t))}function ja(e,t=Ta()){if(!e)return`-`;let n=e instanceof Date?e:new Date(e);return Number.isNaN(n.getTime())?typeof e==`string`?e:`-`:new Intl.DateTimeFormat(Oa(t),{year:`numeric`,month:`2-digit`,day:`2-digit`}).format(n)}function Ma(e,t=Ta()){return new Intl.NumberFormat(Oa(t)).format(e)}function Na(e,t=Ta()){return Aa[t]?.[e]??L[e]??e}var Pa=e=>{let t,n=new Set,r=(e,r)=>{let i=typeof e==`function`?e(t):e;if(!Object.is(i,t)){let e=t;t=r??(typeof i!=`object`||!i)?i:Object.assign({},t,i),n.forEach(n=>n(t,e))}},i=()=>t,a={setState:r,getState:i,getInitialState:()=>o,subscribe:e=>(n.add(e),()=>n.delete(e))},o=t=e(r,i,a);return a},Fa=(e=>e?Pa(e):Pa),Ia=e(r(),1),La=e=>e;function Ra(e,t=La){let n=Ia.useSyncExternalStore(e.subscribe,Ia.useCallback(()=>t(e.getState()),[e,t]),Ia.useCallback(()=>t(e.getInitialState()),[e,t]));return Ia.useDebugValue(n),n}var za=e=>{let t=Fa(e),n=e=>Ra(t,e);return Object.assign(n,t),n},Ba=(e=>e?za(e):za);export{Ge as A,l as B,Qe as C,Je as D,Ue as E,Le as F,r as H,Ie as I,Pe as L,Ve as M,ze as N,Ke as O,Re as P,Ne as R,$e as S,He as T,s as V,ft as _,Na as a,st as b,Oa as c,Da as d,bt as f,lt as g,ht as h,Ma as i,Be as j,qe as k,wa as l,gt as m,ja as n,Sa as o,_t as p,R as r,Ta as s,Ba as t,Ea as u,mt as v,We as w,et as x,tt as y,d as z};
|