/**
 * Minified by jsDelivr using Terser v5.39.0.
 * Original file: /npm/vite-plugin-sentry@1.4.1/dist/index.js
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
"use strict";var promises=require("node:fs/promises"),path=require("node:path"),SentryCli=require("@sentry/cli"),util=require("util");
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.

Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
function __awaiter(e,n,r,o){return new(r||(r=Promise))((function(i,t){function s(e){try{a(o.next(e))}catch(e){t(e)}}function l(e){try{a(o.throw(e))}catch(e){t(e)}}function a(e){var n;e.done?i(e.value):(n=e.value,n instanceof r?n:new r((function(e){e(n)}))).then(s,l)}a((o=o.apply(e,n||[])).next())}))}const debugLogger=(e,n)=>{n?console.log(`[Sentry Vite Plugin] ${e} ${util.inspect(n,!1,null,!0)}`):console.log(`[Sentry Vite Plugin] ${e}`)},createFakeCli=(e,n=debugLogger)=>({releases:{proposeVersion:()=>e.releases.proposeVersion().then((e=>(n("Proposed version:\n",e),e))),new:e=>(n("Creating new release:\n",e),Promise.resolve(e)),uploadSourceMaps:(e,r)=>(n("Calling upload-sourcemaps with:\n",r),Promise.resolve(e)),finalize:e=>(n("Finalizing release:\n",e),Promise.resolve(e)),setCommits:(e,r)=>(n("Calling set-commits with:\n",r),Promise.resolve(e)),newDeploy:(e,r)=>(n("Calling deploy with:\n",r),Promise.resolve(e)),listDeploys:function(e){throw new Error("Function not implemented.")},execute:function(e,n){throw new Error("Function not implemented.")}},execute:function(e,n){throw new Error("Function not implemented.")}}),createSentryCli=e=>{const n=Object.assign({silent:!1},e),r=new SentryCli(e.configFile,{authToken:n.authToken,org:n.org,project:n.project,silent:n.silent,url:n.url,vcsRemote:n.vcsRemote});return e.dryRun?createFakeCli(r):r},getReleasePromise=(e,n={})=>(n.release?Promise.resolve(n.release):e.releases.proposeVersion()).then((e=>`${e}`.trim())).catch((()=>{})),MODULE_ID="virtual:vite-plugin-sentry/sentry-config",RESOLVED_ID="\0"+MODULE_ID;function ViteSentry(e){const{skipEnvironmentCheck:n=!1,cleanSourcemapsAfterUpload:r=!1,legacyErrorHandlingMode:o=!1}=e,i=createSentryCli(e),t=getReleasePromise(i,e);let s={enabled:!1,isProduction:!1,sourcemapsCreated:!1,baseDir:"",sourcemapsFilePaths:new Set};return{name:"sentry",enforce:"post",apply(e,{command:n}){var r;return!(null===(r=e.build)||void 0===r?void 0:r.ssr)},config(){return __awaiter(this,void 0,void 0,(function*(){const n=yield t;return{define:{"import.meta.env.VITE_PLUGIN_SENTRY_CONFIG":JSON.stringify({dist:e.sourceMaps.dist,release:n})}}}))},configResolved(e){s.sourcemapsCreated=!!e.build.sourcemap,s.isProduction=e.isProduction,s.enabled=s.sourcemapsCreated&&(n||e.isProduction)},resolveId(e){if(e===MODULE_ID)return RESOLVED_ID},load(e){if(e===RESOLVED_ID)return"globalThis.VITE_PLUGIN_SENTRY_CONFIG = import.meta.env.VITE_PLUGIN_SENTRY_CONFIG\n"},generateBundle(e,n){var o,i;if(r){s.baseDir=null!==(o=e.dir)&&void 0!==o?o:"";for(const e in n)(null===(i=n[e])||void 0===i?void 0:i.map)&&s.sourcemapsFilePaths.add(`${e}.map`)}},closeBundle(){return __awaiter(this,void 0,void 0,(function*(){const{enabled:l,sourcemapsCreated:a,isProduction:u}=s,c=o?this.warn:this.error;if(l){!u&&n&&this.warn("Running in non-production mode!");const o=yield t;if(o)try{if(yield i.releases.new(o),e.cleanArtifacts&&(yield i.releases.execute(["releases","files",o,"delete","--all"],!0)),yield i.releases.uploadSourceMaps(o,e.sourceMaps),e.setCommits){const{commit:n,repo:r,auto:t}=e.setCommits;(t||r&&n)&&(yield i.releases.setCommits(o,e.setCommits))}if(e.finalize&&(yield i.releases.finalize(o)),e.deploy&&e.deploy.env&&(yield i.releases.newDeploy(o,e.deploy)),r&&s.sourcemapsCreated&&s.sourcemapsFilePaths.size>0)for(const e of s.sourcemapsFilePaths)this.warn(`Deleting sourcemap file: ${e}`),yield promises.unlink(path.join(s.baseDir,e))}catch(e){c(`Error while uploading sourcemaps to Sentry: ${e.message}`)}else c("Release returned from sentry is empty! Please check your config")}else u?a||this.warn("Skipped because vite is not configured to provide sourcemaps. Please check configuration setting [options.sourcemap]!"):this.warn("Skipped because running non-production build. If you want to run it anyway set skipEnvironmentCheck option value to true")}))}}}module.exports=ViteSentry;
//# sourceMappingURL=/sm/5db84dbe4ef872767d6c69ec93b01493cd5f5d0a944e5c3d157f91ead63fb225.map