@codingame/monaco-vscode-configuration-editing-default-extension 16.1.1 → 17.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"configurationEditingMain.js","mappings":"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","sources":["webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/scanner.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/parser.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/format.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/edit.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/main.js","webpack://configuration-editing/../../node_modules/path-browserify/index.js","webpack://configuration-editing/./src/browser/net.ts","webpack://configuration-editing/./src/configurationEditingMain.ts","webpack://configuration-editing/./src/extensionsProposals.ts","webpack://configuration-editing/./src/importExportProfiles.ts","webpack://configuration-editing/./src/settingsDocumentHelper.ts","webpack://configuration-editing/external commonjs \"vscode\"","webpack://configuration-editing/./node_modules/fast-content-type-parse/index.js","webpack://configuration-editing/./node_modules/universal-user-agent/index.js","webpack://configuration-editing/./node_modules/before-after-hook/lib/register.js","webpack://configuration-editing/./node_modules/before-after-hook/lib/add.js","webpack://configuration-editing/./node_modules/before-after-hook/lib/remove.js","webpack://configuration-editing/./node_modules/before-after-hook/index.js","webpack://configuration-editing/./node_modules/@octokit/endpoint/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/request-error/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/request/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/graphql/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/auth-token/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/core/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/core/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-request-log/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-paginate-rest/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-request-log/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/rest/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/rest/dist-src/index.js","webpack://configuration-editing/webpack/bootstrap","webpack://configuration-editing/webpack/runtime/define property getters","webpack://configuration-editing/webpack/runtime/hasOwnProperty shorthand","webpack://configuration-editing/webpack/runtime/make namespace object","webpack://configuration-editing/webpack/startup"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\n/**\n * Creates a JSON scanner on the given text.\n * If ignoreTrivia is set, whitespaces or comments are ignored.\n */\nexport function createScanner(text, ignoreTrivia = false) {\n const len = text.length;\n let pos = 0, value = '', tokenOffset = 0, token = 16 /* SyntaxKind.Unknown */, lineNumber = 0, lineStartOffset = 0, tokenLineStartOffset = 0, prevTokenLineStartOffset = 0, scanError = 0 /* ScanError.None */;\n function scanHexDigits(count, exact) {\n let digits = 0;\n let value = 0;\n while (digits < count || !exact) {\n let ch = text.charCodeAt(pos);\n if (ch >= 48 /* CharacterCodes._0 */ && ch <= 57 /* CharacterCodes._9 */) {\n value = value * 16 + ch - 48 /* CharacterCodes._0 */;\n }\n else if (ch >= 65 /* CharacterCodes.A */ && ch <= 70 /* CharacterCodes.F */) {\n value = value * 16 + ch - 65 /* CharacterCodes.A */ + 10;\n }\n else if (ch >= 97 /* CharacterCodes.a */ && ch <= 102 /* CharacterCodes.f */) {\n value = value * 16 + ch - 97 /* CharacterCodes.a */ + 10;\n }\n else {\n break;\n }\n pos++;\n digits++;\n }\n if (digits < count) {\n value = -1;\n }\n return value;\n }\n function setPosition(newPosition) {\n pos = newPosition;\n value = '';\n tokenOffset = 0;\n token = 16 /* SyntaxKind.Unknown */;\n scanError = 0 /* ScanError.None */;\n }\n function scanNumber() {\n let start = pos;\n if (text.charCodeAt(pos) === 48 /* CharacterCodes._0 */) {\n pos++;\n }\n else {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n }\n if (pos < text.length && text.charCodeAt(pos) === 46 /* CharacterCodes.dot */) {\n pos++;\n if (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n }\n else {\n scanError = 3 /* ScanError.UnexpectedEndOfNumber */;\n return text.substring(start, pos);\n }\n }\n let end = pos;\n if (pos < text.length && (text.charCodeAt(pos) === 69 /* CharacterCodes.E */ || text.charCodeAt(pos) === 101 /* CharacterCodes.e */)) {\n pos++;\n if (pos < text.length && text.charCodeAt(pos) === 43 /* CharacterCodes.plus */ || text.charCodeAt(pos) === 45 /* CharacterCodes.minus */) {\n pos++;\n }\n if (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n end = pos;\n }\n else {\n scanError = 3 /* ScanError.UnexpectedEndOfNumber */;\n }\n }\n return text.substring(start, end);\n }\n function scanString() {\n let result = '', start = pos;\n while (true) {\n if (pos >= len) {\n result += text.substring(start, pos);\n scanError = 2 /* ScanError.UnexpectedEndOfString */;\n break;\n }\n const ch = text.charCodeAt(pos);\n if (ch === 34 /* CharacterCodes.doubleQuote */) {\n result += text.substring(start, pos);\n pos++;\n break;\n }\n if (ch === 92 /* CharacterCodes.backslash */) {\n result += text.substring(start, pos);\n pos++;\n if (pos >= len) {\n scanError = 2 /* ScanError.UnexpectedEndOfString */;\n break;\n }\n const ch2 = text.charCodeAt(pos++);\n switch (ch2) {\n case 34 /* CharacterCodes.doubleQuote */:\n result += '\\\"';\n break;\n case 92 /* CharacterCodes.backslash */:\n result += '\\\\';\n break;\n case 47 /* CharacterCodes.slash */:\n result += '/';\n break;\n case 98 /* CharacterCodes.b */:\n result += '\\b';\n break;\n case 102 /* CharacterCodes.f */:\n result += '\\f';\n break;\n case 110 /* CharacterCodes.n */:\n result += '\\n';\n break;\n case 114 /* CharacterCodes.r */:\n result += '\\r';\n break;\n case 116 /* CharacterCodes.t */:\n result += '\\t';\n break;\n case 117 /* CharacterCodes.u */:\n const ch3 = scanHexDigits(4, true);\n if (ch3 >= 0) {\n result += String.fromCharCode(ch3);\n }\n else {\n scanError = 4 /* ScanError.InvalidUnicode */;\n }\n break;\n default:\n scanError = 5 /* ScanError.InvalidEscapeCharacter */;\n }\n start = pos;\n continue;\n }\n if (ch >= 0 && ch <= 0x1f) {\n if (isLineBreak(ch)) {\n result += text.substring(start, pos);\n scanError = 2 /* ScanError.UnexpectedEndOfString */;\n break;\n }\n else {\n scanError = 6 /* ScanError.InvalidCharacter */;\n // mark as error but continue with string\n }\n }\n pos++;\n }\n return result;\n }\n function scanNext() {\n value = '';\n scanError = 0 /* ScanError.None */;\n tokenOffset = pos;\n lineStartOffset = lineNumber;\n prevTokenLineStartOffset = tokenLineStartOffset;\n if (pos >= len) {\n // at the end\n tokenOffset = len;\n return token = 17 /* SyntaxKind.EOF */;\n }\n let code = text.charCodeAt(pos);\n // trivia: whitespace\n if (isWhiteSpace(code)) {\n do {\n pos++;\n value += String.fromCharCode(code);\n code = text.charCodeAt(pos);\n } while (isWhiteSpace(code));\n return token = 15 /* SyntaxKind.Trivia */;\n }\n // trivia: newlines\n if (isLineBreak(code)) {\n pos++;\n value += String.fromCharCode(code);\n if (code === 13 /* CharacterCodes.carriageReturn */ && text.charCodeAt(pos) === 10 /* CharacterCodes.lineFeed */) {\n pos++;\n value += '\\n';\n }\n lineNumber++;\n tokenLineStartOffset = pos;\n return token = 14 /* SyntaxKind.LineBreakTrivia */;\n }\n switch (code) {\n // tokens: []{}:,\n case 123 /* CharacterCodes.openBrace */:\n pos++;\n return token = 1 /* SyntaxKind.OpenBraceToken */;\n case 125 /* CharacterCodes.closeBrace */:\n pos++;\n return token = 2 /* SyntaxKind.CloseBraceToken */;\n case 91 /* CharacterCodes.openBracket */:\n pos++;\n return token = 3 /* SyntaxKind.OpenBracketToken */;\n case 93 /* CharacterCodes.closeBracket */:\n pos++;\n return token = 4 /* SyntaxKind.CloseBracketToken */;\n case 58 /* CharacterCodes.colon */:\n pos++;\n return token = 6 /* SyntaxKind.ColonToken */;\n case 44 /* CharacterCodes.comma */:\n pos++;\n return token = 5 /* SyntaxKind.CommaToken */;\n // strings\n case 34 /* CharacterCodes.doubleQuote */:\n pos++;\n value = scanString();\n return token = 10 /* SyntaxKind.StringLiteral */;\n // comments\n case 47 /* CharacterCodes.slash */:\n const start = pos - 1;\n // Single-line comment\n if (text.charCodeAt(pos + 1) === 47 /* CharacterCodes.slash */) {\n pos += 2;\n while (pos < len) {\n if (isLineBreak(text.charCodeAt(pos))) {\n break;\n }\n pos++;\n }\n value = text.substring(start, pos);\n return token = 12 /* SyntaxKind.LineCommentTrivia */;\n }\n // Multi-line comment\n if (text.charCodeAt(pos + 1) === 42 /* CharacterCodes.asterisk */) {\n pos += 2;\n const safeLength = len - 1; // For lookahead.\n let commentClosed = false;\n while (pos < safeLength) {\n const ch = text.charCodeAt(pos);\n if (ch === 42 /* CharacterCodes.asterisk */ && text.charCodeAt(pos + 1) === 47 /* CharacterCodes.slash */) {\n pos += 2;\n commentClosed = true;\n break;\n }\n pos++;\n if (isLineBreak(ch)) {\n if (ch === 13 /* CharacterCodes.carriageReturn */ && text.charCodeAt(pos) === 10 /* CharacterCodes.lineFeed */) {\n pos++;\n }\n lineNumber++;\n tokenLineStartOffset = pos;\n }\n }\n if (!commentClosed) {\n pos++;\n scanError = 1 /* ScanError.UnexpectedEndOfComment */;\n }\n value = text.substring(start, pos);\n return token = 13 /* SyntaxKind.BlockCommentTrivia */;\n }\n // just a single slash\n value += String.fromCharCode(code);\n pos++;\n return token = 16 /* SyntaxKind.Unknown */;\n // numbers\n case 45 /* CharacterCodes.minus */:\n value += String.fromCharCode(code);\n pos++;\n if (pos === len || !isDigit(text.charCodeAt(pos))) {\n return token = 16 /* SyntaxKind.Unknown */;\n }\n // found a minus, followed by a number so\n // we fall through to proceed with scanning\n // numbers\n case 48 /* CharacterCodes._0 */:\n case 49 /* CharacterCodes._1 */:\n case 50 /* CharacterCodes._2 */:\n case 51 /* CharacterCodes._3 */:\n case 52 /* CharacterCodes._4 */:\n case 53 /* CharacterCodes._5 */:\n case 54 /* CharacterCodes._6 */:\n case 55 /* CharacterCodes._7 */:\n case 56 /* CharacterCodes._8 */:\n case 57 /* CharacterCodes._9 */:\n value += scanNumber();\n return token = 11 /* SyntaxKind.NumericLiteral */;\n // literals and unknown symbols\n default:\n // is a literal? Read the full word.\n while (pos < len && isUnknownContentCharacter(code)) {\n pos++;\n code = text.charCodeAt(pos);\n }\n if (tokenOffset !== pos) {\n value = text.substring(tokenOffset, pos);\n // keywords: true, false, null\n switch (value) {\n case 'true': return token = 8 /* SyntaxKind.TrueKeyword */;\n case 'false': return token = 9 /* SyntaxKind.FalseKeyword */;\n case 'null': return token = 7 /* SyntaxKind.NullKeyword */;\n }\n return token = 16 /* SyntaxKind.Unknown */;\n }\n // some\n value += String.fromCharCode(code);\n pos++;\n return token = 16 /* SyntaxKind.Unknown */;\n }\n }\n function isUnknownContentCharacter(code) {\n if (isWhiteSpace(code) || isLineBreak(code)) {\n return false;\n }\n switch (code) {\n case 125 /* CharacterCodes.closeBrace */:\n case 93 /* CharacterCodes.closeBracket */:\n case 123 /* CharacterCodes.openBrace */:\n case 91 /* CharacterCodes.openBracket */:\n case 34 /* CharacterCodes.doubleQuote */:\n case 58 /* CharacterCodes.colon */:\n case 44 /* CharacterCodes.comma */:\n case 47 /* CharacterCodes.slash */:\n return false;\n }\n return true;\n }\n function scanNextNonTrivia() {\n let result;\n do {\n result = scanNext();\n } while (result >= 12 /* SyntaxKind.LineCommentTrivia */ && result <= 15 /* SyntaxKind.Trivia */);\n return result;\n }\n return {\n setPosition: setPosition,\n getPosition: () => pos,\n scan: ignoreTrivia ? scanNextNonTrivia : scanNext,\n getToken: () => token,\n getTokenValue: () => value,\n getTokenOffset: () => tokenOffset,\n getTokenLength: () => pos - tokenOffset,\n getTokenStartLine: () => lineStartOffset,\n getTokenStartCharacter: () => tokenOffset - prevTokenLineStartOffset,\n getTokenError: () => scanError,\n };\n}\nfunction isWhiteSpace(ch) {\n return ch === 32 /* CharacterCodes.space */ || ch === 9 /* CharacterCodes.tab */;\n}\nfunction isLineBreak(ch) {\n return ch === 10 /* CharacterCodes.lineFeed */ || ch === 13 /* CharacterCodes.carriageReturn */;\n}\nfunction isDigit(ch) {\n return ch >= 48 /* CharacterCodes._0 */ && ch <= 57 /* CharacterCodes._9 */;\n}\nvar CharacterCodes;\n(function (CharacterCodes) {\n CharacterCodes[CharacterCodes[\"lineFeed\"] = 10] = \"lineFeed\";\n CharacterCodes[CharacterCodes[\"carriageReturn\"] = 13] = \"carriageReturn\";\n CharacterCodes[CharacterCodes[\"space\"] = 32] = \"space\";\n CharacterCodes[CharacterCodes[\"_0\"] = 48] = \"_0\";\n CharacterCodes[CharacterCodes[\"_1\"] = 49] = \"_1\";\n CharacterCodes[CharacterCodes[\"_2\"] = 50] = \"_2\";\n CharacterCodes[CharacterCodes[\"_3\"] = 51] = \"_3\";\n CharacterCodes[CharacterCodes[\"_4\"] = 52] = \"_4\";\n CharacterCodes[CharacterCodes[\"_5\"] = 53] = \"_5\";\n CharacterCodes[CharacterCodes[\"_6\"] = 54] = \"_6\";\n CharacterCodes[CharacterCodes[\"_7\"] = 55] = \"_7\";\n CharacterCodes[CharacterCodes[\"_8\"] = 56] = \"_8\";\n CharacterCodes[CharacterCodes[\"_9\"] = 57] = \"_9\";\n CharacterCodes[CharacterCodes[\"a\"] = 97] = \"a\";\n CharacterCodes[CharacterCodes[\"b\"] = 98] = \"b\";\n CharacterCodes[CharacterCodes[\"c\"] = 99] = \"c\";\n CharacterCodes[CharacterCodes[\"d\"] = 100] = \"d\";\n CharacterCodes[CharacterCodes[\"e\"] = 101] = \"e\";\n CharacterCodes[CharacterCodes[\"f\"] = 102] = \"f\";\n CharacterCodes[CharacterCodes[\"g\"] = 103] = \"g\";\n CharacterCodes[CharacterCodes[\"h\"] = 104] = \"h\";\n CharacterCodes[CharacterCodes[\"i\"] = 105] = \"i\";\n CharacterCodes[CharacterCodes[\"j\"] = 106] = \"j\";\n CharacterCodes[CharacterCodes[\"k\"] = 107] = \"k\";\n CharacterCodes[CharacterCodes[\"l\"] = 108] = \"l\";\n CharacterCodes[CharacterCodes[\"m\"] = 109] = \"m\";\n CharacterCodes[CharacterCodes[\"n\"] = 110] = \"n\";\n CharacterCodes[CharacterCodes[\"o\"] = 111] = \"o\";\n CharacterCodes[CharacterCodes[\"p\"] = 112] = \"p\";\n CharacterCodes[CharacterCodes[\"q\"] = 113] = \"q\";\n CharacterCodes[CharacterCodes[\"r\"] = 114] = \"r\";\n CharacterCodes[CharacterCodes[\"s\"] = 115] = \"s\";\n CharacterCodes[CharacterCodes[\"t\"] = 116] = \"t\";\n CharacterCodes[CharacterCodes[\"u\"] = 117] = \"u\";\n CharacterCodes[CharacterCodes[\"v\"] = 118] = \"v\";\n CharacterCodes[CharacterCodes[\"w\"] = 119] = \"w\";\n CharacterCodes[CharacterCodes[\"x\"] = 120] = \"x\";\n CharacterCodes[CharacterCodes[\"y\"] = 121] = \"y\";\n CharacterCodes[CharacterCodes[\"z\"] = 122] = \"z\";\n CharacterCodes[CharacterCodes[\"A\"] = 65] = \"A\";\n CharacterCodes[CharacterCodes[\"B\"] = 66] = \"B\";\n CharacterCodes[CharacterCodes[\"C\"] = 67] = \"C\";\n CharacterCodes[CharacterCodes[\"D\"] = 68] = \"D\";\n CharacterCodes[CharacterCodes[\"E\"] = 69] = \"E\";\n CharacterCodes[CharacterCodes[\"F\"] = 70] = \"F\";\n CharacterCodes[CharacterCodes[\"G\"] = 71] = \"G\";\n CharacterCodes[CharacterCodes[\"H\"] = 72] = \"H\";\n CharacterCodes[CharacterCodes[\"I\"] = 73] = \"I\";\n CharacterCodes[CharacterCodes[\"J\"] = 74] = \"J\";\n CharacterCodes[CharacterCodes[\"K\"] = 75] = \"K\";\n CharacterCodes[CharacterCodes[\"L\"] = 76] = \"L\";\n CharacterCodes[CharacterCodes[\"M\"] = 77] = \"M\";\n CharacterCodes[CharacterCodes[\"N\"] = 78] = \"N\";\n CharacterCodes[CharacterCodes[\"O\"] = 79] = \"O\";\n CharacterCodes[CharacterCodes[\"P\"] = 80] = \"P\";\n CharacterCodes[CharacterCodes[\"Q\"] = 81] = \"Q\";\n CharacterCodes[CharacterCodes[\"R\"] = 82] = \"R\";\n CharacterCodes[CharacterCodes[\"S\"] = 83] = \"S\";\n CharacterCodes[CharacterCodes[\"T\"] = 84] = \"T\";\n CharacterCodes[CharacterCodes[\"U\"] = 85] = \"U\";\n CharacterCodes[CharacterCodes[\"V\"] = 86] = \"V\";\n CharacterCodes[CharacterCodes[\"W\"] = 87] = \"W\";\n CharacterCodes[CharacterCodes[\"X\"] = 88] = \"X\";\n CharacterCodes[CharacterCodes[\"Y\"] = 89] = \"Y\";\n CharacterCodes[CharacterCodes[\"Z\"] = 90] = \"Z\";\n CharacterCodes[CharacterCodes[\"asterisk\"] = 42] = \"asterisk\";\n CharacterCodes[CharacterCodes[\"backslash\"] = 92] = \"backslash\";\n CharacterCodes[CharacterCodes[\"closeBrace\"] = 125] = \"closeBrace\";\n CharacterCodes[CharacterCodes[\"closeBracket\"] = 93] = \"closeBracket\";\n CharacterCodes[CharacterCodes[\"colon\"] = 58] = \"colon\";\n CharacterCodes[CharacterCodes[\"comma\"] = 44] = \"comma\";\n CharacterCodes[CharacterCodes[\"dot\"] = 46] = \"dot\";\n CharacterCodes[CharacterCodes[\"doubleQuote\"] = 34] = \"doubleQuote\";\n CharacterCodes[CharacterCodes[\"minus\"] = 45] = \"minus\";\n CharacterCodes[CharacterCodes[\"openBrace\"] = 123] = \"openBrace\";\n CharacterCodes[CharacterCodes[\"openBracket\"] = 91] = \"openBracket\";\n CharacterCodes[CharacterCodes[\"plus\"] = 43] = \"plus\";\n CharacterCodes[CharacterCodes[\"slash\"] = 47] = \"slash\";\n CharacterCodes[CharacterCodes[\"formFeed\"] = 12] = \"formFeed\";\n CharacterCodes[CharacterCodes[\"tab\"] = 9] = \"tab\";\n})(CharacterCodes || (CharacterCodes = {}));\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport { createScanner } from './scanner';\nvar ParseOptions;\n(function (ParseOptions) {\n ParseOptions.DEFAULT = {\n allowTrailingComma: false\n };\n})(ParseOptions || (ParseOptions = {}));\n/**\n * For a given offset, evaluate the location in the JSON document. Each segment in the location path is either a property name or an array index.\n */\nexport function getLocation(text, position) {\n const segments = []; // strings or numbers\n const earlyReturnException = new Object();\n let previousNode = undefined;\n const previousNodeInst = {\n value: {},\n offset: 0,\n length: 0,\n type: 'object',\n parent: undefined\n };\n let isAtPropertyKey = false;\n function setPreviousNode(value, offset, length, type) {\n previousNodeInst.value = value;\n previousNodeInst.offset = offset;\n previousNodeInst.length = length;\n previousNodeInst.type = type;\n previousNodeInst.colonOffset = undefined;\n previousNode = previousNodeInst;\n }\n try {\n visit(text, {\n onObjectBegin: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n isAtPropertyKey = position > offset;\n segments.push(''); // push a placeholder (will be replaced)\n },\n onObjectProperty: (name, offset, length) => {\n if (position < offset) {\n throw earlyReturnException;\n }\n setPreviousNode(name, offset, length, 'property');\n segments[segments.length - 1] = name;\n if (position <= offset + length) {\n throw earlyReturnException;\n }\n },\n onObjectEnd: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n segments.pop();\n },\n onArrayBegin: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n segments.push(0);\n },\n onArrayEnd: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n segments.pop();\n },\n onLiteralValue: (value, offset, length) => {\n if (position < offset) {\n throw earlyReturnException;\n }\n setPreviousNode(value, offset, length, getNodeType(value));\n if (position <= offset + length) {\n throw earlyReturnException;\n }\n },\n onSeparator: (sep, offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n if (sep === ':' && previousNode && previousNode.type === 'property') {\n previousNode.colonOffset = offset;\n isAtPropertyKey = false;\n previousNode = undefined;\n }\n else if (sep === ',') {\n const last = segments[segments.length - 1];\n if (typeof last === 'number') {\n segments[segments.length - 1] = last + 1;\n }\n else {\n isAtPropertyKey = true;\n segments[segments.length - 1] = '';\n }\n previousNode = undefined;\n }\n }\n });\n }\n catch (e) {\n if (e !== earlyReturnException) {\n throw e;\n }\n }\n return {\n path: segments,\n previousNode,\n isAtPropertyKey,\n matches: (pattern) => {\n let k = 0;\n for (let i = 0; k < pattern.length && i < segments.length; i++) {\n if (pattern[k] === segments[i] || pattern[k] === '*') {\n k++;\n }\n else if (pattern[k] !== '**') {\n return false;\n }\n }\n return k === pattern.length;\n }\n };\n}\n/**\n * Parses the given text and returns the object the JSON content represents. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n * Therefore always check the errors list to find out if the input was valid.\n */\nexport function parse(text, errors = [], options = ParseOptions.DEFAULT) {\n let currentProperty = null;\n let currentParent = [];\n const previousParents = [];\n function onValue(value) {\n if (Array.isArray(currentParent)) {\n currentParent.push(value);\n }\n else if (currentProperty !== null) {\n currentParent[currentProperty] = value;\n }\n }\n const visitor = {\n onObjectBegin: () => {\n const object = {};\n onValue(object);\n previousParents.push(currentParent);\n currentParent = object;\n currentProperty = null;\n },\n onObjectProperty: (name) => {\n currentProperty = name;\n },\n onObjectEnd: () => {\n currentParent = previousParents.pop();\n },\n onArrayBegin: () => {\n const array = [];\n onValue(array);\n previousParents.push(currentParent);\n currentParent = array;\n currentProperty = null;\n },\n onArrayEnd: () => {\n currentParent = previousParents.pop();\n },\n onLiteralValue: onValue,\n onError: (error, offset, length) => {\n errors.push({ error, offset, length });\n }\n };\n visit(text, visitor, options);\n return currentParent[0];\n}\n/**\n * Parses the given text and returns a tree representation the JSON content. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n */\nexport function parseTree(text, errors = [], options = ParseOptions.DEFAULT) {\n let currentParent = { type: 'array', offset: -1, length: -1, children: [], parent: undefined }; // artificial root\n function ensurePropertyComplete(endOffset) {\n if (currentParent.type === 'property') {\n currentParent.length = endOffset - currentParent.offset;\n currentParent = currentParent.parent;\n }\n }\n function onValue(valueNode) {\n currentParent.children.push(valueNode);\n return valueNode;\n }\n const visitor = {\n onObjectBegin: (offset) => {\n currentParent = onValue({ type: 'object', offset, length: -1, parent: currentParent, children: [] });\n },\n onObjectProperty: (name, offset, length) => {\n currentParent = onValue({ type: 'property', offset, length: -1, parent: currentParent, children: [] });\n currentParent.children.push({ type: 'string', value: name, offset, length, parent: currentParent });\n },\n onObjectEnd: (offset, length) => {\n ensurePropertyComplete(offset + length); // in case of a missing value for a property: make sure property is complete\n currentParent.length = offset + length - currentParent.offset;\n currentParent = currentParent.parent;\n ensurePropertyComplete(offset + length);\n },\n onArrayBegin: (offset, length) => {\n currentParent = onValue({ type: 'array', offset, length: -1, parent: currentParent, children: [] });\n },\n onArrayEnd: (offset, length) => {\n currentParent.length = offset + length - currentParent.offset;\n currentParent = currentParent.parent;\n ensurePropertyComplete(offset + length);\n },\n onLiteralValue: (value, offset, length) => {\n onValue({ type: getNodeType(value), offset, length, parent: currentParent, value });\n ensurePropertyComplete(offset + length);\n },\n onSeparator: (sep, offset, length) => {\n if (currentParent.type === 'property') {\n if (sep === ':') {\n currentParent.colonOffset = offset;\n }\n else if (sep === ',') {\n ensurePropertyComplete(offset);\n }\n }\n },\n onError: (error, offset, length) => {\n errors.push({ error, offset, length });\n }\n };\n visit(text, visitor, options);\n const result = currentParent.children[0];\n if (result) {\n delete result.parent;\n }\n return result;\n}\n/**\n * Finds the node at the given path in a JSON DOM.\n */\nexport function findNodeAtLocation(root, path) {\n if (!root) {\n return undefined;\n }\n let node = root;\n for (let segment of path) {\n if (typeof segment === 'string') {\n if (node.type !== 'object' || !Array.isArray(node.children)) {\n return undefined;\n }\n let found = false;\n for (const propertyNode of node.children) {\n if (Array.isArray(propertyNode.children) && propertyNode.children[0].value === segment && propertyNode.children.length === 2) {\n node = propertyNode.children[1];\n found = true;\n break;\n }\n }\n if (!found) {\n return undefined;\n }\n }\n else {\n const index = segment;\n if (node.type !== 'array' || index < 0 || !Array.isArray(node.children) || index >= node.children.length) {\n return undefined;\n }\n node = node.children[index];\n }\n }\n return node;\n}\n/**\n * Gets the JSON path of the given JSON DOM node\n */\nexport function getNodePath(node) {\n if (!node.parent || !node.parent.children) {\n return [];\n }\n const path = getNodePath(node.parent);\n if (node.parent.type === 'property') {\n const key = node.parent.children[0].value;\n path.push(key);\n }\n else if (node.parent.type === 'array') {\n const index = node.parent.children.indexOf(node);\n if (index !== -1) {\n path.push(index);\n }\n }\n return path;\n}\n/**\n * Evaluates the JavaScript object of the given JSON DOM node\n */\nexport function getNodeValue(node) {\n switch (node.type) {\n case 'array':\n return node.children.map(getNodeValue);\n case 'object':\n const obj = Object.create(null);\n for (let prop of node.children) {\n const valueNode = prop.children[1];\n if (valueNode) {\n obj[prop.children[0].value] = getNodeValue(valueNode);\n }\n }\n return obj;\n case 'null':\n case 'string':\n case 'number':\n case 'boolean':\n return node.value;\n default:\n return undefined;\n }\n}\nexport function contains(node, offset, includeRightBound = false) {\n return (offset >= node.offset && offset < (node.offset + node.length)) || includeRightBound && (offset === (node.offset + node.length));\n}\n/**\n * Finds the most inner node at the given offset. If includeRightBound is set, also finds nodes that end at the given offset.\n */\nexport function findNodeAtOffset(node, offset, includeRightBound = false) {\n if (contains(node, offset, includeRightBound)) {\n const children = node.children;\n if (Array.isArray(children)) {\n for (let i = 0; i < children.length && children[i].offset <= offset; i++) {\n const item = findNodeAtOffset(children[i], offset, includeRightBound);\n if (item) {\n return item;\n }\n }\n }\n return node;\n }\n return undefined;\n}\n/**\n * Parses the given text and invokes the visitor functions for each object, array and literal reached.\n */\nexport function visit(text, visitor, options = ParseOptions.DEFAULT) {\n const _scanner = createScanner(text, false);\n // Important: Only pass copies of this to visitor functions to prevent accidental modification, and\n // to not affect visitor functions which stored a reference to a previous JSONPath\n const _jsonPath = [];\n function toNoArgVisit(visitFunction) {\n return visitFunction ? () => visitFunction(_scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter()) : () => true;\n }\n function toNoArgVisitWithPath(visitFunction) {\n return visitFunction ? () => visitFunction(_scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter(), () => _jsonPath.slice()) : () => true;\n }\n function toOneArgVisit(visitFunction) {\n return visitFunction ? (arg) => visitFunction(arg, _scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter()) : () => true;\n }\n function toOneArgVisitWithPath(visitFunction) {\n return visitFunction ? (arg) => visitFunction(arg, _scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter(), () => _jsonPath.slice()) : () => true;\n }\n const onObjectBegin = toNoArgVisitWithPath(visitor.onObjectBegin), onObjectProperty = toOneArgVisitWithPath(visitor.onObjectProperty), onObjectEnd = toNoArgVisit(visitor.onObjectEnd), onArrayBegin = toNoArgVisitWithPath(visitor.onArrayBegin), onArrayEnd = toNoArgVisit(visitor.onArrayEnd), onLiteralValue = toOneArgVisitWithPath(visitor.onLiteralValue), onSeparator = toOneArgVisit(visitor.onSeparator), onComment = toNoArgVisit(visitor.onComment), onError = toOneArgVisit(visitor.onError);\n const disallowComments = options && options.disallowComments;\n const allowTrailingComma = options && options.allowTrailingComma;\n function scanNext() {\n while (true) {\n const token = _scanner.scan();\n switch (_scanner.getTokenError()) {\n case 4 /* ScanError.InvalidUnicode */:\n handleError(14 /* ParseErrorCode.InvalidUnicode */);\n break;\n case 5 /* ScanError.InvalidEscapeCharacter */:\n handleError(15 /* ParseErrorCode.InvalidEscapeCharacter */);\n break;\n case 3 /* ScanError.UnexpectedEndOfNumber */:\n handleError(13 /* ParseErrorCode.UnexpectedEndOfNumber */);\n break;\n case 1 /* ScanError.UnexpectedEndOfComment */:\n if (!disallowComments) {\n handleError(11 /* ParseErrorCode.UnexpectedEndOfComment */);\n }\n break;\n case 2 /* ScanError.UnexpectedEndOfString */:\n handleError(12 /* ParseErrorCode.UnexpectedEndOfString */);\n break;\n case 6 /* ScanError.InvalidCharacter */:\n handleError(16 /* ParseErrorCode.InvalidCharacter */);\n break;\n }\n switch (token) {\n case 12 /* SyntaxKind.LineCommentTrivia */:\n case 13 /* SyntaxKind.BlockCommentTrivia */:\n if (disallowComments) {\n handleError(10 /* ParseErrorCode.InvalidCommentToken */);\n }\n else {\n onComment();\n }\n break;\n case 16 /* SyntaxKind.Unknown */:\n handleError(1 /* ParseErrorCode.InvalidSymbol */);\n break;\n case 15 /* SyntaxKind.Trivia */:\n case 14 /* SyntaxKind.LineBreakTrivia */:\n break;\n default:\n return token;\n }\n }\n }\n function handleError(error, skipUntilAfter = [], skipUntil = []) {\n onError(error);\n if (skipUntilAfter.length + skipUntil.length > 0) {\n let token = _scanner.getToken();\n while (token !== 17 /* SyntaxKind.EOF */) {\n if (skipUntilAfter.indexOf(token) !== -1) {\n scanNext();\n break;\n }\n else if (skipUntil.indexOf(token) !== -1) {\n break;\n }\n token = scanNext();\n }\n }\n }\n function parseString(isValue) {\n const value = _scanner.getTokenValue();\n if (isValue) {\n onLiteralValue(value);\n }\n else {\n onObjectProperty(value);\n // add property name afterwards\n _jsonPath.push(value);\n }\n scanNext();\n return true;\n }\n function parseLiteral() {\n switch (_scanner.getToken()) {\n case 11 /* SyntaxKind.NumericLiteral */:\n const tokenValue = _scanner.getTokenValue();\n let value = Number(tokenValue);\n if (isNaN(value)) {\n handleError(2 /* ParseErrorCode.InvalidNumberFormat */);\n value = 0;\n }\n onLiteralValue(value);\n break;\n case 7 /* SyntaxKind.NullKeyword */:\n onLiteralValue(null);\n break;\n case 8 /* SyntaxKind.TrueKeyword */:\n onLiteralValue(true);\n break;\n case 9 /* SyntaxKind.FalseKeyword */:\n onLiteralValue(false);\n break;\n default:\n return false;\n }\n scanNext();\n return true;\n }\n function parseProperty() {\n if (_scanner.getToken() !== 10 /* SyntaxKind.StringLiteral */) {\n handleError(3 /* ParseErrorCode.PropertyNameExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n return false;\n }\n parseString(false);\n if (_scanner.getToken() === 6 /* SyntaxKind.ColonToken */) {\n onSeparator(':');\n scanNext(); // consume colon\n if (!parseValue()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n }\n else {\n handleError(5 /* ParseErrorCode.ColonExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n _jsonPath.pop(); // remove processed property name\n return true;\n }\n function parseObject() {\n onObjectBegin();\n scanNext(); // consume open brace\n let needsComma = false;\n while (_scanner.getToken() !== 2 /* SyntaxKind.CloseBraceToken */ && _scanner.getToken() !== 17 /* SyntaxKind.EOF */) {\n if (_scanner.getToken() === 5 /* SyntaxKind.CommaToken */) {\n if (!needsComma) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n }\n onSeparator(',');\n scanNext(); // consume comma\n if (_scanner.getToken() === 2 /* SyntaxKind.CloseBraceToken */ && allowTrailingComma) {\n break;\n }\n }\n else if (needsComma) {\n handleError(6 /* ParseErrorCode.CommaExpected */, [], []);\n }\n if (!parseProperty()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n needsComma = true;\n }\n onObjectEnd();\n if (_scanner.getToken() !== 2 /* SyntaxKind.CloseBraceToken */) {\n handleError(7 /* ParseErrorCode.CloseBraceExpected */, [2 /* SyntaxKind.CloseBraceToken */], []);\n }\n else {\n scanNext(); // consume close brace\n }\n return true;\n }\n function parseArray() {\n onArrayBegin();\n scanNext(); // consume open bracket\n let isFirstElement = true;\n let needsComma = false;\n while (_scanner.getToken() !== 4 /* SyntaxKind.CloseBracketToken */ && _scanner.getToken() !== 17 /* SyntaxKind.EOF */) {\n if (_scanner.getToken() === 5 /* SyntaxKind.CommaToken */) {\n if (!needsComma) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n }\n onSeparator(',');\n scanNext(); // consume comma\n if (_scanner.getToken() === 4 /* SyntaxKind.CloseBracketToken */ && allowTrailingComma) {\n break;\n }\n }\n else if (needsComma) {\n handleError(6 /* ParseErrorCode.CommaExpected */, [], []);\n }\n if (isFirstElement) {\n _jsonPath.push(0);\n isFirstElement = false;\n }\n else {\n _jsonPath[_jsonPath.length - 1]++;\n }\n if (!parseValue()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], [4 /* SyntaxKind.CloseBracketToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n needsComma = true;\n }\n onArrayEnd();\n if (!isFirstElement) {\n _jsonPath.pop(); // remove array index\n }\n if (_scanner.getToken() !== 4 /* SyntaxKind.CloseBracketToken */) {\n handleError(8 /* ParseErrorCode.CloseBracketExpected */, [4 /* SyntaxKind.CloseBracketToken */], []);\n }\n else {\n scanNext(); // consume close bracket\n }\n return true;\n }\n function parseValue() {\n switch (_scanner.getToken()) {\n case 3 /* SyntaxKind.OpenBracketToken */:\n return parseArray();\n case 1 /* SyntaxKind.OpenBraceToken */:\n return parseObject();\n case 10 /* SyntaxKind.StringLiteral */:\n return parseString(true);\n default:\n return parseLiteral();\n }\n }\n scanNext();\n if (_scanner.getToken() === 17 /* SyntaxKind.EOF */) {\n if (options.allowEmptyContent) {\n return true;\n }\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n return false;\n }\n if (!parseValue()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n return false;\n }\n if (_scanner.getToken() !== 17 /* SyntaxKind.EOF */) {\n handleError(9 /* ParseErrorCode.EndOfFileExpected */, [], []);\n }\n return true;\n}\n/**\n * Takes JSON with JavaScript-style comments and remove\n * them. Optionally replaces every none-newline character\n * of comments with a replaceCharacter\n */\nexport function stripComments(text, replaceCh) {\n let _scanner = createScanner(text), parts = [], kind, offset = 0, pos;\n do {\n pos = _scanner.getPosition();\n kind = _scanner.scan();\n switch (kind) {\n case 12 /* SyntaxKind.LineCommentTrivia */:\n case 13 /* SyntaxKind.BlockCommentTrivia */:\n case 17 /* SyntaxKind.EOF */:\n if (offset !== pos) {\n parts.push(text.substring(offset, pos));\n }\n if (replaceCh !== undefined) {\n parts.push(_scanner.getTokenValue().replace(/[^\\r\\n]/g, replaceCh));\n }\n offset = _scanner.getPosition();\n break;\n }\n } while (kind !== 17 /* SyntaxKind.EOF */);\n return parts.join('');\n}\nexport function getNodeType(value) {\n switch (typeof value) {\n case 'boolean': return 'boolean';\n case 'number': return 'number';\n case 'string': return 'string';\n case 'object': {\n if (!value) {\n return 'null';\n }\n else if (Array.isArray(value)) {\n return 'array';\n }\n return 'object';\n }\n default: return 'null';\n }\n}\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport { createScanner } from './scanner';\nexport function format(documentText, range, options) {\n let initialIndentLevel;\n let formatText;\n let formatTextStart;\n let rangeStart;\n let rangeEnd;\n if (range) {\n rangeStart = range.offset;\n rangeEnd = rangeStart + range.length;\n formatTextStart = rangeStart;\n while (formatTextStart > 0 && !isEOL(documentText, formatTextStart - 1)) {\n formatTextStart--;\n }\n let endOffset = rangeEnd;\n while (endOffset < documentText.length && !isEOL(documentText, endOffset)) {\n endOffset++;\n }\n formatText = documentText.substring(formatTextStart, endOffset);\n initialIndentLevel = computeIndentLevel(formatText, options);\n }\n else {\n formatText = documentText;\n initialIndentLevel = 0;\n formatTextStart = 0;\n rangeStart = 0;\n rangeEnd = documentText.length;\n }\n const eol = getEOL(options, documentText);\n let numberLineBreaks = 0;\n let indentLevel = 0;\n let indentValue;\n if (options.insertSpaces) {\n indentValue = repeat(' ', options.tabSize || 4);\n }\n else {\n indentValue = '\\t';\n }\n let scanner = createScanner(formatText, false);\n let hasError = false;\n function newLinesAndIndent() {\n if (numberLineBreaks > 1) {\n return repeat(eol, numberLineBreaks) + repeat(indentValue, initialIndentLevel + indentLevel);\n }\n else {\n return eol + repeat(indentValue, initialIndentLevel + indentLevel);\n }\n }\n function scanNext() {\n let token = scanner.scan();\n numberLineBreaks = 0;\n while (token === 15 /* SyntaxKind.Trivia */ || token === 14 /* SyntaxKind.LineBreakTrivia */) {\n if (token === 14 /* SyntaxKind.LineBreakTrivia */ && options.keepLines) {\n numberLineBreaks += 1;\n }\n else if (token === 14 /* SyntaxKind.LineBreakTrivia */) {\n numberLineBreaks = 1;\n }\n token = scanner.scan();\n }\n hasError = token === 16 /* SyntaxKind.Unknown */ || scanner.getTokenError() !== 0 /* ScanError.None */;\n return token;\n }\n const editOperations = [];\n function addEdit(text, startOffset, endOffset) {\n if (!hasError && (!range || (startOffset < rangeEnd && endOffset > rangeStart)) && documentText.substring(startOffset, endOffset) !== text) {\n editOperations.push({ offset: startOffset, length: endOffset - startOffset, content: text });\n }\n }\n let firstToken = scanNext();\n if (options.keepLines && numberLineBreaks > 0) {\n addEdit(repeat(eol, numberLineBreaks), 0, 0);\n }\n if (firstToken !== 17 /* SyntaxKind.EOF */) {\n let firstTokenStart = scanner.getTokenOffset() + formatTextStart;\n let initialIndent = repeat(indentValue, initialIndentLevel);\n addEdit(initialIndent, formatTextStart, firstTokenStart);\n }\n while (firstToken !== 17 /* SyntaxKind.EOF */) {\n let firstTokenEnd = scanner.getTokenOffset() + scanner.getTokenLength() + formatTextStart;\n let secondToken = scanNext();\n let replaceContent = '';\n let needsLineBreak = false;\n while (numberLineBreaks === 0 && (secondToken === 12 /* SyntaxKind.LineCommentTrivia */ || secondToken === 13 /* SyntaxKind.BlockCommentTrivia */)) {\n let commentTokenStart = scanner.getTokenOffset() + formatTextStart;\n addEdit(' ', firstTokenEnd, commentTokenStart);\n firstTokenEnd = scanner.getTokenOffset() + scanner.getTokenLength() + formatTextStart;\n needsLineBreak = secondToken === 12 /* SyntaxKind.LineCommentTrivia */;\n replaceContent = needsLineBreak ? newLinesAndIndent() : '';\n secondToken = scanNext();\n }\n if (secondToken === 2 /* SyntaxKind.CloseBraceToken */) {\n if (firstToken !== 1 /* SyntaxKind.OpenBraceToken */) {\n indentLevel--;\n }\n ;\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines && firstToken !== 1 /* SyntaxKind.OpenBraceToken */) {\n replaceContent = newLinesAndIndent();\n }\n else if (options.keepLines) {\n replaceContent = ' ';\n }\n }\n else if (secondToken === 4 /* SyntaxKind.CloseBracketToken */) {\n if (firstToken !== 3 /* SyntaxKind.OpenBracketToken */) {\n indentLevel--;\n }\n ;\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines && firstToken !== 3 /* SyntaxKind.OpenBracketToken */) {\n replaceContent = newLinesAndIndent();\n }\n else if (options.keepLines) {\n replaceContent = ' ';\n }\n }\n else {\n switch (firstToken) {\n case 3 /* SyntaxKind.OpenBracketToken */:\n case 1 /* SyntaxKind.OpenBraceToken */:\n indentLevel++;\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines) {\n replaceContent = newLinesAndIndent();\n }\n else {\n replaceContent = ' ';\n }\n break;\n case 5 /* SyntaxKind.CommaToken */:\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines) {\n replaceContent = newLinesAndIndent();\n }\n else {\n replaceContent = ' ';\n }\n break;\n case 12 /* SyntaxKind.LineCommentTrivia */:\n replaceContent = newLinesAndIndent();\n break;\n case 13 /* SyntaxKind.BlockCommentTrivia */:\n if (numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else if (!needsLineBreak) {\n replaceContent = ' ';\n }\n break;\n case 6 /* SyntaxKind.ColonToken */:\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else if (!needsLineBreak) {\n replaceContent = ' ';\n }\n break;\n case 10 /* SyntaxKind.StringLiteral */:\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else if (secondToken === 6 /* SyntaxKind.ColonToken */ && !needsLineBreak) {\n replaceContent = '';\n }\n break;\n case 7 /* SyntaxKind.NullKeyword */:\n case 8 /* SyntaxKind.TrueKeyword */:\n case 9 /* SyntaxKind.FalseKeyword */:\n case 11 /* SyntaxKind.NumericLiteral */:\n case 2 /* SyntaxKind.CloseBraceToken */:\n case 4 /* SyntaxKind.CloseBracketToken */:\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else {\n if ((secondToken === 12 /* SyntaxKind.LineCommentTrivia */ || secondToken === 13 /* SyntaxKind.BlockCommentTrivia */) && !needsLineBreak) {\n replaceContent = ' ';\n }\n else if (secondToken !== 5 /* SyntaxKind.CommaToken */ && secondToken !== 17 /* SyntaxKind.EOF */) {\n hasError = true;\n }\n }\n break;\n case 16 /* SyntaxKind.Unknown */:\n hasError = true;\n break;\n }\n if (numberLineBreaks > 0 && (secondToken === 12 /* SyntaxKind.LineCommentTrivia */ || secondToken === 13 /* SyntaxKind.BlockCommentTrivia */)) {\n replaceContent = newLinesAndIndent();\n }\n }\n if (secondToken === 17 /* SyntaxKind.EOF */) {\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else {\n replaceContent = options.insertFinalNewline ? eol : '';\n }\n }\n const secondTokenStart = scanner.getTokenOffset() + formatTextStart;\n addEdit(replaceContent, firstTokenEnd, secondTokenStart);\n firstToken = secondToken;\n }\n return editOperations;\n}\nfunction repeat(s, count) {\n let result = '';\n for (let i = 0; i < count; i++) {\n result += s;\n }\n return result;\n}\nfunction computeIndentLevel(content, options) {\n let i = 0;\n let nChars = 0;\n const tabSize = options.tabSize || 4;\n while (i < content.length) {\n let ch = content.charAt(i);\n if (ch === ' ') {\n nChars++;\n }\n else if (ch === '\\t') {\n nChars += tabSize;\n }\n else {\n break;\n }\n i++;\n }\n return Math.floor(nChars / tabSize);\n}\nfunction getEOL(options, text) {\n for (let i = 0; i < text.length; i++) {\n const ch = text.charAt(i);\n if (ch === '\\r') {\n if (i + 1 < text.length && text.charAt(i + 1) === '\\n') {\n return '\\r\\n';\n }\n return '\\r';\n }\n else if (ch === '\\n') {\n return '\\n';\n }\n }\n return (options && options.eol) || '\\n';\n}\nexport function isEOL(text, offset) {\n return '\\r\\n'.indexOf(text.charAt(offset)) !== -1;\n}\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport { format, isEOL } from './format';\nimport { parseTree, findNodeAtLocation } from './parser';\nexport function removeProperty(text, path, options) {\n return setProperty(text, path, void 0, options);\n}\nexport function setProperty(text, originalPath, value, options) {\n const path = originalPath.slice();\n const errors = [];\n const root = parseTree(text, errors);\n let parent = void 0;\n let lastSegment = void 0;\n while (path.length > 0) {\n lastSegment = path.pop();\n parent = findNodeAtLocation(root, path);\n if (parent === void 0 && value !== void 0) {\n if (typeof lastSegment === 'string') {\n value = { [lastSegment]: value };\n }\n else {\n value = [value];\n }\n }\n else {\n break;\n }\n }\n if (!parent) {\n // empty document\n if (value === void 0) { // delete\n throw new Error('Can not delete in empty document');\n }\n return withFormatting(text, { offset: root ? root.offset : 0, length: root ? root.length : 0, content: JSON.stringify(value) }, options);\n }\n else if (parent.type === 'object' && typeof lastSegment === 'string' && Array.isArray(parent.children)) {\n const existing = findNodeAtLocation(parent, [lastSegment]);\n if (existing !== void 0) {\n if (value === void 0) { // delete\n if (!existing.parent) {\n throw new Error('Malformed AST');\n }\n const propertyIndex = parent.children.indexOf(existing.parent);\n let removeBegin;\n let removeEnd = existing.parent.offset + existing.parent.length;\n if (propertyIndex > 0) {\n // remove the comma of the previous node\n let previous = parent.children[propertyIndex - 1];\n removeBegin = previous.offset + previous.length;\n }\n else {\n removeBegin = parent.offset + 1;\n if (parent.children.length > 1) {\n // remove the comma of the next node\n let next = parent.children[1];\n removeEnd = next.offset;\n }\n }\n return withFormatting(text, { offset: removeBegin, length: removeEnd - removeBegin, content: '' }, options);\n }\n else {\n // set value of existing property\n return withFormatting(text, { offset: existing.offset, length: existing.length, content: JSON.stringify(value) }, options);\n }\n }\n else {\n if (value === void 0) { // delete\n return []; // property does not exist, nothing to do\n }\n const newProperty = `${JSON.stringify(lastSegment)}: ${JSON.stringify(value)}`;\n const index = options.getInsertionIndex ? options.getInsertionIndex(parent.children.map(p => p.children[0].value)) : parent.children.length;\n let edit;\n if (index > 0) {\n let previous = parent.children[index - 1];\n edit = { offset: previous.offset + previous.length, length: 0, content: ',' + newProperty };\n }\n else if (parent.children.length === 0) {\n edit = { offset: parent.offset + 1, length: 0, content: newProperty };\n }\n else {\n edit = { offset: parent.offset + 1, length: 0, content: newProperty + ',' };\n }\n return withFormatting(text, edit, options);\n }\n }\n else if (parent.type === 'array' && typeof lastSegment === 'number' && Array.isArray(parent.children)) {\n const insertIndex = lastSegment;\n if (insertIndex === -1) {\n // Insert\n const newProperty = `${JSON.stringify(value)}`;\n let edit;\n if (parent.children.length === 0) {\n edit = { offset: parent.offset + 1, length: 0, content: newProperty };\n }\n else {\n const previous = parent.children[parent.children.length - 1];\n edit = { offset: previous.offset + previous.length, length: 0, content: ',' + newProperty };\n }\n return withFormatting(text, edit, options);\n }\n else if (value === void 0 && parent.children.length >= 0) {\n // Removal\n const removalIndex = lastSegment;\n const toRemove = parent.children[removalIndex];\n let edit;\n if (parent.children.length === 1) {\n // only item\n edit = { offset: parent.offset + 1, length: parent.length - 2, content: '' };\n }\n else if (parent.children.length - 1 === removalIndex) {\n // last item\n let previous = parent.children[removalIndex - 1];\n let offset = previous.offset + previous.length;\n let parentEndOffset = parent.offset + parent.length;\n edit = { offset, length: parentEndOffset - 2 - offset, content: '' };\n }\n else {\n edit = { offset: toRemove.offset, length: parent.children[removalIndex + 1].offset - toRemove.offset, content: '' };\n }\n return withFormatting(text, edit, options);\n }\n else if (value !== void 0) {\n let edit;\n const newProperty = `${JSON.stringify(value)}`;\n if (!options.isArrayInsertion && parent.children.length > lastSegment) {\n const toModify = parent.children[lastSegment];\n edit = { offset: toModify.offset, length: toModify.length, content: newProperty };\n }\n else if (parent.children.length === 0 || lastSegment === 0) {\n edit = { offset: parent.offset + 1, length: 0, content: parent.children.length === 0 ? newProperty : newProperty + ',' };\n }\n else {\n const index = lastSegment > parent.children.length ? parent.children.length : lastSegment;\n const previous = parent.children[index - 1];\n edit = { offset: previous.offset + previous.length, length: 0, content: ',' + newProperty };\n }\n return withFormatting(text, edit, options);\n }\n else {\n throw new Error(`Can not ${value === void 0 ? 'remove' : (options.isArrayInsertion ? 'insert' : 'modify')} Array index ${insertIndex} as length is not sufficient`);\n }\n }\n else {\n throw new Error(`Can not add ${typeof lastSegment !== 'number' ? 'index' : 'property'} to parent of type ${parent.type}`);\n }\n}\nfunction withFormatting(text, edit, options) {\n if (!options.formattingOptions) {\n return [edit];\n }\n // apply the edit\n let newText = applyEdit(text, edit);\n // format the new text\n let begin = edit.offset;\n let end = edit.offset + edit.content.length;\n if (edit.length === 0 || edit.content.length === 0) { // insert or remove\n while (begin > 0 && !isEOL(newText, begin - 1)) {\n begin--;\n }\n while (end < newText.length && !isEOL(newText, end)) {\n end++;\n }\n }\n const edits = format(newText, { offset: begin, length: end - begin }, { ...options.formattingOptions, keepLines: false });\n // apply the formatting edits and track the begin and end offsets of the changes\n for (let i = edits.length - 1; i >= 0; i--) {\n const edit = edits[i];\n newText = applyEdit(newText, edit);\n begin = Math.min(begin, edit.offset);\n end = Math.max(end, edit.offset + edit.length);\n end += edit.content.length - edit.length;\n }\n // create a single edit with all changes\n const editLength = text.length - (newText.length - end) - begin;\n return [{ offset: begin, length: editLength, content: newText.substring(begin, end) }];\n}\nexport function applyEdit(text, edit) {\n return text.substring(0, edit.offset) + edit.content + text.substring(edit.offset + edit.length);\n}\nexport function isWS(text, offset) {\n return '\\r\\n \\t'.indexOf(text.charAt(offset)) !== -1;\n}\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport * as formatter from './impl/format';\nimport * as edit from './impl/edit';\nimport * as scanner from './impl/scanner';\nimport * as parser from './impl/parser';\n/**\n * Creates a JSON scanner on the given text.\n * If ignoreTrivia is set, whitespaces or comments are ignored.\n */\nexport const createScanner = scanner.createScanner;\nexport var ScanError;\n(function (ScanError) {\n ScanError[ScanError[\"None\"] = 0] = \"None\";\n ScanError[ScanError[\"UnexpectedEndOfComment\"] = 1] = \"UnexpectedEndOfComment\";\n ScanError[ScanError[\"UnexpectedEndOfString\"] = 2] = \"UnexpectedEndOfString\";\n ScanError[ScanError[\"UnexpectedEndOfNumber\"] = 3] = \"UnexpectedEndOfNumber\";\n ScanError[ScanError[\"InvalidUnicode\"] = 4] = \"InvalidUnicode\";\n ScanError[ScanError[\"InvalidEscapeCharacter\"] = 5] = \"InvalidEscapeCharacter\";\n ScanError[ScanError[\"InvalidCharacter\"] = 6] = \"InvalidCharacter\";\n})(ScanError || (ScanError = {}));\nexport var SyntaxKind;\n(function (SyntaxKind) {\n SyntaxKind[SyntaxKind[\"OpenBraceToken\"] = 1] = \"OpenBraceToken\";\n SyntaxKind[SyntaxKind[\"CloseBraceToken\"] = 2] = \"CloseBraceToken\";\n SyntaxKind[SyntaxKind[\"OpenBracketToken\"] = 3] = \"OpenBracketToken\";\n SyntaxKind[SyntaxKind[\"CloseBracketToken\"] = 4] = \"CloseBracketToken\";\n SyntaxKind[SyntaxKind[\"CommaToken\"] = 5] = \"CommaToken\";\n SyntaxKind[SyntaxKind[\"ColonToken\"] = 6] = \"ColonToken\";\n SyntaxKind[SyntaxKind[\"NullKeyword\"] = 7] = \"NullKeyword\";\n SyntaxKind[SyntaxKind[\"TrueKeyword\"] = 8] = \"TrueKeyword\";\n SyntaxKind[SyntaxKind[\"FalseKeyword\"] = 9] = \"FalseKeyword\";\n SyntaxKind[SyntaxKind[\"StringLiteral\"] = 10] = \"StringLiteral\";\n SyntaxKind[SyntaxKind[\"NumericLiteral\"] = 11] = \"NumericLiteral\";\n SyntaxKind[SyntaxKind[\"LineCommentTrivia\"] = 12] = \"LineCommentTrivia\";\n SyntaxKind[SyntaxKind[\"BlockCommentTrivia\"] = 13] = \"BlockCommentTrivia\";\n SyntaxKind[SyntaxKind[\"LineBreakTrivia\"] = 14] = \"LineBreakTrivia\";\n SyntaxKind[SyntaxKind[\"Trivia\"] = 15] = \"Trivia\";\n SyntaxKind[SyntaxKind[\"Unknown\"] = 16] = \"Unknown\";\n SyntaxKind[SyntaxKind[\"EOF\"] = 17] = \"EOF\";\n})(SyntaxKind || (SyntaxKind = {}));\n/**\n * For a given offset, evaluate the location in the JSON document. Each segment in the location path is either a property name or an array index.\n */\nexport const getLocation = parser.getLocation;\n/**\n * Parses the given text and returns the object the JSON content represents. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n * Therefore, always check the errors list to find out if the input was valid.\n */\nexport const parse = parser.parse;\n/**\n * Parses the given text and returns a tree representation the JSON content. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n */\nexport const parseTree = parser.parseTree;\n/**\n * Finds the node at the given path in a JSON DOM.\n */\nexport const findNodeAtLocation = parser.findNodeAtLocation;\n/**\n * Finds the innermost node at the given offset. If includeRightBound is set, also finds nodes that end at the given offset.\n */\nexport const findNodeAtOffset = parser.findNodeAtOffset;\n/**\n * Gets the JSON path of the given JSON DOM node\n */\nexport const getNodePath = parser.getNodePath;\n/**\n * Evaluates the JavaScript object of the given JSON DOM node\n */\nexport const getNodeValue = parser.getNodeValue;\n/**\n * Parses the given text and invokes the visitor functions for each object, array and literal reached.\n */\nexport const visit = parser.visit;\n/**\n * Takes JSON with JavaScript-style comments and remove\n * them. Optionally replaces every none-newline character\n * of comments with a replaceCharacter\n */\nexport const stripComments = parser.stripComments;\nexport var ParseErrorCode;\n(function (ParseErrorCode) {\n ParseErrorCode[ParseErrorCode[\"InvalidSymbol\"] = 1] = \"InvalidSymbol\";\n ParseErrorCode[ParseErrorCode[\"InvalidNumberFormat\"] = 2] = \"InvalidNumberFormat\";\n ParseErrorCode[ParseErrorCode[\"PropertyNameExpected\"] = 3] = \"PropertyNameExpected\";\n ParseErrorCode[ParseErrorCode[\"ValueExpected\"] = 4] = \"ValueExpected\";\n ParseErrorCode[ParseErrorCode[\"ColonExpected\"] = 5] = \"ColonExpected\";\n ParseErrorCode[ParseErrorCode[\"CommaExpected\"] = 6] = \"CommaExpected\";\n ParseErrorCode[ParseErrorCode[\"CloseBraceExpected\"] = 7] = \"CloseBraceExpected\";\n ParseErrorCode[ParseErrorCode[\"CloseBracketExpected\"] = 8] = \"CloseBracketExpected\";\n ParseErrorCode[ParseErrorCode[\"EndOfFileExpected\"] = 9] = \"EndOfFileExpected\";\n ParseErrorCode[ParseErrorCode[\"InvalidCommentToken\"] = 10] = \"InvalidCommentToken\";\n ParseErrorCode[ParseErrorCode[\"UnexpectedEndOfComment\"] = 11] = \"UnexpectedEndOfComment\";\n ParseErrorCode[ParseErrorCode[\"UnexpectedEndOfString\"] = 12] = \"UnexpectedEndOfString\";\n ParseErrorCode[ParseErrorCode[\"UnexpectedEndOfNumber\"] = 13] = \"UnexpectedEndOfNumber\";\n ParseErrorCode[ParseErrorCode[\"InvalidUnicode\"] = 14] = \"InvalidUnicode\";\n ParseErrorCode[ParseErrorCode[\"InvalidEscapeCharacter\"] = 15] = \"InvalidEscapeCharacter\";\n ParseErrorCode[ParseErrorCode[\"InvalidCharacter\"] = 16] = \"InvalidCharacter\";\n})(ParseErrorCode || (ParseErrorCode = {}));\nexport function printParseErrorCode(code) {\n switch (code) {\n case 1 /* ParseErrorCode.InvalidSymbol */: return 'InvalidSymbol';\n case 2 /* ParseErrorCode.InvalidNumberFormat */: return 'InvalidNumberFormat';\n case 3 /* ParseErrorCode.PropertyNameExpected */: return 'PropertyNameExpected';\n case 4 /* ParseErrorCode.ValueExpected */: return 'ValueExpected';\n case 5 /* ParseErrorCode.ColonExpected */: return 'ColonExpected';\n case 6 /* ParseErrorCode.CommaExpected */: return 'CommaExpected';\n case 7 /* ParseErrorCode.CloseBraceExpected */: return 'CloseBraceExpected';\n case 8 /* ParseErrorCode.CloseBracketExpected */: return 'CloseBracketExpected';\n case 9 /* ParseErrorCode.EndOfFileExpected */: return 'EndOfFileExpected';\n case 10 /* ParseErrorCode.InvalidCommentToken */: return 'InvalidCommentToken';\n case 11 /* ParseErrorCode.UnexpectedEndOfComment */: return 'UnexpectedEndOfComment';\n case 12 /* ParseErrorCode.UnexpectedEndOfString */: return 'UnexpectedEndOfString';\n case 13 /* ParseErrorCode.UnexpectedEndOfNumber */: return 'UnexpectedEndOfNumber';\n case 14 /* ParseErrorCode.InvalidUnicode */: return 'InvalidUnicode';\n case 15 /* ParseErrorCode.InvalidEscapeCharacter */: return 'InvalidEscapeCharacter';\n case 16 /* ParseErrorCode.InvalidCharacter */: return 'InvalidCharacter';\n }\n return '<unknown ParseErrorCode>';\n}\n/**\n * Computes the edit operations needed to format a JSON document.\n *\n * @param documentText The input text\n * @param range The range to format or `undefined` to format the full content\n * @param options The formatting options\n * @returns The edit operations describing the formatting changes to the original document following the format described in {@linkcode EditResult}.\n * To apply the edit operations to the input, use {@linkcode applyEdits}.\n */\nexport function format(documentText, range, options) {\n return formatter.format(documentText, range, options);\n}\n/**\n * Computes the edit operations needed to modify a value in the JSON document.\n *\n * @param documentText The input text\n * @param path The path of the value to change. The path represents either to the document root, a property or an array item.\n * If the path points to an non-existing property or item, it will be created.\n * @param value The new value for the specified property or item. If the value is undefined,\n * the property or item will be removed.\n * @param options Options\n * @returns The edit operations describing the changes to the original document, following the format described in {@linkcode EditResult}.\n * To apply the edit operations to the input, use {@linkcode applyEdits}.\n */\nexport function modify(text, path, value, options) {\n return edit.setProperty(text, path, value, options);\n}\n/**\n * Applies edits to an input string.\n * @param text The input text\n * @param edits Edit operations following the format described in {@linkcode EditResult}.\n * @returns The text with the applied edits.\n * @throws An error if the edit operations are not well-formed as described in {@linkcode EditResult}.\n */\nexport function applyEdits(text, edits) {\n let sortedEdits = edits.slice(0).sort((a, b) => {\n const diff = a.offset - b.offset;\n if (diff === 0) {\n return a.length - b.length;\n }\n return diff;\n });\n let lastModifiedOffset = text.length;\n for (let i = sortedEdits.length - 1; i >= 0; i--) {\n let e = sortedEdits[i];\n if (e.offset + e.length <= lastModifiedOffset) {\n text = edit.applyEdit(text, e);\n }\n else {\n throw new Error('Overlapping edit');\n }\n lastModifiedOffset = e.offset;\n }\n return text;\n}\n","// 'path' module extracted from Node.js v8.11.1 (only the posix part)\n// transplited with Babel\n\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nfunction assertPath(path) {\n if (typeof path !== 'string') {\n throw new TypeError('Path must be a string. Received ' + JSON.stringify(path));\n }\n}\n\n// Resolves . and .. elements in a path with directory names\nfunction normalizeStringPosix(path, allowAboveRoot) {\n var res = '';\n var lastSegmentLength = 0;\n var lastSlash = -1;\n var dots = 0;\n var code;\n for (var i = 0; i <= path.length; ++i) {\n if (i < path.length)\n code = path.charCodeAt(i);\n else if (code === 47 /*/*/)\n break;\n else\n code = 47 /*/*/;\n if (code === 47 /*/*/) {\n if (lastSlash === i - 1 || dots === 1) {\n // NOOP\n } else if (lastSlash !== i - 1 && dots === 2) {\n if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 /*.*/ || res.charCodeAt(res.length - 2) !== 46 /*.*/) {\n if (res.length > 2) {\n var lastSlashIndex = res.lastIndexOf('/');\n if (lastSlashIndex !== res.length - 1) {\n if (lastSlashIndex === -1) {\n res = '';\n lastSegmentLength = 0;\n } else {\n res = res.slice(0, lastSlashIndex);\n lastSegmentLength = res.length - 1 - res.lastIndexOf('/');\n }\n lastSlash = i;\n dots = 0;\n continue;\n }\n } else if (res.length === 2 || res.length === 1) {\n res = '';\n lastSegmentLength = 0;\n lastSlash = i;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n if (res.length > 0)\n res += '/..';\n else\n res = '..';\n lastSegmentLength = 2;\n }\n } else {\n if (res.length > 0)\n res += '/' + path.slice(lastSlash + 1, i);\n else\n res = path.slice(lastSlash + 1, i);\n lastSegmentLength = i - lastSlash - 1;\n }\n lastSlash = i;\n dots = 0;\n } else if (code === 46 /*.*/ && dots !== -1) {\n ++dots;\n } else {\n dots = -1;\n }\n }\n return res;\n}\n\nfunction _format(sep, pathObject) {\n var dir = pathObject.dir || pathObject.root;\n var base = pathObject.base || (pathObject.name || '') + (pathObject.ext || '');\n if (!dir) {\n return base;\n }\n if (dir === pathObject.root) {\n return dir + base;\n }\n return dir + sep + base;\n}\n\nvar posix = {\n // path.resolve([from ...], to)\n resolve: function resolve() {\n var resolvedPath = '';\n var resolvedAbsolute = false;\n var cwd;\n\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path;\n if (i >= 0)\n path = arguments[i];\n else {\n if (cwd === undefined)\n cwd = process.cwd();\n path = cwd;\n }\n\n assertPath(path);\n\n // Skip empty entries\n if (path.length === 0) {\n continue;\n }\n\n resolvedPath = path + '/' + resolvedPath;\n resolvedAbsolute = path.charCodeAt(0) === 47 /*/*/;\n }\n\n // At this point the path should be resolved to a full absolute path, but\n // handle relative paths to be safe (might happen when process.cwd() fails)\n\n // Normalize the path\n resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);\n\n if (resolvedAbsolute) {\n if (resolvedPath.length > 0)\n return '/' + resolvedPath;\n else\n return '/';\n } else if (resolvedPath.length > 0) {\n return resolvedPath;\n } else {\n return '.';\n }\n },\n\n normalize: function normalize(path) {\n assertPath(path);\n\n if (path.length === 0) return '.';\n\n var isAbsolute = path.charCodeAt(0) === 47 /*/*/;\n var trailingSeparator = path.charCodeAt(path.length - 1) === 47 /*/*/;\n\n // Normalize the path\n path = normalizeStringPosix(path, !isAbsolute);\n\n if (path.length === 0 && !isAbsolute) path = '.';\n if (path.length > 0 && trailingSeparator) path += '/';\n\n if (isAbsolute) return '/' + path;\n return path;\n },\n\n isAbsolute: function isAbsolute(path) {\n assertPath(path);\n return path.length > 0 && path.charCodeAt(0) === 47 /*/*/;\n },\n\n join: function join() {\n if (arguments.length === 0)\n return '.';\n var joined;\n for (var i = 0; i < arguments.length; ++i) {\n var arg = arguments[i];\n assertPath(arg);\n if (arg.length > 0) {\n if (joined === undefined)\n joined = arg;\n else\n joined += '/' + arg;\n }\n }\n if (joined === undefined)\n return '.';\n return posix.normalize(joined);\n },\n\n relative: function relative(from, to) {\n assertPath(from);\n assertPath(to);\n\n if (from === to) return '';\n\n from = posix.resolve(from);\n to = posix.resolve(to);\n\n if (from === to) return '';\n\n // Trim any leading backslashes\n var fromStart = 1;\n for (; fromStart < from.length; ++fromStart) {\n if (from.charCodeAt(fromStart) !== 47 /*/*/)\n break;\n }\n var fromEnd = from.length;\n var fromLen = fromEnd - fromStart;\n\n // Trim any leading backslashes\n var toStart = 1;\n for (; toStart < to.length; ++toStart) {\n if (to.charCodeAt(toStart) !== 47 /*/*/)\n break;\n }\n var toEnd = to.length;\n var toLen = toEnd - toStart;\n\n // Compare paths to find the longest common path from root\n var length = fromLen < toLen ? fromLen : toLen;\n var lastCommonSep = -1;\n var i = 0;\n for (; i <= length; ++i) {\n if (i === length) {\n if (toLen > length) {\n if (to.charCodeAt(toStart + i) === 47 /*/*/) {\n // We get here if `from` is the exact base path for `to`.\n // For example: from='/foo/bar'; to='/foo/bar/baz'\n return to.slice(toStart + i + 1);\n } else if (i === 0) {\n // We get here if `from` is the root\n // For example: from='/'; to='/foo'\n return to.slice(toStart + i);\n }\n } else if (fromLen > length) {\n if (from.charCodeAt(fromStart + i) === 47 /*/*/) {\n // We get here if `to` is the exact base path for `from`.\n // For example: from='/foo/bar/baz'; to='/foo/bar'\n lastCommonSep = i;\n } else if (i === 0) {\n // We get here if `to` is the root.\n // For example: from='/foo'; to='/'\n lastCommonSep = 0;\n }\n }\n break;\n }\n var fromCode = from.charCodeAt(fromStart + i);\n var toCode = to.charCodeAt(toStart + i);\n if (fromCode !== toCode)\n break;\n else if (fromCode === 47 /*/*/)\n lastCommonSep = i;\n }\n\n var out = '';\n // Generate the relative path based on the path difference between `to`\n // and `from`\n for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {\n if (i === fromEnd || from.charCodeAt(i) === 47 /*/*/) {\n if (out.length === 0)\n out += '..';\n else\n out += '/..';\n }\n }\n\n // Lastly, append the rest of the destination (`to`) path that comes after\n // the common path parts\n if (out.length > 0)\n return out + to.slice(toStart + lastCommonSep);\n else {\n toStart += lastCommonSep;\n if (to.charCodeAt(toStart) === 47 /*/*/)\n ++toStart;\n return to.slice(toStart);\n }\n },\n\n _makeLong: function _makeLong(path) {\n return path;\n },\n\n dirname: function dirname(path) {\n assertPath(path);\n if (path.length === 0) return '.';\n var code = path.charCodeAt(0);\n var hasRoot = code === 47 /*/*/;\n var end = -1;\n var matchedSlash = true;\n for (var i = path.length - 1; i >= 1; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n if (!matchedSlash) {\n end = i;\n break;\n }\n } else {\n // We saw the first non-path separator\n matchedSlash = false;\n }\n }\n\n if (end === -1) return hasRoot ? '/' : '.';\n if (hasRoot && end === 1) return '//';\n return path.slice(0, end);\n },\n\n basename: function basename(path, ext) {\n if (ext !== undefined && typeof ext !== 'string') throw new TypeError('\"ext\" argument must be a string');\n assertPath(path);\n\n var start = 0;\n var end = -1;\n var matchedSlash = true;\n var i;\n\n if (ext !== undefined && ext.length > 0 && ext.length <= path.length) {\n if (ext.length === path.length && ext === path) return '';\n var extIdx = ext.length - 1;\n var firstNonSlashEnd = -1;\n for (i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else {\n if (firstNonSlashEnd === -1) {\n // We saw the first non-path separator, remember this index in case\n // we need it if the extension ends up not matching\n matchedSlash = false;\n firstNonSlashEnd = i + 1;\n }\n if (extIdx >= 0) {\n // Try to match the explicit extension\n if (code === ext.charCodeAt(extIdx)) {\n if (--extIdx === -1) {\n // We matched the extension, so mark this as the end of our path\n // component\n end = i;\n }\n } else {\n // Extension does not match, so our result is the entire path\n // component\n extIdx = -1;\n end = firstNonSlashEnd;\n }\n }\n }\n }\n\n if (start === end) end = firstNonSlashEnd;else if (end === -1) end = path.length;\n return path.slice(start, end);\n } else {\n for (i = path.length - 1; i >= 0; --i) {\n if (path.charCodeAt(i) === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // path component\n matchedSlash = false;\n end = i + 1;\n }\n }\n\n if (end === -1) return '';\n return path.slice(start, end);\n }\n },\n\n extname: function extname(path) {\n assertPath(path);\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n for (var i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1)\n startDot = i;\n else if (preDotState !== 1)\n preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return '';\n }\n return path.slice(startDot, end);\n },\n\n format: function format(pathObject) {\n if (pathObject === null || typeof pathObject !== 'object') {\n throw new TypeError('The \"pathObject\" argument must be of type Object. Received type ' + typeof pathObject);\n }\n return _format('/', pathObject);\n },\n\n parse: function parse(path) {\n assertPath(path);\n\n var ret = { root: '', dir: '', base: '', ext: '', name: '' };\n if (path.length === 0) return ret;\n var code = path.charCodeAt(0);\n var isAbsolute = code === 47 /*/*/;\n var start;\n if (isAbsolute) {\n ret.root = '/';\n start = 1;\n } else {\n start = 0;\n }\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n var i = path.length - 1;\n\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n\n // Get non-dir info\n for (; i >= start; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1) startDot = i;else if (preDotState !== 1) preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n if (end !== -1) {\n if (startPart === 0 && isAbsolute) ret.base = ret.name = path.slice(1, end);else ret.base = ret.name = path.slice(startPart, end);\n }\n } else {\n if (startPart === 0 && isAbsolute) {\n ret.name = path.slice(1, startDot);\n ret.base = path.slice(1, end);\n } else {\n ret.name = path.slice(startPart, startDot);\n ret.base = path.slice(startPart, end);\n }\n ret.ext = path.slice(startDot, end);\n }\n\n if (startPart > 0) ret.dir = path.slice(0, startPart - 1);else if (isAbsolute) ret.dir = '/';\n\n return ret;\n },\n\n sep: '/',\n delimiter: ':',\n win32: null,\n posix: null\n};\n\nposix.posix = posix;\n\nmodule.exports = posix;\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 *--------------------------------------------------------------------------------------------*/\n\nexport const agent = undefined;\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 *--------------------------------------------------------------------------------------------*/\n\nimport { getLocation, JSONPath, parse, visit, Location } from 'jsonc-parser';\nimport * as vscode from 'vscode';\nimport { SettingsDocument } from './settingsDocumentHelper';\nimport { provideInstalledExtensionProposals } from './extensionsProposals';\nimport './importExportProfiles';\n\nexport function activate(context: vscode.ExtensionContext): void {\n\t//settings.json suggestions\n\tcontext.subscriptions.push(registerSettingsCompletions());\n\n\t//extensions suggestions\n\tcontext.subscriptions.push(...registerExtensionsCompletions());\n\n\t// launch.json variable suggestions\n\tcontext.subscriptions.push(registerVariableCompletions('**/launch.json'));\n\n\t// task.json variable suggestions\n\tcontext.subscriptions.push(registerVariableCompletions('**/tasks.json'));\n\n\t// Workspace file launch/tasks variable completions\n\tcontext.subscriptions.push(registerVariableCompletions('**/*.code-workspace'));\n\n\t// keybindings.json/package.json context key suggestions\n\tcontext.subscriptions.push(registerContextKeyCompletions());\n}\n\nfunction registerSettingsCompletions(): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ language: 'jsonc', pattern: '**/settings.json' }, {\n\t\tprovideCompletionItems(document, position, token) {\n\t\t\treturn new SettingsDocument(document).provideCompletionItems(position, token);\n\t\t}\n\t});\n}\n\nfunction registerVariableCompletions(pattern: string): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ language: 'jsonc', pattern }, {\n\t\tprovideCompletionItems(document, position, _token) {\n\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\t\t\tif (isCompletingInsidePropertyStringValue(document, location, position)) {\n\t\t\t\tif (document.fileName.endsWith('.code-workspace') && !isLocationInsideTopLevelProperty(location, ['launch', 'tasks'])) {\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\n\t\t\t\tlet range = document.getWordRangeAtPosition(position, /\\$\\{[^\"\\}]*\\}?/);\n\t\t\t\tif (!range || range.start.isEqual(position) || range.end.isEqual(position) && document.getText(range).endsWith('}')) {\n\t\t\t\t\trange = new vscode.Range(position, position);\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t{ label: 'workspaceFolder', detail: vscode.l10n.t(\"The path of the folder opened in VS Code\") },\n\t\t\t\t\t{ label: 'workspaceFolderBasename', detail: vscode.l10n.t(\"The name of the folder opened in VS Code without any slashes (/)\") },\n\t\t\t\t\t{ label: 'fileWorkspaceFolderBasename', detail: vscode.l10n.t(\"The current opened file workspace folder name without any slashes (/)\") },\n\t\t\t\t\t{ label: 'relativeFile', detail: vscode.l10n.t(\"The current opened file relative to ${workspaceFolder}\") },\n\t\t\t\t\t{ label: 'relativeFileDirname', detail: vscode.l10n.t(\"The current opened file's dirname relative to ${workspaceFolder}\") },\n\t\t\t\t\t{ label: 'file', detail: vscode.l10n.t(\"The current opened file\") },\n\t\t\t\t\t{ label: 'cwd', detail: vscode.l10n.t(\"The task runner's current working directory on startup\") },\n\t\t\t\t\t{ label: 'lineNumber', detail: vscode.l10n.t(\"The current selected line number in the active file\") },\n\t\t\t\t\t{ label: 'selectedText', detail: vscode.l10n.t(\"The current selected text in the active file\") },\n\t\t\t\t\t{ label: 'fileDirname', detail: vscode.l10n.t(\"The current opened file's dirname\") },\n\t\t\t\t\t{ label: 'fileExtname', detail: vscode.l10n.t(\"The current opened file's extension\") },\n\t\t\t\t\t{ label: 'fileBasename', detail: vscode.l10n.t(\"The current opened file's basename\") },\n\t\t\t\t\t{ label: 'fileBasenameNoExtension', detail: vscode.l10n.t(\"The current opened file's basename with no file extension\") },\n\t\t\t\t\t{ label: 'defaultBuildTask', detail: vscode.l10n.t(\"The name of the default build task. If there is not a single default build task then a quick pick is shown to choose the build task.\") },\n\t\t\t\t\t{ label: 'pathSeparator', detail: vscode.l10n.t(\"The character used by the operating system to separate components in file paths. Is also aliased to '/'.\") },\n\t\t\t\t\t{ label: 'extensionInstallFolder', detail: vscode.l10n.t(\"The path where an extension is installed.\"), param: 'publisher.extension' },\n\t\t\t\t].map(variable => ({\n\t\t\t\t\tlabel: `\\${${variable.label}}`,\n\t\t\t\t\trange,\n\t\t\t\t\tinsertText: variable.param ? new vscode.SnippetString(`\\${${variable.label}:`).appendPlaceholder(variable.param).appendText('}') : (`\\${${variable.label}}`),\n\t\t\t\t\tdetail: variable.detail\n\t\t\t\t}));\n\t\t\t}\n\n\t\t\treturn [];\n\t\t}\n\t});\n}\n\nfunction isCompletingInsidePropertyStringValue(document: vscode.TextDocument, location: Location, pos: vscode.Position) {\n\tif (location.isAtPropertyKey) {\n\t\treturn false;\n\t}\n\tconst previousNode = location.previousNode;\n\tif (previousNode && previousNode.type === 'string') {\n\t\tconst offset = document.offsetAt(pos);\n\t\treturn offset > previousNode.offset && offset < previousNode.offset + previousNode.length;\n\t}\n\treturn false;\n}\n\nfunction isLocationInsideTopLevelProperty(location: Location, values: string[]) {\n\treturn values.includes(location.path[0] as string);\n}\n\ninterface IExtensionsContent {\n\trecommendations: string[];\n}\n\nfunction registerExtensionsCompletions(): vscode.Disposable[] {\n\treturn [registerExtensionsCompletionsInExtensionsDocument(), registerExtensionsCompletionsInWorkspaceConfigurationDocument()];\n}\n\nfunction registerExtensionsCompletionsInExtensionsDocument(): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ pattern: '**/extensions.json' }, {\n\t\tprovideCompletionItems(document, position, _token) {\n\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\t\t\tif (location.path[0] === 'recommendations') {\n\t\t\t\tconst range = getReplaceRange(document, location, position);\n\t\t\t\tconst extensionsContent = <IExtensionsContent>parse(document.getText());\n\t\t\t\treturn provideInstalledExtensionProposals(extensionsContent && extensionsContent.recommendations || [], '', range, false);\n\t\t\t}\n\t\t\treturn [];\n\t\t}\n\t});\n}\n\nfunction registerExtensionsCompletionsInWorkspaceConfigurationDocument(): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ pattern: '**/*.code-workspace' }, {\n\t\tprovideCompletionItems(document, position, _token) {\n\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\t\t\tif (location.path[0] === 'extensions' && location.path[1] === 'recommendations') {\n\t\t\t\tconst range = getReplaceRange(document, location, position);\n\t\t\t\tconst extensionsContent = <IExtensionsContent>parse(document.getText())['extensions'];\n\t\t\t\treturn provideInstalledExtensionProposals(extensionsContent && extensionsContent.recommendations || [], '', range, false);\n\t\t\t}\n\t\t\treturn [];\n\t\t}\n\t});\n}\n\nfunction getReplaceRange(document: vscode.TextDocument, location: Location, position: vscode.Position) {\n\tconst node = location.previousNode;\n\tif (node) {\n\t\tconst nodeStart = document.positionAt(node.offset), nodeEnd = document.positionAt(node.offset + node.length);\n\t\tif (nodeStart.isBeforeOrEqual(position) && nodeEnd.isAfterOrEqual(position)) {\n\t\t\treturn new vscode.Range(nodeStart, nodeEnd);\n\t\t}\n\t}\n\treturn new vscode.Range(position, position);\n}\n\nvscode.languages.registerDocumentSymbolProvider({ pattern: '**/launch.json', language: 'jsonc' }, {\n\tprovideDocumentSymbols(document: vscode.TextDocument, _token: vscode.CancellationToken): vscode.ProviderResult<vscode.SymbolInformation[]> {\n\t\tconst result: vscode.SymbolInformation[] = [];\n\t\tlet name: string = '';\n\t\tlet lastProperty = '';\n\t\tlet startOffset = 0;\n\t\tlet depthInObjects = 0;\n\n\t\tvisit(document.getText(), {\n\t\t\tonObjectProperty: (property, _offset, _length) => {\n\t\t\t\tlastProperty = property;\n\t\t\t},\n\t\t\tonLiteralValue: (value: any, _offset: number, _length: number) => {\n\t\t\t\tif (lastProperty === 'name') {\n\t\t\t\t\tname = value;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonObjectBegin: (offset: number, _length: number) => {\n\t\t\t\tdepthInObjects++;\n\t\t\t\tif (depthInObjects === 2) {\n\t\t\t\t\tstartOffset = offset;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonObjectEnd: (offset: number, _length: number) => {\n\t\t\t\tif (name && depthInObjects === 2) {\n\t\t\t\t\tresult.push(new vscode.SymbolInformation(name, vscode.SymbolKind.Object, new vscode.Range(document.positionAt(startOffset), document.positionAt(offset))));\n\t\t\t\t}\n\t\t\t\tdepthInObjects--;\n\t\t\t},\n\t\t});\n\n\t\treturn result;\n\t}\n}, { label: 'Launch Targets' });\n\nfunction registerContextKeyCompletions(): vscode.Disposable {\n\ttype ContextKeyInfo = { key: string; type?: string; description?: string };\n\n\tconst paths = new Map<vscode.DocumentFilter, JSONPath[]>([\n\t\t[{ language: 'jsonc', pattern: '**/keybindings.json' }, [\n\t\t\t['*', 'when']\n\t\t]],\n\t\t[{ language: 'json', pattern: '**/package.json' }, [\n\t\t\t['contributes', 'menus', '*', '*', 'when'],\n\t\t\t['contributes', 'views', '*', '*', 'when'],\n\t\t\t['contributes', 'viewsWelcome', '*', 'when'],\n\t\t\t['contributes', 'keybindings', '*', 'when'],\n\t\t\t['contributes', 'keybindings', 'when'],\n\t\t]]\n\t]);\n\n\treturn vscode.languages.registerCompletionItemProvider(\n\t\t[...paths.keys()],\n\t\t{\n\t\t\tasync provideCompletionItems(document: vscode.TextDocument, position: vscode.Position, token: vscode.CancellationToken) {\n\n\t\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\n\t\t\t\tif (location.isAtPropertyKey) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet isValidLocation = false;\n\t\t\t\tfor (const [key, value] of paths) {\n\t\t\t\t\tif (vscode.languages.match(key, document)) {\n\t\t\t\t\t\tif (value.some(location.matches.bind(location))) {\n\t\t\t\t\t\t\tisValidLocation = true;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (!isValidLocation || !isCompletingInsidePropertyStringValue(document, location, position)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst replacing = document.getWordRangeAtPosition(position, /[a-zA-Z.]+/) || new vscode.Range(position, position);\n\t\t\t\tconst inserting = replacing.with(undefined, position);\n\n\t\t\t\tconst data = await vscode.commands.executeCommand<ContextKeyInfo[]>('getContextKeyInfo');\n\t\t\t\tif (token.isCancellationRequested || !data) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst result = new vscode.CompletionList();\n\t\t\t\tfor (const item of data) {\n\t\t\t\t\tconst completion = new vscode.CompletionItem(item.key, vscode.CompletionItemKind.Constant);\n\t\t\t\t\tcompletion.detail = item.type;\n\t\t\t\t\tcompletion.range = { replacing, inserting };\n\t\t\t\t\tcompletion.documentation = item.description;\n\t\t\t\t\tresult.items.push(completion);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t}\n\t\t}\n\t);\n}\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 *--------------------------------------------------------------------------------------------*/\n\nimport * as vscode from 'vscode';\n\n\nexport async function provideInstalledExtensionProposals(existing: string[], additionalText: string, range: vscode.Range, includeBuiltinExtensions: boolean): Promise<vscode.CompletionItem[] | vscode.CompletionList> {\n\tif (Array.isArray(existing)) {\n\t\tconst extensions = includeBuiltinExtensions ? vscode.extensions.all : vscode.extensions.all.filter(e => !(e.id.startsWith('vscode.') || e.id === 'Microsoft.vscode-markdown'));\n\t\tconst knownExtensionProposals = extensions.filter(e => existing.indexOf(e.id) === -1);\n\t\tif (knownExtensionProposals.length) {\n\t\t\treturn knownExtensionProposals.map(e => {\n\t\t\t\tconst item = new vscode.CompletionItem(e.id);\n\t\t\t\tconst insertText = `\"${e.id}\"${additionalText}`;\n\t\t\t\titem.kind = vscode.CompletionItemKind.Value;\n\t\t\t\titem.insertText = insertText;\n\t\t\t\titem.range = range;\n\t\t\t\titem.filterText = insertText;\n\t\t\t\treturn item;\n\t\t\t});\n\t\t} else {\n\t\t\tconst example = new vscode.CompletionItem(vscode.l10n.t(\"Example\"));\n\t\t\texample.insertText = '\"vscode.csharp\"';\n\t\t\texample.kind = vscode.CompletionItemKind.Value;\n\t\t\texample.range = range;\n\t\t\treturn [example];\n\t\t}\n\t}\n\treturn [];\n}\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 *--------------------------------------------------------------------------------------------*/\n\nimport { Octokit } from '@octokit/rest';\nimport * as vscode from 'vscode';\nimport { basename } from 'path';\nimport { agent } from './node/net';\n\nclass GitHubGistProfileContentHandler implements vscode.ProfileContentHandler {\n\n\treadonly name = vscode.l10n.t('GitHub');\n\treadonly description = vscode.l10n.t('gist');\n\n\tprivate _octokit: Promise<Octokit> | undefined;\n\tprivate getOctokit(): Promise<Octokit> {\n\t\tif (!this._octokit) {\n\t\t\tthis._octokit = (async () => {\n\t\t\t\tconst session = await vscode.authentication.getSession('github', ['gist', 'user:email'], { createIfNone: true });\n\t\t\t\tconst token = session.accessToken;\n\n\t\t\t\tconst { Octokit } = await import('@octokit/rest');\n\n\t\t\t\treturn new Octokit({\n\t\t\t\t\trequest: { agent },\n\t\t\t\t\tuserAgent: 'GitHub VSCode',\n\t\t\t\t\tauth: `token ${token}`\n\t\t\t\t});\n\t\t\t})();\n\t\t}\n\t\treturn this._octokit;\n\t}\n\n\tasync saveProfile(name: string, content: string): Promise<{ readonly id: string; readonly link: vscode.Uri } | null> {\n\t\tconst octokit = await this.getOctokit();\n\t\tconst result = await octokit.gists.create({\n\t\t\tpublic: false,\n\t\t\tfiles: {\n\t\t\t\t[name]: {\n\t\t\t\t\tcontent\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tif (result.data.id && result.data.html_url) {\n\t\t\tconst link = vscode.Uri.parse(result.data.html_url);\n\t\t\treturn { id: result.data.id, link };\n\t\t}\n\t\treturn null;\n\t}\n\n\tprivate _public_octokit: Promise<Octokit> | undefined;\n\tprivate getPublicOctokit(): Promise<Octokit> {\n\t\tif (!this._public_octokit) {\n\t\t\tthis._public_octokit = (async () => {\n\t\t\t\tconst { Octokit } = await import('@octokit/rest');\n\t\t\t\treturn new Octokit({ request: { agent }, userAgent: 'GitHub VSCode' });\n\t\t\t})();\n\t\t}\n\t\treturn this._public_octokit;\n\t}\n\n\tasync readProfile(id: string): Promise<string | null>;\n\tasync readProfile(uri: vscode.Uri): Promise<string | null>;\n\tasync readProfile(arg: string | vscode.Uri): Promise<string | null> {\n\t\tconst gist_id = typeof arg === 'string' ? arg : basename(arg.path);\n\t\tconst octokit = await this.getPublicOctokit();\n\t\ttry {\n\t\t\tconst gist = await octokit.gists.get({ gist_id });\n\t\t\tif (gist.data.files) {\n\t\t\t\treturn gist.data.files[Object.keys(gist.data.files)[0]]?.content ?? null;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// ignore\n\t\t}\n\t\treturn null;\n\t}\n\n}\n\nvscode.window.registerProfileContentHandler('github', new GitHubGistProfileContentHandler());\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 *--------------------------------------------------------------------------------------------*/\n\nimport * as vscode from 'vscode';\nimport { getLocation, Location, parse } from 'jsonc-parser';\nimport { provideInstalledExtensionProposals } from './extensionsProposals';\n\nconst OVERRIDE_IDENTIFIER_REGEX = /\\[([^\\[\\]]*)\\]/g;\n\nexport class SettingsDocument {\n\n\tconstructor(private document: vscode.TextDocument) { }\n\n\tpublic async provideCompletionItems(position: vscode.Position, _token: vscode.CancellationToken): Promise<vscode.CompletionItem[] | vscode.CompletionList> {\n\t\tconst location = getLocation(this.document.getText(), this.document.offsetAt(position));\n\n\t\t// window.title\n\t\tif (location.path[0] === 'window.title') {\n\t\t\treturn this.provideWindowTitleCompletionItems(location, position);\n\t\t}\n\n\t\t// files.association\n\t\tif (location.path[0] === 'files.associations') {\n\t\t\treturn this.provideFilesAssociationsCompletionItems(location, position);\n\t\t}\n\n\t\t// files.exclude, search.exclude, explorer.autoRevealExclude\n\t\tif (location.path[0] === 'files.exclude' || location.path[0] === 'search.exclude' || location.path[0] === 'explorer.autoRevealExclude') {\n\t\t\treturn this.provideExcludeCompletionItems(location, position);\n\t\t}\n\n\t\t// files.defaultLanguage\n\t\tif (location.path[0] === 'files.defaultLanguage') {\n\t\t\treturn this.provideLanguageCompletionItems(location, position);\n\t\t}\n\n\t\t// workbench.editor.label\n\t\tif (location.path[0] === 'workbench.editor.label.patterns') {\n\t\t\treturn this.provideEditorLabelCompletionItems(location, position);\n\t\t}\n\n\t\t// settingsSync.ignoredExtensions\n\t\tif (location.path[0] === 'settingsSync.ignoredExtensions') {\n\t\t\tlet ignoredExtensions = [];\n\t\t\ttry {\n\t\t\t\tignoredExtensions = parse(this.document.getText())['settingsSync.ignoredExtensions'];\n\t\t\t} catch (e) {/* ignore error */ }\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\treturn provideInstalledExtensionProposals(ignoredExtensions, '', range, true);\n\t\t}\n\n\t\t// remote.extensionKind\n\t\tif (location.path[0] === 'remote.extensionKind' && location.path.length === 2 && location.isAtPropertyKey) {\n\t\t\tlet alreadyConfigured: string[] = [];\n\t\t\ttry {\n\t\t\t\talreadyConfigured = Object.keys(parse(this.document.getText())['remote.extensionKind']);\n\t\t\t} catch (e) {/* ignore error */ }\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\treturn provideInstalledExtensionProposals(alreadyConfigured, location.previousNode ? '' : `: [\\n\\t\"ui\"\\n]`, range, true);\n\t\t}\n\n\t\t// remote.portsAttributes\n\t\tif (location.path[0] === 'remote.portsAttributes' && location.path.length === 2 && location.isAtPropertyKey) {\n\t\t\treturn this.providePortsAttributesCompletionItem(this.getReplaceRange(location, position));\n\t\t}\n\n\t\treturn this.provideLanguageOverridesCompletionItems(location, position);\n\t}\n\n\tprivate getReplaceRange(location: Location, position: vscode.Position) {\n\t\tconst node = location.previousNode;\n\t\tif (node) {\n\t\t\tconst nodeStart = this.document.positionAt(node.offset), nodeEnd = this.document.positionAt(node.offset + node.length);\n\t\t\tif (nodeStart.isBeforeOrEqual(position) && nodeEnd.isAfterOrEqual(position)) {\n\t\t\t\treturn new vscode.Range(nodeStart, nodeEnd);\n\t\t\t}\n\t\t}\n\t\treturn new vscode.Range(position, position);\n\t}\n\n\tprivate isCompletingPropertyValue(location: Location, pos: vscode.Position) {\n\t\tif (location.isAtPropertyKey) {\n\t\t\treturn false;\n\t\t}\n\t\tconst previousNode = location.previousNode;\n\t\tif (previousNode) {\n\t\t\tconst offset = this.document.offsetAt(pos);\n\t\t\treturn offset >= previousNode.offset && offset <= previousNode.offset + previousNode.length;\n\t\t}\n\t\treturn true;\n\t}\n\n\tprivate async provideWindowTitleCompletionItems(location: Location, pos: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\tif (!this.isCompletingPropertyValue(location, pos)) {\n\t\t\treturn completions;\n\t\t}\n\n\t\tlet range = this.document.getWordRangeAtPosition(pos, /\\$\\{[^\"\\}]*\\}?/);\n\t\tif (!range || range.start.isEqual(pos) || range.end.isEqual(pos) && this.document.getText(range).endsWith('}')) {\n\t\t\trange = new vscode.Range(pos, pos);\n\t\t}\n\n\t\tconst getText = (variable: string) => {\n\t\t\tconst text = '${' + variable + '}';\n\t\t\treturn location.previousNode ? text : JSON.stringify(text);\n\t\t};\n\n\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorShort'), range, vscode.l10n.t(\"the file name (e.g. myFile.txt)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorMedium'), range, vscode.l10n.t(\"the path of the file relative to the workspace folder (e.g. myFolder/myFileFolder/myFile.txt)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorLong'), range, vscode.l10n.t(\"the full path of the file (e.g. /Users/Development/myFolder/myFileFolder/myFile.txt)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeFolderShort'), range, vscode.l10n.t(\"the name of the folder the file is contained in (e.g. myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeFolderMedium'), range, vscode.l10n.t(\"the path of the folder the file is contained in, relative to the workspace folder (e.g. myFolder/myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeFolderLong'), range, vscode.l10n.t(\"the full path of the folder the file is contained in (e.g. /Users/Development/myFolder/myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('rootName'), range, vscode.l10n.t(\"name of the workspace with optional remote name and workspace indicator if applicable (e.g. myFolder, myRemoteFolder [SSH] or myWorkspace (Workspace))\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('rootNameShort'), range, vscode.l10n.t(\"shortened name of the workspace without suffixes (e.g. myFolder or myWorkspace)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('rootPath'), range, vscode.l10n.t(\"file path of the workspace (e.g. /Users/Development/myWorkspace)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('folderName'), range, vscode.l10n.t(\"name of the workspace folder the file is contained in (e.g. myFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('folderPath'), range, vscode.l10n.t(\"file path of the workspace folder the file is contained in (e.g. /Users/Development/myFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('appName'), range, vscode.l10n.t(\"e.g. VS Code\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('remoteName'), range, vscode.l10n.t(\"e.g. SSH\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('dirty'), range, vscode.l10n.t(\"an indicator for when the active editor has unsaved changes\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('separator'), range, vscode.l10n.t(\"a conditional separator (' - ') that only shows when surrounded by variables with values\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeRepositoryName'), range, vscode.l10n.t(\"the name of the active repository (e.g. vscode)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeRepositoryBranchName'), range, vscode.l10n.t(\"the name of the active branch in the active repository (e.g. main)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorState'), range, vscode.l10n.t(\"the state of the active editor (e.g. modified).\")));\n\t\treturn completions;\n\t}\n\n\tprivate async provideEditorLabelCompletionItems(location: Location, pos: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\tif (!this.isCompletingPropertyValue(location, pos)) {\n\t\t\treturn completions;\n\t\t}\n\n\t\tlet range = this.document.getWordRangeAtPosition(pos, /\\$\\{[^\"\\}]*\\}?/);\n\t\tif (!range || range.start.isEqual(pos) || range.end.isEqual(pos) && this.document.getText(range).endsWith('}')) {\n\t\t\trange = new vscode.Range(pos, pos);\n\t\t}\n\n\t\tconst getText = (variable: string) => {\n\t\t\tconst text = '${' + variable + '}';\n\t\t\treturn location.previousNode ? text : JSON.stringify(text);\n\t\t};\n\n\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('dirname'), range, vscode.l10n.t(\"The parent folder name of the editor (e.g. myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('dirname(1)'), range, vscode.l10n.t(\"The nth parent folder name of the editor\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('filename'), range, vscode.l10n.t(\"The file name of the editor without its directory or extension (e.g. myFile)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('extname'), range, vscode.l10n.t(\"The file extension of the editor (e.g. txt)\")));\n\t\treturn completions;\n\t}\n\n\tprivate async provideFilesAssociationsCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\tif (location.path.length === 2) {\n\t\t\t// Key\n\t\t\tif (location.path[1] === '') {\n\t\t\t\tconst range = this.getReplaceRange(location, position);\n\n\t\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\t\tlabel: vscode.l10n.t(\"Files with Extension\"),\n\t\t\t\t\tdocumentation: vscode.l10n.t(\"Map all files matching the glob pattern in their filename to the language with the given identifier.\"),\n\t\t\t\t\tsnippet: location.isAtPropertyKey ? '\"*.${1:extension}\": \"${2:language}\"' : '{ \"*.${1:extension}\": \"${2:language}\" }',\n\t\t\t\t\trange\n\t\t\t\t}));\n\n\t\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\t\tlabel: vscode.l10n.t(\"Files with Path\"),\n\t\t\t\t\tdocumentation: vscode.l10n.t(\"Map all files matching the absolute path glob pattern in their path to the language with the given identifier.\"),\n\t\t\t\t\tsnippet: location.isAtPropertyKey ? '\"/${1:path to file}/*.${2:extension}\": \"${3:language}\"' : '{ \"/${1:path to file}/*.${2:extension}\": \"${3:language}\" }',\n\t\t\t\t\trange\n\t\t\t\t}));\n\t\t\t} else if (this.isCompletingPropertyValue(location, position)) {\n\t\t\t\t// Value\n\t\t\t\treturn this.provideLanguageCompletionItemsForLanguageOverrides(this.getReplaceRange(location, position));\n\t\t\t}\n\t\t}\n\n\t\treturn completions;\n\t}\n\n\tprivate async provideExcludeCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\t// Key\n\t\tif (location.path.length === 1 || (location.path.length === 2 && location.path[1] === '')) {\n\t\t\tconst range = this.getReplaceRange(location, position);\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files by Extension\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match all files of a specific file extension.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/*.${1:extension}\": true' : '{ \"**/*.${1:extension}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files with Multiple Extensions\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match all files with any of the file extensions.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/*.{ext1,ext2,ext3}\": true' : '{ \"**/*.{ext1,ext2,ext3}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files with Siblings by Name\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match files that have siblings with the same name but a different extension.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/*.${1:source-extension}\": { \"when\": \"$(basename).${2:target-extension}\" }' : '{ \"**/*.${1:source-extension}\": { \"when\": \"$(basename).${2:target-extension}\" } }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Folder by Name (Top Level)\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match a top level folder with a specific name.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"${1:name}\": true' : '{ \"${1:name}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Folders with Multiple Names (Top Level)\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match multiple top level folders.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"{folder1,folder2,folder3}\": true' : '{ \"{folder1,folder2,folder3}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Folder by Name (Any Location)\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match a folder with a specific name in any location.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/${1:name}\": true' : '{ \"**/${1:name}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\t\t}\n\n\t\t// Value\n\t\telse if (location.path.length === 2 && this.isCompletingPropertyValue(location, position)) {\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files with Siblings by Name\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match files that have siblings with the same name but a different extension.\"),\n\t\t\t\tsnippet: '{ \"when\": \"$(basename).${1:extension}\" }',\n\t\t\t\trange\n\t\t\t}));\n\t\t}\n\n\t\treturn completions;\n\t}\n\n\tprivate async provideLanguageCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tif (location.path.length === 1 && this.isCompletingPropertyValue(location, position)) {\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\tconst languages = await vscode.languages.getLanguages();\n\t\t\treturn [\n\t\t\t\tthis.newSimpleCompletionItem(JSON.stringify('${activeEditorLanguage}'), range, vscode.l10n.t(\"Use the language of the currently active text editor if any\")),\n\t\t\t\t...languages.map(l => this.newSimpleCompletionItem(JSON.stringify(l), range))\n\t\t\t];\n\t\t}\n\t\treturn [];\n\t}\n\n\tprivate async provideLanguageCompletionItemsForLanguageOverrides(range: vscode.Range): Promise<vscode.CompletionItem[]> {\n\t\tconst languages = await vscode.languages.getLanguages();\n\t\tconst completionItems = [];\n\t\tfor (const language of languages) {\n\t\t\tconst item = new vscode.CompletionItem(JSON.stringify(language));\n\t\t\titem.kind = vscode.CompletionItemKind.Property;\n\t\t\titem.range = range;\n\t\t\tcompletionItems.push(item);\n\t\t}\n\t\treturn completionItems;\n\t}\n\n\tprivate async provideLanguageOverridesCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tif (location.path.length === 1 && location.isAtPropertyKey && location.previousNode && typeof location.previousNode.value === 'string' && location.previousNode.value.startsWith('[')) {\n\t\t\tconst startPosition = this.document.positionAt(location.previousNode.offset + 1);\n\t\t\tconst endPosition = startPosition.translate(undefined, location.previousNode.value.length);\n\t\t\tconst donotSuggestLanguages: string[] = [];\n\t\t\tconst languageOverridesRanges: vscode.Range[] = [];\n\t\t\tlet matches = OVERRIDE_IDENTIFIER_REGEX.exec(location.previousNode.value);\n\t\t\tlet lastLanguageOverrideRange: vscode.Range | undefined;\n\t\t\twhile (matches?.length) {\n\t\t\t\tlastLanguageOverrideRange = new vscode.Range(this.document.positionAt(location.previousNode.offset + 1 + matches.index), this.document.positionAt(location.previousNode.offset + 1 + matches.index + matches[0].length));\n\t\t\t\tlanguageOverridesRanges.push(lastLanguageOverrideRange);\n\t\t\t\t/* Suggest the configured language if the position is in the match range */\n\t\t\t\tif (!lastLanguageOverrideRange.contains(position)) {\n\t\t\t\t\tdonotSuggestLanguages.push(matches[1].trim());\n\t\t\t\t}\n\t\t\t\tmatches = OVERRIDE_IDENTIFIER_REGEX.exec(location.previousNode.value);\n\t\t\t}\n\t\t\tconst lastLanguageOverrideEndPosition = lastLanguageOverrideRange ? lastLanguageOverrideRange.end : startPosition;\n\t\t\tif (lastLanguageOverrideEndPosition.isBefore(endPosition)) {\n\t\t\t\tlanguageOverridesRanges.push(new vscode.Range(lastLanguageOverrideEndPosition, endPosition));\n\t\t\t}\n\t\t\tconst languageOverrideRange = languageOverridesRanges.find(range => range.contains(position));\n\n\t\t\t/**\n\t\t\t * Skip if suggestions are for first language override range\n\t\t\t * Since VSCode registers language overrides to the schema, JSON language server does suggestions for first language override.\n\t\t\t */\n\t\t\tif (languageOverrideRange && !languageOverrideRange.isEqual(languageOverridesRanges[0])) {\n\t\t\t\tconst languages = await vscode.languages.getLanguages();\n\t\t\t\tconst completionItems = [];\n\t\t\t\tfor (const language of languages) {\n\t\t\t\t\tif (!donotSuggestLanguages.includes(language)) {\n\t\t\t\t\t\tconst item = new vscode.CompletionItem(`[${language}]`);\n\t\t\t\t\t\titem.kind = vscode.CompletionItemKind.Property;\n\t\t\t\t\t\titem.range = languageOverrideRange;\n\t\t\t\t\t\tcompletionItems.push(item);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn completionItems;\n\t\t\t}\n\t\t}\n\t\treturn [];\n\t}\n\n\tprivate providePortsAttributesCompletionItem(range: vscode.Range): vscode.CompletionItem[] {\n\t\treturn [this.newSnippetCompletionItem(\n\t\t\t{\n\t\t\t\tlabel: '\\\"3000\\\"',\n\t\t\t\tdocumentation: 'Single Port Attribute',\n\t\t\t\trange,\n\t\t\t\tsnippet: '\\n \\\"${1:3000}\\\": {\\n \\\"label\\\": \\\"${2:Application}\\\",\\n \\\"onAutoForward\\\": \\\"${3:openPreview}\\\"\\n }\\n'\n\t\t\t}),\n\t\tthis.newSnippetCompletionItem(\n\t\t\t{\n\t\t\t\tlabel: '\\\"5000-6000\\\"',\n\t\t\t\tdocumentation: 'Ranged Port Attribute',\n\t\t\t\trange,\n\t\t\t\tsnippet: '\\n \\\"${1:40000-55000}\\\": {\\n \\\"onAutoForward\\\": \\\"${2:ignore}\\\"\\n }\\n'\n\t\t\t}),\n\t\tthis.newSnippetCompletionItem(\n\t\t\t{\n\t\t\t\tlabel: '\\\".+\\\\\\\\/server.js\\\"',\n\t\t\t\tdocumentation: 'Command Match Port Attribute',\n\t\t\t\trange,\n\t\t\t\tsnippet: '\\n \\\"${1:.+\\\\\\\\/server.js\\}\\\": {\\n \\\"label\\\": \\\"${2:Application}\\\",\\n \\\"onAutoForward\\\": \\\"${3:openPreview}\\\"\\n }\\n'\n\t\t\t})\n\t\t];\n\t}\n\n\tprivate newSimpleCompletionItem(text: string, range: vscode.Range, description?: string, insertText?: string): vscode.CompletionItem {\n\t\tconst item = new vscode.CompletionItem(text);\n\t\titem.kind = vscode.CompletionItemKind.Value;\n\t\titem.detail = description;\n\t\titem.insertText = insertText ? insertText : text;\n\t\titem.range = range;\n\t\treturn item;\n\t}\n\n\tprivate newSnippetCompletionItem(o: { label: string; documentation?: string; snippet: string; range: vscode.Range }): vscode.CompletionItem {\n\t\tconst item = new vscode.CompletionItem(o.label);\n\t\titem.kind = vscode.CompletionItemKind.Value;\n\t\titem.documentation = o.documentation;\n\t\titem.insertText = new vscode.SnippetString(o.snippet);\n\t\titem.range = o.range;\n\t\treturn item;\n\t}\n}\n","module.exports = require(\"vscode\");","'use strict'\n\nconst NullObject = function NullObject () { }\nNullObject.prototype = Object.create(null)\n\n/**\n * RegExp to match *( \";\" parameter ) in RFC 7231 sec 3.1.1.1\n *\n * parameter = token \"=\" ( token / quoted-string )\n * token = 1*tchar\n * tchar = \"!\" / \"#\" / \"$\" / \"%\" / \"&\" / \"'\" / \"*\"\n * / \"+\" / \"-\" / \".\" / \"^\" / \"_\" / \"`\" / \"|\" / \"~\"\n * / DIGIT / ALPHA\n * ; any VCHAR, except delimiters\n * quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE\n * qdtext = HTAB / SP / %x21 / %x23-5B / %x5D-7E / obs-text\n * obs-text = %x80-FF\n * quoted-pair = \"\\\" ( HTAB / SP / VCHAR / obs-text )\n */\nconst paramRE = /; *([!#$%&'*+.^\\w`|~-]+)=(\"(?:[\\v\\u0020\\u0021\\u0023-\\u005b\\u005d-\\u007e\\u0080-\\u00ff]|\\\\[\\v\\u0020-\\u00ff])*\"|[!#$%&'*+.^\\w`|~-]+) */gu\n\n/**\n * RegExp to match quoted-pair in RFC 7230 sec 3.2.6\n *\n * quoted-pair = \"\\\" ( HTAB / SP / VCHAR / obs-text )\n * obs-text = %x80-FF\n */\nconst quotedPairRE = /\\\\([\\v\\u0020-\\u00ff])/gu\n\n/**\n * RegExp to match type in RFC 7231 sec 3.1.1.1\n *\n * media-type = type \"/\" subtype\n * type = token\n * subtype = token\n */\nconst mediaTypeRE = /^[!#$%&'*+.^\\w|~-]+\\/[!#$%&'*+.^\\w|~-]+$/u\n\n// default ContentType to prevent repeated object creation\nconst defaultContentType = { type: '', parameters: new NullObject() }\nObject.freeze(defaultContentType.parameters)\nObject.freeze(defaultContentType)\n\n/**\n * Parse media type to object.\n *\n * @param {string|object} header\n * @return {Object}\n * @public\n */\n\nfunction parse (header) {\n if (typeof header !== 'string') {\n throw new TypeError('argument header is required and must be a string')\n }\n\n let index = header.indexOf(';')\n const type = index !== -1\n ? header.slice(0, index).trim()\n : header.trim()\n\n if (mediaTypeRE.test(type) === false) {\n throw new TypeError('invalid media type')\n }\n\n const result = {\n type: type.toLowerCase(),\n parameters: new NullObject()\n }\n\n // parse parameters\n if (index === -1) {\n return result\n }\n\n let key\n let match\n let value\n\n paramRE.lastIndex = index\n\n while ((match = paramRE.exec(header))) {\n if (match.index !== index) {\n throw new TypeError('invalid parameter format')\n }\n\n index += match[0].length\n key = match[1].toLowerCase()\n value = match[2]\n\n if (value[0] === '\"') {\n // remove quotes and escapes\n value = value\n .slice(1, value.length - 1)\n\n quotedPairRE.test(value) && (value = value.replace(quotedPairRE, '$1'))\n }\n\n result.parameters[key] = value\n }\n\n if (index !== header.length) {\n throw new TypeError('invalid parameter format')\n }\n\n return result\n}\n\nfunction safeParse (header) {\n if (typeof header !== 'string') {\n return defaultContentType\n }\n\n let index = header.indexOf(';')\n const type = index !== -1\n ? header.slice(0, index).trim()\n : header.trim()\n\n if (mediaTypeRE.test(type) === false) {\n return defaultContentType\n }\n\n const result = {\n type: type.toLowerCase(),\n parameters: new NullObject()\n }\n\n // parse parameters\n if (index === -1) {\n return result\n }\n\n let key\n let match\n let value\n\n paramRE.lastIndex = index\n\n while ((match = paramRE.exec(header))) {\n if (match.index !== index) {\n return defaultContentType\n }\n\n index += match[0].length\n key = match[1].toLowerCase()\n value = match[2]\n\n if (value[0] === '\"') {\n // remove quotes and escapes\n value = value\n .slice(1, value.length - 1)\n\n quotedPairRE.test(value) && (value = value.replace(quotedPairRE, '$1'))\n }\n\n result.parameters[key] = value\n }\n\n if (index !== header.length) {\n return defaultContentType\n }\n\n return result\n}\n\nmodule.exports.default = { parse, safeParse }\nmodule.exports.parse = parse\nmodule.exports.safeParse = safeParse\nmodule.exports.defaultContentType = defaultContentType\n","export function getUserAgent() {\n if (typeof navigator === \"object\" && \"userAgent\" in navigator) {\n return navigator.userAgent;\n }\n\n if (typeof process === \"object\" && process.version !== undefined) {\n return `Node.js/${process.version.substr(1)} (${process.platform}; ${\n process.arch\n })`;\n }\n\n return \"<environment undetectable>\";\n}\n","// @ts-check\n\nexport function register(state, name, method, options) {\n if (typeof method !== \"function\") {\n throw new Error(\"method for before hook must be a function\");\n }\n\n if (!options) {\n options = {};\n }\n\n if (Array.isArray(name)) {\n return name.reverse().reduce((callback, name) => {\n return register.bind(null, state, name, callback, options);\n }, method)();\n }\n\n return Promise.resolve().then(() => {\n if (!state.registry[name]) {\n return method(options);\n }\n\n return state.registry[name].reduce((method, registered) => {\n return registered.hook.bind(null, method, options);\n }, method)();\n });\n}\n","// @ts-check\n\nexport function addHook(state, kind, name, hook) {\n const orig = hook;\n if (!state.registry[name]) {\n state.registry[name] = [];\n }\n\n if (kind === \"before\") {\n hook = (method, options) => {\n return Promise.resolve()\n .then(orig.bind(null, options))\n .then(method.bind(null, options));\n };\n }\n\n if (kind === \"after\") {\n hook = (method, options) => {\n let result;\n return Promise.resolve()\n .then(method.bind(null, options))\n .then((result_) => {\n result = result_;\n return orig(result, options);\n })\n .then(() => {\n return result;\n });\n };\n }\n\n if (kind === \"error\") {\n hook = (method, options) => {\n return Promise.resolve()\n .then(method.bind(null, options))\n .catch((error) => {\n return orig(error, options);\n });\n };\n }\n\n state.registry[name].push({\n hook: hook,\n orig: orig,\n });\n}\n","// @ts-check\n\nexport function removeHook(state, name, method) {\n if (!state.registry[name]) {\n return;\n }\n\n const index = state.registry[name]\n .map((registered) => {\n return registered.orig;\n })\n .indexOf(method);\n\n if (index === -1) {\n return;\n }\n\n state.registry[name].splice(index, 1);\n}\n","// @ts-check\n\nimport { register } from \"./lib/register.js\";\nimport { addHook } from \"./lib/add.js\";\nimport { removeHook } from \"./lib/remove.js\";\n\n// bind with array of arguments: https://stackoverflow.com/a/21792913\nconst bind = Function.bind;\nconst bindable = bind.bind(bind);\n\nfunction bindApi(hook, state, name) {\n const removeHookRef = bindable(removeHook, null).apply(\n null,\n name ? [state, name] : [state]\n );\n hook.api = { remove: removeHookRef };\n hook.remove = removeHookRef;\n [\"before\", \"error\", \"after\", \"wrap\"].forEach((kind) => {\n const args = name ? [state, kind, name] : [state, kind];\n hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args);\n });\n}\n\nfunction Singular() {\n const singularHookName = Symbol(\"Singular\");\n const singularHookState = {\n registry: {},\n };\n const singularHook = register.bind(null, singularHookState, singularHookName);\n bindApi(singularHook, singularHookState, singularHookName);\n return singularHook;\n}\n\nfunction Collection() {\n const state = {\n registry: {},\n };\n\n const hook = register.bind(null, state);\n bindApi(hook, state);\n\n return hook;\n}\n\nexport default { Singular, Collection };\n","// pkg/dist-src/defaults.js\nimport { getUserAgent } from \"universal-user-agent\";\n\n// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/defaults.js\nvar userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\nvar DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent\n },\n mediaType: {\n format: \"\"\n }\n};\n\n// pkg/dist-src/util/lowercase-keys.js\nfunction lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n\n// pkg/dist-src/util/is-plain-object.js\nfunction isPlainObject(value) {\n if (typeof value !== \"object\" || value === null) return false;\n if (Object.prototype.toString.call(value) !== \"[object Object]\") return false;\n const proto = Object.getPrototypeOf(value);\n if (proto === null) return true;\n const Ctor = Object.prototype.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);\n}\n\n// pkg/dist-src/util/merge-deep.js\nfunction mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach((key) => {\n if (isPlainObject(options[key])) {\n if (!(key in defaults)) Object.assign(result, { [key]: options[key] });\n else result[key] = mergeDeep(defaults[key], options[key]);\n } else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n\n// pkg/dist-src/util/remove-undefined-properties.js\nfunction removeUndefinedProperties(obj) {\n for (const key in obj) {\n if (obj[key] === void 0) {\n delete obj[key];\n }\n }\n return obj;\n}\n\n// pkg/dist-src/merge.js\nfunction merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? { method, url } : { url: method }, options);\n } else {\n options = Object.assign({}, route);\n }\n options.headers = lowercaseKeys(options.headers);\n removeUndefinedProperties(options);\n removeUndefinedProperties(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n if (options.url === \"/graphql\") {\n if (defaults && defaults.mediaType.previews?.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(\n (preview) => !mergedOptions.mediaType.previews.includes(preview)\n ).concat(mergedOptions.mediaType.previews);\n }\n mergedOptions.mediaType.previews = (mergedOptions.mediaType.previews || []).map((preview) => preview.replace(/-preview/, \"\"));\n }\n return mergedOptions;\n}\n\n// pkg/dist-src/util/add-query-parameters.js\nfunction addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n if (names.length === 0) {\n return url;\n }\n return url + separator + names.map((name) => {\n if (name === \"q\") {\n return \"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\");\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n }).join(\"&\");\n}\n\n// pkg/dist-src/util/extract-url-variable-names.js\nvar urlVariableRegex = /\\{[^{}}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/(?:^\\W+)|(?:(?<!\\W)\\W+$)/g, \"\").split(/,/);\n}\nfunction extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n if (!matches) {\n return [];\n }\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n\n// pkg/dist-src/util/omit.js\nfunction omit(object, keysToOmit) {\n const result = { __proto__: null };\n for (const key of Object.keys(object)) {\n if (keysToOmit.indexOf(key) === -1) {\n result[key] = object[key];\n }\n }\n return result;\n}\n\n// pkg/dist-src/util/url-template.js\nfunction encodeReserved(str) {\n return str.split(/(%[0-9A-Fa-f]{2})/g).map(function(part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part).replace(/%5B/g, \"[\").replace(/%5D/g, \"]\");\n }\n return part;\n }).join(\"\");\n}\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\nfunction encodeValue(operator, value, key) {\n value = operator === \"+\" || operator === \"#\" ? encodeReserved(value) : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n } else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== void 0 && value !== null;\n}\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\nfunction getValues(context, operator, key, modifier) {\n var value = context[key], result = [];\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(\n encodeValue(operator, value, isKeyOperator(operator) ? key : \"\")\n );\n } else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function(value2) {\n result.push(\n encodeValue(operator, value2, isKeyOperator(operator) ? key : \"\")\n );\n });\n } else {\n Object.keys(value).forEach(function(k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n } else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function(value2) {\n tmp.push(encodeValue(operator, value2));\n });\n } else {\n Object.keys(value).forEach(function(k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n } else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n } else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n } else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n } else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nfunction parseUrl(template) {\n return {\n expand: expand.bind(null, template)\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n template = template.replace(\n /\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g,\n function(_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n expression.split(/,/g).forEach(function(variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n if (operator && operator !== \"+\") {\n var separator = \",\";\n if (operator === \"?\") {\n separator = \"&\";\n } else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n } else {\n return values.join(\",\");\n }\n } else {\n return encodeReserved(literal);\n }\n }\n );\n if (template === \"/\") {\n return template;\n } else {\n return template.replace(/\\/$/, \"\");\n }\n}\n\n// pkg/dist-src/parse.js\nfunction parse(options) {\n let method = options.method.toUpperCase();\n let url = (options.url || \"/\").replace(/:([a-z]\\w+)/g, \"{$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"mediaType\"\n ]);\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n const omittedParameters = Object.keys(options).filter((option) => urlVariableNames.includes(option)).concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequest = /application\\/octet-stream/i.test(headers.accept);\n if (!isBinaryRequest) {\n if (options.mediaType.format) {\n headers.accept = headers.accept.split(/,/).map(\n (format) => format.replace(\n /application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/,\n `application/vnd$1$2.${options.mediaType.format}`\n )\n ).join(\",\");\n }\n if (url.endsWith(\"/graphql\")) {\n if (options.mediaType.previews?.length) {\n const previewsFromAcceptHeader = headers.accept.match(/(?<![\\w-])[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => {\n const format = options.mediaType.format ? `.${options.mediaType.format}` : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n }).join(\",\");\n }\n }\n }\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n } else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n } else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n }\n }\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n return Object.assign(\n { method, url, headers },\n typeof body !== \"undefined\" ? { body } : null,\n options.request ? { request: options.request } : null\n );\n}\n\n// pkg/dist-src/endpoint-with-defaults.js\nfunction endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n\n// pkg/dist-src/with-defaults.js\nfunction withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS2 = merge(oldDefaults, newDefaults);\n const endpoint2 = endpointWithDefaults.bind(null, DEFAULTS2);\n return Object.assign(endpoint2, {\n DEFAULTS: DEFAULTS2,\n defaults: withDefaults.bind(null, DEFAULTS2),\n merge: merge.bind(null, DEFAULTS2),\n parse\n });\n}\n\n// pkg/dist-src/index.js\nvar endpoint = withDefaults(null, DEFAULTS);\nexport {\n endpoint\n};\n","class RequestError extends Error {\n name;\n /**\n * http status code\n */\n status;\n /**\n * Request options that lead to the error.\n */\n request;\n /**\n * Response object if a response was received\n */\n response;\n constructor(message, statusCode, options) {\n super(message);\n this.name = \"HttpError\";\n this.status = Number.parseInt(statusCode);\n if (Number.isNaN(this.status)) {\n this.status = 0;\n }\n if (\"response\" in options) {\n this.response = options.response;\n }\n const requestCopy = Object.assign({}, options.request);\n if (options.request.headers.authorization) {\n requestCopy.headers = Object.assign({}, options.request.headers, {\n authorization: options.request.headers.authorization.replace(\n /(?<! ) .*$/,\n \" [REDACTED]\"\n )\n });\n }\n requestCopy.url = requestCopy.url.replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\").replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n }\n}\nexport {\n RequestError\n};\n","// pkg/dist-src/index.js\nimport { endpoint } from \"@octokit/endpoint\";\n\n// pkg/dist-src/defaults.js\nimport { getUserAgent } from \"universal-user-agent\";\n\n// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/defaults.js\nvar defaults_default = {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${getUserAgent()}`\n }\n};\n\n// pkg/dist-src/fetch-wrapper.js\nimport { safeParse } from \"fast-content-type-parse\";\n\n// pkg/dist-src/is-plain-object.js\nfunction isPlainObject(value) {\n if (typeof value !== \"object\" || value === null) return false;\n if (Object.prototype.toString.call(value) !== \"[object Object]\") return false;\n const proto = Object.getPrototypeOf(value);\n if (proto === null) return true;\n const Ctor = Object.prototype.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);\n}\n\n// pkg/dist-src/fetch-wrapper.js\nimport { RequestError } from \"@octokit/request-error\";\nasync function fetchWrapper(requestOptions) {\n const fetch = requestOptions.request?.fetch || globalThis.fetch;\n if (!fetch) {\n throw new Error(\n \"fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing\"\n );\n }\n const log = requestOptions.request?.log || console;\n const parseSuccessResponseBody = requestOptions.request?.parseSuccessResponseBody !== false;\n const body = isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body) ? JSON.stringify(requestOptions.body) : requestOptions.body;\n const requestHeaders = Object.fromEntries(\n Object.entries(requestOptions.headers).map(([name, value]) => [\n name,\n String(value)\n ])\n );\n let fetchResponse;\n try {\n fetchResponse = await fetch(requestOptions.url, {\n method: requestOptions.method,\n body,\n redirect: requestOptions.request?.redirect,\n headers: requestHeaders,\n signal: requestOptions.request?.signal,\n // duplex must be set if request.body is ReadableStream or Async Iterables.\n // See https://fetch.spec.whatwg.org/#dom-requestinit-duplex.\n ...requestOptions.body && { duplex: \"half\" }\n });\n } catch (error) {\n let message = \"Unknown Error\";\n if (error instanceof Error) {\n if (error.name === \"AbortError\") {\n error.status = 500;\n throw error;\n }\n message = error.message;\n if (error.name === \"TypeError\" && \"cause\" in error) {\n if (error.cause instanceof Error) {\n message = error.cause.message;\n } else if (typeof error.cause === \"string\") {\n message = error.cause;\n }\n }\n }\n const requestError = new RequestError(message, 500, {\n request: requestOptions\n });\n requestError.cause = error;\n throw requestError;\n }\n const status = fetchResponse.status;\n const url = fetchResponse.url;\n const responseHeaders = {};\n for (const [key, value] of fetchResponse.headers) {\n responseHeaders[key] = value;\n }\n const octokitResponse = {\n url,\n status,\n headers: responseHeaders,\n data: \"\"\n };\n if (\"deprecation\" in responseHeaders) {\n const matches = responseHeaders.link && responseHeaders.link.match(/<([^<>]+)>; rel=\"deprecation\"/);\n const deprecationLink = matches && matches.pop();\n log.warn(\n `[@octokit/request] \"${requestOptions.method} ${requestOptions.url}\" is deprecated. It is scheduled to be removed on ${responseHeaders.sunset}${deprecationLink ? `. See ${deprecationLink}` : \"\"}`\n );\n }\n if (status === 204 || status === 205) {\n return octokitResponse;\n }\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return octokitResponse;\n }\n throw new RequestError(fetchResponse.statusText, status, {\n response: octokitResponse,\n request: requestOptions\n });\n }\n if (status === 304) {\n octokitResponse.data = await getResponseData(fetchResponse);\n throw new RequestError(\"Not modified\", status, {\n response: octokitResponse,\n request: requestOptions\n });\n }\n if (status >= 400) {\n octokitResponse.data = await getResponseData(fetchResponse);\n throw new RequestError(toErrorMessage(octokitResponse.data), status, {\n response: octokitResponse,\n request: requestOptions\n });\n }\n octokitResponse.data = parseSuccessResponseBody ? await getResponseData(fetchResponse) : fetchResponse.body;\n return octokitResponse;\n}\nasync function getResponseData(response) {\n const contentType = response.headers.get(\"content-type\");\n if (!contentType) {\n return response.text().catch(() => \"\");\n }\n const mimetype = safeParse(contentType);\n if (isJSONResponse(mimetype)) {\n let text = \"\";\n try {\n text = await response.text();\n return JSON.parse(text);\n } catch (err) {\n return text;\n }\n } else if (mimetype.type.startsWith(\"text/\") || mimetype.parameters.charset?.toLowerCase() === \"utf-8\") {\n return response.text().catch(() => \"\");\n } else {\n return response.arrayBuffer().catch(() => new ArrayBuffer(0));\n }\n}\nfunction isJSONResponse(mimetype) {\n return mimetype.type === \"application/json\" || mimetype.type === \"application/scim+json\";\n}\nfunction toErrorMessage(data) {\n if (typeof data === \"string\") {\n return data;\n }\n if (data instanceof ArrayBuffer) {\n return \"Unknown error\";\n }\n if (\"message\" in data) {\n const suffix = \"documentation_url\" in data ? ` - ${data.documentation_url}` : \"\";\n return Array.isArray(data.errors) ? `${data.message}: ${data.errors.map((v) => JSON.stringify(v)).join(\", \")}${suffix}` : `${data.message}${suffix}`;\n }\n return `Unknown error: ${JSON.stringify(data)}`;\n}\n\n// pkg/dist-src/with-defaults.js\nfunction withDefaults(oldEndpoint, newDefaults) {\n const endpoint2 = oldEndpoint.defaults(newDefaults);\n const newApi = function(route, parameters) {\n const endpointOptions = endpoint2.merge(route, parameters);\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint2.parse(endpointOptions));\n }\n const request2 = (route2, parameters2) => {\n return fetchWrapper(\n endpoint2.parse(endpoint2.merge(route2, parameters2))\n );\n };\n Object.assign(request2, {\n endpoint: endpoint2,\n defaults: withDefaults.bind(null, endpoint2)\n });\n return endpointOptions.request.hook(request2, endpointOptions);\n };\n return Object.assign(newApi, {\n endpoint: endpoint2,\n defaults: withDefaults.bind(null, endpoint2)\n });\n}\n\n// pkg/dist-src/index.js\nvar request = withDefaults(endpoint, defaults_default);\nexport {\n request\n};\n","// pkg/dist-src/index.js\nimport { request } from \"@octokit/request\";\nimport { getUserAgent } from \"universal-user-agent\";\n\n// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/with-defaults.js\nimport { request as Request2 } from \"@octokit/request\";\n\n// pkg/dist-src/graphql.js\nimport { request as Request } from \"@octokit/request\";\n\n// pkg/dist-src/error.js\nfunction _buildMessageForResponseErrors(data) {\n return `Request failed due to following response errors:\n` + data.errors.map((e) => ` - ${e.message}`).join(\"\\n\");\n}\nvar GraphqlResponseError = class extends Error {\n constructor(request2, headers, response) {\n super(_buildMessageForResponseErrors(response));\n this.request = request2;\n this.headers = headers;\n this.response = response;\n this.errors = response.errors;\n this.data = response.data;\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n }\n name = \"GraphqlResponseError\";\n errors;\n data;\n};\n\n// pkg/dist-src/graphql.js\nvar NON_VARIABLE_OPTIONS = [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"query\",\n \"mediaType\",\n \"operationName\"\n];\nvar FORBIDDEN_VARIABLE_OPTIONS = [\"query\", \"method\", \"url\"];\nvar GHES_V3_SUFFIX_REGEX = /\\/api\\/v3\\/?$/;\nfunction graphql(request2, query, options) {\n if (options) {\n if (typeof query === \"string\" && \"query\" in options) {\n return Promise.reject(\n new Error(`[@octokit/graphql] \"query\" cannot be used as variable name`)\n );\n }\n for (const key in options) {\n if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key)) continue;\n return Promise.reject(\n new Error(\n `[@octokit/graphql] \"${key}\" cannot be used as variable name`\n )\n );\n }\n }\n const parsedOptions = typeof query === \"string\" ? Object.assign({ query }, options) : query;\n const requestOptions = Object.keys(\n parsedOptions\n ).reduce((result, key) => {\n if (NON_VARIABLE_OPTIONS.includes(key)) {\n result[key] = parsedOptions[key];\n return result;\n }\n if (!result.variables) {\n result.variables = {};\n }\n result.variables[key] = parsedOptions[key];\n return result;\n }, {});\n const baseUrl = parsedOptions.baseUrl || request2.endpoint.DEFAULTS.baseUrl;\n if (GHES_V3_SUFFIX_REGEX.test(baseUrl)) {\n requestOptions.url = baseUrl.replace(GHES_V3_SUFFIX_REGEX, \"/api/graphql\");\n }\n return request2(requestOptions).then((response) => {\n if (response.data.errors) {\n const headers = {};\n for (const key of Object.keys(response.headers)) {\n headers[key] = response.headers[key];\n }\n throw new GraphqlResponseError(\n requestOptions,\n headers,\n response.data\n );\n }\n return response.data.data;\n });\n}\n\n// pkg/dist-src/with-defaults.js\nfunction withDefaults(request2, newDefaults) {\n const newRequest = request2.defaults(newDefaults);\n const newApi = (query, options) => {\n return graphql(newRequest, query, options);\n };\n return Object.assign(newApi, {\n defaults: withDefaults.bind(null, newRequest),\n endpoint: newRequest.endpoint\n });\n}\n\n// pkg/dist-src/index.js\nvar graphql2 = withDefaults(request, {\n headers: {\n \"user-agent\": `octokit-graphql.js/${VERSION} ${getUserAgent()}`\n },\n method: \"POST\",\n url: \"/graphql\"\n});\nfunction withCustomRequest(customRequest) {\n return withDefaults(customRequest, {\n method: \"POST\",\n url: \"/graphql\"\n });\n}\nexport {\n GraphqlResponseError,\n graphql2 as graphql,\n withCustomRequest\n};\n","// pkg/dist-src/is-jwt.js\nvar b64url = \"(?:[a-zA-Z0-9_-]+)\";\nvar sep = \"\\\\.\";\nvar jwtRE = new RegExp(`^${b64url}${sep}${b64url}${sep}${b64url}$`);\nvar isJWT = jwtRE.test.bind(jwtRE);\n\n// pkg/dist-src/auth.js\nasync function auth(token) {\n const isApp = isJWT(token);\n const isInstallation = token.startsWith(\"v1.\") || token.startsWith(\"ghs_\");\n const isUserToServer = token.startsWith(\"ghu_\");\n const tokenType = isApp ? \"app\" : isInstallation ? \"installation\" : isUserToServer ? \"user-to-server\" : \"oauth\";\n return {\n type: \"token\",\n token,\n tokenType\n };\n}\n\n// pkg/dist-src/with-authorization-prefix.js\nfunction withAuthorizationPrefix(token) {\n if (token.split(/\\./).length === 3) {\n return `bearer ${token}`;\n }\n return `token ${token}`;\n}\n\n// pkg/dist-src/hook.js\nasync function hook(token, request, route, parameters) {\n const endpoint = request.endpoint.merge(\n route,\n parameters\n );\n endpoint.headers.authorization = withAuthorizationPrefix(token);\n return request(endpoint);\n}\n\n// pkg/dist-src/index.js\nvar createTokenAuth = function createTokenAuth2(token) {\n if (!token) {\n throw new Error(\"[@octokit/auth-token] No token passed to createTokenAuth\");\n }\n if (typeof token !== \"string\") {\n throw new Error(\n \"[@octokit/auth-token] Token passed to createTokenAuth is not a string\"\n );\n }\n token = token.replace(/^(token|bearer) +/i, \"\");\n return Object.assign(auth.bind(null, token), {\n hook: hook.bind(null, token)\n });\n};\nexport {\n createTokenAuth\n};\n","const VERSION = \"6.1.4\";\nexport {\n VERSION\n};\n","import { getUserAgent } from \"universal-user-agent\";\nimport Hook from \"before-after-hook\";\nimport { request } from \"@octokit/request\";\nimport { withCustomRequest } from \"@octokit/graphql\";\nimport { createTokenAuth } from \"@octokit/auth-token\";\nimport { VERSION } from \"./version.js\";\nconst noop = () => {\n};\nconst consoleWarn = console.warn.bind(console);\nconst consoleError = console.error.bind(console);\nconst userAgentTrail = `octokit-core.js/${VERSION} ${getUserAgent()}`;\nclass Octokit {\n static VERSION = VERSION;\n static defaults(defaults) {\n const OctokitWithDefaults = class extends this {\n constructor(...args) {\n const options = args[0] || {};\n if (typeof defaults === \"function\") {\n super(defaults(options));\n return;\n }\n super(\n Object.assign(\n {},\n defaults,\n options,\n options.userAgent && defaults.userAgent ? {\n userAgent: `${options.userAgent} ${defaults.userAgent}`\n } : null\n )\n );\n }\n };\n return OctokitWithDefaults;\n }\n static plugins = [];\n /**\n * Attach a plugin (or many) to your Octokit instance.\n *\n * @example\n * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...)\n */\n static plugin(...newPlugins) {\n const currentPlugins = this.plugins;\n const NewOctokit = class extends this {\n static plugins = currentPlugins.concat(\n newPlugins.filter((plugin) => !currentPlugins.includes(plugin))\n );\n };\n return NewOctokit;\n }\n constructor(options = {}) {\n const hook = new Hook.Collection();\n const requestDefaults = {\n baseUrl: request.endpoint.DEFAULTS.baseUrl,\n headers: {},\n request: Object.assign({}, options.request, {\n // @ts-ignore internal usage only, no need to type\n hook: hook.bind(null, \"request\")\n }),\n mediaType: {\n previews: [],\n format: \"\"\n }\n };\n requestDefaults.headers[\"user-agent\"] = options.userAgent ? `${options.userAgent} ${userAgentTrail}` : userAgentTrail;\n if (options.baseUrl) {\n requestDefaults.baseUrl = options.baseUrl;\n }\n if (options.previews) {\n requestDefaults.mediaType.previews = options.previews;\n }\n if (options.timeZone) {\n requestDefaults.headers[\"time-zone\"] = options.timeZone;\n }\n this.request = request.defaults(requestDefaults);\n this.graphql = withCustomRequest(this.request).defaults(requestDefaults);\n this.log = Object.assign(\n {\n debug: noop,\n info: noop,\n warn: consoleWarn,\n error: consoleError\n },\n options.log\n );\n this.hook = hook;\n if (!options.authStrategy) {\n if (!options.auth) {\n this.auth = async () => ({\n type: \"unauthenticated\"\n });\n } else {\n const auth = createTokenAuth(options.auth);\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n } else {\n const { authStrategy, ...otherOptions } = options;\n const auth = authStrategy(\n Object.assign(\n {\n request: this.request,\n log: this.log,\n // we pass the current octokit instance as well as its constructor options\n // to allow for authentication strategies that return a new octokit instance\n // that shares the same internal state as the current one. The original\n // requirement for this was the \"event-octokit\" authentication strategy\n // of https://github.com/probot/octokit-auth-probot.\n octokit: this,\n octokitOptions: otherOptions\n },\n options.auth\n )\n );\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n const classConstructor = this.constructor;\n for (let i = 0; i < classConstructor.plugins.length; ++i) {\n Object.assign(this, classConstructor.plugins[i](this, options));\n }\n }\n // assigned during constructor\n request;\n graphql;\n log;\n hook;\n // TODO: type `octokit.auth` based on passed options.authStrategy\n auth;\n}\nexport {\n Octokit\n};\n","import { VERSION } from \"./version.js\";\nfunction requestLog(octokit) {\n octokit.hook.wrap(\"request\", (request, options) => {\n octokit.log.debug(\"request\", options);\n const start = Date.now();\n const requestOptions = octokit.request.endpoint.parse(options);\n const path = requestOptions.url.replace(options.baseUrl, \"\");\n return request(options).then((response) => {\n const requestId = response.headers[\"x-github-request-id\"];\n octokit.log.info(\n `${requestOptions.method} ${path} - ${response.status} with id ${requestId} in ${Date.now() - start}ms`\n );\n return response;\n }).catch((error) => {\n const requestId = error.response?.headers[\"x-github-request-id\"] || \"UNKNOWN\";\n octokit.log.error(\n `${requestOptions.method} ${path} - ${error.status} with id ${requestId} in ${Date.now() - start}ms`\n );\n throw error;\n });\n });\n}\nrequestLog.VERSION = VERSION;\nexport {\n requestLog\n};\n","// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/normalize-paginated-list-response.js\nfunction normalizePaginatedListResponse(response) {\n if (!response.data) {\n return {\n ...response,\n data: []\n };\n }\n const responseNeedsNormalization = \"total_count\" in response.data && !(\"url\" in response.data);\n if (!responseNeedsNormalization) return response;\n const incompleteResults = response.data.incomplete_results;\n const repositorySelection = response.data.repository_selection;\n const totalCount = response.data.total_count;\n delete response.data.incomplete_results;\n delete response.data.repository_selection;\n delete response.data.total_count;\n const namespaceKey = Object.keys(response.data)[0];\n const data = response.data[namespaceKey];\n response.data = data;\n if (typeof incompleteResults !== \"undefined\") {\n response.data.incomplete_results = incompleteResults;\n }\n if (typeof repositorySelection !== \"undefined\") {\n response.data.repository_selection = repositorySelection;\n }\n response.data.total_count = totalCount;\n return response;\n}\n\n// pkg/dist-src/iterator.js\nfunction iterator(octokit, route, parameters) {\n const options = typeof route === \"function\" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters);\n const requestMethod = typeof route === \"function\" ? route : octokit.request;\n const method = options.method;\n const headers = options.headers;\n let url = options.url;\n return {\n [Symbol.asyncIterator]: () => ({\n async next() {\n if (!url) return { done: true };\n try {\n const response = await requestMethod({ method, url, headers });\n const normalizedResponse = normalizePaginatedListResponse(response);\n url = ((normalizedResponse.headers.link || \"\").match(\n /<([^<>]+)>;\\s*rel=\"next\"/\n ) || [])[1];\n return { value: normalizedResponse };\n } catch (error) {\n if (error.status !== 409) throw error;\n url = \"\";\n return {\n value: {\n status: 200,\n headers: {},\n data: []\n }\n };\n }\n }\n })\n };\n}\n\n// pkg/dist-src/paginate.js\nfunction paginate(octokit, route, parameters, mapFn) {\n if (typeof parameters === \"function\") {\n mapFn = parameters;\n parameters = void 0;\n }\n return gather(\n octokit,\n [],\n iterator(octokit, route, parameters)[Symbol.asyncIterator](),\n mapFn\n );\n}\nfunction gather(octokit, results, iterator2, mapFn) {\n return iterator2.next().then((result) => {\n if (result.done) {\n return results;\n }\n let earlyExit = false;\n function done() {\n earlyExit = true;\n }\n results = results.concat(\n mapFn ? mapFn(result.value, done) : result.value.data\n );\n if (earlyExit) {\n return results;\n }\n return gather(octokit, results, iterator2, mapFn);\n });\n}\n\n// pkg/dist-src/compose-paginate.js\nvar composePaginateRest = Object.assign(paginate, {\n iterator\n});\n\n// pkg/dist-src/generated/paginating-endpoints.js\nvar paginatingEndpoints = [\n \"GET /advisories\",\n \"GET /app/hook/deliveries\",\n \"GET /app/installation-requests\",\n \"GET /app/installations\",\n \"GET /assignments/{assignment_id}/accepted_assignments\",\n \"GET /classrooms\",\n \"GET /classrooms/{classroom_id}/assignments\",\n \"GET /enterprises/{enterprise}/code-security/configurations\",\n \"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories\",\n \"GET /enterprises/{enterprise}/dependabot/alerts\",\n \"GET /enterprises/{enterprise}/secret-scanning/alerts\",\n \"GET /events\",\n \"GET /gists\",\n \"GET /gists/public\",\n \"GET /gists/starred\",\n \"GET /gists/{gist_id}/comments\",\n \"GET /gists/{gist_id}/commits\",\n \"GET /gists/{gist_id}/forks\",\n \"GET /installation/repositories\",\n \"GET /issues\",\n \"GET /licenses\",\n \"GET /marketplace_listing/plans\",\n \"GET /marketplace_listing/plans/{plan_id}/accounts\",\n \"GET /marketplace_listing/stubbed/plans\",\n \"GET /marketplace_listing/stubbed/plans/{plan_id}/accounts\",\n \"GET /networks/{owner}/{repo}/events\",\n \"GET /notifications\",\n \"GET /organizations\",\n \"GET /orgs/{org}/actions/cache/usage-by-repository\",\n \"GET /orgs/{org}/actions/permissions/repositories\",\n \"GET /orgs/{org}/actions/runner-groups\",\n \"GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories\",\n \"GET /orgs/{org}/actions/runner-groups/{runner_group_id}/runners\",\n \"GET /orgs/{org}/actions/runners\",\n \"GET /orgs/{org}/actions/secrets\",\n \"GET /orgs/{org}/actions/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/actions/variables\",\n \"GET /orgs/{org}/actions/variables/{name}/repositories\",\n \"GET /orgs/{org}/attestations/{subject_digest}\",\n \"GET /orgs/{org}/blocks\",\n \"GET /orgs/{org}/code-scanning/alerts\",\n \"GET /orgs/{org}/code-security/configurations\",\n \"GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories\",\n \"GET /orgs/{org}/codespaces\",\n \"GET /orgs/{org}/codespaces/secrets\",\n \"GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/copilot/billing/seats\",\n \"GET /orgs/{org}/copilot/metrics\",\n \"GET /orgs/{org}/copilot/usage\",\n \"GET /orgs/{org}/dependabot/alerts\",\n \"GET /orgs/{org}/dependabot/secrets\",\n \"GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/events\",\n \"GET /orgs/{org}/failed_invitations\",\n \"GET /orgs/{org}/hooks\",\n \"GET /orgs/{org}/hooks/{hook_id}/deliveries\",\n \"GET /orgs/{org}/insights/api/route-stats/{actor_type}/{actor_id}\",\n \"GET /orgs/{org}/insights/api/subject-stats\",\n \"GET /orgs/{org}/insights/api/user-stats/{user_id}\",\n \"GET /orgs/{org}/installations\",\n \"GET /orgs/{org}/invitations\",\n \"GET /orgs/{org}/invitations/{invitation_id}/teams\",\n \"GET /orgs/{org}/issues\",\n \"GET /orgs/{org}/members\",\n \"GET /orgs/{org}/members/{username}/codespaces\",\n \"GET /orgs/{org}/migrations\",\n \"GET /orgs/{org}/migrations/{migration_id}/repositories\",\n \"GET /orgs/{org}/organization-roles/{role_id}/teams\",\n \"GET /orgs/{org}/organization-roles/{role_id}/users\",\n \"GET /orgs/{org}/outside_collaborators\",\n \"GET /orgs/{org}/packages\",\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions\",\n \"GET /orgs/{org}/personal-access-token-requests\",\n \"GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories\",\n \"GET /orgs/{org}/personal-access-tokens\",\n \"GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories\",\n \"GET /orgs/{org}/private-registries\",\n \"GET /orgs/{org}/projects\",\n \"GET /orgs/{org}/properties/values\",\n \"GET /orgs/{org}/public_members\",\n \"GET /orgs/{org}/repos\",\n \"GET /orgs/{org}/rulesets\",\n \"GET /orgs/{org}/rulesets/rule-suites\",\n \"GET /orgs/{org}/secret-scanning/alerts\",\n \"GET /orgs/{org}/security-advisories\",\n \"GET /orgs/{org}/team/{team_slug}/copilot/metrics\",\n \"GET /orgs/{org}/team/{team_slug}/copilot/usage\",\n \"GET /orgs/{org}/teams\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\",\n \"GET /orgs/{org}/teams/{team_slug}/invitations\",\n \"GET /orgs/{org}/teams/{team_slug}/members\",\n \"GET /orgs/{org}/teams/{team_slug}/projects\",\n \"GET /orgs/{org}/teams/{team_slug}/repos\",\n \"GET /orgs/{org}/teams/{team_slug}/teams\",\n \"GET /projects/columns/{column_id}/cards\",\n \"GET /projects/{project_id}/collaborators\",\n \"GET /projects/{project_id}/columns\",\n \"GET /repos/{owner}/{repo}/actions/artifacts\",\n \"GET /repos/{owner}/{repo}/actions/caches\",\n \"GET /repos/{owner}/{repo}/actions/organization-secrets\",\n \"GET /repos/{owner}/{repo}/actions/organization-variables\",\n \"GET /repos/{owner}/{repo}/actions/runners\",\n \"GET /repos/{owner}/{repo}/actions/runs\",\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts\",\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs\",\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs\",\n \"GET /repos/{owner}/{repo}/actions/secrets\",\n \"GET /repos/{owner}/{repo}/actions/variables\",\n \"GET /repos/{owner}/{repo}/actions/workflows\",\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\",\n \"GET /repos/{owner}/{repo}/activity\",\n \"GET /repos/{owner}/{repo}/assignees\",\n \"GET /repos/{owner}/{repo}/attestations/{subject_digest}\",\n \"GET /repos/{owner}/{repo}/branches\",\n \"GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations\",\n \"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs\",\n \"GET /repos/{owner}/{repo}/code-scanning/alerts\",\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances\",\n \"GET /repos/{owner}/{repo}/code-scanning/analyses\",\n \"GET /repos/{owner}/{repo}/codespaces\",\n \"GET /repos/{owner}/{repo}/codespaces/devcontainers\",\n \"GET /repos/{owner}/{repo}/codespaces/secrets\",\n \"GET /repos/{owner}/{repo}/collaborators\",\n \"GET /repos/{owner}/{repo}/comments\",\n \"GET /repos/{owner}/{repo}/comments/{comment_id}/reactions\",\n \"GET /repos/{owner}/{repo}/commits\",\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/comments\",\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/check-runs\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/check-suites\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/status\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/statuses\",\n \"GET /repos/{owner}/{repo}/contributors\",\n \"GET /repos/{owner}/{repo}/dependabot/alerts\",\n \"GET /repos/{owner}/{repo}/dependabot/secrets\",\n \"GET /repos/{owner}/{repo}/deployments\",\n \"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\",\n \"GET /repos/{owner}/{repo}/environments\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/variables\",\n \"GET /repos/{owner}/{repo}/events\",\n \"GET /repos/{owner}/{repo}/forks\",\n \"GET /repos/{owner}/{repo}/hooks\",\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries\",\n \"GET /repos/{owner}/{repo}/invitations\",\n \"GET /repos/{owner}/{repo}/issues\",\n \"GET /repos/{owner}/{repo}/issues/comments\",\n \"GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\",\n \"GET /repos/{owner}/{repo}/issues/events\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/comments\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/events\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/labels\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/reactions\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/timeline\",\n \"GET /repos/{owner}/{repo}/keys\",\n \"GET /repos/{owner}/{repo}/labels\",\n \"GET /repos/{owner}/{repo}/milestones\",\n \"GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels\",\n \"GET /repos/{owner}/{repo}/notifications\",\n \"GET /repos/{owner}/{repo}/pages/builds\",\n \"GET /repos/{owner}/{repo}/projects\",\n \"GET /repos/{owner}/{repo}/pulls\",\n \"GET /repos/{owner}/{repo}/pulls/comments\",\n \"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/comments\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/files\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments\",\n \"GET /repos/{owner}/{repo}/releases\",\n \"GET /repos/{owner}/{repo}/releases/{release_id}/assets\",\n \"GET /repos/{owner}/{repo}/releases/{release_id}/reactions\",\n \"GET /repos/{owner}/{repo}/rules/branches/{branch}\",\n \"GET /repos/{owner}/{repo}/rulesets\",\n \"GET /repos/{owner}/{repo}/rulesets/rule-suites\",\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts\",\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations\",\n \"GET /repos/{owner}/{repo}/security-advisories\",\n \"GET /repos/{owner}/{repo}/stargazers\",\n \"GET /repos/{owner}/{repo}/subscribers\",\n \"GET /repos/{owner}/{repo}/tags\",\n \"GET /repos/{owner}/{repo}/teams\",\n \"GET /repos/{owner}/{repo}/topics\",\n \"GET /repositories\",\n \"GET /search/code\",\n \"GET /search/commits\",\n \"GET /search/issues\",\n \"GET /search/labels\",\n \"GET /search/repositories\",\n \"GET /search/topics\",\n \"GET /search/users\",\n \"GET /teams/{team_id}/discussions\",\n \"GET /teams/{team_id}/discussions/{discussion_number}/comments\",\n \"GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions\",\n \"GET /teams/{team_id}/discussions/{discussion_number}/reactions\",\n \"GET /teams/{team_id}/invitations\",\n \"GET /teams/{team_id}/members\",\n \"GET /teams/{team_id}/projects\",\n \"GET /teams/{team_id}/repos\",\n \"GET /teams/{team_id}/teams\",\n \"GET /user/blocks\",\n \"GET /user/codespaces\",\n \"GET /user/codespaces/secrets\",\n \"GET /user/emails\",\n \"GET /user/followers\",\n \"GET /user/following\",\n \"GET /user/gpg_keys\",\n \"GET /user/installations\",\n \"GET /user/installations/{installation_id}/repositories\",\n \"GET /user/issues\",\n \"GET /user/keys\",\n \"GET /user/marketplace_purchases\",\n \"GET /user/marketplace_purchases/stubbed\",\n \"GET /user/memberships/orgs\",\n \"GET /user/migrations\",\n \"GET /user/migrations/{migration_id}/repositories\",\n \"GET /user/orgs\",\n \"GET /user/packages\",\n \"GET /user/packages/{package_type}/{package_name}/versions\",\n \"GET /user/public_emails\",\n \"GET /user/repos\",\n \"GET /user/repository_invitations\",\n \"GET /user/social_accounts\",\n \"GET /user/ssh_signing_keys\",\n \"GET /user/starred\",\n \"GET /user/subscriptions\",\n \"GET /user/teams\",\n \"GET /users\",\n \"GET /users/{username}/attestations/{subject_digest}\",\n \"GET /users/{username}/events\",\n \"GET /users/{username}/events/orgs/{org}\",\n \"GET /users/{username}/events/public\",\n \"GET /users/{username}/followers\",\n \"GET /users/{username}/following\",\n \"GET /users/{username}/gists\",\n \"GET /users/{username}/gpg_keys\",\n \"GET /users/{username}/keys\",\n \"GET /users/{username}/orgs\",\n \"GET /users/{username}/packages\",\n \"GET /users/{username}/projects\",\n \"GET /users/{username}/received_events\",\n \"GET /users/{username}/received_events/public\",\n \"GET /users/{username}/repos\",\n \"GET /users/{username}/social_accounts\",\n \"GET /users/{username}/ssh_signing_keys\",\n \"GET /users/{username}/starred\",\n \"GET /users/{username}/subscriptions\"\n];\n\n// pkg/dist-src/paginating-endpoints.js\nfunction isPaginatingEndpoint(arg) {\n if (typeof arg === \"string\") {\n return paginatingEndpoints.includes(arg);\n } else {\n return false;\n }\n}\n\n// pkg/dist-src/index.js\nfunction paginateRest(octokit) {\n return {\n paginate: Object.assign(paginate.bind(null, octokit), {\n iterator: iterator.bind(null, octokit)\n })\n };\n}\npaginateRest.VERSION = VERSION;\nexport {\n composePaginateRest,\n isPaginatingEndpoint,\n paginateRest,\n paginatingEndpoints\n};\n","const VERSION = \"5.3.1\";\nexport {\n VERSION\n};\n","import ENDPOINTS from \"./generated/endpoints.js\";\nconst endpointMethodsMap = /* @__PURE__ */ new Map();\nfor (const [scope, endpoints] of Object.entries(ENDPOINTS)) {\n for (const [methodName, endpoint] of Object.entries(endpoints)) {\n const [route, defaults, decorations] = endpoint;\n const [method, url] = route.split(/ /);\n const endpointDefaults = Object.assign(\n {\n method,\n url\n },\n defaults\n );\n if (!endpointMethodsMap.has(scope)) {\n endpointMethodsMap.set(scope, /* @__PURE__ */ new Map());\n }\n endpointMethodsMap.get(scope).set(methodName, {\n scope,\n methodName,\n endpointDefaults,\n decorations\n });\n }\n}\nconst handler = {\n has({ scope }, methodName) {\n return endpointMethodsMap.get(scope).has(methodName);\n },\n getOwnPropertyDescriptor(target, methodName) {\n return {\n value: this.get(target, methodName),\n // ensures method is in the cache\n configurable: true,\n writable: true,\n enumerable: true\n };\n },\n defineProperty(target, methodName, descriptor) {\n Object.defineProperty(target.cache, methodName, descriptor);\n return true;\n },\n deleteProperty(target, methodName) {\n delete target.cache[methodName];\n return true;\n },\n ownKeys({ scope }) {\n return [...endpointMethodsMap.get(scope).keys()];\n },\n set(target, methodName, value) {\n return target.cache[methodName] = value;\n },\n get({ octokit, scope, cache }, methodName) {\n if (cache[methodName]) {\n return cache[methodName];\n }\n const method = endpointMethodsMap.get(scope).get(methodName);\n if (!method) {\n return void 0;\n }\n const { endpointDefaults, decorations } = method;\n if (decorations) {\n cache[methodName] = decorate(\n octokit,\n scope,\n methodName,\n endpointDefaults,\n decorations\n );\n } else {\n cache[methodName] = octokit.request.defaults(endpointDefaults);\n }\n return cache[methodName];\n }\n};\nfunction endpointsToMethods(octokit) {\n const newMethods = {};\n for (const scope of endpointMethodsMap.keys()) {\n newMethods[scope] = new Proxy({ octokit, scope, cache: {} }, handler);\n }\n return newMethods;\n}\nfunction decorate(octokit, scope, methodName, defaults, decorations) {\n const requestWithDefaults = octokit.request.defaults(defaults);\n function withDecorations(...args) {\n let options = requestWithDefaults.endpoint.merge(...args);\n if (decorations.mapToData) {\n options = Object.assign({}, options, {\n data: options[decorations.mapToData],\n [decorations.mapToData]: void 0\n });\n return requestWithDefaults(options);\n }\n if (decorations.renamed) {\n const [newScope, newMethodName] = decorations.renamed;\n octokit.log.warn(\n `octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`\n );\n }\n if (decorations.deprecated) {\n octokit.log.warn(decorations.deprecated);\n }\n if (decorations.renamedParameters) {\n const options2 = requestWithDefaults.endpoint.merge(...args);\n for (const [name, alias] of Object.entries(\n decorations.renamedParameters\n )) {\n if (name in options2) {\n octokit.log.warn(\n `\"${name}\" parameter is deprecated for \"octokit.${scope}.${methodName}()\". Use \"${alias}\" instead`\n );\n if (!(alias in options2)) {\n options2[alias] = options2[name];\n }\n delete options2[name];\n }\n }\n return requestWithDefaults(options2);\n }\n return requestWithDefaults(...args);\n }\n return Object.assign(withDecorations, requestWithDefaults);\n}\nexport {\n endpointsToMethods\n};\n//# sourceMappingURL=endpoints-to-methods.js.map\n","const Endpoints = {\n actions: {\n addCustomLabelsToSelfHostedRunnerForOrg: [\n \"POST /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n addCustomLabelsToSelfHostedRunnerForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n addRepoAccessToSelfHostedRunnerGroupInOrg: [\n \"PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id}\"\n ],\n addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n addSelectedRepoToOrgVariable: [\n \"PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}\"\n ],\n approveWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve\"\n ],\n cancelWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel\"\n ],\n createEnvironmentVariable: [\n \"POST /repos/{owner}/{repo}/environments/{environment_name}/variables\"\n ],\n createOrUpdateEnvironmentSecret: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}\"\n ],\n createOrUpdateOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}\"],\n createOrUpdateRepoSecret: [\n \"PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}\"\n ],\n createOrgVariable: [\"POST /orgs/{org}/actions/variables\"],\n createRegistrationTokenForOrg: [\n \"POST /orgs/{org}/actions/runners/registration-token\"\n ],\n createRegistrationTokenForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/registration-token\"\n ],\n createRemoveTokenForOrg: [\"POST /orgs/{org}/actions/runners/remove-token\"],\n createRemoveTokenForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/remove-token\"\n ],\n createRepoVariable: [\"POST /repos/{owner}/{repo}/actions/variables\"],\n createWorkflowDispatch: [\n \"POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches\"\n ],\n deleteActionsCacheById: [\n \"DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}\"\n ],\n deleteActionsCacheByKey: [\n \"DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}\"\n ],\n deleteArtifact: [\n \"DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"\n ],\n deleteEnvironmentSecret: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}\"\n ],\n deleteEnvironmentVariable: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}\"\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}\"],\n deleteOrgVariable: [\"DELETE /orgs/{org}/actions/variables/{name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}\"\n ],\n deleteRepoVariable: [\n \"DELETE /repos/{owner}/{repo}/actions/variables/{name}\"\n ],\n deleteSelfHostedRunnerFromOrg: [\n \"DELETE /orgs/{org}/actions/runners/{runner_id}\"\n ],\n deleteSelfHostedRunnerFromRepo: [\n \"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}\"\n ],\n deleteWorkflowRun: [\"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n deleteWorkflowRunLogs: [\n \"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"\n ],\n disableSelectedRepositoryGithubActionsOrganization: [\n \"DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}\"\n ],\n disableWorkflow: [\n \"PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable\"\n ],\n downloadArtifact: [\n \"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}\"\n ],\n downloadJobLogsForWorkflowRun: [\n \"GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs\"\n ],\n downloadWorkflowRunAttemptLogs: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs\"\n ],\n downloadWorkflowRunLogs: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"\n ],\n enableSelectedRepositoryGithubActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/repositories/{repository_id}\"\n ],\n enableWorkflow: [\n \"PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable\"\n ],\n forceCancelWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel\"\n ],\n generateRunnerJitconfigForOrg: [\n \"POST /orgs/{org}/actions/runners/generate-jitconfig\"\n ],\n generateRunnerJitconfigForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig\"\n ],\n getActionsCacheList: [\"GET /repos/{owner}/{repo}/actions/caches\"],\n getActionsCacheUsage: [\"GET /repos/{owner}/{repo}/actions/cache/usage\"],\n getActionsCacheUsageByRepoForOrg: [\n \"GET /orgs/{org}/actions/cache/usage-by-repository\"\n ],\n getActionsCacheUsageForOrg: [\"GET /orgs/{org}/actions/cache/usage\"],\n getAllowedActionsOrganization: [\n \"GET /orgs/{org}/actions/permissions/selected-actions\"\n ],\n getAllowedActionsRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions/selected-actions\"\n ],\n getArtifact: [\"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"],\n getCustomOidcSubClaimForRepo: [\n \"GET /repos/{owner}/{repo}/actions/oidc/customization/sub\"\n ],\n getEnvironmentPublicKey: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key\"\n ],\n getEnvironmentSecret: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}\"\n ],\n getEnvironmentVariable: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}\"\n ],\n getGithubActionsDefaultWorkflowPermissionsOrganization: [\n \"GET /orgs/{org}/actions/permissions/workflow\"\n ],\n getGithubActionsDefaultWorkflowPermissionsRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions/workflow\"\n ],\n getGithubActionsPermissionsOrganization: [\n \"GET /orgs/{org}/actions/permissions\"\n ],\n getGithubActionsPermissionsRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions\"\n ],\n getJobForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/jobs/{job_id}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/actions/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/actions/secrets/{secret_name}\"],\n getOrgVariable: [\"GET /orgs/{org}/actions/variables/{name}\"],\n getPendingDeploymentsForRun: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments\"\n ],\n getRepoPermissions: [\n \"GET /repos/{owner}/{repo}/actions/permissions\",\n {},\n { renamed: [\"actions\", \"getGithubActionsPermissionsRepository\"] }\n ],\n getRepoPublicKey: [\"GET /repos/{owner}/{repo}/actions/secrets/public-key\"],\n getRepoSecret: [\"GET /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n getRepoVariable: [\"GET /repos/{owner}/{repo}/actions/variables/{name}\"],\n getReviewsForRun: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals\"\n ],\n getSelfHostedRunnerForOrg: [\"GET /orgs/{org}/actions/runners/{runner_id}\"],\n getSelfHostedRunnerForRepo: [\n \"GET /repos/{owner}/{repo}/actions/runners/{runner_id}\"\n ],\n getWorkflow: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}\"],\n getWorkflowAccessToRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions/access\"\n ],\n getWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n getWorkflowRunAttempt: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}\"\n ],\n getWorkflowRunUsage: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing\"\n ],\n getWorkflowUsage: [\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing\"\n ],\n listArtifactsForRepo: [\"GET /repos/{owner}/{repo}/actions/artifacts\"],\n listEnvironmentSecrets: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets\"\n ],\n listEnvironmentVariables: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/variables\"\n ],\n listJobsForWorkflowRun: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs\"\n ],\n listJobsForWorkflowRunAttempt: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs\"\n ],\n listLabelsForSelfHostedRunnerForOrg: [\n \"GET /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n listLabelsForSelfHostedRunnerForRepo: [\n \"GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n listOrgSecrets: [\"GET /orgs/{org}/actions/secrets\"],\n listOrgVariables: [\"GET /orgs/{org}/actions/variables\"],\n listRepoOrganizationSecrets: [\n \"GET /repos/{owner}/{repo}/actions/organization-secrets\"\n ],\n listRepoOrganizationVariables: [\n \"GET /repos/{owner}/{repo}/actions/organization-variables\"\n ],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/actions/secrets\"],\n listRepoVariables: [\"GET /repos/{owner}/{repo}/actions/variables\"],\n listRepoWorkflows: [\"GET /repos/{owner}/{repo}/actions/workflows\"],\n listRunnerApplicationsForOrg: [\"GET /orgs/{org}/actions/runners/downloads\"],\n listRunnerApplicationsForRepo: [\n \"GET /repos/{owner}/{repo}/actions/runners/downloads\"\n ],\n listSelectedReposForOrgSecret: [\n \"GET /orgs/{org}/actions/secrets/{secret_name}/repositories\"\n ],\n listSelectedReposForOrgVariable: [\n \"GET /orgs/{org}/actions/variables/{name}/repositories\"\n ],\n listSelectedRepositoriesEnabledGithubActionsOrganization: [\n \"GET /orgs/{org}/actions/permissions/repositories\"\n ],\n listSelfHostedRunnersForOrg: [\"GET /orgs/{org}/actions/runners\"],\n listSelfHostedRunnersForRepo: [\"GET /repos/{owner}/{repo}/actions/runners\"],\n listWorkflowRunArtifacts: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts\"\n ],\n listWorkflowRuns: [\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\"\n ],\n listWorkflowRunsForRepo: [\"GET /repos/{owner}/{repo}/actions/runs\"],\n reRunJobForWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun\"\n ],\n reRunWorkflow: [\"POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun\"],\n reRunWorkflowFailedJobs: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs\"\n ],\n removeAllCustomLabelsFromSelfHostedRunnerForOrg: [\n \"DELETE /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n removeAllCustomLabelsFromSelfHostedRunnerForRepo: [\n \"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n removeCustomLabelFromSelfHostedRunnerForOrg: [\n \"DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}\"\n ],\n removeCustomLabelFromSelfHostedRunnerForRepo: [\n \"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}\"\n ],\n removeSelectedRepoFromOrgSecret: [\n \"DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n removeSelectedRepoFromOrgVariable: [\n \"DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}\"\n ],\n reviewCustomGatesForRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule\"\n ],\n reviewPendingDeploymentsForRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments\"\n ],\n setAllowedActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/selected-actions\"\n ],\n setAllowedActionsRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/selected-actions\"\n ],\n setCustomLabelsForSelfHostedRunnerForOrg: [\n \"PUT /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n setCustomLabelsForSelfHostedRunnerForRepo: [\n \"PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n setCustomOidcSubClaimForRepo: [\n \"PUT /repos/{owner}/{repo}/actions/oidc/customization/sub\"\n ],\n setGithubActionsDefaultWorkflowPermissionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/workflow\"\n ],\n setGithubActionsDefaultWorkflowPermissionsRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/workflow\"\n ],\n setGithubActionsPermissionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions\"\n ],\n setGithubActionsPermissionsRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions\"\n ],\n setSelectedReposForOrgSecret: [\n \"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories\"\n ],\n setSelectedReposForOrgVariable: [\n \"PUT /orgs/{org}/actions/variables/{name}/repositories\"\n ],\n setSelectedRepositoriesEnabledGithubActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/repositories\"\n ],\n setWorkflowAccessToRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/access\"\n ],\n updateEnvironmentVariable: [\n \"PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}\"\n ],\n updateOrgVariable: [\"PATCH /orgs/{org}/actions/variables/{name}\"],\n updateRepoVariable: [\n \"PATCH /repos/{owner}/{repo}/actions/variables/{name}\"\n ]\n },\n activity: {\n checkRepoIsStarredByAuthenticatedUser: [\"GET /user/starred/{owner}/{repo}\"],\n deleteRepoSubscription: [\"DELETE /repos/{owner}/{repo}/subscription\"],\n deleteThreadSubscription: [\n \"DELETE /notifications/threads/{thread_id}/subscription\"\n ],\n getFeeds: [\"GET /feeds\"],\n getRepoSubscription: [\"GET /repos/{owner}/{repo}/subscription\"],\n getThread: [\"GET /notifications/threads/{thread_id}\"],\n getThreadSubscriptionForAuthenticatedUser: [\n \"GET /notifications/threads/{thread_id}/subscription\"\n ],\n listEventsForAuthenticatedUser: [\"GET /users/{username}/events\"],\n listNotificationsForAuthenticatedUser: [\"GET /notifications\"],\n listOrgEventsForAuthenticatedUser: [\n \"GET /users/{username}/events/orgs/{org}\"\n ],\n listPublicEvents: [\"GET /events\"],\n listPublicEventsForRepoNetwork: [\"GET /networks/{owner}/{repo}/events\"],\n listPublicEventsForUser: [\"GET /users/{username}/events/public\"],\n listPublicOrgEvents: [\"GET /orgs/{org}/events\"],\n listReceivedEventsForUser: [\"GET /users/{username}/received_events\"],\n listReceivedPublicEventsForUser: [\n \"GET /users/{username}/received_events/public\"\n ],\n listRepoEvents: [\"GET /repos/{owner}/{repo}/events\"],\n listRepoNotificationsForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/notifications\"\n ],\n listReposStarredByAuthenticatedUser: [\"GET /user/starred\"],\n listReposStarredByUser: [\"GET /users/{username}/starred\"],\n listReposWatchedByUser: [\"GET /users/{username}/subscriptions\"],\n listStargazersForRepo: [\"GET /repos/{owner}/{repo}/stargazers\"],\n listWatchedReposForAuthenticatedUser: [\"GET /user/subscriptions\"],\n listWatchersForRepo: [\"GET /repos/{owner}/{repo}/subscribers\"],\n markNotificationsAsRead: [\"PUT /notifications\"],\n markRepoNotificationsAsRead: [\"PUT /repos/{owner}/{repo}/notifications\"],\n markThreadAsDone: [\"DELETE /notifications/threads/{thread_id}\"],\n markThreadAsRead: [\"PATCH /notifications/threads/{thread_id}\"],\n setRepoSubscription: [\"PUT /repos/{owner}/{repo}/subscription\"],\n setThreadSubscription: [\n \"PUT /notifications/threads/{thread_id}/subscription\"\n ],\n starRepoForAuthenticatedUser: [\"PUT /user/starred/{owner}/{repo}\"],\n unstarRepoForAuthenticatedUser: [\"DELETE /user/starred/{owner}/{repo}\"]\n },\n apps: {\n addRepoToInstallation: [\n \"PUT /user/installations/{installation_id}/repositories/{repository_id}\",\n {},\n { renamed: [\"apps\", \"addRepoToInstallationForAuthenticatedUser\"] }\n ],\n addRepoToInstallationForAuthenticatedUser: [\n \"PUT /user/installations/{installation_id}/repositories/{repository_id}\"\n ],\n checkToken: [\"POST /applications/{client_id}/token\"],\n createFromManifest: [\"POST /app-manifests/{code}/conversions\"],\n createInstallationAccessToken: [\n \"POST /app/installations/{installation_id}/access_tokens\"\n ],\n deleteAuthorization: [\"DELETE /applications/{client_id}/grant\"],\n deleteInstallation: [\"DELETE /app/installations/{installation_id}\"],\n deleteToken: [\"DELETE /applications/{client_id}/token\"],\n getAuthenticated: [\"GET /app\"],\n getBySlug: [\"GET /apps/{app_slug}\"],\n getInstallation: [\"GET /app/installations/{installation_id}\"],\n getOrgInstallation: [\"GET /orgs/{org}/installation\"],\n getRepoInstallation: [\"GET /repos/{owner}/{repo}/installation\"],\n getSubscriptionPlanForAccount: [\n \"GET /marketplace_listing/accounts/{account_id}\"\n ],\n getSubscriptionPlanForAccountStubbed: [\n \"GET /marketplace_listing/stubbed/accounts/{account_id}\"\n ],\n getUserInstallation: [\"GET /users/{username}/installation\"],\n getWebhookConfigForApp: [\"GET /app/hook/config\"],\n getWebhookDelivery: [\"GET /app/hook/deliveries/{delivery_id}\"],\n listAccountsForPlan: [\"GET /marketplace_listing/plans/{plan_id}/accounts\"],\n listAccountsForPlanStubbed: [\n \"GET /marketplace_listing/stubbed/plans/{plan_id}/accounts\"\n ],\n listInstallationReposForAuthenticatedUser: [\n \"GET /user/installations/{installation_id}/repositories\"\n ],\n listInstallationRequestsForAuthenticatedApp: [\n \"GET /app/installation-requests\"\n ],\n listInstallations: [\"GET /app/installations\"],\n listInstallationsForAuthenticatedUser: [\"GET /user/installations\"],\n listPlans: [\"GET /marketplace_listing/plans\"],\n listPlansStubbed: [\"GET /marketplace_listing/stubbed/plans\"],\n listReposAccessibleToInstallation: [\"GET /installation/repositories\"],\n listSubscriptionsForAuthenticatedUser: [\"GET /user/marketplace_purchases\"],\n listSubscriptionsForAuthenticatedUserStubbed: [\n \"GET /user/marketplace_purchases/stubbed\"\n ],\n listWebhookDeliveries: [\"GET /app/hook/deliveries\"],\n redeliverWebhookDelivery: [\n \"POST /app/hook/deliveries/{delivery_id}/attempts\"\n ],\n removeRepoFromInstallation: [\n \"DELETE /user/installations/{installation_id}/repositories/{repository_id}\",\n {},\n { renamed: [\"apps\", \"removeRepoFromInstallationForAuthenticatedUser\"] }\n ],\n removeRepoFromInstallationForAuthenticatedUser: [\n \"DELETE /user/installations/{installation_id}/repositories/{repository_id}\"\n ],\n resetToken: [\"PATCH /applications/{client_id}/token\"],\n revokeInstallationAccessToken: [\"DELETE /installation/token\"],\n scopeToken: [\"POST /applications/{client_id}/token/scoped\"],\n suspendInstallation: [\"PUT /app/installations/{installation_id}/suspended\"],\n unsuspendInstallation: [\n \"DELETE /app/installations/{installation_id}/suspended\"\n ],\n updateWebhookConfigForApp: [\"PATCH /app/hook/config\"]\n },\n billing: {\n getGithubActionsBillingOrg: [\"GET /orgs/{org}/settings/billing/actions\"],\n getGithubActionsBillingUser: [\n \"GET /users/{username}/settings/billing/actions\"\n ],\n getGithubBillingUsageReportOrg: [\n \"GET /organizations/{org}/settings/billing/usage\"\n ],\n getGithubPackagesBillingOrg: [\"GET /orgs/{org}/settings/billing/packages\"],\n getGithubPackagesBillingUser: [\n \"GET /users/{username}/settings/billing/packages\"\n ],\n getSharedStorageBillingOrg: [\n \"GET /orgs/{org}/settings/billing/shared-storage\"\n ],\n getSharedStorageBillingUser: [\n \"GET /users/{username}/settings/billing/shared-storage\"\n ]\n },\n checks: {\n create: [\"POST /repos/{owner}/{repo}/check-runs\"],\n createSuite: [\"POST /repos/{owner}/{repo}/check-suites\"],\n get: [\"GET /repos/{owner}/{repo}/check-runs/{check_run_id}\"],\n getSuite: [\"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}\"],\n listAnnotations: [\n \"GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations\"\n ],\n listForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-runs\"],\n listForSuite: [\n \"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs\"\n ],\n listSuitesForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-suites\"],\n rerequestRun: [\n \"POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest\"\n ],\n rerequestSuite: [\n \"POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest\"\n ],\n setSuitesPreferences: [\n \"PATCH /repos/{owner}/{repo}/check-suites/preferences\"\n ],\n update: [\"PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}\"]\n },\n codeScanning: {\n commitAutofix: [\n \"POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix/commits\"\n ],\n createAutofix: [\n \"POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix\"\n ],\n createVariantAnalysis: [\n \"POST /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses\"\n ],\n deleteAnalysis: [\n \"DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}\"\n ],\n deleteCodeqlDatabase: [\n \"DELETE /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}\"\n ],\n getAlert: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\",\n {},\n { renamedParameters: { alert_id: \"alert_number\" } }\n ],\n getAnalysis: [\n \"GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}\"\n ],\n getAutofix: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix\"\n ],\n getCodeqlDatabase: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}\"\n ],\n getDefaultSetup: [\"GET /repos/{owner}/{repo}/code-scanning/default-setup\"],\n getSarif: [\"GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}\"],\n getVariantAnalysis: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}\"\n ],\n getVariantAnalysisRepoTask: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}\"\n ],\n listAlertInstances: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances\"\n ],\n listAlertsForOrg: [\"GET /orgs/{org}/code-scanning/alerts\"],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/code-scanning/alerts\"],\n listAlertsInstances: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances\",\n {},\n { renamed: [\"codeScanning\", \"listAlertInstances\"] }\n ],\n listCodeqlDatabases: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/databases\"\n ],\n listRecentAnalyses: [\"GET /repos/{owner}/{repo}/code-scanning/analyses\"],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\"\n ],\n updateDefaultSetup: [\n \"PATCH /repos/{owner}/{repo}/code-scanning/default-setup\"\n ],\n uploadSarif: [\"POST /repos/{owner}/{repo}/code-scanning/sarifs\"]\n },\n codeSecurity: {\n attachConfiguration: [\n \"POST /orgs/{org}/code-security/configurations/{configuration_id}/attach\"\n ],\n attachEnterpriseConfiguration: [\n \"POST /enterprises/{enterprise}/code-security/configurations/{configuration_id}/attach\"\n ],\n createConfiguration: [\"POST /orgs/{org}/code-security/configurations\"],\n createConfigurationForEnterprise: [\n \"POST /enterprises/{enterprise}/code-security/configurations\"\n ],\n deleteConfiguration: [\n \"DELETE /orgs/{org}/code-security/configurations/{configuration_id}\"\n ],\n deleteConfigurationForEnterprise: [\n \"DELETE /enterprises/{enterprise}/code-security/configurations/{configuration_id}\"\n ],\n detachConfiguration: [\n \"DELETE /orgs/{org}/code-security/configurations/detach\"\n ],\n getConfiguration: [\n \"GET /orgs/{org}/code-security/configurations/{configuration_id}\"\n ],\n getConfigurationForRepository: [\n \"GET /repos/{owner}/{repo}/code-security-configuration\"\n ],\n getConfigurationsForEnterprise: [\n \"GET /enterprises/{enterprise}/code-security/configurations\"\n ],\n getConfigurationsForOrg: [\"GET /orgs/{org}/code-security/configurations\"],\n getDefaultConfigurations: [\n \"GET /orgs/{org}/code-security/configurations/defaults\"\n ],\n getDefaultConfigurationsForEnterprise: [\n \"GET /enterprises/{enterprise}/code-security/configurations/defaults\"\n ],\n getRepositoriesForConfiguration: [\n \"GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories\"\n ],\n getRepositoriesForEnterpriseConfiguration: [\n \"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories\"\n ],\n getSingleConfigurationForEnterprise: [\n \"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}\"\n ],\n setConfigurationAsDefault: [\n \"PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults\"\n ],\n setConfigurationAsDefaultForEnterprise: [\n \"PUT /enterprises/{enterprise}/code-security/configurations/{configuration_id}/defaults\"\n ],\n updateConfiguration: [\n \"PATCH /orgs/{org}/code-security/configurations/{configuration_id}\"\n ],\n updateEnterpriseConfiguration: [\n \"PATCH /enterprises/{enterprise}/code-security/configurations/{configuration_id}\"\n ]\n },\n codesOfConduct: {\n getAllCodesOfConduct: [\"GET /codes_of_conduct\"],\n getConductCode: [\"GET /codes_of_conduct/{key}\"]\n },\n codespaces: {\n addRepositoryForSecretForAuthenticatedUser: [\n \"PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n checkPermissionsForDevcontainer: [\n \"GET /repos/{owner}/{repo}/codespaces/permissions_check\"\n ],\n codespaceMachinesForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/machines\"\n ],\n createForAuthenticatedUser: [\"POST /user/codespaces\"],\n createOrUpdateOrgSecret: [\n \"PUT /orgs/{org}/codespaces/secrets/{secret_name}\"\n ],\n createOrUpdateRepoSecret: [\n \"PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}\"\n ],\n createOrUpdateSecretForAuthenticatedUser: [\n \"PUT /user/codespaces/secrets/{secret_name}\"\n ],\n createWithPrForAuthenticatedUser: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces\"\n ],\n createWithRepoForAuthenticatedUser: [\n \"POST /repos/{owner}/{repo}/codespaces\"\n ],\n deleteForAuthenticatedUser: [\"DELETE /user/codespaces/{codespace_name}\"],\n deleteFromOrganization: [\n \"DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}\"\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/codespaces/secrets/{secret_name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}\"\n ],\n deleteSecretForAuthenticatedUser: [\n \"DELETE /user/codespaces/secrets/{secret_name}\"\n ],\n exportForAuthenticatedUser: [\n \"POST /user/codespaces/{codespace_name}/exports\"\n ],\n getCodespacesForUserInOrg: [\n \"GET /orgs/{org}/members/{username}/codespaces\"\n ],\n getExportDetailsForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/exports/{export_id}\"\n ],\n getForAuthenticatedUser: [\"GET /user/codespaces/{codespace_name}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/codespaces/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/codespaces/secrets/{secret_name}\"],\n getPublicKeyForAuthenticatedUser: [\n \"GET /user/codespaces/secrets/public-key\"\n ],\n getRepoPublicKey: [\n \"GET /repos/{owner}/{repo}/codespaces/secrets/public-key\"\n ],\n getRepoSecret: [\n \"GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}\"\n ],\n getSecretForAuthenticatedUser: [\n \"GET /user/codespaces/secrets/{secret_name}\"\n ],\n listDevcontainersInRepositoryForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces/devcontainers\"\n ],\n listForAuthenticatedUser: [\"GET /user/codespaces\"],\n listInOrganization: [\n \"GET /orgs/{org}/codespaces\",\n {},\n { renamedParameters: { org_id: \"org\" } }\n ],\n listInRepositoryForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces\"\n ],\n listOrgSecrets: [\"GET /orgs/{org}/codespaces/secrets\"],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/codespaces/secrets\"],\n listRepositoriesForSecretForAuthenticatedUser: [\n \"GET /user/codespaces/secrets/{secret_name}/repositories\"\n ],\n listSecretsForAuthenticatedUser: [\"GET /user/codespaces/secrets\"],\n listSelectedReposForOrgSecret: [\n \"GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories\"\n ],\n preFlightWithRepoForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces/new\"\n ],\n publishForAuthenticatedUser: [\n \"POST /user/codespaces/{codespace_name}/publish\"\n ],\n removeRepositoryForSecretForAuthenticatedUser: [\n \"DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n removeSelectedRepoFromOrgSecret: [\n \"DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n repoMachinesForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces/machines\"\n ],\n setRepositoriesForSecretForAuthenticatedUser: [\n \"PUT /user/codespaces/secrets/{secret_name}/repositories\"\n ],\n setSelectedReposForOrgSecret: [\n \"PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories\"\n ],\n startForAuthenticatedUser: [\"POST /user/codespaces/{codespace_name}/start\"],\n stopForAuthenticatedUser: [\"POST /user/codespaces/{codespace_name}/stop\"],\n stopInOrganization: [\n \"POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop\"\n ],\n updateForAuthenticatedUser: [\"PATCH /user/codespaces/{codespace_name}\"]\n },\n copilot: {\n addCopilotSeatsForTeams: [\n \"POST /orgs/{org}/copilot/billing/selected_teams\"\n ],\n addCopilotSeatsForUsers: [\n \"POST /orgs/{org}/copilot/billing/selected_users\"\n ],\n cancelCopilotSeatAssignmentForTeams: [\n \"DELETE /orgs/{org}/copilot/billing/selected_teams\"\n ],\n cancelCopilotSeatAssignmentForUsers: [\n \"DELETE /orgs/{org}/copilot/billing/selected_users\"\n ],\n copilotMetricsForOrganization: [\"GET /orgs/{org}/copilot/metrics\"],\n copilotMetricsForTeam: [\"GET /orgs/{org}/team/{team_slug}/copilot/metrics\"],\n getCopilotOrganizationDetails: [\"GET /orgs/{org}/copilot/billing\"],\n getCopilotSeatDetailsForUser: [\n \"GET /orgs/{org}/members/{username}/copilot\"\n ],\n listCopilotSeats: [\"GET /orgs/{org}/copilot/billing/seats\"],\n usageMetricsForOrg: [\"GET /orgs/{org}/copilot/usage\"],\n usageMetricsForTeam: [\"GET /orgs/{org}/team/{team_slug}/copilot/usage\"]\n },\n dependabot: {\n addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n createOrUpdateOrgSecret: [\n \"PUT /orgs/{org}/dependabot/secrets/{secret_name}\"\n ],\n createOrUpdateRepoSecret: [\n \"PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}\"\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/dependabot/secrets/{secret_name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}\"\n ],\n getAlert: [\"GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/dependabot/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/dependabot/secrets/{secret_name}\"],\n getRepoPublicKey: [\n \"GET /repos/{owner}/{repo}/dependabot/secrets/public-key\"\n ],\n getRepoSecret: [\n \"GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}\"\n ],\n listAlertsForEnterprise: [\n \"GET /enterprises/{enterprise}/dependabot/alerts\"\n ],\n listAlertsForOrg: [\"GET /orgs/{org}/dependabot/alerts\"],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/dependabot/alerts\"],\n listOrgSecrets: [\"GET /orgs/{org}/dependabot/secrets\"],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/dependabot/secrets\"],\n listSelectedReposForOrgSecret: [\n \"GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories\"\n ],\n removeSelectedRepoFromOrgSecret: [\n \"DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n setSelectedReposForOrgSecret: [\n \"PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories\"\n ],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}\"\n ]\n },\n dependencyGraph: {\n createRepositorySnapshot: [\n \"POST /repos/{owner}/{repo}/dependency-graph/snapshots\"\n ],\n diffRange: [\n \"GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}\"\n ],\n exportSbom: [\"GET /repos/{owner}/{repo}/dependency-graph/sbom\"]\n },\n emojis: { get: [\"GET /emojis\"] },\n gists: {\n checkIsStarred: [\"GET /gists/{gist_id}/star\"],\n create: [\"POST /gists\"],\n createComment: [\"POST /gists/{gist_id}/comments\"],\n delete: [\"DELETE /gists/{gist_id}\"],\n deleteComment: [\"DELETE /gists/{gist_id}/comments/{comment_id}\"],\n fork: [\"POST /gists/{gist_id}/forks\"],\n get: [\"GET /gists/{gist_id}\"],\n getComment: [\"GET /gists/{gist_id}/comments/{comment_id}\"],\n getRevision: [\"GET /gists/{gist_id}/{sha}\"],\n list: [\"GET /gists\"],\n listComments: [\"GET /gists/{gist_id}/comments\"],\n listCommits: [\"GET /gists/{gist_id}/commits\"],\n listForUser: [\"GET /users/{username}/gists\"],\n listForks: [\"GET /gists/{gist_id}/forks\"],\n listPublic: [\"GET /gists/public\"],\n listStarred: [\"GET /gists/starred\"],\n star: [\"PUT /gists/{gist_id}/star\"],\n unstar: [\"DELETE /gists/{gist_id}/star\"],\n update: [\"PATCH /gists/{gist_id}\"],\n updateComment: [\"PATCH /gists/{gist_id}/comments/{comment_id}\"]\n },\n git: {\n createBlob: [\"POST /repos/{owner}/{repo}/git/blobs\"],\n createCommit: [\"POST /repos/{owner}/{repo}/git/commits\"],\n createRef: [\"POST /repos/{owner}/{repo}/git/refs\"],\n createTag: [\"POST /repos/{owner}/{repo}/git/tags\"],\n createTree: [\"POST /repos/{owner}/{repo}/git/trees\"],\n deleteRef: [\"DELETE /repos/{owner}/{repo}/git/refs/{ref}\"],\n getBlob: [\"GET /repos/{owner}/{repo}/git/blobs/{file_sha}\"],\n getCommit: [\"GET /repos/{owner}/{repo}/git/commits/{commit_sha}\"],\n getRef: [\"GET /repos/{owner}/{repo}/git/ref/{ref}\"],\n getTag: [\"GET /repos/{owner}/{repo}/git/tags/{tag_sha}\"],\n getTree: [\"GET /repos/{owner}/{repo}/git/trees/{tree_sha}\"],\n listMatchingRefs: [\"GET /repos/{owner}/{repo}/git/matching-refs/{ref}\"],\n updateRef: [\"PATCH /repos/{owner}/{repo}/git/refs/{ref}\"]\n },\n gitignore: {\n getAllTemplates: [\"GET /gitignore/templates\"],\n getTemplate: [\"GET /gitignore/templates/{name}\"]\n },\n interactions: {\n getRestrictionsForAuthenticatedUser: [\"GET /user/interaction-limits\"],\n getRestrictionsForOrg: [\"GET /orgs/{org}/interaction-limits\"],\n getRestrictionsForRepo: [\"GET /repos/{owner}/{repo}/interaction-limits\"],\n getRestrictionsForYourPublicRepos: [\n \"GET /user/interaction-limits\",\n {},\n { renamed: [\"interactions\", \"getRestrictionsForAuthenticatedUser\"] }\n ],\n removeRestrictionsForAuthenticatedUser: [\"DELETE /user/interaction-limits\"],\n removeRestrictionsForOrg: [\"DELETE /orgs/{org}/interaction-limits\"],\n removeRestrictionsForRepo: [\n \"DELETE /repos/{owner}/{repo}/interaction-limits\"\n ],\n removeRestrictionsForYourPublicRepos: [\n \"DELETE /user/interaction-limits\",\n {},\n { renamed: [\"interactions\", \"removeRestrictionsForAuthenticatedUser\"] }\n ],\n setRestrictionsForAuthenticatedUser: [\"PUT /user/interaction-limits\"],\n setRestrictionsForOrg: [\"PUT /orgs/{org}/interaction-limits\"],\n setRestrictionsForRepo: [\"PUT /repos/{owner}/{repo}/interaction-limits\"],\n setRestrictionsForYourPublicRepos: [\n \"PUT /user/interaction-limits\",\n {},\n { renamed: [\"interactions\", \"setRestrictionsForAuthenticatedUser\"] }\n ]\n },\n issues: {\n addAssignees: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/assignees\"\n ],\n addLabels: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n addSubIssue: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/sub_issues\"\n ],\n checkUserCanBeAssigned: [\"GET /repos/{owner}/{repo}/assignees/{assignee}\"],\n checkUserCanBeAssignedToIssue: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}\"\n ],\n create: [\"POST /repos/{owner}/{repo}/issues\"],\n createComment: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/comments\"\n ],\n createLabel: [\"POST /repos/{owner}/{repo}/labels\"],\n createMilestone: [\"POST /repos/{owner}/{repo}/milestones\"],\n deleteComment: [\n \"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}\"\n ],\n deleteLabel: [\"DELETE /repos/{owner}/{repo}/labels/{name}\"],\n deleteMilestone: [\n \"DELETE /repos/{owner}/{repo}/milestones/{milestone_number}\"\n ],\n get: [\"GET /repos/{owner}/{repo}/issues/{issue_number}\"],\n getComment: [\"GET /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n getEvent: [\"GET /repos/{owner}/{repo}/issues/events/{event_id}\"],\n getLabel: [\"GET /repos/{owner}/{repo}/labels/{name}\"],\n getMilestone: [\"GET /repos/{owner}/{repo}/milestones/{milestone_number}\"],\n list: [\"GET /issues\"],\n listAssignees: [\"GET /repos/{owner}/{repo}/assignees\"],\n listComments: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/comments\"],\n listCommentsForRepo: [\"GET /repos/{owner}/{repo}/issues/comments\"],\n listEvents: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/events\"],\n listEventsForRepo: [\"GET /repos/{owner}/{repo}/issues/events\"],\n listEventsForTimeline: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/timeline\"\n ],\n listForAuthenticatedUser: [\"GET /user/issues\"],\n listForOrg: [\"GET /orgs/{org}/issues\"],\n listForRepo: [\"GET /repos/{owner}/{repo}/issues\"],\n listLabelsForMilestone: [\n \"GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels\"\n ],\n listLabelsForRepo: [\"GET /repos/{owner}/{repo}/labels\"],\n listLabelsOnIssue: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/labels\"\n ],\n listMilestones: [\"GET /repos/{owner}/{repo}/milestones\"],\n listSubIssues: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues\"\n ],\n lock: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n removeAllLabels: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels\"\n ],\n removeAssignees: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees\"\n ],\n removeLabel: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}\"\n ],\n removeSubIssue: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/sub_issue\"\n ],\n reprioritizeSubIssue: [\n \"PATCH /repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority\"\n ],\n setLabels: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n unlock: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n update: [\"PATCH /repos/{owner}/{repo}/issues/{issue_number}\"],\n updateComment: [\"PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n updateLabel: [\"PATCH /repos/{owner}/{repo}/labels/{name}\"],\n updateMilestone: [\n \"PATCH /repos/{owner}/{repo}/milestones/{milestone_number}\"\n ]\n },\n licenses: {\n get: [\"GET /licenses/{license}\"],\n getAllCommonlyUsed: [\"GET /licenses\"],\n getForRepo: [\"GET /repos/{owner}/{repo}/license\"]\n },\n markdown: {\n render: [\"POST /markdown\"],\n renderRaw: [\n \"POST /markdown/raw\",\n { headers: { \"content-type\": \"text/plain; charset=utf-8\" } }\n ]\n },\n meta: {\n get: [\"GET /meta\"],\n getAllVersions: [\"GET /versions\"],\n getOctocat: [\"GET /octocat\"],\n getZen: [\"GET /zen\"],\n root: [\"GET /\"]\n },\n migrations: {\n deleteArchiveForAuthenticatedUser: [\n \"DELETE /user/migrations/{migration_id}/archive\"\n ],\n deleteArchiveForOrg: [\n \"DELETE /orgs/{org}/migrations/{migration_id}/archive\"\n ],\n downloadArchiveForOrg: [\n \"GET /orgs/{org}/migrations/{migration_id}/archive\"\n ],\n getArchiveForAuthenticatedUser: [\n \"GET /user/migrations/{migration_id}/archive\"\n ],\n getStatusForAuthenticatedUser: [\"GET /user/migrations/{migration_id}\"],\n getStatusForOrg: [\"GET /orgs/{org}/migrations/{migration_id}\"],\n listForAuthenticatedUser: [\"GET /user/migrations\"],\n listForOrg: [\"GET /orgs/{org}/migrations\"],\n listReposForAuthenticatedUser: [\n \"GET /user/migrations/{migration_id}/repositories\"\n ],\n listReposForOrg: [\"GET /orgs/{org}/migrations/{migration_id}/repositories\"],\n listReposForUser: [\n \"GET /user/migrations/{migration_id}/repositories\",\n {},\n { renamed: [\"migrations\", \"listReposForAuthenticatedUser\"] }\n ],\n startForAuthenticatedUser: [\"POST /user/migrations\"],\n startForOrg: [\"POST /orgs/{org}/migrations\"],\n unlockRepoForAuthenticatedUser: [\n \"DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock\"\n ],\n unlockRepoForOrg: [\n \"DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock\"\n ]\n },\n oidc: {\n getOidcCustomSubTemplateForOrg: [\n \"GET /orgs/{org}/actions/oidc/customization/sub\"\n ],\n updateOidcCustomSubTemplateForOrg: [\n \"PUT /orgs/{org}/actions/oidc/customization/sub\"\n ]\n },\n orgs: {\n addSecurityManagerTeam: [\n \"PUT /orgs/{org}/security-managers/teams/{team_slug}\",\n {},\n {\n deprecated: \"octokit.rest.orgs.addSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#add-a-security-manager-team\"\n }\n ],\n assignTeamToOrgRole: [\n \"PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}\"\n ],\n assignUserToOrgRole: [\n \"PUT /orgs/{org}/organization-roles/users/{username}/{role_id}\"\n ],\n blockUser: [\"PUT /orgs/{org}/blocks/{username}\"],\n cancelInvitation: [\"DELETE /orgs/{org}/invitations/{invitation_id}\"],\n checkBlockedUser: [\"GET /orgs/{org}/blocks/{username}\"],\n checkMembershipForUser: [\"GET /orgs/{org}/members/{username}\"],\n checkPublicMembershipForUser: [\"GET /orgs/{org}/public_members/{username}\"],\n convertMemberToOutsideCollaborator: [\n \"PUT /orgs/{org}/outside_collaborators/{username}\"\n ],\n createInvitation: [\"POST /orgs/{org}/invitations\"],\n createOrUpdateCustomProperties: [\"PATCH /orgs/{org}/properties/schema\"],\n createOrUpdateCustomPropertiesValuesForRepos: [\n \"PATCH /orgs/{org}/properties/values\"\n ],\n createOrUpdateCustomProperty: [\n \"PUT /orgs/{org}/properties/schema/{custom_property_name}\"\n ],\n createWebhook: [\"POST /orgs/{org}/hooks\"],\n delete: [\"DELETE /orgs/{org}\"],\n deleteWebhook: [\"DELETE /orgs/{org}/hooks/{hook_id}\"],\n enableOrDisableSecurityProductOnAllOrgRepos: [\n \"POST /orgs/{org}/{security_product}/{enablement}\",\n {},\n {\n deprecated: \"octokit.rest.orgs.enableOrDisableSecurityProductOnAllOrgRepos() is deprecated, see https://docs.github.com/rest/orgs/orgs#enable-or-disable-a-security-feature-for-an-organization\"\n }\n ],\n get: [\"GET /orgs/{org}\"],\n getAllCustomProperties: [\"GET /orgs/{org}/properties/schema\"],\n getCustomProperty: [\n \"GET /orgs/{org}/properties/schema/{custom_property_name}\"\n ],\n getMembershipForAuthenticatedUser: [\"GET /user/memberships/orgs/{org}\"],\n getMembershipForUser: [\"GET /orgs/{org}/memberships/{username}\"],\n getOrgRole: [\"GET /orgs/{org}/organization-roles/{role_id}\"],\n getWebhook: [\"GET /orgs/{org}/hooks/{hook_id}\"],\n getWebhookConfigForOrg: [\"GET /orgs/{org}/hooks/{hook_id}/config\"],\n getWebhookDelivery: [\n \"GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}\"\n ],\n list: [\"GET /organizations\"],\n listAppInstallations: [\"GET /orgs/{org}/installations\"],\n listAttestations: [\"GET /orgs/{org}/attestations/{subject_digest}\"],\n listBlockedUsers: [\"GET /orgs/{org}/blocks\"],\n listCustomPropertiesValuesForRepos: [\"GET /orgs/{org}/properties/values\"],\n listFailedInvitations: [\"GET /orgs/{org}/failed_invitations\"],\n listForAuthenticatedUser: [\"GET /user/orgs\"],\n listForUser: [\"GET /users/{username}/orgs\"],\n listInvitationTeams: [\"GET /orgs/{org}/invitations/{invitation_id}/teams\"],\n listMembers: [\"GET /orgs/{org}/members\"],\n listMembershipsForAuthenticatedUser: [\"GET /user/memberships/orgs\"],\n listOrgRoleTeams: [\"GET /orgs/{org}/organization-roles/{role_id}/teams\"],\n listOrgRoleUsers: [\"GET /orgs/{org}/organization-roles/{role_id}/users\"],\n listOrgRoles: [\"GET /orgs/{org}/organization-roles\"],\n listOrganizationFineGrainedPermissions: [\n \"GET /orgs/{org}/organization-fine-grained-permissions\"\n ],\n listOutsideCollaborators: [\"GET /orgs/{org}/outside_collaborators\"],\n listPatGrantRepositories: [\n \"GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories\"\n ],\n listPatGrantRequestRepositories: [\n \"GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories\"\n ],\n listPatGrantRequests: [\"GET /orgs/{org}/personal-access-token-requests\"],\n listPatGrants: [\"GET /orgs/{org}/personal-access-tokens\"],\n listPendingInvitations: [\"GET /orgs/{org}/invitations\"],\n listPublicMembers: [\"GET /orgs/{org}/public_members\"],\n listSecurityManagerTeams: [\n \"GET /orgs/{org}/security-managers\",\n {},\n {\n deprecated: \"octokit.rest.orgs.listSecurityManagerTeams() is deprecated, see https://docs.github.com/rest/orgs/security-managers#list-security-manager-teams\"\n }\n ],\n listWebhookDeliveries: [\"GET /orgs/{org}/hooks/{hook_id}/deliveries\"],\n listWebhooks: [\"GET /orgs/{org}/hooks\"],\n pingWebhook: [\"POST /orgs/{org}/hooks/{hook_id}/pings\"],\n redeliverWebhookDelivery: [\n \"POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts\"\n ],\n removeCustomProperty: [\n \"DELETE /orgs/{org}/properties/schema/{custom_property_name}\"\n ],\n removeMember: [\"DELETE /orgs/{org}/members/{username}\"],\n removeMembershipForUser: [\"DELETE /orgs/{org}/memberships/{username}\"],\n removeOutsideCollaborator: [\n \"DELETE /orgs/{org}/outside_collaborators/{username}\"\n ],\n removePublicMembershipForAuthenticatedUser: [\n \"DELETE /orgs/{org}/public_members/{username}\"\n ],\n removeSecurityManagerTeam: [\n \"DELETE /orgs/{org}/security-managers/teams/{team_slug}\",\n {},\n {\n deprecated: \"octokit.rest.orgs.removeSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team\"\n }\n ],\n reviewPatGrantRequest: [\n \"POST /orgs/{org}/personal-access-token-requests/{pat_request_id}\"\n ],\n reviewPatGrantRequestsInBulk: [\n \"POST /orgs/{org}/personal-access-token-requests\"\n ],\n revokeAllOrgRolesTeam: [\n \"DELETE /orgs/{org}/organization-roles/teams/{team_slug}\"\n ],\n revokeAllOrgRolesUser: [\n \"DELETE /orgs/{org}/organization-roles/users/{username}\"\n ],\n revokeOrgRoleTeam: [\n \"DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}\"\n ],\n revokeOrgRoleUser: [\n \"DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}\"\n ],\n setMembershipForUser: [\"PUT /orgs/{org}/memberships/{username}\"],\n setPublicMembershipForAuthenticatedUser: [\n \"PUT /orgs/{org}/public_members/{username}\"\n ],\n unblockUser: [\"DELETE /orgs/{org}/blocks/{username}\"],\n update: [\"PATCH /orgs/{org}\"],\n updateMembershipForAuthenticatedUser: [\n \"PATCH /user/memberships/orgs/{org}\"\n ],\n updatePatAccess: [\"POST /orgs/{org}/personal-access-tokens/{pat_id}\"],\n updatePatAccesses: [\"POST /orgs/{org}/personal-access-tokens\"],\n updateWebhook: [\"PATCH /orgs/{org}/hooks/{hook_id}\"],\n updateWebhookConfigForOrg: [\"PATCH /orgs/{org}/hooks/{hook_id}/config\"]\n },\n packages: {\n deletePackageForAuthenticatedUser: [\n \"DELETE /user/packages/{package_type}/{package_name}\"\n ],\n deletePackageForOrg: [\n \"DELETE /orgs/{org}/packages/{package_type}/{package_name}\"\n ],\n deletePackageForUser: [\n \"DELETE /users/{username}/packages/{package_type}/{package_name}\"\n ],\n deletePackageVersionForAuthenticatedUser: [\n \"DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n deletePackageVersionForOrg: [\n \"DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n deletePackageVersionForUser: [\n \"DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n getAllPackageVersionsForAPackageOwnedByAnOrg: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions\",\n {},\n { renamed: [\"packages\", \"getAllPackageVersionsForPackageOwnedByOrg\"] }\n ],\n getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}/versions\",\n {},\n {\n renamed: [\n \"packages\",\n \"getAllPackageVersionsForPackageOwnedByAuthenticatedUser\"\n ]\n }\n ],\n getAllPackageVersionsForPackageOwnedByAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}/versions\"\n ],\n getAllPackageVersionsForPackageOwnedByOrg: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions\"\n ],\n getAllPackageVersionsForPackageOwnedByUser: [\n \"GET /users/{username}/packages/{package_type}/{package_name}/versions\"\n ],\n getPackageForAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}\"\n ],\n getPackageForOrganization: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}\"\n ],\n getPackageForUser: [\n \"GET /users/{username}/packages/{package_type}/{package_name}\"\n ],\n getPackageVersionForAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n getPackageVersionForOrganization: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n getPackageVersionForUser: [\n \"GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n listDockerMigrationConflictingPackagesForAuthenticatedUser: [\n \"GET /user/docker/conflicts\"\n ],\n listDockerMigrationConflictingPackagesForOrganization: [\n \"GET /orgs/{org}/docker/conflicts\"\n ],\n listDockerMigrationConflictingPackagesForUser: [\n \"GET /users/{username}/docker/conflicts\"\n ],\n listPackagesForAuthenticatedUser: [\"GET /user/packages\"],\n listPackagesForOrganization: [\"GET /orgs/{org}/packages\"],\n listPackagesForUser: [\"GET /users/{username}/packages\"],\n restorePackageForAuthenticatedUser: [\n \"POST /user/packages/{package_type}/{package_name}/restore{?token}\"\n ],\n restorePackageForOrg: [\n \"POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}\"\n ],\n restorePackageForUser: [\n \"POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}\"\n ],\n restorePackageVersionForAuthenticatedUser: [\n \"POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore\"\n ],\n restorePackageVersionForOrg: [\n \"POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore\"\n ],\n restorePackageVersionForUser: [\n \"POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore\"\n ]\n },\n privateRegistries: {\n createOrgPrivateRegistry: [\"POST /orgs/{org}/private-registries\"],\n deleteOrgPrivateRegistry: [\n \"DELETE /orgs/{org}/private-registries/{secret_name}\"\n ],\n getOrgPrivateRegistry: [\"GET /orgs/{org}/private-registries/{secret_name}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/private-registries/public-key\"],\n listOrgPrivateRegistries: [\"GET /orgs/{org}/private-registries\"],\n updateOrgPrivateRegistry: [\n \"PATCH /orgs/{org}/private-registries/{secret_name}\"\n ]\n },\n projects: {\n addCollaborator: [\"PUT /projects/{project_id}/collaborators/{username}\"],\n createCard: [\"POST /projects/columns/{column_id}/cards\"],\n createColumn: [\"POST /projects/{project_id}/columns\"],\n createForAuthenticatedUser: [\"POST /user/projects\"],\n createForOrg: [\"POST /orgs/{org}/projects\"],\n createForRepo: [\"POST /repos/{owner}/{repo}/projects\"],\n delete: [\"DELETE /projects/{project_id}\"],\n deleteCard: [\"DELETE /projects/columns/cards/{card_id}\"],\n deleteColumn: [\"DELETE /projects/columns/{column_id}\"],\n get: [\"GET /projects/{project_id}\"],\n getCard: [\"GET /projects/columns/cards/{card_id}\"],\n getColumn: [\"GET /projects/columns/{column_id}\"],\n getPermissionForUser: [\n \"GET /projects/{project_id}/collaborators/{username}/permission\"\n ],\n listCards: [\"GET /projects/columns/{column_id}/cards\"],\n listCollaborators: [\"GET /projects/{project_id}/collaborators\"],\n listColumns: [\"GET /projects/{project_id}/columns\"],\n listForOrg: [\"GET /orgs/{org}/projects\"],\n listForRepo: [\"GET /repos/{owner}/{repo}/projects\"],\n listForUser: [\"GET /users/{username}/projects\"],\n moveCard: [\"POST /projects/columns/cards/{card_id}/moves\"],\n moveColumn: [\"POST /projects/columns/{column_id}/moves\"],\n removeCollaborator: [\n \"DELETE /projects/{project_id}/collaborators/{username}\"\n ],\n update: [\"PATCH /projects/{project_id}\"],\n updateCard: [\"PATCH /projects/columns/cards/{card_id}\"],\n updateColumn: [\"PATCH /projects/columns/{column_id}\"]\n },\n pulls: {\n checkIfMerged: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n create: [\"POST /repos/{owner}/{repo}/pulls\"],\n createReplyForReviewComment: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies\"\n ],\n createReview: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n createReviewComment: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments\"\n ],\n deletePendingReview: [\n \"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"\n ],\n deleteReviewComment: [\n \"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}\"\n ],\n dismissReview: [\n \"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals\"\n ],\n get: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}\"],\n getReview: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"\n ],\n getReviewComment: [\"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}\"],\n list: [\"GET /repos/{owner}/{repo}/pulls\"],\n listCommentsForReview: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments\"\n ],\n listCommits: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits\"],\n listFiles: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/files\"],\n listRequestedReviewers: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"\n ],\n listReviewComments: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/comments\"\n ],\n listReviewCommentsForRepo: [\"GET /repos/{owner}/{repo}/pulls/comments\"],\n listReviews: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n merge: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n removeRequestedReviewers: [\n \"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"\n ],\n requestReviewers: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"\n ],\n submitReview: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events\"\n ],\n update: [\"PATCH /repos/{owner}/{repo}/pulls/{pull_number}\"],\n updateBranch: [\n \"PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch\"\n ],\n updateReview: [\n \"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"\n ],\n updateReviewComment: [\n \"PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}\"\n ]\n },\n rateLimit: { get: [\"GET /rate_limit\"] },\n reactions: {\n createForCommitComment: [\n \"POST /repos/{owner}/{repo}/comments/{comment_id}/reactions\"\n ],\n createForIssue: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/reactions\"\n ],\n createForIssueComment: [\n \"POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\"\n ],\n createForPullRequestReviewComment: [\n \"POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\"\n ],\n createForRelease: [\n \"POST /repos/{owner}/{repo}/releases/{release_id}/reactions\"\n ],\n createForTeamDiscussionCommentInOrg: [\n \"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\"\n ],\n createForTeamDiscussionInOrg: [\n \"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\"\n ],\n deleteForCommitComment: [\n \"DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}\"\n ],\n deleteForIssue: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}\"\n ],\n deleteForIssueComment: [\n \"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}\"\n ],\n deleteForPullRequestComment: [\n \"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}\"\n ],\n deleteForRelease: [\n \"DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}\"\n ],\n deleteForTeamDiscussion: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}\"\n ],\n deleteForTeamDiscussionComment: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}\"\n ],\n listForCommitComment: [\n \"GET /repos/{owner}/{repo}/comments/{comment_id}/reactions\"\n ],\n listForIssue: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/reactions\"],\n listForIssueComment: [\n \"GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\"\n ],\n listForPullRequestReviewComment: [\n \"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\"\n ],\n listForRelease: [\n \"GET /repos/{owner}/{repo}/releases/{release_id}/reactions\"\n ],\n listForTeamDiscussionCommentInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\"\n ],\n listForTeamDiscussionInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\"\n ]\n },\n repos: {\n acceptInvitation: [\n \"PATCH /user/repository_invitations/{invitation_id}\",\n {},\n { renamed: [\"repos\", \"acceptInvitationForAuthenticatedUser\"] }\n ],\n acceptInvitationForAuthenticatedUser: [\n \"PATCH /user/repository_invitations/{invitation_id}\"\n ],\n addAppAccessRestrictions: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\",\n {},\n { mapToData: \"apps\" }\n ],\n addCollaborator: [\"PUT /repos/{owner}/{repo}/collaborators/{username}\"],\n addStatusCheckContexts: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\",\n {},\n { mapToData: \"contexts\" }\n ],\n addTeamAccessRestrictions: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\",\n {},\n { mapToData: \"teams\" }\n ],\n addUserAccessRestrictions: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\",\n {},\n { mapToData: \"users\" }\n ],\n cancelPagesDeployment: [\n \"POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel\"\n ],\n checkAutomatedSecurityFixes: [\n \"GET /repos/{owner}/{repo}/automated-security-fixes\"\n ],\n checkCollaborator: [\"GET /repos/{owner}/{repo}/collaborators/{username}\"],\n checkPrivateVulnerabilityReporting: [\n \"GET /repos/{owner}/{repo}/private-vulnerability-reporting\"\n ],\n checkVulnerabilityAlerts: [\n \"GET /repos/{owner}/{repo}/vulnerability-alerts\"\n ],\n codeownersErrors: [\"GET /repos/{owner}/{repo}/codeowners/errors\"],\n compareCommits: [\"GET /repos/{owner}/{repo}/compare/{base}...{head}\"],\n compareCommitsWithBasehead: [\n \"GET /repos/{owner}/{repo}/compare/{basehead}\"\n ],\n createAttestation: [\"POST /repos/{owner}/{repo}/attestations\"],\n createAutolink: [\"POST /repos/{owner}/{repo}/autolinks\"],\n createCommitComment: [\n \"POST /repos/{owner}/{repo}/commits/{commit_sha}/comments\"\n ],\n createCommitSignatureProtection: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\"\n ],\n createCommitStatus: [\"POST /repos/{owner}/{repo}/statuses/{sha}\"],\n createDeployKey: [\"POST /repos/{owner}/{repo}/keys\"],\n createDeployment: [\"POST /repos/{owner}/{repo}/deployments\"],\n createDeploymentBranchPolicy: [\n \"POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies\"\n ],\n createDeploymentProtectionRule: [\n \"POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules\"\n ],\n createDeploymentStatus: [\n \"POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"\n ],\n createDispatchEvent: [\"POST /repos/{owner}/{repo}/dispatches\"],\n createForAuthenticatedUser: [\"POST /user/repos\"],\n createFork: [\"POST /repos/{owner}/{repo}/forks\"],\n createInOrg: [\"POST /orgs/{org}/repos\"],\n createOrUpdateCustomPropertiesValues: [\n \"PATCH /repos/{owner}/{repo}/properties/values\"\n ],\n createOrUpdateEnvironment: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}\"\n ],\n createOrUpdateFileContents: [\"PUT /repos/{owner}/{repo}/contents/{path}\"],\n createOrgRuleset: [\"POST /orgs/{org}/rulesets\"],\n createPagesDeployment: [\"POST /repos/{owner}/{repo}/pages/deployments\"],\n createPagesSite: [\"POST /repos/{owner}/{repo}/pages\"],\n createRelease: [\"POST /repos/{owner}/{repo}/releases\"],\n createRepoRuleset: [\"POST /repos/{owner}/{repo}/rulesets\"],\n createUsingTemplate: [\n \"POST /repos/{template_owner}/{template_repo}/generate\"\n ],\n createWebhook: [\"POST /repos/{owner}/{repo}/hooks\"],\n declineInvitation: [\n \"DELETE /user/repository_invitations/{invitation_id}\",\n {},\n { renamed: [\"repos\", \"declineInvitationForAuthenticatedUser\"] }\n ],\n declineInvitationForAuthenticatedUser: [\n \"DELETE /user/repository_invitations/{invitation_id}\"\n ],\n delete: [\"DELETE /repos/{owner}/{repo}\"],\n deleteAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"\n ],\n deleteAdminBranchProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"\n ],\n deleteAnEnvironment: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}\"\n ],\n deleteAutolink: [\"DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}\"],\n deleteBranchProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection\"\n ],\n deleteCommitComment: [\"DELETE /repos/{owner}/{repo}/comments/{comment_id}\"],\n deleteCommitSignatureProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\"\n ],\n deleteDeployKey: [\"DELETE /repos/{owner}/{repo}/keys/{key_id}\"],\n deleteDeployment: [\n \"DELETE /repos/{owner}/{repo}/deployments/{deployment_id}\"\n ],\n deleteDeploymentBranchPolicy: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}\"\n ],\n deleteFile: [\"DELETE /repos/{owner}/{repo}/contents/{path}\"],\n deleteInvitation: [\n \"DELETE /repos/{owner}/{repo}/invitations/{invitation_id}\"\n ],\n deleteOrgRuleset: [\"DELETE /orgs/{org}/rulesets/{ruleset_id}\"],\n deletePagesSite: [\"DELETE /repos/{owner}/{repo}/pages\"],\n deletePullRequestReviewProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"\n ],\n deleteRelease: [\"DELETE /repos/{owner}/{repo}/releases/{release_id}\"],\n deleteReleaseAsset: [\n \"DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}\"\n ],\n deleteRepoRuleset: [\"DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}\"],\n deleteWebhook: [\"DELETE /repos/{owner}/{repo}/hooks/{hook_id}\"],\n disableAutomatedSecurityFixes: [\n \"DELETE /repos/{owner}/{repo}/automated-security-fixes\"\n ],\n disableDeploymentProtectionRule: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}\"\n ],\n disablePrivateVulnerabilityReporting: [\n \"DELETE /repos/{owner}/{repo}/private-vulnerability-reporting\"\n ],\n disableVulnerabilityAlerts: [\n \"DELETE /repos/{owner}/{repo}/vulnerability-alerts\"\n ],\n downloadArchive: [\n \"GET /repos/{owner}/{repo}/zipball/{ref}\",\n {},\n { renamed: [\"repos\", \"downloadZipballArchive\"] }\n ],\n downloadTarballArchive: [\"GET /repos/{owner}/{repo}/tarball/{ref}\"],\n downloadZipballArchive: [\"GET /repos/{owner}/{repo}/zipball/{ref}\"],\n enableAutomatedSecurityFixes: [\n \"PUT /repos/{owner}/{repo}/automated-security-fixes\"\n ],\n enablePrivateVulnerabilityReporting: [\n \"PUT /repos/{owner}/{repo}/private-vulnerability-reporting\"\n ],\n enableVulnerabilityAlerts: [\n \"PUT /repos/{owner}/{repo}/vulnerability-alerts\"\n ],\n generateReleaseNotes: [\n \"POST /repos/{owner}/{repo}/releases/generate-notes\"\n ],\n get: [\"GET /repos/{owner}/{repo}\"],\n getAccessRestrictions: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"\n ],\n getAdminBranchProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"\n ],\n getAllDeploymentProtectionRules: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules\"\n ],\n getAllEnvironments: [\"GET /repos/{owner}/{repo}/environments\"],\n getAllStatusCheckContexts: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\"\n ],\n getAllTopics: [\"GET /repos/{owner}/{repo}/topics\"],\n getAppsWithAccessToProtectedBranch: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\"\n ],\n getAutolink: [\"GET /repos/{owner}/{repo}/autolinks/{autolink_id}\"],\n getBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}\"],\n getBranchProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection\"\n ],\n getBranchRules: [\"GET /repos/{owner}/{repo}/rules/branches/{branch}\"],\n getClones: [\"GET /repos/{owner}/{repo}/traffic/clones\"],\n getCodeFrequencyStats: [\"GET /repos/{owner}/{repo}/stats/code_frequency\"],\n getCollaboratorPermissionLevel: [\n \"GET /repos/{owner}/{repo}/collaborators/{username}/permission\"\n ],\n getCombinedStatusForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/status\"],\n getCommit: [\"GET /repos/{owner}/{repo}/commits/{ref}\"],\n getCommitActivityStats: [\"GET /repos/{owner}/{repo}/stats/commit_activity\"],\n getCommitComment: [\"GET /repos/{owner}/{repo}/comments/{comment_id}\"],\n getCommitSignatureProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\"\n ],\n getCommunityProfileMetrics: [\"GET /repos/{owner}/{repo}/community/profile\"],\n getContent: [\"GET /repos/{owner}/{repo}/contents/{path}\"],\n getContributorsStats: [\"GET /repos/{owner}/{repo}/stats/contributors\"],\n getCustomDeploymentProtectionRule: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}\"\n ],\n getCustomPropertiesValues: [\"GET /repos/{owner}/{repo}/properties/values\"],\n getDeployKey: [\"GET /repos/{owner}/{repo}/keys/{key_id}\"],\n getDeployment: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}\"],\n getDeploymentBranchPolicy: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}\"\n ],\n getDeploymentStatus: [\n \"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}\"\n ],\n getEnvironment: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}\"\n ],\n getLatestPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/latest\"],\n getLatestRelease: [\"GET /repos/{owner}/{repo}/releases/latest\"],\n getOrgRuleSuite: [\"GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}\"],\n getOrgRuleSuites: [\"GET /orgs/{org}/rulesets/rule-suites\"],\n getOrgRuleset: [\"GET /orgs/{org}/rulesets/{ruleset_id}\"],\n getOrgRulesets: [\"GET /orgs/{org}/rulesets\"],\n getPages: [\"GET /repos/{owner}/{repo}/pages\"],\n getPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/{build_id}\"],\n getPagesDeployment: [\n \"GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}\"\n ],\n getPagesHealthCheck: [\"GET /repos/{owner}/{repo}/pages/health\"],\n getParticipationStats: [\"GET /repos/{owner}/{repo}/stats/participation\"],\n getPullRequestReviewProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"\n ],\n getPunchCardStats: [\"GET /repos/{owner}/{repo}/stats/punch_card\"],\n getReadme: [\"GET /repos/{owner}/{repo}/readme\"],\n getReadmeInDirectory: [\"GET /repos/{owner}/{repo}/readme/{dir}\"],\n getRelease: [\"GET /repos/{owner}/{repo}/releases/{release_id}\"],\n getReleaseAsset: [\"GET /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n getReleaseByTag: [\"GET /repos/{owner}/{repo}/releases/tags/{tag}\"],\n getRepoRuleSuite: [\n \"GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}\"\n ],\n getRepoRuleSuites: [\"GET /repos/{owner}/{repo}/rulesets/rule-suites\"],\n getRepoRuleset: [\"GET /repos/{owner}/{repo}/rulesets/{ruleset_id}\"],\n getRepoRulesets: [\"GET /repos/{owner}/{repo}/rulesets\"],\n getStatusChecksProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"\n ],\n getTeamsWithAccessToProtectedBranch: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\"\n ],\n getTopPaths: [\"GET /repos/{owner}/{repo}/traffic/popular/paths\"],\n getTopReferrers: [\"GET /repos/{owner}/{repo}/traffic/popular/referrers\"],\n getUsersWithAccessToProtectedBranch: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\"\n ],\n getViews: [\"GET /repos/{owner}/{repo}/traffic/views\"],\n getWebhook: [\"GET /repos/{owner}/{repo}/hooks/{hook_id}\"],\n getWebhookConfigForRepo: [\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/config\"\n ],\n getWebhookDelivery: [\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}\"\n ],\n listActivities: [\"GET /repos/{owner}/{repo}/activity\"],\n listAttestations: [\n \"GET /repos/{owner}/{repo}/attestations/{subject_digest}\"\n ],\n listAutolinks: [\"GET /repos/{owner}/{repo}/autolinks\"],\n listBranches: [\"GET /repos/{owner}/{repo}/branches\"],\n listBranchesForHeadCommit: [\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head\"\n ],\n listCollaborators: [\"GET /repos/{owner}/{repo}/collaborators\"],\n listCommentsForCommit: [\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/comments\"\n ],\n listCommitCommentsForRepo: [\"GET /repos/{owner}/{repo}/comments\"],\n listCommitStatusesForRef: [\n \"GET /repos/{owner}/{repo}/commits/{ref}/statuses\"\n ],\n listCommits: [\"GET /repos/{owner}/{repo}/commits\"],\n listContributors: [\"GET /repos/{owner}/{repo}/contributors\"],\n listCustomDeploymentRuleIntegrations: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps\"\n ],\n listDeployKeys: [\"GET /repos/{owner}/{repo}/keys\"],\n listDeploymentBranchPolicies: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies\"\n ],\n listDeploymentStatuses: [\n \"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"\n ],\n listDeployments: [\"GET /repos/{owner}/{repo}/deployments\"],\n listForAuthenticatedUser: [\"GET /user/repos\"],\n listForOrg: [\"GET /orgs/{org}/repos\"],\n listForUser: [\"GET /users/{username}/repos\"],\n listForks: [\"GET /repos/{owner}/{repo}/forks\"],\n listInvitations: [\"GET /repos/{owner}/{repo}/invitations\"],\n listInvitationsForAuthenticatedUser: [\"GET /user/repository_invitations\"],\n listLanguages: [\"GET /repos/{owner}/{repo}/languages\"],\n listPagesBuilds: [\"GET /repos/{owner}/{repo}/pages/builds\"],\n listPublic: [\"GET /repositories\"],\n listPullRequestsAssociatedWithCommit: [\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls\"\n ],\n listReleaseAssets: [\n \"GET /repos/{owner}/{repo}/releases/{release_id}/assets\"\n ],\n listReleases: [\"GET /repos/{owner}/{repo}/releases\"],\n listTags: [\"GET /repos/{owner}/{repo}/tags\"],\n listTeams: [\"GET /repos/{owner}/{repo}/teams\"],\n listWebhookDeliveries: [\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries\"\n ],\n listWebhooks: [\"GET /repos/{owner}/{repo}/hooks\"],\n merge: [\"POST /repos/{owner}/{repo}/merges\"],\n mergeUpstream: [\"POST /repos/{owner}/{repo}/merge-upstream\"],\n pingWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/pings\"],\n redeliverWebhookDelivery: [\n \"POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts\"\n ],\n removeAppAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\",\n {},\n { mapToData: \"apps\" }\n ],\n removeCollaborator: [\n \"DELETE /repos/{owner}/{repo}/collaborators/{username}\"\n ],\n removeStatusCheckContexts: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\",\n {},\n { mapToData: \"contexts\" }\n ],\n removeStatusCheckProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"\n ],\n removeTeamAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\",\n {},\n { mapToData: \"teams\" }\n ],\n removeUserAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\",\n {},\n { mapToData: \"users\" }\n ],\n renameBranch: [\"POST /repos/{owner}/{repo}/branches/{branch}/rename\"],\n replaceAllTopics: [\"PUT /repos/{owner}/{repo}/topics\"],\n requestPagesBuild: [\"POST /repos/{owner}/{repo}/pages/builds\"],\n setAdminBranchProtection: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"\n ],\n setAppAccessRestrictions: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\",\n {},\n { mapToData: \"apps\" }\n ],\n setStatusCheckContexts: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\",\n {},\n { mapToData: \"contexts\" }\n ],\n setTeamAccessRestrictions: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\",\n {},\n { mapToData: \"teams\" }\n ],\n setUserAccessRestrictions: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\",\n {},\n { mapToData: \"users\" }\n ],\n testPushWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/tests\"],\n transfer: [\"POST /repos/{owner}/{repo}/transfer\"],\n update: [\"PATCH /repos/{owner}/{repo}\"],\n updateBranchProtection: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection\"\n ],\n updateCommitComment: [\"PATCH /repos/{owner}/{repo}/comments/{comment_id}\"],\n updateDeploymentBranchPolicy: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}\"\n ],\n updateInformationAboutPagesSite: [\"PUT /repos/{owner}/{repo}/pages\"],\n updateInvitation: [\n \"PATCH /repos/{owner}/{repo}/invitations/{invitation_id}\"\n ],\n updateOrgRuleset: [\"PUT /orgs/{org}/rulesets/{ruleset_id}\"],\n updatePullRequestReviewProtection: [\n \"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"\n ],\n updateRelease: [\"PATCH /repos/{owner}/{repo}/releases/{release_id}\"],\n updateReleaseAsset: [\n \"PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}\"\n ],\n updateRepoRuleset: [\"PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}\"],\n updateStatusCheckPotection: [\n \"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\",\n {},\n { renamed: [\"repos\", \"updateStatusCheckProtection\"] }\n ],\n updateStatusCheckProtection: [\n \"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"\n ],\n updateWebhook: [\"PATCH /repos/{owner}/{repo}/hooks/{hook_id}\"],\n updateWebhookConfigForRepo: [\n \"PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config\"\n ],\n uploadReleaseAsset: [\n \"POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}\",\n { baseUrl: \"https://uploads.github.com\" }\n ]\n },\n search: {\n code: [\"GET /search/code\"],\n commits: [\"GET /search/commits\"],\n issuesAndPullRequests: [\"GET /search/issues\"],\n labels: [\"GET /search/labels\"],\n repos: [\"GET /search/repositories\"],\n topics: [\"GET /search/topics\"],\n users: [\"GET /search/users\"]\n },\n secretScanning: {\n createPushProtectionBypass: [\n \"POST /repos/{owner}/{repo}/secret-scanning/push-protection-bypasses\"\n ],\n getAlert: [\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}\"\n ],\n getScanHistory: [\"GET /repos/{owner}/{repo}/secret-scanning/scan-history\"],\n listAlertsForEnterprise: [\n \"GET /enterprises/{enterprise}/secret-scanning/alerts\"\n ],\n listAlertsForOrg: [\"GET /orgs/{org}/secret-scanning/alerts\"],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/secret-scanning/alerts\"],\n listLocationsForAlert: [\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations\"\n ],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}\"\n ]\n },\n securityAdvisories: {\n createFork: [\n \"POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks\"\n ],\n createPrivateVulnerabilityReport: [\n \"POST /repos/{owner}/{repo}/security-advisories/reports\"\n ],\n createRepositoryAdvisory: [\n \"POST /repos/{owner}/{repo}/security-advisories\"\n ],\n createRepositoryAdvisoryCveRequest: [\n \"POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve\"\n ],\n getGlobalAdvisory: [\"GET /advisories/{ghsa_id}\"],\n getRepositoryAdvisory: [\n \"GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}\"\n ],\n listGlobalAdvisories: [\"GET /advisories\"],\n listOrgRepositoryAdvisories: [\"GET /orgs/{org}/security-advisories\"],\n listRepositoryAdvisories: [\"GET /repos/{owner}/{repo}/security-advisories\"],\n updateRepositoryAdvisory: [\n \"PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}\"\n ]\n },\n teams: {\n addOrUpdateMembershipForUserInOrg: [\n \"PUT /orgs/{org}/teams/{team_slug}/memberships/{username}\"\n ],\n addOrUpdateProjectPermissionsInOrg: [\n \"PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}\"\n ],\n addOrUpdateRepoPermissionsInOrg: [\n \"PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"\n ],\n checkPermissionsForProjectInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/projects/{project_id}\"\n ],\n checkPermissionsForRepoInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"\n ],\n create: [\"POST /orgs/{org}/teams\"],\n createDiscussionCommentInOrg: [\n \"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"\n ],\n createDiscussionInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions\"],\n deleteDiscussionCommentInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"\n ],\n deleteDiscussionInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"\n ],\n deleteInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}\"],\n getByName: [\"GET /orgs/{org}/teams/{team_slug}\"],\n getDiscussionCommentInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"\n ],\n getDiscussionInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"\n ],\n getMembershipForUserInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/memberships/{username}\"\n ],\n list: [\"GET /orgs/{org}/teams\"],\n listChildInOrg: [\"GET /orgs/{org}/teams/{team_slug}/teams\"],\n listDiscussionCommentsInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"\n ],\n listDiscussionsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions\"],\n listForAuthenticatedUser: [\"GET /user/teams\"],\n listMembersInOrg: [\"GET /orgs/{org}/teams/{team_slug}/members\"],\n listPendingInvitationsInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/invitations\"\n ],\n listProjectsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/projects\"],\n listReposInOrg: [\"GET /orgs/{org}/teams/{team_slug}/repos\"],\n removeMembershipForUserInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}\"\n ],\n removeProjectInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}\"\n ],\n removeRepoInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"\n ],\n updateDiscussionCommentInOrg: [\n \"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"\n ],\n updateDiscussionInOrg: [\n \"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"\n ],\n updateInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}\"]\n },\n users: {\n addEmailForAuthenticated: [\n \"POST /user/emails\",\n {},\n { renamed: [\"users\", \"addEmailForAuthenticatedUser\"] }\n ],\n addEmailForAuthenticatedUser: [\"POST /user/emails\"],\n addSocialAccountForAuthenticatedUser: [\"POST /user/social_accounts\"],\n block: [\"PUT /user/blocks/{username}\"],\n checkBlocked: [\"GET /user/blocks/{username}\"],\n checkFollowingForUser: [\"GET /users/{username}/following/{target_user}\"],\n checkPersonIsFollowedByAuthenticated: [\"GET /user/following/{username}\"],\n createGpgKeyForAuthenticated: [\n \"POST /user/gpg_keys\",\n {},\n { renamed: [\"users\", \"createGpgKeyForAuthenticatedUser\"] }\n ],\n createGpgKeyForAuthenticatedUser: [\"POST /user/gpg_keys\"],\n createPublicSshKeyForAuthenticated: [\n \"POST /user/keys\",\n {},\n { renamed: [\"users\", \"createPublicSshKeyForAuthenticatedUser\"] }\n ],\n createPublicSshKeyForAuthenticatedUser: [\"POST /user/keys\"],\n createSshSigningKeyForAuthenticatedUser: [\"POST /user/ssh_signing_keys\"],\n deleteEmailForAuthenticated: [\n \"DELETE /user/emails\",\n {},\n { renamed: [\"users\", \"deleteEmailForAuthenticatedUser\"] }\n ],\n deleteEmailForAuthenticatedUser: [\"DELETE /user/emails\"],\n deleteGpgKeyForAuthenticated: [\n \"DELETE /user/gpg_keys/{gpg_key_id}\",\n {},\n { renamed: [\"users\", \"deleteGpgKeyForAuthenticatedUser\"] }\n ],\n deleteGpgKeyForAuthenticatedUser: [\"DELETE /user/gpg_keys/{gpg_key_id}\"],\n deletePublicSshKeyForAuthenticated: [\n \"DELETE /user/keys/{key_id}\",\n {},\n { renamed: [\"users\", \"deletePublicSshKeyForAuthenticatedUser\"] }\n ],\n deletePublicSshKeyForAuthenticatedUser: [\"DELETE /user/keys/{key_id}\"],\n deleteSocialAccountForAuthenticatedUser: [\"DELETE /user/social_accounts\"],\n deleteSshSigningKeyForAuthenticatedUser: [\n \"DELETE /user/ssh_signing_keys/{ssh_signing_key_id}\"\n ],\n follow: [\"PUT /user/following/{username}\"],\n getAuthenticated: [\"GET /user\"],\n getById: [\"GET /user/{account_id}\"],\n getByUsername: [\"GET /users/{username}\"],\n getContextForUser: [\"GET /users/{username}/hovercard\"],\n getGpgKeyForAuthenticated: [\n \"GET /user/gpg_keys/{gpg_key_id}\",\n {},\n { renamed: [\"users\", \"getGpgKeyForAuthenticatedUser\"] }\n ],\n getGpgKeyForAuthenticatedUser: [\"GET /user/gpg_keys/{gpg_key_id}\"],\n getPublicSshKeyForAuthenticated: [\n \"GET /user/keys/{key_id}\",\n {},\n { renamed: [\"users\", \"getPublicSshKeyForAuthenticatedUser\"] }\n ],\n getPublicSshKeyForAuthenticatedUser: [\"GET /user/keys/{key_id}\"],\n getSshSigningKeyForAuthenticatedUser: [\n \"GET /user/ssh_signing_keys/{ssh_signing_key_id}\"\n ],\n list: [\"GET /users\"],\n listAttestations: [\"GET /users/{username}/attestations/{subject_digest}\"],\n listBlockedByAuthenticated: [\n \"GET /user/blocks\",\n {},\n { renamed: [\"users\", \"listBlockedByAuthenticatedUser\"] }\n ],\n listBlockedByAuthenticatedUser: [\"GET /user/blocks\"],\n listEmailsForAuthenticated: [\n \"GET /user/emails\",\n {},\n { renamed: [\"users\", \"listEmailsForAuthenticatedUser\"] }\n ],\n listEmailsForAuthenticatedUser: [\"GET /user/emails\"],\n listFollowedByAuthenticated: [\n \"GET /user/following\",\n {},\n { renamed: [\"users\", \"listFollowedByAuthenticatedUser\"] }\n ],\n listFollowedByAuthenticatedUser: [\"GET /user/following\"],\n listFollowersForAuthenticatedUser: [\"GET /user/followers\"],\n listFollowersForUser: [\"GET /users/{username}/followers\"],\n listFollowingForUser: [\"GET /users/{username}/following\"],\n listGpgKeysForAuthenticated: [\n \"GET /user/gpg_keys\",\n {},\n { renamed: [\"users\", \"listGpgKeysForAuthenticatedUser\"] }\n ],\n listGpgKeysForAuthenticatedUser: [\"GET /user/gpg_keys\"],\n listGpgKeysForUser: [\"GET /users/{username}/gpg_keys\"],\n listPublicEmailsForAuthenticated: [\n \"GET /user/public_emails\",\n {},\n { renamed: [\"users\", \"listPublicEmailsForAuthenticatedUser\"] }\n ],\n listPublicEmailsForAuthenticatedUser: [\"GET /user/public_emails\"],\n listPublicKeysForUser: [\"GET /users/{username}/keys\"],\n listPublicSshKeysForAuthenticated: [\n \"GET /user/keys\",\n {},\n { renamed: [\"users\", \"listPublicSshKeysForAuthenticatedUser\"] }\n ],\n listPublicSshKeysForAuthenticatedUser: [\"GET /user/keys\"],\n listSocialAccountsForAuthenticatedUser: [\"GET /user/social_accounts\"],\n listSocialAccountsForUser: [\"GET /users/{username}/social_accounts\"],\n listSshSigningKeysForAuthenticatedUser: [\"GET /user/ssh_signing_keys\"],\n listSshSigningKeysForUser: [\"GET /users/{username}/ssh_signing_keys\"],\n setPrimaryEmailVisibilityForAuthenticated: [\n \"PATCH /user/email/visibility\",\n {},\n { renamed: [\"users\", \"setPrimaryEmailVisibilityForAuthenticatedUser\"] }\n ],\n setPrimaryEmailVisibilityForAuthenticatedUser: [\n \"PATCH /user/email/visibility\"\n ],\n unblock: [\"DELETE /user/blocks/{username}\"],\n unfollow: [\"DELETE /user/following/{username}\"],\n updateAuthenticated: [\"PATCH /user\"]\n }\n};\nvar endpoints_default = Endpoints;\nexport {\n endpoints_default as default\n};\n//# sourceMappingURL=endpoints.js.map\n","import { VERSION } from \"./version.js\";\nimport { endpointsToMethods } from \"./endpoints-to-methods.js\";\nfunction restEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit);\n return {\n rest: api\n };\n}\nrestEndpointMethods.VERSION = VERSION;\nfunction legacyRestEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit);\n return {\n ...api,\n rest: api\n };\n}\nlegacyRestEndpointMethods.VERSION = VERSION;\nexport {\n legacyRestEndpointMethods,\n restEndpointMethods\n};\n//# sourceMappingURL=index.js.map\n","const VERSION = \"13.3.1\";\nexport {\n VERSION\n};\n//# sourceMappingURL=version.js.map\n","const VERSION = \"21.1.1\";\nexport {\n VERSION\n};\n","import { Octokit as Core } from \"@octokit/core\";\nimport { requestLog } from \"@octokit/plugin-request-log\";\nimport {\n paginateRest\n} from \"@octokit/plugin-paginate-rest\";\nimport { legacyRestEndpointMethods } from \"@octokit/plugin-rest-endpoint-methods\";\nimport { VERSION } from \"./version.js\";\nconst Octokit = Core.plugin(requestLog, legacyRestEndpointMethods, paginateRest).defaults(\n {\n userAgent: `octokit-rest.js/${VERSION}`\n }\n);\nexport {\n Octokit\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(670);\n"],"names":["createScanner","text","ignoreTrivia","len","length","pos","value","tokenOffset","token","lineNumber","lineStartOffset","tokenLineStartOffset","prevTokenLineStartOffset","scanError","scanHexDigits","count","exact","digits","ch","charCodeAt","scanNext","code","isWhiteSpace","String","fromCharCode","isLineBreak","result","start","substring","ch3","scanString","safeLength","commentClosed","isDigit","end","scanNumber","isUnknownContentCharacter","setPosition","newPosition","getPosition","scan","getToken","getTokenValue","getTokenOffset","getTokenLength","getTokenStartLine","getTokenStartCharacter","getTokenError","CharacterCodes","ParseOptions","format","documentText","range","options","initialIndentLevel","formatText","formatTextStart","rangeStart","rangeEnd","offset","isEOL","endOffset","content","i","nChars","tabSize","charAt","Math","floor","computeIndentLevel","eol","getEOL","indentValue","numberLineBreaks","indentLevel","insertSpaces","repeat","scanner","hasError","newLinesAndIndent","keepLines","editOperations","addEdit","startOffset","push","firstToken","firstTokenStart","firstTokenEnd","secondToken","replaceContent","needsLineBreak","insertFinalNewline","s","indexOf","parseTree","errors","DEFAULT","currentParent","type","children","parent","undefined","ensurePropertyComplete","onValue","valueNode","visit","onObjectBegin","onObjectProperty","name","onObjectEnd","onArrayBegin","onArrayEnd","onLiteralValue","getNodeType","onSeparator","sep","colonOffset","onError","error","findNodeAtLocation","root","path","node","segment","Array","isArray","found","propertyNode","index","visitor","_scanner","_jsonPath","toNoArgVisit","visitFunction","toNoArgVisitWithPath","slice","toOneArgVisit","arg","toOneArgVisitWithPath","onComment","disallowComments","allowTrailingComma","handleError","skipUntilAfter","skipUntil","parseString","isValue","allowEmptyContent","parseValue","isFirstElement","needsComma","pop","parseArray","parseObject","tokenValue","Number","isNaN","parseLiteral","withFormatting","edit","formattingOptions","newText","applyEdit","begin","edits","min","max","ScanError","SyntaxKind","position","segments","earlyReturnException","Object","previousNode","previousNodeInst","isAtPropertyKey","setPreviousNode","last","e","matches","pattern","k","currentProperty","previousParents","object","array","findNodeAtOffset","includeRightBound","contains","item","getNodePath","key","getNodeValue","map","obj","create","prop","replaceCh","kind","parts","replace","join","ParseErrorCode","printParseErrorCode","modify","originalPath","lastSegment","existing","Error","propertyIndex","removeBegin","removeEnd","previous","JSON","stringify","newProperty","getInsertionIndex","p","insertIndex","removalIndex","toRemove","isArrayInsertion","toModify","applyEdits","sortedEdits","sort","a","b","diff","lastModifiedOffset","assertPath","TypeError","normalizeStringPosix","allowAboveRoot","res","lastSegmentLength","lastSlash","dots","lastSlashIndex","lastIndexOf","posix","resolve","cwd","resolvedPath","resolvedAbsolute","arguments","process","normalize","isAbsolute","trailingSeparator","joined","relative","from","to","fromStart","fromEnd","fromLen","toStart","toLen","lastCommonSep","fromCode","out","_makeLong","dirname","hasRoot","matchedSlash","basename","ext","extIdx","firstNonSlashEnd","extname","startDot","startPart","preDotState","pathObject","dir","base","_format","parse","ret","delimiter","win32","module","exports","agent","context","subscriptions","vscode","languages","registerCompletionItemProvider","language","provideCompletionItems","document","SettingsDocument","_token","location","getLocation","getText","offsetAt","getReplaceRange","extensionsContent","provideInstalledExtensionProposals","recommendations","registerVariableCompletions","paths","Map","keys","isValidLocation","match","some","bind","isCompletingInsidePropertyStringValue","replacing","getWordRangeAtPosition","Range","inserting","with","data","commands","executeCommand","isCancellationRequested","CompletionList","completion","CompletionItem","CompletionItemKind","Constant","detail","documentation","description","items","registerContextKeyCompletions","fileName","endsWith","values","includes","isLocationInsideTopLevelProperty","isEqual","label","l10n","t","param","variable","insertText","SnippetString","appendPlaceholder","appendText","nodeStart","positionAt","nodeEnd","isBeforeOrEqual","isAfterOrEqual","registerDocumentSymbolProvider","provideDocumentSymbols","lastProperty","depthInObjects","property","_offset","_length","SymbolInformation","SymbolKind","async","additionalText","includeBuiltinExtensions","knownExtensionProposals","extensions","all","filter","id","startsWith","Value","filterText","example","window","registerProfileContentHandler","getOctokit","this","_octokit","authentication","getSession","createIfNone","accessToken","Octokit","request","userAgent","auth","saveProfile","octokit","gists","public","files","html_url","link","Uri","getPublicOctokit","_public_octokit","readProfile","gist_id","gist","get","OVERRIDE_IDENTIFIER_REGEX","constructor","provideWindowTitleCompletionItems","provideFilesAssociationsCompletionItems","provideExcludeCompletionItems","provideLanguageCompletionItems","provideEditorLabelCompletionItems","ignoredExtensions","alreadyConfigured","providePortsAttributesCompletionItem","provideLanguageOverridesCompletionItems","isCompletingPropertyValue","completions","newSimpleCompletionItem","newSnippetCompletionItem","snippet","provideLanguageCompletionItemsForLanguageOverrides","getLanguages","l","completionItems","Property","startPosition","endPosition","translate","donotSuggestLanguages","languageOverridesRanges","lastLanguageOverrideRange","exec","trim","lastLanguageOverrideEndPosition","isBefore","languageOverrideRange","find","o","require","NullObject","prototype","paramRE","quotedPairRE","mediaTypeRE","defaultContentType","parameters","freeze","header","test","toLowerCase","lastIndex","getUserAgent","navigator","version","substr","arch","register","state","method","reverse","reduce","callback","Promise","then","registry","registered","hook","addHook","orig","result_","catch","removeHook","splice","Function","bindable","bindApi","removeHookRef","apply","api","remove","forEach","args","mergeDeep","defaults","assign","toString","call","proto","getPrototypeOf","Ctor","hasOwnProperty","isPlainObject","removeUndefinedProperties","merge","route","url","split","headers","newObj","mergedOptions","mediaType","previews","preview","concat","urlVariableRegex","removeNonChars","variableName","omit","keysToOmit","__proto__","encodeReserved","str","part","encodeURI","encodeUnreserved","encodeURIComponent","c","toUpperCase","encodeValue","operator","isDefined","isKeyOperator","expand","template","operators","_","expression","literal","tmp","modifier","parseInt","value2","getValues","separator","body","urlVariableNames","extractUrlVariableNames","baseUrl","remainingParameters","option","accept","previewsFromAcceptHeader","names","q","addQueryParameters","endpointWithDefaults","endpoint","withDefaults","oldDefaults","newDefaults","DEFAULTS2","endpoint2","DEFAULTS","RequestError","status","response","message","statusCode","super","requestCopy","authorization","fetchWrapper","requestOptions","fetch","globalThis","log","console","parseSuccessResponseBody","requestHeaders","fromEntries","entries","fetchResponse","redirect","signal","duplex","cause","requestError","responseHeaders","octokitResponse","deprecationLink","warn","sunset","statusText","getResponseData","ArrayBuffer","suffix","documentation_url","v","toErrorMessage","contentType","mimetype","isJSONResponse","charset","arrayBuffer","err","oldEndpoint","endpointOptions","request2","route2","parameters2","GraphqlResponseError","captureStackTrace","NON_VARIABLE_OPTIONS","FORBIDDEN_VARIABLE_OPTIONS","GHES_V3_SUFFIX_REGEX","newRequest","query","reject","parsedOptions","variables","graphql","b64url","jwtRE","RegExp","isJWT","isApp","isInstallation","isUserToServer","tokenType","withAuthorizationPrefix","createTokenAuth","noop","consoleWarn","consoleError","userAgentTrail","requestLog","wrap","debug","Date","now","requestId","info","iterator","requestMethod","Symbol","asyncIterator","next","done","normalizedResponse","incompleteResults","incomplete_results","repositorySelection","repository_selection","totalCount","total_count","namespaceKey","normalizePaginatedListResponse","paginate","mapFn","gather","results","iterator2","earlyExit","paginateRest","VERSION","endpointMethodsMap","scope","endpoints","actions","addCustomLabelsToSelfHostedRunnerForOrg","addCustomLabelsToSelfHostedRunnerForRepo","addRepoAccessToSelfHostedRunnerGroupInOrg","addSelectedRepoToOrgSecret","addSelectedRepoToOrgVariable","approveWorkflowRun","cancelWorkflowRun","createEnvironmentVariable","createOrUpdateEnvironmentSecret","createOrUpdateOrgSecret","createOrUpdateRepoSecret","createOrgVariable","createRegistrationTokenForOrg","createRegistrationTokenForRepo","createRemoveTokenForOrg","createRemoveTokenForRepo","createRepoVariable","createWorkflowDispatch","deleteActionsCacheById","deleteActionsCacheByKey","deleteArtifact","deleteEnvironmentSecret","deleteEnvironmentVariable","deleteOrgSecret","deleteOrgVariable","deleteRepoSecret","deleteRepoVariable","deleteSelfHostedRunnerFromOrg","deleteSelfHostedRunnerFromRepo","deleteWorkflowRun","deleteWorkflowRunLogs","disableSelectedRepositoryGithubActionsOrganization","disableWorkflow","downloadArtifact","downloadJobLogsForWorkflowRun","downloadWorkflowRunAttemptLogs","downloadWorkflowRunLogs","enableSelectedRepositoryGithubActionsOrganization","enableWorkflow","forceCancelWorkflowRun","generateRunnerJitconfigForOrg","generateRunnerJitconfigForRepo","getActionsCacheList","getActionsCacheUsage","getActionsCacheUsageByRepoForOrg","getActionsCacheUsageForOrg","getAllowedActionsOrganization","getAllowedActionsRepository","getArtifact","getCustomOidcSubClaimForRepo","getEnvironmentPublicKey","getEnvironmentSecret","getEnvironmentVariable","getGithubActionsDefaultWorkflowPermissionsOrganization","getGithubActionsDefaultWorkflowPermissionsRepository","getGithubActionsPermissionsOrganization","getGithubActionsPermissionsRepository","getJobForWorkflowRun","getOrgPublicKey","getOrgSecret","getOrgVariable","getPendingDeploymentsForRun","getRepoPermissions","renamed","getRepoPublicKey","getRepoSecret","getRepoVariable","getReviewsForRun","getSelfHostedRunnerForOrg","getSelfHostedRunnerForRepo","getWorkflow","getWorkflowAccessToRepository","getWorkflowRun","getWorkflowRunAttempt","getWorkflowRunUsage","getWorkflowUsage","listArtifactsForRepo","listEnvironmentSecrets","listEnvironmentVariables","listJobsForWorkflowRun","listJobsForWorkflowRunAttempt","listLabelsForSelfHostedRunnerForOrg","listLabelsForSelfHostedRunnerForRepo","listOrgSecrets","listOrgVariables","listRepoOrganizationSecrets","listRepoOrganizationVariables","listRepoSecrets","listRepoVariables","listRepoWorkflows","listRunnerApplicationsForOrg","listRunnerApplicationsForRepo","listSelectedReposForOrgSecret","listSelectedReposForOrgVariable","listSelectedRepositoriesEnabledGithubActionsOrganization","listSelfHostedRunnersForOrg","listSelfHostedRunnersForRepo","listWorkflowRunArtifacts","listWorkflowRuns","listWorkflowRunsForRepo","reRunJobForWorkflowRun","reRunWorkflow","reRunWorkflowFailedJobs","removeAllCustomLabelsFromSelfHostedRunnerForOrg","removeAllCustomLabelsFromSelfHostedRunnerForRepo","removeCustomLabelFromSelfHostedRunnerForOrg","removeCustomLabelFromSelfHostedRunnerForRepo","removeSelectedRepoFromOrgSecret","removeSelectedRepoFromOrgVariable","reviewCustomGatesForRun","reviewPendingDeploymentsForRun","setAllowedActionsOrganization","setAllowedActionsRepository","setCustomLabelsForSelfHostedRunnerForOrg","setCustomLabelsForSelfHostedRunnerForRepo","setCustomOidcSubClaimForRepo","setGithubActionsDefaultWorkflowPermissionsOrganization","setGithubActionsDefaultWorkflowPermissionsRepository","setGithubActionsPermissionsOrganization","setGithubActionsPermissionsRepository","setSelectedReposForOrgSecret","setSelectedReposForOrgVariable","setSelectedRepositoriesEnabledGithubActionsOrganization","setWorkflowAccessToRepository","updateEnvironmentVariable","updateOrgVariable","updateRepoVariable","activity","checkRepoIsStarredByAuthenticatedUser","deleteRepoSubscription","deleteThreadSubscription","getFeeds","getRepoSubscription","getThread","getThreadSubscriptionForAuthenticatedUser","listEventsForAuthenticatedUser","listNotificationsForAuthenticatedUser","listOrgEventsForAuthenticatedUser","listPublicEvents","listPublicEventsForRepoNetwork","listPublicEventsForUser","listPublicOrgEvents","listReceivedEventsForUser","listReceivedPublicEventsForUser","listRepoEvents","listRepoNotificationsForAuthenticatedUser","listReposStarredByAuthenticatedUser","listReposStarredByUser","listReposWatchedByUser","listStargazersForRepo","listWatchedReposForAuthenticatedUser","listWatchersForRepo","markNotificationsAsRead","markRepoNotificationsAsRead","markThreadAsDone","markThreadAsRead","setRepoSubscription","setThreadSubscription","starRepoForAuthenticatedUser","unstarRepoForAuthenticatedUser","apps","addRepoToInstallation","addRepoToInstallationForAuthenticatedUser","checkToken","createFromManifest","createInstallationAccessToken","deleteAuthorization","deleteInstallation","deleteToken","getAuthenticated","getBySlug","getInstallation","getOrgInstallation","getRepoInstallation","getSubscriptionPlanForAccount","getSubscriptionPlanForAccountStubbed","getUserInstallation","getWebhookConfigForApp","getWebhookDelivery","listAccountsForPlan","listAccountsForPlanStubbed","listInstallationReposForAuthenticatedUser","listInstallationRequestsForAuthenticatedApp","listInstallations","listInstallationsForAuthenticatedUser","listPlans","listPlansStubbed","listReposAccessibleToInstallation","listSubscriptionsForAuthenticatedUser","listSubscriptionsForAuthenticatedUserStubbed","listWebhookDeliveries","redeliverWebhookDelivery","removeRepoFromInstallation","removeRepoFromInstallationForAuthenticatedUser","resetToken","revokeInstallationAccessToken","scopeToken","suspendInstallation","unsuspendInstallation","updateWebhookConfigForApp","billing","getGithubActionsBillingOrg","getGithubActionsBillingUser","getGithubBillingUsageReportOrg","getGithubPackagesBillingOrg","getGithubPackagesBillingUser","getSharedStorageBillingOrg","getSharedStorageBillingUser","checks","createSuite","getSuite","listAnnotations","listForRef","listForSuite","listSuitesForRef","rerequestRun","rerequestSuite","setSuitesPreferences","update","codeScanning","commitAutofix","createAutofix","createVariantAnalysis","deleteAnalysis","deleteCodeqlDatabase","getAlert","renamedParameters","alert_id","getAnalysis","getAutofix","getCodeqlDatabase","getDefaultSetup","getSarif","getVariantAnalysis","getVariantAnalysisRepoTask","listAlertInstances","listAlertsForOrg","listAlertsForRepo","listAlertsInstances","listCodeqlDatabases","listRecentAnalyses","updateAlert","updateDefaultSetup","uploadSarif","codeSecurity","attachConfiguration","attachEnterpriseConfiguration","createConfiguration","createConfigurationForEnterprise","deleteConfiguration","deleteConfigurationForEnterprise","detachConfiguration","getConfiguration","getConfigurationForRepository","getConfigurationsForEnterprise","getConfigurationsForOrg","getDefaultConfigurations","getDefaultConfigurationsForEnterprise","getRepositoriesForConfiguration","getRepositoriesForEnterpriseConfiguration","getSingleConfigurationForEnterprise","setConfigurationAsDefault","setConfigurationAsDefaultForEnterprise","updateConfiguration","updateEnterpriseConfiguration","codesOfConduct","getAllCodesOfConduct","getConductCode","codespaces","addRepositoryForSecretForAuthenticatedUser","checkPermissionsForDevcontainer","codespaceMachinesForAuthenticatedUser","createForAuthenticatedUser","createOrUpdateSecretForAuthenticatedUser","createWithPrForAuthenticatedUser","createWithRepoForAuthenticatedUser","deleteForAuthenticatedUser","deleteFromOrganization","deleteSecretForAuthenticatedUser","exportForAuthenticatedUser","getCodespacesForUserInOrg","getExportDetailsForAuthenticatedUser","getForAuthenticatedUser","getPublicKeyForAuthenticatedUser","getSecretForAuthenticatedUser","listDevcontainersInRepositoryForAuthenticatedUser","listForAuthenticatedUser","listInOrganization","org_id","listInRepositoryForAuthenticatedUser","listRepositoriesForSecretForAuthenticatedUser","listSecretsForAuthenticatedUser","preFlightWithRepoForAuthenticatedUser","publishForAuthenticatedUser","removeRepositoryForSecretForAuthenticatedUser","repoMachinesForAuthenticatedUser","setRepositoriesForSecretForAuthenticatedUser","startForAuthenticatedUser","stopForAuthenticatedUser","stopInOrganization","updateForAuthenticatedUser","copilot","addCopilotSeatsForTeams","addCopilotSeatsForUsers","cancelCopilotSeatAssignmentForTeams","cancelCopilotSeatAssignmentForUsers","copilotMetricsForOrganization","copilotMetricsForTeam","getCopilotOrganizationDetails","getCopilotSeatDetailsForUser","listCopilotSeats","usageMetricsForOrg","usageMetricsForTeam","dependabot","listAlertsForEnterprise","dependencyGraph","createRepositorySnapshot","diffRange","exportSbom","emojis","checkIsStarred","createComment","delete","deleteComment","fork","getComment","getRevision","list","listComments","listCommits","listForUser","listForks","listPublic","listStarred","star","unstar","updateComment","git","createBlob","createCommit","createRef","createTag","createTree","deleteRef","getBlob","getCommit","getRef","getTag","getTree","listMatchingRefs","updateRef","gitignore","getAllTemplates","getTemplate","interactions","getRestrictionsForAuthenticatedUser","getRestrictionsForOrg","getRestrictionsForRepo","getRestrictionsForYourPublicRepos","removeRestrictionsForAuthenticatedUser","removeRestrictionsForOrg","removeRestrictionsForRepo","removeRestrictionsForYourPublicRepos","setRestrictionsForAuthenticatedUser","setRestrictionsForOrg","setRestrictionsForRepo","setRestrictionsForYourPublicRepos","issues","addAssignees","addLabels","addSubIssue","checkUserCanBeAssigned","checkUserCanBeAssignedToIssue","createLabel","createMilestone","deleteLabel","deleteMilestone","getEvent","getLabel","getMilestone","listAssignees","listCommentsForRepo","listEvents","listEventsForRepo","listEventsForTimeline","listForOrg","listForRepo","listLabelsForMilestone","listLabelsForRepo","listLabelsOnIssue","listMilestones","listSubIssues","lock","removeAllLabels","removeAssignees","removeLabel","removeSubIssue","reprioritizeSubIssue","setLabels","unlock","updateLabel","updateMilestone","licenses","getAllCommonlyUsed","getForRepo","markdown","render","renderRaw","meta","getAllVersions","getOctocat","getZen","migrations","deleteArchiveForAuthenticatedUser","deleteArchiveForOrg","downloadArchiveForOrg","getArchiveForAuthenticatedUser","getStatusForAuthenticatedUser","getStatusForOrg","listReposForAuthenticatedUser","listReposForOrg","listReposForUser","startForOrg","unlockRepoForAuthenticatedUser","unlockRepoForOrg","oidc","getOidcCustomSubTemplateForOrg","updateOidcCustomSubTemplateForOrg","orgs","addSecurityManagerTeam","deprecated","assignTeamToOrgRole","assignUserToOrgRole","blockUser","cancelInvitation","checkBlockedUser","checkMembershipForUser","checkPublicMembershipForUser","convertMemberToOutsideCollaborator","createInvitation","createOrUpdateCustomProperties","createOrUpdateCustomPropertiesValuesForRepos","createOrUpdateCustomProperty","createWebhook","deleteWebhook","enableOrDisableSecurityProductOnAllOrgRepos","getAllCustomProperties","getCustomProperty","getMembershipForAuthenticatedUser","getMembershipForUser","getOrgRole","getWebhook","getWebhookConfigForOrg","listAppInstallations","listAttestations","listBlockedUsers","listCustomPropertiesValuesForRepos","listFailedInvitations","listInvitationTeams","listMembers","listMembershipsForAuthenticatedUser","listOrgRoleTeams","listOrgRoleUsers","listOrgRoles","listOrganizationFineGrainedPermissions","listOutsideCollaborators","listPatGrantRepositories","listPatGrantRequestRepositories","listPatGrantRequests","listPatGrants","listPendingInvitations","listPublicMembers","listSecurityManagerTeams","listWebhooks","pingWebhook","removeCustomProperty","removeMember","removeMembershipForUser","removeOutsideCollaborator","removePublicMembershipForAuthenticatedUser","removeSecurityManagerTeam","reviewPatGrantRequest","reviewPatGrantRequestsInBulk","revokeAllOrgRolesTeam","revokeAllOrgRolesUser","revokeOrgRoleTeam","revokeOrgRoleUser","setMembershipForUser","setPublicMembershipForAuthenticatedUser","unblockUser","updateMembershipForAuthenticatedUser","updatePatAccess","updatePatAccesses","updateWebhook","updateWebhookConfigForOrg","packages","deletePackageForAuthenticatedUser","deletePackageForOrg","deletePackageForUser","deletePackageVersionForAuthenticatedUser","deletePackageVersionForOrg","deletePackageVersionForUser","getAllPackageVersionsForAPackageOwnedByAnOrg","getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser","getAllPackageVersionsForPackageOwnedByAuthenticatedUser","getAllPackageVersionsForPackageOwnedByOrg","getAllPackageVersionsForPackageOwnedByUser","getPackageForAuthenticatedUser","getPackageForOrganization","getPackageForUser","getPackageVersionForAuthenticatedUser","getPackageVersionForOrganization","getPackageVersionForUser","listDockerMigrationConflictingPackagesForAuthenticatedUser","listDockerMigrationConflictingPackagesForOrganization","listDockerMigrationConflictingPackagesForUser","listPackagesForAuthenticatedUser","listPackagesForOrganization","listPackagesForUser","restorePackageForAuthenticatedUser","restorePackageForOrg","restorePackageForUser","restorePackageVersionForAuthenticatedUser","restorePackageVersionForOrg","restorePackageVersionForUser","privateRegistries","createOrgPrivateRegistry","deleteOrgPrivateRegistry","getOrgPrivateRegistry","listOrgPrivateRegistries","updateOrgPrivateRegistry","projects","addCollaborator","createCard","createColumn","createForOrg","createForRepo","deleteCard","deleteColumn","getCard","getColumn","getPermissionForUser","listCards","listCollaborators","listColumns","moveCard","moveColumn","removeCollaborator","updateCard","updateColumn","pulls","checkIfMerged","createReplyForReviewComment","createReview","createReviewComment","deletePendingReview","deleteReviewComment","dismissReview","getReview","getReviewComment","listCommentsForReview","listFiles","listRequestedReviewers","listReviewComments","listReviewCommentsForRepo","listReviews","removeRequestedReviewers","requestReviewers","submitReview","updateBranch","updateReview","updateReviewComment","rateLimit","reactions","createForCommitComment","createForIssue","createForIssueComment","createForPullRequestReviewComment","createForRelease","createForTeamDiscussionCommentInOrg","createForTeamDiscussionInOrg","deleteForCommitComment","deleteForIssue","deleteForIssueComment","deleteForPullRequestComment","deleteForRelease","deleteForTeamDiscussion","deleteForTeamDiscussionComment","listForCommitComment","listForIssue","listForIssueComment","listForPullRequestReviewComment","listForRelease","listForTeamDiscussionCommentInOrg","listForTeamDiscussionInOrg","repos","acceptInvitation","acceptInvitationForAuthenticatedUser","addAppAccessRestrictions","mapToData","addStatusCheckContexts","addTeamAccessRestrictions","addUserAccessRestrictions","cancelPagesDeployment","checkAutomatedSecurityFixes","checkCollaborator","checkPrivateVulnerabilityReporting","checkVulnerabilityAlerts","codeownersErrors","compareCommits","compareCommitsWithBasehead","createAttestation","createAutolink","createCommitComment","createCommitSignatureProtection","createCommitStatus","createDeployKey","createDeployment","createDeploymentBranchPolicy","createDeploymentProtectionRule","createDeploymentStatus","createDispatchEvent","createFork","createInOrg","createOrUpdateCustomPropertiesValues","createOrUpdateEnvironment","createOrUpdateFileContents","createOrgRuleset","createPagesDeployment","createPagesSite","createRelease","createRepoRuleset","createUsingTemplate","declineInvitation","declineInvitationForAuthenticatedUser","deleteAccessRestrictions","deleteAdminBranchProtection","deleteAnEnvironment","deleteAutolink","deleteBranchProtection","deleteCommitComment","deleteCommitSignatureProtection","deleteDeployKey","deleteDeployment","deleteDeploymentBranchPolicy","deleteFile","deleteInvitation","deleteOrgRuleset","deletePagesSite","deletePullRequestReviewProtection","deleteRelease","deleteReleaseAsset","deleteRepoRuleset","disableAutomatedSecurityFixes","disableDeploymentProtectionRule","disablePrivateVulnerabilityReporting","disableVulnerabilityAlerts","downloadArchive","downloadTarballArchive","downloadZipballArchive","enableAutomatedSecurityFixes","enablePrivateVulnerabilityReporting","enableVulnerabilityAlerts","generateReleaseNotes","getAccessRestrictions","getAdminBranchProtection","getAllDeploymentProtectionRules","getAllEnvironments","getAllStatusCheckContexts","getAllTopics","getAppsWithAccessToProtectedBranch","getAutolink","getBranch","getBranchProtection","getBranchRules","getClones","getCodeFrequencyStats","getCollaboratorPermissionLevel","getCombinedStatusForRef","getCommitActivityStats","getCommitComment","getCommitSignatureProtection","getCommunityProfileMetrics","getContent","getContributorsStats","getCustomDeploymentProtectionRule","getCustomPropertiesValues","getDeployKey","getDeployment","getDeploymentBranchPolicy","getDeploymentStatus","getEnvironment","getLatestPagesBuild","getLatestRelease","getOrgRuleSuite","getOrgRuleSuites","getOrgRuleset","getOrgRulesets","getPages","getPagesBuild","getPagesDeployment","getPagesHealthCheck","getParticipationStats","getPullRequestReviewProtection","getPunchCardStats","getReadme","getReadmeInDirectory","getRelease","getReleaseAsset","getReleaseByTag","getRepoRuleSuite","getRepoRuleSuites","getRepoRuleset","getRepoRulesets","getStatusChecksProtection","getTeamsWithAccessToProtectedBranch","getTopPaths","getTopReferrers","getUsersWithAccessToProtectedBranch","getViews","getWebhookConfigForRepo","listActivities","listAutolinks","listBranches","listBranchesForHeadCommit","listCommentsForCommit","listCommitCommentsForRepo","listCommitStatusesForRef","listContributors","listCustomDeploymentRuleIntegrations","listDeployKeys","listDeploymentBranchPolicies","listDeploymentStatuses","listDeployments","listInvitations","listInvitationsForAuthenticatedUser","listLanguages","listPagesBuilds","listPullRequestsAssociatedWithCommit","listReleaseAssets","listReleases","listTags","listTeams","mergeUpstream","removeAppAccessRestrictions","removeStatusCheckContexts","removeStatusCheckProtection","removeTeamAccessRestrictions","removeUserAccessRestrictions","renameBranch","replaceAllTopics","requestPagesBuild","setAdminBranchProtection","setAppAccessRestrictions","setStatusCheckContexts","setTeamAccessRestrictions","setUserAccessRestrictions","testPushWebhook","transfer","updateBranchProtection","updateCommitComment","updateDeploymentBranchPolicy","updateInformationAboutPagesSite","updateInvitation","updateOrgRuleset","updatePullRequestReviewProtection","updateRelease","updateReleaseAsset","updateRepoRuleset","updateStatusCheckPotection","updateStatusCheckProtection","updateWebhookConfigForRepo","uploadReleaseAsset","search","commits","issuesAndPullRequests","labels","topics","users","secretScanning","createPushProtectionBypass","getScanHistory","listLocationsForAlert","securityAdvisories","createPrivateVulnerabilityReport","createRepositoryAdvisory","createRepositoryAdvisoryCveRequest","getGlobalAdvisory","getRepositoryAdvisory","listGlobalAdvisories","listOrgRepositoryAdvisories","listRepositoryAdvisories","updateRepositoryAdvisory","teams","addOrUpdateMembershipForUserInOrg","addOrUpdateProjectPermissionsInOrg","addOrUpdateRepoPermissionsInOrg","checkPermissionsForProjectInOrg","checkPermissionsForRepoInOrg","createDiscussionCommentInOrg","createDiscussionInOrg","deleteDiscussionCommentInOrg","deleteDiscussionInOrg","deleteInOrg","getByName","getDiscussionCommentInOrg","getDiscussionInOrg","getMembershipForUserInOrg","listChildInOrg","listDiscussionCommentsInOrg","listDiscussionsInOrg","listMembersInOrg","listPendingInvitationsInOrg","listProjectsInOrg","listReposInOrg","removeMembershipForUserInOrg","removeProjectInOrg","removeRepoInOrg","updateDiscussionCommentInOrg","updateDiscussionInOrg","updateInOrg","addEmailForAuthenticated","addEmailForAuthenticatedUser","addSocialAccountForAuthenticatedUser","block","checkBlocked","checkFollowingForUser","checkPersonIsFollowedByAuthenticated","createGpgKeyForAuthenticated","createGpgKeyForAuthenticatedUser","createPublicSshKeyForAuthenticated","createPublicSshKeyForAuthenticatedUser","createSshSigningKeyForAuthenticatedUser","deleteEmailForAuthenticated","deleteEmailForAuthenticatedUser","deleteGpgKeyForAuthenticated","deleteGpgKeyForAuthenticatedUser","deletePublicSshKeyForAuthenticated","deletePublicSshKeyForAuthenticatedUser","deleteSocialAccountForAuthenticatedUser","deleteSshSigningKeyForAuthenticatedUser","follow","getById","getByUsername","getContextForUser","getGpgKeyForAuthenticated","getGpgKeyForAuthenticatedUser","getPublicSshKeyForAuthenticated","getPublicSshKeyForAuthenticatedUser","getSshSigningKeyForAuthenticatedUser","listBlockedByAuthenticated","listBlockedByAuthenticatedUser","listEmailsForAuthenticated","listEmailsForAuthenticatedUser","listFollowedByAuthenticated","listFollowedByAuthenticatedUser","listFollowersForAuthenticatedUser","listFollowersForUser","listFollowingForUser","listGpgKeysForAuthenticated","listGpgKeysForAuthenticatedUser","listGpgKeysForUser","listPublicEmailsForAuthenticated","listPublicEmailsForAuthenticatedUser","listPublicKeysForUser","listPublicSshKeysForAuthenticated","listPublicSshKeysForAuthenticatedUser","listSocialAccountsForAuthenticatedUser","listSocialAccountsForUser","listSshSigningKeysForAuthenticatedUser","listSshSigningKeysForUser","setPrimaryEmailVisibilityForAuthenticated","setPrimaryEmailVisibilityForAuthenticatedUser","unblock","unfollow","updateAuthenticated","methodName","decorations","endpointDefaults","has","set","handler","getOwnPropertyDescriptor","target","configurable","writable","enumerable","defineProperty","descriptor","cache","deleteProperty","ownKeys","requestWithDefaults","newScope","newMethodName","options2","alias","decorate","legacyRestEndpointMethods","newMethods","Proxy","endpointsToMethods","rest","static","plugin","newPlugins","currentPlugins","plugins","requestDefaults","customRequest","timeZone","authStrategy","otherOptions","octokitOptions","classConstructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","r","toStringTag","__webpack_exports__"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"configurationEditingMain.js","mappings":"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","sources":["webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/scanner.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/parser.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/format.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/impl/edit.js","webpack://configuration-editing/./node_modules/jsonc-parser/lib/esm/main.js","webpack://configuration-editing/../../node_modules/path-browserify/index.js","webpack://configuration-editing/./src/browser/net.ts","webpack://configuration-editing/./src/configurationEditingMain.ts","webpack://configuration-editing/./src/extensionsProposals.ts","webpack://configuration-editing/./src/importExportProfiles.ts","webpack://configuration-editing/./src/settingsDocumentHelper.ts","webpack://configuration-editing/external commonjs \"vscode\"","webpack://configuration-editing/./node_modules/fast-content-type-parse/index.js","webpack://configuration-editing/./node_modules/universal-user-agent/index.js","webpack://configuration-editing/./node_modules/before-after-hook/lib/register.js","webpack://configuration-editing/./node_modules/before-after-hook/lib/add.js","webpack://configuration-editing/./node_modules/before-after-hook/lib/remove.js","webpack://configuration-editing/./node_modules/before-after-hook/index.js","webpack://configuration-editing/./node_modules/@octokit/endpoint/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/request-error/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/request/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/graphql/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/auth-token/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/core/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/core/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-request-log/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-paginate-rest/dist-bundle/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-request-log/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/index.js","webpack://configuration-editing/./node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/rest/dist-src/version.js","webpack://configuration-editing/./node_modules/@octokit/rest/dist-src/index.js","webpack://configuration-editing/webpack/bootstrap","webpack://configuration-editing/webpack/runtime/define property getters","webpack://configuration-editing/webpack/runtime/hasOwnProperty shorthand","webpack://configuration-editing/webpack/runtime/make namespace object","webpack://configuration-editing/webpack/startup"],"sourcesContent":["/*---------------------------------------------------------------------------------------------\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\n/**\n * Creates a JSON scanner on the given text.\n * If ignoreTrivia is set, whitespaces or comments are ignored.\n */\nexport function createScanner(text, ignoreTrivia = false) {\n const len = text.length;\n let pos = 0, value = '', tokenOffset = 0, token = 16 /* SyntaxKind.Unknown */, lineNumber = 0, lineStartOffset = 0, tokenLineStartOffset = 0, prevTokenLineStartOffset = 0, scanError = 0 /* ScanError.None */;\n function scanHexDigits(count, exact) {\n let digits = 0;\n let value = 0;\n while (digits < count || !exact) {\n let ch = text.charCodeAt(pos);\n if (ch >= 48 /* CharacterCodes._0 */ && ch <= 57 /* CharacterCodes._9 */) {\n value = value * 16 + ch - 48 /* CharacterCodes._0 */;\n }\n else if (ch >= 65 /* CharacterCodes.A */ && ch <= 70 /* CharacterCodes.F */) {\n value = value * 16 + ch - 65 /* CharacterCodes.A */ + 10;\n }\n else if (ch >= 97 /* CharacterCodes.a */ && ch <= 102 /* CharacterCodes.f */) {\n value = value * 16 + ch - 97 /* CharacterCodes.a */ + 10;\n }\n else {\n break;\n }\n pos++;\n digits++;\n }\n if (digits < count) {\n value = -1;\n }\n return value;\n }\n function setPosition(newPosition) {\n pos = newPosition;\n value = '';\n tokenOffset = 0;\n token = 16 /* SyntaxKind.Unknown */;\n scanError = 0 /* ScanError.None */;\n }\n function scanNumber() {\n let start = pos;\n if (text.charCodeAt(pos) === 48 /* CharacterCodes._0 */) {\n pos++;\n }\n else {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n }\n if (pos < text.length && text.charCodeAt(pos) === 46 /* CharacterCodes.dot */) {\n pos++;\n if (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n }\n else {\n scanError = 3 /* ScanError.UnexpectedEndOfNumber */;\n return text.substring(start, pos);\n }\n }\n let end = pos;\n if (pos < text.length && (text.charCodeAt(pos) === 69 /* CharacterCodes.E */ || text.charCodeAt(pos) === 101 /* CharacterCodes.e */)) {\n pos++;\n if (pos < text.length && text.charCodeAt(pos) === 43 /* CharacterCodes.plus */ || text.charCodeAt(pos) === 45 /* CharacterCodes.minus */) {\n pos++;\n }\n if (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n while (pos < text.length && isDigit(text.charCodeAt(pos))) {\n pos++;\n }\n end = pos;\n }\n else {\n scanError = 3 /* ScanError.UnexpectedEndOfNumber */;\n }\n }\n return text.substring(start, end);\n }\n function scanString() {\n let result = '', start = pos;\n while (true) {\n if (pos >= len) {\n result += text.substring(start, pos);\n scanError = 2 /* ScanError.UnexpectedEndOfString */;\n break;\n }\n const ch = text.charCodeAt(pos);\n if (ch === 34 /* CharacterCodes.doubleQuote */) {\n result += text.substring(start, pos);\n pos++;\n break;\n }\n if (ch === 92 /* CharacterCodes.backslash */) {\n result += text.substring(start, pos);\n pos++;\n if (pos >= len) {\n scanError = 2 /* ScanError.UnexpectedEndOfString */;\n break;\n }\n const ch2 = text.charCodeAt(pos++);\n switch (ch2) {\n case 34 /* CharacterCodes.doubleQuote */:\n result += '\\\"';\n break;\n case 92 /* CharacterCodes.backslash */:\n result += '\\\\';\n break;\n case 47 /* CharacterCodes.slash */:\n result += '/';\n break;\n case 98 /* CharacterCodes.b */:\n result += '\\b';\n break;\n case 102 /* CharacterCodes.f */:\n result += '\\f';\n break;\n case 110 /* CharacterCodes.n */:\n result += '\\n';\n break;\n case 114 /* CharacterCodes.r */:\n result += '\\r';\n break;\n case 116 /* CharacterCodes.t */:\n result += '\\t';\n break;\n case 117 /* CharacterCodes.u */:\n const ch3 = scanHexDigits(4, true);\n if (ch3 >= 0) {\n result += String.fromCharCode(ch3);\n }\n else {\n scanError = 4 /* ScanError.InvalidUnicode */;\n }\n break;\n default:\n scanError = 5 /* ScanError.InvalidEscapeCharacter */;\n }\n start = pos;\n continue;\n }\n if (ch >= 0 && ch <= 0x1f) {\n if (isLineBreak(ch)) {\n result += text.substring(start, pos);\n scanError = 2 /* ScanError.UnexpectedEndOfString */;\n break;\n }\n else {\n scanError = 6 /* ScanError.InvalidCharacter */;\n // mark as error but continue with string\n }\n }\n pos++;\n }\n return result;\n }\n function scanNext() {\n value = '';\n scanError = 0 /* ScanError.None */;\n tokenOffset = pos;\n lineStartOffset = lineNumber;\n prevTokenLineStartOffset = tokenLineStartOffset;\n if (pos >= len) {\n // at the end\n tokenOffset = len;\n return token = 17 /* SyntaxKind.EOF */;\n }\n let code = text.charCodeAt(pos);\n // trivia: whitespace\n if (isWhiteSpace(code)) {\n do {\n pos++;\n value += String.fromCharCode(code);\n code = text.charCodeAt(pos);\n } while (isWhiteSpace(code));\n return token = 15 /* SyntaxKind.Trivia */;\n }\n // trivia: newlines\n if (isLineBreak(code)) {\n pos++;\n value += String.fromCharCode(code);\n if (code === 13 /* CharacterCodes.carriageReturn */ && text.charCodeAt(pos) === 10 /* CharacterCodes.lineFeed */) {\n pos++;\n value += '\\n';\n }\n lineNumber++;\n tokenLineStartOffset = pos;\n return token = 14 /* SyntaxKind.LineBreakTrivia */;\n }\n switch (code) {\n // tokens: []{}:,\n case 123 /* CharacterCodes.openBrace */:\n pos++;\n return token = 1 /* SyntaxKind.OpenBraceToken */;\n case 125 /* CharacterCodes.closeBrace */:\n pos++;\n return token = 2 /* SyntaxKind.CloseBraceToken */;\n case 91 /* CharacterCodes.openBracket */:\n pos++;\n return token = 3 /* SyntaxKind.OpenBracketToken */;\n case 93 /* CharacterCodes.closeBracket */:\n pos++;\n return token = 4 /* SyntaxKind.CloseBracketToken */;\n case 58 /* CharacterCodes.colon */:\n pos++;\n return token = 6 /* SyntaxKind.ColonToken */;\n case 44 /* CharacterCodes.comma */:\n pos++;\n return token = 5 /* SyntaxKind.CommaToken */;\n // strings\n case 34 /* CharacterCodes.doubleQuote */:\n pos++;\n value = scanString();\n return token = 10 /* SyntaxKind.StringLiteral */;\n // comments\n case 47 /* CharacterCodes.slash */:\n const start = pos - 1;\n // Single-line comment\n if (text.charCodeAt(pos + 1) === 47 /* CharacterCodes.slash */) {\n pos += 2;\n while (pos < len) {\n if (isLineBreak(text.charCodeAt(pos))) {\n break;\n }\n pos++;\n }\n value = text.substring(start, pos);\n return token = 12 /* SyntaxKind.LineCommentTrivia */;\n }\n // Multi-line comment\n if (text.charCodeAt(pos + 1) === 42 /* CharacterCodes.asterisk */) {\n pos += 2;\n const safeLength = len - 1; // For lookahead.\n let commentClosed = false;\n while (pos < safeLength) {\n const ch = text.charCodeAt(pos);\n if (ch === 42 /* CharacterCodes.asterisk */ && text.charCodeAt(pos + 1) === 47 /* CharacterCodes.slash */) {\n pos += 2;\n commentClosed = true;\n break;\n }\n pos++;\n if (isLineBreak(ch)) {\n if (ch === 13 /* CharacterCodes.carriageReturn */ && text.charCodeAt(pos) === 10 /* CharacterCodes.lineFeed */) {\n pos++;\n }\n lineNumber++;\n tokenLineStartOffset = pos;\n }\n }\n if (!commentClosed) {\n pos++;\n scanError = 1 /* ScanError.UnexpectedEndOfComment */;\n }\n value = text.substring(start, pos);\n return token = 13 /* SyntaxKind.BlockCommentTrivia */;\n }\n // just a single slash\n value += String.fromCharCode(code);\n pos++;\n return token = 16 /* SyntaxKind.Unknown */;\n // numbers\n case 45 /* CharacterCodes.minus */:\n value += String.fromCharCode(code);\n pos++;\n if (pos === len || !isDigit(text.charCodeAt(pos))) {\n return token = 16 /* SyntaxKind.Unknown */;\n }\n // found a minus, followed by a number so\n // we fall through to proceed with scanning\n // numbers\n case 48 /* CharacterCodes._0 */:\n case 49 /* CharacterCodes._1 */:\n case 50 /* CharacterCodes._2 */:\n case 51 /* CharacterCodes._3 */:\n case 52 /* CharacterCodes._4 */:\n case 53 /* CharacterCodes._5 */:\n case 54 /* CharacterCodes._6 */:\n case 55 /* CharacterCodes._7 */:\n case 56 /* CharacterCodes._8 */:\n case 57 /* CharacterCodes._9 */:\n value += scanNumber();\n return token = 11 /* SyntaxKind.NumericLiteral */;\n // literals and unknown symbols\n default:\n // is a literal? Read the full word.\n while (pos < len && isUnknownContentCharacter(code)) {\n pos++;\n code = text.charCodeAt(pos);\n }\n if (tokenOffset !== pos) {\n value = text.substring(tokenOffset, pos);\n // keywords: true, false, null\n switch (value) {\n case 'true': return token = 8 /* SyntaxKind.TrueKeyword */;\n case 'false': return token = 9 /* SyntaxKind.FalseKeyword */;\n case 'null': return token = 7 /* SyntaxKind.NullKeyword */;\n }\n return token = 16 /* SyntaxKind.Unknown */;\n }\n // some\n value += String.fromCharCode(code);\n pos++;\n return token = 16 /* SyntaxKind.Unknown */;\n }\n }\n function isUnknownContentCharacter(code) {\n if (isWhiteSpace(code) || isLineBreak(code)) {\n return false;\n }\n switch (code) {\n case 125 /* CharacterCodes.closeBrace */:\n case 93 /* CharacterCodes.closeBracket */:\n case 123 /* CharacterCodes.openBrace */:\n case 91 /* CharacterCodes.openBracket */:\n case 34 /* CharacterCodes.doubleQuote */:\n case 58 /* CharacterCodes.colon */:\n case 44 /* CharacterCodes.comma */:\n case 47 /* CharacterCodes.slash */:\n return false;\n }\n return true;\n }\n function scanNextNonTrivia() {\n let result;\n do {\n result = scanNext();\n } while (result >= 12 /* SyntaxKind.LineCommentTrivia */ && result <= 15 /* SyntaxKind.Trivia */);\n return result;\n }\n return {\n setPosition: setPosition,\n getPosition: () => pos,\n scan: ignoreTrivia ? scanNextNonTrivia : scanNext,\n getToken: () => token,\n getTokenValue: () => value,\n getTokenOffset: () => tokenOffset,\n getTokenLength: () => pos - tokenOffset,\n getTokenStartLine: () => lineStartOffset,\n getTokenStartCharacter: () => tokenOffset - prevTokenLineStartOffset,\n getTokenError: () => scanError,\n };\n}\nfunction isWhiteSpace(ch) {\n return ch === 32 /* CharacterCodes.space */ || ch === 9 /* CharacterCodes.tab */;\n}\nfunction isLineBreak(ch) {\n return ch === 10 /* CharacterCodes.lineFeed */ || ch === 13 /* CharacterCodes.carriageReturn */;\n}\nfunction isDigit(ch) {\n return ch >= 48 /* CharacterCodes._0 */ && ch <= 57 /* CharacterCodes._9 */;\n}\nvar CharacterCodes;\n(function (CharacterCodes) {\n CharacterCodes[CharacterCodes[\"lineFeed\"] = 10] = \"lineFeed\";\n CharacterCodes[CharacterCodes[\"carriageReturn\"] = 13] = \"carriageReturn\";\n CharacterCodes[CharacterCodes[\"space\"] = 32] = \"space\";\n CharacterCodes[CharacterCodes[\"_0\"] = 48] = \"_0\";\n CharacterCodes[CharacterCodes[\"_1\"] = 49] = \"_1\";\n CharacterCodes[CharacterCodes[\"_2\"] = 50] = \"_2\";\n CharacterCodes[CharacterCodes[\"_3\"] = 51] = \"_3\";\n CharacterCodes[CharacterCodes[\"_4\"] = 52] = \"_4\";\n CharacterCodes[CharacterCodes[\"_5\"] = 53] = \"_5\";\n CharacterCodes[CharacterCodes[\"_6\"] = 54] = \"_6\";\n CharacterCodes[CharacterCodes[\"_7\"] = 55] = \"_7\";\n CharacterCodes[CharacterCodes[\"_8\"] = 56] = \"_8\";\n CharacterCodes[CharacterCodes[\"_9\"] = 57] = \"_9\";\n CharacterCodes[CharacterCodes[\"a\"] = 97] = \"a\";\n CharacterCodes[CharacterCodes[\"b\"] = 98] = \"b\";\n CharacterCodes[CharacterCodes[\"c\"] = 99] = \"c\";\n CharacterCodes[CharacterCodes[\"d\"] = 100] = \"d\";\n CharacterCodes[CharacterCodes[\"e\"] = 101] = \"e\";\n CharacterCodes[CharacterCodes[\"f\"] = 102] = \"f\";\n CharacterCodes[CharacterCodes[\"g\"] = 103] = \"g\";\n CharacterCodes[CharacterCodes[\"h\"] = 104] = \"h\";\n CharacterCodes[CharacterCodes[\"i\"] = 105] = \"i\";\n CharacterCodes[CharacterCodes[\"j\"] = 106] = \"j\";\n CharacterCodes[CharacterCodes[\"k\"] = 107] = \"k\";\n CharacterCodes[CharacterCodes[\"l\"] = 108] = \"l\";\n CharacterCodes[CharacterCodes[\"m\"] = 109] = \"m\";\n CharacterCodes[CharacterCodes[\"n\"] = 110] = \"n\";\n CharacterCodes[CharacterCodes[\"o\"] = 111] = \"o\";\n CharacterCodes[CharacterCodes[\"p\"] = 112] = \"p\";\n CharacterCodes[CharacterCodes[\"q\"] = 113] = \"q\";\n CharacterCodes[CharacterCodes[\"r\"] = 114] = \"r\";\n CharacterCodes[CharacterCodes[\"s\"] = 115] = \"s\";\n CharacterCodes[CharacterCodes[\"t\"] = 116] = \"t\";\n CharacterCodes[CharacterCodes[\"u\"] = 117] = \"u\";\n CharacterCodes[CharacterCodes[\"v\"] = 118] = \"v\";\n CharacterCodes[CharacterCodes[\"w\"] = 119] = \"w\";\n CharacterCodes[CharacterCodes[\"x\"] = 120] = \"x\";\n CharacterCodes[CharacterCodes[\"y\"] = 121] = \"y\";\n CharacterCodes[CharacterCodes[\"z\"] = 122] = \"z\";\n CharacterCodes[CharacterCodes[\"A\"] = 65] = \"A\";\n CharacterCodes[CharacterCodes[\"B\"] = 66] = \"B\";\n CharacterCodes[CharacterCodes[\"C\"] = 67] = \"C\";\n CharacterCodes[CharacterCodes[\"D\"] = 68] = \"D\";\n CharacterCodes[CharacterCodes[\"E\"] = 69] = \"E\";\n CharacterCodes[CharacterCodes[\"F\"] = 70] = \"F\";\n CharacterCodes[CharacterCodes[\"G\"] = 71] = \"G\";\n CharacterCodes[CharacterCodes[\"H\"] = 72] = \"H\";\n CharacterCodes[CharacterCodes[\"I\"] = 73] = \"I\";\n CharacterCodes[CharacterCodes[\"J\"] = 74] = \"J\";\n CharacterCodes[CharacterCodes[\"K\"] = 75] = \"K\";\n CharacterCodes[CharacterCodes[\"L\"] = 76] = \"L\";\n CharacterCodes[CharacterCodes[\"M\"] = 77] = \"M\";\n CharacterCodes[CharacterCodes[\"N\"] = 78] = \"N\";\n CharacterCodes[CharacterCodes[\"O\"] = 79] = \"O\";\n CharacterCodes[CharacterCodes[\"P\"] = 80] = \"P\";\n CharacterCodes[CharacterCodes[\"Q\"] = 81] = \"Q\";\n CharacterCodes[CharacterCodes[\"R\"] = 82] = \"R\";\n CharacterCodes[CharacterCodes[\"S\"] = 83] = \"S\";\n CharacterCodes[CharacterCodes[\"T\"] = 84] = \"T\";\n CharacterCodes[CharacterCodes[\"U\"] = 85] = \"U\";\n CharacterCodes[CharacterCodes[\"V\"] = 86] = \"V\";\n CharacterCodes[CharacterCodes[\"W\"] = 87] = \"W\";\n CharacterCodes[CharacterCodes[\"X\"] = 88] = \"X\";\n CharacterCodes[CharacterCodes[\"Y\"] = 89] = \"Y\";\n CharacterCodes[CharacterCodes[\"Z\"] = 90] = \"Z\";\n CharacterCodes[CharacterCodes[\"asterisk\"] = 42] = \"asterisk\";\n CharacterCodes[CharacterCodes[\"backslash\"] = 92] = \"backslash\";\n CharacterCodes[CharacterCodes[\"closeBrace\"] = 125] = \"closeBrace\";\n CharacterCodes[CharacterCodes[\"closeBracket\"] = 93] = \"closeBracket\";\n CharacterCodes[CharacterCodes[\"colon\"] = 58] = \"colon\";\n CharacterCodes[CharacterCodes[\"comma\"] = 44] = \"comma\";\n CharacterCodes[CharacterCodes[\"dot\"] = 46] = \"dot\";\n CharacterCodes[CharacterCodes[\"doubleQuote\"] = 34] = \"doubleQuote\";\n CharacterCodes[CharacterCodes[\"minus\"] = 45] = \"minus\";\n CharacterCodes[CharacterCodes[\"openBrace\"] = 123] = \"openBrace\";\n CharacterCodes[CharacterCodes[\"openBracket\"] = 91] = \"openBracket\";\n CharacterCodes[CharacterCodes[\"plus\"] = 43] = \"plus\";\n CharacterCodes[CharacterCodes[\"slash\"] = 47] = \"slash\";\n CharacterCodes[CharacterCodes[\"formFeed\"] = 12] = \"formFeed\";\n CharacterCodes[CharacterCodes[\"tab\"] = 9] = \"tab\";\n})(CharacterCodes || (CharacterCodes = {}));\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport { createScanner } from './scanner';\nvar ParseOptions;\n(function (ParseOptions) {\n ParseOptions.DEFAULT = {\n allowTrailingComma: false\n };\n})(ParseOptions || (ParseOptions = {}));\n/**\n * For a given offset, evaluate the location in the JSON document. Each segment in the location path is either a property name or an array index.\n */\nexport function getLocation(text, position) {\n const segments = []; // strings or numbers\n const earlyReturnException = new Object();\n let previousNode = undefined;\n const previousNodeInst = {\n value: {},\n offset: 0,\n length: 0,\n type: 'object',\n parent: undefined\n };\n let isAtPropertyKey = false;\n function setPreviousNode(value, offset, length, type) {\n previousNodeInst.value = value;\n previousNodeInst.offset = offset;\n previousNodeInst.length = length;\n previousNodeInst.type = type;\n previousNodeInst.colonOffset = undefined;\n previousNode = previousNodeInst;\n }\n try {\n visit(text, {\n onObjectBegin: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n isAtPropertyKey = position > offset;\n segments.push(''); // push a placeholder (will be replaced)\n },\n onObjectProperty: (name, offset, length) => {\n if (position < offset) {\n throw earlyReturnException;\n }\n setPreviousNode(name, offset, length, 'property');\n segments[segments.length - 1] = name;\n if (position <= offset + length) {\n throw earlyReturnException;\n }\n },\n onObjectEnd: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n segments.pop();\n },\n onArrayBegin: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n segments.push(0);\n },\n onArrayEnd: (offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n previousNode = undefined;\n segments.pop();\n },\n onLiteralValue: (value, offset, length) => {\n if (position < offset) {\n throw earlyReturnException;\n }\n setPreviousNode(value, offset, length, getNodeType(value));\n if (position <= offset + length) {\n throw earlyReturnException;\n }\n },\n onSeparator: (sep, offset, length) => {\n if (position <= offset) {\n throw earlyReturnException;\n }\n if (sep === ':' && previousNode && previousNode.type === 'property') {\n previousNode.colonOffset = offset;\n isAtPropertyKey = false;\n previousNode = undefined;\n }\n else if (sep === ',') {\n const last = segments[segments.length - 1];\n if (typeof last === 'number') {\n segments[segments.length - 1] = last + 1;\n }\n else {\n isAtPropertyKey = true;\n segments[segments.length - 1] = '';\n }\n previousNode = undefined;\n }\n }\n });\n }\n catch (e) {\n if (e !== earlyReturnException) {\n throw e;\n }\n }\n return {\n path: segments,\n previousNode,\n isAtPropertyKey,\n matches: (pattern) => {\n let k = 0;\n for (let i = 0; k < pattern.length && i < segments.length; i++) {\n if (pattern[k] === segments[i] || pattern[k] === '*') {\n k++;\n }\n else if (pattern[k] !== '**') {\n return false;\n }\n }\n return k === pattern.length;\n }\n };\n}\n/**\n * Parses the given text and returns the object the JSON content represents. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n * Therefore always check the errors list to find out if the input was valid.\n */\nexport function parse(text, errors = [], options = ParseOptions.DEFAULT) {\n let currentProperty = null;\n let currentParent = [];\n const previousParents = [];\n function onValue(value) {\n if (Array.isArray(currentParent)) {\n currentParent.push(value);\n }\n else if (currentProperty !== null) {\n currentParent[currentProperty] = value;\n }\n }\n const visitor = {\n onObjectBegin: () => {\n const object = {};\n onValue(object);\n previousParents.push(currentParent);\n currentParent = object;\n currentProperty = null;\n },\n onObjectProperty: (name) => {\n currentProperty = name;\n },\n onObjectEnd: () => {\n currentParent = previousParents.pop();\n },\n onArrayBegin: () => {\n const array = [];\n onValue(array);\n previousParents.push(currentParent);\n currentParent = array;\n currentProperty = null;\n },\n onArrayEnd: () => {\n currentParent = previousParents.pop();\n },\n onLiteralValue: onValue,\n onError: (error, offset, length) => {\n errors.push({ error, offset, length });\n }\n };\n visit(text, visitor, options);\n return currentParent[0];\n}\n/**\n * Parses the given text and returns a tree representation the JSON content. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n */\nexport function parseTree(text, errors = [], options = ParseOptions.DEFAULT) {\n let currentParent = { type: 'array', offset: -1, length: -1, children: [], parent: undefined }; // artificial root\n function ensurePropertyComplete(endOffset) {\n if (currentParent.type === 'property') {\n currentParent.length = endOffset - currentParent.offset;\n currentParent = currentParent.parent;\n }\n }\n function onValue(valueNode) {\n currentParent.children.push(valueNode);\n return valueNode;\n }\n const visitor = {\n onObjectBegin: (offset) => {\n currentParent = onValue({ type: 'object', offset, length: -1, parent: currentParent, children: [] });\n },\n onObjectProperty: (name, offset, length) => {\n currentParent = onValue({ type: 'property', offset, length: -1, parent: currentParent, children: [] });\n currentParent.children.push({ type: 'string', value: name, offset, length, parent: currentParent });\n },\n onObjectEnd: (offset, length) => {\n ensurePropertyComplete(offset + length); // in case of a missing value for a property: make sure property is complete\n currentParent.length = offset + length - currentParent.offset;\n currentParent = currentParent.parent;\n ensurePropertyComplete(offset + length);\n },\n onArrayBegin: (offset, length) => {\n currentParent = onValue({ type: 'array', offset, length: -1, parent: currentParent, children: [] });\n },\n onArrayEnd: (offset, length) => {\n currentParent.length = offset + length - currentParent.offset;\n currentParent = currentParent.parent;\n ensurePropertyComplete(offset + length);\n },\n onLiteralValue: (value, offset, length) => {\n onValue({ type: getNodeType(value), offset, length, parent: currentParent, value });\n ensurePropertyComplete(offset + length);\n },\n onSeparator: (sep, offset, length) => {\n if (currentParent.type === 'property') {\n if (sep === ':') {\n currentParent.colonOffset = offset;\n }\n else if (sep === ',') {\n ensurePropertyComplete(offset);\n }\n }\n },\n onError: (error, offset, length) => {\n errors.push({ error, offset, length });\n }\n };\n visit(text, visitor, options);\n const result = currentParent.children[0];\n if (result) {\n delete result.parent;\n }\n return result;\n}\n/**\n * Finds the node at the given path in a JSON DOM.\n */\nexport function findNodeAtLocation(root, path) {\n if (!root) {\n return undefined;\n }\n let node = root;\n for (let segment of path) {\n if (typeof segment === 'string') {\n if (node.type !== 'object' || !Array.isArray(node.children)) {\n return undefined;\n }\n let found = false;\n for (const propertyNode of node.children) {\n if (Array.isArray(propertyNode.children) && propertyNode.children[0].value === segment && propertyNode.children.length === 2) {\n node = propertyNode.children[1];\n found = true;\n break;\n }\n }\n if (!found) {\n return undefined;\n }\n }\n else {\n const index = segment;\n if (node.type !== 'array' || index < 0 || !Array.isArray(node.children) || index >= node.children.length) {\n return undefined;\n }\n node = node.children[index];\n }\n }\n return node;\n}\n/**\n * Gets the JSON path of the given JSON DOM node\n */\nexport function getNodePath(node) {\n if (!node.parent || !node.parent.children) {\n return [];\n }\n const path = getNodePath(node.parent);\n if (node.parent.type === 'property') {\n const key = node.parent.children[0].value;\n path.push(key);\n }\n else if (node.parent.type === 'array') {\n const index = node.parent.children.indexOf(node);\n if (index !== -1) {\n path.push(index);\n }\n }\n return path;\n}\n/**\n * Evaluates the JavaScript object of the given JSON DOM node\n */\nexport function getNodeValue(node) {\n switch (node.type) {\n case 'array':\n return node.children.map(getNodeValue);\n case 'object':\n const obj = Object.create(null);\n for (let prop of node.children) {\n const valueNode = prop.children[1];\n if (valueNode) {\n obj[prop.children[0].value] = getNodeValue(valueNode);\n }\n }\n return obj;\n case 'null':\n case 'string':\n case 'number':\n case 'boolean':\n return node.value;\n default:\n return undefined;\n }\n}\nexport function contains(node, offset, includeRightBound = false) {\n return (offset >= node.offset && offset < (node.offset + node.length)) || includeRightBound && (offset === (node.offset + node.length));\n}\n/**\n * Finds the most inner node at the given offset. If includeRightBound is set, also finds nodes that end at the given offset.\n */\nexport function findNodeAtOffset(node, offset, includeRightBound = false) {\n if (contains(node, offset, includeRightBound)) {\n const children = node.children;\n if (Array.isArray(children)) {\n for (let i = 0; i < children.length && children[i].offset <= offset; i++) {\n const item = findNodeAtOffset(children[i], offset, includeRightBound);\n if (item) {\n return item;\n }\n }\n }\n return node;\n }\n return undefined;\n}\n/**\n * Parses the given text and invokes the visitor functions for each object, array and literal reached.\n */\nexport function visit(text, visitor, options = ParseOptions.DEFAULT) {\n const _scanner = createScanner(text, false);\n // Important: Only pass copies of this to visitor functions to prevent accidental modification, and\n // to not affect visitor functions which stored a reference to a previous JSONPath\n const _jsonPath = [];\n function toNoArgVisit(visitFunction) {\n return visitFunction ? () => visitFunction(_scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter()) : () => true;\n }\n function toNoArgVisitWithPath(visitFunction) {\n return visitFunction ? () => visitFunction(_scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter(), () => _jsonPath.slice()) : () => true;\n }\n function toOneArgVisit(visitFunction) {\n return visitFunction ? (arg) => visitFunction(arg, _scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter()) : () => true;\n }\n function toOneArgVisitWithPath(visitFunction) {\n return visitFunction ? (arg) => visitFunction(arg, _scanner.getTokenOffset(), _scanner.getTokenLength(), _scanner.getTokenStartLine(), _scanner.getTokenStartCharacter(), () => _jsonPath.slice()) : () => true;\n }\n const onObjectBegin = toNoArgVisitWithPath(visitor.onObjectBegin), onObjectProperty = toOneArgVisitWithPath(visitor.onObjectProperty), onObjectEnd = toNoArgVisit(visitor.onObjectEnd), onArrayBegin = toNoArgVisitWithPath(visitor.onArrayBegin), onArrayEnd = toNoArgVisit(visitor.onArrayEnd), onLiteralValue = toOneArgVisitWithPath(visitor.onLiteralValue), onSeparator = toOneArgVisit(visitor.onSeparator), onComment = toNoArgVisit(visitor.onComment), onError = toOneArgVisit(visitor.onError);\n const disallowComments = options && options.disallowComments;\n const allowTrailingComma = options && options.allowTrailingComma;\n function scanNext() {\n while (true) {\n const token = _scanner.scan();\n switch (_scanner.getTokenError()) {\n case 4 /* ScanError.InvalidUnicode */:\n handleError(14 /* ParseErrorCode.InvalidUnicode */);\n break;\n case 5 /* ScanError.InvalidEscapeCharacter */:\n handleError(15 /* ParseErrorCode.InvalidEscapeCharacter */);\n break;\n case 3 /* ScanError.UnexpectedEndOfNumber */:\n handleError(13 /* ParseErrorCode.UnexpectedEndOfNumber */);\n break;\n case 1 /* ScanError.UnexpectedEndOfComment */:\n if (!disallowComments) {\n handleError(11 /* ParseErrorCode.UnexpectedEndOfComment */);\n }\n break;\n case 2 /* ScanError.UnexpectedEndOfString */:\n handleError(12 /* ParseErrorCode.UnexpectedEndOfString */);\n break;\n case 6 /* ScanError.InvalidCharacter */:\n handleError(16 /* ParseErrorCode.InvalidCharacter */);\n break;\n }\n switch (token) {\n case 12 /* SyntaxKind.LineCommentTrivia */:\n case 13 /* SyntaxKind.BlockCommentTrivia */:\n if (disallowComments) {\n handleError(10 /* ParseErrorCode.InvalidCommentToken */);\n }\n else {\n onComment();\n }\n break;\n case 16 /* SyntaxKind.Unknown */:\n handleError(1 /* ParseErrorCode.InvalidSymbol */);\n break;\n case 15 /* SyntaxKind.Trivia */:\n case 14 /* SyntaxKind.LineBreakTrivia */:\n break;\n default:\n return token;\n }\n }\n }\n function handleError(error, skipUntilAfter = [], skipUntil = []) {\n onError(error);\n if (skipUntilAfter.length + skipUntil.length > 0) {\n let token = _scanner.getToken();\n while (token !== 17 /* SyntaxKind.EOF */) {\n if (skipUntilAfter.indexOf(token) !== -1) {\n scanNext();\n break;\n }\n else if (skipUntil.indexOf(token) !== -1) {\n break;\n }\n token = scanNext();\n }\n }\n }\n function parseString(isValue) {\n const value = _scanner.getTokenValue();\n if (isValue) {\n onLiteralValue(value);\n }\n else {\n onObjectProperty(value);\n // add property name afterwards\n _jsonPath.push(value);\n }\n scanNext();\n return true;\n }\n function parseLiteral() {\n switch (_scanner.getToken()) {\n case 11 /* SyntaxKind.NumericLiteral */:\n const tokenValue = _scanner.getTokenValue();\n let value = Number(tokenValue);\n if (isNaN(value)) {\n handleError(2 /* ParseErrorCode.InvalidNumberFormat */);\n value = 0;\n }\n onLiteralValue(value);\n break;\n case 7 /* SyntaxKind.NullKeyword */:\n onLiteralValue(null);\n break;\n case 8 /* SyntaxKind.TrueKeyword */:\n onLiteralValue(true);\n break;\n case 9 /* SyntaxKind.FalseKeyword */:\n onLiteralValue(false);\n break;\n default:\n return false;\n }\n scanNext();\n return true;\n }\n function parseProperty() {\n if (_scanner.getToken() !== 10 /* SyntaxKind.StringLiteral */) {\n handleError(3 /* ParseErrorCode.PropertyNameExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n return false;\n }\n parseString(false);\n if (_scanner.getToken() === 6 /* SyntaxKind.ColonToken */) {\n onSeparator(':');\n scanNext(); // consume colon\n if (!parseValue()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n }\n else {\n handleError(5 /* ParseErrorCode.ColonExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n _jsonPath.pop(); // remove processed property name\n return true;\n }\n function parseObject() {\n onObjectBegin();\n scanNext(); // consume open brace\n let needsComma = false;\n while (_scanner.getToken() !== 2 /* SyntaxKind.CloseBraceToken */ && _scanner.getToken() !== 17 /* SyntaxKind.EOF */) {\n if (_scanner.getToken() === 5 /* SyntaxKind.CommaToken */) {\n if (!needsComma) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n }\n onSeparator(',');\n scanNext(); // consume comma\n if (_scanner.getToken() === 2 /* SyntaxKind.CloseBraceToken */ && allowTrailingComma) {\n break;\n }\n }\n else if (needsComma) {\n handleError(6 /* ParseErrorCode.CommaExpected */, [], []);\n }\n if (!parseProperty()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], [2 /* SyntaxKind.CloseBraceToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n needsComma = true;\n }\n onObjectEnd();\n if (_scanner.getToken() !== 2 /* SyntaxKind.CloseBraceToken */) {\n handleError(7 /* ParseErrorCode.CloseBraceExpected */, [2 /* SyntaxKind.CloseBraceToken */], []);\n }\n else {\n scanNext(); // consume close brace\n }\n return true;\n }\n function parseArray() {\n onArrayBegin();\n scanNext(); // consume open bracket\n let isFirstElement = true;\n let needsComma = false;\n while (_scanner.getToken() !== 4 /* SyntaxKind.CloseBracketToken */ && _scanner.getToken() !== 17 /* SyntaxKind.EOF */) {\n if (_scanner.getToken() === 5 /* SyntaxKind.CommaToken */) {\n if (!needsComma) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n }\n onSeparator(',');\n scanNext(); // consume comma\n if (_scanner.getToken() === 4 /* SyntaxKind.CloseBracketToken */ && allowTrailingComma) {\n break;\n }\n }\n else if (needsComma) {\n handleError(6 /* ParseErrorCode.CommaExpected */, [], []);\n }\n if (isFirstElement) {\n _jsonPath.push(0);\n isFirstElement = false;\n }\n else {\n _jsonPath[_jsonPath.length - 1]++;\n }\n if (!parseValue()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], [4 /* SyntaxKind.CloseBracketToken */, 5 /* SyntaxKind.CommaToken */]);\n }\n needsComma = true;\n }\n onArrayEnd();\n if (!isFirstElement) {\n _jsonPath.pop(); // remove array index\n }\n if (_scanner.getToken() !== 4 /* SyntaxKind.CloseBracketToken */) {\n handleError(8 /* ParseErrorCode.CloseBracketExpected */, [4 /* SyntaxKind.CloseBracketToken */], []);\n }\n else {\n scanNext(); // consume close bracket\n }\n return true;\n }\n function parseValue() {\n switch (_scanner.getToken()) {\n case 3 /* SyntaxKind.OpenBracketToken */:\n return parseArray();\n case 1 /* SyntaxKind.OpenBraceToken */:\n return parseObject();\n case 10 /* SyntaxKind.StringLiteral */:\n return parseString(true);\n default:\n return parseLiteral();\n }\n }\n scanNext();\n if (_scanner.getToken() === 17 /* SyntaxKind.EOF */) {\n if (options.allowEmptyContent) {\n return true;\n }\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n return false;\n }\n if (!parseValue()) {\n handleError(4 /* ParseErrorCode.ValueExpected */, [], []);\n return false;\n }\n if (_scanner.getToken() !== 17 /* SyntaxKind.EOF */) {\n handleError(9 /* ParseErrorCode.EndOfFileExpected */, [], []);\n }\n return true;\n}\n/**\n * Takes JSON with JavaScript-style comments and remove\n * them. Optionally replaces every none-newline character\n * of comments with a replaceCharacter\n */\nexport function stripComments(text, replaceCh) {\n let _scanner = createScanner(text), parts = [], kind, offset = 0, pos;\n do {\n pos = _scanner.getPosition();\n kind = _scanner.scan();\n switch (kind) {\n case 12 /* SyntaxKind.LineCommentTrivia */:\n case 13 /* SyntaxKind.BlockCommentTrivia */:\n case 17 /* SyntaxKind.EOF */:\n if (offset !== pos) {\n parts.push(text.substring(offset, pos));\n }\n if (replaceCh !== undefined) {\n parts.push(_scanner.getTokenValue().replace(/[^\\r\\n]/g, replaceCh));\n }\n offset = _scanner.getPosition();\n break;\n }\n } while (kind !== 17 /* SyntaxKind.EOF */);\n return parts.join('');\n}\nexport function getNodeType(value) {\n switch (typeof value) {\n case 'boolean': return 'boolean';\n case 'number': return 'number';\n case 'string': return 'string';\n case 'object': {\n if (!value) {\n return 'null';\n }\n else if (Array.isArray(value)) {\n return 'array';\n }\n return 'object';\n }\n default: return 'null';\n }\n}\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport { createScanner } from './scanner';\nexport function format(documentText, range, options) {\n let initialIndentLevel;\n let formatText;\n let formatTextStart;\n let rangeStart;\n let rangeEnd;\n if (range) {\n rangeStart = range.offset;\n rangeEnd = rangeStart + range.length;\n formatTextStart = rangeStart;\n while (formatTextStart > 0 && !isEOL(documentText, formatTextStart - 1)) {\n formatTextStart--;\n }\n let endOffset = rangeEnd;\n while (endOffset < documentText.length && !isEOL(documentText, endOffset)) {\n endOffset++;\n }\n formatText = documentText.substring(formatTextStart, endOffset);\n initialIndentLevel = computeIndentLevel(formatText, options);\n }\n else {\n formatText = documentText;\n initialIndentLevel = 0;\n formatTextStart = 0;\n rangeStart = 0;\n rangeEnd = documentText.length;\n }\n const eol = getEOL(options, documentText);\n let numberLineBreaks = 0;\n let indentLevel = 0;\n let indentValue;\n if (options.insertSpaces) {\n indentValue = repeat(' ', options.tabSize || 4);\n }\n else {\n indentValue = '\\t';\n }\n let scanner = createScanner(formatText, false);\n let hasError = false;\n function newLinesAndIndent() {\n if (numberLineBreaks > 1) {\n return repeat(eol, numberLineBreaks) + repeat(indentValue, initialIndentLevel + indentLevel);\n }\n else {\n return eol + repeat(indentValue, initialIndentLevel + indentLevel);\n }\n }\n function scanNext() {\n let token = scanner.scan();\n numberLineBreaks = 0;\n while (token === 15 /* SyntaxKind.Trivia */ || token === 14 /* SyntaxKind.LineBreakTrivia */) {\n if (token === 14 /* SyntaxKind.LineBreakTrivia */ && options.keepLines) {\n numberLineBreaks += 1;\n }\n else if (token === 14 /* SyntaxKind.LineBreakTrivia */) {\n numberLineBreaks = 1;\n }\n token = scanner.scan();\n }\n hasError = token === 16 /* SyntaxKind.Unknown */ || scanner.getTokenError() !== 0 /* ScanError.None */;\n return token;\n }\n const editOperations = [];\n function addEdit(text, startOffset, endOffset) {\n if (!hasError && (!range || (startOffset < rangeEnd && endOffset > rangeStart)) && documentText.substring(startOffset, endOffset) !== text) {\n editOperations.push({ offset: startOffset, length: endOffset - startOffset, content: text });\n }\n }\n let firstToken = scanNext();\n if (options.keepLines && numberLineBreaks > 0) {\n addEdit(repeat(eol, numberLineBreaks), 0, 0);\n }\n if (firstToken !== 17 /* SyntaxKind.EOF */) {\n let firstTokenStart = scanner.getTokenOffset() + formatTextStart;\n let initialIndent = repeat(indentValue, initialIndentLevel);\n addEdit(initialIndent, formatTextStart, firstTokenStart);\n }\n while (firstToken !== 17 /* SyntaxKind.EOF */) {\n let firstTokenEnd = scanner.getTokenOffset() + scanner.getTokenLength() + formatTextStart;\n let secondToken = scanNext();\n let replaceContent = '';\n let needsLineBreak = false;\n while (numberLineBreaks === 0 && (secondToken === 12 /* SyntaxKind.LineCommentTrivia */ || secondToken === 13 /* SyntaxKind.BlockCommentTrivia */)) {\n let commentTokenStart = scanner.getTokenOffset() + formatTextStart;\n addEdit(' ', firstTokenEnd, commentTokenStart);\n firstTokenEnd = scanner.getTokenOffset() + scanner.getTokenLength() + formatTextStart;\n needsLineBreak = secondToken === 12 /* SyntaxKind.LineCommentTrivia */;\n replaceContent = needsLineBreak ? newLinesAndIndent() : '';\n secondToken = scanNext();\n }\n if (secondToken === 2 /* SyntaxKind.CloseBraceToken */) {\n if (firstToken !== 1 /* SyntaxKind.OpenBraceToken */) {\n indentLevel--;\n }\n ;\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines && firstToken !== 1 /* SyntaxKind.OpenBraceToken */) {\n replaceContent = newLinesAndIndent();\n }\n else if (options.keepLines) {\n replaceContent = ' ';\n }\n }\n else if (secondToken === 4 /* SyntaxKind.CloseBracketToken */) {\n if (firstToken !== 3 /* SyntaxKind.OpenBracketToken */) {\n indentLevel--;\n }\n ;\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines && firstToken !== 3 /* SyntaxKind.OpenBracketToken */) {\n replaceContent = newLinesAndIndent();\n }\n else if (options.keepLines) {\n replaceContent = ' ';\n }\n }\n else {\n switch (firstToken) {\n case 3 /* SyntaxKind.OpenBracketToken */:\n case 1 /* SyntaxKind.OpenBraceToken */:\n indentLevel++;\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines) {\n replaceContent = newLinesAndIndent();\n }\n else {\n replaceContent = ' ';\n }\n break;\n case 5 /* SyntaxKind.CommaToken */:\n if (options.keepLines && numberLineBreaks > 0 || !options.keepLines) {\n replaceContent = newLinesAndIndent();\n }\n else {\n replaceContent = ' ';\n }\n break;\n case 12 /* SyntaxKind.LineCommentTrivia */:\n replaceContent = newLinesAndIndent();\n break;\n case 13 /* SyntaxKind.BlockCommentTrivia */:\n if (numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else if (!needsLineBreak) {\n replaceContent = ' ';\n }\n break;\n case 6 /* SyntaxKind.ColonToken */:\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else if (!needsLineBreak) {\n replaceContent = ' ';\n }\n break;\n case 10 /* SyntaxKind.StringLiteral */:\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else if (secondToken === 6 /* SyntaxKind.ColonToken */ && !needsLineBreak) {\n replaceContent = '';\n }\n break;\n case 7 /* SyntaxKind.NullKeyword */:\n case 8 /* SyntaxKind.TrueKeyword */:\n case 9 /* SyntaxKind.FalseKeyword */:\n case 11 /* SyntaxKind.NumericLiteral */:\n case 2 /* SyntaxKind.CloseBraceToken */:\n case 4 /* SyntaxKind.CloseBracketToken */:\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else {\n if ((secondToken === 12 /* SyntaxKind.LineCommentTrivia */ || secondToken === 13 /* SyntaxKind.BlockCommentTrivia */) && !needsLineBreak) {\n replaceContent = ' ';\n }\n else if (secondToken !== 5 /* SyntaxKind.CommaToken */ && secondToken !== 17 /* SyntaxKind.EOF */) {\n hasError = true;\n }\n }\n break;\n case 16 /* SyntaxKind.Unknown */:\n hasError = true;\n break;\n }\n if (numberLineBreaks > 0 && (secondToken === 12 /* SyntaxKind.LineCommentTrivia */ || secondToken === 13 /* SyntaxKind.BlockCommentTrivia */)) {\n replaceContent = newLinesAndIndent();\n }\n }\n if (secondToken === 17 /* SyntaxKind.EOF */) {\n if (options.keepLines && numberLineBreaks > 0) {\n replaceContent = newLinesAndIndent();\n }\n else {\n replaceContent = options.insertFinalNewline ? eol : '';\n }\n }\n const secondTokenStart = scanner.getTokenOffset() + formatTextStart;\n addEdit(replaceContent, firstTokenEnd, secondTokenStart);\n firstToken = secondToken;\n }\n return editOperations;\n}\nfunction repeat(s, count) {\n let result = '';\n for (let i = 0; i < count; i++) {\n result += s;\n }\n return result;\n}\nfunction computeIndentLevel(content, options) {\n let i = 0;\n let nChars = 0;\n const tabSize = options.tabSize || 4;\n while (i < content.length) {\n let ch = content.charAt(i);\n if (ch === ' ') {\n nChars++;\n }\n else if (ch === '\\t') {\n nChars += tabSize;\n }\n else {\n break;\n }\n i++;\n }\n return Math.floor(nChars / tabSize);\n}\nfunction getEOL(options, text) {\n for (let i = 0; i < text.length; i++) {\n const ch = text.charAt(i);\n if (ch === '\\r') {\n if (i + 1 < text.length && text.charAt(i + 1) === '\\n') {\n return '\\r\\n';\n }\n return '\\r';\n }\n else if (ch === '\\n') {\n return '\\n';\n }\n }\n return (options && options.eol) || '\\n';\n}\nexport function isEOL(text, offset) {\n return '\\r\\n'.indexOf(text.charAt(offset)) !== -1;\n}\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport { format, isEOL } from './format';\nimport { parseTree, findNodeAtLocation } from './parser';\nexport function removeProperty(text, path, options) {\n return setProperty(text, path, void 0, options);\n}\nexport function setProperty(text, originalPath, value, options) {\n const path = originalPath.slice();\n const errors = [];\n const root = parseTree(text, errors);\n let parent = void 0;\n let lastSegment = void 0;\n while (path.length > 0) {\n lastSegment = path.pop();\n parent = findNodeAtLocation(root, path);\n if (parent === void 0 && value !== void 0) {\n if (typeof lastSegment === 'string') {\n value = { [lastSegment]: value };\n }\n else {\n value = [value];\n }\n }\n else {\n break;\n }\n }\n if (!parent) {\n // empty document\n if (value === void 0) { // delete\n throw new Error('Can not delete in empty document');\n }\n return withFormatting(text, { offset: root ? root.offset : 0, length: root ? root.length : 0, content: JSON.stringify(value) }, options);\n }\n else if (parent.type === 'object' && typeof lastSegment === 'string' && Array.isArray(parent.children)) {\n const existing = findNodeAtLocation(parent, [lastSegment]);\n if (existing !== void 0) {\n if (value === void 0) { // delete\n if (!existing.parent) {\n throw new Error('Malformed AST');\n }\n const propertyIndex = parent.children.indexOf(existing.parent);\n let removeBegin;\n let removeEnd = existing.parent.offset + existing.parent.length;\n if (propertyIndex > 0) {\n // remove the comma of the previous node\n let previous = parent.children[propertyIndex - 1];\n removeBegin = previous.offset + previous.length;\n }\n else {\n removeBegin = parent.offset + 1;\n if (parent.children.length > 1) {\n // remove the comma of the next node\n let next = parent.children[1];\n removeEnd = next.offset;\n }\n }\n return withFormatting(text, { offset: removeBegin, length: removeEnd - removeBegin, content: '' }, options);\n }\n else {\n // set value of existing property\n return withFormatting(text, { offset: existing.offset, length: existing.length, content: JSON.stringify(value) }, options);\n }\n }\n else {\n if (value === void 0) { // delete\n return []; // property does not exist, nothing to do\n }\n const newProperty = `${JSON.stringify(lastSegment)}: ${JSON.stringify(value)}`;\n const index = options.getInsertionIndex ? options.getInsertionIndex(parent.children.map(p => p.children[0].value)) : parent.children.length;\n let edit;\n if (index > 0) {\n let previous = parent.children[index - 1];\n edit = { offset: previous.offset + previous.length, length: 0, content: ',' + newProperty };\n }\n else if (parent.children.length === 0) {\n edit = { offset: parent.offset + 1, length: 0, content: newProperty };\n }\n else {\n edit = { offset: parent.offset + 1, length: 0, content: newProperty + ',' };\n }\n return withFormatting(text, edit, options);\n }\n }\n else if (parent.type === 'array' && typeof lastSegment === 'number' && Array.isArray(parent.children)) {\n const insertIndex = lastSegment;\n if (insertIndex === -1) {\n // Insert\n const newProperty = `${JSON.stringify(value)}`;\n let edit;\n if (parent.children.length === 0) {\n edit = { offset: parent.offset + 1, length: 0, content: newProperty };\n }\n else {\n const previous = parent.children[parent.children.length - 1];\n edit = { offset: previous.offset + previous.length, length: 0, content: ',' + newProperty };\n }\n return withFormatting(text, edit, options);\n }\n else if (value === void 0 && parent.children.length >= 0) {\n // Removal\n const removalIndex = lastSegment;\n const toRemove = parent.children[removalIndex];\n let edit;\n if (parent.children.length === 1) {\n // only item\n edit = { offset: parent.offset + 1, length: parent.length - 2, content: '' };\n }\n else if (parent.children.length - 1 === removalIndex) {\n // last item\n let previous = parent.children[removalIndex - 1];\n let offset = previous.offset + previous.length;\n let parentEndOffset = parent.offset + parent.length;\n edit = { offset, length: parentEndOffset - 2 - offset, content: '' };\n }\n else {\n edit = { offset: toRemove.offset, length: parent.children[removalIndex + 1].offset - toRemove.offset, content: '' };\n }\n return withFormatting(text, edit, options);\n }\n else if (value !== void 0) {\n let edit;\n const newProperty = `${JSON.stringify(value)}`;\n if (!options.isArrayInsertion && parent.children.length > lastSegment) {\n const toModify = parent.children[lastSegment];\n edit = { offset: toModify.offset, length: toModify.length, content: newProperty };\n }\n else if (parent.children.length === 0 || lastSegment === 0) {\n edit = { offset: parent.offset + 1, length: 0, content: parent.children.length === 0 ? newProperty : newProperty + ',' };\n }\n else {\n const index = lastSegment > parent.children.length ? parent.children.length : lastSegment;\n const previous = parent.children[index - 1];\n edit = { offset: previous.offset + previous.length, length: 0, content: ',' + newProperty };\n }\n return withFormatting(text, edit, options);\n }\n else {\n throw new Error(`Can not ${value === void 0 ? 'remove' : (options.isArrayInsertion ? 'insert' : 'modify')} Array index ${insertIndex} as length is not sufficient`);\n }\n }\n else {\n throw new Error(`Can not add ${typeof lastSegment !== 'number' ? 'index' : 'property'} to parent of type ${parent.type}`);\n }\n}\nfunction withFormatting(text, edit, options) {\n if (!options.formattingOptions) {\n return [edit];\n }\n // apply the edit\n let newText = applyEdit(text, edit);\n // format the new text\n let begin = edit.offset;\n let end = edit.offset + edit.content.length;\n if (edit.length === 0 || edit.content.length === 0) { // insert or remove\n while (begin > 0 && !isEOL(newText, begin - 1)) {\n begin--;\n }\n while (end < newText.length && !isEOL(newText, end)) {\n end++;\n }\n }\n const edits = format(newText, { offset: begin, length: end - begin }, { ...options.formattingOptions, keepLines: false });\n // apply the formatting edits and track the begin and end offsets of the changes\n for (let i = edits.length - 1; i >= 0; i--) {\n const edit = edits[i];\n newText = applyEdit(newText, edit);\n begin = Math.min(begin, edit.offset);\n end = Math.max(end, edit.offset + edit.length);\n end += edit.content.length - edit.length;\n }\n // create a single edit with all changes\n const editLength = text.length - (newText.length - end) - begin;\n return [{ offset: begin, length: editLength, content: newText.substring(begin, end) }];\n}\nexport function applyEdit(text, edit) {\n return text.substring(0, edit.offset) + edit.content + text.substring(edit.offset + edit.length);\n}\nexport function isWS(text, offset) {\n return '\\r\\n \\t'.indexOf(text.charAt(offset)) !== -1;\n}\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 *--------------------------------------------------------------------------------------------*/\n'use strict';\nimport * as formatter from './impl/format';\nimport * as edit from './impl/edit';\nimport * as scanner from './impl/scanner';\nimport * as parser from './impl/parser';\n/**\n * Creates a JSON scanner on the given text.\n * If ignoreTrivia is set, whitespaces or comments are ignored.\n */\nexport const createScanner = scanner.createScanner;\nexport var ScanError;\n(function (ScanError) {\n ScanError[ScanError[\"None\"] = 0] = \"None\";\n ScanError[ScanError[\"UnexpectedEndOfComment\"] = 1] = \"UnexpectedEndOfComment\";\n ScanError[ScanError[\"UnexpectedEndOfString\"] = 2] = \"UnexpectedEndOfString\";\n ScanError[ScanError[\"UnexpectedEndOfNumber\"] = 3] = \"UnexpectedEndOfNumber\";\n ScanError[ScanError[\"InvalidUnicode\"] = 4] = \"InvalidUnicode\";\n ScanError[ScanError[\"InvalidEscapeCharacter\"] = 5] = \"InvalidEscapeCharacter\";\n ScanError[ScanError[\"InvalidCharacter\"] = 6] = \"InvalidCharacter\";\n})(ScanError || (ScanError = {}));\nexport var SyntaxKind;\n(function (SyntaxKind) {\n SyntaxKind[SyntaxKind[\"OpenBraceToken\"] = 1] = \"OpenBraceToken\";\n SyntaxKind[SyntaxKind[\"CloseBraceToken\"] = 2] = \"CloseBraceToken\";\n SyntaxKind[SyntaxKind[\"OpenBracketToken\"] = 3] = \"OpenBracketToken\";\n SyntaxKind[SyntaxKind[\"CloseBracketToken\"] = 4] = \"CloseBracketToken\";\n SyntaxKind[SyntaxKind[\"CommaToken\"] = 5] = \"CommaToken\";\n SyntaxKind[SyntaxKind[\"ColonToken\"] = 6] = \"ColonToken\";\n SyntaxKind[SyntaxKind[\"NullKeyword\"] = 7] = \"NullKeyword\";\n SyntaxKind[SyntaxKind[\"TrueKeyword\"] = 8] = \"TrueKeyword\";\n SyntaxKind[SyntaxKind[\"FalseKeyword\"] = 9] = \"FalseKeyword\";\n SyntaxKind[SyntaxKind[\"StringLiteral\"] = 10] = \"StringLiteral\";\n SyntaxKind[SyntaxKind[\"NumericLiteral\"] = 11] = \"NumericLiteral\";\n SyntaxKind[SyntaxKind[\"LineCommentTrivia\"] = 12] = \"LineCommentTrivia\";\n SyntaxKind[SyntaxKind[\"BlockCommentTrivia\"] = 13] = \"BlockCommentTrivia\";\n SyntaxKind[SyntaxKind[\"LineBreakTrivia\"] = 14] = \"LineBreakTrivia\";\n SyntaxKind[SyntaxKind[\"Trivia\"] = 15] = \"Trivia\";\n SyntaxKind[SyntaxKind[\"Unknown\"] = 16] = \"Unknown\";\n SyntaxKind[SyntaxKind[\"EOF\"] = 17] = \"EOF\";\n})(SyntaxKind || (SyntaxKind = {}));\n/**\n * For a given offset, evaluate the location in the JSON document. Each segment in the location path is either a property name or an array index.\n */\nexport const getLocation = parser.getLocation;\n/**\n * Parses the given text and returns the object the JSON content represents. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n * Therefore, always check the errors list to find out if the input was valid.\n */\nexport const parse = parser.parse;\n/**\n * Parses the given text and returns a tree representation the JSON content. On invalid input, the parser tries to be as fault tolerant as possible, but still return a result.\n */\nexport const parseTree = parser.parseTree;\n/**\n * Finds the node at the given path in a JSON DOM.\n */\nexport const findNodeAtLocation = parser.findNodeAtLocation;\n/**\n * Finds the innermost node at the given offset. If includeRightBound is set, also finds nodes that end at the given offset.\n */\nexport const findNodeAtOffset = parser.findNodeAtOffset;\n/**\n * Gets the JSON path of the given JSON DOM node\n */\nexport const getNodePath = parser.getNodePath;\n/**\n * Evaluates the JavaScript object of the given JSON DOM node\n */\nexport const getNodeValue = parser.getNodeValue;\n/**\n * Parses the given text and invokes the visitor functions for each object, array and literal reached.\n */\nexport const visit = parser.visit;\n/**\n * Takes JSON with JavaScript-style comments and remove\n * them. Optionally replaces every none-newline character\n * of comments with a replaceCharacter\n */\nexport const stripComments = parser.stripComments;\nexport var ParseErrorCode;\n(function (ParseErrorCode) {\n ParseErrorCode[ParseErrorCode[\"InvalidSymbol\"] = 1] = \"InvalidSymbol\";\n ParseErrorCode[ParseErrorCode[\"InvalidNumberFormat\"] = 2] = \"InvalidNumberFormat\";\n ParseErrorCode[ParseErrorCode[\"PropertyNameExpected\"] = 3] = \"PropertyNameExpected\";\n ParseErrorCode[ParseErrorCode[\"ValueExpected\"] = 4] = \"ValueExpected\";\n ParseErrorCode[ParseErrorCode[\"ColonExpected\"] = 5] = \"ColonExpected\";\n ParseErrorCode[ParseErrorCode[\"CommaExpected\"] = 6] = \"CommaExpected\";\n ParseErrorCode[ParseErrorCode[\"CloseBraceExpected\"] = 7] = \"CloseBraceExpected\";\n ParseErrorCode[ParseErrorCode[\"CloseBracketExpected\"] = 8] = \"CloseBracketExpected\";\n ParseErrorCode[ParseErrorCode[\"EndOfFileExpected\"] = 9] = \"EndOfFileExpected\";\n ParseErrorCode[ParseErrorCode[\"InvalidCommentToken\"] = 10] = \"InvalidCommentToken\";\n ParseErrorCode[ParseErrorCode[\"UnexpectedEndOfComment\"] = 11] = \"UnexpectedEndOfComment\";\n ParseErrorCode[ParseErrorCode[\"UnexpectedEndOfString\"] = 12] = \"UnexpectedEndOfString\";\n ParseErrorCode[ParseErrorCode[\"UnexpectedEndOfNumber\"] = 13] = \"UnexpectedEndOfNumber\";\n ParseErrorCode[ParseErrorCode[\"InvalidUnicode\"] = 14] = \"InvalidUnicode\";\n ParseErrorCode[ParseErrorCode[\"InvalidEscapeCharacter\"] = 15] = \"InvalidEscapeCharacter\";\n ParseErrorCode[ParseErrorCode[\"InvalidCharacter\"] = 16] = \"InvalidCharacter\";\n})(ParseErrorCode || (ParseErrorCode = {}));\nexport function printParseErrorCode(code) {\n switch (code) {\n case 1 /* ParseErrorCode.InvalidSymbol */: return 'InvalidSymbol';\n case 2 /* ParseErrorCode.InvalidNumberFormat */: return 'InvalidNumberFormat';\n case 3 /* ParseErrorCode.PropertyNameExpected */: return 'PropertyNameExpected';\n case 4 /* ParseErrorCode.ValueExpected */: return 'ValueExpected';\n case 5 /* ParseErrorCode.ColonExpected */: return 'ColonExpected';\n case 6 /* ParseErrorCode.CommaExpected */: return 'CommaExpected';\n case 7 /* ParseErrorCode.CloseBraceExpected */: return 'CloseBraceExpected';\n case 8 /* ParseErrorCode.CloseBracketExpected */: return 'CloseBracketExpected';\n case 9 /* ParseErrorCode.EndOfFileExpected */: return 'EndOfFileExpected';\n case 10 /* ParseErrorCode.InvalidCommentToken */: return 'InvalidCommentToken';\n case 11 /* ParseErrorCode.UnexpectedEndOfComment */: return 'UnexpectedEndOfComment';\n case 12 /* ParseErrorCode.UnexpectedEndOfString */: return 'UnexpectedEndOfString';\n case 13 /* ParseErrorCode.UnexpectedEndOfNumber */: return 'UnexpectedEndOfNumber';\n case 14 /* ParseErrorCode.InvalidUnicode */: return 'InvalidUnicode';\n case 15 /* ParseErrorCode.InvalidEscapeCharacter */: return 'InvalidEscapeCharacter';\n case 16 /* ParseErrorCode.InvalidCharacter */: return 'InvalidCharacter';\n }\n return '<unknown ParseErrorCode>';\n}\n/**\n * Computes the edit operations needed to format a JSON document.\n *\n * @param documentText The input text\n * @param range The range to format or `undefined` to format the full content\n * @param options The formatting options\n * @returns The edit operations describing the formatting changes to the original document following the format described in {@linkcode EditResult}.\n * To apply the edit operations to the input, use {@linkcode applyEdits}.\n */\nexport function format(documentText, range, options) {\n return formatter.format(documentText, range, options);\n}\n/**\n * Computes the edit operations needed to modify a value in the JSON document.\n *\n * @param documentText The input text\n * @param path The path of the value to change. The path represents either to the document root, a property or an array item.\n * If the path points to an non-existing property or item, it will be created.\n * @param value The new value for the specified property or item. If the value is undefined,\n * the property or item will be removed.\n * @param options Options\n * @returns The edit operations describing the changes to the original document, following the format described in {@linkcode EditResult}.\n * To apply the edit operations to the input, use {@linkcode applyEdits}.\n */\nexport function modify(text, path, value, options) {\n return edit.setProperty(text, path, value, options);\n}\n/**\n * Applies edits to an input string.\n * @param text The input text\n * @param edits Edit operations following the format described in {@linkcode EditResult}.\n * @returns The text with the applied edits.\n * @throws An error if the edit operations are not well-formed as described in {@linkcode EditResult}.\n */\nexport function applyEdits(text, edits) {\n let sortedEdits = edits.slice(0).sort((a, b) => {\n const diff = a.offset - b.offset;\n if (diff === 0) {\n return a.length - b.length;\n }\n return diff;\n });\n let lastModifiedOffset = text.length;\n for (let i = sortedEdits.length - 1; i >= 0; i--) {\n let e = sortedEdits[i];\n if (e.offset + e.length <= lastModifiedOffset) {\n text = edit.applyEdit(text, e);\n }\n else {\n throw new Error('Overlapping edit');\n }\n lastModifiedOffset = e.offset;\n }\n return text;\n}\n","// 'path' module extracted from Node.js v8.11.1 (only the posix part)\n// transplited with Babel\n\n// Copyright Joyent, Inc. and other Node contributors.\n//\n// Permission is hereby granted, free of charge, to any person obtaining a\n// copy of this software and associated documentation files (the\n// \"Software\"), to deal in the Software without restriction, including\n// without limitation the rights to use, copy, modify, merge, publish,\n// distribute, sublicense, and/or sell copies of the Software, and to permit\n// persons to whom the Software is furnished to do so, subject to the\n// following conditions:\n//\n// The above copyright notice and this permission notice shall be included\n// in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS\n// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF\n// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN\n// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,\n// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR\n// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE\n// USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n'use strict';\n\nfunction assertPath(path) {\n if (typeof path !== 'string') {\n throw new TypeError('Path must be a string. Received ' + JSON.stringify(path));\n }\n}\n\n// Resolves . and .. elements in a path with directory names\nfunction normalizeStringPosix(path, allowAboveRoot) {\n var res = '';\n var lastSegmentLength = 0;\n var lastSlash = -1;\n var dots = 0;\n var code;\n for (var i = 0; i <= path.length; ++i) {\n if (i < path.length)\n code = path.charCodeAt(i);\n else if (code === 47 /*/*/)\n break;\n else\n code = 47 /*/*/;\n if (code === 47 /*/*/) {\n if (lastSlash === i - 1 || dots === 1) {\n // NOOP\n } else if (lastSlash !== i - 1 && dots === 2) {\n if (res.length < 2 || lastSegmentLength !== 2 || res.charCodeAt(res.length - 1) !== 46 /*.*/ || res.charCodeAt(res.length - 2) !== 46 /*.*/) {\n if (res.length > 2) {\n var lastSlashIndex = res.lastIndexOf('/');\n if (lastSlashIndex !== res.length - 1) {\n if (lastSlashIndex === -1) {\n res = '';\n lastSegmentLength = 0;\n } else {\n res = res.slice(0, lastSlashIndex);\n lastSegmentLength = res.length - 1 - res.lastIndexOf('/');\n }\n lastSlash = i;\n dots = 0;\n continue;\n }\n } else if (res.length === 2 || res.length === 1) {\n res = '';\n lastSegmentLength = 0;\n lastSlash = i;\n dots = 0;\n continue;\n }\n }\n if (allowAboveRoot) {\n if (res.length > 0)\n res += '/..';\n else\n res = '..';\n lastSegmentLength = 2;\n }\n } else {\n if (res.length > 0)\n res += '/' + path.slice(lastSlash + 1, i);\n else\n res = path.slice(lastSlash + 1, i);\n lastSegmentLength = i - lastSlash - 1;\n }\n lastSlash = i;\n dots = 0;\n } else if (code === 46 /*.*/ && dots !== -1) {\n ++dots;\n } else {\n dots = -1;\n }\n }\n return res;\n}\n\nfunction _format(sep, pathObject) {\n var dir = pathObject.dir || pathObject.root;\n var base = pathObject.base || (pathObject.name || '') + (pathObject.ext || '');\n if (!dir) {\n return base;\n }\n if (dir === pathObject.root) {\n return dir + base;\n }\n return dir + sep + base;\n}\n\nvar posix = {\n // path.resolve([from ...], to)\n resolve: function resolve() {\n var resolvedPath = '';\n var resolvedAbsolute = false;\n var cwd;\n\n for (var i = arguments.length - 1; i >= -1 && !resolvedAbsolute; i--) {\n var path;\n if (i >= 0)\n path = arguments[i];\n else {\n if (cwd === undefined)\n cwd = process.cwd();\n path = cwd;\n }\n\n assertPath(path);\n\n // Skip empty entries\n if (path.length === 0) {\n continue;\n }\n\n resolvedPath = path + '/' + resolvedPath;\n resolvedAbsolute = path.charCodeAt(0) === 47 /*/*/;\n }\n\n // At this point the path should be resolved to a full absolute path, but\n // handle relative paths to be safe (might happen when process.cwd() fails)\n\n // Normalize the path\n resolvedPath = normalizeStringPosix(resolvedPath, !resolvedAbsolute);\n\n if (resolvedAbsolute) {\n if (resolvedPath.length > 0)\n return '/' + resolvedPath;\n else\n return '/';\n } else if (resolvedPath.length > 0) {\n return resolvedPath;\n } else {\n return '.';\n }\n },\n\n normalize: function normalize(path) {\n assertPath(path);\n\n if (path.length === 0) return '.';\n\n var isAbsolute = path.charCodeAt(0) === 47 /*/*/;\n var trailingSeparator = path.charCodeAt(path.length - 1) === 47 /*/*/;\n\n // Normalize the path\n path = normalizeStringPosix(path, !isAbsolute);\n\n if (path.length === 0 && !isAbsolute) path = '.';\n if (path.length > 0 && trailingSeparator) path += '/';\n\n if (isAbsolute) return '/' + path;\n return path;\n },\n\n isAbsolute: function isAbsolute(path) {\n assertPath(path);\n return path.length > 0 && path.charCodeAt(0) === 47 /*/*/;\n },\n\n join: function join() {\n if (arguments.length === 0)\n return '.';\n var joined;\n for (var i = 0; i < arguments.length; ++i) {\n var arg = arguments[i];\n assertPath(arg);\n if (arg.length > 0) {\n if (joined === undefined)\n joined = arg;\n else\n joined += '/' + arg;\n }\n }\n if (joined === undefined)\n return '.';\n return posix.normalize(joined);\n },\n\n relative: function relative(from, to) {\n assertPath(from);\n assertPath(to);\n\n if (from === to) return '';\n\n from = posix.resolve(from);\n to = posix.resolve(to);\n\n if (from === to) return '';\n\n // Trim any leading backslashes\n var fromStart = 1;\n for (; fromStart < from.length; ++fromStart) {\n if (from.charCodeAt(fromStart) !== 47 /*/*/)\n break;\n }\n var fromEnd = from.length;\n var fromLen = fromEnd - fromStart;\n\n // Trim any leading backslashes\n var toStart = 1;\n for (; toStart < to.length; ++toStart) {\n if (to.charCodeAt(toStart) !== 47 /*/*/)\n break;\n }\n var toEnd = to.length;\n var toLen = toEnd - toStart;\n\n // Compare paths to find the longest common path from root\n var length = fromLen < toLen ? fromLen : toLen;\n var lastCommonSep = -1;\n var i = 0;\n for (; i <= length; ++i) {\n if (i === length) {\n if (toLen > length) {\n if (to.charCodeAt(toStart + i) === 47 /*/*/) {\n // We get here if `from` is the exact base path for `to`.\n // For example: from='/foo/bar'; to='/foo/bar/baz'\n return to.slice(toStart + i + 1);\n } else if (i === 0) {\n // We get here if `from` is the root\n // For example: from='/'; to='/foo'\n return to.slice(toStart + i);\n }\n } else if (fromLen > length) {\n if (from.charCodeAt(fromStart + i) === 47 /*/*/) {\n // We get here if `to` is the exact base path for `from`.\n // For example: from='/foo/bar/baz'; to='/foo/bar'\n lastCommonSep = i;\n } else if (i === 0) {\n // We get here if `to` is the root.\n // For example: from='/foo'; to='/'\n lastCommonSep = 0;\n }\n }\n break;\n }\n var fromCode = from.charCodeAt(fromStart + i);\n var toCode = to.charCodeAt(toStart + i);\n if (fromCode !== toCode)\n break;\n else if (fromCode === 47 /*/*/)\n lastCommonSep = i;\n }\n\n var out = '';\n // Generate the relative path based on the path difference between `to`\n // and `from`\n for (i = fromStart + lastCommonSep + 1; i <= fromEnd; ++i) {\n if (i === fromEnd || from.charCodeAt(i) === 47 /*/*/) {\n if (out.length === 0)\n out += '..';\n else\n out += '/..';\n }\n }\n\n // Lastly, append the rest of the destination (`to`) path that comes after\n // the common path parts\n if (out.length > 0)\n return out + to.slice(toStart + lastCommonSep);\n else {\n toStart += lastCommonSep;\n if (to.charCodeAt(toStart) === 47 /*/*/)\n ++toStart;\n return to.slice(toStart);\n }\n },\n\n _makeLong: function _makeLong(path) {\n return path;\n },\n\n dirname: function dirname(path) {\n assertPath(path);\n if (path.length === 0) return '.';\n var code = path.charCodeAt(0);\n var hasRoot = code === 47 /*/*/;\n var end = -1;\n var matchedSlash = true;\n for (var i = path.length - 1; i >= 1; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n if (!matchedSlash) {\n end = i;\n break;\n }\n } else {\n // We saw the first non-path separator\n matchedSlash = false;\n }\n }\n\n if (end === -1) return hasRoot ? '/' : '.';\n if (hasRoot && end === 1) return '//';\n return path.slice(0, end);\n },\n\n basename: function basename(path, ext) {\n if (ext !== undefined && typeof ext !== 'string') throw new TypeError('\"ext\" argument must be a string');\n assertPath(path);\n\n var start = 0;\n var end = -1;\n var matchedSlash = true;\n var i;\n\n if (ext !== undefined && ext.length > 0 && ext.length <= path.length) {\n if (ext.length === path.length && ext === path) return '';\n var extIdx = ext.length - 1;\n var firstNonSlashEnd = -1;\n for (i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else {\n if (firstNonSlashEnd === -1) {\n // We saw the first non-path separator, remember this index in case\n // we need it if the extension ends up not matching\n matchedSlash = false;\n firstNonSlashEnd = i + 1;\n }\n if (extIdx >= 0) {\n // Try to match the explicit extension\n if (code === ext.charCodeAt(extIdx)) {\n if (--extIdx === -1) {\n // We matched the extension, so mark this as the end of our path\n // component\n end = i;\n }\n } else {\n // Extension does not match, so our result is the entire path\n // component\n extIdx = -1;\n end = firstNonSlashEnd;\n }\n }\n }\n }\n\n if (start === end) end = firstNonSlashEnd;else if (end === -1) end = path.length;\n return path.slice(start, end);\n } else {\n for (i = path.length - 1; i >= 0; --i) {\n if (path.charCodeAt(i) === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n start = i + 1;\n break;\n }\n } else if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // path component\n matchedSlash = false;\n end = i + 1;\n }\n }\n\n if (end === -1) return '';\n return path.slice(start, end);\n }\n },\n\n extname: function extname(path) {\n assertPath(path);\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n for (var i = path.length - 1; i >= 0; --i) {\n var code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1)\n startDot = i;\n else if (preDotState !== 1)\n preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n return '';\n }\n return path.slice(startDot, end);\n },\n\n format: function format(pathObject) {\n if (pathObject === null || typeof pathObject !== 'object') {\n throw new TypeError('The \"pathObject\" argument must be of type Object. Received type ' + typeof pathObject);\n }\n return _format('/', pathObject);\n },\n\n parse: function parse(path) {\n assertPath(path);\n\n var ret = { root: '', dir: '', base: '', ext: '', name: '' };\n if (path.length === 0) return ret;\n var code = path.charCodeAt(0);\n var isAbsolute = code === 47 /*/*/;\n var start;\n if (isAbsolute) {\n ret.root = '/';\n start = 1;\n } else {\n start = 0;\n }\n var startDot = -1;\n var startPart = 0;\n var end = -1;\n var matchedSlash = true;\n var i = path.length - 1;\n\n // Track the state of characters (if any) we see before our first dot and\n // after any path separator we find\n var preDotState = 0;\n\n // Get non-dir info\n for (; i >= start; --i) {\n code = path.charCodeAt(i);\n if (code === 47 /*/*/) {\n // If we reached a path separator that was not part of a set of path\n // separators at the end of the string, stop now\n if (!matchedSlash) {\n startPart = i + 1;\n break;\n }\n continue;\n }\n if (end === -1) {\n // We saw the first non-path separator, mark this as the end of our\n // extension\n matchedSlash = false;\n end = i + 1;\n }\n if (code === 46 /*.*/) {\n // If this is our first dot, mark it as the start of our extension\n if (startDot === -1) startDot = i;else if (preDotState !== 1) preDotState = 1;\n } else if (startDot !== -1) {\n // We saw a non-dot and non-path separator before our dot, so we should\n // have a good chance at having a non-empty extension\n preDotState = -1;\n }\n }\n\n if (startDot === -1 || end === -1 ||\n // We saw a non-dot character immediately before the dot\n preDotState === 0 ||\n // The (right-most) trimmed path component is exactly '..'\n preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {\n if (end !== -1) {\n if (startPart === 0 && isAbsolute) ret.base = ret.name = path.slice(1, end);else ret.base = ret.name = path.slice(startPart, end);\n }\n } else {\n if (startPart === 0 && isAbsolute) {\n ret.name = path.slice(1, startDot);\n ret.base = path.slice(1, end);\n } else {\n ret.name = path.slice(startPart, startDot);\n ret.base = path.slice(startPart, end);\n }\n ret.ext = path.slice(startDot, end);\n }\n\n if (startPart > 0) ret.dir = path.slice(0, startPart - 1);else if (isAbsolute) ret.dir = '/';\n\n return ret;\n },\n\n sep: '/',\n delimiter: ':',\n win32: null,\n posix: null\n};\n\nposix.posix = posix;\n\nmodule.exports = posix;\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 *--------------------------------------------------------------------------------------------*/\n\nexport const agent = undefined;\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 *--------------------------------------------------------------------------------------------*/\n\nimport { getLocation, JSONPath, parse, visit, Location } from 'jsonc-parser';\nimport * as vscode from 'vscode';\nimport { SettingsDocument } from './settingsDocumentHelper';\nimport { provideInstalledExtensionProposals } from './extensionsProposals';\nimport './importExportProfiles';\n\nexport function activate(context: vscode.ExtensionContext): void {\n\t//settings.json suggestions\n\tcontext.subscriptions.push(registerSettingsCompletions());\n\n\t//extensions suggestions\n\tcontext.subscriptions.push(...registerExtensionsCompletions());\n\n\t// launch.json variable suggestions\n\tcontext.subscriptions.push(registerVariableCompletions('**/launch.json'));\n\n\t// task.json variable suggestions\n\tcontext.subscriptions.push(registerVariableCompletions('**/tasks.json'));\n\n\t// Workspace file launch/tasks variable completions\n\tcontext.subscriptions.push(registerVariableCompletions('**/*.code-workspace'));\n\n\t// keybindings.json/package.json context key suggestions\n\tcontext.subscriptions.push(registerContextKeyCompletions());\n}\n\nfunction registerSettingsCompletions(): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ language: 'jsonc', pattern: '**/settings.json' }, {\n\t\tprovideCompletionItems(document, position, token) {\n\t\t\treturn new SettingsDocument(document).provideCompletionItems(position, token);\n\t\t}\n\t});\n}\n\nfunction registerVariableCompletions(pattern: string): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ language: 'jsonc', pattern }, {\n\t\tprovideCompletionItems(document, position, _token) {\n\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\t\t\tif (isCompletingInsidePropertyStringValue(document, location, position)) {\n\t\t\t\tif (document.fileName.endsWith('.code-workspace') && !isLocationInsideTopLevelProperty(location, ['launch', 'tasks'])) {\n\t\t\t\t\treturn [];\n\t\t\t\t}\n\n\t\t\t\tlet range = document.getWordRangeAtPosition(position, /\\$\\{[^\"\\}]*\\}?/);\n\t\t\t\tif (!range || range.start.isEqual(position) || range.end.isEqual(position) && document.getText(range).endsWith('}')) {\n\t\t\t\t\trange = new vscode.Range(position, position);\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t{ label: 'workspaceFolder', detail: vscode.l10n.t(\"The path of the folder opened in VS Code\") },\n\t\t\t\t\t{ label: 'workspaceFolderBasename', detail: vscode.l10n.t(\"The name of the folder opened in VS Code without any slashes (/)\") },\n\t\t\t\t\t{ label: 'fileWorkspaceFolderBasename', detail: vscode.l10n.t(\"The current opened file workspace folder name without any slashes (/)\") },\n\t\t\t\t\t{ label: 'relativeFile', detail: vscode.l10n.t(\"The current opened file relative to ${workspaceFolder}\") },\n\t\t\t\t\t{ label: 'relativeFileDirname', detail: vscode.l10n.t(\"The current opened file's dirname relative to ${workspaceFolder}\") },\n\t\t\t\t\t{ label: 'file', detail: vscode.l10n.t(\"The current opened file\") },\n\t\t\t\t\t{ label: 'cwd', detail: vscode.l10n.t(\"The task runner's current working directory on startup\") },\n\t\t\t\t\t{ label: 'lineNumber', detail: vscode.l10n.t(\"The current selected line number in the active file\") },\n\t\t\t\t\t{ label: 'selectedText', detail: vscode.l10n.t(\"The current selected text in the active file\") },\n\t\t\t\t\t{ label: 'fileDirname', detail: vscode.l10n.t(\"The current opened file's dirname\") },\n\t\t\t\t\t{ label: 'fileDirnameBasename', detail: vscode.l10n.t(\"The current opened file's folder name\") },\n\t\t\t\t\t{ label: 'fileExtname', detail: vscode.l10n.t(\"The current opened file's extension\") },\n\t\t\t\t\t{ label: 'fileBasename', detail: vscode.l10n.t(\"The current opened file's basename\") },\n\t\t\t\t\t{ label: 'fileBasenameNoExtension', detail: vscode.l10n.t(\"The current opened file's basename with no file extension\") },\n\t\t\t\t\t{ label: 'defaultBuildTask', detail: vscode.l10n.t(\"The name of the default build task. If there is not a single default build task then a quick pick is shown to choose the build task.\") },\n\t\t\t\t\t{ label: 'pathSeparator', detail: vscode.l10n.t(\"The character used by the operating system to separate components in file paths. Is also aliased to '/'.\") },\n\t\t\t\t\t{ label: 'extensionInstallFolder', detail: vscode.l10n.t(\"The path where an extension is installed.\"), param: 'publisher.extension' },\n\t\t\t\t].map(variable => ({\n\t\t\t\t\tlabel: `\\${${variable.label}}`,\n\t\t\t\t\trange,\n\t\t\t\t\tinsertText: variable.param ? new vscode.SnippetString(`\\${${variable.label}:`).appendPlaceholder(variable.param).appendText('}') : (`\\${${variable.label}}`),\n\t\t\t\t\tdetail: variable.detail\n\t\t\t\t}));\n\t\t\t}\n\n\t\t\treturn [];\n\t\t}\n\t});\n}\n\nfunction isCompletingInsidePropertyStringValue(document: vscode.TextDocument, location: Location, pos: vscode.Position) {\n\tif (location.isAtPropertyKey) {\n\t\treturn false;\n\t}\n\tconst previousNode = location.previousNode;\n\tif (previousNode && previousNode.type === 'string') {\n\t\tconst offset = document.offsetAt(pos);\n\t\treturn offset > previousNode.offset && offset < previousNode.offset + previousNode.length;\n\t}\n\treturn false;\n}\n\nfunction isLocationInsideTopLevelProperty(location: Location, values: string[]) {\n\treturn values.includes(location.path[0] as string);\n}\n\ninterface IExtensionsContent {\n\trecommendations: string[];\n}\n\nfunction registerExtensionsCompletions(): vscode.Disposable[] {\n\treturn [registerExtensionsCompletionsInExtensionsDocument(), registerExtensionsCompletionsInWorkspaceConfigurationDocument()];\n}\n\nfunction registerExtensionsCompletionsInExtensionsDocument(): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ pattern: '**/extensions.json' }, {\n\t\tprovideCompletionItems(document, position, _token) {\n\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\t\t\tif (location.path[0] === 'recommendations') {\n\t\t\t\tconst range = getReplaceRange(document, location, position);\n\t\t\t\tconst extensionsContent = <IExtensionsContent>parse(document.getText());\n\t\t\t\treturn provideInstalledExtensionProposals(extensionsContent && extensionsContent.recommendations || [], '', range, false);\n\t\t\t}\n\t\t\treturn [];\n\t\t}\n\t});\n}\n\nfunction registerExtensionsCompletionsInWorkspaceConfigurationDocument(): vscode.Disposable {\n\treturn vscode.languages.registerCompletionItemProvider({ pattern: '**/*.code-workspace' }, {\n\t\tprovideCompletionItems(document, position, _token) {\n\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\t\t\tif (location.path[0] === 'extensions' && location.path[1] === 'recommendations') {\n\t\t\t\tconst range = getReplaceRange(document, location, position);\n\t\t\t\tconst extensionsContent = <IExtensionsContent>parse(document.getText())['extensions'];\n\t\t\t\treturn provideInstalledExtensionProposals(extensionsContent && extensionsContent.recommendations || [], '', range, false);\n\t\t\t}\n\t\t\treturn [];\n\t\t}\n\t});\n}\n\nfunction getReplaceRange(document: vscode.TextDocument, location: Location, position: vscode.Position) {\n\tconst node = location.previousNode;\n\tif (node) {\n\t\tconst nodeStart = document.positionAt(node.offset), nodeEnd = document.positionAt(node.offset + node.length);\n\t\tif (nodeStart.isBeforeOrEqual(position) && nodeEnd.isAfterOrEqual(position)) {\n\t\t\treturn new vscode.Range(nodeStart, nodeEnd);\n\t\t}\n\t}\n\treturn new vscode.Range(position, position);\n}\n\nvscode.languages.registerDocumentSymbolProvider({ pattern: '**/launch.json', language: 'jsonc' }, {\n\tprovideDocumentSymbols(document: vscode.TextDocument, _token: vscode.CancellationToken): vscode.ProviderResult<vscode.SymbolInformation[]> {\n\t\tconst result: vscode.SymbolInformation[] = [];\n\t\tlet name: string = '';\n\t\tlet lastProperty = '';\n\t\tlet startOffset = 0;\n\t\tlet depthInObjects = 0;\n\n\t\tvisit(document.getText(), {\n\t\t\tonObjectProperty: (property, _offset, _length) => {\n\t\t\t\tlastProperty = property;\n\t\t\t},\n\t\t\tonLiteralValue: (value: any, _offset: number, _length: number) => {\n\t\t\t\tif (lastProperty === 'name') {\n\t\t\t\t\tname = value;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonObjectBegin: (offset: number, _length: number) => {\n\t\t\t\tdepthInObjects++;\n\t\t\t\tif (depthInObjects === 2) {\n\t\t\t\t\tstartOffset = offset;\n\t\t\t\t}\n\t\t\t},\n\t\t\tonObjectEnd: (offset: number, _length: number) => {\n\t\t\t\tif (name && depthInObjects === 2) {\n\t\t\t\t\tresult.push(new vscode.SymbolInformation(name, vscode.SymbolKind.Object, new vscode.Range(document.positionAt(startOffset), document.positionAt(offset))));\n\t\t\t\t}\n\t\t\t\tdepthInObjects--;\n\t\t\t},\n\t\t});\n\n\t\treturn result;\n\t}\n}, { label: 'Launch Targets' });\n\nfunction registerContextKeyCompletions(): vscode.Disposable {\n\ttype ContextKeyInfo = { key: string; type?: string; description?: string };\n\n\tconst paths = new Map<vscode.DocumentFilter, JSONPath[]>([\n\t\t[{ language: 'jsonc', pattern: '**/keybindings.json' }, [\n\t\t\t['*', 'when']\n\t\t]],\n\t\t[{ language: 'json', pattern: '**/package.json' }, [\n\t\t\t['contributes', 'menus', '*', '*', 'when'],\n\t\t\t['contributes', 'views', '*', '*', 'when'],\n\t\t\t['contributes', 'viewsWelcome', '*', 'when'],\n\t\t\t['contributes', 'keybindings', '*', 'when'],\n\t\t\t['contributes', 'keybindings', 'when'],\n\t\t]]\n\t]);\n\n\treturn vscode.languages.registerCompletionItemProvider(\n\t\t[...paths.keys()],\n\t\t{\n\t\t\tasync provideCompletionItems(document: vscode.TextDocument, position: vscode.Position, token: vscode.CancellationToken) {\n\n\t\t\t\tconst location = getLocation(document.getText(), document.offsetAt(position));\n\n\t\t\t\tif (location.isAtPropertyKey) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tlet isValidLocation = false;\n\t\t\t\tfor (const [key, value] of paths) {\n\t\t\t\t\tif (vscode.languages.match(key, document)) {\n\t\t\t\t\t\tif (value.some(location.matches.bind(location))) {\n\t\t\t\t\t\t\tisValidLocation = true;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (!isValidLocation || !isCompletingInsidePropertyStringValue(document, location, position)) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst replacing = document.getWordRangeAtPosition(position, /[a-zA-Z.]+/) || new vscode.Range(position, position);\n\t\t\t\tconst inserting = replacing.with(undefined, position);\n\n\t\t\t\tconst data = await vscode.commands.executeCommand<ContextKeyInfo[]>('getContextKeyInfo');\n\t\t\t\tif (token.isCancellationRequested || !data) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst result = new vscode.CompletionList();\n\t\t\t\tfor (const item of data) {\n\t\t\t\t\tconst completion = new vscode.CompletionItem(item.key, vscode.CompletionItemKind.Constant);\n\t\t\t\t\tcompletion.detail = item.type;\n\t\t\t\t\tcompletion.range = { replacing, inserting };\n\t\t\t\t\tcompletion.documentation = item.description;\n\t\t\t\t\tresult.items.push(completion);\n\t\t\t\t}\n\t\t\t\treturn result;\n\t\t\t}\n\t\t}\n\t);\n}\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 *--------------------------------------------------------------------------------------------*/\n\nimport * as vscode from 'vscode';\n\n\nexport async function provideInstalledExtensionProposals(existing: string[], additionalText: string, range: vscode.Range, includeBuiltinExtensions: boolean): Promise<vscode.CompletionItem[] | vscode.CompletionList> {\n\tif (Array.isArray(existing)) {\n\t\tconst extensions = includeBuiltinExtensions ? vscode.extensions.all : vscode.extensions.all.filter(e => !(e.id.startsWith('vscode.') || e.id === 'Microsoft.vscode-markdown'));\n\t\tconst knownExtensionProposals = extensions.filter(e => existing.indexOf(e.id) === -1);\n\t\tif (knownExtensionProposals.length) {\n\t\t\treturn knownExtensionProposals.map(e => {\n\t\t\t\tconst item = new vscode.CompletionItem(e.id);\n\t\t\t\tconst insertText = `\"${e.id}\"${additionalText}`;\n\t\t\t\titem.kind = vscode.CompletionItemKind.Value;\n\t\t\t\titem.insertText = insertText;\n\t\t\t\titem.range = range;\n\t\t\t\titem.filterText = insertText;\n\t\t\t\treturn item;\n\t\t\t});\n\t\t} else {\n\t\t\tconst example = new vscode.CompletionItem(vscode.l10n.t(\"Example\"));\n\t\t\texample.insertText = '\"vscode.csharp\"';\n\t\t\texample.kind = vscode.CompletionItemKind.Value;\n\t\t\texample.range = range;\n\t\t\treturn [example];\n\t\t}\n\t}\n\treturn [];\n}\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 *--------------------------------------------------------------------------------------------*/\n\nimport { Octokit } from '@octokit/rest';\nimport * as vscode from 'vscode';\nimport { basename } from 'path';\nimport { agent } from './node/net';\n\nclass GitHubGistProfileContentHandler implements vscode.ProfileContentHandler {\n\n\treadonly name = vscode.l10n.t('GitHub');\n\treadonly description = vscode.l10n.t('gist');\n\n\tprivate _octokit: Promise<Octokit> | undefined;\n\tprivate getOctokit(): Promise<Octokit> {\n\t\tif (!this._octokit) {\n\t\t\tthis._octokit = (async () => {\n\t\t\t\tconst session = await vscode.authentication.getSession('github', ['gist', 'user:email'], { createIfNone: true });\n\t\t\t\tconst token = session.accessToken;\n\n\t\t\t\tconst { Octokit } = await import('@octokit/rest');\n\n\t\t\t\treturn new Octokit({\n\t\t\t\t\trequest: { agent },\n\t\t\t\t\tuserAgent: 'GitHub VSCode',\n\t\t\t\t\tauth: `token ${token}`\n\t\t\t\t});\n\t\t\t})();\n\t\t}\n\t\treturn this._octokit;\n\t}\n\n\tasync saveProfile(name: string, content: string): Promise<{ readonly id: string; readonly link: vscode.Uri } | null> {\n\t\tconst octokit = await this.getOctokit();\n\t\tconst result = await octokit.gists.create({\n\t\t\tpublic: false,\n\t\t\tfiles: {\n\t\t\t\t[name]: {\n\t\t\t\t\tcontent\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tif (result.data.id && result.data.html_url) {\n\t\t\tconst link = vscode.Uri.parse(result.data.html_url);\n\t\t\treturn { id: result.data.id, link };\n\t\t}\n\t\treturn null;\n\t}\n\n\tprivate _public_octokit: Promise<Octokit> | undefined;\n\tprivate getPublicOctokit(): Promise<Octokit> {\n\t\tif (!this._public_octokit) {\n\t\t\tthis._public_octokit = (async () => {\n\t\t\t\tconst { Octokit } = await import('@octokit/rest');\n\t\t\t\treturn new Octokit({ request: { agent }, userAgent: 'GitHub VSCode' });\n\t\t\t})();\n\t\t}\n\t\treturn this._public_octokit;\n\t}\n\n\tasync readProfile(id: string): Promise<string | null>;\n\tasync readProfile(uri: vscode.Uri): Promise<string | null>;\n\tasync readProfile(arg: string | vscode.Uri): Promise<string | null> {\n\t\tconst gist_id = typeof arg === 'string' ? arg : basename(arg.path);\n\t\tconst octokit = await this.getPublicOctokit();\n\t\ttry {\n\t\t\tconst gist = await octokit.gists.get({ gist_id });\n\t\t\tif (gist.data.files) {\n\t\t\t\treturn gist.data.files[Object.keys(gist.data.files)[0]]?.content ?? null;\n\t\t\t}\n\t\t} catch (error) {\n\t\t\t// ignore\n\t\t}\n\t\treturn null;\n\t}\n\n}\n\nvscode.window.registerProfileContentHandler('github', new GitHubGistProfileContentHandler());\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 *--------------------------------------------------------------------------------------------*/\n\nimport * as vscode from 'vscode';\nimport { getLocation, Location, parse } from 'jsonc-parser';\nimport { provideInstalledExtensionProposals } from './extensionsProposals';\n\nconst OVERRIDE_IDENTIFIER_REGEX = /\\[([^\\[\\]]*)\\]/g;\n\nexport class SettingsDocument {\n\n\tconstructor(private document: vscode.TextDocument) { }\n\n\tpublic async provideCompletionItems(position: vscode.Position, _token: vscode.CancellationToken): Promise<vscode.CompletionItem[] | vscode.CompletionList> {\n\t\tconst location = getLocation(this.document.getText(), this.document.offsetAt(position));\n\n\t\t// window.title\n\t\tif (location.path[0] === 'window.title') {\n\t\t\treturn this.provideWindowTitleCompletionItems(location, position);\n\t\t}\n\n\t\t// files.association\n\t\tif (location.path[0] === 'files.associations') {\n\t\t\treturn this.provideFilesAssociationsCompletionItems(location, position);\n\t\t}\n\n\t\t// files.exclude, search.exclude, explorer.autoRevealExclude\n\t\tif (location.path[0] === 'files.exclude' || location.path[0] === 'search.exclude' || location.path[0] === 'explorer.autoRevealExclude') {\n\t\t\treturn this.provideExcludeCompletionItems(location, position);\n\t\t}\n\n\t\t// files.defaultLanguage\n\t\tif (location.path[0] === 'files.defaultLanguage') {\n\t\t\treturn this.provideLanguageCompletionItems(location, position);\n\t\t}\n\n\t\t// workbench.editor.label\n\t\tif (location.path[0] === 'workbench.editor.label.patterns') {\n\t\t\treturn this.provideEditorLabelCompletionItems(location, position);\n\t\t}\n\n\t\t// settingsSync.ignoredExtensions\n\t\tif (location.path[0] === 'settingsSync.ignoredExtensions') {\n\t\t\tlet ignoredExtensions = [];\n\t\t\ttry {\n\t\t\t\tignoredExtensions = parse(this.document.getText())['settingsSync.ignoredExtensions'];\n\t\t\t} catch (e) {/* ignore error */ }\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\treturn provideInstalledExtensionProposals(ignoredExtensions, '', range, true);\n\t\t}\n\n\t\t// remote.extensionKind\n\t\tif (location.path[0] === 'remote.extensionKind' && location.path.length === 2 && location.isAtPropertyKey) {\n\t\t\tlet alreadyConfigured: string[] = [];\n\t\t\ttry {\n\t\t\t\talreadyConfigured = Object.keys(parse(this.document.getText())['remote.extensionKind']);\n\t\t\t} catch (e) {/* ignore error */ }\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\treturn provideInstalledExtensionProposals(alreadyConfigured, location.previousNode ? '' : `: [\\n\\t\"ui\"\\n]`, range, true);\n\t\t}\n\n\t\t// remote.portsAttributes\n\t\tif (location.path[0] === 'remote.portsAttributes' && location.path.length === 2 && location.isAtPropertyKey) {\n\t\t\treturn this.providePortsAttributesCompletionItem(this.getReplaceRange(location, position));\n\t\t}\n\n\t\treturn this.provideLanguageOverridesCompletionItems(location, position);\n\t}\n\n\tprivate getReplaceRange(location: Location, position: vscode.Position) {\n\t\tconst node = location.previousNode;\n\t\tif (node) {\n\t\t\tconst nodeStart = this.document.positionAt(node.offset), nodeEnd = this.document.positionAt(node.offset + node.length);\n\t\t\tif (nodeStart.isBeforeOrEqual(position) && nodeEnd.isAfterOrEqual(position)) {\n\t\t\t\treturn new vscode.Range(nodeStart, nodeEnd);\n\t\t\t}\n\t\t}\n\t\treturn new vscode.Range(position, position);\n\t}\n\n\tprivate isCompletingPropertyValue(location: Location, pos: vscode.Position) {\n\t\tif (location.isAtPropertyKey) {\n\t\t\treturn false;\n\t\t}\n\t\tconst previousNode = location.previousNode;\n\t\tif (previousNode) {\n\t\t\tconst offset = this.document.offsetAt(pos);\n\t\t\treturn offset >= previousNode.offset && offset <= previousNode.offset + previousNode.length;\n\t\t}\n\t\treturn true;\n\t}\n\n\tprivate async provideWindowTitleCompletionItems(location: Location, pos: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\tif (!this.isCompletingPropertyValue(location, pos)) {\n\t\t\treturn completions;\n\t\t}\n\n\t\tlet range = this.document.getWordRangeAtPosition(pos, /\\$\\{[^\"\\}]*\\}?/);\n\t\tif (!range || range.start.isEqual(pos) || range.end.isEqual(pos) && this.document.getText(range).endsWith('}')) {\n\t\t\trange = new vscode.Range(pos, pos);\n\t\t}\n\n\t\tconst getText = (variable: string) => {\n\t\t\tconst text = '${' + variable + '}';\n\t\t\treturn location.previousNode ? text : JSON.stringify(text);\n\t\t};\n\n\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorShort'), range, vscode.l10n.t(\"the file name (e.g. myFile.txt)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorMedium'), range, vscode.l10n.t(\"the path of the file relative to the workspace folder (e.g. myFolder/myFileFolder/myFile.txt)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorLong'), range, vscode.l10n.t(\"the full path of the file (e.g. /Users/Development/myFolder/myFileFolder/myFile.txt)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeFolderShort'), range, vscode.l10n.t(\"the name of the folder the file is contained in (e.g. myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeFolderMedium'), range, vscode.l10n.t(\"the path of the folder the file is contained in, relative to the workspace folder (e.g. myFolder/myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeFolderLong'), range, vscode.l10n.t(\"the full path of the folder the file is contained in (e.g. /Users/Development/myFolder/myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('rootName'), range, vscode.l10n.t(\"name of the workspace with optional remote name and workspace indicator if applicable (e.g. myFolder, myRemoteFolder [SSH] or myWorkspace (Workspace))\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('rootNameShort'), range, vscode.l10n.t(\"shortened name of the workspace without suffixes (e.g. myFolder or myWorkspace)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('rootPath'), range, vscode.l10n.t(\"file path of the workspace (e.g. /Users/Development/myWorkspace)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('folderName'), range, vscode.l10n.t(\"name of the workspace folder the file is contained in (e.g. myFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('folderPath'), range, vscode.l10n.t(\"file path of the workspace folder the file is contained in (e.g. /Users/Development/myFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('appName'), range, vscode.l10n.t(\"e.g. VS Code\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('remoteName'), range, vscode.l10n.t(\"e.g. SSH\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('dirty'), range, vscode.l10n.t(\"an indicator for when the active editor has unsaved changes\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('separator'), range, vscode.l10n.t(\"a conditional separator (' - ') that only shows when surrounded by variables with values\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeRepositoryName'), range, vscode.l10n.t(\"the name of the active repository (e.g. vscode)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeRepositoryBranchName'), range, vscode.l10n.t(\"the name of the active branch in the active repository (e.g. main)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('activeEditorState'), range, vscode.l10n.t(\"the state of the active editor (e.g. modified).\")));\n\t\treturn completions;\n\t}\n\n\tprivate async provideEditorLabelCompletionItems(location: Location, pos: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\tif (!this.isCompletingPropertyValue(location, pos)) {\n\t\t\treturn completions;\n\t\t}\n\n\t\tlet range = this.document.getWordRangeAtPosition(pos, /\\$\\{[^\"\\}]*\\}?/);\n\t\tif (!range || range.start.isEqual(pos) || range.end.isEqual(pos) && this.document.getText(range).endsWith('}')) {\n\t\t\trange = new vscode.Range(pos, pos);\n\t\t}\n\n\t\tconst getText = (variable: string) => {\n\t\t\tconst text = '${' + variable + '}';\n\t\t\treturn location.previousNode ? text : JSON.stringify(text);\n\t\t};\n\n\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('dirname'), range, vscode.l10n.t(\"The parent folder name of the editor (e.g. myFileFolder)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('dirname(1)'), range, vscode.l10n.t(\"The nth parent folder name of the editor\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('filename'), range, vscode.l10n.t(\"The file name of the editor without its directory or extension (e.g. myFile)\")));\n\t\tcompletions.push(this.newSimpleCompletionItem(getText('extname'), range, vscode.l10n.t(\"The file extension of the editor (e.g. txt)\")));\n\t\treturn completions;\n\t}\n\n\tprivate async provideFilesAssociationsCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\tif (location.path.length === 2) {\n\t\t\t// Key\n\t\t\tif (location.path[1] === '') {\n\t\t\t\tconst range = this.getReplaceRange(location, position);\n\n\t\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\t\tlabel: vscode.l10n.t(\"Files with Extension\"),\n\t\t\t\t\tdocumentation: vscode.l10n.t(\"Map all files matching the glob pattern in their filename to the language with the given identifier.\"),\n\t\t\t\t\tsnippet: location.isAtPropertyKey ? '\"*.${1:extension}\": \"${2:language}\"' : '{ \"*.${1:extension}\": \"${2:language}\" }',\n\t\t\t\t\trange\n\t\t\t\t}));\n\n\t\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\t\tlabel: vscode.l10n.t(\"Files with Path\"),\n\t\t\t\t\tdocumentation: vscode.l10n.t(\"Map all files matching the absolute path glob pattern in their path to the language with the given identifier.\"),\n\t\t\t\t\tsnippet: location.isAtPropertyKey ? '\"/${1:path to file}/*.${2:extension}\": \"${3:language}\"' : '{ \"/${1:path to file}/*.${2:extension}\": \"${3:language}\" }',\n\t\t\t\t\trange\n\t\t\t\t}));\n\t\t\t} else if (this.isCompletingPropertyValue(location, position)) {\n\t\t\t\t// Value\n\t\t\t\treturn this.provideLanguageCompletionItemsForLanguageOverrides(this.getReplaceRange(location, position));\n\t\t\t}\n\t\t}\n\n\t\treturn completions;\n\t}\n\n\tprivate async provideExcludeCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tconst completions: vscode.CompletionItem[] = [];\n\n\t\t// Key\n\t\tif (location.path.length === 1 || (location.path.length === 2 && location.path[1] === '')) {\n\t\t\tconst range = this.getReplaceRange(location, position);\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files by Extension\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match all files of a specific file extension.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/*.${1:extension}\": true' : '{ \"**/*.${1:extension}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files with Multiple Extensions\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match all files with any of the file extensions.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/*.{ext1,ext2,ext3}\": true' : '{ \"**/*.{ext1,ext2,ext3}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files with Siblings by Name\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match files that have siblings with the same name but a different extension.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/*.${1:source-extension}\": { \"when\": \"$(basename).${2:target-extension}\" }' : '{ \"**/*.${1:source-extension}\": { \"when\": \"$(basename).${2:target-extension}\" } }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Folder by Name (Top Level)\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match a top level folder with a specific name.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"${1:name}\": true' : '{ \"${1:name}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Folders with Multiple Names (Top Level)\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match multiple top level folders.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"{folder1,folder2,folder3}\": true' : '{ \"{folder1,folder2,folder3}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Folder by Name (Any Location)\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match a folder with a specific name in any location.\"),\n\t\t\t\tsnippet: location.path.length === 2 ? '\"**/${1:name}\": true' : '{ \"**/${1:name}\": true }',\n\t\t\t\trange\n\t\t\t}));\n\t\t}\n\n\t\t// Value\n\t\telse if (location.path.length === 2 && this.isCompletingPropertyValue(location, position)) {\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\tcompletions.push(this.newSnippetCompletionItem({\n\t\t\t\tlabel: vscode.l10n.t(\"Files with Siblings by Name\"),\n\t\t\t\tdocumentation: vscode.l10n.t(\"Match files that have siblings with the same name but a different extension.\"),\n\t\t\t\tsnippet: '{ \"when\": \"$(basename).${1:extension}\" }',\n\t\t\t\trange\n\t\t\t}));\n\t\t}\n\n\t\treturn completions;\n\t}\n\n\tprivate async provideLanguageCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tif (location.path.length === 1 && this.isCompletingPropertyValue(location, position)) {\n\t\t\tconst range = this.getReplaceRange(location, position);\n\t\t\tconst languages = await vscode.languages.getLanguages();\n\t\t\treturn [\n\t\t\t\tthis.newSimpleCompletionItem(JSON.stringify('${activeEditorLanguage}'), range, vscode.l10n.t(\"Use the language of the currently active text editor if any\")),\n\t\t\t\t...languages.map(l => this.newSimpleCompletionItem(JSON.stringify(l), range))\n\t\t\t];\n\t\t}\n\t\treturn [];\n\t}\n\n\tprivate async provideLanguageCompletionItemsForLanguageOverrides(range: vscode.Range): Promise<vscode.CompletionItem[]> {\n\t\tconst languages = await vscode.languages.getLanguages();\n\t\tconst completionItems = [];\n\t\tfor (const language of languages) {\n\t\t\tconst item = new vscode.CompletionItem(JSON.stringify(language));\n\t\t\titem.kind = vscode.CompletionItemKind.Property;\n\t\t\titem.range = range;\n\t\t\tcompletionItems.push(item);\n\t\t}\n\t\treturn completionItems;\n\t}\n\n\tprivate async provideLanguageOverridesCompletionItems(location: Location, position: vscode.Position): Promise<vscode.CompletionItem[]> {\n\t\tif (location.path.length === 1 && location.isAtPropertyKey && location.previousNode && typeof location.previousNode.value === 'string' && location.previousNode.value.startsWith('[')) {\n\t\t\tconst startPosition = this.document.positionAt(location.previousNode.offset + 1);\n\t\t\tconst endPosition = startPosition.translate(undefined, location.previousNode.value.length);\n\t\t\tconst donotSuggestLanguages: string[] = [];\n\t\t\tconst languageOverridesRanges: vscode.Range[] = [];\n\t\t\tlet matches = OVERRIDE_IDENTIFIER_REGEX.exec(location.previousNode.value);\n\t\t\tlet lastLanguageOverrideRange: vscode.Range | undefined;\n\t\t\twhile (matches?.length) {\n\t\t\t\tlastLanguageOverrideRange = new vscode.Range(this.document.positionAt(location.previousNode.offset + 1 + matches.index), this.document.positionAt(location.previousNode.offset + 1 + matches.index + matches[0].length));\n\t\t\t\tlanguageOverridesRanges.push(lastLanguageOverrideRange);\n\t\t\t\t/* Suggest the configured language if the position is in the match range */\n\t\t\t\tif (!lastLanguageOverrideRange.contains(position)) {\n\t\t\t\t\tdonotSuggestLanguages.push(matches[1].trim());\n\t\t\t\t}\n\t\t\t\tmatches = OVERRIDE_IDENTIFIER_REGEX.exec(location.previousNode.value);\n\t\t\t}\n\t\t\tconst lastLanguageOverrideEndPosition = lastLanguageOverrideRange ? lastLanguageOverrideRange.end : startPosition;\n\t\t\tif (lastLanguageOverrideEndPosition.isBefore(endPosition)) {\n\t\t\t\tlanguageOverridesRanges.push(new vscode.Range(lastLanguageOverrideEndPosition, endPosition));\n\t\t\t}\n\t\t\tconst languageOverrideRange = languageOverridesRanges.find(range => range.contains(position));\n\n\t\t\t/**\n\t\t\t * Skip if suggestions are for first language override range\n\t\t\t * Since VSCode registers language overrides to the schema, JSON language server does suggestions for first language override.\n\t\t\t */\n\t\t\tif (languageOverrideRange && !languageOverrideRange.isEqual(languageOverridesRanges[0])) {\n\t\t\t\tconst languages = await vscode.languages.getLanguages();\n\t\t\t\tconst completionItems = [];\n\t\t\t\tfor (const language of languages) {\n\t\t\t\t\tif (!donotSuggestLanguages.includes(language)) {\n\t\t\t\t\t\tconst item = new vscode.CompletionItem(`[${language}]`);\n\t\t\t\t\t\titem.kind = vscode.CompletionItemKind.Property;\n\t\t\t\t\t\titem.range = languageOverrideRange;\n\t\t\t\t\t\tcompletionItems.push(item);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn completionItems;\n\t\t\t}\n\t\t}\n\t\treturn [];\n\t}\n\n\tprivate providePortsAttributesCompletionItem(range: vscode.Range): vscode.CompletionItem[] {\n\t\treturn [this.newSnippetCompletionItem(\n\t\t\t{\n\t\t\t\tlabel: '\\\"3000\\\"',\n\t\t\t\tdocumentation: 'Single Port Attribute',\n\t\t\t\trange,\n\t\t\t\tsnippet: '\\n \\\"${1:3000}\\\": {\\n \\\"label\\\": \\\"${2:Application}\\\",\\n \\\"onAutoForward\\\": \\\"${3:openPreview}\\\"\\n }\\n'\n\t\t\t}),\n\t\tthis.newSnippetCompletionItem(\n\t\t\t{\n\t\t\t\tlabel: '\\\"5000-6000\\\"',\n\t\t\t\tdocumentation: 'Ranged Port Attribute',\n\t\t\t\trange,\n\t\t\t\tsnippet: '\\n \\\"${1:40000-55000}\\\": {\\n \\\"onAutoForward\\\": \\\"${2:ignore}\\\"\\n }\\n'\n\t\t\t}),\n\t\tthis.newSnippetCompletionItem(\n\t\t\t{\n\t\t\t\tlabel: '\\\".+\\\\\\\\/server.js\\\"',\n\t\t\t\tdocumentation: 'Command Match Port Attribute',\n\t\t\t\trange,\n\t\t\t\tsnippet: '\\n \\\"${1:.+\\\\\\\\/server.js\\}\\\": {\\n \\\"label\\\": \\\"${2:Application}\\\",\\n \\\"onAutoForward\\\": \\\"${3:openPreview}\\\"\\n }\\n'\n\t\t\t})\n\t\t];\n\t}\n\n\tprivate newSimpleCompletionItem(text: string, range: vscode.Range, description?: string, insertText?: string): vscode.CompletionItem {\n\t\tconst item = new vscode.CompletionItem(text);\n\t\titem.kind = vscode.CompletionItemKind.Value;\n\t\titem.detail = description;\n\t\titem.insertText = insertText ? insertText : text;\n\t\titem.range = range;\n\t\treturn item;\n\t}\n\n\tprivate newSnippetCompletionItem(o: { label: string; documentation?: string; snippet: string; range: vscode.Range }): vscode.CompletionItem {\n\t\tconst item = new vscode.CompletionItem(o.label);\n\t\titem.kind = vscode.CompletionItemKind.Value;\n\t\titem.documentation = o.documentation;\n\t\titem.insertText = new vscode.SnippetString(o.snippet);\n\t\titem.range = o.range;\n\t\treturn item;\n\t}\n}\n","module.exports = require(\"vscode\");","'use strict'\n\nconst NullObject = function NullObject () { }\nNullObject.prototype = Object.create(null)\n\n/**\n * RegExp to match *( \";\" parameter ) in RFC 7231 sec 3.1.1.1\n *\n * parameter = token \"=\" ( token / quoted-string )\n * token = 1*tchar\n * tchar = \"!\" / \"#\" / \"$\" / \"%\" / \"&\" / \"'\" / \"*\"\n * / \"+\" / \"-\" / \".\" / \"^\" / \"_\" / \"`\" / \"|\" / \"~\"\n * / DIGIT / ALPHA\n * ; any VCHAR, except delimiters\n * quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE\n * qdtext = HTAB / SP / %x21 / %x23-5B / %x5D-7E / obs-text\n * obs-text = %x80-FF\n * quoted-pair = \"\\\" ( HTAB / SP / VCHAR / obs-text )\n */\nconst paramRE = /; *([!#$%&'*+.^\\w`|~-]+)=(\"(?:[\\v\\u0020\\u0021\\u0023-\\u005b\\u005d-\\u007e\\u0080-\\u00ff]|\\\\[\\v\\u0020-\\u00ff])*\"|[!#$%&'*+.^\\w`|~-]+) */gu\n\n/**\n * RegExp to match quoted-pair in RFC 7230 sec 3.2.6\n *\n * quoted-pair = \"\\\" ( HTAB / SP / VCHAR / obs-text )\n * obs-text = %x80-FF\n */\nconst quotedPairRE = /\\\\([\\v\\u0020-\\u00ff])/gu\n\n/**\n * RegExp to match type in RFC 7231 sec 3.1.1.1\n *\n * media-type = type \"/\" subtype\n * type = token\n * subtype = token\n */\nconst mediaTypeRE = /^[!#$%&'*+.^\\w|~-]+\\/[!#$%&'*+.^\\w|~-]+$/u\n\n// default ContentType to prevent repeated object creation\nconst defaultContentType = { type: '', parameters: new NullObject() }\nObject.freeze(defaultContentType.parameters)\nObject.freeze(defaultContentType)\n\n/**\n * Parse media type to object.\n *\n * @param {string|object} header\n * @return {Object}\n * @public\n */\n\nfunction parse (header) {\n if (typeof header !== 'string') {\n throw new TypeError('argument header is required and must be a string')\n }\n\n let index = header.indexOf(';')\n const type = index !== -1\n ? header.slice(0, index).trim()\n : header.trim()\n\n if (mediaTypeRE.test(type) === false) {\n throw new TypeError('invalid media type')\n }\n\n const result = {\n type: type.toLowerCase(),\n parameters: new NullObject()\n }\n\n // parse parameters\n if (index === -1) {\n return result\n }\n\n let key\n let match\n let value\n\n paramRE.lastIndex = index\n\n while ((match = paramRE.exec(header))) {\n if (match.index !== index) {\n throw new TypeError('invalid parameter format')\n }\n\n index += match[0].length\n key = match[1].toLowerCase()\n value = match[2]\n\n if (value[0] === '\"') {\n // remove quotes and escapes\n value = value\n .slice(1, value.length - 1)\n\n quotedPairRE.test(value) && (value = value.replace(quotedPairRE, '$1'))\n }\n\n result.parameters[key] = value\n }\n\n if (index !== header.length) {\n throw new TypeError('invalid parameter format')\n }\n\n return result\n}\n\nfunction safeParse (header) {\n if (typeof header !== 'string') {\n return defaultContentType\n }\n\n let index = header.indexOf(';')\n const type = index !== -1\n ? header.slice(0, index).trim()\n : header.trim()\n\n if (mediaTypeRE.test(type) === false) {\n return defaultContentType\n }\n\n const result = {\n type: type.toLowerCase(),\n parameters: new NullObject()\n }\n\n // parse parameters\n if (index === -1) {\n return result\n }\n\n let key\n let match\n let value\n\n paramRE.lastIndex = index\n\n while ((match = paramRE.exec(header))) {\n if (match.index !== index) {\n return defaultContentType\n }\n\n index += match[0].length\n key = match[1].toLowerCase()\n value = match[2]\n\n if (value[0] === '\"') {\n // remove quotes and escapes\n value = value\n .slice(1, value.length - 1)\n\n quotedPairRE.test(value) && (value = value.replace(quotedPairRE, '$1'))\n }\n\n result.parameters[key] = value\n }\n\n if (index !== header.length) {\n return defaultContentType\n }\n\n return result\n}\n\nmodule.exports.default = { parse, safeParse }\nmodule.exports.parse = parse\nmodule.exports.safeParse = safeParse\nmodule.exports.defaultContentType = defaultContentType\n","export function getUserAgent() {\n if (typeof navigator === \"object\" && \"userAgent\" in navigator) {\n return navigator.userAgent;\n }\n\n if (typeof process === \"object\" && process.version !== undefined) {\n return `Node.js/${process.version.substr(1)} (${process.platform}; ${\n process.arch\n })`;\n }\n\n return \"<environment undetectable>\";\n}\n","// @ts-check\n\nexport function register(state, name, method, options) {\n if (typeof method !== \"function\") {\n throw new Error(\"method for before hook must be a function\");\n }\n\n if (!options) {\n options = {};\n }\n\n if (Array.isArray(name)) {\n return name.reverse().reduce((callback, name) => {\n return register.bind(null, state, name, callback, options);\n }, method)();\n }\n\n return Promise.resolve().then(() => {\n if (!state.registry[name]) {\n return method(options);\n }\n\n return state.registry[name].reduce((method, registered) => {\n return registered.hook.bind(null, method, options);\n }, method)();\n });\n}\n","// @ts-check\n\nexport function addHook(state, kind, name, hook) {\n const orig = hook;\n if (!state.registry[name]) {\n state.registry[name] = [];\n }\n\n if (kind === \"before\") {\n hook = (method, options) => {\n return Promise.resolve()\n .then(orig.bind(null, options))\n .then(method.bind(null, options));\n };\n }\n\n if (kind === \"after\") {\n hook = (method, options) => {\n let result;\n return Promise.resolve()\n .then(method.bind(null, options))\n .then((result_) => {\n result = result_;\n return orig(result, options);\n })\n .then(() => {\n return result;\n });\n };\n }\n\n if (kind === \"error\") {\n hook = (method, options) => {\n return Promise.resolve()\n .then(method.bind(null, options))\n .catch((error) => {\n return orig(error, options);\n });\n };\n }\n\n state.registry[name].push({\n hook: hook,\n orig: orig,\n });\n}\n","// @ts-check\n\nexport function removeHook(state, name, method) {\n if (!state.registry[name]) {\n return;\n }\n\n const index = state.registry[name]\n .map((registered) => {\n return registered.orig;\n })\n .indexOf(method);\n\n if (index === -1) {\n return;\n }\n\n state.registry[name].splice(index, 1);\n}\n","// @ts-check\n\nimport { register } from \"./lib/register.js\";\nimport { addHook } from \"./lib/add.js\";\nimport { removeHook } from \"./lib/remove.js\";\n\n// bind with array of arguments: https://stackoverflow.com/a/21792913\nconst bind = Function.bind;\nconst bindable = bind.bind(bind);\n\nfunction bindApi(hook, state, name) {\n const removeHookRef = bindable(removeHook, null).apply(\n null,\n name ? [state, name] : [state]\n );\n hook.api = { remove: removeHookRef };\n hook.remove = removeHookRef;\n [\"before\", \"error\", \"after\", \"wrap\"].forEach((kind) => {\n const args = name ? [state, kind, name] : [state, kind];\n hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args);\n });\n}\n\nfunction Singular() {\n const singularHookName = Symbol(\"Singular\");\n const singularHookState = {\n registry: {},\n };\n const singularHook = register.bind(null, singularHookState, singularHookName);\n bindApi(singularHook, singularHookState, singularHookName);\n return singularHook;\n}\n\nfunction Collection() {\n const state = {\n registry: {},\n };\n\n const hook = register.bind(null, state);\n bindApi(hook, state);\n\n return hook;\n}\n\nexport default { Singular, Collection };\n","// pkg/dist-src/defaults.js\nimport { getUserAgent } from \"universal-user-agent\";\n\n// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/defaults.js\nvar userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\nvar DEFAULTS = {\n method: \"GET\",\n baseUrl: \"https://api.github.com\",\n headers: {\n accept: \"application/vnd.github.v3+json\",\n \"user-agent\": userAgent\n },\n mediaType: {\n format: \"\"\n }\n};\n\n// pkg/dist-src/util/lowercase-keys.js\nfunction lowercaseKeys(object) {\n if (!object) {\n return {};\n }\n return Object.keys(object).reduce((newObj, key) => {\n newObj[key.toLowerCase()] = object[key];\n return newObj;\n }, {});\n}\n\n// pkg/dist-src/util/is-plain-object.js\nfunction isPlainObject(value) {\n if (typeof value !== \"object\" || value === null) return false;\n if (Object.prototype.toString.call(value) !== \"[object Object]\") return false;\n const proto = Object.getPrototypeOf(value);\n if (proto === null) return true;\n const Ctor = Object.prototype.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);\n}\n\n// pkg/dist-src/util/merge-deep.js\nfunction mergeDeep(defaults, options) {\n const result = Object.assign({}, defaults);\n Object.keys(options).forEach((key) => {\n if (isPlainObject(options[key])) {\n if (!(key in defaults)) Object.assign(result, { [key]: options[key] });\n else result[key] = mergeDeep(defaults[key], options[key]);\n } else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n\n// pkg/dist-src/util/remove-undefined-properties.js\nfunction removeUndefinedProperties(obj) {\n for (const key in obj) {\n if (obj[key] === void 0) {\n delete obj[key];\n }\n }\n return obj;\n}\n\n// pkg/dist-src/merge.js\nfunction merge(defaults, route, options) {\n if (typeof route === \"string\") {\n let [method, url] = route.split(\" \");\n options = Object.assign(url ? { method, url } : { url: method }, options);\n } else {\n options = Object.assign({}, route);\n }\n options.headers = lowercaseKeys(options.headers);\n removeUndefinedProperties(options);\n removeUndefinedProperties(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n if (options.url === \"/graphql\") {\n if (defaults && defaults.mediaType.previews?.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews.filter(\n (preview) => !mergedOptions.mediaType.previews.includes(preview)\n ).concat(mergedOptions.mediaType.previews);\n }\n mergedOptions.mediaType.previews = (mergedOptions.mediaType.previews || []).map((preview) => preview.replace(/-preview/, \"\"));\n }\n return mergedOptions;\n}\n\n// pkg/dist-src/util/add-query-parameters.js\nfunction addQueryParameters(url, parameters) {\n const separator = /\\?/.test(url) ? \"&\" : \"?\";\n const names = Object.keys(parameters);\n if (names.length === 0) {\n return url;\n }\n return url + separator + names.map((name) => {\n if (name === \"q\") {\n return \"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\");\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n }).join(\"&\");\n}\n\n// pkg/dist-src/util/extract-url-variable-names.js\nvar urlVariableRegex = /\\{[^{}}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/(?:^\\W+)|(?:(?<!\\W)\\W+$)/g, \"\").split(/,/);\n}\nfunction extractUrlVariableNames(url) {\n const matches = url.match(urlVariableRegex);\n if (!matches) {\n return [];\n }\n return matches.map(removeNonChars).reduce((a, b) => a.concat(b), []);\n}\n\n// pkg/dist-src/util/omit.js\nfunction omit(object, keysToOmit) {\n const result = { __proto__: null };\n for (const key of Object.keys(object)) {\n if (keysToOmit.indexOf(key) === -1) {\n result[key] = object[key];\n }\n }\n return result;\n}\n\n// pkg/dist-src/util/url-template.js\nfunction encodeReserved(str) {\n return str.split(/(%[0-9A-Fa-f]{2})/g).map(function(part) {\n if (!/%[0-9A-Fa-f]/.test(part)) {\n part = encodeURI(part).replace(/%5B/g, \"[\").replace(/%5D/g, \"]\");\n }\n return part;\n }).join(\"\");\n}\nfunction encodeUnreserved(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function(c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\nfunction encodeValue(operator, value, key) {\n value = operator === \"+\" || operator === \"#\" ? encodeReserved(value) : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n } else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== void 0 && value !== null;\n}\nfunction isKeyOperator(operator) {\n return operator === \";\" || operator === \"&\" || operator === \"?\";\n}\nfunction getValues(context, operator, key, modifier) {\n var value = context[key], result = [];\n if (isDefined(value) && value !== \"\") {\n if (typeof value === \"string\" || typeof value === \"number\" || typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(\n encodeValue(operator, value, isKeyOperator(operator) ? key : \"\")\n );\n } else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function(value2) {\n result.push(\n encodeValue(operator, value2, isKeyOperator(operator) ? key : \"\")\n );\n });\n } else {\n Object.keys(value).forEach(function(k) {\n if (isDefined(value[k])) {\n result.push(encodeValue(operator, value[k], k));\n }\n });\n }\n } else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function(value2) {\n tmp.push(encodeValue(operator, value2));\n });\n } else {\n Object.keys(value).forEach(function(k) {\n if (isDefined(value[k])) {\n tmp.push(encodeUnreserved(k));\n tmp.push(encodeValue(operator, value[k].toString()));\n }\n });\n }\n if (isKeyOperator(operator)) {\n result.push(encodeUnreserved(key) + \"=\" + tmp.join(\",\"));\n } else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n } else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n } else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n } else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nfunction parseUrl(template) {\n return {\n expand: expand.bind(null, template)\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n template = template.replace(\n /\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g,\n function(_, expression, literal) {\n if (expression) {\n let operator = \"\";\n const values = [];\n if (operators.indexOf(expression.charAt(0)) !== -1) {\n operator = expression.charAt(0);\n expression = expression.substr(1);\n }\n expression.split(/,/g).forEach(function(variable) {\n var tmp = /([^:\\*]*)(?::(\\d+)|(\\*))?/.exec(variable);\n values.push(getValues(context, operator, tmp[1], tmp[2] || tmp[3]));\n });\n if (operator && operator !== \"+\") {\n var separator = \",\";\n if (operator === \"?\") {\n separator = \"&\";\n } else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n } else {\n return values.join(\",\");\n }\n } else {\n return encodeReserved(literal);\n }\n }\n );\n if (template === \"/\") {\n return template;\n } else {\n return template.replace(/\\/$/, \"\");\n }\n}\n\n// pkg/dist-src/parse.js\nfunction parse(options) {\n let method = options.method.toUpperCase();\n let url = (options.url || \"/\").replace(/:([a-z]\\w+)/g, \"{$1}\");\n let headers = Object.assign({}, options.headers);\n let body;\n let parameters = omit(options, [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"mediaType\"\n ]);\n const urlVariableNames = extractUrlVariableNames(url);\n url = parseUrl(url).expand(parameters);\n if (!/^http/.test(url)) {\n url = options.baseUrl + url;\n }\n const omittedParameters = Object.keys(options).filter((option) => urlVariableNames.includes(option)).concat(\"baseUrl\");\n const remainingParameters = omit(parameters, omittedParameters);\n const isBinaryRequest = /application\\/octet-stream/i.test(headers.accept);\n if (!isBinaryRequest) {\n if (options.mediaType.format) {\n headers.accept = headers.accept.split(/,/).map(\n (format) => format.replace(\n /application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/,\n `application/vnd$1$2.${options.mediaType.format}`\n )\n ).join(\",\");\n }\n if (url.endsWith(\"/graphql\")) {\n if (options.mediaType.previews?.length) {\n const previewsFromAcceptHeader = headers.accept.match(/(?<![\\w-])[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader.concat(options.mediaType.previews).map((preview) => {\n const format = options.mediaType.format ? `.${options.mediaType.format}` : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n }).join(\",\");\n }\n }\n }\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n } else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n } else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n }\n }\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n return Object.assign(\n { method, url, headers },\n typeof body !== \"undefined\" ? { body } : null,\n options.request ? { request: options.request } : null\n );\n}\n\n// pkg/dist-src/endpoint-with-defaults.js\nfunction endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n\n// pkg/dist-src/with-defaults.js\nfunction withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS2 = merge(oldDefaults, newDefaults);\n const endpoint2 = endpointWithDefaults.bind(null, DEFAULTS2);\n return Object.assign(endpoint2, {\n DEFAULTS: DEFAULTS2,\n defaults: withDefaults.bind(null, DEFAULTS2),\n merge: merge.bind(null, DEFAULTS2),\n parse\n });\n}\n\n// pkg/dist-src/index.js\nvar endpoint = withDefaults(null, DEFAULTS);\nexport {\n endpoint\n};\n","class RequestError extends Error {\n name;\n /**\n * http status code\n */\n status;\n /**\n * Request options that lead to the error.\n */\n request;\n /**\n * Response object if a response was received\n */\n response;\n constructor(message, statusCode, options) {\n super(message);\n this.name = \"HttpError\";\n this.status = Number.parseInt(statusCode);\n if (Number.isNaN(this.status)) {\n this.status = 0;\n }\n if (\"response\" in options) {\n this.response = options.response;\n }\n const requestCopy = Object.assign({}, options.request);\n if (options.request.headers.authorization) {\n requestCopy.headers = Object.assign({}, options.request.headers, {\n authorization: options.request.headers.authorization.replace(\n /(?<! ) .*$/,\n \" [REDACTED]\"\n )\n });\n }\n requestCopy.url = requestCopy.url.replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\").replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n }\n}\nexport {\n RequestError\n};\n","// pkg/dist-src/index.js\nimport { endpoint } from \"@octokit/endpoint\";\n\n// pkg/dist-src/defaults.js\nimport { getUserAgent } from \"universal-user-agent\";\n\n// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/defaults.js\nvar defaults_default = {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${getUserAgent()}`\n }\n};\n\n// pkg/dist-src/fetch-wrapper.js\nimport { safeParse } from \"fast-content-type-parse\";\n\n// pkg/dist-src/is-plain-object.js\nfunction isPlainObject(value) {\n if (typeof value !== \"object\" || value === null) return false;\n if (Object.prototype.toString.call(value) !== \"[object Object]\") return false;\n const proto = Object.getPrototypeOf(value);\n if (proto === null) return true;\n const Ctor = Object.prototype.hasOwnProperty.call(proto, \"constructor\") && proto.constructor;\n return typeof Ctor === \"function\" && Ctor instanceof Ctor && Function.prototype.call(Ctor) === Function.prototype.call(value);\n}\n\n// pkg/dist-src/fetch-wrapper.js\nimport { RequestError } from \"@octokit/request-error\";\nasync function fetchWrapper(requestOptions) {\n const fetch = requestOptions.request?.fetch || globalThis.fetch;\n if (!fetch) {\n throw new Error(\n \"fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing\"\n );\n }\n const log = requestOptions.request?.log || console;\n const parseSuccessResponseBody = requestOptions.request?.parseSuccessResponseBody !== false;\n const body = isPlainObject(requestOptions.body) || Array.isArray(requestOptions.body) ? JSON.stringify(requestOptions.body) : requestOptions.body;\n const requestHeaders = Object.fromEntries(\n Object.entries(requestOptions.headers).map(([name, value]) => [\n name,\n String(value)\n ])\n );\n let fetchResponse;\n try {\n fetchResponse = await fetch(requestOptions.url, {\n method: requestOptions.method,\n body,\n redirect: requestOptions.request?.redirect,\n headers: requestHeaders,\n signal: requestOptions.request?.signal,\n // duplex must be set if request.body is ReadableStream or Async Iterables.\n // See https://fetch.spec.whatwg.org/#dom-requestinit-duplex.\n ...requestOptions.body && { duplex: \"half\" }\n });\n } catch (error) {\n let message = \"Unknown Error\";\n if (error instanceof Error) {\n if (error.name === \"AbortError\") {\n error.status = 500;\n throw error;\n }\n message = error.message;\n if (error.name === \"TypeError\" && \"cause\" in error) {\n if (error.cause instanceof Error) {\n message = error.cause.message;\n } else if (typeof error.cause === \"string\") {\n message = error.cause;\n }\n }\n }\n const requestError = new RequestError(message, 500, {\n request: requestOptions\n });\n requestError.cause = error;\n throw requestError;\n }\n const status = fetchResponse.status;\n const url = fetchResponse.url;\n const responseHeaders = {};\n for (const [key, value] of fetchResponse.headers) {\n responseHeaders[key] = value;\n }\n const octokitResponse = {\n url,\n status,\n headers: responseHeaders,\n data: \"\"\n };\n if (\"deprecation\" in responseHeaders) {\n const matches = responseHeaders.link && responseHeaders.link.match(/<([^<>]+)>; rel=\"deprecation\"/);\n const deprecationLink = matches && matches.pop();\n log.warn(\n `[@octokit/request] \"${requestOptions.method} ${requestOptions.url}\" is deprecated. It is scheduled to be removed on ${responseHeaders.sunset}${deprecationLink ? `. See ${deprecationLink}` : \"\"}`\n );\n }\n if (status === 204 || status === 205) {\n return octokitResponse;\n }\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return octokitResponse;\n }\n throw new RequestError(fetchResponse.statusText, status, {\n response: octokitResponse,\n request: requestOptions\n });\n }\n if (status === 304) {\n octokitResponse.data = await getResponseData(fetchResponse);\n throw new RequestError(\"Not modified\", status, {\n response: octokitResponse,\n request: requestOptions\n });\n }\n if (status >= 400) {\n octokitResponse.data = await getResponseData(fetchResponse);\n throw new RequestError(toErrorMessage(octokitResponse.data), status, {\n response: octokitResponse,\n request: requestOptions\n });\n }\n octokitResponse.data = parseSuccessResponseBody ? await getResponseData(fetchResponse) : fetchResponse.body;\n return octokitResponse;\n}\nasync function getResponseData(response) {\n const contentType = response.headers.get(\"content-type\");\n if (!contentType) {\n return response.text().catch(() => \"\");\n }\n const mimetype = safeParse(contentType);\n if (isJSONResponse(mimetype)) {\n let text = \"\";\n try {\n text = await response.text();\n return JSON.parse(text);\n } catch (err) {\n return text;\n }\n } else if (mimetype.type.startsWith(\"text/\") || mimetype.parameters.charset?.toLowerCase() === \"utf-8\") {\n return response.text().catch(() => \"\");\n } else {\n return response.arrayBuffer().catch(() => new ArrayBuffer(0));\n }\n}\nfunction isJSONResponse(mimetype) {\n return mimetype.type === \"application/json\" || mimetype.type === \"application/scim+json\";\n}\nfunction toErrorMessage(data) {\n if (typeof data === \"string\") {\n return data;\n }\n if (data instanceof ArrayBuffer) {\n return \"Unknown error\";\n }\n if (\"message\" in data) {\n const suffix = \"documentation_url\" in data ? ` - ${data.documentation_url}` : \"\";\n return Array.isArray(data.errors) ? `${data.message}: ${data.errors.map((v) => JSON.stringify(v)).join(\", \")}${suffix}` : `${data.message}${suffix}`;\n }\n return `Unknown error: ${JSON.stringify(data)}`;\n}\n\n// pkg/dist-src/with-defaults.js\nfunction withDefaults(oldEndpoint, newDefaults) {\n const endpoint2 = oldEndpoint.defaults(newDefaults);\n const newApi = function(route, parameters) {\n const endpointOptions = endpoint2.merge(route, parameters);\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint2.parse(endpointOptions));\n }\n const request2 = (route2, parameters2) => {\n return fetchWrapper(\n endpoint2.parse(endpoint2.merge(route2, parameters2))\n );\n };\n Object.assign(request2, {\n endpoint: endpoint2,\n defaults: withDefaults.bind(null, endpoint2)\n });\n return endpointOptions.request.hook(request2, endpointOptions);\n };\n return Object.assign(newApi, {\n endpoint: endpoint2,\n defaults: withDefaults.bind(null, endpoint2)\n });\n}\n\n// pkg/dist-src/index.js\nvar request = withDefaults(endpoint, defaults_default);\nexport {\n request\n};\n","// pkg/dist-src/index.js\nimport { request } from \"@octokit/request\";\nimport { getUserAgent } from \"universal-user-agent\";\n\n// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/with-defaults.js\nimport { request as Request2 } from \"@octokit/request\";\n\n// pkg/dist-src/graphql.js\nimport { request as Request } from \"@octokit/request\";\n\n// pkg/dist-src/error.js\nfunction _buildMessageForResponseErrors(data) {\n return `Request failed due to following response errors:\n` + data.errors.map((e) => ` - ${e.message}`).join(\"\\n\");\n}\nvar GraphqlResponseError = class extends Error {\n constructor(request2, headers, response) {\n super(_buildMessageForResponseErrors(response));\n this.request = request2;\n this.headers = headers;\n this.response = response;\n this.errors = response.errors;\n this.data = response.data;\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n }\n name = \"GraphqlResponseError\";\n errors;\n data;\n};\n\n// pkg/dist-src/graphql.js\nvar NON_VARIABLE_OPTIONS = [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"query\",\n \"mediaType\",\n \"operationName\"\n];\nvar FORBIDDEN_VARIABLE_OPTIONS = [\"query\", \"method\", \"url\"];\nvar GHES_V3_SUFFIX_REGEX = /\\/api\\/v3\\/?$/;\nfunction graphql(request2, query, options) {\n if (options) {\n if (typeof query === \"string\" && \"query\" in options) {\n return Promise.reject(\n new Error(`[@octokit/graphql] \"query\" cannot be used as variable name`)\n );\n }\n for (const key in options) {\n if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key)) continue;\n return Promise.reject(\n new Error(\n `[@octokit/graphql] \"${key}\" cannot be used as variable name`\n )\n );\n }\n }\n const parsedOptions = typeof query === \"string\" ? Object.assign({ query }, options) : query;\n const requestOptions = Object.keys(\n parsedOptions\n ).reduce((result, key) => {\n if (NON_VARIABLE_OPTIONS.includes(key)) {\n result[key] = parsedOptions[key];\n return result;\n }\n if (!result.variables) {\n result.variables = {};\n }\n result.variables[key] = parsedOptions[key];\n return result;\n }, {});\n const baseUrl = parsedOptions.baseUrl || request2.endpoint.DEFAULTS.baseUrl;\n if (GHES_V3_SUFFIX_REGEX.test(baseUrl)) {\n requestOptions.url = baseUrl.replace(GHES_V3_SUFFIX_REGEX, \"/api/graphql\");\n }\n return request2(requestOptions).then((response) => {\n if (response.data.errors) {\n const headers = {};\n for (const key of Object.keys(response.headers)) {\n headers[key] = response.headers[key];\n }\n throw new GraphqlResponseError(\n requestOptions,\n headers,\n response.data\n );\n }\n return response.data.data;\n });\n}\n\n// pkg/dist-src/with-defaults.js\nfunction withDefaults(request2, newDefaults) {\n const newRequest = request2.defaults(newDefaults);\n const newApi = (query, options) => {\n return graphql(newRequest, query, options);\n };\n return Object.assign(newApi, {\n defaults: withDefaults.bind(null, newRequest),\n endpoint: newRequest.endpoint\n });\n}\n\n// pkg/dist-src/index.js\nvar graphql2 = withDefaults(request, {\n headers: {\n \"user-agent\": `octokit-graphql.js/${VERSION} ${getUserAgent()}`\n },\n method: \"POST\",\n url: \"/graphql\"\n});\nfunction withCustomRequest(customRequest) {\n return withDefaults(customRequest, {\n method: \"POST\",\n url: \"/graphql\"\n });\n}\nexport {\n GraphqlResponseError,\n graphql2 as graphql,\n withCustomRequest\n};\n","// pkg/dist-src/is-jwt.js\nvar b64url = \"(?:[a-zA-Z0-9_-]+)\";\nvar sep = \"\\\\.\";\nvar jwtRE = new RegExp(`^${b64url}${sep}${b64url}${sep}${b64url}$`);\nvar isJWT = jwtRE.test.bind(jwtRE);\n\n// pkg/dist-src/auth.js\nasync function auth(token) {\n const isApp = isJWT(token);\n const isInstallation = token.startsWith(\"v1.\") || token.startsWith(\"ghs_\");\n const isUserToServer = token.startsWith(\"ghu_\");\n const tokenType = isApp ? \"app\" : isInstallation ? \"installation\" : isUserToServer ? \"user-to-server\" : \"oauth\";\n return {\n type: \"token\",\n token,\n tokenType\n };\n}\n\n// pkg/dist-src/with-authorization-prefix.js\nfunction withAuthorizationPrefix(token) {\n if (token.split(/\\./).length === 3) {\n return `bearer ${token}`;\n }\n return `token ${token}`;\n}\n\n// pkg/dist-src/hook.js\nasync function hook(token, request, route, parameters) {\n const endpoint = request.endpoint.merge(\n route,\n parameters\n );\n endpoint.headers.authorization = withAuthorizationPrefix(token);\n return request(endpoint);\n}\n\n// pkg/dist-src/index.js\nvar createTokenAuth = function createTokenAuth2(token) {\n if (!token) {\n throw new Error(\"[@octokit/auth-token] No token passed to createTokenAuth\");\n }\n if (typeof token !== \"string\") {\n throw new Error(\n \"[@octokit/auth-token] Token passed to createTokenAuth is not a string\"\n );\n }\n token = token.replace(/^(token|bearer) +/i, \"\");\n return Object.assign(auth.bind(null, token), {\n hook: hook.bind(null, token)\n });\n};\nexport {\n createTokenAuth\n};\n","const VERSION = \"6.1.4\";\nexport {\n VERSION\n};\n","import { getUserAgent } from \"universal-user-agent\";\nimport Hook from \"before-after-hook\";\nimport { request } from \"@octokit/request\";\nimport { withCustomRequest } from \"@octokit/graphql\";\nimport { createTokenAuth } from \"@octokit/auth-token\";\nimport { VERSION } from \"./version.js\";\nconst noop = () => {\n};\nconst consoleWarn = console.warn.bind(console);\nconst consoleError = console.error.bind(console);\nconst userAgentTrail = `octokit-core.js/${VERSION} ${getUserAgent()}`;\nclass Octokit {\n static VERSION = VERSION;\n static defaults(defaults) {\n const OctokitWithDefaults = class extends this {\n constructor(...args) {\n const options = args[0] || {};\n if (typeof defaults === \"function\") {\n super(defaults(options));\n return;\n }\n super(\n Object.assign(\n {},\n defaults,\n options,\n options.userAgent && defaults.userAgent ? {\n userAgent: `${options.userAgent} ${defaults.userAgent}`\n } : null\n )\n );\n }\n };\n return OctokitWithDefaults;\n }\n static plugins = [];\n /**\n * Attach a plugin (or many) to your Octokit instance.\n *\n * @example\n * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...)\n */\n static plugin(...newPlugins) {\n const currentPlugins = this.plugins;\n const NewOctokit = class extends this {\n static plugins = currentPlugins.concat(\n newPlugins.filter((plugin) => !currentPlugins.includes(plugin))\n );\n };\n return NewOctokit;\n }\n constructor(options = {}) {\n const hook = new Hook.Collection();\n const requestDefaults = {\n baseUrl: request.endpoint.DEFAULTS.baseUrl,\n headers: {},\n request: Object.assign({}, options.request, {\n // @ts-ignore internal usage only, no need to type\n hook: hook.bind(null, \"request\")\n }),\n mediaType: {\n previews: [],\n format: \"\"\n }\n };\n requestDefaults.headers[\"user-agent\"] = options.userAgent ? `${options.userAgent} ${userAgentTrail}` : userAgentTrail;\n if (options.baseUrl) {\n requestDefaults.baseUrl = options.baseUrl;\n }\n if (options.previews) {\n requestDefaults.mediaType.previews = options.previews;\n }\n if (options.timeZone) {\n requestDefaults.headers[\"time-zone\"] = options.timeZone;\n }\n this.request = request.defaults(requestDefaults);\n this.graphql = withCustomRequest(this.request).defaults(requestDefaults);\n this.log = Object.assign(\n {\n debug: noop,\n info: noop,\n warn: consoleWarn,\n error: consoleError\n },\n options.log\n );\n this.hook = hook;\n if (!options.authStrategy) {\n if (!options.auth) {\n this.auth = async () => ({\n type: \"unauthenticated\"\n });\n } else {\n const auth = createTokenAuth(options.auth);\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n } else {\n const { authStrategy, ...otherOptions } = options;\n const auth = authStrategy(\n Object.assign(\n {\n request: this.request,\n log: this.log,\n // we pass the current octokit instance as well as its constructor options\n // to allow for authentication strategies that return a new octokit instance\n // that shares the same internal state as the current one. The original\n // requirement for this was the \"event-octokit\" authentication strategy\n // of https://github.com/probot/octokit-auth-probot.\n octokit: this,\n octokitOptions: otherOptions\n },\n options.auth\n )\n );\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n const classConstructor = this.constructor;\n for (let i = 0; i < classConstructor.plugins.length; ++i) {\n Object.assign(this, classConstructor.plugins[i](this, options));\n }\n }\n // assigned during constructor\n request;\n graphql;\n log;\n hook;\n // TODO: type `octokit.auth` based on passed options.authStrategy\n auth;\n}\nexport {\n Octokit\n};\n","import { VERSION } from \"./version.js\";\nfunction requestLog(octokit) {\n octokit.hook.wrap(\"request\", (request, options) => {\n octokit.log.debug(\"request\", options);\n const start = Date.now();\n const requestOptions = octokit.request.endpoint.parse(options);\n const path = requestOptions.url.replace(options.baseUrl, \"\");\n return request(options).then((response) => {\n const requestId = response.headers[\"x-github-request-id\"];\n octokit.log.info(\n `${requestOptions.method} ${path} - ${response.status} with id ${requestId} in ${Date.now() - start}ms`\n );\n return response;\n }).catch((error) => {\n const requestId = error.response?.headers[\"x-github-request-id\"] || \"UNKNOWN\";\n octokit.log.error(\n `${requestOptions.method} ${path} - ${error.status} with id ${requestId} in ${Date.now() - start}ms`\n );\n throw error;\n });\n });\n}\nrequestLog.VERSION = VERSION;\nexport {\n requestLog\n};\n","// pkg/dist-src/version.js\nvar VERSION = \"0.0.0-development\";\n\n// pkg/dist-src/normalize-paginated-list-response.js\nfunction normalizePaginatedListResponse(response) {\n if (!response.data) {\n return {\n ...response,\n data: []\n };\n }\n const responseNeedsNormalization = \"total_count\" in response.data && !(\"url\" in response.data);\n if (!responseNeedsNormalization) return response;\n const incompleteResults = response.data.incomplete_results;\n const repositorySelection = response.data.repository_selection;\n const totalCount = response.data.total_count;\n delete response.data.incomplete_results;\n delete response.data.repository_selection;\n delete response.data.total_count;\n const namespaceKey = Object.keys(response.data)[0];\n const data = response.data[namespaceKey];\n response.data = data;\n if (typeof incompleteResults !== \"undefined\") {\n response.data.incomplete_results = incompleteResults;\n }\n if (typeof repositorySelection !== \"undefined\") {\n response.data.repository_selection = repositorySelection;\n }\n response.data.total_count = totalCount;\n return response;\n}\n\n// pkg/dist-src/iterator.js\nfunction iterator(octokit, route, parameters) {\n const options = typeof route === \"function\" ? route.endpoint(parameters) : octokit.request.endpoint(route, parameters);\n const requestMethod = typeof route === \"function\" ? route : octokit.request;\n const method = options.method;\n const headers = options.headers;\n let url = options.url;\n return {\n [Symbol.asyncIterator]: () => ({\n async next() {\n if (!url) return { done: true };\n try {\n const response = await requestMethod({ method, url, headers });\n const normalizedResponse = normalizePaginatedListResponse(response);\n url = ((normalizedResponse.headers.link || \"\").match(\n /<([^<>]+)>;\\s*rel=\"next\"/\n ) || [])[1];\n return { value: normalizedResponse };\n } catch (error) {\n if (error.status !== 409) throw error;\n url = \"\";\n return {\n value: {\n status: 200,\n headers: {},\n data: []\n }\n };\n }\n }\n })\n };\n}\n\n// pkg/dist-src/paginate.js\nfunction paginate(octokit, route, parameters, mapFn) {\n if (typeof parameters === \"function\") {\n mapFn = parameters;\n parameters = void 0;\n }\n return gather(\n octokit,\n [],\n iterator(octokit, route, parameters)[Symbol.asyncIterator](),\n mapFn\n );\n}\nfunction gather(octokit, results, iterator2, mapFn) {\n return iterator2.next().then((result) => {\n if (result.done) {\n return results;\n }\n let earlyExit = false;\n function done() {\n earlyExit = true;\n }\n results = results.concat(\n mapFn ? mapFn(result.value, done) : result.value.data\n );\n if (earlyExit) {\n return results;\n }\n return gather(octokit, results, iterator2, mapFn);\n });\n}\n\n// pkg/dist-src/compose-paginate.js\nvar composePaginateRest = Object.assign(paginate, {\n iterator\n});\n\n// pkg/dist-src/generated/paginating-endpoints.js\nvar paginatingEndpoints = [\n \"GET /advisories\",\n \"GET /app/hook/deliveries\",\n \"GET /app/installation-requests\",\n \"GET /app/installations\",\n \"GET /assignments/{assignment_id}/accepted_assignments\",\n \"GET /classrooms\",\n \"GET /classrooms/{classroom_id}/assignments\",\n \"GET /enterprises/{enterprise}/code-security/configurations\",\n \"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories\",\n \"GET /enterprises/{enterprise}/dependabot/alerts\",\n \"GET /enterprises/{enterprise}/secret-scanning/alerts\",\n \"GET /events\",\n \"GET /gists\",\n \"GET /gists/public\",\n \"GET /gists/starred\",\n \"GET /gists/{gist_id}/comments\",\n \"GET /gists/{gist_id}/commits\",\n \"GET /gists/{gist_id}/forks\",\n \"GET /installation/repositories\",\n \"GET /issues\",\n \"GET /licenses\",\n \"GET /marketplace_listing/plans\",\n \"GET /marketplace_listing/plans/{plan_id}/accounts\",\n \"GET /marketplace_listing/stubbed/plans\",\n \"GET /marketplace_listing/stubbed/plans/{plan_id}/accounts\",\n \"GET /networks/{owner}/{repo}/events\",\n \"GET /notifications\",\n \"GET /organizations\",\n \"GET /orgs/{org}/actions/cache/usage-by-repository\",\n \"GET /orgs/{org}/actions/permissions/repositories\",\n \"GET /orgs/{org}/actions/runner-groups\",\n \"GET /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories\",\n \"GET /orgs/{org}/actions/runner-groups/{runner_group_id}/runners\",\n \"GET /orgs/{org}/actions/runners\",\n \"GET /orgs/{org}/actions/secrets\",\n \"GET /orgs/{org}/actions/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/actions/variables\",\n \"GET /orgs/{org}/actions/variables/{name}/repositories\",\n \"GET /orgs/{org}/attestations/{subject_digest}\",\n \"GET /orgs/{org}/blocks\",\n \"GET /orgs/{org}/code-scanning/alerts\",\n \"GET /orgs/{org}/code-security/configurations\",\n \"GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories\",\n \"GET /orgs/{org}/codespaces\",\n \"GET /orgs/{org}/codespaces/secrets\",\n \"GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/copilot/billing/seats\",\n \"GET /orgs/{org}/copilot/metrics\",\n \"GET /orgs/{org}/copilot/usage\",\n \"GET /orgs/{org}/dependabot/alerts\",\n \"GET /orgs/{org}/dependabot/secrets\",\n \"GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/events\",\n \"GET /orgs/{org}/failed_invitations\",\n \"GET /orgs/{org}/hooks\",\n \"GET /orgs/{org}/hooks/{hook_id}/deliveries\",\n \"GET /orgs/{org}/insights/api/route-stats/{actor_type}/{actor_id}\",\n \"GET /orgs/{org}/insights/api/subject-stats\",\n \"GET /orgs/{org}/insights/api/user-stats/{user_id}\",\n \"GET /orgs/{org}/installations\",\n \"GET /orgs/{org}/invitations\",\n \"GET /orgs/{org}/invitations/{invitation_id}/teams\",\n \"GET /orgs/{org}/issues\",\n \"GET /orgs/{org}/members\",\n \"GET /orgs/{org}/members/{username}/codespaces\",\n \"GET /orgs/{org}/migrations\",\n \"GET /orgs/{org}/migrations/{migration_id}/repositories\",\n \"GET /orgs/{org}/organization-roles/{role_id}/teams\",\n \"GET /orgs/{org}/organization-roles/{role_id}/users\",\n \"GET /orgs/{org}/outside_collaborators\",\n \"GET /orgs/{org}/packages\",\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions\",\n \"GET /orgs/{org}/personal-access-token-requests\",\n \"GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories\",\n \"GET /orgs/{org}/personal-access-tokens\",\n \"GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories\",\n \"GET /orgs/{org}/private-registries\",\n \"GET /orgs/{org}/projects\",\n \"GET /orgs/{org}/properties/values\",\n \"GET /orgs/{org}/public_members\",\n \"GET /orgs/{org}/repos\",\n \"GET /orgs/{org}/rulesets\",\n \"GET /orgs/{org}/rulesets/rule-suites\",\n \"GET /orgs/{org}/secret-scanning/alerts\",\n \"GET /orgs/{org}/security-advisories\",\n \"GET /orgs/{org}/team/{team_slug}/copilot/metrics\",\n \"GET /orgs/{org}/team/{team_slug}/copilot/usage\",\n \"GET /orgs/{org}/teams\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\",\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\",\n \"GET /orgs/{org}/teams/{team_slug}/invitations\",\n \"GET /orgs/{org}/teams/{team_slug}/members\",\n \"GET /orgs/{org}/teams/{team_slug}/projects\",\n \"GET /orgs/{org}/teams/{team_slug}/repos\",\n \"GET /orgs/{org}/teams/{team_slug}/teams\",\n \"GET /projects/columns/{column_id}/cards\",\n \"GET /projects/{project_id}/collaborators\",\n \"GET /projects/{project_id}/columns\",\n \"GET /repos/{owner}/{repo}/actions/artifacts\",\n \"GET /repos/{owner}/{repo}/actions/caches\",\n \"GET /repos/{owner}/{repo}/actions/organization-secrets\",\n \"GET /repos/{owner}/{repo}/actions/organization-variables\",\n \"GET /repos/{owner}/{repo}/actions/runners\",\n \"GET /repos/{owner}/{repo}/actions/runs\",\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts\",\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs\",\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs\",\n \"GET /repos/{owner}/{repo}/actions/secrets\",\n \"GET /repos/{owner}/{repo}/actions/variables\",\n \"GET /repos/{owner}/{repo}/actions/workflows\",\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\",\n \"GET /repos/{owner}/{repo}/activity\",\n \"GET /repos/{owner}/{repo}/assignees\",\n \"GET /repos/{owner}/{repo}/attestations/{subject_digest}\",\n \"GET /repos/{owner}/{repo}/branches\",\n \"GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations\",\n \"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs\",\n \"GET /repos/{owner}/{repo}/code-scanning/alerts\",\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances\",\n \"GET /repos/{owner}/{repo}/code-scanning/analyses\",\n \"GET /repos/{owner}/{repo}/codespaces\",\n \"GET /repos/{owner}/{repo}/codespaces/devcontainers\",\n \"GET /repos/{owner}/{repo}/codespaces/secrets\",\n \"GET /repos/{owner}/{repo}/collaborators\",\n \"GET /repos/{owner}/{repo}/comments\",\n \"GET /repos/{owner}/{repo}/comments/{comment_id}/reactions\",\n \"GET /repos/{owner}/{repo}/commits\",\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/comments\",\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/check-runs\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/check-suites\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/status\",\n \"GET /repos/{owner}/{repo}/commits/{ref}/statuses\",\n \"GET /repos/{owner}/{repo}/contributors\",\n \"GET /repos/{owner}/{repo}/dependabot/alerts\",\n \"GET /repos/{owner}/{repo}/dependabot/secrets\",\n \"GET /repos/{owner}/{repo}/deployments\",\n \"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\",\n \"GET /repos/{owner}/{repo}/environments\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets\",\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/variables\",\n \"GET /repos/{owner}/{repo}/events\",\n \"GET /repos/{owner}/{repo}/forks\",\n \"GET /repos/{owner}/{repo}/hooks\",\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries\",\n \"GET /repos/{owner}/{repo}/invitations\",\n \"GET /repos/{owner}/{repo}/issues\",\n \"GET /repos/{owner}/{repo}/issues/comments\",\n \"GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\",\n \"GET /repos/{owner}/{repo}/issues/events\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/comments\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/events\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/labels\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/reactions\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues\",\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/timeline\",\n \"GET /repos/{owner}/{repo}/keys\",\n \"GET /repos/{owner}/{repo}/labels\",\n \"GET /repos/{owner}/{repo}/milestones\",\n \"GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels\",\n \"GET /repos/{owner}/{repo}/notifications\",\n \"GET /repos/{owner}/{repo}/pages/builds\",\n \"GET /repos/{owner}/{repo}/projects\",\n \"GET /repos/{owner}/{repo}/pulls\",\n \"GET /repos/{owner}/{repo}/pulls/comments\",\n \"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/comments\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/files\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews\",\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments\",\n \"GET /repos/{owner}/{repo}/releases\",\n \"GET /repos/{owner}/{repo}/releases/{release_id}/assets\",\n \"GET /repos/{owner}/{repo}/releases/{release_id}/reactions\",\n \"GET /repos/{owner}/{repo}/rules/branches/{branch}\",\n \"GET /repos/{owner}/{repo}/rulesets\",\n \"GET /repos/{owner}/{repo}/rulesets/rule-suites\",\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts\",\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations\",\n \"GET /repos/{owner}/{repo}/security-advisories\",\n \"GET /repos/{owner}/{repo}/stargazers\",\n \"GET /repos/{owner}/{repo}/subscribers\",\n \"GET /repos/{owner}/{repo}/tags\",\n \"GET /repos/{owner}/{repo}/teams\",\n \"GET /repos/{owner}/{repo}/topics\",\n \"GET /repositories\",\n \"GET /search/code\",\n \"GET /search/commits\",\n \"GET /search/issues\",\n \"GET /search/labels\",\n \"GET /search/repositories\",\n \"GET /search/topics\",\n \"GET /search/users\",\n \"GET /teams/{team_id}/discussions\",\n \"GET /teams/{team_id}/discussions/{discussion_number}/comments\",\n \"GET /teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactions\",\n \"GET /teams/{team_id}/discussions/{discussion_number}/reactions\",\n \"GET /teams/{team_id}/invitations\",\n \"GET /teams/{team_id}/members\",\n \"GET /teams/{team_id}/projects\",\n \"GET /teams/{team_id}/repos\",\n \"GET /teams/{team_id}/teams\",\n \"GET /user/blocks\",\n \"GET /user/codespaces\",\n \"GET /user/codespaces/secrets\",\n \"GET /user/emails\",\n \"GET /user/followers\",\n \"GET /user/following\",\n \"GET /user/gpg_keys\",\n \"GET /user/installations\",\n \"GET /user/installations/{installation_id}/repositories\",\n \"GET /user/issues\",\n \"GET /user/keys\",\n \"GET /user/marketplace_purchases\",\n \"GET /user/marketplace_purchases/stubbed\",\n \"GET /user/memberships/orgs\",\n \"GET /user/migrations\",\n \"GET /user/migrations/{migration_id}/repositories\",\n \"GET /user/orgs\",\n \"GET /user/packages\",\n \"GET /user/packages/{package_type}/{package_name}/versions\",\n \"GET /user/public_emails\",\n \"GET /user/repos\",\n \"GET /user/repository_invitations\",\n \"GET /user/social_accounts\",\n \"GET /user/ssh_signing_keys\",\n \"GET /user/starred\",\n \"GET /user/subscriptions\",\n \"GET /user/teams\",\n \"GET /users\",\n \"GET /users/{username}/attestations/{subject_digest}\",\n \"GET /users/{username}/events\",\n \"GET /users/{username}/events/orgs/{org}\",\n \"GET /users/{username}/events/public\",\n \"GET /users/{username}/followers\",\n \"GET /users/{username}/following\",\n \"GET /users/{username}/gists\",\n \"GET /users/{username}/gpg_keys\",\n \"GET /users/{username}/keys\",\n \"GET /users/{username}/orgs\",\n \"GET /users/{username}/packages\",\n \"GET /users/{username}/projects\",\n \"GET /users/{username}/received_events\",\n \"GET /users/{username}/received_events/public\",\n \"GET /users/{username}/repos\",\n \"GET /users/{username}/social_accounts\",\n \"GET /users/{username}/ssh_signing_keys\",\n \"GET /users/{username}/starred\",\n \"GET /users/{username}/subscriptions\"\n];\n\n// pkg/dist-src/paginating-endpoints.js\nfunction isPaginatingEndpoint(arg) {\n if (typeof arg === \"string\") {\n return paginatingEndpoints.includes(arg);\n } else {\n return false;\n }\n}\n\n// pkg/dist-src/index.js\nfunction paginateRest(octokit) {\n return {\n paginate: Object.assign(paginate.bind(null, octokit), {\n iterator: iterator.bind(null, octokit)\n })\n };\n}\npaginateRest.VERSION = VERSION;\nexport {\n composePaginateRest,\n isPaginatingEndpoint,\n paginateRest,\n paginatingEndpoints\n};\n","const VERSION = \"5.3.1\";\nexport {\n VERSION\n};\n","import ENDPOINTS from \"./generated/endpoints.js\";\nconst endpointMethodsMap = /* @__PURE__ */ new Map();\nfor (const [scope, endpoints] of Object.entries(ENDPOINTS)) {\n for (const [methodName, endpoint] of Object.entries(endpoints)) {\n const [route, defaults, decorations] = endpoint;\n const [method, url] = route.split(/ /);\n const endpointDefaults = Object.assign(\n {\n method,\n url\n },\n defaults\n );\n if (!endpointMethodsMap.has(scope)) {\n endpointMethodsMap.set(scope, /* @__PURE__ */ new Map());\n }\n endpointMethodsMap.get(scope).set(methodName, {\n scope,\n methodName,\n endpointDefaults,\n decorations\n });\n }\n}\nconst handler = {\n has({ scope }, methodName) {\n return endpointMethodsMap.get(scope).has(methodName);\n },\n getOwnPropertyDescriptor(target, methodName) {\n return {\n value: this.get(target, methodName),\n // ensures method is in the cache\n configurable: true,\n writable: true,\n enumerable: true\n };\n },\n defineProperty(target, methodName, descriptor) {\n Object.defineProperty(target.cache, methodName, descriptor);\n return true;\n },\n deleteProperty(target, methodName) {\n delete target.cache[methodName];\n return true;\n },\n ownKeys({ scope }) {\n return [...endpointMethodsMap.get(scope).keys()];\n },\n set(target, methodName, value) {\n return target.cache[methodName] = value;\n },\n get({ octokit, scope, cache }, methodName) {\n if (cache[methodName]) {\n return cache[methodName];\n }\n const method = endpointMethodsMap.get(scope).get(methodName);\n if (!method) {\n return void 0;\n }\n const { endpointDefaults, decorations } = method;\n if (decorations) {\n cache[methodName] = decorate(\n octokit,\n scope,\n methodName,\n endpointDefaults,\n decorations\n );\n } else {\n cache[methodName] = octokit.request.defaults(endpointDefaults);\n }\n return cache[methodName];\n }\n};\nfunction endpointsToMethods(octokit) {\n const newMethods = {};\n for (const scope of endpointMethodsMap.keys()) {\n newMethods[scope] = new Proxy({ octokit, scope, cache: {} }, handler);\n }\n return newMethods;\n}\nfunction decorate(octokit, scope, methodName, defaults, decorations) {\n const requestWithDefaults = octokit.request.defaults(defaults);\n function withDecorations(...args) {\n let options = requestWithDefaults.endpoint.merge(...args);\n if (decorations.mapToData) {\n options = Object.assign({}, options, {\n data: options[decorations.mapToData],\n [decorations.mapToData]: void 0\n });\n return requestWithDefaults(options);\n }\n if (decorations.renamed) {\n const [newScope, newMethodName] = decorations.renamed;\n octokit.log.warn(\n `octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`\n );\n }\n if (decorations.deprecated) {\n octokit.log.warn(decorations.deprecated);\n }\n if (decorations.renamedParameters) {\n const options2 = requestWithDefaults.endpoint.merge(...args);\n for (const [name, alias] of Object.entries(\n decorations.renamedParameters\n )) {\n if (name in options2) {\n octokit.log.warn(\n `\"${name}\" parameter is deprecated for \"octokit.${scope}.${methodName}()\". Use \"${alias}\" instead`\n );\n if (!(alias in options2)) {\n options2[alias] = options2[name];\n }\n delete options2[name];\n }\n }\n return requestWithDefaults(options2);\n }\n return requestWithDefaults(...args);\n }\n return Object.assign(withDecorations, requestWithDefaults);\n}\nexport {\n endpointsToMethods\n};\n//# sourceMappingURL=endpoints-to-methods.js.map\n","const Endpoints = {\n actions: {\n addCustomLabelsToSelfHostedRunnerForOrg: [\n \"POST /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n addCustomLabelsToSelfHostedRunnerForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n addRepoAccessToSelfHostedRunnerGroupInOrg: [\n \"PUT /orgs/{org}/actions/runner-groups/{runner_group_id}/repositories/{repository_id}\"\n ],\n addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n addSelectedRepoToOrgVariable: [\n \"PUT /orgs/{org}/actions/variables/{name}/repositories/{repository_id}\"\n ],\n approveWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/approve\"\n ],\n cancelWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/cancel\"\n ],\n createEnvironmentVariable: [\n \"POST /repos/{owner}/{repo}/environments/{environment_name}/variables\"\n ],\n createOrUpdateEnvironmentSecret: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}\"\n ],\n createOrUpdateOrgSecret: [\"PUT /orgs/{org}/actions/secrets/{secret_name}\"],\n createOrUpdateRepoSecret: [\n \"PUT /repos/{owner}/{repo}/actions/secrets/{secret_name}\"\n ],\n createOrgVariable: [\"POST /orgs/{org}/actions/variables\"],\n createRegistrationTokenForOrg: [\n \"POST /orgs/{org}/actions/runners/registration-token\"\n ],\n createRegistrationTokenForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/registration-token\"\n ],\n createRemoveTokenForOrg: [\"POST /orgs/{org}/actions/runners/remove-token\"],\n createRemoveTokenForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/remove-token\"\n ],\n createRepoVariable: [\"POST /repos/{owner}/{repo}/actions/variables\"],\n createWorkflowDispatch: [\n \"POST /repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches\"\n ],\n deleteActionsCacheById: [\n \"DELETE /repos/{owner}/{repo}/actions/caches/{cache_id}\"\n ],\n deleteActionsCacheByKey: [\n \"DELETE /repos/{owner}/{repo}/actions/caches{?key,ref}\"\n ],\n deleteArtifact: [\n \"DELETE /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"\n ],\n deleteEnvironmentSecret: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}\"\n ],\n deleteEnvironmentVariable: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}\"\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}\"],\n deleteOrgVariable: [\"DELETE /orgs/{org}/actions/variables/{name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/actions/secrets/{secret_name}\"\n ],\n deleteRepoVariable: [\n \"DELETE /repos/{owner}/{repo}/actions/variables/{name}\"\n ],\n deleteSelfHostedRunnerFromOrg: [\n \"DELETE /orgs/{org}/actions/runners/{runner_id}\"\n ],\n deleteSelfHostedRunnerFromRepo: [\n \"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}\"\n ],\n deleteWorkflowRun: [\"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n deleteWorkflowRunLogs: [\n \"DELETE /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"\n ],\n disableSelectedRepositoryGithubActionsOrganization: [\n \"DELETE /orgs/{org}/actions/permissions/repositories/{repository_id}\"\n ],\n disableWorkflow: [\n \"PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/disable\"\n ],\n downloadArtifact: [\n \"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}/{archive_format}\"\n ],\n downloadJobLogsForWorkflowRun: [\n \"GET /repos/{owner}/{repo}/actions/jobs/{job_id}/logs\"\n ],\n downloadWorkflowRunAttemptLogs: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/logs\"\n ],\n downloadWorkflowRunLogs: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/logs\"\n ],\n enableSelectedRepositoryGithubActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/repositories/{repository_id}\"\n ],\n enableWorkflow: [\n \"PUT /repos/{owner}/{repo}/actions/workflows/{workflow_id}/enable\"\n ],\n forceCancelWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/force-cancel\"\n ],\n generateRunnerJitconfigForOrg: [\n \"POST /orgs/{org}/actions/runners/generate-jitconfig\"\n ],\n generateRunnerJitconfigForRepo: [\n \"POST /repos/{owner}/{repo}/actions/runners/generate-jitconfig\"\n ],\n getActionsCacheList: [\"GET /repos/{owner}/{repo}/actions/caches\"],\n getActionsCacheUsage: [\"GET /repos/{owner}/{repo}/actions/cache/usage\"],\n getActionsCacheUsageByRepoForOrg: [\n \"GET /orgs/{org}/actions/cache/usage-by-repository\"\n ],\n getActionsCacheUsageForOrg: [\"GET /orgs/{org}/actions/cache/usage\"],\n getAllowedActionsOrganization: [\n \"GET /orgs/{org}/actions/permissions/selected-actions\"\n ],\n getAllowedActionsRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions/selected-actions\"\n ],\n getArtifact: [\"GET /repos/{owner}/{repo}/actions/artifacts/{artifact_id}\"],\n getCustomOidcSubClaimForRepo: [\n \"GET /repos/{owner}/{repo}/actions/oidc/customization/sub\"\n ],\n getEnvironmentPublicKey: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/public-key\"\n ],\n getEnvironmentSecret: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name}\"\n ],\n getEnvironmentVariable: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}\"\n ],\n getGithubActionsDefaultWorkflowPermissionsOrganization: [\n \"GET /orgs/{org}/actions/permissions/workflow\"\n ],\n getGithubActionsDefaultWorkflowPermissionsRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions/workflow\"\n ],\n getGithubActionsPermissionsOrganization: [\n \"GET /orgs/{org}/actions/permissions\"\n ],\n getGithubActionsPermissionsRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions\"\n ],\n getJobForWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/jobs/{job_id}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/actions/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/actions/secrets/{secret_name}\"],\n getOrgVariable: [\"GET /orgs/{org}/actions/variables/{name}\"],\n getPendingDeploymentsForRun: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments\"\n ],\n getRepoPermissions: [\n \"GET /repos/{owner}/{repo}/actions/permissions\",\n {},\n { renamed: [\"actions\", \"getGithubActionsPermissionsRepository\"] }\n ],\n getRepoPublicKey: [\"GET /repos/{owner}/{repo}/actions/secrets/public-key\"],\n getRepoSecret: [\"GET /repos/{owner}/{repo}/actions/secrets/{secret_name}\"],\n getRepoVariable: [\"GET /repos/{owner}/{repo}/actions/variables/{name}\"],\n getReviewsForRun: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/approvals\"\n ],\n getSelfHostedRunnerForOrg: [\"GET /orgs/{org}/actions/runners/{runner_id}\"],\n getSelfHostedRunnerForRepo: [\n \"GET /repos/{owner}/{repo}/actions/runners/{runner_id}\"\n ],\n getWorkflow: [\"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}\"],\n getWorkflowAccessToRepository: [\n \"GET /repos/{owner}/{repo}/actions/permissions/access\"\n ],\n getWorkflowRun: [\"GET /repos/{owner}/{repo}/actions/runs/{run_id}\"],\n getWorkflowRunAttempt: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}\"\n ],\n getWorkflowRunUsage: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/timing\"\n ],\n getWorkflowUsage: [\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/timing\"\n ],\n listArtifactsForRepo: [\"GET /repos/{owner}/{repo}/actions/artifacts\"],\n listEnvironmentSecrets: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/secrets\"\n ],\n listEnvironmentVariables: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/variables\"\n ],\n listJobsForWorkflowRun: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/jobs\"\n ],\n listJobsForWorkflowRunAttempt: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/attempts/{attempt_number}/jobs\"\n ],\n listLabelsForSelfHostedRunnerForOrg: [\n \"GET /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n listLabelsForSelfHostedRunnerForRepo: [\n \"GET /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n listOrgSecrets: [\"GET /orgs/{org}/actions/secrets\"],\n listOrgVariables: [\"GET /orgs/{org}/actions/variables\"],\n listRepoOrganizationSecrets: [\n \"GET /repos/{owner}/{repo}/actions/organization-secrets\"\n ],\n listRepoOrganizationVariables: [\n \"GET /repos/{owner}/{repo}/actions/organization-variables\"\n ],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/actions/secrets\"],\n listRepoVariables: [\"GET /repos/{owner}/{repo}/actions/variables\"],\n listRepoWorkflows: [\"GET /repos/{owner}/{repo}/actions/workflows\"],\n listRunnerApplicationsForOrg: [\"GET /orgs/{org}/actions/runners/downloads\"],\n listRunnerApplicationsForRepo: [\n \"GET /repos/{owner}/{repo}/actions/runners/downloads\"\n ],\n listSelectedReposForOrgSecret: [\n \"GET /orgs/{org}/actions/secrets/{secret_name}/repositories\"\n ],\n listSelectedReposForOrgVariable: [\n \"GET /orgs/{org}/actions/variables/{name}/repositories\"\n ],\n listSelectedRepositoriesEnabledGithubActionsOrganization: [\n \"GET /orgs/{org}/actions/permissions/repositories\"\n ],\n listSelfHostedRunnersForOrg: [\"GET /orgs/{org}/actions/runners\"],\n listSelfHostedRunnersForRepo: [\"GET /repos/{owner}/{repo}/actions/runners\"],\n listWorkflowRunArtifacts: [\n \"GET /repos/{owner}/{repo}/actions/runs/{run_id}/artifacts\"\n ],\n listWorkflowRuns: [\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\"\n ],\n listWorkflowRunsForRepo: [\"GET /repos/{owner}/{repo}/actions/runs\"],\n reRunJobForWorkflowRun: [\n \"POST /repos/{owner}/{repo}/actions/jobs/{job_id}/rerun\"\n ],\n reRunWorkflow: [\"POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun\"],\n reRunWorkflowFailedJobs: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/rerun-failed-jobs\"\n ],\n removeAllCustomLabelsFromSelfHostedRunnerForOrg: [\n \"DELETE /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n removeAllCustomLabelsFromSelfHostedRunnerForRepo: [\n \"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n removeCustomLabelFromSelfHostedRunnerForOrg: [\n \"DELETE /orgs/{org}/actions/runners/{runner_id}/labels/{name}\"\n ],\n removeCustomLabelFromSelfHostedRunnerForRepo: [\n \"DELETE /repos/{owner}/{repo}/actions/runners/{runner_id}/labels/{name}\"\n ],\n removeSelectedRepoFromOrgSecret: [\n \"DELETE /orgs/{org}/actions/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n removeSelectedRepoFromOrgVariable: [\n \"DELETE /orgs/{org}/actions/variables/{name}/repositories/{repository_id}\"\n ],\n reviewCustomGatesForRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/deployment_protection_rule\"\n ],\n reviewPendingDeploymentsForRun: [\n \"POST /repos/{owner}/{repo}/actions/runs/{run_id}/pending_deployments\"\n ],\n setAllowedActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/selected-actions\"\n ],\n setAllowedActionsRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/selected-actions\"\n ],\n setCustomLabelsForSelfHostedRunnerForOrg: [\n \"PUT /orgs/{org}/actions/runners/{runner_id}/labels\"\n ],\n setCustomLabelsForSelfHostedRunnerForRepo: [\n \"PUT /repos/{owner}/{repo}/actions/runners/{runner_id}/labels\"\n ],\n setCustomOidcSubClaimForRepo: [\n \"PUT /repos/{owner}/{repo}/actions/oidc/customization/sub\"\n ],\n setGithubActionsDefaultWorkflowPermissionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/workflow\"\n ],\n setGithubActionsDefaultWorkflowPermissionsRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/workflow\"\n ],\n setGithubActionsPermissionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions\"\n ],\n setGithubActionsPermissionsRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions\"\n ],\n setSelectedReposForOrgSecret: [\n \"PUT /orgs/{org}/actions/secrets/{secret_name}/repositories\"\n ],\n setSelectedReposForOrgVariable: [\n \"PUT /orgs/{org}/actions/variables/{name}/repositories\"\n ],\n setSelectedRepositoriesEnabledGithubActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/repositories\"\n ],\n setWorkflowAccessToRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/access\"\n ],\n updateEnvironmentVariable: [\n \"PATCH /repos/{owner}/{repo}/environments/{environment_name}/variables/{name}\"\n ],\n updateOrgVariable: [\"PATCH /orgs/{org}/actions/variables/{name}\"],\n updateRepoVariable: [\n \"PATCH /repos/{owner}/{repo}/actions/variables/{name}\"\n ]\n },\n activity: {\n checkRepoIsStarredByAuthenticatedUser: [\"GET /user/starred/{owner}/{repo}\"],\n deleteRepoSubscription: [\"DELETE /repos/{owner}/{repo}/subscription\"],\n deleteThreadSubscription: [\n \"DELETE /notifications/threads/{thread_id}/subscription\"\n ],\n getFeeds: [\"GET /feeds\"],\n getRepoSubscription: [\"GET /repos/{owner}/{repo}/subscription\"],\n getThread: [\"GET /notifications/threads/{thread_id}\"],\n getThreadSubscriptionForAuthenticatedUser: [\n \"GET /notifications/threads/{thread_id}/subscription\"\n ],\n listEventsForAuthenticatedUser: [\"GET /users/{username}/events\"],\n listNotificationsForAuthenticatedUser: [\"GET /notifications\"],\n listOrgEventsForAuthenticatedUser: [\n \"GET /users/{username}/events/orgs/{org}\"\n ],\n listPublicEvents: [\"GET /events\"],\n listPublicEventsForRepoNetwork: [\"GET /networks/{owner}/{repo}/events\"],\n listPublicEventsForUser: [\"GET /users/{username}/events/public\"],\n listPublicOrgEvents: [\"GET /orgs/{org}/events\"],\n listReceivedEventsForUser: [\"GET /users/{username}/received_events\"],\n listReceivedPublicEventsForUser: [\n \"GET /users/{username}/received_events/public\"\n ],\n listRepoEvents: [\"GET /repos/{owner}/{repo}/events\"],\n listRepoNotificationsForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/notifications\"\n ],\n listReposStarredByAuthenticatedUser: [\"GET /user/starred\"],\n listReposStarredByUser: [\"GET /users/{username}/starred\"],\n listReposWatchedByUser: [\"GET /users/{username}/subscriptions\"],\n listStargazersForRepo: [\"GET /repos/{owner}/{repo}/stargazers\"],\n listWatchedReposForAuthenticatedUser: [\"GET /user/subscriptions\"],\n listWatchersForRepo: [\"GET /repos/{owner}/{repo}/subscribers\"],\n markNotificationsAsRead: [\"PUT /notifications\"],\n markRepoNotificationsAsRead: [\"PUT /repos/{owner}/{repo}/notifications\"],\n markThreadAsDone: [\"DELETE /notifications/threads/{thread_id}\"],\n markThreadAsRead: [\"PATCH /notifications/threads/{thread_id}\"],\n setRepoSubscription: [\"PUT /repos/{owner}/{repo}/subscription\"],\n setThreadSubscription: [\n \"PUT /notifications/threads/{thread_id}/subscription\"\n ],\n starRepoForAuthenticatedUser: [\"PUT /user/starred/{owner}/{repo}\"],\n unstarRepoForAuthenticatedUser: [\"DELETE /user/starred/{owner}/{repo}\"]\n },\n apps: {\n addRepoToInstallation: [\n \"PUT /user/installations/{installation_id}/repositories/{repository_id}\",\n {},\n { renamed: [\"apps\", \"addRepoToInstallationForAuthenticatedUser\"] }\n ],\n addRepoToInstallationForAuthenticatedUser: [\n \"PUT /user/installations/{installation_id}/repositories/{repository_id}\"\n ],\n checkToken: [\"POST /applications/{client_id}/token\"],\n createFromManifest: [\"POST /app-manifests/{code}/conversions\"],\n createInstallationAccessToken: [\n \"POST /app/installations/{installation_id}/access_tokens\"\n ],\n deleteAuthorization: [\"DELETE /applications/{client_id}/grant\"],\n deleteInstallation: [\"DELETE /app/installations/{installation_id}\"],\n deleteToken: [\"DELETE /applications/{client_id}/token\"],\n getAuthenticated: [\"GET /app\"],\n getBySlug: [\"GET /apps/{app_slug}\"],\n getInstallation: [\"GET /app/installations/{installation_id}\"],\n getOrgInstallation: [\"GET /orgs/{org}/installation\"],\n getRepoInstallation: [\"GET /repos/{owner}/{repo}/installation\"],\n getSubscriptionPlanForAccount: [\n \"GET /marketplace_listing/accounts/{account_id}\"\n ],\n getSubscriptionPlanForAccountStubbed: [\n \"GET /marketplace_listing/stubbed/accounts/{account_id}\"\n ],\n getUserInstallation: [\"GET /users/{username}/installation\"],\n getWebhookConfigForApp: [\"GET /app/hook/config\"],\n getWebhookDelivery: [\"GET /app/hook/deliveries/{delivery_id}\"],\n listAccountsForPlan: [\"GET /marketplace_listing/plans/{plan_id}/accounts\"],\n listAccountsForPlanStubbed: [\n \"GET /marketplace_listing/stubbed/plans/{plan_id}/accounts\"\n ],\n listInstallationReposForAuthenticatedUser: [\n \"GET /user/installations/{installation_id}/repositories\"\n ],\n listInstallationRequestsForAuthenticatedApp: [\n \"GET /app/installation-requests\"\n ],\n listInstallations: [\"GET /app/installations\"],\n listInstallationsForAuthenticatedUser: [\"GET /user/installations\"],\n listPlans: [\"GET /marketplace_listing/plans\"],\n listPlansStubbed: [\"GET /marketplace_listing/stubbed/plans\"],\n listReposAccessibleToInstallation: [\"GET /installation/repositories\"],\n listSubscriptionsForAuthenticatedUser: [\"GET /user/marketplace_purchases\"],\n listSubscriptionsForAuthenticatedUserStubbed: [\n \"GET /user/marketplace_purchases/stubbed\"\n ],\n listWebhookDeliveries: [\"GET /app/hook/deliveries\"],\n redeliverWebhookDelivery: [\n \"POST /app/hook/deliveries/{delivery_id}/attempts\"\n ],\n removeRepoFromInstallation: [\n \"DELETE /user/installations/{installation_id}/repositories/{repository_id}\",\n {},\n { renamed: [\"apps\", \"removeRepoFromInstallationForAuthenticatedUser\"] }\n ],\n removeRepoFromInstallationForAuthenticatedUser: [\n \"DELETE /user/installations/{installation_id}/repositories/{repository_id}\"\n ],\n resetToken: [\"PATCH /applications/{client_id}/token\"],\n revokeInstallationAccessToken: [\"DELETE /installation/token\"],\n scopeToken: [\"POST /applications/{client_id}/token/scoped\"],\n suspendInstallation: [\"PUT /app/installations/{installation_id}/suspended\"],\n unsuspendInstallation: [\n \"DELETE /app/installations/{installation_id}/suspended\"\n ],\n updateWebhookConfigForApp: [\"PATCH /app/hook/config\"]\n },\n billing: {\n getGithubActionsBillingOrg: [\"GET /orgs/{org}/settings/billing/actions\"],\n getGithubActionsBillingUser: [\n \"GET /users/{username}/settings/billing/actions\"\n ],\n getGithubBillingUsageReportOrg: [\n \"GET /organizations/{org}/settings/billing/usage\"\n ],\n getGithubPackagesBillingOrg: [\"GET /orgs/{org}/settings/billing/packages\"],\n getGithubPackagesBillingUser: [\n \"GET /users/{username}/settings/billing/packages\"\n ],\n getSharedStorageBillingOrg: [\n \"GET /orgs/{org}/settings/billing/shared-storage\"\n ],\n getSharedStorageBillingUser: [\n \"GET /users/{username}/settings/billing/shared-storage\"\n ]\n },\n checks: {\n create: [\"POST /repos/{owner}/{repo}/check-runs\"],\n createSuite: [\"POST /repos/{owner}/{repo}/check-suites\"],\n get: [\"GET /repos/{owner}/{repo}/check-runs/{check_run_id}\"],\n getSuite: [\"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}\"],\n listAnnotations: [\n \"GET /repos/{owner}/{repo}/check-runs/{check_run_id}/annotations\"\n ],\n listForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-runs\"],\n listForSuite: [\n \"GET /repos/{owner}/{repo}/check-suites/{check_suite_id}/check-runs\"\n ],\n listSuitesForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/check-suites\"],\n rerequestRun: [\n \"POST /repos/{owner}/{repo}/check-runs/{check_run_id}/rerequest\"\n ],\n rerequestSuite: [\n \"POST /repos/{owner}/{repo}/check-suites/{check_suite_id}/rerequest\"\n ],\n setSuitesPreferences: [\n \"PATCH /repos/{owner}/{repo}/check-suites/preferences\"\n ],\n update: [\"PATCH /repos/{owner}/{repo}/check-runs/{check_run_id}\"]\n },\n codeScanning: {\n commitAutofix: [\n \"POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix/commits\"\n ],\n createAutofix: [\n \"POST /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix\"\n ],\n createVariantAnalysis: [\n \"POST /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses\"\n ],\n deleteAnalysis: [\n \"DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}\"\n ],\n deleteCodeqlDatabase: [\n \"DELETE /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}\"\n ],\n getAlert: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\",\n {},\n { renamedParameters: { alert_id: \"alert_number\" } }\n ],\n getAnalysis: [\n \"GET /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}\"\n ],\n getAutofix: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/autofix\"\n ],\n getCodeqlDatabase: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/databases/{language}\"\n ],\n getDefaultSetup: [\"GET /repos/{owner}/{repo}/code-scanning/default-setup\"],\n getSarif: [\"GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}\"],\n getVariantAnalysis: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}\"\n ],\n getVariantAnalysisRepoTask: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/variant-analyses/{codeql_variant_analysis_id}/repos/{repo_owner}/{repo_name}\"\n ],\n listAlertInstances: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances\"\n ],\n listAlertsForOrg: [\"GET /orgs/{org}/code-scanning/alerts\"],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/code-scanning/alerts\"],\n listAlertsInstances: [\n \"GET /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}/instances\",\n {},\n { renamed: [\"codeScanning\", \"listAlertInstances\"] }\n ],\n listCodeqlDatabases: [\n \"GET /repos/{owner}/{repo}/code-scanning/codeql/databases\"\n ],\n listRecentAnalyses: [\"GET /repos/{owner}/{repo}/code-scanning/analyses\"],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\"\n ],\n updateDefaultSetup: [\n \"PATCH /repos/{owner}/{repo}/code-scanning/default-setup\"\n ],\n uploadSarif: [\"POST /repos/{owner}/{repo}/code-scanning/sarifs\"]\n },\n codeSecurity: {\n attachConfiguration: [\n \"POST /orgs/{org}/code-security/configurations/{configuration_id}/attach\"\n ],\n attachEnterpriseConfiguration: [\n \"POST /enterprises/{enterprise}/code-security/configurations/{configuration_id}/attach\"\n ],\n createConfiguration: [\"POST /orgs/{org}/code-security/configurations\"],\n createConfigurationForEnterprise: [\n \"POST /enterprises/{enterprise}/code-security/configurations\"\n ],\n deleteConfiguration: [\n \"DELETE /orgs/{org}/code-security/configurations/{configuration_id}\"\n ],\n deleteConfigurationForEnterprise: [\n \"DELETE /enterprises/{enterprise}/code-security/configurations/{configuration_id}\"\n ],\n detachConfiguration: [\n \"DELETE /orgs/{org}/code-security/configurations/detach\"\n ],\n getConfiguration: [\n \"GET /orgs/{org}/code-security/configurations/{configuration_id}\"\n ],\n getConfigurationForRepository: [\n \"GET /repos/{owner}/{repo}/code-security-configuration\"\n ],\n getConfigurationsForEnterprise: [\n \"GET /enterprises/{enterprise}/code-security/configurations\"\n ],\n getConfigurationsForOrg: [\"GET /orgs/{org}/code-security/configurations\"],\n getDefaultConfigurations: [\n \"GET /orgs/{org}/code-security/configurations/defaults\"\n ],\n getDefaultConfigurationsForEnterprise: [\n \"GET /enterprises/{enterprise}/code-security/configurations/defaults\"\n ],\n getRepositoriesForConfiguration: [\n \"GET /orgs/{org}/code-security/configurations/{configuration_id}/repositories\"\n ],\n getRepositoriesForEnterpriseConfiguration: [\n \"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}/repositories\"\n ],\n getSingleConfigurationForEnterprise: [\n \"GET /enterprises/{enterprise}/code-security/configurations/{configuration_id}\"\n ],\n setConfigurationAsDefault: [\n \"PUT /orgs/{org}/code-security/configurations/{configuration_id}/defaults\"\n ],\n setConfigurationAsDefaultForEnterprise: [\n \"PUT /enterprises/{enterprise}/code-security/configurations/{configuration_id}/defaults\"\n ],\n updateConfiguration: [\n \"PATCH /orgs/{org}/code-security/configurations/{configuration_id}\"\n ],\n updateEnterpriseConfiguration: [\n \"PATCH /enterprises/{enterprise}/code-security/configurations/{configuration_id}\"\n ]\n },\n codesOfConduct: {\n getAllCodesOfConduct: [\"GET /codes_of_conduct\"],\n getConductCode: [\"GET /codes_of_conduct/{key}\"]\n },\n codespaces: {\n addRepositoryForSecretForAuthenticatedUser: [\n \"PUT /user/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n checkPermissionsForDevcontainer: [\n \"GET /repos/{owner}/{repo}/codespaces/permissions_check\"\n ],\n codespaceMachinesForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/machines\"\n ],\n createForAuthenticatedUser: [\"POST /user/codespaces\"],\n createOrUpdateOrgSecret: [\n \"PUT /orgs/{org}/codespaces/secrets/{secret_name}\"\n ],\n createOrUpdateRepoSecret: [\n \"PUT /repos/{owner}/{repo}/codespaces/secrets/{secret_name}\"\n ],\n createOrUpdateSecretForAuthenticatedUser: [\n \"PUT /user/codespaces/secrets/{secret_name}\"\n ],\n createWithPrForAuthenticatedUser: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/codespaces\"\n ],\n createWithRepoForAuthenticatedUser: [\n \"POST /repos/{owner}/{repo}/codespaces\"\n ],\n deleteForAuthenticatedUser: [\"DELETE /user/codespaces/{codespace_name}\"],\n deleteFromOrganization: [\n \"DELETE /orgs/{org}/members/{username}/codespaces/{codespace_name}\"\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/codespaces/secrets/{secret_name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/codespaces/secrets/{secret_name}\"\n ],\n deleteSecretForAuthenticatedUser: [\n \"DELETE /user/codespaces/secrets/{secret_name}\"\n ],\n exportForAuthenticatedUser: [\n \"POST /user/codespaces/{codespace_name}/exports\"\n ],\n getCodespacesForUserInOrg: [\n \"GET /orgs/{org}/members/{username}/codespaces\"\n ],\n getExportDetailsForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/exports/{export_id}\"\n ],\n getForAuthenticatedUser: [\"GET /user/codespaces/{codespace_name}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/codespaces/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/codespaces/secrets/{secret_name}\"],\n getPublicKeyForAuthenticatedUser: [\n \"GET /user/codespaces/secrets/public-key\"\n ],\n getRepoPublicKey: [\n \"GET /repos/{owner}/{repo}/codespaces/secrets/public-key\"\n ],\n getRepoSecret: [\n \"GET /repos/{owner}/{repo}/codespaces/secrets/{secret_name}\"\n ],\n getSecretForAuthenticatedUser: [\n \"GET /user/codespaces/secrets/{secret_name}\"\n ],\n listDevcontainersInRepositoryForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces/devcontainers\"\n ],\n listForAuthenticatedUser: [\"GET /user/codespaces\"],\n listInOrganization: [\n \"GET /orgs/{org}/codespaces\",\n {},\n { renamedParameters: { org_id: \"org\" } }\n ],\n listInRepositoryForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces\"\n ],\n listOrgSecrets: [\"GET /orgs/{org}/codespaces/secrets\"],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/codespaces/secrets\"],\n listRepositoriesForSecretForAuthenticatedUser: [\n \"GET /user/codespaces/secrets/{secret_name}/repositories\"\n ],\n listSecretsForAuthenticatedUser: [\"GET /user/codespaces/secrets\"],\n listSelectedReposForOrgSecret: [\n \"GET /orgs/{org}/codespaces/secrets/{secret_name}/repositories\"\n ],\n preFlightWithRepoForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces/new\"\n ],\n publishForAuthenticatedUser: [\n \"POST /user/codespaces/{codespace_name}/publish\"\n ],\n removeRepositoryForSecretForAuthenticatedUser: [\n \"DELETE /user/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n removeSelectedRepoFromOrgSecret: [\n \"DELETE /orgs/{org}/codespaces/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n repoMachinesForAuthenticatedUser: [\n \"GET /repos/{owner}/{repo}/codespaces/machines\"\n ],\n setRepositoriesForSecretForAuthenticatedUser: [\n \"PUT /user/codespaces/secrets/{secret_name}/repositories\"\n ],\n setSelectedReposForOrgSecret: [\n \"PUT /orgs/{org}/codespaces/secrets/{secret_name}/repositories\"\n ],\n startForAuthenticatedUser: [\"POST /user/codespaces/{codespace_name}/start\"],\n stopForAuthenticatedUser: [\"POST /user/codespaces/{codespace_name}/stop\"],\n stopInOrganization: [\n \"POST /orgs/{org}/members/{username}/codespaces/{codespace_name}/stop\"\n ],\n updateForAuthenticatedUser: [\"PATCH /user/codespaces/{codespace_name}\"]\n },\n copilot: {\n addCopilotSeatsForTeams: [\n \"POST /orgs/{org}/copilot/billing/selected_teams\"\n ],\n addCopilotSeatsForUsers: [\n \"POST /orgs/{org}/copilot/billing/selected_users\"\n ],\n cancelCopilotSeatAssignmentForTeams: [\n \"DELETE /orgs/{org}/copilot/billing/selected_teams\"\n ],\n cancelCopilotSeatAssignmentForUsers: [\n \"DELETE /orgs/{org}/copilot/billing/selected_users\"\n ],\n copilotMetricsForOrganization: [\"GET /orgs/{org}/copilot/metrics\"],\n copilotMetricsForTeam: [\"GET /orgs/{org}/team/{team_slug}/copilot/metrics\"],\n getCopilotOrganizationDetails: [\"GET /orgs/{org}/copilot/billing\"],\n getCopilotSeatDetailsForUser: [\n \"GET /orgs/{org}/members/{username}/copilot\"\n ],\n listCopilotSeats: [\"GET /orgs/{org}/copilot/billing/seats\"],\n usageMetricsForOrg: [\"GET /orgs/{org}/copilot/usage\"],\n usageMetricsForTeam: [\"GET /orgs/{org}/team/{team_slug}/copilot/usage\"]\n },\n dependabot: {\n addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n createOrUpdateOrgSecret: [\n \"PUT /orgs/{org}/dependabot/secrets/{secret_name}\"\n ],\n createOrUpdateRepoSecret: [\n \"PUT /repos/{owner}/{repo}/dependabot/secrets/{secret_name}\"\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/dependabot/secrets/{secret_name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/dependabot/secrets/{secret_name}\"\n ],\n getAlert: [\"GET /repos/{owner}/{repo}/dependabot/alerts/{alert_number}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/dependabot/secrets/public-key\"],\n getOrgSecret: [\"GET /orgs/{org}/dependabot/secrets/{secret_name}\"],\n getRepoPublicKey: [\n \"GET /repos/{owner}/{repo}/dependabot/secrets/public-key\"\n ],\n getRepoSecret: [\n \"GET /repos/{owner}/{repo}/dependabot/secrets/{secret_name}\"\n ],\n listAlertsForEnterprise: [\n \"GET /enterprises/{enterprise}/dependabot/alerts\"\n ],\n listAlertsForOrg: [\"GET /orgs/{org}/dependabot/alerts\"],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/dependabot/alerts\"],\n listOrgSecrets: [\"GET /orgs/{org}/dependabot/secrets\"],\n listRepoSecrets: [\"GET /repos/{owner}/{repo}/dependabot/secrets\"],\n listSelectedReposForOrgSecret: [\n \"GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories\"\n ],\n removeSelectedRepoFromOrgSecret: [\n \"DELETE /orgs/{org}/dependabot/secrets/{secret_name}/repositories/{repository_id}\"\n ],\n setSelectedReposForOrgSecret: [\n \"PUT /orgs/{org}/dependabot/secrets/{secret_name}/repositories\"\n ],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/dependabot/alerts/{alert_number}\"\n ]\n },\n dependencyGraph: {\n createRepositorySnapshot: [\n \"POST /repos/{owner}/{repo}/dependency-graph/snapshots\"\n ],\n diffRange: [\n \"GET /repos/{owner}/{repo}/dependency-graph/compare/{basehead}\"\n ],\n exportSbom: [\"GET /repos/{owner}/{repo}/dependency-graph/sbom\"]\n },\n emojis: { get: [\"GET /emojis\"] },\n gists: {\n checkIsStarred: [\"GET /gists/{gist_id}/star\"],\n create: [\"POST /gists\"],\n createComment: [\"POST /gists/{gist_id}/comments\"],\n delete: [\"DELETE /gists/{gist_id}\"],\n deleteComment: [\"DELETE /gists/{gist_id}/comments/{comment_id}\"],\n fork: [\"POST /gists/{gist_id}/forks\"],\n get: [\"GET /gists/{gist_id}\"],\n getComment: [\"GET /gists/{gist_id}/comments/{comment_id}\"],\n getRevision: [\"GET /gists/{gist_id}/{sha}\"],\n list: [\"GET /gists\"],\n listComments: [\"GET /gists/{gist_id}/comments\"],\n listCommits: [\"GET /gists/{gist_id}/commits\"],\n listForUser: [\"GET /users/{username}/gists\"],\n listForks: [\"GET /gists/{gist_id}/forks\"],\n listPublic: [\"GET /gists/public\"],\n listStarred: [\"GET /gists/starred\"],\n star: [\"PUT /gists/{gist_id}/star\"],\n unstar: [\"DELETE /gists/{gist_id}/star\"],\n update: [\"PATCH /gists/{gist_id}\"],\n updateComment: [\"PATCH /gists/{gist_id}/comments/{comment_id}\"]\n },\n git: {\n createBlob: [\"POST /repos/{owner}/{repo}/git/blobs\"],\n createCommit: [\"POST /repos/{owner}/{repo}/git/commits\"],\n createRef: [\"POST /repos/{owner}/{repo}/git/refs\"],\n createTag: [\"POST /repos/{owner}/{repo}/git/tags\"],\n createTree: [\"POST /repos/{owner}/{repo}/git/trees\"],\n deleteRef: [\"DELETE /repos/{owner}/{repo}/git/refs/{ref}\"],\n getBlob: [\"GET /repos/{owner}/{repo}/git/blobs/{file_sha}\"],\n getCommit: [\"GET /repos/{owner}/{repo}/git/commits/{commit_sha}\"],\n getRef: [\"GET /repos/{owner}/{repo}/git/ref/{ref}\"],\n getTag: [\"GET /repos/{owner}/{repo}/git/tags/{tag_sha}\"],\n getTree: [\"GET /repos/{owner}/{repo}/git/trees/{tree_sha}\"],\n listMatchingRefs: [\"GET /repos/{owner}/{repo}/git/matching-refs/{ref}\"],\n updateRef: [\"PATCH /repos/{owner}/{repo}/git/refs/{ref}\"]\n },\n gitignore: {\n getAllTemplates: [\"GET /gitignore/templates\"],\n getTemplate: [\"GET /gitignore/templates/{name}\"]\n },\n interactions: {\n getRestrictionsForAuthenticatedUser: [\"GET /user/interaction-limits\"],\n getRestrictionsForOrg: [\"GET /orgs/{org}/interaction-limits\"],\n getRestrictionsForRepo: [\"GET /repos/{owner}/{repo}/interaction-limits\"],\n getRestrictionsForYourPublicRepos: [\n \"GET /user/interaction-limits\",\n {},\n { renamed: [\"interactions\", \"getRestrictionsForAuthenticatedUser\"] }\n ],\n removeRestrictionsForAuthenticatedUser: [\"DELETE /user/interaction-limits\"],\n removeRestrictionsForOrg: [\"DELETE /orgs/{org}/interaction-limits\"],\n removeRestrictionsForRepo: [\n \"DELETE /repos/{owner}/{repo}/interaction-limits\"\n ],\n removeRestrictionsForYourPublicRepos: [\n \"DELETE /user/interaction-limits\",\n {},\n { renamed: [\"interactions\", \"removeRestrictionsForAuthenticatedUser\"] }\n ],\n setRestrictionsForAuthenticatedUser: [\"PUT /user/interaction-limits\"],\n setRestrictionsForOrg: [\"PUT /orgs/{org}/interaction-limits\"],\n setRestrictionsForRepo: [\"PUT /repos/{owner}/{repo}/interaction-limits\"],\n setRestrictionsForYourPublicRepos: [\n \"PUT /user/interaction-limits\",\n {},\n { renamed: [\"interactions\", \"setRestrictionsForAuthenticatedUser\"] }\n ]\n },\n issues: {\n addAssignees: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/assignees\"\n ],\n addLabels: [\"POST /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n addSubIssue: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/sub_issues\"\n ],\n checkUserCanBeAssigned: [\"GET /repos/{owner}/{repo}/assignees/{assignee}\"],\n checkUserCanBeAssignedToIssue: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/assignees/{assignee}\"\n ],\n create: [\"POST /repos/{owner}/{repo}/issues\"],\n createComment: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/comments\"\n ],\n createLabel: [\"POST /repos/{owner}/{repo}/labels\"],\n createMilestone: [\"POST /repos/{owner}/{repo}/milestones\"],\n deleteComment: [\n \"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}\"\n ],\n deleteLabel: [\"DELETE /repos/{owner}/{repo}/labels/{name}\"],\n deleteMilestone: [\n \"DELETE /repos/{owner}/{repo}/milestones/{milestone_number}\"\n ],\n get: [\"GET /repos/{owner}/{repo}/issues/{issue_number}\"],\n getComment: [\"GET /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n getEvent: [\"GET /repos/{owner}/{repo}/issues/events/{event_id}\"],\n getLabel: [\"GET /repos/{owner}/{repo}/labels/{name}\"],\n getMilestone: [\"GET /repos/{owner}/{repo}/milestones/{milestone_number}\"],\n list: [\"GET /issues\"],\n listAssignees: [\"GET /repos/{owner}/{repo}/assignees\"],\n listComments: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/comments\"],\n listCommentsForRepo: [\"GET /repos/{owner}/{repo}/issues/comments\"],\n listEvents: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/events\"],\n listEventsForRepo: [\"GET /repos/{owner}/{repo}/issues/events\"],\n listEventsForTimeline: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/timeline\"\n ],\n listForAuthenticatedUser: [\"GET /user/issues\"],\n listForOrg: [\"GET /orgs/{org}/issues\"],\n listForRepo: [\"GET /repos/{owner}/{repo}/issues\"],\n listLabelsForMilestone: [\n \"GET /repos/{owner}/{repo}/milestones/{milestone_number}/labels\"\n ],\n listLabelsForRepo: [\"GET /repos/{owner}/{repo}/labels\"],\n listLabelsOnIssue: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/labels\"\n ],\n listMilestones: [\"GET /repos/{owner}/{repo}/milestones\"],\n listSubIssues: [\n \"GET /repos/{owner}/{repo}/issues/{issue_number}/sub_issues\"\n ],\n lock: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n removeAllLabels: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels\"\n ],\n removeAssignees: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/assignees\"\n ],\n removeLabel: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/labels/{name}\"\n ],\n removeSubIssue: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/sub_issue\"\n ],\n reprioritizeSubIssue: [\n \"PATCH /repos/{owner}/{repo}/issues/{issue_number}/sub_issues/priority\"\n ],\n setLabels: [\"PUT /repos/{owner}/{repo}/issues/{issue_number}/labels\"],\n unlock: [\"DELETE /repos/{owner}/{repo}/issues/{issue_number}/lock\"],\n update: [\"PATCH /repos/{owner}/{repo}/issues/{issue_number}\"],\n updateComment: [\"PATCH /repos/{owner}/{repo}/issues/comments/{comment_id}\"],\n updateLabel: [\"PATCH /repos/{owner}/{repo}/labels/{name}\"],\n updateMilestone: [\n \"PATCH /repos/{owner}/{repo}/milestones/{milestone_number}\"\n ]\n },\n licenses: {\n get: [\"GET /licenses/{license}\"],\n getAllCommonlyUsed: [\"GET /licenses\"],\n getForRepo: [\"GET /repos/{owner}/{repo}/license\"]\n },\n markdown: {\n render: [\"POST /markdown\"],\n renderRaw: [\n \"POST /markdown/raw\",\n { headers: { \"content-type\": \"text/plain; charset=utf-8\" } }\n ]\n },\n meta: {\n get: [\"GET /meta\"],\n getAllVersions: [\"GET /versions\"],\n getOctocat: [\"GET /octocat\"],\n getZen: [\"GET /zen\"],\n root: [\"GET /\"]\n },\n migrations: {\n deleteArchiveForAuthenticatedUser: [\n \"DELETE /user/migrations/{migration_id}/archive\"\n ],\n deleteArchiveForOrg: [\n \"DELETE /orgs/{org}/migrations/{migration_id}/archive\"\n ],\n downloadArchiveForOrg: [\n \"GET /orgs/{org}/migrations/{migration_id}/archive\"\n ],\n getArchiveForAuthenticatedUser: [\n \"GET /user/migrations/{migration_id}/archive\"\n ],\n getStatusForAuthenticatedUser: [\"GET /user/migrations/{migration_id}\"],\n getStatusForOrg: [\"GET /orgs/{org}/migrations/{migration_id}\"],\n listForAuthenticatedUser: [\"GET /user/migrations\"],\n listForOrg: [\"GET /orgs/{org}/migrations\"],\n listReposForAuthenticatedUser: [\n \"GET /user/migrations/{migration_id}/repositories\"\n ],\n listReposForOrg: [\"GET /orgs/{org}/migrations/{migration_id}/repositories\"],\n listReposForUser: [\n \"GET /user/migrations/{migration_id}/repositories\",\n {},\n { renamed: [\"migrations\", \"listReposForAuthenticatedUser\"] }\n ],\n startForAuthenticatedUser: [\"POST /user/migrations\"],\n startForOrg: [\"POST /orgs/{org}/migrations\"],\n unlockRepoForAuthenticatedUser: [\n \"DELETE /user/migrations/{migration_id}/repos/{repo_name}/lock\"\n ],\n unlockRepoForOrg: [\n \"DELETE /orgs/{org}/migrations/{migration_id}/repos/{repo_name}/lock\"\n ]\n },\n oidc: {\n getOidcCustomSubTemplateForOrg: [\n \"GET /orgs/{org}/actions/oidc/customization/sub\"\n ],\n updateOidcCustomSubTemplateForOrg: [\n \"PUT /orgs/{org}/actions/oidc/customization/sub\"\n ]\n },\n orgs: {\n addSecurityManagerTeam: [\n \"PUT /orgs/{org}/security-managers/teams/{team_slug}\",\n {},\n {\n deprecated: \"octokit.rest.orgs.addSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#add-a-security-manager-team\"\n }\n ],\n assignTeamToOrgRole: [\n \"PUT /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}\"\n ],\n assignUserToOrgRole: [\n \"PUT /orgs/{org}/organization-roles/users/{username}/{role_id}\"\n ],\n blockUser: [\"PUT /orgs/{org}/blocks/{username}\"],\n cancelInvitation: [\"DELETE /orgs/{org}/invitations/{invitation_id}\"],\n checkBlockedUser: [\"GET /orgs/{org}/blocks/{username}\"],\n checkMembershipForUser: [\"GET /orgs/{org}/members/{username}\"],\n checkPublicMembershipForUser: [\"GET /orgs/{org}/public_members/{username}\"],\n convertMemberToOutsideCollaborator: [\n \"PUT /orgs/{org}/outside_collaborators/{username}\"\n ],\n createInvitation: [\"POST /orgs/{org}/invitations\"],\n createOrUpdateCustomProperties: [\"PATCH /orgs/{org}/properties/schema\"],\n createOrUpdateCustomPropertiesValuesForRepos: [\n \"PATCH /orgs/{org}/properties/values\"\n ],\n createOrUpdateCustomProperty: [\n \"PUT /orgs/{org}/properties/schema/{custom_property_name}\"\n ],\n createWebhook: [\"POST /orgs/{org}/hooks\"],\n delete: [\"DELETE /orgs/{org}\"],\n deleteWebhook: [\"DELETE /orgs/{org}/hooks/{hook_id}\"],\n enableOrDisableSecurityProductOnAllOrgRepos: [\n \"POST /orgs/{org}/{security_product}/{enablement}\",\n {},\n {\n deprecated: \"octokit.rest.orgs.enableOrDisableSecurityProductOnAllOrgRepos() is deprecated, see https://docs.github.com/rest/orgs/orgs#enable-or-disable-a-security-feature-for-an-organization\"\n }\n ],\n get: [\"GET /orgs/{org}\"],\n getAllCustomProperties: [\"GET /orgs/{org}/properties/schema\"],\n getCustomProperty: [\n \"GET /orgs/{org}/properties/schema/{custom_property_name}\"\n ],\n getMembershipForAuthenticatedUser: [\"GET /user/memberships/orgs/{org}\"],\n getMembershipForUser: [\"GET /orgs/{org}/memberships/{username}\"],\n getOrgRole: [\"GET /orgs/{org}/organization-roles/{role_id}\"],\n getWebhook: [\"GET /orgs/{org}/hooks/{hook_id}\"],\n getWebhookConfigForOrg: [\"GET /orgs/{org}/hooks/{hook_id}/config\"],\n getWebhookDelivery: [\n \"GET /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}\"\n ],\n list: [\"GET /organizations\"],\n listAppInstallations: [\"GET /orgs/{org}/installations\"],\n listAttestations: [\"GET /orgs/{org}/attestations/{subject_digest}\"],\n listBlockedUsers: [\"GET /orgs/{org}/blocks\"],\n listCustomPropertiesValuesForRepos: [\"GET /orgs/{org}/properties/values\"],\n listFailedInvitations: [\"GET /orgs/{org}/failed_invitations\"],\n listForAuthenticatedUser: [\"GET /user/orgs\"],\n listForUser: [\"GET /users/{username}/orgs\"],\n listInvitationTeams: [\"GET /orgs/{org}/invitations/{invitation_id}/teams\"],\n listMembers: [\"GET /orgs/{org}/members\"],\n listMembershipsForAuthenticatedUser: [\"GET /user/memberships/orgs\"],\n listOrgRoleTeams: [\"GET /orgs/{org}/organization-roles/{role_id}/teams\"],\n listOrgRoleUsers: [\"GET /orgs/{org}/organization-roles/{role_id}/users\"],\n listOrgRoles: [\"GET /orgs/{org}/organization-roles\"],\n listOrganizationFineGrainedPermissions: [\n \"GET /orgs/{org}/organization-fine-grained-permissions\"\n ],\n listOutsideCollaborators: [\"GET /orgs/{org}/outside_collaborators\"],\n listPatGrantRepositories: [\n \"GET /orgs/{org}/personal-access-tokens/{pat_id}/repositories\"\n ],\n listPatGrantRequestRepositories: [\n \"GET /orgs/{org}/personal-access-token-requests/{pat_request_id}/repositories\"\n ],\n listPatGrantRequests: [\"GET /orgs/{org}/personal-access-token-requests\"],\n listPatGrants: [\"GET /orgs/{org}/personal-access-tokens\"],\n listPendingInvitations: [\"GET /orgs/{org}/invitations\"],\n listPublicMembers: [\"GET /orgs/{org}/public_members\"],\n listSecurityManagerTeams: [\n \"GET /orgs/{org}/security-managers\",\n {},\n {\n deprecated: \"octokit.rest.orgs.listSecurityManagerTeams() is deprecated, see https://docs.github.com/rest/orgs/security-managers#list-security-manager-teams\"\n }\n ],\n listWebhookDeliveries: [\"GET /orgs/{org}/hooks/{hook_id}/deliveries\"],\n listWebhooks: [\"GET /orgs/{org}/hooks\"],\n pingWebhook: [\"POST /orgs/{org}/hooks/{hook_id}/pings\"],\n redeliverWebhookDelivery: [\n \"POST /orgs/{org}/hooks/{hook_id}/deliveries/{delivery_id}/attempts\"\n ],\n removeCustomProperty: [\n \"DELETE /orgs/{org}/properties/schema/{custom_property_name}\"\n ],\n removeMember: [\"DELETE /orgs/{org}/members/{username}\"],\n removeMembershipForUser: [\"DELETE /orgs/{org}/memberships/{username}\"],\n removeOutsideCollaborator: [\n \"DELETE /orgs/{org}/outside_collaborators/{username}\"\n ],\n removePublicMembershipForAuthenticatedUser: [\n \"DELETE /orgs/{org}/public_members/{username}\"\n ],\n removeSecurityManagerTeam: [\n \"DELETE /orgs/{org}/security-managers/teams/{team_slug}\",\n {},\n {\n deprecated: \"octokit.rest.orgs.removeSecurityManagerTeam() is deprecated, see https://docs.github.com/rest/orgs/security-managers#remove-a-security-manager-team\"\n }\n ],\n reviewPatGrantRequest: [\n \"POST /orgs/{org}/personal-access-token-requests/{pat_request_id}\"\n ],\n reviewPatGrantRequestsInBulk: [\n \"POST /orgs/{org}/personal-access-token-requests\"\n ],\n revokeAllOrgRolesTeam: [\n \"DELETE /orgs/{org}/organization-roles/teams/{team_slug}\"\n ],\n revokeAllOrgRolesUser: [\n \"DELETE /orgs/{org}/organization-roles/users/{username}\"\n ],\n revokeOrgRoleTeam: [\n \"DELETE /orgs/{org}/organization-roles/teams/{team_slug}/{role_id}\"\n ],\n revokeOrgRoleUser: [\n \"DELETE /orgs/{org}/organization-roles/users/{username}/{role_id}\"\n ],\n setMembershipForUser: [\"PUT /orgs/{org}/memberships/{username}\"],\n setPublicMembershipForAuthenticatedUser: [\n \"PUT /orgs/{org}/public_members/{username}\"\n ],\n unblockUser: [\"DELETE /orgs/{org}/blocks/{username}\"],\n update: [\"PATCH /orgs/{org}\"],\n updateMembershipForAuthenticatedUser: [\n \"PATCH /user/memberships/orgs/{org}\"\n ],\n updatePatAccess: [\"POST /orgs/{org}/personal-access-tokens/{pat_id}\"],\n updatePatAccesses: [\"POST /orgs/{org}/personal-access-tokens\"],\n updateWebhook: [\"PATCH /orgs/{org}/hooks/{hook_id}\"],\n updateWebhookConfigForOrg: [\"PATCH /orgs/{org}/hooks/{hook_id}/config\"]\n },\n packages: {\n deletePackageForAuthenticatedUser: [\n \"DELETE /user/packages/{package_type}/{package_name}\"\n ],\n deletePackageForOrg: [\n \"DELETE /orgs/{org}/packages/{package_type}/{package_name}\"\n ],\n deletePackageForUser: [\n \"DELETE /users/{username}/packages/{package_type}/{package_name}\"\n ],\n deletePackageVersionForAuthenticatedUser: [\n \"DELETE /user/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n deletePackageVersionForOrg: [\n \"DELETE /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n deletePackageVersionForUser: [\n \"DELETE /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n getAllPackageVersionsForAPackageOwnedByAnOrg: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions\",\n {},\n { renamed: [\"packages\", \"getAllPackageVersionsForPackageOwnedByOrg\"] }\n ],\n getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}/versions\",\n {},\n {\n renamed: [\n \"packages\",\n \"getAllPackageVersionsForPackageOwnedByAuthenticatedUser\"\n ]\n }\n ],\n getAllPackageVersionsForPackageOwnedByAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}/versions\"\n ],\n getAllPackageVersionsForPackageOwnedByOrg: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions\"\n ],\n getAllPackageVersionsForPackageOwnedByUser: [\n \"GET /users/{username}/packages/{package_type}/{package_name}/versions\"\n ],\n getPackageForAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}\"\n ],\n getPackageForOrganization: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}\"\n ],\n getPackageForUser: [\n \"GET /users/{username}/packages/{package_type}/{package_name}\"\n ],\n getPackageVersionForAuthenticatedUser: [\n \"GET /user/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n getPackageVersionForOrganization: [\n \"GET /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n getPackageVersionForUser: [\n \"GET /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}\"\n ],\n listDockerMigrationConflictingPackagesForAuthenticatedUser: [\n \"GET /user/docker/conflicts\"\n ],\n listDockerMigrationConflictingPackagesForOrganization: [\n \"GET /orgs/{org}/docker/conflicts\"\n ],\n listDockerMigrationConflictingPackagesForUser: [\n \"GET /users/{username}/docker/conflicts\"\n ],\n listPackagesForAuthenticatedUser: [\"GET /user/packages\"],\n listPackagesForOrganization: [\"GET /orgs/{org}/packages\"],\n listPackagesForUser: [\"GET /users/{username}/packages\"],\n restorePackageForAuthenticatedUser: [\n \"POST /user/packages/{package_type}/{package_name}/restore{?token}\"\n ],\n restorePackageForOrg: [\n \"POST /orgs/{org}/packages/{package_type}/{package_name}/restore{?token}\"\n ],\n restorePackageForUser: [\n \"POST /users/{username}/packages/{package_type}/{package_name}/restore{?token}\"\n ],\n restorePackageVersionForAuthenticatedUser: [\n \"POST /user/packages/{package_type}/{package_name}/versions/{package_version_id}/restore\"\n ],\n restorePackageVersionForOrg: [\n \"POST /orgs/{org}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore\"\n ],\n restorePackageVersionForUser: [\n \"POST /users/{username}/packages/{package_type}/{package_name}/versions/{package_version_id}/restore\"\n ]\n },\n privateRegistries: {\n createOrgPrivateRegistry: [\"POST /orgs/{org}/private-registries\"],\n deleteOrgPrivateRegistry: [\n \"DELETE /orgs/{org}/private-registries/{secret_name}\"\n ],\n getOrgPrivateRegistry: [\"GET /orgs/{org}/private-registries/{secret_name}\"],\n getOrgPublicKey: [\"GET /orgs/{org}/private-registries/public-key\"],\n listOrgPrivateRegistries: [\"GET /orgs/{org}/private-registries\"],\n updateOrgPrivateRegistry: [\n \"PATCH /orgs/{org}/private-registries/{secret_name}\"\n ]\n },\n projects: {\n addCollaborator: [\"PUT /projects/{project_id}/collaborators/{username}\"],\n createCard: [\"POST /projects/columns/{column_id}/cards\"],\n createColumn: [\"POST /projects/{project_id}/columns\"],\n createForAuthenticatedUser: [\"POST /user/projects\"],\n createForOrg: [\"POST /orgs/{org}/projects\"],\n createForRepo: [\"POST /repos/{owner}/{repo}/projects\"],\n delete: [\"DELETE /projects/{project_id}\"],\n deleteCard: [\"DELETE /projects/columns/cards/{card_id}\"],\n deleteColumn: [\"DELETE /projects/columns/{column_id}\"],\n get: [\"GET /projects/{project_id}\"],\n getCard: [\"GET /projects/columns/cards/{card_id}\"],\n getColumn: [\"GET /projects/columns/{column_id}\"],\n getPermissionForUser: [\n \"GET /projects/{project_id}/collaborators/{username}/permission\"\n ],\n listCards: [\"GET /projects/columns/{column_id}/cards\"],\n listCollaborators: [\"GET /projects/{project_id}/collaborators\"],\n listColumns: [\"GET /projects/{project_id}/columns\"],\n listForOrg: [\"GET /orgs/{org}/projects\"],\n listForRepo: [\"GET /repos/{owner}/{repo}/projects\"],\n listForUser: [\"GET /users/{username}/projects\"],\n moveCard: [\"POST /projects/columns/cards/{card_id}/moves\"],\n moveColumn: [\"POST /projects/columns/{column_id}/moves\"],\n removeCollaborator: [\n \"DELETE /projects/{project_id}/collaborators/{username}\"\n ],\n update: [\"PATCH /projects/{project_id}\"],\n updateCard: [\"PATCH /projects/columns/cards/{card_id}\"],\n updateColumn: [\"PATCH /projects/columns/{column_id}\"]\n },\n pulls: {\n checkIfMerged: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n create: [\"POST /repos/{owner}/{repo}/pulls\"],\n createReplyForReviewComment: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments/{comment_id}/replies\"\n ],\n createReview: [\"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n createReviewComment: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/comments\"\n ],\n deletePendingReview: [\n \"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"\n ],\n deleteReviewComment: [\n \"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}\"\n ],\n dismissReview: [\n \"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/dismissals\"\n ],\n get: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}\"],\n getReview: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"\n ],\n getReviewComment: [\"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}\"],\n list: [\"GET /repos/{owner}/{repo}/pulls\"],\n listCommentsForReview: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/comments\"\n ],\n listCommits: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/commits\"],\n listFiles: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/files\"],\n listRequestedReviewers: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"\n ],\n listReviewComments: [\n \"GET /repos/{owner}/{repo}/pulls/{pull_number}/comments\"\n ],\n listReviewCommentsForRepo: [\"GET /repos/{owner}/{repo}/pulls/comments\"],\n listReviews: [\"GET /repos/{owner}/{repo}/pulls/{pull_number}/reviews\"],\n merge: [\"PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge\"],\n removeRequestedReviewers: [\n \"DELETE /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"\n ],\n requestReviewers: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/requested_reviewers\"\n ],\n submitReview: [\n \"POST /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}/events\"\n ],\n update: [\"PATCH /repos/{owner}/{repo}/pulls/{pull_number}\"],\n updateBranch: [\n \"PUT /repos/{owner}/{repo}/pulls/{pull_number}/update-branch\"\n ],\n updateReview: [\n \"PUT /repos/{owner}/{repo}/pulls/{pull_number}/reviews/{review_id}\"\n ],\n updateReviewComment: [\n \"PATCH /repos/{owner}/{repo}/pulls/comments/{comment_id}\"\n ]\n },\n rateLimit: { get: [\"GET /rate_limit\"] },\n reactions: {\n createForCommitComment: [\n \"POST /repos/{owner}/{repo}/comments/{comment_id}/reactions\"\n ],\n createForIssue: [\n \"POST /repos/{owner}/{repo}/issues/{issue_number}/reactions\"\n ],\n createForIssueComment: [\n \"POST /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\"\n ],\n createForPullRequestReviewComment: [\n \"POST /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\"\n ],\n createForRelease: [\n \"POST /repos/{owner}/{repo}/releases/{release_id}/reactions\"\n ],\n createForTeamDiscussionCommentInOrg: [\n \"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\"\n ],\n createForTeamDiscussionInOrg: [\n \"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\"\n ],\n deleteForCommitComment: [\n \"DELETE /repos/{owner}/{repo}/comments/{comment_id}/reactions/{reaction_id}\"\n ],\n deleteForIssue: [\n \"DELETE /repos/{owner}/{repo}/issues/{issue_number}/reactions/{reaction_id}\"\n ],\n deleteForIssueComment: [\n \"DELETE /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions/{reaction_id}\"\n ],\n deleteForPullRequestComment: [\n \"DELETE /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions/{reaction_id}\"\n ],\n deleteForRelease: [\n \"DELETE /repos/{owner}/{repo}/releases/{release_id}/reactions/{reaction_id}\"\n ],\n deleteForTeamDiscussion: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}\"\n ],\n deleteForTeamDiscussionComment: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}\"\n ],\n listForCommitComment: [\n \"GET /repos/{owner}/{repo}/comments/{comment_id}/reactions\"\n ],\n listForIssue: [\"GET /repos/{owner}/{repo}/issues/{issue_number}/reactions\"],\n listForIssueComment: [\n \"GET /repos/{owner}/{repo}/issues/comments/{comment_id}/reactions\"\n ],\n listForPullRequestReviewComment: [\n \"GET /repos/{owner}/{repo}/pulls/comments/{comment_id}/reactions\"\n ],\n listForRelease: [\n \"GET /repos/{owner}/{repo}/releases/{release_id}/reactions\"\n ],\n listForTeamDiscussionCommentInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions\"\n ],\n listForTeamDiscussionInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions\"\n ]\n },\n repos: {\n acceptInvitation: [\n \"PATCH /user/repository_invitations/{invitation_id}\",\n {},\n { renamed: [\"repos\", \"acceptInvitationForAuthenticatedUser\"] }\n ],\n acceptInvitationForAuthenticatedUser: [\n \"PATCH /user/repository_invitations/{invitation_id}\"\n ],\n addAppAccessRestrictions: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\",\n {},\n { mapToData: \"apps\" }\n ],\n addCollaborator: [\"PUT /repos/{owner}/{repo}/collaborators/{username}\"],\n addStatusCheckContexts: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\",\n {},\n { mapToData: \"contexts\" }\n ],\n addTeamAccessRestrictions: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\",\n {},\n { mapToData: \"teams\" }\n ],\n addUserAccessRestrictions: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\",\n {},\n { mapToData: \"users\" }\n ],\n cancelPagesDeployment: [\n \"POST /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}/cancel\"\n ],\n checkAutomatedSecurityFixes: [\n \"GET /repos/{owner}/{repo}/automated-security-fixes\"\n ],\n checkCollaborator: [\"GET /repos/{owner}/{repo}/collaborators/{username}\"],\n checkPrivateVulnerabilityReporting: [\n \"GET /repos/{owner}/{repo}/private-vulnerability-reporting\"\n ],\n checkVulnerabilityAlerts: [\n \"GET /repos/{owner}/{repo}/vulnerability-alerts\"\n ],\n codeownersErrors: [\"GET /repos/{owner}/{repo}/codeowners/errors\"],\n compareCommits: [\"GET /repos/{owner}/{repo}/compare/{base}...{head}\"],\n compareCommitsWithBasehead: [\n \"GET /repos/{owner}/{repo}/compare/{basehead}\"\n ],\n createAttestation: [\"POST /repos/{owner}/{repo}/attestations\"],\n createAutolink: [\"POST /repos/{owner}/{repo}/autolinks\"],\n createCommitComment: [\n \"POST /repos/{owner}/{repo}/commits/{commit_sha}/comments\"\n ],\n createCommitSignatureProtection: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\"\n ],\n createCommitStatus: [\"POST /repos/{owner}/{repo}/statuses/{sha}\"],\n createDeployKey: [\"POST /repos/{owner}/{repo}/keys\"],\n createDeployment: [\"POST /repos/{owner}/{repo}/deployments\"],\n createDeploymentBranchPolicy: [\n \"POST /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies\"\n ],\n createDeploymentProtectionRule: [\n \"POST /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules\"\n ],\n createDeploymentStatus: [\n \"POST /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"\n ],\n createDispatchEvent: [\"POST /repos/{owner}/{repo}/dispatches\"],\n createForAuthenticatedUser: [\"POST /user/repos\"],\n createFork: [\"POST /repos/{owner}/{repo}/forks\"],\n createInOrg: [\"POST /orgs/{org}/repos\"],\n createOrUpdateCustomPropertiesValues: [\n \"PATCH /repos/{owner}/{repo}/properties/values\"\n ],\n createOrUpdateEnvironment: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}\"\n ],\n createOrUpdateFileContents: [\"PUT /repos/{owner}/{repo}/contents/{path}\"],\n createOrgRuleset: [\"POST /orgs/{org}/rulesets\"],\n createPagesDeployment: [\"POST /repos/{owner}/{repo}/pages/deployments\"],\n createPagesSite: [\"POST /repos/{owner}/{repo}/pages\"],\n createRelease: [\"POST /repos/{owner}/{repo}/releases\"],\n createRepoRuleset: [\"POST /repos/{owner}/{repo}/rulesets\"],\n createUsingTemplate: [\n \"POST /repos/{template_owner}/{template_repo}/generate\"\n ],\n createWebhook: [\"POST /repos/{owner}/{repo}/hooks\"],\n declineInvitation: [\n \"DELETE /user/repository_invitations/{invitation_id}\",\n {},\n { renamed: [\"repos\", \"declineInvitationForAuthenticatedUser\"] }\n ],\n declineInvitationForAuthenticatedUser: [\n \"DELETE /user/repository_invitations/{invitation_id}\"\n ],\n delete: [\"DELETE /repos/{owner}/{repo}\"],\n deleteAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"\n ],\n deleteAdminBranchProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"\n ],\n deleteAnEnvironment: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}\"\n ],\n deleteAutolink: [\"DELETE /repos/{owner}/{repo}/autolinks/{autolink_id}\"],\n deleteBranchProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection\"\n ],\n deleteCommitComment: [\"DELETE /repos/{owner}/{repo}/comments/{comment_id}\"],\n deleteCommitSignatureProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\"\n ],\n deleteDeployKey: [\"DELETE /repos/{owner}/{repo}/keys/{key_id}\"],\n deleteDeployment: [\n \"DELETE /repos/{owner}/{repo}/deployments/{deployment_id}\"\n ],\n deleteDeploymentBranchPolicy: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}\"\n ],\n deleteFile: [\"DELETE /repos/{owner}/{repo}/contents/{path}\"],\n deleteInvitation: [\n \"DELETE /repos/{owner}/{repo}/invitations/{invitation_id}\"\n ],\n deleteOrgRuleset: [\"DELETE /orgs/{org}/rulesets/{ruleset_id}\"],\n deletePagesSite: [\"DELETE /repos/{owner}/{repo}/pages\"],\n deletePullRequestReviewProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"\n ],\n deleteRelease: [\"DELETE /repos/{owner}/{repo}/releases/{release_id}\"],\n deleteReleaseAsset: [\n \"DELETE /repos/{owner}/{repo}/releases/assets/{asset_id}\"\n ],\n deleteRepoRuleset: [\"DELETE /repos/{owner}/{repo}/rulesets/{ruleset_id}\"],\n deleteWebhook: [\"DELETE /repos/{owner}/{repo}/hooks/{hook_id}\"],\n disableAutomatedSecurityFixes: [\n \"DELETE /repos/{owner}/{repo}/automated-security-fixes\"\n ],\n disableDeploymentProtectionRule: [\n \"DELETE /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}\"\n ],\n disablePrivateVulnerabilityReporting: [\n \"DELETE /repos/{owner}/{repo}/private-vulnerability-reporting\"\n ],\n disableVulnerabilityAlerts: [\n \"DELETE /repos/{owner}/{repo}/vulnerability-alerts\"\n ],\n downloadArchive: [\n \"GET /repos/{owner}/{repo}/zipball/{ref}\",\n {},\n { renamed: [\"repos\", \"downloadZipballArchive\"] }\n ],\n downloadTarballArchive: [\"GET /repos/{owner}/{repo}/tarball/{ref}\"],\n downloadZipballArchive: [\"GET /repos/{owner}/{repo}/zipball/{ref}\"],\n enableAutomatedSecurityFixes: [\n \"PUT /repos/{owner}/{repo}/automated-security-fixes\"\n ],\n enablePrivateVulnerabilityReporting: [\n \"PUT /repos/{owner}/{repo}/private-vulnerability-reporting\"\n ],\n enableVulnerabilityAlerts: [\n \"PUT /repos/{owner}/{repo}/vulnerability-alerts\"\n ],\n generateReleaseNotes: [\n \"POST /repos/{owner}/{repo}/releases/generate-notes\"\n ],\n get: [\"GET /repos/{owner}/{repo}\"],\n getAccessRestrictions: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions\"\n ],\n getAdminBranchProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"\n ],\n getAllDeploymentProtectionRules: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules\"\n ],\n getAllEnvironments: [\"GET /repos/{owner}/{repo}/environments\"],\n getAllStatusCheckContexts: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\"\n ],\n getAllTopics: [\"GET /repos/{owner}/{repo}/topics\"],\n getAppsWithAccessToProtectedBranch: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\"\n ],\n getAutolink: [\"GET /repos/{owner}/{repo}/autolinks/{autolink_id}\"],\n getBranch: [\"GET /repos/{owner}/{repo}/branches/{branch}\"],\n getBranchProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection\"\n ],\n getBranchRules: [\"GET /repos/{owner}/{repo}/rules/branches/{branch}\"],\n getClones: [\"GET /repos/{owner}/{repo}/traffic/clones\"],\n getCodeFrequencyStats: [\"GET /repos/{owner}/{repo}/stats/code_frequency\"],\n getCollaboratorPermissionLevel: [\n \"GET /repos/{owner}/{repo}/collaborators/{username}/permission\"\n ],\n getCombinedStatusForRef: [\"GET /repos/{owner}/{repo}/commits/{ref}/status\"],\n getCommit: [\"GET /repos/{owner}/{repo}/commits/{ref}\"],\n getCommitActivityStats: [\"GET /repos/{owner}/{repo}/stats/commit_activity\"],\n getCommitComment: [\"GET /repos/{owner}/{repo}/comments/{comment_id}\"],\n getCommitSignatureProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_signatures\"\n ],\n getCommunityProfileMetrics: [\"GET /repos/{owner}/{repo}/community/profile\"],\n getContent: [\"GET /repos/{owner}/{repo}/contents/{path}\"],\n getContributorsStats: [\"GET /repos/{owner}/{repo}/stats/contributors\"],\n getCustomDeploymentProtectionRule: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/{protection_rule_id}\"\n ],\n getCustomPropertiesValues: [\"GET /repos/{owner}/{repo}/properties/values\"],\n getDeployKey: [\"GET /repos/{owner}/{repo}/keys/{key_id}\"],\n getDeployment: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}\"],\n getDeploymentBranchPolicy: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}\"\n ],\n getDeploymentStatus: [\n \"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses/{status_id}\"\n ],\n getEnvironment: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}\"\n ],\n getLatestPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/latest\"],\n getLatestRelease: [\"GET /repos/{owner}/{repo}/releases/latest\"],\n getOrgRuleSuite: [\"GET /orgs/{org}/rulesets/rule-suites/{rule_suite_id}\"],\n getOrgRuleSuites: [\"GET /orgs/{org}/rulesets/rule-suites\"],\n getOrgRuleset: [\"GET /orgs/{org}/rulesets/{ruleset_id}\"],\n getOrgRulesets: [\"GET /orgs/{org}/rulesets\"],\n getPages: [\"GET /repos/{owner}/{repo}/pages\"],\n getPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/{build_id}\"],\n getPagesDeployment: [\n \"GET /repos/{owner}/{repo}/pages/deployments/{pages_deployment_id}\"\n ],\n getPagesHealthCheck: [\"GET /repos/{owner}/{repo}/pages/health\"],\n getParticipationStats: [\"GET /repos/{owner}/{repo}/stats/participation\"],\n getPullRequestReviewProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"\n ],\n getPunchCardStats: [\"GET /repos/{owner}/{repo}/stats/punch_card\"],\n getReadme: [\"GET /repos/{owner}/{repo}/readme\"],\n getReadmeInDirectory: [\"GET /repos/{owner}/{repo}/readme/{dir}\"],\n getRelease: [\"GET /repos/{owner}/{repo}/releases/{release_id}\"],\n getReleaseAsset: [\"GET /repos/{owner}/{repo}/releases/assets/{asset_id}\"],\n getReleaseByTag: [\"GET /repos/{owner}/{repo}/releases/tags/{tag}\"],\n getRepoRuleSuite: [\n \"GET /repos/{owner}/{repo}/rulesets/rule-suites/{rule_suite_id}\"\n ],\n getRepoRuleSuites: [\"GET /repos/{owner}/{repo}/rulesets/rule-suites\"],\n getRepoRuleset: [\"GET /repos/{owner}/{repo}/rulesets/{ruleset_id}\"],\n getRepoRulesets: [\"GET /repos/{owner}/{repo}/rulesets\"],\n getStatusChecksProtection: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"\n ],\n getTeamsWithAccessToProtectedBranch: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\"\n ],\n getTopPaths: [\"GET /repos/{owner}/{repo}/traffic/popular/paths\"],\n getTopReferrers: [\"GET /repos/{owner}/{repo}/traffic/popular/referrers\"],\n getUsersWithAccessToProtectedBranch: [\n \"GET /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\"\n ],\n getViews: [\"GET /repos/{owner}/{repo}/traffic/views\"],\n getWebhook: [\"GET /repos/{owner}/{repo}/hooks/{hook_id}\"],\n getWebhookConfigForRepo: [\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/config\"\n ],\n getWebhookDelivery: [\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}\"\n ],\n listActivities: [\"GET /repos/{owner}/{repo}/activity\"],\n listAttestations: [\n \"GET /repos/{owner}/{repo}/attestations/{subject_digest}\"\n ],\n listAutolinks: [\"GET /repos/{owner}/{repo}/autolinks\"],\n listBranches: [\"GET /repos/{owner}/{repo}/branches\"],\n listBranchesForHeadCommit: [\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/branches-where-head\"\n ],\n listCollaborators: [\"GET /repos/{owner}/{repo}/collaborators\"],\n listCommentsForCommit: [\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/comments\"\n ],\n listCommitCommentsForRepo: [\"GET /repos/{owner}/{repo}/comments\"],\n listCommitStatusesForRef: [\n \"GET /repos/{owner}/{repo}/commits/{ref}/statuses\"\n ],\n listCommits: [\"GET /repos/{owner}/{repo}/commits\"],\n listContributors: [\"GET /repos/{owner}/{repo}/contributors\"],\n listCustomDeploymentRuleIntegrations: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment_protection_rules/apps\"\n ],\n listDeployKeys: [\"GET /repos/{owner}/{repo}/keys\"],\n listDeploymentBranchPolicies: [\n \"GET /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies\"\n ],\n listDeploymentStatuses: [\n \"GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses\"\n ],\n listDeployments: [\"GET /repos/{owner}/{repo}/deployments\"],\n listForAuthenticatedUser: [\"GET /user/repos\"],\n listForOrg: [\"GET /orgs/{org}/repos\"],\n listForUser: [\"GET /users/{username}/repos\"],\n listForks: [\"GET /repos/{owner}/{repo}/forks\"],\n listInvitations: [\"GET /repos/{owner}/{repo}/invitations\"],\n listInvitationsForAuthenticatedUser: [\"GET /user/repository_invitations\"],\n listLanguages: [\"GET /repos/{owner}/{repo}/languages\"],\n listPagesBuilds: [\"GET /repos/{owner}/{repo}/pages/builds\"],\n listPublic: [\"GET /repositories\"],\n listPullRequestsAssociatedWithCommit: [\n \"GET /repos/{owner}/{repo}/commits/{commit_sha}/pulls\"\n ],\n listReleaseAssets: [\n \"GET /repos/{owner}/{repo}/releases/{release_id}/assets\"\n ],\n listReleases: [\"GET /repos/{owner}/{repo}/releases\"],\n listTags: [\"GET /repos/{owner}/{repo}/tags\"],\n listTeams: [\"GET /repos/{owner}/{repo}/teams\"],\n listWebhookDeliveries: [\n \"GET /repos/{owner}/{repo}/hooks/{hook_id}/deliveries\"\n ],\n listWebhooks: [\"GET /repos/{owner}/{repo}/hooks\"],\n merge: [\"POST /repos/{owner}/{repo}/merges\"],\n mergeUpstream: [\"POST /repos/{owner}/{repo}/merge-upstream\"],\n pingWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/pings\"],\n redeliverWebhookDelivery: [\n \"POST /repos/{owner}/{repo}/hooks/{hook_id}/deliveries/{delivery_id}/attempts\"\n ],\n removeAppAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\",\n {},\n { mapToData: \"apps\" }\n ],\n removeCollaborator: [\n \"DELETE /repos/{owner}/{repo}/collaborators/{username}\"\n ],\n removeStatusCheckContexts: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\",\n {},\n { mapToData: \"contexts\" }\n ],\n removeStatusCheckProtection: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"\n ],\n removeTeamAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\",\n {},\n { mapToData: \"teams\" }\n ],\n removeUserAccessRestrictions: [\n \"DELETE /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\",\n {},\n { mapToData: \"users\" }\n ],\n renameBranch: [\"POST /repos/{owner}/{repo}/branches/{branch}/rename\"],\n replaceAllTopics: [\"PUT /repos/{owner}/{repo}/topics\"],\n requestPagesBuild: [\"POST /repos/{owner}/{repo}/pages/builds\"],\n setAdminBranchProtection: [\n \"POST /repos/{owner}/{repo}/branches/{branch}/protection/enforce_admins\"\n ],\n setAppAccessRestrictions: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/apps\",\n {},\n { mapToData: \"apps\" }\n ],\n setStatusCheckContexts: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks/contexts\",\n {},\n { mapToData: \"contexts\" }\n ],\n setTeamAccessRestrictions: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/teams\",\n {},\n { mapToData: \"teams\" }\n ],\n setUserAccessRestrictions: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection/restrictions/users\",\n {},\n { mapToData: \"users\" }\n ],\n testPushWebhook: [\"POST /repos/{owner}/{repo}/hooks/{hook_id}/tests\"],\n transfer: [\"POST /repos/{owner}/{repo}/transfer\"],\n update: [\"PATCH /repos/{owner}/{repo}\"],\n updateBranchProtection: [\n \"PUT /repos/{owner}/{repo}/branches/{branch}/protection\"\n ],\n updateCommitComment: [\"PATCH /repos/{owner}/{repo}/comments/{comment_id}\"],\n updateDeploymentBranchPolicy: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}/deployment-branch-policies/{branch_policy_id}\"\n ],\n updateInformationAboutPagesSite: [\"PUT /repos/{owner}/{repo}/pages\"],\n updateInvitation: [\n \"PATCH /repos/{owner}/{repo}/invitations/{invitation_id}\"\n ],\n updateOrgRuleset: [\"PUT /orgs/{org}/rulesets/{ruleset_id}\"],\n updatePullRequestReviewProtection: [\n \"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_pull_request_reviews\"\n ],\n updateRelease: [\"PATCH /repos/{owner}/{repo}/releases/{release_id}\"],\n updateReleaseAsset: [\n \"PATCH /repos/{owner}/{repo}/releases/assets/{asset_id}\"\n ],\n updateRepoRuleset: [\"PUT /repos/{owner}/{repo}/rulesets/{ruleset_id}\"],\n updateStatusCheckPotection: [\n \"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\",\n {},\n { renamed: [\"repos\", \"updateStatusCheckProtection\"] }\n ],\n updateStatusCheckProtection: [\n \"PATCH /repos/{owner}/{repo}/branches/{branch}/protection/required_status_checks\"\n ],\n updateWebhook: [\"PATCH /repos/{owner}/{repo}/hooks/{hook_id}\"],\n updateWebhookConfigForRepo: [\n \"PATCH /repos/{owner}/{repo}/hooks/{hook_id}/config\"\n ],\n uploadReleaseAsset: [\n \"POST /repos/{owner}/{repo}/releases/{release_id}/assets{?name,label}\",\n { baseUrl: \"https://uploads.github.com\" }\n ]\n },\n search: {\n code: [\"GET /search/code\"],\n commits: [\"GET /search/commits\"],\n issuesAndPullRequests: [\"GET /search/issues\"],\n labels: [\"GET /search/labels\"],\n repos: [\"GET /search/repositories\"],\n topics: [\"GET /search/topics\"],\n users: [\"GET /search/users\"]\n },\n secretScanning: {\n createPushProtectionBypass: [\n \"POST /repos/{owner}/{repo}/secret-scanning/push-protection-bypasses\"\n ],\n getAlert: [\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}\"\n ],\n getScanHistory: [\"GET /repos/{owner}/{repo}/secret-scanning/scan-history\"],\n listAlertsForEnterprise: [\n \"GET /enterprises/{enterprise}/secret-scanning/alerts\"\n ],\n listAlertsForOrg: [\"GET /orgs/{org}/secret-scanning/alerts\"],\n listAlertsForRepo: [\"GET /repos/{owner}/{repo}/secret-scanning/alerts\"],\n listLocationsForAlert: [\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations\"\n ],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}\"\n ]\n },\n securityAdvisories: {\n createFork: [\n \"POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/forks\"\n ],\n createPrivateVulnerabilityReport: [\n \"POST /repos/{owner}/{repo}/security-advisories/reports\"\n ],\n createRepositoryAdvisory: [\n \"POST /repos/{owner}/{repo}/security-advisories\"\n ],\n createRepositoryAdvisoryCveRequest: [\n \"POST /repos/{owner}/{repo}/security-advisories/{ghsa_id}/cve\"\n ],\n getGlobalAdvisory: [\"GET /advisories/{ghsa_id}\"],\n getRepositoryAdvisory: [\n \"GET /repos/{owner}/{repo}/security-advisories/{ghsa_id}\"\n ],\n listGlobalAdvisories: [\"GET /advisories\"],\n listOrgRepositoryAdvisories: [\"GET /orgs/{org}/security-advisories\"],\n listRepositoryAdvisories: [\"GET /repos/{owner}/{repo}/security-advisories\"],\n updateRepositoryAdvisory: [\n \"PATCH /repos/{owner}/{repo}/security-advisories/{ghsa_id}\"\n ]\n },\n teams: {\n addOrUpdateMembershipForUserInOrg: [\n \"PUT /orgs/{org}/teams/{team_slug}/memberships/{username}\"\n ],\n addOrUpdateProjectPermissionsInOrg: [\n \"PUT /orgs/{org}/teams/{team_slug}/projects/{project_id}\"\n ],\n addOrUpdateRepoPermissionsInOrg: [\n \"PUT /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"\n ],\n checkPermissionsForProjectInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/projects/{project_id}\"\n ],\n checkPermissionsForRepoInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"\n ],\n create: [\"POST /orgs/{org}/teams\"],\n createDiscussionCommentInOrg: [\n \"POST /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"\n ],\n createDiscussionInOrg: [\"POST /orgs/{org}/teams/{team_slug}/discussions\"],\n deleteDiscussionCommentInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"\n ],\n deleteDiscussionInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"\n ],\n deleteInOrg: [\"DELETE /orgs/{org}/teams/{team_slug}\"],\n getByName: [\"GET /orgs/{org}/teams/{team_slug}\"],\n getDiscussionCommentInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"\n ],\n getDiscussionInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"\n ],\n getMembershipForUserInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/memberships/{username}\"\n ],\n list: [\"GET /orgs/{org}/teams\"],\n listChildInOrg: [\"GET /orgs/{org}/teams/{team_slug}/teams\"],\n listDiscussionCommentsInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments\"\n ],\n listDiscussionsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/discussions\"],\n listForAuthenticatedUser: [\"GET /user/teams\"],\n listMembersInOrg: [\"GET /orgs/{org}/teams/{team_slug}/members\"],\n listPendingInvitationsInOrg: [\n \"GET /orgs/{org}/teams/{team_slug}/invitations\"\n ],\n listProjectsInOrg: [\"GET /orgs/{org}/teams/{team_slug}/projects\"],\n listReposInOrg: [\"GET /orgs/{org}/teams/{team_slug}/repos\"],\n removeMembershipForUserInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/memberships/{username}\"\n ],\n removeProjectInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/projects/{project_id}\"\n ],\n removeRepoInOrg: [\n \"DELETE /orgs/{org}/teams/{team_slug}/repos/{owner}/{repo}\"\n ],\n updateDiscussionCommentInOrg: [\n \"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}\"\n ],\n updateDiscussionInOrg: [\n \"PATCH /orgs/{org}/teams/{team_slug}/discussions/{discussion_number}\"\n ],\n updateInOrg: [\"PATCH /orgs/{org}/teams/{team_slug}\"]\n },\n users: {\n addEmailForAuthenticated: [\n \"POST /user/emails\",\n {},\n { renamed: [\"users\", \"addEmailForAuthenticatedUser\"] }\n ],\n addEmailForAuthenticatedUser: [\"POST /user/emails\"],\n addSocialAccountForAuthenticatedUser: [\"POST /user/social_accounts\"],\n block: [\"PUT /user/blocks/{username}\"],\n checkBlocked: [\"GET /user/blocks/{username}\"],\n checkFollowingForUser: [\"GET /users/{username}/following/{target_user}\"],\n checkPersonIsFollowedByAuthenticated: [\"GET /user/following/{username}\"],\n createGpgKeyForAuthenticated: [\n \"POST /user/gpg_keys\",\n {},\n { renamed: [\"users\", \"createGpgKeyForAuthenticatedUser\"] }\n ],\n createGpgKeyForAuthenticatedUser: [\"POST /user/gpg_keys\"],\n createPublicSshKeyForAuthenticated: [\n \"POST /user/keys\",\n {},\n { renamed: [\"users\", \"createPublicSshKeyForAuthenticatedUser\"] }\n ],\n createPublicSshKeyForAuthenticatedUser: [\"POST /user/keys\"],\n createSshSigningKeyForAuthenticatedUser: [\"POST /user/ssh_signing_keys\"],\n deleteEmailForAuthenticated: [\n \"DELETE /user/emails\",\n {},\n { renamed: [\"users\", \"deleteEmailForAuthenticatedUser\"] }\n ],\n deleteEmailForAuthenticatedUser: [\"DELETE /user/emails\"],\n deleteGpgKeyForAuthenticated: [\n \"DELETE /user/gpg_keys/{gpg_key_id}\",\n {},\n { renamed: [\"users\", \"deleteGpgKeyForAuthenticatedUser\"] }\n ],\n deleteGpgKeyForAuthenticatedUser: [\"DELETE /user/gpg_keys/{gpg_key_id}\"],\n deletePublicSshKeyForAuthenticated: [\n \"DELETE /user/keys/{key_id}\",\n {},\n { renamed: [\"users\", \"deletePublicSshKeyForAuthenticatedUser\"] }\n ],\n deletePublicSshKeyForAuthenticatedUser: [\"DELETE /user/keys/{key_id}\"],\n deleteSocialAccountForAuthenticatedUser: [\"DELETE /user/social_accounts\"],\n deleteSshSigningKeyForAuthenticatedUser: [\n \"DELETE /user/ssh_signing_keys/{ssh_signing_key_id}\"\n ],\n follow: [\"PUT /user/following/{username}\"],\n getAuthenticated: [\"GET /user\"],\n getById: [\"GET /user/{account_id}\"],\n getByUsername: [\"GET /users/{username}\"],\n getContextForUser: [\"GET /users/{username}/hovercard\"],\n getGpgKeyForAuthenticated: [\n \"GET /user/gpg_keys/{gpg_key_id}\",\n {},\n { renamed: [\"users\", \"getGpgKeyForAuthenticatedUser\"] }\n ],\n getGpgKeyForAuthenticatedUser: [\"GET /user/gpg_keys/{gpg_key_id}\"],\n getPublicSshKeyForAuthenticated: [\n \"GET /user/keys/{key_id}\",\n {},\n { renamed: [\"users\", \"getPublicSshKeyForAuthenticatedUser\"] }\n ],\n getPublicSshKeyForAuthenticatedUser: [\"GET /user/keys/{key_id}\"],\n getSshSigningKeyForAuthenticatedUser: [\n \"GET /user/ssh_signing_keys/{ssh_signing_key_id}\"\n ],\n list: [\"GET /users\"],\n listAttestations: [\"GET /users/{username}/attestations/{subject_digest}\"],\n listBlockedByAuthenticated: [\n \"GET /user/blocks\",\n {},\n { renamed: [\"users\", \"listBlockedByAuthenticatedUser\"] }\n ],\n listBlockedByAuthenticatedUser: [\"GET /user/blocks\"],\n listEmailsForAuthenticated: [\n \"GET /user/emails\",\n {},\n { renamed: [\"users\", \"listEmailsForAuthenticatedUser\"] }\n ],\n listEmailsForAuthenticatedUser: [\"GET /user/emails\"],\n listFollowedByAuthenticated: [\n \"GET /user/following\",\n {},\n { renamed: [\"users\", \"listFollowedByAuthenticatedUser\"] }\n ],\n listFollowedByAuthenticatedUser: [\"GET /user/following\"],\n listFollowersForAuthenticatedUser: [\"GET /user/followers\"],\n listFollowersForUser: [\"GET /users/{username}/followers\"],\n listFollowingForUser: [\"GET /users/{username}/following\"],\n listGpgKeysForAuthenticated: [\n \"GET /user/gpg_keys\",\n {},\n { renamed: [\"users\", \"listGpgKeysForAuthenticatedUser\"] }\n ],\n listGpgKeysForAuthenticatedUser: [\"GET /user/gpg_keys\"],\n listGpgKeysForUser: [\"GET /users/{username}/gpg_keys\"],\n listPublicEmailsForAuthenticated: [\n \"GET /user/public_emails\",\n {},\n { renamed: [\"users\", \"listPublicEmailsForAuthenticatedUser\"] }\n ],\n listPublicEmailsForAuthenticatedUser: [\"GET /user/public_emails\"],\n listPublicKeysForUser: [\"GET /users/{username}/keys\"],\n listPublicSshKeysForAuthenticated: [\n \"GET /user/keys\",\n {},\n { renamed: [\"users\", \"listPublicSshKeysForAuthenticatedUser\"] }\n ],\n listPublicSshKeysForAuthenticatedUser: [\"GET /user/keys\"],\n listSocialAccountsForAuthenticatedUser: [\"GET /user/social_accounts\"],\n listSocialAccountsForUser: [\"GET /users/{username}/social_accounts\"],\n listSshSigningKeysForAuthenticatedUser: [\"GET /user/ssh_signing_keys\"],\n listSshSigningKeysForUser: [\"GET /users/{username}/ssh_signing_keys\"],\n setPrimaryEmailVisibilityForAuthenticated: [\n \"PATCH /user/email/visibility\",\n {},\n { renamed: [\"users\", \"setPrimaryEmailVisibilityForAuthenticatedUser\"] }\n ],\n setPrimaryEmailVisibilityForAuthenticatedUser: [\n \"PATCH /user/email/visibility\"\n ],\n unblock: [\"DELETE /user/blocks/{username}\"],\n unfollow: [\"DELETE /user/following/{username}\"],\n updateAuthenticated: [\"PATCH /user\"]\n }\n};\nvar endpoints_default = Endpoints;\nexport {\n endpoints_default as default\n};\n//# sourceMappingURL=endpoints.js.map\n","import { VERSION } from \"./version.js\";\nimport { endpointsToMethods } from \"./endpoints-to-methods.js\";\nfunction restEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit);\n return {\n rest: api\n };\n}\nrestEndpointMethods.VERSION = VERSION;\nfunction legacyRestEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit);\n return {\n ...api,\n rest: api\n };\n}\nlegacyRestEndpointMethods.VERSION = VERSION;\nexport {\n legacyRestEndpointMethods,\n restEndpointMethods\n};\n//# sourceMappingURL=index.js.map\n","const VERSION = \"13.3.1\";\nexport {\n VERSION\n};\n//# sourceMappingURL=version.js.map\n","const VERSION = \"21.1.1\";\nexport {\n VERSION\n};\n","import { Octokit as Core } from \"@octokit/core\";\nimport { requestLog } from \"@octokit/plugin-request-log\";\nimport {\n paginateRest\n} from \"@octokit/plugin-paginate-rest\";\nimport { legacyRestEndpointMethods } from \"@octokit/plugin-rest-endpoint-methods\";\nimport { VERSION } from \"./version.js\";\nconst Octokit = Core.plugin(requestLog, legacyRestEndpointMethods, paginateRest).defaults(\n {\n userAgent: `octokit-rest.js/${VERSION}`\n }\n);\nexport {\n Octokit\n};\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(670);\n"],"names":["createScanner","text","ignoreTrivia","len","length","pos","value","tokenOffset","token","lineNumber","lineStartOffset","tokenLineStartOffset","prevTokenLineStartOffset","scanError","scanHexDigits","count","exact","digits","ch","charCodeAt","scanNext","code","isWhiteSpace","String","fromCharCode","isLineBreak","result","start","substring","ch3","scanString","safeLength","commentClosed","isDigit","end","scanNumber","isUnknownContentCharacter","setPosition","newPosition","getPosition","scan","getToken","getTokenValue","getTokenOffset","getTokenLength","getTokenStartLine","getTokenStartCharacter","getTokenError","CharacterCodes","ParseOptions","format","documentText","range","options","initialIndentLevel","formatText","formatTextStart","rangeStart","rangeEnd","offset","isEOL","endOffset","content","i","nChars","tabSize","charAt","Math","floor","computeIndentLevel","eol","getEOL","indentValue","numberLineBreaks","indentLevel","insertSpaces","repeat","scanner","hasError","newLinesAndIndent","keepLines","editOperations","addEdit","startOffset","push","firstToken","firstTokenStart","firstTokenEnd","secondToken","replaceContent","needsLineBreak","insertFinalNewline","s","indexOf","parseTree","errors","DEFAULT","currentParent","type","children","parent","undefined","ensurePropertyComplete","onValue","valueNode","visit","onObjectBegin","onObjectProperty","name","onObjectEnd","onArrayBegin","onArrayEnd","onLiteralValue","getNodeType","onSeparator","sep","colonOffset","onError","error","findNodeAtLocation","root","path","node","segment","Array","isArray","found","propertyNode","index","visitor","_scanner","_jsonPath","toNoArgVisit","visitFunction","toNoArgVisitWithPath","slice","toOneArgVisit","arg","toOneArgVisitWithPath","onComment","disallowComments","allowTrailingComma","handleError","skipUntilAfter","skipUntil","parseString","isValue","allowEmptyContent","parseValue","isFirstElement","needsComma","pop","parseArray","parseObject","tokenValue","Number","isNaN","parseLiteral","withFormatting","edit","formattingOptions","newText","applyEdit","begin","edits","min","max","ScanError","SyntaxKind","position","segments","earlyReturnException","Object","previousNode","previousNodeInst","isAtPropertyKey","setPreviousNode","last","e","matches","pattern","k","currentProperty","previousParents","object","array","findNodeAtOffset","includeRightBound","contains","item","getNodePath","key","getNodeValue","map","obj","create","prop","replaceCh","kind","parts","replace","join","ParseErrorCode","printParseErrorCode","modify","originalPath","lastSegment","existing","Error","propertyIndex","removeBegin","removeEnd","previous","JSON","stringify","newProperty","getInsertionIndex","p","insertIndex","removalIndex","toRemove","isArrayInsertion","toModify","applyEdits","sortedEdits","sort","a","b","diff","lastModifiedOffset","assertPath","TypeError","normalizeStringPosix","allowAboveRoot","res","lastSegmentLength","lastSlash","dots","lastSlashIndex","lastIndexOf","posix","resolve","cwd","resolvedPath","resolvedAbsolute","arguments","process","normalize","isAbsolute","trailingSeparator","joined","relative","from","to","fromStart","fromEnd","fromLen","toStart","toLen","lastCommonSep","fromCode","out","_makeLong","dirname","hasRoot","matchedSlash","basename","ext","extIdx","firstNonSlashEnd","extname","startDot","startPart","preDotState","pathObject","dir","base","_format","parse","ret","delimiter","win32","module","exports","agent","context","subscriptions","vscode","languages","registerCompletionItemProvider","language","provideCompletionItems","document","SettingsDocument","_token","location","getLocation","getText","offsetAt","getReplaceRange","extensionsContent","provideInstalledExtensionProposals","recommendations","registerVariableCompletions","paths","Map","keys","isValidLocation","match","some","bind","isCompletingInsidePropertyStringValue","replacing","getWordRangeAtPosition","Range","inserting","with","data","commands","executeCommand","isCancellationRequested","CompletionList","completion","CompletionItem","CompletionItemKind","Constant","detail","documentation","description","items","registerContextKeyCompletions","fileName","endsWith","values","includes","isLocationInsideTopLevelProperty","isEqual","label","l10n","t","param","variable","insertText","SnippetString","appendPlaceholder","appendText","nodeStart","positionAt","nodeEnd","isBeforeOrEqual","isAfterOrEqual","registerDocumentSymbolProvider","provideDocumentSymbols","lastProperty","depthInObjects","property","_offset","_length","SymbolInformation","SymbolKind","async","additionalText","includeBuiltinExtensions","knownExtensionProposals","extensions","all","filter","id","startsWith","Value","filterText","example","window","registerProfileContentHandler","getOctokit","this","_octokit","authentication","getSession","createIfNone","accessToken","Octokit","request","userAgent","auth","saveProfile","octokit","gists","public","files","html_url","link","Uri","getPublicOctokit","_public_octokit","readProfile","gist_id","gist","get","OVERRIDE_IDENTIFIER_REGEX","constructor","provideWindowTitleCompletionItems","provideFilesAssociationsCompletionItems","provideExcludeCompletionItems","provideLanguageCompletionItems","provideEditorLabelCompletionItems","ignoredExtensions","alreadyConfigured","providePortsAttributesCompletionItem","provideLanguageOverridesCompletionItems","isCompletingPropertyValue","completions","newSimpleCompletionItem","newSnippetCompletionItem","snippet","provideLanguageCompletionItemsForLanguageOverrides","getLanguages","l","completionItems","Property","startPosition","endPosition","translate","donotSuggestLanguages","languageOverridesRanges","lastLanguageOverrideRange","exec","trim","lastLanguageOverrideEndPosition","isBefore","languageOverrideRange","find","o","require","NullObject","prototype","paramRE","quotedPairRE","mediaTypeRE","defaultContentType","parameters","freeze","header","test","toLowerCase","lastIndex","getUserAgent","navigator","version","substr","arch","register","state","method","reverse","reduce","callback","Promise","then","registry","registered","hook","addHook","orig","result_","catch","removeHook","splice","Function","bindable","bindApi","removeHookRef","apply","api","remove","forEach","args","mergeDeep","defaults","assign","toString","call","proto","getPrototypeOf","Ctor","hasOwnProperty","isPlainObject","removeUndefinedProperties","merge","route","url","split","headers","newObj","mergedOptions","mediaType","previews","preview","concat","urlVariableRegex","removeNonChars","variableName","omit","keysToOmit","__proto__","encodeReserved","str","part","encodeURI","encodeUnreserved","encodeURIComponent","c","toUpperCase","encodeValue","operator","isDefined","isKeyOperator","expand","template","operators","_","expression","literal","tmp","modifier","parseInt","value2","getValues","separator","body","urlVariableNames","extractUrlVariableNames","baseUrl","remainingParameters","option","accept","previewsFromAcceptHeader","names","q","addQueryParameters","endpointWithDefaults","endpoint","withDefaults","oldDefaults","newDefaults","DEFAULTS2","endpoint2","DEFAULTS","RequestError","status","response","message","statusCode","super","requestCopy","authorization","fetchWrapper","requestOptions","fetch","globalThis","log","console","parseSuccessResponseBody","requestHeaders","fromEntries","entries","fetchResponse","redirect","signal","duplex","cause","requestError","responseHeaders","octokitResponse","deprecationLink","warn","sunset","statusText","getResponseData","ArrayBuffer","suffix","documentation_url","v","toErrorMessage","contentType","mimetype","isJSONResponse","charset","arrayBuffer","err","oldEndpoint","endpointOptions","request2","route2","parameters2","GraphqlResponseError","captureStackTrace","NON_VARIABLE_OPTIONS","FORBIDDEN_VARIABLE_OPTIONS","GHES_V3_SUFFIX_REGEX","newRequest","query","reject","parsedOptions","variables","graphql","b64url","jwtRE","RegExp","isJWT","isApp","isInstallation","isUserToServer","tokenType","withAuthorizationPrefix","createTokenAuth","noop","consoleWarn","consoleError","userAgentTrail","requestLog","wrap","debug","Date","now","requestId","info","iterator","requestMethod","Symbol","asyncIterator","next","done","normalizedResponse","incompleteResults","incomplete_results","repositorySelection","repository_selection","totalCount","total_count","namespaceKey","normalizePaginatedListResponse","paginate","mapFn","gather","results","iterator2","earlyExit","paginateRest","VERSION","endpointMethodsMap","scope","endpoints","actions","addCustomLabelsToSelfHostedRunnerForOrg","addCustomLabelsToSelfHostedRunnerForRepo","addRepoAccessToSelfHostedRunnerGroupInOrg","addSelectedRepoToOrgSecret","addSelectedRepoToOrgVariable","approveWorkflowRun","cancelWorkflowRun","createEnvironmentVariable","createOrUpdateEnvironmentSecret","createOrUpdateOrgSecret","createOrUpdateRepoSecret","createOrgVariable","createRegistrationTokenForOrg","createRegistrationTokenForRepo","createRemoveTokenForOrg","createRemoveTokenForRepo","createRepoVariable","createWorkflowDispatch","deleteActionsCacheById","deleteActionsCacheByKey","deleteArtifact","deleteEnvironmentSecret","deleteEnvironmentVariable","deleteOrgSecret","deleteOrgVariable","deleteRepoSecret","deleteRepoVariable","deleteSelfHostedRunnerFromOrg","deleteSelfHostedRunnerFromRepo","deleteWorkflowRun","deleteWorkflowRunLogs","disableSelectedRepositoryGithubActionsOrganization","disableWorkflow","downloadArtifact","downloadJobLogsForWorkflowRun","downloadWorkflowRunAttemptLogs","downloadWorkflowRunLogs","enableSelectedRepositoryGithubActionsOrganization","enableWorkflow","forceCancelWorkflowRun","generateRunnerJitconfigForOrg","generateRunnerJitconfigForRepo","getActionsCacheList","getActionsCacheUsage","getActionsCacheUsageByRepoForOrg","getActionsCacheUsageForOrg","getAllowedActionsOrganization","getAllowedActionsRepository","getArtifact","getCustomOidcSubClaimForRepo","getEnvironmentPublicKey","getEnvironmentSecret","getEnvironmentVariable","getGithubActionsDefaultWorkflowPermissionsOrganization","getGithubActionsDefaultWorkflowPermissionsRepository","getGithubActionsPermissionsOrganization","getGithubActionsPermissionsRepository","getJobForWorkflowRun","getOrgPublicKey","getOrgSecret","getOrgVariable","getPendingDeploymentsForRun","getRepoPermissions","renamed","getRepoPublicKey","getRepoSecret","getRepoVariable","getReviewsForRun","getSelfHostedRunnerForOrg","getSelfHostedRunnerForRepo","getWorkflow","getWorkflowAccessToRepository","getWorkflowRun","getWorkflowRunAttempt","getWorkflowRunUsage","getWorkflowUsage","listArtifactsForRepo","listEnvironmentSecrets","listEnvironmentVariables","listJobsForWorkflowRun","listJobsForWorkflowRunAttempt","listLabelsForSelfHostedRunnerForOrg","listLabelsForSelfHostedRunnerForRepo","listOrgSecrets","listOrgVariables","listRepoOrganizationSecrets","listRepoOrganizationVariables","listRepoSecrets","listRepoVariables","listRepoWorkflows","listRunnerApplicationsForOrg","listRunnerApplicationsForRepo","listSelectedReposForOrgSecret","listSelectedReposForOrgVariable","listSelectedRepositoriesEnabledGithubActionsOrganization","listSelfHostedRunnersForOrg","listSelfHostedRunnersForRepo","listWorkflowRunArtifacts","listWorkflowRuns","listWorkflowRunsForRepo","reRunJobForWorkflowRun","reRunWorkflow","reRunWorkflowFailedJobs","removeAllCustomLabelsFromSelfHostedRunnerForOrg","removeAllCustomLabelsFromSelfHostedRunnerForRepo","removeCustomLabelFromSelfHostedRunnerForOrg","removeCustomLabelFromSelfHostedRunnerForRepo","removeSelectedRepoFromOrgSecret","removeSelectedRepoFromOrgVariable","reviewCustomGatesForRun","reviewPendingDeploymentsForRun","setAllowedActionsOrganization","setAllowedActionsRepository","setCustomLabelsForSelfHostedRunnerForOrg","setCustomLabelsForSelfHostedRunnerForRepo","setCustomOidcSubClaimForRepo","setGithubActionsDefaultWorkflowPermissionsOrganization","setGithubActionsDefaultWorkflowPermissionsRepository","setGithubActionsPermissionsOrganization","setGithubActionsPermissionsRepository","setSelectedReposForOrgSecret","setSelectedReposForOrgVariable","setSelectedRepositoriesEnabledGithubActionsOrganization","setWorkflowAccessToRepository","updateEnvironmentVariable","updateOrgVariable","updateRepoVariable","activity","checkRepoIsStarredByAuthenticatedUser","deleteRepoSubscription","deleteThreadSubscription","getFeeds","getRepoSubscription","getThread","getThreadSubscriptionForAuthenticatedUser","listEventsForAuthenticatedUser","listNotificationsForAuthenticatedUser","listOrgEventsForAuthenticatedUser","listPublicEvents","listPublicEventsForRepoNetwork","listPublicEventsForUser","listPublicOrgEvents","listReceivedEventsForUser","listReceivedPublicEventsForUser","listRepoEvents","listRepoNotificationsForAuthenticatedUser","listReposStarredByAuthenticatedUser","listReposStarredByUser","listReposWatchedByUser","listStargazersForRepo","listWatchedReposForAuthenticatedUser","listWatchersForRepo","markNotificationsAsRead","markRepoNotificationsAsRead","markThreadAsDone","markThreadAsRead","setRepoSubscription","setThreadSubscription","starRepoForAuthenticatedUser","unstarRepoForAuthenticatedUser","apps","addRepoToInstallation","addRepoToInstallationForAuthenticatedUser","checkToken","createFromManifest","createInstallationAccessToken","deleteAuthorization","deleteInstallation","deleteToken","getAuthenticated","getBySlug","getInstallation","getOrgInstallation","getRepoInstallation","getSubscriptionPlanForAccount","getSubscriptionPlanForAccountStubbed","getUserInstallation","getWebhookConfigForApp","getWebhookDelivery","listAccountsForPlan","listAccountsForPlanStubbed","listInstallationReposForAuthenticatedUser","listInstallationRequestsForAuthenticatedApp","listInstallations","listInstallationsForAuthenticatedUser","listPlans","listPlansStubbed","listReposAccessibleToInstallation","listSubscriptionsForAuthenticatedUser","listSubscriptionsForAuthenticatedUserStubbed","listWebhookDeliveries","redeliverWebhookDelivery","removeRepoFromInstallation","removeRepoFromInstallationForAuthenticatedUser","resetToken","revokeInstallationAccessToken","scopeToken","suspendInstallation","unsuspendInstallation","updateWebhookConfigForApp","billing","getGithubActionsBillingOrg","getGithubActionsBillingUser","getGithubBillingUsageReportOrg","getGithubPackagesBillingOrg","getGithubPackagesBillingUser","getSharedStorageBillingOrg","getSharedStorageBillingUser","checks","createSuite","getSuite","listAnnotations","listForRef","listForSuite","listSuitesForRef","rerequestRun","rerequestSuite","setSuitesPreferences","update","codeScanning","commitAutofix","createAutofix","createVariantAnalysis","deleteAnalysis","deleteCodeqlDatabase","getAlert","renamedParameters","alert_id","getAnalysis","getAutofix","getCodeqlDatabase","getDefaultSetup","getSarif","getVariantAnalysis","getVariantAnalysisRepoTask","listAlertInstances","listAlertsForOrg","listAlertsForRepo","listAlertsInstances","listCodeqlDatabases","listRecentAnalyses","updateAlert","updateDefaultSetup","uploadSarif","codeSecurity","attachConfiguration","attachEnterpriseConfiguration","createConfiguration","createConfigurationForEnterprise","deleteConfiguration","deleteConfigurationForEnterprise","detachConfiguration","getConfiguration","getConfigurationForRepository","getConfigurationsForEnterprise","getConfigurationsForOrg","getDefaultConfigurations","getDefaultConfigurationsForEnterprise","getRepositoriesForConfiguration","getRepositoriesForEnterpriseConfiguration","getSingleConfigurationForEnterprise","setConfigurationAsDefault","setConfigurationAsDefaultForEnterprise","updateConfiguration","updateEnterpriseConfiguration","codesOfConduct","getAllCodesOfConduct","getConductCode","codespaces","addRepositoryForSecretForAuthenticatedUser","checkPermissionsForDevcontainer","codespaceMachinesForAuthenticatedUser","createForAuthenticatedUser","createOrUpdateSecretForAuthenticatedUser","createWithPrForAuthenticatedUser","createWithRepoForAuthenticatedUser","deleteForAuthenticatedUser","deleteFromOrganization","deleteSecretForAuthenticatedUser","exportForAuthenticatedUser","getCodespacesForUserInOrg","getExportDetailsForAuthenticatedUser","getForAuthenticatedUser","getPublicKeyForAuthenticatedUser","getSecretForAuthenticatedUser","listDevcontainersInRepositoryForAuthenticatedUser","listForAuthenticatedUser","listInOrganization","org_id","listInRepositoryForAuthenticatedUser","listRepositoriesForSecretForAuthenticatedUser","listSecretsForAuthenticatedUser","preFlightWithRepoForAuthenticatedUser","publishForAuthenticatedUser","removeRepositoryForSecretForAuthenticatedUser","repoMachinesForAuthenticatedUser","setRepositoriesForSecretForAuthenticatedUser","startForAuthenticatedUser","stopForAuthenticatedUser","stopInOrganization","updateForAuthenticatedUser","copilot","addCopilotSeatsForTeams","addCopilotSeatsForUsers","cancelCopilotSeatAssignmentForTeams","cancelCopilotSeatAssignmentForUsers","copilotMetricsForOrganization","copilotMetricsForTeam","getCopilotOrganizationDetails","getCopilotSeatDetailsForUser","listCopilotSeats","usageMetricsForOrg","usageMetricsForTeam","dependabot","listAlertsForEnterprise","dependencyGraph","createRepositorySnapshot","diffRange","exportSbom","emojis","checkIsStarred","createComment","delete","deleteComment","fork","getComment","getRevision","list","listComments","listCommits","listForUser","listForks","listPublic","listStarred","star","unstar","updateComment","git","createBlob","createCommit","createRef","createTag","createTree","deleteRef","getBlob","getCommit","getRef","getTag","getTree","listMatchingRefs","updateRef","gitignore","getAllTemplates","getTemplate","interactions","getRestrictionsForAuthenticatedUser","getRestrictionsForOrg","getRestrictionsForRepo","getRestrictionsForYourPublicRepos","removeRestrictionsForAuthenticatedUser","removeRestrictionsForOrg","removeRestrictionsForRepo","removeRestrictionsForYourPublicRepos","setRestrictionsForAuthenticatedUser","setRestrictionsForOrg","setRestrictionsForRepo","setRestrictionsForYourPublicRepos","issues","addAssignees","addLabels","addSubIssue","checkUserCanBeAssigned","checkUserCanBeAssignedToIssue","createLabel","createMilestone","deleteLabel","deleteMilestone","getEvent","getLabel","getMilestone","listAssignees","listCommentsForRepo","listEvents","listEventsForRepo","listEventsForTimeline","listForOrg","listForRepo","listLabelsForMilestone","listLabelsForRepo","listLabelsOnIssue","listMilestones","listSubIssues","lock","removeAllLabels","removeAssignees","removeLabel","removeSubIssue","reprioritizeSubIssue","setLabels","unlock","updateLabel","updateMilestone","licenses","getAllCommonlyUsed","getForRepo","markdown","render","renderRaw","meta","getAllVersions","getOctocat","getZen","migrations","deleteArchiveForAuthenticatedUser","deleteArchiveForOrg","downloadArchiveForOrg","getArchiveForAuthenticatedUser","getStatusForAuthenticatedUser","getStatusForOrg","listReposForAuthenticatedUser","listReposForOrg","listReposForUser","startForOrg","unlockRepoForAuthenticatedUser","unlockRepoForOrg","oidc","getOidcCustomSubTemplateForOrg","updateOidcCustomSubTemplateForOrg","orgs","addSecurityManagerTeam","deprecated","assignTeamToOrgRole","assignUserToOrgRole","blockUser","cancelInvitation","checkBlockedUser","checkMembershipForUser","checkPublicMembershipForUser","convertMemberToOutsideCollaborator","createInvitation","createOrUpdateCustomProperties","createOrUpdateCustomPropertiesValuesForRepos","createOrUpdateCustomProperty","createWebhook","deleteWebhook","enableOrDisableSecurityProductOnAllOrgRepos","getAllCustomProperties","getCustomProperty","getMembershipForAuthenticatedUser","getMembershipForUser","getOrgRole","getWebhook","getWebhookConfigForOrg","listAppInstallations","listAttestations","listBlockedUsers","listCustomPropertiesValuesForRepos","listFailedInvitations","listInvitationTeams","listMembers","listMembershipsForAuthenticatedUser","listOrgRoleTeams","listOrgRoleUsers","listOrgRoles","listOrganizationFineGrainedPermissions","listOutsideCollaborators","listPatGrantRepositories","listPatGrantRequestRepositories","listPatGrantRequests","listPatGrants","listPendingInvitations","listPublicMembers","listSecurityManagerTeams","listWebhooks","pingWebhook","removeCustomProperty","removeMember","removeMembershipForUser","removeOutsideCollaborator","removePublicMembershipForAuthenticatedUser","removeSecurityManagerTeam","reviewPatGrantRequest","reviewPatGrantRequestsInBulk","revokeAllOrgRolesTeam","revokeAllOrgRolesUser","revokeOrgRoleTeam","revokeOrgRoleUser","setMembershipForUser","setPublicMembershipForAuthenticatedUser","unblockUser","updateMembershipForAuthenticatedUser","updatePatAccess","updatePatAccesses","updateWebhook","updateWebhookConfigForOrg","packages","deletePackageForAuthenticatedUser","deletePackageForOrg","deletePackageForUser","deletePackageVersionForAuthenticatedUser","deletePackageVersionForOrg","deletePackageVersionForUser","getAllPackageVersionsForAPackageOwnedByAnOrg","getAllPackageVersionsForAPackageOwnedByTheAuthenticatedUser","getAllPackageVersionsForPackageOwnedByAuthenticatedUser","getAllPackageVersionsForPackageOwnedByOrg","getAllPackageVersionsForPackageOwnedByUser","getPackageForAuthenticatedUser","getPackageForOrganization","getPackageForUser","getPackageVersionForAuthenticatedUser","getPackageVersionForOrganization","getPackageVersionForUser","listDockerMigrationConflictingPackagesForAuthenticatedUser","listDockerMigrationConflictingPackagesForOrganization","listDockerMigrationConflictingPackagesForUser","listPackagesForAuthenticatedUser","listPackagesForOrganization","listPackagesForUser","restorePackageForAuthenticatedUser","restorePackageForOrg","restorePackageForUser","restorePackageVersionForAuthenticatedUser","restorePackageVersionForOrg","restorePackageVersionForUser","privateRegistries","createOrgPrivateRegistry","deleteOrgPrivateRegistry","getOrgPrivateRegistry","listOrgPrivateRegistries","updateOrgPrivateRegistry","projects","addCollaborator","createCard","createColumn","createForOrg","createForRepo","deleteCard","deleteColumn","getCard","getColumn","getPermissionForUser","listCards","listCollaborators","listColumns","moveCard","moveColumn","removeCollaborator","updateCard","updateColumn","pulls","checkIfMerged","createReplyForReviewComment","createReview","createReviewComment","deletePendingReview","deleteReviewComment","dismissReview","getReview","getReviewComment","listCommentsForReview","listFiles","listRequestedReviewers","listReviewComments","listReviewCommentsForRepo","listReviews","removeRequestedReviewers","requestReviewers","submitReview","updateBranch","updateReview","updateReviewComment","rateLimit","reactions","createForCommitComment","createForIssue","createForIssueComment","createForPullRequestReviewComment","createForRelease","createForTeamDiscussionCommentInOrg","createForTeamDiscussionInOrg","deleteForCommitComment","deleteForIssue","deleteForIssueComment","deleteForPullRequestComment","deleteForRelease","deleteForTeamDiscussion","deleteForTeamDiscussionComment","listForCommitComment","listForIssue","listForIssueComment","listForPullRequestReviewComment","listForRelease","listForTeamDiscussionCommentInOrg","listForTeamDiscussionInOrg","repos","acceptInvitation","acceptInvitationForAuthenticatedUser","addAppAccessRestrictions","mapToData","addStatusCheckContexts","addTeamAccessRestrictions","addUserAccessRestrictions","cancelPagesDeployment","checkAutomatedSecurityFixes","checkCollaborator","checkPrivateVulnerabilityReporting","checkVulnerabilityAlerts","codeownersErrors","compareCommits","compareCommitsWithBasehead","createAttestation","createAutolink","createCommitComment","createCommitSignatureProtection","createCommitStatus","createDeployKey","createDeployment","createDeploymentBranchPolicy","createDeploymentProtectionRule","createDeploymentStatus","createDispatchEvent","createFork","createInOrg","createOrUpdateCustomPropertiesValues","createOrUpdateEnvironment","createOrUpdateFileContents","createOrgRuleset","createPagesDeployment","createPagesSite","createRelease","createRepoRuleset","createUsingTemplate","declineInvitation","declineInvitationForAuthenticatedUser","deleteAccessRestrictions","deleteAdminBranchProtection","deleteAnEnvironment","deleteAutolink","deleteBranchProtection","deleteCommitComment","deleteCommitSignatureProtection","deleteDeployKey","deleteDeployment","deleteDeploymentBranchPolicy","deleteFile","deleteInvitation","deleteOrgRuleset","deletePagesSite","deletePullRequestReviewProtection","deleteRelease","deleteReleaseAsset","deleteRepoRuleset","disableAutomatedSecurityFixes","disableDeploymentProtectionRule","disablePrivateVulnerabilityReporting","disableVulnerabilityAlerts","downloadArchive","downloadTarballArchive","downloadZipballArchive","enableAutomatedSecurityFixes","enablePrivateVulnerabilityReporting","enableVulnerabilityAlerts","generateReleaseNotes","getAccessRestrictions","getAdminBranchProtection","getAllDeploymentProtectionRules","getAllEnvironments","getAllStatusCheckContexts","getAllTopics","getAppsWithAccessToProtectedBranch","getAutolink","getBranch","getBranchProtection","getBranchRules","getClones","getCodeFrequencyStats","getCollaboratorPermissionLevel","getCombinedStatusForRef","getCommitActivityStats","getCommitComment","getCommitSignatureProtection","getCommunityProfileMetrics","getContent","getContributorsStats","getCustomDeploymentProtectionRule","getCustomPropertiesValues","getDeployKey","getDeployment","getDeploymentBranchPolicy","getDeploymentStatus","getEnvironment","getLatestPagesBuild","getLatestRelease","getOrgRuleSuite","getOrgRuleSuites","getOrgRuleset","getOrgRulesets","getPages","getPagesBuild","getPagesDeployment","getPagesHealthCheck","getParticipationStats","getPullRequestReviewProtection","getPunchCardStats","getReadme","getReadmeInDirectory","getRelease","getReleaseAsset","getReleaseByTag","getRepoRuleSuite","getRepoRuleSuites","getRepoRuleset","getRepoRulesets","getStatusChecksProtection","getTeamsWithAccessToProtectedBranch","getTopPaths","getTopReferrers","getUsersWithAccessToProtectedBranch","getViews","getWebhookConfigForRepo","listActivities","listAutolinks","listBranches","listBranchesForHeadCommit","listCommentsForCommit","listCommitCommentsForRepo","listCommitStatusesForRef","listContributors","listCustomDeploymentRuleIntegrations","listDeployKeys","listDeploymentBranchPolicies","listDeploymentStatuses","listDeployments","listInvitations","listInvitationsForAuthenticatedUser","listLanguages","listPagesBuilds","listPullRequestsAssociatedWithCommit","listReleaseAssets","listReleases","listTags","listTeams","mergeUpstream","removeAppAccessRestrictions","removeStatusCheckContexts","removeStatusCheckProtection","removeTeamAccessRestrictions","removeUserAccessRestrictions","renameBranch","replaceAllTopics","requestPagesBuild","setAdminBranchProtection","setAppAccessRestrictions","setStatusCheckContexts","setTeamAccessRestrictions","setUserAccessRestrictions","testPushWebhook","transfer","updateBranchProtection","updateCommitComment","updateDeploymentBranchPolicy","updateInformationAboutPagesSite","updateInvitation","updateOrgRuleset","updatePullRequestReviewProtection","updateRelease","updateReleaseAsset","updateRepoRuleset","updateStatusCheckPotection","updateStatusCheckProtection","updateWebhookConfigForRepo","uploadReleaseAsset","search","commits","issuesAndPullRequests","labels","topics","users","secretScanning","createPushProtectionBypass","getScanHistory","listLocationsForAlert","securityAdvisories","createPrivateVulnerabilityReport","createRepositoryAdvisory","createRepositoryAdvisoryCveRequest","getGlobalAdvisory","getRepositoryAdvisory","listGlobalAdvisories","listOrgRepositoryAdvisories","listRepositoryAdvisories","updateRepositoryAdvisory","teams","addOrUpdateMembershipForUserInOrg","addOrUpdateProjectPermissionsInOrg","addOrUpdateRepoPermissionsInOrg","checkPermissionsForProjectInOrg","checkPermissionsForRepoInOrg","createDiscussionCommentInOrg","createDiscussionInOrg","deleteDiscussionCommentInOrg","deleteDiscussionInOrg","deleteInOrg","getByName","getDiscussionCommentInOrg","getDiscussionInOrg","getMembershipForUserInOrg","listChildInOrg","listDiscussionCommentsInOrg","listDiscussionsInOrg","listMembersInOrg","listPendingInvitationsInOrg","listProjectsInOrg","listReposInOrg","removeMembershipForUserInOrg","removeProjectInOrg","removeRepoInOrg","updateDiscussionCommentInOrg","updateDiscussionInOrg","updateInOrg","addEmailForAuthenticated","addEmailForAuthenticatedUser","addSocialAccountForAuthenticatedUser","block","checkBlocked","checkFollowingForUser","checkPersonIsFollowedByAuthenticated","createGpgKeyForAuthenticated","createGpgKeyForAuthenticatedUser","createPublicSshKeyForAuthenticated","createPublicSshKeyForAuthenticatedUser","createSshSigningKeyForAuthenticatedUser","deleteEmailForAuthenticated","deleteEmailForAuthenticatedUser","deleteGpgKeyForAuthenticated","deleteGpgKeyForAuthenticatedUser","deletePublicSshKeyForAuthenticated","deletePublicSshKeyForAuthenticatedUser","deleteSocialAccountForAuthenticatedUser","deleteSshSigningKeyForAuthenticatedUser","follow","getById","getByUsername","getContextForUser","getGpgKeyForAuthenticated","getGpgKeyForAuthenticatedUser","getPublicSshKeyForAuthenticated","getPublicSshKeyForAuthenticatedUser","getSshSigningKeyForAuthenticatedUser","listBlockedByAuthenticated","listBlockedByAuthenticatedUser","listEmailsForAuthenticated","listEmailsForAuthenticatedUser","listFollowedByAuthenticated","listFollowedByAuthenticatedUser","listFollowersForAuthenticatedUser","listFollowersForUser","listFollowingForUser","listGpgKeysForAuthenticated","listGpgKeysForAuthenticatedUser","listGpgKeysForUser","listPublicEmailsForAuthenticated","listPublicEmailsForAuthenticatedUser","listPublicKeysForUser","listPublicSshKeysForAuthenticated","listPublicSshKeysForAuthenticatedUser","listSocialAccountsForAuthenticatedUser","listSocialAccountsForUser","listSshSigningKeysForAuthenticatedUser","listSshSigningKeysForUser","setPrimaryEmailVisibilityForAuthenticated","setPrimaryEmailVisibilityForAuthenticatedUser","unblock","unfollow","updateAuthenticated","methodName","decorations","endpointDefaults","has","set","handler","getOwnPropertyDescriptor","target","configurable","writable","enumerable","defineProperty","descriptor","cache","deleteProperty","ownKeys","requestWithDefaults","newScope","newMethodName","options2","alias","decorate","legacyRestEndpointMethods","newMethods","Proxy","endpointsToMethods","rest","static","plugin","newPlugins","currentPlugins","plugins","requestDefaults","customRequest","timeZone","authStrategy","otherOptions","octokitOptions","classConstructor","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","d","definition","r","toStringTag","__webpack_exports__"],"sourceRoot":""}
|