@wire-dsl/web 0.1.3 → 0.1.4

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,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/cssMode-BrMP3krg.js","assets/lspLanguageFeatures-BDkeaUzh.js","assets/htmlMode-_S-pIoPQ.js","assets/jsonMode-CxiG8Cqc.js","assets/javascript-BDGWT-qT.js","assets/typescript-BXTgwnDE.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/cssMode-CnuwsX6g.js","assets/lspLanguageFeatures-B2RLEgZP.js","assets/htmlMode-B2VBxO9h.js","assets/jsonMode-DzoVLZsb.js","assets/javascript-_2ZaM8YA.js","assets/typescript-5wSKjBxg.js"])))=>i.map(i=>d[i]);
2
2
  (function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))i(n);new MutationObserver(n=>{for(const o of n)if(o.type==="childList")for(const r of o.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&i(r)}).observe(document,{childList:!0,subtree:!0});function t(n){const o={};return n.integrity&&(o.integrity=n.integrity),n.referrerPolicy&&(o.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?o.credentials="include":n.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function i(n){if(n.ep)return;n.ep=!0;const o=t(n);fetch(n.href,o)}})();function zhe(s){return s&&s.__esModule&&Object.prototype.hasOwnProperty.call(s,"default")?s.default:s}var c9={exports:{}},oL={};var aie;function ZSe(){if(aie)return oL;aie=1;var s=Symbol.for("react.transitional.element"),e=Symbol.for("react.fragment");function t(i,n,o){var r=null;if(o!==void 0&&(r=""+o),n.key!==void 0&&(r=""+n.key),"key"in n){o={};for(var a in n)a!=="key"&&(o[a]=n[a])}else o=n;return n=o.ref,{$$typeof:s,type:i,key:r,ref:n!==void 0?n:null,props:o}}return oL.Fragment=e,oL.jsx=t,oL.jsxs=t,oL}var lie;function YSe(){return lie||(lie=1,c9.exports=ZSe()),c9.exports}var $e=YSe(),d9={exports:{}},rL={},h9={exports:{}},u9={};var cie;function XSe(){return cie||(cie=1,(function(s){function e(G,Y){var ie=G.length;G.push(Y);e:for(;0<ie;){var ve=ie-1>>>1,Le=G[ve];if(0<n(Le,Y))G[ve]=Y,G[ie]=Le,ie=ve;else break e}}function t(G){return G.length===0?null:G[0]}function i(G){if(G.length===0)return null;var Y=G[0],ie=G.pop();if(ie!==Y){G[0]=ie;e:for(var ve=0,Le=G.length,H=Le>>>1;ve<H;){var te=2*(ve+1)-1,Se=G[te],Ie=te+1,Ue=G[Ie];if(0>n(Se,ie))Ie<Le&&0>n(Ue,Se)?(G[ve]=Ue,G[Ie]=ie,ve=Ie):(G[ve]=Se,G[te]=ie,ve=te);else if(Ie<Le&&0>n(Ue,ie))G[ve]=Ue,G[Ie]=ie,ve=Ie;else break e}}return Y}function n(G,Y){var ie=G.sortIndex-Y.sortIndex;return ie!==0?ie:G.id-Y.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var o=performance;s.unstable_now=function(){return o.now()}}else{var r=Date,a=r.now();s.unstable_now=function(){return r.now()-a}}var l=[],c=[],d=1,h=null,f=3,p=!1,m=!1,b=!1,C=!1,y=typeof setTimeout=="function"?setTimeout:null,S=typeof clearTimeout=="function"?clearTimeout:null,L=typeof setImmediate<"u"?setImmediate:null;function x(G){for(var Y=t(c);Y!==null;){if(Y.callback===null)i(c);else if(Y.startTime<=G)i(c),Y.sortIndex=Y.expirationTime,e(l,Y);else break;Y=t(c)}}function E(G){if(b=!1,x(G),!m)if(t(l)!==null)m=!0,D||(D=!0,U());else{var Y=t(c);Y!==null&&J(E,Y.startTime-G)}}var D=!1,T=-1,M=5,A=-1;function W(){return C?!0:!(s.unstable_now()-A<M)}function z(){if(C=!1,D){var G=s.unstable_now();A=G;var Y=!0;try{e:{m=!1,b&&(b=!1,S(T),T=-1),p=!0;var ie=f;try{t:{for(x(G),h=t(l);h!==null&&!(h.expirationTime>G&&W());){var ve=h.callback;if(typeof ve=="function"){h.callback=null,f=h.priorityLevel;var Le=ve(h.expirationTime<=G);if(G=s.unstable_now(),typeof Le=="function"){h.callback=Le,x(G),Y=!0;break t}h===t(l)&&i(l),x(G)}else i(l);h=t(l)}if(h!==null)Y=!0;else{var H=t(c);H!==null&&J(E,H.startTime-G),Y=!1}}break e}finally{h=null,f=ie,p=!1}Y=void 0}}finally{Y?U():D=!1}}}var U;if(typeof L=="function")U=function(){L(z)};else if(typeof MessageChannel<"u"){var K=new MessageChannel,X=K.port2;K.port1.onmessage=z,U=function(){X.postMessage(null)}}else U=function(){y(z,0)};function J(G,Y){T=y(function(){G(s.unstable_now())},Y)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(G){G.callback=null},s.unstable_forceFrameRate=function(G){0>G||125<G?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):M=0<G?Math.floor(1e3/G):5},s.unstable_getCurrentPriorityLevel=function(){return f},s.unstable_next=function(G){switch(f){case 1:case 2:case 3:var Y=3;break;default:Y=f}var ie=f;f=Y;try{return G()}finally{f=ie}},s.unstable_requestPaint=function(){C=!0},s.unstable_runWithPriority=function(G,Y){switch(G){case 1:case 2:case 3:case 4:case 5:break;default:G=3}var ie=f;f=G;try{return Y()}finally{f=ie}},s.unstable_scheduleCallback=function(G,Y,ie){var ve=s.unstable_now();switch(typeof ie=="object"&&ie!==null?(ie=ie.delay,ie=typeof ie=="number"&&0<ie?ve+ie:ve):ie=ve,G){case 1:var Le=-1;break;case 2:Le=250;break;case 5:Le=1073741823;break;case 4:Le=1e4;break;default:Le=5e3}return Le=ie+Le,G={id:d++,callback:Y,priorityLevel:G,startTime:ie,expirationTime:Le,sortIndex:-1},ie>ve?(G.sortIndex=ie,e(c,G),t(l)===null&&G===t(c)&&(b?(S(T),T=-1):b=!0,J(E,ie-ve))):(G.sortIndex=Le,e(l,G),m||p||(m=!0,D||(D=!0,U()))),G},s.unstable_shouldYield=W,s.unstable_wrapCallback=function(G){var Y=f;return function(){var ie=f;f=Y;try{return G.apply(this,arguments)}finally{f=ie}}}})(u9)),u9}var die;function QSe(){return die||(die=1,h9.exports=XSe()),h9.exports}var f9={exports:{}},ei={};var hie;function JSe(){if(hie)return ei;hie=1;var s=Symbol.for("react.transitional.element"),e=Symbol.for("react.portal"),t=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),n=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),r=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),l=Symbol.for("react.suspense"),c=Symbol.for("react.memo"),d=Symbol.for("react.lazy"),h=Symbol.for("react.activity"),f=Symbol.iterator;function p(H){return H===null||typeof H!="object"?null:(H=f&&H[f]||H["@@iterator"],typeof H=="function"?H:null)}var m={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,C={};function y(H,te,Se){this.props=H,this.context=te,this.refs=C,this.updater=Se||m}y.prototype.isReactComponent={},y.prototype.setState=function(H,te){if(typeof H!="object"&&typeof H!="function"&&H!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,H,te,"setState")},y.prototype.forceUpdate=function(H){this.updater.enqueueForceUpdate(this,H,"forceUpdate")};function S(){}S.prototype=y.prototype;function L(H,te,Se){this.props=H,this.context=te,this.refs=C,this.updater=Se||m}var x=L.prototype=new S;x.constructor=L,b(x,y.prototype),x.isPureReactComponent=!0;var E=Array.isArray;function D(){}var T={H:null,A:null,T:null,S:null},M=Object.prototype.hasOwnProperty;function A(H,te,Se){var Ie=Se.ref;return{$$typeof:s,type:H,key:te,ref:Ie!==void 0?Ie:null,props:Se}}function W(H,te){return A(H.type,te,H.props)}function z(H){return typeof H=="object"&&H!==null&&H.$$typeof===s}function U(H){var te={"=":"=0",":":"=2"};return"$"+H.replace(/[=:]/g,function(Se){return te[Se]})}var K=/\/+/g;function X(H,te){return typeof H=="object"&&H!==null&&H.key!=null?U(""+H.key):te.toString(36)}function J(H){switch(H.status){case"fulfilled":return H.value;case"rejected":throw H.reason;default:switch(typeof H.status=="string"?H.then(D,D):(H.status="pending",H.then(function(te){H.status==="pending"&&(H.status="fulfilled",H.value=te)},function(te){H.status==="pending"&&(H.status="rejected",H.reason=te)})),H.status){case"fulfilled":return H.value;case"rejected":throw H.reason}}throw H}function G(H,te,Se,Ie,Ue){var it=typeof H;(it==="undefined"||it==="boolean")&&(H=null);var lt=!1;if(H===null)lt=!0;else switch(it){case"bigint":case"string":case"number":lt=!0;break;case"object":switch(H.$$typeof){case s:case e:lt=!0;break;case d:return lt=H._init,G(lt(H._payload),te,Se,Ie,Ue)}}if(lt)return Ue=Ue(H),lt=Ie===""?"."+X(H,0):Ie,E(Ue)?(Se="",lt!=null&&(Se=lt.replace(K,"$&/")+"/"),G(Ue,te,Se,"",function(to){return to})):Ue!=null&&(z(Ue)&&(Ue=W(Ue,Se+(Ue.key==null||H&&H.key===Ue.key?"":(""+Ue.key).replace(K,"$&/")+"/")+lt)),te.push(Ue)),1;lt=0;var hi=Ie===""?".":Ie+":";if(E(H))for(var ci=0;ci<H.length;ci++)Ie=H[ci],it=hi+X(Ie,ci),lt+=G(Ie,te,Se,it,Ue);else if(ci=p(H),typeof ci=="function")for(H=ci.call(H),ci=0;!(Ie=H.next()).done;)Ie=Ie.value,it=hi+X(Ie,ci++),lt+=G(Ie,te,Se,it,Ue);else if(it==="object"){if(typeof H.then=="function")return G(J(H),te,Se,Ie,Ue);throw te=String(H),Error("Objects are not valid as a React child (found: "+(te==="[object Object]"?"object with keys {"+Object.keys(H).join(", ")+"}":te)+"). If you meant to render a collection of children, use an array instead.")}return lt}function Y(H,te,Se){if(H==null)return H;var Ie=[],Ue=0;return G(H,Ie,"","",function(it){return te.call(Se,it,Ue++)}),Ie}function ie(H){if(H._status===-1){var te=H._result;te=te(),te.then(function(Se){(H._status===0||H._status===-1)&&(H._status=1,H._result=Se)},function(Se){(H._status===0||H._status===-1)&&(H._status=2,H._result=Se)}),H._status===-1&&(H._status=0,H._result=te)}if(H._status===1)return H._result.default;throw H._result}var ve=typeof reportError=="function"?reportError:function(H){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var te=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof H=="object"&&H!==null&&typeof H.message=="string"?String(H.message):String(H),error:H});if(!window.dispatchEvent(te))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",H);return}console.error(H)},Le={map:Y,forEach:function(H,te,Se){Y(H,function(){te.apply(this,arguments)},Se)},count:function(H){var te=0;return Y(H,function(){te++}),te},toArray:function(H){return Y(H,function(te){return te})||[]},only:function(H){if(!z(H))throw Error("React.Children.only expected to receive a single React element child.");return H}};return ei.Activity=h,ei.Children=Le,ei.Component=y,ei.Fragment=t,ei.Profiler=n,ei.PureComponent=L,ei.StrictMode=i,ei.Suspense=l,ei.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=T,ei.__COMPILER_RUNTIME={__proto__:null,c:function(H){return T.H.useMemoCache(H)}},ei.cache=function(H){return function(){return H.apply(null,arguments)}},ei.cacheSignal=function(){return null},ei.cloneElement=function(H,te,Se){if(H==null)throw Error("The argument must be a React element, but you passed "+H+".");var Ie=b({},H.props),Ue=H.key;if(te!=null)for(it in te.key!==void 0&&(Ue=""+te.key),te)!M.call(te,it)||it==="key"||it==="__self"||it==="__source"||it==="ref"&&te.ref===void 0||(Ie[it]=te[it]);var it=arguments.length-2;if(it===1)Ie.children=Se;else if(1<it){for(var lt=Array(it),hi=0;hi<it;hi++)lt[hi]=arguments[hi+2];Ie.children=lt}return A(H.type,Ue,Ie)},ei.createContext=function(H){return H={$$typeof:r,_currentValue:H,_currentValue2:H,_threadCount:0,Provider:null,Consumer:null},H.Provider=H,H.Consumer={$$typeof:o,_context:H},H},ei.createElement=function(H,te,Se){var Ie,Ue={},it=null;if(te!=null)for(Ie in te.key!==void 0&&(it=""+te.key),te)M.call(te,Ie)&&Ie!=="key"&&Ie!=="__self"&&Ie!=="__source"&&(Ue[Ie]=te[Ie]);var lt=arguments.length-2;if(lt===1)Ue.children=Se;else if(1<lt){for(var hi=Array(lt),ci=0;ci<lt;ci++)hi[ci]=arguments[ci+2];Ue.children=hi}if(H&&H.defaultProps)for(Ie in lt=H.defaultProps,lt)Ue[Ie]===void 0&&(Ue[Ie]=lt[Ie]);return A(H,it,Ue)},ei.createRef=function(){return{current:null}},ei.forwardRef=function(H){return{$$typeof:a,render:H}},ei.isValidElement=z,ei.lazy=function(H){return{$$typeof:d,_payload:{_status:-1,_result:H},_init:ie}},ei.memo=function(H,te){return{$$typeof:c,type:H,compare:te===void 0?null:te}},ei.startTransition=function(H){var te=T.T,Se={};T.T=Se;try{var Ie=H(),Ue=T.S;Ue!==null&&Ue(Se,Ie),typeof Ie=="object"&&Ie!==null&&typeof Ie.then=="function"&&Ie.then(D,ve)}catch(it){ve(it)}finally{te!==null&&Se.types!==null&&(te.types=Se.types),T.T=te}},ei.unstable_useCacheRefresh=function(){return T.H.useCacheRefresh()},ei.use=function(H){return T.H.use(H)},ei.useActionState=function(H,te,Se){return T.H.useActionState(H,te,Se)},ei.useCallback=function(H,te){return T.H.useCallback(H,te)},ei.useContext=function(H){return T.H.useContext(H)},ei.useDebugValue=function(){},ei.useDeferredValue=function(H,te){return T.H.useDeferredValue(H,te)},ei.useEffect=function(H,te){return T.H.useEffect(H,te)},ei.useEffectEvent=function(H){return T.H.useEffectEvent(H)},ei.useId=function(){return T.H.useId()},ei.useImperativeHandle=function(H,te,Se){return T.H.useImperativeHandle(H,te,Se)},ei.useInsertionEffect=function(H,te){return T.H.useInsertionEffect(H,te)},ei.useLayoutEffect=function(H,te){return T.H.useLayoutEffect(H,te)},ei.useMemo=function(H,te){return T.H.useMemo(H,te)},ei.useOptimistic=function(H,te){return T.H.useOptimistic(H,te)},ei.useReducer=function(H,te,Se){return T.H.useReducer(H,te,Se)},ei.useRef=function(H){return T.H.useRef(H)},ei.useState=function(H){return T.H.useState(H)},ei.useSyncExternalStore=function(H,te,Se){return T.H.useSyncExternalStore(H,te,Se)},ei.useTransition=function(){return T.H.useTransition()},ei.version="19.2.3",ei}var uie;function TG(){return uie||(uie=1,f9.exports=JSe()),f9.exports}var g9={exports:{}},Fr={};var fie;function exe(){if(fie)return Fr;fie=1;var s=TG();function e(l){var c="https://react.dev/errors/"+l;if(1<arguments.length){c+="?args[]="+encodeURIComponent(arguments[1]);for(var d=2;d<arguments.length;d++)c+="&args[]="+encodeURIComponent(arguments[d])}return"Minified React error #"+l+"; visit "+c+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function t(){}var i={d:{f:t,r:function(){throw Error(e(522))},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},n=Symbol.for("react.portal");function o(l,c,d){var h=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:n,key:h==null?null:""+h,children:l,containerInfo:c,implementation:d}}var r=s.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function a(l,c){if(l==="font")return"";if(typeof c=="string")return c==="use-credentials"?c:""}return Fr.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,Fr.createPortal=function(l,c){var d=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!c||c.nodeType!==1&&c.nodeType!==9&&c.nodeType!==11)throw Error(e(299));return o(l,c,null,d)},Fr.flushSync=function(l){var c=r.T,d=i.p;try{if(r.T=null,i.p=2,l)return l()}finally{r.T=c,i.p=d,i.d.f()}},Fr.preconnect=function(l,c){typeof l=="string"&&(c?(c=c.crossOrigin,c=typeof c=="string"?c==="use-credentials"?c:"":void 0):c=null,i.d.C(l,c))},Fr.prefetchDNS=function(l){typeof l=="string"&&i.d.D(l)},Fr.preinit=function(l,c){if(typeof l=="string"&&c&&typeof c.as=="string"){var d=c.as,h=a(d,c.crossOrigin),f=typeof c.integrity=="string"?c.integrity:void 0,p=typeof c.fetchPriority=="string"?c.fetchPriority:void 0;d==="style"?i.d.S(l,typeof c.precedence=="string"?c.precedence:void 0,{crossOrigin:h,integrity:f,fetchPriority:p}):d==="script"&&i.d.X(l,{crossOrigin:h,integrity:f,fetchPriority:p,nonce:typeof c.nonce=="string"?c.nonce:void 0})}},Fr.preinitModule=function(l,c){if(typeof l=="string")if(typeof c=="object"&&c!==null){if(c.as==null||c.as==="script"){var d=a(c.as,c.crossOrigin);i.d.M(l,{crossOrigin:d,integrity:typeof c.integrity=="string"?c.integrity:void 0,nonce:typeof c.nonce=="string"?c.nonce:void 0})}}else c==null&&i.d.M(l)},Fr.preload=function(l,c){if(typeof l=="string"&&typeof c=="object"&&c!==null&&typeof c.as=="string"){var d=c.as,h=a(d,c.crossOrigin);i.d.L(l,d,{crossOrigin:h,integrity:typeof c.integrity=="string"?c.integrity:void 0,nonce:typeof c.nonce=="string"?c.nonce:void 0,type:typeof c.type=="string"?c.type:void 0,fetchPriority:typeof c.fetchPriority=="string"?c.fetchPriority:void 0,referrerPolicy:typeof c.referrerPolicy=="string"?c.referrerPolicy:void 0,imageSrcSet:typeof c.imageSrcSet=="string"?c.imageSrcSet:void 0,imageSizes:typeof c.imageSizes=="string"?c.imageSizes:void 0,media:typeof c.media=="string"?c.media:void 0})}},Fr.preloadModule=function(l,c){if(typeof l=="string")if(c){var d=a(c.as,c.crossOrigin);i.d.m(l,{as:typeof c.as=="string"&&c.as!=="script"?c.as:void 0,crossOrigin:d,integrity:typeof c.integrity=="string"?c.integrity:void 0})}else i.d.m(l)},Fr.requestFormReset=function(l){i.d.r(l)},Fr.unstable_batchedUpdates=function(l,c){return l(c)},Fr.useFormState=function(l,c,d){return r.H.useFormState(l,c,d)},Fr.useFormStatus=function(){return r.H.useHostTransitionStatus()},Fr.version="19.2.3",Fr}var gie;function txe(){if(gie)return g9.exports;gie=1;function s(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(e){console.error(e)}}return s(),g9.exports=exe(),g9.exports}var pie;function ixe(){if(pie)return rL;pie=1;var s=QSe(),e=TG(),t=txe();function i(u){var g="https://react.dev/errors/"+u;if(1<arguments.length){g+="?args[]="+encodeURIComponent(arguments[1]);for(var _=2;_<arguments.length;_++)g+="&args[]="+encodeURIComponent(arguments[_])}return"Minified React error #"+u+"; visit "+g+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function n(u){return!(!u||u.nodeType!==1&&u.nodeType!==9&&u.nodeType!==11)}function o(u){var g=u,_=u;if(u.alternate)for(;g.return;)g=g.return;else{u=g;do g=u,(g.flags&4098)!==0&&(_=g.return),u=g.return;while(u)}return g.tag===3?_:null}function r(u){if(u.tag===13){var g=u.memoizedState;if(g===null&&(u=u.alternate,u!==null&&(g=u.memoizedState)),g!==null)return g.dehydrated}return null}function a(u){if(u.tag===31){var g=u.memoizedState;if(g===null&&(u=u.alternate,u!==null&&(g=u.memoizedState)),g!==null)return g.dehydrated}return null}function l(u){if(o(u)!==u)throw Error(i(188))}function c(u){var g=u.alternate;if(!g){if(g=o(u),g===null)throw Error(i(188));return g!==u?null:u}for(var _=u,w=g;;){var k=_.return;if(k===null)break;var I=k.alternate;if(I===null){if(w=k.return,w!==null){_=w;continue}break}if(k.child===I.child){for(I=k.child;I;){if(I===_)return l(k),u;if(I===w)return l(k),g;I=I.sibling}throw Error(i(188))}if(_.return!==w.return)_=k,w=I;else{for(var O=!1,V=k.child;V;){if(V===_){O=!0,_=k,w=I;break}if(V===w){O=!0,w=k,_=I;break}V=V.sibling}if(!O){for(V=I.child;V;){if(V===_){O=!0,_=I,w=k;break}if(V===w){O=!0,w=I,_=k;break}V=V.sibling}if(!O)throw Error(i(189))}}if(_.alternate!==w)throw Error(i(190))}if(_.tag!==3)throw Error(i(188));return _.stateNode.current===_?u:g}function d(u){var g=u.tag;if(g===5||g===26||g===27||g===6)return u;for(u=u.child;u!==null;){if(g=d(u),g!==null)return g;u=u.sibling}return null}var h=Object.assign,f=Symbol.for("react.element"),p=Symbol.for("react.transitional.element"),m=Symbol.for("react.portal"),b=Symbol.for("react.fragment"),C=Symbol.for("react.strict_mode"),y=Symbol.for("react.profiler"),S=Symbol.for("react.consumer"),L=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),E=Symbol.for("react.suspense"),D=Symbol.for("react.suspense_list"),T=Symbol.for("react.memo"),M=Symbol.for("react.lazy"),A=Symbol.for("react.activity"),W=Symbol.for("react.memo_cache_sentinel"),z=Symbol.iterator;function U(u){return u===null||typeof u!="object"?null:(u=z&&u[z]||u["@@iterator"],typeof u=="function"?u:null)}var K=Symbol.for("react.client.reference");function X(u){if(u==null)return null;if(typeof u=="function")return u.$$typeof===K?null:u.displayName||u.name||null;if(typeof u=="string")return u;switch(u){case b:return"Fragment";case y:return"Profiler";case C:return"StrictMode";case E:return"Suspense";case D:return"SuspenseList";case A:return"Activity"}if(typeof u=="object")switch(u.$$typeof){case m:return"Portal";case L:return u.displayName||"Context";case S:return(u._context.displayName||"Context")+".Consumer";case x:var g=u.render;return u=u.displayName,u||(u=g.displayName||g.name||"",u=u!==""?"ForwardRef("+u+")":"ForwardRef"),u;case T:return g=u.displayName||null,g!==null?g:X(u.type)||"Memo";case M:g=u._payload,u=u._init;try{return X(u(g))}catch{}}return null}var J=Array.isArray,G=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Y=t.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ie={pending:!1,data:null,method:null,action:null},ve=[],Le=-1;function H(u){return{current:u}}function te(u){0>Le||(u.current=ve[Le],ve[Le]=null,Le--)}function Se(u,g){Le++,ve[Le]=u.current,u.current=g}var Ie=H(null),Ue=H(null),it=H(null),lt=H(null);function hi(u,g){switch(Se(it,g),Se(Ue,u),Se(Ie,null),g.nodeType){case 9:case 11:u=(u=g.documentElement)&&(u=u.namespaceURI)?Tte(u):0;break;default:if(u=g.tagName,g=g.namespaceURI)g=Tte(g),u=Nte(g,u);else switch(u){case"svg":u=1;break;case"math":u=2;break;default:u=0}}te(Ie),Se(Ie,u)}function ci(){te(Ie),te(Ue),te(it)}function to(u){u.memoizedState!==null&&Se(lt,u);var g=Ie.current,_=Nte(g,u.type);g!==_&&(Se(Ue,u),Se(Ie,_))}function Pr(u){Ue.current===u&&(te(Ie),te(Ue)),lt.current===u&&(te(lt),tL._currentValue=ie)}var io,na;function Lo(u){if(io===void 0)try{throw Error()}catch(_){var g=_.stack.trim().match(/\n( *(at )?)/);io=g&&g[1]||"",na=-1<_.stack.indexOf(`
3
3
  at`)?" (<anonymous>)":-1<_.stack.indexOf("@")?"@unknown:0:0":""}return`
4
4
  `+io+u+na}var fh=!1;function R_(u,g){if(!u||fh)return"";fh=!0;var _=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var w={DetermineComponentFrameRoot:function(){try{if(g){var Ae=function(){throw Error()};if(Object.defineProperty(Ae.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(Ae,[])}catch(xe){var ye=xe}Reflect.construct(u,[],Ae)}else{try{Ae.call()}catch(xe){ye=xe}u.call(Ae.prototype)}}else{try{throw Error()}catch(xe){ye=xe}(Ae=u())&&typeof Ae.catch=="function"&&Ae.catch(function(){})}}catch(xe){if(xe&&ye&&typeof xe.stack=="string")return[xe.stack,ye.stack]}return[null,null]}};w.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var k=Object.getOwnPropertyDescriptor(w.DetermineComponentFrameRoot,"name");k&&k.configurable&&Object.defineProperty(w.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var I=w.DetermineComponentFrameRoot(),O=I[0],V=I[1];if(O&&V){var ee=O.split(`
@@ -909,7 +909,7 @@ ${e.toString()}`}}class FP{constructor(e=new JS,t=!1,i,n=det){this._services=e,t
909
909
  `:`\r
910
910
  `}};Yq=Ru([zn(0,ct)],Yq);class yet{publicLog2(){}}const A2=class A2{constructor(){const e=je.from({scheme:A2.SCHEME,authority:"model",path:"/"});this.workspace={id:e_e,folders:[new P9e({uri:e,name:"",index:0})]}}getWorkspace(){return this.workspace}getWorkspaceFolder(e){return e&&e.scheme===A2.SCHEME?this.workspace.folders[0]:null}};A2.SCHEME="inmemory";let Xq=A2;function HP(s,e,t){if(!e||!(s instanceof BP))return;const i=[];Object.keys(e).forEach(n=>{e7e(n)&&i.push([`editor.${n}`,e[n]]),t&&t7e(n)&&i.push([`diffEditor.${n}`,e[n]])}),i.length>0&&s.updateValues(i)}let Qq=class{constructor(e){this._modelService=e}hasPreviewHandler(){return!1}async apply(e,t){const i=Array.isArray(e)?e:jZ.convert(e),n=new Map;for(const a of i){if(!(a instanceof Im))throw new Error("bad edit - only text edits are supported");const l=this._modelService.getModel(a.resource);if(!l)throw new Error("bad edit - model not found");if(typeof a.versionId=="number"&&l.getVersionId()!==a.versionId)throw new Error("bad state - model changed in the meantime");let c=n.get(l);c||(c=[],n.set(l,c)),c.push(un.replaceMove(R.lift(a.textEdit.range),a.textEdit.text))}let o=0,r=0;for(const[a,l]of n)a.pushStackElement(),a.pushEditOperations([],l,()=>[]),a.pushStackElement(),r+=1,o+=l.length;return{ariaSummary:Av($$.bulkEditServiceSummary,o,r),isApplied:o>0}}};Qq=Ru([zn(0,Yi)],Qq);class xet{getUriLabel(e,t){return e.scheme==="file"?e.fsPath:e.path}getUriBasenameLabel(e){return oc(e)}}let Jq=class extends BQe{constructor(e,t){super(e),this._codeEditorService=t}showContextView(e,t,i){if(!t){const n=this._codeEditorService.getFocusedCodeEditor()||this._codeEditorService.getActiveCodeEditor();n&&(t=n.getContainerDomNode())}return super.showContextView(e,t,i)}};Jq=Ru([zn(0,Du),zn(1,Bt)],Jq);class Let{constructor(){this._neverEmitter=new j,this.onDidChangeTrust=this._neverEmitter.event}isWorkspaceTrusted(){return!0}}class ket extends gq{constructor(){super()}}class Eet extends pet{constructor(){super(new E2e)}}let eG=class extends _q{constructor(e,t,i,n,o,r){super(e,t,i,n,o,r),this.configure({blockMouse:!1})}};eG=Ru([zn(0,$o),zn(1,_n),zn(2,Gg),zn(3,zt),zn(4,uc),zn(5,tt)],eG);const Iet={esmModuleLocation:void 0,label:"editorWorkerService"};let tG=class extends iq{constructor(e,t,i,n,o){super(Iet,e,t,i,n,o)}};tG=Ru([zn(0,Yi),zn(1,_F),zn(2,Ii),zn(3,Xi),zn(4,Oe)],tG);class Det{async playSignal(e,t){}}St(Ii,Eet,0);St(ct,BP,0);St(_F,Zq,0);St(Kbe,Yq,0);St(Og,Xq,0);St(o0,xet,0);St($o,yet,0);St(vD,Cet,0);St(tY,vet,0);St(_n,Gq,0);St(Tu,H1,0);St(mn,ket,0);St(Sl,DXe,0);St(Yi,Sq,0);St(LK,yq,0);St(tt,$q,0);St(Epe,bet,0);St(Mg,qq,0);St(ar,v8e,0);St(ia,tG,0);St(aD,Qq,0);St(rve,Let,0);St(rr,jq,0);St(Js,Wq,0);St(mc,EWe,0);St(Di,Kq,0);St(zt,DS,0);St(zo,Bq,0);St(Gg,Jq,0);St(Kg,wq,0);St(Da,zq,0);St(yl,eG,0);St(uc,xV,0);St(jg,Det,0);St(dZ,met,0);St(tfe,N2e,0);St($Y,UUe,0);var st;(function(s){const e=new JS;for(const[l,c]of dne())e.set(l,c);const t=new FP(e,!0);e.set(He,t);function i(l){n||r({});const c=e.get(l);if(!c)throw new Error("Missing service "+l);return c instanceof jh?t.invokeFunction(d=>d.get(l)):c}s.get=i;let n=!1;const o=new j;function r(l){if(n)return t;n=!0;for(const[d,h]of dne())e.get(d)||e.set(d,h);for(const d in l)if(l.hasOwnProperty(d)){const h=mt(d);e.get(h)instanceof jh&&e.set(h,l[d])}const c=P7e();for(const d of c)try{t.createInstance(d)}catch(h){nt(h)}return o.fire(),t}s.initialize=r;function a(l){if(n)return l();const c=new ne,d=c.add(o.event(()=>{d.dispose(),c.add(l())}));return c}s.withServices=a})(st||(st={}));var Tet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Wce=function(s,e){return function(t,i){e(t,i,s)}},pM,Iv;let iG=(Iv=class{constructor(e,t){this._configurationService=e,this._languageService=t}async renderCodeBlock(e,t,i){const n=ih(i.context)?i.context:void 0;let o;e?o=this._languageService.getLanguageIdByLanguageName(e):n&&(o=n.getModel()?.getLanguageId()),o||(o=ul);const r=await O4e(this._languageService,t,o),a=pM._ttpTokenizer?pM._ttpTokenizer.createHTML(r)??r:r,l=document.createElement("span");l.innerHTML=a;const c=l.querySelector(".monaco-tokenized-source");return pn(c)?(Hs(c,this.getFontInfo(n)),l):document.createElement("span")}getFontInfo(e){return e?e.getOption(59):dDe({fontFamily:this._configurationService.getValue("editor").fontFamily},1)}},pM=Iv,Iv._ttpTokenizer=Eu("tokenizeToString",{createHTML(e){return e}}),Iv);iG=pM=Tet([Wce(0,ct),Wce(1,mn)],iG);var yX=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},wi=function(s,e){return function(t,i){e(t,i,s)}};let Net=0,Vce=!1;function Ret(s){if(!s){if(Vce)return;Vce=!0}qke(s||ai.document.body)}let WP=class extends Uv{constructor(e,t,i,n,o,r,a,l,c,d,h,f,p,m){const b={...t};b.ariaLabel=b.ariaLabel||z$.editorViewAccessibleLabel,super(e,b,{},i,n,o,r,c,d,h,f,p),l instanceof DS?this._standaloneKeybindingService=l:this._standaloneKeybindingService=null,Ret(b.ariaContainerElement),w5e((C,y)=>i.createInstance(uS,C,{instantHover:y},{})),NFe(a),m.setDefaultCodeBlockRenderer(i.createInstance(iG))}addCommand(e,t,i){if(!this._standaloneKeybindingService)return console.warn("Cannot add command because the editor is configured with an unrecognized KeybindingService"),null;const n="DYNAMIC_"+ ++Net,o=le.deserialize(i);return this._standaloneKeybindingService.addDynamicKeybinding(n,e,t,o),n}createContextKey(e,t){return this._contextKeyService.createKey(e,t)}addAction(e){if(typeof e.id!="string"||typeof e.label!="string"||typeof e.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");if(!this._standaloneKeybindingService)return console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),q.None;const t=e.id,i=e.label,n=le.and(le.equals("editorId",this.getId()),le.deserialize(e.precondition)),o=e.keybindings,r=le.and(n,le.deserialize(e.keybindingContext)),a=e.contextMenuGroupId||null,l=e.contextMenuOrder||0,c=(p,...m)=>Promise.resolve(e.run(this,...m)),d=new ne,h=this.getId()+":"+t;if(d.add(Rt.registerCommand(h,c)),a){const p={command:{id:h,title:i},when:n,group:a,order:l};d.add(Bs.appendMenuItem(Pe.EditorContext,p))}if(Array.isArray(o))for(const p of o)d.add(this._standaloneKeybindingService.addDynamicKeybinding(h,p,c,r));const f=new Xge(h,i,i,void 0,n,(...p)=>Promise.resolve(e.run(this,...p)),this._contextKeyService);return this._actions.set(t,f),d.add(Fe(()=>{this._actions.delete(t)})),d}_triggerCommand(e,t){if(this._codeEditorService instanceof EP)try{this._codeEditorService.setActiveCodeEditor(this),super._triggerCommand(e,t)}finally{this._codeEditorService.setActiveCodeEditor(null)}else super._triggerCommand(e,t)}};WP=yX([wi(2,He),wi(3,Bt),wi(4,Di),wi(5,tt),wi(6,Mr),wi(7,zt),wi(8,an),wi(9,_n),wi(10,Js),wi(11,Xi),wi(12,Oe),wi(13,ad)],WP);let nG=class extends WP{constructor(e,t,i,n,o,r,a,l,c,d,h,f,p,m,b,C,y){const S={...t};HP(h,S,!1);const L=c.registerEditorContainer(e);typeof S.theme=="string"&&c.setTheme(S.theme),typeof S.autoDetectHighContrast<"u"&&c.setAutoDetectHighContrast(!!S.autoDetectHighContrast);const x=S.model;delete S.model,super(e,S,i,n,o,r,a,l,c,d,f,b,C,y),this._configurationService=h,this._standaloneThemeService=c,this._register(L);let E;if(typeof x>"u"){const D=m.getLanguageIdByMimeType(S.language)||S.language||ul;E=Qve(p,m,S.value||"",D,void 0),this._ownsModel=!0}else E=x,this._ownsModel=!1;if(this._attachModel(E),E){const D={oldModelUrl:null,newModelUrl:E.uri};this._onDidChangeModel.fire(D)}}dispose(){super.dispose()}updateOptions(e){HP(this._configurationService,e,!1),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_postDetachModelCleanup(e){super._postDetachModelCleanup(e),e&&this._ownsModel&&(e.dispose(),this._ownsModel=!1)}};nG=yX([wi(2,He),wi(3,Bt),wi(4,Di),wi(5,tt),wi(6,Mr),wi(7,zt),wi(8,Sl),wi(9,_n),wi(10,ct),wi(11,Js),wi(12,Yi),wi(13,mn),wi(14,Xi),wi(15,Oe),wi(16,ad)],nG);let sG=class extends Cu{constructor(e,t,i,n,o,r,a,l,c,d,h,f){const p={...t};HP(l,p,!0);const m=r.registerEditorContainer(e);typeof p.theme=="string"&&r.setTheme(p.theme),typeof p.autoDetectHighContrast<"u"&&r.setAutoDetectHighContrast(!!p.autoDetectHighContrast),super(e,p,{},n,i,o,f,d),this._configurationService=l,this._standaloneThemeService=r,this._register(m)}dispose(){super.dispose()}updateOptions(e){HP(this._configurationService,e,!0),typeof e.theme=="string"&&this._standaloneThemeService.setTheme(e.theme),typeof e.autoDetectHighContrast<"u"&&this._standaloneThemeService.setAutoDetectHighContrast(!!e.autoDetectHighContrast),super.updateOptions(e)}_createInnerEditor(e,t,i){return e.createInstance(WP,t,i)}getOriginalEditor(){return super.getOriginalEditor()}getModifiedEditor(){return super.getModifiedEditor()}addCommand(e,t,i){return this.getModifiedEditor().addCommand(e,t,i)}createContextKey(e,t){return this.getModifiedEditor().createContextKey(e,t)}addAction(e){return this.getModifiedEditor().addAction(e)}};sG=yX([wi(2,He),wi(3,tt),wi(4,Bt),wi(5,Sl),wi(6,_n),wi(7,ct),wi(8,yl),wi(9,Mg),wi(10,Da),wi(11,jg)],sG);function Qve(s,e,t,i,n){if(t=t||"",!i){const o=t.indexOf(`
911
911
  `);let r=t;return o!==-1&&(r=t.substring(0,o)),zce(s,t,e.createByFilepathOrFirstLine(n||null,r),n)}return zce(s,t,e.createById(i),n)}function zce(s,e,t,i){return s.createModel(e,t,i)}F("multiDiffEditor.headerBackground",{dark:"#262626",light:"tab.inactiveBackground",hcDark:"tab.inactiveBackground",hcLight:"tab.inactiveBackground"},v(142,"The background color of the diff editor's header"));F("multiDiffEditor.background",Mn,v(143,"The background color of the multi file diff editor"));F("multiDiffEditor.border",{dark:"sideBarSectionHeader.border",light:"#cccccc",hcDark:"sideBarSectionHeader.border",hcLight:"#cccccc"},v(144,"The border color of the multi file diff editor"));var Met=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Uce=function(s,e){return function(t,i){e(t,i,s)}};class Aet{constructor(e,t){this.viewModel=e,this.deltaScrollVertical=t}getId(){return this.viewModel}}let oG=class extends q{constructor(e,t,i,n,o){super(),this._container=e,this._overflowWidgetsDomNode=t,this._workbenchUIElementFactory=i,this._instantiationService=n,this._viewModel=et(this,void 0),this._collapsed=oe(this,l=>this._viewModel.read(l)?.collapsed.read(l)),this._editorContentHeight=et(this,500),this.contentHeight=oe(this,l=>(this._collapsed.read(l)?0:this._editorContentHeight.read(l))+this._outerEditorHeight),this._modifiedContentWidth=et(this,0),this._modifiedWidth=et(this,0),this._originalContentWidth=et(this,0),this._originalWidth=et(this,0),this.maxScroll=oe(this,l=>{const c=this._modifiedContentWidth.read(l)-this._modifiedWidth.read(l),d=this._originalContentWidth.read(l)-this._originalWidth.read(l);return c>d?{maxScroll:c,width:this._modifiedWidth.read(l)}:{maxScroll:d,width:this._originalWidth.read(l)}}),this._elements=Ot("div.multiDiffEntry",[Ot("div.header@header",[Ot("div.header-content",[Ot("div.collapse-button@collapseButton"),Ot("div.file-path",[Ot("div.title.modified.show-file-icons@primaryPath",[]),Ot("div.status.deleted@status",["R"]),Ot("div.title.original.show-file-icons@secondaryPath",[])]),Ot("div.actions@actions")])]),Ot("div.editorParent",[Ot("div.editorContainer@editor")])]),this.editor=this._register(this._instantiationService.createInstance(Cu,this._elements.editor,{overflowWidgetsDomNode:this._overflowWidgetsDomNode,fixedOverflowWidgets:!0},{})),this.isModifedFocused=Zi(this.editor.getModifiedEditor()).isFocused,this.isOriginalFocused=Zi(this.editor.getOriginalEditor()).isFocused,this.isFocused=oe(this,l=>this.isModifedFocused.read(l)||this.isOriginalFocused.read(l)),this._resourceLabel=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.primaryPath)):void 0,this._resourceLabel2=this._workbenchUIElementFactory.createResourceLabel?this._register(this._workbenchUIElementFactory.createResourceLabel(this._elements.secondaryPath)):void 0,this._dataStore=this._register(new ne),this._headerHeight=40,this._lastScrollTop=-1,this._isSettingScrollTop=!1;const r=new eO(this._elements.collapseButton,{});this._register(Xe(l=>{r.element.className="",r.icon=this._collapsed.read(l)?de.chevronRight:de.chevronDown})),this._register(r.onDidClick(()=>{this._viewModel.get()?.collapsed.set(!this._collapsed.get(),void 0)})),this._register(Xe(l=>{this._elements.editor.style.display=this._collapsed.read(l)?"none":"block"})),this._register(this.editor.getModifiedEditor().onDidLayoutChange(l=>{const c=this.editor.getModifiedEditor().getLayoutInfo().contentWidth;this._modifiedWidth.set(c,void 0)})),this._register(this.editor.getOriginalEditor().onDidLayoutChange(l=>{const c=this.editor.getOriginalEditor().getLayoutInfo().contentWidth;this._originalWidth.set(c,void 0)})),this._register(this.editor.onDidContentSizeChange(l=>{jL(c=>{this._editorContentHeight.set(l.contentHeight,c),this._modifiedContentWidth.set(this.editor.getModifiedEditor().getContentWidth(),c),this._originalContentWidth.set(this.editor.getOriginalEditor().getContentWidth(),c)})})),this._register(this.editor.getOriginalEditor().onDidScrollChange(l=>{if(this._isSettingScrollTop||!l.scrollTopChanged||!this._data)return;const c=l.scrollTop-this._lastScrollTop;this._data.deltaScrollVertical(c)})),this._register(Xe(l=>{const c=this._viewModel.read(l)?.isActive.read(l);this._elements.root.classList.toggle("active",c)})),this._container.appendChild(this._elements.root),this._outerEditorHeight=this._headerHeight,this._contextKeyService=this._register(o.createScoped(this._elements.actions));const a=this._register(this._instantiationService.createChild(new JS([tt,this._contextKeyService])));this._register(a.createInstance(RE,this._elements.actions,Pe.MultiDiffEditorFileToolbar,{actionRunner:this._register(new Wme(()=>this._viewModel.get()?.modifiedUri??this._viewModel.get()?.originalUri)),menuOptions:{shouldForwardArgs:!0},toolbarOptions:{primaryGroup:l=>l.startsWith("navigation")},actionViewItemProvider:(l,c)=>UZ(a,l,c)}))}setScrollLeft(e){this._modifiedContentWidth.get()-this._modifiedWidth.get()>this._originalContentWidth.get()-this._originalWidth.get()?this.editor.getModifiedEditor().setScrollLeft(e):this.editor.getOriginalEditor().setScrollLeft(e)}setData(e){this._data=e;function t(n){return{...n,scrollBeyondLastLine:!1,hideUnchangedRegions:{enabled:!0},scrollbar:{vertical:"hidden",horizontal:"hidden",handleMouseWheel:!1,useShadows:!1},renderOverviewRuler:!1,fixedOverflowWidgets:!0,overviewRulerBorder:!1}}if(!e){jL(n=>{this._viewModel.set(void 0,n),this.editor.setDiffModel(null,n),this._dataStore.clear()});return}const i=e.viewModel.documentDiffItem;if(jL(n=>{this._resourceLabel?.setUri(e.viewModel.modifiedUri??e.viewModel.originalUri,{strikethrough:e.viewModel.modifiedUri===void 0});let o=!1,r=!1,a=!1,l="";e.viewModel.modifiedUri&&e.viewModel.originalUri&&e.viewModel.modifiedUri.path!==e.viewModel.originalUri.path?(l="R",o=!0):e.viewModel.modifiedUri?e.viewModel.originalUri||(l="A",a=!0):(l="D",r=!0),this._elements.status.classList.toggle("renamed",o),this._elements.status.classList.toggle("deleted",r),this._elements.status.classList.toggle("added",a),this._elements.status.innerText=l,this._resourceLabel2?.setUri(o?e.viewModel.originalUri:void 0,{strikethrough:!0}),this._dataStore.clear(),this._viewModel.set(e.viewModel,n),this.editor.setDiffModel(e.viewModel.diffEditorViewModelRef,n),this.editor.updateOptions(t(i.options??{}))}),i.onOptionsDidChange&&this._dataStore.add(i.onOptionsDidChange(()=>{this.editor.updateOptions(t(i.options??{}))})),e.viewModel.isAlive.recomputeInitiallyAndOnChange(this._dataStore,n=>{n||this.setData(void 0)}),e.viewModel.documentDiffItem.contextKeys)for(const[n,o]of Object.entries(e.viewModel.documentDiffItem.contextKeys))this._contextKeyService.createKey(n,o)}render(e,t,i,n){this._elements.root.style.visibility="visible",this._elements.root.style.top=`${e.start}px`,this._elements.root.style.height=`${e.length}px`,this._elements.root.style.width=`${t}px`,this._elements.root.style.position="absolute";const o=e.length-this._headerHeight,r=Math.max(0,Math.min(n.start-e.start,o));this._elements.header.style.transform=`translateY(${r}px)`,jL(a=>{this.editor.layout({width:t-16-2,height:e.length-this._outerEditorHeight})});try{this._isSettingScrollTop=!0,this._lastScrollTop=i,this.editor.getOriginalEditor().setScrollTop(i)}finally{this._isSettingScrollTop=!1}this._elements.header.classList.toggle("shadow",r>0||i>0),this._elements.header.classList.toggle("collapsed",r===o)}hide(){this._elements.root.style.top="-100000px",this._elements.root.style.visibility="hidden"}};oG=Met([Uce(3,He),Uce(4,tt)],oG);class Oet{constructor(e){this._create=e,this._unused=new Set,this._used=new Set,this._itemData=new Map}getUnusedObj(e){let t;if(this._unused.size===0)t=this._create(e),this._itemData.set(t,e);else{const i=[...this._unused.values()];t=i.find(n=>this._itemData.get(n).getId()===e.getId())??i[0],this._unused.delete(t),this._itemData.set(t,e),t.setData(e)}return this._used.add(t),{object:t,dispose:()=>{this._used.delete(t),this._unused.size>5?t.dispose():this._unused.add(t)}}}dispose(){for(const e of this._used)e.dispose();for(const e of this._unused)e.dispose();this._used.clear(),this._unused.clear()}}var Pet=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},$ce=function(s,e){return function(t,i){e(t,i,s)}};let rG=class extends q{constructor(e,t,i,n,o,r){super(),this._element=e,this._dimension=t,this._viewModel=i,this._workbenchUIElementFactory=n,this._parentContextKeyService=o,this._parentInstantiationService=r,this._scrollableElements=Ot("div.scrollContent",[Ot("div@content",{style:{overflow:"hidden"}}),Ot("div.monaco-editor@overflowWidgetsDomNode",{})]),this._scrollable=this._register(new XS({forceIntegerValues:!1,scheduleAtNextAnimationFrame:c=>Xr(Ve(this._element),c),smoothScrollDuration:100})),this._scrollableElement=this._register(new I3(this._scrollableElements.root,{vertical:1,horizontal:1,useShadows:!1},this._scrollable)),this._elements=Ot("div.monaco-component.multiDiffEditor",{},[Ot("div",{},[this._scrollableElement.getDomNode()]),Ot("div.placeholder@placeholder",{},[Ot("div")])]),this._sizeObserver=this._register(new Cme(this._element,void 0)),this._objectPool=this._register(new Oet(c=>{const d=this._instantiationService.createInstance(oG,this._scrollableElements.content,this._scrollableElements.overflowWidgetsDomNode,this._workbenchUIElementFactory);return d.setData(c),d})),this.scrollTop=Gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollTop),this.scrollLeft=Gt(this,this._scrollableElement.onScroll,()=>this._scrollableElement.getScrollPosition().scrollLeft),this._viewItemsInfo=oe(this,c=>{const d=this._viewModel.read(c);if(!d)return{items:[],getItem:m=>{throw new qe}};const h=d.items.read(c),f=new Map;return{items:h.map(m=>{const b=c.store.add(new Bet(m,this._objectPool,this.scrollLeft,y=>{this._scrollableElement.setScrollPosition({scrollTop:this._scrollableElement.getScrollPosition().scrollTop+y})})),C=this._lastDocStates?.[b.getKey()];return C&&yi(y=>{b.setViewState(C,y)}),f.set(m,b),b}),getItem:m=>f.get(m)}}),this._viewItems=this._viewItemsInfo.map(this,c=>c.items),this._spaceBetweenPx=0,this._totalHeight=this._viewItems.map(this,(c,d)=>c.reduce((h,f)=>h+f.contentHeight.read(d)+this._spaceBetweenPx,0)),this.activeControl=oe(this,c=>{const d=this._viewModel.read(c)?.activeDiffItem.read(c);return d?this._viewItemsInfo.read(c).getItem(d).template.read(c)?.editor:void 0}),this._contextKeyService=this._register(this._parentContextKeyService.createScoped(this._element)),this._instantiationService=this._register(this._parentInstantiationService.createChild(new JS([tt,this._contextKeyService]))),this._contextKeyService.createKey(B.inMultiDiffEditor.key,!0),this._lastDocStates={},this._register(Ho((c,d)=>{const h=this._viewModel.read(c);if(h&&h.contextKeys)for(const[f,p]of Object.entries(h.contextKeys)){const m=this._contextKeyService.createKey(f,void 0);m.set(p),d.add(Fe(()=>m.reset()))}}));const a=this._parentContextKeyService.createKey(B.multiDiffEditorAllCollapsed.key,!1);this._register(Xe(c=>{const d=this._viewModel.read(c);if(d){const h=d.items.read(c).every(f=>f.collapsed.read(c));a.set(h)}})),this._register(Xe(c=>{const d=this._dimension.read(c);this._sizeObserver.observe(d)}));const l=oe(c=>{if(this._viewItems.read(c).length>0)return;const h=this._viewModel.read(c);return!h||h.isLoading.read(c)?v(145,"Loading..."):v(146,"No Changed Files")});this._register(Xe(c=>{const d=l.read(c);this._elements.placeholder.innerText=d??"",this._elements.placeholder.classList.toggle("visible",!!d)})),this._scrollableElements.content.style.position="relative",this._register(Xe(c=>{const d=this._sizeObserver.height.read(c);this._scrollableElements.root.style.height=`${d}px`;const h=this._totalHeight.read(c);this._scrollableElements.content.style.height=`${h}px`;const f=this._sizeObserver.width.read(c);let p=f;const m=this._viewItems.read(c),b=$K(m,Co(C=>C.maxScroll.read(c).maxScroll,Ca));if(b){const C=b.maxScroll.read(c);p=f+C.maxScroll}this._scrollableElement.setScrollDimensions({width:f,height:d,scrollHeight:h,scrollWidth:p})})),e.replaceChildren(this._elements.root),this._register(Fe(()=>{e.replaceChildren()})),this._register(Xe(c=>{const d=this._viewModel.read(c);if(d&&!d.isLoading.read(c)){if(d.items.read(c).length===0||d.activeDiffItem.read(c))return;this.goToNextChange()}})),this._register(this._register(Xe(c=>{jL(d=>{this.render(c)})})))}reveal(e,t){const i=this._viewItems.get(),n=i.findIndex(c=>c.viewModel.originalUri?.toString()===e.original?.toString()&&c.viewModel.modifiedUri?.toString()===e.modified?.toString());if(n===-1)throw new qe("Resource not found in diff editor");const o=i[n];this._viewModel.get().activeDiffItem.setCache(o.viewModel,void 0);let r=0;for(let c=0;c<n;c++)r+=i[c].contentHeight.get()+this._spaceBetweenPx;this._scrollableElement.setScrollPosition({scrollTop:r});const a=o.template.get()?.editor,l="original"in e?a?.getOriginalEditor():a?.getModifiedEditor();l&&t?.range&&(l.revealRangeInCenter(t.range),Fet(l,t.range))}goToNextChange(){this._navigateToChange("next")}_navigateToChange(e){const t=this._viewItems.get();if(t.length===0)return;const i=this._viewModel.get()?.activeDiffItem.get(),n=i?t.findIndex(l=>l.viewModel===i):-1;if(n===-1){this._goToFile(0,"first");return}const o=t[n];o.viewModel.collapsed.get()&&o.viewModel.collapsed.set(!1,void 0);const r=o.template.get()?.editor;if(r?.getDiffComputationResult()?.changes2?.length){const l=r.getModifiedEditor().getPosition()?.lineNumber||1,c=r.getDiffComputationResult().changes2;if(e==="next"?c.some(h=>h.modified.startLineNumber>l):c.some(h=>h.modified.endLineNumberExclusive<=l)){r.goToDiff(e);return}}const a=(n+(e==="next"?1:-1)+t.length)%t.length;this._goToFile(a,e==="next"?"first":"last")}_goToFile(e,t){const i=this._viewItems.get()[e];i.viewModel.collapsed.get()&&i.viewModel.collapsed.set(!1,void 0),this.reveal({original:i.viewModel.originalUri,modified:i.viewModel.modifiedUri});const n=i.template.get()?.editor;if(n?.getDiffComputationResult()?.changes2?.length)if(t==="first")n.revealFirstDiff();else{const o=n.getDiffComputationResult().changes2.at(-1),r=n.getModifiedEditor();r.setPosition({lineNumber:o.modified.startLineNumber,column:1}),r.revealLineInCenter(o.modified.startLineNumber)}n?.focus()}render(e){const t=this.scrollTop.read(e);let i=0,n=0,o=0;const r=this._sizeObserver.height.read(e),a=Be.ofStartAndLength(t,r),l=this._sizeObserver.width.read(e);for(const c of this._viewItems.read(e)){const d=c.contentHeight.read(e),h=Math.min(d,r),f=Be.ofStartAndLength(n,h),p=Be.ofStartAndLength(o,d);if(p.isBefore(a))i-=d-h,c.hide();else if(p.isAfter(a))c.hide();else{const m=Math.max(0,Math.min(a.start-p.start,d-h));i-=m;const b=Be.ofStartAndLength(t+i,r);c.render(f,m,l,b)}n+=h+this._spaceBetweenPx,o+=d+this._spaceBetweenPx}this._scrollableElements.content.style.transform=`translateY(${-(t+i)}px)`}};rG=Pet([$ce(4,tt),$ce(5,He)],rG);function Fet(s,e){const t=s.getModel(),i=s.createDecorationsCollection([{range:e,options:{description:"symbol-navigate-action-highlight",className:"symbolHighlight"}}]);setTimeout(()=>{s.getModel()===t&&i.clear()},350)}class Bet extends q{constructor(e,t,i,n){super(),this.viewModel=e,this._objectPool=t,this._scrollLeft=i,this._deltaScrollVertical=n,this._templateRef=this._register(rK(this,void 0)),this.contentHeight=oe(this,o=>this._templateRef.read(o)?.object.contentHeight?.read(o)??this.viewModel.lastTemplateData.read(o).contentHeight),this.maxScroll=oe(this,o=>this._templateRef.read(o)?.object.maxScroll.read(o)??{maxScroll:0,scrollWidth:0}),this.template=oe(this,o=>this._templateRef.read(o)?.object),this._isHidden=et(this,!1),this._isFocused=oe(this,o=>this.template.read(o)?.isFocused.read(o)??!1),this.viewModel.setIsFocused(this._isFocused,void 0),this._register(Xe(o=>{const r=this._scrollLeft.read(o);this._templateRef.read(o)?.object.setScrollLeft(r)})),this._register(Xe(o=>{const r=this._templateRef.read(o);!r||!this._isHidden.read(o)||r.object.isFocused.read(o)||this._clear()}))}dispose(){this._clear(),super.dispose()}toString(){return`VirtualViewItem(${this.viewModel.documentDiffItem.modified?.uri.toString()})`}getKey(){return this.viewModel.getKey()}setViewState(e,t){this.viewModel.collapsed.set(e.collapsed,t),this._updateTemplateData(t);const i=this.viewModel.lastTemplateData.get(),n=e.selections?.map(Ne.liftSelection);this.viewModel.lastTemplateData.set({...i,selections:n},t);const o=this._templateRef.get();o&&n&&o.object.editor.setSelections(n)}_updateTemplateData(e){const t=this._templateRef.get();t&&this.viewModel.lastTemplateData.set({contentHeight:t.object.contentHeight.get(),selections:t.object.editor.getSelections()??void 0},e)}_clear(){const e=this._templateRef.get();e&&yi(t=>{this._updateTemplateData(t),e.object.hide(),this._templateRef.set(void 0,t)})}hide(){this._isHidden.set(!0,void 0)}render(e,t,i,n){this._isHidden.set(!1,void 0);let o=this._templateRef.get();if(!o){o=this._objectPool.getUnusedObj(new Aet(this.viewModel,this._deltaScrollVertical)),this._templateRef.set(o,void 0);const r=this.viewModel.lastTemplateData.get().selections;r&&o.object.editor.setSelections(r)}o.object.render(e,i,t,n)}}var Het=function(s,e,t,i){var n=arguments.length,o=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,t):i,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(s,e,t,i);else for(var a=s.length-1;a>=0;a--)(r=s[a])&&(o=(n<3?r(o):n>3?r(e,t,o):r(e,t))||o);return n>3&&o&&Object.defineProperty(e,t,o),o},Wet=function(s,e){return function(t,i){e(t,i,s)}};let aG=class extends q{constructor(e,t,i){super(),this._element=e,this._workbenchUIElementFactory=t,this._instantiationService=i,this._dimension=et(this,void 0),this._viewModel=et(this,void 0),this._widgetImpl=oe(this,n=>n.store.add(this._instantiationService.createInstance(Sf(rG),this._element,this._dimension,this._viewModel,this._workbenchUIElementFactory))),this._register(Zy(this._widgetImpl))}};aG=Het([Wet(2,He)],aG);function Vet(s,e,t){return st.initialize(t||{}).createInstance(nG,s,e)}function zet(s){return st.get(Bt).onCodeEditorAdd(t=>{s(t)})}function Uet(s){return st.get(Bt).onDiffEditorAdd(t=>{s(t)})}function $et(){return st.get(Bt).listCodeEditors()}function jet(){return st.get(Bt).listDiffEditors()}function qet(s,e,t){return st.initialize(t||{}).createInstance(sG,s,e)}function Get(s,e){const t=st.initialize(e||{});return new aG(s,{},t)}function Ket(s){if(typeof s.id!="string"||typeof s.run!="function")throw new Error("Invalid command descriptor, `id` and `run` are required properties!");return Rt.registerCommand(s.id,s.run)}function Zet(s){if(typeof s.id!="string"||typeof s.label!="string"||typeof s.run!="function")throw new Error("Invalid action descriptor, `id`, `label` and `run` are required properties!");const e=le.deserialize(s.precondition),t=(n,...o)=>ps.runEditorCommand(n,o,e,(r,a,l)=>Promise.resolve(s.run(a,...l))),i=new ne;if(i.add(Rt.registerCommand(s.id,t)),s.contextMenuGroupId){const n={command:{id:s.id,title:s.label},when:e,group:s.contextMenuGroupId,order:s.contextMenuOrder||0};i.add(Bs.appendMenuItem(Pe.EditorContext,n))}if(Array.isArray(s.keybindings)){const n=st.get(zt);if(!(n instanceof DS))console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService");else{const o=le.and(e,le.deserialize(s.keybindingContext));i.add(n.addDynamicKeybindings(s.keybindings.map(r=>({keybinding:r,command:s.id,when:o}))))}}return i}function Yet(s){return Jve([s])}function Jve(s){const e=st.get(zt);return e instanceof DS?e.addDynamicKeybindings(s.map(t=>({keybinding:t.keybinding,command:t.command,commandArgs:t.commandArgs,when:le.deserialize(t.when)}))):(console.warn("Cannot add keybinding because the editor is configured with an unrecognized KeybindingService"),q.None)}function Xet(s,e,t){const i=st.get(mn),n=i.getLanguageIdByMimeType(e)||e;return Qve(st.get(Yi),i,s,n,t)}function Qet(s,e){const t=st.get(mn),i=t.getLanguageIdByMimeType(e)||e||ul;s.setLanguage(t.createById(i))}function Jet(s,e,t){s&&st.get(Tu).changeOne(e,s.uri,t)}function ett(s){st.get(Tu).changeAll(s,[])}function ttt(s){return st.get(Tu).read(s)}function itt(s){return st.get(Tu).onMarkerChanged(s)}function ntt(s){return st.get(Yi).getModel(s)}function stt(){return st.get(Yi).getModels()}function ott(s){return st.get(Yi).onModelAdded(s)}function rtt(s){return st.get(Yi).onModelRemoved(s)}function att(s){return st.get(Yi).onModelLanguageChanged(t=>{s({model:t.model,oldLanguage:t.oldLanguageId})})}function ltt(s){return hQe(st.get(Yi),s)}function ctt(s,e){const t=st.get(mn),i=st.get(Sl);return _X.colorizeElement(i,t,s,e).then(()=>{i.registerEditorContainer(s)})}function dtt(s,e,t){const i=st.get(mn);return st.get(Sl).registerEditorContainer(ai.document.body),_X.colorize(i,s,e,t)}function htt(s,e,t=4){return st.get(Sl).registerEditorContainer(ai.document.body),_X.colorizeModelLine(s,e,t)}function utt(s){const e=hn.get(s);return e||{getInitialState:()=>cS,tokenize:(t,i,n)=>cZ(s,n)}}function ftt(s,e){hn.getOrCreate(e);const t=utt(e),i=ka(s),n=[];let o=t.getInitialState();for(let r=0,a=i.length;r<a;r++){const l=i[r],c=t.tokenize(l,!0,o);n[r]=c.tokens,o=c.endState}return n}function gtt(s,e){st.get(Sl).defineTheme(s,e)}function ptt(s){st.get(Sl).setTheme(s)}function mtt(){UH.clearAllFontInfos()}function _tt(s,e){return Rt.registerCommand({id:s,handler:e})}function btt(s){return st.get(Kg).registerOpener({async open(t){return typeof t=="string"&&(t=je.parse(t)),s.open(t)}})}function vtt(s){return st.get(Bt).registerCodeEditorOpenHandler(async(t,i,n)=>{if(!i)return null;const o=t.options?.selection;let r;return o&&typeof o.endLineNumber=="number"&&typeof o.endColumn=="number"?r=o:o&&(r={lineNumber:o.startLineNumber,column:o.startColumn}),await s.openCodeEditor(i,t.resource,r)?i:null})}function Ctt(){return{create:Vet,getEditors:$et,getDiffEditors:jet,onDidCreateEditor:zet,onDidCreateDiffEditor:Uet,createDiffEditor:qet,addCommand:Ket,addEditorAction:Zet,addKeybindingRule:Yet,addKeybindingRules:Jve,createModel:Xet,setModelLanguage:Qet,setModelMarkers:Jet,getModelMarkers:ttt,removeAllMarkers:ett,onDidChangeMarkers:itt,getModels:stt,getModel:ntt,onDidCreateModel:ott,onWillDisposeModel:rtt,onDidChangeModelLanguage:att,createWebWorker:ltt,colorizeElement:ctt,colorize:dtt,colorizeModelLine:htt,tokenize:ftt,defineTheme:gtt,setTheme:ptt,remeasureFonts:mtt,registerCommand:_tt,registerLinkOpener:btt,registerEditorOpener:vtt,AccessibilitySupport:nj,ContentWidgetPositionPreference:cj,CursorChangeReason:dj,DefaultEndOfLine:hj,EditorAutoIndentStrategy:fj,EditorOption:gj,EndOfLinePreference:pj,EndOfLineSequence:mj,MinimapPosition:Ij,MinimapSectionHeaderStyle:Dj,MouseTargetType:Tj,OverlayWidgetPositionPreference:Mj,OverviewRulerLane:Aj,GlyphMarginLane:_j,RenderLineNumbersType:Fj,RenderMinimap:Bj,ScrollbarVisibility:Wj,ScrollType:Hj,TextEditorCursorBlinkingStyle:Gj,TextEditorCursorStyle:Kj,TrackedRangeStickiness:Zj,WrappingIndent:Yj,InjectedTextCursorStops:Cj,PositionAffinity:Pj,ShowLightbulbIconMode:zj,TextDirection:qj,ConfigurationChangedEvent:Rfe,BareFontInfo:Fv,FontInfo:QM,TextModelResolvedOptions:BR,FindMatch:Z2,ApplyUpdateResult:wk,EditorZoom:ql,createMultiFileDiffEditor:Get,EditorType:XI,EditorOptions:Qo}}function wtt(s,e){if(!e||!Array.isArray(e))return!1;for(const t of e)if(!s(t))return!1;return!0}function _R(s,e){return typeof s=="boolean"?s:e}function jce(s,e){return typeof s=="string"?s:e}function ytt(s){const e={};for(const t of s)e[t]=!0;return e}function qce(s,e=!1){e&&(s=s.map(function(i){return i.toLowerCase()}));const t=ytt(s);return e?function(i){return t[i.toLowerCase()]!==void 0&&t.hasOwnProperty(i.toLowerCase())}:function(i){return t[i]!==void 0&&t.hasOwnProperty(i)}}function lG(s,e,t){e=e.replace(/@@/g,"");let i=0,n;do n=!1,e=e.replace(/@(\w+)/g,function(r,a){n=!0;let l="";if(typeof s[a]=="string")l=s[a];else if(s[a]&&s[a]instanceof RegExp)l=s[a].source;else throw s[a]===void 0?Fi(s,"language definition does not contain attribute '"+a+"', used at: "+e):Fi(s,"attribute reference '"+a+"' must be a string, used at: "+e);return F1(l)?"":"(?:"+l+")"}),i++;while(n&&i<5);e=e.replace(/\x01/g,"@");const o=(s.ignoreCase?"i":"")+(s.unicode?"u":"");if(t&&e.match(/\$[sS](\d\d?)/g)){let a=null,l=null;return c=>(l&&a===c||(a=c,l=new RegExp(mQe(s,e,c),o)),l)}return new RegExp(e,o)}function Stt(s,e,t,i){if(i<0)return s;if(i<e.length)return e[i];if(i>=100){i=i-100;const n=t.split(".");if(n.unshift(t),i<n.length)return n[i]}return null}function xtt(s,e,t,i){let n=-1,o=t,r=t.match(/^\$(([sS]?)(\d\d?)|#)(.*)$/);r&&(r[3]&&(n=parseInt(r[3]),r[2]&&(n=n+100)),o=r[4]);let a="~",l=o;!o||o.length===0?(a="!=",l=""):/^\w*$/.test(l)?a="==":(r=o.match(/^(@|!@|~|!~|==|!=)(.*)$/),r&&(a=r[1],l=r[2]));let c;if((a==="~"||a==="!~")&&/^(\w|\|)*$/.test(l)){const d=qce(l.split("|"),s.ignoreCase);c=function(h){return a==="~"?d(h):!d(h)}}else if(a==="@"||a==="!@"){const d=s[l];if(!d)throw Fi(s,"the @ match target '"+l+"' is not defined, in rule: "+e);if(!wtt(function(f){return typeof f=="string"},d))throw Fi(s,"the @ match target '"+l+"' must be an array of strings, in rule: "+e);const h=qce(d,s.ignoreCase);c=function(f){return a==="@"?h(f):!h(f)}}else if(a==="~"||a==="!~")if(l.indexOf("$")<0){const d=lG(s,"^"+l+"$",!1);c=function(h){return a==="~"?d.test(h):!d.test(h)}}else c=function(d,h,f,p){return lG(s,"^"+tm(s,l,h,f,p)+"$",!1).test(d)};else if(l.indexOf("$")<0){const d=Cg(s,l);c=function(h){return a==="=="?h===d:h!==d}}else{const d=Cg(s,l);c=function(h,f,p,m,b){const C=tm(s,d,f,p,m);return a==="=="?h===C:h!==C}}return n===-1?{name:t,value:i,test:function(d,h,f,p){return c(d,d,h,f,p)}}:{name:t,value:i,test:function(d,h,f,p){const m=Stt(d,h,f,n);return c(m||"",d,h,f,p)}}}function cG(s,e,t){if(t){if(typeof t=="string")return t;if(t.token||t.token===""){if(typeof t.token!="string")throw Fi(s,"a 'token' attribute must be of type string, in rule: "+e);{const i={token:t.token};if(t.token.indexOf("$")>=0&&(i.tokenSubst=!0),typeof t.bracket=="string")if(t.bracket==="@open")i.bracket=1;else if(t.bracket==="@close")i.bracket=-1;else throw Fi(s,"a 'bracket' attribute must be either '@open' or '@close', in rule: "+e);if(t.next){if(typeof t.next!="string")throw Fi(s,"the next state must be a string value in rule: "+e);{let n=t.next;if(!/^(@pop|@push|@popall)$/.test(n)&&(n[0]==="@"&&(n=n.substr(1)),n.indexOf("$")<0&&!_Qe(s,tm(s,n,"",[],""))))throw Fi(s,"the next state '"+t.next+"' is not defined in rule: "+e);i.next=n}}return typeof t.goBack=="number"&&(i.goBack=t.goBack),typeof t.switchTo=="string"&&(i.switchTo=t.switchTo),typeof t.log=="string"&&(i.log=t.log),typeof t.nextEmbedded=="string"&&(i.nextEmbedded=t.nextEmbedded,s.usesEmbedded=!0),i}}else if(Array.isArray(t)){const i=[];for(let n=0,o=t.length;n<o;n++)i[n]=cG(s,e,t[n]);return{group:i}}else if(t.cases){const i=[];let n=!1;for(const r in t.cases)if(t.cases.hasOwnProperty(r)){const a=cG(s,e,t.cases[r]);r==="@default"||r==="@"||r===""?i.push({test:void 0,value:a,name:r}):r==="@eos"?i.push({test:function(l,c,d,h){return h},value:a,name:r}):i.push(xtt(s,e,r,a)),n||(n=!Ss(a)&&(a.hasEmbeddedEndInCases||["@pop","@popall"].includes(a.nextEmbedded||"")))}const o=s.defaultToken;return{hasEmbeddedEndInCases:n,test:function(r,a,l,c){for(const d of i)if(!d.test||d.test(r,a,l,c))return d.value;return o}}}else throw Fi(s,"an action must be a string, an object with a 'token' or 'cases' attribute, or an array of actions; in rule: "+e)}else return{token:""}}let Ltt=class{constructor(e){this.regex=new RegExp(""),this.action={token:""},this.matchOnlyAtLineStart=!1,this.name="",this.name=e}setRegex(e,t){let i;if(typeof t=="string")i=t;else if(t instanceof RegExp)i=t.source;else throw Fi(e,"rules must start with a match string or regular expression: "+this.name);this.matchOnlyAtLineStart=i.length>0&&i[0]==="^",this.name=this.name+": "+i,this.regex=lG(e,"^(?:"+(this.matchOnlyAtLineStart?i.substr(1):i)+")",!0)}setAction(e,t){this.action=cG(e,this.name,t)}resolveRegex(e){return this.regex instanceof RegExp?this.regex:this.regex(e)}};function e0e(s,e){if(!e||typeof e!="object")throw new Error("Monarch: expecting a language definition object");const t={languageId:s,includeLF:_R(e.includeLF,!1),noThrow:!1,maxStack:100,start:typeof e.start=="string"?e.start:null,ignoreCase:_R(e.ignoreCase,!1),unicode:_R(e.unicode,!1),tokenPostfix:jce(e.tokenPostfix,"."+s),defaultToken:jce(e.defaultToken,"source"),usesEmbedded:!1,stateNames:{},tokenizer:{},brackets:[]},i=e;i.languageId=s,i.includeLF=t.includeLF,i.ignoreCase=t.ignoreCase,i.unicode=t.unicode,i.noThrow=t.noThrow,i.usesEmbedded=t.usesEmbedded,i.stateNames=e.tokenizer,i.defaultToken=t.defaultToken;function n(r,a,l){for(const c of l){let d=c.include;if(d){if(typeof d!="string")throw Fi(t,"an 'include' attribute must be a string at: "+r);if(d[0]==="@"&&(d=d.substr(1)),!e.tokenizer[d])throw Fi(t,"include target '"+d+"' is not defined at: "+r);n(r+"."+d,a,e.tokenizer[d])}else{const h=new Ltt(r);if(Array.isArray(c)&&c.length>=1&&c.length<=3)if(h.setRegex(i,c[0]),c.length>=3)if(typeof c[1]=="string")h.setAction(i,{token:c[1],next:c[2]});else if(typeof c[1]=="object"){const f=c[1];f.next=c[2],h.setAction(i,f)}else throw Fi(t,"a next state as the last element of a rule can only be given if the action is either an object or a string, at: "+r);else h.setAction(i,c[1]);else{if(!c.regex)throw Fi(t,"a rule must either be an array, or an object with a 'regex' or 'include' field at: "+r);c.name&&typeof c.name=="string"&&(h.name=c.name),c.matchOnlyAtStart&&(h.matchOnlyAtLineStart=_R(c.matchOnlyAtLineStart,!1)),h.setRegex(i,c.regex),h.setAction(i,c.action)}a.push(h)}}}if(!e.tokenizer||typeof e.tokenizer!="object")throw Fi(t,"a language definition must define the 'tokenizer' attribute as an object");t.tokenizer=[];for(const r in e.tokenizer)if(e.tokenizer.hasOwnProperty(r)){t.start||(t.start=r);const a=e.tokenizer[r];t.tokenizer[r]=new Array,n("tokenizer."+r,t.tokenizer[r],a)}if(t.usesEmbedded=i.usesEmbedded,e.brackets){if(!Array.isArray(e.brackets))throw Fi(t,"the 'brackets' attribute must be defined as an array")}else e.brackets=[{open:"{",close:"}",token:"delimiter.curly"},{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"},{open:"<",close:">",token:"delimiter.angle"}];const o=[];for(const r of e.brackets){let a=r;if(a&&Array.isArray(a)&&a.length===3&&(a={token:a[2],open:a[0],close:a[1]}),a.open===a.close)throw Fi(t,"open and close brackets in a 'brackets' attribute must be different: "+a.open+`
912
- hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")o.push({token:a.token+t.tokenPostfix,open:Cg(t,a.open),close:Cg(t,a.close)});else throw Fi(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=o,t.noThrow=!0,t}function ktt(s){Xy.registerLanguage(s)}function Ett(){let s=[];return s=s.concat(Xy.getLanguages()),s}function Itt(s){return st.get(mn).languageIdCodec.encodeLanguageId(s)}function Dtt(s,e){return st.withServices(()=>{const i=st.get(mn).onDidRequestRichLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function Ttt(s,e){return st.withServices(()=>{const i=st.get(mn).onDidRequestBasicLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function Ntt(s,e){if(!st.get(mn).isRegisteredLanguageId(s))throw new Error(`Cannot set configuration for unknown language ${s}`);return st.get(Xi).register(s,e,100)}class Rtt{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return LI.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new R3(n.tokens,n.endState)}}class LI{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let o=0,r=e.length;o<r;o++){const a=e[o];let l=a.startIndex;o===0?l=0:l<n&&(l=n),i[o]=new cE(l,a.scopes,t),n=l}return i}static adaptTokenize(e,t,i,n){const o=t.tokenize(i,n),r=LI._toClassicTokens(o.tokens,e);let a;return o.endState.equals(n)?a=n:a=o.endState,new jK(r,a)}tokenize(e,t,i){return LI.adaptTokenize(this._languageId,this._actual,e,i)}_toBinaryTokens(e,t){const i=e.encodeLanguageId(this._languageId),n=this._standaloneThemeService.getColorTheme().tokenTheme,o=[];let r=0,a=0;for(let c=0,d=t.length;c<d;c++){const h=t[c],f=n.match(i,h.scopes)|1024;if(r>0&&o[r-1]===f)continue;let p=h.startIndex;c===0?p=0:p<a&&(p=a),o[r++]=p,o[r++]=f,a=p}const l=new Uint32Array(r);for(let c=0;c<r;c++)l[c]=o[c];return l}tokenizeEncoded(e,t,i){const n=this._actual.tokenize(e,i),o=this._toBinaryTokens(this._languageService.languageIdCodec,n.tokens);let r;return n.endState.equals(i)?r=i:r=n.endState,new R3(o,r)}}function Mtt(s){return typeof s.getInitialState=="function"}function Att(s){return"tokenizeEncoded"in s}function t0e(s){return s&&typeof s.then=="function"}function Ott(s){const e=st.get(Sl);if(s){const t=[null];for(let i=1,n=s.length;i<n;i++)t[i]=se.fromHex(s[i]);e.setColorMapOverride(t)}else e.setColorMapOverride(null)}function i0e(s,e){return Att(e)?new Rtt(s,e):new LI(s,e,st.get(mn),st.get(Sl))}function SX(s,e){const t=new EMe(async()=>{const i=await Promise.resolve(e.create());return i?Mtt(i)?i0e(s,i):new bI(st.get(mn),st.get(Sl),s,e0e(s,i),st.get(ct)):null});return hn.registerFactory(s,t)}function Ptt(s,e){if(!st.get(mn).isRegisteredLanguageId(s))throw new Error(`Cannot set tokens provider for unknown language ${s}`);return t0e(e)?SX(s,{create:()=>e}):hn.register(s,i0e(s,e))}function Ftt(s,e){const t=i=>new bI(st.get(mn),st.get(Sl),s,e0e(s,i),st.get(ct));return t0e(e)?SX(s,{create:()=>e}):hn.register(s,t(e))}function Btt(s,e){return st.get(Oe).referenceProvider.register(s,e)}function Htt(s,e){return st.get(Oe).renameProvider.register(s,e)}function Wtt(s,e){return st.get(Oe).newSymbolNamesProvider.register(s,e)}function Vtt(s,e){return st.get(Oe).signatureHelpProvider.register(s,e)}function ztt(s,e){return st.get(Oe).hoverProvider.register(s,{provideHover:async(i,n,o,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,o,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new R(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new R(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function Utt(s,e){return st.get(Oe).documentSymbolProvider.register(s,e)}function $tt(s,e){return st.get(Oe).documentHighlightProvider.register(s,e)}function jtt(s,e){return st.get(Oe).linkedEditingRangeProvider.register(s,e)}function qtt(s,e){return st.get(Oe).definitionProvider.register(s,e)}function Gtt(s,e){return st.get(Oe).implementationProvider.register(s,e)}function Ktt(s,e){return st.get(Oe).typeDefinitionProvider.register(s,e)}function Ztt(s,e){return st.get(Oe).codeLensProvider.register(s,e)}function Ytt(s,e,t){return st.get(Oe).codeActionProvider.register(s,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,o,r,a)=>{const c=st.get(Tu).read({resource:n.uri}).filter(d=>R.areIntersectingOrTouching(d,o));return e.provideCodeActions(n,o,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function Xtt(s,e){return st.get(Oe).documentFormattingEditProvider.register(s,e)}function Qtt(s,e){return st.get(Oe).documentRangeFormattingEditProvider.register(s,e)}function Jtt(s,e){return st.get(Oe).onTypeFormattingEditProvider.register(s,e)}function eit(s,e){return st.get(Oe).linkProvider.register(s,e)}function tit(s,e){return st.get(Oe).completionProvider.register(s,e)}function iit(s,e){return st.get(Oe).colorProvider.register(s,e)}function nit(s,e){return st.get(Oe).foldingRangeProvider.register(s,e)}function sit(s,e){return st.get(Oe).declarationProvider.register(s,e)}function oit(s,e){return st.get(Oe).selectionRangeProvider.register(s,e)}function rit(s,e){return st.get(Oe).documentSemanticTokensProvider.register(s,e)}function ait(s,e){return st.get(Oe).documentRangeSemanticTokensProvider.register(s,e)}function lit(s,e){return st.get(Oe).inlineCompletionsProvider.register(s,e)}function cit(s,e){return st.get(Oe).inlayHintsProvider.register(s,e)}function dit(){return{register:ktt,getLanguages:Ett,onLanguage:Dtt,onLanguageEncountered:Ttt,getEncodedLanguageId:Itt,setLanguageConfiguration:Ntt,setColorMap:Ott,registerTokensProviderFactory:SX,setTokensProvider:Ptt,setMonarchTokensProvider:Ftt,registerReferenceProvider:Btt,registerRenameProvider:Htt,registerNewSymbolNameProvider:Wtt,registerCompletionItemProvider:tit,registerSignatureHelpProvider:Vtt,registerHoverProvider:ztt,registerDocumentSymbolProvider:Utt,registerDocumentHighlightProvider:$tt,registerLinkedEditingRangeProvider:jtt,registerDefinitionProvider:qtt,registerImplementationProvider:Gtt,registerTypeDefinitionProvider:Ktt,registerCodeLensProvider:Ztt,registerCodeActionProvider:Ytt,registerDocumentFormattingEditProvider:Xtt,registerDocumentRangeFormattingEditProvider:Qtt,registerOnTypeFormattingEditProvider:Jtt,registerLinkProvider:eit,registerColorProvider:iit,registerFoldingRangeProvider:nit,registerDeclarationProvider:sit,registerSelectionRangeProvider:oit,registerDocumentSemanticTokensProvider:rit,registerDocumentRangeSemanticTokensProvider:ait,registerInlineCompletionsProvider:lit,registerInlayHintsProvider:cit,DocumentHighlightKind:uj,CompletionItemKind:rj,CompletionItemTag:aj,CompletionItemInsertTextRule:oj,SymbolKind:$j,SymbolTag:jj,IndentAction:vj,CompletionTriggerKind:lj,SignatureHelpTriggerKind:Uj,InlayHintKind:wj,InlineCompletionTriggerKind:xj,CodeActionTriggerType:sj,NewSymbolNameTag:Nj,NewSymbolNameTriggerKind:Rj,PartialAcceptTriggerKind:Oj,HoverVerbosityAction:bj,InlineCompletionEndOfLifeReasonKind:yj,InlineCompletionHintStyle:Sj,FoldingRangeKind:x0,SelectedSuggestionInfo:Pge,EditDeltaInfo:wE}}Qo.wrappingIndent.defaultValue=0;Qo.glyphMargin.defaultValue=!1;Qo.autoIndent.defaultValue=3;Qo.overviewRulerLanes.defaultValue=2;YE.setFormatterSelector((s,e,t)=>Promise.resolve(s[0]));const Or=Dve();Or.editor=Ctt();Or.languages=dit();const hit=Or.CancellationTokenSource,TS=Or.Emitter,uit=Or.KeyCode,fit=Or.KeyMod,git=Or.Position,pit=Or.Range,mit=Or.Selection,_it=Or.SelectionDirection,og=Or.MarkerSeverity,dG=Or.MarkerTag,bit=Or.Uri,vit=Or.Token,kF=Or.editor,We=Or.languages,Cit=RG(),Ey=globalThis;(Cit?.globalAPI||typeof Ey.define=="function"&&Ey.define.amd)&&(Ey.monaco=Or);typeof Ey.require<"u"&&typeof Ey.require.config=="function"&&Ey.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const wit=Object.freeze(Object.defineProperty({__proto__:null,CancellationTokenSource:hit,Emitter:TS,KeyCode:uit,KeyMod:fit,MarkerSeverity:og,MarkerTag:dG,Position:git,Range:pit,Selection:mit,SelectionDirection:_it,Token:vit,Uri:bit,editor:kF,languages:We},Symbol.toStringTag,{value:"Module"}));let xX=class{constructor(e,t,i){this._onDidChange=new TS,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this.options}get options(){return this._options}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setDiagnosticsOptions(e){this.setOptions(e)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}};const LX={validate:!0,lint:{compatibleVendorPrefixes:"ignore",vendorPrefix:"warning",duplicateProperties:"warning",emptyRules:"warning",importStatement:"ignore",boxModel:"ignore",universalSelector:"ignore",zeroUnits:"ignore",fontFaceProperties:"warning",hexColorLength:"error",argumentsInColorFunction:"error",unknownProperties:"warning",ieHack:"ignore",unknownVendorSpecificProperties:"ignore",propertyIgnoredDueToDisplay:"warning",important:"ignore",float:"ignore",idSelector:"ignore"},data:{useDefaultDataProvider:!0},format:{newlineBetweenSelectors:!0,newlineBetweenRules:!0,spaceAroundSelectorSeparator:!1,braceStyle:"collapse",maxPreserveNewLines:void 0,preserveNewLines:!0}},kX={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0,documentFormattingEdits:!0,documentRangeFormattingEdits:!0},n0e=new xX("css",LX,kX),s0e=new xX("scss",LX,kX),o0e=new xX("less",LX,kX);function EX(){return Ke(()=>import("./cssMode-BrMP3krg.js"),__vite__mapDeps([0,1]))}We.onLanguage("less",()=>{EX().then(s=>s.setupMode(o0e))});We.onLanguage("scss",()=>{EX().then(s=>s.setupMode(s0e))});We.onLanguage("css",()=>{EX().then(s=>s.setupMode(n0e))});const yit=Object.freeze(Object.defineProperty({__proto__:null,cssDefaults:n0e,lessDefaults:o0e,scssDefaults:s0e},Symbol.toStringTag,{value:"Module"}));let Sit=class{constructor(e,t,i){this._onDidChange=new TS,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get options(){return this._options}get modeConfiguration(){return this._modeConfiguration}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}};const xit={tabSize:4,insertSpaces:!1,wrapLineLength:120,unformatted:'default": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var',contentUnformatted:"pre",indentInnerHtml:!1,preserveNewLines:!0,maxPreserveNewLines:void 0,indentHandlebars:!1,endWithNewline:!1,extraLiners:"head, body, /html",wrapAttributes:"auto"},EF={format:xit,suggest:{},data:{useDefaultDataProvider:!0}};function IF(s){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:s===d2,documentFormattingEdits:s===d2,documentRangeFormattingEdits:s===d2}}const d2="html",Gce="handlebars",Kce="razor",r0e=DF(d2,EF,IF(d2)),Lit=r0e.defaults,a0e=DF(Gce,EF,IF(Gce)),kit=a0e.defaults,l0e=DF(Kce,EF,IF(Kce)),Eit=l0e.defaults;function Iit(){return Ke(()=>import("./htmlMode-_S-pIoPQ.js"),__vite__mapDeps([2,1]))}function DF(s,e=EF,t=IF(s)){const i=new Sit(s,e,t);let n;const o=We.onLanguage(s,async()=>{n=(await Iit()).setupMode(i)});return{defaults:i,dispose(){o.dispose(),n?.dispose(),n=void 0}}}const Dit=Object.freeze(Object.defineProperty({__proto__:null,handlebarDefaults:kit,handlebarLanguageService:a0e,htmlDefaults:Lit,htmlLanguageService:r0e,razorDefaults:Eit,razorLanguageService:l0e,registerHTMLLanguageService:DF},Symbol.toStringTag,{value:"Module"}));let Tit=class{constructor(e,t,i){this._onDidChange=new TS,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(i)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}};const Nit={validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:"warning",schemaValidation:"warning",comments:"error",trailingCommas:"error"},Rit={documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},c0e=new Tit("json",Nit,Rit),Mit=()=>d0e().then(s=>s.getWorker());function d0e(){return Ke(()=>import("./jsonMode-CxiG8Cqc.js"),__vite__mapDeps([3,1]))}We.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]});We.onLanguage("json",()=>{d0e().then(s=>s.setupMode(c0e))});const Ait=Object.freeze(Object.defineProperty({__proto__:null,getWorker:Mit,jsonDefaults:c0e},Symbol.toStringTag,{value:"Module"})),Oit="5.9.3";var h0e=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ESNext=99]="ESNext",s))(h0e||{}),u0e=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(u0e||{}),f0e=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(f0e||{}),g0e=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(g0e||{}),p0e=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s))(p0e||{});class m0e{constructor(e,t,i,n,o){this._onDidChange=new TS,this._onDidExtraLibsChange=new TS,this._extraLibs=Object.create(null),this._removedExtraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(e),this.setDiagnosticsOptions(t),this.setWorkerOptions(i),this.setInlayHintsOptions(n),this.setModeConfiguration(o),this._onDidExtraLibsChangeTimeout=-1}get onDidChange(){return this._onDidChange.event}get onDidExtraLibsChange(){return this._onDidExtraLibsChange.event}get modeConfiguration(){return this._modeConfiguration}get workerOptions(){return this._workerOptions}get inlayHintsOptions(){return this._inlayHintsOptions}getExtraLibs(){return this._extraLibs}addExtraLib(e,t){let i;if(typeof t>"u"?i=`ts:extralib-${Math.random().toString(36).substring(2,15)}`:i=t,this._extraLibs[i]&&this._extraLibs[i].content===e)return{dispose:()=>{}};let n=1;return this._removedExtraLibs[i]&&(n=this._removedExtraLibs[i]+1),this._extraLibs[i]&&(n=this._extraLibs[i].version+1),this._extraLibs[i]={content:e,version:n},this._fireOnDidExtraLibsChangeSoon(),{dispose:()=>{let o=this._extraLibs[i];o&&o.version===n&&(delete this._extraLibs[i],this._removedExtraLibs[i]=n,this._fireOnDidExtraLibsChangeSoon())}}}setExtraLibs(e){for(const t in this._extraLibs)this._removedExtraLibs[t]=this._extraLibs[t].version;if(this._extraLibs=Object.create(null),e&&e.length>0)for(const t of e){const i=t.filePath||`ts:extralib-${Math.random().toString(36).substring(2,15)}`,n=t.content;let o=1;this._removedExtraLibs[i]&&(o=this._removedExtraLibs[i]+1),this._extraLibs[i]={content:n,version:o}}this._fireOnDidExtraLibsChangeSoon()}_fireOnDidExtraLibsChangeSoon(){this._onDidExtraLibsChangeTimeout===-1&&(this._onDidExtraLibsChangeTimeout=window.setTimeout(()=>{this._onDidExtraLibsChangeTimeout=-1,this._onDidExtraLibsChange.fire(void 0)},0))}getCompilerOptions(){return this._compilerOptions}setCompilerOptions(e){this._compilerOptions=e||Object.create(null),this._onDidChange.fire(void 0)}getDiagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(void 0)}setWorkerOptions(e){this._workerOptions=e||Object.create(null),this._onDidChange.fire(void 0)}setInlayHintsOptions(e){this._inlayHintsOptions=e||Object.create(null),this._onDidChange.fire(void 0)}setMaximumWorkerIdleTime(e){}setEagerModelSync(e){this._eagerModelSync=e}getEagerModelSync(){return this._eagerModelSync}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(void 0)}}const Pit=Oit,_0e={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,diagnostics:!0,documentRangeFormattingEdits:!0,signatureHelp:!0,onTypeFormattingEdits:!0,codeActions:!0,inlayHints:!0},b0e=new m0e({allowNonTsExtensions:!0,target:99},{noSemanticValidation:!1,noSyntaxValidation:!1,onlyVisible:!1},{},{},_0e),v0e=new m0e({allowNonTsExtensions:!0,allowJs:!0,target:99},{noSemanticValidation:!0,noSyntaxValidation:!1,onlyVisible:!1},{},{},_0e),Fit=()=>TF().then(s=>s.getTypeScriptWorker()),Bit=()=>TF().then(s=>s.getJavaScriptWorker());function TF(){return Ke(()=>import("./tsMode-ymwo71AQ.js"),[])}We.onLanguage("typescript",()=>TF().then(s=>s.setupTypeScript(b0e)));We.onLanguage("javascript",()=>TF().then(s=>s.setupJavaScript(v0e)));const Hit=Object.freeze(Object.defineProperty({__proto__:null,JsxEmit:u0e,ModuleKind:h0e,ModuleResolutionKind:p0e,NewLineKind:f0e,ScriptTarget:g0e,getJavaScriptWorker:Bit,getTypeScriptWorker:Fit,javascriptDefaults:v0e,typescriptDefaults:b0e,typescriptVersion:Pit},Symbol.toStringTag,{value:"Module"})),C0e={},AB={};class IX{static getOrCreate(e){return AB[e]||(AB[e]=new IX(e)),AB[e]}constructor(e){this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((t,i)=>{this._lazyLoadPromiseResolve=t,this._lazyLoadPromiseReject=i})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,C0e[this._languageId].loader().then(e=>this._lazyLoadPromiseResolve(e),e=>this._lazyLoadPromiseReject(e))),this._lazyLoadPromise}}function Ye(s){const e=s.id;C0e[e]=s,We.register(s);const t=IX.getOrCreate(e);We.registerTokensProviderFactory(e,{create:async()=>(await t.load()).language}),We.onLanguageEncountered(e,async()=>{const i=await t.load();We.setLanguageConfiguration(e,i.conf)})}Ye({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>Ke(()=>import("./abap-DLDM7-KI.js"),[])});Ye({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>Ke(()=>import("./apex-DNDY2TF8.js"),[])});Ye({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>Ke(()=>import("./azcli-Y6nb8tq_.js"),[])});Ye({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>Ke(()=>import("./bat-BwHxbl9M.js"),[])});Ye({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>Ke(()=>import("./bicep-CFznDFnq.js"),[])});Ye({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>Ke(()=>import("./cameligo-Bf6VGUru.js"),[])});Ye({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>Ke(()=>import("./clojure-Dnu-v4kV.js"),[])});Ye({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>Ke(()=>import("./coffee-Bd8akH9Z.js"),[])});Ye({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>Ke(()=>import("./cpp-BbWJElDN.js"),[])});Ye({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>Ke(()=>import("./cpp-BbWJElDN.js"),[])});Ye({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>Ke(()=>import("./csharp-Co3qMtFm.js"),[])});Ye({id:"csp",extensions:[".csp"],aliases:["CSP","csp"],loader:()=>Ke(()=>import("./csp-D-4FJmMZ.js"),[])});Ye({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>Ke(()=>import("./css-DdJfP1eB.js"),[])});Ye({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>Ke(()=>import("./cypher-cTPe9QuQ.js"),[])});Ye({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>Ke(()=>import("./dart-BOtBlQCF.js"),[])});Ye({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>Ke(()=>import("./dockerfile-BG73LgW2.js"),[])});Ye({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>Ke(()=>import("./ecl-BEgZUVRK.js"),[])});Ye({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>Ke(()=>import("./elixir-BkW5O-1t.js"),[])});Ye({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>Ke(()=>import("./flow9-BeJ5waoc.js"),[])});Ye({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>Ke(()=>import("./fsharp-PahG7c26.js"),[])});Ye({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagAutoInterpolationDollar)});Ye({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagAngleInterpolationDollar)});Ye({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagBracketInterpolationDollar)});Ye({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagAngleInterpolationBracket)});Ye({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagBracketInterpolationBracket)});Ye({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagAutoInterpolationDollar)});Ye({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>Ke(()=>import("./freemarker2-Dj30wgcW.js"),[]).then(s=>s.TagAutoInterpolationBracket)});Ye({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>Ke(()=>import("./go-acbASCJo.js"),[])});Ye({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>Ke(()=>import("./graphql-BxJiqAUM.js"),[])});Ye({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>Ke(()=>import("./handlebars-DarbGBuv.js"),[])});Ye({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>Ke(()=>import("./hcl-DtV1sZF8.js"),[])});Ye({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:()=>Ke(()=>import("./html-VH-bcCYx.js"),[])});Ye({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>Ke(()=>import("./ini-Kd9XrMLS.js"),[])});Ye({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>Ke(()=>import("./java-CXBNlu9o.js"),[])});Ye({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>Ke(()=>import("./javascript-BDGWT-qT.js"),__vite__mapDeps([4,5]))});Ye({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>Ke(()=>import("./julia-cl7-CwDS.js"),[])});Ye({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>Ke(()=>import("./kotlin-s7OhZKlX.js"),[])});Ye({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>Ke(()=>import("./less-9HpZscsL.js"),[])});Ye({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>Ke(()=>import("./lexon-OrD6JF1K.js"),[])});Ye({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>Ke(()=>import("./lua-Cyyb5UIc.js"),[])});Ye({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>Ke(()=>import("./liquid-Dds7cVsi.js"),[])});Ye({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>Ke(()=>import("./m3-B8OfTtLu.js"),[])});Ye({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>Ke(()=>import("./markdown-BFxVWTOG.js"),[])});Ye({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>Ke(()=>import("./mdx-Ujw8uNBS.js"),[])});Ye({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>Ke(()=>import("./mips-CiqrrVzr.js"),[])});Ye({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>Ke(()=>import("./msdax-DmeGPVcC.js"),[])});Ye({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>Ke(()=>import("./mysql-C_tMU-Nz.js"),[])});Ye({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>Ke(()=>import("./objective-c-BDtDVThU.js"),[])});Ye({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>Ke(()=>import("./pascal-vHIfCaH5.js"),[])});Ye({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>Ke(()=>import("./pascaligo-DtZ0uQbO.js"),[])});Ye({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>Ke(()=>import("./perl-Ub6l9XKa.js"),[])});Ye({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>Ke(()=>import("./pgsql-BlNEE0v7.js"),[])});Ye({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>Ke(()=>import("./php-BBUBE1dy.js"),[])});Ye({id:"pla",extensions:[".pla"],loader:()=>Ke(()=>import("./pla-DSh2-awV.js"),[])});Ye({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>Ke(()=>import("./postiats-CocnycG-.js"),[])});Ye({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>Ke(()=>import("./powerquery-tScXyioY.js"),[])});Ye({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>Ke(()=>import("./powershell-COWaemsV.js"),[])});Ye({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>Ke(()=>import("./protobuf-Brw8urJB.js"),[])});Ye({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>Ke(()=>import("./pug-8SOpv6rk.js"),[])});Ye({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>Ke(()=>import("./python-DY8A5OO4.js"),[])});Ye({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>Ke(()=>import("./qsharp-Bw9ernYp.js"),[])});Ye({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>Ke(()=>import("./r-j7ic8hl3.js"),[])});Ye({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>Ke(()=>import("./razor-BdswnBKg.js"),[])});Ye({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>Ke(()=>import("./redis-Bu5POkcn.js"),[])});Ye({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>Ke(()=>import("./redshift-Bs9aos_-.js"),[])});Ye({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>Ke(()=>import("./restructuredtext-CqXO7rUv.js"),[])});Ye({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>Ke(()=>import("./ruby-zBfavPgS.js"),[])});Ye({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>Ke(()=>import("./rust-BzKRNQWT.js"),[])});Ye({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>Ke(()=>import("./sb-BBc9UKZt.js"),[])});Ye({id:"scala",extensions:[".scala",".sc",".sbt"],aliases:["Scala","scala","SBT","Sbt","sbt","Dotty","dotty"],mimetypes:["text/x-scala-source","text/x-scala","text/x-sbt","text/x-dotty"],loader:()=>Ke(()=>import("./scala-D9hQfWCl.js"),[])});Ye({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>Ke(()=>import("./scheme-BPhDTwHR.js"),[])});Ye({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>Ke(()=>import("./scss-CBJaRo0y.js"),[])});Ye({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>Ke(()=>import("./shell-DiJ1NA_G.js"),[])});Ye({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>Ke(()=>import("./solidity-Db0IVjzk.js"),[])});Ye({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>Ke(()=>import("./sophia-CnS9iZB_.js"),[])});Ye({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>Ke(()=>import("./sparql-CJmd_6j2.js"),[])});Ye({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>Ke(()=>import("./sql-ClhHkBeG.js"),[])});Ye({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>Ke(()=>import("./st-CHwy0fLd.js"),[])});Ye({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>Ke(()=>import("./swift-CnmFD0ga.js"),[])});Ye({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>Ke(()=>import("./systemverilog-Bs9z6M-B.js"),[])});Ye({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>Ke(()=>import("./systemverilog-Bs9z6M-B.js"),[])});Ye({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>Ke(()=>import("./tcl-Dm6ycUr_.js"),[])});Ye({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>Ke(()=>import("./twig-Csy3S7wG.js"),[])});Ye({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>Ke(()=>import("./typescript-BXTgwnDE.js"),[])});Ye({id:"typespec",extensions:[".tsp"],aliases:["TypeSpec"],loader:()=>Ke(()=>import("./typespec-Btyra-wh.js"),[])});Ye({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>Ke(()=>import("./vb-Db0cS2oM.js"),[])});Ye({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>Ke(()=>import("./wgsl-BTesnYfV.js"),[])});Ye({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:()=>Ke(()=>import("./xml-DsIlPZwI.js"),[])});Ye({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>Ke(()=>import("./yaml-Kl4B3vSj.js"),[])});var Wit=Object.defineProperty,Vit=(s,e,t)=>e in s?Wit(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,kt=(s,e,t)=>Vit(s,typeof e!="symbol"?e+"":e,t),bR,Zce,vR,OB,CR;function zit(s){return s.method!==void 0}var Yce;(function(s){function e(t){return t}s.create=e})(Yce||(Yce={}));var zc;(function(s){s.parseError=-32700,s.invalidRequest=-32600,s.methodNotFound=-32601,s.invalidParams=-32602,s.internalError=-32603;function e(o){return-32099<=o&&o<=-32e3}s.isServerError=e;function t(o){if(!e(o))throw new Error("Invalid range for a server error.");return o}s.serverError=t,s.unexpectedServerError=-32e3;function i(o){return!0}s.isApplicationError=i;function n(o){return o}s.applicationError=n,s.genericApplicationError=-320100})(zc||(zc={}));var w0e=class{constructor(){kt(this,"listeners",new Set),kt(this,"event",s=>(this.listeners.add(s),{dispose:()=>{this.listeners.delete(s)}}))}fire(s){this.listeners.forEach(e=>e(s))}},Uit=class{constructor(s){kt(this,"_value"),kt(this,"eventEmitter"),this._value=s,this.eventEmitter=new w0e}get value(){return this._value}set value(s){this._value!==s&&(this._value=s,this.eventEmitter.fire(s))}get onChange(){return this.eventEmitter.event}};function $it(s,e){const t=setTimeout(e,s);return{dispose:()=>clearTimeout(t)}}function PB(s,e,t){return s instanceof Set?(s.add(e),{dispose:()=>s.delete(e)}):(s.set(e,t),{dispose:()=>s.delete(e)})}var jit=class{constructor(){kt(this,"_state","none"),kt(this,"promise"),kt(this,"resolve",()=>{}),kt(this,"reject",()=>{}),this.promise=new Promise((s,e)=>{this.resolve=s,this.reject=e})}get state(){return this._state}};bR=class{constructor(){kt(this,"_unprocessedMessages",[]),kt(this,"_messageListener"),kt(this,"id",bR.id++),kt(this,"_state",new Uit({state:"open"})),kt(this,"state",this._state)}setListener(s){if(this._messageListener=s,!!s)for(;this._unprocessedMessages.length>0&&this._messageListener!==void 0;){const e=this._unprocessedMessages.shift();this._messageListener(e)}}send(s){return this._sendImpl(s)}_dispatchReceivedMessage(s){this._unprocessedMessages.length===0&&this._messageListener?this._messageListener(s):this._unprocessedMessages.push(s)}_onConnectionClosed(){this._state.value={state:"closed",error:void 0}}log(s){return new qit(this,s??new Git)}},kt(bR,"id",0);var qit=class{constructor(s,e){kt(this,"baseStream"),kt(this,"logger"),this.baseStream=s,this.logger=e}get state(){return this.baseStream.state}setListener(s){if(s===void 0){this.baseStream.setListener(void 0);return}this.baseStream.setListener(e=>{this.logger.log(this.baseStream,"incoming",e),s(e)})}send(s){return this.logger.log(this.baseStream,"outgoing",s),this.baseStream.send(s)}toString(){return`StreamLogger/${this.baseStream.toString()}`}},Git=class{log(s,e,t){console.log(`${e==="incoming"?"<-":"->"} [${s.toString()}] ${JSON.stringify(t)}`)}},Kit=class y0e{constructor(e){kt(this,"connect"),this.connect=e}mapContext(e){return new y0e(t=>this.connect(t?Zit(t,e):void 0))}};function Zit(s,e){return{handleNotification:(t,i)=>s.handleNotification(t,e(i)),handleRequest:(t,i,n)=>s.handleRequest(t,i,e(n))}}var Yit=class S0e{constructor(e,t,i){kt(this,"_stream"),kt(this,"_listener"),kt(this,"_logger"),kt(this,"_unprocessedResponses",new Map),kt(this,"_lastUsedRequestId",0),this._stream=e,this._listener=t,this._logger=i,this._stream.setListener(n=>{zit(n)?n.id===void 0?this._processNotification(n):this._processRequest(n):this._processResponse(n)})}static createChannel(e,t){let i=!1;return new Kit(n=>{if(i)throw new Error(`A channel to the stream ${e} was already constructed!`);return i=!0,new S0e(e,n,t)})}get state(){return this._stream.state}async _processNotification(e){if(e.id!==void 0)throw new Error;if(!this._listener){this._logger&&this._logger.debug({text:"Notification ignored",message:e});return}try{await this._listener.handleNotification({method:e.method,params:e.params||null})}catch(t){this._logger&&this._logger.warn({text:`Exception was thrown while handling notification: ${t}`,exception:t,message:e})}}async _processRequest(e){if(e.id===void 0)throw new Error;let t;if(this._listener)try{t=await this._listener.handleRequest({method:e.method,params:e.params||null},e.id)}catch(n){this._logger&&this._logger.warn({text:`Exception was thrown while handling request: ${n}`,message:e,exception:n}),t={error:{code:zc.internalError,message:"An unexpected exception was thrown.",data:void 0}}}else this._logger&&this._logger.debug({text:"Received request even though not listening for requests",message:e}),t={error:{code:zc.methodNotFound,message:"This endpoint does not listen for requests or notifications.",data:void 0}};let i;"result"in t?i={jsonrpc:"2.0",id:e.id,result:t.result}:i={jsonrpc:"2.0",id:e.id,error:t.error},await this._stream.send(i)}_processResponse(e){const t=""+e.id,i=this._unprocessedResponses.get(t);if(!i){this._logger&&this._logger.debug({text:"Got an unexpected response message",message:e});return}this._unprocessedResponses.delete(t),i(e)}_newRequestId(){return this._lastUsedRequestId++}sendRequest(e,t,i){const n={jsonrpc:"2.0",id:this._newRequestId(),method:e.method,params:e.params||void 0};return i&&i(n.id),new Promise((o,r)=>{const a=""+n.id;this._unprocessedResponses.set(a,l=>{"result"in l?o({result:l.result}):(l.error||r(new Error("Response had neither 'result' nor 'error' field set.")),o({error:l.error}))}),this._stream.send(n).then(void 0,l=>{this._unprocessedResponses.delete(a),r(l)})})}sendNotification(e,t){const i={jsonrpc:"2.0",id:void 0,method:e.method,params:e.params||void 0};return this._stream.send(i)}toString(){return"StreamChannel/"+this._stream.toString()}},Iy;(function(s){function e(){return{deserializeFromJson:n=>({hasErrors:!1,value:n}),serializeToJson:n=>n}}s.sAny=e;function t(){return{deserializeFromJson:n=>({hasErrors:!1,value:{}}),serializeToJson:n=>({})}}s.sEmptyObject=t;function i(){return{deserializeFromJson:n=>({hasErrors:!1,value:void 0}),serializeToJson:n=>null}}s.sVoidFromNull=i})(Iy||(Iy={}));const x0e=Symbol("OptionalMethodNotFound");var L0e=class{contextualize(s){return new Xit(this,s)}},Xit=class extends L0e{constructor(s,e){super(),kt(this,"underylingTypedChannel"),kt(this,"converters"),this.underylingTypedChannel=s,this.converters=e}async request(s,e,t){const i=await this.converters.getSendContext(t);return this.underylingTypedChannel.request(s,e,i)}async notify(s,e,t){const i=await this.converters.getSendContext(t);return this.underylingTypedChannel.notify(s,e,i)}registerNotificationHandler(s,e){return this.underylingTypedChannel.registerNotificationHandler(s,async(t,i)=>await e(t,await this.converters.getNewContext(i)))}registerRequestHandler(s,e){return this.underylingTypedChannel.registerRequestHandler(s,async(t,i,n)=>await e(t,i,await this.converters.getNewContext(n)))}},Xce=class k0e extends L0e{constructor(e,t={}){super(),kt(this,"channelCtor"),kt(this,"_requestSender"),kt(this,"_handler",new Map),kt(this,"_unknownNotificationHandler",new Set),kt(this,"_timeout"),kt(this,"sendExceptionDetails",!1),kt(this,"_logger"),kt(this,"listeningDeferred",new jit),kt(this,"onListening",this.listeningDeferred.promise),kt(this,"_requestDidErrorEventEmitter",new w0e),kt(this,"onRequestDidError",this._requestDidErrorEventEmitter.event),this.channelCtor=e,this._logger=t.logger,this.sendExceptionDetails=!!t.sendExceptionDetails,this._timeout=$it(1e3,()=>{this._requestSender||console.warn(`"${this.startListen.name}" has not been called within 1 second after construction of this channel. Did you forget to call it?`,this)})}static fromTransport(e,t={}){return new k0e(Yit.createChannel(e,t.logger),t)}startListen(){if(this._requestSender)throw new Error(`"${this.startListen.name}" can be called only once, but it already has been called.`);this._timeout&&(this._timeout.dispose(),this._timeout=void 0),this._requestSender=this.channelCtor.connect({handleRequest:(e,t,i)=>this.handleRequest(e,t,i),handleNotification:(e,t)=>this.handleNotification(e,t)}),this.listeningDeferred.resolve()}checkChannel(e){if(!e)throw new Error(`"${this.startListen.name}" must be called before any messages can be sent or received.`);return!0}async handleRequest(e,t,i){const n=this._handler.get(e.method);if(!n)return this._logger&&this._logger.debug({text:`No request handler for "${e.method}".`,data:{requestObject:e}}),{error:{code:zc.methodNotFound,message:`No request handler for "${e.method}".`,data:{method:e.method}}};if(n.kind!="request"){const r=`"${e.method}" is registered as notification, but was sent as request.`;return this._logger&&this._logger.debug({text:r,data:{requestObject:e}}),{error:{code:zc.invalidRequest,message:r,data:{method:e.method}}}}const o=n.requestType.paramsSerializer.deserializeFromJson(e.params);if(o.hasErrors){const r=`Got invalid params: ${o.errorMessage}`;return this._logger&&this._logger.debug({text:r,data:{requestObject:e,errorMessage:o.errorMessage}}),{error:{code:zc.invalidParams,message:r,data:{errors:o.errorMessage}}}}else{const r=o.value;let a;try{const l=await n.handler(r,t,i);if("error"in l||"errorMessage"in l){const c=l.error?n.requestType.errorSerializer.serializeToJson(l.error):void 0;a={error:{code:l.errorCode||zc.genericApplicationError,message:l.errorMessage||"An error was returned",data:c}}}else a={result:n.requestType.resultSerializer.serializeToJson(l.ok)}}catch(l){l instanceof Jce?a={error:{code:l.code,message:l.message}}:(this._logger&&this._logger.warn({text:`An exception was thrown while handling a request: ${l}.`,exception:l,data:{requestObject:e}}),a={error:{code:zc.unexpectedServerError,message:this.sendExceptionDetails?`An exception was thrown while handling a request: ${l}.`:"Server has thrown an unexpected exception"}})}return a}}async handleNotification(e,t){const i=this._handler.get(e.method);if(!i){for(const r of this._unknownNotificationHandler)r(e);this._unknownNotificationHandler.size===0&&this._logger&&this._logger.debug({text:`Unhandled notification "${e.method}"`,data:{requestObject:e}});return}if(i.kind!="notification"){this._logger&&this._logger.debug({text:`"${e.method}" is registered as request, but was sent as notification.`,data:{requestObject:e}});return}const n=i.notificationType.paramsSerializer.deserializeFromJson(e.params);if(n.hasErrors){this._logger&&this._logger.debug({text:`Got invalid params: ${n}`,data:{requestObject:e,errorMessage:n.errorMessage}});return}const o=n.value;for(const r of i.handlers)try{r(o,t)}catch(a){this._logger&&this._logger.warn({text:`An exception was thrown while handling a notification: ${a}.`,exception:a,data:{requestObject:e}})}}registerUnknownNotificationHandler(e){return PB(this._unknownNotificationHandler,e)}registerRequestHandler(e,t){if(this._handler.get(e.method))throw new Error(`Handler with method "${e.method}" already registered.`);return PB(this._handler,e.method,{kind:"request",requestType:e,handler:t})}registerNotificationHandler(e,t){let i=this._handler.get(e.method);if(!i)i={kind:"notification",notificationType:e,handlers:new Set},this._handler.set(e.method,i);else{if(i.kind!=="notification")throw new Error(`Method "${e.method}" was already registered as request handler.`);if(i.notificationType!==e)throw new Error(`Method "${e.method}" was registered for a different type.`)}return PB(i.handlers,t)}getRegisteredTypes(){const e=[];for(const t of this._handler.values())t.kind==="notification"?e.push(t.notificationType):t.kind==="request"&&e.push(t.requestType);return e}async request(e,t,i){if(!this.checkChannel(this._requestSender))throw new Error("Impossible");const n=e.paramsSerializer.serializeToJson(t);Qce(n);const o=await this._requestSender.sendRequest({method:e.method,params:n},i);if("error"in o){if(e.isOptional&&o.error.code===zc.methodNotFound)return x0e;let r;if(o.error.data!==void 0){const l=e.errorSerializer.deserializeFromJson(o.error.data);if(l.hasErrors)throw new Error(l.errorMessage);r=l.value}else r=void 0;const a=new Jce(o.error.message,r,o.error.code);throw this._requestDidErrorEventEmitter.fire({error:a}),a}else{const r=e.resultSerializer.deserializeFromJson(o.result);if(r.hasErrors)throw new Error("Could not deserialize response: "+r.errorMessage+`
912
+ hint: use the 'bracket' attribute if matching on equal brackets is required.`);if(typeof a.open=="string"&&typeof a.token=="string"&&typeof a.close=="string")o.push({token:a.token+t.tokenPostfix,open:Cg(t,a.open),close:Cg(t,a.close)});else throw Fi(t,"every element in the 'brackets' array must be a '{open,close,token}' object or array")}return t.brackets=o,t.noThrow=!0,t}function ktt(s){Xy.registerLanguage(s)}function Ett(){let s=[];return s=s.concat(Xy.getLanguages()),s}function Itt(s){return st.get(mn).languageIdCodec.encodeLanguageId(s)}function Dtt(s,e){return st.withServices(()=>{const i=st.get(mn).onDidRequestRichLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function Ttt(s,e){return st.withServices(()=>{const i=st.get(mn).onDidRequestBasicLanguageFeatures(n=>{n===s&&(i.dispose(),e())});return i})}function Ntt(s,e){if(!st.get(mn).isRegisteredLanguageId(s))throw new Error(`Cannot set configuration for unknown language ${s}`);return st.get(Xi).register(s,e,100)}class Rtt{constructor(e,t){this._languageId=e,this._actual=t}dispose(){}getInitialState(){return this._actual.getInitialState()}tokenize(e,t,i){if(typeof this._actual.tokenize=="function")return LI.adaptTokenize(this._languageId,this._actual,e,i);throw new Error("Not supported!")}tokenizeEncoded(e,t,i){const n=this._actual.tokenizeEncoded(e,i);return new R3(n.tokens,n.endState)}}class LI{constructor(e,t,i,n){this._languageId=e,this._actual=t,this._languageService=i,this._standaloneThemeService=n}dispose(){}getInitialState(){return this._actual.getInitialState()}static _toClassicTokens(e,t){const i=[];let n=0;for(let o=0,r=e.length;o<r;o++){const a=e[o];let l=a.startIndex;o===0?l=0:l<n&&(l=n),i[o]=new cE(l,a.scopes,t),n=l}return i}static adaptTokenize(e,t,i,n){const o=t.tokenize(i,n),r=LI._toClassicTokens(o.tokens,e);let a;return o.endState.equals(n)?a=n:a=o.endState,new jK(r,a)}tokenize(e,t,i){return LI.adaptTokenize(this._languageId,this._actual,e,i)}_toBinaryTokens(e,t){const i=e.encodeLanguageId(this._languageId),n=this._standaloneThemeService.getColorTheme().tokenTheme,o=[];let r=0,a=0;for(let c=0,d=t.length;c<d;c++){const h=t[c],f=n.match(i,h.scopes)|1024;if(r>0&&o[r-1]===f)continue;let p=h.startIndex;c===0?p=0:p<a&&(p=a),o[r++]=p,o[r++]=f,a=p}const l=new Uint32Array(r);for(let c=0;c<r;c++)l[c]=o[c];return l}tokenizeEncoded(e,t,i){const n=this._actual.tokenize(e,i),o=this._toBinaryTokens(this._languageService.languageIdCodec,n.tokens);let r;return n.endState.equals(i)?r=i:r=n.endState,new R3(o,r)}}function Mtt(s){return typeof s.getInitialState=="function"}function Att(s){return"tokenizeEncoded"in s}function t0e(s){return s&&typeof s.then=="function"}function Ott(s){const e=st.get(Sl);if(s){const t=[null];for(let i=1,n=s.length;i<n;i++)t[i]=se.fromHex(s[i]);e.setColorMapOverride(t)}else e.setColorMapOverride(null)}function i0e(s,e){return Att(e)?new Rtt(s,e):new LI(s,e,st.get(mn),st.get(Sl))}function SX(s,e){const t=new EMe(async()=>{const i=await Promise.resolve(e.create());return i?Mtt(i)?i0e(s,i):new bI(st.get(mn),st.get(Sl),s,e0e(s,i),st.get(ct)):null});return hn.registerFactory(s,t)}function Ptt(s,e){if(!st.get(mn).isRegisteredLanguageId(s))throw new Error(`Cannot set tokens provider for unknown language ${s}`);return t0e(e)?SX(s,{create:()=>e}):hn.register(s,i0e(s,e))}function Ftt(s,e){const t=i=>new bI(st.get(mn),st.get(Sl),s,e0e(s,i),st.get(ct));return t0e(e)?SX(s,{create:()=>e}):hn.register(s,t(e))}function Btt(s,e){return st.get(Oe).referenceProvider.register(s,e)}function Htt(s,e){return st.get(Oe).renameProvider.register(s,e)}function Wtt(s,e){return st.get(Oe).newSymbolNamesProvider.register(s,e)}function Vtt(s,e){return st.get(Oe).signatureHelpProvider.register(s,e)}function ztt(s,e){return st.get(Oe).hoverProvider.register(s,{provideHover:async(i,n,o,r)=>{const a=i.getWordAtPosition(n);return Promise.resolve(e.provideHover(i,n,o,r)).then(l=>{if(l)return!l.range&&a&&(l.range=new R(n.lineNumber,a.startColumn,n.lineNumber,a.endColumn)),l.range||(l.range=new R(n.lineNumber,n.column,n.lineNumber,n.column)),l})}})}function Utt(s,e){return st.get(Oe).documentSymbolProvider.register(s,e)}function $tt(s,e){return st.get(Oe).documentHighlightProvider.register(s,e)}function jtt(s,e){return st.get(Oe).linkedEditingRangeProvider.register(s,e)}function qtt(s,e){return st.get(Oe).definitionProvider.register(s,e)}function Gtt(s,e){return st.get(Oe).implementationProvider.register(s,e)}function Ktt(s,e){return st.get(Oe).typeDefinitionProvider.register(s,e)}function Ztt(s,e){return st.get(Oe).codeLensProvider.register(s,e)}function Ytt(s,e,t){return st.get(Oe).codeActionProvider.register(s,{providedCodeActionKinds:t?.providedCodeActionKinds,documentation:t?.documentation,provideCodeActions:(n,o,r,a)=>{const c=st.get(Tu).read({resource:n.uri}).filter(d=>R.areIntersectingOrTouching(d,o));return e.provideCodeActions(n,o,{markers:c,only:r.only,trigger:r.trigger},a)},resolveCodeAction:e.resolveCodeAction})}function Xtt(s,e){return st.get(Oe).documentFormattingEditProvider.register(s,e)}function Qtt(s,e){return st.get(Oe).documentRangeFormattingEditProvider.register(s,e)}function Jtt(s,e){return st.get(Oe).onTypeFormattingEditProvider.register(s,e)}function eit(s,e){return st.get(Oe).linkProvider.register(s,e)}function tit(s,e){return st.get(Oe).completionProvider.register(s,e)}function iit(s,e){return st.get(Oe).colorProvider.register(s,e)}function nit(s,e){return st.get(Oe).foldingRangeProvider.register(s,e)}function sit(s,e){return st.get(Oe).declarationProvider.register(s,e)}function oit(s,e){return st.get(Oe).selectionRangeProvider.register(s,e)}function rit(s,e){return st.get(Oe).documentSemanticTokensProvider.register(s,e)}function ait(s,e){return st.get(Oe).documentRangeSemanticTokensProvider.register(s,e)}function lit(s,e){return st.get(Oe).inlineCompletionsProvider.register(s,e)}function cit(s,e){return st.get(Oe).inlayHintsProvider.register(s,e)}function dit(){return{register:ktt,getLanguages:Ett,onLanguage:Dtt,onLanguageEncountered:Ttt,getEncodedLanguageId:Itt,setLanguageConfiguration:Ntt,setColorMap:Ott,registerTokensProviderFactory:SX,setTokensProvider:Ptt,setMonarchTokensProvider:Ftt,registerReferenceProvider:Btt,registerRenameProvider:Htt,registerNewSymbolNameProvider:Wtt,registerCompletionItemProvider:tit,registerSignatureHelpProvider:Vtt,registerHoverProvider:ztt,registerDocumentSymbolProvider:Utt,registerDocumentHighlightProvider:$tt,registerLinkedEditingRangeProvider:jtt,registerDefinitionProvider:qtt,registerImplementationProvider:Gtt,registerTypeDefinitionProvider:Ktt,registerCodeLensProvider:Ztt,registerCodeActionProvider:Ytt,registerDocumentFormattingEditProvider:Xtt,registerDocumentRangeFormattingEditProvider:Qtt,registerOnTypeFormattingEditProvider:Jtt,registerLinkProvider:eit,registerColorProvider:iit,registerFoldingRangeProvider:nit,registerDeclarationProvider:sit,registerSelectionRangeProvider:oit,registerDocumentSemanticTokensProvider:rit,registerDocumentRangeSemanticTokensProvider:ait,registerInlineCompletionsProvider:lit,registerInlayHintsProvider:cit,DocumentHighlightKind:uj,CompletionItemKind:rj,CompletionItemTag:aj,CompletionItemInsertTextRule:oj,SymbolKind:$j,SymbolTag:jj,IndentAction:vj,CompletionTriggerKind:lj,SignatureHelpTriggerKind:Uj,InlayHintKind:wj,InlineCompletionTriggerKind:xj,CodeActionTriggerType:sj,NewSymbolNameTag:Nj,NewSymbolNameTriggerKind:Rj,PartialAcceptTriggerKind:Oj,HoverVerbosityAction:bj,InlineCompletionEndOfLifeReasonKind:yj,InlineCompletionHintStyle:Sj,FoldingRangeKind:x0,SelectedSuggestionInfo:Pge,EditDeltaInfo:wE}}Qo.wrappingIndent.defaultValue=0;Qo.glyphMargin.defaultValue=!1;Qo.autoIndent.defaultValue=3;Qo.overviewRulerLanes.defaultValue=2;YE.setFormatterSelector((s,e,t)=>Promise.resolve(s[0]));const Or=Dve();Or.editor=Ctt();Or.languages=dit();const hit=Or.CancellationTokenSource,TS=Or.Emitter,uit=Or.KeyCode,fit=Or.KeyMod,git=Or.Position,pit=Or.Range,mit=Or.Selection,_it=Or.SelectionDirection,og=Or.MarkerSeverity,dG=Or.MarkerTag,bit=Or.Uri,vit=Or.Token,kF=Or.editor,We=Or.languages,Cit=RG(),Ey=globalThis;(Cit?.globalAPI||typeof Ey.define=="function"&&Ey.define.amd)&&(Ey.monaco=Or);typeof Ey.require<"u"&&typeof Ey.require.config=="function"&&Ey.require.config({ignoreDuplicateModules:["vscode-languageserver-types","vscode-languageserver-types/main","vscode-languageserver-textdocument","vscode-languageserver-textdocument/main","vscode-nls","vscode-nls/vscode-nls","jsonc-parser","jsonc-parser/main","vscode-uri","vscode-uri/index","vs/basic-languages/typescript/typescript"]});const wit=Object.freeze(Object.defineProperty({__proto__:null,CancellationTokenSource:hit,Emitter:TS,KeyCode:uit,KeyMod:fit,MarkerSeverity:og,MarkerTag:dG,Position:git,Range:pit,Selection:mit,SelectionDirection:_it,Token:vit,Uri:bit,editor:kF,languages:We},Symbol.toStringTag,{value:"Module"}));let xX=class{constructor(e,t,i){this._onDidChange=new TS,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this.options}get options(){return this._options}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setDiagnosticsOptions(e){this.setOptions(e)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}};const LX={validate:!0,lint:{compatibleVendorPrefixes:"ignore",vendorPrefix:"warning",duplicateProperties:"warning",emptyRules:"warning",importStatement:"ignore",boxModel:"ignore",universalSelector:"ignore",zeroUnits:"ignore",fontFaceProperties:"warning",hexColorLength:"error",argumentsInColorFunction:"error",unknownProperties:"warning",ieHack:"ignore",unknownVendorSpecificProperties:"ignore",propertyIgnoredDueToDisplay:"warning",important:"ignore",float:"ignore",idSelector:"ignore"},data:{useDefaultDataProvider:!0},format:{newlineBetweenSelectors:!0,newlineBetweenRules:!0,spaceAroundSelectorSeparator:!1,braceStyle:"collapse",maxPreserveNewLines:void 0,preserveNewLines:!0}},kX={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0,documentFormattingEdits:!0,documentRangeFormattingEdits:!0},n0e=new xX("css",LX,kX),s0e=new xX("scss",LX,kX),o0e=new xX("less",LX,kX);function EX(){return Ke(()=>import("./cssMode-CnuwsX6g.js"),__vite__mapDeps([0,1]))}We.onLanguage("less",()=>{EX().then(s=>s.setupMode(o0e))});We.onLanguage("scss",()=>{EX().then(s=>s.setupMode(s0e))});We.onLanguage("css",()=>{EX().then(s=>s.setupMode(n0e))});const yit=Object.freeze(Object.defineProperty({__proto__:null,cssDefaults:n0e,lessDefaults:o0e,scssDefaults:s0e},Symbol.toStringTag,{value:"Module"}));let Sit=class{constructor(e,t,i){this._onDidChange=new TS,this._languageId=e,this.setOptions(t),this.setModeConfiguration(i)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get options(){return this._options}get modeConfiguration(){return this._modeConfiguration}setOptions(e){this._options=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}};const xit={tabSize:4,insertSpaces:!1,wrapLineLength:120,unformatted:'default": "a, abbr, acronym, b, bdo, big, br, button, cite, code, dfn, em, i, img, input, kbd, label, map, object, q, samp, select, small, span, strong, sub, sup, textarea, tt, var',contentUnformatted:"pre",indentInnerHtml:!1,preserveNewLines:!0,maxPreserveNewLines:void 0,indentHandlebars:!1,endWithNewline:!1,extraLiners:"head, body, /html",wrapAttributes:"auto"},EF={format:xit,suggest:{},data:{useDefaultDataProvider:!0}};function IF(s){return{completionItems:!0,hovers:!0,documentSymbols:!0,links:!0,documentHighlights:!0,rename:!0,colors:!0,foldingRanges:!0,selectionRanges:!0,diagnostics:s===d2,documentFormattingEdits:s===d2,documentRangeFormattingEdits:s===d2}}const d2="html",Gce="handlebars",Kce="razor",r0e=DF(d2,EF,IF(d2)),Lit=r0e.defaults,a0e=DF(Gce,EF,IF(Gce)),kit=a0e.defaults,l0e=DF(Kce,EF,IF(Kce)),Eit=l0e.defaults;function Iit(){return Ke(()=>import("./htmlMode-B2VBxO9h.js"),__vite__mapDeps([2,1]))}function DF(s,e=EF,t=IF(s)){const i=new Sit(s,e,t);let n;const o=We.onLanguage(s,async()=>{n=(await Iit()).setupMode(i)});return{defaults:i,dispose(){o.dispose(),n?.dispose(),n=void 0}}}const Dit=Object.freeze(Object.defineProperty({__proto__:null,handlebarDefaults:kit,handlebarLanguageService:a0e,htmlDefaults:Lit,htmlLanguageService:r0e,razorDefaults:Eit,razorLanguageService:l0e,registerHTMLLanguageService:DF},Symbol.toStringTag,{value:"Module"}));let Tit=class{constructor(e,t,i){this._onDidChange=new TS,this._languageId=e,this.setDiagnosticsOptions(t),this.setModeConfiguration(i)}get onDidChange(){return this._onDidChange.event}get languageId(){return this._languageId}get modeConfiguration(){return this._modeConfiguration}get diagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(this)}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(this)}};const Nit={validate:!0,allowComments:!0,schemas:[],enableSchemaRequest:!1,schemaRequest:"warning",schemaValidation:"warning",comments:"error",trailingCommas:"error"},Rit={documentFormattingEdits:!0,documentRangeFormattingEdits:!0,completionItems:!0,hovers:!0,documentSymbols:!0,tokens:!0,colors:!0,foldingRanges:!0,diagnostics:!0,selectionRanges:!0},c0e=new Tit("json",Nit,Rit),Mit=()=>d0e().then(s=>s.getWorker());function d0e(){return Ke(()=>import("./jsonMode-DzoVLZsb.js"),__vite__mapDeps([3,1]))}We.register({id:"json",extensions:[".json",".bowerrc",".jshintrc",".jscsrc",".eslintrc",".babelrc",".har"],aliases:["JSON","json"],mimetypes:["application/json"]});We.onLanguage("json",()=>{d0e().then(s=>s.setupMode(c0e))});const Ait=Object.freeze(Object.defineProperty({__proto__:null,getWorker:Mit,jsonDefaults:c0e},Symbol.toStringTag,{value:"Module"})),Oit="5.9.3";var h0e=(s=>(s[s.None=0]="None",s[s.CommonJS=1]="CommonJS",s[s.AMD=2]="AMD",s[s.UMD=3]="UMD",s[s.System=4]="System",s[s.ES2015=5]="ES2015",s[s.ESNext=99]="ESNext",s))(h0e||{}),u0e=(s=>(s[s.None=0]="None",s[s.Preserve=1]="Preserve",s[s.React=2]="React",s[s.ReactNative=3]="ReactNative",s[s.ReactJSX=4]="ReactJSX",s[s.ReactJSXDev=5]="ReactJSXDev",s))(u0e||{}),f0e=(s=>(s[s.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",s[s.LineFeed=1]="LineFeed",s))(f0e||{}),g0e=(s=>(s[s.ES3=0]="ES3",s[s.ES5=1]="ES5",s[s.ES2015=2]="ES2015",s[s.ES2016=3]="ES2016",s[s.ES2017=4]="ES2017",s[s.ES2018=5]="ES2018",s[s.ES2019=6]="ES2019",s[s.ES2020=7]="ES2020",s[s.ESNext=99]="ESNext",s[s.JSON=100]="JSON",s[s.Latest=99]="Latest",s))(g0e||{}),p0e=(s=>(s[s.Classic=1]="Classic",s[s.NodeJs=2]="NodeJs",s))(p0e||{});class m0e{constructor(e,t,i,n,o){this._onDidChange=new TS,this._onDidExtraLibsChange=new TS,this._extraLibs=Object.create(null),this._removedExtraLibs=Object.create(null),this._eagerModelSync=!1,this.setCompilerOptions(e),this.setDiagnosticsOptions(t),this.setWorkerOptions(i),this.setInlayHintsOptions(n),this.setModeConfiguration(o),this._onDidExtraLibsChangeTimeout=-1}get onDidChange(){return this._onDidChange.event}get onDidExtraLibsChange(){return this._onDidExtraLibsChange.event}get modeConfiguration(){return this._modeConfiguration}get workerOptions(){return this._workerOptions}get inlayHintsOptions(){return this._inlayHintsOptions}getExtraLibs(){return this._extraLibs}addExtraLib(e,t){let i;if(typeof t>"u"?i=`ts:extralib-${Math.random().toString(36).substring(2,15)}`:i=t,this._extraLibs[i]&&this._extraLibs[i].content===e)return{dispose:()=>{}};let n=1;return this._removedExtraLibs[i]&&(n=this._removedExtraLibs[i]+1),this._extraLibs[i]&&(n=this._extraLibs[i].version+1),this._extraLibs[i]={content:e,version:n},this._fireOnDidExtraLibsChangeSoon(),{dispose:()=>{let o=this._extraLibs[i];o&&o.version===n&&(delete this._extraLibs[i],this._removedExtraLibs[i]=n,this._fireOnDidExtraLibsChangeSoon())}}}setExtraLibs(e){for(const t in this._extraLibs)this._removedExtraLibs[t]=this._extraLibs[t].version;if(this._extraLibs=Object.create(null),e&&e.length>0)for(const t of e){const i=t.filePath||`ts:extralib-${Math.random().toString(36).substring(2,15)}`,n=t.content;let o=1;this._removedExtraLibs[i]&&(o=this._removedExtraLibs[i]+1),this._extraLibs[i]={content:n,version:o}}this._fireOnDidExtraLibsChangeSoon()}_fireOnDidExtraLibsChangeSoon(){this._onDidExtraLibsChangeTimeout===-1&&(this._onDidExtraLibsChangeTimeout=window.setTimeout(()=>{this._onDidExtraLibsChangeTimeout=-1,this._onDidExtraLibsChange.fire(void 0)},0))}getCompilerOptions(){return this._compilerOptions}setCompilerOptions(e){this._compilerOptions=e||Object.create(null),this._onDidChange.fire(void 0)}getDiagnosticsOptions(){return this._diagnosticsOptions}setDiagnosticsOptions(e){this._diagnosticsOptions=e||Object.create(null),this._onDidChange.fire(void 0)}setWorkerOptions(e){this._workerOptions=e||Object.create(null),this._onDidChange.fire(void 0)}setInlayHintsOptions(e){this._inlayHintsOptions=e||Object.create(null),this._onDidChange.fire(void 0)}setMaximumWorkerIdleTime(e){}setEagerModelSync(e){this._eagerModelSync=e}getEagerModelSync(){return this._eagerModelSync}setModeConfiguration(e){this._modeConfiguration=e||Object.create(null),this._onDidChange.fire(void 0)}}const Pit=Oit,_0e={completionItems:!0,hovers:!0,documentSymbols:!0,definitions:!0,references:!0,documentHighlights:!0,rename:!0,diagnostics:!0,documentRangeFormattingEdits:!0,signatureHelp:!0,onTypeFormattingEdits:!0,codeActions:!0,inlayHints:!0},b0e=new m0e({allowNonTsExtensions:!0,target:99},{noSemanticValidation:!1,noSyntaxValidation:!1,onlyVisible:!1},{},{},_0e),v0e=new m0e({allowNonTsExtensions:!0,allowJs:!0,target:99},{noSemanticValidation:!0,noSyntaxValidation:!1,onlyVisible:!1},{},{},_0e),Fit=()=>TF().then(s=>s.getTypeScriptWorker()),Bit=()=>TF().then(s=>s.getJavaScriptWorker());function TF(){return Ke(()=>import("./tsMode-BVJGitpM.js"),[])}We.onLanguage("typescript",()=>TF().then(s=>s.setupTypeScript(b0e)));We.onLanguage("javascript",()=>TF().then(s=>s.setupJavaScript(v0e)));const Hit=Object.freeze(Object.defineProperty({__proto__:null,JsxEmit:u0e,ModuleKind:h0e,ModuleResolutionKind:p0e,NewLineKind:f0e,ScriptTarget:g0e,getJavaScriptWorker:Bit,getTypeScriptWorker:Fit,javascriptDefaults:v0e,typescriptDefaults:b0e,typescriptVersion:Pit},Symbol.toStringTag,{value:"Module"})),C0e={},AB={};class IX{static getOrCreate(e){return AB[e]||(AB[e]=new IX(e)),AB[e]}constructor(e){this._languageId=e,this._loadingTriggered=!1,this._lazyLoadPromise=new Promise((t,i)=>{this._lazyLoadPromiseResolve=t,this._lazyLoadPromiseReject=i})}load(){return this._loadingTriggered||(this._loadingTriggered=!0,C0e[this._languageId].loader().then(e=>this._lazyLoadPromiseResolve(e),e=>this._lazyLoadPromiseReject(e))),this._lazyLoadPromise}}function Ye(s){const e=s.id;C0e[e]=s,We.register(s);const t=IX.getOrCreate(e);We.registerTokensProviderFactory(e,{create:async()=>(await t.load()).language}),We.onLanguageEncountered(e,async()=>{const i=await t.load();We.setLanguageConfiguration(e,i.conf)})}Ye({id:"abap",extensions:[".abap"],aliases:["abap","ABAP"],loader:()=>Ke(()=>import("./abap-DLDM7-KI.js"),[])});Ye({id:"apex",extensions:[".cls"],aliases:["Apex","apex"],mimetypes:["text/x-apex-source","text/x-apex"],loader:()=>Ke(()=>import("./apex-DNDY2TF8.js"),[])});Ye({id:"azcli",extensions:[".azcli"],aliases:["Azure CLI","azcli"],loader:()=>Ke(()=>import("./azcli-Y6nb8tq_.js"),[])});Ye({id:"bat",extensions:[".bat",".cmd"],aliases:["Batch","bat"],loader:()=>Ke(()=>import("./bat-BwHxbl9M.js"),[])});Ye({id:"bicep",extensions:[".bicep"],aliases:["Bicep"],loader:()=>Ke(()=>import("./bicep-CFznDFnq.js"),[])});Ye({id:"cameligo",extensions:[".mligo"],aliases:["Cameligo"],loader:()=>Ke(()=>import("./cameligo-Bf6VGUru.js"),[])});Ye({id:"clojure",extensions:[".clj",".cljs",".cljc",".edn"],aliases:["clojure","Clojure"],loader:()=>Ke(()=>import("./clojure-Dnu-v4kV.js"),[])});Ye({id:"coffeescript",extensions:[".coffee"],aliases:["CoffeeScript","coffeescript","coffee"],mimetypes:["text/x-coffeescript","text/coffeescript"],loader:()=>Ke(()=>import("./coffee-Bd8akH9Z.js"),[])});Ye({id:"c",extensions:[".c",".h"],aliases:["C","c"],loader:()=>Ke(()=>import("./cpp-BbWJElDN.js"),[])});Ye({id:"cpp",extensions:[".cpp",".cc",".cxx",".hpp",".hh",".hxx"],aliases:["C++","Cpp","cpp"],loader:()=>Ke(()=>import("./cpp-BbWJElDN.js"),[])});Ye({id:"csharp",extensions:[".cs",".csx",".cake"],aliases:["C#","csharp"],loader:()=>Ke(()=>import("./csharp-Co3qMtFm.js"),[])});Ye({id:"csp",extensions:[".csp"],aliases:["CSP","csp"],loader:()=>Ke(()=>import("./csp-D-4FJmMZ.js"),[])});Ye({id:"css",extensions:[".css"],aliases:["CSS","css"],mimetypes:["text/css"],loader:()=>Ke(()=>import("./css-DdJfP1eB.js"),[])});Ye({id:"cypher",extensions:[".cypher",".cyp"],aliases:["Cypher","OpenCypher"],loader:()=>Ke(()=>import("./cypher-cTPe9QuQ.js"),[])});Ye({id:"dart",extensions:[".dart"],aliases:["Dart","dart"],mimetypes:["text/x-dart-source","text/x-dart"],loader:()=>Ke(()=>import("./dart-BOtBlQCF.js"),[])});Ye({id:"dockerfile",extensions:[".dockerfile"],filenames:["Dockerfile"],aliases:["Dockerfile"],loader:()=>Ke(()=>import("./dockerfile-BG73LgW2.js"),[])});Ye({id:"ecl",extensions:[".ecl"],aliases:["ECL","Ecl","ecl"],loader:()=>Ke(()=>import("./ecl-BEgZUVRK.js"),[])});Ye({id:"elixir",extensions:[".ex",".exs"],aliases:["Elixir","elixir","ex"],loader:()=>Ke(()=>import("./elixir-BkW5O-1t.js"),[])});Ye({id:"flow9",extensions:[".flow"],aliases:["Flow9","Flow","flow9","flow"],loader:()=>Ke(()=>import("./flow9-BeJ5waoc.js"),[])});Ye({id:"fsharp",extensions:[".fs",".fsi",".ml",".mli",".fsx",".fsscript"],aliases:["F#","FSharp","fsharp"],loader:()=>Ke(()=>import("./fsharp-PahG7c26.js"),[])});Ye({id:"freemarker2",extensions:[".ftl",".ftlh",".ftlx"],aliases:["FreeMarker2","Apache FreeMarker2"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagAutoInterpolationDollar)});Ye({id:"freemarker2.tag-angle.interpolation-dollar",aliases:["FreeMarker2 (Angle/Dollar)","Apache FreeMarker2 (Angle/Dollar)"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagAngleInterpolationDollar)});Ye({id:"freemarker2.tag-bracket.interpolation-dollar",aliases:["FreeMarker2 (Bracket/Dollar)","Apache FreeMarker2 (Bracket/Dollar)"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagBracketInterpolationDollar)});Ye({id:"freemarker2.tag-angle.interpolation-bracket",aliases:["FreeMarker2 (Angle/Bracket)","Apache FreeMarker2 (Angle/Bracket)"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagAngleInterpolationBracket)});Ye({id:"freemarker2.tag-bracket.interpolation-bracket",aliases:["FreeMarker2 (Bracket/Bracket)","Apache FreeMarker2 (Bracket/Bracket)"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagBracketInterpolationBracket)});Ye({id:"freemarker2.tag-auto.interpolation-dollar",aliases:["FreeMarker2 (Auto/Dollar)","Apache FreeMarker2 (Auto/Dollar)"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagAutoInterpolationDollar)});Ye({id:"freemarker2.tag-auto.interpolation-bracket",aliases:["FreeMarker2 (Auto/Bracket)","Apache FreeMarker2 (Auto/Bracket)"],loader:()=>Ke(()=>import("./freemarker2-DSIKy4z-.js"),[]).then(s=>s.TagAutoInterpolationBracket)});Ye({id:"go",extensions:[".go"],aliases:["Go"],loader:()=>Ke(()=>import("./go-acbASCJo.js"),[])});Ye({id:"graphql",extensions:[".graphql",".gql"],aliases:["GraphQL","graphql","gql"],mimetypes:["application/graphql"],loader:()=>Ke(()=>import("./graphql-BxJiqAUM.js"),[])});Ye({id:"handlebars",extensions:[".handlebars",".hbs"],aliases:["Handlebars","handlebars","hbs"],mimetypes:["text/x-handlebars-template"],loader:()=>Ke(()=>import("./handlebars-Ce5oBpnP.js"),[])});Ye({id:"hcl",extensions:[".tf",".tfvars",".hcl"],aliases:["Terraform","tf","HCL","hcl"],loader:()=>Ke(()=>import("./hcl-DtV1sZF8.js"),[])});Ye({id:"html",extensions:[".html",".htm",".shtml",".xhtml",".mdoc",".jsp",".asp",".aspx",".jshtm"],aliases:["HTML","htm","html","xhtml"],mimetypes:["text/html","text/x-jshtm","text/template","text/ng-template"],loader:()=>Ke(()=>import("./html-DlEME8RC.js"),[])});Ye({id:"ini",extensions:[".ini",".properties",".gitconfig"],filenames:["config",".gitattributes",".gitconfig",".editorconfig"],aliases:["Ini","ini"],loader:()=>Ke(()=>import("./ini-Kd9XrMLS.js"),[])});Ye({id:"java",extensions:[".java",".jav"],aliases:["Java","java"],mimetypes:["text/x-java-source","text/x-java"],loader:()=>Ke(()=>import("./java-CXBNlu9o.js"),[])});Ye({id:"javascript",extensions:[".js",".es6",".jsx",".mjs",".cjs"],firstLine:"^#!.*\\bnode",filenames:["jakefile"],aliases:["JavaScript","javascript","js"],mimetypes:["text/javascript"],loader:()=>Ke(()=>import("./javascript-_2ZaM8YA.js"),__vite__mapDeps([4,5]))});Ye({id:"julia",extensions:[".jl"],aliases:["julia","Julia"],loader:()=>Ke(()=>import("./julia-cl7-CwDS.js"),[])});Ye({id:"kotlin",extensions:[".kt",".kts"],aliases:["Kotlin","kotlin"],mimetypes:["text/x-kotlin-source","text/x-kotlin"],loader:()=>Ke(()=>import("./kotlin-s7OhZKlX.js"),[])});Ye({id:"less",extensions:[".less"],aliases:["Less","less"],mimetypes:["text/x-less","text/less"],loader:()=>Ke(()=>import("./less-9HpZscsL.js"),[])});Ye({id:"lexon",extensions:[".lex"],aliases:["Lexon"],loader:()=>Ke(()=>import("./lexon-OrD6JF1K.js"),[])});Ye({id:"lua",extensions:[".lua"],aliases:["Lua","lua"],loader:()=>Ke(()=>import("./lua-Cyyb5UIc.js"),[])});Ye({id:"liquid",extensions:[".liquid",".html.liquid"],aliases:["Liquid","liquid"],mimetypes:["application/liquid"],loader:()=>Ke(()=>import("./liquid-_KhNG8QO.js"),[])});Ye({id:"m3",extensions:[".m3",".i3",".mg",".ig"],aliases:["Modula-3","Modula3","modula3","m3"],loader:()=>Ke(()=>import("./m3-B8OfTtLu.js"),[])});Ye({id:"markdown",extensions:[".md",".markdown",".mdown",".mkdn",".mkd",".mdwn",".mdtxt",".mdtext"],aliases:["Markdown","markdown"],loader:()=>Ke(()=>import("./markdown-BFxVWTOG.js"),[])});Ye({id:"mdx",extensions:[".mdx"],aliases:["MDX","mdx"],loader:()=>Ke(()=>import("./mdx-0eox3yp5.js"),[])});Ye({id:"mips",extensions:[".s"],aliases:["MIPS","MIPS-V"],mimetypes:["text/x-mips","text/mips","text/plaintext"],loader:()=>Ke(()=>import("./mips-CiqrrVzr.js"),[])});Ye({id:"msdax",extensions:[".dax",".msdax"],aliases:["DAX","MSDAX"],loader:()=>Ke(()=>import("./msdax-DmeGPVcC.js"),[])});Ye({id:"mysql",extensions:[],aliases:["MySQL","mysql"],loader:()=>Ke(()=>import("./mysql-C_tMU-Nz.js"),[])});Ye({id:"objective-c",extensions:[".m"],aliases:["Objective-C"],loader:()=>Ke(()=>import("./objective-c-BDtDVThU.js"),[])});Ye({id:"pascal",extensions:[".pas",".p",".pp"],aliases:["Pascal","pas"],mimetypes:["text/x-pascal-source","text/x-pascal"],loader:()=>Ke(()=>import("./pascal-vHIfCaH5.js"),[])});Ye({id:"pascaligo",extensions:[".ligo"],aliases:["Pascaligo","ligo"],loader:()=>Ke(()=>import("./pascaligo-DtZ0uQbO.js"),[])});Ye({id:"perl",extensions:[".pl",".pm"],aliases:["Perl","pl"],loader:()=>Ke(()=>import("./perl-Ub6l9XKa.js"),[])});Ye({id:"pgsql",extensions:[],aliases:["PostgreSQL","postgres","pg","postgre"],loader:()=>Ke(()=>import("./pgsql-BlNEE0v7.js"),[])});Ye({id:"php",extensions:[".php",".php4",".php5",".phtml",".ctp"],aliases:["PHP","php"],mimetypes:["application/x-php"],loader:()=>Ke(()=>import("./php-BBUBE1dy.js"),[])});Ye({id:"pla",extensions:[".pla"],loader:()=>Ke(()=>import("./pla-DSh2-awV.js"),[])});Ye({id:"postiats",extensions:[".dats",".sats",".hats"],aliases:["ATS","ATS/Postiats"],loader:()=>Ke(()=>import("./postiats-CocnycG-.js"),[])});Ye({id:"powerquery",extensions:[".pq",".pqm"],aliases:["PQ","M","Power Query","Power Query M"],loader:()=>Ke(()=>import("./powerquery-tScXyioY.js"),[])});Ye({id:"powershell",extensions:[".ps1",".psm1",".psd1"],aliases:["PowerShell","powershell","ps","ps1"],loader:()=>Ke(()=>import("./powershell-COWaemsV.js"),[])});Ye({id:"proto",extensions:[".proto"],aliases:["protobuf","Protocol Buffers"],loader:()=>Ke(()=>import("./protobuf-Brw8urJB.js"),[])});Ye({id:"pug",extensions:[".jade",".pug"],aliases:["Pug","Jade","jade"],loader:()=>Ke(()=>import("./pug-8SOpv6rk.js"),[])});Ye({id:"python",extensions:[".py",".rpy",".pyw",".cpy",".gyp",".gypi"],aliases:["Python","py"],firstLine:"^#!/.*\\bpython[0-9.-]*\\b",loader:()=>Ke(()=>import("./python-DfM9YNOE.js"),[])});Ye({id:"qsharp",extensions:[".qs"],aliases:["Q#","qsharp"],loader:()=>Ke(()=>import("./qsharp-Bw9ernYp.js"),[])});Ye({id:"r",extensions:[".r",".rhistory",".rmd",".rprofile",".rt"],aliases:["R","r"],loader:()=>Ke(()=>import("./r-j7ic8hl3.js"),[])});Ye({id:"razor",extensions:[".cshtml"],aliases:["Razor","razor"],mimetypes:["text/x-cshtml"],loader:()=>Ke(()=>import("./razor-BtoM_6mf.js"),[])});Ye({id:"redis",extensions:[".redis"],aliases:["redis"],loader:()=>Ke(()=>import("./redis-Bu5POkcn.js"),[])});Ye({id:"redshift",extensions:[],aliases:["Redshift","redshift"],loader:()=>Ke(()=>import("./redshift-Bs9aos_-.js"),[])});Ye({id:"restructuredtext",extensions:[".rst"],aliases:["reStructuredText","restructuredtext"],loader:()=>Ke(()=>import("./restructuredtext-CqXO7rUv.js"),[])});Ye({id:"ruby",extensions:[".rb",".rbx",".rjs",".gemspec",".pp"],filenames:["rakefile","Gemfile"],aliases:["Ruby","rb"],loader:()=>Ke(()=>import("./ruby-zBfavPgS.js"),[])});Ye({id:"rust",extensions:[".rs",".rlib"],aliases:["Rust","rust"],loader:()=>Ke(()=>import("./rust-BzKRNQWT.js"),[])});Ye({id:"sb",extensions:[".sb"],aliases:["Small Basic","sb"],loader:()=>Ke(()=>import("./sb-BBc9UKZt.js"),[])});Ye({id:"scala",extensions:[".scala",".sc",".sbt"],aliases:["Scala","scala","SBT","Sbt","sbt","Dotty","dotty"],mimetypes:["text/x-scala-source","text/x-scala","text/x-sbt","text/x-dotty"],loader:()=>Ke(()=>import("./scala-D9hQfWCl.js"),[])});Ye({id:"scheme",extensions:[".scm",".ss",".sch",".rkt"],aliases:["scheme","Scheme"],loader:()=>Ke(()=>import("./scheme-BPhDTwHR.js"),[])});Ye({id:"scss",extensions:[".scss"],aliases:["Sass","sass","scss"],mimetypes:["text/x-scss","text/scss"],loader:()=>Ke(()=>import("./scss-CBJaRo0y.js"),[])});Ye({id:"shell",extensions:[".sh",".bash"],aliases:["Shell","sh"],loader:()=>Ke(()=>import("./shell-DiJ1NA_G.js"),[])});Ye({id:"sol",extensions:[".sol"],aliases:["sol","solidity","Solidity"],loader:()=>Ke(()=>import("./solidity-Db0IVjzk.js"),[])});Ye({id:"aes",extensions:[".aes"],aliases:["aes","sophia","Sophia"],loader:()=>Ke(()=>import("./sophia-CnS9iZB_.js"),[])});Ye({id:"sparql",extensions:[".rq"],aliases:["sparql","SPARQL"],loader:()=>Ke(()=>import("./sparql-CJmd_6j2.js"),[])});Ye({id:"sql",extensions:[".sql"],aliases:["SQL"],loader:()=>Ke(()=>import("./sql-ClhHkBeG.js"),[])});Ye({id:"st",extensions:[".st",".iecst",".iecplc",".lc3lib",".TcPOU",".TcDUT",".TcGVL",".TcIO"],aliases:["StructuredText","scl","stl"],loader:()=>Ke(()=>import("./st-CHwy0fLd.js"),[])});Ye({id:"swift",aliases:["Swift","swift"],extensions:[".swift"],mimetypes:["text/swift"],loader:()=>Ke(()=>import("./swift-CnmFD0ga.js"),[])});Ye({id:"systemverilog",extensions:[".sv",".svh"],aliases:["SV","sv","SystemVerilog","systemverilog"],loader:()=>Ke(()=>import("./systemverilog-Bs9z6M-B.js"),[])});Ye({id:"verilog",extensions:[".v",".vh"],aliases:["V","v","Verilog","verilog"],loader:()=>Ke(()=>import("./systemverilog-Bs9z6M-B.js"),[])});Ye({id:"tcl",extensions:[".tcl"],aliases:["tcl","Tcl","tcltk","TclTk","tcl/tk","Tcl/Tk"],loader:()=>Ke(()=>import("./tcl-Dm6ycUr_.js"),[])});Ye({id:"twig",extensions:[".twig"],aliases:["Twig","twig"],mimetypes:["text/x-twig"],loader:()=>Ke(()=>import("./twig-Csy3S7wG.js"),[])});Ye({id:"typescript",extensions:[".ts",".tsx",".cts",".mts"],aliases:["TypeScript","ts","typescript"],mimetypes:["text/typescript"],loader:()=>Ke(()=>import("./typescript-5wSKjBxg.js"),[])});Ye({id:"typespec",extensions:[".tsp"],aliases:["TypeSpec"],loader:()=>Ke(()=>import("./typespec-Btyra-wh.js"),[])});Ye({id:"vb",extensions:[".vb"],aliases:["Visual Basic","vb"],loader:()=>Ke(()=>import("./vb-Db0cS2oM.js"),[])});Ye({id:"wgsl",extensions:[".wgsl"],aliases:["WebGPU Shading Language","WGSL","wgsl"],loader:()=>Ke(()=>import("./wgsl-BTesnYfV.js"),[])});Ye({id:"xml",extensions:[".xml",".xsd",".dtd",".ascx",".csproj",".config",".props",".targets",".wxi",".wxl",".wxs",".xaml",".svg",".svgz",".opf",".xslt",".xsl"],firstLine:"(\\<\\?xml.*)|(\\<svg)|(\\<\\!doctype\\s+svg)",aliases:["XML","xml"],mimetypes:["text/xml","application/xml","application/xaml+xml","application/xml-dtd"],loader:()=>Ke(()=>import("./xml-DWtFRJro.js"),[])});Ye({id:"yaml",extensions:[".yaml",".yml"],aliases:["YAML","yaml","YML","yml"],mimetypes:["application/x-yaml","text/x-yaml"],loader:()=>Ke(()=>import("./yaml-DcaKcLaV.js"),[])});var Wit=Object.defineProperty,Vit=(s,e,t)=>e in s?Wit(s,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):s[e]=t,kt=(s,e,t)=>Vit(s,typeof e!="symbol"?e+"":e,t),bR,Zce,vR,OB,CR;function zit(s){return s.method!==void 0}var Yce;(function(s){function e(t){return t}s.create=e})(Yce||(Yce={}));var zc;(function(s){s.parseError=-32700,s.invalidRequest=-32600,s.methodNotFound=-32601,s.invalidParams=-32602,s.internalError=-32603;function e(o){return-32099<=o&&o<=-32e3}s.isServerError=e;function t(o){if(!e(o))throw new Error("Invalid range for a server error.");return o}s.serverError=t,s.unexpectedServerError=-32e3;function i(o){return!0}s.isApplicationError=i;function n(o){return o}s.applicationError=n,s.genericApplicationError=-320100})(zc||(zc={}));var w0e=class{constructor(){kt(this,"listeners",new Set),kt(this,"event",s=>(this.listeners.add(s),{dispose:()=>{this.listeners.delete(s)}}))}fire(s){this.listeners.forEach(e=>e(s))}},Uit=class{constructor(s){kt(this,"_value"),kt(this,"eventEmitter"),this._value=s,this.eventEmitter=new w0e}get value(){return this._value}set value(s){this._value!==s&&(this._value=s,this.eventEmitter.fire(s))}get onChange(){return this.eventEmitter.event}};function $it(s,e){const t=setTimeout(e,s);return{dispose:()=>clearTimeout(t)}}function PB(s,e,t){return s instanceof Set?(s.add(e),{dispose:()=>s.delete(e)}):(s.set(e,t),{dispose:()=>s.delete(e)})}var jit=class{constructor(){kt(this,"_state","none"),kt(this,"promise"),kt(this,"resolve",()=>{}),kt(this,"reject",()=>{}),this.promise=new Promise((s,e)=>{this.resolve=s,this.reject=e})}get state(){return this._state}};bR=class{constructor(){kt(this,"_unprocessedMessages",[]),kt(this,"_messageListener"),kt(this,"id",bR.id++),kt(this,"_state",new Uit({state:"open"})),kt(this,"state",this._state)}setListener(s){if(this._messageListener=s,!!s)for(;this._unprocessedMessages.length>0&&this._messageListener!==void 0;){const e=this._unprocessedMessages.shift();this._messageListener(e)}}send(s){return this._sendImpl(s)}_dispatchReceivedMessage(s){this._unprocessedMessages.length===0&&this._messageListener?this._messageListener(s):this._unprocessedMessages.push(s)}_onConnectionClosed(){this._state.value={state:"closed",error:void 0}}log(s){return new qit(this,s??new Git)}},kt(bR,"id",0);var qit=class{constructor(s,e){kt(this,"baseStream"),kt(this,"logger"),this.baseStream=s,this.logger=e}get state(){return this.baseStream.state}setListener(s){if(s===void 0){this.baseStream.setListener(void 0);return}this.baseStream.setListener(e=>{this.logger.log(this.baseStream,"incoming",e),s(e)})}send(s){return this.logger.log(this.baseStream,"outgoing",s),this.baseStream.send(s)}toString(){return`StreamLogger/${this.baseStream.toString()}`}},Git=class{log(s,e,t){console.log(`${e==="incoming"?"<-":"->"} [${s.toString()}] ${JSON.stringify(t)}`)}},Kit=class y0e{constructor(e){kt(this,"connect"),this.connect=e}mapContext(e){return new y0e(t=>this.connect(t?Zit(t,e):void 0))}};function Zit(s,e){return{handleNotification:(t,i)=>s.handleNotification(t,e(i)),handleRequest:(t,i,n)=>s.handleRequest(t,i,e(n))}}var Yit=class S0e{constructor(e,t,i){kt(this,"_stream"),kt(this,"_listener"),kt(this,"_logger"),kt(this,"_unprocessedResponses",new Map),kt(this,"_lastUsedRequestId",0),this._stream=e,this._listener=t,this._logger=i,this._stream.setListener(n=>{zit(n)?n.id===void 0?this._processNotification(n):this._processRequest(n):this._processResponse(n)})}static createChannel(e,t){let i=!1;return new Kit(n=>{if(i)throw new Error(`A channel to the stream ${e} was already constructed!`);return i=!0,new S0e(e,n,t)})}get state(){return this._stream.state}async _processNotification(e){if(e.id!==void 0)throw new Error;if(!this._listener){this._logger&&this._logger.debug({text:"Notification ignored",message:e});return}try{await this._listener.handleNotification({method:e.method,params:e.params||null})}catch(t){this._logger&&this._logger.warn({text:`Exception was thrown while handling notification: ${t}`,exception:t,message:e})}}async _processRequest(e){if(e.id===void 0)throw new Error;let t;if(this._listener)try{t=await this._listener.handleRequest({method:e.method,params:e.params||null},e.id)}catch(n){this._logger&&this._logger.warn({text:`Exception was thrown while handling request: ${n}`,message:e,exception:n}),t={error:{code:zc.internalError,message:"An unexpected exception was thrown.",data:void 0}}}else this._logger&&this._logger.debug({text:"Received request even though not listening for requests",message:e}),t={error:{code:zc.methodNotFound,message:"This endpoint does not listen for requests or notifications.",data:void 0}};let i;"result"in t?i={jsonrpc:"2.0",id:e.id,result:t.result}:i={jsonrpc:"2.0",id:e.id,error:t.error},await this._stream.send(i)}_processResponse(e){const t=""+e.id,i=this._unprocessedResponses.get(t);if(!i){this._logger&&this._logger.debug({text:"Got an unexpected response message",message:e});return}this._unprocessedResponses.delete(t),i(e)}_newRequestId(){return this._lastUsedRequestId++}sendRequest(e,t,i){const n={jsonrpc:"2.0",id:this._newRequestId(),method:e.method,params:e.params||void 0};return i&&i(n.id),new Promise((o,r)=>{const a=""+n.id;this._unprocessedResponses.set(a,l=>{"result"in l?o({result:l.result}):(l.error||r(new Error("Response had neither 'result' nor 'error' field set.")),o({error:l.error}))}),this._stream.send(n).then(void 0,l=>{this._unprocessedResponses.delete(a),r(l)})})}sendNotification(e,t){const i={jsonrpc:"2.0",id:void 0,method:e.method,params:e.params||void 0};return this._stream.send(i)}toString(){return"StreamChannel/"+this._stream.toString()}},Iy;(function(s){function e(){return{deserializeFromJson:n=>({hasErrors:!1,value:n}),serializeToJson:n=>n}}s.sAny=e;function t(){return{deserializeFromJson:n=>({hasErrors:!1,value:{}}),serializeToJson:n=>({})}}s.sEmptyObject=t;function i(){return{deserializeFromJson:n=>({hasErrors:!1,value:void 0}),serializeToJson:n=>null}}s.sVoidFromNull=i})(Iy||(Iy={}));const x0e=Symbol("OptionalMethodNotFound");var L0e=class{contextualize(s){return new Xit(this,s)}},Xit=class extends L0e{constructor(s,e){super(),kt(this,"underylingTypedChannel"),kt(this,"converters"),this.underylingTypedChannel=s,this.converters=e}async request(s,e,t){const i=await this.converters.getSendContext(t);return this.underylingTypedChannel.request(s,e,i)}async notify(s,e,t){const i=await this.converters.getSendContext(t);return this.underylingTypedChannel.notify(s,e,i)}registerNotificationHandler(s,e){return this.underylingTypedChannel.registerNotificationHandler(s,async(t,i)=>await e(t,await this.converters.getNewContext(i)))}registerRequestHandler(s,e){return this.underylingTypedChannel.registerRequestHandler(s,async(t,i,n)=>await e(t,i,await this.converters.getNewContext(n)))}},Xce=class k0e extends L0e{constructor(e,t={}){super(),kt(this,"channelCtor"),kt(this,"_requestSender"),kt(this,"_handler",new Map),kt(this,"_unknownNotificationHandler",new Set),kt(this,"_timeout"),kt(this,"sendExceptionDetails",!1),kt(this,"_logger"),kt(this,"listeningDeferred",new jit),kt(this,"onListening",this.listeningDeferred.promise),kt(this,"_requestDidErrorEventEmitter",new w0e),kt(this,"onRequestDidError",this._requestDidErrorEventEmitter.event),this.channelCtor=e,this._logger=t.logger,this.sendExceptionDetails=!!t.sendExceptionDetails,this._timeout=$it(1e3,()=>{this._requestSender||console.warn(`"${this.startListen.name}" has not been called within 1 second after construction of this channel. Did you forget to call it?`,this)})}static fromTransport(e,t={}){return new k0e(Yit.createChannel(e,t.logger),t)}startListen(){if(this._requestSender)throw new Error(`"${this.startListen.name}" can be called only once, but it already has been called.`);this._timeout&&(this._timeout.dispose(),this._timeout=void 0),this._requestSender=this.channelCtor.connect({handleRequest:(e,t,i)=>this.handleRequest(e,t,i),handleNotification:(e,t)=>this.handleNotification(e,t)}),this.listeningDeferred.resolve()}checkChannel(e){if(!e)throw new Error(`"${this.startListen.name}" must be called before any messages can be sent or received.`);return!0}async handleRequest(e,t,i){const n=this._handler.get(e.method);if(!n)return this._logger&&this._logger.debug({text:`No request handler for "${e.method}".`,data:{requestObject:e}}),{error:{code:zc.methodNotFound,message:`No request handler for "${e.method}".`,data:{method:e.method}}};if(n.kind!="request"){const r=`"${e.method}" is registered as notification, but was sent as request.`;return this._logger&&this._logger.debug({text:r,data:{requestObject:e}}),{error:{code:zc.invalidRequest,message:r,data:{method:e.method}}}}const o=n.requestType.paramsSerializer.deserializeFromJson(e.params);if(o.hasErrors){const r=`Got invalid params: ${o.errorMessage}`;return this._logger&&this._logger.debug({text:r,data:{requestObject:e,errorMessage:o.errorMessage}}),{error:{code:zc.invalidParams,message:r,data:{errors:o.errorMessage}}}}else{const r=o.value;let a;try{const l=await n.handler(r,t,i);if("error"in l||"errorMessage"in l){const c=l.error?n.requestType.errorSerializer.serializeToJson(l.error):void 0;a={error:{code:l.errorCode||zc.genericApplicationError,message:l.errorMessage||"An error was returned",data:c}}}else a={result:n.requestType.resultSerializer.serializeToJson(l.ok)}}catch(l){l instanceof Jce?a={error:{code:l.code,message:l.message}}:(this._logger&&this._logger.warn({text:`An exception was thrown while handling a request: ${l}.`,exception:l,data:{requestObject:e}}),a={error:{code:zc.unexpectedServerError,message:this.sendExceptionDetails?`An exception was thrown while handling a request: ${l}.`:"Server has thrown an unexpected exception"}})}return a}}async handleNotification(e,t){const i=this._handler.get(e.method);if(!i){for(const r of this._unknownNotificationHandler)r(e);this._unknownNotificationHandler.size===0&&this._logger&&this._logger.debug({text:`Unhandled notification "${e.method}"`,data:{requestObject:e}});return}if(i.kind!="notification"){this._logger&&this._logger.debug({text:`"${e.method}" is registered as request, but was sent as notification.`,data:{requestObject:e}});return}const n=i.notificationType.paramsSerializer.deserializeFromJson(e.params);if(n.hasErrors){this._logger&&this._logger.debug({text:`Got invalid params: ${n}`,data:{requestObject:e,errorMessage:n.errorMessage}});return}const o=n.value;for(const r of i.handlers)try{r(o,t)}catch(a){this._logger&&this._logger.warn({text:`An exception was thrown while handling a notification: ${a}.`,exception:a,data:{requestObject:e}})}}registerUnknownNotificationHandler(e){return PB(this._unknownNotificationHandler,e)}registerRequestHandler(e,t){if(this._handler.get(e.method))throw new Error(`Handler with method "${e.method}" already registered.`);return PB(this._handler,e.method,{kind:"request",requestType:e,handler:t})}registerNotificationHandler(e,t){let i=this._handler.get(e.method);if(!i)i={kind:"notification",notificationType:e,handlers:new Set},this._handler.set(e.method,i);else{if(i.kind!=="notification")throw new Error(`Method "${e.method}" was already registered as request handler.`);if(i.notificationType!==e)throw new Error(`Method "${e.method}" was registered for a different type.`)}return PB(i.handlers,t)}getRegisteredTypes(){const e=[];for(const t of this._handler.values())t.kind==="notification"?e.push(t.notificationType):t.kind==="request"&&e.push(t.requestType);return e}async request(e,t,i){if(!this.checkChannel(this._requestSender))throw new Error("Impossible");const n=e.paramsSerializer.serializeToJson(t);Qce(n);const o=await this._requestSender.sendRequest({method:e.method,params:n},i);if("error"in o){if(e.isOptional&&o.error.code===zc.methodNotFound)return x0e;let r;if(o.error.data!==void 0){const l=e.errorSerializer.deserializeFromJson(o.error.data);if(l.hasErrors)throw new Error(l.errorMessage);r=l.value}else r=void 0;const a=new Jce(o.error.message,r,o.error.code);throw this._requestDidErrorEventEmitter.fire({error:a}),a}else{const r=e.resultSerializer.deserializeFromJson(o.result);if(r.hasErrors)throw new Error("Could not deserialize response: "+r.errorMessage+`
913
913
 
914
914
  ${JSON.stringify(o,null,2)}`);return r.value}}async notify(e,t,i){if(!this.checkChannel(this._requestSender))throw new Error;const n=e.paramsSerializer.serializeToJson(t);Qce(n),this._requestSender.sendNotification({method:e.method,params:n},i)}};function Qce(s){if(s!==null&&Array.isArray(s)&&typeof s!="object")throw new Error("Invalid value! Only null, array and object is allowed.")}var Jce=class E0e extends Error{constructor(e,t,i=zc.genericApplicationError){super(e),kt(this,"data"),kt(this,"code"),this.data=t,this.code=i,Object.setPrototypeOf(this,E0e.prototype)}},Qit=class hG{constructor(e,t,i,n,o=!1){kt(this,"method"),kt(this,"paramsSerializer"),kt(this,"resultSerializer"),kt(this,"errorSerializer"),kt(this,"isOptional"),kt(this,"kind","request"),this.method=e,this.paramsSerializer=t,this.resultSerializer=i,this.errorSerializer=n,this.isOptional=o}withMethod(e){return new hG(e,this.paramsSerializer,this.resultSerializer,this.errorSerializer)}optional(){return new hG(this.method,this.paramsSerializer,this.resultSerializer,this.errorSerializer,!0)}},Jit=class I0e{constructor(e,t){kt(this,"method"),kt(this,"paramsSerializer"),kt(this,"kind","notification"),this.method=e,this.paramsSerializer=t}withMethod(e){return new I0e(e,this.paramsSerializer)}};function ut(s){return new Qit((s||{}).method,Iy.sAny(),Iy.sAny(),Iy.sAny())}function Dn(s){return new Jit((s||{}).method,Iy.sAny())}const ent=Symbol();var ede=(Zce=ent,vR=class{constructor(s){kt(this,"error"),kt(this,Zce),this.error=s}},kt(vR,"factory",s=>new vR(s)),vR);function tnt(s){const e=tde(s.server),t=tde(s.client);return new int(s.tags||[],e,t)}function tde(s){const e={};for(const[t,i]of Object.entries(s)){const n=i.method?i.method:t;e[t]=i.withMethod(n)}return e}var int=class D0e{constructor(e=[],t,i){kt(this,"tags"),kt(this,"server"),kt(this,"client"),this.tags=e,this.server=t,this.client=i}_onlyDesignTime(){return new Error("This property is not meant to be accessed at runtime")}get TContractObject(){throw this._onlyDesignTime()}get TClientInterface(){throw this._onlyDesignTime()}get TServerInterface(){throw this._onlyDesignTime()}get TClientHandler(){throw this._onlyDesignTime()}get TServerHandler(){throw this._onlyDesignTime()}get TTags(){throw this._onlyDesignTime()}getInterface(e,t,i,n){const o=this.buildCounterpart(e,i),r=this.registerHandlers(e,t,n,o);return{counterpart:o,dispose:()=>r.dispose()}}buildCounterpart(e,t){const i={};for(const[n,o]of Object.entries(t)){let r;o.kind==="request"?o.isOptional?r=async(a,l)=>{a===void 0&&(a={});try{return await e.request(o,a,l)}catch(c){if(c&&c.code===zc.methodNotFound)return x0e;throw c}}:r=(a,l)=>(a===void 0&&(a={}),e.request(o,a,l)):r=(a,l)=>(a===void 0&&(a={}),e.notify(o,a,l)),i[n]=r}return i}registerHandlers(e,t,i,n){const o=[];for(const[r,a]of Object.entries(t))if(a.kind==="request"){let l=i[r];if(!l)continue;const c=this.createRequestHandler(n,l);o.push(e.registerRequestHandler(a,c))}else{const l=i[r];l&&o.push(e.registerNotificationHandler(a,(c,d)=>{l(c,{context:d,counterpart:n})}))}return{dispose:()=>o.forEach(r=>r.dispose())}}createRequestHandler(e,t){return async(i,n,o)=>{const r=await t(i,{context:o,counterpart:e,newErr:ede.factory,requestId:n});return r instanceof ede?r.error:{ok:r}}}static getServerFromStream(e,t,i,n){const o=Xce.fromTransport(t,i),{server:r}=e.getServer(o,n);return o.startListen(),{channel:o,server:r}}static registerServerToStream(e,t,i,n){const o=Xce.fromTransport(t,i),{client:r}=e.registerServer(o,n);return o.startListen(),{channel:o,client:r}}getServer(e,t){const{counterpart:i,dispose:n}=this.getInterface(e,this.client,this.server,t);return{server:i,dispose:n}}registerServer(e,t){const{counterpart:i,dispose:n}=this.getInterface(e,this.server,this.client,t);return{client:i,dispose:n}}withContext(){return new D0e(this.tags,this.server,this.client)}};let FB=(function(s){return s.Comment="comment",s.Imports="imports",s.Region="region",s})({}),qn=(function(s){return s[s.File=1]="File",s[s.Module=2]="Module",s[s.Namespace=3]="Namespace",s[s.Package=4]="Package",s[s.Class=5]="Class",s[s.Method=6]="Method",s[s.Property=7]="Property",s[s.Field=8]="Field",s[s.Constructor=9]="Constructor",s[s.Enum=10]="Enum",s[s.Interface=11]="Interface",s[s.Function=12]="Function",s[s.Variable=13]="Variable",s[s.Constant=14]="Constant",s[s.String=15]="String",s[s.Number=16]="Number",s[s.Boolean=17]="Boolean",s[s.Array=18]="Array",s[s.Object=19]="Object",s[s.Key=20]="Key",s[s.Null=21]="Null",s[s.EnumMember=22]="EnumMember",s[s.Struct=23]="Struct",s[s.Event=24]="Event",s[s.Operator=25]="Operator",s[s.TypeParameter=26]="TypeParameter",s})({}),nnt=(function(s){return s[s.Deprecated=1]="Deprecated",s})({}),ide=(function(s){return s[s.Type=1]="Type",s[s.Parameter=2]="Parameter",s})({}),es=(function(s){return s[s.Text=1]="Text",s[s.Method=2]="Method",s[s.Function=3]="Function",s[s.Constructor=4]="Constructor",s[s.Field=5]="Field",s[s.Variable=6]="Variable",s[s.Class=7]="Class",s[s.Interface=8]="Interface",s[s.Module=9]="Module",s[s.Property=10]="Property",s[s.Unit=11]="Unit",s[s.Value=12]="Value",s[s.Enum=13]="Enum",s[s.Keyword=14]="Keyword",s[s.Snippet=15]="Snippet",s[s.Color=16]="Color",s[s.File=17]="File",s[s.Reference=18]="Reference",s[s.Folder=19]="Folder",s[s.EnumMember=20]="EnumMember",s[s.Constant=21]="Constant",s[s.Struct=22]="Struct",s[s.Event=23]="Event",s[s.Operator=24]="Operator",s[s.TypeParameter=25]="TypeParameter",s})({}),snt=(function(s){return s[s.Deprecated=1]="Deprecated",s})({}),ont=(function(s){return s[s.PlainText=1]="PlainText",s[s.Snippet=2]="Snippet",s})({}),BB=(function(s){return s[s.Text=1]="Text",s[s.Read=2]="Read",s[s.Write=3]="Write",s})({}),wm=(function(s){return s[s.Error=1]="Error",s[s.Warning=2]="Warning",s[s.Information=3]="Information",s[s.Hint=4]="Hint",s})({}),nde=(function(s){return s[s.Unnecessary=1]="Unnecessary",s[s.Deprecated=2]="Deprecated",s})({}),HB=(function(s){return s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",s})({}),WB=(function(s){return s[s.Invoked=1]="Invoked",s[s.TriggerCharacter=2]="TriggerCharacter",s[s.ContentChange=3]="ContentChange",s})({}),sde=(function(s){return s[s.Invoked=1]="Invoked",s[s.Automatic=2]="Automatic",s})({});var Ut=class{constructor(s){this.method=s}};const rnt={textDocumentImplementation:new Ut("textDocument/implementation"),textDocumentTypeDefinition:new Ut("textDocument/typeDefinition"),textDocumentDocumentColor:new Ut("textDocument/documentColor"),textDocumentColorPresentation:new Ut("textDocument/colorPresentation"),textDocumentFoldingRange:new Ut("textDocument/foldingRange"),textDocumentDeclaration:new Ut("textDocument/declaration"),textDocumentSelectionRange:new Ut("textDocument/selectionRange"),textDocumentPrepareCallHierarchy:new Ut("textDocument/prepareCallHierarchy"),textDocumentSemanticTokensFull:new Ut("textDocument/semanticTokens/full"),textDocumentSemanticTokensFullDelta:new Ut("textDocument/semanticTokens/full/delta"),textDocumentLinkedEditingRange:new Ut("textDocument/linkedEditingRange"),workspaceWillCreateFiles:new Ut("workspace/willCreateFiles"),workspaceWillRenameFiles:new Ut("workspace/willRenameFiles"),workspaceWillDeleteFiles:new Ut("workspace/willDeleteFiles"),textDocumentMoniker:new Ut("textDocument/moniker"),textDocumentPrepareTypeHierarchy:new Ut("textDocument/prepareTypeHierarchy"),textDocumentInlineValue:new Ut("textDocument/inlineValue"),textDocumentInlayHint:new Ut("textDocument/inlayHint"),textDocumentDiagnostic:new Ut("textDocument/diagnostic"),textDocumentInlineCompletion:new Ut("textDocument/inlineCompletion"),textDocumentWillSaveWaitUntil:new Ut("textDocument/willSaveWaitUntil"),textDocumentCompletion:new Ut("textDocument/completion"),textDocumentHover:new Ut("textDocument/hover"),textDocumentSignatureHelp:new Ut("textDocument/signatureHelp"),textDocumentDefinition:new Ut("textDocument/definition"),textDocumentReferences:new Ut("textDocument/references"),textDocumentDocumentHighlight:new Ut("textDocument/documentHighlight"),textDocumentDocumentSymbol:new Ut("textDocument/documentSymbol"),textDocumentCodeAction:new Ut("textDocument/codeAction"),workspaceSymbol:new Ut("workspace/symbol"),textDocumentCodeLens:new Ut("textDocument/codeLens"),textDocumentDocumentLink:new Ut("textDocument/documentLink"),textDocumentFormatting:new Ut("textDocument/formatting"),textDocumentRangeFormatting:new Ut("textDocument/rangeFormatting"),textDocumentRangesFormatting:new Ut("textDocument/rangesFormatting"),textDocumentOnTypeFormatting:new Ut("textDocument/onTypeFormatting"),textDocumentRename:new Ut("textDocument/rename"),workspaceExecuteCommand:new Ut("workspace/executeCommand"),workspaceDidCreateFiles:new Ut("workspace/didCreateFiles"),workspaceDidRenameFiles:new Ut("workspace/didRenameFiles"),workspaceDidDeleteFiles:new Ut("workspace/didDeleteFiles"),workspaceDidChangeConfiguration:new Ut("workspace/didChangeConfiguration"),textDocumentDidOpen:new Ut("textDocument/didOpen"),textDocumentDidChange:new Ut("textDocument/didChange"),textDocumentDidClose:new Ut("textDocument/didClose"),textDocumentDidSave:new Ut("textDocument/didSave"),textDocumentWillSave:new Ut("textDocument/willSave"),workspaceDidChangeWatchedFiles:new Ut("workspace/didChangeWatchedFiles")};tnt({server:{textDocumentImplementation:ut({method:"textDocument/implementation"}),textDocumentTypeDefinition:ut({method:"textDocument/typeDefinition"}),textDocumentDocumentColor:ut({method:"textDocument/documentColor"}),textDocumentColorPresentation:ut({method:"textDocument/colorPresentation"}),textDocumentFoldingRange:ut({method:"textDocument/foldingRange"}),textDocumentDeclaration:ut({method:"textDocument/declaration"}),textDocumentSelectionRange:ut({method:"textDocument/selectionRange"}),textDocumentPrepareCallHierarchy:ut({method:"textDocument/prepareCallHierarchy"}),callHierarchyIncomingCalls:ut({method:"callHierarchy/incomingCalls"}),callHierarchyOutgoingCalls:ut({method:"callHierarchy/outgoingCalls"}),textDocumentSemanticTokensFull:ut({method:"textDocument/semanticTokens/full"}),textDocumentSemanticTokensFullDelta:ut({method:"textDocument/semanticTokens/full/delta"}),textDocumentSemanticTokensRange:ut({method:"textDocument/semanticTokens/range"}),textDocumentLinkedEditingRange:ut({method:"textDocument/linkedEditingRange"}),workspaceWillCreateFiles:ut({method:"workspace/willCreateFiles"}),workspaceWillRenameFiles:ut({method:"workspace/willRenameFiles"}),workspaceWillDeleteFiles:ut({method:"workspace/willDeleteFiles"}),textDocumentMoniker:ut({method:"textDocument/moniker"}),textDocumentPrepareTypeHierarchy:ut({method:"textDocument/prepareTypeHierarchy"}),typeHierarchySupertypes:ut({method:"typeHierarchy/supertypes"}),typeHierarchySubtypes:ut({method:"typeHierarchy/subtypes"}),textDocumentInlineValue:ut({method:"textDocument/inlineValue"}),textDocumentInlayHint:ut({method:"textDocument/inlayHint"}),inlayHintResolve:ut({method:"inlayHint/resolve"}),textDocumentDiagnostic:ut({method:"textDocument/diagnostic"}),workspaceDiagnostic:ut({method:"workspace/diagnostic"}),textDocumentInlineCompletion:ut({method:"textDocument/inlineCompletion"}),initialize:ut({method:"initialize"}),shutdown:ut({method:"shutdown"}),textDocumentWillSaveWaitUntil:ut({method:"textDocument/willSaveWaitUntil"}),textDocumentCompletion:ut({method:"textDocument/completion"}),completionItemResolve:ut({method:"completionItem/resolve"}),textDocumentHover:ut({method:"textDocument/hover"}),textDocumentSignatureHelp:ut({method:"textDocument/signatureHelp"}),textDocumentDefinition:ut({method:"textDocument/definition"}),textDocumentReferences:ut({method:"textDocument/references"}),textDocumentDocumentHighlight:ut({method:"textDocument/documentHighlight"}),textDocumentDocumentSymbol:ut({method:"textDocument/documentSymbol"}),textDocumentCodeAction:ut({method:"textDocument/codeAction"}),codeActionResolve:ut({method:"codeAction/resolve"}),workspaceSymbol:ut({method:"workspace/symbol"}),workspaceSymbolResolve:ut({method:"workspaceSymbol/resolve"}),textDocumentCodeLens:ut({method:"textDocument/codeLens"}),codeLensResolve:ut({method:"codeLens/resolve"}),textDocumentDocumentLink:ut({method:"textDocument/documentLink"}),documentLinkResolve:ut({method:"documentLink/resolve"}),textDocumentFormatting:ut({method:"textDocument/formatting"}),textDocumentRangeFormatting:ut({method:"textDocument/rangeFormatting"}),textDocumentRangesFormatting:ut({method:"textDocument/rangesFormatting"}),textDocumentOnTypeFormatting:ut({method:"textDocument/onTypeFormatting"}),textDocumentRename:ut({method:"textDocument/rename"}),textDocumentPrepareRename:ut({method:"textDocument/prepareRename"}),workspaceExecuteCommand:ut({method:"workspace/executeCommand"}),workspaceDidChangeWorkspaceFolders:Dn({method:"workspace/didChangeWorkspaceFolders"}),windowWorkDoneProgressCancel:Dn({method:"window/workDoneProgress/cancel"}),workspaceDidCreateFiles:Dn({method:"workspace/didCreateFiles"}),workspaceDidRenameFiles:Dn({method:"workspace/didRenameFiles"}),workspaceDidDeleteFiles:Dn({method:"workspace/didDeleteFiles"}),notebookDocumentDidOpen:Dn({method:"notebookDocument/didOpen"}),notebookDocumentDidChange:Dn({method:"notebookDocument/didChange"}),notebookDocumentDidSave:Dn({method:"notebookDocument/didSave"}),notebookDocumentDidClose:Dn({method:"notebookDocument/didClose"}),initialized:Dn({method:"initialized"}),exit:Dn({method:"exit"}),workspaceDidChangeConfiguration:Dn({method:"workspace/didChangeConfiguration"}),textDocumentDidOpen:Dn({method:"textDocument/didOpen"}),textDocumentDidChange:Dn({method:"textDocument/didChange"}),textDocumentDidClose:Dn({method:"textDocument/didClose"}),textDocumentDidSave:Dn({method:"textDocument/didSave"}),textDocumentWillSave:Dn({method:"textDocument/willSave"}),workspaceDidChangeWatchedFiles:Dn({method:"workspace/didChangeWatchedFiles"}),setTrace:Dn({method:"$/setTrace"}),cancelRequest:Dn({method:"$/cancelRequest"}),progress:Dn({method:"$/progress"})},client:{workspaceWorkspaceFolders:ut({method:"workspace/workspaceFolders"}).optional(),workspaceConfiguration:ut({method:"workspace/configuration"}).optional(),workspaceFoldingRangeRefresh:ut({method:"workspace/foldingRange/refresh"}).optional(),windowWorkDoneProgressCreate:ut({method:"window/workDoneProgress/create"}).optional(),workspaceSemanticTokensRefresh:ut({method:"workspace/semanticTokens/refresh"}).optional(),windowShowDocument:ut({method:"window/showDocument"}).optional(),workspaceInlineValueRefresh:ut({method:"workspace/inlineValue/refresh"}).optional(),workspaceInlayHintRefresh:ut({method:"workspace/inlayHint/refresh"}).optional(),workspaceDiagnosticRefresh:ut({method:"workspace/diagnostic/refresh"}).optional(),clientRegisterCapability:ut({method:"client/registerCapability"}).optional(),clientUnregisterCapability:ut({method:"client/unregisterCapability"}).optional(),windowShowMessageRequest:ut({method:"window/showMessageRequest"}).optional(),workspaceCodeLensRefresh:ut({method:"workspace/codeLens/refresh"}).optional(),workspaceApplyEdit:ut({method:"workspace/applyEdit"}).optional(),windowShowMessage:Dn({method:"window/showMessage"}),windowLogMessage:Dn({method:"window/logMessage"}),telemetryEvent:Dn({method:"telemetry/event"}),textDocumentPublishDiagnostics:Dn({method:"textDocument/publishDiagnostics"}),logTrace:Dn({method:"$/logTrace"}),cancelRequest:Dn({method:"$/cancelRequest"}),progress:Dn({method:"$/progress"})}});OB=class{constructor(){kt(this,"_store",new ant)}dispose(){this._store.dispose()}_register(s){if(s===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(s)}},kt(OB,"None",Object.freeze({dispose(){}}));var ant=(CR=class{constructor(){kt(this,"_toDispose",new Set),kt(this,"_isDisposed",!1)}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}clear(){if(this._toDispose.size!==0)try{for(const s of this._toDispose)s.dispose()}finally{this._toDispose.clear()}}add(s){if(!s)return s;if(s===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?CR.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(s),s}},kt(CR,"DISABLE_DISPOSED_WARNING",!1),CR);We.CodeActionTriggerType.Invoke,sde.Invoked,We.CodeActionTriggerType.Auto,sde.Automatic;es.Text,We.CompletionItemKind.Text,es.Method,We.CompletionItemKind.Method,es.Function,We.CompletionItemKind.Function,es.Constructor,We.CompletionItemKind.Constructor,es.Field,We.CompletionItemKind.Field,es.Variable,We.CompletionItemKind.Variable,es.Class,We.CompletionItemKind.Class,es.Interface,We.CompletionItemKind.Interface,es.Module,We.CompletionItemKind.Module,es.Property,We.CompletionItemKind.Property,es.Unit,We.CompletionItemKind.Unit,es.Value,We.CompletionItemKind.Value,es.Enum,We.CompletionItemKind.Enum,es.Keyword,We.CompletionItemKind.Keyword,es.Snippet,We.CompletionItemKind.Snippet,es.Color,We.CompletionItemKind.Color,es.File,We.CompletionItemKind.File,es.Reference,We.CompletionItemKind.Reference,es.Folder,We.CompletionItemKind.Folder,es.EnumMember,We.CompletionItemKind.EnumMember,es.Constant,We.CompletionItemKind.Constant,es.Struct,We.CompletionItemKind.Struct,es.Event,We.CompletionItemKind.Event,es.Operator,We.CompletionItemKind.Operator,es.TypeParameter,We.CompletionItemKind.TypeParameter;snt.Deprecated,We.CompletionItemTag.Deprecated;We.CompletionTriggerKind.Invoke,HB.Invoked,We.CompletionTriggerKind.TriggerCharacter,HB.TriggerCharacter,We.CompletionTriggerKind.TriggerForIncompleteCompletions,HB.TriggerForIncompleteCompletions;ont.Snippet,We.CompletionItemInsertTextRule.InsertAsSnippet;qn.File,We.SymbolKind.File,qn.Module,We.SymbolKind.Module,qn.Namespace,We.SymbolKind.Namespace,qn.Package,We.SymbolKind.Package,qn.Class,We.SymbolKind.Class,qn.Method,We.SymbolKind.Method,qn.Property,We.SymbolKind.Property,qn.Field,We.SymbolKind.Field,qn.Constructor,We.SymbolKind.Constructor,qn.Enum,We.SymbolKind.Enum,qn.Interface,We.SymbolKind.Interface,qn.Function,We.SymbolKind.Function,qn.Variable,We.SymbolKind.Variable,qn.Constant,We.SymbolKind.Constant,qn.String,We.SymbolKind.String,qn.Number,We.SymbolKind.Number,qn.Boolean,We.SymbolKind.Boolean,qn.Array,We.SymbolKind.Array,qn.Object,We.SymbolKind.Object,qn.Key,We.SymbolKind.Key,qn.Null,We.SymbolKind.Null,qn.EnumMember,We.SymbolKind.EnumMember,qn.Struct,We.SymbolKind.Struct,qn.Event,We.SymbolKind.Event,qn.Operator,We.SymbolKind.Operator,qn.TypeParameter,We.SymbolKind.TypeParameter;nnt.Deprecated,We.SymbolTag.Deprecated;BB.Text,We.DocumentHighlightKind.Text,BB.Read,We.DocumentHighlightKind.Read,BB.Write,We.DocumentHighlightKind.Write;FB.Comment,We.FoldingRangeKind.Comment,FB.Imports,We.FoldingRangeKind.Imports,FB.Region,We.FoldingRangeKind.Region;og.Error,wm.Error,og.Warning,wm.Warning,og.Info,wm.Information,og.Hint,wm.Hint;wm.Error,og.Error,wm.Warning,og.Warning,wm.Information,og.Info,wm.Hint,og.Hint;nde.Unnecessary,dG.Unnecessary,nde.Deprecated,dG.Deprecated;We.SignatureHelpTriggerKind.Invoke,WB.Invoked,We.SignatureHelpTriggerKind.TriggerCharacter,WB.TriggerCharacter,We.SignatureHelpTriggerKind.ContentChange,WB.ContentChange;ide.Type,We.InlayHintKind.Type,ide.Parameter,We.InlayHintKind.Parameter;new Map([...Object.values(rnt)].map(s=>[s.method,s]));function lnt(s,e){const t=globalThis.MonacoEnvironment;if(t?.createTrustedTypesPolicy)try{return t.createTrustedTypesPolicy(s,e)}catch(i){console.error(i);return}try{return globalThis.trustedTypes?.createPolicy(s,e)}catch(i){console.error(i);return}}let VP;typeof self=="object"&&self.constructor&&self.constructor.name==="DedicatedWorkerGlobalScope"&&globalThis.workerttPolicy!==void 0?VP=globalThis.workerttPolicy:VP=lnt("defaultWorkerFactory",{createScriptURL:s=>s});function cnt(s){const e=s.label,t=globalThis.MonacoEnvironment;if(t){if(typeof t.getWorker=="function")return t.getWorker("workerMain.js",e);if(typeof t.getWorkerUrl=="function"){const i=t.getWorkerUrl("workerMain.js",e);return new Worker(VP?VP.createScriptURL(i):i,{name:e,type:"module"})}}if(s.createWorker)return s.createWorker();throw new Error("You must define a function MonacoEnvironment.getWorkerUrl or MonacoEnvironment.getWorker")}function l0t(s){const e=Promise.resolve(cnt({label:s.label??"monaco-editor-worker",moduleId:s.moduleId,createWorker:s.createWorker})).then(t=>(t.postMessage("ignore"),t.postMessage(s.createData),t));return kF.createWebWorker({worker:e,host:s.host,keepIdleModels:s.keepIdleModels})}function T0e(){return wit}const dnt=globalThis.MonacoEnvironment;dnt?.globalAPI&&(globalThis.monaco=T0e());const NF=T0e();NF.languages.css=yit;NF.languages.html=Dit;NF.languages.typescript=Hit;NF.languages.json=Ait;const DX=Pc.forwardRef(({content:s,onChange:e,fileName:t="untitled.wire",language:i="wire",readOnly:n=!1,className:o=""},r)=>{const a=mi.useRef(null),l=mi.useRef(null),c=mi.useRef(!1);return mi.useEffect(()=>{if(!(!a.current||c.current))try{const d=kF.create(a.current,{value:s,language:i,theme:"vs-light",fontSize:14,fontFamily:"Fira Code, monospace",lineNumbers:"on",wordWrap:"on",autoClosingBrackets:"always",autoClosingQuotes:"always",autoIndent:"full",formatOnPaste:!0,tabSize:2,insertSpaces:!0,readOnly:n,minimap:{enabled:!0},scrollBeyondLastLine:!1,automaticLayout:!0});l.current=d,c.current=!0,typeof r=="function"?r(d):r&&(r.current=d)}catch(d){console.error("Error creating Monaco editor:",d)}},[]),mi.useEffect(()=>{if(!l.current)return;const d=l.current.onDidChangeModelContent(()=>{const h=l.current.getValue();e(h)});return()=>{d.dispose()}},[e]),mi.useEffect(()=>{l.current&&l.current.getValue()!==s&&l.current.setValue(s)},[s]),$e.jsx("div",{ref:a,className:o,style:{display:"flex",width:"100%",height:"100%",backgroundColor:"#ffffff"}})});DX.displayName="MonacoEditorComponent";DX.displayName="MonacoEditorComponent";const hnt=s=>s.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),unt=s=>s.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,i)=>i?i.toUpperCase():t.toLowerCase()),ode=s=>{const e=unt(s);return e.charAt(0).toUpperCase()+e.slice(1)},N0e=(...s)=>s.filter((e,t,i)=>!!e&&e.trim()!==""&&i.indexOf(e)===t).join(" ").trim(),fnt=s=>{for(const e in s)if(e.startsWith("aria-")||e==="role"||e==="title")return!0};var gnt={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const pnt=mi.forwardRef(({color:s="currentColor",size:e=24,strokeWidth:t=2,absoluteStrokeWidth:i,className:n="",children:o,iconNode:r,...a},l)=>mi.createElement("svg",{ref:l,...gnt,width:e,height:e,stroke:s,strokeWidth:i?Number(t)*24/Number(e):t,className:N0e("lucide",n),...!o&&!fnt(a)&&{"aria-hidden":"true"},...a},[...r.map(([c,d])=>mi.createElement(c,d)),...Array.isArray(o)?o:[o]]));const E_=(s,e)=>{const t=mi.forwardRef(({className:i,...n},o)=>mi.createElement(pnt,{ref:o,iconNode:e,className:N0e(`lucide-${hnt(ode(s))}`,`lucide-${s}`,i),...n}));return t.displayName=ode(s),t};const mnt=[["path",{d:"M4 19.5v-15A2.5 2.5 0 0 1 6.5 2H19a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1H6.5a1 1 0 0 1 0-5H20",key:"k3hazp"}]],_nt=E_("book",mnt);const bnt=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],vnt=E_("chevron-down",bnt);const Cnt=[["path",{d:"M12 15V3",key:"m9g1x1"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}],["path",{d:"m7 10 5 5 5-5",key:"brsn70"}]],wnt=E_("download",Cnt);const ynt=[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]],Snt=E_("external-link",ynt);const xnt=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M12 18v-6",key:"17g6i2"}],["path",{d:"m9 15 3 3 3-3",key:"1npd3o"}]],Lnt=E_("file-down",xnt);const knt=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],Ent=E_("folder-open",knt);const Int=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"M12 5v14",key:"s699le"}]],Dnt=E_("plus",Int);const Tnt=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],Nnt=E_("save",Tnt),rde=({currentFileName:s,isDirty:e,onNew:t,onOpen:i,onSave:n,onSaveAs:o,onRename:r,onExport:a,onExampleSelect:l,examples:c=["simple-dashboard","simple-multi-screen","admin-dashboard","form-example","analytics-dashboard"]})=>{const[d,h]=Pc.useState(!1),[f,p]=Pc.useState(!1),[m,b]=Pc.useState(s),C=Pc.useRef(null),y=Pc.useMemo(()=>s.endsWith(".wire")?s.slice(0,-5):s,[s]);Pc.useEffect(()=>{b(y)},[y]),Pc.useEffect(()=>{f&&C.current&&(C.current.focus(),C.current.select())},[f]);const S=()=>{if(m.trim()){const x=m.trim(),E=x.endsWith(".wire")?x:`${x}.wire`;E!==s&&r(E)}else b(y);p(!1)},L=x=>{x.key==="Enter"?S():x.key==="Escape"&&(p(!1),b(y))};return $e.jsxs("header",{style:{height:"64px",backgroundColor:"#ffffff",borderBottom:"1px solid #e5e7eb",display:"flex",alignItems:"center",justifyContent:"space-between",paddingLeft:"24px",paddingRight:"24px",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.05)"},children:[$e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"24px"},children:[$e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"12px"},children:[$e.jsx("div",{style:{width:"32px",height:"32px",backgroundColor:"#3b82f6",borderRadius:"8px",display:"flex",alignItems:"center",justifyContent:"center",fontSize:"18px",fontWeight:"bold"},children:$e.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"234",height:"242",viewBox:"0 0 234 242",role:"img","aria-label":"Wire-DSL logo",children:[$e.jsxs("defs",{children:[$e.jsxs("radialGradient",{id:"bgGrad",cx:"30%",cy:"25%",r:"75%",children:[$e.jsx("stop",{offset:"0%",stopColor:"#FFFFAA",stopOpacity:"1"}),$e.jsx("stop",{offset:"55%",stopColor:"#AAAAAA",stopOpacity:"1"}),$e.jsx("stop",{offset:"100%",stopColor:"#AADDDD",stopOpacity:"1"})]}),$e.jsxs("radialGradient",{id:"nodeGrad",cx:"33%",cy:"33%",r:"75%",children:[$e.jsx("stop",{offset:"0%",stopColor:"#EEEEEE",stopOpacity:"1"}),$e.jsx("stop",{offset:"100%",stopColor:"#AAAAAA",stopOpacity:"1"})]}),$e.jsxs("linearGradient",{id:"strokeGrad",x1:"0",y1:"0",x2:"1",y2:"1",children:[$e.jsx("stop",{offset:"0%",stopColor:"#F4F4F4",stopOpacity:"1"}),$e.jsx("stop",{offset:"100%",stopColor:"#DADADA",stopOpacity:"1"})]})]}),$e.jsxs("g",{fill:"none",strokeLinecap:"round",strokeLinejoin:"round",transform:"translate(0, 30)",children:[$e.jsxs("g",{children:[$e.jsx("circle",{cx:"44",cy:"45",r:"15",fill:"url(#nodeGrad)"}),$e.jsx("circle",{cx:"86",cy:"136",r:"15",fill:"url(#nodeGrad)"}),$e.jsx("circle",{cx:"117",cy:"56",r:"15",fill:"url(#nodeGrad)"}),$e.jsx("circle",{cx:"148",cy:"136",r:"15",fill:"url(#nodeGrad)"}),$e.jsx("circle",{cx:"190",cy:"45",r:"15",fill:"url(#nodeGrad)"})]}),$e.jsx("path",{d:"M 44 45 L 86 136 L 117 56 L 148 136 L 190 45",stroke:"url(#strokeGrad)",strokeWidth:"18"})]})]})}),$e.jsx("h1",{style:{fontSize:"18px",fontWeight:"600",color:"#111827",margin:0},children:"Wire Live"}),$e.jsx("span",{style:{fontSize:"11px",backgroundColor:"#f3f4f6",color:"#4b5563",paddingLeft:"8px",paddingRight:"8px",paddingTop:"4px",paddingBottom:"4px",borderRadius:"6px",fontWeight:"500"},children:"open-source"})]}),$e.jsx("div",{style:{width:"1px",height:"32px",backgroundColor:"#e5e7eb"}}),$e.jsxs("div",{style:{fontSize:"14px",color:"#4b5563",display:"flex",alignItems:"center",gap:"8px"},children:[f?$e.jsx("input",{ref:C,type:"text",value:m,onChange:x=>b(x.target.value),onBlur:S,onKeyDown:L,style:{fontSize:"14px",fontWeight:"500",color:"#111827",padding:"4px 8px",border:"2px solid #3b82f6",borderRadius:"4px",fontFamily:"inherit",outline:"none"}}):$e.jsx("span",{onClick:()=>p(!0),style:{fontWeight:"500",color:"#111827",cursor:"pointer",padding:"4px 6px",borderRadius:"4px",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#f3f4f6",onMouseLeave:x=>x.currentTarget.style.backgroundColor="transparent",title:"Click to rename",children:s}),e&&$e.jsx("span",{style:{color:"#f59e0b",fontSize:"10px"},children:"● unsaved"})]})]}),$e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"16px"},children:[$e.jsxs("button",{onClick:t,style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"500",color:"#374151",backgroundColor:"transparent",border:"none",borderRadius:"6px",cursor:"pointer",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#f3f4f6",onMouseLeave:x=>x.currentTarget.style.backgroundColor="transparent",title:"Nuevo archivo (Ctrl+N)",children:[$e.jsx(Dnt,{size:16}),"New"]}),$e.jsxs("button",{onClick:i,style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"500",color:"#374151",backgroundColor:"transparent",border:"none",borderRadius:"6px",cursor:"pointer",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#f3f4f6",onMouseLeave:x=>x.currentTarget.style.backgroundColor="transparent",title:"Abrir archivo (Ctrl+O)",children:[$e.jsx(Ent,{size:16}),"Open"]}),$e.jsxs("button",{onClick:n,style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"500",color:e?"#3b82f6":"#374151",backgroundColor:e?"#eff6ff":"transparent",border:e?"1px solid #93c5fd":"none",borderRadius:"6px",cursor:"pointer",transition:"all 0.2s"},onMouseEnter:x=>{e?x.currentTarget.style.backgroundColor="#dbeafe":x.currentTarget.style.backgroundColor="#f3f4f6"},onMouseLeave:x=>{x.currentTarget.style.backgroundColor=e?"#eff6ff":"transparent"},title:"Guardar archivo (Ctrl+S)",children:[$e.jsx(Nnt,{size:16}),"Save"]}),o&&$e.jsxs("button",{onClick:o,style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"500",color:"#374151",backgroundColor:"transparent",border:"none",borderRadius:"6px",cursor:"pointer",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#f3f4f6",onMouseLeave:x=>x.currentTarget.style.backgroundColor="transparent",title:"Guardar como (Ctrl+Shift+S)",children:[$e.jsx(Lnt,{size:16}),"Save As"]}),$e.jsxs("div",{style:{position:"relative"},children:[$e.jsxs("button",{onClick:()=>h(!d),style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"500",color:"#374151",backgroundColor:"transparent",border:"none",borderRadius:"6px",cursor:"pointer",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#f3f4f6",onMouseLeave:x=>x.currentTarget.style.backgroundColor="transparent",children:["Examples",$e.jsx(vnt,{size:16,style:{transform:d?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.2s"}})]}),d&&$e.jsx("div",{style:{position:"absolute",top:"100%",right:"0",marginTop:"8px",backgroundColor:"#ffffff",border:"1px solid #e5e7eb",borderRadius:"8px",boxShadow:"0 10px 15px -3px rgba(0, 0, 0, 0.1)",zIndex:1e3,minWidth:"160px"},children:c.map((x,E)=>$e.jsx("button",{onClick:()=>{l?.(x),h(!1)},style:{width:"100%",textAlign:"left",paddingLeft:"16px",paddingRight:"16px",paddingTop:"10px",paddingBottom:"10px",fontSize:"14px",color:"#374151",backgroundColor:"transparent",border:"none",cursor:"pointer",transition:"background-color 0.2s",borderTopLeftRadius:E===0?"8px":"0px",borderTopRightRadius:E===0?"8px":"0px",borderBottomLeftRadius:E===c.length-1?"8px":"0px",borderBottomRightRadius:E===c.length-1?"8px":"0px"},onMouseEnter:D=>D.currentTarget.style.backgroundColor="#f9fafb",onMouseLeave:D=>D.currentTarget.style.backgroundColor="transparent",children:x},x))})]}),$e.jsx("div",{style:{width:"1px",height:"32px",backgroundColor:"#e5e7eb"}}),$e.jsxs("a",{href:"https://wire-dsl.org",target:"_blank",rel:"noopener noreferrer",style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"500",color:"#374151",backgroundColor:"transparent",border:"none",borderRadius:"6px",cursor:"pointer",textDecoration:"none",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#f3f4f6",onMouseLeave:x=>x.currentTarget.style.backgroundColor="transparent",title:"Open documentation",children:[$e.jsx(_nt,{size:16}),"Docs",$e.jsx(Snt,{size:14,style:{opacity:.6}})]}),$e.jsx("div",{style:{width:"1px",height:"32px",backgroundColor:"#e5e7eb"}}),$e.jsxs("button",{onClick:a,style:{display:"flex",alignItems:"center",gap:"8px",paddingLeft:"16px",paddingRight:"16px",paddingTop:"8px",paddingBottom:"8px",fontSize:"14px",fontWeight:"600",color:"#ffffff",backgroundColor:"#3b82f6",border:"none",borderRadius:"6px",cursor:"pointer",transition:"background-color 0.2s"},onMouseEnter:x=>x.currentTarget.style.backgroundColor="#2563eb",onMouseLeave:x=>x.currentTarget.style.backgroundColor="#3b82f6",title:"Exportar como SVG",children:[$e.jsx(wnt,{size:16}),"Export SVG"]})]})]})},ade=s=>{let e;const t=new Set,i=(c,d)=>{const h=typeof c=="function"?c(e):c;if(!Object.is(h,e)){const f=e;e=d??(typeof h!="object"||h===null)?h:Object.assign({},e,h),t.forEach(p=>p(e,f))}},n=()=>e,a={setState:i,getState:n,getInitialState:()=>l,subscribe:c=>(t.add(c),()=>t.delete(c))},l=e=s(i,n,a);return a},Rnt=(s=>s?ade(s):ade),Mnt=s=>s;function Ant(s,e=Mnt){const t=Pc.useSyncExternalStore(s.subscribe,Pc.useCallback(()=>e(s.getState()),[s,e]),Pc.useCallback(()=>e(s.getInitialState()),[s,e]));return Pc.useDebugValue(t),t}const Ont=s=>{const e=Rnt(s),t=i=>Ant(e,i);return Object.assign(t,e),t},Pnt=(s=>Ont);function Fnt(s,e){let t;try{t=s()}catch{return}return{getItem:n=>{var o;const r=l=>l===null?null:JSON.parse(l,void 0),a=(o=t.getItem(n))!=null?o:null;return a instanceof Promise?a.then(r):r(a)},setItem:(n,o)=>t.setItem(n,JSON.stringify(o,void 0)),removeItem:n=>t.removeItem(n)}}const uG=s=>e=>{try{const t=s(e);return t instanceof Promise?t:{then(i){return uG(i)(t)},catch(i){return this}}}catch(t){return{then(i){return this},catch(i){return uG(i)(t)}}}},Bnt=(s,e)=>(t,i,n)=>{let o={storage:Fnt(()=>localStorage),partialize:C=>C,version:0,merge:(C,y)=>({...y,...C}),...e},r=!1,a=0;const l=new Set,c=new Set;let d=o.storage;if(!d)return s((...C)=>{console.warn(`[zustand persist middleware] Unable to update item '${o.name}', the given storage is currently unavailable.`),t(...C)},i,n);const h=()=>{const C=o.partialize({...i()});return d.setItem(o.name,{state:C,version:o.version})},f=n.setState;n.setState=(C,y)=>(f(C,y),h());const p=s((...C)=>(t(...C),h()),i,n);n.getInitialState=()=>p;let m;const b=()=>{var C,y;if(!d)return;const S=++a;r=!1,l.forEach(x=>{var E;return x((E=i())!=null?E:p)});const L=((y=o.onRehydrateStorage)==null?void 0:y.call(o,(C=i())!=null?C:p))||void 0;return uG(d.getItem.bind(d))(o.name).then(x=>{if(x)if(typeof x.version=="number"&&x.version!==o.version){if(o.migrate){const E=o.migrate(x.state,x.version);return E instanceof Promise?E.then(D=>[!0,D]):[!0,E]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,x.state];return[!1,void 0]}).then(x=>{var E;if(S!==a)return;const[D,T]=x;if(m=o.merge(T,(E=i())!=null?E:p),t(m,!0),D)return h()}).then(()=>{S===a&&(L?.(m,void 0),m=i(),r=!0,c.forEach(x=>x(m)))}).catch(x=>{S===a&&L?.(void 0,x)})};return n.persist={setOptions:C=>{o={...o,...C},C.storage&&(d=C.storage)},clearStorage:()=>{d?.removeItem(o.name)},getOptions:()=>o,rehydrate:()=>b(),hasHydrated:()=>r,onHydrate:C=>(l.add(C),()=>{l.delete(C)}),onFinishHydration:C=>(c.add(C),()=>{c.delete(C)})},o.skipHydration||b(),m||p},Hnt=Bnt,Wnt=()=>({name:"untitled.wire",content:"",isDirty:!1,lastModified:Date.now()}),bd=Pnt()(Hnt((s,e)=>({files:new Map([["untitled-1",Wnt()]]),currentFileId:"untitled-1",zoomLevel:100,previewMode:"all-screens",selectedScreen:null,createFile:(t,i)=>{const n=`file-${Date.now()}`,o={name:t,content:i||"",isDirty:!!i,lastModified:Date.now()};s(r=>({files:new Map(r.files).set(n,o),currentFileId:n}))},openFile:t=>{s({currentFileId:t})},updateFileContent:(t,i)=>{s(n=>{const o=new Map(n.files),r=o.get(t);return r&&o.set(t,{...r,content:i,isDirty:!0,lastModified:Date.now()}),{files:o}})},renameFile:(t,i)=>{s(n=>{const o=new Map(n.files),r=o.get(t);return r&&o.set(t,{...r,name:i}),{files:o}})},markFileSaved:t=>{s(i=>{const n=new Map(i.files),o=n.get(t);return o&&n.set(t,{...o,isDirty:!1}),{files:n}})},deleteFile:t=>{s(i=>{const n=new Map(i.files);n.delete(t);let o=i.currentFileId;if(o===t){const r=Array.from(n.keys());o=r.length>0?r[0]:""}return{files:n,currentFileId:o}})},closeFile:t=>{s(i=>{if(i.currentFileId===t){const n=Array.from(i.files.keys()).filter(o=>o!==t);return{currentFileId:n.length>0?n[0]:""}}return{}})},setZoomLevel:t=>{s({zoomLevel:Math.max(25,Math.min(200,t))})},setPreviewMode:t=>{s({previewMode:t})},setSelectedScreen:t=>{s({selectedScreen:t})},getCurrentFile:()=>{const t=e();return t.files.get(t.currentFileId)||null}}),{name:"wire-editor-store",storage:{getItem:s=>{const e=localStorage.getItem(s);if(!e)return null;try{const t=JSON.parse(e);return{...t,state:{...t.state,files:new Map(t.state.files||[])}}}catch{return null}},setItem:(s,e)=>{localStorage.setItem(s,JSON.stringify({...e,state:{...e.state,files:Array.from(e.state.files||new Map)}}))},removeItem:s=>localStorage.removeItem(s)}}));var R0e=typeof global=="object"&&global&&global.Object===Object&&global,Vnt=typeof self=="object"&&self&&self.Object===Object&&self,Mu=R0e||Vnt||Function("return this")(),td=Mu.Symbol,M0e=Object.prototype,znt=M0e.hasOwnProperty,Unt=M0e.toString,zL=td?td.toStringTag:void 0;function $nt(s){var e=znt.call(s,zL),t=s[zL];try{s[zL]=void 0;var i=!0}catch{}var n=Unt.call(s);return i&&(e?s[zL]=t:delete s[zL]),n}var jnt=Object.prototype,qnt=jnt.toString;function Gnt(s){return qnt.call(s)}var Knt="[object Null]",Znt="[object Undefined]",lde=td?td.toStringTag:void 0;function I_(s){return s==null?s===void 0?Znt:Knt:lde&&lde in Object(s)?$nt(s):Gnt(s)}function oh(s){return s!=null&&typeof s=="object"}var Ynt="[object Symbol]";function RF(s){return typeof s=="symbol"||oh(s)&&I_(s)==Ynt}function MF(s,e){for(var t=-1,i=s==null?0:s.length,n=Array(i);++t<i;)n[t]=e(s[t],t,s);return n}var ji=Array.isArray,cde=td?td.prototype:void 0,dde=cde?cde.toString:void 0;function A0e(s){if(typeof s=="string")return s;if(ji(s))return MF(s,A0e)+"";if(RF(s))return dde?dde.call(s):"";var e=s+"";return e=="0"&&1/s==-1/0?"-0":e}var Xnt=/\s/;function Qnt(s){for(var e=s.length;e--&&Xnt.test(s.charAt(e)););return e}var Jnt=/^\s+/;function est(s){return s&&s.slice(0,Qnt(s)+1).replace(Jnt,"")}function id(s){var e=typeof s;return s!=null&&(e=="object"||e=="function")}var hde=NaN,tst=/^[-+]0x[0-9a-f]+$/i,ist=/^0b[01]+$/i,nst=/^0o[0-7]+$/i,sst=parseInt;function ost(s){if(typeof s=="number")return s;if(RF(s))return hde;if(id(s)){var e=typeof s.valueOf=="function"?s.valueOf():s;s=id(e)?e+"":e}if(typeof s!="string")return s===0?s:+s;s=est(s);var t=ist.test(s);return t||nst.test(s)?sst(s.slice(2),t?2:8):tst.test(s)?hde:+s}var ude=1/0,rst=17976931348623157e292;function ast(s){if(!s)return s===0?s:0;if(s=ost(s),s===ude||s===-ude){var e=s<0?-1:1;return e*rst}return s===s?s:0}function AF(s){var e=ast(s),t=e%1;return e===e?t?e-t:e:0}function NS(s){return s}var lst="[object AsyncFunction]",cst="[object Function]",dst="[object GeneratorFunction]",hst="[object Proxy]";function Qg(s){if(!id(s))return!1;var e=I_(s);return e==cst||e==dst||e==lst||e==hst}var VB=Mu["__core-js_shared__"],fde=(function(){var s=/[^.]+$/.exec(VB&&VB.keys&&VB.keys.IE_PROTO||"");return s?"Symbol(src)_1."+s:""})();function ust(s){return!!fde&&fde in s}var fst=Function.prototype,gst=fst.toString;function P0(s){if(s!=null){try{return gst.call(s)}catch{}try{return s+""}catch{}}return""}var pst=/[\\^$.*+?()[\]{}|]/g,mst=/^\[object .+?Constructor\]$/,_st=Function.prototype,bst=Object.prototype,vst=_st.toString,Cst=bst.hasOwnProperty,wst=RegExp("^"+vst.call(Cst).replace(pst,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function yst(s){if(!id(s)||ust(s))return!1;var e=Qg(s)?wst:mst;return e.test(P0(s))}function Sst(s,e){return s?.[e]}function F0(s,e){var t=Sst(s,e);return yst(t)?t:void 0}var fG=F0(Mu,"WeakMap"),gde=Object.create,xst=(function(){function s(){}return function(e){if(!id(e))return{};if(gde)return gde(e);s.prototype=e;var t=new s;return s.prototype=void 0,t}})();function Lst(s,e,t){switch(t.length){case 0:return s.call(e);case 1:return s.call(e,t[0]);case 2:return s.call(e,t[0],t[1]);case 3:return s.call(e,t[0],t[1],t[2])}return s.apply(e,t)}function Io(){}function kst(s,e){var t=-1,i=s.length;for(e||(e=Array(i));++t<i;)e[t]=s[t];return e}var Est=800,Ist=16,Dst=Date.now;function Tst(s){var e=0,t=0;return function(){var i=Dst(),n=Ist-(i-t);if(t=i,n>0){if(++e>=Est)return arguments[0]}else e=0;return s.apply(void 0,arguments)}}function Nst(s){return function(){return s}}var zP=(function(){try{var s=F0(Object,"defineProperty");return s({},"",{}),s}catch{}})(),Rst=zP?function(s,e){return zP(s,"toString",{configurable:!0,enumerable:!1,value:Nst(e),writable:!0})}:NS,Mst=Tst(Rst);function O0e(s,e){for(var t=-1,i=s==null?0:s.length;++t<i&&e(s[t],t,s)!==!1;);return s}function P0e(s,e,t,i){for(var n=s.length,o=t+-1;++o<n;)if(e(s[o],o,s))return o;return-1}function Ast(s){return s!==s}function Ost(s,e,t){for(var i=t-1,n=s.length;++i<n;)if(s[i]===e)return i;return-1}function TX(s,e,t){return e===e?Ost(s,e,t):P0e(s,Ast,t)}function F0e(s,e){var t=s==null?0:s.length;return!!t&&TX(s,e,0)>-1}var Pst=9007199254740991,Fst=/^(?:0|[1-9]\d*)$/;function OF(s,e){var t=typeof s;return e=e??Pst,!!e&&(t=="number"||t!="symbol"&&Fst.test(s))&&s>-1&&s%1==0&&s<e}function NX(s,e,t){e=="__proto__"&&zP?zP(s,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):s[e]=t}function CD(s,e){return s===e||s!==s&&e!==e}var Bst=Object.prototype,Hst=Bst.hasOwnProperty;function PF(s,e,t){var i=s[e];(!(Hst.call(s,e)&&CD(i,t))||t===void 0&&!(e in s))&&NX(s,e,t)}function RX(s,e,t,i){var n=!t;t||(t={});for(var o=-1,r=e.length;++o<r;){var a=e[o],l=void 0;l===void 0&&(l=s[a]),n?NX(t,a,l):PF(t,a,l)}return t}var pde=Math.max;function Wst(s,e,t){return e=pde(e===void 0?s.length-1:e,0),function(){for(var i=arguments,n=-1,o=pde(i.length-e,0),r=Array(o);++n<o;)r[n]=i[e+n];n=-1;for(var a=Array(e+1);++n<e;)a[n]=i[n];return a[e]=t(r),Lst(s,this,a)}}function MX(s,e){return Mst(Wst(s,e,NS),s+"")}var Vst=9007199254740991;function AX(s){return typeof s=="number"&&s>-1&&s%1==0&&s<=Vst}function Au(s){return s!=null&&AX(s.length)&&!Qg(s)}function B0e(s,e,t){if(!id(t))return!1;var i=typeof e;return(i=="number"?Au(t)&&OF(e,t.length):i=="string"&&e in t)?CD(t[e],s):!1}function zst(s){return MX(function(e,t){var i=-1,n=t.length,o=n>1?t[n-1]:void 0,r=n>2?t[2]:void 0;for(o=s.length>3&&typeof o=="function"?(n--,o):void 0,r&&B0e(t[0],t[1],r)&&(o=n<3?void 0:o,n=1),e=Object(e);++i<n;){var a=t[i];a&&s(e,a,i,o)}return e})}var Ust=Object.prototype;function wD(s){var e=s&&s.constructor,t=typeof e=="function"&&e.prototype||Ust;return s===t}function $st(s,e){for(var t=-1,i=Array(s);++t<s;)i[t]=e(t);return i}var jst="[object Arguments]";function mde(s){return oh(s)&&I_(s)==jst}var H0e=Object.prototype,qst=H0e.hasOwnProperty,Gst=H0e.propertyIsEnumerable,FF=mde((function(){return arguments})())?mde:function(s){return oh(s)&&qst.call(s,"callee")&&!Gst.call(s,"callee")};function Kst(){return!1}var W0e=typeof exports=="object"&&exports&&!exports.nodeType&&exports,_de=W0e&&typeof module=="object"&&module&&!module.nodeType&&module,Zst=_de&&_de.exports===W0e,bde=Zst?Mu.Buffer:void 0,Yst=bde?bde.isBuffer:void 0,kI=Yst||Kst,Xst="[object Arguments]",Qst="[object Array]",Jst="[object Boolean]",eot="[object Date]",tot="[object Error]",iot="[object Function]",not="[object Map]",sot="[object Number]",oot="[object Object]",rot="[object RegExp]",aot="[object Set]",lot="[object String]",cot="[object WeakMap]",dot="[object ArrayBuffer]",hot="[object DataView]",uot="[object Float32Array]",fot="[object Float64Array]",got="[object Int8Array]",pot="[object Int16Array]",mot="[object Int32Array]",_ot="[object Uint8Array]",bot="[object Uint8ClampedArray]",vot="[object Uint16Array]",Cot="[object Uint32Array]",is={};is[uot]=is[fot]=is[got]=is[pot]=is[mot]=is[_ot]=is[bot]=is[vot]=is[Cot]=!0;is[Xst]=is[Qst]=is[dot]=is[Jst]=is[hot]=is[eot]=is[tot]=is[iot]=is[not]=is[sot]=is[oot]=is[rot]=is[aot]=is[lot]=is[cot]=!1;function wot(s){return oh(s)&&AX(s.length)&&!!is[I_(s)]}function BF(s){return function(e){return s(e)}}var V0e=typeof exports=="object"&&exports&&!exports.nodeType&&exports,h2=V0e&&typeof module=="object"&&module&&!module.nodeType&&module,yot=h2&&h2.exports===V0e,zB=yot&&R0e.process,f_=(function(){try{var s=h2&&h2.require&&h2.require("util").types;return s||zB&&zB.binding&&zB.binding("util")}catch{}})(),vde=f_&&f_.isTypedArray,OX=vde?BF(vde):wot,Sot=Object.prototype,xot=Sot.hasOwnProperty;function z0e(s,e){var t=ji(s),i=!t&&FF(s),n=!t&&!i&&kI(s),o=!t&&!i&&!n&&OX(s),r=t||i||n||o,a=r?$st(s.length,String):[],l=a.length;for(var c in s)(e||xot.call(s,c))&&!(r&&(c=="length"||n&&(c=="offset"||c=="parent")||o&&(c=="buffer"||c=="byteLength"||c=="byteOffset")||OF(c,l)))&&a.push(c);return a}function U0e(s,e){return function(t){return s(e(t))}}var Lot=U0e(Object.keys,Object),kot=Object.prototype,Eot=kot.hasOwnProperty;function $0e(s){if(!wD(s))return Lot(s);var e=[];for(var t in Object(s))Eot.call(s,t)&&t!="constructor"&&e.push(t);return e}function nd(s){return Au(s)?z0e(s):$0e(s)}var Iot=Object.prototype,Dot=Iot.hasOwnProperty,cc=zst(function(s,e){if(wD(e)||Au(e)){RX(e,nd(e),s);return}for(var t in e)Dot.call(e,t)&&PF(s,t,e[t])});function Tot(s){var e=[];if(s!=null)for(var t in Object(s))e.push(t);return e}var Not=Object.prototype,Rot=Not.hasOwnProperty;function Mot(s){if(!id(s))return Tot(s);var e=wD(s),t=[];for(var i in s)i=="constructor"&&(e||!Rot.call(s,i))||t.push(i);return t}function j0e(s){return Au(s)?z0e(s,!0):Mot(s)}var Aot=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Oot=/^\w*$/;function PX(s,e){if(ji(s))return!1;var t=typeof s;return t=="number"||t=="symbol"||t=="boolean"||s==null||RF(s)?!0:Oot.test(s)||!Aot.test(s)||e!=null&&s in Object(e)}var EI=F0(Object,"create");function Pot(){this.__data__=EI?EI(null):{},this.size=0}function Fot(s){var e=this.has(s)&&delete this.__data__[s];return this.size-=e?1:0,e}var Bot="__lodash_hash_undefined__",Hot=Object.prototype,Wot=Hot.hasOwnProperty;function Vot(s){var e=this.__data__;if(EI){var t=e[s];return t===Bot?void 0:t}return Wot.call(e,s)?e[s]:void 0}var zot=Object.prototype,Uot=zot.hasOwnProperty;function $ot(s){var e=this.__data__;return EI?e[s]!==void 0:Uot.call(e,s)}var jot="__lodash_hash_undefined__";function qot(s,e){var t=this.__data__;return this.size+=this.has(s)?0:1,t[s]=EI&&e===void 0?jot:e,this}function h0(s){var e=-1,t=s==null?0:s.length;for(this.clear();++e<t;){var i=s[e];this.set(i[0],i[1])}}h0.prototype.clear=Pot;h0.prototype.delete=Fot;h0.prototype.get=Vot;h0.prototype.has=$ot;h0.prototype.set=qot;function Got(){this.__data__=[],this.size=0}function HF(s,e){for(var t=s.length;t--;)if(CD(s[t][0],e))return t;return-1}var Kot=Array.prototype,Zot=Kot.splice;function Yot(s){var e=this.__data__,t=HF(e,s);if(t<0)return!1;var i=e.length-1;return t==i?e.pop():Zot.call(e,t,1),--this.size,!0}function Xot(s){var e=this.__data__,t=HF(e,s);return t<0?void 0:e[t][1]}function Qot(s){return HF(this.__data__,s)>-1}function Jot(s,e){var t=this.__data__,i=HF(t,s);return i<0?(++this.size,t.push([s,e])):t[i][1]=e,this}function Jg(s){var e=-1,t=s==null?0:s.length;for(this.clear();++e<t;){var i=s[e];this.set(i[0],i[1])}}Jg.prototype.clear=Got;Jg.prototype.delete=Yot;Jg.prototype.get=Xot;Jg.prototype.has=Qot;Jg.prototype.set=Jot;var II=F0(Mu,"Map");function ert(){this.size=0,this.__data__={hash:new h0,map:new(II||Jg),string:new h0}}function trt(s){var e=typeof s;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?s!=="__proto__":s===null}function WF(s,e){var t=s.__data__;return trt(e)?t[typeof e=="string"?"string":"hash"]:t.map}function irt(s){var e=WF(this,s).delete(s);return this.size-=e?1:0,e}function nrt(s){return WF(this,s).get(s)}function srt(s){return WF(this,s).has(s)}function ort(s,e){var t=WF(this,s),i=t.size;return t.set(s,e),this.size+=t.size==i?0:1,this}function ep(s){var e=-1,t=s==null?0:s.length;for(this.clear();++e<t;){var i=s[e];this.set(i[0],i[1])}}ep.prototype.clear=ert;ep.prototype.delete=irt;ep.prototype.get=nrt;ep.prototype.has=srt;ep.prototype.set=ort;var rrt="Expected a function";function FX(s,e){if(typeof s!="function"||e!=null&&typeof e!="function")throw new TypeError(rrt);var t=function(){var i=arguments,n=e?e.apply(this,i):i[0],o=t.cache;if(o.has(n))return o.get(n);var r=s.apply(this,i);return t.cache=o.set(n,r)||o,r};return t.cache=new(FX.Cache||ep),t}FX.Cache=ep;var art=500;function lrt(s){var e=FX(s,function(i){return t.size===art&&t.clear(),i}),t=e.cache;return e}var crt=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,drt=/\\(\\)?/g,hrt=lrt(function(s){var e=[];return s.charCodeAt(0)===46&&e.push(""),s.replace(crt,function(t,i,n,o){e.push(n?o.replace(drt,"$1"):i||t)}),e});function urt(s){return s==null?"":A0e(s)}function VF(s,e){return ji(s)?s:PX(s,e)?[s]:hrt(urt(s))}function yD(s){if(typeof s=="string"||RF(s))return s;var e=s+"";return e=="0"&&1/s==-1/0?"-0":e}function BX(s,e){e=VF(e,s);for(var t=0,i=e.length;s!=null&&t<i;)s=s[yD(e[t++])];return t&&t==i?s:void 0}function frt(s,e,t){var i=s==null?void 0:BX(s,e);return i===void 0?t:i}function HX(s,e){for(var t=-1,i=e.length,n=s.length;++t<i;)s[n+t]=e[t];return s}var Cde=td?td.isConcatSpreadable:void 0;function grt(s){return ji(s)||FF(s)||!!(Cde&&s&&s[Cde])}function WX(s,e,t,i,n){var o=-1,r=s.length;for(t||(t=grt),n||(n=[]);++o<r;){var a=s[o];t(a)?HX(n,a):i||(n[n.length]=a)}return n}function qd(s){var e=s==null?0:s.length;return e?WX(s):[]}var q0e=U0e(Object.getPrototypeOf,Object);function G0e(s,e,t){var i=-1,n=s.length;e<0&&(e=-e>n?0:n+e),t=t>n?n:t,t<0&&(t+=n),n=e>t?0:t-e>>>0,e>>>=0;for(var o=Array(n);++i<n;)o[i]=s[i+e];return o}function prt(s,e,t,i){var n=-1,o=s==null?0:s.length;for(i&&o&&(t=s[++n]);++n<o;)t=e(t,s[n],n,s);return t}function mrt(){this.__data__=new Jg,this.size=0}function _rt(s){var e=this.__data__,t=e.delete(s);return this.size=e.size,t}function brt(s){return this.__data__.get(s)}function vrt(s){return this.__data__.has(s)}var Crt=200;function wrt(s,e){var t=this.__data__;if(t instanceof Jg){var i=t.__data__;if(!II||i.length<Crt-1)return i.push([s,e]),this.size=++t.size,this;t=this.__data__=new ep(i)}return t.set(s,e),this.size=t.size,this}function fu(s){var e=this.__data__=new Jg(s);this.size=e.size}fu.prototype.clear=mrt;fu.prototype.delete=_rt;fu.prototype.get=brt;fu.prototype.has=vrt;fu.prototype.set=wrt;function yrt(s,e){return s&&RX(e,nd(e),s)}var K0e=typeof exports=="object"&&exports&&!exports.nodeType&&exports,wde=K0e&&typeof module=="object"&&module&&!module.nodeType&&module,Srt=wde&&wde.exports===K0e,yde=Srt?Mu.Buffer:void 0,Sde=yde?yde.allocUnsafe:void 0;function xrt(s,e){var t=s.length,i=Sde?Sde(t):new s.constructor(t);return s.copy(i),i}function VX(s,e){for(var t=-1,i=s==null?0:s.length,n=0,o=[];++t<i;){var r=s[t];e(r,t,s)&&(o[n++]=r)}return o}function Z0e(){return[]}var Lrt=Object.prototype,krt=Lrt.propertyIsEnumerable,xde=Object.getOwnPropertySymbols,zX=xde?function(s){return s==null?[]:(s=Object(s),VX(xde(s),function(e){return krt.call(s,e)}))}:Z0e;function Ert(s,e){return RX(s,zX(s),e)}var Irt=Object.getOwnPropertySymbols,Drt=Irt?function(s){for(var e=[];s;)HX(e,zX(s)),s=q0e(s);return e}:Z0e;function Y0e(s,e,t){var i=e(s);return ji(s)?i:HX(i,t(s))}function gG(s){return Y0e(s,nd,zX)}function Trt(s){return Y0e(s,j0e,Drt)}var pG=F0(Mu,"DataView"),mG=F0(Mu,"Promise"),Dy=F0(Mu,"Set"),Lde="[object Map]",Nrt="[object Object]",kde="[object Promise]",Ede="[object Set]",Ide="[object WeakMap]",Dde="[object DataView]",Rrt=P0(pG),Mrt=P0(II),Art=P0(mG),Ort=P0(Dy),Prt=P0(fG),Uc=I_;(pG&&Uc(new pG(new ArrayBuffer(1)))!=Dde||II&&Uc(new II)!=Lde||mG&&Uc(mG.resolve())!=kde||Dy&&Uc(new Dy)!=Ede||fG&&Uc(new fG)!=Ide)&&(Uc=function(s){var e=I_(s),t=e==Nrt?s.constructor:void 0,i=t?P0(t):"";if(i)switch(i){case Rrt:return Dde;case Mrt:return Lde;case Art:return kde;case Ort:return Ede;case Prt:return Ide}return e});var Frt=Object.prototype,Brt=Frt.hasOwnProperty;function Hrt(s){var e=s.length,t=new s.constructor(e);return e&&typeof s[0]=="string"&&Brt.call(s,"index")&&(t.index=s.index,t.input=s.input),t}var UP=Mu.Uint8Array;function Wrt(s){var e=new s.constructor(s.byteLength);return new UP(e).set(new UP(s)),e}function Vrt(s,e){var t=s.buffer;return new s.constructor(t,s.byteOffset,s.byteLength)}var zrt=/\w*$/;function Urt(s){var e=new s.constructor(s.source,zrt.exec(s));return e.lastIndex=s.lastIndex,e}var Tde=td?td.prototype:void 0,Nde=Tde?Tde.valueOf:void 0;function $rt(s){return Nde?Object(Nde.call(s)):{}}function jrt(s,e){var t=s.buffer;return new s.constructor(t,s.byteOffset,s.length)}var qrt="[object Boolean]",Grt="[object Date]",Krt="[object Map]",Zrt="[object Number]",Yrt="[object RegExp]",Xrt="[object Set]",Qrt="[object String]",Jrt="[object Symbol]",eat="[object ArrayBuffer]",tat="[object DataView]",iat="[object Float32Array]",nat="[object Float64Array]",sat="[object Int8Array]",oat="[object Int16Array]",rat="[object Int32Array]",aat="[object Uint8Array]",lat="[object Uint8ClampedArray]",cat="[object Uint16Array]",dat="[object Uint32Array]";function hat(s,e,t){var i=s.constructor;switch(e){case eat:return Wrt(s);case qrt:case Grt:return new i(+s);case tat:return Vrt(s);case iat:case nat:case sat:case oat:case rat:case aat:case lat:case cat:case dat:return jrt(s);case Krt:return new i;case Zrt:case Qrt:return new i(s);case Yrt:return Urt(s);case Xrt:return new i;case Jrt:return $rt(s)}}function uat(s){return typeof s.constructor=="function"&&!wD(s)?xst(q0e(s)):{}}var fat="[object Map]";function gat(s){return oh(s)&&Uc(s)==fat}var Rde=f_&&f_.isMap,pat=Rde?BF(Rde):gat,mat="[object Set]";function _at(s){return oh(s)&&Uc(s)==mat}var Mde=f_&&f_.isSet,bat=Mde?BF(Mde):_at,X0e="[object Arguments]",vat="[object Array]",Cat="[object Boolean]",wat="[object Date]",yat="[object Error]",Q0e="[object Function]",Sat="[object GeneratorFunction]",xat="[object Map]",Lat="[object Number]",J0e="[object Object]",kat="[object RegExp]",Eat="[object Set]",Iat="[object String]",Dat="[object Symbol]",Tat="[object WeakMap]",Nat="[object ArrayBuffer]",Rat="[object DataView]",Mat="[object Float32Array]",Aat="[object Float64Array]",Oat="[object Int8Array]",Pat="[object Int16Array]",Fat="[object Int32Array]",Bat="[object Uint8Array]",Hat="[object Uint8ClampedArray]",Wat="[object Uint16Array]",Vat="[object Uint32Array]",Kn={};Kn[X0e]=Kn[vat]=Kn[Nat]=Kn[Rat]=Kn[Cat]=Kn[wat]=Kn[Mat]=Kn[Aat]=Kn[Oat]=Kn[Pat]=Kn[Fat]=Kn[xat]=Kn[Lat]=Kn[J0e]=Kn[kat]=Kn[Eat]=Kn[Iat]=Kn[Dat]=Kn[Bat]=Kn[Hat]=Kn[Wat]=Kn[Vat]=!0;Kn[yat]=Kn[Q0e]=Kn[Tat]=!1;function mM(s,e,t,i,n,o){var r;if(r!==void 0)return r;if(!id(s))return s;var a=ji(s);if(a)return r=Hrt(s),kst(s,r);var l=Uc(s),c=l==Q0e||l==Sat;if(kI(s))return xrt(s);if(l==J0e||l==X0e||c&&!n)return r=c?{}:uat(s),Ert(s,yrt(r,s));if(!Kn[l])return n?s:{};r=hat(s,l),o||(o=new fu);var d=o.get(s);if(d)return d;o.set(s,r),bat(s)?s.forEach(function(p){r.add(mM(p,e,t,p,s,o))}):pat(s)&&s.forEach(function(p,m){r.set(m,mM(p,e,t,m,s,o))});var h=gG,f=a?void 0:h(s);return O0e(f||s,function(p,m){f&&(m=p,p=s[m]),PF(r,m,mM(p,e,t,m,s,o))}),r}var zat=4;function Tr(s){return mM(s,zat)}function SD(s){for(var e=-1,t=s==null?0:s.length,i=0,n=[];++e<t;){var o=s[e];o&&(n[i++]=o)}return n}var Uat="__lodash_hash_undefined__";function $at(s){return this.__data__.set(s,Uat),this}function jat(s){return this.__data__.has(s)}function RS(s){var e=-1,t=s==null?0:s.length;for(this.__data__=new ep;++e<t;)this.add(s[e])}RS.prototype.add=RS.prototype.push=$at;RS.prototype.has=jat;function eCe(s,e){for(var t=-1,i=s==null?0:s.length;++t<i;)if(e(s[t],t,s))return!0;return!1}function UX(s,e){return s.has(e)}var qat=1,Gat=2;function tCe(s,e,t,i,n,o){var r=t&qat,a=s.length,l=e.length;if(a!=l&&!(r&&l>a))return!1;var c=o.get(s),d=o.get(e);if(c&&d)return c==e&&d==s;var h=-1,f=!0,p=t&Gat?new RS:void 0;for(o.set(s,e),o.set(e,s);++h<a;){var m=s[h],b=e[h];if(i)var C=r?i(b,m,h,e,s,o):i(m,b,h,s,e,o);if(C!==void 0){if(C)continue;f=!1;break}if(p){if(!eCe(e,function(y,S){if(!UX(p,S)&&(m===y||n(m,y,t,i,o)))return p.push(S)})){f=!1;break}}else if(!(m===b||n(m,b,t,i,o))){f=!1;break}}return o.delete(s),o.delete(e),f}function Kat(s){var e=-1,t=Array(s.size);return s.forEach(function(i,n){t[++e]=[n,i]}),t}function $X(s){var e=-1,t=Array(s.size);return s.forEach(function(i){t[++e]=i}),t}var Zat=1,Yat=2,Xat="[object Boolean]",Qat="[object Date]",Jat="[object Error]",elt="[object Map]",tlt="[object Number]",ilt="[object RegExp]",nlt="[object Set]",slt="[object String]",olt="[object Symbol]",rlt="[object ArrayBuffer]",alt="[object DataView]",Ade=td?td.prototype:void 0,UB=Ade?Ade.valueOf:void 0;function llt(s,e,t,i,n,o,r){switch(t){case alt:if(s.byteLength!=e.byteLength||s.byteOffset!=e.byteOffset)return!1;s=s.buffer,e=e.buffer;case rlt:return!(s.byteLength!=e.byteLength||!o(new UP(s),new UP(e)));case Xat:case Qat:case tlt:return CD(+s,+e);case Jat:return s.name==e.name&&s.message==e.message;case ilt:case slt:return s==e+"";case elt:var a=Kat;case nlt:var l=i&Zat;if(a||(a=$X),s.size!=e.size&&!l)return!1;var c=r.get(s);if(c)return c==e;i|=Yat,r.set(s,e);var d=tCe(a(s),a(e),i,n,o,r);return r.delete(s),d;case olt:if(UB)return UB.call(s)==UB.call(e)}return!1}var clt=1,dlt=Object.prototype,hlt=dlt.hasOwnProperty;function ult(s,e,t,i,n,o){var r=t&clt,a=gG(s),l=a.length,c=gG(e),d=c.length;if(l!=d&&!r)return!1;for(var h=l;h--;){var f=a[h];if(!(r?f in e:hlt.call(e,f)))return!1}var p=o.get(s),m=o.get(e);if(p&&m)return p==e&&m==s;var b=!0;o.set(s,e),o.set(e,s);for(var C=r;++h<l;){f=a[h];var y=s[f],S=e[f];if(i)var L=r?i(S,y,f,e,s,o):i(y,S,f,s,e,o);if(!(L===void 0?y===S||n(y,S,t,i,o):L)){b=!1;break}C||(C=f=="constructor")}if(b&&!C){var x=s.constructor,E=e.constructor;x!=E&&"constructor"in s&&"constructor"in e&&!(typeof x=="function"&&x instanceof x&&typeof E=="function"&&E instanceof E)&&(b=!1)}return o.delete(s),o.delete(e),b}var flt=1,Ode="[object Arguments]",Pde="[object Array]",wR="[object Object]",glt=Object.prototype,Fde=glt.hasOwnProperty;function plt(s,e,t,i,n,o){var r=ji(s),a=ji(e),l=r?Pde:Uc(s),c=a?Pde:Uc(e);l=l==Ode?wR:l,c=c==Ode?wR:c;var d=l==wR,h=c==wR,f=l==c;if(f&&kI(s)){if(!kI(e))return!1;r=!0,d=!1}if(f&&!d)return o||(o=new fu),r||OX(s)?tCe(s,e,t,i,n,o):llt(s,e,l,t,i,n,o);if(!(t&flt)){var p=d&&Fde.call(s,"__wrapped__"),m=h&&Fde.call(e,"__wrapped__");if(p||m){var b=p?s.value():s,C=m?e.value():e;return o||(o=new fu),n(b,C,t,i,o)}}return f?(o||(o=new fu),ult(s,e,t,i,n,o)):!1}function jX(s,e,t,i,n){return s===e?!0:s==null||e==null||!oh(s)&&!oh(e)?s!==s&&e!==e:plt(s,e,t,i,jX,n)}var mlt=1,_lt=2;function blt(s,e,t,i){var n=t.length,o=n;if(s==null)return!o;for(s=Object(s);n--;){var r=t[n];if(r[2]?r[1]!==s[r[0]]:!(r[0]in s))return!1}for(;++n<o;){r=t[n];var a=r[0],l=s[a],c=r[1];if(r[2]){if(l===void 0&&!(a in s))return!1}else{var d=new fu,h;if(!(h===void 0?jX(c,l,mlt|_lt,i,d):h))return!1}}return!0}function iCe(s){return s===s&&!id(s)}function vlt(s){for(var e=nd(s),t=e.length;t--;){var i=e[t],n=s[i];e[t]=[i,n,iCe(n)]}return e}function nCe(s,e){return function(t){return t==null?!1:t[s]===e&&(e!==void 0||s in Object(t))}}function Clt(s){var e=vlt(s);return e.length==1&&e[0][2]?nCe(e[0][0],e[0][1]):function(t){return t===s||blt(t,s,e)}}function wlt(s,e){return s!=null&&e in Object(s)}function sCe(s,e,t){e=VF(e,s);for(var i=-1,n=e.length,o=!1;++i<n;){var r=yD(e[i]);if(!(o=s!=null&&t(s,r)))break;s=s[r]}return o||++i!=n?o:(n=s==null?0:s.length,!!n&&AX(n)&&OF(r,n)&&(ji(s)||FF(s)))}function ylt(s,e){return s!=null&&sCe(s,e,wlt)}var Slt=1,xlt=2;function Llt(s,e){return PX(s)&&iCe(e)?nCe(yD(s),e):function(t){var i=frt(t,s);return i===void 0&&i===e?ylt(t,s):jX(e,i,Slt|xlt)}}function klt(s){return function(e){return e?.[s]}}function Elt(s){return function(e){return BX(e,s)}}function Ilt(s){return PX(s)?klt(yD(s)):Elt(s)}function Ou(s){return typeof s=="function"?s:s==null?NS:typeof s=="object"?ji(s)?Llt(s[0],s[1]):Clt(s):Ilt(s)}function Dlt(s,e,t,i){for(var n=-1,o=s==null?0:s.length;++n<o;){var r=s[n];e(i,r,t(r),s)}return i}function Tlt(s){return function(e,t,i){for(var n=-1,o=Object(e),r=i(e),a=r.length;a--;){var l=r[++n];if(t(o[l],l,o)===!1)break}return e}}var Nlt=Tlt();function Rlt(s,e){return s&&Nlt(s,e,nd)}function Mlt(s,e){return function(t,i){if(t==null)return t;if(!Au(t))return s(t,i);for(var n=t.length,o=-1,r=Object(t);++o<n&&i(r[o],o,r)!==!1;);return t}}var B0=Mlt(Rlt);function Alt(s,e,t,i){return B0(s,function(n,o,r){e(i,n,t(n),r)}),i}function Olt(s,e){return function(t,i){var n=ji(t)?Dlt:Alt,o=e?e():{};return n(t,s,Ou(i),o)}}var oCe=Object.prototype,Plt=oCe.hasOwnProperty,qX=MX(function(s,e){s=Object(s);var t=-1,i=e.length,n=i>2?e[2]:void 0;for(n&&B0e(e[0],e[1],n)&&(i=1);++t<i;)for(var o=e[t],r=j0e(o),a=-1,l=r.length;++a<l;){var c=r[a],d=s[c];(d===void 0||CD(d,oCe[c])&&!Plt.call(s,c))&&(s[c]=o[c])}return s});function Bde(s){return oh(s)&&Au(s)}var Flt=200;function Blt(s,e,t,i){var n=-1,o=F0e,r=!0,a=s.length,l=[],c=e.length;if(!a)return l;e.length>=Flt&&(o=UX,r=!1,e=new RS(e));e:for(;++n<a;){var d=s[n],h=d;if(d=d!==0?d:0,r&&h===h){for(var f=c;f--;)if(e[f]===h)continue e;l.push(d)}else o(e,h,i)||l.push(d)}return l}var zF=MX(function(s,e){return Bde(s)?Blt(s,WX(e,1,Bde,!0)):[]});function u0(s){var e=s==null?0:s.length;return e?s[e-1]:void 0}function _r(s,e,t){var i=s==null?0:s.length;return i?(e=e===void 0?1:AF(e),G0e(s,e<0?0:e,i)):[]}function DI(s,e,t){var i=s==null?0:s.length;return i?(e=e===void 0?1:AF(e),e=i-e,G0e(s,0,e<0?0:e)):[]}function Hlt(s){return typeof s=="function"?s:NS}function Vt(s,e){var t=ji(s)?O0e:B0;return t(s,Hlt(e))}function Wlt(s,e){for(var t=-1,i=s==null?0:s.length;++t<i;)if(!e(s[t],t,s))return!1;return!0}function Vlt(s,e){var t=!0;return B0(s,function(i,n,o){return t=!!e(i,n,o),t}),t}function Gd(s,e,t){var i=ji(s)?Wlt:Vlt;return i(s,Ou(e))}function rCe(s,e){var t=[];return B0(s,function(i,n,o){e(i,n,o)&&t.push(i)}),t}function ld(s,e){var t=ji(s)?VX:rCe;return t(s,Ou(e))}function zlt(s){return function(e,t,i){var n=Object(e);if(!Au(e)){var o=Ou(t);e=nd(e),t=function(a){return o(n[a],a,n)}}var r=s(e,t,i);return r>-1?n[o?e[r]:r]:void 0}}var Ult=Math.max;function $lt(s,e,t){var i=s==null?0:s.length;if(!i)return-1;var n=t==null?0:AF(t);return n<0&&(n=Ult(i+n,0)),P0e(s,Ou(e),n)}var MS=zlt($lt);function rh(s){return s&&s.length?s[0]:void 0}function jlt(s,e){var t=-1,i=Au(s)?Array(s.length):[];return B0(s,function(n,o,r){i[++t]=e(n,o,r)}),i}function Lt(s,e){var t=ji(s)?MF:jlt;return t(s,Ou(e))}function Yc(s,e){return WX(Lt(s,e))}var qlt=Object.prototype,Glt=qlt.hasOwnProperty,Klt=Olt(function(s,e,t){Glt.call(s,t)?s[t].push(e):NX(s,t,[e])}),Zlt=Object.prototype,Ylt=Zlt.hasOwnProperty;function Xlt(s,e){return s!=null&&Ylt.call(s,e)}function Pt(s,e){return s!=null&&sCe(s,e,Xlt)}var Qlt="[object String]";function bl(s){return typeof s=="string"||!ji(s)&&oh(s)&&I_(s)==Qlt}function Jlt(s,e){return MF(e,function(t){return s[t]})}function No(s){return s==null?[]:Jlt(s,nd(s))}var ect=Math.max;function Aa(s,e,t,i){s=Au(s)?s:No(s),t=t?AF(t):0;var n=s.length;return t<0&&(t=ect(n+t,0)),bl(s)?t<=n&&s.indexOf(e,t)>-1:!!n&&TX(s,e,t)>-1}function Hde(s,e,t){var i=s==null?0:s.length;if(!i)return-1;var n=0;return TX(s,e,n)}var tct="[object Map]",ict="[object Set]",nct=Object.prototype,sct=nct.hasOwnProperty;function Xn(s){if(s==null)return!0;if(Au(s)&&(ji(s)||typeof s=="string"||typeof s.splice=="function"||kI(s)||OX(s)||FF(s)))return!s.length;var e=Uc(s);if(e==tct||e==ict)return!s.size;if(wD(s))return!$0e(s).length;for(var t in s)if(sct.call(s,t))return!1;return!0}var oct="[object RegExp]";function rct(s){return oh(s)&&I_(s)==oct}var Wde=f_&&f_.isRegExp,Wg=Wde?BF(Wde):rct;function Vg(s){return s===void 0}var act="Expected a function";function lct(s){if(typeof s!="function")throw new TypeError(act);return function(){var e=arguments;switch(e.length){case 0:return!s.call(this);case 1:return!s.call(this,e[0]);case 2:return!s.call(this,e[0],e[1]);case 3:return!s.call(this,e[0],e[1],e[2])}return!s.apply(this,e)}}function cct(s,e,t,i){if(!id(s))return s;e=VF(e,s);for(var n=-1,o=e.length,r=o-1,a=s;a!=null&&++n<o;){var l=yD(e[n]),c=t;if(l==="__proto__"||l==="constructor"||l==="prototype")return s;if(n!=r){var d=a[l];c=void 0,c===void 0&&(c=id(d)?d:OF(e[n+1])?[]:{})}PF(a,l,c),a=a[l]}return s}function dct(s,e,t){for(var i=-1,n=e.length,o={};++i<n;){var r=e[i],a=BX(s,r);t(a,r)&&cct(o,VF(r,s),a)}return o}function dh(s,e){if(s==null)return{};var t=MF(Trt(s),function(i){return[i]});return e=Ou(e),dct(s,t,function(i,n){return e(i,n[0])})}function hct(s,e,t,i,n){return n(s,function(o,r,a){t=i?(i=!1,o):e(t,o,r,a)}),t}function dc(s,e,t){var i=ji(s)?prt:hct,n=arguments.length<3;return i(s,Ou(e),t,n,B0)}function UF(s,e){var t=ji(s)?VX:rCe;return t(s,lct(Ou(e)))}function uct(s,e){var t;return B0(s,function(i,n,o){return t=e(i,n,o),!t}),!!t}function aCe(s,e,t){var i=ji(s)?eCe:uct;return i(s,Ou(e))}var fct=1/0,gct=Dy&&1/$X(new Dy([,-0]))[1]==fct?function(s){return new Dy(s)}:Io,pct=200;function mct(s,e,t){var i=-1,n=F0e,o=s.length,r=!0,a=[],l=a;if(o>=pct){var c=gct(s);if(c)return $X(c);r=!1,n=UX,l=new RS}else l=a;e:for(;++i<o;){var d=s[i],h=d;if(d=d!==0?d:0,r&&h===h){for(var f=l.length;f--;)if(l[f]===h)continue e;a.push(d)}else n(l,h,t)||(l!==a&&l.push(h),a.push(d))}return a}function GX(s){return s&&s.length?mct(s):[]}function _G(s){console&&console.error&&console.error(`Error: ${s}`)}function lCe(s){console&&console.warn&&console.warn(`Warning: ${s}`)}function cCe(s){const e=new Date().getTime(),t=s();return{time:new Date().getTime()-e,value:t}}function dCe(s){function e(){}e.prototype=s;const t=new e;function i(){return typeof t.bar}return i(),i(),s}function _ct(s){return bct(s)?s.LABEL:s.name}function bct(s){return bl(s.LABEL)&&s.LABEL!==""}class Pu{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){this._definition=e}accept(e){e.visit(this),Vt(this.definition,t=>{t.accept(e)})}}class hc extends Pu{constructor(e){super([]),this.idx=1,cc(this,dh(e,t=>t!==void 0))}set definition(e){}get definition(){return this.referencedRule!==void 0?this.referencedRule.definition:[]}accept(e){e.visit(this)}}class cx extends Pu{constructor(e){super(e.definition),this.orgText="",cc(this,dh(e,t=>t!==void 0))}}class vl extends Pu{constructor(e){super(e.definition),this.ignoreAmbiguities=!1,cc(this,dh(e,t=>t!==void 0))}}class gl extends Pu{constructor(e){super(e.definition),this.idx=1,cc(this,dh(e,t=>t!==void 0))}}class Fu extends Pu{constructor(e){super(e.definition),this.idx=1,cc(this,dh(e,t=>t!==void 0))}}class Bu extends Pu{constructor(e){super(e.definition),this.idx=1,cc(this,dh(e,t=>t!==void 0))}}class Fo extends Pu{constructor(e){super(e.definition),this.idx=1,cc(this,dh(e,t=>t!==void 0))}}class hh extends Pu{constructor(e){super(e.definition),this.idx=1,cc(this,dh(e,t=>t!==void 0))}}class uh extends Pu{get definition(){return this._definition}set definition(e){this._definition=e}constructor(e){super(e.definition),this.idx=1,this.ignoreAmbiguities=!1,this.hasPredicates=!1,cc(this,dh(e,t=>t!==void 0))}}class ks{constructor(e){this.idx=1,cc(this,dh(e,t=>t!==void 0))}accept(e){e.visit(this)}}function vct(s){return Lt(s,_M)}function _M(s){function e(t){return Lt(t,_M)}if(s instanceof hc){const t={type:"NonTerminal",name:s.nonTerminalName,idx:s.idx};return bl(s.label)&&(t.label=s.label),t}else{if(s instanceof vl)return{type:"Alternative",definition:e(s.definition)};if(s instanceof gl)return{type:"Option",idx:s.idx,definition:e(s.definition)};if(s instanceof Fu)return{type:"RepetitionMandatory",idx:s.idx,definition:e(s.definition)};if(s instanceof Bu)return{type:"RepetitionMandatoryWithSeparator",idx:s.idx,separator:_M(new ks({terminalType:s.separator})),definition:e(s.definition)};if(s instanceof hh)return{type:"RepetitionWithSeparator",idx:s.idx,separator:_M(new ks({terminalType:s.separator})),definition:e(s.definition)};if(s instanceof Fo)return{type:"Repetition",idx:s.idx,definition:e(s.definition)};if(s instanceof uh)return{type:"Alternation",idx:s.idx,definition:e(s.definition)};if(s instanceof ks){const t={type:"Terminal",name:s.terminalType.name,label:_ct(s.terminalType),idx:s.idx};bl(s.label)&&(t.terminalLabel=s.label);const i=s.terminalType.PATTERN;return s.terminalType.PATTERN&&(t.pattern=Wg(i)?i.source:i),t}else{if(s instanceof cx)return{type:"Rule",name:s.name,orgText:s.orgText,definition:e(s.definition)};throw Error("non exhaustive match")}}}class dx{visit(e){const t=e;switch(t.constructor){case hc:return this.visitNonTerminal(t);case vl:return this.visitAlternative(t);case gl:return this.visitOption(t);case Fu:return this.visitRepetitionMandatory(t);case Bu:return this.visitRepetitionMandatoryWithSeparator(t);case hh:return this.visitRepetitionWithSeparator(t);case Fo:return this.visitRepetition(t);case uh:return this.visitAlternation(t);case ks:return this.visitTerminal(t);case cx:return this.visitRule(t);default:throw Error("non exhaustive match")}}visitNonTerminal(e){}visitAlternative(e){}visitOption(e){}visitRepetition(e){}visitRepetitionMandatory(e){}visitRepetitionMandatoryWithSeparator(e){}visitRepetitionWithSeparator(e){}visitAlternation(e){}visitTerminal(e){}visitRule(e){}}function Cct(s){return s instanceof vl||s instanceof gl||s instanceof Fo||s instanceof Fu||s instanceof Bu||s instanceof hh||s instanceof ks||s instanceof cx}function $P(s,e=[]){return s instanceof gl||s instanceof Fo||s instanceof hh?!0:s instanceof uh?aCe(s.definition,i=>$P(i,e)):s instanceof hc&&Aa(e,s)?!1:s instanceof Pu?(s instanceof hc&&e.push(s),Gd(s.definition,i=>$P(i,e))):!1}function wct(s){return s instanceof uh}function Zh(s){if(s instanceof hc)return"SUBRULE";if(s instanceof gl)return"OPTION";if(s instanceof uh)return"OR";if(s instanceof Fu)return"AT_LEAST_ONE";if(s instanceof Bu)return"AT_LEAST_ONE_SEP";if(s instanceof hh)return"MANY_SEP";if(s instanceof Fo)return"MANY";if(s instanceof ks)return"CONSUME";throw Error("non exhaustive match")}class $F{walk(e,t=[]){Vt(e.definition,(i,n)=>{const o=_r(e.definition,n+1);if(i instanceof hc)this.walkProdRef(i,o,t);else if(i instanceof ks)this.walkTerminal(i,o,t);else if(i instanceof vl)this.walkFlat(i,o,t);else if(i instanceof gl)this.walkOption(i,o,t);else if(i instanceof Fu)this.walkAtLeastOne(i,o,t);else if(i instanceof Bu)this.walkAtLeastOneSep(i,o,t);else if(i instanceof hh)this.walkManySep(i,o,t);else if(i instanceof Fo)this.walkMany(i,o,t);else if(i instanceof uh)this.walkOr(i,o,t);else throw Error("non exhaustive match")})}walkTerminal(e,t,i){}walkProdRef(e,t,i){}walkFlat(e,t,i){const n=t.concat(i);this.walk(e,n)}walkOption(e,t,i){const n=t.concat(i);this.walk(e,n)}walkAtLeastOne(e,t,i){const n=[new gl({definition:e.definition})].concat(t,i);this.walk(e,n)}walkAtLeastOneSep(e,t,i){const n=Vde(e,t,i);this.walk(e,n)}walkMany(e,t,i){const n=[new gl({definition:e.definition})].concat(t,i);this.walk(e,n)}walkManySep(e,t,i){const n=Vde(e,t,i);this.walk(e,n)}walkOr(e,t,i){const n=t.concat(i);Vt(e.definition,o=>{const r=new vl({definition:[o]});this.walk(r,n)})}}function Vde(s,e,t){return[new gl({definition:[new ks({terminalType:s.separator})].concat(s.definition)})].concat(e,t)}function xD(s){if(s instanceof hc)return xD(s.referencedRule);if(s instanceof ks)return xct(s);if(Cct(s))return yct(s);if(wct(s))return Sct(s);throw Error("non exhaustive match")}function yct(s){let e=[];const t=s.definition;let i=0,n=t.length>i,o,r=!0;for(;n&&r;)o=t[i],r=$P(o),e=e.concat(xD(o)),i=i+1,n=t.length>i;return GX(e)}function Sct(s){const e=Lt(s.definition,t=>xD(t));return GX(qd(e))}function xct(s){return[s.terminalType]}const hCe="_~IN~_";class Lct extends $F{constructor(e){super(),this.topProd=e,this.follows={}}startWalking(){return this.walk(this.topProd),this.follows}walkTerminal(e,t,i){}walkProdRef(e,t,i){const n=Ect(e.referencedRule,e.idx)+this.topProd.name,o=t.concat(i),r=new vl({definition:o}),a=xD(r);this.follows[n]=a}}function kct(s){const e={};return Vt(s,t=>{const i=new Lct(t).startWalking();cc(e,i)}),e}function Ect(s,e){return s.name+e+hCe}function $t(s){return s.charCodeAt(0)}function $B(s,e){Array.isArray(s)?s.forEach(function(t){e.push(t)}):e.push(s)}function UL(s,e){if(s[e]===!0)throw"duplicate flag "+e;s[e],s[e]=!0}function tw(s){if(s===void 0)throw Error("Internal Error - Should never get here!");return!0}function Ict(){throw Error("Internal Error - Should never get here!")}function zde(s){return s.type==="Character"}const jP=[];for(let s=$t("0");s<=$t("9");s++)jP.push(s);const qP=[$t("_")].concat(jP);for(let s=$t("a");s<=$t("z");s++)qP.push(s);for(let s=$t("A");s<=$t("Z");s++)qP.push(s);const Ude=[$t(" "),$t("\f"),$t(`
915
915
  `),$t("\r"),$t(" "),$t("\v"),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t(" "),$t("\u2028"),$t("\u2029"),$t(" "),$t(" "),$t(" "),$t("\uFEFF")],Dct=/[0-9a-fA-F]/,yR=/[0-9]/,Tct=/[1-9]/;class Nct{constructor(){this.idx=0,this.input="",this.groupIdx=0}saveState(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}}restoreState(e){this.idx=e.idx,this.input=e.input,this.groupIdx=e.groupIdx}pattern(e){this.idx=0,this.input=e,this.groupIdx=0,this.consumeChar("/");const t=this.disjunction();this.consumeChar("/");const i={type:"Flags",loc:{begin:this.idx,end:e.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};for(;this.isRegExpFlag();)switch(this.popChar()){case"g":UL(i,"global");break;case"i":UL(i,"ignoreCase");break;case"m":UL(i,"multiLine");break;case"u":UL(i,"unicode");break;case"y":UL(i,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:i,value:t,loc:this.loc(0)}}disjunction(){const e=[],t=this.idx;for(e.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),e.push(this.alternative());return{type:"Disjunction",value:e,loc:this.loc(t)}}alternative(){const e=[],t=this.idx;for(;this.isTerm();)e.push(this.term());return{type:"Alternative",value:e,loc:this.loc(t)}}term(){return this.isAssertion()?this.assertion():this.atom()}assertion(){const e=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(e)};case"$":return{type:"EndAnchor",loc:this.loc(e)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(e)};case"B":return{type:"NonWordBoundary",loc:this.loc(e)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");let t;switch(this.popChar()){case"=":t="Lookahead";break;case"!":t="NegativeLookahead";break;case"<":{switch(this.popChar()){case"=":t="Lookbehind";break;case"!":t="NegativeLookbehind"}break}}tw(t);const i=this.disjunction();return this.consumeChar(")"),{type:t,value:i,loc:this.loc(e)}}return Ict()}quantifier(e=!1){let t;const i=this.idx;switch(this.popChar()){case"*":t={atLeast:0,atMost:1/0};break;case"+":t={atLeast:1,atMost:1/0};break;case"?":t={atLeast:0,atMost:1};break;case"{":const n=this.integerIncludingZero();switch(this.popChar()){case"}":t={atLeast:n,atMost:n};break;case",":let o;this.isDigit()?(o=this.integerIncludingZero(),t={atLeast:n,atMost:o}):t={atLeast:n,atMost:1/0},this.consumeChar("}");break}if(e===!0&&t===void 0)return;tw(t);break}if(!(e===!0&&t===void 0)&&tw(t))return this.peekChar(0)==="?"?(this.consumeChar("?"),t.greedy=!1):t.greedy=!0,t.type="Quantifier",t.loc=this.loc(i),t}atom(){let e;const t=this.idx;switch(this.peekChar()){case".":e=this.dotAll();break;case"\\":e=this.atomEscape();break;case"[":e=this.characterClass();break;case"(":e=this.group();break}if(e===void 0&&this.isPatternCharacter()&&(e=this.patternCharacter()),tw(e))return e.loc=this.loc(t),this.isQuantifier()&&(e.quantifier=this.quantifier()),e}dotAll(){return this.consumeChar("."),{type:"Set",complement:!0,value:[$t(`
@@ -1061,10 +1061,10 @@ ${e.errors.map(n=>n.message).join(`
1061
1061
  `)}`);mk.input=e.tokens;const t=mk.project();if(mk.errors.length>0)throw new Error(`Parser errors:
1062
1062
  ${mk.errors.map(n=>n.message).join(`
1063
1063
  `)}`);const i=hmt.visit(t);return fmt(i),i}function fmt(s){if(!s.definedComponents||s.definedComponents.length===0)return;const e=new Map;s.definedComponents.forEach(r=>{e.set(r.name,r)});const t=new Set,i=new Set;function n(r){const a=new Set;if(r.type==="layout"){const l=r;l.children&&l.children.forEach(c=>{if(c.type==="component"){const d=c;a.add(d.componentType)}else if(c.type==="layout")n(c).forEach(h=>a.add(h));else if(c.type==="cell"){const d=c;d.children&&d.children.forEach(h=>{h.type==="component"?a.add(h.componentType):h.type==="layout"&&n(h).forEach(p=>a.add(p))})}})}return a}function o(r,a=[]){if(i.has(r)){const h=a.indexOf(r);return a.slice(h).concat(r)}if(t.has(r))return null;const l=e.get(r);if(!l)return null;i.add(r);const c=[...a,r],d=n(l.body);for(const h of d)if(e.has(h)){const p=o(h,c);if(p)return p}return i.delete(r),t.add(r),null}for(const[r]of e){t.clear(),i.clear();const a=o(r);if(a)throw new Error(`Circular component definition detected: ${a.join(" → ")}
1064
- Components cannot reference each other in a cycle.`)}}var gmt={mobile:{name:"iPhone SE",width:375,minHeight:812,category:"mobile",description:"iPhone SE (baseline mobile viewport)"},tablet:{name:"Tablet Portrait",width:768,minHeight:1024,category:"tablet",description:"Tablet portrait viewport baseline"},desktop:{name:"Desktop HD",width:1280,minHeight:720,category:"desktop",description:"Standard desktop viewport"},print:{name:"Print A4",width:794,minHeight:1123,category:"print",description:"A4 portrait at 96 DPI"},a4:{name:"Print A4",width:794,minHeight:1123,category:"print",description:"A4 alias at 96 DPI"}};function Rhe(s){const e=gmt[s.toLowerCase()];return e?{width:e.width,minHeight:e.minHeight}:{width:1280,minHeight:720}}var pmt=Kd({density:Zf(["compact","normal","comfortable"]),spacing:Zf(["xs","sm","md","lg","xl"]),radius:Zf(["none","sm","md","lg","full"]),stroke:Zf(["thin","normal","thick"]),font:Zf(["sm","base","lg"]),background:Un().optional(),theme:Un().optional(),device:Un().optional()}),Awe=Kd({padding:Un().optional(),gap:Un().optional(),align:Zf(["left","center","right","justify"]).optional(),justify:Zf(["start","center","end"]).optional(),background:Un().optional()}),Owe=Kd({source:Un().optional(),nodeId:Un().optional()}),mmt=Kd({id:Un(),kind:pwe("container"),containerType:Zf(["stack","grid","split","panel","card"]),params:f2(Un(),QF([Un(),n4()])),children:aQ(Kd({ref:Un()})),style:Awe,meta:Owe}),_mt=Kd({id:Un(),kind:pwe("component"),componentType:Un(),props:f2(Un(),QF([Un(),n4()])),style:Awe,meta:Owe}),bmt=QF([mmt,_mt]),vmt=Kd({id:Un(),name:Un(),viewport:Kd({width:n4(),height:n4()}),background:Un().optional(),root:Kd({ref:Un()})}),Cmt=Kd({id:Un(),name:Un(),style:pmt,mocks:f2(Un(),IG()),colors:f2(Un(),Un()),screens:aQ(vmt),nodes:f2(Un(),bmt)}),wmt=Kd({irVersion:Un(),project:Cmt}),ymt=class{constructor(){this.counters=new Map}generate(s){const t=(this.counters.get(s)||0)+1;return this.counters.set(s,t),`${s}_${t}`}reset(){this.counters.clear()}},Smt=class{constructor(){this.idGen=new ymt,this.nodes={},this.definedComponents=new Map,this.definedComponentIndices=new Map,this.undefinedComponentsUsed=new Set,this.warnings=[],this.style={density:"normal",spacing:"md",radius:"md",stroke:"normal",font:"base"}}generate(s){this.idGen.reset(),this.nodes={},this.definedComponents.clear(),this.definedComponentIndices.clear(),this.undefinedComponentsUsed.clear(),this.warnings=[],s.definedComponents&&s.definedComponents.length>0&&s.definedComponents.forEach((n,o)=>{this.definedComponents.set(n.name,n),this.definedComponentIndices.set(n.name,o)}),this.applyStyle(s.style);const e=s.screens.map((n,o)=>this.convertScreen(n,o));if(this.undefinedComponentsUsed.size>0){const n=Array.from(this.undefinedComponentsUsed).sort();throw new Error(`Components used but not defined: ${n.join(", ")}
1065
- Define these components with: define Component "Name" { ... }`)}const i={irVersion:"1.0",project:{id:this.sanitizeId(s.name),name:s.name,style:this.style,mocks:s.mocks||{},colors:s.colors||{},screens:e,nodes:this.nodes}};return wmt.parse(i)}applyStyle(s){s.density&&(this.style.density=s.density),s.spacing&&(this.style.spacing=s.spacing),s.radius&&(this.style.radius=s.radius),s.stroke&&(this.style.stroke=s.stroke),s.font&&(this.style.font=s.font),s.background&&(this.style.background=s.background),s.theme&&(this.style.theme=s.theme),s.device&&(this.style.device=s.device)}convertScreen(s,e){const t=this.convertLayout(s.layout),i=this.style.device?Rhe(this.style.device):Rhe("desktop"),n={id:this.sanitizeId(s.name),name:s.name,viewport:{width:i.width,height:i.minHeight},root:{ref:t}};return s.params.background?n.background=String(s.params.background):this.style.background&&(n.background=this.style.background),n}validateComponentOrder(s){if(!s.definedComponents||s.definedComponents.length===0)return;const e=new Set(s.definedComponents.map(t=>t.name));s.screens.forEach(t=>{this.findComponentsInLayout(t.layout).forEach(({componentType:n})=>{e.has(n)&&(this.definedComponentIndices.get(n),s.screens.indexOf(t),this.warnings.push({type:"component-order",message:`Component "${n}" is used in screen "${t.name}". Consider defining "${n}" before this screen for better code clarity.`}))})}),this.warnings.length>0&&this.warnings.forEach(t=>{console.warn(`⚠️ [${t.type.toUpperCase()}] ${t.message}`)})}findComponentsInLayout(s,e=[]){return s.children&&s.children.length>0&&s.children.forEach(t=>{t.type==="component"?e.push({componentType:t.componentType,location:"layout"}):t.type==="layout"?this.findComponentsInLayout(t,e):t.type==="cell"&&t.children&&t.children.forEach(i=>{i.type==="component"?e.push({componentType:i.componentType,location:"cell"}):i.type==="layout"&&this.findComponentsInLayout(i,e)})}),e}getWarnings(){return this.warnings}convertLayout(s){const e=this.idGen.generate("node"),t=[];for(const o of s.children)if(o.type==="layout"){const r=this.convertLayout(o);t.push({ref:r})}else if(o.type==="component"){const r=this.convertComponent(o);t.push({ref:r})}else if(o.type==="cell"){const r=this.convertCell(o);t.push({ref:r})}const i={};s.params.padding?i.padding=String(s.params.padding):i.padding="none",s.params.gap&&(i.gap=String(s.params.gap)),s.params.align&&(i.align=s.params.align),s.params.background&&(i.background=String(s.params.background));const n={id:e,kind:"container",containerType:s.layoutType,params:this.cleanParams(s.params),children:t,style:i,meta:{nodeId:s._meta?.nodeId}};return this.nodes[e]=n,e}convertCell(s){const e=this.idGen.generate("node"),t=[];for(const n of s.children)if(n.type==="layout"){const o=this.convertLayout(n);t.push({ref:o})}else if(n.type==="component"){const o=this.convertComponent(n);t.push({ref:o})}const i={id:e,kind:"container",containerType:"stack",params:s.props,children:t,style:{padding:"none"},meta:{source:"cell",nodeId:s._meta?.nodeId}};return this.nodes[e]=i,e}convertComponent(s){const e=this.definedComponents.get(s.componentType);if(e)return this.expandDefinedComponent(e);new Set(["Button","Input","Heading","Text","Label","Image","Card","StatCard","Topbar","Table","Chart","ChartPlaceholder","Textarea","Select","Checkbox","Toggle","Divider","Breadcrumbs","SidebarMenu","Radio","Icon","IconButton","Alert","Badge","Modal","List","Sidebar","Tabs","Code","Link","Separate"]).has(s.componentType)||this.undefinedComponentsUsed.add(s.componentType);const i=this.idGen.generate("node"),n={id:i,kind:"component",componentType:s.componentType,props:s.props,style:{},meta:{nodeId:s._meta?.nodeId}};return this.nodes[i]=n,i}expandDefinedComponent(s){if(s.body.type==="layout")return this.convertLayout(s.body);if(s.body.type==="component")return this.convertComponent(s.body);throw new Error(`Invalid defined component body type for "${s.name}"`)}cleanParams(s){const e={};for(const[t,i]of Object.entries(s))["padding","gap","align","justify"].includes(t)||(e[t]=i);return e}sanitizeId(s){return s.toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_]/g,"")}};function xmt(s){return new Smt().generate(s)}var fw={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Mhe={compact:.8,normal:1,comfortable:1.25};function g2(s,e="md",t="normal",i=!1){if(!s){const r=fw[e]??fw.md;return i?Math.round(r*Mhe[t]):r}const n=fw[s],o=n!==void 0?n:fw[e]??fw.md;return i?Math.round(o*Mhe[t]):o}var Ahe={compact:{xs:10,sm:12,md:16,lg:20,xl:28},normal:{xs:12,sm:14,md:18,lg:24,xl:32},comfortable:{xs:14,sm:16,md:20,lg:28,xl:36}},Ohe={compact:{sm:24,md:28,lg:32},normal:{sm:28,md:32,lg:40},comfortable:{sm:32,md:40,lg:48}};function Pwe(s,e="normal"){const t=Ahe[e]||Ahe.normal;return t[s||"md"]||t.md}function Fwe(s,e="normal"){const t=Ohe[e]||Ohe.normal;return t[s||"md"]||t.md}var Lmt="h2",kmt={h1:1.4,h2:1,h3:.85,h4:.75,h5:.65,h6:.55},Emt={h1:700,h2:650,h3:620,h4:600,h5:600,h6:600};function Imt(s,e=Lmt){if(typeof s!="string")return e;const t=s.trim().toLowerCase();return t==="h1"?"h1":t==="h2"?"h2":t==="h3"?"h3":t==="h4"?"h4":t==="h5"?"h5":t==="h6"?"h6":e}function Bwe(s,e,t){const i=Imt(t),n=kmt[i],o=Emt[i];return{level:i,fontSize:Math.max(10,Math.round(s*n)),fontWeight:Math.max(e,o),lineHeight:1.25}}function Hwe(s,e){if(s==null||s==="")return null;if(typeof s=="number"&&Number.isFinite(s))return Math.max(0,s);if(typeof s!="string")return null;const t=s.trim().toLowerCase();if(!t)return null;const i=Number(t);return!Number.isNaN(i)&&Number.isFinite(i)?Math.max(0,i):t in fw?g2(t,"sm",e,!0):null}var Phe={compact:32,normal:40,comfortable:48},Dmt=class{constructor(s){this.result={},this.parentContainerTypes=new Map,this.ir=s,this.nodes=s.project.nodes,this.style=s.project.style,this.viewport=s.project.screens[0]?.viewport||{width:1280,height:720}}calculate(){this.result={};for(const s of this.ir.project.screens){const e=s.root.ref;e&&this.calculateNode(e,0,0,this.viewport.width,this.viewport.height)}return this.result}calculateNode(s,e,t,i,n,o){const r=this.nodes[s];r&&(o&&r.kind==="container"&&this.parentContainerTypes.set(s,o),r.kind==="container"?this.calculateContainer(r,s,e,t,i,n):this.calculateComponent(r,s,e,t,i,n))}calculateContainer(s,e,t,i,n,o){if(s.kind!=="container")return;const a=s.containerType!=="card"?this.resolveSpacing(s.style.padding):0,l=t+a,c=i+a,d=n-a*2,h=s.params.direction||"vertical",f=s.containerType==="stack"&&h==="vertical",p=f?o:o-a*2;switch(this.result[e]={x:t,y:i,width:n,height:o},s.containerType){case"stack":this.calculateStack(s,l,c,d,p);break;case"grid":this.calculateGrid(s,l,c,d,p);break;case"split":this.calculateSplit(s,l,c,d,p);break;case"panel":this.calculatePanel(s,l,c,d,p);break;case"card":this.calculateCard(s,l,c,d,p);break}if(f||s.containerType==="card"){let m=i;s.children.forEach(y=>{const S=this.result[y.ref];S&&(m=Math.max(m,S.y+S.height))});const b=s.containerType==="card"?this.resolveSpacing(s.style.padding):a,C=m-i+b;this.result[e].height=C}}calculateStack(s,e,t,i,n){if(s.kind!=="container")return;const o=s.params.direction||"vertical",r=this.resolveSpacing(s.style.gap),a=s.children;if(o==="vertical"){let l=t;a.forEach((d,h)=>{const f=this.nodes[d.ref];let p=this.getComponentHeight();f?.kind==="component"&&f.props.height?p=Number(f.props.height):f?.kind==="container"?p=this.calculateContainerHeight(f,i):f?.kind==="component"&&(p=this.getIntrinsicComponentHeight(f,i)),this.calculateNode(d.ref,e,l,i,p,"stack"),l+=p,h<a.length-1&&(l+=r)});let c=t;a.forEach((d,h)=>{const f=this.result[d.ref];if(f){const p=c-f.y;f.y=c,p!==0&&this.adjustNodeYPositions(d.ref,p),c+=f.height,h<a.length-1&&(c+=r)}})}else{const l=s.style.align||"justify";if(l==="justify"){let c=e;const d=this.calculateChildWidth(a.length,i,r);let h=0;a.forEach(f=>{const p=this.nodes[f.ref];let m=this.getComponentHeight();p?.kind==="component"&&p.props.height?m=Number(p.props.height):p?.kind==="container"?m=this.calculateContainerHeight(p,d):p?.kind==="component"&&(m=this.getIntrinsicComponentHeight(p,d)),h=Math.max(h,m)}),a.forEach(f=>{this.calculateNode(f.ref,c,t,d,h,"stack"),c+=d+r})}else{const c=[];let d=0;a.forEach(C=>{const y=this.nodes[C.ref];let S=this.getIntrinsicComponentWidth(y),L=this.getComponentHeight();y?.kind==="component"&&y.props.height?L=Number(y.props.height):y?.kind==="component"&&y.props.width?S=Number(y.props.width):y?.kind==="container"?L=this.calculateContainerHeight(y,S):y?.kind==="component"&&(L=this.getIntrinsicComponentHeight(y,S)),c.push(S),d=Math.max(d,L)});const h=c.reduce((C,y)=>C+y,0),f=r*Math.max(0,a.length-1),p=h+f;let m=e;l==="center"?m=e+(i-p)/2:l==="right"&&(m=e+i-p);let b=m;a.forEach((C,y)=>{const S=c[y];this.calculateNode(C.ref,b,t,S,d,"stack"),b+=S+r})}}}calculateContainerHeight(s,e){if(s.kind!=="container")return this.getComponentHeight();const t=this.resolveSpacing(s.style.gap);let n=this.resolveSpacing(s.style.padding)*2;if(s.containerType==="grid"){const r=Number(s.params.columns)||12,a=(e-t*(r-1))/r;let l=0,c=0,d=0;const h=[0];s.children.forEach(f=>{const p=this.nodes[f.ref];let m=1,b=this.getComponentHeight();p?.kind==="container"&&p.meta?.source==="cell"&&(m=Number(p.params.span)||1);const C=a*m+t*(m-1);p?.kind==="component"?p.props.height?b=Number(p.props.height):b=this.getIntrinsicComponentHeight(p,C):p?.kind==="container"&&(b=this.calculateContainerHeight(p,C)),c+m>r&&(h[l]=d,l++,c=0,d=0),d=Math.max(d,b),c+=m}),h[l]=d;for(let f=0;f<=l;f++)n+=h[f],f<l&&(n+=t);return n}const o=s.params.direction||"vertical";if(s.containerType==="stack"&&o==="horizontal"){let r=0;return s.children.forEach(a=>{const l=this.nodes[a.ref];let c=this.getComponentHeight();l?.kind==="component"?l.props.height?c=Number(l.props.height):c=this.getIntrinsicComponentHeight(l,e):l?.kind==="container"&&(c=this.calculateContainerHeight(l,e)),r=Math.max(r,c)}),n+=r,n}return s.children.forEach((r,a)=>{const l=this.nodes[r.ref];let c=this.getComponentHeight();l?.kind==="component"?l.props.height?c=Number(l.props.height):c=this.getIntrinsicComponentHeight(l,e):l?.kind==="container"&&(c=this.calculateContainerHeight(l,e)),n+=c,a<s.children.length-1&&(n+=t)}),n}calculateGrid(s,e,t,i,n){if(s.kind!=="container")return;const o=Number(s.params.columns)||12,r=this.resolveSpacing(s.style.gap),a=(i-r*(o-1))/o,l={};s.children.forEach((C,y)=>{const S=this.nodes[C.ref];let L=this.getComponentHeight(),x=1;S?.kind==="container"&&S.meta?.source==="cell"&&(x=Number(S.params.span)||1);const E=a*x+r*(x-1);S?.kind==="container"?L=this.calculateContainerHeight(S,E):S?.kind==="component"&&(S.props.height?L=Number(S.props.height):L=this.getIntrinsicComponentHeight(S,E)),l[y]=L});let c=0,d=0,h=0;const f=[0],p=[];s.children.forEach((C,y)=>{const S=this.nodes[C.ref];let L=1;S?.kind==="container"&&S.meta?.source==="cell"&&(L=Number(S.params.span)||1),d+L>o&&(f[c]=h,c++,d=0,h=0),p.push({row:c,col:d,span:L}),h=Math.max(h,l[y]),d+=L}),f[c]=h,s.children.forEach((C,y)=>{const{row:S,col:L,span:x}=p[y],E=f[S];let D=t;for(let A=0;A<S;A++)D+=f[A]+r;const T=a*x+r*(x-1),M=e+L*(a+r);this.calculateNode(C.ref,M,D,T,E,"grid")});const m=[...f];s.children.forEach((C,y)=>{const{row:S}=p[y],L=this.result[C.ref];L&&(m[S]=Math.max(m[S],L.height))});const b=[0];for(let C=1;C<m.length;C++)b[C]=b[C-1]+(m[C-1]-f[C-1]);s.children.forEach((C,y)=>{const{row:S}=p[y],L=b[S]||0;if(L===0)return;const x=this.result[C.ref];x&&(x.y+=L,this.adjustNodeYPositions(C.ref,L))})}calculateSplit(s,e,t,i,n){if(s.kind!=="container")return;const o=this.resolveSpacing(s.style.gap),r=Number(s.params.sidebar)||260;if(s.children.length===1)this.calculateNode(s.children[0].ref,e,t,i,n,"split");else if(s.children.length>=2){this.calculateNode(s.children[0].ref,e,t,r,n,"split");const a=e+r+o,l=i-r-o;this.calculateNode(s.children[1].ref,a,t,l,n,"split")}}calculatePanel(s,e,t,i,n){if(s.kind!=="container"||s.children.length===0)return;const o=s.children[0];this.calculateNode(o.ref,e,t,i,n,"panel")}calculateCard(s,e,t,i,n){if(s.kind!=="container"||s.children.length===0)return;const o=this.resolveSpacing(s.style.padding),r=this.resolveSpacing(s.style.gap),a=i-o*2,l=s.children;let c=t+o;l.forEach((d,h)=>{const f=this.nodes[d.ref];let p=this.getComponentHeight();f?.kind==="component"&&f.props.height?p=Number(f.props.height):f?.kind==="container"?p=this.calculateContainerHeight(f,a):f?.kind==="component"&&(p=this.getIntrinsicComponentHeight(f,a)),this.calculateNode(d.ref,e+o,c,a,p,"card"),c+=p,h<l.length-1&&(c+=r)})}calculateComponent(s,e,t,i,n,o){if(s.kind!=="component")return;const r=Number(s.props.width)||n,a=Number(s.props.height)||this.getIntrinsicComponentHeight(s,r);this.result[e]={x:t,y:i,width:r,height:a}}resolveSpacing(s){return g2(s,this.style.spacing||"md",this.style.density||"normal",!0)}getSeparateSize(s){if(s.kind!=="component")return g2("md","md",this.style.density||"normal",!0);const e=s.props.size;return typeof e=="number"&&!isNaN(e)?e:g2(e?String(e):"md","md",this.style.density||"normal",!0)}getComponentHeight(){return Phe[this.style.density]||Phe.normal}getTextMetricsForDensity(){switch(this.style.density){case"compact":return{fontSize:12,lineHeight:1.4};case"comfortable":return{fontSize:16,lineHeight:1.6};default:return{fontSize:14,lineHeight:1.5}}}getButtonMetricsForDensity(){switch(this.style.density){case"compact":return{fontSize:12,paddingX:8};case"comfortable":return{fontSize:16,paddingX:16};default:return{fontSize:14,paddingX:12}}}getHeadingMetricsForDensity(s){let e;switch(this.style.density){case"compact":e=16;break;case"comfortable":e=24;break;default:e=20;break}const t=Bwe(e,600,s);return{fontSize:t.fontSize,lineHeight:t.lineHeight}}wrapTextToLines(s,e,t){const n=s.replace(/\r\n/g,`
1064
+ Components cannot reference each other in a cycle.`)}}var gmt={mobile:{name:"iPhone SE",width:375,minHeight:812,category:"mobile",description:"iPhone SE (baseline mobile viewport)"},tablet:{name:"Tablet Portrait",width:768,minHeight:1024,category:"tablet",description:"Tablet portrait viewport baseline"},desktop:{name:"Desktop HD",width:1280,minHeight:720,category:"desktop",description:"Standard desktop viewport"},print:{name:"Print A4",width:794,minHeight:1123,category:"print",description:"A4 portrait at 96 DPI"},"mobile-landscape":{name:"Mobile Landscape",width:812,minHeight:375,category:"mobile",description:"Mobile landscape viewport"},"mobile-min":{name:"Mobile Minimum",width:375,minHeight:375,category:"mobile",description:"Mobile minimum viewport"},"desktop-min":{name:"Desktop Minimum",width:1280,minHeight:640,category:"desktop",description:"Desktop minimum viewport"},"tablet-landscape":{name:"Tablet Landscape",width:1024,minHeight:768,category:"tablet",description:"Tablet landscape viewport"},"tablet-min":{name:"Tablet Minimum",width:768,minHeight:384,category:"tablet",description:"Tablet minimum viewport"},"print-landscape":{name:"Print A4 Landscape",width:1123,minHeight:794,category:"print",description:"A4 landscape at 96 DPI"}};function Rhe(s){const e=gmt[s.toLowerCase()];return e?{width:e.width,minHeight:e.minHeight}:{width:1280,minHeight:720}}var pmt=Kd({density:Zf(["compact","normal","comfortable"]),spacing:Zf(["xs","sm","md","lg","xl"]),radius:Zf(["none","sm","md","lg","full"]),stroke:Zf(["thin","normal","thick"]),font:Zf(["sm","base","lg"]),background:Un().optional(),theme:Un().optional(),device:Un().optional()}),Awe=Kd({padding:Un().optional(),gap:Un().optional(),align:Zf(["left","center","right","justify"]).optional(),justify:Zf(["start","center","end"]).optional(),background:Un().optional()}),Owe=Kd({source:Un().optional(),nodeId:Un().optional()}),mmt=Kd({id:Un(),kind:pwe("container"),containerType:Zf(["stack","grid","split","panel","card"]),params:f2(Un(),QF([Un(),n4()])),children:aQ(Kd({ref:Un()})),style:Awe,meta:Owe}),_mt=Kd({id:Un(),kind:pwe("component"),componentType:Un(),props:f2(Un(),QF([Un(),n4()])),style:Awe,meta:Owe}),bmt=QF([mmt,_mt]),vmt=Kd({id:Un(),name:Un(),viewport:Kd({width:n4(),height:n4()}),background:Un().optional(),root:Kd({ref:Un()})}),Cmt=Kd({id:Un(),name:Un(),style:pmt,mocks:f2(Un(),IG()),colors:f2(Un(),Un()),screens:aQ(vmt),nodes:f2(Un(),bmt)}),wmt=Kd({irVersion:Un(),project:Cmt}),ymt=class{constructor(){this.counters=new Map}generate(s){const t=(this.counters.get(s)||0)+1;return this.counters.set(s,t),`${s}_${t}`}reset(){this.counters.clear()}},Smt=class{constructor(){this.idGen=new ymt,this.nodes={},this.definedComponents=new Map,this.definedComponentIndices=new Map,this.undefinedComponentsUsed=new Set,this.warnings=[],this.style={density:"normal",spacing:"md",radius:"md",stroke:"normal",font:"base"}}generate(s){this.idGen.reset(),this.nodes={},this.definedComponents.clear(),this.definedComponentIndices.clear(),this.undefinedComponentsUsed.clear(),this.warnings=[],s.definedComponents&&s.definedComponents.length>0&&s.definedComponents.forEach((n,o)=>{this.definedComponents.set(n.name,n),this.definedComponentIndices.set(n.name,o)}),this.applyStyle(s.style);const e=s.screens.map((n,o)=>this.convertScreen(n,o));if(this.undefinedComponentsUsed.size>0){const n=Array.from(this.undefinedComponentsUsed).sort();throw new Error(`Components used but not defined: ${n.join(", ")}
1065
+ Define these components with: define Component "Name" { ... }`)}const i={irVersion:"1.0",project:{id:this.sanitizeId(s.name),name:s.name,style:this.style,mocks:s.mocks||{},colors:s.colors||{},screens:e,nodes:this.nodes}};return wmt.parse(i)}applyStyle(s){s.density&&(this.style.density=s.density),s.spacing&&(this.style.spacing=s.spacing),s.radius&&(this.style.radius=s.radius),s.stroke&&(this.style.stroke=s.stroke),s.font&&(this.style.font=s.font),s.background&&(this.style.background=s.background),s.theme&&(this.style.theme=s.theme),s.device&&(this.style.device=s.device)}convertScreen(s,e){const t=this.convertLayout(s.layout),i=this.style.device?Rhe(this.style.device):Rhe("desktop"),n={id:this.sanitizeId(s.name),name:s.name,viewport:{width:i.width,height:i.minHeight},root:{ref:t}};return s.params.background?n.background=String(s.params.background):this.style.background&&(n.background=this.style.background),n}validateComponentOrder(s){if(!s.definedComponents||s.definedComponents.length===0)return;const e=new Set(s.definedComponents.map(t=>t.name));s.screens.forEach(t=>{this.findComponentsInLayout(t.layout).forEach(({componentType:n})=>{e.has(n)&&(this.definedComponentIndices.get(n),s.screens.indexOf(t),this.warnings.push({type:"component-order",message:`Component "${n}" is used in screen "${t.name}". Consider defining "${n}" before this screen for better code clarity.`}))})}),this.warnings.length>0&&this.warnings.forEach(t=>{console.warn(`⚠️ [${t.type.toUpperCase()}] ${t.message}`)})}findComponentsInLayout(s,e=[]){return s.children&&s.children.length>0&&s.children.forEach(t=>{t.type==="component"?e.push({componentType:t.componentType,location:"layout"}):t.type==="layout"?this.findComponentsInLayout(t,e):t.type==="cell"&&t.children&&t.children.forEach(i=>{i.type==="component"?e.push({componentType:i.componentType,location:"cell"}):i.type==="layout"&&this.findComponentsInLayout(i,e)})}),e}getWarnings(){return this.warnings}convertLayout(s){const e=this.idGen.generate("node"),t=[];for(const o of s.children)if(o.type==="layout"){const r=this.convertLayout(o);t.push({ref:r})}else if(o.type==="component"){const r=this.convertComponent(o);t.push({ref:r})}else if(o.type==="cell"){const r=this.convertCell(o);t.push({ref:r})}const i={};s.params.padding?i.padding=String(s.params.padding):i.padding="none",s.params.gap&&(i.gap=String(s.params.gap)),s.params.align&&(i.align=s.params.align),s.params.background&&(i.background=String(s.params.background));const n={id:e,kind:"container",containerType:s.layoutType,params:this.cleanParams(s.params),children:t,style:i,meta:{nodeId:s._meta?.nodeId}};return this.nodes[e]=n,e}convertCell(s){const e=this.idGen.generate("node"),t=[];for(const n of s.children)if(n.type==="layout"){const o=this.convertLayout(n);t.push({ref:o})}else if(n.type==="component"){const o=this.convertComponent(n);t.push({ref:o})}const i={id:e,kind:"container",containerType:"stack",params:s.props,children:t,style:{padding:"none"},meta:{source:"cell",nodeId:s._meta?.nodeId}};return this.nodes[e]=i,e}convertComponent(s){const e=this.definedComponents.get(s.componentType);if(e)return this.expandDefinedComponent(e);new Set(["Button","Input","Heading","Text","Label","Image","Card","StatCard","Topbar","Table","Chart","ChartPlaceholder","Textarea","Select","Checkbox","Toggle","Divider","Breadcrumbs","SidebarMenu","Radio","Icon","IconButton","Alert","Badge","Modal","List","Sidebar","Tabs","Code","Link","Separate"]).has(s.componentType)||this.undefinedComponentsUsed.add(s.componentType);const i=this.idGen.generate("node"),n={id:i,kind:"component",componentType:s.componentType,props:s.props,style:{},meta:{nodeId:s._meta?.nodeId}};return this.nodes[i]=n,i}expandDefinedComponent(s){if(s.body.type==="layout")return this.convertLayout(s.body);if(s.body.type==="component")return this.convertComponent(s.body);throw new Error(`Invalid defined component body type for "${s.name}"`)}cleanParams(s){const e={};for(const[t,i]of Object.entries(s))["padding","gap","align","justify"].includes(t)||(e[t]=i);return e}sanitizeId(s){return s.toLowerCase().replace(/\s+/g,"_").replace(/[^a-z0-9_]/g,"")}};function xmt(s){return new Smt().generate(s)}var fw={none:0,xs:4,sm:8,md:16,lg:24,xl:32},Mhe={compact:.8,normal:1,comfortable:1.25};function g2(s,e="md",t="normal",i=!1){if(!s){const r=fw[e]??fw.md;return i?Math.round(r*Mhe[t]):r}const n=fw[s],o=n!==void 0?n:fw[e]??fw.md;return i?Math.round(o*Mhe[t]):o}var Ahe={compact:{xs:10,sm:12,md:16,lg:20,xl:28},normal:{xs:12,sm:14,md:18,lg:24,xl:32},comfortable:{xs:14,sm:16,md:20,lg:28,xl:36}},Ohe={compact:{sm:24,md:28,lg:32},normal:{sm:28,md:32,lg:40},comfortable:{sm:32,md:40,lg:48}};function Pwe(s,e="normal"){const t=Ahe[e]||Ahe.normal;return t[s||"md"]||t.md}function Fwe(s,e="normal"){const t=Ohe[e]||Ohe.normal;return t[s||"md"]||t.md}var Lmt="h2",kmt={h1:1.4,h2:1,h3:.85,h4:.75,h5:.65,h6:.55},Emt={h1:700,h2:650,h3:620,h4:600,h5:600,h6:600};function Imt(s,e=Lmt){if(typeof s!="string")return e;const t=s.trim().toLowerCase();return t==="h1"?"h1":t==="h2"?"h2":t==="h3"?"h3":t==="h4"?"h4":t==="h5"?"h5":t==="h6"?"h6":e}function Bwe(s,e,t){const i=Imt(t),n=kmt[i],o=Emt[i];return{level:i,fontSize:Math.max(10,Math.round(s*n)),fontWeight:Math.max(e,o),lineHeight:1.25}}function Hwe(s,e){if(s==null||s==="")return null;if(typeof s=="number"&&Number.isFinite(s))return Math.max(0,s);if(typeof s!="string")return null;const t=s.trim().toLowerCase();if(!t)return null;const i=Number(t);return!Number.isNaN(i)&&Number.isFinite(i)?Math.max(0,i):t in fw?g2(t,"sm",e,!0):null}var Phe={compact:32,normal:40,comfortable:48},Dmt=class{constructor(s){this.result={},this.parentContainerTypes=new Map,this.ir=s,this.nodes=s.project.nodes,this.style=s.project.style,this.viewport=s.project.screens[0]?.viewport||{width:1280,height:720}}calculate(){this.result={};for(const s of this.ir.project.screens){const e=s.root.ref;e&&this.calculateNode(e,0,0,this.viewport.width,this.viewport.height)}return this.result}calculateNode(s,e,t,i,n,o){const r=this.nodes[s];r&&(o&&r.kind==="container"&&this.parentContainerTypes.set(s,o),r.kind==="container"?this.calculateContainer(r,s,e,t,i,n):this.calculateComponent(r,s,e,t,i,n))}calculateContainer(s,e,t,i,n,o){if(s.kind!=="container")return;const a=s.containerType!=="card"?this.resolveSpacing(s.style.padding):0,l=t+a,c=i+a,d=n-a*2,h=s.params.direction||"vertical",f=s.containerType==="stack"&&h==="vertical",p=f?o:o-a*2;switch(this.result[e]={x:t,y:i,width:n,height:o},s.containerType){case"stack":this.calculateStack(s,l,c,d,p);break;case"grid":this.calculateGrid(s,l,c,d,p);break;case"split":this.calculateSplit(s,l,c,d,p);break;case"panel":this.calculatePanel(s,l,c,d,p);break;case"card":this.calculateCard(s,l,c,d,p);break}if(f||s.containerType==="card"){let m=i;s.children.forEach(y=>{const S=this.result[y.ref];S&&(m=Math.max(m,S.y+S.height))});const b=s.containerType==="card"?this.resolveSpacing(s.style.padding):a,C=m-i+b;this.result[e].height=C}}calculateStack(s,e,t,i,n){if(s.kind!=="container")return;const o=s.params.direction||"vertical",r=this.resolveSpacing(s.style.gap),a=s.children;if(o==="vertical"){let l=t;a.forEach((d,h)=>{const f=this.nodes[d.ref];let p=this.getComponentHeight();f?.kind==="component"&&f.props.height?p=Number(f.props.height):f?.kind==="container"?p=this.calculateContainerHeight(f,i):f?.kind==="component"&&(p=this.getIntrinsicComponentHeight(f,i)),this.calculateNode(d.ref,e,l,i,p,"stack"),l+=p,h<a.length-1&&(l+=r)});let c=t;a.forEach((d,h)=>{const f=this.result[d.ref];if(f){const p=c-f.y;f.y=c,p!==0&&this.adjustNodeYPositions(d.ref,p),c+=f.height,h<a.length-1&&(c+=r)}})}else{const l=s.style.align||"justify";if(l==="justify"){let c=e;const d=this.calculateChildWidth(a.length,i,r);let h=0;a.forEach(f=>{const p=this.nodes[f.ref];let m=this.getComponentHeight();p?.kind==="component"&&p.props.height?m=Number(p.props.height):p?.kind==="container"?m=this.calculateContainerHeight(p,d):p?.kind==="component"&&(m=this.getIntrinsicComponentHeight(p,d)),h=Math.max(h,m)}),a.forEach(f=>{this.calculateNode(f.ref,c,t,d,h,"stack"),c+=d+r})}else{const c=[],d=[],h=new Set;let f=0;a.forEach((S,L)=>{const x=this.nodes[S.ref];let E=this.getIntrinsicComponentWidth(x);this.getComponentHeight();const D=x?.kind==="component"&&!!x.props.height,T=x?.kind==="component"&&!!x.props.width;x?.kind==="component"&&x.componentType==="Button"&&!T&&this.parseBooleanProp(x.props.block,!1)?(E=0,h.add(L)):T&&(E=Number(x.props.width)),D&&Number(x.props.height),c.push(E),d.push(D)});const p=r*Math.max(0,a.length-1);if(h.size>0){const S=c.reduce((E,D,T)=>h.has(T)?E:E+D,0),L=i-p-S,x=Math.max(1,L/h.size);h.forEach(E=>{c[E]=x})}a.forEach((S,L)=>{const x=this.nodes[S.ref];let E=this.getComponentHeight();const D=c[L];d[L]&&x?.kind==="component"?E=Number(x.props.height):x?.kind==="container"?E=this.calculateContainerHeight(x,D):x?.kind==="component"&&(E=this.getIntrinsicComponentHeight(x,D)),f=Math.max(f,E)});const b=c.reduce((S,L)=>S+L,0)+p;let C=e;l==="center"?C=e+(i-b)/2:l==="right"&&(C=e+i-b);let y=C;a.forEach((S,L)=>{const x=c[L];this.calculateNode(S.ref,y,t,x,f,"stack"),y+=x+r})}}}calculateContainerHeight(s,e){if(s.kind!=="container")return this.getComponentHeight();const t=this.resolveSpacing(s.style.gap);let n=this.resolveSpacing(s.style.padding)*2;if(s.containerType==="grid"){const r=Number(s.params.columns)||12,a=(e-t*(r-1))/r;let l=0,c=0,d=0;const h=[0];s.children.forEach(f=>{const p=this.nodes[f.ref];let m=1,b=this.getComponentHeight();p?.kind==="container"&&p.meta?.source==="cell"&&(m=Number(p.params.span)||1);const C=a*m+t*(m-1);p?.kind==="component"?p.props.height?b=Number(p.props.height):b=this.getIntrinsicComponentHeight(p,C):p?.kind==="container"&&(b=this.calculateContainerHeight(p,C)),c+m>r&&(h[l]=d,l++,c=0,d=0),d=Math.max(d,b),c+=m}),h[l]=d;for(let f=0;f<=l;f++)n+=h[f],f<l&&(n+=t);return n}const o=s.params.direction||"vertical";if(s.containerType==="stack"&&o==="horizontal"){let r=0;return s.children.forEach(a=>{const l=this.nodes[a.ref];let c=this.getComponentHeight();l?.kind==="component"?l.props.height?c=Number(l.props.height):c=this.getIntrinsicComponentHeight(l,e):l?.kind==="container"&&(c=this.calculateContainerHeight(l,e)),r=Math.max(r,c)}),n+=r,n}return s.children.forEach((r,a)=>{const l=this.nodes[r.ref];let c=this.getComponentHeight();l?.kind==="component"?l.props.height?c=Number(l.props.height):c=this.getIntrinsicComponentHeight(l,e):l?.kind==="container"&&(c=this.calculateContainerHeight(l,e)),n+=c,a<s.children.length-1&&(n+=t)}),n}calculateGrid(s,e,t,i,n){if(s.kind!=="container")return;const o=Number(s.params.columns)||12,r=this.resolveSpacing(s.style.gap),a=(i-r*(o-1))/o,l={};s.children.forEach((C,y)=>{const S=this.nodes[C.ref];let L=this.getComponentHeight(),x=1;S?.kind==="container"&&S.meta?.source==="cell"&&(x=Number(S.params.span)||1);const E=a*x+r*(x-1);S?.kind==="container"?L=this.calculateContainerHeight(S,E):S?.kind==="component"&&(S.props.height?L=Number(S.props.height):L=this.getIntrinsicComponentHeight(S,E)),l[y]=L});let c=0,d=0,h=0;const f=[0],p=[];s.children.forEach((C,y)=>{const S=this.nodes[C.ref];let L=1;S?.kind==="container"&&S.meta?.source==="cell"&&(L=Number(S.params.span)||1),d+L>o&&(f[c]=h,c++,d=0,h=0),p.push({row:c,col:d,span:L}),h=Math.max(h,l[y]),d+=L}),f[c]=h,s.children.forEach((C,y)=>{const{row:S,col:L,span:x}=p[y],E=f[S];let D=t;for(let A=0;A<S;A++)D+=f[A]+r;const T=a*x+r*(x-1),M=e+L*(a+r);this.calculateNode(C.ref,M,D,T,E,"grid")});const m=[...f];s.children.forEach((C,y)=>{const{row:S}=p[y],L=this.result[C.ref];L&&(m[S]=Math.max(m[S],L.height))});const b=[0];for(let C=1;C<m.length;C++)b[C]=b[C-1]+(m[C-1]-f[C-1]);s.children.forEach((C,y)=>{const{row:S}=p[y],L=b[S]||0;if(L===0)return;const x=this.result[C.ref];x&&(x.y+=L,this.adjustNodeYPositions(C.ref,L))})}calculateSplit(s,e,t,i,n){if(s.kind!=="container")return;const o=this.resolveSpacing(s.style.gap),r=Number(s.params.sidebar)||260;if(s.children.length===1)this.calculateNode(s.children[0].ref,e,t,i,n,"split");else if(s.children.length>=2){this.calculateNode(s.children[0].ref,e,t,r,n,"split");const a=e+r+o,l=i-r-o;this.calculateNode(s.children[1].ref,a,t,l,n,"split")}}calculatePanel(s,e,t,i,n){if(s.kind!=="container"||s.children.length===0)return;const o=s.children[0];this.calculateNode(o.ref,e,t,i,n,"panel")}calculateCard(s,e,t,i,n){if(s.kind!=="container"||s.children.length===0)return;const o=this.resolveSpacing(s.style.padding),r=this.resolveSpacing(s.style.gap),a=i-o*2,l=s.children;let c=t+o;l.forEach((d,h)=>{const f=this.nodes[d.ref];let p=this.getComponentHeight();f?.kind==="component"&&f.props.height?p=Number(f.props.height):f?.kind==="container"?p=this.calculateContainerHeight(f,a):f?.kind==="component"&&(p=this.getIntrinsicComponentHeight(f,a)),this.calculateNode(d.ref,e+o,c,a,p,"card"),c+=p,h<l.length-1&&(c+=r)})}calculateComponent(s,e,t,i,n,o){if(s.kind!=="component")return;const r=Number(s.props.width)||n,a=Number(s.props.height)||this.getIntrinsicComponentHeight(s,r);this.result[e]={x:t,y:i,width:r,height:a}}resolveSpacing(s){return g2(s,this.style.spacing||"md",this.style.density||"normal",!0)}getSeparateSize(s){if(s.kind!=="component")return g2("md","md",this.style.density||"normal",!0);const e=s.props.size;return typeof e=="number"&&!isNaN(e)?e:g2(e?String(e):"md","md",this.style.density||"normal",!0)}getComponentHeight(){return Phe[this.style.density]||Phe.normal}getTextMetricsForDensity(){switch(this.style.density){case"compact":return{fontSize:12,lineHeight:1.4};case"comfortable":return{fontSize:16,lineHeight:1.6};default:return{fontSize:14,lineHeight:1.5}}}getButtonMetricsForDensity(){switch(this.style.density){case"compact":return{fontSize:12,paddingX:12};case"normal":return{fontSize:14,paddingX:18};case"comfortable":return{fontSize:16,paddingX:24};default:return{fontSize:14,paddingX:18}}}getHeadingMetricsForDensity(s){let e;switch(this.style.density){case"compact":e=16;break;case"comfortable":e=24;break;default:e=20;break}const t=Bwe(e,600,s);return{fontSize:t.fontSize,lineHeight:t.lineHeight}}wrapTextToLines(s,e,t){const n=s.replace(/\r\n/g,`
1066
1066
  `).split(`
1067
- `),o=t*.6,r=Math.max(e,o),a=Math.max(1,Math.floor(r/o)),l=[];for(const c of n){if(!c.trim()){l.push("");continue}const d=c.split(/\s+/).filter(Boolean);let h="";for(const f of d){const p=h?`${h} ${f}`:f;if(p.length<=a){h=p;continue}if(h&&(l.push(h),h=""),f.length<=a){h=f;continue}for(let m=0;m<f.length;m+=a)l.push(f.slice(m,m+a))}h&&l.push(h)}return l.length>0?l:[""]}getIntrinsicComponentHeight(s,e){if(s.kind!=="component")return this.getComponentHeight();const t=s.componentType==="Input"||s.componentType==="Textarea"||s.componentType==="Select"?this.getControlLabelOffset(String(s.props.label||"")):0;if(s.componentType==="Image"){const i=String(s.props.placeholder||"landscape"),o={landscape:16/9,portrait:2/3,square:1,icon:1,avatar:1}[i]||16/9,r=Number(s.props.height);return!isNaN(r)&&r>0?r:e&&e>0?e/o:200}if(s.componentType==="Table"){const i=Number(s.props.height);if(!isNaN(i)&&i>0)return i;const n=Number(s.props.rows||s.props.rowsMock||5),o=!!s.props.title,r=String(s.props.pagination)==="true",a=44,l=36,c=o?32:0,d=r?64:0;return c+a+n*l+d}if(s.componentType==="Heading"){const i=String(s.props.text||"Heading"),{fontSize:n,lineHeight:o}=this.getHeadingMetricsForDensity(s.props.level),r=Math.ceil(n*o),a=e&&e>0?e:200,l=this.wrapTextToLines(i,a,n),c=Math.max(1,l.length)*r,d=this.style.density||"normal",h=Hwe(s.props.spacing,d);return h===null?Math.max(this.getComponentHeight(),c):Math.max(1,Math.ceil(c+h*2))}if(s.componentType==="Text"){const i=String(s.props.content||""),{fontSize:n,lineHeight:o}=this.getTextMetricsForDensity(),r=Math.ceil(n*o),a=e&&e>0?e:200,l=this.wrapTextToLines(i,a,n),c=Math.max(1,l.length)*r;return Math.max(this.getComponentHeight(),c)}if(s.componentType==="Alert"){const i=String(s.props.title||""),n=String(s.props.text||"Alert message"),o=13,r=Math.ceil(o*1.25),a=Math.ceil(o*1.4),l=Math.max(40,(e&&e>0?e:280)-24),c=i.trim().length>0?this.wrapTextToLines(i,l,o):[],d=this.wrapTextToLines(n,l,o),h=12,f=12,p=c.length>0?6:0,m=h+c.length*r+p+Math.max(1,d.length)*a+f;return Math.max(this.getComponentHeight(),m)}if(s.componentType==="SidebarMenu"){const n=String(s.props.items||"Item 1,Item 2,Item 3").split(",").map(a=>a.trim()).filter(Boolean),o=n.length>0?n.length:3;return Math.max(this.getComponentHeight(),o*40)}if(s.componentType==="Textarea")return 100+t;if(s.componentType==="Modal")return 300;if(s.componentType==="Card"||s.componentType==="StatCard")return 120;if(s.componentType==="Chart"||s.componentType==="ChartPlaceholder")return 250;if(s.componentType==="List"){const i=String(s.props.items||"").split(",").map(d=>d.trim()).filter(Boolean),n=Number(s.props.itemsMock??4),o=Number.isFinite(n)?Math.max(0,Math.floor(n)):4,r=i.length>0?i.length:o,c=(String(s.props.title||"").trim().length>0?40:0)+r*36;return Math.max(this.getComponentHeight(),c)}return s.componentType==="Topbar"?56:s.componentType==="Divider"?1:s.componentType==="Separate"?this.getSeparateSize(s):s.componentType==="Input"||s.componentType==="Select"?this.getComponentHeight()+t:this.getComponentHeight()}getControlLabelOffset(s){return s.trim().length>0?18:0}getIntrinsicComponentWidth(s){if(!s||s.kind!=="component")return 120;if(s.componentType==="Icon"){const e=String(s.props.size||"md");return Pwe(e,this.style.density||"normal")}if(s.componentType==="IconButton"){const e=String(s.props.size||"md");return Fwe(e,this.style.density||"normal")}if(s.componentType==="Checkbox"||s.componentType==="Radio")return 24;if(s.componentType==="Separate")return this.getSeparateSize(s);if(s.componentType==="Button"||s.componentType==="Link"){const e=String(s.props.text||""),{fontSize:t,paddingX:i}=this.getButtonMetricsForDensity(),n=this.estimateTextWidth(e,t);return Math.max(60,Math.ceil(n+i*2))}if(s.componentType==="Label"||s.componentType==="Text"){const e=String(s.props.content||s.props.text||"");return Math.max(60,e.length*8+16)}if(s.componentType==="Heading"){const e=String(s.props.text||""),{fontSize:t}=this.getHeadingMetricsForDensity(s.props.level);return Math.max(80,Math.ceil(e.length*t*.6+16))}if(s.componentType==="Input"||s.componentType==="Select"||s.componentType==="Textarea")return 200;if(s.componentType==="Image"){const e=String(s.props.placeholder||"landscape");return{landscape:300,portrait:200,square:200,icon:64,avatar:64}[e]||300}if(s.componentType==="Table")return 400;if(s.componentType==="StatCard"||s.componentType==="Card")return 280;if(s.componentType==="SidebarMenu")return 260;if(s.componentType==="Badge"||s.componentType==="Chip"){const e=String(s.props.text||"");return Math.max(50,e.length*7+16)}return 120}calculateChildHeight(s,e,t){if(s===0)return 0;const i=t*(s-1);return(e-i)/s}calculateChildWidth(s,e,t){if(s===0)return 0;const i=t*(s-1);return(e-i)/s}estimateTextWidth(s,e){let t=0;for(const i of s)/\s/.test(i)?t+=e*.33:/[.,:;'"`|!iIl]/.test(i)?t+=e*.32:/[MW@#%&]/.test(i)?t+=e*.9:t+=e*.6;return t}adjustNodeYPositions(s,e){const t=this.nodes[s];t&&t.kind==="container"&&t.children&&t.children.forEach(i=>{const n=this.result[i.ref];n&&(n.y+=e,this.adjustNodeYPositions(i.ref,e))})}};function Tmt(s){return new Dmt(s).calculate()}var Fhe=["Juan","María","Carlos","Sofia","Alex","Luna","Diego","Emma"],Bhe=["García","López","Rodríguez","Martínez","Pérez","Sánchez","Torres","Flores"],Nmt=["Active","Pending","Completed","On Hold","Review","Approved"],Rmt=["Lead","Qualified","Proposal","Negotiation","Won","Lost"],Mmt=["juan@example.com","maria@example.com","carlos@example.com","sofia@example.com","alex@example.com","luna@example.com"],Amt=["Buenos Aires","Madrid","Bogota","Santiago","Ciudad de Mexico","Lima","Barcelona","Monterrey"],Omt=["Laptop Pro","Wireless Mouse","Mechanical Keyboard","4K Monitor","USB-C Hub","Noise-Canceling Headphones"],Pmt=["Paid","Pending","Failed","Refunded"],Wp=class{static setCustomMocks(s){this.customMocks={};for(const[e,t]of Object.entries(s)){let i=[];typeof t=="string"?i=t.split(",").map(n=>n.trim()).filter(n=>n.length>0):Array.isArray(t)&&(i=t.map(n=>typeof n=="string"?n.trim():"").filter(n=>n.length>0)),i.length>0&&(this.customMocks[e.toLowerCase()]=i)}}static getMockValue(s,e,t=!1){const i=s.toLowerCase().trim();if(this.customMocks[i])return this.pick(this.customMocks[i],e,t);switch(i){case"id":return t?this.randomInt(1,9999).toString():(e+1).toString();case"name":case"owner":case"contact":case"requester":case"user":return this.pick(Fhe,e,t);case"last_name":return this.pick(Bhe,e,t);case"full_name":case"fullname":return`${this.pick(Fhe,e,t)} ${this.pick(Bhe,e+3,t)}`;case"email":return this.pick(Mmt,e,t);case"status":return this.pick(Nmt,e,t);case"stage":return this.pick(Rmt,e,t);case"payment_status":return this.pick(Pmt,e,t);case"city":return this.pick(Amt,e,t);case"price":case"cost":return t?`$${(this.randomInt(5e3,25e4)/100).toFixed(2)}`:`$${((e+1)*99.99).toFixed(2)}`;case"amount":return t?`$${this.randomInt(1e3,95e3).toLocaleString()}`:`$${((e+1)*5e3).toLocaleString()}`;case"account":case"company":return`Company ${t?this.randomInt(1,100):e+1}`;case"product":return this.pick(Omt,e,t);case"country":case"region":return this.pick(["USA","Spain","Mexico","Argentina","Chile"],e,t);case"device":return this.pick(["Desktop","Mobile","Tablet"],e,t);case"time":case"updated":return`${t?this.randomInt(1,24):2+e%20}h ago`;case"priority":return this.pick(["High","Medium","Low"],e,t);default:return i.startsWith("literal:")?s.substring(8):`Item ${e+1}`}}static inferMockTypeFromColumn(s){const e=s.toLowerCase().trim().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");return e&&(this.HEADER_TO_MOCK[e]||e)||"item"}static generateMockList(s,e,t=!1){const i=[];for(let n=0;n<e;n++)i.push(this.getMockValue(s,n,t));return i}static generateMockRow(s,e,t=!1){const i=s.split(",").map(o=>o.trim()),n={};return i.forEach(o=>{const r=this.inferMockTypeFromColumn(o);n[o]=this.getMockValue(r,e,t)}),n}static generateMockRows(s,e,t=!1){const i=[];for(let n=0;n<e;n++)i.push(this.generateMockRow(s,n,t));return i}static pick(s,e,t){if(s.length===0)return"";if(t){const i=this.randomInt(0,s.length-1);return s[i]}return s[e%s.length]}static randomInt(s,e){return Math.floor(Math.random()*(e-s+1))+s}};Wp.customMocks={};Wp.HEADER_TO_MOCK={id:"id",user:"name",usuario:"name",name:"name",nombre:"name",fullname:"full_name",full_name:"full_name",email:"email",correo:"email",city:"city",ciudad:"city",country:"country",pais:"country",region:"region",amount:"amount",importe:"amount",total:"amount",price:"price",costo:"price",status:"status",estado:"status",payment_status:"payment_status",stage:"stage",etapa:"stage",company:"company",account:"account",product:"product",producto:"product",device:"device",priority:"priority",time:"time",updated:"updated",owner:"owner",contact:"contact",requester:"requester"};var Fmt=class{constructor(){this.customColors={},this.namedColors={white:"#FFFFFF",black:"#000000",gray:"#6B7280",slate:"#64748B",zinc:"#71717A",red:"#EF4444",orange:"#F97316",yellow:"#EAB308",lime:"#84CC16",green:"#22C55E",emerald:"#10B981",teal:"#14B8A6",cyan:"#06B6D4",blue:"#3B82F6",indigo:"#6366F1",violet:"#8B5CF6",purple:"#A855F7",fuchsia:"#D946EF",pink:"#EC4899",rose:"#F43F5E","red-light":"#FEE2E2","blue-light":"#DBEAFE","green-light":"#DCFCE7"}}setCustomColors(s){this.customColors=s||{}}hasColor(s){if(!s)return!1;const e="__unresolved__";return this.resolveColor(s,e)!==e}resolveColor(s,e="#000000"){return this.resolveColorInternal(s,e,new Set)}resolveColorInternal(s,e,t){if(!s||t.has(s))return e;if(t.add(s),this.customColors[s]){const i=this.customColors[s];return this.isValidHex(i)?i:this.namedColors[i]?this.namedColors[i]:this.customColors[i]?this.resolveColorInternal(i,e,t):e}return this.namedColors[s]?this.namedColors[s]:this.isValidHex(s)?s:e}isValidHex(s){return/^#[0-9A-Fa-f]{6}$/.test(s)}validateHex(s){return this.isValidHex(s)?s:void 0}},Bmt={activity:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>',airplay:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 17H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-1"></path><polygon points="12 15 17 21 7 21 12 15"></polygon></svg>',"alert-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line></svg>',"alert-octagon":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line></svg>',"alert-triangle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>',"align-center":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="10" x2="6" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="18" y1="18" x2="6" y2="18"></line></svg>',"align-justify":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="21" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="21" y1="18" x2="3" y2="18"></line></svg>',"align-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="17" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="17" y1="18" x2="3" y2="18"></line></svg>',"align-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="21" y1="10" x2="7" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="21" y1="18" x2="7" y2="18"></line></svg>',anchor:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="5" r="3"></circle><line x1="12" y1="22" x2="12" y2="8"></line><path d="M5 12H2a10 10 0 0 0 20 0h-3"></path></svg>',aperture:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="14.31" y1="8" x2="20.05" y2="17.94"></line><line x1="9.69" y1="8" x2="21.17" y2="8"></line><line x1="7.38" y1="12" x2="13.12" y2="2.06"></line><line x1="9.69" y1="16" x2="3.95" y2="6.06"></line><line x1="14.31" y1="16" x2="2.83" y2="16"></line><line x1="16.62" y1="12" x2="10.88" y2="21.94"></line></svg>',archive:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="21 8 21 21 3 21 3 8"></polyline><rect x="1" y="3" width="22" height="5"></rect><line x1="10" y1="12" x2="14" y2="12"></line></svg>',"arrow-down-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="8 12 12 16 16 12"></polyline><line x1="12" y1="8" x2="12" y2="16"></line></svg>',"arrow-down-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="17" y1="7" x2="7" y2="17"></line><polyline points="17 17 7 17 7 7"></polyline></svg>',"arrow-down-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="7" x2="17" y2="17"></line><polyline points="17 7 17 17 7 17"></polyline></svg>',"arrow-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="5" x2="12" y2="19"></line><polyline points="19 12 12 19 5 12"></polyline></svg>',"arrow-left-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 8 8 12 12 16"></polyline><line x1="16" y1="12" x2="8" y2="12"></line></svg>',"arrow-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg>',"arrow-right-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 16 16 12 12 8"></polyline><line x1="8" y1="12" x2="16" y2="12"></line></svg>',"arrow-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg>',"arrow-up-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="16 12 12 8 8 12"></polyline><line x1="12" y1="16" x2="12" y2="8"></line></svg>',"arrow-up-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="17" y1="17" x2="7" y2="7"></line><polyline points="7 17 7 7 17 7"></polyline></svg>',"arrow-up-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg>',"arrow-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="19" x2="12" y2="5"></line><polyline points="5 12 12 5 19 12"></polyline></svg>',"at-sign":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="4"></circle><path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94"></path></svg>',award:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="8" r="7"></circle><polyline points="8.21 13.89 7 23 12 20 17 23 15.79 13.88"></polyline></svg>',"bar-chart-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="20" x2="18" y2="10"></line><line x1="12" y1="20" x2="12" y2="4"></line><line x1="6" y1="20" x2="6" y2="14"></line></svg>',"bar-chart":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="20" x2="12" y2="10"></line><line x1="18" y1="20" x2="18" y2="4"></line><line x1="6" y1="20" x2="6" y2="16"></line></svg>',"battery-charging":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 18H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.19M15 6h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-3.19"></path><line x1="23" y1="13" x2="23" y2="11"></line><polyline points="11 6 7 12 13 12 9 18"></polyline></svg>',battery:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="6" width="18" height="12" rx="2" ry="2"></rect><line x1="23" y1="13" x2="23" y2="11"></line></svg>',"bell-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13.73 21a2 2 0 0 1-3.46 0"></path><path d="M18.63 13A17.89 17.89 0 0 1 18 8"></path><path d="M6.26 6.26A5.86 5.86 0 0 0 6 8c0 7-3 9-3 9h14"></path><path d="M18 8a6 6 0 0 0-9.33-5"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',bell:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"></path><path d="M13.73 21a2 2 0 0 1-3.46 0"></path></svg>',bluetooth:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6.5 6.5 17.5 17.5 12 23 12 1 17.5 6.5 6.5 17.5"></polyline></svg>',bold:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 4h8a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z"></path><path d="M6 12h9a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z"></path></svg>',"book-open":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg>',book:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"></path><path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"></path></svg>',bookmark:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"></path></svg>',box:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>',briefcase:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="7" width="20" height="14" rx="2" ry="2"></rect><path d="M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"></path></svg>',calendar:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>',"camera-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="1" y1="1" x2="23" y2="23"></line><path d="M21 21H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3m3-3h6l2 3h4a2 2 0 0 1 2 2v9.34m-7.72-2.06a4 4 0 1 1-5.56-5.56"></path></svg>',camera:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"></path><circle cx="12" cy="13" r="4"></circle></svg>',cast:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 16.1A5 5 0 0 1 5.9 20M2 12.05A9 9 0 0 1 9.95 20M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6"></path><line x1="2" y1="20" x2="2.01" y2="20"></line></svg>',"check-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>',"check-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 11 12 14 22 4"></polyline><path d="M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"></path></svg>',check:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>',"chevron-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>',"chevron-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 18 9 12 15 6"></polyline></svg>',"chevron-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>',"chevron-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="18 15 12 9 6 15"></polyline></svg>',"chevrons-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="7 13 12 18 17 13"></polyline><polyline points="7 6 12 11 17 6"></polyline></svg>',"chevrons-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="11 17 6 12 11 7"></polyline><polyline points="18 17 13 12 18 7"></polyline></svg>',"chevrons-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="13 17 18 12 13 7"></polyline><polyline points="6 17 11 12 6 7"></polyline></svg>',"chevrons-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="17 11 12 6 7 11"></polyline><polyline points="17 18 12 13 7 18"></polyline></svg>',chrome:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="21.17" y1="8" x2="12" y2="8"></line><line x1="3.95" y1="6.06" x2="8.54" y2="14"></line><line x1="10.88" y1="21.94" x2="15.46" y2="14"></line></svg>',circle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>',clipboard:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect></svg>',clock:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>',"cloud-drizzle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="19" x2="8" y2="21"></line><line x1="8" y1="13" x2="8" y2="15"></line><line x1="16" y1="19" x2="16" y2="21"></line><line x1="16" y1="13" x2="16" y2="15"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="12" y1="15" x2="12" y2="17"></line><path d="M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25"></path></svg>',"cloud-lightning":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 16.9A5 5 0 0 0 18 7h-1.26a8 8 0 1 0-11.62 9"></path><polyline points="13 11 9 17 15 17 11 23"></polyline></svg>',"cloud-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22.61 16.95A5 5 0 0 0 18 10h-1.26a8 8 0 0 0-7.05-6M5 5a8 8 0 0 0 4 15h9a5 5 0 0 0 1.7-.3"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',"cloud-rain":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="16" y1="13" x2="16" y2="21"></line><line x1="8" y1="13" x2="8" y2="21"></line><line x1="12" y1="15" x2="12" y2="23"></line><path d="M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25"></path></svg>',"cloud-snow":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 17.58A5 5 0 0 0 18 8h-1.26A8 8 0 1 0 4 16.25"></path><line x1="8" y1="16" x2="8.01" y2="16"></line><line x1="8" y1="20" x2="8.01" y2="20"></line><line x1="12" y1="18" x2="12.01" y2="18"></line><line x1="12" y1="22" x2="12.01" y2="22"></line><line x1="16" y1="16" x2="16.01" y2="16"></line><line x1="16" y1="20" x2="16.01" y2="20"></line></svg>',cloud:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z"></path></svg>',code:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg>',codepen:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 22 8.5 22 15.5 12 22 2 15.5 2 8.5 12 2"></polygon><line x1="12" y1="22" x2="12" y2="15.5"></line><polyline points="22 8.5 12 15.5 2 8.5"></polyline><polyline points="2 15.5 12 8.5 22 15.5"></polyline><line x1="12" y1="2" x2="12" y2="8.5"></line></svg>',codesandbox:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path><polyline points="7.5 4.21 12 6.81 16.5 4.21"></polyline><polyline points="7.5 19.79 7.5 14.6 3 12"></polyline><polyline points="21 12 16.5 14.6 16.5 19.79"></polyline><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>',coffee:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8h1a4 4 0 0 1 0 8h-1"></path><path d="M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4V8z"></path><line x1="6" y1="1" x2="6" y2="4"></line><line x1="10" y1="1" x2="10" y2="4"></line><line x1="14" y1="1" x2="14" y2="4"></line></svg>',columns:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3h7a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-7m0-18H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7m0-18v18"></path></svg>',command:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path></svg>',compass:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"></polygon></svg>',copy:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>',"corner-down-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 10 4 15 9 20"></polyline><path d="M20 4v7a4 4 0 0 1-4 4H4"></path></svg>',"corner-down-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 10 20 15 15 20"></polyline><path d="M4 4v7a4 4 0 0 0 4 4h12"></path></svg>',"corner-left-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="14 15 9 20 4 15"></polyline><path d="M20 4h-7a4 4 0 0 0-4 4v12"></path></svg>',"corner-left-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="14 9 9 4 4 9"></polyline><path d="M20 20h-7a4 4 0 0 1-4-4V4"></path></svg>',"corner-right-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="10 15 15 20 20 15"></polyline><path d="M4 4h7a4 4 0 0 1 4 4v12"></path></svg>',"corner-right-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="10 9 15 4 20 9"></polyline><path d="M4 20h7a4 4 0 0 0 4-4V4"></path></svg>',"corner-up-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 14 4 9 9 4"></polyline><path d="M20 20v-7a4 4 0 0 0-4-4H4"></path></svg>',"corner-up-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 14 20 9 15 4"></polyline><path d="M4 20v-7a4 4 0 0 1 4-4h12"></path></svg>',cpu:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="16" height="16" rx="2" ry="2"></rect><rect x="9" y="9" width="6" height="6"></rect><line x1="9" y1="1" x2="9" y2="4"></line><line x1="15" y1="1" x2="15" y2="4"></line><line x1="9" y1="20" x2="9" y2="23"></line><line x1="15" y1="20" x2="15" y2="23"></line><line x1="20" y1="9" x2="23" y2="9"></line><line x1="20" y1="14" x2="23" y2="14"></line><line x1="1" y1="9" x2="4" y2="9"></line><line x1="1" y1="14" x2="4" y2="14"></line></svg>',"credit-card":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="4" width="22" height="16" rx="2" ry="2"></rect><line x1="1" y1="10" x2="23" y2="10"></line></svg>',crop:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6.13 1L6 16a2 2 0 0 0 2 2h15"></path><path d="M1 6.13L16 6a2 2 0 0 1 2 2v15"></path></svg>',crosshair:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="22" y1="12" x2="18" y2="12"></line><line x1="6" y1="12" x2="2" y2="12"></line><line x1="12" y1="6" x2="12" y2="2"></line><line x1="12" y1="22" x2="12" y2="18"></line></svg>',database:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M21 12c0 1.66-4 3-9 3s-9-1.34-9-3"></path><path d="M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"></path></svg>',delete:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 4H8l-7 8 7 8h13a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z"></path><line x1="18" y1="9" x2="12" y2="15"></line><line x1="12" y1="9" x2="18" y2="15"></line></svg>',disc:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="3"></circle></svg>',"divide-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="12" x2="16" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line><line x1="12" y1="8" x2="12" y2="8"></line><circle cx="12" cy="12" r="10"></circle></svg>',"divide-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="8" y1="12" x2="16" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line><line x1="12" y1="8" x2="12" y2="8"></line></svg>',divide:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="6" r="2"></circle><line x1="5" y1="12" x2="19" y2="12"></line><circle cx="12" cy="18" r="2"></circle></svg>',"dollar-sign":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>',"download-cloud":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="8 17 12 21 16 17"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29"></path></svg>',download:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" y1="15" x2="12" y2="3"></line></svg>',dribbble:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M8.56 2.75c4.37 6.03 6.02 9.42 8.03 17.72m2.54-15.38c-3.72 4.35-8.94 5.66-16.88 5.85m19.5 1.9c-3.5-.93-6.63-.82-8.94 0-2.58.92-5.01 2.86-7.44 6.32"></path></svg>',droplet:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>',"edit-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>',"edit-3":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h9"></path><path d="M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"></path></svg>',edit:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"></path><path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"></path></svg>',"external-link":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg>',"eye-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',eye:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle></svg>',facebook:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z"></path></svg>',"fast-forward":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="13 19 22 12 13 5 13 19"></polygon><polygon points="2 19 11 12 2 5 2 19"></polygon></svg>',feather:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z"></path><line x1="16" y1="8" x2="2" y2="22"></line><line x1="17.5" y1="15" x2="9" y2="15"></line></svg>',figma:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 5.5A3.5 3.5 0 0 1 8.5 2H12v7H8.5A3.5 3.5 0 0 1 5 5.5z"></path><path d="M12 2h3.5a3.5 3.5 0 1 1 0 7H12V2z"></path><path d="M12 12.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 1 1-7 0z"></path><path d="M5 19.5A3.5 3.5 0 0 1 8.5 16H12v3.5a3.5 3.5 0 1 1-7 0z"></path><path d="M5 12.5A3.5 3.5 0 0 1 8.5 9H12v7H8.5A3.5 3.5 0 0 1 5 12.5z"></path></svg>',"file-minus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="9" y1="15" x2="15" y2="15"></line></svg>',"file-plus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="12" y1="18" x2="12" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></svg>',"file-text":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline></svg>',file:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline></svg>',film:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="20" rx="2.18" ry="2.18"></rect><line x1="7" y1="2" x2="7" y2="22"></line><line x1="17" y1="2" x2="17" y2="22"></line><line x1="2" y1="12" x2="22" y2="12"></line><line x1="2" y1="7" x2="7" y2="7"></line><line x1="2" y1="17" x2="7" y2="17"></line><line x1="17" y1="17" x2="22" y2="17"></line><line x1="17" y1="7" x2="22" y2="7"></line></svg>',filter:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon></svg>',flag:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z"></path><line x1="4" y1="22" x2="4" y2="15"></line></svg>',"folder-minus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path><line x1="9" y1="14" x2="15" y2="14"></line></svg>',"folder-plus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path><line x1="12" y1="11" x2="12" y2="17"></line><line x1="9" y1="14" x2="15" y2="14"></line></svg>',folder:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path></svg>',framer:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 16V9h14V2H5l14 14h-7m-7 0l7 7v-7m-7 0h7"></path></svg>',frown:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M16 16s-1.5-2-4-2-4 2-4 2"></path><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line></svg>',gift:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 12 20 22 4 22 4 12"></polyline><rect x="2" y="7" width="20" height="5"></rect><line x1="12" y1="22" x2="12" y2="7"></line><path d="M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z"></path><path d="M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z"></path></svg>',"git-branch":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="6" y1="3" x2="6" y2="15"></line><circle cx="18" cy="6" r="3"></circle><circle cx="6" cy="18" r="3"></circle><path d="M18 9a9 9 0 0 1-9 9"></path></svg>',"git-commit":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="4"></circle><line x1="1.05" y1="12" x2="7" y2="12"></line><line x1="17.01" y1="12" x2="22.96" y2="12"></line></svg>',"git-merge":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M6 21V9a9 9 0 0 0 9 9"></path></svg>',"git-pull-request":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" y1="9" x2="6" y2="21"></line></svg>',github:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg>',gitlab:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22.65 14.39L12 22.13 1.35 14.39a.84.84 0 0 1-.3-.94l1.22-3.78 2.44-7.51A.42.42 0 0 1 4.82 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.49h8.1l2.44-7.51A.42.42 0 0 1 18.6 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.51L23 13.45a.84.84 0 0 1-.35.94z"></path></svg>',globe:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="2" y1="12" x2="22" y2="12"></line><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"></path></svg>',grid:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="7" height="7"></rect><rect x="14" y="3" width="7" height="7"></rect><rect x="14" y="14" width="7" height="7"></rect><rect x="3" y="14" width="7" height="7"></rect></svg>',"hard-drive":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="12" x2="2" y2="12"></line><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path><line x1="6" y1="16" x2="6.01" y2="16"></line><line x1="10" y1="16" x2="10.01" y2="16"></line></svg>',hash:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="4" y1="9" x2="20" y2="9"></line><line x1="4" y1="15" x2="20" y2="15"></line><line x1="10" y1="3" x2="8" y2="21"></line><line x1="16" y1="3" x2="14" y2="21"></line></svg>',headphones:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 18v-6a9 9 0 0 1 18 0v6"></path><path d="M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z"></path></svg>',heart:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"></path></svg>',"help-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>',hexagon:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path></svg>',home:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg>',image:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle><polyline points="21 15 16 10 5 21"></polyline></svg>',inbox:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="22 12 16 12 14 15 10 15 8 12 2 12"></polyline><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path></svg>',info:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>',instagram:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="20" rx="5" ry="5"></rect><path d="M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z"></path><line x1="17.5" y1="6.5" x2="17.51" y2="6.5"></line></svg>',italic:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="4" x2="10" y2="4"></line><line x1="14" y1="20" x2="5" y2="20"></line><line x1="15" y1="4" x2="9" y2="20"></line></svg>',key:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4"></path></svg>',layers:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 2 7 12 12 22 7 12 2"></polygon><polyline points="2 17 12 22 22 17"></polyline><polyline points="2 12 12 17 22 12"></polyline></svg>',layout:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line></svg>',"life-buoy":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="4.93" y1="4.93" x2="9.17" y2="9.17"></line><line x1="14.83" y1="14.83" x2="19.07" y2="19.07"></line><line x1="14.83" y1="9.17" x2="19.07" y2="4.93"></line><line x1="14.83" y1="9.17" x2="18.36" y2="5.64"></line><line x1="4.93" y1="19.07" x2="9.17" y2="14.83"></line></svg>',"link-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg>',link:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg>',linkedin:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect x="2" y="9" width="4" height="12"></rect><circle cx="4" cy="4" r="2"></circle></svg>',list:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg>',loader:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="2" x2="12" y2="6"></line><line x1="12" y1="18" x2="12" y2="22"></line><line x1="4.93" y1="4.93" x2="7.76" y2="7.76"></line><line x1="16.24" y1="16.24" x2="19.07" y2="19.07"></line><line x1="2" y1="12" x2="6" y2="12"></line><line x1="18" y1="12" x2="22" y2="12"></line><line x1="4.93" y1="19.07" x2="7.76" y2="16.24"></line><line x1="16.24" y1="7.76" x2="19.07" y2="4.93"></line></svg>',lock:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 10 0v4"></path></svg>',"log-in":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4"></path><polyline points="10 17 15 12 10 7"></polyline><line x1="15" y1="12" x2="3" y2="12"></line></svg>',"log-out":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" y1="12" x2="9" y2="12"></line></svg>',mail:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline></svg>',"map-pin":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"></path><circle cx="12" cy="10" r="3"></circle></svg>',map:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6"></polygon><line x1="8" y1="2" x2="8" y2="18"></line><line x1="16" y1="6" x2="16" y2="22"></line></svg>',"maximize-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" y1="3" x2="14" y2="10"></line><line x1="3" y1="21" x2="10" y2="14"></line></svg>',maximize:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"></path></svg>',meh:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="8" y1="15" x2="16" y2="15"></line><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line></svg>',menu:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line></svg>',"message-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z"></path></svg>',"message-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg>',"mic-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="1" y1="1" x2="23" y2="23"></line><path d="M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6"></path><path d="M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line></svg>',mic:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line></svg>',"minimize-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 14 10 14 10 20"></polyline><polyline points="20 10 14 10 14 4"></polyline><line x1="14" y1="10" x2="21" y2="3"></line><line x1="3" y1="21" x2="10" y2="14"></line></svg>',minimize:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"></path></svg>',"minus-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="8" y1="12" x2="16" y2="12"></line></svg>',"minus-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="8" y1="12" x2="16" y2="12"></line></svg>',minus:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line></svg>',monitor:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="3" width="20" height="14" rx="2" ry="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line></svg>',moon:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>',"more-horizontal":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg>',"more-vertical":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"></circle><circle cx="12" cy="5" r="1"></circle><circle cx="12" cy="19" r="1"></circle></svg>',"mouse-pointer":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z"></path><path d="M13 13l6 6"></path></svg>',move:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="5 9 2 12 5 15"></polyline><polyline points="9 5 12 2 15 5"></polyline><polyline points="15 19 12 22 9 19"></polyline><polyline points="19 9 22 12 19 15"></polyline><line x1="2" y1="12" x2="22" y2="12"></line><line x1="12" y1="2" x2="12" y2="22"></line></svg>',music:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18V5l12-2v13"></path><circle cx="6" cy="18" r="3"></circle><circle cx="18" cy="16" r="3"></circle></svg>',"navigation-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 19 21 12 17 5 21 12 2"></polygon></svg>',navigation:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="3 11 22 2 13 21 11 13 3 11"></polygon></svg>',octagon:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon></svg>',package:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="16.5" y1="9.4" x2="7.5" y2="4.21"></line><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>',paperclip:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path></svg>',"pause-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="10" y1="15" x2="10" y2="9"></line><line x1="14" y1="15" x2="14" y2="9"></line></svg>',pause:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="6" y="4" width="4" height="16"></rect><rect x="14" y="4" width="4" height="16"></rect></svg>',"pen-tool":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19l7-7 3 3-7 7-3-3z"></path><path d="M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z"></path><path d="M2 2l7.586 7.586"></path><circle cx="11" cy="11" r="2"></circle></svg>',percent:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="5" x2="5" y2="19"></line><circle cx="6.5" cy="6.5" r="2.5"></circle><circle cx="17.5" cy="17.5" r="2.5"></circle></svg>',"phone-call":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15.05 5A5 5 0 0 1 19 8.95M15.05 1A9 9 0 0 1 23 8.94m-1 7.98v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-forwarded":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="19 1 23 5 19 9"></polyline><line x1="15" y1="5" x2="23" y2="5"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-incoming":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 2 16 8 22 8"></polyline><line x1="23" y1="1" x2="16" y2="8"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-missed":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="23" y1="1" x2="17" y2="7"></line><line x1="17" y1="1" x2="23" y2="7"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67m-2.67-3.34a19.79 19.79 0 0 1-3.07-8.63A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91"></path><line x1="23" y1="1" x2="1" y2="23"></line></svg>',"phone-outgoing":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 7 23 1 17 1"></polyline><line x1="16" y1="8" x2="23" y2="1"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',phone:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"pie-chart":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.21 15.89A10 10 0 1 1 8 2.83"></path><path d="M22 12A10 10 0 0 0 12 2v10z"></path></svg>',"play-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polygon points="10 8 16 12 10 16 10 8"></polygon></svg>',play:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="5 3 19 12 5 21 5 3"></polygon></svg>',"plus-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line></svg>',"plus-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line></svg>',plus:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line></svg>',pocket:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 3h16a2 2 0 0 1 2 2v6a10 10 0 0 1-10 10A10 10 0 0 1 2 11V5a2 2 0 0 1 2-2z"></path><polyline points="8 10 12 14 16 10"></polyline></svg>',power:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18.36 6.64a9 9 0 1 1-12.73 0"></path><line x1="12" y1="2" x2="12" y2="12"></line></svg>',printer:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 6 2 18 2 18 9"></polyline><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"></path><rect x="6" y="14" width="12" height="8"></rect></svg>',radio:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="2"></circle><path d="M16.24 7.76a6 6 0 0 1 0 8.49m-8.48-.01a6 6 0 0 1 0-8.49m11.31-2.82a10 10 0 0 1 0 14.14m-14.14 0a10 10 0 0 1 0-14.14"></path></svg>',"refresh-ccw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="1 4 1 10 7 10"></polyline><polyline points="23 20 23 14 17 14"></polyline><path d="M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15"></path></svg>',"refresh-cw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 4 23 10 17 10"></polyline><polyline points="1 20 1 14 7 14"></polyline><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path></svg>',repeat:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="17 1 21 5 17 9"></polyline><path d="M3 11V9a4 4 0 0 1 4-4h14"></path><polyline points="7 23 3 19 7 15"></polyline><path d="M21 13v2a4 4 0 0 1-4 4H3"></path></svg>',rewind:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 19 2 12 11 5 11 19"></polygon><polygon points="22 19 13 12 22 5 22 19"></polygon></svg>',"rotate-ccw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="1 4 1 10 7 10"></polyline><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"></path></svg>',"rotate-cw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 4 23 10 17 10"></polyline><path d="M20.49 15a9 9 0 1 1-2.12-9.36L23 10"></path></svg>',rss:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 11a9 9 0 0 1 9 9"></path><path d="M4 4a16 16 0 0 1 16 16"></path><circle cx="5" cy="19" r="1"></circle></svg>',save:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"></path><polyline points="17 21 17 13 7 13 7 21"></polyline><polyline points="7 3 7 8 15 8"></polyline></svg>',scissors:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="6" cy="6" r="3"></circle><circle cx="6" cy="18" r="3"></circle><line x1="20" y1="4" x2="8.12" y2="15.88"></line><line x1="14.47" y1="14.48" x2="20" y2="20"></line><line x1="8.12" y1="8.12" x2="12" y2="12"></line></svg>',search:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>',send:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon></svg>',server:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2" ry="2"></rect><rect x="2" y="14" width="20" height="8" rx="2" ry="2"></rect><line x1="6" y1="6" x2="6.01" y2="6"></line><line x1="6" y1="18" x2="6.01" y2="18"></line></svg>',settings:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg>',"share-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="5" r="3"></circle><circle cx="6" cy="12" r="3"></circle><circle cx="18" cy="19" r="3"></circle><line x1="8.59" y1="13.51" x2="15.42" y2="17.49"></line><line x1="15.41" y1="6.51" x2="8.59" y2="10.49"></line></svg>',share:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"></path><polyline points="16 6 12 2 8 6"></polyline><line x1="12" y1="2" x2="12" y2="15"></line></svg>',"shield-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19.69 14a6.9 6.9 0 0 0 .31-2V5l-8-3-3.16 1.18"></path><path d="M4.73 4.73L4 5v7c0 6 8 10 8 10a20.29 20.29 0 0 0 5.62-4.38"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',shield:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>',"shopping-bag":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z"></path><line x1="3" y1="6" x2="21" y2="6"></line><path d="M16 10a4 4 0 0 1-8 0"></path></svg>',"shopping-cart":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="9" cy="21" r="1"></circle><circle cx="20" cy="21" r="1"></circle><path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path></svg>',shuffle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 3 21 3 21 8"></polyline><line x1="4" y1="20" x2="21" y2="3"></line><polyline points="21 16 21 21 16 21"></polyline><line x1="15" y1="15" x2="21" y2="21"></line><line x1="4" y1="4" x2="9" y2="9"></line></svg>',sidebar:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="3" x2="9" y2="21"></line></svg>',"skip-back":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="19 20 9 12 19 4 19 20"></polygon><line x1="5" y1="19" x2="5" y2="5"></line></svg>',"skip-forward":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="5 4 15 12 5 20 5 4"></polygon><line x1="19" y1="5" x2="19" y2="19"></line></svg>',slack:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.5 10c-.83 0-1.5-.67-1.5-1.5v-5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5z"></path><path d="M20.5 10H19V8.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z"></path><path d="M9.5 14c.83 0 1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5S8 21.33 8 20.5v-5c0-.83.67-1.5 1.5-1.5z"></path><path d="M3.5 14H5v1.5c0 .83-.67 1.5-1.5 1.5S2 16.33 2 15.5 2.67 14 3.5 14z"></path><path d="M14 14.5c0-.83.67-1.5 1.5-1.5h5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5h-5c-.83 0-1.5-.67-1.5-1.5z"></path><path d="M15.5 19H14v1.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5-.67-1.5-1.5-1.5z"></path><path d="M10 9.5C10 8.67 9.33 8 8.5 8h-5C2.67 8 2 8.67 2 9.5S2.67 11 3.5 11h5c.83 0 1.5-.67 1.5-1.5z"></path><path d="M8.5 5H10V3.5C10 2.67 9.33 2 8.5 2S7 2.67 7 3.5 7.67 5 8.5 5z"></path></svg>',slash:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="4.93" y1="4.93" x2="19.07" y2="19.07"></line></svg>',sliders:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="4" y1="21" x2="4" y2="14"></line><line x1="4" y1="10" x2="4" y2="3"></line><line x1="12" y1="21" x2="12" y2="12"></line><line x1="12" y1="8" x2="12" y2="3"></line><line x1="20" y1="21" x2="20" y2="16"></line><line x1="20" y1="12" x2="20" y2="3"></line><line x1="1" y1="14" x2="7" y2="14"></line><line x1="9" y1="8" x2="15" y2="8"></line><line x1="17" y1="16" x2="23" y2="16"></line></svg>',smartphone:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="5" y="2" width="14" height="20" rx="2" ry="2"></rect><line x1="12" y1="18" x2="12.01" y2="18"></line></svg>',smile:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M8 14s1.5 2 4 2 4-2 4-2"></path><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line></svg>',speaker:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="2" width="16" height="20" rx="2" ry="2"></rect><circle cx="12" cy="14" r="4"></circle><line x1="12" y1="6" x2="12.01" y2="6"></line></svg>',square:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect></svg>',star:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon></svg>',"stop-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><rect x="9" y="9" width="6" height="6"></rect></svg>',sun:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>',sunrise:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 18a5 5 0 0 0-10 0"></path><line x1="12" y1="2" x2="12" y2="9"></line><line x1="4.22" y1="10.22" x2="5.64" y2="11.64"></line><line x1="1" y1="18" x2="3" y2="18"></line><line x1="21" y1="18" x2="23" y2="18"></line><line x1="18.36" y1="11.64" x2="19.78" y2="10.22"></line><line x1="23" y1="22" x2="1" y2="22"></line><polyline points="8 6 12 2 16 6"></polyline></svg>',sunset:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 18a5 5 0 0 0-10 0"></path><line x1="12" y1="9" x2="12" y2="2"></line><line x1="4.22" y1="10.22" x2="5.64" y2="11.64"></line><line x1="1" y1="18" x2="3" y2="18"></line><line x1="21" y1="18" x2="23" y2="18"></line><line x1="18.36" y1="11.64" x2="19.78" y2="10.22"></line><line x1="23" y1="22" x2="1" y2="22"></line><polyline points="16 5 12 9 8 5"></polyline></svg>',table:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18"></path></svg>',tablet:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="2" width="16" height="20" rx="2" ry="2"></rect><line x1="12" y1="18" x2="12.01" y2="18"></line></svg>',tag:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path><line x1="7" y1="7" x2="7.01" y2="7"></line></svg>',target:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="6"></circle><circle cx="12" cy="12" r="2"></circle></svg>',terminal:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line></svg>',thermometer:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 14.76V3.5a2.5 2.5 0 0 0-5 0v11.26a4.5 4.5 0 1 0 5 0z"></path></svg>',"thumbs-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17"></path></svg>',"thumbs-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3"></path></svg>',"toggle-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="5" width="22" height="14" rx="7" ry="7"></rect><circle cx="8" cy="12" r="3"></circle></svg>',"toggle-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="5" width="22" height="14" rx="7" ry="7"></rect><circle cx="16" cy="12" r="3"></circle></svg>',tool:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"></path></svg>',"trash-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path><line x1="10" y1="11" x2="10" y2="17"></line><line x1="14" y1="11" x2="14" y2="17"></line></svg>',trash:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path></svg>',trello:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><rect x="7" y="7" width="3" height="9"></rect><rect x="14" y="7" width="3" height="5"></rect></svg>',"trending-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 18 13.5 8.5 8.5 13.5 1 6"></polyline><polyline points="17 18 23 18 23 12"></polyline></svg>',"trending-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 6 13.5 15.5 8.5 10.5 1 18"></polyline><polyline points="17 6 23 6 23 12"></polyline></svg>',triangle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path></svg>',truck:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="3" width="15" height="13"></rect><polygon points="16 8 20 8 23 11 23 16 16 16 16 8"></polygon><circle cx="5.5" cy="18.5" r="2.5"></circle><circle cx="18.5" cy="18.5" r="2.5"></circle></svg>',tv:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="7" width="20" height="15" rx="2" ry="2"></rect><polyline points="17 2 12 7 7 2"></polyline></svg>',twitch:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 2H3v16h5v4l4-4h5l4-4V2zm-10 9V7m5 4V7"></path></svg>',twitter:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"></path></svg>',type:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 7 4 4 20 4 20 7"></polyline><line x1="9" y1="20" x2="15" y2="20"></line><line x1="12" y1="4" x2="12" y2="20"></line></svg>',umbrella:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M23 12a11.05 11.05 0 0 0-22 0zm-5 7a3 3 0 0 1-6 0v-7"></path></svg>',underline:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 3v7a6 6 0 0 0 6 6 6 6 0 0 0 6-6V3"></path><line x1="4" y1="21" x2="20" y2="21"></line></svg>',unlock:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 9.9-1"></path></svg>',"upload-cloud":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 16 12 12 8 16"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3"></path><polyline points="16 16 12 12 8 16"></polyline></svg>',upload:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="17 8 12 3 7 8"></polyline><line x1="12" y1="3" x2="12" y2="15"></line></svg>',"user-check":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><polyline points="17 11 19 13 23 9"></polyline></svg>',"user-minus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="23" y1="11" x2="17" y2="11"></line></svg>',"user-plus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="20" y1="8" x2="20" y2="14"></line><line x1="23" y1="11" x2="17" y2="11"></line></svg>',"user-x":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="18" y1="8" x2="23" y2="13"></line><line x1="23" y1="8" x2="18" y2="13"></line></svg>',user:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg>',users:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg>',"video-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 16v1a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h2m5.66 0H14a2 2 0 0 1 2 2v3.34l1 1L23 7v10"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',video:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg>',voicemail:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="5.5" cy="11.5" r="4.5"></circle><circle cx="18.5" cy="11.5" r="4.5"></circle><line x1="5.5" y1="16" x2="18.5" y2="16"></line></svg>',"volume-1":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M15.54 8.46a5 5 0 0 1 0 7.07"></path></svg>',"volume-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"></path></svg>',"volume-x":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><line x1="23" y1="9" x2="17" y2="15"></line><line x1="17" y1="9" x2="23" y2="15"></line></svg>',volume:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon></svg>',watch:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="7"></circle><polyline points="12 9 12 12 13.5 13.5"></polyline><path d="M16.51 17.35l-.35 3.83a2 2 0 0 1-2 1.82H9.83a2 2 0 0 1-2-1.82l-.35-3.83m.01-10.7l.35-3.83A2 2 0 0 1 9.83 1h4.35a2 2 0 0 1 2 1.82l.35 3.83"></path></svg>',"wifi-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="1" y1="1" x2="23" y2="23"></line><path d="M16.72 11.06A10.94 10.94 0 0 1 19 12.55"></path><path d="M5 12.55a10.94 10.94 0 0 1 5.17-2.39"></path><path d="M10.71 5.05A16 16 0 0 1 22.58 9"></path><path d="M1.42 9a15.91 15.91 0 0 1 4.7-2.88"></path><path d="M8.53 16.11a6 6 0 0 1 6.95 0"></path><line x1="12" y1="20" x2="12.01" y2="20"></line></svg>',wifi:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12.55a11 11 0 0 1 14.08 0"></path><path d="M1.42 9a16 16 0 0 1 21.16 0"></path><path d="M8.53 16.11a6 6 0 0 1 6.95 0"></path><line x1="12" y1="20" x2="12.01" y2="20"></line></svg>',wind:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9.59 4.59A2 2 0 1 1 11 8H2m10.59 11.41A2 2 0 1 0 14 16H2m15.73-8.27A2.5 2.5 0 1 1 19.5 12H2"></path></svg>',"x-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>',"x-octagon":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>',"x-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="9" x2="15" y2="15"></line><line x1="15" y1="9" x2="9" y2="15"></line></svg>',x:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>',youtube:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z"></path><polygon points="9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02"></polygon></svg>',"zap-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="12.41 6.75 13 2 10.57 4.92"></polyline><polyline points="18.57 12.91 21 10 15.66 10"></polyline><polyline points="8 8 3 14 12 14 11 22 16 16"></polyline><line x1="1" y1="1" x2="23" y2="23"></line></svg>',zap:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg>',"zoom-in":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>',"zoom-out":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>'};function iw(s){return Bmt[s]||null}var Hhe={compact:{spacing:{xs:2,sm:4,md:6,lg:8,xl:12},button:{paddingX:8,paddingY:4,radius:4,fontSize:12,fontWeight:500},input:{paddingX:8,paddingY:4,radius:4,fontSize:12},card:{padding:8,radius:6,strokeWidth:1},heading:{fontSize:16,fontWeight:600,marginBottom:6},text:{fontSize:12,lineHeight:1.4},badge:{paddingX:6,paddingY:2,radius:"pill",fontSize:10},table:{cellPaddingX:8,cellPaddingY:4,headerFontWeight:600,borderWidth:1}},normal:{spacing:{xs:4,sm:8,md:12,lg:16,xl:24},button:{paddingX:12,paddingY:6,radius:6,fontSize:14,fontWeight:500},input:{paddingX:12,paddingY:6,radius:6,fontSize:14},card:{padding:12,radius:8,strokeWidth:1},heading:{fontSize:20,fontWeight:600,marginBottom:8},text:{fontSize:14,lineHeight:1.5},badge:{paddingX:8,paddingY:3,radius:"pill",fontSize:12},table:{cellPaddingX:12,cellPaddingY:6,headerFontWeight:600,borderWidth:1}},comfortable:{spacing:{xs:6,sm:12,md:16,lg:24,xl:32},button:{paddingX:16,paddingY:8,radius:8,fontSize:16,fontWeight:500},input:{paddingX:16,paddingY:8,radius:8,fontSize:16},card:{padding:16,radius:12,strokeWidth:1},heading:{fontSize:24,fontWeight:600,marginBottom:12},text:{fontSize:16,lineHeight:1.6},badge:{paddingX:12,paddingY:4,radius:"pill",fontSize:14},table:{cellPaddingX:16,cellPaddingY:8,headerFontWeight:600,borderWidth:1}}};function Hmt(s){const e=s.density||"normal";return Hhe[e]||Hhe.normal}var Wmt={light:{bg:"#F8FAFC",cardBg:"#FFFFFF",border:"#E2E8F0",text:"#1E293B",textMuted:"#64748B",primary:"#3B82F6",primaryHover:"#2563EB",primaryLight:"#EFF6FF"},dark:{bg:"#0F172A",cardBg:"#1E293B",border:"#334155",text:"#F1F5F9",textMuted:"#94A3B8",primary:"#60A5FA",primaryHover:"#3B82F6",primaryLight:"#1E3A8A"}},Vmt=class{constructor(s,e,t){this.renderedNodeIds=new Set,this.fontFamily="system-ui, -apple-system, sans-serif",this.ir=s,this.layout=e,this.selectedScreenName=t?.screenName;const i=t?.theme||s.project.style.theme||"light";this.tokens=Hmt(s.project.style),this.options={width:t?.width||1280,height:t?.height||720,theme:i,includeLabels:t?.includeLabels??!0,screenName:t?.screenName},this.renderTheme=Wmt[this.options.theme],this.colorResolver=new Fmt,s.project.mocks&&Object.keys(s.project.mocks).length>0&&Wp.setCustomMocks(s.project.mocks),s.project.colors&&Object.keys(s.project.colors).length>0&&this.colorResolver.setCustomColors(s.project.colors)}getAvailableScreens(){return this.ir.project.screens.map(s=>({name:s.name,id:s.id}))}getSelectedScreen(){let s=this.ir.project.screens[0],e=s?.name||"Unknown";if(this.selectedScreenName){const t=this.ir.project.screens.find(i=>i.name.toLowerCase()===this.selectedScreenName.toLowerCase());t&&(s=t,e=t.name)}return{screen:s,name:e}}render(){const{screen:s}=this.getSelectedScreen();if(!s)return"<svg></svg>";const e=s.root.ref,t=[];this.renderedNodeIds.clear(),this.renderNode(e,t);const i=this.calculateContentHeight(),n=Math.max(this.options.height,i);let o=this.renderTheme.bg;return s.background&&(o=this.colorResolver.resolveColor(s.background,this.renderTheme.bg)),`<svg width="${this.options.width}" height="${n}" viewBox="0 0 ${this.options.width} ${n}" xmlns="http://www.w3.org/2000/svg">
1067
+ `),o=t*.6,r=Math.max(e,o),a=Math.max(1,Math.floor(r/o)),l=[];for(const c of n){if(!c.trim()){l.push("");continue}const d=c.split(/\s+/).filter(Boolean);let h="";for(const f of d){const p=h?`${h} ${f}`:f;if(p.length<=a){h=p;continue}if(h&&(l.push(h),h=""),f.length<=a){h=f;continue}for(let m=0;m<f.length;m+=a)l.push(f.slice(m,m+a))}h&&l.push(h)}return l.length>0?l:[""]}getIntrinsicComponentHeight(s,e){if(s.kind!=="component")return this.getComponentHeight();const t=s.componentType==="Input"||s.componentType==="Textarea"||s.componentType==="Select"?this.getControlLabelOffset(String(s.props.label||"")):0;if(s.componentType==="Image"){const i=String(s.props.placeholder||"landscape"),o={landscape:16/9,portrait:2/3,square:1,icon:1,avatar:1}[i]||16/9,r=Number(s.props.height);return!isNaN(r)&&r>0?r:e&&e>0?e/o:200}if(s.componentType==="Table"){const i=Number(s.props.height);if(!isNaN(i)&&i>0)return i;const n=Number(s.props.rows||s.props.rowsMock||5),o=!!s.props.title,r=String(s.props.pagination)==="true",a=44,l=36,c=o?32:0,d=r?64:0;return c+a+n*l+d}if(s.componentType==="Heading"){const i=String(s.props.text||"Heading"),{fontSize:n,lineHeight:o}=this.getHeadingMetricsForDensity(s.props.level),r=Math.ceil(n*o),a=e&&e>0?e:200,l=this.wrapTextToLines(i,a,n),c=Math.max(1,l.length)*r,d=this.style.density||"normal",h=Hwe(s.props.spacing,d);return h===null?Math.max(this.getComponentHeight(),c):Math.max(1,Math.ceil(c+h*2))}if(s.componentType==="Text"){const i=String(s.props.content||""),{fontSize:n,lineHeight:o}=this.getTextMetricsForDensity(),r=Math.ceil(n*o),a=e&&e>0?e:200,l=this.wrapTextToLines(i,a,n),c=Math.max(1,l.length)*r;return Math.max(this.getComponentHeight(),c)}if(s.componentType==="Alert"){const i=String(s.props.title||""),n=String(s.props.text||"Alert message"),o=13,r=Math.ceil(o*1.25),a=Math.ceil(o*1.4),l=Math.max(40,(e&&e>0?e:280)-24),c=i.trim().length>0?this.wrapTextToLines(i,l,o):[],d=this.wrapTextToLines(n,l,o),h=12,f=12,p=c.length>0?6:0,m=h+c.length*r+p+Math.max(1,d.length)*a+f;return Math.max(this.getComponentHeight(),m)}if(s.componentType==="SidebarMenu"){const n=String(s.props.items||"Item 1,Item 2,Item 3").split(",").map(a=>a.trim()).filter(Boolean),o=n.length>0?n.length:3;return Math.max(this.getComponentHeight(),o*40)}if(s.componentType==="Textarea")return 100+t;if(s.componentType==="Modal")return 300;if(s.componentType==="Card"||s.componentType==="StatCard")return 120;if(s.componentType==="Chart"||s.componentType==="ChartPlaceholder")return 250;if(s.componentType==="List"){const i=String(s.props.items||"").split(",").map(d=>d.trim()).filter(Boolean),n=Number(s.props.itemsMock??4),o=Number.isFinite(n)?Math.max(0,Math.floor(n)):4,r=i.length>0?i.length:o,c=(String(s.props.title||"").trim().length>0?40:0)+r*36;return Math.max(this.getComponentHeight(),c)}return s.componentType==="Topbar"?56:s.componentType==="Divider"?1:s.componentType==="Separate"?this.getSeparateSize(s):s.componentType==="Input"||s.componentType==="Select"?this.getComponentHeight()+t:this.getComponentHeight()}getControlLabelOffset(s){return s.trim().length>0?18:0}getIntrinsicComponentWidth(s){if(!s||s.kind!=="component")return 120;if(s.componentType==="Icon"){const e=String(s.props.size||"md");return Pwe(e,this.style.density||"normal")}if(s.componentType==="IconButton"){const e=String(s.props.size||"md");return Fwe(e,this.style.density||"normal")}if(s.componentType==="Checkbox"||s.componentType==="Radio")return 24;if(s.componentType==="Separate")return this.getSeparateSize(s);if(s.componentType==="Button"||s.componentType==="Link"){const e=String(s.props.text||""),{fontSize:t,paddingX:i}=this.getButtonMetricsForDensity(),n=this.estimateTextWidth(e,t);return Math.max(60,Math.ceil(n+i*2))}if(s.componentType==="Label"||s.componentType==="Text"){const e=String(s.props.content||s.props.text||"");return Math.max(60,e.length*8+16)}if(s.componentType==="Heading"){const e=String(s.props.text||""),{fontSize:t}=this.getHeadingMetricsForDensity(s.props.level);return Math.max(80,Math.ceil(e.length*t*.6+16))}if(s.componentType==="Input"||s.componentType==="Select"||s.componentType==="Textarea")return 200;if(s.componentType==="Image"){const e=String(s.props.placeholder||"landscape");return{landscape:300,portrait:200,square:200,icon:64,avatar:64}[e]||300}if(s.componentType==="Table")return 400;if(s.componentType==="StatCard"||s.componentType==="Card")return 280;if(s.componentType==="SidebarMenu")return 260;if(s.componentType==="Badge"||s.componentType==="Chip"){const e=String(s.props.text||"");return Math.max(50,e.length*7+16)}return 120}calculateChildHeight(s,e,t){if(s===0)return 0;const i=t*(s-1);return(e-i)/s}calculateChildWidth(s,e,t){if(s===0)return 0;const i=t*(s-1);return(e-i)/s}estimateTextWidth(s,e){let t=0;for(const i of s)/\s/.test(i)?t+=e*.33:/[.,:;'"`|!iIl]/.test(i)?t+=e*.32:/[MW@#%&]/.test(i)?t+=e*.9:t+=e*.6;return t}parseBooleanProp(s,e=!1){if(typeof s=="boolean")return s;if(typeof s=="string"){const t=s.toLowerCase().trim();if(t==="true")return!0;if(t==="false")return!1}return e}adjustNodeYPositions(s,e){const t=this.nodes[s];t&&t.kind==="container"&&t.children&&t.children.forEach(i=>{const n=this.result[i.ref];n&&(n.y+=e,this.adjustNodeYPositions(i.ref,e))})}};function Tmt(s){return new Dmt(s).calculate()}var Fhe=["Juan","María","Carlos","Sofia","Alex","Luna","Diego","Emma"],Bhe=["García","López","Rodríguez","Martínez","Pérez","Sánchez","Torres","Flores"],Nmt=["Active","Pending","Completed","On Hold","Review","Approved"],Rmt=["Lead","Qualified","Proposal","Negotiation","Won","Lost"],Mmt=["juan@example.com","maria@example.com","carlos@example.com","sofia@example.com","alex@example.com","luna@example.com"],Amt=["Buenos Aires","Madrid","Bogota","Santiago","Ciudad de Mexico","Lima","Barcelona","Monterrey"],Omt=["Laptop Pro","Wireless Mouse","Mechanical Keyboard","4K Monitor","USB-C Hub","Noise-Canceling Headphones"],Pmt=["Paid","Pending","Failed","Refunded"],Wp=class{static setCustomMocks(s){this.customMocks={};for(const[e,t]of Object.entries(s)){let i=[];typeof t=="string"?i=t.split(",").map(n=>n.trim()).filter(n=>n.length>0):Array.isArray(t)&&(i=t.map(n=>typeof n=="string"?n.trim():"").filter(n=>n.length>0)),i.length>0&&(this.customMocks[e.toLowerCase()]=i)}}static getMockValue(s,e,t=!1){const i=s.toLowerCase().trim();if(this.customMocks[i])return this.pick(this.customMocks[i],e,t);switch(i){case"id":return t?this.randomInt(1,9999).toString():(e+1).toString();case"name":case"owner":case"contact":case"requester":case"user":return this.pick(Fhe,e,t);case"last_name":return this.pick(Bhe,e,t);case"full_name":case"fullname":return`${this.pick(Fhe,e,t)} ${this.pick(Bhe,e+3,t)}`;case"email":return this.pick(Mmt,e,t);case"status":return this.pick(Nmt,e,t);case"stage":return this.pick(Rmt,e,t);case"payment_status":return this.pick(Pmt,e,t);case"city":return this.pick(Amt,e,t);case"price":case"cost":return t?`$${(this.randomInt(5e3,25e4)/100).toFixed(2)}`:`$${((e+1)*99.99).toFixed(2)}`;case"amount":return t?`$${this.randomInt(1e3,95e3).toLocaleString()}`:`$${((e+1)*5e3).toLocaleString()}`;case"account":case"company":return`Company ${t?this.randomInt(1,100):e+1}`;case"product":return this.pick(Omt,e,t);case"country":case"region":return this.pick(["USA","Spain","Mexico","Argentina","Chile"],e,t);case"device":return this.pick(["Desktop","Mobile","Tablet"],e,t);case"time":case"updated":return`${t?this.randomInt(1,24):2+e%20}h ago`;case"priority":return this.pick(["High","Medium","Low"],e,t);default:return i.startsWith("literal:")?s.substring(8):`Item ${e+1}`}}static inferMockTypeFromColumn(s){const e=s.toLowerCase().trim().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");return e&&(this.HEADER_TO_MOCK[e]||e)||"item"}static generateMockList(s,e,t=!1){const i=[];for(let n=0;n<e;n++)i.push(this.getMockValue(s,n,t));return i}static generateMockRow(s,e,t=!1){const i=s.split(",").map(o=>o.trim()),n={};return i.forEach(o=>{const r=this.inferMockTypeFromColumn(o);n[o]=this.getMockValue(r,e,t)}),n}static generateMockRows(s,e,t=!1){const i=[];for(let n=0;n<e;n++)i.push(this.generateMockRow(s,n,t));return i}static pick(s,e,t){if(s.length===0)return"";if(t){const i=this.randomInt(0,s.length-1);return s[i]}return s[e%s.length]}static randomInt(s,e){return Math.floor(Math.random()*(e-s+1))+s}};Wp.customMocks={};Wp.HEADER_TO_MOCK={id:"id",user:"name",usuario:"name",name:"name",nombre:"name",fullname:"full_name",full_name:"full_name",email:"email",correo:"email",city:"city",ciudad:"city",country:"country",pais:"country",region:"region",amount:"amount",importe:"amount",total:"amount",price:"price",costo:"price",status:"status",estado:"status",payment_status:"payment_status",stage:"stage",etapa:"stage",company:"company",account:"account",product:"product",producto:"product",device:"device",priority:"priority",time:"time",updated:"updated",owner:"owner",contact:"contact",requester:"requester"};var Fmt=class{constructor(){this.customColors={},this.namedColors={white:"#FFFFFF",black:"#000000",gray:"#6B7280",slate:"#64748B",zinc:"#71717A",red:"#EF4444",orange:"#F97316",yellow:"#EAB308",lime:"#84CC16",green:"#22C55E",emerald:"#10B981",teal:"#14B8A6",cyan:"#06B6D4",blue:"#3B82F6",indigo:"#6366F1",violet:"#8B5CF6",purple:"#A855F7",fuchsia:"#D946EF",pink:"#EC4899",rose:"#F43F5E","red-light":"#FEE2E2","blue-light":"#DBEAFE","green-light":"#DCFCE7"}}setCustomColors(s){this.customColors=s||{}}hasColor(s){if(!s)return!1;const e="__unresolved__";return this.resolveColor(s,e)!==e}resolveColor(s,e="#000000"){return this.resolveColorInternal(s,e,new Set)}resolveColorInternal(s,e,t){if(!s||t.has(s))return e;if(t.add(s),this.customColors[s]){const i=this.customColors[s];return this.isValidHex(i)?i:this.namedColors[i]?this.namedColors[i]:this.customColors[i]?this.resolveColorInternal(i,e,t):e}return this.namedColors[s]?this.namedColors[s]:this.isValidHex(s)?s:e}isValidHex(s){return/^#[0-9A-Fa-f]{6}$/.test(s)}validateHex(s){return this.isValidHex(s)?s:void 0}},Bmt={activity:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"></polyline></svg>',airplay:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 17H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-1"></path><polygon points="12 15 17 21 7 21 12 15"></polygon></svg>',"alert-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line></svg>',"alert-octagon":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line></svg>',"alert-triangle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>',"align-center":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="10" x2="6" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="18" y1="18" x2="6" y2="18"></line></svg>',"align-justify":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="21" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="21" y1="18" x2="3" y2="18"></line></svg>',"align-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="17" y1="10" x2="3" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="17" y1="18" x2="3" y2="18"></line></svg>',"align-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="21" y1="10" x2="7" y2="10"></line><line x1="21" y1="6" x2="3" y2="6"></line><line x1="21" y1="14" x2="3" y2="14"></line><line x1="21" y1="18" x2="7" y2="18"></line></svg>',anchor:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="5" r="3"></circle><line x1="12" y1="22" x2="12" y2="8"></line><path d="M5 12H2a10 10 0 0 0 20 0h-3"></path></svg>',aperture:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="14.31" y1="8" x2="20.05" y2="17.94"></line><line x1="9.69" y1="8" x2="21.17" y2="8"></line><line x1="7.38" y1="12" x2="13.12" y2="2.06"></line><line x1="9.69" y1="16" x2="3.95" y2="6.06"></line><line x1="14.31" y1="16" x2="2.83" y2="16"></line><line x1="16.62" y1="12" x2="10.88" y2="21.94"></line></svg>',archive:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="21 8 21 21 3 21 3 8"></polyline><rect x="1" y="3" width="22" height="5"></rect><line x1="10" y1="12" x2="14" y2="12"></line></svg>',"arrow-down-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="8 12 12 16 16 12"></polyline><line x1="12" y1="8" x2="12" y2="16"></line></svg>',"arrow-down-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="17" y1="7" x2="7" y2="17"></line><polyline points="17 17 7 17 7 7"></polyline></svg>',"arrow-down-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="7" x2="17" y2="17"></line><polyline points="17 7 17 17 7 17"></polyline></svg>',"arrow-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="5" x2="12" y2="19"></line><polyline points="19 12 12 19 5 12"></polyline></svg>',"arrow-left-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 8 8 12 12 16"></polyline><line x1="16" y1="12" x2="8" y2="12"></line></svg>',"arrow-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="12" x2="5" y2="12"></line><polyline points="12 19 5 12 12 5"></polyline></svg>',"arrow-right-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 16 16 12 12 8"></polyline><line x1="8" y1="12" x2="16" y2="12"></line></svg>',"arrow-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line><polyline points="12 5 19 12 12 19"></polyline></svg>',"arrow-up-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="16 12 12 8 8 12"></polyline><line x1="12" y1="16" x2="12" y2="8"></line></svg>',"arrow-up-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="17" y1="17" x2="7" y2="7"></line><polyline points="7 17 7 7 17 7"></polyline></svg>',"arrow-up-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="7" y1="17" x2="17" y2="7"></line><polyline points="7 7 17 7 17 17"></polyline></svg>',"arrow-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="19" x2="12" y2="5"></line><polyline points="5 12 12 5 19 12"></polyline></svg>',"at-sign":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="4"></circle><path d="M16 8v5a3 3 0 0 0 6 0v-1a10 10 0 1 0-3.92 7.94"></path></svg>',award:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="8" r="7"></circle><polyline points="8.21 13.89 7 23 12 20 17 23 15.79 13.88"></polyline></svg>',"bar-chart-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="20" x2="18" y2="10"></line><line x1="12" y1="20" x2="12" y2="4"></line><line x1="6" y1="20" x2="6" y2="14"></line></svg>',"bar-chart":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="20" x2="12" y2="10"></line><line x1="18" y1="20" x2="18" y2="4"></line><line x1="6" y1="20" x2="6" y2="16"></line></svg>',"battery-charging":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 18H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3.19M15 6h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-3.19"></path><line x1="23" y1="13" x2="23" y2="11"></line><polyline points="11 6 7 12 13 12 9 18"></polyline></svg>',battery:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="6" width="18" height="12" rx="2" ry="2"></rect><line x1="23" y1="13" x2="23" y2="11"></line></svg>',"bell-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13.73 21a2 2 0 0 1-3.46 0"></path><path d="M18.63 13A17.89 17.89 0 0 1 18 8"></path><path d="M6.26 6.26A5.86 5.86 0 0 0 6 8c0 7-3 9-3 9h14"></path><path d="M18 8a6 6 0 0 0-9.33-5"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',bell:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8A6 6 0 0 0 6 8c0 7-3 9-3 9h18s-3-2-3-9"></path><path d="M13.73 21a2 2 0 0 1-3.46 0"></path></svg>',bluetooth:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6.5 6.5 17.5 17.5 12 23 12 1 17.5 6.5 6.5 17.5"></polyline></svg>',bold:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 4h8a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z"></path><path d="M6 12h9a4 4 0 0 1 4 4 4 4 0 0 1-4 4H6z"></path></svg>',"book-open":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"></path><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"></path></svg>',book:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 19.5A2.5 2.5 0 0 1 6.5 17H20"></path><path d="M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"></path></svg>',bookmark:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21l-7-5-7 5V5a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2z"></path></svg>',box:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>',briefcase:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="7" width="20" height="14" rx="2" ry="2"></rect><path d="M16 21V5a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v16"></path></svg>',calendar:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="4" width="18" height="18" rx="2" ry="2"></rect><line x1="16" y1="2" x2="16" y2="6"></line><line x1="8" y1="2" x2="8" y2="6"></line><line x1="3" y1="10" x2="21" y2="10"></line></svg>',"camera-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="1" y1="1" x2="23" y2="23"></line><path d="M21 21H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h3m3-3h6l2 3h4a2 2 0 0 1 2 2v9.34m-7.72-2.06a4 4 0 1 1-5.56-5.56"></path></svg>',camera:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"></path><circle cx="12" cy="13" r="4"></circle></svg>',cast:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M2 16.1A5 5 0 0 1 5.9 20M2 12.05A9 9 0 0 1 9.95 20M2 8V6a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2h-6"></path><line x1="2" y1="20" x2="2.01" y2="20"></line></svg>',"check-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>',"check-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 11 12 14 22 4"></polyline><path d="M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11"></path></svg>',check:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 6 9 17 4 12"></polyline></svg>',"chevron-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 12 15 18 9"></polyline></svg>',"chevron-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 18 9 12 15 6"></polyline></svg>',"chevron-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 18 15 12 9 6"></polyline></svg>',"chevron-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="18 15 12 9 6 15"></polyline></svg>',"chevrons-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="7 13 12 18 17 13"></polyline><polyline points="7 6 12 11 17 6"></polyline></svg>',"chevrons-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="11 17 6 12 11 7"></polyline><polyline points="18 17 13 12 18 7"></polyline></svg>',"chevrons-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="13 17 18 12 13 7"></polyline><polyline points="6 17 11 12 6 7"></polyline></svg>',"chevrons-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="17 11 12 6 7 11"></polyline><polyline points="17 18 12 13 7 18"></polyline></svg>',chrome:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="21.17" y1="8" x2="12" y2="8"></line><line x1="3.95" y1="6.06" x2="8.54" y2="14"></line><line x1="10.88" y1="21.94" x2="15.46" y2="14"></line></svg>',circle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle></svg>',clipboard:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"></path><rect x="8" y="2" width="8" height="4" rx="1" ry="1"></rect></svg>',clock:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polyline points="12 6 12 12 16 14"></polyline></svg>',"cloud-drizzle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="19" x2="8" y2="21"></line><line x1="8" y1="13" x2="8" y2="15"></line><line x1="16" y1="19" x2="16" y2="21"></line><line x1="16" y1="13" x2="16" y2="15"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="12" y1="15" x2="12" y2="17"></line><path d="M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25"></path></svg>',"cloud-lightning":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 16.9A5 5 0 0 0 18 7h-1.26a8 8 0 1 0-11.62 9"></path><polyline points="13 11 9 17 15 17 11 23"></polyline></svg>',"cloud-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22.61 16.95A5 5 0 0 0 18 10h-1.26a8 8 0 0 0-7.05-6M5 5a8 8 0 0 0 4 15h9a5 5 0 0 0 1.7-.3"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',"cloud-rain":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="16" y1="13" x2="16" y2="21"></line><line x1="8" y1="13" x2="8" y2="21"></line><line x1="12" y1="15" x2="12" y2="23"></line><path d="M20 16.58A5 5 0 0 0 18 7h-1.26A8 8 0 1 0 4 15.25"></path></svg>',"cloud-snow":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 17.58A5 5 0 0 0 18 8h-1.26A8 8 0 1 0 4 16.25"></path><line x1="8" y1="16" x2="8.01" y2="16"></line><line x1="8" y1="20" x2="8.01" y2="20"></line><line x1="12" y1="18" x2="12.01" y2="18"></line><line x1="12" y1="22" x2="12.01" y2="22"></line><line x1="16" y1="16" x2="16.01" y2="16"></line><line x1="16" y1="20" x2="16.01" y2="20"></line></svg>',cloud:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 10h-1.26A8 8 0 1 0 9 20h9a5 5 0 0 0 0-10z"></path></svg>',code:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 18 22 12 16 6"></polyline><polyline points="8 6 2 12 8 18"></polyline></svg>',codepen:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 22 8.5 22 15.5 12 22 2 15.5 2 8.5 12 2"></polygon><line x1="12" y1="22" x2="12" y2="15.5"></line><polyline points="22 8.5 12 15.5 2 8.5"></polyline><polyline points="2 15.5 12 8.5 22 15.5"></polyline><line x1="12" y1="2" x2="12" y2="8.5"></line></svg>',codesandbox:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path><polyline points="7.5 4.21 12 6.81 16.5 4.21"></polyline><polyline points="7.5 19.79 7.5 14.6 3 12"></polyline><polyline points="21 12 16.5 14.6 16.5 19.79"></polyline><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>',coffee:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 8h1a4 4 0 0 1 0 8h-1"></path><path d="M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4V8z"></path><line x1="6" y1="1" x2="6" y2="4"></line><line x1="10" y1="1" x2="10" y2="4"></line><line x1="14" y1="1" x2="14" y2="4"></line></svg>',columns:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3h7a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-7m0-18H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h7m0-18v18"></path></svg>',command:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 3a3 3 0 0 0-3 3v12a3 3 0 0 0 3 3 3 3 0 0 0 3-3 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3 3 3 0 0 0 3 3 3 3 0 0 0 3-3V6a3 3 0 0 0-3-3 3 3 0 0 0-3 3 3 3 0 0 0 3 3h12a3 3 0 0 0 3-3 3 3 0 0 0-3-3z"></path></svg>',compass:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"></polygon></svg>',copy:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect><path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path></svg>',"corner-down-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 10 4 15 9 20"></polyline><path d="M20 4v7a4 4 0 0 1-4 4H4"></path></svg>',"corner-down-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 10 20 15 15 20"></polyline><path d="M4 4v7a4 4 0 0 0 4 4h12"></path></svg>',"corner-left-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="14 15 9 20 4 15"></polyline><path d="M20 4h-7a4 4 0 0 0-4 4v12"></path></svg>',"corner-left-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="14 9 9 4 4 9"></polyline><path d="M20 20h-7a4 4 0 0 1-4-4V4"></path></svg>',"corner-right-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="10 15 15 20 20 15"></polyline><path d="M4 4h7a4 4 0 0 1 4 4v12"></path></svg>',"corner-right-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="10 9 15 4 20 9"></polyline><path d="M4 20h7a4 4 0 0 0 4-4V4"></path></svg>',"corner-up-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="9 14 4 9 9 4"></polyline><path d="M20 20v-7a4 4 0 0 0-4-4H4"></path></svg>',"corner-up-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 14 20 9 15 4"></polyline><path d="M4 20v-7a4 4 0 0 1 4-4h12"></path></svg>',cpu:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="4" width="16" height="16" rx="2" ry="2"></rect><rect x="9" y="9" width="6" height="6"></rect><line x1="9" y1="1" x2="9" y2="4"></line><line x1="15" y1="1" x2="15" y2="4"></line><line x1="9" y1="20" x2="9" y2="23"></line><line x1="15" y1="20" x2="15" y2="23"></line><line x1="20" y1="9" x2="23" y2="9"></line><line x1="20" y1="14" x2="23" y2="14"></line><line x1="1" y1="9" x2="4" y2="9"></line><line x1="1" y1="14" x2="4" y2="14"></line></svg>',"credit-card":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="4" width="22" height="16" rx="2" ry="2"></rect><line x1="1" y1="10" x2="23" y2="10"></line></svg>',crop:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6.13 1L6 16a2 2 0 0 0 2 2h15"></path><path d="M1 6.13L16 6a2 2 0 0 1 2 2v15"></path></svg>',crosshair:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="22" y1="12" x2="18" y2="12"></line><line x1="6" y1="12" x2="2" y2="12"></line><line x1="12" y1="6" x2="12" y2="2"></line><line x1="12" y1="22" x2="12" y2="18"></line></svg>',database:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M21 12c0 1.66-4 3-9 3s-9-1.34-9-3"></path><path d="M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5"></path></svg>',delete:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 4H8l-7 8 7 8h13a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2z"></path><line x1="18" y1="9" x2="12" y2="15"></line><line x1="12" y1="9" x2="18" y2="15"></line></svg>',disc:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="3"></circle></svg>',"divide-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="12" x2="16" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line><line x1="12" y1="8" x2="12" y2="8"></line><circle cx="12" cy="12" r="10"></circle></svg>',"divide-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="8" y1="12" x2="16" y2="12"></line><line x1="12" y1="16" x2="12" y2="16"></line><line x1="12" y1="8" x2="12" y2="8"></line></svg>',divide:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="6" r="2"></circle><line x1="5" y1="12" x2="19" y2="12"></line><circle cx="12" cy="18" r="2"></circle></svg>',"dollar-sign":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="1" x2="12" y2="23"></line><path d="M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6"></path></svg>',"download-cloud":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="8 17 12 21 16 17"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29"></path></svg>',download:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" y1="15" x2="12" y2="3"></line></svg>',dribbble:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M8.56 2.75c4.37 6.03 6.02 9.42 8.03 17.72m2.54-15.38c-3.72 4.35-8.94 5.66-16.88 5.85m19.5 1.9c-3.5-.93-6.63-.82-8.94 0-2.58.92-5.01 2.86-7.44 6.32"></path></svg>',droplet:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 2.69l5.66 5.66a8 8 0 1 1-11.31 0z"></path></svg>',"edit-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z"></path></svg>',"edit-3":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20h9"></path><path d="M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"></path></svg>',edit:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"></path><path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"></path></svg>',"external-link":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"></path><polyline points="15 3 21 3 21 9"></polyline><line x1="10" y1="14" x2="21" y2="3"></line></svg>',"eye-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',eye:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"></path><circle cx="12" cy="12" r="3"></circle></svg>',facebook:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18 2h-3a5 5 0 0 0-5 5v3H7v4h3v8h4v-8h3l1-4h-4V7a1 1 0 0 1 1-1h3z"></path></svg>',"fast-forward":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="13 19 22 12 13 5 13 19"></polygon><polygon points="2 19 11 12 2 5 2 19"></polygon></svg>',feather:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.24 12.24a6 6 0 0 0-8.49-8.49L5 10.5V19h8.5z"></path><line x1="16" y1="8" x2="2" y2="22"></line><line x1="17.5" y1="15" x2="9" y2="15"></line></svg>',figma:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 5.5A3.5 3.5 0 0 1 8.5 2H12v7H8.5A3.5 3.5 0 0 1 5 5.5z"></path><path d="M12 2h3.5a3.5 3.5 0 1 1 0 7H12V2z"></path><path d="M12 12.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 1 1-7 0z"></path><path d="M5 19.5A3.5 3.5 0 0 1 8.5 16H12v3.5a3.5 3.5 0 1 1-7 0z"></path><path d="M5 12.5A3.5 3.5 0 0 1 8.5 9H12v7H8.5A3.5 3.5 0 0 1 5 12.5z"></path></svg>',"file-minus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="9" y1="15" x2="15" y2="15"></line></svg>',"file-plus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="12" y1="18" x2="12" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></svg>',"file-text":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"></path><polyline points="14 2 14 8 20 8"></polyline><line x1="16" y1="13" x2="8" y2="13"></line><line x1="16" y1="17" x2="8" y2="17"></line><polyline points="10 9 9 9 8 9"></polyline></svg>',file:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline></svg>',film:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="20" rx="2.18" ry="2.18"></rect><line x1="7" y1="2" x2="7" y2="22"></line><line x1="17" y1="2" x2="17" y2="22"></line><line x1="2" y1="12" x2="22" y2="12"></line><line x1="2" y1="7" x2="7" y2="7"></line><line x1="2" y1="17" x2="7" y2="17"></line><line x1="17" y1="17" x2="22" y2="17"></line><line x1="17" y1="7" x2="22" y2="7"></line></svg>',filter:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="22 3 2 3 10 12.46 10 19 14 21 14 12.46 22 3"></polygon></svg>',flag:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 15s1-1 4-1 5 2 8 2 4-1 4-1V3s-1 1-4 1-5-2-8-2-4 1-4 1z"></path><line x1="4" y1="22" x2="4" y2="15"></line></svg>',"folder-minus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path><line x1="9" y1="14" x2="15" y2="14"></line></svg>',"folder-plus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path><line x1="12" y1="11" x2="12" y2="17"></line><line x1="9" y1="14" x2="15" y2="14"></line></svg>',folder:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"></path></svg>',framer:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 16V9h14V2H5l14 14h-7m-7 0l7 7v-7m-7 0h7"></path></svg>',frown:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M16 16s-1.5-2-4-2-4 2-4 2"></path><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line></svg>',gift:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="20 12 20 22 4 22 4 12"></polyline><rect x="2" y="7" width="20" height="5"></rect><line x1="12" y1="22" x2="12" y2="7"></line><path d="M12 7H7.5a2.5 2.5 0 0 1 0-5C11 2 12 7 12 7z"></path><path d="M12 7h4.5a2.5 2.5 0 0 0 0-5C13 2 12 7 12 7z"></path></svg>',"git-branch":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="6" y1="3" x2="6" y2="15"></line><circle cx="18" cy="6" r="3"></circle><circle cx="6" cy="18" r="3"></circle><path d="M18 9a9 9 0 0 1-9 9"></path></svg>',"git-commit":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="4"></circle><line x1="1.05" y1="12" x2="7" y2="12"></line><line x1="17.01" y1="12" x2="22.96" y2="12"></line></svg>',"git-merge":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M6 21V9a9 9 0 0 0 9 9"></path></svg>',"git-pull-request":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="18" r="3"></circle><circle cx="6" cy="6" r="3"></circle><path d="M13 6h3a2 2 0 0 1 2 2v7"></path><line x1="6" y1="9" x2="6" y2="21"></line></svg>',github:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22"></path></svg>',gitlab:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22.65 14.39L12 22.13 1.35 14.39a.84.84 0 0 1-.3-.94l1.22-3.78 2.44-7.51A.42.42 0 0 1 4.82 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.49h8.1l2.44-7.51A.42.42 0 0 1 18.6 2a.43.43 0 0 1 .58 0 .42.42 0 0 1 .11.18l2.44 7.51L23 13.45a.84.84 0 0 1-.35.94z"></path></svg>',globe:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="2" y1="12" x2="22" y2="12"></line><path d="M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z"></path></svg>',grid:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="7" height="7"></rect><rect x="14" y="3" width="7" height="7"></rect><rect x="14" y="14" width="7" height="7"></rect><rect x="3" y="14" width="7" height="7"></rect></svg>',"hard-drive":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="12" x2="2" y2="12"></line><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path><line x1="6" y1="16" x2="6.01" y2="16"></line><line x1="10" y1="16" x2="10.01" y2="16"></line></svg>',hash:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="4" y1="9" x2="20" y2="9"></line><line x1="4" y1="15" x2="20" y2="15"></line><line x1="10" y1="3" x2="8" y2="21"></line><line x1="16" y1="3" x2="14" y2="21"></line></svg>',headphones:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 18v-6a9 9 0 0 1 18 0v6"></path><path d="M21 19a2 2 0 0 1-2 2h-1a2 2 0 0 1-2-2v-3a2 2 0 0 1 2-2h3zM3 19a2 2 0 0 0 2 2h1a2 2 0 0 0 2-2v-3a2 2 0 0 0-2-2H3z"></path></svg>',heart:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"></path></svg>',"help-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"></path><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>',hexagon:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path></svg>',home:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path><polyline points="9 22 9 12 15 12 15 22"></polyline></svg>',image:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle><polyline points="21 15 16 10 5 21"></polyline></svg>',inbox:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="22 12 16 12 14 15 10 15 8 12 2 12"></polyline><path d="M5.45 5.11L2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z"></path></svg>',info:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="16" x2="12" y2="12"></line><line x1="12" y1="8" x2="12.01" y2="8"></line></svg>',instagram:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="20" rx="5" ry="5"></rect><path d="M16 11.37A4 4 0 1 1 12.63 8 4 4 0 0 1 16 11.37z"></path><line x1="17.5" y1="6.5" x2="17.51" y2="6.5"></line></svg>',italic:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="4" x2="10" y2="4"></line><line x1="14" y1="20" x2="5" y2="20"></line><line x1="15" y1="4" x2="9" y2="20"></line></svg>',key:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 2l-2 2m-7.61 7.61a5.5 5.5 0 1 1-7.778 7.778 5.5 5.5 0 0 1 7.777-7.777zm0 0L15.5 7.5m0 0l3 3L22 7l-3-3m-3.5 3.5L19 4"></path></svg>',layers:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 2 7 12 12 22 7 12 2"></polygon><polyline points="2 17 12 22 22 17"></polyline><polyline points="2 12 12 17 22 12"></polyline></svg>',layout:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="3" y1="9" x2="21" y2="9"></line><line x1="9" y1="21" x2="9" y2="9"></line></svg>',"life-buoy":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="4"></circle><line x1="4.93" y1="4.93" x2="9.17" y2="9.17"></line><line x1="14.83" y1="14.83" x2="19.07" y2="19.07"></line><line x1="14.83" y1="9.17" x2="19.07" y2="4.93"></line><line x1="14.83" y1="9.17" x2="18.36" y2="5.64"></line><line x1="4.93" y1="19.07" x2="9.17" y2="14.83"></line></svg>',"link-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 7h3a5 5 0 0 1 5 5 5 5 0 0 1-5 5h-3m-6 0H6a5 5 0 0 1-5-5 5 5 0 0 1 5-5h3"></path><line x1="8" y1="12" x2="16" y2="12"></line></svg>',link:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path></svg>',linkedin:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path><rect x="2" y="9" width="4" height="12"></rect><circle cx="4" cy="4" r="2"></circle></svg>',list:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="8" y1="6" x2="21" y2="6"></line><line x1="8" y1="12" x2="21" y2="12"></line><line x1="8" y1="18" x2="21" y2="18"></line><line x1="3" y1="6" x2="3.01" y2="6"></line><line x1="3" y1="12" x2="3.01" y2="12"></line><line x1="3" y1="18" x2="3.01" y2="18"></line></svg>',loader:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="2" x2="12" y2="6"></line><line x1="12" y1="18" x2="12" y2="22"></line><line x1="4.93" y1="4.93" x2="7.76" y2="7.76"></line><line x1="16.24" y1="16.24" x2="19.07" y2="19.07"></line><line x1="2" y1="12" x2="6" y2="12"></line><line x1="18" y1="12" x2="22" y2="12"></line><line x1="4.93" y1="19.07" x2="7.76" y2="16.24"></line><line x1="16.24" y1="7.76" x2="19.07" y2="4.93"></line></svg>',lock:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 10 0v4"></path></svg>',"log-in":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15 3h4a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-4"></path><polyline points="10 17 15 12 10 7"></polyline><line x1="15" y1="12" x2="3" y2="12"></line></svg>',"log-out":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"></path><polyline points="16 17 21 12 16 7"></polyline><line x1="21" y1="12" x2="9" y2="12"></line></svg>',mail:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z"></path><polyline points="22,6 12,13 2,6"></polyline></svg>',"map-pin":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"></path><circle cx="12" cy="10" r="3"></circle></svg>',map:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="1 6 1 22 8 18 16 22 23 18 23 2 16 6 8 2 1 6"></polygon><line x1="8" y1="2" x2="8" y2="18"></line><line x1="16" y1="6" x2="16" y2="22"></line></svg>',"maximize-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" y1="3" x2="14" y2="10"></line><line x1="3" y1="21" x2="10" y2="14"></line></svg>',maximize:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"></path></svg>',meh:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="8" y1="15" x2="16" y2="15"></line><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line></svg>',menu:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line></svg>',"message-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z"></path></svg>',"message-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"></path></svg>',"mic-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="1" y1="1" x2="23" y2="23"></line><path d="M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6"></path><path d="M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line></svg>',mic:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z"></path><path d="M19 10v2a7 7 0 0 1-14 0v-2"></path><line x1="12" y1="19" x2="12" y2="23"></line><line x1="8" y1="23" x2="16" y2="23"></line></svg>',"minimize-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 14 10 14 10 20"></polyline><polyline points="20 10 14 10 14 4"></polyline><line x1="14" y1="10" x2="21" y2="3"></line><line x1="3" y1="21" x2="10" y2="14"></line></svg>',minimize:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M8 3v3a2 2 0 0 1-2 2H3m18 0h-3a2 2 0 0 1-2-2V3m0 18v-3a2 2 0 0 1 2-2h3M3 16h3a2 2 0 0 1 2 2v3"></path></svg>',"minus-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="8" y1="12" x2="16" y2="12"></line></svg>',"minus-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="8" y1="12" x2="16" y2="12"></line></svg>',minus:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="5" y1="12" x2="19" y2="12"></line></svg>',monitor:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="3" width="20" height="14" rx="2" ry="2"></rect><line x1="8" y1="21" x2="16" y2="21"></line><line x1="12" y1="17" x2="12" y2="21"></line></svg>',moon:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path></svg>',"more-horizontal":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"></circle><circle cx="19" cy="12" r="1"></circle><circle cx="5" cy="12" r="1"></circle></svg>',"more-vertical":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="1"></circle><circle cx="12" cy="5" r="1"></circle><circle cx="12" cy="19" r="1"></circle></svg>',"mouse-pointer":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M3 3l7.07 16.97 2.51-7.39 7.39-2.51L3 3z"></path><path d="M13 13l6 6"></path></svg>',move:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="5 9 2 12 5 15"></polyline><polyline points="9 5 12 2 15 5"></polyline><polyline points="15 19 12 22 9 19"></polyline><polyline points="19 9 22 12 19 15"></polyline><line x1="2" y1="12" x2="22" y2="12"></line><line x1="12" y1="2" x2="12" y2="22"></line></svg>',music:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 18V5l12-2v13"></path><circle cx="6" cy="18" r="3"></circle><circle cx="18" cy="16" r="3"></circle></svg>',"navigation-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 19 21 12 17 5 21 12 2"></polygon></svg>',navigation:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="3 11 22 2 13 21 11 13 3 11"></polygon></svg>',octagon:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon></svg>',package:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="16.5" y1="9.4" x2="7.5" y2="4.21"></line><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"></path><polyline points="3.27 6.96 12 12.01 20.73 6.96"></polyline><line x1="12" y1="22.08" x2="12" y2="12"></line></svg>',paperclip:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"></path></svg>',"pause-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="10" y1="15" x2="10" y2="9"></line><line x1="14" y1="15" x2="14" y2="9"></line></svg>',pause:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="6" y="4" width="4" height="16"></rect><rect x="14" y="4" width="4" height="16"></rect></svg>',"pen-tool":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 19l7-7 3 3-7 7-3-3z"></path><path d="M18 13l-1.5-7.5L2 2l3.5 14.5L13 18l5-5z"></path><path d="M2 2l7.586 7.586"></path><circle cx="11" cy="11" r="2"></circle></svg>',percent:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="19" y1="5" x2="5" y2="19"></line><circle cx="6.5" cy="6.5" r="2.5"></circle><circle cx="17.5" cy="17.5" r="2.5"></circle></svg>',"phone-call":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M15.05 5A5 5 0 0 1 19 8.95M15.05 1A9 9 0 0 1 23 8.94m-1 7.98v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-forwarded":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="19 1 23 5 19 9"></polyline><line x1="15" y1="5" x2="23" y2="5"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-incoming":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 2 16 8 22 8"></polyline><line x1="23" y1="1" x2="16" y2="8"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-missed":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="23" y1="1" x2="17" y2="7"></line><line x1="17" y1="1" x2="23" y2="7"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"phone-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.68 13.31a16 16 0 0 0 3.41 2.6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7 2 2 0 0 1 1.72 2v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.42 19.42 0 0 1-3.33-2.67m-2.67-3.34a19.79 19.79 0 0 1-3.07-8.63A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91"></path><line x1="23" y1="1" x2="1" y2="23"></line></svg>',"phone-outgoing":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 7 23 1 17 1"></polyline><line x1="16" y1="8" x2="23" y2="1"></line><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',phone:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z"></path></svg>',"pie-chart":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21.21 15.89A10 10 0 1 1 8 2.83"></path><path d="M22 12A10 10 0 0 0 12 2v10z"></path></svg>',"play-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><polygon points="10 8 16 12 10 16 10 8"></polygon></svg>',play:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="5 3 19 12 5 21 5 3"></polygon></svg>',"plus-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line></svg>',"plus-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="12" y1="8" x2="12" y2="16"></line><line x1="8" y1="12" x2="16" y2="12"></line></svg>',plus:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="12" y1="5" x2="12" y2="19"></line><line x1="5" y1="12" x2="19" y2="12"></line></svg>',pocket:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 3h16a2 2 0 0 1 2 2v6a10 10 0 0 1-10 10A10 10 0 0 1 2 11V5a2 2 0 0 1 2-2z"></path><polyline points="8 10 12 14 16 10"></polyline></svg>',power:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M18.36 6.64a9 9 0 1 1-12.73 0"></path><line x1="12" y1="2" x2="12" y2="12"></line></svg>',printer:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="6 9 6 2 18 2 18 9"></polyline><path d="M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2"></path><rect x="6" y="14" width="12" height="8"></rect></svg>',radio:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="2"></circle><path d="M16.24 7.76a6 6 0 0 1 0 8.49m-8.48-.01a6 6 0 0 1 0-8.49m11.31-2.82a10 10 0 0 1 0 14.14m-14.14 0a10 10 0 0 1 0-14.14"></path></svg>',"refresh-ccw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="1 4 1 10 7 10"></polyline><polyline points="23 20 23 14 17 14"></polyline><path d="M20.49 9A9 9 0 0 0 5.64 5.64L1 10m22 4l-4.64 4.36A9 9 0 0 1 3.51 15"></path></svg>',"refresh-cw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 4 23 10 17 10"></polyline><polyline points="1 20 1 14 7 14"></polyline><path d="M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"></path></svg>',repeat:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="17 1 21 5 17 9"></polyline><path d="M3 11V9a4 4 0 0 1 4-4h14"></path><polyline points="7 23 3 19 7 15"></polyline><path d="M21 13v2a4 4 0 0 1-4 4H3"></path></svg>',rewind:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 19 2 12 11 5 11 19"></polygon><polygon points="22 19 13 12 22 5 22 19"></polygon></svg>',"rotate-ccw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="1 4 1 10 7 10"></polyline><path d="M3.51 15a9 9 0 1 0 2.13-9.36L1 10"></path></svg>',"rotate-cw":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 4 23 10 17 10"></polyline><path d="M20.49 15a9 9 0 1 1-2.12-9.36L23 10"></path></svg>',rss:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 11a9 9 0 0 1 9 9"></path><path d="M4 4a16 16 0 0 1 16 16"></path><circle cx="5" cy="19" r="1"></circle></svg>',save:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11l5 5v11a2 2 0 0 1-2 2z"></path><polyline points="17 21 17 13 7 13 7 21"></polyline><polyline points="7 3 7 8 15 8"></polyline></svg>',scissors:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="6" cy="6" r="3"></circle><circle cx="6" cy="18" r="3"></circle><line x1="20" y1="4" x2="8.12" y2="15.88"></line><line x1="14.47" y1="14.48" x2="20" y2="20"></line><line x1="8.12" y1="8.12" x2="12" y2="12"></line></svg>',search:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line></svg>',send:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="2" x2="11" y2="13"></line><polygon points="22 2 15 22 11 13 2 9 22 2"></polygon></svg>',server:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2" ry="2"></rect><rect x="2" y="14" width="20" height="8" rx="2" ry="2"></rect><line x1="6" y1="6" x2="6.01" y2="6"></line><line x1="6" y1="18" x2="6.01" y2="18"></line></svg>',settings:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 0 1 0 2.83 2 2 0 0 1-2.83 0l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 0 1-2.83 0 2 2 0 0 1 0-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1-2-2 2 2 0 0 1 2-2h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 0 1 0-2.83 2 2 0 0 1 2.83 0l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 2-2 2 2 0 0 1 2 2v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 0 1 2.83 0 2 2 0 0 1 0 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 2 2 2 2 0 0 1-2 2h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg>',"share-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="18" cy="5" r="3"></circle><circle cx="6" cy="12" r="3"></circle><circle cx="18" cy="19" r="3"></circle><line x1="8.59" y1="13.51" x2="15.42" y2="17.49"></line><line x1="15.41" y1="6.51" x2="8.59" y2="10.49"></line></svg>',share:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8"></path><polyline points="16 6 12 2 8 6"></polyline><line x1="12" y1="2" x2="12" y2="15"></line></svg>',"shield-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M19.69 14a6.9 6.9 0 0 0 .31-2V5l-8-3-3.16 1.18"></path><path d="M4.73 4.73L4 5v7c0 6 8 10 8 10a20.29 20.29 0 0 0 5.62-4.38"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',shield:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"></path></svg>',"shopping-bag":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z"></path><line x1="3" y1="6" x2="21" y2="6"></line><path d="M16 10a4 4 0 0 1-8 0"></path></svg>',"shopping-cart":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="9" cy="21" r="1"></circle><circle cx="20" cy="21" r="1"></circle><path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"></path></svg>',shuffle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 3 21 3 21 8"></polyline><line x1="4" y1="20" x2="21" y2="3"></line><polyline points="21 16 21 21 16 21"></polyline><line x1="15" y1="15" x2="21" y2="21"></line><line x1="4" y1="4" x2="9" y2="9"></line></svg>',sidebar:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="3" x2="9" y2="21"></line></svg>',"skip-back":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="19 20 9 12 19 4 19 20"></polygon><line x1="5" y1="19" x2="5" y2="5"></line></svg>',"skip-forward":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="5 4 15 12 5 20 5 4"></polygon><line x1="19" y1="5" x2="19" y2="19"></line></svg>',slack:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.5 10c-.83 0-1.5-.67-1.5-1.5v-5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5z"></path><path d="M20.5 10H19V8.5c0-.83.67-1.5 1.5-1.5s1.5.67 1.5 1.5-.67 1.5-1.5 1.5z"></path><path d="M9.5 14c.83 0 1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5S8 21.33 8 20.5v-5c0-.83.67-1.5 1.5-1.5z"></path><path d="M3.5 14H5v1.5c0 .83-.67 1.5-1.5 1.5S2 16.33 2 15.5 2.67 14 3.5 14z"></path><path d="M14 14.5c0-.83.67-1.5 1.5-1.5h5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5h-5c-.83 0-1.5-.67-1.5-1.5z"></path><path d="M15.5 19H14v1.5c0 .83.67 1.5 1.5 1.5s1.5-.67 1.5-1.5-.67-1.5-1.5-1.5z"></path><path d="M10 9.5C10 8.67 9.33 8 8.5 8h-5C2.67 8 2 8.67 2 9.5S2.67 11 3.5 11h5c.83 0 1.5-.67 1.5-1.5z"></path><path d="M8.5 5H10V3.5C10 2.67 9.33 2 8.5 2S7 2.67 7 3.5 7.67 5 8.5 5z"></path></svg>',slash:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="4.93" y1="4.93" x2="19.07" y2="19.07"></line></svg>',sliders:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="4" y1="21" x2="4" y2="14"></line><line x1="4" y1="10" x2="4" y2="3"></line><line x1="12" y1="21" x2="12" y2="12"></line><line x1="12" y1="8" x2="12" y2="3"></line><line x1="20" y1="21" x2="20" y2="16"></line><line x1="20" y1="12" x2="20" y2="3"></line><line x1="1" y1="14" x2="7" y2="14"></line><line x1="9" y1="8" x2="15" y2="8"></line><line x1="17" y1="16" x2="23" y2="16"></line></svg>',smartphone:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="5" y="2" width="14" height="20" rx="2" ry="2"></rect><line x1="12" y1="18" x2="12.01" y2="18"></line></svg>',smile:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><path d="M8 14s1.5 2 4 2 4-2 4-2"></path><line x1="9" y1="9" x2="9.01" y2="9"></line><line x1="15" y1="9" x2="15.01" y2="9"></line></svg>',speaker:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="2" width="16" height="20" rx="2" ry="2"></rect><circle cx="12" cy="14" r="4"></circle><line x1="12" y1="6" x2="12.01" y2="6"></line></svg>',square:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect></svg>',star:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2"></polygon></svg>',"stop-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><rect x="9" y="9" width="6" height="6"></rect></svg>',sun:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>',sunrise:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 18a5 5 0 0 0-10 0"></path><line x1="12" y1="2" x2="12" y2="9"></line><line x1="4.22" y1="10.22" x2="5.64" y2="11.64"></line><line x1="1" y1="18" x2="3" y2="18"></line><line x1="21" y1="18" x2="23" y2="18"></line><line x1="18.36" y1="11.64" x2="19.78" y2="10.22"></line><line x1="23" y1="22" x2="1" y2="22"></line><polyline points="8 6 12 2 16 6"></polyline></svg>',sunset:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 18a5 5 0 0 0-10 0"></path><line x1="12" y1="9" x2="12" y2="2"></line><line x1="4.22" y1="10.22" x2="5.64" y2="11.64"></line><line x1="1" y1="18" x2="3" y2="18"></line><line x1="21" y1="18" x2="23" y2="18"></line><line x1="18.36" y1="11.64" x2="19.78" y2="10.22"></line><line x1="23" y1="22" x2="1" y2="22"></line><polyline points="16 5 12 9 8 5"></polyline></svg>',table:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18"></path></svg>',tablet:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="4" y="2" width="16" height="20" rx="2" ry="2"></rect><line x1="12" y1="18" x2="12.01" y2="18"></line></svg>',tag:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20.59 13.41l-7.17 7.17a2 2 0 0 1-2.83 0L2 12V2h10l8.59 8.59a2 2 0 0 1 0 2.82z"></path><line x1="7" y1="7" x2="7.01" y2="7"></line></svg>',target:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><circle cx="12" cy="12" r="6"></circle><circle cx="12" cy="12" r="2"></circle></svg>',terminal:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line></svg>',thermometer:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 14.76V3.5a2.5 2.5 0 0 0-5 0v11.26a4.5 4.5 0 1 0 5 0z"></path></svg>',"thumbs-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10 15v4a3 3 0 0 0 3 3l4-9V2H5.72a2 2 0 0 0-2 1.7l-1.38 9a2 2 0 0 0 2 2.3zm7-13h2.67A2.31 2.31 0 0 1 22 4v7a2.31 2.31 0 0 1-2.33 2H17"></path></svg>',"thumbs-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14 9V5a3 3 0 0 0-3-3l-4 9v11h11.28a2 2 0 0 0 2-1.7l1.38-9a2 2 0 0 0-2-2.3zM7 22H4a2 2 0 0 1-2-2v-7a2 2 0 0 1 2-2h3"></path></svg>',"toggle-left":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="5" width="22" height="14" rx="7" ry="7"></rect><circle cx="8" cy="12" r="3"></circle></svg>',"toggle-right":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="5" width="22" height="14" rx="7" ry="7"></rect><circle cx="16" cy="12" r="3"></circle></svg>',tool:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.77-3.77a6 6 0 0 1-7.94 7.94l-6.91 6.91a2.12 2.12 0 0 1-3-3l6.91-6.91a6 6 0 0 1 7.94-7.94l-3.76 3.76z"></path></svg>',"trash-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path><line x1="10" y1="11" x2="10" y2="17"></line><line x1="14" y1="11" x2="14" y2="17"></line></svg>',trash:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="3 6 5 6 21 6"></polyline><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"></path></svg>',trello:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><rect x="7" y="7" width="3" height="9"></rect><rect x="14" y="7" width="3" height="5"></rect></svg>',"trending-down":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 18 13.5 8.5 8.5 13.5 1 6"></polyline><polyline points="17 18 23 18 23 12"></polyline></svg>',"trending-up":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="23 6 13.5 15.5 8.5 10.5 1 18"></polyline><polyline points="17 6 23 6 23 12"></polyline></svg>',triangle:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"></path></svg>',truck:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="1" y="3" width="15" height="13"></rect><polygon points="16 8 20 8 23 11 23 16 16 16 16 8"></polygon><circle cx="5.5" cy="18.5" r="2.5"></circle><circle cx="18.5" cy="18.5" r="2.5"></circle></svg>',tv:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="7" width="20" height="15" rx="2" ry="2"></rect><polyline points="17 2 12 7 7 2"></polyline></svg>',twitch:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 2H3v16h5v4l4-4h5l4-4V2zm-10 9V7m5 4V7"></path></svg>',twitter:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M23 3a10.9 10.9 0 0 1-3.14 1.53 4.48 4.48 0 0 0-7.86 3v1A10.66 10.66 0 0 1 3 4s-4 9 5 13a11.64 11.64 0 0 1-7 2c9 5 20 0 20-11.5a4.5 4.5 0 0 0-.08-.83A7.72 7.72 0 0 0 23 3z"></path></svg>',type:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 7 4 4 20 4 20 7"></polyline><line x1="9" y1="20" x2="15" y2="20"></line><line x1="12" y1="4" x2="12" y2="20"></line></svg>',umbrella:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M23 12a11.05 11.05 0 0 0-22 0zm-5 7a3 3 0 0 1-6 0v-7"></path></svg>',underline:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 3v7a6 6 0 0 0 6 6 6 6 0 0 0 6-6V3"></path><line x1="4" y1="21" x2="20" y2="21"></line></svg>',unlock:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"></rect><path d="M7 11V7a5 5 0 0 1 9.9-1"></path></svg>',"upload-cloud":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="16 16 12 12 8 16"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.39 18.39A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.3"></path><polyline points="16 16 12 12 8 16"></polyline></svg>',upload:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="17 8 12 3 7 8"></polyline><line x1="12" y1="3" x2="12" y2="15"></line></svg>',"user-check":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><polyline points="17 11 19 13 23 9"></polyline></svg>',"user-minus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="23" y1="11" x2="17" y2="11"></line></svg>',"user-plus":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="20" y1="8" x2="20" y2="14"></line><line x1="23" y1="11" x2="17" y2="11"></line></svg>',"user-x":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="8.5" cy="7" r="4"></circle><line x1="18" y1="8" x2="23" y2="13"></line><line x1="23" y1="8" x2="18" y2="13"></line></svg>',user:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"></path><circle cx="12" cy="7" r="4"></circle></svg>',users:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"></path><circle cx="9" cy="7" r="4"></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87"></path><path d="M16 3.13a4 4 0 0 1 0 7.75"></path></svg>',"video-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 16v1a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h2m5.66 0H14a2 2 0 0 1 2 2v3.34l1 1L23 7v10"></path><line x1="1" y1="1" x2="23" y2="23"></line></svg>',video:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="23 7 16 12 23 17 23 7"></polygon><rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect></svg>',voicemail:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="5.5" cy="11.5" r="4.5"></circle><circle cx="18.5" cy="11.5" r="4.5"></circle><line x1="5.5" y1="16" x2="18.5" y2="16"></line></svg>',"volume-1":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M15.54 8.46a5 5 0 0 1 0 7.07"></path></svg>',"volume-2":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><path d="M19.07 4.93a10 10 0 0 1 0 14.14M15.54 8.46a5 5 0 0 1 0 7.07"></path></svg>',"volume-x":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon><line x1="23" y1="9" x2="17" y2="15"></line><line x1="17" y1="9" x2="23" y2="15"></line></svg>',volume:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="11 5 6 9 2 9 2 15 6 15 11 19 11 5"></polygon></svg>',watch:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="7"></circle><polyline points="12 9 12 12 13.5 13.5"></polyline><path d="M16.51 17.35l-.35 3.83a2 2 0 0 1-2 1.82H9.83a2 2 0 0 1-2-1.82l-.35-3.83m.01-10.7l.35-3.83A2 2 0 0 1 9.83 1h4.35a2 2 0 0 1 2 1.82l.35 3.83"></path></svg>',"wifi-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="1" y1="1" x2="23" y2="23"></line><path d="M16.72 11.06A10.94 10.94 0 0 1 19 12.55"></path><path d="M5 12.55a10.94 10.94 0 0 1 5.17-2.39"></path><path d="M10.71 5.05A16 16 0 0 1 22.58 9"></path><path d="M1.42 9a15.91 15.91 0 0 1 4.7-2.88"></path><path d="M8.53 16.11a6 6 0 0 1 6.95 0"></path><line x1="12" y1="20" x2="12.01" y2="20"></line></svg>',wifi:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M5 12.55a11 11 0 0 1 14.08 0"></path><path d="M1.42 9a16 16 0 0 1 21.16 0"></path><path d="M8.53 16.11a6 6 0 0 1 6.95 0"></path><line x1="12" y1="20" x2="12.01" y2="20"></line></svg>',wind:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9.59 4.59A2 2 0 1 1 11 8H2m10.59 11.41A2 2 0 1 0 14 16H2m15.73-8.27A2.5 2.5 0 1 1 19.5 12H2"></path></svg>',"x-circle":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>',"x-octagon":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="7.86 2 16.14 2 22 7.86 22 16.14 16.14 22 7.86 22 2 16.14 2 7.86 7.86 2"></polygon><line x1="15" y1="9" x2="9" y2="15"></line><line x1="9" y1="9" x2="15" y2="15"></line></svg>',"x-square":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="3" y="3" width="18" height="18" rx="2" ry="2"></rect><line x1="9" y1="9" x2="15" y2="15"></line><line x1="15" y1="9" x2="9" y2="15"></line></svg>',x:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>',youtube:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22.54 6.42a2.78 2.78 0 0 0-1.94-2C18.88 4 12 4 12 4s-6.88 0-8.6.46a2.78 2.78 0 0 0-1.94 2A29 29 0 0 0 1 11.75a29 29 0 0 0 .46 5.33A2.78 2.78 0 0 0 3.4 19c1.72.46 8.6.46 8.6.46s6.88 0 8.6-.46a2.78 2.78 0 0 0 1.94-2 29 29 0 0 0 .46-5.25 29 29 0 0 0-.46-5.33z"></path><polygon points="9.75 15.02 15.5 11.75 9.75 8.48 9.75 15.02"></polygon></svg>',"zap-off":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="12.41 6.75 13 2 10.57 4.92"></polyline><polyline points="18.57 12.91 21 10 15.66 10"></polyline><polyline points="8 8 3 14 12 14 11 22 16 16"></polyline><line x1="1" y1="1" x2="23" y2="23"></line></svg>',zap:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polygon points="13 2 3 14 12 14 11 22 21 10 12 10 13 2"></polygon></svg>',"zoom-in":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>',"zoom-out":'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>'};function iw(s){return Bmt[s]||null}var Hhe={compact:{spacing:{xs:2,sm:4,md:6,lg:8,xl:12},button:{paddingX:12,paddingY:6,radius:4,fontSize:12,fontWeight:500},input:{paddingX:8,paddingY:4,radius:4,fontSize:12},card:{padding:8,radius:6,strokeWidth:1},heading:{fontSize:16,fontWeight:600,marginBottom:6},text:{fontSize:12,lineHeight:1.4},badge:{paddingX:6,paddingY:2,radius:"pill",fontSize:10},table:{cellPaddingX:8,cellPaddingY:4,headerFontWeight:600,borderWidth:1}},normal:{spacing:{xs:4,sm:8,md:12,lg:16,xl:24},button:{paddingX:18,paddingY:9,radius:6,fontSize:14,fontWeight:500},input:{paddingX:12,paddingY:6,radius:6,fontSize:14},card:{padding:12,radius:8,strokeWidth:1},heading:{fontSize:20,fontWeight:600,marginBottom:8},text:{fontSize:14,lineHeight:1.5},badge:{paddingX:8,paddingY:3,radius:"pill",fontSize:12},table:{cellPaddingX:12,cellPaddingY:6,headerFontWeight:600,borderWidth:1}},comfortable:{spacing:{xs:6,sm:12,md:16,lg:24,xl:32},button:{paddingX:24,paddingY:12,radius:8,fontSize:16,fontWeight:500},input:{paddingX:16,paddingY:8,radius:8,fontSize:16},card:{padding:16,radius:12,strokeWidth:1},heading:{fontSize:24,fontWeight:600,marginBottom:12},text:{fontSize:16,lineHeight:1.6},badge:{paddingX:12,paddingY:4,radius:"pill",fontSize:14},table:{cellPaddingX:16,cellPaddingY:8,headerFontWeight:600,borderWidth:1}}};function Hmt(s){const e=s.density||"normal";return Hhe[e]||Hhe.normal}var Wmt={light:{bg:"#F8FAFC",cardBg:"#FFFFFF",border:"#E2E8F0",text:"#1E293B",textMuted:"#64748B",primary:"#3B82F6",primaryHover:"#2563EB",primaryLight:"#EFF6FF"},dark:{bg:"#0F172A",cardBg:"#1E293B",border:"#334155",text:"#F1F5F9",textMuted:"#94A3B8",primary:"#60A5FA",primaryHover:"#3B82F6",primaryLight:"#1E3A8A"}},Vmt=class{constructor(s,e,t){this.renderedNodeIds=new Set,this.fontFamily="system-ui, -apple-system, sans-serif",this.parentContainerByChildId=new Map,this.ir=s,this.layout=e,this.selectedScreenName=t?.screenName;const i=t?.theme||s.project.style.theme||"light";this.tokens=Hmt(s.project.style),this.options={width:t?.width||1280,height:t?.height||720,theme:i,includeLabels:t?.includeLabels??!0,screenName:t?.screenName},this.renderTheme=Wmt[this.options.theme],this.colorResolver=new Fmt,this.buildParentContainerIndex(),s.project.mocks&&Object.keys(s.project.mocks).length>0&&Wp.setCustomMocks(s.project.mocks),s.project.colors&&Object.keys(s.project.colors).length>0&&this.colorResolver.setCustomColors(s.project.colors)}getAvailableScreens(){return this.ir.project.screens.map(s=>({name:s.name,id:s.id}))}getSelectedScreen(){let s=this.ir.project.screens[0],e=s?.name||"Unknown";if(this.selectedScreenName){const t=this.ir.project.screens.find(i=>i.name.toLowerCase()===this.selectedScreenName.toLowerCase());t&&(s=t,e=t.name)}return{screen:s,name:e}}render(){const{screen:s}=this.getSelectedScreen();if(!s)return"<svg></svg>";const e=s.root.ref,t=[];this.renderedNodeIds.clear(),this.renderNode(e,t);const i=this.calculateContentHeight(),n=Math.max(this.options.height,i);let o=this.renderTheme.bg;return s.background&&(o=this.colorResolver.resolveColor(s.background,this.renderTheme.bg)),`<svg width="${this.options.width}" height="${n}" viewBox="0 0 ${this.options.width} ${n}" xmlns="http://www.w3.org/2000/svg">
1068
1068
  <rect width="100%" height="100%" fill="${o}"/>
1069
1069
  ${t.join(`
1070
1070
  `)}
@@ -1080,19 +1080,19 @@ Define these components with: define Component "Name" { ... }`)}const i={irVersi
1080
1080
  font-size="${n}"
1081
1081
  font-weight="${o}"
1082
1082
  fill="${this.renderTheme.text}">${c}</text>
1083
- </g>`}renderButton(s,e){const t=String(s.props.text||"Button"),i=String(s.props.variant||"default"),n=this.tokens.button.radius,o=this.tokens.button.fontSize,r=this.tokens.button.fontWeight,a=this.tokens.button.paddingX,l=this.tokens.button.paddingY,c=this.estimateTextWidth(t,o),d=this.clampControlWidth(Math.max(Math.ceil(c+a*2),60),e.width),h=o+l*2,f=Math.max(0,d-a*2),p=this.truncateTextToWidth(t,f,o),b=this.getSemanticVariantColor(i)!==void 0||this.colorResolver.hasColor(i),C=this.resolveVariantColor(i,this.renderTheme.primary),y=b?this.hexToRgba(C,.85):"rgba(226, 232, 240, 0.9)",S=b?"#FFFFFF":"rgba(30, 41, 59, 0.85)",L=b?this.hexToRgba(C,.7):"rgba(100, 116, 139, 0.4)";return`<g${this.getDataNodeId(s)}>
1083
+ </g>`}renderButton(s,e){const t=String(s.props.text||"Button"),i=String(s.props.variant||"default"),n=this.shouldButtonFillAvailableWidth(s),o=this.tokens.button.radius,r=this.tokens.button.fontSize,a=this.tokens.button.fontWeight,l=this.tokens.button.paddingX,c=this.tokens.button.paddingY,d=this.estimateTextWidth(t,r),h=n?Math.max(1,e.width):this.clampControlWidth(Math.max(Math.ceil(d+l*2),60),e.width),f=r+c*2,p=Math.max(0,h-l*2),m=this.truncateTextToWidth(t,p,r),C=this.getSemanticVariantColor(i)!==void 0||this.colorResolver.hasColor(i),y=this.resolveVariantColor(i,this.renderTheme.primary),S=C?this.hexToRgba(y,.85):"rgba(226, 232, 240, 0.9)",L=C?"#FFFFFF":"rgba(30, 41, 59, 0.85)",x=C?this.hexToRgba(y,.7):"rgba(100, 116, 139, 0.4)";return`<g${this.getDataNodeId(s)}>
1084
1084
  <rect x="${e.x}" y="${e.y}"
1085
- width="${d}" height="${h}"
1086
- rx="${n}"
1087
- fill="${y}"
1088
- stroke="${L}"
1085
+ width="${h}" height="${f}"
1086
+ rx="${o}"
1087
+ fill="${S}"
1088
+ stroke="${x}"
1089
1089
  stroke-width="1"/>
1090
- <text x="${e.x+d/2}" y="${e.y+h/2+o*.35}"
1090
+ <text x="${e.x+h/2}" y="${e.y+f/2+r*.35}"
1091
1091
  font-family="system-ui, -apple-system, sans-serif"
1092
- font-size="${o}"
1093
- font-weight="${r}"
1094
- fill="${S}"
1095
- text-anchor="middle">${this.escapeXml(p)}</text>
1092
+ font-size="${r}"
1093
+ font-weight="${a}"
1094
+ fill="${L}"
1095
+ text-anchor="middle">${this.escapeXml(m)}</text>
1096
1096
  </g>`}renderLink(s,e){const t=String(s.props.text||"Link"),i=String(s.props.variant||"primary"),n=this.tokens.button.fontSize,o=this.tokens.button.fontWeight,r=this.tokens.button.paddingX,a=this.tokens.button.paddingY,l=this.resolveVariantColor(i,this.renderTheme.primary),c=this.estimateTextWidth(t,n),d=this.clampControlWidth(Math.max(Math.ceil(c+r*2),60),e.width),h=n+a*2,f=Math.max(0,d-r*2),p=this.truncateTextToWidth(t,f,n),m=Math.min(this.estimateTextWidth(p,n),Math.max(0,f)),b=e.y+h/2+n*.35,C=b+3;return`<g${this.getDataNodeId(s)}>
1097
1097
  <text x="${e.x+d/2}" y="${b}"
1098
1098
  font-family="system-ui, -apple-system, sans-serif"
@@ -1667,7 +1667,7 @@ Define these components with: define Component "Name" { ... }`)}const i={irVersi
1667
1667
  </g>`}return C+=`
1668
1668
  </g>`,C}extractSvgContent(s){const e=s.match(/<svg[^>]*>([\s\S]*?)<\/svg>/);return e?e[1]:s}resolveVariantColor(s,e){const t=this.getSemanticVariantColor(s)||e;return this.colorResolver.resolveColor(s,t)}resolveAccentColor(){return this.colorResolver.resolveColor("accent",this.renderTheme.primary)}resolveControlColor(){return this.colorResolver.resolveColor("control",this.renderTheme.primary)}resolveChartColor(){return this.colorResolver.resolveColor("chart",this.renderTheme.primary)}getSemanticVariantColor(s){return{primary:this.renderTheme.primary,secondary:"#64748B",success:"#10B981",warning:"#F59E0B",danger:"#EF4444",error:"#EF4444",info:"#0EA5E9"}[s]}hexToRgba(s,e){const t=/^#([0-9A-Fa-f]{6})$/.exec(s);if(!t)return s;const i=parseInt(t[1].slice(0,2),16),n=parseInt(t[1].slice(2,4),16),o=parseInt(t[1].slice(4,6),16);return`rgba(${i}, ${n}, ${o}, ${e})`}getIconSize(s){return Pwe(s,this.ir.project.style.density||"normal")}getIconButtonSize(s){return Fwe(s,this.ir.project.style.density||"normal")}resolveSpacing(s){return g2(s,this.ir.project.style.spacing||"md",this.ir.project.style.density||"normal",!0)}wrapTextToLines(s,e,t){const n=s.replace(/\r\n/g,`
1669
1669
  `).split(`
1670
- `),o=t*.6,r=Math.max(e||0,o),a=Math.max(1,Math.floor(r/o)),l=[];for(const c of n){if(!c.trim()){l.push("");continue}const d=c.split(/\s+/).filter(Boolean);let h="";for(const f of d){const p=h?`${h} ${f}`:f;if(p.length<=a){h=p;continue}if(h&&(l.push(h),h=""),f.length<=a){h=f;continue}for(let m=0;m<f.length;m+=a)l.push(f.slice(m,m+a))}h&&l.push(h)}return l.length>0?l:[""]}clampControlWidth(s,e){const t=Math.max(1,e||0);return Math.max(1,Math.min(s,t))}truncateTextToWidth(s,e,t){if(e<=0)return"";if(this.estimateTextWidth(s,t)<=e+.01)return s;const n="...",o=this.estimateTextWidth(n,t);if(o>=e-.01)return".";let r="";for(const a of s){const l=`${r}${a}`;if(this.estimateTextWidth(l,t)+o>e+.01)break;r=l}return`${r}${n}`}estimateTextWidth(s,e){let t=0;for(const i of s)/\s/.test(i)?t+=e*.33:/[.,:;'"`|!iIl]/.test(i)?t+=e*.32:/[MW@#%&]/.test(i)?t+=e*.9:t+=e*.6;return t}generateUpwardTrendValues(s,e,t){if(s<=0)return[];if(s===1)return[t];const i=t-e,n=[0,.14,-.09,.11,-.06,.08,-.05],o=Array.from({length:s},(r,a)=>{const l=a/(s-1),c=e+i*Math.pow(l,.92),d=Math.sin((a+1)*1.19)*.08,h=Math.cos((a+2)*.77)*.05,f=n[a%n.length],p=a===0||a===s-1?0:a===1||a===s-2?.72:1,m=(d+h+f)*p;return Math.min(.95,Math.max(.08,c+m))});return o[0]=e,o[o.length-1]=t,o}getControlLabelOffset(s){return s.trim().length>0?18:0}getControlLabelBaselineY(s){return s+12}getHeadingTypography(s){const e=Bwe(this.tokens.heading.fontSize,this.tokens.heading.fontWeight,s.props.level);return{fontSize:e.fontSize,fontWeight:e.fontWeight,lineHeight:e.lineHeight}}getHeadingFirstLineY(s,e,t,i,n){const o=Hwe(s.props.spacing,this.ir.project.style.density||"normal");if(o===null)return n<=1?e.y+e.height/2+t*.3:e.y+t;const r=Math.max(1,n)*i;return e.y+Math.max(o,(e.height-r)/2)+t}calculateTopbarLayout(s,e,t,i,n,o){const r=i.trim().length>0,l=r?e.y+24:e.y+e.height/2+18/2-4,c=r?l+20:0,d=16;let h=e.x+d,f=e.x+e.width-d;const p=String(s.props.icon||"").trim(),m=p?iw(p):"";let b=null;if(m){const H=e.y+(e.height-28)/2,te=18;b={badgeX:h,badgeY:H,badgeSize:28,badgeRadius:6,iconX:h+(28-te)/2,iconY:H+(28-te)/2,iconSize:te,iconSvg:m},h+=38}const C=this.parseBooleanProp(s.props.avatar,!1);let y=null;if(C){const H=f-28,te=e.y+(e.height-28)/2;y={cx:H+28/2,cy:te+28/2,r:28/2},f=H-8}let S=null;const L=o.trim();if(L){const Se=Math.max(56,Math.ceil(this.estimateTextWidth(L,12)+24)),Ie=f-Se,Ue=e.y+(e.height-28)/2;S={x:Ie,y:Ue,width:Se,height:28,label:L},f=Ie-8}const x=n.split(",").map(Le=>Le.trim()).filter(Boolean),E=32,D=e.y+(e.height-E)/2,T=8,M=h+80,A=Math.max(0,f-M),W=x.map(Le=>({label:Le,width:Math.max(64,Math.min(140,Math.ceil(this.estimateTextWidth(Le,12)+28)))})),z=[];let U=0;for(const Le of W){const H=U+Le.width+(z.length>0?T:0);if(H>A)break;z.push(Le),U=H}let X=f-U;const J=z.map(Le=>{const H={x:X,y:D,width:Le.width,height:E,label:Le.label};return X+=Le.width+T,H}),G=J.length>0?J[0].x:S?S.x:y?y.cx-y.r:e.x+e.width-d,Y=Math.max(40,G-h-12),ie=this.truncateTextToWidth(t,Y,18),ve=r?this.truncateTextToWidth(i,Y,13):"";return{hasSubtitle:r,titleY:l,subtitleY:c,textX:h,titleMaxWidth:Y,visibleTitle:ie,visibleSubtitle:ve,leftIcon:b,actions:J,userBadge:S,avatar:y}}parseBooleanProp(s,e=!1){if(typeof s=="boolean")return s;if(typeof s=="string"){const t=s.toLowerCase().trim();if(t==="true")return!0;if(t==="false")return!1}return e}escapeXml(s){return s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}getDataNodeId(s){return s.meta.nodeId?` data-node-id="${s.meta.nodeId}"`:""}};function zmt(s,e,t){return new Vmt(s,e,t).render()}function Umt(s,e){const[t,i]=mi.useState(null),[n,o]=mi.useState([]),[r,a]=mi.useState("idle");return mi.useEffect(()=>{if(!s||s.trim().length===0){i(null),o([]);return}(async()=>{try{a("parsing");const c=[];let d;try{d=umt(s)}catch(D){const T=D instanceof Error?D.message:"Failed to parse Wire DSL";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}let h;try{h=xmt(d)}catch(D){const T=D instanceof Error?D.message:"Failed to generate IR";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}a("rendering");let f;try{f=Tmt(h)}catch(D){const T=D instanceof Error?D.message:"Failed to calculate layout";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}let p;const b=(e?h.project.screens.find(D=>D.name===e):null)?.name||h.project.screens[0]?.name;try{p=zmt(h,f,{screenName:b})}catch(D){const T=D instanceof Error?D.message:"Failed to render SVG";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}const C=h.project.screens.length,y=h.project.screens.reduce((D,T)=>D+$mt(T),0),S=h.project.screens.find(D=>D.name===b),L=S?.viewport.width||800,x=S?.viewport.height||600,E=h.project.screens.map(D=>({name:D.name,id:D.id}));i({svg:p,width:L,height:x,projectName:h.project.name,screenCount:C,componentCount:y,screens:E,selectedScreenName:b}),o([])}catch(c){const d=c instanceof Error?c.message:"Unknown error";o([{line:1,column:1,message:d,severity:"error"}]),i(null)}finally{a("idle")}})()},[s,e]),{renderResult:t,diagnostics:n,renderState:r}}function $mt(s){if(!s.layout)return 0;let e=0;const t=i=>{i.type==="component"?e++:i.children&&i.children.forEach(t)};return t(s.layout),e}const jmt=()=>{const[s,e]=mi.useState({zoom:1,fitZoom:1}),t=mi.useRef(null),i=mi.useRef(0),n=mi.useRef(0),o=mi.useCallback(()=>{if(!t.current||i.current<=0||n.current<=0)return 1;const h=40,f=t.current.clientWidth-h,p=t.current.clientHeight-h,m=Math.min(f/i.current,p/n.current);return Math.min(m,1)},[]),r=mi.useCallback(()=>{if(!t.current)return;const h=t.current.querySelector("svg");if(!h)return;const f=parseFloat(h.getAttribute("width")||"0"),p=parseFloat(h.getAttribute("height")||"0");if(f>0&&p>0){const m=i.current===0;if(i.current=f,n.current=p,m){const b=o();e({zoom:b,fitZoom:b})}else{const b=o();e(C=>({...C,fitZoom:b}))}}},[o]),a=mi.useCallback(()=>{e(h=>({...h,zoom:Math.min(h.zoom+.1,3)}))},[]),l=mi.useCallback(()=>{e(h=>({...h,zoom:Math.max(h.zoom-.1,.1)}))},[]),c=mi.useCallback(()=>{e(h=>({...h,zoom:h.fitZoom}))},[]),d=mi.useCallback(h=>{if(!h.ctrlKey&&!h.metaKey)return;h.preventDefault();const f=h.deltaY>0?-1:1;e(p=>({...p,zoom:Math.max(.1,Math.min(p.zoom+.1*f,3))}))},[]);return{zoom:s.zoom,fitZoom:s.fitZoom,originalWidth:i.current,originalHeight:n.current,zoomIn:a,zoomOut:l,resetZoom:c,handleWheel:d,setPreviewRef:h=>{t.current=h},extractAndInitialize:r}},qmt=()=>{const[s,e]=mi.useState(null),t=mi.useCallback(async()=>{try{const o=await window.showOpenFilePicker({types:[{description:"Wire Files",accept:{"text/plain":[".wire"]}}],multiple:!1});if(o.length===0)return null;const r=o[0],a=await r.getFile(),l=await a.text();return e({name:a.name,handle:r}),{name:a.name,content:l,handle:r}}catch(o){return o instanceof DOMException&&o.name!=="AbortError"&&console.error("Error opening file:",o),null}},[]),i=mi.useCallback(async o=>{if(!s)return!1;try{const r=await s.handle.createWritable();return await r.write(o),await r.close(),!0}catch(r){return console.error("Error saving file:",r),!1}},[s]),n=mi.useCallback(async(o,r)=>{try{const a=await window.showSaveFilePicker({types:[{description:"Wire Files",accept:{"text/plain":[".wire"]}}],suggestedName:r||"untitled.wire"}),l=await a.createWritable();return await l.write(o),await l.close(),e({name:a.name,handle:a}),{name:a.name,handle:a}}catch(a){return a instanceof DOMException&&a.name==="AbortError"?!1:(a instanceof DOMException&&a.name!=="AbortError"&&console.error("Error saving file:",a),null)}},[]);return{fileHandle:s,setFileHandle:e,openFile:t,saveFile:i,saveFileAs:n}},Gmt=()=>{const{openFile:s,saveFile:e,saveFileAs:t}=qmt(),i=bd(H=>H.files),n=bd(H=>H.currentFileId);bd(H=>H.previewMode);const o=bd(H=>H.selectedScreen),r=bd(H=>H.createFile),a=bd(H=>H.updateFileContent),l=bd(H=>H.renameFile),c=bd(H=>H.markFileSaved);bd(H=>H.setPreviewMode);const d=bd(H=>H.setSelectedScreen);bd(H=>H.getCurrentFile);const h=i.get(n),[f,p]=mi.useState(!1),m=mi.useRef(null),b=mi.useRef(null),C=mi.useRef(null),{renderState:y,renderResult:S,diagnostics:L}=Umt(h?.content||"",o),{zoom:x,originalWidth:E,originalHeight:D,zoomIn:T,zoomOut:M,resetZoom:A,handleWheel:W,setPreviewRef:z,extractAndInitialize:U}=jmt();mi.useEffect(()=>{z(b.current)},[z]),mi.useEffect(()=>{A()},[n,A]),mi.useEffect(()=>{const H=setTimeout(()=>{U()},0);return()=>clearTimeout(H)},[S?.svg,U]),mi.useEffect(()=>{if(!b.current||!C.current||E<=0||D<=0)return;const H=C.current.querySelector("svg");if(!H)return;const te=E*x,Se=D*x;C.current.style.width=te+"px",C.current.style.height=Se+"px",H.style.width=te+"px",H.style.height=Se+"px",setTimeout(()=>{if(!b.current)return;const Ie=b.current,Ue=(Ie.scrollWidth-Ie.clientWidth)/2,it=(Ie.scrollHeight-Ie.clientHeight)/2;Ie.scrollLeft=Math.max(0,Ue),Ie.scrollTop=Math.max(0,it)},0)},[x,E,D]);const K=H=>{a(n,H)},X=()=>{const H=`untitled-${Date.now()}.wire`;r(H),m.current=null},J=async()=>{if(typeof window<"u"&&"showOpenFilePicker"in window){const te=await s();if(te){r(te.name,te.content),m.current=te.handle;return}}m.current=null;const H=document.createElement("input");H.type="file",H.accept=".wire,.txt",H.onchange=te=>{const Se=te.target.files?.[0];if(Se){const Ie=new FileReader;Ie.onload=Ue=>{const it=Ue.target?.result;r(Se.name,it)},Ie.readAsText(Se)}},H.click()},G=()=>{if(!S?.svg){alert("No SVG content to export");return}const H=document.createElement("a");H.setAttribute("href","data:image/svg+xml;charset=utf-8,"+encodeURIComponent(S.svg));const te=h?.name?.replace(/\.wire$/,"")||"export";H.setAttribute("download",`${te}.svg`),H.style.display="none",document.body.appendChild(H),H.click(),document.body.removeChild(H)},Y=async H=>{try{const Se=await(await fetch(`/examples/${H}.wire`)).text();r(`${H}.wire`,Se),m.current=null}catch(te){console.error("Error loading example:",te)}},ie=async()=>{if(!h)return;if(m.current)try{if(await e(h.content)){c(n);return}}catch(te){console.error("Error saving:",te)}if(typeof window<"u"&&"showSaveFilePicker"in window)try{const te=await t(h.content,h.name);if(te===!1)return;if(te){l(n,te.name),c(n),m.current=te.handle;return}}catch(te){console.error("Error in save as:",te)}const H=document.createElement("a");H.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(h.content)),H.setAttribute("download",h.name),H.style.display="none",document.body.appendChild(H),H.click(),document.body.removeChild(H),c(n)},ve=async()=>{if(!h)return;if(typeof window<"u"&&"showSaveFilePicker"in window){const te=await t(h.content,h.name);if(te===!1)return;if(te){l(n,te.name),c(n),m.current=te.handle;return}}const H=document.createElement("a");H.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(h.content)),H.setAttribute("download",h.name),H.style.display="none",document.body.appendChild(H),H.click(),document.body.removeChild(H),c(n)},Le=H=>{l(n,H)};return mi.useEffect(()=>{const H=te=>{if(!(!te.ctrlKey&&!te.metaKey))switch(te.key.toLowerCase()){case"s":te.preventDefault(),te.shiftKey?ve():ie();break;case"n":te.preventDefault(),X();break;case"o":te.preventDefault(),J();break;case"e":te.preventDefault(),G();break}};return document.addEventListener("keydown",H),()=>document.removeEventListener("keydown",H)},[ie,ve,X,J,G]),h?$e.jsxs("div",{style:{height:"100vh",display:"flex",flexDirection:"column",backgroundColor:"#ffffff"},children:[$e.jsx(rde,{currentFileName:h.name,isDirty:h.isDirty,onNew:X,onOpen:J,onSave:ie,onSaveAs:ve,onRename:Le,onExport:G,onExampleSelect:Y}),$e.jsxs("div",{style:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"},children:[$e.jsxs("div",{style:{flex:1,overflow:"hidden",display:"flex",flexDirection:"row"},children:[$e.jsx("div",{style:{flex:"0 0 50%",height:"100%",overflow:"hidden",backgroundColor:"#ffffff",borderRight:"1px solid #e5e7eb",display:"flex",flexDirection:"column"},children:$e.jsx(DX,{content:h.content,onChange:K,fileName:h.name,language:"wire"})}),$e.jsx("div",{style:{width:"1px",backgroundColor:"#d1d5db",cursor:"col-resize",transition:"background-color 0.2s"},onMouseEnter:H=>H.currentTarget.style.backgroundColor="#9ca3af",onMouseLeave:H=>H.currentTarget.style.backgroundColor="#d1d5db"}),$e.jsxs("div",{style:{flex:"0 0 50%",height:"100%",overflow:"hidden",backgroundColor:"#fafbfc",display:"flex",flexDirection:"column",position:"relative"},children:[$e.jsxs("div",{style:{position:"absolute",top:"15px",right:"15px",zIndex:10,display:"flex",gap:"6px",backgroundColor:"#ffffff",borderRadius:"6px",boxShadow:"0 1px 3px rgba(0,0,0,0.1)",padding:"6px"},children:[S?.screens&&S.screens.length>1&&$e.jsxs($e.Fragment,{children:[$e.jsxs("div",{style:{position:"relative",display:"inline-block"},children:[$e.jsxs("button",{style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"12px",fontWeight:"500",color:"#374151",transition:"all 0.2s",maxWidth:"150px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",display:"flex",alignItems:"center",gap:"6px"},onClick:H=>{const te=H.currentTarget.nextElementSibling;te&&(te.style.display=te.style.display==="none"?"block":"none")},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Select screen",children:[$e.jsx("span",{style:{flex:1,textAlign:"left"},children:S.selectedScreenName||"Screen"}),$e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:$e.jsx("polyline",{points:"6 9 12 15 18 9"})})]}),$e.jsx("div",{style:{position:"absolute",top:"100%",left:"0",marginTop:"4px",backgroundColor:"#ffffff",border:"1px solid #d1d5db",borderRadius:"4px",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:100,minWidth:"160px",display:"none"},onMouseLeave:H=>{H.currentTarget.style.display="none"},children:S.screens.map((H,te)=>$e.jsx("button",{onClick:Se=>{d(H.name);const Ie=Se.currentTarget.parentElement;Ie&&(Ie.style.display="none")},style:{width:"100%",textAlign:"left",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"12px",color:S.selectedScreenName===H.name?"#3b82f6":"#374151",backgroundColor:S.selectedScreenName===H.name?"#eff6ff":"transparent",border:"none",cursor:"pointer",transition:"background-color 0.2s",fontWeight:S.selectedScreenName===H.name?"600":"500",borderTopLeftRadius:te===0?"4px":"0px",borderTopRightRadius:te===0?"4px":"0px",borderBottomLeftRadius:te===S.screens.length-1?"4px":"0px",borderBottomRightRadius:te===S.screens.length-1?"4px":"0px"},onMouseEnter:Se=>{S.selectedScreenName!==H.name&&(Se.currentTarget.style.backgroundColor="#f3f4f6")},onMouseLeave:Se=>{S.selectedScreenName!==H.name&&(Se.currentTarget.style.backgroundColor="transparent")},children:H.name},H.id))})]}),$e.jsx("div",{style:{width:"1px",backgroundColor:"#d1d5db"}})]}),$e.jsx("button",{onClick:M,style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"12px",fontWeight:"500",color:"#374151",transition:"all 0.2s"},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Zoom Out (Ctrl + Scroll)",children:"−"}),$e.jsxs("div",{style:{padding:"6px 10px",backgroundColor:"#f3f4f6",borderRadius:"4px",fontSize:"12px",fontWeight:"500",color:"#374151",minWidth:"50px",textAlign:"center"},children:[Math.round(x*100),"%"]}),$e.jsx("button",{onClick:T,style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"12px",fontWeight:"500",color:"#374151",transition:"all 0.2s"},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Zoom In (Ctrl + Scroll)",children:"+"}),$e.jsx("div",{style:{width:"1px",backgroundColor:"#d1d5db"}}),$e.jsx("button",{onClick:A,style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"11px",fontWeight:"500",color:"#374151",transition:"all 0.2s"},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Reset Zoom",children:"Reset"})]}),$e.jsx("div",{ref:b,style:{flex:1,overflow:"auto",display:"grid",placeItems:"center",padding:"20px",userSelect:"none"},onWheel:W,children:y==="parsing"||y==="rendering"?$e.jsx("div",{style:{color:"#6b7280",fontSize:"14px"},children:y==="parsing"?"Parsing...":"Rendering..."}):L.length>0?$e.jsxs("div",{style:{color:"#dc2626",fontSize:"14px",textAlign:"center"},children:[$e.jsx("div",{style:{marginBottom:"10px",fontWeight:"500"},children:"Parse Error"}),L[0]?.message]}):S?.svg?$e.jsx("div",{ref:C,dangerouslySetInnerHTML:{__html:S.svg}}):$e.jsx("div",{style:{color:"#9ca3af",fontSize:"14px"},children:"Add code to preview SVG"})})]})]}),L.length>0&&$e.jsxs("div",{style:{borderTop:"1px solid #e5e7eb",backgroundColor:"#fef2f2",padding:"12px 16px",maxHeight:"120px",overflow:"auto"},children:[$e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginBottom:"8px"},children:[$e.jsxs("span",{style:{color:"#dc2626",fontWeight:"500"},children:["Problems ",L.length]}),$e.jsx("button",{onClick:()=>p(!f),style:{marginLeft:"auto",background:"none",border:"none",cursor:"pointer",color:"#6b7280",fontSize:"12px",padding:"4px 8px"},children:f?"Hide":"Show"})]}),f&&$e.jsx("div",{style:{fontSize:"12px"},children:L.map((H,te)=>$e.jsxs("div",{style:{color:"#7f1d1d",marginBottom:"4px"},children:["Line ",H.line,": ",H.message]},te))})]})]})]}):$e.jsxs("div",{style:{height:"100vh",display:"flex",flexDirection:"column",backgroundColor:"#f9fafb"},children:[$e.jsx(rde,{currentFileName:"No file",isDirty:!1,onNew:X,onOpen:J,onSave:ie,onSaveAs:ve,onRename:Le,onExport:G,onExampleSelect:Y}),$e.jsx("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center"},children:$e.jsx("p",{style:{color:"#6b7280",fontSize:"16px"},children:"Create or open a file to start editing."})})]})};function Kmt(){return $e.jsx(Gmt,{})}const Whe={name:"size",type:"enum",options:["sm","md","lg"]},Qa={options:["none","xs","sm","md","lg","xl"]},Vhe={name:"variant",type:"enum",options:["primary","secondary","success","warning","danger","info"]},yM={name:"variant",type:"enum",options:["default","primary","secondary","success","warning","danger","info"]},Wwe={name:"level",type:"enum",options:["h1","h2","h3","h4","h5","h6"]},Zmt={name:"spacing",type:"enum",options:Qa.options},Ymt={name:"placeholder",type:"enum",options:["landscape","portrait","square","icon","avatar"]},p2={Heading:{name:"Heading",description:"Large heading text with level-based typography.",category:"Text",properties:{text:{name:"text",type:"string"},level:Wwe,spacing:Zmt},example:'component Heading text: "Users" level: h2 spacing: sm'},Text:{name:"Text",description:"Body text content.",category:"Text",properties:{content:{name:"content",type:"string"}},example:'component Text content: "Lorem ipsum dolor sit amet"'},Label:{name:"Label",description:"Small label text.",category:"Text",properties:{text:{name:"text",type:"string"}},example:'component Label text: "Field label"'},Button:{name:"Button",description:"Clickable action button.",category:"Action",properties:{text:{name:"text",type:"string"},variant:yM},example:'component Button text: "Save" variant: primary'},Link:{name:"Link",description:"Underlined text action without button background.",category:"Action",properties:{text:{name:"text",type:"string"},variant:Vhe},example:'component Link text: "Learn more" variant: info'},Input:{name:"Input",description:"Single-line input field.",category:"Input",properties:{label:{name:"label",type:"string"},placeholder:{name:"placeholder",type:"string"}},example:'component Input label: "Email" placeholder: "you@example.com"'},Textarea:{name:"Textarea",description:"Multi-line input field.",category:"Input",properties:{label:{name:"label",type:"string"},placeholder:{name:"placeholder",type:"string"},rows:{name:"rows",type:"number"}},example:'component Textarea label: "Notes" rows: 4'},Select:{name:"Select",description:"Select-style input control.",category:"Input",properties:{label:{name:"label",type:"string"},placeholder:{name:"placeholder",type:"string"},items:{name:"items",type:"string"}},example:'component Select label: "Role" items: "Admin,User,Guest"'},Checkbox:{name:"Checkbox",description:"Checkbox control.",category:"Input",properties:{label:{name:"label",type:"string"},checked:{name:"checked",type:"boolean"}},example:'component Checkbox label: "I agree" checked: true'},Radio:{name:"Radio",description:"Radio control.",category:"Input",properties:{label:{name:"label",type:"string"},checked:{name:"checked",type:"boolean"}},example:'component Radio label: "Option A" checked: true'},Toggle:{name:"Toggle",description:"Toggle switch control.",category:"Input",properties:{label:{name:"label",type:"string"},enabled:{name:"enabled",type:"boolean"}},example:'component Toggle label: "Dark mode" enabled: true'},Topbar:{name:"Topbar",description:"Top navigation/header bar.",category:"Navigation",properties:{title:{name:"title",type:"string"},subtitle:{name:"subtitle",type:"string"},icon:{name:"icon",type:"string"},avatar:{name:"avatar",type:"boolean"},actions:{name:"actions",type:"string"},user:{name:"user",type:"string"}},example:'component Topbar title: "Dashboard" subtitle: "Overview" icon: "menu" user: "john_doe" avatar: true'},SidebarMenu:{name:"SidebarMenu",description:"Vertical menu list.",category:"Navigation",properties:{items:{name:"items",type:"string"},icons:{name:"icons",type:"string"},active:{name:"active",type:"number"}},example:'component SidebarMenu items: "Home,Users,Settings" active: 0'},Sidebar:{name:"Sidebar",description:"Sidebar panel with title and items.",category:"Navigation",properties:{title:{name:"title",type:"string"},items:{name:"items",type:"string"},active:{name:"active",type:"string"},itemsMock:{name:"itemsMock",type:"number"}},example:'component Sidebar title: "Menu" items: "Home,Reports,Settings"'},Breadcrumbs:{name:"Breadcrumbs",description:"Navigation path component.",category:"Navigation",properties:{items:{name:"items",type:"string"},separator:{name:"separator",type:"string"}},example:'component Breadcrumbs items: "Home,Users,Detail" separator: ">"'},Tabs:{name:"Tabs",description:"Tabbed navigation component.",category:"Navigation",properties:{items:{name:"items",type:"string"},active:{name:"active",type:"number"}},example:'component Tabs items: "Overview,Details,Activity" active: 1'},Table:{name:"Table",description:"Tabular data placeholder.",category:"Data",properties:{title:{name:"title",type:"string"},columns:{name:"columns",type:"string"},rows:{name:"rows",type:"number"},rowsMock:{name:"rowsMock",type:"number"},mock:{name:"mock",type:"string"},random:{name:"random",type:"boolean"},pagination:{name:"pagination",type:"boolean"},pages:{name:"pages",type:"number"},paginationAlign:{name:"paginationAlign",type:"enum",options:["left","center","right"]}},example:'component Table columns: "User,City,Amount" rows: 8 mock: "name,city,amount"'},List:{name:"List",description:"Vertical list component.",category:"Data",properties:{title:{name:"title",type:"string"},items:{name:"items",type:"string"},itemsMock:{name:"itemsMock",type:"number"},mock:{name:"mock",type:"string"},random:{name:"random",type:"boolean"}},example:'component List title: "Cities" itemsMock: 6 mock: "city"'},StatCard:{name:"StatCard",description:"Metric card with optional caption and icon.",category:"Data",properties:{title:{name:"title",type:"string"},value:{name:"value",type:"string"},caption:{name:"caption",type:"string"},icon:{name:"icon",type:"string"}},example:'component StatCard title: "Users" value: "1,234" icon: "users"'},Card:{name:"Card",description:"Generic content card placeholder.",category:"Layout",properties:{title:{name:"title",type:"string"},text:{name:"text",type:"string"}},example:'component Card title: "Summary" text: "Card content"'},Chart:{name:"Chart",description:"Chart placeholder with deterministic trend data.",category:"Data",properties:{type:{name:"type",type:"enum",options:["bar","line","pie","area"]},height:{name:"height",type:"number"}},example:'component Chart type: "line" height: 240'},ChartPlaceholder:{name:"ChartPlaceholder",description:"Backward-compatible alias of Chart.",category:"Data",properties:{type:{name:"type",type:"enum",options:["bar","line","pie","area"]},height:{name:"height",type:"number"}},example:'component ChartPlaceholder type: "bar" height: 240'},Code:{name:"Code",description:"Code snippet display.",category:"Text",properties:{code:{name:"code",type:"string"}},example:'component Code code: "const x = 42;"'},Image:{name:"Image",description:"Image placeholder block.",category:"Media",properties:{placeholder:Ymt,icon:{name:"icon",type:"string"},height:{name:"height",type:"number"}},example:'component Image placeholder: "icon" icon: "search" height: 220'},Icon:{name:"Icon",description:"Standalone icon component.",category:"Media",properties:{type:{name:"type",type:"string"},size:Whe},example:'component Icon type: "home" size: md'},IconButton:{name:"IconButton",description:"Button that renders an icon.",category:"Action",properties:{icon:{name:"icon",type:"string"},size:Whe,variant:yM,disabled:{name:"disabled",type:"boolean"}},example:'component IconButton icon: "search" variant: default size: md'},Divider:{name:"Divider",description:"Horizontal separator line.",category:"Layout",properties:{},example:"component Divider"},Separate:{name:"Separate",description:"Invisible spacing separator.",category:"Layout",properties:{size:{name:"size",type:"enum",options:["none","xs","sm","md","lg","xl"]}},example:"component Separate size: md"},Badge:{name:"Badge",description:"Small status label.",category:"Feedback",properties:{text:{name:"text",type:"string"},variant:yM},example:'component Badge text: "Active" variant: success'},Alert:{name:"Alert",description:"Alert/message box.",category:"Feedback",properties:{variant:Vhe,title:{name:"title",type:"string"},text:{name:"text",type:"string"}},example:'component Alert variant: warning title: "Warning" text: "Review this action"'},Modal:{name:"Modal",description:"Modal overlay container.",category:"Feedback",properties:{title:{name:"title",type:"string"},visible:{name:"visible",type:"boolean",defaultValue:!0}},example:'component Modal title: "Confirm action" visible: false'}},Xmt={stack:{name:"stack",description:"Linear layout container.",properties:{direction:{name:"direction",type:"enum",options:["horizontal","vertical"]},align:{name:"align",type:"enum",options:["justify","left","center","right"]},gap:{name:"gap",type:"enum",options:Qa.options},padding:{name:"padding",type:"enum",options:Qa.options}},example:"layout stack(direction: vertical, gap: md, padding: md) { ... }"},grid:{name:"grid",description:"Grid layout container.",properties:{columns:{name:"columns",type:"number"},gap:{name:"gap",type:"enum",options:Qa.options},align:{name:"align",type:"enum",options:["justify","left","center","right"]},padding:{name:"padding",type:"enum",options:Qa.options}},example:"layout grid(columns: 12, gap: md) { ... }"},split:{name:"split",description:"Two-column split layout.",properties:{sidebar:{name:"sidebar",type:"number"},gap:{name:"gap",type:"enum",options:Qa.options},padding:{name:"padding",type:"enum",options:Qa.options}},example:"layout split(sidebar: 260, gap: md) { ... }"},panel:{name:"panel",description:"Panel container with border/background support.",properties:{padding:{name:"padding",type:"enum",options:Qa.options},gap:{name:"gap",type:"enum",options:Qa.options},background:{name:"background",type:"string"}},example:"layout panel(padding: md) { ... }"},card:{name:"card",description:"Card container with spacing/radius options.",properties:{padding:{name:"padding",type:"enum",options:Qa.options},gap:{name:"gap",type:"enum",options:Qa.options},radius:{name:"radius",type:"enum",options:["none","sm","md","lg"]},border:{name:"border",type:"boolean"},background:{name:"background",type:"string"}},example:"layout card(padding: md, gap: md, radius: md, border: true) { ... }"}},Qmt={size:["none","xs","sm","md","lg","xl"],variant:yM.options,align:["justify","left","center","right"],padding:Qa.options,gap:Qa.options,direction:["horizontal","vertical"],level:Wwe.options,spacing:Qa.options},nw={topLevel:["project","style","colors","mocks","define"],screen:["screen"],layout:["layout"],component:["component"],cell:["cell"],special:["span","sidebar","columns","gap","padding","direction","Component"]};function Jmt(s){const e=s.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"");if(e.trim().length===0)return"empty-file";let t=0,i=0,n=0,o=!1,r=!1,a=!1;const l=e.split(`
1670
+ `),o=t*.6,r=Math.max(e||0,o),a=Math.max(1,Math.floor(r/o)),l=[];for(const c of n){if(!c.trim()){l.push("");continue}const d=c.split(/\s+/).filter(Boolean);let h="";for(const f of d){const p=h?`${h} ${f}`:f;if(p.length<=a){h=p;continue}if(h&&(l.push(h),h=""),f.length<=a){h=f;continue}for(let m=0;m<f.length;m+=a)l.push(f.slice(m,m+a))}h&&l.push(h)}return l.length>0?l:[""]}clampControlWidth(s,e){const t=Math.max(1,e||0);return Math.max(1,Math.min(s,t))}truncateTextToWidth(s,e,t){if(e<=0)return"";if(this.estimateTextWidth(s,t)<=e+.01)return s;const n="...",o=this.estimateTextWidth(n,t);if(o>=e-.01)return".";let r="";for(const a of s){const l=`${r}${a}`;if(this.estimateTextWidth(l,t)+o>e+.01)break;r=l}return`${r}${n}`}estimateTextWidth(s,e){let t=0;for(const i of s)/\s/.test(i)?t+=e*.33:/[.,:;'"`|!iIl]/.test(i)?t+=e*.32:/[MW@#%&]/.test(i)?t+=e*.9:t+=e*.6;return t}generateUpwardTrendValues(s,e,t){if(s<=0)return[];if(s===1)return[t];const i=t-e,n=[0,.14,-.09,.11,-.06,.08,-.05],o=Array.from({length:s},(r,a)=>{const l=a/(s-1),c=e+i*Math.pow(l,.92),d=Math.sin((a+1)*1.19)*.08,h=Math.cos((a+2)*.77)*.05,f=n[a%n.length],p=a===0||a===s-1?0:a===1||a===s-2?.72:1,m=(d+h+f)*p;return Math.min(.95,Math.max(.08,c+m))});return o[0]=e,o[o.length-1]=t,o}getControlLabelOffset(s){return s.trim().length>0?18:0}getControlLabelBaselineY(s){return s+12}getHeadingTypography(s){const e=Bwe(this.tokens.heading.fontSize,this.tokens.heading.fontWeight,s.props.level);return{fontSize:e.fontSize,fontWeight:e.fontWeight,lineHeight:e.lineHeight}}getHeadingFirstLineY(s,e,t,i,n){const o=Hwe(s.props.spacing,this.ir.project.style.density||"normal");if(o===null)return n<=1?e.y+e.height/2+t*.3:e.y+t;const r=Math.max(1,n)*i;return e.y+Math.max(o,(e.height-r)/2)+t}calculateTopbarLayout(s,e,t,i,n,o){const r=i.trim().length>0,l=r?e.y+24:e.y+e.height/2+18/2-4,c=r?l+20:0,d=16;let h=e.x+d,f=e.x+e.width-d;const p=String(s.props.icon||"").trim(),m=p?iw(p):"";let b=null;if(m){const H=e.y+(e.height-28)/2,te=18;b={badgeX:h,badgeY:H,badgeSize:28,badgeRadius:6,iconX:h+(28-te)/2,iconY:H+(28-te)/2,iconSize:te,iconSvg:m},h+=38}const C=this.parseBooleanProp(s.props.avatar,!1);let y=null;if(C){const H=f-28,te=e.y+(e.height-28)/2;y={cx:H+28/2,cy:te+28/2,r:28/2},f=H-8}let S=null;const L=o.trim();if(L){const Se=Math.max(56,Math.ceil(this.estimateTextWidth(L,12)+24)),Ie=f-Se,Ue=e.y+(e.height-28)/2;S={x:Ie,y:Ue,width:Se,height:28,label:L},f=Ie-8}const x=n.split(",").map(Le=>Le.trim()).filter(Boolean),E=32,D=e.y+(e.height-E)/2,T=8,M=h+80,A=Math.max(0,f-M),W=x.map(Le=>({label:Le,width:Math.max(64,Math.min(140,Math.ceil(this.estimateTextWidth(Le,12)+28)))})),z=[];let U=0;for(const Le of W){const H=U+Le.width+(z.length>0?T:0);if(H>A)break;z.push(Le),U=H}let X=f-U;const J=z.map(Le=>{const H={x:X,y:D,width:Le.width,height:E,label:Le.label};return X+=Le.width+T,H}),G=J.length>0?J[0].x:S?S.x:y?y.cx-y.r:e.x+e.width-d,Y=Math.max(40,G-h-12),ie=this.truncateTextToWidth(t,Y,18),ve=r?this.truncateTextToWidth(i,Y,13):"";return{hasSubtitle:r,titleY:l,subtitleY:c,textX:h,titleMaxWidth:Y,visibleTitle:ie,visibleSubtitle:ve,leftIcon:b,actions:J,userBadge:S,avatar:y}}parseBooleanProp(s,e=!1){if(typeof s=="boolean")return s;if(typeof s=="string"){const t=s.toLowerCase().trim();if(t==="true")return!0;if(t==="false")return!1}return e}shouldButtonFillAvailableWidth(s){if(this.parseBooleanProp(s.props.block,!1))return!0;const e=this.parentContainerByChildId.get(s.id);if(!e||e.containerType!=="stack")return!1;const t=String(e.params.direction||"vertical"),i=e.style.align||"justify";return t==="horizontal"&&i==="justify"}buildParentContainerIndex(){this.parentContainerByChildId.clear(),Object.values(this.ir.project.nodes).forEach(s=>{s.kind==="container"&&s.children.forEach(e=>{this.parentContainerByChildId.set(e.ref,s)})})}escapeXml(s){return s.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}getDataNodeId(s){return s.meta.nodeId?` data-node-id="${s.meta.nodeId}"`:""}};function zmt(s,e,t){return new Vmt(s,e,t).render()}function Umt(s,e){const[t,i]=mi.useState(null),[n,o]=mi.useState([]),[r,a]=mi.useState("idle");return mi.useEffect(()=>{if(!s||s.trim().length===0){i(null),o([]);return}(async()=>{try{a("parsing");const c=[];let d;try{d=umt(s)}catch(D){const T=D instanceof Error?D.message:"Failed to parse Wire DSL";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}let h;try{h=xmt(d)}catch(D){const T=D instanceof Error?D.message:"Failed to generate IR";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}a("rendering");let f;try{f=Tmt(h)}catch(D){const T=D instanceof Error?D.message:"Failed to calculate layout";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}let p;const b=(e?h.project.screens.find(D=>D.name===e):null)?.name||h.project.screens[0]?.name;try{p=zmt(h,f,{screenName:b})}catch(D){const T=D instanceof Error?D.message:"Failed to render SVG";c.push({line:1,column:1,message:T,severity:"error"}),o(c),i(null),a("idle");return}const C=h.project.screens.length,y=h.project.screens.reduce((D,T)=>D+$mt(T),0),S=h.project.screens.find(D=>D.name===b),L=S?.viewport.width||800,x=S?.viewport.height||600,E=h.project.screens.map(D=>({name:D.name,id:D.id}));i({svg:p,width:L,height:x,projectName:h.project.name,screenCount:C,componentCount:y,screens:E,selectedScreenName:b}),o([])}catch(c){const d=c instanceof Error?c.message:"Unknown error";o([{line:1,column:1,message:d,severity:"error"}]),i(null)}finally{a("idle")}})()},[s,e]),{renderResult:t,diagnostics:n,renderState:r}}function $mt(s){if(!s.layout)return 0;let e=0;const t=i=>{i.type==="component"?e++:i.children&&i.children.forEach(t)};return t(s.layout),e}const jmt=()=>{const[s,e]=mi.useState({zoom:1,fitZoom:1}),t=mi.useRef(null),i=mi.useRef(0),n=mi.useRef(0),o=mi.useCallback(()=>{if(!t.current||i.current<=0||n.current<=0)return 1;const h=40,f=t.current.clientWidth-h,p=t.current.clientHeight-h,m=Math.min(f/i.current,p/n.current);return Math.min(m,1)},[]),r=mi.useCallback(()=>{if(!t.current)return;const h=t.current.querySelector("svg");if(!h)return;const f=parseFloat(h.getAttribute("width")||"0"),p=parseFloat(h.getAttribute("height")||"0");if(f>0&&p>0){const m=i.current===0;if(i.current=f,n.current=p,m){const b=o();e({zoom:b,fitZoom:b})}else{const b=o();e(C=>({...C,fitZoom:b}))}}},[o]),a=mi.useCallback(()=>{e(h=>({...h,zoom:Math.min(h.zoom+.1,3)}))},[]),l=mi.useCallback(()=>{e(h=>({...h,zoom:Math.max(h.zoom-.1,.1)}))},[]),c=mi.useCallback(()=>{e(h=>({...h,zoom:h.fitZoom}))},[]),d=mi.useCallback(h=>{if(!h.ctrlKey&&!h.metaKey)return;h.preventDefault();const f=h.deltaY>0?-1:1;e(p=>({...p,zoom:Math.max(.1,Math.min(p.zoom+.1*f,3))}))},[]);return{zoom:s.zoom,fitZoom:s.fitZoom,originalWidth:i.current,originalHeight:n.current,zoomIn:a,zoomOut:l,resetZoom:c,handleWheel:d,setPreviewRef:h=>{t.current=h},extractAndInitialize:r}},qmt=()=>{const[s,e]=mi.useState(null),t=mi.useCallback(async()=>{try{const o=await window.showOpenFilePicker({types:[{description:"Wire Files",accept:{"text/plain":[".wire"]}}],multiple:!1});if(o.length===0)return null;const r=o[0],a=await r.getFile(),l=await a.text();return e({name:a.name,handle:r}),{name:a.name,content:l,handle:r}}catch(o){return o instanceof DOMException&&o.name!=="AbortError"&&console.error("Error opening file:",o),null}},[]),i=mi.useCallback(async o=>{if(!s)return!1;try{const r=await s.handle.createWritable();return await r.write(o),await r.close(),!0}catch(r){return console.error("Error saving file:",r),!1}},[s]),n=mi.useCallback(async(o,r)=>{try{const a=await window.showSaveFilePicker({types:[{description:"Wire Files",accept:{"text/plain":[".wire"]}}],suggestedName:r||"untitled.wire"}),l=await a.createWritable();return await l.write(o),await l.close(),e({name:a.name,handle:a}),{name:a.name,handle:a}}catch(a){return a instanceof DOMException&&a.name==="AbortError"?!1:(a instanceof DOMException&&a.name!=="AbortError"&&console.error("Error saving file:",a),null)}},[]);return{fileHandle:s,setFileHandle:e,openFile:t,saveFile:i,saveFileAs:n}},Gmt=()=>{const{openFile:s,saveFile:e,saveFileAs:t}=qmt(),i=bd(H=>H.files),n=bd(H=>H.currentFileId);bd(H=>H.previewMode);const o=bd(H=>H.selectedScreen),r=bd(H=>H.createFile),a=bd(H=>H.updateFileContent),l=bd(H=>H.renameFile),c=bd(H=>H.markFileSaved);bd(H=>H.setPreviewMode);const d=bd(H=>H.setSelectedScreen);bd(H=>H.getCurrentFile);const h=i.get(n),[f,p]=mi.useState(!1),m=mi.useRef(null),b=mi.useRef(null),C=mi.useRef(null),{renderState:y,renderResult:S,diagnostics:L}=Umt(h?.content||"",o),{zoom:x,originalWidth:E,originalHeight:D,zoomIn:T,zoomOut:M,resetZoom:A,handleWheel:W,setPreviewRef:z,extractAndInitialize:U}=jmt();mi.useEffect(()=>{z(b.current)},[z]),mi.useEffect(()=>{A()},[n,A]),mi.useEffect(()=>{const H=setTimeout(()=>{U()},0);return()=>clearTimeout(H)},[S?.svg,U]),mi.useEffect(()=>{if(!b.current||!C.current||E<=0||D<=0)return;const H=C.current.querySelector("svg");if(!H)return;const te=E*x,Se=D*x;C.current.style.width=te+"px",C.current.style.height=Se+"px",H.style.width=te+"px",H.style.height=Se+"px",setTimeout(()=>{if(!b.current)return;const Ie=b.current,Ue=(Ie.scrollWidth-Ie.clientWidth)/2,it=(Ie.scrollHeight-Ie.clientHeight)/2;Ie.scrollLeft=Math.max(0,Ue),Ie.scrollTop=Math.max(0,it)},0)},[x,E,D]);const K=H=>{a(n,H)},X=()=>{const H=`untitled-${Date.now()}.wire`;r(H),m.current=null},J=async()=>{if(typeof window<"u"&&"showOpenFilePicker"in window){const te=await s();if(te){r(te.name,te.content),m.current=te.handle;return}}m.current=null;const H=document.createElement("input");H.type="file",H.accept=".wire,.txt",H.onchange=te=>{const Se=te.target.files?.[0];if(Se){const Ie=new FileReader;Ie.onload=Ue=>{const it=Ue.target?.result;r(Se.name,it)},Ie.readAsText(Se)}},H.click()},G=()=>{if(!S?.svg){alert("No SVG content to export");return}const H=document.createElement("a");H.setAttribute("href","data:image/svg+xml;charset=utf-8,"+encodeURIComponent(S.svg));const te=h?.name?.replace(/\.wire$/,"")||"export";H.setAttribute("download",`${te}.svg`),H.style.display="none",document.body.appendChild(H),H.click(),document.body.removeChild(H)},Y=async H=>{try{const Se=await(await fetch(`/examples/${H}.wire`)).text();r(`${H}.wire`,Se),m.current=null}catch(te){console.error("Error loading example:",te)}},ie=async()=>{if(!h)return;if(m.current)try{if(await e(h.content)){c(n);return}}catch(te){console.error("Error saving:",te)}if(typeof window<"u"&&"showSaveFilePicker"in window)try{const te=await t(h.content,h.name);if(te===!1)return;if(te){l(n,te.name),c(n),m.current=te.handle;return}}catch(te){console.error("Error in save as:",te)}const H=document.createElement("a");H.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(h.content)),H.setAttribute("download",h.name),H.style.display="none",document.body.appendChild(H),H.click(),document.body.removeChild(H),c(n)},ve=async()=>{if(!h)return;if(typeof window<"u"&&"showSaveFilePicker"in window){const te=await t(h.content,h.name);if(te===!1)return;if(te){l(n,te.name),c(n),m.current=te.handle;return}}const H=document.createElement("a");H.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(h.content)),H.setAttribute("download",h.name),H.style.display="none",document.body.appendChild(H),H.click(),document.body.removeChild(H),c(n)},Le=H=>{l(n,H)};return mi.useEffect(()=>{const H=te=>{if(!(!te.ctrlKey&&!te.metaKey))switch(te.key.toLowerCase()){case"s":te.preventDefault(),te.shiftKey?ve():ie();break;case"n":te.preventDefault(),X();break;case"o":te.preventDefault(),J();break;case"e":te.preventDefault(),G();break}};return document.addEventListener("keydown",H),()=>document.removeEventListener("keydown",H)},[ie,ve,X,J,G]),h?$e.jsxs("div",{style:{height:"100vh",display:"flex",flexDirection:"column",backgroundColor:"#ffffff"},children:[$e.jsx(rde,{currentFileName:h.name,isDirty:h.isDirty,onNew:X,onOpen:J,onSave:ie,onSaveAs:ve,onRename:Le,onExport:G,onExampleSelect:Y}),$e.jsxs("div",{style:{flex:1,overflow:"hidden",display:"flex",flexDirection:"column"},children:[$e.jsxs("div",{style:{flex:1,overflow:"hidden",display:"flex",flexDirection:"row"},children:[$e.jsx("div",{style:{flex:"0 0 50%",height:"100%",overflow:"hidden",backgroundColor:"#ffffff",borderRight:"1px solid #e5e7eb",display:"flex",flexDirection:"column"},children:$e.jsx(DX,{content:h.content,onChange:K,fileName:h.name,language:"wire"})}),$e.jsx("div",{style:{width:"1px",backgroundColor:"#d1d5db",cursor:"col-resize",transition:"background-color 0.2s"},onMouseEnter:H=>H.currentTarget.style.backgroundColor="#9ca3af",onMouseLeave:H=>H.currentTarget.style.backgroundColor="#d1d5db"}),$e.jsxs("div",{style:{flex:"0 0 50%",height:"100%",overflow:"hidden",backgroundColor:"#fafbfc",display:"flex",flexDirection:"column",position:"relative"},children:[$e.jsxs("div",{style:{position:"absolute",top:"15px",right:"15px",zIndex:10,display:"flex",gap:"6px",backgroundColor:"#ffffff",borderRadius:"6px",boxShadow:"0 1px 3px rgba(0,0,0,0.1)",padding:"6px"},children:[S?.screens&&S.screens.length>1&&$e.jsxs($e.Fragment,{children:[$e.jsxs("div",{style:{position:"relative",display:"inline-block"},children:[$e.jsxs("button",{style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"12px",fontWeight:"500",color:"#374151",transition:"all 0.2s",maxWidth:"150px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",display:"flex",alignItems:"center",gap:"6px"},onClick:H=>{const te=H.currentTarget.nextElementSibling;te&&(te.style.display=te.style.display==="none"?"block":"none")},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Select screen",children:[$e.jsx("span",{style:{flex:1,textAlign:"left"},children:S.selectedScreenName||"Screen"}),$e.jsx("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{flexShrink:0},children:$e.jsx("polyline",{points:"6 9 12 15 18 9"})})]}),$e.jsx("div",{style:{position:"absolute",top:"100%",left:"0",marginTop:"4px",backgroundColor:"#ffffff",border:"1px solid #d1d5db",borderRadius:"4px",boxShadow:"0 4px 6px rgba(0, 0, 0, 0.1)",zIndex:100,minWidth:"160px",display:"none"},onMouseLeave:H=>{H.currentTarget.style.display="none"},children:S.screens.map((H,te)=>$e.jsx("button",{onClick:Se=>{d(H.name);const Ie=Se.currentTarget.parentElement;Ie&&(Ie.style.display="none")},style:{width:"100%",textAlign:"left",paddingLeft:"12px",paddingRight:"12px",paddingTop:"8px",paddingBottom:"8px",fontSize:"12px",color:S.selectedScreenName===H.name?"#3b82f6":"#374151",backgroundColor:S.selectedScreenName===H.name?"#eff6ff":"transparent",border:"none",cursor:"pointer",transition:"background-color 0.2s",fontWeight:S.selectedScreenName===H.name?"600":"500",borderTopLeftRadius:te===0?"4px":"0px",borderTopRightRadius:te===0?"4px":"0px",borderBottomLeftRadius:te===S.screens.length-1?"4px":"0px",borderBottomRightRadius:te===S.screens.length-1?"4px":"0px"},onMouseEnter:Se=>{S.selectedScreenName!==H.name&&(Se.currentTarget.style.backgroundColor="#f3f4f6")},onMouseLeave:Se=>{S.selectedScreenName!==H.name&&(Se.currentTarget.style.backgroundColor="transparent")},children:H.name},H.id))})]}),$e.jsx("div",{style:{width:"1px",backgroundColor:"#d1d5db"}})]}),$e.jsx("button",{onClick:M,style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"12px",fontWeight:"500",color:"#374151",transition:"all 0.2s"},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Zoom Out (Ctrl + Scroll)",children:"−"}),$e.jsxs("div",{style:{padding:"6px 10px",backgroundColor:"#f3f4f6",borderRadius:"4px",fontSize:"12px",fontWeight:"500",color:"#374151",minWidth:"50px",textAlign:"center"},children:[Math.round(x*100),"%"]}),$e.jsx("button",{onClick:T,style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"12px",fontWeight:"500",color:"#374151",transition:"all 0.2s"},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Zoom In (Ctrl + Scroll)",children:"+"}),$e.jsx("div",{style:{width:"1px",backgroundColor:"#d1d5db"}}),$e.jsx("button",{onClick:A,style:{padding:"6px 10px",backgroundColor:"#f3f4f6",border:"1px solid #d1d5db",borderRadius:"4px",cursor:"pointer",fontSize:"11px",fontWeight:"500",color:"#374151",transition:"all 0.2s"},onMouseEnter:H=>{H.currentTarget.style.backgroundColor="#e5e7eb"},onMouseLeave:H=>{H.currentTarget.style.backgroundColor="#f3f4f6"},title:"Reset Zoom",children:"Reset"})]}),$e.jsx("div",{ref:b,style:{flex:1,overflow:"auto",display:"grid",placeItems:"center",padding:"20px",userSelect:"none"},onWheel:W,children:y==="parsing"||y==="rendering"?$e.jsx("div",{style:{color:"#6b7280",fontSize:"14px"},children:y==="parsing"?"Parsing...":"Rendering..."}):L.length>0?$e.jsxs("div",{style:{color:"#dc2626",fontSize:"14px",textAlign:"center"},children:[$e.jsx("div",{style:{marginBottom:"10px",fontWeight:"500"},children:"Parse Error"}),L[0]?.message]}):S?.svg?$e.jsx("div",{ref:C,dangerouslySetInnerHTML:{__html:S.svg}}):$e.jsx("div",{style:{color:"#9ca3af",fontSize:"14px"},children:"Add code to preview SVG"})})]})]}),L.length>0&&$e.jsxs("div",{style:{borderTop:"1px solid #e5e7eb",backgroundColor:"#fef2f2",padding:"12px 16px",maxHeight:"120px",overflow:"auto"},children:[$e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:"8px",marginBottom:"8px"},children:[$e.jsxs("span",{style:{color:"#dc2626",fontWeight:"500"},children:["Problems ",L.length]}),$e.jsx("button",{onClick:()=>p(!f),style:{marginLeft:"auto",background:"none",border:"none",cursor:"pointer",color:"#6b7280",fontSize:"12px",padding:"4px 8px"},children:f?"Hide":"Show"})]}),f&&$e.jsx("div",{style:{fontSize:"12px"},children:L.map((H,te)=>$e.jsxs("div",{style:{color:"#7f1d1d",marginBottom:"4px"},children:["Line ",H.line,": ",H.message]},te))})]})]})]}):$e.jsxs("div",{style:{height:"100vh",display:"flex",flexDirection:"column",backgroundColor:"#f9fafb"},children:[$e.jsx(rde,{currentFileName:"No file",isDirty:!1,onNew:X,onOpen:J,onSave:ie,onSaveAs:ve,onRename:Le,onExport:G,onExampleSelect:Y}),$e.jsx("div",{style:{flex:1,display:"flex",alignItems:"center",justifyContent:"center"},children:$e.jsx("p",{style:{color:"#6b7280",fontSize:"16px"},children:"Create or open a file to start editing."})})]})};function Kmt(){return $e.jsx(Gmt,{})}const Whe={name:"size",type:"enum",options:["sm","md","lg"]},Qa={options:["none","xs","sm","md","lg","xl"]},Vhe={name:"variant",type:"enum",options:["primary","secondary","success","warning","danger","info"]},yM={name:"variant",type:"enum",options:["default","primary","secondary","success","warning","danger","info"]},Wwe={name:"level",type:"enum",options:["h1","h2","h3","h4","h5","h6"]},Zmt={name:"spacing",type:"enum",options:Qa.options},Ymt={name:"placeholder",type:"enum",options:["landscape","portrait","square","icon","avatar"]},p2={Heading:{name:"Heading",description:"Large heading text with level-based typography.",category:"Text",properties:{text:{name:"text",type:"string"},level:Wwe,spacing:Zmt},example:'component Heading text: "Users" level: h2 spacing: sm'},Text:{name:"Text",description:"Body text content.",category:"Text",properties:{content:{name:"content",type:"string"}},example:'component Text content: "Lorem ipsum dolor sit amet"'},Label:{name:"Label",description:"Small label text.",category:"Text",properties:{text:{name:"text",type:"string"}},example:'component Label text: "Field label"'},Button:{name:"Button",description:"Clickable action button.",category:"Action",properties:{text:{name:"text",type:"string"},variant:yM,block:{name:"block",type:"boolean"}},example:'component Button text: "Save" variant: primary block: true'},Link:{name:"Link",description:"Underlined text action without button background.",category:"Action",properties:{text:{name:"text",type:"string"},variant:Vhe},example:'component Link text: "Learn more" variant: info'},Input:{name:"Input",description:"Single-line input field.",category:"Input",properties:{label:{name:"label",type:"string"},placeholder:{name:"placeholder",type:"string"}},example:'component Input label: "Email" placeholder: "you@example.com"'},Textarea:{name:"Textarea",description:"Multi-line input field.",category:"Input",properties:{label:{name:"label",type:"string"},placeholder:{name:"placeholder",type:"string"},rows:{name:"rows",type:"number"}},example:'component Textarea label: "Notes" rows: 4'},Select:{name:"Select",description:"Select-style input control.",category:"Input",properties:{label:{name:"label",type:"string"},placeholder:{name:"placeholder",type:"string"},items:{name:"items",type:"string"}},example:'component Select label: "Role" items: "Admin,User,Guest"'},Checkbox:{name:"Checkbox",description:"Checkbox control.",category:"Input",properties:{label:{name:"label",type:"string"},checked:{name:"checked",type:"boolean"}},example:'component Checkbox label: "I agree" checked: true'},Radio:{name:"Radio",description:"Radio control.",category:"Input",properties:{label:{name:"label",type:"string"},checked:{name:"checked",type:"boolean"}},example:'component Radio label: "Option A" checked: true'},Toggle:{name:"Toggle",description:"Toggle switch control.",category:"Input",properties:{label:{name:"label",type:"string"},enabled:{name:"enabled",type:"boolean"}},example:'component Toggle label: "Dark mode" enabled: true'},Topbar:{name:"Topbar",description:"Top navigation/header bar.",category:"Navigation",properties:{title:{name:"title",type:"string"},subtitle:{name:"subtitle",type:"string"},icon:{name:"icon",type:"string"},avatar:{name:"avatar",type:"boolean"},actions:{name:"actions",type:"string"},user:{name:"user",type:"string"}},example:'component Topbar title: "Dashboard" subtitle: "Overview" icon: "menu" user: "john_doe" avatar: true'},SidebarMenu:{name:"SidebarMenu",description:"Vertical menu list.",category:"Navigation",properties:{items:{name:"items",type:"string"},icons:{name:"icons",type:"string"},active:{name:"active",type:"number"}},example:'component SidebarMenu items: "Home,Users,Settings" active: 0'},Sidebar:{name:"Sidebar",description:"Sidebar panel with title and items.",category:"Navigation",properties:{title:{name:"title",type:"string"},items:{name:"items",type:"string"},active:{name:"active",type:"string"},itemsMock:{name:"itemsMock",type:"number"}},example:'component Sidebar title: "Menu" items: "Home,Reports,Settings"'},Breadcrumbs:{name:"Breadcrumbs",description:"Navigation path component.",category:"Navigation",properties:{items:{name:"items",type:"string"},separator:{name:"separator",type:"string"}},example:'component Breadcrumbs items: "Home,Users,Detail" separator: ">"'},Tabs:{name:"Tabs",description:"Tabbed navigation component.",category:"Navigation",properties:{items:{name:"items",type:"string"},active:{name:"active",type:"number"}},example:'component Tabs items: "Overview,Details,Activity" active: 1'},Table:{name:"Table",description:"Tabular data placeholder.",category:"Data",properties:{title:{name:"title",type:"string"},columns:{name:"columns",type:"string"},rows:{name:"rows",type:"number"},rowsMock:{name:"rowsMock",type:"number"},mock:{name:"mock",type:"string"},random:{name:"random",type:"boolean"},pagination:{name:"pagination",type:"boolean"},pages:{name:"pages",type:"number"},paginationAlign:{name:"paginationAlign",type:"enum",options:["left","center","right"]}},example:'component Table columns: "User,City,Amount" rows: 8 mock: "name,city,amount"'},List:{name:"List",description:"Vertical list component.",category:"Data",properties:{title:{name:"title",type:"string"},items:{name:"items",type:"string"},itemsMock:{name:"itemsMock",type:"number"},mock:{name:"mock",type:"string"},random:{name:"random",type:"boolean"}},example:'component List title: "Cities" itemsMock: 6 mock: "city"'},StatCard:{name:"StatCard",description:"Metric card with optional caption and icon.",category:"Data",properties:{title:{name:"title",type:"string"},value:{name:"value",type:"string"},caption:{name:"caption",type:"string"},icon:{name:"icon",type:"string"}},example:'component StatCard title: "Users" value: "1,234" icon: "users"'},Card:{name:"Card",description:"Generic content card placeholder.",category:"Layout",properties:{title:{name:"title",type:"string"},text:{name:"text",type:"string"}},example:'component Card title: "Summary" text: "Card content"'},Chart:{name:"Chart",description:"Chart placeholder with deterministic trend data.",category:"Data",properties:{type:{name:"type",type:"enum",options:["bar","line","pie","area"]},height:{name:"height",type:"number"}},example:'component Chart type: "line" height: 240'},ChartPlaceholder:{name:"ChartPlaceholder",description:"Backward-compatible alias of Chart.",category:"Data",properties:{type:{name:"type",type:"enum",options:["bar","line","pie","area"]},height:{name:"height",type:"number"}},example:'component ChartPlaceholder type: "bar" height: 240'},Code:{name:"Code",description:"Code snippet display.",category:"Text",properties:{code:{name:"code",type:"string"}},example:'component Code code: "const x = 42;"'},Image:{name:"Image",description:"Image placeholder block.",category:"Media",properties:{placeholder:Ymt,icon:{name:"icon",type:"string"},height:{name:"height",type:"number"}},example:'component Image placeholder: "icon" icon: "search" height: 220'},Icon:{name:"Icon",description:"Standalone icon component.",category:"Media",properties:{type:{name:"type",type:"string"},size:Whe},example:'component Icon type: "home" size: md'},IconButton:{name:"IconButton",description:"Button that renders an icon.",category:"Action",properties:{icon:{name:"icon",type:"string"},size:Whe,variant:yM,disabled:{name:"disabled",type:"boolean"}},example:'component IconButton icon: "search" variant: default size: md'},Divider:{name:"Divider",description:"Horizontal separator line.",category:"Layout",properties:{},example:"component Divider"},Separate:{name:"Separate",description:"Invisible spacing separator.",category:"Layout",properties:{size:{name:"size",type:"enum",options:["none","xs","sm","md","lg","xl"]}},example:"component Separate size: md"},Badge:{name:"Badge",description:"Small status label.",category:"Feedback",properties:{text:{name:"text",type:"string"},variant:yM},example:'component Badge text: "Active" variant: success'},Alert:{name:"Alert",description:"Alert/message box.",category:"Feedback",properties:{variant:Vhe,title:{name:"title",type:"string"},text:{name:"text",type:"string"}},example:'component Alert variant: warning title: "Warning" text: "Review this action"'},Modal:{name:"Modal",description:"Modal overlay container.",category:"Feedback",properties:{title:{name:"title",type:"string"},visible:{name:"visible",type:"boolean",defaultValue:!0}},example:'component Modal title: "Confirm action" visible: false'}},Xmt={stack:{name:"stack",description:"Linear layout container.",properties:{direction:{name:"direction",type:"enum",options:["horizontal","vertical"]},align:{name:"align",type:"enum",options:["justify","left","center","right"]},gap:{name:"gap",type:"enum",options:Qa.options},padding:{name:"padding",type:"enum",options:Qa.options}},example:"layout stack(direction: vertical, gap: md, padding: md) { ... }"},grid:{name:"grid",description:"Grid layout container.",properties:{columns:{name:"columns",type:"number"},gap:{name:"gap",type:"enum",options:Qa.options},align:{name:"align",type:"enum",options:["justify","left","center","right"]},padding:{name:"padding",type:"enum",options:Qa.options}},example:"layout grid(columns: 12, gap: md) { ... }"},split:{name:"split",description:"Two-column split layout.",properties:{sidebar:{name:"sidebar",type:"number"},gap:{name:"gap",type:"enum",options:Qa.options},padding:{name:"padding",type:"enum",options:Qa.options}},example:"layout split(sidebar: 260, gap: md) { ... }"},panel:{name:"panel",description:"Panel container with border/background support.",properties:{padding:{name:"padding",type:"enum",options:Qa.options},gap:{name:"gap",type:"enum",options:Qa.options},background:{name:"background",type:"string"}},example:"layout panel(padding: md) { ... }"},card:{name:"card",description:"Card container with spacing/radius options.",properties:{padding:{name:"padding",type:"enum",options:Qa.options},gap:{name:"gap",type:"enum",options:Qa.options},radius:{name:"radius",type:"enum",options:["none","sm","md","lg"]},border:{name:"border",type:"boolean"},background:{name:"background",type:"string"}},example:"layout card(padding: md, gap: md, radius: md, border: true) { ... }"}},Qmt={size:["none","xs","sm","md","lg","xl"],variant:yM.options,align:["justify","left","center","right"],padding:Qa.options,gap:Qa.options,direction:["horizontal","vertical"],level:Wwe.options,spacing:Qa.options},nw={topLevel:["project","style","colors","mocks","define"],screen:["screen"],layout:["layout"],component:["component"],cell:["cell"],special:["span","sidebar","columns","gap","padding","direction","Component"]};function Jmt(s){const e=s.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"");if(e.trim().length===0)return"empty-file";let t=0,i=0,n=0,o=!1,r=!1,a=!1;const l=e.split(`
1671
1671
  `);for(const c of l)c.match(/\bproject\s+"?[^{]*{/)&&(o=!0),c.match(/\bscreen\s+[A-Za-z_][A-Za-z0-9_]*\s*{/)&&(r=!0),c.match(/\blayout\s+(?:stack|grid|card|panel|split)\s*\(/)&&(a=!0),c.includes("project")&&c.includes("{")&&t++,c.includes("screen")&&c.includes("{")&&i++,c.includes("layout")&&c.includes("{")&&n++,t-=(c.match(/}/g)||[]).length,i-=(c.match(/}/g)||[]).length,n-=(c.match(/}/g)||[]).length;return o?a&&n>0?"inside-layout":r&&i>0?"inside-screen":(o&&t>0,"inside-project"):"empty-file"}[...Object.entries(p2).filter(([s])=>/^[A-Z]/.test(s)).map(([s,e])=>({label:s,kind:"Component",detail:e.description,documentation:e.description,insertText:`${s} `}))];const e_t=[...nw.topLevel.map(s=>({name:s,type:"keyword",description:`Wire DSL keyword: ${s}`})),...nw.screen.map(s=>({name:s,type:"keyword",description:`Wire DSL keyword: ${s}`})),...nw.layout.map(s=>({name:s,type:"keyword",description:`Wire DSL keyword: ${s}`})),...nw.component.map(s=>({name:s,type:"keyword",description:`Wire DSL keyword: ${s}`})),...nw.cell.map(s=>({name:s,type:"keyword",description:`Wire DSL keyword: ${s}`})),...nw.special.map(s=>({name:s,type:"keyword",description:`Wire DSL keyword: ${s}`})),...Object.entries(p2).map(([s,e])=>({name:s,type:"component",description:e.description||`Component: ${s}`}))];function t_t(){We.register({id:"wire"});const s=e_t.map(d=>d.name).join("|");We.setMonarchTokensProvider("wire",{tokenizer:{root:[[new RegExp(`\\b(${s})\\b`),"keyword"],[/\b(true|false|null)\b/,"constant"],[/\b(let|const|var|if|else|for|while|return|function)\b/,"keyword.control"],[/"(?:\\.|[^"\\])*"/,"string"],[/'(?:\\.|[^'\\])*'/,"string"],[/\/\/.*$/,"comment"],[/\/\*/,"comment","@comment"],[/\d+(\.\d+)?/,"number"],[/[=+\-*/%&|^<>!]=?|[(){}\[\];:.,]/,"operator"],[/\s+/,"white"]],comment:[[/[^*/]+/,"comment"],[/\*\//,"comment","@pop"],[/[*/]/,"comment"]]}}),kF.defineTheme("wire-light",{base:"vs",inherit:!0,rules:[{token:"keyword",foreground:"7928ca",fontStyle:"bold"},{token:"keyword.control",foreground:"7928ca",fontStyle:"bold"},{token:"constant",foreground:"c41a16"},{token:"string",foreground:"2a7e20"},{token:"number",foreground:"098658"},{token:"comment",foreground:"999999",fontStyle:"italic"}],colors:{"editor.background":"#ffffff","editor.foreground":"#333333","editor.lineNumbersColumn.background":"#f8f8f8","editorCursor.foreground":"#333333","editor.selectionBackground":"#d4d4d450","editorLineNumber.foreground":"#999999"}}),We.registerCompletionItemProvider("wire",{provideCompletionItems:(d,h)=>{const f=d.getLineContent(h.lineNumber).substring(0,h.column-1),p=d.getValue(),m=d.getOffsetAt(h),b=p.substring(0,m),C=e(f);if(C)return{suggestions:l(C,f)};if(/layout\s+\w*$/.test(f))return{suggestions:r()};if(/component\s+[A-Z]?\w*$/.test(f))return{suggestions:a()};if(/:\s+\w*$/.test(f))return{suggestions:c(f)};const y=Jmt(b);return y==="empty-file"?{suggestions:t()}:y==="inside-project"?{suggestions:i()}:y==="inside-screen"?{suggestions:n()}:y==="inside-layout"?{suggestions:o()}:{suggestions:[]}},triggerCharacters:[" ","{",":","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]});function e(d){const h=d.match(/component\s+([A-Z]\w*)/);if(!h)return null;const f=h[1];if(!p2[f])return null;const p=d.substring(h.index+h[0].length);return p.match(/^\s*$/)||p.match(/^\s+[\w-]+:/)?f:null}function t(){return[{label:"project",kind:We.CompletionItemKind.Keyword,detail:"Define a new Wire DSL project (root element)",insertText:'project "${1:ProjectName}" {\n ${2:}\n}',insertTextRules:We.CompletionItemInsertTextRule.InsertAsSnippet}]}function i(){return[{label:"tokens",kind:We.CompletionItemKind.Keyword,detail:"Define design tokens",insertText:"tokens "},{label:"colors",kind:We.CompletionItemKind.Keyword,detail:"Define custom color palette",insertText:`colors {
1672
1672
  \${1:}
1673
1673
  }`,insertTextRules:We.CompletionItemInsertTextRule.InsertAsSnippet},{label:"mocks",kind:We.CompletionItemKind.Keyword,detail:"Define mock data",insertText:`mocks {