aws-secrets-manager-wrapper
Version:
A TypeScript wrapper for AWS Secrets Manager that simplifies common operations and provides a more user-friendly interface.
1 lines • 9.89 kB
JavaScript
exports.id=563,exports.ids=[563],exports.modules={2563:(e,t,s)=>{s.d(t,{GetRoleCredentialsCommand:()=>T,SSOClient:()=>je});var o=s(9389),n=s(1208),r=s(1540);const i={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}};class a extends r.TJ{constructor(e){super(e),Object.setPrototypeOf(this,a.prototype)}}class c extends a{constructor(e){super({name:"InvalidRequestException",$fault:"client",...e}),this.name="InvalidRequestException",this.$fault="client",Object.setPrototypeOf(this,c.prototype)}}class d extends a{constructor(e){super({name:"ResourceNotFoundException",$fault:"client",...e}),this.name="ResourceNotFoundException",this.$fault="client",Object.setPrototypeOf(this,d.prototype)}}class u extends a{constructor(e){super({name:"TooManyRequestsException",$fault:"client",...e}),this.name="TooManyRequestsException",this.$fault="client",Object.setPrototypeOf(this,u.prototype)}}class p extends a{constructor(e){super({name:"UnauthorizedException",$fault:"client",...e}),this.name="UnauthorizedException",this.$fault="client",Object.setPrototypeOf(this,p.prototype)}}const l=e=>({...e,...e.accessToken&&{accessToken:r.$H}}),h=e=>({...e,...e.secretAccessKey&&{secretAccessKey:r.$H},...e.sessionToken&&{sessionToken:r.$H}}),m=e=>({...e,...e.roleCredentials&&{roleCredentials:h(e.roleCredentials)}});var y=s(1919),g=s(3847);const f=async(e,t)=>{const s=(0,g.lI)(e,t),o=(0,r.Tj)({},r.eU,{[q]:e[R]});s.bp("/federation/credentials");const n=(0,r.Tj)({[D]:[,(0,r.Y0)(e[C],"roleName")],[A]:[,(0,r.Y0)(e[k],"accountId")]});return s.m("GET").h(o).q(n).b(void 0),s.build()},S=async(e,t)=>{if(200!==e.statusCode&&e.statusCode>=300)return w(e,t);const s=(0,r.Tj)({$metadata:E(e)}),o=(0,r.Y0)((0,r.Xk)(await(0,y.Y2)(e.body,t)),"body"),n=(0,r.s)(o,{roleCredentials:r.Ss});return Object.assign(s,n),s},w=async(e,t)=>{const s={...e,body:await(0,y.CG)(e.body,t)},o=(0,y.cJ)(e,s.body);switch(o){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":throw await b(s,t);case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":throw await P(s,t);case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":throw await x(s,t);case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":throw await I(s,t);default:const n=s.body;return v({output:e,parsedBody:n,errorCode:o})}},v=(0,r.jr)(a),b=async(e,t)=>{const s=(0,r.Tj)({}),o=e.body,n=(0,r.s)(o,{message:r.lK});Object.assign(s,n);const i=new c({$metadata:E(e),...s});return(0,r.Mw)(i,e.body)},P=async(e,t)=>{const s=(0,r.Tj)({}),o=e.body,n=(0,r.s)(o,{message:r.lK});Object.assign(s,n);const i=new d({$metadata:E(e),...s});return(0,r.Mw)(i,e.body)},x=async(e,t)=>{const s=(0,r.Tj)({}),o=e.body,n=(0,r.s)(o,{message:r.lK});Object.assign(s,n);const i=new u({$metadata:E(e),...s});return(0,r.Mw)(i,e.body)},I=async(e,t)=>{const s=(0,r.Tj)({}),o=e.body,n=(0,r.s)(o,{message:r.lK});Object.assign(s,n);const i=new p({$metadata:E(e),...s});return(0,r.Mw)(i,e.body)},E=e=>({httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}),k="accountId",R="accessToken",A="account_id",C="roleName",D="role_name",q="x-amz-sso_bearer_token";class T extends(r.uB.classBuilder().ep(i).m((function(e,t,s,r){return[(0,n.TM)(s,this.serialize,this.deserialize),(0,o.rD)(s,e.getEndpointParameterInstructions())]})).s("SWBPortalService","GetRoleCredentials",{}).n("SSOClient","GetRoleCredentialsCommand").f(l,m).ser(f).de(S).build()){}var $=s(1095),j=s(9359),z=s(8377),O=s(6961),F=s(1487),U=s(649),M=s(3594),H=s(3448),K=s(7135);const N=async(e,t,s)=>({operation:(0,K.u)(t).operation,region:await(0,K.t)(e.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),G=e=>{const t=[];switch(e.operation){case"GetRoleCredentials":case"ListAccountRoles":case"ListAccounts":case"Logout":t.push({schemeId:"smithy.api#noAuth"});break;default:t.push(function(e){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"awsssoportal",region:e.region},propertiesExtractor:(e,t)=>({signingProperties:{config:e,context:t}})}}(e))}return t};var B=s(5122),L=s(3410),Z=s(1701),V=s(9987),Y=s(4029),_=s(7809),J=s(3323),W=s(6228),X=s(2641),Q=s(4572),ee=s(3197),te=s(6652),se=s(8545);const oe="required",ne="fn",re="argv",ie="ref",ae=!0,ce="isSet",de="booleanEquals",ue="error",pe="endpoint",le="tree",he="PartitionResult",me="getAttr",ye={[oe]:!1,type:"String"},ge={[oe]:!0,default:!1,type:"Boolean"},fe={[ie]:"Endpoint"},Se={[ne]:de,[re]:[{[ie]:"UseFIPS"},!0]},we={[ne]:de,[re]:[{[ie]:"UseDualStack"},!0]},ve={},be={[ne]:me,[re]:[{[ie]:he},"supportsFIPS"]},Pe={[ie]:he},xe={[ne]:de,[re]:[!0,{[ne]:me,[re]:[Pe,"supportsDualStack"]}]},Ie=[Se],Ee=[we],ke=[{[ie]:"Region"}],Re={version:"1.0",parameters:{Region:ye,UseDualStack:ge,UseFIPS:ge,Endpoint:ye},rules:[{conditions:[{[ne]:ce,[re]:[fe]}],rules:[{conditions:Ie,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:ue},{conditions:Ee,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:ue},{endpoint:{url:fe,properties:ve,headers:ve},type:pe}],type:le},{conditions:[{[ne]:ce,[re]:ke}],rules:[{conditions:[{[ne]:"aws.partition",[re]:ke,assign:he}],rules:[{conditions:[Se,we],rules:[{conditions:[{[ne]:de,[re]:[ae,be]},xe],rules:[{endpoint:{url:"https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:ve,headers:ve},type:pe}],type:le},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:ue}],type:le},{conditions:Ie,rules:[{conditions:[{[ne]:de,[re]:[be,ae]}],rules:[{conditions:[{[ne]:"stringEquals",[re]:[{[ne]:me,[re]:[Pe,"name"]},"aws-us-gov"]}],endpoint:{url:"https://portal.sso.{Region}.amazonaws.com",properties:ve,headers:ve},type:pe},{endpoint:{url:"https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}",properties:ve,headers:ve},type:pe}],type:le},{error:"FIPS is enabled but this partition does not support FIPS",type:ue}],type:le},{conditions:Ee,rules:[{conditions:[xe],rules:[{endpoint:{url:"https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:ve,headers:ve},type:pe}],type:le},{error:"DualStack is enabled but this partition does not support DualStack",type:ue}],type:le},{endpoint:{url:"https://portal.sso.{Region}.{PartitionResult#dnsSuffix}",properties:ve,headers:ve},type:pe}],type:le}],type:le},{error:"Invalid Configuration: Missing Region",type:ue}]},Ae=new se.kS({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),Ce=(e,t={})=>Ae.get(e,(()=>(0,se.sO)(Re,{endpointParams:e,logger:t.logger})));se.mw.aws=te.UF;var De=s(4321);var qe=s(6928),Te=s(5479);const $e=e=>{const t=e.httpAuthSchemes;let s=e.httpAuthSchemeProvider,o=e.credentials;return{setHttpAuthScheme(e){const s=t.findIndex((t=>t.schemeId===e.schemeId));-1===s?t.push(e):t.splice(s,1,e)},httpAuthSchemes:()=>t,setHttpAuthSchemeProvider(e){s=e},httpAuthSchemeProvider:()=>s,setCredentials(e){o=e},credentials:()=>o}};class je extends r.Kj{constructor(...[e]){const t=(e=>{(0,r.I9)(process.version);const t=(0,De.I)(e),s=()=>t().then(r.lT),o=(e=>({apiVersion:"2019-06-10",base64Decoder:e?.base64Decoder??Q.E,base64Encoder:e?.base64Encoder??Q.n,disableHostPrefix:e?.disableHostPrefix??!1,endpointProvider:e?.endpointProvider??Ce,extensions:e?.extensions??[],httpAuthSchemeProvider:e?.httpAuthSchemeProvider??G,httpAuthSchemes:e?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new W.f2},{schemeId:"smithy.api#noAuth",identityProvider:e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new g.mR}],logger:e?.logger??new r.N4,serviceId:e?.serviceId??"SSO",urlParser:e?.urlParser??X.D,utf8Decoder:e?.utf8Decoder??ee.ar,utf8Encoder:e?.utf8Encoder??ee.Pq}))(e);return(0,B.I)(process.version),{...o,...e,runtime:"node",defaultsMode:t,bodyLengthChecker:e?.bodyLengthChecker??_.n,defaultUserAgentProvider:e?.defaultUserAgentProvider??(0,L.pf)({serviceId:o.serviceId,clientVersion:"3.670.0"}),maxAttempts:e?.maxAttempts??(0,V.Z)(M.qs),region:e?.region??(0,V.Z)(F.GG,F.zH),requestHandler:Y.$c.create(e?.requestHandler??s),retryMode:e?.retryMode??(0,V.Z)({...M.kN,default:async()=>(await s()).retryMode||J.L0}),sha256:e?.sha256??Z.V.bind(null,"sha256"),streamCollector:e?.streamCollector??Y.kv,useDualstackEndpoint:e?.useDualstackEndpoint??(0,V.Z)(F.e$),useFipsEndpoint:e?.useFipsEndpoint??(0,V.Z)(F.Ko),userAgentAppId:e?.userAgentAppId??(0,V.Z)(L.hV)}})(e||{}),s=(n=t,{...n,useDualstackEndpoint:n.useDualstackEndpoint??!1,useFipsEndpoint:n.useFipsEndpoint??!1,defaultSigningName:"awsssoportal"});var n;const i=(0,O.Dc)(s),a=(0,M.$z)(i),c=(0,F.TD)(a),d=(0,$.OV)(c);var u;const p=((e,t)=>{const s={...(0,qe.Rq)(e),...(0,r.xA)(e),...(0,Te.eS)(e),...$e(e)};return t.forEach((e=>e.configure(s))),{...e,...(0,qe.$3)(s),...(0,r.uv)(s),...(0,Te.jt)(s),...(o=s,{httpAuthSchemes:o.httpAuthSchemes(),httpAuthSchemeProvider:o.httpAuthSchemeProvider(),credentials:o.credentials()})};var o})((u=(0,o.Co)(d),{...(0,H.h)(u)}),e?.extensions||[]);super(p),this.config=p,this.middlewareStack.use((0,O.sM)(this.config)),this.middlewareStack.use((0,M.ey)(this.config)),this.middlewareStack.use((0,U.vK)(this.config)),this.middlewareStack.use((0,$.TC)(this.config)),this.middlewareStack.use((0,j.Y7)(this.config)),this.middlewareStack.use((0,z.n4)(this.config)),this.middlewareStack.use((0,g.wB)(this.config,{httpAuthSchemeParametersProvider:N,identityProviderConfigProvider:async e=>new g.h$({"aws.auth#sigv4":e.credentials})})),this.middlewareStack.use((0,g.lW)(this.config))}destroy(){super.destroy()}}}};
;