gemi 0.11.2 → 0.11.4

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.
Files changed (98) hide show
  1. package/dist/app/index.js +2 -2
  2. package/dist/app/index.js.map +2 -2
  3. package/dist/broadcasting/index.js +1 -1
  4. package/dist/{chunk-vqf9m20e.js → chunk-0fpd8x80.js} +2 -2
  5. package/dist/{chunk-vqf9m20e.js.map → chunk-0fpd8x80.js.map} +1 -1
  6. package/dist/{chunk-7642sy4a.js → chunk-0hkswd35.js} +2 -2
  7. package/dist/{chunk-7642sy4a.js.map → chunk-0hkswd35.js.map} +1 -1
  8. package/dist/chunk-0zcdpm9s.js +12 -0
  9. package/dist/{chunk-je3pghxd.js.map → chunk-0zcdpm9s.js.map} +5 -4
  10. package/dist/{chunk-1nfdg1r2.js → chunk-2he05pcw.js} +2 -2
  11. package/dist/{chunk-1nfdg1r2.js.map → chunk-2he05pcw.js.map} +1 -1
  12. package/dist/{chunk-9sznj4mc.js → chunk-2nta4ced.js} +3 -3
  13. package/dist/{chunk-9sznj4mc.js.map → chunk-2nta4ced.js.map} +1 -1
  14. package/dist/{chunk-dsxrf1s0.js → chunk-39yjf3rg.js} +2 -2
  15. package/dist/{chunk-dsxrf1s0.js.map → chunk-39yjf3rg.js.map} +1 -1
  16. package/dist/chunk-4nvy0yh5.js +7 -0
  17. package/dist/{chunk-mf3gapaw.js.map → chunk-4nvy0yh5.js.map} +4 -4
  18. package/dist/chunk-6g3k8jfg.js +4 -0
  19. package/dist/{chunk-fytpzh2r.js.map → chunk-6g3k8jfg.js.map} +1 -1
  20. package/dist/{chunk-qsp0jr98.js → chunk-6z27swkh.js} +2 -2
  21. package/dist/{chunk-qsp0jr98.js.map → chunk-6z27swkh.js.map} +1 -1
  22. package/dist/{chunk-1jgs3epx.js → chunk-7prz1maa.js} +3 -3
  23. package/dist/{chunk-1jgs3epx.js.map → chunk-7prz1maa.js.map} +1 -1
  24. package/dist/chunk-7s8zd34b.js +4 -0
  25. package/dist/{chunk-gmpr8n3p.js.map → chunk-7s8zd34b.js.map} +1 -1
  26. package/dist/{chunk-c2v89ecj.js → chunk-81sjef1k.js} +2 -2
  27. package/dist/{chunk-c2v89ecj.js.map → chunk-81sjef1k.js.map} +1 -1
  28. package/dist/{chunk-mswf7bkb.js → chunk-84j3nee7.js} +2 -2
  29. package/dist/{chunk-mswf7bkb.js.map → chunk-84j3nee7.js.map} +1 -1
  30. package/dist/{chunk-cxpe1x8v.js → chunk-8vwvg1mz.js} +3 -3
  31. package/dist/{chunk-cxpe1x8v.js.map → chunk-8vwvg1mz.js.map} +1 -1
  32. package/dist/chunk-ar7rv0kv.js +4 -0
  33. package/dist/chunk-ar7rv0kv.js.map +19 -0
  34. package/dist/{chunk-g5cwmnts.js → chunk-awzaptpe.js} +3 -3
  35. package/dist/{chunk-g5cwmnts.js.map → chunk-awzaptpe.js.map} +1 -1
  36. package/dist/{chunk-4w8xsmvk.js → chunk-b2jtjr1t.js} +2 -2
  37. package/dist/{chunk-4w8xsmvk.js.map → chunk-b2jtjr1t.js.map} +1 -1
  38. package/dist/{chunk-9c7qf8by.js → chunk-d5pxtqtd.js} +2 -2
  39. package/dist/{chunk-9c7qf8by.js.map → chunk-d5pxtqtd.js.map} +1 -1
  40. package/dist/{chunk-29wea79e.js → chunk-ee9prqyw.js} +3 -3
  41. package/dist/{chunk-29wea79e.js.map → chunk-ee9prqyw.js.map} +1 -1
  42. package/dist/{chunk-8tgdnzze.js → chunk-eswv9v3d.js} +3 -3
  43. package/dist/{chunk-8tgdnzze.js.map → chunk-eswv9v3d.js.map} +1 -1
  44. package/dist/{chunk-fgnb3fqg.js → chunk-f9edkf2p.js} +2 -2
  45. package/dist/{chunk-fgnb3fqg.js.map → chunk-f9edkf2p.js.map} +1 -1
  46. package/dist/chunk-gevrggs5.js +4 -0
  47. package/dist/{chunk-ttzhcs09.js.map → chunk-gevrggs5.js.map} +2 -2
  48. package/dist/chunk-gmmexkky.js +9 -0
  49. package/dist/{chunk-m9wgvs0q.js.map → chunk-gmmexkky.js.map} +4 -5
  50. package/dist/{chunk-x4wrsp3z.js → chunk-jpg0tc9s.js} +2 -2
  51. package/dist/{chunk-x4wrsp3z.js.map → chunk-jpg0tc9s.js.map} +1 -1
  52. package/dist/chunk-nyy6szam.js +27 -0
  53. package/dist/{chunk-2e7gbc3s.js.map → chunk-nyy6szam.js.map} +3 -4
  54. package/dist/{chunk-50jet9y8.js → chunk-q0y3rb5t.js} +2 -2
  55. package/dist/{chunk-50jet9y8.js.map → chunk-q0y3rb5t.js.map} +1 -1
  56. package/dist/{chunk-3at5zf5m.js → chunk-tby3aehr.js} +3 -3
  57. package/dist/{chunk-3at5zf5m.js.map → chunk-tby3aehr.js.map} +1 -1
  58. package/dist/chunk-tjyh7gxn.js +4 -0
  59. package/dist/{chunk-fpjzh4vm.js.map → chunk-tjyh7gxn.js.map} +2 -2
  60. package/dist/{chunk-n4ent2w6.js → chunk-varzvqbr.js} +2 -2
  61. package/dist/{chunk-n4ent2w6.js.map → chunk-varzvqbr.js.map} +1 -1
  62. package/dist/{chunk-7p33frt1.js → chunk-xa2qyvjm.js} +2 -2
  63. package/dist/{chunk-7p33frt1.js.map → chunk-xa2qyvjm.js.map} +1 -1
  64. package/dist/{chunk-146wabk2.js → chunk-y09tk1pr.js} +2 -2
  65. package/dist/{chunk-146wabk2.js.map → chunk-y09tk1pr.js.map} +1 -1
  66. package/dist/client/ProgressManager.d.ts +1 -1
  67. package/dist/email/index.js +2 -2
  68. package/dist/email/index.js.map +2 -2
  69. package/dist/facades/I18n.d.ts +2 -0
  70. package/dist/facades/I18n.d.ts.map +1 -1
  71. package/dist/facades/index.js +5 -5
  72. package/dist/facades/index.js.map +3 -3
  73. package/dist/http/HttpRequest.d.ts +1 -0
  74. package/dist/http/HttpRequest.d.ts.map +1 -1
  75. package/dist/http/index.js +2 -2
  76. package/dist/http/index.js.map +1 -1
  77. package/dist/kernel/index.js +2 -2
  78. package/dist/kernel/index.js.map +2 -2
  79. package/dist/server/index.js +2 -2
  80. package/dist/server/index.js.map +1 -1
  81. package/dist/services/index.js +41 -41
  82. package/dist/services/index.js.map +4 -4
  83. package/dist/vite/{index-C-8cskc3.mjs → index-Bc6o7jG5.mjs} +2 -2
  84. package/dist/vite/index.mjs +1 -1
  85. package/dist/vite/{typescript-BLJ6hc5s.mjs → typescript-B1WYlu5B.mjs} +1 -1
  86. package/package.json +1 -1
  87. package/dist/chunk-2e7gbc3s.js +0 -27
  88. package/dist/chunk-3q45w8s4.js +0 -4
  89. package/dist/chunk-3q45w8s4.js.map +0 -10
  90. package/dist/chunk-fpjzh4vm.js +0 -4
  91. package/dist/chunk-fytpzh2r.js +0 -4
  92. package/dist/chunk-gmpr8n3p.js +0 -4
  93. package/dist/chunk-je3pghxd.js +0 -12
  94. package/dist/chunk-m9wgvs0q.js +0 -9
  95. package/dist/chunk-mf3gapaw.js +0 -7
  96. package/dist/chunk-ttzhcs09.js +0 -4
  97. package/dist/chunk-v8ktc86t.js +0 -4
  98. package/dist/chunk-v8ktc86t.js.map +0 -18
