@coffer-org/web 1.3.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/MarkdownEditor-DojqYLfa.js","assets/chunk-QTnfLwEv.js","assets/clsx-CjYvs854.js","assets/dist-BCZEBITw.js","assets/dist-CbTzBiwL.js","assets/floating-ui.dom-CRUx2QLQ.js","assets/lib-lakrpPuj.js","assets/development-C9_TDKdP.js","assets/micromark-extension-gfm-BCNbxHdH.js","assets/jsx-dev-runtime-BMBl2lag.js","assets/react-D4J6PwTK.js","assets/MarkdownEditor-BMHuPElP.css","assets/esm-Bpmih92m.js","assets/objectWithoutPropertiesLoose-DBYSo7QU.js","assets/lib-CMoTMQza.js","assets/jsx-runtime-DV9KAPzc.js","assets/esm-YFvMvTG9.css","assets/esm-C4bBicMr.js","assets/dist-C-RcoeMS.js","assets/GeoMap-BQkjLI1p.js","assets/GeoMap-vh-t_kPv.css","assets/src-BiPG5Wj0.js","assets/fields-DVMUyXbG.js","assets/plugin-b0fDTTXJ.js","assets/settings-Dfvzj6n2.js","assets/src-YMuIAAH1.js","assets/src-pd92-ym6.js","assets/color-names-CKKZbleV.js","assets/countries-BSm8PNWW.js","assets/src-D6UndSMF.js","assets/src-CsYFDJmY.js","assets/module-DytlXfXo.js","assets/data-size-D-ZPRlPP.js","assets/extend-DLMSdMhy.js","assets/src-CEDC2fUY.js","assets/src-DiUhYfl4.js","assets/src-791s3ufb.js","assets/src-zakS1nJb.js","assets/src-29EVe5AR.js","assets/src-CVUcsaPt.js","assets/src-Do7Z4dhu.js","assets/src-CXN5nPkW.js","assets/src-DLcSAptE.js","assets/src-C-Dv1uXg.js","assets/src-B8iacye4.js","assets/src-BljX5hzg.js","assets/src-D8ptIyqZ.js","assets/src-7ex3j1NP.js","assets/src-C2Pe7TE7.js","assets/src-DW-wOHmI.js","assets/src-CSA8Ms7c.js","assets/src-CLRRfAdi2.js","assets/src-CuLO2WBn2.js","assets/ui-Bl7rNE-K.js","assets/json-Dm-WBmNs.js","assets/button-CbB4uqRh.js","assets/dist-CdBkAqXL.js","assets/shared-QzShdLB7.js","assets/dist-iFwZyFpC.js","assets/field-frame-BY_3TvHn.js","assets/SettingsPage-Dxv3eZrP.js","assets/chunk-6CSD65Y2-FavEEIOj.js","assets/api-gSu-mjEH.js","assets/auth-context-BLh4J0hg.js","assets/PageBody-DXEdPT8C.js","assets/PluginSettingsPage-BzNvTqpx.js","assets/Toolbar-CXro4MxC.js","assets/SettingsForm-Bhsv5BEu.js","assets/NewRecordView-d9dzfC7R.js","assets/ExtendReasonInfo--21FkkoL.js"])))=>i.map(i=>d[i]);
2
- import{n as e,r as t,t as n}from"./chunk-QTnfLwEv.js";import{t as r}from"./react-D4J6PwTK.js";import{C as i,D as a,E as o,O as s,S as c,T as l,_ as u,a as d,b as f,c as p,d as m,f as h,g,h as _,i as v,l as y,m as b,n as x,o as S,p as C,s as w,t as T,u as E,v as D,w as O,x as k,y as A}from"./button-CbB4uqRh.js";import{n as j}from"./clsx-CjYvs854.js";import{a as M,c as N,i as P,l as F,n as I,o as ee,r as te,t as ne,u as re}from"./chunk-6CSD65Y2-FavEEIOj.js";import{C as ie,S as ae,_ as L,a as R,b as oe,c as se,d as ce,f as le,g as ue,h as z,i as de,l as fe,m as pe,o as me,p as he,s as ge,t as _e,u as ve,v as ye,w as be,y as xe}from"./field-frame-BY_3TvHn.js";import{n as Se}from"./color-names-CKKZbleV.js";import{t as Ce}from"./jsx-dev-runtime-BMBl2lag.js";import{A as we,B as Te,C as Ee,D as De,E as Oe,F as ke,I as Ae,L as je,M as Me,N as Ne,O as Pe,P as Fe,R as Ie,S as Le,T as Re,_ as ze,a as Be,b as Ve,c as He,d as Ue,f as We,g as Ge,h as Ke,i as qe,j as Je,k as Ye,l as Xe,m as Ze,n as Qe,o as $e,p as et,r as tt,s as nt,t as rt,u as it,v as at,w as ot,x as st,y as ct,z as lt}from"./shared-QzShdLB7.js";import{a as ut,c as dt,i as ft,n as pt,o as mt,r as ht,s as gt,t as _t}from"./dist-CdBkAqXL.js";import{t as vt}from"./jsx-runtime-DV9KAPzc.js";import{S as yt,_ as bt,a as xt,b as St,c as Ct,d as wt,f as Tt,g as Et,h as Dt,i as Ot,l as kt,m as At,n as jt,o as Mt,p as Nt,r as Pt,s as Ft,t as It,u as Lt,v as Rt,x as zt,y as Bt}from"./json-Dm-WBmNs.js";import{C as Vt,D as Ht,E as Ut,O as Wt,S as Gt,T as Kt,_ as qt,a as Jt,b as Yt,c as Xt,d as Zt,f as Qt,g as $t,h as en,i as tn,k as nn,l as rn,m as an,n as on,o as sn,p as cn,r as ln,s as un,t as dn,u as fn,v as pn,w as mn,x as hn,y as gn}from"./floating-ui.dom-CRUx2QLQ.js";import{a as _n,c as vn,i as yn,n as bn,o as xn,r as Sn,s as Cn,t as wn}from"./ExtendReasonInfo--21FkkoL.js";import{_ as Tn,a as En,c as Dn,d as On,h as kn,i as An,l as jn,m as Mn,n as Nn,o as Pn,p as Fn,r as In,s as Ln,t as Rn,u as zn,v as Bn,y as Vn}from"./Toolbar-CXro4MxC.js";import{A as Hn,M as Un,N as Wn,b as Gn,c as Kn,d as qn,f as Jn,i as Yn,o as Xn,r as Zn,u as Qn,v as $n,y as er}from"./fields-DVMUyXbG.js";import{t as tr}from"./dist-iFwZyFpC.js";import"./countries-BSm8PNWW.js";import{a as nr,c as rr,d as ir,f as ar,h as or,i as sr,l as cr,m as lr,o as ur,r as dr,s as fr,u as pr}from"./module-DytlXfXo.js";import{S as mr,_ as hr,a as gr,b as _r,c as vr,f as yr,g as br,h as xr,l as Sr,m as Cr,n as wr,p as Tr,r as Er,s as Dr,t as Or,u as kr,x as Ar}from"./api-gSu-mjEH.js";import{r as jr,t as Mr}from"./lib-CMoTMQza.js";import{r as Nr,t as Pr}from"./auth-context-BLh4J0hg.js";import{t as Fr}from"./SettingsForm-Bhsv5BEu.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Ir=n((e=>{(function(){function t(){if(x=!1,T){var t=e.unstable_now();O=t;var n=!0;try{a:{y=!1,b&&(b=!1,C(E),E=-1),v=!0;var a=_;try{b:{for(o(t),g=r(p);g!==null&&!(g.expirationTime>t&&c());){var u=g.callback;if(typeof u==`function`){g.callback=null,_=g.priorityLevel;var d=u(g.expirationTime<=t);if(t=e.unstable_now(),typeof d==`function`){g.callback=d,o(t),n=!0;break b}g===r(p)&&i(p),o(t)}else i(p);g=r(p)}if(g!==null)n=!0;else{var f=r(m);f!==null&&l(s,f.startTime-t),n=!1}}break a}finally{g=null,_=a,v=!1}n=void 0}}finally{n?k():T=!1}}}function n(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,i=e[r];if(0<a(i,t))e[r]=t,e[n]=i,n=r;else break a}}function r(e){return e.length===0?null:e[0]}function i(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,i=e.length,o=i>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>a(c,n))l<i&&0>a(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<i&&0>a(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}function o(e){for(var t=r(m);t!==null;){if(t.callback===null)i(m);else if(t.startTime<=e)i(m),t.sortIndex=t.expirationTime,n(p,t);else break;t=r(m)}}function s(e){if(b=!1,o(e),!y)if(r(p)!==null)y=!0,T||(T=!0,k());else{var t=r(m);t!==null&&l(s,t.startTime-e)}}function c(){return x?!0:!(e.unstable_now()-O<D)}function l(t,n){E=S(function(){t(e.unstable_now())},n)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var u=performance;e.unstable_now=function(){return u.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var p=[],m=[],h=1,g=null,_=3,v=!1,y=!1,b=!1,x=!1,S=typeof setTimeout==`function`?setTimeout:null,C=typeof clearTimeout==`function`?clearTimeout:null,w=typeof setImmediate<`u`?setImmediate:null,T=!1,E=-1,D=5,O=-1;if(typeof w==`function`)var k=function(){w(t)};else if(typeof MessageChannel<`u`){var A=new MessageChannel,j=A.port2;A.port1.onmessage=t,k=function(){j.postMessage(null)}}else k=function(){S(t,0)};e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):D=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return _},e.unstable_next=function(e){switch(_){case 1:case 2:case 3:var t=3;break;default:t=_}var n=_;_=t;try{return e()}finally{_=n}},e.unstable_requestPaint=function(){x=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=_;_=e;try{return t()}finally{_=n}},e.unstable_scheduleCallback=function(t,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,t){case 1:var c=-1;break;case 2:c=250;break;case 5:c=1073741823;break;case 4:c=1e4;break;default:c=5e3}return c=a+c,t={id:h++,callback:i,priorityLevel:t,startTime:a,expirationTime:c,sortIndex:-1},a>o?(t.sortIndex=a,n(m,t),r(p)===null&&t===r(m)&&(b?(C(E),E=-1):b=!0,l(s,a-o))):(t.sortIndex=c,n(p,t),y||v||(y=!0,T||(T=!0,k()))),t},e.unstable_shouldYield=c,e.unstable_wrapCallback=function(e){var t=_;return function(){var n=_;_=t;try{return e.apply(this,arguments)}finally{_=n}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),Lr=n(((e,t)=>{t.exports=Ir()})),Rr=n((e=>{(function(){function t(e,t){for(e=e.memoizedState;e!==null&&0<t;)e=e.next,t--;return e}function n(e,t,r,i){if(r>=t.length)return i;var a=t[r],o=Gf(e)?e.slice():Df({},e);return o[a]=n(e[a],t,r+1,i),o}function i(e,t,n){if(t.length!==n.length)console.warn(`copyWithRename() expects paths of the same length`);else{for(var r=0;r<n.length-1;r++)if(t[r]!==n[r]){console.warn(`copyWithRename() expects paths to be the same except for the deepest key`);return}return a(e,t,n,0)}}function a(e,t,n,r){var i=t[r],o=Gf(e)?e.slice():Df({},e);return r+1===t.length?(o[n[r]]=o[i],Gf(o)?o.splice(i,1):delete o[i]):o[i]=a(e[i],t,n,r+1),o}function o(e,t,n){var r=t[n],i=Gf(e)?e.slice():Df({},e);return n+1===t.length?(Gf(i)?i.splice(r,1):delete i[r],i):(i[r]=o(e[r],t,n+1),i)}function c(){return!1}function l(){return null}function u(){console.error(`Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks`)}function d(){console.error(`Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().`)}function f(){}function p(){}function m(e){var t=[];return e.forEach(function(e){t.push(e)}),t.sort().join(`, `)}function h(e,t,n,r){return new dr(e,t,n,r)}function g(e,t){e.context===Pg&&(Zd(e.current,2,t,e,null,null),nl())}function _(e,t){if(Fg!==null){var n=t.staleFamilies;t=t.updatedFamilies,Ol(),ur(e.current,t,n),nl()}}function v(e){Fg=e}function y(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function b(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function x(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function S(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function C(e){if(b(e)!==e)throw Error(`Unable to find node on an unmounted component.`)}function w(e){var t=e.alternate;if(!t){if(t=b(e),t===null)throw Error(`Unable to find node on an unmounted component.`);return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var a=i.alternate;if(a===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===a.child){for(a=i.child;a;){if(a===n)return C(i),e;if(a===r)return C(i),t;a=a.sibling}throw Error(`Unable to find node on an unmounted component.`)}if(n.return!==r.return)n=i,r=a;else{for(var o=!1,s=i.child;s;){if(s===n){o=!0,n=i,r=a;break}if(s===r){o=!0,r=i,n=a;break}s=s.sibling}if(!o){for(s=a.child;s;){if(s===n){o=!0,n=a,r=i;break}if(s===r){o=!0,r=a,n=i;break}s=s.sibling}if(!o)throw Error(`Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.`)}}if(n.alternate!==r)throw Error(`Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.`)}if(n.tag!==3)throw Error(`Unable to find node on an unmounted component.`);return n.stateNode.current===n?e:t}function T(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=T(e),t!==null)return t;e=e.sibling}return null}function E(e){return typeof e!=`object`||!e?null:(e=Uf&&e[Uf]||e[`@@iterator`],typeof e==`function`?e:null)}function D(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===Wf?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case jf:return`Fragment`;case Nf:return`Profiler`;case Mf:return`StrictMode`;case Lf:return`Suspense`;case Rf:return`SuspenseList`;case Vf:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case Af:return`Portal`;case Ff:return e.displayName||`Context`;case Pf:return(e._context.displayName||`Context`)+`.Consumer`;case If:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case zf:return t=e.displayName||null,t===null?D(e.type)||`Memo`:t;case Bf:t=e._payload,e=e._init;try{return D(e(t))}catch{}}return null}function O(e){return typeof e.tag==`number`?k(e):typeof e.name==`string`?e.name:null}function k(e){var t=e.type;switch(e.tag){case 31:return`Activity`;case 24:return`Cache`;case 9:return(t._context.displayName||`Context`)+`.Consumer`;case 10:return t.displayName||`Context`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 26:case 27:case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return D(t);case 8:return t===Mf?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t;break;case 29:if(t=e._debugInfo,t!=null){for(var n=t.length-1;0<=n;n--)if(typeof t[n].name==`string`)return t[n].name}if(e.return!==null)return k(e.return)}return null}function A(e){return{current:e}}function j(e,t){0>Xf?console.error(`Unexpected pop.`):(t!==Yf[Xf]&&console.error(`Unexpected Fiber popped.`),e.current=Jf[Xf],Jf[Xf]=null,Yf[Xf]=null,Xf--)}function M(e,t,n){Xf++,Jf[Xf]=e.current,Yf[Xf]=n,e.current=t}function N(e){return e===null&&console.error(`Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.`),e}function P(e,t){M($f,t,e),M(Qf,e,e),M(Zf,null,e);var n=t.nodeType;switch(n){case 9:case 11:n=n===9?`#document`:`#fragment`,t=(t=t.documentElement)&&(t=t.namespaceURI)?Lu(t):XS;break;default:if(n=t.tagName,t=t.namespaceURI)t=Lu(t),t=Ru(t,n);else switch(n){case`svg`:t=ZS;break;case`math`:t=QS;break;default:t=XS}}n=n.toLowerCase(),n=Nt(null,n),n={context:t,ancestorInfo:n},j(Zf,e),M(Zf,n,e)}function F(e){j(Zf,e),j(Qf,e),j($f,e)}function I(){return N(Zf.current)}function ee(e){e.memoizedState!==null&&M(ep,e,e);var t=N(Zf.current),n=e.type,r=Ru(t.context,n);n=Nt(t.ancestorInfo,n),r={context:r,ancestorInfo:n},t!==r&&(M(Qf,e,e),M(Zf,r,e))}function te(e){Qf.current===e&&(j(Zf,e),j(Qf,e)),ep.current===e&&(j(ep,e),DC._currentValue=EC)}function ne(){}function re(){if(tp===0){np=console.log,rp=console.info,ip=console.warn,ap=console.error,op=console.group,sp=console.groupCollapsed,cp=console.groupEnd;var e={configurable:!0,enumerable:!0,value:ne,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}tp++}function ie(){if(tp--,tp===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Df({},e,{value:np}),info:Df({},e,{value:rp}),warn:Df({},e,{value:ip}),error:Df({},e,{value:ap}),group:Df({},e,{value:op}),groupCollapsed:Df({},e,{value:sp}),groupEnd:Df({},e,{value:cp})})}0>tp&&console.error(`disabledDepth fell below zero. This is a bug in React. Please file an issue.`)}function ae(e){var t=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,e=e.stack,Error.prepareStackTrace=t,e.startsWith(`Error: react-stack-top-frame
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/MarkdownEditor-DojqYLfa.js","assets/chunk-QTnfLwEv.js","assets/clsx-CjYvs854.js","assets/dist-BCZEBITw.js","assets/dist-CbTzBiwL.js","assets/floating-ui.dom-CRUx2QLQ.js","assets/lib-lakrpPuj.js","assets/development-C9_TDKdP.js","assets/micromark-extension-gfm-BCNbxHdH.js","assets/jsx-dev-runtime-BMBl2lag.js","assets/react-D4J6PwTK.js","assets/MarkdownEditor-BMHuPElP.css","assets/esm-Bpmih92m.js","assets/objectWithoutPropertiesLoose-DBYSo7QU.js","assets/lib-CMoTMQza.js","assets/jsx-runtime-DV9KAPzc.js","assets/esm-YFvMvTG9.css","assets/esm-C4bBicMr.js","assets/dist-C-RcoeMS.js","assets/GeoMap-BQkjLI1p.js","assets/GeoMap-vh-t_kPv.css","assets/src-BiPG5Wj0.js","assets/fields-DVMUyXbG.js","assets/plugin-b0fDTTXJ.js","assets/settings-Dfvzj6n2.js","assets/src-YMuIAAH1.js","assets/src-pd92-ym6.js","assets/color-names-CKKZbleV.js","assets/countries-BSm8PNWW.js","assets/src-D6UndSMF.js","assets/src-CsYFDJmY.js","assets/module-DytlXfXo.js","assets/data-size-D-ZPRlPP.js","assets/extend-DLMSdMhy.js","assets/src-CEDC2fUY.js","assets/src-DiUhYfl4.js","assets/src-791s3ufb.js","assets/src-zakS1nJb.js","assets/src-29EVe5AR.js","assets/src-CVUcsaPt.js","assets/src-Do7Z4dhu.js","assets/src-CXN5nPkW.js","assets/src-DLcSAptE.js","assets/src-C-Dv1uXg.js","assets/src-B8iacye4.js","assets/src-BljX5hzg.js","assets/src-D8ptIyqZ.js","assets/src-7ex3j1NP.js","assets/src-C2Pe7TE7.js","assets/src-DW-wOHmI.js","assets/src-CSA8Ms7c.js","assets/src-CLRRfAdi2.js","assets/src-CuLO2WBn2.js","assets/ui-Bl7rNE-K.js","assets/json-Dm-WBmNs.js","assets/button-CbB4uqRh.js","assets/dist-CdBkAqXL.js","assets/shared-QzShdLB7.js","assets/dist-iFwZyFpC.js","assets/field-frame-BY_3TvHn.js","assets/SettingsPage-DFEMxm9d.js","assets/chunk-6CSD65Y2-FavEEIOj.js","assets/api-BpunGHNa.js","assets/auth-context-BNCSMPL8.js","assets/PageBody-DXEdPT8C.js","assets/PluginSettingsPage-BzNvTqpx.js","assets/Toolbar-CXro4MxC.js","assets/SettingsForm-Bhsv5BEu.js","assets/NewRecordView-B3vsuud9.js","assets/ExtendReasonInfo--21FkkoL.js"])))=>i.map(i=>d[i]);
2
+ import{n as e,r as t,t as n}from"./chunk-QTnfLwEv.js";import{t as r}from"./react-D4J6PwTK.js";import{C as i,D as a,E as o,O as s,S as c,T as l,_ as u,a as d,b as f,c as p,d as m,f as h,g,h as _,i as v,l as y,m as b,n as x,o as S,p as C,s as w,t as T,u as E,v as D,w as O,x as k,y as A}from"./button-CbB4uqRh.js";import{n as j}from"./clsx-CjYvs854.js";import{a as M,c as N,i as P,l as F,n as I,o as ee,r as te,t as ne,u as re}from"./chunk-6CSD65Y2-FavEEIOj.js";import{C as ie,S as ae,_ as L,a as R,b as oe,c as se,d as ce,f as le,g as ue,h as z,i as de,l as fe,m as pe,o as me,p as he,s as ge,t as _e,u as ve,v as ye,w as be,y as xe}from"./field-frame-BY_3TvHn.js";import{n as Se}from"./color-names-CKKZbleV.js";import{t as Ce}from"./jsx-dev-runtime-BMBl2lag.js";import{A as we,B as Te,C as Ee,D as De,E as Oe,F as ke,I as Ae,L as je,M as Me,N as Ne,O as Pe,P as Fe,R as Ie,S as Le,T as Re,_ as ze,a as Be,b as Ve,c as He,d as Ue,f as We,g as Ge,h as Ke,i as qe,j as Je,k as Ye,l as Xe,m as Ze,n as Qe,o as $e,p as et,r as tt,s as nt,t as rt,u as it,v as at,w as ot,x as st,y as ct,z as lt}from"./shared-QzShdLB7.js";import{a as ut,c as dt,i as ft,n as pt,o as mt,r as ht,s as gt,t as _t}from"./dist-CdBkAqXL.js";import{t as vt}from"./jsx-runtime-DV9KAPzc.js";import{S as yt,_ as bt,a as xt,b as St,c as Ct,d as wt,f as Tt,g as Et,h as Dt,i as Ot,l as kt,m as At,n as jt,o as Mt,p as Nt,r as Pt,s as Ft,t as It,u as Lt,v as Rt,x as zt,y as Bt}from"./json-Dm-WBmNs.js";import{C as Vt,D as Ht,E as Ut,O as Wt,S as Gt,T as Kt,_ as qt,a as Jt,b as Yt,c as Xt,d as Zt,f as Qt,g as $t,h as en,i as tn,k as nn,l as rn,m as an,n as on,o as sn,p as cn,r as ln,s as un,t as dn,u as fn,v as pn,w as mn,x as hn,y as gn}from"./floating-ui.dom-CRUx2QLQ.js";import{a as _n,c as vn,i as yn,n as bn,o as xn,r as Sn,s as Cn,t as wn}from"./ExtendReasonInfo--21FkkoL.js";import{_ as Tn,a as En,c as Dn,d as On,h as kn,i as An,l as jn,m as Mn,n as Nn,o as Pn,p as Fn,r as In,s as Ln,t as Rn,u as zn,v as Bn,y as Vn}from"./Toolbar-CXro4MxC.js";import{A as Hn,M as Un,N as Wn,b as Gn,c as Kn,d as qn,f as Jn,i as Yn,o as Xn,r as Zn,u as Qn,v as $n,y as er}from"./fields-DVMUyXbG.js";import{t as tr}from"./dist-iFwZyFpC.js";import"./countries-BSm8PNWW.js";import{a as nr,c as rr,d as ir,f as ar,h as or,i as sr,l as cr,m as lr,o as ur,r as dr,s as fr,u as pr}from"./module-DytlXfXo.js";import{C as mr,S as hr,_ as gr,a as _r,c as vr,f as yr,g as br,h as xr,l as Sr,m as Cr,n as wr,p as Tr,r as Er,s as Dr,t as Or,u as kr,x as Ar}from"./api-BpunGHNa.js";import{r as jr,t as Mr}from"./lib-CMoTMQza.js";import{r as Nr,t as Pr}from"./auth-context-BNCSMPL8.js";import{t as Fr}from"./SettingsForm-Bhsv5BEu.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var Ir=n((e=>{(function(){function t(){if(x=!1,T){var t=e.unstable_now();O=t;var n=!0;try{a:{y=!1,b&&(b=!1,C(E),E=-1),v=!0;var a=_;try{b:{for(o(t),g=r(p);g!==null&&!(g.expirationTime>t&&c());){var u=g.callback;if(typeof u==`function`){g.callback=null,_=g.priorityLevel;var d=u(g.expirationTime<=t);if(t=e.unstable_now(),typeof d==`function`){g.callback=d,o(t),n=!0;break b}g===r(p)&&i(p),o(t)}else i(p);g=r(p)}if(g!==null)n=!0;else{var f=r(m);f!==null&&l(s,f.startTime-t),n=!1}}break a}finally{g=null,_=a,v=!1}n=void 0}}finally{n?k():T=!1}}}function n(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,i=e[r];if(0<a(i,t))e[r]=t,e[n]=i,n=r;else break a}}function r(e){return e.length===0?null:e[0]}function i(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,i=e.length,o=i>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>a(c,n))l<i&&0>a(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<i&&0>a(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}function o(e){for(var t=r(m);t!==null;){if(t.callback===null)i(m);else if(t.startTime<=e)i(m),t.sortIndex=t.expirationTime,n(p,t);else break;t=r(m)}}function s(e){if(b=!1,o(e),!y)if(r(p)!==null)y=!0,T||(T=!0,k());else{var t=r(m);t!==null&&l(s,t.startTime-e)}}function c(){return x?!0:!(e.unstable_now()-O<D)}function l(t,n){E=S(function(){t(e.unstable_now())},n)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var u=performance;e.unstable_now=function(){return u.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var p=[],m=[],h=1,g=null,_=3,v=!1,y=!1,b=!1,x=!1,S=typeof setTimeout==`function`?setTimeout:null,C=typeof clearTimeout==`function`?clearTimeout:null,w=typeof setImmediate<`u`?setImmediate:null,T=!1,E=-1,D=5,O=-1;if(typeof w==`function`)var k=function(){w(t)};else if(typeof MessageChannel<`u`){var A=new MessageChannel,j=A.port2;A.port1.onmessage=t,k=function(){j.postMessage(null)}}else k=function(){S(t,0)};e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):D=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return _},e.unstable_next=function(e){switch(_){case 1:case 2:case 3:var t=3;break;default:t=_}var n=_;_=t;try{return e()}finally{_=n}},e.unstable_requestPaint=function(){x=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=_;_=e;try{return t()}finally{_=n}},e.unstable_scheduleCallback=function(t,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,t){case 1:var c=-1;break;case 2:c=250;break;case 5:c=1073741823;break;case 4:c=1e4;break;default:c=5e3}return c=a+c,t={id:h++,callback:i,priorityLevel:t,startTime:a,expirationTime:c,sortIndex:-1},a>o?(t.sortIndex=a,n(m,t),r(p)===null&&t===r(m)&&(b?(C(E),E=-1):b=!0,l(s,a-o))):(t.sortIndex=c,n(p,t),y||v||(y=!0,T||(T=!0,k()))),t},e.unstable_shouldYield=c,e.unstable_wrapCallback=function(e){var t=_;return function(){var n=_;_=t;try{return e.apply(this,arguments)}finally{_=n}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),Lr=n(((e,t)=>{t.exports=Ir()})),Rr=n((e=>{(function(){function t(e,t){for(e=e.memoizedState;e!==null&&0<t;)e=e.next,t--;return e}function n(e,t,r,i){if(r>=t.length)return i;var a=t[r],o=Gf(e)?e.slice():Df({},e);return o[a]=n(e[a],t,r+1,i),o}function i(e,t,n){if(t.length!==n.length)console.warn(`copyWithRename() expects paths of the same length`);else{for(var r=0;r<n.length-1;r++)if(t[r]!==n[r]){console.warn(`copyWithRename() expects paths to be the same except for the deepest key`);return}return a(e,t,n,0)}}function a(e,t,n,r){var i=t[r],o=Gf(e)?e.slice():Df({},e);return r+1===t.length?(o[n[r]]=o[i],Gf(o)?o.splice(i,1):delete o[i]):o[i]=a(e[i],t,n,r+1),o}function o(e,t,n){var r=t[n],i=Gf(e)?e.slice():Df({},e);return n+1===t.length?(Gf(i)?i.splice(r,1):delete i[r],i):(i[r]=o(e[r],t,n+1),i)}function c(){return!1}function l(){return null}function u(){console.error(`Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks`)}function d(){console.error(`Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().`)}function f(){}function p(){}function m(e){var t=[];return e.forEach(function(e){t.push(e)}),t.sort().join(`, `)}function h(e,t,n,r){return new dr(e,t,n,r)}function g(e,t){e.context===Pg&&(Zd(e.current,2,t,e,null,null),nl())}function _(e,t){if(Fg!==null){var n=t.staleFamilies;t=t.updatedFamilies,Ol(),ur(e.current,t,n),nl()}}function v(e){Fg=e}function y(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function b(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function x(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function S(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function C(e){if(b(e)!==e)throw Error(`Unable to find node on an unmounted component.`)}function w(e){var t=e.alternate;if(!t){if(t=b(e),t===null)throw Error(`Unable to find node on an unmounted component.`);return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var a=i.alternate;if(a===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===a.child){for(a=i.child;a;){if(a===n)return C(i),e;if(a===r)return C(i),t;a=a.sibling}throw Error(`Unable to find node on an unmounted component.`)}if(n.return!==r.return)n=i,r=a;else{for(var o=!1,s=i.child;s;){if(s===n){o=!0,n=i,r=a;break}if(s===r){o=!0,r=i,n=a;break}s=s.sibling}if(!o){for(s=a.child;s;){if(s===n){o=!0,n=a,r=i;break}if(s===r){o=!0,r=a,n=i;break}s=s.sibling}if(!o)throw Error(`Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.`)}}if(n.alternate!==r)throw Error(`Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.`)}if(n.tag!==3)throw Error(`Unable to find node on an unmounted component.`);return n.stateNode.current===n?e:t}function T(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=T(e),t!==null)return t;e=e.sibling}return null}function E(e){return typeof e!=`object`||!e?null:(e=Uf&&e[Uf]||e[`@@iterator`],typeof e==`function`?e:null)}function D(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===Wf?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case jf:return`Fragment`;case Nf:return`Profiler`;case Mf:return`StrictMode`;case Lf:return`Suspense`;case Rf:return`SuspenseList`;case Vf:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case Af:return`Portal`;case Ff:return e.displayName||`Context`;case Pf:return(e._context.displayName||`Context`)+`.Consumer`;case If:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case zf:return t=e.displayName||null,t===null?D(e.type)||`Memo`:t;case Bf:t=e._payload,e=e._init;try{return D(e(t))}catch{}}return null}function O(e){return typeof e.tag==`number`?k(e):typeof e.name==`string`?e.name:null}function k(e){var t=e.type;switch(e.tag){case 31:return`Activity`;case 24:return`Cache`;case 9:return(t._context.displayName||`Context`)+`.Consumer`;case 10:return t.displayName||`Context`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 26:case 27:case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return D(t);case 8:return t===Mf?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t;break;case 29:if(t=e._debugInfo,t!=null){for(var n=t.length-1;0<=n;n--)if(typeof t[n].name==`string`)return t[n].name}if(e.return!==null)return k(e.return)}return null}function A(e){return{current:e}}function j(e,t){0>Xf?console.error(`Unexpected pop.`):(t!==Yf[Xf]&&console.error(`Unexpected Fiber popped.`),e.current=Jf[Xf],Jf[Xf]=null,Yf[Xf]=null,Xf--)}function M(e,t,n){Xf++,Jf[Xf]=e.current,Yf[Xf]=n,e.current=t}function N(e){return e===null&&console.error(`Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.`),e}function P(e,t){M($f,t,e),M(Qf,e,e),M(Zf,null,e);var n=t.nodeType;switch(n){case 9:case 11:n=n===9?`#document`:`#fragment`,t=(t=t.documentElement)&&(t=t.namespaceURI)?Lu(t):XS;break;default:if(n=t.tagName,t=t.namespaceURI)t=Lu(t),t=Ru(t,n);else switch(n){case`svg`:t=ZS;break;case`math`:t=QS;break;default:t=XS}}n=n.toLowerCase(),n=Nt(null,n),n={context:t,ancestorInfo:n},j(Zf,e),M(Zf,n,e)}function F(e){j(Zf,e),j(Qf,e),j($f,e)}function I(){return N(Zf.current)}function ee(e){e.memoizedState!==null&&M(ep,e,e);var t=N(Zf.current),n=e.type,r=Ru(t.context,n);n=Nt(t.ancestorInfo,n),r={context:r,ancestorInfo:n},t!==r&&(M(Qf,e,e),M(Zf,r,e))}function te(e){Qf.current===e&&(j(Zf,e),j(Qf,e)),ep.current===e&&(j(ep,e),DC._currentValue=EC)}function ne(){}function re(){if(tp===0){np=console.log,rp=console.info,ip=console.warn,ap=console.error,op=console.group,sp=console.groupCollapsed,cp=console.groupEnd;var e={configurable:!0,enumerable:!0,value:ne,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}tp++}function ie(){if(tp--,tp===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Df({},e,{value:np}),info:Df({},e,{value:rp}),warn:Df({},e,{value:ip}),error:Df({},e,{value:ap}),group:Df({},e,{value:op}),groupCollapsed:Df({},e,{value:sp}),groupEnd:Df({},e,{value:cp})})}0>tp&&console.error(`disabledDepth fell below zero. This is a bug in React. Please file an issue.`)}function ae(e){var t=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,e=e.stack,Error.prepareStackTrace=t,e.startsWith(`Error: react-stack-top-frame
3
3
  `)&&(e=e.slice(29)),t=e.indexOf(`
4
4
  `),t!==-1&&(e=e.slice(t+1)),t=e.indexOf(`react_stack_bottom_frame`),t!==-1&&(t=e.lastIndexOf(`
5
5
  `,t)),t!==-1)e=e.slice(0,t);else return``;return e}function L(e){if(lp===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);lp=t&&t[1]||``,up=-1<e.stack.indexOf(`
@@ -216,7 +216,19 @@ Learn more: https://react.dev/warnings/version-mismatch`))})(),typeof Map==`func
216
216
  You might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq`:``),`font-weight:bold`)}e.createRoot=function(e,t){if(!y(e))throw Error(`Target container is not a DOM element.`);Cf(e);var n=!1,r=``,i=Xo,a=Zo,o=Qo;return t!=null&&(t.hydrate?console.warn(`hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead.`):typeof t==`object`&&t&&t.$$typeof===kf&&console.error(`You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:
217
217
 
218
218
  let root = createRoot(domContainer);
219
- root.render(<App />);`),!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(a=t.onCaughtError),t.onRecoverableError!==void 0&&(o=t.onRecoverableError)),t=Yd(e,1,!1,null,null,n,r,null,i,a,o,bf),e[Kp]=t.current,ou(e),new xf(t)},e.hydrateRoot=function(e,t,n){if(!y(e))throw Error(`Target container is not a DOM element.`);Cf(e),t===void 0&&console.error(`Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)`);var r=!1,i=``,a=Xo,o=Zo,s=Qo,c=null;return n!=null&&(!0===n.unstable_strictMode&&(r=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onUncaughtError!==void 0&&(a=n.onUncaughtError),n.onCaughtError!==void 0&&(o=n.onCaughtError),n.onRecoverableError!==void 0&&(s=n.onRecoverableError),n.formState!==void 0&&(c=n.formState)),t=Yd(e,1,!0,t,n??null,r,i,c,a,o,s,bf),t.context=Xd(null),n=t.current,r=Yc(n),r=Me(r),i=Ki(r),i.callback=null,qi(n,i,r),ei(r,`hydrateRoot()`,null),n=r,t.current.lanes=n,De(t,n),Ul(t),e[Kp]=t.current,ou(e),new Sf(t)},e.version=`19.2.7`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),zr=n(((e,t)=>{t.exports=Rr()})),B=t(r(),1),Br=zr(),Vr=e=>typeof e==`string`,Hr=()=>{let e,t,n=new Promise((n,r)=>{e=n,t=r});return n.resolve=e,n.reject=t,n},Ur=e=>e==null?``:String(e),Wr=(e,t,n)=>{e.forEach(e=>{t[e]&&(n[e]=t[e])})},Gr=/###/g,Kr=e=>e&&e.includes(`###`)?e.replace(Gr,`.`):e,qr=e=>!e||Vr(e),Jr=(e,t,n)=>{let r=Vr(t)?t.split(`.`):t,i=0;for(;i<r.length-1;){if(qr(e))return{};let t=Kr(r[i]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++i}return qr(e)?{}:{obj:e,k:Kr(r[i])}},Yr=(e,t,n)=>{let{obj:r,k:i}=Jr(e,t,Object);if(r!==void 0||t.length===1){r[i]=n;return}let a=t[t.length-1],o=t.slice(0,t.length-1),s=Jr(e,o,Object);for(;s.obj===void 0&&o.length;)a=`${o[o.length-1]}.${a}`,o=o.slice(0,o.length-1),s=Jr(e,o,Object),s?.obj&&s.obj[`${s.k}.${a}`]!==void 0&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=n},Xr=(e,t,n,r)=>{let{obj:i,k:a}=Jr(e,t,Object);i[a]=i[a]||[],i[a].push(n)},Zr=(e,t)=>{let{obj:n,k:r}=Jr(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,r))return n[r]},Qr=(e,t,n)=>{let r=Zr(e,n);return r===void 0?Zr(t,n):r},$r=(e,t,n)=>{for(let r in t)r!==`__proto__`&&r!==`constructor`&&(r in e?Vr(e[r])||e[r]instanceof String||Vr(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):$r(e[r],t[r],n):e[r]=t[r]);return e},ei=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,`\\$&`),ti={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`,"/":`&#x2F;`},ni=e=>Vr(e)?e.replace(/[&<>"'\/]/g,e=>ti[e]):e,ri=class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){let t=this.regExpMap.get(e);if(t!==void 0)return t;let n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}},ii=[` `,`,`,`?`,`!`,`;`],ai=new ri(20),oi=(e,t,n)=>{t||=``,n||=``;let r=ii.filter(e=>!t.includes(e)&&!n.includes(e));if(r.length===0)return!0;let i=ai.getRegExp(`(${r.map(e=>e===`?`?`\\?`:e).join(`|`)})`),a=!i.test(e);if(!a){let t=e.indexOf(n);t>0&&!i.test(e.substring(0,t))&&(a=!0)}return a},si=(e,t,n=`.`)=>{if(!e)return;if(e[t])return Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0;let r=t.split(n),i=e;for(let e=0;e<r.length;){if(!i||typeof i!=`object`)return;let t,a=``;for(let o=e;o<r.length;++o)if(o!==e&&(a+=n),a+=r[o],t=i[a],t!==void 0){if([`string`,`number`,`boolean`].includes(typeof t)&&o<r.length-1)continue;e+=o-e+1;break}i=t}return i},ci=e=>e?.replace(/_/g,`-`),li={type:`logger`,log(e){this.output(`log`,e)},warn(e){this.output(`warn`,e)},error(e){this.output(`error`,e)},output(e,t){console?.[e]?.apply?.(console,t)}},ui=new class e{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||`i18next:`,this.logger=e||li,this.options=t,this.debug=t.debug}log(...e){return this.forward(e,`log`,``,!0)}warn(...e){return this.forward(e,`warn`,``,!0)}error(...e){return this.forward(e,`error`,``)}deprecate(...e){return this.forward(e,`warn`,`WARNING DEPRECATED: `,!0)}forward(e,t,n,r){return r&&!this.debug?null:(e=e.map(e=>Vr(e)?e.replace(/[\r\n\x00-\x1F\x7F]/g,` `):e),Vr(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t||=this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},di=class{constructor(){this.observers={}}on(e,t){return e.split(` `).forEach(e=>{this.observers[e]||(this.observers[e]=new Map);let n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)}),this}off(e,t){if(this.observers[e]){if(!t){delete this.observers[e];return}this.observers[e].delete(t)}}once(e,t){let n=(...r)=>{t(...r),this.off(e,n)};return this.on(e,n),this}emit(e,...t){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([e,n])=>{for(let r=0;r<n;r++)e(...t)}),this.observers[`*`]&&Array.from(this.observers[`*`].entries()).forEach(([n,r])=>{for(let i=0;i<r;i++)n(e,...t)})}},fi=class extends di{constructor(e,t={ns:[`translation`],defaultNS:`translation`}){super(),this.data=e||{},this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.includes(e)||this.options.ns.push(e)}removeNamespaces(e){let t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n,r={}){let i=r.keySeparator===void 0?this.options.keySeparator:r.keySeparator,a=r.ignoreJSONStructure===void 0?this.options.ignoreJSONStructure:r.ignoreJSONStructure,o;e.includes(`.`)?o=e.split(`.`):(o=[e,t],n&&(Array.isArray(n)?o.push(...n):Vr(n)&&i?o.push(...n.split(i)):o.push(n)));let s=Zr(this.data,o);return!s&&!t&&!n&&e.includes(`.`)&&(e=o[0],t=o[1],n=o.slice(2).join(`.`)),s||!a||!Vr(n)?s:si(this.data?.[e]?.[t],n,i)}addResource(e,t,n,r,i={silent:!1}){let a=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,o=[e,t];n&&(o=o.concat(a?n.split(a):n)),e.includes(`.`)&&(o=e.split(`.`),r=t,t=o[1]),this.addNamespaces(t),Yr(this.data,o,r),i.silent||this.emit(`added`,e,t,n,r)}addResources(e,t,n,r={silent:!1}){for(let r in n)(Vr(n[r])||Array.isArray(n[r]))&&this.addResource(e,t,r,n[r],{silent:!0});r.silent||this.emit(`added`,e,t,n)}addResourceBundle(e,t,n,r,i,a={silent:!1,skipCopy:!1}){let o=[e,t];e.includes(`.`)&&(o=e.split(`.`),r=n,n=t,t=o[1]),this.addNamespaces(t);let s=Zr(this.data,o)||{};a.skipCopy||(n=JSON.parse(JSON.stringify(n))),r?$r(s,n,i):s={...s,...n},Yr(this.data,o,s),a.silent||this.emit(`added`,e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit(`removed`,e,t)}hasResourceBundle(e,t){return this.getResource(e,t)!==void 0}getResourceBundle(e,t){return t||=this.options.defaultNS,this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){let t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find(e=>t[e]&&Object.keys(t[e]).length>0)}toJSON(){return this.data}},pi={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(e=>{t=this.processors[e]?.process(t,n,r,i)??t}),t}},mi=Symbol(`i18next/PATH_KEY`);function hi(){let e=[],t=Object.create(null),n;return t.get=(r,i)=>(n?.revoke?.(),i===mi?e:(e.push(i),n=Proxy.revocable(r,t),n.proxy)),Proxy.revocable(Object.create(null),t).proxy}function gi(e,t){let{[mi]:n}=e(hi()),r=t?.keySeparator??`.`,i=t?.nsSeparator??`:`,a=t?.enableSelector===`strict`;if(n.length>1&&i){let e=t?.ns,o=a?Array.isArray(e)?e:e?[e]:null:Array.isArray(e)?e:null;if(o&&(a?o:o.length>1?o.slice(1):[]).includes(n[0]))return`${n[0]}${i}${n.slice(1).join(r)}`}return n.join(r)}var _i=e=>!Vr(e)&&typeof e!=`boolean`&&typeof e!=`number`,vi=class e extends di{constructor(e,t={}){super(),Wr([`resourceStore`,`languageUtils`,`pluralResolver`,`interpolator`,`backendConnector`,`i18nFormat`,`utils`],e,this),this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.logger=ui.create(`translator`),this.checkedLoadedFor={}}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){let n={...t};if(e==null)return!1;let r=this.resolve(e,n);if(r?.res===void 0)return!1;let i=_i(r.res);return!(n.returnObjects===!1&&i)}extractFromKey(e,t){let n=t.nsSeparator===void 0?this.options.nsSeparator:t.nsSeparator;n===void 0&&(n=`:`);let r=t.keySeparator===void 0?this.options.keySeparator:t.keySeparator,i=t.ns||this.options.defaultNS||[],a=n&&e.includes(n),o=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!oi(e,n,r);if(a&&!o){let t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:Vr(i)?[i]:i};let a=e.split(n);(n!==r||n===r&&this.options.ns.includes(a[0]))&&(i=a.shift()),e=a.join(r)}return{key:e,namespaces:Vr(i)?[i]:i}}translate(t,n,r){let i=typeof n==`object`?{...n}:n;if(typeof i!=`object`&&this.options.overloadTranslationOptionHandler&&(i=this.options.overloadTranslationOptionHandler(arguments)),typeof i==`object`&&(i={...i}),i||={},t==null)return``;typeof t==`function`&&(t=gi(t,{...this.options,...i})),Array.isArray(t)||(t=[String(t)]),t=t.map(e=>typeof e==`function`?gi(e,{...this.options,...i}):String(e));let a=i.returnDetails===void 0?this.options.returnDetails:i.returnDetails,o=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,{key:s,namespaces:c}=this.extractFromKey(t[t.length-1],i),l=c[c.length-1],u=i.nsSeparator===void 0?this.options.nsSeparator:i.nsSeparator;u===void 0&&(u=`:`);let d=i.lng||this.language,f=i.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d?.toLowerCase()===`cimode`)return f?a?{res:`${l}${u}${s}`,usedKey:s,exactUsedKey:s,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:`${l}${u}${s}`:a?{res:s,usedKey:s,exactUsedKey:s,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:s;let p=this.resolve(t,i),m=p?.res,h=p?.usedKey||s,g=p?.exactUsedKey||s,_=[`[object Number]`,`[object Function]`,`[object RegExp]`],v=i.joinArrays===void 0?this.options.joinArrays:i.joinArrays,y=!this.i18nFormat||this.i18nFormat.handleAsObject,b=i.count!==void 0&&!Vr(i.count),x=e.hasDefaultValue(i),S=b?this.pluralResolver.getSuffix(d,i.count,i):``,C=i.ordinal&&b?this.pluralResolver.getSuffix(d,i.count,{ordinal:!1}):``,w=b&&!i.ordinal&&i.count===0,T=w&&i[`defaultValue${this.options.pluralSeparator}zero`]||i[`defaultValue${S}`]||i[`defaultValue${C}`]||i.defaultValue,E=m;y&&!m&&x&&(E=T);let D=_i(E),O=Object.prototype.toString.apply(E);if(y&&E&&D&&!_.includes(O)&&!(Vr(v)&&Array.isArray(E))){if(!i.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn(`accessing an object - but returnObjects options is not enabled!`);let e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,E,{...i,ns:c}):`key '${s} (${this.language})' returned an object instead of string.`;return a?(p.res=e,p.usedParams=this.getUsedParamsDetails(i),p):e}if(o){let e=Array.isArray(E),t=e?[]:{},n=e?g:h;for(let e in E)if(Object.prototype.hasOwnProperty.call(E,e)){let r=`${n}${o}${e}`;x&&!m?t[e]=this.translate(r,{...i,defaultValue:_i(T)?T[e]:void 0,joinArrays:!1,ns:c}):t[e]=this.translate(r,{...i,joinArrays:!1,ns:c}),t[e]===r&&(t[e]=E[e])}m=t}}else if(y&&Vr(v)&&Array.isArray(m))m=m.join(v),m&&=this.extendTranslation(m,t,i,r);else{let e=!1,n=!1;!this.isValidLookup(m)&&x&&(e=!0,m=T),this.isValidLookup(m)||(n=!0,m=s);let a=(i.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&n?void 0:m,c=x&&T!==m&&this.options.updateMissing;if(n||e||c){if(this.logger.log(c?`updateKey`:`missingKey`,d,l,b&&!c?`${s}${this.pluralResolver.getSuffix(d,i.count,i)}`:s,c?T:m),o){let e=this.resolve(s,{...i,keySeparator:!1});e&&e.res&&this.logger.warn(`Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.`)}let e=[],t=this.languageUtils.getFallbackCodes(this.options.fallbackLng,i.lng||this.language);if(this.options.saveMissingTo===`fallback`&&t&&t[0])for(let n=0;n<t.length;n++)e.push(t[n]);else this.options.saveMissingTo===`all`?e=this.languageUtils.toResolveHierarchy(i.lng||this.language):e.push(i.lng||this.language);let n=(e,t,n)=>{let r=x&&n!==m?n:a;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,r,c,i):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(e,l,t,r,c,i),this.emit(`missingKey`,e,l,t,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?e.forEach(e=>{let t=this.pluralResolver.getSuffixes(e,i);w&&i[`defaultValue${this.options.pluralSeparator}zero`]&&!t.includes(`${this.options.pluralSeparator}zero`)&&t.push(`${this.options.pluralSeparator}zero`),t.forEach(t=>{n([e],s+t,i[`defaultValue${t}`]||T)})}):n(e,s,T))}m=this.extendTranslation(m,t,i,p,r),n&&m===s&&this.options.appendNamespaceToMissingKey&&(m=`${l}${u}${s}`),(n||e)&&this.options.parseMissingKeyHandler&&(m=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${u}${s}`:s,e?m:void 0,i))}return a?(p.res=m,p.usedParams=this.getUsedParamsDetails(i),p):m}extendTranslation(e,t,n,r,i){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});let a=Vr(e)&&(n?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:n.interpolation.skipOnVariables),o;if(a){let t=e.match(this.interpolator.nestingRegexp);o=t&&t.length}let s=n.replace&&!Vr(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(s={...this.options.interpolation.defaultVariables,...s}),e=this.interpolator.interpolate(e,s,n.lng||this.language||r.usedLng,n),a){let t=e.match(this.interpolator.nestingRegexp),r=t&&t.length;o<r&&(n.nest=!1)}!n.lng&&r&&r.res&&(n.lng=this.language||r.usedLng),n.nest!==!1&&(e=this.interpolator.nest(e,(...e)=>i?.[0]===e[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${e[0]} in key: ${t[0]}`),null):this.translate(...e,t),n)),n.interpolation&&this.interpolator.reset()}let a=n.postProcess||this.options.postProcess,o=Vr(a)?[a]:a;return e!=null&&o?.length&&n.applyPostProcessor!==!1&&(e=pi.handle(o,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,t={}){let n,r,i,a,o;return Vr(e)&&(e=[e]),Array.isArray(e)&&(e=e.map(e=>typeof e==`function`?gi(e,{...this.options,...t}):e)),e.forEach(e=>{if(this.isValidLookup(n))return;let s=this.extractFromKey(e,t),c=s.key;r=c;let l=s.namespaces;this.options.fallbackNS&&(l=l.concat(this.options.fallbackNS));let u=t.count!==void 0&&!Vr(t.count),d=u&&!t.ordinal&&t.count===0,f=t.context!==void 0&&(Vr(t.context)||typeof t.context==`number`)&&t.context!==``,p=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);l.forEach(e=>{this.isValidLookup(n)||(o=e,!this.checkedLoadedFor[`${p[0]}-${e}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(o)&&(this.checkedLoadedFor[`${p[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${p.join(`, `)}" won't get resolved as namespace "${o}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`)),p.forEach(r=>{if(this.isValidLookup(n))return;a=r;let o=[c];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(o,c,r,e,t);else{let e;u&&(e=this.pluralResolver.getSuffix(r,t.count,t));let n=`${this.options.pluralSeparator}zero`,i=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(t.ordinal&&e.startsWith(i)&&o.push(c+e.replace(i,this.options.pluralSeparator)),o.push(c+e),d&&o.push(c+n)),f){let r=`${c}${this.options.contextSeparator||`_`}${t.context}`;o.push(r),u&&(t.ordinal&&e.startsWith(i)&&o.push(r+e.replace(i,this.options.pluralSeparator)),o.push(r+e),d&&o.push(r+n))}}let s;for(;s=o.pop();)this.isValidLookup(n)||(i=s,n=this.getResource(r,e,s,t))}))})}),{res:n,usedKey:r,exactUsedKey:i,usedLng:a,usedNS:o}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e===``)}getResource(e,t,n,r={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}getUsedParamsDetails(e={}){let t=[`defaultValue`,`ordinal`,`context`,`replace`,`lng`,`lngs`,`fallbackLng`,`ns`,`keySeparator`,`nsSeparator`,`returnObjects`,`returnDetails`,`joinArrays`,`postProcess`,`interpolation`],n=e.replace&&!Vr(e.replace),r=n?e.replace:e;if(n&&e.count!==void 0&&(r.count=e.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!n){r={...r};for(let e of t)delete r[e]}return r}static hasDefaultValue(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t.startsWith(`defaultValue`)&&e[t]!==void 0)return!0;return!1}},yi=class{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ui.create(`languageUtils`)}getScriptPartFromCode(e){if(e=ci(e),!e||!e.includes(`-`))return null;let t=e.split(`-`);return t.length===2||(t.pop(),t[t.length-1].toLowerCase()===`x`)?null:this.formatLanguageCode(t.join(`-`))}getLanguagePartFromCode(e){if(e=ci(e),!e||!e.includes(`-`))return e;let t=e.split(`-`);return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(Vr(e)&&e.includes(`-`)){let t;try{t=Intl.getCanonicalLocales(e)[0]}catch{}return t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load===`languageOnly`||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.includes(e)}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach(e=>{if(t)return;let n=this.formatLanguageCode(e);(!this.options.supportedLngs||this.isSupportedCode(n))&&(t=n)}),!t&&this.options.supportedLngs&&e.forEach(e=>{if(t)return;let n=this.getScriptPartFromCode(e);if(this.isSupportedCode(n))return t=n;let r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find(e=>e===r?!0:!e.includes(`-`)&&!r.includes(`-`)?!1:!!(e.includes(`-`)&&!r.includes(`-`)&&e.slice(0,e.indexOf(`-`))===r||e.startsWith(r)&&r.length>1))}),t||=this.getFallbackCodes(this.options.fallbackLng)[0],t}getFallbackCodes(e,t){if(!e)return[];if(typeof e==`function`&&(e=e(t)),Vr(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||=e[this.getScriptPartFromCode(t)],n||=e[this.formatLanguageCode(t)],n||=e[this.getLanguagePartFromCode(t)],n||=e.default,n||[]}toResolveHierarchy(e,t){let n=this.getFallbackCodes((t===!1?[]:t)||this.options.fallbackLng||[],e),r=[],i=e=>{e&&(this.isSupportedCode(e)?r.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return Vr(e)&&(e.includes(`-`)||e.includes(`_`))?(this.options.load!==`languageOnly`&&i(this.formatLanguageCode(e)),this.options.load!==`languageOnly`&&this.options.load!==`currentOnly`&&i(this.getScriptPartFromCode(e)),this.options.load!==`currentOnly`&&i(this.getLanguagePartFromCode(e))):Vr(e)&&i(this.formatLanguageCode(e)),n.forEach(e=>{r.includes(e)||i(this.formatLanguageCode(e))}),r}},bi={zero:0,one:1,two:2,few:3,many:4,other:5},xi={select:e=>e===1?`one`:`other`,resolvedOptions:()=>({pluralCategories:[`one`,`other`]})},Si=class{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=ui.create(`pluralResolver`),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){let n=ci(e===`dev`?`en`:e),r=t.ordinal?`ordinal`:`cardinal`,i=JSON.stringify({cleanedCode:n,type:r});if(i in this.pluralRulesCache)return this.pluralRulesCache[i];let a;try{a=new Intl.PluralRules(n,{type:r})}catch{if(typeof Intl>`u`)return this.logger.error(`No Intl support, please use an Intl polyfill!`),xi;if(!e.match(/-|_/))return xi;let n=this.languageUtils.getLanguagePartFromCode(e);a=this.getRule(n,t)}return this.pluralRulesCache[i]=a,a}needsPlural(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,t,n={}){return this.getSuffixes(e,n).map(e=>`${t}${e}`)}getSuffixes(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?n.resolvedOptions().pluralCategories.sort((e,t)=>bi[e]-bi[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:``}${e}`):[]}getSuffix(e,t,n={}){let r=this.getRule(e,n);return r?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:``}${r.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix(`dev`,t,n))}},Ci=(e,t,n,r=`.`,i=!0)=>{let a=Qr(e,t,n);return!a&&i&&Vr(n)&&(a=si(e,n,r),a===void 0&&(a=si(t,n,r))),a},wi=e=>e.replace(/\$/g,`$$$$`),Ti=class{constructor(e={}){this.logger=ui.create(`interpolator`),this.options=e,this.format=e?.interpolation?.format||(e=>e),this.init(e)}init(e={}){e.interpolation||={escapeValue:!0};let{escape:t,escapeValue:n,useRawValueToEscape:r,prefix:i,prefixEscaped:a,suffix:o,suffixEscaped:s,formatSeparator:c,unescapeSuffix:l,unescapePrefix:u,nestingPrefix:d,nestingPrefixEscaped:f,nestingSuffix:p,nestingSuffixEscaped:m,nestingOptionsSeparator:h,maxReplaces:g,alwaysFormat:_}=e.interpolation;this.escape=t===void 0?ni:t,this.escapeValue=n===void 0?!0:n,this.useRawValueToEscape=r===void 0?!1:r,this.prefix=i?ei(i):a||`{{`,this.suffix=o?ei(o):s||`}}`,this.formatSeparator=c||`,`,this.unescapePrefix=l?``:u?ei(u):`-`,this.unescapeSuffix=this.unescapePrefix?``:l?ei(l):``,this.nestingPrefix=d?ei(d):f||ei(`$t(`),this.nestingSuffix=p?ei(p):m||ei(`)`),this.nestingOptionsSeparator=h||`,`,this.maxReplaces=g||1e3,this.alwaysFormat=_===void 0?!1:_,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let e=(e,t)=>e?.source===t?(e.lastIndex=0,e):new RegExp(t,`g`);this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,t,n,r){let i,a,o,s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=e=>{if(!e.includes(this.formatSeparator)){let i=Ci(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(i,void 0,n,{...r,...t,interpolationkey:e}):i}let i=e.split(this.formatSeparator),a=i.shift().trim(),o=i.join(this.formatSeparator).trim();return this.format(Ci(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...r,...t,interpolationkey:a})};this.resetRegExp(),!this.escapeValue&&typeof e==`string`&&/\$t\([^)]*\{[^}]*\{\{/.test(e)&&this.logger.warn(`nesting options string contains interpolated variables with escapeValue: false — if any of those values are attacker-controlled they can inject additional nesting options (e.g. redirect lng/ns). Sanitise untrusted input before passing it to t(), or keep escapeValue: true.`);let l=r?.missingInterpolationHandler||this.options.missingInterpolationHandler,u=r?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:r.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>wi(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?wi(this.escape(e)):wi(e)}].forEach(t=>{for(o=0;i=t.regex.exec(e);){let n=i[1].trim();if(a=c(n),a===void 0)if(typeof l==`function`){let t=l(e,i,r);a=Vr(t)?t:``}else if(r&&Object.prototype.hasOwnProperty.call(r,n))a=``;else if(u){a=i[0];continue}else this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),a=``;else !Vr(a)&&!this.useRawValueToEscape&&(a=Ur(a));let s=t.safeValue(a);if(e=e.replace(i[0],s),u?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=i[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}}),e}nest(e,t,n={}){let r,i,a,o=(e,t)=>{let n=this.nestingOptionsSeparator;if(!e.includes(n))return e;let r=e.split(RegExp(`${ei(n)}[ ]*{`)),i=`{${r[1]}`;e=r[0],i=this.interpolate(i,a);let o=i.match(/'/g),s=i.match(/"/g);((o?.length??0)%2==0&&!s||(s?.length??0)%2!=0)&&(i=i.replace(/'/g,`"`));try{a=JSON.parse(i),t&&(a={...t,...a})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${i}`}return a.defaultValue&&a.defaultValue.includes(this.prefix)&&delete a.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let s=[];a={...n},a=a.replace&&!Vr(a.replace)?a.replace:a,a.applyPostProcessor=!1,delete a.defaultValue;let c=/{.*}/.test(r[1])?r[1].lastIndexOf(`}`)+1:r[1].indexOf(this.formatSeparator);if(c!==-1&&(s=r[1].slice(c).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),r[1]=r[1].slice(0,c)),i=t(o.call(this,r[1].trim(),a),a),i&&r[0]===e&&!Vr(i))return i;Vr(i)||(i=Ur(i)),i||=(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),``),s.length&&(i=s.reduce((e,t)=>this.format(e,t,n.lng,{...n,interpolationkey:r[1].trim()}),i.trim())),e=e.replace(r[0],i),this.regexp.lastIndex=0}return e}},Ei=e=>{let t=e.toLowerCase().trim(),n={};if(e.includes(`(`)){let r=e.split(`(`);t=r[0].toLowerCase().trim();let i=r[1].slice(0,-1);t===`currency`&&!i.includes(`:`)?n.currency||=i.trim():t===`relativetime`&&!i.includes(`:`)?n.range||=i.trim():i.split(`;`).forEach(e=>{if(e){let[t,...r]=e.split(`:`),i=r.join(`:`).trim().replace(/^'+|'+$/g,``),a=t.trim();n[a]||(n[a]=i),i===`false`&&(n[a]=!1),i===`true`&&(n[a]=!0),isNaN(i)||(n[a]=parseInt(i,10))}})}return{formatName:t,formatOptions:n}},Di=e=>{let t={};return(n,r,i)=>{let a=i;i&&i.interpolationkey&&i.formatParams&&i.formatParams[i.interpolationkey]&&i[i.interpolationkey]&&(a={...a,[i.interpolationkey]:void 0});let o=r+JSON.stringify(a),s=t[o];return s||(s=e(ci(r),i),t[o]=s),s(n)}},Oi=e=>(t,n,r)=>e(ci(n),r)(t),ki=class{constructor(e={}){this.logger=ui.create(`formatter`),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||`,`;let n=t.cacheInBuiltFormats?Di:Oi;this.formats={number:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)}),currency:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t,style:`currency`});return e=>n.format(e)}),datetime:n((e,t)=>{let n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)}),relativetime:n((e,t)=>{let n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||`day`)}),list:n((e,t)=>{let n=new Intl.ListFormat(e,{...t});return e=>n.format(e)})}}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Di(t)}format(e,t,n,r={}){if(!t||e==null)return e;let i=t.split(this.formatSeparator);if(i.length>1&&i[0].indexOf(`(`)>1&&!i[0].includes(`)`)&&i.find(e=>e.includes(`)`))){let e=i.findIndex(e=>e.includes(`)`));i[0]=[i[0],...i.splice(1,e)].join(this.formatSeparator)}return i.reduce((e,t)=>{let{formatName:i,formatOptions:a}=Ei(t);if(this.formats[i]){let t=e;try{let o=r?.formatParams?.[r.interpolationkey]||{},s=o.locale||o.lng||r.locale||r.lng||n;t=this.formats[i](e,s,{...a,...r,...o})}catch(e){this.logger.warn(e)}return t}else this.logger.warn(`there was no format function for ${i}`);return e},e)}},Ai=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)},ji=class extends di{constructor(e,t,n,r={}){super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=r,this.logger=ui.create(`backendConnector`),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(n,r.backend,r)}queueLoad(e,t,n,r){let i={},a={},o={},s={};return e.forEach(e=>{let r=!0;t.forEach(t=>{let o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(this.state[o]===1?a[o]===void 0&&(a[o]=!0):(this.state[o]=1,r=!1,a[o]===void 0&&(a[o]=!0),i[o]===void 0&&(i[o]=!0),s[t]===void 0&&(s[t]=!0)))}),r||(o[e]=!0)}),(Object.keys(i).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(i),pending:Object.keys(a),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){let r=e.split(`|`),i=r[0],a=r[1];t&&this.emit(`failedLoading`,i,a,t),!t&&n&&this.store.addResourceBundle(i,a,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);let o={};this.queue.forEach(n=>{Xr(n.loaded,[i],a),Ai(n,e),t&&n.errors.push(t),n.pendingCount===0&&!n.done&&(Object.keys(n.loaded).forEach(e=>{o[e]||(o[e]={});let t=n.loaded[e];t.length&&t.forEach(t=>{o[e][t]===void 0&&(o[e][t]=!0)})}),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())}),this.emit(`loaded`,o),this.queue=this.queue.filter(e=>!e.done)}read(e,t,n,r=0,i=this.retryTimeout,a){if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:t,fcName:n,tried:r,wait:i,callback:a});return}this.readingCalls++;let o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){let e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}if(o&&s&&r<this.maxRetries){setTimeout(()=>{this.read(e,t,n,r+1,i*2,a)},i);return}a(o,s)},s=this.backend[n].bind(this.backend);if(s.length===2){try{let n=s(e,t);n&&typeof n.then==`function`?n.then(e=>o(null,e)).catch(o):o(null,n)}catch(e){o(e)}return}return s(e,t,o)}prepareLoading(e,t,n={},r){if(!this.backend)return this.logger.warn(`No backend was added via i18next.use. Will not load resources.`),r&&r();Vr(e)&&(e=this.languageUtils.toResolveHierarchy(e)),Vr(t)&&(t=[t]);let i=this.queueLoad(e,t,n,r);if(!i.toLoad.length)return i.pending.length||r(),null;i.toLoad.forEach(e=>{this.loadOne(e)})}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e,t=``){let n=e.split(`|`),r=n[0],i=n[1];this.read(r,i,`read`,void 0,void 0,(n,a)=>{n&&this.logger.warn(`${t}loading namespace ${i} for language ${r} failed`,n),!n&&a&&this.logger.log(`${t}loaded namespace ${i} for language ${r}`,a),this.loaded(e,n,a)})}saveMissing(e,t,n,r,i,a={},o=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(t)){this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`);return}if(!(n==null||n===``)){if(this.backend?.create){let s={...a,isUpdate:i},c=this.backend.create.bind(this.backend);if(c.length<6)try{let i;i=c.length===5?c(e,t,n,r,s):c(e,t,n,r),i&&typeof i.then==`function`?i.then(e=>o(null,e)).catch(o):o(null,i)}catch(e){o(e)}else c(e,t,n,r,o,s)}!e||!e[0]||this.store.addResource(e[0],t,n,r)}}},Mi=()=>({debug:!1,initAsync:!0,ns:[`translation`],defaultNS:[`translation`],fallbackLng:[`dev`],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:`all`,preload:!1,keySeparator:`.`,nsSeparator:`:`,pluralSeparator:`_`,contextSeparator:`_`,enableSelector:!1,partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:`fallback`,saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]==`object`&&(t=e[1]),Vr(e[1])&&(t.defaultValue=e[1]),Vr(e[2])&&(t.tDescription=e[2]),typeof e[2]==`object`||typeof e[3]==`object`){let n=e[3]||e[2];Object.keys(n).forEach(e=>{t[e]=n[e]})}return t},interpolation:{escapeValue:!0,prefix:`{{`,suffix:`}}`,formatSeparator:`,`,unescapePrefix:`-`,nestingPrefix:`$t(`,nestingSuffix:`)`,nestingOptionsSeparator:`,`,maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),Ni=e=>(Vr(e.ns)&&(e.ns=[e.ns]),Vr(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),Vr(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&!e.supportedLngs.includes(`cimode`)&&(e.supportedLngs=e.supportedLngs.concat([`cimode`])),e),Pi=()=>{},Fi=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(t=>{typeof e[t]==`function`&&(e[t]=e[t].bind(e))})},Ii=class e extends di{constructor(e={},t){if(super(),this.options=Ni(e),this.services={},this.logger=ui,this.modules={external:[]},Fi(this),t&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,t),this;setTimeout(()=>{this.init(e,t)},0)}}init(e={},t){this.isInitializing=!0,typeof e==`function`&&(t=e,e={}),e.defaultNS==null&&e.ns&&(Vr(e.ns)?e.defaultNS=e.ns:e.ns.includes(`translation`)||(e.defaultNS=e.ns[0]));let n=Mi();this.options={...n,...this.options,...Ni(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator),typeof this.options.overloadTranslationOptionHandler!=`function`&&(this.options.overloadTranslationOptionHandler=n.overloadTranslationOptionHandler);let r=e=>e?typeof e==`function`?new e:e:null;if(!this.options.isClone){this.modules.logger?ui.init(r(this.modules.logger),this.options):ui.init(null,this.options);let e;e=this.modules.formatter?this.modules.formatter:ki;let t=new yi(this.options);this.store=new fi(this.options.resources,this.options);let n=this.services;n.logger=ui,n.resourceStore=this.store,n.languageUtils=t,n.pluralResolver=new Si(t,{prepend:this.options.pluralSeparator}),e&&(n.formatter=r(e),n.formatter.init&&n.formatter.init(n,this.options),this.options.interpolation.format=n.formatter.format.bind(n.formatter)),n.interpolator=new Ti(this.options),n.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},n.backendConnector=new ji(r(this.modules.backend),n.resourceStore,n,this.options),n.backendConnector.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(n.languageDetector=r(this.modules.languageDetector),n.languageDetector.init&&n.languageDetector.init(n,this.options.detection,this.options)),this.modules.i18nFormat&&(n.i18nFormat=r(this.modules.i18nFormat),n.i18nFormat.init&&n.i18nFormat.init(this)),this.translator=new vi(this.services,this.options),this.translator.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.external.forEach(e=>{e.init&&e.init(this)})}if(this.format=this.options.interpolation.format,t||=Pi,this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&e[0]!==`dev`&&(this.options.lng=e[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn(`init: no languageDetector is used and no lng is defined`),[`getResource`,`hasResourceBundle`,`getResourceBundle`,`getDataByLanguage`].forEach(e=>{this[e]=(...t)=>this.store[e](...t)}),[`addResource`,`addResources`,`addResourceBundle`,`removeResourceBundle`].forEach(e=>{this[e]=(...t)=>(this.store[e](...t),this)});let i=Hr(),a=()=>{let e=(e,n)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn(`init: i18next is already initialized. You should call init just once!`),this.isInitialized=!0,this.options.isClone||this.logger.log(`initialized`,this.options),this.emit(`initialized`,this.options),i.resolve(n),t(e,n)};if((this.languages||this.isLanguageChangingTo)&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initAsync?a():setTimeout(a,0),i}loadResources(e,t=Pi){let n=t,r=Vr(e)?e:this.language;if(typeof e==`function`&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(r?.toLowerCase()===`cimode`&&(!this.options.preload||this.options.preload.length===0))return n();let e=[],t=t=>{t&&t!==`cimode`&&this.services.languageUtils.toResolveHierarchy(t).forEach(t=>{t!==`cimode`&&(e.includes(t)||e.push(t))})};r?t(r):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(e=>t(e)),this.options.preload?.forEach?.(e=>t(e)),this.services.backendConnector.load(e,this.options.ns,e=>{!e&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(e)})}else n(null)}reloadResources(e,t,n){let r=Hr();return typeof e==`function`&&(n=e,e=void 0),typeof t==`function`&&(n=t,t=void 0),e||=this.languages,t||=this.options.ns,n||=Pi,this.services.backendConnector.reload(e,t,e=>{r.resolve(),n(e)}),r}use(e){if(!e)throw Error(`You are passing an undefined module! Please check the object you are passing to i18next.use()`);if(!e.type)throw Error(`You are passing a wrong module! Please check the object you are passing to i18next.use()`);return e.type===`backend`&&(this.modules.backend=e),(e.type===`logger`||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type===`languageDetector`&&(this.modules.languageDetector=e),e.type===`i18nFormat`&&(this.modules.i18nFormat=e),e.type===`postProcessor`&&pi.addPostProcessor(e),e.type===`formatter`&&(this.modules.formatter=e),e.type===`3rdParty`&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&![`cimode`,`dev`].includes(e)){for(let e=0;e<this.languages.length;e++){let t=this.languages[e];if(![`cimode`,`dev`].includes(t)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}!this.resolvedLanguage&&!this.languages.includes(e)&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,t){this.isLanguageChangingTo=e;let n=Hr();this.emit(`languageChanging`,e);let r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},i=(i,a)=>{a?this.isLanguageChangingTo===e&&(r(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit(`languageChanged`,a),this.logger.log(`languageChanged`,a)):this.isLanguageChangingTo=void 0,n.resolve((...e)=>this.t(...e)),t&&t(i,(...e)=>this.t(...e))},a=t=>{!e&&!t&&this.services.languageDetector&&(t=[]);let n=Vr(t)?t:t&&t[0],a=this.store.hasLanguageSomeTranslations(n)?n:this.services.languageUtils.getBestMatchFromCodes(Vr(t)?[t]:t);a&&(this.language||r(a),this.translator.language||this.translator.changeLanguage(a),this.services.languageDetector?.cacheUserLanguage?.(a)),this.loadResources(a,e=>{i(e,a)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e),n}getFixedT(e,t,n,r){let i=r?.scopeNs,a=(e,t,...r)=>{let o;o=typeof t==`object`?{...t}:this.options.overloadTranslationOptionHandler([e,t].concat(r)),o.lng=o.lng||a.lng,o.lngs=o.lngs||a.lngs;let s=o.ns!==void 0&&o.ns!==null;o.ns=o.ns||a.ns,o.keyPrefix!==``&&(o.keyPrefix=o.keyPrefix||n||a.keyPrefix);let c={...this.options,...o};Array.isArray(i)&&!s&&(c.ns=i),typeof o.keyPrefix==`function`&&(o.keyPrefix=gi(o.keyPrefix,c));let l=this.options.keySeparator||`.`,u;return o.keyPrefix&&Array.isArray(e)?u=e.map(e=>(typeof e==`function`&&(e=gi(e,c)),`${o.keyPrefix}${l}${e}`)):(typeof e==`function`&&(e=gi(e,c)),u=o.keyPrefix?`${o.keyPrefix}${l}${e}`:e),this.t(u,o)};return Vr(e)?a.lng=e:a.lngs=e,a.ns=t,a.keyPrefix=n,a}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,t={}){if(!this.isInitialized)return this.logger.warn(`hasLoadedNamespace: i18next was not initialized`,this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn(`hasLoadedNamespace: i18n.languages were undefined or empty`,this.languages),!1;let n=t.lng||this.resolvedLanguage||this.languages[0],r=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(n.toLowerCase()===`cimode`)return!0;let a=(e,t)=>{let n=this.services.backendConnector.state[`${e}|${t}`];return n===-1||n===0||n===2};if(t.precheck){let e=t.precheck(this,a);if(e!==void 0)return e}return!!(this.hasResourceBundle(n,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||a(n,e)&&(!r||a(i,e)))}loadNamespaces(e,t){let n=Hr();return this.options.ns?(Vr(e)&&(e=[e]),e.forEach(e=>{this.options.ns.includes(e)||this.options.ns.push(e)}),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){let n=Hr();Vr(e)&&(e=[e]);let r=this.options.preload||[],i=e.filter(e=>!r.includes(e)&&this.services.languageUtils.isSupportedCode(e));return i.length?(this.options.preload=r.concat(i),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}dir(e){if(e||=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language),!e)return`rtl`;try{let t=new Intl.Locale(e);if(t&&t.getTextInfo){let e=t.getTextInfo();if(e&&e.direction)return e.direction}}catch{}let t=`ar.shu.sqr.ssh.xaa.yhd.yud.aao.abh.abv.acm.acq.acw.acx.acy.adf.ads.aeb.aec.afb.ajp.apc.apd.arb.arq.ars.ary.arz.auz.avl.ayh.ayl.ayn.ayp.bbz.pga.he.iw.ps.pbt.pbu.pst.prp.prd.ug.ur.ydd.yds.yih.ji.yi.hbo.men.xmn.fa.jpr.peo.pes.prs.dv.sam.ckb`.split(`.`),n=this.services?.languageUtils||new yi(Mi());return e.toLowerCase().indexOf(`-latn`)>1?`ltr`:t.includes(n.getLanguagePartFromCode(e))||e.toLowerCase().indexOf(`-arab`)>1?`rtl`:`ltr`}static createInstance(t={},n){let r=new e(t,n);return r.createInstance=e.createInstance,r}cloneInstance(t={},n=Pi){let r=t.forkResourceStore;r&&delete t.forkResourceStore;let i={...this.options,...t,isClone:!0},a=new e(i);if((t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),[`store`,`services`,`language`].forEach(e=>{a[e]=this[e]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},r&&(a.store=new fi(Object.keys(this.store.data).reduce((e,t)=>(e[t]={...this.store.data[t]},e[t]=Object.keys(e[t]).reduce((n,r)=>(n[r]={...e[t][r]},n),e[t]),e),{}),i),a.services.resourceStore=a.store),t.interpolation){let e={...Mi().interpolation,...this.options.interpolation,...t.interpolation},n={...i,interpolation:e};a.services.interpolator=new Ti(n)}return a.translator=new vi(a.services,i),a.translator.on(`*`,(e,...t)=>{a.emit(e,...t)}),a.init(i,n),a.translator.options=i,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}.createInstance();Ii.createInstance,Ii.dir,Ii.init,Ii.loadResources,Ii.reloadResources,Ii.use,Ii.changeLanguage,Ii.getFixedT,Ii.t,Ii.exists,Ii.setDefaultNamespace,Ii.hasLoadedNamespace,Ii.loadNamespaces,Ii.loadLanguages;var Li={common:{loading:`Завантаження…`,saving:`Збереження…`,error:`Помилка`,back:`Назад`,yes:`Так`,no:`Ні`,notFound:`Тип не знайдено`,daysUnit:`дн.`,peopleUnit:`ос.`,empty:`Немає записів`},actions:{new:`Новий`,addFirst:`Додати перший запис`,edit:`Редагувати`,editAll:`Редагувати все`,save:`Зберегти`,create:`Створити`,cancel:`Скасувати`,confirmDelete:`Видалити цей запис?`,delete:`Видалити`,upload:`Завантажити`,replace:`Замінити`,confirmDeletePhoto:`Видалити фото?`,add:`Додати`,actionSuccess:`Готово`,actionError:`Помилка`,actionNotFound:`Дію не зареєстровано`,notice:`Повідомлення`},save:{saving:`Збереження…`,done:`Збережено`,failed:`Не вдалося зберегти`},upload:{tooLarge:`Файл завеликий (макс. 25 МБ)`,failed:`Не вдалося завантажити`},geo:{searchPlaceholder:`Пошук адреси…`,search:`Знайти`,myLocation:`Моє місцеположення`,label:`Підпис`,pick:`Обрати місце`},embed:{open:`Відкрити`,pastePlaceholder:`Вставте URL…`,resolveFailed:`Не вдалося завантажити прев'ю`},reminder:{today:`сьогодні`,inDays:`через {{days}} дн`,overdue:`прострочено {{days}} дн`},nav:{selectType:`Оберіть тип у меню`,plugins:`Плагіни`,home:`Головна`,search:`Пошук`,browse:`Огляд`,settings:`Налаштування`},dashboard:{title:`Головна`,empty:`Немає активних модулів`},settings:{title:`Налаштування`,appearance:`Вигляд`,theme:`Тема`,language:`Мова`,systemTitle:`Система`,systemDescription:`Налаштування всієї системи.`,personalTitle:`Особисте`,usersTitle:`Користувачі`,usersDescription:`Керування всіма акаунтами інстансу.`},theme:{label:`Тема`,auto:`Авто`,light:`Світла`,dark:`Темна`,eink:`E-ink`},group:{title:`Групування`,field:`Поле`,all:`Всі записи`,noValue:`Без значення`,yes:`Так`,no:`Ні`},plugins:{title:`Плагіни`,description:`Увімкнення, вимкнення та видалення даних плагінів.`,loading:`Завантаження…`,restartBannerBefore:`Зміни застосуються після `,restartBannerBold:`рестарту сервера`,restartBannerAfter:` (набір активних плагінів читається на старті).`,confirmPurge:`Видалити ВСІ дані плагіна «{{id}}»? Таблиці буде дропнуто безповоротно.`,genericError:`Помилка: {{code}}`,purgeButton:`Видалити дані`,purgeTitle:`Видалити всі дані плагіна (безповоротно)`,switchDisable:`Вимкнути`,switchEnable:`Увімкнути`,blockedByDependents:`Не можна вимкнути: від нього залежать увімкнені плагіни — {{list}}`,metaDepends:`залежить:`,metaVaults:`сховища:`,metaExtends:`розширення:`,updateButton:`Оновити`,updateTitle:`Оновити з v{{from}} до v{{to}}`,confirmUpdate:`Оновити плагін «{{id}}» з v{{from}} до v{{to}}? Сервер перезапуститься одразу після встановлення — переконайтесь, що він працює під process-manager'ом (systemd/pm2/docker), який автоматично його підніме. Рекомендовано зробити резервну копію бази даних заздалегідь.`,updateError:`Оновлення не вдалося`,errors:{core_required:`Плагін core вимкнути не можна.`,has_dependents:`Від нього залежать увімкнені: {{list}}.`,missing_deps:`Спершу увімкни залежності: {{list}}.`,unknown_plugin:`Невідомий плагін.`}},auth:{loginTitle:`Вхід`,setupTitle:`Створити першого адміністратора`,login:`Логін`,password:`Пароль`,displayName:`Ім'я`,signIn:`Увійти`,createAccount:`Створити акаунт`,invalidCredentials:`Невірний логін або пароль.`,genericError:`Щось пішло не так.`,accountTitle:`Мій акаунт`,fieldDisplayName:`Ім'я`,fieldLogin:`Логін`,fieldPasswordOptional:`Новий пароль (лишіть порожнім, щоб не міняти)`,tokensTitle:`API-токени`,tokenNamePlaceholder:`Назва токена (напр. "agent")`,tokenCreate:`Створити токен`,tokenCreatedOnce:`Скопіюйте токен зараз — більше він не покажеться:`,tokenRevoke:`Відкликати`,tokenConfirmRevoke:`Відкликати цей токен? Усе, що його використовує, перестане працювати.`,usersTitle:`Користувачі`,addUser:`Додати користувача`,roleAdmin:`Адмін`,roleMember:`Учасник`,fieldRole:`Роль`,fieldDisabled:`Вимкнено`,userCreateTitle:`Новий користувач`,lastAdminError:`Не можна прибрати останнього адміна.`},form:{serverRejected:`Сервер відхилив:`,createTitle:`Новий — {{label}}`,editTitle:`Редагувати — {{label}}`,mdPlaceholder:`Текст у форматі Markdown…`,photo:`+ Фото`,properties:`Властивості`,keyPlaceholder:`ключ`,valuePlaceholderShort:`значення`,addProperty:`Властивість`,days:`дн`,hours:`год`,minutes:`хв`,seconds:`с`,addTag:`Додати тег…`,addRow:`+ Додати рядок`,search:`Пошук…`,loading:`Завантаження…`,loadError:`Помилка завантаження`,noRecords:`Немає записів`,addRecord:`+ Додати…`,addItem:`+ Додати пункт`},list:{empty:`Поки порожньо`,searchPlaceholder:`Пошук…`,sortBy:`Сортувати за`,sortNone:`Без сортування`,asc:`За зростанням`,desc:`За спаданням`,peopleCount_one:`{{count}} ос.`,peopleCount_few:`{{count}} ос.`,peopleCount_many:`{{count}} ос.`,peopleCount_other:`{{count}} ос.`,pairsCount_one:`{{count}} пара`,pairsCount_few:`{{count}} пари`,pairsCount_many:`{{count}} пар`,pairsCount_other:`{{count}} пар`},search:{title:`Глобальний пошук`,placeholder:`Пошук модулів і записів…`,allModules:`Усі модулі`,results:`Результати`,noResults:`Нічого не знайдено`},record:{count_one:`{{count}} запис`,count_few:`{{count}} записи`,count_many:`{{count}} записів`,count_other:`{{count}} записів`,hide:`Сховати`,show:`Показати`},extend:{shownWhen:`Показується коли:`},weekdaysShort:[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Нд`],lang:{uk:`Українська`,ru:`Русский`,en:`English`},validation:{required:`обов'язкове поле`,invalid_type:`неприпустимий тип значення`,min_length:`мінімум {{min}} симв.`,max_length:`максимум {{max}} симв.`,pattern:`неприпустимий формат`,email:`некоректна email-адреса`,min:`не менше {{min}}`,max:`не більше {{max}}`,int:`має бути цілим`,date_format:`формат YYYY-MM-DD`,date_min:`не раніше {{min}}`,date_max:`не пізніше {{max}}`,enum:`оберіть зі списку`,json:`невалідний JSON`,structure:`невалідна структура`,int_list:`невалідні посилання на записи`,kv_single:`дозволено лише одну пару`,links_structure:`невалідна структура підключень`,time_format:`формат HH:MM:SS`,datetime_format:`формат YYYY-MM-DDTHH:MM`,tags_list:`очікується масив тегів`,slotted_length:`невірна кількість елементів`,check_structure:`невалідна структура відмітки`,measured_structure:`очікується {value, unit}`,measured_unit:`невідома одиниця`,money_structure:`некоректна сума`,geo_structure:`очікується {lat, lng}`,money_currency:`невідома валюта`,color_format:`формат #RRGGBB`,row_structure:`невалідна структура рядків`,row_duplicate:`значення «{{key}}» повторюється між рядками`,array:`очікується масив`,array_item:`невалідне значення у масиві`,ip_structure:`невалідна IP-адреса`,cidr_structure:`невалідний CIDR`,per_weekday:`масив із 7 чисел`,period_order:`початок не може бути після кінця`,range_structure:`очікується {from, to}`,last_admin:`Не можна прибрати останнього адміна.`,range_order:`from має бути ≤ to`,file_structure:`некоректний файл`,code_structure:`очікується {code, lang}`,url:`некоректний URL`,embed_structure:`некоректне вкладення`,colorname:`невідома назва кольору`},core:{plugin:{label:`Система`},settings:{label:`Система`,language:`Мова`},fields:{type:`Тип`,name:`Назва`,weekday:`День тижня`,value:`Значення`,text:`Текст`,check:`Позначка`},presets:{slug:`лише малі латинські літери, цифри й дефіс`,imei:`IMEI — рівно 15 цифр`,mac:`MAC — формат XX:XX:XX:XX:XX:XX`,iban:`IBAN — 2 літери, 2 цифри, далі літери й цифри (без пробілів)`,hostname:`імʼя хоста / FQDN (мітки через крапку: літери, цифри, дефіс)`,tel:`номер телефону`,link:`URL (scheme:// або домен із крапкою)`},lookup:{enough:`Досить`,partial:`Частково`,missing:`Немає`,noData:`немає даних`},period:{from:`З`,until:`По`},sex:{M:`Чоловіча`,F:`Жіноча`,other:`Інша`},weekdays:{mon:`Понеділок`,tue:`Вівторок`,wed:`Середа`,thu:`Четвер`,fri:`П'ятниця`,sat:`Субота`,sun:`Неділя`},colors:Se.uk,countries:{AF:`Афганістан`,AL:`Албанія`,DZ:`Алжир`,AD:`Андорра`,AO:`Ангола`,AG:`Антигуа і Барбуда`,AR:`Аргентина`,AM:`Вірменія`,AU:`Австралія`,AT:`Австрія`,AZ:`Азербайджан`,BS:`Багамські Острови`,BH:`Бахрейн`,BD:`Бангладеш`,BY:`Білорусь`,BE:`Бельгія`,BZ:`Беліз`,BJ:`Бенін`,BT:`Бутан`,BO:`Болівія`,BA:`Боснія і Герцеговина`,BW:`Ботсвана`,BR:`Бразилія`,BN:`Бруней`,BG:`Болгарія`,BF:`Буркіна-Фасо`,BI:`Бурунді`,CV:`Кабо-Верде`,KH:`Камбоджа`,CM:`Камерун`,CA:`Канада`,CF:`ЦАР`,TD:`Чад`,CL:`Чилі`,CN:`Китай`,CO:`Колумбія`,KM:`Комори`,CG:`Конго`,CD:`ДР Конго`,CR:`Коста-Рика`,CI:`Кот-д'Івуар`,HR:`Хорватія`,CU:`Куба`,CY:`Кіпр`,CZ:`Чехія`,DK:`Данія`,DJ:`Джибуті`,DM:`Домініка`,DO:`Домініканська Республіка`,EC:`Еквадор`,EG:`Єгипет`,SV:`Сальвадор`,GQ:`Екваторіальна Гвінея`,ER:`Еритрея`,EE:`Естонія`,SZ:`Есватіні`,ET:`Ефіопія`,FJ:`Фіджі`,FI:`Фінляндія`,FR:`Франція`,GA:`Габон`,GM:`Гамбія`,GE:`Грузія`,DE:`Німеччина`,GH:`Гана`,GR:`Греція`,GD:`Гренада`,GT:`Гватемала`,GN:`Гвінея`,GW:`Гвінея-Бісау`,GY:`Гаяна`,HT:`Гаїті`,HN:`Гондурас`,HU:`Угорщина`,IS:`Ісландія`,IN:`Індія`,ID:`Індонезія`,IR:`Іран`,IQ:`Ірак`,IE:`Ірландія`,IL:`Ізраїль`,IT:`Італія`,JM:`Ямайка`,JP:`Японія`,JO:`Йорданія`,KZ:`Казахстан`,KE:`Кенія`,KI:`Кірибаті`,KP:`КНДР`,KR:`Південна Корея`,KW:`Кувейт`,KG:`Киргизстан`,LA:`Лаос`,LV:`Латвія`,LB:`Ліван`,LS:`Лесото`,LR:`Ліберія`,LY:`Лівія`,LI:`Ліхтенштейн`,LT:`Литва`,LU:`Люксембург`,MG:`Мадагаскар`,MW:`Малаві`,MY:`Малайзія`,MV:`Мальдіви`,ML:`Малі`,MT:`Мальта`,MH:`Маршаллові Острови`,MR:`Мавританія`,MU:`Маврикій`,MX:`Мексика`,FM:`Мікронезія`,MD:`Молдова`,MC:`Монако`,MN:`Монголія`,ME:`Чорногорія`,MA:`Марокко`,MZ:`Мозамбік`,MM:`М'янма`,NA:`Намібія`,NR:`Науру`,NP:`Непал`,NL:`Нідерланди`,NZ:`Нова Зеландія`,NI:`Нікарагуа`,NE:`Нігер`,NG:`Нігерія`,MK:`Північна Македонія`,NO:`Норвегія`,OM:`Оман`,PK:`Пакистан`,PW:`Палау`,PA:`Панама`,PG:`Папуа Нова Гвінея`,PY:`Парагвай`,PE:`Перу`,PH:`Філіппіни`,PL:`Польща`,PT:`Португалія`,QA:`Катар`,RO:`Румунія`,RU:`Росія`,RW:`Руанда`,KN:`Сент-Кітс і Невіс`,LC:`Сент-Люсія`,VC:`Сент-Вінсент і Гренадіни`,WS:`Самоа`,SM:`Сан-Марино`,ST:`Сан-Томе і Принсіпі`,SA:`Саудівська Аравія`,SN:`Сенегал`,RS:`Сербія`,SC:`Сейшели`,SL:`Сьєрра-Леоне`,SG:`Сінгапур`,SK:`Словаччина`,SI:`Словенія`,SB:`Соломонові Острови`,SO:`Сомалі`,ZA:`ПАР`,SS:`Південний Судан`,ES:`Іспанія`,LK:`Шрі-Ланка`,SD:`Судан`,SR:`Суринам`,SE:`Швеція`,CH:`Швейцарія`,SY:`Сирія`,TW:`Тайвань`,TJ:`Таджикистан`,TZ:`Танзанія`,TH:`Таїланд`,TL:`Тімор-Лесте`,TG:`Того`,TO:`Тонга`,TT:`Тринідад і Тобаго`,TN:`Туніс`,TR:`Туреччина`,TM:`Туркменістан`,TV:`Тувалу`,UG:`Уганда`,UA:`Україна`,AE:`ОАЕ`,GB:`Велика Британія`,US:`США`,UY:`Уругвай`,UZ:`Узбекистан`,VU:`Вануату`,VE:`Венесуела`,VN:`В'єтнам`,YE:`Ємен`,ZM:`Замбія`,ZW:`Зімбабве`},units:{UAH:`₴ UAH`,USD:`$ USD`,EUR:`€ EUR`,GBP:`£ GBP`,CZK:`Kč CZK`,PLN:`zł PLN`,mg:`мг`,g:`г`,kg:`кг`,t:`т`,oz:`oz`,lb:`lb`,ml:`мл`,cl:`сл`,dl:`дл`,l:`л`,tsp:`ч.л.`,tbsp:`ст.л.`,cup:`чашка`,fl_oz:`fl oz`,pcs:`шт`,pair:`пара`,set:`набір`,pack:`пачка`,s:`сек`,min:`хв`,h:`год`,d:`день`,w:`тиждень`,C:`°C`,F:`°F`,K:`К`,mm:`мм`,cm:`см`,m:`м`,km:`км`,in:`дюйм`,ft:`фут`,mi:`миля`,nm:`морська миля`,cm2:`см²`,m2:`м²`,ha:`га`,km2:`км²`,ft2:`фут²`,ac:`акр`,B:`Б`,KB:`КБ`,MB:`МБ`,GB:`ГБ`,TB:`ТБ`,mAh:`мАг`,Ah:`Аг`,Wh:`Вт·год`,kWh:`кВт·год`,mW:`мВт`,W:`Вт`,kW:`кВт`,mV:`мВ`,V:`В`,ms:`м/с`,kmh:`км/год`,mph:`mph`,kn:`вузол`,"%":`%`,ppm:`ppm`}}},Ri={common:{loading:`Загрузка…`,saving:`Сохранение…`,error:`Ошибка`,back:`Назад`,yes:`Да`,no:`Нет`,notFound:`Тип не найден`,daysUnit:`дн.`,peopleUnit:`чел.`,empty:`Нет записей`},actions:{new:`Новый`,addFirst:`Добавить первую запись`,edit:`Редактировать`,editAll:`Редактировать всё`,save:`Сохранить`,create:`Создать`,cancel:`Отмена`,confirmDelete:`Удалить эту запись?`,delete:`Удалить`,upload:`Загрузить`,replace:`Заменить`,confirmDeletePhoto:`Удалить фото?`,add:`Добавить`,actionSuccess:`Готово`,actionError:`Ошибка`,actionNotFound:`Действие не зарегистрировано`,notice:`Уведомление`},save:{saving:`Сохранение…`,done:`Сохранено`,failed:`Не удалось сохранить`},upload:{tooLarge:`Файл слишком большой (макс. 25 МБ)`,failed:`Не удалось загрузить`},geo:{searchPlaceholder:`Поиск адреса…`,search:`Найти`,myLocation:`Моё местоположение`,label:`Подпись`,pick:`Выбрать место`},embed:{open:`Открыть`,pastePlaceholder:`Вставьте URL…`,resolveFailed:`Не удалось загрузить превью`},reminder:{today:`сегодня`,inDays:`через {{days}} дн`,overdue:`просрочено {{days}} дн`},nav:{selectType:`Выберите тип в меню`,plugins:`Плагины`,home:`Главная`,search:`Поиск`,browse:`Обзор`,settings:`Настройки`},dashboard:{title:`Главная`,empty:`Нет активных модулей`},settings:{title:`Настройки`,appearance:`Вид`,theme:`Тема`,language:`Язык`,systemTitle:`Система`,systemDescription:`Настройки всей системы.`,personalTitle:`Личное`,usersTitle:`Пользователи`,usersDescription:`Управление всеми аккаунтами инстанса.`},theme:{label:`Тема`,auto:`Авто`,light:`Светлая`,dark:`Тёмная`,eink:`E-ink`},folders:{title:`Папки`,all:`Все`,noFolder:`Без папки`,newFolder:`+ Новая папка`,namePlaceholder:`Название папки…`,confirmDelete:`Удалить папку? Записи останутся.`,collapse:`Свернуть`,expand:`Развернуть`,newSubfolder:`Новая подпапка`,rename:`Переименовать`,delete:`Удалить`},plugins:{title:`Плагины`,description:`Включение, выключение и удаление данных плагинов.`,loading:`Загрузка…`,restartBannerBefore:`Изменения применятся после `,restartBannerBold:`перезапуска сервера`,restartBannerAfter:` (набор активных плагинов читается при старте).`,confirmPurge:`Удалить ВСЕ данные плагина «{{id}}»? Таблицы будут удалены безвозвратно.`,genericError:`Ошибка: {{code}}`,purgeButton:`Удалить данные`,purgeTitle:`Удалить все данные плагина (безвозвратно)`,switchDisable:`Выключить`,switchEnable:`Включить`,blockedByDependents:`Нельзя выключить: от него зависят включённые плагины — {{list}}`,metaDepends:`зависит:`,metaVaults:`хранилища:`,metaExtends:`расширения:`,updateButton:`Обновить`,updateTitle:`Обновить с v{{from}} до v{{to}}`,confirmUpdate:`Обновить плагин «{{id}}» с v{{from}} до v{{to}}? Сервер перезапустится сразу после установки — убедитесь, что он работает под process-manager'ом (systemd/pm2/docker), который автоматически его поднимет. Рекомендуется сделать резервную копию базы данных заранее.`,updateError:`Обновление не удалось`,errors:{core_required:`Плагин core нельзя выключить.`,has_dependents:`От него зависят включённые: {{list}}.`,missing_deps:`Сначала включи зависимости: {{list}}.`,unknown_plugin:`Неизвестный плагин.`}},auth:{loginTitle:`Вход`,setupTitle:`Создать первого администратора`,login:`Логин`,password:`Пароль`,displayName:`Имя`,signIn:`Войти`,createAccount:`Создать аккаунт`,invalidCredentials:`Неверный логин или пароль.`,genericError:`Что-то пошло не так.`,accountTitle:`Мой аккаунт`,fieldDisplayName:`Имя`,fieldLogin:`Логин`,fieldPasswordOptional:`Новый пароль (оставьте пустым, чтобы не менять)`,tokensTitle:`API-токены`,tokenNamePlaceholder:`Название токена (напр. "agent")`,tokenCreate:`Создать токен`,tokenCreatedOnce:`Скопируйте токен сейчас — он больше не будет показан:`,tokenRevoke:`Отозвать`,tokenConfirmRevoke:`Отозвать этот токен? Всё, что его использует, перестанет работать.`,usersTitle:`Пользователи`,addUser:`Добавить пользователя`,roleAdmin:`Админ`,roleMember:`Участник`,fieldRole:`Роль`,fieldDisabled:`Отключён`,userCreateTitle:`Новый пользователь`,lastAdminError:`Нельзя убрать последнего админа.`},form:{serverRejected:`Сервер отклонил:`,createTitle:`Новый — {{label}}`,editTitle:`Редактировать — {{label}}`,mdPlaceholder:`Текст в формате Markdown…`,photo:`+ Фото`,properties:`Свойства`,keyPlaceholder:`ключ`,valuePlaceholderShort:`значение`,addProperty:`Свойство`,days:`дн`,hours:`ч`,minutes:`мин`,seconds:`с`,addTag:`Добавить тег…`,addRow:`+ Добавить строку`,search:`Поиск…`,loading:`Загрузка…`,loadError:`Ошибка загрузки`,noRecords:`Нет записей`,addRecord:`+ Добавить…`,addItem:`+ Добавить пункт`},list:{empty:`Пока пусто`,searchPlaceholder:`Поиск…`,sortBy:`Сортировать по`,sortNone:`Без сортировки`,asc:`По возрастанию`,desc:`По убыванию`,peopleCount_one:`{{count}} чел.`,peopleCount_few:`{{count}} чел.`,peopleCount_many:`{{count}} чел.`,peopleCount_other:`{{count}} чел.`,pairsCount_one:`{{count}} пара`,pairsCount_few:`{{count}} пары`,pairsCount_many:`{{count}} пар`,pairsCount_other:`{{count}} пар`},search:{title:`Глобальный поиск`,placeholder:`Поиск модулей и записей…`,allModules:`Все модули`,results:`Результаты`,noResults:`Ничего не найдено`},record:{count_one:`{{count}} запись`,count_few:`{{count}} записи`,count_many:`{{count}} записей`,count_other:`{{count}} записей`,hide:`Скрыть`,show:`Показать`},extend:{shownWhen:`Показывается когда:`},weekdaysShort:[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Вс`],lang:{uk:`Українська`,ru:`Русский`,en:`English`},validation:{required:`обязательное поле`,invalid_type:`недопустимый тип значения`,min_length:`минимум {{min}} симв.`,max_length:`максимум {{max}} симв.`,pattern:`недопустимый формат`,email:`некорректный email-адрес`,min:`не меньше {{min}}`,max:`не больше {{max}}`,int:`должно быть целым`,date_format:`формат YYYY-MM-DD`,date_min:`не раньше {{min}}`,date_max:`не позже {{max}}`,enum:`выберите из списка`,json:`невалидный JSON`,structure:`недопустимая структура`,int_list:`недопустимые ссылки на записи`,kv_single:`допустима только одна пара`,links_structure:`недопустимая структура подключений`,time_format:`формат HH:MM:SS`,datetime_format:`формат YYYY-MM-DDTHH:MM`,tags_list:`ожидается массив тегов`,slotted_length:`неверное количество элементов`,check_structure:`неверная структура отметки`,measured_structure:`ожидается {value, unit}`,measured_unit:`неизвестная единица`,money_structure:`некорректная сумма`,geo_structure:`ожидается {lat, lng}`,money_currency:`неизвестная валюта`,color_format:`формат #RRGGBB`,row_structure:`недопустимая структура строк`,row_duplicate:`значение «{{key}}» повторяется между строками`,array:`ожидается массив`,array_item:`недопустимое значение в массиве`,ip_structure:`недопустимый IP-адрес`,cidr_structure:`недопустимый CIDR`,per_weekday:`массив из 7 чисел`,period_order:`начало не должно быть позже конца`,range_structure:`ожидается {from, to}`,last_admin:`Нельзя убрать последнего админа.`,range_order:`from должно быть ≤ to`,file_structure:`некорректный файл`,code_structure:`ожидается {code, lang}`,url:`некорректный URL`,embed_structure:`некорректное вложение`,colorname:`неизвестное название цвета`},core:{plugin:{label:`Система`},settings:{label:`Система`,language:`Язык`},fields:{type:`Тип`,name:`Название`,weekday:`День недели`,value:`Значение`,text:`Текст`,check:`Отметка`},presets:{slug:`только строчные латинские буквы, цифры и дефис`,imei:`IMEI — ровно 15 цифр`,mac:`MAC — формат XX:XX:XX:XX:XX:XX`,iban:`IBAN — 2 буквы, 2 цифры, далее буквы и цифры (без пробелов)`,hostname:`имя хоста / FQDN (метки через точку: буквы, цифры, дефис)`,tel:`номер телефона`,link:`URL (scheme:// или домен с точкой)`},lookup:{enough:`Достаточно`,partial:`Частично`,missing:`Нет`,noData:`нет данных`},period:{from:`С`,until:`По`},sex:{M:`Мужской`,F:`Женский`,other:`Другой`},weekdays:{mon:`Понедельник`,tue:`Вторник`,wed:`Среда`,thu:`Четверг`,fri:`Пятница`,sat:`Суббота`,sun:`Воскресенье`},colors:Se.ru,countries:{AF:`Афганистан`,AL:`Албания`,DZ:`Алжир`,AD:`Андорра`,AO:`Ангола`,AG:`Антигуа и Барбуда`,AR:`Аргентина`,AM:`Армения`,AU:`Австралия`,AT:`Австрия`,AZ:`Азербайджан`,BS:`Багамы`,BH:`Бахрейн`,BD:`Бангладеш`,BY:`Беларусь`,BE:`Бельгия`,BZ:`Белиз`,BJ:`Бенин`,BT:`Бутан`,BO:`Боливия`,BA:`Босния и Герцеговина`,BW:`Ботсвана`,BR:`Бразилия`,BN:`Бруней`,BG:`Болгария`,BF:`Буркина-Фасо`,BI:`Бурунди`,CV:`Кабо-Верде`,KH:`Камбоджа`,CM:`Камерун`,CA:`Канада`,CF:`Центрально-Африканская Республика`,TD:`Чад`,CL:`Чили`,CN:`Китай`,CO:`Колумбия`,KM:`Коморы`,CG:`Конго - Браззавиль`,CD:`Конго - Киншаса`,CR:`Коста-Рика`,CI:`Кот-д’Ивуар`,HR:`Хорватия`,CU:`Куба`,CY:`Кипр`,CZ:`Чехия`,DK:`Дания`,DJ:`Джибути`,DM:`Доминика`,DO:`Доминиканская Республика`,EC:`Эквадор`,EG:`Египет`,SV:`Сальвадор`,GQ:`Экваториальная Гвинея`,ER:`Эритрея`,EE:`Эстония`,SZ:`Эсватини`,ET:`Эфиопия`,FJ:`Фиджи`,FI:`Финляндия`,FR:`Франция`,GA:`Габон`,GM:`Гамбия`,GE:`Грузия`,DE:`Германия`,GH:`Гана`,GR:`Греция`,GD:`Гренада`,GT:`Гватемала`,GN:`Гвинея`,GW:`Гвинея-Бисау`,GY:`Гайана`,HT:`Гаити`,HN:`Гондурас`,HU:`Венгрия`,IS:`Исландия`,IN:`Индия`,ID:`Индонезия`,IR:`Иран`,IQ:`Ирак`,IE:`Ирландия`,IL:`Израиль`,IT:`Италия`,JM:`Ямайка`,JP:`Япония`,JO:`Иордания`,KZ:`Казахстан`,KE:`Кения`,KI:`Кирибати`,KP:`КНДР`,KR:`Республика Корея`,KW:`Кувейт`,KG:`Киргизия`,LA:`Лаос`,LV:`Латвия`,LB:`Ливан`,LS:`Лесото`,LR:`Либерия`,LY:`Ливия`,LI:`Лихтенштейн`,LT:`Литва`,LU:`Люксембург`,MG:`Мадагаскар`,MW:`Малави`,MY:`Малайзия`,MV:`Мальдивы`,ML:`Мали`,MT:`Мальта`,MH:`Маршалловы о-ва`,MR:`Мавритания`,MU:`Маврикий`,MX:`Мексика`,FM:`Федеративные Штаты Микронезии`,MD:`Молдова`,MC:`Монако`,MN:`Монголия`,ME:`Черногория`,MA:`Марокко`,MZ:`Мозамбик`,MM:`Мьянма (Бирма)`,NA:`Намибия`,NR:`Науру`,NP:`Непал`,NL:`Нидерланды`,NZ:`Новая Зеландия`,NI:`Никарагуа`,NE:`Нигер`,NG:`Нигерия`,MK:`Северная Македония`,NO:`Норвегия`,OM:`Оман`,PK:`Пакистан`,PW:`Палау`,PA:`Панама`,PG:`Папуа — Новая Гвинея`,PY:`Парагвай`,PE:`Перу`,PH:`Филиппины`,PL:`Польша`,PT:`Португалия`,QA:`Катар`,RO:`Румыния`,RU:`Россия`,RW:`Руанда`,KN:`Сент-Китс и Невис`,LC:`Сент-Люсия`,VC:`Сент-Винсент и Гренадины`,WS:`Самоа`,SM:`Сан-Марино`,ST:`Сан-Томе и Принсипи`,SA:`Саудовская Аравия`,SN:`Сенегал`,RS:`Сербия`,SC:`Сейшельские о-ва`,SL:`Сьерра-Леоне`,SG:`Сингапур`,SK:`Словакия`,SI:`Словения`,SB:`Соломоновы о-ва`,SO:`Сомали`,ZA:`Южно-Африканская Республика`,SS:`Южный Судан`,ES:`Испания`,LK:`Шри-Ланка`,SD:`Судан`,SR:`Суринам`,SE:`Швеция`,CH:`Швейцария`,SY:`Сирия`,TW:`Тайвань`,TJ:`Таджикистан`,TZ:`Танзания`,TH:`Таиланд`,TL:`Восточный Тимор`,TG:`Того`,TO:`Тонга`,TT:`Тринидад и Тобаго`,TN:`Тунис`,TR:`Турция`,TM:`Туркменистан`,TV:`Тувалу`,UG:`Уганда`,UA:`Украина`,AE:`ОАЭ`,GB:`Великобритания`,US:`Соединенные Штаты`,UY:`Уругвай`,UZ:`Узбекистан`,VU:`Вануату`,VE:`Венесуэла`,VN:`Вьетнам`,YE:`Йемен`,ZM:`Замбия`,ZW:`Зимбабве`},units:{UAH:`₴ UAH`,USD:`$ USD`,EUR:`€ EUR`,GBP:`£ GBP`,CZK:`Kč CZK`,PLN:`zł PLN`,mg:`мг`,g:`г`,kg:`кг`,t:`т`,oz:`oz`,lb:`lb`,ml:`мл`,cl:`сл`,dl:`дл`,l:`л`,tsp:`ч.л.`,tbsp:`ст.л.`,cup:`чашка`,fl_oz:`fl oz`,pcs:`шт`,pair:`пара`,set:`набор`,pack:`пачка`,s:`сек`,min:`мин`,h:`ч`,d:`день`,w:`неделя`,C:`°C`,F:`°F`,K:`К`,mm:`мм`,cm:`см`,m:`м`,km:`км`,in:`дюйм`,ft:`фут`,mi:`миля`,nm:`морская миля`,cm2:`см²`,m2:`м²`,ha:`га`,km2:`км²`,ft2:`фут²`,ac:`акр`,B:`Б`,KB:`КБ`,MB:`МБ`,GB:`ГБ`,TB:`ТБ`,mAh:`мАч`,Ah:`Ач`,Wh:`Вт·ч`,kWh:`кВт·ч`,mW:`мВт`,W:`Вт`,kW:`кВт`,mV:`мВ`,V:`В`,ms:`м/с`,kmh:`км/ч`,mph:`mph`,kn:`узел`,"%":`%`,ppm:`ppm`}}},zi={common:{loading:`Loading…`,saving:`Saving…`,error:`Error`,back:`Back`,yes:`Yes`,no:`No`,notFound:`Type not found`,daysUnit:`d`,peopleUnit:`ppl`,empty:`No records`},actions:{new:`New`,addFirst:`Add first record`,edit:`Edit`,editAll:`Edit all`,save:`Save`,create:`Create`,cancel:`Cancel`,confirmDelete:`Delete this record?`,delete:`Delete`,upload:`Upload`,replace:`Replace`,confirmDeletePhoto:`Delete photo?`,add:`Add`,actionSuccess:`Done`,actionError:`Error`,actionNotFound:`Action not registered`,notice:`Notice`},save:{saving:`Saving…`,done:`Saved`,failed:`Save failed`},upload:{tooLarge:`File too large (max 25 MB)`,failed:`Upload failed`},geo:{searchPlaceholder:`Search address…`,search:`Search`,myLocation:`My location`,label:`Label`,pick:`Pick location`},embed:{open:`Open`,pastePlaceholder:`Paste a URL…`,resolveFailed:`Could not load preview`},reminder:{today:`today`,inDays:`in {{days}}d`,overdue:`overdue {{days}}d`},nav:{selectType:`Select a type from the menu`,plugins:`Plugins`,home:`Home`,search:`Search`,browse:`Browse`,settings:`Settings`},dashboard:{title:`Home`,empty:`No active modules`},settings:{title:`Settings`,appearance:`Appearance`,theme:`Theme`,language:`Language`,systemTitle:`System`,systemDescription:`App-wide settings.`,personalTitle:`Personal`,usersTitle:`Users`,usersDescription:`Manage every account on this instance.`},theme:{label:`Theme`,auto:`Auto`,light:`Light`,dark:`Dark`,eink:`E-ink`},group:{title:`Grouping`,field:`Field`,all:`All records`,noValue:`No value`,yes:`Yes`,no:`No`},plugins:{title:`Plugins`,description:`Enable, disable, and purge plugin data.`,loading:`Loading…`,restartBannerBefore:`Changes will take effect after `,restartBannerBold:`server restart`,restartBannerAfter:` (the active plugin set is read at startup).`,confirmPurge:`Delete ALL data for plugin "{{id}}"? Tables will be dropped permanently.`,genericError:`Error: {{code}}`,purgeButton:`Delete data`,purgeTitle:`Delete all plugin data (permanently)`,switchDisable:`Disable`,switchEnable:`Enable`,blockedByDependents:`Can't disable: enabled plugins depend on it — {{list}}`,metaDepends:`depends on:`,metaVaults:`vaults:`,metaExtends:`extends:`,updateButton:`Update`,updateTitle:`Update from v{{from}} to v{{to}}`,confirmUpdate:`Update plugin "{{id}}" from v{{from}} to v{{to}}? The server will restart immediately after install — make sure it runs under a process manager (systemd/pm2/docker) that will bring it back up automatically. A database backup beforehand is recommended.`,updateError:`Update failed`,errors:{core_required:`The core plugin cannot be disabled.`,has_dependents:`Enabled plugins depend on it: {{list}}.`,missing_deps:`Enable dependencies first: {{list}}.`,unknown_plugin:`Unknown plugin.`}},auth:{loginTitle:`Sign in`,setupTitle:`Create the first admin account`,login:`Login`,password:`Password`,displayName:`Display name`,signIn:`Sign in`,createAccount:`Create account`,invalidCredentials:`Wrong login or password.`,genericError:`Something went wrong.`,accountTitle:`My account`,fieldDisplayName:`Display name`,fieldLogin:`Login`,fieldPasswordOptional:`New password (leave blank to keep unchanged)`,tokensTitle:`API tokens`,tokenNamePlaceholder:`Token name (e.g. "agent")`,tokenCreate:`Create token`,tokenCreatedOnce:`Copy this token now — it will not be shown again:`,tokenRevoke:`Revoke`,tokenConfirmRevoke:`Revoke this token? Anything using it will stop working.`,usersTitle:`Users`,addUser:`Add user`,roleAdmin:`Admin`,roleMember:`Member`,fieldRole:`Role`,fieldDisabled:`Disabled`,userCreateTitle:`New user`,lastAdminError:`Cannot remove the last admin.`},form:{serverRejected:`Server rejected:`,createTitle:`New — {{label}}`,editTitle:`Edit — {{label}}`,mdPlaceholder:`Markdown text…`,photo:`+ Photo`,properties:`Properties`,keyPlaceholder:`key`,valuePlaceholderShort:`value`,addProperty:`Property`,days:`d`,hours:`h`,minutes:`min`,seconds:`s`,addTag:`Add tag…`,addRow:`+ Add row`,search:`Search…`,loading:`Loading…`,loadError:`Load error`,noRecords:`No records`,addRecord:`+ Add…`,addItem:`+ Add item`},list:{empty:`Nothing here yet`,searchPlaceholder:`Search…`,sortBy:`Sort by`,sortNone:`No sorting`,asc:`Ascending`,desc:`Descending`,peopleCount_one:`{{count}} person`,peopleCount_other:`{{count}} ppl`,pairsCount_one:`{{count}} pair`,pairsCount_other:`{{count}} pairs`},search:{title:`Global Search`,placeholder:`Search modules and records…`,allModules:`All modules`,results:`Results`,noResults:`Nothing found`},record:{count_one:`{{count}} record`,count_other:`{{count}} records`,hide:`Hide`,show:`Show`},extend:{shownWhen:`Shown when:`},weekdaysShort:[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],lang:{uk:`Українська`,ru:`Русский`,en:`English`},validation:{required:`required field`,invalid_type:`invalid value type`,min_length:`minimum {{min}} chars`,max_length:`maximum {{max}} chars`,pattern:`invalid format`,email:`invalid email address`,min:`at least {{min}}`,max:`at most {{max}}`,int:`must be an integer`,date_format:`format YYYY-MM-DD`,date_min:`not earlier than {{min}}`,date_max:`not later than {{max}}`,enum:`choose from the list`,json:`invalid JSON`,structure:`invalid structure`,int_list:`invalid record references`,kv_single:`only one pair allowed`,links_structure:`invalid connections structure`,time_format:`format HH:MM:SS`,datetime_format:`format YYYY-MM-DDTHH:MM`,tags_list:`expected array of tags`,slotted_length:`wrong number of items`,check_structure:`invalid check structure`,measured_structure:`expected {value, unit}`,measured_unit:`unknown unit`,money_structure:`invalid amount`,geo_structure:`expected {lat, lng}`,money_currency:`unknown currency`,color_format:`format #RRGGBB`,row_structure:`invalid row structure`,row_duplicate:`value "{{key}}" is duplicated across rows`,array:`expected an array`,array_item:`invalid value in array`,ip_structure:`invalid IP address`,cidr_structure:`invalid CIDR`,per_weekday:`array of 7 numbers`,period_order:`start must not be after end`,range_structure:`expected {from, to}`,last_admin:`Cannot remove the last admin.`,range_order:`from must be ≤ to`,file_structure:`invalid file`,code_structure:`expected {code, lang}`,url:`invalid URL`,embed_structure:`invalid embed`,colorname:`unknown color name`},core:{plugin:{label:`System`},settings:{label:`System`,language:`Language`},fields:{type:`Type`,name:`Name`,weekday:`Weekday`,value:`Value`,text:`Text`,check:`Check`},presets:{slug:`lowercase latin letters, digits and hyphen only`,imei:`IMEI — exactly 15 digits`,mac:`MAC — format XX:XX:XX:XX:XX:XX`,iban:`IBAN — 2 letters, 2 digits, then letters and digits (no spaces)`,hostname:`hostname / FQDN (dot-separated labels: letters, digits, hyphen)`,tel:`phone number`,link:`URL (scheme:// or a domain with a dot)`},lookup:{enough:`Enough`,partial:`Partial`,missing:`Missing`,noData:`no data`},period:{from:`From`,until:`Until`},sex:{M:`Male`,F:`Female`,other:`Other`},weekdays:{mon:`Monday`,tue:`Tuesday`,wed:`Wednesday`,thu:`Thursday`,fri:`Friday`,sat:`Saturday`,sun:`Sunday`},colors:Se.en,countries:{AF:`Afghanistan`,AL:`Albania`,DZ:`Algeria`,AD:`Andorra`,AO:`Angola`,AG:`Antigua & Barbuda`,AR:`Argentina`,AM:`Armenia`,AU:`Australia`,AT:`Austria`,AZ:`Azerbaijan`,BS:`Bahamas`,BH:`Bahrain`,BD:`Bangladesh`,BY:`Belarus`,BE:`Belgium`,BZ:`Belize`,BJ:`Benin`,BT:`Bhutan`,BO:`Bolivia`,BA:`Bosnia & Herzegovina`,BW:`Botswana`,BR:`Brazil`,BN:`Brunei`,BG:`Bulgaria`,BF:`Burkina Faso`,BI:`Burundi`,CV:`Cape Verde`,KH:`Cambodia`,CM:`Cameroon`,CA:`Canada`,CF:`Central African Republic`,TD:`Chad`,CL:`Chile`,CN:`China`,CO:`Colombia`,KM:`Comoros`,CG:`Congo - Brazzaville`,CD:`Congo - Kinshasa`,CR:`Costa Rica`,CI:`Côte d’Ivoire`,HR:`Croatia`,CU:`Cuba`,CY:`Cyprus`,CZ:`Czechia`,DK:`Denmark`,DJ:`Djibouti`,DM:`Dominica`,DO:`Dominican Republic`,EC:`Ecuador`,EG:`Egypt`,SV:`El Salvador`,GQ:`Equatorial Guinea`,ER:`Eritrea`,EE:`Estonia`,SZ:`Eswatini`,ET:`Ethiopia`,FJ:`Fiji`,FI:`Finland`,FR:`France`,GA:`Gabon`,GM:`Gambia`,GE:`Georgia`,DE:`Germany`,GH:`Ghana`,GR:`Greece`,GD:`Grenada`,GT:`Guatemala`,GN:`Guinea`,GW:`Guinea-Bissau`,GY:`Guyana`,HT:`Haiti`,HN:`Honduras`,HU:`Hungary`,IS:`Iceland`,IN:`India`,ID:`Indonesia`,IR:`Iran`,IQ:`Iraq`,IE:`Ireland`,IL:`Israel`,IT:`Italy`,JM:`Jamaica`,JP:`Japan`,JO:`Jordan`,KZ:`Kazakhstan`,KE:`Kenya`,KI:`Kiribati`,KP:`North Korea`,KR:`South Korea`,KW:`Kuwait`,KG:`Kyrgyzstan`,LA:`Laos`,LV:`Latvia`,LB:`Lebanon`,LS:`Lesotho`,LR:`Liberia`,LY:`Libya`,LI:`Liechtenstein`,LT:`Lithuania`,LU:`Luxembourg`,MG:`Madagascar`,MW:`Malawi`,MY:`Malaysia`,MV:`Maldives`,ML:`Mali`,MT:`Malta`,MH:`Marshall Islands`,MR:`Mauritania`,MU:`Mauritius`,MX:`Mexico`,FM:`Micronesia`,MD:`Moldova`,MC:`Monaco`,MN:`Mongolia`,ME:`Montenegro`,MA:`Morocco`,MZ:`Mozambique`,MM:`Myanmar (Burma)`,NA:`Namibia`,NR:`Nauru`,NP:`Nepal`,NL:`Netherlands`,NZ:`New Zealand`,NI:`Nicaragua`,NE:`Niger`,NG:`Nigeria`,MK:`North Macedonia`,NO:`Norway`,OM:`Oman`,PK:`Pakistan`,PW:`Palau`,PA:`Panama`,PG:`Papua New Guinea`,PY:`Paraguay`,PE:`Peru`,PH:`Philippines`,PL:`Poland`,PT:`Portugal`,QA:`Qatar`,RO:`Romania`,RU:`Russia`,RW:`Rwanda`,KN:`St. Kitts & Nevis`,LC:`St. Lucia`,VC:`St. Vincent & Grenadines`,WS:`Samoa`,SM:`San Marino`,ST:`São Tomé & Príncipe`,SA:`Saudi Arabia`,SN:`Senegal`,RS:`Serbia`,SC:`Seychelles`,SL:`Sierra Leone`,SG:`Singapore`,SK:`Slovakia`,SI:`Slovenia`,SB:`Solomon Islands`,SO:`Somalia`,ZA:`South Africa`,SS:`South Sudan`,ES:`Spain`,LK:`Sri Lanka`,SD:`Sudan`,SR:`Suriname`,SE:`Sweden`,CH:`Switzerland`,SY:`Syria`,TW:`Taiwan`,TJ:`Tajikistan`,TZ:`Tanzania`,TH:`Thailand`,TL:`Timor-Leste`,TG:`Togo`,TO:`Tonga`,TT:`Trinidad & Tobago`,TN:`Tunisia`,TR:`Türkiye`,TM:`Turkmenistan`,TV:`Tuvalu`,UG:`Uganda`,UA:`Ukraine`,AE:`United Arab Emirates`,GB:`United Kingdom`,US:`United States`,UY:`Uruguay`,UZ:`Uzbekistan`,VU:`Vanuatu`,VE:`Venezuela`,VN:`Vietnam`,YE:`Yemen`,ZM:`Zambia`,ZW:`Zimbabwe`},units:{UAH:`₴ UAH`,USD:`$ USD`,EUR:`€ EUR`,GBP:`£ GBP`,CZK:`Kč CZK`,PLN:`zł PLN`,mg:`mg`,g:`g`,kg:`kg`,t:`t`,oz:`oz`,lb:`lb`,ml:`ml`,cl:`cl`,dl:`dl`,l:`l`,tsp:`tsp`,tbsp:`tbsp`,cup:`cup`,fl_oz:`fl oz`,pcs:`pcs`,pair:`pair`,set:`set`,pack:`pack`,s:`s`,min:`min`,h:`h`,d:`day`,w:`week`,C:`°C`,F:`°F`,K:`K`,mm:`mm`,cm:`cm`,m:`m`,km:`km`,in:`in`,ft:`ft`,mi:`mi`,nm:`nmi`,cm2:`cm²`,m2:`m²`,ha:`ha`,km2:`km²`,ft2:`ft²`,ac:`ac`,B:`B`,KB:`KB`,MB:`MB`,GB:`GB`,TB:`TB`,mAh:`mAh`,Ah:`Ah`,Wh:`Wh`,kWh:`kWh`,mW:`mW`,W:`W`,kW:`kW`,mV:`mV`,V:`V`,ms:`m/s`,kmh:`km/h`,mph:`mph`,kn:`kn`,"%":`%`,ppm:`ppm`}}},Bi=typeof localStorage<`u`?localStorage.getItem(`lang`)??`uk`:`uk`;Ii.use(a).init({resources:{uk:{translation:Li},ru:{translation:Ri},en:{translation:zi}},lng:Bi,fallbackLng:`uk`,interpolation:{escapeValue:!1},parseMissingKeyHandler:e=>(console.warn(`[i18n] відсутній ключ:`,e),e)}),fetch(`/api/plugins/core/settings`).then(e=>e.ok?e.json():null).then(e=>{let t=e?.language;if(t&&t!==Ii.language){Ii.changeLanguage(t);try{localStorage.setItem(`lang`,t)}catch{}}}).catch(e=>console.warn(`[i18n] language reconcile failed:`,e));var Vi=Ii,Hi=e({agent:()=>Ui,default:()=>Wi}),Ui={plugin:{label:`AI agent`,description:`In-process Claude Agent SDK runtime with optional RAG.`},settings:{label:`Agent settings`,auth_mode:`Billing mode`,auth_mode_subscription:`Subscription (session from system)`,auth_mode_api_key:`API key (pay per token)`,anthropic_api_key:`Anthropic API key`,claude_model:`Claude model`,skip_permissions:`Skip permissions check`,response_timeout:`Response timeout (s)`,rag_enabled:`Enable RAG`,rag_top_k:`RAG results (top-k)`,openai_api_key:`OpenAI API key (embeddings, optional — default from OPENAI_API_KEY)`,langfuse_public_key:`Langfuse public key`,langfuse_secret_key:`Langfuse secret key`,langfuse_base_url:`Langfuse base URL`,tracing_enabled:`Enable Langfuse tracing`}},Wi={agent:Ui},Gi=e({agent:()=>Ki,default:()=>qi}),Ki={plugin:{label:`AI-агент`,description:`Рантайм Claude Agent SDK в процессе с опциональным RAG.`},settings:{label:`Настройки агента`,auth_mode:`Способ оплаты`,auth_mode_subscription:`Подписка (сессия из системы)`,auth_mode_api_key:`API-ключ (оплата за токены)`,anthropic_api_key:`Ключ Anthropic API`,claude_model:`Модель Claude`,skip_permissions:`Пропустить проверку прав`,response_timeout:`Тайм-аут ответа (с)`,rag_enabled:`Включить RAG`,rag_top_k:`Результаты RAG (top-k)`,openai_api_key:`Ключ OpenAI (эмбеддинги, опц. — по умолчанию из OPENAI_API_KEY)`,langfuse_public_key:`Langfuse public key`,langfuse_secret_key:`Langfuse secret key`,langfuse_base_url:`Langfuse base URL`,tracing_enabled:`Включить трейсинг Langfuse`}},qi={agent:Ki},Ji=e({agent:()=>Yi,default:()=>Xi}),Yi={plugin:{label:`AI-агент`,description:`Рантайм Claude Agent SDK у процесі з опційним RAG.`},settings:{label:`Налаштування агента`,auth_mode:`Спосіб оплати`,auth_mode_subscription:`Підписка (сесія з системи)`,auth_mode_api_key:`API-ключ (оплата за токени)`,anthropic_api_key:`Ключ Anthropic API`,claude_model:`Модель Claude`,skip_permissions:`Пропустити перевірку прав`,response_timeout:`Тайм-аут відповіді (с)`,rag_enabled:`Увімкнути RAG`,rag_top_k:`Результати RAG (top-k)`,openai_api_key:`Ключ OpenAI (ембединги, опц. — типово з OPENAI_API_KEY)`,langfuse_public_key:`Langfuse public key`,langfuse_secret_key:`Langfuse secret key`,langfuse_base_url:`Langfuse base URL`,tracing_enabled:`Увімкнути трейсинг Langfuse`}},Xi={agent:Yi},Zi=e({console:()=>Qi,default:()=>$i}),Qi={plugin:{label:`Console access`,description:`Drive Coffer from a terminal AI (Claude Code / Codex) via the coffer MCP.`},settings:{label:`Console access`,intro:"## Use Coffer from the console\n\nThe `@coffer-org/mcp` server exposes your vaults to a terminal AI as MCP tools (`list_vaults`, `describe_type`, `list_records`, `get_record`, `create_record`, `update_record`, `delete_record`, `refresh_schema`). It is schema-driven: any plugin or vault you enable shows up after a server restart — no client changes.\n\nThe Coffer server must be running. The MCP talks to it over HTTP at `COFFER_URL` (default `http://localhost:7023`).",claude:'### Claude Code / Claude CLI\n\n```sh\nclaude mcp add coffer --env COFFER_URL=http://localhost:7023 -- npx -y @coffer-org/mcp\n```\n\nThen in any session the tools appear as `mcp__coffer__*`. Ask e.g. _"list my vaults"_ or _"add a record to …"_ and the agent calls them directly.',codex:`### Codex CLI
219
+ root.render(<App />);`),!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(a=t.onCaughtError),t.onRecoverableError!==void 0&&(o=t.onRecoverableError)),t=Yd(e,1,!1,null,null,n,r,null,i,a,o,bf),e[Kp]=t.current,ou(e),new xf(t)},e.hydrateRoot=function(e,t,n){if(!y(e))throw Error(`Target container is not a DOM element.`);Cf(e),t===void 0&&console.error(`Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)`);var r=!1,i=``,a=Xo,o=Zo,s=Qo,c=null;return n!=null&&(!0===n.unstable_strictMode&&(r=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onUncaughtError!==void 0&&(a=n.onUncaughtError),n.onCaughtError!==void 0&&(o=n.onCaughtError),n.onRecoverableError!==void 0&&(s=n.onRecoverableError),n.formState!==void 0&&(c=n.formState)),t=Yd(e,1,!0,t,n??null,r,i,c,a,o,s,bf),t.context=Xd(null),n=t.current,r=Yc(n),r=Me(r),i=Ki(r),i.callback=null,qi(n,i,r),ei(r,`hydrateRoot()`,null),n=r,t.current.lanes=n,De(t,n),Ul(t),e[Kp]=t.current,ou(e),new Sf(t)},e.version=`19.2.7`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),zr=n(((e,t)=>{t.exports=Rr()})),B=t(r(),1),Br=zr(),Vr=e=>typeof e==`string`,Hr=()=>{let e,t,n=new Promise((n,r)=>{e=n,t=r});return n.resolve=e,n.reject=t,n},Ur=e=>e==null?``:String(e),Wr=(e,t,n)=>{e.forEach(e=>{t[e]&&(n[e]=t[e])})},Gr=/###/g,Kr=e=>e&&e.includes(`###`)?e.replace(Gr,`.`):e,qr=e=>!e||Vr(e),Jr=(e,t,n)=>{let r=Vr(t)?t.split(`.`):t,i=0;for(;i<r.length-1;){if(qr(e))return{};let t=Kr(r[i]);!e[t]&&n&&(e[t]=new n),e=Object.prototype.hasOwnProperty.call(e,t)?e[t]:{},++i}return qr(e)?{}:{obj:e,k:Kr(r[i])}},Yr=(e,t,n)=>{let{obj:r,k:i}=Jr(e,t,Object);if(r!==void 0||t.length===1){r[i]=n;return}let a=t[t.length-1],o=t.slice(0,t.length-1),s=Jr(e,o,Object);for(;s.obj===void 0&&o.length;)a=`${o[o.length-1]}.${a}`,o=o.slice(0,o.length-1),s=Jr(e,o,Object),s?.obj&&s.obj[`${s.k}.${a}`]!==void 0&&(s.obj=void 0);s.obj[`${s.k}.${a}`]=n},Xr=(e,t,n,r)=>{let{obj:i,k:a}=Jr(e,t,Object);i[a]=i[a]||[],i[a].push(n)},Zr=(e,t)=>{let{obj:n,k:r}=Jr(e,t);if(n&&Object.prototype.hasOwnProperty.call(n,r))return n[r]},Qr=(e,t,n)=>{let r=Zr(e,n);return r===void 0?Zr(t,n):r},$r=(e,t,n)=>{for(let r in t)r!==`__proto__`&&r!==`constructor`&&(r in e?Vr(e[r])||e[r]instanceof String||Vr(t[r])||t[r]instanceof String?n&&(e[r]=t[r]):$r(e[r],t[r],n):e[r]=t[r]);return e},ei=e=>e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,`\\$&`),ti={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`,"/":`&#x2F;`},ni=e=>Vr(e)?e.replace(/[&<>"'\/]/g,e=>ti[e]):e,ri=class{constructor(e){this.capacity=e,this.regExpMap=new Map,this.regExpQueue=[]}getRegExp(e){let t=this.regExpMap.get(e);if(t!==void 0)return t;let n=new RegExp(e);return this.regExpQueue.length===this.capacity&&this.regExpMap.delete(this.regExpQueue.shift()),this.regExpMap.set(e,n),this.regExpQueue.push(e),n}},ii=[` `,`,`,`?`,`!`,`;`],ai=new ri(20),oi=(e,t,n)=>{t||=``,n||=``;let r=ii.filter(e=>!t.includes(e)&&!n.includes(e));if(r.length===0)return!0;let i=ai.getRegExp(`(${r.map(e=>e===`?`?`\\?`:e).join(`|`)})`),a=!i.test(e);if(!a){let t=e.indexOf(n);t>0&&!i.test(e.substring(0,t))&&(a=!0)}return a},si=(e,t,n=`.`)=>{if(!e)return;if(e[t])return Object.prototype.hasOwnProperty.call(e,t)?e[t]:void 0;let r=t.split(n),i=e;for(let e=0;e<r.length;){if(!i||typeof i!=`object`)return;let t,a=``;for(let o=e;o<r.length;++o)if(o!==e&&(a+=n),a+=r[o],t=i[a],t!==void 0){if([`string`,`number`,`boolean`].includes(typeof t)&&o<r.length-1)continue;e+=o-e+1;break}i=t}return i},ci=e=>e?.replace(/_/g,`-`),li={type:`logger`,log(e){this.output(`log`,e)},warn(e){this.output(`warn`,e)},error(e){this.output(`error`,e)},output(e,t){console?.[e]?.apply?.(console,t)}},ui=new class e{constructor(e,t={}){this.init(e,t)}init(e,t={}){this.prefix=t.prefix||`i18next:`,this.logger=e||li,this.options=t,this.debug=t.debug}log(...e){return this.forward(e,`log`,``,!0)}warn(...e){return this.forward(e,`warn`,``,!0)}error(...e){return this.forward(e,`error`,``)}deprecate(...e){return this.forward(e,`warn`,`WARNING DEPRECATED: `,!0)}forward(e,t,n,r){return r&&!this.debug?null:(e=e.map(e=>Vr(e)?e.replace(/[\r\n\x00-\x1F\x7F]/g,` `):e),Vr(e[0])&&(e[0]=`${n}${this.prefix} ${e[0]}`),this.logger[t](e))}create(t){return new e(this.logger,{prefix:`${this.prefix}:${t}:`,...this.options})}clone(t){return t||=this.options,t.prefix=t.prefix||this.prefix,new e(this.logger,t)}},di=class{constructor(){this.observers={}}on(e,t){return e.split(` `).forEach(e=>{this.observers[e]||(this.observers[e]=new Map);let n=this.observers[e].get(t)||0;this.observers[e].set(t,n+1)}),this}off(e,t){if(this.observers[e]){if(!t){delete this.observers[e];return}this.observers[e].delete(t)}}once(e,t){let n=(...r)=>{t(...r),this.off(e,n)};return this.on(e,n),this}emit(e,...t){this.observers[e]&&Array.from(this.observers[e].entries()).forEach(([e,n])=>{for(let r=0;r<n;r++)e(...t)}),this.observers[`*`]&&Array.from(this.observers[`*`].entries()).forEach(([n,r])=>{for(let i=0;i<r;i++)n(e,...t)})}},fi=class extends di{constructor(e,t={ns:[`translation`],defaultNS:`translation`}){super(),this.data=e||{},this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.options.ignoreJSONStructure===void 0&&(this.options.ignoreJSONStructure=!0)}addNamespaces(e){this.options.ns.includes(e)||this.options.ns.push(e)}removeNamespaces(e){let t=this.options.ns.indexOf(e);t>-1&&this.options.ns.splice(t,1)}getResource(e,t,n,r={}){let i=r.keySeparator===void 0?this.options.keySeparator:r.keySeparator,a=r.ignoreJSONStructure===void 0?this.options.ignoreJSONStructure:r.ignoreJSONStructure,o;e.includes(`.`)?o=e.split(`.`):(o=[e,t],n&&(Array.isArray(n)?o.push(...n):Vr(n)&&i?o.push(...n.split(i)):o.push(n)));let s=Zr(this.data,o);return!s&&!t&&!n&&e.includes(`.`)&&(e=o[0],t=o[1],n=o.slice(2).join(`.`)),s||!a||!Vr(n)?s:si(this.data?.[e]?.[t],n,i)}addResource(e,t,n,r,i={silent:!1}){let a=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,o=[e,t];n&&(o=o.concat(a?n.split(a):n)),e.includes(`.`)&&(o=e.split(`.`),r=t,t=o[1]),this.addNamespaces(t),Yr(this.data,o,r),i.silent||this.emit(`added`,e,t,n,r)}addResources(e,t,n,r={silent:!1}){for(let r in n)(Vr(n[r])||Array.isArray(n[r]))&&this.addResource(e,t,r,n[r],{silent:!0});r.silent||this.emit(`added`,e,t,n)}addResourceBundle(e,t,n,r,i,a={silent:!1,skipCopy:!1}){let o=[e,t];e.includes(`.`)&&(o=e.split(`.`),r=n,n=t,t=o[1]),this.addNamespaces(t);let s=Zr(this.data,o)||{};a.skipCopy||(n=JSON.parse(JSON.stringify(n))),r?$r(s,n,i):s={...s,...n},Yr(this.data,o,s),a.silent||this.emit(`added`,e,t,n)}removeResourceBundle(e,t){this.hasResourceBundle(e,t)&&delete this.data[e][t],this.removeNamespaces(t),this.emit(`removed`,e,t)}hasResourceBundle(e,t){return this.getResource(e,t)!==void 0}getResourceBundle(e,t){return t||=this.options.defaultNS,this.getResource(e,t)}getDataByLanguage(e){return this.data[e]}hasLanguageSomeTranslations(e){let t=this.getDataByLanguage(e);return!!(t&&Object.keys(t)||[]).find(e=>t[e]&&Object.keys(t[e]).length>0)}toJSON(){return this.data}},pi={processors:{},addPostProcessor(e){this.processors[e.name]=e},handle(e,t,n,r,i){return e.forEach(e=>{t=this.processors[e]?.process(t,n,r,i)??t}),t}},mi=Symbol(`i18next/PATH_KEY`);function hi(){let e=[],t=Object.create(null),n;return t.get=(r,i)=>(n?.revoke?.(),i===mi?e:(e.push(i),n=Proxy.revocable(r,t),n.proxy)),Proxy.revocable(Object.create(null),t).proxy}function gi(e,t){let{[mi]:n}=e(hi()),r=t?.keySeparator??`.`,i=t?.nsSeparator??`:`,a=t?.enableSelector===`strict`;if(n.length>1&&i){let e=t?.ns,o=a?Array.isArray(e)?e:e?[e]:null:Array.isArray(e)?e:null;if(o&&(a?o:o.length>1?o.slice(1):[]).includes(n[0]))return`${n[0]}${i}${n.slice(1).join(r)}`}return n.join(r)}var _i=e=>!Vr(e)&&typeof e!=`boolean`&&typeof e!=`number`,vi=class e extends di{constructor(e,t={}){super(),Wr([`resourceStore`,`languageUtils`,`pluralResolver`,`interpolator`,`backendConnector`,`i18nFormat`,`utils`],e,this),this.options=t,this.options.keySeparator===void 0&&(this.options.keySeparator=`.`),this.logger=ui.create(`translator`),this.checkedLoadedFor={}}changeLanguage(e){e&&(this.language=e)}exists(e,t={interpolation:{}}){let n={...t};if(e==null)return!1;let r=this.resolve(e,n);if(r?.res===void 0)return!1;let i=_i(r.res);return!(n.returnObjects===!1&&i)}extractFromKey(e,t){let n=t.nsSeparator===void 0?this.options.nsSeparator:t.nsSeparator;n===void 0&&(n=`:`);let r=t.keySeparator===void 0?this.options.keySeparator:t.keySeparator,i=t.ns||this.options.defaultNS||[],a=n&&e.includes(n),o=!this.options.userDefinedKeySeparator&&!t.keySeparator&&!this.options.userDefinedNsSeparator&&!t.nsSeparator&&!oi(e,n,r);if(a&&!o){let t=e.match(this.interpolator.nestingRegexp);if(t&&t.length>0)return{key:e,namespaces:Vr(i)?[i]:i};let a=e.split(n);(n!==r||n===r&&this.options.ns.includes(a[0]))&&(i=a.shift()),e=a.join(r)}return{key:e,namespaces:Vr(i)?[i]:i}}translate(t,n,r){let i=typeof n==`object`?{...n}:n;if(typeof i!=`object`&&this.options.overloadTranslationOptionHandler&&(i=this.options.overloadTranslationOptionHandler(arguments)),typeof i==`object`&&(i={...i}),i||={},t==null)return``;typeof t==`function`&&(t=gi(t,{...this.options,...i})),Array.isArray(t)||(t=[String(t)]),t=t.map(e=>typeof e==`function`?gi(e,{...this.options,...i}):String(e));let a=i.returnDetails===void 0?this.options.returnDetails:i.returnDetails,o=i.keySeparator===void 0?this.options.keySeparator:i.keySeparator,{key:s,namespaces:c}=this.extractFromKey(t[t.length-1],i),l=c[c.length-1],u=i.nsSeparator===void 0?this.options.nsSeparator:i.nsSeparator;u===void 0&&(u=`:`);let d=i.lng||this.language,f=i.appendNamespaceToCIMode||this.options.appendNamespaceToCIMode;if(d?.toLowerCase()===`cimode`)return f?a?{res:`${l}${u}${s}`,usedKey:s,exactUsedKey:s,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:`${l}${u}${s}`:a?{res:s,usedKey:s,exactUsedKey:s,usedLng:d,usedNS:l,usedParams:this.getUsedParamsDetails(i)}:s;let p=this.resolve(t,i),m=p?.res,h=p?.usedKey||s,g=p?.exactUsedKey||s,_=[`[object Number]`,`[object Function]`,`[object RegExp]`],v=i.joinArrays===void 0?this.options.joinArrays:i.joinArrays,y=!this.i18nFormat||this.i18nFormat.handleAsObject,b=i.count!==void 0&&!Vr(i.count),x=e.hasDefaultValue(i),S=b?this.pluralResolver.getSuffix(d,i.count,i):``,C=i.ordinal&&b?this.pluralResolver.getSuffix(d,i.count,{ordinal:!1}):``,w=b&&!i.ordinal&&i.count===0,T=w&&i[`defaultValue${this.options.pluralSeparator}zero`]||i[`defaultValue${S}`]||i[`defaultValue${C}`]||i.defaultValue,E=m;y&&!m&&x&&(E=T);let D=_i(E),O=Object.prototype.toString.apply(E);if(y&&E&&D&&!_.includes(O)&&!(Vr(v)&&Array.isArray(E))){if(!i.returnObjects&&!this.options.returnObjects){this.options.returnedObjectHandler||this.logger.warn(`accessing an object - but returnObjects options is not enabled!`);let e=this.options.returnedObjectHandler?this.options.returnedObjectHandler(h,E,{...i,ns:c}):`key '${s} (${this.language})' returned an object instead of string.`;return a?(p.res=e,p.usedParams=this.getUsedParamsDetails(i),p):e}if(o){let e=Array.isArray(E),t=e?[]:{},n=e?g:h;for(let e in E)if(Object.prototype.hasOwnProperty.call(E,e)){let r=`${n}${o}${e}`;x&&!m?t[e]=this.translate(r,{...i,defaultValue:_i(T)?T[e]:void 0,joinArrays:!1,ns:c}):t[e]=this.translate(r,{...i,joinArrays:!1,ns:c}),t[e]===r&&(t[e]=E[e])}m=t}}else if(y&&Vr(v)&&Array.isArray(m))m=m.join(v),m&&=this.extendTranslation(m,t,i,r);else{let e=!1,n=!1;!this.isValidLookup(m)&&x&&(e=!0,m=T),this.isValidLookup(m)||(n=!0,m=s);let a=(i.missingKeyNoValueFallbackToKey||this.options.missingKeyNoValueFallbackToKey)&&n?void 0:m,c=x&&T!==m&&this.options.updateMissing;if(n||e||c){if(this.logger.log(c?`updateKey`:`missingKey`,d,l,b&&!c?`${s}${this.pluralResolver.getSuffix(d,i.count,i)}`:s,c?T:m),o){let e=this.resolve(s,{...i,keySeparator:!1});e&&e.res&&this.logger.warn(`Seems the loaded translations were in flat JSON format instead of nested. Either set keySeparator: false on init or make sure your translations are published in nested format.`)}let e=[],t=this.languageUtils.getFallbackCodes(this.options.fallbackLng,i.lng||this.language);if(this.options.saveMissingTo===`fallback`&&t&&t[0])for(let n=0;n<t.length;n++)e.push(t[n]);else this.options.saveMissingTo===`all`?e=this.languageUtils.toResolveHierarchy(i.lng||this.language):e.push(i.lng||this.language);let n=(e,t,n)=>{let r=x&&n!==m?n:a;this.options.missingKeyHandler?this.options.missingKeyHandler(e,l,t,r,c,i):this.backendConnector?.saveMissing&&this.backendConnector.saveMissing(e,l,t,r,c,i),this.emit(`missingKey`,e,l,t,m)};this.options.saveMissing&&(this.options.saveMissingPlurals&&b?e.forEach(e=>{let t=this.pluralResolver.getSuffixes(e,i);w&&i[`defaultValue${this.options.pluralSeparator}zero`]&&!t.includes(`${this.options.pluralSeparator}zero`)&&t.push(`${this.options.pluralSeparator}zero`),t.forEach(t=>{n([e],s+t,i[`defaultValue${t}`]||T)})}):n(e,s,T))}m=this.extendTranslation(m,t,i,p,r),n&&m===s&&this.options.appendNamespaceToMissingKey&&(m=`${l}${u}${s}`),(n||e)&&this.options.parseMissingKeyHandler&&(m=this.options.parseMissingKeyHandler(this.options.appendNamespaceToMissingKey?`${l}${u}${s}`:s,e?m:void 0,i))}return a?(p.res=m,p.usedParams=this.getUsedParamsDetails(i),p):m}extendTranslation(e,t,n,r,i){if(this.i18nFormat?.parse)e=this.i18nFormat.parse(e,{...this.options.interpolation.defaultVariables,...n},n.lng||this.language||r.usedLng,r.usedNS,r.usedKey,{resolved:r});else if(!n.skipInterpolation){n.interpolation&&this.interpolator.init({...n,interpolation:{...this.options.interpolation,...n.interpolation}});let a=Vr(e)&&(n?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:n.interpolation.skipOnVariables),o;if(a){let t=e.match(this.interpolator.nestingRegexp);o=t&&t.length}let s=n.replace&&!Vr(n.replace)?n.replace:n;if(this.options.interpolation.defaultVariables&&(s={...this.options.interpolation.defaultVariables,...s}),e=this.interpolator.interpolate(e,s,n.lng||this.language||r.usedLng,n),a){let t=e.match(this.interpolator.nestingRegexp),r=t&&t.length;o<r&&(n.nest=!1)}!n.lng&&r&&r.res&&(n.lng=this.language||r.usedLng),n.nest!==!1&&(e=this.interpolator.nest(e,(...e)=>i?.[0]===e[0]&&!n.context?(this.logger.warn(`It seems you are nesting recursively key: ${e[0]} in key: ${t[0]}`),null):this.translate(...e,t),n)),n.interpolation&&this.interpolator.reset()}let a=n.postProcess||this.options.postProcess,o=Vr(a)?[a]:a;return e!=null&&o?.length&&n.applyPostProcessor!==!1&&(e=pi.handle(o,e,t,this.options&&this.options.postProcessPassResolved?{i18nResolved:{...r,usedParams:this.getUsedParamsDetails(n)},...n}:n,this)),e}resolve(e,t={}){let n,r,i,a,o;return Vr(e)&&(e=[e]),Array.isArray(e)&&(e=e.map(e=>typeof e==`function`?gi(e,{...this.options,...t}):e)),e.forEach(e=>{if(this.isValidLookup(n))return;let s=this.extractFromKey(e,t),c=s.key;r=c;let l=s.namespaces;this.options.fallbackNS&&(l=l.concat(this.options.fallbackNS));let u=t.count!==void 0&&!Vr(t.count),d=u&&!t.ordinal&&t.count===0,f=t.context!==void 0&&(Vr(t.context)||typeof t.context==`number`)&&t.context!==``,p=t.lngs?t.lngs:this.languageUtils.toResolveHierarchy(t.lng||this.language,t.fallbackLng);l.forEach(e=>{this.isValidLookup(n)||(o=e,!this.checkedLoadedFor[`${p[0]}-${e}`]&&this.utils?.hasLoadedNamespace&&!this.utils?.hasLoadedNamespace(o)&&(this.checkedLoadedFor[`${p[0]}-${e}`]=!0,this.logger.warn(`key "${r}" for languages "${p.join(`, `)}" won't get resolved as namespace "${o}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`)),p.forEach(r=>{if(this.isValidLookup(n))return;a=r;let o=[c];if(this.i18nFormat?.addLookupKeys)this.i18nFormat.addLookupKeys(o,c,r,e,t);else{let e;u&&(e=this.pluralResolver.getSuffix(r,t.count,t));let n=`${this.options.pluralSeparator}zero`,i=`${this.options.pluralSeparator}ordinal${this.options.pluralSeparator}`;if(u&&(t.ordinal&&e.startsWith(i)&&o.push(c+e.replace(i,this.options.pluralSeparator)),o.push(c+e),d&&o.push(c+n)),f){let r=`${c}${this.options.contextSeparator||`_`}${t.context}`;o.push(r),u&&(t.ordinal&&e.startsWith(i)&&o.push(r+e.replace(i,this.options.pluralSeparator)),o.push(r+e),d&&o.push(r+n))}}let s;for(;s=o.pop();)this.isValidLookup(n)||(i=s,n=this.getResource(r,e,s,t))}))})}),{res:n,usedKey:r,exactUsedKey:i,usedLng:a,usedNS:o}}isValidLookup(e){return e!==void 0&&!(!this.options.returnNull&&e===null)&&!(!this.options.returnEmptyString&&e===``)}getResource(e,t,n,r={}){return this.i18nFormat?.getResource?this.i18nFormat.getResource(e,t,n,r):this.resourceStore.getResource(e,t,n,r)}getUsedParamsDetails(e={}){let t=[`defaultValue`,`ordinal`,`context`,`replace`,`lng`,`lngs`,`fallbackLng`,`ns`,`keySeparator`,`nsSeparator`,`returnObjects`,`returnDetails`,`joinArrays`,`postProcess`,`interpolation`],n=e.replace&&!Vr(e.replace),r=n?e.replace:e;if(n&&e.count!==void 0&&(r.count=e.count),this.options.interpolation.defaultVariables&&(r={...this.options.interpolation.defaultVariables,...r}),!n){r={...r};for(let e of t)delete r[e]}return r}static hasDefaultValue(e){for(let t in e)if(Object.prototype.hasOwnProperty.call(e,t)&&t.startsWith(`defaultValue`)&&e[t]!==void 0)return!0;return!1}},yi=class{constructor(e){this.options=e,this.supportedLngs=this.options.supportedLngs||!1,this.logger=ui.create(`languageUtils`)}getScriptPartFromCode(e){if(e=ci(e),!e||!e.includes(`-`))return null;let t=e.split(`-`);return t.length===2||(t.pop(),t[t.length-1].toLowerCase()===`x`)?null:this.formatLanguageCode(t.join(`-`))}getLanguagePartFromCode(e){if(e=ci(e),!e||!e.includes(`-`))return e;let t=e.split(`-`);return this.formatLanguageCode(t[0])}formatLanguageCode(e){if(Vr(e)&&e.includes(`-`)){let t;try{t=Intl.getCanonicalLocales(e)[0]}catch{}return t&&this.options.lowerCaseLng&&(t=t.toLowerCase()),t||(this.options.lowerCaseLng?e.toLowerCase():e)}return this.options.cleanCode||this.options.lowerCaseLng?e.toLowerCase():e}isSupportedCode(e){return(this.options.load===`languageOnly`||this.options.nonExplicitSupportedLngs)&&(e=this.getLanguagePartFromCode(e)),!this.supportedLngs||!this.supportedLngs.length||this.supportedLngs.includes(e)}getBestMatchFromCodes(e){if(!e)return null;let t;return e.forEach(e=>{if(t)return;let n=this.formatLanguageCode(e);(!this.options.supportedLngs||this.isSupportedCode(n))&&(t=n)}),!t&&this.options.supportedLngs&&e.forEach(e=>{if(t)return;let n=this.getScriptPartFromCode(e);if(this.isSupportedCode(n))return t=n;let r=this.getLanguagePartFromCode(e);if(this.isSupportedCode(r))return t=r;t=this.options.supportedLngs.find(e=>e===r?!0:!e.includes(`-`)&&!r.includes(`-`)?!1:!!(e.includes(`-`)&&!r.includes(`-`)&&e.slice(0,e.indexOf(`-`))===r||e.startsWith(r)&&r.length>1))}),t||=this.getFallbackCodes(this.options.fallbackLng)[0],t}getFallbackCodes(e,t){if(!e)return[];if(typeof e==`function`&&(e=e(t)),Vr(e)&&(e=[e]),Array.isArray(e))return e;if(!t)return e.default||[];let n=e[t];return n||=e[this.getScriptPartFromCode(t)],n||=e[this.formatLanguageCode(t)],n||=e[this.getLanguagePartFromCode(t)],n||=e.default,n||[]}toResolveHierarchy(e,t){let n=this.getFallbackCodes((t===!1?[]:t)||this.options.fallbackLng||[],e),r=[],i=e=>{e&&(this.isSupportedCode(e)?r.push(e):this.logger.warn(`rejecting language code not found in supportedLngs: ${e}`))};return Vr(e)&&(e.includes(`-`)||e.includes(`_`))?(this.options.load!==`languageOnly`&&i(this.formatLanguageCode(e)),this.options.load!==`languageOnly`&&this.options.load!==`currentOnly`&&i(this.getScriptPartFromCode(e)),this.options.load!==`currentOnly`&&i(this.getLanguagePartFromCode(e))):Vr(e)&&i(this.formatLanguageCode(e)),n.forEach(e=>{r.includes(e)||i(this.formatLanguageCode(e))}),r}},bi={zero:0,one:1,two:2,few:3,many:4,other:5},xi={select:e=>e===1?`one`:`other`,resolvedOptions:()=>({pluralCategories:[`one`,`other`]})},Si=class{constructor(e,t={}){this.languageUtils=e,this.options=t,this.logger=ui.create(`pluralResolver`),this.pluralRulesCache={}}clearCache(){this.pluralRulesCache={}}getRule(e,t={}){let n=ci(e===`dev`?`en`:e),r=t.ordinal?`ordinal`:`cardinal`,i=JSON.stringify({cleanedCode:n,type:r});if(i in this.pluralRulesCache)return this.pluralRulesCache[i];let a;try{a=new Intl.PluralRules(n,{type:r})}catch{if(typeof Intl>`u`)return this.logger.error(`No Intl support, please use an Intl polyfill!`),xi;if(!e.match(/-|_/))return xi;let n=this.languageUtils.getLanguagePartFromCode(e);a=this.getRule(n,t)}return this.pluralRulesCache[i]=a,a}needsPlural(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?.resolvedOptions().pluralCategories.length>1}getPluralFormsOfKey(e,t,n={}){return this.getSuffixes(e,n).map(e=>`${t}${e}`)}getSuffixes(e,t={}){let n=this.getRule(e,t);return n||=this.getRule(`dev`,t),n?n.resolvedOptions().pluralCategories.sort((e,t)=>bi[e]-bi[t]).map(e=>`${this.options.prepend}${t.ordinal?`ordinal${this.options.prepend}`:``}${e}`):[]}getSuffix(e,t,n={}){let r=this.getRule(e,n);return r?`${this.options.prepend}${n.ordinal?`ordinal${this.options.prepend}`:``}${r.select(t)}`:(this.logger.warn(`no plural rule found for: ${e}`),this.getSuffix(`dev`,t,n))}},Ci=(e,t,n,r=`.`,i=!0)=>{let a=Qr(e,t,n);return!a&&i&&Vr(n)&&(a=si(e,n,r),a===void 0&&(a=si(t,n,r))),a},wi=e=>e.replace(/\$/g,`$$$$`),Ti=class{constructor(e={}){this.logger=ui.create(`interpolator`),this.options=e,this.format=e?.interpolation?.format||(e=>e),this.init(e)}init(e={}){e.interpolation||={escapeValue:!0};let{escape:t,escapeValue:n,useRawValueToEscape:r,prefix:i,prefixEscaped:a,suffix:o,suffixEscaped:s,formatSeparator:c,unescapeSuffix:l,unescapePrefix:u,nestingPrefix:d,nestingPrefixEscaped:f,nestingSuffix:p,nestingSuffixEscaped:m,nestingOptionsSeparator:h,maxReplaces:g,alwaysFormat:_}=e.interpolation;this.escape=t===void 0?ni:t,this.escapeValue=n===void 0?!0:n,this.useRawValueToEscape=r===void 0?!1:r,this.prefix=i?ei(i):a||`{{`,this.suffix=o?ei(o):s||`}}`,this.formatSeparator=c||`,`,this.unescapePrefix=l?``:u?ei(u):`-`,this.unescapeSuffix=this.unescapePrefix?``:l?ei(l):``,this.nestingPrefix=d?ei(d):f||ei(`$t(`),this.nestingSuffix=p?ei(p):m||ei(`)`),this.nestingOptionsSeparator=h||`,`,this.maxReplaces=g||1e3,this.alwaysFormat=_===void 0?!1:_,this.resetRegExp()}reset(){this.options&&this.init(this.options)}resetRegExp(){let e=(e,t)=>e?.source===t?(e.lastIndex=0,e):new RegExp(t,`g`);this.regexp=e(this.regexp,`${this.prefix}(.+?)${this.suffix}`),this.regexpUnescape=e(this.regexpUnescape,`${this.prefix}${this.unescapePrefix}(.+?)${this.unescapeSuffix}${this.suffix}`),this.nestingRegexp=e(this.nestingRegexp,`${this.nestingPrefix}((?:[^()"']+|"[^"]*"|'[^']*'|\\((?:[^()]|"[^"]*"|'[^']*')*\\))*?)${this.nestingSuffix}`)}interpolate(e,t,n,r){let i,a,o,s=this.options&&this.options.interpolation&&this.options.interpolation.defaultVariables||{},c=e=>{if(!e.includes(this.formatSeparator)){let i=Ci(t,s,e,this.options.keySeparator,this.options.ignoreJSONStructure);return this.alwaysFormat?this.format(i,void 0,n,{...r,...t,interpolationkey:e}):i}let i=e.split(this.formatSeparator),a=i.shift().trim(),o=i.join(this.formatSeparator).trim();return this.format(Ci(t,s,a,this.options.keySeparator,this.options.ignoreJSONStructure),o,n,{...r,...t,interpolationkey:a})};this.resetRegExp(),!this.escapeValue&&typeof e==`string`&&/\$t\([^)]*\{[^}]*\{\{/.test(e)&&this.logger.warn(`nesting options string contains interpolated variables with escapeValue: false — if any of those values are attacker-controlled they can inject additional nesting options (e.g. redirect lng/ns). Sanitise untrusted input before passing it to t(), or keep escapeValue: true.`);let l=r?.missingInterpolationHandler||this.options.missingInterpolationHandler,u=r?.interpolation?.skipOnVariables===void 0?this.options.interpolation.skipOnVariables:r.interpolation.skipOnVariables;return[{regex:this.regexpUnescape,safeValue:e=>wi(e)},{regex:this.regexp,safeValue:e=>this.escapeValue?wi(this.escape(e)):wi(e)}].forEach(t=>{for(o=0;i=t.regex.exec(e);){let n=i[1].trim();if(a=c(n),a===void 0)if(typeof l==`function`){let t=l(e,i,r);a=Vr(t)?t:``}else if(r&&Object.prototype.hasOwnProperty.call(r,n))a=``;else if(u){a=i[0];continue}else this.logger.warn(`missed to pass in variable ${n} for interpolating ${e}`),a=``;else !Vr(a)&&!this.useRawValueToEscape&&(a=Ur(a));let s=t.safeValue(a);if(e=e.replace(i[0],s),u?(t.regex.lastIndex+=a.length,t.regex.lastIndex-=i[0].length):t.regex.lastIndex=0,o++,o>=this.maxReplaces)break}}),e}nest(e,t,n={}){let r,i,a,o=(e,t)=>{let n=this.nestingOptionsSeparator;if(!e.includes(n))return e;let r=e.split(RegExp(`${ei(n)}[ ]*{`)),i=`{${r[1]}`;e=r[0],i=this.interpolate(i,a);let o=i.match(/'/g),s=i.match(/"/g);((o?.length??0)%2==0&&!s||(s?.length??0)%2!=0)&&(i=i.replace(/'/g,`"`));try{a=JSON.parse(i),t&&(a={...t,...a})}catch(t){return this.logger.warn(`failed parsing options string in nesting for key ${e}`,t),`${e}${n}${i}`}return a.defaultValue&&a.defaultValue.includes(this.prefix)&&delete a.defaultValue,e};for(;r=this.nestingRegexp.exec(e);){let s=[];a={...n},a=a.replace&&!Vr(a.replace)?a.replace:a,a.applyPostProcessor=!1,delete a.defaultValue;let c=/{.*}/.test(r[1])?r[1].lastIndexOf(`}`)+1:r[1].indexOf(this.formatSeparator);if(c!==-1&&(s=r[1].slice(c).split(this.formatSeparator).map(e=>e.trim()).filter(Boolean),r[1]=r[1].slice(0,c)),i=t(o.call(this,r[1].trim(),a),a),i&&r[0]===e&&!Vr(i))return i;Vr(i)||(i=Ur(i)),i||=(this.logger.warn(`missed to resolve ${r[1]} for nesting ${e}`),``),s.length&&(i=s.reduce((e,t)=>this.format(e,t,n.lng,{...n,interpolationkey:r[1].trim()}),i.trim())),e=e.replace(r[0],i),this.regexp.lastIndex=0}return e}},Ei=e=>{let t=e.toLowerCase().trim(),n={};if(e.includes(`(`)){let r=e.split(`(`);t=r[0].toLowerCase().trim();let i=r[1].slice(0,-1);t===`currency`&&!i.includes(`:`)?n.currency||=i.trim():t===`relativetime`&&!i.includes(`:`)?n.range||=i.trim():i.split(`;`).forEach(e=>{if(e){let[t,...r]=e.split(`:`),i=r.join(`:`).trim().replace(/^'+|'+$/g,``),a=t.trim();n[a]||(n[a]=i),i===`false`&&(n[a]=!1),i===`true`&&(n[a]=!0),isNaN(i)||(n[a]=parseInt(i,10))}})}return{formatName:t,formatOptions:n}},Di=e=>{let t={};return(n,r,i)=>{let a=i;i&&i.interpolationkey&&i.formatParams&&i.formatParams[i.interpolationkey]&&i[i.interpolationkey]&&(a={...a,[i.interpolationkey]:void 0});let o=r+JSON.stringify(a),s=t[o];return s||(s=e(ci(r),i),t[o]=s),s(n)}},Oi=e=>(t,n,r)=>e(ci(n),r)(t),ki=class{constructor(e={}){this.logger=ui.create(`formatter`),this.options=e,this.init(e)}init(e,t={interpolation:{}}){this.formatSeparator=t.interpolation.formatSeparator||`,`;let n=t.cacheInBuiltFormats?Di:Oi;this.formats={number:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t});return e=>n.format(e)}),currency:n((e,t)=>{let n=new Intl.NumberFormat(e,{...t,style:`currency`});return e=>n.format(e)}),datetime:n((e,t)=>{let n=new Intl.DateTimeFormat(e,{...t});return e=>n.format(e)}),relativetime:n((e,t)=>{let n=new Intl.RelativeTimeFormat(e,{...t});return e=>n.format(e,t.range||`day`)}),list:n((e,t)=>{let n=new Intl.ListFormat(e,{...t});return e=>n.format(e)})}}add(e,t){this.formats[e.toLowerCase().trim()]=t}addCached(e,t){this.formats[e.toLowerCase().trim()]=Di(t)}format(e,t,n,r={}){if(!t||e==null)return e;let i=t.split(this.formatSeparator);if(i.length>1&&i[0].indexOf(`(`)>1&&!i[0].includes(`)`)&&i.find(e=>e.includes(`)`))){let e=i.findIndex(e=>e.includes(`)`));i[0]=[i[0],...i.splice(1,e)].join(this.formatSeparator)}return i.reduce((e,t)=>{let{formatName:i,formatOptions:a}=Ei(t);if(this.formats[i]){let t=e;try{let o=r?.formatParams?.[r.interpolationkey]||{},s=o.locale||o.lng||r.locale||r.lng||n;t=this.formats[i](e,s,{...a,...r,...o})}catch(e){this.logger.warn(e)}return t}else this.logger.warn(`there was no format function for ${i}`);return e},e)}},Ai=(e,t)=>{e.pending[t]!==void 0&&(delete e.pending[t],e.pendingCount--)},ji=class extends di{constructor(e,t,n,r={}){super(),this.backend=e,this.store=t,this.services=n,this.languageUtils=n.languageUtils,this.options=r,this.logger=ui.create(`backendConnector`),this.waitingReads=[],this.maxParallelReads=r.maxParallelReads||10,this.readingCalls=0,this.maxRetries=r.maxRetries>=0?r.maxRetries:5,this.retryTimeout=r.retryTimeout>=1?r.retryTimeout:350,this.state={},this.queue=[],this.backend?.init?.(n,r.backend,r)}queueLoad(e,t,n,r){let i={},a={},o={},s={};return e.forEach(e=>{let r=!0;t.forEach(t=>{let o=`${e}|${t}`;!n.reload&&this.store.hasResourceBundle(e,t)?this.state[o]=2:this.state[o]<0||(this.state[o]===1?a[o]===void 0&&(a[o]=!0):(this.state[o]=1,r=!1,a[o]===void 0&&(a[o]=!0),i[o]===void 0&&(i[o]=!0),s[t]===void 0&&(s[t]=!0)))}),r||(o[e]=!0)}),(Object.keys(i).length||Object.keys(a).length)&&this.queue.push({pending:a,pendingCount:Object.keys(a).length,loaded:{},errors:[],callback:r}),{toLoad:Object.keys(i),pending:Object.keys(a),toLoadLanguages:Object.keys(o),toLoadNamespaces:Object.keys(s)}}loaded(e,t,n){let r=e.split(`|`),i=r[0],a=r[1];t&&this.emit(`failedLoading`,i,a,t),!t&&n&&this.store.addResourceBundle(i,a,n,void 0,void 0,{skipCopy:!0}),this.state[e]=t?-1:2,t&&n&&(this.state[e]=0);let o={};this.queue.forEach(n=>{Xr(n.loaded,[i],a),Ai(n,e),t&&n.errors.push(t),n.pendingCount===0&&!n.done&&(Object.keys(n.loaded).forEach(e=>{o[e]||(o[e]={});let t=n.loaded[e];t.length&&t.forEach(t=>{o[e][t]===void 0&&(o[e][t]=!0)})}),n.done=!0,n.errors.length?n.callback(n.errors):n.callback())}),this.emit(`loaded`,o),this.queue=this.queue.filter(e=>!e.done)}read(e,t,n,r=0,i=this.retryTimeout,a){if(!e.length)return a(null,{});if(this.readingCalls>=this.maxParallelReads){this.waitingReads.push({lng:e,ns:t,fcName:n,tried:r,wait:i,callback:a});return}this.readingCalls++;let o=(o,s)=>{if(this.readingCalls--,this.waitingReads.length>0){let e=this.waitingReads.shift();this.read(e.lng,e.ns,e.fcName,e.tried,e.wait,e.callback)}if(o&&s&&r<this.maxRetries){setTimeout(()=>{this.read(e,t,n,r+1,i*2,a)},i);return}a(o,s)},s=this.backend[n].bind(this.backend);if(s.length===2){try{let n=s(e,t);n&&typeof n.then==`function`?n.then(e=>o(null,e)).catch(o):o(null,n)}catch(e){o(e)}return}return s(e,t,o)}prepareLoading(e,t,n={},r){if(!this.backend)return this.logger.warn(`No backend was added via i18next.use. Will not load resources.`),r&&r();Vr(e)&&(e=this.languageUtils.toResolveHierarchy(e)),Vr(t)&&(t=[t]);let i=this.queueLoad(e,t,n,r);if(!i.toLoad.length)return i.pending.length||r(),null;i.toLoad.forEach(e=>{this.loadOne(e)})}load(e,t,n){this.prepareLoading(e,t,{},n)}reload(e,t,n){this.prepareLoading(e,t,{reload:!0},n)}loadOne(e,t=``){let n=e.split(`|`),r=n[0],i=n[1];this.read(r,i,`read`,void 0,void 0,(n,a)=>{n&&this.logger.warn(`${t}loading namespace ${i} for language ${r} failed`,n),!n&&a&&this.logger.log(`${t}loaded namespace ${i} for language ${r}`,a),this.loaded(e,n,a)})}saveMissing(e,t,n,r,i,a={},o=()=>{}){if(this.services?.utils?.hasLoadedNamespace&&!this.services?.utils?.hasLoadedNamespace(t)){this.logger.warn(`did not save key "${n}" as the namespace "${t}" was not yet loaded`,`This means something IS WRONG in your setup. You access the t function before i18next.init / i18next.loadNamespace / i18next.changeLanguage was done. Wait for the callback or Promise to resolve before accessing it!!!`);return}if(!(n==null||n===``)){if(this.backend?.create){let s={...a,isUpdate:i},c=this.backend.create.bind(this.backend);if(c.length<6)try{let i;i=c.length===5?c(e,t,n,r,s):c(e,t,n,r),i&&typeof i.then==`function`?i.then(e=>o(null,e)).catch(o):o(null,i)}catch(e){o(e)}else c(e,t,n,r,o,s)}!e||!e[0]||this.store.addResource(e[0],t,n,r)}}},Mi=()=>({debug:!1,initAsync:!0,ns:[`translation`],defaultNS:[`translation`],fallbackLng:[`dev`],fallbackNS:!1,supportedLngs:!1,nonExplicitSupportedLngs:!1,load:`all`,preload:!1,keySeparator:`.`,nsSeparator:`:`,pluralSeparator:`_`,contextSeparator:`_`,enableSelector:!1,partialBundledLanguages:!1,saveMissing:!1,updateMissing:!1,saveMissingTo:`fallback`,saveMissingPlurals:!0,missingKeyHandler:!1,missingInterpolationHandler:!1,postProcess:!1,postProcessPassResolved:!1,returnNull:!1,returnEmptyString:!0,returnObjects:!1,joinArrays:!1,returnedObjectHandler:!1,parseMissingKeyHandler:!1,appendNamespaceToMissingKey:!1,appendNamespaceToCIMode:!1,overloadTranslationOptionHandler:e=>{let t={};if(typeof e[1]==`object`&&(t=e[1]),Vr(e[1])&&(t.defaultValue=e[1]),Vr(e[2])&&(t.tDescription=e[2]),typeof e[2]==`object`||typeof e[3]==`object`){let n=e[3]||e[2];Object.keys(n).forEach(e=>{t[e]=n[e]})}return t},interpolation:{escapeValue:!0,prefix:`{{`,suffix:`}}`,formatSeparator:`,`,unescapePrefix:`-`,nestingPrefix:`$t(`,nestingSuffix:`)`,nestingOptionsSeparator:`,`,maxReplaces:1e3,skipOnVariables:!0},cacheInBuiltFormats:!0}),Ni=e=>(Vr(e.ns)&&(e.ns=[e.ns]),Vr(e.fallbackLng)&&(e.fallbackLng=[e.fallbackLng]),Vr(e.fallbackNS)&&(e.fallbackNS=[e.fallbackNS]),e.supportedLngs&&!e.supportedLngs.includes(`cimode`)&&(e.supportedLngs=e.supportedLngs.concat([`cimode`])),e),Pi=()=>{},Fi=e=>{Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(t=>{typeof e[t]==`function`&&(e[t]=e[t].bind(e))})},Ii=class e extends di{constructor(e={},t){if(super(),this.options=Ni(e),this.services={},this.logger=ui,this.modules={external:[]},Fi(this),t&&!this.isInitialized&&!e.isClone){if(!this.options.initAsync)return this.init(e,t),this;setTimeout(()=>{this.init(e,t)},0)}}init(e={},t){this.isInitializing=!0,typeof e==`function`&&(t=e,e={}),e.defaultNS==null&&e.ns&&(Vr(e.ns)?e.defaultNS=e.ns:e.ns.includes(`translation`)||(e.defaultNS=e.ns[0]));let n=Mi();this.options={...n,...this.options,...Ni(e)},this.options.interpolation={...n.interpolation,...this.options.interpolation},e.keySeparator!==void 0&&(this.options.userDefinedKeySeparator=e.keySeparator),e.nsSeparator!==void 0&&(this.options.userDefinedNsSeparator=e.nsSeparator),typeof this.options.overloadTranslationOptionHandler!=`function`&&(this.options.overloadTranslationOptionHandler=n.overloadTranslationOptionHandler);let r=e=>e?typeof e==`function`?new e:e:null;if(!this.options.isClone){this.modules.logger?ui.init(r(this.modules.logger),this.options):ui.init(null,this.options);let e;e=this.modules.formatter?this.modules.formatter:ki;let t=new yi(this.options);this.store=new fi(this.options.resources,this.options);let n=this.services;n.logger=ui,n.resourceStore=this.store,n.languageUtils=t,n.pluralResolver=new Si(t,{prepend:this.options.pluralSeparator}),e&&(n.formatter=r(e),n.formatter.init&&n.formatter.init(n,this.options),this.options.interpolation.format=n.formatter.format.bind(n.formatter)),n.interpolator=new Ti(this.options),n.utils={hasLoadedNamespace:this.hasLoadedNamespace.bind(this)},n.backendConnector=new ji(r(this.modules.backend),n.resourceStore,n,this.options),n.backendConnector.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.languageDetector&&(n.languageDetector=r(this.modules.languageDetector),n.languageDetector.init&&n.languageDetector.init(n,this.options.detection,this.options)),this.modules.i18nFormat&&(n.i18nFormat=r(this.modules.i18nFormat),n.i18nFormat.init&&n.i18nFormat.init(this)),this.translator=new vi(this.services,this.options),this.translator.on(`*`,(e,...t)=>{this.emit(e,...t)}),this.modules.external.forEach(e=>{e.init&&e.init(this)})}if(this.format=this.options.interpolation.format,t||=Pi,this.options.fallbackLng&&!this.services.languageDetector&&!this.options.lng){let e=this.services.languageUtils.getFallbackCodes(this.options.fallbackLng);e.length>0&&e[0]!==`dev`&&(this.options.lng=e[0])}!this.services.languageDetector&&!this.options.lng&&this.logger.warn(`init: no languageDetector is used and no lng is defined`),[`getResource`,`hasResourceBundle`,`getResourceBundle`,`getDataByLanguage`].forEach(e=>{this[e]=(...t)=>this.store[e](...t)}),[`addResource`,`addResources`,`addResourceBundle`,`removeResourceBundle`].forEach(e=>{this[e]=(...t)=>(this.store[e](...t),this)});let i=Hr(),a=()=>{let e=(e,n)=>{this.isInitializing=!1,this.isInitialized&&!this.initializedStoreOnce&&this.logger.warn(`init: i18next is already initialized. You should call init just once!`),this.isInitialized=!0,this.options.isClone||this.logger.log(`initialized`,this.options),this.emit(`initialized`,this.options),i.resolve(n),t(e,n)};if((this.languages||this.isLanguageChangingTo)&&!this.isInitialized)return e(null,this.t.bind(this));this.changeLanguage(this.options.lng,e)};return this.options.resources||!this.options.initAsync?a():setTimeout(a,0),i}loadResources(e,t=Pi){let n=t,r=Vr(e)?e:this.language;if(typeof e==`function`&&(n=e),!this.options.resources||this.options.partialBundledLanguages){if(r?.toLowerCase()===`cimode`&&(!this.options.preload||this.options.preload.length===0))return n();let e=[],t=t=>{t&&t!==`cimode`&&this.services.languageUtils.toResolveHierarchy(t).forEach(t=>{t!==`cimode`&&(e.includes(t)||e.push(t))})};r?t(r):this.services.languageUtils.getFallbackCodes(this.options.fallbackLng).forEach(e=>t(e)),this.options.preload?.forEach?.(e=>t(e)),this.services.backendConnector.load(e,this.options.ns,e=>{!e&&!this.resolvedLanguage&&this.language&&this.setResolvedLanguage(this.language),n(e)})}else n(null)}reloadResources(e,t,n){let r=Hr();return typeof e==`function`&&(n=e,e=void 0),typeof t==`function`&&(n=t,t=void 0),e||=this.languages,t||=this.options.ns,n||=Pi,this.services.backendConnector.reload(e,t,e=>{r.resolve(),n(e)}),r}use(e){if(!e)throw Error(`You are passing an undefined module! Please check the object you are passing to i18next.use()`);if(!e.type)throw Error(`You are passing a wrong module! Please check the object you are passing to i18next.use()`);return e.type===`backend`&&(this.modules.backend=e),(e.type===`logger`||e.log&&e.warn&&e.error)&&(this.modules.logger=e),e.type===`languageDetector`&&(this.modules.languageDetector=e),e.type===`i18nFormat`&&(this.modules.i18nFormat=e),e.type===`postProcessor`&&pi.addPostProcessor(e),e.type===`formatter`&&(this.modules.formatter=e),e.type===`3rdParty`&&this.modules.external.push(e),this}setResolvedLanguage(e){if(!(!e||!this.languages)&&![`cimode`,`dev`].includes(e)){for(let e=0;e<this.languages.length;e++){let t=this.languages[e];if(![`cimode`,`dev`].includes(t)&&this.store.hasLanguageSomeTranslations(t)){this.resolvedLanguage=t;break}}!this.resolvedLanguage&&!this.languages.includes(e)&&this.store.hasLanguageSomeTranslations(e)&&(this.resolvedLanguage=e,this.languages.unshift(e))}}changeLanguage(e,t){this.isLanguageChangingTo=e;let n=Hr();this.emit(`languageChanging`,e);let r=e=>{this.language=e,this.languages=this.services.languageUtils.toResolveHierarchy(e),this.resolvedLanguage=void 0,this.setResolvedLanguage(e)},i=(i,a)=>{a?this.isLanguageChangingTo===e&&(r(a),this.translator.changeLanguage(a),this.isLanguageChangingTo=void 0,this.emit(`languageChanged`,a),this.logger.log(`languageChanged`,a)):this.isLanguageChangingTo=void 0,n.resolve((...e)=>this.t(...e)),t&&t(i,(...e)=>this.t(...e))},a=t=>{!e&&!t&&this.services.languageDetector&&(t=[]);let n=Vr(t)?t:t&&t[0],a=this.store.hasLanguageSomeTranslations(n)?n:this.services.languageUtils.getBestMatchFromCodes(Vr(t)?[t]:t);a&&(this.language||r(a),this.translator.language||this.translator.changeLanguage(a),this.services.languageDetector?.cacheUserLanguage?.(a)),this.loadResources(a,e=>{i(e,a)})};return!e&&this.services.languageDetector&&!this.services.languageDetector.async?a(this.services.languageDetector.detect()):!e&&this.services.languageDetector&&this.services.languageDetector.async?this.services.languageDetector.detect.length===0?this.services.languageDetector.detect().then(a):this.services.languageDetector.detect(a):a(e),n}getFixedT(e,t,n,r){let i=r?.scopeNs,a=(e,t,...r)=>{let o;o=typeof t==`object`?{...t}:this.options.overloadTranslationOptionHandler([e,t].concat(r)),o.lng=o.lng||a.lng,o.lngs=o.lngs||a.lngs;let s=o.ns!==void 0&&o.ns!==null;o.ns=o.ns||a.ns,o.keyPrefix!==``&&(o.keyPrefix=o.keyPrefix||n||a.keyPrefix);let c={...this.options,...o};Array.isArray(i)&&!s&&(c.ns=i),typeof o.keyPrefix==`function`&&(o.keyPrefix=gi(o.keyPrefix,c));let l=this.options.keySeparator||`.`,u;return o.keyPrefix&&Array.isArray(e)?u=e.map(e=>(typeof e==`function`&&(e=gi(e,c)),`${o.keyPrefix}${l}${e}`)):(typeof e==`function`&&(e=gi(e,c)),u=o.keyPrefix?`${o.keyPrefix}${l}${e}`:e),this.t(u,o)};return Vr(e)?a.lng=e:a.lngs=e,a.ns=t,a.keyPrefix=n,a}t(...e){return this.translator?.translate(...e)}exists(...e){return this.translator?.exists(...e)}setDefaultNamespace(e){this.options.defaultNS=e}hasLoadedNamespace(e,t={}){if(!this.isInitialized)return this.logger.warn(`hasLoadedNamespace: i18next was not initialized`,this.languages),!1;if(!this.languages||!this.languages.length)return this.logger.warn(`hasLoadedNamespace: i18n.languages were undefined or empty`,this.languages),!1;let n=t.lng||this.resolvedLanguage||this.languages[0],r=this.options?this.options.fallbackLng:!1,i=this.languages[this.languages.length-1];if(n.toLowerCase()===`cimode`)return!0;let a=(e,t)=>{let n=this.services.backendConnector.state[`${e}|${t}`];return n===-1||n===0||n===2};if(t.precheck){let e=t.precheck(this,a);if(e!==void 0)return e}return!!(this.hasResourceBundle(n,e)||!this.services.backendConnector.backend||this.options.resources&&!this.options.partialBundledLanguages||a(n,e)&&(!r||a(i,e)))}loadNamespaces(e,t){let n=Hr();return this.options.ns?(Vr(e)&&(e=[e]),e.forEach(e=>{this.options.ns.includes(e)||this.options.ns.push(e)}),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}loadLanguages(e,t){let n=Hr();Vr(e)&&(e=[e]);let r=this.options.preload||[],i=e.filter(e=>!r.includes(e)&&this.services.languageUtils.isSupportedCode(e));return i.length?(this.options.preload=r.concat(i),this.loadResources(e=>{n.resolve(),t&&t(e)}),n):(t&&t(),Promise.resolve())}dir(e){if(e||=this.resolvedLanguage||(this.languages?.length>0?this.languages[0]:this.language),!e)return`rtl`;try{let t=new Intl.Locale(e);if(t&&t.getTextInfo){let e=t.getTextInfo();if(e&&e.direction)return e.direction}}catch{}let t=`ar.shu.sqr.ssh.xaa.yhd.yud.aao.abh.abv.acm.acq.acw.acx.acy.adf.ads.aeb.aec.afb.ajp.apc.apd.arb.arq.ars.ary.arz.auz.avl.ayh.ayl.ayn.ayp.bbz.pga.he.iw.ps.pbt.pbu.pst.prp.prd.ug.ur.ydd.yds.yih.ji.yi.hbo.men.xmn.fa.jpr.peo.pes.prs.dv.sam.ckb`.split(`.`),n=this.services?.languageUtils||new yi(Mi());return e.toLowerCase().indexOf(`-latn`)>1?`ltr`:t.includes(n.getLanguagePartFromCode(e))||e.toLowerCase().indexOf(`-arab`)>1?`rtl`:`ltr`}static createInstance(t={},n){let r=new e(t,n);return r.createInstance=e.createInstance,r}cloneInstance(t={},n=Pi){let r=t.forkResourceStore;r&&delete t.forkResourceStore;let i={...this.options,...t,isClone:!0},a=new e(i);if((t.debug!==void 0||t.prefix!==void 0)&&(a.logger=a.logger.clone(t)),[`store`,`services`,`language`].forEach(e=>{a[e]=this[e]}),a.services={...this.services},a.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},r&&(a.store=new fi(Object.keys(this.store.data).reduce((e,t)=>(e[t]={...this.store.data[t]},e[t]=Object.keys(e[t]).reduce((n,r)=>(n[r]={...e[t][r]},n),e[t]),e),{}),i),a.services.resourceStore=a.store),t.interpolation){let e={...Mi().interpolation,...this.options.interpolation,...t.interpolation},n={...i,interpolation:e};a.services.interpolator=new Ti(n)}return a.translator=new vi(a.services,i),a.translator.on(`*`,(e,...t)=>{a.emit(e,...t)}),a.init(i,n),a.translator.options=i,a.translator.backendConnector.services.utils={hasLoadedNamespace:a.hasLoadedNamespace.bind(a)},a}toJSON(){return{options:this.options,store:this.store,language:this.language,languages:this.languages,resolvedLanguage:this.resolvedLanguage}}}.createInstance();Ii.createInstance,Ii.dir,Ii.init,Ii.loadResources,Ii.reloadResources,Ii.use,Ii.changeLanguage,Ii.getFixedT,Ii.t,Ii.exists,Ii.setDefaultNamespace,Ii.hasLoadedNamespace,Ii.loadNamespaces,Ii.loadLanguages;var Li={common:{loading:`Завантаження…`,saving:`Збереження…`,error:`Помилка`,back:`Назад`,yes:`Так`,no:`Ні`,notFound:`Тип не знайдено`,daysUnit:`дн.`,peopleUnit:`ос.`,empty:`Немає записів`},actions:{new:`Новий`,addFirst:`Додати перший запис`,edit:`Редагувати`,editAll:`Редагувати все`,save:`Зберегти`,create:`Створити`,cancel:`Скасувати`,confirmDelete:`Видалити цей запис?`,delete:`Видалити`,upload:`Завантажити`,replace:`Замінити`,confirmDeletePhoto:`Видалити фото?`,add:`Додати`,actionSuccess:`Готово`,actionError:`Помилка`,actionNotFound:`Дію не зареєстровано`,notice:`Повідомлення`},save:{saving:`Збереження…`,done:`Збережено`,failed:`Не вдалося зберегти`},upload:{tooLarge:`Файл завеликий (макс. 25 МБ)`,failed:`Не вдалося завантажити`},geo:{searchPlaceholder:`Пошук адреси…`,search:`Знайти`,myLocation:`Моє місцеположення`,label:`Підпис`,pick:`Обрати місце`},embed:{open:`Відкрити`,pastePlaceholder:`Вставте URL…`,resolveFailed:`Не вдалося завантажити прев'ю`},reminder:{today:`сьогодні`,inDays:`через {{days}} дн`,overdue:`прострочено {{days}} дн`},nav:{selectType:`Оберіть тип у меню`,plugins:`Плагіни`,home:`Головна`,search:`Пошук`,browse:`Огляд`,settings:`Налаштування`},dashboard:{title:`Головна`,empty:`Немає активних модулів`},settings:{title:`Налаштування`,appearance:`Вигляд`,theme:`Тема`,language:`Мова`,systemTitle:`Система`,systemDescription:`Налаштування всієї системи.`,personalTitle:`Особисте`,usersTitle:`Користувачі`,usersDescription:`Керування всіма акаунтами інстансу.`},theme:{label:`Тема`,auto:`Авто`,light:`Світла`,dark:`Темна`,eink:`E-ink`},group:{title:`Групування`,field:`Поле`,all:`Всі записи`,noValue:`Без значення`,yes:`Так`,no:`Ні`},plugins:{title:`Плагіни`,description:`Увімкнення, вимкнення та видалення даних плагінів.`,loading:`Завантаження…`,restartBannerBefore:`Зміни застосуються після `,restartBannerBold:`рестарту сервера`,restartBannerAfter:` (набір активних плагінів читається на старті).`,confirmPurge:`Видалити ВСІ дані плагіна «{{id}}»? Таблиці буде дропнуто безповоротно.`,genericError:`Помилка: {{code}}`,purgeButton:`Видалити дані`,purgeTitle:`Видалити всі дані плагіна (безповоротно)`,switchDisable:`Вимкнути`,switchEnable:`Увімкнути`,blockedByDependents:`Не можна вимкнути: від нього залежать увімкнені плагіни — {{list}}`,metaDepends:`залежить:`,metaVaults:`сховища:`,metaExtends:`розширення:`,updateButton:`Оновити`,updateTitle:`Оновити з v{{from}} до v{{to}}`,confirmUpdate:`Оновити плагін «{{id}}» з v{{from}} до v{{to}}? Сервер перезапуститься одразу після встановлення — переконайтесь, що він працює під process-manager'ом (systemd/pm2/docker), який автоматично його підніме. Рекомендовано зробити резервну копію бази даних заздалегідь.`,updateError:`Оновлення не вдалося`,updateAllButton:`Оновити все ({{count}})`,confirmUpdateAll:`Оновити {{count}} плагін(ів)?
220
+
221
+ {{list}}
222
+
223
+ Сервер перезапуститься одразу після встановлення — переконайтесь, що він працює під process-manager'ом (systemd/pm2/docker), який автоматично його підніме. Рекомендовано зробити резервну копію бази даних заздалегідь.`,errors:{core_required:`Плагін core вимкнути не можна.`,has_dependents:`Від нього залежать увімкнені: {{list}}.`,missing_deps:`Спершу увімкни залежності: {{list}}.`,unknown_plugin:`Невідомий плагін.`}},auth:{loginTitle:`Вхід`,setupTitle:`Створити першого адміністратора`,login:`Логін`,password:`Пароль`,displayName:`Ім'я`,signIn:`Увійти`,createAccount:`Створити акаунт`,invalidCredentials:`Невірний логін або пароль.`,genericError:`Щось пішло не так.`,accountTitle:`Мій акаунт`,fieldDisplayName:`Ім'я`,fieldLogin:`Логін`,fieldPasswordOptional:`Новий пароль (лишіть порожнім, щоб не міняти)`,tokensTitle:`API-токени`,tokenNamePlaceholder:`Назва токена (напр. "agent")`,tokenCreate:`Створити токен`,tokenCreatedOnce:`Скопіюйте токен зараз — більше він не покажеться:`,tokenRevoke:`Відкликати`,tokenConfirmRevoke:`Відкликати цей токен? Усе, що його використовує, перестане працювати.`,usersTitle:`Користувачі`,addUser:`Додати користувача`,roleAdmin:`Адмін`,roleMember:`Учасник`,fieldRole:`Роль`,fieldDisabled:`Вимкнено`,userCreateTitle:`Новий користувач`,lastAdminError:`Не можна прибрати останнього адміна.`},form:{serverRejected:`Сервер відхилив:`,createTitle:`Новий — {{label}}`,editTitle:`Редагувати — {{label}}`,mdPlaceholder:`Текст у форматі Markdown…`,photo:`+ Фото`,properties:`Властивості`,keyPlaceholder:`ключ`,valuePlaceholderShort:`значення`,addProperty:`Властивість`,days:`дн`,hours:`год`,minutes:`хв`,seconds:`с`,addTag:`Додати тег…`,addRow:`+ Додати рядок`,search:`Пошук…`,loading:`Завантаження…`,loadError:`Помилка завантаження`,noRecords:`Немає записів`,addRecord:`+ Додати…`,addItem:`+ Додати пункт`},list:{empty:`Поки порожньо`,searchPlaceholder:`Пошук…`,sortBy:`Сортувати за`,sortNone:`Без сортування`,asc:`За зростанням`,desc:`За спаданням`,peopleCount_one:`{{count}} ос.`,peopleCount_few:`{{count}} ос.`,peopleCount_many:`{{count}} ос.`,peopleCount_other:`{{count}} ос.`,pairsCount_one:`{{count}} пара`,pairsCount_few:`{{count}} пари`,pairsCount_many:`{{count}} пар`,pairsCount_other:`{{count}} пар`},search:{title:`Глобальний пошук`,placeholder:`Пошук модулів і записів…`,allModules:`Усі модулі`,results:`Результати`,noResults:`Нічого не знайдено`},record:{count_one:`{{count}} запис`,count_few:`{{count}} записи`,count_many:`{{count}} записів`,count_other:`{{count}} записів`,hide:`Сховати`,show:`Показати`},extend:{shownWhen:`Показується коли:`},weekdaysShort:[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Нд`],lang:{uk:`Українська`,ru:`Русский`,en:`English`},validation:{required:`обов'язкове поле`,invalid_type:`неприпустимий тип значення`,min_length:`мінімум {{min}} симв.`,max_length:`максимум {{max}} симв.`,pattern:`неприпустимий формат`,email:`некоректна email-адреса`,min:`не менше {{min}}`,max:`не більше {{max}}`,int:`має бути цілим`,date_format:`формат YYYY-MM-DD`,date_min:`не раніше {{min}}`,date_max:`не пізніше {{max}}`,enum:`оберіть зі списку`,json:`невалідний JSON`,structure:`невалідна структура`,int_list:`невалідні посилання на записи`,kv_single:`дозволено лише одну пару`,links_structure:`невалідна структура підключень`,time_format:`формат HH:MM:SS`,datetime_format:`формат YYYY-MM-DDTHH:MM`,tags_list:`очікується масив тегів`,slotted_length:`невірна кількість елементів`,check_structure:`невалідна структура відмітки`,measured_structure:`очікується {value, unit}`,measured_unit:`невідома одиниця`,money_structure:`некоректна сума`,geo_structure:`очікується {lat, lng}`,money_currency:`невідома валюта`,color_format:`формат #RRGGBB`,row_structure:`невалідна структура рядків`,row_duplicate:`значення «{{key}}» повторюється між рядками`,array:`очікується масив`,array_item:`невалідне значення у масиві`,ip_structure:`невалідна IP-адреса`,cidr_structure:`невалідний CIDR`,per_weekday:`масив із 7 чисел`,period_order:`початок не може бути після кінця`,range_structure:`очікується {from, to}`,last_admin:`Не можна прибрати останнього адміна.`,range_order:`from має бути ≤ to`,file_structure:`некоректний файл`,code_structure:`очікується {code, lang}`,url:`некоректний URL`,embed_structure:`некоректне вкладення`,colorname:`невідома назва кольору`},core:{plugin:{label:`Система`},settings:{label:`Система`,language:`Мова`},fields:{type:`Тип`,name:`Назва`,weekday:`День тижня`,value:`Значення`,text:`Текст`,check:`Позначка`},presets:{slug:`лише малі латинські літери, цифри й дефіс`,imei:`IMEI — рівно 15 цифр`,mac:`MAC — формат XX:XX:XX:XX:XX:XX`,iban:`IBAN — 2 літери, 2 цифри, далі літери й цифри (без пробілів)`,hostname:`імʼя хоста / FQDN (мітки через крапку: літери, цифри, дефіс)`,tel:`номер телефону`,link:`URL (scheme:// або домен із крапкою)`},lookup:{enough:`Досить`,partial:`Частково`,missing:`Немає`,noData:`немає даних`},period:{from:`З`,until:`По`},sex:{M:`Чоловіча`,F:`Жіноча`,other:`Інша`},weekdays:{mon:`Понеділок`,tue:`Вівторок`,wed:`Середа`,thu:`Четвер`,fri:`П'ятниця`,sat:`Субота`,sun:`Неділя`},colors:Se.uk,countries:{AF:`Афганістан`,AL:`Албанія`,DZ:`Алжир`,AD:`Андорра`,AO:`Ангола`,AG:`Антигуа і Барбуда`,AR:`Аргентина`,AM:`Вірменія`,AU:`Австралія`,AT:`Австрія`,AZ:`Азербайджан`,BS:`Багамські Острови`,BH:`Бахрейн`,BD:`Бангладеш`,BY:`Білорусь`,BE:`Бельгія`,BZ:`Беліз`,BJ:`Бенін`,BT:`Бутан`,BO:`Болівія`,BA:`Боснія і Герцеговина`,BW:`Ботсвана`,BR:`Бразилія`,BN:`Бруней`,BG:`Болгарія`,BF:`Буркіна-Фасо`,BI:`Бурунді`,CV:`Кабо-Верде`,KH:`Камбоджа`,CM:`Камерун`,CA:`Канада`,CF:`ЦАР`,TD:`Чад`,CL:`Чилі`,CN:`Китай`,CO:`Колумбія`,KM:`Комори`,CG:`Конго`,CD:`ДР Конго`,CR:`Коста-Рика`,CI:`Кот-д'Івуар`,HR:`Хорватія`,CU:`Куба`,CY:`Кіпр`,CZ:`Чехія`,DK:`Данія`,DJ:`Джибуті`,DM:`Домініка`,DO:`Домініканська Республіка`,EC:`Еквадор`,EG:`Єгипет`,SV:`Сальвадор`,GQ:`Екваторіальна Гвінея`,ER:`Еритрея`,EE:`Естонія`,SZ:`Есватіні`,ET:`Ефіопія`,FJ:`Фіджі`,FI:`Фінляндія`,FR:`Франція`,GA:`Габон`,GM:`Гамбія`,GE:`Грузія`,DE:`Німеччина`,GH:`Гана`,GR:`Греція`,GD:`Гренада`,GT:`Гватемала`,GN:`Гвінея`,GW:`Гвінея-Бісау`,GY:`Гаяна`,HT:`Гаїті`,HN:`Гондурас`,HU:`Угорщина`,IS:`Ісландія`,IN:`Індія`,ID:`Індонезія`,IR:`Іран`,IQ:`Ірак`,IE:`Ірландія`,IL:`Ізраїль`,IT:`Італія`,JM:`Ямайка`,JP:`Японія`,JO:`Йорданія`,KZ:`Казахстан`,KE:`Кенія`,KI:`Кірибаті`,KP:`КНДР`,KR:`Південна Корея`,KW:`Кувейт`,KG:`Киргизстан`,LA:`Лаос`,LV:`Латвія`,LB:`Ліван`,LS:`Лесото`,LR:`Ліберія`,LY:`Лівія`,LI:`Ліхтенштейн`,LT:`Литва`,LU:`Люксембург`,MG:`Мадагаскар`,MW:`Малаві`,MY:`Малайзія`,MV:`Мальдіви`,ML:`Малі`,MT:`Мальта`,MH:`Маршаллові Острови`,MR:`Мавританія`,MU:`Маврикій`,MX:`Мексика`,FM:`Мікронезія`,MD:`Молдова`,MC:`Монако`,MN:`Монголія`,ME:`Чорногорія`,MA:`Марокко`,MZ:`Мозамбік`,MM:`М'янма`,NA:`Намібія`,NR:`Науру`,NP:`Непал`,NL:`Нідерланди`,NZ:`Нова Зеландія`,NI:`Нікарагуа`,NE:`Нігер`,NG:`Нігерія`,MK:`Північна Македонія`,NO:`Норвегія`,OM:`Оман`,PK:`Пакистан`,PW:`Палау`,PA:`Панама`,PG:`Папуа Нова Гвінея`,PY:`Парагвай`,PE:`Перу`,PH:`Філіппіни`,PL:`Польща`,PT:`Португалія`,QA:`Катар`,RO:`Румунія`,RU:`Росія`,RW:`Руанда`,KN:`Сент-Кітс і Невіс`,LC:`Сент-Люсія`,VC:`Сент-Вінсент і Гренадіни`,WS:`Самоа`,SM:`Сан-Марино`,ST:`Сан-Томе і Принсіпі`,SA:`Саудівська Аравія`,SN:`Сенегал`,RS:`Сербія`,SC:`Сейшели`,SL:`Сьєрра-Леоне`,SG:`Сінгапур`,SK:`Словаччина`,SI:`Словенія`,SB:`Соломонові Острови`,SO:`Сомалі`,ZA:`ПАР`,SS:`Південний Судан`,ES:`Іспанія`,LK:`Шрі-Ланка`,SD:`Судан`,SR:`Суринам`,SE:`Швеція`,CH:`Швейцарія`,SY:`Сирія`,TW:`Тайвань`,TJ:`Таджикистан`,TZ:`Танзанія`,TH:`Таїланд`,TL:`Тімор-Лесте`,TG:`Того`,TO:`Тонга`,TT:`Тринідад і Тобаго`,TN:`Туніс`,TR:`Туреччина`,TM:`Туркменістан`,TV:`Тувалу`,UG:`Уганда`,UA:`Україна`,AE:`ОАЕ`,GB:`Велика Британія`,US:`США`,UY:`Уругвай`,UZ:`Узбекистан`,VU:`Вануату`,VE:`Венесуела`,VN:`В'єтнам`,YE:`Ємен`,ZM:`Замбія`,ZW:`Зімбабве`},units:{UAH:`₴ UAH`,USD:`$ USD`,EUR:`€ EUR`,GBP:`£ GBP`,CZK:`Kč CZK`,PLN:`zł PLN`,mg:`мг`,g:`г`,kg:`кг`,t:`т`,oz:`oz`,lb:`lb`,ml:`мл`,cl:`сл`,dl:`дл`,l:`л`,tsp:`ч.л.`,tbsp:`ст.л.`,cup:`чашка`,fl_oz:`fl oz`,pcs:`шт`,pair:`пара`,set:`набір`,pack:`пачка`,s:`сек`,min:`хв`,h:`год`,d:`день`,w:`тиждень`,C:`°C`,F:`°F`,K:`К`,mm:`мм`,cm:`см`,m:`м`,km:`км`,in:`дюйм`,ft:`фут`,mi:`миля`,nm:`морська миля`,cm2:`см²`,m2:`м²`,ha:`га`,km2:`км²`,ft2:`фут²`,ac:`акр`,B:`Б`,KB:`КБ`,MB:`МБ`,GB:`ГБ`,TB:`ТБ`,mAh:`мАг`,Ah:`Аг`,Wh:`Вт·год`,kWh:`кВт·год`,mW:`мВт`,W:`Вт`,kW:`кВт`,mV:`мВ`,V:`В`,ms:`м/с`,kmh:`км/год`,mph:`mph`,kn:`вузол`,"%":`%`,ppm:`ppm`}}},Ri={common:{loading:`Загрузка…`,saving:`Сохранение…`,error:`Ошибка`,back:`Назад`,yes:`Да`,no:`Нет`,notFound:`Тип не найден`,daysUnit:`дн.`,peopleUnit:`чел.`,empty:`Нет записей`},actions:{new:`Новый`,addFirst:`Добавить первую запись`,edit:`Редактировать`,editAll:`Редактировать всё`,save:`Сохранить`,create:`Создать`,cancel:`Отмена`,confirmDelete:`Удалить эту запись?`,delete:`Удалить`,upload:`Загрузить`,replace:`Заменить`,confirmDeletePhoto:`Удалить фото?`,add:`Добавить`,actionSuccess:`Готово`,actionError:`Ошибка`,actionNotFound:`Действие не зарегистрировано`,notice:`Уведомление`},save:{saving:`Сохранение…`,done:`Сохранено`,failed:`Не удалось сохранить`},upload:{tooLarge:`Файл слишком большой (макс. 25 МБ)`,failed:`Не удалось загрузить`},geo:{searchPlaceholder:`Поиск адреса…`,search:`Найти`,myLocation:`Моё местоположение`,label:`Подпись`,pick:`Выбрать место`},embed:{open:`Открыть`,pastePlaceholder:`Вставьте URL…`,resolveFailed:`Не удалось загрузить превью`},reminder:{today:`сегодня`,inDays:`через {{days}} дн`,overdue:`просрочено {{days}} дн`},nav:{selectType:`Выберите тип в меню`,plugins:`Плагины`,home:`Главная`,search:`Поиск`,browse:`Обзор`,settings:`Настройки`},dashboard:{title:`Главная`,empty:`Нет активных модулей`},settings:{title:`Настройки`,appearance:`Вид`,theme:`Тема`,language:`Язык`,systemTitle:`Система`,systemDescription:`Настройки всей системы.`,personalTitle:`Личное`,usersTitle:`Пользователи`,usersDescription:`Управление всеми аккаунтами инстанса.`},theme:{label:`Тема`,auto:`Авто`,light:`Светлая`,dark:`Тёмная`,eink:`E-ink`},folders:{title:`Папки`,all:`Все`,noFolder:`Без папки`,newFolder:`+ Новая папка`,namePlaceholder:`Название папки…`,confirmDelete:`Удалить папку? Записи останутся.`,collapse:`Свернуть`,expand:`Развернуть`,newSubfolder:`Новая подпапка`,rename:`Переименовать`,delete:`Удалить`},plugins:{title:`Плагины`,description:`Включение, выключение и удаление данных плагинов.`,loading:`Загрузка…`,restartBannerBefore:`Изменения применятся после `,restartBannerBold:`перезапуска сервера`,restartBannerAfter:` (набор активных плагинов читается при старте).`,confirmPurge:`Удалить ВСЕ данные плагина «{{id}}»? Таблицы будут удалены безвозвратно.`,genericError:`Ошибка: {{code}}`,purgeButton:`Удалить данные`,purgeTitle:`Удалить все данные плагина (безвозвратно)`,switchDisable:`Выключить`,switchEnable:`Включить`,blockedByDependents:`Нельзя выключить: от него зависят включённые плагины — {{list}}`,metaDepends:`зависит:`,metaVaults:`хранилища:`,metaExtends:`расширения:`,updateButton:`Обновить`,updateTitle:`Обновить с v{{from}} до v{{to}}`,confirmUpdate:`Обновить плагин «{{id}}» с v{{from}} до v{{to}}? Сервер перезапустится сразу после установки — убедитесь, что он работает под process-manager'ом (systemd/pm2/docker), который автоматически его поднимет. Рекомендуется сделать резервную копию базы данных заранее.`,updateError:`Обновление не удалось`,updateAllButton:`Обновить все ({{count}})`,confirmUpdateAll:`Обновить {{count}} плагин(ов)?
224
+
225
+ {{list}}
226
+
227
+ Сервер перезапустится сразу после установки — убедитесь, что он работает под process-manager'ом (systemd/pm2/docker), который автоматически его поднимет. Рекомендуется сделать резервную копию базы данных заранее.`,errors:{core_required:`Плагин core нельзя выключить.`,has_dependents:`От него зависят включённые: {{list}}.`,missing_deps:`Сначала включи зависимости: {{list}}.`,unknown_plugin:`Неизвестный плагин.`}},auth:{loginTitle:`Вход`,setupTitle:`Создать первого администратора`,login:`Логин`,password:`Пароль`,displayName:`Имя`,signIn:`Войти`,createAccount:`Создать аккаунт`,invalidCredentials:`Неверный логин или пароль.`,genericError:`Что-то пошло не так.`,accountTitle:`Мой аккаунт`,fieldDisplayName:`Имя`,fieldLogin:`Логин`,fieldPasswordOptional:`Новый пароль (оставьте пустым, чтобы не менять)`,tokensTitle:`API-токены`,tokenNamePlaceholder:`Название токена (напр. "agent")`,tokenCreate:`Создать токен`,tokenCreatedOnce:`Скопируйте токен сейчас — он больше не будет показан:`,tokenRevoke:`Отозвать`,tokenConfirmRevoke:`Отозвать этот токен? Всё, что его использует, перестанет работать.`,usersTitle:`Пользователи`,addUser:`Добавить пользователя`,roleAdmin:`Админ`,roleMember:`Участник`,fieldRole:`Роль`,fieldDisabled:`Отключён`,userCreateTitle:`Новый пользователь`,lastAdminError:`Нельзя убрать последнего админа.`},form:{serverRejected:`Сервер отклонил:`,createTitle:`Новый — {{label}}`,editTitle:`Редактировать — {{label}}`,mdPlaceholder:`Текст в формате Markdown…`,photo:`+ Фото`,properties:`Свойства`,keyPlaceholder:`ключ`,valuePlaceholderShort:`значение`,addProperty:`Свойство`,days:`дн`,hours:`ч`,minutes:`мин`,seconds:`с`,addTag:`Добавить тег…`,addRow:`+ Добавить строку`,search:`Поиск…`,loading:`Загрузка…`,loadError:`Ошибка загрузки`,noRecords:`Нет записей`,addRecord:`+ Добавить…`,addItem:`+ Добавить пункт`},list:{empty:`Пока пусто`,searchPlaceholder:`Поиск…`,sortBy:`Сортировать по`,sortNone:`Без сортировки`,asc:`По возрастанию`,desc:`По убыванию`,peopleCount_one:`{{count}} чел.`,peopleCount_few:`{{count}} чел.`,peopleCount_many:`{{count}} чел.`,peopleCount_other:`{{count}} чел.`,pairsCount_one:`{{count}} пара`,pairsCount_few:`{{count}} пары`,pairsCount_many:`{{count}} пар`,pairsCount_other:`{{count}} пар`},search:{title:`Глобальный поиск`,placeholder:`Поиск модулей и записей…`,allModules:`Все модули`,results:`Результаты`,noResults:`Ничего не найдено`},record:{count_one:`{{count}} запись`,count_few:`{{count}} записи`,count_many:`{{count}} записей`,count_other:`{{count}} записей`,hide:`Скрыть`,show:`Показать`},extend:{shownWhen:`Показывается когда:`},weekdaysShort:[`Пн`,`Вт`,`Ср`,`Чт`,`Пт`,`Сб`,`Вс`],lang:{uk:`Українська`,ru:`Русский`,en:`English`},validation:{required:`обязательное поле`,invalid_type:`недопустимый тип значения`,min_length:`минимум {{min}} симв.`,max_length:`максимум {{max}} симв.`,pattern:`недопустимый формат`,email:`некорректный email-адрес`,min:`не меньше {{min}}`,max:`не больше {{max}}`,int:`должно быть целым`,date_format:`формат YYYY-MM-DD`,date_min:`не раньше {{min}}`,date_max:`не позже {{max}}`,enum:`выберите из списка`,json:`невалидный JSON`,structure:`недопустимая структура`,int_list:`недопустимые ссылки на записи`,kv_single:`допустима только одна пара`,links_structure:`недопустимая структура подключений`,time_format:`формат HH:MM:SS`,datetime_format:`формат YYYY-MM-DDTHH:MM`,tags_list:`ожидается массив тегов`,slotted_length:`неверное количество элементов`,check_structure:`неверная структура отметки`,measured_structure:`ожидается {value, unit}`,measured_unit:`неизвестная единица`,money_structure:`некорректная сумма`,geo_structure:`ожидается {lat, lng}`,money_currency:`неизвестная валюта`,color_format:`формат #RRGGBB`,row_structure:`недопустимая структура строк`,row_duplicate:`значение «{{key}}» повторяется между строками`,array:`ожидается массив`,array_item:`недопустимое значение в массиве`,ip_structure:`недопустимый IP-адрес`,cidr_structure:`недопустимый CIDR`,per_weekday:`массив из 7 чисел`,period_order:`начало не должно быть позже конца`,range_structure:`ожидается {from, to}`,last_admin:`Нельзя убрать последнего админа.`,range_order:`from должно быть ≤ to`,file_structure:`некорректный файл`,code_structure:`ожидается {code, lang}`,url:`некорректный URL`,embed_structure:`некорректное вложение`,colorname:`неизвестное название цвета`},core:{plugin:{label:`Система`},settings:{label:`Система`,language:`Язык`},fields:{type:`Тип`,name:`Название`,weekday:`День недели`,value:`Значение`,text:`Текст`,check:`Отметка`},presets:{slug:`только строчные латинские буквы, цифры и дефис`,imei:`IMEI — ровно 15 цифр`,mac:`MAC — формат XX:XX:XX:XX:XX:XX`,iban:`IBAN — 2 буквы, 2 цифры, далее буквы и цифры (без пробелов)`,hostname:`имя хоста / FQDN (метки через точку: буквы, цифры, дефис)`,tel:`номер телефона`,link:`URL (scheme:// или домен с точкой)`},lookup:{enough:`Достаточно`,partial:`Частично`,missing:`Нет`,noData:`нет данных`},period:{from:`С`,until:`По`},sex:{M:`Мужской`,F:`Женский`,other:`Другой`},weekdays:{mon:`Понедельник`,tue:`Вторник`,wed:`Среда`,thu:`Четверг`,fri:`Пятница`,sat:`Суббота`,sun:`Воскресенье`},colors:Se.ru,countries:{AF:`Афганистан`,AL:`Албания`,DZ:`Алжир`,AD:`Андорра`,AO:`Ангола`,AG:`Антигуа и Барбуда`,AR:`Аргентина`,AM:`Армения`,AU:`Австралия`,AT:`Австрия`,AZ:`Азербайджан`,BS:`Багамы`,BH:`Бахрейн`,BD:`Бангладеш`,BY:`Беларусь`,BE:`Бельгия`,BZ:`Белиз`,BJ:`Бенин`,BT:`Бутан`,BO:`Боливия`,BA:`Босния и Герцеговина`,BW:`Ботсвана`,BR:`Бразилия`,BN:`Бруней`,BG:`Болгария`,BF:`Буркина-Фасо`,BI:`Бурунди`,CV:`Кабо-Верде`,KH:`Камбоджа`,CM:`Камерун`,CA:`Канада`,CF:`Центрально-Африканская Республика`,TD:`Чад`,CL:`Чили`,CN:`Китай`,CO:`Колумбия`,KM:`Коморы`,CG:`Конго - Браззавиль`,CD:`Конго - Киншаса`,CR:`Коста-Рика`,CI:`Кот-д’Ивуар`,HR:`Хорватия`,CU:`Куба`,CY:`Кипр`,CZ:`Чехия`,DK:`Дания`,DJ:`Джибути`,DM:`Доминика`,DO:`Доминиканская Республика`,EC:`Эквадор`,EG:`Египет`,SV:`Сальвадор`,GQ:`Экваториальная Гвинея`,ER:`Эритрея`,EE:`Эстония`,SZ:`Эсватини`,ET:`Эфиопия`,FJ:`Фиджи`,FI:`Финляндия`,FR:`Франция`,GA:`Габон`,GM:`Гамбия`,GE:`Грузия`,DE:`Германия`,GH:`Гана`,GR:`Греция`,GD:`Гренада`,GT:`Гватемала`,GN:`Гвинея`,GW:`Гвинея-Бисау`,GY:`Гайана`,HT:`Гаити`,HN:`Гондурас`,HU:`Венгрия`,IS:`Исландия`,IN:`Индия`,ID:`Индонезия`,IR:`Иран`,IQ:`Ирак`,IE:`Ирландия`,IL:`Израиль`,IT:`Италия`,JM:`Ямайка`,JP:`Япония`,JO:`Иордания`,KZ:`Казахстан`,KE:`Кения`,KI:`Кирибати`,KP:`КНДР`,KR:`Республика Корея`,KW:`Кувейт`,KG:`Киргизия`,LA:`Лаос`,LV:`Латвия`,LB:`Ливан`,LS:`Лесото`,LR:`Либерия`,LY:`Ливия`,LI:`Лихтенштейн`,LT:`Литва`,LU:`Люксембург`,MG:`Мадагаскар`,MW:`Малави`,MY:`Малайзия`,MV:`Мальдивы`,ML:`Мали`,MT:`Мальта`,MH:`Маршалловы о-ва`,MR:`Мавритания`,MU:`Маврикий`,MX:`Мексика`,FM:`Федеративные Штаты Микронезии`,MD:`Молдова`,MC:`Монако`,MN:`Монголия`,ME:`Черногория`,MA:`Марокко`,MZ:`Мозамбик`,MM:`Мьянма (Бирма)`,NA:`Намибия`,NR:`Науру`,NP:`Непал`,NL:`Нидерланды`,NZ:`Новая Зеландия`,NI:`Никарагуа`,NE:`Нигер`,NG:`Нигерия`,MK:`Северная Македония`,NO:`Норвегия`,OM:`Оман`,PK:`Пакистан`,PW:`Палау`,PA:`Панама`,PG:`Папуа — Новая Гвинея`,PY:`Парагвай`,PE:`Перу`,PH:`Филиппины`,PL:`Польша`,PT:`Португалия`,QA:`Катар`,RO:`Румыния`,RU:`Россия`,RW:`Руанда`,KN:`Сент-Китс и Невис`,LC:`Сент-Люсия`,VC:`Сент-Винсент и Гренадины`,WS:`Самоа`,SM:`Сан-Марино`,ST:`Сан-Томе и Принсипи`,SA:`Саудовская Аравия`,SN:`Сенегал`,RS:`Сербия`,SC:`Сейшельские о-ва`,SL:`Сьерра-Леоне`,SG:`Сингапур`,SK:`Словакия`,SI:`Словения`,SB:`Соломоновы о-ва`,SO:`Сомали`,ZA:`Южно-Африканская Республика`,SS:`Южный Судан`,ES:`Испания`,LK:`Шри-Ланка`,SD:`Судан`,SR:`Суринам`,SE:`Швеция`,CH:`Швейцария`,SY:`Сирия`,TW:`Тайвань`,TJ:`Таджикистан`,TZ:`Танзания`,TH:`Таиланд`,TL:`Восточный Тимор`,TG:`Того`,TO:`Тонга`,TT:`Тринидад и Тобаго`,TN:`Тунис`,TR:`Турция`,TM:`Туркменистан`,TV:`Тувалу`,UG:`Уганда`,UA:`Украина`,AE:`ОАЭ`,GB:`Великобритания`,US:`Соединенные Штаты`,UY:`Уругвай`,UZ:`Узбекистан`,VU:`Вануату`,VE:`Венесуэла`,VN:`Вьетнам`,YE:`Йемен`,ZM:`Замбия`,ZW:`Зимбабве`},units:{UAH:`₴ UAH`,USD:`$ USD`,EUR:`€ EUR`,GBP:`£ GBP`,CZK:`Kč CZK`,PLN:`zł PLN`,mg:`мг`,g:`г`,kg:`кг`,t:`т`,oz:`oz`,lb:`lb`,ml:`мл`,cl:`сл`,dl:`дл`,l:`л`,tsp:`ч.л.`,tbsp:`ст.л.`,cup:`чашка`,fl_oz:`fl oz`,pcs:`шт`,pair:`пара`,set:`набор`,pack:`пачка`,s:`сек`,min:`мин`,h:`ч`,d:`день`,w:`неделя`,C:`°C`,F:`°F`,K:`К`,mm:`мм`,cm:`см`,m:`м`,km:`км`,in:`дюйм`,ft:`фут`,mi:`миля`,nm:`морская миля`,cm2:`см²`,m2:`м²`,ha:`га`,km2:`км²`,ft2:`фут²`,ac:`акр`,B:`Б`,KB:`КБ`,MB:`МБ`,GB:`ГБ`,TB:`ТБ`,mAh:`мАч`,Ah:`Ач`,Wh:`Вт·ч`,kWh:`кВт·ч`,mW:`мВт`,W:`Вт`,kW:`кВт`,mV:`мВ`,V:`В`,ms:`м/с`,kmh:`км/ч`,mph:`mph`,kn:`узел`,"%":`%`,ppm:`ppm`}}},zi={common:{loading:`Loading…`,saving:`Saving…`,error:`Error`,back:`Back`,yes:`Yes`,no:`No`,notFound:`Type not found`,daysUnit:`d`,peopleUnit:`ppl`,empty:`No records`},actions:{new:`New`,addFirst:`Add first record`,edit:`Edit`,editAll:`Edit all`,save:`Save`,create:`Create`,cancel:`Cancel`,confirmDelete:`Delete this record?`,delete:`Delete`,upload:`Upload`,replace:`Replace`,confirmDeletePhoto:`Delete photo?`,add:`Add`,actionSuccess:`Done`,actionError:`Error`,actionNotFound:`Action not registered`,notice:`Notice`},save:{saving:`Saving…`,done:`Saved`,failed:`Save failed`},upload:{tooLarge:`File too large (max 25 MB)`,failed:`Upload failed`},geo:{searchPlaceholder:`Search address…`,search:`Search`,myLocation:`My location`,label:`Label`,pick:`Pick location`},embed:{open:`Open`,pastePlaceholder:`Paste a URL…`,resolveFailed:`Could not load preview`},reminder:{today:`today`,inDays:`in {{days}}d`,overdue:`overdue {{days}}d`},nav:{selectType:`Select a type from the menu`,plugins:`Plugins`,home:`Home`,search:`Search`,browse:`Browse`,settings:`Settings`},dashboard:{title:`Home`,empty:`No active modules`},settings:{title:`Settings`,appearance:`Appearance`,theme:`Theme`,language:`Language`,systemTitle:`System`,systemDescription:`App-wide settings.`,personalTitle:`Personal`,usersTitle:`Users`,usersDescription:`Manage every account on this instance.`},theme:{label:`Theme`,auto:`Auto`,light:`Light`,dark:`Dark`,eink:`E-ink`},group:{title:`Grouping`,field:`Field`,all:`All records`,noValue:`No value`,yes:`Yes`,no:`No`},plugins:{title:`Plugins`,description:`Enable, disable, and purge plugin data.`,loading:`Loading…`,restartBannerBefore:`Changes will take effect after `,restartBannerBold:`server restart`,restartBannerAfter:` (the active plugin set is read at startup).`,confirmPurge:`Delete ALL data for plugin "{{id}}"? Tables will be dropped permanently.`,genericError:`Error: {{code}}`,purgeButton:`Delete data`,purgeTitle:`Delete all plugin data (permanently)`,switchDisable:`Disable`,switchEnable:`Enable`,blockedByDependents:`Can't disable: enabled plugins depend on it — {{list}}`,metaDepends:`depends on:`,metaVaults:`vaults:`,metaExtends:`extends:`,updateButton:`Update`,updateTitle:`Update from v{{from}} to v{{to}}`,confirmUpdate:`Update plugin "{{id}}" from v{{from}} to v{{to}}? The server will restart immediately after install — make sure it runs under a process manager (systemd/pm2/docker) that will bring it back up automatically. A database backup beforehand is recommended.`,updateError:`Update failed`,updateAllButton:`Update all ({{count}})`,confirmUpdateAll:`Update {{count}} plugin(s)?
228
+
229
+ {{list}}
230
+
231
+ The server will restart immediately after install — make sure it runs under a process manager (systemd/pm2/docker) that will bring it back up automatically. A database backup beforehand is recommended.`,errors:{core_required:`The core plugin cannot be disabled.`,has_dependents:`Enabled plugins depend on it: {{list}}.`,missing_deps:`Enable dependencies first: {{list}}.`,unknown_plugin:`Unknown plugin.`}},auth:{loginTitle:`Sign in`,setupTitle:`Create the first admin account`,login:`Login`,password:`Password`,displayName:`Display name`,signIn:`Sign in`,createAccount:`Create account`,invalidCredentials:`Wrong login or password.`,genericError:`Something went wrong.`,accountTitle:`My account`,fieldDisplayName:`Display name`,fieldLogin:`Login`,fieldPasswordOptional:`New password (leave blank to keep unchanged)`,tokensTitle:`API tokens`,tokenNamePlaceholder:`Token name (e.g. "agent")`,tokenCreate:`Create token`,tokenCreatedOnce:`Copy this token now — it will not be shown again:`,tokenRevoke:`Revoke`,tokenConfirmRevoke:`Revoke this token? Anything using it will stop working.`,usersTitle:`Users`,addUser:`Add user`,roleAdmin:`Admin`,roleMember:`Member`,fieldRole:`Role`,fieldDisabled:`Disabled`,userCreateTitle:`New user`,lastAdminError:`Cannot remove the last admin.`},form:{serverRejected:`Server rejected:`,createTitle:`New — {{label}}`,editTitle:`Edit — {{label}}`,mdPlaceholder:`Markdown text…`,photo:`+ Photo`,properties:`Properties`,keyPlaceholder:`key`,valuePlaceholderShort:`value`,addProperty:`Property`,days:`d`,hours:`h`,minutes:`min`,seconds:`s`,addTag:`Add tag…`,addRow:`+ Add row`,search:`Search…`,loading:`Loading…`,loadError:`Load error`,noRecords:`No records`,addRecord:`+ Add…`,addItem:`+ Add item`},list:{empty:`Nothing here yet`,searchPlaceholder:`Search…`,sortBy:`Sort by`,sortNone:`No sorting`,asc:`Ascending`,desc:`Descending`,peopleCount_one:`{{count}} person`,peopleCount_other:`{{count}} ppl`,pairsCount_one:`{{count}} pair`,pairsCount_other:`{{count}} pairs`},search:{title:`Global Search`,placeholder:`Search modules and records…`,allModules:`All modules`,results:`Results`,noResults:`Nothing found`},record:{count_one:`{{count}} record`,count_other:`{{count}} records`,hide:`Hide`,show:`Show`},extend:{shownWhen:`Shown when:`},weekdaysShort:[`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`,`Sun`],lang:{uk:`Українська`,ru:`Русский`,en:`English`},validation:{required:`required field`,invalid_type:`invalid value type`,min_length:`minimum {{min}} chars`,max_length:`maximum {{max}} chars`,pattern:`invalid format`,email:`invalid email address`,min:`at least {{min}}`,max:`at most {{max}}`,int:`must be an integer`,date_format:`format YYYY-MM-DD`,date_min:`not earlier than {{min}}`,date_max:`not later than {{max}}`,enum:`choose from the list`,json:`invalid JSON`,structure:`invalid structure`,int_list:`invalid record references`,kv_single:`only one pair allowed`,links_structure:`invalid connections structure`,time_format:`format HH:MM:SS`,datetime_format:`format YYYY-MM-DDTHH:MM`,tags_list:`expected array of tags`,slotted_length:`wrong number of items`,check_structure:`invalid check structure`,measured_structure:`expected {value, unit}`,measured_unit:`unknown unit`,money_structure:`invalid amount`,geo_structure:`expected {lat, lng}`,money_currency:`unknown currency`,color_format:`format #RRGGBB`,row_structure:`invalid row structure`,row_duplicate:`value "{{key}}" is duplicated across rows`,array:`expected an array`,array_item:`invalid value in array`,ip_structure:`invalid IP address`,cidr_structure:`invalid CIDR`,per_weekday:`array of 7 numbers`,period_order:`start must not be after end`,range_structure:`expected {from, to}`,last_admin:`Cannot remove the last admin.`,range_order:`from must be ≤ to`,file_structure:`invalid file`,code_structure:`expected {code, lang}`,url:`invalid URL`,embed_structure:`invalid embed`,colorname:`unknown color name`},core:{plugin:{label:`System`},settings:{label:`System`,language:`Language`},fields:{type:`Type`,name:`Name`,weekday:`Weekday`,value:`Value`,text:`Text`,check:`Check`},presets:{slug:`lowercase latin letters, digits and hyphen only`,imei:`IMEI — exactly 15 digits`,mac:`MAC — format XX:XX:XX:XX:XX:XX`,iban:`IBAN — 2 letters, 2 digits, then letters and digits (no spaces)`,hostname:`hostname / FQDN (dot-separated labels: letters, digits, hyphen)`,tel:`phone number`,link:`URL (scheme:// or a domain with a dot)`},lookup:{enough:`Enough`,partial:`Partial`,missing:`Missing`,noData:`no data`},period:{from:`From`,until:`Until`},sex:{M:`Male`,F:`Female`,other:`Other`},weekdays:{mon:`Monday`,tue:`Tuesday`,wed:`Wednesday`,thu:`Thursday`,fri:`Friday`,sat:`Saturday`,sun:`Sunday`},colors:Se.en,countries:{AF:`Afghanistan`,AL:`Albania`,DZ:`Algeria`,AD:`Andorra`,AO:`Angola`,AG:`Antigua & Barbuda`,AR:`Argentina`,AM:`Armenia`,AU:`Australia`,AT:`Austria`,AZ:`Azerbaijan`,BS:`Bahamas`,BH:`Bahrain`,BD:`Bangladesh`,BY:`Belarus`,BE:`Belgium`,BZ:`Belize`,BJ:`Benin`,BT:`Bhutan`,BO:`Bolivia`,BA:`Bosnia & Herzegovina`,BW:`Botswana`,BR:`Brazil`,BN:`Brunei`,BG:`Bulgaria`,BF:`Burkina Faso`,BI:`Burundi`,CV:`Cape Verde`,KH:`Cambodia`,CM:`Cameroon`,CA:`Canada`,CF:`Central African Republic`,TD:`Chad`,CL:`Chile`,CN:`China`,CO:`Colombia`,KM:`Comoros`,CG:`Congo - Brazzaville`,CD:`Congo - Kinshasa`,CR:`Costa Rica`,CI:`Côte d’Ivoire`,HR:`Croatia`,CU:`Cuba`,CY:`Cyprus`,CZ:`Czechia`,DK:`Denmark`,DJ:`Djibouti`,DM:`Dominica`,DO:`Dominican Republic`,EC:`Ecuador`,EG:`Egypt`,SV:`El Salvador`,GQ:`Equatorial Guinea`,ER:`Eritrea`,EE:`Estonia`,SZ:`Eswatini`,ET:`Ethiopia`,FJ:`Fiji`,FI:`Finland`,FR:`France`,GA:`Gabon`,GM:`Gambia`,GE:`Georgia`,DE:`Germany`,GH:`Ghana`,GR:`Greece`,GD:`Grenada`,GT:`Guatemala`,GN:`Guinea`,GW:`Guinea-Bissau`,GY:`Guyana`,HT:`Haiti`,HN:`Honduras`,HU:`Hungary`,IS:`Iceland`,IN:`India`,ID:`Indonesia`,IR:`Iran`,IQ:`Iraq`,IE:`Ireland`,IL:`Israel`,IT:`Italy`,JM:`Jamaica`,JP:`Japan`,JO:`Jordan`,KZ:`Kazakhstan`,KE:`Kenya`,KI:`Kiribati`,KP:`North Korea`,KR:`South Korea`,KW:`Kuwait`,KG:`Kyrgyzstan`,LA:`Laos`,LV:`Latvia`,LB:`Lebanon`,LS:`Lesotho`,LR:`Liberia`,LY:`Libya`,LI:`Liechtenstein`,LT:`Lithuania`,LU:`Luxembourg`,MG:`Madagascar`,MW:`Malawi`,MY:`Malaysia`,MV:`Maldives`,ML:`Mali`,MT:`Malta`,MH:`Marshall Islands`,MR:`Mauritania`,MU:`Mauritius`,MX:`Mexico`,FM:`Micronesia`,MD:`Moldova`,MC:`Monaco`,MN:`Mongolia`,ME:`Montenegro`,MA:`Morocco`,MZ:`Mozambique`,MM:`Myanmar (Burma)`,NA:`Namibia`,NR:`Nauru`,NP:`Nepal`,NL:`Netherlands`,NZ:`New Zealand`,NI:`Nicaragua`,NE:`Niger`,NG:`Nigeria`,MK:`North Macedonia`,NO:`Norway`,OM:`Oman`,PK:`Pakistan`,PW:`Palau`,PA:`Panama`,PG:`Papua New Guinea`,PY:`Paraguay`,PE:`Peru`,PH:`Philippines`,PL:`Poland`,PT:`Portugal`,QA:`Qatar`,RO:`Romania`,RU:`Russia`,RW:`Rwanda`,KN:`St. Kitts & Nevis`,LC:`St. Lucia`,VC:`St. Vincent & Grenadines`,WS:`Samoa`,SM:`San Marino`,ST:`São Tomé & Príncipe`,SA:`Saudi Arabia`,SN:`Senegal`,RS:`Serbia`,SC:`Seychelles`,SL:`Sierra Leone`,SG:`Singapore`,SK:`Slovakia`,SI:`Slovenia`,SB:`Solomon Islands`,SO:`Somalia`,ZA:`South Africa`,SS:`South Sudan`,ES:`Spain`,LK:`Sri Lanka`,SD:`Sudan`,SR:`Suriname`,SE:`Sweden`,CH:`Switzerland`,SY:`Syria`,TW:`Taiwan`,TJ:`Tajikistan`,TZ:`Tanzania`,TH:`Thailand`,TL:`Timor-Leste`,TG:`Togo`,TO:`Tonga`,TT:`Trinidad & Tobago`,TN:`Tunisia`,TR:`Türkiye`,TM:`Turkmenistan`,TV:`Tuvalu`,UG:`Uganda`,UA:`Ukraine`,AE:`United Arab Emirates`,GB:`United Kingdom`,US:`United States`,UY:`Uruguay`,UZ:`Uzbekistan`,VU:`Vanuatu`,VE:`Venezuela`,VN:`Vietnam`,YE:`Yemen`,ZM:`Zambia`,ZW:`Zimbabwe`},units:{UAH:`₴ UAH`,USD:`$ USD`,EUR:`€ EUR`,GBP:`£ GBP`,CZK:`Kč CZK`,PLN:`zł PLN`,mg:`mg`,g:`g`,kg:`kg`,t:`t`,oz:`oz`,lb:`lb`,ml:`ml`,cl:`cl`,dl:`dl`,l:`l`,tsp:`tsp`,tbsp:`tbsp`,cup:`cup`,fl_oz:`fl oz`,pcs:`pcs`,pair:`pair`,set:`set`,pack:`pack`,s:`s`,min:`min`,h:`h`,d:`day`,w:`week`,C:`°C`,F:`°F`,K:`K`,mm:`mm`,cm:`cm`,m:`m`,km:`km`,in:`in`,ft:`ft`,mi:`mi`,nm:`nmi`,cm2:`cm²`,m2:`m²`,ha:`ha`,km2:`km²`,ft2:`ft²`,ac:`ac`,B:`B`,KB:`KB`,MB:`MB`,GB:`GB`,TB:`TB`,mAh:`mAh`,Ah:`Ah`,Wh:`Wh`,kWh:`kWh`,mW:`mW`,W:`W`,kW:`kW`,mV:`mV`,V:`V`,ms:`m/s`,kmh:`km/h`,mph:`mph`,kn:`kn`,"%":`%`,ppm:`ppm`}}},Bi=typeof localStorage<`u`?localStorage.getItem(`lang`)??`uk`:`uk`;Ii.use(a).init({resources:{uk:{translation:Li},ru:{translation:Ri},en:{translation:zi}},lng:Bi,fallbackLng:`uk`,interpolation:{escapeValue:!1},parseMissingKeyHandler:e=>(console.warn(`[i18n] відсутній ключ:`,e),e)}),fetch(`/api/plugins/core/settings`).then(e=>e.ok?e.json():null).then(e=>{let t=e?.language;if(t&&t!==Ii.language){Ii.changeLanguage(t);try{localStorage.setItem(`lang`,t)}catch{}}}).catch(e=>console.warn(`[i18n] language reconcile failed:`,e));var Vi=Ii,Hi=e({agent:()=>Ui,default:()=>Wi}),Ui={plugin:{label:`AI agent`,description:`In-process Claude Agent SDK runtime with optional RAG.`},settings:{label:`Agent settings`,auth_mode:`Billing mode`,auth_mode_subscription:`Subscription (session from system)`,auth_mode_api_key:`API key (pay per token)`,anthropic_api_key:`Anthropic API key`,claude_model:`Claude model`,skip_permissions:`Skip permissions check`,response_timeout:`Response timeout (s)`,rag_enabled:`Enable RAG`,rag_top_k:`RAG results (top-k)`,openai_api_key:`OpenAI API key (embeddings, optional — default from OPENAI_API_KEY)`,langfuse_public_key:`Langfuse public key`,langfuse_secret_key:`Langfuse secret key`,langfuse_base_url:`Langfuse base URL`,tracing_enabled:`Enable Langfuse tracing`}},Wi={agent:Ui},Gi=e({agent:()=>Ki,default:()=>qi}),Ki={plugin:{label:`AI-агент`,description:`Рантайм Claude Agent SDK в процессе с опциональным RAG.`},settings:{label:`Настройки агента`,auth_mode:`Способ оплаты`,auth_mode_subscription:`Подписка (сессия из системы)`,auth_mode_api_key:`API-ключ (оплата за токены)`,anthropic_api_key:`Ключ Anthropic API`,claude_model:`Модель Claude`,skip_permissions:`Пропустить проверку прав`,response_timeout:`Тайм-аут ответа (с)`,rag_enabled:`Включить RAG`,rag_top_k:`Результаты RAG (top-k)`,openai_api_key:`Ключ OpenAI (эмбеддинги, опц. — по умолчанию из OPENAI_API_KEY)`,langfuse_public_key:`Langfuse public key`,langfuse_secret_key:`Langfuse secret key`,langfuse_base_url:`Langfuse base URL`,tracing_enabled:`Включить трейсинг Langfuse`}},qi={agent:Ki},Ji=e({agent:()=>Yi,default:()=>Xi}),Yi={plugin:{label:`AI-агент`,description:`Рантайм Claude Agent SDK у процесі з опційним RAG.`},settings:{label:`Налаштування агента`,auth_mode:`Спосіб оплати`,auth_mode_subscription:`Підписка (сесія з системи)`,auth_mode_api_key:`API-ключ (оплата за токени)`,anthropic_api_key:`Ключ Anthropic API`,claude_model:`Модель Claude`,skip_permissions:`Пропустити перевірку прав`,response_timeout:`Тайм-аут відповіді (с)`,rag_enabled:`Увімкнути RAG`,rag_top_k:`Результати RAG (top-k)`,openai_api_key:`Ключ OpenAI (ембединги, опц. — типово з OPENAI_API_KEY)`,langfuse_public_key:`Langfuse public key`,langfuse_secret_key:`Langfuse secret key`,langfuse_base_url:`Langfuse base URL`,tracing_enabled:`Увімкнути трейсинг Langfuse`}},Xi={agent:Yi},Zi=e({console:()=>Qi,default:()=>$i}),Qi={plugin:{label:`Console access`,description:`Drive Coffer from a terminal AI (Claude Code / Codex) via the coffer MCP.`},settings:{label:`Console access`,intro:"## Use Coffer from the console\n\nThe `@coffer-org/mcp` server exposes your vaults to a terminal AI as MCP tools (`list_vaults`, `describe_type`, `list_records`, `get_record`, `create_record`, `update_record`, `delete_record`, `refresh_schema`). It is schema-driven: any plugin or vault you enable shows up after a server restart — no client changes.\n\nThe Coffer server must be running. The MCP talks to it over HTTP at `COFFER_URL` (default `http://localhost:7023`).",claude:'### Claude Code / Claude CLI\n\n```sh\nclaude mcp add coffer --env COFFER_URL=http://localhost:7023 -- npx -y @coffer-org/mcp\n```\n\nThen in any session the tools appear as `mcp__coffer__*`. Ask e.g. _"list my vaults"_ or _"add a record to …"_ and the agent calls them directly.',codex:`### Codex CLI
220
232
 
221
233
  Add to \`~/.codex/config.toml\`:
222
234
 
@@ -315,4 +327,4 @@ If you want to hide the \`${t.titleName}\`, you can wrap it with our VisuallyHid
315
327
 
316
328
  For more information, see https://radix-ui.com/primitives/docs/components/${t.docsSlug}`;return B.useEffect(()=>{e&&(document.getElementById(e)||console.error(n))},[n,e]),null},QQ=`DialogDescriptionWarning`,$Q=({contentRef:e,descriptionId:t})=>{let n=`Warning: Missing \`Description\` or \`aria-describedby={undefined}\` for {${XQ(QQ).contentName}}.`;return B.useEffect(()=>{let r=e.current?.getAttribute(`aria-describedby`);t&&r&&(document.getElementById(t)||console.warn(n))},[n,e,t]),null},e$=TQ,t$=jQ,n$=NQ,r$=LQ,i$=HQ,a$=WQ,o$=KQ,s$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/components/ui/dialog.tsx`,c$=e$,l$=t$,u$=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(n$,{ref:n,className:O(`fixed inset-0 z-50 bg-black/50 backdrop-blur-sm`,`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0`,e),...t},void 0,!1,{fileName:s$,lineNumber:15,columnNumber:3},void 0));u$.displayName=n$.displayName;var d$=B.forwardRef(({className:e,children:t,hideClose:n,...r},i)=>(0,X.jsxDEV)(l$,{children:[(0,X.jsxDEV)(u$,{},void 0,!1,{fileName:s$,lineNumber:33,columnNumber:5},void 0),(0,X.jsxDEV)(r$,{ref:i,className:O(`fixed z-50 flex flex-col border border-border bg-surface text-text shadow-xl`,`inset-x-0 bottom-0 max-h-[88dvh] overflow-y-auto rounded-t-2xl`,`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom data-[state=closed]:duration-200`,`md:inset-x-auto md:bottom-auto md:left-1/2 md:top-1/2 md:max-h-[85dvh] md:w-full md:max-w-xl md:-translate-x-1/2 md:-translate-y-1/2 md:rounded-2xl`,`md:data-[state=open]:slide-in-from-bottom-0 md:data-[state=closed]:slide-out-to-bottom-0 md:data-[state=open]:zoom-in-95 md:data-[state=closed]:zoom-out-95`,e),...r,children:[t,!n&&(0,X.jsxDEV)(o$,{className:`absolute right-4 top-4 flex h-8 w-8 items-center justify-center rounded-lg text-muted transition-colors hover:bg-elevated hover:text-text focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none`,children:[(0,X.jsxDEV)(d,{size:16},void 0,!1,{fileName:s$,lineNumber:51,columnNumber:11},void 0),(0,X.jsxDEV)(`span`,{className:`sr-only`,children:`Закрити`},void 0,!1,{fileName:s$,lineNumber:52,columnNumber:11},void 0)]},void 0,!0,{fileName:s$,lineNumber:50,columnNumber:9},void 0)]},void 0,!0,{fileName:s$,lineNumber:34,columnNumber:5},void 0)]},void 0,!0,{fileName:s$,lineNumber:32,columnNumber:3},void 0));d$.displayName=r$.displayName;function f$({className:e,...t}){return(0,X.jsxDEV)(`div`,{className:O(`flex flex-col gap-1.5 px-5 pt-5 pb-3`,e),...t},void 0,!1,{fileName:s$,lineNumber:61,columnNumber:10},this)}var p$=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(i$,{ref:n,className:O(`text-base font-semibold text-text`,e),...t},void 0,!1,{fileName:s$,lineNumber:68,columnNumber:3},void 0));p$.displayName=i$.displayName;var m$=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(a$,{ref:n,className:O(`text-sm text-muted-foreground`,e),...t},void 0,!1,{fileName:s$,lineNumber:76,columnNumber:3},void 0));m$.displayName=a$.displayName;var h$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/actions/TemplateHost.tsx`,g$=new Map;function _$(e){let t=oe(e);if(!t)return null;let n=g$.get(e);return n||(n=(0,B.lazy)(t),g$.set(e,n)),n}var v$=class extends B.Component{state={failed:!1};static getDerivedStateFromError(){return{failed:!0}}render(){return this.state.failed?this.props.fallback:this.props.children}},y$=()=>(0,X.jsxDEV)(`span`,{className:`animate-spin inline-block w-4 h-4 border-2 border-current/30 border-t-current rounded-full`},void 0,!1,{fileName:h$,lineNumber:22,columnNumber:3},void 0);function b$({name:e,data:t}){let{t:n}=l(),r=(0,X.jsxDEV)(X.Fragment,{children:n(`actions.notice`)},void 0,!1,{fileName:h$,lineNumber:28,columnNumber:20},this),i=_$(e);return i?(0,X.jsxDEV)(v$,{fallback:r,children:(0,X.jsxDEV)(B.Suspense,{fallback:(0,X.jsxDEV)(y$,{},void 0,!1,{fileName:h$,lineNumber:36,columnNumber:27},this),children:(0,X.jsxDEV)(i,{data:t,t:n},void 0,!1,{fileName:h$,lineNumber:37,columnNumber:9},this)},void 0,!1,{fileName:h$,lineNumber:36,columnNumber:7},this)},void 0,!1,{fileName:h$,lineNumber:35,columnNumber:5},this):(console.warn(`[template] unknown '${e}'`),r)}var x$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/actions/PopupBody.tsx`;function S$({ui:e}){let{t}=l();return(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(p$,{children:e.title?t(e.title,e.params):t(`actions.notice`)},void 0,!1,{fileName:x$,lineNumber:11,columnNumber:7},this),e.component?(0,X.jsxDEV)(b$,{name:e.component.name,data:e.component.data},void 0,!1,{fileName:x$,lineNumber:13,columnNumber:9},this):(0,X.jsxDEV)(m$,{children:t(e.message??``,e.params)},void 0,!1,{fileName:x$,lineNumber:15,columnNumber:9},this)]},void 0,!0,{fileName:x$,lineNumber:10,columnNumber:5},this)}var C$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/layout-elements.tsx`;function w$(e){return(0,X.jsxDEV)(`hr`,{className:`border-border`},void 0,!1,{fileName:C$,lineNumber:16,columnNumber:10},this)}function T$({el:e}){let{t}=l();return(0,X.jsxDEV)(En,{value:t(e.text)},void 0,!1,{fileName:C$,lineNumber:21,columnNumber:10},this)}function E$(e){let{t}=l(),n=e.el,r=e.recordCtx,[i,a]=(0,B.useState)(!1),[o,s]=(0,B.useState)(null),c=e=>{if(e.kind===`popup`){s(e);return}let n=e.component?(0,X.jsxDEV)(b$,{name:e.component.name,data:e.component.data},void 0,!1,{fileName:C$,lineNumber:37,columnNumber:9},this):t(e.message??``,e.params);e.variant===`success`?be.success(n):e.variant===`error`?be.error(n):be(n)};return(0,X.jsxDEV)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,X.jsxDEV)(T,{variant:n.variant??`outline`,onClick:async()=>{let e=vc(n.value);if(!e){be.error(t(`actions.actionNotFound`));return}a(!0);try{let n=await e({vault:r.vault,module:r.module,recordId:r.recordId??``});n?c(n):be.success(t(`actions.actionSuccess`))}catch(e){let n=e.ui;n?c(n):be.error(e instanceof Error?e.message:t(`actions.actionError`))}finally{a(!1)}},disabled:i,className:`max-w-full min-w-0`,children:[i?(0,X.jsxDEV)(`span`,{className:`animate-spin inline-block w-4 h-4 border-2 border-current/30 border-t-current rounded-full`},void 0,!1,{fileName:C$,lineNumber:68,columnNumber:11},this):n.icon&&(0,X.jsxDEV)(v,{name:n.icon,size:16},void 0,!1,{fileName:C$,lineNumber:70,columnNumber:22},this),(0,X.jsxDEV)(`span`,{className:`truncate`,children:t(n.label)},void 0,!1,{fileName:C$,lineNumber:72,columnNumber:9},this)]},void 0,!0,{fileName:C$,lineNumber:66,columnNumber:7},this),(0,X.jsxDEV)(c$,{open:!!o,onOpenChange:e=>!e&&s(null),children:(0,X.jsxDEV)(d$,{children:(0,X.jsxDEV)(f$,{children:o&&(0,X.jsxDEV)(S$,{ui:o},void 0,!1,{fileName:C$,lineNumber:77,columnNumber:23},this)},void 0,!1,{fileName:C$,lineNumber:76,columnNumber:11},this)},void 0,!1,{fileName:C$,lineNumber:75,columnNumber:9},this)},void 0,!1,{fileName:C$,lineNumber:74,columnNumber:7},this)]},void 0,!0,{fileName:C$,lineNumber:65,columnNumber:5},this)}function D$({el:e,children:t}){let{t:n}=l(),r=e;return(0,X.jsxDEV)(An,{label:r.label?n(r.label):void 0,icon:r.icon,children:t},void 0,!1,{fileName:C$,lineNumber:89,columnNumber:5},this)}L({kinds:[`divider`],layout:`block`,Page:w$}),L({kinds:[`info`],layout:`block`,Page:T$}),L({kinds:[`button`],layout:`scalar`,Page:E$}),L({kinds:[`group`],layout:`block`,Page:D$});var O$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/tristate.tsx`,k$={unknown:`yes`,yes:`no`,no:`unknown`},A$={yes:!0,no:!1,unknown:`indeterminate`};function j$({value:e,onChange:t,label:n}){let r=e||`unknown`;return(0,X.jsxDEV)(GY,{checked:A$[r],onCheckedChange:()=>t?.(k$[r]),"aria-label":n,className:O(`peer h-4.5 w-4.5 shrink-0 rounded border border-input bg-background ring-offset-background transition-colors`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring`,`data-[state=checked]:border-primary data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground`,`data-[state=indeterminate]:border-primary data-[state=indeterminate]:bg-primary data-[state=indeterminate]:text-primary-foreground`),children:(0,X.jsxDEV)(qY,{className:`flex items-center justify-center text-current`,children:r===`yes`?(0,X.jsxDEV)(D,{className:`h-3.5 w-3.5`,strokeWidth:3},void 0,!1,{fileName:O$,lineNumber:34,columnNumber:26},this):(0,X.jsxDEV)(h,{className:`h-3.5 w-3.5`,strokeWidth:3},void 0,!1,{fileName:O$,lineNumber:34,columnNumber:78},this)},void 0,!1,{fileName:O$,lineNumber:33,columnNumber:7},this)},void 0,!1,{fileName:O$,lineNumber:22,columnNumber:5},this)}function M$(e){let t=(0,X.jsxDEV)(j$,{value:String(e.value??``),onChange:t=>e.onChange?.(t),label:e.label},void 0,!1,{fileName:O$,lineNumber:41,columnNumber:15},this);return e.bare?t:(0,X.jsxDEV)(`div`,{className:`group/field`,children:[e.label!==void 0&&(0,X.jsxDEV)(se,{label:e.label,required:e.required},void 0,!1,{fileName:O$,lineNumber:45,columnNumber:33},this),t,(0,X.jsxDEV)(ge,{error:e.error},void 0,!1,{fileName:O$,lineNumber:47,columnNumber:7},this)]},void 0,!0,{fileName:O$,lineNumber:44,columnNumber:5},this)}var N$={yes:D,unknown:h,no:d};function P$({value:e}){let t=String(e??`unknown`);return(0,X.jsxDEV)(N$[t]??h,{size:16,className:t===`yes`?`text-accent`:t===`no`?`text-danger`:`text-muted`},void 0,!1,{fileName:O$,lineNumber:57,columnNumber:10},this)}L({kinds:[`triState`],Page:M$,Inline:P$});var F$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/money.tsx`;function I$(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}function L$(e){if(e.value==null||!e.currency)return``;try{return new Intl.NumberFormat(void 0,{style:`currency`,currency:e.currency}).format(e.value)}catch{return`${e.value} ${Un(e.currency)}`}}function R$({field:e,value:t,onChange:n}){let r=(0,B.useMemo)(()=>I$(t),[t]),i=e.hints.defaultCurrency??`USD`,a=r.currency??i,o=e=>n(e.value==null?``:{value:e.value,currency:e.currency});return(0,X.jsxDEV)(`div`,{className:`flex gap-2 min-w-0`,children:[(0,X.jsxDEV)(jM,{customInput:Te,className:`flex-1 min-w-0`,value:r.value??``,thousandSeparator:!0,decimalScale:2,min:e.hints.min,max:e.hints.max,placeholder:`0.00`,onValueChange:e=>o({value:e.value===``?void 0:e.floatValue,currency:a})},void 0,!1,{fileName:F$,lineNumber:43,columnNumber:7},this),(0,X.jsxDEV)(st,{value:a,onValueChange:e=>o({value:r.value,currency:e}),children:[(0,X.jsxDEV)(ot,{className:`w-28`,children:(0,X.jsxDEV)(Re,{},void 0,!1,{fileName:F$,lineNumber:58,columnNumber:11},this)},void 0,!1,{fileName:F$,lineNumber:57,columnNumber:9},this),(0,X.jsxDEV)(Le,{children:Hn.map(e=>(0,X.jsxDEV)(Ee,{value:e,children:[Un(e),` `,e]},e,!0,{fileName:F$,lineNumber:62,columnNumber:13},this))},void 0,!1,{fileName:F$,lineNumber:60,columnNumber:9},this)]},void 0,!0,{fileName:F$,lineNumber:56,columnNumber:7},this)]},void 0,!0,{fileName:F$,lineNumber:42,columnNumber:5},this)}function z$({value:e}){let t=L$(I$(e));return t?(0,X.jsxDEV)(`span`,{className:`tabular-nums`,children:t},void 0,!1,{fileName:F$,lineNumber:74,columnNumber:14},this):(0,X.jsxDEV)(at,{},void 0,!1,{fileName:F$,lineNumber:74,columnNumber:58},this)}function B$(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-48`,bare:e.bare,view:e=>(0,X.jsxDEV)(z$,{value:e},void 0,!1,{fileName:F$,lineNumber:90,columnNumber:20},this),edit:(t,n)=>(0,X.jsxDEV)(R$,{field:e.field,value:t,onChange:n},void 0,!1,{fileName:F$,lineNumber:92,columnNumber:9},this)},void 0,!1,{fileName:F$,lineNumber:79,columnNumber:5},this)}function V$({value:e}){return(0,X.jsxDEV)(z$,{value:e},void 0,!1,{fileName:F$,lineNumber:99,columnNumber:10},this)}function H$(e){let t=I$(e);return t.currency?[{value:t.currency,rawValue:t,label:Un(t.currency)}]:[]}L({kinds:[`money`],Page:B$,Inline:V$,keys:H$});var U$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/range.tsx`;function W$(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}function G$({field:e,value:t,onChange:n}){let r=(0,B.useMemo)(()=>W$(t),[t]),i=e.hints,a=e=>e===``?void 0:Number(e),o=e=>n(e.from==null&&e.to==null?``:{from:e.from,to:e.to});return(0,X.jsxDEV)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,X.jsxDEV)(Te,{type:`number`,className:`flex-1 min-w-0`,placeholder:`від`,value:r.from??``,min:i.min,max:i.max,step:i.step,onChange:e=>o({from:a(e.target.value),to:r.to})},void 0,!1,{fileName:U$,lineNumber:32,columnNumber:7},this),(0,X.jsxDEV)(`span`,{className:`text-muted`,children:`–`},void 0,!1,{fileName:U$,lineNumber:42,columnNumber:7},this),(0,X.jsxDEV)(Te,{type:`number`,className:`flex-1 min-w-0`,placeholder:`до`,value:r.to??``,min:i.min,max:i.max,step:i.step,onChange:e=>o({from:r.from,to:a(e.target.value)})},void 0,!1,{fileName:U$,lineNumber:43,columnNumber:7},this)]},void 0,!0,{fileName:U$,lineNumber:31,columnNumber:5},this)}function K$({value:e}){let t=W$(e);return t.from==null&&t.to==null?(0,X.jsxDEV)(at,{},void 0,!1,{fileName:U$,lineNumber:59,columnNumber:46},this):(0,X.jsxDEV)(`span`,{className:`tabular-nums`,children:[t.from??`…`,`–`,t.to??`…`]},void 0,!0,{fileName:U$,lineNumber:61,columnNumber:5},this)}function q$(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-48`,bare:e.bare,view:e=>(0,X.jsxDEV)(K$,{value:e},void 0,!1,{fileName:U$,lineNumber:80,columnNumber:20},this),edit:(t,n)=>(0,X.jsxDEV)(G$,{field:e.field,value:t,onChange:n},void 0,!1,{fileName:U$,lineNumber:82,columnNumber:9},this)},void 0,!1,{fileName:U$,lineNumber:69,columnNumber:5},this)}function J$({value:e}){return(0,X.jsxDEV)(K$,{value:e},void 0,!1,{fileName:U$,lineNumber:89,columnNumber:10},this)}L({kinds:[`numberRange`,`realRange`],Page:q$,Inline:J$});function Y$(e,t){return Math.floor((e+180)/360*2**t)}function X$(e,t){let n=e*Math.PI/180;return Math.floor((1-Math.log(Math.tan(n)+1/Math.cos(n))/Math.PI)/2*2**t)}function Z$(e,t,n=13){return`https://tile.openstreetmap.org/${n}/${Y$(t,n)}/${X$(e,n)}.png`}var Q$=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/geo.tsx`,$$=(0,B.lazy)(()=>j(()=>import(`./GeoMap-BQkjLI1p.js`),__vite__mapDeps([19,1,9,10,20])));function e1(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}var t1=e=>Number(e.toFixed(6)),n1=e=>e.lat==null&&e.lng==null&&!e.label?``:e;function r1({g:e,onOpen:t}){let{t:n}=l();return e.lat==null||e.lng==null?(0,X.jsxDEV)(`button`,{type:`button`,onClick:t,className:`flex h-24 w-full items-center justify-center gap-1.5 rounded-lg border border-dashed border-border text-sm text-muted hover:border-accent`,children:[(0,X.jsxDEV)(C,{size:16},void 0,!1,{fileName:Q$,lineNumber:35,columnNumber:9},this),` `,n(`geo.pick`)]},void 0,!0,{fileName:Q$,lineNumber:30,columnNumber:7},this):(0,X.jsxDEV)(`button`,{type:`button`,onClick:t,title:e.label??`${e.lat}, ${e.lng}`,className:`relative block h-24 w-full overflow-hidden rounded-lg border border-border hover:border-accent`,children:[(0,X.jsxDEV)(`img`,{src:Z$(e.lat,e.lng),alt:``,loading:`lazy`,className:`h-full w-full object-cover`},void 0,!1,{fileName:Q$,lineNumber:46,columnNumber:7},this),(0,X.jsxDEV)(C,{size:22,fill:`currentColor`,className:`pointer-events-none absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-full text-danger drop-shadow`},void 0,!1,{fileName:Q$,lineNumber:47,columnNumber:7},this)]},void 0,!0,{fileName:Q$,lineNumber:40,columnNumber:5},this)}function i1({value:e,onChange:t,editable:n,onClose:r}){let{t:i}=l(),[a,o]=(0,B.useState)(()=>e1(e)),[s,c]=(0,B.useState)(``),[u,f]=(0,B.useState)(!1),p=e=>o(e),m=e=>e===``?void 0:Number(e),h=(0,B.useRef)(a);h.current=a;let g=(0,B.useCallback)(()=>r(),[r]),_=(0,B.useCallback)(()=>{t?.(n1(h.current)),r()},[t,r]);(0,B.useEffect)(()=>{let e=e=>{e.key===`Escape`&&g()};return document.addEventListener(`keydown`,e),document.body.style.overflow=`hidden`,()=>{document.removeEventListener(`keydown`,e),document.body.style.overflow=``}},[g]);function v(){navigator.geolocation&&navigator.geolocation.getCurrentPosition(e=>p({...a,lat:t1(e.coords.latitude),lng:t1(e.coords.longitude)}),()=>{},{enableHighAccuracy:!0})}async function y(){if(s.trim()){f(!0);try{let e=await(await fetch(`https://nominatim.openstreetmap.org/search?format=json&limit=1&q=${encodeURIComponent(s)}`)).json();Array.isArray(e)&&e[0]&&p({lat:t1(+e[0].lat),lng:t1(+e[0].lon),label:a.label||e[0].display_name})}catch{}f(!1)}}return(0,X.jsxDEV)(`div`,{className:`fixed inset-0 z-[100] flex items-center justify-center bg-black/85 p-4 backdrop-blur-sm`,onClick:g,children:(0,X.jsxDEV)(`div`,{className:`flex max-h-[92dvh] w-full max-w-3xl flex-col gap-2 rounded-xl bg-bg p-3`,onClick:e=>e.stopPropagation(),children:[(0,X.jsxDEV)(`div`,{className:`flex items-center gap-2`,children:[n&&(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(Te,{placeholder:i(`geo.searchPlaceholder`),value:s,onChange:e=>c(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),y())},className:`flex-1`},void 0,!1,{fileName:Q$,lineNumber:133,columnNumber:15},this),(0,X.jsxDEV)(T,{type:`button`,variant:`secondary`,size:`icon`,disabled:u,onClick:y,title:i(`geo.search`),children:(0,X.jsxDEV)(Bc,{size:16},void 0,!1,{fileName:Q$,lineNumber:153,columnNumber:17},this)},void 0,!1,{fileName:Q$,lineNumber:145,columnNumber:15},this),(0,X.jsxDEV)(T,{type:`button`,variant:`secondary`,size:`icon`,onClick:v,title:i(`geo.myLocation`),children:(0,X.jsxDEV)(Ic,{size:16},void 0,!1,{fileName:Q$,lineNumber:156,columnNumber:17},this)},void 0,!1,{fileName:Q$,lineNumber:155,columnNumber:15},this)]},void 0,!0,{fileName:Q$,lineNumber:132,columnNumber:13},this),(0,X.jsxDEV)(T,{type:`button`,variant:`ghost`,size:`icon`,onClick:g,className:`ml-auto`,children:(0,X.jsxDEV)(d,{size:18},void 0,!1,{fileName:Q$,lineNumber:161,columnNumber:13},this)},void 0,!1,{fileName:Q$,lineNumber:160,columnNumber:11},this)]},void 0,!0,{fileName:Q$,lineNumber:130,columnNumber:9},this),(0,X.jsxDEV)(B.Suspense,{fallback:(0,X.jsxDEV)(`div`,{className:`h-[60dvh] rounded-lg border border-border bg-surface/40`},void 0,!1,{fileName:Q$,lineNumber:164,columnNumber:29},this),children:(0,X.jsxDEV)(`div`,{className:`[&>div]:h-[60dvh]`,children:(0,X.jsxDEV)($$,{lat:a.lat,lng:a.lng,interactive:n,onPick:n?(e,t)=>p({...a,lat:e,lng:t}):void 0},void 0,!1,{fileName:Q$,lineNumber:166,columnNumber:13},this)},void 0,!1,{fileName:Q$,lineNumber:165,columnNumber:11},this)},void 0,!1,{fileName:Q$,lineNumber:164,columnNumber:9},this),n?(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center`,children:[(0,X.jsxDEV)(`div`,{className:`grid flex-1 grid-cols-1 gap-2 sm:grid-cols-[7rem_7rem_1fr]`,children:[(0,X.jsxDEV)(Te,{type:`number`,step:`any`,placeholder:`lat`,value:a.lat??``,onChange:e=>p({...a,lat:m(e.target.value)})},void 0,!1,{fileName:Q$,lineNumber:178,columnNumber:15},this),(0,X.jsxDEV)(Te,{type:`number`,step:`any`,placeholder:`lng`,value:a.lng??``,onChange:e=>p({...a,lng:m(e.target.value)})},void 0,!1,{fileName:Q$,lineNumber:185,columnNumber:15},this),(0,X.jsxDEV)(Te,{placeholder:i(`geo.label`),value:a.label??``,onChange:e=>p({...a,label:e.target.value||void 0})},void 0,!1,{fileName:Q$,lineNumber:192,columnNumber:15},this)]},void 0,!0,{fileName:Q$,lineNumber:177,columnNumber:13},this),(0,X.jsxDEV)(T,{type:`button`,onClick:_,className:`sm:self-auto`,children:i(`actions.save`)},void 0,!1,{fileName:Q$,lineNumber:198,columnNumber:13},this)]},void 0,!0,{fileName:Q$,lineNumber:175,columnNumber:11},this):a.lat!=null&&a.lng!=null&&(0,X.jsxDEV)(`a`,{className:`text-sm text-accent hover:underline`,target:`_blank`,rel:`noreferrer`,href:`https://www.openstreetmap.org/?mlat=${a.lat}&mlon=${a.lng}#map=15/${a.lat}/${a.lng}`,children:a.label??`${a.lat.toFixed(5)}, ${a.lng?.toFixed(5)}`},void 0,!1,{fileName:Q$,lineNumber:205,columnNumber:13},this)]},void 0,!0,{fileName:Q$,lineNumber:126,columnNumber:7},this)},void 0,!1,{fileName:Q$,lineNumber:122,columnNumber:5},this)}function a1({value:e,onChange:t,editable:n}){let r=(0,B.useMemo)(()=>e1(e),[e]),[i,a]=(0,B.useState)(!1);return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1`,children:[(0,X.jsxDEV)(r1,{g:r,onOpen:()=>a(!0)},void 0,!1,{fileName:Q$,lineNumber:225,columnNumber:7},this),r.label&&(0,X.jsxDEV)(`span`,{className:`truncate text-xs text-muted`,children:r.label},void 0,!1,{fileName:Q$,lineNumber:226,columnNumber:19},this),i&&(0,X.jsxDEV)(i1,{value:e,onChange:t,editable:n,onClose:()=>a(!1)},void 0,!1,{fileName:Q$,lineNumber:227,columnNumber:16},this)]},void 0,!0,{fileName:Q$,lineNumber:224,columnNumber:5},this)}function o1(e){let t=!!e.onChange&&!(e.field.hints.noEditControl===!0&&e.mode===`view`),n=(0,X.jsxDEV)(a1,{value:e.value,onChange:t=>e.onChange?.(t),editable:t},void 0,!1,{fileName:Q$,lineNumber:234,columnNumber:16},this);return e.bare?n:(0,X.jsxDEV)(`div`,{className:`group/field w-56`,children:[e.label!==void 0&&(0,X.jsxDEV)(se,{label:e.label,required:e.required},void 0,!1,{fileName:Q$,lineNumber:238,columnNumber:33},this),n,(0,X.jsxDEV)(ge,{error:e.error},void 0,!1,{fileName:Q$,lineNumber:240,columnNumber:7},this)]},void 0,!0,{fileName:Q$,lineNumber:237,columnNumber:5},this)}function s1({value:e}){let t=e1(e);return(0,X.jsxDEV)(`span`,{className:`truncate`,children:t.label??(t.lat==null?`—`:`${t.lat.toFixed(3)}, ${t.lng?.toFixed(3)}`)},void 0,!1,{fileName:Q$,lineNumber:248,columnNumber:5},this)}L({kinds:[`geo`],Page:o1,Inline:s1}),c1.displayName=`clike`,c1.aliases=[];function c1(e){e.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|trait)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:break|catch|continue|do|else|finally|for|function|if|in|instanceof|new|null|return|throw|try|while)\b/,boolean:/\b(?:false|true)\b/,function:/\b\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/}}l1.displayName=`c`,l1.aliases=[];function l1(e){e.register(c1),e.languages.c=e.languages.extend(`clike`,{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),e.languages.insertBefore(`c`,`string`,{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),e.languages.insertBefore(`c`,`string`,{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:`property`,inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},e.languages.c.string],char:e.languages.c.char,comment:e.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:`function`}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:`keyword`},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:e.languages.c}}}}),e.languages.insertBefore(`c`,`function`,{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete e.languages.c.boolean}u1.displayName=`cpp`,u1.aliases=[];function u1(e){e.register(l1),(function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=`\\b(?!<keyword>)\\w+(?:\\s*\\.\\s*\\w+)*\\b`.replace(/<keyword>/g,function(){return t.source});e.languages.cpp=e.languages.extend(`c`,{"class-name":[{pattern:RegExp(`(\\b(?:class|concept|enum|struct|typename)\\s+)(?!<keyword>)\\w+`.replace(/<keyword>/g,function(){return t.source})),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore(`cpp`,`string`,{module:{pattern:RegExp(`(\\b(?:import|module)\\s+)(?:"(?:\\\\(?:\\r\\n|[\\s\\S])|[^"\\\\\\r\\n])*"|<[^<>\\r\\n]*>|`+`<mod-name>(?:\\s*:\\s*<mod-name>)?|:\\s*<mod-name>`.replace(/<mod-name>/g,function(){return n})+`)`),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:`string`,greedy:!0}}),e.languages.insertBefore(`cpp`,`keyword`,{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:`class-name`,inside:e.languages.cpp}}}}),e.languages.insertBefore(`cpp`,`operator`,{"double-colon":{pattern:/::/,alias:`punctuation`}}),e.languages.insertBefore(`cpp`,`class-name`,{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend(`cpp`,{})}}),e.languages.insertBefore(`inside`,`double-colon`,{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp[`base-clause`])})(e)}d1.displayName=`arduino`,d1.aliases=[`ino`];function d1(e){e.register(u1),e.languages.arduino=e.languages.extend(`cpp`,{keyword:/\b(?:String|array|bool|boolean|break|byte|case|catch|continue|default|do|double|else|finally|for|function|goto|if|in|instanceof|int|integer|long|loop|new|null|return|setup|string|switch|throw|try|void|while|word)\b/,constant:/\b(?:ANALOG_MESSAGE|DEFAULT|DIGITAL_MESSAGE|EXTERNAL|FIRMATA_STRING|HIGH|INPUT|INPUT_PULLUP|INTERNAL|INTERNAL1V1|INTERNAL2V56|LED_BUILTIN|LOW|OUTPUT|REPORT_ANALOG|REPORT_DIGITAL|SET_PIN_MODE|SYSEX_START|SYSTEM_RESET)\b/,builtin:/\b(?:Audio|BSSID|Bridge|Client|Console|EEPROM|Esplora|EsploraTFT|Ethernet|EthernetClient|EthernetServer|EthernetUDP|File|FileIO|FileSystem|Firmata|GPRS|GSM|GSMBand|GSMClient|GSMModem|GSMPIN|GSMScanner|GSMServer|GSMVoiceCall|GSM_SMS|HttpClient|IPAddress|IRread|Keyboard|KeyboardController|LiquidCrystal|LiquidCrystal_I2C|Mailbox|Mouse|MouseController|PImage|Process|RSSI|RobotControl|RobotMotor|SD|SPI|SSID|Scheduler|Serial|Server|Servo|SoftwareSerial|Stepper|Stream|TFT|Task|USBHost|WiFi|WiFiClient|WiFiServer|WiFiUDP|Wire|YunClient|YunServer|abs|addParameter|analogRead|analogReadResolution|analogReference|analogWrite|analogWriteResolution|answerCall|attach|attachGPRS|attachInterrupt|attached|autoscroll|available|background|beep|begin|beginPacket|beginSD|beginSMS|beginSpeaker|beginTFT|beginTransmission|beginWrite|bit|bitClear|bitRead|bitSet|bitWrite|blink|blinkVersion|buffer|changePIN|checkPIN|checkPUK|checkReg|circle|cityNameRead|cityNameWrite|clear|clearScreen|click|close|compassRead|config|connect|connected|constrain|cos|countryNameRead|countryNameWrite|createChar|cursor|debugPrint|delay|delayMicroseconds|detach|detachInterrupt|digitalRead|digitalWrite|disconnect|display|displayLogos|drawBMP|drawCompass|encryptionType|end|endPacket|endSMS|endTransmission|endWrite|exists|exitValue|fill|find|findUntil|flush|gatewayIP|get|getAsynchronously|getBand|getButton|getCurrentCarrier|getIMEI|getKey|getModifiers|getOemKey|getPINUsed|getResult|getSignalStrength|getSocket|getVoiceCallStatus|getXChange|getYChange|hangCall|height|highByte|home|image|interrupts|isActionDone|isDirectory|isListening|isPIN|isPressed|isValid|keyPressed|keyReleased|keyboardRead|knobRead|leftToRight|line|lineFollowConfig|listen|listenOnLocalhost|loadImage|localIP|lowByte|macAddress|maintain|map|max|messageAvailable|micros|millis|min|mkdir|motorsStop|motorsWrite|mouseDragged|mouseMoved|mousePressed|mouseReleased|move|noAutoscroll|noBlink|noBuffer|noCursor|noDisplay|noFill|noInterrupts|noListenOnLocalhost|noStroke|noTone|onReceive|onRequest|open|openNextFile|overflow|parseCommand|parseFloat|parseInt|parsePacket|pauseMode|peek|pinMode|playFile|playMelody|point|pointTo|position|pow|prepare|press|print|printFirmwareVersion|printVersion|println|process|processInput|pulseIn|put|random|randomSeed|read|readAccelerometer|readBlue|readButton|readBytes|readBytesUntil|readGreen|readJoystickButton|readJoystickSwitch|readJoystickX|readJoystickY|readLightSensor|readMessage|readMicrophone|readNetworks|readRed|readSlider|readString|readStringUntil|readTemperature|ready|rect|release|releaseAll|remoteIP|remoteNumber|remotePort|remove|requestFrom|retrieveCallingNumber|rewindDirectory|rightToLeft|rmdir|robotNameRead|robotNameWrite|run|runAsynchronously|runShellCommand|runShellCommandAsynchronously|running|scanNetworks|scrollDisplayLeft|scrollDisplayRight|seek|sendAnalog|sendDigitalPortPair|sendDigitalPorts|sendString|sendSysex|serialEvent|setBand|setBitOrder|setClockDivider|setCursor|setDNS|setDataMode|setFirmwareVersion|setMode|setPINUsed|setSpeed|setTextSize|setTimeout|shiftIn|shiftOut|shutdown|sin|size|sqrt|startLoop|step|stop|stroke|subnetMask|switchPIN|tan|tempoWrite|text|tone|transfer|tuneWrite|turn|updateIR|userNameRead|userNameWrite|voiceCall|waitContinue|width|write|writeBlue|writeGreen|writeJSON|writeMessage|writeMicroseconds|writeRGB|writeRed|yield)\b/}),e.languages.ino=e.languages.arduino}f1.displayName=`bash`,f1.aliases=[`sh`,`shell`];function f1(e){(function(e){var t=`\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b`,n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:`punctuation`,inside:null},r={bash:n,environment:{pattern:RegExp(`\\$`+t),alias:`constant`},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp(`(\\{)`+t),lookbehind:!0,alias:`constant`}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:`important`},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:`function`},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:`function`}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:`variable`,lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?:\.\w+)*(?=\+?=)/,inside:{environment:{pattern:RegExp(`(^|[\\s;|&]|[<>]\\()`+t),lookbehind:!0,alias:`constant`}},alias:`variable`,lookbehind:!0},parameter:{pattern:/(^|\s)-{1,2}(?:\w+:[+-]?)?\w+(?:\.\w+)*(?=[=\s]|$)/,alias:`variable`,lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp(`\\$?`+t),alias:`constant`},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:`class-name`},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:`important`},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:`important`}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var i=[`comment`,`function-name`,`for-or-select`,`assign-left`,`parameter`,`string`,`environment`,`function`,`keyword`,`builtin`,`boolean`,`file-descriptor`,`operator`,`punctuation`,`number`],a=r.variable[1].inside,o=0;o<i.length;o++)a[i[o]]=e.languages.bash[i[o]];e.languages.sh=e.languages.bash,e.languages.shell=e.languages.bash})(e)}p1.displayName=`csharp`,p1.aliases=[`cs`,`dotnet`];function p1(e){e.register(c1),(function(e){function t(e,t){return e.replace(/<<(\d+)>>/g,function(e,n){return`(?:`+t[+n]+`)`})}function n(e,n,r){return RegExp(t(e,n),r||``)}function r(e,t){for(var n=0;n<t;n++)e=e.replace(/<<self>>/g,function(){return`(?:`+e+`)`});return e.replace(/<<self>>/g,`[^\\s\\S]`)}var i={type:`bool byte char decimal double dynamic float int long object sbyte short string uint ulong ushort var void`,typeDeclaration:`class enum interface record struct`,contextual:`add alias and ascending async await by descending from(?=\\s*(?:\\w|$)) get global group into init(?=\\s*;) join let nameof not notnull on or orderby partial remove select set unmanaged value when where with(?=\\s*{)`,other:`abstract as base break case catch checked const continue default delegate do else event explicit extern finally fixed for foreach goto if implicit in internal is lock namespace new null operator out override params private protected public readonly ref return sealed sizeof stackalloc static switch this throw try typeof unchecked unsafe using virtual volatile while yield`};function a(e){return`\\b(?:`+e.trim().replace(/ /g,`|`)+`)\\b`}var o=a(i.typeDeclaration),s=RegExp(a(i.type+` `+i.typeDeclaration+` `+i.contextual+` `+i.other)),c=a(i.typeDeclaration+` `+i.contextual+` `+i.other),l=a(i.type+` `+i.typeDeclaration+` `+i.other),u=r(`<(?:[^<>;=+\\-*/%&|^]|<<self>>)*>`,2),d=r(`\\((?:[^()]|<<self>>)*\\)`,2),f=`@?\\b[A-Za-z_]\\w*\\b`,p=t(`<<0>>(?:\\s*<<1>>)?`,[f,u]),m=t(`(?!<<0>>)<<1>>(?:\\s*\\.\\s*<<1>>)*`,[c,p]),h=`\\[\\s*(?:,\\s*)*\\]`,g=t(`<<0>>(?:\\s*(?:\\?\\s*)?<<1>>)*(?:\\s*\\?)?`,[m,h]),_=t(`(?:<<0>>|<<1>>)(?:\\s*(?:\\?\\s*)?<<2>>)*(?:\\s*\\?)?`,[t(`\\(<<0>>+(?:,<<0>>+)+\\)`,[t(`[^,()<>[\\];=+\\-*/%&|^]|<<0>>|<<1>>|<<2>>`,[u,d,h])]),m,h]),v={keyword:s,punctuation:/[<>()?,.:[\]]/},y=`'(?:[^\\r\\n'\\\\]|\\\\.|\\\\[Uux][\\da-fA-F]{1,8})'`,b=`"(?:\\\\.|[^\\\\"\\r\\n])*"`,x=`@"(?:""|\\\\[\\s\\S]|[^\\\\"])*"(?!")`;e.languages.csharp=e.languages.extend(`clike`,{string:[{pattern:n(`(^|[^$\\\\])<<0>>`,[x]),lookbehind:!0,greedy:!0},{pattern:n(`(^|[^@$\\\\])<<0>>`,[b]),lookbehind:!0,greedy:!0}],"class-name":[{pattern:n(`(\\busing\\s+static\\s+)<<0>>(?=\\s*;)`,[m]),lookbehind:!0,inside:v},{pattern:n(`(\\busing\\s+<<0>>\\s*=\\s*)<<1>>(?=\\s*;)`,[f,_]),lookbehind:!0,inside:v},{pattern:n(`(\\busing\\s+)<<0>>(?=\\s*=)`,[f]),lookbehind:!0},{pattern:n(`(\\b<<0>>\\s+)<<1>>`,[o,p]),lookbehind:!0,inside:v},{pattern:n(`(\\bcatch\\s*\\(\\s*)<<0>>`,[m]),lookbehind:!0,inside:v},{pattern:n(`(\\bwhere\\s+)<<0>>`,[f]),lookbehind:!0},{pattern:n(`(\\b(?:is(?:\\s+not)?|as)\\s+)<<0>>`,[g]),lookbehind:!0,inside:v},{pattern:n(`\\b<<0>>(?=\\s+(?!<<1>>|with\\s*\\{)<<2>>(?:\\s*[=,;:{)\\]]|\\s+(?:in|when)\\b))`,[_,l,f]),inside:v}],keyword:s,number:/(?:\b0(?:x[\da-f_]*[\da-f]|b[01_]*[01])|(?:\B\.\d+(?:_+\d+)*|\b\d+(?:_+\d+)*(?:\.\d+(?:_+\d+)*)?)(?:e[-+]?\d+(?:_+\d+)*)?)(?:[dflmu]|lu|ul)?\b/i,operator:/>>=?|<<=?|[-=]>|([-+&|])\1|~|\?\?=?|[-+*/%&|^!=<>]=?/,punctuation:/\?\.?|::|[{}[\];(),.:]/}),e.languages.insertBefore(`csharp`,`number`,{range:{pattern:/\.\./,alias:`operator`}}),e.languages.insertBefore(`csharp`,`punctuation`,{"named-parameter":{pattern:n(`([(,]\\s*)<<0>>(?=\\s*:)`,[f]),lookbehind:!0,alias:`punctuation`}}),e.languages.insertBefore(`csharp`,`class-name`,{namespace:{pattern:n(`(\\b(?:namespace|using)\\s+)<<0>>(?:\\s*\\.\\s*<<0>>)*(?=\\s*[;{])`,[f]),lookbehind:!0,inside:{punctuation:/\./}},"type-expression":{pattern:n(`(\\b(?:default|sizeof|typeof)\\s*\\(\\s*(?!\\s))(?:[^()\\s]|\\s(?!\\s)|<<0>>)*(?=\\s*\\))`,[d]),lookbehind:!0,alias:`class-name`,inside:v},"return-type":{pattern:n(`<<0>>(?=\\s+(?:<<1>>\\s*(?:=>|[({]|\\.\\s*this\\s*\\[)|this\\s*\\[))`,[_,m]),inside:v,alias:`class-name`},"constructor-invocation":{pattern:n(`(\\bnew\\s+)<<0>>(?=\\s*[[({])`,[_]),lookbehind:!0,inside:v,alias:`class-name`},"generic-method":{pattern:n(`<<0>>\\s*<<1>>(?=\\s*\\()`,[f,u]),inside:{function:n(`^<<0>>`,[f]),generic:{pattern:RegExp(u),alias:`class-name`,inside:v}}},"type-list":{pattern:n(`\\b((?:<<0>>\\s+<<1>>|record\\s+<<1>>\\s*<<5>>|where\\s+<<2>>)\\s*:\\s*)(?:<<3>>|<<4>>|<<1>>\\s*<<5>>|<<6>>)(?:\\s*,\\s*(?:<<3>>|<<4>>|<<6>>))*(?=\\s*(?:where|[{;]|=>|$))`,[o,p,f,_,s.source,d,`\\bnew\\s*\\(\\s*\\)`]),lookbehind:!0,inside:{"record-arguments":{pattern:n(`(^(?!new\\s*\\()<<0>>\\s*)<<1>>`,[p,d]),lookbehind:!0,greedy:!0,inside:e.languages.csharp},keyword:s,"class-name":{pattern:RegExp(_),greedy:!0,inside:v},punctuation:/[,()]/}},preprocessor:{pattern:/(^[\t ]*)#.*/m,lookbehind:!0,alias:`property`,inside:{directive:{pattern:/(#)\b(?:define|elif|else|endif|endregion|error|if|line|nullable|pragma|region|undef|warning)\b/,lookbehind:!0,alias:`keyword`}}}});var S=b+`|`+y,C=t(`\\/(?![*/])|\\/\\/[^\\r\\n]*[\\r\\n]|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|<<0>>`,[S]),w=r(t(`[^"'/()]|<<0>>|\\(<<self>>*\\)`,[C]),2),T=`\\b(?:assembly|event|field|method|module|param|property|return|type)\\b`,E=t(`<<0>>(?:\\s*\\(<<1>>*\\))?`,[m,w]);e.languages.insertBefore(`csharp`,`class-name`,{attribute:{pattern:n(`((?:^|[^\\s\\w>)?])\\s*\\[\\s*)(?:<<0>>\\s*:\\s*)?<<1>>(?:\\s*,\\s*<<1>>)*(?=\\s*\\])`,[T,E]),lookbehind:!0,greedy:!0,inside:{target:{pattern:n(`^<<0>>(?=\\s*:)`,[T]),alias:`keyword`},"attribute-arguments":{pattern:n(`\\(<<0>>*\\)`,[w]),inside:e.languages.csharp},"class-name":{pattern:RegExp(m),inside:{punctuation:/\./}},punctuation:/[:,]/}}});var D=`:[^}\\r\\n]+`,O=r(t(`[^"'/()]|<<0>>|\\(<<self>>*\\)`,[C]),2),k=t(`\\{(?!\\{)(?:(?![}:])<<0>>)*<<1>>?\\}`,[O,D]),A=r(t(`[^"'/()]|\\/(?!\\*)|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|<<0>>|\\(<<self>>*\\)`,[S]),2),j=t(`\\{(?!\\{)(?:(?![}:])<<0>>)*<<1>>?\\}`,[A,D]);function M(t,r){return{interpolation:{pattern:n(`((?:^|[^{])(?:\\{\\{)*)<<0>>`,[t]),lookbehind:!0,inside:{"format-string":{pattern:n(`(^\\{(?:(?![}:])<<0>>)*)<<1>>(?=\\}$)`,[r,D]),lookbehind:!0,inside:{punctuation:/^:/}},punctuation:/^\{|\}$/,expression:{pattern:/[\s\S]+/,alias:`language-csharp`,inside:e.languages.csharp}}},string:/[\s\S]+/}}e.languages.insertBefore(`csharp`,`string`,{"interpolation-string":[{pattern:n(`(^|[^\\\\])(?:\\$@|@\\$)"(?:""|\\\\[\\s\\S]|\\{\\{|<<0>>|[^\\\\{"])*"`,[k]),lookbehind:!0,greedy:!0,inside:M(k,O)},{pattern:n(`(^|[^@\\\\])\\$"(?:\\\\.|\\{\\{|<<0>>|[^\\\\"{])*"`,[j]),lookbehind:!0,greedy:!0,inside:M(j,A)}],char:{pattern:RegExp(y),greedy:!0}}),e.languages.dotnet=e.languages.cs=e.languages.csharp})(e)}m1.displayName=`markup`,m1.aliases=[`atom`,`html`,`mathml`,`rss`,`ssml`,`svg`,`xml`];function m1(e){e.languages.markup={comment:{pattern:/<!--(?:(?!<!--)[\s\S])*?-->/,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:`attr-equals`},{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:`named-entity`},/&#x?[\da-f]{1,8};/i]},e.languages.markup.tag.inside[`attr-value`].inside.entity=e.languages.markup.entity,e.languages.markup.doctype.inside[`internal-subset`].inside=e.languages.markup,e.hooks.add(`wrap`,function(e){e.type===`entity`&&(e.attributes.title=e.content.value.replace(/&amp;/,`&`))}),Object.defineProperty(e.languages.markup.tag,"addInlined",{value:function(t,n){var r={};r[`language-`+n]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:e.languages[n]},r.cdata=/^<!\[CDATA\[|\]\]>$/i;var i={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:r}};i[`language-`+n]={pattern:/[\s\S]+/,inside:e.languages[n]};var a={};a[t]={pattern:RegExp(`(<__[^>]*>)(?:<!\\[CDATA\\[(?:[^\\]]|\\](?!\\]>))*\\]\\]>|(?!<!\\[CDATA\\[)[\\s\\S])*?(?=<\\/__>)`.replace(/__/g,function(){return t}),`i`),lookbehind:!0,greedy:!0,inside:i},e.languages.insertBefore(`markup`,`cdata`,a)}}),Object.defineProperty(e.languages.markup.tag,"addAttribute",{value:function(t,n){e.languages.markup.tag.inside[`special-attr`].push({pattern:RegExp(`(^|["'\\s])(?:`+t+`)\\s*=\\s*(?:"[^"]*"|'[^']*'|[^\\s'">=]+(?=[\\s>]))`,`i`),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[n,`language-`+n],inside:e.languages[n]},punctuation:[{pattern:/^=/,alias:`attr-equals`},/"|'/]}}}})}}),e.languages.html=e.languages.markup,e.languages.mathml=e.languages.markup,e.languages.svg=e.languages.markup,e.languages.xml=e.languages.extend(`markup`,{}),e.languages.ssml=e.languages.xml,e.languages.atom=e.languages.xml,e.languages.rss=e.languages.xml}h1.displayName=`css`,h1.aliases=[];function h1(e){(function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:RegExp(`@[\\w-](?:[^;{\\s"']|\\s+(?!\\s)|`+t.source+`)*?(?:;|(?=\\s*\\{))`),inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:`selector`},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp(`\\burl\\((?:`+t.source+`|(?:[^\\\\\\r\\n()"']|\\\\[\\s\\S])*)\\)`,`i`),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp(`^`+t.source+`$`),alias:`url`}}},selector:{pattern:RegExp(`(^|[{}\\s])[^{}\\s](?:[^{};"'\\s]|\\s+(?![\\s{])|`+t.source+`)*(?=\\s*\\{)`),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined(`style`,`css`),n.tag.addAttribute(`style`,`css`))})(e)}g1.displayName=`diff`,g1.aliases=[];function g1(e){(function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":`-`,"deleted-arrow":`<`,"inserted-sign":`+`,"inserted-arrow":`>`,unchanged:` `,diff:`!`};Object.keys(t).forEach(function(n){var r=t[n],i=[];/^\w+$/.test(n)||i.push(/\w+/.exec(n)[0]),n===`diff`&&i.push(`bold`),e.languages.diff[n]={pattern:RegExp(`^(?:[`+r+`].*(?:\r
317
329
  ?|
318
- |(?![\\s\\S])))+`,`m`),alias:i,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}}),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})})(e)}_1.displayName=`go`,_1.aliases=[];function _1(e){e.register(c1),e.languages.go=e.languages.extend(`clike`,{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),e.languages.insertBefore(`go`,`string`,{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete e.languages.go[`class-name`]}v1.displayName=`ini`,v1.aliases=[];function v1(e){e.languages.ini={comment:{pattern:/(^[ \f\t\v]*)[#;][^\n\r]*/m,lookbehind:!0},section:{pattern:/(^[ \f\t\v]*)\[[^\n\r\]]*\]?/m,lookbehind:!0,inside:{"section-name":{pattern:/(^\[[ \f\t\v]*)[^ \f\t\v\]]+(?:[ \f\t\v]+[^ \f\t\v\]]+)*/,lookbehind:!0,alias:`selector`},punctuation:/\[|\]/}},key:{pattern:/(^[ \f\t\v]*)[^ \f\n\r\t\v=]+(?:[ \f\t\v]+[^ \f\n\r\t\v=]+)*(?=[ \f\t\v]*=)/m,lookbehind:!0,alias:`attr-name`},value:{pattern:/(=[ \f\t\v]*)[^ \f\n\r\t\v]+(?:[ \f\t\v]+[^ \f\n\r\t\v]+)*/,lookbehind:!0,alias:`attr-value`,inside:{"inner-value":{pattern:/^("|').+(?=\1$)/,lookbehind:!0}}},punctuation:/=/}}y1.displayName=`java`,y1.aliases=[];function y1(e){e.register(c1),(function(e){var t=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,n=`(?:[a-z]\\w*\\s*\\.\\s*)*(?:[A-Z]\\w*\\s*\\.\\s*)*`,r={pattern:RegExp(`(^|[^\\w.])`+n+`[A-Z](?:[\\d_A-Z]*[a-z]\\w*)?\\b`),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};e.languages.java=e.languages.extend(`clike`,{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[r,{pattern:RegExp(`(^|[^\\w.])`+n+`[A-Z]\\w*(?=\\s+\\w+\\s*[;,=()]|\\s*(?:\\[[\\s,]*\\]\\s*)?::\\s*new\\b)`),lookbehind:!0,inside:r.inside},{pattern:RegExp(`(\\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\\s+)`+n+`[A-Z]\\w*\\b`),lookbehind:!0,inside:r.inside}],keyword:t,function:[e.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),e.languages.insertBefore(`java`,`string`,{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:`string`},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),e.languages.insertBefore(`java`,`class-name`,{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:`punctuation`},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":r,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(`(\\bimport\\s+)`+n+`(?:[A-Z]\\w*|\\*)(?=\\s*;)`),lookbehind:!0,inside:{namespace:r.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(`(\\bimport\\s+static\\s+)`+n+`(?:\\w+|\\*)(?=\\s*;)`),lookbehind:!0,alias:`static`,inside:{namespace:r.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(`(\\b(?:exports|import(?:\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\s+)(?!<keyword>)[a-z]\\w*(?:\\.[a-z]\\w*)*\\.?`.replace(/<keyword>/g,function(){return t.source})),lookbehind:!0,inside:{punctuation:/\./}}})})(e)}b1.displayName=`regex`,b1.aliases=[];function b1(e){(function(e){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:`escape`},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,r={pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:`class-name`},i={pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:`class-name`},a=`(?:[^\\\\-]|`+n.source+`)`,o=RegExp(a+`-`+a),s={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:`variable`};e.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:`operator`},"char-class-punctuation":{pattern:/^\[|\]$/,alias:`punctuation`},range:{pattern:o,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:`operator`}}},"special-escape":t,"char-set":i,escape:n}},"special-escape":t,"char-set":r,backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:`keyword`},{pattern:/\\k<[^<>']+>/,alias:`keyword`,inside:{"group-name":s}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:`function`},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:`punctuation`,inside:{"group-name":s}},{pattern:/\)/,alias:`punctuation`}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:`number`},alternation:{pattern:/\|/,alias:`keyword`}}})(e)}x1.displayName=`javascript`,x1.aliases=[`js`];function x1(e){e.register(c1),e.languages.javascript=e.languages.extend(`clike`,{"class-name":[e.languages.clike[`class-name`],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(`(^|[^\\w$])(?:NaN|Infinity|0[bB][01]+(?:_[01]+)*n?|0[oO][0-7]+(?:_[0-7]+)*n?|0[xX][\\dA-Fa-f]+(?:_[\\dA-Fa-f]+)*n?|\\d+(?:_\\d+)*n|(?:\\d+(?:_\\d+)*(?:\\.(?:\\d+(?:_\\d+)*)?)?|\\.\\d+(?:_\\d+)*)(?:[Ee][+-]?\\d+(?:_\\d+)*)?)(?![\\w$])`),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),e.languages.javascript[`class-name`][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,e.languages.insertBefore(`javascript`,`keyword`,{regex:{pattern:RegExp(`((?:^|[^$\\w\\xA0-\\uFFFF."'\\])\\s]|\\b(?:return|yield))\\s*)\\/(?:(?:\\[(?:[^\\]\\\\\\r\\n]|\\\\.)*\\]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[dgimyus]{0,7}|(?:\\[(?:[^[\\]\\\\\\r\\n]|\\\\.|\\[(?:[^[\\]\\\\\\r\\n]|\\\\.|\\[(?:[^[\\]\\\\\\r\\n]|\\\\.)*\\])*\\])*\\]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[dgimyus]{0,7}v[dgimyus]{0,7})(?=(?:\\s|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/)*(?:$|[\\r\\n,.;:})\\]]|\\/\\/))`),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:`language-regex`,inside:e.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:`function`},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:e.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:e.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:e.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:e.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),e.languages.insertBefore(`javascript`,`string`,{hashbang:{pattern:/^#!.*/,greedy:!0,alias:`comment`},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:`string`},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:`punctuation`},rest:e.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:`property`}}),e.languages.insertBefore(`javascript`,`operator`,{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:`property`}}),e.languages.markup&&(e.languages.markup.tag.addInlined(`script`,`javascript`),e.languages.markup.tag.addAttribute(`on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)`,`javascript`)),e.languages.js=e.languages.javascript}S1.displayName=`json`,S1.aliases=[`webmanifest`];function S1(e){e.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:`keyword`}},e.languages.webmanifest=e.languages.json}C1.displayName=`kotlin`,C1.aliases=[`kt`,`kts`];function C1(e){e.register(c1),(function(e){e.languages.kotlin=e.languages.extend(`clike`,{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin[`class-name`];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:`punctuation`},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore(`kotlin`,`string`,{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:`multiline`,inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:`singleline`,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore(`kotlin`,`keyword`,{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:`builtin`}}),e.languages.insertBefore(`kotlin`,`function`,{label:{pattern:/\b\w+@|@\w+\b/,alias:`symbol`}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin})(e)}w1.displayName=`less`,w1.aliases=[];function w1(e){e.register(h1),e.languages.less=e.languages.extend(`css`,{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),e.languages.insertBefore(`less`,`property`,{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:`function`}})}T1.displayName=`lua`,T1.aliases=[];function T1(e){e.languages.lua={comment:/^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[^z]))*\1|\[(=*)\[[\s\S]*?\]\2\]/,greedy:!0},number:/\b0x[a-f\d]+(?:\.[a-f\d]*)?(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|(?:\.\d*)?(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i,keyword:/\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,function:/(?!\d)\w+(?=\s*(?:[({]))/,operator:[/[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/,{pattern:/(^|[^.])\.\.(?!\.)/,lookbehind:!0}],punctuation:/[\[\](){},;]|\.+|:+/}}E1.displayName=`makefile`,E1.aliases=[];function E1(e){e.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:`builtin`},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:`symbol`,inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/}}D1.displayName=`yaml`,D1.aliases=[`yml`];function D1(e){(function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r=`(?:`+n.source+`(?:[ ]+`+t.source+`)?|`+t.source+`(?:[ ]+`+n.source+`)?)`,i=`(?:[^\\s\\x00-\\x08\\x0e-\\x1f!"#%&'*,\\-:>?@[\\]\`{|}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]|[?:-]<PLAIN>)(?:[ \\t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*`.replace(/<PLAIN>/g,function(){return`[^\\s\\x00-\\x08\\x0e-\\x1f,[\\]{}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]`}),a=`"(?:[^"\\\\\\r\\n]|\\\\.)*"|'(?:[^'\\\\\\r\\n]|\\\\.)*'`;function o(e,t){t=(t||``).replace(/m/g,``)+`m`;var n=`([:\\-,[{]\\s*(?:\\s<<prop>>[ \\t]+)?)(?:<<value>>)(?=[ \\t]*(?:$|,|\\]|\\}|(?:[\\r\\n]\\s*)?#))`.replace(/<<prop>>/g,function(){return r}).replace(/<<value>>/g,function(){return e});return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(`([\\-:]\\s*(?:\\s<<prop>>[ \\t]+)?[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)\\S[^\\r\\n]*(?:\\2[^\\r\\n]+)*)`.replace(/<<prop>>/g,function(){return r})),lookbehind:!0,alias:`string`},comment:/#.*/,key:{pattern:RegExp(`((?:^|[:\\-,[{\\r\\n?])[ \\t]*(?:<<prop>>[ \\t]+)?)<<key>>(?=\\s*:\\s)`.replace(/<<prop>>/g,function(){return r}).replace(/<<key>>/g,function(){return`(?:`+i+`|`+a+`)`})),lookbehind:!0,greedy:!0,alias:`atrule`},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:`important`},datetime:{pattern:o(`\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \\t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?(?:[ \\t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?))?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?`),lookbehind:!0,alias:`number`},boolean:{pattern:o(`false|true`,`i`),lookbehind:!0,alias:`important`},null:{pattern:o(`null|~`,`i`),lookbehind:!0,alias:`important`},string:{pattern:o(a),lookbehind:!0,greedy:!0},number:{pattern:o(`[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)`,`i`),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml})(e)}O1.displayName=`markdown`,O1.aliases=[`md`];function O1(e){e.register(m1),(function(e){var t=`(?:\\\\.|[^\\\\\\n\\r]|(?:\\n|\\r\\n?)(?![\\r\\n]))`;function n(e){return e=e.replace(/<inner>/g,function(){return t}),RegExp(`((?:^|[^\\\\])(?:\\\\{2})*)(?:`+e+`)`)}var r="(?:\\\\.|``(?:[^`\\r\\n]|`(?!`))+``|`[^`\\r\\n]+`|[^\\\\|\\r\\n`])+",i=`\\|?__(?:\\|__)+\\|?(?:(?:\\n|\\r\\n?)|(?![\\s\\S]))`.replace(/__/g,function(){return r}),a=`\\|?[ \\t]*:?-{3,}:?[ \\t]*(?:\\|[ \\t]*:?-{3,}:?[ \\t]*)+\\|?(?:\\n|\\r\\n?)`;e.languages.markdown=e.languages.extend(`markup`,{}),e.languages.insertBefore(`markdown`,`prolog`,{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:[`yaml`,`language-yaml`],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:`punctuation`},table:{pattern:RegExp(`^`+i+a+`(?:`+i+`)*`,`m`),inside:{"table-data-rows":{pattern:RegExp(`^(`+i+a+`)(?:`+i+`)*$`),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp(`^(`+i+`)`+a+`$`),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp(`^`+i+`$`),inside:{"table-header":{pattern:RegExp(r),alias:`important`,inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:`keyword`},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:`important`,inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:`important`,inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:`punctuation`},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:`punctuation`},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:`url`},bold:{pattern:n(`\\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\\b|\\*\\*(?:(?!\\*)<inner>|\\*(?:(?!\\*)<inner>)+\\*)+\\*\\*`),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(`\\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\\b|\\*(?:(?!\\*)<inner>|\\*\\*(?:(?!\\*)<inner>)+\\*\\*)+\\*`),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(`(~~?)(?:(?!~)<inner>)+\\2`),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:[`code`,`keyword`]},url:{pattern:n(`!?\\[(?:(?!\\])<inner>)+\\](?:\\([^\\s)]+(?:[\\t ]+"(?:\\\\.|[^"\\\\])*")?\\)|[ \\t]?\\[(?:(?!\\])<inner>)+\\])`),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),[`url`,`bold`,`italic`,`strike`].forEach(function(t){[`url`,`bold`,`italic`,`strike`,`code-snippet`].forEach(function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])})}),e.hooks.add(`after-tokenize`,function(e){if(e.language!==`markdown`&&e.language!==`md`)return;function t(e){if(!(!e||typeof e==`string`))for(var n=0,r=e.length;n<r;n++){var i=e[n];if(i.type!==`code`){t(i.content);continue}var a=i.content[1],o=i.content[3];if(a&&o&&a.type===`code-language`&&o.type===`code-block`&&typeof a.content==`string`){var s=a.content.replace(/\b#/g,`sharp`).replace(/\b\+\+/g,`pp`);s=(/[a-z][\w-]*/i.exec(s)||[``])[0].toLowerCase();var c=`language-`+s;o.alias?typeof o.alias==`string`?o.alias=[o.alias,c]:o.alias.push(c):o.alias=[c]}}}t(e.tokens)}),e.hooks.add(`wrap`,function(t){if(t.type===`code-block`){for(var n=``,r=0,i=t.classes.length;r<i;r++){var a=t.classes[r],o=/language-(.+)/.exec(a);if(o){n=o[1];break}}var s=e.languages[n];if(s)t.content=e.highlight(t.content.value,s,n);else if(n&&n!==`none`&&e.plugins.autoloader){var c=`md-`+new Date().valueOf()+`-`+Math.floor(Math.random()*0x2386f26fc10000);t.attributes.id=c,e.plugins.autoloader.loadLanguages(n,function(){var t=document.getElementById(c);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})}}}),RegExp(e.languages.markup.tag.pattern.source,`gi`),String.fromCodePoint||String.fromCharCode,e.languages.md=e.languages.markdown})(e)}k1.displayName=`objectivec`,k1.aliases=[`objc`];function k1(e){e.register(l1),e.languages.objectivec=e.languages.extend(`c`,{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete e.languages.objectivec[`class-name`],e.languages.objc=e.languages.objectivec}A1.displayName=`perl`,A1.aliases=[];function A1(e){(function(e){var t=`(?:\\((?:[^()\\\\]|\\\\[\\s\\S])*\\)|\\{(?:[^{}\\\\]|\\\\[\\s\\S])*\\}|\\[(?:[^[\\]\\\\]|\\\\[\\s\\S])*\\]|<(?:[^<>\\\\]|\\\\[\\s\\S])*>)`;e.languages.perl={comment:[{pattern:/(^\s*)=\w[\s\S]*?=cut.*/m,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0,greedy:!0}],string:[{pattern:RegExp(`\\b(?:q|qq|qw|qx)(?![a-zA-Z0-9])\\s*(?:`+[`([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1`,`([a-zA-Z0-9])(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2`,t].join(`|`)+`)`),greedy:!0},{pattern:/("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/'(?:[^'\\\r\n]|\\.)*'/,greedy:!0}],regex:[{pattern:RegExp(`\\b(?:m|qr)(?![a-zA-Z0-9])\\s*(?:`+[`([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1`,`([a-zA-Z0-9])(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2`,t].join(`|`)+`)[msixpodualngc]*`),greedy:!0},{pattern:RegExp(`(^|[^-])\\b(?:s|tr|y)(?![a-zA-Z0-9])\\s*(?:`+[`([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2`,`([a-zA-Z0-9])(?:(?!\\3)[^\\\\]|\\\\[\\s\\S])*\\3(?:(?!\\3)[^\\\\]|\\\\[\\s\\S])*\\3`,t+`\\s*`+t].join(`|`)+`)[msixpodualngcer]*`),lookbehind:!0,greedy:!0},{pattern:/\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|x|xor)\b))/,greedy:!0}],variable:[/[&*$@%]\{\^[A-Z]+\}/,/[&*$@%]\^[A-Z_]/,/[&*$@%]#?(?=\{)/,/[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+(?![\w$]))+(?:::)*/,/[&*$@%]\d+/,/(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/],filehandle:{pattern:/<(?![<=])\S*?>|\b_\b/,alias:`symbol`},"v-string":{pattern:/v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/,alias:`string`},function:{pattern:/(\bsub[ \t]+)\w+/,lookbehind:!0},keyword:/\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/,number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/,operator:/-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|xor)\b/,punctuation:/[{}[\];(),:]/}})(e)}j1.displayName=`markup-templating`,j1.aliases=[];function j1(e){e.register(m1),(function(e){function t(e,t){return`___`+e.toUpperCase()+t+`___`}Object.defineProperties(e.languages[`markup-templating`]={},{buildPlaceholders:{value:function(n,r,i,a){if(n.language===r){var o=n.tokenStack=[];n.code=n.code.replace(i,function(e){if(typeof a==`function`&&!a(e))return e;for(var i=o.length,s;n.code.indexOf(s=t(r,i))!==-1;)++i;return o[i]=e,s}),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language!==r||!n.tokenStack)return;n.grammar=e.languages[r];var i=0,a=Object.keys(n.tokenStack);function o(s){for(var c=0;c<s.length&&!(i>=a.length);c++){var l=s[c];if(typeof l==`string`||l.content&&typeof l.content==`string`){var u=a[i],d=n.tokenStack[u],f=typeof l==`string`?l:l.content,p=t(r,u),m=f.indexOf(p);if(m>-1){++i;var h=f.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),`language-`+r,d),_=f.substring(m+p.length),v=[];h&&v.push.apply(v,o([h])),v.push(g),_&&v.push.apply(v,o([_])),typeof l==`string`?s.splice.apply(s,[c,1].concat(v)):l.content=v}}else l.content&&o(l.content)}return s}o(n.tokens)}}})})(e)}M1.displayName=`php`,M1.aliases=[];function M1(e){e.register(j1),(function(e){var t=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,n=[{pattern:/\b(?:false|true)\b/i,alias:`boolean`},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],r=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,i=/<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,a=/[{}\[\](),:;]/;e.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:`important`},comment:t,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:`class-name`},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:`function`},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:`type-casting`,greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:`type-hint`,greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:`return-type`,greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:`type-declaration`,greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:`type-declaration`,greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:`static-context`,greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:`class-name-fully-qualified`,greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:`class-name-fully-qualified`,greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:`class-name-fully-qualified`,greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:`type-declaration`,greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:[`class-name-fully-qualified`,`type-declaration`],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:`static-context`,greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:[`class-name-fully-qualified`,`static-context`],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:`type-hint`,greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:[`class-name-fully-qualified`,`type-hint`],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:`return-type`,greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:[`class-name-fully-qualified`,`return-type`],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:n,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:r,operator:i,punctuation:a};var o={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:e.languages.php},s=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:`nowdoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:`symbol`,inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:`heredoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:`symbol`,inside:{punctuation:/^<<<"?|[";]$/}},interpolation:o}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:`backtick-quoted-string`,greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:`single-quoted-string`,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:`double-quoted-string`,greedy:!0,inside:{interpolation:o}}];e.languages.insertBefore(`php`,`variable`,{string:s,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:t,string:s,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:`class-name`,greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:[`class-name`,`class-name-fully-qualified`],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:n,number:r,operator:i,punctuation:a}},delimiter:{pattern:/^#\[|\]$/,alias:`punctuation`}}}}),e.hooks.add(`before-tokenize`,function(t){/<\?/.test(t.code)&&e.languages[`markup-templating`].buildPlaceholders(t,`php`,/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g)}),e.hooks.add(`after-tokenize`,function(t){e.languages[`markup-templating`].tokenizePlaceholders(t,`php`)})})(e)}N1.displayName=`python`,N1.aliases=[`py`];function N1(e){e.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:`punctuation`},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:`string`},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:[`annotation`,`punctuation`],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},e.languages.python[`string-interpolation`].inside.interpolation.inside.rest=e.languages.python,e.languages.py=e.languages.python}P1.displayName=`r`,P1.aliases=[];function P1(e){e.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:`operator`},boolean:/\b(?:FALSE|TRUE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:Inf|NaN)\b/,/(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+(?:\.\d*)?|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/],keyword:/\b(?:NA|NA_character_|NA_complex_|NA_integer_|NA_real_|NULL|break|else|for|function|if|in|next|repeat|while)\b/,operator:/->?>?|<(?:=|<?-)?|[>=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}}F1.displayName=`ruby`,F1.aliases=[`rb`];function F1(e){e.register(c1),(function(e){e.languages.ruby=e.languages.extend(`clike`,{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),e.languages.insertBefore(`ruby`,`operator`,{"double-colon":{pattern:/::/,alias:`punctuation`}});var t={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:e.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:`punctuation`}}};delete e.languages.ruby.function;var n=`(?:`+[`([^a-zA-Z0-9\\s{(\\[<=])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1`,`\\((?:[^()\\\\]|\\\\[\\s\\S]|\\((?:[^()\\\\]|\\\\[\\s\\S])*\\))*\\)`,`\\{(?:[^{}\\\\]|\\\\[\\s\\S]|\\{(?:[^{}\\\\]|\\\\[\\s\\S])*\\})*\\}`,`\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S]|\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S])*\\])*\\]`,`<(?:[^<>\\\\]|\\\\[\\s\\S]|<(?:[^<>\\\\]|\\\\[\\s\\S])*>)*>`].join(`|`)+`)`,r=`(?:"(?:\\\\.|[^"\\\\\\r\\n])*"|(?:\\b[a-zA-Z_]\\w*|[^\\s\\0-\\x7F]+)[?!]?|\\$.)`;e.languages.insertBefore(`ruby`,`keyword`,{"regex-literal":[{pattern:RegExp(`%r`+n+`[egimnosux]{0,6}`),greedy:!0,inside:{interpolation:t,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:t,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(`(^|[^:]):`+r),lookbehind:!0,greedy:!0},{pattern:RegExp(`([\\r\\n{(,][ \\t]*)`+r+`(?=:(?!:))`),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),e.languages.insertBefore(`ruby`,`string`,{"string-literal":[{pattern:RegExp(`%[qQiIwWs]?`+n),greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:`heredoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:t,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:`heredoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(`%x`+n),greedy:!0,inside:{interpolation:t,command:{pattern:/[\s\S]+/,alias:`string`}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:t,command:{pattern:/[\s\S]+/,alias:`string`}}}]}),delete e.languages.ruby.string,e.languages.insertBefore(`ruby`,`number`,{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),e.languages.rb=e.languages.ruby})(e)}I1.displayName=`rust`,I1.aliases=[];function I1(e){(function(e){for(var t=`\\/\\*(?:[^*/]|\\*(?!\\/)|\\/(?!\\*)|<self>)*\\*\\/`,n=0;n<2;n++)t=t.replace(/<self>/g,function(){return t});t=t.replace(/<self>/g,function(){return`[^\\s\\S]`}),e.languages.rust={comment:[{pattern:RegExp(`(^|[^\\\\])`+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:`attr-name`,inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:`punctuation`},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:`symbol`},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:`punctuation`},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:`function`},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:`class-name`},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:`namespace`},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:`namespace`,inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:`property`},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust[`closure-params`].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string})(e)}L1.displayName=`sass`,L1.aliases=[];function L1(e){e.register(h1),(function(e){e.languages.sass=e.languages.extend(`css`,{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore(`sass`,`atrule`,{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore(`sass`,`property`,{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore(`sass`,`punctuation`,{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})})(e)}R1.displayName=`scss`,R1.aliases=[];function R1(e){e.register(h1),e.languages.scss=e.languages.extend(`css`,{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:`important`},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),e.languages.insertBefore(`scss`,`atrule`,{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),e.languages.insertBefore(`scss`,`important`,{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),e.languages.insertBefore(`scss`,`function`,{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:`keyword`},placeholder:{pattern:/%[-\w]+/,alias:`selector`},statement:{pattern:/\B!(?:default|optional)\b/i,alias:`keyword`},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:`keyword`},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),e.languages.scss.atrule.inside.rest=e.languages.scss}z1.displayName=`sql`,z1.aliases=[];function z1(e){e.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}B1.displayName=`swift`,B1.aliases=[];function B1(e){e.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(`(^|[^"#])(?:"(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|\\r\\n|[^(])|[^\\\\\\r\\n"])*"|"""(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|[^(])|[^\\\\"]|"(?!""))*""")(?!["#])`),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:`punctuation`},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(`(^|[^"#])(#+)(?:"(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|\\r\\n|[^#])|[^\\\\\\r\\n])*?"|"""(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|[^#])|[^\\\\])*?""")\\2`),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:`punctuation`},string:/[\s\S]+/}}],directive:{pattern:RegExp(`#(?:(?:elseif|if)\\b(?:[ ]*(?:![ \\t]*)?(?:\\b\\w+\\b(?:[ \\t]*\\((?:[^()]|\\([^()]*\\))*\\))?|\\((?:[^()]|\\([^()]*\\))*\\))(?:[ \\t]*(?:&&|\\|\\|))?)+|(?:else|endif)\\b)`),alias:`property`,inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:`constant`},"other-directive":{pattern:/#\w+\b/,alias:`property`},attribute:{pattern:/@\w+/,alias:`atrule`},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:`function`},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:`important`},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:`constant`},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:`keyword`},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},e.languages.swift[`string-literal`].forEach(function(t){t.inside.interpolation.inside=e.languages.swift})}V1.displayName=`typescript`,V1.aliases=[`ts`];function V1(e){e.register(x1),(function(e){e.languages.typescript=e.languages.extend(`javascript`,{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript[`literal-property`];var t=e.languages.extend(`typescript`,{});delete t[`class-name`],e.languages.typescript[`class-name`].inside=t,e.languages.insertBefore(`typescript`,`function`,{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:`operator`},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:`class-name`,inside:t}}}}),e.languages.ts=e.languages.typescript})(e)}H1.displayName=`basic`,H1.aliases=[];function H1(e){e.languages.basic={comment:{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^\w +\-.])*"/,greedy:!0},number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SELECT CASE|SHARED|SHELL|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,function:/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}}U1.displayName=`vbnet`,U1.aliases=[];function U1(e){e.register(H1),e.languages.vbnet=e.languages.extend(`basic`,{comment:[{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},{pattern:/(^|[^\\:])'.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(^|[^"])"(?:""|[^"])*"(?!")/,lookbehind:!0,greedy:!0},keyword:/(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDBL|CDEC|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DEFAULT|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LET|LIB|LIKE|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPERATOR|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHELL|SHORT|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SWAP|SYNCLOCK|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i,punctuation:/[,;:(){}]/})}var W1=0,G1={},K1={util:{type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++W1}),e.__id},clone:function e(t,n){n||={};var r,i;switch(K1.util.type(t)){case`Object`:if(i=K1.util.objId(t),n[i])return n[i];for(var a in r={},n[i]=r,t)t.hasOwnProperty(a)&&(r[a]=e(t[a],n));return r;case`Array`:return i=K1.util.objId(t),n[i]?n[i]:(r=[],n[i]=r,t.forEach(function(t,i){r[i]=e(t,n)}),r);default:return t}}},languages:{plain:G1,plaintext:G1,text:G1,txt:G1,extend:function(e,t){var n=K1.util.clone(K1.languages[e]);for(var r in t)n[r]=t[r];return n},insertBefore:function(e,t,n,r){r||=K1.languages;var i=r[e],a={};for(var o in i)if(i.hasOwnProperty(o)){if(o==t)for(var s in n)n.hasOwnProperty(s)&&(a[s]=n[s]);n.hasOwnProperty(o)||(a[o]=i[o])}var c=r[e];return r[e]=a,K1.languages.DFS(K1.languages,function(t,n){n===c&&t!=e&&(this[t]=a)}),a},DFS:function e(t,n,r,i){i||={};var a=K1.util.objId;for(var o in t)if(t.hasOwnProperty(o)){n.call(t,o,t[o],r||o);var s=t[o],c=K1.util.type(s);c===`Object`&&!i[a(s)]?(i[a(s)]=!0,e(s,n,null,i)):c===`Array`&&!i[a(s)]&&(i[a(s)]=!0,e(s,n,o,i))}}},plugins:{},highlight:function(e,t,n){var r={code:e,grammar:t,language:n};if(K1.hooks.run(`before-tokenize`,r),!r.grammar)throw Error(`The language "`+r.language+`" has no grammar.`);return r.tokens=K1.tokenize(r.code,r.grammar),K1.hooks.run(`after-tokenize`,r),q1.stringify(K1.util.encode(r.tokens),r.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var i=new X1;return Z1(i,i.head,e),Y1(e,i,t,i.head,0),$1(i)},hooks:{all:{},add:function(e,t){var n=K1.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=K1.hooks.all[e];if(!(!n||!n.length))for(var r=0,i;i=n[r++];)i(t)}},Token:q1};function q1(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=(r||``).length|0}function J1(e,t,n,r){e.lastIndex=t;var i=e.exec(n);if(i&&r&&i[1]){var a=i[1].length;i.index+=a,i[0]=i[0].slice(a)}return i}function Y1(e,t,n,r,i,a){for(var o in n)if(!(!n.hasOwnProperty(o)||!n[o])){var s=n[o];s=Array.isArray(s)?s:[s];for(var c=0;c<s.length;++c){if(a&&a.cause==o+`,`+c)return;var l=s[c],u=l.inside,d=!!l.lookbehind,f=!!l.greedy,p=l.alias;if(f&&!l.pattern.global){var m=l.pattern.toString().match(/[imsuy]*$/)[0];l.pattern=RegExp(l.pattern.source,m+`g`)}for(var h=l.pattern||l,g=r.next,_=i;g!==t.tail&&!(a&&_>=a.reach);_+=g.value.length,g=g.next){var v=g.value;if(t.length>e.length)return;if(!(v instanceof q1)){var y=1,b;if(f){if(b=J1(h,_,e,d),!b||b.index>=e.length)break;var x=b.index,S=b.index+b[0].length,C=_;for(C+=g.value.length;x>=C;)g=g.next,C+=g.value.length;if(C-=g.value.length,_=C,g.value instanceof q1)continue;for(var w=g;w!==t.tail&&(C<S||typeof w.value==`string`);w=w.next)y++,C+=w.value.length;y--,v=e.slice(_,C),b.index-=_}else if(b=J1(h,0,v,d),!b)continue;var x=b.index,T=b[0],E=v.slice(0,x),D=v.slice(x+T.length),O=_+v.length;a&&O>a.reach&&(a.reach=O);var k=g.prev;E&&(k=Z1(t,k,E),_+=E.length),Q1(t,k,y);var A=new q1(o,u?K1.tokenize(T,u):T,p,T);if(g=Z1(t,k,A),D&&Z1(t,g,D),y>1){var j={cause:o+`,`+c,reach:O};Y1(e,t,n,g.prev,_,j),a&&j.reach>a.reach&&(a.reach=j.reach)}}}}}}function X1(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function Z1(e,t,n){var r=t.next,i={value:n,prev:t,next:r};return t.next=i,r.prev=i,e.length++,i}function Q1(e,t,n){for(var r=t.next,i=0;i<n&&r!==e.tail;i++)r=r.next;t.next=r,r.prev=t,e.length-=i}function $1(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}var e0=K1;function t0(){}t0.prototype=e0;var n0=new t0;n0.highlight=r0,n0.register=i0,n0.alias=a0,n0.registered=o0,n0.listLanguages=s0,n0.util.encode=l0,n0.Token.stringify=c0;function r0(e,t){if(typeof e!=`string`)throw TypeError("Expected `string` for `value`, got `"+e+"`");let n,r;if(t&&typeof t==`object`)n=t;else{if(r=t,typeof r!=`string`)throw TypeError("Expected `string` for `name`, got `"+r+"`");if(Object.hasOwn(n0.languages,r))n=n0.languages[r];else throw Error("Unknown language: `"+r+"` is not registered")}return{type:`root`,children:e0.highlight.call(n0,e,n,r)}}function i0(e){if(typeof e!=`function`||!e.displayName)throw Error("Expected `function` for `syntax`, got `"+e+"`");Object.hasOwn(n0.languages,e.displayName)||e(n0)}function a0(e,t){let n=n0.languages,r={};typeof e==`string`?t&&(r[e]=t):r=e;let i;for(i in r)if(Object.hasOwn(r,i)){let e=r[i],t=typeof e==`string`?[e]:e,a=-1;for(;++a<t.length;)n[t[a]]=n[i]}}function o0(e){if(typeof e!=`string`)throw TypeError("Expected `string` for `aliasOrLanguage`, got `"+e+"`");return Object.hasOwn(n0.languages,e)}function s0(){let e=n0.languages,t=[],n;for(n in e)Object.hasOwn(e,n)&&typeof e[n]==`object`&&t.push(n);return t}function c0(e,t){if(typeof e==`string`)return{type:`text`,value:e};if(Array.isArray(e)){let n=[],r=-1;for(;++r<e.length;)e[r]!==null&&e[r]!==void 0&&e[r]!==``&&n.push(c0(e[r],t));return n}let n={attributes:{},classes:[`token`,e.type],content:c0(e.content,t),language:t,tag:`span`,type:e.type};return e.alias&&n.classes.push(...typeof e.alias==`string`?[e.alias]:e.alias),n0.hooks.run(`wrap`,n),jr(n.tag+`.`+n.classes.join(`.`),u0(n.attributes),n.content)}function l0(e){return e}function u0(e){let t;for(t in e)Object.hasOwn(e,t)&&(e[t]=Mr(e[t]));return e}n0.register(c1),n0.register(l1),n0.register(u1),n0.register(d1),n0.register(f1),n0.register(p1),n0.register(m1),n0.register(h1),n0.register(g1),n0.register(_1),n0.register(v1),n0.register(y1),n0.register(b1),n0.register(x1),n0.register(S1),n0.register(C1),n0.register(w1),n0.register(T1),n0.register(E1),n0.register(D1),n0.register(O1),n0.register(k1),n0.register(A1),n0.register(j1),n0.register(M1),n0.register(N1),n0.register(P1),n0.register(F1),n0.register(I1),n0.register(L1),n0.register(R1),n0.register(z1),n0.register(B1),n0.register(V1),n0.register(H1),n0.register(U1);var d0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/code.tsx`,f0=(0,B.lazy)(()=>j(()=>import(`./esm-Bpmih92m.js`),__vite__mapDeps([12,1,13,6,7,14,15,10,16])));function p0(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}var m0=n0.listLanguages().slice().sort().map(e=>({value:e,title:e}));function h0({field:e,value:t,onChange:n}){let r=(0,B.useMemo)(()=>p0(t),[t]),i=e.hints.defaultLang??`text`,a=r.lang??i,o=e=>n(!e.code&&!e.lang?``:{code:e.code??``,lang:e.lang??i});return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2 min-w-0`,children:[(0,X.jsxDEV)(rX,{value:a,onChange:e=>o({code:r.code,lang:e}),items:m0,placeholder:`language`},void 0,!1,{fileName:d0,lineNumber:45,columnNumber:7},this),(0,X.jsxDEV)(`div`,{"data-color-mode":`dark`,children:(0,X.jsxDEV)(`div`,{className:`rounded-xl overflow-hidden border border-border min-w-0`,children:(0,X.jsxDEV)(B.Suspense,{fallback:(0,X.jsxDEV)(`div`,{className:`text-sm text-muted`,children:`…`},void 0,!1,{fileName:d0,lineNumber:53,columnNumber:31},this),children:(0,X.jsxDEV)(f0,{value:r.code??``,language:a,onChange:e=>o({code:e.target.value,lang:a}),padding:12,style:{fontFamily:`ui-monospace, monospace`,fontSize:13,background:`transparent`,minHeight:`8rem`}},void 0,!1,{fileName:d0,lineNumber:54,columnNumber:13},this)},void 0,!1,{fileName:d0,lineNumber:53,columnNumber:11},this)},void 0,!1,{fileName:d0,lineNumber:52,columnNumber:9},this)},void 0,!1,{fileName:d0,lineNumber:51,columnNumber:7},this)]},void 0,!0,{fileName:d0,lineNumber:44,columnNumber:5},this)}function g0({value:e}){let t=p0(e);return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2 min-w-0`,children:[(0,X.jsxDEV)(`div`,{className:`flex h-9 w-full items-center rounded-lg border border-transparent px-3 text-sm text-muted`,children:t.lang&&(0,X.jsxDEV)(`span`,{className:`uppercase`,children:t.lang},void 0,!1,{fileName:d0,lineNumber:78,columnNumber:20},this)},void 0,!1,{fileName:d0,lineNumber:77,columnNumber:7},this),(0,X.jsxDEV)(`pre`,{className:`min-w-0 min-h-32 overflow-x-auto whitespace-pre-wrap rounded-lg border border-transparent p-3 font-mono text-[13px] leading-normal text-text/90`,children:t.code||(0,X.jsxDEV)(at,{},void 0,!1,{fileName:d0,lineNumber:81,columnNumber:20},this)},void 0,!1,{fileName:d0,lineNumber:80,columnNumber:7},this)]},void 0,!0,{fileName:d0,lineNumber:76,columnNumber:5},this)}function _0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`none`,bare:e.bare,view:e=>(0,X.jsxDEV)(g0,{value:e},void 0,!1,{fileName:d0,lineNumber:99,columnNumber:20},this),edit:(t,n)=>(0,X.jsxDEV)(h0,{field:e.field,value:t,onChange:n},void 0,!1,{fileName:d0,lineNumber:101,columnNumber:9},this)},void 0,!1,{fileName:d0,lineNumber:89,columnNumber:5},this)}function v0({value:e}){return(0,X.jsxDEV)(`span`,{className:`truncate text-muted`,children:p0(e).lang??`code`},void 0,!1,{fileName:d0,lineNumber:109,columnNumber:10},this)}L({kinds:[`code`],layout:`block`,Page:_0,Inline:v0});var y0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/embed.tsx`;function b0(e){let t=e=>!!e&&typeof e==`object`&&typeof e.url==`string`;if(Array.isArray(e))return e.filter(t);if(t(e))return[e];try{let n=JSON.parse(String(e??``));return Array.isArray(n)?n.filter(t):t(n)?[n]:[]}catch{return[]}}var x0=e=>(e.type===`video`||e.type===`rich`)&&!!e.html;function S0({rec:e,onOpen:t,onRemove:n}){return(0,X.jsxDEV)(`div`,{className:`group relative @container`,children:[(0,X.jsxDEV)(`button`,{type:`button`,onClick:t,className:`flex w-full items-center gap-2 overflow-hidden rounded-lg border border-border text-left @[20rem]:flex-col @[20rem]:items-stretch @[20rem]:gap-0`,children:[(0,X.jsxDEV)(`div`,{className:`relative aspect-video w-20 shrink-0 bg-muted/40 @[20rem]:w-full`,children:[e.thumbnail?(0,X.jsxDEV)(`img`,{src:e.thumbnail,alt:``,className:`h-full w-full object-cover`},void 0,!1,{fileName:y0,lineNumber:45,columnNumber:13},this):(0,X.jsxDEV)(Fc,{className:`absolute inset-0 m-auto text-muted`,size:20},void 0,!1,{fileName:y0,lineNumber:47,columnNumber:13},this),x0(e)&&(0,X.jsxDEV)(`span`,{className:`absolute inset-0 m-auto flex h-8 w-8 items-center justify-center rounded-full bg-black/60 text-white`,children:(0,X.jsxDEV)(E,{size:16},void 0,!1,{fileName:y0,lineNumber:51,columnNumber:15},this)},void 0,!1,{fileName:y0,lineNumber:50,columnNumber:13},this)]},void 0,!0,{fileName:y0,lineNumber:43,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`min-w-0 flex-1 px-2 py-1.5`,children:[(0,X.jsxDEV)(`div`,{className:`truncate text-sm font-medium`,children:e.title??e.url},void 0,!1,{fileName:y0,lineNumber:56,columnNumber:11},this),e.provider&&(0,X.jsxDEV)(`div`,{className:`truncate text-xs text-muted`,children:e.provider},void 0,!1,{fileName:y0,lineNumber:57,columnNumber:28},this)]},void 0,!0,{fileName:y0,lineNumber:55,columnNumber:9},this)]},void 0,!0,{fileName:y0,lineNumber:38,columnNumber:7},this),n&&(0,X.jsxDEV)(T,{type:`button`,variant:`ghost`,size:`iconSm`,className:`absolute right-1 top-1 text-muted opacity-0 hover:text-danger group-hover:opacity-100`,onClick:n,children:(0,X.jsxDEV)(ke,{size:13},void 0,!1,{fileName:y0,lineNumber:68,columnNumber:11},this)},void 0,!1,{fileName:y0,lineNumber:61,columnNumber:9},this)]},void 0,!0,{fileName:y0,lineNumber:37,columnNumber:5},this)}function C0({rec:e,onClose:t}){let{t:n}=l();return(0,X.jsxDEV)(c$,{open:!0,onOpenChange:e=>!e&&t(),children:(0,X.jsxDEV)(d$,{className:`max-w-2xl`,children:[(0,X.jsxDEV)(p$,{className:`truncate`,children:e.title??e.url},void 0,!1,{fileName:y0,lineNumber:81,columnNumber:9},this),x0(e)?(0,X.jsxDEV)(`iframe`,{title:e.title??`embed`,srcDoc:e.html,sandbox:`allow-scripts allow-presentation`,allowFullScreen:!0,className:`aspect-video w-full rounded-md border-0`},void 0,!1,{fileName:y0,lineNumber:83,columnNumber:11},this):(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-3`,children:[e.thumbnail&&(0,X.jsxDEV)(`img`,{src:e.thumbnail,alt:``,className:`w-full rounded-md`},void 0,!1,{fileName:y0,lineNumber:92,columnNumber:31},this),e.description&&(0,X.jsxDEV)(`p`,{className:`text-sm text-muted`,children:e.description},void 0,!1,{fileName:y0,lineNumber:93,columnNumber:33},this)]},void 0,!0,{fileName:y0,lineNumber:91,columnNumber:11},this),(0,X.jsxDEV)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,children:(0,X.jsxDEV)(T,{type:`button`,variant:`outline`,className:`w-full`,children:[(0,X.jsxDEV)(kc,{size:15},void 0,!1,{fileName:y0,lineNumber:98,columnNumber:13},this),` `,n(`embed.open`)]},void 0,!0,{fileName:y0,lineNumber:97,columnNumber:11},this)},void 0,!1,{fileName:y0,lineNumber:96,columnNumber:9},this)]},void 0,!0,{fileName:y0,lineNumber:80,columnNumber:7},this)},void 0,!1,{fileName:y0,lineNumber:79,columnNumber:5},this)}function w0({value:e,onChange:t,multiple:n}){let{t:r}=l(),i=b0(e),[a,o]=(0,B.useState)(null),[s,c]=(0,B.useState)(``),[u,d]=(0,B.useState)(!1),[f,p]=(0,B.useState)(!1),m=e=>t?.(e.length?e:``);async function h(){if(u||!s.trim())return;d(!0),p(!1);let e=await br(s.trim());if(d(!1),!e)return p(!0);m([...i,e]),c(``)}return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2`,children:[i.length===0&&!t&&(0,X.jsxDEV)(at,{},void 0,!1,{fileName:y0,lineNumber:131,columnNumber:42},this),(0,X.jsxDEV)(`div`,{className:`grid grid-cols-1 gap-2 @md:grid-cols-2 @2xl:grid-cols-3`,children:i.map((e,n)=>(0,X.jsxDEV)(S0,{rec:e,onOpen:()=>o(e),onRemove:t?()=>m(i.filter((e,t)=>t!==n)):void 0},`${e.url}-${n}`,!1,{fileName:y0,lineNumber:134,columnNumber:11},this))},void 0,!1,{fileName:y0,lineNumber:132,columnNumber:7},this),t&&(n||i.length===0)&&(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1`,children:[(0,X.jsxDEV)(`div`,{className:`flex gap-2`,children:[(0,X.jsxDEV)(Te,{value:s,placeholder:r(`embed.pastePlaceholder`),onChange:e=>c(e.target.value),onKeyDown:e=>e.key===`Enter`&&(e.preventDefault(),h())},void 0,!1,{fileName:y0,lineNumber:145,columnNumber:13},this),(0,X.jsxDEV)(T,{type:`button`,variant:`outline`,disabled:u||!s.trim(),onClick:h,children:u?`…`:`+`},void 0,!1,{fileName:y0,lineNumber:151,columnNumber:13},this)]},void 0,!0,{fileName:y0,lineNumber:144,columnNumber:11},this),f&&(0,X.jsxDEV)(`span`,{className:`text-xs text-danger`,children:r(`embed.resolveFailed`)},void 0,!1,{fileName:y0,lineNumber:155,columnNumber:19},this)]},void 0,!0,{fileName:y0,lineNumber:143,columnNumber:9},this),a&&(0,X.jsxDEV)(C0,{rec:a,onClose:()=>o(null)},void 0,!1,{fileName:y0,lineNumber:158,columnNumber:16},this)]},void 0,!0,{fileName:y0,lineNumber:130,columnNumber:5},this)}function T0(e){let t=e.mode!==`view`,n=e.field.hints.multiple===!0;return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1.5`,children:[e.label&&(0,X.jsxDEV)(se,{label:e.label,required:e.required},void 0,!1,{fileName:y0,lineNumber:168,columnNumber:19},this),(0,X.jsxDEV)(w0,{value:e.value,onChange:t?e.onChange:void 0,multiple:n},void 0,!1,{fileName:y0,lineNumber:169,columnNumber:7},this),e.error&&(0,X.jsxDEV)(ge,{error:e.error},void 0,!1,{fileName:y0,lineNumber:170,columnNumber:19},this)]},void 0,!0,{fileName:y0,lineNumber:167,columnNumber:5},this)}function E0(e){let t=b0(e.value);if(t.length===0)return(0,X.jsxDEV)(at,{},void 0,!1,{fileName:y0,lineNumber:177,columnNumber:33},this);let n=t[0];return(0,X.jsxDEV)(`span`,{className:`inline-flex min-w-0 items-center gap-1`,children:[x0(n)?(0,X.jsxDEV)(E,{size:12},void 0,!1,{fileName:y0,lineNumber:181,columnNumber:26},this):(0,X.jsxDEV)(Fc,{size:12},void 0,!1,{fileName:y0,lineNumber:181,columnNumber:47},this),(0,X.jsxDEV)(`span`,{className:`truncate`,children:n.title??n.url},void 0,!1,{fileName:y0,lineNumber:182,columnNumber:7},this),t.length>1&&(0,X.jsxDEV)(`span`,{className:`text-muted`,children:[`+`,t.length-1]},void 0,!0,{fileName:y0,lineNumber:183,columnNumber:27},this)]},void 0,!0,{fileName:y0,lineNumber:180,columnNumber:5},this)}L({kinds:[`embed`],layout:`block`,Page:T0,Inline:E0});var D0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/reminder.tsx`;function O0(){return new Date().toISOString().slice(0,10)}function k0(e,t){return Math.round((Date.parse(e)-Date.parse(t))/864e5)}function A0(e,t,n=O0()){if(!e)return`neutral`;let r=k0(e,n);return r<0?`overdue`:r===0?`today`:r<=t?`soon`:`neutral`}var j0={overdue:`text-red-600`,today:`text-primary font-medium`,soon:`text-amber-600`,neutral:``};function M0({field:e,value:t}){let{t:n}=l(),r=String(t??``);if(!r)return(0,X.jsxDEV)(at,{},void 0,!1,{fileName:D0,lineNumber:40,columnNumber:18},this);let i=A0(r,e.hints.lead??30),a=k0(r,O0()),o=i===`today`?n(`reminder.today`):i===`overdue`?n(`reminder.overdue`,{days:Math.abs(a)}):i===`soon`?n(`reminder.inDays`,{days:a}):null;return(0,X.jsxDEV)(`span`,{className:`tabular-nums ${j0[i]}`,children:[qR(r),o?(0,X.jsxDEV)(`span`,{className:`ml-2 text-xs`,children:o},void 0,!1,{fileName:D0,lineNumber:52,columnNumber:15},this):null]},void 0,!0,{fileName:D0,lineNumber:50,columnNumber:5},this)}function N0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-40`,bare:e.bare,view:t=>(0,X.jsxDEV)(M0,{field:e.field,value:t},void 0,!1,{fileName:D0,lineNumber:62,columnNumber:20},this),edit:(e,t)=>(0,X.jsxDEV)(Te,{type:`date`,value:String(e??``),onChange:e=>t(e.target.value)},void 0,!1,{fileName:D0,lineNumber:64,columnNumber:9},this)},void 0,!1,{fileName:D0,lineNumber:59,columnNumber:5},this)}function P0({field:e,value:t}){return(0,X.jsxDEV)(M0,{field:e,value:t},void 0,!1,{fileName:D0,lineNumber:71,columnNumber:10},this)}L({kinds:[`reminder`],Page:N0,Inline:P0});var F0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/weight.tsx`;function I0(e){if(e==null||e===``||Number.isNaN(Number(e)))return``;let t=Number(e);return t<1e3?`${t} г`:`${Number((t/1e3).toFixed(2))} кг`}function L0({value:e,onChange:t}){let n=e===``?``:Number(e),[r,i]=(0,B.useState)(n!==``&&Number(n)>=1e3?`kg`:`g`),a=n===``?``:r===`kg`?Number(n)/1e3:n,o=e=>Math.round(r===`kg`?e*1e3:e);return(0,X.jsxDEV)(`div`,{className:`flex gap-2 min-w-0`,children:[(0,X.jsxDEV)(Te,{type:`number`,className:`flex-1 min-w-0`,min:0,value:a,onChange:e=>t(e.target.value===``?``:String(o(Number(e.target.value))))},void 0,!1,{fileName:F0,lineNumber:23,columnNumber:7},this),(0,X.jsxDEV)(st,{value:r,onValueChange:e=>i(e),children:[(0,X.jsxDEV)(ot,{className:`w-20`,children:(0,X.jsxDEV)(Re,{},void 0,!1,{fileName:F0,lineNumber:32,columnNumber:11},this)},void 0,!1,{fileName:F0,lineNumber:31,columnNumber:9},this),(0,X.jsxDEV)(Le,{children:[(0,X.jsxDEV)(Ee,{value:`g`,children:`г`},void 0,!1,{fileName:F0,lineNumber:35,columnNumber:11},this),(0,X.jsxDEV)(Ee,{value:`kg`,children:`кг`},void 0,!1,{fileName:F0,lineNumber:36,columnNumber:11},this)]},void 0,!0,{fileName:F0,lineNumber:34,columnNumber:9},this)]},void 0,!0,{fileName:F0,lineNumber:30,columnNumber:7},this)]},void 0,!0,{fileName:F0,lineNumber:22,columnNumber:5},this)}function R0({value:e}){let t=I0(e);return t?(0,X.jsxDEV)(`span`,{className:`tabular-nums`,children:t},void 0,!1,{fileName:F0,lineNumber:45,columnNumber:14},this):(0,X.jsxDEV)(at,{},void 0,!1,{fileName:F0,lineNumber:45,columnNumber:58},this)}function z0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-40`,bare:e.bare,view:e=>(0,X.jsxDEV)(R0,{value:e},void 0,!1,{fileName:F0,lineNumber:61,columnNumber:20},this),edit:(e,t)=>(0,X.jsxDEV)(L0,{value:String(e??``),onChange:t},void 0,!1,{fileName:F0,lineNumber:63,columnNumber:9},this)},void 0,!1,{fileName:F0,lineNumber:50,columnNumber:5},this)}function B0({value:e}){return(0,X.jsxDEV)(R0,{value:e},void 0,!1,{fileName:F0,lineNumber:70,columnNumber:10},this)}L({kinds:[`weight`],Page:z0,Inline:B0});var V0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/dimensions.tsx`;function H0(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}function U0(e){let t=H0(e);if(t.w==null||t.h==null||t.d==null)return``;let n=e=>Number((e/10).toFixed(1));return`${n(t.w)}×${n(t.h)}×${n(t.d)} см`}function W0({value:e,onChange:t}){let n=H0(e),r=(e,r)=>{let i={...n,[e]:r===``?void 0:Math.round(Number(r))};t(i.w==null&&i.h==null&&i.d==null?``:i)},i=(e,t)=>(0,X.jsxDEV)(Te,{type:`number`,min:0,className:`w-20 min-w-0`,placeholder:t,value:n[e]??``,onChange:t=>r(e,t.target.value)},void 0,!1,{fileName:V0,lineNumber:27,columnNumber:5},this);return(0,X.jsxDEV)(`div`,{className:`flex items-center gap-1 min-w-0 ${R}`,children:[i(`w`,`Ш`),(0,X.jsxDEV)(`span`,{className:`text-muted`,children:`×`},void 0,!1,{fileName:V0,lineNumber:31,columnNumber:23},this),i(`h`,`В`),(0,X.jsxDEV)(`span`,{className:`text-muted`,children:`×`},void 0,!1,{fileName:V0,lineNumber:31,columnNumber:76},this),i(`d`,`Г`),(0,X.jsxDEV)(`span`,{className:`ml-1 text-xs text-muted`,children:`мм`},void 0,!1,{fileName:V0,lineNumber:32,columnNumber:7},this)]},void 0,!0,{fileName:V0,lineNumber:30,columnNumber:5},this)}function G0({value:e}){let t=U0(e);return t?(0,X.jsxDEV)(`span`,{className:`tabular-nums`,children:t},void 0,!1,{fileName:V0,lineNumber:39,columnNumber:14},this):(0,X.jsxDEV)(at,{},void 0,!1,{fileName:V0,lineNumber:39,columnNumber:58},this)}function K0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-fit`,bare:e.bare,view:e=>(0,X.jsxDEV)(G0,{value:e},void 0,!1,{fileName:V0,lineNumber:45,columnNumber:20},this),edit:(e,t)=>(0,X.jsxDEV)(W0,{value:e,onChange:t},void 0,!1,{fileName:V0,lineNumber:46,columnNumber:34},this)},void 0,!1,{fileName:V0,lineNumber:43,columnNumber:5},this)}function q0({value:e}){return(0,X.jsxDEV)(G0,{value:e},void 0,!1,{fileName:V0,lineNumber:49,columnNumber:58},this)}L({kinds:[`dimensions`],Page:K0,Inline:q0});var J0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/internal-api-token.tsx`;function Y0(){let e=crypto.getRandomValues(new Uint8Array(32)),t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function X0({label:e}){let{t}=l(),[n,r]=(0,B.useState)([]),[i,a]=(0,B.useState)(``),[o,s]=(0,B.useState)(null),[c,u]=(0,B.useState)(!1);function d(){Tr().then(e=>e.ok&&r(e.data))}(0,B.useEffect)(d,[]);async function f(){if(!i.trim())return;u(!0);let e=Y0(),n=await Dr(i.trim(),e);u(!1),n.ok?(s(e),a(``),d()):be.error(t(`auth.genericError`))}async function p(e){window.confirm(t(`auth.tokenConfirmRevoke`))&&((await hr(e)).ok?d():be.error(t(`auth.genericError`)))}return(0,X.jsxDEV)(`div`,{children:[(0,X.jsxDEV)(`h2`,{className:`mb-2 text-sm font-semibold uppercase tracking-wide text-muted`,children:t(e||`auth.tokensTitle`)},void 0,!1,{fileName:J0,lineNumber:64,columnNumber:7},this),o&&(0,X.jsxDEV)(`div`,{className:`mb-3 rounded-xl border border-accent/40 bg-accent/10 px-4 py-3 text-sm text-accent break-all`,children:[t(`auth.tokenCreatedOnce`),` `,(0,X.jsxDEV)(`code`,{children:o},void 0,!1,{fileName:J0,lineNumber:67,columnNumber:40},this)]},void 0,!0,{fileName:J0,lineNumber:66,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`mb-3 flex gap-2`,children:[(0,X.jsxDEV)(Te,{placeholder:t(`auth.tokenNamePlaceholder`),value:i,onChange:e=>a(e.target.value)},void 0,!1,{fileName:J0,lineNumber:71,columnNumber:9},this),(0,X.jsxDEV)(T,{type:`button`,disabled:c||!i.trim(),onClick:f,children:t(`auth.tokenCreate`)},void 0,!1,{fileName:J0,lineNumber:72,columnNumber:9},this)]},void 0,!0,{fileName:J0,lineNumber:70,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2`,children:n.map(e=>(0,X.jsxDEV)(Nr,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,X.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxDEV)(`div`,{className:`font-semibold text-text`,children:e.name},void 0,!1,{fileName:J0,lineNumber:80,columnNumber:15},this),(0,X.jsxDEV)(`div`,{className:`text-xs text-muted`,children:[e.createdAt,` `,e.lastUsedAt?`· last used ${e.lastUsedAt}`:``]},void 0,!0,{fileName:J0,lineNumber:81,columnNumber:15},this)]},void 0,!0,{fileName:J0,lineNumber:79,columnNumber:13},this),(0,X.jsxDEV)(T,{variant:`ghost`,size:`sm`,type:`button`,onClick:()=>p(e.id),className:`shrink-0 border border-danger/40 text-danger hover:bg-danger/10 hover:text-danger`,children:t(`auth.tokenRevoke`)},void 0,!1,{fileName:J0,lineNumber:85,columnNumber:13},this)]},e.id,!0,{fileName:J0,lineNumber:78,columnNumber:11},this))},void 0,!1,{fileName:J0,lineNumber:76,columnNumber:7},this)]},void 0,!0,{fileName:J0,lineNumber:63,columnNumber:5},this)}L({kinds:[`internalApiToken`],layout:`block`,Page:X0});var Z0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/LoginPage.tsx`,Q0=[Yn.string({key:`login`,label:`auth.login`,required:!0}),Yn.password({key:`password`,label:`auth.password`,required:!0})];function $0(){let{t:e}=l(),{values:t,bridge:n}=Nn({fm:ur(Q0),mode:`edit`,recordCtx:{vault:``,module:`auth`,recordId:`login`},initial:{login:``,password:``}}),[r,i]=(0,B.useState)(null),[a,o]=(0,B.useState)(!1);async function s(n){n.preventDefault(),o(!0),i(null);let r=await Or(t.login,t.password);if(o(!1),!r.ok){i(r.status===401?e(`auth.invalidCredentials`):e(`auth.genericError`));return}window.location.href=`/`}return(0,X.jsxDEV)(`div`,{className:`flex min-h-dvh items-center justify-center bg-bg px-4`,children:(0,X.jsxDEV)(`form`,{onSubmit:s,className:`w-full max-w-sm rounded-2xl border border-border bg-card p-6`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-6 text-xl font-bold text-text`,children:e(`auth.loginTitle`)},void 0,!1,{fileName:Z0,lineNumber:46,columnNumber:9},this),r&&(0,X.jsxDEV)(`div`,{className:`mb-4 rounded-lg border border-danger/40 bg-danger/10 px-3 py-2 text-sm text-danger`,children:r},void 0,!1,{fileName:Z0,lineNumber:47,columnNumber:19},this),(0,X.jsxDEV)(`div`,{className:`mb-5 flex flex-col gap-3`,children:(0,X.jsxDEV)(In,{items:Q0,ctx:{bridge:n}},void 0,!1,{fileName:Z0,lineNumber:49,columnNumber:11},this)},void 0,!1,{fileName:Z0,lineNumber:48,columnNumber:9},this),(0,X.jsxDEV)(T,{type:`submit`,disabled:a,className:`w-full`,children:e(`auth.signIn`)},void 0,!1,{fileName:Z0,lineNumber:51,columnNumber:9},this)]},void 0,!0,{fileName:Z0,lineNumber:45,columnNumber:7},this)},void 0,!1,{fileName:Z0,lineNumber:44,columnNumber:5},this)}var e2=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/SetupPage.tsx`,t2=[Yn.string({key:`displayName`,label:`auth.displayName`,required:!0}),Yn.string({key:`login`,label:`auth.login`,required:!0}),Yn.password({key:`password`,label:`auth.password`,required:!0})];function n2(){let{t:e}=l(),{values:t,bridge:n}=Nn({fm:ur(t2),mode:`edit`,recordCtx:{vault:``,module:`auth`,recordId:`setup`},initial:{displayName:``,login:``,password:``}}),[r,i]=(0,B.useState)(null),[a,o]=(0,B.useState)(!1);async function s(n){n.preventDefault(),o(!0),i(null);let r=await Er(t.login,t.password,t.displayName);if(o(!1),!r.ok){i(e(`auth.genericError`));return}window.location.href=`/`}return(0,X.jsxDEV)(`div`,{className:`flex min-h-dvh items-center justify-center bg-bg px-4`,children:(0,X.jsxDEV)(`form`,{onSubmit:s,className:`w-full max-w-sm rounded-2xl border border-border bg-card p-6`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-6 text-xl font-bold text-text`,children:e(`auth.setupTitle`)},void 0,!1,{fileName:e2,lineNumber:47,columnNumber:9},this),r&&(0,X.jsxDEV)(`div`,{className:`mb-4 rounded-lg border border-danger/40 bg-danger/10 px-3 py-2 text-sm text-danger`,children:r},void 0,!1,{fileName:e2,lineNumber:48,columnNumber:19},this),(0,X.jsxDEV)(`div`,{className:`mb-5 flex flex-col gap-3`,children:(0,X.jsxDEV)(In,{items:t2,ctx:{bridge:n}},void 0,!1,{fileName:e2,lineNumber:50,columnNumber:11},this)},void 0,!1,{fileName:e2,lineNumber:49,columnNumber:9},this),(0,X.jsxDEV)(T,{type:`submit`,disabled:a,className:`w-full`,children:e(`auth.createAccount`)},void 0,!1,{fileName:e2,lineNumber:52,columnNumber:9},this)]},void 0,!0,{fileName:e2,lineNumber:46,columnNumber:7},this)},void 0,!1,{fileName:e2,lineNumber:45,columnNumber:5},this)}var r2=null,i2=null;function a2(){let[e,t]=(0,B.useState)(r2);return(0,B.useEffect)(()=>{if(r2){t(r2);return}let e=!0;return i2??=fetch(`/api/vaults`).then(e=>e.json()).then(e=>r2=new Set(e.map(e=>e.id))),i2.then(n=>e&&t(n)).catch(()=>e&&t(null)),()=>{e=!1}},[]),e}var o2=`coffer-collapsed-vaults`;function s2(){try{let e=localStorage.getItem(o2);return new Set(e?JSON.parse(e):[])}catch{return new Set}}function c2(){let[e,t]=(0,B.useState)(()=>s2());return{collapsed:e,toggle:(0,B.useCallback)(e=>{t(t=>{let n=new Set(t);n.has(e)?n.delete(e):n.add(e);try{localStorage.setItem(o2,JSON.stringify([...n]))}catch{}return n})},[])}}var l2=`rovingFocusGroup.onEntryFocus`,u2={bubbles:!1,cancelable:!0},d2=`RovingFocusGroup`,[f2,p2,m2]=Oe(d2),[h2,g2]=gt(d2,[m2]),[_2,v2]=h2(d2),y2=B.forwardRef((e,t)=>(0,q.jsx)(f2.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,q.jsx)(f2.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,q.jsx)(b2,{...e,ref:t})})}));y2.displayName=d2;var b2=B.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:a=!1,dir:o,currentTabStopId:s,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:l,onEntryFocus:u,preventScrollOnEntryFocus:d=!1,...f}=e,p=B.useRef(null),m=i(t,p),h=Pe(o),[g,_]=_t({prop:s,defaultProp:c??null,onChange:l,caller:d2}),[v,y]=B.useState(!1),b=yt(u),x=p2(n),S=B.useRef(!1),[C,w]=B.useState(0);return B.useEffect(()=>{let e=p.current;if(e)return e.addEventListener(l2,b),()=>e.removeEventListener(l2,b)},[b]),(0,q.jsx)(_2,{scope:n,orientation:r,dir:h,loop:a,currentTabStopId:g,onItemFocus:B.useCallback(e=>_(e),[_]),onItemShiftTab:B.useCallback(()=>y(!0),[]),onFocusableItemAdd:B.useCallback(()=>w(e=>e+1),[]),onFocusableItemRemove:B.useCallback(()=>w(e=>e-1),[]),children:(0,q.jsx)(ft.div,{tabIndex:v||C===0?-1:0,"data-orientation":r,...f,ref:m,style:{outline:`none`,...e.style},onMouseDown:dt(e.onMouseDown,()=>{S.current=!0}),onFocus:dt(e.onFocus,e=>{let t=!S.current;if(e.target===e.currentTarget&&t&&!v){let t=new CustomEvent(l2,u2);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=x().filter(e=>e.focusable);E2([e.find(e=>e.active),e.find(e=>e.id===g),...e].filter(Boolean).map(e=>e.ref.current),d)}}S.current=!1}),onBlur:dt(e.onBlur,()=>y(!1))})})}),x2=`RovingFocusGroupItem`,S2=B.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Rt(),l=a||c,u=v2(x2,n),d=u.currentTabStopId===l,f=p2(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return B.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,q.jsx)(f2.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,q.jsx)(ft.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:dt(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:dt(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:dt(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=T2(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?D2(n,r+1):n.slice(r+1)}setTimeout(()=>E2(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});S2.displayName=x2;var C2={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function w2(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function T2(e,t,n){let r=w2(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return C2[r]}function E2(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function D2(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var O2=y2,k2=S2,A2=[`Enter`,` `],j2=[`ArrowDown`,`PageUp`,`Home`],M2=[`ArrowUp`,`PageDown`,`End`],N2=[...j2,...M2],P2={ltr:[...A2,`ArrowRight`],rtl:[...A2,`ArrowLeft`]},F2={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},I2=`Menu`,[L2,R2,z2]=Oe(I2),[B2,V2]=gt(I2,[z2,Lt,g2]),H2=Lt(),U2=g2(),[W2,G2]=B2(I2),[K2,q2]=B2(I2),J2=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=H2(t),[c,l]=B.useState(null),u=B.useRef(!1),d=yt(a),f=Pe(i);return B.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),(0,q.jsx)(kt,{...s,children:(0,q.jsx)(W2,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,q.jsx)(K2,{scope:t,onClose:B.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};J2.displayName=I2;var Y2=`MenuAnchor`,X2=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=H2(n);return(0,q.jsx)(Mt,{...i,...r,ref:t})});X2.displayName=Y2;var Z2=`MenuPortal`,[Q2,$2]=B2(Z2,{forceMount:void 0}),e4=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=G2(Z2,t);return(0,q.jsx)(Q2,{scope:t,forceMount:n,children:(0,q.jsx)(Ot,{present:n||a.open,children:(0,q.jsx)(xt,{asChild:!0,container:i,children:r})})})};e4.displayName=Z2;var t4=`MenuContent`,[n4,r4]=B2(t4),i4=B.forwardRef((e,t)=>{let n=$2(t4,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=G2(t4,e.__scopeMenu),o=q2(t4,e.__scopeMenu);return(0,q.jsx)(L2.Provider,{scope:e.__scopeMenu,children:(0,q.jsx)(Ot,{present:r||a.open,children:(0,q.jsx)(L2.Slot,{scope:e.__scopeMenu,children:o.modal?(0,q.jsx)(a4,{...i,ref:t}):(0,q.jsx)(o4,{...i,ref:t})})})})}),a4=B.forwardRef((e,t)=>{let n=G2(t4,e.__scopeMenu),r=B.useRef(null),a=i(t,r);return B.useEffect(()=>{let e=r.current;if(e)return Pt(e)},[]),(0,q.jsx)(c4,{...e,ref:a,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:dt(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),o4=B.forwardRef((e,t)=>{let n=G2(t4,e.__scopeMenu);return(0,q.jsx)(c4,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),s4=k(`MenuContent.ScrollLock`),c4=B.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:a,onOpenAutoFocus:o,onCloseAutoFocus:s,disableOutsidePointerEvents:c,onEntryFocus:l,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:p,onDismiss:m,disableOutsideScroll:h,...g}=e,_=G2(t4,n),v=q2(t4,n),y=H2(n),b=U2(n),x=R2(n),[S,C]=B.useState(null),w=B.useRef(null),T=i(t,w,_.onContentChange),E=B.useRef(0),D=B.useRef(``),O=B.useRef(0),k=B.useRef(null),A=B.useRef(`right`),j=B.useRef(0),M=h?jt:B.Fragment,N=h?{as:s4,allowPinchZoom:!0}:void 0,P=e=>{let t=D.current+e,n=x().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=K4(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){D.current=t,window.clearTimeout(E.current),t!==``&&(E.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};B.useEffect(()=>()=>window.clearTimeout(E.current),[]),St();let F=B.useCallback(e=>A.current===k.current?.side&&J4(e,k.current?.area),[]);return(0,q.jsx)(n4,{scope:n,searchRef:D,onItemEnter:B.useCallback(e=>{F(e)&&e.preventDefault()},[F]),onItemLeave:B.useCallback(e=>{F(e)||(w.current?.focus(),C(null))},[F]),onTriggerLeave:B.useCallback(e=>{F(e)&&e.preventDefault()},[F]),pointerGraceTimerRef:O,onPointerGraceIntentChange:B.useCallback(e=>{k.current=e},[]),children:(0,q.jsx)(M,{...N,children:(0,q.jsx)(Bt,{asChild:!0,trapped:a,onMountAutoFocus:dt(o,e=>{e.preventDefault(),w.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:s,children:(0,q.jsx)(zt,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:p,onDismiss:m,children:(0,q.jsx)(O2,{asChild:!0,...b,dir:v.dir,orientation:`vertical`,loop:r,currentTabStopId:S,onCurrentTabStopIdChange:C,onEntryFocus:dt(l,e=>{v.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,q.jsx)(Ct,{role:`menu`,"aria-orientation":`vertical`,"data-state":V4(_.open),"data-radix-menu-content":``,dir:v.dir,...y,...g,ref:T,style:{outline:`none`,...g.style},onKeyDown:dt(g.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&P(e.key));let i=w.current;if(e.target!==i||!N2.includes(e.key))return;e.preventDefault();let a=x().filter(e=>!e.disabled).map(e=>e.ref.current);M2.includes(e.key)&&a.reverse(),W4(a)}),onBlur:dt(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(E.current),D.current=``)}),onPointerMove:dt(e.onPointerMove,Y4(e=>{let t=e.target,n=j.current!==e.clientX;e.currentTarget.contains(t)&&n&&(A.current=e.clientX>j.current?`right`:`left`,j.current=e.clientX)}))})})})})})})});i4.displayName=t4;var l4=`MenuGroup`,u4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,q.jsx)(ft.div,{role:`group`,...r,ref:t})});u4.displayName=l4;var d4=`MenuLabel`,f4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,q.jsx)(ft.div,{...r,ref:t})});f4.displayName=d4;var p4=`MenuItem`,m4=`menu.itemSelect`,h4=B.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...a}=e,o=B.useRef(null),s=q2(p4,e.__scopeMenu),c=r4(p4,e.__scopeMenu),l=i(t,o),u=B.useRef(!1),d=()=>{let e=o.current;if(!n&&e){let t=new CustomEvent(m4,{bubbles:!0,cancelable:!0});e.addEventListener(m4,e=>r?.(e),{once:!0}),ut(e,t),t.defaultPrevented?u.current=!1:s.onClose()}};return(0,q.jsx)(g4,{...a,ref:l,disabled:n,onClick:dt(e.onClick,d),onPointerDown:t=>{e.onPointerDown?.(t),u.current=!0},onPointerUp:dt(e.onPointerUp,e=>{u.current||e.currentTarget?.click()}),onKeyDown:dt(e.onKeyDown,e=>{let t=c.searchRef.current!==``;n||t&&e.key===` `||A2.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});h4.displayName=p4;var g4=B.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:a,...o}=e,s=r4(p4,n),c=U2(n),l=B.useRef(null),u=i(t,l),[d,f]=B.useState(!1),[p,m]=B.useState(``);return B.useEffect(()=>{let e=l.current;e&&m((e.textContent??``).trim())},[o.children]),(0,q.jsx)(L2.ItemSlot,{scope:n,disabled:r,textValue:a??p,children:(0,q.jsx)(k2,{asChild:!0,...c,focusable:!r,children:(0,q.jsx)(ft.div,{role:`menuitem`,"data-highlighted":d?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...o,ref:u,onPointerMove:dt(e.onPointerMove,Y4(e=>{r?s.onItemLeave(e):(s.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:dt(e.onPointerLeave,Y4(e=>s.onItemLeave(e))),onFocus:dt(e.onFocus,()=>f(!0)),onBlur:dt(e.onBlur,()=>f(!1))})})})}),_4=`MenuCheckboxItem`,v4=B.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,q.jsx)(E4,{scope:e.__scopeMenu,checked:n,children:(0,q.jsx)(h4,{role:`menuitemcheckbox`,"aria-checked":H4(n)?`mixed`:n,...i,ref:t,"data-state":U4(n),onSelect:dt(i.onSelect,()=>r?.(H4(n)?!0:!n),{checkForDefaultPrevented:!1})})})});v4.displayName=_4;var y4=`MenuRadioGroup`,[b4,x4]=B2(y4,{value:void 0,onValueChange:()=>{}}),S4=B.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=yt(r);return(0,q.jsx)(b4,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,q.jsx)(u4,{...i,ref:t})})});S4.displayName=y4;var C4=`MenuRadioItem`,w4=B.forwardRef((e,t)=>{let{value:n,...r}=e,i=x4(C4,e.__scopeMenu),a=n===i.value;return(0,q.jsx)(E4,{scope:e.__scopeMenu,checked:a,children:(0,q.jsx)(h4,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":U4(a),onSelect:dt(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});w4.displayName=C4;var T4=`MenuItemIndicator`,[E4,D4]=B2(T4,{checked:!1}),O4=B.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=D4(T4,n);return(0,q.jsx)(Ot,{present:r||H4(a.checked)||a.checked===!0,children:(0,q.jsx)(ft.span,{...i,ref:t,"data-state":U4(a.checked)})})});O4.displayName=T4;var k4=`MenuSeparator`,A4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,q.jsx)(ft.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});A4.displayName=k4;var j4=`MenuArrow`,M4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=H2(n);return(0,q.jsx)(Ft,{...i,...r,ref:t})});M4.displayName=j4;var N4=`MenuSub`,[P4,F4]=B2(N4),I4=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=G2(N4,t),o=H2(t),[s,c]=B.useState(null),[l,u]=B.useState(null),d=yt(i);return B.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,q.jsx)(kt,{...o,children:(0,q.jsx)(W2,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,q.jsx)(P4,{scope:t,contentId:Rt(),triggerId:Rt(),trigger:s,onTriggerChange:c,children:n})})})};I4.displayName=N4;var L4=`MenuSubTrigger`,R4=B.forwardRef((e,t)=>{let n=G2(L4,e.__scopeMenu),r=q2(L4,e.__scopeMenu),i=F4(L4,e.__scopeMenu),a=r4(L4,e.__scopeMenu),o=B.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:l}=a,u={__scopeMenu:e.__scopeMenu},d=B.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);return B.useEffect(()=>d,[d]),B.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),l(null)}},[s,l]),(0,q.jsx)(X2,{asChild:!0,...u,children:(0,q.jsx)(g4,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":n.open?i.contentId:void 0,"data-state":V4(n.open),...e,ref:c(t,i.onTriggerChange),onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:dt(e.onPointerMove,Y4(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),d()},100))})),onPointerLeave:dt(e.onPointerLeave,Y4(e=>{d();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:dt(e.onKeyDown,t=>{let i=a.searchRef.current!==``;e.disabled||i&&t.key===` `||P2[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});R4.displayName=L4;var z4=`MenuSubContent`,B4=B.forwardRef((e,t)=>{let n=$2(t4,e.__scopeMenu),{forceMount:r=n.forceMount,align:a=`start`,...o}=e,s=G2(t4,e.__scopeMenu),c=q2(t4,e.__scopeMenu),l=F4(z4,e.__scopeMenu),u=B.useRef(null),d=i(t,u);return(0,q.jsx)(L2.Provider,{scope:e.__scopeMenu,children:(0,q.jsx)(Ot,{present:r||s.open,children:(0,q.jsx)(L2.Slot,{scope:e.__scopeMenu,children:(0,q.jsx)(c4,{id:l.contentId,"aria-labelledby":l.triggerId,...o,ref:d,align:a,side:c.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{c.isUsingKeyboardRef.current&&u.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:dt(e.onFocusOutside,e=>{e.target!==l.trigger&&s.onOpenChange(!1)}),onEscapeKeyDown:dt(e.onEscapeKeyDown,e=>{c.onClose(),e.preventDefault()}),onKeyDown:dt(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=F2[c.dir].includes(e.key);t&&n&&(s.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())})})})})})});B4.displayName=z4;function V4(e){return e?`open`:`closed`}function H4(e){return e===`indeterminate`}function U4(e){return H4(e)?`indeterminate`:e?`checked`:`unchecked`}function W4(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function G4(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function K4(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=G4(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function q4(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function J4(e,t){return t?q4({x:e.clientX,y:e.clientY},t):!1}function Y4(e){return t=>t.pointerType===`mouse`?e(t):void 0}var X4=J2,Z4=X2,Q4=e4,$4=i4,e3=u4,t3=f4,n3=h4,r3=v4,i3=S4,a3=w4,o3=O4,s3=A4,c3=M4,l3=R4,u3=B4,d3=`DropdownMenu`,[f3,p3]=gt(d3,[V2]),m3=V2(),[h3,g3]=f3(d3),_3=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=m3(t),l=B.useRef(null),[u,d]=_t({prop:i,defaultProp:a??!1,onChange:o,caller:d3});return(0,q.jsx)(h3,{scope:t,triggerId:Rt(),triggerRef:l,contentId:Rt(),open:u,onOpenChange:d,onOpenToggle:B.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,q.jsx)(X4,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};_3.displayName=d3;var v3=`DropdownMenuTrigger`,y3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=g3(v3,n),o=m3(n);return(0,q.jsx)(Z4,{asChild:!0,...o,children:(0,q.jsx)(ft.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:c(t,a.triggerRef),onPointerDown:dt(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:dt(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});y3.displayName=v3;var b3=`DropdownMenuPortal`,x3=e=>{let{__scopeDropdownMenu:t,...n}=e,r=m3(t);return(0,q.jsx)(Q4,{...r,...n})};x3.displayName=b3;var S3=`DropdownMenuContent`,C3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=g3(S3,n),a=m3(n),o=B.useRef(!1);return(0,q.jsx)($4,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:dt(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:dt(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});C3.displayName=S3;var w3=`DropdownMenuGroup`,T3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(e3,{...i,...r,ref:t})});T3.displayName=w3;var E3=`DropdownMenuLabel`,D3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(t3,{...i,...r,ref:t})});D3.displayName=E3;var O3=`DropdownMenuItem`,k3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(n3,{...i,...r,ref:t})});k3.displayName=O3;var A3=`DropdownMenuCheckboxItem`,j3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(r3,{...i,...r,ref:t})});j3.displayName=A3;var M3=`DropdownMenuRadioGroup`,N3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(i3,{...i,...r,ref:t})});N3.displayName=M3;var P3=`DropdownMenuRadioItem`,F3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(a3,{...i,...r,ref:t})});F3.displayName=P3;var I3=`DropdownMenuItemIndicator`,L3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(o3,{...i,...r,ref:t})});L3.displayName=I3;var R3=`DropdownMenuSeparator`,z3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(s3,{...i,...r,ref:t})});z3.displayName=R3;var B3=`DropdownMenuArrow`,V3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(c3,{...i,...r,ref:t})});V3.displayName=B3;var H3=`DropdownMenuSubTrigger`,U3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(l3,{...i,...r,ref:t})});U3.displayName=H3;var W3=`DropdownMenuSubContent`,G3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(u3,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});G3.displayName=W3;var K3=_3,q3=y3,J3=x3,Y3=C3,X3=D3,Z3=k3,Q3=z3,$3=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/components/ui/dropdown-menu.tsx`,e6=K3,t6=q3,n6=B.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,X.jsxDEV)(J3,{children:(0,X.jsxDEV)(Y3,{ref:r,sideOffset:t,className:O(`z-50 min-w-40 overflow-hidden rounded-xl border border-border bg-popover p-1 text-popover-foreground shadow-xl`,`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95`,e),...n},void 0,!1,{fileName:$3,lineNumber:15,columnNumber:5},void 0)},void 0,!1,{fileName:$3,lineNumber:14,columnNumber:3},void 0));n6.displayName=Y3.displayName;var r6=B.forwardRef(({className:e,inset:t,...n},r)=>(0,X.jsxDEV)(Z3,{ref:r,className:O(`relative flex cursor-pointer select-none items-center gap-2 rounded-lg px-3 py-2 text-sm outline-none transition-colors`,`focus:bg-elevated focus:text-text data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,t&&`pl-8`,e),...n},void 0,!1,{fileName:$3,lineNumber:33,columnNumber:3},void 0));r6.displayName=Z3.displayName;var i6=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(X3,{ref:n,className:O(`px-3 py-1.5 text-xs font-semibold text-muted-foreground`,e),...t},void 0,!1,{fileName:$3,lineNumber:50,columnNumber:3},void 0));i6.displayName=X3.displayName;var a6=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(Q3,{ref:n,className:O(`-mx-1 my-1 h-px bg-border`,e),...t},void 0,!1,{fileName:$3,lineNumber:62,columnNumber:3},void 0));a6.displayName=Q3.displayName;var o6=({active:e})=>e?(0,X.jsxDEV)(D,{size:14,className:`ml-auto text-accent`},void 0,!1,{fileName:$3,lineNumber:68,columnNumber:12},void 0):null,s6=`coffer-theme`;function c6(e){return e===`light`||e===`dark`||e===`eink`?e:`auto`}function l6(){try{return c6(localStorage.getItem(s6))}catch{return c6(null)}}function u6(e){if(e===`auto`){delete document.documentElement.dataset.theme;try{localStorage.removeItem(s6)}catch{}}else{document.documentElement.dataset.theme=e;try{localStorage.setItem(s6,e)}catch{}}}function d6(){let[e,t]=(0,B.useState)(()=>l6());return{choice:e,setChoice:(0,B.useCallback)(e=>{u6(e),t(e)},[])}}var f6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/theme/ThemeSwitcher.tsx`,p6=[{value:`auto`,Icon:m,labelKey:`theme.auto`},{value:`light`,Icon:Vc,labelKey:`theme.light`},{value:`dark`,Icon:Rc,labelKey:`theme.dark`},{value:`eink`,Icon:Sc,labelKey:`theme.eink`}];function m6({direction:e=`up`,compact:t=!1}){let{t:n}=l(),{choice:r,setChoice:i}=d6(),a=p6.find(e=>e.value===r)??p6[0],o=a.Icon;return(0,X.jsxDEV)(e6,{children:[(0,X.jsxDEV)(t6,{"aria-label":n(`theme.label`),className:`flex items-center rounded-xl text-sm text-muted outline-none transition-colors hover:bg-elevated hover:text-text focus-visible:ring-2 focus-visible:ring-ring ${t?`w-full flex-col gap-0.5 py-2`:`w-full gap-2 px-3 py-2`}`,children:[(0,X.jsxDEV)(o,{size:t?18:16},void 0,!1,{fileName:f6,lineNumber:35,columnNumber:9},this),t?(0,X.jsxDEV)(`span`,{className:`text-[10px] font-semibold`,children:n(a.labelKey)},void 0,!1,{fileName:f6,lineNumber:37,columnNumber:11},this):(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:n(a.labelKey)},void 0,!1,{fileName:f6,lineNumber:39,columnNumber:11},this)]},void 0,!0,{fileName:f6,lineNumber:29,columnNumber:7},this),(0,X.jsxDEV)(n6,{align:`end`,side:e===`up`?`top`:`bottom`,children:p6.map(e=>{let t=e.Icon;return(0,X.jsxDEV)(r6,{onSelect:()=>i(e.value),className:e.value===r?`text-accent`:``,children:[(0,X.jsxDEV)(t,{size:15},void 0,!1,{fileName:f6,lineNumber:51,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:n(e.labelKey)},void 0,!1,{fileName:f6,lineNumber:52,columnNumber:15},this),(0,X.jsxDEV)(o6,{active:e.value===r},void 0,!1,{fileName:f6,lineNumber:53,columnNumber:15},this)]},e.value,!0,{fileName:f6,lineNumber:46,columnNumber:13},this)})},void 0,!1,{fileName:f6,lineNumber:42,columnNumber:7},this)]},void 0,!0,{fileName:f6,lineNumber:28,columnNumber:5},this)}var h6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/LanguageSwitcher.tsx`,g6=[{code:`uk`,label:`Українська`,short:`UA`},{code:`ru`,label:`Русский`,short:`RU`},{code:`en`,label:`English`,short:`EN`}];function _6({direction:e=`up`,compact:t=!1}){let{i18n:n}=l(),r=g6.find(e=>e.code===n.language)??g6[0];function i(e){n.changeLanguage(e);try{localStorage.setItem(`lang`,e)}catch{}fetch(`/api/plugins/core/settings`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({language:e})}).catch(()=>{})}return(0,X.jsxDEV)(e6,{children:[(0,X.jsxDEV)(t6,{className:`flex items-center rounded-xl text-sm text-muted outline-none transition-colors hover:bg-elevated hover:text-text focus-visible:ring-2 focus-visible:ring-ring ${t?`w-full flex-col gap-0.5 py-2`:`w-full gap-2 px-3 py-2`}`,children:[(0,X.jsxDEV)(_,{size:t?18:16},void 0,!1,{fileName:h6,lineNumber:49,columnNumber:9},this),t?(0,X.jsxDEV)(`span`,{className:`text-[10px] font-semibold`,children:r.short},void 0,!1,{fileName:h6,lineNumber:51,columnNumber:11},this):(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:r.label},void 0,!1,{fileName:h6,lineNumber:54,columnNumber:13},this),(0,X.jsxDEV)(`span`,{className:`text-xs font-semibold text-muted`,children:r.short},void 0,!1,{fileName:h6,lineNumber:55,columnNumber:13},this)]},void 0,!0,{fileName:h6,lineNumber:53,columnNumber:11},this)]},void 0,!0,{fileName:h6,lineNumber:44,columnNumber:7},this),(0,X.jsxDEV)(n6,{align:`end`,side:e===`up`?`top`:`bottom`,children:g6.map(e=>(0,X.jsxDEV)(r6,{onSelect:()=>i(e.code),className:e.code===r.code?`text-accent`:``,children:[(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:e.label},void 0,!1,{fileName:h6,lineNumber:66,columnNumber:13},this),(0,X.jsxDEV)(o6,{active:e.code===r.code},void 0,!1,{fileName:h6,lineNumber:67,columnNumber:13},this)]},e.code,!0,{fileName:h6,lineNumber:61,columnNumber:11},this))},void 0,!1,{fileName:h6,lineNumber:59,columnNumber:7},this)]},void 0,!0,{fileName:h6,lineNumber:43,columnNumber:5},this)}var v6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/nav/SidebarNav.tsx`;function y6({onSearchOpen:e}){let{t}=l(),n=a2(),{collapsed:r,toggle:i}=c2(),a=Tn();return(0,X.jsxDEV)(`aside`,{className:`hidden nav:flex flex-col w-52 shrink-0 bg-surface border-r border-border h-dvh fixed top-0 left-0 z-30`,children:[(0,X.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto px-3 py-4`,children:[(0,X.jsxDEV)(te,{to:`/`,className:`flex items-center gap-2 mb-4 px-2 group`,title:t(`nav.home`),children:[(0,X.jsxDEV)(`div`,{className:`w-7 h-7 bg-accent rounded-lg flex items-center justify-center text-white text-xs font-bold`,children:`S`},void 0,!1,{fileName:v6,lineNumber:24,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`font-bold text-text group-hover:text-accent transition-colors`,children:`Coffer`},void 0,!1,{fileName:v6,lineNumber:27,columnNumber:11},this)]},void 0,!0,{fileName:v6,lineNumber:23,columnNumber:9},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:e,"aria-label":t(`search.title`),title:t(`search.title`),className:`flex w-full items-center gap-2 px-3 py-1.5 mb-3 rounded-lg text-sm text-muted bg-elevated border border-border hover:border-accent hover:text-text transition-colors`,children:[(0,X.jsxDEV)(Bc,{size:14,className:`shrink-0`},void 0,!1,{fileName:v6,lineNumber:36,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`flex-1 text-left truncate`,children:t(`search.title`)},void 0,!1,{fileName:v6,lineNumber:37,columnNumber:11},this),(0,X.jsxDEV)(`kbd`,{className:`hidden lg:inline-flex items-center gap-0.5 text-[10px] text-muted border border-border rounded px-1`,children:`⌘K`},void 0,!1,{fileName:v6,lineNumber:38,columnNumber:11},this)]},void 0,!0,{fileName:v6,lineNumber:29,columnNumber:9},this),a.filter(e=>!n||n.has(e.meta.id)).map(e=>{let n=r.has(e.meta.id);return(0,X.jsxDEV)(`div`,{className:`mb-0.5`,children:[(0,X.jsxDEV)(`button`,{type:`button`,onClick:()=>i(e.meta.id),className:`flex w-full items-center justify-between px-3 py-1.5 rounded-lg text-[10px] font-semibold text-muted uppercase tracking-widest hover:bg-elevated hover:text-text transition-colors`,children:[(0,X.jsxDEV)(`span`,{className:`truncate`,children:t(e.meta.label)},void 0,!1,{fileName:v6,lineNumber:53,columnNumber:19},this),(0,X.jsxDEV)(Ie,{size:13,className:`shrink-0 transition-transform ${n?`-rotate-90`:``}`},void 0,!1,{fileName:v6,lineNumber:54,columnNumber:19},this)]},void 0,!0,{fileName:v6,lineNumber:48,columnNumber:17},this),!n&&e.modules.filter(e=>e.standalone!==!1).map(e=>(0,X.jsxDEV)(te,{to:`/${e.vault}/${e.module}`,className:({isActive:e})=>`flex items-center gap-2.5 px-3 py-2 rounded-lg text-sm mb-px transition-colors `+(e?`bg-accent/15 text-accent font-medium`:`text-muted hover:bg-elevated hover:text-text`),children:[(0,X.jsxDEV)(v,{name:e.icon,size:17,className:`shrink-0`},void 0,!1,{fileName:v6,lineNumber:73,columnNumber:25},this),t(e.label)]},e.module,!0,{fileName:v6,lineNumber:63,columnNumber:23},this))]},e.meta.id,!0,{fileName:v6,lineNumber:47,columnNumber:15},this)})]},void 0,!0,{fileName:v6,lineNumber:22,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`border-t border-border p-2 space-y-1`,children:[(0,X.jsxDEV)(_6,{direction:`up`},void 0,!1,{fileName:v6,lineNumber:83,columnNumber:9},this),(0,X.jsxDEV)(m6,{},void 0,!1,{fileName:v6,lineNumber:84,columnNumber:9},this),(0,X.jsxDEV)(te,{to:`/settings`,className:({isActive:e})=>`flex items-center gap-2.5 px-3 py-2 rounded-lg text-sm transition-colors `+(e?`bg-accent/15 text-accent font-medium`:`text-muted hover:bg-elevated hover:text-text`),children:[(0,X.jsxDEV)(v,{name:`lucide:settings`,size:17,className:`shrink-0`},void 0,!1,{fileName:v6,lineNumber:92,columnNumber:11},this),` `,t(`nav.settings`)]},void 0,!0,{fileName:v6,lineNumber:85,columnNumber:9},this)]},void 0,!0,{fileName:v6,lineNumber:82,columnNumber:7},this)]},void 0,!0,{fileName:v6,lineNumber:21,columnNumber:5},this)}var b6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/nav/BottomNav.tsx`;function x6({onSearchOpen:e}){let{t}=l();return(0,X.jsxDEV)(`nav`,{className:`nav:hidden fixed bottom-0 left-0 right-0 z-40 border-t border-border bg-surface pb-safe`,children:(0,X.jsxDEV)(`div`,{className:`flex items-stretch`,children:[(0,X.jsxDEV)(te,{to:`/`,end:!0,className:({isActive:e})=>`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors `+(e?`text-accent`:`text-muted hover:text-text`),children:[(0,X.jsxDEV)(b,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:22,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.home`)},void 0,!1,{fileName:b6,lineNumber:23,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:14,columnNumber:9},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:e,className:`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors text-muted hover:text-text`,children:[(0,X.jsxDEV)(Bc,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:30,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.search`)},void 0,!1,{fileName:b6,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:25,columnNumber:9},this),(0,X.jsxDEV)(te,{to:`/browse`,className:({isActive:e})=>`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors `+(e?`text-accent`:`text-muted hover:text-text`),children:[(0,X.jsxDEV)(Pc,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:40,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.browse`)},void 0,!1,{fileName:b6,lineNumber:41,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:33,columnNumber:9},this),(0,X.jsxDEV)(te,{to:`/settings`,className:({isActive:e})=>`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors `+(e?`text-accent`:`text-muted hover:text-text`),children:[(0,X.jsxDEV)(w,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:50,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.settings`)},void 0,!1,{fileName:b6,lineNumber:51,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:43,columnNumber:9},this)]},void 0,!0,{fileName:b6,lineNumber:13,columnNumber:7},this)},void 0,!1,{fileName:b6,lineNumber:12,columnNumber:5},this)}var S6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/nav/CommandPalette.tsx`;function C6({open:e,onClose:t}){let{t:n}=l(),r=N(),i=a2(),[a,o]=(0,B.useState)(``),[s,c]=(0,B.useState)([]),[u,f]=(0,B.useState)(!1),[p,m]=(0,B.useState)(0),h=(0,B.useRef)(null);(0,B.useEffect)(()=>{e&&(o(``),c([]),m(0),setTimeout(()=>h.current?.focus(),50))},[e]),(0,B.useEffect)(()=>{if(a.length<2){c([]);return}let e=setTimeout(async()=>{f(!0);try{let e=await fetch(`/api/search?q=${encodeURIComponent(a)}&limit=15`);c(e.ok?await e.json():[])}catch{c([])}finally{f(!1)}},250);return()=>clearTimeout(e)},[a]);let g=Tn().filter(e=>!i||i.has(e.meta.id)).flatMap(e=>e.modules.filter(e=>e.standalone!==!1).map(t=>({v:e,m:t}))),_=g.filter(({m:e})=>!a||n(e.label).toLowerCase().includes(a.toLowerCase())).map(({v:e,m:t})=>({kind:`module`,label:n(t.label),sub:n(e.meta.label),icon:t.icon,to:`/${t.vault}/${t.module}`})),y=s.map(e=>{let t=g.find(({m:t})=>t.vault===e.vault&&t.module===e.type)?.m;return{kind:`record`,label:e.label||e.id,sub:e.snippet===e.label?t?n(t.label):e.type:e.snippet,icon:t?.icon,to:`/${e.vault}/${e.type}/${e.id}`}}),b=a.length>=2?[...y,..._.slice(0,5)]:_,x=b.length>0?Math.min(p,b.length-1):0;function S(e){r(e.to),t()}function C(e){if(e.key===`Escape`){t();return}e.key===`ArrowDown`&&(e.preventDefault(),m(e=>Math.min(e+1,b.length-1))),e.key===`ArrowUp`&&(e.preventDefault(),m(e=>Math.max(e-1,0))),e.key===`Enter`&&b[x]&&S(b[x])}if(!e)return null;let w=a.length<2,T=a.length>=2&&y.length>0,E=a.length>=2&&_.length>0,D=b.length===0&&!u;return(0,X.jsxDEV)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[10vh] px-4`,onClick:e=>{e.target===e.currentTarget&&t()},children:[(0,X.jsxDEV)(`div`,{className:`absolute inset-0 bg-bg/70 backdrop-blur-sm`,onClick:t},void 0,!1,{fileName:S6,lineNumber:139,columnNumber:7},this),(0,X.jsxDEV)(`div`,{role:`dialog`,"aria-label":n(`search.title`),className:`relative w-full max-w-lg bg-surface border border-border rounded-xl shadow-xl overflow-hidden`,children:[(0,X.jsxDEV)(`div`,{className:`px-4 pt-3 pb-1 text-[10px] font-semibold text-muted uppercase tracking-wider`,children:n(`search.title`)},void 0,!1,{fileName:S6,lineNumber:148,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex items-center gap-2 px-4 py-3 border-b border-border`,children:[(0,X.jsxDEV)(Bc,{size:16,className:`text-muted shrink-0`},void 0,!1,{fileName:S6,lineNumber:153,columnNumber:11},this),(0,X.jsxDEV)(`input`,{ref:h,type:`text`,value:a,onChange:e=>{o(e.target.value),m(0)},onKeyDown:C,placeholder:n(`search.placeholder`),"aria-label":n(`search.title`),className:`flex-1 bg-transparent text-text placeholder:text-muted outline-none text-sm`},void 0,!1,{fileName:S6,lineNumber:154,columnNumber:11},this),u&&(0,X.jsxDEV)(`span`,{className:`text-xs text-muted`,children:n(`common.loading`)},void 0,!1,{fileName:S6,lineNumber:167,columnNumber:23},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:t,className:`text-muted hover:text-text transition-colors`,children:(0,X.jsxDEV)(d,{size:16},void 0,!1,{fileName:S6,lineNumber:169,columnNumber:13},this)},void 0,!1,{fileName:S6,lineNumber:168,columnNumber:11},this)]},void 0,!0,{fileName:S6,lineNumber:152,columnNumber:9},this),(0,X.jsxDEV)(`ul`,{className:`max-h-80 overflow-y-auto py-1`,children:[D&&a.length>=2&&(0,X.jsxDEV)(`li`,{className:`px-4 py-6 text-center text-muted text-sm`,children:n(`search.noResults`)},void 0,!1,{fileName:S6,lineNumber:176,columnNumber:13},this),w&&(0,X.jsxDEV)(`li`,{className:`px-4 py-1.5 text-[10px] font-semibold text-muted uppercase tracking-wider`,children:n(`search.allModules`)},void 0,!1,{fileName:S6,lineNumber:179,columnNumber:13},this),T&&(0,X.jsxDEV)(`li`,{className:`px-4 py-1.5 text-[10px] font-semibold text-muted uppercase tracking-wider`,children:n(`search.results`)},void 0,!1,{fileName:S6,lineNumber:184,columnNumber:13},this),b.map((e,t)=>(0,X.jsxDEV)(`li`,{children:[a.length>=2&&t>=y.length&&t===y.length&&E&&(0,X.jsxDEV)(`div`,{className:`px-4 py-1.5 text-[10px] font-semibold text-muted uppercase tracking-wider border-t border-border mt-1 pt-2`,children:n(`search.allModules`)},void 0,!1,{fileName:S6,lineNumber:194,columnNumber:19},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:()=>S(e),onMouseEnter:()=>m(t),className:`w-full flex items-center gap-3 px-4 py-2 text-left transition-colors ${t===x?`bg-accent/15 text-text`:`text-text hover:bg-elevated`}`,children:[e.icon&&(0,X.jsxDEV)(v,{name:e.icon,size:16,className:`shrink-0 text-muted`},void 0,!1,{fileName:S6,lineNumber:206,columnNumber:33},this),(0,X.jsxDEV)(`span`,{className:`flex-1 min-w-0`,children:[(0,X.jsxDEV)(`span`,{className:`block text-sm font-medium truncate`,children:e.label},void 0,!1,{fileName:S6,lineNumber:208,columnNumber:21},this),e.sub&&(0,X.jsxDEV)(`span`,{className:`block text-xs text-muted truncate`,children:e.sub},void 0,!1,{fileName:S6,lineNumber:209,columnNumber:34},this)]},void 0,!0,{fileName:S6,lineNumber:207,columnNumber:19},this)]},void 0,!0,{fileName:S6,lineNumber:198,columnNumber:17},this)]},`${e.to}-${t}`,!0,{fileName:S6,lineNumber:192,columnNumber:15},this))]},void 0,!0,{fileName:S6,lineNumber:174,columnNumber:9},this)]},void 0,!0,{fileName:S6,lineNumber:142,columnNumber:7},this)]},void 0,!0,{fileName:S6,lineNumber:132,columnNumber:5},this)}var w6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/Dashboard.tsx`;function T6(){let[e,t]=(0,B.useState)({});return(0,B.useEffect)(()=>{let e=new AbortController;return fetch(`/api/counts`,{signal:e.signal}).then(e=>e.ok?e.json():{}).then(t).catch(()=>{}),()=>e.abort()},[]),e}function E6(){let{t:e}=l(),t=a2(),n=T6(),r=Tn().filter(e=>!t||t.has(e.meta.id));return(0,X.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,X.jsxDEV)(`div`,{className:`mx-auto max-w-5xl px-5 py-8 md:px-8`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-6 text-[28px] font-bold text-text`,children:e(`dashboard.title`)},void 0,!1,{fileName:w6,lineNumber:31,columnNumber:9},this),r.length===0?(0,X.jsxDEV)(`p`,{className:`text-muted`,children:e(`dashboard.empty`)},void 0,!1,{fileName:w6,lineNumber:33,columnNumber:11},this):(0,X.jsxDEV)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3`,children:r.map(t=>{let r=t.modules.filter(e=>e.standalone!==!1);return r.length===0?null:(0,X.jsxDEV)(`section`,{className:`rounded-2xl border border-border bg-surface p-4`,children:[(0,X.jsxDEV)(`h2`,{className:`mb-3 flex items-center gap-2 text-sm font-semibold uppercase tracking-wide text-muted`,children:[t.meta.icon&&(0,X.jsxDEV)(v,{name:t.meta.icon,size:16,className:`shrink-0`},void 0,!1,{fileName:w6,lineNumber:42,columnNumber:37},this),e(t.meta.label)]},void 0,!0,{fileName:w6,lineNumber:41,columnNumber:19},this),(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1`,children:r.map(t=>(0,X.jsxDEV)(te,{to:`/${t.vault}/${t.module}`,className:`flex items-center gap-2.5 rounded-lg px-2.5 py-2 text-sm text-text transition-colors hover:bg-elevated`,children:[(0,X.jsxDEV)(v,{name:t.icon,size:17,className:`shrink-0 text-muted`},void 0,!1,{fileName:w6,lineNumber:52,columnNumber:25},this),(0,X.jsxDEV)(`span`,{className:`flex-1 truncate`,children:e(t.label)},void 0,!1,{fileName:w6,lineNumber:53,columnNumber:25},this),(0,X.jsxDEV)(`span`,{className:`shrink-0 rounded-full bg-accent/15 px-2 py-0.5 text-xs font-medium tabular-nums text-accent`,children:n[`${t.vault}/${t.module}`]??`·`},void 0,!1,{fileName:w6,lineNumber:54,columnNumber:25},this)]},t.module,!0,{fileName:w6,lineNumber:47,columnNumber:23},this))},void 0,!1,{fileName:w6,lineNumber:45,columnNumber:19},this)]},t.meta.id,!0,{fileName:w6,lineNumber:40,columnNumber:17},this)})},void 0,!1,{fileName:w6,lineNumber:35,columnNumber:11},this)]},void 0,!0,{fileName:w6,lineNumber:30,columnNumber:7},this)},void 0,!1,{fileName:w6,lineNumber:29,columnNumber:5},this)}var D6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/Browse.tsx`;function O6(){let{t:e}=l(),t=a2(),n=Tn().filter(e=>!t||t.has(e.meta.id));return(0,X.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,X.jsxDEV)(`div`,{className:`mx-auto max-w-2xl px-4 py-6`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-5 text-2xl font-bold text-text`,children:e(`nav.browse`)},void 0,!1,{fileName:D6,lineNumber:17,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-6`,children:n.map(t=>{let n=t.modules.filter(e=>e.standalone!==!1);return n.length===0?null:(0,X.jsxDEV)(`section`,{children:[(0,X.jsxDEV)(`h2`,{className:`mb-2 flex items-center gap-2 px-1 text-[11px] font-semibold uppercase tracking-widest text-muted`,children:[t.meta.icon&&(0,X.jsxDEV)(v,{name:t.meta.icon,size:14,className:`shrink-0`},void 0,!1,{fileName:D6,lineNumber:25,columnNumber:35},this),e(t.meta.label)]},void 0,!0,{fileName:D6,lineNumber:24,columnNumber:17},this),(0,X.jsxDEV)(`div`,{className:`overflow-hidden rounded-2xl border border-border bg-surface`,children:n.map((t,n)=>(0,X.jsxDEV)(te,{to:`/${t.vault}/${t.module}`,className:`flex items-center gap-3 px-4 py-3 text-text transition-colors hover:bg-elevated ${n>0?`border-t border-border`:``}`,children:[(0,X.jsxDEV)(v,{name:t.icon,size:20,className:`shrink-0 text-muted`},void 0,!1,{fileName:D6,lineNumber:37,columnNumber:23},this),(0,X.jsxDEV)(`span`,{className:`flex-1 truncate text-sm font-medium`,children:e(t.label)},void 0,!1,{fileName:D6,lineNumber:38,columnNumber:23},this),(0,X.jsxDEV)(wc,{size:16,className:`shrink-0 text-muted`},void 0,!1,{fileName:D6,lineNumber:39,columnNumber:23},this)]},t.module,!0,{fileName:D6,lineNumber:30,columnNumber:21},this))},void 0,!1,{fileName:D6,lineNumber:28,columnNumber:17},this)]},t.meta.id,!0,{fileName:D6,lineNumber:23,columnNumber:15},this)})},void 0,!1,{fileName:D6,lineNumber:18,columnNumber:9},this)]},void 0,!0,{fileName:D6,lineNumber:16,columnNumber:7},this)},void 0,!1,{fileName:D6,lineNumber:15,columnNumber:5},this)}var k6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/AccountSettingsPage.tsx`,A6=[Yn.string({key:`displayName`,label:`auth.fieldDisplayName`}),Yn.password({key:`password`,label:`auth.fieldPasswordOptional`}),Yn.internalApiToken({key:`apiTokens`,label:`auth.tokensTitle`})];function j6(){let{t:e}=l();async function t(){let e=await wr();return{displayName:e?.displayName??``,password:e?.password??``}}async function n(e){let t=await gr({displayName:e.displayName,password:e.password});return t.ok?{ok:!0,row:{displayName:t.data.displayName,password:t.data.password}}:t.status===422?{ok:!1,status:422,issues:t.data.issues}:{ok:!1,status:t.status}}return(0,X.jsxDEV)(Fr,{fields:A6,recordCtx:{vault:``,module:`account`,recordId:`me`},load:t,save:n,title:e(`auth.accountTitle`),backTo:`/settings`,backLabel:e(`settings.title`)},void 0,!1,{fileName:k6,lineNumber:35,columnNumber:5},this)}var M6=sr({module:`users`,vault:``,label:`auth.usersTitle`,icon:`lucide:users`,views:{table:[`login`,`displayName`,`role`,`disabled`]},fields:[Yn.string({key:`login`,label:`auth.fieldLogin`}),Yn.string({key:`displayName`,label:`auth.fieldDisplayName`}),Yn.select({key:`role`,label:`auth.fieldRole`,options:[{value:`admin`,title:`auth.roleAdmin`},{value:`member`,title:`auth.roleMember`}]}),Yn.boolean({key:`disabled`,label:`auth.fieldDisabled`})]});function N6(e){if(!e)return null;let[t,n]=e.split(`:`);return!t||n!==`asc`&&n!==`desc`?null:{key:t,dir:n}}function P6(){let[e,t]=re(),[n,r]=(0,B.useState)(()=>e.get(`q`)??``),[i,a]=(0,B.useState)(n);(0,B.useEffect)(()=>{let e=setTimeout(()=>{a(n),t(e=>{let t=new URLSearchParams(e);return n?t.set(`q`,n):t.delete(`q`),t},{replace:!0})},300);return()=>clearTimeout(e)},[n,t]);let o=N6(e.get(`sort`));function s(e){t(t=>{let n=new URLSearchParams(t),r=N6(n.get(`sort`)),i;return i=!r||r.key!==e?{key:e,dir:`asc`}:r.dir===`asc`?{key:e,dir:`desc`}:null,i?n.set(`sort`,`${i.key}:${i.dir}`):n.delete(`sort`),n},{replace:!0})}function c(e){t(t=>{let n=new URLSearchParams(t);return e?n.set(`sort`,`${e.key}:${e.dir}`):n.delete(`sort`),n},{replace:!0})}return{q:n,setQ:r,debouncedQ:i,sort:o,toggleSort:s,setSort:c}}var F6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/shared/Dialog.tsx`;function I6({title:e,onClose:t,children:n}){return(0,X.jsxDEV)(c$,{open:!0,onOpenChange:e=>{e||t()},children:(0,X.jsxDEV)(d$,{children:[(0,X.jsxDEV)(f$,{children:(0,X.jsxDEV)(p$,{children:e},void 0,!1,{fileName:F6,lineNumber:24,columnNumber:11},this)},void 0,!1,{fileName:F6,lineNumber:23,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`px-5 pb-5`,children:n},void 0,!1,{fileName:F6,lineNumber:26,columnNumber:9},this)]},void 0,!0,{fileName:F6,lineNumber:22,columnNumber:7},this)},void 0,!1,{fileName:F6,lineNumber:16,columnNumber:5},this)}var L6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/RecordCard.tsx`;function R6(e,t,n){return n?e(n.label):t}function z6({row:e,m:t,keys:n,hrefBase:r,onDelete:i,deleting:a}){let{t:o}=l(),s=ur(t.fields),c=`${r}/${e.id}`,[u,...d]=n,f=it(s),p=f?e[f]:void 0,m=f!=null&&mZ(p).length>0,h=f?d.filter(e=>e!==f):d,g=u?s[u]:void 0;return(0,X.jsxDEV)(`div`,{className:`bg-elevated rounded-xl p-4 mb-3 border border-border transition-colors hover:border-border2 hover:bg-surface`,children:[m&&(0,X.jsxDEV)(`div`,{className:`-mx-4 -mt-4 mb-3 overflow-hidden rounded-t-xl [&_img]:rounded-none [&>*]:rounded-none`,children:(0,X.jsxDEV)(bZ,{value:p},void 0,!1,{fileName:L6,lineNumber:52,columnNumber:11},this)},void 0,!1,{fileName:L6,lineNumber:51,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,X.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsxDEV)(I,{to:c,className:`mb-2 block min-w-0 truncate text-text`,children:g?(0,X.jsxDEV)(bn,{field:g,value:e[u],height:24},void 0,!1,{fileName:L6,lineNumber:60,columnNumber:27},this):String(e[u]??``)},void 0,!1,{fileName:L6,lineNumber:59,columnNumber:11},this),(0,X.jsxDEV)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1`,children:h.map(t=>{let n=s[t],r=e[t];return!n||!Ue(r)?null:(0,X.jsxDEV)(`span`,{className:`text-sm text-muted inline-flex min-w-0 max-w-full items-baseline gap-1 truncate`,children:[(0,X.jsxDEV)(`span`,{className:`text-xs opacity-70 shrink-0`,children:[R6(o,t,n),`:`]},void 0,!0,{fileName:L6,lineNumber:72,columnNumber:19},this),(0,X.jsxDEV)(bn,{field:n,value:r},void 0,!1,{fileName:L6,lineNumber:73,columnNumber:19},this)]},t,!0,{fileName:L6,lineNumber:68,columnNumber:17},this)})},void 0,!1,{fileName:L6,lineNumber:62,columnNumber:11},this)]},void 0,!0,{fileName:L6,lineNumber:56,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex gap-2 shrink-0`,children:(0,X.jsxDEV)(T,{variant:`outline`,size:`icon`,disabled:a,className:`text-muted hover:text-danger hover:border-danger`,onClick:i,children:(0,X.jsxDEV)(ke,{size:15},void 0,!1,{fileName:L6,lineNumber:87,columnNumber:13},this)},void 0,!1,{fileName:L6,lineNumber:80,columnNumber:11},this)},void 0,!1,{fileName:L6,lineNumber:79,columnNumber:9},this)]},void 0,!0,{fileName:L6,lineNumber:55,columnNumber:7},this)]},void 0,!0,{fileName:L6,lineNumber:49,columnNumber:5},this)}var B6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/RecordRow.tsx`;function V6({row:e,m:t,keys:n,hrefBase:r,onDelete:i,deleting:a}){let o=ur(t.fields),s=`${r}/${e.id}`;return(0,X.jsxDEV)(`tr`,{className:`group border-b border-border/60 hover:bg-elevated/60 transition-colors`,children:[n.map((t,n)=>n===0?(0,X.jsxDEV)(`td`,{className:`max-w-xs p-0`,children:(0,X.jsxDEV)(I,{to:s,className:`block px-4 py-1.5 text-sm font-medium text-text truncate`,children:o[t]?(0,X.jsxDEV)(bn,{field:o[t],value:e[t]},void 0,!1,{fileName:B6,lineNumber:35,columnNumber:24},this):String(e[t]??``)},void 0,!1,{fileName:B6,lineNumber:34,columnNumber:13},this)},t,!1,{fileName:B6,lineNumber:33,columnNumber:11},this):(0,X.jsxDEV)(`td`,{className:`px-4 py-1.5 text-sm max-w-xs text-text/80`,children:(0,X.jsxDEV)(`span`,{className:`block truncate`,children:o[t]?(0,X.jsxDEV)(bn,{field:o[t],value:e[t]},void 0,!1,{fileName:B6,lineNumber:41,columnNumber:24},this):String(e[t]??``)},void 0,!1,{fileName:B6,lineNumber:40,columnNumber:13},this)},t,!1,{fileName:B6,lineNumber:39,columnNumber:11},this)),(0,X.jsxDEV)(`td`,{className:`px-3 py-1 w-14`,children:(0,X.jsxDEV)(`div`,{className:`flex justify-end`,children:(0,X.jsxDEV)(T,{variant:`ghost`,size:`iconSm`,disabled:a,className:`m-0 text-muted opacity-0 group-hover:opacity-100 pointer-coarse:opacity-100 hover:text-danger transition-opacity`,onClick:i,children:(0,X.jsxDEV)(ke,{size:14},void 0,!1,{fileName:B6,lineNumber:55,columnNumber:13},this)},void 0,!1,{fileName:B6,lineNumber:48,columnNumber:11},this)},void 0,!1,{fileName:B6,lineNumber:47,columnNumber:9},this)},void 0,!1,{fileName:B6,lineNumber:46,columnNumber:7},this)]},void 0,!0,{fileName:B6,lineNumber:28,columnNumber:5},this)}var H6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/GroupPanel.tsx`,U6=`__none__`;function W6({grouping:e,total:t,sort:n}){let{t:r}=l(),{fields:i,field:a,setField:o,facets:s,selected:c,setSelected:u}=e;return(0,X.jsxDEV)(`div`,{className:`folder-tree flex flex-col gap-2`,children:[(0,X.jsxDEV)(`div`,{className:`px-1 pt-1`,children:(0,X.jsxDEV)(`div`,{className:`folder-node${c===null?` active`:``}`,onClick:()=>u(null),children:[(0,X.jsxDEV)(`span`,{className:`folder-name`,children:r(`group.all`)},void 0,!1,{fileName:H6,lineNumber:30,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`ml-auto shrink-0 tabular-nums text-xs text-muted`,children:t},void 0,!1,{fileName:H6,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:H6,lineNumber:29,columnNumber:9},this)},void 0,!1,{fileName:H6,lineNumber:28,columnNumber:7},this),n&&n.keys.length>0&&(0,X.jsxDEV)(`div`,{className:`px-1 list:hidden`,children:[(0,X.jsxDEV)(`div`,{className:`folder-tree-header`,children:r(`list.sortBy`)},void 0,!1,{fileName:H6,lineNumber:39,columnNumber:11},this),(0,X.jsxDEV)(st,{value:n.value?`${n.value.key}:${n.value.dir}`:U6,onValueChange:e=>{if(e===U6)return n.onChange(null);let[t,r]=e.split(`:`);n.onChange({key:t,dir:r})},children:[(0,X.jsxDEV)(ot,{className:`h-8 w-full text-sm`,children:(0,X.jsxDEV)(Re,{placeholder:r(`list.sortBy`)},void 0,!1,{fileName:H6,lineNumber:49,columnNumber:15},this)},void 0,!1,{fileName:H6,lineNumber:48,columnNumber:13},this),(0,X.jsxDEV)(Le,{children:[(0,X.jsxDEV)(Ee,{value:U6,children:r(`list.sortNone`)},void 0,!1,{fileName:H6,lineNumber:52,columnNumber:15},this),n.keys.flatMap(({key:e,label:t})=>[(0,X.jsxDEV)(Ee,{value:`${e}:asc`,children:[t,` ↑`]},`${e}:asc`,!0,{fileName:H6,lineNumber:54,columnNumber:17},this),(0,X.jsxDEV)(Ee,{value:`${e}:desc`,children:[t,` ↓`]},`${e}:desc`,!0,{fileName:H6,lineNumber:57,columnNumber:17},this)])]},void 0,!0,{fileName:H6,lineNumber:51,columnNumber:13},this)]},void 0,!0,{fileName:H6,lineNumber:40,columnNumber:11},this)]},void 0,!0,{fileName:H6,lineNumber:38,columnNumber:9},this),i.length>0&&(0,X.jsxDEV)(`div`,{className:`px-1`,children:[(0,X.jsxDEV)(`div`,{className:`folder-tree-header`,children:r(`group.field`)},void 0,!1,{fileName:H6,lineNumber:69,columnNumber:11},this),(0,X.jsxDEV)(st,{value:a??void 0,onValueChange:o,children:[(0,X.jsxDEV)(ot,{className:`h-8 w-full text-sm`,children:(0,X.jsxDEV)(Re,{placeholder:r(`group.field`)},void 0,!1,{fileName:H6,lineNumber:72,columnNumber:15},this)},void 0,!1,{fileName:H6,lineNumber:71,columnNumber:13},this),(0,X.jsxDEV)(Le,{children:i.map(e=>(0,X.jsxDEV)(Ee,{value:e.key,children:e.label},e.key,!1,{fileName:H6,lineNumber:76,columnNumber:17},this))},void 0,!1,{fileName:H6,lineNumber:74,columnNumber:13},this)]},void 0,!0,{fileName:H6,lineNumber:70,columnNumber:11},this)]},void 0,!0,{fileName:H6,lineNumber:68,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`folder-tree-scroll`,children:(0,X.jsxDEV)(`div`,{className:`folder-tree-nodes`,children:s.map(e=>(0,X.jsxDEV)(`div`,{className:`folder-node${c===e.key?` active`:``}`,title:e.label,onClick:()=>u(e.key),children:[(0,X.jsxDEV)(`span`,{className:`folder-name truncate`,children:e.label},void 0,!1,{fileName:H6,lineNumber:95,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`ml-auto shrink-0 tabular-nums text-xs text-muted`,children:e.count},void 0,!1,{fileName:H6,lineNumber:96,columnNumber:15},this)]},e.key,!0,{fileName:H6,lineNumber:89,columnNumber:13},this))},void 0,!1,{fileName:H6,lineNumber:87,columnNumber:9},this)},void 0,!1,{fileName:H6,lineNumber:86,columnNumber:7},this)]},void 0,!0,{fileName:H6,lineNumber:26,columnNumber:5},this)}function G6(e,t){let{t:n}=l(),r=t?ur(e.fields)[t]:void 0,i=r?.prim===`relation`?r.relation:void 0,a=r?.hints?.displayKey??`name`,{labelMap:o}=wX(i?.vault??``,i?.type??``,a);return(0,B.useMemo)(()=>({t:n,labelMap:o}),[n,o])}function K6(e,t,n,r,i){let a=new Map,o=0;for(let i of t){let t=yn(e,i[n],r);if(!t.length){o++;continue}for(let e of t){let t=a.get(e.value)??{label:e.label,n:0};t.n++,a.set(e.value,t)}}let s=[...a.entries()].map(([e,{label:t,n}])=>({key:e,label:t,count:n})).sort((e,t)=>t.count-e.count||e.label.localeCompare(t.label));return o>0&&s.push({key:q6,label:i,count:o}),s}var q6=`\0__none__`;function J6(e,t){let{t:n}=l(),r=ur(e.fields),i=(0,B.useMemo)(()=>fr(e).filter(e=>r[e]),[e,r]),a=(0,B.useMemo)(()=>i.map(e=>({key:e,label:r[e]?n(r[e].label):e})),[i,r,n]),[o,s]=re(),c=o.get(`groupBy`),u=o.get(`groupItem`)??null,d=(0,B.useMemo)(()=>{if(c&&i.includes(c))return c;let t=dr(e);return t&&i.includes(t)?t:i[0]??null},[c,i,e]),f=G6(e,d);return{fields:a,field:d,setField:e=>{s(t=>{let n=new URLSearchParams(t);return n.set(`groupBy`,e),n.delete(`groupItem`),n},{replace:!0})},facets:(0,B.useMemo)(()=>{if(!d)return[];let e=r[d];return e?K6(e,t,d,f,n(`group.noValue`)):[]},[d,r,t,f,n]),selected:u,setSelected:e=>{s(t=>{let n=new URLSearchParams(t);return e===null?n.delete(`groupItem`):n.set(`groupItem`,e),n},{replace:!0})},filtered:(0,B.useMemo)(()=>{if(!d||u===null)return t;let e=r[d];return e?u===`\0__none__`?t.filter(t=>yn(e,t[d],f).length===0):t.filter(t=>yn(e,t[d],f).some(e=>e.value===u)):t},[t,d,r,u,f])}}function Y6(e,t,n,r,i){let a=e=>{if(!r)return String(e[t]??``);let n=yn(r,e[t],i)[0];return n?.sort??n?.value??``};return[...e].sort((e,t)=>{let r=a(e).localeCompare(a(t),void 0,{numeric:!0,sensitivity:`base`});return n===`asc`?r:-r})}var X6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/EntityListView.tsx`;function Z6({mod:e,hrefBase:t,fetchRows:n,onDelete:r,resetKey:i}){let{t:a}=l(),o=N(),[s,c]=(0,B.useState)([]),[u,d]=(0,B.useState)(null),[f,p]=(0,B.useState)(!1),[m,h]=(0,B.useState)(0),{q:g,setQ:_,debouncedQ:b,sort:x,toggleSort:S,setSort:C}=P6(),[,w]=re(),E=(0,B.useCallback)(async(e=b)=>{try{c(await n(e))}catch{c([])}},[n,b]),D=(0,B.useRef)(null);(0,B.useEffect)(()=>{i!==void 0&&(D.current!==null&&D.current!==i&&(_(``),w({},{replace:!0})),D.current=i)},[i]),(0,B.useEffect)(()=>{E()},[E,m]);let O=J6(e,s),k=G6(e,x?.key??null),A=(0,B.useMemo)(()=>{if(!x)return O.filtered;let t=ur(e.fields)[x.key];return Y6(O.filtered,x.key,x.dir,t,k)},[O.filtered,x,e,k]),j=ir(e),M=ur(e.fields),P={keys:j.map(e=>({key:e,label:R6(a,e,M[e])})),value:x,onChange:C};function F(){o(`${t}/new`)}async function I(e){if(!confirm(a(`actions.confirmDelete`)))return;d(e);let t=await r(e);if(d(null),!t.ok){alert(t.error===`last_admin`?a(`auth.lastAdminError`):a(`common.error`));return}h(e=>e+1)}return(0,X.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,X.jsxDEV)(Rn,{actions:(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`div`,{className:`relative w-[220px] hidden nav:block`,children:[(0,X.jsxDEV)(Bc,{size:15,className:`absolute left-2.5 top-1/2 -translate-y-1/2 text-muted pointer-events-none`},void 0,!1,{fileName:X6,lineNumber:117,columnNumber:15},this),(0,X.jsxDEV)(`input`,{type:`search`,value:g,onChange:e=>_(e.target.value),placeholder:a(`list.searchPlaceholder`),className:`w-full h-8 pr-3 text-sm rounded-lg border border-border bg-surface text-text placeholder:text-muted focus:outline-none focus:border-accent transition-colors`,style:{paddingLeft:`2rem`}},void 0,!1,{fileName:X6,lineNumber:118,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:116,columnNumber:13},this),(0,X.jsxDEV)(T,{variant:`secondary`,size:`icon`,className:`panel:hidden`,onClick:()=>p(!0),children:(0,X.jsxDEV)(Lc,{size:16},void 0,!1,{fileName:X6,lineNumber:129,columnNumber:15},this)},void 0,!1,{fileName:X6,lineNumber:128,columnNumber:13},this),(0,X.jsxDEV)(T,{onClick:F,children:[(0,X.jsxDEV)(y,{size:16},void 0,!1,{fileName:X6,lineNumber:132,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`hidden sm:inline`,children:a(`actions.new`)},void 0,!1,{fileName:X6,lineNumber:133,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:131,columnNumber:13},this)]},void 0,!0,{fileName:X6,lineNumber:114,columnNumber:11},this),children:[(0,X.jsxDEV)(v,{name:e.icon,size:20,className:`shrink-0 text-text`},void 0,!1,{fileName:X6,lineNumber:138,columnNumber:9},this),(0,X.jsxDEV)(`h1`,{className:`text-base font-bold text-text truncate`,children:a(e.label)},void 0,!1,{fileName:X6,lineNumber:139,columnNumber:9},this),(0,X.jsxDEV)(`span`,{className:`text-xs font-medium bg-accent/15 text-accent rounded-full px-2 py-0.5 tabular-nums shrink-0`,children:A.length},void 0,!1,{fileName:X6,lineNumber:140,columnNumber:9},this)]},void 0,!0,{fileName:X6,lineNumber:112,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`flex items-start`,children:[(0,X.jsxDEV)(`div`,{className:`hidden panel:block w-56 shrink-0 border-r border-border sticky top-[52px] self-start h-[calc(100dvh-52px)] overflow-y-auto`,children:(0,X.jsxDEV)(`div`,{className:`pt-2`,children:(0,X.jsxDEV)(W6,{grouping:O,total:s.length,sort:P},void 0,!1,{fileName:X6,lineNumber:150,columnNumber:13},this)},void 0,!1,{fileName:X6,lineNumber:149,columnNumber:11},this)},void 0,!1,{fileName:X6,lineNumber:148,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:A.length===0?(0,X.jsxDEV)(`div`,{className:`flex flex-col items-center justify-center gap-4 py-20 text-muted`,children:[(0,X.jsxDEV)(v,{name:e.icon,size:48,className:`text-muted`},void 0,!1,{fileName:X6,lineNumber:158,columnNumber:15},this),(0,X.jsxDEV)(`p`,{className:`text-base`,children:a(`list.empty`)},void 0,!1,{fileName:X6,lineNumber:159,columnNumber:15},this),(0,X.jsxDEV)(T,{onClick:F,children:[(0,X.jsxDEV)(y,{size:16},void 0,!1,{fileName:X6,lineNumber:161,columnNumber:17},this),` `,a(`actions.addFirst`)]},void 0,!0,{fileName:X6,lineNumber:160,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:157,columnNumber:13},this):(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`div`,{className:`list:hidden p-4`,children:A.map(n=>(0,X.jsxDEV)(z6,{row:n,m:e,keys:j,hrefBase:t,onDelete:()=>I(String(n.id)),deleting:u===String(n.id)},String(n.id),!1,{fileName:X6,lineNumber:169,columnNumber:19},this))},void 0,!1,{fileName:X6,lineNumber:167,columnNumber:15},this),(0,X.jsxDEV)(`div`,{className:`hidden list:block overflow-auto h-[calc(100dvh-52px)]`,children:(0,X.jsxDEV)(`table`,{className:`w-full border-collapse`,children:[(0,X.jsxDEV)(`thead`,{className:`eink-solid sticky top-0 z-10 bg-bg/95 backdrop-blur`,children:(0,X.jsxDEV)(`tr`,{className:`border-b border-border`,children:[j.map(e=>(0,X.jsxDEV)(`th`,{onClick:()=>S(e),className:`px-4 py-2 text-left text-[11px] font-semibold text-muted uppercase tracking-wider cursor-pointer select-none hover:text-text transition-colors`,children:(0,X.jsxDEV)(`span`,{className:`flex items-center gap-1 whitespace-nowrap`,title:R6(a,e,M[e]),children:[R6(a,e,M[e]),x?.key===e?x.dir===`asc`?(0,X.jsxDEV)(je,{size:11},void 0,!1,{fileName:X6,lineNumber:198,columnNumber:33},this):(0,X.jsxDEV)(Ie,{size:11},void 0,!1,{fileName:X6,lineNumber:200,columnNumber:33},this):(0,X.jsxDEV)(Tc,{size:11,className:`opacity-30`},void 0,!1,{fileName:X6,lineNumber:203,columnNumber:31},this)]},void 0,!0,{fileName:X6,lineNumber:191,columnNumber:27},this)},e,!1,{fileName:X6,lineNumber:186,columnNumber:25},this)),(0,X.jsxDEV)(`th`,{className:`w-12`},void 0,!1,{fileName:X6,lineNumber:208,columnNumber:23},this)]},void 0,!0,{fileName:X6,lineNumber:184,columnNumber:21},this)},void 0,!1,{fileName:X6,lineNumber:183,columnNumber:19},this),(0,X.jsxDEV)(`tbody`,{children:A.map(n=>(0,X.jsxDEV)(V6,{row:n,m:e,keys:j,hrefBase:t,onDelete:()=>I(String(n.id)),deleting:u===String(n.id)},String(n.id),!1,{fileName:X6,lineNumber:213,columnNumber:23},this))},void 0,!1,{fileName:X6,lineNumber:211,columnNumber:19},this)]},void 0,!0,{fileName:X6,lineNumber:182,columnNumber:17},this)},void 0,!1,{fileName:X6,lineNumber:181,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:165,columnNumber:13},this)},void 0,!1,{fileName:X6,lineNumber:155,columnNumber:9},this)]},void 0,!0,{fileName:X6,lineNumber:146,columnNumber:7},this),f&&(0,X.jsxDEV)(I6,{title:a(`group.title`),onClose:()=>p(!1),children:[(0,X.jsxDEV)(`div`,{className:`relative mb-4 nav:hidden`,children:[(0,X.jsxDEV)(Bc,{size:15,className:`absolute left-2.5 top-1/2 -translate-y-1/2 text-muted pointer-events-none`},void 0,!1,{fileName:X6,lineNumber:236,columnNumber:13},this),(0,X.jsxDEV)(`input`,{type:`search`,value:g,onChange:e=>_(e.target.value),placeholder:a(`list.searchPlaceholder`),className:`w-full h-9 pr-3 text-sm rounded-lg border border-border bg-surface text-text placeholder:text-muted focus:outline-none focus:border-accent transition-colors`,style:{paddingLeft:`2rem`}},void 0,!1,{fileName:X6,lineNumber:237,columnNumber:13},this)]},void 0,!0,{fileName:X6,lineNumber:235,columnNumber:11},this),(0,X.jsxDEV)(W6,{grouping:O,total:s.length,sort:P},void 0,!1,{fileName:X6,lineNumber:246,columnNumber:11},this)]},void 0,!0,{fileName:X6,lineNumber:233,columnNumber:9},this)]},void 0,!0,{fileName:X6,lineNumber:110,columnNumber:5},this)}var Q6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/UsersListPage.tsx`;function $6(){return(0,X.jsxDEV)(Z6,{mod:M6,hrefBase:`/settings/users`,fetchRows:async e=>{let t=await Cr(e);return t.ok?t.data:[]},onDelete:async e=>{let t=await kr(Number(e));return t.ok?{ok:!0}:t.status===409?{ok:!1,error:`last_admin`}:{ok:!1}}},void 0,!1,{fileName:Q6,lineNumber:7,columnNumber:5},this)}var e8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/UserCreatePage.tsx`,t8=[Yn.string({key:`login`,label:`auth.fieldLogin`,required:!0}),Yn.string({key:`displayName`,label:`auth.fieldDisplayName`,required:!0}),Yn.password({key:`password`,label:`auth.password`,required:!0}),Yn.select({key:`role`,label:`auth.fieldRole`,options:[{value:`admin`,title:`auth.roleAdmin`},{value:`member`,title:`auth.roleMember`}]})];function n8(){let{t:e}=l(),t=N();async function n(){return{login:``,displayName:``,password:``,role:`member`}}async function r(e){let n=await vr({login:e.login,displayName:e.displayName,password:e.password,role:e.role});return n.ok?(t(`/settings/users`),{ok:!0,row:{login:n.data.login,displayName:n.data.displayName,password:n.data.password,role:n.data.role}}):n.status===422?{ok:!1,status:422,issues:n.data.issues}:{ok:!1,status:n.status}}return(0,X.jsxDEV)(Fr,{fields:t8,recordCtx:{vault:``,module:`users`,recordId:`new`},load:n,save:r,title:e(`auth.userCreateTitle`),backTo:`/settings/users`,backLabel:e(`auth.usersTitle`)},void 0,!1,{fileName:e8,lineNumber:46,columnNumber:5},this)}var r8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/UserEditPage.tsx`,i8=[Yn.string({key:`displayName`,label:`auth.fieldDisplayName`}),Yn.select({key:`role`,label:`auth.fieldRole`,options:[{value:`admin`,title:`auth.roleAdmin`},{value:`member`,title:`auth.roleMember`}]}),Yn.boolean({key:`disabled`,label:`auth.fieldDisabled`}),Yn.password({key:`password`,label:`auth.fieldPasswordOptional`})];function a8(){let{id:e}=F(),{t}=l(),n=Number(e);async function r(){let e=await Cr(),t=e.ok?e.data.find(e=>e.id===n):void 0;return{displayName:t?.displayName??``,role:t?.role??`member`,disabled:t?.disabled??!1,password:t?.password??``}}async function i(e){let t=await Ar(n,{displayName:e.displayName,role:e.role,disabled:e.disabled,password:e.password});return t.ok?{ok:!0,row:{displayName:t.data.displayName,role:t.data.role,disabled:t.data.disabled,password:t.data.password}}:t.status===409?{ok:!1,status:422,issues:[{field:`role`,code:`last_admin`,path:[],params:{}}]}:t.status===422?{ok:!1,status:422,issues:t.data.issues}:{ok:!1,status:t.status}}return(0,X.jsxDEV)(Fr,{fields:i8,recordCtx:{vault:``,module:`users`,recordId:e??``},load:r,save:i,title:t(`auth.usersTitle`),backTo:`/settings/users`,backLabel:t(`auth.usersTitle`)},void 0,!1,{fileName:r8,lineNumber:50,columnNumber:5},this)}var o8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/TypeView.tsx`;function s8(){let{t:e}=l(),{vault:t,type:n}=F(),r=Tn().flatMap(e=>e.modules).find(e=>e.vault===t&&e.module===n);return!r||r.standalone===!1?(0,X.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:o8,lineNumber:13,columnNumber:44},this):(0,X.jsxDEV)(Z6,{mod:r,hrefBase:`/${t}/${n}`,resetKey:`${t}:${n}`,fetchRows:async e=>{let r=e?`?q=${encodeURIComponent(e)}`:``,i=await fetch(`/api/${t}/${n}${r}`);return i.ok?i.json():[]},onDelete:async e=>(await Sr(r.vault,r.module,e),{ok:!0})},void 0,!1,{fileName:o8,lineNumber:16,columnNumber:5},this)}var c8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/display/index.tsx`;function l8(e){return e!=null&&e!==``}function u8(e,t,n,r){let{t:i}=l(),[a,o]=(0,B.useState)(!1),[s,c]=(0,B.useState)({}),[u,d]=(0,B.useState)({}),[f,p]=(0,B.useState)(!1),m=t=>t in s?s[t]:e?.[t],h=(e,t)=>c(n=>({...n,[e]:t})),g=(e,t,n)=>u[e]&&t in u[e]?u[e][t]:n?.[t],_=(e,t,n)=>d(r=>({...r,[e]:{...r[e],[t]:n}}));async function v(){if(!t)return;p(!0);let e=be.loading(i(`save.saving`)),a;if(r){let e={...s};for(let[t,n]of Object.entries(u))Object.keys(n).length&&(e[`_extend_${t}`]=n);Object.keys(e).length&&(a=await r(e)??void 0)}else{for(let[e,n]of Object.entries(s))a??=await t(e,n)??void 0;if(n)for(let[e,t]of Object.entries(u))for(let[r,i]of Object.entries(t))a??=await n(e,r,i)??void 0}if(p(!1),a){be.error(a,{id:e});return}be.success(i(`save.done`),{id:e}),o(!1),c({}),d({})}return{editAll:a,savingAll:f,startAll:()=>{c({}),d({}),o(!0)},cancelAll:()=>{o(!1),c({}),d({})},saveAll:v,baseVal:m,setBaseDraft:h,extVal:g,setExtDraft:_}}function d8({module:e,record:t,onUpdate:n,onUpdateExtend:r,edit:i,errorAt:a=(()=>void 0)}){let{t:o}=l(),s=ur(e.fields),c=e=>{let t=s[e];return t?.label?o(t.label):e},u=(e,t)=>{let n=s[e]?.options?.find(e=>e.value===String(t));return n?o(n.title):String(t)},d=ar(e),f=(0,B.useMemo)(()=>s[d]??{kind:`text`,label:`core.fields.name`,required:!1,prim:`text`,hints:{},column:`text`,zod:void 0},[s,d]),p=!!n,m=(0,B.useMemo)(()=>{let n={...t};if(i?.editAll)for(let[t]of nr(e.fields))n[t]=i.baseVal(t);return n},[t,i?.editAll,i?.baseVal,e.fields]),h={bridge:{mode:i?.editAll?`edit`:`view`,recordCtx:{vault:e.vault,module:e.module,recordId:String(t.id)},values:m,getValue:e=>i?.editAll?i.baseVal(e):t[e],setValue:(e,t)=>{i?.editAll?i.setBaseDraft(e,t):n&&n(e,t)},isHidden:e=>{if(e===d)return!0;let t=s[e];return!!(t?.virtual||or(t?.hidden,m))},requiredOf:e=>or(s[e]?.required,m),error:e=>a([e]),touch:()=>{}}},g=(0,B.useMemo)(()=>Fn(e.vault,e.module).map(e=>({ext:e,data:t._extends?.[e.id]})).filter(({ext:e,data:t})=>t!=null&&nr(e.fields).some(([e])=>l8(t[e]))||e.showWhen!=null&&lr(e.showWhen,m)),[e.vault,e.module,t,i?.editAll,m]);return(0,X.jsxDEV)(Ln.Provider,{value:a,children:(0,X.jsxDEV)(`article`,{className:`max-w-7xl mx-auto px-5 py-8 md:px-8 md:py-10`,children:[(0,X.jsxDEV)(`header`,{className:`mb-6`,role:`heading`,"aria-level":1,children:(0,X.jsxDEV)(`div`,{className:`min-w-0`,children:(0,X.jsxDEV)(Sn,{field:f,value:i?.editAll?i.baseVal(d):t[d],mode:i?.editAll?`edit`:`view`,recordCtx:{vault:e.vault,module:e.module,recordId:String(t.id)},onChange:i?.editAll?e=>i.setBaseDraft(d,e):n?e=>n(d,e):void 0},void 0,!1,{fileName:c8,lineNumber:245,columnNumber:11},this)},void 0,!1,{fileName:c8,lineNumber:244,columnNumber:9},this)},void 0,!1,{fileName:c8,lineNumber:243,columnNumber:7},this),(0,X.jsxDEV)(In,{items:e.fields,ctx:h},void 0,!1,{fileName:c8,lineNumber:262,columnNumber:7},this),g.map(({ext:n,data:a})=>(0,X.jsxDEV)(f8,{ext:n,data:a,m:e,recordId:String(t.id),editable:p,edit:i,onUpdateExtend:r,fieldLabelOf:c,valueLabelOf:u},n.id,!1,{fileName:c8,lineNumber:267,columnNumber:9},this))]},void 0,!0,{fileName:c8,lineNumber:241,columnNumber:5},this)},void 0,!1,{fileName:c8,lineNumber:240,columnNumber:5},this)}function f8({ext:e,data:t,m:n,recordId:r,editable:i,edit:a,onUpdateExtend:o,fieldLabelOf:s,valueLabelOf:c}){let{t:u}=l(),d=In({items:e.fields,ctx:{renderField:(s,c)=>c.virtual||!i&&!l8(t?.[s])?null:(0,X.jsxDEV)(Sn,{field:c,value:a?.editAll?a.extVal(e.id,s,t):t?.[s],label:c.label?u(c.label):void 0,required:c.required===!0,mode:a?.editAll?`edit`:`view`,recordCtx:{vault:n.vault,module:n.module,recordId:r},onChange:a?.editAll?t=>a.setExtDraft(e.id,s,t):o?t=>o(e.id,s,t):void 0},void 0,!1,{fileName:c8,lineNumber:323,columnNumber:9},this),renderGroup:(s,c)=>{let l=a?.editAll?a.extVal(e.id,s,t):t?.[s];if(!i&&!l8(l))return null;let u=xe({kind:pe(c)});return u?(0,X.jsxDEV)(u.Page,{el:c,value:l,mode:a?.editAll?`edit`:`view`,recordCtx:{vault:n.vault,module:n.module,recordId:r},onChange:a?.editAll?t=>a.setExtDraft(e.id,s,t):o?t=>o(e.id,s,t):void 0},void 0,!1,{fileName:c8,lineNumber:346,columnNumber:9},this):null}}});return d==null?null:(0,X.jsxDEV)(`div`,{className:`mt-8 border-t border-border pt-6`,children:(0,X.jsxDEV)(An,{label:u(e.label),icon:e.icon,labelAfter:(0,X.jsxDEV)(wn,{ext:e,fieldLabel:s,valueLabel:c},void 0,!1,{fileName:c8,lineNumber:371,columnNumber:21},this),children:d},void 0,!1,{fileName:c8,lineNumber:368,columnNumber:7},this)},void 0,!1,{fileName:c8,lineNumber:367,columnNumber:5},this)}function p8(e){return j(()=>import(e),[])}var m8={};function h8(e,t){return m8[`${e}/${t}`]}function g8(e){e.RecordView&&(m8[`${e.vault}/${e.module}`]=e.RecordView);for(let t of e.renderers??[])L(t);for(let[t,n]of Object.entries(e.templates??{}))ye(t,n);for(let[t,n]of Object.entries(e.translations??{}))n&&Vi.addResourceBundle(t,`translation`,n,!0,!0)}var _8=Object.assign({"../plugin-agent/src/index.ts":()=>j(()=>import(`./src-BiPG5Wj0.js`),__vite__mapDeps([21,22,1,23,24])),"../plugin-console/src/index.ts":()=>j(()=>import(`./src-YMuIAAH1.js`),__vite__mapDeps([25,22,1,23,24])),"../plugin-core/src/index.ts":()=>j(()=>import(`./src-pd92-ym6.js`),__vite__mapDeps([26,22,1,27,28,23,24])),"../plugin-devices/src/index.ts":()=>j(()=>import(`./src-D6UndSMF.js`),__vite__mapDeps([29,30,22,1,31,32,33,23,24])),"../plugin-documents/src/index.ts":()=>j(()=>import(`./src-CEDC2fUY.js`),__vite__mapDeps([34,22,1,31,33,23])),"../plugin-drone/src/index.ts":()=>j(()=>import(`./src-DiUhYfl4.js`),__vite__mapDeps([35,22,1,33,31,23])),"../plugin-finance/src/index.ts":()=>j(()=>import(`./src-791s3ufb.js`),__vite__mapDeps([36,37,22,1,31,33,23,24])),"../plugin-garden/src/index.ts":()=>j(()=>import(`./src-29EVe5AR.js`),__vite__mapDeps([38,22,1,31,23])),"../plugin-health/src/index.ts":()=>j(()=>import(`./src-CVUcsaPt.js`),__vite__mapDeps([39,22,1,31,33,23,24])),"../plugin-home/src/index.ts":()=>j(()=>import(`./src-Do7Z4dhu.js`),__vite__mapDeps([40,22,1,31,23])),"../plugin-http/src/index.ts":()=>j(()=>import(`./src-CXN5nPkW.js`),__vite__mapDeps([41,22,1,23,24])),"../plugin-kitchen/src/index.ts":()=>j(()=>import(`./src-DLcSAptE.js`),__vite__mapDeps([42,22,1,31,23])),"../plugin-lab/src/index.ts":()=>j(()=>import(`./src-C-Dv1uXg.js`),__vite__mapDeps([43,22,1,31,30,32,33,23,24,37])),"../plugin-media/src/index.ts":()=>j(()=>import(`./src-B8iacye4.js`),__vite__mapDeps([44,22,1,31,23,24])),"../plugin-nextcloud/src/index.ts":()=>j(()=>import(`./src-BljX5hzg.js`),__vite__mapDeps([45,22,1,23,24])),"../plugin-orchestrator/src/index.ts":()=>j(()=>import(`./src-D8ptIyqZ.js`),__vite__mapDeps([46,22,1,23,24])),"../plugin-people/src/index.ts":()=>j(()=>import(`./src-7ex3j1NP.js`),__vite__mapDeps([47,22,1,31,23])),"../plugin-telegram/src/index.ts":()=>j(()=>import(`./src-C2Pe7TE7.js`),__vite__mapDeps([48,22,1,23,24])),"../plugin-things/src/index.ts":()=>j(()=>import(`./src-DW-wOHmI.js`),__vite__mapDeps([49,22,1,31,23])),"../plugin-transit/src/index.ts":()=>j(()=>import(`./src-CSA8Ms7c.js`),__vite__mapDeps([50,22,1,31,23,24])),"../plugin-travel/src/index.ts":()=>j(()=>import(`./src-CLRRfAdi2.js`),__vite__mapDeps([51,22,1,31,23])),"../plugin-webexport/src/index.ts":()=>j(()=>import(`./src-CuLO2WBn2.js`),__vite__mapDeps([52,22,1,23,24]))}),v8=Object.assign({"../plugin-devices/src/fields/ui.tsx":()=>j(()=>import(`./ui-Bl7rNE-K.js`),__vite__mapDeps([53,1,2,54,5,55,9,10,15,27,56,57,58,59,22,32]))});async function y8(e){let t=Object.entries(_8).find(([t])=>t.includes(`/plugin-${e}/`));if(!t)return null;let n=(await t[1]()).default??null;for(let[t,n]of Object.entries(v8)){if(!t.includes(`/plugin-${e}/`))continue;let r=(await n()).default;r&&g8(r)}return n}function b8(e){if(!e.startsWith(`/`)){console.warn(`[federation] skip non-same-origin css: ${e}`);return}if(document.querySelector(`link[href="${e}"]`))return;let t=document.createElement(`link`);t.rel=`stylesheet`,t.href=e,document.head.appendChild(t)}function x8(e){let t=new Map(e.map(e=>[e.id,e])),n=new Set,r=[],i=e=>{if(!n.has(e.id)){n.add(e.id);for(let n of e.dependsOn){let e=t.get(n);e&&i(e)}r.push(e)}};for(let t of e)i(t);return r}async function S8(){let e=await fetch(`/api/plugins`);if(!e.ok)throw Error(`[federation] /api/plugins ${e.status}`);let t=x8((await e.json()).filter(e=>e.enabled)),n=[];for(let e of t)try{if(e.schema){let t=await p8(e.schema);if(n.push(t.default),e.css&&b8(e.css),e.web)try{let t=(await p8(e.web)).default;t&&(Array.isArray(t)?t:[t]).forEach(g8)}catch(t){console.error(`[federation] ${e.id}: web bundle failed —`,t)}}else{let t=await y8(e.id);t&&n.push(t)}}catch(t){console.error(`[federation] ${e.id}: schema failed, skipping plugin —`,t)}return n}var C8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/record/RecordView.tsx`;function w8(){let{t:e}=l(),{vault:t,type:n,id:r}=F(),i=N(),a=Tn().flatMap(e=>e.modules).find(e=>e.vault===t&&e.module===n),[o,s]=(0,B.useState)(null),[c,u]=(0,B.useState)({}),f=jn(e),p=e=>c[e.join(`.`)],m=u8(o,h,g,_);if((0,B.useEffect)(()=>{if(!a||a.standalone===!1||!r)return;let e=new AbortController;return fetch(`/api/${a.vault}/${a.module}/${r}`,{signal:e.signal}).then(e=>e.ok?e.json():null).then(s).catch(()=>{}),()=>e.abort()},[a,r]),!a||a.standalone===!1)return(0,X.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:C8,lineNumber:39,columnNumber:44},this);async function h(t,n){if(!a||!r)return;u(e=>Dn(e,t));let i=await _r(a.vault,a.module,r,{[t]:n});if(i.ok){s(i.row??null);return}let o=zn(i.issues??[],f);u(e=>({...Dn(e,t),...o}));let c=(i.issues??[]).find(e=>e.field===t)??i.issues?.[0];return c?f(c.code,c.params):e(`validation.server`)}async function g(t,n,i){if(!a||!r)return;u(e=>Dn(e,n));let o=await _r(a.vault,a.module,r,{[`_extend_${t}`]:{[n]:i}});if(o.ok){s(o.row??null);return}u(e=>({...Dn(e,n),...zn(o.issues??[],f)}));let c=(o.issues??[]).find(e=>e.field===n)??o.issues?.[0];return c?f(c.code,c.params):e(`validation.server`)}async function _(t){if(!a||!r)return;u(e=>Object.keys(t).reduce((e,t)=>Dn(e,t),e));let n=await _r(a.vault,a.module,r,t);if(n.ok){s(n.row??null);return}u(e=>({...Object.keys(t).reduce((e,t)=>Dn(e,t),e),...zn(n.issues??[],f)}));let i=n.issues?.[0];return i?f(i.code,i.params):e(`validation.server`)}let v=h8(a.vault,a.module);return(0,X.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,X.jsxDEV)(Rn,{actions:o&&!v&&(m.editAll?(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(T,{disabled:m.savingAll,onClick:m.saveAll,children:[(0,X.jsxDEV)(D,{size:16},void 0,!1,{fileName:C8,lineNumber:89,columnNumber:17},this),(0,X.jsxDEV)(`span`,{className:`hidden sm:inline`,children:e(`actions.save`)},void 0,!1,{fileName:C8,lineNumber:90,columnNumber:17},this)]},void 0,!0,{fileName:C8,lineNumber:88,columnNumber:15},this),(0,X.jsxDEV)(T,{variant:`secondary`,size:`icon`,disabled:m.savingAll,onClick:m.cancelAll,title:e(`actions.cancel`),children:(0,X.jsxDEV)(d,{size:16},void 0,!1,{fileName:C8,lineNumber:99,columnNumber:17},this)},void 0,!1,{fileName:C8,lineNumber:92,columnNumber:15},this)]},void 0,!0,{fileName:C8,lineNumber:87,columnNumber:13},this):(0,X.jsxDEV)(T,{onClick:m.startAll,title:e(`actions.editAll`),children:[(0,X.jsxDEV)(ae,{size:16},void 0,!1,{fileName:C8,lineNumber:104,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`hidden sm:inline`,children:e(`actions.edit`)},void 0,!1,{fileName:C8,lineNumber:105,columnNumber:15},this)]},void 0,!0,{fileName:C8,lineNumber:103,columnNumber:13},this)),children:(0,X.jsxDEV)(T,{variant:`ghost`,size:`sm`,className:`px-2 bg-bg/60 border border-border/50 shadow-sm backdrop-blur-sm hover:bg-bg/80`,onClick:()=>i(`/${t}/${n}`),children:[(0,X.jsxDEV)(Vn,{size:18},void 0,!1,{fileName:C8,lineNumber:116,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-sm`,children:e(a.label)},void 0,!1,{fileName:C8,lineNumber:117,columnNumber:11},this)]},void 0,!0,{fileName:C8,lineNumber:110,columnNumber:9},this)},void 0,!1,{fileName:C8,lineNumber:82,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:(0,X.jsxDEV)(Pn,{vault:a.vault,module:a.module,children:o?v?(0,X.jsxDEV)(v,{record:o,onEdit:()=>{}},void 0,!1,{fileName:C8,lineNumber:127,columnNumber:13},this):(0,X.jsxDEV)(d8,{module:a,record:o,onUpdate:h,onUpdateExtend:g,edit:m,errorAt:p},void 0,!1,{fileName:C8,lineNumber:129,columnNumber:13},this):(0,X.jsxDEV)(`div`,{className:`flex items-center justify-center py-20 text-muted text-sm`,children:e(`common.loading`)},void 0,!1,{fileName:C8,lineNumber:125,columnNumber:13},this)},void 0,!1,{fileName:C8,lineNumber:123,columnNumber:9},this)},void 0,!1,{fileName:C8,lineNumber:122,columnNumber:7},this)]},void 0,!0,{fileName:C8,lineNumber:80,columnNumber:5},this)}var T8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/Shell.tsx`,E8=(0,B.lazy)(()=>j(()=>import(`./SettingsPage-Dxv3eZrP.js`).then(e=>({default:e.SettingsPage})),__vite__mapDeps([60,1,55,2,9,10,15,27,56,58,61,62,63,64]))),D8=(0,B.lazy)(()=>j(()=>import(`./PluginSettingsPage-BzNvTqpx.js`).then(e=>({default:e.PluginSettingsPage})),__vite__mapDeps([65,55,1,2,9,10,15,27,66,8,7,22,59,31,33,23,61,67,64]))),O8=(0,B.lazy)(()=>j(()=>import(`./NewRecordView-d9dzfC7R.js`).then(e=>({default:e.NewRecordView})),__vite__mapDeps([68,1,54,5,55,2,9,10,15,27,56,69,59,22,31,66,8,7,33,23,61,62])));function k8(){return(0,X.jsxDEV)(ee,{children:[(0,X.jsxDEV)(M,{path:`/login`,element:(0,X.jsxDEV)($0,{},void 0,!1,{fileName:T8,lineNumber:29,columnNumber:37},this)},void 0,!1,{fileName:T8,lineNumber:29,columnNumber:7},this),(0,X.jsxDEV)(M,{path:`/setup`,element:(0,X.jsxDEV)(n2,{},void 0,!1,{fileName:T8,lineNumber:30,columnNumber:37},this)},void 0,!1,{fileName:T8,lineNumber:30,columnNumber:7},this),(0,X.jsxDEV)(M,{path:`/*`,element:(0,X.jsxDEV)(Pr,{children:(0,X.jsxDEV)(A8,{},void 0,!1,{fileName:T8,lineNumber:35,columnNumber:13},this)},void 0,!1,{fileName:T8,lineNumber:34,columnNumber:11},this)},void 0,!1,{fileName:T8,lineNumber:31,columnNumber:7},this)]},void 0,!0,{fileName:T8,lineNumber:28,columnNumber:5},this)}function A8(){let[e,t]=(0,B.useState)(!1);return(0,B.useEffect)(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key===`k`&&(e.preventDefault(),t(e=>!e))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]),(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`div`,{className:`min-h-dvh bg-bg`,children:[(0,X.jsxDEV)(y6,{onSearchOpen:()=>t(!0)},void 0,!1,{fileName:T8,lineNumber:60,columnNumber:9},this),(0,X.jsxDEV)(`main`,{className:`nav:pl-52 pb-16 nav:pb-0`,children:(0,X.jsxDEV)(B.Suspense,{fallback:(0,X.jsxDEV)(`div`,{className:`flex justify-center py-16`,children:(0,X.jsxDEV)(Ae,{className:`animate-spin text-muted`,size:20},void 0,!1,{fileName:T8,lineNumber:65,columnNumber:17},this)},void 0,!1,{fileName:T8,lineNumber:64,columnNumber:15},this),children:(0,X.jsxDEV)(ee,{children:[(0,X.jsxDEV)(M,{path:`/`,element:(0,X.jsxDEV)(E6,{},void 0,!1,{fileName:T8,lineNumber:70,columnNumber:40},this)},void 0,!1,{fileName:T8,lineNumber:70,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/browse`,element:(0,X.jsxDEV)(O6,{},void 0,!1,{fileName:T8,lineNumber:71,columnNumber:46},this)},void 0,!1,{fileName:T8,lineNumber:71,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings`,element:(0,X.jsxDEV)(E8,{},void 0,!1,{fileName:T8,lineNumber:72,columnNumber:48},this)},void 0,!1,{fileName:T8,lineNumber:72,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/account`,element:(0,X.jsxDEV)(j6,{},void 0,!1,{fileName:T8,lineNumber:73,columnNumber:56},this)},void 0,!1,{fileName:T8,lineNumber:73,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/users`,element:(0,X.jsxDEV)($6,{},void 0,!1,{fileName:T8,lineNumber:74,columnNumber:54},this)},void 0,!1,{fileName:T8,lineNumber:74,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/users/new`,element:(0,X.jsxDEV)(n8,{},void 0,!1,{fileName:T8,lineNumber:75,columnNumber:58},this)},void 0,!1,{fileName:T8,lineNumber:75,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/users/:id`,element:(0,X.jsxDEV)(a8,{},void 0,!1,{fileName:T8,lineNumber:76,columnNumber:58},this)},void 0,!1,{fileName:T8,lineNumber:76,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/:pluginId`,element:(0,X.jsxDEV)(D8,{},void 0,!1,{fileName:T8,lineNumber:77,columnNumber:58},this)},void 0,!1,{fileName:T8,lineNumber:77,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/plugins`,element:(0,X.jsxDEV)(P,{to:`/settings`,replace:!0},void 0,!1,{fileName:T8,lineNumber:78,columnNumber:47},this)},void 0,!1,{fileName:T8,lineNumber:78,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/:vault/:type`,element:(0,X.jsxDEV)(s8,{},void 0,!1,{fileName:T8,lineNumber:79,columnNumber:52},this)},void 0,!1,{fileName:T8,lineNumber:79,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/:vault/:type/new`,element:(0,X.jsxDEV)(O8,{},void 0,!1,{fileName:T8,lineNumber:80,columnNumber:56},this)},void 0,!1,{fileName:T8,lineNumber:80,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/:vault/:type/:id`,element:(0,X.jsxDEV)(w8,{},void 0,!1,{fileName:T8,lineNumber:81,columnNumber:56},this)},void 0,!1,{fileName:T8,lineNumber:81,columnNumber:15},this)]},void 0,!0,{fileName:T8,lineNumber:69,columnNumber:13},this)},void 0,!1,{fileName:T8,lineNumber:62,columnNumber:11},this)},void 0,!1,{fileName:T8,lineNumber:61,columnNumber:9},this),(0,X.jsxDEV)(x6,{onSearchOpen:()=>t(!0)},void 0,!1,{fileName:T8,lineNumber:85,columnNumber:9},this)]},void 0,!0,{fileName:T8,lineNumber:59,columnNumber:7},this),(0,X.jsxDEV)(C6,{open:e,onClose:()=>t(!1)},void 0,!1,{fileName:T8,lineNumber:87,columnNumber:7},this)]},void 0,!0,{fileName:T8,lineNumber:58,columnNumber:5},this)}var j8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/main.tsx`,M8=[];try{M8=await S8()}catch(e){console.warn(`[federation] failed to load plugins, continuing with none:`,e)}Bn(M8),(0,Br.createRoot)(document.getElementById(`root`)).render((0,X.jsxDEV)(B.StrictMode,{children:(0,X.jsxDEV)(ne,{children:[(0,X.jsxDEV)(k8,{},void 0,!1,{fileName:j8,lineNumber:36,columnNumber:7},void 0),(0,X.jsxDEV)(ie,{richColors:!0,position:`bottom-right`},void 0,!1,{fileName:j8,lineNumber:37,columnNumber:7},void 0)]},void 0,!0,{fileName:j8,lineNumber:35,columnNumber:5},void 0)},void 0,!1,{fileName:j8,lineNumber:34,columnNumber:3},void 0));
330
+ |(?![\\s\\S])))+`,`m`),alias:i,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}}),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})})(e)}_1.displayName=`go`,_1.aliases=[];function _1(e){e.register(c1),e.languages.go=e.languages.extend(`clike`,{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),e.languages.insertBefore(`go`,`string`,{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete e.languages.go[`class-name`]}v1.displayName=`ini`,v1.aliases=[];function v1(e){e.languages.ini={comment:{pattern:/(^[ \f\t\v]*)[#;][^\n\r]*/m,lookbehind:!0},section:{pattern:/(^[ \f\t\v]*)\[[^\n\r\]]*\]?/m,lookbehind:!0,inside:{"section-name":{pattern:/(^\[[ \f\t\v]*)[^ \f\t\v\]]+(?:[ \f\t\v]+[^ \f\t\v\]]+)*/,lookbehind:!0,alias:`selector`},punctuation:/\[|\]/}},key:{pattern:/(^[ \f\t\v]*)[^ \f\n\r\t\v=]+(?:[ \f\t\v]+[^ \f\n\r\t\v=]+)*(?=[ \f\t\v]*=)/m,lookbehind:!0,alias:`attr-name`},value:{pattern:/(=[ \f\t\v]*)[^ \f\n\r\t\v]+(?:[ \f\t\v]+[^ \f\n\r\t\v]+)*/,lookbehind:!0,alias:`attr-value`,inside:{"inner-value":{pattern:/^("|').+(?=\1$)/,lookbehind:!0}}},punctuation:/=/}}y1.displayName=`java`,y1.aliases=[];function y1(e){e.register(c1),(function(e){var t=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record(?!\s*[(){}[\]<>=%~.:,;?+\-*/&|^])|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,n=`(?:[a-z]\\w*\\s*\\.\\s*)*(?:[A-Z]\\w*\\s*\\.\\s*)*`,r={pattern:RegExp(`(^|[^\\w.])`+n+`[A-Z](?:[\\d_A-Z]*[a-z]\\w*)?\\b`),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}};e.languages.java=e.languages.extend(`clike`,{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"/,lookbehind:!0,greedy:!0},"class-name":[r,{pattern:RegExp(`(^|[^\\w.])`+n+`[A-Z]\\w*(?=\\s+\\w+\\s*[;,=()]|\\s*(?:\\[[\\s,]*\\]\\s*)?::\\s*new\\b)`),lookbehind:!0,inside:r.inside},{pattern:RegExp(`(\\b(?:class|enum|extends|implements|instanceof|interface|new|record|throws)\\s+)`+n+`[A-Z]\\w*\\b`),lookbehind:!0,inside:r.inside}],keyword:t,function:[e.languages.clike.function,{pattern:/(::\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0},constant:/\b[A-Z][A-Z_\d]+\b/}),e.languages.insertBefore(`java`,`string`,{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:`string`},char:{pattern:/'(?:\\.|[^'\\\r\n]){1,6}'/,greedy:!0}}),e.languages.insertBefore(`java`,`class-name`,{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:`punctuation`},generics:{pattern:/<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&)|<(?:[\w\s,.?]|&(?!&))*>)*>)*>)*>/,inside:{"class-name":r,keyword:t,punctuation:/[<>(),.:]/,operator:/[?&|]/}},import:[{pattern:RegExp(`(\\bimport\\s+)`+n+`(?:[A-Z]\\w*|\\*)(?=\\s*;)`),lookbehind:!0,inside:{namespace:r.inside.namespace,punctuation:/\./,operator:/\*/,"class-name":/\w+/}},{pattern:RegExp(`(\\bimport\\s+static\\s+)`+n+`(?:\\w+|\\*)(?=\\s*;)`),lookbehind:!0,alias:`static`,inside:{namespace:r.inside.namespace,static:/\b\w+$/,punctuation:/\./,operator:/\*/,"class-name":/\w+/}}],namespace:{pattern:RegExp(`(\\b(?:exports|import(?:\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\s+)(?!<keyword>)[a-z]\\w*(?:\\.[a-z]\\w*)*\\.?`.replace(/<keyword>/g,function(){return t.source})),lookbehind:!0,inside:{punctuation:/\./}}})})(e)}b1.displayName=`regex`,b1.aliases=[];function b1(e){(function(e){var t={pattern:/\\[\\(){}[\]^$+*?|.]/,alias:`escape`},n=/\\(?:x[\da-fA-F]{2}|u[\da-fA-F]{4}|u\{[\da-fA-F]+\}|0[0-7]{0,2}|[123][0-7]{2}|c[a-zA-Z]|.)/,r={pattern:/\.|\\[wsd]|\\p\{[^{}]+\}/i,alias:`class-name`},i={pattern:/\\[wsd]|\\p\{[^{}]+\}/i,alias:`class-name`},a=`(?:[^\\\\-]|`+n.source+`)`,o=RegExp(a+`-`+a),s={pattern:/(<|')[^<>']+(?=[>']$)/,lookbehind:!0,alias:`variable`};e.languages.regex={"char-class":{pattern:/((?:^|[^\\])(?:\\\\)*)\[(?:[^\\\]]|\\[\s\S])*\]/,lookbehind:!0,inside:{"char-class-negation":{pattern:/(^\[)\^/,lookbehind:!0,alias:`operator`},"char-class-punctuation":{pattern:/^\[|\]$/,alias:`punctuation`},range:{pattern:o,inside:{escape:n,"range-punctuation":{pattern:/-/,alias:`operator`}}},"special-escape":t,"char-set":i,escape:n}},"special-escape":t,"char-set":r,backreference:[{pattern:/\\(?![123][0-7]{2})[1-9]/,alias:`keyword`},{pattern:/\\k<[^<>']+>/,alias:`keyword`,inside:{"group-name":s}}],anchor:{pattern:/[$^]|\\[ABbGZz]/,alias:`function`},escape:n,group:[{pattern:/\((?:\?(?:<[^<>']+>|'[^<>']+'|[>:]|<?[=!]|[idmnsuxU]+(?:-[idmnsuxU]+)?:?))?/,alias:`punctuation`,inside:{"group-name":s}},{pattern:/\)/,alias:`punctuation`}],quantifier:{pattern:/(?:[+*?]|\{\d+(?:,\d*)?\})[?+]?/,alias:`number`},alternation:{pattern:/\|/,alias:`keyword`}}})(e)}x1.displayName=`javascript`,x1.aliases=[`js`];function x1(e){e.register(c1),e.languages.javascript=e.languages.extend(`clike`,{"class-name":[e.languages.clike[`class-name`],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(`(^|[^\\w$])(?:NaN|Infinity|0[bB][01]+(?:_[01]+)*n?|0[oO][0-7]+(?:_[0-7]+)*n?|0[xX][\\dA-Fa-f]+(?:_[\\dA-Fa-f]+)*n?|\\d+(?:_\\d+)*n|(?:\\d+(?:_\\d+)*(?:\\.(?:\\d+(?:_\\d+)*)?)?|\\.\\d+(?:_\\d+)*)(?:[Ee][+-]?\\d+(?:_\\d+)*)?)(?![\\w$])`),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),e.languages.javascript[`class-name`][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,e.languages.insertBefore(`javascript`,`keyword`,{regex:{pattern:RegExp(`((?:^|[^$\\w\\xA0-\\uFFFF."'\\])\\s]|\\b(?:return|yield))\\s*)\\/(?:(?:\\[(?:[^\\]\\\\\\r\\n]|\\\\.)*\\]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[dgimyus]{0,7}|(?:\\[(?:[^[\\]\\\\\\r\\n]|\\\\.|\\[(?:[^[\\]\\\\\\r\\n]|\\\\.|\\[(?:[^[\\]\\\\\\r\\n]|\\\\.)*\\])*\\])*\\]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[dgimyus]{0,7}v[dgimyus]{0,7})(?=(?:\\s|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/)*(?:$|[\\r\\n,.;:})\\]]|\\/\\/))`),lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:`language-regex`,inside:e.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:`function`},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:e.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:e.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:e.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:e.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),e.languages.insertBefore(`javascript`,`string`,{hashbang:{pattern:/^#!.*/,greedy:!0,alias:`comment`},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:`string`},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:`punctuation`},rest:e.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:`property`}}),e.languages.insertBefore(`javascript`,`operator`,{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:`property`}}),e.languages.markup&&(e.languages.markup.tag.addInlined(`script`,`javascript`),e.languages.markup.tag.addAttribute(`on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)`,`javascript`)),e.languages.js=e.languages.javascript}S1.displayName=`json`,S1.aliases=[`webmanifest`];function S1(e){e.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:`keyword`}},e.languages.webmanifest=e.languages.json}C1.displayName=`kotlin`,C1.aliases=[`kt`,`kts`];function C1(e){e.register(c1),(function(e){e.languages.kotlin=e.languages.extend(`clike`,{keyword:{pattern:/(^|[^.])\b(?:abstract|actual|annotation|as|break|by|catch|class|companion|const|constructor|continue|crossinline|data|do|dynamic|else|enum|expect|external|final|finally|for|fun|get|if|import|in|infix|init|inline|inner|interface|internal|is|lateinit|noinline|null|object|open|operator|out|override|package|private|protected|public|reified|return|sealed|set|super|suspend|tailrec|this|throw|to|try|typealias|val|var|vararg|when|where|while)\b/,lookbehind:!0},function:[{pattern:/(?:`[^\r\n`]+`|\b\w+)(?=\s*\()/,greedy:!0},{pattern:/(\.)(?:`[^\r\n`]+`|\w+)(?=\s*\{)/,lookbehind:!0,greedy:!0}],number:/\b(?:0[xX][\da-fA-F]+(?:_[\da-fA-F]+)*|0[bB][01]+(?:_[01]+)*|\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?[fFL]?)\b/,operator:/\+[+=]?|-[-=>]?|==?=?|!(?:!|==?)?|[\/*%<>]=?|[?:]:?|\.\.|&&|\|\||\b(?:and|inv|or|shl|shr|ushr|xor)\b/}),delete e.languages.kotlin[`class-name`];var t={"interpolation-punctuation":{pattern:/^\$\{?|\}$/,alias:`punctuation`},expression:{pattern:/[\s\S]+/,inside:e.languages.kotlin}};e.languages.insertBefore(`kotlin`,`string`,{"string-literal":[{pattern:/"""(?:[^$]|\$(?:(?!\{)|\{[^{}]*\}))*?"""/,alias:`multiline`,inside:{interpolation:{pattern:/\$(?:[a-z_]\w*|\{[^{}]*\})/i,inside:t},string:/[\s\S]+/}},{pattern:/"(?:[^"\\\r\n$]|\\.|\$(?:(?!\{)|\{[^{}]*\}))*"/,alias:`singleline`,inside:{interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$(?:[a-z_]\w*|\{[^{}]*\})/i,lookbehind:!0,inside:t},string:/[\s\S]+/}}],char:{pattern:/'(?:[^'\\\r\n]|\\(?:.|u[a-fA-F0-9]{0,4}))'/,greedy:!0}}),delete e.languages.kotlin.string,e.languages.insertBefore(`kotlin`,`keyword`,{annotation:{pattern:/\B@(?:\w+:)?(?:[A-Z]\w*|\[[^\]]+\])/,alias:`builtin`}}),e.languages.insertBefore(`kotlin`,`function`,{label:{pattern:/\b\w+@|@\w+\b/,alias:`symbol`}}),e.languages.kt=e.languages.kotlin,e.languages.kts=e.languages.kotlin})(e)}w1.displayName=`less`,w1.aliases=[];function w1(e){e.register(h1),e.languages.less=e.languages.extend(`css`,{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),e.languages.insertBefore(`less`,`property`,{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:`function`}})}T1.displayName=`lua`,T1.aliases=[];function T1(e){e.languages.lua={comment:/^#!.+|--(?:\[(=*)\[[\s\S]*?\]\1\]|.*)/m,string:{pattern:/(["'])(?:(?!\1)[^\\\r\n]|\\z(?:\r\n|\s)|\\(?:\r\n|[^z]))*\1|\[(=*)\[[\s\S]*?\]\2\]/,greedy:!0},number:/\b0x[a-f\d]+(?:\.[a-f\d]*)?(?:p[+-]?\d+)?\b|\b\d+(?:\.\B|(?:\.\d*)?(?:e[+-]?\d+)?\b)|\B\.\d+(?:e[+-]?\d+)?\b/i,keyword:/\b(?:and|break|do|else|elseif|end|false|for|function|goto|if|in|local|nil|not|or|repeat|return|then|true|until|while)\b/,function:/(?!\d)\w+(?=\s*(?:[({]))/,operator:[/[-+*%^&|#]|\/\/?|<[<=]?|>[>=]?|[=~]=?/,{pattern:/(^|[^.])\.\.(?!\.)/,lookbehind:!0}],punctuation:/[\[\](){},;]|\.+|:+/}}E1.displayName=`makefile`,E1.aliases=[];function E1(e){e.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:`builtin`},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:`symbol`,inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/}}D1.displayName=`yaml`,D1.aliases=[`yml`];function D1(e){(function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r=`(?:`+n.source+`(?:[ ]+`+t.source+`)?|`+t.source+`(?:[ ]+`+n.source+`)?)`,i=`(?:[^\\s\\x00-\\x08\\x0e-\\x1f!"#%&'*,\\-:>?@[\\]\`{|}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]|[?:-]<PLAIN>)(?:[ \\t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*`.replace(/<PLAIN>/g,function(){return`[^\\s\\x00-\\x08\\x0e-\\x1f,[\\]{}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]`}),a=`"(?:[^"\\\\\\r\\n]|\\\\.)*"|'(?:[^'\\\\\\r\\n]|\\\\.)*'`;function o(e,t){t=(t||``).replace(/m/g,``)+`m`;var n=`([:\\-,[{]\\s*(?:\\s<<prop>>[ \\t]+)?)(?:<<value>>)(?=[ \\t]*(?:$|,|\\]|\\}|(?:[\\r\\n]\\s*)?#))`.replace(/<<prop>>/g,function(){return r}).replace(/<<value>>/g,function(){return e});return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(`([\\-:]\\s*(?:\\s<<prop>>[ \\t]+)?[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)\\S[^\\r\\n]*(?:\\2[^\\r\\n]+)*)`.replace(/<<prop>>/g,function(){return r})),lookbehind:!0,alias:`string`},comment:/#.*/,key:{pattern:RegExp(`((?:^|[:\\-,[{\\r\\n?])[ \\t]*(?:<<prop>>[ \\t]+)?)<<key>>(?=\\s*:\\s)`.replace(/<<prop>>/g,function(){return r}).replace(/<<key>>/g,function(){return`(?:`+i+`|`+a+`)`})),lookbehind:!0,greedy:!0,alias:`atrule`},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:`important`},datetime:{pattern:o(`\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \\t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?(?:[ \\t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?))?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?`),lookbehind:!0,alias:`number`},boolean:{pattern:o(`false|true`,`i`),lookbehind:!0,alias:`important`},null:{pattern:o(`null|~`,`i`),lookbehind:!0,alias:`important`},string:{pattern:o(a),lookbehind:!0,greedy:!0},number:{pattern:o(`[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)`,`i`),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml})(e)}O1.displayName=`markdown`,O1.aliases=[`md`];function O1(e){e.register(m1),(function(e){var t=`(?:\\\\.|[^\\\\\\n\\r]|(?:\\n|\\r\\n?)(?![\\r\\n]))`;function n(e){return e=e.replace(/<inner>/g,function(){return t}),RegExp(`((?:^|[^\\\\])(?:\\\\{2})*)(?:`+e+`)`)}var r="(?:\\\\.|``(?:[^`\\r\\n]|`(?!`))+``|`[^`\\r\\n]+`|[^\\\\|\\r\\n`])+",i=`\\|?__(?:\\|__)+\\|?(?:(?:\\n|\\r\\n?)|(?![\\s\\S]))`.replace(/__/g,function(){return r}),a=`\\|?[ \\t]*:?-{3,}:?[ \\t]*(?:\\|[ \\t]*:?-{3,}:?[ \\t]*)+\\|?(?:\\n|\\r\\n?)`;e.languages.markdown=e.languages.extend(`markup`,{}),e.languages.insertBefore(`markdown`,`prolog`,{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:[`yaml`,`language-yaml`],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:`punctuation`},table:{pattern:RegExp(`^`+i+a+`(?:`+i+`)*`,`m`),inside:{"table-data-rows":{pattern:RegExp(`^(`+i+a+`)(?:`+i+`)*$`),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp(`^(`+i+`)`+a+`$`),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp(`^`+i+`$`),inside:{"table-header":{pattern:RegExp(r),alias:`important`,inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:`keyword`},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:`important`,inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:`important`,inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:`punctuation`},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:`punctuation`},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:`url`},bold:{pattern:n(`\\b__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__\\b|\\*\\*(?:(?!\\*)<inner>|\\*(?:(?!\\*)<inner>)+\\*)+\\*\\*`),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(`\\b_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_\\b|\\*(?:(?!\\*)<inner>|\\*\\*(?:(?!\\*)<inner>)+\\*\\*)+\\*`),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(`(~~?)(?:(?!~)<inner>)+\\2`),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:[`code`,`keyword`]},url:{pattern:n(`!?\\[(?:(?!\\])<inner>)+\\](?:\\([^\\s)]+(?:[\\t ]+"(?:\\\\.|[^"\\\\])*")?\\)|[ \\t]?\\[(?:(?!\\])<inner>)+\\])`),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),[`url`,`bold`,`italic`,`strike`].forEach(function(t){[`url`,`bold`,`italic`,`strike`,`code-snippet`].forEach(function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])})}),e.hooks.add(`after-tokenize`,function(e){if(e.language!==`markdown`&&e.language!==`md`)return;function t(e){if(!(!e||typeof e==`string`))for(var n=0,r=e.length;n<r;n++){var i=e[n];if(i.type!==`code`){t(i.content);continue}var a=i.content[1],o=i.content[3];if(a&&o&&a.type===`code-language`&&o.type===`code-block`&&typeof a.content==`string`){var s=a.content.replace(/\b#/g,`sharp`).replace(/\b\+\+/g,`pp`);s=(/[a-z][\w-]*/i.exec(s)||[``])[0].toLowerCase();var c=`language-`+s;o.alias?typeof o.alias==`string`?o.alias=[o.alias,c]:o.alias.push(c):o.alias=[c]}}}t(e.tokens)}),e.hooks.add(`wrap`,function(t){if(t.type===`code-block`){for(var n=``,r=0,i=t.classes.length;r<i;r++){var a=t.classes[r],o=/language-(.+)/.exec(a);if(o){n=o[1];break}}var s=e.languages[n];if(s)t.content=e.highlight(t.content.value,s,n);else if(n&&n!==`none`&&e.plugins.autoloader){var c=`md-`+new Date().valueOf()+`-`+Math.floor(Math.random()*0x2386f26fc10000);t.attributes.id=c,e.plugins.autoloader.loadLanguages(n,function(){var t=document.getElementById(c);t&&(t.innerHTML=e.highlight(t.textContent,e.languages[n],n))})}}}),RegExp(e.languages.markup.tag.pattern.source,`gi`),String.fromCodePoint||String.fromCharCode,e.languages.md=e.languages.markdown})(e)}k1.displayName=`objectivec`,k1.aliases=[`objc`];function k1(e){e.register(l1),e.languages.objectivec=e.languages.extend(`c`,{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<<?=?|>>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete e.languages.objectivec[`class-name`],e.languages.objc=e.languages.objectivec}A1.displayName=`perl`,A1.aliases=[];function A1(e){(function(e){var t=`(?:\\((?:[^()\\\\]|\\\\[\\s\\S])*\\)|\\{(?:[^{}\\\\]|\\\\[\\s\\S])*\\}|\\[(?:[^[\\]\\\\]|\\\\[\\s\\S])*\\]|<(?:[^<>\\\\]|\\\\[\\s\\S])*>)`;e.languages.perl={comment:[{pattern:/(^\s*)=\w[\s\S]*?=cut.*/m,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\$])#.*/,lookbehind:!0,greedy:!0}],string:[{pattern:RegExp(`\\b(?:q|qq|qw|qx)(?![a-zA-Z0-9])\\s*(?:`+[`([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1`,`([a-zA-Z0-9])(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2`,t].join(`|`)+`)`),greedy:!0},{pattern:/("|`)(?:(?!\1)[^\\]|\\[\s\S])*\1/,greedy:!0},{pattern:/'(?:[^'\\\r\n]|\\.)*'/,greedy:!0}],regex:[{pattern:RegExp(`\\b(?:m|qr)(?![a-zA-Z0-9])\\s*(?:`+[`([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1`,`([a-zA-Z0-9])(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2`,t].join(`|`)+`)[msixpodualngc]*`),greedy:!0},{pattern:RegExp(`(^|[^-])\\b(?:s|tr|y)(?![a-zA-Z0-9])\\s*(?:`+[`([^a-zA-Z0-9\\s{(\\[<])(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2(?:(?!\\2)[^\\\\]|\\\\[\\s\\S])*\\2`,`([a-zA-Z0-9])(?:(?!\\3)[^\\\\]|\\\\[\\s\\S])*\\3(?:(?!\\3)[^\\\\]|\\\\[\\s\\S])*\\3`,t+`\\s*`+t].join(`|`)+`)[msixpodualngcer]*`),lookbehind:!0,greedy:!0},{pattern:/\/(?:[^\/\\\r\n]|\\.)*\/[msixpodualngc]*(?=\s*(?:$|[\r\n,.;})&|\-+*~<>!?^]|(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|x|xor)\b))/,greedy:!0}],variable:[/[&*$@%]\{\^[A-Z]+\}/,/[&*$@%]\^[A-Z_]/,/[&*$@%]#?(?=\{)/,/[&*$@%]#?(?:(?:::)*'?(?!\d)[\w$]+(?![\w$]))+(?:::)*/,/[&*$@%]\d+/,/(?!%=)[$@%][!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~]/],filehandle:{pattern:/<(?![<=])\S*?>|\b_\b/,alias:`symbol`},"v-string":{pattern:/v\d+(?:\.\d+)*|\d+(?:\.\d+){2,}/,alias:`string`},function:{pattern:/(\bsub[ \t]+)\w+/,lookbehind:!0},keyword:/\b(?:any|break|continue|default|delete|die|do|else|elsif|eval|for|foreach|given|goto|if|last|local|my|next|our|package|print|redo|require|return|say|state|sub|switch|undef|unless|until|use|when|while)\b/,number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)\b/,operator:/-[rwxoRWXOezsfdlpSbctugkTBMAC]\b|\+[+=]?|-[-=>]?|\*\*?=?|\/\/?=?|=[=~>]?|~[~=]?|\|\|?=?|&&?=?|<(?:=>?|<=?)?|>>?=?|![~=]?|[%^]=?|\.(?:=|\.\.?)?|[\\?]|\bx(?:=|\b)|\b(?:and|cmp|eq|ge|gt|le|lt|ne|not|or|xor)\b/,punctuation:/[{}[\];(),:]/}})(e)}j1.displayName=`markup-templating`,j1.aliases=[];function j1(e){e.register(m1),(function(e){function t(e,t){return`___`+e.toUpperCase()+t+`___`}Object.defineProperties(e.languages[`markup-templating`]={},{buildPlaceholders:{value:function(n,r,i,a){if(n.language===r){var o=n.tokenStack=[];n.code=n.code.replace(i,function(e){if(typeof a==`function`&&!a(e))return e;for(var i=o.length,s;n.code.indexOf(s=t(r,i))!==-1;)++i;return o[i]=e,s}),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language!==r||!n.tokenStack)return;n.grammar=e.languages[r];var i=0,a=Object.keys(n.tokenStack);function o(s){for(var c=0;c<s.length&&!(i>=a.length);c++){var l=s[c];if(typeof l==`string`||l.content&&typeof l.content==`string`){var u=a[i],d=n.tokenStack[u],f=typeof l==`string`?l:l.content,p=t(r,u),m=f.indexOf(p);if(m>-1){++i;var h=f.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),`language-`+r,d),_=f.substring(m+p.length),v=[];h&&v.push.apply(v,o([h])),v.push(g),_&&v.push.apply(v,o([_])),typeof l==`string`?s.splice.apply(s,[c,1].concat(v)):l.content=v}}else l.content&&o(l.content)}return s}o(n.tokens)}}})})(e)}M1.displayName=`php`,M1.aliases=[];function M1(e){e.register(j1),(function(e){var t=/\/\*[\s\S]*?\*\/|\/\/.*|#(?!\[).*/,n=[{pattern:/\b(?:false|true)\b/i,alias:`boolean`},{pattern:/(::\s*)\b[a-z_]\w*\b(?!\s*\()/i,greedy:!0,lookbehind:!0},{pattern:/(\b(?:case|const)\s+)\b[a-z_]\w*(?=\s*[;=])/i,greedy:!0,lookbehind:!0},/\b(?:null)\b/i,/\b[A-Z_][A-Z0-9_]*\b(?!\s*\()/],r=/\b0b[01]+(?:_[01]+)*\b|\b0o[0-7]+(?:_[0-7]+)*\b|\b0x[\da-f]+(?:_[\da-f]+)*\b|(?:\b\d+(?:_\d+)*\.?(?:\d+(?:_\d+)*)?|\B\.\d+)(?:e[+-]?\d+)?/i,i=/<?=>|\?\?=?|\.{3}|\??->|[!=]=?=?|::|\*\*=?|--|\+\+|&&|\|\||<<|>>|[?~]|[/^|%*&<>.+-]=?/,a=/[{}\[\](),:;]/;e.languages.php={delimiter:{pattern:/\?>$|^<\?(?:php(?=\s)|=)?/i,alias:`important`},comment:t,variable:/\$+(?:\w+\b|(?=\{))/,package:{pattern:/(namespace\s+|use\s+(?:function\s+)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,lookbehind:!0,inside:{punctuation:/\\/}},"class-name-definition":{pattern:/(\b(?:class|enum|interface|trait)\s+)\b[a-z_]\w*(?!\\)\b/i,lookbehind:!0,alias:`class-name`},"function-definition":{pattern:/(\bfunction\s+)[a-z_]\w*(?=\s*\()/i,lookbehind:!0,alias:`function`},keyword:[{pattern:/(\(\s*)\b(?:array|bool|boolean|float|int|integer|object|string)\b(?=\s*\))/i,alias:`type-casting`,greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|object|self|static|string)\b(?=\s*\$)/i,alias:`type-hint`,greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b(?:array(?!\s*\()|bool|callable|(?:false|null)(?=\s*\|)|float|int|iterable|mixed|never|object|self|static|string|void)\b/i,alias:`return-type`,greedy:!0,lookbehind:!0},{pattern:/\b(?:array(?!\s*\()|bool|float|int|iterable|mixed|object|string|void)\b/i,alias:`type-declaration`,greedy:!0},{pattern:/(\|\s*)(?:false|null)\b|\b(?:false|null)(?=\s*\|)/i,alias:`type-declaration`,greedy:!0,lookbehind:!0},{pattern:/\b(?:parent|self|static)(?=\s*::)/i,alias:`static-context`,greedy:!0},{pattern:/(\byield\s+)from\b/i,lookbehind:!0},/\bclass\b/i,{pattern:/((?:^|[^\s>:]|(?:^|[^-])>|(?:^|[^:]):)\s*)\b(?:abstract|and|array|as|break|callable|case|catch|clone|const|continue|declare|default|die|do|echo|else|elseif|empty|enddeclare|endfor|endforeach|endif|endswitch|endwhile|enum|eval|exit|extends|final|finally|fn|for|foreach|function|global|goto|if|implements|include|include_once|instanceof|insteadof|interface|isset|list|match|namespace|never|new|or|parent|print|private|protected|public|readonly|require|require_once|return|self|static|switch|throw|trait|try|unset|use|var|while|xor|yield|__halt_compiler)\b/i,lookbehind:!0}],"argument-name":{pattern:/([(,]\s*)\b[a-z_]\w*(?=\s*:(?!:))/i,lookbehind:!0},"class-name":[{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self|\s+static))\s+|\bcatch\s*\()\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/(\|\s*)\b[a-z_]\w*(?!\\)\b/i,greedy:!0,lookbehind:!0},{pattern:/\b[a-z_]\w*(?!\\)\b(?=\s*\|)/i,greedy:!0},{pattern:/(\|\s*)(?:\\?\b[a-z_]\w*)+\b/i,alias:`class-name-fully-qualified`,greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(?:\\?\b[a-z_]\w*)+\b(?=\s*\|)/i,alias:`class-name-fully-qualified`,greedy:!0,inside:{punctuation:/\\/}},{pattern:/(\b(?:extends|implements|instanceof|new(?!\s+self\b|\s+static\b))\s+|\bcatch\s*\()(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:`class-name-fully-qualified`,greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*\$)/i,alias:`type-declaration`,greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:[`class-name-fully-qualified`,`type-declaration`],greedy:!0,inside:{punctuation:/\\/}},{pattern:/\b[a-z_]\w*(?=\s*::)/i,alias:`static-context`,greedy:!0},{pattern:/(?:\\?\b[a-z_]\w*)+(?=\s*::)/i,alias:[`class-name-fully-qualified`,`static-context`],greedy:!0,inside:{punctuation:/\\/}},{pattern:/([(,?]\s*)[a-z_]\w*(?=\s*\$)/i,alias:`type-hint`,greedy:!0,lookbehind:!0},{pattern:/([(,?]\s*)(?:\\?\b[a-z_]\w*)+(?=\s*\$)/i,alias:[`class-name-fully-qualified`,`type-hint`],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}},{pattern:/(\)\s*:\s*(?:\?\s*)?)\b[a-z_]\w*(?!\\)\b/i,alias:`return-type`,greedy:!0,lookbehind:!0},{pattern:/(\)\s*:\s*(?:\?\s*)?)(?:\\?\b[a-z_]\w*)+\b(?!\\)/i,alias:[`class-name-fully-qualified`,`return-type`],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:n,function:{pattern:/(^|[^\\\w])\\?[a-z_](?:[\w\\]*\w)?(?=\s*\()/i,lookbehind:!0,inside:{punctuation:/\\/}},property:{pattern:/(->\s*)\w+/,lookbehind:!0},number:r,operator:i,punctuation:a};var o={pattern:/\{\$(?:\{(?:\{[^{}]+\}|[^{}]+)\}|[^{}])+\}|(^|[^\\{])\$+(?:\w+(?:\[[^\r\n\[\]]+\]|->\w+)?)/,lookbehind:!0,inside:e.languages.php},s=[{pattern:/<<<'([^']+)'[\r\n](?:.*[\r\n])*?\1;/,alias:`nowdoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<<'[^']+'|[a-z_]\w*;$/i,alias:`symbol`,inside:{punctuation:/^<<<'?|[';]$/}}}},{pattern:/<<<(?:"([^"]+)"[\r\n](?:.*[\r\n])*?\1;|([a-z_]\w*)[\r\n](?:.*[\r\n])*?\2;)/i,alias:`heredoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<<(?:"[^"]+"|[a-z_]\w*)|[a-z_]\w*;$/i,alias:`symbol`,inside:{punctuation:/^<<<"?|[";]$/}},interpolation:o}},{pattern:/`(?:\\[\s\S]|[^\\`])*`/,alias:`backtick-quoted-string`,greedy:!0},{pattern:/'(?:\\[\s\S]|[^\\'])*'/,alias:`single-quoted-string`,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,alias:`double-quoted-string`,greedy:!0,inside:{interpolation:o}}];e.languages.insertBefore(`php`,`variable`,{string:s,attribute:{pattern:/#\[(?:[^"'\/#]|\/(?![*/])|\/\/.*$|#(?!\[).*$|\/\*(?:[^*]|\*(?!\/))*\*\/|"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*')+\](?=\s*[a-z$#])/im,greedy:!0,inside:{"attribute-content":{pattern:/^(#\[)[\s\S]+(?=\]$)/,lookbehind:!0,inside:{comment:t,string:s,"attribute-class-name":[{pattern:/([^:]|^)\b[a-z_]\w*(?!\\)\b/i,alias:`class-name`,greedy:!0,lookbehind:!0},{pattern:/([^:]|^)(?:\\?\b[a-z_]\w*)+/i,alias:[`class-name`,`class-name-fully-qualified`],greedy:!0,lookbehind:!0,inside:{punctuation:/\\/}}],constant:n,number:r,operator:i,punctuation:a}},delimiter:{pattern:/^#\[|\]$/,alias:`punctuation`}}}}),e.hooks.add(`before-tokenize`,function(t){/<\?/.test(t.code)&&e.languages[`markup-templating`].buildPlaceholders(t,`php`,/<\?(?:[^"'/#]|\/(?![*/])|("|')(?:\\[\s\S]|(?!\1)[^\\])*\1|(?:\/\/|#(?!\[))(?:[^?\n\r]|\?(?!>))*(?=$|\?>|[\r\n])|#\[|\/\*(?:[^*]|\*(?!\/))*(?:\*\/|$))*?(?:\?>|$)/g)}),e.hooks.add(`after-tokenize`,function(t){e.languages[`markup-templating`].tokenizePlaceholders(t,`php`)})})(e)}N1.displayName=`python`,N1.aliases=[`py`];function N1(e){e.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:`punctuation`},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:`string`},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:[`annotation`,`punctuation`],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},e.languages.python[`string-interpolation`].inside.interpolation.inside.rest=e.languages.python,e.languages.py=e.languages.python}P1.displayName=`r`,P1.aliases=[];function P1(e){e.languages.r={comment:/#.*/,string:{pattern:/(['"])(?:\\.|(?!\1)[^\\\r\n])*\1/,greedy:!0},"percent-operator":{pattern:/%[^%\s]*%/,alias:`operator`},boolean:/\b(?:FALSE|TRUE)\b/,ellipsis:/\.\.(?:\.|\d+)/,number:[/\b(?:Inf|NaN)\b/,/(?:\b0x[\dA-Fa-f]+(?:\.\d*)?|\b\d+(?:\.\d*)?|\B\.\d+)(?:[EePp][+-]?\d+)?[iL]?/],keyword:/\b(?:NA|NA_character_|NA_complex_|NA_integer_|NA_real_|NULL|break|else|for|function|if|in|next|repeat|while)\b/,operator:/->?>?|<(?:=|<?-)?|[>=!]=?|::?|&&?|\|\|?|[+*\/^$@~]/,punctuation:/[(){}\[\],;]/}}F1.displayName=`ruby`,F1.aliases=[`rb`];function F1(e){e.register(c1),(function(e){e.languages.ruby=e.languages.extend(`clike`,{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),e.languages.insertBefore(`ruby`,`operator`,{"double-colon":{pattern:/::/,alias:`punctuation`}});var t={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:e.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:`punctuation`}}};delete e.languages.ruby.function;var n=`(?:`+[`([^a-zA-Z0-9\\s{(\\[<=])(?:(?!\\1)[^\\\\]|\\\\[\\s\\S])*\\1`,`\\((?:[^()\\\\]|\\\\[\\s\\S]|\\((?:[^()\\\\]|\\\\[\\s\\S])*\\))*\\)`,`\\{(?:[^{}\\\\]|\\\\[\\s\\S]|\\{(?:[^{}\\\\]|\\\\[\\s\\S])*\\})*\\}`,`\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S]|\\[(?:[^\\[\\]\\\\]|\\\\[\\s\\S])*\\])*\\]`,`<(?:[^<>\\\\]|\\\\[\\s\\S]|<(?:[^<>\\\\]|\\\\[\\s\\S])*>)*>`].join(`|`)+`)`,r=`(?:"(?:\\\\.|[^"\\\\\\r\\n])*"|(?:\\b[a-zA-Z_]\\w*|[^\\s\\0-\\x7F]+)[?!]?|\\$.)`;e.languages.insertBefore(`ruby`,`keyword`,{"regex-literal":[{pattern:RegExp(`%r`+n+`[egimnosux]{0,6}`),greedy:!0,inside:{interpolation:t,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:t,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp(`(^|[^:]):`+r),lookbehind:!0,greedy:!0},{pattern:RegExp(`([\\r\\n{(,][ \\t]*)`+r+`(?=:(?!:))`),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),e.languages.insertBefore(`ruby`,`string`,{"string-literal":[{pattern:RegExp(`%[qQiIwWs]?`+n),greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:t,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:`heredoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?/}},interpolation:t,string:/[\s\S]+/}},{pattern:/<<[-~]?'([a-z_]\w*)'[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:`heredoc-string`,greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?'[a-z_]\w*'|\b[a-z_]\w*$/i,inside:{symbol:/\b\w+/,punctuation:/^<<[-~]?'|'$/}},string:/[\s\S]+/}}],"command-literal":[{pattern:RegExp(`%x`+n),greedy:!0,inside:{interpolation:t,command:{pattern:/[\s\S]+/,alias:`string`}}},{pattern:/`(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|[^\\`#\r\n])*`/,greedy:!0,inside:{interpolation:t,command:{pattern:/[\s\S]+/,alias:`string`}}}]}),delete e.languages.ruby.string,e.languages.insertBefore(`ruby`,`number`,{builtin:/\b(?:Array|Bignum|Binding|Class|Continuation|Dir|Exception|FalseClass|File|Fixnum|Float|Hash|IO|Integer|MatchData|Method|Module|NilClass|Numeric|Object|Proc|Range|Regexp|Stat|String|Struct|Symbol|TMS|Thread|ThreadGroup|Time|TrueClass)\b/,constant:/\b[A-Z][A-Z0-9_]*(?:[?!]|\b)/}),e.languages.rb=e.languages.ruby})(e)}I1.displayName=`rust`,I1.aliases=[];function I1(e){(function(e){for(var t=`\\/\\*(?:[^*/]|\\*(?!\\/)|\\/(?!\\*)|<self>)*\\*\\/`,n=0;n<2;n++)t=t.replace(/<self>/g,function(){return t});t=t.replace(/<self>/g,function(){return`[^\\s\\S]`}),e.languages.rust={comment:[{pattern:RegExp(`(^|[^\\\\])`+t),lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/b?"(?:\\[\s\S]|[^\\"])*"|b?r(#*)"(?:[^"]|"(?!\1))*"\1/,greedy:!0},char:{pattern:/b?'(?:\\(?:x[0-7][\da-fA-F]|u\{(?:[\da-fA-F]_*){1,6}\}|.)|[^\\\r\n\t'])'/,greedy:!0},attribute:{pattern:/#!?\[(?:[^\[\]"]|"(?:\\[\s\S]|[^\\"])*")*\]/,greedy:!0,alias:`attr-name`,inside:{string:null}},"closure-params":{pattern:/([=(,:]\s*|\bmove\s*)\|[^|]*\||\|[^|]*\|(?=\s*(?:\{|->))/,lookbehind:!0,greedy:!0,inside:{"closure-punctuation":{pattern:/^\||\|$/,alias:`punctuation`},rest:null}},"lifetime-annotation":{pattern:/'\w+/,alias:`symbol`},"fragment-specifier":{pattern:/(\$\w+:)[a-z]+/,lookbehind:!0,alias:`punctuation`},variable:/\$\w+/,"function-definition":{pattern:/(\bfn\s+)\w+/,lookbehind:!0,alias:`function`},"type-definition":{pattern:/(\b(?:enum|struct|trait|type|union)\s+)\w+/,lookbehind:!0,alias:`class-name`},"module-declaration":[{pattern:/(\b(?:crate|mod)\s+)[a-z][a-z_\d]*/,lookbehind:!0,alias:`namespace`},{pattern:/(\b(?:crate|self|super)\s*)::\s*[a-z][a-z_\d]*\b(?:\s*::(?:\s*[a-z][a-z_\d]*\s*::)*)?/,lookbehind:!0,alias:`namespace`,inside:{punctuation:/::/}}],keyword:[/\b(?:Self|abstract|as|async|await|become|box|break|const|continue|crate|do|dyn|else|enum|extern|final|fn|for|if|impl|in|let|loop|macro|match|mod|move|mut|override|priv|pub|ref|return|self|static|struct|super|trait|try|type|typeof|union|unsafe|unsized|use|virtual|where|while|yield)\b/,/\b(?:bool|char|f(?:32|64)|[ui](?:8|16|32|64|128|size)|str)\b/],function:/\b[a-z_]\w*(?=\s*(?:::\s*<|\())/,macro:{pattern:/\b\w+!/,alias:`property`},constant:/\b[A-Z_][A-Z_\d]+\b/,"class-name":/\b[A-Z]\w*\b/,namespace:{pattern:/(?:\b[a-z][a-z_\d]*\s*::\s*)*\b[a-z][a-z_\d]*\s*::(?!\s*<)/,inside:{punctuation:/::/}},number:/\b(?:0x[\dA-Fa-f](?:_?[\dA-Fa-f])*|0o[0-7](?:_?[0-7])*|0b[01](?:_?[01])*|(?:(?:\d(?:_?\d)*)?\.)?\d(?:_?\d)*(?:[Ee][+-]?\d+)?)(?:_?(?:f32|f64|[iu](?:8|16|32|64|size)?))?\b/,boolean:/\b(?:false|true)\b/,punctuation:/->|\.\.=|\.{1,3}|::|[{}[\];(),:]/,operator:/[-+*\/%!^]=?|=[=>]?|&[&=]?|\|[|=]?|<<?=?|>>?=?|[@?]/},e.languages.rust[`closure-params`].inside.rest=e.languages.rust,e.languages.rust.attribute.inside.string=e.languages.rust.string})(e)}L1.displayName=`sass`,L1.aliases=[];function L1(e){e.register(h1),(function(e){e.languages.sass=e.languages.extend(`css`,{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore(`sass`,`atrule`,{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore(`sass`,`property`,{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore(`sass`,`punctuation`,{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})})(e)}R1.displayName=`scss`,R1.aliases=[];function R1(e){e.register(h1),e.languages.scss=e.languages.extend(`css`,{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:`important`},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),e.languages.insertBefore(`scss`,`atrule`,{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),e.languages.insertBefore(`scss`,`important`,{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),e.languages.insertBefore(`scss`,`function`,{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:`keyword`},placeholder:{pattern:/%[-\w]+/,alias:`selector`},statement:{pattern:/\B!(?:default|optional)\b/i,alias:`keyword`},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:`keyword`},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),e.languages.scss.atrule.inside.rest=e.languages.scss}z1.displayName=`sql`,z1.aliases=[];function z1(e){e.languages.sql={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|(?:--|\/\/|#).*)/,lookbehind:!0},variable:[{pattern:/@(["'`])(?:\\[\s\S]|(?!\1)[^\\])+\1/,greedy:!0},/@[\w.$]+/],string:{pattern:/(^|[^@\\])("|')(?:\\[\s\S]|(?!\2)[^\\]|\2\2)*\2/,greedy:!0,lookbehind:!0},identifier:{pattern:/(^|[^@\\])`(?:\\[\s\S]|[^`\\]|``)*`/,greedy:!0,lookbehind:!0,inside:{punctuation:/^`|`$/}},function:/\b(?:AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE)(?=\s*\()/i,keyword:/\b(?:ACTION|ADD|AFTER|ALGORITHM|ALL|ALTER|ANALYZE|ANY|APPLY|AS|ASC|AUTHORIZATION|AUTO_INCREMENT|BACKUP|BDB|BEGIN|BERKELEYDB|BIGINT|BINARY|BIT|BLOB|BOOL|BOOLEAN|BREAK|BROWSE|BTREE|BULK|BY|CALL|CASCADED?|CASE|CHAIN|CHAR(?:ACTER|SET)?|CHECK(?:POINT)?|CLOSE|CLUSTERED|COALESCE|COLLATE|COLUMNS?|COMMENT|COMMIT(?:TED)?|COMPUTE|CONNECT|CONSISTENT|CONSTRAINT|CONTAINS(?:TABLE)?|CONTINUE|CONVERT|CREATE|CROSS|CURRENT(?:_DATE|_TIME|_TIMESTAMP|_USER)?|CURSOR|CYCLE|DATA(?:BASES?)?|DATE(?:TIME)?|DAY|DBCC|DEALLOCATE|DEC|DECIMAL|DECLARE|DEFAULT|DEFINER|DELAYED|DELETE|DELIMITERS?|DENY|DESC|DESCRIBE|DETERMINISTIC|DISABLE|DISCARD|DISK|DISTINCT|DISTINCTROW|DISTRIBUTED|DO|DOUBLE|DROP|DUMMY|DUMP(?:FILE)?|DUPLICATE|ELSE(?:IF)?|ENABLE|ENCLOSED|END|ENGINE|ENUM|ERRLVL|ERRORS|ESCAPED?|EXCEPT|EXEC(?:UTE)?|EXISTS|EXIT|EXPLAIN|EXTENDED|FETCH|FIELDS|FILE|FILLFACTOR|FIRST|FIXED|FLOAT|FOLLOWING|FOR(?: EACH ROW)?|FORCE|FOREIGN|FREETEXT(?:TABLE)?|FROM|FULL|FUNCTION|GEOMETRY(?:COLLECTION)?|GLOBAL|GOTO|GRANT|GROUP|HANDLER|HASH|HAVING|HOLDLOCK|HOUR|IDENTITY(?:COL|_INSERT)?|IF|IGNORE|IMPORT|INDEX|INFILE|INNER|INNODB|INOUT|INSERT|INT|INTEGER|INTERSECT|INTERVAL|INTO|INVOKER|ISOLATION|ITERATE|JOIN|KEYS?|KILL|LANGUAGE|LAST|LEAVE|LEFT|LEVEL|LIMIT|LINENO|LINES|LINESTRING|LOAD|LOCAL|LOCK|LONG(?:BLOB|TEXT)|LOOP|MATCH(?:ED)?|MEDIUM(?:BLOB|INT|TEXT)|MERGE|MIDDLEINT|MINUTE|MODE|MODIFIES|MODIFY|MONTH|MULTI(?:LINESTRING|POINT|POLYGON)|NATIONAL|NATURAL|NCHAR|NEXT|NO|NONCLUSTERED|NULLIF|NUMERIC|OFF?|OFFSETS?|ON|OPEN(?:DATASOURCE|QUERY|ROWSET)?|OPTIMIZE|OPTION(?:ALLY)?|ORDER|OUT(?:ER|FILE)?|OVER|PARTIAL|PARTITION|PERCENT|PIVOT|PLAN|POINT|POLYGON|PRECEDING|PRECISION|PREPARE|PREV|PRIMARY|PRINT|PRIVILEGES|PROC(?:EDURE)?|PUBLIC|PURGE|QUICK|RAISERROR|READS?|REAL|RECONFIGURE|REFERENCES|RELEASE|RENAME|REPEAT(?:ABLE)?|REPLACE|REPLICATION|REQUIRE|RESIGNAL|RESTORE|RESTRICT|RETURN(?:ING|S)?|REVOKE|RIGHT|ROLLBACK|ROUTINE|ROW(?:COUNT|GUIDCOL|S)?|RTREE|RULE|SAVE(?:POINT)?|SCHEMA|SECOND|SELECT|SERIAL(?:IZABLE)?|SESSION(?:_USER)?|SET(?:USER)?|SHARE|SHOW|SHUTDOWN|SIMPLE|SMALLINT|SNAPSHOT|SOME|SONAME|SQL|START(?:ING)?|STATISTICS|STATUS|STRIPED|SYSTEM_USER|TABLES?|TABLESPACE|TEMP(?:ORARY|TABLE)?|TERMINATED|TEXT(?:SIZE)?|THEN|TIME(?:STAMP)?|TINY(?:BLOB|INT|TEXT)|TOP?|TRAN(?:SACTIONS?)?|TRIGGER|TRUNCATE|TSEQUAL|TYPES?|UNBOUNDED|UNCOMMITTED|UNDEFINED|UNION|UNIQUE|UNLOCK|UNPIVOT|UNSIGNED|UPDATE(?:TEXT)?|USAGE|USE|USER|USING|VALUES?|VAR(?:BINARY|CHAR|CHARACTER|YING)|VIEW|WAITFOR|WARNINGS|WHEN|WHERE|WHILE|WITH(?: ROLLUP|IN)?|WORK|WRITE(?:TEXT)?|YEAR)\b/i,boolean:/\b(?:FALSE|NULL|TRUE)\b/i,number:/\b0x[\da-f]+\b|\b\d+(?:\.\d*)?|\B\.\d+\b/i,operator:/[-+*\/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/}}B1.displayName=`swift`,B1.aliases=[];function B1(e){e.languages.swift={comment:{pattern:/(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,lookbehind:!0,greedy:!0},"string-literal":[{pattern:RegExp(`(^|[^"#])(?:"(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|\\r\\n|[^(])|[^\\\\\\r\\n"])*"|"""(?:\\\\(?:\\((?:[^()]|\\([^()]*\\))*\\)|[^(])|[^\\\\"]|"(?!""))*""")(?!["#])`),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\\($/,alias:`punctuation`},punctuation:/\\(?=[\r\n])/,string:/[\s\S]+/}},{pattern:RegExp(`(^|[^"#])(#+)(?:"(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|\\r\\n|[^#])|[^\\\\\\r\\n])*?"|"""(?:\\\\(?:#+\\((?:[^()]|\\([^()]*\\))*\\)|[^#])|[^\\\\])*?""")\\2`),lookbehind:!0,greedy:!0,inside:{interpolation:{pattern:/(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,lookbehind:!0,inside:null},"interpolation-punctuation":{pattern:/^\)|\\#+\($/,alias:`punctuation`},string:/[\s\S]+/}}],directive:{pattern:RegExp(`#(?:(?:elseif|if)\\b(?:[ ]*(?:![ \\t]*)?(?:\\b\\w+\\b(?:[ \\t]*\\((?:[^()]|\\([^()]*\\))*\\))?|\\((?:[^()]|\\([^()]*\\))*\\))(?:[ \\t]*(?:&&|\\|\\|))?)+|(?:else|endif)\\b)`),alias:`property`,inside:{"directive-name":/^#\w+/,boolean:/\b(?:false|true)\b/,number:/\b\d+(?:\.\d+)*\b/,operator:/!|&&|\|\||[<>]=?/,punctuation:/[(),]/}},literal:{pattern:/#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,alias:`constant`},"other-directive":{pattern:/#\w+\b/,alias:`property`},attribute:{pattern:/@\w+/,alias:`atrule`},"function-definition":{pattern:/(\bfunc\s+)\w+/,lookbehind:!0,alias:`function`},label:{pattern:/\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,lookbehind:!0,alias:`important`},keyword:/\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,boolean:/\b(?:false|true)\b/,nil:{pattern:/\bnil\b/,alias:`constant`},"short-argument":/\$\d+\b/,omit:{pattern:/\b_\b/,alias:`keyword`},number:/\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,"class-name":/\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,function:/\b[a-z_]\w*(?=\s*\()/i,constant:/\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,operator:/[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,punctuation:/[{}[\]();,.:\\]/},e.languages.swift[`string-literal`].forEach(function(t){t.inside.interpolation.inside=e.languages.swift})}V1.displayName=`typescript`,V1.aliases=[`ts`];function V1(e){e.register(x1),(function(e){e.languages.typescript=e.languages.extend(`javascript`,{"class-name":{pattern:/(\b(?:class|extends|implements|instanceof|interface|new|type)\s+)(?!keyof\b)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?:\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript[`literal-property`];var t=e.languages.extend(`typescript`,{});delete t[`class-name`],e.languages.typescript[`class-name`].inside=t,e.languages.insertBefore(`typescript`,`function`,{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:`operator`},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:`class-name`,inside:t}}}}),e.languages.ts=e.languages.typescript})(e)}H1.displayName=`basic`,H1.aliases=[];function H1(e){e.languages.basic={comment:{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},string:{pattern:/"(?:""|[!#$%&'()*,\/:;<=>?^\w +\-.])*"/,greedy:!0},number:/(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,keyword:/\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SELECT CASE|SHARED|SHELL|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,function:/\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,operator:/<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,punctuation:/[,;:()]/}}U1.displayName=`vbnet`,U1.aliases=[];function U1(e){e.register(H1),e.languages.vbnet=e.languages.extend(`basic`,{comment:[{pattern:/(?:!|REM\b).+/i,inside:{keyword:/^REM/i}},{pattern:/(^|[^\\:])'.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(^|[^"])"(?:""|[^"])*"(?!")/,lookbehind:!0,greedy:!0},keyword:/(?:\b(?:ADDHANDLER|ADDRESSOF|ALIAS|AND|ANDALSO|AS|BEEP|BLOAD|BOOLEAN|BSAVE|BYREF|BYTE|BYVAL|CALL(?: ABSOLUTE)?|CASE|CATCH|CBOOL|CBYTE|CCHAR|CDATE|CDBL|CDEC|CHAIN|CHAR|CHDIR|CINT|CLASS|CLEAR|CLNG|CLOSE|CLS|COBJ|COM|COMMON|CONST|CONTINUE|CSBYTE|CSHORT|CSNG|CSTR|CTYPE|CUINT|CULNG|CUSHORT|DATA|DATE|DECIMAL|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DEFAULT|DELEGATE|DIM|DIRECTCAST|DO|DOUBLE|ELSE|ELSEIF|END|ENUM|ENVIRON|ERASE|ERROR|EVENT|EXIT|FALSE|FIELD|FILES|FINALLY|FOR(?: EACH)?|FRIEND|FUNCTION|GET|GETTYPE|GETXMLNAMESPACE|GLOBAL|GOSUB|GOTO|HANDLES|IF|IMPLEMENTS|IMPORTS|IN|INHERITS|INPUT|INTEGER|INTERFACE|IOCTL|IS|ISNOT|KEY|KILL|LET|LIB|LIKE|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|ME|MKDIR|MOD|MODULE|MUSTINHERIT|MUSTOVERRIDE|MYBASE|MYCLASS|NAME|NAMESPACE|NARROWING|NEW|NEXT|NOT|NOTHING|NOTINHERITABLE|NOTOVERRIDABLE|OBJECT|OF|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPERATOR|OPTION(?: BASE)?|OPTIONAL|OR|ORELSE|OUT|OVERLOADS|OVERRIDABLE|OVERRIDES|PARAMARRAY|PARTIAL|POKE|PRIVATE|PROPERTY|PROTECTED|PUBLIC|PUT|RAISEEVENT|READ|READONLY|REDIM|REM|REMOVEHANDLER|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SBYTE|SELECT(?: CASE)?|SET|SHADOWS|SHARED|SHELL|SHORT|SINGLE|SLEEP|STATIC|STEP|STOP|STRING|STRUCTURE|SUB|SWAP|SYNCLOCK|SYSTEM|THEN|THROW|TIMER|TO|TROFF|TRON|TRUE|TRY|TRYCAST|TYPE|TYPEOF|UINTEGER|ULONG|UNLOCK|UNTIL|USHORT|USING|VIEW PRINT|WAIT|WEND|WHEN|WHILE|WIDENING|WITH|WITHEVENTS|WRITE|WRITEONLY|XOR)|\B(?:#CONST|#ELSE|#ELSEIF|#END|#IF))(?:\$|\b)/i,punctuation:/[,;:(){}]/})}var W1=0,G1={},K1={util:{type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++W1}),e.__id},clone:function e(t,n){n||={};var r,i;switch(K1.util.type(t)){case`Object`:if(i=K1.util.objId(t),n[i])return n[i];for(var a in r={},n[i]=r,t)t.hasOwnProperty(a)&&(r[a]=e(t[a],n));return r;case`Array`:return i=K1.util.objId(t),n[i]?n[i]:(r=[],n[i]=r,t.forEach(function(t,i){r[i]=e(t,n)}),r);default:return t}}},languages:{plain:G1,plaintext:G1,text:G1,txt:G1,extend:function(e,t){var n=K1.util.clone(K1.languages[e]);for(var r in t)n[r]=t[r];return n},insertBefore:function(e,t,n,r){r||=K1.languages;var i=r[e],a={};for(var o in i)if(i.hasOwnProperty(o)){if(o==t)for(var s in n)n.hasOwnProperty(s)&&(a[s]=n[s]);n.hasOwnProperty(o)||(a[o]=i[o])}var c=r[e];return r[e]=a,K1.languages.DFS(K1.languages,function(t,n){n===c&&t!=e&&(this[t]=a)}),a},DFS:function e(t,n,r,i){i||={};var a=K1.util.objId;for(var o in t)if(t.hasOwnProperty(o)){n.call(t,o,t[o],r||o);var s=t[o],c=K1.util.type(s);c===`Object`&&!i[a(s)]?(i[a(s)]=!0,e(s,n,null,i)):c===`Array`&&!i[a(s)]&&(i[a(s)]=!0,e(s,n,o,i))}}},plugins:{},highlight:function(e,t,n){var r={code:e,grammar:t,language:n};if(K1.hooks.run(`before-tokenize`,r),!r.grammar)throw Error(`The language "`+r.language+`" has no grammar.`);return r.tokens=K1.tokenize(r.code,r.grammar),K1.hooks.run(`after-tokenize`,r),q1.stringify(K1.util.encode(r.tokens),r.language)},tokenize:function(e,t){var n=t.rest;if(n){for(var r in n)t[r]=n[r];delete t.rest}var i=new X1;return Z1(i,i.head,e),Y1(e,i,t,i.head,0),$1(i)},hooks:{all:{},add:function(e,t){var n=K1.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=K1.hooks.all[e];if(!(!n||!n.length))for(var r=0,i;i=n[r++];)i(t)}},Token:q1};function q1(e,t,n,r){this.type=e,this.content=t,this.alias=n,this.length=(r||``).length|0}function J1(e,t,n,r){e.lastIndex=t;var i=e.exec(n);if(i&&r&&i[1]){var a=i[1].length;i.index+=a,i[0]=i[0].slice(a)}return i}function Y1(e,t,n,r,i,a){for(var o in n)if(!(!n.hasOwnProperty(o)||!n[o])){var s=n[o];s=Array.isArray(s)?s:[s];for(var c=0;c<s.length;++c){if(a&&a.cause==o+`,`+c)return;var l=s[c],u=l.inside,d=!!l.lookbehind,f=!!l.greedy,p=l.alias;if(f&&!l.pattern.global){var m=l.pattern.toString().match(/[imsuy]*$/)[0];l.pattern=RegExp(l.pattern.source,m+`g`)}for(var h=l.pattern||l,g=r.next,_=i;g!==t.tail&&!(a&&_>=a.reach);_+=g.value.length,g=g.next){var v=g.value;if(t.length>e.length)return;if(!(v instanceof q1)){var y=1,b;if(f){if(b=J1(h,_,e,d),!b||b.index>=e.length)break;var x=b.index,S=b.index+b[0].length,C=_;for(C+=g.value.length;x>=C;)g=g.next,C+=g.value.length;if(C-=g.value.length,_=C,g.value instanceof q1)continue;for(var w=g;w!==t.tail&&(C<S||typeof w.value==`string`);w=w.next)y++,C+=w.value.length;y--,v=e.slice(_,C),b.index-=_}else if(b=J1(h,0,v,d),!b)continue;var x=b.index,T=b[0],E=v.slice(0,x),D=v.slice(x+T.length),O=_+v.length;a&&O>a.reach&&(a.reach=O);var k=g.prev;E&&(k=Z1(t,k,E),_+=E.length),Q1(t,k,y);var A=new q1(o,u?K1.tokenize(T,u):T,p,T);if(g=Z1(t,k,A),D&&Z1(t,g,D),y>1){var j={cause:o+`,`+c,reach:O};Y1(e,t,n,g.prev,_,j),a&&j.reach>a.reach&&(a.reach=j.reach)}}}}}}function X1(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function Z1(e,t,n){var r=t.next,i={value:n,prev:t,next:r};return t.next=i,r.prev=i,e.length++,i}function Q1(e,t,n){for(var r=t.next,i=0;i<n&&r!==e.tail;i++)r=r.next;t.next=r,r.prev=t,e.length-=i}function $1(e){for(var t=[],n=e.head.next;n!==e.tail;)t.push(n.value),n=n.next;return t}var e0=K1;function t0(){}t0.prototype=e0;var n0=new t0;n0.highlight=r0,n0.register=i0,n0.alias=a0,n0.registered=o0,n0.listLanguages=s0,n0.util.encode=l0,n0.Token.stringify=c0;function r0(e,t){if(typeof e!=`string`)throw TypeError("Expected `string` for `value`, got `"+e+"`");let n,r;if(t&&typeof t==`object`)n=t;else{if(r=t,typeof r!=`string`)throw TypeError("Expected `string` for `name`, got `"+r+"`");if(Object.hasOwn(n0.languages,r))n=n0.languages[r];else throw Error("Unknown language: `"+r+"` is not registered")}return{type:`root`,children:e0.highlight.call(n0,e,n,r)}}function i0(e){if(typeof e!=`function`||!e.displayName)throw Error("Expected `function` for `syntax`, got `"+e+"`");Object.hasOwn(n0.languages,e.displayName)||e(n0)}function a0(e,t){let n=n0.languages,r={};typeof e==`string`?t&&(r[e]=t):r=e;let i;for(i in r)if(Object.hasOwn(r,i)){let e=r[i],t=typeof e==`string`?[e]:e,a=-1;for(;++a<t.length;)n[t[a]]=n[i]}}function o0(e){if(typeof e!=`string`)throw TypeError("Expected `string` for `aliasOrLanguage`, got `"+e+"`");return Object.hasOwn(n0.languages,e)}function s0(){let e=n0.languages,t=[],n;for(n in e)Object.hasOwn(e,n)&&typeof e[n]==`object`&&t.push(n);return t}function c0(e,t){if(typeof e==`string`)return{type:`text`,value:e};if(Array.isArray(e)){let n=[],r=-1;for(;++r<e.length;)e[r]!==null&&e[r]!==void 0&&e[r]!==``&&n.push(c0(e[r],t));return n}let n={attributes:{},classes:[`token`,e.type],content:c0(e.content,t),language:t,tag:`span`,type:e.type};return e.alias&&n.classes.push(...typeof e.alias==`string`?[e.alias]:e.alias),n0.hooks.run(`wrap`,n),jr(n.tag+`.`+n.classes.join(`.`),u0(n.attributes),n.content)}function l0(e){return e}function u0(e){let t;for(t in e)Object.hasOwn(e,t)&&(e[t]=Mr(e[t]));return e}n0.register(c1),n0.register(l1),n0.register(u1),n0.register(d1),n0.register(f1),n0.register(p1),n0.register(m1),n0.register(h1),n0.register(g1),n0.register(_1),n0.register(v1),n0.register(y1),n0.register(b1),n0.register(x1),n0.register(S1),n0.register(C1),n0.register(w1),n0.register(T1),n0.register(E1),n0.register(D1),n0.register(O1),n0.register(k1),n0.register(A1),n0.register(j1),n0.register(M1),n0.register(N1),n0.register(P1),n0.register(F1),n0.register(I1),n0.register(L1),n0.register(R1),n0.register(z1),n0.register(B1),n0.register(V1),n0.register(H1),n0.register(U1);var d0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/code.tsx`,f0=(0,B.lazy)(()=>j(()=>import(`./esm-Bpmih92m.js`),__vite__mapDeps([12,1,13,6,7,14,15,10,16])));function p0(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}var m0=n0.listLanguages().slice().sort().map(e=>({value:e,title:e}));function h0({field:e,value:t,onChange:n}){let r=(0,B.useMemo)(()=>p0(t),[t]),i=e.hints.defaultLang??`text`,a=r.lang??i,o=e=>n(!e.code&&!e.lang?``:{code:e.code??``,lang:e.lang??i});return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2 min-w-0`,children:[(0,X.jsxDEV)(rX,{value:a,onChange:e=>o({code:r.code,lang:e}),items:m0,placeholder:`language`},void 0,!1,{fileName:d0,lineNumber:45,columnNumber:7},this),(0,X.jsxDEV)(`div`,{"data-color-mode":`dark`,children:(0,X.jsxDEV)(`div`,{className:`rounded-xl overflow-hidden border border-border min-w-0`,children:(0,X.jsxDEV)(B.Suspense,{fallback:(0,X.jsxDEV)(`div`,{className:`text-sm text-muted`,children:`…`},void 0,!1,{fileName:d0,lineNumber:53,columnNumber:31},this),children:(0,X.jsxDEV)(f0,{value:r.code??``,language:a,onChange:e=>o({code:e.target.value,lang:a}),padding:12,style:{fontFamily:`ui-monospace, monospace`,fontSize:13,background:`transparent`,minHeight:`8rem`}},void 0,!1,{fileName:d0,lineNumber:54,columnNumber:13},this)},void 0,!1,{fileName:d0,lineNumber:53,columnNumber:11},this)},void 0,!1,{fileName:d0,lineNumber:52,columnNumber:9},this)},void 0,!1,{fileName:d0,lineNumber:51,columnNumber:7},this)]},void 0,!0,{fileName:d0,lineNumber:44,columnNumber:5},this)}function g0({value:e}){let t=p0(e);return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2 min-w-0`,children:[(0,X.jsxDEV)(`div`,{className:`flex h-9 w-full items-center rounded-lg border border-transparent px-3 text-sm text-muted`,children:t.lang&&(0,X.jsxDEV)(`span`,{className:`uppercase`,children:t.lang},void 0,!1,{fileName:d0,lineNumber:78,columnNumber:20},this)},void 0,!1,{fileName:d0,lineNumber:77,columnNumber:7},this),(0,X.jsxDEV)(`pre`,{className:`min-w-0 min-h-32 overflow-x-auto whitespace-pre-wrap rounded-lg border border-transparent p-3 font-mono text-[13px] leading-normal text-text/90`,children:t.code||(0,X.jsxDEV)(at,{},void 0,!1,{fileName:d0,lineNumber:81,columnNumber:20},this)},void 0,!1,{fileName:d0,lineNumber:80,columnNumber:7},this)]},void 0,!0,{fileName:d0,lineNumber:76,columnNumber:5},this)}function _0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`none`,bare:e.bare,view:e=>(0,X.jsxDEV)(g0,{value:e},void 0,!1,{fileName:d0,lineNumber:99,columnNumber:20},this),edit:(t,n)=>(0,X.jsxDEV)(h0,{field:e.field,value:t,onChange:n},void 0,!1,{fileName:d0,lineNumber:101,columnNumber:9},this)},void 0,!1,{fileName:d0,lineNumber:89,columnNumber:5},this)}function v0({value:e}){return(0,X.jsxDEV)(`span`,{className:`truncate text-muted`,children:p0(e).lang??`code`},void 0,!1,{fileName:d0,lineNumber:109,columnNumber:10},this)}L({kinds:[`code`],layout:`block`,Page:_0,Inline:v0});var y0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/embed.tsx`;function b0(e){let t=e=>!!e&&typeof e==`object`&&typeof e.url==`string`;if(Array.isArray(e))return e.filter(t);if(t(e))return[e];try{let n=JSON.parse(String(e??``));return Array.isArray(n)?n.filter(t):t(n)?[n]:[]}catch{return[]}}var x0=e=>(e.type===`video`||e.type===`rich`)&&!!e.html;function S0({rec:e,onOpen:t,onRemove:n}){return(0,X.jsxDEV)(`div`,{className:`group relative @container`,children:[(0,X.jsxDEV)(`button`,{type:`button`,onClick:t,className:`flex w-full items-center gap-2 overflow-hidden rounded-lg border border-border text-left @[20rem]:flex-col @[20rem]:items-stretch @[20rem]:gap-0`,children:[(0,X.jsxDEV)(`div`,{className:`relative aspect-video w-20 shrink-0 bg-muted/40 @[20rem]:w-full`,children:[e.thumbnail?(0,X.jsxDEV)(`img`,{src:e.thumbnail,alt:``,className:`h-full w-full object-cover`},void 0,!1,{fileName:y0,lineNumber:45,columnNumber:13},this):(0,X.jsxDEV)(Fc,{className:`absolute inset-0 m-auto text-muted`,size:20},void 0,!1,{fileName:y0,lineNumber:47,columnNumber:13},this),x0(e)&&(0,X.jsxDEV)(`span`,{className:`absolute inset-0 m-auto flex h-8 w-8 items-center justify-center rounded-full bg-black/60 text-white`,children:(0,X.jsxDEV)(E,{size:16},void 0,!1,{fileName:y0,lineNumber:51,columnNumber:15},this)},void 0,!1,{fileName:y0,lineNumber:50,columnNumber:13},this)]},void 0,!0,{fileName:y0,lineNumber:43,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`min-w-0 flex-1 px-2 py-1.5`,children:[(0,X.jsxDEV)(`div`,{className:`truncate text-sm font-medium`,children:e.title??e.url},void 0,!1,{fileName:y0,lineNumber:56,columnNumber:11},this),e.provider&&(0,X.jsxDEV)(`div`,{className:`truncate text-xs text-muted`,children:e.provider},void 0,!1,{fileName:y0,lineNumber:57,columnNumber:28},this)]},void 0,!0,{fileName:y0,lineNumber:55,columnNumber:9},this)]},void 0,!0,{fileName:y0,lineNumber:38,columnNumber:7},this),n&&(0,X.jsxDEV)(T,{type:`button`,variant:`ghost`,size:`iconSm`,className:`absolute right-1 top-1 text-muted opacity-0 hover:text-danger group-hover:opacity-100`,onClick:n,children:(0,X.jsxDEV)(ke,{size:13},void 0,!1,{fileName:y0,lineNumber:68,columnNumber:11},this)},void 0,!1,{fileName:y0,lineNumber:61,columnNumber:9},this)]},void 0,!0,{fileName:y0,lineNumber:37,columnNumber:5},this)}function C0({rec:e,onClose:t}){let{t:n}=l();return(0,X.jsxDEV)(c$,{open:!0,onOpenChange:e=>!e&&t(),children:(0,X.jsxDEV)(d$,{className:`max-w-2xl`,children:[(0,X.jsxDEV)(p$,{className:`truncate`,children:e.title??e.url},void 0,!1,{fileName:y0,lineNumber:81,columnNumber:9},this),x0(e)?(0,X.jsxDEV)(`iframe`,{title:e.title??`embed`,srcDoc:e.html,sandbox:`allow-scripts allow-presentation`,allowFullScreen:!0,className:`aspect-video w-full rounded-md border-0`},void 0,!1,{fileName:y0,lineNumber:83,columnNumber:11},this):(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-3`,children:[e.thumbnail&&(0,X.jsxDEV)(`img`,{src:e.thumbnail,alt:``,className:`w-full rounded-md`},void 0,!1,{fileName:y0,lineNumber:92,columnNumber:31},this),e.description&&(0,X.jsxDEV)(`p`,{className:`text-sm text-muted`,children:e.description},void 0,!1,{fileName:y0,lineNumber:93,columnNumber:33},this)]},void 0,!0,{fileName:y0,lineNumber:91,columnNumber:11},this),(0,X.jsxDEV)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,children:(0,X.jsxDEV)(T,{type:`button`,variant:`outline`,className:`w-full`,children:[(0,X.jsxDEV)(kc,{size:15},void 0,!1,{fileName:y0,lineNumber:98,columnNumber:13},this),` `,n(`embed.open`)]},void 0,!0,{fileName:y0,lineNumber:97,columnNumber:11},this)},void 0,!1,{fileName:y0,lineNumber:96,columnNumber:9},this)]},void 0,!0,{fileName:y0,lineNumber:80,columnNumber:7},this)},void 0,!1,{fileName:y0,lineNumber:79,columnNumber:5},this)}function w0({value:e,onChange:t,multiple:n}){let{t:r}=l(),i=b0(e),[a,o]=(0,B.useState)(null),[s,c]=(0,B.useState)(``),[u,d]=(0,B.useState)(!1),[f,p]=(0,B.useState)(!1),m=e=>t?.(e.length?e:``);async function h(){if(u||!s.trim())return;d(!0),p(!1);let e=await br(s.trim());if(d(!1),!e)return p(!0);m([...i,e]),c(``)}return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2`,children:[i.length===0&&!t&&(0,X.jsxDEV)(at,{},void 0,!1,{fileName:y0,lineNumber:131,columnNumber:42},this),(0,X.jsxDEV)(`div`,{className:`grid grid-cols-1 gap-2 @md:grid-cols-2 @2xl:grid-cols-3`,children:i.map((e,n)=>(0,X.jsxDEV)(S0,{rec:e,onOpen:()=>o(e),onRemove:t?()=>m(i.filter((e,t)=>t!==n)):void 0},`${e.url}-${n}`,!1,{fileName:y0,lineNumber:134,columnNumber:11},this))},void 0,!1,{fileName:y0,lineNumber:132,columnNumber:7},this),t&&(n||i.length===0)&&(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1`,children:[(0,X.jsxDEV)(`div`,{className:`flex gap-2`,children:[(0,X.jsxDEV)(Te,{value:s,placeholder:r(`embed.pastePlaceholder`),onChange:e=>c(e.target.value),onKeyDown:e=>e.key===`Enter`&&(e.preventDefault(),h())},void 0,!1,{fileName:y0,lineNumber:145,columnNumber:13},this),(0,X.jsxDEV)(T,{type:`button`,variant:`outline`,disabled:u||!s.trim(),onClick:h,children:u?`…`:`+`},void 0,!1,{fileName:y0,lineNumber:151,columnNumber:13},this)]},void 0,!0,{fileName:y0,lineNumber:144,columnNumber:11},this),f&&(0,X.jsxDEV)(`span`,{className:`text-xs text-danger`,children:r(`embed.resolveFailed`)},void 0,!1,{fileName:y0,lineNumber:155,columnNumber:19},this)]},void 0,!0,{fileName:y0,lineNumber:143,columnNumber:9},this),a&&(0,X.jsxDEV)(C0,{rec:a,onClose:()=>o(null)},void 0,!1,{fileName:y0,lineNumber:158,columnNumber:16},this)]},void 0,!0,{fileName:y0,lineNumber:130,columnNumber:5},this)}function T0(e){let t=e.mode!==`view`,n=e.field.hints.multiple===!0;return(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1.5`,children:[e.label&&(0,X.jsxDEV)(se,{label:e.label,required:e.required},void 0,!1,{fileName:y0,lineNumber:168,columnNumber:19},this),(0,X.jsxDEV)(w0,{value:e.value,onChange:t?e.onChange:void 0,multiple:n},void 0,!1,{fileName:y0,lineNumber:169,columnNumber:7},this),e.error&&(0,X.jsxDEV)(ge,{error:e.error},void 0,!1,{fileName:y0,lineNumber:170,columnNumber:19},this)]},void 0,!0,{fileName:y0,lineNumber:167,columnNumber:5},this)}function E0(e){let t=b0(e.value);if(t.length===0)return(0,X.jsxDEV)(at,{},void 0,!1,{fileName:y0,lineNumber:177,columnNumber:33},this);let n=t[0];return(0,X.jsxDEV)(`span`,{className:`inline-flex min-w-0 items-center gap-1`,children:[x0(n)?(0,X.jsxDEV)(E,{size:12},void 0,!1,{fileName:y0,lineNumber:181,columnNumber:26},this):(0,X.jsxDEV)(Fc,{size:12},void 0,!1,{fileName:y0,lineNumber:181,columnNumber:47},this),(0,X.jsxDEV)(`span`,{className:`truncate`,children:n.title??n.url},void 0,!1,{fileName:y0,lineNumber:182,columnNumber:7},this),t.length>1&&(0,X.jsxDEV)(`span`,{className:`text-muted`,children:[`+`,t.length-1]},void 0,!0,{fileName:y0,lineNumber:183,columnNumber:27},this)]},void 0,!0,{fileName:y0,lineNumber:180,columnNumber:5},this)}L({kinds:[`embed`],layout:`block`,Page:T0,Inline:E0});var D0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/reminder.tsx`;function O0(){return new Date().toISOString().slice(0,10)}function k0(e,t){return Math.round((Date.parse(e)-Date.parse(t))/864e5)}function A0(e,t,n=O0()){if(!e)return`neutral`;let r=k0(e,n);return r<0?`overdue`:r===0?`today`:r<=t?`soon`:`neutral`}var j0={overdue:`text-red-600`,today:`text-primary font-medium`,soon:`text-amber-600`,neutral:``};function M0({field:e,value:t}){let{t:n}=l(),r=String(t??``);if(!r)return(0,X.jsxDEV)(at,{},void 0,!1,{fileName:D0,lineNumber:40,columnNumber:18},this);let i=A0(r,e.hints.lead??30),a=k0(r,O0()),o=i===`today`?n(`reminder.today`):i===`overdue`?n(`reminder.overdue`,{days:Math.abs(a)}):i===`soon`?n(`reminder.inDays`,{days:a}):null;return(0,X.jsxDEV)(`span`,{className:`tabular-nums ${j0[i]}`,children:[qR(r),o?(0,X.jsxDEV)(`span`,{className:`ml-2 text-xs`,children:o},void 0,!1,{fileName:D0,lineNumber:52,columnNumber:15},this):null]},void 0,!0,{fileName:D0,lineNumber:50,columnNumber:5},this)}function N0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-40`,bare:e.bare,view:t=>(0,X.jsxDEV)(M0,{field:e.field,value:t},void 0,!1,{fileName:D0,lineNumber:62,columnNumber:20},this),edit:(e,t)=>(0,X.jsxDEV)(Te,{type:`date`,value:String(e??``),onChange:e=>t(e.target.value)},void 0,!1,{fileName:D0,lineNumber:64,columnNumber:9},this)},void 0,!1,{fileName:D0,lineNumber:59,columnNumber:5},this)}function P0({field:e,value:t}){return(0,X.jsxDEV)(M0,{field:e,value:t},void 0,!1,{fileName:D0,lineNumber:71,columnNumber:10},this)}L({kinds:[`reminder`],Page:N0,Inline:P0});var F0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/weight.tsx`;function I0(e){if(e==null||e===``||Number.isNaN(Number(e)))return``;let t=Number(e);return t<1e3?`${t} г`:`${Number((t/1e3).toFixed(2))} кг`}function L0({value:e,onChange:t}){let n=e===``?``:Number(e),[r,i]=(0,B.useState)(n!==``&&Number(n)>=1e3?`kg`:`g`),a=n===``?``:r===`kg`?Number(n)/1e3:n,o=e=>Math.round(r===`kg`?e*1e3:e);return(0,X.jsxDEV)(`div`,{className:`flex gap-2 min-w-0`,children:[(0,X.jsxDEV)(Te,{type:`number`,className:`flex-1 min-w-0`,min:0,value:a,onChange:e=>t(e.target.value===``?``:String(o(Number(e.target.value))))},void 0,!1,{fileName:F0,lineNumber:23,columnNumber:7},this),(0,X.jsxDEV)(st,{value:r,onValueChange:e=>i(e),children:[(0,X.jsxDEV)(ot,{className:`w-20`,children:(0,X.jsxDEV)(Re,{},void 0,!1,{fileName:F0,lineNumber:32,columnNumber:11},this)},void 0,!1,{fileName:F0,lineNumber:31,columnNumber:9},this),(0,X.jsxDEV)(Le,{children:[(0,X.jsxDEV)(Ee,{value:`g`,children:`г`},void 0,!1,{fileName:F0,lineNumber:35,columnNumber:11},this),(0,X.jsxDEV)(Ee,{value:`kg`,children:`кг`},void 0,!1,{fileName:F0,lineNumber:36,columnNumber:11},this)]},void 0,!0,{fileName:F0,lineNumber:34,columnNumber:9},this)]},void 0,!0,{fileName:F0,lineNumber:30,columnNumber:7},this)]},void 0,!0,{fileName:F0,lineNumber:22,columnNumber:5},this)}function R0({value:e}){let t=I0(e);return t?(0,X.jsxDEV)(`span`,{className:`tabular-nums`,children:t},void 0,!1,{fileName:F0,lineNumber:45,columnNumber:14},this):(0,X.jsxDEV)(at,{},void 0,!1,{fileName:F0,lineNumber:45,columnNumber:58},this)}function z0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-40`,bare:e.bare,view:e=>(0,X.jsxDEV)(R0,{value:e},void 0,!1,{fileName:F0,lineNumber:61,columnNumber:20},this),edit:(e,t)=>(0,X.jsxDEV)(L0,{value:String(e??``),onChange:t},void 0,!1,{fileName:F0,lineNumber:63,columnNumber:9},this)},void 0,!1,{fileName:F0,lineNumber:50,columnNumber:5},this)}function B0({value:e}){return(0,X.jsxDEV)(R0,{value:e},void 0,!1,{fileName:F0,lineNumber:70,columnNumber:10},this)}L({kinds:[`weight`],Page:z0,Inline:B0});var V0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/dimensions.tsx`;function H0(e){if(e&&typeof e==`object`)return e;try{let t=JSON.parse(String(e??``));return t&&typeof t==`object`?t:{}}catch{return{}}}function U0(e){let t=H0(e);if(t.w==null||t.h==null||t.d==null)return``;let n=e=>Number((e/10).toFixed(1));return`${n(t.w)}×${n(t.h)}×${n(t.d)} см`}function W0({value:e,onChange:t}){let n=H0(e),r=(e,r)=>{let i={...n,[e]:r===``?void 0:Math.round(Number(r))};t(i.w==null&&i.h==null&&i.d==null?``:i)},i=(e,t)=>(0,X.jsxDEV)(Te,{type:`number`,min:0,className:`w-20 min-w-0`,placeholder:t,value:n[e]??``,onChange:t=>r(e,t.target.value)},void 0,!1,{fileName:V0,lineNumber:27,columnNumber:5},this);return(0,X.jsxDEV)(`div`,{className:`flex items-center gap-1 min-w-0 ${R}`,children:[i(`w`,`Ш`),(0,X.jsxDEV)(`span`,{className:`text-muted`,children:`×`},void 0,!1,{fileName:V0,lineNumber:31,columnNumber:23},this),i(`h`,`В`),(0,X.jsxDEV)(`span`,{className:`text-muted`,children:`×`},void 0,!1,{fileName:V0,lineNumber:31,columnNumber:76},this),i(`d`,`Г`),(0,X.jsxDEV)(`span`,{className:`ml-1 text-xs text-muted`,children:`мм`},void 0,!1,{fileName:V0,lineNumber:32,columnNumber:7},this)]},void 0,!0,{fileName:V0,lineNumber:30,columnNumber:5},this)}function G0({value:e}){let t=U0(e);return t?(0,X.jsxDEV)(`span`,{className:`tabular-nums`,children:t},void 0,!1,{fileName:V0,lineNumber:39,columnNumber:14},this):(0,X.jsxDEV)(at,{},void 0,!1,{fileName:V0,lineNumber:39,columnNumber:58},this)}function K0(e){return(0,X.jsxDEV)(_e,{field:e.field,value:e.value,onChange:e.onChange,label:e.label,required:e.required,error:e.error,mode:e.mode,geom:`inline`,width:`w-fit`,bare:e.bare,view:e=>(0,X.jsxDEV)(G0,{value:e},void 0,!1,{fileName:V0,lineNumber:45,columnNumber:20},this),edit:(e,t)=>(0,X.jsxDEV)(W0,{value:e,onChange:t},void 0,!1,{fileName:V0,lineNumber:46,columnNumber:34},this)},void 0,!1,{fileName:V0,lineNumber:43,columnNumber:5},this)}function q0({value:e}){return(0,X.jsxDEV)(G0,{value:e},void 0,!1,{fileName:V0,lineNumber:49,columnNumber:58},this)}L({kinds:[`dimensions`],Page:K0,Inline:q0});var J0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/render/core/internal-api-token.tsx`;function Y0(){let e=crypto.getRandomValues(new Uint8Array(32)),t=``;for(let n of e)t+=String.fromCharCode(n);return btoa(t).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=+$/,``)}function X0({label:e}){let{t}=l(),[n,r]=(0,B.useState)([]),[i,a]=(0,B.useState)(``),[o,s]=(0,B.useState)(null),[c,u]=(0,B.useState)(!1);function d(){Tr().then(e=>e.ok&&r(e.data))}(0,B.useEffect)(d,[]);async function f(){if(!i.trim())return;u(!0);let e=Y0(),n=await Dr(i.trim(),e);u(!1),n.ok?(s(e),a(``),d()):be.error(t(`auth.genericError`))}async function p(e){window.confirm(t(`auth.tokenConfirmRevoke`))&&((await gr(e)).ok?d():be.error(t(`auth.genericError`)))}return(0,X.jsxDEV)(`div`,{children:[(0,X.jsxDEV)(`h2`,{className:`mb-2 text-sm font-semibold uppercase tracking-wide text-muted`,children:t(e||`auth.tokensTitle`)},void 0,!1,{fileName:J0,lineNumber:64,columnNumber:7},this),o&&(0,X.jsxDEV)(`div`,{className:`mb-3 rounded-xl border border-accent/40 bg-accent/10 px-4 py-3 text-sm text-accent break-all`,children:[t(`auth.tokenCreatedOnce`),` `,(0,X.jsxDEV)(`code`,{children:o},void 0,!1,{fileName:J0,lineNumber:67,columnNumber:40},this)]},void 0,!0,{fileName:J0,lineNumber:66,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`mb-3 flex gap-2`,children:[(0,X.jsxDEV)(Te,{placeholder:t(`auth.tokenNamePlaceholder`),value:i,onChange:e=>a(e.target.value)},void 0,!1,{fileName:J0,lineNumber:71,columnNumber:9},this),(0,X.jsxDEV)(T,{type:`button`,disabled:c||!i.trim(),onClick:f,children:t(`auth.tokenCreate`)},void 0,!1,{fileName:J0,lineNumber:72,columnNumber:9},this)]},void 0,!0,{fileName:J0,lineNumber:70,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-2`,children:n.map(e=>(0,X.jsxDEV)(Nr,{className:`flex items-center gap-4 px-4 py-3`,children:[(0,X.jsxDEV)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxDEV)(`div`,{className:`font-semibold text-text`,children:e.name},void 0,!1,{fileName:J0,lineNumber:80,columnNumber:15},this),(0,X.jsxDEV)(`div`,{className:`text-xs text-muted`,children:[e.createdAt,` `,e.lastUsedAt?`· last used ${e.lastUsedAt}`:``]},void 0,!0,{fileName:J0,lineNumber:81,columnNumber:15},this)]},void 0,!0,{fileName:J0,lineNumber:79,columnNumber:13},this),(0,X.jsxDEV)(T,{variant:`ghost`,size:`sm`,type:`button`,onClick:()=>p(e.id),className:`shrink-0 border border-danger/40 text-danger hover:bg-danger/10 hover:text-danger`,children:t(`auth.tokenRevoke`)},void 0,!1,{fileName:J0,lineNumber:85,columnNumber:13},this)]},e.id,!0,{fileName:J0,lineNumber:78,columnNumber:11},this))},void 0,!1,{fileName:J0,lineNumber:76,columnNumber:7},this)]},void 0,!0,{fileName:J0,lineNumber:63,columnNumber:5},this)}L({kinds:[`internalApiToken`],layout:`block`,Page:X0});var Z0=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/LoginPage.tsx`,Q0=[Yn.string({key:`login`,label:`auth.login`,required:!0}),Yn.password({key:`password`,label:`auth.password`,required:!0})];function $0(){let{t:e}=l(),{values:t,bridge:n}=Nn({fm:ur(Q0),mode:`edit`,recordCtx:{vault:``,module:`auth`,recordId:`login`},initial:{login:``,password:``}}),[r,i]=(0,B.useState)(null),[a,o]=(0,B.useState)(!1);async function s(n){n.preventDefault(),o(!0),i(null);let r=await Or(t.login,t.password);if(o(!1),!r.ok){i(r.status===401?e(`auth.invalidCredentials`):e(`auth.genericError`));return}window.location.href=`/`}return(0,X.jsxDEV)(`div`,{className:`flex min-h-dvh items-center justify-center bg-bg px-4`,children:(0,X.jsxDEV)(`form`,{onSubmit:s,className:`w-full max-w-sm rounded-2xl border border-border bg-card p-6`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-6 text-xl font-bold text-text`,children:e(`auth.loginTitle`)},void 0,!1,{fileName:Z0,lineNumber:46,columnNumber:9},this),r&&(0,X.jsxDEV)(`div`,{className:`mb-4 rounded-lg border border-danger/40 bg-danger/10 px-3 py-2 text-sm text-danger`,children:r},void 0,!1,{fileName:Z0,lineNumber:47,columnNumber:19},this),(0,X.jsxDEV)(`div`,{className:`mb-5 flex flex-col gap-3`,children:(0,X.jsxDEV)(In,{items:Q0,ctx:{bridge:n}},void 0,!1,{fileName:Z0,lineNumber:49,columnNumber:11},this)},void 0,!1,{fileName:Z0,lineNumber:48,columnNumber:9},this),(0,X.jsxDEV)(T,{type:`submit`,disabled:a,className:`w-full`,children:e(`auth.signIn`)},void 0,!1,{fileName:Z0,lineNumber:51,columnNumber:9},this)]},void 0,!0,{fileName:Z0,lineNumber:45,columnNumber:7},this)},void 0,!1,{fileName:Z0,lineNumber:44,columnNumber:5},this)}var e2=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/SetupPage.tsx`,t2=[Yn.string({key:`displayName`,label:`auth.displayName`,required:!0}),Yn.string({key:`login`,label:`auth.login`,required:!0}),Yn.password({key:`password`,label:`auth.password`,required:!0})];function n2(){let{t:e}=l(),{values:t,bridge:n}=Nn({fm:ur(t2),mode:`edit`,recordCtx:{vault:``,module:`auth`,recordId:`setup`},initial:{displayName:``,login:``,password:``}}),[r,i]=(0,B.useState)(null),[a,o]=(0,B.useState)(!1);async function s(n){n.preventDefault(),o(!0),i(null);let r=await Er(t.login,t.password,t.displayName);if(o(!1),!r.ok){i(e(`auth.genericError`));return}window.location.href=`/`}return(0,X.jsxDEV)(`div`,{className:`flex min-h-dvh items-center justify-center bg-bg px-4`,children:(0,X.jsxDEV)(`form`,{onSubmit:s,className:`w-full max-w-sm rounded-2xl border border-border bg-card p-6`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-6 text-xl font-bold text-text`,children:e(`auth.setupTitle`)},void 0,!1,{fileName:e2,lineNumber:47,columnNumber:9},this),r&&(0,X.jsxDEV)(`div`,{className:`mb-4 rounded-lg border border-danger/40 bg-danger/10 px-3 py-2 text-sm text-danger`,children:r},void 0,!1,{fileName:e2,lineNumber:48,columnNumber:19},this),(0,X.jsxDEV)(`div`,{className:`mb-5 flex flex-col gap-3`,children:(0,X.jsxDEV)(In,{items:t2,ctx:{bridge:n}},void 0,!1,{fileName:e2,lineNumber:50,columnNumber:11},this)},void 0,!1,{fileName:e2,lineNumber:49,columnNumber:9},this),(0,X.jsxDEV)(T,{type:`submit`,disabled:a,className:`w-full`,children:e(`auth.createAccount`)},void 0,!1,{fileName:e2,lineNumber:52,columnNumber:9},this)]},void 0,!0,{fileName:e2,lineNumber:46,columnNumber:7},this)},void 0,!1,{fileName:e2,lineNumber:45,columnNumber:5},this)}var r2=null,i2=null;function a2(){let[e,t]=(0,B.useState)(r2);return(0,B.useEffect)(()=>{if(r2){t(r2);return}let e=!0;return i2??=fetch(`/api/vaults`).then(e=>e.json()).then(e=>r2=new Set(e.map(e=>e.id))),i2.then(n=>e&&t(n)).catch(()=>e&&t(null)),()=>{e=!1}},[]),e}var o2=`coffer-collapsed-vaults`;function s2(){try{let e=localStorage.getItem(o2);return new Set(e?JSON.parse(e):[])}catch{return new Set}}function c2(){let[e,t]=(0,B.useState)(()=>s2());return{collapsed:e,toggle:(0,B.useCallback)(e=>{t(t=>{let n=new Set(t);n.has(e)?n.delete(e):n.add(e);try{localStorage.setItem(o2,JSON.stringify([...n]))}catch{}return n})},[])}}var l2=`rovingFocusGroup.onEntryFocus`,u2={bubbles:!1,cancelable:!0},d2=`RovingFocusGroup`,[f2,p2,m2]=Oe(d2),[h2,g2]=gt(d2,[m2]),[_2,v2]=h2(d2),y2=B.forwardRef((e,t)=>(0,q.jsx)(f2.Provider,{scope:e.__scopeRovingFocusGroup,children:(0,q.jsx)(f2.Slot,{scope:e.__scopeRovingFocusGroup,children:(0,q.jsx)(b2,{...e,ref:t})})}));y2.displayName=d2;var b2=B.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,orientation:r,loop:a=!1,dir:o,currentTabStopId:s,defaultCurrentTabStopId:c,onCurrentTabStopIdChange:l,onEntryFocus:u,preventScrollOnEntryFocus:d=!1,...f}=e,p=B.useRef(null),m=i(t,p),h=Pe(o),[g,_]=_t({prop:s,defaultProp:c??null,onChange:l,caller:d2}),[v,y]=B.useState(!1),b=yt(u),x=p2(n),S=B.useRef(!1),[C,w]=B.useState(0);return B.useEffect(()=>{let e=p.current;if(e)return e.addEventListener(l2,b),()=>e.removeEventListener(l2,b)},[b]),(0,q.jsx)(_2,{scope:n,orientation:r,dir:h,loop:a,currentTabStopId:g,onItemFocus:B.useCallback(e=>_(e),[_]),onItemShiftTab:B.useCallback(()=>y(!0),[]),onFocusableItemAdd:B.useCallback(()=>w(e=>e+1),[]),onFocusableItemRemove:B.useCallback(()=>w(e=>e-1),[]),children:(0,q.jsx)(ft.div,{tabIndex:v||C===0?-1:0,"data-orientation":r,...f,ref:m,style:{outline:`none`,...e.style},onMouseDown:dt(e.onMouseDown,()=>{S.current=!0}),onFocus:dt(e.onFocus,e=>{let t=!S.current;if(e.target===e.currentTarget&&t&&!v){let t=new CustomEvent(l2,u2);if(e.currentTarget.dispatchEvent(t),!t.defaultPrevented){let e=x().filter(e=>e.focusable);E2([e.find(e=>e.active),e.find(e=>e.id===g),...e].filter(Boolean).map(e=>e.ref.current),d)}}S.current=!1}),onBlur:dt(e.onBlur,()=>y(!1))})})}),x2=`RovingFocusGroupItem`,S2=B.forwardRef((e,t)=>{let{__scopeRovingFocusGroup:n,focusable:r=!0,active:i=!1,tabStopId:a,children:o,...s}=e,c=Rt(),l=a||c,u=v2(x2,n),d=u.currentTabStopId===l,f=p2(n),{onFocusableItemAdd:p,onFocusableItemRemove:m,currentTabStopId:h}=u;return B.useEffect(()=>{if(r)return p(),()=>m()},[r,p,m]),(0,q.jsx)(f2.ItemSlot,{scope:n,id:l,focusable:r,active:i,children:(0,q.jsx)(ft.span,{tabIndex:d?0:-1,"data-orientation":u.orientation,...s,ref:t,onMouseDown:dt(e.onMouseDown,e=>{r?u.onItemFocus(l):e.preventDefault()}),onFocus:dt(e.onFocus,()=>u.onItemFocus(l)),onKeyDown:dt(e.onKeyDown,e=>{if(e.key===`Tab`&&e.shiftKey){u.onItemShiftTab();return}if(e.target!==e.currentTarget)return;let t=T2(e,u.orientation,u.dir);if(t!==void 0){if(e.metaKey||e.ctrlKey||e.altKey||e.shiftKey)return;e.preventDefault();let n=f().filter(e=>e.focusable).map(e=>e.ref.current);if(t===`last`)n.reverse();else if(t===`prev`||t===`next`){t===`prev`&&n.reverse();let r=n.indexOf(e.currentTarget);n=u.loop?D2(n,r+1):n.slice(r+1)}setTimeout(()=>E2(n))}}),children:typeof o==`function`?o({isCurrentTabStop:d,hasTabStop:h!=null}):o})})});S2.displayName=x2;var C2={ArrowLeft:`prev`,ArrowUp:`prev`,ArrowRight:`next`,ArrowDown:`next`,PageUp:`first`,Home:`first`,PageDown:`last`,End:`last`};function w2(e,t){return t===`rtl`?e===`ArrowLeft`?`ArrowRight`:e===`ArrowRight`?`ArrowLeft`:e:e}function T2(e,t,n){let r=w2(e.key,n);if(!(t===`vertical`&&[`ArrowLeft`,`ArrowRight`].includes(r))&&!(t===`horizontal`&&[`ArrowUp`,`ArrowDown`].includes(r)))return C2[r]}function E2(e,t=!1){let n=document.activeElement;for(let r of e)if(r===n||(r.focus({preventScroll:t}),document.activeElement!==n))return}function D2(e,t){return e.map((n,r)=>e[(t+r)%e.length])}var O2=y2,k2=S2,A2=[`Enter`,` `],j2=[`ArrowDown`,`PageUp`,`Home`],M2=[`ArrowUp`,`PageDown`,`End`],N2=[...j2,...M2],P2={ltr:[...A2,`ArrowRight`],rtl:[...A2,`ArrowLeft`]},F2={ltr:[`ArrowLeft`],rtl:[`ArrowRight`]},I2=`Menu`,[L2,R2,z2]=Oe(I2),[B2,V2]=gt(I2,[z2,Lt,g2]),H2=Lt(),U2=g2(),[W2,G2]=B2(I2),[K2,q2]=B2(I2),J2=e=>{let{__scopeMenu:t,open:n=!1,children:r,dir:i,onOpenChange:a,modal:o=!0}=e,s=H2(t),[c,l]=B.useState(null),u=B.useRef(!1),d=yt(a),f=Pe(i);return B.useEffect(()=>{let e=()=>{u.current=!0,document.addEventListener(`pointerdown`,t,{capture:!0,once:!0}),document.addEventListener(`pointermove`,t,{capture:!0,once:!0})},t=()=>u.current=!1;return document.addEventListener(`keydown`,e,{capture:!0}),()=>{document.removeEventListener(`keydown`,e,{capture:!0}),document.removeEventListener(`pointerdown`,t,{capture:!0}),document.removeEventListener(`pointermove`,t,{capture:!0})}},[]),(0,q.jsx)(kt,{...s,children:(0,q.jsx)(W2,{scope:t,open:n,onOpenChange:d,content:c,onContentChange:l,children:(0,q.jsx)(K2,{scope:t,onClose:B.useCallback(()=>d(!1),[d]),isUsingKeyboardRef:u,dir:f,modal:o,children:r})})})};J2.displayName=I2;var Y2=`MenuAnchor`,X2=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=H2(n);return(0,q.jsx)(Mt,{...i,...r,ref:t})});X2.displayName=Y2;var Z2=`MenuPortal`,[Q2,$2]=B2(Z2,{forceMount:void 0}),e4=e=>{let{__scopeMenu:t,forceMount:n,children:r,container:i}=e,a=G2(Z2,t);return(0,q.jsx)(Q2,{scope:t,forceMount:n,children:(0,q.jsx)(Ot,{present:n||a.open,children:(0,q.jsx)(xt,{asChild:!0,container:i,children:r})})})};e4.displayName=Z2;var t4=`MenuContent`,[n4,r4]=B2(t4),i4=B.forwardRef((e,t)=>{let n=$2(t4,e.__scopeMenu),{forceMount:r=n.forceMount,...i}=e,a=G2(t4,e.__scopeMenu),o=q2(t4,e.__scopeMenu);return(0,q.jsx)(L2.Provider,{scope:e.__scopeMenu,children:(0,q.jsx)(Ot,{present:r||a.open,children:(0,q.jsx)(L2.Slot,{scope:e.__scopeMenu,children:o.modal?(0,q.jsx)(a4,{...i,ref:t}):(0,q.jsx)(o4,{...i,ref:t})})})})}),a4=B.forwardRef((e,t)=>{let n=G2(t4,e.__scopeMenu),r=B.useRef(null),a=i(t,r);return B.useEffect(()=>{let e=r.current;if(e)return Pt(e)},[]),(0,q.jsx)(c4,{...e,ref:a,trapFocus:n.open,disableOutsidePointerEvents:n.open,disableOutsideScroll:!0,onFocusOutside:dt(e.onFocusOutside,e=>e.preventDefault(),{checkForDefaultPrevented:!1}),onDismiss:()=>n.onOpenChange(!1)})}),o4=B.forwardRef((e,t)=>{let n=G2(t4,e.__scopeMenu);return(0,q.jsx)(c4,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>n.onOpenChange(!1)})}),s4=k(`MenuContent.ScrollLock`),c4=B.forwardRef((e,t)=>{let{__scopeMenu:n,loop:r=!1,trapFocus:a,onOpenAutoFocus:o,onCloseAutoFocus:s,disableOutsidePointerEvents:c,onEntryFocus:l,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:p,onDismiss:m,disableOutsideScroll:h,...g}=e,_=G2(t4,n),v=q2(t4,n),y=H2(n),b=U2(n),x=R2(n),[S,C]=B.useState(null),w=B.useRef(null),T=i(t,w,_.onContentChange),E=B.useRef(0),D=B.useRef(``),O=B.useRef(0),k=B.useRef(null),A=B.useRef(`right`),j=B.useRef(0),M=h?jt:B.Fragment,N=h?{as:s4,allowPinchZoom:!0}:void 0,P=e=>{let t=D.current+e,n=x().filter(e=>!e.disabled),r=document.activeElement,i=n.find(e=>e.ref.current===r)?.textValue,a=K4(n.map(e=>e.textValue),t,i),o=n.find(e=>e.textValue===a)?.ref.current;(function e(t){D.current=t,window.clearTimeout(E.current),t!==``&&(E.current=window.setTimeout(()=>e(``),1e3))})(t),o&&setTimeout(()=>o.focus())};B.useEffect(()=>()=>window.clearTimeout(E.current),[]),St();let F=B.useCallback(e=>A.current===k.current?.side&&J4(e,k.current?.area),[]);return(0,q.jsx)(n4,{scope:n,searchRef:D,onItemEnter:B.useCallback(e=>{F(e)&&e.preventDefault()},[F]),onItemLeave:B.useCallback(e=>{F(e)||(w.current?.focus(),C(null))},[F]),onTriggerLeave:B.useCallback(e=>{F(e)&&e.preventDefault()},[F]),pointerGraceTimerRef:O,onPointerGraceIntentChange:B.useCallback(e=>{k.current=e},[]),children:(0,q.jsx)(M,{...N,children:(0,q.jsx)(Bt,{asChild:!0,trapped:a,onMountAutoFocus:dt(o,e=>{e.preventDefault(),w.current?.focus({preventScroll:!0})}),onUnmountAutoFocus:s,children:(0,q.jsx)(zt,{asChild:!0,disableOutsidePointerEvents:c,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:f,onInteractOutside:p,onDismiss:m,children:(0,q.jsx)(O2,{asChild:!0,...b,dir:v.dir,orientation:`vertical`,loop:r,currentTabStopId:S,onCurrentTabStopIdChange:C,onEntryFocus:dt(l,e=>{v.isUsingKeyboardRef.current||e.preventDefault()}),preventScrollOnEntryFocus:!0,children:(0,q.jsx)(Ct,{role:`menu`,"aria-orientation":`vertical`,"data-state":V4(_.open),"data-radix-menu-content":``,dir:v.dir,...y,...g,ref:T,style:{outline:`none`,...g.style},onKeyDown:dt(g.onKeyDown,e=>{let t=e.target.closest(`[data-radix-menu-content]`)===e.currentTarget,n=e.ctrlKey||e.altKey||e.metaKey,r=e.key.length===1;t&&(e.key===`Tab`&&e.preventDefault(),!n&&r&&P(e.key));let i=w.current;if(e.target!==i||!N2.includes(e.key))return;e.preventDefault();let a=x().filter(e=>!e.disabled).map(e=>e.ref.current);M2.includes(e.key)&&a.reverse(),W4(a)}),onBlur:dt(e.onBlur,e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(E.current),D.current=``)}),onPointerMove:dt(e.onPointerMove,Y4(e=>{let t=e.target,n=j.current!==e.clientX;e.currentTarget.contains(t)&&n&&(A.current=e.clientX>j.current?`right`:`left`,j.current=e.clientX)}))})})})})})})});i4.displayName=t4;var l4=`MenuGroup`,u4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,q.jsx)(ft.div,{role:`group`,...r,ref:t})});u4.displayName=l4;var d4=`MenuLabel`,f4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,q.jsx)(ft.div,{...r,ref:t})});f4.displayName=d4;var p4=`MenuItem`,m4=`menu.itemSelect`,h4=B.forwardRef((e,t)=>{let{disabled:n=!1,onSelect:r,...a}=e,o=B.useRef(null),s=q2(p4,e.__scopeMenu),c=r4(p4,e.__scopeMenu),l=i(t,o),u=B.useRef(!1),d=()=>{let e=o.current;if(!n&&e){let t=new CustomEvent(m4,{bubbles:!0,cancelable:!0});e.addEventListener(m4,e=>r?.(e),{once:!0}),ut(e,t),t.defaultPrevented?u.current=!1:s.onClose()}};return(0,q.jsx)(g4,{...a,ref:l,disabled:n,onClick:dt(e.onClick,d),onPointerDown:t=>{e.onPointerDown?.(t),u.current=!0},onPointerUp:dt(e.onPointerUp,e=>{u.current||e.currentTarget?.click()}),onKeyDown:dt(e.onKeyDown,e=>{let t=c.searchRef.current!==``;n||t&&e.key===` `||A2.includes(e.key)&&(e.currentTarget.click(),e.preventDefault())})})});h4.displayName=p4;var g4=B.forwardRef((e,t)=>{let{__scopeMenu:n,disabled:r=!1,textValue:a,...o}=e,s=r4(p4,n),c=U2(n),l=B.useRef(null),u=i(t,l),[d,f]=B.useState(!1),[p,m]=B.useState(``);return B.useEffect(()=>{let e=l.current;e&&m((e.textContent??``).trim())},[o.children]),(0,q.jsx)(L2.ItemSlot,{scope:n,disabled:r,textValue:a??p,children:(0,q.jsx)(k2,{asChild:!0,...c,focusable:!r,children:(0,q.jsx)(ft.div,{role:`menuitem`,"data-highlighted":d?``:void 0,"aria-disabled":r||void 0,"data-disabled":r?``:void 0,...o,ref:u,onPointerMove:dt(e.onPointerMove,Y4(e=>{r?s.onItemLeave(e):(s.onItemEnter(e),e.defaultPrevented||e.currentTarget.focus({preventScroll:!0}))})),onPointerLeave:dt(e.onPointerLeave,Y4(e=>s.onItemLeave(e))),onFocus:dt(e.onFocus,()=>f(!0)),onBlur:dt(e.onBlur,()=>f(!1))})})})}),_4=`MenuCheckboxItem`,v4=B.forwardRef((e,t)=>{let{checked:n=!1,onCheckedChange:r,...i}=e;return(0,q.jsx)(E4,{scope:e.__scopeMenu,checked:n,children:(0,q.jsx)(h4,{role:`menuitemcheckbox`,"aria-checked":H4(n)?`mixed`:n,...i,ref:t,"data-state":U4(n),onSelect:dt(i.onSelect,()=>r?.(H4(n)?!0:!n),{checkForDefaultPrevented:!1})})})});v4.displayName=_4;var y4=`MenuRadioGroup`,[b4,x4]=B2(y4,{value:void 0,onValueChange:()=>{}}),S4=B.forwardRef((e,t)=>{let{value:n,onValueChange:r,...i}=e,a=yt(r);return(0,q.jsx)(b4,{scope:e.__scopeMenu,value:n,onValueChange:a,children:(0,q.jsx)(u4,{...i,ref:t})})});S4.displayName=y4;var C4=`MenuRadioItem`,w4=B.forwardRef((e,t)=>{let{value:n,...r}=e,i=x4(C4,e.__scopeMenu),a=n===i.value;return(0,q.jsx)(E4,{scope:e.__scopeMenu,checked:a,children:(0,q.jsx)(h4,{role:`menuitemradio`,"aria-checked":a,...r,ref:t,"data-state":U4(a),onSelect:dt(r.onSelect,()=>i.onValueChange?.(n),{checkForDefaultPrevented:!1})})})});w4.displayName=C4;var T4=`MenuItemIndicator`,[E4,D4]=B2(T4,{checked:!1}),O4=B.forwardRef((e,t)=>{let{__scopeMenu:n,forceMount:r,...i}=e,a=D4(T4,n);return(0,q.jsx)(Ot,{present:r||H4(a.checked)||a.checked===!0,children:(0,q.jsx)(ft.span,{...i,ref:t,"data-state":U4(a.checked)})})});O4.displayName=T4;var k4=`MenuSeparator`,A4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e;return(0,q.jsx)(ft.div,{role:`separator`,"aria-orientation":`horizontal`,...r,ref:t})});A4.displayName=k4;var j4=`MenuArrow`,M4=B.forwardRef((e,t)=>{let{__scopeMenu:n,...r}=e,i=H2(n);return(0,q.jsx)(Ft,{...i,...r,ref:t})});M4.displayName=j4;var N4=`MenuSub`,[P4,F4]=B2(N4),I4=e=>{let{__scopeMenu:t,children:n,open:r=!1,onOpenChange:i}=e,a=G2(N4,t),o=H2(t),[s,c]=B.useState(null),[l,u]=B.useState(null),d=yt(i);return B.useEffect(()=>(a.open===!1&&d(!1),()=>d(!1)),[a.open,d]),(0,q.jsx)(kt,{...o,children:(0,q.jsx)(W2,{scope:t,open:r,onOpenChange:d,content:l,onContentChange:u,children:(0,q.jsx)(P4,{scope:t,contentId:Rt(),triggerId:Rt(),trigger:s,onTriggerChange:c,children:n})})})};I4.displayName=N4;var L4=`MenuSubTrigger`,R4=B.forwardRef((e,t)=>{let n=G2(L4,e.__scopeMenu),r=q2(L4,e.__scopeMenu),i=F4(L4,e.__scopeMenu),a=r4(L4,e.__scopeMenu),o=B.useRef(null),{pointerGraceTimerRef:s,onPointerGraceIntentChange:l}=a,u={__scopeMenu:e.__scopeMenu},d=B.useCallback(()=>{o.current&&window.clearTimeout(o.current),o.current=null},[]);return B.useEffect(()=>d,[d]),B.useEffect(()=>{let e=s.current;return()=>{window.clearTimeout(e),l(null)}},[s,l]),(0,q.jsx)(X2,{asChild:!0,...u,children:(0,q.jsx)(g4,{id:i.triggerId,"aria-haspopup":`menu`,"aria-expanded":n.open,"aria-controls":n.open?i.contentId:void 0,"data-state":V4(n.open),...e,ref:c(t,i.onTriggerChange),onClick:t=>{e.onClick?.(t),!(e.disabled||t.defaultPrevented)&&(t.currentTarget.focus(),n.open||n.onOpenChange(!0))},onPointerMove:dt(e.onPointerMove,Y4(t=>{a.onItemEnter(t),!t.defaultPrevented&&!e.disabled&&!n.open&&!o.current&&(a.onPointerGraceIntentChange(null),o.current=window.setTimeout(()=>{n.onOpenChange(!0),d()},100))})),onPointerLeave:dt(e.onPointerLeave,Y4(e=>{d();let t=n.content?.getBoundingClientRect();if(t){let r=n.content?.dataset.side,i=r===`right`,o=i?-5:5,c=t[i?`left`:`right`],l=t[i?`right`:`left`];a.onPointerGraceIntentChange({area:[{x:e.clientX+o,y:e.clientY},{x:c,y:t.top},{x:l,y:t.top},{x:l,y:t.bottom},{x:c,y:t.bottom}],side:r}),window.clearTimeout(s.current),s.current=window.setTimeout(()=>a.onPointerGraceIntentChange(null),300)}else{if(a.onTriggerLeave(e),e.defaultPrevented)return;a.onPointerGraceIntentChange(null)}})),onKeyDown:dt(e.onKeyDown,t=>{let i=a.searchRef.current!==``;e.disabled||i&&t.key===` `||P2[r.dir].includes(t.key)&&(n.onOpenChange(!0),n.content?.focus(),t.preventDefault())})})})});R4.displayName=L4;var z4=`MenuSubContent`,B4=B.forwardRef((e,t)=>{let n=$2(t4,e.__scopeMenu),{forceMount:r=n.forceMount,align:a=`start`,...o}=e,s=G2(t4,e.__scopeMenu),c=q2(t4,e.__scopeMenu),l=F4(z4,e.__scopeMenu),u=B.useRef(null),d=i(t,u);return(0,q.jsx)(L2.Provider,{scope:e.__scopeMenu,children:(0,q.jsx)(Ot,{present:r||s.open,children:(0,q.jsx)(L2.Slot,{scope:e.__scopeMenu,children:(0,q.jsx)(c4,{id:l.contentId,"aria-labelledby":l.triggerId,...o,ref:d,align:a,side:c.dir===`rtl`?`left`:`right`,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{c.isUsingKeyboardRef.current&&u.current?.focus(),e.preventDefault()},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:dt(e.onFocusOutside,e=>{e.target!==l.trigger&&s.onOpenChange(!1)}),onEscapeKeyDown:dt(e.onEscapeKeyDown,e=>{c.onClose(),e.preventDefault()}),onKeyDown:dt(e.onKeyDown,e=>{let t=e.currentTarget.contains(e.target),n=F2[c.dir].includes(e.key);t&&n&&(s.onOpenChange(!1),l.trigger?.focus(),e.preventDefault())})})})})})});B4.displayName=z4;function V4(e){return e?`open`:`closed`}function H4(e){return e===`indeterminate`}function U4(e){return H4(e)?`indeterminate`:e?`checked`:`unchecked`}function W4(e){let t=document.activeElement;for(let n of e)if(n===t||(n.focus(),document.activeElement!==t))return}function G4(e,t){return e.map((n,r)=>e[(t+r)%e.length])}function K4(e,t,n){let r=t.length>1&&Array.from(t).every(e=>e===t[0])?t[0]:t,i=n?e.indexOf(n):-1,a=G4(e,Math.max(i,0));r.length===1&&(a=a.filter(e=>e!==n));let o=a.find(e=>e.toLowerCase().startsWith(r.toLowerCase()));return o===n?void 0:o}function q4(e,t){let{x:n,y:r}=e,i=!1;for(let e=0,a=t.length-1;e<t.length;a=e++){let o=t[e],s=t[a],c=o.x,l=o.y,u=s.x,d=s.y;l>r!=d>r&&n<(u-c)*(r-l)/(d-l)+c&&(i=!i)}return i}function J4(e,t){return t?q4({x:e.clientX,y:e.clientY},t):!1}function Y4(e){return t=>t.pointerType===`mouse`?e(t):void 0}var X4=J2,Z4=X2,Q4=e4,$4=i4,e3=u4,t3=f4,n3=h4,r3=v4,i3=S4,a3=w4,o3=O4,s3=A4,c3=M4,l3=R4,u3=B4,d3=`DropdownMenu`,[f3,p3]=gt(d3,[V2]),m3=V2(),[h3,g3]=f3(d3),_3=e=>{let{__scopeDropdownMenu:t,children:n,dir:r,open:i,defaultOpen:a,onOpenChange:o,modal:s=!0}=e,c=m3(t),l=B.useRef(null),[u,d]=_t({prop:i,defaultProp:a??!1,onChange:o,caller:d3});return(0,q.jsx)(h3,{scope:t,triggerId:Rt(),triggerRef:l,contentId:Rt(),open:u,onOpenChange:d,onOpenToggle:B.useCallback(()=>d(e=>!e),[d]),modal:s,children:(0,q.jsx)(X4,{...c,open:u,onOpenChange:d,dir:r,modal:s,children:n})})};_3.displayName=d3;var v3=`DropdownMenuTrigger`,y3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,disabled:r=!1,...i}=e,a=g3(v3,n),o=m3(n);return(0,q.jsx)(Z4,{asChild:!0,...o,children:(0,q.jsx)(ft.button,{type:`button`,id:a.triggerId,"aria-haspopup":`menu`,"aria-expanded":a.open,"aria-controls":a.open?a.contentId:void 0,"data-state":a.open?`open`:`closed`,"data-disabled":r?``:void 0,disabled:r,...i,ref:c(t,a.triggerRef),onPointerDown:dt(e.onPointerDown,e=>{!r&&e.button===0&&e.ctrlKey===!1&&(a.onOpenToggle(),a.open||e.preventDefault())}),onKeyDown:dt(e.onKeyDown,e=>{r||([`Enter`,` `].includes(e.key)&&a.onOpenToggle(),e.key===`ArrowDown`&&a.onOpenChange(!0),[`Enter`,` `,`ArrowDown`].includes(e.key)&&e.preventDefault())})})})});y3.displayName=v3;var b3=`DropdownMenuPortal`,x3=e=>{let{__scopeDropdownMenu:t,...n}=e,r=m3(t);return(0,q.jsx)(Q4,{...r,...n})};x3.displayName=b3;var S3=`DropdownMenuContent`,C3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=g3(S3,n),a=m3(n),o=B.useRef(!1);return(0,q.jsx)($4,{id:i.contentId,"aria-labelledby":i.triggerId,...a,...r,ref:t,onCloseAutoFocus:dt(e.onCloseAutoFocus,e=>{o.current||i.triggerRef.current?.focus(),o.current=!1,e.preventDefault()}),onInteractOutside:dt(e.onInteractOutside,e=>{let t=e.detail.originalEvent,n=t.button===0&&t.ctrlKey===!0,r=t.button===2||n;(!i.modal||r)&&(o.current=!0)}),style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});C3.displayName=S3;var w3=`DropdownMenuGroup`,T3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(e3,{...i,...r,ref:t})});T3.displayName=w3;var E3=`DropdownMenuLabel`,D3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(t3,{...i,...r,ref:t})});D3.displayName=E3;var O3=`DropdownMenuItem`,k3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(n3,{...i,...r,ref:t})});k3.displayName=O3;var A3=`DropdownMenuCheckboxItem`,j3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(r3,{...i,...r,ref:t})});j3.displayName=A3;var M3=`DropdownMenuRadioGroup`,N3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(i3,{...i,...r,ref:t})});N3.displayName=M3;var P3=`DropdownMenuRadioItem`,F3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(a3,{...i,...r,ref:t})});F3.displayName=P3;var I3=`DropdownMenuItemIndicator`,L3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(o3,{...i,...r,ref:t})});L3.displayName=I3;var R3=`DropdownMenuSeparator`,z3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(s3,{...i,...r,ref:t})});z3.displayName=R3;var B3=`DropdownMenuArrow`,V3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(c3,{...i,...r,ref:t})});V3.displayName=B3;var H3=`DropdownMenuSubTrigger`,U3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(l3,{...i,...r,ref:t})});U3.displayName=H3;var W3=`DropdownMenuSubContent`,G3=B.forwardRef((e,t)=>{let{__scopeDropdownMenu:n,...r}=e,i=m3(n);return(0,q.jsx)(u3,{...i,...r,ref:t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":`var(--radix-popper-transform-origin)`,"--radix-dropdown-menu-content-available-width":`var(--radix-popper-available-width)`,"--radix-dropdown-menu-content-available-height":`var(--radix-popper-available-height)`,"--radix-dropdown-menu-trigger-width":`var(--radix-popper-anchor-width)`,"--radix-dropdown-menu-trigger-height":`var(--radix-popper-anchor-height)`}})});G3.displayName=W3;var K3=_3,q3=y3,J3=x3,Y3=C3,X3=D3,Z3=k3,Q3=z3,$3=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/components/ui/dropdown-menu.tsx`,e6=K3,t6=q3,n6=B.forwardRef(({className:e,sideOffset:t=4,...n},r)=>(0,X.jsxDEV)(J3,{children:(0,X.jsxDEV)(Y3,{ref:r,sideOffset:t,className:O(`z-50 min-w-40 overflow-hidden rounded-xl border border-border bg-popover p-1 text-popover-foreground shadow-xl`,`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95`,e),...n},void 0,!1,{fileName:$3,lineNumber:15,columnNumber:5},void 0)},void 0,!1,{fileName:$3,lineNumber:14,columnNumber:3},void 0));n6.displayName=Y3.displayName;var r6=B.forwardRef(({className:e,inset:t,...n},r)=>(0,X.jsxDEV)(Z3,{ref:r,className:O(`relative flex cursor-pointer select-none items-center gap-2 rounded-lg px-3 py-2 text-sm outline-none transition-colors`,`focus:bg-elevated focus:text-text data-[disabled]:pointer-events-none data-[disabled]:opacity-50`,t&&`pl-8`,e),...n},void 0,!1,{fileName:$3,lineNumber:33,columnNumber:3},void 0));r6.displayName=Z3.displayName;var i6=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(X3,{ref:n,className:O(`px-3 py-1.5 text-xs font-semibold text-muted-foreground`,e),...t},void 0,!1,{fileName:$3,lineNumber:50,columnNumber:3},void 0));i6.displayName=X3.displayName;var a6=B.forwardRef(({className:e,...t},n)=>(0,X.jsxDEV)(Q3,{ref:n,className:O(`-mx-1 my-1 h-px bg-border`,e),...t},void 0,!1,{fileName:$3,lineNumber:62,columnNumber:3},void 0));a6.displayName=Q3.displayName;var o6=({active:e})=>e?(0,X.jsxDEV)(D,{size:14,className:`ml-auto text-accent`},void 0,!1,{fileName:$3,lineNumber:68,columnNumber:12},void 0):null,s6=`coffer-theme`;function c6(e){return e===`light`||e===`dark`||e===`eink`?e:`auto`}function l6(){try{return c6(localStorage.getItem(s6))}catch{return c6(null)}}function u6(e){if(e===`auto`){delete document.documentElement.dataset.theme;try{localStorage.removeItem(s6)}catch{}}else{document.documentElement.dataset.theme=e;try{localStorage.setItem(s6,e)}catch{}}}function d6(){let[e,t]=(0,B.useState)(()=>l6());return{choice:e,setChoice:(0,B.useCallback)(e=>{u6(e),t(e)},[])}}var f6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/theme/ThemeSwitcher.tsx`,p6=[{value:`auto`,Icon:m,labelKey:`theme.auto`},{value:`light`,Icon:Vc,labelKey:`theme.light`},{value:`dark`,Icon:Rc,labelKey:`theme.dark`},{value:`eink`,Icon:Sc,labelKey:`theme.eink`}];function m6({direction:e=`up`,compact:t=!1}){let{t:n}=l(),{choice:r,setChoice:i}=d6(),a=p6.find(e=>e.value===r)??p6[0],o=a.Icon;return(0,X.jsxDEV)(e6,{children:[(0,X.jsxDEV)(t6,{"aria-label":n(`theme.label`),className:`flex items-center rounded-xl text-sm text-muted outline-none transition-colors hover:bg-elevated hover:text-text focus-visible:ring-2 focus-visible:ring-ring ${t?`w-full flex-col gap-0.5 py-2`:`w-full gap-2 px-3 py-2`}`,children:[(0,X.jsxDEV)(o,{size:t?18:16},void 0,!1,{fileName:f6,lineNumber:35,columnNumber:9},this),t?(0,X.jsxDEV)(`span`,{className:`text-[10px] font-semibold`,children:n(a.labelKey)},void 0,!1,{fileName:f6,lineNumber:37,columnNumber:11},this):(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:n(a.labelKey)},void 0,!1,{fileName:f6,lineNumber:39,columnNumber:11},this)]},void 0,!0,{fileName:f6,lineNumber:29,columnNumber:7},this),(0,X.jsxDEV)(n6,{align:`end`,side:e===`up`?`top`:`bottom`,children:p6.map(e=>{let t=e.Icon;return(0,X.jsxDEV)(r6,{onSelect:()=>i(e.value),className:e.value===r?`text-accent`:``,children:[(0,X.jsxDEV)(t,{size:15},void 0,!1,{fileName:f6,lineNumber:51,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:n(e.labelKey)},void 0,!1,{fileName:f6,lineNumber:52,columnNumber:15},this),(0,X.jsxDEV)(o6,{active:e.value===r},void 0,!1,{fileName:f6,lineNumber:53,columnNumber:15},this)]},e.value,!0,{fileName:f6,lineNumber:46,columnNumber:13},this)})},void 0,!1,{fileName:f6,lineNumber:42,columnNumber:7},this)]},void 0,!0,{fileName:f6,lineNumber:28,columnNumber:5},this)}var h6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/LanguageSwitcher.tsx`,g6=[{code:`uk`,label:`Українська`,short:`UA`},{code:`ru`,label:`Русский`,short:`RU`},{code:`en`,label:`English`,short:`EN`}];function _6({direction:e=`up`,compact:t=!1}){let{i18n:n}=l(),r=g6.find(e=>e.code===n.language)??g6[0];function i(e){n.changeLanguage(e);try{localStorage.setItem(`lang`,e)}catch{}fetch(`/api/plugins/core/settings`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({language:e})}).catch(()=>{})}return(0,X.jsxDEV)(e6,{children:[(0,X.jsxDEV)(t6,{className:`flex items-center rounded-xl text-sm text-muted outline-none transition-colors hover:bg-elevated hover:text-text focus-visible:ring-2 focus-visible:ring-ring ${t?`w-full flex-col gap-0.5 py-2`:`w-full gap-2 px-3 py-2`}`,children:[(0,X.jsxDEV)(_,{size:t?18:16},void 0,!1,{fileName:h6,lineNumber:49,columnNumber:9},this),t?(0,X.jsxDEV)(`span`,{className:`text-[10px] font-semibold`,children:r.short},void 0,!1,{fileName:h6,lineNumber:51,columnNumber:11},this):(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:r.label},void 0,!1,{fileName:h6,lineNumber:54,columnNumber:13},this),(0,X.jsxDEV)(`span`,{className:`text-xs font-semibold text-muted`,children:r.short},void 0,!1,{fileName:h6,lineNumber:55,columnNumber:13},this)]},void 0,!0,{fileName:h6,lineNumber:53,columnNumber:11},this)]},void 0,!0,{fileName:h6,lineNumber:44,columnNumber:7},this),(0,X.jsxDEV)(n6,{align:`end`,side:e===`up`?`top`:`bottom`,children:g6.map(e=>(0,X.jsxDEV)(r6,{onSelect:()=>i(e.code),className:e.code===r.code?`text-accent`:``,children:[(0,X.jsxDEV)(`span`,{className:`flex-1 text-left`,children:e.label},void 0,!1,{fileName:h6,lineNumber:66,columnNumber:13},this),(0,X.jsxDEV)(o6,{active:e.code===r.code},void 0,!1,{fileName:h6,lineNumber:67,columnNumber:13},this)]},e.code,!0,{fileName:h6,lineNumber:61,columnNumber:11},this))},void 0,!1,{fileName:h6,lineNumber:59,columnNumber:7},this)]},void 0,!0,{fileName:h6,lineNumber:43,columnNumber:5},this)}var v6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/nav/SidebarNav.tsx`;function y6({onSearchOpen:e}){let{t}=l(),n=a2(),{collapsed:r,toggle:i}=c2(),a=Tn();return(0,X.jsxDEV)(`aside`,{className:`hidden nav:flex flex-col w-52 shrink-0 bg-surface border-r border-border h-dvh fixed top-0 left-0 z-30`,children:[(0,X.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto px-3 py-4`,children:[(0,X.jsxDEV)(te,{to:`/`,className:`flex items-center gap-2 mb-4 px-2 group`,title:t(`nav.home`),children:[(0,X.jsxDEV)(`div`,{className:`w-7 h-7 bg-accent rounded-lg flex items-center justify-center text-white text-xs font-bold`,children:`S`},void 0,!1,{fileName:v6,lineNumber:24,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`font-bold text-text group-hover:text-accent transition-colors`,children:`Coffer`},void 0,!1,{fileName:v6,lineNumber:27,columnNumber:11},this)]},void 0,!0,{fileName:v6,lineNumber:23,columnNumber:9},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:e,"aria-label":t(`search.title`),title:t(`search.title`),className:`flex w-full items-center gap-2 px-3 py-1.5 mb-3 rounded-lg text-sm text-muted bg-elevated border border-border hover:border-accent hover:text-text transition-colors`,children:[(0,X.jsxDEV)(Bc,{size:14,className:`shrink-0`},void 0,!1,{fileName:v6,lineNumber:36,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`flex-1 text-left truncate`,children:t(`search.title`)},void 0,!1,{fileName:v6,lineNumber:37,columnNumber:11},this),(0,X.jsxDEV)(`kbd`,{className:`hidden lg:inline-flex items-center gap-0.5 text-[10px] text-muted border border-border rounded px-1`,children:`⌘K`},void 0,!1,{fileName:v6,lineNumber:38,columnNumber:11},this)]},void 0,!0,{fileName:v6,lineNumber:29,columnNumber:9},this),a.filter(e=>!n||n.has(e.meta.id)).map(e=>{let n=r.has(e.meta.id);return(0,X.jsxDEV)(`div`,{className:`mb-0.5`,children:[(0,X.jsxDEV)(`button`,{type:`button`,onClick:()=>i(e.meta.id),className:`flex w-full items-center justify-between px-3 py-1.5 rounded-lg text-[10px] font-semibold text-muted uppercase tracking-widest hover:bg-elevated hover:text-text transition-colors`,children:[(0,X.jsxDEV)(`span`,{className:`truncate`,children:t(e.meta.label)},void 0,!1,{fileName:v6,lineNumber:53,columnNumber:19},this),(0,X.jsxDEV)(Ie,{size:13,className:`shrink-0 transition-transform ${n?`-rotate-90`:``}`},void 0,!1,{fileName:v6,lineNumber:54,columnNumber:19},this)]},void 0,!0,{fileName:v6,lineNumber:48,columnNumber:17},this),!n&&e.modules.filter(e=>e.standalone!==!1).map(e=>(0,X.jsxDEV)(te,{to:`/${e.vault}/${e.module}`,className:({isActive:e})=>`flex items-center gap-2.5 px-3 py-2 rounded-lg text-sm mb-px transition-colors `+(e?`bg-accent/15 text-accent font-medium`:`text-muted hover:bg-elevated hover:text-text`),children:[(0,X.jsxDEV)(v,{name:e.icon,size:17,className:`shrink-0`},void 0,!1,{fileName:v6,lineNumber:73,columnNumber:25},this),t(e.label)]},e.module,!0,{fileName:v6,lineNumber:63,columnNumber:23},this))]},e.meta.id,!0,{fileName:v6,lineNumber:47,columnNumber:15},this)})]},void 0,!0,{fileName:v6,lineNumber:22,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`border-t border-border p-2 space-y-1`,children:[(0,X.jsxDEV)(_6,{direction:`up`},void 0,!1,{fileName:v6,lineNumber:83,columnNumber:9},this),(0,X.jsxDEV)(m6,{},void 0,!1,{fileName:v6,lineNumber:84,columnNumber:9},this),(0,X.jsxDEV)(te,{to:`/settings`,className:({isActive:e})=>`flex items-center gap-2.5 px-3 py-2 rounded-lg text-sm transition-colors `+(e?`bg-accent/15 text-accent font-medium`:`text-muted hover:bg-elevated hover:text-text`),children:[(0,X.jsxDEV)(v,{name:`lucide:settings`,size:17,className:`shrink-0`},void 0,!1,{fileName:v6,lineNumber:92,columnNumber:11},this),` `,t(`nav.settings`)]},void 0,!0,{fileName:v6,lineNumber:85,columnNumber:9},this)]},void 0,!0,{fileName:v6,lineNumber:82,columnNumber:7},this)]},void 0,!0,{fileName:v6,lineNumber:21,columnNumber:5},this)}var b6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/nav/BottomNav.tsx`;function x6({onSearchOpen:e}){let{t}=l();return(0,X.jsxDEV)(`nav`,{className:`nav:hidden fixed bottom-0 left-0 right-0 z-40 border-t border-border bg-surface pb-safe`,children:(0,X.jsxDEV)(`div`,{className:`flex items-stretch`,children:[(0,X.jsxDEV)(te,{to:`/`,end:!0,className:({isActive:e})=>`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors `+(e?`text-accent`:`text-muted hover:text-text`),children:[(0,X.jsxDEV)(b,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:22,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.home`)},void 0,!1,{fileName:b6,lineNumber:23,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:14,columnNumber:9},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:e,className:`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors text-muted hover:text-text`,children:[(0,X.jsxDEV)(Bc,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:30,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.search`)},void 0,!1,{fileName:b6,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:25,columnNumber:9},this),(0,X.jsxDEV)(te,{to:`/browse`,className:({isActive:e})=>`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors `+(e?`text-accent`:`text-muted hover:text-text`),children:[(0,X.jsxDEV)(Pc,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:40,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.browse`)},void 0,!1,{fileName:b6,lineNumber:41,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:33,columnNumber:9},this),(0,X.jsxDEV)(te,{to:`/settings`,className:({isActive:e})=>`flex flex-1 flex-col items-center gap-0.5 py-2 transition-colors `+(e?`text-accent`:`text-muted hover:text-text`),children:[(0,X.jsxDEV)(w,{size:20,className:`shrink-0`},void 0,!1,{fileName:b6,lineNumber:50,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-[10px] font-medium`,children:t(`nav.settings`)},void 0,!1,{fileName:b6,lineNumber:51,columnNumber:11},this)]},void 0,!0,{fileName:b6,lineNumber:43,columnNumber:9},this)]},void 0,!0,{fileName:b6,lineNumber:13,columnNumber:7},this)},void 0,!1,{fileName:b6,lineNumber:12,columnNumber:5},this)}var S6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/nav/CommandPalette.tsx`;function C6({open:e,onClose:t}){let{t:n}=l(),r=N(),i=a2(),[a,o]=(0,B.useState)(``),[s,c]=(0,B.useState)([]),[u,f]=(0,B.useState)(!1),[p,m]=(0,B.useState)(0),h=(0,B.useRef)(null);(0,B.useEffect)(()=>{e&&(o(``),c([]),m(0),setTimeout(()=>h.current?.focus(),50))},[e]),(0,B.useEffect)(()=>{if(a.length<2){c([]);return}let e=setTimeout(async()=>{f(!0);try{let e=await fetch(`/api/search?q=${encodeURIComponent(a)}&limit=15`);c(e.ok?await e.json():[])}catch{c([])}finally{f(!1)}},250);return()=>clearTimeout(e)},[a]);let g=Tn().filter(e=>!i||i.has(e.meta.id)).flatMap(e=>e.modules.filter(e=>e.standalone!==!1).map(t=>({v:e,m:t}))),_=g.filter(({m:e})=>!a||n(e.label).toLowerCase().includes(a.toLowerCase())).map(({v:e,m:t})=>({kind:`module`,label:n(t.label),sub:n(e.meta.label),icon:t.icon,to:`/${t.vault}/${t.module}`})),y=s.map(e=>{let t=g.find(({m:t})=>t.vault===e.vault&&t.module===e.type)?.m;return{kind:`record`,label:e.label||e.id,sub:e.snippet===e.label?t?n(t.label):e.type:e.snippet,icon:t?.icon,to:`/${e.vault}/${e.type}/${e.id}`}}),b=a.length>=2?[...y,..._.slice(0,5)]:_,x=b.length>0?Math.min(p,b.length-1):0;function S(e){r(e.to),t()}function C(e){if(e.key===`Escape`){t();return}e.key===`ArrowDown`&&(e.preventDefault(),m(e=>Math.min(e+1,b.length-1))),e.key===`ArrowUp`&&(e.preventDefault(),m(e=>Math.max(e-1,0))),e.key===`Enter`&&b[x]&&S(b[x])}if(!e)return null;let w=a.length<2,T=a.length>=2&&y.length>0,E=a.length>=2&&_.length>0,D=b.length===0&&!u;return(0,X.jsxDEV)(`div`,{className:`fixed inset-0 z-50 flex items-start justify-center pt-[10vh] px-4`,onClick:e=>{e.target===e.currentTarget&&t()},children:[(0,X.jsxDEV)(`div`,{className:`absolute inset-0 bg-bg/70 backdrop-blur-sm`,onClick:t},void 0,!1,{fileName:S6,lineNumber:139,columnNumber:7},this),(0,X.jsxDEV)(`div`,{role:`dialog`,"aria-label":n(`search.title`),className:`relative w-full max-w-lg bg-surface border border-border rounded-xl shadow-xl overflow-hidden`,children:[(0,X.jsxDEV)(`div`,{className:`px-4 pt-3 pb-1 text-[10px] font-semibold text-muted uppercase tracking-wider`,children:n(`search.title`)},void 0,!1,{fileName:S6,lineNumber:148,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex items-center gap-2 px-4 py-3 border-b border-border`,children:[(0,X.jsxDEV)(Bc,{size:16,className:`text-muted shrink-0`},void 0,!1,{fileName:S6,lineNumber:153,columnNumber:11},this),(0,X.jsxDEV)(`input`,{ref:h,type:`text`,value:a,onChange:e=>{o(e.target.value),m(0)},onKeyDown:C,placeholder:n(`search.placeholder`),"aria-label":n(`search.title`),className:`flex-1 bg-transparent text-text placeholder:text-muted outline-none text-sm`},void 0,!1,{fileName:S6,lineNumber:154,columnNumber:11},this),u&&(0,X.jsxDEV)(`span`,{className:`text-xs text-muted`,children:n(`common.loading`)},void 0,!1,{fileName:S6,lineNumber:167,columnNumber:23},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:t,className:`text-muted hover:text-text transition-colors`,children:(0,X.jsxDEV)(d,{size:16},void 0,!1,{fileName:S6,lineNumber:169,columnNumber:13},this)},void 0,!1,{fileName:S6,lineNumber:168,columnNumber:11},this)]},void 0,!0,{fileName:S6,lineNumber:152,columnNumber:9},this),(0,X.jsxDEV)(`ul`,{className:`max-h-80 overflow-y-auto py-1`,children:[D&&a.length>=2&&(0,X.jsxDEV)(`li`,{className:`px-4 py-6 text-center text-muted text-sm`,children:n(`search.noResults`)},void 0,!1,{fileName:S6,lineNumber:176,columnNumber:13},this),w&&(0,X.jsxDEV)(`li`,{className:`px-4 py-1.5 text-[10px] font-semibold text-muted uppercase tracking-wider`,children:n(`search.allModules`)},void 0,!1,{fileName:S6,lineNumber:179,columnNumber:13},this),T&&(0,X.jsxDEV)(`li`,{className:`px-4 py-1.5 text-[10px] font-semibold text-muted uppercase tracking-wider`,children:n(`search.results`)},void 0,!1,{fileName:S6,lineNumber:184,columnNumber:13},this),b.map((e,t)=>(0,X.jsxDEV)(`li`,{children:[a.length>=2&&t>=y.length&&t===y.length&&E&&(0,X.jsxDEV)(`div`,{className:`px-4 py-1.5 text-[10px] font-semibold text-muted uppercase tracking-wider border-t border-border mt-1 pt-2`,children:n(`search.allModules`)},void 0,!1,{fileName:S6,lineNumber:194,columnNumber:19},this),(0,X.jsxDEV)(`button`,{type:`button`,onClick:()=>S(e),onMouseEnter:()=>m(t),className:`w-full flex items-center gap-3 px-4 py-2 text-left transition-colors ${t===x?`bg-accent/15 text-text`:`text-text hover:bg-elevated`}`,children:[e.icon&&(0,X.jsxDEV)(v,{name:e.icon,size:16,className:`shrink-0 text-muted`},void 0,!1,{fileName:S6,lineNumber:206,columnNumber:33},this),(0,X.jsxDEV)(`span`,{className:`flex-1 min-w-0`,children:[(0,X.jsxDEV)(`span`,{className:`block text-sm font-medium truncate`,children:e.label},void 0,!1,{fileName:S6,lineNumber:208,columnNumber:21},this),e.sub&&(0,X.jsxDEV)(`span`,{className:`block text-xs text-muted truncate`,children:e.sub},void 0,!1,{fileName:S6,lineNumber:209,columnNumber:34},this)]},void 0,!0,{fileName:S6,lineNumber:207,columnNumber:19},this)]},void 0,!0,{fileName:S6,lineNumber:198,columnNumber:17},this)]},`${e.to}-${t}`,!0,{fileName:S6,lineNumber:192,columnNumber:15},this))]},void 0,!0,{fileName:S6,lineNumber:174,columnNumber:9},this)]},void 0,!0,{fileName:S6,lineNumber:142,columnNumber:7},this)]},void 0,!0,{fileName:S6,lineNumber:132,columnNumber:5},this)}var w6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/Dashboard.tsx`;function T6(){let[e,t]=(0,B.useState)({});return(0,B.useEffect)(()=>{let e=new AbortController;return fetch(`/api/counts`,{signal:e.signal}).then(e=>e.ok?e.json():{}).then(t).catch(()=>{}),()=>e.abort()},[]),e}function E6(){let{t:e}=l(),t=a2(),n=T6(),r=Tn().filter(e=>!t||t.has(e.meta.id));return(0,X.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,X.jsxDEV)(`div`,{className:`mx-auto max-w-5xl px-5 py-8 md:px-8`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-6 text-[28px] font-bold text-text`,children:e(`dashboard.title`)},void 0,!1,{fileName:w6,lineNumber:31,columnNumber:9},this),r.length===0?(0,X.jsxDEV)(`p`,{className:`text-muted`,children:e(`dashboard.empty`)},void 0,!1,{fileName:w6,lineNumber:33,columnNumber:11},this):(0,X.jsxDEV)(`div`,{className:`grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3`,children:r.map(t=>{let r=t.modules.filter(e=>e.standalone!==!1);return r.length===0?null:(0,X.jsxDEV)(`section`,{className:`rounded-2xl border border-border bg-surface p-4`,children:[(0,X.jsxDEV)(`h2`,{className:`mb-3 flex items-center gap-2 text-sm font-semibold uppercase tracking-wide text-muted`,children:[t.meta.icon&&(0,X.jsxDEV)(v,{name:t.meta.icon,size:16,className:`shrink-0`},void 0,!1,{fileName:w6,lineNumber:42,columnNumber:37},this),e(t.meta.label)]},void 0,!0,{fileName:w6,lineNumber:41,columnNumber:19},this),(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-1`,children:r.map(t=>(0,X.jsxDEV)(te,{to:`/${t.vault}/${t.module}`,className:`flex items-center gap-2.5 rounded-lg px-2.5 py-2 text-sm text-text transition-colors hover:bg-elevated`,children:[(0,X.jsxDEV)(v,{name:t.icon,size:17,className:`shrink-0 text-muted`},void 0,!1,{fileName:w6,lineNumber:52,columnNumber:25},this),(0,X.jsxDEV)(`span`,{className:`flex-1 truncate`,children:e(t.label)},void 0,!1,{fileName:w6,lineNumber:53,columnNumber:25},this),(0,X.jsxDEV)(`span`,{className:`shrink-0 rounded-full bg-accent/15 px-2 py-0.5 text-xs font-medium tabular-nums text-accent`,children:n[`${t.vault}/${t.module}`]??`·`},void 0,!1,{fileName:w6,lineNumber:54,columnNumber:25},this)]},t.module,!0,{fileName:w6,lineNumber:47,columnNumber:23},this))},void 0,!1,{fileName:w6,lineNumber:45,columnNumber:19},this)]},t.meta.id,!0,{fileName:w6,lineNumber:40,columnNumber:17},this)})},void 0,!1,{fileName:w6,lineNumber:35,columnNumber:11},this)]},void 0,!0,{fileName:w6,lineNumber:30,columnNumber:7},this)},void 0,!1,{fileName:w6,lineNumber:29,columnNumber:5},this)}var D6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/Browse.tsx`;function O6(){let{t:e}=l(),t=a2(),n=Tn().filter(e=>!t||t.has(e.meta.id));return(0,X.jsxDEV)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,X.jsxDEV)(`div`,{className:`mx-auto max-w-2xl px-4 py-6`,children:[(0,X.jsxDEV)(`h1`,{className:`mb-5 text-2xl font-bold text-text`,children:e(`nav.browse`)},void 0,!1,{fileName:D6,lineNumber:17,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex flex-col gap-6`,children:n.map(t=>{let n=t.modules.filter(e=>e.standalone!==!1);return n.length===0?null:(0,X.jsxDEV)(`section`,{children:[(0,X.jsxDEV)(`h2`,{className:`mb-2 flex items-center gap-2 px-1 text-[11px] font-semibold uppercase tracking-widest text-muted`,children:[t.meta.icon&&(0,X.jsxDEV)(v,{name:t.meta.icon,size:14,className:`shrink-0`},void 0,!1,{fileName:D6,lineNumber:25,columnNumber:35},this),e(t.meta.label)]},void 0,!0,{fileName:D6,lineNumber:24,columnNumber:17},this),(0,X.jsxDEV)(`div`,{className:`overflow-hidden rounded-2xl border border-border bg-surface`,children:n.map((t,n)=>(0,X.jsxDEV)(te,{to:`/${t.vault}/${t.module}`,className:`flex items-center gap-3 px-4 py-3 text-text transition-colors hover:bg-elevated ${n>0?`border-t border-border`:``}`,children:[(0,X.jsxDEV)(v,{name:t.icon,size:20,className:`shrink-0 text-muted`},void 0,!1,{fileName:D6,lineNumber:37,columnNumber:23},this),(0,X.jsxDEV)(`span`,{className:`flex-1 truncate text-sm font-medium`,children:e(t.label)},void 0,!1,{fileName:D6,lineNumber:38,columnNumber:23},this),(0,X.jsxDEV)(wc,{size:16,className:`shrink-0 text-muted`},void 0,!1,{fileName:D6,lineNumber:39,columnNumber:23},this)]},t.module,!0,{fileName:D6,lineNumber:30,columnNumber:21},this))},void 0,!1,{fileName:D6,lineNumber:28,columnNumber:17},this)]},t.meta.id,!0,{fileName:D6,lineNumber:23,columnNumber:15},this)})},void 0,!1,{fileName:D6,lineNumber:18,columnNumber:9},this)]},void 0,!0,{fileName:D6,lineNumber:16,columnNumber:7},this)},void 0,!1,{fileName:D6,lineNumber:15,columnNumber:5},this)}var k6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/AccountSettingsPage.tsx`,A6=[Yn.string({key:`displayName`,label:`auth.fieldDisplayName`}),Yn.password({key:`password`,label:`auth.fieldPasswordOptional`}),Yn.internalApiToken({key:`apiTokens`,label:`auth.tokensTitle`})];function j6(){let{t:e}=l();async function t(){let e=await wr();return{displayName:e?.displayName??``,password:e?.password??``}}async function n(e){let t=await _r({displayName:e.displayName,password:e.password});return t.ok?{ok:!0,row:{displayName:t.data.displayName,password:t.data.password}}:t.status===422?{ok:!1,status:422,issues:t.data.issues}:{ok:!1,status:t.status}}return(0,X.jsxDEV)(Fr,{fields:A6,recordCtx:{vault:``,module:`account`,recordId:`me`},load:t,save:n,title:e(`auth.accountTitle`),backTo:`/settings`,backLabel:e(`settings.title`)},void 0,!1,{fileName:k6,lineNumber:35,columnNumber:5},this)}var M6=sr({module:`users`,vault:``,label:`auth.usersTitle`,icon:`lucide:users`,views:{table:[`login`,`displayName`,`role`,`disabled`]},fields:[Yn.string({key:`login`,label:`auth.fieldLogin`}),Yn.string({key:`displayName`,label:`auth.fieldDisplayName`}),Yn.select({key:`role`,label:`auth.fieldRole`,options:[{value:`admin`,title:`auth.roleAdmin`},{value:`member`,title:`auth.roleMember`}]}),Yn.boolean({key:`disabled`,label:`auth.fieldDisabled`})]});function N6(e){if(!e)return null;let[t,n]=e.split(`:`);return!t||n!==`asc`&&n!==`desc`?null:{key:t,dir:n}}function P6(){let[e,t]=re(),[n,r]=(0,B.useState)(()=>e.get(`q`)??``),[i,a]=(0,B.useState)(n);(0,B.useEffect)(()=>{let e=setTimeout(()=>{a(n),t(e=>{let t=new URLSearchParams(e);return n?t.set(`q`,n):t.delete(`q`),t},{replace:!0})},300);return()=>clearTimeout(e)},[n,t]);let o=N6(e.get(`sort`));function s(e){t(t=>{let n=new URLSearchParams(t),r=N6(n.get(`sort`)),i;return i=!r||r.key!==e?{key:e,dir:`asc`}:r.dir===`asc`?{key:e,dir:`desc`}:null,i?n.set(`sort`,`${i.key}:${i.dir}`):n.delete(`sort`),n},{replace:!0})}function c(e){t(t=>{let n=new URLSearchParams(t);return e?n.set(`sort`,`${e.key}:${e.dir}`):n.delete(`sort`),n},{replace:!0})}return{q:n,setQ:r,debouncedQ:i,sort:o,toggleSort:s,setSort:c}}var F6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/shared/Dialog.tsx`;function I6({title:e,onClose:t,children:n}){return(0,X.jsxDEV)(c$,{open:!0,onOpenChange:e=>{e||t()},children:(0,X.jsxDEV)(d$,{children:[(0,X.jsxDEV)(f$,{children:(0,X.jsxDEV)(p$,{children:e},void 0,!1,{fileName:F6,lineNumber:24,columnNumber:11},this)},void 0,!1,{fileName:F6,lineNumber:23,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`px-5 pb-5`,children:n},void 0,!1,{fileName:F6,lineNumber:26,columnNumber:9},this)]},void 0,!0,{fileName:F6,lineNumber:22,columnNumber:7},this)},void 0,!1,{fileName:F6,lineNumber:16,columnNumber:5},this)}var L6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/RecordCard.tsx`;function R6(e,t,n){return n?e(n.label):t}function z6({row:e,m:t,keys:n,hrefBase:r,onDelete:i,deleting:a}){let{t:o}=l(),s=ur(t.fields),c=`${r}/${e.id}`,[u,...d]=n,f=it(s),p=f?e[f]:void 0,m=f!=null&&mZ(p).length>0,h=f?d.filter(e=>e!==f):d,g=u?s[u]:void 0;return(0,X.jsxDEV)(`div`,{className:`bg-elevated rounded-xl p-4 mb-3 border border-border transition-colors hover:border-border2 hover:bg-surface`,children:[m&&(0,X.jsxDEV)(`div`,{className:`-mx-4 -mt-4 mb-3 overflow-hidden rounded-t-xl [&_img]:rounded-none [&>*]:rounded-none`,children:(0,X.jsxDEV)(bZ,{value:p},void 0,!1,{fileName:L6,lineNumber:52,columnNumber:11},this)},void 0,!1,{fileName:L6,lineNumber:51,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,X.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:[(0,X.jsxDEV)(I,{to:c,className:`mb-2 block min-w-0 truncate text-text`,children:g?(0,X.jsxDEV)(bn,{field:g,value:e[u],height:24},void 0,!1,{fileName:L6,lineNumber:60,columnNumber:27},this):String(e[u]??``)},void 0,!1,{fileName:L6,lineNumber:59,columnNumber:11},this),(0,X.jsxDEV)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1`,children:h.map(t=>{let n=s[t],r=e[t];return!n||!Ue(r)?null:(0,X.jsxDEV)(`span`,{className:`text-sm text-muted inline-flex min-w-0 max-w-full items-baseline gap-1 truncate`,children:[(0,X.jsxDEV)(`span`,{className:`text-xs opacity-70 shrink-0`,children:[R6(o,t,n),`:`]},void 0,!0,{fileName:L6,lineNumber:72,columnNumber:19},this),(0,X.jsxDEV)(bn,{field:n,value:r},void 0,!1,{fileName:L6,lineNumber:73,columnNumber:19},this)]},t,!0,{fileName:L6,lineNumber:68,columnNumber:17},this)})},void 0,!1,{fileName:L6,lineNumber:62,columnNumber:11},this)]},void 0,!0,{fileName:L6,lineNumber:56,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex gap-2 shrink-0`,children:(0,X.jsxDEV)(T,{variant:`outline`,size:`icon`,disabled:a,className:`text-muted hover:text-danger hover:border-danger`,onClick:i,children:(0,X.jsxDEV)(ke,{size:15},void 0,!1,{fileName:L6,lineNumber:87,columnNumber:13},this)},void 0,!1,{fileName:L6,lineNumber:80,columnNumber:11},this)},void 0,!1,{fileName:L6,lineNumber:79,columnNumber:9},this)]},void 0,!0,{fileName:L6,lineNumber:55,columnNumber:7},this)]},void 0,!0,{fileName:L6,lineNumber:49,columnNumber:5},this)}var B6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/RecordRow.tsx`;function V6({row:e,m:t,keys:n,hrefBase:r,onDelete:i,deleting:a}){let o=ur(t.fields),s=`${r}/${e.id}`;return(0,X.jsxDEV)(`tr`,{className:`group border-b border-border/60 hover:bg-elevated/60 transition-colors`,children:[n.map((t,n)=>n===0?(0,X.jsxDEV)(`td`,{className:`max-w-xs p-0`,children:(0,X.jsxDEV)(I,{to:s,className:`block px-4 py-1.5 text-sm font-medium text-text truncate`,children:o[t]?(0,X.jsxDEV)(bn,{field:o[t],value:e[t]},void 0,!1,{fileName:B6,lineNumber:35,columnNumber:24},this):String(e[t]??``)},void 0,!1,{fileName:B6,lineNumber:34,columnNumber:13},this)},t,!1,{fileName:B6,lineNumber:33,columnNumber:11},this):(0,X.jsxDEV)(`td`,{className:`px-4 py-1.5 text-sm max-w-xs text-text/80`,children:(0,X.jsxDEV)(`span`,{className:`block truncate`,children:o[t]?(0,X.jsxDEV)(bn,{field:o[t],value:e[t]},void 0,!1,{fileName:B6,lineNumber:41,columnNumber:24},this):String(e[t]??``)},void 0,!1,{fileName:B6,lineNumber:40,columnNumber:13},this)},t,!1,{fileName:B6,lineNumber:39,columnNumber:11},this)),(0,X.jsxDEV)(`td`,{className:`px-3 py-1 w-14`,children:(0,X.jsxDEV)(`div`,{className:`flex justify-end`,children:(0,X.jsxDEV)(T,{variant:`ghost`,size:`iconSm`,disabled:a,className:`m-0 text-muted opacity-0 group-hover:opacity-100 pointer-coarse:opacity-100 hover:text-danger transition-opacity`,onClick:i,children:(0,X.jsxDEV)(ke,{size:14},void 0,!1,{fileName:B6,lineNumber:55,columnNumber:13},this)},void 0,!1,{fileName:B6,lineNumber:48,columnNumber:11},this)},void 0,!1,{fileName:B6,lineNumber:47,columnNumber:9},this)},void 0,!1,{fileName:B6,lineNumber:46,columnNumber:7},this)]},void 0,!0,{fileName:B6,lineNumber:28,columnNumber:5},this)}var H6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/GroupPanel.tsx`,U6=`__none__`;function W6({grouping:e,total:t,sort:n}){let{t:r}=l(),{fields:i,field:a,setField:o,facets:s,selected:c,setSelected:u}=e;return(0,X.jsxDEV)(`div`,{className:`folder-tree flex flex-col gap-2`,children:[(0,X.jsxDEV)(`div`,{className:`px-1 pt-1`,children:(0,X.jsxDEV)(`div`,{className:`folder-node${c===null?` active`:``}`,onClick:()=>u(null),children:[(0,X.jsxDEV)(`span`,{className:`folder-name`,children:r(`group.all`)},void 0,!1,{fileName:H6,lineNumber:30,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`ml-auto shrink-0 tabular-nums text-xs text-muted`,children:t},void 0,!1,{fileName:H6,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:H6,lineNumber:29,columnNumber:9},this)},void 0,!1,{fileName:H6,lineNumber:28,columnNumber:7},this),n&&n.keys.length>0&&(0,X.jsxDEV)(`div`,{className:`px-1 list:hidden`,children:[(0,X.jsxDEV)(`div`,{className:`folder-tree-header`,children:r(`list.sortBy`)},void 0,!1,{fileName:H6,lineNumber:39,columnNumber:11},this),(0,X.jsxDEV)(st,{value:n.value?`${n.value.key}:${n.value.dir}`:U6,onValueChange:e=>{if(e===U6)return n.onChange(null);let[t,r]=e.split(`:`);n.onChange({key:t,dir:r})},children:[(0,X.jsxDEV)(ot,{className:`h-8 w-full text-sm`,children:(0,X.jsxDEV)(Re,{placeholder:r(`list.sortBy`)},void 0,!1,{fileName:H6,lineNumber:49,columnNumber:15},this)},void 0,!1,{fileName:H6,lineNumber:48,columnNumber:13},this),(0,X.jsxDEV)(Le,{children:[(0,X.jsxDEV)(Ee,{value:U6,children:r(`list.sortNone`)},void 0,!1,{fileName:H6,lineNumber:52,columnNumber:15},this),n.keys.flatMap(({key:e,label:t})=>[(0,X.jsxDEV)(Ee,{value:`${e}:asc`,children:[t,` ↑`]},`${e}:asc`,!0,{fileName:H6,lineNumber:54,columnNumber:17},this),(0,X.jsxDEV)(Ee,{value:`${e}:desc`,children:[t,` ↓`]},`${e}:desc`,!0,{fileName:H6,lineNumber:57,columnNumber:17},this)])]},void 0,!0,{fileName:H6,lineNumber:51,columnNumber:13},this)]},void 0,!0,{fileName:H6,lineNumber:40,columnNumber:11},this)]},void 0,!0,{fileName:H6,lineNumber:38,columnNumber:9},this),i.length>0&&(0,X.jsxDEV)(`div`,{className:`px-1`,children:[(0,X.jsxDEV)(`div`,{className:`folder-tree-header`,children:r(`group.field`)},void 0,!1,{fileName:H6,lineNumber:69,columnNumber:11},this),(0,X.jsxDEV)(st,{value:a??void 0,onValueChange:o,children:[(0,X.jsxDEV)(ot,{className:`h-8 w-full text-sm`,children:(0,X.jsxDEV)(Re,{placeholder:r(`group.field`)},void 0,!1,{fileName:H6,lineNumber:72,columnNumber:15},this)},void 0,!1,{fileName:H6,lineNumber:71,columnNumber:13},this),(0,X.jsxDEV)(Le,{children:i.map(e=>(0,X.jsxDEV)(Ee,{value:e.key,children:e.label},e.key,!1,{fileName:H6,lineNumber:76,columnNumber:17},this))},void 0,!1,{fileName:H6,lineNumber:74,columnNumber:13},this)]},void 0,!0,{fileName:H6,lineNumber:70,columnNumber:11},this)]},void 0,!0,{fileName:H6,lineNumber:68,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`folder-tree-scroll`,children:(0,X.jsxDEV)(`div`,{className:`folder-tree-nodes`,children:s.map(e=>(0,X.jsxDEV)(`div`,{className:`folder-node${c===e.key?` active`:``}`,title:e.label,onClick:()=>u(e.key),children:[(0,X.jsxDEV)(`span`,{className:`folder-name truncate`,children:e.label},void 0,!1,{fileName:H6,lineNumber:95,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`ml-auto shrink-0 tabular-nums text-xs text-muted`,children:e.count},void 0,!1,{fileName:H6,lineNumber:96,columnNumber:15},this)]},e.key,!0,{fileName:H6,lineNumber:89,columnNumber:13},this))},void 0,!1,{fileName:H6,lineNumber:87,columnNumber:9},this)},void 0,!1,{fileName:H6,lineNumber:86,columnNumber:7},this)]},void 0,!0,{fileName:H6,lineNumber:26,columnNumber:5},this)}function G6(e,t){let{t:n}=l(),r=t?ur(e.fields)[t]:void 0,i=r?.prim===`relation`?r.relation:void 0,a=r?.hints?.displayKey??`name`,{labelMap:o}=wX(i?.vault??``,i?.type??``,a);return(0,B.useMemo)(()=>({t:n,labelMap:o}),[n,o])}function K6(e,t,n,r,i){let a=new Map,o=0;for(let i of t){let t=yn(e,i[n],r);if(!t.length){o++;continue}for(let e of t){let t=a.get(e.value)??{label:e.label,n:0};t.n++,a.set(e.value,t)}}let s=[...a.entries()].map(([e,{label:t,n}])=>({key:e,label:t,count:n})).sort((e,t)=>t.count-e.count||e.label.localeCompare(t.label));return o>0&&s.push({key:q6,label:i,count:o}),s}var q6=`\0__none__`;function J6(e,t){let{t:n}=l(),r=ur(e.fields),i=(0,B.useMemo)(()=>fr(e).filter(e=>r[e]),[e,r]),a=(0,B.useMemo)(()=>i.map(e=>({key:e,label:r[e]?n(r[e].label):e})),[i,r,n]),[o,s]=re(),c=o.get(`groupBy`),u=o.get(`groupItem`)??null,d=(0,B.useMemo)(()=>{if(c&&i.includes(c))return c;let t=dr(e);return t&&i.includes(t)?t:i[0]??null},[c,i,e]),f=G6(e,d);return{fields:a,field:d,setField:e=>{s(t=>{let n=new URLSearchParams(t);return n.set(`groupBy`,e),n.delete(`groupItem`),n},{replace:!0})},facets:(0,B.useMemo)(()=>{if(!d)return[];let e=r[d];return e?K6(e,t,d,f,n(`group.noValue`)):[]},[d,r,t,f,n]),selected:u,setSelected:e=>{s(t=>{let n=new URLSearchParams(t);return e===null?n.delete(`groupItem`):n.set(`groupItem`,e),n},{replace:!0})},filtered:(0,B.useMemo)(()=>{if(!d||u===null)return t;let e=r[d];return e?u===`\0__none__`?t.filter(t=>yn(e,t[d],f).length===0):t.filter(t=>yn(e,t[d],f).some(e=>e.value===u)):t},[t,d,r,u,f])}}function Y6(e,t,n,r,i){let a=e=>{if(!r)return String(e[t]??``);let n=yn(r,e[t],i)[0];return n?.sort??n?.value??``};return[...e].sort((e,t)=>{let r=a(e).localeCompare(a(t),void 0,{numeric:!0,sensitivity:`base`});return n===`asc`?r:-r})}var X6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/EntityListView.tsx`;function Z6({mod:e,hrefBase:t,fetchRows:n,onDelete:r,resetKey:i}){let{t:a}=l(),o=N(),[s,c]=(0,B.useState)([]),[u,d]=(0,B.useState)(null),[f,p]=(0,B.useState)(!1),[m,h]=(0,B.useState)(0),{q:g,setQ:_,debouncedQ:b,sort:x,toggleSort:S,setSort:C}=P6(),[,w]=re(),E=(0,B.useCallback)(async(e=b)=>{try{c(await n(e))}catch{c([])}},[n,b]),D=(0,B.useRef)(null);(0,B.useEffect)(()=>{i!==void 0&&(D.current!==null&&D.current!==i&&(_(``),w({},{replace:!0})),D.current=i)},[i]),(0,B.useEffect)(()=>{E()},[E,m]);let O=J6(e,s),k=G6(e,x?.key??null),A=(0,B.useMemo)(()=>{if(!x)return O.filtered;let t=ur(e.fields)[x.key];return Y6(O.filtered,x.key,x.dir,t,k)},[O.filtered,x,e,k]),j=ir(e),M=ur(e.fields),P={keys:j.map(e=>({key:e,label:R6(a,e,M[e])})),value:x,onChange:C};function F(){o(`${t}/new`)}async function I(e){if(!confirm(a(`actions.confirmDelete`)))return;d(e);let t=await r(e);if(d(null),!t.ok){alert(t.error===`last_admin`?a(`auth.lastAdminError`):a(`common.error`));return}h(e=>e+1)}return(0,X.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,X.jsxDEV)(Rn,{actions:(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`div`,{className:`relative w-[220px] hidden nav:block`,children:[(0,X.jsxDEV)(Bc,{size:15,className:`absolute left-2.5 top-1/2 -translate-y-1/2 text-muted pointer-events-none`},void 0,!1,{fileName:X6,lineNumber:117,columnNumber:15},this),(0,X.jsxDEV)(`input`,{type:`search`,value:g,onChange:e=>_(e.target.value),placeholder:a(`list.searchPlaceholder`),className:`w-full h-8 pr-3 text-sm rounded-lg border border-border bg-surface text-text placeholder:text-muted focus:outline-none focus:border-accent transition-colors`,style:{paddingLeft:`2rem`}},void 0,!1,{fileName:X6,lineNumber:118,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:116,columnNumber:13},this),(0,X.jsxDEV)(T,{variant:`secondary`,size:`icon`,className:`panel:hidden`,onClick:()=>p(!0),children:(0,X.jsxDEV)(Lc,{size:16},void 0,!1,{fileName:X6,lineNumber:129,columnNumber:15},this)},void 0,!1,{fileName:X6,lineNumber:128,columnNumber:13},this),(0,X.jsxDEV)(T,{onClick:F,children:[(0,X.jsxDEV)(y,{size:16},void 0,!1,{fileName:X6,lineNumber:132,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`hidden sm:inline`,children:a(`actions.new`)},void 0,!1,{fileName:X6,lineNumber:133,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:131,columnNumber:13},this)]},void 0,!0,{fileName:X6,lineNumber:114,columnNumber:11},this),children:[(0,X.jsxDEV)(v,{name:e.icon,size:20,className:`shrink-0 text-text`},void 0,!1,{fileName:X6,lineNumber:138,columnNumber:9},this),(0,X.jsxDEV)(`h1`,{className:`text-base font-bold text-text truncate`,children:a(e.label)},void 0,!1,{fileName:X6,lineNumber:139,columnNumber:9},this),(0,X.jsxDEV)(`span`,{className:`text-xs font-medium bg-accent/15 text-accent rounded-full px-2 py-0.5 tabular-nums shrink-0`,children:A.length},void 0,!1,{fileName:X6,lineNumber:140,columnNumber:9},this)]},void 0,!0,{fileName:X6,lineNumber:112,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`flex items-start`,children:[(0,X.jsxDEV)(`div`,{className:`hidden panel:block w-56 shrink-0 border-r border-border sticky top-[52px] self-start h-[calc(100dvh-52px)] overflow-y-auto`,children:(0,X.jsxDEV)(`div`,{className:`pt-2`,children:(0,X.jsxDEV)(W6,{grouping:O,total:s.length,sort:P},void 0,!1,{fileName:X6,lineNumber:150,columnNumber:13},this)},void 0,!1,{fileName:X6,lineNumber:149,columnNumber:11},this)},void 0,!1,{fileName:X6,lineNumber:148,columnNumber:9},this),(0,X.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:A.length===0?(0,X.jsxDEV)(`div`,{className:`flex flex-col items-center justify-center gap-4 py-20 text-muted`,children:[(0,X.jsxDEV)(v,{name:e.icon,size:48,className:`text-muted`},void 0,!1,{fileName:X6,lineNumber:158,columnNumber:15},this),(0,X.jsxDEV)(`p`,{className:`text-base`,children:a(`list.empty`)},void 0,!1,{fileName:X6,lineNumber:159,columnNumber:15},this),(0,X.jsxDEV)(T,{onClick:F,children:[(0,X.jsxDEV)(y,{size:16},void 0,!1,{fileName:X6,lineNumber:161,columnNumber:17},this),` `,a(`actions.addFirst`)]},void 0,!0,{fileName:X6,lineNumber:160,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:157,columnNumber:13},this):(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`div`,{className:`list:hidden p-4`,children:A.map(n=>(0,X.jsxDEV)(z6,{row:n,m:e,keys:j,hrefBase:t,onDelete:()=>I(String(n.id)),deleting:u===String(n.id)},String(n.id),!1,{fileName:X6,lineNumber:169,columnNumber:19},this))},void 0,!1,{fileName:X6,lineNumber:167,columnNumber:15},this),(0,X.jsxDEV)(`div`,{className:`hidden list:block overflow-auto h-[calc(100dvh-52px)]`,children:(0,X.jsxDEV)(`table`,{className:`w-full border-collapse`,children:[(0,X.jsxDEV)(`thead`,{className:`eink-solid sticky top-0 z-10 bg-bg/95 backdrop-blur`,children:(0,X.jsxDEV)(`tr`,{className:`border-b border-border`,children:[j.map(e=>(0,X.jsxDEV)(`th`,{onClick:()=>S(e),className:`px-4 py-2 text-left text-[11px] font-semibold text-muted uppercase tracking-wider cursor-pointer select-none hover:text-text transition-colors`,children:(0,X.jsxDEV)(`span`,{className:`flex items-center gap-1 whitespace-nowrap`,title:R6(a,e,M[e]),children:[R6(a,e,M[e]),x?.key===e?x.dir===`asc`?(0,X.jsxDEV)(je,{size:11},void 0,!1,{fileName:X6,lineNumber:198,columnNumber:33},this):(0,X.jsxDEV)(Ie,{size:11},void 0,!1,{fileName:X6,lineNumber:200,columnNumber:33},this):(0,X.jsxDEV)(Tc,{size:11,className:`opacity-30`},void 0,!1,{fileName:X6,lineNumber:203,columnNumber:31},this)]},void 0,!0,{fileName:X6,lineNumber:191,columnNumber:27},this)},e,!1,{fileName:X6,lineNumber:186,columnNumber:25},this)),(0,X.jsxDEV)(`th`,{className:`w-12`},void 0,!1,{fileName:X6,lineNumber:208,columnNumber:23},this)]},void 0,!0,{fileName:X6,lineNumber:184,columnNumber:21},this)},void 0,!1,{fileName:X6,lineNumber:183,columnNumber:19},this),(0,X.jsxDEV)(`tbody`,{children:A.map(n=>(0,X.jsxDEV)(V6,{row:n,m:e,keys:j,hrefBase:t,onDelete:()=>I(String(n.id)),deleting:u===String(n.id)},String(n.id),!1,{fileName:X6,lineNumber:213,columnNumber:23},this))},void 0,!1,{fileName:X6,lineNumber:211,columnNumber:19},this)]},void 0,!0,{fileName:X6,lineNumber:182,columnNumber:17},this)},void 0,!1,{fileName:X6,lineNumber:181,columnNumber:15},this)]},void 0,!0,{fileName:X6,lineNumber:165,columnNumber:13},this)},void 0,!1,{fileName:X6,lineNumber:155,columnNumber:9},this)]},void 0,!0,{fileName:X6,lineNumber:146,columnNumber:7},this),f&&(0,X.jsxDEV)(I6,{title:a(`group.title`),onClose:()=>p(!1),children:[(0,X.jsxDEV)(`div`,{className:`relative mb-4 nav:hidden`,children:[(0,X.jsxDEV)(Bc,{size:15,className:`absolute left-2.5 top-1/2 -translate-y-1/2 text-muted pointer-events-none`},void 0,!1,{fileName:X6,lineNumber:236,columnNumber:13},this),(0,X.jsxDEV)(`input`,{type:`search`,value:g,onChange:e=>_(e.target.value),placeholder:a(`list.searchPlaceholder`),className:`w-full h-9 pr-3 text-sm rounded-lg border border-border bg-surface text-text placeholder:text-muted focus:outline-none focus:border-accent transition-colors`,style:{paddingLeft:`2rem`}},void 0,!1,{fileName:X6,lineNumber:237,columnNumber:13},this)]},void 0,!0,{fileName:X6,lineNumber:235,columnNumber:11},this),(0,X.jsxDEV)(W6,{grouping:O,total:s.length,sort:P},void 0,!1,{fileName:X6,lineNumber:246,columnNumber:11},this)]},void 0,!0,{fileName:X6,lineNumber:233,columnNumber:9},this)]},void 0,!0,{fileName:X6,lineNumber:110,columnNumber:5},this)}var Q6=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/UsersListPage.tsx`;function $6(){return(0,X.jsxDEV)(Z6,{mod:M6,hrefBase:`/settings/users`,fetchRows:async e=>{let t=await Cr(e);return t.ok?t.data:[]},onDelete:async e=>{let t=await kr(Number(e));return t.ok?{ok:!0}:t.status===409?{ok:!1,error:`last_admin`}:{ok:!1}}},void 0,!1,{fileName:Q6,lineNumber:7,columnNumber:5},this)}var e8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/UserCreatePage.tsx`,t8=[Yn.string({key:`login`,label:`auth.fieldLogin`,required:!0}),Yn.string({key:`displayName`,label:`auth.fieldDisplayName`,required:!0}),Yn.password({key:`password`,label:`auth.password`,required:!0}),Yn.select({key:`role`,label:`auth.fieldRole`,options:[{value:`admin`,title:`auth.roleAdmin`},{value:`member`,title:`auth.roleMember`}]})];function n8(){let{t:e}=l(),t=N();async function n(){return{login:``,displayName:``,password:``,role:`member`}}async function r(e){let n=await vr({login:e.login,displayName:e.displayName,password:e.password,role:e.role});return n.ok?(t(`/settings/users`),{ok:!0,row:{login:n.data.login,displayName:n.data.displayName,password:n.data.password,role:n.data.role}}):n.status===422?{ok:!1,status:422,issues:n.data.issues}:{ok:!1,status:n.status}}return(0,X.jsxDEV)(Fr,{fields:t8,recordCtx:{vault:``,module:`users`,recordId:`new`},load:n,save:r,title:e(`auth.userCreateTitle`),backTo:`/settings/users`,backLabel:e(`auth.usersTitle`)},void 0,!1,{fileName:e8,lineNumber:46,columnNumber:5},this)}var r8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/UserEditPage.tsx`,i8=[Yn.string({key:`displayName`,label:`auth.fieldDisplayName`}),Yn.select({key:`role`,label:`auth.fieldRole`,options:[{value:`admin`,title:`auth.roleAdmin`},{value:`member`,title:`auth.roleMember`}]}),Yn.boolean({key:`disabled`,label:`auth.fieldDisabled`}),Yn.password({key:`password`,label:`auth.fieldPasswordOptional`})];function a8(){let{id:e}=F(),{t}=l(),n=Number(e);async function r(){let e=await Cr(),t=e.ok?e.data.find(e=>e.id===n):void 0;return{displayName:t?.displayName??``,role:t?.role??`member`,disabled:t?.disabled??!1,password:t?.password??``}}async function i(e){let t=await hr(n,{displayName:e.displayName,role:e.role,disabled:e.disabled,password:e.password});return t.ok?{ok:!0,row:{displayName:t.data.displayName,role:t.data.role,disabled:t.data.disabled,password:t.data.password}}:t.status===409?{ok:!1,status:422,issues:[{field:`role`,code:`last_admin`,path:[],params:{}}]}:t.status===422?{ok:!1,status:422,issues:t.data.issues}:{ok:!1,status:t.status}}return(0,X.jsxDEV)(Fr,{fields:i8,recordCtx:{vault:``,module:`users`,recordId:e??``},load:r,save:i,title:t(`auth.usersTitle`),backTo:`/settings/users`,backLabel:t(`auth.usersTitle`)},void 0,!1,{fileName:r8,lineNumber:50,columnNumber:5},this)}var o8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/list/TypeView.tsx`;function s8(){let{t:e}=l(),{vault:t,type:n}=F(),r=Tn().flatMap(e=>e.modules).find(e=>e.vault===t&&e.module===n);return!r||r.standalone===!1?(0,X.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:o8,lineNumber:13,columnNumber:44},this):(0,X.jsxDEV)(Z6,{mod:r,hrefBase:`/${t}/${n}`,resetKey:`${t}:${n}`,fetchRows:async e=>{let r=e?`?q=${encodeURIComponent(e)}`:``,i=await fetch(`/api/${t}/${n}${r}`);return i.ok?i.json():[]},onDelete:async e=>(await Sr(r.vault,r.module,e),{ok:!0})},void 0,!1,{fileName:o8,lineNumber:16,columnNumber:5},this)}var c8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/display/index.tsx`;function l8(e){return e!=null&&e!==``}function u8(e,t,n,r){let{t:i}=l(),[a,o]=(0,B.useState)(!1),[s,c]=(0,B.useState)({}),[u,d]=(0,B.useState)({}),[f,p]=(0,B.useState)(!1),m=t=>t in s?s[t]:e?.[t],h=(e,t)=>c(n=>({...n,[e]:t})),g=(e,t,n)=>u[e]&&t in u[e]?u[e][t]:n?.[t],_=(e,t,n)=>d(r=>({...r,[e]:{...r[e],[t]:n}}));async function v(){if(!t)return;p(!0);let e=be.loading(i(`save.saving`)),a;if(r){let e={...s};for(let[t,n]of Object.entries(u))Object.keys(n).length&&(e[`_extend_${t}`]=n);Object.keys(e).length&&(a=await r(e)??void 0)}else{for(let[e,n]of Object.entries(s))a??=await t(e,n)??void 0;if(n)for(let[e,t]of Object.entries(u))for(let[r,i]of Object.entries(t))a??=await n(e,r,i)??void 0}if(p(!1),a){be.error(a,{id:e});return}be.success(i(`save.done`),{id:e}),o(!1),c({}),d({})}return{editAll:a,savingAll:f,startAll:()=>{c({}),d({}),o(!0)},cancelAll:()=>{o(!1),c({}),d({})},saveAll:v,baseVal:m,setBaseDraft:h,extVal:g,setExtDraft:_}}function d8({module:e,record:t,onUpdate:n,onUpdateExtend:r,edit:i,errorAt:a=(()=>void 0)}){let{t:o}=l(),s=ur(e.fields),c=e=>{let t=s[e];return t?.label?o(t.label):e},u=(e,t)=>{let n=s[e]?.options?.find(e=>e.value===String(t));return n?o(n.title):String(t)},d=ar(e),f=(0,B.useMemo)(()=>s[d]??{kind:`text`,label:`core.fields.name`,required:!1,prim:`text`,hints:{},column:`text`,zod:void 0},[s,d]),p=!!n,m=(0,B.useMemo)(()=>{let n={...t};if(i?.editAll)for(let[t]of nr(e.fields))n[t]=i.baseVal(t);return n},[t,i?.editAll,i?.baseVal,e.fields]),h={bridge:{mode:i?.editAll?`edit`:`view`,recordCtx:{vault:e.vault,module:e.module,recordId:String(t.id)},values:m,getValue:e=>i?.editAll?i.baseVal(e):t[e],setValue:(e,t)=>{i?.editAll?i.setBaseDraft(e,t):n&&n(e,t)},isHidden:e=>{if(e===d)return!0;let t=s[e];return!!(t?.virtual||or(t?.hidden,m))},requiredOf:e=>or(s[e]?.required,m),error:e=>a([e]),touch:()=>{}}},g=(0,B.useMemo)(()=>Fn(e.vault,e.module).map(e=>({ext:e,data:t._extends?.[e.id]})).filter(({ext:e,data:t})=>t!=null&&nr(e.fields).some(([e])=>l8(t[e]))||e.showWhen!=null&&lr(e.showWhen,m)),[e.vault,e.module,t,i?.editAll,m]);return(0,X.jsxDEV)(Ln.Provider,{value:a,children:(0,X.jsxDEV)(`article`,{className:`max-w-7xl mx-auto px-5 py-8 md:px-8 md:py-10`,children:[(0,X.jsxDEV)(`header`,{className:`mb-6`,role:`heading`,"aria-level":1,children:(0,X.jsxDEV)(`div`,{className:`min-w-0`,children:(0,X.jsxDEV)(Sn,{field:f,value:i?.editAll?i.baseVal(d):t[d],mode:i?.editAll?`edit`:`view`,recordCtx:{vault:e.vault,module:e.module,recordId:String(t.id)},onChange:i?.editAll?e=>i.setBaseDraft(d,e):n?e=>n(d,e):void 0},void 0,!1,{fileName:c8,lineNumber:245,columnNumber:11},this)},void 0,!1,{fileName:c8,lineNumber:244,columnNumber:9},this)},void 0,!1,{fileName:c8,lineNumber:243,columnNumber:7},this),(0,X.jsxDEV)(In,{items:e.fields,ctx:h},void 0,!1,{fileName:c8,lineNumber:262,columnNumber:7},this),g.map(({ext:n,data:a})=>(0,X.jsxDEV)(f8,{ext:n,data:a,m:e,recordId:String(t.id),editable:p,edit:i,onUpdateExtend:r,fieldLabelOf:c,valueLabelOf:u},n.id,!1,{fileName:c8,lineNumber:267,columnNumber:9},this))]},void 0,!0,{fileName:c8,lineNumber:241,columnNumber:5},this)},void 0,!1,{fileName:c8,lineNumber:240,columnNumber:5},this)}function f8({ext:e,data:t,m:n,recordId:r,editable:i,edit:a,onUpdateExtend:o,fieldLabelOf:s,valueLabelOf:c}){let{t:u}=l(),d=In({items:e.fields,ctx:{renderField:(s,c)=>c.virtual||!i&&!l8(t?.[s])?null:(0,X.jsxDEV)(Sn,{field:c,value:a?.editAll?a.extVal(e.id,s,t):t?.[s],label:c.label?u(c.label):void 0,required:c.required===!0,mode:a?.editAll?`edit`:`view`,recordCtx:{vault:n.vault,module:n.module,recordId:r},onChange:a?.editAll?t=>a.setExtDraft(e.id,s,t):o?t=>o(e.id,s,t):void 0},void 0,!1,{fileName:c8,lineNumber:323,columnNumber:9},this),renderGroup:(s,c)=>{let l=a?.editAll?a.extVal(e.id,s,t):t?.[s];if(!i&&!l8(l))return null;let u=xe({kind:pe(c)});return u?(0,X.jsxDEV)(u.Page,{el:c,value:l,mode:a?.editAll?`edit`:`view`,recordCtx:{vault:n.vault,module:n.module,recordId:r},onChange:a?.editAll?t=>a.setExtDraft(e.id,s,t):o?t=>o(e.id,s,t):void 0},void 0,!1,{fileName:c8,lineNumber:346,columnNumber:9},this):null}}});return d==null?null:(0,X.jsxDEV)(`div`,{className:`mt-8 border-t border-border pt-6`,children:(0,X.jsxDEV)(An,{label:u(e.label),icon:e.icon,labelAfter:(0,X.jsxDEV)(wn,{ext:e,fieldLabel:s,valueLabel:c},void 0,!1,{fileName:c8,lineNumber:371,columnNumber:21},this),children:d},void 0,!1,{fileName:c8,lineNumber:368,columnNumber:7},this)},void 0,!1,{fileName:c8,lineNumber:367,columnNumber:5},this)}function p8(e){return j(()=>import(e),[])}var m8={};function h8(e,t){return m8[`${e}/${t}`]}function g8(e){e.RecordView&&(m8[`${e.vault}/${e.module}`]=e.RecordView);for(let t of e.renderers??[])L(t);for(let[t,n]of Object.entries(e.templates??{}))ye(t,n);for(let[t,n]of Object.entries(e.translations??{}))n&&Vi.addResourceBundle(t,`translation`,n,!0,!0)}var _8=Object.assign({"../plugin-agent/src/index.ts":()=>j(()=>import(`./src-BiPG5Wj0.js`),__vite__mapDeps([21,22,1,23,24])),"../plugin-console/src/index.ts":()=>j(()=>import(`./src-YMuIAAH1.js`),__vite__mapDeps([25,22,1,23,24])),"../plugin-core/src/index.ts":()=>j(()=>import(`./src-pd92-ym6.js`),__vite__mapDeps([26,22,1,27,28,23,24])),"../plugin-devices/src/index.ts":()=>j(()=>import(`./src-D6UndSMF.js`),__vite__mapDeps([29,30,22,1,31,32,33,23,24])),"../plugin-documents/src/index.ts":()=>j(()=>import(`./src-CEDC2fUY.js`),__vite__mapDeps([34,22,1,31,33,23])),"../plugin-drone/src/index.ts":()=>j(()=>import(`./src-DiUhYfl4.js`),__vite__mapDeps([35,22,1,33,31,23])),"../plugin-finance/src/index.ts":()=>j(()=>import(`./src-791s3ufb.js`),__vite__mapDeps([36,37,22,1,31,33,23,24])),"../plugin-garden/src/index.ts":()=>j(()=>import(`./src-29EVe5AR.js`),__vite__mapDeps([38,22,1,31,23])),"../plugin-health/src/index.ts":()=>j(()=>import(`./src-CVUcsaPt.js`),__vite__mapDeps([39,22,1,31,33,23,24])),"../plugin-home/src/index.ts":()=>j(()=>import(`./src-Do7Z4dhu.js`),__vite__mapDeps([40,22,1,31,23])),"../plugin-http/src/index.ts":()=>j(()=>import(`./src-CXN5nPkW.js`),__vite__mapDeps([41,22,1,23,24])),"../plugin-kitchen/src/index.ts":()=>j(()=>import(`./src-DLcSAptE.js`),__vite__mapDeps([42,22,1,31,23])),"../plugin-lab/src/index.ts":()=>j(()=>import(`./src-C-Dv1uXg.js`),__vite__mapDeps([43,22,1,31,30,32,33,23,24,37])),"../plugin-media/src/index.ts":()=>j(()=>import(`./src-B8iacye4.js`),__vite__mapDeps([44,22,1,31,23,24])),"../plugin-nextcloud/src/index.ts":()=>j(()=>import(`./src-BljX5hzg.js`),__vite__mapDeps([45,22,1,23,24])),"../plugin-orchestrator/src/index.ts":()=>j(()=>import(`./src-D8ptIyqZ.js`),__vite__mapDeps([46,22,1,23,24])),"../plugin-people/src/index.ts":()=>j(()=>import(`./src-7ex3j1NP.js`),__vite__mapDeps([47,22,1,31,23])),"../plugin-telegram/src/index.ts":()=>j(()=>import(`./src-C2Pe7TE7.js`),__vite__mapDeps([48,22,1,23,24])),"../plugin-things/src/index.ts":()=>j(()=>import(`./src-DW-wOHmI.js`),__vite__mapDeps([49,22,1,31,23])),"../plugin-transit/src/index.ts":()=>j(()=>import(`./src-CSA8Ms7c.js`),__vite__mapDeps([50,22,1,31,23,24])),"../plugin-travel/src/index.ts":()=>j(()=>import(`./src-CLRRfAdi2.js`),__vite__mapDeps([51,22,1,31,23])),"../plugin-webexport/src/index.ts":()=>j(()=>import(`./src-CuLO2WBn2.js`),__vite__mapDeps([52,22,1,23,24]))}),v8=Object.assign({"../plugin-devices/src/fields/ui.tsx":()=>j(()=>import(`./ui-Bl7rNE-K.js`),__vite__mapDeps([53,1,2,54,5,55,9,10,15,27,56,57,58,59,22,32]))});async function y8(e){let t=Object.entries(_8).find(([t])=>t.includes(`/plugin-${e}/`));if(!t)return null;let n=(await t[1]()).default??null;for(let[t,n]of Object.entries(v8)){if(!t.includes(`/plugin-${e}/`))continue;let r=(await n()).default;r&&g8(r)}return n}function b8(e){if(!e.startsWith(`/`)){console.warn(`[federation] skip non-same-origin css: ${e}`);return}if(document.querySelector(`link[href="${e}"]`))return;let t=document.createElement(`link`);t.rel=`stylesheet`,t.href=e,document.head.appendChild(t)}function x8(e){let t=new Map(e.map(e=>[e.id,e])),n=new Set,r=[],i=e=>{if(!n.has(e.id)){n.add(e.id);for(let n of e.dependsOn){let e=t.get(n);e&&i(e)}r.push(e)}};for(let t of e)i(t);return r}async function S8(){let e=await fetch(`/api/plugins`);if(!e.ok)throw Error(`[federation] /api/plugins ${e.status}`);let t=x8((await e.json()).filter(e=>e.enabled)),n=[];for(let e of t)try{if(e.schema){let t=await p8(e.schema);if(n.push(t.default),e.css&&b8(e.css),e.web)try{let t=(await p8(e.web)).default;t&&(Array.isArray(t)?t:[t]).forEach(g8)}catch(t){console.error(`[federation] ${e.id}: web bundle failed —`,t)}}else{let t=await y8(e.id);t&&n.push(t)}}catch(t){console.error(`[federation] ${e.id}: schema failed, skipping plugin —`,t)}return n}var C8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/record/RecordView.tsx`;function w8(){let{t:e}=l(),{vault:t,type:n,id:r}=F(),i=N(),a=Tn().flatMap(e=>e.modules).find(e=>e.vault===t&&e.module===n),[o,s]=(0,B.useState)(null),[c,u]=(0,B.useState)({}),f=jn(e),p=e=>c[e.join(`.`)],m=u8(o,h,g,_);if((0,B.useEffect)(()=>{if(!a||a.standalone===!1||!r)return;let e=new AbortController;return fetch(`/api/${a.vault}/${a.module}/${r}`,{signal:e.signal}).then(e=>e.ok?e.json():null).then(s).catch(()=>{}),()=>e.abort()},[a,r]),!a||a.standalone===!1)return(0,X.jsxDEV)(`div`,{className:`p-6 text-muted`,children:e(`common.notFound`)},void 0,!1,{fileName:C8,lineNumber:39,columnNumber:44},this);async function h(t,n){if(!a||!r)return;u(e=>Dn(e,t));let i=await Ar(a.vault,a.module,r,{[t]:n});if(i.ok){s(i.row??null);return}let o=zn(i.issues??[],f);u(e=>({...Dn(e,t),...o}));let c=(i.issues??[]).find(e=>e.field===t)??i.issues?.[0];return c?f(c.code,c.params):e(`validation.server`)}async function g(t,n,i){if(!a||!r)return;u(e=>Dn(e,n));let o=await Ar(a.vault,a.module,r,{[`_extend_${t}`]:{[n]:i}});if(o.ok){s(o.row??null);return}u(e=>({...Dn(e,n),...zn(o.issues??[],f)}));let c=(o.issues??[]).find(e=>e.field===n)??o.issues?.[0];return c?f(c.code,c.params):e(`validation.server`)}async function _(t){if(!a||!r)return;u(e=>Object.keys(t).reduce((e,t)=>Dn(e,t),e));let n=await Ar(a.vault,a.module,r,t);if(n.ok){s(n.row??null);return}u(e=>({...Object.keys(t).reduce((e,t)=>Dn(e,t),e),...zn(n.issues??[],f)}));let i=n.issues?.[0];return i?f(i.code,i.params):e(`validation.server`)}let v=h8(a.vault,a.module);return(0,X.jsxDEV)(`div`,{className:`flex flex-col`,children:[(0,X.jsxDEV)(Rn,{actions:o&&!v&&(m.editAll?(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(T,{disabled:m.savingAll,onClick:m.saveAll,children:[(0,X.jsxDEV)(D,{size:16},void 0,!1,{fileName:C8,lineNumber:89,columnNumber:17},this),(0,X.jsxDEV)(`span`,{className:`hidden sm:inline`,children:e(`actions.save`)},void 0,!1,{fileName:C8,lineNumber:90,columnNumber:17},this)]},void 0,!0,{fileName:C8,lineNumber:88,columnNumber:15},this),(0,X.jsxDEV)(T,{variant:`secondary`,size:`icon`,disabled:m.savingAll,onClick:m.cancelAll,title:e(`actions.cancel`),children:(0,X.jsxDEV)(d,{size:16},void 0,!1,{fileName:C8,lineNumber:99,columnNumber:17},this)},void 0,!1,{fileName:C8,lineNumber:92,columnNumber:15},this)]},void 0,!0,{fileName:C8,lineNumber:87,columnNumber:13},this):(0,X.jsxDEV)(T,{onClick:m.startAll,title:e(`actions.editAll`),children:[(0,X.jsxDEV)(ae,{size:16},void 0,!1,{fileName:C8,lineNumber:104,columnNumber:15},this),(0,X.jsxDEV)(`span`,{className:`hidden sm:inline`,children:e(`actions.edit`)},void 0,!1,{fileName:C8,lineNumber:105,columnNumber:15},this)]},void 0,!0,{fileName:C8,lineNumber:103,columnNumber:13},this)),children:(0,X.jsxDEV)(T,{variant:`ghost`,size:`sm`,className:`px-2 bg-bg/60 border border-border/50 shadow-sm backdrop-blur-sm hover:bg-bg/80`,onClick:()=>i(`/${t}/${n}`),children:[(0,X.jsxDEV)(Vn,{size:18},void 0,!1,{fileName:C8,lineNumber:116,columnNumber:11},this),(0,X.jsxDEV)(`span`,{className:`text-sm`,children:e(a.label)},void 0,!1,{fileName:C8,lineNumber:117,columnNumber:11},this)]},void 0,!0,{fileName:C8,lineNumber:110,columnNumber:9},this)},void 0,!1,{fileName:C8,lineNumber:82,columnNumber:7},this),(0,X.jsxDEV)(`div`,{className:`flex-1 min-w-0`,children:(0,X.jsxDEV)(Pn,{vault:a.vault,module:a.module,children:o?v?(0,X.jsxDEV)(v,{record:o,onEdit:()=>{}},void 0,!1,{fileName:C8,lineNumber:127,columnNumber:13},this):(0,X.jsxDEV)(d8,{module:a,record:o,onUpdate:h,onUpdateExtend:g,edit:m,errorAt:p},void 0,!1,{fileName:C8,lineNumber:129,columnNumber:13},this):(0,X.jsxDEV)(`div`,{className:`flex items-center justify-center py-20 text-muted text-sm`,children:e(`common.loading`)},void 0,!1,{fileName:C8,lineNumber:125,columnNumber:13},this)},void 0,!1,{fileName:C8,lineNumber:123,columnNumber:9},this)},void 0,!1,{fileName:C8,lineNumber:122,columnNumber:7},this)]},void 0,!0,{fileName:C8,lineNumber:80,columnNumber:5},this)}var T8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/app/Shell.tsx`,E8=(0,B.lazy)(()=>j(()=>import(`./SettingsPage-DFEMxm9d.js`).then(e=>({default:e.SettingsPage})),__vite__mapDeps([60,1,55,2,9,10,15,27,56,58,61,62,63,64]))),D8=(0,B.lazy)(()=>j(()=>import(`./PluginSettingsPage-BzNvTqpx.js`).then(e=>({default:e.PluginSettingsPage})),__vite__mapDeps([65,55,1,2,9,10,15,27,66,8,7,22,59,31,33,23,61,67,64]))),O8=(0,B.lazy)(()=>j(()=>import(`./NewRecordView-B3vsuud9.js`).then(e=>({default:e.NewRecordView})),__vite__mapDeps([68,1,54,5,55,2,9,10,15,27,56,69,59,22,31,66,8,7,33,23,61,62])));function k8(){return(0,X.jsxDEV)(ee,{children:[(0,X.jsxDEV)(M,{path:`/login`,element:(0,X.jsxDEV)($0,{},void 0,!1,{fileName:T8,lineNumber:29,columnNumber:37},this)},void 0,!1,{fileName:T8,lineNumber:29,columnNumber:7},this),(0,X.jsxDEV)(M,{path:`/setup`,element:(0,X.jsxDEV)(n2,{},void 0,!1,{fileName:T8,lineNumber:30,columnNumber:37},this)},void 0,!1,{fileName:T8,lineNumber:30,columnNumber:7},this),(0,X.jsxDEV)(M,{path:`/*`,element:(0,X.jsxDEV)(Pr,{children:(0,X.jsxDEV)(A8,{},void 0,!1,{fileName:T8,lineNumber:35,columnNumber:13},this)},void 0,!1,{fileName:T8,lineNumber:34,columnNumber:11},this)},void 0,!1,{fileName:T8,lineNumber:31,columnNumber:7},this)]},void 0,!0,{fileName:T8,lineNumber:28,columnNumber:5},this)}function A8(){let[e,t]=(0,B.useState)(!1);return(0,B.useEffect)(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key===`k`&&(e.preventDefault(),t(e=>!e))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]),(0,X.jsxDEV)(X.Fragment,{children:[(0,X.jsxDEV)(`div`,{className:`min-h-dvh bg-bg`,children:[(0,X.jsxDEV)(y6,{onSearchOpen:()=>t(!0)},void 0,!1,{fileName:T8,lineNumber:60,columnNumber:9},this),(0,X.jsxDEV)(`main`,{className:`nav:pl-52 pb-16 nav:pb-0`,children:(0,X.jsxDEV)(B.Suspense,{fallback:(0,X.jsxDEV)(`div`,{className:`flex justify-center py-16`,children:(0,X.jsxDEV)(Ae,{className:`animate-spin text-muted`,size:20},void 0,!1,{fileName:T8,lineNumber:65,columnNumber:17},this)},void 0,!1,{fileName:T8,lineNumber:64,columnNumber:15},this),children:(0,X.jsxDEV)(ee,{children:[(0,X.jsxDEV)(M,{path:`/`,element:(0,X.jsxDEV)(E6,{},void 0,!1,{fileName:T8,lineNumber:70,columnNumber:40},this)},void 0,!1,{fileName:T8,lineNumber:70,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/browse`,element:(0,X.jsxDEV)(O6,{},void 0,!1,{fileName:T8,lineNumber:71,columnNumber:46},this)},void 0,!1,{fileName:T8,lineNumber:71,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings`,element:(0,X.jsxDEV)(E8,{},void 0,!1,{fileName:T8,lineNumber:72,columnNumber:48},this)},void 0,!1,{fileName:T8,lineNumber:72,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/account`,element:(0,X.jsxDEV)(j6,{},void 0,!1,{fileName:T8,lineNumber:73,columnNumber:56},this)},void 0,!1,{fileName:T8,lineNumber:73,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/users`,element:(0,X.jsxDEV)($6,{},void 0,!1,{fileName:T8,lineNumber:74,columnNumber:54},this)},void 0,!1,{fileName:T8,lineNumber:74,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/users/new`,element:(0,X.jsxDEV)(n8,{},void 0,!1,{fileName:T8,lineNumber:75,columnNumber:58},this)},void 0,!1,{fileName:T8,lineNumber:75,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/users/:id`,element:(0,X.jsxDEV)(a8,{},void 0,!1,{fileName:T8,lineNumber:76,columnNumber:58},this)},void 0,!1,{fileName:T8,lineNumber:76,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/settings/:pluginId`,element:(0,X.jsxDEV)(D8,{},void 0,!1,{fileName:T8,lineNumber:77,columnNumber:58},this)},void 0,!1,{fileName:T8,lineNumber:77,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/plugins`,element:(0,X.jsxDEV)(P,{to:`/settings`,replace:!0},void 0,!1,{fileName:T8,lineNumber:78,columnNumber:47},this)},void 0,!1,{fileName:T8,lineNumber:78,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/:vault/:type`,element:(0,X.jsxDEV)(s8,{},void 0,!1,{fileName:T8,lineNumber:79,columnNumber:52},this)},void 0,!1,{fileName:T8,lineNumber:79,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/:vault/:type/new`,element:(0,X.jsxDEV)(O8,{},void 0,!1,{fileName:T8,lineNumber:80,columnNumber:56},this)},void 0,!1,{fileName:T8,lineNumber:80,columnNumber:15},this),(0,X.jsxDEV)(M,{path:`/:vault/:type/:id`,element:(0,X.jsxDEV)(w8,{},void 0,!1,{fileName:T8,lineNumber:81,columnNumber:56},this)},void 0,!1,{fileName:T8,lineNumber:81,columnNumber:15},this)]},void 0,!0,{fileName:T8,lineNumber:69,columnNumber:13},this)},void 0,!1,{fileName:T8,lineNumber:62,columnNumber:11},this)},void 0,!1,{fileName:T8,lineNumber:61,columnNumber:9},this),(0,X.jsxDEV)(x6,{onSearchOpen:()=>t(!0)},void 0,!1,{fileName:T8,lineNumber:85,columnNumber:9},this)]},void 0,!0,{fileName:T8,lineNumber:59,columnNumber:7},this),(0,X.jsxDEV)(C6,{open:e,onClose:()=>t(!1)},void 0,!1,{fileName:T8,lineNumber:87,columnNumber:7},this)]},void 0,!0,{fileName:T8,lineNumber:58,columnNumber:5},this)}var j8=`/home/grigorii/Projects/GitHub/grigorii-horos/coffer/packages/web/main.tsx`,M8=[];try{M8=await S8()}catch(e){console.warn(`[federation] failed to load plugins, continuing with none:`,e)}Bn(M8),(0,Br.createRoot)(document.getElementById(`root`)).render((0,X.jsxDEV)(B.StrictMode,{children:(0,X.jsxDEV)(ne,{children:[(0,X.jsxDEV)(k8,{},void 0,!1,{fileName:j8,lineNumber:36,columnNumber:7},void 0),(0,X.jsxDEV)(ie,{richColors:!0,position:`bottom-right`},void 0,!1,{fileName:j8,lineNumber:37,columnNumber:7},void 0)]},void 0,!0,{fileName:j8,lineNumber:35,columnNumber:5},void 0)},void 0,!1,{fileName:j8,lineNumber:34,columnNumber:3},void 0));