@mastra/deployer-vercel 0.0.1-alpha.12 → 0.0.1-alpha.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@mastra/core"),e=require("child_process"),r=require("fs"),n=require("path");function o(t){var e=Object.create(null);return t&&Object.keys(t).forEach((function(r){if("default"!==r){var n=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,n.get?n:{enumerable:!0,get:function(){return t[r]}})}})),e.default=t,e}var i=o(e);function a(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=Array(e);r<e;r++)n[r]=t[r];return n}function c(t,e,r,n,o,i,a){try{var c=t[i](a),s=c.value}catch(t){return void r(t)}c.done?e(s):Promise.resolve(s).then(n,o)}function s(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){c(i,n,o,a,s,"next",t)}function s(t){c(i,n,o,a,s,"throw",t)}a(void 0)}))}}function u(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(r)return(r=r.call(t)).next.bind(r);if(Array.isArray(t)||(r=function(t,e){if(t){if("string"==typeof t)return a(t,e);var r={}.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?a(t,e):void 0}}(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0;return function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(){return l=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)({}).hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},l.apply(null,arguments)}function f(){f=function(){return e};var t,e={},r=Object.prototype,n=r.hasOwnProperty,o=Object.defineProperty||function(t,e,r){t[e]=r.value},i="function"==typeof Symbol?Symbol:{},a=i.iterator||"@@iterator",c=i.asyncIterator||"@@asyncIterator",s=i.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,n){var i=Object.create((e&&e.prototype instanceof g?e:g).prototype),a=new N(n||[]);return o(i,"_invoke",{value:S(t,r,a)}),i}function h(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}e.wrap=l;var p="suspendedStart",v="suspendedYield",y="executing",d="completed",m={};function g(){}function w(){}function b(){}var j={};u(j,a,(function(){return this}));var x=Object.getPrototypeOf,E=x&&x(x(I([])));E&&E!==r&&n.call(E,a)&&(j=E);var O=b.prototype=g.prototype=Object.create(j);function L(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function k(t,e){function r(o,i,a,c){var s=h(t[o],t,i);if("throw"!==s.type){var u=s.arg,l=u.value;return l&&"object"==typeof l&&n.call(l,"__await")?e.resolve(l.__await).then((function(t){r("next",t,a,c)}),(function(t){r("throw",t,a,c)})):e.resolve(l).then((function(t){u.value=t,a(u)}),(function(t){return r("throw",t,a,c)}))}c(s.arg)}var i;o(this,"_invoke",{value:function(t,n){function o(){return new e((function(e,o){r(t,n,e,o)}))}return i=i?i.then(o,o):o()}})}function S(e,r,n){var o=p;return function(i,a){if(o===y)throw Error("Generator is already running");if(o===d){if("throw"===i)throw a;return{value:t,done:!0}}for(n.method=i,n.arg=a;;){var c=n.delegate;if(c){var s=_(c,n);if(s){if(s===m)continue;return s}}if("next"===n.method)n.sent=n._sent=n.arg;else if("throw"===n.method){if(o===p)throw o=d,n.arg;n.dispatchException(n.arg)}else"return"===n.method&&n.abrupt("return",n.arg);o=y;var u=h(e,r,n);if("normal"===u.type){if(o=n.done?d:v,u.arg===m)continue;return{value:u.arg,done:n.done}}"throw"===u.type&&(o=d,n.method="throw",n.arg=u.arg)}}}function _(e,r){var n=r.method,o=e.iterator[n];if(o===t)return r.delegate=null,"throw"===n&&e.iterator.return&&(r.method="return",r.arg=t,_(e,r),"throw"===r.method)||"return"!==n&&(r.method="throw",r.arg=new TypeError("The iterator does not provide a '"+n+"' method")),m;var i=h(o,e.iterator,r.arg);if("throw"===i.type)return r.method="throw",r.arg=i.arg,r.delegate=null,m;var a=i.arg;return a?a.done?(r[e.resultName]=a.value,r.next=e.nextLoc,"return"!==r.method&&(r.method="next",r.arg=t),r.delegate=null,m):a:(r.method="throw",r.arg=new TypeError("iterator result is not an object"),r.delegate=null,m)}function P(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function F(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function N(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(P,this),this.reset(!0)}function I(e){if(e||""===e){var r=e[a];if(r)return r.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var o=-1,i=function r(){for(;++o<e.length;)if(n.call(e,o))return r.value=e[o],r.done=!1,r;return r.value=t,r.done=!0,r};return i.next=i}}throw new TypeError(typeof e+" is not iterable")}return w.prototype=b,o(O,"constructor",{value:b,configurable:!0}),o(b,"constructor",{value:w,configurable:!0}),w.displayName=u(b,s,"GeneratorFunction"),e.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===w||"GeneratorFunction"===(e.displayName||e.name))},e.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,b):(t.__proto__=b,u(t,s,"GeneratorFunction")),t.prototype=Object.create(O),t},e.awrap=function(t){return{__await:t}},L(k.prototype),u(k.prototype,c,(function(){return this})),e.AsyncIterator=k,e.async=function(t,r,n,o,i){void 0===i&&(i=Promise);var a=new k(l(t,r,n,o),i);return e.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},L(O),u(O,s,"Generator"),u(O,a,(function(){return this})),u(O,"toString",(function(){return"[object Generator]"})),e.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},e.values=I,N.prototype={constructor:N,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=t,this.done=!1,this.delegate=null,this.method="next",this.arg=t,this.tryEntries.forEach(F),!e)for(var r in this)"t"===r.charAt(0)&&n.call(this,r)&&!isNaN(+r.slice(1))&&(this[r]=t)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var r=this;function o(n,o){return c.type="throw",c.arg=e,r.next=n,o&&(r.method="next",r.arg=t),!!o}for(var i=this.tryEntries.length-1;i>=0;--i){var a=this.tryEntries[i],c=a.completion;if("root"===a.tryLoc)return o("end");if(a.tryLoc<=this.prev){var s=n.call(a,"catchLoc"),u=n.call(a,"finallyLoc");if(s&&u){if(this.prev<a.catchLoc)return o(a.catchLoc,!0);if(this.prev<a.finallyLoc)return o(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return o(a.catchLoc,!0)}else{if(!u)throw Error("try statement without catch or finally");if(this.prev<a.finallyLoc)return o(a.finallyLoc)}}}},abrupt:function(t,e){for(var r=this.tryEntries.length-1;r>=0;--r){var o=this.tryEntries[r];if(o.tryLoc<=this.prev&&n.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,m):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),m},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),F(r),m}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;F(r)}return o}}throw Error("illegal catch attempt")},delegateYield:function(e,r,n){return this.delegate={iterator:I(e),resultName:r,nextLoc:n},"next"===this.method&&(this.arg=t),m}},e}function h(t,e){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,e){return t.__proto__=e,t},h(t,e)}exports.VercelDeployer=function(t){function e(e){return t.call(this,{scope:e.scope,env:e.env,projectName:e.projectName})||this}var o,a;a=t,(o=e).prototype=Object.create(a.prototype),o.prototype.constructor=o,h(o,a);var c=e.prototype;return c.writeFiles=function(t){var e=t.dir;this.writeIndex({dir:e}),r.writeFileSync(n.join(e,"vercel.json"),JSON.stringify({version:2,installCommand:"npm install --omit=dev",builds:[{src:"index.mjs",use:"@vercel/node",config:{includeFiles:["**"]}}],routes:[{src:"/(.*)",dest:"index.mjs"}]},null,2))},c.getProjectId=function(t){var e=n.join(t.dir,".vercel","project.json");try{return JSON.parse(r.readFileSync(e,"utf-8")).projectId}catch(t){throw new Error("Could not find project ID. Make sure the project has been deployed first.")}},c.syncEnv=function(){var t=s(f().mark((function t(e){var r,n,o,i,a,c,s,l,h,p,v;return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(r=e.scope,n=e.dir,o=e.token,i=this.getEnvFiles(),a=[],c=u(i);!(s=c()).done;)l=this.parseEnvFile(s.value),a.push.apply(a,l);return console.log("Syncing environment variables..."),h=a.map((function(t){var e=t.split("="),r=e[0],n=e[1];if(!r||!n)throw new Error("Invalid environment variable format: "+t);return{key:r,value:n,target:["production","preview","development"],type:"plain"}})),t.prev=6,p=this.getProjectId({dir:n}),t.next=10,fetch("https://api.vercel.com/v10/projects/"+p+"/env?teamId="+r+"&upsert=true",{method:"POST",headers:{Authorization:"Bearer "+o,"Content-Type":"application/json"},body:JSON.stringify(h)});case 10:if((v=t.sent).ok){t.next=16;break}return t.next=14,v.json();case 14:throw new Error("Failed to sync environment variables: "+t.sent.message);case 16:console.log("✓ Successfully synced environment variables"),t.next=23;break;case 19:throw t.prev=19,t.t0=t.catch(6),t.t0 instanceof Error?console.error("Failed to sync environment variables:",t.t0.message):console.error("Failed to sync environment variables:",t.t0),t.t0;case 23:case"end":return t.stop()}}),t,this,[[6,19]])})));return function(e){return t.apply(this,arguments)}}(),c.deploy=function(){var t=s(f().mark((function t(e){var r,n,o,a,c,s,h,p,v,y;return f().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:for(r=e.dir,n=e.token,o=this.getEnvFiles(),a=[],c=u(o);!(s=c()).done;)h=this.parseEnvFile(s.value),a.push.apply(a,h);for(p=["--scope",this.scope,"--cwd",r,"deploy","--token",n,"--yes"].concat(this.projectName?["--name",this.projectName]:[]),v=0,y=a;v<y.length;v++)p.push("--env",y[v]);if(i.execSync("vercel "+p.join(" "),{cwd:r,env:l({},this.env,{PATH:process.env.PATH}),stdio:"inherit"}),console.log("Deployment started on Vercel. You can wait for it to finish or exit this command."),!(a.length>0)){t.next=13;break}return t.next=11,this.syncEnv({scope:this.scope,dir:r,token:n});case 11:t.next=14;break;case 13:console.log("\nAdd your ENV vars to .env or your vercel dashboard.\n");case 14:case"end":return t.stop()}}),t,this)})));return function(e){return t.apply(this,arguments)}}(),c.writeIndex=function(t){r.writeFileSync(n.join(t.dir,"index.mjs"),"\n import { handle } from 'hono/vercel'\n import { app } from './hono.mjs';\n export const GET = handle(app);\n export const POST = handle(app);\n ")},e}(t.MastraDeployer);
2
- //# sourceMappingURL=deployer-vercel.cjs.production.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deployer-vercel.cjs.production.min.js","sources":["../src/index.ts"],"sourcesContent":["import { MastraDeployer } from '@mastra/core';\nimport * as child_process from 'child_process';\nimport { readFileSync, writeFileSync } from 'fs';\nimport { join } from 'path';\n\ninterface EnvVar {\n key: string;\n value: string;\n target: ('production' | 'preview' | 'development')[];\n type: 'plain' | 'secret';\n}\n\ninterface VercelError {\n message: string;\n code: string;\n}\n\nexport class VercelDeployer extends MastraDeployer {\n constructor({ scope, env, projectName }: { env?: Record<string, any>; scope: string; projectName: string }) {\n super({ scope, env, projectName });\n }\n writeFiles({ dir }: { dir: string }): void {\n this.writeIndex({ dir });\n\n writeFileSync(\n join(dir, 'vercel.json'),\n JSON.stringify(\n {\n version: 2,\n installCommand: 'npm install --omit=dev',\n builds: [\n {\n src: 'index.mjs',\n use: '@vercel/node',\n config: { includeFiles: ['**'] },\n },\n ],\n routes: [\n {\n src: '/(.*)',\n dest: 'index.mjs',\n },\n ],\n },\n null,\n 2,\n ),\n );\n }\n\n private getProjectId({ dir }: { dir: string }): string {\n const projectJsonPath = join(dir, '.vercel', 'project.json');\n try {\n const projectJson = JSON.parse(readFileSync(projectJsonPath, 'utf-8'));\n return projectJson.projectId;\n } catch (error) {\n throw new Error('Could not find project ID. Make sure the project has been deployed first.');\n }\n }\n\n async syncEnv({ scope, dir, token }: { token: string; dir: string; scope: string }) {\n const envFiles = this.getEnvFiles();\n const envVars: string[] = [];\n\n for (const file of envFiles) {\n const vars = this.parseEnvFile(file);\n envVars.push(...vars);\n }\n\n console.log('Syncing environment variables...');\n\n // Transform env vars into the format expected by Vercel API\n const vercelEnvVars: EnvVar[] = envVars.map(envVar => {\n const [key, value] = envVar.split('=');\n if (!key || !value) {\n throw new Error(`Invalid environment variable format: ${envVar}`);\n }\n return {\n key,\n value,\n target: ['production', 'preview', 'development'],\n type: 'plain',\n };\n });\n\n try {\n const projectId = this.getProjectId({ dir });\n\n const response = await fetch(`https://api.vercel.com/v10/projects/${projectId}/env?teamId=${scope}&upsert=true`, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${token}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(vercelEnvVars),\n });\n\n if (!response.ok) {\n const error = (await response.json()) as VercelError;\n throw new Error(`Failed to sync environment variables: ${error.message}`);\n }\n\n console.log('✓ Successfully synced environment variables');\n } catch (error) {\n if (error instanceof Error) {\n console.error('Failed to sync environment variables:', error.message);\n } else {\n console.error('Failed to sync environment variables:', error);\n }\n throw error;\n }\n }\n\n async deploy({ dir, token }: { dir: string; token: string }): Promise<void> {\n // Get env vars for initial deployment\n const envFiles = this.getEnvFiles();\n const envVars: string[] = [];\n\n for (const file of envFiles) {\n const vars = this.parseEnvFile(file);\n envVars.push(...vars);\n }\n\n // Create the command array with base arguments\n const commandArgs = [\n '--scope',\n this.scope as string,\n '--cwd',\n dir,\n 'deploy',\n '--token',\n token,\n '--yes',\n ...(this.projectName ? ['--name', this.projectName] : []),\n ];\n\n // Add env vars to initial deployment\n for (const envVar of envVars) {\n commandArgs.push('--env', envVar);\n }\n\n // Run the Vercel deploy command\n child_process.execSync(`vercel ${commandArgs.join(' ')}`, {\n cwd: dir,\n env: {\n ...this.env,\n PATH: process.env.PATH,\n },\n stdio: 'inherit',\n });\n\n console.log('Deployment started on Vercel. You can wait for it to finish or exit this command.');\n\n if (envVars.length > 0) {\n // Sync environment variables for future deployments\n await this.syncEnv({ scope: this.scope, dir, token });\n } else {\n console.log('\\nAdd your ENV vars to .env or your vercel dashboard.\\n');\n }\n }\n\n writeIndex({ dir }: { dir: string }): void {\n writeFileSync(\n join(dir, 'index.mjs'),\n `\n import { handle } from 'hono/vercel'\n import { app } from './hono.mjs';\n export const GET = handle(app);\n export const POST = handle(app);\n `,\n );\n }\n}\n"],"names":["_MastraDeployer","VercelDeployer","_ref","call","this","scope","env","projectName","_proto","prototype","writeFiles","_ref2","dir","writeIndex","writeFileSync","join","JSON","stringify","version","installCommand","builds","src","use","config","includeFiles","routes","dest","getProjectId","_ref3","projectJsonPath","parse","readFileSync","projectId","error","Error","syncEnv","_syncEnv","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref4","token","envFiles","envVars","_iterator","_step","vars","vercelEnvVars","response","wrap","_context","prev","next","getEnvFiles","_createForOfIteratorHelperLoose","done","parseEnvFile","value","push","apply","console","log","map","envVar","_envVar$split","split","key","target","type","fetch","method","headers","Authorization","body","sent","ok","json","message","t0","stop","_x","arguments","deploy","_deploy","_callee2","_ref5","_iterator2","_step2","commandArgs","_i","_envVars","_context2","concat","length","child_process","execSync","cwd","_extends","PATH","process","stdio","_x2","_ref6","MastraDeployer"],"mappings":"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"}
@@ -1,565 +0,0 @@
1
- import { MastraDeployer } from '@mastra/core';
2
- import * as child_process from 'child_process';
3
- import { writeFileSync, readFileSync } from 'fs';
4
- import { join } from 'path';
5
-
6
- function _arrayLikeToArray(r, a) {
7
- (null == a || a > r.length) && (a = r.length);
8
- for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
9
- return n;
10
- }
11
- function asyncGeneratorStep(n, t, e, r, o, a, c) {
12
- try {
13
- var i = n[a](c),
14
- u = i.value;
15
- } catch (n) {
16
- return void e(n);
17
- }
18
- i.done ? t(u) : Promise.resolve(u).then(r, o);
19
- }
20
- function _asyncToGenerator(n) {
21
- return function () {
22
- var t = this,
23
- e = arguments;
24
- return new Promise(function (r, o) {
25
- var a = n.apply(t, e);
26
- function _next(n) {
27
- asyncGeneratorStep(a, r, o, _next, _throw, "next", n);
28
- }
29
- function _throw(n) {
30
- asyncGeneratorStep(a, r, o, _next, _throw, "throw", n);
31
- }
32
- _next(void 0);
33
- });
34
- };
35
- }
36
- function _createForOfIteratorHelperLoose(r, e) {
37
- var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
38
- if (t) return (t = t.call(r)).next.bind(t);
39
- if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
40
- t && (r = t);
41
- var o = 0;
42
- return function () {
43
- return o >= r.length ? {
44
- done: !0
45
- } : {
46
- done: !1,
47
- value: r[o++]
48
- };
49
- };
50
- }
51
- throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
52
- }
53
- function _extends() {
54
- return _extends = Object.assign ? Object.assign.bind() : function (n) {
55
- for (var e = 1; e < arguments.length; e++) {
56
- var t = arguments[e];
57
- for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]);
58
- }
59
- return n;
60
- }, _extends.apply(null, arguments);
61
- }
62
- function _inheritsLoose(t, o) {
63
- t.prototype = Object.create(o.prototype), t.prototype.constructor = t, _setPrototypeOf(t, o);
64
- }
65
- function _regeneratorRuntime() {
66
- _regeneratorRuntime = function () {
67
- return e;
68
- };
69
- var t,
70
- e = {},
71
- r = Object.prototype,
72
- n = r.hasOwnProperty,
73
- o = Object.defineProperty || function (t, e, r) {
74
- t[e] = r.value;
75
- },
76
- i = "function" == typeof Symbol ? Symbol : {},
77
- a = i.iterator || "@@iterator",
78
- c = i.asyncIterator || "@@asyncIterator",
79
- u = i.toStringTag || "@@toStringTag";
80
- function define(t, e, r) {
81
- return Object.defineProperty(t, e, {
82
- value: r,
83
- enumerable: !0,
84
- configurable: !0,
85
- writable: !0
86
- }), t[e];
87
- }
88
- try {
89
- define({}, "");
90
- } catch (t) {
91
- define = function (t, e, r) {
92
- return t[e] = r;
93
- };
94
- }
95
- function wrap(t, e, r, n) {
96
- var i = e && e.prototype instanceof Generator ? e : Generator,
97
- a = Object.create(i.prototype),
98
- c = new Context(n || []);
99
- return o(a, "_invoke", {
100
- value: makeInvokeMethod(t, r, c)
101
- }), a;
102
- }
103
- function tryCatch(t, e, r) {
104
- try {
105
- return {
106
- type: "normal",
107
- arg: t.call(e, r)
108
- };
109
- } catch (t) {
110
- return {
111
- type: "throw",
112
- arg: t
113
- };
114
- }
115
- }
116
- e.wrap = wrap;
117
- var h = "suspendedStart",
118
- l = "suspendedYield",
119
- f = "executing",
120
- s = "completed",
121
- y = {};
122
- function Generator() {}
123
- function GeneratorFunction() {}
124
- function GeneratorFunctionPrototype() {}
125
- var p = {};
126
- define(p, a, function () {
127
- return this;
128
- });
129
- var d = Object.getPrototypeOf,
130
- v = d && d(d(values([])));
131
- v && v !== r && n.call(v, a) && (p = v);
132
- var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);
133
- function defineIteratorMethods(t) {
134
- ["next", "throw", "return"].forEach(function (e) {
135
- define(t, e, function (t) {
136
- return this._invoke(e, t);
137
- });
138
- });
139
- }
140
- function AsyncIterator(t, e) {
141
- function invoke(r, o, i, a) {
142
- var c = tryCatch(t[r], t, o);
143
- if ("throw" !== c.type) {
144
- var u = c.arg,
145
- h = u.value;
146
- return h && "object" == typeof h && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) {
147
- invoke("next", t, i, a);
148
- }, function (t) {
149
- invoke("throw", t, i, a);
150
- }) : e.resolve(h).then(function (t) {
151
- u.value = t, i(u);
152
- }, function (t) {
153
- return invoke("throw", t, i, a);
154
- });
155
- }
156
- a(c.arg);
157
- }
158
- var r;
159
- o(this, "_invoke", {
160
- value: function (t, n) {
161
- function callInvokeWithMethodAndArg() {
162
- return new e(function (e, r) {
163
- invoke(t, n, e, r);
164
- });
165
- }
166
- return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();
167
- }
168
- });
169
- }
170
- function makeInvokeMethod(e, r, n) {
171
- var o = h;
172
- return function (i, a) {
173
- if (o === f) throw Error("Generator is already running");
174
- if (o === s) {
175
- if ("throw" === i) throw a;
176
- return {
177
- value: t,
178
- done: !0
179
- };
180
- }
181
- for (n.method = i, n.arg = a;;) {
182
- var c = n.delegate;
183
- if (c) {
184
- var u = maybeInvokeDelegate(c, n);
185
- if (u) {
186
- if (u === y) continue;
187
- return u;
188
- }
189
- }
190
- if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) {
191
- if (o === h) throw o = s, n.arg;
192
- n.dispatchException(n.arg);
193
- } else "return" === n.method && n.abrupt("return", n.arg);
194
- o = f;
195
- var p = tryCatch(e, r, n);
196
- if ("normal" === p.type) {
197
- if (o = n.done ? s : l, p.arg === y) continue;
198
- return {
199
- value: p.arg,
200
- done: n.done
201
- };
202
- }
203
- "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg);
204
- }
205
- };
206
- }
207
- function maybeInvokeDelegate(e, r) {
208
- var n = r.method,
209
- o = e.iterator[n];
210
- if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y;
211
- var i = tryCatch(o, e.iterator, r.arg);
212
- if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y;
213
- var a = i.arg;
214
- return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y);
215
- }
216
- function pushTryEntry(t) {
217
- var e = {
218
- tryLoc: t[0]
219
- };
220
- 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);
221
- }
222
- function resetTryEntry(t) {
223
- var e = t.completion || {};
224
- e.type = "normal", delete e.arg, t.completion = e;
225
- }
226
- function Context(t) {
227
- this.tryEntries = [{
228
- tryLoc: "root"
229
- }], t.forEach(pushTryEntry, this), this.reset(!0);
230
- }
231
- function values(e) {
232
- if (e || "" === e) {
233
- var r = e[a];
234
- if (r) return r.call(e);
235
- if ("function" == typeof e.next) return e;
236
- if (!isNaN(e.length)) {
237
- var o = -1,
238
- i = function next() {
239
- for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;
240
- return next.value = t, next.done = !0, next;
241
- };
242
- return i.next = i;
243
- }
244
- }
245
- throw new TypeError(typeof e + " is not iterable");
246
- }
247
- return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", {
248
- value: GeneratorFunctionPrototype,
249
- configurable: !0
250
- }), o(GeneratorFunctionPrototype, "constructor", {
251
- value: GeneratorFunction,
252
- configurable: !0
253
- }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) {
254
- var e = "function" == typeof t && t.constructor;
255
- return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name));
256
- }, e.mark = function (t) {
257
- return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t;
258
- }, e.awrap = function (t) {
259
- return {
260
- __await: t
261
- };
262
- }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {
263
- return this;
264
- }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {
265
- void 0 === i && (i = Promise);
266
- var a = new AsyncIterator(wrap(t, r, n, o), i);
267
- return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {
268
- return t.done ? t.value : a.next();
269
- });
270
- }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () {
271
- return this;
272
- }), define(g, "toString", function () {
273
- return "[object Generator]";
274
- }), e.keys = function (t) {
275
- var e = Object(t),
276
- r = [];
277
- for (var n in e) r.push(n);
278
- return r.reverse(), function next() {
279
- for (; r.length;) {
280
- var t = r.pop();
281
- if (t in e) return next.value = t, next.done = !1, next;
282
- }
283
- return next.done = !0, next;
284
- };
285
- }, e.values = values, Context.prototype = {
286
- constructor: Context,
287
- reset: function (e) {
288
- if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);
289
- },
290
- stop: function () {
291
- this.done = !0;
292
- var t = this.tryEntries[0].completion;
293
- if ("throw" === t.type) throw t.arg;
294
- return this.rval;
295
- },
296
- dispatchException: function (e) {
297
- if (this.done) throw e;
298
- var r = this;
299
- function handle(n, o) {
300
- return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o;
301
- }
302
- for (var o = this.tryEntries.length - 1; o >= 0; --o) {
303
- var i = this.tryEntries[o],
304
- a = i.completion;
305
- if ("root" === i.tryLoc) return handle("end");
306
- if (i.tryLoc <= this.prev) {
307
- var c = n.call(i, "catchLoc"),
308
- u = n.call(i, "finallyLoc");
309
- if (c && u) {
310
- if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
311
- if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
312
- } else if (c) {
313
- if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);
314
- } else {
315
- if (!u) throw Error("try statement without catch or finally");
316
- if (this.prev < i.finallyLoc) return handle(i.finallyLoc);
317
- }
318
- }
319
- }
320
- },
321
- abrupt: function (t, e) {
322
- for (var r = this.tryEntries.length - 1; r >= 0; --r) {
323
- var o = this.tryEntries[r];
324
- if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) {
325
- var i = o;
326
- break;
327
- }
328
- }
329
- i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);
330
- var a = i ? i.completion : {};
331
- return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a);
332
- },
333
- complete: function (t, e) {
334
- if ("throw" === t.type) throw t.arg;
335
- return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y;
336
- },
337
- finish: function (t) {
338
- for (var e = this.tryEntries.length - 1; e >= 0; --e) {
339
- var r = this.tryEntries[e];
340
- if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;
341
- }
342
- },
343
- catch: function (t) {
344
- for (var e = this.tryEntries.length - 1; e >= 0; --e) {
345
- var r = this.tryEntries[e];
346
- if (r.tryLoc === t) {
347
- var n = r.completion;
348
- if ("throw" === n.type) {
349
- var o = n.arg;
350
- resetTryEntry(r);
351
- }
352
- return o;
353
- }
354
- }
355
- throw Error("illegal catch attempt");
356
- },
357
- delegateYield: function (e, r, n) {
358
- return this.delegate = {
359
- iterator: values(e),
360
- resultName: r,
361
- nextLoc: n
362
- }, "next" === this.method && (this.arg = t), y;
363
- }
364
- }, e;
365
- }
366
- function _setPrototypeOf(t, e) {
367
- return _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function (t, e) {
368
- return t.__proto__ = e, t;
369
- }, _setPrototypeOf(t, e);
370
- }
371
- function _unsupportedIterableToArray(r, a) {
372
- if (r) {
373
- if ("string" == typeof r) return _arrayLikeToArray(r, a);
374
- var t = {}.toString.call(r).slice(8, -1);
375
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
376
- }
377
- }
378
-
379
- var VercelDeployer = /*#__PURE__*/function (_MastraDeployer) {
380
- function VercelDeployer(_ref) {
381
- var scope = _ref.scope,
382
- env = _ref.env,
383
- projectName = _ref.projectName;
384
- return _MastraDeployer.call(this, {
385
- scope: scope,
386
- env: env,
387
- projectName: projectName
388
- }) || this;
389
- }
390
- _inheritsLoose(VercelDeployer, _MastraDeployer);
391
- var _proto = VercelDeployer.prototype;
392
- _proto.writeFiles = function writeFiles(_ref2) {
393
- var dir = _ref2.dir;
394
- this.writeIndex({
395
- dir: dir
396
- });
397
- writeFileSync(join(dir, 'vercel.json'), JSON.stringify({
398
- version: 2,
399
- installCommand: 'npm install --omit=dev',
400
- builds: [{
401
- src: 'index.mjs',
402
- use: '@vercel/node',
403
- config: {
404
- includeFiles: ['**']
405
- }
406
- }],
407
- routes: [{
408
- src: '/(.*)',
409
- dest: 'index.mjs'
410
- }]
411
- }, null, 2));
412
- };
413
- _proto.getProjectId = function getProjectId(_ref3) {
414
- var dir = _ref3.dir;
415
- var projectJsonPath = join(dir, '.vercel', 'project.json');
416
- try {
417
- var projectJson = JSON.parse(readFileSync(projectJsonPath, 'utf-8'));
418
- return projectJson.projectId;
419
- } catch (error) {
420
- throw new Error('Could not find project ID. Make sure the project has been deployed first.');
421
- }
422
- };
423
- _proto.syncEnv = /*#__PURE__*/function () {
424
- var _syncEnv = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref4) {
425
- var scope, dir, token, envFiles, envVars, _iterator, _step, file, vars, vercelEnvVars, projectId, response, error;
426
- return _regeneratorRuntime().wrap(function _callee$(_context) {
427
- while (1) switch (_context.prev = _context.next) {
428
- case 0:
429
- scope = _ref4.scope, dir = _ref4.dir, token = _ref4.token;
430
- envFiles = this.getEnvFiles();
431
- envVars = [];
432
- for (_iterator = _createForOfIteratorHelperLoose(envFiles); !(_step = _iterator()).done;) {
433
- file = _step.value;
434
- vars = this.parseEnvFile(file);
435
- envVars.push.apply(envVars, vars);
436
- }
437
- console.log('Syncing environment variables...');
438
- // Transform env vars into the format expected by Vercel API
439
- vercelEnvVars = envVars.map(function (envVar) {
440
- var _envVar$split = envVar.split('='),
441
- key = _envVar$split[0],
442
- value = _envVar$split[1];
443
- if (!key || !value) {
444
- throw new Error("Invalid environment variable format: " + envVar);
445
- }
446
- return {
447
- key: key,
448
- value: value,
449
- target: ['production', 'preview', 'development'],
450
- type: 'plain'
451
- };
452
- });
453
- _context.prev = 6;
454
- projectId = this.getProjectId({
455
- dir: dir
456
- });
457
- _context.next = 10;
458
- return fetch("https://api.vercel.com/v10/projects/" + projectId + "/env?teamId=" + scope + "&upsert=true", {
459
- method: 'POST',
460
- headers: {
461
- Authorization: "Bearer " + token,
462
- 'Content-Type': 'application/json'
463
- },
464
- body: JSON.stringify(vercelEnvVars)
465
- });
466
- case 10:
467
- response = _context.sent;
468
- if (response.ok) {
469
- _context.next = 16;
470
- break;
471
- }
472
- _context.next = 14;
473
- return response.json();
474
- case 14:
475
- error = _context.sent;
476
- throw new Error("Failed to sync environment variables: " + error.message);
477
- case 16:
478
- console.log('✓ Successfully synced environment variables');
479
- _context.next = 23;
480
- break;
481
- case 19:
482
- _context.prev = 19;
483
- _context.t0 = _context["catch"](6);
484
- if (_context.t0 instanceof Error) {
485
- console.error('Failed to sync environment variables:', _context.t0.message);
486
- } else {
487
- console.error('Failed to sync environment variables:', _context.t0);
488
- }
489
- throw _context.t0;
490
- case 23:
491
- case "end":
492
- return _context.stop();
493
- }
494
- }, _callee, this, [[6, 19]]);
495
- }));
496
- function syncEnv(_x) {
497
- return _syncEnv.apply(this, arguments);
498
- }
499
- return syncEnv;
500
- }();
501
- _proto.deploy = /*#__PURE__*/function () {
502
- var _deploy = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(_ref5) {
503
- var dir, token, envFiles, envVars, _iterator2, _step2, file, vars, commandArgs, _i, _envVars, envVar;
504
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
505
- while (1) switch (_context2.prev = _context2.next) {
506
- case 0:
507
- dir = _ref5.dir, token = _ref5.token;
508
- // Get env vars for initial deployment
509
- envFiles = this.getEnvFiles();
510
- envVars = [];
511
- for (_iterator2 = _createForOfIteratorHelperLoose(envFiles); !(_step2 = _iterator2()).done;) {
512
- file = _step2.value;
513
- vars = this.parseEnvFile(file);
514
- envVars.push.apply(envVars, vars);
515
- }
516
- // Create the command array with base arguments
517
- commandArgs = ['--scope', this.scope, '--cwd', dir, 'deploy', '--token', token, '--yes'].concat(this.projectName ? ['--name', this.projectName] : []); // Add env vars to initial deployment
518
- for (_i = 0, _envVars = envVars; _i < _envVars.length; _i++) {
519
- envVar = _envVars[_i];
520
- commandArgs.push('--env', envVar);
521
- }
522
- // Run the Vercel deploy command
523
- child_process.execSync("vercel " + commandArgs.join(' '), {
524
- cwd: dir,
525
- env: _extends({}, this.env, {
526
- PATH: process.env.PATH
527
- }),
528
- stdio: 'inherit'
529
- });
530
- console.log('Deployment started on Vercel. You can wait for it to finish or exit this command.');
531
- if (!(envVars.length > 0)) {
532
- _context2.next = 13;
533
- break;
534
- }
535
- _context2.next = 11;
536
- return this.syncEnv({
537
- scope: this.scope,
538
- dir: dir,
539
- token: token
540
- });
541
- case 11:
542
- _context2.next = 14;
543
- break;
544
- case 13:
545
- console.log('\nAdd your ENV vars to .env or your vercel dashboard.\n');
546
- case 14:
547
- case "end":
548
- return _context2.stop();
549
- }
550
- }, _callee2, this);
551
- }));
552
- function deploy(_x2) {
553
- return _deploy.apply(this, arguments);
554
- }
555
- return deploy;
556
- }();
557
- _proto.writeIndex = function writeIndex(_ref6) {
558
- var dir = _ref6.dir;
559
- writeFileSync(join(dir, 'index.mjs'), "\n import { handle } from 'hono/vercel'\n import { app } from './hono.mjs';\n export const GET = handle(app);\n export const POST = handle(app);\n ");
560
- };
561
- return VercelDeployer;
562
- }(MastraDeployer);
563
-
564
- export { VercelDeployer };
565
- //# sourceMappingURL=deployer-vercel.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"deployer-vercel.esm.js","sources":["../src/index.ts"],"sourcesContent":["import { MastraDeployer } from '@mastra/core';\nimport * as child_process from 'child_process';\nimport { readFileSync, writeFileSync } from 'fs';\nimport { join } from 'path';\n\ninterface EnvVar {\n key: string;\n value: string;\n target: ('production' | 'preview' | 'development')[];\n type: 'plain' | 'secret';\n}\n\ninterface VercelError {\n message: string;\n code: string;\n}\n\nexport class VercelDeployer extends MastraDeployer {\n constructor({ scope, env, projectName }: { env?: Record<string, any>; scope: string; projectName: string }) {\n super({ scope, env, projectName });\n }\n writeFiles({ dir }: { dir: string }): void {\n this.writeIndex({ dir });\n\n writeFileSync(\n join(dir, 'vercel.json'),\n JSON.stringify(\n {\n version: 2,\n installCommand: 'npm install --omit=dev',\n builds: [\n {\n src: 'index.mjs',\n use: '@vercel/node',\n config: { includeFiles: ['**'] },\n },\n ],\n routes: [\n {\n src: '/(.*)',\n dest: 'index.mjs',\n },\n ],\n },\n null,\n 2,\n ),\n );\n }\n\n private getProjectId({ dir }: { dir: string }): string {\n const projectJsonPath = join(dir, '.vercel', 'project.json');\n try {\n const projectJson = JSON.parse(readFileSync(projectJsonPath, 'utf-8'));\n return projectJson.projectId;\n } catch (error) {\n throw new Error('Could not find project ID. Make sure the project has been deployed first.');\n }\n }\n\n async syncEnv({ scope, dir, token }: { token: string; dir: string; scope: string }) {\n const envFiles = this.getEnvFiles();\n const envVars: string[] = [];\n\n for (const file of envFiles) {\n const vars = this.parseEnvFile(file);\n envVars.push(...vars);\n }\n\n console.log('Syncing environment variables...');\n\n // Transform env vars into the format expected by Vercel API\n const vercelEnvVars: EnvVar[] = envVars.map(envVar => {\n const [key, value] = envVar.split('=');\n if (!key || !value) {\n throw new Error(`Invalid environment variable format: ${envVar}`);\n }\n return {\n key,\n value,\n target: ['production', 'preview', 'development'],\n type: 'plain',\n };\n });\n\n try {\n const projectId = this.getProjectId({ dir });\n\n const response = await fetch(`https://api.vercel.com/v10/projects/${projectId}/env?teamId=${scope}&upsert=true`, {\n method: 'POST',\n headers: {\n Authorization: `Bearer ${token}`,\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify(vercelEnvVars),\n });\n\n if (!response.ok) {\n const error = (await response.json()) as VercelError;\n throw new Error(`Failed to sync environment variables: ${error.message}`);\n }\n\n console.log('✓ Successfully synced environment variables');\n } catch (error) {\n if (error instanceof Error) {\n console.error('Failed to sync environment variables:', error.message);\n } else {\n console.error('Failed to sync environment variables:', error);\n }\n throw error;\n }\n }\n\n async deploy({ dir, token }: { dir: string; token: string }): Promise<void> {\n // Get env vars for initial deployment\n const envFiles = this.getEnvFiles();\n const envVars: string[] = [];\n\n for (const file of envFiles) {\n const vars = this.parseEnvFile(file);\n envVars.push(...vars);\n }\n\n // Create the command array with base arguments\n const commandArgs = [\n '--scope',\n this.scope as string,\n '--cwd',\n dir,\n 'deploy',\n '--token',\n token,\n '--yes',\n ...(this.projectName ? ['--name', this.projectName] : []),\n ];\n\n // Add env vars to initial deployment\n for (const envVar of envVars) {\n commandArgs.push('--env', envVar);\n }\n\n // Run the Vercel deploy command\n child_process.execSync(`vercel ${commandArgs.join(' ')}`, {\n cwd: dir,\n env: {\n ...this.env,\n PATH: process.env.PATH,\n },\n stdio: 'inherit',\n });\n\n console.log('Deployment started on Vercel. You can wait for it to finish or exit this command.');\n\n if (envVars.length > 0) {\n // Sync environment variables for future deployments\n await this.syncEnv({ scope: this.scope, dir, token });\n } else {\n console.log('\\nAdd your ENV vars to .env or your vercel dashboard.\\n');\n }\n }\n\n writeIndex({ dir }: { dir: string }): void {\n writeFileSync(\n join(dir, 'index.mjs'),\n `\n import { handle } from 'hono/vercel'\n import { app } from './hono.mjs';\n export const GET = handle(app);\n export const POST = handle(app);\n `,\n );\n }\n}\n"],"names":["VercelDeployer","_MastraDeployer","_ref","scope","env","projectName","call","_inheritsLoose","_proto","prototype","writeFiles","_ref2","dir","writeIndex","writeFileSync","join","JSON","stringify","version","installCommand","builds","src","use","config","includeFiles","routes","dest","getProjectId","_ref3","projectJsonPath","projectJson","parse","readFileSync","projectId","error","Error","syncEnv","_syncEnv","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_ref4","token","envFiles","envVars","_iterator","_step","file","vars","vercelEnvVars","response","wrap","_callee$","_context","prev","next","getEnvFiles","_createForOfIteratorHelperLoose","done","value","parseEnvFile","push","apply","console","log","map","envVar","_envVar$split","split","key","target","type","fetch","method","headers","Authorization","body","sent","ok","json","message","t0","stop","_x","arguments","deploy","_deploy","_callee2","_ref5","_iterator2","_step2","commandArgs","_i","_envVars","_callee2$","_context2","concat","length","child_process","execSync","cwd","_extends","PATH","process","stdio","_x2","_ref6","MastraDeployer"],"mappings":"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"}