Jauge de contexte, espace disque sur partage agrégé, panneau Fichiers

Trois défauts sans rapport entre eux, tous visibles à l'écran.

Jauge de contexte bloquée à « 0 / N (0 %) » : le comptage exact vient de
usage.prompt_tokens (include_usage), qu'un llama-server récent a cessé de
renvoyer. On note désormais si l'usage est arrivé ; sinon la fin de tour
publie l'estimation qui pilote déjà la compaction — approximative, mais
jamais absente. Et la souscription envoie la valeur courante juste après
le rattrapage : une page rechargée affichait zéro sur une discussion
pourtant pleine, faute d'événement ctx_used dans la fenêtre rejouée.

Espace disque : « il ne reste que 11,9 Go » sur un partage Unraid qui en
a des centaines. /mnt/user est servi par shfs, un FUSE qui agrège
plusieurs disques — statfs y renvoie l'espace d'un seul, et ce chiffre
REFUSAIT l'installation du modèle. Les systèmes de fichiers qui
approximent (FUSE, overlay, NFS, CIFS, Ceph, Gluster) sont reconnus par
leur magie : leur chiffre reste affiché, précédé d'un « ~ », mais ne
bloque plus rien.

Panneau Fichiers : le panneau entier défilait, emportant vers le haut
l'en-tête, le fil d'Ariane et le pied (occupation disque, bouton .zip)
dès qu'il y avait quelques fichiers. Seule la liste défile maintenant ;
le pied reste en bas et l'état vide se centre.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
MichaelandClaude Opus 5 committed 2026-08-19 08:28:53 +02:00
1 parent 895ff92ed8
commit b405adea6c
5118 files changed
+1264007 -23

No files matched your search

