| "use strict"; |
| var __defProp = Object.defineProperty; |
| var __getOwnPropDesc = Object.getOwnPropertyDescriptor; |
| var __getOwnPropNames = Object.getOwnPropertyNames; |
| var __hasOwnProp = Object.prototype.hasOwnProperty; |
| var __export = (target, all) => { |
| for (var name in all) |
| __defProp(target, name, { get: all[name], enumerable: true }); |
| }; |
| var __copyProps = (to, from, except, desc) => { |
| if (from && typeof from === "object" || typeof from === "function") { |
| for (let key of __getOwnPropNames(from)) |
| if (!__hasOwnProp.call(to, key) && key !== except) |
| __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); |
| } |
| return to; |
| }; |
| var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); |
| |
| // pkg/dist-src/index.js |
| var dist_src_exports = {}; |
| __export(dist_src_exports, { |
| Octokit: () => Octokit |
| }); |
| module.exports = __toCommonJS(dist_src_exports); |
| var import_universal_user_agent = require("universal-user-agent"); |
| var import_before_after_hook = require("before-after-hook"); |
| var import_request = require("@octokit/request"); |
| var import_graphql = require("@octokit/graphql"); |
| var import_auth_token = require("@octokit/auth-token"); |
| |
| // pkg/dist-src/version.js |
| var VERSION = "5.1.0"; |
| |
| // pkg/dist-src/index.js |
| var noop = () => { |
| }; |
| var consoleWarn = console.warn.bind(console); |
| var consoleError = console.error.bind(console); |
| var userAgentTrail = `octokit-core.js/${VERSION} ${(0, import_universal_user_agent.getUserAgent)()}`; |
| var Octokit = class { |
| static { |
| this.VERSION = VERSION; |
| } |
| static defaults(defaults) { |
| const OctokitWithDefaults = class extends this { |
| constructor(...args) { |
| const options = args[0] || {}; |
| if (typeof defaults === "function") { |
| super(defaults(options)); |
| return; |
| } |
| super( |
| Object.assign( |
| {}, |
| defaults, |
| options, |
| options.userAgent && defaults.userAgent ? { |
| userAgent: `${options.userAgent} ${defaults.userAgent}` |
| } : null |
| ) |
| ); |
| } |
| }; |
| return OctokitWithDefaults; |
| } |
| static { |
| this.plugins = []; |
| } |
| /** |
| * Attach a plugin (or many) to your Octokit instance. |
| * |
| * @example |
| * const API = Octokit.plugin(plugin1, plugin2, plugin3, ...) |
| */ |
| static plugin(...newPlugins) { |
| const currentPlugins = this.plugins; |
| const NewOctokit = class extends this { |
| static { |
| this.plugins = currentPlugins.concat( |
| newPlugins.filter((plugin) => !currentPlugins.includes(plugin)) |
| ); |
| } |
| }; |
| return NewOctokit; |
| } |
| constructor(options = {}) { |
| const hook = new import_before_after_hook.Collection(); |
| const requestDefaults = { |
| baseUrl: import_request.request.endpoint.DEFAULTS.baseUrl, |
| headers: {}, |
| request: Object.assign({}, options.request, { |
| // @ts-ignore internal usage only, no need to type |
| hook: hook.bind(null, "request") |
| }), |
| mediaType: { |
| previews: [], |
| format: "" |
| } |
| }; |
| requestDefaults.headers["user-agent"] = options.userAgent ? `${options.userAgent} ${userAgentTrail}` : userAgentTrail; |
| if (options.baseUrl) { |
| requestDefaults.baseUrl = options.baseUrl; |
| } |
| if (options.previews) { |
| requestDefaults.mediaType.previews = options.previews; |
| } |
| if (options.timeZone) { |
| requestDefaults.headers["time-zone"] = options.timeZone; |
| } |
| this.request = import_request.request.defaults(requestDefaults); |
| this.graphql = (0, import_graphql.withCustomRequest)(this.request).defaults(requestDefaults); |
| this.log = Object.assign( |
| { |
| debug: noop, |
| info: noop, |
| warn: consoleWarn, |
| error: consoleError |
| }, |
| options.log |
| ); |
| this.hook = hook; |
| if (!options.authStrategy) { |
| if (!options.auth) { |
| this.auth = async () => ({ |
| type: "unauthenticated" |
| }); |
| } else { |
| const auth = (0, import_auth_token.createTokenAuth)(options.auth); |
| hook.wrap("request", auth.hook); |
| this.auth = auth; |
| } |
| } else { |
| const { authStrategy, ...otherOptions } = options; |
| const auth = authStrategy( |
| Object.assign( |
| { |
| request: this.request, |
| log: this.log, |
| // we pass the current octokit instance as well as its constructor options |
| // to allow for authentication strategies that return a new octokit instance |
| // that shares the same internal state as the current one. The original |
| // requirement for this was the "event-octokit" authentication strategy |
| // of https://github.com/probot/octokit-auth-probot. |
| octokit: this, |
| octokitOptions: otherOptions |
| }, |
| options.auth |
| ) |
| ); |
| hook.wrap("request", auth.hook); |
| this.auth = auth; |
| } |
| const classConstructor = this.constructor; |
| for (let i = 0; i < classConstructor.plugins.length; ++i) { |
| Object.assign(this, classConstructor.plugins[i](this, options)); |
| } |
| } |
| }; |
| // Annotate the CommonJS export names for ESM import in node: |
| 0 && (module.exports = { |
| Octokit |
| }); |