From d6ac8498c6f773874f55a7c08445fda56036b8e8 Mon Sep 17 00:00:00 2001 From: "token-generator-app[bot]" <82042599+token-generator-app[bot]@users.noreply.github.com> Date: Mon, 11 Jul 2022 11:58:07 +0000 Subject: [PATCH] chore(main): release 4.0.3 (#310) * chore(main): release 4.0.3 * chore: prepare dist Co-authored-by: token-generator-app[bot] <82042599+token-generator-app[bot]@users.noreply.github.com> Co-authored-by: token-generator-app[bot] --- CHANGELOG.md | 7 +++++++ dist/index.js | 12 ++++++------ dist/index.js.map | 4 ++-- package-lock.json | 4 ++-- package.json | 2 +- 5 files changed, 18 insertions(+), 11 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5321308..19bdd4a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [4.0.3](https://github.com/netlify/delta-action/compare/v4.0.2...v4.0.3) (2022-07-11) + + +### Bug Fixes + +* support custom PR numbers for workflow_run ([#308](https://github.com/netlify/delta-action/issues/308)) ([213d85b](https://github.com/netlify/delta-action/commit/213d85b01c9d810d66bd87214409ba870a715f26)) + ## [4.0.2](https://github.com/netlify/delta-action/compare/v4.0.1...v4.0.2) (2022-07-08) diff --git a/dist/index.js b/dist/index.js index c6dc24f..e1ddc8e 100644 --- a/dist/index.js +++ b/dist/index.js @@ -6781,7 +6781,7 @@ var require_dist_node10 = __commonJS({ } function _objectSpread2(target) { for (var i = 1; i < arguments.length; i++) { - var source = arguments[i] != null ? arguments[i] : {}; + var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), true).forEach(function(key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function(key) { @@ -7517,22 +7517,22 @@ var getPrNumber = () => { if (eventName === "pull_request") { return payload.number; } - if (eventName === "workflow_run" && payload?.workflow_run?.event === "pull_request" && payload?.workflow_run?.pull_requests?.length === 1) { - return payload.workflow_run.pull_requests[0].number; + const prNumberInput = Number.parseInt(import_core2.default.getInput("pr_number")); + if (Number.isInteger(prNumberInput)) { + return prNumberInput; } }; var getInputs = () => { const { GITHUB_DEV_BASE_BRANCH: envBaseBranch, GITHUB_REPOSITORY: repository, - GITHUB_TOKEN: envToken, GITHUB_WORKSPACE: rootPath = process2.cwd() } = process2.env; const { job, ref, sha: commitSha } = import_github.context; const baseBranch = envBaseBranch || import_core2.default.getInput("base_branch"); - const title = import_core2.default.getInput("title"); + const title = import_core2.default.getInput("title", { required: true }); const [owner, repo] = repository.split("/"); - const token = envToken || import_core2.default.getInput("token"); + const token = import_core2.default.getInput("token", { required: true }); const prNumber = getPrNumber(); return { baseBranch, diff --git a/dist/index.js.map b/dist/index.js.map index c5d284b..8be4979 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../node_modules/@actions/core/src/utils.ts", "../node_modules/@actions/core/src/command.ts", "../node_modules/@actions/core/src/file-command.ts", "../node_modules/@actions/http-client/src/proxy.ts", "../node_modules/tunnel/lib/tunnel.js", "../node_modules/tunnel/index.js", "../node_modules/@actions/http-client/src/index.ts", "../node_modules/@actions/http-client/src/auth.ts", "../node_modules/@actions/core/src/oidc-utils.ts", "../node_modules/@actions/core/src/summary.ts", "../node_modules/@actions/core/src/path-utils.ts", "../node_modules/@actions/core/src/core.ts", "../node_modules/@actions/github/src/context.ts", "../node_modules/@actions/github/src/internal/utils.ts", "../node_modules/universal-user-agent/dist-src/index.js", "../node_modules/before-after-hook/lib/register.js", "../node_modules/before-after-hook/lib/add.js", "../node_modules/before-after-hook/lib/remove.js", "../node_modules/before-after-hook/index.js", "../node_modules/is-plain-object/dist/is-plain-object.js", "../node_modules/@octokit/endpoint/dist-src/util/lowercase-keys.js", "../node_modules/@octokit/endpoint/dist-src/util/merge-deep.js", "../node_modules/@octokit/endpoint/dist-src/util/remove-undefined-properties.js", "../node_modules/@octokit/endpoint/dist-src/merge.js", "../node_modules/@octokit/endpoint/dist-src/util/add-query-parameters.js", "../node_modules/@octokit/endpoint/dist-src/util/extract-url-variable-names.js", "../node_modules/@octokit/endpoint/dist-src/util/omit.js", "../node_modules/@octokit/endpoint/dist-src/util/url-template.js", "../node_modules/@octokit/endpoint/dist-src/parse.js", "../node_modules/@octokit/endpoint/dist-src/endpoint-with-defaults.js", "../node_modules/@octokit/endpoint/dist-src/with-defaults.js", "../node_modules/@octokit/endpoint/dist-src/version.js", "../node_modules/@octokit/endpoint/dist-src/defaults.js", "../node_modules/@octokit/endpoint/dist-src/index.js", "../node_modules/webidl-conversions/lib/index.js", "../node_modules/whatwg-url/lib/utils.js", "../node_modules/tr46/index.js", "../node_modules/whatwg-url/lib/url-state-machine.js", "../node_modules/whatwg-url/lib/URL-impl.js", "../node_modules/whatwg-url/lib/URL.js", "../node_modules/whatwg-url/lib/public-api.js", "../node_modules/node-fetch/lib/index.js", "../node_modules/deprecation/dist-node/index.js", "../node_modules/wrappy/wrappy.js", "../node_modules/once/once.js", "../node_modules/@octokit/request-error/dist-src/index.js", "../node_modules/@octokit/request/dist-src/version.js", "../node_modules/@octokit/request/dist-src/get-buffer-response.js", "../node_modules/@octokit/request/dist-src/fetch-wrapper.js", "../node_modules/@octokit/request/dist-src/with-defaults.js", "../node_modules/@octokit/request/dist-src/index.js", "../node_modules/@octokit/graphql/dist-src/version.js", "../node_modules/@octokit/graphql/dist-src/error.js", "../node_modules/@octokit/graphql/dist-src/graphql.js", "../node_modules/@octokit/graphql/dist-src/with-defaults.js", "../node_modules/@octokit/graphql/dist-src/index.js", "../node_modules/@octokit/auth-token/dist-src/auth.js", "../node_modules/@octokit/auth-token/dist-src/with-authorization-prefix.js", "../node_modules/@octokit/auth-token/dist-src/hook.js", "../node_modules/@octokit/auth-token/dist-src/index.js", "../node_modules/@octokit/core/dist-src/version.js", "../node_modules/@octokit/core/dist-src/index.js", "../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/generated/endpoints.js", "../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/version.js", "../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/endpoints-to-methods.js", "../node_modules/@octokit/plugin-rest-endpoint-methods/dist-src/index.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/version.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/normalize-paginated-list-response.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/iterator.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/paginate.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/compose-paginate.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/generated/paginating-endpoints.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/paginating-endpoints.js", "../node_modules/@octokit/plugin-paginate-rest/dist-src/index.js", "../node_modules/@actions/github/src/utils.ts", "../node_modules/@actions/github/src/github.ts", "../node_modules/regex-escape/lib/index.js", "../node_modules/pretty-bytes/index.js", "../src/index.js", "../src/lib/comment.js", "../src/lib/graph.js", "../src/lib/units.js", "../node_modules/pretty-ms/node_modules/parse-ms/index.js", "../node_modules/pretty-ms/index.js", "../src/lib/delta_file.js", "../src/lib/github.js", "../src/lib/inputs.js"], - "sourcesContent": [null, null, null, null, "'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n", "module.exports = require('./lib/tunnel');\n", null, null, null, null, null, null, null, null, "export function getUserAgent() {\n if (typeof navigator === \"object\" && \"userAgent\" in navigator) {\n return navigator.userAgent;\n }\n if (typeof process === \"object\" && \"version\" in process) {\n return `Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`;\n }\n return \"\";\n}\n", "module.exports = register;\n\nfunction 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(function (callback, name) {\n return register.bind(null, state, name, callback, options);\n }, method)();\n }\n\n return Promise.resolve().then(function () {\n if (!state.registry[name]) {\n return method(options);\n }\n\n return state.registry[name].reduce(function (method, registered) {\n return registered.hook.bind(null, method, options);\n }, method)();\n });\n}\n", "module.exports = addHook;\n\nfunction addHook(state, kind, name, hook) {\n var orig = hook;\n if (!state.registry[name]) {\n state.registry[name] = [];\n }\n\n if (kind === \"before\") {\n hook = function (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 = function (method, options) {\n var result;\n return Promise.resolve()\n .then(method.bind(null, options))\n .then(function (result_) {\n result = result_;\n return orig(result, options);\n })\n .then(function () {\n return result;\n });\n };\n }\n\n if (kind === \"error\") {\n hook = function (method, options) {\n return Promise.resolve()\n .then(method.bind(null, options))\n .catch(function (error) {\n return orig(error, options);\n });\n };\n }\n\n state.registry[name].push({\n hook: hook,\n orig: orig,\n });\n}\n", "module.exports = removeHook;\n\nfunction removeHook(state, name, method) {\n if (!state.registry[name]) {\n return;\n }\n\n var index = state.registry[name]\n .map(function (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", "var register = require('./lib/register')\nvar addHook = require('./lib/add')\nvar removeHook = require('./lib/remove')\n\n// bind with array of arguments: https://stackoverflow.com/a/21792913\nvar bind = Function.bind\nvar bindable = bind.bind(bind)\n\nfunction bindApi (hook, state, name) {\n var removeHookRef = bindable(removeHook, null).apply(null, name ? [state, name] : [state])\n hook.api = { remove: removeHookRef }\n hook.remove = removeHookRef\n\n ;['before', 'error', 'after', 'wrap'].forEach(function (kind) {\n var args = name ? [state, kind, name] : [state, kind]\n hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args)\n })\n}\n\nfunction HookSingular () {\n var singularHookName = 'h'\n var singularHookState = {\n registry: {}\n }\n var singularHook = register.bind(null, singularHookState, singularHookName)\n bindApi(singularHook, singularHookState, singularHookName)\n return singularHook\n}\n\nfunction HookCollection () {\n var state = {\n registry: {}\n }\n\n var hook = register.bind(null, state)\n bindApi(hook, state)\n\n return hook\n}\n\nvar collectionHookDeprecationMessageDisplayed = false\nfunction Hook () {\n if (!collectionHookDeprecationMessageDisplayed) {\n console.warn('[before-after-hook]: \"Hook()\" repurposing warning, use \"Hook.Collection()\". Read more: https://git.io/upgrade-before-after-hook-to-1.4')\n collectionHookDeprecationMessageDisplayed = true\n }\n return HookCollection()\n}\n\nHook.Singular = HookSingular.bind()\nHook.Collection = HookCollection.bind()\n\nmodule.exports = Hook\n// expose constructors as a named property for TypeScript\nmodule.exports.Hook = Hook\nmodule.exports.Singular = Hook.Singular\nmodule.exports.Collection = Hook.Collection\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\nfunction isObject(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nfunction isPlainObject(o) {\n var ctor,prot;\n\n if (isObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (ctor === undefined) return true;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n}\n\nexports.isPlainObject = isPlainObject;\n", "export function 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", "import { isPlainObject } from \"is-plain-object\";\nexport function 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))\n Object.assign(result, { [key]: options[key] });\n else\n result[key] = mergeDeep(defaults[key], options[key]);\n }\n else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n", "export function removeUndefinedProperties(obj) {\n for (const key in obj) {\n if (obj[key] === undefined) {\n delete obj[key];\n }\n }\n return obj;\n}\n", "import { lowercaseKeys } from \"./util/lowercase-keys\";\nimport { mergeDeep } from \"./util/merge-deep\";\nimport { removeUndefinedProperties } from \"./util/remove-undefined-properties\";\nexport function 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 }\n else {\n options = Object.assign({}, route);\n }\n // lowercase header names before merging with defaults to avoid duplicates\n options.headers = lowercaseKeys(options.headers);\n // remove properties with undefined values before merging\n removeUndefinedProperties(options);\n removeUndefinedProperties(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n // mediaType.previews arrays are merged, instead of overwritten\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews\n .filter((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 return mergedOptions;\n}\n", "export function 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 +\n separator +\n names\n .map((name) => {\n if (name === \"q\") {\n return (\"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\"));\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n })\n .join(\"&\"));\n}\n", "const urlVariableRegex = /\\{[^}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\nexport function 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", "export function omit(object, keysToOmit) {\n return Object.keys(object)\n .filter((option) => !keysToOmit.includes(option))\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n", "// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .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 })\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 =\n operator === \"+\" || operator === \"#\"\n ? encodeReserved(value)\n : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n }\n else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== undefined && 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\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n }\n else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, 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 }\n else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\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 }\n else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n }\n else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n }\n else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n }\n else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nexport function parseUrl(template) {\n return {\n expand: expand.bind(null, template),\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, 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 }\n else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n }\n else {\n return values.join(\",\");\n }\n }\n else {\n return encodeReserved(literal);\n }\n });\n}\n", "import { addQueryParameters } from \"./util/add-query-parameters\";\nimport { extractUrlVariableNames } from \"./util/extract-url-variable-names\";\nimport { omit } from \"./util/omit\";\nimport { parseUrl } from \"./util/url-template\";\nexport function parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase();\n // replace :varname with {varname} to make it RFC 6570 compatible\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 // extract variable names from URL to calculate remaining variables later\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)\n .filter((option) => urlVariableNames.includes(option))\n .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 // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept\n .split(/,/)\n .map((preview) => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))\n .join(\",\");\n }\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader\n .concat(options.mediaType.previews)\n .map((preview) => {\n const format = options.mediaType.format\n ? `.${options.mediaType.format}`\n : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n })\n .join(\",\");\n }\n }\n // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n }\n else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n }\n else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n else {\n headers[\"content-length\"] = 0;\n }\n }\n }\n // default content-type for JSON if body is set\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n // Only return body/request keys if present\n return Object.assign({ method, url, headers }, typeof body !== \"undefined\" ? { body } : null, options.request ? { request: options.request } : null);\n}\n", "import { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n", "import { endpointWithDefaults } from \"./endpoint-with-defaults\";\nimport { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse,\n });\n}\n", "export const VERSION = \"6.0.12\";\n", "import { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nconst userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\n// DEFAULTS has all properties set that EndpointOptions has, except url.\n// So we use RequestParameters and add method as additional required property.\nexport const 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 previews: [],\n },\n};\n", "import { withDefaults } from \"./with-defaults\";\nimport { DEFAULTS } from \"./defaults\";\nexport const endpoint = withDefaults(null, DEFAULTS);\n", "\"use strict\";\n\nvar conversions = {};\nmodule.exports = conversions;\n\nfunction sign(x) {\n return x < 0 ? -1 : 1;\n}\n\nfunction evenRound(x) {\n // Round x to the nearest integer, choosing the even integer if it lies halfway between two.\n if ((x % 1) === 0.5 && (x & 1) === 0) { // [even number].5; round down (i.e. floor)\n return Math.floor(x);\n } else {\n return Math.round(x);\n }\n}\n\nfunction createNumberConversion(bitLength, typeOpts) {\n if (!typeOpts.unsigned) {\n --bitLength;\n }\n const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);\n const upperBound = Math.pow(2, bitLength) - 1;\n\n const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);\n const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);\n\n return function(V, opts) {\n if (!opts) opts = {};\n\n let x = +V;\n\n if (opts.enforceRange) {\n if (!Number.isFinite(x)) {\n throw new TypeError(\"Argument is not a finite number\");\n }\n\n x = sign(x) * Math.floor(Math.abs(x));\n if (x < lowerBound || x > upperBound) {\n throw new TypeError(\"Argument is not in byte range\");\n }\n\n return x;\n }\n\n if (!isNaN(x) && opts.clamp) {\n x = evenRound(x);\n\n if (x < lowerBound) x = lowerBound;\n if (x > upperBound) x = upperBound;\n return x;\n }\n\n if (!Number.isFinite(x) || x === 0) {\n return 0;\n }\n\n x = sign(x) * Math.floor(Math.abs(x));\n x = x % moduloVal;\n\n if (!typeOpts.unsigned && x >= moduloBound) {\n return x - moduloVal;\n } else if (typeOpts.unsigned) {\n if (x < 0) {\n x += moduloVal;\n } else if (x === -0) { // don't return negative zero\n return 0;\n }\n }\n\n return x;\n }\n}\n\nconversions[\"void\"] = function () {\n return undefined;\n};\n\nconversions[\"boolean\"] = function (val) {\n return !!val;\n};\n\nconversions[\"byte\"] = createNumberConversion(8, { unsigned: false });\nconversions[\"octet\"] = createNumberConversion(8, { unsigned: true });\n\nconversions[\"short\"] = createNumberConversion(16, { unsigned: false });\nconversions[\"unsigned short\"] = createNumberConversion(16, { unsigned: true });\n\nconversions[\"long\"] = createNumberConversion(32, { unsigned: false });\nconversions[\"unsigned long\"] = createNumberConversion(32, { unsigned: true });\n\nconversions[\"long long\"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });\nconversions[\"unsigned long long\"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });\n\nconversions[\"double\"] = function (V) {\n const x = +V;\n\n if (!Number.isFinite(x)) {\n throw new TypeError(\"Argument is not a finite floating-point value\");\n }\n\n return x;\n};\n\nconversions[\"unrestricted double\"] = function (V) {\n const x = +V;\n\n if (isNaN(x)) {\n throw new TypeError(\"Argument is NaN\");\n }\n\n return x;\n};\n\n// not quite valid, but good enough for JS\nconversions[\"float\"] = conversions[\"double\"];\nconversions[\"unrestricted float\"] = conversions[\"unrestricted double\"];\n\nconversions[\"DOMString\"] = function (V, opts) {\n if (!opts) opts = {};\n\n if (opts.treatNullAsEmptyString && V === null) {\n return \"\";\n }\n\n return String(V);\n};\n\nconversions[\"ByteString\"] = function (V, opts) {\n const x = String(V);\n let c = undefined;\n for (let i = 0; (c = x.codePointAt(i)) !== undefined; ++i) {\n if (c > 255) {\n throw new TypeError(\"Argument is not a valid bytestring\");\n }\n }\n\n return x;\n};\n\nconversions[\"USVString\"] = function (V) {\n const S = String(V);\n const n = S.length;\n const U = [];\n for (let i = 0; i < n; ++i) {\n const c = S.charCodeAt(i);\n if (c < 0xD800 || c > 0xDFFF) {\n U.push(String.fromCodePoint(c));\n } else if (0xDC00 <= c && c <= 0xDFFF) {\n U.push(String.fromCodePoint(0xFFFD));\n } else {\n if (i === n - 1) {\n U.push(String.fromCodePoint(0xFFFD));\n } else {\n const d = S.charCodeAt(i + 1);\n if (0xDC00 <= d && d <= 0xDFFF) {\n const a = c & 0x3FF;\n const b = d & 0x3FF;\n U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));\n ++i;\n } else {\n U.push(String.fromCodePoint(0xFFFD));\n }\n }\n }\n }\n\n return U.join('');\n};\n\nconversions[\"Date\"] = function (V, opts) {\n if (!(V instanceof Date)) {\n throw new TypeError(\"Argument is not a Date object\");\n }\n if (isNaN(V)) {\n return undefined;\n }\n\n return V;\n};\n\nconversions[\"RegExp\"] = function (V, opts) {\n if (!(V instanceof RegExp)) {\n V = new RegExp(V);\n }\n\n return V;\n};\n", "\"use strict\";\n\nmodule.exports.mixin = function mixin(target, source) {\n const keys = Object.getOwnPropertyNames(source);\n for (let i = 0; i < keys.length; ++i) {\n Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));\n }\n};\n\nmodule.exports.wrapperSymbol = Symbol(\"wrapper\");\nmodule.exports.implSymbol = Symbol(\"impl\");\n\nmodule.exports.wrapperForImpl = function (impl) {\n return impl[module.exports.wrapperSymbol];\n};\n\nmodule.exports.implForWrapper = function (wrapper) {\n return wrapper[module.exports.implSymbol];\n};\n\n", "\"use strict\";\n\nvar punycode = require(\"punycode\");\nvar mappingTable = require(\"./lib/mappingTable.json\");\n\nvar PROCESSING_OPTIONS = {\n TRANSITIONAL: 0,\n NONTRANSITIONAL: 1\n};\n\nfunction normalize(str) { // fix bug in v8\n return str.split('\\u0000').map(function (s) { return s.normalize('NFC'); }).join('\\u0000');\n}\n\nfunction findStatus(val) {\n var start = 0;\n var end = mappingTable.length - 1;\n\n while (start <= end) {\n var mid = Math.floor((start + end) / 2);\n\n var target = mappingTable[mid];\n if (target[0][0] <= val && target[0][1] >= val) {\n return target;\n } else if (target[0][0] > val) {\n end = mid - 1;\n } else {\n start = mid + 1;\n }\n }\n\n return null;\n}\n\nvar regexAstralSymbols = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n\nfunction countSymbols(string) {\n return string\n // replace every surrogate pair with a BMP symbol\n .replace(regexAstralSymbols, '_')\n // then get the length\n .length;\n}\n\nfunction mapChars(domain_name, useSTD3, processing_option) {\n var hasError = false;\n var processed = \"\";\n\n var len = countSymbols(domain_name);\n for (var i = 0; i < len; ++i) {\n var codePoint = domain_name.codePointAt(i);\n var status = findStatus(codePoint);\n\n switch (status[1]) {\n case \"disallowed\":\n hasError = true;\n processed += String.fromCodePoint(codePoint);\n break;\n case \"ignored\":\n break;\n case \"mapped\":\n processed += String.fromCodePoint.apply(String, status[2]);\n break;\n case \"deviation\":\n if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {\n processed += String.fromCodePoint.apply(String, status[2]);\n } else {\n processed += String.fromCodePoint(codePoint);\n }\n break;\n case \"valid\":\n processed += String.fromCodePoint(codePoint);\n break;\n case \"disallowed_STD3_mapped\":\n if (useSTD3) {\n hasError = true;\n processed += String.fromCodePoint(codePoint);\n } else {\n processed += String.fromCodePoint.apply(String, status[2]);\n }\n break;\n case \"disallowed_STD3_valid\":\n if (useSTD3) {\n hasError = true;\n }\n\n processed += String.fromCodePoint(codePoint);\n break;\n }\n }\n\n return {\n string: processed,\n error: hasError\n };\n}\n\nvar combiningMarksRegex = /[\\u0300-\\u036F\\u0483-\\u0489\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0859-\\u085B\\u08E4-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962\\u0963\\u0981-\\u0983\\u09BC\\u09BE-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CD\\u09D7\\u09E2\\u09E3\\u0A01-\\u0A03\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81-\\u0A83\\u0ABC\\u0ABE-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AE2\\u0AE3\\u0B01-\\u0B03\\u0B3C\\u0B3E-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B62\\u0B63\\u0B82\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD7\\u0C00-\\u0C03\\u0C3E-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0C81-\\u0C83\\u0CBC\\u0CBE-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CE2\\u0CE3\\u0D01-\\u0D03\\u0D3E-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4D\\u0D57\\u0D62\\u0D63\\u0D82\\u0D83\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F3E\\u0F3F\\u0F71-\\u0F84\\u0F86\\u0F87\\u0F8D-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102B-\\u103E\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F\\u109A-\\u109D\\u135D-\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B4-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u192B\\u1930-\\u193B\\u19B0-\\u19C0\\u19C8\\u19C9\\u1A17-\\u1A1B\\u1A55-\\u1A5E\\u1A60-\\u1A7C\\u1A7F\\u1AB0-\\u1ABE\\u1B00-\\u1B04\\u1B34-\\u1B44\\u1B6B-\\u1B73\\u1B80-\\u1B82\\u1BA1-\\u1BAD\\u1BE6-\\u1BF3\\u1C24-\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE8\\u1CED\\u1CF2-\\u1CF4\\u1CF8\\u1CF9\\u1DC0-\\u1DF5\\u1DFC-\\u1DFF\\u20D0-\\u20F0\\u2CEF-\\u2CF1\\u2D7F\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F-\\uA672\\uA674-\\uA67D\\uA69F\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA823-\\uA827\\uA880\\uA881\\uA8B4-\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA953\\uA980-\\uA983\\uA9B3-\\uA9C0\\uA9E5\\uAA29-\\uAA36\\uAA43\\uAA4C\\uAA4D\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAEB-\\uAAEF\\uAAF5\\uAAF6\\uABE3-\\uABEA\\uABEC\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE2D]|\\uD800[\\uDDFD\\uDEE0\\uDF76-\\uDF7A]|\\uD802[\\uDE01-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE0F\\uDE38-\\uDE3A\\uDE3F\\uDEE5\\uDEE6]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC46\\uDC7F-\\uDC82\\uDCB0-\\uDCBA\\uDD00-\\uDD02\\uDD27-\\uDD34\\uDD73\\uDD80-\\uDD82\\uDDB3-\\uDDC0\\uDE2C-\\uDE37\\uDEDF-\\uDEEA\\uDF01-\\uDF03\\uDF3C\\uDF3E-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF57\\uDF62\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDCB0-\\uDCC3\\uDDAF-\\uDDB5\\uDDB8-\\uDDC0\\uDE30-\\uDE40\\uDEAB-\\uDEB7]|\\uD81A[\\uDEF0-\\uDEF4\\uDF30-\\uDF36]|\\uD81B[\\uDF51-\\uDF7E\\uDF8F-\\uDF92]|\\uD82F[\\uDC9D\\uDC9E]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD83A[\\uDCD0-\\uDCD6]|\\uDB40[\\uDD00-\\uDDEF]/;\n\nfunction validateLabel(label, processing_option) {\n if (label.substr(0, 4) === \"xn--\") {\n label = punycode.toUnicode(label);\n processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;\n }\n\n var error = false;\n\n if (normalize(label) !== label ||\n (label[3] === \"-\" && label[4] === \"-\") ||\n label[0] === \"-\" || label[label.length - 1] === \"-\" ||\n label.indexOf(\".\") !== -1 ||\n label.search(combiningMarksRegex) === 0) {\n error = true;\n }\n\n var len = countSymbols(label);\n for (var i = 0; i < len; ++i) {\n var status = findStatus(label.codePointAt(i));\n if ((processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== \"valid\") ||\n (processing === PROCESSING_OPTIONS.NONTRANSITIONAL &&\n status[1] !== \"valid\" && status[1] !== \"deviation\")) {\n error = true;\n break;\n }\n }\n\n return {\n label: label,\n error: error\n };\n}\n\nfunction processing(domain_name, useSTD3, processing_option) {\n var result = mapChars(domain_name, useSTD3, processing_option);\n result.string = normalize(result.string);\n\n var labels = result.string.split(\".\");\n for (var i = 0; i < labels.length; ++i) {\n try {\n var validation = validateLabel(labels[i]);\n labels[i] = validation.label;\n result.error = result.error || validation.error;\n } catch(e) {\n result.error = true;\n }\n }\n\n return {\n string: labels.join(\".\"),\n error: result.error\n };\n}\n\nmodule.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {\n var result = processing(domain_name, useSTD3, processing_option);\n var labels = result.string.split(\".\");\n labels = labels.map(function(l) {\n try {\n return punycode.toASCII(l);\n } catch(e) {\n result.error = true;\n return l;\n }\n });\n\n if (verifyDnsLength) {\n var total = labels.slice(0, labels.length - 1).join(\".\").length;\n if (total.length > 253 || total.length === 0) {\n result.error = true;\n }\n\n for (var i=0; i < labels.length; ++i) {\n if (labels.length > 63 || labels.length === 0) {\n result.error = true;\n break;\n }\n }\n }\n\n if (result.error) return null;\n return labels.join(\".\");\n};\n\nmodule.exports.toUnicode = function(domain_name, useSTD3) {\n var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);\n\n return {\n domain: result.string,\n error: result.error\n };\n};\n\nmodule.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;\n", "\"use strict\";\r\nconst punycode = require(\"punycode\");\r\nconst tr46 = require(\"tr46\");\r\n\r\nconst specialSchemes = {\r\n ftp: 21,\r\n file: null,\r\n gopher: 70,\r\n http: 80,\r\n https: 443,\r\n ws: 80,\r\n wss: 443\r\n};\r\n\r\nconst failure = Symbol(\"failure\");\r\n\r\nfunction countSymbols(str) {\r\n return punycode.ucs2.decode(str).length;\r\n}\r\n\r\nfunction at(input, idx) {\r\n const c = input[idx];\r\n return isNaN(c) ? undefined : String.fromCodePoint(c);\r\n}\r\n\r\nfunction isASCIIDigit(c) {\r\n return c >= 0x30 && c <= 0x39;\r\n}\r\n\r\nfunction isASCIIAlpha(c) {\r\n return (c >= 0x41 && c <= 0x5A) || (c >= 0x61 && c <= 0x7A);\r\n}\r\n\r\nfunction isASCIIAlphanumeric(c) {\r\n return isASCIIAlpha(c) || isASCIIDigit(c);\r\n}\r\n\r\nfunction isASCIIHex(c) {\r\n return isASCIIDigit(c) || (c >= 0x41 && c <= 0x46) || (c >= 0x61 && c <= 0x66);\r\n}\r\n\r\nfunction isSingleDot(buffer) {\r\n return buffer === \".\" || buffer.toLowerCase() === \"%2e\";\r\n}\r\n\r\nfunction isDoubleDot(buffer) {\r\n buffer = buffer.toLowerCase();\r\n return buffer === \"..\" || buffer === \"%2e.\" || buffer === \".%2e\" || buffer === \"%2e%2e\";\r\n}\r\n\r\nfunction isWindowsDriveLetterCodePoints(cp1, cp2) {\r\n return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);\r\n}\r\n\r\nfunction isWindowsDriveLetterString(string) {\r\n return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === \":\" || string[1] === \"|\");\r\n}\r\n\r\nfunction isNormalizedWindowsDriveLetterString(string) {\r\n return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === \":\";\r\n}\r\n\r\nfunction containsForbiddenHostCodePoint(string) {\r\n return string.search(/\\u0000|\\u0009|\\u000A|\\u000D|\\u0020|#|%|\\/|:|\\?|@|\\[|\\\\|\\]/) !== -1;\r\n}\r\n\r\nfunction containsForbiddenHostCodePointExcludingPercent(string) {\r\n return string.search(/\\u0000|\\u0009|\\u000A|\\u000D|\\u0020|#|\\/|:|\\?|@|\\[|\\\\|\\]/) !== -1;\r\n}\r\n\r\nfunction isSpecialScheme(scheme) {\r\n return specialSchemes[scheme] !== undefined;\r\n}\r\n\r\nfunction isSpecial(url) {\r\n return isSpecialScheme(url.scheme);\r\n}\r\n\r\nfunction defaultPort(scheme) {\r\n return specialSchemes[scheme];\r\n}\r\n\r\nfunction percentEncode(c) {\r\n let hex = c.toString(16).toUpperCase();\r\n if (hex.length === 1) {\r\n hex = \"0\" + hex;\r\n }\r\n\r\n return \"%\" + hex;\r\n}\r\n\r\nfunction utf8PercentEncode(c) {\r\n const buf = new Buffer(c);\r\n\r\n let str = \"\";\r\n\r\n for (let i = 0; i < buf.length; ++i) {\r\n str += percentEncode(buf[i]);\r\n }\r\n\r\n return str;\r\n}\r\n\r\nfunction utf8PercentDecode(str) {\r\n const input = new Buffer(str);\r\n const output = [];\r\n for (let i = 0; i < input.length; ++i) {\r\n if (input[i] !== 37) {\r\n output.push(input[i]);\r\n } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {\r\n output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));\r\n i += 2;\r\n } else {\r\n output.push(input[i]);\r\n }\r\n }\r\n return new Buffer(output).toString();\r\n}\r\n\r\nfunction isC0ControlPercentEncode(c) {\r\n return c <= 0x1F || c > 0x7E;\r\n}\r\n\r\nconst extraPathPercentEncodeSet = new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);\r\nfunction isPathPercentEncode(c) {\r\n return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);\r\n}\r\n\r\nconst extraUserinfoPercentEncodeSet =\r\n new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);\r\nfunction isUserinfoPercentEncode(c) {\r\n return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);\r\n}\r\n\r\nfunction percentEncodeChar(c, encodeSetPredicate) {\r\n const cStr = String.fromCodePoint(c);\r\n\r\n if (encodeSetPredicate(c)) {\r\n return utf8PercentEncode(cStr);\r\n }\r\n\r\n return cStr;\r\n}\r\n\r\nfunction parseIPv4Number(input) {\r\n let R = 10;\r\n\r\n if (input.length >= 2 && input.charAt(0) === \"0\" && input.charAt(1).toLowerCase() === \"x\") {\r\n input = input.substring(2);\r\n R = 16;\r\n } else if (input.length >= 2 && input.charAt(0) === \"0\") {\r\n input = input.substring(1);\r\n R = 8;\r\n }\r\n\r\n if (input === \"\") {\r\n return 0;\r\n }\r\n\r\n const regex = R === 10 ? /[^0-9]/ : (R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/);\r\n if (regex.test(input)) {\r\n return failure;\r\n }\r\n\r\n return parseInt(input, R);\r\n}\r\n\r\nfunction parseIPv4(input) {\r\n const parts = input.split(\".\");\r\n if (parts[parts.length - 1] === \"\") {\r\n if (parts.length > 1) {\r\n parts.pop();\r\n }\r\n }\r\n\r\n if (parts.length > 4) {\r\n return input;\r\n }\r\n\r\n const numbers = [];\r\n for (const part of parts) {\r\n if (part === \"\") {\r\n return input;\r\n }\r\n const n = parseIPv4Number(part);\r\n if (n === failure) {\r\n return input;\r\n }\r\n\r\n numbers.push(n);\r\n }\r\n\r\n for (let i = 0; i < numbers.length - 1; ++i) {\r\n if (numbers[i] > 255) {\r\n return failure;\r\n }\r\n }\r\n if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {\r\n return failure;\r\n }\r\n\r\n let ipv4 = numbers.pop();\r\n let counter = 0;\r\n\r\n for (const n of numbers) {\r\n ipv4 += n * Math.pow(256, 3 - counter);\r\n ++counter;\r\n }\r\n\r\n return ipv4;\r\n}\r\n\r\nfunction serializeIPv4(address) {\r\n let output = \"\";\r\n let n = address;\r\n\r\n for (let i = 1; i <= 4; ++i) {\r\n output = String(n % 256) + output;\r\n if (i !== 4) {\r\n output = \".\" + output;\r\n }\r\n n = Math.floor(n / 256);\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction parseIPv6(input) {\r\n const address = [0, 0, 0, 0, 0, 0, 0, 0];\r\n let pieceIndex = 0;\r\n let compress = null;\r\n let pointer = 0;\r\n\r\n input = punycode.ucs2.decode(input);\r\n\r\n if (input[pointer] === 58) {\r\n if (input[pointer + 1] !== 58) {\r\n return failure;\r\n }\r\n\r\n pointer += 2;\r\n ++pieceIndex;\r\n compress = pieceIndex;\r\n }\r\n\r\n while (pointer < input.length) {\r\n if (pieceIndex === 8) {\r\n return failure;\r\n }\r\n\r\n if (input[pointer] === 58) {\r\n if (compress !== null) {\r\n return failure;\r\n }\r\n ++pointer;\r\n ++pieceIndex;\r\n compress = pieceIndex;\r\n continue;\r\n }\r\n\r\n let value = 0;\r\n let length = 0;\r\n\r\n while (length < 4 && isASCIIHex(input[pointer])) {\r\n value = value * 0x10 + parseInt(at(input, pointer), 16);\r\n ++pointer;\r\n ++length;\r\n }\r\n\r\n if (input[pointer] === 46) {\r\n if (length === 0) {\r\n return failure;\r\n }\r\n\r\n pointer -= length;\r\n\r\n if (pieceIndex > 6) {\r\n return failure;\r\n }\r\n\r\n let numbersSeen = 0;\r\n\r\n while (input[pointer] !== undefined) {\r\n let ipv4Piece = null;\r\n\r\n if (numbersSeen > 0) {\r\n if (input[pointer] === 46 && numbersSeen < 4) {\r\n ++pointer;\r\n } else {\r\n return failure;\r\n }\r\n }\r\n\r\n if (!isASCIIDigit(input[pointer])) {\r\n return failure;\r\n }\r\n\r\n while (isASCIIDigit(input[pointer])) {\r\n const number = parseInt(at(input, pointer));\r\n if (ipv4Piece === null) {\r\n ipv4Piece = number;\r\n } else if (ipv4Piece === 0) {\r\n return failure;\r\n } else {\r\n ipv4Piece = ipv4Piece * 10 + number;\r\n }\r\n if (ipv4Piece > 255) {\r\n return failure;\r\n }\r\n ++pointer;\r\n }\r\n\r\n address[pieceIndex] = address[pieceIndex] * 0x100 + ipv4Piece;\r\n\r\n ++numbersSeen;\r\n\r\n if (numbersSeen === 2 || numbersSeen === 4) {\r\n ++pieceIndex;\r\n }\r\n }\r\n\r\n if (numbersSeen !== 4) {\r\n return failure;\r\n }\r\n\r\n break;\r\n } else if (input[pointer] === 58) {\r\n ++pointer;\r\n if (input[pointer] === undefined) {\r\n return failure;\r\n }\r\n } else if (input[pointer] !== undefined) {\r\n return failure;\r\n }\r\n\r\n address[pieceIndex] = value;\r\n ++pieceIndex;\r\n }\r\n\r\n if (compress !== null) {\r\n let swaps = pieceIndex - compress;\r\n pieceIndex = 7;\r\n while (pieceIndex !== 0 && swaps > 0) {\r\n const temp = address[compress + swaps - 1];\r\n address[compress + swaps - 1] = address[pieceIndex];\r\n address[pieceIndex] = temp;\r\n --pieceIndex;\r\n --swaps;\r\n }\r\n } else if (compress === null && pieceIndex !== 8) {\r\n return failure;\r\n }\r\n\r\n return address;\r\n}\r\n\r\nfunction serializeIPv6(address) {\r\n let output = \"\";\r\n const seqResult = findLongestZeroSequence(address);\r\n const compress = seqResult.idx;\r\n let ignore0 = false;\r\n\r\n for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {\r\n if (ignore0 && address[pieceIndex] === 0) {\r\n continue;\r\n } else if (ignore0) {\r\n ignore0 = false;\r\n }\r\n\r\n if (compress === pieceIndex) {\r\n const separator = pieceIndex === 0 ? \"::\" : \":\";\r\n output += separator;\r\n ignore0 = true;\r\n continue;\r\n }\r\n\r\n output += address[pieceIndex].toString(16);\r\n\r\n if (pieceIndex !== 7) {\r\n output += \":\";\r\n }\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction parseHost(input, isSpecialArg) {\r\n if (input[0] === \"[\") {\r\n if (input[input.length - 1] !== \"]\") {\r\n return failure;\r\n }\r\n\r\n return parseIPv6(input.substring(1, input.length - 1));\r\n }\r\n\r\n if (!isSpecialArg) {\r\n return parseOpaqueHost(input);\r\n }\r\n\r\n const domain = utf8PercentDecode(input);\r\n const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);\r\n if (asciiDomain === null) {\r\n return failure;\r\n }\r\n\r\n if (containsForbiddenHostCodePoint(asciiDomain)) {\r\n return failure;\r\n }\r\n\r\n const ipv4Host = parseIPv4(asciiDomain);\r\n if (typeof ipv4Host === \"number\" || ipv4Host === failure) {\r\n return ipv4Host;\r\n }\r\n\r\n return asciiDomain;\r\n}\r\n\r\nfunction parseOpaqueHost(input) {\r\n if (containsForbiddenHostCodePointExcludingPercent(input)) {\r\n return failure;\r\n }\r\n\r\n let output = \"\";\r\n const decoded = punycode.ucs2.decode(input);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);\r\n }\r\n return output;\r\n}\r\n\r\nfunction findLongestZeroSequence(arr) {\r\n let maxIdx = null;\r\n let maxLen = 1; // only find elements > 1\r\n let currStart = null;\r\n let currLen = 0;\r\n\r\n for (let i = 0; i < arr.length; ++i) {\r\n if (arr[i] !== 0) {\r\n if (currLen > maxLen) {\r\n maxIdx = currStart;\r\n maxLen = currLen;\r\n }\r\n\r\n currStart = null;\r\n currLen = 0;\r\n } else {\r\n if (currStart === null) {\r\n currStart = i;\r\n }\r\n ++currLen;\r\n }\r\n }\r\n\r\n // if trailing zeros\r\n if (currLen > maxLen) {\r\n maxIdx = currStart;\r\n maxLen = currLen;\r\n }\r\n\r\n return {\r\n idx: maxIdx,\r\n len: maxLen\r\n };\r\n}\r\n\r\nfunction serializeHost(host) {\r\n if (typeof host === \"number\") {\r\n return serializeIPv4(host);\r\n }\r\n\r\n // IPv6 serializer\r\n if (host instanceof Array) {\r\n return \"[\" + serializeIPv6(host) + \"]\";\r\n }\r\n\r\n return host;\r\n}\r\n\r\nfunction trimControlChars(url) {\r\n return url.replace(/^[\\u0000-\\u001F\\u0020]+|[\\u0000-\\u001F\\u0020]+$/g, \"\");\r\n}\r\n\r\nfunction trimTabAndNewline(url) {\r\n return url.replace(/\\u0009|\\u000A|\\u000D/g, \"\");\r\n}\r\n\r\nfunction shortenPath(url) {\r\n const path = url.path;\r\n if (path.length === 0) {\r\n return;\r\n }\r\n if (url.scheme === \"file\" && path.length === 1 && isNormalizedWindowsDriveLetter(path[0])) {\r\n return;\r\n }\r\n\r\n path.pop();\r\n}\r\n\r\nfunction includesCredentials(url) {\r\n return url.username !== \"\" || url.password !== \"\";\r\n}\r\n\r\nfunction cannotHaveAUsernamePasswordPort(url) {\r\n return url.host === null || url.host === \"\" || url.cannotBeABaseURL || url.scheme === \"file\";\r\n}\r\n\r\nfunction isNormalizedWindowsDriveLetter(string) {\r\n return /^[A-Za-z]:$/.test(string);\r\n}\r\n\r\nfunction URLStateMachine(input, base, encodingOverride, url, stateOverride) {\r\n this.pointer = 0;\r\n this.input = input;\r\n this.base = base || null;\r\n this.encodingOverride = encodingOverride || \"utf-8\";\r\n this.stateOverride = stateOverride;\r\n this.url = url;\r\n this.failure = false;\r\n this.parseError = false;\r\n\r\n if (!this.url) {\r\n this.url = {\r\n scheme: \"\",\r\n username: \"\",\r\n password: \"\",\r\n host: null,\r\n port: null,\r\n path: [],\r\n query: null,\r\n fragment: null,\r\n\r\n cannotBeABaseURL: false\r\n };\r\n\r\n const res = trimControlChars(this.input);\r\n if (res !== this.input) {\r\n this.parseError = true;\r\n }\r\n this.input = res;\r\n }\r\n\r\n const res = trimTabAndNewline(this.input);\r\n if (res !== this.input) {\r\n this.parseError = true;\r\n }\r\n this.input = res;\r\n\r\n this.state = stateOverride || \"scheme start\";\r\n\r\n this.buffer = \"\";\r\n this.atFlag = false;\r\n this.arrFlag = false;\r\n this.passwordTokenSeenFlag = false;\r\n\r\n this.input = punycode.ucs2.decode(this.input);\r\n\r\n for (; this.pointer <= this.input.length; ++this.pointer) {\r\n const c = this.input[this.pointer];\r\n const cStr = isNaN(c) ? undefined : String.fromCodePoint(c);\r\n\r\n // exec state machine\r\n const ret = this[\"parse \" + this.state](c, cStr);\r\n if (!ret) {\r\n break; // terminate algorithm\r\n } else if (ret === failure) {\r\n this.failure = true;\r\n break;\r\n }\r\n }\r\n}\r\n\r\nURLStateMachine.prototype[\"parse scheme start\"] = function parseSchemeStart(c, cStr) {\r\n if (isASCIIAlpha(c)) {\r\n this.buffer += cStr.toLowerCase();\r\n this.state = \"scheme\";\r\n } else if (!this.stateOverride) {\r\n this.state = \"no scheme\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse scheme\"] = function parseScheme(c, cStr) {\r\n if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {\r\n this.buffer += cStr.toLowerCase();\r\n } else if (c === 58) {\r\n if (this.stateOverride) {\r\n if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {\r\n return false;\r\n }\r\n\r\n if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {\r\n return false;\r\n }\r\n\r\n if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === \"file\") {\r\n return false;\r\n }\r\n\r\n if (this.url.scheme === \"file\" && (this.url.host === \"\" || this.url.host === null)) {\r\n return false;\r\n }\r\n }\r\n this.url.scheme = this.buffer;\r\n this.buffer = \"\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n if (this.url.scheme === \"file\") {\r\n if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file\";\r\n } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {\r\n this.state = \"special relative or authority\";\r\n } else if (isSpecial(this.url)) {\r\n this.state = \"special authority slashes\";\r\n } else if (this.input[this.pointer + 1] === 47) {\r\n this.state = \"path or authority\";\r\n ++this.pointer;\r\n } else {\r\n this.url.cannotBeABaseURL = true;\r\n this.url.path.push(\"\");\r\n this.state = \"cannot-be-a-base-URL path\";\r\n }\r\n } else if (!this.stateOverride) {\r\n this.buffer = \"\";\r\n this.state = \"no scheme\";\r\n this.pointer = -1;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse no scheme\"] = function parseNoScheme(c) {\r\n if (this.base === null || (this.base.cannotBeABaseURL && c !== 35)) {\r\n return failure;\r\n } else if (this.base.cannotBeABaseURL && c === 35) {\r\n this.url.scheme = this.base.scheme;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.url.cannotBeABaseURL = true;\r\n this.state = \"fragment\";\r\n } else if (this.base.scheme === \"file\") {\r\n this.state = \"file\";\r\n --this.pointer;\r\n } else {\r\n this.state = \"relative\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special relative or authority\"] = function parseSpecialRelativeOrAuthority(c) {\r\n if (c === 47 && this.input[this.pointer + 1] === 47) {\r\n this.state = \"special authority ignore slashes\";\r\n ++this.pointer;\r\n } else {\r\n this.parseError = true;\r\n this.state = \"relative\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path or authority\"] = function parsePathOrAuthority(c) {\r\n if (c === 47) {\r\n this.state = \"authority\";\r\n } else {\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse relative\"] = function parseRelative(c) {\r\n this.url.scheme = this.base.scheme;\r\n if (isNaN(c)) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n } else if (c === 47) {\r\n this.state = \"relative slash\";\r\n } else if (c === 63) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else if (isSpecial(this.url) && c === 92) {\r\n this.parseError = true;\r\n this.state = \"relative slash\";\r\n } else {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice(0, this.base.path.length - 1);\r\n\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse relative slash\"] = function parseRelativeSlash(c) {\r\n if (isSpecial(this.url) && (c === 47 || c === 92)) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"special authority ignore slashes\";\r\n } else if (c === 47) {\r\n this.state = \"authority\";\r\n } else {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special authority slashes\"] = function parseSpecialAuthoritySlashes(c) {\r\n if (c === 47 && this.input[this.pointer + 1] === 47) {\r\n this.state = \"special authority ignore slashes\";\r\n ++this.pointer;\r\n } else {\r\n this.parseError = true;\r\n this.state = \"special authority ignore slashes\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special authority ignore slashes\"] = function parseSpecialAuthorityIgnoreSlashes(c) {\r\n if (c !== 47 && c !== 92) {\r\n this.state = \"authority\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse authority\"] = function parseAuthority(c, cStr) {\r\n if (c === 64) {\r\n this.parseError = true;\r\n if (this.atFlag) {\r\n this.buffer = \"%40\" + this.buffer;\r\n }\r\n this.atFlag = true;\r\n\r\n // careful, this is based on buffer and has its own pointer (this.pointer != pointer) and inner chars\r\n const len = countSymbols(this.buffer);\r\n for (let pointer = 0; pointer < len; ++pointer) {\r\n const codePoint = this.buffer.codePointAt(pointer);\r\n\r\n if (codePoint === 58 && !this.passwordTokenSeenFlag) {\r\n this.passwordTokenSeenFlag = true;\r\n continue;\r\n }\r\n const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);\r\n if (this.passwordTokenSeenFlag) {\r\n this.url.password += encodedCodePoints;\r\n } else {\r\n this.url.username += encodedCodePoints;\r\n }\r\n }\r\n this.buffer = \"\";\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92)) {\r\n if (this.atFlag && this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n this.pointer -= countSymbols(this.buffer) + 1;\r\n this.buffer = \"\";\r\n this.state = \"host\";\r\n } else {\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse hostname\"] =\r\nURLStateMachine.prototype[\"parse host\"] = function parseHostName(c, cStr) {\r\n if (this.stateOverride && this.url.scheme === \"file\") {\r\n --this.pointer;\r\n this.state = \"file host\";\r\n } else if (c === 58 && !this.arrFlag) {\r\n if (this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n const host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n\r\n this.url.host = host;\r\n this.buffer = \"\";\r\n this.state = \"port\";\r\n if (this.stateOverride === \"hostname\") {\r\n return false;\r\n }\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92)) {\r\n --this.pointer;\r\n if (isSpecial(this.url) && this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n } else if (this.stateOverride && this.buffer === \"\" &&\r\n (includesCredentials(this.url) || this.url.port !== null)) {\r\n this.parseError = true;\r\n return false;\r\n }\r\n\r\n const host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n\r\n this.url.host = host;\r\n this.buffer = \"\";\r\n this.state = \"path start\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n } else {\r\n if (c === 91) {\r\n this.arrFlag = true;\r\n } else if (c === 93) {\r\n this.arrFlag = false;\r\n }\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse port\"] = function parsePort(c, cStr) {\r\n if (isASCIIDigit(c)) {\r\n this.buffer += cStr;\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92) ||\r\n this.stateOverride) {\r\n if (this.buffer !== \"\") {\r\n const port = parseInt(this.buffer);\r\n if (port > Math.pow(2, 16) - 1) {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n this.url.port = port === defaultPort(this.url.scheme) ? null : port;\r\n this.buffer = \"\";\r\n }\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n this.state = \"path start\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nconst fileOtherwiseCodePoints = new Set([47, 92, 63, 35]);\r\n\r\nURLStateMachine.prototype[\"parse file\"] = function parseFile(c) {\r\n this.url.scheme = \"file\";\r\n\r\n if (c === 47 || c === 92) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file slash\";\r\n } else if (this.base !== null && this.base.scheme === \"file\") {\r\n if (isNaN(c)) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n } else if (c === 63) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else {\r\n if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points\r\n !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) ||\r\n (this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points\r\n !fileOtherwiseCodePoints.has(this.input[this.pointer + 2]))) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n shortenPath(this.url);\r\n } else {\r\n this.parseError = true;\r\n }\r\n\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n } else {\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse file slash\"] = function parseFileSlash(c) {\r\n if (c === 47 || c === 92) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file host\";\r\n } else {\r\n if (this.base !== null && this.base.scheme === \"file\") {\r\n if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {\r\n this.url.path.push(this.base.path[0]);\r\n } else {\r\n this.url.host = this.base.host;\r\n }\r\n }\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse file host\"] = function parseFileHost(c, cStr) {\r\n if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {\r\n --this.pointer;\r\n if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {\r\n this.parseError = true;\r\n this.state = \"path\";\r\n } else if (this.buffer === \"\") {\r\n this.url.host = \"\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n this.state = \"path start\";\r\n } else {\r\n let host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n if (host === \"localhost\") {\r\n host = \"\";\r\n }\r\n this.url.host = host;\r\n\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n\r\n this.buffer = \"\";\r\n this.state = \"path start\";\r\n }\r\n } else {\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path start\"] = function parsePathStart(c) {\r\n if (isSpecial(this.url)) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"path\";\r\n\r\n if (c !== 47 && c !== 92) {\r\n --this.pointer;\r\n }\r\n } else if (!this.stateOverride && c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (!this.stateOverride && c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else if (c !== undefined) {\r\n this.state = \"path\";\r\n if (c !== 47) {\r\n --this.pointer;\r\n }\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path\"] = function parsePath(c) {\r\n if (isNaN(c) || c === 47 || (isSpecial(this.url) && c === 92) ||\r\n (!this.stateOverride && (c === 63 || c === 35))) {\r\n if (isSpecial(this.url) && c === 92) {\r\n this.parseError = true;\r\n }\r\n\r\n if (isDoubleDot(this.buffer)) {\r\n shortenPath(this.url);\r\n if (c !== 47 && !(isSpecial(this.url) && c === 92)) {\r\n this.url.path.push(\"\");\r\n }\r\n } else if (isSingleDot(this.buffer) && c !== 47 &&\r\n !(isSpecial(this.url) && c === 92)) {\r\n this.url.path.push(\"\");\r\n } else if (!isSingleDot(this.buffer)) {\r\n if (this.url.scheme === \"file\" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {\r\n if (this.url.host !== \"\" && this.url.host !== null) {\r\n this.parseError = true;\r\n this.url.host = \"\";\r\n }\r\n this.buffer = this.buffer[0] + \":\";\r\n }\r\n this.url.path.push(this.buffer);\r\n }\r\n this.buffer = \"\";\r\n if (this.url.scheme === \"file\" && (c === undefined || c === 63 || c === 35)) {\r\n while (this.url.path.length > 1 && this.url.path[0] === \"\") {\r\n this.parseError = true;\r\n this.url.path.shift();\r\n }\r\n }\r\n if (c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n }\r\n if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n }\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.buffer += percentEncodeChar(c, isPathPercentEncode);\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse cannot-be-a-base-URL path\"] = function parseCannotBeABaseURLPath(c) {\r\n if (c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else {\r\n // TODO: Add: not a URL code point\r\n if (!isNaN(c) && c !== 37) {\r\n this.parseError = true;\r\n }\r\n\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n if (!isNaN(c)) {\r\n this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);\r\n }\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse query\"] = function parseQuery(c, cStr) {\r\n if (isNaN(c) || (!this.stateOverride && c === 35)) {\r\n if (!isSpecial(this.url) || this.url.scheme === \"ws\" || this.url.scheme === \"wss\") {\r\n this.encodingOverride = \"utf-8\";\r\n }\r\n\r\n const buffer = new Buffer(this.buffer); // TODO: Use encoding override instead\r\n for (let i = 0; i < buffer.length; ++i) {\r\n if (buffer[i] < 0x21 || buffer[i] > 0x7E || buffer[i] === 0x22 || buffer[i] === 0x23 ||\r\n buffer[i] === 0x3C || buffer[i] === 0x3E) {\r\n this.url.query += percentEncode(buffer[i]);\r\n } else {\r\n this.url.query += String.fromCodePoint(buffer[i]);\r\n }\r\n }\r\n\r\n this.buffer = \"\";\r\n if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n }\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse fragment\"] = function parseFragment(c) {\r\n if (isNaN(c)) { // do nothing\r\n } else if (c === 0x0) {\r\n this.parseError = true;\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);\r\n }\r\n\r\n return true;\r\n};\r\n\r\nfunction serializeURL(url, excludeFragment) {\r\n let output = url.scheme + \":\";\r\n if (url.host !== null) {\r\n output += \"//\";\r\n\r\n if (url.username !== \"\" || url.password !== \"\") {\r\n output += url.username;\r\n if (url.password !== \"\") {\r\n output += \":\" + url.password;\r\n }\r\n output += \"@\";\r\n }\r\n\r\n output += serializeHost(url.host);\r\n\r\n if (url.port !== null) {\r\n output += \":\" + url.port;\r\n }\r\n } else if (url.host === null && url.scheme === \"file\") {\r\n output += \"//\";\r\n }\r\n\r\n if (url.cannotBeABaseURL) {\r\n output += url.path[0];\r\n } else {\r\n for (const string of url.path) {\r\n output += \"/\" + string;\r\n }\r\n }\r\n\r\n if (url.query !== null) {\r\n output += \"?\" + url.query;\r\n }\r\n\r\n if (!excludeFragment && url.fragment !== null) {\r\n output += \"#\" + url.fragment;\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction serializeOrigin(tuple) {\r\n let result = tuple.scheme + \"://\";\r\n result += serializeHost(tuple.host);\r\n\r\n if (tuple.port !== null) {\r\n result += \":\" + tuple.port;\r\n }\r\n\r\n return result;\r\n}\r\n\r\nmodule.exports.serializeURL = serializeURL;\r\n\r\nmodule.exports.serializeURLOrigin = function (url) {\r\n // https://url.spec.whatwg.org/#concept-url-origin\r\n switch (url.scheme) {\r\n case \"blob\":\r\n try {\r\n return module.exports.serializeURLOrigin(module.exports.parseURL(url.path[0]));\r\n } catch (e) {\r\n // serializing an opaque origin returns \"null\"\r\n return \"null\";\r\n }\r\n case \"ftp\":\r\n case \"gopher\":\r\n case \"http\":\r\n case \"https\":\r\n case \"ws\":\r\n case \"wss\":\r\n return serializeOrigin({\r\n scheme: url.scheme,\r\n host: url.host,\r\n port: url.port\r\n });\r\n case \"file\":\r\n // spec says \"exercise to the reader\", chrome says \"file://\"\r\n return \"file://\";\r\n default:\r\n // serializing an opaque origin returns \"null\"\r\n return \"null\";\r\n }\r\n};\r\n\r\nmodule.exports.basicURLParse = function (input, options) {\r\n if (options === undefined) {\r\n options = {};\r\n }\r\n\r\n const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);\r\n if (usm.failure) {\r\n return \"failure\";\r\n }\r\n\r\n return usm.url;\r\n};\r\n\r\nmodule.exports.setTheUsername = function (url, username) {\r\n url.username = \"\";\r\n const decoded = punycode.ucs2.decode(username);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n url.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);\r\n }\r\n};\r\n\r\nmodule.exports.setThePassword = function (url, password) {\r\n url.password = \"\";\r\n const decoded = punycode.ucs2.decode(password);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n url.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);\r\n }\r\n};\r\n\r\nmodule.exports.serializeHost = serializeHost;\r\n\r\nmodule.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;\r\n\r\nmodule.exports.serializeInteger = function (integer) {\r\n return String(integer);\r\n};\r\n\r\nmodule.exports.parseURL = function (input, options) {\r\n if (options === undefined) {\r\n options = {};\r\n }\r\n\r\n // We don't handle blobs, so this just delegates:\r\n return module.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });\r\n};\r\n", "\"use strict\";\nconst usm = require(\"./url-state-machine\");\n\nexports.implementation = class URLImpl {\n constructor(constructorArgs) {\n const url = constructorArgs[0];\n const base = constructorArgs[1];\n\n let parsedBase = null;\n if (base !== undefined) {\n parsedBase = usm.basicURLParse(base);\n if (parsedBase === \"failure\") {\n throw new TypeError(\"Invalid base URL\");\n }\n }\n\n const parsedURL = usm.basicURLParse(url, { baseURL: parsedBase });\n if (parsedURL === \"failure\") {\n throw new TypeError(\"Invalid URL\");\n }\n\n this._url = parsedURL;\n\n // TODO: query stuff\n }\n\n get href() {\n return usm.serializeURL(this._url);\n }\n\n set href(v) {\n const parsedURL = usm.basicURLParse(v);\n if (parsedURL === \"failure\") {\n throw new TypeError(\"Invalid URL\");\n }\n\n this._url = parsedURL;\n }\n\n get origin() {\n return usm.serializeURLOrigin(this._url);\n }\n\n get protocol() {\n return this._url.scheme + \":\";\n }\n\n set protocol(v) {\n usm.basicURLParse(v + \":\", { url: this._url, stateOverride: \"scheme start\" });\n }\n\n get username() {\n return this._url.username;\n }\n\n set username(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n usm.setTheUsername(this._url, v);\n }\n\n get password() {\n return this._url.password;\n }\n\n set password(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n usm.setThePassword(this._url, v);\n }\n\n get host() {\n const url = this._url;\n\n if (url.host === null) {\n return \"\";\n }\n\n if (url.port === null) {\n return usm.serializeHost(url.host);\n }\n\n return usm.serializeHost(url.host) + \":\" + usm.serializeInteger(url.port);\n }\n\n set host(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n usm.basicURLParse(v, { url: this._url, stateOverride: \"host\" });\n }\n\n get hostname() {\n if (this._url.host === null) {\n return \"\";\n }\n\n return usm.serializeHost(this._url.host);\n }\n\n set hostname(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n usm.basicURLParse(v, { url: this._url, stateOverride: \"hostname\" });\n }\n\n get port() {\n if (this._url.port === null) {\n return \"\";\n }\n\n return usm.serializeInteger(this._url.port);\n }\n\n set port(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n if (v === \"\") {\n this._url.port = null;\n } else {\n usm.basicURLParse(v, { url: this._url, stateOverride: \"port\" });\n }\n }\n\n get pathname() {\n if (this._url.cannotBeABaseURL) {\n return this._url.path[0];\n }\n\n if (this._url.path.length === 0) {\n return \"\";\n }\n\n return \"/\" + this._url.path.join(\"/\");\n }\n\n set pathname(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n this._url.path = [];\n usm.basicURLParse(v, { url: this._url, stateOverride: \"path start\" });\n }\n\n get search() {\n if (this._url.query === null || this._url.query === \"\") {\n return \"\";\n }\n\n return \"?\" + this._url.query;\n }\n\n set search(v) {\n // TODO: query stuff\n\n const url = this._url;\n\n if (v === \"\") {\n url.query = null;\n return;\n }\n\n const input = v[0] === \"?\" ? v.substring(1) : v;\n url.query = \"\";\n usm.basicURLParse(input, { url, stateOverride: \"query\" });\n }\n\n get hash() {\n if (this._url.fragment === null || this._url.fragment === \"\") {\n return \"\";\n }\n\n return \"#\" + this._url.fragment;\n }\n\n set hash(v) {\n if (v === \"\") {\n this._url.fragment = null;\n return;\n }\n\n const input = v[0] === \"#\" ? v.substring(1) : v;\n this._url.fragment = \"\";\n usm.basicURLParse(input, { url: this._url, stateOverride: \"fragment\" });\n }\n\n toJSON() {\n return this.href;\n }\n};\n", "\"use strict\";\n\nconst conversions = require(\"webidl-conversions\");\nconst utils = require(\"./utils.js\");\nconst Impl = require(\".//URL-impl.js\");\n\nconst impl = utils.implSymbol;\n\nfunction URL(url) {\n if (!this || this[impl] || !(this instanceof URL)) {\n throw new TypeError(\"Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.\");\n }\n if (arguments.length < 1) {\n throw new TypeError(\"Failed to construct 'URL': 1 argument required, but only \" + arguments.length + \" present.\");\n }\n const args = [];\n for (let i = 0; i < arguments.length && i < 2; ++i) {\n args[i] = arguments[i];\n }\n args[0] = conversions[\"USVString\"](args[0]);\n if (args[1] !== undefined) {\n args[1] = conversions[\"USVString\"](args[1]);\n }\n\n module.exports.setup(this, args);\n}\n\nURL.prototype.toJSON = function toJSON() {\n if (!this || !module.exports.is(this)) {\n throw new TypeError(\"Illegal invocation\");\n }\n const args = [];\n for (let i = 0; i < arguments.length && i < 0; ++i) {\n args[i] = arguments[i];\n }\n return this[impl].toJSON.apply(this[impl], args);\n};\nObject.defineProperty(URL.prototype, \"href\", {\n get() {\n return this[impl].href;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].href = V;\n },\n enumerable: true,\n configurable: true\n});\n\nURL.prototype.toString = function () {\n if (!this || !module.exports.is(this)) {\n throw new TypeError(\"Illegal invocation\");\n }\n return this.href;\n};\n\nObject.defineProperty(URL.prototype, \"origin\", {\n get() {\n return this[impl].origin;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"protocol\", {\n get() {\n return this[impl].protocol;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].protocol = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"username\", {\n get() {\n return this[impl].username;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].username = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"password\", {\n get() {\n return this[impl].password;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].password = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"host\", {\n get() {\n return this[impl].host;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].host = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"hostname\", {\n get() {\n return this[impl].hostname;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].hostname = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"port\", {\n get() {\n return this[impl].port;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].port = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"pathname\", {\n get() {\n return this[impl].pathname;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].pathname = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"search\", {\n get() {\n return this[impl].search;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].search = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"hash\", {\n get() {\n return this[impl].hash;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].hash = V;\n },\n enumerable: true,\n configurable: true\n});\n\n\nmodule.exports = {\n is(obj) {\n return !!obj && obj[impl] instanceof Impl.implementation;\n },\n create(constructorArgs, privateData) {\n let obj = Object.create(URL.prototype);\n this.setup(obj, constructorArgs, privateData);\n return obj;\n },\n setup(obj, constructorArgs, privateData) {\n if (!privateData) privateData = {};\n privateData.wrapper = obj;\n\n obj[impl] = new Impl.implementation(constructorArgs, privateData);\n obj[impl][utils.wrapperSymbol] = obj;\n },\n interface: URL,\n expose: {\n Window: { URL: URL },\n Worker: { URL: URL }\n }\n};\n\n", "\"use strict\";\n\nexports.URL = require(\"./URL\").interface;\nexports.serializeURL = require(\"./url-state-machine\").serializeURL;\nexports.serializeURLOrigin = require(\"./url-state-machine\").serializeURLOrigin;\nexports.basicURLParse = require(\"./url-state-machine\").basicURLParse;\nexports.setTheUsername = require(\"./url-state-machine\").setTheUsername;\nexports.setThePassword = require(\"./url-state-machine\").setThePassword;\nexports.serializeHost = require(\"./url-state-machine\").serializeHost;\nexports.serializeInteger = require(\"./url-state-machine\").serializeInteger;\nexports.parseURL = require(\"./url-state-machine\").parseURL;\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar Stream = _interopDefault(require('stream'));\nvar http = _interopDefault(require('http'));\nvar Url = _interopDefault(require('url'));\nvar whatwgUrl = _interopDefault(require('whatwg-url'));\nvar https = _interopDefault(require('https'));\nvar zlib = _interopDefault(require('zlib'));\n\n// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js\n\n// fix for \"Readable\" isn't a named export issue\nconst Readable = Stream.Readable;\n\nconst BUFFER = Symbol('buffer');\nconst TYPE = Symbol('type');\n\nclass Blob {\n\tconstructor() {\n\t\tthis[TYPE] = '';\n\n\t\tconst blobParts = arguments[0];\n\t\tconst options = arguments[1];\n\n\t\tconst buffers = [];\n\t\tlet size = 0;\n\n\t\tif (blobParts) {\n\t\t\tconst a = blobParts;\n\t\t\tconst length = Number(a.length);\n\t\t\tfor (let i = 0; i < length; i++) {\n\t\t\t\tconst element = a[i];\n\t\t\t\tlet buffer;\n\t\t\t\tif (element instanceof Buffer) {\n\t\t\t\t\tbuffer = element;\n\t\t\t\t} else if (ArrayBuffer.isView(element)) {\n\t\t\t\t\tbuffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);\n\t\t\t\t} else if (element instanceof ArrayBuffer) {\n\t\t\t\t\tbuffer = Buffer.from(element);\n\t\t\t\t} else if (element instanceof Blob) {\n\t\t\t\t\tbuffer = element[BUFFER];\n\t\t\t\t} else {\n\t\t\t\t\tbuffer = Buffer.from(typeof element === 'string' ? element : String(element));\n\t\t\t\t}\n\t\t\t\tsize += buffer.length;\n\t\t\t\tbuffers.push(buffer);\n\t\t\t}\n\t\t}\n\n\t\tthis[BUFFER] = Buffer.concat(buffers);\n\n\t\tlet type = options && options.type !== undefined && String(options.type).toLowerCase();\n\t\tif (type && !/[^\\u0020-\\u007E]/.test(type)) {\n\t\t\tthis[TYPE] = type;\n\t\t}\n\t}\n\tget size() {\n\t\treturn this[BUFFER].length;\n\t}\n\tget type() {\n\t\treturn this[TYPE];\n\t}\n\ttext() {\n\t\treturn Promise.resolve(this[BUFFER].toString());\n\t}\n\tarrayBuffer() {\n\t\tconst buf = this[BUFFER];\n\t\tconst ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\treturn Promise.resolve(ab);\n\t}\n\tstream() {\n\t\tconst readable = new Readable();\n\t\treadable._read = function () {};\n\t\treadable.push(this[BUFFER]);\n\t\treadable.push(null);\n\t\treturn readable;\n\t}\n\ttoString() {\n\t\treturn '[object Blob]';\n\t}\n\tslice() {\n\t\tconst size = this.size;\n\n\t\tconst start = arguments[0];\n\t\tconst end = arguments[1];\n\t\tlet relativeStart, relativeEnd;\n\t\tif (start === undefined) {\n\t\t\trelativeStart = 0;\n\t\t} else if (start < 0) {\n\t\t\trelativeStart = Math.max(size + start, 0);\n\t\t} else {\n\t\t\trelativeStart = Math.min(start, size);\n\t\t}\n\t\tif (end === undefined) {\n\t\t\trelativeEnd = size;\n\t\t} else if (end < 0) {\n\t\t\trelativeEnd = Math.max(size + end, 0);\n\t\t} else {\n\t\t\trelativeEnd = Math.min(end, size);\n\t\t}\n\t\tconst span = Math.max(relativeEnd - relativeStart, 0);\n\n\t\tconst buffer = this[BUFFER];\n\t\tconst slicedBuffer = buffer.slice(relativeStart, relativeStart + span);\n\t\tconst blob = new Blob([], { type: arguments[2] });\n\t\tblob[BUFFER] = slicedBuffer;\n\t\treturn blob;\n\t}\n}\n\nObject.defineProperties(Blob.prototype, {\n\tsize: { enumerable: true },\n\ttype: { enumerable: true },\n\tslice: { enumerable: true }\n});\n\nObject.defineProperty(Blob.prototype, Symbol.toStringTag, {\n\tvalue: 'Blob',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * fetch-error.js\n *\n * FetchError interface for operational errors\n */\n\n/**\n * Create FetchError instance\n *\n * @param String message Error message for human\n * @param String type Error type for machine\n * @param String systemError For Node.js system error\n * @return FetchError\n */\nfunction FetchError(message, type, systemError) {\n Error.call(this, message);\n\n this.message = message;\n this.type = type;\n\n // when err.type is `system`, err.code contains system error code\n if (systemError) {\n this.code = this.errno = systemError.code;\n }\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nFetchError.prototype = Object.create(Error.prototype);\nFetchError.prototype.constructor = FetchError;\nFetchError.prototype.name = 'FetchError';\n\nlet convert;\ntry {\n\tconvert = require('encoding').convert;\n} catch (e) {}\n\nconst INTERNALS = Symbol('Body internals');\n\n// fix an issue where \"PassThrough\" isn't a named export for node <10\nconst PassThrough = Stream.PassThrough;\n\n/**\n * Body mixin\n *\n * Ref: https://fetch.spec.whatwg.org/#body\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nfunction Body(body) {\n\tvar _this = this;\n\n\tvar _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n\t _ref$size = _ref.size;\n\n\tlet size = _ref$size === undefined ? 0 : _ref$size;\n\tvar _ref$timeout = _ref.timeout;\n\tlet timeout = _ref$timeout === undefined ? 0 : _ref$timeout;\n\n\tif (body == null) {\n\t\t// body is undefined or null\n\t\tbody = null;\n\t} else if (isURLSearchParams(body)) {\n\t\t// body is a URLSearchParams\n\t\tbody = Buffer.from(body.toString());\n\t} else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {\n\t\t// body is ArrayBuffer\n\t\tbody = Buffer.from(body);\n\t} else if (ArrayBuffer.isView(body)) {\n\t\t// body is ArrayBufferView\n\t\tbody = Buffer.from(body.buffer, body.byteOffset, body.byteLength);\n\t} else if (body instanceof Stream) ; else {\n\t\t// none of the above\n\t\t// coerce to string then buffer\n\t\tbody = Buffer.from(String(body));\n\t}\n\tthis[INTERNALS] = {\n\t\tbody,\n\t\tdisturbed: false,\n\t\terror: null\n\t};\n\tthis.size = size;\n\tthis.timeout = timeout;\n\n\tif (body instanceof Stream) {\n\t\tbody.on('error', function (err) {\n\t\t\tconst error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err);\n\t\t\t_this[INTERNALS].error = error;\n\t\t});\n\t}\n}\n\nBody.prototype = {\n\tget body() {\n\t\treturn this[INTERNALS].body;\n\t},\n\n\tget bodyUsed() {\n\t\treturn this[INTERNALS].disturbed;\n\t},\n\n\t/**\n * Decode response as ArrayBuffer\n *\n * @return Promise\n */\n\tarrayBuffer() {\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\t});\n\t},\n\n\t/**\n * Return raw response as Blob\n *\n * @return Promise\n */\n\tblob() {\n\t\tlet ct = this.headers && this.headers.get('content-type') || '';\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn Object.assign(\n\t\t\t// Prevent copying\n\t\t\tnew Blob([], {\n\t\t\t\ttype: ct.toLowerCase()\n\t\t\t}), {\n\t\t\t\t[BUFFER]: buf\n\t\t\t});\n\t\t});\n\t},\n\n\t/**\n * Decode response as json\n *\n * @return Promise\n */\n\tjson() {\n\t\tvar _this2 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\ttry {\n\t\t\t\treturn JSON.parse(buffer.toString());\n\t\t\t} catch (err) {\n\t\t\t\treturn Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json'));\n\t\t\t}\n\t\t});\n\t},\n\n\t/**\n * Decode response as text\n *\n * @return Promise\n */\n\ttext() {\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn buffer.toString();\n\t\t});\n\t},\n\n\t/**\n * Decode response as buffer (non-spec api)\n *\n * @return Promise\n */\n\tbuffer() {\n\t\treturn consumeBody.call(this);\n\t},\n\n\t/**\n * Decode response as text, while automatically detecting the encoding and\n * trying to decode to UTF-8 (non-spec api)\n *\n * @return Promise\n */\n\ttextConverted() {\n\t\tvar _this3 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn convertBody(buffer, _this3.headers);\n\t\t});\n\t}\n};\n\n// In browsers, all properties are enumerable.\nObject.defineProperties(Body.prototype, {\n\tbody: { enumerable: true },\n\tbodyUsed: { enumerable: true },\n\tarrayBuffer: { enumerable: true },\n\tblob: { enumerable: true },\n\tjson: { enumerable: true },\n\ttext: { enumerable: true }\n});\n\nBody.mixIn = function (proto) {\n\tfor (const name of Object.getOwnPropertyNames(Body.prototype)) {\n\t\t// istanbul ignore else: future proof\n\t\tif (!(name in proto)) {\n\t\t\tconst desc = Object.getOwnPropertyDescriptor(Body.prototype, name);\n\t\t\tObject.defineProperty(proto, name, desc);\n\t\t}\n\t}\n};\n\n/**\n * Consume and convert an entire Body to a Buffer.\n *\n * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body\n *\n * @return Promise\n */\nfunction consumeBody() {\n\tvar _this4 = this;\n\n\tif (this[INTERNALS].disturbed) {\n\t\treturn Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));\n\t}\n\n\tthis[INTERNALS].disturbed = true;\n\n\tif (this[INTERNALS].error) {\n\t\treturn Body.Promise.reject(this[INTERNALS].error);\n\t}\n\n\tlet body = this.body;\n\n\t// body is null\n\tif (body === null) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is blob\n\tif (isBlob(body)) {\n\t\tbody = body.stream();\n\t}\n\n\t// body is buffer\n\tif (Buffer.isBuffer(body)) {\n\t\treturn Body.Promise.resolve(body);\n\t}\n\n\t// istanbul ignore if: should never happen\n\tif (!(body instanceof Stream)) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is stream\n\t// get ready to actually consume the body\n\tlet accum = [];\n\tlet accumBytes = 0;\n\tlet abort = false;\n\n\treturn new Body.Promise(function (resolve, reject) {\n\t\tlet resTimeout;\n\n\t\t// allow timeout on slow response body\n\t\tif (_this4.timeout) {\n\t\t\tresTimeout = setTimeout(function () {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout'));\n\t\t\t}, _this4.timeout);\n\t\t}\n\n\t\t// handle stream errors\n\t\tbody.on('error', function (err) {\n\t\t\tif (err.name === 'AbortError') {\n\t\t\t\t// if the request was aborted, reject with this Error\n\t\t\t\tabort = true;\n\t\t\t\treject(err);\n\t\t\t} else {\n\t\t\t\t// other errors, such as incorrect content-encoding\n\t\t\t\treject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\n\t\tbody.on('data', function (chunk) {\n\t\t\tif (abort || chunk === null) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (_this4.size && accumBytes + chunk.length > _this4.size) {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size'));\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\taccumBytes += chunk.length;\n\t\t\taccum.push(chunk);\n\t\t});\n\n\t\tbody.on('end', function () {\n\t\t\tif (abort) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tclearTimeout(resTimeout);\n\n\t\t\ttry {\n\t\t\t\tresolve(Buffer.concat(accum, accumBytes));\n\t\t\t} catch (err) {\n\t\t\t\t// handle streams that have accumulated too much data (issue #414)\n\t\t\t\treject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Detect buffer encoding and convert to target encoding\n * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding\n *\n * @param Buffer buffer Incoming buffer\n * @param String encoding Target encoding\n * @return String\n */\nfunction convertBody(buffer, headers) {\n\tif (typeof convert !== 'function') {\n\t\tthrow new Error('The package `encoding` must be installed to use the textConverted() function');\n\t}\n\n\tconst ct = headers.get('content-type');\n\tlet charset = 'utf-8';\n\tlet res, str;\n\n\t// header\n\tif (ct) {\n\t\tres = /charset=([^;]*)/i.exec(ct);\n\t}\n\n\t// no charset in content type, peek at response body for at most 1024 bytes\n\tstr = buffer.slice(0, 1024).toString();\n\n\t// html5\n\tif (!res && str) {\n\t\tres = / 0 && arguments[0] !== undefined ? arguments[0] : undefined;\n\n\t\tthis[MAP] = Object.create(null);\n\n\t\tif (init instanceof Headers) {\n\t\t\tconst rawHeaders = init.raw();\n\t\t\tconst headerNames = Object.keys(rawHeaders);\n\n\t\t\tfor (const headerName of headerNames) {\n\t\t\t\tfor (const value of rawHeaders[headerName]) {\n\t\t\t\t\tthis.append(headerName, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't worry about converting prop to ByteString here as append()\n\t\t// will handle it.\n\t\tif (init == null) ; else if (typeof init === 'object') {\n\t\t\tconst method = init[Symbol.iterator];\n\t\t\tif (method != null) {\n\t\t\t\tif (typeof method !== 'function') {\n\t\t\t\t\tthrow new TypeError('Header pairs must be iterable');\n\t\t\t\t}\n\n\t\t\t\t// sequence>\n\t\t\t\t// Note: per spec we have to first exhaust the lists then process them\n\t\t\t\tconst pairs = [];\n\t\t\t\tfor (const pair of init) {\n\t\t\t\t\tif (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be iterable');\n\t\t\t\t\t}\n\t\t\t\t\tpairs.push(Array.from(pair));\n\t\t\t\t}\n\n\t\t\t\tfor (const pair of pairs) {\n\t\t\t\t\tif (pair.length !== 2) {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be a name/value tuple');\n\t\t\t\t\t}\n\t\t\t\t\tthis.append(pair[0], pair[1]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// record\n\t\t\t\tfor (const key of Object.keys(init)) {\n\t\t\t\t\tconst value = init[key];\n\t\t\t\t\tthis.append(key, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthrow new TypeError('Provided initializer must be an object');\n\t\t}\n\t}\n\n\t/**\n * Return combined header value given name\n *\n * @param String name Header name\n * @return Mixed\n */\n\tget(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this[MAP][key].join(', ');\n\t}\n\n\t/**\n * Iterate over all headers\n *\n * @param Function callback Executed for each item with parameters (value, name, thisArg)\n * @param Boolean thisArg `this` context for callback function\n * @return Void\n */\n\tforEach(callback) {\n\t\tlet thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n\n\t\tlet pairs = getHeaders(this);\n\t\tlet i = 0;\n\t\twhile (i < pairs.length) {\n\t\t\tvar _pairs$i = pairs[i];\n\t\t\tconst name = _pairs$i[0],\n\t\t\t value = _pairs$i[1];\n\n\t\t\tcallback.call(thisArg, value, name, this);\n\t\t\tpairs = getHeaders(this);\n\t\t\ti++;\n\t\t}\n\t}\n\n\t/**\n * Overwrite header values given name\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tset(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tthis[MAP][key !== undefined ? key : name] = [value];\n\t}\n\n\t/**\n * Append a value onto existing header\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tappend(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tthis[MAP][key].push(value);\n\t\t} else {\n\t\t\tthis[MAP][name] = [value];\n\t\t}\n\t}\n\n\t/**\n * Check for header name existence\n *\n * @param String name Header name\n * @return Boolean\n */\n\thas(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\treturn find(this[MAP], name) !== undefined;\n\t}\n\n\t/**\n * Delete all header values given name\n *\n * @param String name Header name\n * @return Void\n */\n\tdelete(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tdelete this[MAP][key];\n\t\t}\n\t}\n\n\t/**\n * Return raw headers (non-spec api)\n *\n * @return Object\n */\n\traw() {\n\t\treturn this[MAP];\n\t}\n\n\t/**\n * Get an iterator on keys.\n *\n * @return Iterator\n */\n\tkeys() {\n\t\treturn createHeadersIterator(this, 'key');\n\t}\n\n\t/**\n * Get an iterator on values.\n *\n * @return Iterator\n */\n\tvalues() {\n\t\treturn createHeadersIterator(this, 'value');\n\t}\n\n\t/**\n * Get an iterator on entries.\n *\n * This is the default iterator of the Headers object.\n *\n * @return Iterator\n */\n\t[Symbol.iterator]() {\n\t\treturn createHeadersIterator(this, 'key+value');\n\t}\n}\nHeaders.prototype.entries = Headers.prototype[Symbol.iterator];\n\nObject.defineProperty(Headers.prototype, Symbol.toStringTag, {\n\tvalue: 'Headers',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Headers.prototype, {\n\tget: { enumerable: true },\n\tforEach: { enumerable: true },\n\tset: { enumerable: true },\n\tappend: { enumerable: true },\n\thas: { enumerable: true },\n\tdelete: { enumerable: true },\n\tkeys: { enumerable: true },\n\tvalues: { enumerable: true },\n\tentries: { enumerable: true }\n});\n\nfunction getHeaders(headers) {\n\tlet kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value';\n\n\tconst keys = Object.keys(headers[MAP]).sort();\n\treturn keys.map(kind === 'key' ? function (k) {\n\t\treturn k.toLowerCase();\n\t} : kind === 'value' ? function (k) {\n\t\treturn headers[MAP][k].join(', ');\n\t} : function (k) {\n\t\treturn [k.toLowerCase(), headers[MAP][k].join(', ')];\n\t});\n}\n\nconst INTERNAL = Symbol('internal');\n\nfunction createHeadersIterator(target, kind) {\n\tconst iterator = Object.create(HeadersIteratorPrototype);\n\titerator[INTERNAL] = {\n\t\ttarget,\n\t\tkind,\n\t\tindex: 0\n\t};\n\treturn iterator;\n}\n\nconst HeadersIteratorPrototype = Object.setPrototypeOf({\n\tnext() {\n\t\t// istanbul ignore if\n\t\tif (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {\n\t\t\tthrow new TypeError('Value of `this` is not a HeadersIterator');\n\t\t}\n\n\t\tvar _INTERNAL = this[INTERNAL];\n\t\tconst target = _INTERNAL.target,\n\t\t kind = _INTERNAL.kind,\n\t\t index = _INTERNAL.index;\n\n\t\tconst values = getHeaders(target, kind);\n\t\tconst len = values.length;\n\t\tif (index >= len) {\n\t\t\treturn {\n\t\t\t\tvalue: undefined,\n\t\t\t\tdone: true\n\t\t\t};\n\t\t}\n\n\t\tthis[INTERNAL].index = index + 1;\n\n\t\treturn {\n\t\t\tvalue: values[index],\n\t\t\tdone: false\n\t\t};\n\t}\n}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));\n\nObject.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {\n\tvalue: 'HeadersIterator',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * Export the Headers object in a form that Node.js can consume.\n *\n * @param Headers headers\n * @return Object\n */\nfunction exportNodeCompatibleHeaders(headers) {\n\tconst obj = Object.assign({ __proto__: null }, headers[MAP]);\n\n\t// http.request() only supports string as Host header. This hack makes\n\t// specifying custom Host header possible.\n\tconst hostHeaderKey = find(headers[MAP], 'Host');\n\tif (hostHeaderKey !== undefined) {\n\t\tobj[hostHeaderKey] = obj[hostHeaderKey][0];\n\t}\n\n\treturn obj;\n}\n\n/**\n * Create a Headers object from an object of headers, ignoring those that do\n * not conform to HTTP grammar productions.\n *\n * @param Object obj Object of headers\n * @return Headers\n */\nfunction createHeadersLenient(obj) {\n\tconst headers = new Headers();\n\tfor (const name of Object.keys(obj)) {\n\t\tif (invalidTokenRegex.test(name)) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (Array.isArray(obj[name])) {\n\t\t\tfor (const val of obj[name]) {\n\t\t\t\tif (invalidHeaderCharRegex.test(val)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (headers[MAP][name] === undefined) {\n\t\t\t\t\theaders[MAP][name] = [val];\n\t\t\t\t} else {\n\t\t\t\t\theaders[MAP][name].push(val);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (!invalidHeaderCharRegex.test(obj[name])) {\n\t\t\theaders[MAP][name] = [obj[name]];\n\t\t}\n\t}\n\treturn headers;\n}\n\nconst INTERNALS$1 = Symbol('Response internals');\n\n// fix an issue where \"STATUS_CODES\" aren't a named export for node <10\nconst STATUS_CODES = http.STATUS_CODES;\n\n/**\n * Response class\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nclass Response {\n\tconstructor() {\n\t\tlet body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\t\tlet opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tBody.call(this, body, opts);\n\n\t\tconst status = opts.status || 200;\n\t\tconst headers = new Headers(opts.headers);\n\n\t\tif (body != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(body);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tthis[INTERNALS$1] = {\n\t\t\turl: opts.url,\n\t\t\tstatus,\n\t\t\tstatusText: opts.statusText || STATUS_CODES[status],\n\t\t\theaders,\n\t\t\tcounter: opts.counter\n\t\t};\n\t}\n\n\tget url() {\n\t\treturn this[INTERNALS$1].url || '';\n\t}\n\n\tget status() {\n\t\treturn this[INTERNALS$1].status;\n\t}\n\n\t/**\n * Convenience property representing if the request ended normally\n */\n\tget ok() {\n\t\treturn this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;\n\t}\n\n\tget redirected() {\n\t\treturn this[INTERNALS$1].counter > 0;\n\t}\n\n\tget statusText() {\n\t\treturn this[INTERNALS$1].statusText;\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$1].headers;\n\t}\n\n\t/**\n * Clone this response\n *\n * @return Response\n */\n\tclone() {\n\t\treturn new Response(clone(this), {\n\t\t\turl: this.url,\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\theaders: this.headers,\n\t\t\tok: this.ok,\n\t\t\tredirected: this.redirected\n\t\t});\n\t}\n}\n\nBody.mixIn(Response.prototype);\n\nObject.defineProperties(Response.prototype, {\n\turl: { enumerable: true },\n\tstatus: { enumerable: true },\n\tok: { enumerable: true },\n\tredirected: { enumerable: true },\n\tstatusText: { enumerable: true },\n\theaders: { enumerable: true },\n\tclone: { enumerable: true }\n});\n\nObject.defineProperty(Response.prototype, Symbol.toStringTag, {\n\tvalue: 'Response',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nconst INTERNALS$2 = Symbol('Request internals');\nconst URL = Url.URL || whatwgUrl.URL;\n\n// fix an issue where \"format\", \"parse\" aren't a named export for node <10\nconst parse_url = Url.parse;\nconst format_url = Url.format;\n\n/**\n * Wrapper around `new URL` to handle arbitrary URLs\n *\n * @param {string} urlStr\n * @return {void}\n */\nfunction parseURL(urlStr) {\n\t/*\n \tCheck whether the URL is absolute or not\n \t\tScheme: https://tools.ietf.org/html/rfc3986#section-3.1\n \tAbsolute URL: https://tools.ietf.org/html/rfc3986#section-4.3\n */\n\tif (/^[a-zA-Z][a-zA-Z\\d+\\-.]*:/.exec(urlStr)) {\n\t\turlStr = new URL(urlStr).toString();\n\t}\n\n\t// Fallback to old implementation for arbitrary URLs\n\treturn parse_url(urlStr);\n}\n\nconst streamDestructionSupported = 'destroy' in Stream.Readable.prototype;\n\n/**\n * Check if a value is an instance of Request.\n *\n * @param Mixed input\n * @return Boolean\n */\nfunction isRequest(input) {\n\treturn typeof input === 'object' && typeof input[INTERNALS$2] === 'object';\n}\n\nfunction isAbortSignal(signal) {\n\tconst proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal);\n\treturn !!(proto && proto.constructor.name === 'AbortSignal');\n}\n\n/**\n * Request class\n *\n * @param Mixed input Url or Request instance\n * @param Object init Custom options\n * @return Void\n */\nclass Request {\n\tconstructor(input) {\n\t\tlet init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tlet parsedURL;\n\n\t\t// normalize input\n\t\tif (!isRequest(input)) {\n\t\t\tif (input && input.href) {\n\t\t\t\t// in order to support Node.js' Url objects; though WHATWG's URL objects\n\t\t\t\t// will fall into this branch also (since their `toString()` will return\n\t\t\t\t// `href` property anyway)\n\t\t\t\tparsedURL = parseURL(input.href);\n\t\t\t} else {\n\t\t\t\t// coerce input to a string before attempting to parse\n\t\t\t\tparsedURL = parseURL(`${input}`);\n\t\t\t}\n\t\t\tinput = {};\n\t\t} else {\n\t\t\tparsedURL = parseURL(input.url);\n\t\t}\n\n\t\tlet method = init.method || input.method || 'GET';\n\t\tmethod = method.toUpperCase();\n\n\t\tif ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) {\n\t\t\tthrow new TypeError('Request with GET/HEAD method cannot have body');\n\t\t}\n\n\t\tlet inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;\n\n\t\tBody.call(this, inputBody, {\n\t\t\ttimeout: init.timeout || input.timeout || 0,\n\t\t\tsize: init.size || input.size || 0\n\t\t});\n\n\t\tconst headers = new Headers(init.headers || input.headers || {});\n\n\t\tif (inputBody != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(inputBody);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tlet signal = isRequest(input) ? input.signal : null;\n\t\tif ('signal' in init) signal = init.signal;\n\n\t\tif (signal != null && !isAbortSignal(signal)) {\n\t\t\tthrow new TypeError('Expected signal to be an instanceof AbortSignal');\n\t\t}\n\n\t\tthis[INTERNALS$2] = {\n\t\t\tmethod,\n\t\t\tredirect: init.redirect || input.redirect || 'follow',\n\t\t\theaders,\n\t\t\tparsedURL,\n\t\t\tsignal\n\t\t};\n\n\t\t// node-fetch-only options\n\t\tthis.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;\n\t\tthis.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;\n\t\tthis.counter = init.counter || input.counter || 0;\n\t\tthis.agent = init.agent || input.agent;\n\t}\n\n\tget method() {\n\t\treturn this[INTERNALS$2].method;\n\t}\n\n\tget url() {\n\t\treturn format_url(this[INTERNALS$2].parsedURL);\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$2].headers;\n\t}\n\n\tget redirect() {\n\t\treturn this[INTERNALS$2].redirect;\n\t}\n\n\tget signal() {\n\t\treturn this[INTERNALS$2].signal;\n\t}\n\n\t/**\n * Clone this request\n *\n * @return Request\n */\n\tclone() {\n\t\treturn new Request(this);\n\t}\n}\n\nBody.mixIn(Request.prototype);\n\nObject.defineProperty(Request.prototype, Symbol.toStringTag, {\n\tvalue: 'Request',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Request.prototype, {\n\tmethod: { enumerable: true },\n\turl: { enumerable: true },\n\theaders: { enumerable: true },\n\tredirect: { enumerable: true },\n\tclone: { enumerable: true },\n\tsignal: { enumerable: true }\n});\n\n/**\n * Convert a Request to Node.js http request options.\n *\n * @param Request A Request instance\n * @return Object The options object to be passed to http.request\n */\nfunction getNodeRequestOptions(request) {\n\tconst parsedURL = request[INTERNALS$2].parsedURL;\n\tconst headers = new Headers(request[INTERNALS$2].headers);\n\n\t// fetch step 1.3\n\tif (!headers.has('Accept')) {\n\t\theaders.set('Accept', '*/*');\n\t}\n\n\t// Basic fetch\n\tif (!parsedURL.protocol || !parsedURL.hostname) {\n\t\tthrow new TypeError('Only absolute URLs are supported');\n\t}\n\n\tif (!/^https?:$/.test(parsedURL.protocol)) {\n\t\tthrow new TypeError('Only HTTP(S) protocols are supported');\n\t}\n\n\tif (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) {\n\t\tthrow new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8');\n\t}\n\n\t// HTTP-network-or-cache fetch steps 2.4-2.7\n\tlet contentLengthValue = null;\n\tif (request.body == null && /^(POST|PUT)$/i.test(request.method)) {\n\t\tcontentLengthValue = '0';\n\t}\n\tif (request.body != null) {\n\t\tconst totalBytes = getTotalBytes(request);\n\t\tif (typeof totalBytes === 'number') {\n\t\t\tcontentLengthValue = String(totalBytes);\n\t\t}\n\t}\n\tif (contentLengthValue) {\n\t\theaders.set('Content-Length', contentLengthValue);\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.11\n\tif (!headers.has('User-Agent')) {\n\t\theaders.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.15\n\tif (request.compress && !headers.has('Accept-Encoding')) {\n\t\theaders.set('Accept-Encoding', 'gzip,deflate');\n\t}\n\n\tlet agent = request.agent;\n\tif (typeof agent === 'function') {\n\t\tagent = agent(parsedURL);\n\t}\n\n\tif (!headers.has('Connection') && !agent) {\n\t\theaders.set('Connection', 'close');\n\t}\n\n\t// HTTP-network fetch step 4.2\n\t// chunked encoding is handled by Node.js\n\n\treturn Object.assign({}, parsedURL, {\n\t\tmethod: request.method,\n\t\theaders: exportNodeCompatibleHeaders(headers),\n\t\tagent\n\t});\n}\n\n/**\n * abort-error.js\n *\n * AbortError interface for cancelled requests\n */\n\n/**\n * Create AbortError instance\n *\n * @param String message Error message for human\n * @return AbortError\n */\nfunction AbortError(message) {\n Error.call(this, message);\n\n this.type = 'aborted';\n this.message = message;\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nAbortError.prototype = Object.create(Error.prototype);\nAbortError.prototype.constructor = AbortError;\nAbortError.prototype.name = 'AbortError';\n\nconst URL$1 = Url.URL || whatwgUrl.URL;\n\n// fix an issue where \"PassThrough\", \"resolve\" aren't a named export for node <10\nconst PassThrough$1 = Stream.PassThrough;\n\nconst isDomainOrSubdomain = function isDomainOrSubdomain(destination, original) {\n\tconst orig = new URL$1(original).hostname;\n\tconst dest = new URL$1(destination).hostname;\n\n\treturn orig === dest || orig[orig.length - dest.length - 1] === '.' && orig.endsWith(dest);\n};\n\n/**\n * Fetch function\n *\n * @param Mixed url Absolute url or Request instance\n * @param Object opts Fetch options\n * @return Promise\n */\nfunction fetch(url, opts) {\n\n\t// allow custom promise\n\tif (!fetch.Promise) {\n\t\tthrow new Error('native promise missing, set fetch.Promise to your favorite alternative');\n\t}\n\n\tBody.Promise = fetch.Promise;\n\n\t// wrap http.request into fetch\n\treturn new fetch.Promise(function (resolve, reject) {\n\t\t// build request object\n\t\tconst request = new Request(url, opts);\n\t\tconst options = getNodeRequestOptions(request);\n\n\t\tconst send = (options.protocol === 'https:' ? https : http).request;\n\t\tconst signal = request.signal;\n\n\t\tlet response = null;\n\n\t\tconst abort = function abort() {\n\t\t\tlet error = new AbortError('The user aborted a request.');\n\t\t\treject(error);\n\t\t\tif (request.body && request.body instanceof Stream.Readable) {\n\t\t\t\trequest.body.destroy(error);\n\t\t\t}\n\t\t\tif (!response || !response.body) return;\n\t\t\tresponse.body.emit('error', error);\n\t\t};\n\n\t\tif (signal && signal.aborted) {\n\t\t\tabort();\n\t\t\treturn;\n\t\t}\n\n\t\tconst abortAndFinalize = function abortAndFinalize() {\n\t\t\tabort();\n\t\t\tfinalize();\n\t\t};\n\n\t\t// send request\n\t\tconst req = send(options);\n\t\tlet reqTimeout;\n\n\t\tif (signal) {\n\t\t\tsignal.addEventListener('abort', abortAndFinalize);\n\t\t}\n\n\t\tfunction finalize() {\n\t\t\treq.abort();\n\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\tclearTimeout(reqTimeout);\n\t\t}\n\n\t\tif (request.timeout) {\n\t\t\treq.once('socket', function (socket) {\n\t\t\t\treqTimeout = setTimeout(function () {\n\t\t\t\t\treject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));\n\t\t\t\t\tfinalize();\n\t\t\t\t}, request.timeout);\n\t\t\t});\n\t\t}\n\n\t\treq.on('error', function (err) {\n\t\t\treject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));\n\t\t\tfinalize();\n\t\t});\n\n\t\treq.on('response', function (res) {\n\t\t\tclearTimeout(reqTimeout);\n\n\t\t\tconst headers = createHeadersLenient(res.headers);\n\n\t\t\t// HTTP fetch step 5\n\t\t\tif (fetch.isRedirect(res.statusCode)) {\n\t\t\t\t// HTTP fetch step 5.2\n\t\t\t\tconst location = headers.get('Location');\n\n\t\t\t\t// HTTP fetch step 5.3\n\t\t\t\tlet locationURL = null;\n\t\t\t\ttry {\n\t\t\t\t\tlocationURL = location === null ? null : new URL$1(location, request.url).toString();\n\t\t\t\t} catch (err) {\n\t\t\t\t\t// error here can only be invalid URL in Location: header\n\t\t\t\t\t// do not throw when options.redirect == manual\n\t\t\t\t\t// let the user extract the errorneous redirect URL\n\t\t\t\t\tif (request.redirect !== 'manual') {\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, 'invalid-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// HTTP fetch step 5.5\n\t\t\t\tswitch (request.redirect) {\n\t\t\t\t\tcase 'error':\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\tcase 'manual':\n\t\t\t\t\t\t// node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL.\n\t\t\t\t\t\tif (locationURL !== null) {\n\t\t\t\t\t\t\t// handle corrupted header\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\theaders.set('Location', locationURL);\n\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t// istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request\n\t\t\t\t\t\t\t\treject(err);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'follow':\n\t\t\t\t\t\t// HTTP-redirect fetch step 2\n\t\t\t\t\t\tif (locationURL === null) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 5\n\t\t\t\t\t\tif (request.counter >= request.follow) {\n\t\t\t\t\t\t\treject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 6 (counter increment)\n\t\t\t\t\t\t// Create a new Request object.\n\t\t\t\t\t\tconst requestOpts = {\n\t\t\t\t\t\t\theaders: new Headers(request.headers),\n\t\t\t\t\t\t\tfollow: request.follow,\n\t\t\t\t\t\t\tcounter: request.counter + 1,\n\t\t\t\t\t\t\tagent: request.agent,\n\t\t\t\t\t\t\tcompress: request.compress,\n\t\t\t\t\t\t\tmethod: request.method,\n\t\t\t\t\t\t\tbody: request.body,\n\t\t\t\t\t\t\tsignal: request.signal,\n\t\t\t\t\t\t\ttimeout: request.timeout,\n\t\t\t\t\t\t\tsize: request.size\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (!isDomainOrSubdomain(request.url, locationURL)) {\n\t\t\t\t\t\t\tfor (const name of ['authorization', 'www-authenticate', 'cookie', 'cookie2']) {\n\t\t\t\t\t\t\t\trequestOpts.headers.delete(name);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 9\n\t\t\t\t\t\tif (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {\n\t\t\t\t\t\t\treject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 11\n\t\t\t\t\t\tif (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {\n\t\t\t\t\t\t\trequestOpts.method = 'GET';\n\t\t\t\t\t\t\trequestOpts.body = undefined;\n\t\t\t\t\t\t\trequestOpts.headers.delete('content-length');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 15\n\t\t\t\t\t\tresolve(fetch(new Request(locationURL, requestOpts)));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// prepare response\n\t\t\tres.once('end', function () {\n\t\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\t});\n\t\t\tlet body = res.pipe(new PassThrough$1());\n\n\t\t\tconst response_options = {\n\t\t\t\turl: request.url,\n\t\t\t\tstatus: res.statusCode,\n\t\t\t\tstatusText: res.statusMessage,\n\t\t\t\theaders: headers,\n\t\t\t\tsize: request.size,\n\t\t\t\ttimeout: request.timeout,\n\t\t\t\tcounter: request.counter\n\t\t\t};\n\n\t\t\t// HTTP-network fetch step 12.1.1.3\n\t\t\tconst codings = headers.get('Content-Encoding');\n\n\t\t\t// HTTP-network fetch step 12.1.1.4: handle content codings\n\n\t\t\t// in following scenarios we ignore compression support\n\t\t\t// 1. compression support is disabled\n\t\t\t// 2. HEAD request\n\t\t\t// 3. no Content-Encoding header\n\t\t\t// 4. no content response (204)\n\t\t\t// 5. content not modified response (304)\n\t\t\tif (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// For Node v6+\n\t\t\t// Be less strict when decoding compressed responses, since sometimes\n\t\t\t// servers send slightly invalid responses that are still accepted\n\t\t\t// by common browsers.\n\t\t\t// Always using Z_SYNC_FLUSH is what cURL does.\n\t\t\tconst zlibOptions = {\n\t\t\t\tflush: zlib.Z_SYNC_FLUSH,\n\t\t\t\tfinishFlush: zlib.Z_SYNC_FLUSH\n\t\t\t};\n\n\t\t\t// for gzip\n\t\t\tif (codings == 'gzip' || codings == 'x-gzip') {\n\t\t\t\tbody = body.pipe(zlib.createGunzip(zlibOptions));\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for deflate\n\t\t\tif (codings == 'deflate' || codings == 'x-deflate') {\n\t\t\t\t// handle the infamous raw deflate response from old servers\n\t\t\t\t// a hack for old IIS and Apache servers\n\t\t\t\tconst raw = res.pipe(new PassThrough$1());\n\t\t\t\traw.once('data', function (chunk) {\n\t\t\t\t\t// see http://stackoverflow.com/questions/37519828\n\t\t\t\t\tif ((chunk[0] & 0x0F) === 0x08) {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflate());\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflateRaw());\n\t\t\t\t\t}\n\t\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\t\tresolve(response);\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for br\n\t\t\tif (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') {\n\t\t\t\tbody = body.pipe(zlib.createBrotliDecompress());\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// otherwise, use response as-is\n\t\t\tresponse = new Response(body, response_options);\n\t\t\tresolve(response);\n\t\t});\n\n\t\twriteToStream(req, request);\n\t});\n}\n/**\n * Redirect code matching\n *\n * @param Number code Status code\n * @return Boolean\n */\nfetch.isRedirect = function (code) {\n\treturn code === 301 || code === 302 || code === 303 || code === 307 || code === 308;\n};\n\n// expose Promise\nfetch.Promise = global.Promise;\n\nmodule.exports = exports = fetch;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = exports;\nexports.Headers = Headers;\nexports.Request = Request;\nexports.Response = Response;\nexports.FetchError = FetchError;\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nclass Deprecation extends Error {\n constructor(message) {\n super(message); // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n\n this.name = 'Deprecation';\n }\n\n}\n\nexports.Deprecation = Deprecation;\n", "// Returns a wrapper function that returns a wrapped callback\n// The wrapper function should do some stuff, and return a\n// presumably different callback function.\n// This makes sure that own properties are retained, so that\n// decorations and such are not lost along the way.\nmodule.exports = wrappy\nfunction wrappy (fn, cb) {\n if (fn && cb) return wrappy(fn)(cb)\n\n if (typeof fn !== 'function')\n throw new TypeError('need wrapper function')\n\n Object.keys(fn).forEach(function (k) {\n wrapper[k] = fn[k]\n })\n\n return wrapper\n\n function wrapper() {\n var args = new Array(arguments.length)\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n var ret = fn.apply(this, args)\n var cb = args[args.length-1]\n if (typeof ret === 'function' && ret !== cb) {\n Object.keys(cb).forEach(function (k) {\n ret[k] = cb[k]\n })\n }\n return ret\n }\n}\n", "var wrappy = require('wrappy')\nmodule.exports = wrappy(once)\nmodule.exports.strict = wrappy(onceStrict)\n\nonce.proto = once(function () {\n Object.defineProperty(Function.prototype, 'once', {\n value: function () {\n return once(this)\n },\n configurable: true\n })\n\n Object.defineProperty(Function.prototype, 'onceStrict', {\n value: function () {\n return onceStrict(this)\n },\n configurable: true\n })\n})\n\nfunction once (fn) {\n var f = function () {\n if (f.called) return f.value\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n f.called = false\n return f\n}\n\nfunction onceStrict (fn) {\n var f = function () {\n if (f.called)\n throw new Error(f.onceError)\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n var name = fn.name || 'Function wrapped with `once`'\n f.onceError = name + \" shouldn't be called more than once\"\n f.called = false\n return f\n}\n", "import { Deprecation } from \"deprecation\";\nimport once from \"once\";\nconst logOnceCode = once((deprecation) => console.warn(deprecation));\nconst logOnceHeaders = once((deprecation) => console.warn(deprecation));\n/**\n * Error with extra properties to help with debugging\n */\nexport class RequestError extends Error {\n constructor(message, statusCode, options) {\n super(message);\n // Maintains proper stack trace (only available on V8)\n /* istanbul ignore next */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n this.name = \"HttpError\";\n this.status = statusCode;\n let headers;\n if (\"headers\" in options && typeof options.headers !== \"undefined\") {\n headers = options.headers;\n }\n if (\"response\" in options) {\n this.response = options.response;\n headers = options.response.headers;\n }\n // redact request credentials without mutating original request options\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(/ .*$/, \" [REDACTED]\"),\n });\n }\n requestCopy.url = requestCopy.url\n // client_id & client_secret can be passed as URL query parameters to increase rate limit\n // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications\n .replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\")\n // OAuth tokens can be passed as URL query parameters, although it is not recommended\n // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header\n .replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n // deprecations\n Object.defineProperty(this, \"code\", {\n get() {\n logOnceCode(new Deprecation(\"[@octokit/request-error] `error.code` is deprecated, use `error.status`.\"));\n return statusCode;\n },\n });\n Object.defineProperty(this, \"headers\", {\n get() {\n logOnceHeaders(new Deprecation(\"[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.\"));\n return headers || {};\n },\n });\n }\n}\n", "export const VERSION = \"5.6.3\";\n", "export default function getBufferResponse(response) {\n return response.arrayBuffer();\n}\n", "import { isPlainObject } from \"is-plain-object\";\nimport nodeFetch from \"node-fetch\";\nimport { RequestError } from \"@octokit/request-error\";\nimport getBuffer from \"./get-buffer-response\";\nexport default function fetchWrapper(requestOptions) {\n const log = requestOptions.request && requestOptions.request.log\n ? requestOptions.request.log\n : console;\n if (isPlainObject(requestOptions.body) ||\n Array.isArray(requestOptions.body)) {\n requestOptions.body = JSON.stringify(requestOptions.body);\n }\n let headers = {};\n let status;\n let url;\n const fetch = (requestOptions.request && requestOptions.request.fetch) || nodeFetch;\n return fetch(requestOptions.url, Object.assign({\n method: requestOptions.method,\n body: requestOptions.body,\n headers: requestOptions.headers,\n redirect: requestOptions.redirect,\n }, \n // `requestOptions.request.agent` type is incompatible\n // see https://github.com/octokit/types.ts/pull/264\n requestOptions.request))\n .then(async (response) => {\n url = response.url;\n status = response.status;\n for (const keyAndValue of response.headers) {\n headers[keyAndValue[0]] = keyAndValue[1];\n }\n if (\"deprecation\" in headers) {\n const matches = headers.link && headers.link.match(/<([^>]+)>; rel=\"deprecation\"/);\n const deprecationLink = matches && matches.pop();\n log.warn(`[@octokit/request] \"${requestOptions.method} ${requestOptions.url}\" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : \"\"}`);\n }\n if (status === 204 || status === 205) {\n return;\n }\n // GitHub API returns 200 for HEAD requests\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return;\n }\n throw new RequestError(response.statusText, status, {\n response: {\n url,\n status,\n headers,\n data: undefined,\n },\n request: requestOptions,\n });\n }\n if (status === 304) {\n throw new RequestError(\"Not modified\", status, {\n response: {\n url,\n status,\n headers,\n data: await getResponseData(response),\n },\n request: requestOptions,\n });\n }\n if (status >= 400) {\n const data = await getResponseData(response);\n const error = new RequestError(toErrorMessage(data), status, {\n response: {\n url,\n status,\n headers,\n data,\n },\n request: requestOptions,\n });\n throw error;\n }\n return getResponseData(response);\n })\n .then((data) => {\n return {\n status,\n url,\n headers,\n data,\n };\n })\n .catch((error) => {\n if (error instanceof RequestError)\n throw error;\n throw new RequestError(error.message, 500, {\n request: requestOptions,\n });\n });\n}\nasync function getResponseData(response) {\n const contentType = response.headers.get(\"content-type\");\n if (/application\\/json/.test(contentType)) {\n return response.json();\n }\n if (!contentType || /^text\\/|charset=utf-8$/.test(contentType)) {\n return response.text();\n }\n return getBuffer(response);\n}\nfunction toErrorMessage(data) {\n if (typeof data === \"string\")\n return data;\n // istanbul ignore else - just in case\n if (\"message\" in data) {\n if (Array.isArray(data.errors)) {\n return `${data.message}: ${data.errors.map(JSON.stringify).join(\", \")}`;\n }\n return data.message;\n }\n // istanbul ignore next - just in case\n return `Unknown error: ${JSON.stringify(data)}`;\n}\n", "import fetchWrapper from \"./fetch-wrapper\";\nexport default function withDefaults(oldEndpoint, newDefaults) {\n const endpoint = oldEndpoint.defaults(newDefaults);\n const newApi = function (route, parameters) {\n const endpointOptions = endpoint.merge(route, parameters);\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint.parse(endpointOptions));\n }\n const request = (route, parameters) => {\n return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));\n };\n Object.assign(request, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint),\n });\n return endpointOptions.request.hook(request, endpointOptions);\n };\n return Object.assign(newApi, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint),\n });\n}\n", "import { endpoint } from \"@octokit/endpoint\";\nimport { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nimport withDefaults from \"./with-defaults\";\nexport const request = withDefaults(endpoint, {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${getUserAgent()}`,\n },\n});\n", "export const VERSION = \"4.8.0\";\n", "function _buildMessageForResponseErrors(data) {\n return (`Request failed due to following response errors:\\n` +\n data.errors.map((e) => ` - ${e.message}`).join(\"\\n\"));\n}\nexport class GraphqlResponseError extends Error {\n constructor(request, headers, response) {\n super(_buildMessageForResponseErrors(response));\n this.request = request;\n this.headers = headers;\n this.response = response;\n this.name = \"GraphqlResponseError\";\n // Expose the errors and response data in their shorthand properties.\n this.errors = response.errors;\n this.data = response.data;\n // Maintains proper stack trace (only available on V8)\n /* istanbul ignore next */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n }\n}\n", "import { GraphqlResponseError } from \"./error\";\nconst NON_VARIABLE_OPTIONS = [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"query\",\n \"mediaType\",\n];\nconst FORBIDDEN_VARIABLE_OPTIONS = [\"query\", \"method\", \"url\"];\nconst GHES_V3_SUFFIX_REGEX = /\\/api\\/v3\\/?$/;\nexport function graphql(request, query, options) {\n if (options) {\n if (typeof query === \"string\" && \"query\" in options) {\n return Promise.reject(new Error(`[@octokit/graphql] \"query\" cannot be used as variable name`));\n }\n for (const key in options) {\n if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key))\n continue;\n return Promise.reject(new Error(`[@octokit/graphql] \"${key}\" cannot be used as variable name`));\n }\n }\n const parsedOptions = typeof query === \"string\" ? Object.assign({ query }, options) : query;\n const requestOptions = Object.keys(parsedOptions).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 // workaround for GitHub Enterprise baseUrl set with /api/v3 suffix\n // https://github.com/octokit/auth-app.js/issues/111#issuecomment-657610451\n const baseUrl = parsedOptions.baseUrl || request.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 request(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(requestOptions, headers, response.data);\n }\n return response.data.data;\n });\n}\n", "import { request as Request } from \"@octokit/request\";\nimport { graphql } from \"./graphql\";\nexport function withDefaults(request, newDefaults) {\n const newRequest = request.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: Request.endpoint,\n });\n}\n", "import { request } from \"@octokit/request\";\nimport { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nimport { withDefaults } from \"./with-defaults\";\nexport const graphql = withDefaults(request, {\n headers: {\n \"user-agent\": `octokit-graphql.js/${VERSION} ${getUserAgent()}`,\n },\n method: \"POST\",\n url: \"/graphql\",\n});\nexport { GraphqlResponseError } from \"./error\";\nexport function withCustomRequest(customRequest) {\n return withDefaults(customRequest, {\n method: \"POST\",\n url: \"/graphql\",\n });\n}\n", "const REGEX_IS_INSTALLATION_LEGACY = /^v1\\./;\nconst REGEX_IS_INSTALLATION = /^ghs_/;\nconst REGEX_IS_USER_TO_SERVER = /^ghu_/;\nexport async function auth(token) {\n const isApp = token.split(/\\./).length === 3;\n const isInstallation = REGEX_IS_INSTALLATION_LEGACY.test(token) ||\n REGEX_IS_INSTALLATION.test(token);\n const isUserToServer = REGEX_IS_USER_TO_SERVER.test(token);\n const tokenType = isApp\n ? \"app\"\n : isInstallation\n ? \"installation\"\n : isUserToServer\n ? \"user-to-server\"\n : \"oauth\";\n return {\n type: \"token\",\n token: token,\n tokenType,\n };\n}\n", "/**\n * Prefix token for usage in the Authorization header\n *\n * @param token OAuth token or JSON Web Token\n */\nexport function withAuthorizationPrefix(token) {\n if (token.split(/\\./).length === 3) {\n return `bearer ${token}`;\n }\n return `token ${token}`;\n}\n", "import { withAuthorizationPrefix } from \"./with-authorization-prefix\";\nexport async function hook(token, request, route, parameters) {\n const endpoint = request.endpoint.merge(route, parameters);\n endpoint.headers.authorization = withAuthorizationPrefix(token);\n return request(endpoint);\n}\n", "import { auth } from \"./auth\";\nimport { hook } from \"./hook\";\nexport const createTokenAuth = function createTokenAuth(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(\"[@octokit/auth-token] Token passed to createTokenAuth is not a string\");\n }\n token = token.replace(/^(token|bearer) +/i, \"\");\n return Object.assign(auth.bind(null, token), {\n hook: hook.bind(null, token),\n });\n};\n", "export const VERSION = \"3.6.0\";\n", "import { getUserAgent } from \"universal-user-agent\";\nimport { Collection } from \"before-after-hook\";\nimport { request } from \"@octokit/request\";\nimport { withCustomRequest } from \"@octokit/graphql\";\nimport { createTokenAuth } from \"@octokit/auth-token\";\nimport { VERSION } from \"./version\";\nexport class Octokit {\n constructor(options = {}) {\n const hook = new 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 // prepend default user agent with `options.userAgent` if set\n requestDefaults.headers[\"user-agent\"] = [\n options.userAgent,\n `octokit-core.js/${VERSION} ${getUserAgent()}`,\n ]\n .filter(Boolean)\n .join(\" \");\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 debug: () => { },\n info: () => { },\n warn: console.warn.bind(console),\n error: console.error.bind(console),\n }, options.log);\n this.hook = hook;\n // (1) If neither `options.authStrategy` nor `options.auth` are set, the `octokit` instance\n // is unauthenticated. The `this.auth()` method is a no-op and no request hook is registered.\n // (2) If only `options.auth` is set, use the default token authentication strategy.\n // (3) If `options.authStrategy` is set then use it and pass in `options.auth`. Always pass own request as many strategies accept a custom request instance.\n // TODO: type `options.auth` based on `options.authStrategy`.\n if (!options.authStrategy) {\n if (!options.auth) {\n // (1)\n this.auth = async () => ({\n type: \"unauthenticated\",\n });\n }\n else {\n // (2)\n const auth = createTokenAuth(options.auth);\n // @ts-ignore \u00AF\\_(\u30C4)_/\u00AF\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n }\n else {\n const { authStrategy, ...otherOptions } = options;\n const auth = authStrategy(Object.assign({\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 }, options.auth));\n // @ts-ignore \u00AF\\_(\u30C4)_/\u00AF\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n // apply plugins\n // https://stackoverflow.com/a/16345172\n const classConstructor = this.constructor;\n classConstructor.plugins.forEach((plugin) => {\n Object.assign(this, plugin(this, options));\n });\n }\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(Object.assign({}, defaults, options, options.userAgent && defaults.userAgent\n ? {\n userAgent: `${options.userAgent} ${defaults.userAgent}`,\n }\n : null));\n }\n };\n return OctokitWithDefaults;\n }\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 var _a;\n const currentPlugins = this.plugins;\n const NewOctokit = (_a = class extends this {\n },\n _a.plugins = currentPlugins.concat(newPlugins.filter((plugin) => !currentPlugins.includes(plugin))),\n _a);\n return NewOctokit;\n }\n}\nOctokit.VERSION = VERSION;\nOctokit.plugins = [];\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 addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/actions/secrets/{secret_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 createOrUpdateEnvironmentSecret: [\n \"PUT /repositories/{repository_id}/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 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 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 /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}\",\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/actions/secrets/{secret_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 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 getActionsCacheUsageForEnterprise: [\n \"GET /enterprises/{enterprise}/actions/cache/usage\",\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 getEnvironmentPublicKey: [\n \"GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key\",\n ],\n getEnvironmentSecret: [\n \"GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}\",\n ],\n getGithubActionsDefaultWorkflowPermissionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions/workflow\",\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 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 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 /repositories/{repository_id}/environments/{environment_name}/secrets\",\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 listRepoSecrets: [\"GET /repos/{owner}/{repo}/actions/secrets\"],\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 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 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 setGithubActionsDefaultWorkflowPermissionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/workflow\",\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 setSelectedRepositoriesEnabledGithubActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/repositories\",\n ],\n setWorkflowAccessToRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/access\",\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 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 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 getGithubAdvancedSecurityBillingGhe: [\n \"GET /enterprises/{enterprise}/settings/billing/advanced-security\",\n ],\n getGithubAdvancedSecurityBillingOrg: [\n \"GET /orgs/{org}/settings/billing/advanced-security\",\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 deleteAnalysis: [\n \"DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}\",\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 getSarif: [\"GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}\"],\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 listRecentAnalyses: [\"GET /repos/{owner}/{repo}/code-scanning/analyses\"],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\",\n ],\n uploadSarif: [\"POST /repos/{owner}/{repo}/code-scanning/sarifs\"],\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 codespaceMachinesForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/machines\",\n ],\n createForAuthenticatedUser: [\"POST /user/codespaces\"],\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 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 getExportDetailsForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/exports/{export_id}\",\n ],\n getForAuthenticatedUser: [\"GET /user/codespaces/{codespace_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 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 removeRepositoryForSecretForAuthenticatedUser: [\n \"DELETE /user/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 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 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 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 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 },\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 },\n emojis: { get: [\"GET /emojis\"] },\n enterpriseAdmin: {\n addCustomLabelsToSelfHostedRunnerForEnterprise: [\n \"POST /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n disableSelectedOrganizationGithubActionsEnterprise: [\n \"DELETE /enterprises/{enterprise}/actions/permissions/organizations/{org_id}\",\n ],\n enableSelectedOrganizationGithubActionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/organizations/{org_id}\",\n ],\n getAllowedActionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions/selected-actions\",\n ],\n getGithubActionsPermissionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions\",\n ],\n getServerStatistics: [\n \"GET /enterprise-installation/{enterprise_or_org}/server-statistics\",\n ],\n listLabelsForSelfHostedRunnerForEnterprise: [\n \"GET /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n listSelectedOrganizationsEnabledGithubActionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions/organizations\",\n ],\n removeAllCustomLabelsFromSelfHostedRunnerForEnterprise: [\n \"DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n removeCustomLabelFromSelfHostedRunnerForEnterprise: [\n \"DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels/{name}\",\n ],\n setAllowedActionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/selected-actions\",\n ],\n setCustomLabelsForSelfHostedRunnerForEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n setGithubActionsPermissionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions\",\n ],\n setSelectedOrganizationsEnabledGithubActionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/organizations\",\n ],\n },\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 checkUserCanBeAssigned: [\"GET /repos/{owner}/{repo}/assignees/{assignee}\"],\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 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 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 getOctocat: [\"GET /octocat\"],\n getZen: [\"GET /zen\"],\n root: [\"GET /\"],\n },\n migrations: {\n cancelImport: [\"DELETE /repos/{owner}/{repo}/import\"],\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 getCommitAuthors: [\"GET /repos/{owner}/{repo}/import/authors\"],\n getImportStatus: [\"GET /repos/{owner}/{repo}/import\"],\n getLargeFiles: [\"GET /repos/{owner}/{repo}/import/large_files\"],\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 mapCommitAuthor: [\"PATCH /repos/{owner}/{repo}/import/authors/{author_id}\"],\n setLfsPreference: [\"PATCH /repos/{owner}/{repo}/import/lfs\"],\n startForAuthenticatedUser: [\"POST /user/migrations\"],\n startForOrg: [\"POST /orgs/{org}/migrations\"],\n startImport: [\"PUT /repos/{owner}/{repo}/import\"],\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 updateImport: [\"PATCH /repos/{owner}/{repo}/import\"],\n },\n orgs: {\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 createWebhook: [\"POST /orgs/{org}/hooks\"],\n deleteWebhook: [\"DELETE /orgs/{org}/hooks/{hook_id}\"],\n get: [\"GET /orgs/{org}\"],\n getMembershipForAuthenticatedUser: [\"GET /user/memberships/orgs/{org}\"],\n getMembershipForUser: [\"GET /orgs/{org}/memberships/{username}\"],\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 listBlockedUsers: [\"GET /orgs/{org}/blocks\"],\n listCustomRoles: [\"GET /organizations/{organization_id}/custom_roles\"],\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 listOutsideCollaborators: [\"GET /orgs/{org}/outside_collaborators\"],\n listPendingInvitations: [\"GET /orgs/{org}/invitations\"],\n listPublicMembers: [\"GET /orgs/{org}/public_members\"],\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 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 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 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 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 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 checkCollaborator: [\"GET /repos/{owner}/{repo}/collaborators/{username}\"],\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 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 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 createOrUpdateEnvironment: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}\",\n ],\n createOrUpdateFileContents: [\"PUT /repos/{owner}/{repo}/contents/{path}\"],\n createPagesSite: [\"POST /repos/{owner}/{repo}/pages\"],\n createRelease: [\"POST /repos/{owner}/{repo}/releases\"],\n createTagProtection: [\"POST /repos/{owner}/{repo}/tags/protection\"],\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 deleteFile: [\"DELETE /repos/{owner}/{repo}/contents/{path}\"],\n deleteInvitation: [\n \"DELETE /repos/{owner}/{repo}/invitations/{invitation_id}\",\n ],\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 deleteTagProtection: [\n \"DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}\",\n ],\n deleteWebhook: [\"DELETE /repos/{owner}/{repo}/hooks/{hook_id}\"],\n disableAutomatedSecurityFixes: [\n \"DELETE /repos/{owner}/{repo}/automated-security-fixes\",\n ],\n disableLfsForRepo: [\"DELETE /repos/{owner}/{repo}/lfs\"],\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 enableLfsForRepo: [\"PUT /repos/{owner}/{repo}/lfs\"],\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 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 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 getDeployKey: [\"GET /repos/{owner}/{repo}/keys/{key_id}\"],\n getDeployment: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}\"],\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 getPages: [\"GET /repos/{owner}/{repo}/pages\"],\n getPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/{build_id}\"],\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 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 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 listDeployKeys: [\"GET /repos/{owner}/{repo}/keys\"],\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 listTagProtection: [\"GET /repos/{owner}/{repo}/tags/protection\"],\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 updateInformationAboutPagesSite: [\"PUT /repos/{owner}/{repo}/pages\"],\n updateInvitation: [\n \"PATCH /repos/{owner}/{repo}/invitations/{invitation_id}\",\n ],\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 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 getAlert: [\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}\",\n ],\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 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 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 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 follow: [\"PUT /user/following/{username}\"],\n getAuthenticated: [\"GET /user\"],\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 list: [\"GET /users\"],\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 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};\nexport default Endpoints;\n", "export const VERSION = \"5.16.1\";\n", "export function endpointsToMethods(octokit, endpointsMap) {\n const newMethods = {};\n for (const [scope, endpoints] of Object.entries(endpointsMap)) {\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({ method, url }, defaults);\n if (!newMethods[scope]) {\n newMethods[scope] = {};\n }\n const scopeMethods = newMethods[scope];\n if (decorations) {\n scopeMethods[methodName] = decorate(octokit, scope, methodName, endpointDefaults, decorations);\n continue;\n }\n scopeMethods[methodName] = octokit.request.defaults(endpointDefaults);\n }\n }\n return newMethods;\n}\nfunction decorate(octokit, scope, methodName, defaults, decorations) {\n const requestWithDefaults = octokit.request.defaults(defaults);\n /* istanbul ignore next */\n function withDecorations(...args) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n let options = requestWithDefaults.endpoint.merge(...args);\n // There are currently no other decorations than `.mapToData`\n if (decorations.mapToData) {\n options = Object.assign({}, options, {\n data: options[decorations.mapToData],\n [decorations.mapToData]: undefined,\n });\n return requestWithDefaults(options);\n }\n if (decorations.renamed) {\n const [newScope, newMethodName] = decorations.renamed;\n octokit.log.warn(`octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`);\n }\n if (decorations.deprecated) {\n octokit.log.warn(decorations.deprecated);\n }\n if (decorations.renamedParameters) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n const options = requestWithDefaults.endpoint.merge(...args);\n for (const [name, alias] of Object.entries(decorations.renamedParameters)) {\n if (name in options) {\n octokit.log.warn(`\"${name}\" parameter is deprecated for \"octokit.${scope}.${methodName}()\". Use \"${alias}\" instead`);\n if (!(alias in options)) {\n options[alias] = options[name];\n }\n delete options[name];\n }\n }\n return requestWithDefaults(options);\n }\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n return requestWithDefaults(...args);\n }\n return Object.assign(withDecorations, requestWithDefaults);\n}\n", "import ENDPOINTS from \"./generated/endpoints\";\nimport { VERSION } from \"./version\";\nimport { endpointsToMethods } from \"./endpoints-to-methods\";\nexport function restEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit, ENDPOINTS);\n return {\n rest: api,\n };\n}\nrestEndpointMethods.VERSION = VERSION;\nexport function legacyRestEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit, ENDPOINTS);\n return {\n ...api,\n rest: api,\n };\n}\nlegacyRestEndpointMethods.VERSION = VERSION;\n", "export const VERSION = \"2.21.1\";\n", "/**\n * Some \u201Clist\u201D response that can be paginated have a different response structure\n *\n * They have a `total_count` key in the response (search also has `incomplete_results`,\n * /installation/repositories also has `repository_selection`), as well as a key with\n * the list of the items which name varies from endpoint to endpoint.\n *\n * Octokit normalizes these responses so that paginated results are always returned following\n * the same structure. One challenge is that if the list response has only one page, no Link\n * header is provided, so this header alone is not sufficient to check wether a response is\n * paginated or not.\n *\n * We check if a \"total_count\" key is present in the response data, but also make sure that\n * a \"url\" property is not, as the \"Get the combined status for a specific ref\" endpoint would\n * otherwise match: https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref\n */\nexport function normalizePaginatedListResponse(response) {\n // endpoints can respond with 204 if repository is empty\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)\n return response;\n // keep the additional properties intact as there is currently no other way\n // to retrieve the same information.\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", "import { normalizePaginatedListResponse } from \"./normalize-paginated-list-response\";\nexport function iterator(octokit, route, parameters) {\n const options = typeof route === \"function\"\n ? route.endpoint(parameters)\n : 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)\n return { done: true };\n try {\n const response = await requestMethod({ method, url, headers });\n const normalizedResponse = normalizePaginatedListResponse(response);\n // `response.headers.link` format:\n // '; rel=\"next\", ; rel=\"last\"'\n // sets `url` to undefined if \"next\" URL is not present or `link` header is not set\n url = ((normalizedResponse.headers.link || \"\").match(/<([^>]+)>;\\s*rel=\"next\"/) || [])[1];\n return { value: normalizedResponse };\n }\n catch (error) {\n if (error.status !== 409)\n throw error;\n url = \"\";\n return {\n value: {\n status: 200,\n headers: {},\n data: [],\n },\n };\n }\n },\n }),\n };\n}\n", "import { iterator } from \"./iterator\";\nexport function paginate(octokit, route, parameters, mapFn) {\n if (typeof parameters === \"function\") {\n mapFn = parameters;\n parameters = undefined;\n }\n return gather(octokit, [], iterator(octokit, route, parameters)[Symbol.asyncIterator](), mapFn);\n}\nfunction gather(octokit, results, iterator, mapFn) {\n return iterator.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(mapFn ? mapFn(result.value, done) : result.value.data);\n if (earlyExit) {\n return results;\n }\n return gather(octokit, results, iterator, mapFn);\n });\n}\n", "import { paginate } from \"./paginate\";\nimport { iterator } from \"./iterator\";\nexport const composePaginateRest = Object.assign(paginate, {\n iterator,\n});\n", "export const paginatingEndpoints = [\n \"GET /app/hook/deliveries\",\n \"GET /app/installations\",\n \"GET /applications/grants\",\n \"GET /authorizations\",\n \"GET /enterprises/{enterprise}/actions/permissions/organizations\",\n \"GET /enterprises/{enterprise}/actions/runner-groups\",\n \"GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations\",\n \"GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners\",\n \"GET /enterprises/{enterprise}/actions/runners\",\n \"GET /enterprises/{enterprise}/audit-log\",\n \"GET /enterprises/{enterprise}/secret-scanning/alerts\",\n \"GET /enterprises/{enterprise}/settings/billing/advanced-security\",\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}/audit-log\",\n \"GET /orgs/{org}/blocks\",\n \"GET /orgs/{org}/code-scanning/alerts\",\n \"GET /orgs/{org}/codespaces\",\n \"GET /orgs/{org}/credential-authorizations\",\n \"GET /orgs/{org}/dependabot/secrets\",\n \"GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/events\",\n \"GET /orgs/{org}/external-groups\",\n \"GET /orgs/{org}/failed_invitations\",\n \"GET /orgs/{org}/hooks\",\n \"GET /orgs/{org}/hooks/{hook_id}/deliveries\",\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}/migrations\",\n \"GET /orgs/{org}/migrations/{migration_id}/repositories\",\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}/projects\",\n \"GET /orgs/{org}/public_members\",\n \"GET /orgs/{org}/repos\",\n \"GET /orgs/{org}/secret-scanning/alerts\",\n \"GET /orgs/{org}/settings/billing/advanced-security\",\n \"GET /orgs/{org}/team-sync/groups\",\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/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/workflows\",\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\",\n \"GET /repos/{owner}/{repo}/assignees\",\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/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}/events\",\n \"GET /repos/{owner}/{repo}/forks\",\n \"GET /repos/{owner}/{repo}/git/matching-refs/{ref}\",\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}/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}/requested_reviewers\",\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}/secret-scanning/alerts\",\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations\",\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 /repositories/{repository_id}/environments/{environment_name}/secrets\",\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/starred\",\n \"GET /user/subscriptions\",\n \"GET /user/teams\",\n \"GET /users\",\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}/starred\",\n \"GET /users/{username}/subscriptions\",\n];\n", "import { paginatingEndpoints, } from \"./generated/paginating-endpoints\";\nexport { paginatingEndpoints } from \"./generated/paginating-endpoints\";\nexport function isPaginatingEndpoint(arg) {\n if (typeof arg === \"string\") {\n return paginatingEndpoints.includes(arg);\n }\n else {\n return false;\n }\n}\n", "import { VERSION } from \"./version\";\nimport { paginate } from \"./paginate\";\nimport { iterator } from \"./iterator\";\nexport { composePaginateRest } from \"./compose-paginate\";\nexport { isPaginatingEndpoint, paginatingEndpoints, } from \"./paginating-endpoints\";\n/**\n * @param octokit Octokit instance\n * @param options Options passed to Octokit constructor\n */\nexport function paginateRest(octokit) {\n return {\n paginate: Object.assign(paginate.bind(null, octokit), {\n iterator: iterator.bind(null, octokit),\n }),\n };\n}\npaginateRest.VERSION = VERSION;\n", null, null, "\"use strict\";\n\n/**\n * RegexEscape\n * Escapes a string for using it in a regular expression.\n *\n * @name RegexEscape\n * @function\n * @param {String} input The string that must be escaped.\n * @return {String} The escaped string.\n */\nfunction RegexEscape(input) {\n return input.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, \"\\\\$&\");\n}\n\n/**\n * proto\n * Adds the `RegexEscape` function to `RegExp` class.\n *\n * @name proto\n * @function\n * @return {Function} The `RegexEscape` function.\n */\nRegexEscape.proto = function () {\n RegExp.escape = RegexEscape;\n return RegexEscape;\n};\n\nmodule.exports = RegexEscape;", "'use strict';\n\nconst BYTE_UNITS = [\n\t'B',\n\t'kB',\n\t'MB',\n\t'GB',\n\t'TB',\n\t'PB',\n\t'EB',\n\t'ZB',\n\t'YB'\n];\n\nconst BIBYTE_UNITS = [\n\t'B',\n\t'kiB',\n\t'MiB',\n\t'GiB',\n\t'TiB',\n\t'PiB',\n\t'EiB',\n\t'ZiB',\n\t'YiB'\n];\n\nconst BIT_UNITS = [\n\t'b',\n\t'kbit',\n\t'Mbit',\n\t'Gbit',\n\t'Tbit',\n\t'Pbit',\n\t'Ebit',\n\t'Zbit',\n\t'Ybit'\n];\n\nconst BIBIT_UNITS = [\n\t'b',\n\t'kibit',\n\t'Mibit',\n\t'Gibit',\n\t'Tibit',\n\t'Pibit',\n\t'Eibit',\n\t'Zibit',\n\t'Yibit'\n];\n\n/*\nFormats the given number using `Number#toLocaleString`.\n- If locale is a string, the value is expected to be a locale-key (for example: `de`).\n- If locale is true, the system default locale is used for translation.\n- If no value for locale is specified, the number is returned unmodified.\n*/\nconst toLocaleString = (number, locale, options) => {\n\tlet result = number;\n\tif (typeof locale === 'string' || Array.isArray(locale)) {\n\t\tresult = number.toLocaleString(locale, options);\n\t} else if (locale === true || options !== undefined) {\n\t\tresult = number.toLocaleString(undefined, options);\n\t}\n\n\treturn result;\n};\n\nmodule.exports = (number, options) => {\n\tif (!Number.isFinite(number)) {\n\t\tthrow new TypeError(`Expected a finite number, got ${typeof number}: ${number}`);\n\t}\n\n\toptions = Object.assign({bits: false, binary: false}, options);\n\n\tconst UNITS = options.bits ?\n\t\t(options.binary ? BIBIT_UNITS : BIT_UNITS) :\n\t\t(options.binary ? BIBYTE_UNITS : BYTE_UNITS);\n\n\tif (options.signed && number === 0) {\n\t\treturn ` 0 ${UNITS[0]}`;\n\t}\n\n\tconst isNegative = number < 0;\n\tconst prefix = isNegative ? '-' : (options.signed ? '+' : '');\n\n\tif (isNegative) {\n\t\tnumber = -number;\n\t}\n\n\tlet localeOptions;\n\n\tif (options.minimumFractionDigits !== undefined) {\n\t\tlocaleOptions = {minimumFractionDigits: options.minimumFractionDigits};\n\t}\n\n\tif (options.maximumFractionDigits !== undefined) {\n\t\tlocaleOptions = Object.assign({maximumFractionDigits: options.maximumFractionDigits}, localeOptions);\n\t}\n\n\tif (number < 1) {\n\t\tconst numberString = toLocaleString(number, options.locale, localeOptions);\n\t\treturn prefix + numberString + ' ' + UNITS[0];\n\t}\n\n\tconst exponent = Math.min(Math.floor(options.binary ? Math.log(number) / Math.log(1024) : Math.log10(number) / 3), UNITS.length - 1);\n\t// eslint-disable-next-line unicorn/prefer-exponentiation-operator\n\tnumber /= Math.pow(options.binary ? 1024 : 1000, exponent);\n\n\tif (!localeOptions) {\n\t\tnumber = number.toPrecision(3);\n\t}\n\n\tconst numberString = toLocaleString(Number(number), options.locale, localeOptions);\n\n\tconst unit = UNITS[exponent];\n\n\treturn prefix + numberString + ' ' + unit;\n};\n", "import core from '@actions/core'\nimport github from '@actions/github'\n\nimport {\n createHeadBranchComment,\n createPullRequestComment,\n findDeltaComment,\n getMetricsComment,\n} from './lib/comment.js'\nimport { readDeltaFiles } from './lib/delta_file.js'\nimport { getCommentsFromMainBranch } from './lib/github.js'\nimport { getInputs } from './lib/inputs.js'\n\nconst processHeadBranch = async ({ commitSha, headMetrics, job, octokit, owner, repo, title }) => {\n const previousCommit = await getCommentsFromMainBranch({ commitIndex: 1, octokit, owner, repo })\n const comment = createHeadBranchComment({ commitSha, job, metrics: headMetrics, previousCommit, title })\n\n await octokit.rest.repos.createCommitComment({\n owner,\n repo,\n commit_sha: commitSha,\n body: comment,\n })\n}\n\nconst processPullRequest = async ({ headMetrics, job, octokit, owner, prNumber, repo, title }) => {\n const { baseSha, comments } = await getCommentsFromMainBranch({ octokit, owner, repo })\n const baseMetrics = getMetricsComment({ comments, job })\n\n core.debug(`Base metrics: ${JSON.stringify(baseMetrics)}`)\n\n const comment = createPullRequestComment({\n baseSha,\n job,\n metrics: headMetrics,\n previousMetrics: baseMetrics,\n title,\n })\n const existingComments = await octokit.paginate(octokit.rest.issues.listComments, {\n owner,\n repo,\n issue_number: prNumber,\n })\n const existingDeltaComment = existingComments.find((existingComment) => findDeltaComment(existingComment.body, job))\n\n if (existingDeltaComment) {\n core.debug(`Updating existing delta comment: ${existingDeltaComment.url}`)\n\n await octokit.rest.issues.updateComment({\n owner,\n repo,\n comment_id: existingDeltaComment.id,\n body: comment,\n })\n } else {\n core.debug('Creating new delta comment')\n\n await octokit.rest.issues.createComment({\n owner,\n repo,\n issue_number: prNumber,\n body: comment,\n })\n }\n}\n\nconst run = async function () {\n const { baseBranch, commitSha, job, owner, prNumber, ref, repo, rootPath, title, token } = getInputs()\n const headMetrics = await readDeltaFiles(rootPath)\n\n core.debug(`Running job ${job} on ref ${ref}`)\n\n if (headMetrics.length === 0) {\n core.debug(`No metrics found`)\n\n return\n }\n\n core.debug(`Found metrics: ${JSON.stringify(headMetrics)}`)\n\n const octokit = github.getOctokit(token)\n const isPR = Boolean(prNumber)\n\n if (!isPR && ref === `refs/heads/${baseBranch}`) {\n core.debug(`This run is related to the ${baseBranch} branch`)\n\n await processHeadBranch({ commitSha, headMetrics, job, octokit, owner, repo, title })\n } else if (isPR) {\n core.debug(`This run is related to PR #${prNumber}`)\n\n await processPullRequest({ headMetrics, job, octokit, owner, prNumber, repo, title })\n } else {\n core.debug(`This run is not related to a PR or the default branch`)\n }\n}\n\ntry {\n run()\n} catch (error) {\n core.debug(`Error: ${JSON.stringify(error)}`)\n core.setFailed(error.message)\n}\n", "import regexEscape from 'regex-escape'\n\nimport { drawGraph } from './graph.js'\nimport { formatValue } from './units.js'\n\nconst MAX_GRAPH_ITEMS = 13\nconst PAST_METRICS_COUNT = 30\n\nexport const createHeadBranchComment = ({ commitSha, metrics, job, previousCommit, title }) => {\n const allMetrics = getMetricsForHeadBranch({ commitSha, job, metrics, previousCommit })\n const metadata = ``\n const metricsList = metrics.map((metric) => getMetricLine(metric)).join('\\n')\n\n return `## ${title}\\n\\n${metricsList}\\n${metadata}`\n}\n\nexport const createPullRequestComment = ({ baseSha, job, metrics, previousMetrics, title }) => {\n // Accounting for both the legacy metadata format (object) and the new\n // format (array of objects).\n const previousMetricsArray = (Array.isArray(previousMetrics) ? previousMetrics : [previousMetrics])\n .filter(Boolean)\n .reverse()\n const metadata = ``\n const metricsList = metrics\n .map((metric) => {\n const comparison = previousMetricsArray.at(-1) ?? {}\n const previousValue = comparison[metric.name]\n // eslint-disable-next-line dot-notation\n const previousSha = comparison['__commit']\n const graphMetrics = [...previousMetricsArray, { __commit: baseSha, [metric.name]: metric.value }]\n const graph = getGraph({ metrics: graphMetrics, metricName: metric.name, units: metric.units })\n\n return getMetricLine(metric, previousValue, previousSha, graph)\n })\n .join('\\n')\n const baseShaLine = baseSha && previousMetricsArray.length !== 0 ? `*Comparing with ${baseSha}*\\n\\n` : ''\n\n return `## ${title}\\n\\n${baseShaLine}${metricsList}\\n${metadata}`\n}\n\nconst getGraph = ({ metrics, metricName, units }) => {\n const points = metrics.map((metric, index) => {\n const offset = metrics.length - 1 - index\n const label = offset === 0 ? 'T' : `T-${offset}`\n\n return {\n // eslint-disable-next-line dot-notation\n commit: metric['__commit'],\n displayValue: metric[metricName] == null ? 'n/a' : formatValue(metric[metricName], units),\n label,\n value: metric[metricName] == null ? Number.NEGATIVE_INFINITY : metric[metricName],\n }\n })\n const graph = drawGraph(points.slice(MAX_GRAPH_ITEMS * -1), { drawMean: true, fillLast: true })\n const legendItems = points\n .map(\n ({ commit, displayValue, label }) =>\n `- ${label === 'T' ? '**' : ''}${label} (${label === 'T' ? 'current commit' : commit}): ${displayValue}${\n label === 'T' ? '**' : ''\n }`,\n )\n .join('\\n')\n const legend = `
\\nLegend\\n\\n${legendItems}
`\n const lines = ['```', graph, '```', legend]\n\n return lines.join('\\n')\n}\n\nexport const getMetricsComment = ({ comments, job }) => {\n const deltaComment = comments.map(({ body }) => parseComment(body, job)).find(Boolean)\n\n return deltaComment\n}\n\nconst getMetricsForHeadBranch = ({ commitSha, job, metrics, previousCommit }) => {\n const metricValues = metrics.reduce((acc, { name, value }) => ({ ...acc, [name]: value }), {})\n const currentCommitMetrics = { __commit: commitSha, ...metricValues }\n\n if (previousCommit) {\n const previousMetrics = getMetricsComment({ comments: previousCommit.comments, job })\n const normalizedPreviousMetrics = normalizeMetrics(previousMetrics, previousCommit.baseSha).slice(\n 0,\n PAST_METRICS_COUNT - 1,\n )\n\n return [currentCommitMetrics, ...normalizedPreviousMetrics]\n }\n\n return [currentCommitMetrics]\n}\n\nconst getMetricLine = ({ displayName, name, units, value }, previousValue, previousSha, graph = '') => {\n const comparison = getMetricLineComparison(value, previousValue, previousSha)\n const formattedValue = formatValue(value, units)\n\n return `### ${displayName || name}: ${formattedValue}\\n${comparison ? ` ${comparison}` : ''}\\n${graph}`\n}\n\nconst getMetricLineComparison = (value, previousValue, previousSha) => {\n if (previousValue === undefined) {\n return ''\n }\n\n const difference = value - previousValue\n\n if (difference === 0) {\n return '(no change)'\n }\n\n const percentage = Math.abs((difference / value) * FLOAT_TO_PERCENT).toFixed(2)\n const [word, icon] = difference > 0 ? ['increase', '\u2B06\uFE0F'] : ['decrease', '\u2B07\uFE0F']\n const shaText = previousSha ? ` vs. ${previousSha}` : ''\n\n return `${icon} **${percentage}% ${word}**${shaText}`\n}\n\nconst FLOAT_TO_PERCENT = 100\n\nexport const findDeltaComment = (body, job) => {\n const regex = new RegExp(``)\n const match = body.match(regex)\n\n return match\n}\n\nconst normalizeMetrics = (metrics, sha) => {\n if (!metrics) {\n return []\n }\n\n if (Array.isArray(metrics)) {\n return metrics\n }\n\n return [{ __commit: sha, ...metrics }]\n}\n\nconst parseComment = (body, job) => {\n const match = findDeltaComment(body, job)\n\n if (!match) {\n return\n }\n\n try {\n return JSON.parse(match[1])\n } catch {\n // no-op\n }\n}\n", "const BAR_BODY = '| |'\nconst BAR_BODY_FILLED = '|\u2592\u2592|'\nconst BAR_BODY_MEAN = '\u253C\u2500\u2500\u253C'\nconst BAR_TOP = '\u250C\u2500\u2500\u2510'\nconst GAP = ' '\nconst GAP_MEAN = '\u2500'\nconst GAP_LENGTH = 4\nconst LINE_COUNT = 20\n\nconst drawBase = (points) => {\n const axisPadding = '\u2500'.repeat(GAP_LENGTH / 2)\n const axis = points\n .map(({ value }) => {\n const barChar = value === 0 ? '\u2500' : '\u2534'\n\n return `${axisPadding}${barChar}${'\u2500'.repeat(BAR_BODY.length - 2)}${barChar}${axisPadding}`\n })\n .join('')\n const legend = points\n .map(({ label }) => {\n const text = getPaddedString(label, BAR_BODY.length + GAP_LENGTH)\n\n return text\n })\n .join('')\n\n return `\u2514\u2500${axis}>\\n ${legend}`\n}\n\nexport const drawGraph = (values, { drawMean = false, fillLast = false } = {}) => {\n const maxValue = values.reduce((max, { value }) => (value > max ? value : max), 0)\n const usableValues = values.filter(({ value }) => value !== Number.NEGATIVE_INFINITY)\n const sum = usableValues.reduce((acc, { value }) => acc + value, 0)\n const mean = sum / usableValues.length\n const increment = maxValue / LINE_COUNT\n const meanLevel = drawMean ? LINE_COUNT - Math.round(mean / increment) : null\n const augmentedValues = values.map((dataPoint) => {\n const filledLevels = dataPoint.value === Number.NEGATIVE_INFINITY ? 0 : Math.round(dataPoint.value / increment)\n const filterValue = dataPoint.value === Number.NEGATIVE_INFINITY ? 0 : dataPoint.value\n\n return { ...dataPoint, value: filterValue, emptyLevels: LINE_COUNT - filledLevels }\n })\n\n const levels = Array.from({ length: LINE_COUNT }, (_, index) =>\n drawLevel({ fillLast, isMean: meanLevel === index + 1, level: index + 1, values: augmentedValues }),\n )\n const topLevels = [\n drawLevel({ level: -1, values: augmentedValues }),\n drawLevel({ level: 0, values: augmentedValues }),\n ]\n const base = drawBase(augmentedValues)\n\n return `${[...topLevels, ...levels].join('\\n')}\\n${base}`\n}\n\nconst drawLevel = ({ fillLast, isMean, level, values }) => {\n const gapCharacter = isMean ? GAP_MEAN : GAP\n const padding = gapCharacter.repeat(GAP_LENGTH / 2)\n const bars = values\n // eslint-disable-next-line complexity\n .map(({ displayValue, emptyLevels, value }, index) => {\n const isLastValue = index === values.length - 1\n\n if (emptyLevels < level) {\n const unfilledBody = isMean ? BAR_BODY_MEAN : BAR_BODY\n\n return `${padding}${isLastValue && fillLast ? BAR_BODY_FILLED : unfilledBody}${padding}`\n }\n\n if (emptyLevels === level && value !== 0) {\n return `${padding}${BAR_TOP}${padding}`\n }\n\n if ((emptyLevels - 1 === level && value !== 0) || (emptyLevels === level && value === 0)) {\n return getPaddedString((displayValue || value).toString(), BAR_BODY.length + GAP_LENGTH, gapCharacter)\n }\n\n return `${padding}${gapCharacter.repeat(BAR_BODY.length)}${padding}`\n })\n .join('')\n\n return `${level === -1 ? '^' : '\u2502'} ${bars}`\n}\n\nconst getPaddedString = (string, length, paddingCharacter = ' ') => {\n const totalPadding = length - string.length\n\n if (totalPadding < 0) {\n return `${string.slice(0, length - 1)}\u2026`\n }\n\n const paddingRightLength = Math.max(0, Math.round(totalPadding / 2))\n const paddingLeftLength = Math.max(0, totalPadding - paddingRightLength)\n const paddingLeft = paddingCharacter.repeat(paddingLeftLength)\n const paddingRight = paddingCharacter.repeat(paddingRightLength)\n\n return `${paddingLeft}${string}${paddingRight}`\n}\n", "import prettyBytes from 'pretty-bytes'\nimport prettyMilliseconds from 'pretty-ms'\n\nconst KILO = 1e3\n\n// eslint-disable-next-line complexity\nexport const formatValue = (value, unit) => {\n const normalizedUnit = unit && unit.toLowerCase()\n\n switch (normalizedUnit) {\n case 'b':\n case 'byte':\n case 'bytes':\n return prettyBytes(value)\n\n case 'kb':\n case 'kilobyte':\n case 'kilobytes':\n return prettyBytes(value * KILO)\n\n case 'ms':\n case 'millisecond':\n case 'milliseconds':\n return prettyMilliseconds(value)\n\n case 's':\n case 'seconds':\n return prettyMilliseconds(value * KILO)\n\n default:\n return value.toLocaleString()\n }\n}\n", "export default function parseMilliseconds(milliseconds) {\n\tif (typeof milliseconds !== 'number') {\n\t\tthrow new TypeError('Expected a number');\n\t}\n\n\tconst roundTowardsZero = milliseconds > 0 ? Math.floor : Math.ceil;\n\n\treturn {\n\t\tdays: roundTowardsZero(milliseconds / 86400000),\n\t\thours: roundTowardsZero(milliseconds / 3600000) % 24,\n\t\tminutes: roundTowardsZero(milliseconds / 60000) % 60,\n\t\tseconds: roundTowardsZero(milliseconds / 1000) % 60,\n\t\tmilliseconds: roundTowardsZero(milliseconds) % 1000,\n\t\tmicroseconds: roundTowardsZero(milliseconds * 1000) % 1000,\n\t\tnanoseconds: roundTowardsZero(milliseconds * 1e6) % 1000\n\t};\n}\n", "import parseMilliseconds from 'parse-ms';\n\nconst pluralize = (word, count) => count === 1 ? word : `${word}s`;\n\nconst SECOND_ROUNDING_EPSILON = 0.000_000_1;\n\nexport default function prettyMilliseconds(milliseconds, options = {}) {\n\tif (!Number.isFinite(milliseconds)) {\n\t\tthrow new TypeError('Expected a finite number');\n\t}\n\n\tif (options.colonNotation) {\n\t\toptions.compact = false;\n\t\toptions.formatSubMilliseconds = false;\n\t\toptions.separateMilliseconds = false;\n\t\toptions.verbose = false;\n\t}\n\n\tif (options.compact) {\n\t\toptions.secondsDecimalDigits = 0;\n\t\toptions.millisecondsDecimalDigits = 0;\n\t}\n\n\tconst result = [];\n\n\tconst floorDecimals = (value, decimalDigits) => {\n\t\tconst flooredInterimValue = Math.floor((value * (10 ** decimalDigits)) + SECOND_ROUNDING_EPSILON);\n\t\tconst flooredValue = Math.round(flooredInterimValue) / (10 ** decimalDigits);\n\t\treturn flooredValue.toFixed(decimalDigits);\n\t};\n\n\tconst add = (value, long, short, valueString) => {\n\t\tif ((result.length === 0 || !options.colonNotation) && value === 0 && !(options.colonNotation && short === 'm')) {\n\t\t\treturn;\n\t\t}\n\n\t\tvalueString = (valueString || value || '0').toString();\n\t\tlet prefix;\n\t\tlet suffix;\n\t\tif (options.colonNotation) {\n\t\t\tprefix = result.length > 0 ? ':' : '';\n\t\t\tsuffix = '';\n\t\t\tconst wholeDigits = valueString.includes('.') ? valueString.split('.')[0].length : valueString.length;\n\t\t\tconst minLength = result.length > 0 ? 2 : 1;\n\t\t\tvalueString = '0'.repeat(Math.max(0, minLength - wholeDigits)) + valueString;\n\t\t} else {\n\t\t\tprefix = '';\n\t\t\tsuffix = options.verbose ? ' ' + pluralize(long, value) : short;\n\t\t}\n\n\t\tresult.push(prefix + valueString + suffix);\n\t};\n\n\tconst parsed = parseMilliseconds(milliseconds);\n\n\tadd(Math.trunc(parsed.days / 365), 'year', 'y');\n\tadd(parsed.days % 365, 'day', 'd');\n\tadd(parsed.hours, 'hour', 'h');\n\tadd(parsed.minutes, 'minute', 'm');\n\n\tif (\n\t\toptions.separateMilliseconds\n\t\t|| options.formatSubMilliseconds\n\t\t|| (!options.colonNotation && milliseconds < 1000)\n\t) {\n\t\tadd(parsed.seconds, 'second', 's');\n\t\tif (options.formatSubMilliseconds) {\n\t\t\tadd(parsed.milliseconds, 'millisecond', 'ms');\n\t\t\tadd(parsed.microseconds, 'microsecond', '\u00B5s');\n\t\t\tadd(parsed.nanoseconds, 'nanosecond', 'ns');\n\t\t} else {\n\t\t\tconst millisecondsAndBelow\n\t\t\t\t= parsed.milliseconds\n\t\t\t\t+ (parsed.microseconds / 1000)\n\t\t\t\t+ (parsed.nanoseconds / 1e6);\n\n\t\t\tconst millisecondsDecimalDigits\n\t\t\t\t= typeof options.millisecondsDecimalDigits === 'number'\n\t\t\t\t\t? options.millisecondsDecimalDigits\n\t\t\t\t\t: 0;\n\n\t\t\tconst roundedMiliseconds = millisecondsAndBelow >= 1\n\t\t\t\t? Math.round(millisecondsAndBelow)\n\t\t\t\t: Math.ceil(millisecondsAndBelow);\n\n\t\t\tconst millisecondsString = millisecondsDecimalDigits\n\t\t\t\t? millisecondsAndBelow.toFixed(millisecondsDecimalDigits)\n\t\t\t\t: roundedMiliseconds;\n\n\t\t\tadd(\n\t\t\t\tNumber.parseFloat(millisecondsString),\n\t\t\t\t'millisecond',\n\t\t\t\t'ms',\n\t\t\t\tmillisecondsString,\n\t\t\t);\n\t\t}\n\t} else {\n\t\tconst seconds = (milliseconds / 1000) % 60;\n\t\tconst secondsDecimalDigits\n\t\t\t= typeof options.secondsDecimalDigits === 'number'\n\t\t\t\t? options.secondsDecimalDigits\n\t\t\t\t: 1;\n\t\tconst secondsFixed = floorDecimals(seconds, secondsDecimalDigits);\n\t\tconst secondsString = options.keepDecimalsOnWholeSeconds\n\t\t\t? secondsFixed\n\t\t\t: secondsFixed.replace(/\\.0+$/, '');\n\t\tadd(Number.parseFloat(secondsString), 'second', 's', secondsString);\n\t}\n\n\tif (result.length === 0) {\n\t\treturn '0' + (options.verbose ? ' milliseconds' : 'ms');\n\t}\n\n\tif (options.compact) {\n\t\treturn result[0];\n\t}\n\n\tif (typeof options.unitCount === 'number') {\n\t\tconst separator = options.colonNotation ? '' : ' ';\n\t\treturn result.slice(0, Math.max(options.unitCount, 1)).join(separator);\n\t}\n\n\treturn options.colonNotation ? result.join('') : result.join(' ');\n}\n", "import { readdir, readFile } from 'fs'\nimport { promisify } from 'util'\n\nimport core from '@actions/core'\n\nconst pReadDir = promisify(readdir)\nconst pReadFile = promisify(readFile)\n\nconst readDeltaFile = async (filePath) => {\n try {\n const data = await pReadFile(filePath, 'utf8')\n const match = data.match(/(\\d+(?:\\.\\d+)?)\\s*(\\w*)\\s*(?:\\(([\\s\\S]*)\\))?/)\n\n if (!match) {\n return null\n }\n\n return {\n value: Number(match[1]),\n units: match[2],\n displayName: match[3],\n }\n } catch {\n return null\n }\n}\n\nexport const readDeltaFiles = async (rootPath) => {\n try {\n const items = await pReadDir(rootPath)\n const metricFiles = items\n .map((fileName) => ({ fileName, metricMatch: fileName.match(/^\\.delta\\.(.+)$/) }))\n .filter(({ metricMatch }) => Boolean(metricMatch))\n .map(({ fileName, metricMatch }) => ({ fileName, metricName: metricMatch[1] }))\n const metrics = metricFiles.map(async ({ fileName, metricName }) => {\n const data = await readDeltaFile(fileName)\n\n if (!data) {\n return\n }\n\n return {\n ...data,\n name: metricName,\n }\n })\n const metricsData = await Promise.all(metrics)\n\n return metricsData.filter(Boolean)\n } catch (error) {\n core.debug(`Could not read delta files: ${error.message}`)\n\n return []\n }\n}\n", "export const getBranchNameFromRef = (ref) => {\n const match = ref.match(/^refs\\/heads\\/(.*)$/)\n\n if (match) {\n return match[1]\n }\n}\n\nexport const getCommentsFromMainBranch = async ({ commitIndex = 0, octokit, owner, repo }) => {\n const { data: commits } = await octokit.rest.repos.listCommits({\n owner,\n repo,\n })\n const baseSha = commits[commitIndex].sha\n const { data: comments } = await octokit.rest.repos.listCommentsForCommit({\n owner,\n repo,\n commit_sha: baseSha,\n })\n\n return { baseSha, comments }\n}\n", "import process from 'process'\n\nimport core from '@actions/core'\nimport { context } from '@actions/github'\n\nconst getPrNumber = () => {\n const { eventName, payload } = context\n\n if (eventName === 'pull_request') {\n return payload.number\n }\n\n if (\n eventName === 'workflow_run' &&\n payload?.workflow_run?.event === 'pull_request' &&\n payload?.workflow_run?.pull_requests?.length === 1\n ) {\n return payload.workflow_run.pull_requests[0].number\n }\n}\n\nexport const getInputs = () => {\n const {\n GITHUB_DEV_BASE_BRANCH: envBaseBranch,\n GITHUB_REPOSITORY: repository,\n GITHUB_TOKEN: envToken,\n GITHUB_WORKSPACE: rootPath = process.cwd(),\n } = process.env\n const { job, ref, sha: commitSha } = context\n const baseBranch = envBaseBranch || core.getInput('base_branch')\n const title = core.getInput('title')\n const [owner, repo] = repository.split('/')\n const token = envToken || core.getInput('token')\n const prNumber = getPrNumber()\n\n return {\n baseBranch,\n commitSha,\n job,\n owner,\n prNumber,\n ref,\n repo,\n rootPath,\n title,\n token,\n }\n}\n"], - "mappings": "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FACA,iFACA,iDACA,2CACA,wDACA,oEACA,eACA,cACA,qBACA,sBACA,iCACA,gCACA,8BACA,kCACA,eACA,iBACA,kCACA,qDACA,0CACA,6DACA,uCACA,sBACA,sBACA,qDACA,oDACA,yCACA,wEACA,mEACA,mCACA,mCACA,8DACA,6BACA,0BACA,wCACA,8BACA,6CACA,sCACA,iEACA,0BACA,mCACA,sCACA,yBACA,8CACA,iCACA,+BACA,qDACA,0BACA,2BACA,8BACA,0DACA,yCACA,4BACA,mEACA,4BACA,kCACA,yBACA,0CACA,sDACA,oCACA,yBACA,iDACA,8EACA,yGACA,+EACA,iDACA,6CACA,8CACA,2CACA,2CACA,2CACA,4CACA,sCACA,+CACA,4CACA,6CACA,0CACA,6DACA,kFACA,wDACA,6CACA,+CACA,kEACA,uCACA,sCACA,mEACA,sEACA,kDACA,2EACA,oDACA,wCACA,sDACA,gDACA,2CACA,sCACA,6DACA,qCACA,2DACA,wDACA,sDACA,wDACA,kDACA,oDACA,0CACA,gDACA,yCACA,kEACA,0CACA,oCACA,mCACA,qDACA,mCACA,wDACA,yCACA,oCACA,6CACA,oEACA,2CACA,4DACA,0DACA,0DACA,6DACA,4DACA,kCACA,oCACA,wCACA,kEACA,2CACA,0CACA,sCACA,mCACA,4CACA,mEACA,0DACA,yDACA,uDACA,qEACA,yDACA,8EACA,sCACA,0DACA,6DACA,oDACA,6EACA,wCACA,yCACA,kCACA,mCACA,oCACA,qBACA,6EACA,oBACA,uBACA,sBACA,sBACA,4BACA,sBACA,qBACA,oCACA,iEACA,4FACA,kEACA,oCACA,gCACA,iCACA,8BACA,8BACA,oBACA,wBACA,gCACA,oBACA,uBACA,uBACA,sBACA,2BACA,0DACA,oBACA,kBACA,mCACA,2CACA,8BACA,wBACA,oDACA,kBACA,sBACA,6DACA,2BACA,mBACA,oCACA,qBACA,2BACA,mBACA,cACA,gCACA,2CACA,uCACA,mCACA,mCACA,+BACA,kCACA,8BACA,8BACA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", + "sourcesContent": [null, null, null, null, "'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n", "module.exports = require('./lib/tunnel');\n", null, null, null, null, null, null, null, null, "export function getUserAgent() {\n if (typeof navigator === \"object\" && \"userAgent\" in navigator) {\n return navigator.userAgent;\n }\n if (typeof process === \"object\" && \"version\" in process) {\n return `Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`;\n }\n return \"\";\n}\n", "module.exports = register;\n\nfunction 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(function (callback, name) {\n return register.bind(null, state, name, callback, options);\n }, method)();\n }\n\n return Promise.resolve().then(function () {\n if (!state.registry[name]) {\n return method(options);\n }\n\n return state.registry[name].reduce(function (method, registered) {\n return registered.hook.bind(null, method, options);\n }, method)();\n });\n}\n", "module.exports = addHook;\n\nfunction addHook(state, kind, name, hook) {\n var orig = hook;\n if (!state.registry[name]) {\n state.registry[name] = [];\n }\n\n if (kind === \"before\") {\n hook = function (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 = function (method, options) {\n var result;\n return Promise.resolve()\n .then(method.bind(null, options))\n .then(function (result_) {\n result = result_;\n return orig(result, options);\n })\n .then(function () {\n return result;\n });\n };\n }\n\n if (kind === \"error\") {\n hook = function (method, options) {\n return Promise.resolve()\n .then(method.bind(null, options))\n .catch(function (error) {\n return orig(error, options);\n });\n };\n }\n\n state.registry[name].push({\n hook: hook,\n orig: orig,\n });\n}\n", "module.exports = removeHook;\n\nfunction removeHook(state, name, method) {\n if (!state.registry[name]) {\n return;\n }\n\n var index = state.registry[name]\n .map(function (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", "var register = require('./lib/register')\nvar addHook = require('./lib/add')\nvar removeHook = require('./lib/remove')\n\n// bind with array of arguments: https://stackoverflow.com/a/21792913\nvar bind = Function.bind\nvar bindable = bind.bind(bind)\n\nfunction bindApi (hook, state, name) {\n var removeHookRef = bindable(removeHook, null).apply(null, name ? [state, name] : [state])\n hook.api = { remove: removeHookRef }\n hook.remove = removeHookRef\n\n ;['before', 'error', 'after', 'wrap'].forEach(function (kind) {\n var args = name ? [state, kind, name] : [state, kind]\n hook[kind] = hook.api[kind] = bindable(addHook, null).apply(null, args)\n })\n}\n\nfunction HookSingular () {\n var singularHookName = 'h'\n var singularHookState = {\n registry: {}\n }\n var singularHook = register.bind(null, singularHookState, singularHookName)\n bindApi(singularHook, singularHookState, singularHookName)\n return singularHook\n}\n\nfunction HookCollection () {\n var state = {\n registry: {}\n }\n\n var hook = register.bind(null, state)\n bindApi(hook, state)\n\n return hook\n}\n\nvar collectionHookDeprecationMessageDisplayed = false\nfunction Hook () {\n if (!collectionHookDeprecationMessageDisplayed) {\n console.warn('[before-after-hook]: \"Hook()\" repurposing warning, use \"Hook.Collection()\". Read more: https://git.io/upgrade-before-after-hook-to-1.4')\n collectionHookDeprecationMessageDisplayed = true\n }\n return HookCollection()\n}\n\nHook.Singular = HookSingular.bind()\nHook.Collection = HookCollection.bind()\n\nmodule.exports = Hook\n// expose constructors as a named property for TypeScript\nmodule.exports.Hook = Hook\nmodule.exports.Singular = Hook.Singular\nmodule.exports.Collection = Hook.Collection\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\n/*!\n * is-plain-object \n *\n * Copyright (c) 2014-2017, Jon Schlinkert.\n * Released under the MIT License.\n */\n\nfunction isObject(o) {\n return Object.prototype.toString.call(o) === '[object Object]';\n}\n\nfunction isPlainObject(o) {\n var ctor,prot;\n\n if (isObject(o) === false) return false;\n\n // If has modified constructor\n ctor = o.constructor;\n if (ctor === undefined) return true;\n\n // If has modified prototype\n prot = ctor.prototype;\n if (isObject(prot) === false) return false;\n\n // If constructor does not have an Object-specific method\n if (prot.hasOwnProperty('isPrototypeOf') === false) {\n return false;\n }\n\n // Most likely a plain Object\n return true;\n}\n\nexports.isPlainObject = isPlainObject;\n", "export function 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", "import { isPlainObject } from \"is-plain-object\";\nexport function 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))\n Object.assign(result, { [key]: options[key] });\n else\n result[key] = mergeDeep(defaults[key], options[key]);\n }\n else {\n Object.assign(result, { [key]: options[key] });\n }\n });\n return result;\n}\n", "export function removeUndefinedProperties(obj) {\n for (const key in obj) {\n if (obj[key] === undefined) {\n delete obj[key];\n }\n }\n return obj;\n}\n", "import { lowercaseKeys } from \"./util/lowercase-keys\";\nimport { mergeDeep } from \"./util/merge-deep\";\nimport { removeUndefinedProperties } from \"./util/remove-undefined-properties\";\nexport function 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 }\n else {\n options = Object.assign({}, route);\n }\n // lowercase header names before merging with defaults to avoid duplicates\n options.headers = lowercaseKeys(options.headers);\n // remove properties with undefined values before merging\n removeUndefinedProperties(options);\n removeUndefinedProperties(options.headers);\n const mergedOptions = mergeDeep(defaults || {}, options);\n // mediaType.previews arrays are merged, instead of overwritten\n if (defaults && defaults.mediaType.previews.length) {\n mergedOptions.mediaType.previews = defaults.mediaType.previews\n .filter((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 return mergedOptions;\n}\n", "export function 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 +\n separator +\n names\n .map((name) => {\n if (name === \"q\") {\n return (\"q=\" + parameters.q.split(\"+\").map(encodeURIComponent).join(\"+\"));\n }\n return `${name}=${encodeURIComponent(parameters[name])}`;\n })\n .join(\"&\"));\n}\n", "const urlVariableRegex = /\\{[^}]+\\}/g;\nfunction removeNonChars(variableName) {\n return variableName.replace(/^\\W+|\\W+$/g, \"\").split(/,/);\n}\nexport function 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", "export function omit(object, keysToOmit) {\n return Object.keys(object)\n .filter((option) => !keysToOmit.includes(option))\n .reduce((obj, key) => {\n obj[key] = object[key];\n return obj;\n }, {});\n}\n", "// Based on https://github.com/bramstein/url-template, licensed under BSD\n// TODO: create separate package.\n//\n// Copyright (c) 2012-2014, Bram Stein\n// All rights reserved.\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions\n// are met:\n// 1. Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// 2. Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// 3. The name of the author may not be used to endorse or promote products\n// derived from this software without specific prior written permission.\n// THIS SOFTWARE IS PROVIDED BY THE AUTHOR \"AS IS\" AND ANY EXPRESS OR IMPLIED\n// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF\n// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO\n// EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,\n// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,\n// BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY\n// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\n// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,\n// EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n/* istanbul ignore file */\nfunction encodeReserved(str) {\n return str\n .split(/(%[0-9A-Fa-f]{2})/g)\n .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 })\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 =\n operator === \"+\" || operator === \"#\"\n ? encodeReserved(value)\n : encodeUnreserved(value);\n if (key) {\n return encodeUnreserved(key) + \"=\" + value;\n }\n else {\n return value;\n }\n}\nfunction isDefined(value) {\n return value !== undefined && 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\" ||\n typeof value === \"number\" ||\n typeof value === \"boolean\") {\n value = value.toString();\n if (modifier && modifier !== \"*\") {\n value = value.substring(0, parseInt(modifier, 10));\n }\n result.push(encodeValue(operator, value, isKeyOperator(operator) ? key : \"\"));\n }\n else {\n if (modifier === \"*\") {\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n result.push(encodeValue(operator, value, 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 }\n else {\n const tmp = [];\n if (Array.isArray(value)) {\n value.filter(isDefined).forEach(function (value) {\n tmp.push(encodeValue(operator, value));\n });\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 }\n else if (tmp.length !== 0) {\n result.push(tmp.join(\",\"));\n }\n }\n }\n }\n else {\n if (operator === \";\") {\n if (isDefined(value)) {\n result.push(encodeUnreserved(key));\n }\n }\n else if (value === \"\" && (operator === \"&\" || operator === \"?\")) {\n result.push(encodeUnreserved(key) + \"=\");\n }\n else if (value === \"\") {\n result.push(\"\");\n }\n }\n return result;\n}\nexport function parseUrl(template) {\n return {\n expand: expand.bind(null, template),\n };\n}\nfunction expand(template, context) {\n var operators = [\"+\", \"#\", \".\", \"/\", \";\", \"?\", \"&\"];\n return template.replace(/\\{([^\\{\\}]+)\\}|([^\\{\\}]+)/g, 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 }\n else if (operator !== \"#\") {\n separator = operator;\n }\n return (values.length !== 0 ? operator : \"\") + values.join(separator);\n }\n else {\n return values.join(\",\");\n }\n }\n else {\n return encodeReserved(literal);\n }\n });\n}\n", "import { addQueryParameters } from \"./util/add-query-parameters\";\nimport { extractUrlVariableNames } from \"./util/extract-url-variable-names\";\nimport { omit } from \"./util/omit\";\nimport { parseUrl } from \"./util/url-template\";\nexport function parse(options) {\n // https://fetch.spec.whatwg.org/#methods\n let method = options.method.toUpperCase();\n // replace :varname with {varname} to make it RFC 6570 compatible\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 // extract variable names from URL to calculate remaining variables later\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)\n .filter((option) => urlVariableNames.includes(option))\n .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 // e.g. application/vnd.github.v3+json => application/vnd.github.v3.raw\n headers.accept = headers.accept\n .split(/,/)\n .map((preview) => preview.replace(/application\\/vnd(\\.\\w+)(\\.v3)?(\\.\\w+)?(\\+json)?$/, `application/vnd$1$2.${options.mediaType.format}`))\n .join(\",\");\n }\n if (options.mediaType.previews.length) {\n const previewsFromAcceptHeader = headers.accept.match(/[\\w-]+(?=-preview)/g) || [];\n headers.accept = previewsFromAcceptHeader\n .concat(options.mediaType.previews)\n .map((preview) => {\n const format = options.mediaType.format\n ? `.${options.mediaType.format}`\n : \"+json\";\n return `application/vnd.github.${preview}-preview${format}`;\n })\n .join(\",\");\n }\n }\n // for GET/HEAD requests, set URL query parameters from remaining parameters\n // for PATCH/POST/PUT/DELETE requests, set request body from remaining parameters\n if ([\"GET\", \"HEAD\"].includes(method)) {\n url = addQueryParameters(url, remainingParameters);\n }\n else {\n if (\"data\" in remainingParameters) {\n body = remainingParameters.data;\n }\n else {\n if (Object.keys(remainingParameters).length) {\n body = remainingParameters;\n }\n else {\n headers[\"content-length\"] = 0;\n }\n }\n }\n // default content-type for JSON if body is set\n if (!headers[\"content-type\"] && typeof body !== \"undefined\") {\n headers[\"content-type\"] = \"application/json; charset=utf-8\";\n }\n // GitHub expects 'content-length: 0' header for PUT/PATCH requests without body.\n // fetch does not allow to set `content-length` header, but we can set body to an empty string\n if ([\"PATCH\", \"PUT\"].includes(method) && typeof body === \"undefined\") {\n body = \"\";\n }\n // Only return body/request keys if present\n return Object.assign({ method, url, headers }, typeof body !== \"undefined\" ? { body } : null, options.request ? { request: options.request } : null);\n}\n", "import { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function endpointWithDefaults(defaults, route, options) {\n return parse(merge(defaults, route, options));\n}\n", "import { endpointWithDefaults } from \"./endpoint-with-defaults\";\nimport { merge } from \"./merge\";\nimport { parse } from \"./parse\";\nexport function withDefaults(oldDefaults, newDefaults) {\n const DEFAULTS = merge(oldDefaults, newDefaults);\n const endpoint = endpointWithDefaults.bind(null, DEFAULTS);\n return Object.assign(endpoint, {\n DEFAULTS,\n defaults: withDefaults.bind(null, DEFAULTS),\n merge: merge.bind(null, DEFAULTS),\n parse,\n });\n}\n", "export const VERSION = \"6.0.12\";\n", "import { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nconst userAgent = `octokit-endpoint.js/${VERSION} ${getUserAgent()}`;\n// DEFAULTS has all properties set that EndpointOptions has, except url.\n// So we use RequestParameters and add method as additional required property.\nexport const 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 previews: [],\n },\n};\n", "import { withDefaults } from \"./with-defaults\";\nimport { DEFAULTS } from \"./defaults\";\nexport const endpoint = withDefaults(null, DEFAULTS);\n", "\"use strict\";\n\nvar conversions = {};\nmodule.exports = conversions;\n\nfunction sign(x) {\n return x < 0 ? -1 : 1;\n}\n\nfunction evenRound(x) {\n // Round x to the nearest integer, choosing the even integer if it lies halfway between two.\n if ((x % 1) === 0.5 && (x & 1) === 0) { // [even number].5; round down (i.e. floor)\n return Math.floor(x);\n } else {\n return Math.round(x);\n }\n}\n\nfunction createNumberConversion(bitLength, typeOpts) {\n if (!typeOpts.unsigned) {\n --bitLength;\n }\n const lowerBound = typeOpts.unsigned ? 0 : -Math.pow(2, bitLength);\n const upperBound = Math.pow(2, bitLength) - 1;\n\n const moduloVal = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength) : Math.pow(2, bitLength);\n const moduloBound = typeOpts.moduloBitLength ? Math.pow(2, typeOpts.moduloBitLength - 1) : Math.pow(2, bitLength - 1);\n\n return function(V, opts) {\n if (!opts) opts = {};\n\n let x = +V;\n\n if (opts.enforceRange) {\n if (!Number.isFinite(x)) {\n throw new TypeError(\"Argument is not a finite number\");\n }\n\n x = sign(x) * Math.floor(Math.abs(x));\n if (x < lowerBound || x > upperBound) {\n throw new TypeError(\"Argument is not in byte range\");\n }\n\n return x;\n }\n\n if (!isNaN(x) && opts.clamp) {\n x = evenRound(x);\n\n if (x < lowerBound) x = lowerBound;\n if (x > upperBound) x = upperBound;\n return x;\n }\n\n if (!Number.isFinite(x) || x === 0) {\n return 0;\n }\n\n x = sign(x) * Math.floor(Math.abs(x));\n x = x % moduloVal;\n\n if (!typeOpts.unsigned && x >= moduloBound) {\n return x - moduloVal;\n } else if (typeOpts.unsigned) {\n if (x < 0) {\n x += moduloVal;\n } else if (x === -0) { // don't return negative zero\n return 0;\n }\n }\n\n return x;\n }\n}\n\nconversions[\"void\"] = function () {\n return undefined;\n};\n\nconversions[\"boolean\"] = function (val) {\n return !!val;\n};\n\nconversions[\"byte\"] = createNumberConversion(8, { unsigned: false });\nconversions[\"octet\"] = createNumberConversion(8, { unsigned: true });\n\nconversions[\"short\"] = createNumberConversion(16, { unsigned: false });\nconversions[\"unsigned short\"] = createNumberConversion(16, { unsigned: true });\n\nconversions[\"long\"] = createNumberConversion(32, { unsigned: false });\nconversions[\"unsigned long\"] = createNumberConversion(32, { unsigned: true });\n\nconversions[\"long long\"] = createNumberConversion(32, { unsigned: false, moduloBitLength: 64 });\nconversions[\"unsigned long long\"] = createNumberConversion(32, { unsigned: true, moduloBitLength: 64 });\n\nconversions[\"double\"] = function (V) {\n const x = +V;\n\n if (!Number.isFinite(x)) {\n throw new TypeError(\"Argument is not a finite floating-point value\");\n }\n\n return x;\n};\n\nconversions[\"unrestricted double\"] = function (V) {\n const x = +V;\n\n if (isNaN(x)) {\n throw new TypeError(\"Argument is NaN\");\n }\n\n return x;\n};\n\n// not quite valid, but good enough for JS\nconversions[\"float\"] = conversions[\"double\"];\nconversions[\"unrestricted float\"] = conversions[\"unrestricted double\"];\n\nconversions[\"DOMString\"] = function (V, opts) {\n if (!opts) opts = {};\n\n if (opts.treatNullAsEmptyString && V === null) {\n return \"\";\n }\n\n return String(V);\n};\n\nconversions[\"ByteString\"] = function (V, opts) {\n const x = String(V);\n let c = undefined;\n for (let i = 0; (c = x.codePointAt(i)) !== undefined; ++i) {\n if (c > 255) {\n throw new TypeError(\"Argument is not a valid bytestring\");\n }\n }\n\n return x;\n};\n\nconversions[\"USVString\"] = function (V) {\n const S = String(V);\n const n = S.length;\n const U = [];\n for (let i = 0; i < n; ++i) {\n const c = S.charCodeAt(i);\n if (c < 0xD800 || c > 0xDFFF) {\n U.push(String.fromCodePoint(c));\n } else if (0xDC00 <= c && c <= 0xDFFF) {\n U.push(String.fromCodePoint(0xFFFD));\n } else {\n if (i === n - 1) {\n U.push(String.fromCodePoint(0xFFFD));\n } else {\n const d = S.charCodeAt(i + 1);\n if (0xDC00 <= d && d <= 0xDFFF) {\n const a = c & 0x3FF;\n const b = d & 0x3FF;\n U.push(String.fromCodePoint((2 << 15) + (2 << 9) * a + b));\n ++i;\n } else {\n U.push(String.fromCodePoint(0xFFFD));\n }\n }\n }\n }\n\n return U.join('');\n};\n\nconversions[\"Date\"] = function (V, opts) {\n if (!(V instanceof Date)) {\n throw new TypeError(\"Argument is not a Date object\");\n }\n if (isNaN(V)) {\n return undefined;\n }\n\n return V;\n};\n\nconversions[\"RegExp\"] = function (V, opts) {\n if (!(V instanceof RegExp)) {\n V = new RegExp(V);\n }\n\n return V;\n};\n", "\"use strict\";\n\nmodule.exports.mixin = function mixin(target, source) {\n const keys = Object.getOwnPropertyNames(source);\n for (let i = 0; i < keys.length; ++i) {\n Object.defineProperty(target, keys[i], Object.getOwnPropertyDescriptor(source, keys[i]));\n }\n};\n\nmodule.exports.wrapperSymbol = Symbol(\"wrapper\");\nmodule.exports.implSymbol = Symbol(\"impl\");\n\nmodule.exports.wrapperForImpl = function (impl) {\n return impl[module.exports.wrapperSymbol];\n};\n\nmodule.exports.implForWrapper = function (wrapper) {\n return wrapper[module.exports.implSymbol];\n};\n\n", "\"use strict\";\n\nvar punycode = require(\"punycode\");\nvar mappingTable = require(\"./lib/mappingTable.json\");\n\nvar PROCESSING_OPTIONS = {\n TRANSITIONAL: 0,\n NONTRANSITIONAL: 1\n};\n\nfunction normalize(str) { // fix bug in v8\n return str.split('\\u0000').map(function (s) { return s.normalize('NFC'); }).join('\\u0000');\n}\n\nfunction findStatus(val) {\n var start = 0;\n var end = mappingTable.length - 1;\n\n while (start <= end) {\n var mid = Math.floor((start + end) / 2);\n\n var target = mappingTable[mid];\n if (target[0][0] <= val && target[0][1] >= val) {\n return target;\n } else if (target[0][0] > val) {\n end = mid - 1;\n } else {\n start = mid + 1;\n }\n }\n\n return null;\n}\n\nvar regexAstralSymbols = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n\nfunction countSymbols(string) {\n return string\n // replace every surrogate pair with a BMP symbol\n .replace(regexAstralSymbols, '_')\n // then get the length\n .length;\n}\n\nfunction mapChars(domain_name, useSTD3, processing_option) {\n var hasError = false;\n var processed = \"\";\n\n var len = countSymbols(domain_name);\n for (var i = 0; i < len; ++i) {\n var codePoint = domain_name.codePointAt(i);\n var status = findStatus(codePoint);\n\n switch (status[1]) {\n case \"disallowed\":\n hasError = true;\n processed += String.fromCodePoint(codePoint);\n break;\n case \"ignored\":\n break;\n case \"mapped\":\n processed += String.fromCodePoint.apply(String, status[2]);\n break;\n case \"deviation\":\n if (processing_option === PROCESSING_OPTIONS.TRANSITIONAL) {\n processed += String.fromCodePoint.apply(String, status[2]);\n } else {\n processed += String.fromCodePoint(codePoint);\n }\n break;\n case \"valid\":\n processed += String.fromCodePoint(codePoint);\n break;\n case \"disallowed_STD3_mapped\":\n if (useSTD3) {\n hasError = true;\n processed += String.fromCodePoint(codePoint);\n } else {\n processed += String.fromCodePoint.apply(String, status[2]);\n }\n break;\n case \"disallowed_STD3_valid\":\n if (useSTD3) {\n hasError = true;\n }\n\n processed += String.fromCodePoint(codePoint);\n break;\n }\n }\n\n return {\n string: processed,\n error: hasError\n };\n}\n\nvar combiningMarksRegex = /[\\u0300-\\u036F\\u0483-\\u0489\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0859-\\u085B\\u08E4-\\u0903\\u093A-\\u093C\\u093E-\\u094F\\u0951-\\u0957\\u0962\\u0963\\u0981-\\u0983\\u09BC\\u09BE-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CD\\u09D7\\u09E2\\u09E3\\u0A01-\\u0A03\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81-\\u0A83\\u0ABC\\u0ABE-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AE2\\u0AE3\\u0B01-\\u0B03\\u0B3C\\u0B3E-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B62\\u0B63\\u0B82\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD7\\u0C00-\\u0C03\\u0C3E-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0C81-\\u0C83\\u0CBC\\u0CBE-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CE2\\u0CE3\\u0D01-\\u0D03\\u0D3E-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4D\\u0D57\\u0D62\\u0D63\\u0D82\\u0D83\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F3E\\u0F3F\\u0F71-\\u0F84\\u0F86\\u0F87\\u0F8D-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102B-\\u103E\\u1056-\\u1059\\u105E-\\u1060\\u1062-\\u1064\\u1067-\\u106D\\u1071-\\u1074\\u1082-\\u108D\\u108F\\u109A-\\u109D\\u135D-\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B4-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u192B\\u1930-\\u193B\\u19B0-\\u19C0\\u19C8\\u19C9\\u1A17-\\u1A1B\\u1A55-\\u1A5E\\u1A60-\\u1A7C\\u1A7F\\u1AB0-\\u1ABE\\u1B00-\\u1B04\\u1B34-\\u1B44\\u1B6B-\\u1B73\\u1B80-\\u1B82\\u1BA1-\\u1BAD\\u1BE6-\\u1BF3\\u1C24-\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE8\\u1CED\\u1CF2-\\u1CF4\\u1CF8\\u1CF9\\u1DC0-\\u1DF5\\u1DFC-\\u1DFF\\u20D0-\\u20F0\\u2CEF-\\u2CF1\\u2D7F\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F-\\uA672\\uA674-\\uA67D\\uA69F\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA823-\\uA827\\uA880\\uA881\\uA8B4-\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA953\\uA980-\\uA983\\uA9B3-\\uA9C0\\uA9E5\\uAA29-\\uAA36\\uAA43\\uAA4C\\uAA4D\\uAA7B-\\uAA7D\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uAAEB-\\uAAEF\\uAAF5\\uAAF6\\uABE3-\\uABEA\\uABEC\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE2D]|\\uD800[\\uDDFD\\uDEE0\\uDF76-\\uDF7A]|\\uD802[\\uDE01-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE0F\\uDE38-\\uDE3A\\uDE3F\\uDEE5\\uDEE6]|\\uD804[\\uDC00-\\uDC02\\uDC38-\\uDC46\\uDC7F-\\uDC82\\uDCB0-\\uDCBA\\uDD00-\\uDD02\\uDD27-\\uDD34\\uDD73\\uDD80-\\uDD82\\uDDB3-\\uDDC0\\uDE2C-\\uDE37\\uDEDF-\\uDEEA\\uDF01-\\uDF03\\uDF3C\\uDF3E-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF57\\uDF62\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDCB0-\\uDCC3\\uDDAF-\\uDDB5\\uDDB8-\\uDDC0\\uDE30-\\uDE40\\uDEAB-\\uDEB7]|\\uD81A[\\uDEF0-\\uDEF4\\uDF30-\\uDF36]|\\uD81B[\\uDF51-\\uDF7E\\uDF8F-\\uDF92]|\\uD82F[\\uDC9D\\uDC9E]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD83A[\\uDCD0-\\uDCD6]|\\uDB40[\\uDD00-\\uDDEF]/;\n\nfunction validateLabel(label, processing_option) {\n if (label.substr(0, 4) === \"xn--\") {\n label = punycode.toUnicode(label);\n processing_option = PROCESSING_OPTIONS.NONTRANSITIONAL;\n }\n\n var error = false;\n\n if (normalize(label) !== label ||\n (label[3] === \"-\" && label[4] === \"-\") ||\n label[0] === \"-\" || label[label.length - 1] === \"-\" ||\n label.indexOf(\".\") !== -1 ||\n label.search(combiningMarksRegex) === 0) {\n error = true;\n }\n\n var len = countSymbols(label);\n for (var i = 0; i < len; ++i) {\n var status = findStatus(label.codePointAt(i));\n if ((processing === PROCESSING_OPTIONS.TRANSITIONAL && status[1] !== \"valid\") ||\n (processing === PROCESSING_OPTIONS.NONTRANSITIONAL &&\n status[1] !== \"valid\" && status[1] !== \"deviation\")) {\n error = true;\n break;\n }\n }\n\n return {\n label: label,\n error: error\n };\n}\n\nfunction processing(domain_name, useSTD3, processing_option) {\n var result = mapChars(domain_name, useSTD3, processing_option);\n result.string = normalize(result.string);\n\n var labels = result.string.split(\".\");\n for (var i = 0; i < labels.length; ++i) {\n try {\n var validation = validateLabel(labels[i]);\n labels[i] = validation.label;\n result.error = result.error || validation.error;\n } catch(e) {\n result.error = true;\n }\n }\n\n return {\n string: labels.join(\".\"),\n error: result.error\n };\n}\n\nmodule.exports.toASCII = function(domain_name, useSTD3, processing_option, verifyDnsLength) {\n var result = processing(domain_name, useSTD3, processing_option);\n var labels = result.string.split(\".\");\n labels = labels.map(function(l) {\n try {\n return punycode.toASCII(l);\n } catch(e) {\n result.error = true;\n return l;\n }\n });\n\n if (verifyDnsLength) {\n var total = labels.slice(0, labels.length - 1).join(\".\").length;\n if (total.length > 253 || total.length === 0) {\n result.error = true;\n }\n\n for (var i=0; i < labels.length; ++i) {\n if (labels.length > 63 || labels.length === 0) {\n result.error = true;\n break;\n }\n }\n }\n\n if (result.error) return null;\n return labels.join(\".\");\n};\n\nmodule.exports.toUnicode = function(domain_name, useSTD3) {\n var result = processing(domain_name, useSTD3, PROCESSING_OPTIONS.NONTRANSITIONAL);\n\n return {\n domain: result.string,\n error: result.error\n };\n};\n\nmodule.exports.PROCESSING_OPTIONS = PROCESSING_OPTIONS;\n", "\"use strict\";\r\nconst punycode = require(\"punycode\");\r\nconst tr46 = require(\"tr46\");\r\n\r\nconst specialSchemes = {\r\n ftp: 21,\r\n file: null,\r\n gopher: 70,\r\n http: 80,\r\n https: 443,\r\n ws: 80,\r\n wss: 443\r\n};\r\n\r\nconst failure = Symbol(\"failure\");\r\n\r\nfunction countSymbols(str) {\r\n return punycode.ucs2.decode(str).length;\r\n}\r\n\r\nfunction at(input, idx) {\r\n const c = input[idx];\r\n return isNaN(c) ? undefined : String.fromCodePoint(c);\r\n}\r\n\r\nfunction isASCIIDigit(c) {\r\n return c >= 0x30 && c <= 0x39;\r\n}\r\n\r\nfunction isASCIIAlpha(c) {\r\n return (c >= 0x41 && c <= 0x5A) || (c >= 0x61 && c <= 0x7A);\r\n}\r\n\r\nfunction isASCIIAlphanumeric(c) {\r\n return isASCIIAlpha(c) || isASCIIDigit(c);\r\n}\r\n\r\nfunction isASCIIHex(c) {\r\n return isASCIIDigit(c) || (c >= 0x41 && c <= 0x46) || (c >= 0x61 && c <= 0x66);\r\n}\r\n\r\nfunction isSingleDot(buffer) {\r\n return buffer === \".\" || buffer.toLowerCase() === \"%2e\";\r\n}\r\n\r\nfunction isDoubleDot(buffer) {\r\n buffer = buffer.toLowerCase();\r\n return buffer === \"..\" || buffer === \"%2e.\" || buffer === \".%2e\" || buffer === \"%2e%2e\";\r\n}\r\n\r\nfunction isWindowsDriveLetterCodePoints(cp1, cp2) {\r\n return isASCIIAlpha(cp1) && (cp2 === 58 || cp2 === 124);\r\n}\r\n\r\nfunction isWindowsDriveLetterString(string) {\r\n return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && (string[1] === \":\" || string[1] === \"|\");\r\n}\r\n\r\nfunction isNormalizedWindowsDriveLetterString(string) {\r\n return string.length === 2 && isASCIIAlpha(string.codePointAt(0)) && string[1] === \":\";\r\n}\r\n\r\nfunction containsForbiddenHostCodePoint(string) {\r\n return string.search(/\\u0000|\\u0009|\\u000A|\\u000D|\\u0020|#|%|\\/|:|\\?|@|\\[|\\\\|\\]/) !== -1;\r\n}\r\n\r\nfunction containsForbiddenHostCodePointExcludingPercent(string) {\r\n return string.search(/\\u0000|\\u0009|\\u000A|\\u000D|\\u0020|#|\\/|:|\\?|@|\\[|\\\\|\\]/) !== -1;\r\n}\r\n\r\nfunction isSpecialScheme(scheme) {\r\n return specialSchemes[scheme] !== undefined;\r\n}\r\n\r\nfunction isSpecial(url) {\r\n return isSpecialScheme(url.scheme);\r\n}\r\n\r\nfunction defaultPort(scheme) {\r\n return specialSchemes[scheme];\r\n}\r\n\r\nfunction percentEncode(c) {\r\n let hex = c.toString(16).toUpperCase();\r\n if (hex.length === 1) {\r\n hex = \"0\" + hex;\r\n }\r\n\r\n return \"%\" + hex;\r\n}\r\n\r\nfunction utf8PercentEncode(c) {\r\n const buf = new Buffer(c);\r\n\r\n let str = \"\";\r\n\r\n for (let i = 0; i < buf.length; ++i) {\r\n str += percentEncode(buf[i]);\r\n }\r\n\r\n return str;\r\n}\r\n\r\nfunction utf8PercentDecode(str) {\r\n const input = new Buffer(str);\r\n const output = [];\r\n for (let i = 0; i < input.length; ++i) {\r\n if (input[i] !== 37) {\r\n output.push(input[i]);\r\n } else if (input[i] === 37 && isASCIIHex(input[i + 1]) && isASCIIHex(input[i + 2])) {\r\n output.push(parseInt(input.slice(i + 1, i + 3).toString(), 16));\r\n i += 2;\r\n } else {\r\n output.push(input[i]);\r\n }\r\n }\r\n return new Buffer(output).toString();\r\n}\r\n\r\nfunction isC0ControlPercentEncode(c) {\r\n return c <= 0x1F || c > 0x7E;\r\n}\r\n\r\nconst extraPathPercentEncodeSet = new Set([32, 34, 35, 60, 62, 63, 96, 123, 125]);\r\nfunction isPathPercentEncode(c) {\r\n return isC0ControlPercentEncode(c) || extraPathPercentEncodeSet.has(c);\r\n}\r\n\r\nconst extraUserinfoPercentEncodeSet =\r\n new Set([47, 58, 59, 61, 64, 91, 92, 93, 94, 124]);\r\nfunction isUserinfoPercentEncode(c) {\r\n return isPathPercentEncode(c) || extraUserinfoPercentEncodeSet.has(c);\r\n}\r\n\r\nfunction percentEncodeChar(c, encodeSetPredicate) {\r\n const cStr = String.fromCodePoint(c);\r\n\r\n if (encodeSetPredicate(c)) {\r\n return utf8PercentEncode(cStr);\r\n }\r\n\r\n return cStr;\r\n}\r\n\r\nfunction parseIPv4Number(input) {\r\n let R = 10;\r\n\r\n if (input.length >= 2 && input.charAt(0) === \"0\" && input.charAt(1).toLowerCase() === \"x\") {\r\n input = input.substring(2);\r\n R = 16;\r\n } else if (input.length >= 2 && input.charAt(0) === \"0\") {\r\n input = input.substring(1);\r\n R = 8;\r\n }\r\n\r\n if (input === \"\") {\r\n return 0;\r\n }\r\n\r\n const regex = R === 10 ? /[^0-9]/ : (R === 16 ? /[^0-9A-Fa-f]/ : /[^0-7]/);\r\n if (regex.test(input)) {\r\n return failure;\r\n }\r\n\r\n return parseInt(input, R);\r\n}\r\n\r\nfunction parseIPv4(input) {\r\n const parts = input.split(\".\");\r\n if (parts[parts.length - 1] === \"\") {\r\n if (parts.length > 1) {\r\n parts.pop();\r\n }\r\n }\r\n\r\n if (parts.length > 4) {\r\n return input;\r\n }\r\n\r\n const numbers = [];\r\n for (const part of parts) {\r\n if (part === \"\") {\r\n return input;\r\n }\r\n const n = parseIPv4Number(part);\r\n if (n === failure) {\r\n return input;\r\n }\r\n\r\n numbers.push(n);\r\n }\r\n\r\n for (let i = 0; i < numbers.length - 1; ++i) {\r\n if (numbers[i] > 255) {\r\n return failure;\r\n }\r\n }\r\n if (numbers[numbers.length - 1] >= Math.pow(256, 5 - numbers.length)) {\r\n return failure;\r\n }\r\n\r\n let ipv4 = numbers.pop();\r\n let counter = 0;\r\n\r\n for (const n of numbers) {\r\n ipv4 += n * Math.pow(256, 3 - counter);\r\n ++counter;\r\n }\r\n\r\n return ipv4;\r\n}\r\n\r\nfunction serializeIPv4(address) {\r\n let output = \"\";\r\n let n = address;\r\n\r\n for (let i = 1; i <= 4; ++i) {\r\n output = String(n % 256) + output;\r\n if (i !== 4) {\r\n output = \".\" + output;\r\n }\r\n n = Math.floor(n / 256);\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction parseIPv6(input) {\r\n const address = [0, 0, 0, 0, 0, 0, 0, 0];\r\n let pieceIndex = 0;\r\n let compress = null;\r\n let pointer = 0;\r\n\r\n input = punycode.ucs2.decode(input);\r\n\r\n if (input[pointer] === 58) {\r\n if (input[pointer + 1] !== 58) {\r\n return failure;\r\n }\r\n\r\n pointer += 2;\r\n ++pieceIndex;\r\n compress = pieceIndex;\r\n }\r\n\r\n while (pointer < input.length) {\r\n if (pieceIndex === 8) {\r\n return failure;\r\n }\r\n\r\n if (input[pointer] === 58) {\r\n if (compress !== null) {\r\n return failure;\r\n }\r\n ++pointer;\r\n ++pieceIndex;\r\n compress = pieceIndex;\r\n continue;\r\n }\r\n\r\n let value = 0;\r\n let length = 0;\r\n\r\n while (length < 4 && isASCIIHex(input[pointer])) {\r\n value = value * 0x10 + parseInt(at(input, pointer), 16);\r\n ++pointer;\r\n ++length;\r\n }\r\n\r\n if (input[pointer] === 46) {\r\n if (length === 0) {\r\n return failure;\r\n }\r\n\r\n pointer -= length;\r\n\r\n if (pieceIndex > 6) {\r\n return failure;\r\n }\r\n\r\n let numbersSeen = 0;\r\n\r\n while (input[pointer] !== undefined) {\r\n let ipv4Piece = null;\r\n\r\n if (numbersSeen > 0) {\r\n if (input[pointer] === 46 && numbersSeen < 4) {\r\n ++pointer;\r\n } else {\r\n return failure;\r\n }\r\n }\r\n\r\n if (!isASCIIDigit(input[pointer])) {\r\n return failure;\r\n }\r\n\r\n while (isASCIIDigit(input[pointer])) {\r\n const number = parseInt(at(input, pointer));\r\n if (ipv4Piece === null) {\r\n ipv4Piece = number;\r\n } else if (ipv4Piece === 0) {\r\n return failure;\r\n } else {\r\n ipv4Piece = ipv4Piece * 10 + number;\r\n }\r\n if (ipv4Piece > 255) {\r\n return failure;\r\n }\r\n ++pointer;\r\n }\r\n\r\n address[pieceIndex] = address[pieceIndex] * 0x100 + ipv4Piece;\r\n\r\n ++numbersSeen;\r\n\r\n if (numbersSeen === 2 || numbersSeen === 4) {\r\n ++pieceIndex;\r\n }\r\n }\r\n\r\n if (numbersSeen !== 4) {\r\n return failure;\r\n }\r\n\r\n break;\r\n } else if (input[pointer] === 58) {\r\n ++pointer;\r\n if (input[pointer] === undefined) {\r\n return failure;\r\n }\r\n } else if (input[pointer] !== undefined) {\r\n return failure;\r\n }\r\n\r\n address[pieceIndex] = value;\r\n ++pieceIndex;\r\n }\r\n\r\n if (compress !== null) {\r\n let swaps = pieceIndex - compress;\r\n pieceIndex = 7;\r\n while (pieceIndex !== 0 && swaps > 0) {\r\n const temp = address[compress + swaps - 1];\r\n address[compress + swaps - 1] = address[pieceIndex];\r\n address[pieceIndex] = temp;\r\n --pieceIndex;\r\n --swaps;\r\n }\r\n } else if (compress === null && pieceIndex !== 8) {\r\n return failure;\r\n }\r\n\r\n return address;\r\n}\r\n\r\nfunction serializeIPv6(address) {\r\n let output = \"\";\r\n const seqResult = findLongestZeroSequence(address);\r\n const compress = seqResult.idx;\r\n let ignore0 = false;\r\n\r\n for (let pieceIndex = 0; pieceIndex <= 7; ++pieceIndex) {\r\n if (ignore0 && address[pieceIndex] === 0) {\r\n continue;\r\n } else if (ignore0) {\r\n ignore0 = false;\r\n }\r\n\r\n if (compress === pieceIndex) {\r\n const separator = pieceIndex === 0 ? \"::\" : \":\";\r\n output += separator;\r\n ignore0 = true;\r\n continue;\r\n }\r\n\r\n output += address[pieceIndex].toString(16);\r\n\r\n if (pieceIndex !== 7) {\r\n output += \":\";\r\n }\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction parseHost(input, isSpecialArg) {\r\n if (input[0] === \"[\") {\r\n if (input[input.length - 1] !== \"]\") {\r\n return failure;\r\n }\r\n\r\n return parseIPv6(input.substring(1, input.length - 1));\r\n }\r\n\r\n if (!isSpecialArg) {\r\n return parseOpaqueHost(input);\r\n }\r\n\r\n const domain = utf8PercentDecode(input);\r\n const asciiDomain = tr46.toASCII(domain, false, tr46.PROCESSING_OPTIONS.NONTRANSITIONAL, false);\r\n if (asciiDomain === null) {\r\n return failure;\r\n }\r\n\r\n if (containsForbiddenHostCodePoint(asciiDomain)) {\r\n return failure;\r\n }\r\n\r\n const ipv4Host = parseIPv4(asciiDomain);\r\n if (typeof ipv4Host === \"number\" || ipv4Host === failure) {\r\n return ipv4Host;\r\n }\r\n\r\n return asciiDomain;\r\n}\r\n\r\nfunction parseOpaqueHost(input) {\r\n if (containsForbiddenHostCodePointExcludingPercent(input)) {\r\n return failure;\r\n }\r\n\r\n let output = \"\";\r\n const decoded = punycode.ucs2.decode(input);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n output += percentEncodeChar(decoded[i], isC0ControlPercentEncode);\r\n }\r\n return output;\r\n}\r\n\r\nfunction findLongestZeroSequence(arr) {\r\n let maxIdx = null;\r\n let maxLen = 1; // only find elements > 1\r\n let currStart = null;\r\n let currLen = 0;\r\n\r\n for (let i = 0; i < arr.length; ++i) {\r\n if (arr[i] !== 0) {\r\n if (currLen > maxLen) {\r\n maxIdx = currStart;\r\n maxLen = currLen;\r\n }\r\n\r\n currStart = null;\r\n currLen = 0;\r\n } else {\r\n if (currStart === null) {\r\n currStart = i;\r\n }\r\n ++currLen;\r\n }\r\n }\r\n\r\n // if trailing zeros\r\n if (currLen > maxLen) {\r\n maxIdx = currStart;\r\n maxLen = currLen;\r\n }\r\n\r\n return {\r\n idx: maxIdx,\r\n len: maxLen\r\n };\r\n}\r\n\r\nfunction serializeHost(host) {\r\n if (typeof host === \"number\") {\r\n return serializeIPv4(host);\r\n }\r\n\r\n // IPv6 serializer\r\n if (host instanceof Array) {\r\n return \"[\" + serializeIPv6(host) + \"]\";\r\n }\r\n\r\n return host;\r\n}\r\n\r\nfunction trimControlChars(url) {\r\n return url.replace(/^[\\u0000-\\u001F\\u0020]+|[\\u0000-\\u001F\\u0020]+$/g, \"\");\r\n}\r\n\r\nfunction trimTabAndNewline(url) {\r\n return url.replace(/\\u0009|\\u000A|\\u000D/g, \"\");\r\n}\r\n\r\nfunction shortenPath(url) {\r\n const path = url.path;\r\n if (path.length === 0) {\r\n return;\r\n }\r\n if (url.scheme === \"file\" && path.length === 1 && isNormalizedWindowsDriveLetter(path[0])) {\r\n return;\r\n }\r\n\r\n path.pop();\r\n}\r\n\r\nfunction includesCredentials(url) {\r\n return url.username !== \"\" || url.password !== \"\";\r\n}\r\n\r\nfunction cannotHaveAUsernamePasswordPort(url) {\r\n return url.host === null || url.host === \"\" || url.cannotBeABaseURL || url.scheme === \"file\";\r\n}\r\n\r\nfunction isNormalizedWindowsDriveLetter(string) {\r\n return /^[A-Za-z]:$/.test(string);\r\n}\r\n\r\nfunction URLStateMachine(input, base, encodingOverride, url, stateOverride) {\r\n this.pointer = 0;\r\n this.input = input;\r\n this.base = base || null;\r\n this.encodingOverride = encodingOverride || \"utf-8\";\r\n this.stateOverride = stateOverride;\r\n this.url = url;\r\n this.failure = false;\r\n this.parseError = false;\r\n\r\n if (!this.url) {\r\n this.url = {\r\n scheme: \"\",\r\n username: \"\",\r\n password: \"\",\r\n host: null,\r\n port: null,\r\n path: [],\r\n query: null,\r\n fragment: null,\r\n\r\n cannotBeABaseURL: false\r\n };\r\n\r\n const res = trimControlChars(this.input);\r\n if (res !== this.input) {\r\n this.parseError = true;\r\n }\r\n this.input = res;\r\n }\r\n\r\n const res = trimTabAndNewline(this.input);\r\n if (res !== this.input) {\r\n this.parseError = true;\r\n }\r\n this.input = res;\r\n\r\n this.state = stateOverride || \"scheme start\";\r\n\r\n this.buffer = \"\";\r\n this.atFlag = false;\r\n this.arrFlag = false;\r\n this.passwordTokenSeenFlag = false;\r\n\r\n this.input = punycode.ucs2.decode(this.input);\r\n\r\n for (; this.pointer <= this.input.length; ++this.pointer) {\r\n const c = this.input[this.pointer];\r\n const cStr = isNaN(c) ? undefined : String.fromCodePoint(c);\r\n\r\n // exec state machine\r\n const ret = this[\"parse \" + this.state](c, cStr);\r\n if (!ret) {\r\n break; // terminate algorithm\r\n } else if (ret === failure) {\r\n this.failure = true;\r\n break;\r\n }\r\n }\r\n}\r\n\r\nURLStateMachine.prototype[\"parse scheme start\"] = function parseSchemeStart(c, cStr) {\r\n if (isASCIIAlpha(c)) {\r\n this.buffer += cStr.toLowerCase();\r\n this.state = \"scheme\";\r\n } else if (!this.stateOverride) {\r\n this.state = \"no scheme\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse scheme\"] = function parseScheme(c, cStr) {\r\n if (isASCIIAlphanumeric(c) || c === 43 || c === 45 || c === 46) {\r\n this.buffer += cStr.toLowerCase();\r\n } else if (c === 58) {\r\n if (this.stateOverride) {\r\n if (isSpecial(this.url) && !isSpecialScheme(this.buffer)) {\r\n return false;\r\n }\r\n\r\n if (!isSpecial(this.url) && isSpecialScheme(this.buffer)) {\r\n return false;\r\n }\r\n\r\n if ((includesCredentials(this.url) || this.url.port !== null) && this.buffer === \"file\") {\r\n return false;\r\n }\r\n\r\n if (this.url.scheme === \"file\" && (this.url.host === \"\" || this.url.host === null)) {\r\n return false;\r\n }\r\n }\r\n this.url.scheme = this.buffer;\r\n this.buffer = \"\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n if (this.url.scheme === \"file\") {\r\n if (this.input[this.pointer + 1] !== 47 || this.input[this.pointer + 2] !== 47) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file\";\r\n } else if (isSpecial(this.url) && this.base !== null && this.base.scheme === this.url.scheme) {\r\n this.state = \"special relative or authority\";\r\n } else if (isSpecial(this.url)) {\r\n this.state = \"special authority slashes\";\r\n } else if (this.input[this.pointer + 1] === 47) {\r\n this.state = \"path or authority\";\r\n ++this.pointer;\r\n } else {\r\n this.url.cannotBeABaseURL = true;\r\n this.url.path.push(\"\");\r\n this.state = \"cannot-be-a-base-URL path\";\r\n }\r\n } else if (!this.stateOverride) {\r\n this.buffer = \"\";\r\n this.state = \"no scheme\";\r\n this.pointer = -1;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse no scheme\"] = function parseNoScheme(c) {\r\n if (this.base === null || (this.base.cannotBeABaseURL && c !== 35)) {\r\n return failure;\r\n } else if (this.base.cannotBeABaseURL && c === 35) {\r\n this.url.scheme = this.base.scheme;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.url.cannotBeABaseURL = true;\r\n this.state = \"fragment\";\r\n } else if (this.base.scheme === \"file\") {\r\n this.state = \"file\";\r\n --this.pointer;\r\n } else {\r\n this.state = \"relative\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special relative or authority\"] = function parseSpecialRelativeOrAuthority(c) {\r\n if (c === 47 && this.input[this.pointer + 1] === 47) {\r\n this.state = \"special authority ignore slashes\";\r\n ++this.pointer;\r\n } else {\r\n this.parseError = true;\r\n this.state = \"relative\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path or authority\"] = function parsePathOrAuthority(c) {\r\n if (c === 47) {\r\n this.state = \"authority\";\r\n } else {\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse relative\"] = function parseRelative(c) {\r\n this.url.scheme = this.base.scheme;\r\n if (isNaN(c)) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n } else if (c === 47) {\r\n this.state = \"relative slash\";\r\n } else if (c === 63) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else if (isSpecial(this.url) && c === 92) {\r\n this.parseError = true;\r\n this.state = \"relative slash\";\r\n } else {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.url.path = this.base.path.slice(0, this.base.path.length - 1);\r\n\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse relative slash\"] = function parseRelativeSlash(c) {\r\n if (isSpecial(this.url) && (c === 47 || c === 92)) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"special authority ignore slashes\";\r\n } else if (c === 47) {\r\n this.state = \"authority\";\r\n } else {\r\n this.url.username = this.base.username;\r\n this.url.password = this.base.password;\r\n this.url.host = this.base.host;\r\n this.url.port = this.base.port;\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special authority slashes\"] = function parseSpecialAuthoritySlashes(c) {\r\n if (c === 47 && this.input[this.pointer + 1] === 47) {\r\n this.state = \"special authority ignore slashes\";\r\n ++this.pointer;\r\n } else {\r\n this.parseError = true;\r\n this.state = \"special authority ignore slashes\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse special authority ignore slashes\"] = function parseSpecialAuthorityIgnoreSlashes(c) {\r\n if (c !== 47 && c !== 92) {\r\n this.state = \"authority\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse authority\"] = function parseAuthority(c, cStr) {\r\n if (c === 64) {\r\n this.parseError = true;\r\n if (this.atFlag) {\r\n this.buffer = \"%40\" + this.buffer;\r\n }\r\n this.atFlag = true;\r\n\r\n // careful, this is based on buffer and has its own pointer (this.pointer != pointer) and inner chars\r\n const len = countSymbols(this.buffer);\r\n for (let pointer = 0; pointer < len; ++pointer) {\r\n const codePoint = this.buffer.codePointAt(pointer);\r\n\r\n if (codePoint === 58 && !this.passwordTokenSeenFlag) {\r\n this.passwordTokenSeenFlag = true;\r\n continue;\r\n }\r\n const encodedCodePoints = percentEncodeChar(codePoint, isUserinfoPercentEncode);\r\n if (this.passwordTokenSeenFlag) {\r\n this.url.password += encodedCodePoints;\r\n } else {\r\n this.url.username += encodedCodePoints;\r\n }\r\n }\r\n this.buffer = \"\";\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92)) {\r\n if (this.atFlag && this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n this.pointer -= countSymbols(this.buffer) + 1;\r\n this.buffer = \"\";\r\n this.state = \"host\";\r\n } else {\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse hostname\"] =\r\nURLStateMachine.prototype[\"parse host\"] = function parseHostName(c, cStr) {\r\n if (this.stateOverride && this.url.scheme === \"file\") {\r\n --this.pointer;\r\n this.state = \"file host\";\r\n } else if (c === 58 && !this.arrFlag) {\r\n if (this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n const host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n\r\n this.url.host = host;\r\n this.buffer = \"\";\r\n this.state = \"port\";\r\n if (this.stateOverride === \"hostname\") {\r\n return false;\r\n }\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92)) {\r\n --this.pointer;\r\n if (isSpecial(this.url) && this.buffer === \"\") {\r\n this.parseError = true;\r\n return failure;\r\n } else if (this.stateOverride && this.buffer === \"\" &&\r\n (includesCredentials(this.url) || this.url.port !== null)) {\r\n this.parseError = true;\r\n return false;\r\n }\r\n\r\n const host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n\r\n this.url.host = host;\r\n this.buffer = \"\";\r\n this.state = \"path start\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n } else {\r\n if (c === 91) {\r\n this.arrFlag = true;\r\n } else if (c === 93) {\r\n this.arrFlag = false;\r\n }\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse port\"] = function parsePort(c, cStr) {\r\n if (isASCIIDigit(c)) {\r\n this.buffer += cStr;\r\n } else if (isNaN(c) || c === 47 || c === 63 || c === 35 ||\r\n (isSpecial(this.url) && c === 92) ||\r\n this.stateOverride) {\r\n if (this.buffer !== \"\") {\r\n const port = parseInt(this.buffer);\r\n if (port > Math.pow(2, 16) - 1) {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n this.url.port = port === defaultPort(this.url.scheme) ? null : port;\r\n this.buffer = \"\";\r\n }\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n this.state = \"path start\";\r\n --this.pointer;\r\n } else {\r\n this.parseError = true;\r\n return failure;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nconst fileOtherwiseCodePoints = new Set([47, 92, 63, 35]);\r\n\r\nURLStateMachine.prototype[\"parse file\"] = function parseFile(c) {\r\n this.url.scheme = \"file\";\r\n\r\n if (c === 47 || c === 92) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file slash\";\r\n } else if (this.base !== null && this.base.scheme === \"file\") {\r\n if (isNaN(c)) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n } else if (c === 63) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n this.url.query = this.base.query;\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else {\r\n if (this.input.length - this.pointer - 1 === 0 || // remaining consists of 0 code points\r\n !isWindowsDriveLetterCodePoints(c, this.input[this.pointer + 1]) ||\r\n (this.input.length - this.pointer - 1 >= 2 && // remaining has at least 2 code points\r\n !fileOtherwiseCodePoints.has(this.input[this.pointer + 2]))) {\r\n this.url.host = this.base.host;\r\n this.url.path = this.base.path.slice();\r\n shortenPath(this.url);\r\n } else {\r\n this.parseError = true;\r\n }\r\n\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n } else {\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse file slash\"] = function parseFileSlash(c) {\r\n if (c === 47 || c === 92) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"file host\";\r\n } else {\r\n if (this.base !== null && this.base.scheme === \"file\") {\r\n if (isNormalizedWindowsDriveLetterString(this.base.path[0])) {\r\n this.url.path.push(this.base.path[0]);\r\n } else {\r\n this.url.host = this.base.host;\r\n }\r\n }\r\n this.state = \"path\";\r\n --this.pointer;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse file host\"] = function parseFileHost(c, cStr) {\r\n if (isNaN(c) || c === 47 || c === 92 || c === 63 || c === 35) {\r\n --this.pointer;\r\n if (!this.stateOverride && isWindowsDriveLetterString(this.buffer)) {\r\n this.parseError = true;\r\n this.state = \"path\";\r\n } else if (this.buffer === \"\") {\r\n this.url.host = \"\";\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n this.state = \"path start\";\r\n } else {\r\n let host = parseHost(this.buffer, isSpecial(this.url));\r\n if (host === failure) {\r\n return failure;\r\n }\r\n if (host === \"localhost\") {\r\n host = \"\";\r\n }\r\n this.url.host = host;\r\n\r\n if (this.stateOverride) {\r\n return false;\r\n }\r\n\r\n this.buffer = \"\";\r\n this.state = \"path start\";\r\n }\r\n } else {\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path start\"] = function parsePathStart(c) {\r\n if (isSpecial(this.url)) {\r\n if (c === 92) {\r\n this.parseError = true;\r\n }\r\n this.state = \"path\";\r\n\r\n if (c !== 47 && c !== 92) {\r\n --this.pointer;\r\n }\r\n } else if (!this.stateOverride && c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (!this.stateOverride && c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else if (c !== undefined) {\r\n this.state = \"path\";\r\n if (c !== 47) {\r\n --this.pointer;\r\n }\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse path\"] = function parsePath(c) {\r\n if (isNaN(c) || c === 47 || (isSpecial(this.url) && c === 92) ||\r\n (!this.stateOverride && (c === 63 || c === 35))) {\r\n if (isSpecial(this.url) && c === 92) {\r\n this.parseError = true;\r\n }\r\n\r\n if (isDoubleDot(this.buffer)) {\r\n shortenPath(this.url);\r\n if (c !== 47 && !(isSpecial(this.url) && c === 92)) {\r\n this.url.path.push(\"\");\r\n }\r\n } else if (isSingleDot(this.buffer) && c !== 47 &&\r\n !(isSpecial(this.url) && c === 92)) {\r\n this.url.path.push(\"\");\r\n } else if (!isSingleDot(this.buffer)) {\r\n if (this.url.scheme === \"file\" && this.url.path.length === 0 && isWindowsDriveLetterString(this.buffer)) {\r\n if (this.url.host !== \"\" && this.url.host !== null) {\r\n this.parseError = true;\r\n this.url.host = \"\";\r\n }\r\n this.buffer = this.buffer[0] + \":\";\r\n }\r\n this.url.path.push(this.buffer);\r\n }\r\n this.buffer = \"\";\r\n if (this.url.scheme === \"file\" && (c === undefined || c === 63 || c === 35)) {\r\n while (this.url.path.length > 1 && this.url.path[0] === \"\") {\r\n this.parseError = true;\r\n this.url.path.shift();\r\n }\r\n }\r\n if (c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n }\r\n if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n }\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.buffer += percentEncodeChar(c, isPathPercentEncode);\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse cannot-be-a-base-URL path\"] = function parseCannotBeABaseURLPath(c) {\r\n if (c === 63) {\r\n this.url.query = \"\";\r\n this.state = \"query\";\r\n } else if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n } else {\r\n // TODO: Add: not a URL code point\r\n if (!isNaN(c) && c !== 37) {\r\n this.parseError = true;\r\n }\r\n\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n if (!isNaN(c)) {\r\n this.url.path[0] = this.url.path[0] + percentEncodeChar(c, isC0ControlPercentEncode);\r\n }\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse query\"] = function parseQuery(c, cStr) {\r\n if (isNaN(c) || (!this.stateOverride && c === 35)) {\r\n if (!isSpecial(this.url) || this.url.scheme === \"ws\" || this.url.scheme === \"wss\") {\r\n this.encodingOverride = \"utf-8\";\r\n }\r\n\r\n const buffer = new Buffer(this.buffer); // TODO: Use encoding override instead\r\n for (let i = 0; i < buffer.length; ++i) {\r\n if (buffer[i] < 0x21 || buffer[i] > 0x7E || buffer[i] === 0x22 || buffer[i] === 0x23 ||\r\n buffer[i] === 0x3C || buffer[i] === 0x3E) {\r\n this.url.query += percentEncode(buffer[i]);\r\n } else {\r\n this.url.query += String.fromCodePoint(buffer[i]);\r\n }\r\n }\r\n\r\n this.buffer = \"\";\r\n if (c === 35) {\r\n this.url.fragment = \"\";\r\n this.state = \"fragment\";\r\n }\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.buffer += cStr;\r\n }\r\n\r\n return true;\r\n};\r\n\r\nURLStateMachine.prototype[\"parse fragment\"] = function parseFragment(c) {\r\n if (isNaN(c)) { // do nothing\r\n } else if (c === 0x0) {\r\n this.parseError = true;\r\n } else {\r\n // TODO: If c is not a URL code point and not \"%\", parse error.\r\n if (c === 37 &&\r\n (!isASCIIHex(this.input[this.pointer + 1]) ||\r\n !isASCIIHex(this.input[this.pointer + 2]))) {\r\n this.parseError = true;\r\n }\r\n\r\n this.url.fragment += percentEncodeChar(c, isC0ControlPercentEncode);\r\n }\r\n\r\n return true;\r\n};\r\n\r\nfunction serializeURL(url, excludeFragment) {\r\n let output = url.scheme + \":\";\r\n if (url.host !== null) {\r\n output += \"//\";\r\n\r\n if (url.username !== \"\" || url.password !== \"\") {\r\n output += url.username;\r\n if (url.password !== \"\") {\r\n output += \":\" + url.password;\r\n }\r\n output += \"@\";\r\n }\r\n\r\n output += serializeHost(url.host);\r\n\r\n if (url.port !== null) {\r\n output += \":\" + url.port;\r\n }\r\n } else if (url.host === null && url.scheme === \"file\") {\r\n output += \"//\";\r\n }\r\n\r\n if (url.cannotBeABaseURL) {\r\n output += url.path[0];\r\n } else {\r\n for (const string of url.path) {\r\n output += \"/\" + string;\r\n }\r\n }\r\n\r\n if (url.query !== null) {\r\n output += \"?\" + url.query;\r\n }\r\n\r\n if (!excludeFragment && url.fragment !== null) {\r\n output += \"#\" + url.fragment;\r\n }\r\n\r\n return output;\r\n}\r\n\r\nfunction serializeOrigin(tuple) {\r\n let result = tuple.scheme + \"://\";\r\n result += serializeHost(tuple.host);\r\n\r\n if (tuple.port !== null) {\r\n result += \":\" + tuple.port;\r\n }\r\n\r\n return result;\r\n}\r\n\r\nmodule.exports.serializeURL = serializeURL;\r\n\r\nmodule.exports.serializeURLOrigin = function (url) {\r\n // https://url.spec.whatwg.org/#concept-url-origin\r\n switch (url.scheme) {\r\n case \"blob\":\r\n try {\r\n return module.exports.serializeURLOrigin(module.exports.parseURL(url.path[0]));\r\n } catch (e) {\r\n // serializing an opaque origin returns \"null\"\r\n return \"null\";\r\n }\r\n case \"ftp\":\r\n case \"gopher\":\r\n case \"http\":\r\n case \"https\":\r\n case \"ws\":\r\n case \"wss\":\r\n return serializeOrigin({\r\n scheme: url.scheme,\r\n host: url.host,\r\n port: url.port\r\n });\r\n case \"file\":\r\n // spec says \"exercise to the reader\", chrome says \"file://\"\r\n return \"file://\";\r\n default:\r\n // serializing an opaque origin returns \"null\"\r\n return \"null\";\r\n }\r\n};\r\n\r\nmodule.exports.basicURLParse = function (input, options) {\r\n if (options === undefined) {\r\n options = {};\r\n }\r\n\r\n const usm = new URLStateMachine(input, options.baseURL, options.encodingOverride, options.url, options.stateOverride);\r\n if (usm.failure) {\r\n return \"failure\";\r\n }\r\n\r\n return usm.url;\r\n};\r\n\r\nmodule.exports.setTheUsername = function (url, username) {\r\n url.username = \"\";\r\n const decoded = punycode.ucs2.decode(username);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n url.username += percentEncodeChar(decoded[i], isUserinfoPercentEncode);\r\n }\r\n};\r\n\r\nmodule.exports.setThePassword = function (url, password) {\r\n url.password = \"\";\r\n const decoded = punycode.ucs2.decode(password);\r\n for (let i = 0; i < decoded.length; ++i) {\r\n url.password += percentEncodeChar(decoded[i], isUserinfoPercentEncode);\r\n }\r\n};\r\n\r\nmodule.exports.serializeHost = serializeHost;\r\n\r\nmodule.exports.cannotHaveAUsernamePasswordPort = cannotHaveAUsernamePasswordPort;\r\n\r\nmodule.exports.serializeInteger = function (integer) {\r\n return String(integer);\r\n};\r\n\r\nmodule.exports.parseURL = function (input, options) {\r\n if (options === undefined) {\r\n options = {};\r\n }\r\n\r\n // We don't handle blobs, so this just delegates:\r\n return module.exports.basicURLParse(input, { baseURL: options.baseURL, encodingOverride: options.encodingOverride });\r\n};\r\n", "\"use strict\";\nconst usm = require(\"./url-state-machine\");\n\nexports.implementation = class URLImpl {\n constructor(constructorArgs) {\n const url = constructorArgs[0];\n const base = constructorArgs[1];\n\n let parsedBase = null;\n if (base !== undefined) {\n parsedBase = usm.basicURLParse(base);\n if (parsedBase === \"failure\") {\n throw new TypeError(\"Invalid base URL\");\n }\n }\n\n const parsedURL = usm.basicURLParse(url, { baseURL: parsedBase });\n if (parsedURL === \"failure\") {\n throw new TypeError(\"Invalid URL\");\n }\n\n this._url = parsedURL;\n\n // TODO: query stuff\n }\n\n get href() {\n return usm.serializeURL(this._url);\n }\n\n set href(v) {\n const parsedURL = usm.basicURLParse(v);\n if (parsedURL === \"failure\") {\n throw new TypeError(\"Invalid URL\");\n }\n\n this._url = parsedURL;\n }\n\n get origin() {\n return usm.serializeURLOrigin(this._url);\n }\n\n get protocol() {\n return this._url.scheme + \":\";\n }\n\n set protocol(v) {\n usm.basicURLParse(v + \":\", { url: this._url, stateOverride: \"scheme start\" });\n }\n\n get username() {\n return this._url.username;\n }\n\n set username(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n usm.setTheUsername(this._url, v);\n }\n\n get password() {\n return this._url.password;\n }\n\n set password(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n usm.setThePassword(this._url, v);\n }\n\n get host() {\n const url = this._url;\n\n if (url.host === null) {\n return \"\";\n }\n\n if (url.port === null) {\n return usm.serializeHost(url.host);\n }\n\n return usm.serializeHost(url.host) + \":\" + usm.serializeInteger(url.port);\n }\n\n set host(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n usm.basicURLParse(v, { url: this._url, stateOverride: \"host\" });\n }\n\n get hostname() {\n if (this._url.host === null) {\n return \"\";\n }\n\n return usm.serializeHost(this._url.host);\n }\n\n set hostname(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n usm.basicURLParse(v, { url: this._url, stateOverride: \"hostname\" });\n }\n\n get port() {\n if (this._url.port === null) {\n return \"\";\n }\n\n return usm.serializeInteger(this._url.port);\n }\n\n set port(v) {\n if (usm.cannotHaveAUsernamePasswordPort(this._url)) {\n return;\n }\n\n if (v === \"\") {\n this._url.port = null;\n } else {\n usm.basicURLParse(v, { url: this._url, stateOverride: \"port\" });\n }\n }\n\n get pathname() {\n if (this._url.cannotBeABaseURL) {\n return this._url.path[0];\n }\n\n if (this._url.path.length === 0) {\n return \"\";\n }\n\n return \"/\" + this._url.path.join(\"/\");\n }\n\n set pathname(v) {\n if (this._url.cannotBeABaseURL) {\n return;\n }\n\n this._url.path = [];\n usm.basicURLParse(v, { url: this._url, stateOverride: \"path start\" });\n }\n\n get search() {\n if (this._url.query === null || this._url.query === \"\") {\n return \"\";\n }\n\n return \"?\" + this._url.query;\n }\n\n set search(v) {\n // TODO: query stuff\n\n const url = this._url;\n\n if (v === \"\") {\n url.query = null;\n return;\n }\n\n const input = v[0] === \"?\" ? v.substring(1) : v;\n url.query = \"\";\n usm.basicURLParse(input, { url, stateOverride: \"query\" });\n }\n\n get hash() {\n if (this._url.fragment === null || this._url.fragment === \"\") {\n return \"\";\n }\n\n return \"#\" + this._url.fragment;\n }\n\n set hash(v) {\n if (v === \"\") {\n this._url.fragment = null;\n return;\n }\n\n const input = v[0] === \"#\" ? v.substring(1) : v;\n this._url.fragment = \"\";\n usm.basicURLParse(input, { url: this._url, stateOverride: \"fragment\" });\n }\n\n toJSON() {\n return this.href;\n }\n};\n", "\"use strict\";\n\nconst conversions = require(\"webidl-conversions\");\nconst utils = require(\"./utils.js\");\nconst Impl = require(\".//URL-impl.js\");\n\nconst impl = utils.implSymbol;\n\nfunction URL(url) {\n if (!this || this[impl] || !(this instanceof URL)) {\n throw new TypeError(\"Failed to construct 'URL': Please use the 'new' operator, this DOM object constructor cannot be called as a function.\");\n }\n if (arguments.length < 1) {\n throw new TypeError(\"Failed to construct 'URL': 1 argument required, but only \" + arguments.length + \" present.\");\n }\n const args = [];\n for (let i = 0; i < arguments.length && i < 2; ++i) {\n args[i] = arguments[i];\n }\n args[0] = conversions[\"USVString\"](args[0]);\n if (args[1] !== undefined) {\n args[1] = conversions[\"USVString\"](args[1]);\n }\n\n module.exports.setup(this, args);\n}\n\nURL.prototype.toJSON = function toJSON() {\n if (!this || !module.exports.is(this)) {\n throw new TypeError(\"Illegal invocation\");\n }\n const args = [];\n for (let i = 0; i < arguments.length && i < 0; ++i) {\n args[i] = arguments[i];\n }\n return this[impl].toJSON.apply(this[impl], args);\n};\nObject.defineProperty(URL.prototype, \"href\", {\n get() {\n return this[impl].href;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].href = V;\n },\n enumerable: true,\n configurable: true\n});\n\nURL.prototype.toString = function () {\n if (!this || !module.exports.is(this)) {\n throw new TypeError(\"Illegal invocation\");\n }\n return this.href;\n};\n\nObject.defineProperty(URL.prototype, \"origin\", {\n get() {\n return this[impl].origin;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"protocol\", {\n get() {\n return this[impl].protocol;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].protocol = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"username\", {\n get() {\n return this[impl].username;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].username = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"password\", {\n get() {\n return this[impl].password;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].password = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"host\", {\n get() {\n return this[impl].host;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].host = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"hostname\", {\n get() {\n return this[impl].hostname;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].hostname = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"port\", {\n get() {\n return this[impl].port;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].port = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"pathname\", {\n get() {\n return this[impl].pathname;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].pathname = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"search\", {\n get() {\n return this[impl].search;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].search = V;\n },\n enumerable: true,\n configurable: true\n});\n\nObject.defineProperty(URL.prototype, \"hash\", {\n get() {\n return this[impl].hash;\n },\n set(V) {\n V = conversions[\"USVString\"](V);\n this[impl].hash = V;\n },\n enumerable: true,\n configurable: true\n});\n\n\nmodule.exports = {\n is(obj) {\n return !!obj && obj[impl] instanceof Impl.implementation;\n },\n create(constructorArgs, privateData) {\n let obj = Object.create(URL.prototype);\n this.setup(obj, constructorArgs, privateData);\n return obj;\n },\n setup(obj, constructorArgs, privateData) {\n if (!privateData) privateData = {};\n privateData.wrapper = obj;\n\n obj[impl] = new Impl.implementation(constructorArgs, privateData);\n obj[impl][utils.wrapperSymbol] = obj;\n },\n interface: URL,\n expose: {\n Window: { URL: URL },\n Worker: { URL: URL }\n }\n};\n\n", "\"use strict\";\n\nexports.URL = require(\"./URL\").interface;\nexports.serializeURL = require(\"./url-state-machine\").serializeURL;\nexports.serializeURLOrigin = require(\"./url-state-machine\").serializeURLOrigin;\nexports.basicURLParse = require(\"./url-state-machine\").basicURLParse;\nexports.setTheUsername = require(\"./url-state-machine\").setTheUsername;\nexports.setThePassword = require(\"./url-state-machine\").setThePassword;\nexports.serializeHost = require(\"./url-state-machine\").serializeHost;\nexports.serializeInteger = require(\"./url-state-machine\").serializeInteger;\nexports.parseURL = require(\"./url-state-machine\").parseURL;\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar Stream = _interopDefault(require('stream'));\nvar http = _interopDefault(require('http'));\nvar Url = _interopDefault(require('url'));\nvar whatwgUrl = _interopDefault(require('whatwg-url'));\nvar https = _interopDefault(require('https'));\nvar zlib = _interopDefault(require('zlib'));\n\n// Based on https://github.com/tmpvar/jsdom/blob/aa85b2abf07766ff7bf5c1f6daafb3726f2f2db5/lib/jsdom/living/blob.js\n\n// fix for \"Readable\" isn't a named export issue\nconst Readable = Stream.Readable;\n\nconst BUFFER = Symbol('buffer');\nconst TYPE = Symbol('type');\n\nclass Blob {\n\tconstructor() {\n\t\tthis[TYPE] = '';\n\n\t\tconst blobParts = arguments[0];\n\t\tconst options = arguments[1];\n\n\t\tconst buffers = [];\n\t\tlet size = 0;\n\n\t\tif (blobParts) {\n\t\t\tconst a = blobParts;\n\t\t\tconst length = Number(a.length);\n\t\t\tfor (let i = 0; i < length; i++) {\n\t\t\t\tconst element = a[i];\n\t\t\t\tlet buffer;\n\t\t\t\tif (element instanceof Buffer) {\n\t\t\t\t\tbuffer = element;\n\t\t\t\t} else if (ArrayBuffer.isView(element)) {\n\t\t\t\t\tbuffer = Buffer.from(element.buffer, element.byteOffset, element.byteLength);\n\t\t\t\t} else if (element instanceof ArrayBuffer) {\n\t\t\t\t\tbuffer = Buffer.from(element);\n\t\t\t\t} else if (element instanceof Blob) {\n\t\t\t\t\tbuffer = element[BUFFER];\n\t\t\t\t} else {\n\t\t\t\t\tbuffer = Buffer.from(typeof element === 'string' ? element : String(element));\n\t\t\t\t}\n\t\t\t\tsize += buffer.length;\n\t\t\t\tbuffers.push(buffer);\n\t\t\t}\n\t\t}\n\n\t\tthis[BUFFER] = Buffer.concat(buffers);\n\n\t\tlet type = options && options.type !== undefined && String(options.type).toLowerCase();\n\t\tif (type && !/[^\\u0020-\\u007E]/.test(type)) {\n\t\t\tthis[TYPE] = type;\n\t\t}\n\t}\n\tget size() {\n\t\treturn this[BUFFER].length;\n\t}\n\tget type() {\n\t\treturn this[TYPE];\n\t}\n\ttext() {\n\t\treturn Promise.resolve(this[BUFFER].toString());\n\t}\n\tarrayBuffer() {\n\t\tconst buf = this[BUFFER];\n\t\tconst ab = buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\treturn Promise.resolve(ab);\n\t}\n\tstream() {\n\t\tconst readable = new Readable();\n\t\treadable._read = function () {};\n\t\treadable.push(this[BUFFER]);\n\t\treadable.push(null);\n\t\treturn readable;\n\t}\n\ttoString() {\n\t\treturn '[object Blob]';\n\t}\n\tslice() {\n\t\tconst size = this.size;\n\n\t\tconst start = arguments[0];\n\t\tconst end = arguments[1];\n\t\tlet relativeStart, relativeEnd;\n\t\tif (start === undefined) {\n\t\t\trelativeStart = 0;\n\t\t} else if (start < 0) {\n\t\t\trelativeStart = Math.max(size + start, 0);\n\t\t} else {\n\t\t\trelativeStart = Math.min(start, size);\n\t\t}\n\t\tif (end === undefined) {\n\t\t\trelativeEnd = size;\n\t\t} else if (end < 0) {\n\t\t\trelativeEnd = Math.max(size + end, 0);\n\t\t} else {\n\t\t\trelativeEnd = Math.min(end, size);\n\t\t}\n\t\tconst span = Math.max(relativeEnd - relativeStart, 0);\n\n\t\tconst buffer = this[BUFFER];\n\t\tconst slicedBuffer = buffer.slice(relativeStart, relativeStart + span);\n\t\tconst blob = new Blob([], { type: arguments[2] });\n\t\tblob[BUFFER] = slicedBuffer;\n\t\treturn blob;\n\t}\n}\n\nObject.defineProperties(Blob.prototype, {\n\tsize: { enumerable: true },\n\ttype: { enumerable: true },\n\tslice: { enumerable: true }\n});\n\nObject.defineProperty(Blob.prototype, Symbol.toStringTag, {\n\tvalue: 'Blob',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * fetch-error.js\n *\n * FetchError interface for operational errors\n */\n\n/**\n * Create FetchError instance\n *\n * @param String message Error message for human\n * @param String type Error type for machine\n * @param String systemError For Node.js system error\n * @return FetchError\n */\nfunction FetchError(message, type, systemError) {\n Error.call(this, message);\n\n this.message = message;\n this.type = type;\n\n // when err.type is `system`, err.code contains system error code\n if (systemError) {\n this.code = this.errno = systemError.code;\n }\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nFetchError.prototype = Object.create(Error.prototype);\nFetchError.prototype.constructor = FetchError;\nFetchError.prototype.name = 'FetchError';\n\nlet convert;\ntry {\n\tconvert = require('encoding').convert;\n} catch (e) {}\n\nconst INTERNALS = Symbol('Body internals');\n\n// fix an issue where \"PassThrough\" isn't a named export for node <10\nconst PassThrough = Stream.PassThrough;\n\n/**\n * Body mixin\n *\n * Ref: https://fetch.spec.whatwg.org/#body\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nfunction Body(body) {\n\tvar _this = this;\n\n\tvar _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n\t _ref$size = _ref.size;\n\n\tlet size = _ref$size === undefined ? 0 : _ref$size;\n\tvar _ref$timeout = _ref.timeout;\n\tlet timeout = _ref$timeout === undefined ? 0 : _ref$timeout;\n\n\tif (body == null) {\n\t\t// body is undefined or null\n\t\tbody = null;\n\t} else if (isURLSearchParams(body)) {\n\t\t// body is a URLSearchParams\n\t\tbody = Buffer.from(body.toString());\n\t} else if (isBlob(body)) ; else if (Buffer.isBuffer(body)) ; else if (Object.prototype.toString.call(body) === '[object ArrayBuffer]') {\n\t\t// body is ArrayBuffer\n\t\tbody = Buffer.from(body);\n\t} else if (ArrayBuffer.isView(body)) {\n\t\t// body is ArrayBufferView\n\t\tbody = Buffer.from(body.buffer, body.byteOffset, body.byteLength);\n\t} else if (body instanceof Stream) ; else {\n\t\t// none of the above\n\t\t// coerce to string then buffer\n\t\tbody = Buffer.from(String(body));\n\t}\n\tthis[INTERNALS] = {\n\t\tbody,\n\t\tdisturbed: false,\n\t\terror: null\n\t};\n\tthis.size = size;\n\tthis.timeout = timeout;\n\n\tif (body instanceof Stream) {\n\t\tbody.on('error', function (err) {\n\t\t\tconst error = err.name === 'AbortError' ? err : new FetchError(`Invalid response body while trying to fetch ${_this.url}: ${err.message}`, 'system', err);\n\t\t\t_this[INTERNALS].error = error;\n\t\t});\n\t}\n}\n\nBody.prototype = {\n\tget body() {\n\t\treturn this[INTERNALS].body;\n\t},\n\n\tget bodyUsed() {\n\t\treturn this[INTERNALS].disturbed;\n\t},\n\n\t/**\n * Decode response as ArrayBuffer\n *\n * @return Promise\n */\n\tarrayBuffer() {\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);\n\t\t});\n\t},\n\n\t/**\n * Return raw response as Blob\n *\n * @return Promise\n */\n\tblob() {\n\t\tlet ct = this.headers && this.headers.get('content-type') || '';\n\t\treturn consumeBody.call(this).then(function (buf) {\n\t\t\treturn Object.assign(\n\t\t\t// Prevent copying\n\t\t\tnew Blob([], {\n\t\t\t\ttype: ct.toLowerCase()\n\t\t\t}), {\n\t\t\t\t[BUFFER]: buf\n\t\t\t});\n\t\t});\n\t},\n\n\t/**\n * Decode response as json\n *\n * @return Promise\n */\n\tjson() {\n\t\tvar _this2 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\ttry {\n\t\t\t\treturn JSON.parse(buffer.toString());\n\t\t\t} catch (err) {\n\t\t\t\treturn Body.Promise.reject(new FetchError(`invalid json response body at ${_this2.url} reason: ${err.message}`, 'invalid-json'));\n\t\t\t}\n\t\t});\n\t},\n\n\t/**\n * Decode response as text\n *\n * @return Promise\n */\n\ttext() {\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn buffer.toString();\n\t\t});\n\t},\n\n\t/**\n * Decode response as buffer (non-spec api)\n *\n * @return Promise\n */\n\tbuffer() {\n\t\treturn consumeBody.call(this);\n\t},\n\n\t/**\n * Decode response as text, while automatically detecting the encoding and\n * trying to decode to UTF-8 (non-spec api)\n *\n * @return Promise\n */\n\ttextConverted() {\n\t\tvar _this3 = this;\n\n\t\treturn consumeBody.call(this).then(function (buffer) {\n\t\t\treturn convertBody(buffer, _this3.headers);\n\t\t});\n\t}\n};\n\n// In browsers, all properties are enumerable.\nObject.defineProperties(Body.prototype, {\n\tbody: { enumerable: true },\n\tbodyUsed: { enumerable: true },\n\tarrayBuffer: { enumerable: true },\n\tblob: { enumerable: true },\n\tjson: { enumerable: true },\n\ttext: { enumerable: true }\n});\n\nBody.mixIn = function (proto) {\n\tfor (const name of Object.getOwnPropertyNames(Body.prototype)) {\n\t\t// istanbul ignore else: future proof\n\t\tif (!(name in proto)) {\n\t\t\tconst desc = Object.getOwnPropertyDescriptor(Body.prototype, name);\n\t\t\tObject.defineProperty(proto, name, desc);\n\t\t}\n\t}\n};\n\n/**\n * Consume and convert an entire Body to a Buffer.\n *\n * Ref: https://fetch.spec.whatwg.org/#concept-body-consume-body\n *\n * @return Promise\n */\nfunction consumeBody() {\n\tvar _this4 = this;\n\n\tif (this[INTERNALS].disturbed) {\n\t\treturn Body.Promise.reject(new TypeError(`body used already for: ${this.url}`));\n\t}\n\n\tthis[INTERNALS].disturbed = true;\n\n\tif (this[INTERNALS].error) {\n\t\treturn Body.Promise.reject(this[INTERNALS].error);\n\t}\n\n\tlet body = this.body;\n\n\t// body is null\n\tif (body === null) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is blob\n\tif (isBlob(body)) {\n\t\tbody = body.stream();\n\t}\n\n\t// body is buffer\n\tif (Buffer.isBuffer(body)) {\n\t\treturn Body.Promise.resolve(body);\n\t}\n\n\t// istanbul ignore if: should never happen\n\tif (!(body instanceof Stream)) {\n\t\treturn Body.Promise.resolve(Buffer.alloc(0));\n\t}\n\n\t// body is stream\n\t// get ready to actually consume the body\n\tlet accum = [];\n\tlet accumBytes = 0;\n\tlet abort = false;\n\n\treturn new Body.Promise(function (resolve, reject) {\n\t\tlet resTimeout;\n\n\t\t// allow timeout on slow response body\n\t\tif (_this4.timeout) {\n\t\t\tresTimeout = setTimeout(function () {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`Response timeout while trying to fetch ${_this4.url} (over ${_this4.timeout}ms)`, 'body-timeout'));\n\t\t\t}, _this4.timeout);\n\t\t}\n\n\t\t// handle stream errors\n\t\tbody.on('error', function (err) {\n\t\t\tif (err.name === 'AbortError') {\n\t\t\t\t// if the request was aborted, reject with this Error\n\t\t\t\tabort = true;\n\t\t\t\treject(err);\n\t\t\t} else {\n\t\t\t\t// other errors, such as incorrect content-encoding\n\t\t\t\treject(new FetchError(`Invalid response body while trying to fetch ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\n\t\tbody.on('data', function (chunk) {\n\t\t\tif (abort || chunk === null) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (_this4.size && accumBytes + chunk.length > _this4.size) {\n\t\t\t\tabort = true;\n\t\t\t\treject(new FetchError(`content size at ${_this4.url} over limit: ${_this4.size}`, 'max-size'));\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\taccumBytes += chunk.length;\n\t\t\taccum.push(chunk);\n\t\t});\n\n\t\tbody.on('end', function () {\n\t\t\tif (abort) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tclearTimeout(resTimeout);\n\n\t\t\ttry {\n\t\t\t\tresolve(Buffer.concat(accum, accumBytes));\n\t\t\t} catch (err) {\n\t\t\t\t// handle streams that have accumulated too much data (issue #414)\n\t\t\t\treject(new FetchError(`Could not create Buffer from response body for ${_this4.url}: ${err.message}`, 'system', err));\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Detect buffer encoding and convert to target encoding\n * ref: http://www.w3.org/TR/2011/WD-html5-20110113/parsing.html#determining-the-character-encoding\n *\n * @param Buffer buffer Incoming buffer\n * @param String encoding Target encoding\n * @return String\n */\nfunction convertBody(buffer, headers) {\n\tif (typeof convert !== 'function') {\n\t\tthrow new Error('The package `encoding` must be installed to use the textConverted() function');\n\t}\n\n\tconst ct = headers.get('content-type');\n\tlet charset = 'utf-8';\n\tlet res, str;\n\n\t// header\n\tif (ct) {\n\t\tres = /charset=([^;]*)/i.exec(ct);\n\t}\n\n\t// no charset in content type, peek at response body for at most 1024 bytes\n\tstr = buffer.slice(0, 1024).toString();\n\n\t// html5\n\tif (!res && str) {\n\t\tres = / 0 && arguments[0] !== undefined ? arguments[0] : undefined;\n\n\t\tthis[MAP] = Object.create(null);\n\n\t\tif (init instanceof Headers) {\n\t\t\tconst rawHeaders = init.raw();\n\t\t\tconst headerNames = Object.keys(rawHeaders);\n\n\t\t\tfor (const headerName of headerNames) {\n\t\t\t\tfor (const value of rawHeaders[headerName]) {\n\t\t\t\t\tthis.append(headerName, value);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\t// We don't worry about converting prop to ByteString here as append()\n\t\t// will handle it.\n\t\tif (init == null) ; else if (typeof init === 'object') {\n\t\t\tconst method = init[Symbol.iterator];\n\t\t\tif (method != null) {\n\t\t\t\tif (typeof method !== 'function') {\n\t\t\t\t\tthrow new TypeError('Header pairs must be iterable');\n\t\t\t\t}\n\n\t\t\t\t// sequence>\n\t\t\t\t// Note: per spec we have to first exhaust the lists then process them\n\t\t\t\tconst pairs = [];\n\t\t\t\tfor (const pair of init) {\n\t\t\t\t\tif (typeof pair !== 'object' || typeof pair[Symbol.iterator] !== 'function') {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be iterable');\n\t\t\t\t\t}\n\t\t\t\t\tpairs.push(Array.from(pair));\n\t\t\t\t}\n\n\t\t\t\tfor (const pair of pairs) {\n\t\t\t\t\tif (pair.length !== 2) {\n\t\t\t\t\t\tthrow new TypeError('Each header pair must be a name/value tuple');\n\t\t\t\t\t}\n\t\t\t\t\tthis.append(pair[0], pair[1]);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// record\n\t\t\t\tfor (const key of Object.keys(init)) {\n\t\t\t\t\tconst value = init[key];\n\t\t\t\t\tthis.append(key, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthrow new TypeError('Provided initializer must be an object');\n\t\t}\n\t}\n\n\t/**\n * Return combined header value given name\n *\n * @param String name Header name\n * @return Mixed\n */\n\tget(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn this[MAP][key].join(', ');\n\t}\n\n\t/**\n * Iterate over all headers\n *\n * @param Function callback Executed for each item with parameters (value, name, thisArg)\n * @param Boolean thisArg `this` context for callback function\n * @return Void\n */\n\tforEach(callback) {\n\t\tlet thisArg = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : undefined;\n\n\t\tlet pairs = getHeaders(this);\n\t\tlet i = 0;\n\t\twhile (i < pairs.length) {\n\t\t\tvar _pairs$i = pairs[i];\n\t\t\tconst name = _pairs$i[0],\n\t\t\t value = _pairs$i[1];\n\n\t\t\tcallback.call(thisArg, value, name, this);\n\t\t\tpairs = getHeaders(this);\n\t\t\ti++;\n\t\t}\n\t}\n\n\t/**\n * Overwrite header values given name\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tset(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tthis[MAP][key !== undefined ? key : name] = [value];\n\t}\n\n\t/**\n * Append a value onto existing header\n *\n * @param String name Header name\n * @param String value Header value\n * @return Void\n */\n\tappend(name, value) {\n\t\tname = `${name}`;\n\t\tvalue = `${value}`;\n\t\tvalidateName(name);\n\t\tvalidateValue(value);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tthis[MAP][key].push(value);\n\t\t} else {\n\t\t\tthis[MAP][name] = [value];\n\t\t}\n\t}\n\n\t/**\n * Check for header name existence\n *\n * @param String name Header name\n * @return Boolean\n */\n\thas(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\treturn find(this[MAP], name) !== undefined;\n\t}\n\n\t/**\n * Delete all header values given name\n *\n * @param String name Header name\n * @return Void\n */\n\tdelete(name) {\n\t\tname = `${name}`;\n\t\tvalidateName(name);\n\t\tconst key = find(this[MAP], name);\n\t\tif (key !== undefined) {\n\t\t\tdelete this[MAP][key];\n\t\t}\n\t}\n\n\t/**\n * Return raw headers (non-spec api)\n *\n * @return Object\n */\n\traw() {\n\t\treturn this[MAP];\n\t}\n\n\t/**\n * Get an iterator on keys.\n *\n * @return Iterator\n */\n\tkeys() {\n\t\treturn createHeadersIterator(this, 'key');\n\t}\n\n\t/**\n * Get an iterator on values.\n *\n * @return Iterator\n */\n\tvalues() {\n\t\treturn createHeadersIterator(this, 'value');\n\t}\n\n\t/**\n * Get an iterator on entries.\n *\n * This is the default iterator of the Headers object.\n *\n * @return Iterator\n */\n\t[Symbol.iterator]() {\n\t\treturn createHeadersIterator(this, 'key+value');\n\t}\n}\nHeaders.prototype.entries = Headers.prototype[Symbol.iterator];\n\nObject.defineProperty(Headers.prototype, Symbol.toStringTag, {\n\tvalue: 'Headers',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Headers.prototype, {\n\tget: { enumerable: true },\n\tforEach: { enumerable: true },\n\tset: { enumerable: true },\n\tappend: { enumerable: true },\n\thas: { enumerable: true },\n\tdelete: { enumerable: true },\n\tkeys: { enumerable: true },\n\tvalues: { enumerable: true },\n\tentries: { enumerable: true }\n});\n\nfunction getHeaders(headers) {\n\tlet kind = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'key+value';\n\n\tconst keys = Object.keys(headers[MAP]).sort();\n\treturn keys.map(kind === 'key' ? function (k) {\n\t\treturn k.toLowerCase();\n\t} : kind === 'value' ? function (k) {\n\t\treturn headers[MAP][k].join(', ');\n\t} : function (k) {\n\t\treturn [k.toLowerCase(), headers[MAP][k].join(', ')];\n\t});\n}\n\nconst INTERNAL = Symbol('internal');\n\nfunction createHeadersIterator(target, kind) {\n\tconst iterator = Object.create(HeadersIteratorPrototype);\n\titerator[INTERNAL] = {\n\t\ttarget,\n\t\tkind,\n\t\tindex: 0\n\t};\n\treturn iterator;\n}\n\nconst HeadersIteratorPrototype = Object.setPrototypeOf({\n\tnext() {\n\t\t// istanbul ignore if\n\t\tif (!this || Object.getPrototypeOf(this) !== HeadersIteratorPrototype) {\n\t\t\tthrow new TypeError('Value of `this` is not a HeadersIterator');\n\t\t}\n\n\t\tvar _INTERNAL = this[INTERNAL];\n\t\tconst target = _INTERNAL.target,\n\t\t kind = _INTERNAL.kind,\n\t\t index = _INTERNAL.index;\n\n\t\tconst values = getHeaders(target, kind);\n\t\tconst len = values.length;\n\t\tif (index >= len) {\n\t\t\treturn {\n\t\t\t\tvalue: undefined,\n\t\t\t\tdone: true\n\t\t\t};\n\t\t}\n\n\t\tthis[INTERNAL].index = index + 1;\n\n\t\treturn {\n\t\t\tvalue: values[index],\n\t\t\tdone: false\n\t\t};\n\t}\n}, Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]())));\n\nObject.defineProperty(HeadersIteratorPrototype, Symbol.toStringTag, {\n\tvalue: 'HeadersIterator',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\n/**\n * Export the Headers object in a form that Node.js can consume.\n *\n * @param Headers headers\n * @return Object\n */\nfunction exportNodeCompatibleHeaders(headers) {\n\tconst obj = Object.assign({ __proto__: null }, headers[MAP]);\n\n\t// http.request() only supports string as Host header. This hack makes\n\t// specifying custom Host header possible.\n\tconst hostHeaderKey = find(headers[MAP], 'Host');\n\tif (hostHeaderKey !== undefined) {\n\t\tobj[hostHeaderKey] = obj[hostHeaderKey][0];\n\t}\n\n\treturn obj;\n}\n\n/**\n * Create a Headers object from an object of headers, ignoring those that do\n * not conform to HTTP grammar productions.\n *\n * @param Object obj Object of headers\n * @return Headers\n */\nfunction createHeadersLenient(obj) {\n\tconst headers = new Headers();\n\tfor (const name of Object.keys(obj)) {\n\t\tif (invalidTokenRegex.test(name)) {\n\t\t\tcontinue;\n\t\t}\n\t\tif (Array.isArray(obj[name])) {\n\t\t\tfor (const val of obj[name]) {\n\t\t\t\tif (invalidHeaderCharRegex.test(val)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (headers[MAP][name] === undefined) {\n\t\t\t\t\theaders[MAP][name] = [val];\n\t\t\t\t} else {\n\t\t\t\t\theaders[MAP][name].push(val);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (!invalidHeaderCharRegex.test(obj[name])) {\n\t\t\theaders[MAP][name] = [obj[name]];\n\t\t}\n\t}\n\treturn headers;\n}\n\nconst INTERNALS$1 = Symbol('Response internals');\n\n// fix an issue where \"STATUS_CODES\" aren't a named export for node <10\nconst STATUS_CODES = http.STATUS_CODES;\n\n/**\n * Response class\n *\n * @param Stream body Readable stream\n * @param Object opts Response options\n * @return Void\n */\nclass Response {\n\tconstructor() {\n\t\tlet body = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n\t\tlet opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tBody.call(this, body, opts);\n\n\t\tconst status = opts.status || 200;\n\t\tconst headers = new Headers(opts.headers);\n\n\t\tif (body != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(body);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tthis[INTERNALS$1] = {\n\t\t\turl: opts.url,\n\t\t\tstatus,\n\t\t\tstatusText: opts.statusText || STATUS_CODES[status],\n\t\t\theaders,\n\t\t\tcounter: opts.counter\n\t\t};\n\t}\n\n\tget url() {\n\t\treturn this[INTERNALS$1].url || '';\n\t}\n\n\tget status() {\n\t\treturn this[INTERNALS$1].status;\n\t}\n\n\t/**\n * Convenience property representing if the request ended normally\n */\n\tget ok() {\n\t\treturn this[INTERNALS$1].status >= 200 && this[INTERNALS$1].status < 300;\n\t}\n\n\tget redirected() {\n\t\treturn this[INTERNALS$1].counter > 0;\n\t}\n\n\tget statusText() {\n\t\treturn this[INTERNALS$1].statusText;\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$1].headers;\n\t}\n\n\t/**\n * Clone this response\n *\n * @return Response\n */\n\tclone() {\n\t\treturn new Response(clone(this), {\n\t\t\turl: this.url,\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\theaders: this.headers,\n\t\t\tok: this.ok,\n\t\t\tredirected: this.redirected\n\t\t});\n\t}\n}\n\nBody.mixIn(Response.prototype);\n\nObject.defineProperties(Response.prototype, {\n\turl: { enumerable: true },\n\tstatus: { enumerable: true },\n\tok: { enumerable: true },\n\tredirected: { enumerable: true },\n\tstatusText: { enumerable: true },\n\theaders: { enumerable: true },\n\tclone: { enumerable: true }\n});\n\nObject.defineProperty(Response.prototype, Symbol.toStringTag, {\n\tvalue: 'Response',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nconst INTERNALS$2 = Symbol('Request internals');\nconst URL = Url.URL || whatwgUrl.URL;\n\n// fix an issue where \"format\", \"parse\" aren't a named export for node <10\nconst parse_url = Url.parse;\nconst format_url = Url.format;\n\n/**\n * Wrapper around `new URL` to handle arbitrary URLs\n *\n * @param {string} urlStr\n * @return {void}\n */\nfunction parseURL(urlStr) {\n\t/*\n \tCheck whether the URL is absolute or not\n \t\tScheme: https://tools.ietf.org/html/rfc3986#section-3.1\n \tAbsolute URL: https://tools.ietf.org/html/rfc3986#section-4.3\n */\n\tif (/^[a-zA-Z][a-zA-Z\\d+\\-.]*:/.exec(urlStr)) {\n\t\turlStr = new URL(urlStr).toString();\n\t}\n\n\t// Fallback to old implementation for arbitrary URLs\n\treturn parse_url(urlStr);\n}\n\nconst streamDestructionSupported = 'destroy' in Stream.Readable.prototype;\n\n/**\n * Check if a value is an instance of Request.\n *\n * @param Mixed input\n * @return Boolean\n */\nfunction isRequest(input) {\n\treturn typeof input === 'object' && typeof input[INTERNALS$2] === 'object';\n}\n\nfunction isAbortSignal(signal) {\n\tconst proto = signal && typeof signal === 'object' && Object.getPrototypeOf(signal);\n\treturn !!(proto && proto.constructor.name === 'AbortSignal');\n}\n\n/**\n * Request class\n *\n * @param Mixed input Url or Request instance\n * @param Object init Custom options\n * @return Void\n */\nclass Request {\n\tconstructor(input) {\n\t\tlet init = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n\t\tlet parsedURL;\n\n\t\t// normalize input\n\t\tif (!isRequest(input)) {\n\t\t\tif (input && input.href) {\n\t\t\t\t// in order to support Node.js' Url objects; though WHATWG's URL objects\n\t\t\t\t// will fall into this branch also (since their `toString()` will return\n\t\t\t\t// `href` property anyway)\n\t\t\t\tparsedURL = parseURL(input.href);\n\t\t\t} else {\n\t\t\t\t// coerce input to a string before attempting to parse\n\t\t\t\tparsedURL = parseURL(`${input}`);\n\t\t\t}\n\t\t\tinput = {};\n\t\t} else {\n\t\t\tparsedURL = parseURL(input.url);\n\t\t}\n\n\t\tlet method = init.method || input.method || 'GET';\n\t\tmethod = method.toUpperCase();\n\n\t\tif ((init.body != null || isRequest(input) && input.body !== null) && (method === 'GET' || method === 'HEAD')) {\n\t\t\tthrow new TypeError('Request with GET/HEAD method cannot have body');\n\t\t}\n\n\t\tlet inputBody = init.body != null ? init.body : isRequest(input) && input.body !== null ? clone(input) : null;\n\n\t\tBody.call(this, inputBody, {\n\t\t\ttimeout: init.timeout || input.timeout || 0,\n\t\t\tsize: init.size || input.size || 0\n\t\t});\n\n\t\tconst headers = new Headers(init.headers || input.headers || {});\n\n\t\tif (inputBody != null && !headers.has('Content-Type')) {\n\t\t\tconst contentType = extractContentType(inputBody);\n\t\t\tif (contentType) {\n\t\t\t\theaders.append('Content-Type', contentType);\n\t\t\t}\n\t\t}\n\n\t\tlet signal = isRequest(input) ? input.signal : null;\n\t\tif ('signal' in init) signal = init.signal;\n\n\t\tif (signal != null && !isAbortSignal(signal)) {\n\t\t\tthrow new TypeError('Expected signal to be an instanceof AbortSignal');\n\t\t}\n\n\t\tthis[INTERNALS$2] = {\n\t\t\tmethod,\n\t\t\tredirect: init.redirect || input.redirect || 'follow',\n\t\t\theaders,\n\t\t\tparsedURL,\n\t\t\tsignal\n\t\t};\n\n\t\t// node-fetch-only options\n\t\tthis.follow = init.follow !== undefined ? init.follow : input.follow !== undefined ? input.follow : 20;\n\t\tthis.compress = init.compress !== undefined ? init.compress : input.compress !== undefined ? input.compress : true;\n\t\tthis.counter = init.counter || input.counter || 0;\n\t\tthis.agent = init.agent || input.agent;\n\t}\n\n\tget method() {\n\t\treturn this[INTERNALS$2].method;\n\t}\n\n\tget url() {\n\t\treturn format_url(this[INTERNALS$2].parsedURL);\n\t}\n\n\tget headers() {\n\t\treturn this[INTERNALS$2].headers;\n\t}\n\n\tget redirect() {\n\t\treturn this[INTERNALS$2].redirect;\n\t}\n\n\tget signal() {\n\t\treturn this[INTERNALS$2].signal;\n\t}\n\n\t/**\n * Clone this request\n *\n * @return Request\n */\n\tclone() {\n\t\treturn new Request(this);\n\t}\n}\n\nBody.mixIn(Request.prototype);\n\nObject.defineProperty(Request.prototype, Symbol.toStringTag, {\n\tvalue: 'Request',\n\twritable: false,\n\tenumerable: false,\n\tconfigurable: true\n});\n\nObject.defineProperties(Request.prototype, {\n\tmethod: { enumerable: true },\n\turl: { enumerable: true },\n\theaders: { enumerable: true },\n\tredirect: { enumerable: true },\n\tclone: { enumerable: true },\n\tsignal: { enumerable: true }\n});\n\n/**\n * Convert a Request to Node.js http request options.\n *\n * @param Request A Request instance\n * @return Object The options object to be passed to http.request\n */\nfunction getNodeRequestOptions(request) {\n\tconst parsedURL = request[INTERNALS$2].parsedURL;\n\tconst headers = new Headers(request[INTERNALS$2].headers);\n\n\t// fetch step 1.3\n\tif (!headers.has('Accept')) {\n\t\theaders.set('Accept', '*/*');\n\t}\n\n\t// Basic fetch\n\tif (!parsedURL.protocol || !parsedURL.hostname) {\n\t\tthrow new TypeError('Only absolute URLs are supported');\n\t}\n\n\tif (!/^https?:$/.test(parsedURL.protocol)) {\n\t\tthrow new TypeError('Only HTTP(S) protocols are supported');\n\t}\n\n\tif (request.signal && request.body instanceof Stream.Readable && !streamDestructionSupported) {\n\t\tthrow new Error('Cancellation of streamed requests with AbortSignal is not supported in node < 8');\n\t}\n\n\t// HTTP-network-or-cache fetch steps 2.4-2.7\n\tlet contentLengthValue = null;\n\tif (request.body == null && /^(POST|PUT)$/i.test(request.method)) {\n\t\tcontentLengthValue = '0';\n\t}\n\tif (request.body != null) {\n\t\tconst totalBytes = getTotalBytes(request);\n\t\tif (typeof totalBytes === 'number') {\n\t\t\tcontentLengthValue = String(totalBytes);\n\t\t}\n\t}\n\tif (contentLengthValue) {\n\t\theaders.set('Content-Length', contentLengthValue);\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.11\n\tif (!headers.has('User-Agent')) {\n\t\theaders.set('User-Agent', 'node-fetch/1.0 (+https://github.com/bitinn/node-fetch)');\n\t}\n\n\t// HTTP-network-or-cache fetch step 2.15\n\tif (request.compress && !headers.has('Accept-Encoding')) {\n\t\theaders.set('Accept-Encoding', 'gzip,deflate');\n\t}\n\n\tlet agent = request.agent;\n\tif (typeof agent === 'function') {\n\t\tagent = agent(parsedURL);\n\t}\n\n\tif (!headers.has('Connection') && !agent) {\n\t\theaders.set('Connection', 'close');\n\t}\n\n\t// HTTP-network fetch step 4.2\n\t// chunked encoding is handled by Node.js\n\n\treturn Object.assign({}, parsedURL, {\n\t\tmethod: request.method,\n\t\theaders: exportNodeCompatibleHeaders(headers),\n\t\tagent\n\t});\n}\n\n/**\n * abort-error.js\n *\n * AbortError interface for cancelled requests\n */\n\n/**\n * Create AbortError instance\n *\n * @param String message Error message for human\n * @return AbortError\n */\nfunction AbortError(message) {\n Error.call(this, message);\n\n this.type = 'aborted';\n this.message = message;\n\n // hide custom error implementation details from end-users\n Error.captureStackTrace(this, this.constructor);\n}\n\nAbortError.prototype = Object.create(Error.prototype);\nAbortError.prototype.constructor = AbortError;\nAbortError.prototype.name = 'AbortError';\n\nconst URL$1 = Url.URL || whatwgUrl.URL;\n\n// fix an issue where \"PassThrough\", \"resolve\" aren't a named export for node <10\nconst PassThrough$1 = Stream.PassThrough;\n\nconst isDomainOrSubdomain = function isDomainOrSubdomain(destination, original) {\n\tconst orig = new URL$1(original).hostname;\n\tconst dest = new URL$1(destination).hostname;\n\n\treturn orig === dest || orig[orig.length - dest.length - 1] === '.' && orig.endsWith(dest);\n};\n\n/**\n * Fetch function\n *\n * @param Mixed url Absolute url or Request instance\n * @param Object opts Fetch options\n * @return Promise\n */\nfunction fetch(url, opts) {\n\n\t// allow custom promise\n\tif (!fetch.Promise) {\n\t\tthrow new Error('native promise missing, set fetch.Promise to your favorite alternative');\n\t}\n\n\tBody.Promise = fetch.Promise;\n\n\t// wrap http.request into fetch\n\treturn new fetch.Promise(function (resolve, reject) {\n\t\t// build request object\n\t\tconst request = new Request(url, opts);\n\t\tconst options = getNodeRequestOptions(request);\n\n\t\tconst send = (options.protocol === 'https:' ? https : http).request;\n\t\tconst signal = request.signal;\n\n\t\tlet response = null;\n\n\t\tconst abort = function abort() {\n\t\t\tlet error = new AbortError('The user aborted a request.');\n\t\t\treject(error);\n\t\t\tif (request.body && request.body instanceof Stream.Readable) {\n\t\t\t\trequest.body.destroy(error);\n\t\t\t}\n\t\t\tif (!response || !response.body) return;\n\t\t\tresponse.body.emit('error', error);\n\t\t};\n\n\t\tif (signal && signal.aborted) {\n\t\t\tabort();\n\t\t\treturn;\n\t\t}\n\n\t\tconst abortAndFinalize = function abortAndFinalize() {\n\t\t\tabort();\n\t\t\tfinalize();\n\t\t};\n\n\t\t// send request\n\t\tconst req = send(options);\n\t\tlet reqTimeout;\n\n\t\tif (signal) {\n\t\t\tsignal.addEventListener('abort', abortAndFinalize);\n\t\t}\n\n\t\tfunction finalize() {\n\t\t\treq.abort();\n\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\tclearTimeout(reqTimeout);\n\t\t}\n\n\t\tif (request.timeout) {\n\t\t\treq.once('socket', function (socket) {\n\t\t\t\treqTimeout = setTimeout(function () {\n\t\t\t\t\treject(new FetchError(`network timeout at: ${request.url}`, 'request-timeout'));\n\t\t\t\t\tfinalize();\n\t\t\t\t}, request.timeout);\n\t\t\t});\n\t\t}\n\n\t\treq.on('error', function (err) {\n\t\t\treject(new FetchError(`request to ${request.url} failed, reason: ${err.message}`, 'system', err));\n\t\t\tfinalize();\n\t\t});\n\n\t\treq.on('response', function (res) {\n\t\t\tclearTimeout(reqTimeout);\n\n\t\t\tconst headers = createHeadersLenient(res.headers);\n\n\t\t\t// HTTP fetch step 5\n\t\t\tif (fetch.isRedirect(res.statusCode)) {\n\t\t\t\t// HTTP fetch step 5.2\n\t\t\t\tconst location = headers.get('Location');\n\n\t\t\t\t// HTTP fetch step 5.3\n\t\t\t\tlet locationURL = null;\n\t\t\t\ttry {\n\t\t\t\t\tlocationURL = location === null ? null : new URL$1(location, request.url).toString();\n\t\t\t\t} catch (err) {\n\t\t\t\t\t// error here can only be invalid URL in Location: header\n\t\t\t\t\t// do not throw when options.redirect == manual\n\t\t\t\t\t// let the user extract the errorneous redirect URL\n\t\t\t\t\tif (request.redirect !== 'manual') {\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with an invalid redirect URL: ${location}`, 'invalid-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// HTTP fetch step 5.5\n\t\t\t\tswitch (request.redirect) {\n\t\t\t\t\tcase 'error':\n\t\t\t\t\t\treject(new FetchError(`uri requested responds with a redirect, redirect mode is set to error: ${request.url}`, 'no-redirect'));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t\tcase 'manual':\n\t\t\t\t\t\t// node-fetch-specific step: make manual redirect a bit easier to use by setting the Location header value to the resolved URL.\n\t\t\t\t\t\tif (locationURL !== null) {\n\t\t\t\t\t\t\t// handle corrupted header\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\theaders.set('Location', locationURL);\n\t\t\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\t\t\t// istanbul ignore next: nodejs server prevent invalid response headers, we can't test this through normal request\n\t\t\t\t\t\t\t\treject(err);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase 'follow':\n\t\t\t\t\t\t// HTTP-redirect fetch step 2\n\t\t\t\t\t\tif (locationURL === null) {\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 5\n\t\t\t\t\t\tif (request.counter >= request.follow) {\n\t\t\t\t\t\t\treject(new FetchError(`maximum redirect reached at: ${request.url}`, 'max-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 6 (counter increment)\n\t\t\t\t\t\t// Create a new Request object.\n\t\t\t\t\t\tconst requestOpts = {\n\t\t\t\t\t\t\theaders: new Headers(request.headers),\n\t\t\t\t\t\t\tfollow: request.follow,\n\t\t\t\t\t\t\tcounter: request.counter + 1,\n\t\t\t\t\t\t\tagent: request.agent,\n\t\t\t\t\t\t\tcompress: request.compress,\n\t\t\t\t\t\t\tmethod: request.method,\n\t\t\t\t\t\t\tbody: request.body,\n\t\t\t\t\t\t\tsignal: request.signal,\n\t\t\t\t\t\t\ttimeout: request.timeout,\n\t\t\t\t\t\t\tsize: request.size\n\t\t\t\t\t\t};\n\n\t\t\t\t\t\tif (!isDomainOrSubdomain(request.url, locationURL)) {\n\t\t\t\t\t\t\tfor (const name of ['authorization', 'www-authenticate', 'cookie', 'cookie2']) {\n\t\t\t\t\t\t\t\trequestOpts.headers.delete(name);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 9\n\t\t\t\t\t\tif (res.statusCode !== 303 && request.body && getTotalBytes(request) === null) {\n\t\t\t\t\t\t\treject(new FetchError('Cannot follow redirect with body being a readable stream', 'unsupported-redirect'));\n\t\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 11\n\t\t\t\t\t\tif (res.statusCode === 303 || (res.statusCode === 301 || res.statusCode === 302) && request.method === 'POST') {\n\t\t\t\t\t\t\trequestOpts.method = 'GET';\n\t\t\t\t\t\t\trequestOpts.body = undefined;\n\t\t\t\t\t\t\trequestOpts.headers.delete('content-length');\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// HTTP-redirect fetch step 15\n\t\t\t\t\t\tresolve(fetch(new Request(locationURL, requestOpts)));\n\t\t\t\t\t\tfinalize();\n\t\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// prepare response\n\t\t\tres.once('end', function () {\n\t\t\t\tif (signal) signal.removeEventListener('abort', abortAndFinalize);\n\t\t\t});\n\t\t\tlet body = res.pipe(new PassThrough$1());\n\n\t\t\tconst response_options = {\n\t\t\t\turl: request.url,\n\t\t\t\tstatus: res.statusCode,\n\t\t\t\tstatusText: res.statusMessage,\n\t\t\t\theaders: headers,\n\t\t\t\tsize: request.size,\n\t\t\t\ttimeout: request.timeout,\n\t\t\t\tcounter: request.counter\n\t\t\t};\n\n\t\t\t// HTTP-network fetch step 12.1.1.3\n\t\t\tconst codings = headers.get('Content-Encoding');\n\n\t\t\t// HTTP-network fetch step 12.1.1.4: handle content codings\n\n\t\t\t// in following scenarios we ignore compression support\n\t\t\t// 1. compression support is disabled\n\t\t\t// 2. HEAD request\n\t\t\t// 3. no Content-Encoding header\n\t\t\t// 4. no content response (204)\n\t\t\t// 5. content not modified response (304)\n\t\t\tif (!request.compress || request.method === 'HEAD' || codings === null || res.statusCode === 204 || res.statusCode === 304) {\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// For Node v6+\n\t\t\t// Be less strict when decoding compressed responses, since sometimes\n\t\t\t// servers send slightly invalid responses that are still accepted\n\t\t\t// by common browsers.\n\t\t\t// Always using Z_SYNC_FLUSH is what cURL does.\n\t\t\tconst zlibOptions = {\n\t\t\t\tflush: zlib.Z_SYNC_FLUSH,\n\t\t\t\tfinishFlush: zlib.Z_SYNC_FLUSH\n\t\t\t};\n\n\t\t\t// for gzip\n\t\t\tif (codings == 'gzip' || codings == 'x-gzip') {\n\t\t\t\tbody = body.pipe(zlib.createGunzip(zlibOptions));\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for deflate\n\t\t\tif (codings == 'deflate' || codings == 'x-deflate') {\n\t\t\t\t// handle the infamous raw deflate response from old servers\n\t\t\t\t// a hack for old IIS and Apache servers\n\t\t\t\tconst raw = res.pipe(new PassThrough$1());\n\t\t\t\traw.once('data', function (chunk) {\n\t\t\t\t\t// see http://stackoverflow.com/questions/37519828\n\t\t\t\t\tif ((chunk[0] & 0x0F) === 0x08) {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflate());\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbody = body.pipe(zlib.createInflateRaw());\n\t\t\t\t\t}\n\t\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\t\tresolve(response);\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// for br\n\t\t\tif (codings == 'br' && typeof zlib.createBrotliDecompress === 'function') {\n\t\t\t\tbody = body.pipe(zlib.createBrotliDecompress());\n\t\t\t\tresponse = new Response(body, response_options);\n\t\t\t\tresolve(response);\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// otherwise, use response as-is\n\t\t\tresponse = new Response(body, response_options);\n\t\t\tresolve(response);\n\t\t});\n\n\t\twriteToStream(req, request);\n\t});\n}\n/**\n * Redirect code matching\n *\n * @param Number code Status code\n * @return Boolean\n */\nfetch.isRedirect = function (code) {\n\treturn code === 301 || code === 302 || code === 303 || code === 307 || code === 308;\n};\n\n// expose Promise\nfetch.Promise = global.Promise;\n\nmodule.exports = exports = fetch;\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.default = exports;\nexports.Headers = Headers;\nexports.Request = Request;\nexports.Response = Response;\nexports.FetchError = FetchError;\n", "'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nclass Deprecation extends Error {\n constructor(message) {\n super(message); // Maintains proper stack trace (only available on V8)\n\n /* istanbul ignore next */\n\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n\n this.name = 'Deprecation';\n }\n\n}\n\nexports.Deprecation = Deprecation;\n", "// Returns a wrapper function that returns a wrapped callback\n// The wrapper function should do some stuff, and return a\n// presumably different callback function.\n// This makes sure that own properties are retained, so that\n// decorations and such are not lost along the way.\nmodule.exports = wrappy\nfunction wrappy (fn, cb) {\n if (fn && cb) return wrappy(fn)(cb)\n\n if (typeof fn !== 'function')\n throw new TypeError('need wrapper function')\n\n Object.keys(fn).forEach(function (k) {\n wrapper[k] = fn[k]\n })\n\n return wrapper\n\n function wrapper() {\n var args = new Array(arguments.length)\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i]\n }\n var ret = fn.apply(this, args)\n var cb = args[args.length-1]\n if (typeof ret === 'function' && ret !== cb) {\n Object.keys(cb).forEach(function (k) {\n ret[k] = cb[k]\n })\n }\n return ret\n }\n}\n", "var wrappy = require('wrappy')\nmodule.exports = wrappy(once)\nmodule.exports.strict = wrappy(onceStrict)\n\nonce.proto = once(function () {\n Object.defineProperty(Function.prototype, 'once', {\n value: function () {\n return once(this)\n },\n configurable: true\n })\n\n Object.defineProperty(Function.prototype, 'onceStrict', {\n value: function () {\n return onceStrict(this)\n },\n configurable: true\n })\n})\n\nfunction once (fn) {\n var f = function () {\n if (f.called) return f.value\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n f.called = false\n return f\n}\n\nfunction onceStrict (fn) {\n var f = function () {\n if (f.called)\n throw new Error(f.onceError)\n f.called = true\n return f.value = fn.apply(this, arguments)\n }\n var name = fn.name || 'Function wrapped with `once`'\n f.onceError = name + \" shouldn't be called more than once\"\n f.called = false\n return f\n}\n", "import { Deprecation } from \"deprecation\";\nimport once from \"once\";\nconst logOnceCode = once((deprecation) => console.warn(deprecation));\nconst logOnceHeaders = once((deprecation) => console.warn(deprecation));\n/**\n * Error with extra properties to help with debugging\n */\nexport class RequestError extends Error {\n constructor(message, statusCode, options) {\n super(message);\n // Maintains proper stack trace (only available on V8)\n /* istanbul ignore next */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n this.name = \"HttpError\";\n this.status = statusCode;\n let headers;\n if (\"headers\" in options && typeof options.headers !== \"undefined\") {\n headers = options.headers;\n }\n if (\"response\" in options) {\n this.response = options.response;\n headers = options.response.headers;\n }\n // redact request credentials without mutating original request options\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(/ .*$/, \" [REDACTED]\"),\n });\n }\n requestCopy.url = requestCopy.url\n // client_id & client_secret can be passed as URL query parameters to increase rate limit\n // see https://developer.github.com/v3/#increasing-the-unauthenticated-rate-limit-for-oauth-applications\n .replace(/\\bclient_secret=\\w+/g, \"client_secret=[REDACTED]\")\n // OAuth tokens can be passed as URL query parameters, although it is not recommended\n // see https://developer.github.com/v3/#oauth2-token-sent-in-a-header\n .replace(/\\baccess_token=\\w+/g, \"access_token=[REDACTED]\");\n this.request = requestCopy;\n // deprecations\n Object.defineProperty(this, \"code\", {\n get() {\n logOnceCode(new Deprecation(\"[@octokit/request-error] `error.code` is deprecated, use `error.status`.\"));\n return statusCode;\n },\n });\n Object.defineProperty(this, \"headers\", {\n get() {\n logOnceHeaders(new Deprecation(\"[@octokit/request-error] `error.headers` is deprecated, use `error.response.headers`.\"));\n return headers || {};\n },\n });\n }\n}\n", "export const VERSION = \"5.6.3\";\n", "export default function getBufferResponse(response) {\n return response.arrayBuffer();\n}\n", "import { isPlainObject } from \"is-plain-object\";\nimport nodeFetch from \"node-fetch\";\nimport { RequestError } from \"@octokit/request-error\";\nimport getBuffer from \"./get-buffer-response\";\nexport default function fetchWrapper(requestOptions) {\n const log = requestOptions.request && requestOptions.request.log\n ? requestOptions.request.log\n : console;\n if (isPlainObject(requestOptions.body) ||\n Array.isArray(requestOptions.body)) {\n requestOptions.body = JSON.stringify(requestOptions.body);\n }\n let headers = {};\n let status;\n let url;\n const fetch = (requestOptions.request && requestOptions.request.fetch) || nodeFetch;\n return fetch(requestOptions.url, Object.assign({\n method: requestOptions.method,\n body: requestOptions.body,\n headers: requestOptions.headers,\n redirect: requestOptions.redirect,\n }, \n // `requestOptions.request.agent` type is incompatible\n // see https://github.com/octokit/types.ts/pull/264\n requestOptions.request))\n .then(async (response) => {\n url = response.url;\n status = response.status;\n for (const keyAndValue of response.headers) {\n headers[keyAndValue[0]] = keyAndValue[1];\n }\n if (\"deprecation\" in headers) {\n const matches = headers.link && headers.link.match(/<([^>]+)>; rel=\"deprecation\"/);\n const deprecationLink = matches && matches.pop();\n log.warn(`[@octokit/request] \"${requestOptions.method} ${requestOptions.url}\" is deprecated. It is scheduled to be removed on ${headers.sunset}${deprecationLink ? `. See ${deprecationLink}` : \"\"}`);\n }\n if (status === 204 || status === 205) {\n return;\n }\n // GitHub API returns 200 for HEAD requests\n if (requestOptions.method === \"HEAD\") {\n if (status < 400) {\n return;\n }\n throw new RequestError(response.statusText, status, {\n response: {\n url,\n status,\n headers,\n data: undefined,\n },\n request: requestOptions,\n });\n }\n if (status === 304) {\n throw new RequestError(\"Not modified\", status, {\n response: {\n url,\n status,\n headers,\n data: await getResponseData(response),\n },\n request: requestOptions,\n });\n }\n if (status >= 400) {\n const data = await getResponseData(response);\n const error = new RequestError(toErrorMessage(data), status, {\n response: {\n url,\n status,\n headers,\n data,\n },\n request: requestOptions,\n });\n throw error;\n }\n return getResponseData(response);\n })\n .then((data) => {\n return {\n status,\n url,\n headers,\n data,\n };\n })\n .catch((error) => {\n if (error instanceof RequestError)\n throw error;\n throw new RequestError(error.message, 500, {\n request: requestOptions,\n });\n });\n}\nasync function getResponseData(response) {\n const contentType = response.headers.get(\"content-type\");\n if (/application\\/json/.test(contentType)) {\n return response.json();\n }\n if (!contentType || /^text\\/|charset=utf-8$/.test(contentType)) {\n return response.text();\n }\n return getBuffer(response);\n}\nfunction toErrorMessage(data) {\n if (typeof data === \"string\")\n return data;\n // istanbul ignore else - just in case\n if (\"message\" in data) {\n if (Array.isArray(data.errors)) {\n return `${data.message}: ${data.errors.map(JSON.stringify).join(\", \")}`;\n }\n return data.message;\n }\n // istanbul ignore next - just in case\n return `Unknown error: ${JSON.stringify(data)}`;\n}\n", "import fetchWrapper from \"./fetch-wrapper\";\nexport default function withDefaults(oldEndpoint, newDefaults) {\n const endpoint = oldEndpoint.defaults(newDefaults);\n const newApi = function (route, parameters) {\n const endpointOptions = endpoint.merge(route, parameters);\n if (!endpointOptions.request || !endpointOptions.request.hook) {\n return fetchWrapper(endpoint.parse(endpointOptions));\n }\n const request = (route, parameters) => {\n return fetchWrapper(endpoint.parse(endpoint.merge(route, parameters)));\n };\n Object.assign(request, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint),\n });\n return endpointOptions.request.hook(request, endpointOptions);\n };\n return Object.assign(newApi, {\n endpoint,\n defaults: withDefaults.bind(null, endpoint),\n });\n}\n", "import { endpoint } from \"@octokit/endpoint\";\nimport { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nimport withDefaults from \"./with-defaults\";\nexport const request = withDefaults(endpoint, {\n headers: {\n \"user-agent\": `octokit-request.js/${VERSION} ${getUserAgent()}`,\n },\n});\n", "export const VERSION = \"4.8.0\";\n", "function _buildMessageForResponseErrors(data) {\n return (`Request failed due to following response errors:\\n` +\n data.errors.map((e) => ` - ${e.message}`).join(\"\\n\"));\n}\nexport class GraphqlResponseError extends Error {\n constructor(request, headers, response) {\n super(_buildMessageForResponseErrors(response));\n this.request = request;\n this.headers = headers;\n this.response = response;\n this.name = \"GraphqlResponseError\";\n // Expose the errors and response data in their shorthand properties.\n this.errors = response.errors;\n this.data = response.data;\n // Maintains proper stack trace (only available on V8)\n /* istanbul ignore next */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, this.constructor);\n }\n }\n}\n", "import { GraphqlResponseError } from \"./error\";\nconst NON_VARIABLE_OPTIONS = [\n \"method\",\n \"baseUrl\",\n \"url\",\n \"headers\",\n \"request\",\n \"query\",\n \"mediaType\",\n];\nconst FORBIDDEN_VARIABLE_OPTIONS = [\"query\", \"method\", \"url\"];\nconst GHES_V3_SUFFIX_REGEX = /\\/api\\/v3\\/?$/;\nexport function graphql(request, query, options) {\n if (options) {\n if (typeof query === \"string\" && \"query\" in options) {\n return Promise.reject(new Error(`[@octokit/graphql] \"query\" cannot be used as variable name`));\n }\n for (const key in options) {\n if (!FORBIDDEN_VARIABLE_OPTIONS.includes(key))\n continue;\n return Promise.reject(new Error(`[@octokit/graphql] \"${key}\" cannot be used as variable name`));\n }\n }\n const parsedOptions = typeof query === \"string\" ? Object.assign({ query }, options) : query;\n const requestOptions = Object.keys(parsedOptions).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 // workaround for GitHub Enterprise baseUrl set with /api/v3 suffix\n // https://github.com/octokit/auth-app.js/issues/111#issuecomment-657610451\n const baseUrl = parsedOptions.baseUrl || request.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 request(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(requestOptions, headers, response.data);\n }\n return response.data.data;\n });\n}\n", "import { request as Request } from \"@octokit/request\";\nimport { graphql } from \"./graphql\";\nexport function withDefaults(request, newDefaults) {\n const newRequest = request.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: Request.endpoint,\n });\n}\n", "import { request } from \"@octokit/request\";\nimport { getUserAgent } from \"universal-user-agent\";\nimport { VERSION } from \"./version\";\nimport { withDefaults } from \"./with-defaults\";\nexport const graphql = withDefaults(request, {\n headers: {\n \"user-agent\": `octokit-graphql.js/${VERSION} ${getUserAgent()}`,\n },\n method: \"POST\",\n url: \"/graphql\",\n});\nexport { GraphqlResponseError } from \"./error\";\nexport function withCustomRequest(customRequest) {\n return withDefaults(customRequest, {\n method: \"POST\",\n url: \"/graphql\",\n });\n}\n", "const REGEX_IS_INSTALLATION_LEGACY = /^v1\\./;\nconst REGEX_IS_INSTALLATION = /^ghs_/;\nconst REGEX_IS_USER_TO_SERVER = /^ghu_/;\nexport async function auth(token) {\n const isApp = token.split(/\\./).length === 3;\n const isInstallation = REGEX_IS_INSTALLATION_LEGACY.test(token) ||\n REGEX_IS_INSTALLATION.test(token);\n const isUserToServer = REGEX_IS_USER_TO_SERVER.test(token);\n const tokenType = isApp\n ? \"app\"\n : isInstallation\n ? \"installation\"\n : isUserToServer\n ? \"user-to-server\"\n : \"oauth\";\n return {\n type: \"token\",\n token: token,\n tokenType,\n };\n}\n", "/**\n * Prefix token for usage in the Authorization header\n *\n * @param token OAuth token or JSON Web Token\n */\nexport function withAuthorizationPrefix(token) {\n if (token.split(/\\./).length === 3) {\n return `bearer ${token}`;\n }\n return `token ${token}`;\n}\n", "import { withAuthorizationPrefix } from \"./with-authorization-prefix\";\nexport async function hook(token, request, route, parameters) {\n const endpoint = request.endpoint.merge(route, parameters);\n endpoint.headers.authorization = withAuthorizationPrefix(token);\n return request(endpoint);\n}\n", "import { auth } from \"./auth\";\nimport { hook } from \"./hook\";\nexport const createTokenAuth = function createTokenAuth(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(\"[@octokit/auth-token] Token passed to createTokenAuth is not a string\");\n }\n token = token.replace(/^(token|bearer) +/i, \"\");\n return Object.assign(auth.bind(null, token), {\n hook: hook.bind(null, token),\n });\n};\n", "export const VERSION = \"3.6.0\";\n", "import { getUserAgent } from \"universal-user-agent\";\nimport { Collection } from \"before-after-hook\";\nimport { request } from \"@octokit/request\";\nimport { withCustomRequest } from \"@octokit/graphql\";\nimport { createTokenAuth } from \"@octokit/auth-token\";\nimport { VERSION } from \"./version\";\nexport class Octokit {\n constructor(options = {}) {\n const hook = new 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 // prepend default user agent with `options.userAgent` if set\n requestDefaults.headers[\"user-agent\"] = [\n options.userAgent,\n `octokit-core.js/${VERSION} ${getUserAgent()}`,\n ]\n .filter(Boolean)\n .join(\" \");\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 debug: () => { },\n info: () => { },\n warn: console.warn.bind(console),\n error: console.error.bind(console),\n }, options.log);\n this.hook = hook;\n // (1) If neither `options.authStrategy` nor `options.auth` are set, the `octokit` instance\n // is unauthenticated. The `this.auth()` method is a no-op and no request hook is registered.\n // (2) If only `options.auth` is set, use the default token authentication strategy.\n // (3) If `options.authStrategy` is set then use it and pass in `options.auth`. Always pass own request as many strategies accept a custom request instance.\n // TODO: type `options.auth` based on `options.authStrategy`.\n if (!options.authStrategy) {\n if (!options.auth) {\n // (1)\n this.auth = async () => ({\n type: \"unauthenticated\",\n });\n }\n else {\n // (2)\n const auth = createTokenAuth(options.auth);\n // @ts-ignore \u00AF\\_(\u30C4)_/\u00AF\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n }\n else {\n const { authStrategy, ...otherOptions } = options;\n const auth = authStrategy(Object.assign({\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 }, options.auth));\n // @ts-ignore \u00AF\\_(\u30C4)_/\u00AF\n hook.wrap(\"request\", auth.hook);\n this.auth = auth;\n }\n // apply plugins\n // https://stackoverflow.com/a/16345172\n const classConstructor = this.constructor;\n classConstructor.plugins.forEach((plugin) => {\n Object.assign(this, plugin(this, options));\n });\n }\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(Object.assign({}, defaults, options, options.userAgent && defaults.userAgent\n ? {\n userAgent: `${options.userAgent} ${defaults.userAgent}`,\n }\n : null));\n }\n };\n return OctokitWithDefaults;\n }\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 var _a;\n const currentPlugins = this.plugins;\n const NewOctokit = (_a = class extends this {\n },\n _a.plugins = currentPlugins.concat(newPlugins.filter((plugin) => !currentPlugins.includes(plugin))),\n _a);\n return NewOctokit;\n }\n}\nOctokit.VERSION = VERSION;\nOctokit.plugins = [];\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 addSelectedRepoToOrgSecret: [\n \"PUT /orgs/{org}/actions/secrets/{secret_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 createOrUpdateEnvironmentSecret: [\n \"PUT /repositories/{repository_id}/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 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 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 /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}\",\n ],\n deleteOrgSecret: [\"DELETE /orgs/{org}/actions/secrets/{secret_name}\"],\n deleteRepoSecret: [\n \"DELETE /repos/{owner}/{repo}/actions/secrets/{secret_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 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 getActionsCacheUsageForEnterprise: [\n \"GET /enterprises/{enterprise}/actions/cache/usage\",\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 getEnvironmentPublicKey: [\n \"GET /repositories/{repository_id}/environments/{environment_name}/secrets/public-key\",\n ],\n getEnvironmentSecret: [\n \"GET /repositories/{repository_id}/environments/{environment_name}/secrets/{secret_name}\",\n ],\n getGithubActionsDefaultWorkflowPermissionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions/workflow\",\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 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 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 /repositories/{repository_id}/environments/{environment_name}/secrets\",\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 listRepoSecrets: [\"GET /repos/{owner}/{repo}/actions/secrets\"],\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 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 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 setGithubActionsDefaultWorkflowPermissionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/workflow\",\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 setSelectedRepositoriesEnabledGithubActionsOrganization: [\n \"PUT /orgs/{org}/actions/permissions/repositories\",\n ],\n setWorkflowAccessToRepository: [\n \"PUT /repos/{owner}/{repo}/actions/permissions/access\",\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 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 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 getGithubAdvancedSecurityBillingGhe: [\n \"GET /enterprises/{enterprise}/settings/billing/advanced-security\",\n ],\n getGithubAdvancedSecurityBillingOrg: [\n \"GET /orgs/{org}/settings/billing/advanced-security\",\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 deleteAnalysis: [\n \"DELETE /repos/{owner}/{repo}/code-scanning/analyses/{analysis_id}{?confirm_delete}\",\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 getSarif: [\"GET /repos/{owner}/{repo}/code-scanning/sarifs/{sarif_id}\"],\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 listRecentAnalyses: [\"GET /repos/{owner}/{repo}/code-scanning/analyses\"],\n updateAlert: [\n \"PATCH /repos/{owner}/{repo}/code-scanning/alerts/{alert_number}\",\n ],\n uploadSarif: [\"POST /repos/{owner}/{repo}/code-scanning/sarifs\"],\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 codespaceMachinesForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/machines\",\n ],\n createForAuthenticatedUser: [\"POST /user/codespaces\"],\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 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 getExportDetailsForAuthenticatedUser: [\n \"GET /user/codespaces/{codespace_name}/exports/{export_id}\",\n ],\n getForAuthenticatedUser: [\"GET /user/codespaces/{codespace_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 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 removeRepositoryForSecretForAuthenticatedUser: [\n \"DELETE /user/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 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 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 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 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 },\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 },\n emojis: { get: [\"GET /emojis\"] },\n enterpriseAdmin: {\n addCustomLabelsToSelfHostedRunnerForEnterprise: [\n \"POST /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n disableSelectedOrganizationGithubActionsEnterprise: [\n \"DELETE /enterprises/{enterprise}/actions/permissions/organizations/{org_id}\",\n ],\n enableSelectedOrganizationGithubActionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/organizations/{org_id}\",\n ],\n getAllowedActionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions/selected-actions\",\n ],\n getGithubActionsPermissionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions\",\n ],\n getServerStatistics: [\n \"GET /enterprise-installation/{enterprise_or_org}/server-statistics\",\n ],\n listLabelsForSelfHostedRunnerForEnterprise: [\n \"GET /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n listSelectedOrganizationsEnabledGithubActionsEnterprise: [\n \"GET /enterprises/{enterprise}/actions/permissions/organizations\",\n ],\n removeAllCustomLabelsFromSelfHostedRunnerForEnterprise: [\n \"DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n removeCustomLabelFromSelfHostedRunnerForEnterprise: [\n \"DELETE /enterprises/{enterprise}/actions/runners/{runner_id}/labels/{name}\",\n ],\n setAllowedActionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/selected-actions\",\n ],\n setCustomLabelsForSelfHostedRunnerForEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/runners/{runner_id}/labels\",\n ],\n setGithubActionsPermissionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions\",\n ],\n setSelectedOrganizationsEnabledGithubActionsEnterprise: [\n \"PUT /enterprises/{enterprise}/actions/permissions/organizations\",\n ],\n },\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 checkUserCanBeAssigned: [\"GET /repos/{owner}/{repo}/assignees/{assignee}\"],\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 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 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 getOctocat: [\"GET /octocat\"],\n getZen: [\"GET /zen\"],\n root: [\"GET /\"],\n },\n migrations: {\n cancelImport: [\"DELETE /repos/{owner}/{repo}/import\"],\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 getCommitAuthors: [\"GET /repos/{owner}/{repo}/import/authors\"],\n getImportStatus: [\"GET /repos/{owner}/{repo}/import\"],\n getLargeFiles: [\"GET /repos/{owner}/{repo}/import/large_files\"],\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 mapCommitAuthor: [\"PATCH /repos/{owner}/{repo}/import/authors/{author_id}\"],\n setLfsPreference: [\"PATCH /repos/{owner}/{repo}/import/lfs\"],\n startForAuthenticatedUser: [\"POST /user/migrations\"],\n startForOrg: [\"POST /orgs/{org}/migrations\"],\n startImport: [\"PUT /repos/{owner}/{repo}/import\"],\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 updateImport: [\"PATCH /repos/{owner}/{repo}/import\"],\n },\n orgs: {\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 createWebhook: [\"POST /orgs/{org}/hooks\"],\n deleteWebhook: [\"DELETE /orgs/{org}/hooks/{hook_id}\"],\n get: [\"GET /orgs/{org}\"],\n getMembershipForAuthenticatedUser: [\"GET /user/memberships/orgs/{org}\"],\n getMembershipForUser: [\"GET /orgs/{org}/memberships/{username}\"],\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 listBlockedUsers: [\"GET /orgs/{org}/blocks\"],\n listCustomRoles: [\"GET /organizations/{organization_id}/custom_roles\"],\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 listOutsideCollaborators: [\"GET /orgs/{org}/outside_collaborators\"],\n listPendingInvitations: [\"GET /orgs/{org}/invitations\"],\n listPublicMembers: [\"GET /orgs/{org}/public_members\"],\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 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 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 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 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 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 checkCollaborator: [\"GET /repos/{owner}/{repo}/collaborators/{username}\"],\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 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 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 createOrUpdateEnvironment: [\n \"PUT /repos/{owner}/{repo}/environments/{environment_name}\",\n ],\n createOrUpdateFileContents: [\"PUT /repos/{owner}/{repo}/contents/{path}\"],\n createPagesSite: [\"POST /repos/{owner}/{repo}/pages\"],\n createRelease: [\"POST /repos/{owner}/{repo}/releases\"],\n createTagProtection: [\"POST /repos/{owner}/{repo}/tags/protection\"],\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 deleteFile: [\"DELETE /repos/{owner}/{repo}/contents/{path}\"],\n deleteInvitation: [\n \"DELETE /repos/{owner}/{repo}/invitations/{invitation_id}\",\n ],\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 deleteTagProtection: [\n \"DELETE /repos/{owner}/{repo}/tags/protection/{tag_protection_id}\",\n ],\n deleteWebhook: [\"DELETE /repos/{owner}/{repo}/hooks/{hook_id}\"],\n disableAutomatedSecurityFixes: [\n \"DELETE /repos/{owner}/{repo}/automated-security-fixes\",\n ],\n disableLfsForRepo: [\"DELETE /repos/{owner}/{repo}/lfs\"],\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 enableLfsForRepo: [\"PUT /repos/{owner}/{repo}/lfs\"],\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 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 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 getDeployKey: [\"GET /repos/{owner}/{repo}/keys/{key_id}\"],\n getDeployment: [\"GET /repos/{owner}/{repo}/deployments/{deployment_id}\"],\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 getPages: [\"GET /repos/{owner}/{repo}/pages\"],\n getPagesBuild: [\"GET /repos/{owner}/{repo}/pages/builds/{build_id}\"],\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 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 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 listDeployKeys: [\"GET /repos/{owner}/{repo}/keys\"],\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 listTagProtection: [\"GET /repos/{owner}/{repo}/tags/protection\"],\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 updateInformationAboutPagesSite: [\"PUT /repos/{owner}/{repo}/pages\"],\n updateInvitation: [\n \"PATCH /repos/{owner}/{repo}/invitations/{invitation_id}\",\n ],\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 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 getAlert: [\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}\",\n ],\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 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 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 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 follow: [\"PUT /user/following/{username}\"],\n getAuthenticated: [\"GET /user\"],\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 list: [\"GET /users\"],\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 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};\nexport default Endpoints;\n", "export const VERSION = \"5.16.1\";\n", "export function endpointsToMethods(octokit, endpointsMap) {\n const newMethods = {};\n for (const [scope, endpoints] of Object.entries(endpointsMap)) {\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({ method, url }, defaults);\n if (!newMethods[scope]) {\n newMethods[scope] = {};\n }\n const scopeMethods = newMethods[scope];\n if (decorations) {\n scopeMethods[methodName] = decorate(octokit, scope, methodName, endpointDefaults, decorations);\n continue;\n }\n scopeMethods[methodName] = octokit.request.defaults(endpointDefaults);\n }\n }\n return newMethods;\n}\nfunction decorate(octokit, scope, methodName, defaults, decorations) {\n const requestWithDefaults = octokit.request.defaults(defaults);\n /* istanbul ignore next */\n function withDecorations(...args) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n let options = requestWithDefaults.endpoint.merge(...args);\n // There are currently no other decorations than `.mapToData`\n if (decorations.mapToData) {\n options = Object.assign({}, options, {\n data: options[decorations.mapToData],\n [decorations.mapToData]: undefined,\n });\n return requestWithDefaults(options);\n }\n if (decorations.renamed) {\n const [newScope, newMethodName] = decorations.renamed;\n octokit.log.warn(`octokit.${scope}.${methodName}() has been renamed to octokit.${newScope}.${newMethodName}()`);\n }\n if (decorations.deprecated) {\n octokit.log.warn(decorations.deprecated);\n }\n if (decorations.renamedParameters) {\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n const options = requestWithDefaults.endpoint.merge(...args);\n for (const [name, alias] of Object.entries(decorations.renamedParameters)) {\n if (name in options) {\n octokit.log.warn(`\"${name}\" parameter is deprecated for \"octokit.${scope}.${methodName}()\". Use \"${alias}\" instead`);\n if (!(alias in options)) {\n options[alias] = options[name];\n }\n delete options[name];\n }\n }\n return requestWithDefaults(options);\n }\n // @ts-ignore https://github.com/microsoft/TypeScript/issues/25488\n return requestWithDefaults(...args);\n }\n return Object.assign(withDecorations, requestWithDefaults);\n}\n", "import ENDPOINTS from \"./generated/endpoints\";\nimport { VERSION } from \"./version\";\nimport { endpointsToMethods } from \"./endpoints-to-methods\";\nexport function restEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit, ENDPOINTS);\n return {\n rest: api,\n };\n}\nrestEndpointMethods.VERSION = VERSION;\nexport function legacyRestEndpointMethods(octokit) {\n const api = endpointsToMethods(octokit, ENDPOINTS);\n return {\n ...api,\n rest: api,\n };\n}\nlegacyRestEndpointMethods.VERSION = VERSION;\n", "export const VERSION = \"2.21.1\";\n", "/**\n * Some \u201Clist\u201D response that can be paginated have a different response structure\n *\n * They have a `total_count` key in the response (search also has `incomplete_results`,\n * /installation/repositories also has `repository_selection`), as well as a key with\n * the list of the items which name varies from endpoint to endpoint.\n *\n * Octokit normalizes these responses so that paginated results are always returned following\n * the same structure. One challenge is that if the list response has only one page, no Link\n * header is provided, so this header alone is not sufficient to check wether a response is\n * paginated or not.\n *\n * We check if a \"total_count\" key is present in the response data, but also make sure that\n * a \"url\" property is not, as the \"Get the combined status for a specific ref\" endpoint would\n * otherwise match: https://developer.github.com/v3/repos/statuses/#get-the-combined-status-for-a-specific-ref\n */\nexport function normalizePaginatedListResponse(response) {\n // endpoints can respond with 204 if repository is empty\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)\n return response;\n // keep the additional properties intact as there is currently no other way\n // to retrieve the same information.\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", "import { normalizePaginatedListResponse } from \"./normalize-paginated-list-response\";\nexport function iterator(octokit, route, parameters) {\n const options = typeof route === \"function\"\n ? route.endpoint(parameters)\n : 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)\n return { done: true };\n try {\n const response = await requestMethod({ method, url, headers });\n const normalizedResponse = normalizePaginatedListResponse(response);\n // `response.headers.link` format:\n // '; rel=\"next\", ; rel=\"last\"'\n // sets `url` to undefined if \"next\" URL is not present or `link` header is not set\n url = ((normalizedResponse.headers.link || \"\").match(/<([^>]+)>;\\s*rel=\"next\"/) || [])[1];\n return { value: normalizedResponse };\n }\n catch (error) {\n if (error.status !== 409)\n throw error;\n url = \"\";\n return {\n value: {\n status: 200,\n headers: {},\n data: [],\n },\n };\n }\n },\n }),\n };\n}\n", "import { iterator } from \"./iterator\";\nexport function paginate(octokit, route, parameters, mapFn) {\n if (typeof parameters === \"function\") {\n mapFn = parameters;\n parameters = undefined;\n }\n return gather(octokit, [], iterator(octokit, route, parameters)[Symbol.asyncIterator](), mapFn);\n}\nfunction gather(octokit, results, iterator, mapFn) {\n return iterator.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(mapFn ? mapFn(result.value, done) : result.value.data);\n if (earlyExit) {\n return results;\n }\n return gather(octokit, results, iterator, mapFn);\n });\n}\n", "import { paginate } from \"./paginate\";\nimport { iterator } from \"./iterator\";\nexport const composePaginateRest = Object.assign(paginate, {\n iterator,\n});\n", "export const paginatingEndpoints = [\n \"GET /app/hook/deliveries\",\n \"GET /app/installations\",\n \"GET /applications/grants\",\n \"GET /authorizations\",\n \"GET /enterprises/{enterprise}/actions/permissions/organizations\",\n \"GET /enterprises/{enterprise}/actions/runner-groups\",\n \"GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/organizations\",\n \"GET /enterprises/{enterprise}/actions/runner-groups/{runner_group_id}/runners\",\n \"GET /enterprises/{enterprise}/actions/runners\",\n \"GET /enterprises/{enterprise}/audit-log\",\n \"GET /enterprises/{enterprise}/secret-scanning/alerts\",\n \"GET /enterprises/{enterprise}/settings/billing/advanced-security\",\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}/audit-log\",\n \"GET /orgs/{org}/blocks\",\n \"GET /orgs/{org}/code-scanning/alerts\",\n \"GET /orgs/{org}/codespaces\",\n \"GET /orgs/{org}/credential-authorizations\",\n \"GET /orgs/{org}/dependabot/secrets\",\n \"GET /orgs/{org}/dependabot/secrets/{secret_name}/repositories\",\n \"GET /orgs/{org}/events\",\n \"GET /orgs/{org}/external-groups\",\n \"GET /orgs/{org}/failed_invitations\",\n \"GET /orgs/{org}/hooks\",\n \"GET /orgs/{org}/hooks/{hook_id}/deliveries\",\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}/migrations\",\n \"GET /orgs/{org}/migrations/{migration_id}/repositories\",\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}/projects\",\n \"GET /orgs/{org}/public_members\",\n \"GET /orgs/{org}/repos\",\n \"GET /orgs/{org}/secret-scanning/alerts\",\n \"GET /orgs/{org}/settings/billing/advanced-security\",\n \"GET /orgs/{org}/team-sync/groups\",\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/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/workflows\",\n \"GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs\",\n \"GET /repos/{owner}/{repo}/assignees\",\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/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}/events\",\n \"GET /repos/{owner}/{repo}/forks\",\n \"GET /repos/{owner}/{repo}/git/matching-refs/{ref}\",\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}/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}/requested_reviewers\",\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}/secret-scanning/alerts\",\n \"GET /repos/{owner}/{repo}/secret-scanning/alerts/{alert_number}/locations\",\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 /repositories/{repository_id}/environments/{environment_name}/secrets\",\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/starred\",\n \"GET /user/subscriptions\",\n \"GET /user/teams\",\n \"GET /users\",\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}/starred\",\n \"GET /users/{username}/subscriptions\",\n];\n", "import { paginatingEndpoints, } from \"./generated/paginating-endpoints\";\nexport { paginatingEndpoints } from \"./generated/paginating-endpoints\";\nexport function isPaginatingEndpoint(arg) {\n if (typeof arg === \"string\") {\n return paginatingEndpoints.includes(arg);\n }\n else {\n return false;\n }\n}\n", "import { VERSION } from \"./version\";\nimport { paginate } from \"./paginate\";\nimport { iterator } from \"./iterator\";\nexport { composePaginateRest } from \"./compose-paginate\";\nexport { isPaginatingEndpoint, paginatingEndpoints, } from \"./paginating-endpoints\";\n/**\n * @param octokit Octokit instance\n * @param options Options passed to Octokit constructor\n */\nexport function paginateRest(octokit) {\n return {\n paginate: Object.assign(paginate.bind(null, octokit), {\n iterator: iterator.bind(null, octokit),\n }),\n };\n}\npaginateRest.VERSION = VERSION;\n", null, null, "\"use strict\";\n\n/**\n * RegexEscape\n * Escapes a string for using it in a regular expression.\n *\n * @name RegexEscape\n * @function\n * @param {String} input The string that must be escaped.\n * @return {String} The escaped string.\n */\nfunction RegexEscape(input) {\n return input.replace(/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g, \"\\\\$&\");\n}\n\n/**\n * proto\n * Adds the `RegexEscape` function to `RegExp` class.\n *\n * @name proto\n * @function\n * @return {Function} The `RegexEscape` function.\n */\nRegexEscape.proto = function () {\n RegExp.escape = RegexEscape;\n return RegexEscape;\n};\n\nmodule.exports = RegexEscape;", "'use strict';\n\nconst BYTE_UNITS = [\n\t'B',\n\t'kB',\n\t'MB',\n\t'GB',\n\t'TB',\n\t'PB',\n\t'EB',\n\t'ZB',\n\t'YB'\n];\n\nconst BIBYTE_UNITS = [\n\t'B',\n\t'kiB',\n\t'MiB',\n\t'GiB',\n\t'TiB',\n\t'PiB',\n\t'EiB',\n\t'ZiB',\n\t'YiB'\n];\n\nconst BIT_UNITS = [\n\t'b',\n\t'kbit',\n\t'Mbit',\n\t'Gbit',\n\t'Tbit',\n\t'Pbit',\n\t'Ebit',\n\t'Zbit',\n\t'Ybit'\n];\n\nconst BIBIT_UNITS = [\n\t'b',\n\t'kibit',\n\t'Mibit',\n\t'Gibit',\n\t'Tibit',\n\t'Pibit',\n\t'Eibit',\n\t'Zibit',\n\t'Yibit'\n];\n\n/*\nFormats the given number using `Number#toLocaleString`.\n- If locale is a string, the value is expected to be a locale-key (for example: `de`).\n- If locale is true, the system default locale is used for translation.\n- If no value for locale is specified, the number is returned unmodified.\n*/\nconst toLocaleString = (number, locale, options) => {\n\tlet result = number;\n\tif (typeof locale === 'string' || Array.isArray(locale)) {\n\t\tresult = number.toLocaleString(locale, options);\n\t} else if (locale === true || options !== undefined) {\n\t\tresult = number.toLocaleString(undefined, options);\n\t}\n\n\treturn result;\n};\n\nmodule.exports = (number, options) => {\n\tif (!Number.isFinite(number)) {\n\t\tthrow new TypeError(`Expected a finite number, got ${typeof number}: ${number}`);\n\t}\n\n\toptions = Object.assign({bits: false, binary: false}, options);\n\n\tconst UNITS = options.bits ?\n\t\t(options.binary ? BIBIT_UNITS : BIT_UNITS) :\n\t\t(options.binary ? BIBYTE_UNITS : BYTE_UNITS);\n\n\tif (options.signed && number === 0) {\n\t\treturn ` 0 ${UNITS[0]}`;\n\t}\n\n\tconst isNegative = number < 0;\n\tconst prefix = isNegative ? '-' : (options.signed ? '+' : '');\n\n\tif (isNegative) {\n\t\tnumber = -number;\n\t}\n\n\tlet localeOptions;\n\n\tif (options.minimumFractionDigits !== undefined) {\n\t\tlocaleOptions = {minimumFractionDigits: options.minimumFractionDigits};\n\t}\n\n\tif (options.maximumFractionDigits !== undefined) {\n\t\tlocaleOptions = Object.assign({maximumFractionDigits: options.maximumFractionDigits}, localeOptions);\n\t}\n\n\tif (number < 1) {\n\t\tconst numberString = toLocaleString(number, options.locale, localeOptions);\n\t\treturn prefix + numberString + ' ' + UNITS[0];\n\t}\n\n\tconst exponent = Math.min(Math.floor(options.binary ? Math.log(number) / Math.log(1024) : Math.log10(number) / 3), UNITS.length - 1);\n\t// eslint-disable-next-line unicorn/prefer-exponentiation-operator\n\tnumber /= Math.pow(options.binary ? 1024 : 1000, exponent);\n\n\tif (!localeOptions) {\n\t\tnumber = number.toPrecision(3);\n\t}\n\n\tconst numberString = toLocaleString(Number(number), options.locale, localeOptions);\n\n\tconst unit = UNITS[exponent];\n\n\treturn prefix + numberString + ' ' + unit;\n};\n", "import core from '@actions/core'\nimport github from '@actions/github'\n\nimport {\n createHeadBranchComment,\n createPullRequestComment,\n findDeltaComment,\n getMetricsComment,\n} from './lib/comment.js'\nimport { readDeltaFiles } from './lib/delta_file.js'\nimport { getCommentsFromMainBranch } from './lib/github.js'\nimport { getInputs } from './lib/inputs.js'\n\nconst processHeadBranch = async ({ commitSha, headMetrics, job, octokit, owner, repo, title }) => {\n const previousCommit = await getCommentsFromMainBranch({ commitIndex: 1, octokit, owner, repo })\n const comment = createHeadBranchComment({ commitSha, job, metrics: headMetrics, previousCommit, title })\n\n await octokit.rest.repos.createCommitComment({\n owner,\n repo,\n commit_sha: commitSha,\n body: comment,\n })\n}\n\nconst processPullRequest = async ({ headMetrics, job, octokit, owner, prNumber, repo, title }) => {\n const { baseSha, comments } = await getCommentsFromMainBranch({ octokit, owner, repo })\n const baseMetrics = getMetricsComment({ comments, job })\n\n core.debug(`Base metrics: ${JSON.stringify(baseMetrics)}`)\n\n const comment = createPullRequestComment({\n baseSha,\n job,\n metrics: headMetrics,\n previousMetrics: baseMetrics,\n title,\n })\n const existingComments = await octokit.paginate(octokit.rest.issues.listComments, {\n owner,\n repo,\n issue_number: prNumber,\n })\n const existingDeltaComment = existingComments.find((existingComment) => findDeltaComment(existingComment.body, job))\n\n if (existingDeltaComment) {\n core.debug(`Updating existing delta comment: ${existingDeltaComment.url}`)\n\n await octokit.rest.issues.updateComment({\n owner,\n repo,\n comment_id: existingDeltaComment.id,\n body: comment,\n })\n } else {\n core.debug('Creating new delta comment')\n\n await octokit.rest.issues.createComment({\n owner,\n repo,\n issue_number: prNumber,\n body: comment,\n })\n }\n}\n\nconst run = async function () {\n const { baseBranch, commitSha, job, owner, prNumber, ref, repo, rootPath, title, token } = getInputs()\n const headMetrics = await readDeltaFiles(rootPath)\n\n core.debug(`Running job ${job} on ref ${ref}`)\n\n if (headMetrics.length === 0) {\n core.debug(`No metrics found`)\n\n return\n }\n\n core.debug(`Found metrics: ${JSON.stringify(headMetrics)}`)\n\n const octokit = github.getOctokit(token)\n const isPR = Boolean(prNumber)\n\n if (!isPR && ref === `refs/heads/${baseBranch}`) {\n core.debug(`This run is related to the ${baseBranch} branch`)\n\n await processHeadBranch({ commitSha, headMetrics, job, octokit, owner, repo, title })\n } else if (isPR) {\n core.debug(`This run is related to PR #${prNumber}`)\n\n await processPullRequest({ headMetrics, job, octokit, owner, prNumber, repo, title })\n } else {\n core.debug(`This run is not related to a PR or the default branch`)\n }\n}\n\ntry {\n run()\n} catch (error) {\n core.debug(`Error: ${JSON.stringify(error)}`)\n core.setFailed(error.message)\n}\n", "import regexEscape from 'regex-escape'\n\nimport { drawGraph } from './graph.js'\nimport { formatValue } from './units.js'\n\nconst MAX_GRAPH_ITEMS = 13\nconst PAST_METRICS_COUNT = 30\n\nexport const createHeadBranchComment = ({ commitSha, metrics, job, previousCommit, title }) => {\n const allMetrics = getMetricsForHeadBranch({ commitSha, job, metrics, previousCommit })\n const metadata = ``\n const metricsList = metrics.map((metric) => getMetricLine(metric)).join('\\n')\n\n return `## ${title}\\n\\n${metricsList}\\n${metadata}`\n}\n\nexport const createPullRequestComment = ({ baseSha, job, metrics, previousMetrics, title }) => {\n // Accounting for both the legacy metadata format (object) and the new\n // format (array of objects).\n const previousMetricsArray = (Array.isArray(previousMetrics) ? previousMetrics : [previousMetrics])\n .filter(Boolean)\n .reverse()\n const metadata = ``\n const metricsList = metrics\n .map((metric) => {\n const comparison = previousMetricsArray.at(-1) ?? {}\n const previousValue = comparison[metric.name]\n // eslint-disable-next-line dot-notation\n const previousSha = comparison['__commit']\n const graphMetrics = [...previousMetricsArray, { __commit: baseSha, [metric.name]: metric.value }]\n const graph = getGraph({ metrics: graphMetrics, metricName: metric.name, units: metric.units })\n\n return getMetricLine(metric, previousValue, previousSha, graph)\n })\n .join('\\n')\n const baseShaLine = baseSha && previousMetricsArray.length !== 0 ? `*Comparing with ${baseSha}*\\n\\n` : ''\n\n return `## ${title}\\n\\n${baseShaLine}${metricsList}\\n${metadata}`\n}\n\nconst getGraph = ({ metrics, metricName, units }) => {\n const points = metrics.map((metric, index) => {\n const offset = metrics.length - 1 - index\n const label = offset === 0 ? 'T' : `T-${offset}`\n\n return {\n // eslint-disable-next-line dot-notation\n commit: metric['__commit'],\n displayValue: metric[metricName] == null ? 'n/a' : formatValue(metric[metricName], units),\n label,\n value: metric[metricName] == null ? Number.NEGATIVE_INFINITY : metric[metricName],\n }\n })\n const graph = drawGraph(points.slice(MAX_GRAPH_ITEMS * -1), { drawMean: true, fillLast: true })\n const legendItems = points\n .map(\n ({ commit, displayValue, label }) =>\n `- ${label === 'T' ? '**' : ''}${label} (${label === 'T' ? 'current commit' : commit}): ${displayValue}${\n label === 'T' ? '**' : ''\n }`,\n )\n .join('\\n')\n const legend = `
\\nLegend\\n\\n${legendItems}
`\n const lines = ['```', graph, '```', legend]\n\n return lines.join('\\n')\n}\n\nexport const getMetricsComment = ({ comments, job }) => {\n const deltaComment = comments.map(({ body }) => parseComment(body, job)).find(Boolean)\n\n return deltaComment\n}\n\nconst getMetricsForHeadBranch = ({ commitSha, job, metrics, previousCommit }) => {\n const metricValues = metrics.reduce((acc, { name, value }) => ({ ...acc, [name]: value }), {})\n const currentCommitMetrics = { __commit: commitSha, ...metricValues }\n\n if (previousCommit) {\n const previousMetrics = getMetricsComment({ comments: previousCommit.comments, job })\n const normalizedPreviousMetrics = normalizeMetrics(previousMetrics, previousCommit.baseSha).slice(\n 0,\n PAST_METRICS_COUNT - 1,\n )\n\n return [currentCommitMetrics, ...normalizedPreviousMetrics]\n }\n\n return [currentCommitMetrics]\n}\n\nconst getMetricLine = ({ displayName, name, units, value }, previousValue, previousSha, graph = '') => {\n const comparison = getMetricLineComparison(value, previousValue, previousSha)\n const formattedValue = formatValue(value, units)\n\n return `### ${displayName || name}: ${formattedValue}\\n${comparison ? ` ${comparison}` : ''}\\n${graph}`\n}\n\nconst getMetricLineComparison = (value, previousValue, previousSha) => {\n if (previousValue === undefined) {\n return ''\n }\n\n const difference = value - previousValue\n\n if (difference === 0) {\n return '(no change)'\n }\n\n const percentage = Math.abs((difference / value) * FLOAT_TO_PERCENT).toFixed(2)\n const [word, icon] = difference > 0 ? ['increase', '\u2B06\uFE0F'] : ['decrease', '\u2B07\uFE0F']\n const shaText = previousSha ? ` vs. ${previousSha}` : ''\n\n return `${icon} **${percentage}% ${word}**${shaText}`\n}\n\nconst FLOAT_TO_PERCENT = 100\n\nexport const findDeltaComment = (body, job) => {\n const regex = new RegExp(``)\n const match = body.match(regex)\n\n return match\n}\n\nconst normalizeMetrics = (metrics, sha) => {\n if (!metrics) {\n return []\n }\n\n if (Array.isArray(metrics)) {\n return metrics\n }\n\n return [{ __commit: sha, ...metrics }]\n}\n\nconst parseComment = (body, job) => {\n const match = findDeltaComment(body, job)\n\n if (!match) {\n return\n }\n\n try {\n return JSON.parse(match[1])\n } catch {\n // no-op\n }\n}\n", "const BAR_BODY = '| |'\nconst BAR_BODY_FILLED = '|\u2592\u2592|'\nconst BAR_BODY_MEAN = '\u253C\u2500\u2500\u253C'\nconst BAR_TOP = '\u250C\u2500\u2500\u2510'\nconst GAP = ' '\nconst GAP_MEAN = '\u2500'\nconst GAP_LENGTH = 4\nconst LINE_COUNT = 20\n\nconst drawBase = (points) => {\n const axisPadding = '\u2500'.repeat(GAP_LENGTH / 2)\n const axis = points\n .map(({ value }) => {\n const barChar = value === 0 ? '\u2500' : '\u2534'\n\n return `${axisPadding}${barChar}${'\u2500'.repeat(BAR_BODY.length - 2)}${barChar}${axisPadding}`\n })\n .join('')\n const legend = points\n .map(({ label }) => {\n const text = getPaddedString(label, BAR_BODY.length + GAP_LENGTH)\n\n return text\n })\n .join('')\n\n return `\u2514\u2500${axis}>\\n ${legend}`\n}\n\nexport const drawGraph = (values, { drawMean = false, fillLast = false } = {}) => {\n const maxValue = values.reduce((max, { value }) => (value > max ? value : max), 0)\n const usableValues = values.filter(({ value }) => value !== Number.NEGATIVE_INFINITY)\n const sum = usableValues.reduce((acc, { value }) => acc + value, 0)\n const mean = sum / usableValues.length\n const increment = maxValue / LINE_COUNT\n const meanLevel = drawMean ? LINE_COUNT - Math.round(mean / increment) : null\n const augmentedValues = values.map((dataPoint) => {\n const filledLevels = dataPoint.value === Number.NEGATIVE_INFINITY ? 0 : Math.round(dataPoint.value / increment)\n const filterValue = dataPoint.value === Number.NEGATIVE_INFINITY ? 0 : dataPoint.value\n\n return { ...dataPoint, value: filterValue, emptyLevels: LINE_COUNT - filledLevels }\n })\n\n const levels = Array.from({ length: LINE_COUNT }, (_, index) =>\n drawLevel({ fillLast, isMean: meanLevel === index + 1, level: index + 1, values: augmentedValues }),\n )\n const topLevels = [\n drawLevel({ level: -1, values: augmentedValues }),\n drawLevel({ level: 0, values: augmentedValues }),\n ]\n const base = drawBase(augmentedValues)\n\n return `${[...topLevels, ...levels].join('\\n')}\\n${base}`\n}\n\nconst drawLevel = ({ fillLast, isMean, level, values }) => {\n const gapCharacter = isMean ? GAP_MEAN : GAP\n const padding = gapCharacter.repeat(GAP_LENGTH / 2)\n const bars = values\n // eslint-disable-next-line complexity\n .map(({ displayValue, emptyLevels, value }, index) => {\n const isLastValue = index === values.length - 1\n\n if (emptyLevels < level) {\n const unfilledBody = isMean ? BAR_BODY_MEAN : BAR_BODY\n\n return `${padding}${isLastValue && fillLast ? BAR_BODY_FILLED : unfilledBody}${padding}`\n }\n\n if (emptyLevels === level && value !== 0) {\n return `${padding}${BAR_TOP}${padding}`\n }\n\n if ((emptyLevels - 1 === level && value !== 0) || (emptyLevels === level && value === 0)) {\n return getPaddedString((displayValue || value).toString(), BAR_BODY.length + GAP_LENGTH, gapCharacter)\n }\n\n return `${padding}${gapCharacter.repeat(BAR_BODY.length)}${padding}`\n })\n .join('')\n\n return `${level === -1 ? '^' : '\u2502'} ${bars}`\n}\n\nconst getPaddedString = (string, length, paddingCharacter = ' ') => {\n const totalPadding = length - string.length\n\n if (totalPadding < 0) {\n return `${string.slice(0, length - 1)}\u2026`\n }\n\n const paddingRightLength = Math.max(0, Math.round(totalPadding / 2))\n const paddingLeftLength = Math.max(0, totalPadding - paddingRightLength)\n const paddingLeft = paddingCharacter.repeat(paddingLeftLength)\n const paddingRight = paddingCharacter.repeat(paddingRightLength)\n\n return `${paddingLeft}${string}${paddingRight}`\n}\n", "import prettyBytes from 'pretty-bytes'\nimport prettyMilliseconds from 'pretty-ms'\n\nconst KILO = 1e3\n\n// eslint-disable-next-line complexity\nexport const formatValue = (value, unit) => {\n const normalizedUnit = unit && unit.toLowerCase()\n\n switch (normalizedUnit) {\n case 'b':\n case 'byte':\n case 'bytes':\n return prettyBytes(value)\n\n case 'kb':\n case 'kilobyte':\n case 'kilobytes':\n return prettyBytes(value * KILO)\n\n case 'ms':\n case 'millisecond':\n case 'milliseconds':\n return prettyMilliseconds(value)\n\n case 's':\n case 'seconds':\n return prettyMilliseconds(value * KILO)\n\n default:\n return value.toLocaleString()\n }\n}\n", "export default function parseMilliseconds(milliseconds) {\n\tif (typeof milliseconds !== 'number') {\n\t\tthrow new TypeError('Expected a number');\n\t}\n\n\tconst roundTowardsZero = milliseconds > 0 ? Math.floor : Math.ceil;\n\n\treturn {\n\t\tdays: roundTowardsZero(milliseconds / 86400000),\n\t\thours: roundTowardsZero(milliseconds / 3600000) % 24,\n\t\tminutes: roundTowardsZero(milliseconds / 60000) % 60,\n\t\tseconds: roundTowardsZero(milliseconds / 1000) % 60,\n\t\tmilliseconds: roundTowardsZero(milliseconds) % 1000,\n\t\tmicroseconds: roundTowardsZero(milliseconds * 1000) % 1000,\n\t\tnanoseconds: roundTowardsZero(milliseconds * 1e6) % 1000\n\t};\n}\n", "import parseMilliseconds from 'parse-ms';\n\nconst pluralize = (word, count) => count === 1 ? word : `${word}s`;\n\nconst SECOND_ROUNDING_EPSILON = 0.000_000_1;\n\nexport default function prettyMilliseconds(milliseconds, options = {}) {\n\tif (!Number.isFinite(milliseconds)) {\n\t\tthrow new TypeError('Expected a finite number');\n\t}\n\n\tif (options.colonNotation) {\n\t\toptions.compact = false;\n\t\toptions.formatSubMilliseconds = false;\n\t\toptions.separateMilliseconds = false;\n\t\toptions.verbose = false;\n\t}\n\n\tif (options.compact) {\n\t\toptions.secondsDecimalDigits = 0;\n\t\toptions.millisecondsDecimalDigits = 0;\n\t}\n\n\tconst result = [];\n\n\tconst floorDecimals = (value, decimalDigits) => {\n\t\tconst flooredInterimValue = Math.floor((value * (10 ** decimalDigits)) + SECOND_ROUNDING_EPSILON);\n\t\tconst flooredValue = Math.round(flooredInterimValue) / (10 ** decimalDigits);\n\t\treturn flooredValue.toFixed(decimalDigits);\n\t};\n\n\tconst add = (value, long, short, valueString) => {\n\t\tif ((result.length === 0 || !options.colonNotation) && value === 0 && !(options.colonNotation && short === 'm')) {\n\t\t\treturn;\n\t\t}\n\n\t\tvalueString = (valueString || value || '0').toString();\n\t\tlet prefix;\n\t\tlet suffix;\n\t\tif (options.colonNotation) {\n\t\t\tprefix = result.length > 0 ? ':' : '';\n\t\t\tsuffix = '';\n\t\t\tconst wholeDigits = valueString.includes('.') ? valueString.split('.')[0].length : valueString.length;\n\t\t\tconst minLength = result.length > 0 ? 2 : 1;\n\t\t\tvalueString = '0'.repeat(Math.max(0, minLength - wholeDigits)) + valueString;\n\t\t} else {\n\t\t\tprefix = '';\n\t\t\tsuffix = options.verbose ? ' ' + pluralize(long, value) : short;\n\t\t}\n\n\t\tresult.push(prefix + valueString + suffix);\n\t};\n\n\tconst parsed = parseMilliseconds(milliseconds);\n\n\tadd(Math.trunc(parsed.days / 365), 'year', 'y');\n\tadd(parsed.days % 365, 'day', 'd');\n\tadd(parsed.hours, 'hour', 'h');\n\tadd(parsed.minutes, 'minute', 'm');\n\n\tif (\n\t\toptions.separateMilliseconds\n\t\t|| options.formatSubMilliseconds\n\t\t|| (!options.colonNotation && milliseconds < 1000)\n\t) {\n\t\tadd(parsed.seconds, 'second', 's');\n\t\tif (options.formatSubMilliseconds) {\n\t\t\tadd(parsed.milliseconds, 'millisecond', 'ms');\n\t\t\tadd(parsed.microseconds, 'microsecond', '\u00B5s');\n\t\t\tadd(parsed.nanoseconds, 'nanosecond', 'ns');\n\t\t} else {\n\t\t\tconst millisecondsAndBelow\n\t\t\t\t= parsed.milliseconds\n\t\t\t\t+ (parsed.microseconds / 1000)\n\t\t\t\t+ (parsed.nanoseconds / 1e6);\n\n\t\t\tconst millisecondsDecimalDigits\n\t\t\t\t= typeof options.millisecondsDecimalDigits === 'number'\n\t\t\t\t\t? options.millisecondsDecimalDigits\n\t\t\t\t\t: 0;\n\n\t\t\tconst roundedMiliseconds = millisecondsAndBelow >= 1\n\t\t\t\t? Math.round(millisecondsAndBelow)\n\t\t\t\t: Math.ceil(millisecondsAndBelow);\n\n\t\t\tconst millisecondsString = millisecondsDecimalDigits\n\t\t\t\t? millisecondsAndBelow.toFixed(millisecondsDecimalDigits)\n\t\t\t\t: roundedMiliseconds;\n\n\t\t\tadd(\n\t\t\t\tNumber.parseFloat(millisecondsString),\n\t\t\t\t'millisecond',\n\t\t\t\t'ms',\n\t\t\t\tmillisecondsString,\n\t\t\t);\n\t\t}\n\t} else {\n\t\tconst seconds = (milliseconds / 1000) % 60;\n\t\tconst secondsDecimalDigits\n\t\t\t= typeof options.secondsDecimalDigits === 'number'\n\t\t\t\t? options.secondsDecimalDigits\n\t\t\t\t: 1;\n\t\tconst secondsFixed = floorDecimals(seconds, secondsDecimalDigits);\n\t\tconst secondsString = options.keepDecimalsOnWholeSeconds\n\t\t\t? secondsFixed\n\t\t\t: secondsFixed.replace(/\\.0+$/, '');\n\t\tadd(Number.parseFloat(secondsString), 'second', 's', secondsString);\n\t}\n\n\tif (result.length === 0) {\n\t\treturn '0' + (options.verbose ? ' milliseconds' : 'ms');\n\t}\n\n\tif (options.compact) {\n\t\treturn result[0];\n\t}\n\n\tif (typeof options.unitCount === 'number') {\n\t\tconst separator = options.colonNotation ? '' : ' ';\n\t\treturn result.slice(0, Math.max(options.unitCount, 1)).join(separator);\n\t}\n\n\treturn options.colonNotation ? result.join('') : result.join(' ');\n}\n", "import { readdir, readFile } from 'fs'\nimport { promisify } from 'util'\n\nimport core from '@actions/core'\n\nconst pReadDir = promisify(readdir)\nconst pReadFile = promisify(readFile)\n\nconst readDeltaFile = async (filePath) => {\n try {\n const data = await pReadFile(filePath, 'utf8')\n const match = data.match(/(\\d+(?:\\.\\d+)?)\\s*(\\w*)\\s*(?:\\(([\\s\\S]*)\\))?/)\n\n if (!match) {\n return null\n }\n\n return {\n value: Number(match[1]),\n units: match[2],\n displayName: match[3],\n }\n } catch {\n return null\n }\n}\n\nexport const readDeltaFiles = async (rootPath) => {\n try {\n const items = await pReadDir(rootPath)\n const metricFiles = items\n .map((fileName) => ({ fileName, metricMatch: fileName.match(/^\\.delta\\.(.+)$/) }))\n .filter(({ metricMatch }) => Boolean(metricMatch))\n .map(({ fileName, metricMatch }) => ({ fileName, metricName: metricMatch[1] }))\n const metrics = metricFiles.map(async ({ fileName, metricName }) => {\n const data = await readDeltaFile(fileName)\n\n if (!data) {\n return\n }\n\n return {\n ...data,\n name: metricName,\n }\n })\n const metricsData = await Promise.all(metrics)\n\n return metricsData.filter(Boolean)\n } catch (error) {\n core.debug(`Could not read delta files: ${error.message}`)\n\n return []\n }\n}\n", "export const getBranchNameFromRef = (ref) => {\n const match = ref.match(/^refs\\/heads\\/(.*)$/)\n\n if (match) {\n return match[1]\n }\n}\n\nexport const getCommentsFromMainBranch = async ({ commitIndex = 0, octokit, owner, repo }) => {\n const { data: commits } = await octokit.rest.repos.listCommits({\n owner,\n repo,\n })\n const baseSha = commits[commitIndex].sha\n const { data: comments } = await octokit.rest.repos.listCommentsForCommit({\n owner,\n repo,\n commit_sha: baseSha,\n })\n\n return { baseSha, comments }\n}\n", "import process from 'process'\n\nimport core from '@actions/core'\nimport { context } from '@actions/github'\n\nconst getPrNumber = () => {\n const { eventName, payload } = context\n\n if (eventName === 'pull_request') {\n return payload.number\n }\n\n const prNumberInput = Number.parseInt(core.getInput('pr_number'))\n if (Number.isInteger(prNumberInput)) {\n return prNumberInput\n }\n}\n\nexport const getInputs = () => {\n const {\n GITHUB_DEV_BASE_BRANCH: envBaseBranch,\n GITHUB_REPOSITORY: repository,\n GITHUB_WORKSPACE: rootPath = process.cwd(),\n } = process.env\n const { job, ref, sha: commitSha } = context\n const baseBranch = envBaseBranch || core.getInput('base_branch')\n const title = core.getInput('title', { required: true })\n const [owner, repo] = repository.split('/')\n const token = core.getInput('token', { required: true })\n const prNumber = getPrNumber()\n\n return {\n baseBranch,\n commitSha,\n job,\n owner,\n prNumber,\n ref,\n repo,\n rootPath,\n title,\n token,\n }\n}\n"], + "mappings": "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FACA,iFACA,iDACA,2CACA,wDACA,oEACA,eACA,cACA,qBACA,sBACA,iCACA,gCACA,8BACA,kCACA,eACA,iBACA,kCACA,qDACA,0CACA,6DACA,uCACA,sBACA,sBACA,qDACA,oDACA,yCACA,wEACA,mEACA,mCACA,mCACA,8DACA,6BACA,0BACA,wCACA,8BACA,6CACA,sCACA,iEACA,0BACA,mCACA,sCACA,yBACA,8CACA,iCACA,+BACA,qDACA,0BACA,2BACA,8BACA,0DACA,yCACA,4BACA,mEACA,4BACA,kCACA,yBACA,0CACA,sDACA,oCACA,yBACA,iDACA,8EACA,yGACA,+EACA,iDACA,6CACA,8CACA,2CACA,2CACA,2CACA,4CACA,sCACA,+CACA,4CACA,6CACA,0CACA,6DACA,kFACA,wDACA,6CACA,+CACA,kEACA,uCACA,sCACA,mEACA,sEACA,kDACA,2EACA,oDACA,wCACA,sDACA,gDACA,2CACA,sCACA,6DACA,qCACA,2DACA,wDACA,sDACA,wDACA,kDACA,oDACA,0CACA,gDACA,yCACA,kEACA,0CACA,oCACA,mCACA,qDACA,mCACA,wDACA,yCACA,oCACA,6CACA,oEACA,2CACA,4DACA,0DACA,0DACA,6DACA,4DACA,kCACA,oCACA,wCACA,kEACA,2CACA,0CACA,sCACA,mCACA,4CACA,mEACA,0DACA,yDACA,uDACA,qEACA,yDACA,8EACA,sCACA,0DACA,6DACA,oDACA,6EACA,wCACA,yCACA,kCACA,mCACA,oCACA,qBACA,6EACA,oBACA,uBACA,sBACA,sBACA,4BACA,sBACA,qBACA,oCACA,iEACA,4FACA,kEACA,oCACA,gCACA,iCACA,8BACA,8BACA,oBACA,wBACA,gCACA,oBACA,uBACA,uBACA,sBACA,2BACA,0DACA,oBACA,kBACA,mCACA,2CACA,8BACA,wBACA,oDACA,kBACA,sBACA,6DACA,2BACA,mBACA,oCACA,qBACA,2BACA,mBACA,cACA,gCACA,2CACA,uCACA,mCACA,mCACA,+BACA,kCACA,8BACA,8BACA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", "names": [] } diff --git a/package-lock.json b/package-lock.json index 2f925d8..4a20232 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@netlify/delta-action", - "version": "4.0.2", + "version": "4.0.3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@netlify/delta-action", - "version": "4.0.2", + "version": "4.0.3", "license": "MIT", "dependencies": { "@actions/core": "^1.9.0", diff --git a/package.json b/package.json index e34d40a..294252a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@netlify/delta-action", "private": true, - "version": "4.0.2", + "version": "4.0.3", "description": "A GitHub Action for capturing benchmark data and tracking its variation against a baseline", "type": "module", "exports": "./src/index.js",