+1
View File
@@ -0,0 +1 @@
*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:DM Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:DM Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.-left-\[6px\]{left:-6px}.bottom-0{bottom:0}.bottom-10{bottom:2.5rem}.bottom-\[calc\(100\%\+6px\)\]{bottom:calc(100% + 6px)}.left-0{left:0}.left-0\.5{left:.125rem}.right-0{right:0}.right-0\.5{right:.125rem}.top-0{top:0}.toLine truncated
+88
View File
@@ -0,0 +1,88 @@
(function(){const i=document.createElement("link").relList;if(i&&i.supports&&i.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const c of a)if(c.type==="childList")for(const u of c.addedNodes)u.tagName==="LINK"&&u.rel==="modulepreload"&&o(u)}).observe(document,{childList:!0,subtree:!0});function r(a){const c={};return a.integrity&&(c.integrity=a.integrity),a.referrerPolicy&&(c.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?c.credentials="include":a.crossOrigin==="anonymous"?c.credentials="omit":c.credentials="same-origin",c}function o(a){if(a.ep)return;a.ep=!0;const c=r(a);fetch(a.href,c)}})();function lo(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var ta={exports:{}},wi={},na={exports:{}},Ce={};/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Uf;function Jm(){if(Uf)return Ce;Uf=1;var t=Symbol.for("react.element"),i=Symbol.for("react.portal"),r=Symbol.for("react.fragment"),o=Symbol.for("react.strict_mode"),a=Symbol.for("react.profiler"),c=Symbol.for("react.provider"),u=Symbol.for("react.context"),d=Symbol.for("react.forward_ref"),m=Symbol.for("react.suspense"),h=Symbol.for("react.memo"),y=Symbol.for("react.lazy"),x=Symbol.iterator;function v(P){return P===null||typeof P!="object"?null:(P=x&&P[x]||P["@@iterator"],typeof P=="function"?P:null)}var w={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},E=Object.assign,L={};function j(P,B,C){this.props=P,this.context=B,this.refs=L,this.updater=C||w}j.prototype.isReactComponent={},j.prototype.setState=function(P,B){if(typeof P!="object"&&typeof P!="function"&&P!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,P,B,"setState")},j.prototype.forceUpdate=function(P){this.updater.enqueueForceUpdate(this,P,"forceUpdate")};function T(){}T.prototype=j.prototype;function O(P,B,C){this.props=P,this.context=B,this.refs=L,this.updater=C||w}var A=O.prototype=new T;A.constructor=O,E(A,j.prototype),A.isPureReactComponent=!0;var J=Array.isArray,le=Object.prototype.hasOwnProperty,D={current:null},ue={key:!0,ref:!0,__self:!0,__source:!0};function ce(P,B,C){var me,we={},he=null,Te=null;if(B!=null)for(me in B.ref!==void 0&&(Te=B.ref),B.key!==void 0&&(he=""+B.key),B)le.call(B,me)&&!ue.hasOwnProperty(me)&&(we[me]=B[me]);var Se=arguments.length-2;if(Se===1)we.children=C;else if(1<Se){for(var Ie=Array(Se),He=0;He<Se;He++)Ie[He]=arguments[He+2];we.children=Ie}if(P&&P.defaultProps)for(me in Se=P.defaultProps,Se)we[me]===void 0&&(we[me]=Se[me]);return{$$typeof:t,type:P,key:he,ref:Te,props:we,_owner:D.current}}function ge(P,B){return{$$typeof:t,type:P.type,key:B,ref:P.ref,props:P.props,_owner:P._owner}}function R(P){return typeof P=="object"&&P!==null&&P.$$typeof===t}function Y(P){var B={"=":"=0",":":"=2"};return"$"+P.replace(/[=:]/g,function(C){return B[C]})}var Z=/\/+/g;function ve(P,B){return typeof P=="object"&&P!==null&&P.key!=null?Y(""+P.key):B.toString(36)}function X(P,B,C,me,we){var he=typeof P;(he==="undefined"||he==="boolean")&&(P=null);var Te=!1;if(P===null)Te=!0;else switch(he){case"string":case"number":Te=!0;break;case"object":switch(P.$$typeof){case t:case i:Te=!0}}if(Te)return Te=P,we=we(Te),P=me===""?"."+ve(Te,0):me,J(we)?(C="",P!=null&&(C=P.replace(Z,"$&/")+"/"),X(we,B,C,"",function(He){return He})):we!=null&&(R(we)&&(we=ge(we,C+(!we.key||Te&&Te.key===we.key?"":(""+we.key).replace(Z,"$&/")+"/")+P)),B.push(we)),1;if(Te=0,me=me===""?".":me+":",J(P))for(var Se=0;Se<P.length;Se++){he=P[Se];var Ie=me+ve(he,Se);Te+=X(he,B,C,Ie,we)}else if(Ie=v(P),typeof Ie=="function")for(P=Ie.call(P),Se=0;!(he=P.next()).done;)he=he.value,Ie=me+ve(he,Se++),Te+=X(he,B,C,Ie,we);else if(he==="object")throw B=String(P),Error("Objects are not valid as a React child (found: "+(B==="[object Object]"?"object with keys {"+Object.keys(P).join(", ")+"}":B)+"). If you meant to render a collection of children, use an array instead.");return Te}function G(P,B,C){if(P==null)return P;var me=[],we=0;return X(P,me,"","",function(he){return B.call(C,he,we++)}),me}function $(P){if(P._status===-1){var B=P._result;B=B(),B.then(function(C){(P._status===0||P._status===-1)&&(P._status=1,P._result=C)},function(C){(P._status===0||P._status===-1)&&(P._status=2,P._result=C)}),P._status===-1&&(P._status=0,P._result=B)}if(P._status===1)return P._result.default;throw P._result}var se={current:null},U={transition:null},re={ReactCurrentDispatcher:se,ReactCurrentBatchConfig:U,ReactCurrentOwner:D};function S(){throw Error("act(...) is not supported in production builds of React.")}return Ce.Children={map:G,forEach:function(P,B,C){G(P,function(){B.apply(this,arguments)},C)},count:function(P){var B=0;return G(P,function(){B++}),B},toArray:function(P){return G(P,function(B){return B})||[]},only:function(P){if(!R(P))throw Error("React.Children.only expected to receive a single React element child.");return P}},Ce.Component=j,Ce.Fragment=r,Ce.Profiler=a,Ce.PureComponent=O,Ce.StrictMode=o,Ce.Suspense=m,Ce.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=re,Ce.act=S,Ce.cloneElement=function(P,B,C){if(P==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+P+".");var me=E({},P.props),we=P.key,he=P.ref,Te=P._owner;if(B!=null){if(B.ref!==void 0&&(he=B.ref,Te=D.current),B.key!==void 0&&(we=""+B.key),P.type&&P.type.defaultProps)var Se=P.type.defaultProps;for(Ie in B)le.call(B,Ie)&&!ue.hasOwnProperty(Ie)&&(me[Ie]=B[Ie]===void 0&&Se!==void 0?Se[Ie]:B[Ie])}var Ie=arguments.length-2;if(Ie===1)me.children=C;else if(1<Ie){Se=Array(Ie);for(var He=0;He<Ie;He++)Se[He]=arguments[He+2];me.children=Se}return{$$typeof:t,type:P.type,key:we,ref:he,prLine truncated
* @license React
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Hf;function Zm(){if(Hf)return wi;Hf=1;var t=Aa(),i=Symbol.for("react.element"),r=Symbol.for("react.fragment"),o=Object.prototype.hasOwnProperty,a=t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,c={key:!0,ref:!0,__self:!0,__source:!0};function u(d,m,h){var y,x={},v=null,w=null;h!==void 0&&(v=""+h),m.key!==void 0&&(v=""+m.key),m.ref!==void 0&&(w=m.ref);for(y in m)o.call(m,y)&&!c.hasOwnProperty(y)&&(x[y]=m[y]);if(d&&d.defaultProps)for(y in m=d.defaultProps,m)x[y]===void 0&&(x[y]=m[y]);return{$$typeof:i,type:d,key:v,ref:w,props:x,_owner:a.current}}return wi.Fragment=r,wi.jsx=u,wi.jsxs=u,wi}var Wf;function eg(){return Wf||(Wf=1,ta.exports=Zm()),ta.exports}var g=eg(),ne=Aa();const Ei=lo(ne);var Gl={},ra={exports:{}},xt={},ia={exports:{}},la={};/**
* @license React
* scheduler.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var qf;function tg(){return qf||(qf=1,(function(t){function i(U,re){var S=U.length;U.push(re);e:for(;0<S;){var P=S-1>>>1,B=U[P];if(0<a(B,re))U[P]=re,U[S]=B,S=P;else break e}}function r(U){return U.length===0?null:U[0]}function o(U){if(U.length===0)return null;var re=U[0],S=U.pop();if(S!==re){U[0]=S;e:for(var P=0,B=U.length,C=B>>>1;P<C;){var me=2*(P+1)-1,we=U[me],he=me+1,Te=U[he];if(0>a(we,S))he<B&&0>a(Te,we)?(U[P]=Te,U[he]=S,P=he):(U[P]=we,U[me]=S,P=me);else if(he<B&&0>a(Te,S))U[P]=Te,U[he]=S,P=he;else break e}}return re}function a(U,re){var S=U.sortIndex-re.sortIndex;return S!==0?S:U.id-re.id}if(typeof performance=="object"&&typeof performance.now=="function"){var c=performance;t.unstable_now=function(){return c.now()}}else{var u=Date,d=u.now();t.unstable_now=function(){return u.now()-d}}var m=[],h=[],y=1,x=null,v=3,w=!1,E=!1,L=!1,j=typeof setTimeout=="function"?setTimeout:null,T=typeof clearTimeout=="function"?clearTimeout:null,O=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function A(U){for(var re=r(h);re!==null;){if(re.callback===null)o(h);else if(re.startTime<=U)o(h),re.sortIndex=re.expirationTime,i(m,re);else break;re=r(h)}}function J(U){if(L=!1,A(U),!E)if(r(m)!==null)E=!0,$(le);else{var re=r(h);re!==null&&se(J,re.startTime-U)}}function le(U,re){E=!1,L&&(L=!1,T(ce),ce=-1),w=!0;var S=v;try{for(A(re),x=r(m);x!==null&&(!(x.expirationTime>re)||U&&!Y());){var P=x.callback;if(typeof P=="function"){x.callback=null,v=x.priorityLevel;var B=P(x.expirationTime<=re);re=t.unstable_now(),typeof B=="function"?x.callback=B:x===r(m)&&o(m),A(re)}else o(m);x=r(m)}if(x!==null)var C=!0;else{var me=r(h);me!==null&&se(J,me.startTime-re),C=!1}return C}finally{x=null,v=S,w=!1}}var D=!1,ue=null,ce=-1,ge=5,R=-1;function Y(){return!(t.unstable_now()-R<ge)}function Z(){if(ue!==null){var U=t.unstable_now();R=U;var re=!0;try{re=ue(!0,U)}finally{re?ve():(D=!1,ue=null)}}else D=!1}var ve;if(typeof O=="function")ve=function(){O(Z)};else if(typeof MessageChannel<"u"){var X=new MessageChannel,G=X.port2;X.port1.onmessage=Z,ve=function(){G.postMessage(null)}}else ve=function(){j(Z,0)};function $(U){ue=U,D||(D=!0,ve())}function se(U,re){ce=j(function(){U(t.unstable_now())},re)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(U){U.callback=null},t.unstable_continueExecution=function(){E||w||(E=!0,$(le))},t.unstable_forceFrameRate=function(U){0>U||125<U?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):ge=0<U?Math.floor(1e3/U):5},t.unstable_getCurrentPriorityLevel=function(){return v},t.unstable_getFirstCallbackNode=function(){return r(m)},t.unstable_next=function(U){switch(v){case 1:case 2:case 3:var re=3;break;default:re=v}var S=v;v=re;try{return U()}finally{v=S}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(U,re){switch(U){case 1:case 2:case 3:case 4:case 5:break;default:U=3}var S=v;v=U;try{return re()}finally{v=S}},t.unstable_scheduleCallback=function(U,re,S){var P=t.unstable_now();switch(typeof S=="object"&&S!==null?(S=S.delay,S=typeof S=="number"&&0<S?P+S:P):S=P,U){case 1:var B=-1;break;case 2:B=250;break;case 5:B=1073741823;break;case 4:B=1e4;break;default:B=5e3}return B=S+B,U={id:y++,callback:re,priorityLevel:U,startTime:S,expirationTime:B,sortIndex:-1},S>P?(U.sortIndex=S,i(h,U),r(m)===null&&U===r(h)&&(L?(T(ce),ce=-1):L=!0,se(J,S-P))):(U.sortIndex=B,i(m,U),E||w||(E=!0,$(le))),U},t.unstable_shouldYield=Y,t.unstable_wrapCallback=function(U){var re=v;return function(){var S=v;v=re;try{return U.apply(this,arguments)}finally{v=S}}}})(la)),la}var Qf;function ng(){return Qf||(Qf=1,ia.exports=tg()),ia.exports}/**
* @license React
* react-dom.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/var Gf;function rg(){if(Gf)return xt;Gf=1;var t=Aa(),i=ng();function r(e){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+e,l=1;l<arguments.length;l++)n+="&args[]="+encodeURIComponent(arguments[l]);return"Minified React error #"+e+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var o=new Set,a={};function c(e,n){u(e,n),u(e+"Capture",n)}function u(e,n){for(a[e]=n,e=0;e<n.length;e++)o.add(n[e])}var d=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),m=Object.prototype.hasOwnProperty,h=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,y={},x={};function v(e){return m.call(x,e)?!0:m.call(y,e)?!1:h.test(e)?x[e]=!0:(y[e]=!0,!1)}function w(e,n,l,s){if(l!==null&&l.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return s?!1:l!==null?!l.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function E(e,n,l,s){if(n===null||typeof n>"u"||w(e,n,l,s))return!0;if(s)return!1;if(l!==null)switch(l.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function L(e,n,l,s,f,p,k){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=s,this.attributeNamespace=f,this.mustUseProperty=l,this.propertyName=e,this.type=n,this.sanitizeURL=p,this.removeEmptyString=k}var j={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){j[e]=new L(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var n=e[0];j[n]=new L(n,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){j[e]=new L(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){j[e]=new L(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){j[e]=new L(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){j[e]=new L(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){j[e]=new L(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){j[e]=new L(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){j[e]=new L(e,5,!1,e.toLowerCase(),null,!1,!1)});var T=/[\-:]([a-z])/g;function O(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var n=e.replace(T,O);j[n]=new L(n,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var n=e.replace(T,O);j[n]=new L(n,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var n=e.replace(T,O);j[n]=new L(n,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){j[e]=new L(e,1,!1,e.toLowerCase(),null,!1,!1)}),j.xlinkHref=new L("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){j[e]=new L(e,1,!1,e.toLowerCase(),null,!0,!0)});function A(e,n,l,s){var f=j.hasOwnProperty(n)?j[n]:null;(f!==null?f.type!==0:s||!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!= Line truncated
`+P+e}var C=!1;function me(e,n){if(!e||C)return"";C=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(n)if(n=function(){throw Error()},Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(n,[])}catch(M){var s=M}Reflect.construct(e,[],n)}else{try{n.call()}catch(M){s=M}e.call(n.prototype)}else{try{throw Error()}catch(M){s=M}e()}}catch(M){if(M&&s&&typeof M.stack=="string"){for(var f=M.stack.split(`
`),p=s.stack.split(`
`),k=f.length-1,b=p.length-1;1<=k&&0<=b&&f[k]!==p[b];)b--;for(;1<=k&&0<=b;k--,b--)if(f[k]!==p[b]){if(k!==1||b!==1)do if(k--,b--,0>b||f[k]!==p[b]){var N=`
`+f[k].replace(" at new "," at ");return e.displayName&&N.includes("<anonymous>")&&(N=N.replace("<anonymous>",e.displayName)),N}while(1<=k&&0<=b);break}}}finally{C=!1,Error.prepareStackTrace=l}return(e=e?e.displayName||e.name:"")?B(e):""}function we(e){switch(e.tag){case 5:return B(e.type);case 16:return B("Lazy");case 13:return B("Suspense");case 19:return B("SuspenseList");case 0:case 2:case 15:return e=me(e.type,!1),e;case 11:return e=me(e.type.render,!1),e;case 1:return e=me(e.type,!0),e;default:return""}}function he(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case ue:return"Fragment";case D:return"Portal";case ge:return"Profiler";case ce:return"StrictMode";case ve:return"Suspense";case X:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Y:return(e.displayName||"Context")+".Consumer";case R:return(e._context.displayName||"Context")+".Provider";case Z:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case G:return n=e.displayName||null,n!==null?n:he(e.type)||"Memo";case $:n=e._payload,e=e._init;try{return he(e(n))}catch{}}return null}function Te(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=n.render,e=e.displayName||e.name||"",n.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return he(n);case 8:return n===ce?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function Se(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Ie(e){var n=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function He(e){var n=Ie(e)?"checked":"value",l=Object.getOwnPropertyDescriptor(e.constructor.prototype,n),s=""+e[n];if(!e.hasOwnProperty(n)&&typeof l<"u"&&typeof l.get=="function"&&typeof l.set=="function"){var f=l.get,p=l.set;return Object.defineProperty(e,n,{configurable:!0,get:function(){return f.call(this)},set:function(k){s=""+k,p.call(this,k)}}),Object.defineProperty(e,n,{enumerable:l.enumerable}),{getValue:function(){return s},setValue:function(k){s=""+k},stopTracking:function(){e._valueTracker=null,delete e[n]}}}}function Jt(e){e._valueTracker||(e._valueTracker=He(e))}function Di(e){if(!e)return!1;var n=e._valueTracker;if(!n)return!0;var l=n.getValue(),s="";return e&&(s=Ie(e)?e.checked?"true":"false":e.value),e=s,e!==l?(n.setValue(e),!0):!1}function rr(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function Mr(e,n){var l=n.checked;return S({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:l??e._wrapperState.initialChecked})}function Dr(e,n){var l=n.defaultValue==null?"":n.defaultValue,s=n.checked!=null?n.checked:n.defaultChecked;l=Se(n.value!=null?n.value:l),e._wrapperState={initialChecked:s,initialValue:l,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function Ar(e,n){n=n.checked,n!=null&&A(e,"checked",n,!1)}function ir(e,n){Ar(e,n);var l=Se(n.value),s=n.type;if(l!=null)s==="number"?(l===0&&e.value===""||e.value!=l)&&(e.value=""+l):e.value!==""+l&&(e.value=""+l);else if(s==="submit"||s==="reset"){e.removeAttribute("value");return}n.hasOwnProperty("value")?lr(e,n.type,l):n.hasOwnProperty("defaultValue")&&lr(e,n.type,Se(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(e.defaultChecked=!!n.defaultChecked)}function Ai(e,n,l){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var s=n.type;if(!(s!=="submit"&&s!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+e._wrapperState.initialValue,l||n===e.value||(e.value=n),e.defaultValue=n}l=e.name,l!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,l!==""&&(e.name=l)}function lr(e,n,l){(n!=="number"||rr(e.ownerDocument)!==e)&&(l==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+l&&(e.defaultValue=""+l))}var fn=Array.isArray;function dn(e,n,l,s){if(e=e.options,n){n={};for(var f=0;f<l.length;f++)n["$"+l[f]]=!0;for(l=0;l<e.length;l++)f=n.hasOwnProperty("$"+e[l].value),e[l].selected!==f&&(e[l].selected=f),f&&s&&(e[l].defaultSelected=!0)}else{for(l=""+Se(l),n=null,f=0;f<e.length;f++){if(e[f].value===l){e[f].selected=!0,s&&(e[f].defaultSelected=!0);return}n!==null||e[f].disabled||(n=e[f])}n!==null&&(n.selected=!0)}}function Or(e,n){if(n.dangerouslySetInne Line truncated
`).replace(fm,"")}function sl(e,n,l){if(n=oc(n),oc(e)!==n&&l)throw Error(r(425))}function al(){}var qo=null,Qo=null;function Go(e,n){return e==="textarea"||e==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var Ko=typeof setTimeout=="function"?setTimeout:void 0,dm=typeof clearTimeout=="function"?clearTimeout:void 0,sc=typeof Promise=="function"?Promise:void 0,pm=typeof queueMicrotask=="function"?queueMicrotask:typeof sc<"u"?function(e){return sc.resolve(null).then(e).catch(hm)}:Ko;function hm(e){setTimeout(function(){throw e})}function Yo(e,n){var l=n,s=0;do{var f=l.nextSibling;if(e.removeChild(l),f&&f.nodeType===8)if(l=f.data,l==="/$"){if(s===0){e.removeChild(f),Gr(n);return}s--}else l!=="$"&&l!=="$?"&&l!=="$!"||s++;l=f}while(l);Gr(n)}function kn(e){for(;e!=null;e=e.nextSibling){var n=e.nodeType;if(n===1||n===3)break;if(n===8){if(n=e.data,n==="$"||n==="$!"||n==="$?")break;if(n==="/$")return null}}return e}function ac(e){e=e.previousSibling;for(var n=0;e;){if(e.nodeType===8){var l=e.data;if(l==="$"||l==="$!"||l==="$?"){if(n===0)return e;n--}else l==="/$"&&n++}e=e.previousSibling}return null}var hr=Math.random().toString(36).slice(2),qt="__reactFiber$"+hr,li="__reactProps$"+hr,en="__reactContainer$"+hr,Xo="__reactEvents$"+hr,mm="__reactListeners$"+hr,gm="__reactHandles$"+hr;function Fn(e){var n=e[qt];if(n)return n;for(var l=e.parentNode;l;){if(n=l[en]||l[qt]){if(l=n.alternate,n.child!==null||l!==null&&l.child!==null)for(e=ac(e);e!==null;){if(l=e[qt])return l;e=ac(e)}return n}e=l,l=e.parentNode}return null}function oi(e){return e=e[qt]||e[en],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function mr(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(r(33))}function ul(e){return e[li]||null}var Jo=[],gr=-1;function wn(e){return{current:e}}function Ae(e){0>gr||(e.current=Jo[gr],Jo[gr]=null,gr--)}function Me(e,n){gr++,Jo[gr]=e.current,e.current=n}var Sn={},rt=wn(Sn),dt=wn(!1),$n=Sn;function xr(e,n){var l=e.type.contextTypes;if(!l)return Sn;var s=e.stateNode;if(s&&s.__reactInternalMemoizedUnmaskedChildContext===n)return s.__reactInternalMemoizedMaskedChildContext;var f={},p;for(p in l)f[p]=n[p];return s&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=n,e.__reactInternalMemoizedMaskedChildContext=f),f}function pt(e){return e=e.childContextTypes,e!=null}function cl(){Ae(dt),Ae(rt)}function uc(e,n,l){if(rt.current!==Sn)throw Error(r(168));Me(rt,n),Me(dt,l)}function cc(e,n,l){var s=e.stateNode;if(n=n.childContextTypes,typeof s.getChildContext!="function")return l;s=s.getChildContext();for(var f in s)if(!(f in n))throw Error(r(108,Te(e)||"Unknown",f));return S({},l,s)}function fl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Sn,$n=rt.current,Me(rt,e),Me(dt,dt.current),!0}function fc(e,n,l){var s=e.stateNode;if(!s)throw Error(r(169));l?(e=cc(e,n,$n),s.__reactInternalMemoizedMergedChildContext=e,Ae(dt),Ae(rt),Me(rt,e)):Ae(dt),Me(dt,l)}var tn=null,dl=!1,Zo=!1;function dc(e){tn===null?tn=[e]:tn.push(e)}function xm(e){dl=!0,dc(e)}function bn(){if(!Zo&&tn!==null){Zo=!0;var e=0,n=ze;try{var l=tn;for(ze=1;e<l.length;e++){var s=l[e];do s=s(!0);while(s!==null)}tn=null,dl=!1}catch(f){throw tn!==null&&(tn=tn.slice(e+1)),hu(wo,bn),f}finally{ze=n,Zo=!1}}return null}var yr=[],vr=0,pl=null,hl=0,Tt=[],Pt=0,Bn=null,nn=1,rn="";function Un(e,n){yr[vr++]=hl,yr[vr++]=pl,pl=e,hl=n}function pc(e,n,l){Tt[Pt++]=nn,Tt[Pt++]=rn,Tt[Pt++]=Bn,Bn=e;var s=nn;e=rn;var f=32-Dt(s)-1;s&=~(1<<f),l+=1;var p=32-Dt(n)+f;if(30<p){var k=f-f%5;p=(s&(1<<k)-1).toString(32),s>>=k,f-=k,nn=1<<32-Dt(n)+f|l<<f|s,rn=p+e}else nn=1<<p|l<<f|s,rn=e}function es(e){e.return!==null&&(Un(e,1),pc(e,1,0))}function ts(e){for(;e===pl;)pl=yr[--vr],yr[vr]=null,hl=yr[--vr],yr[vr]=null;for(;e===Bn;)Bn=Tt[--Pt],Tt[Pt]=null,rn=Tt[--Pt],Tt[Pt]=null,nn=Tt[--Pt],Tt[Pt]=null}var St=null,bt=null,Oe=!1,Ot=null;function hc(e,n){var l=Rt(5,null,null,0);l.elementType="DELETED",l.stateNode=n,l.return=e,n=e.deletions,n===null?(e.deletions=[l],e.flags|=16):n.push(l)}function mc(e,n){switch(e.tag){case 5:var l=e.type;return n=n.nodeType!==1||l.toLowerCase()!==n.nodeName.toLowerCase()?null:n,n!==null?(e.stateNode=n,St=e,bt=kn(n.firstChild),!0):!1;case 6:return n=e.pendingProps===""||n.nodeType!==3?null:n,n!==null?(e.stateNode=n,St=e,bt=null,!0):!1;case 13:return n=n.nodeType!==8?null:n,n!==null?(l=Bn!==null?{id:nn,overflow:rn}:null,e.memoizedState={dehydrated:n,treeContext:l,retryLane:1073741824},l=Rt(18,null,null,0),l.stateNode=n,l.return=e,e.child=l,St=e,bt=null,!0):!1;default:return!1}}function ns(e){return(e.mode&1)!==0&&(e.flags&128)===0}function rs(e){if(Oe){var n=bt;if(n){var l=n;if(!mc(e,n)){if(ns(e))throw Error(r(418));n=kn(l.nextSibling);var s=St;n&&mc(e,n)?hc(s,l):(e.flags=e.flags&-4097|2,Oe=!1,St=e)}}else{if(ns(e))throw Error(r(418));e.flags=e.flags&-4097|2,Oe=!1,St=e}}}function gc(e){for(e=e. Line truncated
Error generating stack: `+p.message+`
`+p.stack}return{value:e,source:n,stack:f,digest:null}}function js(e,n,l){return{value:e,source:null,stack:l??null,digest:n??null}}function Es(e,n){try{console.error(n.value)}catch(l){setTimeout(function(){throw l})}}var Em=typeof WeakMap=="function"?WeakMap:Map;function Yc(e,n,l){l=on(-1,l),l.tag=3,l.payload={element:null};var s=n.value;return l.callback=function(){Rl||(Rl=!0,Bs=s),Es(e,n)},l}function Xc(e,n,l){l=on(-1,l),l.tag=3;var s=e.type.getDerivedStateFromError;if(typeof s=="function"){var f=n.value;l.payload=function(){return s(f)},l.callback=function(){Es(e,n)}}var p=e.stateNode;return p!==null&&typeof p.componentDidCatch=="function"&&(l.callback=function(){Es(e,n),typeof s!="function"&&(Nn===null?Nn=new Set([this]):Nn.add(this));var k=n.stack;this.componentDidCatch(n.value,{componentStack:k!==null?k:""})}),l}function Jc(e,n,l){var s=e.pingCache;if(s===null){s=e.pingCache=new Em;var f=new Set;s.set(n,f)}else f=s.get(n),f===void 0&&(f=new Set,s.set(n,f));f.has(l)||(f.add(l),e=$m.bind(null,e,n,l),n.then(e,e))}function Zc(e){do{var n;if((n=e.tag===13)&&(n=e.memoizedState,n=n!==null?n.dehydrated!==null:!0),n)return e;e=e.return}while(e!==null);return null}function ef(e,n,l,s,f){return(e.mode&1)===0?(e===n?e.flags|=65536:(e.flags|=128,l.flags|=131072,l.flags&=-52805,l.tag===1&&(l.alternate===null?l.tag=17:(n=on(-1,1),n.tag=2,jn(l,n,1))),l.lanes|=1),e):(e.flags|=65536,e.lanes=f,e)}var Nm=J.ReactCurrentOwner,ht=!1;function ut(e,n,l,s){n.child=e===null?kc(n,null,l,s):wr(n,e.child,l,s)}function tf(e,n,l,s,f){l=l.render;var p=n.ref;return br(n,f),s=xs(e,n,l,s,p,f),l=ys(),e!==null&&!ht?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~f,sn(e,n,f)):(Oe&&l&&es(n),n.flags|=1,ut(e,n,s,f),n.child)}function nf(e,n,l,s,f){if(e===null){var p=l.type;return typeof p=="function"&&!Gs(p)&&p.defaultProps===void 0&&l.compare===null&&l.defaultProps===void 0?(n.tag=15,n.type=p,rf(e,n,p,s,f)):(e=$l(l.type,null,s,n,n.mode,f),e.ref=n.ref,e.return=n,n.child=e)}if(p=e.child,(e.lanes&f)===0){var k=p.memoizedProps;if(l=l.compare,l=l!==null?l:ei,l(k,s)&&e.ref===n.ref)return sn(e,n,f)}return n.flags|=1,e=In(p,s),e.ref=n.ref,e.return=n,n.child=e}function rf(e,n,l,s,f){if(e!==null){var p=e.memoizedProps;if(ei(p,s)&&e.ref===n.ref)if(ht=!1,n.pendingProps=s=p,(e.lanes&f)!==0)(e.flags&131072)!==0&&(ht=!0);else return n.lanes=e.lanes,sn(e,n,f)}return Ns(e,n,l,s,f)}function lf(e,n,l){var s=n.pendingProps,f=s.children,p=e!==null?e.memoizedState:null;if(s.mode==="hidden")if((n.mode&1)===0)n.memoizedState={baseLanes:0,cachePool:null,transitions:null},Me(Nr,Ct),Ct|=l;else{if((l&1073741824)===0)return e=p!==null?p.baseLanes|l:l,n.lanes=n.childLanes=1073741824,n.memoizedState={baseLanes:e,cachePool:null,transitions:null},n.updateQueue=null,Me(Nr,Ct),Ct|=e,null;n.memoizedState={baseLanes:0,cachePool:null,transitions:null},s=p!==null?p.baseLanes:l,Me(Nr,Ct),Ct|=s}else p!==null?(s=p.baseLanes|l,n.memoizedState=null):s=l,Me(Nr,Ct),Ct|=s;return ut(e,n,f,l),n.child}function of(e,n){var l=n.ref;(e===null&&l!==null||e!==null&&e.ref!==l)&&(n.flags|=512,n.flags|=2097152)}function Ns(e,n,l,s,f){var p=pt(l)?$n:rt.current;return p=xr(n,p),br(n,f),l=xs(e,n,l,s,p,f),s=ys(),e!==null&&!ht?(n.updateQueue=e.updateQueue,n.flags&=-2053,e.lanes&=~f,sn(e,n,f)):(Oe&&s&&es(n),n.flags|=1,ut(e,n,l,f),n.child)}function sf(e,n,l,s,f){if(pt(l)){var p=!0;fl(n)}else p=!1;if(br(n,f),n.stateNode===null)Tl(e,n),Gc(n,l,s),Cs(n,l,s,f),s=!0;else if(e===null){var k=n.stateNode,b=n.memoizedProps;k.props=b;var N=k.context,M=l.contextType;typeof M=="object"&&M!==null?M=It(M):(M=pt(l)?$n:rt.current,M=xr(n,M));var H=l.getDerivedStateFromProps,W=typeof H=="function"||typeof k.getSnapshotBeforeUpdate=="function";W||typeof k.UNSAFE_componentWillReceiveProps!="function"&&typeof k.componentWillReceiveProps!="function"||(b!==s||N!==M)&&Kc(n,k,s,M),Cn=!1;var V=n.memoizedState;k.state=V,kl(n,s,k,f),N=n.memoizedState,b!==s||V!==N||dt.current||Cn?(typeof H=="function"&&(bs(n,l,H,s),N=n.memoizedState),(b=Cn||Qc(n,l,b,s,V,N,M))?(W||typeof k.UNSAFE_componentWillMount!="function"&&typeof k.componentWillMount!="function"||(typeof k.componentWillMount=="function"&&k.componentWillMount(),typeof k.UNSAFE_componentWillMount=="function"&&k.UNSAFE_componentWillMount()),typeof k.componentDidMount=="function"&&(n.flags|=4194308)):(typeof k.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=s,n.memoizedState=N),k.props=s,k.state=N,k.context=M,s=b):(typeof k.componentDidMount=="function"&&(n.flags|=4194308),s=!1)}else{k=n.stateNode,Sc(e,n),b=n.memoizedProps,M=n.type===n.elementType?b:Ft(n.type,b),k.props=M,W=n.pendingProps,V=k.context,N=l.contextType,typeof N=="object"&&N!==null?N=It(N):(N=pt(l)?$n:rt.current,N=xr(n,N));var ee=l.getDerivedStateFromProps;(H=typeof ee=="function"||typeof k.getSnapshotBeforeUpdate=="function")||typeof k.UNSAFE_componentWillReceiveProps!="function"&&typeof k.componentWillReceiveProps!="function"||(b!==W||V!==N)&&Kc(n,k,s,N),Cn=!1,V=n.memoizedState,k.state=V,kl(n,s,k Line truncated
`).split(`
`))v.startsWith("event:")?h=v.slice(6).trim():v.startsWith("data:")&&y.push(v.slice(5).trimStart());if(y.length===0)return;const x=JSON.parse(y.join(`
`));if(h==="task_start")i(x.task,null);else if(h==="task_done")i(x.task,x.score,x.detail);else{if(h==="error")throw new Error(x.message??"le benchmark a échoué");h==="done"&&(u={score:x.score,details:x.details,at:Date.now()/1e3})}};try{for(;;){const{done:m,value:h}=await o.read();if(m)break;c+=a.decode(h,{stream:!0}).replace(/\r\n/g,`
`);const y=c.split(`
`);c=y.pop()??"";for(const x of y)x.trim()&&d(x)}c+=a.decode(),c.trim()&&d(c)}catch(m){const h=m instanceof Error?m.message:"connexion interrompue";throw/network error|failed to fetch|load failed/i.test(h)?new Error("flux du benchmark interrompu par le reverse proxy"):m}if(!u)throw new Error("le benchmark s'est interrompu avant le résultat");return u}async function Dg(t){return(await fetch("/api/shell/run",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({command:t})})).json()}async function Ag(t){const i=t?`?model=${encodeURIComponent(t)}`:"";return(await fetch(`/api/config${i}`)).json()}async function Og(t,i){const r=i?`?model=${encodeURIComponent(i)}`:"";return(await(await fetch(`/api/config${r}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)})).json()).config}async function Fg(t){const i=t?`?project=${encodeURIComponent(t)}`:"";return(await(await fetch(`/api/files${i}`)).json()).tree}async function $g(t,i){const r=await fetch(`/api/files/content?path=${encodeURIComponent(t)}${uo(i)}`);return r.ok?(await r.json()).content:""}async function Bg(t,i){const r=await fetch(`/api/files?path=${encodeURIComponent(t)}${uo(i)}`,{method:"DELETE"});if(!r.ok)throw await un(r,`suppression impossible (${r.status})`)}function Oa(t,i){const r=document.createElement("a");r.href=`/api/files/download?path=${encodeURIComponent(t)}${uo(i)}`,r.download=t.split(/[\\/]/).pop()??"fichier",document.body.appendChild(r),r.click(),r.remove()}async function Ug(){return(await(await fetch("/api/mcp")).json()).servers}async function ed(t,i,r){const o=await fetch(`/api/mcp/${t}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({enabled:i,params:r})});if(!o.ok)throw await un(o,"mise à jour MCP impossible");return(await o.json()).servers}async function Vg(t){return(await fetch(`/api/mcp/${t}/test`,{method:"POST"})).json()}async function Hg(){return(await(await fetch("/api/sessions")).json()).sessions}async function oa(t,i){return(await fetch("/api/sessions",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:"Nouvelle session",model:t,project:i??null})})).json()}async function Wg(){return(await fetch("/api/projects")).json()}async function qg(t){const i=await fetch("/api/projects",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})});if(!i.ok)throw await un(i,"création du projet impossible")}async function Qg(t,i){const r=await fetch(`/api/sessions/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({project:i??""})});if(!r.ok)throw await un(r,"changement de projet impossible")}async function Gg(t){return(await fetch(`/api/sessions/${t}`)).json()}async function Kg(t){await fetch(`/api/sessions/${t}`,{method:"DELETE"})}async function Yg(t,i){const r=await fetch(`/api/sessions/${t}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({title:i})});if(!r.ok)throw await un(r,`renommage impossible (${r.status})`)}async function Xg(t,i,r){var y,x;let o;try{o=await fetch("/api/chat",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t),signal:r})}catch(v){if(v instanceof DOMException&&v.name==="AbortError"){(y=i.onAbort)==null||y.call(i);return}const w=v instanceof Error?v.message:"serveur Loki injoignable";i.onError(/network error|failed to fetch/i.test(w)?"Serveur Loki injoignable. Vérifiez le reverse proxy et le conteneur.":w);return}if(!o.ok){let v=`requête refusée (${o.status})`;try{const w=await o.json();v=w.detail??w.error??v}catch{}i.onError(v);return}if(!o.body){i.onError("pas de flux de réponse");return}const a=o.body.getReader(),c=new TextDecoder;let u="",d=!1,m=!1;const h=v=>{var j,T;const w=v.replace(/\r\n/g,`
`);let E="message";const L=[];for(const O of w.split(`
`))O.startsWith("event:")?E=O.slice(6).trim():O.startsWith("data:")&&L.push(O.slice(5).trimStart());if(L.length!==0)try{const O=JSON.parse(L.join(`
`));E==="token"?i.onToken(O.content):E==="plan"?(j=i.onPlan)==null||j.call(i,O.steps):E==="revision"?(T=i.onRevision)==null||T.call(i,O.content):E==="thinking"?i.onThinking(O.content):E==="status"?i.onStatus(O.message):E==="notice"?i.onNotice(O.message):E==="tool_call"?i.onToolCall({...O,status:"running"}):E==="tool_result"?i.onToolResult(O):E==="tool_confirm"?i.onToolConfirm(O.command):E==="error"?(m=!0,i.onError(O.message)):E==="done"&&(d=!0,O.error?(m||i.onError(O.error),m=!0):m||i.onDone(O.content))}catch{m||(m=!0,i.onError("réponse illisible reçue du serveur"))}};try{for(;;){const{done:v,value:w}=await a.read();if(v)break;u+=c.decode(w,{stream:!0}).replace(/\r\n/g,`
`);const E=u.split(`
`);u=E.pop()??"";for(const L of E)L.trim()&&h(L)}u+=c.decode(),u.trim()&&h(u)}catch(v){if(!m){if(v instanceof DOMException&&v.name==="AbortError"){(x=i.onAbort)==null||x.call(i);return}m=!0;const w=v instanceof Error?v.message:"connexion interrompue";i.onError(/network error|failed to fetch/i.test(w)?"Connexion interrompue pendant le chargement du modèle. Vérifiez OLLAMA_HOST et le délai du reverse proxy.":w)}}!d&&!m&&i.onError("le serveur a fermé la réponse avant sa fin")}async function Jg(t,i){const r=await fetch("/api/models/pull",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:t})});if(!r.body)return;const o=r.body.getReader(),a=new TextDecoder;let c="";for(;;){const{done:u,value:d}=await o.read();if(u)break;c+=a.decode(d,{stream:!0});const m=c.split(`
`);c=m.pop()??"";for(const h of m){const y=h.replace(/^data: /,"").trim();if(!(!y||y==="[DONE]"))try{const x=JSON.parse(y),v=x.total&&x.completed?Math.round(x.completed/x.total*100):0;i(x.status??"",v)}catch{}}}}let Ln=null;const Qe=wg((t,i)=>({status:null,systemStats:null,loadedModels:[],warmingModel:null,warmError:null,models:[],selectedModel:"",loadingModels:!1,sessions:[],currentSessionId:null,messages:[],streaming:!1,streamingSessionId:null,streamContent:"",streamThinking:"",streamStatus:"",streamNotice:null,streamTools:[],streamPlan:[],fileTree:[],previewPath:null,previewContent:"",projects:[],config:null,availableTools:[],pendingShell:null,mode:"build",setMode:r=>t({mode:r}),approveShell:async()=>{const r=i().pendingShell;if(!r)return;t({pendingShell:null});let o;try{const a=await Dg(r);o=`J'ai validé la commande \`${r}\` (code ${a.exit_code}).
Sortie :
\`\`\`
${a.output||"(vide)"}
\`\`\``}catch{o=`Échec de l'exécution de \`${r}\`.`}await i().refreshFiles(),await i().sendMessage(o)},rejectShell:async()=>{const r=i().pendingShell;r&&(t({pendingShell:null}),await i().sendMessage(`J'ai refusé la commande \`${r}\`. N'exécute pas cette commande.`))},refreshConfig:async()=>{const r=i().selectedModel,{config:o,available_tools:a}=await Ag(r||void 0);i().selectedModel===r&&t({config:o,availableTools:a})},updateConfig:async r=>{const o=await Og(r,i().selectedModel||void 0);t({config:o})},openPreview:async r=>{const o=await $g(r,i().currentProject());t({previewPath:r,previewContent:o})},setSelectedModel:r=>{t({selectedModel:r,warmingModel:r||null,warmError:null}),(async()=>{var o;try{if(await i().refreshConfig(),!r||i().selectedModel!==r)return;const a=((o=i().config)==null?void 0:o.keep_alive)??"30m",c=await Pg(r,a);await i().refreshLoadedModels(),(c.processor==="cpu"||c.processor==="mixte")&&i().selectedModel===r&&t({warmError:c.processor==="cpu"?"Modèle chargé sur le CPU (trop gros pour la VRAM) — lent. Choisis un modèle plus petit ou une quantization plus légère.":`Modèle en partie sur GPU (${c.gpu_percent??"?"}%) : dépasse la VRAM, chargement plus lent.`})}catch(a){i().selectedModel===r&&t({warmError:a instanceof Error?a.message:"préchargement impossible"})}finally{i().warmingModel===r&&t({warmingModel:null})}})()},refreshFiles:async()=>{try{t({fileTree:await Fg(i().currentProject())})}catch{}},refreshProjects:async()=>{try{const{projects:r}=await Wg();t({projects:r})}catch{}},currentProject:()=>{const r=i().sessions.find(o=>o.id===i().currentSessionId);return(r==null?void 0:r.project)??null},setProject:async r=>{const o=i().currentSessionId;if(o)await Qg(o,r);else{const a=await oa(i().selectedModel||void 0,r);t({currentSessionId:a.id,messages:[]})}await i().refreshSessions(),t({previewPath:null,previewContent:""}),await i().refreshFiles()},refreshStatus:async()=>{try{const r=await Sg();t({status:r})}catch{t({status:{connected:!1,host:"",default_model:""}})}},refreshSystemStats:async()=>{try{t({systemStats:await bg()})}catch{t({systemStats:null})}},refreshLoadedModels:async()=>{t({loadedModels:await Ig()})},refreshModels:async()=>{var r;t({loadingModels:!0});try{const{models:o,default:a}=await zg(),c=new Set(o.map(m=>m.name)),u=i().selectedModel,d=c.has(u)?u:c.has(a)?a:((r=o[0])==null?void 0:r.name)??"";t({models:o}),i().setSelectedModel(d)}finally{t({loadingModels:!1})}},refreshSessions:async()=>{const r=await Hg();t({sessions:r})},newSession:async()=>{const r=await oa(i().selectedModel||void 0,i().currentProject()),o=i().streaming;t({currentSessionId:r.id,messages:[],...o?{}:{streamContent:"",streamStatus:"",streamNotice:null}}),await i().refreshSessions()},openSession:async r=>{const{messages:o}=await Gg(r),a=i().streaming;t({currentSessionId:r,messages:o,...a?{}:{streamContent:"",streamStatus:"",streamNotice:null}}),await i().refreshFiles()},removeSession:async r=>{await Kg(r),i().currentSessionId===r&&t({currentSessionId:null,messages:[]}),await i().refreshSessions()},renameSession:async(r,o)=>{const a=o.trim();a&&(await Yg(r,a),await i().refreshSessions())},removeFile:async r=>{await Bg(r,i().currentProject());const o=i().previewPath;o&&(o===r||o.startsWith(r+"/"))&&t({previewPath:null,previewContent:""}),await i().refreshFiles()},stopStreaming:()=>{Ln==null||Ln.abort(),Ln=null,t({streaming:!1,streamingSessionId:null,streamContent:"",streamThinking:"",streamStatus:"",streamNotice:null,streamTools:[],streamPlan:[],pendingShell:null}),i().refreshSessions()},sendMessage:async r=>{if(i().streaming||(r=r.trim(),!r))return;if(!i().selectedModel){const u={id:`err-${Date.now()}`,session_id:i().currentSessionId??"",role:"assistant",content:"⚠️ Aucun modèle Ollama installé ou sélectionné.",created_at:Date.now()/1e3};t({messages:[...i().messages,u]});return}let o=i().currentSessionId;try{if(!o){const u=await oa(i().selectedModel||void 0);o=u.id,t({currentSessionId:u.id})}}catch(u){const d=u instanceof Error?u.message:"backend injoignable",m={id:`err-${Date.now()}`,session_id:"",role:"assistant",content:`⚠️ Impossible de créer la session : ${d}`,created_at:Date.now()/1e3};t({messages:[...i().messages,m]});return}const a={id:`tmp-${Date.now()}`,session_id:o,role:"user",content:r,created_at:Date.now()/1e3};t({messages:[...i().messages,a],streaming:!0,streamingSessionId:o,streamContent:"",streamThinking:"",streamStatus:"Connexion à Ollama…",streamNotice:null,streamTools:[],pendingShell:null});const c=new AbortController;Ln=c,await Xg({session_id:o,content:r,model:i().selectedModel||void 0,mode:i().mode},{onToken:u=>t({streamContent:i().streamContent+u}),onThinking:u=>t({streamThinking:i().streamThinking+u}),onStatus:u=>t({streamStatus:u}),onPlan:u=>t({streamPlan:u}),onRevision:u=>t({streamContent:u}),onNotice:u=>t({streamNotice:u}),onToolCall:u=>t({streamTools:[...i().streamTools,u]}),onToolResult:u=>{const d=[...i().streamTools];for(let m=d.length-1;m>=0;m--)if(d[m].nLine truncated
`,h="/",y="*",x="",v="comment",w="declaration";function E(j,T){if(typeof j!="string")throw new TypeError("First argument must be a string");if(!j)return[];T=T||{};var O=1,A=1;function J(X){var G=X.match(i);G&&(O+=G.length);var $=X.lastIndexOf(m);A=~$?X.length-$:A+X.length}function le(){var X={line:O,column:A};return function(G){return G.position=new D(X),ge(),G}}function D(X){this.start=X,this.end={line:O,column:A},this.source=T.source}D.prototype.content=j;function ue(X){var G=new Error(T.source+":"+O+":"+A+": "+X);if(G.reason=X,G.filename=T.source,G.line=O,G.column=A,G.source=j,!T.silent)throw G}function ce(X){var G=X.exec(j);if(G){var $=G[0];return J($),j=j.slice($.length),G}}function ge(){ce(r)}function R(X){var G;for(X=X||[];G=Y();)G!==!1&&X.push(G);return X}function Y(){var X=le();if(!(h!=j.charAt(0)||y!=j.charAt(1))){for(var G=2;x!=j.charAt(G)&&(y!=j.charAt(G)||h!=j.charAt(G+1));)++G;if(G+=2,x===j.charAt(G-1))return ue("End of comment missing");var $=j.slice(2,G-2);return A+=2,J($),j=j.slice(G),A+=2,X({type:v,comment:$})}}function Z(){var X=le(),G=ce(o);if(G){if(Y(),!ce(a))return ue("property missing ':'");var $=ce(c),se=X({type:w,property:L(G[0].replace(t,x)),value:$?L($[0].replace(t,x)):x});return ce(u),se}}function ve(){var X=[];R(X);for(var G;G=Z();)G!==!1&&(X.push(G),R(X));return X}return ge(),ve()}function L(j){return j?j.replace(d,x):x}return aa=E,aa}var od;function Sx(){if(od)return Pr;od=1;var t=Pr&&Pr.__importDefault||function(o){return o&&o.__esModule?o:{default:o}};Object.defineProperty(Pr,"__esModule",{value:!0}),Pr.default=r;const i=t(wx());function r(o,a){let c=null;if(!o||typeof o!="string")return c;const u=(0,i.default)(o),d=typeof a=="function";return u.forEach(m=>{if(m.type!=="declaration")return;const{property:h,value:y}=m;d?a(h,y,m):y&&(c=c||{},c[h]=y)}),c}return Pr}var Si={},sd;function bx(){if(sd)return Si;sd=1,Object.defineProperty(Si,"__esModule",{value:!0}),Si.camelCase=void 0;var t=/^--[a-zA-Z0-9_-]+$/,i=/-([a-z])/g,r=/^[^-]+$/,o=/^-(webkit|moz|ms|o|khtml)-/,a=/^-(ms)-/,c=function(h){return!h||r.test(h)||t.test(h)},u=function(h,y){return y.toUpperCase()},d=function(h,y){return"".concat(y,"-")},m=function(h,y){return y===void 0&&(y={}),c(h)?h:(h=h.toLowerCase(),y.reactCompat?h=h.replace(a,d):h=h.replace(o,d),h.replace(i,u))};return Si.camelCase=m,Si}var bi,ad;function Cx(){if(ad)return bi;ad=1;var t=bi&&bi.__importDefault||function(a){return a&&a.__esModule?a:{default:a}},i=t(Sx()),r=bx();function o(a,c){var u={};return!a||typeof a!="string"||(0,i.default)(a,function(d,m){d&&m&&(u[(0,r.camelCase)(d,c)]=m)}),u}return o.default=o,bi=o,bi}var jx=Cx();const Ex=lo(jx),lp=op("end"),Ba=op("start");function op(t){return i;function i(r){const o=r&&r.position&&r.position[t]||{};if(typeof o.line=="number"&&o.line>0&&typeof o.column=="number"&&o.column>0)return{line:o.line,column:o.column,offset:typeof o.offset=="number"&&o.offset>-1?o.offset:void 0}}}function Nx(t){const i=Ba(t),r=lp(t);if(i&&r)return{start:i,end:r}}function _i(t){return!t||typeof t!="object"?"":"position"in t||"type"in t?ud(t.position):"start"in t||"end"in t?ud(t):"line"in t||"column"in t?Ta(t):""}function Ta(t){return cd(t&&t.line)+":"+cd(t&&t.column)}function ud(t){return Ta(t&&t.start)+"-"+Ta(t&&t.end)}function cd(t){return t&&typeof t=="number"?t:1}class at extends Error{constructor(i,r,o){super(),typeof r=="string"&&(o=r,r=void 0);let a="",c={},u=!1;if(r&&("line"in r&&"column"in r?c={place:r}:"start"in r&&"end"in r?c={place:r}:"type"in r?c={ancestors:[r],place:r.position}:c={...r}),typeof i=="string"?a=i:!c.cause&&i&&(u=!0,a=i.message,c.cause=i),!c.ruleId&&!c.source&&typeof o=="string"){const m=o.indexOf(":");m===-1?c.ruleId=o:(c.source=o.slice(0,m),c.ruleId=o.slice(m+1))}if(!c.place&&c.ancestors&&c.ancestors){const m=c.ancestors[c.ancestors.length-1];m&&(c.place=m.position)}const d=c.place&&"start"in c.place?c.place.start:c.place;this.ancestors=c.ancestors||void 0,this.cause=c.cause||void 0,this.column=d?d.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=d?d.line:void 0,this.name=_i(c.place)||"1:1",this.place=c.place||void 0,this.reason=this.message,this.ruleId=c.ruleId||void 0,this.source=c.source||void 0,this.stack=u&&c.cause&&typeof c.cause.stack=="string"?c.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}at.prototype.file="";at.prototype.name="";at.prototype.reason="";at.prototype.message="";at.prototype.stack="";at.prototype.column=void 0;at.prototype.line=void 0;at.prototype.ancestors=void 0;at.prototype.cause=void 0;at.prototype.fatal=void 0;at.prototype.place=void 0;at.prototype.ruleId=void 0;at.prototype.source=void 0;const Ua={}.hasOwnProperty,_x=new Map,Tx=/[A-Z]/g,Px=new Set(["table","tbody","thead","tfoot","tr"]),Ix=new Set(["td","th"]),sp="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function zx(t,i){if(!i||i.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const r=i.filePath||void 0;let o;if(i.develop Line truncated
`;break}case-3:{u=`\r
`;break}case-2:{u=i?" ":" ";break}case-1:{if(!i&&a)continue;u=" ";break}default:u=String.fromCharCode(c)}a=c===-2,o.push(u)}return o.join("")}function $1(t){const o={constructs:dp([D1,...(t||{}).extensions||[]]),content:a(ty),defined:[],document:a(ry),flow:a(w1),lazy:{},string:a(C1),text:a(j1)};return o;function a(c){return u;function u(d){return A1(o,c,d)}}}function B1(t){for(;!xp(t););return t}const kd=/[\0\t\n\r]/g;function U1(){let t=1,i="",r=!0,o;return a;function a(c,u,d){const m=[];let h,y,x,v,w;for(c=i+(typeof c=="string"?c.toString():new TextDecoder(u||void 0).decode(c)),x=0,i="",r&&(c.charCodeAt(0)===65279&&x++,r=void 0);x<c.length;){if(kd.lastIndex=x,h=kd.exec(c),v=h&&h.index!==void 0?h.index:c.length,w=c.charCodeAt(v),!h){i=c.slice(x);break}if(w===10&&x===v&&o)m.push(-3),o=void 0;else switch(o&&(m.push(-5),o=void 0),x<v&&(m.push(c.slice(x,v)),t+=v-x),w){case 0:{m.push(65533),t++;break}case 9:{for(y=Math.ceil(t/4)*4,m.push(-2);t++<y;)m.push(-1);break}case 10:{m.push(-4),t=1;break}default:o=!0,t=1}x=v+1}return d&&(o&&m.push(-5),i&&m.push(i),m.push(null)),m}}const V1=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function H1(t){return t.replace(V1,W1)}function W1(t,i,r){if(i)return i;if(r.charCodeAt(0)===35){const a=r.charCodeAt(1),c=a===120||a===88;return pp(r.slice(c?2:1),c?16:10)}return qa(r)||t}const bp={}.hasOwnProperty;function q1(t,i,r){return i&&typeof i=="object"&&(r=i,i=void 0),Q1(r)(B1($1(r).document().write(U1()(t,i,!0))))}function Q1(t){const i={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:c(lr),autolinkProtocol:ge,autolinkEmail:ge,atxHeading:c(Dr),blockQuote:c(He),characterEscape:ge,characterReference:ge,codeFenced:c(Jt),codeFencedFenceInfo:u,codeFencedFenceMeta:u,codeIndented:c(Jt,u),codeText:c(Di,u),codeTextData:ge,data:ge,codeFlowValue:ge,definition:c(rr),definitionDestinationString:u,definitionLabelString:u,definitionTitleString:u,emphasis:c(Mr),hardBreakEscape:c(Ar),hardBreakTrailing:c(Ar),htmlFlow:c(ir,u),htmlFlowData:ge,htmlText:c(ir,u),htmlTextData:ge,image:c(Ai),label:u,link:c(lr),listItem:c(dn),listItemValue:v,listOrdered:c(fn,x),listUnordered:c(fn),paragraph:c(Or),reference:C,referenceString:u,resourceDestinationString:u,resourceTitleString:u,setextHeading:c(Dr),strong:c(Oi),thematicBreak:c($i)},exit:{atxHeading:m(),atxHeadingSequence:le,autolink:m(),autolinkEmail:Ie,autolinkProtocol:Se,blockQuote:m(),characterEscapeValue:R,characterReferenceMarkerHexadecimal:we,characterReferenceMarkerNumeric:we,characterReferenceValue:he,characterReference:Te,codeFenced:m(j),codeFencedFence:L,codeFencedFenceInfo:w,codeFencedFenceMeta:E,codeFlowValue:R,codeIndented:m(T),codeText:m(G),codeTextData:R,data:R,definition:m(),definitionDestinationString:J,definitionLabelString:O,definitionTitleString:A,emphasis:m(),hardBreakEscape:m(Z),hardBreakTrailing:m(Z),htmlFlow:m(ve),htmlFlowData:R,htmlText:m(X),htmlTextData:R,image:m(se),label:re,labelText:U,lineEnding:Y,link:m($),listItem:m(),listOrdered:m(),listUnordered:m(),paragraph:m(),referenceString:me,resourceDestinationString:S,resourceTitleString:P,resource:B,setextHeading:m(ce),setextHeadingLineSequence:ue,setextHeadingText:D,strong:m(),thematicBreak:m()}};Cp(i,(t||{}).mdastExtensions||[]);const r={};return o;function o(F){let K={type:"root",children:[]};const xe={stack:[K],tokenStack:[],config:i,enter:d,exit:h,buffer:u,resume:y,data:r},be=[];let Ne=-1;for(;++Ne<F.length;)if(F[Ne][1].type==="listOrdered"||F[Ne][1].type==="listUnordered")if(F[Ne][0]==="enter")be.push(Ne);else{const Ze=be.pop();Ne=a(F,Ze,Ne)}for(Ne=-1;++Ne<F.length;){const Ze=i[F[Ne][0]];bp.call(Ze,F[Ne][1].type)&&Ze[F[Ne][1].type].call(Object.assign({sliceSerialize:F[Ne][2].sliceSerialize},xe),F[Ne][1])}if(xe.tokenStack.length>0){const Ze=xe.tokenStack[xe.tokenStack.length-1];(Ze[1]||wd).call(xe,void 0,Ze[0])}for(K.position={start:Rn(F.length>0?F[0][1].start:{line:1,column:1,offset:0}),end:Rn(F.length>0?F[F.length-2][1].end:{line:1,column:1,offset:0})},Ne=-1;++Ne<i.transforms.length;)K=i.transforms[Ne](K)||K;return K}function a(F,K,xe){let be=K-1,Ne=-1,Ze=!1,Zt,_t,pn,An;for(;++be<=xe;){const et=F[be];switch(et[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{et[0]==="enter"?Ne++:Ne--,An=void 0;break}case"lineEndingBlank":{et[0]==="enter"&&(Zt&&!An&&!Ne&&!pn&&(pn=be),An=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:An=void 0}if(!Ne&&et[0]==="enter"&&et[1].type==="listItemPrefix"||Ne===-1&&et[0]==="exit"&&(et[1].type==="listUnordered"||et[1].type==="listOrdered")){if(Zt){let Ht=be;for(_t=void 0;Ht--;){const kt=F[Ht];if(kt[1].type==="lineEnding"||kt[1].type==="lineEndingBlank"){if(kt[0]==="exit")continue;_t&&(F[_t][1].type="lineEndingBlank",Ze=!0),kt[1].type="lineEnding",_t=Ht}else if(!(kt[1].type==="linePrefix"||kt[1].type==="blockQuotePrefix"||kt[1].type==="blockQuotePrefixWhitespace"||kt[1].type==Line truncated
`}]}function J1(t,i){const r=i.value?i.value+`
`:"",o={},a=i.lang?i.lang.split(/\s+/):[];a.length>0&&(o.className=["language-"+a[0]]);let c={type:"element",tagName:"code",properties:o,children:[{type:"text",value:r}]};return i.meta&&(c.data={meta:i.meta}),t.patch(i,c),c=t.applyData(i,c),c={type:"element",tagName:"pre",properties:{},children:[c]},t.patch(i,c),c}function Z1(t,i){const r={type:"element",tagName:"del",properties:{},children:t.all(i)};return t.patch(i,r),t.applyData(i,r)}function ev(t,i){const r={type:"element",tagName:"em",properties:{},children:t.all(i)};return t.patch(i,r),t.applyData(i,r)}function tv(t,i){const r=typeof t.options.clobberPrefix=="string"?t.options.clobberPrefix:"user-content-",o=String(i.identifier).toUpperCase(),a=Rr(o.toLowerCase()),c=t.footnoteOrder.indexOf(o);let u,d=t.footnoteCounts.get(o);d===void 0?(d=0,t.footnoteOrder.push(o),u=t.footnoteOrder.length):u=c+1,d+=1,t.footnoteCounts.set(o,d);const m={type:"element",tagName:"a",properties:{href:"#"+r+"fn-"+a,id:r+"fnref-"+a+(d>1?"-"+d:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(u)}]};t.patch(i,m);const h={type:"element",tagName:"sup",properties:{},children:[m]};return t.patch(i,h),t.applyData(i,h)}function nv(t,i){const r={type:"element",tagName:"h"+i.depth,properties:{},children:t.all(i)};return t.patch(i,r),t.applyData(i,r)}function rv(t,i){if(t.options.allowDangerousHtml){const r={type:"raw",value:i.value};return t.patch(i,r),t.applyData(i,r)}}function jp(t,i){const r=i.referenceType;let o="]";if(r==="collapsed"?o+="[]":r==="full"&&(o+="["+(i.label||i.identifier)+"]"),i.type==="imageReference")return[{type:"text",value:"!["+i.alt+o}];const a=t.all(i),c=a[0];c&&c.type==="text"?c.value="["+c.value:a.unshift({type:"text",value:"["});const u=a[a.length-1];return u&&u.type==="text"?u.value+=o:a.push({type:"text",value:o}),a}function iv(t,i){const r=String(i.identifier).toUpperCase(),o=t.definitionById.get(r);if(!o)return jp(t,i);const a={src:Rr(o.url||""),alt:i.alt};o.title!==null&&o.title!==void 0&&(a.title=o.title);const c={type:"element",tagName:"img",properties:a,children:[]};return t.patch(i,c),t.applyData(i,c)}function lv(t,i){const r={src:Rr(i.url)};i.alt!==null&&i.alt!==void 0&&(r.alt=i.alt),i.title!==null&&i.title!==void 0&&(r.title=i.title);const o={type:"element",tagName:"img",properties:r,children:[]};return t.patch(i,o),t.applyData(i,o)}function ov(t,i){const r={type:"text",value:i.value.replace(/\r?\n|\r/g," ")};t.patch(i,r);const o={type:"element",tagName:"code",properties:{},children:[r]};return t.patch(i,o),t.applyData(i,o)}function sv(t,i){const r=String(i.identifier).toUpperCase(),o=t.definitionById.get(r);if(!o)return jp(t,i);const a={href:Rr(o.url||"")};o.title!==null&&o.title!==void 0&&(a.title=o.title);const c={type:"element",tagName:"a",properties:a,children:t.all(i)};return t.patch(i,c),t.applyData(i,c)}function av(t,i){const r={href:Rr(i.url)};i.title!==null&&i.title!==void 0&&(r.title=i.title);const o={type:"element",tagName:"a",properties:r,children:t.all(i)};return t.patch(i,o),t.applyData(i,o)}function uv(t,i,r){const o=t.all(i),a=r?cv(r):Ep(i),c={},u=[];if(typeof i.checked=="boolean"){const y=o[0];let x;y&&y.type==="element"&&y.tagName==="p"?x=y:(x={type:"element",tagName:"p",properties:{},children:[]},o.unshift(x)),x.children.length>0&&x.children.unshift({type:"text",value:" "}),x.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:i.checked,disabled:!0},children:[]}),c.className=["task-list-item"]}let d=-1;for(;++d<o.length;){const y=o[d];(a||d!==0||y.type!=="element"||y.tagName!=="p")&&u.push({type:"text",value:`
`}),y.type==="element"&&y.tagName==="p"&&!a?u.push(...y.children):u.push(y)}const m=o[o.length-1];m&&(a||m.type!=="element"||m.tagName!=="p")&&u.push({type:"text",value:`
`});const h={type:"element",tagName:"li",properties:c,children:u};return t.patch(i,h),t.applyData(i,h)}function cv(t){let i=!1;if(t.type==="list"){i=t.spread||!1;const r=t.children;let o=-1;for(;!i&&++o<r.length;)i=Ep(r[o])}return i}function Ep(t){const i=t.spread;return i??t.children.length>1}function fv(t,i){const r={},o=t.all(i);let a=-1;for(typeof i.start=="number"&&i.start!==1&&(r.start=i.start);++a<o.length;){const u=o[a];if(u.type==="element"&&u.tagName==="li"&&u.properties&&Array.isArray(u.properties.className)&&u.properties.className.includes("task-list-item")){r.className=["contains-task-list"];break}}const c={type:"element",tagName:i.ordered?"ol":"ul",properties:r,children:t.wrap(o,!0)};return t.patch(i,c),t.applyData(i,c)}function dv(t,i){const r={type:"element",tagName:"p",properties:{},children:t.all(i)};return t.patch(i,r),t.applyData(i,r)}function pv(t,i){const r={type:"root",children:t.wrap(t.all(i))};return t.patch(i,r),t.applyData(i,r)}function hv(t,i){const r={type:"element",tagName:"strong",properties:{},children:t.all(i)};return t.patch(i,r),t.applyData(i,r)}function mv(t,i){const r=t.all(i),o=r.shift(),a=[];if(o){const u={type:"element",tagName:"thead",properties:{},children:t.wrap([o],!0)};t.patch(i.children[0],u),a.push(u)}if(r.length>0){const u={type:"element",tagName:"tbody",properties:{},children:t.wrap(r,!0)},d=Ba(i.children[1]),m=lp(i.children[i.children.length-1]);d&&m&&(u.position={start:d,end:m}),a.push(u)}const c={type:"element",tagName:"table",properties:{},children:t.wrap(a,!0)};return t.patch(i,c),t.applyData(i,c)}function gv(t,i,r){const o=r?r.children:void 0,c=(o?o.indexOf(i):1)===0?"th":"td",u=r&&r.type==="table"?r.align:void 0,d=u?u.length:i.children.length;let m=-1;const h=[];for(;++m<d;){const x=i.children[m],v={},w=u?u[m]:void 0;w&&(v.align=w);let E={type:"element",tagName:c,properties:v,children:[]};x&&(E.children=t.all(x),t.patch(x,E),E=t.applyData(x,E)),h.push(E)}const y={type:"element",tagName:"tr",properties:{},children:t.wrap(h,!0)};return t.patch(i,y),t.applyData(i,y)}function xv(t,i){const r={type:"element",tagName:"td",properties:{},children:t.all(i)};return t.patch(i,r),t.applyData(i,r)}const Sd=9,bd=32;function yv(t){const i=String(t),r=/\r?\n|\r/g;let o=r.exec(i),a=0;const c=[];for(;o;)c.push(Cd(i.slice(a,o.index),a>0,!0),o[0]),a=o.index+o[0].length,o=r.exec(i);return c.push(Cd(i.slice(a),a>0,!1)),c.join("")}function Cd(t,i,r){let o=0,a=t.length;if(i){let c=t.codePointAt(o);for(;c===Sd||c===bd;)o++,c=t.codePointAt(o)}if(r){let c=t.codePointAt(a-1);for(;c===Sd||c===bd;)a--,c=t.codePointAt(a-1)}return a>o?t.slice(o,a):""}function vv(t,i){const r={type:"text",value:yv(String(i.value))};return t.patch(i,r),t.applyData(i,r)}function kv(t,i){const r={type:"element",tagName:"hr",properties:{},children:[]};return t.patch(i,r),t.applyData(i,r)}const wv={blockquote:Y1,break:X1,code:J1,delete:Z1,emphasis:ev,footnoteReference:tv,heading:nv,html:rv,imageReference:iv,image:lv,inlineCode:ov,linkReference:sv,link:av,listItem:uv,list:fv,paragraph:dv,root:pv,strong:hv,table:mv,tableCell:xv,tableRow:gv,text:vv,thematicBreak:kv,toml:Kl,yaml:Kl,definition:Kl,footnoteDefinition:Kl};function Kl(){}const Np=-1,po=0,Pi=1,no=2,Ga=3,Ka=4,Ya=5,Xa=6,_p=7,Tp=8,Sv=typeof self=="object"?self:globalThis,jd=(t,i)=>{switch(t){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+t)}return new Sv[t](i)},bv=(t,i)=>{const r=(a,c)=>(t.set(c,a),a),o=a=>{if(t.has(a))return t.get(a);const[c,u]=i[a];switch(c){case po:case Np:return r(u,a);case Pi:{const d=r([],a);for(const m of u)d.push(o(m));return d}case no:{const d=r({},a);for(const[m,h]of u)d[o(m)]=o(h);return d}case Ga:return r(new Date(u),a);case Ka:{const{source:d,flags:m}=u;return r(new RegExp(d,m),a)}case Ya:{const d=r(new Map,a);for(const[m,h]of u)d.set(o(m),o(h));return d}case Xa:{const d=r(new Set,a);for(const m of u)d.add(o(m));return d}case _p:{const{name:d,message:m}=u;return r(jd(d,m),a)}case Tp:return r(BigInt(u),a);case"BigInt":return r(Object(BigInt(u)),a);case"ArrayBuffer":return r(new Uint8Array(u).buffer,u);case"DataView":{const{buffer:d}=new Uint8Array(u);return r(new DataView(d),u)}}return r(jd(c,u),a)};return o},Ed=t=>bv(new Map,t)(0),Zn="",{toString:Cv}={},{keys:jv}=Object,ji=t=>{const i=typeof t;if(i!=="object"||!t)return[po,i];const r=Cv.call(t).slice(8,-1);switch(r){case"Array":return[Pi,Zn];case"Object":return[no,Zn];case"Date":return[Ga,Zn];case"RegExp":return[Ka,Zn];case"Map":return[Ya,Zn];case"Set":return[Xa,Zn];case"DataView":return[Pi,r]}return r.includes("Array")?[Pi,r]:r.includes("Error")?[_p,r]:[no,r]},Yl=([t,i])=>t===po&&(i==="function"||i==="symbol"),Ev=(t,i,r,o)=>{const a=(u,d)=>{const m=o.push(u)-1;return r.set(d,m),m},c=u=>{if(r.has(u))return r.get(u);let[d,m]=ji(u);switch(d){case po:{let y=u;switch(m){case"bigint":d=Tp,y=u.toString();break;case"function":case"symbol":if(t)throw new TypeError("unable to serialize "+m); Line truncated
`},{type:"element",tagName:"ol",properties:{},children:t.wrap(d,!0)},{type:"text",value:`
`}]}}const ho=(function(t){if(t==null)return Lv;if(typeof t=="function")return mo(t);if(typeof t=="object")return Array.isArray(t)?Pv(t):Iv(t);if(typeof t=="string")return zv(t);throw new Error("Expected function, string, or object as test")});function Pv(t){const i=[];let r=-1;for(;++r<t.length;)i[r]=ho(t[r]);return mo(o);function o(...a){let c=-1;for(;++c<i.length;)if(i[c].apply(this,a))return!0;return!1}}function Iv(t){const i=t;return mo(r);function r(o){const a=o;let c;for(c in t)if(a[c]!==i[c])return!1;return!0}}function zv(t){return mo(i);function i(r){return r&&r.type===t}}function mo(t){return i;function i(r,o,a){return!!(Rv(r)&&t.call(this,r,typeof o=="number"?o:void 0,a||void 0))}}function Lv(){return!0}function Rv(t){return t!==null&&typeof t=="object"&&"type"in t}const Pp=[],Mv=!0,za=!1,Dv="skip";function Ip(t,i,r,o){let a;typeof i=="function"&&typeof r!="function"?(o=r,r=i):a=i;const c=ho(a),u=o?-1:1;d(t,void 0,[])();function d(m,h,y){const x=m&&typeof m=="object"?m:{};if(typeof x.type=="string"){const w=typeof x.tagName=="string"?x.tagName:typeof x.name=="string"?x.name:void 0;Object.defineProperty(v,"name",{value:"node ("+(m.type+(w?"<"+w+">":""))+")"})}return v;function v(){let w=Pp,E,L,j;if((!i||c(m,h,y[y.length-1]||void 0))&&(w=Av(r(m,y)),w[0]===za))return w;if("children"in m&&m.children){const T=m;if(T.children&&w[0]!==Dv)for(L=(o?T.children.length:-1)+u,j=y.concat(T);L>-1&&L<T.children.length;){const O=T.children[L];if(E=d(O,L,j)(),E[0]===za)return E;L=typeof E[1]=="number"?E[1]:L+u}}return w}}}function Av(t){return Array.isArray(t)?t:typeof t=="number"?[Mv,t]:t==null?Pp:[t]}function Ja(t,i,r,o){let a,c,u;typeof i=="function"&&typeof r!="function"?(c=void 0,u=i,a=r):(c=i,u=r,a=o),Ip(t,c,d,a);function d(m,h){const y=h[h.length-1],x=y?y.children.indexOf(m):void 0;return u(m,x,y)}}const La={}.hasOwnProperty,Ov={};function Fv(t,i){const r=i||Ov,o=new Map,a=new Map,c=new Map,u={...wv,...r.handlers},d={all:h,applyData:Bv,definitionById:o,footnoteById:a,footnoteCounts:c,footnoteOrder:[],handlers:u,one:m,options:r,patch:$v,wrap:Vv};return Ja(t,function(y){if(y.type==="definition"||y.type==="footnoteDefinition"){const x=y.type==="definition"?o:a,v=String(y.identifier).toUpperCase();x.has(v)||x.set(v,y)}}),d;function m(y,x){const v=y.type,w=d.handlers[v];if(La.call(d.handlers,v)&&w)return w(d,y,x);if(d.options.passThrough&&d.options.passThrough.includes(v)){if("children"in y){const{children:L,...j}=y,T=ro(j);return T.children=d.all(y),T}return ro(y)}return(d.options.unknownHandler||Uv)(d,y,x)}function h(y){const x=[];if("children"in y){const v=y.children;let w=-1;for(;++w<v.length;){const E=d.one(v[w],y);if(E){if(w&&v[w-1].type==="break"&&(!Array.isArray(E)&&E.type==="text"&&(E.value=_d(E.value)),!Array.isArray(E)&&E.type==="element")){const L=E.children[0];L&&L.type==="text"&&(L.value=_d(L.value))}Array.isArray(E)?x.push(...E):x.push(E)}}}return x}}function $v(t,i){t.position&&(i.position=Nx(t))}function Bv(t,i){let r=i;if(t&&t.data){const o=t.data.hName,a=t.data.hChildren,c=t.data.hProperties;if(typeof o=="string")if(r.type==="element")r.tagName=o;else{const u="children"in r?r.children:[r];r={type:"element",tagName:o,properties:{},children:u}}r.type==="element"&&c&&Object.assign(r.properties,ro(c)),"children"in r&&r.children&&a!==null&&a!==void 0&&(r.children=a)}return r}function Uv(t,i){const r=i.data||{},o="value"in i&&!(La.call(r,"hProperties")||La.call(r,"hChildren"))?{type:"text",value:i.value}:{type:"element",tagName:"div",properties:{},children:t.all(i)};return t.patch(i,o),t.applyData(i,o)}function Vv(t,i){const r=[];let o=-1;for(i&&r.push({type:"text",value:`
`});++o<t.length;)o&&r.push({type:"text",value:`
`}),r.push(t[o]);return i&&t.length>0&&r.push({type:"text",value:`
`}),r}function _d(t){let i=0,r=t.charCodeAt(i);for(;r===9||r===32;)i++,r=t.charCodeAt(i);return t.slice(i)}function Td(t,i){const r=Fv(t,i),o=r.one(t,void 0),a=Tv(r),c=Array.isArray(o)?{type:"root",children:o}:o||{type:"root",children:[]};return a&&c.children.push({type:"text",value:`
`},a),c}function Hv(t,i){return t&&"run"in t?async function(r,o){const a=Td(r,{file:o,...i});await t.run(a,o)}:function(r,o){return Td(r,{file:o,...t||i})}}function Pd(t){if(t)throw t}var da,Id;function Wv(){if(Id)return da;Id=1;var t=Object.prototype.hasOwnProperty,i=Object.prototype.toString,r=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=function(h){return typeof Array.isArray=="function"?Array.isArray(h):i.call(h)==="[object Array]"},c=function(h){if(!h||i.call(h)!=="[object Object]")return!1;var y=t.call(h,"constructor"),x=h.constructor&&h.constructor.prototype&&t.call(h.constructor.prototype,"isPrototypeOf");if(h.constructor&&!y&&!x)return!1;var v;for(v in h);return typeof v>"u"||t.call(h,v)},u=function(h,y){r&&y.name==="__proto__"?r(h,y.name,{enumerable:!0,configurable:!0,value:y.newValue,writable:!0}):h[y.name]=y.newValue},d=function(h,y){if(y==="__proto__")if(t.call(h,y)){if(o)return o(h,y).value}else return;return h[y]};return da=function m(){var h,y,x,v,w,E,L=arguments[0],j=1,T=arguments.length,O=!1;for(typeof L=="boolean"&&(O=L,L=arguments[1]||{},j=2),(L==null||typeof L!="object"&&typeof L!="function")&&(L={});j<T;++j)if(h=arguments[j],h!=null)for(y in h)x=d(L,y),v=d(h,y),L!==v&&(O&&v&&(c(v)||(w=a(v)))?(w?(w=!1,E=x&&a(x)?x:[]):E=x&&c(x)?x:{},u(L,{name:y,newValue:m(O,E,v)})):typeof v<"u"&&u(L,{name:y,newValue:v}));return L},da}var qv=Wv();const pa=lo(qv);function Ra(t){if(typeof t!="object"||t===null)return!1;const i=Object.getPrototypeOf(t);return(i===null||i===Object.prototype||Object.getPrototypeOf(i)===null)&&!(Symbol.toStringTag in t)&&!(Symbol.iterator in t)}function Qv(){const t=[],i={run:r,use:o};return i;function r(...a){let c=-1;const u=a.pop();if(typeof u!="function")throw new TypeError("Expected function as last argument, not "+u);d(null,...a);function d(m,...h){const y=t[++c];let x=-1;if(m){u(m);return}for(;++x<a.length;)(h[x]===null||h[x]===void 0)&&(h[x]=a[x]);a=h,y?Gv(y,d)(...h):u(null,...h)}}function o(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return t.push(a),i}}function Gv(t,i){let r;return o;function o(...u){const d=t.length>u.length;let m;d&&u.push(a);try{m=t.apply(this,u)}catch(h){const y=h;if(d&&r)throw y;return a(y)}d||(m&&m.then&&typeof m.then=="function"?m.then(c,a):m instanceof Error?a(m):c(m))}function a(u,...d){r||(r=!0,i(u,...d))}function c(u){a(null,u)}}const Yt={basename:Kv,dirname:Yv,extname:Xv,join:Jv,sep:"/"};function Kv(t,i){if(i!==void 0&&typeof i!="string")throw new TypeError('"ext" argument must be a string');Mi(t);let r=0,o=-1,a=t.length,c;if(i===void 0||i.length===0||i.length>t.length){for(;a--;)if(t.codePointAt(a)===47){if(c){r=a+1;break}}else o<0&&(c=!0,o=a+1);return o<0?"":t.slice(r,o)}if(i===t)return"";let u=-1,d=i.length-1;for(;a--;)if(t.codePointAt(a)===47){if(c){r=a+1;break}}else u<0&&(c=!0,u=a+1),d>-1&&(t.codePointAt(a)===i.codePointAt(d--)?d<0&&(o=a):(d=-1,o=u));return r===o?o=u:o<0&&(o=t.length),t.slice(r,o)}function Yv(t){if(Mi(t),t.length===0)return".";let i=-1,r=t.length,o;for(;--r;)if(t.codePointAt(r)===47){if(o){i=r;break}}else o||(o=!0);return i<0?t.codePointAt(0)===47?"/":".":i===1&&t.codePointAt(0)===47?"//":t.slice(0,i)}function Xv(t){Mi(t);let i=t.length,r=-1,o=0,a=-1,c=0,u;for(;i--;){const d=t.codePointAt(i);if(d===47){if(u){o=i+1;break}continue}r<0&&(u=!0,r=i+1),d===46?a<0?a=i:c!==1&&(c=1):a>-1&&(c=-1)}return a<0||r<0||c===0||c===1&&a===r-1&&a===o+1?"":t.slice(a,r)}function Jv(...t){let i=-1,r;for(;++i<t.length;)Mi(t[i]),t[i]&&(r=r===void 0?t[i]:r+"/"+t[i]);return r===void 0?".":Zv(r)}function Zv(t){Mi(t);const i=t.codePointAt(0)===47;let r=ek(t,!i);return r.length===0&&!i&&(r="."),r.length>0&&t.codePointAt(t.length-1)===47&&(r+="/"),i?"/"+r:r}function ek(t,i){let r="",o=0,a=-1,c=0,u=-1,d,m;for(;++u<=t.length;){if(u<t.length)d=t.codePointAt(u);else{if(d===47)break;d=47}if(d===47){if(!(a===u-1||c===1))if(a!==u-1&&c===2){if(r.length<2||o!==2||r.codePointAt(r.length-1)!==46||r.codePointAt(r.length-2)!==46){if(r.length>2){if(m=r.lastIndexOf("/"),m!==r.length-1){m<0?(r="",o=0):(r=r.slice(0,m),o=r.length-1-r.lastIndexOf("/")),a=u,c=0;continue}}else if(r.length>0){r="",o=0,a=u,c=0;continue}}i&&(r=r.length>0?r+"/..":"..",o=2)}else r.length>0?r+="/"+t.slice(a+1,u):r=t.slice(a+1,u),o=u-a-1;a=u,c=0}else d===46&&c>-1?c++:c=-1}return r}function Mi(t){if(typeof t!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(t))}const tk={cwd:nk};function nk(){return"/"}function Ma(t){return!!(t!==null&&typeof t=="object"&&"href"in t&&t.href&&"protocol"in t&&t.protocol&&t.auth===void 0)}function rk(t){if(typeof t=="string")t=new URL(t);else if(!Ma(t)){const i=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+t+"`");throw i.code="ERR_INVALID_ARG_TYPE",i}if(t.protocol!=="file:"){const i=new TypeError("The URL must be of scheme file");throw i.code="ERR_INVALID_URL_SCHEME",i}return ik(t)}function ik(t){if(t.hostname!==""){consLine truncated
`:" ")+c.indentLines(c.containerFlow(o,d.current()),i?Mp:Gk))),h(),m}}function Gk(t,i,r){return i===0?t:Mp(t,i,r)}function Mp(t,i,r){return(r?"":" ")+t}const Kk=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];Dp.peek=ew;function Yk(){return{canContainEols:["delete"],enter:{strikethrough:Jk},exit:{strikethrough:Zk}}}function Xk(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Kk}],handlers:{delete:Dp}}}function Jk(t){this.enter({type:"delete",children:[]},t)}function Zk(t){this.exit(t)}function Dp(t,i,r,o){const a=r.createTracker(o),c=r.enter("strikethrough");let u=a.move("~~");return u+=r.containerPhrasing(t,{...a.current(),before:u,after:"~"}),u+=a.move("~~"),c(),u}function ew(){return"~"}function tw(t){return t.length}function nw(t,i){const r=i||{},o=(r.align||[]).concat(),a=r.stringLength||tw,c=[],u=[],d=[],m=[];let h=0,y=-1;for(;++y<t.length;){const L=[],j=[];let T=-1;for(t[y].length>h&&(h=t[y].length);++T<t[y].length;){const O=rw(t[y][T]);if(r.alignDelimiters!==!1){const A=a(O);j[T]=A,(m[T]===void 0||A>m[T])&&(m[T]=A)}L.push(O)}u[y]=L,d[y]=j}let x=-1;if(typeof o=="object"&&"length"in o)for(;++x<h;)c[x]=Od(o[x]);else{const L=Od(o);for(;++x<h;)c[x]=L}x=-1;const v=[],w=[];for(;++x<h;){const L=c[x];let j="",T="";L===99?(j=":",T=":"):L===108?j=":":L===114&&(T=":");let O=r.alignDelimiters===!1?1:Math.max(1,m[x]-j.length-T.length);const A=j+"-".repeat(O)+T;r.alignDelimiters!==!1&&(O=j.length+O+T.length,O>m[x]&&(m[x]=O),w[x]=O),v[x]=A}u.splice(1,0,v),d.splice(1,0,w),y=-1;const E=[];for(;++y<u.length;){const L=u[y],j=d[y];x=-1;const T=[];for(;++x<h;){const O=L[x]||"";let A="",J="";if(r.alignDelimiters!==!1){const le=m[x]-(j[x]||0),D=c[x];D===114?A=" ".repeat(le):D===99?le%2?(A=" ".repeat(le/2+.5),J=" ".repeat(le/2-.5)):(A=" ".repeat(le/2),J=A):J=" ".repeat(le)}r.delimiterStart!==!1&&!x&&T.push("|"),r.padding!==!1&&!(r.alignDelimiters===!1&&O==="")&&(r.delimiterStart!==!1||x)&&T.push(" "),r.alignDelimiters!==!1&&T.push(A),T.push(O),r.alignDelimiters!==!1&&T.push(J),r.padding!==!1&&T.push(" "),(r.delimiterEnd!==!1||x!==h-1)&&T.push("|")}E.push(r.delimiterEnd===!1?T.join("").replace(/ +$/,""):T.join(""))}return E.join(`
`)}function rw(t){return t==null?"":String(t)}function Od(t){const i=typeof t=="string"?t.codePointAt(0):0;return i===67||i===99?99:i===76||i===108?108:i===82||i===114?114:0}function iw(t,i,r,o){const a=r.enter("blockquote"),c=r.createTracker(o);c.move("> "),c.shift(2);const u=r.indentLines(r.containerFlow(t,c.current()),lw);return a(),u}function lw(t,i,r){return">"+(r?"":" ")+t}function ow(t,i){return Fd(t,i.inConstruct,!0)&&!Fd(t,i.notInConstruct,!1)}function Fd(t,i,r){if(typeof i=="string"&&(i=[i]),!i||i.length===0)return r;let o=-1;for(;++o<i.length;)if(t.includes(i[o]))return!0;return!1}function $d(t,i,r,o){let a=-1;for(;++a<r.unsafe.length;)if(r.unsafe[a].character===`
`&&ow(r.stack,r.unsafe[a]))return/[ \t]/.test(o.before)?"":" ";return`\\
`}function sw(t,i){const r=String(t);let o=r.indexOf(i),a=o,c=0,u=0;if(typeof i!="string")throw new TypeError("Expected substring");for(;o!==-1;)o===a?++c>u&&(u=c):c=1,a=o+i.length,o=r.indexOf(i,a);return u}function aw(t,i){return!!(i.options.fences===!1&&t.value&&!t.lang&&/[^ \r\n]/.test(t.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(t.value))}function uw(t){const i=t.options.fence||"`";if(i!=="`"&&i!=="~")throw new Error("Cannot serialize code with `"+i+"` for `options.fence`, expected `` ` `` or `~`");return i}function cw(t,i,r,o){const a=uw(r),c=t.value||"",u=a==="`"?"GraveAccent":"Tilde";if(aw(t,r)){const x=r.enter("codeIndented"),v=r.indentLines(c,fw);return x(),v}const d=r.createTracker(o),m=a.repeat(Math.max(sw(c,a)+1,3)),h=r.enter("codeFenced");let y=d.move(m);if(t.lang){const x=r.enter(`codeFencedLang${u}`);y+=d.move(r.safe(t.lang,{before:y,after:" ",encode:["`"],...d.current()})),x()}if(t.lang&&t.meta){const x=r.enter(`codeFencedMeta${u}`);y+=d.move(" "),y+=d.move(r.safe(t.meta,{before:y,after:`
`,encode:["`"],...d.current()})),x()}return y+=d.move(`
`),c&&(y+=d.move(c+`
`)),y+=d.move(m),h(),y}function fw(t,i,r){return(r?"":" ")+t}function eu(t){const i=t.options.quote||'"';if(i!=='"'&&i!=="'")throw new Error("Cannot serialize title with `"+i+"` for `options.quote`, expected `\"`, or `'`");return i}function dw(t,i,r,o){const a=eu(r),c=a==='"'?"Quote":"Apostrophe",u=r.enter("definition");let d=r.enter("label");const m=r.createTracker(o);let h=m.move("[");return h+=m.move(r.safe(r.associationId(t),{before:h,after:"]",...m.current()})),h+=m.move("]: "),d(),!t.url||/[\0- \u007F]/.test(t.url)?(d=r.enter("destinationLiteral"),h+=m.move("<"),h+=m.move(r.safe(t.url,{before:h,after:">",...m.current()})),h+=m.move(">")):(d=r.enter("destinationRaw"),h+=m.move(r.safe(t.url,{before:h,after:t.title?" ":`
`,...m.current()}))),d(),t.title&&(d=r.enter(`title${c}`),h+=m.move(" "+a),h+=m.move(r.safe(t.title,{before:h,after:a,...m.current()})),h+=m.move(a),d()),u(),h}function pw(t){const i=t.options.emphasis||"*";if(i!=="*"&&i!=="_")throw new Error("Cannot serialize emphasis with `"+i+"` for `options.emphasis`, expected `*`, or `_`");return i}function zi(t){return"&#x"+t.toString(16).toUpperCase()+";"}function io(t,i,r){const o=zr(t),a=zr(i);return o===void 0?a===void 0?r==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:o===1?a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}Ap.peek=hw;function Ap(t,i,r,o){const a=pw(r),c=r.enter("emphasis"),u=r.createTracker(o),d=u.move(a);let m=u.move(r.containerPhrasing(t,{after:a,before:d,...u.current()}));const h=m.charCodeAt(0),y=io(o.before.charCodeAt(o.before.length-1),h,a);y.inside&&(m=zi(h)+m.slice(1));const x=m.charCodeAt(m.length-1),v=io(o.after.charCodeAt(0),x,a);v.inside&&(m=m.slice(0,-1)+zi(x));const w=u.move(a);return c(),r.attentionEncodeSurroundingInfo={after:v.outside,before:y.outside},d+m+w}function hw(t,i,r){return r.options.emphasis||"*"}function mw(t,i){let r=!1;return Ja(t,function(o){if("value"in o&&/\r?\n|\r/.test(o.value)||o.type==="break")return r=!0,za}),!!((!t.depth||t.depth<3)&&Wa(t)&&(i.options.setext||r))}function gw(t,i,r,o){const a=Math.max(Math.min(6,t.depth||1),1),c=r.createTracker(o);if(mw(t,r)){const y=r.enter("headingSetext"),x=r.enter("phrasing"),v=r.containerPhrasing(t,{...c.current(),before:`
`,after:`
`});return x(),y(),v+`
`+(a===1?"=":"-").repeat(v.length-(Math.max(v.lastIndexOf("\r"),v.lastIndexOf(`
`))+1))}const u="#".repeat(a),d=r.enter("headingAtx"),m=r.enter("phrasing");c.move(u+" ");let h=r.containerPhrasing(t,{before:"# ",after:`
`,...c.current()});return/^[\t ]/.test(h)&&(h=zi(h.charCodeAt(0))+h.slice(1)),h=h?u+" "+h:u,r.options.closeAtx&&(h+=" "+u),m(),d(),h}Op.peek=xw;function Op(t){return t.value||""}function xw(){return"<"}Fp.peek=yw;function Fp(t,i,r,o){const a=eu(r),c=a==='"'?"Quote":"Apostrophe",u=r.enter("image");let d=r.enter("label");const m=r.createTracker(o);let h=m.move("![");return h+=m.move(r.safe(t.alt,{before:h,after:"]",...m.current()})),h+=m.move("]("),d(),!t.url&&t.title||/[\0- \u007F]/.test(t.url)?(d=r.enter("destinationLiteral"),h+=m.move("<"),h+=m.move(r.safe(t.url,{before:h,after:">",...m.current()})),h+=m.move(">")):(d=r.enter("destinationRaw"),h+=m.move(r.safe(t.url,{before:h,after:t.title?" ":")",...m.current()}))),d(),t.title&&(d=r.enter(`title${c}`),h+=m.move(" "+a),h+=m.move(r.safe(t.title,{before:h,after:a,...m.current()})),h+=m.move(a),d()),h+=m.move(")"),u(),h}function yw(){return"!"}$p.peek=vw;function $p(t,i,r,o){const a=t.referenceType,c=r.enter("imageReference");let u=r.enter("label");const d=r.createTracker(o);let m=d.move("![");const h=r.safe(t.alt,{before:m,after:"]",...d.current()});m+=d.move(h+"]["),u();const y=r.stack;r.stack=[],u=r.enter("reference");const x=r.safe(r.associationId(t),{before:m,after:"]",...d.current()});return u(),r.stack=y,c(),a==="full"||!h||h!==x?m+=d.move(x+"]"):a==="shortcut"?m=m.slice(0,-1):m+=d.move("]"),m}function vw(){return"!"}Bp.peek=kw;function Bp(t,i,r){let o=t.value||"",a="`",c=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(o);)a+="`";for(/[^ \r\n]/.test(o)&&(/^[ \r\n]/.test(o)&&/[ \r\n]$/.test(o)||/^`|`$/.test(o))&&(o=" "+o+" ");++c<r.unsafe.length;){const u=r.unsafe[c],d=r.compilePattern(u);let m;if(u.atBreak)for(;m=d.exec(o);){let h=m.index;o.charCodeAt(h)===10&&o.charCodeAt(h-1)===13&&h--,o=o.slice(0,h)+" "+o.slice(m.index+1)}}return a+o+a}function kw(){return"`"}function Up(t,i){const r=Wa(t);return!!(!i.options.resourceLink&&t.url&&!t.title&&t.children&&t.children.length===1&&t.children[0].type==="text"&&(r===t.url||"mailto:"+r===t.url)&&/^[a-z][a-z+.-]+:/i.test(t.url)&&!/[\0- <>\u007F]/.test(t.url))}Vp.peek=ww;function Vp(t,i,r,o){const a=eu(r),c=a==='"'?"Quote":"Apostrophe",u=r.createTracker(o);let d,m;if(Up(t,r)){const y=r.stack;r.stack=[],d=r.enter("autolink");let x=u.move("<");return x+=u.move(r.containerPhrasing(t,{before:x,after:">",...u.current()})),x+=u.move(">"),d(),r.stack=y,x}d=r.enter("link"),m=r.enter("label");let h=u.move("[");return h+=u.move(r.containerPhrasing(t,{before:h,after:"](",...u.current()})),h+=u.move("]("),m(),!t.url&&t.title||/[\0- \u007F]/.test(t.url)?(m=r.enter("destinationLiteral"),h+=u.move("<"),h+=u.move(r.safe(t.url,{before:h,after:">",...u.current()})),h+=u.move(">")):(m=r.enter("destinationRaw"),h+=u.move(r.safe(t.url,{before:h,after:t.title?" ":")",...u.current()}))),m(),t.title&&(m=r.enter(`title${c}`),h+=u.move(" "+a),h+=u.move(r.safe(t.title,{before:h,after:a,...u.current()})),h+=u.move(a),m()),h+=u.move(")"),d(),h}function ww(t,i,r){return Up(t,r)?"<":"["}Hp.peek=Sw;function Hp(t,i,r,o){const a=t.referenceType,c=r.enter("linkReference");let u=r.enter("label");const d=r.createTracker(o);let m=d.move("[");const h=r.containerPhrasing(t,{before:m,after:"]",...d.current()});m+=d.move(h+"]["),u();const y=r.stack;r.stack=[],u=r.enter("reference");const x=r.safe(r.associationId(t),{before:m,after:"]",...d.current()});return u(),r.stack=y,c(),a==="full"||!h||h!==x?m+=d.move(x+"]"):a==="shortcut"?m=m.slice(0,-1):m+=d.move("]"),m}function Sw(){return"["}function tu(t){const i=t.options.bullet||"*";if(i!=="*"&&i!=="+"&&i!=="-")throw new Error("Cannot serialize items with `"+i+"` for `options.bullet`, expected `*`, `+`, or `-`");return i}function bw(t){const i=tu(t),r=t.options.bulletOther;if(!r)return i==="*"?"-":"*";if(r!=="*"&&r!=="+"&&r!=="-")throw new Error("Cannot serialize items with `"+r+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(r===i)throw new Error("Expected `bullet` (`"+i+"`) and `bulletOther` (`"+r+"`) to be different");return r}function Cw(t){const i=t.options.bulletOrdered||".";if(i!=="."&&i!==")")throw new Error("Cannot serialize items with `"+i+"` for `options.bulletOrdered`, expected `.` or `)`");return i}function Wp(t){const i=t.options.rule||"*";if(i!=="*"&&i!=="-"&&i!=="_")throw new Error("Cannot serialize rules with `"+i+"` for `options.rule`, expected `*`, `-`, or `_`");return i}function jw(t,i,r,o){const a=r.enter("list"),c=r.bulletCurrent;let u=t.ordered?Cw(r):tu(r);const d=t.ordered?u==="."?")":".":bw(r);let m=i&&r.bulletLastUsed?u===r.bulletLastUsed:!1;if(!t.ordered){const y=t.children?t.children[0]:void 0;if((u==="*"||u==="-")&&y&&(!y.children||!y.children[0])&&r.stack[r.stack.length-1]==="list"&&r.stack[r.stack.length-2]==="listItem"&&r.stack[r.stack.length-3]==="list"&&r.stack[r.stack.length-4]==="listItem"&&r.indexStack[r.indexStack.length-1]===0&&r.indexStack[r.indexStack.length-2]===0&&r.indexStack[r.indexStack.length-3]===0&&(m=!0),Wp(r)===u&&y){let x=-1;for(;++x<t.chilLine truncated
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:v,table:u,tableCell:m,tableRow:d}};function u(w,E,L,j){return h(y(w,L,j),w.align)}function d(w,E,L,j){const T=x(w,L,j),O=h([T]);return O.slice(0,O.indexOf(`
`))}function m(w,E,L,j){const T=L.enter("tableCell"),O=L.enter("phrasing"),A=L.containerPhrasing(w,{...j,before:c,after:c});return O(),T(),A}function h(w,E){return nw(w,{align:E,alignDelimiters:o,padding:r,stringLength:a})}function y(w,E,L){const j=w.children;let T=-1;const O=[],A=E.enter("table");for(;++T<j.length;)O[T]=x(j[T],E,L);return A(),O}function x(w,E,L){const j=w.children;let T=-1;const O=[],A=E.enter("tableRow");for(;++T<j.length;)O[T]=m(j[T],w,E,L);return A(),O}function v(w,E,L){let j=Qp.inlineCode(w,E,L);return L.stack.includes("tableCell")&&(j=j.replace(/\|/g,"\\$&")),j}}function Vw(){return{exit:{taskListCheckValueChecked:Ud,taskListCheckValueUnchecked:Ud,paragraph:Ww}}}function Hw(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:qw}}}function Ud(t){const i=this.stack[this.stack.length-2];i.type,i.checked=t.type==="taskListCheckValueChecked"}function Ww(t){const i=this.stack[this.stack.length-2];if(i&&i.type==="listItem"&&typeof i.checked=="boolean"){const r=this.stack[this.stack.length-1];r.type;const o=r.children[0];if(o&&o.type==="text"){const a=i.children;let c=-1,u;for(;++c<a.length;){const d=a[c];if(d.type==="paragraph"){u=d;break}}u===r&&(o.value=o.value.slice(1),o.value.length===0?r.children.shift():r.position&&o.position&&typeof o.position.start.offset=="number"&&(o.position.start.column++,o.position.start.offset++,r.position.start=Object.assign({},o.position.start)))}}this.exit(t)}function qw(t,i,r,o){const a=t.children[0],c=typeof t.checked=="boolean"&&a&&a.type==="paragraph",u="["+(t.checked?"x":" ")+"] ",d=r.createTracker(o);c&&d.move(u);let m=Qp.listItem(t,i,r,{...o,...d.current()});return c&&(m=m.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,h)),m;function h(y){return y+u}}function Qw(){return[jk(),qk(),Yk(),Dw(),Vw()]}function Gw(t){return{extensions:[Ek(),Qk(t),Xk(),Uw(t),Hw()]}}const Kw={tokenize:t0,partial:!0},Gp={tokenize:n0,partial:!0},Kp={tokenize:r0,partial:!0},Yp={tokenize:i0,partial:!0},Yw={tokenize:l0,partial:!0},Xp={name:"wwwAutolink",tokenize:Zw,previous:Zp},Jp={name:"protocolAutolink",tokenize:e0,previous:eh},cn={name:"emailAutolink",tokenize:Jw,previous:th},Xt={};function Xw(){return{text:Xt}}let Xn=48;for(;Xn<123;)Xt[Xn]=cn,Xn++,Xn===58?Xn=65:Xn===91&&(Xn=97);Xt[43]=cn;Xt[45]=cn;Xt[46]=cn;Xt[95]=cn;Xt[72]=[cn,Jp];Xt[104]=[cn,Jp];Xt[87]=[cn,Xp];Xt[119]=[cn,Xp];function Jw(t,i,r){const o=this;let a,c;return u;function u(x){return!Da(x)||!th.call(o,o.previous)||nu(o.events)?r(x):(t.enter("literalAutolink"),t.enter("literalAutolinkEmail"),d(x))}function d(x){return Da(x)?(t.consume(x),d):x===64?(t.consume(x),m):r(x)}function m(x){return x===46?t.check(Yw,y,h)(x):x===45||x===95||st(x)?(c=!0,t.consume(x),m):y(x)}function h(x){return t.consume(x),a=!0,m}function y(x){return c&&a&&ft(o.previous)?(t.exit("literalAutolinkEmail"),t.exit("literalAutolink"),i(x)):r(x)}}function Zw(t,i,r){const o=this;return a;function a(u){return u!==87&&u!==119||!Zp.call(o,o.previous)||nu(o.events)?r(u):(t.enter("literalAutolink"),t.enter("literalAutolinkWww"),t.check(Kw,t.attempt(Gp,t.attempt(Kp,c),r),r)(u))}function c(u){return t.exit("literalAutolinkWww"),t.exit("literalAutolink"),i(u)}}function e0(t,i,r){const o=this;let a="",c=!1;return u;function u(x){return(x===72||x===104)&&eh.call(o,o.previous)&&!nu(o.events)?(t.enter("literalAutolink"),t.enter("literalAutolinkHttp"),a+=String.fromCodePoint(x),t.consume(x),d):r(x)}function d(x){if(ft(x)&&a.length<5)return a+=String.fromCodePoint(x),t.consume(x),d;if(x===58){const v=a.toLowerCase();if(v==="http"||v==="https")return t.consume(x),m}return r(x)}function m(x){return x===47?(t.consume(x),c?h:(c=!0,m)):r(x)}function h(x){return x===null||to(x)||Re(x)||tr(x)||co(x)?r(x):t.attempt(Gp,t.attempt(Kp,y),r)(x)}function y(x){return t.exit("literalAutolinkHttp"),t.exit("literalAutolink"),i(x)}}function t0(t,i,r){let o=0;return a;function a(u){return(u===87||u===119)&&o<3?(o++,t.consume(u),a):u===46&&o===3?(t.consume(u),c):r(u)}function c(u){return u===null?r(u):i(u)}}function n0(t,i,r){let o,a,c;return u;function u(h){return h===46||h===95?t.check(Yp,m,d)(h):h===null||Re(h)||tr(h)||h!==45&&co(h)?m(h):(c=!0,t.consume(h),u)}function d(h){return h===95?o=!0:(a=o,o=void 0),t.consume(h),u}function m(h){return a||o||!c?r(h):i(h)}}function r0(t,i){let r=0,o=0;return a;function a(u){return u===40?(r++,t.consume(u),a):u===41&&o<r?c(u):u===33||u===34||u===38||u===39||u===41||u===42||u===44||u===46||u===58||u===59||u===60||u===63||u===93||u===95||u===126?t.check(Yp,i,c)(u):u===null||Re(u)||tr(u)?i(u):(t.consume(u),a)}function c(u){return u===41&&o++,t.consume(u),a}}function i0(t,i,r){return o;function o(d){return d===33||d===34||d===39||d===41||d===42||d===44||d===46||d===58||d===59||d===63||d===95||d===126?(t.consume(d),o):d===38?(t.consume(d),c):d===93?(t.consume(d),a):d===60||d===null||Re(d)||tr(d)?i(d):r(d)}function a(d){return d===null||d===40||d===91||Re(d)||tr(d)?i(d):o(d)}function c(d){return ft(d)?u(d):r(d)}function u(d){re Line truncated
`)?g.jsx(T0,{lang:(o==null?void 0:o[1])??"",code:r}):g.jsx("code",{className:"rounded bg-sunken px-1 py-0.5 font-mono text-[12px] text-accent-1",children:i})},h1:({children:t})=>g.jsx("h1",{className:"mb-2 mt-3 text-[17px] font-bold text-ink first:mt-0",children:t}),h2:({children:t})=>g.jsx("h2",{className:"mb-2 mt-3 text-[15px] font-bold text-ink first:mt-0",children:t}),h3:({children:t})=>g.jsx("h3",{className:"mb-1.5 mt-2.5 text-[13.5px] font-bold text-ink first:mt-0",children:t}),p:({children:t})=>g.jsx("p",{className:"my-2 first:mt-0 last:mb-0",children:t}),ul:({children:t})=>g.jsx("ul",{className:"my-2 list-disc space-y-1 pl-5 marker:text-muted-3",children:t}),ol:({children:t})=>g.jsx("ol",{className:"my-2 list-decimal space-y-1 pl-5 marker:text-muted-3",children:t}),li:({children:t})=>g.jsx("li",{className:"leading-relaxed",children:t}),a:({href:t,children:i})=>g.jsx("a",{href:t,target:"_blank",rel:"noreferrer",className:"text-accent underline decoration-accent/40 underline-offset-2 hover:decoration-accent",children:i}),strong:({children:t})=>g.jsx("strong",{className:"font-semibold text-ink",children:t}),em:({children:t})=>g.jsx("em",{className:"italic",children:t}),blockquote:({children:t})=>g.jsx("blockquote",{className:"my-2 border-l-2 border-line-strong pl-3 text-muted",children:t}),hr:()=>g.jsx("hr",{className:"my-3 border-line-soft"}),table:({children:t})=>g.jsx("div",{className:"my-2 overflow-x-auto",children:g.jsx("table",{className:"w-full border-collapse text-[12.5px]",children:t})}),th:({children:t})=>g.jsx("th",{className:"border border-line-strong bg-card-deep px-2.5 py-1.5 text-left font-semibold text-ink-2",children:t}),td:({children:t})=>g.jsx("td",{className:"border border-line-soft px-2.5 py-1.5",children:t})};function I0({text:t}){return g.jsx(mk,{remarkPlugins:[_0],components:P0,children:t})}function z0(){const{projects:t,refreshProjects:i,currentProject:r,setProject:o}=Qe(),[a,c]=ne.useState(!1),[u,d]=ne.useState(!1),[m,h]=ne.useState(""),[y,x]=ne.useState(null),v=ne.useRef(null),w=r();ne.useEffect(()=>{a&&i()},[a,i]),ne.useEffect(()=>{if(!a)return;const j=T=>{v.current&&!v.current.contains(T.target)&&(c(!1),d(!1),x(null))};return document.addEventListener("mousedown",j),()=>document.removeEventListener("mousedown",j)},[a]);const E=async j=>{c(!1),await o(j)},L=async()=>{const j=m.trim();if(j)try{await qg(j),d(!1),h(""),await E(j)}catch(T){x(T instanceof Error?T.message:"création impossible")}};return g.jsxs("div",{ref:v,className:"relative",children:[g.jsxs("button",{onClick:()=>c(j=>!j),className:"flex h-8 items-center gap-1.5 border-2 border-line bg-base px-2.5 text-[12px] text-ink-2",title:"Projet de travail de cette session",children:["📁 ",g.jsx("span",{className:"max-w-[140px] truncate",children:w??"workspace"})]}),a&&g.jsxs("div",{className:"absolute bottom-[calc(100%+6px)] left-0 z-30 w-[240px] border-[3px] border-line bg-card shadow-hard",style:{borderRadius:7},children:[g.jsx("button",{onClick:()=>E(null),className:`block w-full px-3 py-2 text-left text-[13px] text-ink-2 hover:bg-base ${w===null?"bg-base font-bold":""}`,children:"workspace (racine)"}),t.map(j=>g.jsxs("button",{onClick:()=>E(j.name),className:`block w-full border-t-2 border-line-soft px-3 py-2 text-left text-[13px] text-ink-2 hover:bg-base ${w===j.name?"bg-base font-bold":""}`,children:["📁 ",j.name,g.jsxs("span",{className:"ml-1.5 text-[11px] text-muted-2",children:[j.files," fichier",j.files>1?"s":""]})]},j.name)),g.jsxs("div",{className:"border-t-2 border-line-soft p-2",children:[u?g.jsx("input",{autoFocus:!0,value:m,onChange:j=>h(j.target.value),onKeyDown:j=>{j.key==="Enter"&&L(),j.key==="Escape"&&(d(!1),x(null))},placeholder:"nom-du-projet",className:"w-full border-2 border-line bg-base px-2 py-1 text-[12px] text-ink outline-none"}):g.jsx("button",{onClick:()=>d(!0),className:"w-full text-left text-[13px] font-bold text-accent",children:"+ Nouveau projet"}),y&&g.jsx("div",{className:"mt-1 text-[11px] text-warn",children:y})]})]})]})}function L0({variant:t="top"}){const{models:i,selectedModel:r,setSelectedModel:o,loadedModels:a,warmingModel:c,warmError:u}=Qe(),[d,m]=ne.useState(!1),h=ne.useRef(null),y=v=>a.find(w=>w.name===v),x=y(r);return ne.useEffect(()=>{const v=w=>{h.current&&!h.current.contains(w.target)&&m(!1)};return document.addEventListener("mousedown",v),()=>document.removeEventListener("mousedown",v)},[]),g.jsxs("div",{className:"relative",ref:h,children:[g.jsxs("button",{onClick:()=>m(v=>!v),className:t==="composer"?"flex h-8 min-w-0 max-w-[220px] items-center gap-1.5 border-2 border-line bg-accent px-2.5 text-[13px] text-white":"flex h-[34px] min-w-0 max-w-[260px] items-center gap-2 border-[3px] border-white bg-accent px-3 text-white shadow-accent-soft",title:r||void 0,style:{borderRadius:7},children:[g.jsx("span",{className:`h-2.5 w-2.5 border-2 border-line ${c===r?"bg-accent animate-pulse":x?x.on_gpu?"bg-ok":"bg-warn":"bg-white"}`,title:u||(c===r?"préchargement en cours…":x? Line truncated
`).map((i,r)=>{let o="text-on-dark-2";return i.startsWith("+")&&!i.startsWith("+++")?o="text-ok":i.startsWith("-")&&!i.startsWith("---")?o="text-accent":i.startsWith("@@")?o="text-info":/^(commit|Author|Date|diff|index)/.test(i)&&(o="text-on-dark-3"),g.jsx("div",{className:o,children:i||" "},r)})})}function B0({children:t}){return g.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 p-8 text-center",children:[g.jsx("div",{className:"font-pixel text-[10px] text-[#a98b63]",children:"AUCUN APERÇU"}),g.jsx("div",{className:"max-w-[240px] text-[13px] text-[#8a7a66]",children:t})]})}function Zl({children:t,active:i,onClick:r}){return g.jsx("button",{onClick:r,className:`flex h-[30px] items-center border-[3px] border-line px-[13px] text-[13px] ${i?"bg-card-deep text-white":"bg-card text-muted"}`,children:t})}const U0={read_file:"Lire un fichier du projet",write_file:"Créer / modifier un fichier",edit_file:"Modification chirurgicale (recherche/remplacement)",list_dir:"Lister un répertoire",grep_search:"Chercher dans les fichiers",code_task:"Moteur code (multi-fichiers, git)",web_search:"Recherche web",run_shell:"Exécuter une commande"},V0=new Set(["run_shell"]);function H0(){const{models:t,selectedModel:i,setSelectedModel:r,refreshModels:o,loadedModels:a,warmingModel:c,warmError:u,status:d,config:m,availableTools:h,refreshConfig:y,updateConfig:x}=Qe(),[v,w]=ne.useState(m),[E,L]=ne.useState(!1);ne.useEffect(()=>{y()},[y,i]),ne.useEffect(()=>{m&&w(m)},[m]);const[j,T]=ne.useState(""),[O,A]=ne.useState(null),[J,le]=ne.useState(0),[D,ue]=ne.useState(null),[ce,ge]=ne.useState(null),R=async $=>{if(window.confirm(`Supprimer définitivement le modèle ${$} ?`)){ue($),ge(null);try{await Lg($),await o()}catch(se){ge(se instanceof Error?se.message:"suppression impossible")}finally{ue(null)}}},Y=async()=>{if(j.trim()){A("démarrage…"),le(0);try{await Jg(j.trim(),($,se)=>{A($),se&&le(se)}),A("terminé"),await o()}catch{A("échec")}}},Z=v&&m&&JSON.stringify(v)!==JSON.stringify(m),ve=async()=>{v&&(await x(v),L(!0),setTimeout(()=>L(!1),2e3))},X=($,se)=>w(U=>U&&{...U,[$]:se}),G=v?Object.values(v.tools).filter(Boolean).length:0;return g.jsx("div",{className:"scr flex-1 overflow-auto bg-base px-[30px] py-[26px]",children:g.jsxs("div",{className:"mx-auto max-w-[1000px]",children:[g.jsxs("div",{className:"mb-[22px] flex items-end justify-between",children:[g.jsxs("div",{children:[g.jsx("div",{className:"font-pixel text-[13px] text-ink",children:"MODÈLE & GÉNÉRATION"}),g.jsx("div",{className:"mt-2 text-[14px] text-muted-2",children:"Choisis le modèle local et règle son comportement. Les changements sont sauvegardés pour le modèle sélectionné."})]}),g.jsxs("div",{className:"flex items-center gap-3",children:[g.jsxs("div",{className:"flex items-center gap-1.5 text-[13px] text-ok",children:[g.jsx("span",{className:"h-2 w-2 border-2 border-line bg-ok"}),d!=null&&d.connected?"Ollama connecté":"Ollama déconnecté"]}),g.jsx("button",{onClick:ve,disabled:!Z,className:"flex h-[34px] items-center gap-1.5 border-[3px] border-line bg-accent px-4 text-[14px] text-white shadow-accent-soft disabled:opacity-40",style:{borderRadius:7},children:E?"✓ ENREGISTRÉ":Z?"ENREGISTRER":"À JOUR"})]})]}),v?g.jsxs(g.Fragment,{children:[g.jsxs("div",{className:"grid grid-cols-2 items-start gap-[18px]",children:[g.jsxs(Mn,{children:[g.jsxs("div",{className:"mb-3.5 flex items-center justify-between",children:[g.jsx("div",{className:"font-pixel text-[11px] text-ink",children:"MODÈLE OLLAMA"}),g.jsxs("button",{onClick:o,className:"flex h-7 items-center gap-1.5 border-2 border-line bg-card-soft px-2.5 text-[13px] text-muted-2",children:[g.jsx(Gd,{size:12}),"Actualiser"]})]}),g.jsxs("div",{className:"flex flex-col gap-2",children:[t.length===0&&g.jsx("div",{className:"border-2 border-line bg-base p-4 text-center text-[13px] text-muted-2",children:"Aucun modèle installé. Télécharge-en un ci-dessous."}),t.map($=>{const se=$.name===i,U=a.find(S=>S.name===$.name),re=c===$.name;return g.jsxs("div",{className:`flex items-center gap-3 border-[3px] border-line p-3 text-left ${se?"bg-card-deep":"bg-card-soft"}`,children:[g.jsxs("button",{onClick:()=>r($.name),className:"flex min-w-0 flex-1 items-center gap-3 text-left",children:[g.jsx("span",{className:`flex h-[18px] w-[18px] flex-none items-center justify-center border-[3px] ${se?"border-accent":"border-muted-3"}`,children:se&&g.jsx("span",{className:"h-2 w-2 bg-accent"})}),g.jsxs("div",{className:"min-w-0 flex-1",children:[g.jsxs("div",{className:"flex items-center gap-2",children:[g.jsx("span",{className:`truncate text-[14px] ${se?"text-white":"text-ink"}`,children:$.name}),$.name===(d==null?void 0:d.default_model)&&g.jsx("span",{className:"font-pixel flex-none border-2 border-white bg-accent px-1.5 py-0.5 text-[7px] text-white",children:"DÉFAUT"})]}),g.jsx("div",{className:`mt-1 text-[13px] ${se?"text-on-dark-2":"text-muted-2"}`,children:[$.size_go?`${$.size_go} Go`:null,$.q Line truncated
+6
View File
@@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
<rect width="64" height="64" rx="10" fill="#18181b"/>
<rect x="14" y="14" width="38" height="38" rx="7" fill="#ff5436"/>
<rect x="11" y="11" width="38" height="38" rx="7" fill="#ff5436" stroke="#ffffff" stroke-width="6"/>
<rect x="25" y="25" width="12" height="12" fill="#ffffff"/>
</svg>

After

Width:  |  Height:  |  Size: 358 B

+20
View File
@@ -0,0 +1,20 @@
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Press+Start+2P&display=swap"
rel="stylesheet"
/>
<title>Loki - Agent local</title>
<script type="module" crossorigin src="/assets/index-iZMuMtkP.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-X_ZN-NTH.css">
</head>
<body>
<div id="root"></div>␍
</body>
</html>
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../autoprefixer/bin/autoprefixer" "$@"
else
exec node "$basedir/../autoprefixer/bin/autoprefixer" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\autoprefixer\bin\autoprefixer" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../autoprefixer/bin/autoprefixer" $args
} else {
& "$basedir/node$exe" "$basedir/../autoprefixer/bin/autoprefixer" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../autoprefixer/bin/autoprefixer" $args
} else {
& "node$exe" "$basedir/../autoprefixer/bin/autoprefixer" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../baseline-browser-mapping/dist/cli.cjs" "$@"
else
exec node "$basedir/../baseline-browser-mapping/dist/cli.cjs" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\baseline-browser-mapping\dist\cli.cjs" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../baseline-browser-mapping/dist/cli.cjs" $args
} else {
& "$basedir/node$exe" "$basedir/../baseline-browser-mapping/dist/cli.cjs" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../baseline-browser-mapping/dist/cli.cjs" $args
} else {
& "node$exe" "$basedir/../baseline-browser-mapping/dist/cli.cjs" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../browserslist/cli.js" "$@"
else
exec node "$basedir/../browserslist/cli.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\browserslist\cli.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../browserslist/cli.js" $args
} else {
& "$basedir/node$exe" "$basedir/../browserslist/cli.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../browserslist/cli.js" $args
} else {
& "node$exe" "$basedir/../browserslist/cli.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../cssesc/bin/cssesc" "$@"
else
exec node "$basedir/../cssesc/bin/cssesc" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\cssesc\bin\cssesc" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../cssesc/bin/cssesc" $args
} else {
& "$basedir/node$exe" "$basedir/../cssesc/bin/cssesc" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../cssesc/bin/cssesc" $args
} else {
& "node$exe" "$basedir/../cssesc/bin/cssesc" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../esbuild/bin/esbuild" "$@"
else
exec node "$basedir/../esbuild/bin/esbuild" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\esbuild\bin\esbuild" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../esbuild/bin/esbuild" $args
} else {
& "$basedir/node$exe" "$basedir/../esbuild/bin/esbuild" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../esbuild/bin/esbuild" $args
} else {
& "node$exe" "$basedir/../esbuild/bin/esbuild" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../jiti/bin/jiti.js" "$@"
else
exec node "$basedir/../jiti/bin/jiti.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\jiti\bin\jiti.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../jiti/bin/jiti.js" $args
} else {
& "$basedir/node$exe" "$basedir/../jiti/bin/jiti.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../jiti/bin/jiti.js" $args
} else {
& "node$exe" "$basedir/../jiti/bin/jiti.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../jsesc/bin/jsesc" "$@"
else
exec node "$basedir/../jsesc/bin/jsesc" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\jsesc\bin\jsesc" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../jsesc/bin/jsesc" $args
} else {
& "$basedir/node$exe" "$basedir/../jsesc/bin/jsesc" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../jsesc/bin/jsesc" $args
} else {
& "node$exe" "$basedir/../jsesc/bin/jsesc" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../json5/lib/cli.js" "$@"
else
exec node "$basedir/../json5/lib/cli.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\json5\lib\cli.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../json5/lib/cli.js" $args
} else {
& "$basedir/node$exe" "$basedir/../json5/lib/cli.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../json5/lib/cli.js" $args
} else {
& "node$exe" "$basedir/../json5/lib/cli.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../loose-envify/cli.js" "$@"
else
exec node "$basedir/../loose-envify/cli.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\loose-envify\cli.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../loose-envify/cli.js" $args
} else {
& "$basedir/node$exe" "$basedir/../loose-envify/cli.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../loose-envify/cli.js" $args
} else {
& "node$exe" "$basedir/../loose-envify/cli.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../nanoid/bin/nanoid.cjs" "$@"
else
exec node "$basedir/../nanoid/bin/nanoid.cjs" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\nanoid\bin\nanoid.cjs" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args
} else {
& "$basedir/node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args
} else {
& "node$exe" "$basedir/../nanoid/bin/nanoid.cjs" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../@babel/parser/bin/babel-parser.js" "$@"
else
exec node "$basedir/../@babel/parser/bin/babel-parser.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\@babel\parser\bin\babel-parser.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args
} else {
& "$basedir/node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args
} else {
& "node$exe" "$basedir/../@babel/parser/bin/babel-parser.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../resolve/bin/resolve" "$@"
else
exec node "$basedir/../resolve/bin/resolve" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\resolve\bin\resolve" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../resolve/bin/resolve" $args
} else {
& "$basedir/node$exe" "$basedir/../resolve/bin/resolve" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../resolve/bin/resolve" $args
} else {
& "node$exe" "$basedir/../resolve/bin/resolve" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../rollup/dist/bin/rollup" "$@"
else
exec node "$basedir/../rollup/dist/bin/rollup" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\rollup\dist\bin\rollup" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../rollup/dist/bin/rollup" $args
} else {
& "$basedir/node$exe" "$basedir/../rollup/dist/bin/rollup" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../rollup/dist/bin/rollup" $args
} else {
& "node$exe" "$basedir/../rollup/dist/bin/rollup" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../semver/bin/semver.js" "$@"
else
exec node "$basedir/../semver/bin/semver.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\semver\bin\semver.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../semver/bin/semver.js" $args
} else {
& "$basedir/node$exe" "$basedir/../semver/bin/semver.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../semver/bin/semver.js" $args
} else {
& "node$exe" "$basedir/../semver/bin/semver.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../sucrase/bin/sucrase" "$@"
else
exec node "$basedir/../sucrase/bin/sucrase" "$@"
fi
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../sucrase/bin/sucrase-node" "$@"
else
exec node "$basedir/../sucrase/bin/sucrase-node" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\sucrase\bin\sucrase-node" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../sucrase/bin/sucrase-node" $args
} else {
& "$basedir/node$exe" "$basedir/../sucrase/bin/sucrase-node" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../sucrase/bin/sucrase-node" $args
} else {
& "node$exe" "$basedir/../sucrase/bin/sucrase-node" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\sucrase\bin\sucrase" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../sucrase/bin/sucrase" $args
} else {
& "$basedir/node$exe" "$basedir/../sucrase/bin/sucrase" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../sucrase/bin/sucrase" $args
} else {
& "node$exe" "$basedir/../sucrase/bin/sucrase" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../tailwindcss/lib/cli.js" "$@"
else
exec node "$basedir/../tailwindcss/lib/cli.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\tailwindcss\lib\cli.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
} else {
& "$basedir/node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
} else {
& "node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../tailwindcss/lib/cli.js" "$@"
else
exec node "$basedir/../tailwindcss/lib/cli.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\tailwindcss\lib\cli.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
} else {
& "$basedir/node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
} else {
& "node$exe" "$basedir/../tailwindcss/lib/cli.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../typescript/bin/tsc" "$@"
else
exec node "$basedir/../typescript/bin/tsc" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\typescript\bin\tsc" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../typescript/bin/tsc" $args
} else {
& "$basedir/node$exe" "$basedir/../typescript/bin/tsc" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../typescript/bin/tsc" $args
} else {
& "node$exe" "$basedir/../typescript/bin/tsc" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../typescript/bin/tsserver" "$@"
else
exec node "$basedir/../typescript/bin/tsserver" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\typescript\bin\tsserver" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../typescript/bin/tsserver" $args
} else {
& "$basedir/node$exe" "$basedir/../typescript/bin/tsserver" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../typescript/bin/tsserver" $args
} else {
& "node$exe" "$basedir/../typescript/bin/tsserver" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../update-browserslist-db/cli.js" "$@"
else
exec node "$basedir/../update-browserslist-db/cli.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\update-browserslist-db\cli.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../update-browserslist-db/cli.js" $args
} else {
& "$basedir/node$exe" "$basedir/../update-browserslist-db/cli.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../update-browserslist-db/cli.js" $args
} else {
& "node$exe" "$basedir/../update-browserslist-db/cli.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+16
View File
@@ -0,0 +1,16 @@
#!/bin/sh
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
case `uname` in
*CYGWIN*|*MINGW*|*MSYS*)
if command -v cygpath > /dev/null 2>&1; then
basedir=`cygpath -w "$basedir"`
fi
;;
esac
if [ -x "$basedir/node" ]; then
exec "$basedir/node" "$basedir/../vite/bin/vite.js" "$@"
else
exec node "$basedir/../vite/bin/vite.js" "$@"
fi
+17
View File
@@ -0,0 +1,17 @@
@ECHO off
GOTO start
:find_dp0
SET dp0=%~dp0
EXIT /b
:start
SETLOCAL
CALL :find_dp0
IF EXIST "%dp0%\node.exe" (
SET "_prog=%dp0%\node.exe"
) ELSE (
SET "_prog=node"
SET PATHEXT=%PATHEXT:;.JS;=;%
)
endLocal & goto #_undefined_# 2>NUL || title %COMSPEC% & "%_prog%" "%dp0%\..\vite\bin\vite.js" %*
+28
View File
@@ -0,0 +1,28 @@
#!/usr/bin/env pwsh
$basedir=Split-Path $MyInvocation.MyCommand.Definition -Parent
$exe=""
if ($PSVersionTable.PSVersion -lt "6.0" -or $IsWindows) {
# Fix case when both the Windows and Linux builds of Node
# are installed in the same directory
$exe=".exe"
}
$ret=0
if (Test-Path "$basedir/node$exe") {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "$basedir/node$exe" "$basedir/../vite/bin/vite.js" $args
} else {
& "$basedir/node$exe" "$basedir/../vite/bin/vite.js" $args
}
$ret=$LASTEXITCODE
} else {
# Support pipeline input
if ($MyInvocation.ExpectingInput) {
$input | & "node$exe" "$basedir/../vite/bin/vite.js" $args
} else {
& "node$exe" "$basedir/../vite/bin/vite.js" $args
}
$ret=$LASTEXITCODE
}
exit $ret
+3490
View File
File diff suppressed because it is too large. Load diff
+128
View File
@@ -0,0 +1,128 @@
declare namespace QuickLRU {
interface Options<KeyType, ValueType> {
/**
The maximum number of milliseconds an item should remain in the cache.
@default Infinity
By default, `maxAge` will be `Infinity`, which means that items will never expire.
Lazy expiration upon the next write or read call.
Individual expiration of an item can be specified by the `set(key, value, maxAge)` method.
*/
readonly maxAge?: number;
/**
The maximum number of items before evicting the least recently used items.
*/
readonly maxSize: number;
/**
Called right before an item is evicted from the cache.
Useful for side effects or for items like object URLs that need explicit cleanup (`revokeObjectURL`).
*/
onEviction?: (key: KeyType, value: ValueType) => void;
}
}
declare class QuickLRU<KeyType, ValueType>
implements Iterable<[KeyType, ValueType]> {
/**
The stored item count.
*/
readonly size: number;
/**
Simple ["Least Recently Used" (LRU) cache](https://en.m.wikipedia.org/wiki/Cache_replacement_policies#Least_Recently_Used_.28LRU.29).
The instance is [`iterable`](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Iteration_protocols) so you can use it directly in a [`for…of`](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/for...of) loop.
@example
```
import QuickLRU = require('quick-lru');
const lru = new QuickLRU({maxSize: 1000});
lru.set('🦄', '🌈');
lru.has('🦄');
//=> true
lru.get('🦄');
//=> '🌈'
```
*/
constructor(options: QuickLRU.Options<KeyType, ValueType>);
[Symbol.iterator](): IterableIterator<[KeyType, ValueType]>;
/**
Set an item. Returns the instance.
Individual expiration of an item can be specified with the `maxAge` option. If not specified, the global `maxAge` value will be used in case it is specified in the constructor, otherwise the item will never expire.
@returns The list instance.
*/
set(key: KeyType, value: ValueType, options?: {maxAge?: number}): this;
/**
Get an item.
@returns The stored item or `undefined`.
*/
get(key: KeyType): ValueType | undefined;
/**
Check if an item exists.
*/
has(key: KeyType): boolean;
/**
Get an item without marking it as recently used.
@returns The stored item or `undefined`.
*/
peek(key: KeyType): ValueType | undefined;
/**
Delete an item.
@returns `true` if the item is removed or `false` if the item doesn't exist.
*/
delete(key: KeyType): boolean;
/**
Delete all items.
*/
clear(): void;
/**
Update the `maxSize` in-place, discarding items as necessary. Insertion order is mostly preserved, though this is not a strong guarantee.
Useful for on-the-fly tuning of cache sizes in live systems.
*/
resize(maxSize: number): void;
/**
Iterable for all the keys.
*/
keys(): IterableIterator<KeyType>;
/**
Iterable for all the values.
*/
values(): IterableIterator<ValueType>;
/**
Iterable for all entries, starting with the oldest (ascending in recency).
*/
entriesAscending(): IterableIterator<[KeyType, ValueType]>;
/**
Iterable for all entries, starting with the newest (descending in recency).
*/
entriesDescending(): IterableIterator<[KeyType, ValueType]>;
}
export = QuickLRU;
+263
View File
@@ -0,0 +1,263 @@
'use strict';
class QuickLRU {
constructor(options = {}) {
if (!(options.maxSize && options.maxSize > 0)) {
throw new TypeError('`maxSize` must be a number greater than 0');
}
if (typeof options.maxAge === 'number' && options.maxAge === 0) {
throw new TypeError('`maxAge` must be a number greater than 0');
}
this.maxSize = options.maxSize;
this.maxAge = options.maxAge || Infinity;
this.onEviction = options.onEviction;
this.cache = new Map();
this.oldCache = new Map();
this._size = 0;
}
_emitEvictions(cache) {
if (typeof this.onEviction !== 'function') {
return;
}
for (const [key, item] of cache) {
this.onEviction(key, item.value);
}
}
_deleteIfExpired(key, item) {
if (typeof item.expiry === 'number' && item.expiry <= Date.now()) {
if (typeof this.onEviction === 'function') {
this.onEviction(key, item.value);
}
return this.delete(key);
}
return false;
}
_getOrDeleteIfExpired(key, item) {
const deleted = this._deleteIfExpired(key, item);
if (deleted === false) {
return item.value;
}
}
_getItemValue(key, item) {
return item.expiry ? this._getOrDeleteIfExpired(key, item) : item.value;
}
_peek(key, cache) {
const item = cache.get(key);
return this._getItemValue(key, item);
}
_set(key, value) {
this.cache.set(key, value);
this._size++;
if (this._size >= this.maxSize) {
this._size = 0;
this._emitEvictions(this.oldCache);
this.oldCache = this.cache;
this.cache = new Map();
}
}
_moveToRecent(key, item) {
this.oldCache.delete(key);
this._set(key, item);
}
* _entriesAscending() {
for (const item of this.oldCache) {
const [key, value] = item;
if (!this.cache.has(key)) {
const deleted = this._deleteIfExpired(key, value);
if (deleted === false) {
yield item;
}
}
}
for (const item of this.cache) {
const [key, value] = item;
const deleted = this._deleteIfExpired(key, value);
if (deleted === false) {
yield item;
}
}
}
get(key) {
if (this.cache.has(key)) {
const item = this.cache.get(key);
return this._getItemValue(key, item);
}
if (this.oldCache.has(key)) {
const item = this.oldCache.get(key);
if (this._deleteIfExpired(key, item) === false) {
this._moveToRecent(key, item);
return item.value;
}
}
}
set(key, value, {maxAge = this.maxAge === Infinity ? undefined : Date.now() + this.maxAge} = {}) {
if (this.cache.has(key)) {
this.cache.set(key, {
value,
maxAge
});
} else {
this._set(key, {value, expiry: maxAge});
}
}
has(key) {
if (this.cache.has(key)) {
return !this._deleteIfExpired(key, this.cache.get(key));
}
if (this.oldCache.has(key)) {
return !this._deleteIfExpired(key, this.oldCache.get(key));
}
return false;
}
peek(key) {
if (this.cache.has(key)) {
return this._peek(key, this.cache);
}
if (this.oldCache.has(key)) {
return this._peek(key, this.oldCache);
}
}
delete(key) {
const deleted = this.cache.delete(key);
if (deleted) {
this._size--;
}
return this.oldCache.delete(key) || deleted;
}
clear() {
this.cache.clear();
this.oldCache.clear();
this._size = 0;
}
resize(newSize) {
if (!(newSize && newSize > 0)) {
throw new TypeError('`maxSize` must be a number greater than 0');
}
const items = [...this._entriesAscending()];
const removeCount = items.length - newSize;
if (removeCount < 0) {
this.cache = new Map(items);
this.oldCache = new Map();
this._size = items.length;
} else {
if (removeCount > 0) {
this._emitEvictions(items.slice(0, removeCount));
}
this.oldCache = new Map(items.slice(removeCount));
this.cache = new Map();
this._size = 0;
}
this.maxSize = newSize;
}
* keys() {
for (const [key] of this) {
yield key;
}
}
* values() {
for (const [, value] of this) {
yield value;
}
}
* [Symbol.iterator]() {
for (const item of this.cache) {
const [key, value] = item;
const deleted = this._deleteIfExpired(key, value);
if (deleted === false) {
yield [key, value.value];
}
}
for (const item of this.oldCache) {
const [key, value] = item;
if (!this.cache.has(key)) {
const deleted = this._deleteIfExpired(key, value);
if (deleted === false) {
yield [key, value.value];
}
}
}
}
* entriesDescending() {
let items = [...this.cache];
for (let i = items.length - 1; i >= 0; --i) {
const item = items[i];
const [key, value] = item;
const deleted = this._deleteIfExpired(key, value);
if (deleted === false) {
yield [key, value.value];
}
}
items = [...this.oldCache];
for (let i = items.length - 1; i >= 0; --i) {
const item = items[i];
const [key, value] = item;
if (!this.cache.has(key)) {
const deleted = this._deleteIfExpired(key, value);
if (deleted === false) {
yield [key, value.value];
}
}
}
}
* entriesAscending() {
for (const [key, value] of this._entriesAscending()) {
yield [key, value.value];
}
}
get size() {
if (!this._size) {
return this.oldCache.size;
}
let oldCacheSize = 0;
for (const key of this.oldCache.keys()) {
if (!this.cache.has(key)) {
oldCacheSize++;
}
}
return Math.min(this._size + oldCacheSize, this.maxSize);
}
}
module.exports = QuickLRU;
+9
View File
@@ -0,0 +1,9 @@
MIT License
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+43
View File
@@ -0,0 +1,43 @@
{
"name": "@alloc/quick-lru",
"version": "5.2.0",
"description": "Simple “Least Recently Used” (LRU) cache",
"license": "MIT",
"repository": "sindresorhus/quick-lru",
"funding": "https://github.com/sponsors/sindresorhus",
"author": {
"name": "Sindre Sorhus",
"email": "sindresorhus@gmail.com",
"url": "https://sindresorhus.com"
},
"engines": {
"node": ">=10"
},
"scripts": {
"test": "xo && nyc ava && tsd"
},
"files": [
"index.js",
"index.d.ts"
],
"keywords": [
"lru",
"quick",
"cache",
"caching",
"least",
"recently",
"used",
"fast",
"map",
"hash",
"buffer"
],
"devDependencies": {
"ava": "^2.0.0",
"coveralls": "^3.0.3",
"nyc": "^15.0.0",
"tsd": "^0.11.0",
"xo": "^0.26.0"
}
}
+139
View File
@@ -0,0 +1,139 @@
# quick-lru [![Build Status](https://travis-ci.org/sindresorhus/quick-lru.svg?branch=master)](https://travis-ci.org/sindresorhus/quick-lru) [![Coverage Status](https://coveralls.io/repos/github/sindresorhus/quick-lru/badge.svg?branch=master)](https://coveralls.io/github/sindresorhus/quick-lru?branch=master)
> Simple [“Least Recently Used” (LRU) cache](https://en.m.wikipedia.org/wiki/Cache_replacement_policies#Least_Recently_Used_.28LRU.29)
Useful when you need to cache something and limit memory usage.
Inspired by the [`hashlru` algorithm](https://github.com/dominictarr/hashlru#algorithm), but instead uses [`Map`](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Map) to support keys of any type, not just strings, and values can be `undefined`.
## Install
```
$ npm install quick-lru
```
## Usage
```js
const QuickLRU = require('quick-lru');
const lru = new QuickLRU({maxSize: 1000});
lru.set('🦄', '🌈');
lru.has('🦄');
//=> true
lru.get('🦄');
//=> '🌈'
```
## API
### new QuickLRU(options?)
Returns a new instance.
### options
Type: `object`
#### maxSize
*Required*\
Type: `number`
The maximum number of items before evicting the least recently used items.
#### maxAge
Type: `number`\
Default: `Infinity`
The maximum number of milliseconds an item should remain in cache.
By default maxAge will be Infinity, which means that items will never expire.
Lazy expiration happens upon the next `write` or `read` call.
Individual expiration of an item can be specified by the `set(key, value, options)` method.
#### onEviction
*Optional*\
Type: `(key, value) => void`
Called right before an item is evicted from the cache.
Useful for side effects or for items like object URLs that need explicit cleanup (`revokeObjectURL`).
### Instance
The instance is [`iterable`](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Iteration_protocols) so you can use it directly in a [`for…of`](https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Statements/for...of) loop.
Both `key` and `value` can be of any type.
#### .set(key, value, options?)
Set an item. Returns the instance.
Individual expiration of an item can be specified with the `maxAge` option. If not specified, the global `maxAge` value will be used in case it is specified on the constructor, otherwise the item will never expire.
#### .get(key)
Get an item.
#### .has(key)
Check if an item exists.
#### .peek(key)
Get an item without marking it as recently used.
#### .delete(key)
Delete an item.
Returns `true` if the item is removed or `false` if the item doesn't exist.
#### .clear()
Delete all items.
#### .resize(maxSize)
Update the `maxSize`, discarding items as necessary. Insertion order is mostly preserved, though this is not a strong guarantee.
Useful for on-the-fly tuning of cache sizes in live systems.
#### .keys()
Iterable for all the keys.
#### .values()
Iterable for all the values.
#### .entriesAscending()
Iterable for all entries, starting with the oldest (ascending in recency).
#### .entriesDescending()
Iterable for all entries, starting with the newest (descending in recency).
#### .size
The stored item count.
---
<div align="center">
<b>
<a href="https://tidelift.com/subscription/pkg/npm-quick-lru?utm_source=npm-quick-lru&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
</b>
<br>
<sub>
Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
</sub>
</div>
+22
View File
@@ -0,0 +1,22 @@
MIT License
Copyright (c) 2014-present Sebastian McKenzie and other contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+19
View File
@@ -0,0 +1,19 @@
# @babel/code-frame
> Generate errors that contain a code frame that point to source locations.
See our website [@babel/code-frame](https://babeljs.io/docs/babel-code-frame) for more information.
## Install
Using npm:
```sh
npm install --save-dev @babel/code-frame
```
or using yarn:
```sh
yarn add @babel/code-frame --dev
```
+217
View File
@@ -0,0 +1,217 @@
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var picocolors = require('picocolors');
var jsTokens = require('js-tokens');
var helperValidatorIdentifier = require('@babel/helper-validator-identifier');
function isColorSupported() {
return (typeof process === "object" && (process.env.FORCE_COLOR === "0" || process.env.FORCE_COLOR === "false") ? false : picocolors.isColorSupported
);
}
const compose = (f, g) => v => f(g(v));
function buildDefs(colors) {
return {
keyword: colors.cyan,
capitalized: colors.yellow,
jsxIdentifier: colors.yellow,
punctuator: colors.yellow,
number: colors.magenta,
string: colors.green,
regex: colors.magenta,
comment: colors.gray,
invalid: compose(compose(colors.white, colors.bgRed), colors.bold),
gutter: colors.gray,
marker: compose(colors.red, colors.bold),
message: compose(colors.red, colors.bold),
reset: colors.reset
};
}
const defsOn = buildDefs(picocolors.createColors(true));
const defsOff = buildDefs(picocolors.createColors(false));
function getDefs(enabled) {
return enabled ? defsOn : defsOff;
}
const sometimesKeywords = new Set(["as", "async", "from", "get", "of", "set"]);
const NEWLINE$1 = /\r\n|[\n\r\u2028\u2029]/;
const BRACKET = /^[()[\]{}]$/;
let tokenize;
const JSX_TAG = /^[a-z][\w-]*$/i;
const getTokenType = function (token, offset, text) {
if (token.type === "name") {
const tokenValue = token.value;
if (helperValidatorIdentifier.isKeyword(tokenValue) || helperValidatorIdentifier.isStrictReservedWord(tokenValue, true) || sometimesKeywords.has(tokenValue)) {
return "keyword";
}
if (JSX_TAG.test(tokenValue) && (text[offset - 1] === "<" || text.slice(offset - 2, offset) === "</")) {
return "jsxIdentifier";
}
const firstChar = String.fromCodePoint(tokenValue.codePointAt(0));
if (firstChar !== firstChar.toLowerCase()) {
return "capitalized";
}
}
if (token.type === "punctuator" && BRACKET.test(token.value)) {
return "bracket";
}
if (token.type === "invalid" && (token.value === "@" || token.value === "#")) {
return "punctuator";
}
return token.type;
};
tokenize = function* (text) {
let match;
while (match = jsTokens.default.exec(text)) {
const token = jsTokens.matchToToken(match);
yield {
type: getTokenType(token, match.index, text),
value: token.value
};
}
};
function highlight(text) {
if (text === "") return "";
const defs = getDefs(true);
let highlighted = "";
for (const {
type,
value
} of tokenize(text)) {
if (type in defs) {
highlighted += value.split(NEWLINE$1).map(str => defs[type](str)).join("\n");
} else {
highlighted += value;
}
}
return highlighted;
}
let deprecationWarningShown = false;
const NEWLINE = /\r\n|[\n\r\u2028\u2029]/;
function getMarkerLines(loc, source, opts, startLineBaseZero) {
const startLoc = Object.assign({
column: 0,
line: -1
}, loc.start);
const endLoc = Object.assign({}, startLoc, loc.end);
const {
linesAbove = 2,
linesBelow = 3
} = opts || {};
const startLine = startLoc.line - startLineBaseZero;
const startColumn = startLoc.column;
const endLine = endLoc.line - startLineBaseZero;
const endColumn = endLoc.column;
let start = Math.max(startLine - (linesAbove + 1), 0);
let end = Math.min(source.length, endLine + linesBelow);
if (startLine === -1) {
start = 0;
}
if (endLine === -1) {
end = source.length;
}
const lineDiff = endLine - startLine;
const markerLines = {};
if (lineDiff) {
for (let i = 0; i <= lineDiff; i++) {
const lineNumber = i + startLine;
if (!startColumn) {
markerLines[lineNumber] = true;
} else if (i === 0) {
const sourceLength = source[lineNumber - 1].length;
markerLines[lineNumber] = [startColumn, sourceLength - startColumn + 1];
} else if (i === lineDiff) {
markerLines[lineNumber] = [0, endColumn];
} else {
const sourceLength = source[lineNumber - i].length;
markerLines[lineNumber] = [0, sourceLength];
}
}
} else {
if (startColumn === endColumn) {
if (startColumn) {
markerLines[startLine] = [startColumn, 0];
} else {
markerLines[startLine] = true;
}
} else {
markerLines[startLine] = [startColumn, endColumn - startColumn];
}
}
return {
start,
end,
markerLines
};
}
function codeFrameColumns(rawLines, loc, opts = {}) {
const shouldHighlight = opts.forceColor || isColorSupported() && opts.highlightCode;
const startLineBaseZero = (opts.startLine || 1) - 1;
const defs = getDefs(shouldHighlight);
const lines = rawLines.split(NEWLINE);
const {
start,
end,
markerLines
} = getMarkerLines(loc, lines, opts, startLineBaseZero);
const hasColumns = loc.start && typeof loc.start.column === "number";
const numberMaxWidth = String(end + startLineBaseZero).length;
const highlightedLines = shouldHighlight ? highlight(rawLines) : rawLines;
let frame = highlightedLines.split(NEWLINE, end).slice(start, end).map((line, index) => {
const number = start + 1 + index;
const paddedNumber = ` ${number + startLineBaseZero}`.slice(-numberMaxWidth);
const gutter = ` ${paddedNumber} |`;
const hasMarker = markerLines[number];
const lastMarkerLine = !markerLines[number + 1];
if (hasMarker) {
let markerLine = "";
if (Array.isArray(hasMarker)) {
const markerSpacing = line.slice(0, Math.max(hasMarker[0] - 1, 0)).replace(/[^\t]/g, " ");
const numberOfMarkers = hasMarker[1] || 1;
markerLine = ["\n ", defs.gutter(gutter.replace(/\d/g, " ")), " ", markerSpacing, defs.marker("^").repeat(numberOfMarkers)].join("");
if (lastMarkerLine && opts.message) {
markerLine += " " + defs.message(opts.message);
}
}
return [defs.marker(">"), defs.gutter(gutter), line.length > 0 ? ` ${line}` : "", markerLine].join("");
} else {
return ` ${defs.gutter(gutter)}${line.length > 0 ? ` ${line}` : ""}`;
}
}).join("\n");
if (opts.message && !hasColumns) {
frame = `${" ".repeat(numberMaxWidth + 1)}${opts.message}\n${frame}`;
}
if (shouldHighlight) {
return defs.reset(frame);
} else {
return frame;
}
}
function index (rawLines, lineNumber, colNumber, opts = {}) {
if (!deprecationWarningShown) {
deprecationWarningShown = true;
const message = "Passing lineNumber and colNumber is deprecated to @babel/code-frame. Please use `codeFrameColumns`.";
if (process.emitWarning) {
process.emitWarning(message, "DeprecationWarning");
} else {
const deprecationError = new Error(message);
deprecationError.name = "DeprecationWarning";
console.warn(new Error(message));
}
}
colNumber = Math.max(colNumber, 0);
const location = {
start: {
column: colNumber,
line: lineNumber
}
};
return codeFrameColumns(rawLines, location, opts);
}
exports.codeFrameColumns = codeFrameColumns;
exports.default = index;
exports.highlight = highlight;
//# sourceMappingURL=index.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"index.js","sources":["../src/defs.ts","../src/highlight.ts","../src/index.ts"],"sourcesContent":["import picocolors, { createColors } from \"picocolors\";\nimport type { Colors, Formatter } from \"picocolors/types\";\n\nexport function isColorSupported() {\n return (\n // See https://github.com/alexeyraspopov/picocolors/issues/62\n typeof process === \"object\" &&\n (process.env.FORCE_COLOR === \"0\" || process.env.FORCE_COLOR === \"false\")\n ? false\n : picocolors.isColorSupported\n );\n}\n\nexport type InternalTokenType =\n | \"keyword\"\n | \"capitalized\"\n | \"jsxIdentifier\"\n | \"punctuator\"\n | \"number\"\n | \"string\"\n | \"regex\"\n | \"comment\"\n | \"invalid\";\n\ntype UITokens = \"gutter\" | \"marker\" | \"message\";\n\nexport type Defs = Record<InternalTokenType | UITokens | \"reset\", Formatter>;\n\nconst compose: <T, U, V>(f: (gv: U) => V, g: (v: T) => U) => (v: T) => V =\n (f, g) => v =>\n f(g(v));\n\n/**\n * Styles for token types.\n */\nfunction buildDefs(colors: Colors): Defs {\n return {\n keyword: colors.cyan,\n capitalized: colors.yellow,\n jsxIdentifier: colors.yellow,\n punctuator: colors.yellow,\n number: colors.magenta,\n string: colors.green,\n regex: colors.magenta,\n comment: colors.gray,\n invalid: compose(compose(colors.white, colors.bgRed), colors.bold),\n\n gutter: colors.gray,\n marker: compose(colors.red, colors.bold),\n message: compose(colors.red, colors.bold),\n\n reset: colors.reset,\n };\n}\n\nconst defsOn = buildDefs(createColors(true));\nconst defsOff = buildDefs(createColors(false));\n\nexport function getDefs(enabled: boolean): Defs {\n return enabled ? defsOn : defsOff;\n}\n","import type { Token as JSToken, JSXToken } from \"js-tokens\";\nimport jsTokens from \"js-tokens\";\n// We inline this package\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport * as charCodes from \"charcodes\";\n\nimport {\n isStrictReservedWord,\n isKeyword,\n} from \"@babel/helper-validator-identifier\";\n\nimport { getDefs, type InternalTokenType } from \"./defs.ts\";\n\n/**\n * Names that are always allowed as identifiers, but also appear as keywords\n * within certain syntactic productions.\n *\n * https://tc39.es/ecma262/#sec-keywords-and-reserved-words\n *\n * `target` has been omitted since it is very likely going to be a false\n * positive.\n */\nconst sometimesKeywords = new Set([\"as\", \"async\", \"from\", \"get\", \"of\", \"set\"]);\n\ntype Token = {\n type: InternalTokenType | \"uncolored\";\n value: string;\n};\n\n/**\n * RegExp to test for newlines in terminal.\n */\nconst NEWLINE = /\\r\\n|[\\n\\r\\u2028\\u2029]/;\n\n/**\n * RegExp to test for the three types of brackets.\n */\nconst BRACKET = /^[()[\\]{}]$/;\n\nlet tokenize: (\n text: string,\n) => Generator<{ type: InternalTokenType | \"uncolored\"; value: string }>;\n\nif (process.env.BABEL_8_BREAKING) {\n /**\n * Get the type of token, specifying punctuator type.\n */\n const getTokenType = function (\n token: JSToken | JSXToken,\n ): InternalTokenType | \"uncolored\" {\n if (token.type === \"IdentifierName\") {\n const tokenValue = token.value;\n if (\n isKeyword(tokenValue) ||\n isStrictReservedWord(tokenValue, true) ||\n sometimesKeywords.has(tokenValue)\n ) {\n return \"keyword\";\n }\n\n const firstChar = tokenValue.charCodeAt(0);\n if (firstChar < 128) {\n // ASCII characters\n if (\n firstChar >= charCodes.uppercaseA &&\n firstChar <= charCodes.uppercaseZ\n ) {\n return \"capitalized\";\n }\n } else {\n const firstChar = String.fromCodePoint(tokenValue.codePointAt(0));\n if (firstChar !== firstChar.toLowerCase()) {\n return \"capitalized\";\n }\n }\n }\n\n if (token.type === \"Punctuator\" && BRACKET.test(token.value)) {\n return \"uncolored\";\n }\n\n if (token.type === \"Invalid\" && token.value === \"@\") {\n return \"punctuator\";\n }\n\n switch (token.type) {\n case \"NumericLiteral\":\n return \"number\";\n\n case \"StringLiteral\":\n case \"JSXString\":\n case \"NoSubstitutionTemplate\":\n return \"string\";\n\n case \"RegularExpressionLiteral\":\n return \"regex\";\n\n case \"Punctuator\":\n case \"JSXPunctuator\":\n return \"punctuator\";\n\n case \"MultiLineComment\":\n case \"SingleLineComment\":\n return \"comment\";\n\n case \"Invalid\":\n case \"JSXInvalid\":\n return \"invalid\";\n\n case \"JSXIdentifier\":\n return \"jsxIdentifier\";\n\n default:\n return \"uncolored\";\n }\n };\n\n /**\n * Turn a string of JS into an array of objects.\n */\n tokenize = function* (text: string): Generator<Token> {\n for (const token of jsTokens(text, { jsx: true }Line truncated
+32
View File
@@ -0,0 +1,32 @@
{
"name": "@babel/code-frame",
"version": "7.29.7",
"description": "Generate errors that contain a code frame that point to source locations.",
"author": "The Babel Team (https://babel.dev/team)",
"homepage": "https://babel.dev/docs/en/next/babel-code-frame",
"bugs": "https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+is%3Aopen",
"license": "MIT",
"publishConfig": {
"access": "public"
},
"repository": {
"type": "git",
"url": "https://github.com/babel/babel.git",
"directory": "packages/babel-code-frame"
},
"main": "./lib/index.js",
"dependencies": {
"@babel/helper-validator-identifier": "^7.29.7",
"js-tokens": "^4.0.0",
"picocolors": "^1.1.1"
},
"devDependencies": {
"charcodes": "^0.2.0",
"import-meta-resolve": "^4.1.0",
"strip-ansi": "^4.0.0"
},
"engines": {
"node": ">=6.9.0"
},
"type": "commonjs"
}
+22
View File
@@ -0,0 +1,22 @@
MIT License
Copyright (c) 2014-present Sebastian McKenzie and other contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+19
View File
@@ -0,0 +1,19 @@
# @babel/compat-data
> The compat-data to determine required Babel plugins
See our website [@babel/compat-data](https://babeljs.io/docs/babel-compat-data) for more information.
## Install
Using npm:
```sh
npm install --save @babel/compat-data
```
or using yarn:
```sh
yarn add @babel/compat-data
```
+2
View File
@@ -0,0 +1,2 @@
// Todo (Babel 8): remove this file as Babel 8 drop support of core-js 2
module.exports = require("./data/corejs2-built-ins.json");
@@ -0,0 +1,2 @@
// Todo (Babel 8): remove this file now that it is included in babel-plugin-polyfill-corejs3
module.exports = require("./data/corejs3-shipped-proposals.json");
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,5 @@
[
"esnext.promise.all-settled",
"esnext.string.match-all",
"esnext.global-this"
]
+18
View File
@@ -0,0 +1,18 @@
{
"es6.module": {
"chrome": "61",
"and_chr": "61",
"edge": "16",
"firefox": "60",
"and_ff": "60",
"node": "13.2.0",
"opera": "48",
"op_mob": "45",
"safari": "10.1",
"ios": "10.3",
"samsung": "8.2",
"android": "61",
"electron": "2.0",
"ios_saf": "10.3"
}
}
+38
View File
@@ -0,0 +1,38 @@
{
"transform-async-to-generator": [
"bugfix/transform-async-arrows-in-class"
],
"transform-parameters": [
"bugfix/transform-edge-default-parameters",
"bugfix/transform-safari-id-destructuring-collision-in-function-expression"
],
"transform-function-name": [
"bugfix/transform-edge-function-name"
],
"transform-block-scoping": [
"bugfix/transform-safari-block-shadowing",
"bugfix/transform-safari-for-shadowing"
],
"transform-destructuring": [
"bugfix/transform-safari-rest-destructuring-rhs-array"
],
"transform-template-literals": [
"bugfix/transform-tagged-template-caching"
],
"transform-optional-chaining": [
"bugfix/transform-v8-spread-parameters-in-optional-chaining"
],
"proposal-optional-chaining": [
"bugfix/transform-v8-spread-parameters-in-optional-chaining"
],
"transform-class-properties": [
"bugfix/transform-v8-static-class-fields-redefine-readonly",
"bugfix/transform-firefox-class-in-computed-class-key",
"bugfix/transform-safari-class-field-initializer-scope"
],
"proposal-class-properties": [
"bugfix/transform-v8-static-class-fields-redefine-readonly",
"bugfix/transform-firefox-class-in-computed-class-key",
"bugfix/transform-safari-class-field-initializer-scope"
]
}
+231
View File
@@ -0,0 +1,231 @@
{
"bugfix/transform-async-arrows-in-class": {
"chrome": "55",
"opera": "42",
"edge": "15",
"firefox": "52",
"safari": "11",
"node": "7.6",
"deno": "1",
"ios": "11",
"samsung": "6",
"opera_mobile": "42",
"electron": "1.6"
},
"bugfix/transform-edge-default-parameters": {
"chrome": "49",
"opera": "36",
"edge": "18",
"firefox": "52",
"safari": "10",
"node": "6",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "36",
"electron": "0.37"
},
"bugfix/transform-edge-function-name": {
"chrome": "51",
"opera": "38",
"edge": "79",
"firefox": "53",
"safari": "10",
"node": "6.5",
"deno": "1",
"ios": "10",
"samsung": "5",
"rhino": "1.9",
"opera_mobile": "41",
"electron": "1.2"
},
"bugfix/transform-safari-block-shadowing": {
"chrome": "49",
"opera": "36",
"edge": "12",
"firefox": "44",
"safari": "11",
"node": "6",
"deno": "1",
"ie": "11",
"ios": "11",
"samsung": "5",
"opera_mobile": "36",
"electron": "0.37"
},
"bugfix/transform-safari-for-shadowing": {
"chrome": "49",
"opera": "36",
"edge": "12",
"firefox": "4",
"safari": "11",
"node": "6",
"deno": "1",
"ie": "11",
"ios": "11",
"samsung": "5",
"rhino": "1.7.13",
"opera_mobile": "36",
"electron": "0.37"
},
"bugfix/transform-safari-id-destructuring-collision-in-function-expression": {
"chrome": "49",
"opera": "36",
"edge": "14",
"firefox": "2",
"safari": "16.3",
"node": "6",
"deno": "1",
"ios": "16.3",
"samsung": "5",
"opera_mobile": "36",
"electron": "0.37"
},
"bugfix/transform-safari-rest-destructuring-rhs-array": {
"chrome": "49",
"opera": "36",
"edge": "14",
"firefox": "34",
"safari": "14.1",
"node": "6",
"deno": "1",
"ios": "14.5",
"samsung": "5",
"opera_mobile": "36",
"electron": "0.37"
},
"bugfix/transform-tagged-template-caching": {
"chrome": "41",
"opera": "28",
"edge": "12",
"firefox": "34",
"safari": "13",
"node": "4",
"deno": "1",
"ios": "13",
"samsung": "3.4",
"rhino": "1.7.14",
"opera_mobile": "28",
"electron": "0.21"
},
"bugfix/transform-v8-spread-parameters-in-optional-chaining": {
"chrome": "91",
"opera": "77",
"edge": "91",
"firefox": "74",
"safari": "13.1",
"node": "16.9",
"deno": "1.9",
"ios": "13.4",
"samsung": "16",
"opera_mobile": "64",
"electron": "13.0"
},
"transform-optional-chaining": {
"chrome": "80",
"opera": "67",
"edge": "80",
"firefox": "74",
"safari": "13.1",
"node": "14",
"deno": "1",
"ios": "13.4",
"samsung": "13",
"rhino": "1.8",
"opera_mobile": "57",
"electron": "8.0"
},
"proposal-optional-chaining": {
"chrome": "80",
"opera": "67",
"edge": "80",
"firefox": "74",
"safari": "13.1",
"node": "14",
"deno": "1",
"ios": "13.4",
"samsung": "13",
"rhino": "1.8",
"opera_mobile": "57",
"electron": "8.0"
},
"transform-parameters": {
"chrome": "49",
"opera": "36",
"edge": "15",
"firefox": "52",
"safari": "10",
"node": "6",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "36",
"electron": "0.37"
},
"transform-async-to-generator": {
"chrome": "55",
"opera": "42",
"edge": "15",
"firefox": "52",
"safari": "10.1",
"node": "7.6",
"deno": "1",
"ios": "10.3",
"samsung": "6",
"opera_mobile": "42",
"electron": "1.6"
},
"transform-template-literals": {
"chrome": "41",
"opera": "28",
"edge": "13",
"firefox": "34",
"safari": "9",
"node": "4",
"deno": "1",
"ios": "9",
"samsung": "3.4",
"rhino": "1.9",
"opera_mobile": "28",
"electron": "0.21"
},
"transform-function-name": {
"chrome": "51",
"opera": "38",
"edge": "14",
"firefox": "53",
"safari": "10",
"node": "6.5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "41",
"electron": "1.2"
},
"transform-destructuring": {
"chrome": "51",
"opera": "38",
"edge": "15",
"firefox": "53",
"safari": "10",
"node": "6.5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "41",
"electron": "1.2"
},
"transform-block-scoping": {
"chrome": "50",
"opera": "37",
"edge": "14",
"firefox": "53",
"safari": "10",
"node": "6",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "37",
"electron": "1.1"
}
}
+843
View File
@@ -0,0 +1,843 @@
{
"transform-explicit-resource-management": {
"chrome": "141",
"edge": "141",
"firefox": "141",
"node": "25",
"electron": "39.0"
},
"transform-duplicate-named-capturing-groups-regex": {
"chrome": "126",
"opera": "112",
"edge": "126",
"firefox": "129",
"safari": "17.4",
"node": "23",
"ios": "17.4",
"rhino": "1.9",
"electron": "31.0"
},
"transform-regexp-modifiers": {
"chrome": "125",
"opera": "111",
"edge": "125",
"firefox": "132",
"node": "23",
"samsung": "27",
"electron": "31.0"
},
"transform-unicode-sets-regex": {
"chrome": "112",
"opera": "98",
"edge": "112",
"firefox": "116",
"safari": "17",
"node": "20",
"deno": "1.32",
"ios": "17",
"samsung": "23",
"opera_mobile": "75",
"electron": "24.0"
},
"bugfix/transform-v8-static-class-fields-redefine-readonly": {
"chrome": "98",
"opera": "84",
"edge": "98",
"firefox": "75",
"safari": "15",
"node": "12",
"deno": "1.18",
"ios": "15",
"samsung": "11",
"opera_mobile": "52",
"electron": "17.0"
},
"bugfix/transform-firefox-class-in-computed-class-key": {
"chrome": "74",
"opera": "62",
"edge": "79",
"firefox": "126",
"safari": "16",
"node": "12",
"deno": "1",
"ios": "16",
"samsung": "11",
"opera_mobile": "53",
"electron": "6.0"
},
"bugfix/transform-safari-class-field-initializer-scope": {
"chrome": "74",
"opera": "62",
"edge": "79",
"firefox": "69",
"safari": "16",
"node": "12",
"deno": "1",
"ios": "16",
"samsung": "11",
"opera_mobile": "53",
"electron": "6.0"
},
"transform-class-static-block": {
"chrome": "94",
"opera": "80",
"edge": "94",
"firefox": "93",
"safari": "16.4",
"node": "16.11",
"deno": "1.14",
"ios": "16.4",
"samsung": "17",
"opera_mobile": "66",
"electron": "15.0"
},
"proposal-class-static-block": {
"chrome": "94",
"opera": "80",
"edge": "94",
"firefox": "93",
"safari": "16.4",
"node": "16.11",
"deno": "1.14",
"ios": "16.4",
"samsung": "17",
"opera_mobile": "66",
"electron": "15.0"
},
"transform-private-property-in-object": {
"chrome": "91",
"opera": "77",
"edge": "91",
"firefox": "90",
"safari": "15",
"node": "16.9",
"deno": "1.9",
"ios": "15",
"samsung": "16",
"opera_mobile": "64",
"electron": "13.0"
},
"proposal-private-property-in-object": {
"chrome": "91",
"opera": "77",
"edge": "91",
"firefox": "90",
"safari": "15",
"node": "16.9",
"deno": "1.9",
"ios": "15",
"samsung": "16",
"opera_mobile": "64",
"electron": "13.0"
},
"transform-class-properties": {
"chrome": "74",
"opera": "62",
"edge": "79",
"firefox": "90",
"safari": "14.1",
"node": "12",
"deno": "1",
"ios": "14.5",
"samsung": "11",
"opera_mobile": "53",
"electron": "6.0"
},
"proposal-class-properties": {
"chrome": "74",
"opera": "62",
"edge": "79",
"firefox": "90",
"safari": "14.1",
"node": "12",
"deno": "1",
"ios": "14.5",
"samsung": "11",
"opera_mobile": "53",
"electron": "6.0"
},
"transform-private-methods": {
"chrome": "84",
"opera": "70",
"edge": "84",
"firefox": "90",
"safari": "15",
"node": "14.6",
"deno": "1",
"ios": "15",
"samsung": "14",
"opera_mobile": "60",
"electron": "10.0"
},
"proposal-private-methods": {
"chrome": "84",
"opera": "70",
"edge": "84",
"firefox": "90",
"safari": "15",
"node": "14.6",
"deno": "1",
"ios": "15",
"samsung": "14",
"opera_mobile": "60",
"electron": "10.0"
},
"transform-numeric-separator": {
"chrome": "75",
"opera": "62",
"edge": "79",
"firefox": "70",
"safari": "13",
"node": "12.5",
"deno": "1",
"ios": "13",
"samsung": "11",
"rhino": "1.7.14",
"opera_mobile": "54",
"electron": "6.0"
},
"proposal-numeric-separator": {
"chrome": "75",
"opera": "62",
"edge": "79",
"firefox": "70",
"safari": "13",
"node": "12.5",
"deno": "1",
"ios": "13",
"samsung": "11",
"rhino": "1.7.14",
"opera_mobile": "54",
"electron": "6.0"
},
"transform-logical-assignment-operators": {
"chrome": "85",
"opera": "71",
"edge": "85",
"firefox": "79",
"safari": "14",
"node": "15",
"deno": "1.2",
"ios": "14",
"samsung": "14",
"opera_mobile": "60",
"electron": "10.0"
},
"proposal-logical-assignment-operators": {
"chrome": "85",
"opera": "71",
"edge": "85",
"firefox": "79",
"safari": "14",
"node": "15",
"deno": "1.2",
"ios": "14",
"samsung": "14",
"opera_mobile": "60",
"electron": "10.0"
},
"transform-nullish-coalescing-operator": {
"chrome": "80",
"opera": "67",
"edge": "80",
"firefox": "72",
"safari": "13.1",
"node": "14",
"deno": "1",
"ios": "13.4",
"samsung": "13",
"rhino": "1.8",
"opera_mobile": "57",
"electron": "8.0"
},
"proposal-nullish-coalescing-operator": {
"chrome": "80",
"opera": "67",
"edge": "80",
"firefox": "72",
"safari": "13.1",
"node": "14",
"deno": "1",
"ios": "13.4",
"samsung": "13",
"rhino": "1.8",
"opera_mobile": "57",
"electron": "8.0"
},
"transform-optional-chaining": {
"chrome": "91",
"opera": "77",
"edge": "91",
"firefox": "74",
"safari": "13.1",
"node": "16.9",
"deno": "1.9",
"ios": "13.4",
"samsung": "16",
"opera_mobile": "64",
"electron": "13.0"
},
"proposal-optional-chaining": {
"chrome": "91",
"opera": "77",
"edge": "91",
"firefox": "74",
"safari": "13.1",
"node": "16.9",
"deno": "1.9",
"ios": "13.4",
"samsung": "16",
"opera_mobile": "64",
"electron": "13.0"
},
"transform-json-strings": {
"chrome": "66",
"opera": "53",
"edge": "79",
"firefox": "62",
"safari": "12",
"node": "10",
"deno": "1",
"ios": "12",
"samsung": "9",
"rhino": "1.7.14",
"opera_mobile": "47",
"electron": "3.0"
},
"proposal-json-strings": {
"chrome": "66",
"opera": "53",
"edge": "79",
"firefox": "62",
"safari": "12",
"node": "10",
"deno": "1",
"ios": "12",
"samsung": "9",
"rhino": "1.7.14",
"opera_mobile": "47",
"electron": "3.0"
},
"transform-optional-catch-binding": {
"chrome": "66",
"opera": "53",
"edge": "79",
"firefox": "58",
"safari": "11.1",
"node": "10",
"deno": "1",
"ios": "11.3",
"samsung": "9",
"opera_mobile": "47",
"electron": "3.0"
},
"proposal-optional-catch-binding": {
"chrome": "66",
"opera": "53",
"edge": "79",
"firefox": "58",
"safari": "11.1",
"node": "10",
"deno": "1",
"ios": "11.3",
"samsung": "9",
"opera_mobile": "47",
"electron": "3.0"
},
"transform-parameters": {
"chrome": "49",
"opera": "36",
"edge": "18",
"firefox": "52",
"safari": "16.3",
"node": "6",
"deno": "1",
"ios": "16.3",
"samsung": "5",
"opera_mobile": "36",
"electron": "0.37"
},
"transform-async-generator-functions": {
"chrome": "63",
"opera": "50",
"edge": "79",
"firefox": "57",
"safari": "12",
"node": "10",
"deno": "1",
"ios": "12",
"samsung": "8",
"opera_mobile": "46",
"electron": "3.0"
},
"proposal-async-generator-functions": {
"chrome": "63",
"opera": "50",
"edge": "79",
"firefox": "57",
"safari": "12",
"node": "10",
"deno": "1",
"ios": "12",
"samsung": "8",
"opera_mobile": "46",
"electron": "3.0"
},
"transform-object-rest-spread": {
"chrome": "60",
"opera": "47",
"edge": "79",
"firefox": "55",
"safari": "11.1",
"node": "8.3",
"deno": "1",
"ios": "11.3",
"samsung": "8",
"opera_mobile": "44",
"electron": "2.0"
},
"proposal-object-rest-spread": {
"chrome": "60",
"opera": "47",
"edge": "79",
"firefox": "55",
"safari": "11.1",
"node": "8.3",
"deno": "1",
"ios": "11.3",
"samsung": "8",
"opera_mobile": "44",
"electron": "2.0"
},
"transform-dotall-regex": {
"chrome": "62",
"opera": "49",
"edge": "79",
"firefox": "78",
"safari": "11.1",
"node": "8.10",
"deno": "1",
"ios": "11.3",
"samsung": "8",
"rhino": "1.7.15",
"opera_mobile": "46",
"electron": "3.0"
},
"transform-unicode-property-regex": {
"chrome": "64",
"opera": "51",
"edge": "79",
"firefox": "78",
"safari": "11.1",
"node": "10",
"deno": "1",
"ios": "11.3",
"samsung": "9",
"rhino": "1.9",
"opera_mobile": "47",
"electron": "3.0"
},
"proposal-unicode-property-regex": {
"chrome": "64",
"opera": "51",
"edge": "79",
"firefox": "78",
"safari": "11.1",
"node": "10",
"deno": "1",
"ios": "11.3",
"samsung": "9",
"rhino": "1.9",
"opera_mobile": "47",
"electron": "3.0"
},
"transform-named-capturing-groups-regex": {
"chrome": "64",
"opera": "51",
"edge": "79",
"firefox": "78",
"safari": "11.1",
"node": "10",
"deno": "1",
"ios": "11.3",
"samsung": "9",
"rhino": "1.9",
"opera_mobile": "47",
"electron": "3.0"
},
"transform-async-to-generator": {
"chrome": "55",
"opera": "42",
"edge": "15",
"firefox": "52",
"safari": "11",
"node": "7.6",
"deno": "1",
"ios": "11",
"samsung": "6",
"opera_mobile": "42",
"electron": "1.6"
},
"transform-exponentiation-operator": {
"chrome": "52",
"opera": "39",
"edge": "14",
"firefox": "52",
"safari": "10.1",
"node": "7",
"deno": "1",
"ios": "10.3",
"samsung": "6",
"rhino": "1.7.14",
"opera_mobile": "41",
"electron": "1.3"
},
"transform-template-literals": {
"chrome": "41",
"opera": "28",
"edge": "13",
"firefox": "34",
"safari": "13",
"node": "4",
"deno": "1",
"ios": "13",
"samsung": "3.4",
"rhino": "1.9",
"opera_mobile": "28",
"electron": "0.21"
},
"transform-literals": {
"chrome": "44",
"opera": "31",
"edge": "12",
"firefox": "53",
"safari": "9",
"node": "4",
"deno": "1",
"ios": "9",
"samsung": "4",
"rhino": "1.7.15",
"opera_mobile": "32",
"electron": "0.30"
},
"transform-function-name": {
"chrome": "51",
"opera": "38",
"edge": "79",
"firefox": "53",
"safari": "10",
"node": "6.5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "41",
"electron": "1.2"
},
"transform-arrow-functions": {
"chrome": "47",
"opera": "34",
"edge": "13",
"firefox": "43",
"safari": "10",
"node": "6",
"deno": "1",
"ios": "10",
"samsung": "5",
"rhino": "1.7.13",
"opera_mobile": "34",
"electron": "0.36"
},
"transform-block-scoped-functions": {
"chrome": "41",
"opera": "28",
"edge": "12",
"firefox": "46",
"safari": "10",
"node": "4",
"deno": "1",
"ie": "11",
"ios": "10",
"samsung": "3.4",
"opera_mobile": "28",
"electron": "0.21"
},
"transform-classes": {
"chrome": "46",
"opera": "33",
"edge": "13",
"firefox": "45",
"safari": "10",
"node": "5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "33",
"electron": "0.36"
},
"transform-object-super": {
"chrome": "46",
"opera": "33",
"edge": "13",
"firefox": "45",
"safari": "10",
"node": "5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "33",
"electron": "0.36"
},
"transform-shorthand-properties": {
"chrome": "43",
"opera": "30",
"edge": "12",
"firefox": "33",
"safari": "9",
"node": "4",
"deno": "1",
"ios": "9",
"samsung": "4",
"rhino": "1.7.14",
"opera_mobile": "30",
"electron": "0.27"
},
"transform-duplicate-keys": {
"chrome": "42",
"opera": "29",
"edge": "12",
"firefox": "34",
"safari": "9",
"node": "4",
"deno": "1",
"ios": "9",
"samsung": "3.4",
"opera_mobile": "29",
"electron": "0.25"
},
"transform-computed-properties": {
"chrome": "44",
"opera": "31",
"edge": "12",
"firefox": "34",
"safari": "7.1",
"node": "4",
"deno": "1",
"ios": "8",
"samsung": "4",
"rhino": "1.8",
"opera_mobile": "32",
"electron": "0.30"
},
"transform-for-of": {
"chrome": "51",
"opera": "38",
"edge": "15",
"firefox": "53",
"safari": "10",
"node": "6.5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "41",
"electron": "1.2"
},
"transform-sticky-regex": {
"chrome": "49",
"opera": "36",
"edge": "13",
"firefox": "3",
"safari": "10",
"node": "6",
"deno": "1",
"ios": "10",
"samsung": "5",
"rhino": "1.7.15",
"opera_mobile": "36",
"electron": "0.37"
},
"transform-unicode-escapes": {
"chrome": "44",
"opera": "31",
"edge": "12",
"firefox": "53",
"safari": "9",
"node": "4",
"deno": "1",
"ios": "9",
"samsung": "4",
"rhino": "1.7.15",
"opera_mobile": "32",
"electron": "0.30"
},
"transform-unicode-regex": {
"chrome": "50",
"opera": "37",
"edge": "13",
"firefox": "46",
"safari": "12",
"node": "6",
"deno": "1",
"ios": "12",
"samsung": "5",
"opera_mobile": "37",
"electron": "1.1"
},
"transform-spread": {
"chrome": "46",
"opera": "33",
"edge": "13",
"firefox": "45",
"safari": "10",
"node": "5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "33",
"electron": "0.36"
},
"transform-destructuring": {
"chrome": "51",
"opera": "38",
"edge": "15",
"firefox": "53",
"safari": "14.1",
"node": "6.5",
"deno": "1",
"ios": "14.5",
"samsung": "5",
"opera_mobile": "41",
"electron": "1.2"
},
"transform-block-scoping": {
"chrome": "50",
"opera": "37",
"edge": "14",
"firefox": "53",
"safari": "11",
"node": "6",
"deno": "1",
"ios": "11",
"samsung": "5",
"opera_mobile": "37",
"electron": "1.1"
},
"transform-typeof-symbol": {
"chrome": "48",
"opera": "35",
"edge": "12",
"firefox": "36",
"safari": "9",
"node": "6",
"deno": "1",
"ios": "9",
"samsung": "5",
"rhino": "1.8",
"opera_mobile": "35",
"electron": "0.37"
},
"transform-new-target": {
"chrome": "46",
"opera": "33",
"edge": "14",
"firefox": "41",
"safari": "10",
"node": "5",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "33",
"electron": "0.36"
},
"transform-regenerator": {
"chrome": "50",
"opera": "37",
"edge": "13",
"firefox": "53",
"safari": "10",
"node": "6",
"deno": "1",
"ios": "10",
"samsung": "5",
"opera_mobile": "37",
"electron": "1.1"
},
"transform-member-expression-literals": {
"chrome": "7",
"opera": "12",
"edge": "12",
"firefox": "2",
"safari": "5.1",
"node": "0.4",
"deno": "1",
"ie": "9",
"android": "4",
"ios": "6",
"phantom": "1.9",
"samsung": "1",
"rhino": "1.7.13",
"opera_mobile": "12",
"electron": "0.20"
},
"transform-property-literals": {
"chrome": "7",
"opera": "12",
"edge": "12",
"firefox": "2",
"safari": "5.1",
"node": "0.4",
"deno": "1",
"ie": "9",
"android": "4",
"ios": "6",
"phantom": "1.9",
"samsung": "1",
"rhino": "1.7.13",
"opera_mobile": "12",
"electron": "0.20"
},
"transform-reserved-words": {
"chrome": "13",
"opera": "10.50",
"edge": "12",
"firefox": "2",
"safari": "3.1",
"node": "0.6",
"deno": "1",
"ie": "9",
"android": "4.4",
"ios": "6",
"phantom": "1.9",
"samsung": "1",
"rhino": "1.7.13",
"opera_mobile": "10.1",
"electron": "0.20"
},
"transform-export-namespace-from": {
"chrome": "72",
"deno": "1.0",
"edge": "79",
"firefox": "80",
"node": "13.2.0",
"opera": "60",
"opera_mobile": "51",
"safari": "14.1",
"ios": "14.5",
"samsung": "11.0",
"android": "72",
"electron": "5.0"
},
"proposal-export-namespace-from": {
"chrome": "72",
"deno": "1.0",
"edge": "79",
"firefox": "80",
"node": "13.2.0",
"opera": "60",
"opera_mobile": "51",
"safari": "14.1",
"ios": "14.5",
"samsung": "11.0",
"android": "72",
"electron": "5.0"
}
}
+2
View File
@@ -0,0 +1,2 @@
// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly
module.exports = require("./data/native-modules.json");
+2
View File
@@ -0,0 +1,2 @@
// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly
module.exports = require("./data/overlapping-plugins.json");
+40
View File
@@ -0,0 +1,40 @@
{
"name": "@babel/compat-data",
"version": "7.29.7",
"author": "The Babel Team (https://babel.dev/team)",
"license": "MIT",
"description": "The compat-data to determine required Babel plugins",
"repository": {
"type": "git",
"url": "https://github.com/babel/babel.git",
"directory": "packages/babel-compat-data"
},
"publishConfig": {
"access": "public"
},
"exports": {
"./plugins": "./plugins.js",
"./native-modules": "./native-modules.js",
"./corejs2-built-ins": "./corejs2-built-ins.js",
"./corejs3-shipped-proposals": "./corejs3-shipped-proposals.js",
"./overlapping-plugins": "./overlapping-plugins.js",
"./plugin-bugfixes": "./plugin-bugfixes.js"
},
"scripts": {
"build-data": "./scripts/download-compat-table.sh && node ./scripts/build-data.mjs && node ./scripts/build-modules-support.mjs && node ./scripts/build-bugfixes-targets.mjs"
},
"keywords": [
"babel",
"compat-table",
"compat-data"
],
"devDependencies": {
"@mdn/browser-compat-data": "^6.0.8",
"core-js-compat": "^3.48.0",
"electron-to-chromium": "^1.5.278"
},
"engines": {
"node": ">=6.9.0"
},
"type": "commonjs"
}
+2
View File
@@ -0,0 +1,2 @@
// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly
module.exports = require("./data/plugin-bugfixes.json");
+2
View File
@@ -0,0 +1,2 @@
// Todo (Babel 8): remove this file, in Babel 8 users import the .json directly
module.exports = require("./data/plugins.json");
+22
View File
@@ -0,0 +1,22 @@
MIT License
Copyright (c) 2014-present Sebastian McKenzie and other contributors
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+19
View File
@@ -0,0 +1,19 @@
# @babel/core
> Babel compiler core.
See our website [@babel/core](https://babeljs.io/docs/babel-core) for more information or the [issues](https://github.com/babel/babel/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3A%22pkg%3A%20core%22+is%3Aopen) associated with this package.
## Install
Using npm:
```sh
npm install --save-dev @babel/core
```
or using yarn:
```sh
yarn add @babel/core --dev
```
+5
View File
@@ -0,0 +1,5 @@
"use strict";
0 && 0;
//# sourceMappingURL=cache-contexts.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"names":[],"sources":["../../src/config/cache-contexts.ts"],"sourcesContent":["import type { ConfigContext } from \"./config-chain.ts\";\nimport type {\n CallerMetadata,\n TargetsListOrObject,\n} from \"./validation/options.ts\";\n\nexport type { ConfigContext as FullConfig };\n\nexport type FullPreset = {\n targets: TargetsListOrObject;\n} & ConfigContext;\nexport type FullPlugin = {\n assumptions: Record<string, boolean>;\n} & FullPreset;\n\n// Context not including filename since it is used in places that cannot\n// process 'ignore'/'only' and other filename-based logic.\nexport type SimpleConfig = {\n envName: string;\n caller: CallerMetadata | undefined;\n};\nexport type SimplePreset = {\n targets: TargetsListOrObject;\n} & SimpleConfig;\nexport type SimplePlugin = {\n assumptions: Record<string, boolean>;\n} & SimplePreset;\n"],"mappings":"","ignoreList":[]}
Loaded 100 of 5118 files, more files were not shown because too many files have changed in this diff. Show more