=p){n+=e.substring(r,f),k=g.UnexpectedEndOfString;break}var i=e.charCodeAt(f);if(34===i){n+=e.substring(r,f),f++;break}if(92!==i){if(i>=0&&i<=31){if(o(i)){n+=e.substring(r,f),k=g.UnexpectedEndOfString;break}k=g.InvalidCharacter}f++}else{if(n+=e.substring(r,f),f++,f>=p){k=g.UnexpectedEndOfString;break}switch(i=e.charCodeAt(f++)){case 34:n+=\'\\"\';break;case 92:n+=\\"\\\\\\\\\\";break;case 47:n+=\\"/\\";break;case 98:n+=\\"\\\\b\\";break;case 102:n+=\\"\\\\f\\";break;case 110:n+=\\"\\\\n\\";break;case 114:n+=\\"\\\\r\\";break;case 116:n+=\\"\\\\t\\";break;case 117:var a=t(4,!0);a>=0?n+=String.fromCharCode(a):k=g.InvalidUnicode;break;default:k=g.InvalidEscapeCharacter}r=f}}return n}function s(){if(m=\\"\\",k=g.None,h=f,f>=p)return h=p,v=y.EOF;var n=e.charCodeAt(f);if(r(n)){do f++,m+=String.fromCharCode(n),n=e.charCodeAt(f);while(r(n));return v=y.Trivia}if(o(n))return f++,m+=String.fromCharCode(n),13===n&&10===e.charCodeAt(f)&&(f++,m+=\\"\\\\n\\"),v=y.LineBreakTrivia;switch(n){case 123:return f++,v=y.OpenBraceToken;case 125:return f++,v=y.CloseBraceToken;case 91:return f++,v=y.OpenBracketToken;case 93:return f++,v=y.CloseBracketToken;case 58:return f++,v=y.ColonToken;case 44:return f++,v=y.CommaToken;case 34:return f++,m=u(),v=y.StringLiteral;case 47:var t=f-1;if(47===e.charCodeAt(f+1)){for(f+=2;f=y.LineCommentTrivia&&e<=y.Trivia);return e}void 0===n&&(n=!1);var f=0,p=e.length,m=\\"\\",h=0,v=y.Unknown,k=g.None;return{setPosition:a,getPosition:function(){return f},scan:n?l:s,getToken:function(){return v},getTokenValue:function(){return m},getTokenOffset:function(){return h},getTokenLength:function(){return f-h},getTokenError:function(){return k}}}function r(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function o(e){return 10===e||13===e||8232===e||8233===e}function i(e){return e>=48&&e<=57}function a(e,n){var r,o,i=t(e),a=[],c=0;do switch(o=i.getPosition(),r=i.scan()){case y.LineCommentTrivia:case y.BlockCommentTrivia:case y.EOF:c!==o&&a.push(e.substring(c,o)),void 0!==n&&a.push(i.getTokenValue().replace(/[^\\\\r\\\\n]/g,n)),c=i.getPosition()}while(r!==y.EOF);return a.join(\\"\\")}function c(e){switch(e){case k.InvalidSymbol:return v(\\"error.invalidSymbol\\",\\"Invalid symbol\\");case k.InvalidNumberFormat:return v(\\"error.invalidNumberFormat\\",\\"Invalid number format\\");case k.PropertyNameExpected:return v(\\"error.propertyNameExpected\\",\\"Property name expected\\");case k.ValueExpected:return v(\\"error.valueExpected\\",\\"Value expected\\");case k.ColonExpected:return v(\\"error.colonExpected\\",\\"Colon expected\\");case k.CommaExpected:return v(\\"error.commaExpected\\",\\"Comma expected\\");case k.CloseBraceExpected:return v(\\"error.closeBraceExpected\\",\\"Closing brace expected\\");case k.CloseBracketExpected:return v(\\"error.closeBracketExpected\\",\\"Closing bracket expected\\");case k.EndOfFileExpected:return v(\\"error.endOfFileExpected\\",\\"End of file expected\\");default:return\\"\\"}}function u(e){switch(typeof e){case\\"boolean\\":return\\"boolean\\";case\\"number\\":return\\"number\\";case\\"string\\":return\\"string\\";default:return\\"null\\"}}function s(e,n){function t(e,n,t,r){a.value=e,a.offset=n,a.length=t,a.type=r,a.columnOffset=void 0,i=a}var r=[],o=new Object,i=void 0,a={value:void 0,offset:void 0,length:void 0,type:void 0},c=!1;try{m(e,{onObjectBegin:function(e,t){if(n<=e)throw o;i=void 0,c=n>e,r.push(\\"\\")},onObjectProperty:function(e,i,a){if(n=t.children.length)return;t=t.children[d]}}return t}}function p(e){if(\\"array\\"===e.type)return e.children.map(p);if(\\"object\\"===e.type){for(var n={},t=0,r=e.children;t0)for(var r=m.getToken();r!==y.EOF;){if(n.indexOf(r)!==-1){a();break}if(t.indexOf(r)!==-1)break;r=a()}}function u(e){var n=m.getTokenValue();return e?E(n):h(n),a(),!0}function s(){switch(m.getToken()){case y.NumericLiteral:var e=0;try{e=JSON.parse(m.getTokenValue()),\\"number\\"!=typeof e&&(c(k.InvalidNumberFormat),e=0)}catch(n){c(k.InvalidNumberFormat)}E(e);break;case y.NullKeyword:E(null);break;case y.TrueKeyword:E(!0);break;case y.FalseKeyword:E(!1);break;default:return!1}return a(),!0}function d(){return m.getToken()!==y.StringLiteral?(c(k.PropertyNameExpected,[],[y.CloseBraceToken,y.CommaToken]),!1):(u(!1),m.getToken()===y.ColonToken?(T(\\":\\"),a(),p()||c(k.ValueExpected,[],[y.CloseBraceToken,y.CommaToken])):c(k.ColonExpected,[],[y.CloseBraceToken,y.CommaToken]),!0)}function l(){g(),a();for(var e=!1;m.getToken()!==y.CloseBraceToken&&m.getToken()!==y.EOF;){if(m.getToken()===y.CommaToken){if(e||c(k.ValueExpected,[],[]),T(\\",\\"),a(),m.getToken()===y.CloseBraceToken&&S)break}else e&&c(k.CommaExpected,[],[]);d()||c(k.ValueExpected,[],[y.CloseBraceToken,y.CommaToken]),e=!0}return v(),m.getToken()!==y.CloseBraceToken?c(k.CloseBraceExpected,[y.CloseBraceToken],[]):a(),!0}function f(){C(),a();for(var e=!1;m.getToken()!==y.CloseBracketToken&&m.getToken()!==y.EOF;)m.getToken()===y.CommaToken?(e||c(k.ValueExpected,[],[]),T(\\",\\"),a()):e&&c(k.CommaExpected,[],[]),p()||c(k.ValueExpected,[],[y.CloseBracketToken,y.CommaToken]),e=!0;return b(),m.getToken()!==y.CloseBracketToken?c(k.CloseBracketExpected,[y.CloseBracketToken],[]):a(),!0}function p(){switch(m.getToken()){case y.OpenBracketToken:return f();case y.OpenBraceToken:return l();case y.StringLiteral:return u(!0);default:return s()}}var m=t(e,!1),g=o(n.onObjectBegin),h=i(n.onObjectProperty),v=o(n.onObjectEnd),C=o(n.onArrayBegin),b=o(n.onArrayEnd),E=i(n.onLiteralValue),T=i(n.onSeparator),x=i(n.onError),_=r&&r.disallowComments,S=r&&r.allowTrailingComma;return a(),m.getToken()===y.EOF||(p()?(m.getToken()!==y.EOF&&c(k.EndOfFileExpected,[],[]),!0):(c(k.ValueExpected,[],[]),!1))}var g,h=e(\\"vscode-nls\\"),v=h.loadMessageBundle();!function(e){e[e.None=0]=\\"None\\",e[e.UnexpectedEndOfComment=1]=\\"UnexpectedEndOfComment\\",e[e.UnexpectedEndOfString=2]=\\"UnexpectedEndOfString\\",e[e.UnexpectedEndOfNumber=3]=\\"UnexpectedEndOfNumber\\",e[e.InvalidUnicode=4]=\\"InvalidUnicode\\",e[e.InvalidEscapeCharacter=5]=\\"InvalidEscapeCharacter\\",e[e.InvalidCharacter=6]=\\"InvalidCharacter\\"}(g=n.ScanError||(n.ScanError={}));var y;!function(e){e[e.Unknown=0]=\\"Unknown\\",e[e.OpenBraceToken=1]=\\"OpenBraceToken\\",e[e.CloseBraceToken=2]=\\"CloseBraceToken\\",e[e.OpenBracketToken=3]=\\"OpenBracketToken\\",e[e.CloseBracketToken=4]=\\"CloseBracketToken\\",e[e.CommaToken=5]=\\"CommaToken\\",e[e.ColonToken=6]=\\"ColonToken\\",e[e.NullKeyword=7]=\\"NullKeyword\\",e[e.TrueKeyword=8]=\\"TrueKeyword\\",e[e.FalseKeyword=9]=\\"FalseKeyword\\",e[e.StringLiteral=10]=\\"StringLiteral\\",e[e.NumericLiteral=11]=\\"NumericLiteral\\",e[e.LineCommentTrivia=12]=\\"LineCommentTrivia\\",e[e.BlockCommentTrivia=13]=\\"BlockCommentTrivia\\",e[e.LineBreakTrivia=14]=\\"LineBreakTrivia\\",e[e.Trivia=15]=\\"Trivia\\",e[e.EOF=16]=\\"EOF\\"}(y=n.SyntaxKind||(n.SyntaxKind={})),n.createScanner=t,n.stripComments=a;var k;!function(e){e[e.InvalidSymbol=0]=\\"InvalidSymbol\\",e[e.InvalidNumberFormat=1]=\\"InvalidNumberFormat\\",e[e.PropertyNameExpected=2]=\\"PropertyNameExpected\\",e[e.ValueExpected=3]=\\"ValueExpected\\",e[e.ColonExpected=4]=\\"ColonExpected\\",e[e.CommaExpected=5]=\\"CommaExpected\\",e[e.CloseBraceExpected=6]=\\"CloseBraceExpected\\",e[e.CloseBracketExpected=7]=\\"CloseBracketExpected\\",e[e.EndOfFileExpected=8]=\\"EndOfFileExpected\\"}(k=n.ParseErrorCode||(n.ParseErrorCode={})),n.getParseErrorMessage=c,n.getLocation=s,n.parse=d,n.parseTree=l,n.findNodeAtLocation=f,n.getNodeValue=p,n.visit=m}),define(\\"jsonc-parser\\",[\\"jsonc-parser/main\\"],function(e){return e}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var n=e(require,exports);void 0!==n&&(module.exports=n)}else\\"function\\"==typeof define&&define.amd&&define(\\"vs/language/json/tokenization\\",[\\"require\\",\\"exports\\",\\"jsonc-parser\\"],e);\\n}(function(e,n){function t(e){return{getInitialState:function(){return new i(null,null,(!1))},tokenize:function(n,t,o,i){return r(e,n,t,o,i)}}}function r(e,t,r,a,c){void 0===a&&(a=0);var u=0,s=!1;switch(r.scanError){case o.ScanError.UnexpectedEndOfString:t=\'\\"\'+t,u=1;break;case o.ScanError.UnexpectedEndOfComment:t=\\"/*\\"+t,u=2}var d,l,f=o.createScanner(t),p=r.lastWasColon;for(l={tokens:[],endState:r.clone()};;){var m=a+f.getPosition(),g=\\"\\";if(d=f.scan(),d===o.SyntaxKind.EOF)break;if(m===a+f.getPosition())throw new Error(\\"Scanner did not advance, next 3 characters are: \\"+t.substr(f.getPosition(),3));switch(s&&(m-=u),s=u>0,d){case o.SyntaxKind.OpenBraceToken:g=n.TOKEN_DELIM_OBJECT,p=!1;break;case o.SyntaxKind.CloseBraceToken:g=n.TOKEN_DELIM_OBJECT,p=!1;break;case o.SyntaxKind.OpenBracketToken:g=n.TOKEN_DELIM_ARRAY,p=!1;break;case o.SyntaxKind.CloseBracketToken:g=n.TOKEN_DELIM_ARRAY,p=!1;break;case o.SyntaxKind.ColonToken:g=n.TOKEN_DELIM_COLON,p=!0;break;case o.SyntaxKind.CommaToken:g=n.TOKEN_DELIM_COMMA,p=!1;break;case o.SyntaxKind.TrueKeyword:case o.SyntaxKind.FalseKeyword:g=n.TOKEN_VALUE_BOOLEAN,p=!1;break;case o.SyntaxKind.NullKeyword:g=n.TOKEN_VALUE_NULL,p=!1;break;case o.SyntaxKind.StringLiteral:g=p?n.TOKEN_VALUE_STRING:n.TOKEN_PROPERTY_NAME,p=!1;break;case o.SyntaxKind.NumericLiteral:g=n.TOKEN_VALUE_NUMBER,p=!1}if(e)switch(d){case o.SyntaxKind.LineCommentTrivia:g=n.TOKEN_COMMENT_LINE;break;case o.SyntaxKind.BlockCommentTrivia:g=n.TOKEN_COMMENT_BLOCK}l.endState=new i(r.getStateData(),f.getTokenError(),p),l.tokens.push({startIndex:m,scopes:g})}return l}Object.defineProperty(n,\\"__esModule\\",{value:!0});var o=e(\\"jsonc-parser\\");n.createTokenizationSupport=t,n.TOKEN_DELIM_OBJECT=\\"delimiter.bracket.json\\",n.TOKEN_DELIM_ARRAY=\\"delimiter.array.json\\",n.TOKEN_DELIM_COLON=\\"delimiter.colon.json\\",n.TOKEN_DELIM_COMMA=\\"delimiter.comma.json\\",n.TOKEN_VALUE_BOOLEAN=\\"keyword.json\\",n.TOKEN_VALUE_NULL=\\"keyword.json\\",n.TOKEN_VALUE_STRING=\\"string.value.json\\",n.TOKEN_VALUE_NUMBER=\\"number.json\\",n.TOKEN_PROPERTY_NAME=\\"string.key.json\\",n.TOKEN_COMMENT_BLOCK=\\"comment.block.json\\",n.TOKEN_COMMENT_LINE=\\"comment.line.json\\";var i=function(){function e(e,n,t){this._state=e,this.scanError=n,this.lastWasColon=t}return e.prototype.clone=function(){return new e(this._state,this.scanError,this.lastWasColon)},e.prototype.equals=function(n){return n===this||!!(n&&n instanceof e)&&(this.scanError===n.scanError&&this.lastWasColon===n.lastWasColon)},e.prototype.getStateData=function(){return this._state},e.prototype.setStateData=function(e){this._state=e},e}()}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var n=e(require,exports);void 0!==n&&(module.exports=n)}else\\"function\\"==typeof define&&define.amd&&define(\\"vs/language/json/jsonMode\\",[\\"require\\",\\"exports\\",\\"./workerManager\\",\\"./languageFeatures\\",\\"./tokenization\\"],e)}(function(e,n){function t(e){var n=[],t=new r.WorkerManager(e);n.push(t);var c=function(){for(var e=[],n=0;n0&&(i.arguments=n),i}function n(e){var t=e;return P.defined(t)&&P.string(t.title)&&P.string(t.title)}e.create=t,e.is=n}(s=t.Command||(t.Command={}));var c;!function(e){function t(e,t){return{range:e,newText:t}}function n(e,t){return{range:{start:e,end:e},newText:t}}function r(e){return{range:e,newText:\\"\\"}}e.replace=t,e.insert=n,e.del=r}(c=t.TextEdit||(t.TextEdit={}));var u;!function(e){function t(e,t){return{textDocument:e,edits:t}}function n(e){var t=e;return P.defined(t)&&p.is(t.textDocument)&&Array.isArray(t.edits)}e.create=t,e.is=n}(u=t.TextDocumentEdit||(t.TextDocumentEdit={}));var l=function(){function e(e){this.edits=e}return e.prototype.insert=function(e,t){this.edits.push(c.insert(e,t))},e.prototype.replace=function(e,t){this.edits.push(c.replace(e,t))},e.prototype[\\"delete\\"]=function(e){this.edits.push(c.del(e))},e.prototype.add=function(e){this.edits.push(e)},e.prototype.all=function(){return this.edits},e.prototype.clear=function(){this.edits.splice(0,this.edits.length)},e}(),f=function(){function e(e){var t=this;this._textEditChanges=Object.create(null),e&&(this._workspaceEdit=e,e.documentChanges?e.documentChanges.forEach(function(e){var n=new l(e.edits);t._textEditChanges[e.textDocument.uri]=n}):e.changes&&Object.keys(e.changes).forEach(function(n){var r=new l(e.changes[n]);t._textEditChanges[n]=r}))}return Object.defineProperty(e.prototype,\\"edit\\",{get:function(){return this._workspaceEdit},enumerable:!0,configurable:!0}),e.prototype.getTextEditChange=function(e){if(p.is(e)){if(this._workspaceEdit||(this._workspaceEdit={documentChanges:[]}),!this._workspaceEdit.documentChanges)throw new Error(\\"Workspace edit is not configured for versioned document changes.\\");var t=e,n=this._textEditChanges[t.uri];if(!n){var r=[],i={textDocument:t,edits:r};this._workspaceEdit.documentChanges.push(i),n=new l(r),this._textEditChanges[t.uri]=n}return n}if(this._workspaceEdit||(this._workspaceEdit={changes:Object.create(null)}),!this._workspaceEdit.changes)throw new Error(\\"Workspace edit is not configured for normal text edit changes.\\");var n=this._textEditChanges[e];if(!n){var r=[];this._workspaceEdit.changes[e]=r,n=new l(r),this._textEditChanges[e]=n}return n},e}();t.WorkspaceChange=f;var d;!function(e){function t(e){return{uri:e}}function n(e){var t=e;return P.defined(t)&&P.string(t.uri)}e.create=t,e.is=n}(d=t.TextDocumentIdentifier||(t.TextDocumentIdentifier={}));var p;!function(e){function t(e,t){return{uri:e,version:t}}function n(e){var t=e;return P.defined(t)&&P.string(t.uri)&&P.number(t.version)}e.create=t,e.is=n}(p=t.VersionedTextDocumentIdentifier||(t.VersionedTextDocumentIdentifier={}));var h;!function(e){function t(e,t,n,r){return{uri:e,languageId:t,version:n,text:r}}function n(e){var t=e;return P.defined(t)&&P.string(t.uri)&&P.string(t.languageId)&&P.number(t.version)&&P.string(t.text)}e.create=t,e.is=n}(h=t.TextDocumentItem||(t.TextDocumentItem={}));var m;!function(e){e.Text=1,e.Method=2,e.Function=3,e.Constructor=4,e.Field=5,e.Variable=6,e.Class=7,e.Interface=8,e.Module=9,e.Property=10,e.Unit=11,e.Value=12,e.Enum=13,e.Keyword=14,e.Snippet=15,e.Color=16,e.File=17,e.Reference=18}(m=t.CompletionItemKind||(t.CompletionItemKind={}));var g;!function(e){e.PlainText=1,e.Snippet=2}(g=t.InsertTextFormat||(t.InsertTextFormat={}));var v;!function(e){function t(e){return{label:e}}e.create=t}(v=t.CompletionItem||(t.CompletionItem={}));var y;!function(e){function t(e,t){return{items:e?e:[],isIncomplete:!!t}}e.create=t}(y=t.CompletionList||(t.CompletionList={}));var x;!function(e){function t(e){return e.replace(/[\\\\\\\\`*_{}[\\\\]()#+\\\\-.!]/g,\\"\\\\\\\\$&\\")}e.fromPlainText=t}(x=t.MarkedString||(t.MarkedString={}));var b;!function(e){function t(e,t){return t?{label:e,documentation:t}:{label:e}}e.create=t}(b=t.ParameterInformation||(t.ParameterInformation={}));var S;!function(e){function t(e,t){for(var n=[],r=2;r0&&e.push(t.length),this._lineOffsets=e}return this._lineOffsets},e.prototype.positionAt=function(e){e=Math.max(Math.min(e,this._content.length),0);var t=this.getLineOffsets(),r=0,i=t.length;if(0===i)return n.create(0,e);for(;re?i=o:r=o+1}var a=r-1;return n.create(a,e-t[a])},e.prototype.offsetAt=function(e){var t=this.getLineOffsets();if(e.line>=t.length)return this._content.length;if(e.line<0)return 0;var n=t[e.line],r=e.line+1=48&&o<=57)i=16*i+o-48;else if(o>=65&&o<=70)i=16*i+o-65+10;else{if(!(o>=97&&o<=102))break;i=16*i+o-97+10}d++,r++}return r=p){t+=e.substring(r,d),x=m.UnexpectedEndOfString;break}var o=e.charCodeAt(d);if(34===o){t+=e.substring(r,d),d++;break}if(92!==o){if(o>=0&&o<=31){if(i(o)){t+=e.substring(r,d),x=m.UnexpectedEndOfString;break}x=m.InvalidCharacter}d++}else{if(t+=e.substring(r,d),d++,d>=p){x=m.UnexpectedEndOfString;break}switch(o=e.charCodeAt(d++)){case 34:t+=\'\\"\';break;case 92:t+=\\"\\\\\\\\\\";break;case 47:t+=\\"/\\";break;case 98:t+=\\"\\\\b\\";break;case 102:t+=\\"\\\\f\\";break;case 110:t+=\\"\\\\n\\";break;case 114:t+=\\"\\\\r\\";break;case 116:t+=\\"\\\\t\\";break;case 117:var a=n(4,!0);a>=0?t+=String.fromCharCode(a):x=m.InvalidUnicode;break;default:x=m.InvalidEscapeCharacter}r=d}}return t}function u(){if(h=\\"\\",x=m.None,g=d,d>=p)return g=p,v=y.EOF;var t=e.charCodeAt(d);if(r(t)){do d++,h+=String.fromCharCode(t),t=e.charCodeAt(d);while(r(t));return v=y.Trivia}if(i(t))return d++,h+=String.fromCharCode(t),13===t&&10===e.charCodeAt(d)&&(d++,h+=\\"\\\\n\\"),v=y.LineBreakTrivia;switch(t){case 123:return d++,v=y.OpenBraceToken;case 125:return d++,v=y.CloseBraceToken;case 91:return d++,v=y.OpenBracketToken;case 93:return d++,v=y.CloseBracketToken;case 58:return d++,v=y.ColonToken;case 44:return d++,v=y.CommaToken;case 34:return d++,h=c(),v=y.StringLiteral;case 47:var n=d-1;if(47===e.charCodeAt(d+1)){for(d+=2;d=y.LineCommentTrivia&&e<=y.Trivia);return e}void 0===t&&(t=!1);var d=0,p=e.length,h=\\"\\",g=0,v=y.Unknown,x=m.None;return{setPosition:a,getPosition:function(){return d},scan:t?f:u,getToken:function(){return v},getTokenValue:function(){return h},getTokenOffset:function(){return g},getTokenLength:function(){return d-g},getTokenError:function(){return x}}}function r(e){return 32===e||9===e||11===e||12===e||160===e||5760===e||e>=8192&&e<=8203||8239===e||8287===e||12288===e||65279===e}function i(e){return 10===e||13===e||8232===e||8233===e}function o(e){return e>=48&&e<=57}function a(e,t){var r,i,o=n(e),a=[],s=0;do switch(i=o.getPosition(),r=o.scan()){case y.LineCommentTrivia:case y.BlockCommentTrivia:case y.EOF:s!==i&&a.push(e.substring(s,i)),void 0!==t&&a.push(o.getTokenValue().replace(/[^\\\\r\\\\n]/g,t)),s=o.getPosition()}while(r!==y.EOF);return a.join(\\"\\")}function s(e){switch(e){case x.InvalidSymbol:return v(\\"error.invalidSymbol\\",\\"Invalid symbol\\");case x.InvalidNumberFormat:return v(\\"error.invalidNumberFormat\\",\\"Invalid number format\\");case x.PropertyNameExpected:return v(\\"error.propertyNameExpected\\",\\"Property name expected\\");case x.ValueExpected:return v(\\"error.valueExpected\\",\\"Value expected\\");case x.ColonExpected:return v(\\"error.colonExpected\\",\\"Colon expected\\");case x.CommaExpected:return v(\\"error.commaExpected\\",\\"Comma expected\\");case x.CloseBraceExpected:return v(\\"error.closeBraceExpected\\",\\"Closing brace expected\\");case x.CloseBracketExpected:return v(\\"error.closeBracketExpected\\",\\"Closing bracket expected\\");case x.EndOfFileExpected:return v(\\"error.endOfFileExpected\\",\\"End of file expected\\");default:return\\"\\"}}function c(e){switch(typeof e){case\\"boolean\\":return\\"boolean\\";case\\"number\\":return\\"number\\";case\\"string\\":return\\"string\\";default:return\\"null\\"}}function u(e,t){function n(e,t,n,r){a.value=e,a.offset=t,a.length=n,a.type=r,a.columnOffset=void 0,o=a}var r=[],i=new Object,o=void 0,a={value:void 0,offset:void 0,length:void 0,type:void 0},s=!1;try{h(e,{onObjectBegin:function(e,n){if(t<=e)throw i;o=void 0,s=t>e,r.push(\\"\\")},onObjectProperty:function(e,o,a){if(t=n.children.length)return;n=n.children[l]}}return n}}function p(e){if(\\"array\\"===e.type)return e.children.map(p);if(\\"object\\"===e.type){for(var t={},n=0,r=e.children;n0)for(var r=h.getToken();r!==y.EOF;){if(t.indexOf(r)!==-1){a();break}if(n.indexOf(r)!==-1)break;r=a()}}function c(e){var t=h.getTokenValue();return e?T(t):g(t),a(),!0}function u(){switch(h.getToken()){case y.NumericLiteral:var e=0;try{e=JSON.parse(h.getTokenValue()),\\"number\\"!=typeof e&&(s(x.InvalidNumberFormat),e=0)}catch(t){s(x.InvalidNumberFormat)}T(e);break;case y.NullKeyword:T(null);break;case y.TrueKeyword:T(!0);break;case y.FalseKeyword:T(!1);break;default:return!1}return a(),!0}function l(){return h.getToken()!==y.StringLiteral?(s(x.PropertyNameExpected,[],[y.CloseBraceToken,y.CommaToken]),!1):(c(!1),h.getToken()===y.ColonToken?(C(\\":\\"),a(),p()||s(x.ValueExpected,[],[y.CloseBraceToken,y.CommaToken])):s(x.ColonExpected,[],[y.CloseBraceToken,y.CommaToken]),!0)}function f(){m(),a();for(var e=!1;h.getToken()!==y.CloseBraceToken&&h.getToken()!==y.EOF;){if(h.getToken()===y.CommaToken){if(e||s(x.ValueExpected,[],[]),C(\\",\\"),a(),h.getToken()===y.CloseBraceToken&&E)break}else e&&s(x.CommaExpected,[],[]);l()||s(x.ValueExpected,[],[y.CloseBraceToken,y.CommaToken]),e=!0}return v(),h.getToken()!==y.CloseBraceToken?s(x.CloseBraceExpected,[y.CloseBraceToken],[]):a(),!0}function d(){b(),a();for(var e=!1;h.getToken()!==y.CloseBracketToken&&h.getToken()!==y.EOF;)h.getToken()===y.CommaToken?(e||s(x.ValueExpected,[],[]),C(\\",\\"),a()):e&&s(x.CommaExpected,[],[]),p()||s(x.ValueExpected,[],[y.CloseBracketToken,y.CommaToken]),e=!0;return S(),h.getToken()!==y.CloseBracketToken?s(x.CloseBracketExpected,[y.CloseBracketToken],[]):a(),!0}function p(){switch(h.getToken()){case y.OpenBracketToken:return d();case y.OpenBraceToken:return f();case y.StringLiteral:return c(!0);default:return u()}}var h=n(e,!1),m=i(t.onObjectBegin),g=o(t.onObjectProperty),v=i(t.onObjectEnd),b=i(t.onArrayBegin),S=i(t.onArrayEnd),T=o(t.onLiteralValue),C=o(t.onSeparator),k=o(t.onError),O=r&&r.disallowComments,E=r&&r.allowTrailingComma;return a(),h.getToken()===y.EOF||(p()?(h.getToken()!==y.EOF&&s(x.EndOfFileExpected,[],[]),!0):(s(x.ValueExpected,[],[]),!1))}var m,g=e(\\"vscode-nls\\"),v=g.loadMessageBundle();!function(e){e[e.None=0]=\\"None\\",e[e.UnexpectedEndOfComment=1]=\\"UnexpectedEndOfComment\\",e[e.UnexpectedEndOfString=2]=\\"UnexpectedEndOfString\\",e[e.UnexpectedEndOfNumber=3]=\\"UnexpectedEndOfNumber\\",e[e.InvalidUnicode=4]=\\"InvalidUnicode\\",e[e.InvalidEscapeCharacter=5]=\\"InvalidEscapeCharacter\\",e[e.InvalidCharacter=6]=\\"InvalidCharacter\\"}(m=t.ScanError||(t.ScanError={}));var y;!function(e){e[e.Unknown=0]=\\"Unknown\\",e[e.OpenBraceToken=1]=\\"OpenBraceToken\\",e[e.CloseBraceToken=2]=\\"CloseBraceToken\\",e[e.OpenBracketToken=3]=\\"OpenBracketToken\\",e[e.CloseBracketToken=4]=\\"CloseBracketToken\\",e[e.CommaToken=5]=\\"CommaToken\\",e[e.ColonToken=6]=\\"ColonToken\\",e[e.NullKeyword=7]=\\"NullKeyword\\",e[e.TrueKeyword=8]=\\"TrueKeyword\\",e[e.FalseKeyword=9]=\\"FalseKeyword\\",e[e.StringLiteral=10]=\\"StringLiteral\\",e[e.NumericLiteral=11]=\\"NumericLiteral\\",e[e.LineCommentTrivia=12]=\\"LineCommentTrivia\\",e[e.BlockCommentTrivia=13]=\\"BlockCommentTrivia\\",e[e.LineBreakTrivia=14]=\\"LineBreakTrivia\\",e[e.Trivia=15]=\\"Trivia\\",e[e.EOF=16]=\\"EOF\\"}(y=t.SyntaxKind||(t.SyntaxKind={})),t.createScanner=n,t.stripComments=a;var x;!function(e){e[e.InvalidSymbol=0]=\\"InvalidSymbol\\",e[e.InvalidNumberFormat=1]=\\"InvalidNumberFormat\\",e[e.PropertyNameExpected=2]=\\"PropertyNameExpected\\",e[e.ValueExpected=3]=\\"ValueExpected\\",e[e.ColonExpected=4]=\\"ColonExpected\\",e[e.CommaExpected=5]=\\"CommaExpected\\",e[e.CloseBraceExpected=6]=\\"CloseBraceExpected\\",e[e.CloseBracketExpected=7]=\\"CloseBracketExpected\\",e[e.EndOfFileExpected=8]=\\"EndOfFileExpected\\"}(x=t.ParseErrorCode||(t.ParseErrorCode={})),t.getParseErrorMessage=s,t.getLocation=u,t.parse=l,t.parseTree=f,t.findNodeAtLocation=d,t.getNodeValue=p,t.visit=h}),define(\\"jsonc-parser\\",[\\"jsonc-parser/main\\"],function(e){return e}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/utils/json\\",[\\"require\\",\\"exports\\"],e)}(function(e,t){function n(e,t,r){if(null!==e&&\\"object\\"==typeof e){var i=t+\\"\\\\t\\";if(Array.isArray(e)){if(0===e.length)return\\"[]\\";for(var o=\\"[\\\\n\\",a=0;a=0;t--)if(this.contributions[t].resolveCompletion){var n=this.contributions[t].resolveCompletion(e);if(n)return n}return this.promise.resolve(e)},e.prototype.doComplete=function(e,t,n){var r=this,o={items:[],isIncomplete:!1},a=e.offsetAt(t),s=n.getNodeFromOffsetEndInclusive(a);if(this.isInComment(e,s?s.start:0,a))return Promise.resolve(o);var c=this.getCurrentWord(e,a),u=null;if(!s||\\"string\\"!==s.type&&\\"number\\"!==s.type&&\\"boolean\\"!==s.type&&\\"null\\"!==s.type){var l=a-c.length;l>0&&\'\\"\'===e.getText()[l-1]&&l--,u=i.Range.create(e.positionAt(l),t)}else u=i.Range.create(e.positionAt(s.start),e.positionAt(s.end));var f={},d={add:function(e){var t=f[e.label];t?t.documentation||(t.documentation=e.documentation):(f[e.label]=e,u&&(e.textEdit=i.TextEdit.replace(u,e.insertText)),o.items.push(e))},setAsIncomplete:function(){o.isIncomplete=!0},error:function(e){console.error(e)},log:function(e){console.log(e)},getNumberOfProposals:function(){return o.items.length}};return this.schemaService.getSchemaForResource(e.uri,n).then(function(t){var l=[],p=!0,h=\\"\\",m=null;if(s&&\\"string\\"===s.type){var g=s;g.isKey&&(p=!(s.parent&&s.parent.value),m=s.parent?s.parent:null,h=e.getText().substring(s.start+1,s.end-1),s.parent&&(s=s.parent.parent))}if(s&&\\"object\\"===s.type){if(s.start===a)return o;var v=s.properties;v.forEach(function(e){m&&m===e||(f[e.key.value]=i.CompletionItem.create(\\"__\\"))});var y=\\"\\";p&&(y=r.evaluateSeparatorAfter(e,e.offsetAt(u.end))),t?r.getPropertyCompletions(t,n,s,p,y,d):r.getSchemaLessPropertyCompletions(n,s,h,d);var x=s.getPath();r.contributions.forEach(function(t){var n=t.collectPropertyCompletions(e.uri,x,c,p,\\"\\"===y,d);n&&l.push(n)}),!t&&c.length>0&&\'\\"\'!==e.getText().charAt(a-c.length-1)&&d.add({kind:i.CompletionItemKind.Property,label:r.getLabelForValue(c),insertText:r.getInsertTextForProperty(c,null,!1,y),insertTextFormat:i.InsertTextFormat.Snippet,documentation:\\"\\"})}var b=a;!s||\\"string\\"!==s.type&&\\"number\\"!==s.type&&\\"boolean\\"!==s.type&&\\"null\\"!==s.type||(b=s.end,s=s.parent);var S=\\"\\";s&&(S=r.evaluateSeparatorAfter(e,b));var T={};if(t?r.getValueCompletions(t,n,s,a,S,d,T):r.getSchemaLessValueCompletions(n,s,a,S,e,d),s){if(\\"property\\"===s.type&&a>s.colonOffset){var C=s.key.value,k=s.value;if(!k||a<=k.end){var O=s.parent.getPath();r.contributions.forEach(function(t){var n=t.collectValueCompletions(e.uri,O,C,d);n&&l.push(n)})}}}else r.contributions.forEach(function(t){var n=t.collectDefaultCompletions(e.uri,d);n&&l.push(n)});return r.promise.all(l).then(function(){return 0===d.getNumberOfProposals()&&r.addFillerValueCompletions(T,S,d),o})})},e.prototype.getPropertyCompletions=function(e,t,n,r,o,a){var s=this,c=[];t.validate(e.schema,c,n.start),c.forEach(function(e){if(e.node===n&&!e.inverted){var t=e.schema.properties;t&&Object.keys(t).forEach(function(e){var n=t[e];n.deprecationMessage||a.add({kind:i.CompletionItemKind.Property,label:e,insertText:s.getInsertTextForProperty(e,n,r,o),insertTextFormat:i.InsertTextFormat.Snippet,filterText:s.getFilterTextForValue(e),documentation:n.description||\\"\\"})})}})},e.prototype.getSchemaLessPropertyCompletions=function(e,t,n,r){var o=this,a=function(e){e.properties.forEach(function(e){var t=e.key.value;r.add({kind:i.CompletionItemKind.Property,label:t,insertText:o.getInsertTextForValue(t,\\"\\"),insertTextFormat:i.InsertTextFormat.Snippet,filterText:o.getFilterTextForValue(t),documentation:\\"\\"})})};if(t.parent)if(\\"property\\"===t.parent.type){var s=t.parent.key.value;e.visit(function(e){var n=e;return\\"property\\"===e.type&&e!==t.parent&&n.key.value===s&&n.value&&\\"object\\"===n.value.type&&a(n.value),!0})}else\\"array\\"===t.parent.type&&t.parent.items.forEach(function(e){\\"object\\"===e.type&&e!==t&&a(e)});else\\"object\\"===t.type&&r.add({kind:i.CompletionItemKind.Property,label:\\"$schema\\",insertText:this.getInsertTextForProperty(\\"$schema\\",null,!0,\\"\\"),insertTextFormat:i.InsertTextFormat.Snippet,documentation:\\"\\",filterText:this.getFilterTextForValue(\\"$schema\\")})},e.prototype.getSchemaLessValueCompletions=function(e,t,n,r,o,a){var s=this,c=function(e){e.parent.contains(n,!0)||a.add({kind:s.getSuggestionKind(e.type),label:s.getLabelTextForMatchingNode(e,o),insertText:s.getInsertTextForMatchingNode(e,o,r),insertTextFormat:i.InsertTextFormat.Snippet,documentation:\\"\\"}),\\"boolean\\"===e.type&&s.addBooleanValueCompletion(!e.getValue(),r,a)};if(t){if(\\"property\\"===t.type){var u=t;if(n>u.colonOffset){var l=u.value;if(l&&(n>l.end||\\"object\\"===l.type||\\"array\\"===l.type))return;var f=u.key.value;e.visit(function(e){var t=e;return\\"property\\"===e.type&&t.key.value===f&&t.value&&c(t.value),!0}),\\"$schema\\"===f&&t.parent&&!t.parent.parent&&this.addDollarSchemaCompletions(r,a)}}if(\\"array\\"===t.type)if(t.parent&&\\"property\\"===t.parent.type){var d=t.parent.key.value;e.visit(function(e){var t=e;return\\"property\\"===e.type&&t.key.value===d&&t.value&&\\"array\\"===t.value.type&&t.value.items.forEach(function(e){c(e)}),!0})}else t.items.forEach(function(e){c(e)})}else a.add({kind:this.getSuggestionKind(\\"object\\"),label:\\"Empty object\\",insertText:this.getInsertTextForValue({},\\"\\"),insertTextFormat:i.InsertTextFormat.Snippet,documentation:\\"\\"}),a.add({kind:this.getSuggestionKind(\\"array\\"),label:\\"Empty array\\",insertText:this.getInsertTextForValue([],\\"\\"),insertTextFormat:i.InsertTextFormat.Snippet,documentation:\\"\\"})},e.prototype.getValueCompletions=function(e,t,n,r,i,o,a){var s=this;if(n){var c=null;if(\\"property\\"===n.type&&r>n.colonOffset){var u=n.value;if(u&&r>u.end)return;c=n.key.value,n=n.parent}if(n&&(null!==c||\\"array\\"===n.type)){var l=[];t.validate(e.schema,l,n.start),l.forEach(function(e){if(e.node===n&&!e.inverted&&e.schema&&(e.schema.items&&s.addSchemaValueCompletions(e.schema.items,i,o,a),e.schema.properties)){var t=e.schema.properties[c];t&&s.addSchemaValueCompletions(t,i,o,a)}}),\\"$schema\\"!==c||n.parent||this.addDollarSchemaCompletions(i,o),a[\\"boolean\\"]&&(this.addBooleanValueCompletion(!0,i,o),this.addBooleanValueCompletion(!1,i,o)),a[\\"null\\"]&&this.addNullValueCompletion(i,o)}}else this.addSchemaValueCompletions(e.schema,\\"\\",o,a)},e.prototype.addSchemaValueCompletions=function(e,t,n,r){var i=this;this.addDefaultValueCompletions(e,t,n),this.addEnumValueCompletions(e,t,n),this.collectTypes(e,r),Array.isArray(e.allOf)&&e.allOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,n,r)}),Array.isArray(e.anyOf)&&e.anyOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,n,r)}),Array.isArray(e.oneOf)&&e.oneOf.forEach(function(e){return i.addSchemaValueCompletions(e,t,n,r)})},e.prototype.addDefaultValueCompletions=function(e,t,n,r){var o=this;void 0===r&&(r=0);var s=!1;if(e[\\"default\\"]){for(var c=e.type,u=e[\\"default\\"],l=r;l>0;l--)u=[u],c=\\"array\\";n.add({kind:this.getSuggestionKind(c),label:this.getLabelForValue(u),insertText:this.getInsertTextForValue(u,t),insertTextFormat:i.InsertTextFormat.Snippet,detail:a(\\"json.suggest.default\\",\\"Default value\\")}),s=!0}Array.isArray(e.defaultSnippets)&&e.defaultSnippets.forEach(function(a){var c,u=e.type,l=a.body,f=a.label;if(l){for(var d=e.type,p=r;p>0;p--)l=[l],d=\\"array\\";c=o.getInsertTextForSnippetValue(l,t),f=f||o.getLabelForSnippetValue(l)}else if(a.bodyText){for(var h=\\"\\",m=\\"\\",g=\\"\\",p=r;p>0;p--)h=h+g+\\"[\\\\n\\",m=m+\\"\\\\n\\"+g+\\"]\\",g+=\\"\\\\t\\",u=\\"array\\";c=h+g+a.bodyText.split(\\"\\\\n\\").join(\\"\\\\n\\"+g)+m+t,f=f||c}n.add({kind:o.getSuggestionKind(u),label:f,documentation:a.description,insertText:c,insertTextFormat:i.InsertTextFormat.Snippet,filterText:c}),s=!0}),s||!e.items||Array.isArray(e.items)||this.addDefaultValueCompletions(e.items,t,n,r+1);\\n},e.prototype.addEnumValueCompletions=function(e,t,n){if(Array.isArray(e[\\"enum\\"]))for(var r=0,o=e[\\"enum\\"].length;r57?t.substr(0,57).trim()+\\"...\\":t},e.prototype.getFilterTextForValue=function(e){return JSON.stringify(e)},e.prototype.getLabelForSnippetValue=function(e){var t=JSON.stringify(e);return t=t.replace(/\\\\$\\\\{\\\\d+:([^}]+)\\\\}|\\\\$\\\\d+/g,\\"$1\\"),t.length>57?t.substr(0,57).trim()+\\"...\\":t},e.prototype.getInsertTextForPlainText=function(e){return e.replace(/[\\\\\\\\\\\\$\\\\}]/g,\\"\\\\\\\\$&\\")},e.prototype.getInsertTextForValue=function(e,t){var n=JSON.stringify(e,null,\\"\\\\t\\");return\\"{}\\"===n?\\"{\\\\n\\\\t$1\\\\n}\\"+t:\\"[]\\"===n?\\"[\\\\n\\\\t$1\\\\n]\\"+t:this.getInsertTextForPlainText(n+t)},e.prototype.getInsertTextForSnippetValue=function(e,t){var n=function(e){return\\"string\\"==typeof e&&\\"^\\"===e[0]?e.substr(1):JSON.stringify(e)};return r.stringifyObject(e,\\"\\",n)+t},e.prototype.getInsertTextForGuessedValue=function(e,t){switch(typeof e){case\\"object\\":return null===e?\\"${1:null}\\"+t:this.getInsertTextForValue(e,t);case\\"string\\":var n=JSON.stringify(e);return n=n.substr(1,n.length-2),n=this.getInsertTextForPlainText(n),\'\\"${1:\'+n+\'}\\"\'+t;case\\"number\\":case\\"boolean\\":return\\"${1:\\"+JSON.stringify(e)+\\"}\\"+t}return this.getInsertTextForValue(e,t)},e.prototype.getSuggestionKind=function(e){if(Array.isArray(e)){var t=e;e=t.length>0?t[0]:null}if(!e)return i.CompletionItemKind.Value;switch(e){case\\"string\\":return i.CompletionItemKind.Value;case\\"object\\":return i.CompletionItemKind.Module;case\\"property\\":return i.CompletionItemKind.Property;default:return i.CompletionItemKind.Value}},e.prototype.getLabelTextForMatchingNode=function(e,t){switch(e.type){case\\"array\\":return\\"[]\\";case\\"object\\":return\\"{}\\";default:var n=t.getText().substr(e.start,e.end-e.start);return n}},e.prototype.getInsertTextForMatchingNode=function(e,t,n){switch(e.type){case\\"array\\":return this.getInsertTextForValue([],n);case\\"object\\":return this.getInsertTextForValue({},n);default:var r=t.getText().substr(e.start,e.end-e.start)+n;return this.getInsertTextForPlainText(r)}},e.prototype.getInsertTextForProperty=function(e,t,n,r){var i=this.getInsertTextForValue(e,\\"\\");if(!n)return i;var o=i+\\": \\";if(t){var a=t[\\"default\\"];if(\\"undefined\\"!=typeof a)o+=this.getInsertTextForGuessedValue(a,\\"\\");else if(t[\\"enum\\"]&&t[\\"enum\\"].length>0)o+=this.getInsertTextForGuessedValue(t[\\"enum\\"][0],\\"\\");else{var s=Array.isArray(t.type)?t.type[0]:t.type;switch(s||(t.properties?s=\\"object\\":t.items&&(s=\\"array\\")),s){case\\"boolean\\":o+=\\"${1:false}\\";break;case\\"string\\":o+=\'\\"$1\\"\';break;case\\"object\\":o+=\\"{\\\\n\\\\t$1\\\\n}\\";break;case\\"array\\":o+=\\"[\\\\n\\\\t$1\\\\n]\\";break;case\\"number\\":case\\"integer\\":o+=\\"${1:0}\\";break;case\\"null\\":o+=\\"${1:null}\\";break;default:return i}}}else o+=\\"$1\\";return o+=r},e.prototype.getCurrentWord=function(e,t){for(var n=t-1,r=e.getText();n>=0&&\' \\\\t\\\\n\\\\r\\\\x0B\\":{[,]}\'.indexOf(r.charAt(n))===-1;)n--;return r.substring(n+1,t)},e.prototype.evaluateSeparatorAfter=function(e,t){var r=n.createScanner(e.getText(),!0);r.setPosition(t);var i=r.scan();switch(i){case n.SyntaxKind.CommaToken:case n.SyntaxKind.CloseBraceToken:case n.SyntaxKind.CloseBracketToken:case n.SyntaxKind.EOF:return\\"\\";default:return\\",\\"}},e.prototype.isInComment=function(e,t,r){var i=n.createScanner(e.getText(),!1);i.setPosition(t);for(var o=i.scan();o!==n.SyntaxKind.EOF&&i.getTokenOffset()+i.getTokenLength()a.start+1&&o=0;p--){var h=this.contributions[p],m=h.getInfoContribution(e.uri,d);if(m)return m.then(function(e){return f(e)})}return this.schemaService.getSchemaForResource(e.uri,i).then(function(e){if(e){var t=[];i.validate(e.schema,t,a.start);var r=null,o=null,s=null,c=null;t.every(function(e){if(e.node===a&&!e.inverted&&e.schema&&(r=r||e.schema.title,o=o||e.schema.description,e.schema[\\"enum\\"]&&e.schema.enumDescriptions)){var t=e.schema[\\"enum\\"].indexOf(a.getValue());s=e.schema.enumDescriptions[t],c=e.schema[\\"enum\\"][t],\\"string\\"!=typeof c&&(c=JSON.stringify(c))}return!0});var u=\\"\\";return r&&(u=n(r)),o&&(u.length>0&&(u+=\\"\\\\n\\\\n\\"),u+=n(o)),s&&(u.length>0&&(u+=\\"\\\\n\\\\n\\"),u+=\\"`\\"+n(c)+\\"`: \\"+n(s)),f([u])}})},e}();t.JSONHover=i}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/services/jsonValidation\\",[\\"require\\",\\"exports\\",\\"vscode-languageserver-types\\"],e)}(function(e,t){var n=e(\\"vscode-languageserver-types\\"),r=function(){function e(e,t){this.jsonSchemaService=e,this.promise=t,this.validationEnabled=!0}return e.prototype.configure=function(e){e&&(this.validationEnabled=e.validate)},e.prototype.doValidation=function(e,t){return this.validationEnabled?this.jsonSchemaService.getSchemaForResource(e.uri,t).then(function(r){if(r)if(r.errors.length&&t.root){var i=t.root,o=\\"object\\"===i.type?i.getFirstProperty(\\"$schema\\"):null;if(o){var a=o.value||o;t.warnings.push({location:{start:a.start,end:a.end},message:r.errors[0]})}else t.warnings.push({location:{start:i.start,end:i.start+1},message:r.errors[0]})}else t.validate(r.schema);var s=[],c={};return t.errors.concat(t.warnings).forEach(function(r,i){var o=r.location.start+\\" \\"+r.location.end+\\" \\"+r.message;if(!c[o]){c[o]=!0;var a={start:e.positionAt(r.location.start),end:e.positionAt(r.location.end)};s.push({severity:i>=t.errors.length?n.DiagnosticSeverity.Warning:n.DiagnosticSeverity.Error,range:a,message:r.message})}}),s}):this.promise.resolve([])},e}();t.JSONValidation=r}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/utils/strings\\",[\\"require\\",\\"exports\\"],e)}(function(e,t){function n(e,t){if(e.length0?e.lastIndexOf(t)===n:0===n&&e===t}function i(e){return e.replace(/[\\\\-\\\\\\\\\\\\{\\\\}\\\\+\\\\?\\\\|\\\\^\\\\$\\\\.\\\\,\\\\[\\\\]\\\\(\\\\)\\\\#\\\\s]/g,\\"\\\\\\\\$&\\").replace(/[\\\\*]/g,\\".*\\")}function o(e,t){for(var n=\\"\\";t>0;)1===(1&t)&&(n+=e),e+=e,t>>>=1;return n}t.startsWith=n,t.endsWith=r,t.convertSimple2RegExpPattern=i,t.repeat=o}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/services/jsonDocumentSymbols\\",[\\"require\\",\\"exports\\",\\"../utils/strings\\",\\"vscode-languageserver-types\\"],e)}(function(e,t){var n=e(\\"../utils/strings\\"),r=e(\\"vscode-languageserver-types\\"),i=function(){function e(e){this.schemaService=e}return e.prototype.findDocumentSymbols=function(e,t){var i=this,o=t.root;if(!o)return null;var a=e.uri;if((\\"vscode://defaultsettings/keybindings.json\\"===a||n.endsWith(a.toLowerCase(),\\"/user/keybindings.json\\"))&&\\"array\\"===o.type){var s=[];return o.items.forEach(function(t){if(\\"object\\"===t.type){var n=t.getFirstProperty(\\"key\\");if(n&&n.value){var i=r.Location.create(e.uri,r.Range.create(e.positionAt(t.start),e.positionAt(t.end)));s.push({name:n.value.getValue(),kind:r.SymbolKind.Function,location:i})}}}),s}var c=function(t,n,o){if(\\"array\\"===n.type)n.items.forEach(function(e){c(t,e,o)});else if(\\"object\\"===n.type){var a=n;a.properties.forEach(function(n){var a=r.Location.create(e.uri,r.Range.create(e.positionAt(n.start),e.positionAt(n.end))),s=n.value;if(s){var u=o?o+\\".\\"+n.key.value:n.key.value;t.push({name:n.key.getValue(),kind:i.getSymbolKind(s.type),location:a,containerName:o}),c(t,s,u)}})}return t},u=c([],o,void 0);return u},e.prototype.getSymbolKind=function(e){switch(e){case\\"object\\":return r.SymbolKind.Module;case\\"string\\":return r.SymbolKind.String;case\\"number\\":return r.SymbolKind.Number;case\\"array\\":return r.SymbolKind.Array;case\\"boolean\\":return r.SymbolKind.Boolean;default:return r.SymbolKind.Variable}},e.prototype.findColorSymbols=function(e,t){return this.schemaService.getSchemaForResource(e.uri,t).then(function(n){var i=[];if(n){var o=[];t.validate(n.schema,o);for(var a={},s=0,c=o;s0){for(c--;c>0&&/\\\\s/.test(e.charAt(c));)c--;u=c+1}O.errors.push({message:t,location:{start:c,end:u},code:r})}if(o&&g(o,!1),a.length+s.length>0)for(var l=E.getToken();l!==i.SyntaxKind.EOF;){if(a.indexOf(l)!==-1){n();break}if(s.indexOf(l)!==-1)break;l=n()}return o}function c(){switch(E.getTokenError()){case i.ScanError.InvalidUnicode:return a(s(\\"InvalidUnicode\\",\\"Invalid unicode sequence in string\\"),r.InvalidUnicode),!0;case i.ScanError.InvalidEscapeCharacter:return a(s(\\"InvalidEscapeCharacter\\",\\"Invalid escape character in string\\"),r.InvalidEscapeCharacter),!0;case i.ScanError.UnexpectedEndOfNumber:return a(s(\\"UnexpectedEndOfNumber\\",\\"Unexpected end of number\\"),r.UnexpectedEndOfNumber),!0;case i.ScanError.UnexpectedEndOfComment:return a(s(\\"UnexpectedEndOfComment\\",\\"Unexpected end of comment\\"),r.UnexpectedEndOfComment),!0;case i.ScanError.UnexpectedEndOfString:return a(s(\\"UnexpectedEndOfString\\",\\"Unexpected end of string\\"),r.UnexpectedEndOfString),!0;case i.ScanError.InvalidCharacter:return a(s(\\"InvalidCharacter\\",\\"Invalid characters in string. Control characters must be escaped.\\"),r.InvalidCharacter),!0}return!1}function g(e,t){return e.end=E.getTokenOffset()+E.getTokenLength(),t&&n(),e}function y(e,t){if(E.getToken()!==i.SyntaxKind.OpenBracketToken)return null;var c=new f(e,t,E.getTokenOffset());n();var u=0;if(c.addItem(k(c,u++)))for(;o(i.SyntaxKind.CommaToken);)c.addItem(k(c,u++))||I||a(s(\\"ValueExpected\\",\\"Value expected\\"),r.Undefined);return E.getToken()!==i.SyntaxKind.CloseBracketToken?a(s(\\"ExpectedCloseBracket\\",\\"Expected comma or closing bracket\\"),r.Undefined,c):g(c,!0)}function x(e,t){var o=S(null,null,!0);if(!o){if(E.getToken()===i.SyntaxKind.Unknown){var c=E.getTokenValue();c.match(/^[\'\\\\w]/)&&a(s(\\"DoubleQuotesExpected\\",\\"Property keys must be doublequoted\\"),r.Undefined)}return null}var u=new h(e,o);return t[o.value]&&O.warnings.push({location:{start:u.key.start,end:u.key.end},message:s(\\"DuplicateKeyWarning\\",\\"Duplicate object key\\"),code:r.Undefined}),t[o.value]=!0,E.getToken()!==i.SyntaxKind.ColonToken?a(s(\\"ColonExpected\\",\\"Colon expected\\"),r.Undefined,u,[],[i.SyntaxKind.CloseBraceToken,i.SyntaxKind.CommaToken]):(u.colonOffset=E.getTokenOffset(),n(),u.setValue(k(u,o.value))?(u.end=u.value.end,u):a(s(\\"ValueExpected\\",\\"Value expected\\"),r.Undefined,u,[],[i.SyntaxKind.CloseBraceToken,i.SyntaxKind.CommaToken]))}function b(e,t){if(E.getToken()!==i.SyntaxKind.OpenBraceToken)return null;var c=new m(e,t,E.getTokenOffset());n();var u=Object.create(null);if(c.addProperty(x(c,u)))for(;o(i.SyntaxKind.CommaToken);)c.addProperty(x(c,u))||I||a(s(\\"PropertyExpected\\",\\"Property expected\\"),r.Undefined);return E.getToken()!==i.SyntaxKind.CloseBraceToken?a(s(\\"ExpectedCloseBrace\\",\\"Expected comma or closing brace\\"),r.Undefined,c):g(c,!0)}function S(e,t,n){if(E.getToken()!==i.SyntaxKind.StringLiteral)return null;var r=new p(e,t,n,E.getTokenOffset());return r.value=E.getTokenValue(),c(),g(r,!0)}function T(e,t){if(E.getToken()!==i.SyntaxKind.NumericLiteral)return null;var n=new d(e,t,E.getTokenOffset());if(!c()){var o=E.getTokenValue();try{var u=JSON.parse(o);if(\\"number\\"!=typeof u)return a(s(\\"InvalidNumberFormat\\",\\"Invalid number format\\"),r.Undefined,n);n.value=u}catch(l){return a(s(\\"InvalidNumberFormat\\",\\"Invalid number format\\"),r.Undefined,n)}n.isInteger=o.indexOf(\\".\\")===-1}return g(n,!0)}function C(e,t){var n;switch(E.getToken()){case i.SyntaxKind.NullKeyword:n=new u(e,t,E.getTokenOffset());break;case i.SyntaxKind.TrueKeyword:n=new l(e,t,(!0),E.getTokenOffset());break;case i.SyntaxKind.FalseKeyword:n=new l(e,t,(!1),E.getTokenOffset());break;default:return null}return g(n,!0)}function k(e,t){return y(e,t)||b(e,t)||S(e,t,!1)||T(e,t)||C(e,t)}var O=new v(t),E=i.createScanner(e,!1),j=t&&t.disallowComments,I=t&&t.ignoreDanglingComma;return n(),O.root=k(null,null),O.root?E.getToken()!==i.SyntaxKind.EOF&&a(s(\\"End of file expected\\",\\"End of file expected\\"),r.Undefined):a(s(\\"Invalid symbol\\",\\"Expected a JSON object, array or literal\\"),r.Undefined),O}var r,i=e(\\"jsonc-parser\\"),o=e(\\"../utils/objects\\"),a=e(\\"vscode-nls\\"),s=a.loadMessageBundle();!function(e){e[e.Undefined=0]=\\"Undefined\\",e[e.EnumValueMismatch=1]=\\"EnumValueMismatch\\",e[e.CommentsNotAllowed=2]=\\"CommentsNotAllowed\\",e[e.UnexpectedEndOfComment=257]=\\"UnexpectedEndOfComment\\",e[e.UnexpectedEndOfString=258]=\\"UnexpectedEndOfString\\",e[e.UnexpectedEndOfNumber=259]=\\"UnexpectedEndOfNumber\\",e[e.InvalidUnicode=260]=\\"InvalidUnicode\\",e[e.InvalidEscapeCharacter=261]=\\"InvalidEscapeCharacter\\",e[e.InvalidCharacter=262]=\\"InvalidCharacter\\"}(r=t.ErrorCode||(t.ErrorCode={}));var c=function(){function e(e,t,n,r,i){this.type=t,this.location=n,this.start=r,this.end=i,this.parent=e}return e.prototype.getPath=function(){var e=this.parent?this.parent.getPath():[];return null!==this.location&&e.push(this.location),e},e.prototype.getChildNodes=function(){return[]},e.prototype.getLastChild=function(){return null},e.prototype.getValue=function(){},e.prototype.contains=function(e,t){return void 0===t&&(t=!1),e>=this.start&&e=n.start&&e=n.start&&e<=n.end){for(var r=n.getChildNodes(),i=0;i0?o={schema:e,validationResult:t,matchingSchemas:n}:0===s&&(o.matchingSchemas.push.apply(o.matchingSchemas,n),o.validationResult.mergeEnumValueMismatch(t))}else o.matchingSchemas.push.apply(o.matchingSchemas,n),o.validationResult.propertiesMatches+=t.propertiesMatches,o.validationResult.propertiesValueMatches+=t.propertiesValueMatches;else o={schema:e,validationResult:t,matchingSchemas:n}}),i.length>1&&r&&t.warnings.push({location:{start:a.start,end:a.start+1},message:s(\\"oneOfWarning\\",\\"Matches multiple schemas when only one must validate.\\")}),null!==o&&(t.merge(o.validationResult),t.propertiesMatches+=o.validationResult.propertiesMatches,t.propertiesValueMatches+=o.validationResult.propertiesValueMatches,n&&n.push.apply(n,o.matchingSchemas)),i.length};if(Array.isArray(e.anyOf)&&l(e.anyOf,!1),Array.isArray(e.oneOf)&&l(e.oneOf,!0),Array.isArray(e[\\"enum\\"])){for(var f=this.getValue(),d=!1,p=0,h=e[\\"enum\\"];p=a.length&&n.propertiesValueMatches++}),t.additionalItems===!1&&this.items.length>a.length?n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"additionalItemsWarning\\",\\"Array has too many items according to schema. Expected {0} or fewer\\",a.length)}):this.items.length>=a.length&&(n.propertiesValueMatches+=this.items.length-a.length)}else t.items&&this.items.forEach(function(e){var o=new g;e.validate(t.items,o,r,i),n.mergePropertyMatch(o)});if(t.minItems&&this.items.lengtht.maxItems&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"maxItemsWarning\\",\\"Array has too many items. Expected {0} or fewer\\",t.minItems)}),t.uniqueItems===!0){var c=this.items.map(function(e){return e.getValue()}),u=c.some(function(e,t){return t!==c.lastIndexOf(e)});u&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"uniqueItemsWarning\\",\\"Array has duplicate items\\")})}}},t}(c);t.ArrayASTNode=f;var d=function(e){function t(t,n,r,i){var o=e.call(this,t,\\"number\\",n,r,i)||this;return o.isInteger=!0,o.value=Number.NaN,o}return __extends(t,e),t.prototype.getValue=function(){return this.value},t.prototype.validate=function(t,n,r,i){if(void 0===i&&(i=-1),i===-1||this.contains(i)){var o=!1;(\\"integer\\"===t.type||Array.isArray(t.type)&&t.type.indexOf(\\"integer\\")!==-1)&&(o=!0),o&&this.isInteger===!0&&(this.type=\\"integer\\"),e.prototype.validate.call(this,t,n,r,i),this.type=\\"number\\";var a=this.getValue();\\"number\\"==typeof t.multipleOf&&a%t.multipleOf!==0&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"multipleOfWarning\\",\\"Value is not divisible by {0}\\",t.multipleOf)}),\\"number\\"==typeof t.minimum&&(t.exclusiveMinimum&&a<=t.minimum&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"exclusiveMinimumWarning\\",\\"Value is below the exclusive minimum of {0}\\",t.minimum)}),!t.exclusiveMinimum&&a=t.maximum&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"exclusiveMaximumWarning\\",\\"Value is above the exclusive maximum of {0}\\",t.maximum)}),!t.exclusiveMaximum&&a>t.maximum&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"maximumWarning\\",\\"Value is above the maximum of {0}\\",t.maximum)}))}},t}(c);t.NumberASTNode=d;var p=function(e){function t(t,n,r,i,o){var a=e.call(this,t,\\"string\\",n,i,o)||this;return a.isKey=r,a.value=\\"\\",a}return __extends(t,e),t.prototype.getValue=function(){return this.value},t.prototype.validate=function(t,n,r,i){if(void 0===i&&(i=-1),(i===-1||this.contains(i))&&(e.prototype.validate.call(this,t,n,r,i),t.minLength&&this.value.lengtht.maxLength&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"maxLengthWarning\\",\\"String is longer than the maximum length of {0}\\",t.maxLength)}),t.pattern)){var o=new RegExp(t.pattern);o.test(this.value)||n.warnings.push({location:{start:this.start,end:this.end},message:t.patternErrorMessage||t.errorMessage||s(\\"patternWarning\\",\'String does not match the pattern of \\"{0}\\"\',t.pattern)})}},t}(c);t.StringASTNode=p;var h=function(e){function t(t,n){var r=e.call(this,t,\\"property\\",null,n.start)||this;return r.key=n,n.parent=r,n.location=n.value,r.colonOffset=-1,r}return __extends(t,e),t.prototype.getChildNodes=function(){return this.value?[this.key,this.value]:[this.key]},t.prototype.getLastChild=function(){return this.value},t.prototype.setValue=function(e){return this.value=e,null!==e},t.prototype.visit=function(e){return e(this)&&this.key.visit(e)&&this.value&&this.value.visit(e)},t.prototype.validate=function(e,t,n,r){void 0===r&&(r=-1),(r===-1||this.contains(r))&&this.value&&this.value.validate(e,t,n,r)},t}(c);t.PropertyASTNode=h;var m=function(e){function t(t,n,r,i){var o=e.call(this,t,\\"object\\",n,r,i)||this;return o.properties=[],o}return __extends(t,e),t.prototype.getChildNodes=function(){return this.properties},t.prototype.getLastChild=function(){return this.properties[this.properties.length-1]},t.prototype.addProperty=function(e){return!!e&&(this.properties.push(e),!0)},t.prototype.getFirstProperty=function(e){for(var t=0;t=0;)c.splice(t,1),t=c.indexOf(e)};t.properties&&Object.keys(t.properties).forEach(function(e){u(e);var o=t.properties[e],s=a[e];if(s){var c=new g;s.validate(o,c,r,i),n.mergePropertyMatch(c)}}),t.patternProperties&&Object.keys(t.patternProperties).forEach(function(e){var o=new RegExp(e);c.slice(0).forEach(function(s){if(o.test(s)){u(s);var c=a[s];if(c){var l=new g;c.validate(t.patternProperties[e],l,r,i),n.mergePropertyMatch(l)}}})}),\\"object\\"==typeof t.additionalProperties?c.forEach(function(e){var o=a[e];if(o){var s=new g;o.validate(t.additionalProperties,s,r,i),n.mergePropertyMatch(s)}}):t.additionalProperties===!1&&c.length>0&&c.forEach(function(e){var r=a[e];if(r){var i=r.parent;n.warnings.push({location:{start:i.key.start,end:i.key.end},message:t.errorMessage||s(\\"DisallowedExtraPropWarning\\",\\"Property {0} is not allowed\\",e)})}}),t.maxProperties&&this.properties.length>t.maxProperties&&n.warnings.push({location:{start:this.start,end:this.end},message:s(\\"MaxPropWarning\\",\\"Object has more properties than limit of {0}\\",t.maxProperties)}),t.minProperties&&this.properties.length=0}}),define(\\"vscode-uri\\",[\\"vscode-uri/index\\"],function(e){return e}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/services/jsonSchemaService\\",[\\"require\\",\\"exports\\",\\"jsonc-parser\\",\\"vscode-uri\\",\\"../utils/strings\\",\\"vscode-nls\\"],e)}(function(e,t){function n(e){try{var t=i[\\"default\\"].parse(e);if(\\"file\\"===t.scheme)return t.fsPath}catch(n){}return e}var r=e(\\"jsonc-parser\\"),i=e(\\"vscode-uri\\"),o=e(\\"../utils/strings\\"),a=e(\\"vscode-nls\\"),s=a.loadMessageBundle(),c=function(){function e(e){this.combinedSchemaId=\\"schemaservice://combinedSchema/\\"+encodeURIComponent(e);try{this.patternRegExp=new RegExp(o.convertSimple2RegExpPattern(e)+\\"$\\")}catch(t){this.patternRegExp=null}this.schemas=[],this.combinedSchema=null}return e.prototype.addSchema=function(e){this.schemas.push(e),this.combinedSchema=null},e.prototype.matchesPattern=function(e){return this.patternRegExp&&this.patternRegExp.test(e)},e.prototype.getCombinedSchema=function(e){return this.combinedSchema||(this.combinedSchema=e.createCombinedSchema(this.combinedSchemaId,this.schemas)),this.combinedSchema},e}(),u=function(){function e(e,t,n){this.service=e,this.url=t,n&&(this.unresolvedSchema=this.service.promise.resolve(new l(n)))}return e.prototype.getUnresolvedSchema=function(){return this.unresolvedSchema||(this.unresolvedSchema=this.service.loadSchema(this.url)),this.unresolvedSchema},e.prototype.getResolvedSchema=function(){var e=this;return this.resolvedSchema||(this.resolvedSchema=this.getUnresolvedSchema().then(function(t){return e.service.resolveSchemaContent(t,e.url)})),this.resolvedSchema},e.prototype.clearSchema=function(){this.resolvedSchema=null,this.unresolvedSchema=null},e}(),l=function(){function e(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}return e}();t.UnresolvedSchema=l;var f=function(){function e(e,t){void 0===t&&(t=[]),this.schema=e,this.errors=t}return e.prototype.getSection=function(e){return this.getSectionRecursive(e,this.schema)},e.prototype.getSectionRecursive=function(e,t){var n=this;if(!t||0===e.length)return t;var r=e.shift();if(t.properties&&t.properties[r])return this.getSectionRecursive(e,t.properties[r]);if(t.patternProperties)Object.keys(t.patternProperties).forEach(function(i){var o=new RegExp(i);if(o.test(r))return n.getSectionRecursive(e,t.patternProperties[i])});else{if(t.additionalProperties)return this.getSectionRecursive(e,t.additionalProperties);if(r.match(\\"[0-9]+\\")){if(t.items)return this.getSectionRecursive(e,t.items);if(Array.isArray(t.items))try{var i=parseInt(r,10);return t.items[i]?this.getSectionRecursive(e,t.items[i]):null}catch(o){return null}}}return null},e}();t.ResolvedSchema=f;var d=function(){function e(e,t,n){this.contextService=t,this.requestService=e,this.promiseConstructor=n||Promise,this.callOnDispose=[],this.contributionSchemas={},this.contributionAssociations={},this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={}}return e.prototype.getRegisteredSchemaIds=function(e){return Object.keys(this.registeredSchemasIds).filter(function(t){var n=i[\\"default\\"].parse(t).scheme;return\\"schemaservice\\"!==n&&(!e||e(n))})},Object.defineProperty(e.prototype,\\"promise\\",{get:function(){return this.promiseConstructor},enumerable:!0,configurable:!0}),e.prototype.dispose=function(){for(;this.callOnDispose.length>0;)this.callOnDispose.pop()()},e.prototype.onResourceChange=function(e){e=this.normalizeId(e);var t=this.schemasById[e];return!!t&&(t.clearSchema(),!0)},e.prototype.normalizeId=function(e){return i[\\"default\\"].parse(e).toString()},e.prototype.setSchemaContributions=function(e){var t=this;if(e.schemas){var n=e.schemas;for(var r in n){var i=this.normalizeId(r);this.contributionSchemas[i]=this.addSchemaHandle(i,n[r])}}if(e.schemaAssociations){var o=e.schemaAssociations;for(var a in o){var s=o[a];this.contributionAssociations[a]=s;var c=this.getOrAddFilePatternAssociation(a);s.forEach(function(e){var n=t.normalizeId(e);c.addSchema(n)})}}},e.prototype.addSchemaHandle=function(e,t){var n=new u(this,e,t);return this.schemasById[e]=n,n},e.prototype.getOrAddSchemaHandle=function(e,t){return this.schemasById[e]||this.addSchemaHandle(e,t)},e.prototype.getOrAddFilePatternAssociation=function(e){var t=this.filePatternAssociationById[e];return t||(t=new c(e),this.filePatternAssociationById[e]=t,this.filePatternAssociations.push(t)),t},e.prototype.registerExternalSchema=function(e,t,n){var r=this;void 0===t&&(t=null);var i=this.normalizeId(e);return this.registeredSchemasIds[i]=!0,t&&t.forEach(function(e){r.getOrAddFilePatternAssociation(e).addSchema(i)}),n?this.addSchemaHandle(i,n):this.getOrAddSchemaHandle(i)},e.prototype.clearExternalSchemas=function(){var e=this;this.schemasById={},this.filePatternAssociations=[],this.filePatternAssociationById={},this.registeredSchemasIds={};for(var t in this.contributionSchemas)this.schemasById[t]=this.contributionSchemas[t],this.registeredSchemasIds[t]=!0;for(var n in this.contributionAssociations){var r=this.getOrAddFilePatternAssociation(n);this.contributionAssociations[n].forEach(function(t){var n=e.normalizeId(t);r.addSchema(n)})}},e.prototype.getResolvedSchema=function(e){var t=this.normalizeId(e),n=this.schemasById[t];return n?n.getResolvedSchema():this.promise.resolve(null)},e.prototype.loadSchema=function(e){if(!this.requestService){var t=s(\\"json.schema.norequestservice\\",\\"Unable to load schema from \'{0}\'. No schema request service available\\",n(e));return this.promise.resolve(new l({},[t]))}return this.requestService(e).then(function(t){if(!t){var i=s(\\"json.schema.nocontent\\",\\"Unable to load schema from \'{0}\': No content.\\",n(e));return new l({},[i])}var o={},a=[];o=r.parse(t,a);var c=a.length?[s(\\"json.schema.invalidFormat\\",\\"Unable to parse content from \'{0}\': {1}.\\",n(e),r.getParseErrorMessage(a[0]))]:[];return new l(o,c)},function(t){var r=s(\\"json.schema.unabletoload\\",\\"Unable to load schema from \'{0}\': {1}\\",n(e),t.toString());return new l({},[r])})},e.prototype.resolveSchemaContent=function(e,t){var n=this,r=e.errors.slice(0),i=e.schema,o=this.contextService,a=function(e,t){if(!t)return e;var n=e;return\\"/\\"===t[0]&&(t=t.substr(1)),t.split(\\"/\\").some(function(e){return n=n[e],!n}),n},c=function(e,t,n){var i=a(t,n);if(i)for(var o in i)i.hasOwnProperty(o)&&!e.hasOwnProperty(o)&&(e[o]=i[o]);else r.push(s(\\"json.schema.invalidref\\",\\"$ref \'{0}\' in {1} can not be resolved.\\",n,t.id));delete e.$ref},u=function(e,t,i,a){return o&&!/^\\\\w+:\\\\/\\\\/.*/.test(t)&&(t=o.resolveRelativePath(t,a)),t=n.normalizeId(t),n.getOrAddSchemaHandle(t).getUnresolvedSchema().then(function(n){if(n.errors.length){var o=i?t+\\"#\\"+i:t;r.push(s(\\"json.schema.problemloadingref\\",\\"Problems loading reference \'{0}\': {1}\\",o,n.errors[0]))}return c(e,n.schema,i),l(e,n.schema,t)})},l=function(e,t,r){if(!e)return Promise.resolve(null);for(var i=[e],o=[],a=[],s=function(){for(var e=[],t=0;t=0)){if(o.push(d),d.$ref){var p=d.$ref.split(\\"#\\",2);if(p[0].length>0){a.push(u(d,p[0],p[1],r));continue}c(d,t,p[1])}s(d.items,d.additionalProperties,d.not),l(d.definitions,d.properties,d.patternProperties,d.dependencies),f(d.anyOf,d.allOf,d.oneOf,d.items)}}return n.promise.all(a)};return l(i,i,t).then(function(e){return new f(i,r)})},e.prototype.getSchemaForResource=function(e,t){if(t&&t.root&&\\"object\\"===t.root.type){var n=t.root.properties.filter(function(e){return\\"$schema\\"===e.key.value&&!!e.value});if(n.length>0){var r=n[0].value.getValue();if(r&&o.startsWith(r,\\".\\")&&this.contextService&&(r=this.contextService.resolveRelativePath(r,e)),r){var i=this.normalizeId(r);return this.getOrAddSchemaHandle(i).getResolvedSchema()}}}for(var a=this.filePatternAssociations.length-1;a>=0;a--){var s=this.filePatternAssociations[a];if(s.matchesPattern(e))return s.getCombinedSchema(this).getResolvedSchema()}return this.promise.resolve(null)},e.prototype.createCombinedSchema=function(e,t){if(1===t.length)return this.getOrAddSchemaHandle(t[0]);var n={allOf:t.map(function(e){return{$ref:e}})};return this.addSchemaHandle(e,n)},e}();t.JSONSchemaService=d}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/services/jsonFormatter\\",[\\"require\\",\\"exports\\",\\"jsonc-parser\\",\\"vscode-languageserver-types\\",\\"../utils/strings\\"],e)}(function(e,t){function n(e,t,n){function u(){return T+c.repeat(S,d+k)}function l(){var e=O.scan();for(C=!1;e===a.SyntaxKind.Trivia||e===a.SyntaxKind.LineBreakTrivia;)C=C||e===a.SyntaxKind.LineBreakTrivia,e=O.scan();return E=e===a.SyntaxKind.Unknown||O.getTokenError()!==a.ScanError.None,e}function f(t,n,r){if(!E&&nm&&v.substring(n,r)!==t){var i=s.Range.create(e.positionAt(n),e.positionAt(r));j.push(s.TextEdit.replace(i,t))}}var d,p,h,m,g,v=e.getText();if(t){m=e.offsetAt(t.start),g=e.offsetAt(t.end);var y=s.Position.create(t.start.line,0);h=e.offsetAt(y);for(var x=e.offsetAt(s.Position.create(t.end.line+1,0)),b=e.offsetAt(s.Position.create(t.end.line,0));x>b&&o(v,x-1);)x--;p=v.substring(h,x),d=r(p,0,n)}else p=v,d=0,h=0,m=0,g=v.length;var S,T=i(e),C=!1,k=0;S=n.insertSpaces?c.repeat(\\" \\",n.tabSize):\\"\\\\t\\";var O=a.createScanner(p,!1),E=!1,j=[],I=l();if(I!==a.SyntaxKind.EOF){var w=O.getTokenOffset()+h,A=c.repeat(S,d);f(A,h,w)}for(;I!==a.SyntaxKind.EOF;){for(var _=O.getTokenOffset()+O.getTokenLength()+h,P=l(),V=\\"\\";!C&&(P===a.SyntaxKind.LineCommentTrivia||P===a.SyntaxKind.BlockCommentTrivia);){var F=O.getTokenOffset()+h;f(\\" \\",_,F),_=O.getTokenOffset()+O.getTokenLength()+h,V=P===a.SyntaxKind.LineCommentTrivia?u():\\"\\",P=l()}if(P===a.SyntaxKind.CloseBraceToken)I!==a.SyntaxKind.OpenBraceToken&&(k--,V=u());else if(P===a.SyntaxKind.CloseBracketToken)I!==a.SyntaxKind.OpenBracketToken&&(k--,V=u());else{switch(I){case a.SyntaxKind.OpenBracketToken:case a.SyntaxKind.OpenBraceToken:k++,V=u();break;case a.SyntaxKind.CommaToken:case a.SyntaxKind.LineCommentTrivia:V=u();break;case a.SyntaxKind.BlockCommentTrivia:V=C?u():\\" \\";break;case a.SyntaxKind.ColonToken:V=\\" \\";break;case a.SyntaxKind.StringLiteral:if(P===a.SyntaxKind.ColonToken){V=\\"\\";break}case a.SyntaxKind.NullKeyword:case a.SyntaxKind.TrueKeyword:case a.SyntaxKind.FalseKeyword:case a.SyntaxKind.NumericLiteral:case a.SyntaxKind.CloseBraceToken:case a.SyntaxKind.CloseBracketToken:P===a.SyntaxKind.LineCommentTrivia||P===a.SyntaxKind.BlockCommentTrivia?V=\\" \\":P!==a.SyntaxKind.CommaToken&&P!==a.SyntaxKind.EOF&&(E=!0)}!C||P!==a.SyntaxKind.LineCommentTrivia&&P!==a.SyntaxKind.BlockCommentTrivia||(V=u())}var K=O.getTokenOffset()+h;f(V,_,K),I=P}return j}function r(e,t,n){for(var r=0,i=0,o=n.tabSize||4;r1){for(var n=e.offsetAt(s.Position.create(1,0)),r=n;r>0&&o(t,r-1);)r--;return t.substr(r,n-r)}return\\"\\\\n\\"}function o(e,t){return\\"\\\\r\\\\n\\".indexOf(e.charAt(t))!==-1}var a=e(\\"jsonc-parser\\"),s=e(\\"vscode-languageserver-types\\"),c=e(\\"../utils/strings\\");t.format=n;[a.SyntaxKind.LineCommentTrivia,a.SyntaxKind.BlockCommentTrivia,a.SyntaxKind.CommaToken]}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vscode-json-languageservice/jsonLanguageService\\",[\\"require\\",\\"exports\\",\\"vscode-languageserver-types\\",\\"./services/jsonCompletion\\",\\"./services/jsonHover\\",\\"./services/jsonValidation\\",\\"./services/jsonDocumentSymbols\\",\\"./parser/jsonParser\\",\\"./services/configuration\\",\\"./services/jsonSchemaService\\",\\"./services/jsonFormatter\\"],e)}(function(e,t){function n(e){var t=e.promiseConstructor||Promise,n=new l.JSONSchemaService(e.schemaRequestService,e.workspaceContext,t);n.setSchemaContributions(u.schemaContributions);var r=new i.JSONCompletion(n,e.contributions,t),d=new o.JSONHover(n,e.contributions,t),p=new s.JSONDocumentSymbols(n),h=new a.JSONValidation(n,t),m=!1;return{configure:function(e){n.clearExternalSchemas(),e.schemas&&e.schemas.forEach(function(e){n.registerExternalSchema(e.uri,e.fileMatch,e.schema)}),h.configure(e),m=e&&!e.allowComments},resetSchema:function(e){return n.onResourceChange(e)},doValidation:h.doValidation.bind(h),parseJSONDocument:function(e){return c.parse(e.getText(),{disallowComments:m})},doResolve:r.doResolve.bind(r),doComplete:r.doComplete.bind(r),findDocumentSymbols:p.findDocumentSymbols.bind(p),findColorSymbols:p.findColorSymbols.bind(p),doHover:d.doHover.bind(d),format:f.format}}var r=e(\\"vscode-languageserver-types\\");t.TextDocument=r.TextDocument,t.Position=r.Position,t.CompletionItem=r.CompletionItem,t.CompletionList=r.CompletionList,t.Range=r.Range,t.SymbolInformation=r.SymbolInformation,t.Diagnostic=r.Diagnostic,t.TextEdit=r.TextEdit,t.FormattingOptions=r.FormattingOptions,t.MarkedString=r.MarkedString;var i=e(\\"./services/jsonCompletion\\"),o=e(\\"./services/jsonHover\\"),a=e(\\"./services/jsonValidation\\"),s=e(\\"./services/jsonDocumentSymbols\\"),c=e(\\"./parser/jsonParser\\"),u=e(\\"./services/configuration\\"),l=e(\\"./services/jsonSchemaService\\"),f=e(\\"./services/jsonFormatter\\");t.getLanguageService=n}),define(\\"vscode-json-languageservice\\",[\\"vscode-json-languageservice/jsonLanguageService\\"],function(e){return e}),function(e){if(\\"object\\"==typeof module&&\\"object\\"==typeof module.exports){var t=e(require,exports);void 0!==t&&(module.exports=t)}else\\"function\\"==typeof define&&define.amd&&define(\\"vs/language/json/jsonWorker\\",[\\"require\\",\\"exports\\",\\"vscode-json-languageservice\\",\\"vscode-languageserver-types\\"],e)}(function(e,t){function n(e,t){return new s(e,t)}Object.defineProperty(t,\\"__esModule\\",{value:!0});var r=monaco.Promise,i=e(\\"vscode-json-languageservice\\"),o=e(\\"vscode-languageserver-types\\"),a=function(){function e(e){this.wrapped=new monaco.Promise(e)}return e.prototype.then=function(e,t){return this.wrapped.then(e,t)},e.prototype.getWrapped=function(){return this.wrapped},e.prototype.cancel=function(){this.wrapped.cancel()},e.resolve=function(e){return monaco.Promise.as(e)},e.reject=function(e){return monaco.Promise.wrapError(e)},e.all=function(e){return monaco.Promise.join(e)},e}(),s=function(){function e(e,t){this._ctx=e,this._languageSettings=t.languageSettings,this._languageId=t.languageId,this._languageService=i.getLanguageService({promiseConstructor:a}),this._languageService.configure(this._languageSettings)}return e.prototype.doValidation=function(e){var t=this._getTextDocument(e);if(t){var n=this._languageService.parseJSONDocument(t);return this._languageService.doValidation(t,n)}return r.as([])},e.prototype.doComplete=function(e,t){var n=this._getTextDocument(e),r=this._languageService.parseJSONDocument(n);return this._languageService.doComplete(n,t,r)},e.prototype.doResolve=function(e){return this._languageService.doResolve(e)},e.prototype.doHover=function(e,t){var n=this._getTextDocument(e),r=this._languageService.parseJSONDocument(n);return this._languageService.doHover(n,t,r)},e.prototype.format=function(e,t,n){var i=this._getTextDocument(e),o=this._languageService.format(i,t,n);return r.as(o)},e.prototype.resetSchema=function(e){return r.as(this._languageService.resetSchema(e))},e.prototype.findDocumentSymbols=function(e){var t=this._getTextDocument(e),n=this._languageService.parseJSONDocument(t),i=this._languageService.findDocumentSymbols(t,n);return r.as(i)},e.prototype._getTextDocument=function(e){for(var t=this._ctx.getMirrorModels(),n=0,r=t;n= 0) {\n return true;\n }\n }\n if (typeof process !== \'undefined\') {\n return (process.platform === \'win32\');\n }\n return false;\n };\n return Environment;\n }());\n AMDLoader.Environment = Environment;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n var LoaderEventType;\n (function (LoaderEventType) {\n LoaderEventType[LoaderEventType["LoaderAvailable"] = 1] = "LoaderAvailable";\n LoaderEventType[LoaderEventType["BeginLoadingScript"] = 10] = "BeginLoadingScript";\n LoaderEventType[LoaderEventType["EndLoadingScriptOK"] = 11] = "EndLoadingScriptOK";\n LoaderEventType[LoaderEventType["EndLoadingScriptError"] = 12] = "EndLoadingScriptError";\n LoaderEventType[LoaderEventType["BeginInvokeFactory"] = 21] = "BeginInvokeFactory";\n LoaderEventType[LoaderEventType["EndInvokeFactory"] = 22] = "EndInvokeFactory";\n LoaderEventType[LoaderEventType["NodeBeginEvaluatingScript"] = 31] = "NodeBeginEvaluatingScript";\n LoaderEventType[LoaderEventType["NodeEndEvaluatingScript"] = 32] = "NodeEndEvaluatingScript";\n LoaderEventType[LoaderEventType["NodeBeginNativeRequire"] = 33] = "NodeBeginNativeRequire";\n LoaderEventType[LoaderEventType["NodeEndNativeRequire"] = 34] = "NodeEndNativeRequire";\n })(LoaderEventType = AMDLoader.LoaderEventType || (AMDLoader.LoaderEventType = {}));\n var LoaderEvent = (function () {\n function LoaderEvent(type, detail, timestamp) {\n this.type = type;\n this.detail = detail;\n this.timestamp = timestamp;\n }\n return LoaderEvent;\n }());\n AMDLoader.LoaderEvent = LoaderEvent;\n var LoaderEventRecorder = (function () {\n function LoaderEventRecorder(loaderAvailableTimestamp) {\n this._events = [new LoaderEvent(LoaderEventType.LoaderAvailable, \'\', loaderAvailableTimestamp)];\n }\n LoaderEventRecorder.prototype.record = function (type, detail) {\n this._events.push(new LoaderEvent(type, detail, AMDLoader.Utilities.getHighPerformanceTimestamp()));\n };\n LoaderEventRecorder.prototype.getEvents = function () {\n return this._events;\n };\n return LoaderEventRecorder;\n }());\n AMDLoader.LoaderEventRecorder = LoaderEventRecorder;\n var NullLoaderEventRecorder = (function () {\n function NullLoaderEventRecorder() {\n }\n NullLoaderEventRecorder.prototype.record = function (type, detail) {\n // Nothing to do\n };\n NullLoaderEventRecorder.prototype.getEvents = function () {\n return [];\n };\n return NullLoaderEventRecorder;\n }());\n NullLoaderEventRecorder.INSTANCE = new NullLoaderEventRecorder();\n AMDLoader.NullLoaderEventRecorder = NullLoaderEventRecorder;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n var Utilities = (function () {\n function Utilities() {\n }\n /**\n * This method does not take care of / vs \\\n */\n Utilities.fileUriToFilePath = function (isWindows, uri) {\n uri = decodeURI(uri);\n if (isWindows) {\n if (/^file:\\/\\/\\//.test(uri)) {\n // This is a URI without a hostname => return only the path segment\n return uri.substr(8);\n }\n if (/^file:\\/\\//.test(uri)) {\n return uri.substr(5);\n }\n }\n else {\n if (/^file:\\/\\//.test(uri)) {\n return uri.substr(7);\n }\n }\n // Not sure...\n return uri;\n };\n Utilities.startsWith = function (haystack, needle) {\n return haystack.length >= needle.length && haystack.substr(0, needle.length) === needle;\n };\n Utilities.endsWith = function (haystack, needle) {\n return haystack.length >= needle.length && haystack.substr(haystack.length - needle.length) === needle;\n };\n // only check for "?" before "#" to ensure that there is a real Query-String\n Utilities.containsQueryString = function (url) {\n return /^[^\\#]*\\?/gi.test(url);\n };\n /**\n * Does `url` start with http:// or https:// or file:// or / ?\n */\n Utilities.isAbsolutePath = function (url) {\n return /^((http:\\/\\/)|(https:\\/\\/)|(file:\\/\\/)|(\\/))/.test(url);\n };\n Utilities.forEachProperty = function (obj, callback) {\n if (obj) {\n var key = void 0;\n for (key in obj) {\n if (obj.hasOwnProperty(key)) {\n callback(key, obj[key]);\n }\n }\n }\n };\n Utilities.isEmpty = function (obj) {\n var isEmpty = true;\n Utilities.forEachProperty(obj, function () {\n isEmpty = false;\n });\n return isEmpty;\n };\n Utilities.recursiveClone = function (obj) {\n if (!obj || typeof obj !== \'object\') {\n return obj;\n }\n var result = Array.isArray(obj) ? [] : {};\n Utilities.forEachProperty(obj, function (key, value) {\n if (value && typeof value === \'object\') {\n result[key] = Utilities.recursiveClone(value);\n }\n else {\n result[key] = value;\n }\n });\n return result;\n };\n Utilities.generateAnonymousModule = function () {\n return \'===anonymous\' + (Utilities.NEXT_ANONYMOUS_ID++) + \'===\';\n };\n Utilities.isAnonymousModule = function (id) {\n return /^===anonymous/.test(id);\n };\n Utilities.getHighPerformanceTimestamp = function () {\n if (!this.PERFORMANCE_NOW_PROBED) {\n this.PERFORMANCE_NOW_PROBED = true;\n this.HAS_PERFORMANCE_NOW = (AMDLoader.global.performance && typeof AMDLoader.global.performance.now === \'function\');\n }\n return (this.HAS_PERFORMANCE_NOW ? AMDLoader.global.performance.now() : Date.now());\n };\n return Utilities;\n }());\n Utilities.NEXT_ANONYMOUS_ID = 1;\n Utilities.PERFORMANCE_NOW_PROBED = false;\n Utilities.HAS_PERFORMANCE_NOW = false;\n AMDLoader.Utilities = Utilities;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n var ConfigurationOptionsUtil = (function () {\n function ConfigurationOptionsUtil() {\n }\n /**\n * Ensure configuration options make sense\n */\n ConfigurationOptionsUtil.validateConfigurationOptions = function (isWebWorker, options) {\n function defaultOnError(err) {\n if (err.errorCode === \'load\') {\n console.error(\'Loading "\' + err.moduleId + \'" failed\');\n console.error(\'Detail: \', err.detail);\n if (err.detail && err.detail.stack) {\n console.error(err.detail.stack);\n }\n console.error(\'Here are the modules that depend on it:\');\n console.error(err.neededBy);\n return;\n }\n if (err.errorCode === \'factory\') {\n console.error(\'The factory method of "\' + err.moduleId + \'" has thrown an exception\');\n console.error(err.detail);\n if (err.detail && err.detail.stack) {\n console.error(err.detail.stack);\n }\n return;\n }\n }\n options = options || {};\n if (typeof options.baseUrl !== \'string\') {\n options.baseUrl = \'\';\n }\n if (typeof options.isBuild !== \'boolean\') {\n options.isBuild = false;\n }\n if (typeof options.paths !== \'object\') {\n options.paths = {};\n }\n if (typeof options.config !== \'object\') {\n options.config = {};\n }\n if (typeof options.catchError === \'undefined\') {\n // Catch errors by default in web workers, do not catch errors by default in other contexts\n options.catchError = isWebWorker;\n }\n if (typeof options.urlArgs !== \'string\') {\n options.urlArgs = \'\';\n }\n if (typeof options.onError !== \'function\') {\n options.onError = defaultOnError;\n }\n if (typeof options.ignoreDuplicateModules !== \'object\' || !Array.isArray(options.ignoreDuplicateModules)) {\n options.ignoreDuplicateModules = [];\n }\n if (options.baseUrl.length > 0) {\n if (!AMDLoader.Utilities.endsWith(options.baseUrl, \'/\')) {\n options.baseUrl += \'/\';\n }\n }\n if (!Array.isArray(options.nodeModules)) {\n options.nodeModules = [];\n }\n if (typeof options.nodeCachedDataWriteDelay !== \'number\' || options.nodeCachedDataWriteDelay < 0) {\n options.nodeCachedDataWriteDelay = 1000 * 7;\n }\n if (typeof options.onNodeCachedData !== \'function\') {\n options.onNodeCachedData = function (err, data) {\n if (!err) {\n // ignore\n }\n else if (err.errorCode === \'cachedDataRejected\') {\n console.warn(\'Rejected cached data from file: \' + err.path);\n }\n else if (err.errorCode === \'unlink\' || err.errorCode === \'writeFile\') {\n console.error(\'Problems writing cached data file: \' + err.path);\n console.error(err.detail);\n }\n else {\n console.error(err);\n }\n };\n }\n return options;\n };\n ConfigurationOptionsUtil.mergeConfigurationOptions = function (isWebWorker, overwrite, base) {\n if (overwrite === void 0) { overwrite = null; }\n if (base === void 0) { base = null; }\n var result = AMDLoader.Utilities.recursiveClone(base || {});\n // Merge known properties and overwrite the unknown ones\n AMDLoader.Utilities.forEachProperty(overwrite, function (key, value) {\n if (key === \'ignoreDuplicateModules\' && typeof result.ignoreDuplicateModules !== \'undefined\') {\n result.ignoreDuplicateModules = result.ignoreDuplicateModules.concat(value);\n }\n else if (key === \'paths\' && typeof result.paths !== \'undefined\') {\n AMDLoader.Utilities.forEachProperty(value, function (key2, value2) { return result.paths[key2] = value2; });\n }\n else if (key === \'config\' && typeof result.config !== \'undefined\') {\n AMDLoader.Utilities.forEachProperty(value, function (key2, value2) { return result.config[key2] = value2; });\n }\n else {\n result[key] = AMDLoader.Utilities.recursiveClone(value);\n }\n });\n return ConfigurationOptionsUtil.validateConfigurationOptions(isWebWorker, result);\n };\n return ConfigurationOptionsUtil;\n }());\n AMDLoader.ConfigurationOptionsUtil = ConfigurationOptionsUtil;\n var Configuration = (function () {\n function Configuration(env, options) {\n this._env = env;\n this.options = ConfigurationOptionsUtil.mergeConfigurationOptions(this._env.isWebWorker, options);\n this._createIgnoreDuplicateModulesMap();\n this._createNodeModulesMap();\n this._createSortedPathsRules();\n if (this.options.baseUrl === \'\') {\n if (this._env.isNode && this.options.nodeRequire && this.options.nodeRequire.main && this.options.nodeRequire.main.filename) {\n var nodeMain = this.options.nodeRequire.main.filename;\n var dirnameIndex = Math.max(nodeMain.lastIndexOf(\'/\'), nodeMain.lastIndexOf(\'\\\\\'));\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\n }\n if (this._env.isNode && this.options.nodeMain) {\n var nodeMain = this.options.nodeMain;\n var dirnameIndex = Math.max(nodeMain.lastIndexOf(\'/\'), nodeMain.lastIndexOf(\'\\\\\'));\n this.options.baseUrl = nodeMain.substring(0, dirnameIndex + 1);\n }\n }\n }\n Configuration.prototype._createIgnoreDuplicateModulesMap = function () {\n // Build a map out of the ignoreDuplicateModules array\n this.ignoreDuplicateModulesMap = {};\n for (var i = 0; i < this.options.ignoreDuplicateModules.length; i++) {\n this.ignoreDuplicateModulesMap[this.options.ignoreDuplicateModules[i]] = true;\n }\n };\n Configuration.prototype._createNodeModulesMap = function () {\n // Build a map out of nodeModules array\n this.nodeModulesMap = Object.create(null);\n for (var _i = 0, _a = this.options.nodeModules; _i < _a.length; _i++) {\n var nodeModule = _a[_i];\n this.nodeModulesMap[nodeModule] = true;\n }\n };\n Configuration.prototype._createSortedPathsRules = function () {\n var _this = this;\n // Create an array our of the paths rules, sorted descending by length to\n // result in a more specific -> less specific order\n this.sortedPathsRules = [];\n AMDLoader.Utilities.forEachProperty(this.options.paths, function (from, to) {\n if (!Array.isArray(to)) {\n _this.sortedPathsRules.push({\n from: from,\n to: [to]\n });\n }\n else {\n _this.sortedPathsRules.push({\n from: from,\n to: to\n });\n }\n });\n this.sortedPathsRules.sort(function (a, b) {\n return b.from.length - a.from.length;\n });\n };\n /**\n * Clone current configuration and overwrite options selectively.\n * @param options The selective options to overwrite with.\n * @result A new configuration\n */\n Configuration.prototype.cloneAndMerge = function (options) {\n return new Configuration(this._env, ConfigurationOptionsUtil.mergeConfigurationOptions(this._env.isWebWorker, options, this.options));\n };\n /**\n * Get current options bag. Useful for passing it forward to plugins.\n */\n Configuration.prototype.getOptionsLiteral = function () {\n return this.options;\n };\n Configuration.prototype._applyPaths = function (moduleId) {\n var pathRule;\n for (var i = 0, len = this.sortedPathsRules.length; i < len; i++) {\n pathRule = this.sortedPathsRules[i];\n if (AMDLoader.Utilities.startsWith(moduleId, pathRule.from)) {\n var result = [];\n for (var j = 0, lenJ = pathRule.to.length; j < lenJ; j++) {\n result.push(pathRule.to[j] + moduleId.substr(pathRule.from.length));\n }\n return result;\n }\n }\n return [moduleId];\n };\n Configuration.prototype._addUrlArgsToUrl = function (url) {\n if (AMDLoader.Utilities.containsQueryString(url)) {\n return url + \'&\' + this.options.urlArgs;\n }\n else {\n return url + \'?\' + this.options.urlArgs;\n }\n };\n Configuration.prototype._addUrlArgsIfNecessaryToUrl = function (url) {\n if (this.options.urlArgs) {\n return this._addUrlArgsToUrl(url);\n }\n return url;\n };\n Configuration.prototype._addUrlArgsIfNecessaryToUrls = function (urls) {\n if (this.options.urlArgs) {\n for (var i = 0, len = urls.length; i < len; i++) {\n urls[i] = this._addUrlArgsToUrl(urls[i]);\n }\n }\n return urls;\n };\n /**\n * Transform a module id to a location. Appends .js to module ids\n */\n Configuration.prototype.moduleIdToPaths = function (moduleId) {\n if (this.nodeModulesMap[moduleId] === true) {\n // This is a node module...\n if (this.isBuild()) {\n // ...and we are at build time, drop it\n return [\'empty:\'];\n }\n else {\n // ...and at runtime we create a `shortcut`-path\n return [\'node|\' + moduleId];\n }\n }\n var result = moduleId;\n var results;\n if (!AMDLoader.Utilities.endsWith(result, \'.js\') && !AMDLoader.Utilities.isAbsolutePath(result)) {\n results = this._applyPaths(result);\n for (var i = 0, len = results.length; i < len; i++) {\n if (this.isBuild() && results[i] === \'empty:\') {\n continue;\n }\n if (!AMDLoader.Utilities.isAbsolutePath(results[i])) {\n results[i] = this.options.baseUrl + results[i];\n }\n if (!AMDLoader.Utilities.endsWith(results[i], \'.js\') && !AMDLoader.Utilities.containsQueryString(results[i])) {\n results[i] = results[i] + \'.js\';\n }\n }\n }\n else {\n if (!AMDLoader.Utilities.endsWith(result, \'.js\') && !AMDLoader.Utilities.containsQueryString(result)) {\n result = result + \'.js\';\n }\n results = [result];\n }\n return this._addUrlArgsIfNecessaryToUrls(results);\n };\n /**\n * Transform a module id or url to a location.\n */\n Configuration.prototype.requireToUrl = function (url) {\n var result = url;\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n result = this._applyPaths(result)[0];\n if (!AMDLoader.Utilities.isAbsolutePath(result)) {\n result = this.options.baseUrl + result;\n }\n }\n return this._addUrlArgsIfNecessaryToUrl(result);\n };\n /**\n * Flag to indicate if current execution is as part of a build.\n */\n Configuration.prototype.isBuild = function () {\n return this.options.isBuild;\n };\n /**\n * Test if module `moduleId` is expected to be defined multiple times\n */\n Configuration.prototype.isDuplicateMessageIgnoredFor = function (moduleId) {\n return this.ignoreDuplicateModulesMap.hasOwnProperty(moduleId);\n };\n /**\n * Get the configuration settings for the provided module id\n */\n Configuration.prototype.getConfigForModule = function (moduleId) {\n if (this.options.config) {\n return this.options.config[moduleId];\n }\n };\n /**\n * Should errors be caught when executing module factories?\n */\n Configuration.prototype.shouldCatchError = function () {\n return this.options.catchError;\n };\n /**\n * Should statistics be recorded?\n */\n Configuration.prototype.shouldRecordStats = function () {\n return this.options.recordStats;\n };\n /**\n * Forward an error to the error handler.\n */\n Configuration.prototype.onError = function (err) {\n this.options.onError(err);\n };\n return Configuration;\n }());\n AMDLoader.Configuration = Configuration;\n})(AMDLoader || (AMDLoader = {}));\n/*---------------------------------------------------------------------------------------------\n * Copyright (c) Microsoft Corporation. All rights reserved.\n * Licensed under the MIT License. See License.txt in the project root for license information.\n *--------------------------------------------------------------------------------------------*/\nvar AMDLoader;\n(function (AMDLoader) {\n /**\n * Load `scriptSrc` only once (avoid multiple