/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin */ var hb=Object.create;var Jl=Object.defineProperty;var Pf=Object.getOwnPropertyDescriptor;var gb=Object.getOwnPropertyNames;var vb=Object.getPrototypeOf,yb=Object.prototype.hasOwnProperty;var Wf=t=>{throw TypeError(t)};var Ye=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}},bb=(t,e)=>{for(var n in e)Jl(t,n,{get:e[n],enumerable:!0})},td=(t,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of gb(e))!yb.call(t,l)&&l!==n&&Jl(t,l,{get:()=>e[l],enumerable:!(a=Pf(e,l))||a.enumerable});return t};var Y=(t,e,n)=>(n=t!=null?hb(vb(t)):{},td(e||!t||!t.__esModule?Jl(n,"default",{value:t,enumerable:!0}):n,t)),Sb=t=>td(Jl({},"__esModule",{value:!0}),t),Fe=(t,e,n,a)=>{for(var l=a>1?void 0:a?Pf(e,n):e,i=t.length-1,r;i>=0;i--)(r=t[i])&&(l=(a?r(e,n,l):r(l))||l);return a&&l&&Jl(e,n,l),l};var Su=(t,e,n)=>e.has(t)||Wf("Cannot "+n);var R=(t,e,n)=>(Su(t,e,"read from private field"),n?n.call(t):e.get(t)),ot=(t,e,n)=>e.has(t)?Wf("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,n),X=(t,e,n,a)=>(Su(t,e,"write to private field"),a?a.call(t,n):e.set(t,n),n),C=(t,e,n)=>(Su(t,e,"access private method"),n);var ed=(t,e,n,a)=>({set _(l){X(t,e,l,n)},get _(){return R(t,e,a)}});var Od=Ye(()=>{var Cd;(function(t){(function(e){var n=typeof globalThis=="object"?globalThis:typeof global=="object"?global:typeof self=="object"?self:typeof this=="object"?this:o(),a=l(t);typeof n.Reflect<"u"&&(a=l(n.Reflect,a)),e(a,n),typeof n.Reflect>"u"&&(n.Reflect=t);function l(u,s){return function(m,g){Object.defineProperty(u,m,{configurable:!0,writable:!0,value:g}),s&&s(m,g)}}function i(){try{return Function("return this;")()}catch{}}function r(){try{return(0,eval)("(function() { return this; })()")}catch{}}function o(){return i()||r()}})(function(e,n){var a=Object.prototype.hasOwnProperty,l=typeof Symbol=="function",i=l&&typeof Symbol.toPrimitive<"u"?Symbol.toPrimitive:"@@toPrimitive",r=l&&typeof Symbol.iterator<"u"?Symbol.iterator:"@@iterator",o=typeof Object.create=="function",u={__proto__:[]}instanceof Array,s=!o&&!u,m={create:o?function(){return bu(Object.create(null))}:u?function(){return bu({__proto__:null})}:function(){return bu({})},has:s?function(v,b){return a.call(v,b)}:function(v,b){return b in v},get:s?function(v,b){return a.call(v,b)?v[b]:void 0}:function(v,b){return v[b]}},g=Object.getPrototypeOf(Function),h=typeof Map=="function"&&typeof Map.prototype.entries=="function"?Map:cb(),p=typeof Set=="function"&&typeof Set.prototype.entries=="function"?Set:fb(),_=typeof WeakMap=="function"?WeakMap:db(),E=l?Symbol.for("@reflect-metadata:registry"):void 0,A=ob(),d=ub(A);function c(v,b,T,z){if(j(T)){if(!Vf(v))throw new TypeError;if(!Qf(b))throw new TypeError;return at(v,b)}else{if(!Vf(v))throw new TypeError;if(!xt(b))throw new TypeError;if(!xt(z)&&!j(z)&&!La(z))throw new TypeError;return La(z)&&(z=void 0),T=Ze(T),pr(v,b,T,z)}}e("decorate",c);function f(v,b){function T(z,B){if(!xt(z))throw new TypeError;if(!j(B)&&!ib(B))throw new TypeError;qf(v,b,z,B)}return T}e("metadata",f);function y(v,b,T,z){if(!xt(T))throw new TypeError;return j(z)||(z=Ze(z)),qf(v,b,T,z)}e("defineMetadata",y);function O(v,b,T){if(!xt(b))throw new TypeError;return j(T)||(T=Ze(T)),Hf(v,b,T)}e("hasMetadata",O);function q(v,b,T){if(!xt(b))throw new TypeError;return j(T)||(T=Ze(T)),gu(v,b,T)}e("hasOwnMetadata",q);function D(v,b,T){if(!xt(b))throw new TypeError;return j(T)||(T=Ze(T)),Lf(v,b,T)}e("getMetadata",D);function M(v,b,T){if(!xt(b))throw new TypeError;return j(T)||(T=Ze(T)),Bf(v,b,T)}e("getOwnMetadata",M);function L(v,b){if(!xt(v))throw new TypeError;return j(b)||(b=Ze(b)),Yf(v,b)}e("getMetadataKeys",L);function Q(v,b){if(!xt(v))throw new TypeError;return j(b)||(b=Ze(b)),Gf(v,b)}e("getOwnMetadataKeys",Q);function Pt(v,b,T){if(!xt(b))throw new TypeError;if(j(T)||(T=Ze(T)),!xt(b))throw new TypeError;j(T)||(T=Ze(T));var z=Kl(b,T,!1);return j(z)?!1:z.OrdinaryDeleteMetadata(v,b,T)}e("deleteMetadata",Pt);function at(v,b){for(var T=v.length-1;T>=0;--T){var z=v[T],B=z(b);if(!j(B)&&!La(B)){if(!Qf(B))throw new TypeError;b=B}}return b}function pr(v,b,T,z){for(var B=v.length-1;B>=0;--B){var At=v[B],kt=At(b,T,z);if(!j(kt)&&!La(kt)){if(!xt(kt))throw new TypeError;z=kt}}return z}function Hf(v,b,T){var z=gu(v,b,T);if(z)return!0;var B=yu(b);return La(B)?!1:Hf(v,B,T)}function gu(v,b,T){var z=Kl(b,T,!1);return j(z)?!1:Xf(z.OrdinaryHasOwnMetadata(v,b,T))}function Lf(v,b,T){var z=gu(v,b,T);if(z)return Bf(v,b,T);var B=yu(b);if(!La(B))return Lf(v,B,T)}function Bf(v,b,T){var z=Kl(b,T,!1);if(!j(z))return z.OrdinaryGetOwnMetadata(v,b,T)}function qf(v,b,T,z){var B=Kl(T,z,!0);B.OrdinaryDefineOwnMetadata(v,b,T,z)}function Yf(v,b){var T=Gf(v,b),z=yu(v);if(z===null)return T;var B=Yf(z,b);if(B.length<=0)return T;if(T.length<=0)return B;for(var At=new p,kt=[],K=0,N=T;K=0&&N=this._keys.length?(this._index=-1,this._keys=b,this._values=b):this._index++,{value:k,done:!1}}return{value:void 0,done:!0}},K.prototype.throw=function(N){throw this._index>=0&&(this._index=-1,this._keys=b,this._values=b),N},K.prototype.return=function(N){return this._index>=0&&(this._index=-1,this._keys=b,this._values=b),{value:N,done:!0}},K})(),z=(function(){function K(){this._keys=[],this._values=[],this._cacheKey=v,this._cacheIndex=-2}return Object.defineProperty(K.prototype,"size",{get:function(){return this._keys.length},enumerable:!0,configurable:!0}),K.prototype.has=function(N){return this._find(N,!1)>=0},K.prototype.get=function(N){var k=this._find(N,!1);return k>=0?this._values[k]:void 0},K.prototype.set=function(N,k){var U=this._find(N,!0);return this._values[U]=k,this},K.prototype.delete=function(N){var k=this._find(N,!1);if(k>=0){for(var U=this._keys.length,H=k+1;H{"use strict";function Ou(t,e){var n=t.length;t.push(e);t:for(;0>>1,l=t[a];if(0<_r(l,e))t[a]=e,t[n]=l,n=a;else break t}}function $e(t){return t.length===0?null:t[0]}function Er(t){if(t.length===0)return null;var e=t[0],n=t.pop();if(n!==e){t[0]=n;t:for(var a=0,l=t.length,i=l>>>1;a_r(o,n))u_r(s,o)?(t[a]=s,t[u]=n,a=u):(t[a]=o,t[r]=n,a=r);else if(u_r(s,n))t[a]=s,t[u]=n,a=u;else break t}}return e}function _r(t,e){var n=t.sortIndex-e.sortIndex;return n!==0?n:t.id-e.id}bt.unstable_now=void 0;typeof performance=="object"&&typeof performance.now=="function"?(Dd=performance,bt.unstable_now=function(){return Dd.now()}):(zu=Date,Nd=zu.now(),bt.unstable_now=function(){return zu.now()-Nd});var Dd,zu,Nd,rn=[],On=[],Kb=1,Ae=null,Kt=3,Du=!1,Wl=!1,ti=!1,Nu=!1,Ud=typeof setTimeout=="function"?setTimeout:null,Hd=typeof clearTimeout=="function"?clearTimeout:null,Rd=typeof setImmediate<"u"?setImmediate:null;function Tr(t){for(var e=$e(On);e!==null;){if(e.callback===null)Er(On);else if(e.startTime<=t)Er(On),e.sortIndex=e.expirationTime,Ou(rn,e);else break;e=$e(On)}}function Ru(t){if(ti=!1,Tr(t),!Wl)if($e(rn)!==null)Wl=!0,ja||(ja=!0,Ga());else{var e=$e(On);e!==null&&ku(Ru,e.startTime-t)}}var ja=!1,ei=-1,Ld=5,Bd=-1;function qd(){return Nu?!0:!(bt.unstable_now()-Bdt&&qd());){var a=Ae.callback;if(typeof a=="function"){Ae.callback=null,Kt=Ae.priorityLevel;var l=a(Ae.expirationTime<=t);if(t=bt.unstable_now(),typeof l=="function"){Ae.callback=l,Tr(t),e=!0;break e}Ae===$e(rn)&&Er(rn),Tr(t)}else Er(rn);Ae=$e(rn)}if(Ae!==null)e=!0;else{var i=$e(On);i!==null&&ku(Ru,i.startTime-t),e=!1}}break t}finally{Ae=null,Kt=n,Du=!1}e=void 0}}finally{e?Ga():ja=!1}}}var Ga;typeof Rd=="function"?Ga=function(){Rd(wu)}:typeof MessageChannel<"u"?(Cu=new MessageChannel,kd=Cu.port2,Cu.port1.onmessage=wu,Ga=function(){kd.postMessage(null)}):Ga=function(){Ud(wu,0)};var Cu,kd;function ku(t,e){ei=Ud(function(){t(bt.unstable_now())},e)}bt.unstable_IdlePriority=5;bt.unstable_ImmediatePriority=1;bt.unstable_LowPriority=4;bt.unstable_NormalPriority=3;bt.unstable_Profiling=null;bt.unstable_UserBlockingPriority=2;bt.unstable_cancelCallback=function(t){t.callback=null};bt.unstable_forceFrameRate=function(t){0>t||125a?(t.sortIndex=n,Ou(On,t),$e(rn)===null&&t===$e(On)&&(ti?(Hd(ei),ei=-1):ti=!0,ku(Ru,n-a))):(t.sortIndex=l,Ou(rn,t),Wl||Du||(Wl=!0,ja||(ja=!0,Ga()))),t};bt.unstable_shouldYield=qd;bt.unstable_wrapCallback=function(t){var e=Kt;return function(){var n=Kt;Kt=e;try{return t.apply(this,arguments)}finally{Kt=n}}}});var jd=Ye((oE,Gd)=>{"use strict";Gd.exports=Yd()});var Wd=Ye(V=>{"use strict";var Lu=Symbol.for("react.transitional.element"),Jb=Symbol.for("react.portal"),$b=Symbol.for("react.fragment"),Pb=Symbol.for("react.strict_mode"),Wb=Symbol.for("react.profiler"),t0=Symbol.for("react.consumer"),e0=Symbol.for("react.context"),n0=Symbol.for("react.forward_ref"),a0=Symbol.for("react.suspense"),l0=Symbol.for("react.memo"),Zd=Symbol.for("react.lazy"),i0=Symbol.for("react.activity"),Xd=Symbol.iterator;function r0(t){return t===null||typeof t!="object"?null:(t=Xd&&t[Xd]||t["@@iterator"],typeof t=="function"?t:null)}var Fd={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Kd=Object.assign,Jd={};function Va(t,e,n){this.props=t,this.context=e,this.refs=Jd,this.updater=n||Fd}Va.prototype.isReactComponent={};Va.prototype.setState=function(t,e){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")};Va.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function $d(){}$d.prototype=Va.prototype;function Bu(t,e,n){this.props=t,this.context=e,this.refs=Jd,this.updater=n||Fd}var qu=Bu.prototype=new $d;qu.constructor=Bu;Kd(qu,Va.prototype);qu.isPureReactComponent=!0;var Vd=Array.isArray;function Hu(){}var ht={H:null,A:null,T:null,S:null},Pd=Object.prototype.hasOwnProperty;function Yu(t,e,n){var a=n.ref;return{$$typeof:Lu,type:t,key:e,ref:a!==void 0?a:null,props:n}}function o0(t,e){return Yu(t.type,e,t.props)}function Gu(t){return typeof t=="object"&&t!==null&&t.$$typeof===Lu}function u0(t){var e={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(n){return e[n]})}var Qd=/\/+/g;function Uu(t,e){return typeof t=="object"&&t!==null&&t.key!=null?u0(""+t.key):e.toString(36)}function s0(t){switch(t.status){case"fulfilled":return t.value;case"rejected":throw t.reason;default:switch(typeof t.status=="string"?t.then(Hu,Hu):(t.status="pending",t.then(function(e){t.status==="pending"&&(t.status="fulfilled",t.value=e)},function(e){t.status==="pending"&&(t.status="rejected",t.reason=e)})),t.status){case"fulfilled":return t.value;case"rejected":throw t.reason}}throw t}function Xa(t,e,n,a,l){var i=typeof t;(i==="undefined"||i==="boolean")&&(t=null);var r=!1;if(t===null)r=!0;else switch(i){case"bigint":case"string":case"number":r=!0;break;case"object":switch(t.$$typeof){case Lu:case Jb:r=!0;break;case Zd:return r=t._init,Xa(r(t._payload),e,n,a,l)}}if(r)return l=l(t),r=a===""?"."+Uu(t,0):a,Vd(l)?(n="",r!=null&&(n=r.replace(Qd,"$&/")+"/"),Xa(l,e,n,"",function(s){return s})):l!=null&&(Gu(l)&&(l=o0(l,n+(l.key==null||t&&t.key===l.key?"":(""+l.key).replace(Qd,"$&/")+"/")+r)),e.push(l)),1;r=0;var o=a===""?".":a+":";if(Vd(t))for(var u=0;u{"use strict";tp.exports=Wd()});var np=Ye(te=>{"use strict";var d0=_t();function ep(t){var e="https://react.dev/errors/"+t;if(1{"use strict";function ap(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(ap)}catch{}}ap(),lp.exports=np()});var vv=Ye($o=>{"use strict";var Ht=jd(),Dm=_t(),h0=ip();function x(t){var e="https://react.dev/errors/"+t;if(1$a||(t.current=Ms[$a],Ms[$a]=null,$a--)}function pt(t,e){$a++,Ms[$a]=t.current,t.current=e}var en=nn(null),wi=nn(null),Xn=nn(null),io=nn(null);function ro(t,e){switch(pt(Xn,e),pt(wi,t),pt(en,null),e.nodeType){case 9:case 11:t=(t=e.documentElement)&&(t=t.namespaceURI)?mm(t):0;break;default:if(t=e.tagName,e=e.namespaceURI)e=mm(e),t=av(e,t);else switch(t){case"svg":t=1;break;case"math":t=2;break;default:t=0}}Gt(en),pt(en,t)}function hl(){Gt(en),Gt(wi),Gt(Xn)}function zs(t){t.memoizedState!==null&&pt(io,t);var e=en.current,n=av(e,t.type);e!==n&&(pt(wi,t),pt(en,n))}function oo(t){wi.current===t&&(Gt(en),Gt(wi)),io.current===t&&(Gt(io),qi._currentValue=fa)}var ju,up;function oa(t){if(ju===void 0)try{throw Error()}catch(n){var e=n.stack.trim().match(/\n( *(at )?)/);ju=e&&e[1]||"",up=-1)":-1l||u[a]!==s[l]){var m=` `+u[a].replace(" at new "," at ");return t.displayName&&m.includes("")&&(m=m.replace("",t.displayName)),m}while(1<=a&&0<=l);break}}}finally{Xu=!1,Error.prepareStackTrace=n}return(n=t?t.displayName||t.name:"")?oa(n):""}function S0(t,e){switch(t.tag){case 26:case 27:case 5:return oa(t.type);case 16:return oa("Lazy");case 13:return t.child!==e&&e!==null?oa("Suspense Fallback"):oa("Suspense");case 19:return oa("SuspenseList");case 0:case 15:return Vu(t.type,!1);case 11:return Vu(t.type.render,!1);case 1:return Vu(t.type,!0);case 31:return oa("Activity");default:return""}}function sp(t){try{var e="",n=null;do e+=S0(t,n),n=t,t=t.return;while(t);return e}catch(a){return` Error generating stack: `+a.message+` `+a.stack}}var ws=Object.prototype.hasOwnProperty,yc=Ht.unstable_scheduleCallback,Qu=Ht.unstable_cancelCallback,_0=Ht.unstable_shouldYield,T0=Ht.unstable_requestPaint,ge=Ht.unstable_now,E0=Ht.unstable_getCurrentPriorityLevel,Bm=Ht.unstable_ImmediatePriority,qm=Ht.unstable_UserBlockingPriority,uo=Ht.unstable_NormalPriority,x0=Ht.unstable_LowPriority,Ym=Ht.unstable_IdlePriority,A0=Ht.log,M0=Ht.unstable_setDisableYieldValue,Xi=null,ve=null;function Bn(t){if(typeof A0=="function"&&M0(t),ve&&typeof ve.setStrictMode=="function")try{ve.setStrictMode(Xi,t)}catch{}}var ye=Math.clz32?Math.clz32:C0,z0=Math.log,w0=Math.LN2;function C0(t){return t>>>=0,t===0?32:31-(z0(t)/w0|0)|0}var zr=256,wr=262144,Cr=4194304;function ua(t){var e=t&42;if(e!==0)return e;switch(t&-t){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 t&261888;case 262144:case 524288:case 1048576:case 2097152:return t&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return t&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return t}}function Uo(t,e,n){var a=t.pendingLanes;if(a===0)return 0;var l=0,i=t.suspendedLanes,r=t.pingedLanes;t=t.warmLanes;var o=a&134217727;return o!==0?(a=o&~i,a!==0?l=ua(a):(r&=o,r!==0?l=ua(r):n||(n=o&~t,n!==0&&(l=ua(n))))):(o=a&~i,o!==0?l=ua(o):r!==0?l=ua(r):n||(n=a&~t,n!==0&&(l=ua(n)))),l===0?0:e!==0&&e!==l&&(e&i)===0&&(i=l&-l,n=e&-e,i>=n||i===32&&(n&4194048)!==0)?e:l}function Vi(t,e){return(t.pendingLanes&~(t.suspendedLanes&~t.pingedLanes)&e)===0}function O0(t,e){switch(t){case 1:case 2:case 4:case 8:case 64:return e+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 e+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 Gm(){var t=Cr;return Cr<<=1,(Cr&62914560)===0&&(Cr=4194304),t}function Iu(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Qi(t,e){t.pendingLanes|=e,e!==268435456&&(t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0)}function D0(t,e,n,a,l,i){var r=t.pendingLanes;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.warmLanes=0,t.expiredLanes&=n,t.entangledLanes&=n,t.errorRecoveryDisabledLanes&=n,t.shellSuspendCounter=0;var o=t.entanglements,u=t.expirationTimes,s=t.hiddenUpdates;for(n=r&~n;0"u")return null;try{return t.activeElement||t.body}catch{return t.body}}var L0=/[\n"\\]/g;function Oe(t){return t.replace(L0,function(e){return"\\"+e.charCodeAt(0).toString(16)+" "})}function Ds(t,e,n,a,l,i,r,o){t.name="",r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"?t.type=r:t.removeAttribute("type"),e!=null?r==="number"?(e===0&&t.value===""||t.value!=e)&&(t.value=""+ze(e)):t.value!==""+ze(e)&&(t.value=""+ze(e)):r!=="submit"&&r!=="reset"||t.removeAttribute("value"),e!=null?Ns(t,r,ze(e)):n!=null?Ns(t,r,ze(n)):a!=null&&t.removeAttribute("value"),l==null&&i!=null&&(t.defaultChecked=!!i),l!=null&&(t.checked=l&&typeof l!="function"&&typeof l!="symbol"),o!=null&&typeof o!="function"&&typeof o!="symbol"&&typeof o!="boolean"?t.name=""+ze(o):t.removeAttribute("name")}function Jm(t,e,n,a,l,i,r,o){if(i!=null&&typeof i!="function"&&typeof i!="symbol"&&typeof i!="boolean"&&(t.type=i),e!=null||n!=null){if(!(i!=="submit"&&i!=="reset"||e!=null)){Os(t);return}n=n!=null?""+ze(n):"",e=e!=null?""+ze(e):n,o||e===t.value||(t.value=e),t.defaultValue=e}a=a??l,a=typeof a!="function"&&typeof a!="symbol"&&!!a,t.checked=o?t.checked:!!a,t.defaultChecked=!!a,r!=null&&typeof r!="function"&&typeof r!="symbol"&&typeof r!="boolean"&&(t.name=r),Os(t)}function Ns(t,e,n){e==="number"&&so(t.ownerDocument)===t||t.defaultValue===""+n||(t.defaultValue=""+n)}function sl(t,e,n,a){if(t=t.options,e){e={};for(var l=0;l"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),ks=!1;if(Sn)try{Qa={},Object.defineProperty(Qa,"passive",{get:function(){ks=!0}}),window.addEventListener("test",Qa,Qa),window.removeEventListener("test",Qa,Qa)}catch{ks=!1}var Qa,qn=null,xc=null,Ir=null;function eh(){if(Ir)return Ir;var t,e=xc,n=e.length,a,l="value"in qn?qn.value:qn.textContent,i=l.length;for(t=0;t=hi),Sp=" ",_p=!1;function ah(t,e){switch(t){case"keyup":return fS.indexOf(e.keyCode)!==-1;case"keydown":return e.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function lh(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var tl=!1;function pS(t,e){switch(t){case"compositionend":return lh(e);case"keypress":return e.which!==32?null:(_p=!0,Sp);case"textInput":return t=e.data,t===Sp&&_p?null:t;default:return null}}function mS(t,e){if(tl)return t==="compositionend"||!Mc&&ah(t,e)?(t=eh(),Ir=xc=qn=null,tl=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(e.ctrlKey||e.altKey||e.metaKey)||e.ctrlKey&&e.altKey){if(e.char&&1=e)return{node:n,offset:e-t};t=a}t:{for(;n;){if(n.nextSibling){n=n.nextSibling;break t}n=n.parentNode}n=void 0}n=Ap(n)}}function uh(t,e){return t&&e?t===e?!0:t&&t.nodeType===3?!1:e&&e.nodeType===3?uh(t,e.parentNode):"contains"in t?t.contains(e):t.compareDocumentPosition?!!(t.compareDocumentPosition(e)&16):!1:!1}function sh(t){t=t!=null&&t.ownerDocument!=null&&t.ownerDocument.defaultView!=null?t.ownerDocument.defaultView:window;for(var e=so(t.document);e instanceof t.HTMLIFrameElement;){try{var n=typeof e.contentWindow.location.href=="string"}catch{n=!1}if(n)t=e.contentWindow;else break;e=so(t.document)}return e}function zc(t){var e=t&&t.nodeName&&t.nodeName.toLowerCase();return e&&(e==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||e==="textarea"||t.contentEditable==="true")}var TS=Sn&&"documentMode"in document&&11>=document.documentMode,el=null,Us=null,vi=null,Hs=!1;function zp(t,e,n){var a=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Hs||el==null||el!==so(a)||(a=el,"selectionStart"in a&&zc(a)?a={start:a.selectionStart,end:a.selectionEnd}:(a=(a.ownerDocument&&a.ownerDocument.defaultView||window).getSelection(),a={anchorNode:a.anchorNode,anchorOffset:a.anchorOffset,focusNode:a.focusNode,focusOffset:a.focusOffset}),vi&&Di(vi,a)||(vi=a,a=wo(Us,"onSelect"),0>=r,l-=r,Pe=1<<32-ye(e)+l|n<M?(L=D,D=null):L=D.sibling;var Q=h(d,D,f[M],y);if(Q===null){D===null&&(D=L);break}t&&D&&Q.alternate===null&&e(d,D),c=i(Q,c,M),q===null?O=Q:q.sibling=Q,q=Q,D=L}if(M===f.length)return n(d,D),et&&dn(d,M),O;if(D===null){for(;MM?(L=D,D=null):L=D.sibling;var Pt=h(d,D,Q.value,y);if(Pt===null){D===null&&(D=L);break}t&&D&&Pt.alternate===null&&e(d,D),c=i(Pt,c,M),q===null?O=Pt:q.sibling=Pt,q=Pt,D=L}if(Q.done)return n(d,D),et&&dn(d,M),O;if(D===null){for(;!Q.done;M++,Q=f.next())Q=g(d,Q.value,y),Q!==null&&(c=i(Q,c,M),q===null?O=Q:q.sibling=Q,q=Q);return et&&dn(d,M),O}for(D=a(D);!Q.done;M++,Q=f.next())Q=p(D,d,M,Q.value,y),Q!==null&&(t&&Q.alternate!==null&&D.delete(Q.key===null?M:Q.key),c=i(Q,c,M),q===null?O=Q:q.sibling=Q,q=Q);return t&&D.forEach(function(at){return e(d,at)}),et&&dn(d,M),O}function A(d,c,f,y){if(typeof f=="object"&&f!==null&&f.type===Ja&&f.key===null&&(f=f.props.children),typeof f=="object"&&f!==null){switch(f.$$typeof){case Mr:t:{for(var O=f.key;c!==null;){if(c.key===O){if(O=f.type,O===Ja){if(c.tag===7){n(d,c.sibling),y=l(c,f.props.children),y.return=d,d=y;break t}}else if(c.elementType===O||typeof O=="object"&&O!==null&&O.$$typeof===Nn&&sa(O)===c.type){n(d,c.sibling),y=l(c,f.props),ii(y,f),y.return=d,d=y;break t}n(d,c);break}else e(d,c);c=c.sibling}f.type===Ja?(y=da(f.props.children,d.mode,y,f.key),y.return=d,d=y):(y=Fr(f.type,f.key,f.props,null,d.mode,y),ii(y,f),y.return=d,d=y)}return r(d);case ci:t:{for(O=f.key;c!==null;){if(c.key===O)if(c.tag===4&&c.stateNode.containerInfo===f.containerInfo&&c.stateNode.implementation===f.implementation){n(d,c.sibling),y=l(c,f.children||[]),y.return=d,d=y;break t}else{n(d,c);break}else e(d,c);c=c.sibling}y=ts(f,d.mode,y),y.return=d,d=y}return r(d);case Nn:return f=sa(f),A(d,c,f,y)}if(fi(f))return _(d,c,f,y);if(ai(f)){if(O=ai(f),typeof O!="function")throw Error(x(150));return f=O.call(f),E(d,c,f,y)}if(typeof f.then=="function")return A(d,c,Ur(f),y);if(f.$$typeof===mn)return A(d,c,kr(d,f),y);Hr(d,f)}return typeof f=="string"&&f!==""||typeof f=="number"||typeof f=="bigint"?(f=""+f,c!==null&&c.tag===6?(n(d,c.sibling),y=l(c,f),y.return=d,d=y):(n(d,c),y=Wu(f,d.mode,y),y.return=d,d=y),r(d)):n(d,c)}return function(d,c,f,y){try{ki=0;var O=A(d,c,f,y);return dl=null,O}catch(D){if(D===Cl||D===Go)throw D;var q=me(29,D,null,d.mode);return q.lanes=y,q.return=d,q}}}var ya=xh(!0),Ah=xh(!1),Rn=!1;function Hc(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Xs(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,callbacks:null})}function Qn(t){return{lane:t,tag:0,payload:null,callback:null,next:null}}function In(t,e,n){var a=t.updateQueue;if(a===null)return null;if(a=a.shared,(lt&2)!==0){var l=a.pending;return l===null?e.next=e:(e.next=l.next,l.next=e),a.pending=e,e=fo(t),gh(t,null,n),e}return Yo(t,a,e,n),fo(t)}function bi(t,e,n){if(e=e.updateQueue,e!==null&&(e=e.shared,(n&4194048)!==0)){var a=e.lanes;a&=t.pendingLanes,n|=a,e.lanes=n,Xm(t,n)}}function ns(t,e){var n=t.updateQueue,a=t.alternate;if(a!==null&&(a=a.updateQueue,n===a)){var l=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var r={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};i===null?l=i=r:i=i.next=r,n=n.next}while(n!==null);i===null?l=i=e:i=i.next=e}else l=i=e;n={baseState:a.baseState,firstBaseUpdate:l,lastBaseUpdate:i,shared:a.shared,callbacks:a.callbacks},t.updateQueue=n;return}t=n.lastBaseUpdate,t===null?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}var Vs=!1;function Si(){if(Vs){var t=fl;if(t!==null)throw t}}function _i(t,e,n,a){Vs=!1;var l=t.updateQueue;Rn=!1;var i=l.firstBaseUpdate,r=l.lastBaseUpdate,o=l.shared.pending;if(o!==null){l.shared.pending=null;var u=o,s=u.next;u.next=null,r===null?i=s:r.next=s,r=u;var m=t.alternate;m!==null&&(m=m.updateQueue,o=m.lastBaseUpdate,o!==r&&(o===null?m.firstBaseUpdate=s:o.next=s,m.lastBaseUpdate=u))}if(i!==null){var g=l.baseState;r=0,m=s=u=null,o=i;do{var h=o.lane&-536870913,p=h!==o.lane;if(p?(tt&h)===h:(a&h)===h){h!==0&&h===yl&&(Vs=!0),m!==null&&(m=m.next={lane:0,tag:o.tag,payload:o.payload,callback:null,next:null});t:{var _=t,E=o;h=e;var A=n;switch(E.tag){case 1:if(_=E.payload,typeof _=="function"){g=_.call(A,g,h);break t}g=_;break t;case 3:_.flags=_.flags&-65537|128;case 0:if(_=E.payload,h=typeof _=="function"?_.call(A,g,h):_,h==null)break t;g=yt({},g,h);break t;case 2:Rn=!0}}h=o.callback,h!==null&&(t.flags|=64,p&&(t.flags|=8192),p=l.callbacks,p===null?l.callbacks=[h]:p.push(h))}else p={lane:h,tag:o.tag,payload:o.payload,callback:o.callback,next:null},m===null?(s=m=p,u=g):m=m.next=p,r|=h;if(o=o.next,o===null){if(o=l.shared.pending,o===null)break;p=o,o=p.next,p.next=null,l.lastBaseUpdate=p,l.shared.pending=null}}while(!0);m===null&&(u=g),l.baseState=u,l.firstBaseUpdate=s,l.lastBaseUpdate=m,i===null&&(l.shared.lanes=0),ea|=r,t.lanes=r,t.memoizedState=g}}function Mh(t,e){if(typeof t!="function")throw Error(x(191,t));t.call(e)}function zh(t,e){var n=t.callbacks;if(n!==null)for(t.callbacks=null,t=0;ti?i:8;var r=G.T,o={};G.T=o,Kc(t,!1,e,n);try{var u=l(),s=G.S;if(s!==null&&s(o,u),u!==null&&typeof u=="object"&&typeof u.then=="function"){var m=DS(u,a);Ti(t,e,m,be(t))}else Ti(t,e,a,be(t))}catch(g){Ti(t,e,{then:function(){},status:"rejected",reason:g},be())}finally{it.p=i,r!==null&&o.types!==null&&(r.types=o.types),G.T=r}}function LS(){}function Ks(t,e,n,a){if(t.tag!==5)throw Error(x(476));var l=Ph(t).queue;$h(t,l,e,fa,n===null?LS:function(){return Wh(t),n(a)})}function Ph(t){var e=t.memoizedState;if(e!==null)return e;e={memoizedState:fa,baseState:fa,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Tn,lastRenderedState:fa},next:null};var n={};return e.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Tn,lastRenderedState:n},next:null},t.memoizedState=e,t=t.alternate,t!==null&&(t.memoizedState=e),e}function Wh(t){var e=Ph(t);e.next===null&&(e=t.alternate.memoizedState),Ti(t,e.next.queue,{},be())}function Fc(){return Qt(qi)}function tg(){return wt().memoizedState}function eg(){return wt().memoizedState}function BS(t){for(var e=t.return;e!==null;){switch(e.tag){case 24:case 3:var n=be();t=Qn(n);var a=In(e,t,n);a!==null&&(oe(a,e,n),bi(a,e,n)),e={cache:Rc()},t.payload=e;return}e=e.return}}function qS(t,e,n){var a=be();n={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Qo(t)?ag(e,n):(n=Cc(t,e,n,a),n!==null&&(oe(n,t,a),lg(n,e,a)))}function ng(t,e,n){var a=be();Ti(t,e,n,a)}function Ti(t,e,n,a){var l={lane:a,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Qo(t))ag(e,l);else{var i=t.alternate;if(t.lanes===0&&(i===null||i.lanes===0)&&(i=e.lastRenderedReducer,i!==null))try{var r=e.lastRenderedState,o=i(r,n);if(l.hasEagerState=!0,l.eagerState=o,Se(o,r))return Yo(t,e,l,0),dt===null&&qo(),!1}catch{}if(n=Cc(t,e,l,a),n!==null)return oe(n,t,a),lg(n,e,a),!0}return!1}function Kc(t,e,n,a){if(a={lane:2,revertLane:lf(),gesture:null,action:a,hasEagerState:!1,eagerState:null,next:null},Qo(t)){if(e)throw Error(x(479))}else e=Cc(t,n,a,2),e!==null&&oe(e,t,2)}function Qo(t){var e=t.alternate;return t===I||e!==null&&e===I}function ag(t,e){pl=yo=!0;var n=t.pending;n===null?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function lg(t,e,n){if((n&4194048)!==0){var a=e.lanes;a&=t.pendingLanes,n|=a,e.lanes=n,Xm(t,n)}}var Hi={readContext:Qt,use:Xo,useCallback:Tt,useContext:Tt,useEffect:Tt,useImperativeHandle:Tt,useLayoutEffect:Tt,useInsertionEffect:Tt,useMemo:Tt,useReducer:Tt,useRef:Tt,useState:Tt,useDebugValue:Tt,useDeferredValue:Tt,useTransition:Tt,useSyncExternalStore:Tt,useId:Tt,useHostTransitionStatus:Tt,useFormState:Tt,useActionState:Tt,useOptimistic:Tt,useMemoCache:Tt,useCacheRefresh:Tt};Hi.useEffectEvent=Tt;var ig={readContext:Qt,use:Xo,useCallback:function(t,e){return ee().memoizedState=[t,e===void 0?null:e],t},useContext:Qt,useEffect:jp,useImperativeHandle:function(t,e,n){n=n!=null?n.concat([t]):null,$r(4194308,4,Ih.bind(null,e,t),n)},useLayoutEffect:function(t,e){return $r(4194308,4,t,e)},useInsertionEffect:function(t,e){$r(4,2,t,e)},useMemo:function(t,e){var n=ee();e=e===void 0?null:e;var a=t();if(ba){Bn(!0);try{t()}finally{Bn(!1)}}return n.memoizedState=[a,e],a},useReducer:function(t,e,n){var a=ee();if(n!==void 0){var l=n(e);if(ba){Bn(!0);try{n(e)}finally{Bn(!1)}}}else l=e;return a.memoizedState=a.baseState=l,t={pending:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:l},a.queue=t,t=t.dispatch=qS.bind(null,I,t),[a.memoizedState,t]},useRef:function(t){var e=ee();return t={current:t},e.memoizedState=t},useState:function(t){t=Zs(t);var e=t.queue,n=ng.bind(null,I,e);return e.dispatch=n,[t.memoizedState,n]},useDebugValue:Ic,useDeferredValue:function(t,e){var n=ee();return Zc(n,t,e)},useTransition:function(){var t=Zs(!1);return t=$h.bind(null,I,t.queue,!0,!1),ee().memoizedState=t,[!1,t]},useSyncExternalStore:function(t,e,n){var a=I,l=ee();if(et){if(n===void 0)throw Error(x(407));n=n()}else{if(n=e(),dt===null)throw Error(x(349));(tt&127)!==0||Nh(a,e,n)}l.memoizedState=n;var i={value:n,getSnapshot:e};return l.queue=i,jp(kh.bind(null,a,i,t),[t]),a.flags|=2048,Sl(9,{destroy:void 0},Rh.bind(null,a,i,n,e),null),n},useId:function(){var t=ee(),e=dt.identifierPrefix;if(et){var n=We,a=Pe;n=(a&~(1<<32-ye(a)-1)).toString(32)+n,e="_"+e+"R_"+n,n=bo++,0<\/script>",i=i.removeChild(i.firstChild);break;case"select":i=typeof a.is=="string"?r.createElement("select",{is:a.is}):r.createElement("select"),a.multiple?i.multiple=!0:a.size&&(i.size=a.size);break;default:i=typeof a.is=="string"?r.createElement(l,{is:a.is}):r.createElement(l)}}i[Xt]=e,i[ue]=a;t:for(r=e.child;r!==null;){if(r.tag===5||r.tag===6)i.appendChild(r.stateNode);else if(r.tag!==4&&r.tag!==27&&r.child!==null){r.child.return=r,r=r.child;continue}if(r===e)break t;for(;r.sibling===null;){if(r.return===null||r.return===e)break t;r=r.return}r.sibling.return=r.return,r=r.sibling}e.stateNode=i;t:switch(It(i,l,a),l){case"button":case"input":case"select":case"textarea":a=!!a.autoFocus;break t;case"img":a=!0;break t;default:a=!1}a&&un(e)}}return gt(e),cs(e,e.type,t===null?null:t.memoizedProps,e.pendingProps,n),null;case 6:if(t&&e.stateNode!=null)t.memoizedProps!==a&&un(e);else{if(typeof a!="string"&&e.stateNode===null)throw Error(x(166));if(t=Xn.current,Ia(e)){if(t=e.stateNode,n=e.memoizedProps,a=null,l=Vt,l!==null)switch(l.tag){case 27:case 5:a=l.memoizedProps}t[Xt]=e,t=!!(t.nodeValue===n||a!==null&&a.suppressHydrationWarning===!0||nv(t.nodeValue,n)),t||Wn(e,!0)}else t=Co(t).createTextNode(a),t[Xt]=e,e.stateNode=t}return gt(e),null;case 31:if(n=e.memoizedState,t===null||t.memoizedState!==null){if(a=Ia(e),n!==null){if(t===null){if(!a)throw Error(x(318));if(t=e.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(x(557));t[Xt]=e}else ga(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;gt(e),t=!1}else n=es(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=n),t=!0;if(!t)return e.flags&256?(pe(e),e):(pe(e),null);if((e.flags&128)!==0)throw Error(x(558))}return gt(e),null;case 13:if(a=e.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(l=Ia(e),a!==null&&a.dehydrated!==null){if(t===null){if(!l)throw Error(x(318));if(l=e.memoizedState,l=l!==null?l.dehydrated:null,!l)throw Error(x(317));l[Xt]=e}else ga(),(e.flags&128)===0&&(e.memoizedState=null),e.flags|=4;gt(e),l=!1}else l=es(),t!==null&&t.memoizedState!==null&&(t.memoizedState.hydrationErrors=l),l=!0;if(!l)return e.flags&256?(pe(e),e):(pe(e),null)}return pe(e),(e.flags&128)!==0?(e.lanes=n,e):(n=a!==null,t=t!==null&&t.memoizedState!==null,n&&(a=e.child,l=null,a.alternate!==null&&a.alternate.memoizedState!==null&&a.alternate.memoizedState.cachePool!==null&&(l=a.alternate.memoizedState.cachePool.pool),i=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(i=a.memoizedState.cachePool.pool),i!==l&&(a.flags|=2048)),n!==t&&n&&(e.child.flags|=8192),Lr(e,e.updateQueue),gt(e),null);case 4:return hl(),t===null&&rf(e.stateNode.containerInfo),gt(e),null;case 10:return yn(e.type),gt(e),null;case 19:if(Gt(zt),a=e.memoizedState,a===null)return gt(e),null;if(l=(e.flags&128)!==0,i=a.rendering,i===null)if(l)ri(a,!1);else{if(Et!==0||t!==null&&(t.flags&128)!==0)for(t=e.child;t!==null;){if(i=vo(t),i!==null){for(e.flags|=128,ri(a,!1),t=i.updateQueue,e.updateQueue=t,Lr(e,t),e.subtreeFlags=0,t=n,n=e.child;n!==null;)vh(n,t),n=n.sibling;return pt(zt,zt.current&1|2),et&&dn(e,a.treeForkCount),e.child}t=t.sibling}a.tail!==null&&ge()>Eo&&(e.flags|=128,l=!0,ri(a,!1),e.lanes=4194304)}else{if(!l)if(t=vo(i),t!==null){if(e.flags|=128,l=!0,t=t.updateQueue,e.updateQueue=t,Lr(e,t),ri(a,!0),a.tail===null&&a.tailMode==="hidden"&&!i.alternate&&!et)return gt(e),null}else 2*ge()-a.renderingStartTime>Eo&&n!==536870912&&(e.flags|=128,l=!0,ri(a,!1),e.lanes=4194304);a.isBackwards?(i.sibling=e.child,e.child=i):(t=a.last,t!==null?t.sibling=i:e.child=i,a.last=i)}return a.tail!==null?(t=a.tail,a.rendering=t,a.tail=t.sibling,a.renderingStartTime=ge(),t.sibling=null,n=zt.current,pt(zt,l?n&1|2:n&1),et&&dn(e,a.treeForkCount),t):(gt(e),null);case 22:case 23:return pe(e),Lc(),a=e.memoizedState!==null,t!==null?t.memoizedState!==null!==a&&(e.flags|=8192):a&&(e.flags|=8192),a?(n&536870912)!==0&&(e.flags&128)===0&&(gt(e),e.subtreeFlags&6&&(e.flags|=8192)):gt(e),n=e.updateQueue,n!==null&&Lr(e,n.retryQueue),n=null,t!==null&&t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),a=null,e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(a=e.memoizedState.cachePool.pool),a!==n&&(e.flags|=2048),t!==null&&Gt(pa),null;case 24:return n=null,t!==null&&(n=t.memoizedState.cache),e.memoizedState.cache!==n&&(e.flags|=2048),yn(Nt),gt(e),null;case 25:return null;case 30:return null}throw Error(x(156,e.tag))}function VS(t,e){switch(Nc(e),e.tag){case 1:return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 3:return yn(Nt),hl(),t=e.flags,(t&65536)!==0&&(t&128)===0?(e.flags=t&-65537|128,e):null;case 26:case 27:case 5:return oo(e),null;case 31:if(e.memoizedState!==null){if(pe(e),e.alternate===null)throw Error(x(340));ga()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 13:if(pe(e),t=e.memoizedState,t!==null&&t.dehydrated!==null){if(e.alternate===null)throw Error(x(340));ga()}return t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 19:return Gt(zt),null;case 4:return hl(),null;case 10:return yn(e.type),null;case 22:case 23:return pe(e),Lc(),t!==null&&Gt(pa),t=e.flags,t&65536?(e.flags=t&-65537|128,e):null;case 24:return yn(Nt),null;case 25:return null;default:return null}}function vg(t,e){switch(Nc(e),e.tag){case 3:yn(Nt),hl();break;case 26:case 27:case 5:oo(e);break;case 4:hl();break;case 31:e.memoizedState!==null&&pe(e);break;case 13:pe(e);break;case 19:Gt(zt);break;case 10:yn(e.type);break;case 22:case 23:pe(e),Lc(),t!==null&&Gt(pa);break;case 24:yn(Nt)}}function Ji(t,e){try{var n=e.updateQueue,a=n!==null?n.lastEffect:null;if(a!==null){var l=a.next;n=l;do{if((n.tag&t)===t){a=void 0;var i=n.create,r=n.inst;a=i(),r.destroy=a}n=n.next}while(n!==l)}}catch(o){st(e,e.return,o)}}function ta(t,e,n){try{var a=e.updateQueue,l=a!==null?a.lastEffect:null;if(l!==null){var i=l.next;a=i;do{if((a.tag&t)===t){var r=a.inst,o=r.destroy;if(o!==void 0){r.destroy=void 0,l=e;var u=n,s=o;try{s()}catch(m){st(l,u,m)}}}a=a.next}while(a!==i)}}catch(m){st(e,e.return,m)}}function yg(t){var e=t.updateQueue;if(e!==null){var n=t.stateNode;try{zh(e,n)}catch(a){st(t,t.return,a)}}}function bg(t,e,n){n.props=Sa(t.type,t.memoizedProps),n.state=t.memoizedState;try{n.componentWillUnmount()}catch(a){st(t,e,a)}}function Ei(t,e){try{var n=t.ref;if(n!==null){switch(t.tag){case 26:case 27:case 5:var a=t.stateNode;break;case 30:a=t.stateNode;break;default:a=t.stateNode}typeof n=="function"?t.refCleanup=n(a):n.current=a}}catch(l){st(t,e,l)}}function tn(t,e){var n=t.ref,a=t.refCleanup;if(n!==null)if(typeof a=="function")try{a()}catch(l){st(t,e,l)}finally{t.refCleanup=null,t=t.alternate,t!=null&&(t.refCleanup=null)}else if(typeof n=="function")try{n(null)}catch(l){st(t,e,l)}else n.current=null}function Sg(t){var e=t.type,n=t.memoizedProps,a=t.stateNode;try{t:switch(e){case"button":case"input":case"select":case"textarea":n.autoFocus&&a.focus();break t;case"img":n.src?a.src=n.src:n.srcSet&&(a.srcset=n.srcSet)}}catch(l){st(t,t.return,l)}}function fs(t,e,n){try{var a=t.stateNode;c1(a,t.type,n,e),a[ue]=e}catch(l){st(t,t.return,l)}}function _g(t){return t.tag===5||t.tag===3||t.tag===26||t.tag===27&&aa(t.type)||t.tag===4}function ds(t){t:for(;;){for(;t.sibling===null;){if(t.return===null||_g(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.tag===27&&aa(t.type)||t.flags&2||t.child===null||t.tag===4)continue t;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function tc(t,e,n){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?(n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n).insertBefore(t,e):(e=n.nodeType===9?n.body:n.nodeName==="HTML"?n.ownerDocument.body:n,e.appendChild(t),n=n._reactRootContainer,n!=null||e.onclick!==null||(e.onclick=hn));else if(a!==4&&(a===27&&aa(t.type)&&(n=t.stateNode,e=null),t=t.child,t!==null))for(tc(t,e,n),t=t.sibling;t!==null;)tc(t,e,n),t=t.sibling}function To(t,e,n){var a=t.tag;if(a===5||a===6)t=t.stateNode,e?n.insertBefore(t,e):n.appendChild(t);else if(a!==4&&(a===27&&aa(t.type)&&(n=t.stateNode),t=t.child,t!==null))for(To(t,e,n),t=t.sibling;t!==null;)To(t,e,n),t=t.sibling}function Tg(t){var e=t.stateNode,n=t.memoizedProps;try{for(var a=t.type,l=e.attributes;l.length;)e.removeAttributeNode(l[0]);It(e,a,n),e[Xt]=t,e[ue]=n}catch(i){st(t,t.return,i)}}var pn=!1,Dt=!1,ps=!1,em=typeof WeakSet=="function"?WeakSet:Set,qt=null;function QS(t,e){if(t=t.containerInfo,oc=Ro,t=sh(t),zc(t)){if("selectionStart"in t)var n={start:t.selectionStart,end:t.selectionEnd};else t:{n=(n=t.ownerDocument)&&n.defaultView||window;var a=n.getSelection&&n.getSelection();if(a&&a.rangeCount!==0){n=a.anchorNode;var l=a.anchorOffset,i=a.focusNode;a=a.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break t}var r=0,o=-1,u=-1,s=0,m=0,g=t,h=null;e:for(;;){for(var p;g!==n||l!==0&&g.nodeType!==3||(o=r+l),g!==i||a!==0&&g.nodeType!==3||(u=r+a),g.nodeType===3&&(r+=g.nodeValue.length),(p=g.firstChild)!==null;)h=g,g=p;for(;;){if(g===t)break e;if(h===n&&++s===l&&(o=r),h===i&&++m===a&&(u=r),(p=g.nextSibling)!==null)break;g=h,h=g.parentNode}g=p}n=o===-1||u===-1?null:{start:o,end:u}}else n=null}n=n||{start:0,end:0}}else n=null;for(uc={focusedElem:t,selectionRange:n},Ro=!1,qt=e;qt!==null;)if(e=qt,t=e.child,(e.subtreeFlags&1028)!==0&&t!==null)t.return=e,qt=t;else for(;qt!==null;){switch(e=qt,i=e.alternate,t=e.flags,e.tag){case 0:if((t&4)!==0&&(t=e.updateQueue,t=t!==null?t.events:null,t!==null))for(n=0;n title"))),It(i,a,n),i[Xt]=t,Yt(i),a=i;break t;case"link":var r=Em("link","href",l).get(a+(n.href||""));if(r){for(var o=0;oA&&(r=A,A=E,E=r);var d=Mp(o,E),c=Mp(o,A);if(d&&c&&(p.rangeCount!==1||p.anchorNode!==d.node||p.anchorOffset!==d.offset||p.focusNode!==c.node||p.focusOffset!==c.offset)){var f=g.createRange();f.setStart(d.node,d.offset),p.removeAllRanges(),E>A?(p.addRange(f),p.extend(c.node,c.offset)):(f.setEnd(c.node,c.offset),p.addRange(f))}}}}for(g=[],p=o;p=p.parentNode;)p.nodeType===1&&g.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof o.focus=="function"&&o.focus(),o=0;on?32:n,G.T=null,n=ac,ac=null;var i=Fn,r=bn;if(Ut=0,Tl=Fn=null,bn=0,(lt&6)!==0)throw Error(x(331));var o=lt;if(lt|=4,Rg(i.current),Og(i,i.current,r,n),lt=o,$i(0,!1),ve&&typeof ve.onPostCommitFiberRoot=="function")try{ve.onPostCommitFiberRoot(Xi,i)}catch{}return!0}finally{it.p=l,G.T=a,Fg(t,e)}}function im(t,e,n){e=De(n,e),e=$s(t.stateNode,e,2),t=In(t,e,2),t!==null&&(Qi(t,2),an(t))}function st(t,e,n){if(t.tag===3)im(t,t,n);else for(;e!==null;){if(e.tag===3){im(e,t,n);break}else if(e.tag===1){var a=e.stateNode;if(typeof e.type.getDerivedStateFromError=="function"||typeof a.componentDidCatch=="function"&&(Zn===null||!Zn.has(a))){t=De(n,t),n=cg(2),a=In(e,n,2),a!==null&&(fg(n,a,e,t),Qi(a,2),an(a));break}}e=e.return}}function hs(t,e,n){var a=t.pingCache;if(a===null){a=t.pingCache=new FS;var l=new Set;a.set(e,l)}else l=a.get(e),l===void 0&&(l=new Set,a.set(e,l));l.has(n)||(ef=!0,l.add(n),t=WS.bind(null,t,e,n),e.then(t,t))}function WS(t,e,n){var a=t.pingCache;a!==null&&a.delete(e),t.pingedLanes|=t.suspendedLanes&n,t.warmLanes&=~n,dt===t&&(tt&n)===n&&(Et===4||Et===3&&(tt&62914560)===tt&&300>ge()-Io?(lt&2)===0&&El(t,0):nf|=n,_l===tt&&(_l=0)),an(t)}function Jg(t,e){e===0&&(e=Gm()),t=xa(t,e),t!==null&&(Qi(t,e),an(t))}function t1(t){var e=t.memoizedState,n=0;e!==null&&(n=e.retryLane),Jg(t,n)}function e1(t,e){var n=0;switch(t.tag){case 31:case 13:var a=t.stateNode,l=t.memoizedState;l!==null&&(n=l.retryLane);break;case 19:a=t.stateNode;break;case 22:a=t.stateNode._retryCache;break;default:throw Error(x(314))}a!==null&&a.delete(e),Jg(t,n)}function n1(t,e){return yc(t,e)}var Mo=null,Ka=null,ic=!1,zo=!1,gs=!1,jn=0;function an(t){t!==Ka&&t.next===null&&(Ka===null?Mo=Ka=t:Ka=Ka.next=t),zo=!0,ic||(ic=!0,l1())}function $i(t,e){if(!gs&&zo){gs=!0;do for(var n=!1,a=Mo;a!==null;){if(!e)if(t!==0){var l=a.pendingLanes;if(l===0)var i=0;else{var r=a.suspendedLanes,o=a.pingedLanes;i=(1<<31-ye(42|t)+1)-1,i&=l&~(r&~o),i=i&201326741?i&201326741|1:i?i|2:0}i!==0&&(n=!0,rm(a,i))}else i=tt,i=Uo(a,a===dt?i:0,a.cancelPendingCommit!==null||a.timeoutHandle!==-1),(i&3)===0||Vi(a,i)||(n=!0,rm(a,i));a=a.next}while(n);gs=!1}}function a1(){$g()}function $g(){zo=ic=!1;var t=0;jn!==0&&d1()&&(t=jn);for(var e=ge(),n=null,a=Mo;a!==null;){var l=a.next,i=Pg(a,e);i===0?(a.next=null,n===null?Mo=l:n.next=l,l===null&&(Ka=n)):(n=a,(t!==0||(i&3)!==0)&&(zo=!0)),a=l}Ut!==0&&Ut!==5||$i(t,!1),jn!==0&&(jn=0)}function Pg(t,e){for(var n=t.suspendedLanes,a=t.pingedLanes,l=t.expirationTimes,i=t.pendingLanes&-62914561;0o)break;var m=u.transferSize,g=u.initiatorType;m&&pm(g)&&(u=u.responseEnd,r+=m*(u"u"?null:document;function ov(t,e,n){var a=Dl;if(a&&typeof e=="string"&&e){var l=Oe(e);l='link[rel="'+t+'"][href="'+l+'"]',typeof n=="string"&&(l+='[crossorigin="'+n+'"]'),Sm.has(l)||(Sm.add(l),t={rel:t,crossOrigin:n,href:e},a.querySelector(l)===null&&(e=a.createElement("link"),It(e,"link",t),Yt(e),a.head.appendChild(e)))}}function _1(t){An.D(t),ov("dns-prefetch",t,null)}function T1(t,e){An.C(t,e),ov("preconnect",t,e)}function E1(t,e,n){An.L(t,e,n);var a=Dl;if(a&&t&&e){var l='link[rel="preload"][as="'+Oe(e)+'"]';e==="image"&&n&&n.imageSrcSet?(l+='[imagesrcset="'+Oe(n.imageSrcSet)+'"]',typeof n.imageSizes=="string"&&(l+='[imagesizes="'+Oe(n.imageSizes)+'"]')):l+='[href="'+Oe(t)+'"]';var i=l;switch(e){case"style":i=xl(t);break;case"script":i=Nl(t)}Ue.has(i)||(t=yt({rel:"preload",href:e==="image"&&n&&n.imageSrcSet?void 0:t,as:e},n),Ue.set(i,t),a.querySelector(l)!==null||e==="style"&&a.querySelector(Pi(i))||e==="script"&&a.querySelector(Wi(i))||(e=a.createElement("link"),It(e,"link",t),Yt(e),a.head.appendChild(e)))}}function x1(t,e){An.m(t,e);var n=Dl;if(n&&t){var a=e&&typeof e.as=="string"?e.as:"script",l='link[rel="modulepreload"][as="'+Oe(a)+'"][href="'+Oe(t)+'"]',i=l;switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":i=Nl(t)}if(!Ue.has(i)&&(t=yt({rel:"modulepreload",href:t},e),Ue.set(i,t),n.querySelector(l)===null)){switch(a){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(n.querySelector(Wi(i)))return}a=n.createElement("link"),It(a,"link",t),Yt(a),n.head.appendChild(a)}}}function A1(t,e,n){An.S(t,e,n);var a=Dl;if(a&&t){var l=ul(a).hoistableStyles,i=xl(t);e=e||"default";var r=l.get(i);if(!r){var o={loading:0,preload:null};if(r=a.querySelector(Pi(i)))o.loading=5;else{t=yt({rel:"stylesheet",href:t,"data-precedence":e},n),(n=Ue.get(i))&&of(t,n);var u=r=a.createElement("link");Yt(u),It(u,"link",t),u._p=new Promise(function(s,m){u.onload=s,u.onerror=m}),u.addEventListener("load",function(){o.loading|=1}),u.addEventListener("error",function(){o.loading|=2}),o.loading|=4,eo(r,e,a)}r={type:"stylesheet",instance:r,count:1,state:o},l.set(i,r)}}}function M1(t,e){An.X(t,e);var n=Dl;if(n&&t){var a=ul(n).hoistableScripts,l=Nl(t),i=a.get(l);i||(i=n.querySelector(Wi(l)),i||(t=yt({src:t,async:!0},e),(e=Ue.get(l))&&uf(t,e),i=n.createElement("template"),Yt(i),It(i,"link",t),n.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},a.set(l,i))}}function z1(t,e){An.M(t,e);var n=Dl;if(n&&t){var a=ul(n).hoistableScripts,l=Nl(t),i=a.get(l);i||(i=n.querySelector(Wi(l)),i||(t=yt({src:t,async:!0,type:"module"},e),(e=Ue.get(l))&&uf(t,e),i=n.createElement("template"),Yt(i),It(i,"link",t),n.head.appendChild(i)),i={type:"script",instance:i,count:1,state:null},a.set(l,i))}}function _m(t,e,n,a){var l=(l=Xn.current)?Oo(l):null;if(!l)throw Error(x(446));switch(t){case"meta":case"title":return null;case"style":return typeof n.precedence=="string"&&typeof n.href=="string"?(e=xl(n.href),n=ul(l).hoistableStyles,a=n.get(e),a||(a={type:"style",instance:null,count:0,state:null},n.set(e,a)),a):{type:"void",instance:null,count:0,state:null};case"link":if(n.rel==="stylesheet"&&typeof n.href=="string"&&typeof n.precedence=="string"){t=xl(n.href);var i=ul(l).hoistableStyles,r=i.get(t);if(r||(l=l.ownerDocument||l,r={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},i.set(t,r),(i=l.querySelector(Pi(t)))&&!i._p&&(r.instance=i,r.state.loading=5),Ue.has(t)||(n={rel:"preload",as:"style",href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Ue.set(t,n),i||w1(l,t,n,r.state))),e&&a===null)throw Error(x(528,""));return r}if(e&&a!==null)throw Error(x(529,""));return null;case"script":return e=n.async,n=n.src,typeof n=="string"&&e&&typeof e!="function"&&typeof e!="symbol"?(e=Nl(n),n=ul(l).hoistableScripts,a=n.get(e),a||(a={type:"script",instance:null,count:0,state:null},n.set(e,a)),a):{type:"void",instance:null,count:0,state:null};default:throw Error(x(444,t))}}function xl(t){return'href="'+Oe(t)+'"'}function Pi(t){return'link[rel="stylesheet"]['+t+"]"}function uv(t){return yt({},t,{"data-precedence":t.precedence,precedence:null})}function w1(t,e,n,a){t.querySelector('link[rel="preload"][as="style"]['+e+"]")?a.loading=1:(e=t.createElement("link"),a.preload=e,e.addEventListener("load",function(){return a.loading|=1}),e.addEventListener("error",function(){return a.loading|=2}),It(e,"link",n),Yt(e),t.head.appendChild(e))}function Nl(t){return'[src="'+Oe(t)+'"]'}function Wi(t){return"script[async]"+t}function Tm(t,e,n){if(e.count++,e.instance===null)switch(e.type){case"style":var a=t.querySelector('style[data-href~="'+Oe(n.href)+'"]');if(a)return e.instance=a,Yt(a),a;var l=yt({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return a=(t.ownerDocument||t).createElement("style"),Yt(a),It(a,"style",l),eo(a,n.precedence,t),e.instance=a;case"stylesheet":l=xl(n.href);var i=t.querySelector(Pi(l));if(i)return e.state.loading|=4,e.instance=i,Yt(i),i;a=uv(n),(l=Ue.get(l))&&of(a,l),i=(t.ownerDocument||t).createElement("link"),Yt(i);var r=i;return r._p=new Promise(function(o,u){r.onload=o,r.onerror=u}),It(i,"link",a),e.state.loading|=4,eo(i,n.precedence,t),e.instance=i;case"script":return i=Nl(n.src),(l=t.querySelector(Wi(i)))?(e.instance=l,Yt(l),l):(a=n,(l=Ue.get(i))&&(a=yt({},n),uf(a,l)),t=t.ownerDocument||t,l=t.createElement("template"),Yt(l),It(l,"link",a),t.head.appendChild(l),e.instance=l);case"void":return null;default:throw Error(x(443,e.type))}else e.type==="stylesheet"&&(e.state.loading&4)===0&&(a=e.instance,e.state.loading|=4,eo(a,n.precedence,t));return e.instance}function eo(t,e,n){for(var a=n.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),l=a.length?a[a.length-1]:null,i=l,r=0;r title"):null)}function C1(t,e,n){if(n===1||e.itemProp!=null)return!1;switch(t){case"meta":case"title":return!0;case"style":if(typeof e.precedence!="string"||typeof e.href!="string"||e.href==="")break;return!0;case"link":if(typeof e.rel!="string"||typeof e.href!="string"||e.href===""||e.onLoad||e.onError)break;return e.rel==="stylesheet"?(t=e.disabled,typeof e.precedence=="string"&&t==null):!0;case"script":if(e.async&&typeof e.async!="function"&&typeof e.async!="symbol"&&!e.onLoad&&!e.onError&&e.src&&typeof e.src=="string")return!0}return!1}function sv(t){return!(t.type==="stylesheet"&&(t.state.loading&3)===0)}function O1(t,e,n,a){if(n.type==="stylesheet"&&(typeof a.media!="string"||matchMedia(a.media).matches!==!1)&&(n.state.loading&4)===0){if(n.instance===null){var l=xl(a.href),i=e.querySelector(Pi(l));if(i){e=i._p,e!==null&&typeof e=="object"&&typeof e.then=="function"&&(t.count++,t=Do.bind(t),e.then(t,t)),n.state.loading|=4,n.instance=i,Yt(i);return}i=e.ownerDocument||e,a=uv(a),(l=Ue.get(l))&&of(a,l),i=i.createElement("link"),Yt(i);var r=i;r._p=new Promise(function(o,u){r.onload=o,r.onerror=u}),It(i,"link",a),n.instance=i}t.stylesheets===null&&(t.stylesheets=new Map),t.stylesheets.set(n,e),(e=n.state.preload)&&(n.state.loading&3)===0&&(t.count++,n=Do.bind(t),e.addEventListener("load",n),e.addEventListener("error",n))}}var Ss=0;function D1(t,e){return t.stylesheets&&t.count===0&&ao(t,t.stylesheets),0Ss?50:800)+e);return t.unsuspend=n,function(){t.unsuspend=null,clearTimeout(a),clearTimeout(l)}}:null}function Do(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ao(this,this.stylesheets);else if(this.unsuspend){var t=this.unsuspend;this.unsuspend=null,t()}}}var No=null;function ao(t,e){t.stylesheets=null,t.unsuspend!==null&&(t.count++,No=new Map,e.forEach(N1,t),No=null,Do.call(t))}function N1(t,e){if(!(e.state.loading&4)){var n=No.get(t);if(n)var a=n.get(null);else{n=new Map,No.set(t,n);for(var l=t.querySelectorAll("link[data-precedence],style[data-precedence]"),i=0;i{"use strict";function yv(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(yv)}catch{}}yv(),bv.exports=vv()});var Dv=Ye(Po=>{"use strict";var Q1=Symbol.for("react.transitional.element"),I1=Symbol.for("react.fragment");function Ov(t,e,n){var a=null;if(n!==void 0&&(a=""+n),e.key!==void 0&&(a=""+e.key),"key"in e){n={};for(var l in e)l!=="key"&&(n[l]=e[l])}else n=e;return e=n.ref,{$$typeof:Q1,type:t,key:a,ref:e!==void 0?e:null,props:n}}Po.Fragment=I1;Po.jsx=Ov;Po.jsxs=Ov});var nt=Ye((AE,Nv)=>{"use strict";Nv.exports=Dv()});var x_={};bb(x_,{default:()=>hu});module.exports=Sb(x_);var nd=require("obsidian"),mr=class{constructor(e){this.submenuCache=new WeakMap;this.lastToolIdByMenu=new WeakMap;this.plugin=e}get _app(){return this.plugin.app}get _plugin(){return this.plugin}get _settingsStore(){return this.plugin.settingsStore}get _settings(){return this.plugin.settings}notice(e){new nd.Notice(e)}refreshSettingTab(){this.plugin.settingTab?.update()}getToolkitSubmenu(e,n="action"){let a=this.submenuCache.get(e);if(a)return a;let l;return e.addItem(i=>{i.setSection(n),i.setTitle(this.plugin.manifest.name),i.setIcon("wand"),l=i.setSubmenu()}),this.submenuCache.set(e,l),l}addToolkitMenuItem(e,n,a,l="action"){let i=this.getToolkitSubmenu(e,l),r=this.lastToolIdByMenu.get(e);r!==void 0&&r!==n&&i.addSeparator(),this.lastToolIdByMenu.set(e,n),i.addItem(a)}log(e,n,a,...l){}};var hr=class{constructor(e){this.toolkit=new Map;this.toolkitState=new Map;this.pluginContext=e}registerTool(e){this.toolkit.set(e.info.id,e),this.toolkitState.set(e.info.id,{loaded:!1,errors:[]})}async loadTool(e){let n=this.toolkit.get(e);if(!n)throw new Error(`Tool ${e} not found.`);let a=this.toolkitState.get(e);if(!a.loaded)try{if(!this.pluginContext._settingsStore.getToolSettings(e)?.enabled)return;this.pluginContext._plugin.addChild(n),a.loaded=!0,this.pluginContext.log("info","loaded successfully",e)}catch(l){throw a.errors.push(l),l}}async unloadTool(e){let n=this.toolkit.get(e);if(!n)return;let a=this.toolkitState.get(e);if(a.loaded)try{n.onunload(),this.pluginContext._plugin.removeChild(n),a.loaded=!1,this.pluginContext.log("info","unloaded successfully",e)}catch(l){throw a.errors.push(l),l}}getTool(e){return this.toolkit.get(e)}getToolkit(){return Array.from(this.toolkit.values())}getEnabledToolkit(){return this.getToolkit().filter(e=>e.isEnabled())}isToolLoaded(e){return this.toolkitState.get(e)?.loaded||!1}async enableTool(e){await this.pluginContext._settingsStore.updateToolSettingByPath(e,"enabled",!0),await this.loadTool(e)}async disableTool(e){await this.pluginContext._settingsStore.updateToolSettingByPath(e,"enabled",!1),await this.unloadTool(e)}async loadEnabledToolkit(){let e=this.pluginContext._settings.toolkit||{},n=[];for(let[a,l]of Object.entries(e))if(l.enabled)try{await this.loadTool(a)}catch(i){let r=i;n.push({id:a,error:r}),this.pluginContext.log("error",`Failed to load tool ${a}: ${r.message}`,a);let o=this.toolkitState.get(a);o&&o.errors.push(r)}}unloadToolkit(){for(let e of this.toolkit.keys())this.unloadTool(e)}};var $l=class t{constructor(){this.toolkit=new Map}static getInstance(){return t.instance||(t.instance=new t),t.instance}register(e,n){if(this.toolkit.has(e))throw new Error(`Tool with id ${e} is already registered.`);this.toolkit.set(e,n)}get(e){return this.toolkit.get(e)}getAll(){return Array.from(this.toolkit.values())}has(e){return this.toolkit.has(e)}unregister(e){return this.toolkit.delete(e)}clear(){this.toolkit.clear()}},ad=$l.getInstance();var Ad=require("obsidian");var _b=t=>Object.fromEntries(Object.entries(t).map(([e,n])=>e!=="i"&&n&&n!="0"&&[e,n]).filter(Boolean)),Tb=t=>Object.fromEntries(Object.keys(t).map(e=>{let n=t[e];return[e,Array.isArray(n)?n.map(a=>a?.trim()):n===!!n?n:n?.trim()]})),Eb=t=>{let[e="",...n]=t.split("|"),[a="",l]=e.split(":"),[i,r]=a.split("?");return{k:i,i:l,n:r==="",f:n}},id=t=>!!(t.o||t.r),xb=(t,e)=>{let[n,a]=t.split(":");a||(a=n,n=e);let l=a.split("|"),[i,r,o,u,s,m]=l,g=l.filter(h=>h!==void 0).length;return g===1?{k:n,r:i}:g===2?{k:n,o:i,r}:g===3?{k:n,z:i,o:r,r:o}:{k:n,z:i,o:r,t:o,f:u,m:s,r:m}},rd=/^\{.*\}$/,od=t=>Object.fromEntries(_u(t).split(",").map(e=>e.split(":")).reduce((e,n)=>n.length===2?[...e,n.map(a=>a.trim())]:(e[e.length-1][1]+=","+n[0],e),[])),ld=/(\{(?:[^{}]+|\{(?:[^{}]+)*\})*\})/g,_u=t=>t.substring(1,t.length-1),ud=(t,e=!0,n="",a="")=>t.split(ld).map(l=>{if(!l.match(ld))return l;let i=_u(l);if(i.startsWith("{"))return xb(_u(i),a);let r=Eb(i);return a=r.k||a,!n&&(n=a),r}).map(l=>{if(typeof l=="string")return l;l.k||(l.k=n||"0");let i=Tb(l);return e?_b(i):i});var Ab=(t,e,n)=>e.reduce((a,l)=>{var i,r;return(r=l.match(rd)?(o=>{var u;return(u=o[a])!==null&&u!==void 0?u:o["*"]})(od(l)):(i=t[l])===null||i===void 0?void 0:i.call(t,a))!==null&&r!==void 0?r:a},n),Mb=(t,{z:e,o:n,t:a,f:l,m:i,r},o)=>{switch(e&&o==0?"zero":t.select(o)){case"zero":return e;case"one":return n;case"two":return a;case"few":return l??r;case"many":return i??r;default:return r}},zb=/\?\?/g,wb=(t,e,n,a)=>t.map(l=>{if(typeof l=="string")return l;let{k:i="0",f:r=[]}=l,o=a[i];if(id(l))return((typeof o=="boolean"?o?l.o:l.r:Mb(e,l,o))||"").replace(zb,o);let u=r.length?Ab(n,r,o):o;return(""+(u??"")).trim()}).join(""),Tu=(t,e,n,a)=>{let l=a[0],i=l&&typeof l=="object"&&l.constructor===Object,r=a.length===1&&i?l:a;return wb(t,e,n,r)};var sd=(t,e)=>t[e]||(t[e]=ud(e));var Cb=(t,e)=>{let n={},a=new Intl.PluralRules(t);return(l,...i)=>Tu(sd(n,l),a,e,i)};function gr(t,e,n={}){return fd(e,Cb(t,n))}var cd=(t={},e)=>typeof t=="string"?e.bind(null,t):Object.assign(Object.defineProperty(()=>"","name",{writable:!0}),t),fd=(t,e)=>new Proxy(cd(t,e),{get:(n,a)=>a===Symbol.iterator?[][Symbol.iterator].bind(Object.values(n).map(l=>cd(l,e))):fd(n[a],e)});var Nb=(t,e)=>{let n=t?.split(";").map(a=>a.trim()).find(a=>a.startsWith(e))?.split("=")[1];return n?[n]:[]},dd=(t="lang")=>()=>Nb(document?.cookie,t),Rb=dd();var kb=t=>!!t,pd=(t="lang")=>()=>[window?.localStorage?.getItem(t)].filter(kb),Ub=pd();var md=(t="lang")=>()=>{let e=location?.search?.slice(1).split("&").find(n=>n.startsWith(t))?.split("=")[1];return e?[e]:[]},Hb=md();var Lb=t=>!!t,hd=(t="lang")=>()=>[window?.sessionStorage?.getItem(t)].filter(Lb),Bb=hd();var Yb=vd;function vd(){var t=[].slice.call(arguments),e=!1;typeof t[0]=="boolean"&&(e=t.shift());var n=t[0];if(gd(n))throw new Error("extendee must be an object");for(var a=t.slice(1),l=a.length,i=0;i(t,e)=>Yb({},t,e),xT=Eu();var xu=["en","zh","zh-TW"],yd=t=>xu.includes(t),qa={},Au={},CT=Eu();var bd=t=>gr(t,qa[t],Au[t]);var Sd=t=>({});var jb={common:{enabled:"Enabled",enabledDesc:"Turn this tool on or off",noConfig:"This tool has no configurable options",add:"Add",delete:"Delete",reset:"Reset",moveUp:"Move up",moveDown:"Move down"},settings:{folder_templates:{name:"Folder templates",desc:"Apply templates seamlessly when creating new files in specified folders",templatesFolderPath:{name:"Templates folder path",desc:"The folder where template files are stored; leave empty to follow the official templates plugin configuration"},rules:{name:"Template rules",unnamed:"New rule",enabledDesc:"Turn this rule on or off",addFirst:"Create your first rule",scopesUnit:"conditions",warnNoTemplate:"No template file set for this rule",renamePreview:"Preview: ",templateFile:{name:"Template file",desc:"Template applied when the rule matches; supports date, time and variable expressions"},applyMode:{name:"Apply mode",desc:"What to do when the file already has content",emptyOnly:"Empty files only",prepend:"Prepend to content"},renameFormat:{name:"Rename format",desc:"Rename the file on creation using this template, supports variable expressions; leave empty to disable"}},scopes:{name:"Match conditions",empty:"The rule will not take effect without match conditions",typeFolder:"Folder",typeExcludeFolder:"Exclude folder",typeFilenamePattern:"Filename regex",typeRoot:"Vault root (all subfolders)",rootHint:"Matches the whole vault, narrowed only by exclude conditions; keep such fallback rules last in the list",pathPlaceholder:"folder/path",patternPlaceholder:"^\\d+-\\d+",patternInvalid:"Invalid regular expression",includeSubfolders:"Include subfolders"},variables:{title:"Available variables",legacy:"Legacy {date} / {time} syntax is still supported.",clickToCopy:"Click to copy",copied:"Copied",notename:"Note name",folder:"Parent folder name",folderPath:"Parent folder path",date:"Current date (YYYY-MM-DD)",time:"Current time (HH:mm)",year:"Current year",yearMonth:"Year and month (YYYYMM)",timestamp:"Millisecond timestamp",now:"Custom moment format",frontmatter:"Frontmatter field value"}},quick_path:{name:"Quick path",desc:"Quickly get the path of a specified file/folder",addEditorMenu:{name:"Add editor menu",desc:"Add an option to paste the current file path in the editor menu"},addFileMenu:{name:"Add file list menu",desc:"Add an option to copy the file/folder path in the file list menu"},useAbsolutePath:{name:"Absolute path",desc:"Use absolute path, starting from the root directory of the operating system"},pathSeparator:{name:"Path separator",desc:"Separator for multiple paths",newline:"Newline",comma:"Comma",semicolon:"Semicolon",space:"Space"}},folder_scaffolder:{name:"Folder scaffolder",desc:"Clone a folder's directory structure; supports ad-hoc copy/paste and saving as a template",templates:{name:"Structure templates"},templateCard:{unnamed:"Untitled template",enabledDesc:"Turn this template on or off",addFirst:"Create your first template",nameField:{name:"Name",desc:"Shown in commands and menus"},sourceField:{name:"Source folder",desc:"Snapshot source (display/refresh only)"},refresh:"Refresh snapshot",refreshed:"Refreshed {count} subfolders from source",sourceNotFound:"Source folder does not exist, cannot refresh",subDirs:"{count} subfolders",structure:{name:"Folder structure",empty:'No folders yet. Click "Add root folder" to start building.'},addRootFolder:"Add root folder",addFolder:"Add subfolder",newFolderName:"New folder",indent:"Indent",outdent:"Outdent",renameHint:"Double-click to rename",dragHint:"Use buttons or Tab / Shift+Tab / Alt+\u2191\u2193 to reorder and nest",collapse:"Collapse",expand:"Expand",importFromVault:"Import from vault",importFromVaultDesc:"Optional: read a structure from an existing folder to fill in below (manual edits still apply)"}},plugin_order:{name:"Plugin load order",desc:"Keeps the specified plugins at the front of the community-plugins.json array so they load first",priority_plugins:{name:"Priority plugins",desc:`Only reorders entries, never adds or removes any; disabled/uninstalled ones are marked with a badge. Takes effect on the next restart, not in the current session. When enabled alongside custom-icons' "load first" option, include custom-sidebar-icons in this list.`,search_placeholder:"Search by plugin name or ID to add\u2026",empty:"No priority plugins yet \u2014 search above to add one",count:"{count}",status:{enabled:"Enabled",disabled:"Installed, disabled",missing:"Not installed"}},apply_now:{name:"Apply now and refresh cache",desc:"Reads installed plugins (enabled or not) to refresh the cache, then reorders the load order per the current list"}},plugin_filter:{name:"Plugin filter",desc:"Filter the installed-plugin list by enabled state in the Community plugins settings",tooltip:"Plugin filter: {label}",action_tooltip:"Bulk-toggle the filtered plugins",action_enable:"Enable all ({count})",action_disable:"Disable all ({count})",confirm_title:"Batch disable includes protected plugins",confirm_desc:"The plugins below are on the disable protection list and may affect your setup if disabled. Checked ones will be disabled; uncheck to skip.",confirm_run:"Disable selected ({count})",confirm_self_badge:"this plugin",confirm_cancel:"Cancel",guard:{name:"Disable protection list",hint:"A confirmation dialog appears when a batch disable includes these plugins (each can be excluded); this plugin (RavenHogwarts Toolkit) is always protected and needs no entry.",empty:"No protected plugins \u2014 search below to add",search_placeholder:"Search plugins by name or ID\u2026",remove_member:"Remove"},groups:{name:"Plugin groups",desc:"Group plugins your way; groups appear in the filter menu, and one plugin can join multiple groups",add_group:"Add group",unnamed:"Unnamed group",empty_groups:'No groups yet \u2014 click "Add group" to create one',empty_members:"No members yet \u2014 search below to add",search_placeholder:"Search plugins by name or ID\u2026",member_count:"{count} plugins",missing:"Not installed",remove_member:"Remove",delete_group:"Delete group",group_name_aria:"Group name",summary:"{groups} groups \xB7 {members} members",collapse:"Collapse group",expand:"Expand group",confirm_delete:"Click again to confirm",status_enabled:"Enabled",status_disabled:"Not enabled"},all:"All ({count})",enabled:"Enabled ({count})",disabled:"Disabled ({count})",updatable:"Updatable ({count})"}},command:{quick_path:{copy_current_file_path:"Copy current file path",copy_current_folder_path:"Copy current folder path"},folder_scaffolder:{create_from_template:"Create structure from template",paste_structure:"Paste structure into current folder"},plugin_order:{apply:"Apply plugin order now"}},menu:{quick_path:{copy_file_path:"Copy file path",copy_files_path:"Copy multiple paths",copy_folder_path:"Copy folder path",paste_current_file_path:"Paste current file path",paste_current_folder_path:"Paste current folder path"},folder_scaffolder:{create_from_template:"Create structure from template",copy_structure:"Copy this folder structure",paste_structure:"Paste folder structure",save_as_template:"Save this structure as a template"}},modal:{folder_scaffolder:{scaffold_title:"Create structure from template",select_template:"Select template",target_parent:"Target location",target_parent_desc:"The structure will be cloned into this folder",new_folder_name:"Wrapper folder (optional)",new_folder_name_desc:"Add an additional folder layer around the cloned structure",confirm:"Create",save_template_title:"Save as template",template_name:"Template name",save:"Save"}},notice:{quick_path:{copy_success:"Path copied to clipboard",copy_failure:"Failed to copy path",root_path_warning:"The current file is in the root directory, unable to get the parent folder path"},plugin_order:{applied:"Plugin load order updated (effective on next restart)",invalid:"community-plugins.json has an unexpected structure, skipped"},plugin_filter:{enabled_n:"Enabled {count} plugins",disabled_n:"Disabled {count} plugins"},folder_scaffolder:{no_template:"No templates available, add one in settings first",copied:"Copied {count} subfolders to the clipboard",clipboard_empty:"Clipboard is empty, copy a folder structure first",empty_structure:"This folder has no subfolders, nothing to save as a template",template_saved:"Saved as a template",created:"Created {count} folders",create_failed:"Failed to create structure",paste_invalid:"No recognizable folder structure found in the clipboard",pasted:"Pasted {count} folders"}}},_d=jb;var Xb={common:{enabled:"\u542F\u7528",enabledDesc:"\u5F00\u542F\u6216\u5173\u95ED\u6B64\u5DE5\u5177",noConfig:"\u6B64\u5DE5\u5177\u6682\u65E0\u53EF\u914D\u7F6E\u9879",add:"\u6DFB\u52A0",delete:"\u5220\u9664",reset:"\u91CD\u7F6E",moveUp:"\u4E0A\u79FB",moveDown:"\u4E0B\u79FB"},settings:{folder_templates:{name:"\u6587\u4EF6\u5939\u6A21\u677F",desc:"\u5728\u6307\u5B9A\u6587\u4EF6\u5939\u4E0B\u521B\u5EFA\u65B0\u6587\u4EF6\u65F6\uFF0C\u65E0\u611F\u77E5\u5E94\u7528\u6A21\u677F",templatesFolderPath:{name:"\u6A21\u677F\u6587\u4EF6\u5939\u4F4D\u7F6E",desc:"\u5B58\u653E\u6A21\u677F\u6587\u4EF6\u7684\u6587\u4EF6\u5939\uFF1B\u7559\u7A7A\u65F6\u8DDF\u968F\u5B98\u65B9\u6A21\u677F\u63D2\u4EF6\u914D\u7F6E"},rules:{name:"\u6A21\u677F\u89C4\u5219",unnamed:"\u65B0\u89C4\u5219",enabledDesc:"\u5F00\u542F\u6216\u5173\u95ED\u6B64\u89C4\u5219",addFirst:"\u521B\u5EFA\u7B2C\u4E00\u6761\u89C4\u5219",scopesUnit:"\u4E2A\u6761\u4EF6",warnNoTemplate:"\u6B64\u89C4\u5219\u672A\u8BBE\u7F6E\u6A21\u677F\u6587\u4EF6",renamePreview:"\u9884\u89C8\uFF1A",templateFile:{name:"\u6A21\u677F\u6587\u4EF6",desc:"\u547D\u4E2D\u89C4\u5219\u540E\u5E94\u7528\u7684\u6A21\u677F\uFF1B\u652F\u6301\u65E5\u671F\u3001\u65F6\u95F4\u7B49\u53D8\u91CF\u8868\u8FBE\u5F0F"},applyMode:{name:"\u5E94\u7528\u65B9\u5F0F",desc:"\u6587\u4EF6\u5DF2\u6709\u5185\u5BB9\u65F6\u7684\u5904\u7406\u7B56\u7565",emptyOnly:"\u4EC5\u7A7A\u6587\u4EF6",prepend:"\u63D2\u5165\u5230\u5F00\u5934"},renameFormat:{name:"\u91CD\u547D\u540D\u6A21\u677F",desc:"\u521B\u5EFA\u65F6\u6309\u6A21\u677F\u91CD\u547D\u540D\u6587\u4EF6\uFF0C\u652F\u6301\u53D8\u91CF\u8868\u8FBE\u5F0F\uFF1B\u7559\u7A7A\u8868\u793A\u4E0D\u91CD\u547D\u540D"}},scopes:{name:"\u5339\u914D\u6761\u4EF6",empty:"\u65E0\u5339\u914D\u6761\u4EF6\u65F6\u89C4\u5219\u4E0D\u4F1A\u751F\u6548",typeFolder:"\u6587\u4EF6\u5939",typeExcludeFolder:"\u6392\u9664\u6587\u4EF6\u5939",typeFilenamePattern:"\u6587\u4EF6\u540D\u6B63\u5219",typeRoot:"\u6839\u76EE\u5F55\uFF08\u542B\u6240\u6709\u5B50\u6587\u4EF6\u5939\uFF09",rootHint:"\u6574\u5E93\u751F\u6548\uFF0C\u4EC5\u88AB\u6392\u9664\u6761\u4EF6\u6536\u7A84\uFF1B\u4F5C\u4E3A\u515C\u5E95\u5EFA\u8BAE\u653E\u5728\u89C4\u5219\u5217\u8868\u672B\u5C3E",pathPlaceholder:"folder/path",patternPlaceholder:"^\\d+-\\d+",patternInvalid:"\u65E0\u6548\u7684\u6B63\u5219\u8868\u8FBE\u5F0F",includeSubfolders:"\u5305\u542B\u5B50\u6587\u4EF6\u5939"},variables:{title:"\u53EF\u7528\u53D8\u91CF",legacy:"\u4ECD\u517C\u5BB9\u65E7\u7248 {date} / {time} \u8BED\u6CD5\u3002",clickToCopy:"\u70B9\u51FB\u590D\u5236",copied:"\u5DF2\u590D\u5236",notename:"\u7B14\u8BB0\u540D",folder:"\u4E0A\u7EA7\u6587\u4EF6\u5939\u540D",folderPath:"\u4E0A\u7EA7\u6587\u4EF6\u5939\u8DEF\u5F84",date:"\u5F53\u524D\u65E5\u671F\uFF08YYYY-MM-DD\uFF09",time:"\u5F53\u524D\u65F6\u95F4\uFF08HH:mm\uFF09",year:"\u5F53\u524D\u5E74\u4EFD",yearMonth:"\u5E74\u6708\uFF08YYYYMM\uFF09",timestamp:"\u6BEB\u79D2\u65F6\u95F4\u6233",now:"\u81EA\u5B9A\u4E49 moment \u683C\u5F0F",frontmatter:"frontmatter \u5B57\u6BB5\u503C"}},quick_path:{name:"\u5FEB\u901F\u8DEF\u5F84",desc:"\u5FEB\u901F\u83B7\u53D6\u6307\u5B9A\u6587\u4EF6/\u6587\u4EF6\u5939\u7684\u8DEF\u5F84",addEditorMenu:{name:"\u6DFB\u52A0\u7F16\u8F91\u5668\u83DC\u5355",desc:"\u5728\u7F16\u8F91\u5668\u83DC\u5355\u4E2D\u6DFB\u52A0\u7C98\u8D34\u5F53\u524D\u6587\u4EF6\u8DEF\u5F84\u7684\u9009\u9879"},addFileMenu:{name:"\u6DFB\u52A0\u6587\u4EF6\u5217\u8868\u83DC\u5355",desc:"\u5728\u6587\u4EF6\u5217\u8868\u83DC\u5355\u4E2D\u6DFB\u52A0\u590D\u5236\u6587\u4EF6/\u6587\u4EF6\u5939\u8DEF\u5F84\u7684\u9009\u9879"},useAbsolutePath:{name:"\u7EDD\u5BF9\u8DEF\u5F84",desc:"\u4F7F\u7528\u7EDD\u5BF9\u8DEF\u5F84\uFF0C\u5373\u4ECE\u64CD\u4F5C\u7CFB\u7EDF\u6839\u76EE\u5F55\u5F00\u59CB\u7684\u8DEF\u5F84"},pathSeparator:{name:"\u5206\u9694\u7B26",desc:"\u591A\u4E2A\u8DEF\u5F84\u7684\u5206\u9694\u7B26",newline:"\u6362\u884C",comma:"\u9017\u53F7",semicolon:"\u5206\u53F7",space:"\u7A7A\u683C"}},folder_scaffolder:{name:"\u76EE\u5F55\u6846\u67B6\u514B\u9686",desc:"\u514B\u9686\u6587\u4EF6\u5939\u7684\u76EE\u5F55\u7ED3\u6784\uFF0C\u652F\u6301\u4E34\u65F6\u590D\u5236/\u7C98\u8D34\u4E0E\u5B58\u4E3A\u6A21\u677F",templates:{name:"\u7ED3\u6784\u6A21\u677F"},templateCard:{unnamed:"\u672A\u547D\u540D\u6A21\u677F",enabledDesc:"\u5F00\u542F\u6216\u5173\u95ED\u6B64\u6A21\u677F",addFirst:"\u521B\u5EFA\u7B2C\u4E00\u4E2A\u6A21\u677F",nameField:{name:"\u540D\u79F0",desc:"\u5728\u547D\u4EE4\u4E0E\u83DC\u5355\u4E2D\u663E\u793A"},sourceField:{name:"\u6765\u6E90\u6587\u4EF6\u5939",desc:"\u5FEB\u7167\u6765\u6E90\uFF08\u4EC5\u5C55\u793A/\u5237\u65B0\u7528\uFF09"},refresh:"\u5237\u65B0\u5FEB\u7167",refreshed:"\u5DF2\u4ECE\u6765\u6E90\u5237\u65B0 {count} \u4E2A\u5B50\u76EE\u5F55",sourceNotFound:"\u6765\u6E90\u6587\u4EF6\u5939\u4E0D\u5B58\u5728\uFF0C\u65E0\u6CD5\u5237\u65B0",subDirs:"{count} \u4E2A\u5B50\u76EE\u5F55",structure:{name:"\u6587\u4EF6\u5939\u7ED3\u6784",empty:"\u8FD8\u6CA1\u6709\u6587\u4EF6\u5939\uFF0C\u70B9\u51FB\u300C\u6DFB\u52A0\u6839\u6587\u4EF6\u5939\u300D\u5F00\u59CB\u642D\u5EFA"},addRootFolder:"\u6DFB\u52A0\u6839\u6587\u4EF6\u5939",addFolder:"\u6DFB\u52A0\u5B50\u6587\u4EF6\u5939",newFolderName:"\u65B0\u5EFA\u6587\u4EF6\u5939",indent:"\u7F29\u8FDB",outdent:"\u5916\u7F29",renameHint:"\u53CC\u51FB\u91CD\u547D\u540D",dragHint:"\u7528\u6309\u94AE\u6216 Tab / Shift+Tab / Alt+\u2191\u2193 \u8C03\u6574\u5C42\u7EA7\u4E0E\u987A\u5E8F",collapse:"\u6536\u8D77",expand:"\u5C55\u5F00",importFromVault:"\u4ECE vault \u5BFC\u5165",importFromVaultDesc:"\u53EF\u9009\uFF1A\u4ECE\u4E00\u4E2A\u5DF2\u6709\u6587\u4EF6\u5939\u8BFB\u53D6\u7ED3\u6784\u586B\u5145\u4E0B\u65B9\uFF08\u4E0D\u5F71\u54CD\u624B\u52A8\u7F16\u8F91\uFF09"}},plugin_order:{name:"\u63D2\u4EF6\u52A0\u8F7D\u987A\u5E8F",desc:"\u628A\u6307\u5B9A\u7684\u63D2\u4EF6\u4FDD\u6301\u5728 community-plugins.json \u6570\u7EC4\u6700\u524D\uFF0C\u63A7\u5236\u5176\u6700\u5148\u52A0\u8F7D",priority_plugins:{name:"\u4F18\u5148\u52A0\u8F7D\u7684\u63D2\u4EF6",desc:"\u4EC5\u8C03\u6574\u987A\u5E8F\u3001\u7EDD\u4E0D\u589E\u5220\u6761\u76EE\uFF1B\u672A\u542F\u7528/\u672A\u5B89\u88C5\u7684\u4EE5\u5FBD\u6807\u6807\u6CE8\u3002\u4FEE\u6539\u5BF9\u5F53\u524D\u4F1A\u8BDD\u65E0\u6548\uFF0C\u4E0B\u6B21\u542F\u52A8\u751F\u6548\u3002\u4E0E custom-icons \u7684\u300C\u59CB\u7EC8\u6700\u5148\u52A0\u8F7D\u300D\u540C\u65F6\u542F\u7528\u65F6\uFF0C\u8BF7\u5728\u5217\u8868\u4E2D\u5305\u542B custom-sidebar-icons\u3002",search_placeholder:"\u8F93\u5165\u63D2\u4EF6\u540D\u6216 ID \u641C\u7D22\u6DFB\u52A0\u2026",empty:"\u6682\u65E0\u4F18\u5148\u63D2\u4EF6\uFF0C\u5728\u4E0A\u65B9\u641C\u7D22\u6DFB\u52A0",count:"{count} \u4E2A",status:{enabled:"\u5DF2\u542F\u7528",disabled:"\u5DF2\u5B89\u88C5\u672A\u542F\u7528",missing:"\u672A\u5B89\u88C5"}},apply_now:{name:"\u7ACB\u5373\u5E94\u7528\u5E76\u5237\u65B0\u7F13\u5B58",desc:"\u8BFB\u53D6\u5DF2\u5B89\u88C5\u63D2\u4EF6\uFF08\u65E0\u8BBA\u662F\u5426\u542F\u7528\uFF09\u5237\u65B0\u7F13\u5B58\uFF0C\u5E76\u7ACB\u5373\u6309\u5F53\u524D\u5217\u8868\u91CD\u6392\u52A0\u8F7D\u987A\u5E8F"}},plugin_filter:{name:"\u63D2\u4EF6\u7B5B\u9009",desc:"\u5728\u7B2C\u4E09\u65B9\u63D2\u4EF6\u8BBE\u7F6E\u9875\u6309\u542F\u7528\u72B6\u6001\u7B5B\u9009\u63D2\u4EF6\u5217\u8868",tooltip:"\u63D2\u4EF6\u7B5B\u9009\uFF1A{label}",action_tooltip:"\u6279\u91CF\u64CD\u4F5C\u7B5B\u9009\u4E2D\u7684\u63D2\u4EF6",action_enable:"\u4E00\u952E\u542F\u7528 ({count})",action_disable:"\u4E00\u952E\u7981\u7528 ({count})",confirm_title:"\u6279\u91CF\u7981\u7528\u5305\u542B\u53D7\u4FDD\u62A4\u7684\u63D2\u4EF6",confirm_desc:"\u4EE5\u4E0B\u63D2\u4EF6\u5728\u7981\u7528\u4FDD\u62A4\u6E05\u5355\u4E2D\uFF0C\u7981\u7528\u540E\u53EF\u80FD\u5F71\u54CD\u4F7F\u7528\u3002\u52FE\u9009\u7684\u5C06\u88AB\u4E00\u5E76\u7981\u7528\uFF0C\u53D6\u6D88\u52FE\u9009\u5219\u8DF3\u8FC7\u3002",confirm_run:"\u7981\u7528\u6240\u9009 ({count})",confirm_self_badge:"\u672C\u63D2\u4EF6",confirm_cancel:"\u53D6\u6D88",guard:{name:"\u7981\u7528\u4FDD\u62A4\u6E05\u5355",hint:"\u4E00\u952E\u7981\u7528\u7684\u76EE\u6807\u4E2D\u5305\u542B\u8FD9\u4E9B\u63D2\u4EF6\u65F6\u4F1A\u5148\u5F39\u7A97\u786E\u8BA4\uFF08\u53EF\u9010\u4E2A\u6392\u9664\uFF09\uFF1B\u672C\u63D2\u4EF6\uFF08RavenHogwarts Toolkit\uFF09\u59CB\u7EC8\u53D7\u4FDD\u62A4\uFF0C\u65E0\u9700\u6DFB\u52A0\u3002",empty:"\u6682\u65E0\u4FDD\u62A4\u63D2\u4EF6\uFF0C\u5728\u4E0B\u65B9\u641C\u7D22\u6DFB\u52A0",search_placeholder:"\u8F93\u5165\u63D2\u4EF6\u540D\u6216 ID \u641C\u7D22\u6DFB\u52A0\u2026",remove_member:"\u79FB\u9664"},groups:{name:"\u63D2\u4EF6\u5206\u7EC4",desc:"\u4E3A\u63D2\u4EF6\u5EFA\u7ACB\u5206\u7EC4\uFF1B\u5206\u7EC4\u4F1A\u51FA\u73B0\u5728\u7B5B\u9009\u83DC\u5355\u4E2D\uFF0C\u540C\u4E00\u63D2\u4EF6\u53EF\u5C5E\u4E8E\u591A\u4E2A\u5206\u7EC4",add_group:"\u6DFB\u52A0\u5206\u7EC4",unnamed:"\u672A\u547D\u540D\u5206\u7EC4",empty_groups:"\u8FD8\u6CA1\u6709\u5206\u7EC4\uFF0C\u70B9\u51FB\u300C\u6DFB\u52A0\u5206\u7EC4\u300D\u521B\u5EFA",empty_members:"\u6682\u65E0\u6210\u5458\uFF0C\u5728\u4E0B\u65B9\u641C\u7D22\u6DFB\u52A0",search_placeholder:"\u8F93\u5165\u63D2\u4EF6\u540D\u6216 ID \u641C\u7D22\u6DFB\u52A0\u2026",member_count:"{count} \u4E2A\u63D2\u4EF6",missing:"\u672A\u5B89\u88C5",remove_member:"\u79FB\u9664",delete_group:"\u5220\u9664\u5206\u7EC4",group_name_aria:"\u5206\u7EC4\u540D\u79F0",summary:"{groups} \u4E2A\u5206\u7EC4 \xB7 {members} \u540D\u6210\u5458",collapse:"\u6536\u8D77\u5206\u7EC4",expand:"\u5C55\u5F00\u5206\u7EC4",confirm_delete:"\u518D\u70B9\u4E00\u6B21\u786E\u8BA4\u5220\u9664",status_enabled:"\u5DF2\u542F\u7528",status_disabled:"\u672A\u542F\u7528"},all:"\u5168\u90E8 ({count})",enabled:"\u5DF2\u542F\u7528 ({count})",disabled:"\u5DF2\u7981\u7528 ({count})",updatable:"\u53EF\u66F4\u65B0 ({count})"}},command:{quick_path:{copy_current_file_path:"\u590D\u5236\u5F53\u524D\u6587\u4EF6\u8DEF\u5F84",copy_current_folder_path:"\u590D\u5236\u5F53\u524D\u76EE\u5F55\u8DEF\u5F84"},folder_scaffolder:{create_from_template:"\u4ECE\u6A21\u677F\u521B\u5EFA\u7ED3\u6784",paste_structure:"\u7C98\u8D34\u7ED3\u6784\u5230\u5F53\u524D\u76EE\u5F55"},plugin_order:{apply:"\u7ACB\u5373\u5E94\u7528\u63D2\u4EF6\u6392\u5E8F"}},menu:{quick_path:{copy_file_path:"\u590D\u5236\u6587\u4EF6\u8DEF\u5F84",copy_files_path:"\u590D\u5236\u591A\u4E2A\u8DEF\u5F84",copy_folder_path:"\u590D\u5236\u76EE\u5F55\u8DEF\u5F84",paste_current_file_path:"\u7C98\u8D34\u5F53\u524D\u6587\u4EF6\u8DEF\u5F84",paste_current_folder_path:"\u7C98\u8D34\u5F53\u524D\u76EE\u5F55\u8DEF\u5F84"},folder_scaffolder:{create_from_template:"\u4ECE\u6A21\u7248\u521B\u5EFA\u7ED3\u6784",copy_structure:"\u590D\u5236\u6B64\u6587\u4EF6\u5939\u7ED3\u6784",paste_structure:"\u7C98\u8D34\u6587\u4EF6\u5939\u7ED3\u6784",save_as_template:"\u5C06\u6B64\u7ED3\u6784\u5B58\u4E3A\u6A21\u677F"}},modal:{folder_scaffolder:{scaffold_title:"\u4ECE\u6A21\u677F\u521B\u5EFA\u7ED3\u6784",select_template:"\u9009\u62E9\u6A21\u677F",target_parent:"\u76EE\u6807\u4F4D\u7F6E",target_parent_desc:"\u7ED3\u6784\u5C06\u514B\u9686\u5230\u6B64\u6587\u4EF6\u5939\u4E0B",new_folder_name:"\u5305\u88F9\u6587\u4EF6\u5939\uFF08\u53EF\u9009\uFF09",new_folder_name_desc:"\u5728\u7ED3\u6784\u5916\u5C42\u5728\u52A0\u4E00\u5C42\u6587\u4EF6\u5939",confirm:"\u521B\u5EFA",save_template_title:"\u5B58\u4E3A\u6A21\u677F",template_name:"\u6A21\u677F\u540D\u79F0",save:"\u4FDD\u5B58"}},notice:{quick_path:{copy_success:"\u8DEF\u5F84\u5DF2\u590D\u5236\u5230\u526A\u8D34\u677F",copy_failure:"\u590D\u5236\u8DEF\u5F84\u5931\u8D25",root_path_warning:"\u5F53\u524D\u6587\u4EF6\u4F4D\u4E8E\u6839\u76EE\u5F55\uFF0C\u65E0\u6CD5\u83B7\u53D6\u4E0A\u7EA7\u6587\u4EF6\u5939\u8DEF\u5F84"},plugin_order:{applied:"\u5DF2\u91CD\u6392\u63D2\u4EF6\u52A0\u8F7D\u987A\u5E8F\uFF08\u4E0B\u6B21\u542F\u52A8\u751F\u6548\uFF09",invalid:"community-plugins.json \u7ED3\u6784\u5F02\u5E38\uFF0C\u5DF2\u8DF3\u8FC7"},plugin_filter:{enabled_n:"\u5DF2\u542F\u7528 {count} \u4E2A\u63D2\u4EF6",disabled_n:"\u5DF2\u7981\u7528 {count} \u4E2A\u63D2\u4EF6"},folder_scaffolder:{no_template:"\u6CA1\u6709\u53EF\u7528\u7684\u6A21\u677F\uFF0C\u8BF7\u5148\u5728\u8BBE\u7F6E\u4E2D\u6DFB\u52A0",copied:"\u5DF2\u590D\u5236 {count} \u4E2A\u5B50\u76EE\u5F55\u5230\u526A\u8D34\u677F",clipboard_empty:"\u526A\u8D34\u677F\u4E3A\u7A7A\uFF0C\u8BF7\u5148\u590D\u5236\u4E00\u4E2A\u6587\u4EF6\u5939\u7ED3\u6784",empty_structure:"\u8BE5\u6587\u4EF6\u5939\u6CA1\u6709\u5B50\u76EE\u5F55\uFF0C\u65E0\u9700\u5B58\u4E3A\u6A21\u677F",template_saved:"\u5DF2\u4FDD\u5B58\u4E3A\u6A21\u677F",created:"\u5DF2\u521B\u5EFA {count} \u4E2A\u6587\u4EF6\u5939",create_failed:"\u521B\u5EFA\u7ED3\u6784\u5931\u8D25",paste_invalid:"\u526A\u8D34\u677F\u4E2D\u672A\u627E\u5230\u53EF\u8BC6\u522B\u7684\u6587\u4EF6\u5939\u7ED3\u6784",pasted:"\u5DF2\u7C98\u8D34 {count} \u4E2A\u6587\u4EF6\u5939"}}},Td=Xb;var Vb={common:{enabled:"\u555F\u7528",enabledDesc:"\u958B\u555F\u6216\u95DC\u9589\u6B64\u5DE5\u5177",noConfig:"\u6B64\u5DE5\u5177\u66AB\u7121\u53EF\u8A2D\u5B9A\u9805",add:"\u65B0\u589E",delete:"\u522A\u9664",reset:"\u91CD\u8A2D",moveUp:"\u4E0A\u79FB",moveDown:"\u4E0B\u79FB"},settings:{folder_templates:{name:"\u6587\u4EF6\u593E\u6A21\u677F",desc:"\u5728\u6307\u5B9A\u6587\u4EF6\u593E\u4E0B\u5275\u5EFA\u65B0\u6587\u4EF6\u6642\uFF0C\u7121\u611F\u77E5\u61C9\u7528\u6A21\u677F",templatesFolderPath:{name:"\u6A21\u677F\u6587\u4EF6\u593E\u4F4D\u7F6E",desc:"\u5B58\u653E\u6A21\u677F\u6587\u4EF6\u7684\u6587\u4EF6\u593E\uFF1B\u7559\u7A7A\u6642\u8DDF\u96A8\u5B98\u65B9\u6A21\u677F\u63D2\u4EF6\u914D\u7F6E"},rules:{name:"\u6A21\u677F\u898F\u5247",unnamed:"\u65B0\u898F\u5247",enabledDesc:"\u958B\u555F\u6216\u95DC\u9589\u6B64\u898F\u5247",addFirst:"\u5275\u5EFA\u7B2C\u4E00\u689D\u898F\u5247",scopesUnit:"\u500B\u689D\u4EF6",warnNoTemplate:"\u6B64\u898F\u5247\u672A\u8A2D\u7F6E\u6A21\u677F\u6587\u4EF6",renamePreview:"\u9810\u89BD\uFF1A",templateFile:{name:"\u6A21\u677F\u6587\u4EF6",desc:"\u547D\u4E2D\u898F\u5247\u5F8C\u61C9\u7528\u7684\u6A21\u677F\uFF1B\u652F\u6301\u65E5\u671F\u3001\u6642\u9593\u7B49\u8B8A\u91CF\u8868\u9054\u5F0F"},applyMode:{name:"\u61C9\u7528\u65B9\u5F0F",desc:"\u6587\u4EF6\u5DF2\u6709\u5167\u5BB9\u6642\u7684\u8655\u7406\u7B56\u7565",emptyOnly:"\u50C5\u7A7A\u6587\u4EF6",prepend:"\u63D2\u5165\u5230\u958B\u982D"},renameFormat:{name:"\u91CD\u547D\u540D\u6A21\u677F",desc:"\u5275\u5EFA\u6642\u6309\u6A21\u677F\u91CD\u547D\u540D\u6587\u4EF6\uFF0C\u652F\u6301\u8B8A\u91CF\u8868\u9054\u5F0F\uFF1B\u7559\u7A7A\u8868\u793A\u4E0D\u91CD\u547D\u540D"}},scopes:{name:"\u5339\u914D\u689D\u4EF6",empty:"\u7121\u5339\u914D\u689D\u4EF6\u6642\u898F\u5247\u4E0D\u6703\u751F\u6548",typeFolder:"\u6587\u4EF6\u593E",typeExcludeFolder:"\u6392\u9664\u6587\u4EF6\u593E",typeFilenamePattern:"\u6587\u4EF6\u540D\u6B63\u5247",typeRoot:"\u6839\u76EE\u9304\uFF08\u542B\u6240\u6709\u5B50\u8CC7\u6599\u593E\uFF09",rootHint:"\u6574\u5EAB\u751F\u6548\uFF0C\u50C5\u88AB\u6392\u9664\u689D\u4EF6\u6536\u7A84\uFF1B\u4F5C\u70BA\u515C\u5E95\u5EFA\u8B70\u653E\u5728\u898F\u5247\u6E05\u55AE\u672B\u5C3E",pathPlaceholder:"folder/path",patternPlaceholder:"^\\d+-\\d+",patternInvalid:"\u7121\u6548\u7684\u6B63\u5247\u8868\u9054\u5F0F",includeSubfolders:"\u5305\u542B\u5B50\u6587\u4EF6\u593E"},variables:{title:"\u53EF\u7528\u8B8A\u91CF",legacy:"\u4ECD\u517C\u5BB9\u820A\u7248 {date} / {time} \u8A9E\u6CD5\u3002",clickToCopy:"\u9EDE\u64CA\u8907\u88FD",copied:"\u5DF2\u8907\u88FD",notename:"\u7B46\u8A18\u540D",folder:"\u4E0A\u7D1A\u6587\u4EF6\u593E\u540D",folderPath:"\u4E0A\u7D1A\u6587\u4EF6\u593E\u8DEF\u5F91",date:"\u7576\u524D\u65E5\u671F\uFF08YYYY-MM-DD\uFF09",time:"\u7576\u524D\u6642\u9593\uFF08HH:mm\uFF09",year:"\u7576\u524D\u5E74\u4EFD",yearMonth:"\u5E74\u6708\uFF08YYYYMM\uFF09",timestamp:"\u6BEB\u79D2\u6642\u9593\u6233",now:"\u81EA\u5B9A\u7FA9 moment \u683C\u5F0F",frontmatter:"frontmatter \u5B57\u6BB5\u503C"}},quick_path:{name:"\u5FEB\u901F\u8DEF\u5F91",desc:"\u5FEB\u901F\u7372\u53D6\u6307\u5B9A\u6587\u4EF6/\u6587\u4EF6\u593E\u7684\u8DEF\u5F91",addEditorMenu:{name:"\u6DFB\u52A0\u7DE8\u8F2F\u5668\u83DC\u55AE",desc:"\u5728\u7DE8\u8F2F\u5668\u83DC\u55AE\u4E2D\u6DFB\u52A0\u7C98\u8CBC\u7576\u524D\u6587\u4EF6\u8DEF\u5F91\u7684\u9078\u9805"},addFileMenu:{name:"\u6DFB\u52A0\u6587\u4EF6\u5217\u8868\u83DC\u55AE",desc:"\u5728\u6587\u4EF6\u5217\u8868\u83DC\u55AE\u4E2D\u6DFB\u52A0\u8907\u88FD\u6587\u4EF6/\u6587\u4EF6\u593E\u8DEF\u5F91\u7684\u9078\u9805"},useAbsolutePath:{name:"\u7D55\u5C0D\u8DEF\u5F91",desc:"\u4F7F\u7528\u7D55\u5C0D\u8DEF\u5F91\uFF0C\u5373\u5F9E\u64CD\u4F5C\u7CFB\u7D71\u6839\u76EE\u9304\u958B\u59CB\u7684\u8DEF\u5F91"},pathSeparator:{name:"\u5206\u9694\u7B26",desc:"\u591A\u500B\u8DEF\u5F91\u7684\u5206\u9694\u7B26",newline:"\u63DB\u884C",comma:"\u9017\u865F",semicolon:"\u5206\u865F",space:"\u7A7A\u683C"}},folder_scaffolder:{name:"\u76EE\u9304\u6846\u67B6\u514B\u9686",desc:"\u8907\u88FD\u8CC7\u6599\u593E\u7684\u76EE\u9304\u7D50\u69CB\uFF0C\u652F\u63F4\u81E8\u6642\u8907\u88FD/\u8CBC\u4E0A\u8207\u5132\u5B58\u70BA\u7BC4\u672C",templates:{name:"\u7D50\u69CB\u7BC4\u672C"},templateCard:{unnamed:"\u672A\u547D\u540D\u7BC4\u672C",enabledDesc:"\u958B\u555F\u6216\u95DC\u9589\u6B64\u7BC4\u672C",addFirst:"\u5EFA\u7ACB\u7B2C\u4E00\u500B\u7BC4\u672C",nameField:{name:"\u540D\u7A31",desc:"\u5728\u547D\u4EE4\u8207\u9078\u55AE\u4E2D\u986F\u793A"},sourceField:{name:"\u4F86\u6E90\u8CC7\u6599\u593E",desc:"\u5FEB\u7167\u4F86\u6E90\uFF08\u50C5\u5C55\u793A/\u5237\u65B0\u7528\uFF09"},refresh:"\u5237\u65B0\u5FEB\u7167",refreshed:"\u5DF2\u5F9E\u4F86\u6E90\u5237\u65B0 {count} \u500B\u5B50\u76EE\u9304",sourceNotFound:"\u4F86\u6E90\u8CC7\u6599\u593E\u4E0D\u5B58\u5728\uFF0C\u7121\u6CD5\u5237\u65B0",subDirs:"{count} \u500B\u5B50\u76EE\u9304",structure:{name:"\u8CC7\u6599\u593E\u7D50\u69CB",empty:"\u9084\u6C92\u6709\u8CC7\u6599\u593E\uFF0C\u9EDE\u64CA\u300C\u65B0\u589E\u6839\u8CC7\u6599\u593E\u300D\u958B\u59CB\u642D\u5EFA"},addRootFolder:"\u65B0\u589E\u6839\u8CC7\u6599\u593E",addFolder:"\u65B0\u589E\u5B50\u8CC7\u6599\u593E",newFolderName:"\u65B0\u589E\u8CC7\u6599\u593E",indent:"\u7E2E\u6392",outdent:"\u53D6\u6D88\u7E2E\u6392",renameHint:"\u96D9\u64CA\u91CD\u65B0\u547D\u540D",dragHint:"\u7528\u6309\u9215\u6216 Tab / Shift+Tab / Alt+\u2191\u2193 \u8ABF\u6574\u5C64\u7D1A\u8207\u9806\u5E8F",collapse:"\u6536\u8D77",expand:"\u5C55\u958B",importFromVault:"\u5F9E vault \u532F\u5165",importFromVaultDesc:"\u9078\u586B\uFF1A\u5F9E\u4E00\u500B\u73FE\u6709\u8CC7\u6599\u593E\u8B80\u53D6\u7D50\u69CB\u586B\u5165\u4E0B\u65B9\uFF08\u4E0D\u5F71\u97FF\u624B\u52D5\u7DE8\u8F2F\uFF09"}},plugin_order:{name:"\u63D2\u4EF6\u8F09\u5165\u9806\u5E8F",desc:"\u628A\u6307\u5B9A\u7684\u63D2\u4EF6\u4FDD\u6301\u5728 community-plugins.json \u9663\u5217\u6700\u524D\uFF0C\u63A7\u5236\u5176\u6700\u5148\u8F09\u5165",priority_plugins:{name:"\u512A\u5148\u8F09\u5165\u7684\u63D2\u4EF6",desc:"\u50C5\u8ABF\u6574\u9806\u5E8F\u3001\u7D55\u4E0D\u589E\u522A\u689D\u76EE\uFF1B\u672A\u555F\u7528/\u672A\u5B89\u88DD\u7684\u4EE5\u5FBD\u6A19\u6A19\u8A3B\u3002\u4FEE\u6539\u5C0D\u7576\u524D\u5DE5\u4F5C\u968E\u6BB5\u7121\u6548\uFF0C\u4E0B\u6B21\u555F\u52D5\u751F\u6548\u3002\u8207 custom-icons \u7684\u300C\u59CB\u7D42\u6700\u5148\u8F09\u5165\u300D\u540C\u6642\u555F\u7528\u6642\uFF0C\u8ACB\u5728\u5217\u8868\u4E2D\u5305\u542B custom-sidebar-icons\u3002",search_placeholder:"\u8F38\u5165\u63D2\u4EF6\u540D\u6216 ID \u641C\u5C0B\u65B0\u589E\u2026",empty:"\u66AB\u7121\u512A\u5148\u63D2\u4EF6\uFF0C\u5728\u4E0A\u65B9\u641C\u5C0B\u65B0\u589E",count:"{count} \u500B",status:{enabled:"\u5DF2\u555F\u7528",disabled:"\u5DF2\u5B89\u88DD\u672A\u555F\u7528",missing:"\u672A\u5B89\u88DD"}},apply_now:{name:"\u7ACB\u5373\u5957\u7528\u4E26\u91CD\u65B0\u6574\u7406\u5FEB\u53D6",desc:"\u8B80\u53D6\u5DF2\u5B89\u88DD\u63D2\u4EF6\uFF08\u7121\u8AD6\u662F\u5426\u555F\u7528\uFF09\u91CD\u65B0\u6574\u7406\u5FEB\u53D6\uFF0C\u4E26\u7ACB\u5373\u6309\u7576\u524D\u5217\u8868\u91CD\u6392\u8F09\u5165\u9806\u5E8F"}},plugin_filter:{name:"\u5916\u639B\u7BE9\u9078",desc:"\u5728\u7B2C\u4E09\u65B9\u5916\u639B\u8D77\u59CB\u9801\u6309\u555F\u7528\u72C0\u614B\u7BE9\u9078\u5916\u639B\u6E05\u55AE",tooltip:"\u5916\u639B\u7BE9\u9078\uFF1A{label}",action_tooltip:"\u6279\u6B21\u64CD\u4F5C\u7BE9\u9078\u4E2D\u7684\u5916\u639B",action_enable:"\u4E00\u9375\u555F\u7528 ({count})",action_disable:"\u4E00\u9375\u505C\u7528 ({count})",confirm_title:"\u6279\u91CF\u505C\u7528\u5305\u542B\u53D7\u4FDD\u8B77\u7684\u5916\u639B",confirm_desc:"\u4EE5\u4E0B\u5916\u639B\u5728\u505C\u7528\u4FDD\u8B77\u6E05\u55AE\u4E2D\uFF0C\u505C\u7528\u5F8C\u53EF\u80FD\u5F71\u97FF\u4F7F\u7528\u3002\u52FE\u9078\u7684\u5C07\u88AB\u4E00\u4F75\u505C\u7528\uFF0C\u53D6\u6D88\u52FE\u9078\u5247\u8DF3\u904E\u3002",confirm_run:"\u505C\u7528\u6240\u9078 ({count})",confirm_self_badge:"\u672C\u5916\u639B",confirm_cancel:"\u53D6\u6D88",guard:{name:"\u505C\u7528\u4FDD\u8B77\u6E05\u55AE",hint:"\u4E00\u9375\u505C\u7528\u7684\u76EE\u6A19\u4E2D\u5305\u542B\u9019\u4E9B\u5916\u639B\u6642\u6703\u5148\u5F48\u7A97\u78BA\u8A8D\uFF08\u53EF\u9010\u500B\u6392\u9664\uFF09\uFF1B\u672C\u5916\u639B\uFF08RavenHogwarts Toolkit\uFF09\u59CB\u7D42\u53D7\u4FDD\u8B77\uFF0C\u7121\u9700\u65B0\u589E\u3002",empty:"\u66AB\u7121\u4FDD\u8B77\u5916\u639B\uFF0C\u5728\u4E0B\u65B9\u641C\u5C0B\u65B0\u589E",search_placeholder:"\u8F38\u5165\u5916\u639B\u540D\u6216 ID \u641C\u5C0B\u65B0\u589E\u2026",remove_member:"\u79FB\u9664"},groups:{name:"\u5916\u639B\u5206\u7D44",desc:"\u70BA\u5916\u639B\u5EFA\u7ACB\u5206\u7D44\uFF1B\u5206\u7D44\u6703\u51FA\u73FE\u5728\u7BE9\u9078\u9078\u55AE\u4E2D\uFF0C\u540C\u4E00\u5916\u639B\u53EF\u5C6C\u65BC\u591A\u500B\u5206\u7D44",add_group:"\u65B0\u589E\u5206\u7D44",unnamed:"\u672A\u547D\u540D\u5206\u7D44",empty_groups:"\u9084\u6C92\u6709\u5206\u7D44\uFF0C\u9EDE\u64CA\u300C\u65B0\u589E\u5206\u7D44\u300D\u5EFA\u7ACB",empty_members:"\u66AB\u7121\u6210\u54E1\uFF0C\u5728\u4E0B\u65B9\u641C\u5C0B\u65B0\u589E",search_placeholder:"\u8F38\u5165\u5916\u639B\u540D\u6216 ID \u641C\u5C0B\u65B0\u589E\u2026",member_count:"{count} \u500B\u5916\u639B",missing:"\u672A\u5B89\u88DD",remove_member:"\u79FB\u9664",delete_group:"\u522A\u9664\u5206\u7D44",group_name_aria:"\u5206\u7D44\u540D\u7A31",summary:"{groups} \u500B\u5206\u7D44 \xB7 {members} \u540D\u6210\u54E1",collapse:"\u6536\u5408\u5206\u7D44",expand:"\u5C55\u958B\u5206\u7D44",confirm_delete:"\u518D\u9EDE\u4E00\u6B21\u78BA\u8A8D\u522A\u9664",status_enabled:"\u5DF2\u555F\u7528",status_disabled:"\u672A\u555F\u7528"},all:"\u5168\u90E8 ({count})",enabled:"\u5DF2\u555F\u7528 ({count})",disabled:"\u5DF2\u505C\u7528 ({count})",updatable:"\u53EF\u66F4\u65B0 ({count})"}},command:{quick_path:{copy_current_file_path:"\u8907\u88FD\u7576\u524D\u6587\u4EF6\u8DEF\u5F91",copy_current_folder_path:"\u8907\u88FD\u7576\u524D\u76EE\u9304\u8DEF\u5F91"},folder_scaffolder:{create_from_template:"\u5F9E\u7BC4\u672C\u5EFA\u7ACB\u7D50\u69CB",paste_structure:"\u8CBC\u4E0A\u7D50\u69CB\u5230\u7576\u524D\u76EE\u9304"},plugin_order:{apply:"\u7ACB\u5373\u5957\u7528\u63D2\u4EF6\u6392\u5E8F"}},menu:{quick_path:{copy_file_path:"\u8907\u88FD\u6587\u4EF6\u8DEF\u5F91",copy_files_path:"\u8907\u88FD\u591A\u500B\u8DEF\u5F91",copy_folder_path:"\u8907\u88FD\u76EE\u9304\u8DEF\u5F91",paste_current_file_path:"\u7C98\u8CBC\u7576\u524D\u6587\u4EF6\u8DEF\u5F91",paste_current_folder_path:"\u7C98\u8CBC\u7576\u524D\u76EE\u9304\u8DEF\u5F91"},folder_scaffolder:{create_from_template:"\u5F9E\u7BC4\u672C\u5EFA\u7ACB\u7D50\u69CB",copy_structure:"\u8907\u88FD\u6B64\u8CC7\u6599\u593E\u7D50\u69CB",paste_structure:"\u8CBC\u4E0A\u8CC7\u6599\u593E\u7D50\u69CB",save_as_template:"\u5C07\u6B64\u7D50\u69CB\u5132\u5B58\u70BA\u7BC4\u672C"}},modal:{folder_scaffolder:{scaffold_title:"\u5F9E\u7BC4\u672C\u5EFA\u7ACB\u7D50\u69CB",select_template:"\u9078\u64C7\u7BC4\u672C",target_parent:"\u76EE\u6A19\u4F4D\u7F6E",target_parent_desc:"\u7D50\u69CB\u5C07\u8907\u88FD\u5230\u6B64\u8CC7\u6599\u593E\u4E0B",new_folder_name:"\u5305\u88DD\u8CC7\u6599\u593E\uFF08\u53EF\u9078\uFF09",new_folder_name_desc:"\u5728\u7D50\u69CB\u5916\u5C64\u518D\u52A0\u4E00\u5C64\u8CC7\u6599\u593E",confirm:"\u5EFA\u7ACB",save_template_title:"\u5132\u5B58\u70BA\u7BC4\u672C",template_name:"\u7BC4\u672C\u540D\u7A31",save:"\u5132\u5B58"}},notice:{quick_path:{copy_success:"\u8DEF\u5F91\u5DF2\u8907\u88FD\u5230\u526A\u8CBC\u677F",copy_failure:"\u8907\u88FD\u8DEF\u5F91\u5931\u6557",root_path_warning:"\u7576\u524D\u6587\u4EF6\u4F4D\u65BC\u6839\u76EE\u9304\uFF0C\u7121\u6CD5\u7372\u53D6\u4E0A\u7D1A\u6587\u4EF6\u593E\u8DEF\u5F91"},plugin_order:{applied:"\u5DF2\u91CD\u6392\u63D2\u4EF6\u8F09\u5165\u9806\u5E8F\uFF08\u4E0B\u6B21\u555F\u52D5\u751F\u6548\uFF09",invalid:"community-plugins.json \u7D50\u69CB\u7570\u5E38\uFF0C\u5DF2\u8DF3\u904E"},plugin_filter:{enabled_n:"\u5DF2\u555F\u7528 {count} \u500B\u5916\u639B",disabled_n:"\u5DF2\u505C\u7528 {count} \u500B\u5916\u639B"},folder_scaffolder:{no_template:"\u6C92\u6709\u53EF\u7528\u7684\u7BC4\u672C\uFF0C\u8ACB\u5148\u5728\u8A2D\u5B9A\u4E2D\u65B0\u589E",copied:"\u5DF2\u8907\u88FD {count} \u500B\u5B50\u76EE\u9304\u5230\u526A\u8CBC\u7C3F",clipboard_empty:"\u526A\u8CBC\u7C3F\u70BA\u7A7A\uFF0C\u8ACB\u5148\u8907\u88FD\u4E00\u500B\u8CC7\u6599\u593E\u7D50\u69CB",empty_structure:"\u6B64\u8CC7\u6599\u593E\u6C92\u6709\u5B50\u76EE\u9304\uFF0C\u7121\u9700\u5132\u5B58\u70BA\u7BC4\u672C",template_saved:"\u5DF2\u5132\u5B58\u70BA\u7BC4\u672C",created:"\u5DF2\u5EFA\u7ACB {count} \u500B\u8CC7\u6599\u593E",create_failed:"\u5EFA\u7ACB\u7D50\u69CB\u5931\u6557",paste_invalid:"\u526A\u8CBC\u7C3F\u4E2D\u672A\u627E\u5230\u53EF\u8FA8\u8B58\u7684\u8CC7\u6599\u593E\u7D50\u69CB",pasted:"\u5DF2\u8CBC\u4E0A {count} \u500B\u8CC7\u6599\u593E"}}},Ed=Vb;var Qb={en:_d,zh:Td,"zh-TW":Ed},Ib=t=>{qa[t]||(qa[t]=Qb[t],Zb(t))},xd=()=>xu.forEach(Ib),Zb=t=>{Au[t]=Sd(t)};var Mu=class t{constructor(){xd();let e=(0,Ad.getLanguage)();this.currentLocale=yd(e)?e:"en",this.LL=bd(this.currentLocale)}static getInstance(){return t.instance||(t.instance=new t),t.instance}get L(){return this.LL}getLocale(){return this.currentLocale}isLocaleLoaded(e){return!!qa[e]}},Fb=Mu.getInstance(),S=Fb.L;var Md=require("obsidian"),vr=class extends Md.PluginSettingTab{constructor(n){super(n.app,n);this.icon="gavel";this.plugin=n}getSettingDefinitions(){return this.plugin.toolkitManager.getToolkit().map(a=>this.buildToolPage(a))}buildToolPage(n){let a=`toolkit.${n.info.id}.enabled`,l=n.getSettingItems();return{type:"page",name:n.info.name,desc:n.info.description,status:()=>n.isEnabled()?null:"warning",items:[{name:S.common.enabled(),desc:S.common.enabledDesc(),control:{type:"toggle",key:a,defaultValue:!1}},...l]}}getControlValue(n){let a=n.split("."),l=this.plugin.settings;for(let i of a){if(l==null||typeof l!="object")return;l=l[i]}return l}async setControlValue(n,a){let l=n.match(/^toolkit\.(.+)\.enabled$/);if(l){let i=l[1],r=this.plugin.toolkitManager;a?await r.enableTool(i):await r.disableTool(i),this.update();return}try{await this.plugin.settingsStore.updateSettingByPath(n,a)}catch{this.plugin.pluginContext.log("warn",`setControlValue: invalid setting path ${n}`)}}};var zd={toolkit:{}};var Bt,Ya,Sr,Ke,yr,br,Pl=class{constructor(e){ot(this,Ke);ot(this,Bt);ot(this,Ya,new Set);ot(this,Sr,{subscribe:e=>(R(this,Ya).add(e),()=>R(this,Ya).delete(e)),getSnapshot:()=>R(this,Bt).settings});X(this,Bt,e)}get settings(){return R(this,Bt).settings}get store(){return Object.assign({},R(this,Sr))}get plugin(){return R(this,Bt)}get app(){return R(this,Bt).app}async loadSettings(){let e=await R(this,Bt).loadData(),n=C(this,Ke,br).call(this,e??{},zd);e&&typeof e=="object"&&"toolkit"in e&&e.toolkit&&(n.toolkit=e.toolkit),R(this,Bt).settings=n,await R(this,Bt).saveSettings(),C(this,Ke,yr).call(this)}async updateSettings(e){R(this,Bt).settings=Object.assign({},e),await R(this,Bt).saveSettings(),C(this,Ke,yr).call(this)}async updateSettingByPath(e,n){let a=JSON.parse(JSON.stringify(R(this,Bt).settings)),l=e.split("."),i=a;for(let o=0;oe())},br=function(e,n){if(n!==null&&typeof n=="object"&&!Array.isArray(n)){let i={},r=n,o=e??{};for(let u of Object.keys(r))i[u]=C(this,Ke,br).call(this,o[u],r[u]);return i}let a=Array.isArray(n),l=Array.isArray(e);return e===void 0||typeof n!=typeof e&&!a||a&&!l?n:e};var wd=require("obsidian"),xe=class extends wd.Component{constructor(){super(...arguments);this.enabled=!1;this.errors=[];this.registeredCommandIds=[]}get info(){let n=Reflect.getMetadata(Symbol.for("toolkit:meta"),this.constructor);if(!n)throw new Error(`Tool ${this.constructor.name} is missing @Toolkit decorator`);return n}get settings(){let n=this.context._settingsStore.getToolSettings(this.info.id);if(!n)throw new Error(`Settings for tool ${this.info.id} not found.`);return n}async initialize(n){this.context=n,await this.context._settingsStore.loadToolSettings(this.info.id,this.getDefaultSettings())}onload(){super.onload(),this.enabled=!0}onunload(){this.enabled=!1,super.onunload()}isEnabled(){return this.enabled&&this.settings.enabled}setEnabled(n){this.enabled=n}getErrors(){return[...this.errors]}clearErrors(){this.errors=[]}getSettingItems(){return[]}addError(n){this.errors.push(n)}registerCommand(n){let a=`${this.info.id}-${n.id}`;this.context._plugin.addCommand({...n,id:a,name:`[${this.info.name}] ${n.name}`}),this.registeredCommandIds.push(a)}unregisterCommands(){for(let n of this.registeredCommandIds)this.context._plugin.removeCommand(n);this.registeredCommandIds.length=0}addToolkitMenuItem(n,a,l="action"){this.context.addToolkitMenuItem(n,this.info.id,a,l)}async updateConfig(n,a){await this.context._settingsStore.updateToolSettingByPath(this.info.id,`config.${n}`,a)}async updateData(n,a){await this.context._settingsStore.updateToolSettingByPath(this.info.id,`data.${n}`,a)}};var aE=Y(Od());function Je(t){return function(e){if(!t||!t.id||!t.name)throw new Error("Tool info must have at least 'id' and 'name' properties.");let n=Symbol.for("toolkit:meta");return Reflect.defineMetadata(n,t,e),$l.getInstance().register(t.id,e),Object.defineProperty(e.prototype,"toolkitMeta",{get(){return Reflect.getMetadata(n,e)},configurable:!1,enumerable:!1}),Object.defineProperty(e.prototype,"id",{get(){return t.id},configurable:!1,enumerable:!0}),Object.defineProperty(e.prototype,"name",{get(){return t.name},configurable:!1,enumerable:!0}),Object.defineProperty(e.prototype,"icon",{get(){return t.icon},configurable:!1,enumerable:!0}),Object.defineProperty(e.prototype,"version",{get(){return t.version},configurable:!1,enumerable:!0}),Object.defineProperty(e.prototype,"description",{get(){return t.description},configurable:!1,enumerable:!0}),e}}var _v=Y(Sv()),tr=new WeakMap;function Mn(t,e){return{name:t,render:n=>{let a=n.settingEl,l=tr.get(a);l&&(l.unmount(),tr.delete(a)),a.empty(),a.addClass("rht-react-host");let i=(0,_v.createRoot)(a);return tr.set(a,i),i.render(e()),()=>{i.unmount(),tr.get(a)===i&&tr.delete(a)}}}}var zn=require("obsidian"),Iv=Y(_t());function Tv(t,e){return t==="empty-only"?e:!0}function Ma(t){return t.replace(/\\/g,"/").replace(/\/+/g,"/").replace(/^\/|\/$/g,"")}function Y1(t,e){let n=Ma(e.parentPath);switch(t.type){case"FOLDER":{let a=Ma(t.path);return a===""?!1:n===a?!0:t.includeSubfolders&&n.startsWith(a+"/")}case"EXCLUDE_FOLDER":{let a=Ma(t.path);return a===""?!0:n!==a&&!n.startsWith(a+"/")}case"FILENAME_PATTERN":{if(!t.pattern)return!1;try{return new RegExp(t.pattern).test(e.basename)}catch{return!1}}case"ROOT":return!0}}function Ev(t,e){for(let n of t)if(n.enabled&&n.scopes.length!==0&&n.templateFile&&n.scopes.every(a=>Y1(a,e)))return n;return null}var pf=require("obsidian");function mf(t,e){let n=(0,pf.moment)();return{notename:e.basename,folder:e.parent?.name??"",folderPath:e.parent?.path??"",now:n,date:n.format("YYYY-MM-DD"),time:n.format("HH:mm"),year:n.format("YYYY"),yearMonth:n.format("YYYYMM"),timestamp:Date.now(),frontmatter:t.metadataCache.getFileCache(e)?.frontmatter??{}}}function xv(t="Untitled",e="notes"){let n=(0,pf.moment)(),a=e.split("/").filter(Boolean);return{notename:t,folder:a[a.length-1]??"",folderPath:e,now:n,date:n.format("YYYY-MM-DD"),time:n.format("HH:mm"),year:n.format("YYYY"),yearMonth:n.format("YYYYMM"),timestamp:Date.now(),frontmatter:{}}}var Av=/\s+|'[^']*'|"[^"]*"|\d+(?:\.\d+)?|[A-Za-z_$][\w$]*|[.(),]/g,G1=new Set(["__proto__","constructor","prototype"]);function j1(t){let e=[];Av.lastIndex=0;let n=0,a;for(;(a=Av.exec(t))!==null;){if(a.index!==n)return null;n+=a[0].length;let l=a[0];/^\s/.test(l)||(l==="."?e.push({kind:"dot"}):l==="("?e.push({kind:"lparen"}):l===")"?e.push({kind:"rparen"}):l===","?e.push({kind:"comma"}):l==="true"||l==="false"?e.push({kind:"boolean",value:l==="true"}):l[0]==="'"||l[0]==='"'?e.push({kind:"string",value:l.slice(1,-1)}):/^\d/.test(l)?e.push({kind:"number",value:Number(l)}):e.push({kind:"ident",value:l}))}return n===t.length?e:null}function X1(t,e){let n=0;function a(){let o=t[n++];if(!o)throw new Error("unexpected end of expression");if(o.kind==="string"||o.kind==="number"||o.kind==="boolean")return o.value;throw new Error("method arguments must be literals")}function l(){if(t[n]?.kind!=="lparen")return{isCall:!1,args:[]};n++;let o=[];if(t[n]?.kind==="rparen")return n++,{isCall:!0,args:o};for(;;){o.push(a());let u=t[n++];if(u?.kind==="rparen")return{isCall:!0,args:o};if(u?.kind!=="comma")throw new Error("expected , or )")}}let i=t[0];if(!i||i.kind!=="ident")throw new Error("expression must start with an identifier");if(!Object.prototype.hasOwnProperty.call(e,i.value))throw new Error(`unknown variable: ${i.value}`);let r=e[i.value];for(n=1;nn.format(r?.trim()||"YYYY-MM-DD")),a=a.replace(/{{time:(.*?)}}/g,(i,r)=>n.format(r?.trim()||"HH:mm")),a=a.replace(/{{date}}/g,()=>n.format("YYYY-MM-DD")),a=a.replace(/{{time}}/g,()=>n.format("HH:mm")));let l=this.context.notename;return typeof l=="string"&&l.length>0&&(a=a.replace(/{{title}}/g,l)),a}renderExpressions(e){return e.replace(/\${(.*?)}/g,(n,a)=>{let l=Mv(a.trim(),this.context);return V1(l)??n})}};var yf=Y(_t());var hf=1;function Rl(){return crypto.randomUUID()}function kl(t,e=Rl()){switch(t){case"FOLDER":return{id:e,type:t,path:"",includeSubfolders:!0};case"EXCLUDE_FOLDER":return{id:e,type:t,path:""};case"FILENAME_PATTERN":return{id:e,type:t,pattern:""};case"ROOT":return{id:e,type:t}}}function zv(t,e){let n=kl(e,t.id);return"path"in t&&"path"in n&&(n.path=t.path),n}function wv(){return{id:Rl(),enabled:!0,scopes:[kl("FOLDER")],templateFile:"",renameFormat:"",applyMode:"empty-only"}}var Cv={enabled:!1,config:{version:hf,templatesFolderPath:""},data:{rules:[]}};var Rv=require("obsidian"),Wo=Y(_t()),kv=Y(nt());function Jt({name:t}){let e=(0,Wo.useRef)(null);return(0,Wo.useEffect)(()=>{e.current&&(0,Rv.setIcon)(e.current,t)},[t]),(0,kv.jsx)("span",{className:"rht-ft-icon",ref:e})}var Gv=Y(_t());var wa=Y(_t());var gf=require("obsidian");function Uv(t){return t.replace(/\\/g,"/").replace(/\/+/g,"/").replace(/^\/|\/$/g,"")}var tu=class extends gf.AbstractInputSuggest{constructor(n,a,l,i={}){super(n,a);this.onSelectPath=l;this.options=i}getSuggestions(n){let a=n.toLowerCase(),l=this.options.baseFolder?Uv(this.options.baseFolder()):"";return this.app.vault.getFiles().filter(i=>!this.options.filter||this.options.filter(i)).filter(i=>l===""||Uv(i.path).startsWith(l+"/")).filter(i=>i.path.toLowerCase().includes(a))}renderSuggestion(n,a){a.setText(n.path)}selectSuggestion(n){this.setValue(n.path),this.onSelectPath(n.path),this.close()}},Ul=class extends gf.AbstractInputSuggest{constructor(n,a,l,i={}){super(n,a);this.onSelectPath=l;this.options=i}getSuggestions(n){let a=n.toLowerCase(),l=this.options.includeRoot??!0;return this.app.vault.getAllFolders(l).filter(i=>i.path.toLowerCase().includes(a))}renderSuggestion(n,a){a.setText(n.path)}selectSuggestion(n){this.setValue(n.path),this.onSelectPath(n.path),this.close()}};var Hv=Y(nt());function eu({app:t,kind:e,value:n,placeholder:a,onChange:l,fileFilter:i,baseFolder:r}){let o=(0,wa.useRef)(null),u=(0,wa.useRef)(l);u.current=l;let s=(0,wa.useRef)(i);s.current=i;let m=(0,wa.useRef)(r);return m.current=r,(0,wa.useEffect)(()=>{let g=o.current;if(!g)return;let h=e==="file"?new tu(t,g,p=>u.current(p),{filter:p=>s.current?.(p)??!0,baseFolder:()=>m.current?.()??""}):new Ul(t,g,p=>u.current(p),{includeRoot:!1});return()=>h.close()},[t,e]),(0,Hv.jsx)("input",{ref:o,type:"text",className:"rht-ft-input",spellCheck:!1,placeholder:a,value:n,onChange:g=>l(g.target.value)})}var ce=Y(nt()),Z1=["FOLDER","EXCLUDE_FOLDER","FILENAME_PATTERN","ROOT"];function vf(t){if(!t)return!1;try{return new RegExp(t),!1}catch{return!0}}function Lv({app:t,scope:e,onChange:n,onDelete:a}){let l=S.settings.folder_templates.scopes,i={FOLDER:l.typeFolder(),EXCLUDE_FOLDER:l.typeExcludeFolder(),FILENAME_PATTERN:l.typeFilenamePattern(),ROOT:l.typeRoot()};return(0,ce.jsxs)("div",{className:"rht-ft-scope-row",children:[(0,ce.jsx)("select",{className:"rht-ft-select dropdown",value:e.type,onChange:r=>n(zv(e,r.target.value)),children:Z1.map(r=>(0,ce.jsx)("option",{value:r,children:i[r]},r))}),(e.type==="FOLDER"||e.type==="EXCLUDE_FOLDER")&&(0,ce.jsx)(eu,{app:t,kind:"folder",value:e.path,placeholder:l.pathPlaceholder(),onChange:r=>n({...e,path:r})}),e.type==="FOLDER"&&(0,ce.jsxs)("label",{className:"rht-ft-check",children:[(0,ce.jsx)("input",{type:"checkbox",checked:e.includeSubfolders,onChange:r=>n({...e,includeSubfolders:r.target.checked})}),l.includeSubfolders()]}),e.type==="ROOT"&&(0,ce.jsx)("span",{className:"rht-ft-preview",children:l.rootHint()}),e.type==="FILENAME_PATTERN"&&(0,ce.jsxs)("div",{className:"rht-ft-pattern",children:[(0,ce.jsx)("input",{type:"text",className:`rht-ft-input${vf(e.pattern)?" rht-ft-invalid":""}`,spellCheck:!1,value:e.pattern,placeholder:l.patternPlaceholder(),"aria-invalid":vf(e.pattern),onChange:r=>n({...e,pattern:r.target.value})}),vf(e.pattern)&&(0,ce.jsx)("span",{className:"rht-ft-error",children:l.patternInvalid()})]}),(0,ce.jsx)("button",{className:"rht-ft-icon-btn clickable-icon rht-ft-danger",type:"button","aria-label":S.common.delete(),onClick:a,children:(0,ce.jsx)(Jt,{name:"trash-2"})})]})}var nu=Y(_t());var Hl=Y(_t());var Ca=Y(nt());function Bv({token:t}){let[e,n]=(0,Hl.useState)(!1),a=(0,Hl.useRef)(null);(0,Hl.useEffect)(()=>()=>{a.current!==null&&window.clearTimeout(a.current)},[]);let l=()=>{navigator.clipboard.writeText(t).then(()=>{n(!0),a.current!==null&&window.clearTimeout(a.current),a.current=window.setTimeout(()=>n(!1),1500)},()=>{})};return(0,Ca.jsx)("code",{className:"rht-ft-varhint-token",role:"button",tabIndex:0,title:S.settings.folder_templates.variables.clickToCopy(),"aria-label":S.settings.folder_templates.variables.clickToCopy(),onClick:l,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),l())},children:e?(0,Ca.jsxs)(Ca.Fragment,{children:[(0,Ca.jsx)(Jt,{name:"check"}),S.settings.folder_templates.variables.copied()]}):t})}var He=Y(nt()),F1=[{token:"${notename}",desc:()=>S.settings.folder_templates.variables.notename()},{token:"${folder}",desc:()=>S.settings.folder_templates.variables.folder()},{token:"${folderPath}",desc:()=>S.settings.folder_templates.variables.folderPath()},{token:"${date}",desc:()=>S.settings.folder_templates.variables.date()},{token:"${time}",desc:()=>S.settings.folder_templates.variables.time()},{token:"${year}",desc:()=>S.settings.folder_templates.variables.year()},{token:"${yearMonth}",desc:()=>S.settings.folder_templates.variables.yearMonth()},{token:"${timestamp}",desc:()=>S.settings.folder_templates.variables.timestamp()},{token:"${now.format('YYYY-MM-DD')}",desc:()=>S.settings.folder_templates.variables.now()},{token:"${frontmatter.key}",desc:()=>S.settings.folder_templates.variables.frontmatter()}];function qv(){let[t,e]=(0,nu.useState)(!1),n=S.settings.folder_templates.variables;return(0,He.jsxs)("div",{className:"rht-ft-varhint",children:[(0,He.jsxs)("button",{className:"rht-ft-varhint-toggle",type:"button","aria-expanded":t,onClick:()=>e(a=>!a),children:[(0,He.jsx)(Jt,{name:t?"chevron-down":"chevron-right"}),n.title()]}),t&&(0,He.jsxs)("div",{className:"rht-ft-varhint-body",children:[(0,He.jsx)("dl",{className:"rht-ft-varhint-list",children:F1.map(a=>(0,He.jsxs)(nu.Fragment,{children:[(0,He.jsx)("dt",{className:"rht-ft-varhint-term",children:(0,He.jsx)(Bv,{token:a.token})}),(0,He.jsx)("dd",{className:"rht-ft-varhint-desc",children:a.desc()})]},a.token))}),(0,He.jsx)("div",{className:"rht-ft-varhint-legacy",children:n.legacy({date:"{{date}}",time:"{{time}}"})})]})]})}var Z=Y(nt());function jv({app:t,rule:e,onChange:n,onDelete:a,onMoveUp:l,onMoveDown:i,defaultExpanded:r,getTemplatesBasePath:o}){let[u,s]=(0,Gv.useState)(r??!1),m=S.settings.folder_templates,g=K1(e),h=e.enabled&&!e.templateFile,p=(A,d)=>n({...e,scopes:e.scopes.map((c,f)=>f===A?d:c)}),_=A=>n({...e,scopes:e.scopes.filter((d,c)=>c!==A)}),E=()=>n({...e,scopes:[...e.scopes,kl("FOLDER")]});return(0,Z.jsxs)("div",{className:"rht-ft-card",children:[(0,Z.jsxs)("div",{className:"rht-ft-card-header",children:[(0,Z.jsx)("button",{className:"rht-ft-icon-btn clickable-icon",type:"button","aria-label":g,"aria-expanded":u,onClick:()=>s(A=>!A),children:(0,Z.jsx)(Jt,{name:u?"chevron-down":"chevron-right"})}),(0,Z.jsxs)("span",{className:"rht-ft-card-title-wrap",onClick:()=>s(A=>!A),children:[(0,Z.jsxs)("span",{className:"rht-ft-card-title",children:[g,h&&(0,Z.jsxs)("span",{className:"rht-ft-warn",role:"img","aria-label":m.rules.warnNoTemplate(),title:m.rules.warnNoTemplate(),children:[" ","\u25CF"]})]}),!u&&(0,Z.jsx)("span",{className:"rht-ft-card-summary",children:J1(e)})]}),(0,Z.jsxs)("div",{className:"rht-ft-card-actions",children:[(0,Z.jsx)("div",{className:`checkbox-container ${e.enabled?"is-enabled":""}`,role:"switch","aria-checked":e.enabled,"aria-label":m.rules.enabledDesc(),tabIndex:0,onClick:()=>n({...e,enabled:!e.enabled}),onKeyDown:A=>{(A.key===" "||A.key==="Enter")&&(A.preventDefault(),n({...e,enabled:!e.enabled}))}}),(0,Z.jsx)("button",{className:"rht-ft-icon-btn clickable-icon",type:"button","aria-label":S.common.moveUp(),disabled:!l,onClick:l,children:(0,Z.jsx)(Jt,{name:"chevron-up"})}),(0,Z.jsx)("button",{className:"rht-ft-icon-btn clickable-icon",type:"button","aria-label":S.common.moveDown(),disabled:!i,onClick:i,children:(0,Z.jsx)(Jt,{name:"chevron-down"})}),(0,Z.jsx)("button",{className:"rht-ft-icon-btn clickable-icon rht-ft-danger",type:"button","aria-label":S.common.delete(),onClick:a,children:(0,Z.jsx)(Jt,{name:"trash-2"})})]})]}),u&&(0,Z.jsxs)("div",{className:"rht-ft-card-body",children:[(0,Z.jsxs)("label",{className:"rht-ft-field",children:[(0,Z.jsx)("span",{className:"rht-ft-field-label",children:m.rules.templateFile.name()}),(0,Z.jsx)(eu,{app:t,kind:"file",value:e.templateFile,placeholder:"template.md",fileFilter:A=>A.extension==="md",baseFolder:o,onChange:A=>n({...e,templateFile:A})})]}),(0,Z.jsxs)("label",{className:"rht-ft-field",children:[(0,Z.jsx)("span",{className:"rht-ft-field-label",children:m.rules.applyMode.name()}),(0,Z.jsxs)("select",{className:"rht-ft-select dropdown",value:e.applyMode,onChange:A=>n({...e,applyMode:A.target.value}),children:[(0,Z.jsx)("option",{value:"empty-only",children:m.rules.applyMode.emptyOnly()}),(0,Z.jsx)("option",{value:"prepend",children:m.rules.applyMode.prepend()})]})]}),(0,Z.jsxs)("label",{className:"rht-ft-field",children:[(0,Z.jsx)("span",{className:"rht-ft-field-label",children:m.rules.renameFormat.name()}),(0,Z.jsx)("input",{type:"text",className:"rht-ft-input",spellCheck:!1,value:e.renameFormat,placeholder:"${date}-${notename}",onChange:A=>n({...e,renameFormat:A.target.value})}),Yv(e.renameFormat)&&(0,Z.jsxs)("span",{className:"rht-ft-preview",children:[m.rules.renamePreview(),(0,Z.jsx)("code",{children:Yv(e.renameFormat)})]})]}),(0,Z.jsx)(qv,{}),(0,Z.jsxs)("div",{className:"rht-ft-scopes",children:[(0,Z.jsxs)("div",{className:"rht-ft-scopes-head",children:[(0,Z.jsx)("span",{className:"rht-ft-field-label",children:m.scopes.name()}),(0,Z.jsxs)("button",{className:"rht-ft-text-btn",type:"button",onClick:E,children:[(0,Z.jsx)(Jt,{name:"plus"}),S.common.add()]})]}),e.scopes.length===0?(0,Z.jsx)("div",{className:"rht-ft-empty",children:m.scopes.empty()}):e.scopes.map((A,d)=>(0,Z.jsx)(Lv,{app:t,scope:A,onChange:c=>p(d,c),onDelete:()=>_(d)},A.id))]})]})]})}function K1(t){let e=S.settings.folder_templates,n=t.scopes.find(a=>a.type==="FOLDER");return n&&n.path?n.path:t.scopes.some(a=>a.type==="ROOT")?e.scopes.typeRoot():t.templateFile?t.templateFile:e.rules.unnamed()}function J1(t){let e=S.settings.folder_templates,n=[];return n.push(`${t.scopes.length} ${e.rules.scopesUnit()}`),t.templateFile&&n.push(t.templateFile),n.push(t.applyMode==="empty-only"?e.rules.applyMode.emptyOnly():e.rules.applyMode.prepend()),n.join(" \xB7 ")}function Yv(t){if(!t||t.trim()==="")return"";try{return new za(xv()).render(t)}catch{return""}}var Te=Y(nt());function Xv({app:t,initialRules:e,getTemplatesBasePath:n,persist:a}){let[l,i]=(0,yf.useState)(e),[r,o]=(0,yf.useState)(null),u=S.settings.folder_templates,s=_=>{i(_),a(_)},m=()=>{let _=wv();o(_.id),s([...l,_])},g=(_,E)=>s(l.map((A,d)=>d===_?E:A)),h=_=>s(l.filter((E,A)=>A!==_)),p=(_,E)=>{let A=_+E;if(A<0||A>=l.length)return;let d=[...l],[c]=d.splice(_,1);d.splice(A,0,c),s(d)};return(0,Te.jsxs)("div",{className:"rht-ft-rules",children:[(0,Te.jsxs)("div",{className:"rht-ft-rules-head",children:[(0,Te.jsx)("span",{className:"rht-ft-rules-title",children:u.rules.name()}),(0,Te.jsxs)("button",{className:"rht-ft-text-btn mod-cta",type:"button",onClick:m,children:[(0,Te.jsx)(Jt,{name:"plus"}),S.common.add()]})]}),l.length===0?(0,Te.jsxs)("div",{className:"rht-ft-empty-state",children:[(0,Te.jsx)(Jt,{name:"folder-cog"}),(0,Te.jsx)("span",{className:"rht-ft-empty-state-text",children:S.common.noConfig()}),(0,Te.jsxs)("button",{className:"rht-ft-text-btn mod-cta",type:"button",onClick:m,children:[(0,Te.jsx)(Jt,{name:"plus"}),u.rules.addFirst()]})]}):l.map((_,E)=>(0,Te.jsx)(jv,{app:t,rule:_,getTemplatesBasePath:n,defaultExpanded:_.id===r,onChange:A=>g(E,A),onDelete:()=>h(E),onMoveUp:E>0?()=>p(E,-1):void 0,onMoveDown:Ep(E,1):void 0},_.id))]})}function Vv(t){return!t||typeof t!="object"?!1:typeof t.config?.version!="number"}function Qv(t){let e=t??{},n=(e.config?.ignoredFolders??[]).filter(i=>typeof i=="string"&&Ma(i)!==""),a=(e.data?.folderTemplates??[]).map(i=>{let r=Ma(i.folder??""),o=r===""?[kl("ROOT")]:[{id:Rl(),type:"FOLDER",path:r,includeSubfolders:!0}];for(let u of n)o.push({id:Rl(),type:"EXCLUDE_FOLDER",path:Ma(u)});return{id:Rl(),enabled:!0,scopes:o,templateFile:i.templateFile??"",renameFormat:i.fileNameRule??"",applyMode:"empty-only"}}),l=i=>{let r=i.scopes.find(o=>o.type==="FOLDER");return r?r.path.length:-1};return a.sort((i,r)=>l(r)-l(i)),{enabled:e.enabled??!1,config:{version:hf,templatesFolderPath:e.config?.templatesFolderPath??""},data:{rules:a}}}var $1=/[\\/:*?"<>|#^[\]]/g,Zt=class extends xe{constructor(){super(...arguments);this.processedCtimes=new Map}getDefaultSettings(){return Cv}async initialize(n){let a=n._settingsStore.getToolSettings("folder-templates");a&&Vv(a)&&await n._settingsStore.updateSettingByPath("toolkit.folder-templates",Qv(a)),await super.initialize(n)}onload(){super.onload(),this.registerEventHandlers()}onunload(){this.unregisterEventHandlers(),super.onunload()}registerEventHandlers(){this.isEnabled()&&this.context._app.workspace.onLayoutReady(()=>{this.triggerOnFileCreationEvent=this.context._app.vault.on("create",n=>{n instanceof zn.TFile&&this.handleFileCreate(n)})})}unregisterEventHandlers(){this.triggerOnFileCreationEvent&&(this.context._app.vault.offref(this.triggerOnFileCreationEvent),this.triggerOnFileCreationEvent=void 0),this.processedCtimes.clear()}getTemplatesBasePath(){let n=this.settings.config.templatesFolderPath;if(n&&n.trim()!=="")return(0,zn.normalizePath)(n);let i=this.context._app.internalPlugins.getEnabledPluginById("templates")?.options?.folder;return(0,zn.normalizePath)(i&&i.trim()!==""?i:"templates")}resolveTemplateFile(n){let a=n.includes("/")?(0,zn.normalizePath)(n):`${this.getTemplatesBasePath()}/${n}`,l=this.context._app.vault.getAbstractFileByPath(a);return l instanceof zn.TFile?l:null}async handleFileCreate(n){if(!this.isEnabled()||n.extension!=="md")return;let a=n.stat;if(Date.now()-a.ctime>Zt.CREATE_AGE_THRESHOLD_MS)return;let l=String(a.ctime);this.pruneProcessed();let i=this.processedCtimes.get(l);if(i!==void 0&&i>Date.now())return;this.processedCtimes.set(l,Date.now()+Zt.INFLIGHT_TTL_MS);let r=Ev(this.settings.data.rules,{parentPath:n.parent?.path??"",basename:n.basename});if(!r)return;let o=this.resolveTemplateFile(r.templateFile);if(!o){this.context.log("warn",`Template file not found: ${r.templateFile}`,this.info.id);return}if(!await this.waitForInitialOpen(n)&&!await this.context._app.vault.adapter.exists(n.path))return;let s="";try{s=await this.context._app.vault.cachedRead(n)}catch{}if(Tv(r.applyMode,s.trim().length===0))try{r.renameFormat&&r.renameFormat.trim()!==""&&await this.applyRename(n,r.renameFormat),await this.applyTemplate(n,o,r)}catch(m){this.addError(m),this.context.log("error","Failed to apply folder template",this.info.id,m)}}pruneProcessed(){let n=Date.now();for(let[a,l]of this.processedCtimes)l<=n&&this.processedCtimes.delete(a)}async waitForInitialOpen(n){let a=Date.now()+Zt.OPEN_WAIT_TIMEOUT_MS;for(;Date.now(){l.view instanceof zn.MarkdownView&&l.view.file===n&&(a=!0)}),a}static sleep(n){return new Promise(a=>window.setTimeout(a,n))}async applyRename(n,a){let i=new za(mf(this.context._app,n)).render(a).replace($1,"").trim();if(!i||i===n.basename)return;let r=n.parent?.path??"",o=r===""||r==="/"?"":`${r}/`,u=`${o}${i}.${n.extension}`,s=0;for(;this.context._app.vault.getAbstractFileByPath(u);)s+=1,u=`${o}${i}-${String(s).padStart(2,"0")}.${n.extension}`;await this.context._app.fileManager.renameFile(n,u)}async applyTemplate(n,a,l){let i=await this.context._app.vault.read(a),o=new za(mf(this.context._app,n)).render(i);await this.context._app.vault.process(n,u=>u.trim().length===0?o:l.applyMode==="prepend"?`${o} ${u}`:u)}getSettingItems(){let n=this.info.id,a=S.settings.folder_templates;return[{name:a.templatesFolderPath.name(),desc:a.templatesFolderPath.desc(),control:{type:"folder",key:`toolkit.${n}.config.templatesFolderPath`,defaultValue:""}},Mn(a.rules.name(),()=>(0,Iv.createElement)(Xv,{app:this.context._app,initialRules:this.settings.data.rules,getTemplatesBasePath:()=>this.getTemplatesBasePath(),persist:l=>{this.context._settingsStore.updateToolSettingByPath(this.info.id,"data.rules",l)}}))]}};Zt.CREATE_AGE_THRESHOLD_MS=5e3,Zt.INFLIGHT_TTL_MS=1e4,Zt.OPEN_WAIT_INTERVAL_MS=50,Zt.OPEN_WAIT_TIMEOUT_MS=2e3,Zt.OPEN_SETTLE_DELAY_MS=100,Zt=Fe([Je({id:"folder-templates",name:S.settings.folder_templates.name(),icon:"folder-cog",version:"2.0.0",description:S.settings.folder_templates.desc()})],Zt);var ne=require("obsidian"),py=Y(_t());var bf=require("obsidian");function Zv(t){return t.replace(/\\/g,"/").replace(/\/+/g,"/").replace(/^\/|\/$/g,"")}function P1(t,e){if(t==="")return e;let n=`${t}/`;return e.startsWith(n)?e.slice(n.length):e}function W1(t){let e=[],n=[t];for(;n.length>0;){let l=[...n.shift().children].sort((i,r)=>i.name.localeCompare(r.name));for(let i of l)e.push(P1(t.path,i.path)),n.push(i)}return e}function er(t){return W1({name:t.name,path:t.path,children:t.children.filter(e=>e instanceof bf.TFolder).map(e=>Fv(e))})}function Fv(t){return{name:t.name,path:t.path,children:t.children.filter(e=>e instanceof bf.TFolder).map(e=>Fv(e))}}function Kv(t,e){let n=Zv(e);return t.map(a=>Zv(`${n}/${a}`))}function Jv(t,e){return t.filter(n=>!e(n))}function $v(t){let e=[],n=a=>{for(let l of a.children)e.push(l.path),n(l)};return n(t),e}var Pv="ravenhogwarts-folder-structure",Wv=/[\\:*?"<>|#^[\]]/g;function ty(t){let n=t.map(a=>a.replace(Wv,"").trim()).filter(a=>a.length>0).join(` `);return"```"+Pv+` `+n+"\n```"}function ey(t){if(!t)return null;let n=new RegExp("`{3}"+t_(Pv)+"\\s*\\n([\\s\\S]*?)\\n`{3}","m").exec(t);if(!n)return null;let l=(n[1]??"").split(` `).map(i=>i.trim()).filter(i=>i.length>0).map(i=>i.replace(Wv,"")).filter(i=>i.length>0);return l.length>0?l:null}function t_(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}var lr=require("obsidian"),Tf=Y(_t());var e_=1;function n_(){return crypto.randomUUID()}function au(t=n_()){return{id:t,enabled:!0,name:"",sourceFolder:"",snapshot:[]}}var ny={enabled:!1,config:{version:e_},data:{templates:[]}};var ay=require("obsidian"),lu=Y(_t()),ly=Y(nt());function Ft({name:t}){let e=(0,lu.useRef)(null);return(0,lu.useEffect)(()=>{e.current&&(0,ay.setIcon)(e.current,t)},[t]),(0,ly.jsx)("span",{className:"rht-fs-icon",ref:e})}var Le=Y(_t());var rt=Y(nt());function a_(t){let e=[],n=(a,l)=>{for(let i of a.children)e.push({node:i,depth:l}),i.children.length>0&&n(i,l+1)};return n(t,0),e}function ry({snapshot:t,onChange:e}){let[n,a]=(0,Le.useState)(()=>iy(t)),[l,i]=(0,Le.useState)(null),[r,o]=(0,Le.useState)(null),u=(0,Le.useRef)(t),s=S.settings.folder_scaffolder.templateCard;(0,Le.useEffect)(()=>{d_(t,u.current)||(u.current=t,a(iy(t)))},[t]);let m=p=>{p_(p),a(p);let _=$v(sy(p));u.current=_,e(_)},g=()=>{let p=wn(n);p.children.push(oy()),m(p)},h=a_(n);return(0,rt.jsxs)("div",{className:"rht-fs-tree",children:[(0,rt.jsxs)("div",{className:"rht-fs-tree-head",children:[(0,rt.jsxs)("div",{className:"rht-fs-tree-head-text",children:[(0,rt.jsx)("span",{className:"rht-fs-tree-title",children:s.structure.name()}),(0,rt.jsx)("span",{className:"rht-fs-tree-hint",children:s.dragHint()})]}),(0,rt.jsxs)("button",{className:"rht-fs-text-btn mod-cta",type:"button",onClick:g,children:[(0,rt.jsx)(Ft,{name:"plus"}),s.addRootFolder()]})]}),h.length===0?(0,rt.jsx)("div",{className:"rht-fs-tree-empty",children:(0,rt.jsx)("span",{children:s.structure.empty()})}):(0,rt.jsx)("ul",{className:"rht-fs-tree-list",children:h.map(({node:p,depth:_})=>(0,rt.jsx)(l_,{node:p,depth:_,root:n,selected:l===p.id,editing:r===p.id,onSelect:E=>{i(E),o(null)},onStartRename:E=>{i(E),o(E)},onEndRename:()=>o(null),onRename:(E,A)=>{m(o_(n,E,A)),o(null)},onAddChild:E=>m(i_(n,E)),onRemove:E=>{l===E&&i(null),r===E&&o(null),m(r_(n,E))},onIndent:E=>m(u_(n,E)??n),onOutdent:E=>m(s_(n,E)??n),onMoveUp:E=>m(c_(n,E)??n),onMoveDown:E=>m(f_(n,E)??n)},p.id))})]})}function l_({node:t,depth:e,root:n,selected:a,editing:l,onSelect:i,onStartRename:r,onEndRename:o,onRename:u,onAddChild:s,onRemove:m,onIndent:g,onOutdent:h,onMoveUp:p,onMoveDown:_}){let E=S.settings.folder_scaffolder.templateCard,[A,d]=(0,Le.useState)(t.name),c=(0,Le.useRef)(null);(0,Le.useEffect)(()=>{d(t.name)},[t.name]),(0,Le.useEffect)(()=>{if(l){let at=c.current;at&&(at.focus(),at.select())}},[l]);let f=()=>{window.requestAnimationFrame(()=>c.current?.focus())},y={"--row-depth":e},O=()=>{let at=A.trim();at&&at!==t.name?u(t.id,at):(at||d(t.name),o())},q=nr(n,t.id),D=!!q&&q.index>0,M=!!q&&q.parent.id!=="__root__",L=!!q&&q.index>0,Q=!!q&&q.index{if(at.key==="Enter"){at.preventDefault(),l?O():r(t.id);return}if(at.key==="Escape"){at.preventDefault(),l&&(d(t.name),o());return}if(at.key==="Tab"){at.preventDefault(),at.shiftKey?M&&(h(t.id),f()):D&&(g(t.id),f());return}at.altKey&&(at.key==="ArrowUp"||at.key==="ArrowDown")&&(at.preventDefault(),at.key==="ArrowUp"&&L?(p(t.id),f()):at.key==="ArrowDown"&&Q&&(_(t.id),f()))};return(0,rt.jsx)("li",{className:`rht-fs-tree-row${a?" is-selected":""}${l?" is-editing":""}`,style:y,children:(0,rt.jsxs)("div",{className:`rht-fs-tree-line${e>0?" is-nested":""}`,onMouseDown:at=>{let pr=at.target;pr.closest("button")||pr===c.current||a||i(t.id)},children:[(0,rt.jsx)(Ft,{name:"folder"}),(0,rt.jsx)("input",{ref:c,className:`rht-fs-tree-input${l?" is-editing":""}`,spellCheck:!1,readOnly:!l,value:A,"aria-label":E.renameHint(),onChange:at=>d(at.target.value),onFocus:()=>{l||i(t.id)},onBlur:()=>{l&&O()},onKeyDown:Pt,onDoubleClick:()=>r(t.id)}),(0,rt.jsxs)("span",{className:"rht-fs-tree-move",children:[(0,rt.jsx)("button",{className:"rht-fs-icon-btn clickable-icon",type:"button",onClick:()=>{g(t.id),f()},disabled:!D,"aria-label":E.indent(),title:E.indent(),children:(0,rt.jsx)(Ft,{name:"corner-down-right"})}),(0,rt.jsx)("button",{className:"rht-fs-icon-btn clickable-icon",type:"button",onClick:()=>{h(t.id),f()},disabled:!M,"aria-label":E.outdent(),title:E.outdent(),children:(0,rt.jsx)(Ft,{name:"corner-up-left"})}),(0,rt.jsx)("button",{className:"rht-fs-icon-btn clickable-icon",type:"button",onClick:()=>{p(t.id),f()},disabled:!L,"aria-label":S.common.moveUp(),title:S.common.moveUp(),children:(0,rt.jsx)(Ft,{name:"arrow-up"})}),(0,rt.jsx)("button",{className:"rht-fs-icon-btn clickable-icon",type:"button",onClick:()=>{_(t.id),f()},disabled:!Q,"aria-label":S.common.moveDown(),title:S.common.moveDown(),children:(0,rt.jsx)(Ft,{name:"arrow-down"})})]}),(0,rt.jsxs)("span",{className:"rht-fs-tree-actions",children:[(0,rt.jsx)("button",{className:"rht-fs-icon-btn clickable-icon",type:"button",onClick:()=>s(t.id),"aria-label":E.addFolder(),title:E.addFolder(),children:(0,rt.jsx)(Ft,{name:"folder-plus"})}),(0,rt.jsx)("button",{className:"rht-fs-icon-btn clickable-icon rht-fs-danger",type:"button",onClick:()=>m(t.id),"aria-label":S.common.delete(),title:S.common.delete(),children:(0,rt.jsx)(Ft,{name:"trash"})})]})]})})}function i_(t,e){let n=wn(t);return _f(n,e)?.children.push(oy()),n}function r_(t,e){let n=wn(t);return uy(n,e),n}function o_(t,e,n){let a=wn(t),l=_f(a,e);return l&&(l.name=n),a}function nr(t,e){let n=Sf(t,e);if(!n)return null;let a=n.children.findIndex(r=>r.id===e);if(a<0)return null;let l=null,i=-1;return n.id!=="__root__"&&(l=Sf(t,n.id),l&&(i=l.children.findIndex(r=>r.id===n.id))),{parent:n,index:a,grandparent:l,parentIndex:i}}function u_(t,e){let n=wn(t),a=nr(n,e);if(!a||a.index<=0)return null;let l=a.parent.children.splice(a.index,1)[0];return a.parent.children[a.index-1].children.push(l),n}function s_(t,e){let n=wn(t),a=nr(n,e);if(!a||!a.grandparent||a.parentIndex<0)return null;let l=a.parent.children.splice(a.index,1)[0];return a.grandparent.children.splice(a.parentIndex+1,0,l),n}function c_(t,e){let n=wn(t),a=nr(n,e);if(!a||a.index<=0)return null;let l=a.parent.children;return[l[a.index-1],l[a.index]]=[l[a.index],l[a.index-1]],n}function f_(t,e){let n=wn(t),a=nr(n,e);if(!a||a.index>=a.parent.children.length-1)return null;let l=a.parent.children;return[l[a.index],l[a.index+1]]=[l[a.index+1],l[a.index]],n}function oy(){return{id:crypto.randomUUID(),name:S.settings.folder_scaffolder.templateCard.newFolderName(),path:"",children:[]}}function d_(t,e){let n=i=>[...new Set(i)].sort(),a=n(t),l=n(e);return a.length!==l.length?!1:a.every((i,r)=>i===l[r])}function wn(t){return{id:t.id,name:t.name,path:t.path,children:t.children.map(wn)}}function _f(t,e){if(t.id===e)return t;for(let n of t.children){let a=_f(n,e);if(a)return a}}function Sf(t,e){for(let n of t.children){if(n.id===e)return t;let a=Sf(n,e);if(a)return a}return null}function uy(t,e){let n=t.children.findIndex(a=>a.id===e);if(n>=0){t.children.splice(n,1);return}for(let a of t.children)uy(a,e)}function p_(t){let e=(n,a)=>{n.path=a;for(let l of n.children)e(l,a===""?l.name:`${a}/${l.name}`)};for(let n of t.children)e(n,n.name)}function sy(t){return{name:t.name,path:t.path,children:t.children.map(sy)}}function iy(t){let e={id:"__root__",name:"",path:"",children:[]},n=l=>{let i=l.split("/").filter(Boolean);if(i.length===0)return;let r=e,o="";for(let u of i){o=o===""?u:`${o}/${u}`;let s=r.children.find(m=>m.name===u);s||(s={id:m_(o),name:u,path:o,children:[]},r.children.push(s)),r=s}};for(let l of t)n(l);let a=l=>{l.children.sort((i,r)=>i.name.localeCompare(r.name)),l.children.forEach(a)};return a(e),e}function m_(t){return`node-${t}`}var ar=Y(_t());var fy=Y(nt());function cy({app:t,value:e,placeholder:n,onChange:a}){let l=(0,ar.useRef)(null),i=(0,ar.useRef)(a);return i.current=a,(0,ar.useEffect)(()=>{let r=l.current;if(!r)return;let o=new Ul(t,r,u=>i.current(u));return()=>o.close()},[t]),(0,fy.jsx)("input",{ref:l,type:"text",className:"rht-fs-input",spellCheck:!1,placeholder:n,value:e,onChange:r=>a(r.target.value)})}var F=Y(nt());function dy({app:t,initialTemplates:e,persist:n}){let[a,l]=(0,Tf.useState)(e),i=S.settings.folder_scaffolder,r=g=>{l(g),n(g)},o=()=>r([...a,au()]),u=(g,h)=>r(a.map(p=>p.id===g?{...p,...h}:p)),s=g=>r(a.filter(h=>h.id!==g)),m=g=>{let h=t.vault.getAbstractFileByPath(g.sourceFolder);if(!(h instanceof lr.TFolder)){new lr.Notice(i.templateCard.sourceNotFound());return}let p=er(h);u(g.id,{snapshot:p}),new lr.Notice(i.templateCard.refreshed({count:p.length}))};return(0,F.jsxs)("div",{className:"rht-fs-templates",children:[(0,F.jsxs)("div",{className:"rht-fs-head",children:[(0,F.jsx)("span",{className:"rht-fs-title",children:i.templates.name()}),(0,F.jsxs)("button",{className:"rht-fs-text-btn mod-cta",type:"button",onClick:o,children:[(0,F.jsx)(Ft,{name:"plus"}),S.common.add()]})]}),a.length===0?(0,F.jsxs)("div",{className:"rht-fs-empty-state",children:[(0,F.jsx)(Ft,{name:"folder-tree"}),(0,F.jsx)("span",{className:"rht-fs-empty-state-text",children:S.common.noConfig()}),(0,F.jsxs)("button",{className:"rht-fs-text-btn mod-cta",type:"button",onClick:o,children:[(0,F.jsx)(Ft,{name:"plus"}),i.templateCard.addFirst()]})]}):a.map(g=>(0,F.jsx)(h_,{app:t,template:g,onChange:h=>u(g.id,h),onDelete:()=>s(g.id),onRefresh:()=>m(g)},g.id))]})}function h_({app:t,template:e,onChange:n,onDelete:a,onRefresh:l}){let i=S.settings.folder_scaffolder,r=e.name.trim()||i.templateCard.unnamed(),[o,u]=(0,Tf.useState)(!1);return(0,F.jsxs)("div",{className:"rht-fs-card",children:[(0,F.jsxs)("div",{className:"rht-fs-card-header",children:[(0,F.jsx)("button",{className:"rht-fs-icon-btn clickable-icon",type:"button","aria-expanded":!o,"aria-label":o?i.templateCard.expand():i.templateCard.collapse(),title:o?i.templateCard.expand():i.templateCard.collapse(),onClick:()=>u(s=>!s),children:(0,F.jsx)(Ft,{name:o?"chevron-right":"chevron-down"})}),(0,F.jsxs)("span",{className:"rht-fs-card-title-wrap",onClick:()=>u(s=>!s),children:[(0,F.jsx)("span",{className:"rht-fs-card-title",children:r}),(0,F.jsx)("span",{className:"rht-fs-card-summary",children:i.templateCard.subDirs({count:e.snapshot.length})})]}),(0,F.jsx)("label",{className:"rht-fs-check",children:(0,F.jsx)("input",{type:"checkbox",checked:e.enabled,onChange:s=>n({enabled:s.target.checked}),"aria-label":i.templateCard.enabledDesc()})}),(0,F.jsx)("div",{className:"rht-fs-card-actions",children:(0,F.jsx)("button",{className:"rht-fs-icon-btn rht-fs-danger",type:"button",onClick:a,"aria-label":S.common.delete(),title:S.common.delete(),children:(0,F.jsx)(Ft,{name:"trash"})})})]}),!o&&(0,F.jsxs)("div",{className:"rht-fs-card-body",children:[(0,F.jsxs)("div",{className:"rht-fs-field",children:[(0,F.jsx)("span",{className:"rht-fs-field-label",children:i.templateCard.nameField.name()}),(0,F.jsx)("input",{type:"text",className:"rht-fs-input",spellCheck:!1,value:e.name,placeholder:i.templateCard.unnamed(),onChange:s=>n({name:s.target.value})})]}),(0,F.jsx)("div",{className:"rht-fs-field",children:(0,F.jsx)(ry,{snapshot:e.snapshot,onChange:s=>n({snapshot:s})})}),(0,F.jsxs)("details",{className:"rht-fs-import",children:[(0,F.jsxs)("summary",{className:"rht-fs-import-summary",children:[(0,F.jsx)(Ft,{name:"folder-input"}),i.templateCard.importFromVault()]}),(0,F.jsxs)("div",{className:"rht-fs-import-body",children:[(0,F.jsx)("span",{className:"rht-fs-field-desc",children:i.templateCard.importFromVaultDesc()}),(0,F.jsxs)("div",{className:"rht-fs-import-row",children:[(0,F.jsx)(cy,{app:t,value:e.sourceFolder,placeholder:i.templateCard.sourceField.name(),onChange:s=>n({sourceFolder:s})}),(0,F.jsxs)("button",{className:"rht-fs-text-btn mod-cta",type:"button",onClick:l,disabled:!e.sourceFolder.trim(),children:[(0,F.jsx)(Ft,{name:"refresh-cw"}),i.templateCard.refresh()]})]})]})]})]})]})}var iu=class extends xe{constructor(){super(...arguments);this.lastCopied=null}getDefaultSettings(){return ny}onload(){super.onload(),this.registerCommands(),this.registerEventHandlers()}onunload(){this.lastCopied=null,super.onunload()}registerCommands(){this.registerCommand({id:"create-from-template",name:S.command.folder_scaffolder.create_from_template(),callback:()=>{let n=this.context._app.workspace.getActiveFile();this.openCreateModal(n?.parent?.path??"")}}),this.registerCommand({id:"paste-structure",name:S.command.folder_scaffolder.paste_structure(),callback:async()=>{let n=this.context._app.workspace.getActiveFile();await this.pasteStructure(n?.parent?.path??"")}})}registerEventHandlers(){this.isEnabled()&&this.registerEvent(this.context._app.workspace.on("file-menu",(n,a)=>this.handleFileMenu(n,a)))}handleFileMenu(n,a){if(!(a instanceof ne.TFolder))return;let l=S.menu.folder_scaffolder;this.addToolkitMenuItem(n,i=>{i.setTitle(l.create_from_template()),i.setIcon("folder-tree"),i.onClick(()=>this.openCreateModal(a.path))}),this.addToolkitMenuItem(n,i=>{i.setTitle(l.copy_structure()),i.setIcon("copy"),i.onClick(()=>this.copyStructure(a))}),this.lastCopied&&this.lastCopied.length>0&&this.addToolkitMenuItem(n,i=>{i.setTitle(l.paste_structure()),i.setIcon("clipboard-paste"),i.onClick(async()=>{await this.pasteStructure(a.path)})}),this.addToolkitMenuItem(n,i=>{i.setTitle(l.save_as_template()),i.setIcon("bookmark-plus"),i.onClick(()=>this.saveAsTemplate(a))})}openCreateModal(n){let a=this.settings.data.templates.filter(l=>l.enabled&&l.snapshot.length>0);if(a.length===0){this.context.notice(S.notice.folder_scaffolder.no_template());return}new Ef(this.context._app,a,n,async(l,i,r)=>{await this.createStructure(l.snapshot,i,r,o=>S.notice.folder_scaffolder.created({count:o}))}).open()}async copyStructure(n){let a=er(n);if(a.length===0){this.context.notice(S.notice.folder_scaffolder.empty_structure());return}this.lastCopied=a;try{await navigator.clipboard.writeText(ty(a))}catch(l){this.context.log("warn","Failed to write clipboard, fallback to session cache",this.info.id,l)}this.context.notice(S.notice.folder_scaffolder.copied({count:a.length}))}async pasteStructure(n){let a=null;try{let l=await navigator.clipboard.readText();a=ey(l)}catch{}if(a||(a=this.lastCopied),!a||a.length===0){this.context.notice(S.notice.folder_scaffolder.paste_invalid());return}await this.createStructure(a,n,void 0,l=>S.notice.folder_scaffolder.pasted({count:l}))}saveAsTemplate(n){let a=er(n);if(a.length===0){this.context.notice(S.notice.folder_scaffolder.empty_structure());return}new xf(this.context._app,n.name,async l=>{let i={...au(),name:l.trim()||n.name,sourceFolder:n.path,snapshot:a};await this.updateData("templates",[...this.settings.data.templates,i]),this.context.notice(S.notice.folder_scaffolder.template_saved())}).open()}async createStructure(n,a,l,i=r=>S.notice.folder_scaffolder.created({count:r})){let r=this.context._app,o=l?(0,ne.normalizePath)(`${a}/${l}`):(0,ne.normalizePath)(a);try{let u=Kv(n,o);l&&!r.vault.getAbstractFileByPath(o)&&await r.vault.createFolder(o),u=Jv(u,s=>!!r.vault.getAbstractFileByPath(s));for(let s of u)await r.vault.createFolder(s);this.context.notice(i(u.length))}catch(u){this.addError(u),this.context.log("error","Failed to scaffold folder structure",this.info.id,u),this.context.notice(S.notice.folder_scaffolder.create_failed())}}getSettingItems(){return[Mn(S.settings.folder_scaffolder.templates.name(),()=>(0,py.createElement)(dy,{app:this.context._app,initialTemplates:this.settings.data.templates,persist:n=>{this.context._settingsStore.updateToolSettingByPath(this.info.id,"data.templates",n)}}))]}};iu=Fe([Je({id:"folder-scaffolder",name:S.settings.folder_scaffolder.name(),icon:"folder-tree",version:"1.1.0",description:S.settings.folder_scaffolder.desc()})],iu);var Ef=class extends ne.Modal{constructor(n,a,l,i){super(n);this.templates=a;this.onConfirm=i;this.newName="";this.selectedTemplate=a[0],this.targetParent=l}onOpen(){let{contentEl:n}=this,a=S.modal.folder_scaffolder;n.createEl("h2",{text:a.scaffold_title()}),new ne.Setting(n).setName(a.select_template()).addDropdown(l=>{l.addOptions(Object.fromEntries(this.templates.map(i=>[i.id,i.name||i.sourceFolder]))),l.onChange(i=>{let r=this.templates.find(o=>o.id===i);r&&(this.selectedTemplate=r)})}),new ne.Setting(n).setName(a.target_parent()).setDesc(a.target_parent_desc()).addText(l=>{l.setValue(this.targetParent),l.onChange(i=>this.targetParent=i)}),new ne.Setting(n).setName(a.new_folder_name()).setDesc(a.new_folder_name_desc()).addText(l=>{l.setValue(this.newName),l.onChange(i=>this.newName=i)}),new ne.Setting(n).addButton(l=>l.setCta().setButtonText(a.confirm()).onClick(async()=>{this.close(),await this.onConfirm(this.selectedTemplate,this.targetParent,this.newName.trim()||void 0)}))}onClose(){this.contentEl.empty()}},xf=class extends ne.Modal{constructor(n,a,l){super(n);this.onConfirm=l;this.name=a}onOpen(){let{contentEl:n}=this,a=S.modal.folder_scaffolder;n.createEl("h2",{text:a.save_template_title()}),new ne.Setting(n).setName(a.template_name()).addText(l=>{l.setValue(this.name),l.onChange(i=>this.name=i)}),new ne.Setting(n).addButton(l=>l.setCta().setButtonText(a.save()).onClick(async()=>{this.close(),await this.onConfirm(this.name)}))}onClose(){this.contentEl.empty()}};function Ll(t){let e=t.plugins?.manifests;if(!e||typeof e!="object")return[];let n=[];for(let a of Object.values(e))!a||typeof a.id!="string"||a.id===""||n.push({id:a.id,name:typeof a.name=="string"?a.name:a.id,version:typeof a.version=="string"?a.version:""});return n.sort((a,l)=>a.id.localeCompare(l.id)),n}var ln=require("obsidian"),Mf=Y(_t());function my(t){let e=0,n=0;for(let a of t)a.enabled&&e++,a.updatable&&n++;return{total:t.length,enabled:e,disabled:t.length-e,updatable:n}}function ru(t,e){return t.filter(n=>n.enabled!==e).map(n=>n.id)}function hy(){return`group-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}function gy(t){return[...t].sort((e,n)=>e.id.localeCompare(n.id))}function Bl(t,e){return[...t].sort((n,a)=>{let l=(e(n)??n).toLowerCase(),i=(e(a)??a).toLowerCase();return l!==i?ltypeof e=="string"&&e!==""))]:[]}function vy(t,e){if(!Array.isArray(t))return[];let n=new Set,a=[];for(let l of t){if(typeof l!="object"||l===null)continue;let i=l,r=typeof i.id=="string"?i.id:"";r===""||n.has(r)||(a.push({id:r,name:typeof i.name=="string"&&i.name.trim()!==""?i.name:e,pluginIds:Af(i.pluginIds)}),n.add(r))}return a}function yy(t,e){return t!==void 0&&!t.includes(e)}var Lt=Y(_t());var by=require("obsidian"),ou=Y(_t()),Sy=Y(nt());function Cn({name:t}){let e=(0,ou.useRef)(null);return(0,ou.useEffect)(()=>{e.current&&(0,by.setIcon)(e.current,t)},[t]),(0,Sy.jsx)("span",{className:"rht-pf-icon",ref:e})}var _y=require("obsidian"),ql=class extends _y.AbstractInputSuggest{constructor(n,a,l,i){super(n,a);this.onSelectId=l;this.options=i}getSuggestions(n){let a=n.toLowerCase(),l=this.options.excludeIds();return this.options.getCandidates().filter(i=>!l.has(i.id)).filter(i=>i.id.toLowerCase().includes(a)||i.name.toLowerCase().includes(a))}renderSuggestion(n,a){a.createSpan({cls:"rht-pf-suggest-name"}).setText(n.name),a.createSpan({cls:"rht-pf-suggest-id"}).setText(n.id)}selectSuggestion(n){this.setValue(""),this.onSelectId(n.id),this.close()}};var P=Y(nt());function Ey({app:t,initialGroups:e,getInstalledPlugins:n,persist:a}){let[l,i]=(0,Lt.useState)(e),r=(0,Lt.useRef)(l);r.current=l;let[o,u]=(0,Lt.useState)(null),s=S.settings.plugin_filter.groups,m=A=>{i(A),a(A)},g=(A,d)=>{m(r.current.map(c=>c.id===A?{...c,...d}:c))},h=()=>{let A={id:hy(),name:s.unnamed(),pluginIds:[]};m([...r.current,A]),u(A.id)},[p,_]=(0,Lt.useState)(()=>Ty(t));(0,Lt.useEffect)(()=>{let A=!0,d=t.plugins.on("changed",()=>{A&&_(Ty(t))});return()=>{A=!1,t.plugins.offref(d)}},[t]);let E=l.reduce((A,d)=>A+d.pluginIds.length,0);return(0,P.jsxs)("div",{className:"rht-pf-groups",children:[(0,P.jsxs)("div",{className:"rht-pf-groups-head",children:[(0,P.jsxs)("div",{className:"rht-pf-groups-title",children:[(0,P.jsx)("span",{className:"rht-pf-groups-name",children:s.name()}),(0,P.jsx)("span",{className:"rht-pf-groups-summary",children:s.summary({groups:String(l.length),members:String(E)})})]}),(0,P.jsxs)("button",{className:"rht-pf-add-group",type:"button",onClick:h,children:[(0,P.jsx)(Cn,{name:"plus"}),s.add_group()]})]}),l.length===0?(0,P.jsx)("div",{className:"rht-pf-empty",children:s.empty_groups()}):l.map(A=>(0,P.jsx)(g_,{app:t,group:A,enabledIds:p,getInstalledPlugins:n,autoFocusName:o===A.id,onAutoFocusHandled:()=>u(null),onChange:d=>g(A.id,d),onDelete:()=>m(r.current.filter(d=>d.id!==A.id))},A.id))]})}function Ty(t){let e=t.plugins?.enabledPlugins;return e instanceof Set?e:new Set}function g_({app:t,group:e,enabledIds:n,getInstalledPlugins:a,autoFocusName:l,onAutoFocusHandled:i,onChange:r,onDelete:o}){let[u,s]=(0,Lt.useState)(!1),[m,g]=(0,Lt.useState)(!1),[h,p]=(0,Lt.useState)(null),[_,E]=(0,Lt.useState)(""),A=(0,Lt.useRef)(null),d=(0,Lt.useRef)(null),c=(0,Lt.useRef)(e.pluginIds);c.current=e.pluginIds;let f=S.settings.plugin_filter.groups,y=M=>r({pluginIds:M}),O=M=>{y(c.current.filter(L=>L!==M))};(0,Lt.useEffect)(()=>{let M=d.current;if(!M)return;let L=new ql(t,M,Q=>D(Q),{getCandidates:a,excludeIds:()=>new Set(c.current)});return()=>L.close()},[t]),(0,Lt.useEffect)(()=>{if(!m)return;let M=window.setTimeout(()=>g(!1),3e3);return()=>window.clearTimeout(M)},[m]),(0,Lt.useEffect)(()=>{if(!l)return;let M=A.current;M&&(M.focus(),M.select()),i()},[l,i]),(0,Lt.useEffect)(()=>{if(!h)return;let M=window.setTimeout(()=>p(null),800);return()=>window.clearTimeout(M)},[h]);let q=a(),D=M=>{let L=M.trim();if(!L){E("");return}if(c.current.includes(L)){p(L),E("");return}y([...c.current,L]),E("")};return(0,P.jsxs)("div",{className:`rht-pf-group${e.pluginIds.length===0?" rht-pf-group-empty":""}`,children:[(0,P.jsxs)("div",{className:"rht-pf-group-head",children:[(0,P.jsx)("button",{className:`rht-pf-collapse clickable-icon${u?" is-collapsed":""}`,type:"button","aria-label":u?f.expand():f.collapse(),onClick:()=>s(M=>!M),children:(0,P.jsx)(Cn,{name:"chevron-down"})}),(0,P.jsx)("input",{ref:A,className:"rht-pf-group-name",type:"text",spellCheck:!1,value:e.name,placeholder:f.unnamed(),"aria-label":f.group_name_aria(),onChange:M=>r({name:M.target.value}),onKeyDown:M=>{M.key==="Enter"&&M.currentTarget.blur()}}),(0,P.jsx)("span",{className:"rht-pf-count",children:f.member_count({count:String(e.pluginIds.length)})}),m?(0,P.jsxs)(P.Fragment,{children:[(0,P.jsx)("button",{className:"rht-pf-icon-btn clickable-icon rht-pf-danger",type:"button","aria-label":f.confirm_delete(),title:f.confirm_delete(),onClick:o,children:(0,P.jsx)(Cn,{name:"check"})}),(0,P.jsx)("button",{className:"rht-pf-icon-btn clickable-icon",type:"button","aria-label":S.settings.plugin_filter.confirm_cancel(),onClick:()=>g(!1),children:(0,P.jsx)(Cn,{name:"x"})})]}):(0,P.jsx)("button",{className:"rht-pf-icon-btn clickable-icon rht-pf-muted",type:"button","aria-label":f.delete_group(),onClick:()=>g(!0),children:(0,P.jsx)(Cn,{name:"trash-2"})})]}),!u&&(0,P.jsxs)(P.Fragment,{children:[e.pluginIds.length===0?(0,P.jsx)("div",{className:"rht-pf-empty",children:f.empty_members()}):(0,P.jsx)("div",{className:"rht-pf-members",children:Bl(e.pluginIds,M=>q.find(L=>L.id===M)?.name).map(M=>{let L=q.find(at=>at.id===M)?.name,Q=!L,Pt=n.has(M);return(0,P.jsxs)("span",{className:`rht-pf-chip${Q?" rht-pf-chip-missing":""}${h===M?" rht-pf-chip-flash":""}`,children:[(0,P.jsx)("span",{className:`rht-pf-dot rht-pf-dot-${Pt?"on":"off"}`,title:Pt?f.status_enabled():f.status_disabled()}),(0,P.jsx)("span",{className:"rht-pf-chip-name",children:L??M}),Q&&(0,P.jsx)("span",{className:"rht-pf-chip-badge",children:f.missing()}),(0,P.jsx)("button",{className:"rht-pf-chip-remove clickable-icon",type:"button","aria-label":f.remove_member(),onClick:()=>O(M),children:(0,P.jsx)(Cn,{name:"x"})})]},M)})}),(0,P.jsx)("input",{ref:d,type:"text",className:"rht-pf-add-input",spellCheck:!1,placeholder:f.search_placeholder(),value:_,onChange:M=>E(M.target.value),onKeyDown:M=>{M.key==="Enter"?(M.preventDefault(),D(_)):M.key==="Escape"&&E("")}})]})]})}var Oa=Y(_t());var Ve=Y(nt());function xy({app:t,initialIds:e,getInstalledPlugins:n,persist:a}){let[l,i]=(0,Oa.useState)(e),r=(0,Oa.useRef)(l);r.current=l;let o=(0,Oa.useRef)(null),u=S.settings.plugin_filter.guard,s=p=>{i(p),a(p)};(0,Oa.useEffect)(()=>{let p=o.current;if(!p)return;let _=new ql(t,p,E=>g(E),{getCandidates:n,excludeIds:()=>new Set(r.current)});return()=>_.close()},[t]);let m=n(),g=p=>{let _=p.trim();!_||r.current.includes(_)||s([...r.current,_])},h=p=>{s(r.current.filter(_=>_!==p))};return(0,Ve.jsxs)("div",{className:"rht-pf-guard",children:[(0,Ve.jsx)("div",{className:"rht-pf-guard-hint",children:u.hint()}),l.length===0?(0,Ve.jsx)("div",{className:"rht-pf-empty",children:u.empty()}):(0,Ve.jsx)("div",{className:"rht-pf-members",children:Bl(l,p=>m.find(_=>_.id===p)?.name).map(p=>{let _=m.find(E=>E.id===p)?.name;return(0,Ve.jsxs)("span",{className:"rht-pf-chip",children:[(0,Ve.jsx)("span",{className:"rht-pf-chip-name",title:p,children:_??p}),(0,Ve.jsx)("button",{className:"rht-pf-chip-remove clickable-icon",type:"button","aria-label":u.remove_member(),onClick:()=>h(p),children:(0,Ve.jsx)(Cn,{name:"x"})})]},p)})}),(0,Ve.jsx)("input",{ref:o,type:"text",className:"rht-pf-add-input",spellCheck:!1,placeholder:u.search_placeholder(),onKeyDown:p=>{p.key==="Enter"&&(p.preventDefault(),g(p.currentTarget.value),p.currentTarget.value="")}})]})}var Ay=["all","enabled","disabled","updatable"],My={enabled:"otk-pf-state-enabled",disabled:"otk-pf-state-disabled",updatable:"otk-pf-state-updatable"},zy={enabled:!1,config:{groups:[],protectedIds:[]}};var v_=!0,y_="filter",b_="zap",$t,Qe,Da,Na,Yl,Gl,Be,jl,Xl,la,Ra,ur,w,Ee,wy,rr,uu,Cy,Oy,zf,Dy,Ny,wf,su,Ry,or,cu,ky,Cf,Uy,Hy,Ly,Of,Df,By,Nf,qy,ir=class extends xe{constructor(){super(...arguments);ot(this,w);ot(this,$t,{kind:"builtin",state:"all"});ot(this,Qe,null);ot(this,Da,null);ot(this,Na,!1);ot(this,Yl,!1);ot(this,Gl,!1);ot(this,Be,{total:0,enabled:0,disabled:0,updatable:0});ot(this,jl,"");ot(this,Xl,!1);ot(this,la,!1);ot(this,Ra,null);ot(this,ur,0)}getDefaultSettings(){return structuredClone(zy)}async initialize(n){let a=n._settingsStore.settings.toolkit[this.info.id];a?.config&&(a.config.groups=vy(a.config.groups,S.settings.plugin_filter.groups.unnamed()),a.config.protectedIds=Af(a.config.protectedIds)),await super.initialize(n)}getSettingItems(){return[Mn(S.settings.plugin_filter.groups.name(),()=>(0,Mf.createElement)(Ey,{app:this.context._app,initialGroups:this.settings.config.groups,getInstalledPlugins:()=>Ll(this.context._app),persist:n=>{this.updateConfig("groups",n)}})),Mn(S.settings.plugin_filter.guard.name(),()=>(0,Mf.createElement)(xy,{app:this.context._app,initialIds:this.settings.config.protectedIds,getInstalledPlugins:()=>Ll(this.context._app),persist:n=>{this.updateConfig("protectedIds",n)}}))]}onload(){super.onload(),C(this,w,Ee).call(this,"tool loaded; resolving community-plugins tab"),C(this,w,wy).call(this)}onunload(){C(this,w,rr).call(this),C(this,w,qy).call(this),super.onunload()}};$t=new WeakMap,Qe=new WeakMap,Da=new WeakMap,Na=new WeakMap,Yl=new WeakMap,Gl=new WeakMap,Be=new WeakMap,jl=new WeakMap,Xl=new WeakMap,la=new WeakMap,Ra=new WeakMap,ur=new WeakMap,w=new WeakSet,Ee=function(n){v_&&this.context.log("info",n,"plugin-filter")},wy=function(){C(this,w,uu).call(this)||this.context._app.workspace.onLayoutReady(()=>{C(this,w,uu).call(this)||X(this,Ra,window.setInterval(()=>{if(C(this,w,uu).call(this)){C(this,w,rr).call(this);return}++ed(this,ur)._>=10&&(C(this,w,rr).call(this),this.context.log("warn","community-plugins tab not found in app.setting.settingTabs; tool stays inactive","plugin-filter"))},1e3))})},rr=function(){R(this,Ra)!==null&&(window.clearInterval(R(this,Ra)),X(this,Ra,null))},uu=function(){let n=this.context._app.setting,a=n?.settingTabs;if(!Array.isArray(a))return C(this,w,Ee).call(this,`resolve: app.setting.settingTabs unavailable (${S_(n)})`),!1;let l=a.find(i=>i?.id==="community-plugins");return l?(C(this,w,Ee).call(this,"resolve: community-plugins tab instance found, attaching"),C(this,w,Cy).call(this,l),!0):(C(this,w,Ee).call(this,`resolve: tab not found among ${a.length} settingTabs (ids: ${__(a)})`),!1)},Cy=function(n){X(this,Qe,n),C(this,w,rr).call(this),X(this,Da,new MutationObserver(()=>C(this,w,Oy).call(this))),R(this,Da).observe(n.containerEl,{childList:!0,subtree:!0}),C(this,w,Ee).call(this,"observer attached on tab.containerEl"),this.registerDomEvent(n.containerEl,"click",a=>C(this,w,By).call(this,a)),C(this,w,zf).call(this,"attach")},Oy=function(){R(this,Na)||(X(this,Na,!0),C(this,w,Ee).call(this,"first containerEl mutation observed")),!R(this,Xl)&&(X(this,Xl,!0),window.requestAnimationFrame(()=>{X(this,Xl,!1),C(this,w,zf).call(this,"mutation")}))},zf=function(n){R(this,Qe)&&(C(this,w,Ny).call(this,n),C(this,w,su).call(this),C(this,w,or).call(this))},Dy=function(){let n=R(this,Qe)?.containerEl;if(!n)return null;for(let a of Array.from(n.querySelectorAll(".setting-item-heading .setting-item-control")))if(a.querySelector(".extra-setting-button"))return a;return null},Ny=function(n){let a=C(this,w,Dy).call(this);if(!a){C(this,w,Nf).call(this,"header control");return}if(!a.querySelector(":scope > [data-otk-plugin-filter]")){let l=a.createDiv("clickable-icon extra-setting-button otk-pf-btn");l.setAttribute("data-otk-plugin-filter",""),l.setAttribute("tabindex","0"),l.setAttribute("aria-label",C(this,w,Cf).call(this)),(0,ln.setIcon)(l,y_),R(this,Gl)||(X(this,Gl,!0),C(this,w,Ee).call(this,"filter button injected into header control"))}if(!a.querySelector(":scope > [data-otk-plugin-actions]")){let l=a.createDiv("clickable-icon extra-setting-button");l.setAttribute("data-otk-plugin-actions",""),l.setAttribute("tabindex","0"),l.setAttribute("aria-label",S.settings.plugin_filter.action_tooltip()),(0,ln.setIcon)(l,b_)}},wf=function(){return R(this,$t).kind==="builtin"?R(this,$t).state:null},su=function(){let n=R(this,Qe)?.containerEl;if(!n)return;let a=Array.from(n.querySelectorAll(".setting-items"));if(a.length===0){C(this,w,Nf).call(this,".setting-items");return}let l=C(this,w,wf).call(this);for(let i of a)for(let[r,o]of Object.entries(My))i.classList.toggle(o,r===l);C(this,w,Ry).call(this,n)},Ry=function(n){let a;if(R(this,$t).kind==="group"){let l=R(this,$t).groupId;a=this.settings.config.groups.find(i=>i.id===l)?.pluginIds,a||X(this,$t,{kind:"builtin",state:"all"})}for(let l of Array.from(n.querySelectorAll(".setting-items > .setting-item.mod-toggle[data-plugin-id]"))){let i=l.getAttribute("data-plugin-id")??"";yy(a,i)?l.addClass("otk-pf-group-hidden"):l.hasClass("otk-pf-group-hidden")&&l.removeClass("otk-pf-group-hidden")}},or=function(){let n=R(this,Qe)?.containerEl;if(!n)return;let a=n.querySelectorAll(".setting-items > .setting-item.mod-toggle[data-plugin-id]");X(this,Be,my(Array.from(a,i=>({enabled:i.querySelector(".checkbox-container")?.classList.contains("is-enabled")??!1,updatable:i.querySelector(".setting-item-control > button")!==null}))));let l=`${R(this,Be).total}/${R(this,Be).enabled}/${R(this,Be).updatable}`;l!==R(this,jl)&&(X(this,jl,l),C(this,w,Ee).call(this,`counts: total=${R(this,Be).total} enabled=${R(this,Be).enabled} disabled=${R(this,Be).disabled} updatable=${R(this,Be).updatable}`));for(let i of Array.from(n.querySelectorAll("[data-otk-plugin-filter]"))){let r=!(R(this,$t).kind==="builtin"&&R(this,$t).state==="all");i.classList.toggle("is-active",r),i.setAttribute("aria-label",C(this,w,Cf).call(this))}},cu=function(n){let{total:a,enabled:l,disabled:i,updatable:r}=R(this,Be);return{all:S.settings.plugin_filter.all({count:a}),enabled:S.settings.plugin_filter.enabled({count:l}),disabled:S.settings.plugin_filter.disabled({count:i}),updatable:S.settings.plugin_filter.updatable({count:r})}[n]},ky=function(){let n=R(this,$t);if(n.kind==="group"){let a=this.settings.config.groups.find(l=>l.id===n.groupId);if(a)return`${a.name} (${a.pluginIds.length})`;X(this,$t,{kind:"builtin",state:"all"})}return C(this,w,cu).call(this,n.kind==="builtin"?n.state:"all")},Cf=function(){return S.settings.plugin_filter.tooltip({label:C(this,w,ky).call(this)})},Uy=function(n){let a=new ln.Menu,l=C(this,w,wf).call(this);for(let r of Ay)a.addItem(o=>{let u=r===l;o.setTitle(u?`${C(this,w,cu).call(this,r)} \u2713`:C(this,w,cu).call(this,r)).onClick(()=>{X(this,$t,{kind:"builtin",state:r}),C(this,w,Ee).call(this,`filter -> ${r}`),C(this,w,su).call(this),C(this,w,or).call(this)})});let i=gy(this.settings.config.groups);if(i.length>0){a.addSeparator();let r=R(this,$t);for(let o of i)a.addItem(u=>{let s=r.kind==="group"&&r.groupId===o.id;u.setTitle(`${o.name} (${o.pluginIds.length})${s?" \u2713":""}`).onClick(()=>{X(this,$t,{kind:"group",groupId:o.id}),C(this,w,Ee).call(this,`filter -> group ${o.id}`),C(this,w,su).call(this),C(this,w,or).call(this)})})}a.showAtMouseEvent(n)},Hy=function(){let n=R(this,Qe)?.containerEl;return n?Array.from(n.querySelectorAll(".setting-items > .setting-item.mod-toggle[data-plugin-id]"),a=>({visible:a.offsetParent!==null,id:a.getAttribute("data-plugin-id")??"",enabled:a.querySelector(".checkbox-container")?.classList.contains("is-enabled")??!1})).filter(a=>a.visible&&a.id!==""):[]},Ly=function(n){if(R(this,la))return;let a=C(this,w,Hy).call(this),l=new ln.Menu;l.addItem(i=>{let r=ru(a,!0).length;i.setTitle(S.settings.plugin_filter.action_enable({count:r})),i.onClick(()=>{C(this,w,Of).call(this,a,!0)})}),l.addItem(i=>{let r=ru(a,!1).length;i.setTitle(S.settings.plugin_filter.action_disable({count:r})),i.onClick(()=>{C(this,w,Of).call(this,a,!1)})}),l.showAtMouseEvent(n)},Of=function(n,a){let l=ru(n,a);if(l.length===0||R(this,la))return;let i=this.context._plugin.manifest.id;if(!a){let r=new Set([...this.settings.config.protectedIds,i]),o=l.filter(u=>r.has(u));if(o.length>0){let u=Ll(this.context._app),s=m=>u.find(g=>g.id===m)?.name??m;new Rf(this.context._app,l,o,s,i,m=>{C(this,w,Df).call(this,m,!1)}).open();return}}C(this,w,Df).call(this,l,a)},Df=async function(n,a){if(n.length===0||R(this,la))return;X(this,la,!0);let l=this.context._plugin.manifest.id;a||n.sort((o,u)=>o===l?1:u===l?-1:0);let i=a?S.notice.plugin_filter.enabled_n:S.notice.plugin_filter.disabled_n;C(this,w,Ee).call(this,`batch ${a?"enable":"disable"}: ${n.length} plugins`);let r=0;try{let o=this.context._app.plugins;for(let u of n){if(!a&&u===l&&!this.enabled)break;try{a?await o.enablePluginAndSave(u):await o.disablePluginAndSave(u),r++}catch(s){let m=s instanceof Error?s.message:String(s);this.context.log("warn",`batch ${a?"enable":"disable"} failed for ${u}: ${m}`,"plugin-filter")}}}finally{X(this,la,!1)}this.enabled&&(this.context.notice(i({count:r})),C(this,w,Ee).call(this,`batch done: ${r}/${n.length}`))},By=function(n){let a=n.target,l=a instanceof Element?a.closest("[data-otk-plugin-filter], [data-otk-plugin-actions]"):null;l?.hasAttribute("data-otk-plugin-filter")?C(this,w,Uy).call(this,n):l?.hasAttribute("data-otk-plugin-actions")&&C(this,w,Ly).call(this,n),window.requestAnimationFrame(()=>C(this,w,or).call(this))},Nf=function(n){!R(this,Na)||R(this,Yl)||(X(this,Yl,!0),this.context.log("warn",`DOM anchor missing after render (${n}); tool stays inactive`,"plugin-filter"))},qy=function(){let n=R(this,Qe);X(this,Qe,null),X(this,Na,!1),X(this,Yl,!1),X(this,Gl,!1),X(this,jl,""),X(this,$t,{kind:"builtin",state:"all"}),X(this,ur,0),n&&(R(this,Da)?.disconnect(),X(this,Da,null),n.containerEl.querySelector("[data-otk-plugin-filter]")?.remove(),n.containerEl.querySelector("[data-otk-plugin-actions]")?.remove(),n.containerEl.querySelectorAll(".setting-items.otk-pf-state-enabled, .setting-items.otk-pf-state-disabled").forEach(a=>a.classList.remove("otk-pf-state-enabled","otk-pf-state-disabled")),n.containerEl.querySelectorAll(".otk-pf-group-hidden").forEach(a=>a.removeClass("otk-pf-group-hidden")))},ir=Fe([Je({id:"plugin-filter",name:S.settings.plugin_filter.name(),icon:"filter",version:"1.0.0",description:S.settings.plugin_filter.desc()})],ir);function S_(t){let e=t?.settingTabs;return Array.isArray(e)?`array of ${e.length}`:"missing"}function __(t){return Array.from(t,e=>String(e?.id)).slice(0,12).join(",")}var ia,Vl,sr,cr,ka,kf,Yy,Rf=class extends ln.Modal{constructor(n,a,l,i,r,o){super(n);this.nameOf=i;this.selfId=r;this.onConfirm=o;ot(this,ka);ot(this,ia);ot(this,Vl);ot(this,sr);ot(this,cr,null);X(this,sr,l),X(this,Vl,a.filter(u=>!l.includes(u))),X(this,ia,new Set(l))}onOpen(){this.titleEl.setText(S.settings.plugin_filter.confirm_title()),this.contentEl.createEl("p",{text:S.settings.plugin_filter.confirm_desc(),cls:"mod-muted"});let n=this.contentEl.createDiv("otk-pf-confirm-list");for(let a of Bl(R(this,sr),this.nameOf)){let l=n.createEl("label",{cls:"otk-pf-confirm-row"}),i=l.createEl("input",{type:"checkbox"});i.checked=!0,i.onchange=()=>{i.checked?R(this,ia).add(a):R(this,ia).delete(a),C(this,ka,Yy).call(this)},l.createSpan({cls:"otk-pf-confirm-name",text:this.nameOf(a)}),a===this.selfId&&l.createSpan({cls:"otk-pf-confirm-badge",text:S.settings.plugin_filter.confirm_self_badge()}),l.setAttribute("title",a)}new ln.Setting(this.contentEl).addButton(a=>a.setButtonText(S.settings.plugin_filter.confirm_cancel()).onClick(()=>this.close())).addButton(a=>(X(this,cr,a.setCta().setButtonText(S.settings.plugin_filter.confirm_run({count:C(this,ka,kf).call(this)})).onClick(()=>{this.close(),this.onConfirm([...R(this,Vl),...R(this,ia)])})),a))}};ia=new WeakMap,Vl=new WeakMap,sr=new WeakMap,cr=new WeakMap,ka=new WeakSet,kf=function(){return R(this,Vl).length+R(this,ia).size},Yy=function(){R(this,cr)?.setButtonText(S.settings.plugin_filter.confirm_run({count:C(this,ka,kf).call(this)}))};var $y=Y(_t());function Gy(t){let e=new Set,n=[];for(let a of t.split(` `)){let l=a.trim();!l||l==="__proto__"||l==="constructor"||l==="prototype"||e.has(l)||(e.add(l),n.push(l))}return n}function jy(t,e){if(!Array.isArray(t))return{status:"skipped-invalid"};let n=[];for(let r of t){if(typeof r!="string")return{status:"skipped-invalid"};n.push(r)}if(new Set(n).size!==n.length)return{status:"skipped-invalid"};let a=T_(e).filter(r=>n.includes(r));if(a.length===0)return{status:"unchanged"};let l=new Set(a),i=[...a,...n.filter(r=>!l.has(r))];return E_(n,i)?{status:"unchanged"}:{status:"reordered",nextIds:i}}function T_(t){let e=new Set,n=[];for(let a of t)e.has(a)||(e.add(a),n.push(a));return n}function E_(t,e){return t.length!==e.length?!1:t.every((n,a)=>n===e[a])}var Ie=Y(_t());var Xy=require("obsidian"),fu=Y(_t()),Vy=Y(nt());function du({name:t}){let e=(0,fu.useRef)(null);return(0,fu.useEffect)(()=>{e.current&&(0,Xy.setIcon)(e.current,t)},[t]),(0,Vy.jsx)("span",{className:"rht-po-icon",ref:e})}var Qy=require("obsidian"),pu=class extends Qy.AbstractInputSuggest{constructor(n,a,l,i){super(n,a);this.onSelectId=l;this.options=i}getSuggestions(n){let a=n.toLowerCase(),l=this.options.excludeIds();return this.options.getCandidates().filter(i=>!l.has(i.id)).filter(i=>i.id.toLowerCase().includes(a)||i.name.toLowerCase().includes(a))}renderSuggestion(n,a){a.createSpan({cls:"rht-po-suggest-name"}).setText(n.name),a.createSpan({cls:"rht-po-suggest-id"}).setText(n.id)}selectSuggestion(n){this.setValue(""),this.onSelectId(n.id),this.close()}};var Ct=Y(nt());async function Iy(t){try{let e=await t.vault.adapter.read(`${t.vault.configDir}/community-plugins.json`),n=JSON.parse(e);if(Array.isArray(n))return new Set(n.filter(a=>typeof a=="string"))}catch{}return null}function Zy({app:t,initialIds:e,getInstalledPlugins:n,persist:a}){let[l,i]=(0,Ie.useState)(e),[r,o]=(0,Ie.useState)(""),[u,s]=(0,Ie.useState)(new Set),m=(0,Ie.useRef)(null),g=(0,Ie.useRef)(l);g.current=l;let h=S.settings.plugin_order.priority_plugins,p=f=>{i(f),a(f)};(0,Ie.useEffect)(()=>{let f=m.current;if(!f)return;let y=new pu(t,f,O=>p([...g.current,O]),{getCandidates:n,excludeIds:()=>new Set(g.current)});return()=>y.close()},[t]),(0,Ie.useEffect)(()=>{let f=!1;return Iy(t).then(y=>{!f&&y&&s(y)}),()=>{f=!0}},[t,l]),(0,Ie.useEffect)(()=>{let f=!0,y=t.plugins.on("changed",()=>{Iy(t).then(O=>{f&&O&&s(O)})});return()=>{f=!1,t.plugins.offref(y)}},[t]);let _=n(),E=f=>_.find(y=>y.id===f)?.name,A=f=>u.has(f)?"enabled":_.some(y=>y.id===f)?"disabled":"missing",d=(f,y)=>{let O=f+y;if(O<0||O>=l.length)return;let q=[...l],[D]=q.splice(f,1);q.splice(O,0,D),p(q)},c=f=>{let y=f.trim();if(!y||g.current.includes(y)){o("");return}p([...g.current,y]),o("")};return(0,Ct.jsxs)("div",{className:"rht-po-editor",children:[(0,Ct.jsxs)("div",{className:"rht-po-head",children:[(0,Ct.jsx)("span",{className:"rht-po-title",children:h.name()}),(0,Ct.jsx)("span",{className:"rht-po-count",children:h.count({count:String(l.length)})})]}),(0,Ct.jsx)("input",{ref:m,type:"text",className:"rht-po-add-input",spellCheck:!1,placeholder:h.search_placeholder(),value:r,onChange:f=>o(f.target.value),onKeyDown:f=>{f.key==="Enter"&&(f.preventDefault(),c(r))}}),l.length===0?(0,Ct.jsx)("div",{className:"rht-po-empty",children:h.empty()}):l.map((f,y)=>(0,Ct.jsxs)("div",{className:"rht-po-row",children:[(0,Ct.jsx)("span",{className:"rht-po-order",children:y+1}),(0,Ct.jsxs)("span",{className:"rht-po-name-wrap",children:[(0,Ct.jsx)("span",{className:"rht-po-name",children:E(f)??f}),(0,Ct.jsx)("span",{className:"rht-po-id",children:f})]}),(0,Ct.jsx)("span",{className:`rht-po-badge rht-po-${A(f)}`,children:A(f)==="enabled"?h.status.enabled():A(f)==="disabled"?h.status.disabled():h.status.missing()}),(0,Ct.jsxs)("div",{className:"rht-po-actions",children:[(0,Ct.jsx)("button",{className:"rht-po-icon-btn clickable-icon",type:"button","aria-label":S.common.moveUp(),disabled:y===0,onClick:()=>d(y,-1),children:(0,Ct.jsx)(du,{name:"chevron-up"})}),(0,Ct.jsx)("button",{className:"rht-po-icon-btn clickable-icon",type:"button","aria-label":S.common.moveDown(),disabled:y===l.length-1,onClick:()=>d(y,1),children:(0,Ct.jsx)(du,{name:"chevron-down"})}),(0,Ct.jsx)("button",{className:"rht-po-icon-btn clickable-icon rht-po-danger",type:"button","aria-label":S.common.delete(),onClick:()=>p(l.filter((O,q)=>q!==y)),children:(0,Ct.jsx)(du,{name:"x"})})]})]},f))]})}var Fy={enabled:!1,config:{priorityPlugins:[]},data:{installedPlugins:[],installedPluginsCachedAt:0}};var Ua,Ql,Il,Ha,fe,dr,Py,Wy,Uf,fr=class extends xe{constructor(){super(...arguments);ot(this,fe);ot(this,Ua,Promise.resolve());ot(this,Ql);ot(this,Il,"");ot(this,Ha,!1)}getDefaultSettings(){return structuredClone(Fy)}async initialize(n){let a=n._settingsStore.settings.toolkit[this.info.id];typeof a?.config?.priorityPlugins=="string"&&(a.config.priorityPlugins=Gy(a.config.priorityPlugins)),await super.initialize(n)}onload(){super.onload(),X(this,Il,JSON.stringify(this.settings.config.priorityPlugins)),X(this,Ql,this.context._settingsStore.store.subscribe(()=>{let n=JSON.stringify(this.settings.config.priorityPlugins);n!==R(this,Il)&&(X(this,Il,n),C(this,fe,dr).call(this,{reason:"config-change"}))})),this.registerEvent(this.context._app.plugins.on("changed",()=>C(this,fe,Py).call(this))),C(this,fe,dr).call(this,{reason:"onload"}),this.registerCommand({id:"apply",name:S.command.plugin_order.apply(),callback:()=>C(this,fe,dr).call(this,{withNotice:!0,reason:"command"})})}onunload(){var n;(n=R(this,Ql))==null||n.call(this),X(this,Ql,void 0),this.unregisterCommands(),super.onunload()}getSettingItems(){return[Mn(S.settings.plugin_order.priority_plugins.name(),()=>(0,$y.createElement)(Zy,{app:this.context._app,initialIds:Ky(this.settings.config.priorityPlugins),getInstalledPlugins:()=>this.settings.data.installedPlugins,persist:n=>{this.context._settingsStore.updateToolSettingByPath(this.info.id,"config.priorityPlugins",n)}})),{name:S.settings.plugin_order.apply_now.name(),desc:S.settings.plugin_order.apply_now.desc(),action:()=>C(this,fe,dr).call(this,{withNotice:!0,reason:"action"})}]}};Ua=new WeakMap,Ql=new WeakMap,Il=new WeakMap,Ha=new WeakMap,fe=new WeakSet,dr=function(n){let a=n?.reason??"manual";X(this,Ua,R(this,Ua).then(()=>C(this,fe,Uf).call(this,n?.withNotice===!0)).catch(l=>{let i=l instanceof Error?l.message:String(l);this.context.log("warn",`enforce failed (reason=${a}): ${i}`,"plugin-order"),n?.withNotice&&this.context.notice(S.notice.plugin_order.invalid())}))},Py=function(){R(this,Ha)||(X(this,Ha,!0),X(this,Ua,R(this,Ua).then(async()=>{X(this,Ha,!1),this.enabled&&(await C(this,fe,Wy).call(this),this.enabled&&await C(this,fe,Uf).call(this,!1))}).catch(n=>{X(this,Ha,!1);let a=n instanceof Error?n.message:String(n);this.context.log("warn",`enforce failed (reason=plugin-changed): ${a}`,"plugin-order")})))},Wy=async function(){let{configDir:n,adapter:a}=this.context._app.vault,l=`${n}/community-plugins.json`,i=this.context._app.plugins?.enabledPlugins;if(!(i instanceof Set)){await Jy(2500);return}for(let r=0;r<30;r++){let o=!1;try{let u=JSON.parse(await a.read(l));if(Array.isArray(u)){let s=new Set(u.filter(m=>typeof m=="string"));o=s.size===i.size&&[...i].every(m=>s.has(m))}}catch{}if(o)return;await Jy(200)}},Uf=async function(n){let a=Ky(this.settings.config.priorityPlugins);if(a.length===0)return;let{configDir:l,adapter:i}=this.context._app.vault,r=Ll(this.context._app);await this.updateData("installedPlugins",r),await this.updateData("installedPluginsCachedAt",Date.now());let o=`${l}/community-plugins.json`,u;try{u=JSON.parse(await i.read(o))}catch{n&&this.context.notice(S.notice.plugin_order.invalid());return}let s=jy(u,a);if(s.status==="skipped-invalid"){n&&this.context.notice(S.notice.plugin_order.invalid());return}s.status==="reordered"&&(await i.write(o,JSON.stringify(s.nextIds)),n&&this.context.notice(S.notice.plugin_order.applied()))},fr=Fe([Je({id:"plugin-order",name:S.settings.plugin_order.name(),icon:"list-ordered",version:"1.2.0",description:S.settings.plugin_order.desc()})],fr);function Ky(t){return t.filter(e=>typeof e=="string"&&e!=="")}function Jy(t){return new Promise(e=>window.setTimeout(e,t))}var Fl=require("obsidian");var Zl={enabled:!1,config:{addEditorMenu:!0,addFileMenu:!0,useAbsolutePath:!1,pathSeparator:` `}};var mu=class extends xe{getDefaultSettings(){return Zl}getSettingItems(){let e=this.info.id;return[{name:S.settings.quick_path.addEditorMenu.name(),desc:S.settings.quick_path.addEditorMenu.desc(),control:{type:"toggle",key:`toolkit.${e}.config.addEditorMenu`,defaultValue:Zl.config.addEditorMenu}},{name:S.settings.quick_path.addFileMenu.name(),desc:S.settings.quick_path.addFileMenu.desc(),control:{type:"toggle",key:`toolkit.${e}.config.addFileMenu`,defaultValue:Zl.config.addFileMenu}},{name:S.settings.quick_path.useAbsolutePath.name(),desc:S.settings.quick_path.useAbsolutePath.desc(),control:{type:"toggle",key:`toolkit.${e}.config.useAbsolutePath`,defaultValue:Zl.config.useAbsolutePath}},{name:S.settings.quick_path.pathSeparator.name(),desc:S.settings.quick_path.pathSeparator.desc(),control:{type:"dropdown",key:`toolkit.${e}.config.pathSeparator`,defaultValue:Zl.config.pathSeparator,options:{"\n":S.settings.quick_path.pathSeparator.newline(),", ":S.settings.quick_path.pathSeparator.comma(),"; ":S.settings.quick_path.pathSeparator.semicolon()," ":S.settings.quick_path.pathSeparator.space()}}}]}onload(){super.onload();let e=this.context._app.vault.adapter;this.basePath=e.basePath.replace(/\\/g,"/"),this.registerCommands(),this.registerEventHandlers()}registerCommands(){this.registerCommand({id:"copy_current_file_path",name:S.command.quick_path.copy_current_file_path(),callback:()=>{let e=this.context._app.workspace.getActiveFile();if(e){let n=this.getPath(e);this.copyToClipboard(n)}}}),this.registerCommand({id:"copy_current_folder_path",name:S.command.quick_path.copy_current_folder_path(),callback:()=>{let e=this.context._app.workspace.getActiveFile(),n=e&&this.getParentPath(e);n?this.copyToClipboard(n):this.context.notice(S.notice.quick_path.root_path_warning())}})}registerEventHandlers(){this.isEnabled()&&(this.settings.config.addFileMenu&&(this.registerEvent(this.context._app.workspace.on("file-menu",(e,n)=>this.handleFileMenu(e,n))),this.registerEvent(this.context._app.workspace.on("files-menu",(e,n)=>this.handleFilesMenu(e,n)))),this.settings.config.addEditorMenu&&this.registerEvent(this.context._app.workspace.on("editor-menu",(e,n,a)=>this.handleEditorMenu(e,n,a))))}handleFileMenu(e,n){n instanceof Fl.TFolder?this.addToolkitMenuItem(e,a=>{a.setTitle(S.menu.quick_path.copy_folder_path()),a.setIcon("copy"),a.onClick(()=>{let l=this.getPath(n);this.copyToClipboard(l)})}):this.addToolkitMenuItem(e,a=>{a.setTitle(S.menu.quick_path.copy_file_path()),a.setIcon("copy"),a.onClick(()=>{let l=this.getPath(n);this.copyToClipboard(l)})})}handleFilesMenu(e,n){this.addToolkitMenuItem(e,a=>{a.setTitle(S.menu.quick_path.copy_files_path()),a.setIcon("copy"),a.onClick(()=>{let l=n.map(i=>this.getPath(i)).join(this.settings.config.pathSeparator);this.copyToClipboard(l)})})}handleEditorMenu(e,n,a){this.addToolkitMenuItem(e,l=>{l.setTitle(S.menu.quick_path.paste_current_file_path()),l.setIcon("file-text"),l.onClick(()=>{let i=this.context._app.workspace.getActiveFile();if(i){let r=this.getPath(i);n.replaceSelection(r)}})}),this.addToolkitMenuItem(e,l=>{l.setTitle(S.menu.quick_path.paste_current_folder_path()),l.setIcon("folder"),l.onClick(()=>{let i=this.context._app.workspace.getActiveFile(),r=i&&this.getParentPath(i);r?n.replaceSelection(r):this.context.notice(S.notice.quick_path.root_path_warning())})})}getPath(e){return this.settings.config.useAbsolutePath?(0,Fl.normalizePath)(`${this.basePath}/${e.path}`):(0,Fl.normalizePath)(e.path)}getParentPath(e){let n=this.getPath(e),a=n.lastIndexOf("/");return a===-1?null:(0,Fl.normalizePath)(n.substring(0,a))}copyToClipboard(e){navigator.clipboard.writeText(e).then(()=>{this.context.notice(S.notice.quick_path.copy_success())}).catch(n=>{throw this.context.notice(S.notice.quick_path.copy_failure()),n})}onunload(){this.unregisterCommands(),super.onunload()}};mu=Fe([Je({id:"quick-path",name:S.settings.quick_path.name(),icon:"link",version:"1.0.0",description:S.settings.quick_path.desc()})],mu);var tb=require("obsidian"),hu=class extends tb.Plugin{constructor(){super(...arguments);this.settingsStore=new Pl(this)}async onload(){await this.settingsStore.loadSettings(),this.pluginContext=new mr(this),this.toolkitManager=new hr(this.pluginContext),await this.registerToolkit(),await this.toolkitManager.loadEnabledToolkit(),this.settingTab=new vr(this),this.addSettingTab(this.settingTab)}onunload(){this.toolkitManager&&this.toolkitManager.unloadToolkit()}async saveSettings(){await this.saveData(this.settings)}async registerToolkit(){let n=ad.getAll();for(let a of n){let l=new a;this.toolkitManager.registerTool(l),await l.initialize(this.pluginContext)}}}; /*! Bundled license information: reflect-metadata/Reflect.js: (*! ***************************************************************************** Copyright (C) Microsoft. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** *) scheduler/cjs/scheduler.production.js: (** * @license React * scheduler.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) react/cjs/react.production.js: (** * @license React * react.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) react-dom/cjs/react-dom.production.js: (** * @license React * react-dom.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) react-dom/cjs/react-dom-client.production.js: (** * @license React * react-dom-client.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) react/cjs/react-jsx-runtime.production.js: (** * @license React * react-jsx-runtime.production.js * * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. *) */ /* nosourcemap */