diff --git a/CHANGELOG.md b/CHANGELOG.md index bf5c229..5c11c84 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,19 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [Unreleased] + +### Added +- Added the folders endpoints: `getTeamFolders`, `getFolderFolders`, `getFolderFiles` and `getFolderMeta` +- Added `API_VER_FOLDERS` config constant + +### Changed +- Bumped the `@figma/rest-api-spec` floor to `0.42.0` (was `0.37.0`), the release that added the folders types + +### Deprecated +- Marked `getTeamProjects` and `getProjectFiles` as deprecated. Figma deprecated the underlying `/v1/teams/:team_id/projects` and `/v1/projects/:project_id/files` endpoints in August 2026, and personal access tokens can no longer be granted the `files:read` scope they require, so they now fail with `403 Invalid scope`. Folder IDs are the same values as project IDs and the response shapes are unchanged. + + ## [v2.2.1-beta] - 2026-06-29 ### Changed diff --git a/README.md b/README.md index db8ef06..1b3aa35 100644 --- a/README.md +++ b/README.md @@ -138,8 +138,29 @@ See: https://www.figma.com/developers/api#version-history-endpoints See: https://www.figma.com/developers/api#projects-endpoints -- `Api.getTeamProjects(pathParams)` -- `Api.getProjectFiles(pathParams,queryParams)` +> [!WARNING] +> These endpoints were deprecated by Figma in August 2026 in favour of the folders endpoints below. Personal access tokens created now cannot be granted the `files:read` scope they require, so they return `403 Invalid scope`. Use the folders endpoints instead. + +- `Api.getTeamProjects(pathParams)` — deprecated, use `Api.getTeamFolders(pathParams)` +- `Api.getProjectFiles(pathParams,queryParams)` — deprecated, use `Api.getFolderFiles(pathParams,queryParams)` + +#### Folders + +See: https://www.figma.com/developers/api#folders-endpoints + +These replace the projects endpoints above and require the `folders:read` scope (`folder_metadata:read` for `getFolderMeta`). Folder IDs are the same values as the old project IDs, and the responses keep the same shape, so migrating is a one-line change: + +```ts +// before +const project = await api.getProjectFiles({ project_id: '12345678' }); +// after +const folder = await api.getFolderFiles({ folder_id: '12345678' }); +``` + +- `Api.getTeamFolders(pathParams)` +- `Api.getFolderFolders(pathParams)` +- `Api.getFolderFiles(pathParams,queryParams)` +- `Api.getFolderMeta(pathParams)` #### Components and Styles (Library Items) diff --git a/lib/figma-api.js b/lib/figma-api.js index c51ae7c..9ca89b3 100644 --- a/lib/figma-api.js +++ b/lib/figma-api.js @@ -23,6 +23,7 @@ var Figma = (() => { __export(index_exports, { API_DOMAIN: () => API_DOMAIN, API_VER: () => API_VER, + API_VER_FOLDERS: () => API_VER_FOLDERS, API_VER_WEBHOOKS: () => API_VER_WEBHOOKS, Api: () => Api, oAuthLink: () => oAuthLink, @@ -33,6 +34,7 @@ var Figma = (() => { var API_DOMAIN = "https://api.figma.com"; var API_VER = "v1"; var API_VER_WEBHOOKS = "v2"; + var API_VER_FOLDERS = "v2"; // src/utils.ts function toQueryParams(x) { @@ -116,6 +118,19 @@ var Figma = (() => { const encodedQueryParams = toQueryParams(queryParams); return this.request(`${API_DOMAIN}/${API_VER}/projects/${pathParams.project_id}/files?${encodedQueryParams}`); } + function getTeamFoldersApi(pathParams) { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/teams/${pathParams.team_id}/folders`); + } + function getFolderFoldersApi(pathParams) { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/folders`); + } + function getFolderFilesApi(pathParams, queryParams) { + const encodedQueryParams = toQueryParams(queryParams); + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/files?${encodedQueryParams}`); + } + function getFolderMetaApi(pathParams) { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/meta`); + } function getTeamComponentsApi(pathParams, queryParams) { const encodedQueryParams = toQueryParams(queryParams); return this.request(`${API_DOMAIN}/${API_VER}/teams/${pathParams.team_id}/components?${encodedQueryParams}`); @@ -232,14 +247,14 @@ var Figma = (() => { return this.request(`${API_DOMAIN}/${API_VER}/analytics/libraries/${pathParams.file_key}/variable/usages?${encodedQueryParams}`); } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/bind.js + // node_modules/axios/lib/helpers/bind.js function bind(fn, thisArg) { return function wrap() { return fn.apply(thisArg, arguments); }; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/utils.js + // node_modules/axios/lib/utils.js var { toString } = Object.prototype; var { getPrototypeOf } = Object; var { iterator, toStringTag } = Symbol; @@ -716,7 +731,7 @@ var Figma = (() => { isSafeIterable }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/parseHeaders.js + // node_modules/axios/lib/helpers/parseHeaders.js var ignoreDuplicateOf = utils_default.toObjectSet([ "age", "authorization", @@ -761,7 +776,7 @@ var Figma = (() => { return parsed; }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/sanitizeHeaderValue.js + // node_modules/axios/lib/helpers/sanitizeHeaderValue.js function trimSPorHTAB(str) { let start = 0; let end = str.length; @@ -799,7 +814,7 @@ var Figma = (() => { return byteStringHeaders; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/AxiosHeaders.js + // node_modules/axios/lib/core/AxiosHeaders.js var $internals = /* @__PURE__ */ Symbol("internals"); function normalizeHeader(header) { return header && String(header).trim().toLowerCase(); @@ -1044,7 +1059,7 @@ var Figma = (() => { utils_default.freezeMethods(AxiosHeaders); var AxiosHeaders_default = AxiosHeaders; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/AxiosError.js + // node_modules/axios/lib/core/AxiosError.js var REDACTED = "[REDACTED ****]"; function hasOwnOrPrototypeToJSON(source) { if (utils_default.hasOwnProp(source, "toJSON")) { @@ -1185,10 +1200,10 @@ var Figma = (() => { AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED = "ERR_FORM_DATA_DEPTH_EXCEEDED"; var AxiosError_default = AxiosError; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/null.js + // node_modules/axios/lib/helpers/null.js var null_default = null; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/toFormData.js + // node_modules/axios/lib/helpers/toFormData.js var DEFAULT_FORM_DATA_MAX_DEPTH = 100; function isVisitable(thing) { return utils_default.isPlainObject(thing) || utils_default.isArray(thing); @@ -1340,7 +1355,7 @@ var Figma = (() => { } var toFormData_default = toFormData; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/AxiosURLSearchParams.js + // node_modules/axios/lib/helpers/AxiosURLSearchParams.js function encode(str) { const charMap = { "!": "%21", @@ -1370,7 +1385,7 @@ var Figma = (() => { }; var AxiosURLSearchParams_default = AxiosURLSearchParams; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/buildURL.js + // node_modules/axios/lib/helpers/buildURL.js function encode2(val) { return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+"); } @@ -1400,7 +1415,7 @@ var Figma = (() => { return url; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/InterceptorManager.js + // node_modules/axios/lib/core/InterceptorManager.js var InterceptorManager = class { constructor() { this.handlers = []; @@ -1465,7 +1480,7 @@ var Figma = (() => { }; var InterceptorManager_default = InterceptorManager; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/defaults/transitional.js + // node_modules/axios/lib/defaults/transitional.js var transitional_default = { silentJSONParsing: true, forcedJSONParsing: true, @@ -1475,16 +1490,16 @@ var Figma = (() => { validateStatusUndefinedResolves: true }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/browser/classes/URLSearchParams.js + // node_modules/axios/lib/platform/browser/classes/URLSearchParams.js var URLSearchParams_default = typeof URLSearchParams !== "undefined" ? URLSearchParams : AxiosURLSearchParams_default; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/browser/classes/FormData.js + // node_modules/axios/lib/platform/browser/classes/FormData.js var FormData_default = typeof FormData !== "undefined" ? FormData : null; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/browser/classes/Blob.js + // node_modules/axios/lib/platform/browser/classes/Blob.js var Blob_default = typeof Blob !== "undefined" ? Blob : null; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/browser/index.js + // node_modules/axios/lib/platform/browser/index.js var browser_default = { isBrowser: true, classes: { @@ -1495,7 +1510,7 @@ var Figma = (() => { protocols: ["http", "https", "file", "blob", "url", "data"] }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/common/utils.js + // node_modules/axios/lib/platform/common/utils.js var utils_exports = {}; __export(utils_exports, { hasBrowserEnv: () => hasBrowserEnv, @@ -1513,13 +1528,13 @@ var Figma = (() => { })(); var origin = hasBrowserEnv && window.location.href || "http://localhost"; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/index.js + // node_modules/axios/lib/platform/index.js var platform_default = { ...utils_exports, ...browser_default }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/toURLEncodedForm.js + // node_modules/axios/lib/helpers/toURLEncodedForm.js function toURLEncodedForm(data, options) { return toFormData_default(data, new platform_default.classes.URLSearchParams(), { visitor: function(value, key, path, helpers) { @@ -1533,7 +1548,7 @@ var Figma = (() => { }); } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/formDataToJSON.js + // node_modules/axios/lib/helpers/formDataToJSON.js var MAX_DEPTH = DEFAULT_FORM_DATA_MAX_DEPTH; function throwIfDepthExceeded(index) { if (index > MAX_DEPTH) { @@ -1601,7 +1616,7 @@ var Figma = (() => { } var formDataToJSON_default = formDataToJSON; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/defaults/index.js + // node_modules/axios/lib/defaults/index.js var own = (obj, key) => obj != null && utils_default.hasOwnProp(obj, key) ? obj[key] : void 0; function stringifySafely(rawValue, parser, encoder) { if (utils_default.isString(rawValue)) { @@ -1718,7 +1733,7 @@ var Figma = (() => { }); var defaults_default = defaults; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/transformData.js + // node_modules/axios/lib/core/transformData.js function transformData(fns, response) { const config = this || defaults_default; const context = response || config; @@ -1731,12 +1746,12 @@ var Figma = (() => { return data; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/cancel/isCancel.js + // node_modules/axios/lib/cancel/isCancel.js function isCancel(value) { return !!(value && value.__CANCEL__); } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/cancel/CanceledError.js + // node_modules/axios/lib/cancel/CanceledError.js var CanceledError = class extends AxiosError_default { /** * A `CanceledError` is an object that is thrown when an operation is canceled. @@ -1755,7 +1770,7 @@ var Figma = (() => { }; var CanceledError_default = CanceledError; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/settle.js + // node_modules/axios/lib/core/settle.js function settle(resolve, reject, response) { const validateStatus2 = response.config.validateStatus; if (!response.status || !validateStatus2 || validateStatus2(response.status)) { @@ -1771,13 +1786,13 @@ var Figma = (() => { } } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/parseProtocol.js + // node_modules/axios/lib/helpers/parseProtocol.js function parseProtocol(url) { const match = /^([-+\w]{1,25}):(?:\/\/)?/.exec(url); return match && match[1] || ""; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/speedometer.js + // node_modules/axios/lib/helpers/speedometer.js function speedometer(samplesCount, min) { samplesCount = samplesCount || 10; const bytes = new Array(samplesCount); @@ -1813,7 +1828,7 @@ var Figma = (() => { } var speedometer_default = speedometer; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/throttle.js + // node_modules/axios/lib/helpers/throttle.js function throttle(fn, freq) { let timestamp = 0; let threshold = 1e3 / freq; @@ -1848,7 +1863,7 @@ var Figma = (() => { } var throttle_default = throttle; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/progressEventReducer.js + // node_modules/axios/lib/helpers/progressEventReducer.js var progressEventReducer = (listener, isDownloadStream, freq = 3) => { let bytesNotified = 0; const _speedometer = speedometer_default(50, 250); @@ -1889,7 +1904,7 @@ var Figma = (() => { }; var asyncDecorator = (fn) => (...args) => utils_default.asap(() => fn(...args)); - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/isURLSameOrigin.js + // node_modules/axios/lib/helpers/isURLSameOrigin.js var isURLSameOrigin_default = platform_default.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url) => { url = new URL(url, platform_default.origin); return origin2.protocol === url.protocol && origin2.host === url.host && (isMSIE || origin2.port === url.port); @@ -1898,7 +1913,7 @@ var Figma = (() => { platform_default.navigator && /(msie|trident)/i.test(platform_default.navigator.userAgent) ) : () => true; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/cookies.js + // node_modules/axios/lib/helpers/cookies.js var cookies_default = platform_default.hasStandardBrowserEnv ? ( // Standard browser envs support document.cookie { @@ -1955,7 +1970,7 @@ var Figma = (() => { } ); - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/isAbsoluteURL.js + // node_modules/axios/lib/helpers/isAbsoluteURL.js function isAbsoluteURL(url) { if (typeof url !== "string") { return false; @@ -1963,12 +1978,12 @@ var Figma = (() => { return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url); } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/combineURLs.js + // node_modules/axios/lib/helpers/combineURLs.js function combineURLs(baseURL, relativeURL) { return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/buildFullPath.js + // node_modules/axios/lib/core/buildFullPath.js var malformedHttpProtocol = /^https?:(?!\/\/)/i; var httpProtocolControlCharacters = /[\t\n\r]/g; function stripLeadingC0ControlOrSpace(url) { @@ -2000,7 +2015,7 @@ var Figma = (() => { return requestedURL; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/mergeConfig.js + // node_modules/axios/lib/core/mergeConfig.js var headersToObject = (thing) => thing instanceof AxiosHeaders_default ? { ...thing } : thing; function mergeConfig(config1, config2) { config1 = config1 || {}; @@ -2118,7 +2133,7 @@ var Figma = (() => { return config; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/resolveConfig.js + // node_modules/axios/lib/helpers/resolveConfig.js var FORM_DATA_CONTENT_HEADERS = ["content-type", "content-length"]; function setFormDataHeaders(headers, formHeaders, policy) { if (policy !== "content-only") { @@ -2188,7 +2203,7 @@ var Figma = (() => { } var resolveConfig_default = resolveConfig; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/xhr.js + // node_modules/axios/lib/adapters/xhr.js var isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; var xhr_default = isXHRAdapterSupported && function(config) { return new Promise(function dispatchXhrRequest(resolve, reject) { @@ -2335,7 +2350,7 @@ var Figma = (() => { }); }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/composeSignals.js + // node_modules/axios/lib/helpers/composeSignals.js var composeSignals = (signals, timeout) => { signals = signals ? signals.filter(Boolean) : []; if (!timeout && !signals.length) { @@ -2375,7 +2390,7 @@ var Figma = (() => { }; var composeSignals_default = composeSignals; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/trackStream.js + // node_modules/axios/lib/helpers/trackStream.js var streamChunk = function* (chunk, chunkSize) { let len = chunk.byteLength; if (!chunkSize || len < chunkSize) { @@ -2455,7 +2470,7 @@ var Figma = (() => { ); }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js + // node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js var isHexDigit = (charCode) => charCode >= 48 && charCode <= 57 || charCode >= 65 && charCode <= 70 || charCode >= 97 && charCode <= 102; var isPercentEncodedByte = (str, i, len) => i + 2 < len && isHexDigit(str.charCodeAt(i + 1)) && isHexDigit(str.charCodeAt(i + 2)); function estimateDataURLDecodedBytes(url) { @@ -2530,10 +2545,10 @@ var Figma = (() => { return bytes; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/env/data.js + // node_modules/axios/lib/env/data.js var VERSION = "1.18.1"; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/fetch.js + // node_modules/axios/lib/adapters/fetch.js var DEFAULT_CHUNK_SIZE = 64 * 1024; var { isFunction: isFunction2 } = utils_default; var encodeUTF82 = (str) => encodeURIComponent(str).replace( @@ -2950,7 +2965,7 @@ var Figma = (() => { }; var adapter = getFetch(); - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/adapters.js + // node_modules/axios/lib/adapters/adapters.js var knownAdapters = { http: null_default, xhr: xhr_default, @@ -3015,7 +3030,7 @@ var Figma = (() => { adapters: knownAdapters }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/dispatchRequest.js + // node_modules/axios/lib/core/dispatchRequest.js function throwIfCancellationRequested(config) { if (config.cancelToken) { config.cancelToken.throwIfRequested(); @@ -3066,7 +3081,7 @@ var Figma = (() => { ); } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/validator.js + // node_modules/axios/lib/helpers/validator.js var validators = {}; ["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { validators[type] = function validator(thing) { @@ -3133,7 +3148,7 @@ var Figma = (() => { validators }; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/Axios.js + // node_modules/axios/lib/core/Axios.js var validators2 = validator_default.validators; var Axios = class { constructor(instanceConfig) { @@ -3337,7 +3352,7 @@ var Figma = (() => { }); var Axios_default = Axios; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/cancel/CancelToken.js + // node_modules/axios/lib/cancel/CancelToken.js var CancelToken = class _CancelToken { constructor(executor) { if (typeof executor !== "function") { @@ -3435,19 +3450,19 @@ var Figma = (() => { }; var CancelToken_default = CancelToken; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/spread.js + // node_modules/axios/lib/helpers/spread.js function spread(callback) { return function wrap(arr) { return callback.apply(null, arr); }; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/isAxiosError.js + // node_modules/axios/lib/helpers/isAxiosError.js function isAxiosError(payload) { return utils_default.isObject(payload) && payload.isAxiosError === true; } - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/HttpStatusCode.js + // node_modules/axios/lib/helpers/HttpStatusCode.js var HttpStatusCode = { Continue: 100, SwitchingProtocols: 101, @@ -3524,7 +3539,7 @@ var Figma = (() => { }); var HttpStatusCode_default = HttpStatusCode; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/axios.js + // node_modules/axios/lib/axios.js function createInstance(defaultConfig) { const context = new Axios_default(defaultConfig); const instance = bind(Axios_default.prototype.request, context); @@ -3557,7 +3572,7 @@ var Figma = (() => { axios.default = axios; var axios_default = axios; - // node_modules/.pnpm/axios@1.18.1/node_modules/axios/index.js + // node_modules/axios/index.js var { Axios: Axios2, AxiosError: AxiosError2, @@ -3612,6 +3627,10 @@ var Figma = (() => { this.getFileVersions = getFileVersionsApi; this.getTeamProjects = getTeamProjectsApi; this.getProjectFiles = getProjectFilesApi; + this.getTeamFolders = getTeamFoldersApi; + this.getFolderFolders = getFolderFoldersApi; + this.getFolderFiles = getFolderFilesApi; + this.getFolderMeta = getFolderMetaApi; this.getTeamComponents = getTeamComponentsApi; this.getFileComponents = getFileComponentsApi; this.getComponent = getComponentApi; diff --git a/lib/figma-api.min.js b/lib/figma-api.min.js index 59ed917..b4a5f7d 100644 --- a/lib/figma-api.min.js +++ b/lib/figma-api.min.js @@ -1,9 +1,9 @@ -"use strict";var Figma=(()=>{var Ze=Object.defineProperty;var dr=Object.getOwnPropertyDescriptor;var hr=Object.getOwnPropertyNames;var Ar=Object.prototype.hasOwnProperty;var Nt=(e,t)=>{for(var s in t)Ze(e,s,{get:t[s],enumerable:!0})},yr=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of hr(t))!Ar.call(e,n)&&n!==s&&Ze(e,n,{get:()=>t[n],enumerable:!(r=dr(t,n))||r.enumerable});return e};var gr=e=>yr(Ze({},"__esModule",{value:!0}),e);var io={};Nt(io,{API_DOMAIN:()=>R,API_VER:()=>E,API_VER_WEBHOOKS:()=>Y,Api:()=>Ot,oAuthLink:()=>no,oAuthToken:()=>oo});var R="https://api.figma.com",E="v1",Y="v2";function I(e){return e?Object.entries(e).map(([t,s])=>t&&s!==void 0&&s!==null&&s!==""&&`${t}=${encodeURIComponent(s)}`).filter(Boolean).join("&"):""}var ye=class e extends Error{constructor(s){super(s.message);this.error=s;this.name="ApiError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}};function Ut(e,t){let s=I(t);return this.request(`${R}/${"v1"}/files/${e.file_key}?${s}`)}function qt(e,t){let s=I(t);return this.request(`${R}/${"v1"}/files/${e.file_key}/nodes?${s}`)}function Bt(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/meta`)}function jt(e,t){let s=I(t);return this.request(`${R}/${"v1"}/images/${e.file_key}?${s}`)}function Ht(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/images`)}function Gt(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/comments`)}function Mt(e,t){return this.request(`${R}/${"v1"}/files/${e.file_key}/comments`,{method:"POST",data:t})}function Vt(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}`,{method:"DELETE",data:""})}function vt(e,t){let s=I(t);return this.request(`${R}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}/reactions?${s}`)}function Wt(e,t){return this.request(`${R}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}/reactions`,{method:"POST",data:t})}function zt(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}/reactions`,{method:"DELETE",data:""})}function Qt(){return this.request(`${R}/${"v1"}/me`)}function Jt(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/versions`)}function Kt(e){return this.request(`${R}/${"v1"}/teams/${e.team_id}/projects`)}function Xt(e,t){let s=I(t);return this.request(`${R}/${"v1"}/projects/${e.project_id}/files?${s}`)}function Zt(e,t){let s=I(t);return this.request(`${R}/${"v1"}/teams/${e.team_id}/components?${s}`)}function Yt(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/components`)}function es(e){return this.request(`${R}/${"v1"}/components/${e.key}`)}function ts(e,t){let s=I(t);return this.request(`${R}/${"v1"}/teams/${e.team_id}/component_sets?${s}`)}function ss(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/component_sets`)}function rs(e){return this.request(`${R}/${"v1"}/component_sets/${e.key}`)}function ns(e,t){let s=I(t);return this.request(`${R}/${"v1"}/teams/${e.team_id}/styles?${s}`)}function os(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/styles`)}function is(e){return this.request(`${R}/${"v1"}/styles/${e.key}`)}function as(e){return this.request(`${R}/${"v2"}/webhooks/${e.webhook_id}`)}function ls(e){return this.request(`${R}/${"v2"}/webhooks`,{method:"POST",data:e})}function us(e,t){return this.request(`${R}/${"v2"}/webhooks/${e.webhook_id}`,{method:"PUT",data:t})}function cs(e){return this.request(`${R}/${"v2"}/webhooks/${e.webhook_id}/`,{method:"DELETE",data:""})}function fs(e){return this.request(`${R}/${"v2"}/teams/${e.team_id}/webhooks`)}function ps(e){return this.request(`${R}/${"v2"}/webhooks/${e.webhook_id}/requests`)}function ms(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/variables/local`)}function ds(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/variables/published`)}function hs(e,t){return this.request(`${R}/${"v1"}/files/${e.file_key}/variables`,{method:"POST",data:t})}function As(e,t){let s=I(t);return this.request(`${R}/${"v1"}/files/${e.file_key}/dev_resources`)}function ys(e){return this.request(`${R}/${"v1"}/dev_resources`,{method:"POST",data:e})}function gs(e){return this.request(`${R}/${"v1"}/dev_resources`,{method:"PUT",data:e})}function Rs(e){return this.request(`${R}/${"v1"}/files/${e.file_key}/dev_resources/${e.dev_resource_id}`,{method:"DELETE",data:""})}function Ps(e,t){let s=I(t);return this.request(`${R}/${"v1"}/analytics/libraries/${e.file_key}/component/actions?${s}`)}function bs(e,t){let s=I(t);return this.request(`${R}/${"v1"}/analytics/libraries/${e.file_key}/component/usages?${s}`)}function Es(e,t){let s=I(t);return this.request(`${R}/${"v1"}/analytics/libraries/${e.file_key}/style/actions?${s}`)}function ws(e,t){let s=I(t);return this.request(`${R}/${"v1"}/analytics/libraries/${e.file_key}/style/usages?${s}`)}function xs(e,t){let s=I(t);return this.request(`${R}/${"v1"}/analytics/libraries/${e.file_key}/variable/actions?${s}`)}function Ss(e,t){let s=I(t);return this.request(`${R}/${"v1"}/analytics/libraries/${e.file_key}/variable/usages?${s}`)}function ge(e,t){return function(){return e.apply(t,arguments)}}var{toString:Pr}=Object.prototype,{getPrototypeOf:re}=Object,{iterator:Pe,toStringTag:Os}=Symbol,$e=(({hasOwnProperty:e})=>(t,s)=>e.call(t,s))(Object.prototype),Re=(e,t)=>{let s=e,r=[];for(;s!=null&&s!==Object.prototype;){if(r.indexOf(s)!==-1)return!1;if(r.push(s),$e(s,t))return!0;s=re(s)}return!1},br=(e,t)=>e!=null&&Re(e,t)?e[t]:void 0,et=(e=>t=>{let s=Pr.call(t);return e[s]||(e[s]=s.slice(8,-1).toLowerCase())})(Object.create(null)),B=e=>(e=e.toLowerCase(),t=>et(t)===e),Ne=e=>t=>typeof t===e,{isArray:te}=Array,ne=Ne("undefined");function oe(e){return e!==null&&!ne(e)&&e.constructor!==null&&!ne(e.constructor)&&N(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Fs=B("ArrayBuffer");function Er(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Fs(e.buffer),t}var wr=Ne("string"),N=Ne("function"),Ts=Ne("number"),ie=e=>e!==null&&typeof e=="object",xr=e=>e===!0||e===!1,ke=e=>{if(!ie(e))return!1;let t=re(e);return(t===null||t===Object.prototype||re(t)===null)&&!Re(e,Os)&&!Re(e,Pe)},Sr=e=>{if(!ie(e)||oe(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},Cr=B("Date"),_r=B("File"),Or=e=>!!(e&&typeof e.uri<"u"),Fr=e=>e&&typeof e.getParts<"u",Tr=B("Blob"),Ir=B("FileList"),Dr=e=>ie(e)&&N(e.pipe);function Lr(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}var Cs=Lr(),_s=typeof Cs.FormData<"u"?Cs.FormData:void 0,kr=e=>{if(!e)return!1;if(_s&&e instanceof _s)return!0;let t=re(e);if(!t||t===Object.prototype||!N(e.append))return!1;let s=et(e);return s==="formdata"||s==="object"&&N(e.toString)&&e.toString()==="[object FormData]"},$r=B("URLSearchParams"),[Nr,Ur,qr,Br]=["ReadableStream","Request","Response","Headers"].map(B),jr=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function be(e,t,{allOwnKeys:s=!1}={}){if(e===null||typeof e>"u")return;let r,n;if(typeof e!="object"&&(e=[e]),te(e))for(r=0,n=e.length;r0;)if(n=s[r],t===n.toLowerCase())return n;return null}var ee=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Ds=e=>!ne(e)&&e!==ee;function Ye(...e){let{caseless:t,skipUndefined:s}=Ds(this)&&this||{},r={},n=(o,a)=>{if(a==="__proto__"||a==="constructor"||a==="prototype")return;let l=t&&typeof a=="string"&&Is(r,a)||a,u=$e(r,l)?r[l]:void 0;ke(u)&&ke(o)?r[l]=Ye(u,o):ke(o)?r[l]=Ye({},o):te(o)?r[l]=o.slice():(!s||!ne(o))&&(r[l]=o)};for(let o=0,a=e.length;o(be(t,(n,o)=>{s&&N(n)?Object.defineProperty(e,o,{__proto__:null,value:ge(n,s),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,o,{__proto__:null,value:n,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),Gr=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Mr=(e,t,s,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),s&&Object.assign(e.prototype,s)},Vr=(e,t,s,r)=>{let n,o,a,l={};if(t=t||{},e==null)return t;do{for(n=Object.getOwnPropertyNames(e),o=n.length;o-- >0;)a=n[o],(!r||r(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=s!==!1&&re(e)}while(e&&(!s||s(e,t))&&e!==Object.prototype);return t},vr=(e,t,s)=>{e=String(e),(s===void 0||s>e.length)&&(s=e.length),s-=t.length;let r=e.indexOf(t,s);return r!==-1&&r===s},Wr=e=>{if(!e)return null;if(te(e))return e;let t=e.length;if(!Ts(t))return null;let s=new Array(t);for(;t-- >0;)s[t]=e[t];return s},zr=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&re(Uint8Array)),Qr=(e,t)=>{let r=(e&&e[Pe]).call(e),n;for(;(n=r.next())&&!n.done;){let o=n.value;t.call(e,o[0],o[1])}},Jr=(e,t)=>{let s,r=[];for(;(s=e.exec(t))!==null;)r.push(s);return r},Kr=B("HTMLFormElement"),Xr=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(s,r,n){return r.toUpperCase()+n}),{propertyIsEnumerable:Zr}=Object.prototype,Yr=B("RegExp"),Ls=(e,t)=>{let s=Object.getOwnPropertyDescriptors(e),r={};be(s,(n,o)=>{let a;(a=t(n,o,e))!==!1&&(r[o]=a||n)}),Object.defineProperties(e,r)},en=e=>{Ls(e,(t,s)=>{if(N(e)&&["arguments","caller","callee"].includes(s))return!1;let r=e[s];if(N(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+s+"'")})}})},tn=(e,t)=>{let s={},r=n=>{n.forEach(o=>{s[o]=!0})};return te(e)?r(e):r(String(e).split(t)),s},sn=()=>{},rn=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function nn(e){return!!(e&&N(e.append)&&e[Os]==="FormData"&&e[Pe])}var on=e=>{let t=new WeakSet,s=r=>{if(ie(r)){if(t.has(r))return;if(oe(r))return r;if(!("toJSON"in r)){t.add(r);let n=te(r)?[]:{};return be(r,(o,a)=>{let l=s(o);!ne(l)&&(n[a]=l)}),t.delete(r),n}}return r};return s(e)},an=B("AsyncFunction"),ln=e=>e&&(ie(e)||N(e))&&N(e.then)&&N(e.catch),ks=((e,t)=>e?setImmediate:t?((s,r)=>(ee.addEventListener("message",({source:n,data:o})=>{n===ee&&o===s&&r.length&&r.shift()()},!1),n=>{r.push(n),ee.postMessage(s,"*")}))(`axios@${Math.random()}`,[]):s=>setTimeout(s))(typeof setImmediate=="function",N(ee.postMessage)),un=typeof queueMicrotask<"u"?queueMicrotask.bind(ee):typeof process<"u"&&process.nextTick||ks,$s=e=>e!=null&&N(e[Pe]),cn=e=>e!=null&&Re(e,Pe)&&$s(e),i={isArray:te,isArrayBuffer:Fs,isBuffer:oe,isFormData:kr,isArrayBufferView:Er,isString:wr,isNumber:Ts,isBoolean:xr,isObject:ie,isPlainObject:ke,isEmptyObject:Sr,isReadableStream:Nr,isRequest:Ur,isResponse:qr,isHeaders:Br,isUndefined:ne,isDate:Cr,isFile:_r,isReactNativeBlob:Or,isReactNative:Fr,isBlob:Tr,isRegExp:Yr,isFunction:N,isStream:Dr,isURLSearchParams:$r,isTypedArray:zr,isFileList:Ir,forEach:be,merge:Ye,extend:Hr,trim:jr,stripBOM:Gr,inherits:Mr,toFlatObject:Vr,kindOf:et,kindOfTest:B,endsWith:vr,toArray:Wr,forEachEntry:Qr,matchAll:Jr,isHTMLForm:Kr,hasOwnProperty:$e,hasOwnProp:$e,hasOwnInPrototypeChain:Re,getSafeProp:br,reduceDescriptors:Ls,freezeMethods:en,toObjectSet:tn,toCamelCase:Xr,noop:sn,toFiniteNumber:rn,findKey:Is,global:ee,isContextDefined:Ds,isSpecCompliantForm:nn,toJSONObject:on,isAsyncFn:an,isThenable:ln,setImmediate:ks,asap:un,isIterable:$s,isSafeIterable:cn};var fn=i.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Ns=e=>{let t={},s,r,n;return e&&e.split(` -`).forEach(function(a){n=a.indexOf(":"),s=a.substring(0,n).trim().toLowerCase(),r=a.substring(n+1).trim(),!(!s||t[s]&&fn[s])&&(s==="set-cookie"?t[s]?t[s].push(r):t[s]=[r]:t[s]=t[s]?t[s]+", "+r:r)}),t};function pn(e){let t=0,s=e.length;for(;tt;){let r=e.charCodeAt(s-1);if(r!==9&&r!==32)break;s-=1}return t===0&&s===e.length?e:e.slice(t,s)}var mn=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),dn=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function tt(e,t){return i.isArray(e)?e.map(s=>tt(s,t)):pn(String(e).replace(t,""))}var Us=e=>tt(e,mn),hn=e=>tt(e,dn);function Ue(e){let t=Object.create(null);return i.forEach(e.toJSON(),(s,r)=>{t[r]=hn(s)}),t}var qs=Symbol("internals");function Ee(e){return e&&String(e).trim().toLowerCase()}function qe(e){return e===!1||e==null?e:i.isArray(e)?e.map(qe):Us(String(e))}function An(e){let t=Object.create(null),s=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,r;for(;r=s.exec(e);)t[r[1]]=r[2];return t}var yn=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function st(e,t,s,r,n){if(i.isFunction(r))return r.call(this,t,s);if(n&&(t=s),!!i.isString(t)){if(i.isString(r))return t.indexOf(r)!==-1;if(i.isRegExp(r))return r.test(t)}}function gn(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,s,r)=>s.toUpperCase()+r)}function Rn(e,t){let s=i.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+s,{__proto__:null,value:function(n,o,a){return this[r].call(this,t,n,o,a)},configurable:!0})})}var ae=class{constructor(t){t&&this.set(t)}set(t,s,r){let n=this;function o(l,u,f){let c=Ee(u);if(!c)return;let m=i.findKey(n,c);(!m||n[m]===void 0||f===!0||f===void 0&&n[m]!==!1)&&(n[m||u]=qe(l))}let a=(l,u)=>i.forEach(l,(f,c)=>o(f,c,u));if(i.isPlainObject(t)||t instanceof this.constructor)a(t,s);else if(i.isString(t)&&(t=t.trim())&&!yn(t))a(Ns(t),s);else if(i.isObject(t)&&i.isSafeIterable(t)){let l=Object.create(null),u,f;for(let c of t){if(!i.isArray(c))throw new TypeError("Object iterator must return a key-value pair");f=c[0],i.hasOwnProp(l,f)?(u=l[f],l[f]=i.isArray(u)?[...u,c[1]]:[u,c[1]]):l[f]=c[1]}a(l,s)}else t!=null&&o(s,t,r);return this}get(t,s){if(t=Ee(t),t){let r=i.findKey(this,t);if(r){let n=this[r];if(!s)return n;if(s===!0)return An(n);if(i.isFunction(s))return s.call(this,n,r);if(i.isRegExp(s))return s.exec(n);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,s){if(t=Ee(t),t){let r=i.findKey(this,t);return!!(r&&this[r]!==void 0&&(!s||st(this,this[r],r,s)))}return!1}delete(t,s){let r=this,n=!1;function o(a){if(a=Ee(a),a){let l=i.findKey(r,a);l&&(!s||st(r,r[l],l,s))&&(delete r[l],n=!0)}}return i.isArray(t)?t.forEach(o):o(t),n}clear(t){let s=Object.keys(this),r=s.length,n=!1;for(;r--;){let o=s[r];(!t||st(this,this[o],o,t,!0))&&(delete this[o],n=!0)}return n}normalize(t){let s=this,r={};return i.forEach(this,(n,o)=>{let a=i.findKey(r,o);if(a){s[a]=qe(n),delete s[o];return}let l=t?gn(o):String(o).trim();l!==o&&delete s[o],s[l]=qe(n),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let s=Object.create(null);return i.forEach(this,(r,n)=>{r!=null&&r!==!1&&(s[n]=t&&i.isArray(r)?r.join(", "):r)}),s}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,s])=>t+": "+s).join(` -`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...s){let r=new this(t);return s.forEach(n=>r.set(n)),r}static accessor(t){let r=(this[qs]=this[qs]={accessors:{}}).accessors,n=this.prototype;function o(a){let l=Ee(a);r[l]||(Rn(n,a),r[l]=!0)}return i.isArray(t)?t.forEach(o):o(t),this}};ae.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);i.reduceDescriptors(ae.prototype,({value:e},t)=>{let s=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[s]=r}}});i.freezeMethods(ae);var F=ae;var Pn="[REDACTED ****]";function bn(e){if(i.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(i.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function En(e,t){let s=new Set(t.map(o=>String(o).toLowerCase())),r=[],n=o=>{if(o===null||typeof o!="object"||i.isBuffer(o))return o;if(r.indexOf(o)!==-1)return;o instanceof F&&(o=o.toJSON()),r.push(o);let a;if(i.isArray(o))a=[],o.forEach((l,u)=>{let f=n(l);i.isUndefined(f)||(a[u]=f)});else{if(!i.isPlainObject(o)&&bn(o))return r.pop(),o;a=Object.create(null);for(let[l,u]of Object.entries(o)){let f=s.has(l.toLowerCase())?Pn:n(u);i.isUndefined(f)||(a[l]=f)}}return r.pop(),a};return n(e)}var L=class e extends Error{static from(t,s,r,n,o,a){let l=new e(t.message,s||t.code,r,n,o);return Object.defineProperty(l,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),l.name=t.name,t.status!=null&&l.status==null&&(l.status=t.status),a&&Object.assign(l,a),l}constructor(t,s,r,n,o){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,s&&(this.code=s),r&&(this.config=r),n&&(this.request=n),o&&(this.response=o,this.status=o.status)}toJSON(){let t=this.config,s=t&&i.hasOwnProp(t,"redact")?t.redact:void 0,r=i.isArray(s)&&s.length>0?En(t,s):i.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:r,code:this.code,status:this.status}}};L.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";L.ERR_BAD_OPTION="ERR_BAD_OPTION";L.ECONNABORTED="ECONNABORTED";L.ETIMEDOUT="ETIMEDOUT";L.ECONNREFUSED="ECONNREFUSED";L.ERR_NETWORK="ERR_NETWORK";L.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";L.ERR_DEPRECATED="ERR_DEPRECATED";L.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";L.ERR_BAD_REQUEST="ERR_BAD_REQUEST";L.ERR_CANCELED="ERR_CANCELED";L.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";L.ERR_INVALID_URL="ERR_INVALID_URL";L.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";var d=L;var Be=null;var ot=100;function nt(e){return i.isPlainObject(e)||i.isArray(e)}function Bs(e){return i.endsWith(e,"[]")?e.slice(0,-2):e}function rt(e,t,s){return e?e.concat(t).map(function(n,o){return n=Bs(n),!s&&o?"["+n+"]":n}).join(s?".":""):t}function wn(e){return i.isArray(e)&&!e.some(nt)}var xn=i.toFlatObject(i,{},null,function(t){return/^is[A-Z]/.test(t)});function Sn(e,t,s){if(!i.isObject(e))throw new TypeError("target must be an object");t=t||new(Be||FormData),s=i.toFlatObject(s,{metaTokens:!0,dots:!1,indexes:!1},!1,function(A,P){return!i.isUndefined(P[A])});let r=s.metaTokens,n=s.visitor||w,o=s.dots,a=s.indexes,l=s.Blob||typeof Blob<"u"&&Blob,u=s.maxDepth===void 0?ot:s.maxDepth,f=l&&i.isSpecCompliantForm(t),c=[];if(!i.isFunction(n))throw new TypeError("visitor must be a function");function m(p){if(p===null)return"";if(i.isDate(p))return p.toISOString();if(i.isBoolean(p))return p.toString();if(!f&&i.isBlob(p))throw new d("Blob is not supported. Use a Buffer instead.");if(i.isArrayBuffer(p)||i.isTypedArray(p)){if(f&&typeof l=="function")return new l([p]);if(typeof Buffer<"u")return Buffer.from(p);throw new d("Blob is not supported. Use a Buffer instead.",d.ERR_NOT_SUPPORT)}return p}function y(p){if(p>u)throw new d("Object is too deeply nested ("+p+" levels). Max depth: "+u,d.ERR_FORM_DATA_DEPTH_EXCEEDED)}function g(p,A){if(u===1/0)return JSON.stringify(p);let P=[];return JSON.stringify(p,function(k,O){if(!i.isObject(O))return O;for(;P.length&&P[P.length-1]!==this;)P.pop();return P.push(O),y(A+P.length-1),O})}function w(p,A,P){let S=p;if(i.isReactNative(t)&&i.isReactNativeBlob(p))return t.append(rt(P,A,o),m(p)),!1;if(p&&!P&&typeof p=="object"){if(i.endsWith(A,"{}"))A=r?A:A.slice(0,-2),p=g(p,1);else if(i.isArray(p)&&wn(p)||(i.isFileList(p)||i.endsWith(A,"[]"))&&(S=i.toArray(p)))return A=Bs(A),S.forEach(function(O,v){!(i.isUndefined(O)||O===null)&&t.append(a===!0?rt([A],v,o):a===null?A:A+"[]",m(O))}),!1}return nt(p)?!0:(t.append(rt(P,A,o),m(p)),!1)}let x=Object.assign(xn,{defaultVisitor:w,convertValue:m,isVisitable:nt});function h(p,A,P=0){if(!i.isUndefined(p)){if(y(P),c.indexOf(p)!==-1)throw new Error("Circular reference detected in "+A.join("."));c.push(p),i.forEach(p,function(k,O){(!(i.isUndefined(k)||k===null)&&n.call(t,k,i.isString(O)?O.trim():O,A,x))===!0&&h(k,A?A.concat(O):[O],P+1)}),c.pop()}}if(!i.isObject(e))throw new TypeError("data must be an object");return h(e),t}var K=Sn;function js(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Hs(e,t){this._pairs=[],e&&K(e,this,t)}var Gs=Hs.prototype;Gs.append=function(t,s){this._pairs.push([t,s])};Gs.toString=function(t){let s=t?r=>t.call(this,r,js):js;return this._pairs.map(function(n){return s(n[0])+"="+s(n[1])},"").join("&")};var je=Hs;function Cn(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function we(e,t,s){if(!t)return e;e=e||"";let r=i.isFunction(s)?{serialize:s}:s,n=i.getSafeProp(r,"encode")||Cn,o=i.getSafeProp(r,"serialize"),a;if(o?a=o(t,r):a=i.isURLSearchParams(t)?t.toString():new je(t,r).toString(n),a){let l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var it=class{constructor(){this.handlers=[]}use(t,s,r){return this.handlers.push({fulfilled:t,rejected:s,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){i.forEach(this.handlers,function(r){r!==null&&t(r)})}},at=it;var le={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0};var Ms=typeof URLSearchParams<"u"?URLSearchParams:je;var Vs=typeof FormData<"u"?FormData:null;var vs=typeof Blob<"u"?Blob:null;var Ws={isBrowser:!0,classes:{URLSearchParams:Ms,FormData:Vs,Blob:vs},protocols:["http","https","file","blob","url","data"]};var ct={};Nt(ct,{hasBrowserEnv:()=>ut,hasStandardBrowserEnv:()=>_n,hasStandardBrowserWebWorkerEnv:()=>On,navigator:()=>lt,origin:()=>Fn});var ut=typeof window<"u"&&typeof document<"u",lt=typeof navigator=="object"&&navigator||void 0,_n=ut&&(!lt||["ReactNative","NativeScript","NS"].indexOf(lt.product)<0),On=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Fn=ut&&window.location.href||"http://localhost";var _={...ct,...Ws};function ft(e,t){return K(e,new _.classes.URLSearchParams,{visitor:function(s,r,n,o){return _.isNode&&i.isBuffer(s)?(this.append(r,s.toString("base64")),!1):o.defaultVisitor.apply(this,arguments)},...t})}var zs=ot;function Qs(e){if(e>zs)throw new d("FormData field is too deeply nested ("+e+" levels). Max depth: "+zs,d.ERR_FORM_DATA_DEPTH_EXCEEDED)}function Tn(e){let t=[],s=/\w+|\[(\w*)]/g,r;for(;(r=s.exec(e))!==null;)Qs(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function In(e){let t={},s=Object.keys(e),r,n=s.length,o;for(r=0;r=s.length;return a=!a&&i.isArray(n)?n.length:a,u?(i.hasOwnProp(n,a)?n[a]=i.isArray(n[a])?n[a].concat(r):[n[a],r]:n[a]=r,!l):((!i.hasOwnProp(n,a)||!i.isObject(n[a]))&&(n[a]=[]),t(s,r,n[a],o)&&i.isArray(n[a])&&(n[a]=In(n[a])),!l)}if(i.isFormData(e)&&i.isFunction(e.entries)){let s={};return i.forEachEntry(e,(r,n)=>{t(Tn(r),n,s,0)}),s}return null}var He=Dn;var ue=(e,t)=>e!=null&&i.hasOwnProp(e,t)?e[t]:void 0;function Ln(e,t,s){if(i.isString(e))try{return(t||JSON.parse)(e),i.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(s||JSON.stringify)(e)}var pt={transitional:le,adapter:["xhr","http","fetch"],transformRequest:[function(t,s){let r=s.getContentType()||"",n=r.indexOf("application/json")>-1,o=i.isObject(t);if(o&&i.isHTMLForm(t)&&(t=new FormData(t)),i.isFormData(t))return n?JSON.stringify(He(t)):t;if(i.isArrayBuffer(t)||i.isBuffer(t)||i.isStream(t)||i.isFile(t)||i.isBlob(t)||i.isReadableStream(t))return t;if(i.isArrayBufferView(t))return t.buffer;if(i.isURLSearchParams(t))return s.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(o){let u=ue(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return ft(t,u).toString();if((l=i.isFileList(t))||r.indexOf("multipart/form-data")>-1){let f=ue(this,"env"),c=f&&f.FormData;return K(l?{"files[]":t}:t,c&&new c,u)}}return o||n?(s.setContentType("application/json",!1),Ln(t)):t}],transformResponse:[function(t){let s=ue(this,"transitional")||pt.transitional,r=s&&s.forcedJSONParsing,n=ue(this,"responseType"),o=n==="json";if(i.isResponse(t)||i.isReadableStream(t))return t;if(t&&i.isString(t)&&(r&&!n||o)){let l=!(s&&s.silentJSONParsing)&&o;try{return JSON.parse(t,ue(this,"parseReviver"))}catch(u){if(l)throw u.name==="SyntaxError"?d.from(u,d.ERR_BAD_RESPONSE,this,null,ue(this,"response")):u}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:_.classes.FormData,Blob:_.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};i.forEach(["delete","get","head","post","put","patch","query"],e=>{pt.headers[e]={}});var ce=pt;function xe(e,t){let s=this||ce,r=t||s,n=F.from(r.headers),o=r.data;return i.forEach(e,function(l){o=l.call(s,o,n.normalize(),t?t.status:void 0)}),n.normalize(),o}function Se(e){return!!(e&&e.__CANCEL__)}var mt=class extends d{constructor(t,s,r){super(t??"canceled",d.ERR_CANCELED,s,r),this.name="CanceledError",this.__CANCEL__=!0}},G=mt;function Ce(e,t,s){let r=s.config.validateStatus;!s.status||!r||r(s.status)?e(s):t(new d("Request failed with status code "+s.status,s.status>=400&&s.status<500?d.ERR_BAD_REQUEST:d.ERR_BAD_RESPONSE,s.config,s.request,s))}function dt(e){let t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function kn(e,t){e=e||10;let s=new Array(e),r=new Array(e),n=0,o=0,a;return t=t!==void 0?t:1e3,function(u){let f=Date.now(),c=r[o];a||(a=f),s[n]=u,r[n]=f;let m=o,y=0;for(;m!==n;)y+=s[m++],m=m%e;if(n=(n+1)%e,n===o&&(o=(o+1)%e),f-a{s=c,n=null,o&&(clearTimeout(o),o=null),e(...f)};return[(...f)=>{let c=Date.now(),m=c-s;m>=r?a(f,c):(n=f,o||(o=setTimeout(()=>{o=null,a(n)},r-m)))},()=>n&&a(n)]}var Ks=$n;var fe=(e,t,s=3)=>{let r=0,n=Js(50,250);return Ks(o=>{if(!o||typeof o.loaded!="number")return;let a=o.loaded,l=o.lengthComputable?o.total:void 0,u=l!=null?Math.min(a,l):a,f=Math.max(0,u-r),c=n(f);r=Math.max(r,u);let m={loaded:u,total:l,progress:l?u/l:void 0,bytes:f,rate:c||void 0,estimated:c&&l?(l-u)/c:void 0,event:o,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(m)},s)},ht=(e,t)=>{let s=e!=null;return[r=>t[0]({lengthComputable:s,total:e,loaded:r}),t[1]]},At=e=>(...t)=>i.asap(()=>e(...t));var Xs=_.hasStandardBrowserEnv?((e,t)=>s=>(s=new URL(s,_.origin),e.protocol===s.protocol&&e.host===s.host&&(t||e.port===s.port)))(new URL(_.origin),_.navigator&&/(msie|trident)/i.test(_.navigator.userAgent)):()=>!0;var Zs=_.hasStandardBrowserEnv?{write(e,t,s,r,n,o,a){if(typeof document>"u")return;let l=[`${e}=${encodeURIComponent(t)}`];i.isNumber(s)&&l.push(`expires=${new Date(s).toUTCString()}`),i.isString(r)&&l.push(`path=${r}`),i.isString(n)&&l.push(`domain=${n}`),o===!0&&l.push("secure"),i.isString(a)&&l.push(`SameSite=${a}`),document.cookie=l.join("; ")},read(e){if(typeof document>"u")return null;let t=document.cookie.split(";");for(let s=0;se instanceof F?{...e}:e;function j(e,t){e=e||{},t=t||{};let s=Object.create(null);Object.defineProperty(s,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(c,m,y,g){return i.isPlainObject(c)&&i.isPlainObject(m)?i.merge.call({caseless:g},c,m):i.isPlainObject(m)?i.merge({},m):i.isArray(m)?m.slice():m}function n(c,m,y,g){if(i.isUndefined(m)){if(!i.isUndefined(c))return r(void 0,c,y,g)}else return r(c,m,y,g)}function o(c,m){if(!i.isUndefined(m))return r(void 0,m)}function a(c,m){if(i.isUndefined(m)){if(!i.isUndefined(c))return r(void 0,c)}else return r(void 0,m)}function l(c){let m=i.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!i.isUndefined(m))if(i.isPlainObject(m)){if(i.hasOwnProp(m,c))return m[c]}else return;let y=i.hasOwnProp(e,"transitional")?e.transitional:void 0;if(i.isPlainObject(y)&&i.hasOwnProp(y,c))return y[c]}function u(c,m,y){if(i.hasOwnProp(t,y))return r(c,m);if(i.hasOwnProp(e,y))return r(void 0,c)}let f={url:o,method:o,data:o,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,allowedSocketPaths:a,responseEncoding:a,validateStatus:u,headers:(c,m,y)=>n(er(c),er(m),y,!0)};return i.forEach(Object.keys({...e,...t}),function(m){if(m==="__proto__"||m==="constructor"||m==="prototype")return;let y=i.hasOwnProp(f,m)?f[m]:n,g=i.hasOwnProp(e,m)?e[m]:void 0,w=i.hasOwnProp(t,m)?t[m]:void 0,x=y(g,w,m);i.isUndefined(x)&&y!==u||(s[m]=x)}),i.hasOwnProp(t,"validateStatus")&&i.isUndefined(t.validateStatus)&&l("validateStatusUndefinedResolves")===!1&&(i.hasOwnProp(e,"validateStatus")?s.validateStatus=r(void 0,e.validateStatus):delete s.validateStatus),s}var jn=["content-type","content-length"];function Hn(e,t,s){if(s!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,n])=>{jn.includes(r.toLowerCase())&&e.set(r,n)})}var Gn=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,s)=>String.fromCharCode(parseInt(s,16)));function Mn(e){let t=j({},e),s=y=>i.hasOwnProp(t,y)?t[y]:void 0,r=s("data"),n=s("withXSRFToken"),o=s("xsrfHeaderName"),a=s("xsrfCookieName"),l=s("headers"),u=s("auth"),f=s("baseURL"),c=s("allowAbsoluteUrls"),m=s("url");if(t.headers=l=F.from(l),t.url=we(_e(f,m,c,t),s("params"),s("paramsSerializer")),u){let y=i.getSafeProp(u,"username")||"",g=i.getSafeProp(u,"password")||"";try{l.set("Authorization","Basic "+btoa(y+":"+(g?Gn(g):"")))}catch(w){throw d.from(w,d.ERR_BAD_OPTION_VALUE,e)}}if(i.isFormData(r)&&(_.hasStandardBrowserEnv||_.hasStandardBrowserWebWorkerEnv||i.isReactNative(r)?l.setContentType(void 0):i.isFunction(r.getHeaders)&&Hn(l,r.getHeaders(),s("formDataHeaderPolicy"))),_.hasStandardBrowserEnv&&(i.isFunction(n)&&(n=n(t)),n===!0||n==null&&Xs(t.url))){let g=o&&a&&Zs.read(a);g&&l.set(o,g)}return t}var Ge=Mn;var Vn=typeof XMLHttpRequest<"u",tr=Vn&&function(e){return new Promise(function(s,r){let n=Ge(e),o=n.data,a=F.from(n.headers).normalize(),{responseType:l,onUploadProgress:u,onDownloadProgress:f}=n,c,m,y,g,w;function x(){g&&g(),w&&w(),n.cancelToken&&n.cancelToken.unsubscribe(c),n.signal&&n.signal.removeEventListener("abort",c)}let h=new XMLHttpRequest;h.open(n.method.toUpperCase(),n.url,!0),h.timeout=n.timeout;function p(){if(!h)return;let P=F.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),k={data:!l||l==="text"||l==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:P,config:e,request:h};Ce(function(v){s(v),x()},function(v){r(v),x()},k),h=null}"onloadend"in h?h.onloadend=p:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.startsWith("file:"))||setTimeout(p)},h.onabort=function(){h&&(r(new d("Request aborted",d.ECONNABORTED,e,h)),x(),h=null)},h.onerror=function(S){let k=S&&S.message?S.message:"Network Error",O=new d(k,d.ERR_NETWORK,e,h);O.event=S||null,r(O),x(),h=null},h.ontimeout=function(){let S=n.timeout?"timeout of "+n.timeout+"ms exceeded":"timeout exceeded",k=n.transitional||le;n.timeoutErrorMessage&&(S=n.timeoutErrorMessage),r(new d(S,k.clarifyTimeoutError?d.ETIMEDOUT:d.ECONNABORTED,e,h)),x(),h=null},o===void 0&&a.setContentType(null),"setRequestHeader"in h&&i.forEach(Ue(a),function(S,k){h.setRequestHeader(k,S)}),i.isUndefined(n.withCredentials)||(h.withCredentials=!!n.withCredentials),l&&l!=="json"&&(h.responseType=n.responseType),f&&([y,w]=fe(f,!0),h.addEventListener("progress",y)),u&&h.upload&&([m,g]=fe(u),h.upload.addEventListener("progress",m),h.upload.addEventListener("loadend",g)),(n.cancelToken||n.signal)&&(c=P=>{h&&(r(!P||P.type?new G(null,e,h):P),h.abort(),x(),h=null)},n.cancelToken&&n.cancelToken.subscribe(c),n.signal&&(n.signal.aborted?c():n.signal.addEventListener("abort",c)));let A=dt(n.url);if(A&&!_.protocols.includes(A)){r(new d("Unsupported protocol "+A+":",d.ERR_BAD_REQUEST,e)),x();return}h.send(o||null)})};var vn=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;let s=new AbortController,r=!1,n=function(u){if(!r){r=!0,a();let f=u instanceof Error?u:this.reason;s.abort(f instanceof d?f:new G(f instanceof Error?f.message:f))}},o=t&&setTimeout(()=>{o=null,n(new d(`timeout of ${t}ms exceeded`,d.ETIMEDOUT))},t),a=()=>{e&&(o&&clearTimeout(o),o=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(n):u.removeEventListener("abort",n)}),e=null)};e.forEach(u=>u.addEventListener("abort",n,{once:!0}));let{signal:l}=s;return l.unsubscribe=()=>i.asap(a),l},sr=vn;var Wn=function*(e,t){let s=e.byteLength;if(!t||s{let n=zn(e,t),o=0,a,l=u=>{a||(a=!0,r&&r(u))};return new ReadableStream({async pull(u){try{let{done:f,value:c}=await n.next();if(f){l(),u.close();return}let m=c.byteLength;if(s){let y=o+=m;s(y)}u.enqueue(new Uint8Array(c))}catch(f){throw l(f),f}},cancel(u){return l(u),n.return()}},{highWaterMark:2})};var Me=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,Jn=(e,t,s)=>t+2g>=2&&r.charCodeAt(g-2)===37&&r.charCodeAt(g-1)===51&&(r.charCodeAt(g)===68||r.charCodeAt(g)===100);f>=0&&(r.charCodeAt(f)===61?(u++,f--):c(f)&&(u++,f-=3)),u===1&&f>=0&&(r.charCodeAt(f)===61||c(f))&&u++;let y=Math.floor(a/4)*3-(u||0);return y>0?y:0}let o=0;for(let a=0,l=r.length;a=55296&&u<=56319&&a+1=56320&&f<=57343?(o+=4,a++):o+=3}else o+=3}return o}var pe="1.18.1";var rr=64*1024,{isFunction:Ve}=i,Kn=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,s)=>String.fromCharCode(parseInt(s,16))),nr=e=>{if(!i.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},or=(e,...t)=>{try{return!!e(...t)}catch{return!1}},Xn=e=>{let t=e.indexOf("://"),s=e;return t!==-1&&(s=s.slice(t+3)),s.includes("@")||s.includes(":")},Zn=e=>{let t=i.global!==void 0&&i.global!==null?i.global:globalThis,{ReadableStream:s,TextEncoder:r}=t;e=i.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);let{fetch:n,Request:o,Response:a}=e,l=n?Ve(n):typeof fetch=="function",u=Ve(o),f=Ve(a);if(!l)return!1;let c=l&&Ve(s),m=l&&(typeof r=="function"?(p=>A=>p.encode(A))(new r):async p=>new Uint8Array(await new o(p).arrayBuffer())),y=u&&c&&or(()=>{let p=!1,A=new o(_.origin,{body:new s,method:"POST",get duplex(){return p=!0,"half"}}),P=A.headers.has("Content-Type");return A.body!=null&&A.body.cancel(),p&&!P}),g=f&&c&&or(()=>i.isReadableStream(new a("").body)),w={stream:g&&(p=>p.body)};l&&["text","arrayBuffer","blob","formData","stream"].forEach(p=>{!w[p]&&(w[p]=(A,P)=>{let S=A&&A[p];if(S)return S.call(A);throw new d(`Response type '${p}' is not supported`,d.ERR_NOT_SUPPORT,P)})});let x=async p=>{if(p==null)return 0;if(i.isBlob(p))return p.size;if(i.isSpecCompliantForm(p))return(await new o(_.origin,{method:"POST",body:p}).arrayBuffer()).byteLength;if(i.isArrayBufferView(p)||i.isArrayBuffer(p))return p.byteLength;if(i.isURLSearchParams(p)&&(p=p+""),i.isString(p))return(await m(p)).byteLength},h=async(p,A)=>{let P=i.toFiniteNumber(p.getContentLength());return P??x(A)};return async p=>{let{url:A,method:P,data:S,signal:k,cancelToken:O,timeout:v,onDownloadProgress:Qe,onUploadProgress:Je,responseType:W,headers:z,withCredentials:Ie="same-origin",fetchOptions:Ft,maxContentLength:H,maxBodyLength:De}=Ge(p),de=i.isNumber(H)&&H>-1,Ke=i.isNumber(De)&&De>-1,fr=C=>i.hasOwnProp(p,C)?p[C]:void 0,Tt=n||fetch;W=W?(W+"").toLowerCase():"text";let Q=sr([k,O&&O.toAbortSignal()],v),D=null,X=Q&&Q.unsubscribe&&(()=>{Q.unsubscribe()}),se,he=null,It=()=>new d("Request body larger than maxBodyLength limit",d.ERR_BAD_REQUEST,p,D);try{let C,q=fr("auth");if(q){let b=i.getSafeProp(q,"username")||"",U=i.getSafeProp(q,"password")||"";C={username:b,password:U}}if(Xn(A)){let b=new URL(A,_.origin);if(!C&&(b.username||b.password)){let U=nr(b.username),J=nr(b.password);C={username:U,password:J}}(b.username||b.password)&&(b.username="",b.password="",A=b.href)}if(C&&(z.delete("authorization"),z.set("Authorization","Basic "+btoa(Kn((C.username||"")+":"+(C.password||""))))),de&&typeof A=="string"&&A.startsWith("data:")&&Pt(A)>H)throw new d("maxContentLength size of "+H+" exceeded",d.ERR_BAD_RESPONSE,p,D);if(Ke&&P!=="get"&&P!=="head"){let b=await x(S);if(typeof b=="number"&&isFinite(b)&&(se=b,b>De))throw It()}let Le=Ke&&(i.isReadableStream(S)||i.isStream(S)),Dt=(b,U,J)=>Rt(b,rr,Z=>{if(Ke&&Z>De)throw he=It();U&&U(Z)},J);if(y&&P!=="get"&&P!=="head"&&(Je||Le)){if(se=se??await h(z,S),se!==0||Le){let b=new o(A,{method:"POST",body:S,duplex:"half"}),U;if(i.isFormData(S)&&(U=b.headers.get("content-type"))&&z.setContentType(U),b.body){let[J,Z]=Je&&ht(se,fe(At(Je)))||[];S=Dt(b.body,J,Z)}}}else if(Le&&!u&&c&&P!=="get"&&P!=="head")S=Dt(S);else if(Le&&u&&!y&&P!=="get"&&P!=="head")throw new d("Stream request bodies are not supported by the current fetch implementation",d.ERR_NOT_SUPPORT,p,D);i.isString(Ie)||(Ie=Ie?"include":"omit");let pr=u&&"credentials"in o.prototype;if(i.isFormData(S)){let b=z.getContentType();b&&/^multipart\/form-data/i.test(b)&&!/boundary=/i.test(b)&&z.delete("content-type")}z.set("User-Agent","axios/"+pe,!1);let Lt={...Ft,signal:Q,method:P.toUpperCase(),headers:Ue(z.normalize()),body:S,duplex:"half",credentials:pr?Ie:void 0};D=u&&new o(A,Lt);let M=await(u?Tt(D,Ft):Tt(A,Lt)),kt=F.from(M.headers);if(de){let b=i.toFiniteNumber(kt.getContentLength());if(b!=null&&b>H)throw new d("maxContentLength size of "+H+" exceeded",d.ERR_BAD_RESPONSE,p,D)}let Xe=g&&(W==="stream"||W==="response");if(g&&M.body&&(Qe||de||Xe&&X)){let b={};["status","statusText","headers"].forEach(Ae=>{b[Ae]=M[Ae]});let U=i.toFiniteNumber(kt.getContentLength()),[J,Z]=Qe&&ht(U,fe(At(Qe),!0))||[],$t=0,mr=Ae=>{if(de&&($t=Ae,$t>H))throw new d("maxContentLength size of "+H+" exceeded",d.ERR_BAD_RESPONSE,p,D);J&&J(Ae)};M=new a(Rt(M.body,rr,mr,()=>{Z&&Z(),X&&X()}),b)}W=W||"text";let V=await w[i.findKey(w,W)||"text"](M,p);if(de&&!g&&!Xe){let b;if(V!=null&&(typeof V.byteLength=="number"?b=V.byteLength:typeof V.size=="number"?b=V.size:typeof V=="string"&&(b=typeof r=="function"?new r().encode(V).byteLength:V.length)),typeof b=="number"&&b>H)throw new d("maxContentLength size of "+H+" exceeded",d.ERR_BAD_RESPONSE,p,D)}return!Xe&&X&&X(),await new Promise((b,U)=>{Ce(b,U,{data:V,headers:F.from(M.headers),status:M.status,statusText:M.statusText,config:p,request:D})})}catch(C){if(X&&X(),Q&&Q.aborted&&Q.reason instanceof d){let q=Q.reason;throw q.config=p,D&&(q.request=D),C!==q&&Object.defineProperty(q,"cause",{__proto__:null,value:C,writable:!0,enumerable:!1,configurable:!0}),q}if(he)throw D&&!he.request&&(he.request=D),he;if(C instanceof d)throw D&&!C.request&&(C.request=D),C;if(C&&C.name==="TypeError"&&/Load failed|fetch/i.test(C.message)){let q=new d("Network Error",d.ERR_NETWORK,p,D,C&&C.response);throw Object.defineProperty(q,"cause",{__proto__:null,value:C.cause||C,writable:!0,enumerable:!1,configurable:!0}),q}throw d.from(C,C&&C.code,p,D,C&&C.response)}}},Yn=new Map,bt=e=>{let t=e&&e.env||{},{fetch:s,Request:r,Response:n}=t,o=[r,n,s],a=o.length,l=a,u,f,c=Yn;for(;l--;)u=o[l],f=c.get(u),f===void 0&&c.set(u,f=l?new Map:Zn(t)),c=f;return f},Ta=bt();var Et={http:Be,xhr:tr,fetch:{get:bt}};i.forEach(Et,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});var ir=e=>`- ${e}`,to=e=>i.isFunction(e)||e===null||e===!1;function so(e,t){e=i.isArray(e)?e:[e];let{length:s}=e,r,n,o={};for(let a=0;a`adapter ${u} `+(f===!1?"is not supported by the environment":"is not available in the build")),l=s?a.length>1?`since : -`+a.map(ir).join(` -`):" "+ir(a[0]):"as no adapter specified";throw new d("There is no suitable adapter to dispatch the request "+l,d.ERR_NOT_SUPPORT)}return n}var ve={getAdapter:so,adapters:Et};function wt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new G(null,e)}function We(e){return wt(e),e.headers=F.from(e.headers),e.data=xe.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),ve.getAdapter(e.adapter||ce.adapter,e)(e).then(function(r){wt(e),e.response=r;try{r.data=xe.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=F.from(r.headers),r},function(r){if(!Se(r)&&(wt(e),r&&r.response)){e.response=r.response;try{r.response.data=xe.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=F.from(r.response.headers)}return Promise.reject(r)})}var ze={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{ze[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});var ar={};ze.transitional=function(t,s,r){function n(o,a){return"[Axios v"+pe+"] Transitional option '"+o+"'"+a+(r?". "+r:"")}return(o,a,l)=>{if(t===!1)throw new d(n(a," has been removed"+(s?" in "+s:"")),d.ERR_DEPRECATED);return s&&!ar[a]&&(ar[a]=!0,console.warn(n(a," has been deprecated since v"+s+" and will be removed in the near future"))),t?t(o,a,l):!0}};ze.spelling=function(t){return(s,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function ro(e,t,s){if(typeof e!="object"||e===null)throw new d("options must be an object",d.ERR_BAD_OPTION_VALUE);let r=Object.keys(e),n=r.length;for(;n-- >0;){let o=r[n],a=Object.prototype.hasOwnProperty.call(t,o)?t[o]:void 0;if(a){let l=e[o],u=l===void 0||a(l,o,e);if(u!==!0)throw new d("option "+o+" must be "+u,d.ERR_BAD_OPTION_VALUE);continue}if(s!==!0)throw new d("Unknown option "+o,d.ERR_BAD_OPTION)}}var Oe={assertOptions:ro,validators:ze};var $=Oe.validators,me=class{constructor(t){this.defaults=t||{},this.interceptors={request:new at,response:new at}}async request(t,s){try{return await this._request(t,s)}catch(r){if(r instanceof Error){let n={};Error.captureStackTrace?Error.captureStackTrace(n):n=new Error;let o=(()=>{if(!n.stack)return"";let a=n.stack.indexOf(` -`);return a===-1?"":n.stack.slice(a+1)})();try{if(!r.stack)r.stack=o;else if(o){let a=o.indexOf(` -`),l=a===-1?-1:o.indexOf(` -`,a+1),u=l===-1?"":o.slice(l+1);String(r.stack).endsWith(u)||(r.stack+=` -`+o)}}catch{}}throw r}}_request(t,s){typeof t=="string"?(s=s||{},s.url=t):s=t||{},s=j(this.defaults,s);let{transitional:r,paramsSerializer:n,headers:o}=s;r!==void 0&&Oe.assertOptions(r,{silentJSONParsing:$.transitional($.boolean),forcedJSONParsing:$.transitional($.boolean),clarifyTimeoutError:$.transitional($.boolean),legacyInterceptorReqResOrdering:$.transitional($.boolean),advertiseZstdAcceptEncoding:$.transitional($.boolean),validateStatusUndefinedResolves:$.transitional($.boolean)},!1),n!=null&&(i.isFunction(n)?s.paramsSerializer={serialize:n}:Oe.assertOptions(n,{encode:$.function,serialize:$.function},!0)),s.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?s.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:s.allowAbsoluteUrls=!0),Oe.assertOptions(s,{baseUrl:$.spelling("baseURL"),withXsrfToken:$.spelling("withXSRFToken")},!0),s.method=(s.method||this.defaults.method||"get").toLowerCase();let a=o&&i.merge(o.common,o[s.method]);o&&i.forEach(["delete","get","head","post","put","patch","query","common"],w=>{delete o[w]}),s.headers=F.concat(a,o);let l=[],u=!0;this.interceptors.request.forEach(function(x){if(typeof x.runWhen=="function"&&x.runWhen(s)===!1)return;u=u&&x.synchronous;let h=s.transitional||le;h&&h.legacyInterceptorReqResOrdering?l.unshift(x.fulfilled,x.rejected):l.push(x.fulfilled,x.rejected)});let f=[];this.interceptors.response.forEach(function(x){f.push(x.fulfilled,x.rejected)});let c,m=0,y;if(!u){let w=[We.bind(this),void 0];for(w.unshift(...l),w.push(...f),y=w.length,c=Promise.resolve(s);m{if(!r._listeners)return;let o=r._listeners.length;for(;o-- >0;)r._listeners[o](n);r._listeners=null}),this.promise.then=n=>{let o,a=new Promise(l=>{r.subscribe(l),o=l}).then(n);return a.cancel=function(){r.unsubscribe(o)},a},t(function(o,a,l){r.reason||(r.reason=new G(o,a,l),s(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let s=this._listeners.indexOf(t);s!==-1&&this._listeners.splice(s,1)}toAbortSignal(){let t=new AbortController,s=r=>{t.abort(r)};return this.subscribe(s),t.signal.unsubscribe=()=>this.unsubscribe(s),t.signal}static source(){let t;return{token:new e(function(n){t=n}),cancel:t}}},lr=xt;function St(e){return function(s){return e.apply(null,s)}}function Ct(e){return i.isObject(e)&&e.isAxiosError===!0}var _t={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(_t).forEach(([e,t])=>{_t[t]=e});var ur=_t;function cr(e){let t=new Fe(e),s=ge(Fe.prototype.request,t);return i.extend(s,Fe.prototype,t,{allOwnKeys:!0}),i.extend(s,t,null,{allOwnKeys:!0}),s.create=function(n){return cr(j(e,n))},s}var T=cr(ce);T.Axios=Fe;T.CanceledError=G;T.CancelToken=lr;T.isCancel=Se;T.VERSION=pe;T.toFormData=K;T.AxiosError=d;T.Cancel=T.CanceledError;T.all=function(t){return Promise.all(t)};T.spread=St;T.isAxiosError=Ct;T.mergeConfig=j;T.AxiosHeaders=F;T.formToJSON=e=>He(i.isHTMLForm(e)?new FormData(e):e);T.getAdapter=ve.getAdapter;T.HttpStatusCode=ur;T.default=T;var Te=T;var{Axios:_l,AxiosError:Ol,CanceledError:Fl,isCancel:Tl,CancelToken:Il,VERSION:Dl,all:Ll,Cancel:kl,isAxiosError:$l,spread:Nl,toFormData:Ul,AxiosHeaders:ql,HttpStatusCode:Bl,formToJSON:jl,getAdapter:Hl,mergeConfig:Gl,create:Ml}=Te;var Ot=class{constructor(t){this.appendHeaders=t=>{this.personalAccessToken&&(t["X-Figma-Token"]=this.personalAccessToken),this.oAuthToken&&(t.Authorization=`Bearer ${this.oAuthToken}`)};this.request=(t,s)=>{let r={};this.appendHeaders(r);let n={url:t,...s,headers:r};return Te(n).then(o=>o.data).catch(o=>{throw new ye(o)})};this.getFile=Ut;this.getFileNodes=qt;this.getFileMeta=Bt;this.getImages=jt;this.getImageFills=Ht;this.getComments=Gt;this.postComment=Mt;this.deleteComment=Vt;this.getCommentReactions=vt;this.postCommentReaction=Wt;this.deleteCommentReactions=zt;this.getUserMe=Qt;this.getFileVersions=Jt;this.getTeamProjects=Kt;this.getProjectFiles=Xt;this.getTeamComponents=Zt;this.getFileComponents=Yt;this.getComponent=es;this.getTeamComponentSets=ts;this.getFileComponentSets=ss;this.getComponentSet=rs;this.getTeamStyles=ns;this.getFileStyles=os;this.getStyle=is;this.getWebhook=as;this.postWebhook=ls;this.putWebhook=us;this.deleteWebhook=cs;this.getTeamWebhooks=fs;this.getWebhookRequests=ps;this.getLocalVariables=ms;this.getPublishedVariables=ds;this.postVariables=hs;this.getDevResources=As;this.postDevResources=ys;this.putDevResources=gs;this.deleteDevResources=Rs;this.getLibraryAnalyticsComponentActions=Ps;this.getLibraryAnalyticsComponentUsages=bs;this.getLibraryAnalyticsStyleActions=Es;this.getLibraryAnalyticsStyleUsages=ws;this.getLibraryAnalyticsVariableActions=xs;this.getLibraryAnalyticsVariableUsages=Ss;"personalAccessToken"in t&&(this.personalAccessToken=t.personalAccessToken),"oAuthToken"in t&&(this.oAuthToken=t.oAuthToken)}};function no(e,t,s,r,n){return`https://www.figma.com/oauth?${I({client_id:e,redirect_uri:t,scope:Array.isArray(s)?s.join(" "):s,state:r,response_type:n})}`}async function oo(e,t,s,r,n){let o={Authorization:`Basic ${Buffer.from(`${e}:${t}`).toString("base64")}`},l=`https://api.figma.com/v1/oauth/token?${I({redirect_uri:s,code:r,grant_type:n})}`,u=await Te.post(l,null,{headers:o});if(u.status!==200)throw new ye(u);return u.data}return gr(io);})(); +"use strict";var Figma=(()=>{var Ye=Object.defineProperty;var yr=Object.getOwnPropertyDescriptor;var Pr=Object.getOwnPropertyNames;var br=Object.prototype.hasOwnProperty;var Ut=(e,t)=>{for(var s in t)Ye(e,s,{get:t[s],enumerable:!0})},Er=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Pr(t))!br.call(e,o)&&o!==s&&Ye(e,o,{get:()=>t[o],enumerable:!(r=yr(t,o))||r.enumerable});return e};var wr=e=>Er(Ye({},"__esModule",{value:!0}),e);var pn={};Ut(pn,{API_DOMAIN:()=>A,API_VER:()=>E,API_VER_FOLDERS:()=>ge,API_VER_WEBHOOKS:()=>Y,Api:()=>Ot,oAuthLink:()=>cn,oAuthToken:()=>fn});var A="https://api.figma.com",E="v1",Y="v2",ge="v2";function T(e){return e?Object.entries(e).map(([t,s])=>t&&s!==void 0&&s!==null&&s!==""&&`${t}=${encodeURIComponent(s)}`).filter(Boolean).join("&"):""}var Re=class e extends Error{constructor(s){super(s.message);this.error=s;this.name="ApiError",Error.captureStackTrace&&Error.captureStackTrace(this,e)}};function qt(e,t){let s=T(t);return this.request(`${A}/${"v1"}/files/${e.file_key}?${s}`)}function Bt(e,t){let s=T(t);return this.request(`${A}/${"v1"}/files/${e.file_key}/nodes?${s}`)}function jt(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/meta`)}function Gt(e,t){let s=T(t);return this.request(`${A}/${"v1"}/images/${e.file_key}?${s}`)}function Mt(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/images`)}function Ht(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/comments`)}function Vt(e,t){return this.request(`${A}/${"v1"}/files/${e.file_key}/comments`,{method:"POST",data:t})}function vt(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}`,{method:"DELETE",data:""})}function Wt(e,t){let s=T(t);return this.request(`${A}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}/reactions?${s}`)}function zt(e,t){return this.request(`${A}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}/reactions`,{method:"POST",data:t})}function Qt(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/comments/${e.comment_id}/reactions`,{method:"DELETE",data:""})}function Jt(){return this.request(`${A}/${"v1"}/me`)}function Kt(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/versions`)}function Xt(e){return this.request(`${A}/${"v1"}/teams/${e.team_id}/projects`)}function Zt(e,t){let s=T(t);return this.request(`${A}/${"v1"}/projects/${e.project_id}/files?${s}`)}function Yt(e){return this.request(`${A}/${"v2"}/teams/${e.team_id}/folders`)}function es(e){return this.request(`${A}/${"v2"}/folders/${e.folder_id}/folders`)}function ts(e,t){let s=T(t);return this.request(`${A}/${"v2"}/folders/${e.folder_id}/files?${s}`)}function ss(e){return this.request(`${A}/${"v2"}/folders/${e.folder_id}/meta`)}function rs(e,t){let s=T(t);return this.request(`${A}/${"v1"}/teams/${e.team_id}/components?${s}`)}function os(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/components`)}function ns(e){return this.request(`${A}/${"v1"}/components/${e.key}`)}function is(e,t){let s=T(t);return this.request(`${A}/${"v1"}/teams/${e.team_id}/component_sets?${s}`)}function as(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/component_sets`)}function ls(e){return this.request(`${A}/${"v1"}/component_sets/${e.key}`)}function us(e,t){let s=T(t);return this.request(`${A}/${"v1"}/teams/${e.team_id}/styles?${s}`)}function cs(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/styles`)}function fs(e){return this.request(`${A}/${"v1"}/styles/${e.key}`)}function ps(e){return this.request(`${A}/${"v2"}/webhooks/${e.webhook_id}`)}function ms(e){return this.request(`${A}/${"v2"}/webhooks`,{method:"POST",data:e})}function ds(e,t){return this.request(`${A}/${"v2"}/webhooks/${e.webhook_id}`,{method:"PUT",data:t})}function hs(e){return this.request(`${A}/${"v2"}/webhooks/${e.webhook_id}/`,{method:"DELETE",data:""})}function As(e){return this.request(`${A}/${"v2"}/teams/${e.team_id}/webhooks`)}function gs(e){return this.request(`${A}/${"v2"}/webhooks/${e.webhook_id}/requests`)}function Rs(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/variables/local`)}function ys(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/variables/published`)}function Ps(e,t){return this.request(`${A}/${"v1"}/files/${e.file_key}/variables`,{method:"POST",data:t})}function bs(e,t){let s=T(t);return this.request(`${A}/${"v1"}/files/${e.file_key}/dev_resources`)}function Es(e){return this.request(`${A}/${"v1"}/dev_resources`,{method:"POST",data:e})}function ws(e){return this.request(`${A}/${"v1"}/dev_resources`,{method:"PUT",data:e})}function xs(e){return this.request(`${A}/${"v1"}/files/${e.file_key}/dev_resources/${e.dev_resource_id}`,{method:"DELETE",data:""})}function Fs(e,t){let s=T(t);return this.request(`${A}/${"v1"}/analytics/libraries/${e.file_key}/component/actions?${s}`)}function Ss(e,t){let s=T(t);return this.request(`${A}/${"v1"}/analytics/libraries/${e.file_key}/component/usages?${s}`)}function Cs(e,t){let s=T(t);return this.request(`${A}/${"v1"}/analytics/libraries/${e.file_key}/style/actions?${s}`)}function _s(e,t){let s=T(t);return this.request(`${A}/${"v1"}/analytics/libraries/${e.file_key}/style/usages?${s}`)}function Os(e,t){let s=T(t);return this.request(`${A}/${"v1"}/analytics/libraries/${e.file_key}/variable/actions?${s}`)}function Ts(e,t){let s=T(t);return this.request(`${A}/${"v1"}/analytics/libraries/${e.file_key}/variable/usages?${s}`)}function ye(e,t){return function(){return e.apply(t,arguments)}}var{toString:Fr}=Object.prototype,{getPrototypeOf:re}=Object,{iterator:be,toStringTag:$s}=Symbol,Ne=(({hasOwnProperty:e})=>(t,s)=>e.call(t,s))(Object.prototype),Pe=(e,t)=>{let s=e,r=[];for(;s!=null&&s!==Object.prototype;){if(r.indexOf(s)!==-1)return!1;if(r.push(s),Ne(s,t))return!0;s=re(s)}return!1},Sr=(e,t)=>e!=null&&Pe(e,t)?e[t]:void 0,tt=(e=>t=>{let s=Fr.call(t);return e[s]||(e[s]=s.slice(8,-1).toLowerCase())})(Object.create(null)),B=e=>(e=e.toLowerCase(),t=>tt(t)===e),Ue=e=>t=>typeof t===e,{isArray:te}=Array,oe=Ue("undefined");function ne(e){return e!==null&&!oe(e)&&e.constructor!==null&&!oe(e.constructor)&&N(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}var Ls=B("ArrayBuffer");function Cr(e){let t;return typeof ArrayBuffer<"u"&&ArrayBuffer.isView?t=ArrayBuffer.isView(e):t=e&&e.buffer&&Ls(e.buffer),t}var _r=Ue("string"),N=Ue("function"),ks=Ue("number"),ie=e=>e!==null&&typeof e=="object",Or=e=>e===!0||e===!1,ke=e=>{if(!ie(e))return!1;let t=re(e);return(t===null||t===Object.prototype||re(t)===null)&&!Pe(e,$s)&&!Pe(e,be)},Tr=e=>{if(!ie(e)||ne(e))return!1;try{return Object.keys(e).length===0&&Object.getPrototypeOf(e)===Object.prototype}catch{return!1}},Ir=B("Date"),Dr=B("File"),$r=e=>!!(e&&typeof e.uri<"u"),Lr=e=>e&&typeof e.getParts<"u",kr=B("Blob"),Nr=B("FileList"),Ur=e=>ie(e)&&N(e.pipe);function qr(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}}var Is=qr(),Ds=typeof Is.FormData<"u"?Is.FormData:void 0,Br=e=>{if(!e)return!1;if(Ds&&e instanceof Ds)return!0;let t=re(e);if(!t||t===Object.prototype||!N(e.append))return!1;let s=tt(e);return s==="formdata"||s==="object"&&N(e.toString)&&e.toString()==="[object FormData]"},jr=B("URLSearchParams"),[Gr,Mr,Hr,Vr]=["ReadableStream","Request","Response","Headers"].map(B),vr=e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"");function Ee(e,t,{allOwnKeys:s=!1}={}){if(e===null||typeof e>"u")return;let r,o;if(typeof e!="object"&&(e=[e]),te(e))for(r=0,o=e.length;r0;)if(o=s[r],t===o.toLowerCase())return o;return null}var ee=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,Us=e=>!oe(e)&&e!==ee;function et(...e){let{caseless:t,skipUndefined:s}=Us(this)&&this||{},r={},o=(n,a)=>{if(a==="__proto__"||a==="constructor"||a==="prototype")return;let l=t&&typeof a=="string"&&Ns(r,a)||a,u=Ne(r,l)?r[l]:void 0;ke(u)&&ke(n)?r[l]=et(u,n):ke(n)?r[l]=et({},n):te(n)?r[l]=n.slice():(!s||!oe(n))&&(r[l]=n)};for(let n=0,a=e.length;n(Ee(t,(o,n)=>{s&&N(o)?Object.defineProperty(e,n,{__proto__:null,value:ye(o,s),writable:!0,enumerable:!0,configurable:!0}):Object.defineProperty(e,n,{__proto__:null,value:o,writable:!0,enumerable:!0,configurable:!0})},{allOwnKeys:r}),e),zr=e=>(e.charCodeAt(0)===65279&&(e=e.slice(1)),e),Qr=(e,t,s,r)=>{e.prototype=Object.create(t.prototype,r),Object.defineProperty(e.prototype,"constructor",{__proto__:null,value:e,writable:!0,enumerable:!1,configurable:!0}),Object.defineProperty(e,"super",{__proto__:null,value:t.prototype}),s&&Object.assign(e.prototype,s)},Jr=(e,t,s,r)=>{let o,n,a,l={};if(t=t||{},e==null)return t;do{for(o=Object.getOwnPropertyNames(e),n=o.length;n-- >0;)a=o[n],(!r||r(a,e,t))&&!l[a]&&(t[a]=e[a],l[a]=!0);e=s!==!1&&re(e)}while(e&&(!s||s(e,t))&&e!==Object.prototype);return t},Kr=(e,t,s)=>{e=String(e),(s===void 0||s>e.length)&&(s=e.length),s-=t.length;let r=e.indexOf(t,s);return r!==-1&&r===s},Xr=e=>{if(!e)return null;if(te(e))return e;let t=e.length;if(!ks(t))return null;let s=new Array(t);for(;t-- >0;)s[t]=e[t];return s},Zr=(e=>t=>e&&t instanceof e)(typeof Uint8Array<"u"&&re(Uint8Array)),Yr=(e,t)=>{let r=(e&&e[be]).call(e),o;for(;(o=r.next())&&!o.done;){let n=o.value;t.call(e,n[0],n[1])}},eo=(e,t)=>{let s,r=[];for(;(s=e.exec(t))!==null;)r.push(s);return r},to=B("HTMLFormElement"),so=e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,function(s,r,o){return r.toUpperCase()+o}),{propertyIsEnumerable:ro}=Object.prototype,oo=B("RegExp"),qs=(e,t)=>{let s=Object.getOwnPropertyDescriptors(e),r={};Ee(s,(o,n)=>{let a;(a=t(o,n,e))!==!1&&(r[n]=a||o)}),Object.defineProperties(e,r)},no=e=>{qs(e,(t,s)=>{if(N(e)&&["arguments","caller","callee"].includes(s))return!1;let r=e[s];if(N(r)){if(t.enumerable=!1,"writable"in t){t.writable=!1;return}t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+s+"'")})}})},io=(e,t)=>{let s={},r=o=>{o.forEach(n=>{s[n]=!0})};return te(e)?r(e):r(String(e).split(t)),s},ao=()=>{},lo=(e,t)=>e!=null&&Number.isFinite(e=+e)?e:t;function uo(e){return!!(e&&N(e.append)&&e[$s]==="FormData"&&e[be])}var co=e=>{let t=new WeakSet,s=r=>{if(ie(r)){if(t.has(r))return;if(ne(r))return r;if(!("toJSON"in r)){t.add(r);let o=te(r)?[]:{};return Ee(r,(n,a)=>{let l=s(n);!oe(l)&&(o[a]=l)}),t.delete(r),o}}return r};return s(e)},fo=B("AsyncFunction"),po=e=>e&&(ie(e)||N(e))&&N(e.then)&&N(e.catch),Bs=((e,t)=>e?setImmediate:t?((s,r)=>(ee.addEventListener("message",({source:o,data:n})=>{o===ee&&n===s&&r.length&&r.shift()()},!1),o=>{r.push(o),ee.postMessage(s,"*")}))(`axios@${Math.random()}`,[]):s=>setTimeout(s))(typeof setImmediate=="function",N(ee.postMessage)),mo=typeof queueMicrotask<"u"?queueMicrotask.bind(ee):typeof process<"u"&&process.nextTick||Bs,js=e=>e!=null&&N(e[be]),ho=e=>e!=null&&Pe(e,be)&&js(e),i={isArray:te,isArrayBuffer:Ls,isBuffer:ne,isFormData:Br,isArrayBufferView:Cr,isString:_r,isNumber:ks,isBoolean:Or,isObject:ie,isPlainObject:ke,isEmptyObject:Tr,isReadableStream:Gr,isRequest:Mr,isResponse:Hr,isHeaders:Vr,isUndefined:oe,isDate:Ir,isFile:Dr,isReactNativeBlob:$r,isReactNative:Lr,isBlob:kr,isRegExp:oo,isFunction:N,isStream:Ur,isURLSearchParams:jr,isTypedArray:Zr,isFileList:Nr,forEach:Ee,merge:et,extend:Wr,trim:vr,stripBOM:zr,inherits:Qr,toFlatObject:Jr,kindOf:tt,kindOfTest:B,endsWith:Kr,toArray:Xr,forEachEntry:Yr,matchAll:eo,isHTMLForm:to,hasOwnProperty:Ne,hasOwnProp:Ne,hasOwnInPrototypeChain:Pe,getSafeProp:Sr,reduceDescriptors:qs,freezeMethods:no,toObjectSet:io,toCamelCase:so,noop:ao,toFiniteNumber:lo,findKey:Ns,global:ee,isContextDefined:Us,isSpecCompliantForm:uo,toJSONObject:co,isAsyncFn:fo,isThenable:po,setImmediate:Bs,asap:mo,isIterable:js,isSafeIterable:ho};var Ao=i.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]),Gs=e=>{let t={},s,r,o;return e&&e.split(` +`).forEach(function(a){o=a.indexOf(":"),s=a.substring(0,o).trim().toLowerCase(),r=a.substring(o+1).trim(),!(!s||t[s]&&Ao[s])&&(s==="set-cookie"?t[s]?t[s].push(r):t[s]=[r]:t[s]=t[s]?t[s]+", "+r:r)}),t};function go(e){let t=0,s=e.length;for(;tt;){let r=e.charCodeAt(s-1);if(r!==9&&r!==32)break;s-=1}return t===0&&s===e.length?e:e.slice(t,s)}var Ro=new RegExp("[\\u0000-\\u0008\\u000a-\\u001f\\u007f]+","g"),yo=new RegExp("[^\\u0009\\u0020-\\u007e\\u0080-\\u00ff]+","g");function st(e,t){return i.isArray(e)?e.map(s=>st(s,t)):go(String(e).replace(t,""))}var Ms=e=>st(e,Ro),Po=e=>st(e,yo);function qe(e){let t=Object.create(null);return i.forEach(e.toJSON(),(s,r)=>{t[r]=Po(s)}),t}var Hs=Symbol("internals");function we(e){return e&&String(e).trim().toLowerCase()}function Be(e){return e===!1||e==null?e:i.isArray(e)?e.map(Be):Ms(String(e))}function bo(e){let t=Object.create(null),s=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g,r;for(;r=s.exec(e);)t[r[1]]=r[2];return t}var Eo=e=>/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim());function rt(e,t,s,r,o){if(i.isFunction(r))return r.call(this,t,s);if(o&&(t=s),!!i.isString(t)){if(i.isString(r))return t.indexOf(r)!==-1;if(i.isRegExp(r))return r.test(t)}}function wo(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,(t,s,r)=>s.toUpperCase()+r)}function xo(e,t){let s=i.toCamelCase(" "+t);["get","set","has"].forEach(r=>{Object.defineProperty(e,r+s,{__proto__:null,value:function(o,n,a){return this[r].call(this,t,o,n,a)},configurable:!0})})}var ae=class{constructor(t){t&&this.set(t)}set(t,s,r){let o=this;function n(l,u,f){let c=we(u);if(!c)return;let m=i.findKey(o,c);(!m||o[m]===void 0||f===!0||f===void 0&&o[m]!==!1)&&(o[m||u]=Be(l))}let a=(l,u)=>i.forEach(l,(f,c)=>n(f,c,u));if(i.isPlainObject(t)||t instanceof this.constructor)a(t,s);else if(i.isString(t)&&(t=t.trim())&&!Eo(t))a(Gs(t),s);else if(i.isObject(t)&&i.isSafeIterable(t)){let l=Object.create(null),u,f;for(let c of t){if(!i.isArray(c))throw new TypeError("Object iterator must return a key-value pair");f=c[0],i.hasOwnProp(l,f)?(u=l[f],l[f]=i.isArray(u)?[...u,c[1]]:[u,c[1]]):l[f]=c[1]}a(l,s)}else t!=null&&n(s,t,r);return this}get(t,s){if(t=we(t),t){let r=i.findKey(this,t);if(r){let o=this[r];if(!s)return o;if(s===!0)return bo(o);if(i.isFunction(s))return s.call(this,o,r);if(i.isRegExp(s))return s.exec(o);throw new TypeError("parser must be boolean|regexp|function")}}}has(t,s){if(t=we(t),t){let r=i.findKey(this,t);return!!(r&&this[r]!==void 0&&(!s||rt(this,this[r],r,s)))}return!1}delete(t,s){let r=this,o=!1;function n(a){if(a=we(a),a){let l=i.findKey(r,a);l&&(!s||rt(r,r[l],l,s))&&(delete r[l],o=!0)}}return i.isArray(t)?t.forEach(n):n(t),o}clear(t){let s=Object.keys(this),r=s.length,o=!1;for(;r--;){let n=s[r];(!t||rt(this,this[n],n,t,!0))&&(delete this[n],o=!0)}return o}normalize(t){let s=this,r={};return i.forEach(this,(o,n)=>{let a=i.findKey(r,n);if(a){s[a]=Be(o),delete s[n];return}let l=t?wo(n):String(n).trim();l!==n&&delete s[n],s[l]=Be(o),r[l]=!0}),this}concat(...t){return this.constructor.concat(this,...t)}toJSON(t){let s=Object.create(null);return i.forEach(this,(r,o)=>{r!=null&&r!==!1&&(s[o]=t&&i.isArray(r)?r.join(", "):r)}),s}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map(([t,s])=>t+": "+s).join(` +`)}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...s){let r=new this(t);return s.forEach(o=>r.set(o)),r}static accessor(t){let r=(this[Hs]=this[Hs]={accessors:{}}).accessors,o=this.prototype;function n(a){let l=we(a);r[l]||(xo(o,a),r[l]=!0)}return i.isArray(t)?t.forEach(n):n(t),this}};ae.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);i.reduceDescriptors(ae.prototype,({value:e},t)=>{let s=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[s]=r}}});i.freezeMethods(ae);var O=ae;var Fo="[REDACTED ****]";function So(e){if(i.hasOwnProp(e,"toJSON"))return!0;let t=Object.getPrototypeOf(e);for(;t&&t!==Object.prototype;){if(i.hasOwnProp(t,"toJSON"))return!0;t=Object.getPrototypeOf(t)}return!1}function Co(e,t){let s=new Set(t.map(n=>String(n).toLowerCase())),r=[],o=n=>{if(n===null||typeof n!="object"||i.isBuffer(n))return n;if(r.indexOf(n)!==-1)return;n instanceof O&&(n=n.toJSON()),r.push(n);let a;if(i.isArray(n))a=[],n.forEach((l,u)=>{let f=o(l);i.isUndefined(f)||(a[u]=f)});else{if(!i.isPlainObject(n)&&So(n))return r.pop(),n;a=Object.create(null);for(let[l,u]of Object.entries(n)){let f=s.has(l.toLowerCase())?Fo:o(u);i.isUndefined(f)||(a[l]=f)}}return r.pop(),a};return o(e)}var $=class e extends Error{static from(t,s,r,o,n,a){let l=new e(t.message,s||t.code,r,o,n);return Object.defineProperty(l,"cause",{__proto__:null,value:t,writable:!0,enumerable:!1,configurable:!0}),l.name=t.name,t.status!=null&&l.status==null&&(l.status=t.status),a&&Object.assign(l,a),l}constructor(t,s,r,o,n){super(t),Object.defineProperty(this,"message",{__proto__:null,value:t,enumerable:!0,writable:!0,configurable:!0}),this.name="AxiosError",this.isAxiosError=!0,s&&(this.code=s),r&&(this.config=r),o&&(this.request=o),n&&(this.response=n,this.status=n.status)}toJSON(){let t=this.config,s=t&&i.hasOwnProp(t,"redact")?t.redact:void 0,r=i.isArray(s)&&s.length>0?Co(t,s):i.toJSONObject(t);return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:r,code:this.code,status:this.status}}};$.ERR_BAD_OPTION_VALUE="ERR_BAD_OPTION_VALUE";$.ERR_BAD_OPTION="ERR_BAD_OPTION";$.ECONNABORTED="ECONNABORTED";$.ETIMEDOUT="ETIMEDOUT";$.ECONNREFUSED="ECONNREFUSED";$.ERR_NETWORK="ERR_NETWORK";$.ERR_FR_TOO_MANY_REDIRECTS="ERR_FR_TOO_MANY_REDIRECTS";$.ERR_DEPRECATED="ERR_DEPRECATED";$.ERR_BAD_RESPONSE="ERR_BAD_RESPONSE";$.ERR_BAD_REQUEST="ERR_BAD_REQUEST";$.ERR_CANCELED="ERR_CANCELED";$.ERR_NOT_SUPPORT="ERR_NOT_SUPPORT";$.ERR_INVALID_URL="ERR_INVALID_URL";$.ERR_FORM_DATA_DEPTH_EXCEEDED="ERR_FORM_DATA_DEPTH_EXCEEDED";var d=$;var je=null;var it=100;function nt(e){return i.isPlainObject(e)||i.isArray(e)}function Vs(e){return i.endsWith(e,"[]")?e.slice(0,-2):e}function ot(e,t,s){return e?e.concat(t).map(function(o,n){return o=Vs(o),!s&&n?"["+o+"]":o}).join(s?".":""):t}function _o(e){return i.isArray(e)&&!e.some(nt)}var Oo=i.toFlatObject(i,{},null,function(t){return/^is[A-Z]/.test(t)});function To(e,t,s){if(!i.isObject(e))throw new TypeError("target must be an object");t=t||new(je||FormData),s=i.toFlatObject(s,{metaTokens:!0,dots:!1,indexes:!1},!1,function(g,P){return!i.isUndefined(P[g])});let r=s.metaTokens,o=s.visitor||w,n=s.dots,a=s.indexes,l=s.Blob||typeof Blob<"u"&&Blob,u=s.maxDepth===void 0?it:s.maxDepth,f=l&&i.isSpecCompliantForm(t),c=[];if(!i.isFunction(o))throw new TypeError("visitor must be a function");function m(p){if(p===null)return"";if(i.isDate(p))return p.toISOString();if(i.isBoolean(p))return p.toString();if(!f&&i.isBlob(p))throw new d("Blob is not supported. Use a Buffer instead.");if(i.isArrayBuffer(p)||i.isTypedArray(p)){if(f&&typeof l=="function")return new l([p]);if(typeof Buffer<"u")return Buffer.from(p);throw new d("Blob is not supported. Use a Buffer instead.",d.ERR_NOT_SUPPORT)}return p}function R(p){if(p>u)throw new d("Object is too deeply nested ("+p+" levels). Max depth: "+u,d.ERR_FORM_DATA_DEPTH_EXCEEDED)}function y(p,g){if(u===1/0)return JSON.stringify(p);let P=[];return JSON.stringify(p,function(L,_){if(!i.isObject(_))return _;for(;P.length&&P[P.length-1]!==this;)P.pop();return P.push(_),R(g+P.length-1),_})}function w(p,g,P){let F=p;if(i.isReactNative(t)&&i.isReactNativeBlob(p))return t.append(ot(P,g,n),m(p)),!1;if(p&&!P&&typeof p=="object"){if(i.endsWith(g,"{}"))g=r?g:g.slice(0,-2),p=y(p,1);else if(i.isArray(p)&&_o(p)||(i.isFileList(p)||i.endsWith(g,"[]"))&&(F=i.toArray(p)))return g=Vs(g),F.forEach(function(_,v){!(i.isUndefined(_)||_===null)&&t.append(a===!0?ot([g],v,n):a===null?g:g+"[]",m(_))}),!1}return nt(p)?!0:(t.append(ot(P,g,n),m(p)),!1)}let x=Object.assign(Oo,{defaultVisitor:w,convertValue:m,isVisitable:nt});function h(p,g,P=0){if(!i.isUndefined(p)){if(R(P),c.indexOf(p)!==-1)throw new Error("Circular reference detected in "+g.join("."));c.push(p),i.forEach(p,function(L,_){(!(i.isUndefined(L)||L===null)&&o.call(t,L,i.isString(_)?_.trim():_,g,x))===!0&&h(L,g?g.concat(_):[_],P+1)}),c.pop()}}if(!i.isObject(e))throw new TypeError("data must be an object");return h(e),t}var K=To;function vs(e){let t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+"};return encodeURIComponent(e).replace(/[!'()~]|%20/g,function(r){return t[r]})}function Ws(e,t){this._pairs=[],e&&K(e,this,t)}var zs=Ws.prototype;zs.append=function(t,s){this._pairs.push([t,s])};zs.toString=function(t){let s=t?r=>t.call(this,r,vs):vs;return this._pairs.map(function(o){return s(o[0])+"="+s(o[1])},"").join("&")};var Ge=Ws;function Io(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function xe(e,t,s){if(!t)return e;e=e||"";let r=i.isFunction(s)?{serialize:s}:s,o=i.getSafeProp(r,"encode")||Io,n=i.getSafeProp(r,"serialize"),a;if(n?a=n(t,r):a=i.isURLSearchParams(t)?t.toString():new Ge(t,r).toString(o),a){let l=e.indexOf("#");l!==-1&&(e=e.slice(0,l)),e+=(e.indexOf("?")===-1?"?":"&")+a}return e}var at=class{constructor(){this.handlers=[]}use(t,s,r){return this.handlers.push({fulfilled:t,rejected:s,synchronous:r?r.synchronous:!1,runWhen:r?r.runWhen:null}),this.handlers.length-1}eject(t){this.handlers[t]&&(this.handlers[t]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(t){i.forEach(this.handlers,function(r){r!==null&&t(r)})}},lt=at;var le={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1,legacyInterceptorReqResOrdering:!0,advertiseZstdAcceptEncoding:!1,validateStatusUndefinedResolves:!0};var Qs=typeof URLSearchParams<"u"?URLSearchParams:Ge;var Js=typeof FormData<"u"?FormData:null;var Ks=typeof Blob<"u"?Blob:null;var Xs={isBrowser:!0,classes:{URLSearchParams:Qs,FormData:Js,Blob:Ks},protocols:["http","https","file","blob","url","data"]};var ft={};Ut(ft,{hasBrowserEnv:()=>ct,hasStandardBrowserEnv:()=>Do,hasStandardBrowserWebWorkerEnv:()=>$o,navigator:()=>ut,origin:()=>Lo});var ct=typeof window<"u"&&typeof document<"u",ut=typeof navigator=="object"&&navigator||void 0,Do=ct&&(!ut||["ReactNative","NativeScript","NS"].indexOf(ut.product)<0),$o=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope&&typeof self.importScripts=="function",Lo=ct&&window.location.href||"http://localhost";var C={...ft,...Xs};function pt(e,t){return K(e,new C.classes.URLSearchParams,{visitor:function(s,r,o,n){return C.isNode&&i.isBuffer(s)?(this.append(r,s.toString("base64")),!1):n.defaultVisitor.apply(this,arguments)},...t})}var Zs=it;function Ys(e){if(e>Zs)throw new d("FormData field is too deeply nested ("+e+" levels). Max depth: "+Zs,d.ERR_FORM_DATA_DEPTH_EXCEEDED)}function ko(e){let t=[],s=/\w+|\[(\w*)]/g,r;for(;(r=s.exec(e))!==null;)Ys(t.length),t.push(r[0]==="[]"?"":r[1]||r[0]);return t}function No(e){let t={},s=Object.keys(e),r,o=s.length,n;for(r=0;r=s.length;return a=!a&&i.isArray(o)?o.length:a,u?(i.hasOwnProp(o,a)?o[a]=i.isArray(o[a])?o[a].concat(r):[o[a],r]:o[a]=r,!l):((!i.hasOwnProp(o,a)||!i.isObject(o[a]))&&(o[a]=[]),t(s,r,o[a],n)&&i.isArray(o[a])&&(o[a]=No(o[a])),!l)}if(i.isFormData(e)&&i.isFunction(e.entries)){let s={};return i.forEachEntry(e,(r,o)=>{t(ko(r),o,s,0)}),s}return null}var Me=Uo;var ue=(e,t)=>e!=null&&i.hasOwnProp(e,t)?e[t]:void 0;function qo(e,t,s){if(i.isString(e))try{return(t||JSON.parse)(e),i.trim(e)}catch(r){if(r.name!=="SyntaxError")throw r}return(s||JSON.stringify)(e)}var mt={transitional:le,adapter:["xhr","http","fetch"],transformRequest:[function(t,s){let r=s.getContentType()||"",o=r.indexOf("application/json")>-1,n=i.isObject(t);if(n&&i.isHTMLForm(t)&&(t=new FormData(t)),i.isFormData(t))return o?JSON.stringify(Me(t)):t;if(i.isArrayBuffer(t)||i.isBuffer(t)||i.isStream(t)||i.isFile(t)||i.isBlob(t)||i.isReadableStream(t))return t;if(i.isArrayBufferView(t))return t.buffer;if(i.isURLSearchParams(t))return s.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),t.toString();let l;if(n){let u=ue(this,"formSerializer");if(r.indexOf("application/x-www-form-urlencoded")>-1)return pt(t,u).toString();if((l=i.isFileList(t))||r.indexOf("multipart/form-data")>-1){let f=ue(this,"env"),c=f&&f.FormData;return K(l?{"files[]":t}:t,c&&new c,u)}}return n||o?(s.setContentType("application/json",!1),qo(t)):t}],transformResponse:[function(t){let s=ue(this,"transitional")||mt.transitional,r=s&&s.forcedJSONParsing,o=ue(this,"responseType"),n=o==="json";if(i.isResponse(t)||i.isReadableStream(t))return t;if(t&&i.isString(t)&&(r&&!o||n)){let l=!(s&&s.silentJSONParsing)&&n;try{return JSON.parse(t,ue(this,"parseReviver"))}catch(u){if(l)throw u.name==="SyntaxError"?d.from(u,d.ERR_BAD_RESPONSE,this,null,ue(this,"response")):u}}return t}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:C.classes.FormData,Blob:C.classes.Blob},validateStatus:function(t){return t>=200&&t<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};i.forEach(["delete","get","head","post","put","patch","query"],e=>{mt.headers[e]={}});var ce=mt;function Fe(e,t){let s=this||ce,r=t||s,o=O.from(r.headers),n=r.data;return i.forEach(e,function(l){n=l.call(s,n,o.normalize(),t?t.status:void 0)}),o.normalize(),n}function Se(e){return!!(e&&e.__CANCEL__)}var dt=class extends d{constructor(t,s,r){super(t??"canceled",d.ERR_CANCELED,s,r),this.name="CanceledError",this.__CANCEL__=!0}},M=dt;function Ce(e,t,s){let r=s.config.validateStatus;!s.status||!r||r(s.status)?e(s):t(new d("Request failed with status code "+s.status,s.status>=400&&s.status<500?d.ERR_BAD_REQUEST:d.ERR_BAD_RESPONSE,s.config,s.request,s))}function ht(e){let t=/^([-+\w]{1,25}):(?:\/\/)?/.exec(e);return t&&t[1]||""}function Bo(e,t){e=e||10;let s=new Array(e),r=new Array(e),o=0,n=0,a;return t=t!==void 0?t:1e3,function(u){let f=Date.now(),c=r[n];a||(a=f),s[o]=u,r[o]=f;let m=n,R=0;for(;m!==o;)R+=s[m++],m=m%e;if(o=(o+1)%e,o===n&&(n=(n+1)%e),f-a{s=c,o=null,n&&(clearTimeout(n),n=null),e(...f)};return[(...f)=>{let c=Date.now(),m=c-s;m>=r?a(f,c):(o=f,n||(n=setTimeout(()=>{n=null,a(o)},r-m)))},()=>o&&a(o)]}var tr=jo;var fe=(e,t,s=3)=>{let r=0,o=er(50,250);return tr(n=>{if(!n||typeof n.loaded!="number")return;let a=n.loaded,l=n.lengthComputable?n.total:void 0,u=l!=null?Math.min(a,l):a,f=Math.max(0,u-r),c=o(f);r=Math.max(r,u);let m={loaded:u,total:l,progress:l?u/l:void 0,bytes:f,rate:c||void 0,estimated:c&&l?(l-u)/c:void 0,event:n,lengthComputable:l!=null,[t?"download":"upload"]:!0};e(m)},s)},At=(e,t)=>{let s=e!=null;return[r=>t[0]({lengthComputable:s,total:e,loaded:r}),t[1]]},gt=e=>(...t)=>i.asap(()=>e(...t));var sr=C.hasStandardBrowserEnv?((e,t)=>s=>(s=new URL(s,C.origin),e.protocol===s.protocol&&e.host===s.host&&(t||e.port===s.port)))(new URL(C.origin),C.navigator&&/(msie|trident)/i.test(C.navigator.userAgent)):()=>!0;var rr=C.hasStandardBrowserEnv?{write(e,t,s,r,o,n,a){if(typeof document>"u")return;let l=[`${e}=${encodeURIComponent(t)}`];i.isNumber(s)&&l.push(`expires=${new Date(s).toUTCString()}`),i.isString(r)&&l.push(`path=${r}`),i.isString(o)&&l.push(`domain=${o}`),n===!0&&l.push("secure"),i.isString(a)&&l.push(`SameSite=${a}`),document.cookie=l.join("; ")},read(e){if(typeof document>"u")return null;let t=document.cookie.split(";");for(let s=0;se instanceof O?{...e}:e;function j(e,t){e=e||{},t=t||{};let s=Object.create(null);Object.defineProperty(s,"hasOwnProperty",{__proto__:null,value:Object.prototype.hasOwnProperty,enumerable:!1,writable:!0,configurable:!0});function r(c,m,R,y){return i.isPlainObject(c)&&i.isPlainObject(m)?i.merge.call({caseless:y},c,m):i.isPlainObject(m)?i.merge({},m):i.isArray(m)?m.slice():m}function o(c,m,R,y){if(i.isUndefined(m)){if(!i.isUndefined(c))return r(void 0,c,R,y)}else return r(c,m,R,y)}function n(c,m){if(!i.isUndefined(m))return r(void 0,m)}function a(c,m){if(i.isUndefined(m)){if(!i.isUndefined(c))return r(void 0,c)}else return r(void 0,m)}function l(c){let m=i.hasOwnProp(t,"transitional")?t.transitional:void 0;if(!i.isUndefined(m))if(i.isPlainObject(m)){if(i.hasOwnProp(m,c))return m[c]}else return;let R=i.hasOwnProp(e,"transitional")?e.transitional:void 0;if(i.isPlainObject(R)&&i.hasOwnProp(R,c))return R[c]}function u(c,m,R){if(i.hasOwnProp(t,R))return r(c,m);if(i.hasOwnProp(e,R))return r(void 0,c)}let f={url:n,method:n,data:n,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,withXSRFToken:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,beforeRedirect:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,allowedSocketPaths:a,responseEncoding:a,validateStatus:u,headers:(c,m,R)=>o(nr(c),nr(m),R,!0)};return i.forEach(Object.keys({...e,...t}),function(m){if(m==="__proto__"||m==="constructor"||m==="prototype")return;let R=i.hasOwnProp(f,m)?f[m]:o,y=i.hasOwnProp(e,m)?e[m]:void 0,w=i.hasOwnProp(t,m)?t[m]:void 0,x=R(y,w,m);i.isUndefined(x)&&R!==u||(s[m]=x)}),i.hasOwnProp(t,"validateStatus")&&i.isUndefined(t.validateStatus)&&l("validateStatusUndefinedResolves")===!1&&(i.hasOwnProp(e,"validateStatus")?s.validateStatus=r(void 0,e.validateStatus):delete s.validateStatus),s}var vo=["content-type","content-length"];function Wo(e,t,s){if(s!=="content-only"){e.set(t);return}Object.entries(t||{}).forEach(([r,o])=>{vo.includes(r.toLowerCase())&&e.set(r,o)})}var zo=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,s)=>String.fromCharCode(parseInt(s,16)));function Qo(e){let t=j({},e),s=R=>i.hasOwnProp(t,R)?t[R]:void 0,r=s("data"),o=s("withXSRFToken"),n=s("xsrfHeaderName"),a=s("xsrfCookieName"),l=s("headers"),u=s("auth"),f=s("baseURL"),c=s("allowAbsoluteUrls"),m=s("url");if(t.headers=l=O.from(l),t.url=xe(_e(f,m,c,t),s("params"),s("paramsSerializer")),u){let R=i.getSafeProp(u,"username")||"",y=i.getSafeProp(u,"password")||"";try{l.set("Authorization","Basic "+btoa(R+":"+(y?zo(y):"")))}catch(w){throw d.from(w,d.ERR_BAD_OPTION_VALUE,e)}}if(i.isFormData(r)&&(C.hasStandardBrowserEnv||C.hasStandardBrowserWebWorkerEnv||i.isReactNative(r)?l.setContentType(void 0):i.isFunction(r.getHeaders)&&Wo(l,r.getHeaders(),s("formDataHeaderPolicy"))),C.hasStandardBrowserEnv&&(i.isFunction(o)&&(o=o(t)),o===!0||o==null&&sr(t.url))){let y=n&&a&&rr.read(a);y&&l.set(n,y)}return t}var He=Qo;var Jo=typeof XMLHttpRequest<"u",ir=Jo&&function(e){return new Promise(function(s,r){let o=He(e),n=o.data,a=O.from(o.headers).normalize(),{responseType:l,onUploadProgress:u,onDownloadProgress:f}=o,c,m,R,y,w;function x(){y&&y(),w&&w(),o.cancelToken&&o.cancelToken.unsubscribe(c),o.signal&&o.signal.removeEventListener("abort",c)}let h=new XMLHttpRequest;h.open(o.method.toUpperCase(),o.url,!0),h.timeout=o.timeout;function p(){if(!h)return;let P=O.from("getAllResponseHeaders"in h&&h.getAllResponseHeaders()),L={data:!l||l==="text"||l==="json"?h.responseText:h.response,status:h.status,statusText:h.statusText,headers:P,config:e,request:h};Ce(function(v){s(v),x()},function(v){r(v),x()},L),h=null}"onloadend"in h?h.onloadend=p:h.onreadystatechange=function(){!h||h.readyState!==4||h.status===0&&!(h.responseURL&&h.responseURL.startsWith("file:"))||setTimeout(p)},h.onabort=function(){h&&(r(new d("Request aborted",d.ECONNABORTED,e,h)),x(),h=null)},h.onerror=function(F){let L=F&&F.message?F.message:"Network Error",_=new d(L,d.ERR_NETWORK,e,h);_.event=F||null,r(_),x(),h=null},h.ontimeout=function(){let F=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded",L=o.transitional||le;o.timeoutErrorMessage&&(F=o.timeoutErrorMessage),r(new d(F,L.clarifyTimeoutError?d.ETIMEDOUT:d.ECONNABORTED,e,h)),x(),h=null},n===void 0&&a.setContentType(null),"setRequestHeader"in h&&i.forEach(qe(a),function(F,L){h.setRequestHeader(L,F)}),i.isUndefined(o.withCredentials)||(h.withCredentials=!!o.withCredentials),l&&l!=="json"&&(h.responseType=o.responseType),f&&([R,w]=fe(f,!0),h.addEventListener("progress",R)),u&&h.upload&&([m,y]=fe(u),h.upload.addEventListener("progress",m),h.upload.addEventListener("loadend",y)),(o.cancelToken||o.signal)&&(c=P=>{h&&(r(!P||P.type?new M(null,e,h):P),h.abort(),x(),h=null)},o.cancelToken&&o.cancelToken.subscribe(c),o.signal&&(o.signal.aborted?c():o.signal.addEventListener("abort",c)));let g=ht(o.url);if(g&&!C.protocols.includes(g)){r(new d("Unsupported protocol "+g+":",d.ERR_BAD_REQUEST,e)),x();return}h.send(n||null)})};var Ko=(e,t)=>{if(e=e?e.filter(Boolean):[],!t&&!e.length)return;let s=new AbortController,r=!1,o=function(u){if(!r){r=!0,a();let f=u instanceof Error?u:this.reason;s.abort(f instanceof d?f:new M(f instanceof Error?f.message:f))}},n=t&&setTimeout(()=>{n=null,o(new d(`timeout of ${t}ms exceeded`,d.ETIMEDOUT))},t),a=()=>{e&&(n&&clearTimeout(n),n=null,e.forEach(u=>{u.unsubscribe?u.unsubscribe(o):u.removeEventListener("abort",o)}),e=null)};e.forEach(u=>u.addEventListener("abort",o,{once:!0}));let{signal:l}=s;return l.unsubscribe=()=>i.asap(a),l},ar=Ko;var Xo=function*(e,t){let s=e.byteLength;if(!t||s{let o=Zo(e,t),n=0,a,l=u=>{a||(a=!0,r&&r(u))};return new ReadableStream({async pull(u){try{let{done:f,value:c}=await o.next();if(f){l(),u.close();return}let m=c.byteLength;if(s){let R=n+=m;s(R)}u.enqueue(new Uint8Array(c))}catch(f){throw l(f),f}},cancel(u){return l(u),o.return()}},{highWaterMark:2})};var Ve=e=>e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102,en=(e,t,s)=>t+2y>=2&&r.charCodeAt(y-2)===37&&r.charCodeAt(y-1)===51&&(r.charCodeAt(y)===68||r.charCodeAt(y)===100);f>=0&&(r.charCodeAt(f)===61?(u++,f--):c(f)&&(u++,f-=3)),u===1&&f>=0&&(r.charCodeAt(f)===61||c(f))&&u++;let R=Math.floor(a/4)*3-(u||0);return R>0?R:0}let n=0;for(let a=0,l=r.length;a=55296&&u<=56319&&a+1=56320&&f<=57343?(n+=4,a++):n+=3}else n+=3}return n}var pe="1.18.1";var lr=64*1024,{isFunction:ve}=i,tn=e=>encodeURIComponent(e).replace(/%([0-9A-F]{2})/gi,(t,s)=>String.fromCharCode(parseInt(s,16))),ur=e=>{if(!i.isString(e))return e;try{return decodeURIComponent(e)}catch{return e}},cr=(e,...t)=>{try{return!!e(...t)}catch{return!1}},sn=e=>{let t=e.indexOf("://"),s=e;return t!==-1&&(s=s.slice(t+3)),s.includes("@")||s.includes(":")},rn=e=>{let t=i.global!==void 0&&i.global!==null?i.global:globalThis,{ReadableStream:s,TextEncoder:r}=t;e=i.merge.call({skipUndefined:!0},{Request:t.Request,Response:t.Response},e);let{fetch:o,Request:n,Response:a}=e,l=o?ve(o):typeof fetch=="function",u=ve(n),f=ve(a);if(!l)return!1;let c=l&&ve(s),m=l&&(typeof r=="function"?(p=>g=>p.encode(g))(new r):async p=>new Uint8Array(await new n(p).arrayBuffer())),R=u&&c&&cr(()=>{let p=!1,g=new n(C.origin,{body:new s,method:"POST",get duplex(){return p=!0,"half"}}),P=g.headers.has("Content-Type");return g.body!=null&&g.body.cancel(),p&&!P}),y=f&&c&&cr(()=>i.isReadableStream(new a("").body)),w={stream:y&&(p=>p.body)};l&&["text","arrayBuffer","blob","formData","stream"].forEach(p=>{!w[p]&&(w[p]=(g,P)=>{let F=g&&g[p];if(F)return F.call(g);throw new d(`Response type '${p}' is not supported`,d.ERR_NOT_SUPPORT,P)})});let x=async p=>{if(p==null)return 0;if(i.isBlob(p))return p.size;if(i.isSpecCompliantForm(p))return(await new n(C.origin,{method:"POST",body:p}).arrayBuffer()).byteLength;if(i.isArrayBufferView(p)||i.isArrayBuffer(p))return p.byteLength;if(i.isURLSearchParams(p)&&(p=p+""),i.isString(p))return(await m(p)).byteLength},h=async(p,g)=>{let P=i.toFiniteNumber(p.getContentLength());return P??x(g)};return async p=>{let{url:g,method:P,data:F,signal:L,cancelToken:_,timeout:v,onDownloadProgress:Je,onUploadProgress:Ke,responseType:W,headers:z,withCredentials:De="same-origin",fetchOptions:Tt,maxContentLength:G,maxBodyLength:$e}=He(p),de=i.isNumber(G)&&G>-1,Xe=i.isNumber($e)&&$e>-1,Ar=S=>i.hasOwnProp(p,S)?p[S]:void 0,It=o||fetch;W=W?(W+"").toLowerCase():"text";let Q=ar([L,_&&_.toAbortSignal()],v),D=null,X=Q&&Q.unsubscribe&&(()=>{Q.unsubscribe()}),se,he=null,Dt=()=>new d("Request body larger than maxBodyLength limit",d.ERR_BAD_REQUEST,p,D);try{let S,q=Ar("auth");if(q){let b=i.getSafeProp(q,"username")||"",U=i.getSafeProp(q,"password")||"";S={username:b,password:U}}if(sn(g)){let b=new URL(g,C.origin);if(!S&&(b.username||b.password)){let U=ur(b.username),J=ur(b.password);S={username:U,password:J}}(b.username||b.password)&&(b.username="",b.password="",g=b.href)}if(S&&(z.delete("authorization"),z.set("Authorization","Basic "+btoa(tn((S.username||"")+":"+(S.password||""))))),de&&typeof g=="string"&&g.startsWith("data:")&&bt(g)>G)throw new d("maxContentLength size of "+G+" exceeded",d.ERR_BAD_RESPONSE,p,D);if(Xe&&P!=="get"&&P!=="head"){let b=await x(F);if(typeof b=="number"&&isFinite(b)&&(se=b,b>$e))throw Dt()}let Le=Xe&&(i.isReadableStream(F)||i.isStream(F)),$t=(b,U,J)=>Pt(b,lr,Z=>{if(Xe&&Z>$e)throw he=Dt();U&&U(Z)},J);if(R&&P!=="get"&&P!=="head"&&(Ke||Le)){if(se=se??await h(z,F),se!==0||Le){let b=new n(g,{method:"POST",body:F,duplex:"half"}),U;if(i.isFormData(F)&&(U=b.headers.get("content-type"))&&z.setContentType(U),b.body){let[J,Z]=Ke&&At(se,fe(gt(Ke)))||[];F=$t(b.body,J,Z)}}}else if(Le&&!u&&c&&P!=="get"&&P!=="head")F=$t(F);else if(Le&&u&&!R&&P!=="get"&&P!=="head")throw new d("Stream request bodies are not supported by the current fetch implementation",d.ERR_NOT_SUPPORT,p,D);i.isString(De)||(De=De?"include":"omit");let gr=u&&"credentials"in n.prototype;if(i.isFormData(F)){let b=z.getContentType();b&&/^multipart\/form-data/i.test(b)&&!/boundary=/i.test(b)&&z.delete("content-type")}z.set("User-Agent","axios/"+pe,!1);let Lt={...Tt,signal:Q,method:P.toUpperCase(),headers:qe(z.normalize()),body:F,duplex:"half",credentials:gr?De:void 0};D=u&&new n(g,Lt);let H=await(u?It(D,Tt):It(g,Lt)),kt=O.from(H.headers);if(de){let b=i.toFiniteNumber(kt.getContentLength());if(b!=null&&b>G)throw new d("maxContentLength size of "+G+" exceeded",d.ERR_BAD_RESPONSE,p,D)}let Ze=y&&(W==="stream"||W==="response");if(y&&H.body&&(Je||de||Ze&&X)){let b={};["status","statusText","headers"].forEach(Ae=>{b[Ae]=H[Ae]});let U=i.toFiniteNumber(kt.getContentLength()),[J,Z]=Je&&At(U,fe(gt(Je),!0))||[],Nt=0,Rr=Ae=>{if(de&&(Nt=Ae,Nt>G))throw new d("maxContentLength size of "+G+" exceeded",d.ERR_BAD_RESPONSE,p,D);J&&J(Ae)};H=new a(Pt(H.body,lr,Rr,()=>{Z&&Z(),X&&X()}),b)}W=W||"text";let V=await w[i.findKey(w,W)||"text"](H,p);if(de&&!y&&!Ze){let b;if(V!=null&&(typeof V.byteLength=="number"?b=V.byteLength:typeof V.size=="number"?b=V.size:typeof V=="string"&&(b=typeof r=="function"?new r().encode(V).byteLength:V.length)),typeof b=="number"&&b>G)throw new d("maxContentLength size of "+G+" exceeded",d.ERR_BAD_RESPONSE,p,D)}return!Ze&&X&&X(),await new Promise((b,U)=>{Ce(b,U,{data:V,headers:O.from(H.headers),status:H.status,statusText:H.statusText,config:p,request:D})})}catch(S){if(X&&X(),Q&&Q.aborted&&Q.reason instanceof d){let q=Q.reason;throw q.config=p,D&&(q.request=D),S!==q&&Object.defineProperty(q,"cause",{__proto__:null,value:S,writable:!0,enumerable:!1,configurable:!0}),q}if(he)throw D&&!he.request&&(he.request=D),he;if(S instanceof d)throw D&&!S.request&&(S.request=D),S;if(S&&S.name==="TypeError"&&/Load failed|fetch/i.test(S.message)){let q=new d("Network Error",d.ERR_NETWORK,p,D,S&&S.response);throw Object.defineProperty(q,"cause",{__proto__:null,value:S.cause||S,writable:!0,enumerable:!1,configurable:!0}),q}throw d.from(S,S&&S.code,p,D,S&&S.response)}}},on=new Map,Et=e=>{let t=e&&e.env||{},{fetch:s,Request:r,Response:o}=t,n=[r,o,s],a=n.length,l=a,u,f,c=on;for(;l--;)u=n[l],f=c.get(u),f===void 0&&c.set(u,f=l?new Map:rn(t)),c=f;return f},ka=Et();var wt={http:je,xhr:ir,fetch:{get:Et}};i.forEach(wt,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{__proto__:null,value:t})}catch{}Object.defineProperty(e,"adapterName",{__proto__:null,value:t})}});var fr=e=>`- ${e}`,an=e=>i.isFunction(e)||e===null||e===!1;function ln(e,t){e=i.isArray(e)?e:[e];let{length:s}=e,r,o,n={};for(let a=0;a`adapter ${u} `+(f===!1?"is not supported by the environment":"is not available in the build")),l=s?a.length>1?`since : +`+a.map(fr).join(` +`):" "+fr(a[0]):"as no adapter specified";throw new d("There is no suitable adapter to dispatch the request "+l,d.ERR_NOT_SUPPORT)}return o}var We={getAdapter:ln,adapters:wt};function xt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new M(null,e)}function ze(e){return xt(e),e.headers=O.from(e.headers),e.data=Fe.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),We.getAdapter(e.adapter||ce.adapter,e)(e).then(function(r){xt(e),e.response=r;try{r.data=Fe.call(e,e.transformResponse,r)}finally{delete e.response}return r.headers=O.from(r.headers),r},function(r){if(!Se(r)&&(xt(e),r&&r.response)){e.response=r.response;try{r.response.data=Fe.call(e,e.transformResponse,r.response)}finally{delete e.response}r.response.headers=O.from(r.response.headers)}return Promise.reject(r)})}var Qe={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Qe[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});var pr={};Qe.transitional=function(t,s,r){function o(n,a){return"[Axios v"+pe+"] Transitional option '"+n+"'"+a+(r?". "+r:"")}return(n,a,l)=>{if(t===!1)throw new d(o(a," has been removed"+(s?" in "+s:"")),d.ERR_DEPRECATED);return s&&!pr[a]&&(pr[a]=!0,console.warn(o(a," has been deprecated since v"+s+" and will be removed in the near future"))),t?t(n,a,l):!0}};Qe.spelling=function(t){return(s,r)=>(console.warn(`${r} is likely a misspelling of ${t}`),!0)};function un(e,t,s){if(typeof e!="object"||e===null)throw new d("options must be an object",d.ERR_BAD_OPTION_VALUE);let r=Object.keys(e),o=r.length;for(;o-- >0;){let n=r[o],a=Object.prototype.hasOwnProperty.call(t,n)?t[n]:void 0;if(a){let l=e[n],u=l===void 0||a(l,n,e);if(u!==!0)throw new d("option "+n+" must be "+u,d.ERR_BAD_OPTION_VALUE);continue}if(s!==!0)throw new d("Unknown option "+n,d.ERR_BAD_OPTION)}}var Oe={assertOptions:un,validators:Qe};var k=Oe.validators,me=class{constructor(t){this.defaults=t||{},this.interceptors={request:new lt,response:new lt}}async request(t,s){try{return await this._request(t,s)}catch(r){if(r instanceof Error){let o={};Error.captureStackTrace?Error.captureStackTrace(o):o=new Error;let n=(()=>{if(!o.stack)return"";let a=o.stack.indexOf(` +`);return a===-1?"":o.stack.slice(a+1)})();try{if(!r.stack)r.stack=n;else if(n){let a=n.indexOf(` +`),l=a===-1?-1:n.indexOf(` +`,a+1),u=l===-1?"":n.slice(l+1);String(r.stack).endsWith(u)||(r.stack+=` +`+n)}}catch{}}throw r}}_request(t,s){typeof t=="string"?(s=s||{},s.url=t):s=t||{},s=j(this.defaults,s);let{transitional:r,paramsSerializer:o,headers:n}=s;r!==void 0&&Oe.assertOptions(r,{silentJSONParsing:k.transitional(k.boolean),forcedJSONParsing:k.transitional(k.boolean),clarifyTimeoutError:k.transitional(k.boolean),legacyInterceptorReqResOrdering:k.transitional(k.boolean),advertiseZstdAcceptEncoding:k.transitional(k.boolean),validateStatusUndefinedResolves:k.transitional(k.boolean)},!1),o!=null&&(i.isFunction(o)?s.paramsSerializer={serialize:o}:Oe.assertOptions(o,{encode:k.function,serialize:k.function},!0)),s.allowAbsoluteUrls!==void 0||(this.defaults.allowAbsoluteUrls!==void 0?s.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:s.allowAbsoluteUrls=!0),Oe.assertOptions(s,{baseUrl:k.spelling("baseURL"),withXsrfToken:k.spelling("withXSRFToken")},!0),s.method=(s.method||this.defaults.method||"get").toLowerCase();let a=n&&i.merge(n.common,n[s.method]);n&&i.forEach(["delete","get","head","post","put","patch","query","common"],w=>{delete n[w]}),s.headers=O.concat(a,n);let l=[],u=!0;this.interceptors.request.forEach(function(x){if(typeof x.runWhen=="function"&&x.runWhen(s)===!1)return;u=u&&x.synchronous;let h=s.transitional||le;h&&h.legacyInterceptorReqResOrdering?l.unshift(x.fulfilled,x.rejected):l.push(x.fulfilled,x.rejected)});let f=[];this.interceptors.response.forEach(function(x){f.push(x.fulfilled,x.rejected)});let c,m=0,R;if(!u){let w=[ze.bind(this),void 0];for(w.unshift(...l),w.push(...f),R=w.length,c=Promise.resolve(s);m{if(!r._listeners)return;let n=r._listeners.length;for(;n-- >0;)r._listeners[n](o);r._listeners=null}),this.promise.then=o=>{let n,a=new Promise(l=>{r.subscribe(l),n=l}).then(o);return a.cancel=function(){r.unsubscribe(n)},a},t(function(n,a,l){r.reason||(r.reason=new M(n,a,l),s(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;let s=this._listeners.indexOf(t);s!==-1&&this._listeners.splice(s,1)}toAbortSignal(){let t=new AbortController,s=r=>{t.abort(r)};return this.subscribe(s),t.signal.unsubscribe=()=>this.unsubscribe(s),t.signal}static source(){let t;return{token:new e(function(o){t=o}),cancel:t}}},mr=Ft;function St(e){return function(s){return e.apply(null,s)}}function Ct(e){return i.isObject(e)&&e.isAxiosError===!0}var _t={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511,WebServerIsDown:521,ConnectionTimedOut:522,OriginIsUnreachable:523,TimeoutOccurred:524,SslHandshakeFailed:525,InvalidSslCertificate:526};Object.entries(_t).forEach(([e,t])=>{_t[t]=e});var dr=_t;function hr(e){let t=new Te(e),s=ye(Te.prototype.request,t);return i.extend(s,Te.prototype,t,{allOwnKeys:!0}),i.extend(s,t,null,{allOwnKeys:!0}),s.create=function(o){return hr(j(e,o))},s}var I=hr(ce);I.Axios=Te;I.CanceledError=M;I.CancelToken=mr;I.isCancel=Se;I.VERSION=pe;I.toFormData=K;I.AxiosError=d;I.Cancel=I.CanceledError;I.all=function(t){return Promise.all(t)};I.spread=St;I.isAxiosError=Ct;I.mergeConfig=j;I.AxiosHeaders=O;I.formToJSON=e=>Me(i.isHTMLForm(e)?new FormData(e):e);I.getAdapter=We.getAdapter;I.HttpStatusCode=dr;I.default=I;var Ie=I;var{Axios:Dl,AxiosError:$l,CanceledError:Ll,isCancel:kl,CancelToken:Nl,VERSION:Ul,all:ql,Cancel:Bl,isAxiosError:jl,spread:Gl,toFormData:Ml,AxiosHeaders:Hl,HttpStatusCode:Vl,formToJSON:vl,getAdapter:Wl,mergeConfig:zl,create:Ql}=Ie;var Ot=class{constructor(t){this.appendHeaders=t=>{this.personalAccessToken&&(t["X-Figma-Token"]=this.personalAccessToken),this.oAuthToken&&(t.Authorization=`Bearer ${this.oAuthToken}`)};this.request=(t,s)=>{let r={};this.appendHeaders(r);let o={url:t,...s,headers:r};return Ie(o).then(n=>n.data).catch(n=>{throw new Re(n)})};this.getFile=qt;this.getFileNodes=Bt;this.getFileMeta=jt;this.getImages=Gt;this.getImageFills=Mt;this.getComments=Ht;this.postComment=Vt;this.deleteComment=vt;this.getCommentReactions=Wt;this.postCommentReaction=zt;this.deleteCommentReactions=Qt;this.getUserMe=Jt;this.getFileVersions=Kt;this.getTeamProjects=Xt;this.getProjectFiles=Zt;this.getTeamFolders=Yt;this.getFolderFolders=es;this.getFolderFiles=ts;this.getFolderMeta=ss;this.getTeamComponents=rs;this.getFileComponents=os;this.getComponent=ns;this.getTeamComponentSets=is;this.getFileComponentSets=as;this.getComponentSet=ls;this.getTeamStyles=us;this.getFileStyles=cs;this.getStyle=fs;this.getWebhook=ps;this.postWebhook=ms;this.putWebhook=ds;this.deleteWebhook=hs;this.getTeamWebhooks=As;this.getWebhookRequests=gs;this.getLocalVariables=Rs;this.getPublishedVariables=ys;this.postVariables=Ps;this.getDevResources=bs;this.postDevResources=Es;this.putDevResources=ws;this.deleteDevResources=xs;this.getLibraryAnalyticsComponentActions=Fs;this.getLibraryAnalyticsComponentUsages=Ss;this.getLibraryAnalyticsStyleActions=Cs;this.getLibraryAnalyticsStyleUsages=_s;this.getLibraryAnalyticsVariableActions=Os;this.getLibraryAnalyticsVariableUsages=Ts;"personalAccessToken"in t&&(this.personalAccessToken=t.personalAccessToken),"oAuthToken"in t&&(this.oAuthToken=t.oAuthToken)}};function cn(e,t,s,r,o){return`https://www.figma.com/oauth?${T({client_id:e,redirect_uri:t,scope:Array.isArray(s)?s.join(" "):s,state:r,response_type:o})}`}async function fn(e,t,s,r,o){let n={Authorization:`Basic ${Buffer.from(`${e}:${t}`).toString("base64")}`},l=`https://api.figma.com/v1/oauth/token?${T({redirect_uri:s,code:r,grant_type:o})}`,u=await Ie.post(l,null,{headers:n});if(u.status!==200)throw new Re(u);return u.data}return wr(pn);})(); diff --git a/lib/index.js b/lib/index.js index 0a1b8b0..61c22e2 100644 --- a/lib/index.js +++ b/lib/index.js @@ -34,9 +34,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); -// node_modules/.pnpm/delayed-stream@1.0.0/node_modules/delayed-stream/lib/delayed_stream.js +// node_modules/delayed-stream/lib/delayed_stream.js var require_delayed_stream = __commonJS({ - "node_modules/.pnpm/delayed-stream@1.0.0/node_modules/delayed-stream/lib/delayed_stream.js"(exports2, module2) { + "node_modules/delayed-stream/lib/delayed_stream.js"(exports2, module2) { var Stream = require("stream").Stream; var util4 = require("util"); module2.exports = DelayedStream; @@ -125,9 +125,9 @@ var require_delayed_stream = __commonJS({ } }); -// node_modules/.pnpm/combined-stream@1.0.8/node_modules/combined-stream/lib/combined_stream.js +// node_modules/combined-stream/lib/combined_stream.js var require_combined_stream = __commonJS({ - "node_modules/.pnpm/combined-stream@1.0.8/node_modules/combined-stream/lib/combined_stream.js"(exports2, module2) { + "node_modules/combined-stream/lib/combined_stream.js"(exports2, module2) { var util4 = require("util"); var Stream = require("stream").Stream; var DelayedStream = require_delayed_stream(); @@ -294,9 +294,9 @@ var require_combined_stream = __commonJS({ } }); -// node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json +// node_modules/mime-db/db.json var require_db = __commonJS({ - "node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/db.json"(exports2, module2) { + "node_modules/mime-db/db.json"(exports2, module2) { module2.exports = { "application/1d-interleaved-parityfec": { source: "iana" @@ -8819,16 +8819,16 @@ var require_db = __commonJS({ } }); -// node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js +// node_modules/mime-db/index.js var require_mime_db = __commonJS({ - "node_modules/.pnpm/mime-db@1.52.0/node_modules/mime-db/index.js"(exports2, module2) { + "node_modules/mime-db/index.js"(exports2, module2) { module2.exports = require_db(); } }); -// node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js +// node_modules/mime-types/index.js var require_mime_types = __commonJS({ - "node_modules/.pnpm/mime-types@2.1.35/node_modules/mime-types/index.js"(exports2) { + "node_modules/mime-types/index.js"(exports2) { "use strict"; var db = require_mime_db(); var extname = require("path").extname; @@ -8916,9 +8916,9 @@ var require_mime_types = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/defer.js +// node_modules/asynckit/lib/defer.js var require_defer = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/defer.js"(exports2, module2) { + "node_modules/asynckit/lib/defer.js"(exports2, module2) { module2.exports = defer; function defer(fn) { var nextTick = typeof setImmediate == "function" ? setImmediate : typeof process == "object" && typeof process.nextTick == "function" ? process.nextTick : null; @@ -8931,9 +8931,9 @@ var require_defer = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/async.js +// node_modules/asynckit/lib/async.js var require_async = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/async.js"(exports2, module2) { + "node_modules/asynckit/lib/async.js"(exports2, module2) { var defer = require_defer(); module2.exports = async; function async(callback) { @@ -8954,9 +8954,9 @@ var require_async = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/abort.js +// node_modules/asynckit/lib/abort.js var require_abort = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/abort.js"(exports2, module2) { + "node_modules/asynckit/lib/abort.js"(exports2, module2) { module2.exports = abort; function abort(state) { Object.keys(state.jobs).forEach(clean.bind(state)); @@ -8970,9 +8970,9 @@ var require_abort = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/iterate.js +// node_modules/asynckit/lib/iterate.js var require_iterate = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/iterate.js"(exports2, module2) { + "node_modules/asynckit/lib/iterate.js"(exports2, module2) { var async = require_async(); var abort = require_abort(); module2.exports = iterate; @@ -9003,9 +9003,9 @@ var require_iterate = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/state.js +// node_modules/asynckit/lib/state.js var require_state = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/state.js"(exports2, module2) { + "node_modules/asynckit/lib/state.js"(exports2, module2) { module2.exports = state; function state(list, sortMethod) { var isNamedList = !Array.isArray(list), initState = { @@ -9025,9 +9025,9 @@ var require_state = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/terminator.js +// node_modules/asynckit/lib/terminator.js var require_terminator = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/lib/terminator.js"(exports2, module2) { + "node_modules/asynckit/lib/terminator.js"(exports2, module2) { var abort = require_abort(); var async = require_async(); module2.exports = terminator; @@ -9042,9 +9042,9 @@ var require_terminator = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/parallel.js +// node_modules/asynckit/parallel.js var require_parallel = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/parallel.js"(exports2, module2) { + "node_modules/asynckit/parallel.js"(exports2, module2) { var iterate = require_iterate(); var initState = require_state(); var terminator = require_terminator(); @@ -9069,9 +9069,9 @@ var require_parallel = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serialOrdered.js +// node_modules/asynckit/serialOrdered.js var require_serialOrdered = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serialOrdered.js"(exports2, module2) { + "node_modules/asynckit/serialOrdered.js"(exports2, module2) { var iterate = require_iterate(); var initState = require_state(); var terminator = require_terminator(); @@ -9103,9 +9103,9 @@ var require_serialOrdered = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serial.js +// node_modules/asynckit/serial.js var require_serial = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/serial.js"(exports2, module2) { + "node_modules/asynckit/serial.js"(exports2, module2) { var serialOrdered = require_serialOrdered(); module2.exports = serial; function serial(list, iterator2, callback) { @@ -9114,9 +9114,9 @@ var require_serial = __commonJS({ } }); -// node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/index.js +// node_modules/asynckit/index.js var require_asynckit = __commonJS({ - "node_modules/.pnpm/asynckit@0.4.0/node_modules/asynckit/index.js"(exports2, module2) { + "node_modules/asynckit/index.js"(exports2, module2) { module2.exports = { parallel: require_parallel(), serial: require_serial(), @@ -9125,121 +9125,121 @@ var require_asynckit = __commonJS({ } }); -// node_modules/.pnpm/es-object-atoms@1.1.1/node_modules/es-object-atoms/index.js +// node_modules/es-object-atoms/index.js var require_es_object_atoms = __commonJS({ - "node_modules/.pnpm/es-object-atoms@1.1.1/node_modules/es-object-atoms/index.js"(exports2, module2) { + "node_modules/es-object-atoms/index.js"(exports2, module2) { "use strict"; module2.exports = Object; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/index.js +// node_modules/es-errors/index.js var require_es_errors = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/index.js"(exports2, module2) { + "node_modules/es-errors/index.js"(exports2, module2) { "use strict"; module2.exports = Error; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/eval.js +// node_modules/es-errors/eval.js var require_eval = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/eval.js"(exports2, module2) { + "node_modules/es-errors/eval.js"(exports2, module2) { "use strict"; module2.exports = EvalError; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/range.js +// node_modules/es-errors/range.js var require_range = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/range.js"(exports2, module2) { + "node_modules/es-errors/range.js"(exports2, module2) { "use strict"; module2.exports = RangeError; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/ref.js +// node_modules/es-errors/ref.js var require_ref = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/ref.js"(exports2, module2) { + "node_modules/es-errors/ref.js"(exports2, module2) { "use strict"; module2.exports = ReferenceError; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/syntax.js +// node_modules/es-errors/syntax.js var require_syntax = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/syntax.js"(exports2, module2) { + "node_modules/es-errors/syntax.js"(exports2, module2) { "use strict"; module2.exports = SyntaxError; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/type.js +// node_modules/es-errors/type.js var require_type = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/type.js"(exports2, module2) { + "node_modules/es-errors/type.js"(exports2, module2) { "use strict"; module2.exports = TypeError; } }); -// node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/uri.js +// node_modules/es-errors/uri.js var require_uri = __commonJS({ - "node_modules/.pnpm/es-errors@1.3.0/node_modules/es-errors/uri.js"(exports2, module2) { + "node_modules/es-errors/uri.js"(exports2, module2) { "use strict"; module2.exports = URIError; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/abs.js +// node_modules/math-intrinsics/abs.js var require_abs = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/abs.js"(exports2, module2) { + "node_modules/math-intrinsics/abs.js"(exports2, module2) { "use strict"; module2.exports = Math.abs; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/floor.js +// node_modules/math-intrinsics/floor.js var require_floor = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/floor.js"(exports2, module2) { + "node_modules/math-intrinsics/floor.js"(exports2, module2) { "use strict"; module2.exports = Math.floor; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/max.js +// node_modules/math-intrinsics/max.js var require_max = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/max.js"(exports2, module2) { + "node_modules/math-intrinsics/max.js"(exports2, module2) { "use strict"; module2.exports = Math.max; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/min.js +// node_modules/math-intrinsics/min.js var require_min = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/min.js"(exports2, module2) { + "node_modules/math-intrinsics/min.js"(exports2, module2) { "use strict"; module2.exports = Math.min; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/pow.js +// node_modules/math-intrinsics/pow.js var require_pow = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/pow.js"(exports2, module2) { + "node_modules/math-intrinsics/pow.js"(exports2, module2) { "use strict"; module2.exports = Math.pow; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/round.js +// node_modules/math-intrinsics/round.js var require_round = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/round.js"(exports2, module2) { + "node_modules/math-intrinsics/round.js"(exports2, module2) { "use strict"; module2.exports = Math.round; } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/isNaN.js +// node_modules/math-intrinsics/isNaN.js var require_isNaN = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/isNaN.js"(exports2, module2) { + "node_modules/math-intrinsics/isNaN.js"(exports2, module2) { "use strict"; module2.exports = Number.isNaN || function isNaN2(a) { return a !== a; @@ -9247,9 +9247,9 @@ var require_isNaN = __commonJS({ } }); -// node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/sign.js +// node_modules/math-intrinsics/sign.js var require_sign = __commonJS({ - "node_modules/.pnpm/math-intrinsics@1.1.0/node_modules/math-intrinsics/sign.js"(exports2, module2) { + "node_modules/math-intrinsics/sign.js"(exports2, module2) { "use strict"; var $isNaN = require_isNaN(); module2.exports = function sign(number) { @@ -9261,17 +9261,17 @@ var require_sign = __commonJS({ } }); -// node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/gOPD.js +// node_modules/gopd/gOPD.js var require_gOPD = __commonJS({ - "node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/gOPD.js"(exports2, module2) { + "node_modules/gopd/gOPD.js"(exports2, module2) { "use strict"; module2.exports = Object.getOwnPropertyDescriptor; } }); -// node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/index.js +// node_modules/gopd/index.js var require_gopd = __commonJS({ - "node_modules/.pnpm/gopd@1.2.0/node_modules/gopd/index.js"(exports2, module2) { + "node_modules/gopd/index.js"(exports2, module2) { "use strict"; var $gOPD = require_gOPD(); if ($gOPD) { @@ -9285,9 +9285,9 @@ var require_gopd = __commonJS({ } }); -// node_modules/.pnpm/es-define-property@1.0.1/node_modules/es-define-property/index.js +// node_modules/es-define-property/index.js var require_es_define_property = __commonJS({ - "node_modules/.pnpm/es-define-property@1.0.1/node_modules/es-define-property/index.js"(exports2, module2) { + "node_modules/es-define-property/index.js"(exports2, module2) { "use strict"; var $defineProperty = Object.defineProperty || false; if ($defineProperty) { @@ -9301,9 +9301,9 @@ var require_es_define_property = __commonJS({ } }); -// node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/shams.js +// node_modules/has-symbols/shams.js var require_shams = __commonJS({ - "node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/shams.js"(exports2, module2) { + "node_modules/has-symbols/shams.js"(exports2, module2) { "use strict"; module2.exports = function hasSymbols() { if (typeof Symbol !== "function" || typeof Object.getOwnPropertySymbols !== "function") { @@ -9356,9 +9356,9 @@ var require_shams = __commonJS({ } }); -// node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/index.js +// node_modules/has-symbols/index.js var require_has_symbols = __commonJS({ - "node_modules/.pnpm/has-symbols@1.1.0/node_modules/has-symbols/index.js"(exports2, module2) { + "node_modules/has-symbols/index.js"(exports2, module2) { "use strict"; var origSymbol = typeof Symbol !== "undefined" && Symbol; var hasSymbolSham = require_shams(); @@ -9380,26 +9380,26 @@ var require_has_symbols = __commonJS({ } }); -// node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Reflect.getPrototypeOf.js +// node_modules/get-proto/Reflect.getPrototypeOf.js var require_Reflect_getPrototypeOf = __commonJS({ - "node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Reflect.getPrototypeOf.js"(exports2, module2) { + "node_modules/get-proto/Reflect.getPrototypeOf.js"(exports2, module2) { "use strict"; module2.exports = typeof Reflect !== "undefined" && Reflect.getPrototypeOf || null; } }); -// node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Object.getPrototypeOf.js +// node_modules/get-proto/Object.getPrototypeOf.js var require_Object_getPrototypeOf = __commonJS({ - "node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/Object.getPrototypeOf.js"(exports2, module2) { + "node_modules/get-proto/Object.getPrototypeOf.js"(exports2, module2) { "use strict"; var $Object = require_es_object_atoms(); module2.exports = $Object.getPrototypeOf || null; } }); -// node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/implementation.js +// node_modules/function-bind/implementation.js var require_implementation = __commonJS({ - "node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/implementation.js"(exports2, module2) { + "node_modules/function-bind/implementation.js"(exports2, module2) { "use strict"; var ERROR_MESSAGE = "Function.prototype.bind called on incompatible "; var toStr = Object.prototype.toString; @@ -9473,42 +9473,42 @@ var require_implementation = __commonJS({ } }); -// node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/index.js +// node_modules/function-bind/index.js var require_function_bind = __commonJS({ - "node_modules/.pnpm/function-bind@1.1.2/node_modules/function-bind/index.js"(exports2, module2) { + "node_modules/function-bind/index.js"(exports2, module2) { "use strict"; var implementation = require_implementation(); module2.exports = Function.prototype.bind || implementation; } }); -// node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionCall.js +// node_modules/call-bind-apply-helpers/functionCall.js var require_functionCall = __commonJS({ - "node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionCall.js"(exports2, module2) { + "node_modules/call-bind-apply-helpers/functionCall.js"(exports2, module2) { "use strict"; module2.exports = Function.prototype.call; } }); -// node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionApply.js +// node_modules/call-bind-apply-helpers/functionApply.js var require_functionApply = __commonJS({ - "node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/functionApply.js"(exports2, module2) { + "node_modules/call-bind-apply-helpers/functionApply.js"(exports2, module2) { "use strict"; module2.exports = Function.prototype.apply; } }); -// node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/reflectApply.js +// node_modules/call-bind-apply-helpers/reflectApply.js var require_reflectApply = __commonJS({ - "node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/reflectApply.js"(exports2, module2) { + "node_modules/call-bind-apply-helpers/reflectApply.js"(exports2, module2) { "use strict"; module2.exports = typeof Reflect !== "undefined" && Reflect && Reflect.apply; } }); -// node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/actualApply.js +// node_modules/call-bind-apply-helpers/actualApply.js var require_actualApply = __commonJS({ - "node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/actualApply.js"(exports2, module2) { + "node_modules/call-bind-apply-helpers/actualApply.js"(exports2, module2) { "use strict"; var bind2 = require_function_bind(); var $apply = require_functionApply(); @@ -9518,9 +9518,9 @@ var require_actualApply = __commonJS({ } }); -// node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/index.js +// node_modules/call-bind-apply-helpers/index.js var require_call_bind_apply_helpers = __commonJS({ - "node_modules/.pnpm/call-bind-apply-helpers@1.0.2/node_modules/call-bind-apply-helpers/index.js"(exports2, module2) { + "node_modules/call-bind-apply-helpers/index.js"(exports2, module2) { "use strict"; var bind2 = require_function_bind(); var $TypeError = require_type(); @@ -9535,9 +9535,9 @@ var require_call_bind_apply_helpers = __commonJS({ } }); -// node_modules/.pnpm/dunder-proto@1.0.1/node_modules/dunder-proto/get.js +// node_modules/dunder-proto/get.js var require_get = __commonJS({ - "node_modules/.pnpm/dunder-proto@1.0.1/node_modules/dunder-proto/get.js"(exports2, module2) { + "node_modules/dunder-proto/get.js"(exports2, module2) { "use strict"; var callBind = require_call_bind_apply_helpers(); var gOPD = require_gopd(); @@ -9566,9 +9566,9 @@ var require_get = __commonJS({ } }); -// node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/index.js +// node_modules/get-proto/index.js var require_get_proto = __commonJS({ - "node_modules/.pnpm/get-proto@1.0.1/node_modules/get-proto/index.js"(exports2, module2) { + "node_modules/get-proto/index.js"(exports2, module2) { "use strict"; var reflectGetProto = require_Reflect_getPrototypeOf(); var originalGetProto = require_Object_getPrototypeOf(); @@ -9586,9 +9586,9 @@ var require_get_proto = __commonJS({ } }); -// node_modules/.pnpm/hasown@2.0.2/node_modules/hasown/index.js +// node_modules/hasown/index.js var require_hasown = __commonJS({ - "node_modules/.pnpm/hasown@2.0.2/node_modules/hasown/index.js"(exports2, module2) { + "node_modules/hasown/index.js"(exports2, module2) { "use strict"; var call = Function.prototype.call; var $hasOwn = Object.prototype.hasOwnProperty; @@ -9597,9 +9597,9 @@ var require_hasown = __commonJS({ } }); -// node_modules/.pnpm/get-intrinsic@1.3.0/node_modules/get-intrinsic/index.js +// node_modules/get-intrinsic/index.js var require_get_intrinsic = __commonJS({ - "node_modules/.pnpm/get-intrinsic@1.3.0/node_modules/get-intrinsic/index.js"(exports2, module2) { + "node_modules/get-intrinsic/index.js"(exports2, module2) { "use strict"; var undefined2; var $Object = require_es_object_atoms(); @@ -9928,9 +9928,9 @@ var require_get_intrinsic = __commonJS({ } }); -// node_modules/.pnpm/has-tostringtag@1.0.2/node_modules/has-tostringtag/shams.js +// node_modules/has-tostringtag/shams.js var require_shams2 = __commonJS({ - "node_modules/.pnpm/has-tostringtag@1.0.2/node_modules/has-tostringtag/shams.js"(exports2, module2) { + "node_modules/has-tostringtag/shams.js"(exports2, module2) { "use strict"; var hasSymbols = require_shams(); module2.exports = function hasToStringTagShams() { @@ -9939,9 +9939,9 @@ var require_shams2 = __commonJS({ } }); -// node_modules/.pnpm/es-set-tostringtag@2.1.0/node_modules/es-set-tostringtag/index.js +// node_modules/es-set-tostringtag/index.js var require_es_set_tostringtag = __commonJS({ - "node_modules/.pnpm/es-set-tostringtag@2.1.0/node_modules/es-set-tostringtag/index.js"(exports2, module2) { + "node_modules/es-set-tostringtag/index.js"(exports2, module2) { "use strict"; var GetIntrinsic = require_get_intrinsic(); var $defineProperty = GetIntrinsic("%Object.defineProperty%", true); @@ -9971,9 +9971,9 @@ var require_es_set_tostringtag = __commonJS({ } }); -// node_modules/.pnpm/form-data@4.0.5/node_modules/form-data/lib/populate.js +// node_modules/form-data/lib/populate.js var require_populate = __commonJS({ - "node_modules/.pnpm/form-data@4.0.5/node_modules/form-data/lib/populate.js"(exports2, module2) { + "node_modules/form-data/lib/populate.js"(exports2, module2) { "use strict"; module2.exports = function(dst, src) { Object.keys(src).forEach(function(prop) { @@ -9984,9 +9984,9 @@ var require_populate = __commonJS({ } }); -// node_modules/.pnpm/form-data@4.0.5/node_modules/form-data/lib/form_data.js +// node_modules/form-data/lib/form_data.js var require_form_data = __commonJS({ - "node_modules/.pnpm/form-data@4.0.5/node_modules/form-data/lib/form_data.js"(exports2, module2) { + "node_modules/form-data/lib/form_data.js"(exports2, module2) { "use strict"; var CombinedStream = require_combined_stream(); var util4 = require("util"); @@ -10002,6 +10002,9 @@ var require_form_data = __commonJS({ var setToStringTag = require_es_set_tostringtag(); var hasOwn = require_hasown(); var populate = require_populate(); + function escapeHeaderParam(str) { + return String(str).replace(/\r/g, "%0D").replace(/\n/g, "%0A").replace(/"/g, "%22"); + } function FormData3(options) { if (!(this instanceof FormData3)) { return new FormData3(options); @@ -10091,7 +10094,7 @@ var require_form_data = __commonJS({ var contents = ""; var headers = { // add custom disposition as third element or keep it two elements if not - "Content-Disposition": ["form-data", 'name="' + field + '"'].concat(contentDisposition || []), + "Content-Disposition": ["form-data", 'name="' + escapeHeaderParam(field) + '"'].concat(contentDisposition || []), // if no content type. allow it to be empty array "Content-Type": [].concat(contentType || []) }; @@ -10125,7 +10128,7 @@ var require_form_data = __commonJS({ filename = path.basename(value.client._httpMessage.path || ""); } if (filename) { - return 'filename="' + filename + '"'; + return 'filename="' + escapeHeaderParam(filename) + '"'; } }; FormData3.prototype._getContentType = function(value, options) { @@ -10303,9 +10306,9 @@ var require_form_data = __commonJS({ } }); -// node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js +// node_modules/ms/index.js var require_ms = __commonJS({ - "node_modules/.pnpm/ms@2.1.3/node_modules/ms/index.js"(exports2, module2) { + "node_modules/ms/index.js"(exports2, module2) { var s = 1e3; var m = s * 60; var h = m * 60; @@ -10419,9 +10422,9 @@ var require_ms = __commonJS({ } }); -// node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/common.js +// node_modules/debug/src/common.js var require_common = __commonJS({ - "node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/common.js"(exports2, module2) { + "node_modules/debug/src/common.js"(exports2, module2) { function setup(env) { createDebug.debug = createDebug; createDebug.default = createDebug; @@ -10596,9 +10599,9 @@ var require_common = __commonJS({ } }); -// node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/browser.js +// node_modules/debug/src/browser.js var require_browser = __commonJS({ - "node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/browser.js"(exports2, module2) { + "node_modules/debug/src/browser.js"(exports2, module2) { exports2.formatArgs = formatArgs; exports2.save = save; exports2.load = load; @@ -10766,9 +10769,9 @@ var require_browser = __commonJS({ } }); -// node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js +// node_modules/has-flag/index.js var require_has_flag = __commonJS({ - "node_modules/.pnpm/has-flag@4.0.0/node_modules/has-flag/index.js"(exports2, module2) { + "node_modules/has-flag/index.js"(exports2, module2) { "use strict"; module2.exports = (flag, argv = process.argv) => { const prefix = flag.startsWith("-") ? "" : flag.length === 1 ? "-" : "--"; @@ -10779,9 +10782,9 @@ var require_has_flag = __commonJS({ } }); -// node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js +// node_modules/supports-color/index.js var require_supports_color = __commonJS({ - "node_modules/.pnpm/supports-color@7.2.0/node_modules/supports-color/index.js"(exports2, module2) { + "node_modules/supports-color/index.js"(exports2, module2) { "use strict"; var os = require("os"); var tty = require("tty"); @@ -10881,9 +10884,9 @@ var require_supports_color = __commonJS({ } }); -// node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/node.js +// node_modules/debug/src/node.js var require_node = __commonJS({ - "node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/node.js"(exports2, module2) { + "node_modules/debug/src/node.js"(exports2, module2) { var tty = require("tty"); var util4 = require("util"); exports2.init = init; @@ -11055,9 +11058,9 @@ var require_node = __commonJS({ } }); -// node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/index.js +// node_modules/debug/src/index.js var require_src = __commonJS({ - "node_modules/.pnpm/debug@4.4.3/node_modules/debug/src/index.js"(exports2, module2) { + "node_modules/debug/src/index.js"(exports2, module2) { if (typeof process === "undefined" || process.type === "renderer" || process.browser === true || process.__nwjs) { module2.exports = require_browser(); } else { @@ -11066,9 +11069,9 @@ var require_src = __commonJS({ } }); -// node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js +// node_modules/agent-base/dist/src/promisify.js var require_promisify = __commonJS({ - "node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/promisify.js"(exports2) { + "node_modules/agent-base/dist/src/promisify.js"(exports2) { "use strict"; Object.defineProperty(exports2, "__esModule", { value: true }); function promisify(fn) { @@ -11088,9 +11091,9 @@ var require_promisify = __commonJS({ } }); -// node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js +// node_modules/agent-base/dist/src/index.js var require_src2 = __commonJS({ - "node_modules/.pnpm/agent-base@6.0.2/node_modules/agent-base/dist/src/index.js"(exports2, module2) { + "node_modules/agent-base/dist/src/index.js"(exports2, module2) { "use strict"; var __importDefault = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; @@ -11271,9 +11274,9 @@ var require_src2 = __commonJS({ } }); -// node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js +// node_modules/https-proxy-agent/dist/parse-proxy-response.js var require_parse_proxy_response = __commonJS({ - "node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports2) { + "node_modules/https-proxy-agent/dist/parse-proxy-response.js"(exports2) { "use strict"; var __importDefault = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; @@ -11337,9 +11340,9 @@ var require_parse_proxy_response = __commonJS({ } }); -// node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js +// node_modules/https-proxy-agent/dist/agent.js var require_agent = __commonJS({ - "node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/agent.js"(exports2) { + "node_modules/https-proxy-agent/dist/agent.js"(exports2) { "use strict"; var __awaiter = exports2 && exports2.__awaiter || function(thisArg, _arguments, P, generator) { function adopt(value) { @@ -11497,9 +11500,9 @@ var require_agent = __commonJS({ } }); -// node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/index.js +// node_modules/https-proxy-agent/dist/index.js var require_dist = __commonJS({ - "node_modules/.pnpm/https-proxy-agent@5.0.1/node_modules/https-proxy-agent/dist/index.js"(exports2, module2) { + "node_modules/https-proxy-agent/dist/index.js"(exports2, module2) { "use strict"; var __importDefault = exports2 && exports2.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { "default": mod }; @@ -11516,9 +11519,9 @@ var require_dist = __commonJS({ } }); -// node_modules/.pnpm/follow-redirects@1.16.0/node_modules/follow-redirects/debug.js +// node_modules/follow-redirects/debug.js var require_debug = __commonJS({ - "node_modules/.pnpm/follow-redirects@1.16.0/node_modules/follow-redirects/debug.js"(exports2, module2) { + "node_modules/follow-redirects/debug.js"(exports2, module2) { var debug; module2.exports = function() { if (!debug) { @@ -11536,9 +11539,9 @@ var require_debug = __commonJS({ } }); -// node_modules/.pnpm/follow-redirects@1.16.0/node_modules/follow-redirects/index.js +// node_modules/follow-redirects/index.js var require_follow_redirects = __commonJS({ - "node_modules/.pnpm/follow-redirects@1.16.0/node_modules/follow-redirects/index.js"(exports2, module2) { + "node_modules/follow-redirects/index.js"(exports2, module2) { var url2 = require("url"); var URL2 = url2.URL; var http3 = require("http"); @@ -12052,6 +12055,7 @@ var index_exports = {}; __export(index_exports, { API_DOMAIN: () => API_DOMAIN, API_VER: () => API_VER, + API_VER_FOLDERS: () => API_VER_FOLDERS, API_VER_WEBHOOKS: () => API_VER_WEBHOOKS, Api: () => Api, oAuthLink: () => oAuthLink, @@ -12063,6 +12067,7 @@ module.exports = __toCommonJS(index_exports); var API_DOMAIN = "https://api.figma.com"; var API_VER = "v1"; var API_VER_WEBHOOKS = "v2"; +var API_VER_FOLDERS = "v2"; // src/utils.ts function toQueryParams(x) { @@ -12146,6 +12151,19 @@ function getProjectFilesApi(pathParams, queryParams) { const encodedQueryParams = toQueryParams(queryParams); return this.request(`${API_DOMAIN}/${API_VER}/projects/${pathParams.project_id}/files?${encodedQueryParams}`); } +function getTeamFoldersApi(pathParams) { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/teams/${pathParams.team_id}/folders`); +} +function getFolderFoldersApi(pathParams) { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/folders`); +} +function getFolderFilesApi(pathParams, queryParams) { + const encodedQueryParams = toQueryParams(queryParams); + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/files?${encodedQueryParams}`); +} +function getFolderMetaApi(pathParams) { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/meta`); +} function getTeamComponentsApi(pathParams, queryParams) { const encodedQueryParams = toQueryParams(queryParams); return this.request(`${API_DOMAIN}/${API_VER}/teams/${pathParams.team_id}/components?${encodedQueryParams}`); @@ -12262,14 +12280,14 @@ function getLibraryAnalyticsVariableUsagesApi(pathParams, queryParams) { return this.request(`${API_DOMAIN}/${API_VER}/analytics/libraries/${pathParams.file_key}/variable/usages?${encodedQueryParams}`); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/bind.js +// node_modules/axios/lib/helpers/bind.js function bind(fn, thisArg) { return function wrap() { return fn.apply(thisArg, arguments); }; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/utils.js +// node_modules/axios/lib/utils.js var { toString } = Object.prototype; var { getPrototypeOf } = Object; var { iterator, toStringTag } = Symbol; @@ -12746,7 +12764,7 @@ var utils_default = { isSafeIterable }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/parseHeaders.js +// node_modules/axios/lib/helpers/parseHeaders.js var ignoreDuplicateOf = utils_default.toObjectSet([ "age", "authorization", @@ -12791,7 +12809,7 @@ var parseHeaders_default = (rawHeaders) => { return parsed; }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/sanitizeHeaderValue.js +// node_modules/axios/lib/helpers/sanitizeHeaderValue.js function trimSPorHTAB(str) { let start = 0; let end = str.length; @@ -12829,7 +12847,7 @@ function toByteStringHeaderObject(headers) { return byteStringHeaders; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/AxiosHeaders.js +// node_modules/axios/lib/core/AxiosHeaders.js var $internals = /* @__PURE__ */ Symbol("internals"); function normalizeHeader(header) { return header && String(header).trim().toLowerCase(); @@ -13074,7 +13092,7 @@ utils_default.reduceDescriptors(AxiosHeaders.prototype, ({ value }, key) => { utils_default.freezeMethods(AxiosHeaders); var AxiosHeaders_default = AxiosHeaders; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/AxiosError.js +// node_modules/axios/lib/core/AxiosError.js var REDACTED = "[REDACTED ****]"; function hasOwnOrPrototypeToJSON(source) { if (utils_default.hasOwnProp(source, "toJSON")) { @@ -13215,11 +13233,11 @@ AxiosError.ERR_INVALID_URL = "ERR_INVALID_URL"; AxiosError.ERR_FORM_DATA_DEPTH_EXCEEDED = "ERR_FORM_DATA_DEPTH_EXCEEDED"; var AxiosError_default = AxiosError; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/node/classes/FormData.js +// node_modules/axios/lib/platform/node/classes/FormData.js var import_form_data = __toESM(require_form_data(), 1); var FormData_default = import_form_data.default; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/toFormData.js +// node_modules/axios/lib/helpers/toFormData.js var DEFAULT_FORM_DATA_MAX_DEPTH = 100; function isVisitable(thing) { return utils_default.isPlainObject(thing) || utils_default.isArray(thing); @@ -13371,7 +13389,7 @@ function toFormData(obj, formData, options) { } var toFormData_default = toFormData; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/AxiosURLSearchParams.js +// node_modules/axios/lib/helpers/AxiosURLSearchParams.js function encode(str) { const charMap = { "!": "%21", @@ -13401,7 +13419,7 @@ prototype.toString = function toString2(encoder) { }; var AxiosURLSearchParams_default = AxiosURLSearchParams; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/buildURL.js +// node_modules/axios/lib/helpers/buildURL.js function encode2(val) { return encodeURIComponent(val).replace(/%3A/gi, ":").replace(/%24/g, "$").replace(/%2C/gi, ",").replace(/%20/g, "+"); } @@ -13431,7 +13449,7 @@ function buildURL(url2, params, options) { return url2; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/InterceptorManager.js +// node_modules/axios/lib/core/InterceptorManager.js var InterceptorManager = class { constructor() { this.handlers = []; @@ -13496,7 +13514,7 @@ var InterceptorManager = class { }; var InterceptorManager_default = InterceptorManager; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/defaults/transitional.js +// node_modules/axios/lib/defaults/transitional.js var transitional_default = { silentJSONParsing: true, forcedJSONParsing: true, @@ -13506,14 +13524,14 @@ var transitional_default = { validateStatusUndefinedResolves: true }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/node/index.js +// node_modules/axios/lib/platform/node/index.js var import_crypto = __toESM(require("crypto"), 1); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/node/classes/URLSearchParams.js +// node_modules/axios/lib/platform/node/classes/URLSearchParams.js var import_url = __toESM(require("url"), 1); var URLSearchParams_default = import_url.default.URLSearchParams; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/node/index.js +// node_modules/axios/lib/platform/node/index.js var ALPHA = "abcdefghijklmnopqrstuvwxyz"; var DIGIT = "0123456789"; var ALPHABET = { @@ -13543,7 +13561,7 @@ var node_default = { protocols: ["http", "https", "file", "data"] }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/common/utils.js +// node_modules/axios/lib/platform/common/utils.js var utils_exports = {}; __export(utils_exports, { hasBrowserEnv: () => hasBrowserEnv, @@ -13561,13 +13579,13 @@ var hasStandardBrowserWebWorkerEnv = (() => { })(); var origin = hasBrowserEnv && window.location.href || "http://localhost"; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/platform/index.js +// node_modules/axios/lib/platform/index.js var platform_default = { ...utils_exports, ...node_default }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/toURLEncodedForm.js +// node_modules/axios/lib/helpers/toURLEncodedForm.js function toURLEncodedForm(data, options) { return toFormData_default(data, new platform_default.classes.URLSearchParams(), { visitor: function(value, key, path, helpers) { @@ -13581,7 +13599,7 @@ function toURLEncodedForm(data, options) { }); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/formDataToJSON.js +// node_modules/axios/lib/helpers/formDataToJSON.js var MAX_DEPTH = DEFAULT_FORM_DATA_MAX_DEPTH; function throwIfDepthExceeded(index) { if (index > MAX_DEPTH) { @@ -13649,7 +13667,7 @@ function formDataToJSON(formData) { } var formDataToJSON_default = formDataToJSON; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/defaults/index.js +// node_modules/axios/lib/defaults/index.js var own = (obj, key) => obj != null && utils_default.hasOwnProp(obj, key) ? obj[key] : void 0; function stringifySafely(rawValue, parser, encoder) { if (utils_default.isString(rawValue)) { @@ -13766,7 +13784,7 @@ utils_default.forEach(["delete", "get", "head", "post", "put", "patch", "query"] }); var defaults_default = defaults; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/transformData.js +// node_modules/axios/lib/core/transformData.js function transformData(fns, response) { const config = this || defaults_default; const context = response || config; @@ -13779,12 +13797,12 @@ function transformData(fns, response) { return data; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/cancel/isCancel.js +// node_modules/axios/lib/cancel/isCancel.js function isCancel(value) { return !!(value && value.__CANCEL__); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/cancel/CanceledError.js +// node_modules/axios/lib/cancel/CanceledError.js var CanceledError = class extends AxiosError_default { /** * A `CanceledError` is an object that is thrown when an operation is canceled. @@ -13803,7 +13821,7 @@ var CanceledError = class extends AxiosError_default { }; var CanceledError_default = CanceledError; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/settle.js +// node_modules/axios/lib/core/settle.js function settle(resolve, reject, response) { const validateStatus2 = response.config.validateStatus; if (!response.status || !validateStatus2 || validateStatus2(response.status)) { @@ -13819,7 +13837,7 @@ function settle(resolve, reject, response) { } } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/isAbsoluteURL.js +// node_modules/axios/lib/helpers/isAbsoluteURL.js function isAbsoluteURL(url2) { if (typeof url2 !== "string") { return false; @@ -13827,12 +13845,12 @@ function isAbsoluteURL(url2) { return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url2); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/combineURLs.js +// node_modules/axios/lib/helpers/combineURLs.js function combineURLs(baseURL, relativeURL) { return relativeURL ? baseURL.replace(/\/?\/$/, "") + "/" + relativeURL.replace(/^\/+/, "") : baseURL; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/buildFullPath.js +// node_modules/axios/lib/core/buildFullPath.js var malformedHttpProtocol = /^https?:(?!\/\/)/i; var httpProtocolControlCharacters = /[\t\n\r]/g; function stripLeadingC0ControlOrSpace(url2) { @@ -13864,7 +13882,7 @@ function buildFullPath(baseURL, requestedURL, allowAbsoluteUrls, config) { return requestedURL; } -// node_modules/.pnpm/proxy-from-env@2.1.0/node_modules/proxy-from-env/index.js +// node_modules/proxy-from-env/index.js var DEFAULT_PORTS = { ftp: 21, gopher: 70, @@ -13931,7 +13949,7 @@ function getEnv(key) { return process.env[key.toLowerCase()] || process.env[key.toUpperCase()] || ""; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/http.js +// node_modules/axios/lib/adapters/http.js var import_https_proxy_agent = __toESM(require_dist(), 1); var import_http = __toESM(require("http"), 1); var import_https = __toESM(require("https"), 1); @@ -13941,16 +13959,16 @@ var import_path = require("path"); var import_follow_redirects = __toESM(require_follow_redirects(), 1); var import_zlib = __toESM(require("zlib"), 1); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/env/data.js +// node_modules/axios/lib/env/data.js var VERSION = "1.18.1"; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/parseProtocol.js +// node_modules/axios/lib/helpers/parseProtocol.js function parseProtocol(url2) { const match = /^([-+\w]{1,25}):(?:\/\/)?/.exec(url2); return match && match[1] || ""; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/fromDataURI.js +// node_modules/axios/lib/helpers/fromDataURI.js var DATA_URL_PATTERN = /^([^,;]+\/[^,;]+)?((?:;[^,;=]+=[^,;]+)*)(;base64)?,([\s\S]*)$/; function fromDataURI(uri, asBlob, options) { const _Blob = options && options.Blob || platform_default.classes.Blob; @@ -13986,10 +14004,10 @@ function fromDataURI(uri, asBlob, options) { throw new AxiosError_default("Unsupported protocol " + protocol, AxiosError_default.ERR_NOT_SUPPORT); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/http.js +// node_modules/axios/lib/adapters/http.js var import_stream4 = __toESM(require("stream"), 1); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/AxiosTransformStream.js +// node_modules/axios/lib/helpers/AxiosTransformStream.js var import_stream = __toESM(require("stream"), 1); var kInternals = /* @__PURE__ */ Symbol("internals"); var AxiosTransformStream = class extends import_stream.default.Transform { @@ -14112,14 +14130,14 @@ var AxiosTransformStream = class extends import_stream.default.Transform { }; var AxiosTransformStream_default = AxiosTransformStream; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/http.js +// node_modules/axios/lib/adapters/http.js var import_events = require("events"); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/formDataToStream.js +// node_modules/axios/lib/helpers/formDataToStream.js var import_util = __toESM(require("util"), 1); var import_stream2 = require("stream"); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/readBlob.js +// node_modules/axios/lib/helpers/readBlob.js var { asyncIterator } = Symbol; var readBlob = async function* (blob) { if (blob.stream) { @@ -14134,7 +14152,7 @@ var readBlob = async function* (blob) { }; var readBlob_default = readBlob; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/formDataToStream.js +// node_modules/axios/lib/helpers/formDataToStream.js var BOUNDARY_ALPHABET = platform_default.ALPHABET.ALPHA_DIGIT + "-_"; var textEncoder = typeof TextEncoder === "function" ? new TextEncoder() : new import_util.default.TextEncoder(); var CRLF = "\r\n"; @@ -14219,7 +14237,7 @@ var formDataToStream = (form, headersHandler, options) => { }; var formDataToStream_default = formDataToStream; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js +// node_modules/axios/lib/helpers/ZlibHeaderTransformStream.js var import_stream3 = __toESM(require("stream"), 1); var ZlibHeaderTransformStream = class extends import_stream3.default.Transform { __transform(chunk, encoding, callback) { @@ -14241,7 +14259,7 @@ var ZlibHeaderTransformStream = class extends import_stream3.default.Transform { }; var ZlibHeaderTransformStream_default = ZlibHeaderTransformStream; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/Http2Sessions.js +// node_modules/axios/lib/helpers/Http2Sessions.js var import_http2 = __toESM(require("http2"), 1); var import_util2 = __toESM(require("util"), 1); var Http2Sessions = class { @@ -14322,7 +14340,7 @@ var Http2Sessions = class { }; var Http2Sessions_default = Http2Sessions; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/callbackify.js +// node_modules/axios/lib/helpers/callbackify.js var callbackify = (fn, reducer) => { return utils_default.isAsyncFn(fn) ? function(...args) { const cb = args.pop(); @@ -14337,7 +14355,7 @@ var callbackify = (fn, reducer) => { }; var callbackify_default = callbackify; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/shouldBypassProxy.js +// node_modules/axios/lib/helpers/shouldBypassProxy.js var LOOPBACK_HOSTNAMES = /* @__PURE__ */ new Set(["localhost", "0.0.0.0"]); var isIPv4Loopback = (host) => { const parts = host.split("."); @@ -14476,7 +14494,7 @@ function shouldBypassProxy(location) { }); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/speedometer.js +// node_modules/axios/lib/helpers/speedometer.js function speedometer(samplesCount, min) { samplesCount = samplesCount || 10; const bytes = new Array(samplesCount); @@ -14512,7 +14530,7 @@ function speedometer(samplesCount, min) { } var speedometer_default = speedometer; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/throttle.js +// node_modules/axios/lib/helpers/throttle.js function throttle(fn, freq) { let timestamp = 0; let threshold = 1e3 / freq; @@ -14547,7 +14565,7 @@ function throttle(fn, freq) { } var throttle_default = throttle; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/progressEventReducer.js +// node_modules/axios/lib/helpers/progressEventReducer.js var progressEventReducer = (listener, isDownloadStream, freq = 3) => { let bytesNotified = 0; const _speedometer = speedometer_default(50, 250); @@ -14588,7 +14606,7 @@ var progressEventDecorator = (total, throttled) => { }; var asyncDecorator = (fn) => (...args) => utils_default.asap(() => fn(...args)); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +// node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js var isHexDigit = (charCode) => charCode >= 48 && charCode <= 57 || charCode >= 65 && charCode <= 70 || charCode >= 97 && charCode <= 102; var isPercentEncodedByte = (str, i, len) => i + 2 < len && isHexDigit(str.charCodeAt(i + 1)) && isHexDigit(str.charCodeAt(i + 2)); function estimateDataURLDecodedBytes(url2) { @@ -14663,7 +14681,7 @@ function estimateDataURLDecodedBytes(url2) { return bytes; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/http.js +// node_modules/axios/lib/adapters/http.js var zlibOptions = { flush: import_zlib.default.constants.Z_SYNC_FLUSH, finishFlush: import_zlib.default.constants.Z_SYNC_FLUSH @@ -15636,7 +15654,7 @@ var http_default = isHttpAdapterSupported && function httpAdapter(config) { }); }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/isURLSameOrigin.js +// node_modules/axios/lib/helpers/isURLSameOrigin.js var isURLSameOrigin_default = platform_default.hasStandardBrowserEnv ? /* @__PURE__ */ ((origin2, isMSIE) => (url2) => { url2 = new URL(url2, platform_default.origin); return origin2.protocol === url2.protocol && origin2.host === url2.host && (isMSIE || origin2.port === url2.port); @@ -15645,7 +15663,7 @@ var isURLSameOrigin_default = platform_default.hasStandardBrowserEnv ? /* @__PUR platform_default.navigator && /(msie|trident)/i.test(platform_default.navigator.userAgent) ) : () => true; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/cookies.js +// node_modules/axios/lib/helpers/cookies.js var cookies_default = platform_default.hasStandardBrowserEnv ? ( // Standard browser envs support document.cookie { @@ -15702,7 +15720,7 @@ var cookies_default = platform_default.hasStandardBrowserEnv ? ( } ); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/mergeConfig.js +// node_modules/axios/lib/core/mergeConfig.js var headersToObject = (thing) => thing instanceof AxiosHeaders_default ? { ...thing } : thing; function mergeConfig(config1, config2) { config1 = config1 || {}; @@ -15820,7 +15838,7 @@ function mergeConfig(config1, config2) { return config; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/resolveConfig.js +// node_modules/axios/lib/helpers/resolveConfig.js var FORM_DATA_CONTENT_HEADERS2 = ["content-type", "content-length"]; function setFormDataHeaders2(headers, formHeaders, policy) { if (policy !== "content-only") { @@ -15890,7 +15908,7 @@ function resolveConfig(config) { } var resolveConfig_default = resolveConfig; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/xhr.js +// node_modules/axios/lib/adapters/xhr.js var isXHRAdapterSupported = typeof XMLHttpRequest !== "undefined"; var xhr_default = isXHRAdapterSupported && function(config) { return new Promise(function dispatchXhrRequest(resolve, reject) { @@ -16037,7 +16055,7 @@ var xhr_default = isXHRAdapterSupported && function(config) { }); }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/composeSignals.js +// node_modules/axios/lib/helpers/composeSignals.js var composeSignals = (signals, timeout) => { signals = signals ? signals.filter(Boolean) : []; if (!timeout && !signals.length) { @@ -16077,7 +16095,7 @@ var composeSignals = (signals, timeout) => { }; var composeSignals_default = composeSignals; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/trackStream.js +// node_modules/axios/lib/helpers/trackStream.js var streamChunk = function* (chunk, chunkSize) { let len = chunk.byteLength; if (!chunkSize || len < chunkSize) { @@ -16157,7 +16175,7 @@ var trackStream = (stream4, chunkSize, onProgress, onFinish) => { ); }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/fetch.js +// node_modules/axios/lib/adapters/fetch.js var DEFAULT_CHUNK_SIZE = 64 * 1024; var { isFunction: isFunction2 } = utils_default; var encodeUTF82 = (str) => encodeURIComponent(str).replace( @@ -16574,7 +16592,7 @@ var getFetch = (config) => { }; var adapter = getFetch(); -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/adapters/adapters.js +// node_modules/axios/lib/adapters/adapters.js var knownAdapters = { http: http_default, xhr: xhr_default, @@ -16639,7 +16657,7 @@ var adapters_default = { adapters: knownAdapters }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/dispatchRequest.js +// node_modules/axios/lib/core/dispatchRequest.js function throwIfCancellationRequested(config) { if (config.cancelToken) { config.cancelToken.throwIfRequested(); @@ -16690,7 +16708,7 @@ function dispatchRequest(config) { ); } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/validator.js +// node_modules/axios/lib/helpers/validator.js var validators = {}; ["object", "boolean", "number", "function", "string", "symbol"].forEach((type, i) => { validators[type] = function validator(thing) { @@ -16757,7 +16775,7 @@ var validator_default = { validators }; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/core/Axios.js +// node_modules/axios/lib/core/Axios.js var validators2 = validator_default.validators; var Axios = class { constructor(instanceConfig) { @@ -16961,7 +16979,7 @@ utils_default.forEach(["post", "put", "patch", "query"], function forEachMethodW }); var Axios_default = Axios; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/cancel/CancelToken.js +// node_modules/axios/lib/cancel/CancelToken.js var CancelToken = class _CancelToken { constructor(executor) { if (typeof executor !== "function") { @@ -17059,19 +17077,19 @@ var CancelToken = class _CancelToken { }; var CancelToken_default = CancelToken; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/spread.js +// node_modules/axios/lib/helpers/spread.js function spread(callback) { return function wrap(arr) { return callback.apply(null, arr); }; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/isAxiosError.js +// node_modules/axios/lib/helpers/isAxiosError.js function isAxiosError(payload) { return utils_default.isObject(payload) && payload.isAxiosError === true; } -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/helpers/HttpStatusCode.js +// node_modules/axios/lib/helpers/HttpStatusCode.js var HttpStatusCode = { Continue: 100, SwitchingProtocols: 101, @@ -17148,7 +17166,7 @@ Object.entries(HttpStatusCode).forEach(([key, value]) => { }); var HttpStatusCode_default = HttpStatusCode; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/lib/axios.js +// node_modules/axios/lib/axios.js function createInstance(defaultConfig) { const context = new Axios_default(defaultConfig); const instance = bind(Axios_default.prototype.request, context); @@ -17181,7 +17199,7 @@ axios.HttpStatusCode = HttpStatusCode_default; axios.default = axios; var axios_default = axios; -// node_modules/.pnpm/axios@1.18.1/node_modules/axios/index.js +// node_modules/axios/index.js var { Axios: Axios2, AxiosError: AxiosError2, @@ -17236,6 +17254,10 @@ var Api = class { this.getFileVersions = getFileVersionsApi; this.getTeamProjects = getTeamProjectsApi; this.getProjectFiles = getProjectFilesApi; + this.getTeamFolders = getTeamFoldersApi; + this.getFolderFolders = getFolderFoldersApi; + this.getFolderFiles = getFolderFilesApi; + this.getFolderMeta = getFolderMetaApi; this.getTeamComponents = getTeamComponentsApi; this.getFileComponents = getFileComponentsApi; this.getComponent = getComponentApi; @@ -17300,6 +17322,7 @@ async function oAuthToken(client_id, client_secret, redirect_uri, code, grant_ty 0 && (module.exports = { API_DOMAIN, API_VER, + API_VER_FOLDERS, API_VER_WEBHOOKS, Api, oAuthLink, diff --git a/package-lock.json b/package-lock.json index c40731e..d58ff2c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "2.2.1-beta", "license": "MIT", "dependencies": { - "@figma/rest-api-spec": ">=0.37.0 <1.0.0", + "@figma/rest-api-spec": ">=0.42.0 <1.0.0", "axios": "^1.18.1" }, "devDependencies": { @@ -1018,9 +1018,9 @@ } }, "node_modules/@figma/rest-api-spec": { - "version": "0.37.0", - "resolved": "https://registry.npmjs.org/@figma/rest-api-spec/-/rest-api-spec-0.37.0.tgz", - "integrity": "sha512-KKeCgSRiO2gajT/sKCAsn48ubl8NRbYqyIvfkk5+NPK2ar+DVuLKg3fl3/cR1WharC5Dg4V5a9JzDsYv04k50g==", + "version": "0.42.0", + "resolved": "https://registry.npmjs.org/@figma/rest-api-spec/-/rest-api-spec-0.42.0.tgz", + "integrity": "sha512-rx/44oRn3wFrSznwPev71KR/91RW/BNpKu4I5Z3cTpU2z6Zv/zhJwfeYmJGg4Tu2goQXoQrzv3UjNq1Ep6LcYQ==", "license": "MIT License" }, "node_modules/@isaacs/cliui": { diff --git a/package.json b/package.json index fb1a49f..1ad9e1e 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "author": "didoo", "license": "MIT", "dependencies": { - "@figma/rest-api-spec": ">=0.37.0 <1.0.0", + "@figma/rest-api-spec": ">=0.42.0 <1.0.0", "axios": "^1.18.1" }, "devDependencies": { diff --git a/src/api-class.ts b/src/api-class.ts index 0ef5cb5..eb7e2c4 100644 --- a/src/api-class.ts +++ b/src/api-class.ts @@ -57,6 +57,10 @@ export class Api { getFileVersions = ApiEndpoints.getFileVersionsApi; getTeamProjects = ApiEndpoints.getTeamProjectsApi; getProjectFiles = ApiEndpoints.getProjectFilesApi; + getTeamFolders = ApiEndpoints.getTeamFoldersApi; + getFolderFolders = ApiEndpoints.getFolderFoldersApi; + getFolderFiles = ApiEndpoints.getFolderFilesApi; + getFolderMeta = ApiEndpoints.getFolderMetaApi; getTeamComponents = ApiEndpoints.getTeamComponentsApi; getFileComponents = ApiEndpoints.getFileComponentsApi; getComponent = ApiEndpoints.getComponentApi; diff --git a/src/api-endpoints.ts b/src/api-endpoints.ts index e456285..bd52216 100644 --- a/src/api-endpoints.ts +++ b/src/api-endpoints.ts @@ -1,4 +1,4 @@ -import { API_DOMAIN, API_VER, API_VER_WEBHOOKS } from "./config"; +import { API_DOMAIN, API_VER, API_VER_FOLDERS, API_VER_WEBHOOKS } from "./config"; import { ApiRequestMethod, toQueryParams } from "./utils"; // types @@ -144,6 +144,11 @@ export function getFileVersionsApi( // PROJECTS // https://www.figma.com/developers/api#projects-endpoints // ----------------------------------------------------------------- +// +// @deprecated These endpoints were deprecated in August 2026 in favour of the +// folders endpoints below, and personal access tokens can no longer be granted +// the files:read scope they require. Use the folders endpoints instead: folder +// IDs are the same values as project IDs, so only the call has to change. export function getTeamProjectsApi( this: ApiClass, @@ -162,6 +167,41 @@ export function getProjectFilesApi( } +// FOLDERS +// https://www.figma.com/developers/api#folders-endpoints +// ----------------------------------------------------------------- + +export function getTeamFoldersApi( + this: ApiClass, + pathParams: FigmaRestAPI.GetTeamFoldersPathParams, +): Promise { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/teams/${pathParams.team_id}/folders`); +} + +export function getFolderFoldersApi( + this: ApiClass, + pathParams: FigmaRestAPI.GetFolderFoldersPathParams, +): Promise { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/folders`); +} + +export function getFolderFilesApi( + this: ApiClass, + pathParams: FigmaRestAPI.GetFolderFilesPathParams, + queryParams?: FigmaRestAPI.GetFolderFilesQueryParams, +): Promise { + const encodedQueryParams = toQueryParams(queryParams); + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/files?${encodedQueryParams}`); +} + +export function getFolderMetaApi( + this: ApiClass, + pathParams: FigmaRestAPI.GetFolderMetaPathParams, +): Promise { + return this.request(`${API_DOMAIN}/${API_VER_FOLDERS}/folders/${pathParams.folder_id}/meta`); +} + + // COMPONENTS AND STYLES (LIBRARY ITEMS) // https://www.figma.com/developers/api#library-items-endpoints // ----------------------------------------------------------------- diff --git a/src/config.ts b/src/config.ts index ece6688..9a65614 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,3 +1,4 @@ export const API_DOMAIN = 'https://api.figma.com'; export const API_VER = 'v1'; export const API_VER_WEBHOOKS = 'v2'; +export const API_VER_FOLDERS = 'v2'; diff --git a/tests/api-class.test.ts b/tests/api-class.test.ts index c94ba55..3576b58 100644 --- a/tests/api-class.test.ts +++ b/tests/api-class.test.ts @@ -157,6 +157,10 @@ describe('api-class', () => { expect(typeof api.getUserMe).toBe('function'); expect(typeof api.getComments).toBe('function'); expect(typeof api.postComment).toBe('function'); + expect(typeof api.getTeamFolders).toBe('function'); + expect(typeof api.getFolderFolders).toBe('function'); + expect(typeof api.getFolderFiles).toBe('function'); + expect(typeof api.getFolderMeta).toBe('function'); }); }); }); diff --git a/tests/api-endpoints.test.ts b/tests/api-endpoints.test.ts index 93bdf82..835b6dd 100644 --- a/tests/api-endpoints.test.ts +++ b/tests/api-endpoints.test.ts @@ -1,5 +1,5 @@ import * as apiEndpoints from '../src/api-endpoints'; -import { API_DOMAIN, API_VER, API_VER_WEBHOOKS } from '../src/config'; +import { API_DOMAIN, API_VER, API_VER_FOLDERS, API_VER_WEBHOOKS } from '../src/config'; describe('api-endpoints', () => { let mockApiClass: { request: jest.Mock }; @@ -191,6 +191,49 @@ describe('api-endpoints', () => { }); }); + describe('Folders endpoints', () => { + test('getTeamFoldersApi should generate correct URL', () => { + const pathParams = { team_id: 'team123' }; + + apiEndpoints.getTeamFoldersApi.call(mockApiClass, pathParams); + + expect(mockApiClass.request).toHaveBeenCalledWith( + `${API_DOMAIN}/${API_VER_FOLDERS}/teams/team123/folders` + ); + }); + + test('getFolderFoldersApi should generate correct URL', () => { + const pathParams = { folder_id: 'folder123' }; + + apiEndpoints.getFolderFoldersApi.call(mockApiClass, pathParams); + + expect(mockApiClass.request).toHaveBeenCalledWith( + `${API_DOMAIN}/${API_VER_FOLDERS}/folders/folder123/folders` + ); + }); + + test('getFolderFilesApi should generate correct URL', () => { + const pathParams = { folder_id: 'folder123' }; + const queryParams = { branch_data: true }; + + apiEndpoints.getFolderFilesApi.call(mockApiClass, pathParams, queryParams); + + expect(mockApiClass.request).toHaveBeenCalledWith( + `${API_DOMAIN}/${API_VER_FOLDERS}/folders/folder123/files?branch_data=true` + ); + }); + + test('getFolderMetaApi should generate correct URL', () => { + const pathParams = { folder_id: 'folder123' }; + + apiEndpoints.getFolderMetaApi.call(mockApiClass, pathParams); + + expect(mockApiClass.request).toHaveBeenCalledWith( + `${API_DOMAIN}/${API_VER_FOLDERS}/folders/folder123/meta` + ); + }); + }); + describe('Endpoint function existence', () => { test('should export all expected endpoint functions', () => { // Test that key endpoint functions are exported @@ -205,6 +248,10 @@ describe('api-endpoints', () => { expect(typeof apiEndpoints.getUserMeApi).toBe('function'); expect(typeof apiEndpoints.getFileVersionsApi).toBe('function'); expect(typeof apiEndpoints.getTeamProjectsApi).toBe('function'); + expect(typeof apiEndpoints.getTeamFoldersApi).toBe('function'); + expect(typeof apiEndpoints.getFolderFoldersApi).toBe('function'); + expect(typeof apiEndpoints.getFolderFilesApi).toBe('function'); + expect(typeof apiEndpoints.getFolderMetaApi).toBe('function'); }); }); diff --git a/tests/config.test.ts b/tests/config.test.ts index 3b89e97..37e9952 100644 --- a/tests/config.test.ts +++ b/tests/config.test.ts @@ -1,4 +1,4 @@ -import { API_DOMAIN, API_VER, API_VER_WEBHOOKS } from '../src/config'; +import { API_DOMAIN, API_VER, API_VER_FOLDERS, API_VER_WEBHOOKS } from '../src/config'; describe('config', () => { test('API_DOMAIN should be the correct Figma API domain', () => { @@ -13,9 +13,14 @@ describe('config', () => { expect(API_VER_WEBHOOKS).toBe('v2'); }); + test('API_VER_FOLDERS should be v2', () => { + expect(API_VER_FOLDERS).toBe('v2'); + }); + test('all exports should be strings', () => { expect(typeof API_DOMAIN).toBe('string'); expect(typeof API_VER).toBe('string'); expect(typeof API_VER_WEBHOOKS).toBe('string'); + expect(typeof API_VER_FOLDERS).toBe('string'); }); }); \ No newline at end of file