@integration-app/membrane-cli
Version:
CLI tool for importing and exporting Integration.app workspace data
2 lines (1 loc) • 2.31 kB
JavaScript
var d=Object.defineProperty;var c=(e,r)=>d(e,"name",{value:r,configurable:!0});import"os";import"path";import{s as l,C as p,h as a}from"./index-CNuB1luy.js";import"crypto";import{p as w}from"./parseKnownFiles-BrQvbftH.js";import{exec as u}from"child_process";import{promisify as f}from"util";import"fs";import"url";import"chalk";import"commander";import"inquirer";import"node:fs";import"node:path";import"js-yaml";import"@integration-app/sdk";import"zod";import"jsonwebtoken";import"events";import"constants";import"stream";import"assert";import"buffer";import"node:url";import"node:fs/promises";import"node:events";import"node:stream";import"node:string_decoder";import"zlib";import"form-data";import"async_hooks";import"http";import"https";import"http2";import"process";import"@anthropic-ai/sdk";const P=c((e,r,o)=>{if(r.Version!==1)throw Error(`Profile ${e} credential_process did not return Version 1.`);if(r.AccessKeyId===void 0||r.SecretAccessKey===void 0)throw Error(`Profile ${e} credential_process returned invalid credentials.`);if(r.Expiration){const n=new Date;if(new Date(r.Expiration)<n)throw Error(`Profile ${e} credential_process returned expired credentials.`)}let t=r.AccountId;!t&&o?.[e]?.aws_account_id&&(t=o[e].aws_account_id);const i={accessKeyId:r.AccessKeyId,secretAccessKey:r.SecretAccessKey,...r.SessionToken&&{sessionToken:r.SessionToken},...r.Expiration&&{expiration:new Date(r.Expiration)},...r.CredentialScope&&{credentialScope:r.CredentialScope},...t&&{accountId:t}};return l(i,"CREDENTIALS_PROCESS","w"),i},"getValidatedProcessCredentials"),E=c(async(e,r,o)=>{const t=r[e];if(r[e]){const i=t.credential_process;if(i!==void 0){const n=f(u);try{const{stdout:s}=await n(i);let m;try{m=JSON.parse(s.trim())}catch{throw Error(`Profile ${e} credential_process returned invalid JSON.`)}return P(e,m,r)}catch(s){throw new p(s.message,{logger:o})}}else throw new p(`Profile ${e} did not contain credential_process.`,{logger:o})}else throw new p(`Profile ${e} could not be found in shared credentials file.`,{logger:o})},"resolveProcessCredentials"),S=c((e={})=>async({callerClientConfig:r}={})=>{e.logger?.debug("@aws-sdk/credential-provider-process - fromProcess");const o=await w(e);return E(a({profile:e.profile??r?.profile}),o,e.logger)},"fromProcess");export{S as fromProcess};