import{a as e,n as t,r as n,t as r}from"./react-dom-stZKkA6x.js";import{$t as i,An as a,At as o,Cn as s,Dn as c,Dr as l,Dt as u,Et as d,Fn as f,Gn as p,Jn as m,Mn as h,Mr as g,Nr as _,Nt as v,Or as y,Pn as b,Rn as x,Sn as S,Tn as C,Un as w,Vt as ee,Wn as te,Wt as T,Zn as E,Zt as ne,_n as re,ar as D,cn as ie,ct as ae,dt as oe,er as O,fn as k,gn as se,hn as ce,in as le,jr as ue,ln as A,lt as j,mn as de,nn as fe,nr as pe,on as me,pn as he,rn as ge,rr as _e,sn as ve,sr as ye,st as be,t as xe,vn as Se,wr as Ce,xn as we,yn as Te,yr as Ee,zn as De}from"./jsx-runtime-C5RSiriy.js";var Oe=n((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(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(e.unstable_now=void 0,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=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(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 x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,E());else{var t=n(l);t!==null&&D(x,t.startTime-e)}}var S=!1,C=-1,w=5,ee=-1;function te(){return g?!0:!(e.unstable_now()-eet&&te());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&D(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?E():S=!1}}}var E;if(typeof y==`function`)E=function(){y(T)};else if(typeof MessageChannel<`u`){var ne=new MessageChannel,re=ne.port2;ne.port1.onmessage=T,E=function(){re.postMessage(null)}}else E=function(){_(T,0)};function D(t,n){C=_(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_forceFrameRate=function(e){0>e||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,D(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,E()))),r},e.unstable_shouldYield=te,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),ke=n(((e,t)=>{t.exports=Oe()})),Ae=n((e=>{var n=ke(),i=t(),a=r();function o(e){var t=`https://react.dev/errors/`+e;if(1le||(e.current=ce[le],ce[le]=null,le--)}function j(e,t){le++,ce[le]=e.current,e.current=t}var de=ue(null),fe=ue(null),pe=ue(null),me=ue(null);function he(e,t){switch(j(pe,t),j(fe,e),j(de,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}A(de),j(de,e)}function ge(){A(de),A(fe),A(pe)}function _e(e){e.memoizedState!==null&&j(me,e);var t=de.current,n=Hd(t,e.type);t!==n&&(j(fe,e),j(de,n))}function ve(e){fe.current===e&&(A(de),A(fe)),me.current===e&&(A(me),Qf._currentValue=se)}var ye,be;function xe(e){if(ye===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);ye=t&&t[1]||``,be=-1)`:-1i||c[r]!==l[i]){var u=` `+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{Se=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?xe(n):``}function we(e,t){switch(e.tag){case 26:case 27:case 5:return xe(e.type);case 16:return xe(`Lazy`);case 13:return e.child!==t&&t!==null?xe(`Suspense Fallback`):xe(`Suspense`);case 19:return xe(`SuspenseList`);case 0:case 15:return Ce(e.type,!1);case 11:return Ce(e.type.render,!1);case 1:return Ce(e.type,!0);case 31:return xe(`Activity`);default:return``}}function Te(e){try{var t=``,n=null;do t+=we(e,n),n=e,e=e.return;while(e);return t}catch(e){return` Error generating stack: `+e.message+` `+e.stack}}var Ee=Object.prototype.hasOwnProperty,De=n.unstable_scheduleCallback,Oe=n.unstable_cancelCallback,Ae=n.unstable_shouldYield,je=n.unstable_requestPaint,M=n.unstable_now,Me=n.unstable_getCurrentPriorityLevel,N=n.unstable_ImmediatePriority,Ne=n.unstable_UserBlockingPriority,Pe=n.unstable_NormalPriority,Fe=n.unstable_LowPriority,Ie=n.unstable_IdlePriority,Le=n.log,Re=n.unstable_setDisableYieldValue,ze=null,Be=null;function Ve(e){if(typeof Le==`function`&&Re(e),Be&&typeof Be.setStrictMode==`function`)try{Be.setStrictMode(ze,e)}catch{}}var He=Math.clz32?Math.clz32:Ge,Ue=Math.log,We=Math.LN2;function Ge(e){return e>>>=0,e===0?32:31-(Ue(e)/We|0)|0}var Ke=256,qe=262144,Je=4194304;function Ye(e){var t=e&42;if(t!==0)return t;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:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Xe(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ye(n))):i=Ye(o):i=Ye(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ye(n))):i=Ye(o)):i=Ye(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Ze(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Qe(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32: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:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function $e(){var e=Je;return Je<<=1,!(Je&62914560)&&(Je=4194304),e}function et(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function tt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function nt(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0`u`||window.document===void 0||window.document.createElement===void 0),mn=!1;if(pn)try{var hn={};Object.defineProperty(hn,"passive",{get:function(){mn=!0}}),window.addEventListener(`test`,hn,hn),window.removeEventListener(`test`,hn,hn)}catch{mn=!1}var gn=null,_n=null,vn=null;function yn(){if(vn)return vn;var e,t=_n,n=t.length,r,i=`value`in gn?gn.value:gn.textContent,a=i.length;for(e=0;e=Zn),er=` `,tr=!1;function nr(e,t){switch(e){case`keyup`:return Yn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function rr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var ir=!1;function ar(e,t){switch(e){case`compositionend`:return rr(t);case`keypress`:return t.which===32?(tr=!0,er):null;case`textInput`:return e=t.data,e===er&&tr?null:e;default:return null}}function or(e,t){if(ir)return e===`compositionend`||!Xn&&nr(e,t)?(e=yn(),vn=_n=gn=null,ir=!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)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=Or(n)}}function Ar(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ar(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function jr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Bt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Bt(e.document)}return t}function Mr(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`)}var Nr=pn&&`documentMode`in document&&11>=document.documentMode,Pr=null,Fr=null,Ir=null,Lr=!1;function Rr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Lr||Pr==null||Pr!==Bt(r)||(r=Pr,`selectionStart`in r&&Mr(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}),Ir&&Dr(Ir,r)||(Ir=r,r=Ed(Fr,`onSelect`),0>=o,i-=o,ki=1<<32-He(t)+i|n<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),o=a(_,o,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),L&&ji(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(i,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(i,h),s=a(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(i,h),L&&ji(i,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(i,v.value,l),v!==null&&(s=a(v,s,g),d===null?u=v:d.sibling=v,d=v);return L&&ji(i,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,i,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=a(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(i,e)}),L&&ji(i,g),u}function b(e,r,a,c){if(typeof a==`object`&&a&&a.type===v&&a.key===null&&(a=a.props.children),typeof a==`object`&&a){switch(a.$$typeof){case g:a:{for(var l=a.key;r!==null;){if(r.key===l){if(l=a.type,l===v){if(r.tag===7){n(e,r.sibling),c=i(r,a.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===T&&Aa(l)===r.type){n(e,r.sibling),c=i(r,a.props),La(c,a),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}a.type===v?(c=gi(a.props.children,e.mode,c,a.key),c.return=e,e=c):(c=hi(a.type,a.key,a.props,null,e.mode,c),La(c,a),c.return=e,e=c)}return s(e);case _:a:{for(l=a.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),c=i(r,a.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=yi(a,e.mode,c),c.return=e,e=c}return s(e);case T:return a=Aa(a),b(e,r,a,c)}if(oe(a))return h(e,r,a,c);if(D(a)){if(l=D(a),typeof l!=`function`)throw Error(o(150));return a=l.call(a),y(e,r,a,c)}if(typeof a.then==`function`)return b(e,r,Ia(a),c);if(a.$$typeof===S)return b(e,r,ia(e,a),c);Ra(e,a)}return typeof a==`string`&&a!==``||typeof a==`number`||typeof a==`bigint`?(a=``+a,r!==null&&r.tag===6?(n(e,r.sibling),c=i(r,a),c.return=e,e=c):(n(e,r),c=_i(a,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Fa=0;var i=b(e,t,n,r);return Pa=null,i}catch(t){if(t===wa||t===Ea)throw t;var a=di(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ba=za(!0),Va=za(!1),Ha=!1;function Ua(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Wa(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ga(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Ka(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,G&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ci(e),F(e,null,n),t}return ai(e,r,t,n),ci(e)}function qa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,it(e,n)}}function Ja(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={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,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,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ya=!1;function Xa(){if(Ya){var e=ha;if(e!==null)throw e}}function Za(e,t,n,r){Ya=!1;var i=e.updateQueue;Ha=!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&-536870913,p=f!==s.lane;if(p?(J&f)===f:(r&f)===f){f!==0&&f===ma&&(Ya=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,f);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,f=typeof h==`function`?h.call(_,d,f):h,f==null)break a;d=m({},d,f);break a;case 2:Ha=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else 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;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Gl|=o,e.lanes=o,e.memoizedState=d}}function Qa(e,t){if(typeof e!=`function`)throw Error(o(191,e));e.call(t)}function $a(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=O.T,s={};O.T=s,Fs(e,!1,t,n);try{var c=i(),l=O.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ps(e,t,va(c,r),pu(e)):Ps(e,t,r,pu(e))}catch(n){Ps(e,t,{then:function(){},status:`rejected`,reason:n},pu())}finally{k.p=a,o!==null&&s.types!==null&&(o.types=s.types),O.T=o}}function ws(){}function Ts(e,t,n,r){if(e.tag!==5)throw Error(o(476));var i=Es(e).queue;Cs(e,i,t,se,n===null?ws:function(){return Ds(e),n(r)})}function Es(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:se,baseState:se,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:se},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Io,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Ds(e){var t=Es(e);t.next===null&&(t=e.alternate.memoizedState),Ps(e,t.next.queue,{},pu())}function Os(){return ra(Qf)}function ks(){return H().memoizedState}function As(){return H().memoizedState}function js(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=pu();e=Ga(n);var r=Ka(t,e,n);r!==null&&(hu(r,t,n),qa(r,t,n)),t={cache:ua()},e.payload=t;return}t=t.return}}function Ms(e,t,n){var r=pu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Is(e)?Ls(t,n):(n=oi(e,t,n,r),n!==null&&(hu(n,e,r),Rs(n,t,r)))}function Ns(e,t,n){Ps(e,t,n,pu())}function Ps(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Is(e))Ls(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,Er(s,o))return ai(e,t,i,0),K===null&&ii(),!1}catch{}if(n=oi(e,t,i,r),n!==null)return hu(n,e,r),Rs(n,t,r),!0}return!1}function Fs(e,t,n,r){if(r={lane:2,revertLane:dd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Is(e)){if(t)throw Error(o(479))}else t=oi(e,n,r,2),t!==null&&hu(t,e,2)}function Is(e){var t=e.alternate;return e===z||t!==null&&t===z}function Ls(e,t){_o=go=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Rs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,it(e,n)}}var zs={readContext:ra,use:Po,useCallback:V,useContext:V,useEffect:V,useImperativeHandle:V,useLayoutEffect:V,useInsertionEffect:V,useMemo:V,useReducer:V,useRef:V,useState:V,useDebugValue:V,useDeferredValue:V,useTransition:V,useSyncExternalStore:V,useId:V,useHostTransitionStatus:V,useFormState:V,useActionState:V,useOptimistic:V,useMemoCache:V,useCacheRefresh:V};zs.useEffectEvent=V;var Bs={readContext:ra,use:Po,useCallback:function(e,t){return jo().memoizedState=[e,t===void 0?null:t],e},useContext:ra,useEffect:us,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),cs(4194308,4,gs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return cs(4194308,4,e,t)},useInsertionEffect:function(e,t){cs(4,2,e,t)},useMemo:function(e,t){var n=jo();t=t===void 0?null:t;var r=e();if(vo){Ve(!0);try{e()}finally{Ve(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=jo();if(n!==void 0){var i=n(t);if(vo){Ve(!0);try{n(t)}finally{Ve(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Ms.bind(null,z,e),[r.memoizedState,e]},useRef:function(e){var t=jo();return e={current:e},t.memoizedState=e},useState:function(e){e=Ko(e);var t=e.queue,n=Ns.bind(null,z,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:vs,useDeferredValue:function(e,t){return xs(jo(),e,t)},useTransition:function(){var e=Ko(!1);return e=Cs.bind(null,z,e.queue,!0,!1),jo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=z,i=jo();if(L){if(n===void 0)throw Error(o(407));n=n()}else{if(n=t(),K===null)throw Error(o(349));J&127||Vo(r,t,n)}i.memoizedState=n;var a={value:n,getSnapshot:t};return i.queue=a,us(Uo.bind(null,r,a,e),[e]),r.flags|=2048,os(9,{destroy:void 0},Ho.bind(null,r,a,n,t),null),n},useId:function(){var e=jo(),t=K.identifierPrefix;if(L){var n=Ai,r=ki;n=(r&~(1<<32-He(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=yo++,0<\/script>`,a=a.removeChild(a.firstChild);break;case`select`:a=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a=typeof r.is==`string`?s.createElement(i,{is:r.is}):s.createElement(i)}}a[dt]=t,a[ft]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)a.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=a;a:switch(Pd(a,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Pc(t)}}return U(t),Fc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Pc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(o(166));if(e=pe.current,Ui(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,i=Ii,i!==null)switch(i.tag){case 27:case 5:r=i.memoizedProps}e[dt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Bi(t,!0)}else e=Bd(e).createTextNode(r),e[dt]=t,t.stateNode=e}return U(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Ui(t),n!==null){if(e===null){if(!r)throw Error(o(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(o(557));e[dt]=t}else Wi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;U(t),e=!1}else n=Gi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(fo(t),t):(fo(t),null);if(t.flags&128)throw Error(o(558))}return U(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=Ui(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(o(318));if(i=t.memoizedState,i=i===null?null:i.dehydrated,!i)throw Error(o(317));i[dt]=t}else Wi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;U(t),i=!1}else i=Gi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(fo(t),t):(fo(t),null)}return fo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),a=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(a=r.memoizedState.cachePool.pool),a!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Lc(t,t.updateQueue),U(t),null);case 4:return ge(),e===null&&Sd(t.stateNode.containerInfo),U(t),null;case 10:return Zi(t.type),U(t),null;case 19:if(A(R),r=t.memoizedState,r===null)return U(t),null;if(i=(t.flags&128)!=0,a=r.rendering,a===null)if(i)Rc(r,!1);else{if(X!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=po(e),a!==null){for(t.flags|=128,Rc(r,!1),e=a.updateQueue,t.updateQueue=e,Lc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)mi(n,e),n=n.sibling;return j(R,R.current&1|2),L&&ji(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&M()>tu&&(t.flags|=128,i=!0,Rc(r,!1),t.lanes=4194304)}else{if(!i)if(e=po(a),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Lc(t,e),Rc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!a.alternate&&!L)return U(t),null}else 2*M()-r.renderingStartTime>tu&&n!==536870912&&(t.flags|=128,i=!0,Rc(r,!1),t.lanes=4194304);r.isBackwards?(a.sibling=t.child,t.child=a):(e=r.last,e===null?t.child=a:e.sibling=a,r.last=a)}return r.tail===null?(U(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=M(),e.sibling=null,n=R.current,j(R,i?n&1|2:n&1),L&&ji(t,r.treeForkCount),e);case 22:case 23:return fo(t),io(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(U(t),t.subtreeFlags&6&&(t.flags|=8192)):U(t),n=t.updateQueue,n!==null&&Lc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&A(ba),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Zi(la),U(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function Bc(e,t){switch(Pi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Zi(la),ge(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return ve(t),null;case 31:if(t.memoizedState!==null){if(fo(t),t.alternate===null)throw Error(o(340));Wi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(fo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));Wi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return A(R),null;case 4:return ge(),null;case 10:return Zi(t.type),null;case 22:case 23:return fo(t),io(),e!==null&&A(ba),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Zi(la),null;case 25:return null;default:return null}}function Vc(e,t){switch(Pi(t),t.tag){case 3:Zi(la),ge();break;case 26:case 27:case 5:ve(t);break;case 4:ge();break;case 31:t.memoizedState!==null&&fo(t);break;case 13:fo(t);break;case 19:A(R);break;case 10:Zi(t.type);break;case 22:case 23:fo(t),io(),e!==null&&A(ba);break;case 24:Zi(la)}}function Hc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function Uc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Wc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{$a(t,n)}catch(t){Z(e,e.return,t)}}}function Gc(e,t,n){n.props=qs(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function Kc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function qc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}function Jc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Z(e,e.return,t)}}function Yc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[ft]=t}catch(t){Z(e,e.return,t)}}function Xc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Zc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Xc(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.tag===27&&Zd(e.type)||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 Qc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=rn));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Qc(e,t,n),e=e.sibling;e!==null;)Qc(e,t,n),e=e.sibling}function $c(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&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function el(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[dt]=e,t[ft]=n}catch(t){Z(e,e.return,t)}}var tl=!1,nl=!1,rl=!1,il=typeof WeakSet==`function`?WeakSet:Set,al=null;function ol(e,t){if(e=e.containerInfo,Rd=sp,e=jr(e),Mr(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 i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.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||i!==0&&f.nodeType!==3||(c=s+i),f!==a||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===i&&(c=s),p===a&&++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(zd={focusedElem:e,selectionRange:n},sp=!1,al=t;al!==null;)if(t=al,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,al=e;else for(;al!==null;){switch(t=al,a=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n title`))),Pd(a,r,n),a[dt]=e,P(a),r=a;break a;case`link`:var s=Vf(`link`,`href`,i).get(r+(n.href||``));if(s){for(var c=0;cg&&(o=g,g=h,h=o);var _=kr(s,h),v=kr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,O.T=null,n=lu,lu=null;var a=au,s=su;if(iu=0,ou=au=null,su=0,G&6)throw Error(o(331));var c=G;if(G|=4,Fl(a.current),Dl(a,a.current,s,n),G=c,id(0,!1),Be&&typeof Be.onPostCommitFiberRoot==`function`)try{Be.onPostCommitFiberRoot(ze,a)}catch{}return!0}finally{k.p=i,O.T=r,Vu(e,t)}}function Wu(e,t,n){t=xi(n,t),t=$s(e.stateNode,t,2),e=Ka(e,t,2),e!==null&&(tt(e,2),rd(e))}function Z(e,t,n){if(e.tag===3)Wu(e,e,n);else for(;t!==null;){if(t.tag===3){Wu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(ru===null||!ru.has(r))){e=xi(n,e),n=ec(2),r=Ka(t,n,2),r!==null&&(tc(n,r,t,e),tt(r,2),rd(r));break}}t=t.return}}function Gu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new zl;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)||(Ul=!0,i.add(n),e=Ku.bind(null,e,t,n),t.then(e,e))}function Ku(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,K===e&&(J&n)===n&&(X===4||X===3&&(J&62914560)===J&&300>M()-$l?!(G&2)&&Su(e,0):ql|=n,Yl===J&&(Yl=0)),rd(e)}function qu(e,t){t===0&&(t=$e()),e=si(e,t),e!==null&&(tt(e,t),rd(e))}function Ju(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qu(e,n)}function Yu(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(o(314))}r!==null&&r.delete(t),qu(e,n)}function Xu(e,t){return De(e,t)}var Zu=null,Qu=null,$u=!1,ed=!1,td=!1,nd=0;function rd(e){e!==Qu&&e.next===null&&(Qu===null?Zu=Qu=e:Qu=Qu.next=e),ed=!0,$u||($u=!0,ud())}function id(e,t){if(!td&&ed){td=!0;do for(var n=!1,r=Zu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-He(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,ld(r,a))}else a=J,a=Xe(r,r===K?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Ze(r,a)||(n=!0,ld(r,a));r=r.next}while(n);td=!1}}function ad(){od()}function od(){ed=$u=!1;var e=0;nd!==0&&Gd()&&(e=nd);for(var t=M(),n=null,r=Zu;r!==null;){var i=r.next,a=sd(r,t);a===0?(r.next=null,n===null?Zu=i:n.next=i,i===null&&(Qu=n)):(n=r,(e!==0||a&3)&&(ed=!0)),r=i}iu!==0&&iu!==5||id(e,!1),nd!==0&&(nd=0)}function sd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Ht(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),P(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Ht(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Ht(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Ht(n.imageSizes)+`"]`)):i+=`[href="`+Ht(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=m({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),P(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Ht(r)+`"][href="`+Ht(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=m({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),P(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=Ct(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=m({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);P(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=Ct(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=m({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),P(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=Ct(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=m({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),P(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var i=(i=pe.current)?gf(i):null;if(!i)throw Error(o(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=Ct(i).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var a=Ct(i).hoistableStyles,s=a.get(e);if(s||(i=i.ownerDocument||i,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},a.set(e,s),(a=i.querySelector(jf(e)))&&!a._p&&(s.instance=a,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),a||Nf(i,e,n,s.state))),t&&r===null)throw Error(o(528,``));return s}if(t&&r!==null)throw Error(o(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=Ct(i).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Af(e){return`href="`+Ht(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return m({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),P(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Ht(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Ht(n.href)+`"]`);if(r)return t.instance=r,P(r),r;var i=m({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),P(r),Pd(r,`style`,i),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:i=Af(n.href);var a=e.querySelector(jf(i));if(a)return t.state.loading|=4,t.instance=a,P(a),a;r=Mf(n),(i=mf.get(i))&&Rf(r,i),a=(e.ownerDocument||e).createElement(`link`),P(a);var s=a;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(a,`link`,r),t.state.loading|=4,Lf(a,n.precedence,e),t.instance=a;case`script`:return a=Pf(n.src),(i=e.querySelector(Ff(a)))?(t.instance=i,P(i),i):(r=n,(i=mf.get(a))&&(r=m({},n),zf(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),P(i),Pd(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(o(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,P(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),P(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{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=Ae()})),M=e(t()),Me=e(r()),N=e(_()),Ne={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z`}}]},name:`check-circle`,theme:`filled`},Pe=M.forwardRef(function(e,t){return M.createElement(ce,g({},e,{ref:t,icon:Ne}))}),Fe={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z`}}]},name:`exclamation-circle`,theme:`filled`},Ie=M.forwardRef(function(e,t){return M.createElement(ce,g({},e,{ref:t,icon:Fe}))}),Le={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z`}}]},name:`info-circle`,theme:`filled`},Re=M.forwardRef(function(e,t){return M.createElement(ce,g({},e,{ref:t,icon:Le}))}),ze=M.forwardRef(function(e,t){var n=e.prefixCls,r=e.style,i=e.className,a=e.duration,o=a===void 0?4.5:a,s=e.showProgress,c=e.pauseOnHover,l=c===void 0?!0:c,u=e.eventKey,d=e.content,f=e.closable,p=e.closeIcon,m=p===void 0?`x`:p,h=e.props,_=e.onClick,v=e.onNoticeClose,b=e.times,x=e.hovering,S=D(M.useState(!1),2),C=S[0],w=S[1],ee=D(M.useState(0),2),te=ee[0],T=ee[1],E=D(M.useState(0),2),ne=E[0],re=E[1],ae=x||C,oe=o>0&&s,O=function(){v(u)},se=function(e){(e.key===`Enter`||e.code===`Enter`||e.keyCode===ie.ENTER)&&O()};M.useEffect(function(){if(!ae&&o>0){var e=Date.now()-ne,t=setTimeout(function(){O()},o*1e3-ne);return function(){l&&clearTimeout(t),re(Date.now()-e)}}},[o,ae,b]),M.useEffect(function(){if(!ae&&oe&&(l||ne===0)){var e=performance.now(),t;return(function n(){cancelAnimationFrame(t),t=requestAnimationFrame(function(t){var r=t+ne-e,i=Math.min(r/(o*1e3),1);T(i*100),i<1&&n()})})(),function(){l&&cancelAnimationFrame(t)}}},[o,ne,ae,oe,b]);var ce=M.useMemo(function(){return ue(f)===`object`&&f!==null?f:f?{closeIcon:m}:{}},[f,m]),le=k(ce,!0),A=100-(!te||te<0?0:te>100?100:te),j=`${n}-notice`;return M.createElement(`div`,g({},h,{ref:t,className:(0,N.default)(j,i,y({},`${j}-closable`,f)),style:r,onMouseEnter:function(e){var t;w(!0),h==null||(t=h.onMouseEnter)==null||t.call(h,e)},onMouseLeave:function(e){var t;w(!1),h==null||(t=h.onMouseLeave)==null||t.call(h,e)},onClick:_}),M.createElement(`div`,{className:`${j}-content`},d),f&&M.createElement(`a`,g({tabIndex:0,className:`${j}-close`,onKeyDown:se,"aria-label":`Close`},le,{onClick:function(e){e.preventDefault(),e.stopPropagation(),O()}}),ce.closeIcon),oe&&M.createElement(`progress`,{className:`${j}-progress`,max:`100`,value:A},A+`%`))}),Be=M.createContext({}),Ve=function(e){var t=e.children,n=e.classNames;return M.createElement(Be.Provider,{value:{classNames:n}},t)},He=8,Ue=3,We=16,Ge=function(e){var t={offset:He,threshold:Ue,gap:We};return e&&ue(e)===`object`&&(t.offset=e.offset??He,t.threshold=e.threshold??Ue,t.gap=e.gap??We),[!!e,t]},Ke=[`className`,`style`,`classNames`,`styles`],qe=function(e){var t=e.configList,n=e.placement,r=e.prefixCls,i=e.className,a=e.style,o=e.motion,s=e.onAllNoticeRemoved,c=e.onNoticeClose,u=e.stack,d=(0,M.useContext)(Be).classNames,f=(0,M.useRef)({}),p=D((0,M.useState)(null),2),m=p[0],h=p[1],_=D((0,M.useState)([]),2),v=_[0],b=_[1],x=t.map(function(e){return{config:e,key:String(e.key)}}),S=D(Ge(u),2),C=S[0],w=S[1],ee=w.offset,te=w.threshold,T=w.gap,E=C&&(v.length>0||x.length<=te),ne=typeof o==`function`?o(n):o;return(0,M.useEffect)(function(){C&&v.length>1&&b(function(e){return e.filter(function(e){return x.some(function(t){return e===t.key})})})},[v,x,C]),(0,M.useEffect)(function(){C&&f.current[x[x.length-1]?.key]&&h(f.current[x[x.length-1]?.key])},[x,C]),M.createElement(Te,g({key:n,className:(0,N.default)(r,`${r}-${n}`,d?.list,i,y(y({},`${r}-stack`,!!C),`${r}-stack-expanded`,E)),style:a,keys:x,motionAppear:!0},ne,{onAllRemoved:function(){s(n)}}),function(e,t){var i=e.config,a=e.className,o=e.style,s=e.index,u=i,p=u.key,h=u.times,_=String(p),y=i,S=y.className,w=y.style,te=y.classNames,ne=y.styles,re=pe(y,Ke),D=x.findIndex(function(e){return e.key===_}),ie={};if(C){var ae=x.length-1-(D>-1?D:s-1),oe=n===`top`||n===`bottom`?`-50%`:`0`;if(ae>0){var O;ie.height=E?f.current[_]?.offsetHeight:m?.offsetHeight;for(var k=0,se=0;se-1?f.current[_]=e:delete f.current[_]},prefixCls:r,classNames:te,styles:ne,className:(0,N.default)(S,d?.notice),style:w,times:h,key:p,eventKey:p,onNoticeClose:c,hovering:C&&v.length>0})))})},Je=M.forwardRef(function(e,t){var n=e.prefixCls,r=n===void 0?`rc-notification`:n,i=e.container,a=e.motion,o=e.maxCount,s=e.className,c=e.style,u=e.onAllRemoved,d=e.stack,f=e.renderNotifications,p=D(M.useState([]),2),m=p[0],h=p[1],g=function(e){var t,n=m.find(function(t){return t.key===e});n==null||(t=n.onClose)==null||t.call(n),h(function(t){return t.filter(function(t){return t.key!==e})})};M.useImperativeHandle(t,function(){return{open:function(e){h(function(t){var n=ye(t),r=n.findIndex(function(t){return t.key===e.key}),i=l({},e);return r>=0?(i.times=(t[r]?.times||0)+1,n[r]=i):(i.times=0,n.push(i)),o>0&&n.length>o&&(n=n.slice(-o)),n})},close:function(e){g(e)},destroy:function(){h([])}}});var _=D(M.useState({}),2),v=_[0],y=_[1];M.useEffect(function(){var e={};m.forEach(function(t){var n=t.placement,r=n===void 0?`topRight`:n;r&&(e[r]=e[r]||[],e[r].push(t))}),Object.keys(v).forEach(function(t){e[t]=e[t]||[]}),y(e)},[m]);var b=function(e){y(function(t){var n=l({},t);return(n[e]||[]).length||delete n[e],n})},x=M.useRef(!1);if(M.useEffect(function(){Object.keys(v).length>0?x.current=!0:x.current&&=(u?.(),!1)},[v]),!i)return null;var S=Object.keys(v);return(0,Me.createPortal)(M.createElement(M.Fragment,null,S.map(function(e){var t=v[e],n=M.createElement(qe,{key:e,configList:t,placement:e,prefixCls:r,className:s?.(e),style:c?.(e),motion:a,onNoticeClose:g,onAllNoticeRemoved:b,stack:d});return f?f(n,{prefixCls:r,key:e}):n})),i)}),Ye=[`getContainer`,`motion`,`prefixCls`,`maxCount`,`className`,`style`,`onAllRemoved`,`stack`,`renderNotifications`],Xe=function(){return document.body},Ze=0;function Qe(){var e={};return[...arguments].forEach(function(t){t&&Object.keys(t).forEach(function(n){var r=t[n];r!==void 0&&(e[n]=r)})}),e}function $e(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},t=e.getContainer,n=t===void 0?Xe:t,r=e.motion,i=e.prefixCls,a=e.maxCount,o=e.className,s=e.style,c=e.onAllRemoved,l=e.stack,u=e.renderNotifications,d=pe(e,Ye),p=D(M.useState(),2),m=p[0],h=p[1],g=M.useRef(),_=M.createElement(Je,{container:m,ref:g,prefixCls:i,motion:r,maxCount:a,className:o,style:s,onAllRemoved:c,stack:l,renderNotifications:u}),v=D(M.useState([]),2),y=v[0],b=v[1],x=f(function(e){var t=Qe(d,e);(t.key===null||t.key===void 0)&&(t.key=`rc-notification-${Ze}`,Ze+=1),b(function(e){return[].concat(ye(e),[{type:`open`,config:t}])})}),S=M.useMemo(function(){return{open:x,close:function(e){b(function(t){return[].concat(ye(t),[{type:`close`,key:e}])})},destroy:function(){b(function(e){return[].concat(ye(e),[{type:`destroy`}])})}}},[]);return M.useEffect(function(){h(n())}),M.useEffect(function(){if(g.current&&y.length){y.forEach(function(e){switch(e.type){case`open`:g.current.open(e.config);break;case`close`:g.current.close(e.key);break;case`destroy`:g.current.destroy();break}});var e,t;b(function(n){return(e!==n||!t)&&(e=n,t=n.filter(function(e){return!y.includes(e)})),t})}},[y]),[S,_]}function et(e){if(!e)return;let{closable:t,closeIcon:n}=e;return{closable:t,closeIcon:n}}function tt(e){let{closable:t,closeIcon:n}=e||{};return M.useMemo(()=>{if(!t&&(t===!1||n===!1||n===null))return!1;if(t===void 0&&n===void 0)return null;let e={closeIcon:typeof n!=`boolean`&&n!==null?n:void 0};return t&&typeof t==`object`&&(e=Object.assign(Object.assign({},e),t)),e},[t,n])}var nt={},rt=(e,t,n=nt)=>{let r=tt(e),i=tt(t),[a]=w(`global`,p.global),o=typeof r==`boolean`?!1:!!r?.disabled,s=M.useMemo(()=>Object.assign({closeIcon:M.createElement(he,null)},n),[n]),c=M.useMemo(()=>r===!1?!1:r?me(s,i,r):i===!1?!1:i?me(s,i):s.closable?s:!1,[r,i,s]);return M.useMemo(()=>{if(c===!1)return[!1,null,o,{}];let{closeIconRender:e}=s,{closeIcon:t}=c,n=t,r=k(c,!0);return n!=null&&(e&&(n=e(t)),n=M.isValidElement(n)?M.cloneElement(n,Object.assign(Object.assign(Object.assign({},n.props),{"aria-label":n.props?.[`aria-label`]??a.close}),r)):M.createElement(`span`,Object.assign({"aria-label":a.close},r),n)),[!0,n,o,r]},[o,a.close,c,s])},it=()=>{let[e,t]=M.useState([]);return[e,M.useCallback(e=>(t(t=>[].concat(ye(t),[e])),()=>{t(t=>t.filter(t=>t!==e))}),[])]},at=e=>{let{componentCls:t,iconCls:n,boxShadow:r,colorText:i,colorSuccess:a,colorError:o,colorWarning:s,colorInfo:l,fontSizeLG:u,motionEaseInOutCirc:d,motionDurationSlow:f,marginXS:p,paddingXS:m,borderRadiusLG:h,zIndexPopup:g,contentPadding:_,contentBg:v}=e,y=`${t}-notice`,b=new E(`MessageMoveIn`,{"0%":{padding:0,transform:`translateY(-100%)`,opacity:0},"100%":{padding:m,transform:`translateY(0)`,opacity:1}}),x=new E(`MessageMoveOut`,{"0%":{maxHeight:e.height,padding:m,opacity:1},"100%":{maxHeight:0,padding:0,opacity:0}}),S={padding:m,textAlign:`center`,[`${t}-custom-content`]:{display:`flex`,alignItems:`center`},[`${t}-custom-content > ${n}`]:{marginInlineEnd:p,fontSize:u},[`${y}-content`]:{display:`inline-block`,padding:_,background:v,borderRadius:h,boxShadow:r,pointerEvents:`all`},[`${t}-success > ${n}`]:{color:a},[`${t}-error > ${n}`]:{color:o},[`${t}-warning > ${n}`]:{color:s},[`${t}-info > ${n}, ${t}-loading > ${n}`]:{color:l}};return[{[t]:Object.assign(Object.assign({},c(e)),{color:i,position:`fixed`,top:p,width:`100%`,pointerEvents:`none`,zIndex:g,[`${t}-move-up`]:{animationFillMode:`forwards`},[` ${t}-move-up-appear, ${t}-move-up-enter `]:{animationName:b,animationDuration:f,animationPlayState:`paused`,animationTimingFunction:d},[` ${t}-move-up-appear${t}-move-up-appear-active, ${t}-move-up-enter${t}-move-up-enter-active `]:{animationPlayState:`running`},[`${t}-move-up-leave`]:{animationName:x,animationDuration:f,animationPlayState:`paused`,animationTimingFunction:d},[`${t}-move-up-leave${t}-move-up-leave-active`]:{animationPlayState:`running`},"&-rtl":{direction:`rtl`,span:{direction:`rtl`}}})},{[t]:{[`${y}-wrapper`]:Object.assign({},S)}},{[`${t}-notice-pure-panel`]:Object.assign(Object.assign({},S),{padding:0,textAlign:`start`})}]},ot=we(`Message`,e=>at(h(e,{height:150})),e=>({zIndexPopup:e.zIndexPopupBase+fe+10,contentBg:e.colorBgElevated,contentPadding:`${(e.controlHeightLG-e.fontSize*e.lineHeight)/2}px ${e.paddingSM}px`})),st={info:M.createElement(Re,null),success:M.createElement(Pe,null),error:M.createElement(de,null),warning:M.createElement(Ie,null),loading:M.createElement(ve,null)},ct=({prefixCls:e,type:t,icon:n,children:r})=>M.createElement(`div`,{className:(0,N.default)(`${e}-custom-content`,`${e}-${t}`)},n||st[t],M.createElement(`span`,null,r));function lt(e,t){return{motionName:t??`${e}-move-up`}}function ut(e){let t,n=new Promise(n=>{t=e(()=>{n(!0)})}),r=()=>{t?.()};return r.then=(e,t)=>n.then(e,t),r.promise=n,r}var dt=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i{let n=A(t),[r,i,a]=ot(t,n);return r(M.createElement(Ve,{classNames:{list:(0,N.default)(i,a,n)}},e))},ht=(e,{prefixCls:t,key:n})=>M.createElement(mt,{prefixCls:t,key:n},e),gt=M.forwardRef((e,t)=>{let{top:n,prefixCls:r,getContainer:i,maxCount:a,duration:o=pt,rtl:s,transitionName:c,onAllRemoved:l}=e,{getPrefixCls:u,getPopupContainer:d,message:f,direction:p}=M.useContext(De),m=r||u(`message`),[h,g]=$e({prefixCls:m,style:()=>({left:`50%`,transform:`translateX(-50%)`,top:n??ft}),className:()=>(0,N.default)({[`${m}-rtl`]:s??p===`rtl`}),motion:()=>lt(m,c),closable:!1,closeIcon:M.createElement(`span`,{className:`${m}-close-x`},M.createElement(he,{className:`${m}-close-icon`})),duration:o,getContainer:()=>i?.()||d?.()||document.body,maxCount:a,onAllRemoved:l,renderNotifications:ht});return M.useImperativeHandle(t,()=>Object.assign(Object.assign({},h),{prefixCls:m,message:f})),g}),_t=0;function vt(e){let t=M.useRef(null);return m(`Message`),[M.useMemo(()=>{let e=e=>{var n;(n=t.current)==null||n.close(e)},n=n=>{if(!t.current){let e=()=>{};return e.then=()=>{},e}let{open:r,prefixCls:i,message:a}=t.current,o=`${i}-notice`,{content:s,icon:c,type:l,key:u,className:d,style:f,onClose:p}=n,m=dt(n,[`content`,`icon`,`type`,`key`,`className`,`style`,`onClose`]),h=u;return h??=(_t+=1,`antd-message-${_t}`),ut(t=>(r(Object.assign(Object.assign({},m),{key:h,content:M.createElement(ct,{prefixCls:i,type:l,icon:c},s),placement:`top`,className:(0,N.default)(l&&`${o}-${l}`,d,a?.className),style:Object.assign(Object.assign({},a?.style),f),onClose:()=>{p?.(),t()}})),()=>{e(h)}))},r={open:n,destroy:n=>{var r;n===void 0?(r=t.current)==null||r.destroy():e(n)}};return[`info`,`success`,`warning`,`error`,`loading`].forEach(e=>{r[e]=(t,r,i)=>{let a;a=t&&typeof t==`object`&&`content`in t?t:{content:t};let o,s;typeof r==`function`?s=r:(o=r,s=i);let c=Object.assign(Object.assign({onClose:s,duration:o},a),{type:e});return n(c)}}),r},[]),M.createElement(gt,Object.assign({key:`message-holder`},e,{ref:t}))]}function yt(e){return vt(e)}var bt=new E(`antFadeIn`,{"0%":{opacity:0},"100%":{opacity:1}}),xt=new E(`antFadeOut`,{"0%":{opacity:1},"100%":{opacity:0}}),St=(e,t=!1)=>{let{antCls:n}=e,r=`${n}-fade`,i=t?`&`:``;return[ee(r,bt,xt,e.motionDurationMid,t),{[` ${i}${r}-enter, ${i}${r}-appear `]:{opacity:0,animationTimingFunction:`linear`},[`${i}${r}-leave`]:{animationTimingFunction:`linear`}}]},Ct=e=>typeof e?.then==`function`,P=e=>{let{type:t,children:n,prefixCls:r,buttonProps:i,close:a,autoFocus:s,emitEvent:c,isSilent:l,quitOnNullishReturnValue:u,actionFn:d}=e,f=M.useRef(!1),p=M.useRef(null),[m,h]=b(!1),g=(...e)=>{a?.apply(void 0,e)};M.useEffect(()=>{let e=null;return s&&(e=setTimeout(()=>{var e;(e=p.current)==null||e.focus({preventScroll:!0})})),()=>{e&&clearTimeout(e)}},[s]);let _=e=>{Ct(e)&&(h(!0),e.then((...e)=>{h(!1,!0),g.apply(void 0,e),f.current=!1},e=>{if(h(!1,!0),f.current=!1,!l?.())return Promise.reject(e)}))};return M.createElement(o,Object.assign({},T(t),{onClick:e=>{if(f.current)return;if(f.current=!0,!d){g();return}let t;if(c){if(t=d(e),u&&!Ct(t)){f.current=!1,g(e);return}}else if(d.length)t=d(a),f.current=!1;else if(t=d(),!Ct(t)){g();return}_(t)},loading:m,prefixCls:r},i,{ref:p}),n)},wt=M.createContext({}),{Provider:Tt}=wt,Et=()=>{let{autoFocusButton:e,cancelButtonProps:t,cancelTextLocale:n,isSilent:r,mergedOkCancel:i,rootPrefixCls:a,close:o,onCancel:s,onConfirm:c}=(0,M.useContext)(wt);return i?M.createElement(P,{isSilent:r,actionFn:s,close:(...e)=>{o?.apply(void 0,e),c?.(!1)},autoFocus:e===`cancel`,buttonProps:t,prefixCls:`${a}-btn`},n):null},Dt=()=>{let{autoFocusButton:e,close:t,isSilent:n,okButtonProps:r,rootPrefixCls:i,okTextLocale:a,okType:o,onConfirm:s,onOk:c}=(0,M.useContext)(wt);return M.createElement(P,{isSilent:n,type:o||`primary`,actionFn:c,close:(...e)=>{t?.apply(void 0,e),s?.(!0)},autoFocus:e===`ok`,buttonProps:r,prefixCls:`${i}-btn`},a)},Ot=M.createContext({});function kt(e,t,n){var r=t;return!r&&n&&(r=`${e}-${n}`),r}function At(e,t){var n=e[`page${t?`Y`:`X`}Offset`],r=`scroll${t?`Top`:`Left`}`;if(typeof n!=`number`){var i=e.document;n=i.documentElement[r],typeof n!=`number`&&(n=i.body[r])}return n}function jt(e){var t=e.getBoundingClientRect(),n={left:t.left,top:t.top},r=e.ownerDocument,i=r.defaultView||r.parentWindow;return n.left+=At(i),n.top+=At(i,!0),n}var Mt=M.memo(function(e){return e.children},function(e,t){return!t.shouldUpdate}),Nt={width:0,height:0,overflow:`hidden`,outline:`none`},Pt={outline:`none`},Ft=M.forwardRef(function(e,t){var n=e.prefixCls,r=e.className,i=e.style,a=e.title,o=e.ariaId,s=e.footer,c=e.closable,u=e.closeIcon,d=e.onClose,f=e.children,p=e.bodyStyle,m=e.bodyProps,h=e.modalRender,_=e.onMouseDown,v=e.onMouseUp,y=e.holderRef,b=e.visible,x=e.forceRender,S=e.width,C=e.height,w=e.classNames,ee=e.styles,te=M.useContext(Ot).panel,T=Ce(y,te),E=(0,M.useRef)(),ne=(0,M.useRef)();M.useImperativeHandle(t,function(){return{focus:function(){var e;(e=E.current)==null||e.focus({preventScroll:!0})},changeActive:function(e){var t=document.activeElement;e&&t===ne.current?E.current.focus({preventScroll:!0}):!e&&t===E.current&&ne.current.focus({preventScroll:!0})}}});var re={};S!==void 0&&(re.width=S),C!==void 0&&(re.height=C);var D=s?M.createElement(`div`,{className:(0,N.default)(`${n}-footer`,w?.footer),style:l({},ee?.footer)},s):null,ie=a?M.createElement(`div`,{className:(0,N.default)(`${n}-header`,w?.header),style:l({},ee?.header)},M.createElement(`div`,{className:`${n}-title`,id:o},a)):null,ae=(0,M.useMemo)(function(){return ue(c)===`object`&&c!==null?c:c?{closeIcon:u??M.createElement(`span`,{className:`${n}-close-x`})}:{}},[c,u,n]),oe=k(ae,!0),O=ue(c)===`object`&&c.disabled,se=c?M.createElement(`button`,g({type:`button`,onClick:d,"aria-label":`Close`},oe,{className:`${n}-close`,disabled:O}),ae.closeIcon):null,ce=M.createElement(`div`,{className:(0,N.default)(`${n}-content`,w?.content),style:ee?.content},se,ie,M.createElement(`div`,g({className:(0,N.default)(`${n}-body`,w?.body),style:l(l({},p),ee?.body)},m),f),D);return M.createElement(`div`,{key:`dialog-element`,role:`dialog`,"aria-labelledby":a?o:null,"aria-modal":`true`,ref:T,style:l(l({},i),re),className:(0,N.default)(n,r),onMouseDown:_,onMouseUp:v},M.createElement(`div`,{ref:E,tabIndex:0,style:Pt},M.createElement(Mt,{shouldUpdate:b||x},h?h(ce):ce)),M.createElement(`div`,{tabIndex:0,ref:ne,style:Nt}))}),It=M.forwardRef(function(e,t){var n=e.prefixCls,r=e.title,i=e.style,a=e.className,o=e.visible,s=e.forceRender,c=e.destroyOnClose,u=e.motionName,d=e.ariaId,f=e.onVisibleChanged,p=e.mousePosition,m=(0,M.useRef)(),h=D(M.useState(),2),_=h[0],v=h[1],y={};_&&(y.transformOrigin=_);function b(){var e=jt(m.current);v(p&&(p.x||p.y)?`${p.x-e.left}px ${p.y-e.top}px`:``)}return M.createElement(Se,{visible:o,onVisibleChanged:f,onAppearPrepare:b,onEnterPrepare:b,forceRender:s,motionName:u,removeOnLeave:c,ref:m},function(o,s){var c=o.className,u=o.style;return M.createElement(Ft,g({},e,{ref:t,title:r,ariaId:d,prefixCls:n,holderRef:s,style:l(l(l({},u),i),y),className:(0,N.default)(a,c)}))})});It.displayName=`Content`;var Lt=function(e){var t=e.prefixCls,n=e.style,r=e.visible,i=e.maskProps,a=e.motionName,o=e.className;return M.createElement(Se,{key:`mask`,visible:r,motionName:a,leavedClassName:`${t}-mask-hidden`},function(e,r){var a=e.className,s=e.style;return M.createElement(`div`,g({ref:r,style:l(l({},s),n),className:(0,N.default)(`${t}-mask`,a,o)},i))})},Rt=function(e){var t=e.prefixCls,n=t===void 0?`rc-dialog`:t,r=e.zIndex,i=e.visible,a=i===void 0?!1:i,o=e.keyboard,s=o===void 0?!0:o,c=e.focusTriggerAfterClose,u=c===void 0?!0:c,f=e.wrapStyle,p=e.wrapClassName,m=e.wrapProps,h=e.onClose,_=e.afterOpenChange,v=e.afterClose,y=e.transitionName,b=e.animation,x=e.closable,S=x===void 0?!0:x,C=e.mask,w=C===void 0?!0:C,ee=e.maskTransitionName,te=e.maskAnimation,T=e.maskClosable,E=T===void 0?!0:T,ne=e.maskStyle,re=e.maskProps,ae=e.rootClassName,oe=e.classNames,O=e.styles,se=(0,M.useRef)(),ce=(0,M.useRef)(),le=(0,M.useRef)(),ue=D(M.useState(a),2),A=ue[0],j=ue[1],de=d();function fe(){_e(ce.current,document.activeElement)||(se.current=document.activeElement)}function pe(){if(!_e(ce.current,document.activeElement)){var e;(e=le.current)==null||e.focus()}}function me(e){if(e)pe();else{if(j(!1),w&&se.current&&u){try{se.current.focus({preventScroll:!0})}catch{}se.current=null}A&&v?.()}_?.(e)}function he(e){h?.(e)}var ge=(0,M.useRef)(!1),ve=(0,M.useRef)(),ye=function(){clearTimeout(ve.current),ge.current=!0},be=function(){ve.current=setTimeout(function(){ge.current=!1})},xe=null;E&&(xe=function(e){ge.current?ge.current=!1:ce.current===e.target&&he(e)});function Se(e){if(s&&e.keyCode===ie.ESC){e.stopPropagation(),he(e);return}a&&e.keyCode===ie.TAB&&le.current.changeActive(!e.shiftKey)}(0,M.useEffect)(function(){a&&(j(!0),fe())},[a]),(0,M.useEffect)(function(){return function(){clearTimeout(ve.current)}},[]);var Ce=l(l(l({zIndex:r},f),O?.wrapper),{},{display:A?null:`none`});return M.createElement(`div`,g({className:(0,N.default)(`${n}-root`,ae)},k(e,{data:!0})),M.createElement(Lt,{prefixCls:n,visible:w&&a,motionName:kt(n,ee,te),style:l(l({zIndex:r},ne),O?.mask),maskProps:re,className:oe?.mask}),M.createElement(`div`,g({tabIndex:-1,onKeyDown:Se,className:(0,N.default)(`${n}-wrap`,p,oe?.wrapper),ref:ce,onClick:xe,style:Ce},m),M.createElement(It,g({},e,{onMouseDown:ye,onMouseUp:be,ref:le,closable:S,ariaId:de,prefixCls:n,visible:a&&A,onClose:he,onVisibleChanged:me,motionName:kt(n,y,b)}))))},zt=function(e){var t=e.visible,n=e.getContainer,r=e.forceRender,i=e.destroyOnClose,a=i===void 0?!1:i,o=e.afterClose,s=e.panelRef,c=D(M.useState(t),2),l=c[0],d=c[1],f=M.useMemo(function(){return{panel:s}},[s]);return M.useEffect(function(){t&&d(!0)},[t]),!r&&a&&!l?null:M.createElement(Ot.Provider,{value:f},M.createElement(u,{open:t||r||l,autoDestroy:!1,getContainer:n,autoLock:t||l},M.createElement(Rt,g({},e,{destroyOnClose:a,afterClose:function(){o?.(),d(!1)}}))))};zt.displayName=`Dialog`;var Bt=zt;function Vt(){}var Ht=M.createContext({add:Vt,remove:Vt});function Ut(e){let t=M.useContext(Ht),n=M.useRef(null);return f(r=>{if(r){let i=e?r.querySelector(e):r;i&&(t.add(i),n.current=i)}else t.remove(n.current)})}var Wt=()=>{let{cancelButtonProps:e,cancelTextLocale:t,onCancel:n}=(0,M.useContext)(wt);return M.createElement(o,Object.assign({onClick:n},e),t)},Gt=()=>{let{confirmLoading:e,okButtonProps:t,okType:n,okTextLocale:r,onOk:i}=(0,M.useContext)(wt);return M.createElement(o,Object.assign({},T(n),{loading:e,onClick:i},t),r)};function Kt(e,t){return M.createElement(`span`,{className:`${e}-close-x`},t||M.createElement(he,{className:`${e}-close-icon`}))}var qt=e=>{let{okText:t,okType:n=`primary`,cancelText:r,confirmLoading:i,onOk:a,onCancel:o,okButtonProps:s,cancelButtonProps:c,footer:l}=e,[u]=w(`Modal`,te()),d=t||u?.okText,f=r||u?.cancelText,p=M.useMemo(()=>({confirmLoading:i,okButtonProps:s,cancelButtonProps:c,okTextLocale:d,cancelTextLocale:f,okType:n,onOk:a,onCancel:o}),[i,s,c,d,f,n,a,o]),m;return typeof l==`function`||l===void 0?(m=M.createElement(M.Fragment,null,M.createElement(Wt,null),M.createElement(Gt,null)),typeof l==`function`&&(m=l(m,{OkBtn:Gt,CancelBtn:Wt})),m=M.createElement(Tt,{value:p},m)):m=l,M.createElement(x,{disabled:!1},m)};function Jt(e){return{position:e,inset:0}}var Yt=e=>{let{componentCls:t,antCls:n}=e;return[{[`${t}-root`]:{[`${t}${n}-zoom-enter, ${t}${n}-zoom-appear`]:{transform:`none`,opacity:0,animationDuration:e.motionDurationSlow,userSelect:`none`},[`${t}${n}-zoom-leave ${t}-content`]:{pointerEvents:`none`},[`${t}-mask`]:Object.assign(Object.assign({},Jt(`fixed`)),{zIndex:e.zIndexPopupBase,height:`100%`,backgroundColor:e.colorBgMask,pointerEvents:`none`,[`${t}-hidden`]:{display:`none`}}),[`${t}-wrap`]:Object.assign(Object.assign({},Jt(`fixed`)),{zIndex:e.zIndexPopupBase,overflow:`auto`,outline:0,WebkitOverflowScrolling:`touch`})}},{[`${t}-root`]:St(e)}]},Xt=e=>{let{componentCls:t}=e;return[{[`${t}-root`]:{[`${t}-wrap-rtl`]:{direction:`rtl`},[`${t}-centered`]:{textAlign:`center`,"&::before":{display:`inline-block`,width:0,height:`100%`,verticalAlign:`middle`,content:`""`},[t]:{top:0,display:`inline-block`,paddingBottom:0,textAlign:`start`,verticalAlign:`middle`}},[`@media (max-width: ${e.screenSMMax}px)`]:{[t]:{maxWidth:`calc(100vw - 16px)`,margin:`${O(e.marginXS)} auto`},[`${t}-centered`]:{[t]:{flex:1}}}}},{[t]:Object.assign(Object.assign({},c(e)),{pointerEvents:`none`,position:`relative`,top:100,width:`auto`,maxWidth:`calc(100vw - ${O(e.calc(e.margin).mul(2).equal())})`,margin:`0 auto`,paddingBottom:e.paddingLG,[`${t}-title`]:{margin:0,color:e.titleColor,fontWeight:e.fontWeightStrong,fontSize:e.titleFontSize,lineHeight:e.titleLineHeight,wordWrap:`break-word`},[`${t}-content`]:{position:`relative`,backgroundColor:e.contentBg,backgroundClip:`padding-box`,border:0,borderRadius:e.borderRadiusLG,boxShadow:e.boxShadow,pointerEvents:`auto`,padding:e.contentPadding},[`${t}-close`]:Object.assign({position:`absolute`,top:e.calc(e.modalHeaderHeight).sub(e.modalCloseBtnSize).div(2).equal(),insetInlineEnd:e.calc(e.modalHeaderHeight).sub(e.modalCloseBtnSize).div(2).equal(),zIndex:e.calc(e.zIndexPopupBase).add(10).equal(),padding:0,color:e.modalCloseIconColor,fontWeight:e.fontWeightStrong,lineHeight:1,textDecoration:`none`,background:`transparent`,borderRadius:e.borderRadiusSM,width:e.modalCloseBtnSize,height:e.modalCloseBtnSize,border:0,outline:0,cursor:`pointer`,transition:`color ${e.motionDurationMid}, background-color ${e.motionDurationMid}`,"&-x":{display:`flex`,fontSize:e.fontSizeLG,fontStyle:`normal`,lineHeight:O(e.modalCloseBtnSize),justifyContent:`center`,textTransform:`none`,textRendering:`auto`},"&:disabled":{pointerEvents:`none`},"&:hover":{color:e.modalCloseIconHoverColor,backgroundColor:e.colorBgTextHover,textDecoration:`none`},"&:active":{backgroundColor:e.colorBgTextActive}},C(e)),[`${t}-header`]:{color:e.colorText,background:e.headerBg,borderRadius:`${O(e.borderRadiusLG)} ${O(e.borderRadiusLG)} 0 0`,marginBottom:e.headerMarginBottom,padding:e.headerPadding,borderBottom:e.headerBorderBottom},[`${t}-body`]:{fontSize:e.fontSize,lineHeight:e.lineHeight,wordWrap:`break-word`,padding:e.bodyPadding,[`${t}-body-skeleton`]:{width:`100%`,height:`100%`,display:`flex`,justifyContent:`center`,alignItems:`center`,margin:`${O(e.margin)} auto`}},[`${t}-footer`]:{textAlign:`end`,background:e.footerBg,marginTop:e.footerMarginTop,padding:e.footerPadding,borderTop:e.footerBorderTop,borderRadius:e.footerBorderRadius,[`> ${e.antCls}-btn + ${e.antCls}-btn`]:{marginInlineStart:e.marginXS}},[`${t}-open`]:{overflow:`hidden`}})},{[`${t}-pure-panel`]:{top:`auto`,padding:0,display:`flex`,flexDirection:`column`,[`${t}-content, ${t}-body, ${t}-confirm-body-wrapper`]:{display:`flex`,flexDirection:`column`,flex:`auto`},[`${t}-confirm-body`]:{marginBottom:`auto`}}}]},Zt=e=>{let{componentCls:t}=e;return{[`${t}-root`]:{[`${t}-wrap-rtl`]:{direction:`rtl`,[`${t}-confirm-body`]:{direction:`rtl`}}}}},Qt=e=>{let{componentCls:t}=e,n=be(e),r=Object.assign({},n);delete r.xs;let i=`--${t.replace(`.`,``)}-`,a=Object.keys(r).map(e=>({[`@media (min-width: ${O(r[e])})`]:{width:`var(${i}${e}-width)`}}));return{[`${t}-root`]:{[t]:[].concat(ye(Object.keys(n).map((e,t)=>{let r=Object.keys(n)[t-1];return r?{[`${i}${e}-width`]:`var(${i}${r}-width)`}:null})),[{width:`var(${i}xs-width)`}],ye(a))}}},$t=e=>{let t=e.padding,n=e.fontSizeHeading5,r=e.lineHeightHeading5;return h(e,{modalHeaderHeight:e.calc(e.calc(r).mul(n).equal()).add(e.calc(t).mul(2).equal()).equal(),modalFooterBorderColorSplit:e.colorSplit,modalFooterBorderStyle:e.lineType,modalFooterBorderWidth:e.lineWidth,modalCloseIconColor:e.colorIcon,modalCloseIconHoverColor:e.colorIconHover,modalCloseBtnSize:e.controlHeight,modalConfirmIconSize:e.fontHeight,modalTitleHeight:e.calc(e.titleFontSize).mul(e.titleLineHeight).equal()})},en=e=>({footerBg:`transparent`,headerBg:e.colorBgElevated,titleLineHeight:e.lineHeightHeading5,titleFontSize:e.fontSizeHeading5,contentBg:e.colorBgElevated,titleColor:e.colorTextHeading,contentPadding:e.wireframe?0:`${O(e.paddingMD)} ${O(e.paddingContentHorizontalLG)}`,headerPadding:e.wireframe?`${O(e.padding)} ${O(e.paddingLG)}`:0,headerBorderBottom:e.wireframe?`${O(e.lineWidth)} ${e.lineType} ${e.colorSplit}`:`none`,headerMarginBottom:e.wireframe?0:e.marginXS,bodyPadding:e.wireframe?e.paddingLG:0,footerPadding:e.wireframe?`${O(e.paddingXS)} ${O(e.padding)}`:0,footerBorderTop:e.wireframe?`${O(e.lineWidth)} ${e.lineType} ${e.colorSplit}`:`none`,footerBorderRadius:e.wireframe?`0 0 ${O(e.borderRadiusLG)} ${O(e.borderRadiusLG)}`:0,footerMarginTop:e.wireframe?0:e.marginSM,confirmBodyPadding:e.wireframe?`${O(e.padding*2)} ${O(e.padding*2)} ${O(e.paddingLG)}`:0,confirmIconMarginInlineEnd:e.wireframe?e.margin:e.marginSM,confirmBtnsMarginTop:e.wireframe?e.marginLG:e.marginSM}),tn=we(`Modal`,e=>{let t=$t(e);return[Xt(t),Zt(t),Yt(t),v(t,`zoom`),Qt(t)]},en,{unitless:{titleLineHeight:!0}}),nn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i{rn={x:e.pageX,y:e.pageY},setTimeout(()=>{rn=null},100)},!0);var an=e=>{let{prefixCls:t,className:n,rootClassName:r,open:i,wrapClassName:a,centered:o,getContainer:s,focusTriggerAfterClose:c=!0,style:l,visible:u,width:d=520,footer:f,classNames:p,styles:m,children:h,loading:g,confirmLoading:_,zIndex:v,mousePosition:y,onOk:b,onCancel:x,destroyOnHidden:S,destroyOnClose:C,panelRef:w=null,modalRender:ee}=e,te=nn(e,[`prefixCls`,`className`,`rootClassName`,`open`,`wrapClassName`,`centered`,`getContainer`,`focusTriggerAfterClose`,`style`,`visible`,`width`,`footer`,`classNames`,`styles`,`children`,`loading`,`confirmLoading`,`zIndex`,`mousePosition`,`onOk`,`onCancel`,`destroyOnHidden`,`destroyOnClose`,`panelRef`,`modalRender`]),{getPopupContainer:T,getPrefixCls:E,direction:re,modal:D}=M.useContext(De),ie=e=>{_||x?.(e)},O=e=>{b?.(e)},k=E(`modal`,t),se=E(),ce=A(k),[ue,j,de]=tn(k,ce),fe=(0,N.default)(a,{[`${k}-centered`]:o??D?.centered,[`${k}-wrap-rtl`]:re===`rtl`}),pe=f!==null&&!g?M.createElement(qt,Object.assign({},e,{onOk:O,onCancel:ie})):null,[me,_e,ve,ye]=rt(et(e),et(D),{closable:!0,closeIcon:M.createElement(he,{className:`${k}-close-icon`}),closeIconRender:e=>Kt(k,e)}),be=ee?e=>M.createElement(`div`,{className:`${k}-render`},ee(e)):void 0,xe=Ee(w,Ut(`.${k}-${ee?`render`:`content`}`)),[Se,Ce]=ge(`Modal`,v),[we,Te]=M.useMemo(()=>d&&typeof d==`object`?[void 0,d]:[d,void 0],[d]),Oe=M.useMemo(()=>{let e={};return Te&&Object.keys(Te).forEach(t=>{let n=Te[t];n!==void 0&&(e[`--${k}-${t}-width`]=typeof n==`number`?`${n}px`:n)}),e},[k,Te]);return ue(M.createElement(oe,{form:!0,space:!0},M.createElement(le.Provider,{value:Ce},M.createElement(Bt,Object.assign({width:we},te,{zIndex:Se,getContainer:s===void 0?T:s,prefixCls:k,rootClassName:(0,N.default)(j,r,de,ce),footer:pe,visible:i??u,mousePosition:y??rn,onClose:ie,closable:me&&Object.assign({disabled:ve,closeIcon:_e},ye),closeIcon:_e,focusTriggerAfterClose:c,transitionName:ne(se,`zoom`,e.transitionName),maskTransitionName:ne(se,`fade`,e.maskTransitionName),className:(0,N.default)(j,n,D?.className),style:Object.assign(Object.assign(Object.assign({},D?.style),l),Oe),classNames:Object.assign(Object.assign(Object.assign({},D?.classNames),p),{wrapper:(0,N.default)(fe,p?.wrapper)}),styles:Object.assign(Object.assign({},D?.styles),m),panelRef:xe,destroyOnClose:S??C,modalRender:be}),g?M.createElement(ae,{active:!0,title:!1,paragraph:{rows:4},className:`${k}-body-skeleton`}):h))))},on=e=>{let{componentCls:t,titleFontSize:n,titleLineHeight:r,modalConfirmIconSize:i,fontSize:a,lineHeight:o,modalTitleHeight:c,fontHeight:l,confirmBodyPadding:u}=e,d=`${t}-confirm`;return{[d]:{"&-rtl":{direction:`rtl`},[`${e.antCls}-modal-header`]:{display:`none`},[`${d}-body-wrapper`]:Object.assign({},s()),[`&${t} ${t}-body`]:{padding:u},[`${d}-body`]:{display:`flex`,flexWrap:`nowrap`,alignItems:`start`,[`> ${e.iconCls}`]:{flex:`none`,fontSize:i,marginInlineEnd:e.confirmIconMarginInlineEnd,marginTop:e.calc(e.calc(l).sub(i).equal()).div(2).equal()},[`&-has-title > ${e.iconCls}`]:{marginTop:e.calc(e.calc(c).sub(i).equal()).div(2).equal()}},[`${d}-paragraph`]:{display:`flex`,flexDirection:`column`,flex:`auto`,rowGap:e.marginXS,maxWidth:`calc(100% - ${O(e.marginSM)})`},[`${e.iconCls} + ${d}-paragraph`]:{maxWidth:`calc(100% - ${O(e.calc(e.modalConfirmIconSize).add(e.marginSM).equal())})`},[`${d}-title`]:{color:e.colorTextHeading,fontWeight:e.fontWeightStrong,fontSize:n,lineHeight:r},[`${d}-content`]:{color:e.colorText,fontSize:a,lineHeight:o},[`${d}-btns`]:{textAlign:`end`,marginTop:e.confirmBtnsMarginTop,[`${e.antCls}-btn + ${e.antCls}-btn`]:{marginBottom:0,marginInlineStart:e.marginXS}}},[`${d}-error ${d}-body > ${e.iconCls}`]:{color:e.colorError},[`${d}-warning ${d}-body > ${e.iconCls}, ${d}-confirm ${d}-body > ${e.iconCls}`]:{color:e.colorWarning},[`${d}-info ${d}-body > ${e.iconCls}`]:{color:e.colorInfo},[`${d}-success ${d}-body > ${e.iconCls}`]:{color:e.colorSuccess}}},sn=S([`Modal`,`confirm`],e=>on($t(e)),en,{order:-1e3}),cn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i{let{prefixCls:t,icon:n,okText:r,cancelText:i,confirmPrefixCls:a,type:o,okCancel:s,footer:c,locale:l}=e,u=cn(e,[`prefixCls`,`icon`,`okText`,`cancelText`,`confirmPrefixCls`,`type`,`okCancel`,`footer`,`locale`]),d=n;if(!n&&n!==null)switch(o){case`info`:d=M.createElement(Re,null);break;case`success`:d=M.createElement(Pe,null);break;case`error`:d=M.createElement(de,null);break;default:d=M.createElement(Ie,null)}let f=s??o===`confirm`,p=e.autoFocusButton===null?!1:e.autoFocusButton||`ok`,[m]=w(`Modal`),h=l||m,g=r||(f?h?.okText:h?.justOkText),_=i||h?.cancelText,v=M.useMemo(()=>Object.assign({autoFocusButton:p,cancelTextLocale:_,okTextLocale:g,mergedOkCancel:f},u),[p,_,g,f,u]),y=M.createElement(M.Fragment,null,M.createElement(Et,null),M.createElement(Dt,null)),b=e.title!==void 0&&e.title!==null,x=`${a}-body`;return M.createElement(`div`,{className:`${a}-body-wrapper`},M.createElement(`div`,{className:(0,N.default)(x,{[`${x}-has-title`]:b})},d,M.createElement(`div`,{className:`${a}-paragraph`},b&&M.createElement(`span`,{className:`${a}-title`},e.title),M.createElement(`div`,{className:`${a}-content`},e.content))),c===void 0||typeof c==`function`?M.createElement(Tt,{value:v},M.createElement(`div`,{className:`${a}-btns`},typeof c==`function`?c(y,{OkBtn:Dt,CancelBtn:Et}):y)):c,M.createElement(sn,{prefixCls:t}))},un=e=>{let{close:t,zIndex:n,maskStyle:r,direction:i,prefixCls:o,wrapClassName:s,rootPrefixCls:c,bodyStyle:l,closable:u=!1,onConfirm:d,styles:f,title:p}=e,m=`${o}-confirm`,h=e.width||416,g=e.style||{},_=e.mask===void 0?!0:e.mask,v=e.maskClosable===void 0?!1:e.maskClosable,y=(0,N.default)(m,`${m}-${e.type}`,{[`${m}-rtl`]:i===`rtl`},e.className),[,b]=a(),x=M.useMemo(()=>n===void 0?b.zIndexPopupBase+fe:n,[n,b]);return M.createElement(an,Object.assign({},e,{className:y,wrapClassName:(0,N.default)({[`${m}-centered`]:!!e.centered},s),onCancel:()=>{t?.({triggerCancel:!0}),d?.(!1)},title:p,footer:null,transitionName:ne(c||``,`zoom`,e.transitionName),maskTransitionName:ne(c||``,`fade`,e.maskTransitionName),mask:_,maskClosable:v,style:g,styles:Object.assign({body:l,mask:r},f),width:h,zIndex:x,closable:u}),M.createElement(ln,Object.assign({},e,{confirmPrefixCls:m})))},dn=e=>{let{rootPrefixCls:t,iconPrefixCls:n,direction:r,theme:i}=e;return M.createElement(se,{prefixCls:t,iconPrefixCls:n,direction:r,theme:i},M.createElement(un,Object.assign({},e)))},fn=[],pn=``;function mn(){return pn}var hn=e=>{let{prefixCls:t,getContainer:n,direction:r}=e,i=te(),a=(0,M.useContext)(De),o=mn()||a.getPrefixCls(),s=t||`${o}-modal`,c=n;return c===!1&&(c=void 0),M.createElement(dn,Object.assign({},e,{rootPrefixCls:o,prefixCls:s,iconPrefixCls:a.iconPrefixCls,theme:a.theme,direction:r??a.direction,locale:a.locale?.Modal??i,getContainer:c}))};function gn(e){let t=re(),n=document.createDocumentFragment(),r=Object.assign(Object.assign({},e),{close:l,open:!0}),a,o;function s(...t){var n;if(t.some(e=>e?.triggerCancel)){var r;(n=e.onCancel)==null||(r=n).call.apply(r,[e,()=>{}].concat(ye(t.slice(1))))}for(let e=0;e{clearTimeout(a),a=setTimeout(()=>{let r=t.getPrefixCls(void 0,mn()),a=t.getIconPrefixCls(),s=t.getTheme(),c=M.createElement(hn,Object.assign({},e));o=i()(M.createElement(se,{prefixCls:r,iconPrefixCls:a,theme:s},typeof t.holderRender==`function`?t.holderRender(c):c),n)})};function l(...t){r=Object.assign(Object.assign({},r),{open:!1,afterClose:()=>{typeof e.afterClose==`function`&&e.afterClose(),s.apply(this,t)}}),r.visible&&delete r.visible,c(r)}function u(e){r=typeof e==`function`?e(r):Object.assign(Object.assign({},r),e),c(r)}return c(r),fn.push(l),{destroy:l,update:u}}function _n(e){return Object.assign(Object.assign({},e),{type:`warning`})}function vn(e){return Object.assign(Object.assign({},e),{type:`info`})}function yn(e){return Object.assign(Object.assign({},e),{type:`success`})}function bn(e){return Object.assign(Object.assign({},e),{type:`error`})}function xn(e){return Object.assign(Object.assign({},e),{type:`confirm`})}function Sn({rootPrefixCls:e}){pn=e}var Cn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i{var{afterClose:n,config:r}=e,i=Cn(e,[`afterClose`,`config`]);let[a,o]=M.useState(!0),[s,c]=M.useState(r),{direction:l,getPrefixCls:u}=M.useContext(De),d=u(`modal`),f=u(),m=()=>{var e;n(),(e=s.afterClose)==null||e.call(s)},h=(...e)=>{var t;if(o(!1),e.some(e=>e?.triggerCancel)){var n;(t=s.onCancel)==null||(n=t).call.apply(n,[s,()=>{}].concat(ye(e.slice(1))))}};M.useImperativeHandle(t,()=>({destroy:h,update:e=>{c(t=>{let n=typeof e==`function`?e(t):e;return Object.assign(Object.assign({},t),n)})}}));let g=s.okCancel??s.type===`confirm`,[_]=w(`Modal`,p.Modal);return M.createElement(dn,Object.assign({prefixCls:d,rootPrefixCls:f},s,{close:h,open:a,afterClose:m,okText:s.okText||(g?_?.okText:_?.justOkText),direction:s.direction||l,cancelText:s.cancelText||_?.cancelText},i))}),Tn=0,En=M.memo(M.forwardRef((e,t)=>{let[n,r]=it();return M.useImperativeHandle(t,()=>({patchElement:r}),[r]),M.createElement(M.Fragment,null,n)}));function Dn(){let e=M.useRef(null),[t,n]=M.useState([]);M.useEffect(()=>{t.length&&(ye(t).forEach(e=>{e()}),n([]))},[t]);let r=M.useCallback(t=>function(r){Tn+=1;let i=M.createRef(),a,o=new Promise(e=>{a=e}),s=!1,c,l=M.createElement(wn,{key:`modal-${Tn}`,config:t(r),ref:i,afterClose:()=>{c?.()},isSilent:()=>s,onConfirm:e=>{a(e)}});return c=e.current?.patchElement(l),c&&fn.push(c),{destroy:()=>{function e(){var e;(e=i.current)==null||e.destroy()}i.current?e():n(t=>[].concat(ye(t),[e]))},update:e=>{function t(){var t;(t=i.current)==null||t.update(e)}i.current?t():n(e=>[].concat(ye(e),[t]))},then:e=>(s=!0,o.then(e))}},[]);return[M.useMemo(()=>({info:r(vn),success:r(yn),error:r(bn),warning:r(_n),confirm:r(xn)}),[r]),M.createElement(En,{key:`modal-holder`,ref:e})]}var On=e=>{let{componentCls:t,notificationMarginEdge:n,animationMaxHeight:r}=e,i=`${t}-notice`,a=new E(`antNotificationFadeIn`,{"0%":{transform:`translate3d(100%, 0, 0)`,opacity:0},"100%":{transform:`translate3d(0, 0, 0)`,opacity:1}}),o=new E(`antNotificationTopFadeIn`,{"0%":{top:-r,opacity:0},"100%":{top:0,opacity:1}}),s=new E(`antNotificationBottomFadeIn`,{"0%":{bottom:e.calc(r).mul(-1).equal(),opacity:0},"100%":{bottom:0,opacity:1}}),c=new E(`antNotificationLeftFadeIn`,{"0%":{transform:`translate3d(-100%, 0, 0)`,opacity:0},"100%":{transform:`translate3d(0, 0, 0)`,opacity:1}});return{[t]:{[`&${t}-top, &${t}-bottom`]:{marginInline:0,[i]:{marginInline:`auto auto`}},[`&${t}-top`]:{[`${t}-fade-enter${t}-fade-enter-active, ${t}-fade-appear${t}-fade-appear-active`]:{animationName:o}},[`&${t}-bottom`]:{[`${t}-fade-enter${t}-fade-enter-active, ${t}-fade-appear${t}-fade-appear-active`]:{animationName:s}},[`&${t}-topRight, &${t}-bottomRight`]:{[`${t}-fade-enter${t}-fade-enter-active, ${t}-fade-appear${t}-fade-appear-active`]:{animationName:a}},[`&${t}-topLeft, &${t}-bottomLeft`]:{marginRight:{value:0,_skip_check_:!0},marginLeft:{value:n,_skip_check_:!0},[i]:{marginInlineEnd:`auto`,marginInlineStart:0},[`${t}-fade-enter${t}-fade-enter-active, ${t}-fade-appear${t}-fade-appear-active`]:{animationName:c}}}}},kn=[`top`,`topLeft`,`topRight`,`bottom`,`bottomLeft`,`bottomRight`],An={topLeft:`left`,topRight:`right`,bottomLeft:`left`,bottomRight:`right`,top:`left`,bottom:`left`},jn=(e,t)=>{let{componentCls:n}=e;return{[`${n}-${t}`]:{[`&${n}-stack > ${n}-notice-wrapper`]:{[t.startsWith(`top`)?`top`:`bottom`]:0,[An[t]]:{value:0,_skip_check_:!0}}}}},Mn=e=>{let t={};for(let n=1;n ${e.componentCls}-notice`]:{opacity:0,transition:`opacity ${e.motionDurationMid}`}};return Object.assign({[`&:not(:nth-last-child(-n+${e.notificationStackLayer}))`]:{opacity:0,overflow:`hidden`,color:`transparent`,pointerEvents:`none`}},t)},Nn=e=>{let t={};for(let n=1;n{let{componentCls:t}=e;return Object.assign({[`${t}-stack`]:{[`& > ${t}-notice-wrapper`]:Object.assign({transition:`transform ${e.motionDurationSlow}, backdrop-filter 0s`,willChange:`transform, opacity`,position:`absolute`},Mn(e))},[`${t}-stack:not(${t}-stack-expanded)`]:{[`& > ${t}-notice-wrapper`]:Object.assign({},Nn(e))},[`${t}-stack${t}-stack-expanded`]:{[`& > ${t}-notice-wrapper`]:{"&:not(:nth-last-child(-n + 1))":{opacity:1,overflow:`unset`,color:`inherit`,pointerEvents:`auto`,[`& > ${e.componentCls}-notice`]:{opacity:1}},"&:after":{content:`""`,position:`absolute`,height:e.margin,width:`100%`,insetInline:0,bottom:e.calc(e.margin).mul(-1).equal(),background:`transparent`,pointerEvents:`auto`}}}},kn.map(t=>jn(e,t)).reduce((e,t)=>Object.assign(Object.assign({},e),t),{}))},Fn=e=>{let{iconCls:t,componentCls:n,boxShadow:r,fontSizeLG:i,notificationMarginBottom:a,borderRadiusLG:o,colorSuccess:s,colorInfo:c,colorWarning:l,colorError:u,colorTextHeading:d,notificationBg:f,notificationPadding:p,notificationMarginEdge:m,notificationProgressBg:h,notificationProgressHeight:g,fontSize:_,lineHeight:v,width:y,notificationIconSize:b,colorText:x,colorSuccessBg:S,colorErrorBg:w,colorInfoBg:ee,colorWarningBg:te}=e,T=`${n}-notice`;return{position:`relative`,marginBottom:a,marginInlineStart:`auto`,background:f,borderRadius:o,boxShadow:r,[T]:{padding:p,width:y,maxWidth:`calc(100vw - ${O(e.calc(m).mul(2).equal())})`,lineHeight:v,wordWrap:`break-word`,borderRadius:o,overflow:`hidden`,"&-success":S?{background:S}:{},"&-error":w?{background:w}:{},"&-info":ee?{background:ee}:{},"&-warning":te?{background:te}:{}},[`${T}-message`]:{color:d,fontSize:i,lineHeight:e.lineHeightLG},[`${T}-description`]:{fontSize:_,color:x,marginTop:e.marginXS},[`${T}-closable ${T}-message`]:{paddingInlineEnd:e.paddingLG},[`${T}-with-icon ${T}-message`]:{marginInlineStart:e.calc(e.marginSM).add(b).equal(),fontSize:i},[`${T}-with-icon ${T}-description`]:{marginInlineStart:e.calc(e.marginSM).add(b).equal(),fontSize:_},[`${T}-icon`]:{position:`absolute`,fontSize:b,lineHeight:1,[`&-success${t}`]:{color:s},[`&-info${t}`]:{color:c},[`&-warning${t}`]:{color:l},[`&-error${t}`]:{color:u}},[`${T}-close`]:Object.assign({position:`absolute`,top:e.notificationPaddingVertical,insetInlineEnd:e.notificationPaddingHorizontal,color:e.colorIcon,outline:`none`,width:e.notificationCloseButtonSize,height:e.notificationCloseButtonSize,borderRadius:e.borderRadiusSM,transition:`background-color ${e.motionDurationMid}, color ${e.motionDurationMid}`,display:`flex`,alignItems:`center`,justifyContent:`center`,background:`none`,border:`none`,"&:hover":{color:e.colorIconHover,backgroundColor:e.colorBgTextHover},"&:active":{backgroundColor:e.colorBgTextActive}},C(e)),[`${T}-progress`]:{position:`absolute`,display:`block`,appearance:`none`,inlineSize:`calc(100% - ${O(o)} * 2)`,left:{_skip_check_:!0,value:o},right:{_skip_check_:!0,value:o},bottom:0,blockSize:g,border:0,"&, &::-webkit-progress-bar":{borderRadius:o,backgroundColor:`rgba(0, 0, 0, 0.04)`},"&::-moz-progress-bar":{background:h},"&::-webkit-progress-value":{borderRadius:o,background:h}},[`${T}-actions`]:{float:`right`,marginTop:e.marginSM}}},In=e=>{let{componentCls:t,notificationMarginBottom:n,notificationMarginEdge:r,motionDurationMid:i,motionEaseInOut:a}=e,o=`${t}-notice`,s=new E(`antNotificationFadeOut`,{"0%":{maxHeight:e.animationMaxHeight,marginBottom:n},"100%":{maxHeight:0,marginBottom:0,paddingTop:0,paddingBottom:0,opacity:0}});return[{[t]:Object.assign(Object.assign({},c(e)),{position:`fixed`,zIndex:e.zIndexPopup,marginRight:{value:r,_skip_check_:!0},[`${t}-hook-holder`]:{position:`relative`},[`${t}-fade-appear-prepare`]:{opacity:`0 !important`},[`${t}-fade-enter, ${t}-fade-appear`]:{animationDuration:e.motionDurationMid,animationTimingFunction:a,animationFillMode:`both`,opacity:0,animationPlayState:`paused`},[`${t}-fade-leave`]:{animationTimingFunction:a,animationFillMode:`both`,animationDuration:i,animationPlayState:`paused`},[`${t}-fade-enter${t}-fade-enter-active, ${t}-fade-appear${t}-fade-appear-active`]:{animationPlayState:`running`},[`${t}-fade-leave${t}-fade-leave-active`]:{animationName:s,animationPlayState:`running`},"&-rtl":{direction:`rtl`,[`${o}-actions`]:{float:`left`}}})},{[t]:{[`${o}-wrapper`]:Fn(e)}}]},Ln=e=>({zIndexPopup:e.zIndexPopupBase+fe+50,width:384,colorSuccessBg:void 0,colorErrorBg:void 0,colorInfoBg:void 0,colorWarningBg:void 0}),Rn=e=>{let t=e.paddingMD,n=e.paddingLG;return h(e,{notificationBg:e.colorBgElevated,notificationPaddingVertical:t,notificationPaddingHorizontal:n,notificationIconSize:e.calc(e.fontSizeLG).mul(e.lineHeightLG).equal(),notificationCloseButtonSize:e.calc(e.controlHeightLG).mul(.55).equal(),notificationMarginBottom:e.margin,notificationPadding:`${O(e.paddingMD)} ${O(e.paddingContentHorizontalLG)}`,notificationMarginEdge:e.marginLG,animationMaxHeight:150,notificationStackLayer:3,notificationProgressHeight:2,notificationProgressBg:`linear-gradient(90deg, ${e.colorPrimaryBorderHover}, ${e.colorPrimary})`})},zn=we(`Notification`,e=>{let t=Rn(e);return[In(t),On(t),Pn(t)]},Ln);function Bn(e,t){return t===null||t===!1?null:t||M.createElement(he,{className:`${e}-close-icon`})}var Vn={success:Pe,info:Re,error:de,warning:Ie},Hn=e=>{let{prefixCls:t,icon:n,type:r,message:i,description:a,actions:o,role:s=`alert`}=e,c=null;return n?c=M.createElement(`span`,{className:`${t}-icon`},n):r&&(c=M.createElement(Vn[r]||null,{className:(0,N.default)(`${t}-icon`,`${t}-icon-${r}`)})),M.createElement(`div`,{className:(0,N.default)({[`${t}-with-icon`]:c}),role:s},c,M.createElement(`div`,{className:`${t}-message`},i),a&&M.createElement(`div`,{className:`${t}-description`},a),o&&M.createElement(`div`,{className:`${t}-actions`},o))};function Un(e,t,n){let r;switch(e){case`top`:r={left:`50%`,transform:`translateX(-50%)`,right:`auto`,top:t,bottom:`auto`};break;case`topLeft`:r={left:0,top:t,bottom:`auto`};break;case`topRight`:r={right:0,top:t,bottom:`auto`};break;case`bottom`:r={left:`50%`,transform:`translateX(-50%)`,right:`auto`,top:`auto`,bottom:n};break;case`bottomLeft`:r={left:0,top:`auto`,bottom:n};break;default:r={right:0,top:`auto`,bottom:n};break}return r}function Wn(e){return{motionName:`${e}-fade`}}function Gn(e,t,n){return e===void 0?t?.closeIcon===void 0?n?.closeIcon:t.closeIcon:e}var Kn=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i{let n=A(t),[r,i,a]=zn(t,n);return r(M.createElement(Ve,{classNames:{list:(0,N.default)(i,a,n)}},e))},Zn=(e,{prefixCls:t,key:n})=>M.createElement(Xn,{prefixCls:t,key:n},e),Qn=M.forwardRef((e,t)=>{let{top:n,bottom:r,prefixCls:i,getContainer:o,maxCount:s,rtl:c,onAllRemoved:l,stack:u,duration:d,pauseOnHover:f=!0,showProgress:p}=e,{getPrefixCls:m,getPopupContainer:h,notification:g,direction:_}=(0,M.useContext)(De),[,v]=a(),y=i||m(`notification`),[b,x]=$e({prefixCls:y,style:e=>Un(e,n??qn,r??qn),className:()=>(0,N.default)({[`${y}-rtl`]:c??_===`rtl`}),motion:()=>Wn(y),closable:!0,closeIcon:Bn(y),duration:d??Jn,getContainer:()=>o?.()||h?.()||document.body,maxCount:s,pauseOnHover:f,showProgress:p,onAllRemoved:l,renderNotifications:Zn,stack:u===!1?!1:{threshold:typeof u==`object`?u?.threshold:void 0,offset:8,gap:v.margin}});return M.useImperativeHandle(t,()=>Object.assign(Object.assign({},b),{prefixCls:y,notification:g})),x});function $n(e){let t=M.useRef(null);return m(`Notification`),[M.useMemo(()=>{let n=n=>{if(!t.current)return;let{open:r,prefixCls:i,notification:a}=t.current,o=`${i}-notice`,{message:s,description:c,icon:l,type:u,btn:d,actions:f,className:p,style:m,role:h=`alert`,closeIcon:g,closable:_}=n,v=Kn(n,[`message`,`description`,`icon`,`type`,`btn`,`actions`,`className`,`style`,`role`,`closeIcon`,`closable`]),y=f??d,b=Bn(o,Gn(g,e,a));return r(Object.assign(Object.assign({placement:e?.placement??Yn},v),{content:M.createElement(Hn,{prefixCls:o,icon:l,type:u,message:s,description:c,actions:y,role:h}),className:(0,N.default)(u&&`${o}-${u}`,p,a?.className),style:Object.assign(Object.assign({},a?.style),m),closeIcon:b,closable:_??!!b}))},r={open:n,destroy:e=>{var n,r;e===void 0?(r=t.current)==null||r.destroy():(n=t.current)==null||n.close(e)}};return[`success`,`info`,`warning`,`error`].forEach(e=>{r[e]=t=>n(Object.assign(Object.assign({},t),{type:e}))}),r},[]),M.createElement(Qn,Object.assign({key:`notification-holder`},e,{ref:t}))]}function er(e){return $n(e)}var tr=M.createContext({}),nr=M.createContext({message:{},notification:{},modal:{}}),rr=we(`App`,e=>{let{componentCls:t,colorText:n,fontSize:r,lineHeight:i,fontFamily:a}=e;return{[t]:{color:n,fontSize:r,lineHeight:i,fontFamily:a,[`&${t}-rtl`]:{direction:`rtl`}}}},()=>({})),ir=e=>{let{prefixCls:t,children:n,className:r,rootClassName:i,message:a,notification:o,style:s,component:c=`div`}=e,{direction:l,getPrefixCls:u}=(0,M.useContext)(De),d=u(`app`,t),[f,p,h]=rr(d),g=(0,N.default)(p,d,r,i,h,{[`${d}-rtl`]:l===`rtl`}),_=(0,M.useContext)(tr),v=M.useMemo(()=>({message:Object.assign(Object.assign({},_.message),a),notification:Object.assign(Object.assign({},_.notification),o)}),[a,o,_.message,_.notification]),[y,b]=yt(v.message),[x,S]=er(v.notification),[C,w]=Dn(),ee=M.useMemo(()=>({message:y,notification:x,modal:C}),[y,x,C]);m(`App`)(!(h&&c===!1),`usage`,"When using cssVar, ensure `component` is assigned a valid React component string.");let te=c===!1?M.Fragment:c,T={className:g,style:s};return f(M.createElement(nr.Provider,{value:ee},M.createElement(tr.Provider,{value:v},M.createElement(te,Object.assign({},c===!1?void 0:T),w,b,S,n))))},ar=()=>M.useContext(nr),or=ir;or.useApp=ar;var sr=(0,M.createContext)({});function cr(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;te.tagName===`STYLE`)}function br(e,t={}){if(!mr())return null;let{csp:n,prepend:r,priority:i=0}=t,a=vr(r),o=a===`prependQueue`,s=document.createElement(`style`);s.setAttribute(ur,a),o&&i&&s.setAttribute(dr,`${i}`),n?.nonce&&(s.nonce=n.nonce),s.innerHTML=e;let c=_r(t),{firstChild:l}=c;if(r){if(o){let e=(t.styles||yr(c)).filter(e=>{if(![`prepend`,`prependQueue`].includes(e.getAttribute(ur)))return!1;let t=Number(e.getAttribute(dr)||0);return i>=t});if(e.length)return c.insertBefore(s,e[e.length-1].nextSibling),s}c.insertBefore(s,l)}else c.appendChild(s);return s}function xr(e,t={}){let{styles:n}=t;return n||=yr(_r(t)),n.find(n=>n.getAttribute(gr(t))===e)}function Sr(e,t){let n=pr.get(e);if(!n||!hr(document,n)){let n=br(``,t);if(!n)return;let{parentNode:r}=n;pr.set(e,r),e.removeChild(n)}}function Cr(e,t,n={}){if(!mr())return null;let r=_r(n),i=yr(r),a={...n,styles:i};Sr(r,a);let o=xr(t,a);if(o)return a.csp?.nonce&&o.nonce!==a.csp.nonce&&(o.nonce=a.csp.nonce),o.innerHTML!==e&&(o.innerHTML=e),o;let s=br(e,a);return s?.setAttribute(gr(a),t),s}function wr(e){return e?.getRootNode?.()}function Tr(e){let t=wr(e);return typeof ShadowRoot<`u`&&t instanceof ShadowRoot?t:null}var Er={};function Dr(e,t){e||Er[t]||(Er[t]=!0)}function Or(e){return e.replace(/-(.)/g,(e,t)=>t.toUpperCase())}function kr(e,t){Dr(e,`[@ant-design/icons] ${t}`)}function Ar(e){return typeof e==`object`&&typeof e.name==`string`&&typeof e.theme==`string`&&(typeof e.icon==`object`||typeof e.icon==`function`)}function jr(e={}){return Object.keys(e).reduce((t,n)=>{let r=e[n];switch(n){case`class`:t.className=r,delete t.class;break;default:delete t[n],t[Or(n)]=r}return t},{})}function Mr(e,t,n){return n?M.createElement(e.tag,{key:t,...jr(e.attrs),...n},(e.children||[]).map((n,r)=>Mr(n,`${t}-${e.tag}-${r}`))):M.createElement(e.tag,{key:t,...jr(e.attrs)},(e.children||[]).map((n,r)=>Mr(n,`${t}-${e.tag}-${r}`)))}var Nr=` .anticon { display: inline-flex; align-items: center; color: inherit; font-style: normal; line-height: 0; text-align: center; text-transform: none; vertical-align: -0.125em; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } .anticon > * { line-height: 1; } .anticon svg { display: inline-block; vertical-align: inherit; } .anticon::before { display: none; } .anticon .anticon-icon { display: block; } .anticon[tabindex] { cursor: pointer; } .anticon-spin { -webkit-animation: loadingCircle 1s infinite linear; animation: loadingCircle 1s infinite linear; } @-webkit-keyframes loadingCircle { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } @keyframes loadingCircle { 100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } } `,Pr=e=>{let{csp:t,prefixCls:n,layer:r,zeroRuntime:i}=(0,M.useContext)(sr),a=Nr;n&&(a=a.replace(/anticon/g,n)),r&&(a=`@layer ${r} {\n${a}\n}`),(0,M.useEffect)(()=>{if(i)return;let n=e.current,o=Tr(n);Cr(a,`@ant-design-icons`,{prepend:!r,csp:t,attachTo:o})},[])},Fr=e=>{let{icon:t,className:n,onClick:r,style:i,primaryColor:a,secondaryColor:o,...s}=e,c=M.useRef(null);if(Pr(c),kr(Ar(t),`icon should be icon definiton, but got ${t}`),!Ar(t))return null;let l=t;return Mr(l.icon,`svg-${l.name}`,{className:n,onClick:r,style:i,"data-icon":l.name,width:`1em`,height:`1em`,fill:`currentColor`,"aria-hidden":`true`,...s,ref:c})};Fr.displayName=`IconReact`;function Ir(){return Ir=Object.assign?Object.assign.bind():function(e){for(var t=1;t{let{className:n,icon:r,spin:i,rotate:a,tabIndex:o,onClick:s,twoToneColor:c,...l}=e,{prefixCls:u=`anticon`,rootClassName:d}=M.useContext(sr),f=lr(d,u,{[`${u}-${r.name}`]:!!r.name,[`${u}-spin`]:!!i||r.name===`loading`},n),p=o;p===void 0&&s&&(p=-1);let m=a?{msTransform:`rotate(${a}deg)`,transform:`rotate(${a}deg)`}:void 0;return M.createElement(`span`,Ir({role:`img`,"aria-label":r.name},l,{ref:t,tabIndex:p,onClick:s,className:f}),M.createElement(Fr,{icon:r,style:m}))}),Rr=e(n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M917.7 148.8l-42.4-42.4c-1.6-1.6-3.6-2.3-5.7-2.3s-4.1.8-5.7 2.3l-76.1 76.1a199.27 199.27 0 00-112.1-34.3c-51.2 0-102.4 19.5-141.5 58.6L432.3 308.7a8.03 8.03 0 000 11.3L704 591.7c1.6 1.6 3.6 2.3 5.7 2.3 2 0 4.1-.8 5.7-2.3l101.9-101.9c68.9-69 77-175.7 24.3-253.5l76.1-76.1c3.1-3.2 3.1-8.3 0-11.4zM769.1 441.7l-59.4 59.4-186.8-186.8 59.4-59.4c24.9-24.9 58.1-38.7 93.4-38.7 35.3 0 68.4 13.7 93.4 38.7 24.9 24.9 38.7 58.1 38.7 93.4 0 35.3-13.8 68.4-38.7 93.4zm-190.2 105a8.03 8.03 0 00-11.3 0L501 613.3 410.7 523l66.7-66.7c3.1-3.1 3.1-8.2 0-11.3L441 408.6a8.03 8.03 0 00-11.3 0L363 475.3l-43-43a7.85 7.85 0 00-5.7-2.3c-2 0-4.1.8-5.7 2.3L206.8 534.2c-68.9 69-77 175.7-24.3 253.5l-76.1 76.1a8.03 8.03 0 000 11.3l42.4 42.4c1.6 1.6 3.6 2.3 5.7 2.3s4.1-.8 5.7-2.3l76.1-76.1c33.7 22.9 72.9 34.3 112.1 34.3 51.2 0 102.4-19.5 141.5-58.6l101.9-101.9c3.1-3.1 3.1-8.2 0-11.3l-43-43 66.7-66.7c3.1-3.1 3.1-8.2 0-11.3l-36.6-36.2zM441.7 769.1a131.32 131.32 0 01-93.4 38.7c-35.3 0-68.4-13.7-93.4-38.7a131.32 131.32 0 01-38.7-93.4c0-35.3 13.7-68.4 38.7-93.4l59.4-59.4 186.8 186.8-59.4 59.4z`}}]},name:`api`,theme:`outlined`}}))());function zr(){return zr=Object.assign?Object.assign.bind():function(e){for(var t=1;tM.createElement(Lr,zr({},e,{ref:t,icon:Rr.default}))),Vr=e(n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 110.8V792H136V270.8l-27.6-21.5 39.3-50.5 42.8 33.3h643.1l42.8-33.3 39.3 50.5-27.7 21.5zM833.6 232L512 482 190.4 232l-42.8-33.3-39.3 50.5 27.6 21.5 341.6 265.6a55.99 55.99 0 0068.7 0L888 270.8l27.6-21.5-39.3-50.5-42.7 33.2z`}}]},name:`mail`,theme:`outlined`}}))());function Hr(){return Hr=Object.assign?Object.assign.bind():function(e){for(var t=1;tM.createElement(Lr,Hr({},e,{ref:t,icon:Vr.default}))),Wr=e(n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z`}}]},name:`safety-certificate`,theme:`outlined`}}))());function Gr(){return Gr=Object.assign?Object.assign.bind():function(e){for(var t=1;tM.createElement(Lr,Gr({},e,{ref:t,icon:Wr.default}))),qr=e(n((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default={icon:{tag:`svg`,attrs:{viewBox:`64 64 896 896`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z`}}]},name:`user`,theme:`outlined`}}))());function Jr(){return Jr=Object.assign?Object.assign.bind():function(e){for(var t=1;tM.createElement(Lr,Jr({},e,{ref:t,icon:qr.default}))),Xr=`zh-CN`,Zr=[`zh-CN`,`en-US`],Qr={"zh-CN":{"common.account":`账号`,"common.addDomain":`添加域名`,"common.actions":`操作`,"common.cancel":`取消`,"common.confirm":`确认`,"common.copy":`复制`,"common.copied":`已复制`,"common.delete":`删除`,"common.details":`详情`,"common.edit":`修改`,"common.error":`操作失败`,"common.loadingConfig":`加载运行配置中`,"common.logout":`退出登录`,"common.manual":`手动`,"common.next":`下一步`,"common.notConfigured":`未配置`,"common.notFound":`暂无`,"common.previous":`上一步`,"common.refresh":`刷新`,"common.save":`保存`,"common.status":`状态`,"common.user":`用户`,"common.unsetSendingIp":`未设置发信 IP`,"shell.skipToMain":`跳至主要内容`,"shell.mainNavigation":`主导航`,"shell.openNavigation":`打开主导航`,"shell.closeNavigation":`关闭主导航`,"shell.accountMenu":`账户菜单`,"shell.envReady":`运行环境正常`,"shell.envNeedsSetup":`运行配置待完善`,"shell.loadingFailed":`控制台加载失败`,"shell.retry":`重试`,"shell.backToLogin":`返回登录`,"shell.forbiddenTitle":`无权访问`,"shell.forbiddenDescription":`该页面仅对系统管理员开放。`,"shell.notFoundTitle":`页面不存在`,"shell.notFoundDescription":`链接可能已失效,或页面地址输入有误。`,"shell.backOverview":`返回概览`,"shell.loadingConsole":`正在加载控制台`,"shell.loadingPage":`正在加载页面`,"auth.email":`邮箱`,"auth.emailPlaceholder":`name@example.com`,"auth.backToLogin":`返回登录`,"auth.forgotPassword":`忘记密码?`,"auth.forgotPasswordButton":`发送重置邮件`,"auth.forgotPasswordTitle":`找回密码`,"auth.login":`登录`,"auth.loginEyebrow":`Sign in`,"auth.loginTitle":`登录控制台`,"auth.newPassword":`新密码`,"auth.password":`密码`,"auth.register":`注册`,"auth.registerButton":`注册并进入`,"auth.registerEyebrow":`Register`,"auth.registerTitle":`创建账号`,"auth.resendVerification":`重发验证邮件`,"auth.resendVerificationButton":`发送验证邮件`,"auth.resendVerificationTitle":`重发验证邮件`,"auth.resetPasswordButton":`重置密码`,"auth.resetPasswordTitle":`重置密码`,"auth.resetTokenMissing":`重置链接缺少 token,请重新发起密码重置。`,"auth.submitLogin":`登录`,"auth.username":`用户名`,"auth.usernameOrEmail":`用户名或邮箱`,"auth.valueDns":`DNS 自动化`,"auth.valueIsolation":`多用户隔离`,"auth.valueObservability":`发送可观测`,"auth.subtitle":`发信域名、DNS、SMTP 与 API Token 的统一控制台`,"auth.requestFailed":`请求失败。`,"dashboard.title":`统计概览`,"dashboard.verifiedDomains":`已验证域名`,"dashboard.todaySent":`今日发送量`,"dashboard.successRate":`成功率`,"dashboard.bounceRate":`退信率`,"dashboard.complaintRate":`投诉率`,"dashboard.lastSentAt":`最近一次发送`,"dashboard.dnsIssues":`DNS 异常数量`,"dashboard.smtpStatus":`SMTP 状态`,"dashboard.smtpReady":`可用`,"dashboard.smtpNotConfigured":`未配置`,"dashboard.trend":`发送趋势`,"dashboard.statusDistribution":`状态分布`,"dashboard.domainRanking":`域名发送排行`,"dashboard.domainHealth":`域名健康`,"dashboard.hourlyHeatmap":`小时发送分布`,"dashboard.deliveryFunnel":`投递漏斗`,"dashboard.failureReasons":`失败原因排行`,"dashboard.recentFailures":`最近失败原因`,"dashboard.recentLogs":`最近发送记录`,"dashboard.noTrend":`暂无发送趋势数据`,"dashboard.noDomains":`暂无域名`,"dashboard.noFailures":`暂无失败记录`,"dashboard.defaultPasswordWarning":`当前仍在使用默认管理密码,请修改 .env 后重启服务。`,"dashboard.acceptedMail":`已接收邮件`,"dashboard.failedMail":`失败邮件`,"dashboard.dnsActionHint":`优先处理 DNS 异常域名,避免影响新域名投递。`,"dashboard.statusQueued":`已接收`,"dashboard.statusFailed":`失败`,"dashboard.statusUnknown":`未知`,"dashboard.stageSubmitted":`已提交`,"dashboard.stageAccepted":`已入队`,"dashboard.stageDelivered":`已送达`,"dashboard.stagePending":`等待投递`,"dashboard.stageFailed":`投递失败`,"dashboard.opens":`打开`,"dashboard.clicks":`点击`,"dashboard.openRate":`打开率`,"dashboard.clickRate":`点击率`,"dashboard.clickToOpenRate":`点击打开率`,"dashboard.unique":`独立`,"dashboard.total":`总计`,"dashboard.trackedDelivered":`已追踪送达`,"dashboard.measuredActivity":`互动次数`,"dashboard.proxyOpens":`代理打开`,"dashboard.scannerEvents":`扫描器事件`,"dashboard.engagementTrend":`打开与点击趋势`,"dashboard.topLinks":`链接点击排行`,"dashboard.link":`链接`,"dashboard.uniqueClicks":`独立点击`,"dashboard.totalClicks":`总点击`,"dashboard.lastClicked":`最近点击`,"dashboard.noEngagement":`暂无互动数据`,"domains.title":`发信域名`,"domains.domain":`域名`,"domains.senderHost":`发信主机`,"domains.sendingIp":`发信 IP`,"domains.dnsApi":`DNS API`,"domains.smtp":`SMTP`,"domains.lastSent":`最近发送`,"domains.overallStatus":`整体状态`,"domains.actions":`操作`,"domains.searchPlaceholder":`搜索域名或发信主机`,"domains.statusPlaceholder":`整体状态`,"domains.healthy":`健康`,"domains.pending":`等待生效`,"domains.needsAction":`需要处理`,"domains.waitingDns":`等待 DNS 生效`,"domains.sendable":`可发送`,"domains.waitingVerify":`待验证`,"domains.oneClickDns":`一键 DNS`,"domains.check":`检查`,"domains.test":`测试`,"domains.deleteConfirm":`确认删除该域名?`,"domainDetail.back":`返回域名列表`,"domainDetail.overview":`域名概览`,"domainDetail.danger":`危险操作`,"domainDetail.deleteHint":`删除域名会移除该域名配置,但不会删除 DNS 服务商中的记录。`,"domainDetail.editTitle":`修改域名配置`,"domainDetail.lastCheck":`最后检查`,"domainDetail.notChecked":`尚未检查`,"domainDetail.noDnsResult":`尚未生成 DNS 检查结果`,"domainDetail.currentDnsResult":`当前 DNS 检测结果`,"domainDetail.recheckAll":`重新检查全部`,"domainDetail.copyAll":`复制全部配置`,"domainDetail.noPublicDns":`暂无公共 DNS 查询数据`,"domainDetail.notFoundRecord":`未发现`,"domainDetail.needAttention":`需要关注`,"domainDetail.noSmtpPassword":`请在 SMTP 页面重新设置后复制`,"domainDetail.noApiToken":`尚未创建`,"domainDetail.apiExample":`发送 API 示例`,"domainDetail.placeholder":`配置将在后续版本接入`,"dnsRecord.hostname":`主机名`,"dnsRecord.targetValue":`目标值`,"dnsRecord.currentValue":`当前值`,"dnsRecord.emptyCurrent":`未查询到记录`,"dnsRecord.ptrHint":`PTR 通常需要在服务器商、云厂商或 IP 提供商处配置,DNS API 一般无法直接写入。`,"dnsRecord.recheck":`重新检测`,"dnsRecord.copyLabel":`复制`,"dnsRecord.rootTxt":`根域 TXT`,"dnsRecord.verificationTxt":`验证 TXT`,"dnsRecord.dkimTxt":`DKIM TXT`,"dnsRecord.dmarcTxt":`DMARC TXT`,"dnsRecord.senderA":`发信主机 A`,"dnsRecord.ptr":`发信 IP PTR`,"domainHealth.sendingDomain":`Sending domain`,"domainHealth.dnsProgress":`DNS 检查进度`,"domainHealth.passed":`通过`,"domainHealth.dnsIssues":`DNS 异常`,"domainHealth.dnsApi":`DNS API`,"domainHealth.oneClickDns":`一键配置 DNS`,"domainHealth.checkNow":`立即检查`,"domainHealth.sendTest":`发送测试邮件`,"domainHealth.edit":`修改配置`,"addDomain.title":`添加发信域名`,"addDomain.stepDomain":`域名信息`,"addDomain.stepDns":`DNS 配置方式`,"addDomain.stepPolicy":`DKIM / SPF / DMARC`,"addDomain.stepConfirm":`确认并创建`,"addDomain.create":`确认创建`,"addDomain.domainExtra":`填写根域名,不需要 http、路径或邮箱地址。`,"addDomain.domainRequired":`请输入发信域名`,"addDomain.senderHostRequired":`请输入发信主机`,"addDomain.sendingIpRequired":`请输入发信 IP`,"addDomain.dnsExtra":`未选择时仍可创建域名,稍后手动配置 DNS 或绑定凭据。`,"addDomain.manualDns":`手动配置 DNS`,"addDomain.dnsHint":`选择 DNS API 后,域名详情页可以使用“一键配置 DNS”写入验证、DKIM、SPF、DMARC 和发信主机 A 记录。`,"addDomain.selectorRequired":`请输入 DKIM selector`,"addDomain.spfExtra":`兼容第三方 SPF include`,"addDomain.generatedTitle":`创建后会生成以下配置`,"addDomain.recordVerification":`域名验证 TXT`,"addDomain.recordDkim":`DKIM TXT`,"addDomain.recordSpf":`SPF TXT`,"addDomain.recordDmarc":`DMARC TXT`,"addDomain.recordSenderA":`发信主机 A 记录`,"addDomain.recordPtr":`PTR 反向解析检查提示`,"addDomain.immediateCheck":`创建后立即检查 DNS`,"logs.title":`发送记录`,"logs.time":`时间`,"logs.recipient":`收件人`,"logs.domain":`发件域名`,"logs.errorReason":`错误原因`,"logs.viewDetail":`查看详情`,"logs.domainPlaceholder":`发信域名`,"logs.statusPlaceholder":`状态`,"logs.recipientPlaceholder":`搜索收件人`,"logs.detailTitle":`发送详情`,"logs.deliveryLog":`完整投递日志`,"logs.copyDeliveryLog":`复制投递日志`,"logs.noDeliveryLog":`暂无结构化投递日志,可能是历史发送记录。`,"logs.sender":`发件人`,"logs.subject":`主题`,"logs.messageId":`Message ID`,"logs.finalResponse":`最终响应`,"logs.messageBytes":`邮件字节数`,"logs.queueId":`Postfix 队列 ID`,"logs.deliveredAt":`最终投递时间`,"logs.trackingTimeline":`投递时间线`,"logs.noTrackingTimeline":`暂无可用的投递时间线。`,"logs.trackingTimelineTruncated":`时间线仅显示最近 500 条互动事件,汇总统计仍包含全部事件。`,"logs.trackingLinksTruncated":`链接明细仅显示点击量最高的 200 条,汇总统计仍包含全部链接。`,"logs.deliveryAttempts":`投递尝试`,"logs.noDeliveryAttempts":`暂无最终投递回执,可能仍在队列中或属于历史记录。`,"logs.webhookDeliveries":`Webhook 回调`,"logs.noWebhookDeliveries":`暂无关联 Webhook 回调。`,"logs.detailLoadFailed":`发送详情加载失败。`,"logs.detailNotFound":`未找到该发送记录。`,"logs.stageSubmitted":`已提交`,"logs.stageAccepted":`已入队`,"logs.stageDelivered":`已送达`,"logs.stagePending":`等待投递`,"logs.stageFailed":`投递失败`,"logs.stageOpened":`已打开`,"logs.stageClicked":`已点击`,"logs.stageWebhook":`Webhook 回调`,"logs.engagement":`互动追踪`,"logs.opens":`打开`,"logs.clicks":`点击`,"logs.trackingDisabled":`这封邮件发送时未启用打开/点击追踪。`,"logs.trackingDisabledShort":`未启用`,"inbox.title":`收件箱`,"inbox.subtitle":`管理本地收信邮箱,查看通过 MailHub SMTP 接收的邮件。`,"inbox.createMailbox":`新增收信邮箱`,"inbox.inboundDisabled":`当前运行配置已关闭入站收信。请设置 INBOUND_ENABLED=true 后重启服务。`,"inbox.clientHelpTitle":`客户端配置帮助`,"inbox.clientHelpIntro":`创建邮箱后,点击“客户端配置”可复制第三方客户端所需的收信/发信参数。`,"inbox.clientHelpImap":`推荐优先使用 IMAP;它会和 MailHub 收件箱保持同步。`,"inbox.clientHelpPop3":`POP3 适合把邮件下载到本地;客户端删除邮件后,MailHub 中对应邮件会在退出时移除。`,"inbox.clientHelpAuth":`用户名使用完整邮箱地址,密码使用创建或重置邮箱时设置的密码。`,"inbox.clientHelpSecurity":`优先使用 SSL/TLS 端口 993/995/465,或在 143/110/587 上启用 STARTTLS/STLS。`,"inbox.clientHelpPorts":`服务器防火墙和云安全组需放行 IMAP 143/993、POP3 110/995、SMTP 587/465。`,"inbox.mailboxes":`收信邮箱`,"inbox.domainRoutes":`域名收信路由`,"inbox.mailboxUnit":`邮箱`,"inbox.catchAllAddress":`收取未知邮件的邮箱`,"inbox.catchAllDisabled":`未启用`,"inbox.catchAllTitle":`收取未知邮件`,"inbox.catchAllExtra":`留空表示拒收未知地址;填写邮箱地址表示投递/转发;填写 /dev/null 表示接收后丢弃。`,"inbox.mailboxAddress":`邮箱地址`,"inbox.password":`密码`,"inbox.passwordRequired":`请输入邮箱密码`,"inbox.passwordMin":`邮箱密码至少需要 8 位`,"inbox.generatePassword":`生成`,"inbox.quotaMb":`配额`,"inbox.unlimited":`无限制`,"inbox.aliases":`别名`,"inbox.aliasesExtra":`每行一个本地部分,例如 sales 会接收 sales@当前域名。`,"inbox.forwardTo":`转发到`,"inbox.forwardToExtra":`每行一个或多个邮箱地址,也可用逗号、空格分隔。`,"inbox.keepForwarded":`保留已转发的邮件`,"inbox.forwardOnly":`仅转发`,"inbox.clientConfig":`客户端配置`,"inbox.mailboxWebhooks":`邮件到达 Webhook`,"inbox.clientConfigHelpSummary":`推荐优先配置 IMAP 收信;POP3 仅在需要下载到本地时使用。密码只在创建或重置时显示。`,"inbox.configUsername":`用户名`,"inbox.configPassword":`密码`,"inbox.passwordNotShown":`仅创建或重置时显示`,"inbox.incomingConfig":`IMAP 配置`,"inbox.pop3Config":`POP3 配置`,"inbox.outgoingConfig":`发信配置`,"inbox.configProtocol":`协议`,"inbox.configHost":`主机`,"inbox.configPort":`端口`,"inbox.configSecurity":`安全`,"inbox.configAuthMethod":`认证方式`,"inbox.unread":`未读`,"inbox.messageCount":`邮件数`,"inbox.lastMessageAt":`最近收信`,"inbox.noDomain":`请先添加域名,再创建该域名下的收信邮箱。`,"inbox.messages":`入站邮件`,"inbox.mailboxFilter":`收信邮箱`,"inbox.searchPlaceholder":`搜索发件人、主题或正文预览`,"inbox.receivedAt":`收信时间`,"inbox.subject":`主题`,"inbox.noSubject":`(无主题)`,"inbox.sender":`发件人`,"inbox.mailbox":`收信邮箱`,"inbox.read":`已读`,"inbox.preview":`预览`,"inbox.localPart":`邮箱前缀`,"inbox.localPartRequired":`请输入邮箱前缀`,"inbox.localPartInvalid":`邮箱前缀不能包含 @ 或空格`,"inbox.domainRequired":`请选择域名`,"inbox.displayName":`显示名称`,"inbox.messageDetail":`邮件详情`,"inbox.copyRaw":`复制原文`,"inbox.recipients":`收件人`,"inbox.textBody":`文本正文`,"inbox.htmlBody":`HTML 源码`,"inbox.rawMessage":`原始 MIME`,"inbox.noTextBody":`暂无文本正文`,"inbox.noHtmlBody":`暂无 HTML 正文`,"inbox.noRawMessage":`暂无原始 MIME`,"inbox.messageNotFound":`邮件不存在或已被删除。`,"inbox.detailLoadFailed":`邮件详情加载失败。`,"logs.trackingScope":`统计范围`,"logs.messageLevel":`消息级(多收件人)`,"logs.recipientLevel":`单收件人`,"logs.firstOpened":`首次打开`,"logs.lastOpened":`最近打开`,"logs.firstClicked":`首次点击`,"logs.lastClicked":`最近点击`,"logs.proxyOpens":`代理打开`,"logs.scannerEvents":`扫描器事件`,"logs.statusQueued":`队列中`,"logs.statusSent":`已送达`,"logs.statusDeferred":`暂时失败`,"logs.statusBounced":`已退信`,"logs.statusFailed":`失败`,"smtp.connectionTitle":`SMTP 连接信息`,"smtp.loginCredentialsTitle":`发信登录凭据`,"smtp.username":`用户名`,"smtp.password":`密码`,"smtp.usernameRequired":`请输入 SMTP Username`,"smtp.passwordRequired":`请输入 SMTP Password`,"smtp.passwordSet":`已设置`,"smtp.passwordEmpty":`未设置`,"smtp.passwordUnavailable":`请重新设置后复制`,"smtp.create":`新增凭据`,"smtp.createTitle":`新增发信登录凭据`,"smtp.editTitle":`编辑发信登录凭据`,"smtp.deleteConfirm":`确认删除该 SMTP 登录凭据?`,"smtp.passwordExtra":`留空保存时会保留原密码;出于安全原因,已保存密码不会再次显示。`,"smtp.regenerate":`重新生成密码`,"smtp.resetToCopy":`请重新设置后复制`,"smtpRelay.title":`高级:外部 SMTP 出口`,"smtpRelay.create":`新增出口`,"smtpRelay.createTitle":`新增发信 SMTP 出口`,"smtpRelay.editTitle":`编辑发信 SMTP 出口`,"smtpRelay.name":`名称`,"smtpRelay.nameRequired":`请输入出口名称`,"smtpRelay.server":`服务器`,"smtpRelay.hostRequired":`请输入 SMTP Host`,"smtpRelay.portRequired":`请输入 SMTP Port`,"smtpRelay.username":`用户名`,"smtpRelay.password":`密码`,"smtpRelay.passwordSet":`已设置`,"smtpRelay.passwordEmpty":`未设置`,"smtpRelay.passwordExtra":`留空保存时会保留原密码;出于安全原因,已保存密码不会再次显示。`,"smtpRelay.generatePassword":`生成密码`,"smtpRelay.heloExtra":`留空时使用系统默认 HELO。`,"smtpRelay.default":`默认`,"smtpRelay.domainDefault":`默认发信 SMTP 出口`,"smtpRelay.domainDefaultExtra":`未选择时按请求指定、用户默认出口、系统全局 SMTP 的顺序选择。`,"smtpRelay.useResolutionOrder":`按默认选择顺序`,"smtpRelay.deleteConfirm":`确认删除该 SMTP 出口?绑定到该出口的域名会改为按默认顺序选择。`,"dnsApi.title":`DNS API 凭据`,"dnsApi.createTitle":`新增 DNS API`,"dnsApi.editTitle":`编辑`,"dnsApi.zone":`Zone / 根域名`,"dnsApi.zoneRequired":`请输入 Zone 或根域名`,"dnsApi.zoneExtra":`填写该账号下任一可管理 Zone 用于连接测试;一键配置时会按当前发信域名自动匹配 Zone。`,"dnsApi.cloudflareZoneExtra":`Cloudflare 可填写任一可访问 Zone 用于测试;一键配置时会按当前发信域名自动匹配 Zone。`,"dnsApi.tokenExtra":`需要 Zone DNS Edit 权限。`,"dnsApi.keepSecret":`留空表示保留原密钥。`,"dnsApi.save":`保存修改`,"dnsApi.create":`新增凭据`,"dnsApi.secretHint":`密钥只在服务端加密保存,不会在列表中回显。`,"settings.checkItem":`检查项`,"settings.deliveryChecks":`发信环境检查`,"settings.noPermission":`当前账号没有系统设置权限。`,"settings.save":`保存设置`,"settings.engagementTracking":`默认启用打开与点击追踪`,"admin.title":`管理员面板`,"admin.users":`用户`,"admin.resources":`资源`,"admin.migration":`合并迁移`,"admin.systemEmail":`系统邮件`,"admin.auditLogs":`审计日志`,"metrics.accepted":`已接收`,"metrics.failed":`失败`,"metrics.recipients":`收件人`,"metrics.total":`总量`,"status.success":`已通过`,"status.pending":`等待生效`,"status.error":`配置错误`,"status.idle":`未配置`,"tokens.createTitle":`创建 API Token`,"tokens.subtitle":`按最小权限原则创建、更新或撤销用于发信和邮箱自动化的访问令牌。`,"tokens.name":`名称`,"tokens.namePlaceholder":`Production API`,"tokens.nameRequired":`请输入 Token 名称`,"tokens.create":`创建 Token`,"tokens.edit":`编辑 Token`,"tokens.editTitle":`编辑 API Token`,"tokens.listTitle":`API Tokens`,"tokens.prefix":`Token 前缀`,"tokens.scopes":`权限范围`,"tokens.scopesRequired":`请至少选择一项权限`,"tokens.scopesExtra":`发信使用 send;邮箱 API 读取和创建分别需要 mailboxes:read 与 mailboxes:write。`,"tokens.status":`状态`,"tokens.statusActive":`生效中`,"tokens.statusExpired":`已过期`,"tokens.statusRevoked":`已撤销`,"tokens.expiresAt":`到期时间`,"tokens.expiresAtExtra":`留空表示长期有效;使用本地时间。`,"tokens.fullToken":`完整 Token`,"tokens.copyFull":`复制完整 Token`,"tokens.copyPrefix":`复制前缀`,"tokens.createdTitle":`API Token 已创建`,"tokens.createdWarning":`完整 Token 只会显示这一次。关闭后无法再次查看,请立即复制并保存到安全位置。`,"tokens.createdSuccess":`Token 已创建`,"tokens.deletedSuccess":`Token 已删除`,"tokens.updatedSuccess":`Token 已更新`,"tokens.revokedSuccess":`Token 已撤销`,"tokens.secretUnavailable":`完整 Token 仅在创建时显示`,"tokens.lastUsed":`最近使用`,"tokens.neverUsed":`未使用`,"tokens.createdAt":`创建时间`,"tokens.actions":`操作`,"tokens.deleteConfirm":`确认删除该 Token?`,"tokens.revoke":`撤销 Token`,"tokens.revokeConfirm":`撤销后该 Token 将立即失效,确认继续?`,"tokens.copyCreated":`复制完整 Token`,"tokens.prefixOnlyHelp":`历史 Token 不保存明文,只能复制前缀用于识别。`,"tokens.docsTitle":`API 使用文档`,"tokens.endpoint":`API Endpoint`,"tokens.mailboxEndpoint":`邮箱 API Endpoint`,"tokens.authHeader":`认证方式`,"tokens.authHeaderValue":`Authorization: Bearer `,"tokens.contentType":`Content-Type`,"tokens.requestFields":`请求字段`,"tokens.fieldFrom":`from:发件地址,域名必须已添加并通过验证。`,"tokens.fieldTo":`to:收件人地址,支持单个邮箱或邮箱数组。`,"tokens.fieldSubject":`subject:邮件主题。`,"tokens.fieldText":`text:纯文本正文。`,"tokens.fieldHtml":`html:HTML 正文,可选。`,"tokens.curlExample":`curl 示例`,"tokens.nodeExample":`Node / Fetch 示例`,"tokens.requestExample":`请求 Body 示例`,"tokens.responseExample":`成功响应示例`,"tokens.sendApi":`发信 API`,"tokens.mailboxApi":`创建邮箱 API`,"tokens.mailboxApiHint":`长期邮箱使用 mode=permanent;临时邮箱使用 mode=temporary 并提供 expiresInMinutes。临时邮箱可省略 address,服务端会按 domain 自动生成地址和密码。`,"tokens.permanentMailbox":`创建长期邮箱`,"tokens.temporaryMailbox":`创建临时邮箱`,"tokens.mailboxResponse":`创建结果与客户端配置`,"tokens.securityTips":`安全建议`,"tokens.securityTipStore":`只在服务端环境保存 Token,不要放进浏览器前端代码或公开仓库。`,"tokens.securityTipRotate":`不同环境使用不同 Token,泄露后立即删除并重新创建。`,"tokens.securityTipScopes":`只授予实际需要的权限;给自动化邮箱创建任务时无需授予 send。`,"tokens.securityTipDomain":`From 域名必须属于当前账号,建议先完成 DNS 验证再接入生产发送。`,"tokens.noTokenHint":`创建 Token 后可复制完整密钥;历史 Token 只显示前缀,示例中使用占位符。`,"webhooks.title":`Webhooks`,"webhooks.subtitle":`在投递状态变为已送达、退信或失败时,向你的 HTTPS 端点推送通知。`,"webhooks.create":`新建 Webhook`,"webhooks.createTitle":`新建 Webhook`,"webhooks.editTitle":`编辑 Webhook`,"webhooks.name":`名称`,"webhooks.namePlaceholder":`Production deliveries`,"webhooks.nameRequired":`请输入 Webhook 名称`,"webhooks.url":`回调 URL`,"webhooks.urlPlaceholder":`https://example.com/webhooks/mailhub`,"webhooks.urlRequired":`请输入回调 URL`,"webhooks.urlHint":`生产环境请使用 HTTPS。签名校验使用 X-MailHub-Signature 请求头。`,"webhooks.events":`订阅事件`,"webhooks.eventsRequired":`请至少选择一个事件`,"webhooks.eventSent":`已送达`,"webhooks.eventBounced":`已退信`,"webhooks.eventFailed":`失败`,"webhooks.eventOpened":`已打开`,"webhooks.eventClicked":`已点击`,"webhooks.eventReceived":`邮件到达`,"webhooks.enabled":`启用`,"webhooks.disabled":`已停用`,"webhooks.scope":`作用域`,"webhooks.scopeAccount":`账号级`,"webhooks.scopeDomain":`域名级`,"webhooks.scopeMailbox":`收信邮箱`,"webhooks.domain":`域名`,"webhooks.domainAccount":`整个账号`,"webhooks.domainOverrideHelp":`若某域名对某一事件存在任何已启用的端点,则该事件不会再投递到账号级端点。`,"webhooks.mailboxReceiptHelp":`仅在邮件成功保存到该邮箱后投递 email.received;仅转发而未保留的邮件不会触发。`,"webhooks.secret":`签名密钥`,"webhooks.secretPrefix":`密钥前缀`,"webhooks.secretCreatedTitle":`Webhook 密钥已创建`,"webhooks.secretRotatedTitle":`Webhook 密钥已轮换`,"webhooks.secretCreatedWarning":`完整密钥只会显示这一次。关闭后无法再次查看,请立即复制并保存到安全位置。`,"webhooks.copySecret":`复制完整密钥`,"webhooks.rotateSecret":`轮换密钥`,"webhooks.rotateConfirm":`确认轮换该 Webhook 的签名密钥?旧密钥将立即失效。`,"webhooks.test":`发送测试`,"webhooks.testQueued":`测试投递已入队`,"webhooks.deleteConfirm":`确认删除该 Webhook?相关投递记录也会一并删除。`,"webhooks.empty":`暂无 Webhook。创建后即可接收投递状态回调。`,"webhooks.listTitle":`端点列表`,"webhooks.actions":`操作`,"webhooks.deliveriesTitle":`投递记录`,"webhooks.deliveriesEmpty":`暂无投递记录`,"webhooks.deliveriesFilterWebhook":`按 Webhook 筛选`,"webhooks.deliveriesFilterStatus":`按状态筛选`,"webhooks.deliveriesFilterEvent":`按事件筛选`,"webhooks.allWebhooks":`全部 Webhook`,"webhooks.allStatuses":`全部状态`,"webhooks.allEvents":`全部事件`,"webhooks.statusPending":`待投递`,"webhooks.statusProcessing":`投递中`,"webhooks.statusSuccess":`成功`,"webhooks.statusDead":`已放弃`,"webhooks.attemptCount":`尝试次数`,"webhooks.responseStatus":`HTTP 状态`,"webhooks.error":`错误`,"webhooks.replay":`重放`,"webhooks.replaySuccess":`投递已重新入队`,"webhooks.lastAttemptAt":`最近尝试`,"webhooks.nextAttemptAt":`下次尝试`,"webhooks.createdAt":`创建时间`,"webhooks.viewDeliveries":`查看投递`,"webhooks.docsTitle":`回调说明`,"webhooks.docsSignature":`使用 HMAC-SHA256 校验请求体;签名放在 X-MailHub-Signature。`,"webhooks.docsEvents":`事件类型:sent、bounced、failed、opened、clicked;收信邮箱可额外订阅 received。`,"testMail.title":`发送测试邮件`,"testMail.fromRequired":`请输入发件人`,"testMail.toRequired":`请输入收件人`,"actions.domainCreated":`域名已创建`,"actions.dnsCheckCompleted":`DNS 检查已完成`,"actions.dnsCheckRefreshed":`DNS 检查已刷新`,"actions.dnsApplyCompleted":`DNS 写入请求已完成`,"actions.dnsApplyPartial":`DNS 写入部分失败`,"actions.domainSaved":`域名配置已保存`,"actions.domainDeleted":`域名已删除`,"actions.testMailQueued":`已提交到发信队列`,"actions.dnsApiCreated":`DNS API 已新增`,"actions.dnsApiUpdated":`DNS API 已更新`,"actions.dnsApiDeleted":`DNS API 已删除`,"actions.dnsApiTestCompleted":`连接测试完成`,"actions.smtpCreated":`SMTP 登录凭据已新增`,"actions.smtpUpdated":`SMTP 登录凭据已更新`,"actions.smtpDeleted":`SMTP 登录凭据已删除`,"actions.smtpRelayCreated":`SMTP 出口已新增`,"actions.smtpRelayUpdated":`SMTP 出口已更新`,"actions.smtpRelayDeleted":`SMTP 出口已删除`,"actions.inboundMailboxCreated":`收信邮箱已新增`,"actions.settingsSaved":`系统设置已保存`,"actions.webhookCreated":`Webhook 已创建`,"actions.webhookUpdated":`Webhook 已更新`,"actions.webhookDeleted":`Webhook 已删除`,"actions.webhookSecretRotated":`Webhook 密钥已轮换`,"actions.webhookTestQueued":`Webhook 测试已入队`,"actions.webhookDeliveryReplayed":`Webhook 投递已重放`,"nav.dashboard":`仪表盘`,"nav.overview":`概览`,"nav.activity":`发送活动`,"nav.domains":`发信域名`,"nav.dnsApi":`DNS API`,"nav.smtp":`SMTP 凭据`,"nav.inbox":`收件箱`,"nav.tokens":`API Token`,"nav.logs":`发送记录`,"nav.webhooks":`Webhooks`,"nav.smtpIntegration":`SMTP 与中继`,"nav.apiKeys":`API 密钥`,"nav.dnsIntegration":`DNS 集成`,"nav.adminCenter":`管理中心`,"nav.admin":`管理员`,"nav.settings":`系统设置`,"nav.group.overview":`概览`,"nav.group.delivery":`投递`,"nav.group.operations":`运行中心`,"nav.group.integrations":`接入与集成`,"nav.group.system":`系统`},"en-US":{"common.account":`Account`,"common.addDomain":`Add Domain`,"common.actions":`Actions`,"common.cancel":`Cancel`,"common.confirm":`Confirm`,"common.copy":`Copy`,"common.copied":`Copied`,"common.delete":`Delete`,"common.details":`Details`,"common.edit":`Edit`,"common.error":`Operation failed`,"common.loadingConfig":`Loading runtime config`,"common.logout":`Log out`,"common.manual":`Manual`,"common.next":`Next`,"common.notConfigured":`Not configured`,"common.notFound":`None`,"common.previous":`Previous`,"common.refresh":`Refresh`,"common.save":`Save`,"common.status":`Status`,"common.user":`User`,"common.unsetSendingIp":`Sending IP not set`,"shell.skipToMain":`Skip to main content`,"shell.mainNavigation":`Main navigation`,"shell.openNavigation":`Open main navigation`,"shell.closeNavigation":`Close main navigation`,"shell.accountMenu":`Account menu`,"shell.envReady":`Environment healthy`,"shell.envNeedsSetup":`Environment needs setup`,"shell.loadingFailed":`Console failed to load`,"shell.retry":`Retry`,"shell.backToLogin":`Back to login`,"shell.forbiddenTitle":`Access denied`,"shell.forbiddenDescription":`This page is available to system administrators only.`,"shell.notFoundTitle":`Page not found`,"shell.notFoundDescription":`The link may be stale or the address may be incorrect.`,"shell.backOverview":`Back to overview`,"shell.loadingConsole":`Loading console`,"shell.loadingPage":`Loading page`,"auth.email":`Email`,"auth.emailPlaceholder":`name@example.com`,"auth.backToLogin":`Back to sign in`,"auth.forgotPassword":`Forgot password?`,"auth.forgotPasswordButton":`Send reset email`,"auth.forgotPasswordTitle":`Recover password`,"auth.login":`Sign in`,"auth.loginEyebrow":`Sign in`,"auth.loginTitle":`Sign in to console`,"auth.newPassword":`New password`,"auth.password":`Password`,"auth.register":`Register`,"auth.registerButton":`Create account`,"auth.registerEyebrow":`Register`,"auth.registerTitle":`Create account`,"auth.resendVerification":`Resend verification email`,"auth.resendVerificationButton":`Send verification email`,"auth.resendVerificationTitle":`Resend verification email`,"auth.resetPasswordButton":`Reset password`,"auth.resetPasswordTitle":`Reset password`,"auth.resetTokenMissing":`The reset link is missing a token. Please request a new password reset.`,"auth.submitLogin":`Sign in`,"auth.username":`Username`,"auth.usernameOrEmail":`Username or email`,"auth.valueDns":`DNS automation`,"auth.valueIsolation":`User isolation`,"auth.valueObservability":`Delivery visibility`,"auth.subtitle":`One console for sending domains, DNS, SMTP, and API tokens`,"auth.requestFailed":`Request failed.`,"dashboard.title":`Analytics`,"dashboard.verifiedDomains":`Verified domains`,"dashboard.todaySent":`Sent today`,"dashboard.successRate":`Success rate`,"dashboard.bounceRate":`Bounce rate`,"dashboard.complaintRate":`Complaint rate`,"dashboard.lastSentAt":`Last sent`,"dashboard.dnsIssues":`DNS issues`,"dashboard.smtpStatus":`SMTP status`,"dashboard.smtpReady":`Ready`,"dashboard.smtpNotConfigured":`Not configured`,"dashboard.trend":`Sending trend`,"dashboard.statusDistribution":`Status distribution`,"dashboard.domainRanking":`Domain ranking`,"dashboard.domainHealth":`Domain health`,"dashboard.hourlyHeatmap":`Hourly distribution`,"dashboard.deliveryFunnel":`Delivery funnel`,"dashboard.failureReasons":`Top failure reasons`,"dashboard.recentFailures":`Recent failures`,"dashboard.recentLogs":`Recent sending logs`,"dashboard.noTrend":`No trend data yet`,"dashboard.noDomains":`No domains yet`,"dashboard.noFailures":`No failures yet`,"dashboard.defaultPasswordWarning":`The default admin password is still in use. Update .env and restart the service.`,"dashboard.acceptedMail":`Accepted mail`,"dashboard.failedMail":`Failed mail`,"dashboard.dnsActionHint":`Handle domains with DNS issues first to protect delivery for new senders.`,"dashboard.statusQueued":`Accepted`,"dashboard.statusFailed":`Failed`,"dashboard.statusUnknown":`Unknown`,"dashboard.stageSubmitted":`Submitted`,"dashboard.stageAccepted":`Accepted`,"dashboard.stageDelivered":`Delivered`,"dashboard.stagePending":`Pending`,"dashboard.stageFailed":`Failed`,"dashboard.opens":`Opens`,"dashboard.clicks":`Clicks`,"dashboard.openRate":`Open rate`,"dashboard.clickRate":`Click rate`,"dashboard.clickToOpenRate":`Click-to-open rate`,"dashboard.unique":`unique`,"dashboard.total":`total`,"dashboard.trackedDelivered":`Tracked delivered`,"dashboard.measuredActivity":`Measured activity`,"dashboard.proxyOpens":`Proxy opens`,"dashboard.scannerEvents":`Scanner events`,"dashboard.engagementTrend":`Open and click trend`,"dashboard.topLinks":`Top links`,"dashboard.link":`Link`,"dashboard.uniqueClicks":`Unique clicks`,"dashboard.totalClicks":`Total clicks`,"dashboard.lastClicked":`Last clicked`,"dashboard.noEngagement":`No engagement data yet`,"domains.title":`Sending domains`,"domains.domain":`Domain`,"domains.senderHost":`Sending host`,"domains.sendingIp":`Sending IP`,"domains.dnsApi":`DNS API`,"domains.smtp":`SMTP`,"domains.lastSent":`Last sent`,"domains.overallStatus":`Overall status`,"domains.actions":`Actions`,"domains.searchPlaceholder":`Search domain or sending host`,"domains.statusPlaceholder":`Overall status`,"domains.healthy":`Healthy`,"domains.pending":`Pending`,"domains.needsAction":`Needs action`,"domains.waitingDns":`Waiting for DNS`,"domains.sendable":`Sendable`,"domains.waitingVerify":`Waiting verification`,"domains.oneClickDns":`One-click DNS`,"domains.check":`Check`,"domains.test":`Test`,"domains.deleteConfirm":`Delete this domain?`,"domainDetail.back":`Back to domains`,"domainDetail.overview":`Domain overview`,"domainDetail.danger":`Danger zone`,"domainDetail.deleteHint":`Deleting the domain removes MailHub configuration, but does not delete records at your DNS provider.`,"domainDetail.editTitle":`Edit domain settings`,"domainDetail.lastCheck":`Last check`,"domainDetail.notChecked":`Not checked`,"domainDetail.noDnsResult":`No DNS check result yet`,"domainDetail.currentDnsResult":`Current DNS results`,"domainDetail.recheckAll":`Recheck all`,"domainDetail.copyAll":`Copy all records`,"domainDetail.noPublicDns":`No public DNS query data`,"domainDetail.notFoundRecord":`Not found`,"domainDetail.needAttention":`Needs attention`,"domainDetail.noSmtpPassword":`Reset it on the SMTP page before copying`,"domainDetail.noApiToken":`No token yet`,"domainDetail.apiExample":`Sending API example`,"domainDetail.placeholder":`configuration will be connected in a later version`,"dnsRecord.hostname":`Hostname`,"dnsRecord.targetValue":`Target value`,"dnsRecord.currentValue":`Current value`,"dnsRecord.emptyCurrent":`No record found`,"dnsRecord.ptrHint":`PTR is usually configured at your server, cloud, or IP provider. DNS APIs usually cannot write it directly.`,"dnsRecord.recheck":`Recheck`,"dnsRecord.copyLabel":`Copy`,"dnsRecord.rootTxt":`Root TXT`,"dnsRecord.verificationTxt":`Verification TXT`,"dnsRecord.dkimTxt":`DKIM TXT`,"dnsRecord.dmarcTxt":`DMARC TXT`,"dnsRecord.senderA":`Sending host A`,"dnsRecord.ptr":`Sending IP PTR`,"domainHealth.sendingDomain":`Sending domain`,"domainHealth.dnsProgress":`DNS check progress`,"domainHealth.passed":`passed`,"domainHealth.dnsIssues":`DNS issues`,"domainHealth.dnsApi":`DNS API`,"domainHealth.oneClickDns":`Configure DNS`,"domainHealth.checkNow":`Check now`,"domainHealth.sendTest":`Send test email`,"domainHealth.edit":`Edit settings`,"addDomain.title":`Add sending domain`,"addDomain.stepDomain":`Domain`,"addDomain.stepDns":`DNS method`,"addDomain.stepPolicy":`DKIM / SPF / DMARC`,"addDomain.stepConfirm":`Confirm`,"addDomain.create":`Create domain`,"addDomain.domainExtra":`Use the root domain without http, paths, or email addresses.`,"addDomain.domainRequired":`Enter the sending domain`,"addDomain.senderHostRequired":`Enter the sending host`,"addDomain.sendingIpRequired":`Enter the sending IP`,"addDomain.dnsExtra":`You can create the domain without a credential and configure DNS manually later.`,"addDomain.manualDns":`Manual DNS`,"addDomain.dnsHint":`With a DNS API credential, the detail page can write verification, DKIM, SPF, DMARC, and sending host A records.`,"addDomain.selectorRequired":`Enter the DKIM selector`,"addDomain.spfExtra":`Third-party SPF includes`,"addDomain.generatedTitle":`MailHub will generate`,"addDomain.recordVerification":`Domain verification TXT`,"addDomain.recordDkim":`DKIM TXT`,"addDomain.recordSpf":`SPF TXT`,"addDomain.recordDmarc":`DMARC TXT`,"addDomain.recordSenderA":`Sending host A record`,"addDomain.recordPtr":`PTR reverse DNS check hint`,"addDomain.immediateCheck":`Check DNS immediately after creation`,"logs.title":`Sending logs`,"logs.time":`Time`,"logs.recipient":`Recipient`,"logs.domain":`Sending domain`,"logs.errorReason":`Error reason`,"logs.viewDetail":`View detail`,"logs.domainPlaceholder":`Sending domain`,"logs.statusPlaceholder":`Status`,"logs.recipientPlaceholder":`Search recipient`,"logs.detailTitle":`Sending detail`,"logs.deliveryLog":`Full delivery log`,"logs.copyDeliveryLog":`Copy delivery log`,"logs.noDeliveryLog":`No structured delivery log. This may be a historical event.`,"logs.sender":`Sender`,"logs.subject":`Subject`,"logs.messageId":`Message ID`,"logs.finalResponse":`Final response`,"logs.messageBytes":`Message bytes`,"logs.queueId":`Postfix Queue ID`,"logs.deliveredAt":`Delivered at`,"logs.trackingTimeline":`Delivery timeline`,"logs.noTrackingTimeline":`No delivery timeline is available.`,"logs.trackingTimelineTruncated":`Only the latest 500 engagement events are shown; summary metrics include all events.`,"logs.trackingLinksTruncated":`Only the top 200 links by clicks are shown; summary metrics include all links.`,"logs.deliveryAttempts":`Delivery attempts`,"logs.noDeliveryAttempts":`No final delivery receipt yet. The message may still be queued or historical.`,"logs.webhookDeliveries":`Webhook callbacks`,"logs.noWebhookDeliveries":`No related webhook callbacks.`,"logs.detailLoadFailed":`Failed to load sending detail.`,"logs.detailNotFound":`Sending record not found.`,"logs.stageSubmitted":`Submitted`,"logs.stageAccepted":`Accepted`,"logs.stageDelivered":`Delivered`,"logs.stagePending":`Pending`,"logs.stageFailed":`Failed`,"logs.stageOpened":`Opened`,"logs.stageClicked":`Clicked`,"logs.stageWebhook":`Webhook callback`,"logs.engagement":`Engagement tracking`,"logs.opens":`Opens`,"logs.clicks":`Clicks`,"logs.trackingDisabled":`Open and click tracking was not enabled when this email was sent.`,"logs.trackingDisabledShort":`Off`,"logs.trackingScope":`Tracking scope`,"logs.messageLevel":`Message-level (multiple recipients)`,"logs.recipientLevel":`Single recipient`,"logs.firstOpened":`First opened`,"logs.lastOpened":`Last opened`,"logs.firstClicked":`First clicked`,"logs.lastClicked":`Last clicked`,"logs.proxyOpens":`Proxy opens`,"logs.scannerEvents":`Scanner events`,"logs.statusQueued":`Queued`,"logs.statusSent":`Sent`,"logs.statusDeferred":`Deferred`,"logs.statusBounced":`Bounced`,"logs.statusFailed":`Failed`,"inbox.title":`Inbox`,"inbox.subtitle":`Manage local receiving mailboxes and read mail accepted by MailHub SMTP.`,"inbox.createMailbox":`New mailbox`,"inbox.inboundDisabled":`Inbound receiving is disabled. Set INBOUND_ENABLED=true and restart the service.`,"inbox.clientHelpTitle":`Client setup help`,"inbox.clientHelpIntro":`After creating a mailbox, open Client configuration to copy the receiving and sending settings for third-party mail apps.`,"inbox.clientHelpImap":`Use IMAP first when possible; it stays synchronized with the MailHub inbox.`,"inbox.clientHelpPop3":`Use POP3 when you want to download mail locally; messages deleted by the client are removed from MailHub on quit.`,"inbox.clientHelpAuth":`Use the full email address as the username and the password set when the mailbox was created or reset.`,"inbox.clientHelpSecurity":`Prefer SSL/TLS ports 993/995/465, or enable STARTTLS/STLS on 143/110/587.`,"inbox.clientHelpPorts":`Allow IMAP 143/993, POP3 110/995, and SMTP 587/465 in the server firewall and cloud security group.`,"inbox.mailboxes":`Mailboxes`,"inbox.domainRoutes":`Domain receiving routes`,"inbox.mailboxUnit":`mailboxes`,"inbox.catchAllAddress":`Catch-all mailbox`,"inbox.catchAllDisabled":`Disabled`,"inbox.catchAllTitle":`Catch-all mailbox`,"inbox.catchAllExtra":`Leave empty to reject unknown recipients. Use an email address to deliver/forward, or /dev/null to accept and discard.`,"inbox.mailboxAddress":`Mailbox address`,"inbox.password":`Password`,"inbox.passwordRequired":`Enter the mailbox password`,"inbox.passwordMin":`Mailbox password must be at least 8 characters`,"inbox.generatePassword":`Generate`,"inbox.quotaMb":`Quota`,"inbox.unlimited":`Unlimited`,"inbox.aliases":`Aliases`,"inbox.aliasesExtra":`One local part per line. For example, sales accepts sales@this domain.`,"inbox.forwardTo":`Forward to`,"inbox.forwardToExtra":`One or more email addresses, separated by line breaks, commas, or spaces.`,"inbox.keepForwarded":`Keep forwarded mail`,"inbox.forwardOnly":`Forward only`,"inbox.clientConfig":`Client configuration`,"inbox.mailboxWebhooks":`Mail arrival webhook`,"inbox.clientConfigHelpSummary":`Configure IMAP first for receiving mail. Use POP3 only when you need local download behavior. Passwords are shown only on create or reset.`,"inbox.configUsername":`Username`,"inbox.configPassword":`Password`,"inbox.passwordNotShown":`Shown only on create or reset`,"inbox.incomingConfig":`IMAP configuration`,"inbox.pop3Config":`POP3 configuration`,"inbox.outgoingConfig":`Outgoing configuration`,"inbox.configProtocol":`Protocol`,"inbox.configHost":`Host`,"inbox.configPort":`Port`,"inbox.configSecurity":`Security`,"inbox.configAuthMethod":`Auth method`,"inbox.unread":`Unread`,"inbox.messageCount":`Messages`,"inbox.lastMessageAt":`Last received`,"inbox.noDomain":`Add a domain before creating receiving mailboxes for it.`,"inbox.messages":`Inbound messages`,"inbox.mailboxFilter":`Mailbox`,"inbox.searchPlaceholder":`Search sender, subject, or preview`,"inbox.receivedAt":`Received at`,"inbox.subject":`Subject`,"inbox.noSubject":`(no subject)`,"inbox.sender":`Sender`,"inbox.mailbox":`Mailbox`,"inbox.read":`Read`,"inbox.preview":`Preview`,"inbox.localPart":`Local part`,"inbox.localPartRequired":`Enter the local part`,"inbox.localPartInvalid":`The local part cannot contain @ or spaces`,"inbox.domainRequired":`Select a domain`,"inbox.displayName":`Display name`,"inbox.messageDetail":`Message detail`,"inbox.copyRaw":`Copy raw`,"inbox.recipients":`Recipients`,"inbox.textBody":`Text body`,"inbox.htmlBody":`HTML source`,"inbox.rawMessage":`Raw MIME`,"inbox.noTextBody":`No text body`,"inbox.noHtmlBody":`No HTML body`,"inbox.noRawMessage":`No raw MIME`,"inbox.messageNotFound":`Message not found or deleted.`,"inbox.detailLoadFailed":`Failed to load message detail.`,"smtp.connectionTitle":`SMTP connection`,"smtp.loginCredentialsTitle":`Sending login credentials`,"smtp.username":`Username`,"smtp.password":`Password`,"smtp.usernameRequired":`Enter SMTP username`,"smtp.passwordRequired":`Enter SMTP password`,"smtp.passwordSet":`Set`,"smtp.passwordEmpty":`Empty`,"smtp.passwordUnavailable":`Reset before copying`,"smtp.create":`New credential`,"smtp.createTitle":`New sending login credential`,"smtp.editTitle":`Edit sending login credential`,"smtp.deleteConfirm":`Delete this SMTP login credential?`,"smtp.passwordExtra":`Leave empty to keep the current password. Saved passwords are never shown again.`,"smtp.regenerate":`Regenerate password`,"smtp.resetToCopy":`Reset before copying`,"smtpRelay.title":`Advanced: external SMTP relays`,"smtpRelay.create":`New relay`,"smtpRelay.createTitle":`New outbound SMTP relay`,"smtpRelay.editTitle":`Edit outbound SMTP relay`,"smtpRelay.name":`Name`,"smtpRelay.nameRequired":`Enter the relay name`,"smtpRelay.server":`Server`,"smtpRelay.hostRequired":`Enter SMTP Host`,"smtpRelay.portRequired":`Enter SMTP Port`,"smtpRelay.username":`Username`,"smtpRelay.password":`Password`,"smtpRelay.passwordSet":`Set`,"smtpRelay.passwordEmpty":`Empty`,"smtpRelay.passwordExtra":`Leave empty to keep the current password. Saved passwords are never shown again.`,"smtpRelay.generatePassword":`Generate password`,"smtpRelay.heloExtra":`Leave empty to use the system default HELO.`,"smtpRelay.default":`Default`,"smtpRelay.domainDefault":`Default outbound SMTP relay`,"smtpRelay.domainDefaultExtra":`When empty, MailHub uses request relay, user default relay, then system SMTP.`,"smtpRelay.useResolutionOrder":`Use default selection order`,"smtpRelay.deleteConfirm":`Delete this SMTP relay? Bound domains will fall back to the default selection order.`,"dnsApi.title":`DNS API credentials`,"dnsApi.createTitle":`New DNS API`,"dnsApi.editTitle":`Edit`,"dnsApi.zone":`Zone / root domain`,"dnsApi.zoneRequired":`Enter the Zone or root domain`,"dnsApi.zoneExtra":`Use any manageable Zone under this account for connection testing. One-click DNS matches the current sending domain automatically.`,"dnsApi.cloudflareZoneExtra":`For Cloudflare, use any accessible Zone for testing. One-click DNS matches the current sending domain automatically.`,"dnsApi.tokenExtra":`Requires Zone DNS Edit permission.`,"dnsApi.keepSecret":`Leave empty to keep the existing secret.`,"dnsApi.save":`Save changes`,"dnsApi.create":`Create credential`,"dnsApi.secretHint":`Secrets are encrypted server-side and never shown in the list.`,"settings.checkItem":`Check`,"settings.deliveryChecks":`Sending Environment Checks`,"settings.noPermission":`This account cannot access system settings.`,"settings.save":`Save settings`,"settings.engagementTracking":`Enable open and click tracking by default`,"admin.title":`Admin Panel`,"admin.users":`Users`,"admin.resources":`Resources`,"admin.migration":`Merge`,"admin.systemEmail":`System Email`,"admin.auditLogs":`Audit Logs`,"metrics.accepted":`Accepted`,"metrics.failed":`Failed`,"metrics.recipients":`Recipients`,"metrics.total":`Total`,"status.success":`Passed`,"status.pending":`Pending`,"status.error":`Misconfigured`,"status.idle":`Not configured`,"tokens.createTitle":`Create API Token`,"tokens.subtitle":`Create, update, and revoke scoped tokens for sending and mailbox automation.`,"tokens.name":`Name`,"tokens.namePlaceholder":`Production API`,"tokens.nameRequired":`Enter a token name`,"tokens.create":`Create Token`,"tokens.edit":`Edit token`,"tokens.editTitle":`Edit API Token`,"tokens.listTitle":`API Tokens`,"tokens.prefix":`Token Prefix`,"tokens.scopes":`Scopes`,"tokens.scopesRequired":`Select at least one scope`,"tokens.scopesExtra":`Use send for delivery. Mailbox reads and creates require mailboxes:read and mailboxes:write.`,"tokens.status":`Status`,"tokens.statusActive":`Active`,"tokens.statusExpired":`Expired`,"tokens.statusRevoked":`Revoked`,"tokens.expiresAt":`Expires at`,"tokens.expiresAtExtra":`Leave empty for no expiry. Uses local time.`,"tokens.fullToken":`Full Token`,"tokens.copyFull":`Copy full token`,"tokens.copyPrefix":`Copy prefix`,"tokens.createdTitle":`API Token created`,"tokens.createdWarning":`The full token is shown only once. Copy it now and store it somewhere secure.`,"tokens.createdSuccess":`Token created`,"tokens.deletedSuccess":`Token deleted`,"tokens.updatedSuccess":`Token updated`,"tokens.revokedSuccess":`Token revoked`,"tokens.secretUnavailable":`Full token is only shown at creation time`,"tokens.lastUsed":`Last used`,"tokens.neverUsed":`Never used`,"tokens.createdAt":`Created at`,"tokens.actions":`Actions`,"tokens.deleteConfirm":`Delete this token?`,"tokens.revoke":`Revoke token`,"tokens.revokeConfirm":`This token will stop working immediately. Continue?`,"tokens.copyCreated":`Copy full token`,"tokens.prefixOnlyHelp":`Historical tokens do not store plaintext. The prefix is only for identification.`,"tokens.docsTitle":`API guide`,"tokens.endpoint":`API Endpoint`,"tokens.mailboxEndpoint":`Mailbox API Endpoint`,"tokens.authHeader":`Authentication`,"tokens.authHeaderValue":`Authorization: Bearer `,"tokens.contentType":`Content-Type`,"tokens.requestFields":`Request fields`,"tokens.fieldFrom":`from: sender address. The domain must be added and verified.`,"tokens.fieldTo":`to: recipient address. Single email or an array of emails.`,"tokens.fieldSubject":`subject: email subject.`,"tokens.fieldText":`text: plain text body.`,"tokens.fieldHtml":`html: optional HTML body.`,"tokens.curlExample":`curl example`,"tokens.nodeExample":`Node / Fetch example`,"tokens.requestExample":`Request body example`,"tokens.responseExample":`Success response example`,"tokens.sendApi":`Send API`,"tokens.mailboxApi":`Create mailbox API`,"tokens.mailboxApiHint":`Use mode=permanent for a persistent mailbox. Use mode=temporary with expiresInMinutes for a temporary mailbox. When address is omitted, the server generates an address and password from domain.`,"tokens.permanentMailbox":`Create a persistent mailbox`,"tokens.temporaryMailbox":`Create a temporary mailbox`,"tokens.mailboxResponse":`Creation result and client configuration`,"tokens.securityTips":`Security tips`,"tokens.securityTipStore":`Store tokens only on the server side. Do not put them in browser code or public repositories.`,"tokens.securityTipRotate":`Use separate tokens per environment. Delete and recreate immediately after a leak.`,"tokens.securityTipScopes":`Grant only the scopes your integration needs. Mailbox automation does not need send.`,"tokens.securityTipDomain":`The From domain must belong to this account. Verify DNS before production sending.`,"tokens.noTokenHint":`Copy the full secret right after creation. Historical tokens show prefixes only, so examples use a placeholder.`,"webhooks.title":`Webhooks`,"webhooks.subtitle":`Push delivery updates to your HTTPS endpoint when mail is sent, bounced, or failed.`,"webhooks.create":`Create webhook`,"webhooks.createTitle":`Create webhook`,"webhooks.editTitle":`Edit webhook`,"webhooks.name":`Name`,"webhooks.namePlaceholder":`Production deliveries`,"webhooks.nameRequired":`Enter a webhook name`,"webhooks.url":`Callback URL`,"webhooks.urlPlaceholder":`https://example.com/webhooks/mailhub`,"webhooks.urlRequired":`Enter a callback URL`,"webhooks.urlHint":`Use HTTPS in production. Verify requests with the X-MailHub-Signature header.`,"webhooks.events":`Events`,"webhooks.eventsRequired":`Select at least one event`,"webhooks.eventSent":`Sent`,"webhooks.eventBounced":`Bounced`,"webhooks.eventFailed":`Failed`,"webhooks.eventOpened":`Opened`,"webhooks.eventClicked":`Clicked`,"webhooks.eventReceived":`Received`,"webhooks.enabled":`Enabled`,"webhooks.disabled":`Disabled`,"webhooks.scope":`Scope`,"webhooks.scopeAccount":`Account`,"webhooks.scopeDomain":`Domain`,"webhooks.scopeMailbox":`Mailbox`,"webhooks.domain":`Domain`,"webhooks.domainAccount":`Entire account`,"webhooks.domainOverrideHelp":`If this domain has any enabled endpoint for an event, account-level endpoints for that event are skipped.`,"webhooks.mailboxReceiptHelp":`email.received is delivered only after mail is stored in this mailbox. Forward-only mail does not trigger it.`,"webhooks.secret":`Signing secret`,"webhooks.secretPrefix":`Secret prefix`,"webhooks.secretCreatedTitle":`Webhook secret created`,"webhooks.secretRotatedTitle":`Webhook secret rotated`,"webhooks.secretCreatedWarning":`The full secret is shown only once. Copy it now and store it somewhere secure.`,"webhooks.copySecret":`Copy full secret`,"webhooks.rotateSecret":`Rotate secret`,"webhooks.rotateConfirm":`Rotate this webhook signing secret? The previous secret stops working immediately.`,"webhooks.test":`Send test`,"webhooks.testQueued":`Test delivery queued`,"webhooks.deleteConfirm":`Delete this webhook? Related delivery records will also be removed.`,"webhooks.empty":`No webhooks yet. Create one to receive delivery status callbacks.`,"webhooks.listTitle":`Endpoints`,"webhooks.actions":`Actions`,"webhooks.deliveriesTitle":`Deliveries`,"webhooks.deliveriesEmpty":`No deliveries yet`,"webhooks.deliveriesFilterWebhook":`Filter by webhook`,"webhooks.deliveriesFilterStatus":`Filter by status`,"webhooks.deliveriesFilterEvent":`Filter by event`,"webhooks.allWebhooks":`All webhooks`,"webhooks.allStatuses":`All statuses`,"webhooks.allEvents":`All events`,"webhooks.statusPending":`Pending`,"webhooks.statusProcessing":`Processing`,"webhooks.statusSuccess":`Success`,"webhooks.statusDead":`Dead`,"webhooks.attemptCount":`Attempts`,"webhooks.responseStatus":`HTTP status`,"webhooks.error":`Error`,"webhooks.replay":`Replay`,"webhooks.replaySuccess":`Delivery re-queued`,"webhooks.lastAttemptAt":`Last attempt`,"webhooks.nextAttemptAt":`Next attempt`,"webhooks.createdAt":`Created at`,"webhooks.viewDeliveries":`View deliveries`,"webhooks.docsTitle":`Callback notes`,"webhooks.docsSignature":`Verify the body with HMAC-SHA256; the signature is in X-MailHub-Signature.`,"webhooks.docsEvents":`Event types: sent, bounced, failed, opened, and clicked. Mailboxes can additionally subscribe to received.`,"testMail.title":`Send test email`,"testMail.fromRequired":`Enter the sender`,"testMail.toRequired":`Enter the recipient`,"actions.domainCreated":`Domain created`,"actions.dnsCheckCompleted":`DNS check completed`,"actions.dnsCheckRefreshed":`DNS check refreshed`,"actions.dnsApplyCompleted":`DNS write request completed`,"actions.dnsApplyPartial":`DNS write partially failed`,"actions.domainSaved":`Domain settings saved`,"actions.domainDeleted":`Domain deleted`,"actions.testMailQueued":`Submitted to sending queue`,"actions.dnsApiCreated":`DNS API created`,"actions.dnsApiUpdated":`DNS API updated`,"actions.dnsApiDeleted":`DNS API deleted`,"actions.dnsApiTestCompleted":`Connection test completed`,"actions.smtpCreated":`SMTP login credential created`,"actions.smtpUpdated":`SMTP login credential updated`,"actions.smtpDeleted":`SMTP login credential deleted`,"actions.smtpRelayCreated":`SMTP relay created`,"actions.smtpRelayUpdated":`SMTP relay updated`,"actions.smtpRelayDeleted":`SMTP relay deleted`,"actions.inboundMailboxCreated":`Inbound mailbox created`,"actions.settingsSaved":`System settings saved`,"actions.webhookCreated":`Webhook created`,"actions.webhookUpdated":`Webhook updated`,"actions.webhookDeleted":`Webhook deleted`,"actions.webhookSecretRotated":`Webhook secret rotated`,"actions.webhookTestQueued":`Webhook test queued`,"actions.webhookDeliveryReplayed":`Webhook delivery replayed`,"nav.dashboard":`Dashboard`,"nav.overview":`Overview`,"nav.activity":`Sending activity`,"nav.domains":`Domains`,"nav.dnsApi":`DNS API`,"nav.smtp":`SMTP Credentials`,"nav.inbox":`Inbox`,"nav.tokens":`API Tokens`,"nav.logs":`Sending Logs`,"nav.webhooks":`Webhooks`,"nav.smtpIntegration":`SMTP & relays`,"nav.apiKeys":`API keys`,"nav.dnsIntegration":`DNS integrations`,"nav.adminCenter":`Admin center`,"nav.admin":`Admin`,"nav.settings":`Settings`,"nav.group.overview":`Overview`,"nav.group.delivery":`Delivery`,"nav.group.operations":`Operations`,"nav.group.integrations":`Integrations`,"nav.group.system":`System`}};function $r(e=Xr){let t=String(e||``).trim();if(Zr.includes(t))return t;let n=t.toLowerCase();return n.startsWith(`zh`)?`zh-CN`:n.startsWith(`en`)?`en-US`:Xr}function ei(e=Xr){let t=$r(e);return e=>Qr[t]?.[e]||Qr[`zh-CN`]?.[e]||e}function ti(e){return{"zh-CN":`简体中文`,"en-US":`English`}[$r(e)]||String(e||`zh-CN`)}var ni=xe(),ri=`mailhub.locale`,ii=(0,M.createContext)(null);function ai({children:e}){let[t,n]=(0,M.useState)(()=>si());(0,M.useEffect)(()=>{document.documentElement.lang=t,window.localStorage.setItem(ri,t)},[t]);let r=(0,M.useMemo)(()=>({locale:t,locales:Zr.map(e=>({value:e,label:ti(e)})),setLocale:e=>n($r(e)),t:ei(t)}),[t]);return(0,ni.jsx)(ii.Provider,{value:r,children:e})}function oi(){let e=(0,M.useContext)(ii);if(!e)throw Error(`useI18n must be used inside I18nProvider`);return e}function si(){return typeof window>`u`?Xr:$r(new URLSearchParams(window.location.search).get(`lang`)||window.localStorage.getItem(ri)||`zh-CN`)}async function F(e,t={}){let n=new Headers(t.headers);t.data!==void 0&&!n.has(`Content-Type`)&&n.set(`Content-Type`,`application/json`);let r=await ci(e,{method:t.method||`GET`,headers:n,body:t.data===void 0?t.body:JSON.stringify(t.data)}),i=r.text,a=i?JSON.parse(i):{};if(r.status<200||r.status>=300)throw Error(a.error||a.message||li(r.status));return a}function ci(e,t){return typeof globalThis.fetch==`function`?globalThis.fetch(e,{method:t.method,headers:t.headers,body:t.body}).then(async e=>({status:e.status,text:await e.text()})):new Promise((n,r)=>{let i=new XMLHttpRequest;i.open(t.method,e,!0),t.headers.forEach((e,t)=>i.setRequestHeader(t,e)),i.onload=()=>n({status:i.status,text:i.responseText||``}),i.onerror=()=>r(Error(ui())),i.send(t.body||null)})}function li(e){return di().startsWith(`en`)?`Request failed: ${e}`:`请求失败:${e}`}function ui(){return di().startsWith(`en`)?`Network request failed`:`网络请求失败`}function di(){return document.documentElement.lang||window.localStorage.getItem(`mailhub.locale`)||`zh-CN`}var fi={me:()=>F(`/api/me`),config:()=>F(`/api/config`),domains:()=>F(`/api/domains`),events:(e={})=>{let t=pi(e);return F(`/api/events${t?`?${t}`:``}`)},event:e=>F(`/api/events/${e}`),inboundMailboxes:()=>F(`/api/inbound-mailboxes`),createInboundMailbox:e=>F(`/api/inbound-mailboxes`,{method:`POST`,data:e}),updateInboundMailbox:(e,t)=>F(`/api/inbound-mailboxes/${e}`,{method:`PATCH`,data:t}),inboundMessages:(e={})=>{let t=pi(typeof e==`number`?{mailboxId:e}:e||{});return F(`/api/inbound-messages${t?`?${t}`:``}`)},inboundFolders:e=>F(`/api/inbound-mailboxes/${e}/folders`),inboundMessage:e=>F(`/api/inbound-messages/${e}`),markInboundMessageRead:(e,t=!0)=>F(`/api/inbound-messages/${e}`,{method:`PATCH`,data:{read:t}}),analytics:(e=7)=>F(`/api/analytics?days=${e}`),smtpCredential:()=>F(`/api/smtp-credential`),saveSmtpCredential:e=>F(`/api/smtp-credential`,{method:`PUT`,data:e}),smtpCredentials:()=>F(`/api/smtp-credentials`),smtpCredentialDetail:e=>F(`/api/smtp-credentials/${e}`),saveSmtpLoginCredential:(e,t)=>F(t?`/api/smtp-credentials/${t}`:`/api/smtp-credentials`,{method:t?`PATCH`:`POST`,data:e}),deleteSmtpCredential:e=>F(`/api/smtp-credentials/${e}`,{method:`DELETE`}),smtpRelays:()=>F(`/api/smtp-relays`),smtpRelay:e=>F(`/api/smtp-relays/${e}`),saveSmtpRelay:(e,t)=>F(t?`/api/smtp-relays/${t}`:`/api/smtp-relays`,{method:t?`PATCH`:`POST`,data:e}),deleteSmtpRelay:e=>F(`/api/smtp-relays/${e}`,{method:`DELETE`}),dnsCredentials:()=>F(`/api/dns-credentials`),saveDnsCredential:(e,t)=>F(t?`/api/dns-credentials/${t}`:`/api/dns-credentials`,{method:t?`PATCH`:`POST`,data:e}),testDnsCredential:e=>F(`/api/dns-credentials/${e}/test`,{method:`POST`}),deleteDnsCredential:e=>F(`/api/dns-credentials/${e}`,{method:`DELETE`}),apiTokens:()=>F(`/api/api-tokens`),createApiToken:e=>F(`/api/api-tokens`,{method:`POST`,data:e}),updateApiToken:(e,t)=>F(`/api/api-tokens/${e}`,{method:`PATCH`,data:t}),deleteApiToken:e=>F(`/api/api-tokens/${e}`,{method:`DELETE`}),createDomain:e=>F(`/api/domains`,{method:`POST`,data:e}),patchDomain:(e,t)=>F(`/api/domains/${e}`,{method:`PATCH`,data:t}),checkDomain:e=>F(`/api/domains/${e}/check`,{method:`POST`}),applyDns:e=>F(`/api/domains/${e}/apply-dns`,{method:`POST`}),rotateDkim:(e,t)=>F(`/api/domains/${e}/rotate-dkim`,{method:`POST`,data:{selector:t}}),sendTest:(e,t)=>F(`/api/domains/${e}/test-send`,{method:`POST`,data:t}),deleteDomain:e=>F(`/api/domains/${e}`,{method:`DELETE`}),adminSettings:()=>F(`/api/admin/settings`),saveAdminSettings:e=>F(`/api/admin/settings`,{method:`PATCH`,data:e}),adminUsers:()=>F(`/api/admin/users`),updateAdminUser:(e,t)=>F(`/api/admin/users/${e}`,{method:`PATCH`,data:t}),approveAdminUser:e=>F(`/api/admin/users/${e}/approve`,{method:`POST`}),resendAdminVerification:e=>F(`/api/admin/users/${e}/resend-verification`,{method:`POST`}),sendAdminPasswordReset:e=>F(`/api/admin/users/${e}/password-reset`,{method:`POST`}),setAdminTemporaryPassword:(e,t)=>F(`/api/admin/users/${e}/temporary-password`,{method:`POST`,data:{password:t}}),adminResources:()=>F(`/api/admin/resources`),transferAdminDomain:(e,t)=>F(`/api/admin/resources/domains/${e}/transfer`,{method:`POST`,data:t}),transferAdminDnsCredential:(e,t)=>F(`/api/admin/resources/dns-credentials/${e}/transfer`,{method:`POST`,data:t}),transferAdminApiTokens:e=>F(`/api/admin/resources/api-tokens/transfer`,{method:`POST`,data:e}),previewUserMerge:e=>F(`/api/admin/migrations/user-merge/preview`,{method:`POST`,data:e}),executeUserMerge:e=>F(`/api/admin/migrations/user-merge/execute`,{method:`POST`,data:e}),adminSystemEmail:()=>F(`/api/admin/system-email`),saveAdminSystemEmail:e=>F(`/api/admin/system-email`,{method:`PATCH`,data:e}),testAdminSystemEmail:e=>F(`/api/admin/system-email/test`,{method:`POST`,data:e?{to:e}:{}}),adminAuditLogs:(e=``)=>F(`/api/admin/audit-logs${e?`?${e}`:``}`),resendVerification:e=>F(`/api/auth/resend-verification`,{method:`POST`,data:{email:e}}),forgotPassword:e=>F(`/api/auth/forgot-password`,{method:`POST`,data:{email:e}}),resetPassword:(e,t)=>F(`/api/auth/reset-password`,{method:`POST`,data:{token:e,password:t}}),logout:()=>F(`/api/logout`,{method:`POST`}),webhooks:(e,t)=>{let n=new URLSearchParams;e===null?n.set(`domainId`,`null`):e!==void 0&&n.set(`domainId`,String(e)),t!==void 0&&n.set(`mailboxId`,String(t));let r=n.toString();return F(`/api/webhooks${r?`?${r}`:``}`)},createWebhook:e=>F(`/api/webhooks`,{method:`POST`,data:e}),updateWebhook:(e,t)=>F(`/api/webhooks/${e}`,{method:`PATCH`,data:t}),deleteWebhook:e=>F(`/api/webhooks/${e}`,{method:`DELETE`}),rotateWebhookSecret:e=>F(`/api/webhooks/${e}/rotate-secret`,{method:`POST`}),testWebhook:e=>F(`/api/webhooks/${e}/test`,{method:`POST`}),webhookDeliveries:(e={})=>{let t=new URLSearchParams;e.status&&t.set(`status`,String(e.status)),e.webhookId!=null&&t.set(`webhookId`,String(e.webhookId)),e.eventType&&t.set(`eventType`,String(e.eventType)),e.limit!=null&&t.set(`limit`,String(e.limit));let n=t.toString();return F(`/api/webhook-deliveries${n?`?${n}`:``}`)},replayWebhookDelivery:e=>F(`/api/webhook-deliveries/${e}/replay`,{method:`POST`})};function pi(e){let t=new URLSearchParams;return Object.entries(e).forEach(([e,n])=>{n==null||n===``||t.set(e,String(n))}),t.toString()}var mi={primary:`#4F46E5`,primaryHover:`#4338CA`,primarySoft:`#EEF2FF`,ink:`#0F172A`,textSecondary:`#64748B`,textMuted:`#94A3B8`,canvas:`#F4F6FB`,surface:`#FFFFFF`,border:`#E2E8F0`,success:`#16A34A`,warning:`#D97706`,danger:`#DC2626`,chartPrimary:`#4F46E5`,chartSuccess:`#16A34A`,chartDanger:`#DC2626`,chartWarning:`#D97706`,chartTrack:`#DBEAFE`},hi={token:{colorPrimary:mi.primary,colorSuccess:mi.success,colorWarning:mi.warning,colorError:mi.danger,colorBgLayout:mi.canvas,colorBgContainer:mi.surface,colorBorderSecondary:mi.border,colorText:mi.ink,colorTextSecondary:mi.textSecondary,controlHeight:44,controlHeightLG:48,controlHeightSM:36,borderRadius:10,borderRadiusLG:14,fontFamily:`system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif`},components:{Card:{borderRadiusLG:14},Table:{cellPaddingBlock:14,cellPaddingInline:16},Button:{controlHeight:44,borderRadius:10},Menu:{darkItemBg:mi.ink,darkSubMenuItemBg:mi.ink,darkItemSelectedBg:`rgba(79, 70, 229, 0.22)`,darkItemSelectedColor:`#E0E7FF`,darkItemHoverBg:`rgba(255, 255, 255, 0.06)`,itemBorderRadius:10}}};export{rt as A,tn as C,Ft as D,Ut as E,Ie as M,Pe as N,P as O,je as P,an as S,Kt as T,vn as _,oi as a,fn as b,Ur as c,or as d,Dn as f,bn as g,xn as h,ai as i,Re as j,et as k,Br as l,Sn as m,hi as n,Yr as o,gn as p,fi as r,Kr as s,mi as t,Lr as u,yn as v,qt as w,ln as x,_n as y};