@pwrdrvr/microapps-cdk 0.0.29 → 0.2.6

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/API.md CHANGED
@@ -6,7 +6,17 @@
6
6
 
7
7
  - *Implements:* [`@pwrdrvr/microapps-cdk.IMicroApps`](#@pwrdrvr/microapps-cdk.IMicroApps)
8
8
 
9
- Application deployment and runtime environment.
9
+ Create a new MicroApps "turnkey" construct for simple deployments and for initial evaulation of the MicroApps framework.
10
+
11
+ Use this construct to create a working entire stack.
12
+
13
+ Do not use this construct when adding MicroApps to an existing
14
+ CloudFront, API Gateway, S3 Bucket, etc. or where access
15
+ to all features of the AWS Resources are needed (e.g. to
16
+ add additional Behaviors to the CloudFront distribution, set authorizors
17
+ on API Gateway, etc.).
18
+
19
+ > {@link https://github.com/pwrdrvr/microapps-core/blob/main/packages/cdk/lib/MicroApps.ts | example usage in a CDK Stack }
10
20
 
11
21
  #### Initializer <a name="@pwrdrvr/microapps-cdk.MicroApps.Initializer"></a>
12
22
 
@@ -18,7 +28,7 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
18
28
 
19
29
  ##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.scope"></a>
20
30
 
21
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
31
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
22
32
 
23
33
  ---
24
34
 
@@ -42,24 +52,32 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
42
52
 
43
53
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
44
54
 
55
+ {@inheritdoc IMicroAppsAPIGwy}.
56
+
45
57
  ---
46
58
 
47
59
  ##### `cf`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.cf"></a>
48
60
 
49
61
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
50
62
 
63
+ {@inheritdoc IMicroAppsCF}.
64
+
51
65
  ---
52
66
 
53
67
  ##### `s3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.s3"></a>
54
68
 
55
69
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
56
70
 
71
+ {@inheritdoc IMicroAppsS3}.
72
+
57
73
  ---
58
74
 
59
75
  ##### `svcs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroApps.svcs"></a>
60
76
 
61
77
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
62
78
 
79
+ {@inheritdoc IMicroAppsSvcs}.
80
+
63
81
  ---
64
82
 
65
83
 
@@ -67,6 +85,8 @@ new MicroApps(scope: Construct, id: string, props?: MicroAppsProps)
67
85
 
68
86
  - *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
69
87
 
88
+ Create a new MicroApps API Gateway HTTP API endpoint.
89
+
70
90
  #### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.Initializer"></a>
71
91
 
72
92
  ```typescript
@@ -77,7 +97,7 @@ new MicroAppsAPIGwy(scope: Construct, id: string, props?: MicroAppsAPIGwyProps)
77
97
 
78
98
  ##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.scope"></a>
79
99
 
80
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
100
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
81
101
 
82
102
  ---
83
103
 
@@ -99,7 +119,7 @@ new MicroAppsAPIGwy(scope: Construct, id: string, props?: MicroAppsAPIGwyProps)
99
119
 
100
120
  ##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.httpApi"></a>
101
121
 
102
- - *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
122
+ - *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
103
123
 
104
124
  API Gateway.
105
125
 
@@ -107,7 +127,7 @@ API Gateway.
107
127
 
108
128
  ##### `dnAppsOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwy.dnAppsOrigin"></a>
109
129
 
110
- - *Type:* [`@aws-cdk/aws-apigatewayv2.IDomainName`](#@aws-cdk/aws-apigatewayv2.IDomainName)
130
+ - *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.IDomainName`](#@aws-cdk/aws-apigatewayv2-alpha.IDomainName)
111
131
 
112
132
  Domain Name applied to API Gateway origin.
113
133
 
@@ -118,6 +138,8 @@ Domain Name applied to API Gateway origin.
118
138
 
119
139
  - *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
120
140
 
141
+ Create a new MicroApps CloudFront Distribution.
142
+
121
143
  #### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.Initializer"></a>
122
144
 
123
145
  ```typescript
@@ -128,7 +150,7 @@ new MicroAppsCF(scope: Construct, id: string, props: MicroAppsCFProps)
128
150
 
129
151
  ##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.scope"></a>
130
152
 
131
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
153
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
132
154
 
133
155
  ---
134
156
 
@@ -157,7 +179,7 @@ MicroAppsCF.addRoutes(_scope: Construct, props: AddRoutesOptions)
157
179
 
158
180
  ###### `_scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF._scope"></a>
159
181
 
160
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
182
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
161
183
 
162
184
  ---
163
185
 
@@ -177,7 +199,7 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
177
199
 
178
200
  ###### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.scope"></a>
179
201
 
180
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
202
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
181
203
 
182
204
  ---
183
205
 
@@ -191,7 +213,7 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
191
213
 
192
214
  ##### `cloudFrontDistro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCF.cloudFrontDistro"></a>
193
215
 
194
- - *Type:* [`@aws-cdk/aws-cloudfront.Distribution`](#@aws-cdk/aws-cloudfront.Distribution)
216
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
195
217
 
196
218
  ---
197
219
 
@@ -200,6 +222,8 @@ MicroAppsCF.createAPIOriginPolicy(scope: Construct, props: CreateAPIOriginPolicy
200
222
 
201
223
  - *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
202
224
 
225
+ Create a new MicroApps S3 Bucket.
226
+
203
227
  #### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.Initializer"></a>
204
228
 
205
229
  ```typescript
@@ -210,7 +234,7 @@ new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
210
234
 
211
235
  ##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.scope"></a>
212
236
 
213
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
237
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
214
238
 
215
239
  ---
216
240
 
@@ -232,7 +256,7 @@ new MicroAppsS3(scope: Construct, id: string, props?: MicroAppsS3Props)
232
256
 
233
257
  ##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketApps"></a>
234
258
 
235
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
259
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
236
260
 
237
261
  S3 bucket for deployed applications.
238
262
 
@@ -240,7 +264,7 @@ S3 bucket for deployed applications.
240
264
 
241
265
  ##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOAI"></a>
242
266
 
243
- - *Type:* [`@aws-cdk/aws-cloudfront.OriginAccessIdentity`](#@aws-cdk/aws-cloudfront.OriginAccessIdentity)
267
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
244
268
 
245
269
  CloudFront Origin Access Identity for the deployed applications bucket.
246
270
 
@@ -248,7 +272,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
248
272
 
249
273
  ##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsOrigin"></a>
250
274
 
251
- - *Type:* [`@aws-cdk/aws-cloudfront-origins.S3Origin`](#@aws-cdk/aws-cloudfront-origins.S3Origin)
275
+ - *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
252
276
 
253
277
  CloudFront Origin for the deployed applications bucket.
254
278
 
@@ -256,7 +280,7 @@ CloudFront Origin for the deployed applications bucket.
256
280
 
257
281
  ##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketAppsStaging"></a>
258
282
 
259
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
283
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
260
284
 
261
285
  S3 bucket for staged applications (prior to deploy).
262
286
 
@@ -264,7 +288,7 @@ S3 bucket for staged applications (prior to deploy).
264
288
 
265
289
  ##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3.bucketLogs"></a>
266
290
 
267
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
291
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
268
292
 
269
293
  S3 bucket for CloudFront logs.
270
294
 
@@ -275,6 +299,8 @@ S3 bucket for CloudFront logs.
275
299
 
276
300
  - *Implements:* [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
277
301
 
302
+ Create a new MicroApps Services construct, including the Deployer and Router Lambda Functions, and the DynamoDB Table used by both.
303
+
278
304
  #### Initializer <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.Initializer"></a>
279
305
 
280
306
  ```typescript
@@ -285,7 +311,7 @@ new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
285
311
 
286
312
  ##### `scope`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.scope"></a>
287
313
 
288
- - *Type:* [`@aws-cdk/core.Construct`](#@aws-cdk/core.Construct)
314
+ - *Type:* [`constructs.Construct`](#constructs.Construct)
289
315
 
290
316
  ---
291
317
 
@@ -307,15 +333,23 @@ new MicroAppsSvcs(scope: Construct, id: string, props?: MicroAppsSvcsProps)
307
333
 
308
334
  ##### `deployerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.deployerFunc"></a>
309
335
 
310
- - *Type:* [`@aws-cdk/aws-lambda.IFunction`](#@aws-cdk/aws-lambda.IFunction)
336
+ - *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
311
337
 
312
338
  Lambda function for the Deployer.
313
339
 
314
340
  ---
315
341
 
342
+ ##### `routerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.routerFunc"></a>
343
+
344
+ - *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
345
+
346
+ Lambda function for the Router.
347
+
348
+ ---
349
+
316
350
  ##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcs.table"></a>
317
351
 
318
- - *Type:* [`@aws-cdk/aws-dynamodb.ITable`](#@aws-cdk/aws-dynamodb.ITable)
352
+ - *Type:* [`aws-cdk-lib.aws_dynamodb.ITable`](#aws-cdk-lib.aws_dynamodb.ITable)
319
353
 
320
354
  DynamoDB table used by Router, Deployer, and Release console app.
321
355
 
@@ -326,6 +360,8 @@ DynamoDB table used by Router, Deployer, and Release console app.
326
360
 
327
361
  ### AddRoutesOptions <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions"></a>
328
362
 
363
+ Options for `AddRoutes`.
364
+
329
365
  #### Initializer <a name="[object Object].Initializer"></a>
330
366
 
331
367
  ```typescript
@@ -336,25 +372,47 @@ const addRoutesOptions: AddRoutesOptions = { ... }
336
372
 
337
373
  ##### `apiGwyOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.apiGwyOrigin"></a>
338
374
 
339
- - *Type:* [`@aws-cdk/aws-cloudfront.IOrigin`](#@aws-cdk/aws-cloudfront.IOrigin)
375
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.IOrigin`](#aws-cdk-lib.aws_cloudfront.IOrigin)
376
+
377
+ API Gateway CloudFront Origin for API calls.
340
378
 
341
379
  ---
342
380
 
343
381
  ##### `apigwyOriginRequestPolicy`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.apigwyOriginRequestPolicy"></a>
344
382
 
345
- - *Type:* [`@aws-cdk/aws-cloudfront.IOriginRequestPolicy`](#@aws-cdk/aws-cloudfront.IOriginRequestPolicy)
383
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy`](#aws-cdk-lib.aws_cloudfront.IOriginRequestPolicy)
384
+
385
+ Origin Request policy for API Gateway Origin.
346
386
 
347
387
  ---
348
388
 
349
389
  ##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.bucketAppsOrigin"></a>
350
390
 
351
- - *Type:* [`@aws-cdk/aws-cloudfront-origins.S3Origin`](#@aws-cdk/aws-cloudfront-origins.S3Origin)
391
+ - *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
392
+
393
+ S3 Bucket CloudFront Origin for static assets.
352
394
 
353
395
  ---
354
396
 
355
397
  ##### `distro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.distro"></a>
356
398
 
357
- - *Type:* [`@aws-cdk/aws-cloudfront.Distribution`](#@aws-cdk/aws-cloudfront.Distribution)
399
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
400
+
401
+ CloudFront Distribution to add the Behaviors (Routes) to.
402
+
403
+ ---
404
+
405
+ ##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.AddRoutesOptions.createAPIPathRoute"></a>
406
+
407
+ - *Type:* `boolean`
408
+ - *Default:* true
409
+
410
+ Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
411
+
412
+ When false API routes with a period in the path will get routed to S3.
413
+
414
+ When true API routes that contain /api/ in the path will get routed to API Gateway
415
+ even if they have a period in the path.
358
416
 
359
417
  ---
360
418
 
@@ -362,10 +420,14 @@ const addRoutesOptions: AddRoutesOptions = { ... }
362
420
 
363
421
  - *Type:* `string`
364
422
 
423
+ Path prefix on the root of the CloudFront distribution.
424
+
365
425
  ---
366
426
 
367
427
  ### CreateAPIOriginPolicyOptions <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions"></a>
368
428
 
429
+ Options for the `CreateAPIOriginPolicy`.
430
+
369
431
  #### Initializer <a name="[object Object].Initializer"></a>
370
432
 
371
433
  ```typescript
@@ -377,12 +439,18 @@ const createAPIOriginPolicyOptions: CreateAPIOriginPolicyOptions = { ... }
377
439
  ##### `assetNameRoot`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.assetNameRoot"></a>
378
440
 
379
441
  - *Type:* `string`
442
+ - *Default:* resource names auto assigned
443
+
444
+ Optional asset name root.
380
445
 
381
446
  ---
382
447
 
383
448
  ##### `assetNameSuffix`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.CreateAPIOriginPolicyOptions.assetNameSuffix"></a>
384
449
 
385
450
  - *Type:* `string`
451
+ - *Default:* none
452
+
453
+ Optional asset name suffix.
386
454
 
387
455
  ---
388
456
 
@@ -396,6 +464,8 @@ Edge domain name used by CloudFront - If set a custom OriginRequestPolicy will b
396
464
 
397
465
  ### MicroAppsAPIGwyProps <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps"></a>
398
466
 
467
+ Properties to initialize an instance of `MicroAppsAPIGwy`.
468
+
399
469
  #### Initializer <a name="[object Object].Initializer"></a>
400
470
 
401
471
  ```typescript
@@ -424,7 +494,7 @@ Optional asset name suffix.
424
494
 
425
495
  ##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.certOrigin"></a>
426
496
 
427
- - *Type:* [`@aws-cdk/aws-certificatemanager.ICertificate`](#@aws-cdk/aws-certificatemanager.ICertificate)
497
+ - *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
428
498
  - *Default:* none
429
499
 
430
500
  Optional local region ACM certificate to use for API Gateway Note: required when using a custom domain.
@@ -451,7 +521,7 @@ API Gateway origin domain name.
451
521
 
452
522
  ##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.r53Zone"></a>
453
523
 
454
- - *Type:* [`@aws-cdk/aws-route53.IHostedZone`](#@aws-cdk/aws-route53.IHostedZone)
524
+ - *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
455
525
 
456
526
  Route53 zone in which to create optional `domainNameEdge` record.
457
527
 
@@ -459,7 +529,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
459
529
 
460
530
  ##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsAPIGwyProps.removalPolicy"></a>
461
531
 
462
- - *Type:* [`@aws-cdk/core.RemovalPolicy`](#@aws-cdk/core.RemovalPolicy)
532
+ - *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
463
533
  - *Default:* per resource default
464
534
 
465
535
  RemovalPolicy override for child resources.
@@ -479,6 +549,8 @@ Path prefix on the root of the API Gateway Stage.
479
549
 
480
550
  ### MicroAppsCFProps <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps"></a>
481
551
 
552
+ Properties to initialize an instance of `MicroAppsCF`.
553
+
482
554
  #### Initializer <a name="[object Object].Initializer"></a>
483
555
 
484
556
  ```typescript
@@ -489,7 +561,7 @@ const microAppsCFProps: MicroAppsCFProps = { ... }
489
561
 
490
562
  ##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketAppsOrigin"></a>
491
563
 
492
- - *Type:* [`@aws-cdk/aws-cloudfront-origins.S3Origin`](#@aws-cdk/aws-cloudfront-origins.S3Origin)
564
+ - *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
493
565
 
494
566
  S3 bucket origin for deployed applications.
495
567
 
@@ -497,7 +569,7 @@ S3 bucket origin for deployed applications.
497
569
 
498
570
  ##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.httpApi"></a>
499
571
 
500
- - *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
572
+ - *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
501
573
 
502
574
  API Gateway v2 HTTP API for apps.
503
575
 
@@ -523,7 +595,7 @@ Optional asset name suffix.
523
595
 
524
596
  ##### `bucketLogs`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.bucketLogs"></a>
525
597
 
526
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
598
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
527
599
 
528
600
  S3 bucket for CloudFront logs.
529
601
 
@@ -531,12 +603,26 @@ S3 bucket for CloudFront logs.
531
603
 
532
604
  ##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.certEdge"></a>
533
605
 
534
- - *Type:* [`@aws-cdk/aws-certificatemanager.ICertificate`](#@aws-cdk/aws-certificatemanager.ICertificate)
606
+ - *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
535
607
 
536
608
  ACM Certificate that covers `domainNameEdge` name.
537
609
 
538
610
  ---
539
611
 
612
+ ##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.createAPIPathRoute"></a>
613
+
614
+ - *Type:* `boolean`
615
+ - *Default:* true
616
+
617
+ Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
618
+
619
+ When false API routes with a period in the path will get routed to S3.
620
+
621
+ When true API routes that contain /api/ in the path will get routed to API Gateway
622
+ even if they have a period in the path.
623
+
624
+ ---
625
+
540
626
  ##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.domainNameEdge"></a>
541
627
 
542
628
  - *Type:* `string`
@@ -557,7 +643,7 @@ API Gateway custom origin domain name.
557
643
 
558
644
  ##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.r53Zone"></a>
559
645
 
560
- - *Type:* [`@aws-cdk/aws-route53.IHostedZone`](#@aws-cdk/aws-route53.IHostedZone)
646
+ - *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
561
647
 
562
648
  Route53 zone in which to create optional `domainNameEdge` record.
563
649
 
@@ -565,7 +651,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
565
651
 
566
652
  ##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsCFProps.removalPolicy"></a>
567
653
 
568
- - *Type:* [`@aws-cdk/core.RemovalPolicy`](#@aws-cdk/core.RemovalPolicy)
654
+ - *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
569
655
  - *Default:* per resource default
570
656
 
571
657
  RemovalPolicy override for child resources.
@@ -584,7 +670,7 @@ Path prefix on the root of the CloudFront distribution.
584
670
 
585
671
  ### MicroAppsProps <a name="@pwrdrvr/microapps-cdk.MicroAppsProps"></a>
586
672
 
587
- Props for MicroApps.
673
+ Properties to initialize an instance of `MicroApps`.
588
674
 
589
675
  #### Initializer <a name="[object Object].Initializer"></a>
590
676
 
@@ -623,7 +709,7 @@ Optional asset name suffix.
623
709
 
624
710
  ##### `certEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certEdge"></a>
625
711
 
626
- - *Type:* [`@aws-cdk/aws-certificatemanager.ICertificate`](#@aws-cdk/aws-certificatemanager.ICertificate)
712
+ - *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
627
713
 
628
714
  Certificate in US-East-1 for the CloudFront distribution.
629
715
 
@@ -631,12 +717,26 @@ Certificate in US-East-1 for the CloudFront distribution.
631
717
 
632
718
  ##### `certOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.certOrigin"></a>
633
719
 
634
- - *Type:* [`@aws-cdk/aws-certificatemanager.ICertificate`](#@aws-cdk/aws-certificatemanager.ICertificate)
720
+ - *Type:* [`aws-cdk-lib.aws_certificatemanager.ICertificate`](#aws-cdk-lib.aws_certificatemanager.ICertificate)
635
721
 
636
722
  Certificate in deployed region for the API Gateway.
637
723
 
638
724
  ---
639
725
 
726
+ ##### `createAPIPathRoute`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.createAPIPathRoute"></a>
727
+
728
+ - *Type:* `boolean`
729
+ - *Default:* true
730
+
731
+ Create an extra Behavior (Route) for /api/ that allows API routes to have a period in them.
732
+
733
+ When false API routes with a period in the path will get routed to S3.
734
+
735
+ When true API routes that contain /api/ in the path will get routed to API Gateway
736
+ even if they have a period in the path.
737
+
738
+ ---
739
+
640
740
  ##### `domainNameEdge`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.domainNameEdge"></a>
641
741
 
642
742
  - *Type:* `string`
@@ -657,7 +757,7 @@ Optional custom domain name for the API Gateway HTTPv2 API.
657
757
 
658
758
  ##### `r53Zone`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.r53Zone"></a>
659
759
 
660
- - *Type:* [`@aws-cdk/aws-route53.IHostedZone`](#@aws-cdk/aws-route53.IHostedZone)
760
+ - *Type:* [`aws-cdk-lib.aws_route53.IHostedZone`](#aws-cdk-lib.aws_route53.IHostedZone)
661
761
 
662
762
  Route53 zone in which to create optional `domainNameEdge` record.
663
763
 
@@ -665,7 +765,7 @@ Route53 zone in which to create optional `domainNameEdge` record.
665
765
 
666
766
  ##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsProps.removalPolicy"></a>
667
767
 
668
- - *Type:* [`@aws-cdk/core.RemovalPolicy`](#@aws-cdk/core.RemovalPolicy)
768
+ - *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
669
769
  - *Default:* per resource default
670
770
 
671
771
  RemovalPolicy override for child resources.
@@ -757,6 +857,8 @@ fully trusted.
757
857
 
758
858
  ### MicroAppsS3Props <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props"></a>
759
859
 
860
+ Properties to initialize an instance of `MicroAppsS3`.
861
+
760
862
  #### Initializer <a name="[object Object].Initializer"></a>
761
863
 
762
864
  ```typescript
@@ -812,17 +914,19 @@ S3 logs bucket name.
812
914
 
813
915
  ##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsS3Props.removalPolicy"></a>
814
916
 
815
- - *Type:* [`@aws-cdk/core.RemovalPolicy`](#@aws-cdk/core.RemovalPolicy)
917
+ - *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
816
918
  - *Default:* per resource default
817
919
 
818
920
  RemovalPolicy override for child resources.
819
921
 
820
- Note: if set to DESTROY the S3 buckes will have `autoDeleteObjects` set to `true`
922
+ Note: if set to DESTROY the S3 buckets will have `autoDeleteObjects` set to `true`
821
923
 
822
924
  ---
823
925
 
824
926
  ### MicroAppsSvcsProps <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps"></a>
825
927
 
928
+ Properties to initialize an instance of `MicroAppsSvcs`.
929
+
826
930
  #### Initializer <a name="[object Object].Initializer"></a>
827
931
 
828
932
  ```typescript
@@ -835,11 +939,13 @@ const microAppsSvcsProps: MicroAppsSvcsProps = { ... }
835
939
 
836
940
  - *Type:* `string`
837
941
 
942
+ Application environment, passed as `NODE_ENV` to the Router and Deployer Lambda functions.
943
+
838
944
  ---
839
945
 
840
946
  ##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketApps"></a>
841
947
 
842
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
948
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
843
949
 
844
950
  S3 bucket for deployed applications.
845
951
 
@@ -847,7 +953,7 @@ S3 bucket for deployed applications.
847
953
 
848
954
  ##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsOAI"></a>
849
955
 
850
- - *Type:* [`@aws-cdk/aws-cloudfront.OriginAccessIdentity`](#@aws-cdk/aws-cloudfront.OriginAccessIdentity)
956
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
851
957
 
852
958
  CloudFront Origin Access Identity for the deployed applications bucket.
853
959
 
@@ -855,7 +961,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
855
961
 
856
962
  ##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.bucketAppsStaging"></a>
857
963
 
858
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
964
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
859
965
 
860
966
  S3 bucket for staged applications (prior to deploy).
861
967
 
@@ -863,7 +969,7 @@ S3 bucket for staged applications (prior to deploy).
863
969
 
864
970
  ##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.httpApi"></a>
865
971
 
866
- - *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
972
+ - *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
867
973
 
868
974
  API Gateway v2 HTTP for Router and app.
869
975
 
@@ -889,7 +995,7 @@ Optional asset name suffix.
889
995
 
890
996
  ##### `removalPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.removalPolicy"></a>
891
997
 
892
- - *Type:* [`@aws-cdk/core.RemovalPolicy`](#@aws-cdk/core.RemovalPolicy)
998
+ - *Type:* [`aws-cdk-lib.RemovalPolicy`](#aws-cdk-lib.RemovalPolicy)
893
999
  - *Default:* per resource default
894
1000
 
895
1001
  RemovalPolicy override for child resources.
@@ -911,17 +1017,72 @@ Path prefix on the root of the deployment.
911
1017
 
912
1018
  - *Type:* `string`[]
913
1019
 
1020
+ Applies when using s3StrictBucketPolicy = true.
1021
+
1022
+ AROAs of the IAM Role to exclude from the DENY rules on the S3 Bucket Policy.
1023
+ This allows sessions that assume the IAM Role to be excluded from the
1024
+ DENY rules on the S3 Bucket Policy.
1025
+
1026
+ Typically any admin roles / users that need to view or manage the S3 Bucket
1027
+ would be added to this list.
1028
+
1029
+ Roles / users that are used directly, not assumed, can be added to `s3PolicyBypassRoleNames` instead.
1030
+
1031
+ Note: This AROA must be specified to prevent this policy from locking
1032
+ out non-root sessions that have assumed the admin role.
1033
+
1034
+ The notPrincipals will only match the role name exactly and will not match
1035
+ any session that has assumed the role since notPrincipals does not allow
1036
+ wildcard matches and does not do wildcard matches implicitly either.
1037
+
1038
+ The AROA must be used because there are only 3 Principal variables available:
1039
+ https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_variables.html#principaltable
1040
+ aws:username, aws:userid, aws:PrincipalTag
1041
+
1042
+ For an assumed role, aws:username is blank, aws:userid is:
1043
+ [unique id AKA AROA for Role]:[session name]
1044
+
1045
+ Table of unique ID prefixes such as AROA:
1046
+ https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-prefixes
1047
+
1048
+ The name of the role is simply not available for an assumed role and, if it was,
1049
+ a complicated comparison would be requierd to prevent exclusion
1050
+ of applying the Deny Rule to roles from other accounts.
1051
+
1052
+ To get the AROA with the AWS CLI:
1053
+ aws iam get-role --role-name ROLE-NAME
1054
+ aws iam get-user -–user-name USER-NAME
1055
+
1056
+ > s3StrictBucketPolicy
1057
+
914
1058
  ---
915
1059
 
916
1060
  ##### `s3PolicyBypassPrincipalARNs`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.s3PolicyBypassPrincipalARNs"></a>
917
1061
 
918
1062
  - *Type:* `string`[]
919
1063
 
1064
+ Applies when using s3StrictBucketPolicy = true.
1065
+
1066
+ IAM Role or IAM User names to exclude from the DENY rules on the S3 Bucket Policy.
1067
+
1068
+ Roles that are Assumed must instead have their AROA added to `s3PolicyBypassAROAs`.
1069
+
1070
+ Typically any admin roles / users that need to view or manage the S3 Bucket
1071
+ would be added to this list.
1072
+
1073
+ > s3PolicyBypassAROAs
1074
+
920
1075
  ---
921
1076
 
922
1077
  ##### `s3StrictBucketPolicy`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.MicroAppsSvcsProps.s3StrictBucketPolicy"></a>
923
1078
 
924
1079
  - *Type:* `boolean`
1080
+ - *Default:* false
1081
+
1082
+ Use a strict S3 Bucket Policy that prevents applications from reading/writing/modifying/deleting files in the S3 Bucket outside of the path that is specific to their app/version.
1083
+
1084
+ This setting should be used when applications are less than
1085
+ fully trusted.
925
1086
 
926
1087
  ---
927
1088
 
@@ -932,6 +1093,8 @@ Path prefix on the root of the deployment.
932
1093
 
933
1094
  - *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroApps`](#@pwrdrvr/microapps-cdk.MicroApps), [`@pwrdrvr/microapps-cdk.IMicroApps`](#@pwrdrvr/microapps-cdk.IMicroApps)
934
1095
 
1096
+ Represents a MicroApps.
1097
+
935
1098
 
936
1099
  #### Properties <a name="Properties"></a>
937
1100
 
@@ -939,36 +1102,46 @@ Path prefix on the root of the deployment.
939
1102
 
940
1103
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
941
1104
 
1105
+ {@inheritdoc IMicroAppsAPIGwy}.
1106
+
942
1107
  ---
943
1108
 
944
1109
  ##### `cf`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.cf"></a>
945
1110
 
946
1111
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
947
1112
 
1113
+ {@inheritdoc IMicroAppsCF}.
1114
+
948
1115
  ---
949
1116
 
950
1117
  ##### `s3`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.s3"></a>
951
1118
 
952
1119
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
953
1120
 
1121
+ {@inheritdoc IMicroAppsS3}.
1122
+
954
1123
  ---
955
1124
 
956
1125
  ##### `svcs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroApps.svcs"></a>
957
1126
 
958
1127
  - *Type:* [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
959
1128
 
1129
+ {@inheritdoc IMicroAppsSvcs}.
1130
+
960
1131
  ---
961
1132
 
962
1133
  ### IMicroAppsAPIGwy <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy"></a>
963
1134
 
964
1135
  - *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.MicroAppsAPIGwy), [`@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy`](#@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy)
965
1136
 
1137
+ Represents a MicroApps API Gateway.
1138
+
966
1139
 
967
1140
  #### Properties <a name="Properties"></a>
968
1141
 
969
1142
  ##### `httpApi`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy.httpApi"></a>
970
1143
 
971
- - *Type:* [`@aws-cdk/aws-apigatewayv2.HttpApi`](#@aws-cdk/aws-apigatewayv2.HttpApi)
1144
+ - *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.HttpApi`](#@aws-cdk/aws-apigatewayv2-alpha.HttpApi)
972
1145
 
973
1146
  API Gateway.
974
1147
 
@@ -976,7 +1149,7 @@ API Gateway.
976
1149
 
977
1150
  ##### `dnAppsOrigin`<sup>Optional</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsAPIGwy.dnAppsOrigin"></a>
978
1151
 
979
- - *Type:* [`@aws-cdk/aws-apigatewayv2.IDomainName`](#@aws-cdk/aws-apigatewayv2.IDomainName)
1152
+ - *Type:* [`@aws-cdk/aws-apigatewayv2-alpha.IDomainName`](#@aws-cdk/aws-apigatewayv2-alpha.IDomainName)
980
1153
 
981
1154
  Domain Name applied to API Gateway origin.
982
1155
 
@@ -986,12 +1159,14 @@ Domain Name applied to API Gateway origin.
986
1159
 
987
1160
  - *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsCF`](#@pwrdrvr/microapps-cdk.MicroAppsCF), [`@pwrdrvr/microapps-cdk.IMicroAppsCF`](#@pwrdrvr/microapps-cdk.IMicroAppsCF)
988
1161
 
1162
+ Represents a MicroApps CloudFront.
1163
+
989
1164
 
990
1165
  #### Properties <a name="Properties"></a>
991
1166
 
992
1167
  ##### `cloudFrontDistro`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsCF.cloudFrontDistro"></a>
993
1168
 
994
- - *Type:* [`@aws-cdk/aws-cloudfront.Distribution`](#@aws-cdk/aws-cloudfront.Distribution)
1169
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.Distribution`](#aws-cdk-lib.aws_cloudfront.Distribution)
995
1170
 
996
1171
  ---
997
1172
 
@@ -999,12 +1174,14 @@ Domain Name applied to API Gateway origin.
999
1174
 
1000
1175
  - *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsS3`](#@pwrdrvr/microapps-cdk.MicroAppsS3), [`@pwrdrvr/microapps-cdk.IMicroAppsS3`](#@pwrdrvr/microapps-cdk.IMicroAppsS3)
1001
1176
 
1177
+ Represents a MicroApps S3.
1178
+
1002
1179
 
1003
1180
  #### Properties <a name="Properties"></a>
1004
1181
 
1005
1182
  ##### `bucketApps`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketApps"></a>
1006
1183
 
1007
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
1184
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
1008
1185
 
1009
1186
  S3 bucket for deployed applications.
1010
1187
 
@@ -1012,7 +1189,7 @@ S3 bucket for deployed applications.
1012
1189
 
1013
1190
  ##### `bucketAppsOAI`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOAI"></a>
1014
1191
 
1015
- - *Type:* [`@aws-cdk/aws-cloudfront.OriginAccessIdentity`](#@aws-cdk/aws-cloudfront.OriginAccessIdentity)
1192
+ - *Type:* [`aws-cdk-lib.aws_cloudfront.OriginAccessIdentity`](#aws-cdk-lib.aws_cloudfront.OriginAccessIdentity)
1016
1193
 
1017
1194
  CloudFront Origin Access Identity for the deployed applications bucket.
1018
1195
 
@@ -1020,7 +1197,7 @@ CloudFront Origin Access Identity for the deployed applications bucket.
1020
1197
 
1021
1198
  ##### `bucketAppsOrigin`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsOrigin"></a>
1022
1199
 
1023
- - *Type:* [`@aws-cdk/aws-cloudfront-origins.S3Origin`](#@aws-cdk/aws-cloudfront-origins.S3Origin)
1200
+ - *Type:* [`aws-cdk-lib.aws_cloudfront_origins.S3Origin`](#aws-cdk-lib.aws_cloudfront_origins.S3Origin)
1024
1201
 
1025
1202
  CloudFront Origin for the deployed applications bucket.
1026
1203
 
@@ -1028,7 +1205,7 @@ CloudFront Origin for the deployed applications bucket.
1028
1205
 
1029
1206
  ##### `bucketAppsStaging`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketAppsStaging"></a>
1030
1207
 
1031
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
1208
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
1032
1209
 
1033
1210
  S3 bucket for staged applications (prior to deploy).
1034
1211
 
@@ -1036,7 +1213,7 @@ S3 bucket for staged applications (prior to deploy).
1036
1213
 
1037
1214
  ##### `bucketLogs`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsS3.bucketLogs"></a>
1038
1215
 
1039
- - *Type:* [`@aws-cdk/aws-s3.IBucket`](#@aws-cdk/aws-s3.IBucket)
1216
+ - *Type:* [`aws-cdk-lib.aws_s3.IBucket`](#aws-cdk-lib.aws_s3.IBucket)
1040
1217
 
1041
1218
  S3 bucket for CloudFront logs.
1042
1219
 
@@ -1046,20 +1223,30 @@ S3 bucket for CloudFront logs.
1046
1223
 
1047
1224
  - *Implemented By:* [`@pwrdrvr/microapps-cdk.MicroAppsSvcs`](#@pwrdrvr/microapps-cdk.MicroAppsSvcs), [`@pwrdrvr/microapps-cdk.IMicroAppsSvcs`](#@pwrdrvr/microapps-cdk.IMicroAppsSvcs)
1048
1225
 
1226
+ Represents a MicroApps Services.
1227
+
1049
1228
 
1050
1229
  #### Properties <a name="Properties"></a>
1051
1230
 
1052
1231
  ##### `deployerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.deployerFunc"></a>
1053
1232
 
1054
- - *Type:* [`@aws-cdk/aws-lambda.IFunction`](#@aws-cdk/aws-lambda.IFunction)
1233
+ - *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
1055
1234
 
1056
1235
  Lambda function for the Deployer.
1057
1236
 
1058
1237
  ---
1059
1238
 
1239
+ ##### `routerFunc`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.routerFunc"></a>
1240
+
1241
+ - *Type:* [`aws-cdk-lib.aws_lambda.IFunction`](#aws-cdk-lib.aws_lambda.IFunction)
1242
+
1243
+ Lambda function for the Router.
1244
+
1245
+ ---
1246
+
1060
1247
  ##### `table`<sup>Required</sup> <a name="@pwrdrvr/microapps-cdk.IMicroAppsSvcs.table"></a>
1061
1248
 
1062
- - *Type:* [`@aws-cdk/aws-dynamodb.ITable`](#@aws-cdk/aws-dynamodb.ITable)
1249
+ - *Type:* [`aws-cdk-lib.aws_dynamodb.ITable`](#aws-cdk-lib.aws_dynamodb.ITable)
1063
1250
 
1064
1251
  DynamoDB table used by Router, Deployer, and Release console app.
1065
1252