UNPKG

aicommits

Version:

Writes your git commit messages for you with AI

2 lines (1 loc) 9.37 kB
var z=Object.defineProperty;var e=(y,p)=>z(y,"name",{value:p,configurable:!0});import S from"path";import A from"fs";import{r as R}from"./cli-mBkMsQEy.mjs";import N from"os";var x,$;function G(){if($)return x;$=1;var y=Object.create,p=Object.defineProperty,P=Object.getOwnPropertyDescriptor,j=Object.getOwnPropertyNames,b=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty,m=e((t,r)=>{for(var o in r)p(t,o,{get:r[o],enumerable:!0})},"__export"),k=e((t,r,o,s)=>{if(r&&typeof r=="object"||typeof r=="function")for(let O of j(r))!T.call(t,O)&&O!==o&&p(t,O,{get:e(()=>r[O],"get"),enumerable:!(s=P(r,O))||s.enumerable});return t},"__copyProps"),v=e((t,r,o)=>(o=t!=null?y(b(t)):{},k(!t||!t.__esModule?p(o,"default",{value:t,enumerable:!0}):o,t)),"__toESM"),D=e(t=>k(p({},"__esModule",{value:!0}),t),"__toCommonJS"),g={};m(g,{findRootDir:e(()=>h,"findRootDir"),getUserDataDir:e(()=>c,"getUserDataDir")}),x=D(g);var u=v(S),f=v(A),_=v(N),w=R();function h(){try{let t=process.cwd();for(;t!==u.default.dirname(t);){const r=u.default.join(t,".vercel");if(f.default.existsSync(r))return t;t=u.default.dirname(t)}}catch{throw new w.VercelOidcTokenError("Token refresh only supported in node server environments")}return null}e(h,"findRootDir");function c(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(_.default.platform()){case"darwin":return u.default.join(_.default.homedir(),"Library/Application Support");case"linux":return u.default.join(_.default.homedir(),".local/share");case"win32":return process.env.LOCALAPPDATA?process.env.LOCALAPPDATA:null;default:return null}}return e(c,"getUserDataDir"),x}e(G,"requireTokenIo");var C,U;function X(){if(U)return C;U=1;var y=Object.create,p=Object.defineProperty,P=Object.getOwnPropertyDescriptor,j=Object.getOwnPropertyNames,b=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty,m=e((r,o)=>{for(var s in o)p(r,s,{get:o[s],enumerable:!0})},"__export"),k=e((r,o,s,O)=>{if(o&&typeof o=="object"||typeof o=="function")for(let E of j(o))!T.call(r,E)&&E!==s&&p(r,E,{get:e(()=>o[E],"get"),enumerable:!(O=P(o,E))||O.enumerable});return r},"__copyProps"),v=e((r,o,s)=>(s=r!=null?y(b(r)):{},k(!r||!r.__esModule?p(s,"default",{value:r,enumerable:!0}):s,r)),"__toESM"),D=e(r=>k(p({},"__esModule",{value:!0}),r),"__toCommonJS"),g={};m(g,{isValidAccessToken:e(()=>t,"isValidAccessToken"),readAuthConfig:e(()=>h,"readAuthConfig"),writeAuthConfig:e(()=>c,"writeAuthConfig")}),C=D(g);var u=v(A),f=v(S),_=J();function w(){const r=(0,_.getVercelDataDir)();if(!r)throw new Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return f.join(r,"auth.json")}e(w,"getAuthConfigPath");function h(){try{const r=w();if(!u.existsSync(r))return null;const o=u.readFileSync(r,"utf8");return o?JSON.parse(o):null}catch{return null}}e(h,"readAuthConfig");function c(r){const o=w(),s=f.dirname(o);u.existsSync(s)||u.mkdirSync(s,{mode:504,recursive:!0}),u.writeFileSync(o,JSON.stringify(r,null,2),{mode:384})}e(c,"writeAuthConfig");function t(r){if(!r.token)return!1;if(typeof r.expiresAt!="number")return!0;const o=Math.floor(Date.now()/1e3);return r.expiresAt>=o}return e(t,"isValidAccessToken"),C}e(X,"requireAuthConfig");var V,q;function Y(){if(q)return V;q=1;var y=Object.defineProperty,p=Object.getOwnPropertyDescriptor,P=Object.getOwnPropertyNames,j=Object.prototype.hasOwnProperty,b=e((c,t)=>{for(var r in t)y(c,r,{get:t[r],enumerable:!0})},"__export"),T=e((c,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of P(t))!j.call(c,s)&&s!==r&&y(c,s,{get:e(()=>t[s],"get"),enumerable:!(o=p(t,s))||o.enumerable});return c},"__copyProps"),m=e(c=>T(y({},"__esModule",{value:!0}),c),"__toCommonJS"),k={};b(k,{processTokenResponse:e(()=>h,"processTokenResponse"),refreshTokenRequest:e(()=>w,"refreshTokenRequest")}),V=m(k);var v=N;const D="https://vercel.com",g="cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp",u=`@vercel/oidc node-${process.version} ${(0,v.platform)()} (${(0,v.arch)()}) ${(0,v.hostname)()}`;let f=null;async function _(){if(f)return f;const c=`${D}/.well-known/openid-configuration`,t=await fetch(c,{headers:{"user-agent":u}});if(!t.ok)throw new Error("Failed to discover OAuth endpoints");const r=await t.json();if(!r||typeof r.token_endpoint!="string")throw new Error("Invalid OAuth discovery response");const o=r.token_endpoint;return f=o,o}e(_,"getTokenEndpoint");async function w(c){const t=await _();return await fetch(t,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded","user-agent":u},body:new URLSearchParams({client_id:g,grant_type:"refresh_token",...c})})}e(w,"refreshTokenRequest");async function h(c){const t=await c.json();if(!c.ok){const r=typeof t=="object"&&t&&"error"in t?String(t.error):"Token refresh failed";return[new Error(r)]}return typeof t!="object"||t===null?[new Error("Invalid token response")]:typeof t.access_token!="string"?[new Error("Missing access_token in response")]:t.token_type!=="Bearer"?[new Error("Invalid token_type in response")]:typeof t.expires_in!="number"?[new Error("Missing expires_in in response")]:[null,t]}return e(h,"processTokenResponse"),V}e(Y,"requireOauth");var I,L;function J(){if(L)return I;L=1;var y=Object.create,p=Object.defineProperty,P=Object.getOwnPropertyDescriptor,j=Object.getOwnPropertyNames,b=Object.getPrototypeOf,T=Object.prototype.hasOwnProperty,m=e((n,i)=>{for(var a in i)p(n,a,{get:i[a],enumerable:!0})},"__export"),k=e((n,i,a,l)=>{if(i&&typeof i=="object"||typeof i=="function")for(let d of j(i))!T.call(n,d)&&d!==a&&p(n,d,{get:e(()=>i[d],"get"),enumerable:!(l=P(i,d))||l.enumerable});return n},"__copyProps"),v=e((n,i,a)=>(a=n!=null?y(b(n)):{},k(!n||!n.__esModule?p(a,"default",{value:n,enumerable:!0}):a,n)),"__toESM"),D=e(n=>k(p({},"__esModule",{value:!0}),n),"__toCommonJS"),g={};m(g,{assertVercelOidcTokenResponse:e(()=>s,"assertVercelOidcTokenResponse"),findProjectInfo:e(()=>O,"findProjectInfo"),getTokenPayload:e(()=>H,"getTokenPayload"),getVercelCliToken:e(()=>r,"getVercelCliToken"),getVercelDataDir:e(()=>t,"getVercelDataDir"),getVercelOidcToken:e(()=>o,"getVercelOidcToken"),isExpired:e(()=>B,"isExpired"),loadToken:e(()=>F,"loadToken"),saveToken:e(()=>E,"saveToken")}),I=D(g);var u=v(S),f=v(A),_=R(),w=G(),h=X(),c=Y();function t(){const n="com.vercel.cli",i=(0,w.getUserDataDir)();return i?u.join(i,n):null}e(t,"getVercelDataDir");async function r(){const n=(0,h.readAuthConfig)();if(!n)return null;if((0,h.isValidAccessToken)(n))return n.token||null;if(!n.refreshToken)return(0,h.writeAuthConfig)({}),null;try{const i=await(0,c.refreshTokenRequest)({refresh_token:n.refreshToken}),[a,l]=await(0,c.processTokenResponse)(i);if(a||!l)return(0,h.writeAuthConfig)({}),null;const d={token:l.access_token,expiresAt:Math.floor(Date.now()/1e3)+l.expires_in};return l.refresh_token&&(d.refreshToken=l.refresh_token),(0,h.writeAuthConfig)(d),d.token??null}catch{return(0,h.writeAuthConfig)({}),null}}e(r,"getVercelCliToken");async function o(n,i,a){const l=`https://api.vercel.com/v1/projects/${i}/token?source=vercel-oidc-refresh${a?`&teamId=${a}`:""}`,d=await fetch(l,{method:"POST",headers:{Authorization:`Bearer ${n}`}});if(!d.ok)throw new _.VercelOidcTokenError(`Failed to refresh OIDC token: ${d.statusText}`);const M=await d.json();return s(M),M}e(o,"getVercelOidcToken");function s(n){if(!n||typeof n!="object")throw new TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!("token"in n)||typeof n.token!="string")throw new TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}e(s,"assertVercelOidcTokenResponse");function O(){const n=(0,w.findRootDir)();if(!n)throw new _.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");const i=u.join(n,".vercel","project.json");if(!f.existsSync(i))throw new _.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");const a=JSON.parse(f.readFileSync(i,"utf8"));if(typeof a.projectId!="string"&&typeof a.orgId!="string")throw new TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:a.projectId,teamId:a.orgId}}e(O,"findProjectInfo");function E(n,i){const a=(0,w.getUserDataDir)();if(!a)throw new _.VercelOidcTokenError("Unable to find user data directory. Please reach out to Vercel support.");const l=u.join(a,"com.vercel.token",`${i}.json`),d=JSON.stringify(n);f.mkdirSync(u.dirname(l),{mode:504,recursive:!0}),f.writeFileSync(l,d),f.chmodSync(l,432)}e(E,"saveToken");function F(n){const i=(0,w.getUserDataDir)();if(!i)throw new _.VercelOidcTokenError("Unable to find user data directory. Please reach out to Vercel support.");const a=u.join(i,"com.vercel.token",`${n}.json`);if(!f.existsSync(a))return null;const l=JSON.parse(f.readFileSync(a,"utf8"));return s(l),l}e(F,"loadToken");function H(n){const i=n.split(".");if(i.length!==3)throw new _.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");const a=i[1].replace(/-/g,"+").replace(/_/g,"/"),l=a.padEnd(a.length+(4-a.length%4)%4,"=");return JSON.parse(Buffer.from(l,"base64").toString("utf8"))}e(H,"getTokenPayload");function B(n){return n.exp*1e3<Date.now()}return e(B,"isExpired"),I}e(J,"requireTokenUtil");export{J as r};