|
|
|
@@ -1,24 +1,24 @@
|
|
|
|
|
import{a as Cc,b as Zc,c as qo,d as yP}from"./chunk-7GWCUXYG.js";import{a as SP}from"./chunk-LNOKARBD.js";import{a as Rc}from"./chunk-A7SWO6EA.js";import{a as X0,b as _0,c as QP}from"./chunk-NQZ7DXX4.js";import{D as sO,K as oO,t as k0,u as T0}from"./chunk-YYNDYC2B.js";import{A as zn,E as Sr,F as iO,G as Vo,I as Da,J as Xc,K as rO,T as nO,V as P0,a as On,b as Wa,ba as _c,d as pi,e as Va,f as Qi,g as pt,h as eO,i as y0,k as Q0,m as $c,n as Pc,o as kc,p as Ks,q as w0,t as Tc,w as $0,x as tO,y as qa,z as zi}from"./chunk-TYDI7JZQ.js";import{a as qt,b as wc,c as ja,d as Ku,e as Ju}from"./chunk-KT7KMEQC.js";var lO=Ku((R0,aO)=>{(function(i){if(typeof R0=="object"&&typeof aO!="undefined")aO.exports=i();else if(typeof define=="function"&&define.amd)define([],i);else{var e;typeof window!="undefined"?e=window:typeof global!="undefined"?e=global:typeof self!="undefined"?e=self:e=this,e.localforage=i()}})(function(){var i,e,t;return(function r(n,s,o){function a(f,O){if(!s[f]){if(!n[f]){var p=typeof ja=="function"&&ja;if(!O&&p)return p(f,!0);if(l)return l(f,!0);var b=new Error("Cannot find module '"+f+"'");throw b.code="MODULE_NOT_FOUND",b}var y=s[f]={exports:{}};n[f][0].call(y.exports,function(P){var X=n[f][1][P];return a(X||P)},y,y.exports,r,n,s,o)}return s[f].exports}for(var l=typeof ja=="function"&&ja,c=0;c<o.length;c++)a(o[c]);return a})({1:[function(r,n,s){(function(o){"use strict";var a=o.MutationObserver||o.WebKitMutationObserver,l;if(a){var c=0,f=new a(P),O=o.document.createTextNode("");f.observe(O,{characterData:!0}),l=function(){O.data=c=++c%2}}else if(!o.setImmediate&&typeof o.MessageChannel!="undefined"){var p=new o.MessageChannel;p.port1.onmessage=P,l=function(){p.port2.postMessage(0)}}else"document"in o&&"onreadystatechange"in o.document.createElement("script")?l=function(){var E=o.document.createElement("script");E.onreadystatechange=function(){P(),E.onreadystatechange=null,E.parentNode.removeChild(E),E=null},o.document.documentElement.appendChild(E)}:l=function(){setTimeout(P,0)};var b,y=[];function P(){b=!0;for(var E,H,V=y.length;V;){for(H=y,y=[],E=-1;++E<V;)H[E]();V=y.length}b=!1}n.exports=X;function X(E){y.push(E)===1&&!b&&l()}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{}],2:[function(r,n,s){"use strict";var o=r(1);function a(){}var l={},c=["REJECTED"],f=["FULFILLED"],O=["PENDING"];n.exports=p;function p(d){if(typeof d!="function")throw new TypeError("resolver must be a function");this.state=O,this.queue=[],this.outcome=void 0,d!==a&&X(this,d)}p.prototype.catch=function(d){return this.then(null,d)},p.prototype.then=function(d,q){if(typeof d!="function"&&this.state===f||typeof q!="function"&&this.state===c)return this;var G=new this.constructor(a);if(this.state!==O){var pe=this.state===f?d:q;y(G,pe,this.outcome)}else this.queue.push(new b(G,d,q));return G};function b(d,q,G){this.promise=d,typeof q=="function"&&(this.onFulfilled=q,this.callFulfilled=this.otherCallFulfilled),typeof G=="function"&&(this.onRejected=G,this.callRejected=this.otherCallRejected)}b.prototype.callFulfilled=function(d){l.resolve(this.promise,d)},b.prototype.otherCallFulfilled=function(d){y(this.promise,this.onFulfilled,d)},b.prototype.callRejected=function(d){l.reject(this.promise,d)},b.prototype.otherCallRejected=function(d){y(this.promise,this.onRejected,d)};function y(d,q,G){o(function(){var pe;try{pe=q(G)}catch(Ee){return l.reject(d,Ee)}pe===d?l.reject(d,new TypeError("Cannot resolve promise with itself")):l.resolve(d,pe)})}l.resolve=function(d,q){var G=E(P,q);if(G.status==="error")return l.reject(d,G.value);var pe=G.value;if(pe)X(d,pe);else{d.state=f,d.outcome=q;for(var Ee=-1,Te=d.queue.length;++Ee<Te;)d.queue[Ee].callFulfilled(q)}return d},l.reject=function(d,q){d.state=c,d.outcome=q;for(var G=-1,pe=d.queue.length;++G<pe;)d.queue[G].callRejected(q);return d};function P(d){var q=d&&d.then;if(d&&(typeof d=="object"||typeof d=="function")&&typeof q=="function")return function(){q.apply(d,arguments)}}function X(d,q){var G=!1;function pe(_e){G||(G=!0,l.reject(d,_e))}function Ee(_e){G||(G=!0,l.resolve(d,_e))}function Te(){q(Ee,pe)}var oe=E(Te);oe.status==="error"&&pe(oe.value)}function E(d,q){var G={};try{G.value=d(q),G.status="success"}catch(pe){G.status="error",G.value=pe}return G}p.resolve=H;function H(d){return d instanceof this?d:l.resolve(new this(a),d)}p.reject=V;function V(d){var q=new this(a);return l.reject(q,d)}p.all=B;function B(d){var q=this;if(Object.prototype.toString.call(d)!=="[object Array]")return this.reject(new TypeError("must be an array"));var G=d.length,pe=!1;if(!G)return this.resolve([]);for(var Ee=new Array(G),Te=0,oe=-1,_e=new this(a);++oe<G;)We(d[oe],oe);return _e;function We(He,ie){q.resolve(He).then(Se,function(ue){pe||(pe=!0,l.reject(_e,ue))});function Se(ue){Ee[ie]=ue,++Te===G&&!pe&&(pe=!0,l.resolve(_e,Ee))}}}p.race=M;function M(d){var q=this;if(Object.prototype.toString.call(d)!=="[object Array]")return this.reject(new TypeErLine truncated
|
|
|
|
|
`):h)),u};var mt=/^(?:focusinfocus|focusoutblur)$/,yt=function(h){h.stopPropagation()};d.extend(d.event,{trigger:function(h,u,m,g){var x,v,Q,C,R,Y,F,te,I=[m||X],ce=f.call(h,"type")?h.type:h,Ie=f.call(h,"namespace")?h.namespace.split("."):[];if(v=te=Q=m=m||X,!(m.nodeType===3||m.nodeType===8)&&!mt.test(ce+d.event.triggered)&&(ce.indexOf(".")>-1&&(Ie=ce.split("."),ce=Ie.shift(),Ie.sort()),R=ce.indexOf(":")<0&&"on"+ce,h=h[d.expando]?h:new d.Event(ce,typeof h=="object"&&h),h.isTrigger=g?2:3,h.namespace=Ie.join("."),h.rnamespace=h.namespace?new RegExp("(^|\\.)"+Ie.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h.result=void 0,h.target||(h.target=m),u=u==null?[h]:d.makeArray(u,[h]),F=d.event.special[ce]||{},!(!g&&F.trigger&&F.trigger.apply(m,u)===!1))){if(!g&&!F.noBubble&&!P(m)){for(C=F.delegateType||ce,mt.test(C+ce)||(v=v.parentNode);v;v=v.parentNode)I.push(v),Q=v;Q===(m.ownerDocument||X)&&I.push(Q.defaultView||Q.parentWindow||i)}for(x=0;(v=I[x++])&&!h.isPropagationStopped();)te=v,h.type=x>1?C:F.bindType||ce,Y=(Pe.get(v,"events")||Object.create(null))[h.type]&&Pe.get(v,"handle"),Y&&Y.apply(v,u),Y=R&&v[R],Y&&Y.apply&&ur(v)&&(h.result=Y.apply(v,u),h.result===!1&&h.preventDefault());return h.type=ce,!g&&!h.isDefaultPrevented()&&(!F._default||F._default.apply(I.pop(),u)===!1)&&ur(m)&&R&&y(m[ce])&&!P(m)&&(Q=m[R],Q&&(m[R]=null),d.event.triggered=ce,h.isPropagationStopped()&&te.addEventListener(ce,yt),m[ce](),h.isPropagationStopped()&&te.removeEventListener(ce,yt),d.event.triggered=void 0,Q&&(m[R]=Q)),h.result}},simulate:function(h,u,m){var g=d.extend(new d.Event,m,{type:h,isSimulated:!0});d.event.trigger(g,null,u)}}),d.fn.extend({trigger:function(h,u){return this.each(function(){d.event.trigger(h,u,this)})},triggerHandler:function(h,u){var m=this[0];if(m)return d.event.trigger(h,u,m,!0)}});var oi=/\[\]$/,Vt=/\r?\n/g,Ua=/^(?:submit|button|image|reset|file)$/i,Oi=/^(?:input|select|textarea|keygen)/i;function Mu(h,u,m,g){var x;if(Array.isArray(u))d.each(u,function(v,Q){m||oi.test(h)?g(h,Q):Mu(h+"["+(typeof Q=="object"&&Q!=null?v:"")+"]",Q,m,g)});else if(!m&&V(u)==="object")for(x in u)Mu(h+"["+x+"]",u[x],m,g);else g(h,u)}d.param=function(h,u){var m,g=[],x=function(v,Q){var C=y(Q)?Q():Q;g[g.length]=encodeURIComponent(v)+"="+encodeURIComponent(C==null?"":C)};if(h==null)return"";if(Array.isArray(h)||h.jquery&&!d.isPlainObject(h))d.each(h,function(){x(this.name,this.value)});else for(m in h)Mu(m,h[m],u,x);return g.join("&")},d.fn.extend({serialize:function(){return d.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var h=d.prop(this,"elements");return h?d.makeArray(h):this}).filter(function(){var h=this.type;return this.name&&!d(this).is(":disabled")&&Oi.test(this.nodeName)&&!Ua.test(h)&&(this.checked||!si.test(h))}).map(function(h,u){var m=d(this).val();return m==null?null:Array.isArray(m)?d.map(m,function(g){return{name:u.name,value:g.replace(Vt,`\r
|
|
|
|
|
`)}}):{name:u.name,value:m.replace(Vt,`\r
|
|
|
|
|
`)}}).get()}});var tP=/%20/g,iP=/#.*$/,rP=/([?&])_=[^&]*/,nP=/^(.*?):[ \t]*([^\r\n]*)$/mg,sP=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,oP=/^(?:GET|HEAD)$/,aP=/^\/\//,d0={},ju={},p0="*/".concat("*"),Wu=X.createElement("a");Wu.href=$e.href;function m0(h){return function(u,m){typeof u!="string"&&(m=u,u="*");var g,x=0,v=u.toLowerCase().match(_i)||[];if(y(m))for(;g=v[x++];)g[0]==="+"?(g=g.slice(1)||"*",(h[g]=h[g]||[]).unshift(m)):(h[g]=h[g]||[]).push(m)}}function g0(h,u,m,g){var x={},v=h===ju;function Q(C){var R;return x[C]=!0,d.each(h[C]||[],function(Y,F){var te=F(u,m,g);if(typeof te=="string"&&!v&&!x[te])return u.dataTypes.unshift(te),Q(te),!1;if(v)return!(R=te)}),R}return Q(u.dataTypes[0])||!x["*"]&&Q("*")}function Vu(h,u){var m,g,x=d.ajaxSettings.flatOptions||{};for(m in u)u[m]!==void 0&&((x[m]?h:g||(g={}))[m]=u[m]);return g&&d.extend(!0,h,g),h}function lP(h,u,m){for(var g,x,v,Q,C=h.contents,R=h.dataTypes;R[0]==="*";)R.shift(),g===void 0&&(g=h.mimeType||u.getResponseHeader("Content-Type"));if(g){for(x in C)if(C[x]&&C[x].test(g)){R.unshift(x);break}}if(R[0]in m)v=R[0];else{for(x in m){if(!R[0]||h.converters[x+" "+R[0]]){v=x;break}Q||(Q=x)}v=v||Q}if(v)return v!==R[0]&&R.unshift(v),m[v]}function cP(h,u,m,g){var x,v,Q,C,R,Y={},F=h.dataTypes.slice();if(F[1])for(Q in h.converters)Y[Q.toLowerCase()]=h.converters[Q];for(v=F.shift();v;)if(h.responseFields[v]&&(m[h.responseFields[v]]=u),!R&&g&&h.dataFilter&&(u=h.dataFilter(u,h.dataType)),R=v,v=F.shift(),v){if(v==="*")v=R;else if(R!=="*"&&R!==v){if(Q=Y[R+" "+v]||Y["* "+v],!Q){for(x in Y)if(C=x.split(" "),C[1]===v&&(Q=Y[R+" "+C[0]]||Y["* "+C[0]],Q)){Q===!0?Q=Y[x]:Y[x]!==!0&&(v=C[0],F.unshift(C[1]));break}}if(Q!==!0)if(Q&&h.throws)u=Q(u);else try{u=Q(u)}catch(te){return{state:"parsererror",error:Q?te:"No conversion from "+R+" to "+v}}}}return{state:"success",data:u}}d.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:$e.href,type:"GET",isLocal:sP.test($e.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":p0,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":d.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(h,u){return u?Vu(Vu(h,d.ajaxSettings),u):Vu(d.ajaxSettings,h)},ajaxPrefilter:m0(d0),ajaxTransport:m0(ju),ajax:function(h,u){typeof h=="object"&&(u=h,h=void 0),u=u||{};var m,g,x,v,Q,C,R,Y,F,te,I=d.ajaxSetup({},u),ce=I.context||I,Ie=I.context&&(ce.nodeType||ce.jquery)?d(ce):d.event,ht=d.Deferred(),Be=d.Callbacks("once memory"),di=I.statusCode||{},Jt={},ln={},cn="canceled",ot={readyState:0,getResponseHeader:function(dt){var Yt;if(R){if(!v)for(v={};Yt=nP.exec(x);)v[Yt[1].toLowerCase()+" "]=(v[Yt[1].toLowerCase()+" "]||[]).concat(Yt[2]);Yt=v[dt.toLowerCase()+" "]}return Yt==null?null:Yt.join(", ")},getAllResponseHeaders:function(){return R?x:null},setRequestHeader:function(dt,Yt){return R==null&&(dt=ln[dt.toLowerCase()]=ln[dt.toLowerCase()]||dt,Jt[dt]=Yt),this},overrideMimeType:function(dt){return R==null&&(I.mimeType=dt),this},statusCode:function(dt){var Yt;if(dt)if(R)ot.always(dt[ot.status]);else for(Yt in dt)di[Yt]=[di[Yt],dt[Yt]];return this},abort:function(dt){var Yt=dt||cn;return m&&m.abort(Yt),Gs(0,Yt),this}};if(ht.promise(ot),I.url=((h||I.url||$e.href)+"").replace(aP,$e.protocol+"//"),I.type=u.method||u.type||I.method||I.type,I.dataTypes=(I.dataType||"*").toLowerCase().match(_i)||[""],I.crossDomain==null){C=X.createElement("a");try{C.href=I.url,C.href=C.href,I.crossDomain=Wu.protocol+"//"+Wu.host!=C.protocol+"//"+C.host}catch(dt){I.crossDomain=!0}}if(I.data&&I.processData&&typeof I.data!="string"&&(I.data=d.param(I.data,I.traditional)),g0(d0,I,u,ot),R)return ot;Y=d.event&&I.global,Y&&d.active++===0&&d.event.trigger("ajaxStart"),I.type=I.type.toUpperCase(),I.hasContent=!oP.test(I.type),g=I.url.replace(iP,""),I.hasContent?I.data&&I.processData&&(I.contentType||"").indexOf("application/x-www-form-urlencoded")===0&&(I.data=I.data.replace(tP,"+")):(te=I.url.slice(g.length),I.data&&(I.processData||typeof I.data=="string")&&(g+=(Me.test(g)?"&":"?")+I.data,delete I.data),I.cache===!1&&(g=g.replace(rP,"$1"),te=(Me.test(g)?"&":"?")+"_="+Ce.guid+++te),I.url=g+te),I.ifModified&&(d.lastModified[g]&&ot.setRequestHeader("If-Modified-Since",d.lastModified[g]),d.etag[g]&&ot.setRequestHeader("If-None-Match",d.etag[g])),(I.data&&I.hasContent&&I.contentType!==!1||u.contentType)&&ot.setRequestHeader("Content-Type",I.contentType),ot.setRequestHeader("Accept",I.dataTypes[0]&&I.accepts[I.dataTypes[0]]?I.accepts[I.dataTypes[0]]+(I.dataTypes[0]!=="*"?", "+p0+"; q=0.01":""):I.accepts["*"]);for(F in I.headers)ot.setRequestHeader(F,I.headers[F]);if(I.beforeSend&&(I.beforeSend.call(ce,ot,I)===!1||R))return ot.abort();if(cn="ab
Line truncated
|
|
|
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kU(i,e){return wU(i)||$U(i,e)||TU(i,e)||PU()}function TU(i,e){if(i){if(typeof i=="string")return u1(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?u1(i,e):void 0}}var k1=Object.entries,O1=Object.setPrototypeOf,XU=Object.isFrozen,_U=Object.getPrototypeOf,RU=Object.getOwnPropertyDescriptor,xi=Object.freeze,vi=Object.seal,Xa=Object.create,T1=typeof Reflect!="undefined"&&Reflect,Kg=T1.apply,Jg=T1.construct;xi||(xi=function(e){return e});vi||(vi=function(e){return e});Kg||(Kg=function(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),s=2;s<r;s++)n[s-2]=arguments[s];return e.apply(t,n)});Jg||(Jg=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return new e(...r)});var ka=Ft(Array.prototype.forEach),CU=Ft(Array.prototype.lastIndexOf),d1=Ft(Array.prototype.pop),Ta=Ft(Array.prototype.push),ZU=Ft(Array.prototype.splice),Es=Array.isArray,Oc=Ft(String.prototype.toLowerCase),Ng=Ft(String.prototype.toString),p1=Ft(String.prototype.match),fc=Ft(String.prototype.replace),m1=Ft(String.prototype.indexOf),AU=Ft(String.prototype.trim),EU=Ft(Number.prototype.toString),UU=Ft(Boolean.prototype.toString),g1=typeof BigInt=="undefined"?null:Ft(BigInt.prototype.toString),b1=typeof Symbol=="undefined"?null:Ft(Symbol.prototype.toString),li=Ft(Object.prototype.hasOwnProperty),uc=Ft(Object.prototype.toString),ai=Ft(RegExp.prototype.test),Zo=zU(TypeError);function Ft(i){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return Kg(i,e,r)}}function zU(i){return function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return Jg(i,t)}}function Ot(i,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Oc;if(O1&&O1(i,null),!Es(e))return i;let r=e.length;for(;r--;){let n=e[r];if(typeof n=="string"){let s=t(n);s!==n&&(XU(e)||(e[r]=s),n=s)}i[n]=!0}return i}function YU(i){for(let e=0;e<i.length;e++)li(i,e)||(i[e]=null);return i}function Xi(i){let e=Xa(null);for(let r of k1(i)){var t=kU(r,2);let n=t[0],s=t[1];li(i,n)&&(Es(s)?e[n]=YU(s):s&&typeof s=="object"&&s.constructor===Object?e[n]=Xi(s):e[n]=s)}return e}function LU(i){switch(typeof i){case"string":return i;case"number":return EU(i);case"boolean":return UU(i);case"bigint":return g1?g1(i):"0";case"symbol":return b1?b1(i):"Symbol()";case"undefined":return uc(i);case"function":case"object":{if(i===null)return uc(i);let e=i,t=en(e,"toString");if(typeof t=="function"){let r=t(e);return typeof r=="string"?r:uc(r)}return uc(i)}default:return uc(i)}}function en(i,e){for(;i!==null;){let r=RU(i,e);if(r){if(r.get)return Ft(r.get);if(typeof r.value=="function")return Ft(r.value)}i=_U(i)}function t(){return null}return t}function MU(i){try{return ai(i,""),!0}catch(e){return!1}}var x1=xi(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Fg=xi(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Bg=xi(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),jU=xi(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-gly
Line truncated
|
|
|
|
|
`+yt),Pe&&(yt=br(yt)),q&&Zi?_e(yt):yt},e.setConfig=function(){let re=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Cn(re),ns=!0,kn=gt,sn=St},e.clearConfig=function(){Ei=null,ns=!1,kn=null,sn=null,q=pe,G=""},e.isValidAttribute=function(re,k,W){Ei||Cn({});let ne=$t(re),$e=$t(k);return se(ne,$e,W)},e.addHook=function(re,k){typeof k=="function"&&li(Le,re)&&Ta(Le[re],k)},e.removeHook=function(re,k){if(li(Le,re)){if(k!==void 0){let W=CU(Le[re],k);return W===-1?void 0:ZU(Le[re],W,1)[0]}return d1(Le[re])}},e.removeHooks=function(re){li(Le,re)&&(Le[re]=[])},e.removeAllHooks=function(){Le=P1()},e}var i5=X1();_1.exports=i5});var o0=Ju(lO());var Pt=[/^\s*[.#%]?(include|incbin|embed)\s+"(.+?)"/gmi,/^\s*([;']|[/][/])#(resource)\s+"(.+?)"/gm],Ct=[/^\s*([;]|[/][/])#link\s+"(.+?)"/gm],Ia=[/^\s*(`include|[.]include)\s+"(.+?)"/gmi,/^\s*\$(include|\$dofile|\$write_image_in_table)\('(.+?)'/gmi,{re:/^\s*([.]arch)\s+(\w+)/gmi,suffix:".json"},/\$readmem[bh]\("(.+?)"/gmi],wP=[{re:/^\s*[.#%]?\s*include\s+<(.+?)>/gmi,system:!0}];function A0(i){let e=i&&dn(i);return e&&e.includeDirs&&e.includeDirs.length?wP:[]}var C0=[/^\s+(USE|ASM)\s+(\S+[.]\S+)/gm],$P=[/^[!]src\s+"(.+?)"/gmi],PP=[{re:/^\s*import\s*"(.+?)";/gmi,suffix:".wiz"},/^\s*embed\s*"(.+?)";/gmi],kP=[/^\s*(import)\s*"(.+?)"/gmi],TP=[/^\s*%%\s*#include\s+"(.+?)"/gm],Z0={apple2:{preloadFS:"65-apple2"},c64:{preloadFS:"65-c64"},vic20:{preloadFS:"65-vic20"},nes:{preloadFS:"65-nes"},atari8:{preloadFS:"65-atari8"},vector:{preloadFS:"65-none"},atari7800:{preloadFS:"65-none"},devel:{preloadFS:"65-none"},vcs:{preloadFS:"65-atari2600"},pce:{preloadFS:"65-pce"},exidy:{preloadFS:"65-none"}},XP={dasm:{id:"dasm",name:"DASM",kind:"assembler",arch:"6502",extensions:[".dasm"],editorStyle:"6502",helpURL:"https://raw.githubusercontent.com/sehugg/dasm/master/doc/dasm.txt",wasmModule:"dasm-wasisdk",includePatterns:Pt,linkPatterns:Ct},acme:{id:"acme",name:"ACME",kind:"assembler",arch:"6502",extensions:[".acme"],editorStyle:"6502",helpURL:"https://raw.githubusercontent.com/sehugg/acme/main/docs/QuickRef.txt",wasmModule:"acme",includePatterns:[...Pt,...$P],linkPatterns:Ct},xa:{id:"xa",name:"XA",kind:"assembler",arch:"6502",extensions:[".xa"],editorStyle:"6502",helpURL:"https://www.floodgap.com/retrotech/xa/",wasmModule:"xa",includePatterns:Pt,linkPatterns:Ct},nesasm:{id:"nesasm",name:"NESASM",kind:"assembler",arch:"6502",extensions:[".nesasm"],editorStyle:"6502",wasmModule:"nesasm",includePatterns:Pt,linkPatterns:Ct},merlin32:{id:"merlin32",name:"Merlin 32",kind:"assembler",arch:"6502",extensions:[".lnk"],editorStyle:"6502",wasmModule:"merlin32",includePatterns:[...Pt,...C0],linkPatterns:Ct},cc65:{id:"cc65",name:"cc65",kind:"compiler",arch:"6502",extensions:[".c",".h"],includeDirs:["/include","/asminc"],editorStyle:"text/x-csrc",helpURL:"https://cc65.github.io/doc/cc65.html",wasmModule:"cc65",platforms:Z0,includePatterns:Pt,linkPatterns:Ct},ca65:{id:"ca65",name:"ca65",kind:"assembler",arch:"6502",extensions:[".s",".ca65"],includeDirs:["/include","/asminc"],editorStyle:"6502",helpURL:"https://cc65.github.io/doc/ca65.html",wasmModule:"ca65",platforms:Z0,includePatterns:Pt,linkPatterns:Ct},ld65:{id:"ld65",name:"ld65",kind:"linker",arch:"6502",extensions:[],wasmModule:"ld65"},sdcc:{id:"sdcc",name:"SDCC",kind:"compiler",arch:"z80",extensions:[".c",".h"],includeDirs:["/include"],editorStyle:"text/x-csrc",helpURL:"http://sdcc.sourceforge.net/doc/sdccman.pdf",wasmModule:"sdcc",platforms:{default:{preloadFS:"sdcc"}},includePatterns:Pt,linkPatterns:Ct},sdasz80:{id:"sdasz80",name:"sdasz80",kind:"assembler",arch:"z80",extensions:[".s"],includeDirs:["/include"],editorStyle:"z80",wasmModule:"sdasz80",platforms:{default:{preloadFS:"sdcc"}},includePatterns:Pt,linkPatterns:Ct},sdasgb:{id:"sdasgb",name:"sdasgb",kind:"assembler",arch:"gbz80",extensions:[".sgb"],includeDirs:["/include"],editorStyle:"z80",wasmModule:"sdasgb",platforms:{default:{preloadFS:"sdcc"}},includePatterns:Pt,linkPatterns:Ct},sdldz80:{id:"sdldz80",name:"sdldz80",kind:"linker",arch:"z80",extensions:[],wasmModule:"sdldz80"},sccz80:{id:"sccz80",name:"sccz80",kind:"compiler",arch:"z80",extensions:[".scc"],platforms:{default:{preloadFS:"sccz80"}},noWorkerBuild:!0},naken:{id:"naken",name:"Naken",kind:"assembler",extensions:[".ns"],noWorkerBuild:!0},zmac:{id:"zmac",name:"zmac",kind:"assembler",arch:"z80",extensions:[".z"],editorStyle:"z80",helpURL:"https://raw.githubusercontent.com/sehugg/zmac/master/doc.txt",wasmModule:"zmac",includePatterns:Pt,linkPatterns:Ct},jsasm:{id:"jsasm",name:"JSASM",kind:"assembler",extensions:[".asm"],editorStyle:"z80",includePatterns:Ia,linkPatterns:[]},xasm6809:{id:"xasm6809",name:"XASM6809",kind:"assembler",arch:"6809",extensions:[".xasm"],editorStyle:"6809",wasmModule:"xasm6809",includePatterns:[...Pt,...C0],linkPatterns:Ct},cmoc:{id:"cmoc",name:"CMOC",kind:"compiler",arch:"6809",extensions:[".c",".h"],editorStyle:"text/x-csrc",helpURL:"http://perso.b2b2c.ca/~sarrazip/dev/cmoc.html",wasmModule:"cmoc",includePatteLine truncated
|
|
|
|
|
`){[e,t]=Fo(this,e,t);let n="";for(let s=0,o=0;s<=t&&o<this.text.length;o++){let a=this.text[o],l=s+a.length;s>e&&o&&(n+=r),e<l&&t>s&&(n+=a.slice(Math.max(0,e-s),t-s)),s=l+1}return n}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let r=[],n=-1;for(let s of e)r.push(s),n+=s.length+1,r.length==32&&(t.push(new i(r,n)),r=[],n=-1);return n>-1&&t.push(new i(r,n)),t}},Do=class i extends rt{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let r of e)this.lines+=r.lines}lineInner(e,t,r,n){for(let s=0;;s++){let o=this.children[s],a=n+o.length,l=r+o.lines-1;if((t?l:a)>=e)return o.lineInner(e,t,r,n);n=a+1,r=l+1}}decompose(e,t,r,n){for(let s=0,o=0;o<=t&&s<this.children.length;s++){let a=this.children[s],l=o+a.length;if(e<=l&&t>=o){let c=n&((o<=e?1:0)|(l>=t?2:0));o>=e&&l<=t&&!c?r.push(a):a.decompose(e-o,t-o,r,c)}o=l+1}}replace(e,t,r){if([e,t]=Fo(this,e,t),r.lines<this.lines)for(let n=0,s=0;n<this.children.length;n++){let o=this.children[n],a=s+o.length;if(e>=s&&t<=a){let l=o.replace(e-s,t-s,r),c=this.lines-o.lines+l.lines;if(l.lines<c>>4&&l.lines>c>>6){let f=this.children.slice();return f[n]=l,new i(f,this.length-(t-e)+r.length)}return super.replace(s,a,l)}s=a+1}return super.replace(e,t,r)}sliceString(e,t=this.length,r=`
|
|
|
|
|
`){[e,t]=Fo(this,e,t);let n="";for(let s=0,o=0;s<this.children.length&&o<=t;s++){let a=this.children[s],l=o+a.length;o>e&&s&&(n+=r),e<l&&t>o&&(n+=a.sliceString(e-o,t-o,r)),o=l+1}return n}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof i))return 0;let r=0,[n,s,o,a]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;n+=t,s+=t){if(n==o||s==a)return r;let l=this.children[n],c=e.children[s];if(l!=c)return r+l.scanIdentical(c,t);r+=l.length+1}}static from(e,t=e.reduce((r,n)=>r+n.length+1,-1)){let r=0;for(let b of e)r+=b.lines;if(r<32){let b=[];for(let y of e)y.flatten(b);return new ir(b,t)}let n=Math.max(32,r>>5),s=n<<1,o=n>>1,a=[],l=0,c=-1,f=[];function O(b){let y;if(b.lines>s&&b instanceof i)for(let P of b.children)O(P);else b.lines>o&&(l>o||!l)?(p(),a.push(b)):b instanceof ir&&l&&(y=f[f.length-1])instanceof ir&&b.lines+y.lines<=32?(l+=b.lines,c+=b.length+1,f[f.length-1]=new ir(y.text.concat(b.text),y.length+1+b.length)):(l+b.lines>n&&p(),l+=b.lines,c+=b.length+1,f.push(b))}function p(){l!=0&&(a.push(f.length==1?f[0]:i.from(f,c)),c=-1,l=f.length=0)}for(let b of e)O(b);return p(),a.length==1?a[0]:new i(a,t)}};rt.empty=new ir([""],0);function ZP(i){let e=-1;for(let t of i)e+=t.length+1;return e}function Lc(i,e,t=0,r=1e9){for(let n=0,s=0,o=!0;s<i.length&&n<=r;s++){let a=i[s],l=n+a.length;l>=t&&(l>r&&(a=a.slice(0,r-n)),n<t&&(a=a.slice(t-n)),o?(e[e.length-1]+=a,o=!1):e.push(a)),n=l+1}return e}function I0(i,e,t){return Lc(i,[""],e,t)}var io=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof ir?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let r=this.nodes.length-1,n=this.nodes[r],s=this.offsets[r],o=s>>1,a=n instanceof ir?n.text.length:n.children.length;if(o==(t>0?a:0)){if(r==0)return this.done=!0,this.value="",this;t>0&&this.offsets[r-1]++,this.nodes.pop(),this.offsets.pop()}else if((s&1)==(t>0?0:1)){if(this.offsets[r]+=t,e==0)return this.lineBreak=!0,this.value=`
|
|
|
|
|
`,this;e--}else if(n instanceof ir){let l=n.text[o+(t<0?-1:0)];if(this.offsets[r]+=t,l.length>Math.max(0,e))return this.value=e==0?l:t>0?l.slice(e):l.slice(0,l.length-e),this;e-=l.length}else{let l=n.children[o+(t<0?-1:0)];e>l.length?(e-=l.length,this.offsets[r]+=t):(t<0&&this.offsets[r]--,this.nodes.push(l),this.offsets.push(t>0?1:(l instanceof ir?l.text.length:l.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},Mc=class{constructor(e,t,r){this.value="",this.done=!1,this.cursor=new io(e,t>r?-1:1),this.pos=t>r?e.length:0,this.from=Math.min(t,r),this.to=Math.max(t,r)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let r=t<0?this.pos-this.from:this.to-this.pos;e>r&&(e=r),r-=e;let{value:n}=this.cursor.next(e);return this.pos+=(n.length+e)*t,this.value=n.length<=r?n:t<0?n.slice(n.length-r):n.slice(0,r),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},jc=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:r,value:n}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):r?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=n,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol!="undefined"&&(rt.prototype[Symbol.iterator]=function(){return this.iter()},io.prototype[Symbol.iterator]=Mc.prototype[Symbol.iterator]=jc.prototype[Symbol.iterator]=function(){return this});var dO=class{constructor(e,t,r,n){this.from=e,this.to=t,this.number=r,this.text=n}get length(){return this.to-this.from}};function Fo(i,e,t){return e=Math.max(0,Math.min(i.length,e)),[e,Math.max(e,Math.min(i.length,t))]}function Mt(i,e,t=!0,r=!0){return W0(i,e,t,r)}function AP(i){return i>=56320&&i<57344}function EP(i){return i>=55296&&i<56320}function Vr(i,e){let t=i.charCodeAt(e);if(!EP(t)||e+1==i.length)return t;let r=i.charCodeAt(e+1);return AP(r)?(t-55296<<10)+(r-56320)+65536:t}function Ic(i){return i<=65535?String.fromCharCode(i):(i-=65536,String.fromCharCode((i>>10)+55296,(i&1023)+56320))}function ds(i){return i<65536?1:2}var pO=/\r\n?|\n/,ei=(function(i){return i[i.Simple=0]="Simple",i[i.TrackDel=1]="TrackDel",i[i.TrackBefore=2]="TrackBefore",i[i.TrackAfter=3]="TrackAfter",i})(ei||(ei={})),Yn=class i{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let r=this.sections[t+1];e+=r<0?this.sections[t]:r}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,r=0,n=0;t<this.sections.length;){let s=this.sections[t++],o=this.sections[t++];o<0?(e(r,n,s),n+=s):n+=o,r+=s}}iterChangedRanges(e,t=!1){mO(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let r=this.sections[t++],n=this.sections[t++];n<0?e.push(r,n):e.push(n,r)}return new i(e)}composeDesc(e){return this.empty?e:e.empty?this:H0(this,e)}mapDesc(e,t=!1){return e.empty?this:gO(this,e,t)}mapPos(e,t=-1,r=ei.Simple){let n=0,s=0;for(let o=0;o<this.sections.length;){let a=this.sections[o++],l=this.sections[o++],c=n+a;if(l<0){if(c>e)return s+(e-n);s+=a}else{if(r!=ei.Simple&&c>=e&&(r==ei.TrackDel&&n<e&&c>e||r==ei.TrackBefore&&n<e||r==ei.TrackAfter&&c>e))return null;if(c>e||c==e&&t<0&&!a)return e==n||t<0?s:s+l;s+=l}n=c}if(e>n)throw new RangeError(`Position ${e} is out of range for changeset of length ${n}`);return s}touchesRange(e,t=e){for(let r=0,n=0;r<this.sections.length&&n<=t;){let s=this.sections[r++],o=this.sections[r++],a=n+s;if(o>=0&&n<=t&&a>=e)return n<e&&a>t?"cover":!0;n=a}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let r=this.sections[t++],n=this.sections[t++];e+=(e?" ":"")+r+(n>=0?":"+n:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new i(e)}static create(e){return new i(e)}},Yi=class i extends Yn{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return mO(this,(t,r,n,s,o)=>e=e.replace(n,n+(r-t),o),!1),e}mapDesc(e,t=!1){return gO(this,e,t,!0)}invert(e){let t=this.sections.slice(),r=[];for(let n=0,s=0;n<t.length;n+=2){let o=t[n],a=t[n+1];if(a>=0){t[n]=a,t[n+1]=o;let l=n>>1;for(;r.length<l;)r.push(rt.empty);r.push(o?e.slice(s,s+o):rt.empty)}s+=o}return new i(t,r)}compose(e){return this.empty?e:e.empty?this:H0(this,e,!0)}map(e,t=!1){return e.empty?this:gO(this,e,t,!0)}iterChanges(e,t=!1){mO(this,e,t)}get desc
Line truncated
|
|
|
|
|
`}get readOnly(){return this.facet(nb)}phrase(e,...t){for(let r of this.facet(i.phrases))if(Object.prototype.hasOwnProperty.call(r,e)){e=r[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(r,n)=>{if(n=="$")return"$";let s=+(n||1);return!s||s>t.length?r:t[s-1]})),e}languageDataAt(e,t,r=-1){let n=[];for(let s of this.facet(J0))for(let o of s(this,t,r))Object.prototype.hasOwnProperty.call(o,e)&&n.push(o[e]);return n}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return qP(t.length?t[0]:"")}wordAt(e){let{text:t,from:r,length:n}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-r,a=e-r;for(;o>0;){let l=Mt(t,o,!1);if(s(t.slice(l,o))!=Qt.Word)break;o=l}for(;a<n;){let l=Mt(t,a);if(s(t.slice(a,l))!=Qt.Word)break;a=l}return o==a?null:K.range(o+r,a+r)}};Je.allowMultipleSelections=xO;Je.tabSize=be.define({combine:i=>i.length?i[0]:4});Je.lineSeparator=eb;Je.readOnly=nb;Je.phrases=be.define({compare(i,e){let t=Object.keys(i),r=Object.keys(e);return t.length==r.length&&t.every(n=>i[n]==e[n])}});Je.languageData=J0;Je.changeFilter=tb;Je.transactionFilter=ib;Je.transactionExtender=rb;Li.reconfigure=Ze.define();function rr(i,e,t={}){let r={};for(let n of i)for(let s of Object.keys(n)){let o=n[s],a=r[s];if(a===void 0)r[s]=o;else if(!(a===o||o===void 0))if(Object.hasOwnProperty.call(t,s))r[s]=t[s](a,o);else throw new Error("Config merge conflict for field "+s)}for(let n in e)r[n]===void 0&&(r[n]=e[n]);return r}var yr=class{eq(e){return this==e}range(e,t=e){return Ga.create(e,t,this)}};yr.prototype.startSide=yr.prototype.endSide=0;yr.prototype.point=!1;yr.prototype.mapMode=ei.TrackDel;function XO(i,e){return i==e||i.constructor==e.constructor&&i.eq(e)}var Ga=class i{constructor(e,t,r){this.from=e,this.to=t,this.value=r}static create(e,t,r){return new i(e,t,r)}};function wO(i,e){return i.from-e.from||i.value.startSide-e.value.startSide}var $O=class i{constructor(e,t,r,n){this.from=e,this.to=t,this.value=r,this.maxPoint=n}get length(){return this.to[this.to.length-1]}findIndex(e,t,r,n=0){let s=r?this.to:this.from;for(let o=n,a=s.length;;){if(o==a)return o;let l=o+a>>1,c=s[l]-e||(r?this.value[l].endSide:this.value[l].startSide)-t;if(l==o)return c>=0?o:a;c>=0?a=l:o=l+1}}between(e,t,r,n){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(r,1e9,!1,s);s<o;s++)if(n(this.from[s]+e,this.to[s]+e,this.value[s])===!1)return!1}map(e,t){let r=[],n=[],s=[],o=-1,a=-1;for(let l=0;l<this.value.length;l++){let c=this.value[l],f=this.from[l]+e,O=this.to[l]+e,p,b;if(f==O){let y=t.mapPos(f,c.startSide,c.mapMode);if(y==null||(p=b=y,c.startSide!=c.endSide&&(b=t.mapPos(f,c.endSide),b<p)))continue}else if(p=t.mapPos(f,c.startSide),b=t.mapPos(O,c.endSide),p>b||p==b&&c.startSide>0&&c.endSide<=0)continue;(b-p||c.endSide-c.startSide)<0||(o<0&&(o=p),c.point&&(a=Math.max(a,b-p)),r.push(c),n.push(p-o),s.push(b-o))}return{mapped:r.length?new i(n,s,r,a):null,pos:o}}},qe=class i{constructor(e,t,r,n){this.chunkPos=e,this.chunk=t,this.nextLayer=r,this.maxPoint=n}static create(e,t,r,n){return new i(e,t,r,n)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:r=!1,filterFrom:n=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(r&&(t=t.slice().sort(wO)),this.isEmpty)return t.length?i.of(t):this;let a=new Dc(this,null,-1).goto(0),l=0,c=[],f=new Wr;for(;a.value||l<t.length;)if(l<t.length&&(a.from-t[l].from||a.startSide-t[l].value.startSide)>=0){let O=t[l++];f.addInner(O.from,O.to,O.value)||c.push(O)}else a.rangeIndex==1&&a.chunkIndex<this.chunk.length&&(l==t.length||this.chunkEnd(a.chunkIndex)<t[l].from)&&(!o||n>this.chunkEnd(a.chunkIndex)||s<this.chunkPos[a.chunkIndex])&&f.addChunk(this.chunkPos[a.chunkIndex],this.chunk[a.chunkIndex])?a.nextChunk():((!o||n>a.to||s<a.from||o(a.from,a.to,a.value))&&(f.addInner(a.from,a.to,a.value)||c.push(Ga.create(a.from,a.to,a.value))),a.next());return f.finishInner(this.nextLayer.isEmpty&&!c.length?i.empty:this.nextLayer.update({add:c,filter:o,filterFrom:n,filterTo:s}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],r=[],n=-1;for(let o=0;o<this.chunk.length;o++){let a=this.chunkPos[o],l=this.chunk[o],c=e.touchesRange(a,a+l.length);if(c===!1)n=Math.max(n,l.maxPoint),t.push(l),r.push(e.mapPos(a));else if(c===!0){let{mapped:f,pos:O}=l.map(a,e);f&&(n=Math.max(n,f.maxPoint),t.push(f),r.push(O))}}let s=this.nextLayer.map(e);return t.length==0?s:new i(r,t,s||i.empty,n)}between(e,t,r){if(!this.isEmpty){for(let n=0;n<this.chunk.length;n++){let s=this.chunkPos[n],o=this.chunk[n];if(t>=s&&e<=s+o.length&&o.between(s,e-s,t-s,r)===!1)return}this.nextLayer.between(e,t,r)}}iter(e=0){return Ha.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Ha.from(e).goto(t)}static compare(e,t,r,n,s=-1){let o=e.filter(O=>O.maxPoint>0||!O.is
Line truncated
|
|
|
|
|
`)}static newName(){let e=lb[ab]||1;return lb[ab]=e+1,"\u037C"+e.toString(36)}static mount(e,t,r){let n=e[_O],s=r&&r.nonce;n?s&&n.setNonce(s):n=new RO(e,s),n.mount(Array.isArray(t)?t:[t],e)}},cb=new Map,RO=class{constructor(e,t){let r=e.ownerDocument||e,n=r.defaultView;if(!e.head&&e.adoptedStyleSheets&&n.CSSStyleSheet){let s=cb.get(r);if(s)return e[_O]=s;this.sheet=new n.CSSStyleSheet,cb.set(r,this)}else this.styleTag=r.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[_O]=this}mount(e,t){let r=this.sheet,n=0,s=0;for(let o=0;o<e.length;o++){let a=e[o],l=this.modules.indexOf(a);if(l<s&&l>-1&&(this.modules.splice(l,1),s--,l=-1),l==-1){if(this.modules.splice(s++,0,a),r)for(let c=0;c<a.rules.length;c++)r.insertRule(a.rules[c],n++)}else{for(;s<l;)n+=this.modules[s++].rules.length;n+=a.rules.length,s++}}if(r)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let o="";for(let l=0;l<this.modules.length;l++)o+=this.modules[l].getRules()+`
|
|
|
|
|
`;this.styleTag.textContent=o;let a=t.head||t;this.styleTag.parentNode!=a&&a.insertBefore(this.styleTag,a.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}};var Ln={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Bo={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},IP=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),NP=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Dt=0;Dt<10;Dt++)Ln[48+Dt]=Ln[96+Dt]=String(Dt);var Dt;for(Dt=1;Dt<=24;Dt++)Ln[Dt+111]="F"+Dt;var Dt;for(Dt=65;Dt<=90;Dt++)Ln[Dt]=String.fromCharCode(Dt+32),Bo[Dt]=String.fromCharCode(Dt);var Dt;for(Fc in Ln)Bo.hasOwnProperty(Fc)||(Bo[Fc]=Ln[Fc]);var Fc;function hb(i){var e=IP&&i.metaKey&&i.shiftKey&&!i.ctrlKey&&!i.altKey||NP&&i.shiftKey&&i.key&&i.key.length==1||i.key=="Unidentified",t=!e&&i.key||(i.shiftKey?Bo:Ln)[i.keyCode]||i.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function jt(){var i=arguments[0];typeof i=="string"&&(i=document.createElement(i));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var n=t[r];typeof n=="string"?i.setAttribute(r,n):n!=null&&(i[r]=n)}e++}for(;e<arguments.length;e++)fb(i,arguments[e]);return i}function fb(i,e){if(typeof e=="string")i.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)i.appendChild(e);else if(Array.isArray(e))for(var t=0;t<e.length;t++)fb(i,e[t]);else throw new RangeError("Unsupported child node: "+e)}var ji=typeof navigator!="undefined"?navigator:{userAgent:"",vendor:"",platform:""},jO=typeof document!="undefined"?document:{documentElement:{style:{}}},WO=/Edge\/(\d+)/.exec(ji.userAgent),Gb=/MSIE \d/.test(ji.userAgent),VO=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(ji.userAgent),kh=!!(Gb||VO||WO),ub=!kh&&/gecko\/(\d+)/i.test(ji.userAgent),CO=!kh&&/Chrome\/(\d+)/.exec(ji.userAgent),Ob="webkitFontSmoothing"in jO.documentElement.style,qO=!kh&&/Apple Computer/.test(ji.vendor),db=qO&&(/Mobile\/\w+/.test(ji.userAgent)||ji.maxTouchPoints>2),xe={mac:db||/Mac/.test(ji.platform),windows:/Win/.test(ji.platform),linux:/Linux|X11/.test(ji.platform),ie:kh,ie_version:Gb?jO.documentMode||6:VO?+VO[1]:WO?+WO[1]:0,gecko:ub,gecko_version:ub?+(/Firefox\/(\d+)/.exec(ji.userAgent)||[0,0])[1]:0,chrome:!!CO,chrome_version:CO?+CO[1]:0,ios:db,android:/Android\b/.test(ji.userAgent),webkit:Ob,webkit_version:Ob?+(/\bAppleWebKit\/(\d+)/.exec(ji.userAgent)||[0,0])[1]:0,safari:qO,safari_version:qO?+(/\bVersion\/(\d+(\.\d+)?)/.exec(ji.userAgent)||[0,0])[1]:0,tabSize:jO.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function Ed(i,e){for(let t in i)t=="class"&&e.class?e.class+=" "+i.class:t=="style"&&e.style?e.style+=";"+i.style:e[t]=i[t];return e}var ch=Object.create(null);function Ud(i,e,t){if(i==e)return!0;i||(i=ch),e||(e=ch);let r=Object.keys(i),n=Object.keys(e);if(r.length-(t&&r.indexOf(t)>-1?1:0)!=n.length-(t&&n.indexOf(t)>-1?1:0))return!1;for(let s of r)if(s!=t&&(n.indexOf(s)==-1||i[s]!==e[s]))return!1;return!0}function FP(i,e){for(let t=i.attributes.length-1;t>=0;t--){let r=i.attributes[t].name;e[r]==null&&i.removeAttribute(r)}for(let t in e){let r=e[t];t=="style"?i.style.cssText=r:i.getAttribute(t)!=r&&i.setAttribute(t,r)}}function pb(i,e,t){let r=!1;if(e)for(let n in e)t&&n in t||(r=!0,n=="style"?i.style.cssText="":i.removeAttribute(n));if(t)for(let n in t)e&&e[n]==t[n]||(r=!0,n=="style"?i.style.cssText=t[n]:i.setAttribute(n,t[n]));return r}function BP(i){let e=Object.create(null);for(let t=0;t<i.attributes.length;t++){let r=i.attributes[t];e[r.name]=r.value}return e}var It=class{eq(e){return!1}updateDOM(e,t,r){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,t,r){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}},mi=(function(i){return i[i.Text=0]="Text",i[i.WidgetBefore=1]="WidgetBefore",i[i.WidgetAfter=2]="WidgetAfter",i[i.WidgetRange=3]="WidgetRange",i})(mi||(mi={})),Oe=class extends yr{constructor(e,t,r,n){super(),this.startSide=e,this.enLine truncated
|
|
|
|
|
`,n=i.state.doc.line(n.number+(t?1:-1)),s=i.bidiSpans(n),c=i.visualLineSide(n,!t)}if(l){if(!l(f))return a}else{if(!r)return c;l=r(f)}a=c}}function Tk(i,e,t){let r=i.state.charCategorizer(e),n=r(t);return s=>{let o=r(s);return n==Qt.Space&&(n=o),n==o}}function Xk(i,e,t,r){let n=e.head,s=t?1:-1;if(n==(t?i.state.doc.length:0))return K.cursor(n,e.assoc);let o=e.goalColumn,a,l=i.contentDOM.getBoundingClientRect(),c=i.coordsAtPos(n,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),f=i.documentTop;if(c)o==null&&(o=c.left-l.left),a=s<0?c.top:c.bottom;else{let y=i.viewState.lineBlockAt(n);o==null&&(o=Math.min(l.right-l.left,i.defaultCharacterWidth*(n-y.from))),a=(s<0?y.top:y.bottom)+f}let O=l.left+o,p=i.viewState.heightOracle.textHeight>>1,b=r!=null?r:p;for(let y=0;;y+=p){let P=a+(b+y)*s,X=od(i,{x:O,y:P},!1,s);if(t?P>l.bottom:P<l.top)return K.cursor(X.pos,X.assoc);let E=i.coordsAtPos(X.pos,X.assoc),H=E?(E.top+E.bottom)/2:0;if(!E||(t?H>a:H<a))return K.cursor(X.pos,X.assoc,void 0,o)}}function ol(i,e,t){for(;;){let r=0;for(let n of i)n.between(e-1,e+1,(s,o,a)=>{if(e>s&&e<o){let l=r||t||(e-s<o-e?-1:1);e=l<0?s:o,r=l}});if(!r)return e}}function kx(i,e){let t=null;for(let r=0;r<e.ranges.length;r++){let n=e.ranges[r],s=null;if(n.empty){let o=ol(i,n.from,0);o!=n.from&&(s=K.cursor(o,-1))}else{let o=ol(i,n.from,-1),a=ol(i,n.to,1);(o!=n.from||a!=n.to)&&(n.undirectional?s=K.undirectionalRange(n.from,n.to):s=K.range(n.from==n.anchor?o:a,n.from==n.head?o:a))}s&&(t||(t=e.ranges.slice()),t[r]=s)}return t?K.create(t,e.mainIndex):e}function EO(i,e,t){let r=ol(i.state.facet(ml).map(n=>n(i)),t.from,e.head>t.from?-1:1);return r==t.from?t:K.cursor(r,r<t.from?1:-1)}var Pr=class{constructor(e,t){this.pos=e,this.assoc=t}};function od(i,e,t,r){let n=i.contentDOM.getBoundingClientRect(),s=n.top+i.viewState.paddingTop,{x:o,y:a}=e,l=a-s,c;for(;;){if(l<0)return new Pr(0,1);if(l>i.viewState.docHeight)return new Pr(i.state.doc.length,-1);if(c=i.elementAtHeight(l),r==null)break;if(c.type==mi.Text){if(r<0?c.to<i.viewport.from:c.from>i.viewport.to)break;let p=i.docView.coordsAt(r<0?c.from:c.to,r>0?-1:1);if(p&&(r<0?p.top<=l+s:p.bottom>=l+s))break}let O=i.viewState.heightOracle.textHeight/2;l=r>0?c.bottom+O:c.top-O}if(i.viewport.from>=c.to||i.viewport.to<=c.from){if(t)return null;if(c.type==mi.Text){let O=Pk(i,n,c,o,a);return new Pr(O,O==c.from?1:-1)}}if(c.type!=mi.Text)return l<(c.top+c.bottom)/2?new Pr(c.from,1):new Pr(c.to,-1);let f=i.docView.lineAt(c.from,2);return(!f||f.length!=c.length)&&(f=i.docView.lineAt(c.from,-2)),new ad(i,o,a,i.textDirectionAt(c.from)).scanTile(f,c.from)}var ad=class{constructor(e,t,r,n){this.view=e,this.x=t,this.y=r,this.baseDir=n,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,t){let{line:r,spans:n}=this.bidiSpansAt(e);return n[kr.find(n,e-r.from,-1,t)].level==this.baseDir}dirAt(e,t){let{line:r,spans:n}=this.bidiSpansAt(e);return n[kr.find(n,e-r.from,-1,t)].dir}bidiIn(e,t){let{spans:r,line:n}=this.bidiSpansAt(e);return r.length>1||r.length&&(r[0].level!=this.baseDir||r[0].to+n.from<t)}scan(e,t,r=!1){let n=0,s=e.length-1,o=new Set,a=this.bidiIn(e[0],e[s]),l,c,f=-1,O=1e9,p;e:for(;n<s;){let y=s-n,P=n+s>>1;t:if(o.has(P)){for(let H=1;H<y;H++){let V=P+H;if(V>=s&&(V-=y),!o.has(V)){P=V;break t}}break e}o.add(P);let X=t(P),E=0;if(X)for(let H=0;H<X.length;H++){let V=X[H];if(!(V.width==0&&X.length>1))if(V.bottom<this.y)(!l||l.bottom<V.bottom)&&(l=V),E=1;else if(V.top>this.y)(!c||c.top>V.top)&&(c=V),E=-1;else{let B=V.left>this.x?this.x-V.left:V.right<this.x?this.x-V.right:0,M=Math.abs(B);M<O&&(f=P,O=M,p=V),B&&(E=B<0==(this.baseDir==vt.LTR)?-1:1)}}E==-1&&(!a||this.baseDirAt(e[P],1))?s=P:E==1&&(!a||this.baseDirAt(e[P+1],-1))&&(n=P+1)}if(!p){if(!c&&!l)return{i:e[0],after:!1};let y=l&&(!c||this.y-l.bottom<c.top-this.y)?l:c;return this.y=(y.top+y.bottom)/2,this.scan(e,t,!0)}if(O&&!r){let{top:y,bottom:P}=p;if(l&&l.bottom>(y+y+P)/3)return this.y=l.bottom-1,this.scan(e,t,!0);if(c&&c.top<(y+P+P)/3)return this.y=c.top+1,this.scan(e,t,!0)}let b=(a?this.dirAt(e[f],1):this.baseDir)==vt.LTR;return{i:f,after:this.x>(p.left+p.right)/2==b}}scanText(e,t){let r=[];for(let s=0;s<e.length;s=Mt(e.text,s))r.push(t+s);r.push(t+e.length);let n=this.scan(r,s=>{let o=r[s]-t,a=r[s+1]-t;return Ol(e.dom,o,a).getClientRects()});return n.after?new Pr(r[n.i+1],-1):new Pr(r[n.i],1)}scanTile(e,t){if(!e.length)return new Pr(t,1);if(e.children.length==1){let a=e.children[0];if(a.isText())return this.scanText(a,t);if(a.isComposite())return this.scanTile(a,t)}let r=[t];for(let a=0,l=t;a<e.children.length;a++)r.push(l+=e.children[a].length);let n=this.scan(r,a=>{let l=e.children[a];return l.flags&48?null:(l.dom.nodeType==1?l.dom:Ol(l.dom,0,l.length)).getClientRects()}),s=e.children[n.i],o=r[n.i];return s.isText()?this.scanText(s,o):s.isComposite()?this.scanTile(s,o):n.after?new Pr(r[n.i+1],-1):new Pr(o,1)}},Go="\uFFFF",ld=class{
Line truncated
|
|
|
|
|
`&&i.lineWrapping&&(r&&(r=K.single(r.main.anchor-1,r.main.head-1)),t={from:s.from,to:s.to,insert:rt.of([" "])}),t)return Vd(i,t,r,o);if(r&&!gh(r,s)){let a=!1,l="select";return i.inputState.lastSelectionTime>Date.now()-50&&(i.inputState.lastSelectionOrigin=="select"&&(a=!0),l=i.inputState.lastSelectionOrigin,l=="select.pointer"&&(r=kx(n.facet(ml).map(c=>c(i)),r))),i.dispatch({selection:r,scrollIntoView:a,userEvent:l}),!0}else return!1}function Vd(i,e,t,r=-1){if(xe.ios&&i.inputState.flushIOSKey(e))return!0;let n=i.state.selection.main;if(xe.android&&(e.to==n.to&&(e.from==n.from||e.from==n.from-1&&i.state.sliceDoc(e.from,n.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&ia(i.contentDOM,"Enter",13)||(e.from==n.from-1&&e.to==n.to&&e.insert.length==0||r==8&&e.insert.length<e.to-e.from&&e.to>n.head)&&ia(i.contentDOM,"Backspace",8)||e.from==n.from&&e.to==n.to+1&&e.insert.length==0&&ia(i.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();i.inputState.composing>=0&&i.inputState.composing++;let o,a=()=>o||(o=Ck(i,e,t));return i.state.facet(px).some(l=>l(i,e.from,e.to,s,a))||i.dispatch(a()),!0}function Ck(i,e,t){let r,n=i.state,s=n.selection.main,o=-1;if(e.from==e.to&&e.from<s.from||e.from>s.to){let l=e.from<s.from?-1:1,c=l<0?s.from:s.to,f=ol(n.facet(ml).map(O=>O(i)),c,l);e.from==f&&(o=f)}if(o>-1)r={changes:e,selection:K.cursor(e.from+e.insert.length,-1)};else if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&i.inputState.composing<0){let l=s.from<e.from?n.sliceDoc(s.from,e.from):"",c=s.to>e.to?n.sliceDoc(e.to,s.to):"";r=n.replaceSelection(i.state.toText(l+e.insert.sliceString(0,void 0,i.state.lineBreak)+c))}else{let l=n.changes(e),c=t&&t.main.to<=l.newLength?t.main:void 0;if(n.selection.ranges.length>1&&(i.inputState.composing>=0||i.inputState.compositionPendingChange)&&e.to<=s.to+10&&e.to>=s.to-10){let f=i.state.sliceDoc(e.from,e.to),O,p=t&&Px(i,t.main.head);if(p){let y=e.insert.length-(e.to-e.from);O={from:p.from,to:p.to-y}}else O=i.state.doc.lineAt(s.head);let b=s.to-e.to;r=n.changeByRange(y=>{if(y.from==s.from&&y.to==s.to)return{changes:l,range:c||y.map(l)};let P=y.to-b,X=P-f.length;if(i.state.sliceDoc(X,P)!=f||P>=O.from&&X<=O.to)return{range:y};let E=n.changes({from:X,to:P,insert:e.insert}),H=y.to-s.to;return{changes:E,range:c?K.range(Math.max(0,c.anchor+H),Math.max(0,c.head+H)):y.map(E)}})}else r={changes:l,selection:c&&n.selection.replaceRange(c)}}let a="input.type";return(i.composing||i.inputState.compositionPendingChange&&i.inputState.compositionEndedAt>Date.now()-50)&&(i.inputState.compositionPendingChange=!1,a+=".compose",i.inputState.compositionFirstChange&&(a+=".start",i.inputState.compositionFirstChange=!1)),n.update(r,{userEvent:a,scrollIntoView:!0})}function _x(i,e,t,r){let n=Math.min(i.length,e.length),s=0;for(;s<n&&i.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==n&&i.length==e.length)return null;let o=i.length,a=e.length;for(;o>0&&a>0&&i.charCodeAt(o-1)==e.charCodeAt(a-1);)o--,a--;if(r=="end"){let l=Math.max(0,s-Math.min(o,a));t-=o+l-s}if(o<s&&i.length<e.length){let l=t<=s&&t>=o?s-t:0;s-=l,a=s+(a-o),o=s}else if(a<s){let l=t<=s&&t>=a?s-t:0;s-=l,o=s+(o-a),a=s}return{from:s,toA:o,toB:a}}function Zk(i){let e=[];if(i.root.activeElement!=i.contentDOM)return e;let{anchorNode:t,anchorOffset:r,focusNode:n,focusOffset:s}=i.observer.selectionRange;return t&&(e.push(new mh(t,r)),(n!=t||s!=r)&&e.push(new mh(n,s))),e}function Ak(i,e){if(i.length==0)return null;let t=i[0].pos,r=i.length==2?i[1].pos:t;return t>-1&&r>-1?K.single(t+e,r+e):null}function gh(i,e){return e.head==i.main.head&&e.anchor==i.main.anchor}var hd=class{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.touchActive=!1,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.lastIOSMomentumScroll=0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,xe.safari&&e.contentDOM.addEventListener("input",()=>null),xe.gecko&&Bk(e.contentDOM.ownerDocument)}handleEvent(e){!Wk(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let r=this.handlers[e];if(r){for(let n of r.observers)n(this.view,t);for(let n of r.handlers){if(t.defaultPrevented)break;if(n(this.view,t)){t.preventDefault();break}}}}ensureHandl
Line truncated
|
|
|
|
|
`))};if((xe.mac||xe.android)&&O.from==o-1&&/^\. ?$/.test(r.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(O={from:a,to:l,insert:rt.of([r.text.replace("."," ")])}),this.pendingContextChange=O,!e.state.readOnly){let p=this.to-this.from+(O.to-O.from+O.insert.length);Vd(e,O,K.single(this.toEditorPos(r.selectionStart,p),this.toEditorPos(r.selectionEnd,p)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),O.from<O.to&&!O.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,r.updateRangeStart-1),Math.min(t.text.length,r.updateRangeStart+1)))&&this.handlers.compositionend(r)},this.handlers.characterboundsupdate=r=>{let n=[],s=null;for(let o=this.toEditorPos(r.rangeStart),a=this.toEditorPos(r.rangeEnd);o<a;o++){let l=e.coordsForChar(o);s=l&&new DOMRect(l.left,l.top,l.right-l.left,l.bottom-l.top)||s||new DOMRect,n.push(s)}t.updateCharacterBounds(r.rangeStart,n)},this.handlers.textformatupdate=r=>{let n=[];for(let s of r.getTextFormats()){let o=s.underlineStyle,a=s.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(a)){let l=this.toEditorPos(s.rangeStart),c=this.toEditorPos(s.rangeEnd);if(l<c){let f=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(a)?1:2}px`;n.push(Oe.mark({attributes:{style:f}}).range(l,c))}}}e.dispatch({effects:vx.of(Oe.set(n))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:r}=this.composing;this.composing=null,r&&this.reset(e.state)}};for(let r in this.handlers)t.addEventListener(r,this.handlers[r]);this.measureReq={read:r=>{let n=ul(r.root);n&&n.rangeCount&&this.editContext.updateSelectionBounds(n.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,r=!1,n=this.pendingContextChange;return e.changes.iterChanges((s,o,a,l,c)=>{if(r)return;let f=c.length-(o-s);if(n&&o>=n.to)if(n.from==s&&n.to==o&&n.insert.eq(c)){n=this.pendingContextChange=null,t+=f,this.to+=f;return}else n=null,this.revertPending(e.state);if(s+=t,o+=t,o<=this.from)this.from+=f,this.to+=f;else if(s<this.to){if(s<this.from||o>this.to||this.to-this.from+c.length>3e4){r=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(o),c.toString()),this.to+=f}t+=f}),n&&!r&&this.revertPending(e.state),!r}update(e){let t=this.pendingContextChange,r=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(r.from,r.to)&&e.transactions.some(n=>!n.isUserEvent("input.type")&&n.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,r=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),n=this.toContextPos(t.head);(this.editContext.selectionStart!=r||this.editContext.selectionEnd!=n)&&this.editContext.updateSelection(r,n)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let r=this.composing;return r&&r.drifted?r.editorBase+(e-r.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}},ae=class i{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDO
Line truncated
|
|
|
|
|
-\x7F-\x9F\xAD\u061C\u200B\u200E\u200F\u2028\u2029\u202D\u202E\u2066\u2067\u2069\uFEFF\uFFF9-\uFFFC]`,kd),yT={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"},zO=null;function QT(){var i;if(zO==null&&typeof document!="undefined"&&document.body){let e=document.body.style;zO=((i=e.tabSize)!==null&&i!==void 0?i:e.MozTabSize)!=null}return zO||!1}var ah=be.define({combine(i){let e=rr(i,{render:null,specialChars:ST,addSpecialChars:null});return(e.replaceTabs=!QT())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,kd)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,kd)),e}});function Gx(i={}){return[ah.of(i),wT()]}var Wb=null;function wT(){return Wb||(Wb=Xt.fromClass(class{constructor(i){this.view=i,this.decorations=Oe.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(i.state.facet(ah)),this.decorations=this.decorator.createDeco(i)}makeDecorator(i){return new dl({regexp:i.specialChars,decoration:(e,t,r)=>{let{doc:n}=t.state,s=Vr(e[0],0);if(s==9){let o=n.lineAt(r),a=t.state.tabSize,l=Mi(o.text,a,r-o.from);return Oe.replace({widget:new Xd((a-l%a)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[s]||(this.decorationCache[s]=Oe.replace({widget:new Td(i,s)}))},boundary:i.replaceTabs?void 0:/[^]/})}update(i){let e=i.state.facet(ah);i.startState.facet(ah)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(i.view)):this.decorations=this.decorator.updateDeco(i,this.decorations)}},{decorations:i=>i.decorations}))}var $T="\u2022";function PT(i){return i>=32?$T:i==10?"\u2424":String.fromCharCode(9216+i)}var Td=class extends It{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=PT(this.code),r=e.state.phrase("Control character")+" "+(yT[this.code]||"0x"+this.code.toString(16)),n=this.options.render&&this.options.render(this.code,r,t);if(n)return n;let s=document.createElement("span");return s.textContent=t,s.title=r,s.setAttribute("aria-label",r),s.className="cm-specialChar",s}ignoreEvent(){return!1}},Xd=class extends It{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}};function Rh(){return TT}var kT=Oe.line({class:"cm-activeLine"}),TT=Xt.fromClass(class{constructor(i){this.decorations=this.getDeco(i)}update(i){(i.docChanged||i.selectionSet)&&(this.decorations=this.getDeco(i.view))}getDeco(i){let e=-1,t=[];for(let r of i.state.selection.ranges){let n=i.lineBlockAt(r.head);n.from>e&&(t.push(kT.range(n.from)),e=n.from)}return Oe.set(t)}},{decorations:i=>i.decorations});var _d=2e3;function XT(i,e,t){let r=Math.min(e.line,t.line),n=Math.max(e.line,t.line),s=[];if(e.off>_d||t.off>_d||e.col<0||t.col<0){let o=Math.min(e.off,t.off),a=Math.max(e.off,t.off);for(let l=r;l<=n;l++){let c=i.doc.line(l);c.length<=a&&s.push(K.range(c.from+o,c.to+a))}}else{let o=Math.min(e.col,t.col),a=Math.max(e.col,t.col);for(let l=r;l<=n;l++){let c=i.doc.line(l),f=Nc(c.text,o,i.tabSize,!0);if(f<0)s.push(K.cursor(c.to));else{let O=Nc(c.text,a,i.tabSize);s.push(K.range(c.from+f,c.from+O))}}}return s}function _T(i,e){let t=i.coordsAtPos(i.viewport.from);return t?Math.round(Math.abs((t.left-e)/i.defaultCharacterWidth)):-1}function Vb(i,e){let t=i.posAtCoords({x:e.clientX,y:e.clientY},!1),r=i.state.doc.lineAt(t),n=t-r.from,s=n>_d?-1:n==r.length?_T(i,e.clientX):Mi(r.text,i.state.tabSize,t-r.from);return{line:r.number,col:s,off:n}}function RT(i,e){let t=Vb(i,e),r=i.state.selection;return t?{update(n){if(n.docChanged){let s=n.changes.mapPos(n.startState.doc.line(t.line).from),o=n.state.doc.lineAt(s);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},r=r.map(n.changes)}},get(n,s,o){let a=Vb(i,n);if(!a)return r;let l=XT(i.state,t,a);return l.length?o?K.create(l.concat(r.ranges)):K.create(l):r}}:null}function Ch(i){let e=(i==null?void 0:i.eventFilter)||(t=>t.altKey&&t.button==0);return ae.mouseSelectionStyle.of((t,r)=>e(r)?RT(t,r):null)}var CT={Alt:[18,i=>!!i.altKey],Control:[17,i=>!!i.ctrlKey],Shift:[16,i=>!!i.shiftKey],Meta:[91,i=>!!i.metaKey]},ZT={style:"cursor: crosshair"};function Zh(i={}){let[e,t]=CT[i.key||"Alt"],r=Xt.fromClass(class{constructor(n){this.view=n,this.isDown=!1}set(n){this.isDown!=n&&(this.isDown=n,this.view.update([]))}},{eventObservers:{keydown(n){this.set(n.keyCode==e||t(n))},keyup(n){(n.keyCode==e||!t(n))&&this.set(!1)},mousemove(n){this.set(t(n))}}}
Line truncated
|
|
|
|
|
import{a as Cc,b as Zc,c as qo,d as QP}from"./chunk-7GWCUXYG.js";import{a as yP}from"./chunk-LNOKARBD.js";import{a as Rc}from"./chunk-A7SWO6EA.js";import{a as _0,b as R0,c as wP}from"./chunk-QSJG64MM.js";import{D as sO,K as oO,t as T0,u as X0}from"./chunk-YYNDYC2B.js";import{A as zn,E as Sr,F as iO,G as Vo,I as Da,J as Xc,K as rO,T as nO,V as k0,a as On,b as Wa,ba as _c,d as pi,e as Va,f as Qi,g as pt,h as eO,i as Q0,k as w0,m as $c,n as Pc,o as kc,p as Ks,q as $0,t as Tc,w as P0,x as tO,y as qa,z as zi}from"./chunk-TYDI7JZQ.js";import{a as qt,b as wc,c as ja,d as Kf,e as Jf}from"./chunk-KT7KMEQC.js";var lO=Kf((C0,aO)=>{(function(i){if(typeof C0=="object"&&typeof aO!="undefined")aO.exports=i();else if(typeof define=="function"&&define.amd)define([],i);else{var e;typeof window!="undefined"?e=window:typeof global!="undefined"?e=global:typeof self!="undefined"?e=self:e=this,e.localforage=i()}})(function(){var i,e,t;return(function r(n,s,o){function a(u,O){if(!s[u]){if(!n[u]){var p=typeof ja=="function"&&ja;if(!O&&p)return p(u,!0);if(l)return l(u,!0);var b=new Error("Cannot find module '"+u+"'");throw b.code="MODULE_NOT_FOUND",b}var y=s[u]={exports:{}};n[u][0].call(y.exports,function(P){var X=n[u][1][P];return a(X||P)},y,y.exports,r,n,s,o)}return s[u].exports}for(var l=typeof ja=="function"&&ja,c=0;c<o.length;c++)a(o[c]);return a})({1:[function(r,n,s){(function(o){"use strict";var a=o.MutationObserver||o.WebKitMutationObserver,l;if(a){var c=0,u=new a(P),O=o.document.createTextNode("");u.observe(O,{characterData:!0}),l=function(){O.data=c=++c%2}}else if(!o.setImmediate&&typeof o.MessageChannel!="undefined"){var p=new o.MessageChannel;p.port1.onmessage=P,l=function(){p.port2.postMessage(0)}}else"document"in o&&"onreadystatechange"in o.document.createElement("script")?l=function(){var E=o.document.createElement("script");E.onreadystatechange=function(){P(),E.onreadystatechange=null,E.parentNode.removeChild(E),E=null},o.document.documentElement.appendChild(E)}:l=function(){setTimeout(P,0)};var b,y=[];function P(){b=!0;for(var E,H,V=y.length;V;){for(H=y,y=[],E=-1;++E<V;)H[E]();V=y.length}b=!1}n.exports=X;function X(E){y.push(E)===1&&!b&&l()}}).call(this,typeof global!="undefined"?global:typeof self!="undefined"?self:typeof window!="undefined"?window:{})},{}],2:[function(r,n,s){"use strict";var o=r(1);function a(){}var l={},c=["REJECTED"],u=["FULFILLED"],O=["PENDING"];n.exports=p;function p(d){if(typeof d!="function")throw new TypeError("resolver must be a function");this.state=O,this.queue=[],this.outcome=void 0,d!==a&&X(this,d)}p.prototype.catch=function(d){return this.then(null,d)},p.prototype.then=function(d,q){if(typeof d!="function"&&this.state===u||typeof q!="function"&&this.state===c)return this;var G=new this.constructor(a);if(this.state!==O){var pe=this.state===u?d:q;y(G,pe,this.outcome)}else this.queue.push(new b(G,d,q));return G};function b(d,q,G){this.promise=d,typeof q=="function"&&(this.onFulfilled=q,this.callFulfilled=this.otherCallFulfilled),typeof G=="function"&&(this.onRejected=G,this.callRejected=this.otherCallRejected)}b.prototype.callFulfilled=function(d){l.resolve(this.promise,d)},b.prototype.otherCallFulfilled=function(d){y(this.promise,this.onFulfilled,d)},b.prototype.callRejected=function(d){l.reject(this.promise,d)},b.prototype.otherCallRejected=function(d){y(this.promise,this.onRejected,d)};function y(d,q,G){o(function(){var pe;try{pe=q(G)}catch(Ee){return l.reject(d,Ee)}pe===d?l.reject(d,new TypeError("Cannot resolve promise with itself")):l.resolve(d,pe)})}l.resolve=function(d,q){var G=E(P,q);if(G.status==="error")return l.reject(d,G.value);var pe=G.value;if(pe)X(d,pe);else{d.state=u,d.outcome=q;for(var Ee=-1,Te=d.queue.length;++Ee<Te;)d.queue[Ee].callFulfilled(q)}return d},l.reject=function(d,q){d.state=c,d.outcome=q;for(var G=-1,pe=d.queue.length;++G<pe;)d.queue[G].callRejected(q);return d};function P(d){var q=d&&d.then;if(d&&(typeof d=="object"||typeof d=="function")&&typeof q=="function")return function(){q.apply(d,arguments)}}function X(d,q){var G=!1;function pe(_e){G||(G=!0,l.reject(d,_e))}function Ee(_e){G||(G=!0,l.resolve(d,_e))}function Te(){q(Ee,pe)}var oe=E(Te);oe.status==="error"&&pe(oe.value)}function E(d,q){var G={};try{G.value=d(q),G.status="success"}catch(pe){G.status="error",G.value=pe}return G}p.resolve=H;function H(d){return d instanceof this?d:l.resolve(new this(a),d)}p.reject=V;function V(d){var q=new this(a);return l.reject(q,d)}p.all=B;function B(d){var q=this;if(Object.prototype.toString.call(d)!=="[object Array]")return this.reject(new TypeError("must be an array"));var G=d.length,pe=!1;if(!G)return this.resolve([]);for(var Ee=new Array(G),Te=0,oe=-1,_e=new this(a);++oe<G;)We(d[oe],oe);return _e;function We(He,ie){q.resolve(He).then(Se,function(fe){pe||(pe=!0,l.reject(_e,fe))});function Se(fe){Ee[ie]=fe,++Te===G&&!pe&&(pe=!0,l.resolve(_e,Ee))}}}p.race=M;function M(d){var q=this;if(Object.prototype.toString.call(d)!=="[object Array]")return this.reject(new TypeErLine truncated
|
|
|
|
|
`):h)),f};var mt=/^(?:focusinfocus|focusoutblur)$/,yt=function(h){h.stopPropagation()};d.extend(d.event,{trigger:function(h,f,m,g){var x,v,Q,C,R,Y,F,te,I=[m||X],ce=u.call(h,"type")?h.type:h,Ie=u.call(h,"namespace")?h.namespace.split("."):[];if(v=te=Q=m=m||X,!(m.nodeType===3||m.nodeType===8)&&!mt.test(ce+d.event.triggered)&&(ce.indexOf(".")>-1&&(Ie=ce.split("."),ce=Ie.shift(),Ie.sort()),R=ce.indexOf(":")<0&&"on"+ce,h=h[d.expando]?h:new d.Event(ce,typeof h=="object"&&h),h.isTrigger=g?2:3,h.namespace=Ie.join("."),h.rnamespace=h.namespace?new RegExp("(^|\\.)"+Ie.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,h.result=void 0,h.target||(h.target=m),f=f==null?[h]:d.makeArray(f,[h]),F=d.event.special[ce]||{},!(!g&&F.trigger&&F.trigger.apply(m,f)===!1))){if(!g&&!F.noBubble&&!P(m)){for(C=F.delegateType||ce,mt.test(C+ce)||(v=v.parentNode);v;v=v.parentNode)I.push(v),Q=v;Q===(m.ownerDocument||X)&&I.push(Q.defaultView||Q.parentWindow||i)}for(x=0;(v=I[x++])&&!h.isPropagationStopped();)te=v,h.type=x>1?C:F.bindType||ce,Y=(Pe.get(v,"events")||Object.create(null))[h.type]&&Pe.get(v,"handle"),Y&&Y.apply(v,f),Y=R&&v[R],Y&&Y.apply&&fr(v)&&(h.result=Y.apply(v,f),h.result===!1&&h.preventDefault());return h.type=ce,!g&&!h.isDefaultPrevented()&&(!F._default||F._default.apply(I.pop(),f)===!1)&&fr(m)&&R&&y(m[ce])&&!P(m)&&(Q=m[R],Q&&(m[R]=null),d.event.triggered=ce,h.isPropagationStopped()&&te.addEventListener(ce,yt),m[ce](),h.isPropagationStopped()&&te.removeEventListener(ce,yt),d.event.triggered=void 0,Q&&(m[R]=Q)),h.result}},simulate:function(h,f,m){var g=d.extend(new d.Event,m,{type:h,isSimulated:!0});d.event.trigger(g,null,f)}}),d.fn.extend({trigger:function(h,f){return this.each(function(){d.event.trigger(h,f,this)})},triggerHandler:function(h,f){var m=this[0];if(m)return d.event.trigger(h,f,m,!0)}});var oi=/\[\]$/,Vt=/\r?\n/g,Ua=/^(?:submit|button|image|reset|file)$/i,Oi=/^(?:input|select|textarea|keygen)/i;function Mf(h,f,m,g){var x;if(Array.isArray(f))d.each(f,function(v,Q){m||oi.test(h)?g(h,Q):Mf(h+"["+(typeof Q=="object"&&Q!=null?v:"")+"]",Q,m,g)});else if(!m&&V(f)==="object")for(x in f)Mf(h+"["+x+"]",f[x],m,g);else g(h,f)}d.param=function(h,f){var m,g=[],x=function(v,Q){var C=y(Q)?Q():Q;g[g.length]=encodeURIComponent(v)+"="+encodeURIComponent(C==null?"":C)};if(h==null)return"";if(Array.isArray(h)||h.jquery&&!d.isPlainObject(h))d.each(h,function(){x(this.name,this.value)});else for(m in h)Mf(m,h[m],f,x);return g.join("&")},d.fn.extend({serialize:function(){return d.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var h=d.prop(this,"elements");return h?d.makeArray(h):this}).filter(function(){var h=this.type;return this.name&&!d(this).is(":disabled")&&Oi.test(this.nodeName)&&!Ua.test(h)&&(this.checked||!si.test(h))}).map(function(h,f){var m=d(this).val();return m==null?null:Array.isArray(m)?d.map(m,function(g){return{name:f.name,value:g.replace(Vt,`\r
|
|
|
|
|
`)}}):{name:f.name,value:m.replace(Vt,`\r
|
|
|
|
|
`)}}).get()}});var iP=/%20/g,rP=/#.*$/,nP=/([?&])_=[^&]*/,sP=/^(.*?):[ \t]*([^\r\n]*)$/mg,oP=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,aP=/^(?:GET|HEAD)$/,lP=/^\/\//,p0={},jf={},m0="*/".concat("*"),Wf=X.createElement("a");Wf.href=$e.href;function g0(h){return function(f,m){typeof f!="string"&&(m=f,f="*");var g,x=0,v=f.toLowerCase().match(_i)||[];if(y(m))for(;g=v[x++];)g[0]==="+"?(g=g.slice(1)||"*",(h[g]=h[g]||[]).unshift(m)):(h[g]=h[g]||[]).push(m)}}function b0(h,f,m,g){var x={},v=h===jf;function Q(C){var R;return x[C]=!0,d.each(h[C]||[],function(Y,F){var te=F(f,m,g);if(typeof te=="string"&&!v&&!x[te])return f.dataTypes.unshift(te),Q(te),!1;if(v)return!(R=te)}),R}return Q(f.dataTypes[0])||!x["*"]&&Q("*")}function Vf(h,f){var m,g,x=d.ajaxSettings.flatOptions||{};for(m in f)f[m]!==void 0&&((x[m]?h:g||(g={}))[m]=f[m]);return g&&d.extend(!0,h,g),h}function cP(h,f,m){for(var g,x,v,Q,C=h.contents,R=h.dataTypes;R[0]==="*";)R.shift(),g===void 0&&(g=h.mimeType||f.getResponseHeader("Content-Type"));if(g){for(x in C)if(C[x]&&C[x].test(g)){R.unshift(x);break}}if(R[0]in m)v=R[0];else{for(x in m){if(!R[0]||h.converters[x+" "+R[0]]){v=x;break}Q||(Q=x)}v=v||Q}if(v)return v!==R[0]&&R.unshift(v),m[v]}function hP(h,f,m,g){var x,v,Q,C,R,Y={},F=h.dataTypes.slice();if(F[1])for(Q in h.converters)Y[Q.toLowerCase()]=h.converters[Q];for(v=F.shift();v;)if(h.responseFields[v]&&(m[h.responseFields[v]]=f),!R&&g&&h.dataFilter&&(f=h.dataFilter(f,h.dataType)),R=v,v=F.shift(),v){if(v==="*")v=R;else if(R!=="*"&&R!==v){if(Q=Y[R+" "+v]||Y["* "+v],!Q){for(x in Y)if(C=x.split(" "),C[1]===v&&(Q=Y[R+" "+C[0]]||Y["* "+C[0]],Q)){Q===!0?Q=Y[x]:Y[x]!==!0&&(v=C[0],F.unshift(C[1]));break}}if(Q!==!0)if(Q&&h.throws)f=Q(f);else try{f=Q(f)}catch(te){return{state:"parsererror",error:Q?te:"No conversion from "+R+" to "+v}}}}return{state:"success",data:f}}d.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:$e.href,type:"GET",isLocal:oP.test($e.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":m0,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":d.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(h,f){return f?Vf(Vf(h,d.ajaxSettings),f):Vf(d.ajaxSettings,h)},ajaxPrefilter:g0(p0),ajaxTransport:g0(jf),ajax:function(h,f){typeof h=="object"&&(f=h,h=void 0),f=f||{};var m,g,x,v,Q,C,R,Y,F,te,I=d.ajaxSetup({},f),ce=I.context||I,Ie=I.context&&(ce.nodeType||ce.jquery)?d(ce):d.event,ht=d.Deferred(),Be=d.Callbacks("once memory"),di=I.statusCode||{},Jt={},ln={},cn="canceled",ot={readyState:0,getResponseHeader:function(dt){var Yt;if(R){if(!v)for(v={};Yt=sP.exec(x);)v[Yt[1].toLowerCase()+" "]=(v[Yt[1].toLowerCase()+" "]||[]).concat(Yt[2]);Yt=v[dt.toLowerCase()+" "]}return Yt==null?null:Yt.join(", ")},getAllResponseHeaders:function(){return R?x:null},setRequestHeader:function(dt,Yt){return R==null&&(dt=ln[dt.toLowerCase()]=ln[dt.toLowerCase()]||dt,Jt[dt]=Yt),this},overrideMimeType:function(dt){return R==null&&(I.mimeType=dt),this},statusCode:function(dt){var Yt;if(dt)if(R)ot.always(dt[ot.status]);else for(Yt in dt)di[Yt]=[di[Yt],dt[Yt]];return this},abort:function(dt){var Yt=dt||cn;return m&&m.abort(Yt),Gs(0,Yt),this}};if(ht.promise(ot),I.url=((h||I.url||$e.href)+"").replace(lP,$e.protocol+"//"),I.type=f.method||f.type||I.method||I.type,I.dataTypes=(I.dataType||"*").toLowerCase().match(_i)||[""],I.crossDomain==null){C=X.createElement("a");try{C.href=I.url,C.href=C.href,I.crossDomain=Wf.protocol+"//"+Wf.host!=C.protocol+"//"+C.host}catch(dt){I.crossDomain=!0}}if(I.data&&I.processData&&typeof I.data!="string"&&(I.data=d.param(I.data,I.traditional)),b0(p0,I,f,ot),R)return ot;Y=d.event&&I.global,Y&&d.active++===0&&d.event.trigger("ajaxStart"),I.type=I.type.toUpperCase(),I.hasContent=!aP.test(I.type),g=I.url.replace(rP,""),I.hasContent?I.data&&I.processData&&(I.contentType||"").indexOf("application/x-www-form-urlencoded")===0&&(I.data=I.data.replace(iP,"+")):(te=I.url.slice(g.length),I.data&&(I.processData||typeof I.data=="string")&&(g+=(Me.test(g)?"&":"?")+I.data,delete I.data),I.cache===!1&&(g=g.replace(nP,"$1"),te=(Me.test(g)?"&":"?")+"_="+Ce.guid+++te),I.url=g+te),I.ifModified&&(d.lastModified[g]&&ot.setRequestHeader("If-Modified-Since",d.lastModified[g]),d.etag[g]&&ot.setRequestHeader("If-None-Match",d.etag[g])),(I.data&&I.hasContent&&I.contentType!==!1||f.contentType)&&ot.setRequestHeader("Content-Type",I.contentType),ot.setRequestHeader("Accept",I.dataTypes[0]&&I.accepts[I.dataTypes[0]]?I.accepts[I.dataTypes[0]]+(I.dataTypes[0]!=="*"?", "+m0+"; q=0.01":""):I.accepts["*"]);for(F in I.headers)ot.setRequestHeader(F,I.headers[F]);if(I.beforeSend&&(I.beforeSend.call(ce,ot,I)===!1||R))return ot.abort();if(cn="ab
Line truncated
|
|
|
|
|
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function kU(i,e){return wU(i)||$U(i,e)||TU(i,e)||PU()}function TU(i,e){if(i){if(typeof i=="string")return O1(i,e);var t={}.toString.call(i).slice(8,-1);return t==="Object"&&i.constructor&&(t=i.constructor.name),t==="Map"||t==="Set"?Array.from(i):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?O1(i,e):void 0}}var T1=Object.entries,d1=Object.setPrototypeOf,XU=Object.isFrozen,_U=Object.getPrototypeOf,RU=Object.getOwnPropertyDescriptor,xi=Object.freeze,vi=Object.seal,Xa=Object.create,X1=typeof Reflect!="undefined"&&Reflect,Jg=X1.apply,e0=X1.construct;xi||(xi=function(e){return e});vi||(vi=function(e){return e});Jg||(Jg=function(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),s=2;s<r;s++)n[s-2]=arguments[s];return e.apply(t,n)});e0||(e0=function(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return new e(...r)});var ka=Ft(Array.prototype.forEach),CU=Ft(Array.prototype.lastIndexOf),p1=Ft(Array.prototype.pop),Ta=Ft(Array.prototype.push),ZU=Ft(Array.prototype.splice),Es=Array.isArray,Oc=Ft(String.prototype.toLowerCase),Fg=Ft(String.prototype.toString),m1=Ft(String.prototype.match),uc=Ft(String.prototype.replace),g1=Ft(String.prototype.indexOf),AU=Ft(String.prototype.trim),EU=Ft(Number.prototype.toString),UU=Ft(Boolean.prototype.toString),b1=typeof BigInt=="undefined"?null:Ft(BigInt.prototype.toString),x1=typeof Symbol=="undefined"?null:Ft(Symbol.prototype.toString),li=Ft(Object.prototype.hasOwnProperty),fc=Ft(Object.prototype.toString),ai=Ft(RegExp.prototype.test),Zo=zU(TypeError);function Ft(i){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n<t;n++)r[n-1]=arguments[n];return Jg(i,e,r)}}function zU(i){return function(){for(var e=arguments.length,t=new Array(e),r=0;r<e;r++)t[r]=arguments[r];return e0(i,t)}}function Ot(i,e){let t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Oc;if(d1&&d1(i,null),!Es(e))return i;let r=e.length;for(;r--;){let n=e[r];if(typeof n=="string"){let s=t(n);s!==n&&(XU(e)||(e[r]=s),n=s)}i[n]=!0}return i}function YU(i){for(let e=0;e<i.length;e++)li(i,e)||(i[e]=null);return i}function Xi(i){let e=Xa(null);for(let r of T1(i)){var t=kU(r,2);let n=t[0],s=t[1];li(i,n)&&(Es(s)?e[n]=YU(s):s&&typeof s=="object"&&s.constructor===Object?e[n]=Xi(s):e[n]=s)}return e}function LU(i){switch(typeof i){case"string":return i;case"number":return EU(i);case"boolean":return UU(i);case"bigint":return b1?b1(i):"0";case"symbol":return x1?x1(i):"Symbol()";case"undefined":return fc(i);case"function":case"object":{if(i===null)return fc(i);let e=i,t=en(e,"toString");if(typeof t=="function"){let r=t(e);return typeof r=="string"?r:fc(r)}return fc(i)}default:return fc(i)}}function en(i,e){for(;i!==null;){let r=RU(i,e);if(r){if(r.get)return Ft(r.get);if(typeof r.value=="function")return Ft(r.value)}i=_U(i)}function t(){return null}return t}function MU(i){try{return ai(i,""),!0}catch(e){return!1}}var v1=xi(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Bg=xi(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Gg=xi(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),jU=xi(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-gly
Line truncated
|
|
|
|
|
`+yt),Pe&&(yt=br(yt)),q&&Zi?_e(yt):yt},e.setConfig=function(){let re=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Cn(re),ns=!0,kn=gt,sn=St},e.clearConfig=function(){Ei=null,ns=!1,kn=null,sn=null,q=pe,G=""},e.isValidAttribute=function(re,k,W){Ei||Cn({});let ne=$t(re),$e=$t(k);return se(ne,$e,W)},e.addHook=function(re,k){typeof k=="function"&&li(Le,re)&&Ta(Le[re],k)},e.removeHook=function(re,k){if(li(Le,re)){if(k!==void 0){let W=CU(Le[re],k);return W===-1?void 0:ZU(Le[re],W,1)[0]}return p1(Le[re])}},e.removeHooks=function(re){li(Le,re)&&(Le[re]=[])},e.removeAllHooks=function(){Le=k1()},e}var i5=_1();R1.exports=i5});var a0=Jf(lO());var Pt=[/^\s*[.#%]?(include|incbin|embed)\s+"(.+?)"/gmi,/^\s*([;']|[/][/])#(resource)\s+"(.+?)"/gm],Ct=[/^\s*([;]|[/][/])#link\s+"(.+?)"/gm],Ia=[/^\s*(`include|[.]include)\s+"(.+?)"/gmi,/^\s*\$(include|\$dofile|\$write_image_in_table)\('(.+?)'/gmi,{re:/^\s*([.]arch)\s+(\w+)/gmi,suffix:".json"},/\$readmem[bh]\("(.+?)"/gmi],$P=[{re:/^\s*[.#%]?\s*include\s+<(.+?)>/gmi,system:!0}];function E0(i){let e=i&&dn(i);return e&&e.includeDirs&&e.includeDirs.length?$P:[]}var Z0=[/^\s+(USE|ASM)\s+(\S+[.]\S+)/gm],PP=[/^[!]src\s+"(.+?)"/gmi],kP=[{re:/^\s*import\s*"(.+?)";/gmi,suffix:".wiz"},/^\s*embed\s*"(.+?)";/gmi],TP=[/^\s*(import)\s*"(.+?)"/gmi],XP=[/^\s*%%\s*#include\s+"(.+?)"/gm],A0={apple2:{preloadFS:"65-apple2"},c64:{preloadFS:"65-c64"},vic20:{preloadFS:"65-vic20"},nes:{preloadFS:"65-nes"},atari8:{preloadFS:"65-atari8"},vector:{preloadFS:"65-none"},atari7800:{preloadFS:"65-none"},devel:{preloadFS:"65-none"},vcs:{preloadFS:"65-atari2600"},pce:{preloadFS:"65-pce"},exidy:{preloadFS:"65-none"}},cO={dasm:{id:"dasm",name:"DASM",kind:"assembler",arch:"6502",extensions:[".dasm"],editorStyle:"6502",helpURL:"https://raw.githubusercontent.com/dasm-assembler/dasm/refs/tags/v2.20.17/docs/dasm.txt",wasmModule:"dasm-wasisdk",version:"2.20.17",includePatterns:Pt,linkPatterns:Ct},acme:{id:"acme",name:"ACME",kind:"assembler",arch:"6502",extensions:[".acme"],editorStyle:"6502",helpURL:"https://raw.githubusercontent.com/sehugg/acme/main/docs/QuickRef.txt",wasmModule:"acme",version:"0.97.1",includePatterns:[...Pt,...PP],linkPatterns:Ct},xa:{id:"xa",name:"XA",kind:"assembler",arch:"6502",extensions:[".xa"],editorStyle:"6502",helpURL:"https://www.floodgap.com/retrotech/xa/",wasmModule:"xa",version:"2.4.1",includePatterns:Pt,linkPatterns:Ct},nesasm:{id:"nesasm",name:"NESASM",kind:"assembler",arch:"6502",extensions:[".nesasm"],editorStyle:"6502",wasmModule:"nesasm",version:"3.1",includePatterns:Pt,linkPatterns:Ct},merlin32:{id:"merlin32",name:"Merlin 32",kind:"assembler",arch:"6502",extensions:[".lnk"],editorStyle:"6502",wasmModule:"merlin32",version:"1.1.1",includePatterns:[...Pt,...Z0],linkPatterns:Ct},cc65:{id:"cc65",name:"cc65",kind:"compiler",arch:"6502",extensions:[".c",".h"],includeDirs:["/include","/asminc"],editorStyle:"text/x-csrc",helpURL:"https://cc65.github.io/doc/cc65.html",wasmModule:"cc65",version:"2.19",platforms:A0,includePatterns:Pt,linkPatterns:Ct},ca65:{id:"ca65",name:"ca65",kind:"assembler",arch:"6502",extensions:[".s",".ca65"],includeDirs:["/include","/asminc"],editorStyle:"6502",helpURL:"https://cc65.github.io/doc/ca65.html",wasmModule:"ca65",version:"2.19",platforms:A0,includePatterns:Pt,linkPatterns:Ct},ld65:{id:"ld65",name:"ld65",kind:"linker",arch:"6502",extensions:[],wasmModule:"ld65",version:"2.19"},sdcc:{id:"sdcc",name:"SDCC",kind:"compiler",arch:"z80",extensions:[".c",".h"],includeDirs:["/include"],editorStyle:"text/x-csrc",helpURL:"http://sdcc.sourceforge.net/doc/sdccman.pdf",wasmModule:"sdcc",version:"3.6.5",platforms:{default:{preloadFS:"sdcc"}},includePatterns:Pt,linkPatterns:Ct},sdasz80:{id:"sdasz80",name:"sdasz80",kind:"assembler",arch:"z80",extensions:[".s"],includeDirs:["/include"],editorStyle:"z80",wasmModule:"sdasz80",version:"02.00",platforms:{default:{preloadFS:"sdcc"}},includePatterns:Pt,linkPatterns:Ct},sdasgb:{id:"sdasgb",name:"sdasgb",kind:"assembler",arch:"gbz80",extensions:[".sgb"],includeDirs:["/include"],editorStyle:"z80",wasmModule:"sdasgb",platforms:{default:{preloadFS:"sdcc"}},includePatterns:Pt,linkPatterns:Ct},sdldz80:{id:"sdldz80",name:"sdldz80",kind:"linker",arch:"z80",extensions:[],wasmModule:"sdldz80",version:"03.00"},sccz80:{id:"sccz80",name:"sccz80",kind:"compiler",arch:"z80",extensions:[".scc"],platforms:{default:{preloadFS:"sccz80"}},noWorkerBuild:!0},naken:{id:"naken",name:"Naken",kind:"assembler",extensions:[".ns"],noWorkerBuild:!0},zmac:{id:"zmac",name:"zmac",kind:"assembler",arch:"z80",extensions:[".z"],editorStyle:"z80",helpURL:"https://raw.githubusercontent.com/sehugg/zmac/master/doc.txt",wasmModule:"zmac",version:"28jul2018",includePatterns:Pt,linkPatterns:Ct},jsasm:{id:"jsasm",name:"JSASM",kind:"assembler",extensions:[".asm"],editorStyle:"z80",includePatterns:Ia,linkPatterns:[]},xasm6809:{id:"xasm6809",name:"XASM6809",kind:"assembler",arch:"6809",extensions:[".xasm"],editorStyle:"6809",wasmModule:"xasm6809",includePatterns:[...Pt,Line truncated
|
|
|
|
|
`){[e,t]=Fo(this,e,t);let n="";for(let s=0,o=0;s<=t&&o<this.text.length;o++){let a=this.text[o],l=s+a.length;s>e&&o&&(n+=r),e<l&&t>s&&(n+=a.slice(Math.max(0,e-s),t-s)),s=l+1}return n}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let r=[],n=-1;for(let s of e)r.push(s),n+=s.length+1,r.length==32&&(t.push(new i(r,n)),r=[],n=-1);return n>-1&&t.push(new i(r,n)),t}},Do=class i extends rt{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let r of e)this.lines+=r.lines}lineInner(e,t,r,n){for(let s=0;;s++){let o=this.children[s],a=n+o.length,l=r+o.lines-1;if((t?l:a)>=e)return o.lineInner(e,t,r,n);n=a+1,r=l+1}}decompose(e,t,r,n){for(let s=0,o=0;o<=t&&s<this.children.length;s++){let a=this.children[s],l=o+a.length;if(e<=l&&t>=o){let c=n&((o<=e?1:0)|(l>=t?2:0));o>=e&&l<=t&&!c?r.push(a):a.decompose(e-o,t-o,r,c)}o=l+1}}replace(e,t,r){if([e,t]=Fo(this,e,t),r.lines<this.lines)for(let n=0,s=0;n<this.children.length;n++){let o=this.children[n],a=s+o.length;if(e>=s&&t<=a){let l=o.replace(e-s,t-s,r),c=this.lines-o.lines+l.lines;if(l.lines<c>>4&&l.lines>c>>6){let u=this.children.slice();return u[n]=l,new i(u,this.length-(t-e)+r.length)}return super.replace(s,a,l)}s=a+1}return super.replace(e,t,r)}sliceString(e,t=this.length,r=`
|
|
|
|
|
`){[e,t]=Fo(this,e,t);let n="";for(let s=0,o=0;s<this.children.length&&o<=t;s++){let a=this.children[s],l=o+a.length;o>e&&s&&(n+=r),e<l&&t>o&&(n+=a.sliceString(e-o,t-o,r)),o=l+1}return n}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof i))return 0;let r=0,[n,s,o,a]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;n+=t,s+=t){if(n==o||s==a)return r;let l=this.children[n],c=e.children[s];if(l!=c)return r+l.scanIdentical(c,t);r+=l.length+1}}static from(e,t=e.reduce((r,n)=>r+n.length+1,-1)){let r=0;for(let b of e)r+=b.lines;if(r<32){let b=[];for(let y of e)y.flatten(b);return new ir(b,t)}let n=Math.max(32,r>>5),s=n<<1,o=n>>1,a=[],l=0,c=-1,u=[];function O(b){let y;if(b.lines>s&&b instanceof i)for(let P of b.children)O(P);else b.lines>o&&(l>o||!l)?(p(),a.push(b)):b instanceof ir&&l&&(y=u[u.length-1])instanceof ir&&b.lines+y.lines<=32?(l+=b.lines,c+=b.length+1,u[u.length-1]=new ir(y.text.concat(b.text),y.length+1+b.length)):(l+b.lines>n&&p(),l+=b.lines,c+=b.length+1,u.push(b))}function p(){l!=0&&(a.push(u.length==1?u[0]:i.from(u,c)),c=-1,l=u.length=0)}for(let b of e)O(b);return p(),a.length==1?a[0]:new i(a,t)}};rt.empty=new ir([""],0);function ZP(i){let e=-1;for(let t of i)e+=t.length+1;return e}function Lc(i,e,t=0,r=1e9){for(let n=0,s=0,o=!0;s<i.length&&n<=r;s++){let a=i[s],l=n+a.length;l>=t&&(l>r&&(a=a.slice(0,r-n)),n<t&&(a=a.slice(t-n)),o?(e[e.length-1]+=a,o=!1):e.push(a)),n=l+1}return e}function N0(i,e,t){return Lc(i,[""],e,t)}var io=class{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof ir?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let r=this.nodes.length-1,n=this.nodes[r],s=this.offsets[r],o=s>>1,a=n instanceof ir?n.text.length:n.children.length;if(o==(t>0?a:0)){if(r==0)return this.done=!0,this.value="",this;t>0&&this.offsets[r-1]++,this.nodes.pop(),this.offsets.pop()}else if((s&1)==(t>0?0:1)){if(this.offsets[r]+=t,e==0)return this.lineBreak=!0,this.value=`
|
|
|
|
|
`,this;e--}else if(n instanceof ir){let l=n.text[o+(t<0?-1:0)];if(this.offsets[r]+=t,l.length>Math.max(0,e))return this.value=e==0?l:t>0?l.slice(e):l.slice(0,l.length-e),this;e-=l.length}else{let l=n.children[o+(t<0?-1:0)];e>l.length?(e-=l.length,this.offsets[r]+=t):(t<0&&this.offsets[r]--,this.nodes.push(l),this.offsets.push(t>0?1:(l instanceof ir?l.text.length:l.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},Mc=class{constructor(e,t,r){this.value="",this.done=!1,this.cursor=new io(e,t>r?-1:1),this.pos=t>r?e.length:0,this.from=Math.min(t,r),this.to=Math.max(t,r)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let r=t<0?this.pos-this.from:this.to-this.pos;e>r&&(e=r),r-=e;let{value:n}=this.cursor.next(e);return this.pos+=(n.length+e)*t,this.value=n.length<=r?n:t<0?n.slice(n.length-r):n.slice(0,r),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}},jc=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:r,value:n}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):r?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=n,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol!="undefined"&&(rt.prototype[Symbol.iterator]=function(){return this.iter()},io.prototype[Symbol.iterator]=Mc.prototype[Symbol.iterator]=jc.prototype[Symbol.iterator]=function(){return this});var pO=class{constructor(e,t,r,n){this.from=e,this.to=t,this.number=r,this.text=n}get length(){return this.to-this.from}};function Fo(i,e,t){return e=Math.max(0,Math.min(i.length,e)),[e,Math.max(e,Math.min(i.length,t))]}function Mt(i,e,t=!0,r=!0){return V0(i,e,t,r)}function AP(i){return i>=56320&&i<57344}function EP(i){return i>=55296&&i<56320}function Vr(i,e){let t=i.charCodeAt(e);if(!EP(t)||e+1==i.length)return t;let r=i.charCodeAt(e+1);return AP(r)?(t-55296<<10)+(r-56320)+65536:t}function Ic(i){return i<=65535?String.fromCharCode(i):(i-=65536,String.fromCharCode((i>>10)+55296,(i&1023)+56320))}function ds(i){return i<65536?1:2}var mO=/\r\n?|\n/,ei=(function(i){return i[i.Simple=0]="Simple",i[i.TrackDel=1]="TrackDel",i[i.TrackBefore=2]="TrackBefore",i[i.TrackAfter=3]="TrackAfter",i})(ei||(ei={})),Yn=class i{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let r=this.sections[t+1];e+=r<0?this.sections[t]:r}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,r=0,n=0;t<this.sections.length;){let s=this.sections[t++],o=this.sections[t++];o<0?(e(r,n,s),n+=s):n+=o,r+=s}}iterChangedRanges(e,t=!1){gO(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let r=this.sections[t++],n=this.sections[t++];n<0?e.push(r,n):e.push(n,r)}return new i(e)}composeDesc(e){return this.empty?e:e.empty?this:K0(this,e)}mapDesc(e,t=!1){return e.empty?this:bO(this,e,t)}mapPos(e,t=-1,r=ei.Simple){let n=0,s=0;for(let o=0;o<this.sections.length;){let a=this.sections[o++],l=this.sections[o++],c=n+a;if(l<0){if(c>e)return s+(e-n);s+=a}else{if(r!=ei.Simple&&c>=e&&(r==ei.TrackDel&&n<e&&c>e||r==ei.TrackBefore&&n<e||r==ei.TrackAfter&&c>e))return null;if(c>e||c==e&&t<0&&!a)return e==n||t<0?s:s+l;s+=l}n=c}if(e>n)throw new RangeError(`Position ${e} is out of range for changeset of length ${n}`);return s}touchesRange(e,t=e){for(let r=0,n=0;r<this.sections.length&&n<=t;){let s=this.sections[r++],o=this.sections[r++],a=n+s;if(o>=0&&n<=t&&a>=e)return n<e&&a>t?"cover":!0;n=a}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let r=this.sections[t++],n=this.sections[t++];e+=(e?" ":"")+r+(n>=0?":"+n:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new i(e)}static create(e){return new i(e)}},Yi=class i extends Yn{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return gO(this,(t,r,n,s,o)=>e=e.replace(n,n+(r-t),o),!1),e}mapDesc(e,t=!1){return bO(this,e,t,!0)}invert(e){let t=this.sections.slice(),r=[];for(let n=0,s=0;n<t.length;n+=2){let o=t[n],a=t[n+1];if(a>=0){t[n]=a,t[n+1]=o;let l=n>>1;for(;r.length<l;)r.push(rt.empty);r.push(o?e.slice(s,s+o):rt.empty)}s+=o}return new i(t,r)}compose(e){return this.empty?e:e.empty?this:K0(this,e,!0)}map(e,t=!1){return e.empty?this:bO(this,e,t,!0)}iterChanges(e,t=!1){gO(this,e,t)}get desc
Line truncated
|
|
|
|
|
`}get readOnly(){return this.facet(sb)}phrase(e,...t){for(let r of this.facet(i.phrases))if(Object.prototype.hasOwnProperty.call(r,e)){e=r[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(r,n)=>{if(n=="$")return"$";let s=+(n||1);return!s||s>t.length?r:t[s-1]})),e}languageDataAt(e,t,r=-1){let n=[];for(let s of this.facet(eb))for(let o of s(this,t,r))Object.prototype.hasOwnProperty.call(o,e)&&n.push(o[e]);return n}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return qP(t.length?t[0]:"")}wordAt(e){let{text:t,from:r,length:n}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-r,a=e-r;for(;o>0;){let l=Mt(t,o,!1);if(s(t.slice(l,o))!=Qt.Word)break;o=l}for(;a<n;){let l=Mt(t,a);if(s(t.slice(a,l))!=Qt.Word)break;a=l}return o==a?null:K.range(o+r,a+r)}};Je.allowMultipleSelections=vO;Je.tabSize=be.define({combine:i=>i.length?i[0]:4});Je.lineSeparator=tb;Je.readOnly=sb;Je.phrases=be.define({compare(i,e){let t=Object.keys(i),r=Object.keys(e);return t.length==r.length&&t.every(n=>i[n]==e[n])}});Je.languageData=eb;Je.changeFilter=ib;Je.transactionFilter=rb;Je.transactionExtender=nb;Li.reconfigure=Ze.define();function rr(i,e,t={}){let r={};for(let n of i)for(let s of Object.keys(n)){let o=n[s],a=r[s];if(a===void 0)r[s]=o;else if(!(a===o||o===void 0))if(Object.hasOwnProperty.call(t,s))r[s]=t[s](a,o);else throw new Error("Config merge conflict for field "+s)}for(let n in e)r[n]===void 0&&(r[n]=e[n]);return r}var yr=class{eq(e){return this==e}range(e,t=e){return Ga.create(e,t,this)}};yr.prototype.startSide=yr.prototype.endSide=0;yr.prototype.point=!1;yr.prototype.mapMode=ei.TrackDel;function _O(i,e){return i==e||i.constructor==e.constructor&&i.eq(e)}var Ga=class i{constructor(e,t,r){this.from=e,this.to=t,this.value=r}static create(e,t,r){return new i(e,t,r)}};function $O(i,e){return i.from-e.from||i.value.startSide-e.value.startSide}var PO=class i{constructor(e,t,r,n){this.from=e,this.to=t,this.value=r,this.maxPoint=n}get length(){return this.to[this.to.length-1]}findIndex(e,t,r,n=0){let s=r?this.to:this.from;for(let o=n,a=s.length;;){if(o==a)return o;let l=o+a>>1,c=s[l]-e||(r?this.value[l].endSide:this.value[l].startSide)-t;if(l==o)return c>=0?o:a;c>=0?a=l:o=l+1}}between(e,t,r,n){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(r,1e9,!1,s);s<o;s++)if(n(this.from[s]+e,this.to[s]+e,this.value[s])===!1)return!1}map(e,t){let r=[],n=[],s=[],o=-1,a=-1;for(let l=0;l<this.value.length;l++){let c=this.value[l],u=this.from[l]+e,O=this.to[l]+e,p,b;if(u==O){let y=t.mapPos(u,c.startSide,c.mapMode);if(y==null||(p=b=y,c.startSide!=c.endSide&&(b=t.mapPos(u,c.endSide),b<p)))continue}else if(p=t.mapPos(u,c.startSide),b=t.mapPos(O,c.endSide),p>b||p==b&&c.startSide>0&&c.endSide<=0)continue;(b-p||c.endSide-c.startSide)<0||(o<0&&(o=p),c.point&&(a=Math.max(a,b-p)),r.push(c),n.push(p-o),s.push(b-o))}return{mapped:r.length?new i(n,s,r,a):null,pos:o}}},qe=class i{constructor(e,t,r,n){this.chunkPos=e,this.chunk=t,this.nextLayer=r,this.maxPoint=n}static create(e,t,r,n){return new i(e,t,r,n)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:r=!1,filterFrom:n=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(r&&(t=t.slice().sort($O)),this.isEmpty)return t.length?i.of(t):this;let a=new Dc(this,null,-1).goto(0),l=0,c=[],u=new Wr;for(;a.value||l<t.length;)if(l<t.length&&(a.from-t[l].from||a.startSide-t[l].value.startSide)>=0){let O=t[l++];u.addInner(O.from,O.to,O.value)||c.push(O)}else a.rangeIndex==1&&a.chunkIndex<this.chunk.length&&(l==t.length||this.chunkEnd(a.chunkIndex)<t[l].from)&&(!o||n>this.chunkEnd(a.chunkIndex)||s<this.chunkPos[a.chunkIndex])&&u.addChunk(this.chunkPos[a.chunkIndex],this.chunk[a.chunkIndex])?a.nextChunk():((!o||n>a.to||s<a.from||o(a.from,a.to,a.value))&&(u.addInner(a.from,a.to,a.value)||c.push(Ga.create(a.from,a.to,a.value))),a.next());return u.finishInner(this.nextLayer.isEmpty&&!c.length?i.empty:this.nextLayer.update({add:c,filter:o,filterFrom:n,filterTo:s}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],r=[],n=-1;for(let o=0;o<this.chunk.length;o++){let a=this.chunkPos[o],l=this.chunk[o],c=e.touchesRange(a,a+l.length);if(c===!1)n=Math.max(n,l.maxPoint),t.push(l),r.push(e.mapPos(a));else if(c===!0){let{mapped:u,pos:O}=l.map(a,e);u&&(n=Math.max(n,u.maxPoint),t.push(u),r.push(O))}}let s=this.nextLayer.map(e);return t.length==0?s:new i(r,t,s||i.empty,n)}between(e,t,r){if(!this.isEmpty){for(let n=0;n<this.chunk.length;n++){let s=this.chunkPos[n],o=this.chunk[n];if(t>=s&&e<=s+o.length&&o.between(s,e-s,t-s,r)===!1)return}this.nextLayer.between(e,t,r)}}iter(e=0){return Ha.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Ha.from(e).goto(t)}static compare(e,t,r,n,s=-1){let o=e.filter(O=>O.maxPoint>0||!O.is
Line truncated
|
|
|
|
|
`)}static newName(){let e=cb[lb]||1;return cb[lb]=e+1,"\u037C"+e.toString(36)}static mount(e,t,r){let n=e[RO],s=r&&r.nonce;n?s&&n.setNonce(s):n=new CO(e,s),n.mount(Array.isArray(t)?t:[t],e)}},hb=new Map,CO=class{constructor(e,t){let r=e.ownerDocument||e,n=r.defaultView;if(!e.head&&e.adoptedStyleSheets&&n.CSSStyleSheet){let s=hb.get(r);if(s)return e[RO]=s;this.sheet=new n.CSSStyleSheet,hb.set(r,this)}else this.styleTag=r.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[RO]=this}mount(e,t){let r=this.sheet,n=0,s=0;for(let o=0;o<e.length;o++){let a=e[o],l=this.modules.indexOf(a);if(l<s&&l>-1&&(this.modules.splice(l,1),s--,l=-1),l==-1){if(this.modules.splice(s++,0,a),r)for(let c=0;c<a.rules.length;c++)r.insertRule(a.rules[c],n++)}else{for(;s<l;)n+=this.modules[s++].rules.length;n+=a.rules.length,s++}}if(r)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let o="";for(let l=0;l<this.modules.length;l++)o+=this.modules[l].getRules()+`
|
|
|
|
|
`;this.styleTag.textContent=o;let a=t.head||t;this.styleTag.parentNode!=a&&a.insertBefore(this.styleTag,a.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}};var Ln={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Bo={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},IP=typeof navigator!="undefined"&&/Mac/.test(navigator.platform),NP=typeof navigator!="undefined"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(Dt=0;Dt<10;Dt++)Ln[48+Dt]=Ln[96+Dt]=String(Dt);var Dt;for(Dt=1;Dt<=24;Dt++)Ln[Dt+111]="F"+Dt;var Dt;for(Dt=65;Dt<=90;Dt++)Ln[Dt]=String.fromCharCode(Dt+32),Bo[Dt]=String.fromCharCode(Dt);var Dt;for(Fc in Ln)Bo.hasOwnProperty(Fc)||(Bo[Fc]=Ln[Fc]);var Fc;function ub(i){var e=IP&&i.metaKey&&i.shiftKey&&!i.ctrlKey&&!i.altKey||NP&&i.shiftKey&&i.key&&i.key.length==1||i.key=="Unidentified",t=!e&&i.key||(i.shiftKey?Bo:Ln)[i.keyCode]||i.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function jt(){var i=arguments[0];typeof i=="string"&&(i=document.createElement(i));var e=1,t=arguments[1];if(t&&typeof t=="object"&&t.nodeType==null&&!Array.isArray(t)){for(var r in t)if(Object.prototype.hasOwnProperty.call(t,r)){var n=t[r];typeof n=="string"?i.setAttribute(r,n):n!=null&&(i[r]=n)}e++}for(;e<arguments.length;e++)fb(i,arguments[e]);return i}function fb(i,e){if(typeof e=="string")i.appendChild(document.createTextNode(e));else if(e!=null)if(e.nodeType!=null)i.appendChild(e);else if(Array.isArray(e))for(var t=0;t<e.length;t++)fb(i,e[t]);else throw new RangeError("Unsupported child node: "+e)}var ji=typeof navigator!="undefined"?navigator:{userAgent:"",vendor:"",platform:""},WO=typeof document!="undefined"?document:{documentElement:{style:{}}},VO=/Edge\/(\d+)/.exec(ji.userAgent),Hb=/MSIE \d/.test(ji.userAgent),qO=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(ji.userAgent),kh=!!(Hb||qO||VO),Ob=!kh&&/gecko\/(\d+)/i.test(ji.userAgent),ZO=!kh&&/Chrome\/(\d+)/.exec(ji.userAgent),db="webkitFontSmoothing"in WO.documentElement.style,DO=!kh&&/Apple Computer/.test(ji.vendor),pb=DO&&(/Mobile\/\w+/.test(ji.userAgent)||ji.maxTouchPoints>2),xe={mac:pb||/Mac/.test(ji.platform),windows:/Win/.test(ji.platform),linux:/Linux|X11/.test(ji.platform),ie:kh,ie_version:Hb?WO.documentMode||6:qO?+qO[1]:VO?+VO[1]:0,gecko:Ob,gecko_version:Ob?+(/Firefox\/(\d+)/.exec(ji.userAgent)||[0,0])[1]:0,chrome:!!ZO,chrome_version:ZO?+ZO[1]:0,ios:pb,android:/Android\b/.test(ji.userAgent),webkit:db,webkit_version:db?+(/\bAppleWebKit\/(\d+)/.exec(ji.userAgent)||[0,0])[1]:0,safari:DO,safari_version:DO?+(/\bVersion\/(\d+(\.\d+)?)/.exec(ji.userAgent)||[0,0])[1]:0,tabSize:WO.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function Ud(i,e){for(let t in i)t=="class"&&e.class?e.class+=" "+i.class:t=="style"&&e.style?e.style+=";"+i.style:e[t]=i[t];return e}var ch=Object.create(null);function zd(i,e,t){if(i==e)return!0;i||(i=ch),e||(e=ch);let r=Object.keys(i),n=Object.keys(e);if(r.length-(t&&r.indexOf(t)>-1?1:0)!=n.length-(t&&n.indexOf(t)>-1?1:0))return!1;for(let s of r)if(s!=t&&(n.indexOf(s)==-1||i[s]!==e[s]))return!1;return!0}function FP(i,e){for(let t=i.attributes.length-1;t>=0;t--){let r=i.attributes[t].name;e[r]==null&&i.removeAttribute(r)}for(let t in e){let r=e[t];t=="style"?i.style.cssText=r:i.getAttribute(t)!=r&&i.setAttribute(t,r)}}function mb(i,e,t){let r=!1;if(e)for(let n in e)t&&n in t||(r=!0,n=="style"?i.style.cssText="":i.removeAttribute(n));if(t)for(let n in t)e&&e[n]==t[n]||(r=!0,n=="style"?i.style.cssText=t[n]:i.setAttribute(n,t[n]));return r}function BP(i){let e=Object.create(null);for(let t=0;t<i.attributes.length;t++){let r=i.attributes[t];e[r.name]=r.value}return e}var It=class{eq(e){return!1}updateDOM(e,t,r){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,t,r){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}},mi=(function(i){return i[i.Text=0]="Text",i[i.WidgetBefore=1]="WidgetBefore",i[i.WidgetAfter=2]="WidgetAfter",i[i.WidgetRange=3]="WidgetRange",i})(mi||(mi={})),Oe=class extends yr{constructor(e,t,r,n){super(),this.startSide=e,this.enLine truncated
|
|
|
|
|
`,n=i.state.doc.line(n.number+(t?1:-1)),s=i.bidiSpans(n),c=i.visualLineSide(n,!t)}if(l){if(!l(u))return a}else{if(!r)return c;l=r(u)}a=c}}function Tk(i,e,t){let r=i.state.charCategorizer(e),n=r(t);return s=>{let o=r(s);return n==Qt.Space&&(n=o),n==o}}function Xk(i,e,t,r){let n=e.head,s=t?1:-1;if(n==(t?i.state.doc.length:0))return K.cursor(n,e.assoc);let o=e.goalColumn,a,l=i.contentDOM.getBoundingClientRect(),c=i.coordsAtPos(n,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),u=i.documentTop;if(c)o==null&&(o=c.left-l.left),a=s<0?c.top:c.bottom;else{let y=i.viewState.lineBlockAt(n);o==null&&(o=Math.min(l.right-l.left,i.defaultCharacterWidth*(n-y.from))),a=(s<0?y.top:y.bottom)+u}let O=l.left+o,p=i.viewState.heightOracle.textHeight>>1,b=r!=null?r:p;for(let y=0;;y+=p){let P=a+(b+y)*s,X=ad(i,{x:O,y:P},!1,s);if(t?P>l.bottom:P<l.top)return K.cursor(X.pos,X.assoc);let E=i.coordsAtPos(X.pos,X.assoc),H=E?(E.top+E.bottom)/2:0;if(!E||(t?H>a:H<a))return K.cursor(X.pos,X.assoc,void 0,o)}}function ol(i,e,t){for(;;){let r=0;for(let n of i)n.between(e-1,e+1,(s,o,a)=>{if(e>s&&e<o){let l=r||t||(e-s<o-e?-1:1);e=l<0?s:o,r=l}});if(!r)return e}}function Tx(i,e){let t=null;for(let r=0;r<e.ranges.length;r++){let n=e.ranges[r],s=null;if(n.empty){let o=ol(i,n.from,0);o!=n.from&&(s=K.cursor(o,-1))}else{let o=ol(i,n.from,-1),a=ol(i,n.to,1);(o!=n.from||a!=n.to)&&(n.undirectional?s=K.undirectionalRange(n.from,n.to):s=K.range(n.from==n.anchor?o:a,n.from==n.head?o:a))}s&&(t||(t=e.ranges.slice()),t[r]=s)}return t?K.create(t,e.mainIndex):e}function UO(i,e,t){let r=ol(i.state.facet(ml).map(n=>n(i)),t.from,e.head>t.from?-1:1);return r==t.from?t:K.cursor(r,r<t.from?1:-1)}var Pr=class{constructor(e,t){this.pos=e,this.assoc=t}};function ad(i,e,t,r){let n=i.contentDOM.getBoundingClientRect(),s=n.top+i.viewState.paddingTop,{x:o,y:a}=e,l=a-s,c;for(;;){if(l<0)return new Pr(0,1);if(l>i.viewState.docHeight)return new Pr(i.state.doc.length,-1);if(c=i.elementAtHeight(l),r==null)break;if(c.type==mi.Text){if(r<0?c.to<i.viewport.from:c.from>i.viewport.to)break;let p=i.docView.coordsAt(r<0?c.from:c.to,r>0?-1:1);if(p&&(r<0?p.top<=l+s:p.bottom>=l+s))break}let O=i.viewState.heightOracle.textHeight/2;l=r>0?c.bottom+O:c.top-O}if(i.viewport.from>=c.to||i.viewport.to<=c.from){if(t)return null;if(c.type==mi.Text){let O=Pk(i,n,c,o,a);return new Pr(O,O==c.from?1:-1)}}if(c.type!=mi.Text)return l<(c.top+c.bottom)/2?new Pr(c.from,1):new Pr(c.to,-1);let u=i.docView.lineAt(c.from,2);return(!u||u.length!=c.length)&&(u=i.docView.lineAt(c.from,-2)),new ld(i,o,a,i.textDirectionAt(c.from)).scanTile(u,c.from)}var ld=class{constructor(e,t,r,n){this.view=e,this.x=t,this.y=r,this.baseDir=n,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,t){let{line:r,spans:n}=this.bidiSpansAt(e);return n[kr.find(n,e-r.from,-1,t)].level==this.baseDir}dirAt(e,t){let{line:r,spans:n}=this.bidiSpansAt(e);return n[kr.find(n,e-r.from,-1,t)].dir}bidiIn(e,t){let{spans:r,line:n}=this.bidiSpansAt(e);return r.length>1||r.length&&(r[0].level!=this.baseDir||r[0].to+n.from<t)}scan(e,t,r=!1){let n=0,s=e.length-1,o=new Set,a=this.bidiIn(e[0],e[s]),l,c,u=-1,O=1e9,p;e:for(;n<s;){let y=s-n,P=n+s>>1;t:if(o.has(P)){for(let H=1;H<y;H++){let V=P+H;if(V>=s&&(V-=y),!o.has(V)){P=V;break t}}break e}o.add(P);let X=t(P),E=0;if(X)for(let H=0;H<X.length;H++){let V=X[H];if(!(V.width==0&&X.length>1))if(V.bottom<this.y)(!l||l.bottom<V.bottom)&&(l=V),E=1;else if(V.top>this.y)(!c||c.top>V.top)&&(c=V),E=-1;else{let B=V.left>this.x?this.x-V.left:V.right<this.x?this.x-V.right:0,M=Math.abs(B);M<O&&(u=P,O=M,p=V),B&&(E=B<0==(this.baseDir==vt.LTR)?-1:1)}}E==-1&&(!a||this.baseDirAt(e[P],1))?s=P:E==1&&(!a||this.baseDirAt(e[P+1],-1))&&(n=P+1)}if(!p){if(!c&&!l)return{i:e[0],after:!1};let y=l&&(!c||this.y-l.bottom<c.top-this.y)?l:c;return this.y=(y.top+y.bottom)/2,this.scan(e,t,!0)}if(O&&!r){let{top:y,bottom:P}=p;if(l&&l.bottom>(y+y+P)/3)return this.y=l.bottom-1,this.scan(e,t,!0);if(c&&c.top<(y+P+P)/3)return this.y=c.top+1,this.scan(e,t,!0)}let b=(a?this.dirAt(e[u],1):this.baseDir)==vt.LTR;return{i:u,after:this.x>(p.left+p.right)/2==b}}scanText(e,t){let r=[];for(let s=0;s<e.length;s=Mt(e.text,s))r.push(t+s);r.push(t+e.length);let n=this.scan(r,s=>{let o=r[s]-t,a=r[s+1]-t;return Ol(e.dom,o,a).getClientRects()});return n.after?new Pr(r[n.i+1],-1):new Pr(r[n.i],1)}scanTile(e,t){if(!e.length)return new Pr(t,1);if(e.children.length==1){let a=e.children[0];if(a.isText())return this.scanText(a,t);if(a.isComposite())return this.scanTile(a,t)}let r=[t];for(let a=0,l=t;a<e.children.length;a++)r.push(l+=e.children[a].length);let n=this.scan(r,a=>{let l=e.children[a];return l.flags&48?null:(l.dom.nodeType==1?l.dom:Ol(l.dom,0,l.length)).getClientRects()}),s=e.children[n.i],o=r[n.i];return s.isText()?this.scanText(s,o):s.isComposite()?this.scanTile(s,o):n.after?new Pr(r[n.i+1],-1):new Pr(o,1)}},Go="\uFFFF",cd=class{
Line truncated
|
|
|
|
|
`&&i.lineWrapping&&(r&&(r=K.single(r.main.anchor-1,r.main.head-1)),t={from:s.from,to:s.to,insert:rt.of([" "])}),t)return qd(i,t,r,o);if(r&&!gh(r,s)){let a=!1,l="select";return i.inputState.lastSelectionTime>Date.now()-50&&(i.inputState.lastSelectionOrigin=="select"&&(a=!0),l=i.inputState.lastSelectionOrigin,l=="select.pointer"&&(r=Tx(n.facet(ml).map(c=>c(i)),r))),i.dispatch({selection:r,scrollIntoView:a,userEvent:l}),!0}else return!1}function qd(i,e,t,r=-1){if(xe.ios&&i.inputState.flushIOSKey(e))return!0;let n=i.state.selection.main;if(xe.android&&(e.to==n.to&&(e.from==n.from||e.from==n.from-1&&i.state.sliceDoc(e.from,n.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&ia(i.contentDOM,"Enter",13)||(e.from==n.from-1&&e.to==n.to&&e.insert.length==0||r==8&&e.insert.length<e.to-e.from&&e.to>n.head)&&ia(i.contentDOM,"Backspace",8)||e.from==n.from&&e.to==n.to+1&&e.insert.length==0&&ia(i.contentDOM,"Delete",46)))return!0;let s=e.insert.toString();i.inputState.composing>=0&&i.inputState.composing++;let o,a=()=>o||(o=Ck(i,e,t));return i.state.facet(mx).some(l=>l(i,e.from,e.to,s,a))||i.dispatch(a()),!0}function Ck(i,e,t){let r,n=i.state,s=n.selection.main,o=-1;if(e.from==e.to&&e.from<s.from||e.from>s.to){let l=e.from<s.from?-1:1,c=l<0?s.from:s.to,u=ol(n.facet(ml).map(O=>O(i)),c,l);e.from==u&&(o=u)}if(o>-1)r={changes:e,selection:K.cursor(e.from+e.insert.length,-1)};else if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&i.inputState.composing<0){let l=s.from<e.from?n.sliceDoc(s.from,e.from):"",c=s.to>e.to?n.sliceDoc(e.to,s.to):"";r=n.replaceSelection(i.state.toText(l+e.insert.sliceString(0,void 0,i.state.lineBreak)+c))}else{let l=n.changes(e),c=t&&t.main.to<=l.newLength?t.main:void 0;if(n.selection.ranges.length>1&&(i.inputState.composing>=0||i.inputState.compositionPendingChange)&&e.to<=s.to+10&&e.to>=s.to-10){let u=i.state.sliceDoc(e.from,e.to),O,p=t&&kx(i,t.main.head);if(p){let y=e.insert.length-(e.to-e.from);O={from:p.from,to:p.to-y}}else O=i.state.doc.lineAt(s.head);let b=s.to-e.to;r=n.changeByRange(y=>{if(y.from==s.from&&y.to==s.to)return{changes:l,range:c||y.map(l)};let P=y.to-b,X=P-u.length;if(i.state.sliceDoc(X,P)!=u||P>=O.from&&X<=O.to)return{range:y};let E=n.changes({from:X,to:P,insert:e.insert}),H=y.to-s.to;return{changes:E,range:c?K.range(Math.max(0,c.anchor+H),Math.max(0,c.head+H)):y.map(E)}})}else r={changes:l,selection:c&&n.selection.replaceRange(c)}}let a="input.type";return(i.composing||i.inputState.compositionPendingChange&&i.inputState.compositionEndedAt>Date.now()-50)&&(i.inputState.compositionPendingChange=!1,a+=".compose",i.inputState.compositionFirstChange&&(a+=".start",i.inputState.compositionFirstChange=!1)),n.update(r,{userEvent:a,scrollIntoView:!0})}function Rx(i,e,t,r){let n=Math.min(i.length,e.length),s=0;for(;s<n&&i.charCodeAt(s)==e.charCodeAt(s);)s++;if(s==n&&i.length==e.length)return null;let o=i.length,a=e.length;for(;o>0&&a>0&&i.charCodeAt(o-1)==e.charCodeAt(a-1);)o--,a--;if(r=="end"){let l=Math.max(0,s-Math.min(o,a));t-=o+l-s}if(o<s&&i.length<e.length){let l=t<=s&&t>=o?s-t:0;s-=l,a=s+(a-o),o=s}else if(a<s){let l=t<=s&&t>=a?s-t:0;s-=l,o=s+(o-a),a=s}return{from:s,toA:o,toB:a}}function Zk(i){let e=[];if(i.root.activeElement!=i.contentDOM)return e;let{anchorNode:t,anchorOffset:r,focusNode:n,focusOffset:s}=i.observer.selectionRange;return t&&(e.push(new mh(t,r)),(n!=t||s!=r)&&e.push(new mh(n,s))),e}function Ak(i,e){if(i.length==0)return null;let t=i[0].pos,r=i.length==2?i[1].pos:t;return t>-1&&r>-1?K.single(t+e,r+e):null}function gh(i,e){return e.head==i.main.head&&e.anchor==i.main.anchor}var ud=class{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,this.lastKeyCode=0,this.lastKeyTime=0,this.touchActive=!1,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.lastIOSMomentumScroll=0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=e.hasFocus,xe.safari&&e.contentDOM.addEventListener("input",()=>null),xe.gecko&&Bk(e.contentDOM.ownerDocument)}handleEvent(e){!Wk(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let r=this.handlers[e];if(r){for(let n of r.observers)n(this.view,t);for(let n of r.handlers){if(t.defaultPrevented)break;if(n(this.view,t)){t.preventDefault();break}}}}ensureHandl
Line truncated
|
|
|
|
|
`))};if((xe.mac||xe.android)&&O.from==o-1&&/^\. ?$/.test(r.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(O={from:a,to:l,insert:rt.of([r.text.replace("."," ")])}),this.pendingContextChange=O,!e.state.readOnly){let p=this.to-this.from+(O.to-O.from+O.insert.length);qd(e,O,K.single(this.toEditorPos(r.selectionStart,p),this.toEditorPos(r.selectionEnd,p)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),O.from<O.to&&!O.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,r.updateRangeStart-1),Math.min(t.text.length,r.updateRangeStart+1)))&&this.handlers.compositionend(r)},this.handlers.characterboundsupdate=r=>{let n=[],s=null;for(let o=this.toEditorPos(r.rangeStart),a=this.toEditorPos(r.rangeEnd);o<a;o++){let l=e.coordsForChar(o);s=l&&new DOMRect(l.left,l.top,l.right-l.left,l.bottom-l.top)||s||new DOMRect,n.push(s)}t.updateCharacterBounds(r.rangeStart,n)},this.handlers.textformatupdate=r=>{let n=[];for(let s of r.getTextFormats()){let o=s.underlineStyle,a=s.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(a)){let l=this.toEditorPos(s.rangeStart),c=this.toEditorPos(s.rangeEnd);if(l<c){let u=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(a)?1:2}px`;n.push(Oe.mark({attributes:{style:u}}).range(l,c))}}}e.dispatch({effects:Sx.of(Oe.set(n))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:r}=this.composing;this.composing=null,r&&this.reset(e.state)}};for(let r in this.handlers)t.addEventListener(r,this.handlers[r]);this.measureReq={read:r=>{let n=fl(r.root);n&&n.rangeCount&&this.editContext.updateSelectionBounds(n.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,r=!1,n=this.pendingContextChange;return e.changes.iterChanges((s,o,a,l,c)=>{if(r)return;let u=c.length-(o-s);if(n&&o>=n.to)if(n.from==s&&n.to==o&&n.insert.eq(c)){n=this.pendingContextChange=null,t+=u,this.to+=u;return}else n=null,this.revertPending(e.state);if(s+=t,o+=t,o<=this.from)this.from+=u,this.to+=u;else if(s<this.to){if(s<this.from||o>this.to||this.to-this.from+c.length>3e4){r=!0;return}this.editContext.updateText(this.toContextPos(s),this.toContextPos(o),c.toString()),this.to+=u}t+=u}),n&&!r&&this.revertPending(e.state),!r}update(e){let t=this.pendingContextChange,r=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(r.from,r.to)&&e.transactions.some(n=>!n.isUserEvent("input.type")&&n.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,r=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),n=this.toContextPos(t.head);(this.editContext.selectionStart!=r||this.editContext.selectionEnd!=n)&&this.editContext.updateSelection(r,n)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let r=this.composing;return r&&r.drifted?r.editorBase+(e-r.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}},ae=class i{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){var t;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDO
Line truncated
|
|
|
|
|
-\x7F-\x9F\xAD\u061C\u200B\u200E\u200F\u2028\u2029\u202D\u202E\u2066\u2067\u2069\uFEFF\uFFF9-\uFFFC]`,Td),yT={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"},YO=null;function QT(){var i;if(YO==null&&typeof document!="undefined"&&document.body){let e=document.body.style;YO=((i=e.tabSize)!==null&&i!==void 0?i:e.MozTabSize)!=null}return YO||!1}var ah=be.define({combine(i){let e=rr(i,{render:null,specialChars:ST,addSpecialChars:null});return(e.replaceTabs=!QT())&&(e.specialChars=new RegExp(" |"+e.specialChars.source,Td)),e.addSpecialChars&&(e.specialChars=new RegExp(e.specialChars.source+"|"+e.addSpecialChars.source,Td)),e}});function Hx(i={}){return[ah.of(i),wT()]}var Vb=null;function wT(){return Vb||(Vb=Xt.fromClass(class{constructor(i){this.view=i,this.decorations=Oe.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(i.state.facet(ah)),this.decorations=this.decorator.createDeco(i)}makeDecorator(i){return new dl({regexp:i.specialChars,decoration:(e,t,r)=>{let{doc:n}=t.state,s=Vr(e[0],0);if(s==9){let o=n.lineAt(r),a=t.state.tabSize,l=Mi(o.text,a,r-o.from);return Oe.replace({widget:new _d((a-l%a)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[s]||(this.decorationCache[s]=Oe.replace({widget:new Xd(i,s)}))},boundary:i.replaceTabs?void 0:/[^]/})}update(i){let e=i.state.facet(ah);i.startState.facet(ah)!=e?(this.decorator=this.makeDecorator(e),this.decorations=this.decorator.createDeco(i.view)):this.decorations=this.decorator.updateDeco(i,this.decorations)}},{decorations:i=>i.decorations}))}var $T="\u2022";function PT(i){return i>=32?$T:i==10?"\u2424":String.fromCharCode(9216+i)}var Xd=class extends It{constructor(e,t){super(),this.options=e,this.code=t}eq(e){return e.code==this.code}toDOM(e){let t=PT(this.code),r=e.state.phrase("Control character")+" "+(yT[this.code]||"0x"+this.code.toString(16)),n=this.options.render&&this.options.render(this.code,r,t);if(n)return n;let s=document.createElement("span");return s.textContent=t,s.title=r,s.setAttribute("aria-label",r),s.className="cm-specialChar",s}ignoreEvent(){return!1}},_d=class extends It{constructor(e){super(),this.width=e}eq(e){return e.width==this.width}toDOM(){let e=document.createElement("span");return e.textContent=" ",e.className="cm-tab",e.style.width=this.width+"px",e}ignoreEvent(){return!1}};function Rh(){return TT}var kT=Oe.line({class:"cm-activeLine"}),TT=Xt.fromClass(class{constructor(i){this.decorations=this.getDeco(i)}update(i){(i.docChanged||i.selectionSet)&&(this.decorations=this.getDeco(i.view))}getDeco(i){let e=-1,t=[];for(let r of i.state.selection.ranges){let n=i.lineBlockAt(r.head);n.from>e&&(t.push(kT.range(n.from)),e=n.from)}return Oe.set(t)}},{decorations:i=>i.decorations});var Rd=2e3;function XT(i,e,t){let r=Math.min(e.line,t.line),n=Math.max(e.line,t.line),s=[];if(e.off>Rd||t.off>Rd||e.col<0||t.col<0){let o=Math.min(e.off,t.off),a=Math.max(e.off,t.off);for(let l=r;l<=n;l++){let c=i.doc.line(l);c.length<=a&&s.push(K.range(c.from+o,c.to+a))}}else{let o=Math.min(e.col,t.col),a=Math.max(e.col,t.col);for(let l=r;l<=n;l++){let c=i.doc.line(l),u=Nc(c.text,o,i.tabSize,!0);if(u<0)s.push(K.cursor(c.to));else{let O=Nc(c.text,a,i.tabSize);s.push(K.range(c.from+u,c.from+O))}}}return s}function _T(i,e){let t=i.coordsAtPos(i.viewport.from);return t?Math.round(Math.abs((t.left-e)/i.defaultCharacterWidth)):-1}function qb(i,e){let t=i.posAtCoords({x:e.clientX,y:e.clientY},!1),r=i.state.doc.lineAt(t),n=t-r.from,s=n>Rd?-1:n==r.length?_T(i,e.clientX):Mi(r.text,i.state.tabSize,t-r.from);return{line:r.number,col:s,off:n}}function RT(i,e){let t=qb(i,e),r=i.state.selection;return t?{update(n){if(n.docChanged){let s=n.changes.mapPos(n.startState.doc.line(t.line).from),o=n.state.doc.lineAt(s);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},r=r.map(n.changes)}},get(n,s,o){let a=qb(i,n);if(!a)return r;let l=XT(i.state,t,a);return l.length?o?K.create(l.concat(r.ranges)):K.create(l):r}}:null}function Ch(i){let e=(i==null?void 0:i.eventFilter)||(t=>t.altKey&&t.button==0);return ae.mouseSelectionStyle.of((t,r)=>e(r)?RT(t,r):null)}var CT={Alt:[18,i=>!!i.altKey],Control:[17,i=>!!i.ctrlKey],Shift:[16,i=>!!i.shiftKey],Meta:[91,i=>!!i.metaKey]},ZT={style:"cursor: crosshair"};function Zh(i={}){let[e,t]=CT[i.key||"Alt"],r=Xt.fromClass(class{constructor(n){this.view=n,this.isDown=!1}set(n){this.isDown!=n&&(this.isDown=n,this.view.update([]))}},{eventObservers:{keydown(n){this.set(n.keyCode==e||t(n))},keyup(n){(n.keyCode==e||!t(n))&&this.set(!1)},mousemove(n){this.set(t(n))}}}
Line truncated
|
|
|
|
|
`&&(t="");else{let r=t.indexOf(`
|
|
|
|
|
`);r>-1&&(t=t.slice(0,r))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),r=e+t.length;for(let n=this.rangeIndex;;){let s=this.ranges[n].to;if(s>=r||(t=t.slice(0,s-(r-t.length)),n++,n==this.ranges.length))break;let o=this.ranges[n].from,a=this.lineAfter(o);t+=a,r=o+a.length}return{line:t,end:r}}skipGapsTo(e,t,r){for(;;){let n=this.ranges[this.rangeIndex].to,s=e+t;if(r>0?n>s:n>=s)break;let o=this.ranges[++this.rangeIndex].from;t+=o-n}return t}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to<this.parsedPos;)this.rangeIndex++}emitToken(e,t,r,n){let s=4;if(this.ranges.length>1){n=this.skipGapsTo(t,n,1),t+=n;let a=this.chunk.length;n=this.skipGapsTo(r,n,-1),r+=n,s+=this.chunk.length-a}let o=this.chunk.length-4;return this.lang.streamParser.mergeTokens&&s==4&&o>=0&&this.chunk[o]==e&&this.chunk[o+2]==t?this.chunk[o+2]=r:this.chunk.push(e,t,r,s),n}parseLine(e){let{line:t,end:r}=this.nextLine(),n=0,{streamParser:s}=this.lang,o=new Ih(t,e?e.state.tabSize:4,e?ws(e.state):2);if(o.eol())s.blankLine(this.state,o.indentUnit);else for(;!o.eol();){let a=Dv(s.token,o,this.state);if(a&&(n=this.emitToken(this.lang.tokenTable.resolve(a),this.parsedPos+o.start,this.parsedPos+o.pos,n)),o.start>1e4)break}this.parsedPos=r,this.moveRangeIndex(),this.parsedPos<this.to&&this.parsedPos++}finishChunk(){let e=Ge.build({buffer:this.chunk,start:this.chunkStart,length:this.parsedPos-this.chunkStart,nodeSet:jX,topID:0,maxBufferLength:512,reused:this.chunkReused});e=new Ge(e.type,e.children,e.positions,e.length,[[this.lang.stateAfter,this.lang.streamParser.copyState(this.state)]]),this.chunks.push(e),this.chunkPos.push(this.chunkStart-this.ranges[0].from),this.chunk=[],this.chunkReused=void 0,this.chunkStart=this.parsedPos}finish(){return new Ge(this.lang.topNode,this.chunks,this.chunkPos,this.parsedPos-this.ranges[0].from).balance()}};function Dv(i,e,t){e.start=e.pos;for(let r=0;r<10;r++){let n=i(e,t);if(e.pos>e.start)return n}throw new Error("Stream parser failed to advance stream.")}var kp=Object.create(null),Ql=[Ut.none],jX=new Vn(Ql),Xv=[],_v=Object.create(null),Iv=Object.create(null);for(let[i,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Iv[i]=Nv(kp,e);var Nh=class{constructor(e){this.extra=e,this.table=Object.assign(Object.create(null),Iv)}resolve(e){return e?this.table[e]||(this.table[e]=Nv(this.extra,e)):0}},WX=new Nh(kp);function fp(i,e){Xv.indexOf(i)>-1||(Xv.push(i),console.warn(e))}function Nv(i,e){let t=[];for(let a of e.split(" ")){let l=[];for(let c of a.split(".")){let f=i[c]||S[c];f?typeof f=="function"?l.length?l=l.map(f):fp(c,`Modifier ${c} used at start of tag`):l.length?fp(c,`Tag ${c} used as modifier`):l=Array.isArray(f)?f:[f]:fp(c,`Unknown highlighting tag ${c}`)}for(let c of l)t.push(c)}if(!t.length)return 0;let r=e.replace(/ /g,"_"),n=r+" "+t.map(a=>a.id),s=_v[n];if(s)return s.id;let o=_v[n]=Ut.define({id:Ql.length,name:r,props:[gi({[r]:t})]});return Ql.push(o),o.id}function VX(i,e){let t=Ut.define({id:Ql.length,name:"Document",props:[In.add(()=>i),Xr.add(()=>r=>e.getIndent(r))],top:!0});return Ql.push(t),t}var oY={rtl:Oe.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:vt.RTL}),ltr:Oe.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:vt.LTR}),auto:Oe.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var Jh=class{constructor(e,t,r,n){this.state=e,this.pos=t,this.explicit=r,this.view=n,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let t=ct(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),r=Math.max(t.from,this.pos-250),n=t.text.slice(r-t.from,this.pos-t.from),s=n.search(DX(e,!1));return s<0?null:{from:r+s,to:this.pos,text:n.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t,r){e=="abort"&&this.abortListeners&&(this.abortListeners.push(t),r&&r.onDocChange&&(this.abortOnDocChange=!0))}};function Fv(i){let e=Object.keys(i).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function qX(i){let e=Object.create(null),t=Object.create(null);for(let{label:n}of i){e[n[0]]=!0;for(let s=1;s<n.length;s++)t[n[s]]=!0}let r=Fv(e)+Fv(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function Kv(i){let e=i.map(n=>typeof n=="string"?{label:n}:n),[t,r]=e.every(n=>/^\w+$/.test(n.label))?[/\w*$/,/\w+$/]:qX(e);return n=>{let s=n.matchBefore(r);return s||n.explicit?{from:s?s.from:n.pos,options:e,validFor:t}:null}}function Jv(i,e){return t=>{for(let r=ct(t.state).reso
Line truncated
|
|
|
|
|
`;let o=i.state.facet(vn),a=o instanceof bi?"Lezer LRLanguage":o instanceof ti?"StreamLanguage":"Unknown",l=o instanceof bi?"AST ":o instanceof ti?"Token ":"Name ";return{pos:e,above:!0,arrow:!0,create(c){let f=document.createElement("div");f.style.overflow="visible",f.style.height="0",f.style.width="0";let O=document.createElement("div");return O.className="cm-debug-tooltip",O.textContent=`Parser: ${a}
|
|
|
|
|
`);r>-1&&(t=t.slice(0,r))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),r=e+t.length;for(let n=this.rangeIndex;;){let s=this.ranges[n].to;if(s>=r||(t=t.slice(0,s-(r-t.length)),n++,n==this.ranges.length))break;let o=this.ranges[n].from,a=this.lineAfter(o);t+=a,r=o+a.length}return{line:t,end:r}}skipGapsTo(e,t,r){for(;;){let n=this.ranges[this.rangeIndex].to,s=e+t;if(r>0?n>s:n>=s)break;let o=this.ranges[++this.rangeIndex].from;t+=o-n}return t}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to<this.parsedPos;)this.rangeIndex++}emitToken(e,t,r,n){let s=4;if(this.ranges.length>1){n=this.skipGapsTo(t,n,1),t+=n;let a=this.chunk.length;n=this.skipGapsTo(r,n,-1),r+=n,s+=this.chunk.length-a}let o=this.chunk.length-4;return this.lang.streamParser.mergeTokens&&s==4&&o>=0&&this.chunk[o]==e&&this.chunk[o+2]==t?this.chunk[o+2]=r:this.chunk.push(e,t,r,s),n}parseLine(e){let{line:t,end:r}=this.nextLine(),n=0,{streamParser:s}=this.lang,o=new Ih(t,e?e.state.tabSize:4,e?ws(e.state):2);if(o.eol())s.blankLine(this.state,o.indentUnit);else for(;!o.eol();){let a=Iv(s.token,o,this.state);if(a&&(n=this.emitToken(this.lang.tokenTable.resolve(a),this.parsedPos+o.start,this.parsedPos+o.pos,n)),o.start>1e4)break}this.parsedPos=r,this.moveRangeIndex(),this.parsedPos<this.to&&this.parsedPos++}finishChunk(){let e=Ge.build({buffer:this.chunk,start:this.chunkStart,length:this.parsedPos-this.chunkStart,nodeSet:jX,topID:0,maxBufferLength:512,reused:this.chunkReused});e=new Ge(e.type,e.children,e.positions,e.length,[[this.lang.stateAfter,this.lang.streamParser.copyState(this.state)]]),this.chunks.push(e),this.chunkPos.push(this.chunkStart-this.ranges[0].from),this.chunk=[],this.chunkReused=void 0,this.chunkStart=this.parsedPos}finish(){return new Ge(this.lang.topNode,this.chunks,this.chunkPos,this.parsedPos-this.ranges[0].from).balance()}};function Iv(i,e,t){e.start=e.pos;for(let r=0;r<10;r++){let n=i(e,t);if(e.pos>e.start)return n}throw new Error("Stream parser failed to advance stream.")}var Tp=Object.create(null),Ql=[Ut.none],jX=new Vn(Ql),_v=[],Rv=Object.create(null),Nv=Object.create(null);for(let[i,e]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])Nv[i]=Fv(Tp,e);var Nh=class{constructor(e){this.extra=e,this.table=Object.assign(Object.create(null),Nv)}resolve(e){return e?this.table[e]||(this.table[e]=Fv(this.extra,e)):0}},WX=new Nh(Tp);function fp(i,e){_v.indexOf(i)>-1||(_v.push(i),console.warn(e))}function Fv(i,e){let t=[];for(let a of e.split(" ")){let l=[];for(let c of a.split(".")){let u=i[c]||S[c];u?typeof u=="function"?l.length?l=l.map(u):fp(c,`Modifier ${c} used at start of tag`):l.length?fp(c,`Tag ${c} used as modifier`):l=Array.isArray(u)?u:[u]:fp(c,`Unknown highlighting tag ${c}`)}for(let c of l)t.push(c)}if(!t.length)return 0;let r=e.replace(/ /g,"_"),n=r+" "+t.map(a=>a.id),s=Rv[n];if(s)return s.id;let o=Rv[n]=Ut.define({id:Ql.length,name:r,props:[gi({[r]:t})]});return Ql.push(o),o.id}function VX(i,e){let t=Ut.define({id:Ql.length,name:"Document",props:[In.add(()=>i),Xr.add(()=>r=>e.getIndent(r))],top:!0});return Ql.push(t),t}var aY={rtl:Oe.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:vt.RTL}),ltr:Oe.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:vt.LTR}),auto:Oe.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var Jh=class{constructor(e,t,r,n){this.state=e,this.pos=t,this.explicit=r,this.view=n,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(e){let t=ct(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),r=Math.max(t.from,this.pos-250),n=t.text.slice(r-t.from,this.pos-t.from),s=n.search(DX(e,!1));return s<0?null:{from:r+s,to:this.pos,text:n.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t,r){e=="abort"&&this.abortListeners&&(this.abortListeners.push(t),r&&r.onDocChange&&(this.abortOnDocChange=!0))}};function Bv(i){let e=Object.keys(i).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function qX(i){let e=Object.create(null),t=Object.create(null);for(let{label:n}of i){e[n[0]]=!0;for(let s=1;s<n.length;s++)t[n[s]]=!0}let r=Bv(e)+Bv(t)+"*$";return[new RegExp("^"+r),new RegExp(r)]}function Jv(i){let e=i.map(n=>typeof n=="string"?{label:n}:n),[t,r]=e.every(n=>/^\w+$/.test(n.label))?[/\w*$/,/\w+$/]:qX(e);return n=>{let s=n.matchBefore(r);return s||n.explicit?{from:s?s.from:n.pos,options:e,validFor:t}:null}}function eS(i,e){return t=>{for(let r=ct(t.state).reso
Line truncated
|
|
|
|
|
`;let o=i.state.facet(vn),a=o instanceof bi?"Lezer LRLanguage":o instanceof ti?"StreamLanguage":"Unknown",l=o instanceof bi?"AST ":o instanceof ti?"Token ":"Name ";return{pos:e,above:!0,arrow:!0,create(c){let u=document.createElement("div");u.style.overflow="visible",u.style.height="0",u.style.width="0";let O=document.createElement("div");return O.className="cm-debug-tooltip",O.textContent=`Parser: ${a}
|
|
|
|
|
${l}: ${r.name}
|
|
|
|
|
Tags : ${s}`,O.style.whiteSpace="pre-wrap",O.style.fontFamily="monospace",O.style.background="#333",O.style.color="white",O.style.padding="2px 8px",O.style.borderRadius="4px",O.style.fontSize="12px",O.style.border="1px solid #555",O.style.pointerEvents="none",O.style.position="absolute",O.style.bottom="0",O.style.width="max-content",f.appendChild(O),{dom:f}}}},{hoverTime:10,hideOnChange:!0});var u_=i=>{let{state:e}=i,t=e.doc.lineAt(e.selection.main.from),r=Lp(i.state,t.from);return r.line?O_(i):r.block?p_(i):!1};function Yp(i,e){return({state:t,dispatch:r})=>{if(t.readOnly)return!1;let n=i(e,t);return n?(r(t.update(n)),!0):!1}}var O_=Yp(b_,0);var d_=Yp(mS,0);var p_=Yp((i,e)=>mS(i,e,g_(e)),0);function Lp(i,e){let t=i.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}var kl=50;function m_(i,{open:e,close:t},r,n){let s=i.sliceDoc(r-kl,r),o=i.sliceDoc(n,n+kl),a=/\s*$/.exec(s)[0].length,l=/^\s*/.exec(o)[0].length,c=s.length-a;if(s.slice(c-e.length,c)==e&&o.slice(l,l+t.length)==t)return{open:{pos:r-a,margin:a&&1},close:{pos:n+l,margin:l&&1}};let f,O;n-r<=2*kl?f=O=i.sliceDoc(r,n):(f=i.sliceDoc(r,r+kl),O=i.sliceDoc(n-kl,n));let p=/^\s*/.exec(f)[0].length,b=/\s*$/.exec(O)[0].length,y=O.length-b-t.length;return f.slice(p,p+e.length)==e&&O.slice(y,y+t.length)==t?{open:{pos:r+p+e.length,margin:/\s/.test(f.charAt(p+e.length))?1:0},close:{pos:n-b-t.length,margin:/\s/.test(O.charAt(y-1))?1:0}}:null}function g_(i){let e=[];for(let t of i.selection.ranges){let r=i.doc.lineAt(t.from),n=t.to<=r.to?r:i.doc.lineAt(t.to);n.from>r.from&&n.from==t.to&&(n=t.to==r.to+1?r:i.doc.lineAt(t.to-1));let s=e.length-1;s>=0&&e[s].to>r.from?e[s].to=n.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:n.to})}return e}function mS(i,e,t=e.selection.ranges){let r=t.map(s=>Lp(e,s.from).block);if(!r.every(s=>s))return null;let n=t.map((s,o)=>m_(e,r[o],s.from,s.to));if(i!=2&&!n.every(s=>s))return{changes:e.changes(t.map((s,o)=>n[o]?[]:[{from:s.from,insert:r[o].open+" "},{from:s.to,insert:" "+r[o].close}]))};if(i!=1&&n.some(s=>s)){let s=[];for(let o=0,a;o<n.length;o++)if(a=n[o]){let l=r[o],{open:c,close:f}=a;s.push({from:c.pos-l.open.length,to:c.pos+c.margin},{from:f.pos-f.margin,to:f.pos+l.close.length})}return{changes:s}}return null}function b_(i,e,t=e.selection.ranges){let r=[],n=-1;e:for(let{from:s,to:o}of t){let a=r.length,l=1e9,c;for(let f=s;f<=o;){let O=e.doc.lineAt(f);if(c==null&&(c=Lp(e,O.from).line,!c))continue e;if(O.from>n&&(s==o||o>O.from)){n=O.from;let p=/^\s*/.exec(O.text)[0].length,b=p==O.length,y=O.text.slice(p,p+c.length)==c?p:-1;p<O.text.length&&p<l&&(l=p),r.push({line:O,comment:y,token:c,indent:p,empty:b,single:!1})}f=O.to+1}if(l<1e9)for(let f=a;f<r.length;f++)r[f].indent<r[f].line.text.length&&(r[f].indent=l);r.length==a+1&&(r[a].single=!0)}if(i!=2&&r.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:a,token:l,indent:c,empty:f,single:O}of r)(O||!f)&&s.push({from:a.from+c,insert:l+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(i!=1&&r.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:a,token:l}of r)if(a>=0){let c=o.from+a,f=c+l.length;o.text[f-o.from]==" "&&f++,s.push({from:c,to:f})}return{changes:s}}return null}var Ep=Bi.define(),nf=Bi.define(),x_=be.define(),gS=be.define({combine(i){return rr(i,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(r,n)=>e(r,n)||t(r,n)})}}),bS=at.define({create(){return go.empty},update(i,e){let t=e.state.facet(gS),r=e.annotation(Ep);if(r){let l=Fr.fromTransaction(e,r.selection),c=r.side,f=c==0?i.undone:i.done;return l?f=rf(f,f.length,t.minDepth,l):f=SS(f,e.startState.selection),new go(c==0?r.rest:f,c==0?f:r.rest)}let n=e.annotation(nf);if((n=="full"||n=="before")&&(i=i.isolate()),e.annotation(At.addToHistory)===!1)return e.changes.empty?i:i.addMapping(e.changes.desc);let s=Fr.fromTransaction(e),o=e.annotation(At.time),a=e.annotation(At.userEvent);return s?i=i.addChanges(s,o,a,t,e):e.selection&&(i=i.addSelection(e.startState.selection,o,a,t.newGroupDelay)),(n=="full"||n=="after")&&(i=i.isolate()),i},toJSON(i){return{done:i.done.map(e=>e.toJSON()),undone:i.undone.map(e=>e.toJSON())}},fromJSON(i){return new go(i.done.map(Fr.fromJSON),i.undone.map(Fr.fromJSON))}});function xS(i={}){return[bS,gS.of(i),ae.domEventHandlers({beforeinput(e,t){let r=e.inputType=="historyUndo"?of:e.inputType=="historyRedo"?Tl:null;return r?(e.preventDefault(),r(t)):!1}})]}function sf(i,e){return function({state:t,dispatch:r}){if(!e&&t.readOnly)return!1;let n=t.field(bS,!1);if(!n)return!1;let s=n.pop(i,t,e);return s?(r(s),!0):!1}}var of=sf(0,!1),Tl=sf(1,!1),v_=sf(0,!0),S_=sf(1,!0);var Fr=class i{constructor(e,t,r,n,s){this.changes=e,this.effects=t,this.mapped=r,this.startSelection=n,this.selectionsAfter=s}setSelAfter(e){return new i(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=thi
Line truncated
|
|
|
|
|
Tags : ${s}`,O.style.whiteSpace="pre-wrap",O.style.fontFamily="monospace",O.style.background="#333",O.style.color="white",O.style.padding="2px 8px",O.style.borderRadius="4px",O.style.fontSize="12px",O.style.border="1px solid #555",O.style.pointerEvents="none",O.style.position="absolute",O.style.bottom="0",O.style.width="max-content",u.appendChild(O),{dom:u}}}},{hoverTime:10,hideOnChange:!0});var f_=i=>{let{state:e}=i,t=e.doc.lineAt(e.selection.main.from),r=Mp(i.state,t.from);return r.line?O_(i):r.block?p_(i):!1};function Lp(i,e){return({state:t,dispatch:r})=>{if(t.readOnly)return!1;let n=i(e,t);return n?(r(t.update(n)),!0):!1}}var O_=Lp(b_,0);var d_=Lp(gS,0);var p_=Lp((i,e)=>gS(i,e,g_(e)),0);function Mp(i,e){let t=i.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}var kl=50;function m_(i,{open:e,close:t},r,n){let s=i.sliceDoc(r-kl,r),o=i.sliceDoc(n,n+kl),a=/\s*$/.exec(s)[0].length,l=/^\s*/.exec(o)[0].length,c=s.length-a;if(s.slice(c-e.length,c)==e&&o.slice(l,l+t.length)==t)return{open:{pos:r-a,margin:a&&1},close:{pos:n+l,margin:l&&1}};let u,O;n-r<=2*kl?u=O=i.sliceDoc(r,n):(u=i.sliceDoc(r,r+kl),O=i.sliceDoc(n-kl,n));let p=/^\s*/.exec(u)[0].length,b=/\s*$/.exec(O)[0].length,y=O.length-b-t.length;return u.slice(p,p+e.length)==e&&O.slice(y,y+t.length)==t?{open:{pos:r+p+e.length,margin:/\s/.test(u.charAt(p+e.length))?1:0},close:{pos:n-b-t.length,margin:/\s/.test(O.charAt(y-1))?1:0}}:null}function g_(i){let e=[];for(let t of i.selection.ranges){let r=i.doc.lineAt(t.from),n=t.to<=r.to?r:i.doc.lineAt(t.to);n.from>r.from&&n.from==t.to&&(n=t.to==r.to+1?r:i.doc.lineAt(t.to-1));let s=e.length-1;s>=0&&e[s].to>r.from?e[s].to=n.to:e.push({from:r.from+/^\s*/.exec(r.text)[0].length,to:n.to})}return e}function gS(i,e,t=e.selection.ranges){let r=t.map(s=>Mp(e,s.from).block);if(!r.every(s=>s))return null;let n=t.map((s,o)=>m_(e,r[o],s.from,s.to));if(i!=2&&!n.every(s=>s))return{changes:e.changes(t.map((s,o)=>n[o]?[]:[{from:s.from,insert:r[o].open+" "},{from:s.to,insert:" "+r[o].close}]))};if(i!=1&&n.some(s=>s)){let s=[];for(let o=0,a;o<n.length;o++)if(a=n[o]){let l=r[o],{open:c,close:u}=a;s.push({from:c.pos-l.open.length,to:c.pos+c.margin},{from:u.pos-u.margin,to:u.pos+l.close.length})}return{changes:s}}return null}function b_(i,e,t=e.selection.ranges){let r=[],n=-1;e:for(let{from:s,to:o}of t){let a=r.length,l=1e9,c;for(let u=s;u<=o;){let O=e.doc.lineAt(u);if(c==null&&(c=Mp(e,O.from).line,!c))continue e;if(O.from>n&&(s==o||o>O.from)){n=O.from;let p=/^\s*/.exec(O.text)[0].length,b=p==O.length,y=O.text.slice(p,p+c.length)==c?p:-1;p<O.text.length&&p<l&&(l=p),r.push({line:O,comment:y,token:c,indent:p,empty:b,single:!1})}u=O.to+1}if(l<1e9)for(let u=a;u<r.length;u++)r[u].indent<r[u].line.text.length&&(r[u].indent=l);r.length==a+1&&(r[a].single=!0)}if(i!=2&&r.some(s=>s.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:a,token:l,indent:c,empty:u,single:O}of r)(O||!u)&&s.push({from:a.from+c,insert:l+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(i!=1&&r.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:a,token:l}of r)if(a>=0){let c=o.from+a,u=c+l.length;o.text[u-o.from]==" "&&u++,s.push({from:c,to:u})}return{changes:s}}return null}var Up=Bi.define(),ru=Bi.define(),x_=be.define(),bS=be.define({combine(i){return rr(i,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(r,n)=>e(r,n)||t(r,n)})}}),xS=at.define({create(){return go.empty},update(i,e){let t=e.state.facet(bS),r=e.annotation(Up);if(r){let l=Fr.fromTransaction(e,r.selection),c=r.side,u=c==0?i.undone:i.done;return l?u=iu(u,u.length,t.minDepth,l):u=yS(u,e.startState.selection),new go(c==0?r.rest:u,c==0?u:r.rest)}let n=e.annotation(ru);if((n=="full"||n=="before")&&(i=i.isolate()),e.annotation(At.addToHistory)===!1)return e.changes.empty?i:i.addMapping(e.changes.desc);let s=Fr.fromTransaction(e),o=e.annotation(At.time),a=e.annotation(At.userEvent);return s?i=i.addChanges(s,o,a,t,e):e.selection&&(i=i.addSelection(e.startState.selection,o,a,t.newGroupDelay)),(n=="full"||n=="after")&&(i=i.isolate()),i},toJSON(i){return{done:i.done.map(e=>e.toJSON()),undone:i.undone.map(e=>e.toJSON())}},fromJSON(i){return new go(i.done.map(Fr.fromJSON),i.undone.map(Fr.fromJSON))}});function vS(i={}){return[xS,bS.of(i),ae.domEventHandlers({beforeinput(e,t){let r=e.inputType=="historyUndo"?su:e.inputType=="historyRedo"?Tl:null;return r?(e.preventDefault(),r(t)):!1}})]}function nu(i,e){return function({state:t,dispatch:r}){if(!e&&t.readOnly)return!1;let n=t.field(xS,!1);if(!n)return!1;let s=n.pop(i,t,e);return s?(r(s),!0):!1}}var su=nu(0,!1),Tl=nu(1,!1),v_=nu(0,!0),S_=nu(1,!0);var Fr=class i{constructor(e,t,r,n,s){this.changes=e,this.effects=t,this.mapped=r,this.startSelection=n,this.selectionsAfter=s}setSelAfter(e){return new i(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,r;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=thi
Line truncated
|
|
|
|
|
<h5>Editor preferences</h5>
|
|
|
|
|
<div class="form-group"><label>Tab size: <input type="number" id="setting_tabSize" min="1" max="40" value="${i.tabSize}" style="width:4em"></label></div>
|
|
|
|
|
<div class="checkbox"><label><input type="checkbox" id="setting_tabsToSpaces" ${i.tabsToSpaces?"checked":""}> Insert spaces when pressing TAB</label></div>
|
|
|
|
@@ -32,24 +32,24 @@ Tags : ${s}`,O.style.whiteSpace="pre-wrap",O.style.fontFamily="monospace",O.sty
|
|
|
|
|
<h5>8bitworkshop IDE internal settings</h5>
|
|
|
|
|
<div class="checkbox"><label><input type="checkbox" id="setting_debugHighlightTags" ${i.debugHighlightTags?"checked":""}> Debug editor syntax highlighting tags</label></div>
|
|
|
|
|
`:""}
|
|
|
|
|
</form>`,buttons:{cancel:{label:"Cancel",className:"btn-default"},ok:{label:"Save",className:"btn-primary",callback:()=>{i.tabSize=parseInt($("#setting_tabSize").val())||8,i.tabsToSpaces=$("#setting_tabsToSpaces").is(":checked"),i.highlightSpecialChars=$("#setting_highlightSpecialChars").is(":checked"),i.highlightWhitespace=$("#setting_highlightWhitespace").is(":checked"),i.highlightTrailingWhitespace=$("#setting_highlightTrailingWhitespace").is(":checked"),i.closeBrackets=$("#setting_closeBrackets").is(":checked"),i.showLineNumbers=$("#setting_showLineNumbers").is(":checked"),e&&(i.debugHighlightTags=$("#setting_debugHighlightTags").is(":checked")),zR(i),YR(i)}}}})}function df(){return typeof navigator!="undefined"?navigator.storage:null}function LR(i){var e=i!==void 0?i:df();return!!(e&&typeof e.persist=="function")}async function MR(i){var e=i!==void 0?i:df();try{if(e&&typeof e.estimate=="function"){var t=await e.estimate();return{usage:t&&t.usage,quota:t&&t.quota}}}catch(r){console.log("storage.estimate() failed",r)}return{}}async function jR(i){var e=i!==void 0?i:df(),t={supported:LR(e),persisted:!1};try{e&&typeof e.persisted=="function"&&(t.persisted=await e.persisted())}catch(n){console.log("storage.persisted() failed",n)}var r=await MR(e);return t.usage=r.usage,t.quota=r.quota,t}async function Vp(i){var e=i!==void 0?i:df(),t=await jR(e);if(!t.supported||t.persisted)return t.granted=!1,t;try{t.persisted=await e.persist(),t.granted=t.persisted}catch(r){console.log("storage.persist() failed",r),t.granted=!1}return t}function WR(i){return i==null&&(i=typeof navigator!="undefined"?navigator.userAgent:""),i?/Edg\/|OPR\/|Chrome\/|Chromium\//.test(i)?"chromium":/Firefox\/|FxiOS\//.test(i)?"firefox":/Safari\//.test(i)?"safari":"other":"other"}function cy(i){if(typeof i!="number"||!isFinite(i))return"?";for(var e=["bytes","KB","MB","GB","TB"],t=0;i>=1024&&t<e.length-1;)i/=1024,t++;return(t==0?i.toFixed(0):i.toFixed(1))+" "+e[t]}function hy(i){return i.usage==null&&i.quota==null?"":"This site is using "+cy(i.usage)+" of the "+cy(i.quota)+" your browser allows."}var Wp="Your edits are still saved in this browser either way — persistence only protects them if the browser needs to reclaim disk space. Use <b>File > Download All Changes as ZIP</b> (or push to GitHub) to keep a backup.";function fy(i){switch(i||WR()){case"chromium":return"Chrome and Edge never ask — they grant persistent storage on their own to sites you use regularly. Bookmarking this page, or installing it as an app, usually qualifies it; then try <b>Request Local Storage Permissions</b> again.";case"firefox":return"Firefox asks for permission the first time. If you dismissed or blocked that prompt, clear it from the padlock icon in the address bar and try <b>Request Local Storage Permissions</b> again.";case"safari":return"Safari decides on its own, and may delete site data after several days without a visit. Adding this page to your Favorites or Home Screen makes eviction less likely.";default:return"This browser decides on its own whether to keep site data."}}function VR(){return"This browser doesn't support persistent storage, so it may discard your local file edits when it needs disk space. "+Wp}function uy(i,e){var t=hy(i),r;return i.supported?i.persisted?r=(i.granted?"Your browser just granted persistent storage. ":"Your browser is already persisting your local file edits. ")+Wp:r="Your browser has not granted persistent storage, so it may discard your local file edits when it needs disk space.<br><br>"+fy()+"<br><br>"+Wp:r=VR(),t?r+"<br><br>"+t:r}function Oy(i){return"Your browser ran out of space for this site, so your last edit may not have been saved.<br><br>"+hy(i)+" Delete unused projects, or use <b>File > Download All Changes as ZIP</b> to back up your work before it is lost."+(i.supported&&!i.persisted?"<br><br>"+fy():"")}var my=Ju(lO());var Rl=class{constructor(e,t){e=e||[],this.lines=e,this.text=t,this.offset2loc=new Map,this.line2offset=new Map;for(var r of e)r.offset>=0&&(this.offset2loc[r.offset]||(this.offset2loc[r.offset]=r),this.line2offset[r.line]||(this.line2offset[r.line]=r.offset))}findLineForOffset(e,t){if(this.offset2loc)for(var r=0;r<=t;r++){var n=this.offset2loc[e];if(n)return n;e--}return null}lineCount(){return this.lines.length}};function dy(i){return"errors"in i}function py(i){return"output"in i}var pf=class{constructor(e){this.preset_id=zi(e)}async getRemoteFile(e){return new Promise((t,r)=>qa(e,t,Ks(e)?"arraybuffer":"text"))}async getFileData(e){var t="presets/"+this.preset_id+"/"+e,r=await this.getRemoteFile(t);return r&&console.log("read",t,r.length,"bytes"),r}async setFileData(e,t){}onFileSystemUpdate(e){}};var ga=class{constructor(e,t){this.basefs=e,this.overlayfs=t}async getFileData(e){var t=await this.overlayfs.getFileData(e);return t==null?this.basefs.getFileData(e):t}async setFileData(e,t){return await this.overlayfs.setFileData(e,t),this.basefs.setFileData(e,t)}onFileSystemUpdaLine truncated
|
|
|
|
|
</form>`,buttons:{cancel:{label:"Cancel",className:"btn-default"},ok:{label:"Save",className:"btn-primary",callback:()=>{i.tabSize=parseInt($("#setting_tabSize").val())||8,i.tabsToSpaces=$("#setting_tabsToSpaces").is(":checked"),i.highlightSpecialChars=$("#setting_highlightSpecialChars").is(":checked"),i.highlightWhitespace=$("#setting_highlightWhitespace").is(":checked"),i.highlightTrailingWhitespace=$("#setting_highlightTrailingWhitespace").is(":checked"),i.closeBrackets=$("#setting_closeBrackets").is(":checked"),i.showLineNumbers=$("#setting_showLineNumbers").is(":checked"),e&&(i.debugHighlightTags=$("#setting_debugHighlightTags").is(":checked")),zR(i),YR(i)}}}})}function Ou(){return typeof navigator!="undefined"?navigator.storage:null}function LR(i){var e=i!==void 0?i:Ou();return!!(e&&typeof e.persist=="function")}async function MR(i){var e=i!==void 0?i:Ou();try{if(e&&typeof e.estimate=="function"){var t=await e.estimate();return{usage:t&&t.usage,quota:t&&t.quota}}}catch(r){console.log("storage.estimate() failed",r)}return{}}async function jR(i){var e=i!==void 0?i:Ou(),t={supported:LR(e),persisted:!1};try{e&&typeof e.persisted=="function"&&(t.persisted=await e.persisted())}catch(n){console.log("storage.persisted() failed",n)}var r=await MR(e);return t.usage=r.usage,t.quota=r.quota,t}async function qp(i){var e=i!==void 0?i:Ou(),t=await jR(e);if(!t.supported||t.persisted)return t.granted=!1,t;try{t.persisted=await e.persist(),t.granted=t.persisted}catch(r){console.log("storage.persist() failed",r),t.granted=!1}return t}function WR(i){return i==null&&(i=typeof navigator!="undefined"?navigator.userAgent:""),i?/Edg\/|OPR\/|Chrome\/|Chromium\//.test(i)?"chromium":/Firefox\/|FxiOS\//.test(i)?"firefox":/Safari\//.test(i)?"safari":"other":"other"}function hy(i){if(typeof i!="number"||!isFinite(i))return"?";for(var e=["bytes","KB","MB","GB","TB"],t=0;i>=1024&&t<e.length-1;)i/=1024,t++;return(t==0?i.toFixed(0):i.toFixed(1))+" "+e[t]}function uy(i){return i.usage==null&&i.quota==null?"":"This site is using "+hy(i.usage)+" of the "+hy(i.quota)+" your browser allows."}var Vp="Your edits are still saved in this browser either way — persistence only protects them if the browser needs to reclaim disk space. Use <b>File > Download All Changes as ZIP</b> (or push to GitHub) to keep a backup.";function fy(i){switch(i||WR()){case"chromium":return"Chrome and Edge never ask — they grant persistent storage on their own to sites you use regularly. Bookmarking this page, or installing it as an app, usually qualifies it; then try <b>Request Local Storage Permissions</b> again.";case"firefox":return"Firefox asks for permission the first time. If you dismissed or blocked that prompt, clear it from the padlock icon in the address bar and try <b>Request Local Storage Permissions</b> again.";case"safari":return"Safari decides on its own, and may delete site data after several days without a visit. Adding this page to your Favorites or Home Screen makes eviction less likely.";default:return"This browser decides on its own whether to keep site data."}}function VR(){return"This browser doesn't support persistent storage, so it may discard your local file edits when it needs disk space. "+Vp}function Oy(i,e){var t=uy(i),r;return i.supported?i.persisted?r=(i.granted?"Your browser just granted persistent storage. ":"Your browser is already persisting your local file edits. ")+Vp:r="Your browser has not granted persistent storage, so it may discard your local file edits when it needs disk space.<br><br>"+fy()+"<br><br>"+Vp:r=VR(),t?r+"<br><br>"+t:r}function dy(i){return"Your browser ran out of space for this site, so your last edit may not have been saved.<br><br>"+uy(i)+" Delete unused projects, or use <b>File > Download All Changes as ZIP</b> to back up your work before it is lost."+(i.supported&&!i.persisted?"<br><br>"+fy():"")}var gy=Jf(lO());var Rl=class{constructor(e,t){e=e||[],this.lines=e,this.text=t,this.offset2loc=new Map,this.line2offset=new Map;for(var r of e)r.offset>=0&&(this.offset2loc[r.offset]||(this.offset2loc[r.offset]=r),this.line2offset[r.line]||(this.line2offset[r.line]=r.offset))}findLineForOffset(e,t){if(this.offset2loc)for(var r=0;r<=t;r++){var n=this.offset2loc[e];if(n)return n;e--}return null}lineCount(){return this.lines.length}};function py(i){return"errors"in i}function my(i){return"output"in i}var du=class{constructor(e){this.preset_id=zi(e)}async getRemoteFile(e){return new Promise((t,r)=>qa(e,t,Ks(e)?"arraybuffer":"text"))}async getFileData(e){var t="presets/"+this.preset_id+"/"+e,r=await this.getRemoteFile(t);return r&&console.log("read",t,r.length,"bytes"),r}async setFileData(e,t){}onFileSystemUpdate(e){}};var ga=class{constructor(e,t){this.basefs=e,this.overlayfs=t}async getFileData(e){var t=await this.overlayfs.getFileData(e);return t==null?this.basefs.getFileData(e):t}async setFileData(e,t){return await this.overlayfs.setFileData(e,t),this.basefs.setFileData(e,t)}onFileSystemUpdaLine truncated
|
|
|
|
|
=====
|
|
|
|
|
|
|
|
|
|
[Open this project in 8bitworkshop](http://8bitworkshop.com/redir.html?platform=$PLATFORM&githubURL=$GITHUBURL&file=$MAINFILE).
|
|
|
|
|
`;function bo(){for(var i={},e=0;e<localStorage.length;e++){var t=localStorage.key(e);if(t.startsWith("__repo__")){var r=JSON.parse(localStorage.getItem(t)),n=t.substring(8);i[n]=r}}return i}function Cl(i){var e=i.split("/",8);return e.length<5||e[0]!="https:"||e[2]!="github.com"||e[5]&&e[5]!="tree"?null:{user:e[3],repo:e[4],repopath:e[3]+"/"+e[4],branch:e[6],subtreepath:e[7]}}var xf=class{constructor(e,t,r,n){this.githubCons=e,this.githubToken=t,this.store=r,this.project=n,this.recreateGithub()}recreateGithub(){this.github=new this.githubCons({token:this.githubToken})}login(){if(this.githubToken&&this.githubToken.length)return new Promise((t,r)=>{t()});var e=new firebase.auth.GithubAuthProvider;return e.addScope("repo"),firebase.auth().signInWithPopup(e).then(t=>{this.githubToken=t.credential.accessToken;var r=t.user;this.recreateGithub(),document.cookie="__github_key="+this.githubToken+";path=/;max-age=31536000",console.log("Stored GitHub OAUTH key")})}logout(){return this.githubToken&&this.githubToken.length?firebase.auth().signOut().then(()=>{document.cookie="__github_key=;path=/;max-age=0",this.githubToken=null,this.recreateGithub()}):new Promise((e,t)=>{e()})}isFileIgnored(e){return e=e.toUpperCase(),!!(e.startsWith("LICENSE")||e.startsWith("README")||e.startsWith("."))}async getGithubSession(e){var t=Cl(e);if(!t)throw new Error("Please enter a valid GitHub URL.");var r=bo()[t.repopath],n=t.branch||r&&r.branch,s=this.github.repos(t.user,t.repo);try{n=(await s.fetch()).defaultBranch||"master"}catch(a){console.log("could not fetch default branch: "+a),n="main"}console.log("branch =",n);var o={url:e,user:t.user,reponame:t.repo,repopath:t.repopath,branch:n,subtreepath:t.subtreepath,prefix:"",repo:s,platform_id:this.project?this.project.platform_id:r?r.platform_id:null};return o}getGithubHEADTree(e){var t;return this.getGithubSession(e).then(r=>(t=r,t.repo.git.refs.heads(t.branch).fetch())).then(r=>(t.head=r,t.sha=r.object.sha,t.repo.git.trees(t.sha).fetch())).then(r=>{if(t.subtreepath){for(let n of r.tree)if(n.type=="tree"&&n.path==t.subtreepath&&n.sha)return t.repo.git.trees(n.sha).fetch();throw Error("Cannot find subtree '"+t.subtreepath+"' in tree "+r.sha)}return r}).then(r=>(t.tree=r,t))}bind(e,t){var r="__repo__"+e.repopath;if(t){var n={url:e.url,branch:e.branch,platform_id:e.platform_id,mainPath:e.mainPath,sha:e.sha};console.log("storing",n),localStorage.setItem(r,JSON.stringify(n))}else localStorage.removeItem(r)}import(e){var t;return this.getGithubSession(e).then(r=>(t=r,t.repo.contents("README.md").read())).catch(r=>(console.log(r),console.log("no README.md found"),t.repo.fetch().then(n=>""))).then(r=>{var n;if(n=/8bitworkshop.com[^)]+file=([^)&]+)/.exec(r),n&&n[1]&&(console.log("main path: '"+n[1]+"'"),t.mainPath=n[1]),n=/8bitworkshop.com[^)]+platform=([A-Za-z0-9._\-]+)/.exec(r),n){if(console.log("platform id: '"+n[1]+"'"),t.platform_id&&!t.platform_id.startsWith(n[1]))throw Error("Platform mismatch: Repository is '"+n[1]+"', you have '"+t.platform_id+"' selected.");t.platform_id=n[1]}return this.bind(t,!0),t})}pull(e,t){var r;return this.getGithubHEADTree(e).then(n=>{r=n;let s=[];return r.paths=[],r.tree.tree.forEach(o=>{if(console.log(o.path,o.type,o.size),r.paths.push(o.path),o.type=="blob"&&!this.isFileIgnored(o.path)){var a=r.repo.git.blobs(o.sha).fetch().then(l=>{var c=r.prefix+o.path,f=o.size,O=l.encoding,p=l.content;if(l.encoding=="base64"){var b=$c(atob(p)),y=Ks(o.path,b);p=y?b:kc(b)}return l.size!=p.length&&(p=p.slice(0,l.size)),(t||this.store).setItem(c,p)});s.push(a)}else console.log("ignoring "+o.path)}),Promise.all(s)}).then(n=>r)}importAndPull(e){return this.import(e).then(t=>this.pull(e))}publish(e,t,r,n){var s,o=this.project.platform_id,a=this.project.stripLocalPath(this.project.mainPath);return this.github.user.repos.create({name:e,description:t,private:n,auto_init:!1,license_template:r}).then(l=>{s=l;var c=qR;c=c.replace(/\$NAME/g,encodeURIComponent(e)),c=c.replace(/\$PLATFORM/g,encodeURIComponent(o)),c=c.replace(/\$GITHUBURL/g,encodeURIComponent(s.htmlUrl)),c=c.replace(/\$MAINFILE/g,encodeURIComponent(a));var f={message:"8bitworkshop: updated metadata in README.md",content:btoa(c)};return s.contents("README.md").add(f)}).then(()=>this.getGithubSession(s.htmlUrl))}commit(e,t,r){var n;return t||(t="updated from 8bitworkshop.com"),this.getGithubHEADTree(e).then(s=>{if(n=s,n.subtreepath)throw Error("Sorry, right now you can only commit files to the root directory of a repository.");return Promise.all(r.map(o=>typeof o.data=="string"?n.repo.git.blobs.create({content:o.data,encoding:"utf-8"}):n.repo.git.blobs.create({content:btoa(Pc(o.data)),encoding:"base64"})))}).then(s=>n.repo.git.trees.create({tree:r.map((o,a)=>({path:o.path,mode:"100644",type:"blob",sha:s[a].sha})),base_tree:n.tree.sha})).then(s=>n.repo.git.commits.create({message:t,tree:s.sha,parents:[n.head.object.sha]})).then(s=>n.repo.commits(s.sha).fetch()).then(s=>(n.commit=s,n))}push(e){return e.head.update({sha:e.com
Line truncated
|
|
|
|
|
`},s=window.c2t({noInitialRun:!0,print:n,printErr:n}),o=s.FS,a=ii()+".bin",l=ii()+".wav";o.writeFile(a,qi(),{encoding:"binary"});var c=["-2bc",a+","+e.toString(16),l];s.callMain(c);var f=o.readFile(l,{encoding:"binary"});if(f){var O=new Blob([f],{type:"audio/wav"});(0,yn.saveAs)(O,l),r+="Then connect your audio output to the cassette input, turn up the volume, and play the audio file.",wi(r)}})}function FR(i){Sr("lib/makewav.js").then(()=>{let e="",t=function(a){e+=a+`
|
|
|
|
|
`};var r=Qi(ii());let n=r+".bin",s=r+".wav";window.makewav({noInitialRun:!1,print:t,printErr:t,arguments:["-ts","-f0","-v10",n],preRun:a=>{a.FS.writeFile(n,qi(),{encoding:"binary"})}}).ready.then(a=>{let l=[n];a.run(l),console.log(e);let f=a.FS.readFile(s,{encoding:"binary"});if(f){let O=new Blob([f],{type:"audio/wav"});(0,yn.saveAs)(O,s),e+=`
|
|
|
|
|
Connect your audio output to the SuperCharger input, turn up the volume, and play the audio file.`,wi(e)}})})}function BR(i){var e=Qi(ii());let t=e+".tap",r=new xo(e),n=new vf({sine_wave:!0}),s=qi(),o=s[0]+s[1]*256;s=s.slice(2),r.setContent({data:s,startAddress:o,type:xo.FILE_TYPE_NON_RELOCATABLE}),r.generateSound(n);let a=n.getTAPData();if(a){let l=new Blob([a],{type:"application/octet-stream"});(0,yn.saveAs)(l,t)}}function Dp(){switch(zi(Ue)){case"vcs":return FR;case"apple2":return NR;case"c64":return BR}}function by(i){if(qi()==null)return Ke("Please fix errors before exporting."),!0;var e=Dp();if(e===void 0)return Ke("Cassette export is not supported on this platform."),!0;e(i)}function xy(i){if(qi()==null)return Ke("Please finish compiling with no errors before downloading ROM."),!0;var e=Qi(ii());if(L.getDownloadFile){var t=L.getDownloadFile(),e=Qi(ii());(0,yn.saveAs)(t.blob,e+t.extension)}else if(qi()instanceof Uint8Array){var r=new Blob([qi()],{type:"application/octet-stream"}),n=L.getROMExtension&&L.getROMExtension(qi())||"-"+zi(Ue)+".bin";(0,yn.saveAs)(r,e+n)}else Ke(`The "${Ue}" platform doesn't have downloadable ROMs.`)}function vy(i){var e=we.getCurrentText();if(!e)return!1;var t=new Blob([e],{type:"text/plain;charset=utf-8"});(0,yn.saveAs)(t,Py(),{autoBom:!1})}async function Sy(){let i=(await import("./jszip.min-HOLYP7RC.js")).default;return new i}async function yy(i){var e=await Sy();Nn().iterateFiles((t,r)=>{r&&e.file(pi(t),r)}),e.generateAsync({type:"blob"}).then(t=>{(0,yn.saveAs)(t,ii()+"-"+zi(Ue)+".zip")})}function Qy(i){let e=L.getDebugSymbolFile&&L.getDebugSymbolFile();if(!e){Ke("This project does not have debug information.");return}var t=Qi(ii());(0,yn.saveAs)(e.blob,t+e.extension,{autoBom:!1})}async function wy(i){var e=await Sy(),t=await ks().keys();kt(!0);try{var r=0;await Promise.all(t.map(s=>ks().getItem(s).then(o=>{jr(r++/(t.length+1)),o&&e.file(s,o)})));var n=await e.generateAsync({type:"blob"});(0,yn.saveAs)(n,zi(Ue)+"-all.zip")}finally{kt(!1)}}var qp=!1;function $y(){qp||Sr("lib/gif.js").then(()=>{var i=$("#emulator").find("canvas")[0];if(!i){Ke("Could not find canvas element to record video!");return}var e=0;i.style&&i.style.transform&&(i.style.transform.indexOf("rotate(-90deg)")>=0?e=-1:i.style.transform.indexOf("rotate(90deg)")>=0&&(e=1));var t=new GIF({workerScript:"lib/gif.worker.js",workers:4,quality:10,rotate:e}),r=$("#videoPreviewImage");t.on("progress",l=>{jr(l)}),t.on("finished",l=>{r.attr("src",URL.createObjectURL(l)),kt(!1),L.resume(),$("#videoPreviewModal").modal("show")});var n=20,s=300,o=0;console.log("Recording video",i),$("#emulator").css("backgroundColor","#cc3333");var a=()=>{o++>s?(console.log("Rendering video"),$("#emulator").css("backgroundColor","inherit"),kt(!0),L.pause(),t.render(),qp=!1):(t.addFrame(i,{delay:n,copy:!0}),setTimeout(a,n),qp=!0)};a()})}var Ip;async function vo(){if(!Ip){await Sr("lib/octokat.js"),await Sr("https://www.gstatic.com/firebasejs/8.8.1/firebase-app.js"),await Sr("https://www.gstatic.com/firebasejs/8.8.1/firebase-auth.js"),await Sr("https://8bitworkshop.com/config.js");var i=Xc("__github_key");Ip=new xf(Octokat,i,ks(),Nn()),console.log("loaded github service")}return Ip}function Al(){var i=(Nt||"").split("/");return i.length!=2?(Ke("You are not in a GitHub repository. Choose one from the pulldown, or Import or Publish one."),null):"https://github.com/"+i[0]+"/"+i[1]}async function El(i,e){var t,r=Cl(i);if(!r){Ke("Could not parse GitHub URL.");return}var n=bo()[r.repopath];if(!(n&&!confirm("You've already imported "+r.repopath+" -- do you want to replace all local files?"))){kt(!0);var s=bf(r.repopath);jr(.25);var o=await vo();return o.import(i).then(a=>(t=a,jr(.75),o.pull(i,s))).then(a=>{kt(!1),So(e,{repo:r.repopath})}).catch(a=>{kt(!1),console.log(a),Ke("Could not import "+i+". "+a)})}}async function ky(i){var e=await vo();e.login().then(()=>{wi("You are signed in to GitHub.")}).catch(t=>{Ke("Could not sign in."+t)})}async function Ty(i){var e=await vo();e.logout().then(()=>{wi("You are logged out of GitHub.")})}function Xy(i){var e=$("#importGithubModal"),t=$("#importGithubButton");e.modal("show"),e.off("shown.bs.modal").on("shown.bs.modal",()=>$("#importGithubURL").trigger("focus")),$("#importGithubURL").off("keydown").on("keydown",r=>{r.key==="Enter"&&(r.preventDefault(),t.trigger("click"))}),t.off("click").on("click",()=>{var r=$("#importGithubURL").val()+"";e.modal("hide"),El(r,!1)})}function _y(i){if(!(Nt&&!confirm("This project ("+Nn().mainPath+") is already bound to a GitHub repository. Do you want to re-publish to a new repository? (You can instead choose 'Push Changes' to update files in the existing repository.)"))){var e=$("#publishGithubModal"),t=$("#publishGithubButton");$("#githubRepoName").val(Qi(pi(Nn().mainPath))),e.modal("show"),t.off("click").on("click",async()=>{var r=$("#githubRepoName").val()+"",n=$("#githubRepoDesc").val()+"",s=$("#githubRepoPrivate").val()=="private",o=$("#githubRepoLicense").val()+"Line truncated
|
|
|
|
|
`&&t++;return t}function qy(i,e){for(var t=/[/;][*;]([{].+[}])[*;][/;]/g,r=[],n;n=t.exec(i);){var s=n.index+n[0].length,o;e?o=i.indexOf("end",s):n[0].startsWith(";;")?(o=i.indexOf(";;",s),o==i.indexOf(";;{",s)&&(o=-1)):o=i.indexOf(";",s);var a=Uy(i,n.index),l=n[0],c=o>=0?Uy(i,o):"???";if(o<0){var f=e?'"end"':n[0].startsWith(";;")?'";;"':'";"';r.push({header:l,startline:a,endline:c,error:`No closing ${f} found after asset header`})}else if(o<=s)r.push({header:l,startline:a,endline:c,error:"Empty data block after asset header"});else try{var O=n[1].replace(/([A-Za-z]+):/g,'"$1":'),p=JSON.parse(O),b=/#embed\s+"(.+?)"/.exec(i.substring(s,o)),y=b?b[1]:void 0;r.push({header:l,startline:a,endline:c,fmt:p,start:s,end:o,embedFile:y})}catch(P){r.push({header:l,startline:a,endline:c,error:`Invalid asset format: ${P.message}`})}}return r}function Dy(i,e,t){if(t(e))return e;var r=i.lastIndexOf("/");if(r>=0){var n=i.substring(0,r+1)+e;if(t(n))return n}return null}function cC(i,e){if(e.destfmt&&(e=e.destfmt),e.pacstrip)return aC(i,e);var t=e.w,r=e.h,n=e.count||1,s=e.bpp||1,o=e.np||1,a=e.bpw||8,l=e.sl||Math.ceil(e.w*s/a),c=(1<<s)-1,f=e.pofs||l*r*n,O=e.skip||0,p=e.wpimg||l*r,b=l;e.il&&(p=l,b=l*n);var y=e.il?b*r:p*n,P;o>0&&e.sl?P=new Uint8Array(y):a<=8?P=new Uint8Array(y*o):P=new Uint32Array(y*o);for(var X=0;X<n;X++)for(var E=i[X],H=0,V=0;V<r;V++)for(var B=e.flip?r-1-V:V,M=X*p+B*b,d=0,q=0;q<t;q++){var G=E[H++],pe=Hp(M,e.remap);e.reindex&&([pe,d]=Kp(q,e.reindex),pe+=M);for(var Ee=0;Ee<o;Ee++){var Te=G>>Ee*s&c;P[pe+Ee*f+O]|=e.brev?Te<<a-d-s:Te<<d}d+=s,d>=a&&!e.reindex&&(M+=1,d=0)}return P}function zy(i,e,t,r,n,s,o){for(var a=[],l=0;l<i.length;l++){var c=i[l],f=4278190080;f|=(c>>e&(1<<t)-1)<<8-t,f|=(c>>r&(1<<n)-1)<<16-n,f|=(c>>s&(1<<o)-1)<<24-o,a.push(f)}return a}function hC(i){var e=(i>>0&1)*33+(i>>1&1)*71+(i>>2&1)*151,t=(i>>3&1)*33+(i>>4&1)*71+(i>>5&1)*151,r=(i>>6&1)*81+(i>>7&1)*174;return 4278190080|r<<16|t<<8|e}function fC(i){var e=i.pal;if(typeof e=="number"){var t=Math.floor(Math.abs(e/100)%10),r=Math.floor(Math.abs(e/10)%10),n=Math.floor(Math.abs(e)%10);return 1<<t+r+n}else{if(e==="pacman")return 256;var s=Iy[e];if(s)return s.length;throw new Error("No palette named "+e)}}function Yy(i,e){var t=e.pal,r;if(typeof t=="number"){var n=Math.floor(Math.abs(t/100)%10),s=Math.floor(Math.abs(t/10)%10),o=Math.floor(Math.abs(t)%10);t>=0?r=zy(i,0,n,n,s,n+s,o):r=zy(i,n+s,o,n,s,0,n)}else if(t==="pacman"){r=[];for(var a=0;a<i.length;a++)r.push(hC(i[a]))}else{var l=Iy[t];if(l)r=new Uint32Array(i).map(c=>l[c&l.length-1]|4278190080);else throw new Error("No palette named "+t)}return r}var Iy={gb:[13686916,8890444,5401396,2961698],nes:[5395026,11796480,10485760,11599933,7602281,91,95,6208,12048,543240,26368,1196544,7153664,0,0,0,12899815,16728064,14421538,16729963,14090399,6818519,6588,21681,27227,35843,43776,2918400,10777088,0,0,0,16316664,16755516,16742785,16735173,16730354,14633471,4681215,46327,57599,58229,259115,7911470,15065624,7895160,0,0,16777215,16773822,16300216,16300248,16758527,16761855,13095423,10148607,8973816,8650717,12122296,16119980,16777136,16308472,0,0],ap2lores:[0,16711935,127,8323199,32512,8355711,191,255,12549888,16760576,12566463,16744319,65280,16776960,49023,16777215],vcs:[0,0,4210752,4210752,7105644,7105644,9474192,9474192,11579568,11579568,13158600,13158600,14474460,14474460,16053492,16053492,17476,17476,1074276,1074276,2393220,2393220,3448992,3448992,4241592,4241592,5296336,5296336,6088936,6088936,6880508,6880508,10352,10352,1328260,1328260,2645144,2645144,3963052,3963052,5016764,5016764,6070476,6070476,6862044,6862044,7915756,7915756,6276,6276,1586328,1586328,3166380,3166380,4745408,4745408,6062288,6062288,7378144,7378144,8431852,8431852,9747708,9747708,136,136,2105500,2105500,3947696,3947696,5789888,5789888,7368912,7368912,8947936,8947936,10526956,10526956,11842812,11842812,6029432,6029432,7610508,7610508,8928416,8928416,10246320,10246320,11563200,11563200,12616912,12616912,13671644,13671644,14725356,14725356,7864392,7864392,9445472,9445472,10763384,10763384,12081292,12081292,13398176,13398176,14451892,14451892,15506628,15506628,16560340,16560340,8650772,8650772,9969712,9969712,11287628,11287628,12605544,12605544,13660284,13660284,14715028,14715028,15507624,15507624,16561340,16561340,8912896,8912896,10231836,10231836,11550776,11550776,12606544,12606544,13661288,13661288,14716028,14716028,15508624,15508624,16562340,16562340,8132608,8132608,9451548,9451548,11031608,11031608,12349520,12349520,13404264,13404264,14457980,14457980,15512720,15512720,16566436,16566436,6040576,6040576,7883804,7883804,9463864,9463864,11306064,11306064,12622952,12622952,13939836,13939836,15256720,15256720,16572580,16572580,2898944,2898944,4742172,4742172,6585400,6585400,8428624,8428624,9745512,9745512,11325564,11325564,12641424,12641424,13958308,13958308,15360,15360,2120736,2120736,4226112,4226112,6069340,6069340,7648372,7648372,9228428,9228428,10806436,10806436,12123320,12123320,14356,14356,1858612,1858612,3701840,3701840,5281900,528190
Line truncated
|
|
|
|
|
`;function bo(){for(var i={},e=0;e<localStorage.length;e++){var t=localStorage.key(e);if(t.startsWith("__repo__")){var r=JSON.parse(localStorage.getItem(t)),n=t.substring(8);i[n]=r}}return i}function Cl(i){var e=i.split("/",8);return e.length<5||e[0]!="https:"||e[2]!="github.com"||e[5]&&e[5]!="tree"?null:{user:e[3],repo:e[4],repopath:e[3]+"/"+e[4],branch:e[6],subtreepath:e[7]}}var bu=class{constructor(e,t,r,n){this.githubCons=e,this.githubToken=t,this.store=r,this.project=n,this.recreateGithub()}recreateGithub(){this.github=new this.githubCons({token:this.githubToken})}login(){if(this.githubToken&&this.githubToken.length)return new Promise((t,r)=>{t()});var e=new firebase.auth.GithubAuthProvider;return e.addScope("repo"),firebase.auth().signInWithPopup(e).then(t=>{this.githubToken=t.credential.accessToken;var r=t.user;this.recreateGithub(),document.cookie="__github_key="+this.githubToken+";path=/;max-age=31536000",console.log("Stored GitHub OAUTH key")})}logout(){return this.githubToken&&this.githubToken.length?firebase.auth().signOut().then(()=>{document.cookie="__github_key=;path=/;max-age=0",this.githubToken=null,this.recreateGithub()}):new Promise((e,t)=>{e()})}isFileIgnored(e){return e=e.toUpperCase(),!!(e.startsWith("LICENSE")||e.startsWith("README")||e.startsWith("."))}async getGithubSession(e){var t=Cl(e);if(!t)throw new Error("Please enter a valid GitHub URL.");var r=bo()[t.repopath],n=t.branch||r&&r.branch,s=this.github.repos(t.user,t.repo);try{n=(await s.fetch()).defaultBranch||"master"}catch(a){console.log("could not fetch default branch: "+a),n="main"}console.log("branch =",n);var o={url:e,user:t.user,reponame:t.repo,repopath:t.repopath,branch:n,subtreepath:t.subtreepath,prefix:"",repo:s,platform_id:this.project?this.project.platform_id:r?r.platform_id:null};return o}getGithubHEADTree(e){var t;return this.getGithubSession(e).then(r=>(t=r,t.repo.git.refs.heads(t.branch).fetch())).then(r=>(t.head=r,t.sha=r.object.sha,t.repo.git.trees(t.sha).fetch())).then(r=>{if(t.subtreepath){for(let n of r.tree)if(n.type=="tree"&&n.path==t.subtreepath&&n.sha)return t.repo.git.trees(n.sha).fetch();throw Error("Cannot find subtree '"+t.subtreepath+"' in tree "+r.sha)}return r}).then(r=>(t.tree=r,t))}bind(e,t){var r="__repo__"+e.repopath;if(t){var n={url:e.url,branch:e.branch,platform_id:e.platform_id,mainPath:e.mainPath,sha:e.sha};console.log("storing",n),localStorage.setItem(r,JSON.stringify(n))}else localStorage.removeItem(r)}import(e){var t;return this.getGithubSession(e).then(r=>(t=r,t.repo.contents("README.md").read())).catch(r=>(console.log(r),console.log("no README.md found"),t.repo.fetch().then(n=>""))).then(r=>{var n;if(n=/8bitworkshop.com[^)]+file=([^)&]+)/.exec(r),n&&n[1]&&(console.log("main path: '"+n[1]+"'"),t.mainPath=n[1]),n=/8bitworkshop.com[^)]+platform=([A-Za-z0-9._\-]+)/.exec(r),n){if(console.log("platform id: '"+n[1]+"'"),t.platform_id&&!t.platform_id.startsWith(n[1]))throw Error("Platform mismatch: Repository is '"+n[1]+"', you have '"+t.platform_id+"' selected.");t.platform_id=n[1]}return this.bind(t,!0),t})}pull(e,t){var r;return this.getGithubHEADTree(e).then(n=>{r=n;let s=[];return r.paths=[],r.tree.tree.forEach(o=>{if(console.log(o.path,o.type,o.size),r.paths.push(o.path),o.type=="blob"&&!this.isFileIgnored(o.path)){var a=r.repo.git.blobs(o.sha).fetch().then(l=>{var c=r.prefix+o.path,u=o.size,O=l.encoding,p=l.content;if(l.encoding=="base64"){var b=$c(atob(p)),y=Ks(o.path,b);p=y?b:kc(b)}return l.size!=p.length&&(p=p.slice(0,l.size)),(t||this.store).setItem(c,p)});s.push(a)}else console.log("ignoring "+o.path)}),Promise.all(s)}).then(n=>r)}importAndPull(e){return this.import(e).then(t=>this.pull(e))}publish(e,t,r,n){var s,o=this.project.platform_id,a=this.project.stripLocalPath(this.project.mainPath);return this.github.user.repos.create({name:e,description:t,private:n,auto_init:!1,license_template:r}).then(l=>{s=l;var c=qR;c=c.replace(/\$NAME/g,encodeURIComponent(e)),c=c.replace(/\$PLATFORM/g,encodeURIComponent(o)),c=c.replace(/\$GITHUBURL/g,encodeURIComponent(s.htmlUrl)),c=c.replace(/\$MAINFILE/g,encodeURIComponent(a));var u={message:"8bitworkshop: updated metadata in README.md",content:btoa(c)};return s.contents("README.md").add(u)}).then(()=>this.getGithubSession(s.htmlUrl))}commit(e,t,r){var n;return t||(t="updated from 8bitworkshop.com"),this.getGithubHEADTree(e).then(s=>{if(n=s,n.subtreepath)throw Error("Sorry, right now you can only commit files to the root directory of a repository.");return Promise.all(r.map(o=>typeof o.data=="string"?n.repo.git.blobs.create({content:o.data,encoding:"utf-8"}):n.repo.git.blobs.create({content:btoa(Pc(o.data)),encoding:"base64"})))}).then(s=>n.repo.git.trees.create({tree:r.map((o,a)=>({path:o.path,mode:"100644",type:"blob",sha:s[a].sha})),base_tree:n.tree.sha})).then(s=>n.repo.git.commits.create({message:t,tree:s.sha,parents:[n.head.object.sha]})).then(s=>n.repo.commits(s.sha).fetch()).then(s=>(n.commit=s,n))}push(e){return e.head.update({sha:e.com
Line truncated
|
|
|
|
|
`},s=window.c2t({noInitialRun:!0,print:n,printErr:n}),o=s.FS,a=ii()+".bin",l=ii()+".wav";o.writeFile(a,qi(),{encoding:"binary"});var c=["-2bc",a+","+e.toString(16),l];s.callMain(c);var u=o.readFile(l,{encoding:"binary"});if(u){var O=new Blob([u],{type:"audio/wav"});(0,yn.saveAs)(O,l),r+="Then connect your audio output to the cassette input, turn up the volume, and play the audio file.",wi(r)}})}function FR(i){Sr("lib/makewav.js").then(()=>{let e="",t=function(a){e+=a+`
|
|
|
|
|
`};var r=Qi(ii());let n=r+".bin",s=r+".wav";window.makewav({noInitialRun:!1,print:t,printErr:t,arguments:["-ts","-f0","-v10",n],preRun:a=>{a.FS.writeFile(n,qi(),{encoding:"binary"})}}).ready.then(a=>{let l=[n];a.run(l),console.log(e);let u=a.FS.readFile(s,{encoding:"binary"});if(u){let O=new Blob([u],{type:"audio/wav"});(0,yn.saveAs)(O,s),e+=`
|
|
|
|
|
Connect your audio output to the SuperCharger input, turn up the volume, and play the audio file.`,wi(e)}})})}function BR(i){var e=Qi(ii());let t=e+".tap",r=new xo(e),n=new xu({sine_wave:!0}),s=qi(),o=s[0]+s[1]*256;s=s.slice(2),r.setContent({data:s,startAddress:o,type:xo.FILE_TYPE_NON_RELOCATABLE}),r.generateSound(n);let a=n.getTAPData();if(a){let l=new Blob([a],{type:"application/octet-stream"});(0,yn.saveAs)(l,t)}}function Ip(){switch(zi(Ue)){case"vcs":return FR;case"apple2":return NR;case"c64":return BR}}function xy(i){if(qi()==null)return Ke("Please fix errors before exporting."),!0;var e=Ip();if(e===void 0)return Ke("Cassette export is not supported on this platform."),!0;e(i)}function vy(i){if(qi()==null)return Ke("Please finish compiling with no errors before downloading ROM."),!0;var e=Qi(ii());if(L.getDownloadFile){var t=L.getDownloadFile(),e=Qi(ii());(0,yn.saveAs)(t.blob,e+t.extension)}else if(qi()instanceof Uint8Array){var r=new Blob([qi()],{type:"application/octet-stream"}),n=L.getROMExtension&&L.getROMExtension(qi())||"-"+zi(Ue)+".bin";(0,yn.saveAs)(r,e+n)}else Ke(`The "${Ue}" platform doesn't have downloadable ROMs.`)}function Sy(i){var e=we.getCurrentText();if(!e)return!1;var t=new Blob([e],{type:"text/plain;charset=utf-8"});(0,yn.saveAs)(t,ky(),{autoBom:!1})}async function yy(){let i=(await import("./jszip.min-HOLYP7RC.js")).default;return new i}async function Qy(i){var e=await yy();Nn().iterateFiles((t,r)=>{r&&e.file(pi(t),r)}),e.generateAsync({type:"blob"}).then(t=>{(0,yn.saveAs)(t,ii()+"-"+zi(Ue)+".zip")})}function wy(i){let e=L.getDebugSymbolFile&&L.getDebugSymbolFile();if(!e){Ke("This project does not have debug information.");return}var t=Qi(ii());(0,yn.saveAs)(e.blob,t+e.extension,{autoBom:!1})}async function $y(i){var e=await yy(),t=await ks().keys();kt(!0);try{var r=0;await Promise.all(t.map(s=>ks().getItem(s).then(o=>{jr(r++/(t.length+1)),o&&e.file(s,o)})));var n=await e.generateAsync({type:"blob"});(0,yn.saveAs)(n,zi(Ue)+"-all.zip")}finally{kt(!1)}}var Dp=!1;function Py(){Dp||Sr("lib/gif.js").then(()=>{var i=$("#emulator").find("canvas")[0];if(!i){Ke("Could not find canvas element to record video!");return}var e=0;i.style&&i.style.transform&&(i.style.transform.indexOf("rotate(-90deg)")>=0?e=-1:i.style.transform.indexOf("rotate(90deg)")>=0&&(e=1));var t=new GIF({workerScript:"lib/gif.worker.js",workers:4,quality:10,rotate:e}),r=$("#videoPreviewImage");t.on("progress",l=>{jr(l)}),t.on("finished",l=>{r.attr("src",URL.createObjectURL(l)),kt(!1),L.resume(),$("#videoPreviewModal").modal("show")});var n=20,s=300,o=0;console.log("Recording video",i),$("#emulator").css("backgroundColor","#cc3333");var a=()=>{o++>s?(console.log("Rendering video"),$("#emulator").css("backgroundColor","inherit"),kt(!0),L.pause(),t.render(),Dp=!1):(t.addFrame(i,{delay:n,copy:!0}),setTimeout(a,n),Dp=!0)};a()})}var Np;async function vo(){if(!Np){await Sr("lib/octokat.js"),await Sr("https://www.gstatic.com/firebasejs/8.8.1/firebase-app.js"),await Sr("https://www.gstatic.com/firebasejs/8.8.1/firebase-auth.js"),await Sr("https://8bitworkshop.com/config.js");var i=Xc("__github_key");Np=new bu(Octokat,i,ks(),Nn()),console.log("loaded github service")}return Np}function Al(){var i=(Nt||"").split("/");return i.length!=2?(Ke("You are not in a GitHub repository. Choose one from the pulldown, or Import or Publish one."),null):"https://github.com/"+i[0]+"/"+i[1]}async function El(i,e){var t,r=Cl(i);if(!r){Ke("Could not parse GitHub URL.");return}var n=bo()[r.repopath];if(!(n&&!confirm("You've already imported "+r.repopath+" -- do you want to replace all local files?"))){kt(!0);var s=gu(r.repopath);jr(.25);var o=await vo();return o.import(i).then(a=>(t=a,jr(.75),o.pull(i,s))).then(a=>{kt(!1),So(e,{repo:r.repopath})}).catch(a=>{kt(!1),console.log(a),Ke("Could not import "+i+". "+a)})}}async function Ty(i){var e=await vo();e.login().then(()=>{wi("You are signed in to GitHub.")}).catch(t=>{Ke("Could not sign in."+t)})}async function Xy(i){var e=await vo();e.logout().then(()=>{wi("You are logged out of GitHub.")})}function _y(i){var e=$("#importGithubModal"),t=$("#importGithubButton");e.modal("show"),e.off("shown.bs.modal").on("shown.bs.modal",()=>$("#importGithubURL").trigger("focus")),$("#importGithubURL").off("keydown").on("keydown",r=>{r.key==="Enter"&&(r.preventDefault(),t.trigger("click"))}),t.off("click").on("click",()=>{var r=$("#importGithubURL").val()+"";e.modal("hide"),El(r,!1)})}function Ry(i){if(!(Nt&&!confirm("This project ("+Nn().mainPath+") is already bound to a GitHub repository. Do you want to re-publish to a new repository? (You can instead choose 'Push Changes' to update files in the existing repository.)"))){var e=$("#publishGithubModal"),t=$("#publishGithubButton");$("#githubRepoName").val(Qi(pi(Nn().mainPath))),e.modal("show"),t.off("click").on("click",async()=>{var r=$("#githubRepoName").val()+"",n=$("#githubRepoDesc").val()+"",s=$("#githubRepoPrivate").val()=="private",o=$("#githubRepoLicense").val()+"Line truncated
|
|
|
|
|
`&&t++;return t}function Dy(i,e){for(var t=/[/;][*;]([{].+[}])[*;][/;]/g,r=[],n;n=t.exec(i);){var s=n.index+n[0].length,o;e?o=i.indexOf("end",s):n[0].startsWith(";;")?(o=i.indexOf(";;",s),o==i.indexOf(";;{",s)&&(o=-1)):o=i.indexOf(";",s);var a=zy(i,n.index),l=n[0],c=o>=0?zy(i,o):"???";if(o<0){var u=e?'"end"':n[0].startsWith(";;")?'";;"':'";"';r.push({header:l,startline:a,endline:c,error:`No closing ${u} found after asset header`})}else if(o<=s)r.push({header:l,startline:a,endline:c,error:"Empty data block after asset header"});else try{var O=n[1].replace(/([A-Za-z]+):/g,'"$1":'),p=JSON.parse(O),b=/#embed\s+"(.+?)"/.exec(i.substring(s,o)),y=b?b[1]:void 0;r.push({header:l,startline:a,endline:c,fmt:p,start:s,end:o,embedFile:y})}catch(P){r.push({header:l,startline:a,endline:c,error:`Invalid asset format: ${P.message}`})}}return r}function Iy(i,e,t){if(t(e))return e;var r=i.lastIndexOf("/");if(r>=0){var n=i.substring(0,r+1)+e;if(t(n))return n}return null}function cC(i,e){if(e.destfmt&&(e=e.destfmt),e.pacstrip)return aC(i,e);var t=e.w,r=e.h,n=e.count||1,s=e.bpp||1,o=e.np||1,a=e.bpw||8,l=e.sl||Math.ceil(e.w*s/a),c=(1<<s)-1,u=e.pofs||l*r*n,O=e.skip||0,p=e.wpimg||l*r,b=l;e.il&&(p=l,b=l*n);var y=e.il?b*r:p*n,P;o>0&&e.sl?P=new Uint8Array(y):a<=8?P=new Uint8Array(y*o):P=new Uint32Array(y*o);for(var X=0;X<n;X++)for(var E=i[X],H=0,V=0;V<r;V++)for(var B=e.flip?r-1-V:V,M=X*p+B*b,d=0,q=0;q<t;q++){var G=E[H++],pe=Kp(M,e.remap);e.reindex&&([pe,d]=Jp(q,e.reindex),pe+=M);for(var Ee=0;Ee<o;Ee++){var Te=G>>Ee*s&c;P[pe+Ee*u+O]|=e.brev?Te<<a-d-s:Te<<d}d+=s,d>=a&&!e.reindex&&(M+=1,d=0)}return P}function Yy(i,e,t,r,n,s,o){for(var a=[],l=0;l<i.length;l++){var c=i[l],u=4278190080;u|=(c>>e&(1<<t)-1)<<8-t,u|=(c>>r&(1<<n)-1)<<16-n,u|=(c>>s&(1<<o)-1)<<24-o,a.push(u)}return a}function hC(i){var e=(i>>0&1)*33+(i>>1&1)*71+(i>>2&1)*151,t=(i>>3&1)*33+(i>>4&1)*71+(i>>5&1)*151,r=(i>>6&1)*81+(i>>7&1)*174;return 4278190080|r<<16|t<<8|e}function uC(i){var e=i.pal;if(typeof e=="number"){var t=Math.floor(Math.abs(e/100)%10),r=Math.floor(Math.abs(e/10)%10),n=Math.floor(Math.abs(e)%10);return 1<<t+r+n}else{if(e==="pacman")return 256;var s=Ny[e];if(s)return s.length;throw new Error("No palette named "+e)}}function Ly(i,e){var t=e.pal,r;if(typeof t=="number"){var n=Math.floor(Math.abs(t/100)%10),s=Math.floor(Math.abs(t/10)%10),o=Math.floor(Math.abs(t)%10);t>=0?r=Yy(i,0,n,n,s,n+s,o):r=Yy(i,n+s,o,n,s,0,n)}else if(t==="pacman"){r=[];for(var a=0;a<i.length;a++)r.push(hC(i[a]))}else{var l=Ny[t];if(l)r=new Uint32Array(i).map(c=>l[c&l.length-1]|4278190080);else throw new Error("No palette named "+t)}return r}var Ny={gb:[13686916,8890444,5401396,2961698],nes:[5395026,11796480,10485760,11599933,7602281,91,95,6208,12048,543240,26368,1196544,7153664,0,0,0,12899815,16728064,14421538,16729963,14090399,6818519,6588,21681,27227,35843,43776,2918400,10777088,0,0,0,16316664,16755516,16742785,16735173,16730354,14633471,4681215,46327,57599,58229,259115,7911470,15065624,7895160,0,0,16777215,16773822,16300216,16300248,16758527,16761855,13095423,10148607,8973816,8650717,12122296,16119980,16777136,16308472,0,0],ap2lores:[0,16711935,127,8323199,32512,8355711,191,255,12549888,16760576,12566463,16744319,65280,16776960,49023,16777215],vcs:[0,0,4210752,4210752,7105644,7105644,9474192,9474192,11579568,11579568,13158600,13158600,14474460,14474460,16053492,16053492,17476,17476,1074276,1074276,2393220,2393220,3448992,3448992,4241592,4241592,5296336,5296336,6088936,6088936,6880508,6880508,10352,10352,1328260,1328260,2645144,2645144,3963052,3963052,5016764,5016764,6070476,6070476,6862044,6862044,7915756,7915756,6276,6276,1586328,1586328,3166380,3166380,4745408,4745408,6062288,6062288,7378144,7378144,8431852,8431852,9747708,9747708,136,136,2105500,2105500,3947696,3947696,5789888,5789888,7368912,7368912,8947936,8947936,10526956,10526956,11842812,11842812,6029432,6029432,7610508,7610508,8928416,8928416,10246320,10246320,11563200,11563200,12616912,12616912,13671644,13671644,14725356,14725356,7864392,7864392,9445472,9445472,10763384,10763384,12081292,12081292,13398176,13398176,14451892,14451892,15506628,15506628,16560340,16560340,8650772,8650772,9969712,9969712,11287628,11287628,12605544,12605544,13660284,13660284,14715028,14715028,15507624,15507624,16561340,16561340,8912896,8912896,10231836,10231836,11550776,11550776,12606544,12606544,13661288,13661288,14716028,14716028,15508624,15508624,16562340,16562340,8132608,8132608,9451548,9451548,11031608,11031608,12349520,12349520,13404264,13404264,14457980,14457980,15512720,15512720,16566436,16566436,6040576,6040576,7883804,7883804,9463864,9463864,11306064,11306064,12622952,12622952,13939836,13939836,15256720,15256720,16572580,16572580,2898944,2898944,4742172,4742172,6585400,6585400,8428624,8428624,9745512,9745512,11325564,11325564,12641424,12641424,13958308,13958308,15360,15360,2120736,2120736,4226112,4226112,6069340,6069340,7648372,7648372,9228428,9228428,10806436,10806436,12123320,12123320,14356,14356,1858612,1858612,3701840,3701840,5281900,528190
Line truncated
|
|
|
|
|
`+s),n+=`
|
|
|
|
|
`+this.opToString(l,c,b))}),"X: "+t+" Y: "+r+" "+n}refresh(){this.tick(),this.datau32.fill(Kr)}tick(){super.tick(),this.drawImage()}drawImage(){this.ctx.putImageData(this.imageData,0,0)}clear(){this.datau32.fill(Kr)}},Uf=class extends Ef{createDiv(e){return this.createCanvas(e,256,256)}initCanvas(){super.initCanvas(),this.canvas.onclick=e=>{var t=_c(this.canvas,e),r=Math.floor(t.x)+Math.floor(t.y)*256,n=-1,s=-1;this.redraw((o,a)=>{s<0&&n>=0&&a==r&&(s=n),o==16777216&&(n=a)}),s>=0&&$o([s])}}clear(){for(var e=0;e<=65535;e++){var t=L.readAddress(e),r=t>>2|t&31;r|=r<<8|r<<16,this.datau32[e]=r|Kr}}drawEvent(e,t,r,n){var s=this.getOpRGB(e,t);if(s){var o=t&255,a=t>>8&255,l=this.datau32[t&65535];l=l|s|Kr,this.datau32[t&65535]=l}}getTooltipText(e,t){var r=(e&255)+(t<<8),n="",s=-1,o={},a=null,l=[];return this.redraw((c,f,O,p,b,y)=>{switch(c){case 16777216:s=f,a=this.addr2symbol(f)||a;break;case 167772160:l.push(a);break;case 184549376:a=l.pop();break}var P=c|s;f==r&&!o[P]&&(n==""&&a&&(n+=`
|
|
|
|
|
`+this.opToString(l,c,b))}),"X: "+t+" Y: "+r+" "+n}refresh(){this.tick(),this.datau32.fill(Kr)}tick(){super.tick(),this.drawImage()}drawImage(){this.ctx.putImageData(this.imageData,0,0)}clear(){this.datau32.fill(Kr)}},Eu=class extends Au{createDiv(e){return this.createCanvas(e,256,256)}initCanvas(){super.initCanvas(),this.canvas.onclick=e=>{var t=_c(this.canvas,e),r=Math.floor(t.x)+Math.floor(t.y)*256,n=-1,s=-1;this.redraw((o,a)=>{s<0&&n>=0&&a==r&&(s=n),o==16777216&&(n=a)}),s>=0&&$o([s])}}clear(){for(var e=0;e<=65535;e++){var t=L.readAddress(e),r=t>>2|t&31;r|=r<<8|r<<16,this.datau32[e]=r|Kr}}drawEvent(e,t,r,n){var s=this.getOpRGB(e,t);if(s){var o=t&255,a=t>>8&255,l=this.datau32[t&65535];l=l|s|Kr,this.datau32[t&65535]=l}}getTooltipText(e,t){var r=(e&255)+(t<<8),n="",s=-1,o={},a=null,l=[];return this.redraw((c,u,O,p,b,y)=>{switch(c){case 16777216:s=u,a=this.addr2symbol(u)||a;break;case 167772160:l.push(a);break;case 184549376:a=l.pop();break}var P=c|s;u==r&&!o[P]&&(n==""&&a&&(n+=`
|
|
|
|
|
`+a),n+=`
|
|
|
|
|
PC `+this.addr2str(s)+" "+this.opToString(c,null,y),o[P]=1)}),this.addr2str(r)+n}},im=class extends Ef{initCanvas(){super.initCanvas(),this.canvas.onclick=e=>{var t=_c(this.canvas,e),r=Math.floor(t.x),n=Math.floor(t.y),s=this.getOpAtPos(t.x,t.y,16777216);s&&(Qn("toline"),L.runEval(()=>{let o=L.getRasterScanline&&L.getRasterScanline()>=n;return o&&L.getRasterLineClock?o&&L.getRasterLineClock()>r:o}))}}drawEvent(e,t,r,n){var s=this.getOpRGB(e,t);if(s){var o=r+n*this.canvas.width,a=s|Kr;this.datau32[o]|=a}}drawImage(){let e=Kr;for(let t=0;t<this.datau32.length;t++)this.datau32[t]==Kr?this.datau32[t]=e:e=this.datau32[t];super.drawImage()}},zf=class extends im{constructor(){super(...arguments);this.interrupt=0;this.rgb=0;this.lastpc=0}drawEvent(t,r,n,s){var o=n+s*this.canvas.width;if(t==134217728&&(this.interrupt=1),this.interrupt==1&&t==167772160&&(this.interrupt=r),this.interrupt>1&&this.sp>this.interrupt&&(this.interrupt=0),t==318767104&&(this.rgb|=47),t==385875968&&(this.rgb|=16256),t==352321536&&(this.rgb|=2047872),t==335544320&&(this.rgb|=7936),t==520093696&&(this.rgb=32768),t==150994944||t==402653184)this.datau32[o]=4279176975;else{let a=this.rgb;if(t==16777216){let l=this.sp&15;l>=8&&(l=16-l),Math.abs(this.lastpc)-r>16&&(l+=1),Math.abs(this.lastpc)-r>256&&(l+=1),a=this.rgb=526344*l+2105376,this.lastpc=r}this.interrupt&&(a|=8388672),this.datau32[o]==Kr&&(this.datau32[o]=a|Kr)}}},Yf=class extends Ts{constructor(){super(...arguments);this.recreateOnResize=!0}createDiv(t){return this.vlist=new wo(t),this.vlist.create(t,this.cyclesPerLine*this.totalScanlines,this.getMemoryLineAt.bind(this)),this.vlist.maindiv}getMemoryLineAt(t){var r="",n="seg_data",s=this.dumplines&&this.dumplines[t];if(s!=null){var o=s.info.join(", ");r="("+On(s.row,4)+", "+On(s.col,4)+") "+Wa(s.asm||"",20)+o,o.indexOf("Write ")>=0&&(n="seg_io")}return{text:r,clas:n}}refresh(){this.tick()}tick(){let t=L instanceof oO||L instanceof sO;this.dumplines={},this.redraw((r,n,s,o,a,l)=>{t&&(a>>=2);var c=this.dumplines[a];switch(c==null&&(c={op:r,addr:n,row:o,col:s,asm:null,info:[]},this.dumplines[a]=c),r){case 16777216:if(L.disassemble){var f=L.disassemble(n,L.readAddress.bind(L));c.asm=f&&f.line}break;default:var O=this.opToString(r,n,l);O!=""&&c.info.push(O);break}}),this.vlist.refresh()}},Lf=class extends Ts{constructor(){super(...arguments);this.recreateOnResize=!0}createDiv(t){return this.vlist=new wo(t),this.vlist.create(t,this.totalScanlines,this.getMemoryLineAt.bind(this)),this.vlist.maindiv}getMemoryLineAt(t){for(var r=On(t+"",3)+" ",n="seg_code",s=this.dumplines&&this.dumplines[t]||[],o=Math.round(this.cyclesPerLine/3.3),a=0;a<this.cyclesPerLine;a++){var l=s[a];if(l!==void 0){var c=l&65535,f=f&Kr;if(f==16777216)r+=",";else{var O=pt(c);r+=O,a+=O.length-1}}else r+=a==o?"|":"."}return s[-1]&&(r+=" "+s[-1]),{text:r,clas:n}}refresh(){this.tick()}tick(){let t=L instanceof oO||L instanceof sO;this.dumplines={},this.redraw((r,n,s,o,a,l)=>{var c=this.dumplines[o];switch(c==null&&(this.dumplines[o]=c=[]),r){case 16777216:var f=L.debugSymbols.addr2symbol[n];f&&(c[-1]=f);break;case 335544320:case 352321536:case 369098752:case 385875968:c[s]=r|n;break}}),this.vlist.refresh()}},Mf=class extends Ts{constructor(){super(...arguments);this.recreateOnResize=!0;this.cumulativeData=!0}createDiv(t){return L.debugSymbols&&L.debugSymbols.symbolmap?this.keys=Array.from(Object.keys(L.debugSymbols.symbolmap).filter(r=>!Gy(r))):this.keys=["no symbols defined"],this.vlist=new wo(t),this.vlist.create(t,this.keys.length+1,this.getMemoryLineAt.bind(this)),this.vlist.maindiv}getMemoryLineAt(t){if(t==0)return{text:On("Symbol",35)+On("Reads",8)+On("Writes",8)};var r=this.keys[t-1],n=this.dumplines&&this.dumplines[r];function s(l){var c=n[l]|0;return On(c?c.toString():"",8)}var o,a;return n!=null?(o=On(r,35)+s(301989888)+s(318767104),n[16777216]?a="seg_code":n[335544320]||n[352321536]?a="seg_io":a="seg_data"):(o=On(r,35),a="seg_unknown"),{text:o,clas:a}}refresh(){this.tick()}tick(){this.dumplines={},this.redraw((t,r,n,s,o,a)=>{var l=L.debugSymbols.addr2symbol[r];if(l!=null){var c=this.dumplines[l];c==null&&(c={},this.dumplines[l]=c),c[t]=(c[t]|0)+1}}),this.vlist.refresh(),this.probe&&this.probe.clear()}};var sm=class i{constructor(e,t,r,n,s,o,a,l,c,f=0,O){this.p=e,this.stack=t,this.state=r,this.reducePos=n,this.pos=s,this.score=o,this.buffer=a,this.bufferBase=l,this.curContext=c,this.lookAhead=f,this.parent=O}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,r=0){let n=e.parser.context;return new i(e,[],t,r,r,0,[],0,n?new jf(n,n.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let r=e>>19,n=e&65535,{parser:s}=this.p,o=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),a=s.dynamicPrecedence(n);if(a&&(this.score+=a),r==0){n<s.minRepeatTerm&&
Line truncated
|
|
|
|
|
`+t.scrub(),s=this.advance(n);return s>-1&&s<n.length?this.complete(e,r,s):!1}finish(e,t){return(this.stage==2||this.stage==3)&&Dl(t.content,this.pos)==t.content.length?this.complete(e,t,t.content.length):!1}complete(e,t,r){return e.addLeafElement(t,ut(de.LinkReference,this.start,this.start+r,this.elts)),!0}nextStage(e){return e?(this.pos=e.to-this.start,this.elts.push(e),this.stage++,!0):(e===!1&&(this.stage=-1),!1)}advance(e){for(;;){if(this.stage==-1)return-1;if(this.stage==0){if(!this.nextStage(EQ(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(ut(de.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(ZQ(e,Dl(e,this.pos),this.start)))return-1}else if(this.stage==2){let t=Dl(e,this.pos),r=0;if(t>this.pos){let n=AQ(e,t,this.start);if(n){let s=pm(e,n.to-this.start);s>0&&(this.nextStage(n),r=s)}}return r||(r=pm(e,this.pos)),r>0&&r<e.length?r:-1}else return pm(e,this.pos)}}};function pm(i,e){for(;e<i.length;e++){let t=i.charCodeAt(e);if(t==10)break;if(!Zr(t))return-1}return e}var ym=class{nextLine(e,t,r){let n=t.depth<e.stack.length?-1:wQ(t),s=t.next;if(n<0)return!1;let o=ut(de.HeaderMark,e.lineStart+t.pos,e.lineStart+n);return e.nextLine(),e.addLeafElement(r,ut(s==61?de.SetextHeading1:de.SetextHeading2,r.start,e.prevLineEnd(),[...e.parser.parseInline(r.content,r.start),o])),!0}finish(){return!1}},TQ={LinkReference(i,e){return e.content.charCodeAt(0)==91?new Sm(e):null},SetextHeading(){return new ym}},WC=[(i,e)=>QQ(e)>=0,(i,e)=>vQ(e)>=0,(i,e)=>SQ(e)>=0,(i,e)=>Xm(e,i,!0)>=0,(i,e)=>_m(e,i,!0)>=0,(i,e)=>Tm(e,i,!0)>=0,(i,e)=>kQ(e,i,!0)>=0],VC={text:"",end:0},Qm=class{constructor(e,t,r,n){this.parser=e,this.input=t,this.ranges=n,this.line=new bm,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=n[n.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=n[0].from,this.block=qf.create(de.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=r.length?new Pm(r,t):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(this.stoppedAt!=null&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:e}=this;for(;;){for(let r=0;;){let n=e.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;r<e.markers.length&&(!n||e.markers[r].from<n.end);){let s=e.markers[r++];this.addNode(s.type,s.from,s.to)}if(!n)break;this.finishContext()}if(e.pos<e.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(e.basePos))return null;e:for(;;){for(let r of this.parser.blockParsers)if(r){let n=r(this,e);if(n!=!1){if(n==!0)return null;e.forward();continue e}}break}if(e.pos==e.text.length)return this.nextLine()?null:this.finish();let t=new gm(this.lineStart+e.pos,e.text.slice(e.pos));for(let r of this.parser.leafBlockParsers)if(r){let n=r(this,t);n&&t.parsers.push(n)}e:for(;this.nextLine()&&e.pos!=e.text.length;){if(e.indent<e.baseIndent+4){for(let r of this.parser.endLeafBlock)if(r(this,e,t))break e}for(let r of t.parsers)if(r.nextLine(this,e,t))return null;t.content+=`
|
|
|
|
|
`+e.scrub();for(let r of e.markers)t.marks.push(r)}return this.finishLeaf(t),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let t=this.fragments.takeNodes(this);return t?(this.absoluteLineStart+=t,this.lineStart=UQ(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let t=VC;if(t.end=e,e>=this.to)t.text="";else if(t.text=this.lineChunkAt(e),t.end+=t.text.length,this.ranges.length>1){let r=this.absoluteLineStart,n=this.rangeI;for(;this.ranges[n].to<t.end;){n++;let s=this.ranges[n].from,o=this.lineChunkAt(s);t.end=s+o.length,t.text=t.text.slice(0,this.ranges[n-1].to-r)+o,r=t.end-t.text.length}}return t}readLine(){let{line:e}=this,{text:t,end:r}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=r,e.reset(t);e.depth<this.stack.length;e.depth++){let n=this.stack[e.depth],s=this.parser.skipContextMarkup[n.type];if(!s)throw new Error("Unhandled block context "+de[n.type]);let o=this.line.markers.length;if(!s(n,this,e)){this.line.markers.length>o&&(n.end=this.line.markers[this.line.markers.length-1].to),e.forward();break}e.forward()}}lineChunkAt(e){let t=this.input.chunk(e),r;if(this.input.lineChunks)r=t==`
|
|
|
|
|
PC `+this.addr2str(s)+" "+this.opToString(c,null,y),o[P]=1)}),this.addr2str(r)+n}},rm=class extends Au{initCanvas(){super.initCanvas(),this.canvas.onclick=e=>{var t=_c(this.canvas,e),r=Math.floor(t.x),n=Math.floor(t.y),s=this.getOpAtPos(t.x,t.y,16777216);s&&(Qn("toline"),L.runEval(()=>{let o=L.getRasterScanline&&L.getRasterScanline()>=n;return o&&L.getRasterLineClock?o&&L.getRasterLineClock()>r:o}))}}drawEvent(e,t,r,n){var s=this.getOpRGB(e,t);if(s){var o=r+n*this.canvas.width,a=s|Kr;this.datau32[o]|=a}}drawImage(){let e=Kr;for(let t=0;t<this.datau32.length;t++)this.datau32[t]==Kr?this.datau32[t]=e:e=this.datau32[t];super.drawImage()}},Uu=class extends rm{constructor(){super(...arguments);this.interrupt=0;this.rgb=0;this.lastpc=0}drawEvent(t,r,n,s){var o=n+s*this.canvas.width;if(t==134217728&&(this.interrupt=1),this.interrupt==1&&t==167772160&&(this.interrupt=r),this.interrupt>1&&this.sp>this.interrupt&&(this.interrupt=0),t==318767104&&(this.rgb|=47),t==385875968&&(this.rgb|=16256),t==352321536&&(this.rgb|=2047872),t==335544320&&(this.rgb|=7936),t==520093696&&(this.rgb=32768),t==150994944||t==402653184)this.datau32[o]=4279176975;else{let a=this.rgb;if(t==16777216){let l=this.sp&15;l>=8&&(l=16-l),Math.abs(this.lastpc)-r>16&&(l+=1),Math.abs(this.lastpc)-r>256&&(l+=1),a=this.rgb=526344*l+2105376,this.lastpc=r}this.interrupt&&(a|=8388672),this.datau32[o]==Kr&&(this.datau32[o]=a|Kr)}}},zu=class extends Ts{constructor(){super(...arguments);this.recreateOnResize=!0}createDiv(t){return this.vlist=new wo(t),this.vlist.create(t,this.cyclesPerLine*this.totalScanlines,this.getMemoryLineAt.bind(this)),this.vlist.maindiv}getMemoryLineAt(t){var r="",n="seg_data",s=this.dumplines&&this.dumplines[t];if(s!=null){var o=s.info.join(", ");r="("+On(s.row,4)+", "+On(s.col,4)+") "+Wa(s.asm||"",20)+o,o.indexOf("Write ")>=0&&(n="seg_io")}return{text:r,clas:n}}refresh(){this.tick()}tick(){let t=L instanceof oO||L instanceof sO;this.dumplines={},this.redraw((r,n,s,o,a,l)=>{t&&(a>>=2);var c=this.dumplines[a];switch(c==null&&(c={op:r,addr:n,row:o,col:s,asm:null,info:[]},this.dumplines[a]=c),r){case 16777216:if(L.disassemble){var u=L.disassemble(n,L.readAddress.bind(L));c.asm=u&&u.line}break;default:var O=this.opToString(r,n,l);O!=""&&c.info.push(O);break}}),this.vlist.refresh()}},Yu=class extends Ts{constructor(){super(...arguments);this.recreateOnResize=!0}createDiv(t){return this.vlist=new wo(t),this.vlist.create(t,this.totalScanlines,this.getMemoryLineAt.bind(this)),this.vlist.maindiv}getMemoryLineAt(t){for(var r=On(t+"",3)+" ",n="seg_code",s=this.dumplines&&this.dumplines[t]||[],o=Math.round(this.cyclesPerLine/3.3),a=0;a<this.cyclesPerLine;a++){var l=s[a];if(l!==void 0){var c=l&65535,u=u&Kr;if(u==16777216)r+=",";else{var O=pt(c);r+=O,a+=O.length-1}}else r+=a==o?"|":"."}return s[-1]&&(r+=" "+s[-1]),{text:r,clas:n}}refresh(){this.tick()}tick(){let t=L instanceof oO||L instanceof sO;this.dumplines={},this.redraw((r,n,s,o,a,l)=>{var c=this.dumplines[o];switch(c==null&&(this.dumplines[o]=c=[]),r){case 16777216:var u=L.debugSymbols.addr2symbol[n];u&&(c[-1]=u);break;case 335544320:case 352321536:case 369098752:case 385875968:c[s]=r|n;break}}),this.vlist.refresh()}},Lu=class extends Ts{constructor(){super(...arguments);this.recreateOnResize=!0;this.cumulativeData=!0}createDiv(t){return L.debugSymbols&&L.debugSymbols.symbolmap?this.keys=Array.from(Object.keys(L.debugSymbols.symbolmap).filter(r=>!Hy(r))):this.keys=["no symbols defined"],this.vlist=new wo(t),this.vlist.create(t,this.keys.length+1,this.getMemoryLineAt.bind(this)),this.vlist.maindiv}getMemoryLineAt(t){if(t==0)return{text:On("Symbol",35)+On("Reads",8)+On("Writes",8)};var r=this.keys[t-1],n=this.dumplines&&this.dumplines[r];function s(l){var c=n[l]|0;return On(c?c.toString():"",8)}var o,a;return n!=null?(o=On(r,35)+s(301989888)+s(318767104),n[16777216]?a="seg_code":n[335544320]||n[352321536]?a="seg_io":a="seg_data"):(o=On(r,35),a="seg_unknown"),{text:o,clas:a}}refresh(){this.tick()}tick(){this.dumplines={},this.redraw((t,r,n,s,o,a)=>{var l=L.debugSymbols.addr2symbol[r];if(l!=null){var c=this.dumplines[l];c==null&&(c={},this.dumplines[l]=c),c[t]=(c[t]|0)+1}}),this.vlist.refresh(),this.probe&&this.probe.clear()}};var om=class i{constructor(e,t,r,n,s,o,a,l,c,u=0,O){this.p=e,this.stack=t,this.state=r,this.reducePos=n,this.pos=s,this.score=o,this.buffer=a,this.bufferBase=l,this.curContext=c,this.lookAhead=u,this.parent=O}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,r=0){let n=e.parser.context;return new i(e,[],t,r,r,0,[],0,n?new Mu(n,n.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let r=e>>19,n=e&65535,{parser:s}=this.p,o=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),a=s.dynamicPrecedence(n);if(a&&(this.score+=a),r==0){n<s.minRepeatTerm&&
Line truncated
|
|
|
|
|
`+t.scrub(),s=this.advance(n);return s>-1&&s<n.length?this.complete(e,r,s):!1}finish(e,t){return(this.stage==2||this.stage==3)&&Dl(t.content,this.pos)==t.content.length?this.complete(e,t,t.content.length):!1}complete(e,t,r){return e.addLeafElement(t,ft(de.LinkReference,this.start,this.start+r,this.elts)),!0}nextStage(e){return e?(this.pos=e.to-this.start,this.elts.push(e),this.stage++,!0):(e===!1&&(this.stage=-1),!1)}advance(e){for(;;){if(this.stage==-1)return-1;if(this.stage==0){if(!this.nextStage(UQ(e,this.pos,this.start,!0)))return-1;if(e.charCodeAt(this.pos)!=58)return this.stage=-1;this.elts.push(ft(de.LinkMark,this.pos+this.start,this.pos+this.start+1)),this.pos++}else if(this.stage==1){if(!this.nextStage(AQ(e,Dl(e,this.pos),this.start)))return-1}else if(this.stage==2){let t=Dl(e,this.pos),r=0;if(t>this.pos){let n=EQ(e,t,this.start);if(n){let s=mm(e,n.to-this.start);s>0&&(this.nextStage(n),r=s)}}return r||(r=mm(e,this.pos)),r>0&&r<e.length?r:-1}else return mm(e,this.pos)}}};function mm(i,e){for(;e<i.length;e++){let t=i.charCodeAt(e);if(t==10)break;if(!Zr(t))return-1}return e}var Qm=class{nextLine(e,t,r){let n=t.depth<e.stack.length?-1:$Q(t),s=t.next;if(n<0)return!1;let o=ft(de.HeaderMark,e.lineStart+t.pos,e.lineStart+n);return e.nextLine(),e.addLeafElement(r,ft(s==61?de.SetextHeading1:de.SetextHeading2,r.start,e.prevLineEnd(),[...e.parser.parseInline(r.content,r.start),o])),!0}finish(){return!1}},XQ={LinkReference(i,e){return e.content.charCodeAt(0)==91?new ym(e):null},SetextHeading(){return new Qm}},WC=[(i,e)=>wQ(e)>=0,(i,e)=>SQ(e)>=0,(i,e)=>yQ(e)>=0,(i,e)=>_m(e,i,!0)>=0,(i,e)=>Rm(e,i,!0)>=0,(i,e)=>Xm(e,i,!0)>=0,(i,e)=>TQ(e,i,!0)>=0],VC={text:"",end:0},wm=class{constructor(e,t,r,n){this.parser=e,this.input=t,this.ranges=n,this.line=new xm,this.atEnd=!1,this.reusePlaceholders=new Map,this.stoppedAt=null,this.rangeI=0,this.to=n[n.length-1].to,this.lineStart=this.absoluteLineStart=this.absoluteLineEnd=n[0].from,this.block=Vu.create(de.Document,0,this.lineStart,0,0),this.stack=[this.block],this.fragments=r.length?new km(r,t):null,this.readLine()}get parsedPos(){return this.absoluteLineStart}advance(){if(this.stoppedAt!=null&&this.absoluteLineStart>this.stoppedAt)return this.finish();let{line:e}=this;for(;;){for(let r=0;;){let n=e.depth<this.stack.length?this.stack[this.stack.length-1]:null;for(;r<e.markers.length&&(!n||e.markers[r].from<n.end);){let s=e.markers[r++];this.addNode(s.type,s.from,s.to)}if(!n)break;this.finishContext()}if(e.pos<e.text.length)break;if(!this.nextLine())return this.finish()}if(this.fragments&&this.reuseFragment(e.basePos))return null;e:for(;;){for(let r of this.parser.blockParsers)if(r){let n=r(this,e);if(n!=!1){if(n==!0)return null;e.forward();continue e}}break}if(e.pos==e.text.length)return this.nextLine()?null:this.finish();let t=new bm(this.lineStart+e.pos,e.text.slice(e.pos));for(let r of this.parser.leafBlockParsers)if(r){let n=r(this,t);n&&t.parsers.push(n)}e:for(;this.nextLine()&&e.pos!=e.text.length;){if(e.indent<e.baseIndent+4){for(let r of this.parser.endLeafBlock)if(r(this,e,t))break e}for(let r of t.parsers)if(r.nextLine(this,e,t))return null;t.content+=`
|
|
|
|
|
`+e.scrub();for(let r of e.markers)t.marks.push(r)}return this.finishLeaf(t),null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}reuseFragment(e){if(!this.fragments.moveTo(this.absoluteLineStart+e,this.absoluteLineStart)||!this.fragments.matches(this.block.hash))return!1;let t=this.fragments.takeNodes(this);return t?(this.absoluteLineStart+=t,this.lineStart=zQ(this.absoluteLineStart,this.ranges),this.moveRangeI(),this.absoluteLineStart<this.to?(this.lineStart++,this.absoluteLineStart++,this.readLine()):(this.atEnd=!0,this.readLine()),!0):!1}get depth(){return this.stack.length}parentType(e=this.depth-1){return this.parser.nodeSet.types[this.stack[e].type]}nextLine(){return this.lineStart+=this.line.text.length,this.absoluteLineEnd>=this.to?(this.absoluteLineStart=this.absoluteLineEnd,this.atEnd=!0,this.readLine(),!1):(this.lineStart++,this.absoluteLineStart=this.absoluteLineEnd+1,this.moveRangeI(),this.readLine(),!0)}peekLine(){return this.scanLine(this.absoluteLineEnd+1).text}moveRangeI(){for(;this.rangeI<this.ranges.length-1&&this.absoluteLineStart>=this.ranges[this.rangeI].to;)this.rangeI++,this.absoluteLineStart=Math.max(this.absoluteLineStart,this.ranges[this.rangeI].from)}scanLine(e){let t=VC;if(t.end=e,e>=this.to)t.text="";else if(t.text=this.lineChunkAt(e),t.end+=t.text.length,this.ranges.length>1){let r=this.absoluteLineStart,n=this.rangeI;for(;this.ranges[n].to<t.end;){n++;let s=this.ranges[n].from,o=this.lineChunkAt(s);t.end=s+o.length,t.text=t.text.slice(0,this.ranges[n-1].to-r)+o,r=t.end-t.text.length}}return t}readLine(){let{line:e}=this,{text:t,end:r}=this.scanLine(this.absoluteLineStart);for(this.absoluteLineEnd=r,e.reset(t);e.depth<this.stack.length;e.depth++){let n=this.stack[e.depth],s=this.parser.skipContextMarkup[n.type];if(!s)throw new Error("Unhandled block context "+de[n.type]);let o=this.line.markers.length;if(!s(n,this,e)){this.line.markers.length>o&&(n.end=this.line.markers[this.line.markers.length-1].to),e.forward();break}e.forward()}}lineChunkAt(e){let t=this.input.chunk(e),r;if(this.input.lineChunks)r=t==`
|
|
|
|
|
`?"":t;else{let n=t.indexOf(`
|
|
|
|
|
`);r=n<0?t:t.slice(0,n)}return e+r.length>this.to?r.slice(0,this.to-e):r}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,t,r=0){this.block=qf.create(e,r,this.lineStart+t,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,t,r=0){this.startContext(this.parser.getNodeType(e),t,r)}addNode(e,t,r){typeof e=="number"&&(e=new Ge(this.parser.nodeSet.types[e],Sa,Sa,(r!=null?r:this.prevLineEnd())-t)),this.block.addChild(e,t-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,t){this.addNode(this.buffer.writeElements($m(t.children,e.marks),-t.from).finish(t.type,t.to-t.from),t.from)}finishContext(){let e=this.stack.pop(),t=this.stack[this.stack.length-1];t.addChild(e.toTree(this.parser.nodeSet),e.from-t.from),this.block=t}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?XQ(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let r of e.parsers)if(r.finish(this,e))return;let t=$m(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(t,-e.start).finish(de.Paragraph,e.content.length),e.start)}elt(e,t,r,n){return typeof e=="string"?ut(this.parser.getNodeType(e),t,r,n):new If(e,t)}get buffer(){return new Df(this.parser.nodeSet)}};function XQ(i,e,t,r,n){let s=i[e].to,o=[],a=[],l=t.from+r;function c(f,O){for(;O?f>=s:f>s;){let p=i[e+1].from-s;r+=p,f+=p,e++,s=i[e].to}}for(let f=t.firstChild;f;f=f.nextSibling){c(f.from+r,!0);let O=f.from+r,p,b=n.get(f.tree);b?p=b:f.to+r>s?(p=XQ(i,e,f,r,n),c(f.to+r,!1)):p=f.toTree(),o.push(p),a.push(O-l)}return c(t.to+r,!1),new Ge(t.type,o,a,t.to+r-l,t.tree?t.tree.propValues:void 0)}var Nl=class i extends Dn{constructor(e,t,r,n,s,o,a,l,c){super(),this.nodeSet=e,this.blockParsers=t,this.leafBlockParsers=r,this.blockNames=n,this.endLeafBlock=s,this.skipContextMarkup=o,this.inlineParsers=a,this.inlineNames=l,this.wrappers=c,this.nodeTypes=Object.create(null);for(let f of e.types)this.nodeTypes[f.name]=f.id}createParse(e,t,r){let n=new Qm(this,e,t,r);for(let s of this.wrappers)n=s(n,e,t,r);return n}configure(e){let t=wm(e);if(!t)return this;let{nodeSet:r,skipContextMarkup:n}=this,s=this.blockParsers.slice(),o=this.leafBlockParsers.slice(),a=this.blockNames.slice(),l=this.inlineParsers.slice(),c=this.inlineNames.slice(),f=this.endLeafBlock.slice(),O=this.wrappers;if(ql(t.defineNodes)){n=Object.assign({},n);let p=r.types.slice(),b;for(let y of t.defineNodes){let{name:P,block:X,composite:E,style:H}=typeof y=="string"?{name:y}:y;if(p.some(M=>M.name==P))continue;E&&(n[p.length]=(M,d,q)=>E(d,q,M.value));let V=p.length,B=E?["Block","BlockContext"]:X?V>=de.ATXHeading1&&V<=de.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;p.push(Ut.define({id:V,name:P,props:B&&[[ze.group,B]]})),H&&(b||(b={}),Array.isArray(H)||H instanceof or?b[P]=H:Object.assign(b,H))}r=new Vn(p),b&&(r=r.extend(gi(b)))}if(ql(t.props)&&(r=r.extend(...t.props)),ql(t.remove))for(let p of t.remove){let b=this.blockNames.indexOf(p),y=this.inlineNames.indexOf(p);b>-1&&(s[b]=o[b]=void 0),y>-1&&(l[y]=void 0)}if(ql(t.parseBlock))for(let p of t.parseBlock){let b=a.indexOf(p.name);if(b>-1)s[b]=p.parse,o[b]=p.leaf;else{let y=p.before?Vf(a,p.before):p.after?Vf(a,p.after)+1:a.length-1;s.splice(y,0,p.parse),o.splice(y,0,p.leaf),a.splice(y,0,p.name)}p.endLeaf&&f.push(p.endLeaf)}if(ql(t.parseInline))for(let p of t.parseInline){let b=c.indexOf(p.name);if(b>-1)l[b]=p.parse;else{let y=p.before?Vf(c,p.before):p.after?Vf(c,p.after)+1:c.length-1;l.splice(y,0,p.parse),c.splice(y,0,p.name)}}return t.wrap&&(O=O.concat(t.wrap)),new i(r,s,o,a,f,n,l,c,O)}getNodeType(e){let t=this.nodeTypes[e];if(t==null)throw new RangeError(`Unknown node type '${e}'`);return t}parseInline(e,t){let r=new Bl(this,e,t);e:for(let n=t;n<r.end;){let s=r.char(n);for(let o of this.inlineParsers)if(o){let a=o(r,s,n);if(a>=0){n=a;continue e}}n++}return r.resolveMarkers(0)}};function ql(i){return i!=null&&i.length>0}function wm(i){if(!Array.isArray(i))return i;if(i.length==0)return null;let e=wm(i[0]);if(i.length==1)return e;let t=wm(i.slice(1));if(!t||!e)return e||t;let r=(o,a)=>(o||Sa).concat(a||Sa),n=e.wrap,s=t.wrap;return{props:r(e.props,t.props),defineNodes:r(e.defineNodes,t.defineNodes),parseBlock:r(e.parseBlock,t.parseBlock),parseInline:r(e.parseInline,t.parseInline),remove:r(e.remove,t.remove),wrap:n?s?(o,a,l,c)=>n(s(o,a,l,c),a,l,c):n:s}}function Vf(i,e){let t=i.indexOf(e);if(t<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return t}var _Q=[Ut.none];for(let i=1,e;e=de[i];i++)_Q[i]=Ut.define({id:i,name:e,props:i>=de.Escape?[]:[[ze.group,i in xQ?["Block","BlockContext"]:["Block","LeafBlock"]]],top:e=="Document"});var Sa=[],Df=class{constructor(e){this.nodeSet=e,this.content=[],this.nodes=[]}write(e
Line truncated
|
|
|
|
|
`;)s--;this.fragmentEnd=s?s-1:0}let r=this.cursor;r||(r=this.cursor=this.fragment.tree.cursor(),r.firstChild());let n=e+this.fragment.offset;for(;r.to<=n;)if(!r.parent())return!1;for(;;){if(r.from>=n)return this.fragment.from<=t;if(!r.childAfter(n))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(ze.contextHash)==e}takeNodes(e){let t=this.cursor,r=this.fragment.offset,n=this.fragmentEnd-(this.fragment.openEnd?1:0),s=e.absoluteLineStart,o=s,a=e.block.children.length,l=o,c=a;for(;;){if(t.to-r>n){if(t.type.isAnonymous&&t.firstChild())continue;break}let f=UQ(t.from-r,e.ranges);if(t.to-r<=e.ranges[e.rangeI].to)e.addNode(t.tree,f);else{let O=new Ge(e.parser.nodeSet.types[de.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(O,t.tree),e.addNode(O,f)}if(t.type.is("Block")&&(DC.indexOf(t.type.id)<0?(o=t.to-r,a=e.block.children.length):(o=l,a=c),l=t.to-r,c=e.block.children.length),!t.nextSibling())break}for(;e.block.children.length>a;)e.block.children.pop(),e.block.positions.pop();return o-s}};function UQ(i,e){let t=i;for(let r=1;r<e.length;r++){let n=e[r-1].to,s=e[r].from;n<i&&(t-=s-n)}return t}var IC=gi({"Blockquote/...":S.quote,HorizontalRule:S.contentSeparator,"ATXHeading1/... SetextHeading1/...":S.heading1,"ATXHeading2/... SetextHeading2/...":S.heading2,"ATXHeading3/...":S.heading3,"ATXHeading4/...":S.heading4,"ATXHeading5/...":S.heading5,"ATXHeading6/...":S.heading6,"Comment CommentBlock":S.comment,Escape:S.escape,Entity:S.character,"Emphasis/...":S.emphasis,"StrongEmphasis/...":S.strong,"Link/... Image/...":S.link,"OrderedList/... BulletList/...":S.list,"BlockQuote/...":S.quote,"InlineCode CodeText":S.monospace,"URL Autolink":S.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":S.processingInstruction,"CodeInfo LinkLabel":S.labelName,LinkTitle:S.string,Paragraph:S.content}),zQ=new Nl(new Vn(_Q).extend(IC),Object.keys(Wf).map(i=>Wf[i]),Object.keys(Wf).map(i=>TQ[i]),Object.keys(Wf),WC,xQ,Object.keys(mm).map(i=>mm[i]),Object.keys(mm),[]);function NC(i,e,t){let r=[];for(let n=i.firstChild,s=e;;n=n.nextSibling){let o=n?n.from:t;if(o>s&&r.push({from:s,to:o}),!n)break;s=n.to}return r}function YQ(i){let{codeParser:e,htmlParser:t}=i;return{wrap:Mh((n,s)=>{let o=n.type.id;if(e&&(o==de.CodeBlock||o==de.FencedCode)){let a="";if(o==de.FencedCode){let c=n.node.getChild(de.CodeInfo);c&&(a=s.read(c.from,c.to))}let l=e(a);if(l)return{parser:l,overlay:c=>c.type.id==de.CodeText,bracketed:o==de.FencedCode}}else if(t&&(o==de.HTMLBlock||o==de.HTMLTag||o==de.CommentBlock))return{parser:t,overlay:NC(n.node,n.from,n.to)};return null})}}var FC={resolve:"Strikethrough",mark:"StrikethroughMark"},BC={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":S.strikethrough}},{name:"StrikethroughMark",style:S.processingInstruction}],parseInline:[{name:"Strikethrough",parse(i,e,t){if(e!=126||i.char(t+1)!=126||i.char(t+2)==126)return-1;let r=i.slice(t-1,t),n=i.slice(t+2,t+3),s=/\s|^$/.test(r),o=/\s|^$/.test(n),a=Fl.test(r),l=Fl.test(n);return i.addDelimiter(FC,t,t+2,!o&&(!l||s||a),!s&&(!a||o||l))},after:"Emphasis"}]};function Il(i,e,t=0,r,n=0){let s=0,o=!0,a=-1,l=-1,c=!1,f=()=>{r.push(i.elt("TableCell",n+a,n+l,i.parser.parseInline(e.slice(a,l),n+a)))};for(let O=t;O<e.length;O++){let p=e.charCodeAt(O);p==124&&!c?((!o||a>-1)&&s++,o=!1,r&&(a>-1&&f(),r.push(i.elt("TableDelimiter",O+n,O+n+1))),a=l=-1):(c||p!=32&&p!=9)&&(a<0&&(a=O),l=O+1),c=!c&&p==92}return a>-1&&(s++,r&&f()),s}function uQ(i,e){for(let t=e;t<i.length;t++){let r=i.charCodeAt(t);if(r==124)return!0;r==92&&t++}return!1}var LQ=/^[>\s]*\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/,Ff=class{constructor(){this.rows=null}nextLine(e,t,r){if(this.rows==null){this.rows=!1;let n;if((t.next==45||t.next==58||t.next==124)&&LQ.test(n=t.text.slice(t.pos))){let s=[];Il(e,r.content,0,s,r.start)==Il(e,n,0)&&(this.rows=[e.elt("TableHeader",r.start,r.start+r.content.length,s),e.elt("TableDelimiter",e.lineStart+t.pos,e.lineStart+t.text.length)])}}else if(this.rows){let n=[];Il(e,t.text,t.pos,n,e.lineStart),this.rows.push(e.elt("TableRow",e.lineStart+t.pos,e.lineStart+t.text.length,n))}return!1}finish(e,t){return this.rows?(e.addLeafElement(t,e.elt("Table",t.start,t.start+t.content.length,this.rows)),!0):!1}},GC={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":S.heading}},"TableRow",{name:"TableCell",style:S.content},{name:"TableDelimiter",style:S.processingInstruction}],parseBlock:[{name:"Table",leaf(i,e){return uQ(e.content,0)?new Ff:null},endLeaf(i,e,t){if(t.parsers.some(n=>n instanceof Ff)||!uQ(e.text,e.basePos))return!1;let r=i.peekLine();return LQ.test(r)&&Il(i,e.text,e.basePos)==Il(i,r,e.basePos)},before:"SetextHeading"}]},km=class{nextLine(){return!1}finish(e,t){return e.addLeafElement(t,e.elt("Task",t.start,t.start+t.content.length,[e.elt("TaskMarker",t.start,t.start+3),...e.parser.parseInline(t.content.slice(3),t.start+3)])),!0}},HC={defineNodes:[{name:"Task",block:!0,style:S.list},{name:"TaskMarker",style:S.atom}],pa
Line truncated
|
|
|
|
|
`);r=n<0?t:t.slice(0,n)}return e+r.length>this.to?r.slice(0,this.to-e):r}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,t,r=0){this.block=Vu.create(e,r,this.lineStart+t,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,t,r=0){this.startContext(this.parser.getNodeType(e),t,r)}addNode(e,t,r){typeof e=="number"&&(e=new Ge(this.parser.nodeSet.types[e],Sa,Sa,(r!=null?r:this.prevLineEnd())-t)),this.block.addChild(e,t-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,t){this.addNode(this.buffer.writeElements(Pm(t.children,e.marks),-t.from).finish(t.type,t.to-t.from),t.from)}finishContext(){let e=this.stack.pop(),t=this.stack[this.stack.length-1];t.addChild(e.toTree(this.parser.nodeSet),e.from-t.from),this.block=t}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?_Q(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let r of e.parsers)if(r.finish(this,e))return;let t=Pm(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(t,-e.start).finish(de.Paragraph,e.content.length),e.start)}elt(e,t,r,n){return typeof e=="string"?ft(this.parser.getNodeType(e),t,r,n):new Du(e,t)}get buffer(){return new qu(this.parser.nodeSet)}};function _Q(i,e,t,r,n){let s=i[e].to,o=[],a=[],l=t.from+r;function c(u,O){for(;O?u>=s:u>s;){let p=i[e+1].from-s;r+=p,u+=p,e++,s=i[e].to}}for(let u=t.firstChild;u;u=u.nextSibling){c(u.from+r,!0);let O=u.from+r,p,b=n.get(u.tree);b?p=b:u.to+r>s?(p=_Q(i,e,u,r,n),c(u.to+r,!1)):p=u.toTree(),o.push(p),a.push(O-l)}return c(t.to+r,!1),new Ge(t.type,o,a,t.to+r-l,t.tree?t.tree.propValues:void 0)}var Nl=class i extends Dn{constructor(e,t,r,n,s,o,a,l,c){super(),this.nodeSet=e,this.blockParsers=t,this.leafBlockParsers=r,this.blockNames=n,this.endLeafBlock=s,this.skipContextMarkup=o,this.inlineParsers=a,this.inlineNames=l,this.wrappers=c,this.nodeTypes=Object.create(null);for(let u of e.types)this.nodeTypes[u.name]=u.id}createParse(e,t,r){let n=new wm(this,e,t,r);for(let s of this.wrappers)n=s(n,e,t,r);return n}configure(e){let t=$m(e);if(!t)return this;let{nodeSet:r,skipContextMarkup:n}=this,s=this.blockParsers.slice(),o=this.leafBlockParsers.slice(),a=this.blockNames.slice(),l=this.inlineParsers.slice(),c=this.inlineNames.slice(),u=this.endLeafBlock.slice(),O=this.wrappers;if(ql(t.defineNodes)){n=Object.assign({},n);let p=r.types.slice(),b;for(let y of t.defineNodes){let{name:P,block:X,composite:E,style:H}=typeof y=="string"?{name:y}:y;if(p.some(M=>M.name==P))continue;E&&(n[p.length]=(M,d,q)=>E(d,q,M.value));let V=p.length,B=E?["Block","BlockContext"]:X?V>=de.ATXHeading1&&V<=de.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;p.push(Ut.define({id:V,name:P,props:B&&[[ze.group,B]]})),H&&(b||(b={}),Array.isArray(H)||H instanceof or?b[P]=H:Object.assign(b,H))}r=new Vn(p),b&&(r=r.extend(gi(b)))}if(ql(t.props)&&(r=r.extend(...t.props)),ql(t.remove))for(let p of t.remove){let b=this.blockNames.indexOf(p),y=this.inlineNames.indexOf(p);b>-1&&(s[b]=o[b]=void 0),y>-1&&(l[y]=void 0)}if(ql(t.parseBlock))for(let p of t.parseBlock){let b=a.indexOf(p.name);if(b>-1)s[b]=p.parse,o[b]=p.leaf;else{let y=p.before?Wu(a,p.before):p.after?Wu(a,p.after)+1:a.length-1;s.splice(y,0,p.parse),o.splice(y,0,p.leaf),a.splice(y,0,p.name)}p.endLeaf&&u.push(p.endLeaf)}if(ql(t.parseInline))for(let p of t.parseInline){let b=c.indexOf(p.name);if(b>-1)l[b]=p.parse;else{let y=p.before?Wu(c,p.before):p.after?Wu(c,p.after)+1:c.length-1;l.splice(y,0,p.parse),c.splice(y,0,p.name)}}return t.wrap&&(O=O.concat(t.wrap)),new i(r,s,o,a,u,n,l,c,O)}getNodeType(e){let t=this.nodeTypes[e];if(t==null)throw new RangeError(`Unknown node type '${e}'`);return t}parseInline(e,t){let r=new Bl(this,e,t);e:for(let n=t;n<r.end;){let s=r.char(n);for(let o of this.inlineParsers)if(o){let a=o(r,s,n);if(a>=0){n=a;continue e}}n++}return r.resolveMarkers(0)}};function ql(i){return i!=null&&i.length>0}function $m(i){if(!Array.isArray(i))return i;if(i.length==0)return null;let e=$m(i[0]);if(i.length==1)return e;let t=$m(i.slice(1));if(!t||!e)return e||t;let r=(o,a)=>(o||Sa).concat(a||Sa),n=e.wrap,s=t.wrap;return{props:r(e.props,t.props),defineNodes:r(e.defineNodes,t.defineNodes),parseBlock:r(e.parseBlock,t.parseBlock),parseInline:r(e.parseInline,t.parseInline),remove:r(e.remove,t.remove),wrap:n?s?(o,a,l,c)=>n(s(o,a,l,c),a,l,c):n:s}}function Wu(i,e){let t=i.indexOf(e);if(t<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return t}var RQ=[Ut.none];for(let i=1,e;e=de[i];i++)RQ[i]=Ut.define({id:i,name:e,props:i>=de.Escape?[]:[[ze.group,i in vQ?["Block","BlockContext"]:["Block","LeafBlock"]]],top:e=="Document"});var Sa=[],qu=class{constructor(e){this.nodeSet=e,this.content=[],this.nodes=[]}write(e
Line truncated
|
|
|
|
|
`;)s--;this.fragmentEnd=s?s-1:0}let r=this.cursor;r||(r=this.cursor=this.fragment.tree.cursor(),r.firstChild());let n=e+this.fragment.offset;for(;r.to<=n;)if(!r.parent())return!1;for(;;){if(r.from>=n)return this.fragment.from<=t;if(!r.childAfter(n))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(ze.contextHash)==e}takeNodes(e){let t=this.cursor,r=this.fragment.offset,n=this.fragmentEnd-(this.fragment.openEnd?1:0),s=e.absoluteLineStart,o=s,a=e.block.children.length,l=o,c=a;for(;;){if(t.to-r>n){if(t.type.isAnonymous&&t.firstChild())continue;break}let u=zQ(t.from-r,e.ranges);if(t.to-r<=e.ranges[e.rangeI].to)e.addNode(t.tree,u);else{let O=new Ge(e.parser.nodeSet.types[de.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(O,t.tree),e.addNode(O,u)}if(t.type.is("Block")&&(DC.indexOf(t.type.id)<0?(o=t.to-r,a=e.block.children.length):(o=l,a=c),l=t.to-r,c=e.block.children.length),!t.nextSibling())break}for(;e.block.children.length>a;)e.block.children.pop(),e.block.positions.pop();return o-s}};function zQ(i,e){let t=i;for(let r=1;r<e.length;r++){let n=e[r-1].to,s=e[r].from;n<i&&(t-=s-n)}return t}var IC=gi({"Blockquote/...":S.quote,HorizontalRule:S.contentSeparator,"ATXHeading1/... SetextHeading1/...":S.heading1,"ATXHeading2/... SetextHeading2/...":S.heading2,"ATXHeading3/...":S.heading3,"ATXHeading4/...":S.heading4,"ATXHeading5/...":S.heading5,"ATXHeading6/...":S.heading6,"Comment CommentBlock":S.comment,Escape:S.escape,Entity:S.character,"Emphasis/...":S.emphasis,"StrongEmphasis/...":S.strong,"Link/... Image/...":S.link,"OrderedList/... BulletList/...":S.list,"BlockQuote/...":S.quote,"InlineCode CodeText":S.monospace,"URL Autolink":S.url,"HeaderMark HardBreak QuoteMark ListMark LinkMark EmphasisMark CodeMark":S.processingInstruction,"CodeInfo LinkLabel":S.labelName,LinkTitle:S.string,Paragraph:S.content}),YQ=new Nl(new Vn(RQ).extend(IC),Object.keys(ju).map(i=>ju[i]),Object.keys(ju).map(i=>XQ[i]),Object.keys(ju),WC,vQ,Object.keys(gm).map(i=>gm[i]),Object.keys(gm),[]);function NC(i,e,t){let r=[];for(let n=i.firstChild,s=e;;n=n.nextSibling){let o=n?n.from:t;if(o>s&&r.push({from:s,to:o}),!n)break;s=n.to}return r}function LQ(i){let{codeParser:e,htmlParser:t}=i;return{wrap:Mh((n,s)=>{let o=n.type.id;if(e&&(o==de.CodeBlock||o==de.FencedCode)){let a="";if(o==de.FencedCode){let c=n.node.getChild(de.CodeInfo);c&&(a=s.read(c.from,c.to))}let l=e(a);if(l)return{parser:l,overlay:c=>c.type.id==de.CodeText,bracketed:o==de.FencedCode}}else if(t&&(o==de.HTMLBlock||o==de.HTMLTag||o==de.CommentBlock))return{parser:t,overlay:NC(n.node,n.from,n.to)};return null})}}var FC={resolve:"Strikethrough",mark:"StrikethroughMark"},BC={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":S.strikethrough}},{name:"StrikethroughMark",style:S.processingInstruction}],parseInline:[{name:"Strikethrough",parse(i,e,t){if(e!=126||i.char(t+1)!=126||i.char(t+2)==126)return-1;let r=i.slice(t-1,t),n=i.slice(t+2,t+3),s=/\s|^$/.test(r),o=/\s|^$/.test(n),a=Fl.test(r),l=Fl.test(n);return i.addDelimiter(FC,t,t+2,!o&&(!l||s||a),!s&&(!a||o||l))},after:"Emphasis"}]};function Il(i,e,t=0,r,n=0){let s=0,o=!0,a=-1,l=-1,c=!1,u=()=>{r.push(i.elt("TableCell",n+a,n+l,i.parser.parseInline(e.slice(a,l),n+a)))};for(let O=t;O<e.length;O++){let p=e.charCodeAt(O);p==124&&!c?((!o||a>-1)&&s++,o=!1,r&&(a>-1&&u(),r.push(i.elt("TableDelimiter",O+n,O+n+1))),a=l=-1):(c||p!=32&&p!=9)&&(a<0&&(a=O),l=O+1),c=!c&&p==92}return a>-1&&(s++,r&&u()),s}function OQ(i,e){for(let t=e;t<i.length;t++){let r=i.charCodeAt(t);if(r==124)return!0;r==92&&t++}return!1}var MQ=/^[>\s]*\|?(\s*:?-+:?\s*\|)+(\s*:?-+:?\s*)?$/,Nu=class{constructor(){this.rows=null}nextLine(e,t,r){if(this.rows==null){this.rows=!1;let n;if((t.next==45||t.next==58||t.next==124)&&MQ.test(n=t.text.slice(t.pos))){let s=[];Il(e,r.content,0,s,r.start)==Il(e,n,0)&&(this.rows=[e.elt("TableHeader",r.start,r.start+r.content.length,s),e.elt("TableDelimiter",e.lineStart+t.pos,e.lineStart+t.text.length)])}}else if(this.rows){let n=[];Il(e,t.text,t.pos,n,e.lineStart),this.rows.push(e.elt("TableRow",e.lineStart+t.pos,e.lineStart+t.text.length,n))}return!1}finish(e,t){return this.rows?(e.addLeafElement(t,e.elt("Table",t.start,t.start+t.content.length,this.rows)),!0):!1}},GC={defineNodes:[{name:"Table",block:!0},{name:"TableHeader",style:{"TableHeader/...":S.heading}},"TableRow",{name:"TableCell",style:S.content},{name:"TableDelimiter",style:S.processingInstruction}],parseBlock:[{name:"Table",leaf(i,e){return OQ(e.content,0)?new Nu:null},endLeaf(i,e,t){if(t.parsers.some(n=>n instanceof Nu)||!OQ(e.text,e.basePos))return!1;let r=i.peekLine();return MQ.test(r)&&Il(i,e.text,e.basePos)==Il(i,r,e.basePos)},before:"SetextHeading"}]},Tm=class{nextLine(){return!1}finish(e,t){return e.addLeafElement(t,e.elt("Task",t.start,t.start+t.content.length,[e.elt("TaskMarker",t.start,t.start+3),...e.parser.parseInline(t.content.slice(3),t.start+3)])),!0}},HC={defineNodes:[{name:"Task",block:!0,style:S.list},{name:"TaskMarker",style:S.atom}],pa
Line truncated
|
|
|
|
|
\${}
|
|
|
|
|
} catch (\${error}) {
|
|
|
|
|
\${}
|
|
|
|
@@ -61,36 +61,41 @@ PC `+this.addr2str(s)+" "+this.opToString(c,null,y),o[P]=1)}),this.addr2str(r)+n
|
|
|
|
|
constructor(\${params}) {
|
|
|
|
|
\${}
|
|
|
|
|
}
|
|
|
|
|
}`,{label:"class",detail:"definition",type:"keyword"}),Vi('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Vi('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],FA=kw.concat([Vi("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),Vi("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),Vi("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),ww=new ha,Tw=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function Kl(i){return(e,t)=>{let r=e.node.getChild("VariableDefinition");return r&&t(r,i),!0}}var BA=["FunctionDeclaration"],GA={FunctionDeclaration:Kl("function"),ClassDeclaration:Kl("class"),ClassExpression:()=>!0,EnumDeclaration:Kl("constant"),TypeAliasDeclaration:Kl("type"),NamespaceDeclaration:Kl("namespace"),VariableDefinition(i,e){i.matchContext(BA)||e(i,"variable")},TypeDefinition(i,e){e(i,"type")},__proto__:null};function Xw(i,e){let t=ww.get(e);if(t)return t;let r=[],n=!0;function s(o,a){let l=i.sliceString(o.from,o.to);r.push({label:l,type:a})}return e.cursor(ft.IncludeAnonymous).iterate(o=>{if(n)n=!1;else if(o.name){let a=GA[o.name];if(a&&a(o,s)||Tw.has(o.name))return!1}else if(o.to-o.from>8192){for(let a of Xw(i,o.node))r.push(a);return!1}}),ww.set(e,r),r}var $w=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,_w=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function HA(i){let e=ct(i.state).resolveInner(i.pos,-1);if(_w.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&$w.test(i.state.sliceDoc(e.from,e.to));if(!t&&!i.explicit)return null;let r=[];for(let n=e;n;n=n.parent)Tw.has(n.name)&&(r=r.concat(Xw(i.state.doc,n)));return{options:r,from:t?e.from:i.pos,validFor:$w}}var Jr=bi.define({name:"javascript",parser:Qw.configure({props:[Xr.add({IfStatement:Sn({except:/^\s*({|else\b)/}),TryStatement:Sn({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:Hh,SwitchBody:i=>{let e=i.textAfter,t=/^\s*\}/.test(e),r=/^\s*(case|default)\b/.test(e);return i.baseIndent+(t?0:r?1:2)*i.unit},Block:Gh({closing:"}"}),ArrowFunction:i=>i.baseIndent+i.unit,"TemplateString BlockComment":()=>null,"Statement Property":Sn({except:/^\s*{/}),JSXElement(i){let e=/^\s*<\//.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},JSXEscape(i){let e=/\s*\}/.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},"JSXOpenTag JSXSelfClosingTag"(i){return i.column(i.node.from)+i.unit}}),ki.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":_r,BlockComment(i){return{from:i.from+2,to:i.to-2}},JSXElement(i){let e=i.firstChild;if(!e||e.name=="JSXSelfClosingTag")return null;let t=i.lastChild;return{from:e.to,to:t.type.isError?i.to:t.from}},"JSXSelfClosingTag JSXOpenTag"(i){var e;let t=(e=i.firstChild)===null||e===void 0?void 0:e.nextSibling,r=i.lastChild;return!t||t.type.isError?null:{from:t.to,to:r.type.isError?i.to:r.from}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),Rw={test:i=>/^JSX/.test(i.name),facet:fa({commentTokens:{block:{open:"{/*",close:"*/}"}}})},Dm=Jr.configure({dialect:"ts"},"typescript"),Im=Jr.configure({dialect:"jsx",props:[Fh.add(i=>i.isTop?[Rw]:void 0)]}),Nm=Jr.configure({dialect:"jsx ts",props:[Fh.add(i=>i.isTop?[Rw]:void 0)]},"typescript"),Cw=i=>({label:i,type:"keyword"}),Zw="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(Cw),KA=Zw.concat(["declare","implements","private","protected","public"].map(Cw));function Aw(i={}){let e=i.jsx?i.typescript?Nm:Im:i.typescript?Dm:Jr,t=i.typescript?FA.concat(KA):kw.concat(Zw);return new bt(e,[Jr.data.of({autocomplete:Jv(_w,Kv(t))}),Jr.data.of({autocomplete:HA}),i.jsx?t2:[]])}function JA(i){for(;;){if(i.name=="JSXOpenTag"||i.name=="JSXSelfClosingTag"||i.name=="JSXFragmentTag")return i;if(i.name=="JSXEscape"||!i.parent)return null;i=i.parent}}function Pw(i,e,t=i.length){for(let r=e==null?void 0:e.firstChild;r;r=r.nextSibling)if(r.name=="JSXIdentifier"||r.name=="JSXBuiltin"||r.name=="JSXNamespacedName"||r.name=="JSXMemberExpression")return i.sliceString(r.from,Math.min(r.to,t));return""}var e2=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),t2=ae.inputHandler.of((i,e,t,r,n)=>{if((e2?i.composing:i.compositionStarted)||i.state.readOnly||e!=t||r!=">"&&r!="/"||!Jr.isActiveAt(i.state,e,-1))return!1;let s=n(),{state:o}=s,a=o.changeByRange(l=>{var c;let{head:f}=l,O=ct(o).reso
Line truncated
|
|
|
|
|
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new sg(this):new ng(this)}getCursor(e,t=0,r){let n=e.doc?e:Je.create({doc:e});return r==null&&(r=n.doc.length),this.regexp?wa(this,n,t,r):Qa(this,n,t,r)}},ou=class{constructor(e){this.spec=e}};function z2(i,e,t){return(r,n,s,o)=>{if(t&&!t(r,n,s,o))return!1;let a=r>=o&&n<=o+s.length?s.slice(r-o,n-o):e.doc.sliceString(r,n);return i(a,e,r,n)}}function Qa(i,e,t,r){let n;return i.wholeWord&&(n=Y2(e.doc,e.charCategorizer(e.selection.main.head))),i.test&&(n=z2(i.test,e,n)),new Cs(e.doc,i.unquoted,t,r,i.caseSensitive?void 0:s=>s.toLowerCase(),n)}function Y2(i,e){return(t,r,n,s)=>((s>t||s+n.length<r)&&(s=Math.max(0,t-2),n=i.sliceString(s,Math.min(i.length,r+2))),(e(au(n,t-s))!=Qt.Word||e(lu(n,t-s))!=Qt.Word)&&(e(lu(n,r-s))!=Qt.Word||e(au(n,r-s))!=Qt.Word))}var ng=class extends ou{constructor(e){super(e)}nextMatch(e,t,r){let n=Qa(this.spec,e,r,e.doc.length).nextOverlapping();if(n.done){let s=Math.min(e.doc.length,t+this.spec.unquoted.length);n=Qa(this.spec,e,0,s).nextOverlapping()}return n.done||n.value.from==t&&n.value.to==r?null:n.value}prevMatchInRange(e,t,r){for(let n=r;;){let s=Math.max(t,n-1e4-this.spec.unquoted.length),o=Qa(this.spec,e,s,n),a=null;for(;!o.nextOverlapping().done;)a=o.value;if(a)return a;if(s==t)return null;n-=1e4}}prevMatch(e,t,r){let n=this.prevMatchInRange(e,0,t);return n||(n=this.prevMatchInRange(e,Math.max(0,r-this.spec.unquoted.length),e.doc.length)),n&&(n.from!=t||n.to!=r)?n:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=Qa(this.spec,e,0,e.doc.length),n=[];for(;!r.next().done;){if(n.length>=t)return null;n.push(r.value)}return n}highlight(e,t,r,n){let s=Qa(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)n(s.value.from,s.value.to)}};function L2(i,e,t){return(r,n,s)=>(!t||t(r,n,s))&&i(s[0],e,r,n)}function wa(i,e,t,r){let n;return i.wholeWord&&(n=M2(e.charCategorizer(e.selection.main.head))),i.test&&(n=L2(i.test,e,n)),new tu(e.doc,i.search,{ignoreCase:!i.caseSensitive,test:n},t,r)}function au(i,e){return i.slice(Mt(i,e,!1),e)}function lu(i,e){return i.slice(e,Mt(i,e))}function M2(i){return(e,t,r)=>!r[0].length||(i(au(r.input,r.index))!=Qt.Word||i(lu(r.input,r.index))!=Qt.Word)&&(i(lu(r.input,r.index+r[0].length))!=Qt.Word||i(au(r.input,r.index+r[0].length))!=Qt.Word)}var sg=class extends ou{nextMatch(e,t,r){let n=wa(this.spec,e,r,e.doc.length).next();return n.done&&(n=wa(this.spec,e,0,t).next()),n.done?null:n.value}prevMatchInRange(e,t,r){for(let n=1;;n++){let s=Math.max(t,r-n*1e4),o=wa(this.spec,e,s,r),a=null;for(;!o.next().done;)a=o.value;if(a&&(s==t||a.from>s+10))return a;if(s==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,r)=>{if(r=="&")return e.match[0];if(r=="$")return"$";for(let n=r.length;n>0;n--){let s=+r.slice(0,n);if(s>0&&s<e.match.length)return e.match[s]+r.slice(n)}return t})}matchAll(e,t){let r=wa(this.spec,e,0,e.doc.length),n=[];for(;!r.next().done;){if(n.length>=t)return null;n.push(r.value)}return n}highlight(e,t,r,n){let s=wa(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!s.next().done;)n(s.value.from,s.value.to)}},ic=Ze.define(),fg=Ze.define(),Rs=at.define({create(i){return new tc(og(i).create(),null)},update(i,e){for(let t of e.effects)t.is(ic)?i=new tc(t.value.create(),i.panel):t.is(fg)&&(i=new tc(i.query,t.value?ug:null));return i},provide:i=>pl.from(i,e=>e.panel)});var tc=class{constructor(e,t){this.query=e,this.panel=t}},j2=Oe.mark({class:"cm-searchMatch"}),W2=Oe.mark({class:"cm-searchMatch cm-searchMatch-selected"}),V2=Xt.fromClass(class{constructor(i){this.view=i,this.decorations=this.highlight(i.state.field(Rs))}update(i){let e=i.state.field(Rs);(e!=i.startState.field(Rs)||i.docChanged||i.selectionSet||i.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:i,panel:e}){if(!e||!i.spec.valid)return Oe.none;let{view:t}=this,r=new Wr;for(let n=0,s=t.visibleRanges,o=s.length;n<o;n++){let{from:a,to:l}=s[n];for(;n<o-1&&l>s[n+1].from-500;)l=s[++n].to;i.highlight(t.state,a,l,(c,f)=>{let O=t.state.selection.ranges.some(p=>p.from==c&&p.to==f);r.add(c,f,O?W2:j2)})}return r.finish()}},{decorations:i=>i.decorations});function rc(i){return e=>{let t=e.state.field(Rs,!1);return t&&t.query.spec.valid?i(e,t):h$(e)}}var cu=rc((i,{query:e})=>{let{to:t}=i.state.selection.main,r=e.nextMatch(i.state,t,t);if(!r)return!1;let n=K.single(r.from,r.to),s=i.state.facet(_o);return i.dispatch({selection:n,effects:[dg(i,r),s.scrollToMatch(n.main,i)],userEvent:"select.search"}),c$(i),!0}),hu=rc((i,{query:e})=>{let{state:t}=i,{from:r}=t.selection.main,n=e.prevMatch(t,r,r);if(
Line truncated
|
|
|
|
|
`);for(let l of a){R$.lastIndex=0;let c=R$.exec(l);if(c){let f=o+c.index+c[0].length;t.push(Oe.widget({widget:new Zg(c[0],e),side:-1}).range(f))}o+=l.length+1}}return Oe.set(t,!0)}function Z$(i){let e;function t(r){let n=e.posAtDOM(r);i(e.state.doc.lineAt(n).number)}return Xt.fromClass(class{constructor(r){e=r,this.decorations=C$(r,t)}update(r){e=r.view,(r.docChanged||r.viewportChanged)&&(this.decorations=C$(r.view,t))}},{decorations:r=>r.decorations})}var Ag=class extends It{constructor(t,r,n){super();this.filename=t;this.system=r;this.handleClick=n}toDOM(){let t=document.createElement("span");return t.className="include-link-badge",t.textContent="\u2192",t.title=(this.system?"System header: ":"View ")+this.filename,t.addEventListener("click",r=>{r.preventDefault(),r.stopPropagation(),this.handleClick(this.filename,this.system)}),t}eq(t){return this.filename===t.filename&&this.system===t.system}ignoreEvent(){return!1}};function rU(i,e,t){let r=[],n=i.state.doc,s=new Set;for(let{from:o,to:a}of i.visibleRanges){let l=i.state.sliceDoc(o,a);for(let c of e){let f=c instanceof RegExp?{re:c}:c;f.re.lastIndex=0;let O;for(;O=f.re.exec(l);){let p=O[f.group!=null?f.group:O.length-1];if(!p)continue;let b=f.suffix?p+f.suffix:p,y=Math.min(o+O.index+O[0].length,n.length),P=n.lineAt(y),X=P.number+":"+b;s.has(X)||(s.add(X),r.push(Oe.widget({widget:new Ag(b,!!f.system,t),side:1}).range(P.to)))}}}return Oe.set(r,!0)}function A$(i,e){function t(r){let n=i();return!n||!n.length?Oe.none:rU(r,n,e)}return Xt.fromClass(class{constructor(r){this.decorations=t(r)}update(r){(r.docChanged||r.viewportChanged)&&(this.decorations=t(r.view))}},{decorations:r=>r.decorations})}function nU(i){return Je.transactionFilter.of(e=>{if(!e.docChanged||!e.isUserEvent("input")||!i.input)return e;let t=[],r=!1;if(e.changes.iterChanges((o,a,l,c,f)=>{let O=f.toString(),p=i.input(O);t.push({from:o,to:a,insert:p}),p!==O&&(r=!0)}),!r)return e;let n=e.annotation(At.userEvent),s=e.annotation(At.addToHistory);return{changes:t,selection:e.selection,effects:e.effects,scrollIntoView:e.scrollIntoView,annotations:[...n!=null?[At.userEvent.of(n)]:[],...s!=null?[At.addToHistory.of(s)]:[]]}})}var Eg=new Li;function E$(i){return Eg.reconfigure(nU(i))}var U$=Ze.define(),z$=Ze.define(),Y$=Ze.define(),zg=Ze.define(),L$=Ze.define(),M$=Ze.define(),Yg=Ze.define(),j$=Ze.define(),W$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(U$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new du(pt(o,4)).range(a))}i=qe.of(n,!0)}return i}}),V$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(z$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new pu(o).range(a))}i=qe.of(n,!0)}return i}}),q$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(Y$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new mu(o).range(a))}i=qe.of(n,!0)}return i}}),D$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(zg))if(t.value===null)i=qe.empty;else{let r=t.value;if(r>=1&&r<=e.state.doc.lines){let n=e.state.doc.line(r).from,s=!1;i.between(n,n,()=>(s=!0,!1)),s?i=i.update({filter:o=>o!==n}):i=i.update({add:[oU.range(n)]})}}return i}}),Ug=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(L$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new gu(s,o).range(a))}i=qe.of(n,!0)}return i}}),I$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(M$))if(t.value===null)i=qe.empty;else{let r=t.value;if(r>=1&&r<=e.state.doc.lines){let n=e.state.doc.line(r).from;i=qe.of(N$.range(n))}}return i}}),du=class extends Wt{constructor(t){super();this.hex=t}toDOM(){let t=document.createElement("span");return t.textContent=this.hex,t.style.cursor="pointer",t.title="Click to run to here",t.addEventListener("mouseenter",()=>{t.style.textDecoration="underline"}),t.addEventListener("mouseleave",()=>{t.style.textDecoration="none"}),t}eq(t){return this.hex==t.hex}},pu=class extends Wt{constructor(t){super();this.bytes=t}toDOM(){return document.createTextNode(this.bytes)}eq(t){return this.bytes==t.bytes}},mu=class extends Wt{constructor(t){super();this.clock=t}toDOM(){return document.createTextNode(this.clock)}eq(t){return this.clock==t.clock}},sU=new class extends Wt{toDOM(){let i=document.createElement("span");return i.textContent="\u25CF",i.style.color="transparent",i.style.cursor="pointer",i.addEventListener("mouseenter",()=>{i.style.color="rgba(255, 0, 0, 0.5)"}),i.addEventListener("mouseleave",()=>{i.style.color="transparent"}),i}},oU=new class extends Wt{toDOM(){let i=documen
Line truncated
|
|
|
|
|
}`,{label:"class",detail:"definition",type:"keyword"}),Vi('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Vi('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],F2=Tw.concat([Vi("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),Vi("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),Vi("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),$w=new ha,Xw=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function Kl(i){return(e,t)=>{let r=e.node.getChild("VariableDefinition");return r&&t(r,i),!0}}var B2=["FunctionDeclaration"],G2={FunctionDeclaration:Kl("function"),ClassDeclaration:Kl("class"),ClassExpression:()=>!0,EnumDeclaration:Kl("constant"),TypeAliasDeclaration:Kl("type"),NamespaceDeclaration:Kl("namespace"),VariableDefinition(i,e){i.matchContext(B2)||e(i,"variable")},TypeDefinition(i,e){e(i,"type")},__proto__:null};function _w(i,e){let t=$w.get(e);if(t)return t;let r=[],n=!0;function s(o,a){let l=i.sliceString(o.from,o.to);r.push({label:l,type:a})}return e.cursor(ut.IncludeAnonymous).iterate(o=>{if(n)n=!1;else if(o.name){let a=G2[o.name];if(a&&a(o,s)||Xw.has(o.name))return!1}else if(o.to-o.from>8192){for(let a of _w(i,o.node))r.push(a);return!1}}),$w.set(e,r),r}var Pw=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,Rw=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName","JSXText","JSXAttributeValue","JSXOpenTag","JSXCloseTag","JSXSelfClosingTag",".","?."];function H2(i){let e=ct(i.state).resolveInner(i.pos,-1);if(Rw.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&Pw.test(i.state.sliceDoc(e.from,e.to));if(!t&&!i.explicit)return null;let r=[];for(let n=e;n;n=n.parent)Xw.has(n.name)&&(r=r.concat(_w(i.state.doc,n)));return{options:r,from:t?e.from:i.pos,validFor:Pw}}var Jr=bi.define({name:"javascript",parser:ww.configure({props:[Xr.add({IfStatement:Sn({except:/^\s*({|else\b)/}),TryStatement:Sn({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:Hh,SwitchBody:i=>{let e=i.textAfter,t=/^\s*\}/.test(e),r=/^\s*(case|default)\b/.test(e);return i.baseIndent+(t?0:r?1:2)*i.unit},Block:Gh({closing:"}"}),ArrowFunction:i=>i.baseIndent+i.unit,"TemplateString BlockComment":()=>null,"Statement Property":Sn({except:/^\s*{/}),JSXElement(i){let e=/^\s*<\//.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},JSXEscape(i){let e=/\s*\}/.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},"JSXOpenTag JSXSelfClosingTag"(i){return i.column(i.node.from)+i.unit}}),ki.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":_r,BlockComment(i){return{from:i.from+2,to:i.to-2}},JSXElement(i){let e=i.firstChild;if(!e||e.name=="JSXSelfClosingTag")return null;let t=i.lastChild;return{from:e.to,to:t.type.isError?i.to:t.from}},"JSXSelfClosingTag JSXOpenTag"(i){var e;let t=(e=i.firstChild)===null||e===void 0?void 0:e.nextSibling,r=i.lastChild;return!t||t.type.isError?null:{from:t.to,to:r.type.isError?i.to:r.from}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),Cw={test:i=>/^JSX/.test(i.name),facet:ua({commentTokens:{block:{open:"{/*",close:"*/}"}}})},Im=Jr.configure({dialect:"ts"},"typescript"),Nm=Jr.configure({dialect:"jsx",props:[Fh.add(i=>i.isTop?[Cw]:void 0)]}),Fm=Jr.configure({dialect:"jsx ts",props:[Fh.add(i=>i.isTop?[Cw]:void 0)]},"typescript"),Zw=i=>({label:i,type:"keyword"}),Aw="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(Zw),K2=Aw.concat(["declare","implements","private","protected","public"].map(Zw));function Ew(i={}){let e=i.jsx?i.typescript?Fm:Nm:i.typescript?Im:Jr,t=i.typescript?F2.concat(K2):Tw.concat(Aw);return new bt(e,[Jr.data.of({autocomplete:eS(Rw,Jv(t))}),Jr.data.of({autocomplete:H2}),i.jsx?tA:[]])}function J2(i){for(;;){if(i.name=="JSXOpenTag"||i.name=="JSXSelfClosingTag"||i.name=="JSXFragmentTag")return i;if(i.name=="JSXEscape"||!i.parent)return null;i=i.parent}}function kw(i,e,t=i.length){for(let r=e==null?void 0:e.firstChild;r;r=r.nextSibling)if(r.name=="JSXIdentifier"||r.name=="JSXBuiltin"||r.name=="JSXNamespacedName"||r.name=="JSXMemberExpression")return i.sliceString(r.from,Math.min(r.to,t));return""}var eA=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),tA=ae.inputHandler.of((i,e,t,r,n)=>{if((eA?i.composing:i.compositionStarted)||i.state.readOnly||e!=t||r!=">"&&r!="/"||!Jr.isActiveAt(i.state,e,-1))return!1;let s=n(),{state:o}=s,a=o.changeByRange(l=>{var c;let{head:u}=l,O=ct(o).reso
Line truncated
|
|
|
|
|
`:r=="r"?"\r":r=="t"?" ":"\\")}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new og(this):new sg(this)}getCursor(e,t=0,r){let n=e.doc?e:Je.create({doc:e});return r==null&&(r=n.doc.length),this.regexp?wa(this,n,t,r):Qa(this,n,t,r)}},of=class{constructor(e){this.spec=e}};function zA(i,e,t){return(r,n,s,o)=>{if(t&&!t(r,n,s,o))return!1;let a=r>=o&&n<=o+s.length?s.slice(r-o,n-o):e.doc.sliceString(r,n);return i(a,e,r,n)}}function Qa(i,e,t,r){let n;return i.wholeWord&&(n=YA(e.doc,e.charCategorizer(e.selection.main.head))),i.test&&(n=zA(i.test,e,n)),new Cs(e.doc,i.unquoted,t,r,i.caseSensitive?void 0:s=>s.toLowerCase(),n)}function YA(i,e){return(t,r,n,s)=>((s>t||s+n.length<r)&&(s=Math.max(0,t-2),n=i.sliceString(s,Math.min(i.length,r+2))),(e(af(n,t-s))!=Qt.Word||e(lf(n,t-s))!=Qt.Word)&&(e(lf(n,r-s))!=Qt.Word||e(af(n,r-s))!=Qt.Word))}var sg=class extends of{constructor(e){super(e)}nextMatch(e,t,r){let n=Qa(this.spec,e,r,e.doc.length).nextOverlapping();if(n.done){let s=Math.min(e.doc.length,t+this.spec.unquoted.length);n=Qa(this.spec,e,0,s).nextOverlapping()}return n.done||n.value.from==t&&n.value.to==r?null:n.value}prevMatchInRange(e,t,r){for(let n=r;;){let s=Math.max(t,n-1e4-this.spec.unquoted.length),o=Qa(this.spec,e,s,n),a=null;for(;!o.nextOverlapping().done;)a=o.value;if(a)return a;if(s==t)return null;n-=1e4}}prevMatch(e,t,r){let n=this.prevMatchInRange(e,0,t);return n||(n=this.prevMatchInRange(e,Math.max(0,r-this.spec.unquoted.length),e.doc.length)),n&&(n.from!=t||n.to!=r)?n:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let r=Qa(this.spec,e,0,e.doc.length),n=[];for(;!r.next().done;){if(n.length>=t)return null;n.push(r.value)}return n}highlight(e,t,r,n){let s=Qa(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(r+this.spec.unquoted.length,e.doc.length));for(;!s.next().done;)n(s.value.from,s.value.to)}};function LA(i,e,t){return(r,n,s)=>(!t||t(r,n,s))&&i(s[0],e,r,n)}function wa(i,e,t,r){let n;return i.wholeWord&&(n=MA(e.charCategorizer(e.selection.main.head))),i.test&&(n=LA(i.test,e,n)),new ef(e.doc,i.search,{ignoreCase:!i.caseSensitive,test:n},t,r)}function af(i,e){return i.slice(Mt(i,e,!1),e)}function lf(i,e){return i.slice(e,Mt(i,e))}function MA(i){return(e,t,r)=>!r[0].length||(i(af(r.input,r.index))!=Qt.Word||i(lf(r.input,r.index))!=Qt.Word)&&(i(lf(r.input,r.index+r[0].length))!=Qt.Word||i(af(r.input,r.index+r[0].length))!=Qt.Word)}var og=class extends of{nextMatch(e,t,r){let n=wa(this.spec,e,r,e.doc.length).next();return n.done&&(n=wa(this.spec,e,0,t).next()),n.done?null:n.value}prevMatchInRange(e,t,r){for(let n=1;;n++){let s=Math.max(t,r-n*1e4),o=wa(this.spec,e,s,r),a=null;for(;!o.next().done;)a=o.value;if(a&&(s==t||a.from>s+10))return a;if(s==t)return null}}prevMatch(e,t,r){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,r,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,r)=>{if(r=="&")return e.match[0];if(r=="$")return"$";for(let n=r.length;n>0;n--){let s=+r.slice(0,n);if(s>0&&s<e.match.length)return e.match[s]+r.slice(n)}return t})}matchAll(e,t){let r=wa(this.spec,e,0,e.doc.length),n=[];for(;!r.next().done;){if(n.length>=t)return null;n.push(r.value)}return n}highlight(e,t,r,n){let s=wa(this.spec,e,Math.max(0,t-250),Math.min(r+250,e.doc.length));for(;!s.next().done;)n(s.value.from,s.value.to)}},ic=Ze.define(),fg=Ze.define(),Rs=at.define({create(i){return new tc(ag(i).create(),null)},update(i,e){for(let t of e.effects)t.is(ic)?i=new tc(t.value.create(),i.panel):t.is(fg)&&(i=new tc(i.query,t.value?Og:null));return i},provide:i=>pl.from(i,e=>e.panel)});var tc=class{constructor(e,t){this.query=e,this.panel=t}},jA=Oe.mark({class:"cm-searchMatch"}),WA=Oe.mark({class:"cm-searchMatch cm-searchMatch-selected"}),VA=Xt.fromClass(class{constructor(i){this.view=i,this.decorations=this.highlight(i.state.field(Rs))}update(i){let e=i.state.field(Rs);(e!=i.startState.field(Rs)||i.docChanged||i.selectionSet||i.viewportChanged)&&(this.decorations=this.highlight(e))}highlight({query:i,panel:e}){if(!e||!i.spec.valid)return Oe.none;let{view:t}=this,r=new Wr;for(let n=0,s=t.visibleRanges,o=s.length;n<o;n++){let{from:a,to:l}=s[n];for(;n<o-1&&l>s[n+1].from-500;)l=s[++n].to;i.highlight(t.state,a,l,(c,u)=>{let O=t.state.selection.ranges.some(p=>p.from==c&&p.to==u);r.add(c,u,O?WA:jA)})}return r.finish()}},{decorations:i=>i.decorations});function rc(i){return e=>{let t=e.state.field(Rs,!1);return t&&t.query.spec.valid?i(e,t):u$(e)}}var cf=rc((i,{query:e})=>{let{to:t}=i.state.selection.main,r=e.nextMatch(i.state,t,t);if(!r)return!1;let n=K.single(r.from,r.to),s=i.state.facet(_o);return i.dispatch({selection:n,effects:[pg(i,r),s.scrollToMatch(n.main,i)],userEvent:"select.search"}),h$(i),!0}),hf=rc((i,{query:e})=>{let{state:t}=i,{from:r}=t.selection.main,n=e.prevMatch(t,r,r);if(
Line truncated
|
|
|
|
|
`);for(let l of a){C$.lastIndex=0;let c=C$.exec(l);if(c){let u=o+c.index+c[0].length;t.push(Oe.widget({widget:new Ag(c[0],e),side:-1}).range(u))}o+=l.length+1}}return Oe.set(t,!0)}function A$(i){let e;function t(r){let n=e.posAtDOM(r);i(e.state.doc.lineAt(n).number)}return Xt.fromClass(class{constructor(r){e=r,this.decorations=Z$(r,t)}update(r){e=r.view,(r.docChanged||r.viewportChanged)&&(this.decorations=Z$(r.view,t))}},{decorations:r=>r.decorations})}var Eg=class extends It{constructor(t,r,n){super();this.filename=t;this.system=r;this.handleClick=n}toDOM(){let t=document.createElement("span");return t.className="include-link-badge",t.textContent="\u2192",t.title=(this.system?"System header: ":"View ")+this.filename,t.addEventListener("click",r=>{r.preventDefault(),r.stopPropagation(),this.handleClick(this.filename,this.system)}),t}eq(t){return this.filename===t.filename&&this.system===t.system}ignoreEvent(){return!1}};function rU(i,e,t){let r=[],n=i.state.doc,s=new Set;for(let{from:o,to:a}of i.visibleRanges){let l=i.state.sliceDoc(o,a);for(let c of e){let u=c instanceof RegExp?{re:c}:c;u.re.lastIndex=0;let O;for(;O=u.re.exec(l);){let p=O[u.group!=null?u.group:O.length-1];if(!p)continue;let b=u.suffix?p+u.suffix:p,y=Math.min(o+O.index+O[0].length,n.length),P=n.lineAt(y),X=P.number+":"+b;s.has(X)||(s.add(X),r.push(Oe.widget({widget:new Eg(b,!!u.system,t),side:1}).range(P.to)))}}}return Oe.set(r,!0)}function E$(i,e){function t(r){let n=i();return!n||!n.length?Oe.none:rU(r,n,e)}return Xt.fromClass(class{constructor(r){this.decorations=t(r)}update(r){(r.docChanged||r.viewportChanged)&&(this.decorations=t(r.view))}},{decorations:r=>r.decorations})}function nU(i){return Je.transactionFilter.of(e=>{if(!e.docChanged||!e.isUserEvent("input")||!i.input)return e;let t=[],r=!1;if(e.changes.iterChanges((o,a,l,c,u)=>{let O=u.toString(),p=i.input(O);t.push({from:o,to:a,insert:p}),p!==O&&(r=!0)}),!r)return e;let n=e.annotation(At.userEvent),s=e.annotation(At.addToHistory);return{changes:t,selection:e.selection,effects:e.effects,scrollIntoView:e.scrollIntoView,annotations:[...n!=null?[At.userEvent.of(n)]:[],...s!=null?[At.addToHistory.of(s)]:[]]}})}var Ug=new Li;function U$(i){return Ug.reconfigure(nU(i))}var z$=Ze.define(),Y$=Ze.define(),L$=Ze.define(),Yg=Ze.define(),M$=Ze.define(),j$=Ze.define(),Lg=Ze.define(),W$=Ze.define(),V$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(z$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new df(pt(o,4)).range(a))}i=qe.of(n,!0)}return i}}),q$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(Y$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new pf(o).range(a))}i=qe.of(n,!0)}return i}}),D$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(L$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new mf(o).range(a))}i=qe.of(n,!0)}return i}}),I$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(Yg))if(t.value===null)i=qe.empty;else{let r=t.value;if(r>=1&&r<=e.state.doc.lines){let n=e.state.doc.line(r).from,s=!1;i.between(n,n,()=>(s=!0,!1)),s?i=i.update({filter:o=>o!==n}):i=i.update({add:[oU.range(n)]})}}return i}}),zg=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(M$)){let r=t.value,n=[];for(let[s,o]of r.entries())if(s>=1&&s<=e.state.doc.lines){let a=e.state.doc.line(s).from;n.push(new gf(s,o).range(a))}i=qe.of(n,!0)}return i}}),N$=at.define({create(){return qe.empty},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(j$))if(t.value===null)i=qe.empty;else{let r=t.value;if(r>=1&&r<=e.state.doc.lines){let n=e.state.doc.line(r).from;i=qe.of(F$.range(n))}}return i}}),df=class extends Wt{constructor(t){super();this.hex=t}toDOM(){let t=document.createElement("span");return t.textContent=this.hex,t.style.cursor="pointer",t.title="Click to run to here",t.addEventListener("mouseenter",()=>{t.style.textDecoration="underline"}),t.addEventListener("mouseleave",()=>{t.style.textDecoration="none"}),t}eq(t){return this.hex==t.hex}},pf=class extends Wt{constructor(t){super();this.bytes=t}toDOM(){return document.createTextNode(this.bytes)}eq(t){return this.bytes==t.bytes}},mf=class extends Wt{constructor(t){super();this.clock=t}toDOM(){return document.createTextNode(this.clock)}eq(t){return this.clock==t.clock}},sU=new class extends Wt{toDOM(){let i=document.createElement("span");return i.textContent="\u25CF",i.style.color="transparent",i.style.cursor="pointer",i.addEventListener("mouseenter",()=>{i.style.color="rgba(255, 0, 0, 0.5)"}),i.addEventListener("mouseleave",()=>{i.style.color="transparent"}),i}},oU=new class extends Wt{toDOM(){let i=documen
Line truncated
|
|
|
|
|
color: #ff6666;
|
|
|
|
|
background-color: #330000;
|
|
|
|
|
padding: 4px 8px;
|
|
|
|
|
margin: 2px 0;
|
|
|
|
|
border-left: 3px solid #ff0000;
|
|
|
|
|
font-family: monospace;
|
|
|
|
|
`,t}},dU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(Ro.showMessage)){if(t.value===null||!t.value)return Oe.none;if(t.value.toggle){let r=[],n=new Map;return i.between(0,e.state.doc.length,(a,l,c)=>{try{let f=e.state.doc.lineAt(l).number;c.spec.widget instanceof sc&&n.set(f,c.spec.widget.message)}catch(f){}}),n.has(t.value.line)?n.delete(t.value.line):n.set(t.value.line,t.value.msg),Array.from(n.keys()).sort((a,l)=>a-l).forEach(a=>{try{let l=e.state.doc.line(a);r.push(Oe.widget({widget:new sc(n.get(a)),block:!0,side:1}).range(l.to))}catch(l){}}),Oe.set(r,!0)}}return i},provide:i=>ae.decorations.from(i)}),Lg=class extends It{constructor(t){super();this.value=t}toDOM(){let t=document.createElement("div");return t.textContent=`${this.value}`,t.style.cssText=`
|
|
|
|
|
`,t}},dU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(Ro.showMessage)){if(t.value===null||!t.value)return Oe.none;if(t.value.toggle){let r=[],n=new Map;return i.between(0,e.state.doc.length,(a,l,c)=>{try{let u=e.state.doc.lineAt(l).number;c.spec.widget instanceof sc&&n.set(u,c.spec.widget.message)}catch(u){}}),n.has(t.value.line)?n.delete(t.value.line):n.set(t.value.line,t.value.msg),Array.from(n.keys()).sort((a,l)=>a-l).forEach(a=>{try{let l=e.state.doc.line(a);r.push(Oe.widget({widget:new sc(n.get(a)),block:!0,side:1}).range(l.to))}catch(l){}}),Oe.set(r,!0)}}return i},provide:i=>ae.decorations.from(i)}),Mg=class extends It{constructor(t){super();this.value=t}toDOM(){let t=document.createElement("div");return t.textContent=`${this.value}`,t.style.cssText=`
|
|
|
|
|
color: #ccccff;
|
|
|
|
|
background-color: #000066;
|
|
|
|
|
display: inline-block;
|
|
|
|
|
`,t.className="cm-line",t}},H$=Ze.define(),pU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(H$)){if(t.value===null||!t.value)return Oe.none;let r=e.state.doc.lineAt(t.value.range.to);return Oe.set([Oe.widget({widget:new Lg(t.value.val),block:!0,side:1}).range(r.to)])}return i},provide:i=>ae.decorations.from(i)}),K$=Ze.define(),mU=Oe.mark({attributes:{class:"cm-error-span"}}),gU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(K$)){if(t.value===null)return Oe.none;let r=[];for(let n of t.value)try{let s=e.state.doc.line(n.line),o=s.from+n.start,a=s.from+n.end;o>=s.from&&a<=s.to&&o<a&&r.push(mU.range(o,a))}catch(s){}return Oe.set(r,!0)}return i},provide:i=>ae.decorations.from(i)}),J$=Ze.define(),bU=Oe.line({attributes:{class:"highlight-lines"}}),xU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(J$)){if(t.value===null)return Oe.none;let{start:r,end:n}=t.value,s=[];for(let o=r;o<=n;o++)try{let a=e.state.doc.line(o);s.push(bU.range(a.from))}catch(a){}return Oe.set(s)}return i!==Oe.none&&(e.docChanged||e.selection)?Oe.none:i},provide:i=>ae.decorations.from(i)}),e1={field:dU,widget:sc},oc={effect:B$,decoration:G$,field:OU},Su={effect:H$,field:pU},yu={effect:K$,field:gU},Qu={effect:J$,field:xU},t1=Ze.define(),vU=Oe.line({attributes:{class:"cm-traced-line"}}),SU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(t1)){let r=[];for(let n of t.value)try{let s=e.state.doc.line(n);r.push(vU.range(s.from))}catch(s){}return Oe.set(r,!0)}return i},provide:i=>ae.decorations.from(i)}),wu={effect:t1,field:SU};var lc=64,i1=Ze.define(),r1=Ze.define(),Mg=at.define({create(){return new Map},update(i,e){let t=i;for(let r of e.effects)if(r.is(r1))t=new Map;else if(r.is(i1)){t===i&&(t=new Map(i));for(let n of r.value)t.set(n.id,{from:n.from,to:n.to})}if(!e.changes.empty){let r=new Map;for(let[n,s]of t)r.set(n,{from:e.changes.mapPos(s.from,-1),to:e.changes.mapPos(s.to,1)});return r}return t}}),yU=200,jg={default:{theme:Ou},6502:{isAsm:!0},z80:{isAsm:!0},jsasm:{isAsm:!0},gas:{isAsm:!0},vasm:{isAsm:!0},inform6:{theme:uu},dialog:{theme:uu,lineWrap:!0},markdown:{lineWrap:!0},fastbasic:{noGutters:!0},basic:{noGutters:!0},ecs:{theme:Ou}},n1={input:null};function s1(i){n1.input=i?e=>e.toUpperCase():null}var ac=class ac{constructor(e,t){this.updateTimer=null;this.dirtylisting=!0;this.refreshDelayMsec=300;this.probe=null;this.path=e,this.mode=t}createDiv(e){var t=document.createElement("div");t.setAttribute("class","editor"),e.appendChild(t);var r=ke.getFile(this.path),n=r&&this.mode=="verilog"&&/__asm\b([\s\S]+?)\b__endasm\b/.test(r);return this.newEditor(t,r,n),this.editor.dispatch({effects:E$(n1)}),ke.getToolForFilename(this.path).startsWith("remote:")&&(this.refreshDelayMsec=1e3),t}setVisible(e){e?(this.editor.focus(),ac.tracingEnabled&&this.startTracing()):this.stopTracing()}startTracing(){!this.probe&&L.startProbing&&(this.probe=L.startProbing(),this.probe.singleFrame=!1,this.probe.clear())}stopTracing(){this.probe&&(L.stopProbing(),this.probe=null),this.editor.dispatch({effects:wu.effect.of([])})}setTracingEnabled(e){ac.tracingEnabled=e,e?this.startTracing():this.stopTracing()}newEditor(e,t,r){var n=jg[this.mode]||jg.default,s=r||n.isAsm,o=!!n.lineWrap,a=n.theme||jg.default.theme,l=n.useLineNumbers&&!Ml;ve.embed&&(l=!1,s=!1);let c=n.noGutters||Ml;var f;switch(this.mode){case"6502":f=x$();break;case"basic":f=v$();break;case"bataribasic":f=S$();break;case"fastbasic":f=Q$();break;case"dialog":f=y$();break;case"inform6":f=w$();break;case"markdown":f=i$();break;case"text/x-csrc":f=dm();break;case"text/x-wiz":f=P$();break;case"verilog":f=$$();break;case"z80":f=X$();break;default:console.warn("Unknown mode: "+this.mode);break}this.editor=new ae({parent:e,doc:t,extensions:[s?[]:Tr.of(" "),s?Sp.of((O,p)=>{let b=O.state.doc.lineAt(p).number;if(b>=0){let y=O.state.doc.line(b);if(y.text.trim())return O.lineIndent(y.from)}return 0}):[],...s?[Hi.of(ty(()=>Of().tabsToSpaces))]:[],...sy(Of()),Hi.of(BS),l?Ah():[],xS(),Hi.of(yS),Yv(),Bx(),Je.allowMultipleSelections.of(!0),_h(),Av(),Vv(),Ch(),Zh(),Rh(),nv(),fu(),hg({top:!0}),Hi.of(Og),f||[],a,Cg,o?ae.lineWrapping:[],oc.field,c?[]:[bu.field,bu.gutter],s&&!c?[nc.field,nc.gutter,xu.field,xu.gutter]:[],vu.field,F$.gutter,ae.updateListener.of(O=>{for(let p of O.transactions.flatMap(b=>b.effects))if(p.is(vu.set)&&L.isRunning()&&this.runToBreakpoints(O.state),p.is($a.runToLine)){let b=p.value;if(this.sourcefile&&this.sourcefile.line2offset){let y=this.sourcefile.line2offset[b];y>=0&&$o([y])}}}),Ro.field,e1.field,yu.field,$a.field,$a.gutter,Qu.field,wu.field,Mg,Z$(O=>{window.location.hash="asseteditor/"+encodeURIComponent(this.path)+"/"+O}),ve.embed?[]:A$(()=>{var O=ke&&ke.getToolForFilename(this.path),p=ke&&ke.platform_id;return[...Ac(O,p),...Ec(O,p),...A0(O)]},(O,p)=>{if(!p){var b=o1(O);if(b){window.location.h
Line truncated
|
|
|
|
|
`).length-1;this.editor.dispatch({changes:{from:n,insert:e}}),this.highlightLines(r-1,r+s-2)}highlightLines(e,t){let r=this.editor.state.doc.line(e+1);this.editor.dispatch({effects:[Qu.effect.of({start:e+1,end:t+1}),ae.scrollIntoView(r.from,{y:"start",yMargin:100})]})}navigateToLine(e){if(e<1||e>this.editor.state.doc.lines)return;let t=this.editor.state.doc.line(e);this.editor.dispatch({selection:{anchor:t.from},effects:[Qu.effect.of({start:e,end:e}),ae.scrollIntoView(t.from,{y:"center"})]}),this.editor.focus()}getValue(){return this.editor.state.doc.toString()}getPath(){return this.path}markErrors(e){this.clearErrors(),e=e.slice(0,yU);let t=new Map,r=[];for(var n of e)if(!n.path||this.path.endsWith(n.path)){var s=this.editor.state.doc.lines,o=n.line;(isNaN(o)||o<1||o>s)&&(o=1),t.set(o,n.msg),n.start!=null&&n.end!=null&&n.end>n.start&&r.push({line:o,start:n.start,end:n.end})}this.editor.dispatch({effects:[Ro.set.of(t),yu.effect.of(r.length>0?r:null)]})}clearErrors(){this.dirtylisting=!0,this.editor.dispatch({effects:[Ro.set.of(new Map),Ro.showMessage.of(null),yu.effect.of(null)]})}getSourceFile(){return this.sourcefile}updateListing(){this.clearErrors();var e=this.sourcefile.lines||[];let t=new Map,r=new Map,n=new Map;for(var s of e)if(s.offset>=0&&t.set(s.line,pt(s.offset&65535,4)),s.insns){var o=s.insns.length>9?"...":s.insns;if(r.set(s.line,o),s.iscode){if(s.cycles)n.set(s.line,s.cycles+"");else if(L.getOpcodeMetadata){var a=parseInt(s.insns.split(" ")[0],16),l=L.getOpcodeMetadata(a,s.offset);if(l&&l.minCycles){var c=l.minCycles+"";n.set(s.line,c)}}}}this.editor.dispatch({effects:[bu.set.of(t),nc.set.of(r),xu.set.of(n)]})}setTimingResult(e){if(this.sourcefile!=null){var t=new Map;for(let o of Object.keys(this.sourcefile.line2offset)){let a=this.sourcefile.line2offset[o],l=e.pc2clockrange[a];var r=l&&l.minclocks,n=l&&l.maxclocks;if(r>=0&&n>=0){var s;n==r?s=r+"":s=r+"-"+n,n==e.MAX_CLOCKS&&(s+="+"),t.set(parseInt(o),s)}}this.editor.dispatch({effects:[nc.set.of(t)]})}}setCurrentLine(e,t){var r=n=>{this.editor.dispatch({effects:[$a.set.of(n.line),oc.effect.of(n.line),...t?[ae.scrollIntoView(this.editor.state.doc.line(n.line).from,{y:"center"})]:[]]})};if(this.clearCurrentLine(t),e){if(e.line<1||e.line>this.editor.state.doc.lines)return;if(r(e),t){let s=this.editor.state.doc.line(e.line).from+(e.start||0);this.editor.dispatch({selection:{anchor:s,head:s},effects:ae.scrollIntoView(s,{y:"center"})})}this.currentDebugLine=e}}clearCurrentLine(e){if(this.currentDebugLine){if(e){let t=this.editor.state.selection.main.head;this.editor.dispatch({selection:{anchor:t,head:t}})}this.currentDebugLine=null}this.editor.dispatch({effects:[$a.set.of(null),oc.effect.of(null)]})}getActiveLine(){if(this.sourcefile){var e=Hn&&Hn.c;if(!e&&L.getCPUState&&!L.isRunning()&&(e=L.getCPUState()),e){var t=e&&(e.EPC||e.PC),r=this.sourcefile.findLineForOffset(t,lc);return r}}}refreshDebugState(e){var t=this.getActiveLine();!e&&(t===this.currentDebugLine||!t&&!this.currentDebugLine)||this.setCurrentLine(t,e)}refreshListing(){var e=ke.getListingForFile(this.path);e&&e.sourcefile&&e.sourcefile!==this.sourcefile&&(this.sourcefile=e.sourcefile,this.dirtylisting=!0),!(!this.sourcefile||!this.dirtylisting)&&(this.updateListing(),this.dirtylisting=!1)}refresh(e){this.refreshListing(),this.refreshDebugState(e)}tick(){this.refreshDebugState(!1),this.updateTracedLines()}updateTracedLines(){let e=this.probe;if(!e||!e.idx||!this.sourcefile)return;let t=new Set;for(let r=0;r<e.idx;r++){let n=e.buf[r];if((n&4278190080)===16777216){let s=this.sourcefile.findLineForOffset(n&65535,lc);s&&t.add(s.line)}}e.clear(),this.editor.dispatch({effects:wu.effect.of(Array.from(t))})}getLine(e){return this.editor.state.doc.line(e).text}getCurrentLine(){let e=this.editor.state.selection.main.head;return this.editor.state.doc.lineAt(e).number}getCursorPC(){for(var e=this.getCurrentLine();this.sourcefile&&e>=0;){var t=this.sourcefile.line2offset[e];if(t>=0)return t;e--}return-1}undoStep(){of(this.editor)}redoStep(){Tl(this.editor)}getBreakpointPCs(){if(this.sourcefile==null)return[];let e=[],r=this.editor.state.field(vu.field).iter();for(;r.value;){let n=this.editor.state.doc.lineAt(r.from).number,s=this.sourcefile.line2offset[n];s>=0&&e.push(s),r.next()}return e}runToBreakpoints(e){let t=this.getBreakpointPCs();t.length>0?$o(t):Co()}};ac.tracingEnabled=!1;var $n=ac,Wg=1024,cc=class{createDiv(e){var t=document.createElement("div");return t.setAttribute("class","editor"),e.appendChild(t),this.newEditor(t),t}newEditor(e){this.disasmview=new ae({parent:e,extensions:[Ch(),Zh(),Je.allowMultipleSelections.of(!0),_h(),Rh(),fu(),_$,uu,oc.field,Je.tabSize.of(8),Je.readOnly.of(!0)]})}refresh(e){let t=Hn||L.saveState(),r=t.c?t.c.PC:0,n=0,s=0,o=L.debugSymbols&&L.debugSymbols.addr2symbol||{},a=(f,O)=>{let p="",b=0;for(;b<O;){let y=f+b|0,P=L.disassemble(y,L.readAddress.bind(L)),X="",E="";for(let B=0;B<P.nbytes;B++)X+=pt(L.readAddress(y+B));for(;X.length<14;)X+=" ";let H=P.line;if(o&&P.i
Line truncated
|
|
|
|
|
`;p+=V,y==r&&(s=n),n++,b+=P.nbytes||1}return p};var l=r<0?r-Wg:Math.max(0,r-Wg);let c=a(l,r-l)+a(r,Wg);if(this.disasmview.dispatch({changes:{from:0,to:this.disasmview.state.doc.length,insert:c}}),e){let f=this.disasmview.state.doc.line(s+1);this.disasmview.dispatch({selection:{anchor:f.from,head:f.from},effects:ae.scrollIntoView(f.from,{y:"center"})})}}getCursorPC(){let e=this.disasmview.state.selection.main.head,t=this.disasmview.state.doc.lineAt(e).number;if(t>=0){let n=this.disasmview.state.doc.line(t).text.trim().split(/\s+/);if(n&&n.length>=1){let s=parseInt(n[0],16);if(console.log("getCursorPC",s),s>=0)return s}}return-1}},$u=class extends cc{constructor(e){super(),this.path=e}refreshListing(){var e=ke.getListingForFile(this.path);this.assemblyfile=e&&(e.assemblyfile||e.sourcefile)}refresh(e){if(this.refreshListing(),!!this.assemblyfile){var t=this.assemblyfile.text;if(this.disasmview.dispatch({changes:{from:0,to:this.disasmview.state.doc.length,insert:t}}),!!L.saveState){var r=Hn||L.saveState(),n=r.c?r.c.EPC||r.c.PC:0;if(n>=0&&this.assemblyfile){var s=this.assemblyfile.findLineForOffset(n,lc);if(s&&e){let o=this.disasmview.state.doc.line(s.line);this.disasmview.dispatch({selection:{anchor:o.from,head:o.from},effects:ae.scrollIntoView(o.from,{y:"center"})})}}}}}};function o1(i){let e=[i];try{var t=Va(ke.mainPath);t.length>0&&t!="local"&&e.push(t+"/"+i)}catch(s){}for(var r of e){var n=ke&&ke.getFile(r);if(typeof n=="string")return r}return null}var Vg=new Map;function QU(i){let e=ke.getToolForFilename(ke.mainPath),t=U0(e,ke.platform_id),r=E0(e,ke.platform_id);if(!t||!r.length)return Promise.resolve(null);let n=t+":"+i;return Vg.has(n)||Vg.set(n,(async()=>{var s=[...r.map(f=>f+"/"+i),i];for(var o of s){var a={preload_fs:t,readshared:o,updates:[],buildsteps:[]},l=await ke.queryWorker(a),c=l&&l.output;if(c instanceof Uint8Array&&c.length>0)return new TextDecoder().decode(c)}return null})()),Vg.get(n)}var Pa=class{constructor(e){this.fn=e}createDiv(e){var t=document.createElement("div");t.setAttribute("class","editor"),e.appendChild(t);let r=dm();return this.view=new ae({parent:t,extensions:[Ch(),Zh(),Je.allowMultipleSelections.of(!0),_h(),Rh(),fu(),hg({top:!0}),Hi.of(Og),r,Ou,Cg,Je.readOnly.of(!0)]}),this.refresh(!1),t}setVisible(e){e&&this.refresh(!1)}setHeaderText(e){this.view.dispatch({changes:{from:0,to:this.view.state.doc.length,insert:e}})}refresh(e){var t=this.fn;if(!t){var r=window.location.hash;if(!r||!r.startsWith("#headerview/"))return;t=this.fn=decodeURIComponent(r.substring(12))}this.loadIncludeFile(t)}async loadIncludeFile(e){this.requestedFn=e;var t=o1(e);if(t){this.currentPath=t,this.setHeaderText(ke.getFile(t));return}var r=await QU(e);if(this.requestedFn===e){if(r!=null){this.currentPath=e,this.setHeaderText(r);return}this.currentPath=e,this.setHeaderText("// "+e+` was not found.
|
|
|
|
|
`,t.className="cm-line",t}},K$=Ze.define(),pU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(K$)){if(t.value===null||!t.value)return Oe.none;let r=e.state.doc.lineAt(t.value.range.to);return Oe.set([Oe.widget({widget:new Mg(t.value.val),block:!0,side:1}).range(r.to)])}return i},provide:i=>ae.decorations.from(i)}),J$=Ze.define(),mU=Oe.mark({attributes:{class:"cm-error-span"}}),gU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(J$)){if(t.value===null)return Oe.none;let r=[];for(let n of t.value)try{let s=e.state.doc.line(n.line),o=s.from+n.start,a=s.from+n.end;o>=s.from&&a<=s.to&&o<a&&r.push(mU.range(o,a))}catch(s){}return Oe.set(r,!0)}return i},provide:i=>ae.decorations.from(i)}),e1=Ze.define(),bU=Oe.line({attributes:{class:"highlight-lines"}}),xU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(e1)){if(t.value===null)return Oe.none;let{start:r,end:n}=t.value,s=[];for(let o=r;o<=n;o++)try{let a=e.state.doc.line(o);s.push(bU.range(a.from))}catch(a){}return Oe.set(s)}return i!==Oe.none&&(e.docChanged||e.selection)?Oe.none:i},provide:i=>ae.decorations.from(i)}),t1={field:dU,widget:sc},oc={effect:G$,decoration:H$,field:OU},Sf={effect:K$,field:pU},yf={effect:J$,field:gU},Qf={effect:e1,field:xU},i1=Ze.define(),vU=Oe.line({attributes:{class:"cm-traced-line"}}),SU=at.define({create(){return Oe.none},update(i,e){i=i.map(e.changes);for(let t of e.effects)if(t.is(i1)){let r=[];for(let n of t.value)try{let s=e.state.doc.line(n);r.push(vU.range(s.from))}catch(s){}return Oe.set(r,!0)}return i},provide:i=>ae.decorations.from(i)}),wf={effect:i1,field:SU};var lc=64,r1=Ze.define(),n1=Ze.define(),jg=at.define({create(){return new Map},update(i,e){let t=i;for(let r of e.effects)if(r.is(n1))t=new Map;else if(r.is(r1)){t===i&&(t=new Map(i));for(let n of r.value)t.set(n.id,{from:n.from,to:n.to})}if(!e.changes.empty){let r=new Map;for(let[n,s]of t)r.set(n,{from:e.changes.mapPos(s.from,-1),to:e.changes.mapPos(s.to,1)});return r}return t}}),yU=200,Wg={default:{theme:Of},6502:{isAsm:!0},z80:{isAsm:!0},jsasm:{isAsm:!0},gas:{isAsm:!0},vasm:{isAsm:!0},inform6:{theme:ff},dialog:{theme:ff,lineWrap:!0},markdown:{lineWrap:!0},fastbasic:{noGutters:!0},basic:{noGutters:!0},ecs:{theme:Of}},s1={input:null};function o1(i){s1.input=i?e=>e.toUpperCase():null}var ac=class ac{constructor(e,t){this.updateTimer=null;this.dirtylisting=!0;this.refreshDelayMsec=300;this.probe=null;this.path=e,this.mode=t}createDiv(e){var t=document.createElement("div");t.setAttribute("class","editor"),e.appendChild(t);var r=ke.getFile(this.path),n=r&&this.mode=="verilog"&&/__asm\b([\s\S]+?)\b__endasm\b/.test(r);return this.newEditor(t,r,n),this.editor.dispatch({effects:U$(s1)}),ke.getToolForFilename(this.path).startsWith("remote:")&&(this.refreshDelayMsec=1e3),t}setVisible(e){e?(this.editor.focus(),ac.tracingEnabled&&this.startTracing()):this.stopTracing()}startTracing(){!this.probe&&L.startProbing&&(this.probe=L.startProbing(),this.probe.singleFrame=!1,this.probe.clear())}stopTracing(){this.probe&&(L.stopProbing(),this.probe=null),this.editor.dispatch({effects:wf.effect.of([])})}setTracingEnabled(e){ac.tracingEnabled=e,e?this.startTracing():this.stopTracing()}newEditor(e,t,r){var n=Wg[this.mode]||Wg.default,s=r||n.isAsm,o=!!n.lineWrap,a=n.theme||Wg.default.theme,l=n.useLineNumbers&&!Ml;ve.embed&&(l=!1,s=!1);let c=n.noGutters||Ml;var u;switch(this.mode){case"6502":u=v$();break;case"basic":u=S$();break;case"bataribasic":u=y$();break;case"fastbasic":u=w$();break;case"dialog":u=Q$();break;case"inform6":u=$$();break;case"markdown":u=r$();break;case"text/x-csrc":u=pm();break;case"text/x-wiz":u=k$();break;case"verilog":u=P$();break;case"z80":u=_$();break;default:console.warn("Unknown mode: "+this.mode);break}this.editor=new ae({parent:e,doc:t,extensions:[s?[]:Tr.of(" "),s?yp.of((O,p)=>{let b=O.state.doc.lineAt(p).number;if(b>=0){let y=O.state.doc.line(b);if(y.text.trim())return O.lineIndent(y.from)}return 0}):[],...s?[Hi.of(iy(()=>fu().tabsToSpaces))]:[],...oy(fu()),Hi.of(GS),l?Ah():[],vS(),Hi.of(QS),Lv(),Gx(),Je.allowMultipleSelections.of(!0),_h(),Ev(),qv(),Ch(),Zh(),Rh(),sv(),uf(),ug({top:!0}),Hi.of(dg),u||[],a,Zg,o?ae.lineWrapping:[],oc.field,c?[]:[bf.field,bf.gutter],s&&!c?[nc.field,nc.gutter,xf.field,xf.gutter]:[],vf.field,B$.gutter,ae.updateListener.of(O=>{for(let p of O.transactions.flatMap(b=>b.effects))if(p.is(vf.set)&&L.isRunning()&&this.runToBreakpoints(O.state),p.is($a.runToLine)){let b=p.value;if(this.sourcefile&&this.sourcefile.line2offset){let y=this.sourcefile.line2offset[b];y>=0&&$o([y])}}}),Ro.field,t1.field,yf.field,$a.field,$a.gutter,Qf.field,wf.field,jg,A$(O=>{window.location.hash="asseteditor/"+encodeURIComponent(this.path)+"/"+O}),ve.embed?[]:E$(()=>{var O=ke&&ke.getToolForFilename(this.path),p=ke&&ke.platform_id;return[...Ac(O,p),...Ec(O,p),...E0(O)]},(O,p)=>{if(!p){var b=a1(O);if(b){window.location.h
Line truncated
|
|
|
|
|
`).length-1;this.editor.dispatch({changes:{from:n,insert:e}}),this.highlightLines(r-1,r+s-2)}highlightLines(e,t){let r=this.editor.state.doc.line(e+1);this.editor.dispatch({effects:[Qf.effect.of({start:e+1,end:t+1}),ae.scrollIntoView(r.from,{y:"start",yMargin:100})]})}navigateToLine(e){if(e<1||e>this.editor.state.doc.lines)return;let t=this.editor.state.doc.line(e);this.editor.dispatch({selection:{anchor:t.from},effects:[Qf.effect.of({start:e,end:e}),ae.scrollIntoView(t.from,{y:"center"})]}),this.editor.focus()}getValue(){return this.editor.state.doc.toString()}getPath(){return this.path}markErrors(e){this.clearErrors(),e=e.slice(0,yU);let t=new Map,r=[];for(var n of e)if(!n.path||this.path.endsWith(n.path)){var s=this.editor.state.doc.lines,o=n.line;(isNaN(o)||o<1||o>s)&&(o=1),t.set(o,n.msg),n.start!=null&&n.end!=null&&n.end>n.start&&r.push({line:o,start:n.start,end:n.end})}this.editor.dispatch({effects:[Ro.set.of(t),yf.effect.of(r.length>0?r:null)]})}clearErrors(){this.dirtylisting=!0,this.editor.dispatch({effects:[Ro.set.of(new Map),Ro.showMessage.of(null),yf.effect.of(null)]})}getSourceFile(){return this.sourcefile}updateListing(){this.clearErrors();var e=this.sourcefile.lines||[];let t=new Map,r=new Map,n=new Map;for(var s of e)if(s.offset>=0&&t.set(s.line,pt(s.offset&65535,4)),s.insns){var o=s.insns.length>9?"...":s.insns;if(r.set(s.line,o),s.iscode){if(s.cycles)n.set(s.line,s.cycles+"");else if(L.getOpcodeMetadata){var a=parseInt(s.insns.split(" ")[0],16),l=L.getOpcodeMetadata(a,s.offset);if(l&&l.minCycles){var c=l.minCycles+"";n.set(s.line,c)}}}}this.editor.dispatch({effects:[bf.set.of(t),nc.set.of(r),xf.set.of(n)]})}setTimingResult(e){if(this.sourcefile!=null){var t=new Map;for(let o of Object.keys(this.sourcefile.line2offset)){let a=this.sourcefile.line2offset[o],l=e.pc2clockrange[a];var r=l&&l.minclocks,n=l&&l.maxclocks;if(r>=0&&n>=0){var s;n==r?s=r+"":s=r+"-"+n,n==e.MAX_CLOCKS&&(s+="+"),t.set(parseInt(o),s)}}this.editor.dispatch({effects:[nc.set.of(t)]})}}setCurrentLine(e,t){var r=n=>{this.editor.dispatch({effects:[$a.set.of(n.line),oc.effect.of(n.line),...t?[ae.scrollIntoView(this.editor.state.doc.line(n.line).from,{y:"center"})]:[]]})};if(this.clearCurrentLine(t),e){if(e.line<1||e.line>this.editor.state.doc.lines)return;if(r(e),t){let s=this.editor.state.doc.line(e.line).from+(e.start||0);this.editor.dispatch({selection:{anchor:s,head:s},effects:ae.scrollIntoView(s,{y:"center"})})}this.currentDebugLine=e}}clearCurrentLine(e){if(this.currentDebugLine){if(e){let t=this.editor.state.selection.main.head;this.editor.dispatch({selection:{anchor:t,head:t}})}this.currentDebugLine=null}this.editor.dispatch({effects:[$a.set.of(null),oc.effect.of(null)]})}getActiveLine(){if(this.sourcefile){var e=Hn&&Hn.c;if(!e&&L.getCPUState&&!L.isRunning()&&(e=L.getCPUState()),e){var t=e&&(e.EPC||e.PC),r=this.sourcefile.findLineForOffset(t,lc);return r}}}refreshDebugState(e){var t=this.getActiveLine();!e&&(t===this.currentDebugLine||!t&&!this.currentDebugLine)||this.setCurrentLine(t,e)}refreshListing(){var e=ke.getListingForFile(this.path);e&&e.sourcefile&&e.sourcefile!==this.sourcefile&&(this.sourcefile=e.sourcefile,this.dirtylisting=!0),!(!this.sourcefile||!this.dirtylisting)&&(this.updateListing(),this.dirtylisting=!1)}refresh(e){this.refreshListing(),this.refreshDebugState(e)}tick(){this.refreshDebugState(!1),this.updateTracedLines()}updateTracedLines(){let e=this.probe;if(!e||!e.idx||!this.sourcefile)return;let t=new Set;for(let r=0;r<e.idx;r++){let n=e.buf[r];if((n&4278190080)===16777216){let s=this.sourcefile.findLineForOffset(n&65535,lc);s&&t.add(s.line)}}e.clear(),this.editor.dispatch({effects:wf.effect.of(Array.from(t))})}getLine(e){return this.editor.state.doc.line(e).text}getCurrentLine(){let e=this.editor.state.selection.main.head;return this.editor.state.doc.lineAt(e).number}getCursorPC(){for(var e=this.getCurrentLine();this.sourcefile&&e>=0;){var t=this.sourcefile.line2offset[e];if(t>=0)return t;e--}return-1}undoStep(){su(this.editor)}redoStep(){Tl(this.editor)}getBreakpointPCs(){if(this.sourcefile==null)return[];let e=[],r=this.editor.state.field(vf.field).iter();for(;r.value;){let n=this.editor.state.doc.lineAt(r.from).number,s=this.sourcefile.line2offset[n];s>=0&&e.push(s),r.next()}return e}runToBreakpoints(e){let t=this.getBreakpointPCs();t.length>0?$o(t):Co()}};ac.tracingEnabled=!1;var $n=ac,Vg=1024,cc=class{createDiv(e){var t=document.createElement("div");return t.setAttribute("class","editor"),e.appendChild(t),this.newEditor(t),t}newEditor(e){this.disasmview=new ae({parent:e,extensions:[Ch(),Zh(),Je.allowMultipleSelections.of(!0),_h(),Rh(),uf(),R$,ff,oc.field,Je.tabSize.of(8),Je.readOnly.of(!0)]})}refresh(e){let t=Hn||L.saveState(),r=t.c?t.c.PC:0,n=0,s=0,o=L.debugSymbols&&L.debugSymbols.addr2symbol||{},a=(u,O)=>{let p="",b=0;for(;b<O;){let y=u+b|0,P=L.disassemble(y,L.readAddress.bind(L)),X="",E="";for(let B=0;B<P.nbytes;B++)X+=pt(L.readAddress(y+B));for(;X.length<14;)X+=" ";let H=P.line;if(o&&P.i
Line truncated
|
|
|
|
|
`;p+=V,y==r&&(s=n),n++,b+=P.nbytes||1}return p};var l=r<0?r-Vg:Math.max(0,r-Vg);let c=a(l,r-l)+a(r,Vg);if(this.disasmview.dispatch({changes:{from:0,to:this.disasmview.state.doc.length,insert:c}}),e){let u=this.disasmview.state.doc.line(s+1);this.disasmview.dispatch({selection:{anchor:u.from,head:u.from},effects:ae.scrollIntoView(u.from,{y:"center"})})}}getCursorPC(){let e=this.disasmview.state.selection.main.head,t=this.disasmview.state.doc.lineAt(e).number;if(t>=0){let n=this.disasmview.state.doc.line(t).text.trim().split(/\s+/);if(n&&n.length>=1){let s=parseInt(n[0],16);if(console.log("getCursorPC",s),s>=0)return s}}return-1}},$f=class extends cc{constructor(e){super(),this.path=e}refreshListing(){var e=ke.getListingForFile(this.path);this.assemblyfile=e&&(e.assemblyfile||e.sourcefile)}refresh(e){if(this.refreshListing(),!!this.assemblyfile){var t=this.assemblyfile.text;if(this.disasmview.dispatch({changes:{from:0,to:this.disasmview.state.doc.length,insert:t}}),!!L.saveState){var r=Hn||L.saveState(),n=r.c?r.c.EPC||r.c.PC:0;if(n>=0&&this.assemblyfile){var s=this.assemblyfile.findLineForOffset(n,lc);if(s&&e){let o=this.disasmview.state.doc.line(s.line);this.disasmview.dispatch({selection:{anchor:o.from,head:o.from},effects:ae.scrollIntoView(o.from,{y:"center"})})}}}}}};function a1(i){let e=[i];try{var t=Va(ke.mainPath);t.length>0&&t!="local"&&e.push(t+"/"+i)}catch(s){}for(var r of e){var n=ke&&ke.getFile(r);if(typeof n=="string")return r}return null}var qg=new Map;function QU(i){let e=ke.getToolForFilename(ke.mainPath),t=z0(e,ke.platform_id),r=U0(e,ke.platform_id);if(!t||!r.length)return Promise.resolve(null);let n=t+":"+i;return qg.has(n)||qg.set(n,(async()=>{var s=[...r.map(u=>u+"/"+i),i];for(var o of s){var a={preload_fs:t,readshared:o,updates:[],buildsteps:[]},l=await ke.queryWorker(a),c=l&&l.output;if(c instanceof Uint8Array&&c.length>0)return new TextDecoder().decode(c)}return null})()),qg.get(n)}var Pa=class{constructor(e){this.fn=e}createDiv(e){var t=document.createElement("div");t.setAttribute("class","editor"),e.appendChild(t);let r=pm();return this.view=new ae({parent:t,extensions:[Ch(),Zh(),Je.allowMultipleSelections.of(!0),_h(),Rh(),uf(),ug({top:!0}),Hi.of(dg),r,Of,Zg,Je.readOnly.of(!0)]}),this.refresh(!1),t}setVisible(e){e&&this.refresh(!1)}setHeaderText(e){this.view.dispatch({changes:{from:0,to:this.view.state.doc.length,insert:e}})}refresh(e){var t=this.fn;if(!t){var r=window.location.hash;if(!r||!r.startsWith("#headerview/"))return;t=this.fn=decodeURIComponent(r.substring(12))}this.loadIncludeFile(t)}async loadIncludeFile(e){this.requestedFn=e;var t=a1(e);if(t){this.currentPath=t,this.setHeaderText(ke.getFile(t));return}var r=await QU(e);if(this.requestedFn===e){if(r!=null){this.currentPath=e,this.setHeaderText(r);return}this.currentPath=e,this.setHeaderText("// "+e+` was not found.
|
|
|
|
|
// Project include files are loaded during a build -- try building first.
|
|
|
|
|
// Toolchain headers are only available when the tool has a bundled filesystem.`)}}};var hc=256,a1=100,l1=!1,Pu=class i{constructor(e,t){this.expanded=!1;this.parent=e,this.name=t,this.children=new Map,this.level=e?e.level+1:-1,this.view=e?e.view:null}getDiv(){return this._div==null&&(this._div=document.createElement("div"),this._div.classList.add("vertical-scroll"),this._div.classList.add("tree-content"),this._header=document.createElement("div"),this._header.classList.add("tree-header"),this._header.classList.add("tree-level-"+this.level),this._header.append(this.name),this._inline=document.createElement("span"),this._inline.classList.add("tree-value"),this._header.append(this._inline),this._div.append(this._header),this.parent._content.append(this._div),this._header.onclick=e=>{this.toggleExpanded()}),this.expanded&&this._content==null?(this._content=document.createElement("div"),this._div.append(this._content)):!this.expanded&&this._content!=null&&(this._content.remove(),this._content=null,this.children.clear()),this._div}toggleExpanded(){this.expanded=!this.expanded,this.view.tick()}remove(){this._div.remove(),this._div=null}update(e){this.getDiv();var t="";if(e&&e.$$&&typeof e.$$=="function"&&this._content!=null&&(e=e.$$()),e==null)t=e+"";else if(typeof e=="number")e!=(e|0)?t=e.toString():t=e+" ($"+pt(e)+")";else if(typeof e=="boolean")t=e.toString();else if(typeof e=="string")e.length<a1?t=e:t=e.substring(0,a1)+"...";else if(e.buffer&&e.length<=hc)t=P0(e,0,e.length);else if(typeof e=="object"||typeof e=="function")if(this._content!=null){if(e.slice&&e.length>hc){let l={},c=e;for(var r=hc;e.length/r>hc;)r*=2;for(let f=0;f<c.length;f+=r)l["$"+pt(f)]={$$:()=>c.slice(f,f+r)};e=l}if(e instanceof Map){let l={};for(let[c,f]of e.entries())l[c]=f;e=l}let o=e instanceof Array?Array.from(e.keys()):Object.getOwnPropertyNames(e);if(o.length>hc){let l={},c=e;for(var r=100;o.length/r>100;)r*=2;for(let O=0;O<o.length;O+=r){for(var n={},s=O;s<O+r;s++)n[o[s]]=c[o[s]];l["["+O+"...]"]=n}e=l,o=Object.getOwnPropertyNames(e)}let a=new Set(this.children.keys());o.forEach(l=>{var c=!l1&&typeof l=="string"&&l.startsWith("$$");if(!c){let f=this.children.get(l);f==null&&(f=new i(this,l),this.children.set(l,f)),f.update(e[l])}a.delete(l)}),a.forEach(l=>{this.children.get(l).remove(),this.children.delete(l)}),this._header.classList.add("tree-expanded"),this._header.classList.remove("tree-collapsed")}else this._header.classList.add("tree-collapsed"),this._header.classList.remove("tree-expanded");else t=typeof e;this._inline.innerText!=t&&(this._inline.innerText=t)}};function c1(i,e){var t=new Pu(null,null);t.view=e,t._content=i;var r=new Pu(t,"/");return r.expanded=!0,r.getDiv(),r._div.style.padding="0px",r}var Dg=class{createDiv(e){return this.root=c1(e,this),this.root.getDiv()}refresh(){this.tick()}tick(){this.root.update(this.getRootObject())}};var ku=class extends Dg{getRootObject(){return L.getDebugTree()}},Tu=class extends Ts{constructor(){super(...arguments);this.cumulativeData=!0}createDiv(t){return this.clear(),this.treeroot=c1(t,this),this.treeroot.getDiv()}refresh(){this.tick()}tick(){this.treeroot.update(this.getRootObject()),this.probe&&this.probe.clear()}clear(){this.graph=null,this.reset()}reset(){this.stack=[],this.lastsp=-1,this.lastpc=0,this.jsr=!1,this.rts=!1}newNode(t,r){return{$$SP:r,$$PC:t,count:0,startLine:null,endLine:null,calls:{}}}newRoot(t,r){this.stack.length==0?(this.graph=this.newNode(null,r),this.stack.unshift(this.graph)):r>this.stack[0].$$SP&&(this.graph=this.newNode(null,r),this.graph.calls[this.addr2str(t)]=this.stack[0],this.stack.unshift(this.graph))}getRootObject(){return this.redraw((t,r,n,s,o,a)=>{switch(t){case 184549376:this.newRoot(this.lastpc,this.lastsp);case 167772160:if(this.stack.length){let c=this.stack[this.stack.length-1];var l=this.lastsp-r;(l==2||l==3)&&r<c.$$SP&&(this.jsr=!0),(l==-2||l==-3)&&this.stack.length>1&&r>c.$$SP&&(this.rts=!0)}this.lastsp=r;break;case 16777216:if(Math.abs(r-this.lastpc)>=4){if(this.jsr&&this.stack.length){let c=this.stack[this.stack.length-1],f=this.addr2str(r),O=c.calls[f];O==null?O=c.calls[f]=this.newNode(r,this.lastsp):O.$$PC==null&&(O.$$PC=r),this.stack.push(O),O.count++,O.startLine=s}this.jsr=!1,this.rts&&this.stack.length&&(this.stack.pop().endLine=s),this.rts=!1}this.lastpc=r;break}}),this.graph&&(this.graph.$$Stack=this.stack),l1?this.graph:this.graph&&this.graph.calls}};var Ig=f1(),_u=class{constructor(e,t){this.id2window={};this.id2createfn={};this.id2showfn={};this.id2div={};this.containerdiv=e,this.project=t,this.undoStack=[],this.redoStack=[]}isWindow(e){return this.id2createfn[e]!=null}setCreateFunc(e,t){this.id2createfn[e]=t}setShowFunc(e,t){this.id2showfn[e]=t}create(e){var t=this.id2window[e];t||(console.log("creating window",e),t=this.id2window[e]=this.id2createfn[e](e));var r=this.id2div[e];return r||(r=this.id2div[e]=t.createDiv(this.containerdiv),Ig(r).hide()),t}createOrShow(e,t){var r=this.create(e),n=this.id2div[e];if(this.activ
Line truncated
|
|
|
|
|
`,await Z1(i),ve.newfile?!r&&!t?Ke('No build tool for "'+i+'" on this platform; project will not build.'):r?L1(!0,!0):wi("No skeleton file for "+t+" on this platform; using blank file."):wi('Could not find file "'+i+'"<br><br>Creating new '+(r?t:"blank")+" file."),delete ve.newfile,Lu()}}function l0(i){if(i=="/")ve={repo:"/"};else if(i.indexOf("://")>=0){var e=Cl(i);e&&(ve={repo:e.repopath})}else ve.platform=Ue,ve.file=i;So()}async function u5(i){var e=cO(L.getToolForFilename(i));try{return await $.get("presets/"+zi(Ue)+"/skeleton."+e,"text")}catch(t){return console.log(t+""),null}}function c0(i){return i.indexOf(" ")>=0?(Ke("No spaces in filenames, please."),!1):!0}async function O5(i){var e=zi(Ue),t={},r=[];for(var n of i){var s=L.getToolForFilename("test"+n);t[s]||(t[s]=[],r.push(s)),t[s].push(n)}var o=r.map(f=>$.ajax({url:"presets/"+e+"/skeleton."+cO(f),type:"HEAD"}).then(()=>f,()=>null)),a=await Promise.all(o),l=[];for(var c of a)c!=null&&l.push({tool:c,extensions:t[c]});return l}async function d5(i){var e=await O5(L.getDefaultExtensions()),t,r;return e.length===0?(t=L.getDefaultExtensions(),r=t.join(" ")):(t=e.reduce((n,s)=>n.concat(s.extensions),[]),r=e.map(n=>n.extensions.join(" ")).join("<br>")),bootbox.prompt({title:"Enter the name of your new main source file.<br><br><span class='dialog-help'>"+r+"</span>",placeholder:"newfile"+t[0],callback:n=>{if(n&&n.trim().length>0){if(!c0(n))return;n.indexOf(".")<0&&(n+=t[0]);var s=n;ve.newfile="1",l0(s)}}}),!0}function p5(i){let e=$('<input type="file" multiple accept="*" style="display:none">'),t=e[0];e.change(r=>{m5(t.files)}),e.click()}function m5(i){console.log(i);var e=0;function t(){var r=i[e++];if(!r)console.log("Done uploading",e),e>2?(wi("Files uploaded."),setTimeout(bc,1e3)):(ve.file=i[0].name,bootbox.confirm({message:"Open '"+Eo.sanitize(ve.file)+"' as main project file?",buttons:{confirm:{label:"Open As New Project"},cancel:{label:"Include/Link With Project Later"}},callback:o=>{o?So():setTimeout(bc,1e3)}}));else{var n=r.name,s=new FileReader;s.onload=function(o){var a=o.target.result,l=new Uint8Array(a);Ks(n,l)||(l=kc(l).replace(`\r
|
|
|
|
|
// Toolchain headers are only available when the tool has a bundled filesystem.`)}}};var hc=256,l1=100,c1=!1,Pf=class i{constructor(e,t){this.expanded=!1;this.parent=e,this.name=t,this.children=new Map,this.level=e?e.level+1:-1,this.view=e?e.view:null}getDiv(){return this._div==null&&(this._div=document.createElement("div"),this._div.classList.add("vertical-scroll"),this._div.classList.add("tree-content"),this._header=document.createElement("div"),this._header.classList.add("tree-header"),this._header.classList.add("tree-level-"+this.level),this._header.append(this.name),this._inline=document.createElement("span"),this._inline.classList.add("tree-value"),this._header.append(this._inline),this._div.append(this._header),this.parent._content.append(this._div),this._header.onclick=e=>{this.toggleExpanded()}),this.expanded&&this._content==null?(this._content=document.createElement("div"),this._div.append(this._content)):!this.expanded&&this._content!=null&&(this._content.remove(),this._content=null,this.children.clear()),this._div}toggleExpanded(){this.expanded=!this.expanded,this.view.tick()}remove(){this._div.remove(),this._div=null}update(e){this.getDiv();var t="";if(e&&e.$$&&typeof e.$$=="function"&&this._content!=null&&(e=e.$$()),e==null)t=e+"";else if(typeof e=="number")e!=(e|0)?t=e.toString():t=e+" ($"+pt(e)+")";else if(typeof e=="boolean")t=e.toString();else if(typeof e=="string")e.length<l1?t=e:t=e.substring(0,l1)+"...";else if(e.buffer&&e.length<=hc)t=k0(e,0,e.length);else if(typeof e=="object"||typeof e=="function")if(this._content!=null){if(e.slice&&e.length>hc){let l={},c=e;for(var r=hc;e.length/r>hc;)r*=2;for(let u=0;u<c.length;u+=r)l["$"+pt(u)]={$$:()=>c.slice(u,u+r)};e=l}if(e instanceof Map){let l={};for(let[c,u]of e.entries())l[c]=u;e=l}let o=e instanceof Array?Array.from(e.keys()):Object.getOwnPropertyNames(e);if(o.length>hc){let l={},c=e;for(var r=100;o.length/r>100;)r*=2;for(let O=0;O<o.length;O+=r){for(var n={},s=O;s<O+r;s++)n[o[s]]=c[o[s]];l["["+O+"...]"]=n}e=l,o=Object.getOwnPropertyNames(e)}let a=new Set(this.children.keys());o.forEach(l=>{var c=!c1&&typeof l=="string"&&l.startsWith("$$");if(!c){let u=this.children.get(l);u==null&&(u=new i(this,l),this.children.set(l,u)),u.update(e[l])}a.delete(l)}),a.forEach(l=>{this.children.get(l).remove(),this.children.delete(l)}),this._header.classList.add("tree-expanded"),this._header.classList.remove("tree-collapsed")}else this._header.classList.add("tree-collapsed"),this._header.classList.remove("tree-expanded");else t=typeof e;this._inline.innerText!=t&&(this._inline.innerText=t)}};function h1(i,e){var t=new Pf(null,null);t.view=e,t._content=i;var r=new Pf(t,"/");return r.expanded=!0,r.getDiv(),r._div.style.padding="0px",r}var Ig=class{createDiv(e){return this.root=h1(e,this),this.root.getDiv()}refresh(){this.tick()}tick(){this.root.update(this.getRootObject())}};var kf=class extends Ig{getRootObject(){return L.getDebugTree()}},Tf=class extends Ts{constructor(){super(...arguments);this.cumulativeData=!0}createDiv(t){return this.clear(),this.treeroot=h1(t,this),this.treeroot.getDiv()}refresh(){this.tick()}tick(){this.treeroot.update(this.getRootObject()),this.probe&&this.probe.clear()}clear(){this.graph=null,this.reset()}reset(){this.stack=[],this.lastsp=-1,this.lastpc=0,this.jsr=!1,this.rts=!1}newNode(t,r){return{$$SP:r,$$PC:t,count:0,startLine:null,endLine:null,calls:{}}}newRoot(t,r){this.stack.length==0?(this.graph=this.newNode(null,r),this.stack.unshift(this.graph)):r>this.stack[0].$$SP&&(this.graph=this.newNode(null,r),this.graph.calls[this.addr2str(t)]=this.stack[0],this.stack.unshift(this.graph))}getRootObject(){return this.redraw((t,r,n,s,o,a)=>{switch(t){case 184549376:this.newRoot(this.lastpc,this.lastsp);case 167772160:if(this.stack.length){let c=this.stack[this.stack.length-1];var l=this.lastsp-r;(l==2||l==3)&&r<c.$$SP&&(this.jsr=!0),(l==-2||l==-3)&&this.stack.length>1&&r>c.$$SP&&(this.rts=!0)}this.lastsp=r;break;case 16777216:if(Math.abs(r-this.lastpc)>=4){if(this.jsr&&this.stack.length){let c=this.stack[this.stack.length-1],u=this.addr2str(r),O=c.calls[u];O==null?O=c.calls[u]=this.newNode(r,this.lastsp):O.$$PC==null&&(O.$$PC=r),this.stack.push(O),O.count++,O.startLine=s}this.jsr=!1,this.rts&&this.stack.length&&(this.stack.pop().endLine=s),this.rts=!1}this.lastpc=r;break}}),this.graph&&(this.graph.$$Stack=this.stack),c1?this.graph:this.graph&&this.graph.calls}};var Ng=f1(),_f=class{constructor(e,t){this.id2window={};this.id2createfn={};this.id2showfn={};this.id2div={};this.containerdiv=e,this.project=t,this.undoStack=[],this.redoStack=[]}isWindow(e){return this.id2createfn[e]!=null}setCreateFunc(e,t){this.id2createfn[e]=t}setShowFunc(e,t){this.id2showfn[e]=t}create(e){var t=this.id2window[e];t||(console.log("creating window",e),t=this.id2window[e]=this.id2createfn[e](e));var r=this.id2div[e];return r||(r=this.id2div[e]=t.createDiv(this.containerdiv),Ng(r).hide()),t}createOrShow(e,t){var r=this.create(e),n=this.id2div[e];if(this.activ
Line truncated
|
|
|
|
|
`,await A1(i),ve.newfile?!r&&!t?Ke('No build tool for "'+i+'" on this platform; project will not build.'):r?M1(!0,!0):wi("No skeleton file for "+t+" on this platform; using blank file."):wi('Could not find file "'+i+'"<br><br>Creating new '+(r?t:"blank")+" file."),delete ve.newfile,Lf()}}function c0(i){if(i=="/")ve={repo:"/"};else if(i.indexOf("://")>=0){var e=Cl(i);e&&(ve={repo:e.repopath})}else ve.platform=Ue,ve.file=i;So()}async function f5(i){var e=hO(L.getToolForFilename(i));try{return await $.get("presets/"+zi(Ue)+"/skeleton."+e,"text")}catch(t){return console.log(t+""),null}}function h0(i){return i.indexOf(" ")>=0?(Ke("No spaces in filenames, please."),!1):!0}async function O5(i){var e=zi(Ue),t={},r=[];for(var n of i){var s=L.getToolForFilename("test"+n);t[s]||(t[s]=[],r.push(s)),t[s].push(n)}var o=r.map(u=>$.ajax({url:"presets/"+e+"/skeleton."+hO(u),type:"HEAD"}).then(()=>u,()=>null)),a=await Promise.all(o),l=[];for(var c of a)c!=null&&l.push({tool:c,extensions:t[c]});return l}async function d5(i){var e=await O5(L.getDefaultExtensions()),t,r;return e.length===0?(t=L.getDefaultExtensions(),r=t.join(" ")):(t=e.reduce((n,s)=>n.concat(s.extensions),[]),r=e.map(n=>n.extensions.join(" ")).join("<br>")),bootbox.prompt({title:"Enter the name of your new main source file.<br><br><span class='dialog-help'>"+r+"</span>",placeholder:"newfile"+t[0],callback:n=>{if(n&&n.trim().length>0){if(!h0(n))return;n.indexOf(".")<0&&(n+=t[0]);var s=n;ve.newfile="1",c0(s)}}}),!0}function p5(i){let e=$('<input type="file" multiple accept="*" style="display:none">'),t=e[0];e.change(r=>{m5(t.files)}),e.click()}function m5(i){console.log(i);var e=0;function t(){var r=i[e++];if(!r)console.log("Done uploading",e),e>2?(wi("Files uploaded."),setTimeout(bc,1e3)):(ve.file=i[0].name,bootbox.confirm({message:"Open '"+Eo.sanitize(ve.file)+"' as main project file?",buttons:{confirm:{label:"Open As New Project"},cancel:{label:"Include/Link With Project Later"}},callback:o=>{o?So():setTimeout(bc,1e3)}}));else{var n=r.name,s=new FileReader;s.onload=function(o){var a=o.target.result,l=new Uint8Array(a);Ks(n,l)||(l=kc(l).replace(`\r
|
|
|
|
|
`,`
|
|
|
|
|
`)),we.updateFile(n,l),console.log("Uploaded "+n+" "+l.length+" bytes"),t()},s.readAsArrayBuffer(r)}}i&&t()}async function g5(i){var e=window.showDirectoryPicker;e||Ke("This browser can't open local files on your computer, yet. Try Chrome.");var t=await e(),r=t.name,n="__localfs__"+r,s={handle:t},o=o0.createInstance({name:n,version:2});await o.setItem(n,s),ve={localfs:r},So(!0)}async function b5(i){return new Promise((e,t)=>{bootbox.prompt(Eo.sanitize(i),r=>{e(r)})})}async function x5(i){let e={mode:"readwrite"};var t="__localfs__"+i,r=o0.createInstance({name:t,version:2}),n=await r.getItem(t),s=n.handle;console.log(n,s);var o=await s.queryPermission(e);if(console.log(o),o!=="granted"&&(await b5("Request permissions to access filesystem?"),o=await s.requestPermission(e)),o!=="granted"){Ke("Could not get permission to access filesystem.");return}let a={};return{getFileData:async l=>{console.log("getFileData",l);let f=await(await s.getFileHandle(l,{create:!1})).getFile(),O=await(Ks(l)?f.arrayBuffer():f.text());return O instanceof ArrayBuffer?new Uint8Array(O):O},setFileData:async(l,c)=>{a[l]=Date.now();let O=await(await s.getFileHandle(l,{create:!0})).createWritable();await O.write(c),await O.close()},onFileSystemUpdate:l=>{if(typeof window.FileSystemObserver=="undefined")return;new window.FileSystemObserver((f,O)=>{for(let p of f)if(p.changedHandle){let b=p.changedHandle.name;if(Date.now()-(a[b]||0)<2e3)continue;l(b)}}).observe(s,{recursive:!0})}}}function ii(){return pi(ke.mainPath)}function Py(){return pi(we.getActiveID())}function v5(i){var e=we.getActive(),t=we.getActiveID(),r=e&&e.setData&&!e.setText;if(e&&(e.setText||e.setData)){var n="presets/"+zi(Ue)+"/"+t;qa(n,s=>{if(s==null){Nt?Ke("Can only revert built-in examples. If you want to revert all files, You can pull from the repository."):Ke("Can only revert built-in examples.");return}bootbox.confirm("Reset '"+Eo.sanitize(t)+"' to default?",o=>{o&&(r?(e.setData(s),ke.updateFile(t,s)):e.setText(s))})},r?"arraybuffer":"text")}else Ke("Cannot revert the active window. Please choose a text file.")}function S5(i){var e=we.getActive();if(e&&e.getPath){var t=we.getActiveID();bootbox.confirm("Delete '"+Eo.sanitize(t)+"'?",r=>{r&&Ar.removeItem(t).then(()=>{ve.file==t?(Jn.unsetLastPreset(),So()):(bc(),wi("Deleted "+t))})})}else Ke("Cannot delete the active window.")}function y5(i){var e=we.getActive();if(e&&e.getPath&&ke.getFile(e.getPath())){var t=we.getActiveID();bootbox.prompt({title:"Rename '"+Eo.sanitize(t)+"' to?",value:t,callback:r=>{var n=ke.getFile(e.getPath());if(r&&r!=t&&n){if(!c0(r))return;Ar.removeItem(t).then(()=>Ar.setItem(r,n)).then(()=>{bc(),alert("Renamed "+t+" to "+r),t==ke.mainPath&&l0(r)})}}})}else Ke("Cannot rename the active window.")}function Q5(i){let e={},t,r=L.getPresets?L.getPresets():[];for(var n=0;n<r.length;n++){var s=r[n],o=s.chapter?s.chapter+". "+s.name:s.name,a=s.id==ke.mainPath;s.category?t=$("<optgroup />").attr("label","Examples: "+s.category).appendTo(i):t||(t=$("<optgroup />").attr("label","Examples").appendTo(i)),t.append($("<option />").val(s.id).text(o).attr("selected",a?"selected":null)),a&&(Cu=s),e[s.id]=o}return e}function w5(i){if(Ni&&!Ca){var e=0,t=bo();if(t){let n=$("<optgroup />").attr("label","Repositories").appendTo(i);for(let s in t){var r=t[s];r.platform_id&&zi(r.platform_id)==zi(Ue)&&n.append($("<option />").val(r.url).text(r.url.substring(r.url.indexOf("/"))))}}}}async function A1(i,e,t,r){let n=await Ar.keys();n||(n=[]);let s;for(var o=0;o<n.length;o++){let a=n[o];if(a.startsWith(t)&&!r[a]){s||(s=$("<optgroup />").attr("label",e).appendTo(i));let l=a.substring(t.length);s.append($("<option />").val(a).text(l).attr("selected",a==ke.mainPath?"selected":null))}}}function E1(i){i.css("visibility","visible");var e=ke.mainPath;i.val()!=e&&i.append($("<option />").val(e).text(e).attr("selected","selected"))}async function bc(){var i=$("#preset_select").empty();if(Nt)i.append($("<option />").val("/").text("Leave Repository")),$("#repo_name").text(pi(Nt)+"/").show(),await A1(i,Nt,"",{}),E1(i);else{w5(i);var e=Q5(i);await A1(i,"Local Files","",e),E1(i)}i.off("change").change(function(t){l0($(this).val().toString())})}function $5(i){var e=$("<p/>");if(i.path!=null){var t=i.line?i.label?`(${i.path} @ ${i.label})`:`(${i.path}:${i.line})`:`(${i.path})`,r=$("<a/>").text(t),n=i.path;n==ii()&&(n=ke.mainPath),we.isWindow(n)&&r.click(s=>{var o=we.createOrShow(n);o instanceof $n&&o.navigateToLine(i.line)}),e.append(r),e.append(" ")}return e.append($("<span/>").text(i.msg)),e}function M1(){$("#error_alert").hide(),a0=!1}function h0(i,e){var t=$("#error_alert_msg").empty();for(var r of i.slice(0,10))t.append($5(r));$("#error_alert").show(),a0=e}function j1(i,e){if(e!=null){var t={msg:e,line:0};i instanceof nO&&i.$loc&&(t=Object.create(i.$loc),t.msg=e,console.log(t)),h0([t],!0)}}async function P5(i){if("uppercaseOnly"in i&&s1(i.uppercaseOnly),"errors"in i&&i.errors.length>0)mc.addClass("has-errors"),we.setErrors(i.errors),
Line truncated
|
|
|
|
|
`)),we.updateFile(n,l),console.log("Uploaded "+n+" "+l.length+" bytes"),t()},s.readAsArrayBuffer(r)}}i&&t()}async function g5(i){var e=window.showDirectoryPicker;e||Ke("This browser can't open local files on your computer, yet. Try Chrome.");var t=await e(),r=t.name,n="__localfs__"+r,s={handle:t},o=a0.createInstance({name:n,version:2});await o.setItem(n,s),ve={localfs:r},So(!0)}async function b5(i){return new Promise((e,t)=>{bootbox.prompt(Eo.sanitize(i),r=>{e(r)})})}async function x5(i){let e={mode:"readwrite"};var t="__localfs__"+i,r=a0.createInstance({name:t,version:2}),n=await r.getItem(t),s=n.handle;console.log(n,s);var o=await s.queryPermission(e);if(console.log(o),o!=="granted"&&(await b5("Request permissions to access filesystem?"),o=await s.requestPermission(e)),o!=="granted"){Ke("Could not get permission to access filesystem.");return}let a={};return{getFileData:async l=>{console.log("getFileData",l);let u=await(await s.getFileHandle(l,{create:!1})).getFile(),O=await(Ks(l)?u.arrayBuffer():u.text());return O instanceof ArrayBuffer?new Uint8Array(O):O},setFileData:async(l,c)=>{a[l]=Date.now();let O=await(await s.getFileHandle(l,{create:!0})).createWritable();await O.write(c),await O.close()},onFileSystemUpdate:l=>{if(typeof window.FileSystemObserver=="undefined")return;new window.FileSystemObserver((u,O)=>{for(let p of u)if(p.changedHandle){let b=p.changedHandle.name;if(Date.now()-(a[b]||0)<2e3)continue;l(b)}}).observe(s,{recursive:!0})}}}function ii(){return pi(ke.mainPath)}function ky(){return pi(we.getActiveID())}function v5(i){var e=we.getActive(),t=we.getActiveID(),r=e&&e.setData&&!e.setText;if(e&&(e.setText||e.setData)){var n="presets/"+zi(Ue)+"/"+t;qa(n,s=>{if(s==null){Nt?Ke("Can only revert built-in examples. If you want to revert all files, You can pull from the repository."):Ke("Can only revert built-in examples.");return}bootbox.confirm("Reset '"+Eo.sanitize(t)+"' to default?",o=>{o&&(r?(e.setData(s),ke.updateFile(t,s)):e.setText(s))})},r?"arraybuffer":"text")}else Ke("Cannot revert the active window. Please choose a text file.")}function S5(i){var e=we.getActive();if(e&&e.getPath){var t=we.getActiveID();bootbox.confirm("Delete '"+Eo.sanitize(t)+"'?",r=>{r&&Ar.removeItem(t).then(()=>{ve.file==t?(Jn.unsetLastPreset(),So()):(bc(),wi("Deleted "+t))})})}else Ke("Cannot delete the active window.")}function y5(i){var e=we.getActive();if(e&&e.getPath&&ke.getFile(e.getPath())){var t=we.getActiveID();bootbox.prompt({title:"Rename '"+Eo.sanitize(t)+"' to?",value:t,callback:r=>{var n=ke.getFile(e.getPath());if(r&&r!=t&&n){if(!h0(r))return;Ar.removeItem(t).then(()=>Ar.setItem(r,n)).then(()=>{bc(),alert("Renamed "+t+" to "+r),t==ke.mainPath&&c0(r)})}}})}else Ke("Cannot rename the active window.")}function Q5(i){let e={},t,r=L.getPresets?L.getPresets():[];for(var n=0;n<r.length;n++){var s=r[n],o=s.chapter?s.chapter+". "+s.name:s.name,a=s.id==ke.mainPath;s.category?t=$("<optgroup />").attr("label","Examples: "+s.category).appendTo(i):t||(t=$("<optgroup />").attr("label","Examples").appendTo(i)),t.append($("<option />").val(s.id).text(o).attr("selected",a?"selected":null)),a&&(Cf=s),e[s.id]=o}return e}function w5(i){if(Ni&&!Ca){var e=0,t=bo();if(t){let n=$("<optgroup />").attr("label","Repositories").appendTo(i);for(let s in t){var r=t[s];r.platform_id&&zi(r.platform_id)==zi(Ue)&&n.append($("<option />").val(r.url).text(r.url.substring(r.url.indexOf("/"))))}}}}async function E1(i,e,t,r){let n=await Ar.keys();n||(n=[]);let s;for(var o=0;o<n.length;o++){let a=n[o];if(a.startsWith(t)&&!r[a]){s||(s=$("<optgroup />").attr("label",e).appendTo(i));let l=a.substring(t.length);s.append($("<option />").val(a).text(l).attr("selected",a==ke.mainPath?"selected":null))}}}function U1(i){i.css("visibility","visible");var e=ke.mainPath;i.val()!=e&&i.append($("<option />").val(e).text(e).attr("selected","selected"))}async function bc(){var i=$("#preset_select").empty();if(Nt)i.append($("<option />").val("/").text("Leave Repository")),$("#repo_name").text(pi(Nt)+"/").show(),await E1(i,Nt,"",{}),U1(i);else{w5(i);var e=Q5(i);await E1(i,"Local Files","",e),U1(i)}i.off("change").change(function(t){c0($(this).val().toString())})}function $5(i){var e=$("<p/>");if(i.path!=null){var t=i.line?i.label?`(${i.path} @ ${i.label})`:`(${i.path}:${i.line})`:`(${i.path})`,r=$("<a/>").text(t),n=i.path;n==ii()&&(n=ke.mainPath),we.isWindow(n)&&r.click(s=>{var o=we.createOrShow(n);o instanceof $n&&o.navigateToLine(i.line)}),e.append(r),e.append(" ")}return e.append($("<span/>").text(i.msg)),e}function j1(){$("#error_alert").hide(),l0=!1}function u0(i,e){var t=$("#error_alert_msg").empty();for(var r of i.slice(0,10))t.append($5(r));$("#error_alert").show(),l0=e}function W1(i,e){if(e!=null){var t={msg:e,line:0};i instanceof nO&&i.$loc&&(t=Object.create(i.$loc),t.msg=e,console.log(t)),u0([t],!0)}}async function P5(i){if("uppercaseOnly"in i&&o1(i.uppercaseOnly),"errors"in i&&i.errors.length>0)mc.addClass("has-errors"),we.setErrors(i.errors),
Line truncated
|
|
|
|
|
`),e.SP&&(t+="c.SP < 0x"+pt(e.SP)+`
|
|
|
|
|
`),e.HL&&(t+=`c.HL == 0x4000
|
|
|
|
|
`),L.readAddress&&(t+=`this.readAddress(0x1234) == 0x0
|
|
|
|
|
`),L.readVRAMAddress&&(t+=`this.readVRAMAddress(0x1234) != 0x80
|
|
|
|
|
`),L.getRasterScanline&&(t+=`this.getRasterScanline() > 222
|
|
|
|
|
`),t}function j5(i){var e=new Function("c","return ("+i+");").bind(L);Qn(),L.runEval(e),Y1=i}function D1(){L.isRunning()?(we.tick(),Zu=!1):Zu||(we.tick(),Zu=!0),setTimeout(D1,100)}function Yu(i){L.setFrameRate(i),i>.01?$("#fps_label").text(i.toFixed(2)):$("#fps_label").text("1/"+Math.round(1/i))}function W5(){var i=L.getFrameRate();i=i/2,i>1e-5&&Yu(i)}function V5(){var i=L.getFrameRate();i=Math.min(60,i*2),Yu(i)}function q5(){Yu(60/65536)}function D5(){es(),Yu(60)}function I5(){we.refresh(!1);var i=we.getActive();if(i.getSourceFile&&i.setTimingResult){var e=L.newCodeAnalyzer();e.showLoopTimingForPC(0),i.setTimingResult(e)}}function u0(){Ra&&(L.setRecorder(null),$("#dbg_record").removeClass("btn_recording"),$("#replaydiv").hide(),f0(),Ra=!1)}function I1(){Ra&&Ii.reset()}function N1(){Ii.reset(),L.setRecorder(Ii),$("#dbg_record").addClass("btn_recording"),$("#replaydiv").show(),Ra=!0}function N5(){Ra?u0():N1()}function F5(){var i=!$n.tracingEnabled;$("#dbg_tracelines").toggleClass("btn_active",i);var e=we.getActive();e instanceof $n?e.setTracingEnabled(i):$n.tracingEnabled=i}function tn(i,e,t){var r=we.getActive();r&&r.insertLinesBefore?bootbox.prompt({title:"Add "+Eo.sanitize(i)+" File to Project",value:"filename"+Eo.sanitize(e),callback:n=>{if(n&&n.trim().length>0){if(!c0(n))return;var s=n,o=`
|
|
|
|
|
`),t}function j5(i){var e=new Function("c","return ("+i+");").bind(L);Qn(),L.runEval(e),L1=i}function I1(){L.isRunning()?(we.tick(),Zf=!1):Zf||(we.tick(),Zf=!0),setTimeout(I1,100)}function Yf(i){L.setFrameRate(i),i>.01?$("#fps_label").text(i.toFixed(2)):$("#fps_label").text("1/"+Math.round(1/i))}function W5(){var i=L.getFrameRate();i=i/2,i>1e-5&&Yf(i)}function V5(){var i=L.getFrameRate();i=Math.min(60,i*2),Yf(i)}function q5(){Yf(60/65536)}function D5(){es(),Yf(60)}function I5(){we.refresh(!1);var i=we.getActive();if(i.getSourceFile&&i.setTimingResult){var e=L.newCodeAnalyzer();e.showLoopTimingForPC(0),i.setTimingResult(e)}}function O0(){Ra&&(L.setRecorder(null),$("#dbg_record").removeClass("btn_recording"),$("#replaydiv").hide(),f0(),Ra=!1)}function N1(){Ra&&Ii.reset()}function F1(){Ii.reset(),L.setRecorder(Ii),$("#dbg_record").addClass("btn_recording"),$("#replaydiv").show(),Ra=!0}function N5(){Ra?O0():F1()}function F5(){var i=!$n.tracingEnabled;$("#dbg_tracelines").toggleClass("btn_active",i);var e=we.getActive();e instanceof $n?e.setTracingEnabled(i):$n.tracingEnabled=i}function tn(i,e,t){var r=we.getActive();r&&r.insertLinesBefore?bootbox.prompt({title:"Add "+Eo.sanitize(i)+" File to Project",value:"filename"+Eo.sanitize(e),callback:n=>{if(n&&n.trim().length>0){if(!h0(n))return;var s=n,o=`
|
|
|
|
|
`+t(n)+`
|
|
|
|
|
`;ke.loadFiles([s]).then(a=>{a&&a.length?Ke(n+" already exists; including anyway"):ke.updateFile(s,`
|
|
|
|
|
`),r.insertLinesBefore(o),_a()})}}}):Ke("Can't insert text in this window -- switch back to main file")}function B5(){var i=ii(),e=L.getToolForFilename(i);i.endsWith(".c")||e=="sdcc"||e=="cc65"||e=="cmoc"||e=="smlrc"?tn("Header",".h",t=>'#include "'+t+'"'):e=="dasm"||e=="zmac"?tn("Include",".inc",t=>' include "'+t+'"'):e=="ca65"||e=="sdasz80"||e=="vasm"||e=="armips"?tn("Include",".inc",t=>' .include "'+t+'"'):e=="verilator"?tn("Verilog",".v",t=>'`include "'+t+'"'):e=="wiz"?tn("Include",".wiz",t=>'import "'+t+'";'):e=="ecs"?tn("Include",".ecs",t=>'import "'+t+'"'):e=="acme"?tn("Include",".acme",t=>'!src "'+t+'"'):e=="xa"?tn("Include",".xa",t=>'#include "'+t+'"'):e=="dialog"?tn("Include",".dg",t=>'%% #include "'+t+'"'):Ke("Can't add include file to this project type ("+e+")")}function G5(){var i=ii(),e=L.getToolForFilename(i);i.endsWith(".c")||e=="sdcc"||e=="cc65"||e=="cmoc"||e=="smlrc"?tn("Linked C (or .s)",".c",t=>'//#link "'+t+'"'):i.endsWith("asm")||i.endsWith(".s")||e=="ca65"||e=="lwasm"?tn("Linked ASM",".inc",t=>';#link "'+t+'"'):Ke("Can't add linked file to this project type ("+e+")")}function H5(){var t;if(Bt=new Cc($("#toolbar")[0],null),Bt.grp.prop("id","run_bar"),Bt.add("ctrl+alt+r","Reset","glyphicon-refresh",z5).prop("id","dbg_reset"),Bt.add("ctrl+alt+,","Pause","glyphicon-pause",X5).prop("id","dbg_pause"),Bt.add("ctrl+alt+.","Resume","glyphicon-play",V1).prop("id","dbg_go"),L.restartAtPC&&Bt.add("ctrl+alt+/","Restart at Cursor","glyphicon-play-circle",Z5).prop("id","dbg_restartatline"),Bt.newGroup(),Bt.grp.prop("id","debug_bar"),L.runEval&&Bt.add("ctrl+alt+e","Reset and Debug","glyphicon-fast-backward",Y5).prop("id","dbg_restart"),L.stepBack&&Bt.add("ctrl+alt+b","Step Backwards","glyphicon-step-backward",U5).prop("id","dbg_stepback"),L.step&&Bt.add("ctrl+alt+s","Single Step","glyphicon-step-forward",_5).prop("id","dbg_step"),L.stepOver&&Bt.add("ctrl+alt+t","Step Over","glyphicon-hand-right",R5).prop("id","dbg_stepover"),L.runUntilReturn&&Bt.add("ctrl+alt+o","Step Out of Subroutine","glyphicon-hand-up",E5).prop("id","dbg_stepout"),L.runToVsync&&Bt.add("ctrl+alt+n","Next Frame/Interrupt","glyphicon-forward",C5).prop("id","dbg_tovsync"),(L.runEval||L.runToPC)&&!Ue.startsWith("verilog")&&Bt.add("ctrl+alt+l","Run To Line","glyphicon-save",A5).prop("id","dbg_toline"),Bt.newGroup(),Bt.grp.prop("id","xtra_bar"),$(".dropdown-menu").collapse({toggle:!1}),$("#item_new_file").click(d5),$("#item_upload_file").click(p5),$("#item_open_directory").click(g5),$("#item_github_login").click(ky),$("#item_github_logout").click(Ty),$("#item_github_import").click(Xy),$("#item_github_publish").click(_y),$("#item_github_push").click(Ry),$("#item_github_pull").click(Cy),$("#item_repo_delete").click(Ay),$("#item_share_file").click(gy),$("#item_reset_file").click(v5),$("#item_rename_file").click(y5),$("#item_delete_file").click(S5),L.runEval?$("#item_debug_expr").click(L5).show():$("#item_debug_expr").hide(),$("#item_download_rom").click(xy),$("#item_download_file").click(vy),$("#item_download_zip").click(yy),L.getDebugSymbolFile?$("#item_download_sym").click(Qy):$("#item_download_sym").hide(),$("#item_download_allzip").click(wy),$("#item_record_video").click($y),Dp()?$("#item_export_cassette").click(by):$("#item_export_cassette").hide(),L.setFrameRate&&L.getFrameRate&&($("#dbg_slower").click(W5),$("#dbg_faster").click(V5),$("#dbg_slowest").click(q5),$("#dbg_fastest").click(D5)),$("#item_addfile_include").click(B5),$("#item_addfile_link").click(G5),$("#item_request_persist").click(()=>L1(!0,!1)),$("#item_settings").click(ly),$("#item_keyboard_shortcuts").click(K5),$("#item_asset_editor_help").click(J5),D1(),L.newCodeAnalyzer&&Bt.add(null,"Analyze CPU Timing","glyphicon-time",I5),L.startProbing&&Bt.add(null,"Highlight Executed Lines","glyphicon-fire",F5).prop("id","dbg_tracelines"),L.setRecorder&&L.advance&&ez(),L.showHelp){let{li:r,a:n}=i0("help__"+Ue,e0+" Help");$("#help_menu").append(r),$(n).click(()=>window.open(L.showHelp(),"_8bws_help"))}let i=L.getToolForFilename(ii()),e=i&&((t=dn(i))==null?void 0:t.helpURL);if(e){let{li:r,a:n}=i0("help__"+i,i+" Help");$("#help_menu").append(r),$(n).click(()=>window.open(e,"_8bws_help"))}}function K5(){let i=/Mac|iPhone|iPad/.test(navigator.platform),e=i?"⌘":"Ctrl",t=i?"⌥":"Alt",r=i?"⇧":"Shift",n=(s,o)=>`<tr><td><kbd>${s}</kbd></td><td>${o}</td></tr>`;bootbox.dialog({title:"Keyboard shortcuts",onEscape:!0,message:`
|
|
|
|
|
`),r.insertLinesBefore(o),_a()})}}}):Ke("Can't insert text in this window -- switch back to main file")}function B5(){var i=ii(),e=L.getToolForFilename(i);i.endsWith(".c")||e=="sdcc"||e=="cc65"||e=="cmoc"||e=="smlrc"?tn("Header",".h",t=>'#include "'+t+'"'):e=="dasm"||e=="zmac"?tn("Include",".inc",t=>' include "'+t+'"'):e=="ca65"||e=="sdasz80"||e=="vasm"||e=="armips"?tn("Include",".inc",t=>' .include "'+t+'"'):e=="verilator"?tn("Verilog",".v",t=>'`include "'+t+'"'):e=="wiz"?tn("Include",".wiz",t=>'import "'+t+'";'):e=="ecs"?tn("Include",".ecs",t=>'import "'+t+'"'):e=="acme"?tn("Include",".acme",t=>'!src "'+t+'"'):e=="xa"?tn("Include",".xa",t=>'#include "'+t+'"'):e=="dialog"?tn("Include",".dg",t=>'%% #include "'+t+'"'):Ke("Can't add include file to this project type ("+e+")")}function G5(){var i=ii(),e=L.getToolForFilename(i);i.endsWith(".c")||e=="sdcc"||e=="cc65"||e=="cmoc"||e=="smlrc"?tn("Linked C (or .s)",".c",t=>'//#link "'+t+'"'):i.endsWith("asm")||i.endsWith(".s")||e=="ca65"||e=="lwasm"?tn("Linked ASM",".inc",t=>';#link "'+t+'"'):Ke("Can't add linked file to this project type ("+e+")")}function H5(){if(Bt=new Cc($("#toolbar")[0],null),Bt.grp.prop("id","run_bar"),Bt.add("ctrl+alt+r","Reset","glyphicon-refresh",z5).prop("id","dbg_reset"),Bt.add("ctrl+alt+,","Pause","glyphicon-pause",X5).prop("id","dbg_pause"),Bt.add("ctrl+alt+.","Resume","glyphicon-play",q1).prop("id","dbg_go"),L.restartAtPC&&Bt.add("ctrl+alt+/","Restart at Cursor","glyphicon-play-circle",Z5).prop("id","dbg_restartatline"),Bt.newGroup(),Bt.grp.prop("id","debug_bar"),L.runEval&&Bt.add("ctrl+alt+e","Reset and Debug","glyphicon-fast-backward",Y5).prop("id","dbg_restart"),L.stepBack&&Bt.add("ctrl+alt+b","Step Backwards","glyphicon-step-backward",U5).prop("id","dbg_stepback"),L.step&&Bt.add("ctrl+alt+s","Single Step","glyphicon-step-forward",_5).prop("id","dbg_step"),L.stepOver&&Bt.add("ctrl+alt+t","Step Over","glyphicon-hand-right",R5).prop("id","dbg_stepover"),L.runUntilReturn&&Bt.add("ctrl+alt+o","Step Out of Subroutine","glyphicon-hand-up",E5).prop("id","dbg_stepout"),L.runToVsync&&Bt.add("ctrl+alt+n","Next Frame/Interrupt","glyphicon-forward",C5).prop("id","dbg_tovsync"),(L.runEval||L.runToPC)&&!Ue.startsWith("verilog")&&Bt.add("ctrl+alt+l","Run To Line","glyphicon-save",A5).prop("id","dbg_toline"),Bt.newGroup(),Bt.grp.prop("id","xtra_bar"),$(".dropdown-menu").collapse({toggle:!1}),$("#item_new_file").click(d5),$("#item_upload_file").click(p5),$("#item_open_directory").click(g5),$("#item_github_login").click(Ty),$("#item_github_logout").click(Xy),$("#item_github_import").click(_y),$("#item_github_publish").click(Ry),$("#item_github_push").click(Cy),$("#item_github_pull").click(Zy),$("#item_repo_delete").click(Ey),$("#item_share_file").click(by),$("#item_reset_file").click(v5),$("#item_rename_file").click(y5),$("#item_delete_file").click(S5),L.runEval?$("#item_debug_expr").click(L5).show():$("#item_debug_expr").hide(),$("#item_download_rom").click(vy),$("#item_download_file").click(Sy),$("#item_download_zip").click(Qy),L.getDebugSymbolFile?$("#item_download_sym").click(wy):$("#item_download_sym").hide(),$("#item_download_allzip").click($y),$("#item_record_video").click(Py),Ip()?$("#item_export_cassette").click(xy):$("#item_export_cassette").hide(),L.setFrameRate&&L.getFrameRate&&($("#dbg_slower").click(W5),$("#dbg_faster").click(V5),$("#dbg_slowest").click(q5),$("#dbg_fastest").click(D5)),$("#item_addfile_include").click(B5),$("#item_addfile_link").click(G5),$("#item_request_persist").click(()=>M1(!0,!1)),$("#item_settings").click(cy),$("#item_keyboard_shortcuts").click(J5),$("#item_asset_editor_help").click(ez),I1(),L.newCodeAnalyzer&&Bt.add(null,"Analyze CPU Timing","glyphicon-time",I5),L.startProbing&&Bt.add(null,"Highlight Executed Lines","glyphicon-fire",F5).prop("id","dbg_tracelines"),L.setRecorder&&L.advance&&tz(),L.showHelp){let{li:r,a:n}=r0("help__"+Ue,t0+" Help");$("#help_menu").append(r),$(n).click(()=>window.open(L.showHelp(),"_8bws_help"))}let i=L.getToolForFilename(ii()),e=i&&dn(i),t=e==null?void 0:e.helpURL;if(t){let r=i+" Help";e.version&&(r+=" ("+e.version+")");let{li:n,a:s}=r0("help__"+i,r);$("#help_menu").append(n),$(s).click(()=>window.open(t,"_8bws_help"))}$("#item_tool_versions").click(K5)}function K5(){let i=(t,r,n)=>`<tr><td>${t}</td><td>${r}</td><td>${n}</td></tr>`,e=Object.values(cO).filter(t=>t.wasmModule&&t.version).sort((t,r)=>t.name.localeCompare(r.name));bootbox.dialog({title:"Toolchain Versions",onEscape:!0,message:`
|
|
|
|
|
<table class="help">
|
|
|
|
|
<tr><th>Tool</th><th>Kind</th><th>Version</th></tr>
|
|
|
|
|
${e.map(t=>{var r;return i(t.name,t.kind,(r=t.version)!=null?r:"?")}).join(`
|
|
|
|
|
`)}
|
|
|
|
|
</table>`})}function J5(){let i=/Mac|iPhone|iPad/.test(navigator.platform),e=i?"⌘":"Ctrl",t=i?"⌥":"Alt",r=i?"⇧":"Shift",n=(s,o)=>`<tr><td><kbd>${s}</kbd></td><td>${o}</td></tr>`;bootbox.dialog({title:"Keyboard shortcuts",onEscape:!0,message:`
|
|
|
|
|
<table class="help">
|
|
|
|
|
<tr><th colspan="2">Custom</th></tr>
|
|
|
|
|
${n(`${r}+${t}+F`,"Format document, or selected range(s)")}
|
|
|
|
@@ -108,7 +113,7 @@ PC `+this.addr2str(s)+" "+this.opToString(c,null,y),o[P]=1)}),this.addr2str(r)+n
|
|
|
|
|
<a target="_blank" href="https://codemirror.net/docs/ref/#search.searchKeymap">searchKeymap</a>
|
|
|
|
|
</td>
|
|
|
|
|
</tr>
|
|
|
|
|
</table>`,buttons:{ok:{label:"OK",className:"btn-primary"}}})}function J5(){let i=(e,t,r)=>`<tr><td><code>${e}</code></td><td>${t}</td><td>${r}</td></tr>`;bootbox.dialog({title:"Asset Editor Reference",onEscape:!0,message:`
|
|
|
|
|
</table>`,buttons:{ok:{label:"OK",className:"btn-primary"}}})}function ez(){let i=(e,t,r)=>`<tr><td><code>${e}</code></td><td>${t}</td><td>${r}</td></tr>`;bootbox.dialog({title:"Asset Editor Reference",onEscape:!0,message:`
|
|
|
|
|
<p>Add asset headers in source code as comments containing JSON format descriptors:</p>
|
|
|
|
|
<p>
|
|
|
|
|
C: <code>/*{w:8,h:8}*/</code> followed by data, terminated by <code>;</code><br>
|
|
|
|
@@ -147,7 +152,7 @@ PC `+this.addr2str(s)+" "+this.opToString(c,null,y),o[P]=1)}),this.addr2str(r)+n
|
|
|
|
|
<tr><td colspan="2"><code>;;{w:8,h:8,art:true};;</code></td><td>8x8 with artifact color (Apple II HGR, bit 7 toggle)</td></tr>
|
|
|
|
|
<tr><td colspan="2"><code>/*{w:16,h:16,bpp:4,np:1}*/</code></td><td>16x16 4bpp</td></tr>
|
|
|
|
|
<tr><td colspan="2"><code>/*{pal:332,n:16}*/</code></td><td>16-entry RGB332 palette</pre></td></tr>
|
|
|
|
|
</table>`,buttons:{ok:{label:"OK",className:"btn-primary"}},size:"large"})}function ez(){var i=$("#replayslider"),e=$("#clockslider"),t=$("#replay_frame"),r=$("#replay_clock");L.advanceFrameClock||$("#clockdiv").hide();var n=()=>{t.text(Ii.lastSeekFrame+""),r.text(Ii.lastSeekStep+"")},s=l=>{Us();var c=parseInt(i.val().toString()),f=parseInt(e.val().toString());Ii.loadFrame(c,f)>=0&&(e.attr("min",0),e.attr("max",Ii.lastStepCount),n(),Au(L.saveState()))},o=l=>{Us(),Ii.loadFrame(l)>=0&&(i.val(l),n(),Au(L.saveState()))},a=l=>{Us();var c=parseInt(i.val().toString());Ii.loadFrame(c,l)>=0&&(e.val(l),n(),Au(L.saveState()))};Ii.callbackStateChanged=()=>{i.attr("min",0),i.attr("max",Ii.numFrames()),i.val(Ii.currentFrame()),e.val(Ii.currentStep()),n(),xc(L.saveState())},i.on("input",s),e.on("input",s),$("#replay_min").click(()=>{o(1)}),$("#replay_max").click(()=>{o(Ii.numFrames())}),$("#replay_back").click(()=>{o(parseInt(i.val().toString())-1)}),$("#replay_fwd").click(()=>{o(parseInt(i.val().toString())+1)}),$("#clock_back").click(()=>{a(parseInt(e.val().toString())-1)}),$("#clock_fwd").click(()=>{a(parseInt(e.val().toString())+1)}),$("#replay_bar").show(),Bt.add("ctrl+alt+0","Start/Stop Replay Recording","glyphicon-record",N5).prop("id","dbg_record")}function tz(){try{var i=window.screen.orientation||window.screen.msOrientation||window.screen.mozOrientation||null;if(i){if(i.type.indexOf("landscape")!==-1)return!0;if(i.type.indexOf("portrait")!==-1)return!1}if("orientation"in window){var e=window.orientation;if(e===0||e===180)return!1;if(e===90||e===270)return!0}}catch(t){}return window.innerWidth>window.innerHeight}async function iz(){if(Jn.shouldCompleteTour()){await Sr("lib/bootstrap-tourist.js");var i=Ue.startsWith("vcs"),e=[{element:"#platformsMenuButton",placement:"right",title:"Platform Selector",content:`You're currently on the "<b>`+Ue+'</b>" platform. You can choose a different one from the menu.'},{element:"#preset_select",title:"Project Selector",content:"You can choose different code examples, create your own files, or import projects from GitHub."},{element:"#workspace",title:"Code Editor",content:i?"Type your 6502 assembly code into the editor, and it'll be assembled in real-time.":"Type your source code into the editor, and it'll be compiled in real-time."},{element:"#emulator",placement:"left",title:"Emulator",content:"We'll load your compiled code into the emulator whenever you make changes."},{element:"#debug_bar",placement:"bottom",title:"Debug Tools",content:"Use these buttons to set breakpoints, single step through code, pause/resume, and use debugging tools."},{element:"#dropdownMenuButton",title:"Main Menu",content:"Click the menu to create new files, download your code, or share your work with others."},{element:"#sidebar",title:"Sidebar",content:"Pull right to expose the sidebar. It lets you switch between source files, view assembly listings, and use other tools like Disassembler, Memory Browser, and Asset Editor."}];tz()||e.unshift({element:"#controls_top",placement:"bottom",title:"Portrait mode detected",content:"This site works best on desktop browsers. For best results, rotate your device to landscape orientation."}),Da()&&(e.unshift({element:"#dropdownMenuButton",placement:"right",title:"Cookie Consent",content:'Before we start, we should tell you that this website stores cookies and other data in your browser. You can review our <a href="/privacy.html" target="_new">privacy policy</a>.'}),e.push({element:"#booksMenuButton",placement:"left",title:"Books",content:"Get some books that explain how to program all of this stuff, and write some games!"})),Ca&&(e.unshift({element:"#dropdownMenuButton",placement:"right",title:"Developer Analytics",content:"BTW, we send stack traces to sentry.io when exceptions are thrown. Hope that's ok."}),e.unshift({element:"#dropdownMenuButton",placement:"right",title:"Welcome to 8bitworkshop Desktop!",content:'The directory "~/8bitworkshop" contains all of your file edits and built ROM images. You can create new projects under the platform directories (e.g. "c64/myproject")'}));var t=new Tour({autoscroll:!1,steps:e,onEnd:()=>{Jn.completedTour()}});setTimeout(()=>{t.start()},2500)}}function Uu(i){var e=(i.message||i.error||i)+"";if(e.indexOf("QuotaExceededError")>=0)s5();else{var t=i.error||i.reason;t!=null&&t instanceof nO&&rz(t)}}function rz(i){console.log("haltEmulation"),Us(),xz(i)}function nz(){window.addEventListener("error",Uu),window.addEventListener("unhandledrejection",Uu)}function F1(){window.removeEventListener("error",Uu),window.removeEventListener("unhandledrejection",Uu)}function So(i,e){e&&(ve=e),F1(),i?window.location.replace("?"+$.param(ve)):window.location.href="?"+$.param(ve)}function Lu(){Ue&&(ve.platform=Ue),delete ve[""],history.replaceState({},"","?"+$.param(ve)+window.location.hash)}function B1(i){if(!i||i==="#")return null;var e=decodeURIComponent(i.substring(1));return e.startsWith("asseteditor/")?"#asseteditor":e.startsWith(Line truncated
|
|
|
|
|
</table>`,buttons:{ok:{label:"OK",className:"btn-primary"}},size:"large"})}function tz(){var i=$("#replayslider"),e=$("#clockslider"),t=$("#replay_frame"),r=$("#replay_clock");L.advanceFrameClock||$("#clockdiv").hide();var n=()=>{t.text(Ii.lastSeekFrame+""),r.text(Ii.lastSeekStep+"")},s=l=>{Us();var c=parseInt(i.val().toString()),u=parseInt(e.val().toString());Ii.loadFrame(c,u)>=0&&(e.attr("min",0),e.attr("max",Ii.lastStepCount),n(),Af(L.saveState()))},o=l=>{Us(),Ii.loadFrame(l)>=0&&(i.val(l),n(),Af(L.saveState()))},a=l=>{Us();var c=parseInt(i.val().toString());Ii.loadFrame(c,l)>=0&&(e.val(l),n(),Af(L.saveState()))};Ii.callbackStateChanged=()=>{i.attr("min",0),i.attr("max",Ii.numFrames()),i.val(Ii.currentFrame()),e.val(Ii.currentStep()),n(),xc(L.saveState())},i.on("input",s),e.on("input",s),$("#replay_min").click(()=>{o(1)}),$("#replay_max").click(()=>{o(Ii.numFrames())}),$("#replay_back").click(()=>{o(parseInt(i.val().toString())-1)}),$("#replay_fwd").click(()=>{o(parseInt(i.val().toString())+1)}),$("#clock_back").click(()=>{a(parseInt(e.val().toString())-1)}),$("#clock_fwd").click(()=>{a(parseInt(e.val().toString())+1)}),$("#replay_bar").show(),Bt.add("ctrl+alt+0","Start/Stop Replay Recording","glyphicon-record",N5).prop("id","dbg_record")}function iz(){try{var i=window.screen.orientation||window.screen.msOrientation||window.screen.mozOrientation||null;if(i){if(i.type.indexOf("landscape")!==-1)return!0;if(i.type.indexOf("portrait")!==-1)return!1}if("orientation"in window){var e=window.orientation;if(e===0||e===180)return!1;if(e===90||e===270)return!0}}catch(t){}return window.innerWidth>window.innerHeight}async function rz(){if(Jn.shouldCompleteTour()){await Sr("lib/bootstrap-tourist.js");var i=Ue.startsWith("vcs"),e=[{element:"#platformsMenuButton",placement:"right",title:"Platform Selector",content:`You're currently on the "<b>`+Ue+'</b>" platform. You can choose a different one from the menu.'},{element:"#preset_select",title:"Project Selector",content:"You can choose different code examples, create your own files, or import projects from GitHub."},{element:"#workspace",title:"Code Editor",content:i?"Type your 6502 assembly code into the editor, and it'll be assembled in real-time.":"Type your source code into the editor, and it'll be compiled in real-time."},{element:"#emulator",placement:"left",title:"Emulator",content:"We'll load your compiled code into the emulator whenever you make changes."},{element:"#debug_bar",placement:"bottom",title:"Debug Tools",content:"Use these buttons to set breakpoints, single step through code, pause/resume, and use debugging tools."},{element:"#dropdownMenuButton",title:"Main Menu",content:"Click the menu to create new files, download your code, or share your work with others."},{element:"#sidebar",title:"Sidebar",content:"Pull right to expose the sidebar. It lets you switch between source files, view assembly listings, and use other tools like Disassembler, Memory Browser, and Asset Editor."}];iz()||e.unshift({element:"#controls_top",placement:"bottom",title:"Portrait mode detected",content:"This site works best on desktop browsers. For best results, rotate your device to landscape orientation."}),Da()&&(e.unshift({element:"#dropdownMenuButton",placement:"right",title:"Cookie Consent",content:'Before we start, we should tell you that this website stores cookies and other data in your browser. You can review our <a href="/privacy.html" target="_new">privacy policy</a>.'}),e.push({element:"#booksMenuButton",placement:"left",title:"Books",content:"Get some books that explain how to program all of this stuff, and write some games!"})),Ca&&(e.unshift({element:"#dropdownMenuButton",placement:"right",title:"Developer Analytics",content:"BTW, we send stack traces to sentry.io when exceptions are thrown. Hope that's ok."}),e.unshift({element:"#dropdownMenuButton",placement:"right",title:"Welcome to 8bitworkshop Desktop!",content:'The directory "~/8bitworkshop" contains all of your file edits and built ROM images. You can create new projects under the platform directories (e.g. "c64/myproject")'}));var t=new Tour({autoscroll:!1,steps:e,onEnd:()=>{Jn.completedTour()}});setTimeout(()=>{t.start()},2500)}}function Uf(i){var e=(i.message||i.error||i)+"";if(e.indexOf("QuotaExceededError")>=0)s5();else{var t=i.error||i.reason;t!=null&&t instanceof nO&&nz(t)}}function nz(i){console.log("haltEmulation"),Us(),vz(i)}function sz(){window.addEventListener("error",Uf),window.addEventListener("unhandledrejection",Uf)}function B1(){window.removeEventListener("error",Uf),window.removeEventListener("unhandledrejection",Uf)}function So(i,e){e&&(ve=e),B1(),i?window.location.replace("?"+$.param(ve)):window.location.href="?"+$.param(ve)}function Lf(){Ue&&(ve.platform=Ue),delete ve[""],history.replaceState({},"","?"+$.param(ve)+window.location.hash)}function G1(i){if(!i||i==="#")return null;var e=decodeURIComponent(i.substring(1));return e.startsWith("asseteditor/")?"#asseteditor":e.startsWith(Line truncated
|
|
|
|
|
/*! Bundled license information:
|
|
|
|
|
|
|
|
|
|
localforage/dist/localforage.js:
|
|
|
|
@@ -173,4 +178,4 @@ jquery/dist/jquery.js:
|
|
|
|
|
dompurify/dist/purify.cjs.js:
|
|
|
|
|
(*! @license DOMPurify 3.4.13 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.13/LICENSE *)
|
|
|
|
|
*/
|
|
|
|
|
//# sourceMappingURL=chunk-CFJ45J36.js.map
|
|
|
|
|
//# sourceMappingURL=chunk-OO2OVDQ5.js.map
|