@@ -1,4 +0,0 @@
1
- // @bun
2
- import{$ as N,R as U,S as _,T as We,U as Ae,V as Ke,W as Qe,Z as Ye,_ as O,aa as f,ba as g,ca as Ze,da as he,ea as ue,fa as we,ga as be,ha as Ce,ia as Te,ka as os,la as cs,ma as je,na as xe,oa as ve,pa as He,qa as ke,ra as Ge,sa as Re,ta as Ee,ua as qe,va as Se,wa as ze,xa as Pe,ya as Le}from"./chunk-cxpe1x8v.js";import{Aa as ne,za as l}from"./chunk-3at5zf5m.js";import{Ba as _e,Ca as $e,Ia as se,Ja as te,La as re,Ma as ae,Na as le,Oa as pe,Pa as Xe,Ra as ns,Sa as k,Ua as z,Va as ge,Wa as h,bb as Oe,cb as u,db as es,eb as ye,fb as me,gb as Je,hb as Ie,jb as ss,kb as de,lb as c,mb as y,pb as ts}from"./chunk-mf3gapaw.js";import{sb as B,wb as x}from"./chunk-2e7gbc3s.js";import"./chunk-je3pghxd.js";import"./chunk-7p33frt1.js";import"./chunk-1jgs3epx.js";import"./chunk-7642sy4a.js";import"./chunk-8tgdnzze.js";import"./chunk-fytpzh2r.js";import"./chunk-g5cwmnts.js";import"./chunk-29wea79e.js";import{Hc as i}from"./chunk-fgnb3fqg.js";var p=i(B(),1);var $=i(x(),1);var J=async(e,s,t)=>{return{operation:U(s).operation,region:await _(e.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}};function ms(e){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"awsssoportal",region:e.region},propertiesExtractor:(s,t)=>({signingProperties:{config:s,context:t}})}}function b(e){return{schemeId:"smithy.api#noAuth"}}var I=(e)=>{let s=[];switch(e.operation){case"GetRoleCredentials":{s.push(b(e));break}case"ListAccountRoles":{s.push(b(e));break}case"ListAccounts":{s.push(b(e));break}case"Logout":{s.push(b(e));break}default:s.push(ms(e))}return s},P=(e)=>{return{...$.resolveAwsSdkSigV4Config(e)}};var L=(e)=>{return{...e,useDualstackEndpoint:e.useDualstackEndpoint??!1,useFipsEndpoint:e.useFipsEndpoint??!1,defaultSigningName:"awsssoportal"}},M={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}};var W={name:"@aws-sdk/client-sso",description:"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native",version:"3.758.0",scripts:{build:"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'","build:cjs":"node ../../scripts/compilation/inline client-sso","build:es":"tsc -p tsconfig.es.json","build:include:deps":"lerna run --scope $npm_package_name --include-dependencies build","build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"rimraf ./dist-* && rimraf *.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo sso"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"3.758.0","@aws-sdk/middleware-host-header":"3.734.0","@aws-sdk/middleware-logger":"3.734.0","@aws-sdk/middleware-recursion-detection":"3.734.0","@aws-sdk/middleware-user-agent":"3.758.0","@aws-sdk/region-config-resolver":"3.734.0","@aws-sdk/types":"3.734.0","@aws-sdk/util-endpoints":"3.743.0","@aws-sdk/util-user-agent-browser":"3.734.0","@aws-sdk/util-user-agent-node":"3.758.0","@smithy/config-resolver":"^4.0.1","@smithy/core":"^3.1.5","@smithy/fetch-http-handler":"^5.0.1","@smithy/hash-node":"^4.0.1","@smithy/invalid-dependency":"^4.0.1","@smithy/middleware-content-length":"^4.0.1","@smithy/middleware-endpoint":"^4.0.6","@smithy/middleware-retry":"^4.0.7","@smithy/middleware-serde":"^4.0.2","@smithy/middleware-stack":"^4.0.1","@smithy/node-config-provider":"^4.0.1","@smithy/node-http-handler":"^4.0.3","@smithy/protocol-http":"^5.0.1","@smithy/smithy-client":"^4.1.6","@smithy/types":"^4.1.0","@smithy/url-parser":"^4.0.1","@smithy/util-base64":"^4.0.0","@smithy/util-body-length-browser":"^4.0.0","@smithy/util-body-length-node":"^4.0.0","@smithy/util-defaults-mode-browser":"^4.0.7","@smithy/util-defaults-mode-node":"^4.0.7","@smithy/util-endpoints":"^3.0.1","@smithy/util-middleware":"^4.0.1","@smithy/util-retry":"^4.0.1","@smithy/util-utf8":"^4.0.0",tslib:"^2.6.2"},devDependencies:{"@tsconfig/node18":"18.2.4","@types/node":"^18.19.69",concurrently:"7.0.0","downlevel-dts":"0.10.1",rimraf:"3.0.2",typescript:"~5.2.2"},engines:{node:">=18.0.0"},typesVersions:{"<4.0":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["dist-*/**"],author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",browser:{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-sso"}};var De=i(x(),1);var oe=i(x(),1),ce=i(B(),1);var A={["required"]:!1,type:"String"},K={["required"]:!0,default:!1,type:"Boolean"},Q={["ref"]:"Endpoint"},j={["fn"]:"booleanEquals",["argv"]:[{["ref"]:"UseFIPS"},!0]},H={["fn"]:"booleanEquals",["argv"]:[{["ref"]:"UseDualStack"},!0]},n={},X={["fn"]:"getAttr",["argv"]:[{["ref"]:"PartitionResult"},"supportsFIPS"]},G={["ref"]:"PartitionResult"},Y={["fn"]:"booleanEquals",["argv"]:[!0,{["fn"]:"getAttr",["argv"]:[G,"supportsDualStack"]}]},Z=[j],C=[H],T=[{["ref"]:"Region"}],us={version:"1.0",parameters:{Region:A,UseDualStack:K,UseFIPS:K,Endpoint:A},rules:[{conditions:[{["fn"]:"isSet",["argv"]:[Q]}],rules:[{conditions:Z,error:"Invalid Configuration: FIPS and custom endpoint are not supported",type:"error"},{conditions:C,error:"Invalid Configuration: Dualstack and custom endpoint are not supported",type:"error"},{endpoint:{url:Q,properties:n,headers:n},type:"endpoint"}],type:"tree"},{conditions:[{["fn"]:"isSet",["argv"]:T}],rules:[{conditions:[{["fn"]:"aws.partition",["argv"]:T,assign:"PartitionResult"}],rules:[{conditions:[j,H],rules:[{conditions:[{["fn"]:"booleanEquals",["argv"]:[!0,X]},Y],rules:[{endpoint:{url:"https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:n,headers:n},type:"endpoint"}],type:"tree"},{error:"FIPS and DualStack are enabled, but this partition does not support one or both",type:"error"}],type:"tree"},{conditions:Z,rules:[{conditions:[{["fn"]:"booleanEquals",["argv"]:[X,!0]}],rules:[{conditions:[{["fn"]:"stringEquals",["argv"]:[{["fn"]:"getAttr",["argv"]:[G,"name"]},"aws-us-gov"]}],endpoint:{url:"https://portal.sso.{Region}.amazonaws.com",properties:n,headers:n},type:"endpoint"},{endpoint:{url:"https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}",properties:n,headers:n},type:"endpoint"}],type:"tree"},{error:"FIPS is enabled but this partition does not support FIPS",type:"error"}],type:"tree"},{conditions:C,rules:[{conditions:[Y],rules:[{endpoint:{url:"https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}",properties:n,headers:n},type:"endpoint"}],type:"tree"},{error:"DualStack is enabled but this partition does not support DualStack",type:"error"}],type:"tree"},{endpoint:{url:"https://portal.sso.{Region}.{PartitionResult#dnsSuffix}",properties:n,headers:n},type:"endpoint"}],type:"tree"}],type:"tree"},{error:"Invalid Configuration: Missing Region",type:"error"}]},V=us;var ws=new O({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),ee=(e,s={})=>{return ws.get(e,()=>f(V,{endpointParams:e,logger:s.logger}))};N.aws=g;var ie=(e)=>{return{apiVersion:"2019-06-10",base64Decoder:e?.base64Decoder??se,base64Encoder:e?.base64Encoder??ae,disableHostPrefix:e?.disableHostPrefix??!1,endpointProvider:e?.endpointProvider??ee,extensions:e?.extensions??[],httpAuthSchemeProvider:e?.httpAuthSchemeProvider??I,httpAuthSchemes:e?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:(s)=>s.getIdentityProvider("aws.auth#sigv4"),signer:new oe.AwsSdkSigV4Signer},{schemeId:"smithy.api#noAuth",identityProvider:(s)=>s.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new ce.NoAuthSigner}],logger:e?.logger??new de,serviceId:e?.serviceId??"SSO",urlParser:e?.urlParser??ne,utf8Decoder:e?.utf8Decoder??te,utf8Encoder:e?.utf8Encoder??re}};var Be=(e)=>{me(process.version);let s=ze(e),t=()=>s().then(ye),a=ie(e);De.emitWarningIfUnsupportedVersion(process.version);let r={profile:e?.profile};return{...a,...e,runtime:"node",defaultsMode:s,bodyLengthChecker:e?.bodyLengthChecker??Se,defaultUserAgentProvider:e?.defaultUserAgentProvider??Re({serviceId:a.serviceId,clientVersion:W.version}),maxAttempts:e?.maxAttempts??l(ve,e),region:e?.region??l(we,{...be,...r}),requestHandler:le.create(e?.requestHandler??t),retryMode:e?.retryMode??l({...ke,default:async()=>(await t()).retryMode||xe},e),sha256:e?.sha256??qe.bind(null,"sha256"),streamCollector:e?.streamCollector??pe,useDualstackEndpoint:e?.useDualstackEndpoint??l(he,r),useFipsEndpoint:e?.useFipsEndpoint??l(ue,r),userAgentAppId:e?.userAgentAppId??l(Ee,r)}};var Fe=(e)=>{let{httpAuthSchemes:s,httpAuthSchemeProvider:t,credentials:a}=e;return{setHttpAuthScheme(r){let d=s.findIndex((D)=>D.schemeId===r.schemeId);if(d===-1)s.push(r);else s.splice(d,1,r)},httpAuthSchemes(){return s},setHttpAuthSchemeProvider(r){t=r},httpAuthSchemeProvider(){return t},setCredentials(r){a=r},credentials(){return a}}},Ue=(e)=>{return{httpAuthSchemes:e.httpAuthSchemes(),httpAuthSchemeProvider:e.httpAuthSchemeProvider(),credentials:e.credentials()}};var v=(e)=>e,Me=(e,s)=>{let t={...v(Pe(e)),...v(Je(e)),...v(_e(e)),...v(Fe(e))};return s.forEach((a)=>a.configure(t)),{...e,...Le(t),...Ie(t),...$e(t),...Ue(t)}};class Ve extends Xe{config;constructor(...[e]){let s=Be(e||{}),t=L(s),a=Ye(t),r=He(a),d=Ce(r),D=We(d),ls=je(D),ps=P(ls),F=Me(ps,e?.extensions||[]);super(F);this.config=F,this.middlewareStack.use(Ze(this.config)),this.middlewareStack.use(Ge(this.config)),this.middlewareStack.use(Te(this.config)),this.middlewareStack.use(Ae(this.config)),this.middlewareStack.use(Ke(this.config)),this.middlewareStack.use(Qe(this.config)),this.middlewareStack.use(p.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:J,identityProviderConfigProvider:async(ys)=>new p.DefaultIdentityProviderConfig({"aws.auth#sigv4":ys.credentials})})),this.middlewareStack.use(p.getHttpSigningPlugin(this.config))}destroy(){super.destroy()}}class o extends Oe{constructor(e){super(e);Object.setPrototypeOf(this,o.prototype)}}class R extends o{name="InvalidRequestException";$fault="client";constructor(e){super({name:"InvalidRequestException",$fault:"client",...e});Object.setPrototypeOf(this,R.prototype)}}class E extends o{name="ResourceNotFoundException";$fault="client";constructor(e){super({name:"ResourceNotFoundException",$fault:"client",...e});Object.setPrototypeOf(this,E.prototype)}}class q extends o{name="TooManyRequestsException";$fault="client";constructor(e){super({name:"TooManyRequestsException",$fault:"client",...e});Object.setPrototypeOf(this,q.prototype)}}class S extends o{name="UnauthorizedException";$fault="client";constructor(e){super({name:"UnauthorizedException",$fault:"client",...e});Object.setPrototypeOf(this,S.prototype)}}var Ne=(e)=>({...e,...e.accessToken&&{accessToken:k}}),bs=(e)=>({...e,...e.secretAccessKey&&{secretAccessKey:k},...e.sessionToken&&{sessionToken:k}}),fe=(e)=>({...e,...e.roleCredentials&&{roleCredentials:bs(e.roleCredentials)}});var m=i(x(),1),rs=i(B(),1);var as=async(e,s)=>{let t=rs.requestBuilder(e,s),a=c({},ss,{[Us]:e[zs]});t.bp("/federation/credentials");let r=c({[Fs]:[,z(e[Bs],"roleName")],[Ds]:[,z(e[Ss],"accountId")]}),d;return t.m("GET").h(a).q(r).b(d),t.build()};var ds=async(e,s)=>{if(e.statusCode!==200&&e.statusCode>=300)return xs(e,s);let t=c({$metadata:w(e)}),a=z(ge(await m.parseJsonBody(e.body,s)),"body"),r=y(a,{roleCredentials:ts});return Object.assign(t,r),t};var xs=async(e,s)=>{let t={...e,body:await m.parseJsonErrorBody(e.body,s)},a=m.loadRestJsonErrorCode(e,t.body);switch(a){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":throw await ks(t,s);case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":throw await Rs(t,s);case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":throw await Es(t,s);case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":throw await qs(t,s);default:let r=t.body;return vs({output:e,parsedBody:r,errorCode:a})}},vs=es(o),ks=async(e,s)=>{let t=c({}),a=e.body,r=y(a,{message:h});Object.assign(t,r);let d=new R({$metadata:w(e),...t});return u(d,e.body)},Rs=async(e,s)=>{let t=c({}),a=e.body,r=y(a,{message:h});Object.assign(t,r);let d=new E({$metadata:w(e),...t});return u(d,e.body)},Es=async(e,s)=>{let t=c({}),a=e.body,r=y(a,{message:h});Object.assign(t,r);let d=new q({$metadata:w(e),...t});return u(d,e.body)},qs=async(e,s)=>{let t=c({}),a=e.body,r=y(a,{message:h});Object.assign(t,r);let d=new S({$metadata:w(e),...t});return u(d,e.body)},w=(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"]});var Ss="accountId",zs="accessToken",Ds="account_id";var Bs="roleName",Fs="role_name",Us="x-amz-sso_bearer_token";class is extends ns.classBuilder().ep(M).m(function(e,s,t,a){return[os(t,this.serialize,this.deserialize),cs(t,e.getEndpointParameterInstructions())]}).s("SWBPortalService","GetRoleCredentials",{}).n("SSOClient","GetRoleCredentialsCommand").f(Ne,fe).ser(as).de(ds).build(){}export{Ve as SSOClient,is as GetRoleCredentialsCommand};
3
-
4
- //# debugId=2F4EA5A854EF428A64756E2164756E21
@@ -1,4 +0,0 @@
1
- function m(e){return typeof e==="function"&&e.prototype!==void 0}function w(e){return m(e)}class a{method;handler;methodName;__internal_brand="RouteHandler";middlewares=[];constructor(e,t,n){this.method=e;this.handler=t;this.methodName=n;this.handler=t,this.methodName=n,this.method=e}__internal_use(){return{run:this.run.bind(this),middlewares:this.middlewares}}run(e){if(w(this.handler)){let t=new this.handler;return t[this.methodName].bind(t)()}else return this.handler()}middleware(e){return this.middlewares=e,this}}class C{constructor(...e){return new a(...e)}}class f{static __brand="ApiRouter";routes={};middlewares=[];middleware(e){}get(e,t){return new a("GET",e,t)}post(e,t){return new a("POST",e,t)}put(e,t){return new a("PUT",e,t)}patch(e,t){return new a("PATCH",e,t)}delete(e,t){return new a("DELETE",e,t)}resource(e){return(t)=>{return{"/":{list:new a("GET",e,"list"),store:new a("POST",e,"store")},[`/:${String(t)}`]:{show:new a("GET",e,"show"),update:new a("PUT",e,"update"),delete:new a("DELETE",e,"delete")}}}}file(e,t){return new C("GET",e,t)}}var q="GEMI_REQUEST_BREAKER_ERROR";class y extends Error{kind="GEMI_REQUEST_BREAKER_ERROR";payload={api:{},view:{}}}class R extends y{errors={};constructor(e){super("Validation error");this.name="ValidationError",this.errors=e,this.payload={api:{status:400,data:{error:{kind:"validation_error",messages:e}},headers:{"Content-Type":"application/json"}},view:{status:400}}}}import{AsyncLocalStorage as g}from"async_hooks";class x{name;value;options;constructor(e,t,n={}){this.name=e;this.value=t;this.options=n}toString(){return[`${this.name}=${this.value}`,this.options.maxAge?`Max-Age=${this.options.maxAge}`:"",this.options.httpOnly?"HttpOnly":"",this.options.secure?"Secure":"",this.options.sameSite?`SameSite=${this.options.sameSite}`:"SameSite=Strict",this.options.path?`Path=${this.options.path}`:"Path=/",this.options.domain?`Domain=${this.options.domain}`:"",this.options.expires?`Expires=${this.options.expires.toUTCString()}`:"",this.options.partitioned?"Partitioned":""].filter((e)=>e!=="").join("; ")}}var P=new g;class K{req;cookies=new Set;headers=new Headers;prefetchedResources=new Map;prefetchPromiseQueue=new Set;user=null;csrfHmac=null;constructor(e){this.req=e}setCSRFHmac(e){this.csrfHmac=e}setCookie(e,t,n={}){this.cookies.add(new x(e,t,n))}setHeaders(e,t){this.headers.set(e,t)}setUser(e){this.user=e}setRequest(e){this.req=e}destroy(){delete this.cookies,delete this.headers,delete this.prefetchedResources,delete this.prefetchPromiseQueue,delete this.user}}class c{static getStore(){return P.getStore()}static setRequest(e){P.getStore().req=e}static run(e,t){return P.run(new K(e),t)}}class u{data;constructor(e){this.data=e}get(e){return this.data[e]}has(e){return this.data[e]!==void 0}toJSON(){return this.data}}function E(e){let[t,n]=e.match(/\d+|\D+/g)??[];if(!t||!n)return 0;let r=parseInt(t);switch(n){case"B":return r;case"KB":return r*1024;case"MB":return r*1024*1024;case"GB":return r*1024*1024*1024;case"TB":return r*1024*1024*1024*1024;default:return 0}}function O(e){switch(e){case"image":return"image";case"png":return"image/png";case"jpg":return"image/jpeg";case"jpeg":return"image/jpeg";case"ttf":return"font/ttf";case"excel":return"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";case"csv":return"text/csv";case"word":return"application/vnd.openxmlformats-officedocument.wordprocessingml.document";case"pdf":return"application/pdf";case"json":return"application/json";default:return e}}function b(e){let[t,n]=e.split(":");switch(t){case"required":return(r)=>{if(r instanceof Blob)return r.size>0;return r!==null&&r!==void 0&&r?.length>0};case"password":return(r)=>{return/^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/.test(r)};case"number":return(r)=>{if(typeof r!=="number")return!1;return!isNaN(r)};case"min":return(r)=>{return r?.length>=parseInt(n)};case"max":return(r)=>{return r?.length<=parseInt(n)};case"email":return(r)=>{return/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(r)};case"file":return(r)=>{return r instanceof Blob};case"fileType":return(r)=>{if(r instanceof Blob){let s=O(n);return r.type.startsWith(s)}};case"fileSize":return(r)=>{if(r instanceof Blob){let s=E(n);return r.size<=s}};default:return()=>!0}}class A{kind;rawRequest;headers;cookies;search;schema={};routePath;params;constructor(e,t,n,r){if(!e){let i=c.getStore().req;this.params=i.params,this.rawRequest=i.rawRequest,this.kind=i.kind,this.routePath=i.routePath}else this.params=t,this.rawRequest=e,this.routePath=r,this.kind=n??"api";this.headers=this.rawRequest.headers;let s=this.rawRequest.headers.get("Cookie"),d=new Map;if(s){let i=s.split(";");for(let o of i){let[l,p]=o.split("=");d.set(l.trim(),p.trim())}}if(this.rawRequest.method==="GET"){let i=new URL(this.rawRequest.url),o=new Map;for(let[p,h]of i.searchParams)if(o.has(p)){let T=o.get(p);if(Array.isArray(T))T.push(h),o.set(p,T);else o.set(p,[T,h])}else o.set(p,h);let l=Object.fromEntries(o.entries());this.search=new u(l)}this.cookies=d}ctx(){return c.getStore()}refine(e){return{}}async parseBody(){let e=new u({});if(this.rawRequest.headers.get("Content-Type")==="application/json"){let t=await this.rawRequest.json();e=new u(t)}if(this.rawRequest.headers.get("Content-Type")==="application/x-www-form-urlencoded"){let t=await this.rawRequest.formData();e=new u(t)}if(this.rawRequest.headers.get("Content-Type")?.startsWith("multipart/form-data")){let t=await this.rawRequest.formData(),n=new Map;for(let[r,s]of t.entries())if(n.has(r)){let d=n.get(r);if(Array.isArray(d))d.push(s),n.set(r,d);else n.set(r,[d,s])}else n.set(r,s);e=new u(Object.fromEntries(n.entries()))}return e}validateInput(e){let t={};for(let[n,r]of Object.entries(this.schema))for(let[s,d]of Object.entries(r)){let i=b(s),o=d,l=!1;if(typeof d==="function")o=d(e.get(n)),l=typeof o==="undefined";else l=i(e.get(n));if(l)continue;if(!t[n])t[n]=[];if(s==="required"){t[n]=[String(o)];break}else t[n].push(String(o))}for(let[n,r]of Object.entries(this.refine(e.toJSON())??{})){if(!t[n])t[n]=[];t[n]=[...t[n]??[],r]}if(Object.keys(t).length>0)throw new R(t);else return e}async input(){return this.validateInput(await this.parseBody())}async safeInput(){let e=await this.parseBody();try{return this.validateInput(e),{isValid:!0,errors:{},input:e}}catch(t){if(!(t instanceof R))throw t;return{isValid:!1,errors:t.errors,input:e}}}}import{AsyncLocalStorage as M}from"async_hooks";var H=new M;class ${static _name;service;static use(){let e=H.getStore();if(!e)return;if(!e?.[this._name])console.log("Container is not registered",this._name),console.log("Available containers",Object.keys(e));return e[this._name]}}
2
- export{m as xc,f as yc,q as zc,y as Ac,R as Bc,c as Cc,A as Dc,H as Ec,$ as Fc};
3
-
4
- //# debugId=5B1370D0187D1A8264756E2164756E21
@@ -1,18 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../internal/isConstructor.ts", "../http/ApiRouter.ts", "../http/Error.ts", "../http/Router.ts", "../http/requestContext.ts", "../http/Cookie.ts", "../http/HttpRequest.ts", "../kernel/context.ts", "../services/ServiceContainer.ts"],
4
- "sourcesContent": [
5
- "export function isConstructor(value: any) {\n return typeof value === \"function\" && value.prototype !== undefined;\n}\n",
6
- "import { isConstructor } from \"../internal/isConstructor\";\nimport type { KeyAndValue, KeyAndValueToObject } from \"../internal/type-utils\";\nimport {\n Controller,\n ResourceController,\n type ControllerMethods,\n} from \"./Controller\";\nimport { HttpRequest } from \"./HttpRequest\";\nimport type { MiddlewareReturnType } from \"./Router\";\n\ntype HttpMethod = \"GET\" | \"POST\" | \"PUT\" | \"PATCH\" | \"DELETE\";\n\nexport type ApiRouterHandler<Input, Output, Params> = (\n req: HttpRequest<Input, Params>,\n) => Output;\n\ntype CallbackHandler<Input, Output, Params> = (\n req: HttpRequest<Input, Params>,\n) => Promise<Output> | Output;\n\ntype ParseRouteHandler<\n T extends new () => Controller,\n K extends ControllerMethods<T>,\n M extends HttpMethod,\n> = InstanceType<T>[K] extends (\n req: HttpRequest<infer Input, infer Params>,\n) => infer Output\n ? RouteHandler<M, Input, Output, Params>\n : never;\n\nfunction isController(\n candidate: CallbackHandler<any, any, any> | (new () => Controller),\n): candidate is new () => Controller {\n return isConstructor(candidate);\n}\n\nexport class RouteHandler<M extends HttpMethod, Input, Output, Params> {\n __internal_brand = \"RouteHandler\";\n middlewares: string[] = [];\n\n constructor(\n public method: M,\n private handler:\n | CallbackHandler<Input, Output, Params>\n | (new () => Controller),\n private methodName?: any,\n ) {\n this.handler = handler;\n this.methodName = methodName;\n this.method = method;\n }\n\n __internal_use() {\n return {\n run: this.run.bind(this),\n middlewares: this.middlewares,\n };\n }\n\n run(_req: HttpRequest<Input, Params>) {\n if (isController(this.handler)) {\n const controller = new this.handler();\n const handler = controller[this.methodName].bind(controller);\n return handler();\n } else {\n // @ts-ignore\n return this.handler();\n }\n }\n\n middleware(middlewareList: string[]) {\n this.middlewares = middlewareList;\n return this;\n }\n}\n\nexport class FileHandler {\n constructor(...args: ConstructorParameters<typeof RouteHandler>) {\n return new RouteHandler(...args) as any;\n }\n}\n\nexport type RouteHandlers =\n | {\n store: RouteHandler<\"POST\", any, any, any>;\n list: RouteHandler<\"GET\", any, any, any>;\n }\n | {\n update: RouteHandler<\"PUT\", any, any, any>;\n show: RouteHandler<\"GET\", any, any, any>;\n delete: RouteHandler<\"DELETE\", any, any, any>;\n };\n\ntype IdKey<T> = `/:${T & string}`;\n\nexport type ApiRoutes = Record<\n string,\n | RouteHandler<any, any, any, any>\n | FileHandler\n | RouteHandlers\n | typeof ApiRouter\n | ((resourceId: string) => ResourceRoutes<any, string>)\n>;\n\nexport type ResourceRoutes<\n T extends new () => ResourceController,\n U extends PropertyKey,\n> = Record<\n \"/\",\n {\n list: ParseRouteHandler<T, TestControllerMethod<T, \"list\">, \"GET\">;\n store: ParseRouteHandler<T, TestControllerMethod<T, \"store\">, \"POST\">;\n }\n> &\n Record<\n IdKey<U>,\n {\n show: ParseRouteHandler<T, TestControllerMethod<T, \"show\">, \"GET\">;\n update: ParseRouteHandler<T, TestControllerMethod<T, \"update\">, \"PUT\">;\n delete: ParseRouteHandler<T, TestControllerMethod<T, \"delete\">, \"DELETE\">;\n }\n >;\n\nexport class ApiRouter {\n static __brand = \"ApiRouter\";\n public routes: ApiRoutes = {};\n public middlewares: string[] = [];\n public middleware(_req: HttpRequest<any, any>): MiddlewareReturnType {}\n\n public get<Input, Output, Params>(\n handler: CallbackHandler<Input, Output, Params>,\n ): RouteHandler<\"GET\", Input, Output, Params>;\n public get<T extends new () => Controller, K extends ControllerMethods<T>>(\n handler: T,\n methodName: K,\n ): ParseRouteHandler<T, K, \"GET\">;\n public get<\n T extends CallbackHandler<any, any, any> | (new () => Controller),\n K extends ControllerMethods<any>,\n >(handler: T, methodName?: K) {\n return new RouteHandler(\"GET\", handler, methodName);\n }\n\n public post<Input, Output, Params>(\n handler: CallbackHandler<Input, Output, Params>,\n ): RouteHandler<\"POST\", Input, Output, Params>;\n public post<T extends new () => Controller, K extends ControllerMethods<T>>(\n handler: T,\n methodName: K,\n ): ParseRouteHandler<T, K, \"POST\">;\n public post<\n T extends CallbackHandler<any, any, any> | (new () => Controller),\n K extends ControllerMethods<any>,\n >(handler: T, methodName?: K) {\n return new RouteHandler(\"POST\", handler, methodName);\n }\n\n public put<Input, Output, Params>(\n handler: CallbackHandler<Input, Output, Params>,\n ): RouteHandler<\"PUT\", Input, Output, Params>;\n public put<T extends new () => Controller, K extends ControllerMethods<T>>(\n handler: T,\n methodName: K,\n ): ParseRouteHandler<T, K, \"PUT\">;\n public put<\n T extends CallbackHandler<any, any, any> | (new () => Controller),\n K extends ControllerMethods<any>,\n >(handler: T, methodName?: K) {\n return new RouteHandler(\"PUT\", handler, methodName);\n }\n\n public patch<Input, Output, Params>(\n handler: CallbackHandler<Input, Output, Params>,\n ): RouteHandler<\"PATCH\", Input, Output, Params>;\n public patch<T extends new () => Controller, K extends ControllerMethods<T>>(\n handler: T,\n methodName: K,\n ): ParseRouteHandler<T, K, \"PATCH\">;\n public patch<\n T extends CallbackHandler<any, any, any> | (new () => Controller),\n K extends ControllerMethods<any>,\n >(handler: T, methodName?: K) {\n return new RouteHandler(\"PATCH\", handler, methodName);\n }\n\n public delete<Input, Output, Params>(\n handler: CallbackHandler<Input, Output, Params>,\n ): RouteHandler<\"DELETE\", Input, Output, Params>;\n public delete<T extends new () => Controller, K extends ControllerMethods<T>>(\n handler: T,\n methodName: K,\n ): ParseRouteHandler<T, K, \"DELETE\">;\n public delete<\n T extends CallbackHandler<any, any, any> | (new () => Controller),\n K extends ControllerMethods<any>,\n >(handler: T, methodName?: K) {\n return new RouteHandler(\"DELETE\", handler, methodName);\n }\n\n public resource<T extends new () => ResourceController>(Controller: T) {\n return <U extends PropertyKey>(resourceId: U) => {\n return {\n \"/\": {\n list: new RouteHandler(\"GET\", Controller, \"list\"),\n store: new RouteHandler(\"POST\", Controller, \"store\"),\n },\n [`/:${String(resourceId)}`]: {\n show: new RouteHandler(\"GET\", Controller, \"show\"),\n update: new RouteHandler(\"PUT\", Controller, \"update\"),\n delete: new RouteHandler(\"DELETE\", Controller, \"delete\"),\n },\n } as ResourceRoutes<T, U>;\n };\n }\n\n public file<Input, Output, Params>(\n handler: CallbackHandler<Input, Output, Params>,\n ): FileHandler;\n public file<T extends new () => Controller, K extends ControllerMethods<T>>(\n handler: T,\n methodName: K,\n ): FileHandler;\n public file<\n T extends CallbackHandler<any, any, any> | (new () => Controller),\n K extends ControllerMethods<any>,\n >(handler: T, methodName?: K) {\n return new FileHandler(\"GET\", handler, methodName);\n }\n}\n\ntype TestControllerMethod<T extends new () => Controller, K extends string> =\n K extends ControllerMethods<T> ? K : never;\n\ntype RouteHandlerParser<T, Prefix extends string = \"\"> =\n T extends RouteHandler<infer Method, infer Input, infer Output, infer Params>\n ? KeyAndValue<\n `${Method & string}:${Prefix & string}`,\n ApiRouterHandler<Input, Output, Params>\n >\n : never;\n\ntype RouteHandlersParser<\n T,\n Prefix extends string = \"\",\n> = T extends RouteHandlers\n ? {\n [K in keyof T]: T[K] extends RouteHandler<\n infer Method,\n infer Input,\n infer Output,\n infer Params\n >\n ? KeyAndValue<\n `${Method & string}:${Prefix & string}`,\n ApiRouterHandler<Input, Output, Params>\n >\n : never;\n }[keyof T]\n : never;\n\ntype RouterInstanceParser<\n T extends new () => ApiRouter,\n Prefix extends string,\n> = T extends new () => ApiRouter\n ? RouteParser<InstanceType<T>[\"routes\"], `${Prefix & string}`>\n : never;\n\ntype ParsePrefixAndKey<\n P extends PropertyKey,\n K extends PropertyKey,\n U = `${P & string}${K & string}`,\n> = U extends \"//\"\n ? \"/\"\n : U extends `${infer T1}//${infer T2}`\n ? `${T1}/${T2}`\n : U extends `${infer T1}/${infer T2}/`\n ? `${T1}/${T2}`\n : U;\n\ntype LastUrlSegment<T extends string> =\n T extends `${infer _}/${infer LastSegment}` ? LastUrlSegment<LastSegment> : T;\n\ntype ToCamelCase<T extends string> = T extends `${infer F}-${infer L}`\n ? `${F}${Capitalize<ToCamelCase<L>>}`\n : T;\n\ntype ResourceRoutesParser<\n T extends ResourceRoutes<new () => ResourceController, PropertyKey>,\n U extends PropertyKey,\n K extends keyof T = keyof T,\n> = T[K] extends RouteHandlers\n ? K extends \"/\"\n ? RouteHandlersParser<T[K], `${U & string}`>\n : RouteHandlersParser<\n T[K],\n `${U & string}/:${ToCamelCase<LastUrlSegment<U & string>>}Id`\n >\n : KeyAndValue<\"YY\", any>;\n\ntype RouteParser<\n T extends ApiRoutes,\n Prefix extends PropertyKey = \"\",\n K extends keyof T = keyof T,\n> = K extends any\n ? T[K] extends (\n res: string,\n ) => ResourceRoutes<new () => ResourceController, PropertyKey>\n ? ResourceRoutesParser<ReturnType<T[K]>, ParsePrefixAndKey<Prefix, K>>\n : T[K] extends RouteHandler<any, any, any, any>\n ? RouteHandlerParser<T[K], ParsePrefixAndKey<Prefix, K>>\n : T[K] extends new () => ApiRouter\n ? RouterInstanceParser<T[K], ParsePrefixAndKey<Prefix, K>>\n : T[K] extends RouteHandlers\n ? RouteHandlersParser<\n T[K],\n `${Prefix & string}${K extends \"/\" ? \"\" : K & string}`\n >\n : never\n : never;\n\nexport type CreateRPC<\n T extends ApiRouter,\n Prefix extends PropertyKey = \"\",\n> = KeyAndValueToObject<RouteParser<T[\"routes\"], Prefix>>;\n",
7
- "export const GEMI_REQUEST_BREAKER_ERROR = \"GEMI_REQUEST_BREAKER_ERROR\";\n\nexport class RequestBreakerError extends Error {\n public kind = GEMI_REQUEST_BREAKER_ERROR;\n public payload: {\n api: Record<string, any>;\n view: Record<string, any>;\n } = { api: {}, view: {} };\n}\n",
8
- "import { RequestBreakerError } from \"./Error\";\nimport type { HttpRequest } from \"./HttpRequest\";\n\ntype MiddlewareResult = Partial<{\n headers: Record<string, string>;\n cookies: Record<string, string>;\n}>;\n\nexport type MiddlewareReturnType =\n | void\n | Promise<MiddlewareResult>\n | MiddlewareResult;\n\nexport type RouterMiddleware = (\n req: HttpRequest,\n ctx: any,\n) => MiddlewareReturnType;\n\nexport class ValidationError extends RequestBreakerError {\n errors: Record<string, string[]> = {};\n constructor(errors: Record<string, string[]>) {\n super(\"Validation error\");\n this.name = \"ValidationError\";\n this.errors = errors;\n this.payload = {\n api: {\n status: 400,\n data: {\n error: {\n kind: \"validation_error\",\n messages: errors,\n },\n },\n headers: {\n \"Content-Type\": \"application/json\",\n },\n },\n view: {\n status: 400,\n },\n };\n }\n}\n",
9
- "import { AsyncLocalStorage } from \"async_hooks\";\nimport { Cookie, type CreateCookieOptions } from \"./Cookie\";\nimport { HttpRequest } from \"./HttpRequest\";\n\nconst requestContext = new AsyncLocalStorage<Store>();\n\nclass Store {\n cookies: Set<Cookie> = new Set();\n headers: Headers = new Headers();\n prefetchedResources = new Map<string, Record<string, any>>();\n prefetchPromiseQueue = new Set<() => Promise<any>>();\n user: any = null;\n csrfHmac: string | null = null;\n\n constructor(public req: HttpRequest) {}\n\n setCSRFHmac(hmac: string) {\n this.csrfHmac = hmac;\n }\n\n setCookie(name: string, value: string, options: CreateCookieOptions = {}) {\n this.cookies.add(new Cookie(name, value, options));\n }\n\n setHeaders(name: string, value: string) {\n this.headers.set(name, value);\n }\n\n setUser(user: any) {\n this.user = user;\n }\n\n setRequest(req: HttpRequest<any, any>) {\n this.req = req;\n }\n\n destroy() {\n delete this.cookies;\n delete this.headers;\n delete this.prefetchedResources;\n delete this.prefetchPromiseQueue;\n delete this.user;\n }\n}\n\nexport class RequestContext {\n static getStore() {\n return requestContext.getStore()!;\n }\n\n static setRequest(req: HttpRequest<any, any>) {\n requestContext.getStore().req = req;\n }\n\n static run<T>(httpRequest: HttpRequest, fn: () => T): T {\n return requestContext.run(new Store(httpRequest), fn);\n }\n}\n",
10
- "export interface CreateCookieOptions {\n maxAge?: number;\n expires?: Date;\n httpOnly?: boolean;\n secure?: boolean;\n sameSite?: \"Strict\" | \"Lax\";\n path?: string;\n domain?: string;\n partitioned?: boolean;\n}\n\nexport class Cookie {\n constructor(\n private name: string,\n private value: string,\n private options: CreateCookieOptions = {},\n ) {}\n\n toString() {\n return [\n `${this.name}=${this.value}`,\n this.options.maxAge ? `Max-Age=${this.options.maxAge}` : \"\",\n this.options.httpOnly ? \"HttpOnly\" : \"\",\n this.options.secure ? \"Secure\" : \"\",\n this.options.sameSite\n ? `SameSite=${this.options.sameSite}`\n : \"SameSite=Strict\",\n this.options.path ? `Path=${this.options.path}` : \"Path=/\",\n this.options.domain ? `Domain=${this.options.domain}` : \"\",\n this.options.expires\n ? `Expires=${this.options.expires.toUTCString()}`\n : \"\",\n this.options.partitioned ? \"Partitioned\" : \"\",\n ]\n .filter((i) => i !== \"\")\n .join(\"; \");\n }\n}\n",
11
- "import { RequestBreakerError } from \"./Error\";\nimport { AuthenticationError } from \"./errors\";\nimport { RequestContext } from \"./requestContext\";\nimport { ValidationError } from \"./Router\";\n\nclass Input<T> {\n constructor(private data: T) {}\n\n public get<K extends keyof T>(key: K): T[K] {\n return this.data[key];\n }\n\n public has(key: keyof T) {\n return this.data[key] !== undefined;\n }\n\n public toJSON(): T {\n return this.data;\n }\n}\n\n// Formats B KB MB GB TB\n// e.g parseFileSizeString(\"1MB\") => 1024 * 1024\nfunction parseFileSizeString(size: string) {\n const [number, unit] = size.match(/\\d+|\\D+/g) ?? [];\n if (!number || !unit) {\n return 0;\n }\n const fileSize = parseInt(number);\n switch (unit) {\n case \"B\":\n return fileSize;\n case \"KB\":\n return fileSize * 1024;\n case \"MB\":\n return fileSize * 1024 * 1024;\n case \"GB\":\n return fileSize * 1024 * 1024 * 1024;\n case \"TB\":\n return fileSize * 1024 * 1024 * 1024 * 1024;\n default:\n return 0;\n }\n}\n\n// Formats png, jpg, ttf, excel, csv, word, pdf, json\n// Eg. png => image/png\nfunction parseFileTypeString(type: string) {\n switch (type) {\n case \"image\":\n return \"image\";\n case \"png\":\n return \"image/png\";\n case \"jpg\":\n return \"image/jpeg\";\n case \"jpeg\":\n return \"image/jpeg\";\n case \"ttf\":\n return \"font/ttf\";\n case \"excel\":\n return \"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\";\n case \"csv\":\n return \"text/csv\";\n case \"word\":\n return \"application/vnd.openxmlformats-officedocument.wordprocessingml.document\";\n case \"pdf\":\n return \"application/pdf\";\n case \"json\":\n return \"application/json\";\n default:\n return type;\n }\n}\n\nfunction validate(ruleName: string) {\n const [rule, param] = ruleName.split(\":\");\n switch (rule) {\n case \"required\":\n return (value: any) => {\n if (value instanceof Blob) {\n return value.size > 0;\n }\n return value !== null && value !== undefined && value?.length > 0;\n };\n case \"password\":\n return (value: any) => {\n // min 8 characters\n // at least one uppercase letter,\n // at least one lowercase letter and one number\n // at least one special character\n const passwordRegex =\n /^(?=.*\\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[^a-zA-Z0-9]).{8,}$/;\n return passwordRegex.test(value);\n };\n\n case \"number\":\n return (value: any) => {\n if (typeof value !== \"number\") return false;\n\n return !isNaN(value);\n };\n case \"min\":\n return (value: any) => {\n return value?.length >= parseInt(param);\n };\n case \"max\":\n return (value: any) => {\n return value?.length <= parseInt(param);\n };\n case \"email\":\n return (value: any) => {\n const emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/;\n return emailRegex.test(value);\n };\n case \"file\":\n return (value: any) => {\n return value instanceof Blob;\n };\n case \"fileType\":\n return (value: Blob) => {\n if (value instanceof Blob) {\n const parsedType = parseFileTypeString(param);\n return value.type.startsWith(parsedType);\n }\n };\n\n case \"fileSize\":\n return (value: Blob) => {\n if (value instanceof Blob) {\n const absoluteSize = parseFileSizeString(param);\n return value.size <= absoluteSize;\n }\n };\n default:\n return () => true;\n }\n}\n\ntype StringType = \"string\";\ntype NumberType = \"number\";\ntype BooleanType = \"boolean\";\ntype MinLengthType = `min:${number}`;\ntype MaxLengthType = `max:${number}`;\ntype RequiredType = \"required\";\ntype FileType = \"file\";\ntype FileTypeType = \"fileType:${string}\";\ntype FileSizeType = \"fileSize:${string}\";\ntype SchemaKey =\n | StringType\n | NumberType\n | BooleanType\n | MinLengthType\n | MaxLengthType\n | RequiredType\n | FileType\n | FileTypeType\n | FileSizeType;\n\nexport type Schema<T extends Body> = Record<\n keyof T,\n Partial<Record<SchemaKey, string>>\n>;\n\nexport type Body = Record<string, any>;\nexport type HttpRequestKind = \"view\" | \"api\";\n\nexport class HttpRequest<\n T extends Body = Record<string, never>,\n Params = Record<string, never>,\n> {\n public kind: HttpRequestKind;\n public rawRequest: Request;\n public headers: Headers;\n public cookies: Map<string, string>;\n public search: Input<T>;\n public schema: any = {};\n public routePath: string;\n public params: Params;\n\n constructor(\n req?: Request,\n params?: any,\n kind?: HttpRequestKind,\n routePath?: string,\n ) {\n if (!req) {\n const _req = RequestContext.getStore().req;\n this.params = _req.params as any;\n this.rawRequest = _req.rawRequest;\n this.kind = _req.kind;\n this.routePath = _req.routePath;\n } else {\n this.params = params;\n this.rawRequest = req;\n this.routePath = routePath;\n this.kind = kind ?? \"api\";\n }\n\n this.headers = this.rawRequest.headers;\n\n const cookie = this.rawRequest.headers.get(\"Cookie\");\n const cookies = new Map();\n if (cookie) {\n const cookieArray = cookie.split(\";\");\n for (const c of cookieArray) {\n const [key, value] = c.split(\"=\");\n cookies.set(key.trim(), value.trim());\n }\n }\n if (this.rawRequest.method === \"GET\") {\n const url = new URL(this.rawRequest.url);\n const map = new Map<string, string | string[]>();\n for (const [key, value] of url.searchParams) {\n if (map.has(key)) {\n const currentValue = map.get(key);\n if (Array.isArray(currentValue)) {\n currentValue.push(value);\n map.set(key, currentValue);\n } else {\n map.set(key, [currentValue, value]);\n }\n } else {\n map.set(key, value);\n }\n }\n const params = Object.fromEntries(map.entries());\n this.search = new Input<T>(params as T);\n }\n this.cookies = cookies;\n }\n\n public ctx() {\n return RequestContext.getStore();\n }\n\n public refine(_input: any): any {\n return {};\n }\n\n private async parseBody() {\n let inputMap = new Input<T>({} as T);\n if (this.rawRequest.headers.get(\"Content-Type\") === \"application/json\") {\n const body = await this.rawRequest.json();\n inputMap = new Input<T>(body as T);\n }\n if (\n this.rawRequest.headers.get(\"Content-Type\") ===\n \"application/x-www-form-urlencoded\"\n ) {\n const body = (await this.rawRequest.formData()) as any; // TODO: fix type\n inputMap = new Input<T>(body as T);\n }\n\n if (\n this.rawRequest.headers\n .get(\"Content-Type\")\n ?.startsWith(\"multipart/form-data\")\n ) {\n const body = (await this.rawRequest.formData()) as any; // TODO: fix type\n const _inputMap = new Map<string, any>();\n for (const [key, value] of body.entries()) {\n if (_inputMap.has(key)) {\n const currentValue = _inputMap.get(key);\n if (Array.isArray(currentValue)) {\n currentValue.push(value);\n _inputMap.set(key, currentValue);\n } else {\n _inputMap.set(key, [currentValue, value] as any);\n }\n } else {\n _inputMap.set(key, value as T[keyof T]);\n }\n }\n inputMap = new Input<T>(Object.fromEntries(_inputMap.entries()) as T);\n }\n return inputMap;\n }\n\n private validateInput(input: Input<T>) {\n const errors: Record<string, string[]> = {};\n for (const [key, rules] of Object.entries(this.schema)) {\n for (const [rule, message] of Object.entries(rules)) {\n const validator = validate(rule);\n\n let _message = message;\n let _isValid = false;\n if (typeof message === \"function\") {\n _message = message(input.get(key));\n _isValid = typeof _message === \"undefined\";\n } else {\n _isValid = validator(input.get(key));\n }\n\n if (_isValid) {\n continue;\n }\n\n if (!errors[key]) {\n errors[key] = [];\n }\n if (rule === \"required\") {\n errors[key] = [String(_message)];\n break;\n } else {\n errors[key].push(String(_message));\n }\n }\n }\n\n for (const [key, value] of Object.entries(\n this.refine(input.toJSON()) ?? {},\n )) {\n if (!errors[key]) {\n errors[key] = [];\n }\n errors[key] = [...(errors[key] ?? []), value as string];\n }\n\n if (Object.keys(errors).length > 0) {\n throw new ValidationError(errors);\n } else {\n return input;\n }\n }\n\n public async input(): Promise<Input<T>> {\n return this.validateInput(await this.parseBody());\n }\n\n public async safeInput(): Promise<{\n isValid: boolean;\n errors: Record<string, string[]>;\n input: Input<T>;\n }> {\n const input = await this.parseBody();\n try {\n this.validateInput(input);\n return {\n isValid: true,\n errors: {},\n input,\n };\n } catch (err) {\n if (!(err instanceof ValidationError)) {\n throw err;\n }\n return {\n isValid: false,\n errors: err.errors,\n input,\n };\n }\n }\n}\n",
12
- "import { AsyncLocalStorage } from \"async_hooks\";\n\nexport const kernelContext = new AsyncLocalStorage();\n",
13
- "import { kernelContext } from \"../kernel/context\";\nimport { ServiceProvider } from \"./ServiceProvider\";\n\nexport class ServiceContainer {\n static _name: string;\n service: ServiceProvider;\n\n static use<T extends ServiceContainer>(\n this: new (service: ServiceProvider) => T,\n ): T {\n const store = kernelContext.getStore();\n if (!store) {\n // console.error(\"Kernel is not available\");\n return;\n }\n // @ts-ignore\n if (!store?.[this._name]) {\n // @ts-ignore\n console.log(\"Container is not registered\", this._name);\n console.log(\"Available containers\", Object.keys(store));\n }\n\n // @ts-ignore\n return store[this._name];\n }\n}\n"
14
- ],
15
- "mappings": "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",
16
- "debugId": "5B1370D0187D1A8264756E2164756E21",
17
- "names": []
18
- }