cdk-serverless 2.14.7 → 2.16.0
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.
- package/docs/constructs/assets/hierarchy.js +1 -1
- package/docs/constructs/classes/BaseApi.html +1 -1
- package/docs/constructs/classes/CognitoAuthentication.html +1 -1
- package/docs/constructs/classes/GraphQlApi.html +1 -1
- package/docs/constructs/classes/LambdaFunction.html +9 -4
- package/docs/constructs/classes/RestApi.html +1 -1
- package/docs/constructs/classes/SingleTableDatastore.html +1 -1
- package/docs/constructs/classes/Workflow.html +1 -1
- package/docs/constructs/hierarchy.html +1 -1
- package/docs/constructs/interfaces/BaseApiProps.html +1 -1
- package/docs/constructs/interfaces/CognitoAuthenticationProps.html +10 -2
- package/docs/constructs/interfaces/GraphQlApiProps.html +1 -1
- package/docs/constructs/interfaces/RestApiProps.html +1 -1
- package/lib/constructs/authentication.d.ts +13 -0
- package/lib/constructs/authentication.js +36 -6
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
window.hierarchyData = "
|
|
1
|
+
window.hierarchyData = "eJyVkrFuwyAURf/lzaSRA8aYLe1QdWu7RhmQ/VKjELCATJH/vSJNW9pEtrMwwH2cewQn8M7FAHIjKOEVKeotAY87g03UzgaQJyjqtFp1QJDw8uQ+rI5ufYwd2qgblXJAYK9tC3JVcgJHb0CCthH9TjUYlreHHrp4MECgMSoEkBBDu0i3LH4m02GnTevRgtwwvh0IMJ61GS9TrMR3mTMDw/K+Il8bAwFeZdBHFXDd61fv+jAhnkfv1aW0JKw6Owt6jR+zvEQmvP7SOCOsFolGaZnhnr3quzczU/hfeoZzAnJ2Ezim+Juafj1W5X/mHUOcaZNH56mwWlyjxjwukSmJYfgEhuw1OA=="
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>BaseApi | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="BaseApi.html">BaseApi</a></li></ul><h1>Class BaseApi<code class="tsd-tag">Abstract</code></h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>Base class for different types of APIs</p>
|
|
2
|
-
</div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
2
|
+
</div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-hierarchy" data-refl="83"><h4>Hierarchy (<a href="../hierarchy.html#BaseApi">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-signature-type">Construct</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">BaseApi</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="GraphQlApi.html" class="tsd-signature-type tsd-kind-class">GraphQlApi</a></li><li class="tsd-hierarchy-item"><a href="RestApi.html" class="tsd-signature-type tsd-kind-class">RestApi</a></li></ul></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="BaseApi.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
3
3
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="BaseApi.html#apidomainname" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Domain<wbr/>Name?</span></a>
|
|
4
4
|
<a href="BaseApi.html#apifqdn" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>apiFQDN?</span></a>
|
|
5
5
|
<a href="BaseApi.html#apihostname" class="tsd-index-link tsd-is-protected"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Host<wbr/>Name?</span></a>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>CognitoAuthentication | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="CognitoAuthentication.html">CognitoAuthentication</a></li></ul><h1>Class CognitoAuthentication</h1></div><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><p>The CognitoAuthentication construct sets up a Cognito User Pool with optional triggers and an optional Cognito Identity Pool.
|
|
2
2
|
It also configures various Lambda triggers for custom message, pre-sign up, and pre-token generation events.</p>
|
|
3
|
-
</div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
3
|
+
</div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-hierarchy" data-refl="46"><h4>Hierarchy</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-signature-type">Construct</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">CognitoAuthentication</span></li></ul></li></ul></section><section class="tsd-panel"><h4>Implements</h4><ul class="tsd-hierarchy"><li><a href="../interfaces/ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="CognitoAuthentication.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
4
4
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="CognitoAuthentication.html#custommessagefunction" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>custom<wbr/>Message<wbr/>Function?</span></a>
|
|
5
5
|
<a href="CognitoAuthentication.html#identitypool" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>identity<wbr/>Pool?</span></a>
|
|
6
6
|
<a href="CognitoAuthentication.html#node" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a>
|
|
@@ -5,7 +5,7 @@ and authorization using Cognito User Pool and Identity Pool. It also provides me
|
|
|
5
5
|
</code><button type="button">Copy</button></pre>
|
|
6
6
|
|
|
7
7
|
</div></div></section> <section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="resolvers" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">RESOLVERS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the GraphQL resolvers.</p>
|
|
8
|
-
</div><div class="tsd-comment tsd-typography"></div></li></ul></section> <section class="tsd-panel tsd-hierarchy" data-refl="
|
|
8
|
+
</div><div class="tsd-comment tsd-typography"></div></li></ul></section> <section class="tsd-panel tsd-hierarchy" data-refl="364"><h4>Hierarchy (<a href="../hierarchy.html#GraphQlApi">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="BaseApi.html" class="tsd-signature-type tsd-kind-class">BaseApi</a><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">GraphQlApi</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="GraphQlApi.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
9
9
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="GraphQlApi.html#api" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api</span></a>
|
|
10
10
|
<a href="GraphQlApi.html#apidomainname" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Domain<wbr/>Name?</span></a>
|
|
11
11
|
<a href="GraphQlApi.html#apifqdn" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>apiFQDN?</span></a>
|
|
@@ -5,7 +5,7 @@ The construct also provides methods to dynamically update the configuration and
|
|
|
5
5
|
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example" class="tsd-anchor"></a>Example<a href="#example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">lambdaFunction</span><span class="hl-1"> = </span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-0">LambdaFunction</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">'MyLambdaFunction'</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-4">entry:</span><span class="hl-1"> </span><span class="hl-2">'path/to/lambda/handler.ts'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">handler:</span><span class="hl-1"> </span><span class="hl-2">'main'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">stageName:</span><span class="hl-1"> </span><span class="hl-2">'dev'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">table:</span><span class="hl-1"> </span><span class="hl-4">myDynamoDBTable</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">userPool:</span><span class="hl-1"> </span><span class="hl-4">myCognitoUserPool</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">assetBucket:</span><span class="hl-1"> </span><span class="hl-4">myS3Bucket</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">lambdaOptions:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">timeout:</span><span class="hl-1"> </span><span class="hl-4">Duration</span><span class="hl-1">.</span><span class="hl-0">seconds</span><span class="hl-1">(</span><span class="hl-8">30</span><span class="hl-1">),</span><br/><span class="hl-1"> </span><span class="hl-4">memorySize:</span><span class="hl-1"> </span><span class="hl-8">512</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-6">// Add additional permissions</span><br/><span class="hl-4">lambdaFunction</span><span class="hl-1">.</span><span class="hl-0">grantSendEmails</span><span class="hl-1">();</span><br/><span class="hl-4">lambdaFunction</span><span class="hl-1">.</span><span class="hl-0">grantTableWrite</span><span class="hl-1">();</span>
|
|
6
6
|
</code><button type="button">Copy</button></pre>
|
|
7
7
|
|
|
8
|
-
</div></div></section><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
8
|
+
</div></div></section><section class="tsd-panel tsd-hierarchy" data-refl="120"><h4>Hierarchy</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-signature-type">NodejsFunction</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">LambdaFunction</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="LambdaFunction.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
9
9
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="LambdaFunction.html#architecture" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>architecture</span></a>
|
|
10
10
|
<a href="LambdaFunction.html#cancreatepermissions" class="tsd-index-link tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>can<wbr/>Create<wbr/>Permissions</span></a>
|
|
11
11
|
<a href="LambdaFunction.html#deadletterqueue" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>dead<wbr/>Letter<wbr/>Queue?</span></a>
|
|
@@ -44,7 +44,9 @@ The construct also provides methods to dynamically update the configuration and
|
|
|
44
44
|
<a href="LambdaFunction.html#grantdeleteasset" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Delete<wbr/>Asset</span></a>
|
|
45
45
|
<a href="LambdaFunction.html#grantinvoke" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke</span></a>
|
|
46
46
|
<a href="LambdaFunction.html#grantinvokecompositeprincipal" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Composite<wbr/>Principal</span></a>
|
|
47
|
+
<a href="LambdaFunction.html#grantinvokelatestversion" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Latest<wbr/>Version</span></a>
|
|
47
48
|
<a href="LambdaFunction.html#grantinvokeurl" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Url</span></a>
|
|
49
|
+
<a href="LambdaFunction.html#grantinvokeversion" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Version</span></a>
|
|
48
50
|
<a href="LambdaFunction.html#grantreadassets" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Read<wbr/>Assets</span></a>
|
|
49
51
|
<a href="LambdaFunction.html#grantsendemails" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Send<wbr/>Emails</span></a>
|
|
50
52
|
<a href="LambdaFunction.html#granttablewrite" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Table<wbr/>Write</span></a>
|
|
@@ -200,8 +202,11 @@ which will be a concrete name.</p>
|
|
|
200
202
|
Commonly this is the resource's <code>ref</code>.</p>
|
|
201
203
|
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.getResourceNameAttribute</p></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="grantdeleteasset" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Delete<wbr/>Asset</span><a href="#grantdeleteasset" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="grantdeleteasset-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantDeleteAsset</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#grantdeleteasset-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="grantinvoke" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Invoke</span><a href="#grantinvoke" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-signature tsd-anchor-link"><a id="grantinvoke-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantInvoke</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">grantee</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IGrantable</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Grant</span><a href="#grantinvoke-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Grant the given identity permissions to invoke this Lambda</p>
|
|
202
204
|
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">grantee</span>: <span class="tsd-signature-type">IGrantable</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Grant</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.grantInvoke</p></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="grantinvokecompositeprincipal" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Invoke<wbr/>Composite<wbr/>Principal</span><a href="#grantinvokecompositeprincipal" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-signature tsd-anchor-link"><a id="grantinvokecompositeprincipal-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantInvokeCompositePrincipal</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">compositePrincipal</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">CompositePrincipal</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Grant</span><span class="tsd-signature-symbol">[]</span><a href="#grantinvokecompositeprincipal-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Grant multiple principals the ability to invoke this Lambda via CompositePrincipal</p>
|
|
203
|
-
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">compositePrincipal</span>: <span class="tsd-signature-type">CompositePrincipal</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Grant</span><span class="tsd-signature-symbol">[]</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.grantInvokeCompositePrincipal</p></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="
|
|
204
|
-
|
|
205
|
+
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">compositePrincipal</span>: <span class="tsd-signature-type">CompositePrincipal</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Grant</span><span class="tsd-signature-symbol">[]</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.grantInvokeCompositePrincipal</p></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="grantinvokelatestversion" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Invoke<wbr/>Latest<wbr/>Version</span><a href="#grantinvokelatestversion" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-signature tsd-anchor-link"><a id="grantinvokelatestversion-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantInvokeLatestVersion</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">grantee</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IGrantable</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Grant</span><a href="#grantinvokelatestversion-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Grant the given identity permissions to invoke the $LATEST version or
|
|
206
|
+
unqualified version of this Lambda</p>
|
|
207
|
+
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">grantee</span>: <span class="tsd-signature-type">IGrantable</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Grant</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.grantInvokeLatestVersion</p></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="grantinvokeurl" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Invoke<wbr/>Url</span><a href="#grantinvokeurl" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-signature tsd-anchor-link"><a id="grantinvokeurl-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantInvokeUrl</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">grantee</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IGrantable</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Grant</span><a href="#grantinvokeurl-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Grant the given identity permissions to invoke this Lambda Function URL</p>
|
|
208
|
+
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">grantee</span>: <span class="tsd-signature-type">IGrantable</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Grant</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.grantInvokeUrl</p></aside></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="grantinvokeversion" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Invoke<wbr/>Version</span><a href="#grantinvokeversion" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-signature tsd-anchor-link"><a id="grantinvokeversion-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantInvokeVersion</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">grantee</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IGrantable</span><span class="tsd-signature-symbol">,</span> <span class="tsd-kind-parameter">version</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">IVersion</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Grant</span><a href="#grantinvokeversion-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Grant the given identity permissions to invoke the given version of this Lambda</p>
|
|
209
|
+
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><span class="tsd-kind-parameter">grantee</span>: <span class="tsd-signature-type">IGrantable</span></span></li><li><span><span class="tsd-kind-parameter">version</span>: <span class="tsd-signature-type">IVersion</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Grant</span></h4><div class="tsd-comment tsd-typography"></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.grantInvokeVersion</p></aside></li></ul></section><section class="tsd-panel tsd-member"><a id="grantreadassets" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Read<wbr/>Assets</span><a href="#grantreadassets" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="grantreadassets-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantReadAssets</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#grantreadassets-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="grantsendemails" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Send<wbr/>Emails</span><a href="#grantsendemails" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="grantsendemails-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantSendEmails</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#grantsendemails-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="granttablewrite" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Table<wbr/>Write</span><a href="#granttablewrite" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="granttablewrite-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantTableWrite</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#granttablewrite-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="grantuploadassets" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Upload<wbr/>Assets</span><a href="#grantuploadassets" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="grantuploadassets-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantUploadAssets</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#grantuploadassets-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="grantuserpoolread" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Userpool<wbr/>Read</span><a href="#grantuserpoolread" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="grantuserpoolread-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantUserpoolRead</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#grantuserpoolread-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member"><a id="grantuserpoolreadwrite" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>grant<wbr/>Userpool<wbr/>Read<wbr/>Write</span><a href="#grantuserpoolreadwrite" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures"><li class="tsd-signature tsd-anchor-link"><a id="grantuserpoolreadwrite-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">grantUserpoolReadWrite</span><span class="tsd-signature-symbol">()</span><span class="tsd-signature-symbol">:</span> <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a><a href="#grantuserpoolreadwrite-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><h4 class="tsd-returns-title">Returns <a href="LambdaFunction.html" class="tsd-signature-type tsd-kind-class">LambdaFunction</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-is-inherited tsd-is-external"><a id="invalidateversionbasedon" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><span>invalidate<wbr/>Version<wbr/>Based<wbr/>On</span><a href="#invalidateversionbasedon" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><ul class="tsd-signatures tsd-is-inherited tsd-is-external"><li class="tsd-signature tsd-anchor-link"><a id="invalidateversionbasedon-1" class="tsd-anchor"></a><span class="tsd-kind-call-signature">invalidateVersionBasedOn</span><span class="tsd-signature-symbol">(</span><span class="tsd-kind-parameter">x</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">void</span><a href="#invalidateversionbasedon-1" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></li><li class="tsd-description"><div class="tsd-comment tsd-typography"><p>Mix additional information into the hash of the Version object</p>
|
|
205
210
|
<p>The Lambda Function construct does its best to automatically create a new
|
|
206
211
|
Version when anything about the Function changes (its code, its layers,
|
|
207
212
|
any of the other properties).</p>
|
|
@@ -281,4 +286,4 @@ this type-testing method instead.</p>
|
|
|
281
286
|
</div><div class="tsd-parameters"><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameter-list"><li><span><code class="tsd-tag">Optional</code><span class="tsd-kind-parameter">props</span>: <span class="tsd-signature-type">MetricOptions</span></span></li></ul></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Metric</span></h4><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-5" class="tsd-anchor"></a>Default<a href="#default-5" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-4">max</span><span class="hl-1"> </span><span class="hl-4">over</span><span class="hl-1"> </span><span class="hl-8">5</span><span class="hl-1"> </span><span class="hl-4">minutes</span>
|
|
282
287
|
</code><button type="button">Copy</button></pre>
|
|
283
288
|
|
|
284
|
-
</div></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.metricAllUnreservedConcurrentExecutions</p></aside></li></ul></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary><div><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#architecture" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>architecture</span></a><a href="#cancreatepermissions" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>can<wbr/>Create<wbr/>Permissions</span></a><a href="#deadletterqueue" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>dead<wbr/>Letter<wbr/>Queue</span></a><a href="#deadlettertopic" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>dead<wbr/>Letter<wbr/>Topic</span></a><a href="#env" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>env</span></a><a href="#functionarn" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>function<wbr/>Arn</span></a><a href="#functionname" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>function<wbr/>Name</span></a><a href="#grantprincipal" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>grant<wbr/>Principal</span></a><a href="#node" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a><a href="#permissionsnode" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>permissions<wbr/>Node</span></a><a href="#physicalname" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>physical<wbr/>Name</span></a><a href="#role" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>role</span></a><a href="#runtime" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>runtime</span></a><a href="#stack" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>stack</span></a><a href="#timeout" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>timeout</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Accessors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Accessors</summary><div><a href="#connections" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>connections</span></a><a href="#currentversion" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>current<wbr/>Version</span></a><a href="#isboundtovpc" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>is<wbr/>Bound<wbr/>To<wbr/>Vpc</span></a><a href="#latestversion" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>latest<wbr/>Version</span></a><a href="#loggroup" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>log<wbr/>Group</span></a><a href="#resourcearnsforgrantinvoke" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>resource<wbr/>Arns<wbr/>For<wbr/>Grant<wbr/>Invoke</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary><div><a href="#addalias" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Alias</span></a><a href="#addenvironment" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Environment</span></a><a href="#addeventsource" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Event<wbr/>Source</span></a><a href="#addeventsourcemapping" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Event<wbr/>Source<wbr/>Mapping</span></a><a href="#addfunctionurl" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Function<wbr/>Url</span></a><a href="#addlayers" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Layers</span></a><a href="#addpermission" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Permission</span></a><a href="#addtorolepolicy" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>To<wbr/>Role<wbr/>Policy</span></a><a href="#applyremovalpolicy" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>apply<wbr/>Removal<wbr/>Policy</span></a><a href="#configureasyncinvoke" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>configure<wbr/>Async<wbr/>Invoke</span></a><a href="#considerwarningoninvokefunctionpermissions" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>consider<wbr/>Warning<wbr/>On<wbr/>Invoke<wbr/>Function<wbr/>Permissions</span></a><a href="#generatephysicalname" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>generate<wbr/>Physical<wbr/>Name</span></a><a href="#getresourcearnattribute" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Resource<wbr/>Arn<wbr/>Attribute</span></a><a href="#getresourcenameattribute" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Resource<wbr/>Name<wbr/>Attribute</span></a><a href="#grantdeleteasset" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Delete<wbr/>Asset</span></a><a href="#grantinvoke" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke</span></a><a href="#grantinvokecompositeprincipal" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Composite<wbr/>Principal</span></a><a href="#grantinvokeurl" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Url</span></a><a href="#grantreadassets" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Read<wbr/>Assets</span></a><a href="#grantsendemails" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Send<wbr/>Emails</span></a><a href="#granttablewrite" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Table<wbr/>Write</span></a><a href="#grantuploadassets" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Upload<wbr/>Assets</span></a><a href="#grantuserpoolread" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Userpool<wbr/>Read</span></a><a href="#grantuserpoolreadwrite" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Userpool<wbr/>Read<wbr/>Write</span></a><a href="#invalidateversionbasedon" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>invalidate<wbr/>Version<wbr/>Based<wbr/>On</span></a><a href="#metric" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric</span></a><a href="#metricduration" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Duration</span></a><a href="#metricerrors" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Errors</span></a><a href="#metricinvocations" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Invocations</span></a><a href="#metricthrottles" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Throttles</span></a><a href="#settable" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Table</span></a><a href="#settimeout" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Timeout</span></a><a href="#setuserpool" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>User<wbr/>Pool</span></a><a href="#tostring" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>String</span></a><a href="#warninvokefunctionpermissions" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>warn<wbr/>Invoke<wbr/>Function<wbr/>Permissions</span></a><a href="#classifyversionproperty" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>classify<wbr/>Version<wbr/>Property</span></a><a href="#fromfunctionarn" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>from<wbr/>Function<wbr/>Arn</span></a><a href="#fromfunctionattributes" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>from<wbr/>Function<wbr/>Attributes</span></a><a href="#fromfunctionname" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>from<wbr/>Function<wbr/>Name</span></a><a href="#isconstruct" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Construct</span></a><a href="#isownedresource" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Owned<wbr/>Resource</span></a><a href="#isresource" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Resource</span></a><a href="#metricall" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All</span></a><a href="#metricallconcurrentexecutions" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Concurrent<wbr/>Executions</span></a><a href="#metricallduration" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Duration</span></a><a href="#metricallerrors" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Errors</span></a><a href="#metricallinvocations" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Invocations</span></a><a href="#metricallthrottles" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Throttles</span></a><a href="#metricallunreservedconcurrentexecutions" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Unreserved<wbr/>Concurrent<wbr/>Executions</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">cdk-serverless</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
289
|
+
</div></div><aside class="tsd-sources"><p>Inherited from lambdaNodejs.NodejsFunction.metricAllUnreservedConcurrentExecutions</p></aside></li></ul></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Constructors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Constructors</summary><div><a href="#constructor" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#architecture" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>architecture</span></a><a href="#cancreatepermissions" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>can<wbr/>Create<wbr/>Permissions</span></a><a href="#deadletterqueue" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>dead<wbr/>Letter<wbr/>Queue</span></a><a href="#deadlettertopic" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>dead<wbr/>Letter<wbr/>Topic</span></a><a href="#env" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>env</span></a><a href="#functionarn" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>function<wbr/>Arn</span></a><a href="#functionname" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>function<wbr/>Name</span></a><a href="#grantprincipal" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>grant<wbr/>Principal</span></a><a href="#node" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a><a href="#permissionsnode" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>permissions<wbr/>Node</span></a><a href="#physicalname" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>physical<wbr/>Name</span></a><a href="#role" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>role</span></a><a href="#runtime" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>runtime</span></a><a href="#stack" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>stack</span></a><a href="#timeout" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>timeout</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Accessors"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Accessors</summary><div><a href="#connections" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>connections</span></a><a href="#currentversion" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>current<wbr/>Version</span></a><a href="#isboundtovpc" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>is<wbr/>Bound<wbr/>To<wbr/>Vpc</span></a><a href="#latestversion" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>latest<wbr/>Version</span></a><a href="#loggroup" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>log<wbr/>Group</span></a><a href="#resourcearnsforgrantinvoke" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-262144"></use></svg><span>resource<wbr/>Arns<wbr/>For<wbr/>Grant<wbr/>Invoke</span></a></div></details><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Methods"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Methods</summary><div><a href="#addalias" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Alias</span></a><a href="#addenvironment" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Environment</span></a><a href="#addeventsource" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Event<wbr/>Source</span></a><a href="#addeventsourcemapping" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Event<wbr/>Source<wbr/>Mapping</span></a><a href="#addfunctionurl" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Function<wbr/>Url</span></a><a href="#addlayers" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Layers</span></a><a href="#addpermission" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>Permission</span></a><a href="#addtorolepolicy" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>add<wbr/>To<wbr/>Role<wbr/>Policy</span></a><a href="#applyremovalpolicy" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>apply<wbr/>Removal<wbr/>Policy</span></a><a href="#configureasyncinvoke" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>configure<wbr/>Async<wbr/>Invoke</span></a><a href="#considerwarningoninvokefunctionpermissions" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>consider<wbr/>Warning<wbr/>On<wbr/>Invoke<wbr/>Function<wbr/>Permissions</span></a><a href="#generatephysicalname" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>generate<wbr/>Physical<wbr/>Name</span></a><a href="#getresourcearnattribute" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Resource<wbr/>Arn<wbr/>Attribute</span></a><a href="#getresourcenameattribute" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>get<wbr/>Resource<wbr/>Name<wbr/>Attribute</span></a><a href="#grantdeleteasset" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Delete<wbr/>Asset</span></a><a href="#grantinvoke" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke</span></a><a href="#grantinvokecompositeprincipal" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Composite<wbr/>Principal</span></a><a href="#grantinvokelatestversion" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Latest<wbr/>Version</span></a><a href="#grantinvokeurl" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Url</span></a><a href="#grantinvokeversion" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Invoke<wbr/>Version</span></a><a href="#grantreadassets" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Read<wbr/>Assets</span></a><a href="#grantsendemails" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Send<wbr/>Emails</span></a><a href="#granttablewrite" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Table<wbr/>Write</span></a><a href="#grantuploadassets" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Upload<wbr/>Assets</span></a><a href="#grantuserpoolread" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Userpool<wbr/>Read</span></a><a href="#grantuserpoolreadwrite" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>grant<wbr/>Userpool<wbr/>Read<wbr/>Write</span></a><a href="#invalidateversionbasedon" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>invalidate<wbr/>Version<wbr/>Based<wbr/>On</span></a><a href="#metric" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric</span></a><a href="#metricduration" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Duration</span></a><a href="#metricerrors" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Errors</span></a><a href="#metricinvocations" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Invocations</span></a><a href="#metricthrottles" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>Throttles</span></a><a href="#settable" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Table</span></a><a href="#settimeout" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>Timeout</span></a><a href="#setuserpool" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>set<wbr/>User<wbr/>Pool</span></a><a href="#tostring" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>String</span></a><a href="#warninvokefunctionpermissions" class="tsd-is-protected tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>warn<wbr/>Invoke<wbr/>Function<wbr/>Permissions</span></a><a href="#classifyversionproperty" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>classify<wbr/>Version<wbr/>Property</span></a><a href="#fromfunctionarn" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>from<wbr/>Function<wbr/>Arn</span></a><a href="#fromfunctionattributes" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>from<wbr/>Function<wbr/>Attributes</span></a><a href="#fromfunctionname" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>from<wbr/>Function<wbr/>Name</span></a><a href="#isconstruct" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Construct</span></a><a href="#isownedresource" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Owned<wbr/>Resource</span></a><a href="#isresource" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>is<wbr/>Resource</span></a><a href="#metricall" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All</span></a><a href="#metricallconcurrentexecutions" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Concurrent<wbr/>Executions</span></a><a href="#metricallduration" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Duration</span></a><a href="#metricallerrors" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Errors</span></a><a href="#metricallinvocations" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Invocations</span></a><a href="#metricallthrottles" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Throttles</span></a><a href="#metricallunreservedconcurrentexecutions" class="tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>metric<wbr/>All<wbr/>Unreserved<wbr/>Concurrent<wbr/>Executions</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">cdk-serverless</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -6,7 +6,7 @@ It allows auto-generating routes based on the provided OpenAPI definition and pr
|
|
|
6
6
|
|
|
7
7
|
</div></div></section> <section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="paths" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">PATHS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the API paths.</p>
|
|
8
8
|
</div><div class="tsd-comment tsd-typography"></div></li><li><span><a id="ops" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">OPS</span></span><div class="tsd-comment tsd-typography"><p>The type definition for the API operations.</p>
|
|
9
|
-
</div><div class="tsd-comment tsd-typography"></div></li></ul></section> <section class="tsd-panel tsd-hierarchy" data-refl="
|
|
9
|
+
</div><div class="tsd-comment tsd-typography"></div></li></ul></section> <section class="tsd-panel tsd-hierarchy" data-refl="498"><h4>Hierarchy (<a href="../hierarchy.html#RestApi">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="BaseApi.html" class="tsd-signature-type tsd-kind-class">BaseApi</a><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">RestApi</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="RestApi.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
10
10
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="RestApi.html#api" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api</span></a>
|
|
11
11
|
<a href="RestApi.html#apidomainname" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Domain<wbr/>Name?</span></a>
|
|
12
12
|
<a href="RestApi.html#apifqdn" class="tsd-index-link tsd-is-protected tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>apiFQDN?</span></a>
|
|
@@ -4,7 +4,7 @@ It also supports point-in-time recovery and time-to-live attributes.</p>
|
|
|
4
4
|
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example" class="tsd-anchor"></a>Example<a href="#example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">datastore</span><span class="hl-1"> = </span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-0">SingleTableDatastore</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">'MyDatastore'</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-4">design:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">primaryKey:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">partitionKey:</span><span class="hl-1"> </span><span class="hl-2">'PK'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">sortKey:</span><span class="hl-1"> </span><span class="hl-2">'SK'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-4">globalIndexes:</span><span class="hl-1"> [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">indexName:</span><span class="hl-1"> </span><span class="hl-2">'GSI1'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">partitionKey:</span><span class="hl-1"> { </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'GSI1PK'</span><span class="hl-1">, </span><span class="hl-4">type:</span><span class="hl-1"> </span><span class="hl-4">dynamodb</span><span class="hl-1">.</span><span class="hl-4">AttributeType</span><span class="hl-1">.</span><span class="hl-7">STRING</span><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-4">sortKey:</span><span class="hl-1"> { </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'GSI1SK'</span><span class="hl-1">, </span><span class="hl-4">type:</span><span class="hl-1"> </span><span class="hl-4">dynamodb</span><span class="hl-1">.</span><span class="hl-4">AttributeType</span><span class="hl-1">.</span><span class="hl-7">STRING</span><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-4">localIndexes:</span><span class="hl-1"> [</span><br/><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">indexName:</span><span class="hl-1"> </span><span class="hl-2">'LSI1'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">sortKey:</span><span class="hl-1"> { </span><span class="hl-4">name:</span><span class="hl-1"> </span><span class="hl-2">'LSI1SK'</span><span class="hl-1">, </span><span class="hl-4">type:</span><span class="hl-1"> </span><span class="hl-4">dynamodb</span><span class="hl-1">.</span><span class="hl-4">AttributeType</span><span class="hl-1">.</span><span class="hl-7">STRING</span><span class="hl-1"> },</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> ],</span><br/><span class="hl-1"> </span><span class="hl-4">timeToLiveAttribute:</span><span class="hl-1"> </span><span class="hl-2">'TTL'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-4">encryption:</span><span class="hl-1"> </span><span class="hl-4">dynamodb</span><span class="hl-1">.</span><span class="hl-4">TableEncryption</span><span class="hl-1">.</span><span class="hl-7">AWS_MANAGED</span><span class="hl-1">,</span><br/><span class="hl-1">});</span>
|
|
5
5
|
</code><button type="button">Copy</button></pre>
|
|
6
6
|
|
|
7
|
-
</div></div></section><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
7
|
+
</div></div></section><section class="tsd-panel tsd-hierarchy" data-refl="575"><h4>Hierarchy</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-signature-type">Construct</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">SingleTableDatastore</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="SingleTableDatastore.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
8
8
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="SingleTableDatastore.html#node" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a>
|
|
9
9
|
<a href="SingleTableDatastore.html#table" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>table</span></a>
|
|
10
10
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Methods</h3><div class="tsd-index-list"><a href="SingleTableDatastore.html#tostring" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-2048"></use></svg><span>to<wbr/>String</span></a>
|
|
@@ -4,7 +4,7 @@ various configurations for logging and tracing. It implements the IGrantable int
|
|
|
4
4
|
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-example"><h4 class="tsd-anchor-link"><a id="example" class="tsd-anchor"></a>Example<a href="#example" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">workflow</span><span class="hl-1"> = </span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-0">Workflow</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">'MyWorkflow'</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-4">definitionFileName:</span><span class="hl-1"> </span><span class="hl-2">'path/to/definition.asl.json'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">stateMachineType:</span><span class="hl-1"> </span><span class="hl-4">sfn</span><span class="hl-1">.</span><span class="hl-4">StateMachineType</span><span class="hl-1">.</span><span class="hl-7">STANDARD</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">loggingConfiguration:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">level:</span><span class="hl-1"> </span><span class="hl-4">sfn</span><span class="hl-1">.</span><span class="hl-4">LogLevel</span><span class="hl-1">.</span><span class="hl-7">ALL</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">includeExecutionData:</span><span class="hl-1"> </span><span class="hl-5">true</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">destinations:</span><span class="hl-1"> [</span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-4">logs</span><span class="hl-1">.</span><span class="hl-0">LogGroup</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">'LogGroup'</span><span class="hl-1">)],</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-4">tracingConfiguration:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-4">enabled:</span><span class="hl-1"> </span><span class="hl-5">true</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1"> </span><span class="hl-4">definitionSubstitutions:</span><span class="hl-1"> {</span><br/><span class="hl-1"> </span><span class="hl-2">'${MyVariable}'</span><span class="hl-4">:</span><span class="hl-1"> </span><span class="hl-2">'MyValue'</span><span class="hl-1">,</span><br/><span class="hl-1"> },</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-5">const</span><span class="hl-1"> </span><span class="hl-7">lambdaFunction</span><span class="hl-1"> = </span><span class="hl-5">new</span><span class="hl-1"> </span><span class="hl-4">lambda</span><span class="hl-1">.</span><span class="hl-0">Function</span><span class="hl-1">(</span><span class="hl-5">this</span><span class="hl-1">, </span><span class="hl-2">'MyFunction'</span><span class="hl-1">, {</span><br/><span class="hl-1"> </span><span class="hl-4">runtime:</span><span class="hl-1"> </span><span class="hl-4">lambda</span><span class="hl-1">.</span><span class="hl-4">Runtime</span><span class="hl-1">.</span><span class="hl-7">NODEJS_20_X</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">handler:</span><span class="hl-1"> </span><span class="hl-2">'index.handler'</span><span class="hl-1">,</span><br/><span class="hl-1"> </span><span class="hl-4">code:</span><span class="hl-1"> </span><span class="hl-4">lambda</span><span class="hl-1">.</span><span class="hl-4">Code</span><span class="hl-1">.</span><span class="hl-0">fromAsset</span><span class="hl-1">(</span><span class="hl-2">'lambda'</span><span class="hl-1">),</span><br/><span class="hl-1">});</span><br/><br/><span class="hl-4">workflow</span><span class="hl-1">.</span><span class="hl-4">grantPrincipal</span><span class="hl-1">.</span><span class="hl-0">grantInvoke</span><span class="hl-1">(</span><span class="hl-4">lambdaFunction</span><span class="hl-1">);</span>
|
|
5
5
|
</code><button type="button">Copy</button></pre>
|
|
6
6
|
|
|
7
|
-
</div></div></section><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
7
|
+
</div></div></section><section class="tsd-panel tsd-hierarchy" data-refl="597"><h4>Hierarchy</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-signature-type">Construct</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">Workflow</span></li></ul></li></ul></section><section class="tsd-panel"><h4>Implements</h4><ul class="tsd-hierarchy"><li><span class="tsd-signature-type">IGrantable</span></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Constructors</h3><div class="tsd-index-list"><a href="Workflow.html#constructor" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-512"></use></svg><span>constructor</span></a>
|
|
8
8
|
</div></section><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="Workflow.html#grantprincipal" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>grant<wbr/>Principal</span></a>
|
|
9
9
|
<a href="Workflow.html#node" class="tsd-index-link tsd-is-inherited tsd-is-external"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>node</span></a>
|
|
10
10
|
<a href="Workflow.html#role" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>role</span></a>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script><script async src="assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>cdk-serverless</h1></div><h2>Hierarchy Summary</h2><ul class="tsd-full-hierarchy"><li data-refl="
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script defer src="assets/main.js"></script><script async src="assets/icons.js" id="tsd-icons-script"></script><script async src="assets/search.js" id="tsd-search-script"></script><script async src="assets/navigation.js" id="tsd-nav-script"></script><script async src="assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><h1>cdk-serverless</h1></div><h2>Hierarchy Summary</h2><ul class="tsd-full-hierarchy"><li data-refl="83"><a id="BaseApi" class="tsd-anchor"></a><a href="classes/BaseApi.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-128"></use></svg>BaseApi</a><ul><li data-refl="364"><a id="GraphQlApi" class="tsd-anchor"></a><a href="classes/GraphQlApi.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-128"></use></svg>GraphQlApi</a></li><li data-refl="498"><a id="RestApi" class="tsd-anchor"></a><a href="classes/RestApi.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-128"></use></svg>RestApi</a></li></ul></li></ul><ul class="tsd-full-hierarchy"><li data-refl="67"><a id="BaseApiProps" class="tsd-anchor"></a><a href="interfaces/BaseApiProps.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-256"></use></svg>BaseApiProps</a><ul><li data-refl="335"><a id="GraphQlApiProps" class="tsd-anchor"></a><a href="interfaces/GraphQlApiProps.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-256"></use></svg>GraphQlApiProps</a></li><li data-refl="476"><a id="RestApiProps" class="tsd-anchor"></a><a href="interfaces/RestApiProps.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-256"></use></svg>RestApiProps</a></li></ul></li></ul><ul class="tsd-full-hierarchy"><li data-refl="19"><a id="ICognitoAuthentication" class="tsd-anchor"></a><a href="interfaces/ICognitoAuthentication.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-256"></use></svg>ICognitoAuthentication</a><ul><li data-refl="46"><a id="CognitoAuthentication" class="tsd-anchor"></a><a href="classes/CognitoAuthentication.html"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="assets/icons.svg#icon-128"></use></svg>CognitoAuthentication</a></li></ul></li></ul></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="modules.html">cdk-serverless</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>BaseApiProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="BaseApiProps.html">BaseApiProps</a></li></ul><h1>Interface BaseApiProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">BaseApiProps</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#additionalenv">additionalEnv</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#apihostname">apiHostname</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#apiname">apiName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#assetcdn">assetCdn</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/AssetCdn.html" class="tsd-signature-type tsd-kind-class">AssetCdn</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#authentication">authentication</a><span class="tsd-signature-symbol">?:</span> <a href="IJwtAuthentication.html" class="tsd-signature-type tsd-kind-interface">IJwtAuthentication</a> <span class="tsd-signature-symbol">|</span> <a href="ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#domainname">domainName</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#hostedzone">hostedZone</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#lambdaoptions">lambdaOptions</a><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#lambdatracing">lambdaTracing</a><span class="tsd-signature-symbol">?:</span> <a href="LambdaTracingOptions.html" class="tsd-signature-type tsd-kind-interface">LambdaTracingOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#monitoring">monitoring</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#singletabledatastore">singleTableDatastore</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/SingleTableDatastore.html" class="tsd-signature-type tsd-kind-class">SingleTableDatastore</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#stagename">stageName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>BaseApiProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="BaseApiProps.html">BaseApiProps</a></li></ul><h1>Interface BaseApiProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">BaseApiProps</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#additionalenv">additionalEnv</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#apihostname">apiHostname</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#apiname">apiName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#assetcdn">assetCdn</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/AssetCdn.html" class="tsd-signature-type tsd-kind-class">AssetCdn</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#authentication">authentication</a><span class="tsd-signature-symbol">?:</span> <a href="IJwtAuthentication.html" class="tsd-signature-type tsd-kind-interface">IJwtAuthentication</a> <span class="tsd-signature-symbol">|</span> <a href="ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#domainname">domainName</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#hostedzone">hostedZone</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#lambdaoptions">lambdaOptions</a><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#lambdatracing">lambdaTracing</a><span class="tsd-signature-symbol">?:</span> <a href="LambdaTracingOptions.html" class="tsd-signature-type tsd-kind-interface">LambdaTracingOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#monitoring">monitoring</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#singletabledatastore">singleTableDatastore</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/SingleTableDatastore.html" class="tsd-signature-type tsd-kind-class">SingleTableDatastore</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="BaseApiProps.html#stagename">stageName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel tsd-hierarchy" data-refl="67"><h4>Hierarchy (<a href="../hierarchy.html#BaseApiProps">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">BaseApiProps</span><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="GraphQlApiProps.html" class="tsd-signature-type tsd-kind-interface">GraphQlApiProps</a></li><li class="tsd-hierarchy-item"><a href="RestApiProps.html" class="tsd-signature-type tsd-kind-interface">RestApiProps</a></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="BaseApiProps.html#additionalenv" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>additional<wbr/>Env?</span></a>
|
|
2
2
|
<a href="BaseApiProps.html#apihostname" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Hostname?</span></a>
|
|
3
3
|
<a href="BaseApiProps.html#apiname" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Name</span></a>
|
|
4
4
|
<a href="BaseApiProps.html#assetcdn" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>asset<wbr/>Cdn?</span></a>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>CognitoAuthenticationProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="CognitoAuthenticationProps.html">CognitoAuthenticationProps</a></li></ul><h1>Interface CognitoAuthenticationProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">CognitoAuthenticationProps</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#groups">groups</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#identitypool">identityPool</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">poolConfig</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IdentityPoolProps</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#sesemailsender">sesEmailSender</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">email</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">region</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#triggers">triggers</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-kind-property">customMessages</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preSignUp</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preTokenGeneration</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#userpoolname">userPoolName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#userpoolprops">userPoolProps</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">UserPoolProps</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="CognitoAuthenticationProps.html#groups" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>groups?</span></a>
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>CognitoAuthenticationProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="CognitoAuthenticationProps.html">CognitoAuthenticationProps</a></li></ul><h1>Interface CognitoAuthenticationProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">CognitoAuthenticationProps</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#groups">groups</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-keyword">readonly</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#identitypool">identityPool</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">poolConfig</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IdentityPoolProps</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#sesemailsender">sesEmailSender</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-kind-property">email</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">name</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span> <span class="tsd-kind-property">region</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#triggers">triggers</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-kind-property">customMessages</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preSignUp</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preTokenGeneration</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preTokenGenerationv2</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#userpoolname">userPoolName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="CognitoAuthenticationProps.html#userpoolprops">userPoolProps</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">UserPoolProps</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="CognitoAuthenticationProps.html#groups" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>groups?</span></a>
|
|
2
2
|
<a href="CognitoAuthenticationProps.html#identitypool" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>identity<wbr/>Pool?</span></a>
|
|
3
3
|
<a href="CognitoAuthenticationProps.html#sesemailsender" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>ses<wbr/>Email<wbr/>Sender?</span></a>
|
|
4
4
|
<a href="CognitoAuthenticationProps.html#triggers" class="tsd-index-link"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>triggers?</span></a>
|
|
@@ -13,7 +13,7 @@ Value: group description</p>
|
|
|
13
13
|
</div><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><code class="tsd-tag">Readonly</code><span class="tsd-kind-property">email</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>Sender email. Needs to be already verified in SES</p>
|
|
14
14
|
</div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><code class="tsd-tag">Readonly</code><span class="tsd-kind-property">name</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>Sender name</p>
|
|
15
15
|
</div><div class="tsd-comment tsd-typography"></div></li><li class="tsd-parameter"><h5><code class="tsd-tag">Readonly</code><span class="tsd-kind-property">region</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span></h5><div class="tsd-comment tsd-typography"><p>AWS region to use for SES</p>
|
|
16
|
-
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-member"><a id="triggers" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>triggers</span><a href="#triggers" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">triggers</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-kind-property">customMessages</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preSignUp</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preTokenGeneration</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><div class="tsd-comment tsd-typography"><p>Configure Cognito Lambda triggers</p>
|
|
16
|
+
</div><div class="tsd-comment tsd-typography"></div></li></ul></div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-member"><a id="triggers" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>triggers</span><a href="#triggers" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">triggers</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-kind-property">customMessages</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preSignUp</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preTokenGeneration</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <span class="tsd-kind-property">preTokenGenerationv2</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><div class="tsd-comment tsd-typography"><p>Configure Cognito Lambda triggers</p>
|
|
17
17
|
</div><div class="tsd-type-declaration"><h4>Type declaration</h4><ul class="tsd-parameters"><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span class="tsd-kind-property">customMessages</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><p>Attaches a lambda function to the custom message trigger</p>
|
|
18
18
|
<p>Code has to reside in './src/lambda/cognito.custom-message.ts' with a method 'handler'</p>
|
|
19
19
|
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default" class="tsd-anchor"></a>Default<a href="#default" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">false</span>
|
|
@@ -26,9 +26,17 @@ Value: group description</p>
|
|
|
26
26
|
|
|
27
27
|
</div></div></li><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span class="tsd-kind-property">preTokenGeneration</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><p>Attaches a lambda function to the pre token generation trigger</p>
|
|
28
28
|
<p>Code has to reside in './src/lambda/cognito.pre-token-generation.ts' with a method 'handler'</p>
|
|
29
|
+
<p>You can only use preTokenGeneration or preTokenGenerationv2, not both.</p>
|
|
29
30
|
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-2" class="tsd-anchor"></a>Default<a href="#default-2" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">false</span>
|
|
30
31
|
</code><button type="button">Copy</button></pre>
|
|
31
32
|
|
|
33
|
+
</div></div></li><li class="tsd-parameter"><h5><code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span class="tsd-kind-property">preTokenGenerationv2</span><span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">boolean</span></h5><div class="tsd-comment tsd-typography"><p>Attaches a lambda function to the pre token generation trigger
|
|
34
|
+
new version of the pre token generation trigger with AccessToken support</p>
|
|
35
|
+
<p>Code has to reside in './src/lambda/cognito.pre-token-generation.ts' with a method 'handler'</p>
|
|
36
|
+
<p>You can only use preTokenGeneration or preTokenGenerationv2, not both.</p>
|
|
37
|
+
</div><div class="tsd-comment tsd-typography"><div class="tsd-tag-default"><h4 class="tsd-anchor-link"><a id="default-3" class="tsd-anchor"></a>Default<a href="#default-3" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h4><pre><code class="ts"><span class="hl-5">false</span>
|
|
38
|
+
</code><button type="button">Copy</button></pre>
|
|
39
|
+
|
|
32
40
|
</div></div></li></ul></div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-member"><a id="userpoolname" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Readonly</code><span>user<wbr/>Pool<wbr/>Name</span><a href="#userpoolname" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">userPoolName</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div><div class="tsd-comment tsd-typography"><p>Name for the Cognito user pool</p>
|
|
33
41
|
</div><div class="tsd-comment tsd-typography"></div></section><section class="tsd-panel tsd-member"><a id="userpoolprops" class="tsd-anchor"></a><h3 class="tsd-anchor-link"><code class="tsd-tag">Optional</code> <code class="tsd-tag">Readonly</code><span>user<wbr/>Pool<wbr/>Props</span><a href="#userpoolprops" aria-label="Permalink" class="tsd-anchor-icon"><svg viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-anchor"></use></svg></a></h3><div class="tsd-signature"><span class="tsd-kind-property">userPoolProps</span><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">UserPoolProps</span></div><div class="tsd-comment tsd-typography"><p>Properties of the Cognito user pool</p>
|
|
34
42
|
</div><div class="tsd-comment tsd-typography"></div></section></section></details></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div><details open class="tsd-accordion tsd-page-navigation"><summary class="tsd-accordion-summary"><h3><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>On This Page</h3></summary><div class="tsd-accordion-details"><details open class="tsd-accordion tsd-page-navigation-section"><summary class="tsd-accordion-summary" data-key="section-Properties"><svg width="20" height="20" viewBox="0 0 24 24" fill="none"><use href="../assets/icons.svg#icon-chevronDown"></use></svg>Properties</summary><div><a href="#groups" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>groups</span></a><a href="#identitypool" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>identity<wbr/>Pool</span></a><a href="#sesemailsender" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>ses<wbr/>Email<wbr/>Sender</span></a><a href="#triggers" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>triggers</span></a><a href="#userpoolname" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>user<wbr/>Pool<wbr/>Name</span></a><a href="#userpoolprops" class=""><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>user<wbr/>Pool<wbr/>Props</span></a></div></details></div></details></div><div class="site-menu"><nav class="tsd-navigation"><a href="../modules.html">cdk-serverless</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>GraphQlApiProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="GraphQlApiProps.html">GraphQlApiProps</a></li></ul><h1>Interface GraphQlApiProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">GraphQlApiProps</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#additionalenv">additionalEnv</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#apihostname">apiHostname</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#apiname">apiName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#assetcdn">assetCdn</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/AssetCdn.html" class="tsd-signature-type tsd-kind-class">AssetCdn</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#authentication">authentication</a><span class="tsd-signature-symbol">?:</span> <a href="IJwtAuthentication.html" class="tsd-signature-type tsd-kind-interface">IJwtAuthentication</a> <span class="tsd-signature-symbol">|</span> <a href="ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#definitionfilename">definitionFileName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#domainname">domainName</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#hostedzone">hostedZone</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#lambdaoptions">lambdaOptions</a><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#lambdatracing">lambdaTracing</a><span class="tsd-signature-symbol">?:</span> <a href="LambdaTracingOptions.html" class="tsd-signature-type tsd-kind-interface">LambdaTracingOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#monitoring">monitoring</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#singletabledatastore">singleTableDatastore</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/SingleTableDatastore.html" class="tsd-signature-type tsd-kind-class">SingleTableDatastore</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#stagename">stageName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel tsd-hierarchy" data-refl="
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>GraphQlApiProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="GraphQlApiProps.html">GraphQlApiProps</a></li></ul><h1>Interface GraphQlApiProps</h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">GraphQlApiProps</span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#additionalenv">additionalEnv</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#apihostname">apiHostname</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#apiname">apiName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#assetcdn">assetCdn</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/AssetCdn.html" class="tsd-signature-type tsd-kind-class">AssetCdn</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#authentication">authentication</a><span class="tsd-signature-symbol">?:</span> <a href="IJwtAuthentication.html" class="tsd-signature-type tsd-kind-interface">IJwtAuthentication</a> <span class="tsd-signature-symbol">|</span> <a href="ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#definitionfilename">definitionFileName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#domainname">domainName</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#hostedzone">hostedZone</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#lambdaoptions">lambdaOptions</a><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#lambdatracing">lambdaTracing</a><span class="tsd-signature-symbol">?:</span> <a href="LambdaTracingOptions.html" class="tsd-signature-type tsd-kind-interface">LambdaTracingOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#monitoring">monitoring</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#singletabledatastore">singleTableDatastore</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/SingleTableDatastore.html" class="tsd-signature-type tsd-kind-class">SingleTableDatastore</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="GraphQlApiProps.html#stagename">stageName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div><section class="tsd-panel tsd-hierarchy" data-refl="335"><h4>Hierarchy (<a href="../hierarchy.html#GraphQlApiProps">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="BaseApiProps.html" class="tsd-signature-type tsd-kind-interface">BaseApiProps</a><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">GraphQlApiProps</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="GraphQlApiProps.html#additionalenv" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>additional<wbr/>Env?</span></a>
|
|
2
2
|
<a href="GraphQlApiProps.html#apihostname" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Hostname?</span></a>
|
|
3
3
|
<a href="GraphQlApiProps.html#apiname" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Name</span></a>
|
|
4
4
|
<a href="GraphQlApiProps.html#assetcdn" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>asset<wbr/>Cdn?</span></a>
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>RestApiProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="RestApiProps.html">RestApiProps</a></li></ul><h1>Interface RestApiProps<OPS></h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">RestApiProps</span><span class="tsd-signature-symbol"><</span><a class="tsd-signature-type tsd-kind-type-parameter" href="RestApiProps.html#ops">OPS</a><span class="tsd-signature-symbol">></span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#additionalenv">additionalEnv</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#apihostname">apiHostname</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#apiname">apiName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#assetcdn">assetCdn</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/AssetCdn.html" class="tsd-signature-type tsd-kind-class">AssetCdn</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#authentication">authentication</a><span class="tsd-signature-symbol">?:</span> <a href="IJwtAuthentication.html" class="tsd-signature-type tsd-kind-interface">IJwtAuthentication</a> <span class="tsd-signature-symbol">|</span> <a href="ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#autogenerateroutes">autoGenerateRoutes</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#cors">cors</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#definitionfilename">definitionFileName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#domainname">domainName</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#hostedzone">hostedZone</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#lambdaoptions">lambdaOptions</a><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#lambdaoptionsbyoperation">lambdaOptionsByOperation</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">operationId</span> <span class="tsd-signature-keyword">in</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><br/> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#lambdatracing">lambdaTracing</a><span class="tsd-signature-symbol">?:</span> <a href="LambdaTracingOptions.html" class="tsd-signature-type tsd-kind-interface">LambdaTracingOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#monitoring">monitoring</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#restapiprops">restApiProps</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">RestApiBaseProps</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#singletabledatastore">singleTableDatastore</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/SingleTableDatastore.html" class="tsd-signature-type tsd-kind-class">SingleTableDatastore</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#stagename">stageName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div> <section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="ops" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">OPS</span></span></li></ul></section> <section class="tsd-panel tsd-hierarchy" data-refl="
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base=".."><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>RestApiProps | cdk-serverless</title><meta name="description" content="Documentation for cdk-serverless"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><div class="table-cell" id="tsd-search"><div class="field"><label for="tsd-search-field" class="tsd-widget tsd-toolbar-icon search no-caption"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-search"></use></svg></label><input type="text" id="tsd-search-field" aria-label="Search"/></div><div class="field"><div id="tsd-toolbar-links"></div></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">cdk-serverless</a></div><div class="table-cell" id="tsd-widgets"><a href="#" class="tsd-widget tsd-toolbar-icon menu no-caption" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb"><li><a href="../modules.html">cdk-serverless</a></li><li><a href="RestApiProps.html">RestApiProps</a></li></ul><h1>Interface RestApiProps<OPS></h1></div><div class="tsd-signature"><span class="tsd-signature-keyword">interface</span> <span class="tsd-kind-interface">RestApiProps</span><span class="tsd-signature-symbol"><</span><a class="tsd-signature-type tsd-kind-type-parameter" href="RestApiProps.html#ops">OPS</a><span class="tsd-signature-symbol">></span> <span class="tsd-signature-symbol">{</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#additionalenv">additionalEnv</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-index-signature">key</span><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]:</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#apihostname">apiHostname</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#apiname">apiName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#assetcdn">assetCdn</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/AssetCdn.html" class="tsd-signature-type tsd-kind-class">AssetCdn</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#authentication">authentication</a><span class="tsd-signature-symbol">?:</span> <a href="IJwtAuthentication.html" class="tsd-signature-type tsd-kind-interface">IJwtAuthentication</a> <span class="tsd-signature-symbol">|</span> <a href="ICognitoAuthentication.html" class="tsd-signature-type tsd-kind-interface">ICognitoAuthentication</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#autogenerateroutes">autoGenerateRoutes</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#cors">cors</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#definitionfilename">definitionFileName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#domainname">domainName</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#hostedzone">hostedZone</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">IHostedZone</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#lambdaoptions">lambdaOptions</a><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#lambdaoptionsbyoperation">lambdaOptionsByOperation</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-symbol">{</span><br/> <span class="tsd-signature-symbol">[</span><span class="tsd-kind-type-parameter">operationId</span> <span class="tsd-signature-keyword">in</span> <span class="tsd-signature-type">string</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">number</span> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">symbol</span><span class="tsd-signature-symbol">]</span><span class="tsd-signature-symbol">?:</span> <a href="../types/LambdaOptions.html" class="tsd-signature-type tsd-kind-type-alias">LambdaOptions</a><br/> <span class="tsd-signature-symbol">}</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#lambdatracing">lambdaTracing</a><span class="tsd-signature-symbol">?:</span> <a href="LambdaTracingOptions.html" class="tsd-signature-type tsd-kind-interface">LambdaTracingOptions</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#monitoring">monitoring</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#restapiprops">restApiProps</a><span class="tsd-signature-symbol">?:</span> <span class="tsd-signature-type">RestApiBaseProps</span><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#singletabledatastore">singleTableDatastore</a><span class="tsd-signature-symbol">?:</span> <a href="../classes/SingleTableDatastore.html" class="tsd-signature-type tsd-kind-class">SingleTableDatastore</a><span class="tsd-signature-symbol">;</span><br/> <a class="tsd-kind-property" href="RestApiProps.html#stagename">stageName</a><span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">;</span><br/><span class="tsd-signature-symbol">}</span></div> <section class="tsd-panel"><h4>Type Parameters</h4><ul class="tsd-type-parameter-list"><li><span><a id="ops" class="tsd-anchor"></a><span class="tsd-kind-type-parameter">OPS</span></span></li></ul></section> <section class="tsd-panel tsd-hierarchy" data-refl="476"><h4>Hierarchy (<a href="../hierarchy.html#RestApiProps">View Summary</a>)</h4><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><a href="BaseApiProps.html" class="tsd-signature-type tsd-kind-interface">BaseApiProps</a><ul class="tsd-hierarchy"><li class="tsd-hierarchy-item"><span class="tsd-hierarchy-target">RestApiProps</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><section class="tsd-panel tsd-index-panel"><details class="tsd-index-content tsd-accordion" open><summary class="tsd-accordion-summary tsd-index-summary"><h5 class="tsd-index-heading uppercase" role="button" aria-expanded="false" tabIndex="0"><svg width="16" height="16" viewBox="0 0 16 16" fill="none"><use href="../assets/icons.svg#icon-chevronSmall"></use></svg> Index</h5></summary><div class="tsd-accordion-details"><section class="tsd-index-section"><h3 class="tsd-index-heading">Properties</h3><div class="tsd-index-list"><a href="RestApiProps.html#additionalenv" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>additional<wbr/>Env?</span></a>
|
|
2
2
|
<a href="RestApiProps.html#apihostname" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Hostname?</span></a>
|
|
3
3
|
<a href="RestApiProps.html#apiname" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>api<wbr/>Name</span></a>
|
|
4
4
|
<a href="RestApiProps.html#assetcdn" class="tsd-index-link tsd-is-inherited"><svg class="tsd-kind-icon" viewBox="0 0 24 24"><use href="../assets/icons.svg#icon-1024"></use></svg><span>asset<wbr/>Cdn?</span></a>
|
|
@@ -41,9 +41,22 @@ export interface CognitoAuthenticationProps {
|
|
|
41
41
|
*
|
|
42
42
|
* Code has to reside in './src/lambda/cognito.pre-token-generation.ts' with a method 'handler'
|
|
43
43
|
*
|
|
44
|
+
* You can only use preTokenGeneration or preTokenGenerationv2, not both.
|
|
45
|
+
*
|
|
44
46
|
* @default false
|
|
45
47
|
*/
|
|
46
48
|
readonly preTokenGeneration?: boolean;
|
|
49
|
+
/**
|
|
50
|
+
* Attaches a lambda function to the pre token generation trigger
|
|
51
|
+
* new version of the pre token generation trigger with AccessToken support
|
|
52
|
+
*
|
|
53
|
+
* Code has to reside in './src/lambda/cognito.pre-token-generation.ts' with a method 'handler'
|
|
54
|
+
*
|
|
55
|
+
* You can only use preTokenGeneration or preTokenGenerationv2, not both.
|
|
56
|
+
*
|
|
57
|
+
* @default false
|
|
58
|
+
*/
|
|
59
|
+
readonly preTokenGenerationv2?: boolean;
|
|
47
60
|
/**
|
|
48
61
|
* Attaches a lambda function to the pre sign-up trigger
|
|
49
62
|
*
|
|
@@ -53,7 +53,7 @@ class CognitoAuthentication extends constructs_1.Construct {
|
|
|
53
53
|
* @param props - The properties of the CognitoAuthentication construct.
|
|
54
54
|
*/
|
|
55
55
|
constructor(scope, id, props) {
|
|
56
|
-
var _a, _b, _c, _d, _e;
|
|
56
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
57
57
|
super(scope, id);
|
|
58
58
|
this.userpool = new aws_cdk_lib_1.aws_cognito.UserPool(this, 'UserPool', {
|
|
59
59
|
userPoolName: props.userPoolName,
|
|
@@ -114,7 +114,10 @@ class CognitoAuthentication extends constructs_1.Construct {
|
|
|
114
114
|
});
|
|
115
115
|
this.userpool.addTrigger(aws_cdk_lib_1.aws_cognito.UserPoolOperation.CUSTOM_MESSAGE, this.customMessageFunction);
|
|
116
116
|
}
|
|
117
|
-
if ((_b = props.triggers) === null || _b === void 0 ? void 0 : _b.preTokenGeneration) {
|
|
117
|
+
if (((_b = props.triggers) === null || _b === void 0 ? void 0 : _b.preTokenGenerationv2) && ((_c = props.triggers) === null || _c === void 0 ? void 0 : _c.preTokenGeneration)) {
|
|
118
|
+
throw new Error('You can only use preTokenGeneration or preTokenGenerationv2, not both.');
|
|
119
|
+
}
|
|
120
|
+
if ((_d = props.triggers) === null || _d === void 0 ? void 0 : _d.preTokenGeneration) {
|
|
118
121
|
const entryFile = './src/lambda/cognito.pre-token-generation.ts';
|
|
119
122
|
if (!fs.existsSync(entryFile)) {
|
|
120
123
|
fs.writeFileSync(entryFile, `export async function handler(event: AWSLambda.PreTokenGenerationTriggerEvent): Promise<AWSLambda.PreTokenGenerationTriggerEvent> {
|
|
@@ -135,7 +138,28 @@ class CognitoAuthentication extends constructs_1.Construct {
|
|
|
135
138
|
});
|
|
136
139
|
this.userpool.addTrigger(aws_cdk_lib_1.aws_cognito.UserPoolOperation.PRE_TOKEN_GENERATION, this.preTokenGenerationFunction);
|
|
137
140
|
}
|
|
138
|
-
if ((
|
|
141
|
+
if ((_e = props.triggers) === null || _e === void 0 ? void 0 : _e.preTokenGenerationv2) {
|
|
142
|
+
const entryFile = './src/lambda/cognito.pre-token-generation.ts';
|
|
143
|
+
if (!fs.existsSync(entryFile)) {
|
|
144
|
+
fs.writeFileSync(entryFile, `export async function handler(event: AWSLambda.PreTokenGenerationV2TriggerEvent): Promise<AWSLambda.PreTokenGenerationV2TriggerEvent> {
|
|
145
|
+
console.log(JSON.stringify(event));
|
|
146
|
+
|
|
147
|
+
// modify event.response here ...
|
|
148
|
+
|
|
149
|
+
return event;
|
|
150
|
+
}`, {
|
|
151
|
+
encoding: 'utf-8',
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
this.preTokenGenerationFunction = new func_1.LambdaFunction(this, 'PreTokenGenerationFunction', {
|
|
155
|
+
lambdaOptions: {
|
|
156
|
+
timeout: aws_cdk_lib_1.Duration.seconds(5),
|
|
157
|
+
},
|
|
158
|
+
entry: entryFile,
|
|
159
|
+
});
|
|
160
|
+
this.userpool.addTrigger(aws_cdk_lib_1.aws_cognito.UserPoolOperation.PRE_TOKEN_GENERATION_CONFIG, this.preTokenGenerationFunction, aws_cdk_lib_1.aws_cognito.LambdaVersion.V2_0);
|
|
161
|
+
}
|
|
162
|
+
if ((_f = props.triggers) === null || _f === void 0 ? void 0 : _f.preSignUp) {
|
|
139
163
|
const entryFile = './src/lambda/cognito.pre-signup.ts';
|
|
140
164
|
if (!fs.existsSync(entryFile)) {
|
|
141
165
|
fs.writeFileSync(entryFile, `export async function handler(event: AWSLambda.PreSignUpTriggerEvent): Promise<AWSLambda.PreSignUpTriggerEvent> {
|
|
@@ -171,7 +195,7 @@ class CognitoAuthentication extends constructs_1.Construct {
|
|
|
171
195
|
this.userpool.node.defaultChild.emailConfiguration = {
|
|
172
196
|
emailSendingAccount: 'DEVELOPER',
|
|
173
197
|
from: `${props.sesEmailSender.name} <${props.sesEmailSender.email}>`,
|
|
174
|
-
sourceArn: `arn:aws:ses:${(
|
|
198
|
+
sourceArn: `arn:aws:ses:${(_g = props.sesEmailSender.region) !== null && _g !== void 0 ? _g : aws_cdk_lib_1.Stack.of(this).region}:${aws_cdk_lib_1.Stack.of(this).account}:identity/${props.sesEmailSender.email}`,
|
|
175
199
|
};
|
|
176
200
|
}
|
|
177
201
|
for (const groupName in props.groups) {
|
|
@@ -192,7 +216,7 @@ class CognitoAuthentication extends constructs_1.Construct {
|
|
|
192
216
|
...props.identityPool.poolConfig,
|
|
193
217
|
authenticationProviders: {
|
|
194
218
|
userPools: [new identitypool.UserPoolAuthenticationProvider({ userPool: this.userpool })],
|
|
195
|
-
...(
|
|
219
|
+
...(_h = props.identityPool.poolConfig) === null || _h === void 0 ? void 0 : _h.authenticationProviders,
|
|
196
220
|
},
|
|
197
221
|
});
|
|
198
222
|
new aws_cdk_lib_1.CfnOutput(this, outputs_1.CFN_OUTPUT_SUFFIX_AUTH_IDENTITYPOOL_ID, {
|
|
@@ -215,8 +239,14 @@ class CognitoAuthentication extends constructs_1.Construct {
|
|
|
215
239
|
key: `${outputs_1.CFN_OUTPUT_SUFFIX_AUTH_USERPOOL_CLIENTID}${id}`,
|
|
216
240
|
value: client.userPoolClientId,
|
|
217
241
|
});
|
|
242
|
+
if (this.identityPool) {
|
|
243
|
+
this.identityPool.addUserPoolAuthentication(new identitypool.UserPoolAuthenticationProvider({
|
|
244
|
+
userPool: this.userpool,
|
|
245
|
+
userPoolClient: client,
|
|
246
|
+
}));
|
|
247
|
+
}
|
|
218
248
|
return client;
|
|
219
249
|
}
|
|
220
250
|
}
|
|
221
251
|
exports.CognitoAuthentication = CognitoAuthentication;
|
|
222
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uc3RydWN0cy9hdXRoZW50aWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBeUI7QUFDekIsc0ZBQXdFO0FBQ3hFLDZDQUdxQjtBQUVyQiwyQ0FBdUM7QUFDdkMsaUNBQXdDO0FBQ3hDLCtDQUE4UDtBQWlHOVA7OztHQUdHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxzQkFBUztJQTJCbEQ7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQzs7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkseUJBQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNyRCxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7WUFDaEMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUMzQixjQUFjLEVBQUU7Z0JBQ2QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsYUFBYSxFQUFFLEtBQUs7Z0JBQ3BCLGdCQUFnQixFQUFFLEtBQUs7Z0JBQ3ZCLGNBQWMsRUFBRSxLQUFLO2dCQUNyQixnQkFBZ0IsRUFBRSxLQUFLO2FBQ3hCO1lBQ0Qsa0JBQWtCLEVBQUU7Z0JBQ2xCLFFBQVEsRUFBRTtvQkFDUixPQUFPLEVBQUUsSUFBSTtvQkFDYixRQUFRLEVBQUUsSUFBSTtpQkFDZjtnQkFDRCxLQUFLLEVBQUU7b0JBQ0wsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsUUFBUSxFQUFFLElBQUk7aUJBQ2Y7YUFDRjtZQUNELGlCQUFpQixFQUFFLEtBQUs7WUFDeEIsYUFBYSxFQUFFO2dCQUNiLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRCxtQkFBbUIsRUFBRSxLQUFLO1lB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QUcsa0RBQXdDLEdBQUcsRUFBRSxFQUFFO1lBQ3ZELEtBQUssRUFBRSxNQUFNLENBQUMsZ0JBQWdCO1NBQy9CLENBQUMsQ0FBQztRQUNILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FFRjtBQXRORCxzREFzTkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBmcyBmcm9tICdmcyc7XG5pbXBvcnQgKiBhcyBpZGVudGl0eXBvb2wgZnJvbSAnQGF3cy1jZGsvYXdzLWNvZ25pdG8taWRlbnRpdHlwb29sLWFscGhhJztcbmltcG9ydCB7XG4gIGF3c19jb2duaXRvIGFzIGNvZ25pdG8sIENmbk91dHB1dCwgRHVyYXRpb24sIFN0YWNrLFxuXG59IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IFVzZXJQb29sQ2xpZW50LCBVc2VyUG9vbENsaWVudE9wdGlvbnMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY29nbml0byc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IExhbWJkYUZ1bmN0aW9uIH0gZnJvbSAnLi9mdW5jJztcbmltcG9ydCB7IENGTl9PVVRQVVRfU1VGRklYX0FVVEhfSURFTlRJVFlQT09MX0FVVEhfUk9MRUFSTiwgQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfSUQsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfSURFTlRJVFlQT09MX1VOQVVUSF9ST0xFQVJOLCBDRk5fT1VUUFVUX1NVRkZJWF9BVVRIX1VTRVJQT09MSUQsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xfQ0xJRU5USUQgfSBmcm9tICcuLi9zaGFyZWQvb3V0cHV0cyc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNvZ25pdG9BdXRoZW50aWNhdGlvbiB7XG4gIC8qKiBUaGUgQ29nbml0byB1c2VyIHBvb2wgdGhhdCBob2xkcyB1c2VyIGluZm9ybWF0aW9uICovXG4gIHJlYWRvbmx5IHVzZXJwb29sOiBjb2duaXRvLklVc2VyUG9vbDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSnd0QXV0aGVudGljYXRpb24ge1xuICAvKipcbiAgICogVGhlIEpXVCBpc3N1ZXIgZW5kcG9pbnQgVVJMXG4gICAqL1xuICByZWFkb25seSBpc3N1ZXJVcmw6IHN0cmluZztcbiAgLyoqXG4gICAqIFRoZSBlbmRwb2ludCdzIGF1ZGllbmNlLiBXaWxsIG9ubHkgYmUgY2hlY2tlZCBpZiBwcmVzZW50LlxuICAgKi9cbiAgcmVhZG9ubHkgYXVkaWVuY2U/OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIFRoZSBKV1QgZW5kcG9pbnRzIEpXS1Mgc3RvcmUuIFVubGVzcyB0aGlzIGlzIHByb3ZpZGVkLCBPSURDIGRpc2NvdmVyeSB3aWxsIGJlIHVzZWQgdG8gZmluZCB0aGlzLlxuICAgKi9cbiAgcmVhZG9ubHkgandrc1VybD86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDb2duaXRvQXV0aGVudGljYXRpb25Qcm9wcyB7XG5cbiAgLyoqIE5hbWUgZm9yIHRoZSBDb2duaXRvIHVzZXIgcG9vbCAqL1xuICByZWFkb25seSB1c2VyUG9vbE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQ29uZmlndXJlIENvZ25pdG8gTGFtYmRhIHRyaWdnZXJzXG4gICAqL1xuICByZWFkb25seSB0cmlnZ2Vycz86IHtcbiAgICAvKipcbiAgICAgKiBBdHRhY2hlcyBhIGxhbWJkYSBmdW5jdGlvbiB0byB0aGUgY3VzdG9tIG1lc3NhZ2UgdHJpZ2dlclxuICAgICAqXG4gICAgICogQ29kZSBoYXMgdG8gcmVzaWRlIGluICcuL3NyYy9sYW1iZGEvY29nbml0by5jdXN0b20tbWVzc2FnZS50cycgd2l0aCBhIG1ldGhvZCAnaGFuZGxlcidcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgcmVhZG9ubHkgY3VzdG9tTWVzc2FnZXM/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogQXR0YWNoZXMgYSBsYW1iZGEgZnVuY3Rpb24gdG8gdGhlIHByZSB0b2tlbiBnZW5lcmF0aW9uIHRyaWdnZXJcbiAgICAgKlxuICAgICAqIENvZGUgaGFzIHRvIHJlc2lkZSBpbiAnLi9zcmMvbGFtYmRhL2NvZ25pdG8ucHJlLXRva2VuLWdlbmVyYXRpb24udHMnIHdpdGggYSBtZXRob2QgJ2hhbmRsZXInXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IHByZVRva2VuR2VuZXJhdGlvbj86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogQXR0YWNoZXMgYSBsYW1iZGEgZnVuY3Rpb24gdG8gdGhlIHByZSBzaWduLXVwIHRyaWdnZXJcbiAgICAgKlxuICAgICAqIENvZGUgaGFzIHRvIHJlc2lkZSBpbiAnLi9zcmMvbGFtYmRhL2NvZ25pdG8ucHJlLXNpZ251cC50cycgd2l0aCBhIG1ldGhvZCAnaGFuZGxlcidcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgcmVhZG9ubHkgcHJlU2lnblVwPzogYm9vbGVhbjtcbiAgfTtcblxuICAvKipcbiAgICogUHJvcGVydGllcyBvZiB0aGUgQ29nbml0byB1c2VyIHBvb2xcbiAgICovXG4gIHJlYWRvbmx5IHVzZXJQb29sUHJvcHM/OiBjb2duaXRvLlVzZXJQb29sUHJvcHM7XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyZSBTRVMgbWFpbCBzZW5kaW5nXG4gICAqL1xuICByZWFkb25seSBzZXNFbWFpbFNlbmRlcj86IHtcbiAgICAvKipcbiAgICAgKiBBV1MgcmVnaW9uIHRvIHVzZSBmb3IgU0VTXG4gICAgICovXG4gICAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogU2VuZGVyIG5hbWVcbiAgICAgKi9cbiAgICByZWFkb25seSBuYW1lOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogU2VuZGVyIGVtYWlsLiBOZWVkcyB0byBiZSBhbHJlYWR5IHZlcmlmaWVkIGluIFNFU1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGVtYWlsOiBzdHJpbmc7XG4gIH07XG5cbiAgLyoqXG4gICAqIEdyb3VwcyB0byBjcmVhdGUgaW4gQ29nbml0byB1c2VyIHBvb2xcbiAgICogS2V5OiBncm91cCBuYW1lXG4gICAqIFZhbHVlOiBncm91cCBkZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZ3JvdXBzPzoge1xuICAgIHJlYWRvbmx5IFtuYW1lOiBzdHJpbmddOiBzdHJpbmc7XG4gIH07XG5cbiAgLyoqIENyZWF0ZSBhIG5ldyBDb2duaXRvIElkZW50aXR5IFBvb2wgZm9yIHRoZSBVc2VyIHBvb2wgKi9cbiAgcmVhZG9ubHkgaWRlbnRpdHlQb29sPzoge1xuICAgIC8qKiBjb25maWd1cmF0aW9uIG9mIHRoZSBpZGVudGl0eSBwb29sICovXG4gICAgcmVhZG9ubHkgcG9vbENvbmZpZz86IGlkZW50aXR5cG9vbC5JZGVudGl0eVBvb2xQcm9wcztcbiAgfTtcbn1cblxuLyoqXG4gKiBUaGUgQ29nbml0b0F1dGhlbnRpY2F0aW9uIGNvbnN0cnVjdCBzZXRzIHVwIGEgQ29nbml0byBVc2VyIFBvb2wgd2l0aCBvcHRpb25hbCB0cmlnZ2VycyBhbmQgYW4gb3B0aW9uYWwgQ29nbml0byBJZGVudGl0eSBQb29sLlxuICogSXQgYWxzbyBjb25maWd1cmVzIHZhcmlvdXMgTGFtYmRhIHRyaWdnZXJzIGZvciBjdXN0b20gbWVzc2FnZSwgcHJlLXNpZ24gdXAsIGFuZCBwcmUtdG9rZW4gZ2VuZXJhdGlvbiBldmVudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBDb2duaXRvQXV0aGVudGljYXRpb24gZXh0ZW5kcyBDb25zdHJ1Y3QgaW1wbGVtZW50cyBJQ29nbml0b0F1dGhlbnRpY2F0aW9uIHtcblxuICAvKipcbiAgICogVGhlIENvZ25pdG8gVXNlciBQb29sIGZvciB1c2VyIGF1dGhlbnRpY2F0aW9uLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHVzZXJwb29sOiBjb2duaXRvLlVzZXJQb29sO1xuXG4gIC8qKlxuICAgKiBUaGUgb3B0aW9uYWwgQ29nbml0byBJZGVudGl0eSBQb29sIGZvciBmZWRlcmF0ZWQgaWRlbnRpdGllcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpZGVudGl0eVBvb2w/OiBpZGVudGl0eXBvb2wuSWRlbnRpdHlQb29sO1xuXG4gIC8qKlxuICAgKiBUaGUgb3B0aW9uYWwgTGFtYmRhIGZ1bmN0aW9uIGZvciBjdXN0b20gbWVzc2FnZSB0cmlnZ2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGN1c3RvbU1lc3NhZ2VGdW5jdGlvbj86IExhbWJkYUZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgb3B0aW9uYWwgTGFtYmRhIGZ1bmN0aW9uIGZvciBwcmUtc2lnbiB1cCB0cmlnZ2VyLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByZVNpZ25VcEZ1bmN0aW9uPzogTGFtYmRhRnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSBvcHRpb25hbCBMYW1iZGEgZnVuY3Rpb24gZm9yIHByZS10b2tlbiBnZW5lcmF0aW9uIHRyaWdnZXIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJlVG9rZW5HZW5lcmF0aW9uRnVuY3Rpb24/OiBMYW1iZGFGdW5jdGlvbjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhbiBpbnN0YW5jZSBvZiBDb2duaXRvQXV0aGVudGljYXRpb24uXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIFRoZSBzY29wZSBpbiB3aGljaCB0aGlzIGNvbnN0cnVjdCBpcyBkZWZpbmVkLlxuICAgKiBAcGFyYW0gaWQgLSBUaGUgc2NvcGVkIGNvbnN0cnVjdCBJRC5cbiAgICogQHBhcmFtIHByb3BzIC0gVGhlIHByb3BlcnRpZXMgb2YgdGhlIENvZ25pdG9BdXRoZW50aWNhdGlvbiBjb25zdHJ1Y3QuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ29nbml0b0F1dGhlbnRpY2F0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy51c2VycG9vbCA9IG5ldyBjb2duaXRvLlVzZXJQb29sKHRoaXMsICdVc2VyUG9vbCcsIHtcbiAgICAgIHVzZXJQb29sTmFtZTogcHJvcHMudXNlclBvb2xOYW1lLFxuICAgICAgYXV0b1ZlcmlmeTogeyBlbWFpbDogdHJ1ZSB9LFxuICAgICAgcGFzc3dvcmRQb2xpY3k6IHtcbiAgICAgICAgbWluTGVuZ3RoOiAxMixcbiAgICAgICAgcmVxdWlyZURpZ2l0czogZmFsc2UsXG4gICAgICAgIHJlcXVpcmVMb3dlcmNhc2U6IGZhbHNlLFxuICAgICAgICByZXF1aXJlU3ltYm9sczogZmFsc2UsXG4gICAgICAgIHJlcXVpcmVVcHBlcmNhc2U6IGZhbHNlLFxuICAgICAgfSxcbiAgICAgIHN0YW5kYXJkQXR0cmlidXRlczoge1xuICAgICAgICBmdWxsbmFtZToge1xuICAgICAgICAgIG11dGFibGU6IHRydWUsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIGVtYWlsOiB7XG4gICAgICAgICAgbXV0YWJsZTogZmFsc2UsXG4gICAgICAgICAgcmVxdWlyZWQ6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2VsZlNpZ25VcEVuYWJsZWQ6IGZhbHNlLFxuICAgICAgc2lnbkluQWxpYXNlczoge1xuICAgICAgICBlbWFpbDogdHJ1ZSxcbiAgICAgIH0sXG4gICAgICBzaWduSW5DYXNlU2Vuc2l0aXZlOiBmYWxzZSxcbiAgICAgIC4uLnByb3BzLnVzZXJQb29sUHJvcHMsXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMudHJpZ2dlcnM/LmN1c3RvbU1lc3NhZ2VzKSB7XG4gICAgICBjb25zdCBlbnRyeUZpbGUgPSAnLi9zcmMvbGFtYmRhL2NvZ25pdG8uY3VzdG9tLW1lc3NhZ2UudHMnO1xuXG4gICAgICBpZiAoIWZzLmV4aXN0c1N5bmMoZW50cnlGaWxlKSkge1xuICAgICAgICBmcy53cml0ZUZpbGVTeW5jKGVudHJ5RmlsZSwgYGV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuQ3VzdG9tTWVzc2FnZVRyaWdnZXJFdmVudCk6IFByb21pc2U8QVdTTGFtYmRhLkN1c3RvbU1lc3NhZ2VUcmlnZ2VyRXZlbnQ+IHtcbiAgY29uc29sZS5sb2coZXZlbnQpO1xuXG4gIGlmIChldmVudC50cmlnZ2VyU291cmNlID09PSAnQ3VzdG9tTWVzc2FnZV9BZG1pbkNyZWF0ZVVzZXInKSB7XG4gICAgLy8gZXZlbnQucmVzcG9uc2UuZW1haWxTdWJqZWN0ID0gJyc7XG4gICAgLy8gZXZlbnQucmVzcG9uc2UuZW1haWxNZXNzYWdlID0gJyc7XG4gIH0gZWxzZSBpZiAoZXZlbnQudHJpZ2dlclNvdXJjZSA9PT0gJ0N1c3RvbU1lc3NhZ2VfRm9yZ290UGFzc3dvcmQnKSB7XG4gICAgLy8gZXZlbnQucmVzcG9uc2UuZW1haWxTdWJqZWN0ID0gJyc7XG4gICAgLy8gZXZlbnQucmVzcG9uc2UuZW1haWxNZXNzYWdlID0gJyc7XG4gIH0gLy8gLi4uXG5cbiAgcmV0dXJuIGV2ZW50O1xufWAsIHtcbiAgICAgICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY3VzdG9tTWVzc2FnZUZ1bmN0aW9uID0gbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMsICdDdXN0b21NZXNzYWdlRnVuY3Rpb24nLCB7XG4gICAgICAgIGVudHJ5OiBlbnRyeUZpbGUsXG4gICAgICAgIGxhbWJkYU9wdGlvbnM6IHtcbiAgICAgICAgICBidW5kbGluZzoge1xuICAgICAgICAgICAgbG9hZGVyOiB7XG4gICAgICAgICAgICAgICcuaHRtbCc6ICd0ZXh0JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDUpLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICB0aGlzLnVzZXJwb29sLmFkZFRyaWdnZXIoY29nbml0by5Vc2VyUG9vbE9wZXJhdGlvbi5DVVNUT01fTUVTU0FHRSwgdGhpcy5jdXN0b21NZXNzYWdlRnVuY3Rpb24pO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy50cmlnZ2Vycz8ucHJlVG9rZW5HZW5lcmF0aW9uKSB7XG4gICAgICBjb25zdCBlbnRyeUZpbGUgPSAnLi9zcmMvbGFtYmRhL2NvZ25pdG8ucHJlLXRva2VuLWdlbmVyYXRpb24udHMnO1xuXG4gICAgICBpZiAoIWZzLmV4aXN0c1N5bmMoZW50cnlGaWxlKSkge1xuICAgICAgICBmcy53cml0ZUZpbGVTeW5jKGVudHJ5RmlsZSwgYGV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuUHJlVG9rZW5HZW5lcmF0aW9uVHJpZ2dlckV2ZW50KTogUHJvbWlzZTxBV1NMYW1iZGEuUHJlVG9rZW5HZW5lcmF0aW9uVHJpZ2dlckV2ZW50PiB7XG4gIGNvbnNvbGUubG9nKEpTT04uc3RyaW5naWZ5KGV2ZW50KSk7XG5cbiAgLy8gbW9kaWZ5IGV2ZW50LnJlc3BvbnNlIGhlcmUgLi4uXG5cbiAgcmV0dXJuIGV2ZW50O1xufWAsIHtcbiAgICAgICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJlVG9rZW5HZW5lcmF0aW9uRnVuY3Rpb24gPSBuZXcgTGFtYmRhRnVuY3Rpb24odGhpcywgJ1ByZVRva2VuR2VuZXJhdGlvbkZ1bmN0aW9uJywge1xuICAgICAgICBsYW1iZGFPcHRpb25zOiB7XG4gICAgICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcyg1KSxcbiAgICAgICAgfSxcbiAgICAgICAgZW50cnk6IGVudHJ5RmlsZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy51c2VycG9vbC5hZGRUcmlnZ2VyKGNvZ25pdG8uVXNlclBvb2xPcGVyYXRpb24uUFJFX1RPS0VOX0dFTkVSQVRJT04sIHRoaXMucHJlVG9rZW5HZW5lcmF0aW9uRnVuY3Rpb24pO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy50cmlnZ2Vycz8ucHJlU2lnblVwKSB7XG4gICAgICBjb25zdCBlbnRyeUZpbGUgPSAnLi9zcmMvbGFtYmRhL2NvZ25pdG8ucHJlLXNpZ251cC50cyc7XG5cbiAgICAgIGlmICghZnMuZXhpc3RzU3luYyhlbnRyeUZpbGUpKSB7XG4gICAgICAgIGZzLndyaXRlRmlsZVN5bmMoZW50cnlGaWxlLCBgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQ6IEFXU0xhbWJkYS5QcmVTaWduVXBUcmlnZ2VyRXZlbnQpOiBQcm9taXNlPEFXU0xhbWJkYS5QcmVTaWduVXBUcmlnZ2VyRXZlbnQ+IHtcbiAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoZXZlbnQpKTtcblxuICAvLyBDb25maXJtIHRoZSB1c2VyXG4gIC8vIGV2ZW50LnJlc3BvbnNlLmF1dG9Db25maXJtVXNlciA9IHRydWU7XG5cbiAgLy8gU2V0IHRoZSBlbWFpbCBhcyB2ZXJpZmllZCBpZiBpdCBpcyBpbiB0aGUgcmVxdWVzdFxuICAvLyBpZiAoZXZlbnQucmVxdWVzdC51c2VyQXR0cmlidXRlcy5oYXNPd25Qcm9wZXJ0eSgnZW1haWwnKSkge1xuICAvLyAgIGV2ZW50LnJlc3BvbnNlLmF1dG9WZXJpZnlFbWFpbCA9IHRydWU7XG4gIC8vIH1cblxuICAvLyBTZXQgdGhlIHBob25lIG51bWJlciBhcyB2ZXJpZmllZCBpZiBpdCBpcyBpbiB0aGUgcmVxdWVzdFxuICAvLyBpZiAoZXZlbnQucmVxdWVzdC51c2VyQXR0cmlidXRlcy5oYXNPd25Qcm9wZXJ0eSgncGhvbmVfbnVtYmVyJykpIHtcbiAgLy8gICBldmVudC5yZXNwb25zZS5hdXRvVmVyaWZ5UGhvbmUgPSB0cnVlO1xuICAvLyB9XG5cbiAgcmV0dXJuIGV2ZW50O1xufWAsIHtcbiAgICAgICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJlU2lnblVwRnVuY3Rpb24gPSBuZXcgTGFtYmRhRnVuY3Rpb24odGhpcywgJ1ByZVNpZ25VcEZ1bmN0aW9uJywge1xuICAgICAgICBsYW1iZGFPcHRpb25zOiB7XG4gICAgICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcyg1KSxcbiAgICAgICAgfSxcbiAgICAgICAgZW50cnk6IGVudHJ5RmlsZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy51c2VycG9vbC5hZGRUcmlnZ2VyKGNvZ25pdG8uVXNlclBvb2xPcGVyYXRpb24uUFJFX1NJR05fVVAsIHRoaXMucHJlU2lnblVwRnVuY3Rpb24pO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5zZXNFbWFpbFNlbmRlcikge1xuICAgICAgKHRoaXMudXNlcnBvb2wubm9kZS5kZWZhdWx0Q2hpbGQgYXMgY29nbml0by5DZm5Vc2VyUG9vbCkuZW1haWxDb25maWd1cmF0aW9uID0ge1xuICAgICAgICBlbWFpbFNlbmRpbmdBY2NvdW50OiAnREVWRUxPUEVSJyxcbiAgICAgICAgZnJvbTogYCR7cHJvcHMuc2VzRW1haWxTZW5kZXIubmFtZX0gPCR7cHJvcHMuc2VzRW1haWxTZW5kZXIuZW1haWx9PmAsXG4gICAgICAgIHNvdXJjZUFybjogYGFybjphd3M6c2VzOiR7cHJvcHMuc2VzRW1haWxTZW5kZXIucmVnaW9uID8/IFN0YWNrLm9mKHRoaXMpLnJlZ2lvbn06JHtTdGFjay5vZih0aGlzKS5hY2NvdW50fTppZGVudGl0eS8ke3Byb3BzLnNlc0VtYWlsU2VuZGVyLmVtYWlsfWAsXG4gICAgICB9O1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgZ3JvdXBOYW1lIGluIHByb3BzLmdyb3Vwcykge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcy5ncm91cHMsIGdyb3VwTmFtZSkpIHtcbiAgICAgICAgY29uc3QgZ3JvdXBEZXNjcmlwdGlvbiA9IHByb3BzLmdyb3Vwc1tncm91cE5hbWVdO1xuICAgICAgICBuZXcgY29nbml0by5DZm5Vc2VyUG9vbEdyb3VwKHRoaXMsIGBHcm91cCR7Z3JvdXBOYW1lfWAsIHtcbiAgICAgICAgICB1c2VyUG9vbElkOiB0aGlzLnVzZXJwb29sLnVzZXJQb29sSWQsXG4gICAgICAgICAgZ3JvdXBOYW1lLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBncm91cERlc2NyaXB0aW9uLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xJRCwgeyBrZXk6IENGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xJRCwgdmFsdWU6IHRoaXMudXNlcnBvb2wudXNlclBvb2xJZCB9KTtcblxuICAgIGlmIChwcm9wcy5pZGVudGl0eVBvb2wpIHtcbiAgICAgIHRoaXMuaWRlbnRpdHlQb29sID0gbmV3IGlkZW50aXR5cG9vbC5JZGVudGl0eVBvb2wodGhpcywgJ0lkZW50aXR5UG9vbCcsIHtcbiAgICAgICAgYWxsb3dVbmF1dGhlbnRpY2F0ZWRJZGVudGl0aWVzOiB0cnVlLFxuICAgICAgICBpZGVudGl0eVBvb2xOYW1lOiBwcm9wcy51c2VyUG9vbE5hbWUgKyAnLWlkZW50aXR5JyxcbiAgICAgICAgLi4ucHJvcHMuaWRlbnRpdHlQb29sLnBvb2xDb25maWcsXG4gICAgICAgIGF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzOiB7XG4gICAgICAgICAgdXNlclBvb2xzOiBbbmV3IGlkZW50aXR5cG9vbC5Vc2VyUG9vbEF1dGhlbnRpY2F0aW9uUHJvdmlkZXIoeyB1c2VyUG9vbDogdGhpcy51c2VycG9vbCB9KV0sXG4gICAgICAgICAgLi4ucHJvcHMuaWRlbnRpdHlQb29sLnBvb2xDb25maWc/LmF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfSURFTlRJVFlQT09MX0lELCB7XG4gICAgICAgIGtleTogQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfSUQsXG4gICAgICAgIHZhbHVlOiB0aGlzLmlkZW50aXR5UG9vbC5pZGVudGl0eVBvb2xJZCxcbiAgICAgIH0pO1xuICAgICAgbmV3IENmbk91dHB1dCh0aGlzLCBDRk5fT1VUUFVUX1NVRkZJWF9BVVRIX0lERU5USVRZUE9PTF9BVVRIX1JPTEVBUk4sIHtcbiAgICAgICAga2V5OiBDRk5fT1VUUFVUX1NVRkZJWF9BVVRIX0lERU5USVRZUE9PTF9BVVRIX1JPTEVBUk4sXG4gICAgICAgIHZhbHVlOiB0aGlzLmlkZW50aXR5UG9vbC5hdXRoZW50aWNhdGVkUm9sZS5yb2xlQXJuLFxuICAgICAgfSk7XG4gICAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfSURFTlRJVFlQT09MX1VOQVVUSF9ST0xFQVJOLCB7XG4gICAgICAgIGtleTogQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfVU5BVVRIX1JPTEVBUk4sXG4gICAgICAgIHZhbHVlOiB0aGlzLmlkZW50aXR5UG9vbC51bmF1dGhlbnRpY2F0ZWRSb2xlLnJvbGVBcm4sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYWRkVXNlclBvb2xDbGllbnQoaWQ6IHN0cmluZywgb3B0aW9uczogVXNlclBvb2xDbGllbnRPcHRpb25zKTogVXNlclBvb2xDbGllbnQge1xuICAgIGNvbnN0IGNsaWVudCA9IHRoaXMudXNlcnBvb2wuYWRkQ2xpZW50KGlkLCBvcHRpb25zKTtcbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke0NGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xfQ0xJRU5USUR9JHtpZH1gLCB7XG4gICAgICBrZXk6IGAke0NGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xfQ0xJRU5USUR9JHtpZH1gLFxuICAgICAgdmFsdWU6IGNsaWVudC51c2VyUG9vbENsaWVudElkLFxuICAgIH0pO1xuICAgIHJldHVybiBjbGllbnQ7XG4gIH1cblxufSJdfQ==
|
|
252
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aGVudGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uc3RydWN0cy9hdXRoZW50aWNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSx1Q0FBeUI7QUFDekIsc0ZBQXdFO0FBQ3hFLDZDQUdxQjtBQUVyQiwyQ0FBdUM7QUFDdkMsaUNBQXdDO0FBQ3hDLCtDQUE4UDtBQWdIOVA7OztHQUdHO0FBQ0gsTUFBYSxxQkFBc0IsU0FBUSxzQkFBUztJQTJCbEQ7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFpQzs7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUkseUJBQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRTtZQUNyRCxZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVk7WUFDaEMsVUFBVSxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtZQUMzQixjQUFjLEVBQUU7Z0JBQ2QsU0FBUyxFQUFFLEVBQUU7Z0JBQ2IsYUFBYSxFQUFFLEtBQUs7Z0JBQ3BCLGdCQUFnQixFQUFFLEtBQUs7Z0JBQ3ZCLGNBQWMsRUFBRSxLQUFLO2dCQUNyQixnQkFBZ0IsRUFBRSxLQUFLO2FBQ3hCO1lBQ0Qsa0JBQWtCLEVBQUU7Z0JBQ2xCLFFBQVEsRUFBRTtvQkFDUixPQUFPLEVBQUUsSUFBSTtvQkFDYixRQUFRLEVBQUUsSUFBSTtpQkFDZjtnQkFDRCxLQUFLLEVBQUU7b0JBQ0wsT0FBTyxFQUFFLEtBQUs7b0JBQ2QsUUFBUSxFQUFFLElBQUk7aUJBQ2Y7YUFDRjtZQUNELGlCQUFpQixFQUFFLEtBQUs7WUFDeEIsYUFBYSxFQUFFO2dCQUNiLEtBQUssRUFBRSxJQUFJO2FBQ1o7WUFDRCxtQkFBbUIsRUFBRSxLQUFLO1lB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RSxJQUFJLENBQUMsUUFBUTtnQkFDdkIsY0FBYyxFQUFFLE1BQU07YUFDdkIsQ0FBQyxDQUNILENBQUM7UUFDSixDQUFDO1FBRUQsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztDQUVGO0FBNVBELHNEQTRQQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIGlkZW50aXR5cG9vbCBmcm9tICdAYXdzLWNkay9hd3MtY29nbml0by1pZGVudGl0eXBvb2wtYWxwaGEnO1xuaW1wb3J0IHtcbiAgYXdzX2NvZ25pdG8gYXMgY29nbml0bywgQ2ZuT3V0cHV0LCBEdXJhdGlvbiwgU3RhY2ssXG5cbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgVXNlclBvb2xDbGllbnQsIFVzZXJQb29sQ2xpZW50T3B0aW9ucyB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jb2duaXRvJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgTGFtYmRhRnVuY3Rpb24gfSBmcm9tICcuL2Z1bmMnO1xuaW1wb3J0IHsgQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfQVVUSF9ST0xFQVJOLCBDRk5fT1VUUFVUX1NVRkZJWF9BVVRIX0lERU5USVRZUE9PTF9JRCwgQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfVU5BVVRIX1JPTEVBUk4sIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xJRCwgQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9VU0VSUE9PTF9DTElFTlRJRCB9IGZyb20gJy4uL3NoYXJlZC9vdXRwdXRzJztcblxuZXhwb3J0IGludGVyZmFjZSBJQ29nbml0b0F1dGhlbnRpY2F0aW9uIHtcbiAgLyoqIFRoZSBDb2duaXRvIHVzZXIgcG9vbCB0aGF0IGhvbGRzIHVzZXIgaW5mb3JtYXRpb24gKi9cbiAgcmVhZG9ubHkgdXNlcnBvb2w6IGNvZ25pdG8uSVVzZXJQb29sO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIElKd3RBdXRoZW50aWNhdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgSldUIGlzc3VlciBlbmRwb2ludCBVUkxcbiAgICovXG4gIHJlYWRvbmx5IGlzc3VlclVybDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIGVuZHBvaW50J3MgYXVkaWVuY2UuIFdpbGwgb25seSBiZSBjaGVja2VkIGlmIHByZXNlbnQuXG4gICAqL1xuICByZWFkb25seSBhdWRpZW5jZT86IHN0cmluZ1tdO1xuICAvKipcbiAgICogVGhlIEpXVCBlbmRwb2ludHMgSldLUyBzdG9yZS4gVW5sZXNzIHRoaXMgaXMgcHJvdmlkZWQsIE9JREMgZGlzY292ZXJ5IHdpbGwgYmUgdXNlZCB0byBmaW5kIHRoaXMuXG4gICAqL1xuICByZWFkb25seSBqd2tzVXJsPzogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIENvZ25pdG9BdXRoZW50aWNhdGlvblByb3BzIHtcblxuICAvKiogTmFtZSBmb3IgdGhlIENvZ25pdG8gdXNlciBwb29sICovXG4gIHJlYWRvbmx5IHVzZXJQb29sTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDb25maWd1cmUgQ29nbml0byBMYW1iZGEgdHJpZ2dlcnNcbiAgICovXG4gIHJlYWRvbmx5IHRyaWdnZXJzPzoge1xuICAgIC8qKlxuICAgICAqIEF0dGFjaGVzIGEgbGFtYmRhIGZ1bmN0aW9uIHRvIHRoZSBjdXN0b20gbWVzc2FnZSB0cmlnZ2VyXG4gICAgICpcbiAgICAgKiBDb2RlIGhhcyB0byByZXNpZGUgaW4gJy4vc3JjL2xhbWJkYS9jb2duaXRvLmN1c3RvbS1tZXNzYWdlLnRzJyB3aXRoIGEgbWV0aG9kICdoYW5kbGVyJ1xuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICByZWFkb25seSBjdXN0b21NZXNzYWdlcz86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBBdHRhY2hlcyBhIGxhbWJkYSBmdW5jdGlvbiB0byB0aGUgcHJlIHRva2VuIGdlbmVyYXRpb24gdHJpZ2dlclxuICAgICAqXG4gICAgICogQ29kZSBoYXMgdG8gcmVzaWRlIGluICcuL3NyYy9sYW1iZGEvY29nbml0by5wcmUtdG9rZW4tZ2VuZXJhdGlvbi50cycgd2l0aCBhIG1ldGhvZCAnaGFuZGxlcidcbiAgICAgKlxuICAgICAqIFlvdSBjYW4gb25seSB1c2UgcHJlVG9rZW5HZW5lcmF0aW9uIG9yIHByZVRva2VuR2VuZXJhdGlvbnYyLCBub3QgYm90aC5cbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgcmVhZG9ubHkgcHJlVG9rZW5HZW5lcmF0aW9uPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIEF0dGFjaGVzIGEgbGFtYmRhIGZ1bmN0aW9uIHRvIHRoZSBwcmUgdG9rZW4gZ2VuZXJhdGlvbiB0cmlnZ2VyXG4gICAgICogbmV3IHZlcnNpb24gb2YgdGhlIHByZSB0b2tlbiBnZW5lcmF0aW9uIHRyaWdnZXIgd2l0aCBBY2Nlc3NUb2tlbiBzdXBwb3J0XG4gICAgICpcbiAgICAgKiBDb2RlIGhhcyB0byByZXNpZGUgaW4gJy4vc3JjL2xhbWJkYS9jb2duaXRvLnByZS10b2tlbi1nZW5lcmF0aW9uLnRzJyB3aXRoIGEgbWV0aG9kICdoYW5kbGVyJ1xuICAgICAqXG4gICAgICogWW91IGNhbiBvbmx5IHVzZSBwcmVUb2tlbkdlbmVyYXRpb24gb3IgcHJlVG9rZW5HZW5lcmF0aW9udjIsIG5vdCBib3RoLlxuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICByZWFkb25seSBwcmVUb2tlbkdlbmVyYXRpb252Mj86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBBdHRhY2hlcyBhIGxhbWJkYSBmdW5jdGlvbiB0byB0aGUgcHJlIHNpZ24tdXAgdHJpZ2dlclxuICAgICAqXG4gICAgICogQ29kZSBoYXMgdG8gcmVzaWRlIGluICcuL3NyYy9sYW1iZGEvY29nbml0by5wcmUtc2lnbnVwLnRzJyB3aXRoIGEgbWV0aG9kICdoYW5kbGVyJ1xuICAgICAqXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICByZWFkb25seSBwcmVTaWduVXA/OiBib29sZWFuO1xuICB9O1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIG9mIHRoZSBDb2duaXRvIHVzZXIgcG9vbFxuICAgKi9cbiAgcmVhZG9ubHkgdXNlclBvb2xQcm9wcz86IGNvZ25pdG8uVXNlclBvb2xQcm9wcztcblxuICAvKipcbiAgICogQ29uZmlndXJlIFNFUyBtYWlsIHNlbmRpbmdcbiAgICovXG4gIHJlYWRvbmx5IHNlc0VtYWlsU2VuZGVyPzoge1xuICAgIC8qKlxuICAgICAqIEFXUyByZWdpb24gdG8gdXNlIGZvciBTRVNcbiAgICAgKi9cbiAgICByZWFkb25seSByZWdpb246IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBTZW5kZXIgbmFtZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBTZW5kZXIgZW1haWwuIE5lZWRzIHRvIGJlIGFscmVhZHkgdmVyaWZpZWQgaW4gU0VTXG4gICAgICovXG4gICAgcmVhZG9ubHkgZW1haWw6IHN0cmluZztcbiAgfTtcblxuICAvKipcbiAgICogR3JvdXBzIHRvIGNyZWF0ZSBpbiBDb2duaXRvIHVzZXIgcG9vbFxuICAgKiBLZXk6IGdyb3VwIG5hbWVcbiAgICogVmFsdWU6IGdyb3VwIGRlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBncm91cHM/OiB7XG4gICAgcmVhZG9ubHkgW25hbWU6IHN0cmluZ106IHN0cmluZztcbiAgfTtcblxuICAvKiogQ3JlYXRlIGEgbmV3IENvZ25pdG8gSWRlbnRpdHkgUG9vbCBmb3IgdGhlIFVzZXIgcG9vbCAqL1xuICByZWFkb25seSBpZGVudGl0eVBvb2w/OiB7XG4gICAgLyoqIGNvbmZpZ3VyYXRpb24gb2YgdGhlIGlkZW50aXR5IHBvb2wgKi9cbiAgICByZWFkb25seSBwb29sQ29uZmlnPzogaWRlbnRpdHlwb29sLklkZW50aXR5UG9vbFByb3BzO1xuICB9O1xufVxuXG4vKipcbiAqIFRoZSBDb2duaXRvQXV0aGVudGljYXRpb24gY29uc3RydWN0IHNldHMgdXAgYSBDb2duaXRvIFVzZXIgUG9vbCB3aXRoIG9wdGlvbmFsIHRyaWdnZXJzIGFuZCBhbiBvcHRpb25hbCBDb2duaXRvIElkZW50aXR5IFBvb2wuXG4gKiBJdCBhbHNvIGNvbmZpZ3VyZXMgdmFyaW91cyBMYW1iZGEgdHJpZ2dlcnMgZm9yIGN1c3RvbSBtZXNzYWdlLCBwcmUtc2lnbiB1cCwgYW5kIHByZS10b2tlbiBnZW5lcmF0aW9uIGV2ZW50cy5cbiAqL1xuZXhwb3J0IGNsYXNzIENvZ25pdG9BdXRoZW50aWNhdGlvbiBleHRlbmRzIENvbnN0cnVjdCBpbXBsZW1lbnRzIElDb2duaXRvQXV0aGVudGljYXRpb24ge1xuXG4gIC8qKlxuICAgKiBUaGUgQ29nbml0byBVc2VyIFBvb2wgZm9yIHVzZXIgYXV0aGVudGljYXRpb24uXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgdXNlcnBvb2w6IGNvZ25pdG8uVXNlclBvb2w7XG5cbiAgLyoqXG4gICAqIFRoZSBvcHRpb25hbCBDb2duaXRvIElkZW50aXR5IFBvb2wgZm9yIGZlZGVyYXRlZCBpZGVudGl0aWVzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGlkZW50aXR5UG9vbD86IGlkZW50aXR5cG9vbC5JZGVudGl0eVBvb2w7XG5cbiAgLyoqXG4gICAqIFRoZSBvcHRpb25hbCBMYW1iZGEgZnVuY3Rpb24gZm9yIGN1c3RvbSBtZXNzYWdlIHRyaWdnZXIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgY3VzdG9tTWVzc2FnZUZ1bmN0aW9uPzogTGFtYmRhRnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSBvcHRpb25hbCBMYW1iZGEgZnVuY3Rpb24gZm9yIHByZS1zaWduIHVwIHRyaWdnZXIuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJlU2lnblVwRnVuY3Rpb24/OiBMYW1iZGFGdW5jdGlvbjtcblxuICAvKipcbiAgICogVGhlIG9wdGlvbmFsIExhbWJkYSBmdW5jdGlvbiBmb3IgcHJlLXRva2VuIGdlbmVyYXRpb24gdHJpZ2dlci5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcmVUb2tlbkdlbmVyYXRpb25GdW5jdGlvbj86IExhbWJkYUZ1bmN0aW9uO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIENvZ25pdG9BdXRoZW50aWNhdGlvbi5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gVGhlIHNjb3BlIGluIHdoaWNoIHRoaXMgY29uc3RydWN0IGlzIGRlZmluZWQuXG4gICAqIEBwYXJhbSBpZCAtIFRoZSBzY29wZWQgY29uc3RydWN0IElELlxuICAgKiBAcGFyYW0gcHJvcHMgLSBUaGUgcHJvcGVydGllcyBvZiB0aGUgQ29nbml0b0F1dGhlbnRpY2F0aW9uIGNvbnN0cnVjdC5cbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDb2duaXRvQXV0aGVudGljYXRpb25Qcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLnVzZXJwb29sID0gbmV3IGNvZ25pdG8uVXNlclBvb2wodGhpcywgJ1VzZXJQb29sJywge1xuICAgICAgdXNlclBvb2xOYW1lOiBwcm9wcy51c2VyUG9vbE5hbWUsXG4gICAgICBhdXRvVmVyaWZ5OiB7IGVtYWlsOiB0cnVlIH0sXG4gICAgICBwYXNzd29yZFBvbGljeToge1xuICAgICAgICBtaW5MZW5ndGg6IDEyLFxuICAgICAgICByZXF1aXJlRGlnaXRzOiBmYWxzZSxcbiAgICAgICAgcmVxdWlyZUxvd2VyY2FzZTogZmFsc2UsXG4gICAgICAgIHJlcXVpcmVTeW1ib2xzOiBmYWxzZSxcbiAgICAgICAgcmVxdWlyZVVwcGVyY2FzZTogZmFsc2UsXG4gICAgICB9LFxuICAgICAgc3RhbmRhcmRBdHRyaWJ1dGVzOiB7XG4gICAgICAgIGZ1bGxuYW1lOiB7XG4gICAgICAgICAgbXV0YWJsZTogdHJ1ZSxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgICAgZW1haWw6IHtcbiAgICAgICAgICBtdXRhYmxlOiBmYWxzZSxcbiAgICAgICAgICByZXF1aXJlZDogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICBzZWxmU2lnblVwRW5hYmxlZDogZmFsc2UsXG4gICAgICBzaWduSW5BbGlhc2VzOiB7XG4gICAgICAgIGVtYWlsOiB0cnVlLFxuICAgICAgfSxcbiAgICAgIHNpZ25JbkNhc2VTZW5zaXRpdmU6IGZhbHNlLFxuICAgICAgLi4ucHJvcHMudXNlclBvb2xQcm9wcyxcbiAgICB9KTtcblxuICAgIGlmIChwcm9wcy50cmlnZ2Vycz8uY3VzdG9tTWVzc2FnZXMpIHtcbiAgICAgIGNvbnN0IGVudHJ5RmlsZSA9ICcuL3NyYy9sYW1iZGEvY29nbml0by5jdXN0b20tbWVzc2FnZS50cyc7XG5cbiAgICAgIGlmICghZnMuZXhpc3RzU3luYyhlbnRyeUZpbGUpKSB7XG4gICAgICAgIGZzLndyaXRlRmlsZVN5bmMoZW50cnlGaWxlLCBgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQ6IEFXU0xhbWJkYS5DdXN0b21NZXNzYWdlVHJpZ2dlckV2ZW50KTogUHJvbWlzZTxBV1NMYW1iZGEuQ3VzdG9tTWVzc2FnZVRyaWdnZXJFdmVudD4ge1xuICBjb25zb2xlLmxvZyhldmVudCk7XG5cbiAgaWYgKGV2ZW50LnRyaWdnZXJTb3VyY2UgPT09ICdDdXN0b21NZXNzYWdlX0FkbWluQ3JlYXRlVXNlcicpIHtcbiAgICAvLyBldmVudC5yZXNwb25zZS5lbWFpbFN1YmplY3QgPSAnJztcbiAgICAvLyBldmVudC5yZXNwb25zZS5lbWFpbE1lc3NhZ2UgPSAnJztcbiAgfSBlbHNlIGlmIChldmVudC50cmlnZ2VyU291cmNlID09PSAnQ3VzdG9tTWVzc2FnZV9Gb3Jnb3RQYXNzd29yZCcpIHtcbiAgICAvLyBldmVudC5yZXNwb25zZS5lbWFpbFN1YmplY3QgPSAnJztcbiAgICAvLyBldmVudC5yZXNwb25zZS5lbWFpbE1lc3NhZ2UgPSAnJztcbiAgfSAvLyAuLi5cblxuICByZXR1cm4gZXZlbnQ7XG59YCwge1xuICAgICAgICAgIGVuY29kaW5nOiAndXRmLTgnLFxuICAgICAgICB9KTtcbiAgICAgIH1cblxuICAgICAgdGhpcy5jdXN0b21NZXNzYWdlRnVuY3Rpb24gPSBuZXcgTGFtYmRhRnVuY3Rpb24odGhpcywgJ0N1c3RvbU1lc3NhZ2VGdW5jdGlvbicsIHtcbiAgICAgICAgZW50cnk6IGVudHJ5RmlsZSxcbiAgICAgICAgbGFtYmRhT3B0aW9uczoge1xuICAgICAgICAgIGJ1bmRsaW5nOiB7XG4gICAgICAgICAgICBsb2FkZXI6IHtcbiAgICAgICAgICAgICAgJy5odG1sJzogJ3RleHQnLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoNSksXG4gICAgICAgIH0sXG4gICAgICB9KTtcbiAgICAgIHRoaXMudXNlcnBvb2wuYWRkVHJpZ2dlcihjb2duaXRvLlVzZXJQb29sT3BlcmF0aW9uLkNVU1RPTV9NRVNTQUdFLCB0aGlzLmN1c3RvbU1lc3NhZ2VGdW5jdGlvbik7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLnRyaWdnZXJzPy5wcmVUb2tlbkdlbmVyYXRpb252MiAmJiBwcm9wcy50cmlnZ2Vycz8ucHJlVG9rZW5HZW5lcmF0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1lvdSBjYW4gb25seSB1c2UgcHJlVG9rZW5HZW5lcmF0aW9uIG9yIHByZVRva2VuR2VuZXJhdGlvbnYyLCBub3QgYm90aC4nKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMudHJpZ2dlcnM/LnByZVRva2VuR2VuZXJhdGlvbikge1xuICAgICAgY29uc3QgZW50cnlGaWxlID0gJy4vc3JjL2xhbWJkYS9jb2duaXRvLnByZS10b2tlbi1nZW5lcmF0aW9uLnRzJztcblxuICAgICAgaWYgKCFmcy5leGlzdHNTeW5jKGVudHJ5RmlsZSkpIHtcbiAgICAgICAgZnMud3JpdGVGaWxlU3luYyhlbnRyeUZpbGUsIGBleHBvcnQgYXN5bmMgZnVuY3Rpb24gaGFuZGxlcihldmVudDogQVdTTGFtYmRhLlByZVRva2VuR2VuZXJhdGlvblRyaWdnZXJFdmVudCk6IFByb21pc2U8QVdTTGFtYmRhLlByZVRva2VuR2VuZXJhdGlvblRyaWdnZXJFdmVudD4ge1xuICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShldmVudCkpO1xuXG4gIC8vIG1vZGlmeSBldmVudC5yZXNwb25zZSBoZXJlIC4uLlxuXG4gIHJldHVybiBldmVudDtcbn1gLCB7XG4gICAgICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnByZVRva2VuR2VuZXJhdGlvbkZ1bmN0aW9uID0gbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMsICdQcmVUb2tlbkdlbmVyYXRpb25GdW5jdGlvbicsIHtcbiAgICAgICAgbGFtYmRhT3B0aW9uczoge1xuICAgICAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoNSksXG4gICAgICAgIH0sXG4gICAgICAgIGVudHJ5OiBlbnRyeUZpbGUsXG4gICAgICB9KTtcbiAgICAgIHRoaXMudXNlcnBvb2wuYWRkVHJpZ2dlcihjb2duaXRvLlVzZXJQb29sT3BlcmF0aW9uLlBSRV9UT0tFTl9HRU5FUkFUSU9OLCB0aGlzLnByZVRva2VuR2VuZXJhdGlvbkZ1bmN0aW9uKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMudHJpZ2dlcnM/LnByZVRva2VuR2VuZXJhdGlvbnYyKSB7XG4gICAgICBjb25zdCBlbnRyeUZpbGUgPSAnLi9zcmMvbGFtYmRhL2NvZ25pdG8ucHJlLXRva2VuLWdlbmVyYXRpb24udHMnO1xuXG4gICAgICBpZiAoIWZzLmV4aXN0c1N5bmMoZW50cnlGaWxlKSkge1xuICAgICAgICBmcy53cml0ZUZpbGVTeW5jKGVudHJ5RmlsZSwgYGV4cG9ydCBhc3luYyBmdW5jdGlvbiBoYW5kbGVyKGV2ZW50OiBBV1NMYW1iZGEuUHJlVG9rZW5HZW5lcmF0aW9uVjJUcmlnZ2VyRXZlbnQpOiBQcm9taXNlPEFXU0xhbWJkYS5QcmVUb2tlbkdlbmVyYXRpb25WMlRyaWdnZXJFdmVudD4ge1xuICBjb25zb2xlLmxvZyhKU09OLnN0cmluZ2lmeShldmVudCkpO1xuXG4gIC8vIG1vZGlmeSBldmVudC5yZXNwb25zZSBoZXJlIC4uLlxuXG4gIHJldHVybiBldmVudDtcbn1gLCB7XG4gICAgICAgICAgZW5jb2Rpbmc6ICd1dGYtOCcsXG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICB0aGlzLnByZVRva2VuR2VuZXJhdGlvbkZ1bmN0aW9uID0gbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMsICdQcmVUb2tlbkdlbmVyYXRpb25GdW5jdGlvbicsIHtcbiAgICAgICAgbGFtYmRhT3B0aW9uczoge1xuICAgICAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoNSksXG4gICAgICAgIH0sXG4gICAgICAgIGVudHJ5OiBlbnRyeUZpbGUsXG4gICAgICB9KTtcbiAgICAgIHRoaXMudXNlcnBvb2wuYWRkVHJpZ2dlcihjb2duaXRvLlVzZXJQb29sT3BlcmF0aW9uLlBSRV9UT0tFTl9HRU5FUkFUSU9OX0NPTkZJRywgdGhpcy5wcmVUb2tlbkdlbmVyYXRpb25GdW5jdGlvbiwgY29nbml0by5MYW1iZGFWZXJzaW9uLlYyXzApO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy50cmlnZ2Vycz8ucHJlU2lnblVwKSB7XG4gICAgICBjb25zdCBlbnRyeUZpbGUgPSAnLi9zcmMvbGFtYmRhL2NvZ25pdG8ucHJlLXNpZ251cC50cyc7XG5cbiAgICAgIGlmICghZnMuZXhpc3RzU3luYyhlbnRyeUZpbGUpKSB7XG4gICAgICAgIGZzLndyaXRlRmlsZVN5bmMoZW50cnlGaWxlLCBgZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGhhbmRsZXIoZXZlbnQ6IEFXU0xhbWJkYS5QcmVTaWduVXBUcmlnZ2VyRXZlbnQpOiBQcm9taXNlPEFXU0xhbWJkYS5QcmVTaWduVXBUcmlnZ2VyRXZlbnQ+IHtcbiAgY29uc29sZS5sb2coSlNPTi5zdHJpbmdpZnkoZXZlbnQpKTtcblxuICAvLyBDb25maXJtIHRoZSB1c2VyXG4gIC8vIGV2ZW50LnJlc3BvbnNlLmF1dG9Db25maXJtVXNlciA9IHRydWU7XG5cbiAgLy8gU2V0IHRoZSBlbWFpbCBhcyB2ZXJpZmllZCBpZiBpdCBpcyBpbiB0aGUgcmVxdWVzdFxuICAvLyBpZiAoZXZlbnQucmVxdWVzdC51c2VyQXR0cmlidXRlcy5oYXNPd25Qcm9wZXJ0eSgnZW1haWwnKSkge1xuICAvLyAgIGV2ZW50LnJlc3BvbnNlLmF1dG9WZXJpZnlFbWFpbCA9IHRydWU7XG4gIC8vIH1cblxuICAvLyBTZXQgdGhlIHBob25lIG51bWJlciBhcyB2ZXJpZmllZCBpZiBpdCBpcyBpbiB0aGUgcmVxdWVzdFxuICAvLyBpZiAoZXZlbnQucmVxdWVzdC51c2VyQXR0cmlidXRlcy5oYXNPd25Qcm9wZXJ0eSgncGhvbmVfbnVtYmVyJykpIHtcbiAgLy8gICBldmVudC5yZXNwb25zZS5hdXRvVmVyaWZ5UGhvbmUgPSB0cnVlO1xuICAvLyB9XG5cbiAgcmV0dXJuIGV2ZW50O1xufWAsIHtcbiAgICAgICAgICBlbmNvZGluZzogJ3V0Zi04JyxcbiAgICAgICAgfSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMucHJlU2lnblVwRnVuY3Rpb24gPSBuZXcgTGFtYmRhRnVuY3Rpb24odGhpcywgJ1ByZVNpZ25VcEZ1bmN0aW9uJywge1xuICAgICAgICBsYW1iZGFPcHRpb25zOiB7XG4gICAgICAgICAgdGltZW91dDogRHVyYXRpb24uc2Vjb25kcyg1KSxcbiAgICAgICAgfSxcbiAgICAgICAgZW50cnk6IGVudHJ5RmlsZSxcbiAgICAgIH0pO1xuICAgICAgdGhpcy51c2VycG9vbC5hZGRUcmlnZ2VyKGNvZ25pdG8uVXNlclBvb2xPcGVyYXRpb24uUFJFX1NJR05fVVAsIHRoaXMucHJlU2lnblVwRnVuY3Rpb24pO1xuICAgIH1cblxuICAgIGlmIChwcm9wcy5zZXNFbWFpbFNlbmRlcikge1xuICAgICAgKHRoaXMudXNlcnBvb2wubm9kZS5kZWZhdWx0Q2hpbGQgYXMgY29nbml0by5DZm5Vc2VyUG9vbCkuZW1haWxDb25maWd1cmF0aW9uID0ge1xuICAgICAgICBlbWFpbFNlbmRpbmdBY2NvdW50OiAnREVWRUxPUEVSJyxcbiAgICAgICAgZnJvbTogYCR7cHJvcHMuc2VzRW1haWxTZW5kZXIubmFtZX0gPCR7cHJvcHMuc2VzRW1haWxTZW5kZXIuZW1haWx9PmAsXG4gICAgICAgIHNvdXJjZUFybjogYGFybjphd3M6c2VzOiR7cHJvcHMuc2VzRW1haWxTZW5kZXIucmVnaW9uID8/IFN0YWNrLm9mKHRoaXMpLnJlZ2lvbn06JHtTdGFjay5vZih0aGlzKS5hY2NvdW50fTppZGVudGl0eS8ke3Byb3BzLnNlc0VtYWlsU2VuZGVyLmVtYWlsfWAsXG4gICAgICB9O1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgZ3JvdXBOYW1lIGluIHByb3BzLmdyb3Vwcykge1xuICAgICAgaWYgKE9iamVjdC5wcm90b3R5cGUuaGFzT3duUHJvcGVydHkuY2FsbChwcm9wcy5ncm91cHMsIGdyb3VwTmFtZSkpIHtcbiAgICAgICAgY29uc3QgZ3JvdXBEZXNjcmlwdGlvbiA9IHByb3BzLmdyb3Vwc1tncm91cE5hbWVdO1xuICAgICAgICBuZXcgY29nbml0by5DZm5Vc2VyUG9vbEdyb3VwKHRoaXMsIGBHcm91cCR7Z3JvdXBOYW1lfWAsIHtcbiAgICAgICAgICB1c2VyUG9vbElkOiB0aGlzLnVzZXJwb29sLnVzZXJQb29sSWQsXG4gICAgICAgICAgZ3JvdXBOYW1lLFxuICAgICAgICAgIGRlc2NyaXB0aW9uOiBncm91cERlc2NyaXB0aW9uLFxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xJRCwgeyBrZXk6IENGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xJRCwgdmFsdWU6IHRoaXMudXNlcnBvb2wudXNlclBvb2xJZCB9KTtcblxuICAgIGlmIChwcm9wcy5pZGVudGl0eVBvb2wpIHtcbiAgICAgIHRoaXMuaWRlbnRpdHlQb29sID0gbmV3IGlkZW50aXR5cG9vbC5JZGVudGl0eVBvb2wodGhpcywgJ0lkZW50aXR5UG9vbCcsIHtcbiAgICAgICAgYWxsb3dVbmF1dGhlbnRpY2F0ZWRJZGVudGl0aWVzOiB0cnVlLFxuICAgICAgICBpZGVudGl0eVBvb2xOYW1lOiBwcm9wcy51c2VyUG9vbE5hbWUgKyAnLWlkZW50aXR5JyxcbiAgICAgICAgLi4ucHJvcHMuaWRlbnRpdHlQb29sLnBvb2xDb25maWcsXG4gICAgICAgIGF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzOiB7XG4gICAgICAgICAgdXNlclBvb2xzOiBbbmV3IGlkZW50aXR5cG9vbC5Vc2VyUG9vbEF1dGhlbnRpY2F0aW9uUHJvdmlkZXIoeyB1c2VyUG9vbDogdGhpcy51c2VycG9vbCB9KV0sXG4gICAgICAgICAgLi4ucHJvcHMuaWRlbnRpdHlQb29sLnBvb2xDb25maWc/LmF1dGhlbnRpY2F0aW9uUHJvdmlkZXJzLFxuICAgICAgICB9LFxuICAgICAgfSk7XG4gICAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfSURFTlRJVFlQT09MX0lELCB7XG4gICAgICAgIGtleTogQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfSUQsXG4gICAgICAgIHZhbHVlOiB0aGlzLmlkZW50aXR5UG9vbC5pZGVudGl0eVBvb2xJZCxcbiAgICAgIH0pO1xuICAgICAgbmV3IENmbk91dHB1dCh0aGlzLCBDRk5fT1VUUFVUX1NVRkZJWF9BVVRIX0lERU5USVRZUE9PTF9BVVRIX1JPTEVBUk4sIHtcbiAgICAgICAga2V5OiBDRk5fT1VUUFVUX1NVRkZJWF9BVVRIX0lERU5USVRZUE9PTF9BVVRIX1JPTEVBUk4sXG4gICAgICAgIHZhbHVlOiB0aGlzLmlkZW50aXR5UG9vbC5hdXRoZW50aWNhdGVkUm9sZS5yb2xlQXJuLFxuICAgICAgfSk7XG4gICAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIENGTl9PVVRQVVRfU1VGRklYX0FVVEhfSURFTlRJVFlQT09MX1VOQVVUSF9ST0xFQVJOLCB7XG4gICAgICAgIGtleTogQ0ZOX09VVFBVVF9TVUZGSVhfQVVUSF9JREVOVElUWVBPT0xfVU5BVVRIX1JPTEVBUk4sXG4gICAgICAgIHZhbHVlOiB0aGlzLmlkZW50aXR5UG9vbC51bmF1dGhlbnRpY2F0ZWRSb2xlLnJvbGVBcm4sXG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYWRkVXNlclBvb2xDbGllbnQoaWQ6IHN0cmluZywgb3B0aW9uczogVXNlclBvb2xDbGllbnRPcHRpb25zKTogVXNlclBvb2xDbGllbnQge1xuICAgIGNvbnN0IGNsaWVudCA9IHRoaXMudXNlcnBvb2wuYWRkQ2xpZW50KGlkLCBvcHRpb25zKTtcbiAgICBuZXcgQ2ZuT3V0cHV0KHRoaXMsIGAke0NGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xfQ0xJRU5USUR9JHtpZH1gLCB7XG4gICAgICBrZXk6IGAke0NGTl9PVVRQVVRfU1VGRklYX0FVVEhfVVNFUlBPT0xfQ0xJRU5USUR9JHtpZH1gLFxuICAgICAgdmFsdWU6IGNsaWVudC51c2VyUG9vbENsaWVudElkLFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuaWRlbnRpdHlQb29sKSB7XG4gICAgICB0aGlzLmlkZW50aXR5UG9vbC5hZGRVc2VyUG9vbEF1dGhlbnRpY2F0aW9uKFxuICAgICAgICBuZXcgaWRlbnRpdHlwb29sLlVzZXJQb29sQXV0aGVudGljYXRpb25Qcm92aWRlcih7XG4gICAgICAgICAgdXNlclBvb2w6IHRoaXMudXNlcnBvb2wsXG4gICAgICAgICAgdXNlclBvb2xDbGllbnQ6IGNsaWVudCxcbiAgICAgICAgfSksXG4gICAgICApO1xuICAgIH1cblxuICAgIHJldHVybiBjbGllbnQ7XG4gIH1cblxufSJdfQ==
|
package/package.json
CHANGED
|
@@ -32,7 +32,7 @@
|
|
|
32
32
|
"organization": true
|
|
33
33
|
},
|
|
34
34
|
"devDependencies": {
|
|
35
|
-
"@aws-cdk/aws-cognito-identitypool-alpha": "2.
|
|
35
|
+
"@aws-cdk/aws-cognito-identitypool-alpha": "2.177.0-alpha.0",
|
|
36
36
|
"@aws-sdk/client-cognito-identity-provider": "3.726.0",
|
|
37
37
|
"@aws-sdk/client-dynamodb": "3.726.0",
|
|
38
38
|
"@aws-sdk/client-s3": "3.726.0",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"@types/uuid": "^9.0.8",
|
|
50
50
|
"@typescript-eslint/eslint-plugin": "^8",
|
|
51
51
|
"@typescript-eslint/parser": "^8",
|
|
52
|
-
"aws-cdk-lib": "2.
|
|
52
|
+
"aws-cdk-lib": "2.177.0",
|
|
53
53
|
"commit-and-tag-version": "^12",
|
|
54
54
|
"constructs": "^10.0.0",
|
|
55
55
|
"dynamodb-onetable": "2.7.5",
|
|
@@ -66,12 +66,12 @@
|
|
|
66
66
|
"typescript": "^5.7.3"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
|
-
"@aws-cdk/aws-cognito-identitypool-alpha": ">=2.
|
|
69
|
+
"@aws-cdk/aws-cognito-identitypool-alpha": ">=2.177.0-alpha.0 <3.0.0",
|
|
70
70
|
"@aws-sdk/client-cognito-identity-provider": "^3.668.0",
|
|
71
71
|
"@aws-sdk/client-dynamodb": "^3.668.0",
|
|
72
72
|
"@aws-sdk/client-s3": "^3.668.0",
|
|
73
73
|
"@aws-sdk/lib-dynamodb": "^3.668.0",
|
|
74
|
-
"aws-cdk-lib": ">=2.
|
|
74
|
+
"aws-cdk-lib": ">=2.177.0 <3.0.0",
|
|
75
75
|
"dynamodb-onetable": "2.7.5",
|
|
76
76
|
"openapi-typescript": "^6.7.6",
|
|
77
77
|
"projen": ">=0.91.6 <1.0.0"
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
"publishConfig": {
|
|
99
99
|
"access": "public"
|
|
100
100
|
},
|
|
101
|
-
"version": "2.
|
|
101
|
+
"version": "2.16.0",
|
|
102
102
|
"jest": {
|
|
103
103
|
"coverageProvider": "v8",
|
|
104
104
|
"testMatch": [
|