You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 lines
12 KiB
1 lines
12 KiB
import{D as Z,e as Y,C as k,W as i,_ as j,S as A,Y as I,q as N,d as U,k as q,a as z}from"./index-Bo-aCpEW.js";const b=1,D=2,B=3,F=4,M=5,J=35,K=36,H=37,L=11,OO=13;function eO(O){return O==45||O==46||O==58||O>=65&&O<=90||O==95||O>=97&&O<=122||O>=161}function tO(O){return O==9||O==10||O==13||O==32}let w=null,x=null,X=0;function v(O,e){let n=O.pos+e;if(x==O&&X==n)return w;for(;tO(O.peek(e));)e++;let t="";for(;;){let a=O.peek(e);if(!eO(a))break;t+=String.fromCharCode(a),e++}return x=O,X=n,w=t||null}function Q(O,e){this.name=O,this.parent=e,this.hash=e?e.hash:0;for(let n=0;n<O.length;n++)this.hash+=(this.hash<<4)+O.charCodeAt(n)+(O.charCodeAt(n)<<8)}const nO=new Z({start:null,shift(O,e,n,t){return e==b?new Q(v(t,1)||"",O):O},reduce(O,e){return e==L&&O?O.parent:O},reuse(O,e,n,t){let a=e.type.id;return a==b||a==OO?new Q(v(t,1)||"",O):O},hash(O){return O?O.hash:0},strict:!1}),aO=new Y((O,e)=>{if(O.next==60){if(O.advance(),O.next==47){O.advance();let n=v(O,0);if(!n)return O.acceptToken(M);if(e.context&&n==e.context.name)return O.acceptToken(D);for(let t=e.context;t;t=t.parent)if(t.name==n)return O.acceptToken(B,-2);O.acceptToken(F)}else if(O.next!=33&&O.next!=63)return O.acceptToken(b)}},{contextual:!0});function C(O,e){return new Y(n=>{let t=0,a=e.charCodeAt(0);O:for(;!(n.next<0);n.advance(),t++)if(n.next==a){for(let r=1;r<e.length;r++)if(n.peek(r)!=e.charCodeAt(r))continue O;break}t&&n.acceptToken(O)})}const rO=C(J,"-->"),lO=C(K,"?>"),oO=C(H,"]]>"),sO=k({Text:i.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":i.angleBracket,TagName:i.tagName,"MismatchedCloseTag/Tagname":[i.tagName,i.invalid],AttributeName:i.attributeName,AttributeValue:i.attributeValue,Is:i.definitionOperator,"EntityReference CharacterReference":i.character,Comment:i.blockComment,ProcessingInst:i.processingInstruction,DoctypeDecl:i.documentMeta,Cdata:i.special(i.string)}),yO=j.deserialize({version:14,states:",SOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DS'#DSOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C{'#C{O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C|'#C|O$dOrO,59^OOOP,59^,59^OOOS'#C}'#C}O$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6y-E6yOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6z-E6zOOOP1G.x1G.xOOOS-E6{-E6{OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'jO!bO,59eOOOO-E6w-E6wO'xOpO1G.uO'xOpO1G.uOOOP1G.u1G.uO(QOpO7+$fOOOP7+$f7+$fO(YO!bO<<GuOOOP<<Gu<<GuOOOP<<G}<<G}O'bOpO1G.qO'bOpO1G.qO(eO#tO'#CnOOOO1G.q1G.qO(sOpO7+$aOOOP7+$a7+$aOOOP<<HQ<<HQOOOPAN=aAN=aOOOPAN=iAN=iO'bOpO7+$]OOOO7+$]7+$]OOOO'#Cz'#CzO({O#tO,59YOOOO,59Y,59YOOOP<<G{<<G{OOOO<<Gw<<GwOOOO-E6x-E6xOOOO1G.t1G.t",stateData:")Z~OPQOSVOTWOVWOWWOXWOiXOxPO}TO!PUO~OuZOw]O~O^`Oy^O~OPQOQcOSVOTWOVWOWWOXWOxPO}TO!PUO~ORdO~P!SOseO|gO~OthO!OjO~O^lOy^O~OuZOwoO~O^qOy^O~O[vO`sOdwOy^O~ORyO~P!SO^{Oy^O~OseO|}O~OthO!O!PO~O^!QOy^O~O[!SOy^O~O[!VO`sOd!WOy^O~Oa!YOy^O~Oy^O[mX`mXdmX~O[!VO`sOd!WO~O^!]Oy^O~O[!_Oy^O~O[!aOy^O~O[!cO`sOd!dOy^O~O[!cO`sOd!dO~Oa!eOy^O~Oy^Oz!gO~Oy^O[ma`madma~O[!jOy^O~O[!kOy^O~O[!lO`sOd!mO~OW!pOX!pOz!rO{!pO~O[!sOy^O~OW!pOX!pOz!vO{!pO~O",goto:"%[wPPPPPPPPPPxxP!OP!UPP!_!iP!oxxxP!u!{#R$Z$j$p$v$|PPPP%SXWORYbXRORYb_t`qru!T!U!bQ!h!YS!o!e!fR!t!nQdRRybXSORYbQYORmYQ[PRn[Q_QQkVjp_krz!R!T!X!Z!^!`!f!i!nQr`QzcQ!RlQ!TqQ!XsQ!ZtQ!^{Q!`!QQ!f!YQ!i!]R!n!eQu`S!UqrU![u!U!bR!b!TQ!q!gR!u!qQbRRxbQfTR|fQiUR!OiSXOYTaRb",nodeNames:"⚠ StartTag StartCloseTag MissingCloseTag StartCloseTag StartCloseTag Document Text EntityReference CharacterReference Cdata Element EndTag OpenTag TagName Attribute AttributeName Is AttributeValue CloseTag SelfCloseEndTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag DoctypeDecl",maxTerm:47,context:nO,nodeProps:[["closedBy",1,"SelfCloseEndTag EndTag",13,"CloseTag MissingCloseTag"],["openedBy",12,"StartTag StartCloseTag",19,"OpenTag",20,"StartTag"],["isolate",-6,13,18,19,21,22,24,""]],propSources:[sO],skippedNodes:[0],repeatNodeCount:8,tokenData:"Jy~R!XOX$nXY&kYZ&kZ]$n]^&k^p$npq&kqr$nrs'ssv$nvw(Zw}$n}!O,^!O!P$n!P!Q.m!Q![$n![!]0V!]!^$n!^!_3h!_!`El!`!aF_!a!bGQ!b!c$n!c!}0V!}#P$n#P#QHj#Q#R$n#R#S0V#S#T$n#T#o0V#o%W$n%W%o0V%o%p$n%p&a0V&a&b$n&b1p0V1p4U$n4U4d0V4d4e$n4e$IS0V$IS$I`$n$I`$Ib0V$Ib$Kh$n$Kh%#t0V%#t&/x$n&/x&Et0V&Et&FV$n&FV;'S0V;'S;:j3b;:j;=`&e<%l?&r$n?&r?Ah0V?Ah?BY$n?BY?Mn0V?MnO$nX$uWVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nP%dTVPOv%_w!^%_!_;'S%_;'S;=`%s<%lO%_P%vP;=`<%l%_W&OT{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yW&bP;=`<%l%yX&hP;=`<%l$n_&t_VP{WyUOX$nXY&kYZ&kZ]$n]^&k^p$npq&kqr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZ'zTzYVPOv%_w!^%_!_;'S%_;'S;=`%s<%lO%_~(^ast)c![!]*g!c!}*g#R#S*g#T#o*g%W%o*g%p&a*g&b1p*g4U4d*g4e$IS*g$I`$Ib*g$Kh%#t*g&/x&Et*g&FV;'S*g;'S;:j,W?&r?Ah*g?BY?Mn*g~)fQ!Q![)l#l#m)z~)oQ!Q![)l!]!^)u~)zOX~~)}R!Q![*W!c!i*W#T#Z*W~*ZS!Q![*W!]!^)u!c!i*W#T#Z*W~*jg}!O*g!O!P*g!Q![*g![!]*g!]!^,R!c!}*g#R#S*g#T#o*g$}%O*g%W%o*g%p&a*g&b1p*g1p4U*g4U4d*g4e$IS*g$I`$Ib*g$Je$Jg*g$Kh%#t*g&/x&Et*g&FV;'S*g;'S;:j,W?&r?Ah*g?BY?Mn*g~,WOW~~,ZP;=`<%l*gZ,eYVP{WOr$nrs%_sv$nw}$n}!O-T!O!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZ-[YVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!a-z!a;'S$n;'S;=`&e<%lO$nZ.TW|QVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n].tYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!a/d!a;'S$n;'S;=`&e<%lO$n]/mWdSVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n_0b!O`S^QVP{WOr$nrs%_sv$nw}$n}!O0V!O!P0V!P!Q$n!Q![0V![!]0V!]!^$n!^!_%y!_!c$n!c!}0V!}#R$n#R#S0V#S#T$n#T#o0V#o$}$n$}%O0V%O%W$n%W%o0V%o%p$n%p&a0V&a&b$n&b1p0V1p4U0V4U4d0V4d4e$n4e$IS0V$IS$I`$n$I`$Ib0V$Ib$Je$n$Je$Jg0V$Jg$Kh$n$Kh%#t0V%#t&/x$n&/x&Et0V&Et&FV$n&FV;'S0V;'S;:j3b;:j;=`&e<%l?&r$n?&r?Ah0V?Ah?BY$n?BY?Mn0V?MnO$n_3eP;=`<%l0VX3mW{WOq%yqr4Vsv%yw!a%y!a!bEU!b;'S%y;'S;=`&_<%lO%yX4[]{WOr%ysv%yw}%y}!O5T!O!f%y!f!g6V!g!}%y!}#O;f#O#W%y#W#XAr#X;'S%y;'S;=`&_<%lO%yX5YV{WOr%ysv%yw}%y}!O5o!O;'S%y;'S;=`&_<%lO%yX5vT}P{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yX6[V{WOr%ysv%yw!q%y!q!r6q!r;'S%y;'S;=`&_<%lO%yX6vV{WOr%ysv%yw!e%y!e!f7]!f;'S%y;'S;=`&_<%lO%yX7bV{WOr%ysv%yw!v%y!v!w7w!w;'S%y;'S;=`&_<%lO%yX7|V{WOr%ysv%yw!{%y!{!|8c!|;'S%y;'S;=`&_<%lO%yX8hV{WOr%ysv%yw!r%y!r!s8}!s;'S%y;'S;=`&_<%lO%yX9SV{WOr%ysv%yw!g%y!g!h9i!h;'S%y;'S;=`&_<%lO%yX9nX{WOr9irs:Zsv9ivw:Zw!`9i!`!a:x!a;'S9i;'S;=`;`<%lO9iP:^TO!`:Z!`!a:m!a;'S:Z;'S;=`:r<%lO:ZP:rOiPP:uP;=`<%l:ZX;PTiP{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yX;cP;=`<%l9iX;kX{WOr%ysv%yw!e%y!e!f<W!f#V%y#V#W?f#W;'S%y;'S;=`&_<%lO%yX<]V{WOr%ysv%yw!f%y!f!g<r!g;'S%y;'S;=`&_<%lO%yX<wV{WOr%ysv%yw!c%y!c!d=^!d;'S%y;'S;=`&_<%lO%yX=cV{WOr%ysv%yw!v%y!v!w=x!w;'S%y;'S;=`&_<%lO%yX=}V{WOr%ysv%yw!c%y!c!d>d!d;'S%y;'S;=`&_<%lO%yX>iV{WOr%ysv%yw!}%y!}#O?O#O;'S%y;'S;=`&_<%lO%yX?VT{WxPOr%ysv%yw;'S%y;'S;=`&_<%lO%yX?kV{WOr%ysv%yw#W%y#W#X@Q#X;'S%y;'S;=`&_<%lO%yX@VV{WOr%ysv%yw#T%y#T#U@l#U;'S%y;'S;=`&_<%lO%yX@qV{WOr%ysv%yw#h%y#h#iAW#i;'S%y;'S;=`&_<%lO%yXA]V{WOr%ysv%yw#T%y#T#U>d#U;'S%y;'S;=`&_<%lO%yXAwV{WOr%ysv%yw#c%y#c#dB^#d;'S%y;'S;=`&_<%lO%yXBcV{WOr%ysv%yw#V%y#V#WBx#W;'S%y;'S;=`&_<%lO%yXB}V{WOr%ysv%yw#h%y#h#iCd#i;'S%y;'S;=`&_<%lO%yXCiV{WOr%ysv%yw#m%y#m#nDO#n;'S%y;'S;=`&_<%lO%yXDTV{WOr%ysv%yw#d%y#d#eDj#e;'S%y;'S;=`&_<%lO%yXDoV{WOr%ysv%yw#X%y#X#Y9i#Y;'S%y;'S;=`&_<%lO%yXE]T!PP{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yZEuWaQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n_FhW[UVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZGXYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!aGw!a;'S$n;'S;=`&e<%lO$nZHQW!OQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZHqYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_#P$n#P#QIa#Q;'S$n;'S;=`&e<%lO$nZIhYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!aJW!a;'S$n;'S;=`&e<%lO$nZJaWwQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n",tokenizers:[aO,rO,lO,oO,0,1,2,3],topRules:{Document:[0,6]},tokenPrec:0});function V(O,e){let n=e&&e.getChild("TagName");return n?O.sliceString(n.from,n.to):""}function _(O,e){let n=e&&e.firstChild;return!n||n.name!="OpenTag"?"":V(O,n)}function iO(O,e,n){let t=e&&e.getChildren("Attribute").find(r=>r.from<=n&&r.to>=n),a=t&&t.getChild("AttributeName");return a?O.sliceString(a.from,a.to):""}function T(O){for(let e=O&&O.parent;e;e=e.parent)if(e.name=="Element")return e;return null}function $O(O,e){var n;let t=z(O).resolveInner(e,-1),a=null;for(let r=t;!a&&r.parent;r=r.parent)(r.name=="OpenTag"||r.name=="CloseTag"||r.name=="SelfClosingTag"||r.name=="MismatchedCloseTag")&&(a=r);if(a&&(a.to>e||a.lastChild.type.isError)){let r=a.parent;if(t.name=="TagName")return a.name=="CloseTag"||a.name=="MismatchedCloseTag"?{type:"closeTag",from:t.from,context:r}:{type:"openTag",from:t.from,context:T(r)};if(t.name=="AttributeName")return{type:"attrName",from:t.from,context:a};if(t.name=="AttributeValue")return{type:"attrValue",from:t.from,context:a};let y=t==a||t.name=="Attribute"?t.childBefore(e):t;return(y==null?void 0:y.name)=="StartTag"?{type:"openTag",from:e,context:T(r)}:(y==null?void 0:y.name)=="StartCloseTag"&&y.to<=e?{type:"closeTag",from:e,context:r}:(y==null?void 0:y.name)=="Is"?{type:"attrValue",from:e,context:a}:y?{type:"attrName",from:e,context:a}:null}else if(t.name=="StartCloseTag")return{type:"closeTag",from:e,context:t.parent};for(;t.parent&&t.to==e&&!(!((n=t.lastChild)===null||n===void 0)&&n.type.isError);)t=t.parent;return t.name=="Element"||t.name=="Text"||t.name=="Document"?{type:"tag",from:e,context:t.name=="Element"?t:T(t)}:null}class cO{constructor(e,n,t){this.attrs=n,this.attrValues=t,this.children=[],this.name=e.name,this.completion=Object.assign(Object.assign({type:"type"},e.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"</"+this.name+">",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=e.textContent?e.textContent.map(a=>({label:a,type:"text"})):[]}}const W=/^[:\-\.\w\u00b7-\uffff]*$/;function E(O){return Object.assign(Object.assign({type:"property"},O.completion||{}),{label:O.name})}function G(O){return typeof O=="string"?{label:`"${O}"`,type:"constant"}:/^"/.test(O.label)?O:Object.assign(Object.assign({},O),{label:`"${O.label}"`})}function pO(O,e){let n=[],t=[],a=Object.create(null);for(let l of e){let $=E(l);n.push($),l.global&&t.push($),l.values&&(a[l.name]=l.values.map(G))}let r=[],y=[],m=Object.create(null);for(let l of O){let $=t,o=a;l.attributes&&($=$.concat(l.attributes.map(c=>typeof c=="string"?n.find(f=>f.label==c)||{label:c,type:"property"}:(c.values&&(o==a&&(o=Object.create(o)),o[c.name]=c.values.map(G)),E(c)))));let g=new cO(l,$,o);m[g.name]=g,r.push(g),l.top&&y.push(g)}y.length||(y=r);for(let l=0;l<r.length;l++){let $=O[l],o=r[l];if($.children)for(let g of $.children)m[g]&&o.children.push(m[g]);else o.children=r}return l=>{var $;let{doc:o}=l.state,g=$O(l.state,l.pos);if(!g||g.type=="tag"&&!l.explicit)return null;let{type:c,from:f,context:S}=g;if(c=="openTag"){let s=y,p=_(o,S);if(p){let u=m[p];s=(u==null?void 0:u.children)||r}return{from:f,options:s.map(u=>u.completion),validFor:W}}else if(c=="closeTag"){let s=_(o,S);return s?{from:f,to:l.pos+(o.sliceString(l.pos,l.pos+1)==">"?1:0),options:[(($=m[s])===null||$===void 0?void 0:$.closeNameCompletion)||{label:s+">",type:"type"}],validFor:W}:null}else if(c=="attrName"){let s=m[V(o,S)];return{from:f,options:(s==null?void 0:s.attrs)||t,validFor:W}}else if(c=="attrValue"){let s=iO(o,S,f);if(!s)return null;let p=m[V(o,S)],u=((p==null?void 0:p.attrValues)||a)[s];return!u||!u.length?null:{from:f,to:l.pos+(o.sliceString(l.pos,l.pos+1)=='"'?1:0),options:u,validFor:/^"[^"]*"?$/}}else if(c=="tag"){let s=_(o,S),p=m[s],u=[],P=S&&S.lastChild;s&&(!P||P.name!="CloseTag"||V(o,P)!=s)&&u.push(p?p.closeCompletion:{label:"</"+s+">",type:"type",boost:2});let h=u.concat(((p==null?void 0:p.children)||(S?r:y)).map(d=>d.openCompletion));if(S&&p!=null&&p.text.length){let d=S.firstChild;d.to>l.pos-20&&!/\S/.test(l.state.sliceDoc(d.to,l.pos))&&(h=h.concat(p.text))}return{from:f,options:h,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}else return null}}const R=A.define({name:"xml",parser:yO.configure({props:[I.add({Element(O){let e=/^\s*<\//.test(O.textAfter);return O.lineIndent(O.node.from)+(e?0:O.unit)},"OpenTag CloseTag SelfClosingTag"(O){return O.column(O.node.from)+O.unit}}),N.add({Element(O){let e=O.firstChild,n=O.lastChild;return!e||e.name!="OpenTag"?null:{from:e.to,to:n.name=="CloseTag"?n.from:O.to}}}),U.add({"OpenTag CloseTag":O=>O.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:"<!--",close:"-->"}},indentOnInput:/^\s*<\/$/}});function SO(O={}){return new q(R,R.data.of({autocomplete:pO(O.elements||[],O.attributes||[])}))}export{pO as completeFromSchema,SO as xml,R as xmlLanguage};
|