cdk-appsync-typescript-resolver 0.0.25 → 0.0.27
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/.jsii +786 -34
- package/.nvmrc +1 -1
- package/API.md +273 -62
- package/README.md +16 -15
- package/lib/AppsyncTypescriptFunction.js +3 -3
- package/lib/AppsyncTypescriptFunctionProps.d.ts +7 -0
- package/lib/AppsyncTypescriptFunctionProps.js +1 -1
- package/lib/TSExpressPipelineResolver.d.ts +1 -1
- package/lib/TSExpressPipelineResolver.js +4 -4
- package/lib/TypescriptUnitResolver.d.ts +6 -0
- package/lib/TypescriptUnitResolver.js +25 -0
- package/lib/TypescriptUnitResolverProps.d.ts +51 -0
- package/lib/TypescriptUnitResolverProps.js +3 -0
- package/lib/bundler.js +1 -1
- package/lib/index.d.ts +2 -0
- package/lib/index.js +3 -1
- package/node_modules/@esbuild/linux-x64/bin/esbuild +0 -0
- package/node_modules/@esbuild/linux-x64/package.json +2 -2
- package/node_modules/esbuild/bin/esbuild +4 -5
- package/node_modules/esbuild/install.js +4 -6
- package/node_modules/esbuild/lib/main.d.ts +33 -7
- package/node_modules/esbuild/lib/main.js +259 -451
- package/node_modules/esbuild/package.json +26 -25
- package/package.json +30 -24
package/.nvmrc
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
lts/
|
|
1
|
+
lts/iron
|
package/API.md
CHANGED
|
@@ -1,63 +1,3 @@
|
|
|
1
|
-
# cdk-appsync-typescript-resolver
|
|
2
|
-
|
|
3
|
-
[](https://www.npmjs.com/package/cdk-appsync-typescript-resolver)
|
|
4
|
-
[](https://app.codacy.com/gh/sudokar/cdk-appsync-typescript-resolver/dashboard?utm_source=gh&utm_medium=referral&utm_content=&utm_campaign=Badge_grade)
|
|
5
|
-
[](https://github.com/sudokar/cdk-appsync-typescript-resolver/actions/workflows/release.yml)
|
|
6
|
-
[](https://github.com/sudokar/cdk-appsync-typescript-resolver/releases)
|
|
7
|
-
[](https://opensource.org/licenses/Apache-2.0)
|
|
8
|
-
[](https://github.com/sudokar/nx-serverless)
|
|
9
|
-

|
|
10
|
-
[](https://gitpod.io/#https://github.com/sudokar/cdk-appsync-typescript-resolver)
|
|
11
|
-
|
|
12
|
-
Constructs to transpile and bundle Typescript to valid AWS Appsync's JS resolvers
|
|
13
|
-
|
|
14
|
-
[](https://constructs.dev/packages/cdk-appsync-typescript-resolver)
|
|
15
|
-
|
|
16
|
-
# ✨ Constructs
|
|
17
|
-
|
|
18
|
-
- [AppsyncTypescriptFunction](src%2Flib%2FAppsyncTypescriptFunction.ts) - To transpile and bundle Typescript
|
|
19
|
-
- [TSExpressPipelineResolver](src%2Flib%2FJSExpressPipelineResolver.ts) - To use AppsyncTypescriptFunction with boilerplate code
|
|
20
|
-
|
|
21
|
-
# 🚀 Usage
|
|
22
|
-
|
|
23
|
-
- AppsyncTypescriptFunction
|
|
24
|
-
```typescript
|
|
25
|
-
import { AppsyncTypescriptFunction } from 'cdk-appsync-typescript-resolver'
|
|
26
|
-
...
|
|
27
|
-
const appsyncFunction = new AppsyncTypescriptFunction(stack, "TSDemoFunction", {
|
|
28
|
-
name: "TSDemoFunction",
|
|
29
|
-
api: new appsync.GraphqlApi(...),
|
|
30
|
-
path: path.join(__dirname, "path", "to", "file.ts"),
|
|
31
|
-
dataSource: new appsync.DynamoDbDataSource(...),
|
|
32
|
-
sourceMap: true,
|
|
33
|
-
});
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
- TSExpressPipelineResolver
|
|
37
|
-
|
|
38
|
-
```typescript
|
|
39
|
-
import { TSExpressPipelineResolver } from 'cdk-appsync-typescript-resolver'
|
|
40
|
-
...
|
|
41
|
-
const resolver = new TSExpressPipelineResolver(testStack, "DemoResolver", {
|
|
42
|
-
api: new appsync.GraphqlApi(...),
|
|
43
|
-
typeName: "Query",
|
|
44
|
-
fieldName: "hello",
|
|
45
|
-
tsFunction: new AppsyncTypescriptFunction(...),
|
|
46
|
-
});
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
> Tip: Use [GraphQL Code Generator](https://the-guild.dev/graphql/codegen) to generate Typescript types from GraphQL schema(s) to use in resolvers
|
|
50
|
-
|
|
51
|
-
Checkout the demo project for examples [cdk-appsync-typescript-resolver-demo](https://github.com/sudokar/cdk-appsync-typescript-resolver-demo)
|
|
52
|
-
|
|
53
|
-
# References
|
|
54
|
-
|
|
55
|
-
[JavaScript resolvers overview](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html)
|
|
56
|
-
|
|
57
|
-
[Bundling, TypeScript, and source maps](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-overview-js.html#additional-utilities)
|
|
58
|
-
|
|
59
|
-
[GraphQL Code Generator](https://the-guild.dev/graphql/codegen)
|
|
60
|
-
|
|
61
1
|
# API Reference <a name="API Reference" id="api-reference"></a>
|
|
62
2
|
|
|
63
3
|
## Constructs <a name="Constructs" id="Constructs"></a>
|
|
@@ -425,7 +365,7 @@ Any object.
|
|
|
425
365
|
|
|
426
366
|
##### ~~`node`~~<sup>Required</sup> <a name="node" id="cdk-appsync-typescript-resolver.TSExpressPipelineResolver.property.node"></a>
|
|
427
367
|
|
|
428
|
-
- *Deprecated:* -
|
|
368
|
+
- *Deprecated:* - Use {@link TypescriptUnitResolver } instead
|
|
429
369
|
|
|
430
370
|
```typescript
|
|
431
371
|
public readonly node: Node;
|
|
@@ -439,7 +379,119 @@ The tree node.
|
|
|
439
379
|
|
|
440
380
|
##### ~~`arn`~~<sup>Required</sup> <a name="arn" id="cdk-appsync-typescript-resolver.TSExpressPipelineResolver.property.arn"></a>
|
|
441
381
|
|
|
442
|
-
- *Deprecated:* -
|
|
382
|
+
- *Deprecated:* - Use {@link TypescriptUnitResolver } instead
|
|
383
|
+
|
|
384
|
+
```typescript
|
|
385
|
+
public readonly arn: string;
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
- *Type:* string
|
|
389
|
+
|
|
390
|
+
the ARN of the resolver.
|
|
391
|
+
|
|
392
|
+
---
|
|
393
|
+
|
|
394
|
+
|
|
395
|
+
### TypescriptUnitResolver <a name="TypescriptUnitResolver" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver"></a>
|
|
396
|
+
|
|
397
|
+
#### Initializers <a name="Initializers" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer"></a>
|
|
398
|
+
|
|
399
|
+
```typescript
|
|
400
|
+
import { TypescriptUnitResolver } from 'cdk-appsync-typescript-resolver'
|
|
401
|
+
|
|
402
|
+
new TypescriptUnitResolver(scope: IConstruct, id: string, props: TypescriptUnitResolverProps)
|
|
403
|
+
```
|
|
404
|
+
|
|
405
|
+
| **Name** | **Type** | **Description** |
|
|
406
|
+
| --- | --- | --- |
|
|
407
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer.parameter.scope">scope</a></code> | <code>constructs.IConstruct</code> | *No description.* |
|
|
408
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer.parameter.id">id</a></code> | <code>string</code> | *No description.* |
|
|
409
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer.parameter.props">props</a></code> | <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps">TypescriptUnitResolverProps</a></code> | *No description.* |
|
|
410
|
+
|
|
411
|
+
---
|
|
412
|
+
|
|
413
|
+
##### `scope`<sup>Required</sup> <a name="scope" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer.parameter.scope"></a>
|
|
414
|
+
|
|
415
|
+
- *Type:* constructs.IConstruct
|
|
416
|
+
|
|
417
|
+
---
|
|
418
|
+
|
|
419
|
+
##### `id`<sup>Required</sup> <a name="id" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer.parameter.id"></a>
|
|
420
|
+
|
|
421
|
+
- *Type:* string
|
|
422
|
+
|
|
423
|
+
---
|
|
424
|
+
|
|
425
|
+
##### `props`<sup>Required</sup> <a name="props" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.Initializer.parameter.props"></a>
|
|
426
|
+
|
|
427
|
+
- *Type:* <a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps">TypescriptUnitResolverProps</a>
|
|
428
|
+
|
|
429
|
+
---
|
|
430
|
+
|
|
431
|
+
#### Methods <a name="Methods" id="Methods"></a>
|
|
432
|
+
|
|
433
|
+
| **Name** | **Description** |
|
|
434
|
+
| --- | --- |
|
|
435
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.toString">toString</a></code> | Returns a string representation of this construct. |
|
|
436
|
+
|
|
437
|
+
---
|
|
438
|
+
|
|
439
|
+
##### `toString` <a name="toString" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.toString"></a>
|
|
440
|
+
|
|
441
|
+
```typescript
|
|
442
|
+
public toString(): string
|
|
443
|
+
```
|
|
444
|
+
|
|
445
|
+
Returns a string representation of this construct.
|
|
446
|
+
|
|
447
|
+
#### Static Functions <a name="Static Functions" id="Static Functions"></a>
|
|
448
|
+
|
|
449
|
+
| **Name** | **Description** |
|
|
450
|
+
| --- | --- |
|
|
451
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.isConstruct">isConstruct</a></code> | Checks if `x` is a construct. |
|
|
452
|
+
|
|
453
|
+
---
|
|
454
|
+
|
|
455
|
+
##### ~~`isConstruct`~~ <a name="isConstruct" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.isConstruct"></a>
|
|
456
|
+
|
|
457
|
+
```typescript
|
|
458
|
+
import { TypescriptUnitResolver } from 'cdk-appsync-typescript-resolver'
|
|
459
|
+
|
|
460
|
+
TypescriptUnitResolver.isConstruct(x: any)
|
|
461
|
+
```
|
|
462
|
+
|
|
463
|
+
Checks if `x` is a construct.
|
|
464
|
+
|
|
465
|
+
###### `x`<sup>Required</sup> <a name="x" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.isConstruct.parameter.x"></a>
|
|
466
|
+
|
|
467
|
+
- *Type:* any
|
|
468
|
+
|
|
469
|
+
Any object.
|
|
470
|
+
|
|
471
|
+
---
|
|
472
|
+
|
|
473
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
474
|
+
|
|
475
|
+
| **Name** | **Type** | **Description** |
|
|
476
|
+
| --- | --- | --- |
|
|
477
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.property.node">node</a></code> | <code>constructs.Node</code> | The tree node. |
|
|
478
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolver.property.arn">arn</a></code> | <code>string</code> | the ARN of the resolver. |
|
|
479
|
+
|
|
480
|
+
---
|
|
481
|
+
|
|
482
|
+
##### `node`<sup>Required</sup> <a name="node" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.property.node"></a>
|
|
483
|
+
|
|
484
|
+
```typescript
|
|
485
|
+
public readonly node: Node;
|
|
486
|
+
```
|
|
487
|
+
|
|
488
|
+
- *Type:* constructs.Node
|
|
489
|
+
|
|
490
|
+
The tree node.
|
|
491
|
+
|
|
492
|
+
---
|
|
493
|
+
|
|
494
|
+
##### `arn`<sup>Required</sup> <a name="arn" id="cdk-appsync-typescript-resolver.TypescriptUnitResolver.property.arn"></a>
|
|
443
495
|
|
|
444
496
|
```typescript
|
|
445
497
|
public readonly arn: string;
|
|
@@ -475,6 +527,7 @@ const appsyncTypescriptFunctionProps: AppsyncTypescriptFunctionProps = { ... }
|
|
|
475
527
|
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.name">name</a></code> | <code>string</code> | the name of the AppSync Function. |
|
|
476
528
|
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.path">path</a></code> | <code>string</code> | Path of typescript file that will be transpiled and bundled. |
|
|
477
529
|
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.description">description</a></code> | <code>string</code> | the description for this AppSync Function. |
|
|
530
|
+
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.maxBatchSize">maxBatchSize</a></code> | <code>number</code> | The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation. |
|
|
478
531
|
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.replaceStrings">replaceStrings</a></code> | <code>{[ key: string ]: string}</code> | A map of replacement strings in the bundled code. |
|
|
479
532
|
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.requestMappingTemplate">requestMappingTemplate</a></code> | <code>aws-cdk-lib.aws_appsync.MappingTemplate</code> | the request mapping template for the AppSync Function. |
|
|
480
533
|
| <code><a href="#cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.responseMappingTemplate">responseMappingTemplate</a></code> | <code>aws-cdk-lib.aws_appsync.MappingTemplate</code> | the response mapping template for the AppSync Function. |
|
|
@@ -543,6 +596,21 @@ the description for this AppSync Function.
|
|
|
543
596
|
|
|
544
597
|
---
|
|
545
598
|
|
|
599
|
+
##### `maxBatchSize`<sup>Optional</sup> <a name="maxBatchSize" id="cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.maxBatchSize"></a>
|
|
600
|
+
|
|
601
|
+
```typescript
|
|
602
|
+
public readonly maxBatchSize: number;
|
|
603
|
+
```
|
|
604
|
+
|
|
605
|
+
- *Type:* number
|
|
606
|
+
- *Default:* No max batch size
|
|
607
|
+
|
|
608
|
+
The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation.
|
|
609
|
+
|
|
610
|
+
Can only be set when using LambdaDataSource.
|
|
611
|
+
|
|
612
|
+
---
|
|
613
|
+
|
|
546
614
|
##### `replaceStrings`<sup>Optional</sup> <a name="replaceStrings" id="cdk-appsync-typescript-resolver.AppsyncTypescriptFunctionProps.property.replaceStrings"></a>
|
|
547
615
|
|
|
548
616
|
```typescript
|
|
@@ -710,5 +778,148 @@ The maximum number of elements per batch, when using batch invoke.
|
|
|
710
778
|
|
|
711
779
|
---
|
|
712
780
|
|
|
781
|
+
### TypescriptUnitResolverProps <a name="TypescriptUnitResolverProps" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps"></a>
|
|
782
|
+
|
|
783
|
+
TypescriptUnitResolverProps.
|
|
784
|
+
|
|
785
|
+
#### Initializer <a name="Initializer" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.Initializer"></a>
|
|
786
|
+
|
|
787
|
+
```typescript
|
|
788
|
+
import { TypescriptUnitResolverProps } from 'cdk-appsync-typescript-resolver'
|
|
789
|
+
|
|
790
|
+
const typescriptUnitResolverProps: TypescriptUnitResolverProps = { ... }
|
|
791
|
+
```
|
|
792
|
+
|
|
793
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
794
|
+
|
|
795
|
+
| **Name** | **Type** | **Description** |
|
|
796
|
+
| --- | --- | --- |
|
|
797
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.api">api</a></code> | <code>aws-cdk-lib.aws_appsync.IGraphqlApi</code> | The API this resolver is attached to. |
|
|
798
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.fieldName">fieldName</a></code> | <code>string</code> | name of the GraphQL field in the given type this resolver is attached to. |
|
|
799
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.path">path</a></code> | <code>string</code> | Path of typescript file that will be transpiled and bundled. |
|
|
800
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.typeName">typeName</a></code> | <code>string</code> | name of the GraphQL type this resolver is attached to. |
|
|
801
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.cachingConfig">cachingConfig</a></code> | <code>aws-cdk-lib.aws_appsync.CachingConfig</code> | The caching configuration for this resolver. |
|
|
802
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.dataSource">dataSource</a></code> | <code>aws-cdk-lib.aws_appsync.BaseDataSource</code> | The data source this resolver is using. |
|
|
803
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.maxBatchSize">maxBatchSize</a></code> | <code>number</code> | The maximum number of elements per batch, when using batch invoke. |
|
|
804
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.replaceStrings">replaceStrings</a></code> | <code>{[ key: string ]: string}</code> | A map of replacement strings in the bundled code. |
|
|
805
|
+
| <code><a href="#cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.sourceMap">sourceMap</a></code> | <code>boolean</code> | Flag to enable or disable source maps in bundled code. |
|
|
806
|
+
|
|
807
|
+
---
|
|
808
|
+
|
|
809
|
+
##### `api`<sup>Required</sup> <a name="api" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.api"></a>
|
|
810
|
+
|
|
811
|
+
```typescript
|
|
812
|
+
public readonly api: IGraphqlApi;
|
|
813
|
+
```
|
|
814
|
+
|
|
815
|
+
- *Type:* aws-cdk-lib.aws_appsync.IGraphqlApi
|
|
816
|
+
|
|
817
|
+
The API this resolver is attached to.
|
|
818
|
+
|
|
819
|
+
---
|
|
820
|
+
|
|
821
|
+
##### `fieldName`<sup>Required</sup> <a name="fieldName" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.fieldName"></a>
|
|
822
|
+
|
|
823
|
+
```typescript
|
|
824
|
+
public readonly fieldName: string;
|
|
825
|
+
```
|
|
826
|
+
|
|
827
|
+
- *Type:* string
|
|
828
|
+
|
|
829
|
+
name of the GraphQL field in the given type this resolver is attached to.
|
|
830
|
+
|
|
831
|
+
---
|
|
832
|
+
|
|
833
|
+
##### `path`<sup>Required</sup> <a name="path" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.path"></a>
|
|
834
|
+
|
|
835
|
+
```typescript
|
|
836
|
+
public readonly path: string;
|
|
837
|
+
```
|
|
838
|
+
|
|
839
|
+
- *Type:* string
|
|
840
|
+
|
|
841
|
+
Path of typescript file that will be transpiled and bundled.
|
|
842
|
+
|
|
843
|
+
---
|
|
844
|
+
|
|
845
|
+
##### `typeName`<sup>Required</sup> <a name="typeName" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.typeName"></a>
|
|
846
|
+
|
|
847
|
+
```typescript
|
|
848
|
+
public readonly typeName: string;
|
|
849
|
+
```
|
|
850
|
+
|
|
851
|
+
- *Type:* string
|
|
852
|
+
|
|
853
|
+
name of the GraphQL type this resolver is attached to.
|
|
854
|
+
|
|
855
|
+
---
|
|
856
|
+
|
|
857
|
+
##### `cachingConfig`<sup>Optional</sup> <a name="cachingConfig" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.cachingConfig"></a>
|
|
858
|
+
|
|
859
|
+
```typescript
|
|
860
|
+
public readonly cachingConfig: CachingConfig;
|
|
861
|
+
```
|
|
862
|
+
|
|
863
|
+
- *Type:* aws-cdk-lib.aws_appsync.CachingConfig
|
|
864
|
+
- *Default:* No caching configuration
|
|
865
|
+
|
|
866
|
+
The caching configuration for this resolver.
|
|
867
|
+
|
|
868
|
+
---
|
|
869
|
+
|
|
870
|
+
##### `dataSource`<sup>Optional</sup> <a name="dataSource" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.dataSource"></a>
|
|
871
|
+
|
|
872
|
+
```typescript
|
|
873
|
+
public readonly dataSource: BaseDataSource;
|
|
874
|
+
```
|
|
875
|
+
|
|
876
|
+
- *Type:* aws-cdk-lib.aws_appsync.BaseDataSource
|
|
877
|
+
- *Default:* No datasource
|
|
878
|
+
|
|
879
|
+
The data source this resolver is using.
|
|
880
|
+
|
|
881
|
+
---
|
|
882
|
+
|
|
883
|
+
##### `maxBatchSize`<sup>Optional</sup> <a name="maxBatchSize" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.maxBatchSize"></a>
|
|
884
|
+
|
|
885
|
+
```typescript
|
|
886
|
+
public readonly maxBatchSize: number;
|
|
887
|
+
```
|
|
888
|
+
|
|
889
|
+
- *Type:* number
|
|
890
|
+
- *Default:* No max batch size
|
|
891
|
+
|
|
892
|
+
The maximum number of elements per batch, when using batch invoke.
|
|
893
|
+
|
|
894
|
+
---
|
|
895
|
+
|
|
896
|
+
##### `replaceStrings`<sup>Optional</sup> <a name="replaceStrings" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.replaceStrings"></a>
|
|
897
|
+
|
|
898
|
+
```typescript
|
|
899
|
+
public readonly replaceStrings: {[ key: string ]: string};
|
|
900
|
+
```
|
|
901
|
+
|
|
902
|
+
- *Type:* {[ key: string ]: string}
|
|
903
|
+
|
|
904
|
+
A map of replacement strings in the bundled code.
|
|
905
|
+
|
|
906
|
+
e.g { ENV: "PROD" }
|
|
907
|
+
|
|
908
|
+
---
|
|
909
|
+
|
|
910
|
+
##### `sourceMap`<sup>Optional</sup> <a name="sourceMap" id="cdk-appsync-typescript-resolver.TypescriptUnitResolverProps.property.sourceMap"></a>
|
|
911
|
+
|
|
912
|
+
```typescript
|
|
913
|
+
public readonly sourceMap: boolean;
|
|
914
|
+
```
|
|
915
|
+
|
|
916
|
+
- *Type:* boolean
|
|
917
|
+
|
|
918
|
+
Flag to enable or disable source maps in bundled code.
|
|
919
|
+
|
|
920
|
+
defaults to false
|
|
921
|
+
|
|
922
|
+
---
|
|
923
|
+
|
|
713
924
|
|
|
714
925
|
|
package/README.md
CHANGED
|
@@ -15,34 +15,35 @@ Constructs to transpile and bundle Typescript to valid AWS Appsync's JS resolver
|
|
|
15
15
|
|
|
16
16
|
# ✨ Constructs
|
|
17
17
|
|
|
18
|
-
- [
|
|
19
|
-
- [
|
|
18
|
+
- [TypescriptUnitResolver](src%2Flib%2FJSExpressPipelineResolver.ts) - Unit resolver with typescript source
|
|
19
|
+
- [AppsyncTypescriptFunction](src%2Flib%2FAppsyncTypescriptFunction.ts) - Appsync function with typescript source
|
|
20
20
|
|
|
21
21
|
# 🚀 Usage
|
|
22
22
|
|
|
23
|
-
-
|
|
23
|
+
- TypescriptUnitResolver
|
|
24
|
+
|
|
24
25
|
```typescript
|
|
25
|
-
import {
|
|
26
|
-
|
|
27
|
-
const
|
|
28
|
-
name: "TSDemoFunction",
|
|
26
|
+
import { TypescriptUnitResolver } from 'cdk-appsync-typescript-resolver'
|
|
27
|
+
|
|
28
|
+
const resolver = new TypescriptUnitResolver(stack, "DemoResolver", {
|
|
29
29
|
api: new appsync.GraphqlApi(...),
|
|
30
|
+
typeName: "Query",
|
|
31
|
+
fieldName: "hello",
|
|
30
32
|
path: path.join(__dirname, "path", "to", "file.ts"),
|
|
31
|
-
dataSource: new appsync.DynamoDbDataSource(...),
|
|
32
33
|
sourceMap: true,
|
|
33
34
|
});
|
|
34
35
|
```
|
|
35
36
|
|
|
36
|
-
-
|
|
37
|
-
|
|
37
|
+
- AppsyncTypescriptFunction
|
|
38
38
|
```typescript
|
|
39
|
-
import {
|
|
39
|
+
import { AppsyncTypescriptFunction } from 'cdk-appsync-typescript-resolver'
|
|
40
40
|
...
|
|
41
|
-
const
|
|
41
|
+
const appsyncFunction = new AppsyncTypescriptFunction(stack, "TSDemoFunction", {
|
|
42
|
+
name: "TSDemoFunction",
|
|
42
43
|
api: new appsync.GraphqlApi(...),
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
path: path.join(__dirname, "path", "to", "file.ts"),
|
|
45
|
+
dataSource: new appsync.DynamoDbDataSource(...),
|
|
46
|
+
sourceMap: true,
|
|
46
47
|
});
|
|
47
48
|
```
|
|
48
49
|
|
|
@@ -22,7 +22,7 @@ class AppsyncTypescriptFunction extends appsync.AppsyncFunction {
|
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
}
|
|
25
|
-
_a = JSII_RTTI_SYMBOL_1;
|
|
26
|
-
AppsyncTypescriptFunction[_a] = { fqn: "cdk-appsync-typescript-resolver.AppsyncTypescriptFunction", version: "0.0.25" };
|
|
27
25
|
exports.AppsyncTypescriptFunction = AppsyncTypescriptFunction;
|
|
28
|
-
|
|
26
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
27
|
+
AppsyncTypescriptFunction[_a] = { fqn: "cdk-appsync-typescript-resolver.AppsyncTypescriptFunction", version: "0.0.27" };
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwc3luY1R5cGVzY3JpcHRGdW5jdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9BcHBzeW5jVHlwZXNjcmlwdEZ1bmN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbURBQW1EO0FBR25ELHVDQUFtQztBQUVuQzs7R0FFRztBQUNILE1BQWEseUJBQTBCLFNBQVEsT0FBTyxDQUFDLGVBQWU7SUFDcEUsWUFDRSxLQUFpQixFQUNqQixFQUFVLEVBQ1YsS0FBcUM7UUFFckMsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsY0FBYyxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ2xELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsR0FBRyxLQUFLO1lBQ1IsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUMzQixJQUFBLGdCQUFNLEVBQUM7Z0JBQ0wsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLFNBQVMsRUFBRSxTQUFTLElBQUksS0FBSztnQkFDN0IsY0FBYzthQUNmLENBQUMsQ0FDSDtZQUNELE9BQU8sRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLFFBQVE7U0FDMUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFsQkgsOERBbUJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXBwc3luYyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBwc3luYyc7XG5pbXBvcnQgdHlwZSB7IElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB0eXBlIHsgQXBwc3luY1R5cGVzY3JpcHRGdW5jdGlvblByb3BzIH0gZnJvbSAnLi9BcHBzeW5jVHlwZXNjcmlwdEZ1bmN0aW9uUHJvcHMnO1xuaW1wb3J0IHsgYnVuZGxlIH0gZnJvbSAnLi9idW5kbGVyJztcblxuLyoqXG4gKiBUcmFuc3BpbGUgYW5kIGJ1bmRsZSBUeXBlc2NyaXB0IHRvIEFXUyBBcHBzeW5jIEpTIGZ1bmN0aW9uXG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBzeW5jVHlwZXNjcmlwdEZ1bmN0aW9uIGV4dGVuZHMgYXBwc3luYy5BcHBzeW5jRnVuY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogSUNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBBcHBzeW5jVHlwZXNjcmlwdEZ1bmN0aW9uUHJvcHMsXG4gICkge1xuICAgIGNvbnN0IHsgcGF0aCwgc291cmNlTWFwLCByZXBsYWNlU3RyaW5ncyB9ID0gcHJvcHM7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGNvZGU6IGFwcHN5bmMuQ29kZS5mcm9tSW5saW5lKFxuICAgICAgICBidW5kbGUoe1xuICAgICAgICAgIGVudHJ5UG9pbnQ6IHBhdGgsXG4gICAgICAgICAgc291cmNlTWFwOiBzb3VyY2VNYXAgPz8gZmFsc2UsXG4gICAgICAgICAgcmVwbGFjZVN0cmluZ3MsXG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICAgIHJ1bnRpbWU6IGFwcHN5bmMuRnVuY3Rpb25SdW50aW1lLkpTXzFfMF8wLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -25,6 +25,13 @@ export interface AppsyncTypescriptFunctionProps {
|
|
|
25
25
|
* @stability stable
|
|
26
26
|
*/
|
|
27
27
|
readonly requestMappingTemplate?: aws_appsync.MappingTemplate;
|
|
28
|
+
/**
|
|
29
|
+
* The maximum number of resolver request inputs that will be sent to a single AWS Lambda function in a BatchInvoke operation.
|
|
30
|
+
* Can only be set when using LambdaDataSource.
|
|
31
|
+
* @default - No max batch size
|
|
32
|
+
* @stability stable
|
|
33
|
+
*/
|
|
34
|
+
readonly maxBatchSize?: number;
|
|
28
35
|
/**
|
|
29
36
|
* the description for this AppSync Function.
|
|
30
37
|
* @default - no description
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwc3luY1R5cGVzY3JpcHRGdW5jdGlvblByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0FwcHN5bmNUeXBlc2NyaXB0RnVuY3Rpb25Qcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBhd3NfYXBwc3luYyB9IGZyb20gJ2F3cy1jZGstbGliJztcblxuLyoqXG4gKiBBcHBzeW5jVHlwZXNjcmlwdEZ1bmN0aW9uUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcHBzeW5jVHlwZXNjcmlwdEZ1bmN0aW9uUHJvcHMge1xuICAvKipcbiAgICogdGhlIGRhdGEgc291cmNlIGxpbmtlZCB0byB0aGlzIEFwcFN5bmMgRnVuY3Rpb24uXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBkYXRhU291cmNlOiBhd3NfYXBwc3luYy5CYXNlRGF0YVNvdXJjZTtcbiAgLyoqXG4gICAqIHRoZSBHcmFwaFFMIEFwaSBsaW5rZWQgdG8gdGhpcyBBcHBTeW5jIEZ1bmN0aW9uLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXBpOiBhd3NfYXBwc3luYy5JR3JhcGhxbEFwaTtcbiAgLyoqXG4gICAqIHRoZSByZXNwb25zZSBtYXBwaW5nIHRlbXBsYXRlIGZvciB0aGUgQXBwU3luYyBGdW5jdGlvbi5cbiAgICogQGRlZmF1bHQgLSBubyByZXNwb25zZSBtYXBwaW5nIHRlbXBsYXRlXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSByZXNwb25zZU1hcHBpbmdUZW1wbGF0ZT86IGF3c19hcHBzeW5jLk1hcHBpbmdUZW1wbGF0ZTtcbiAgLyoqXG4gICAqIHRoZSByZXF1ZXN0IG1hcHBpbmcgdGVtcGxhdGUgZm9yIHRoZSBBcHBTeW5jIEZ1bmN0aW9uLlxuICAgKiBAZGVmYXVsdCAtIG5vIHJlcXVlc3QgbWFwcGluZyB0ZW1wbGF0ZVxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVxdWVzdE1hcHBpbmdUZW1wbGF0ZT86IGF3c19hcHBzeW5jLk1hcHBpbmdUZW1wbGF0ZTtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiByZXNvbHZlciByZXF1ZXN0IGlucHV0cyB0aGF0IHdpbGwgYmUgc2VudCB0byBhIHNpbmdsZSBBV1MgTGFtYmRhIGZ1bmN0aW9uIGluIGEgQmF0Y2hJbnZva2Ugb3BlcmF0aW9uLlxuICAgKiBDYW4gb25seSBiZSBzZXQgd2hlbiB1c2luZyBMYW1iZGFEYXRhU291cmNlLlxuICAgKiBAZGVmYXVsdCAtIE5vIG1heCBiYXRjaCBzaXplXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBtYXhCYXRjaFNpemU/OiBudW1iZXI7XG4gIC8qKlxuICAgKiB0aGUgZGVzY3JpcHRpb24gZm9yIHRoaXMgQXBwU3luYyBGdW5jdGlvbi5cbiAgICogQGRlZmF1bHQgLSBubyBkZXNjcmlwdGlvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIC8qKlxuICAgKiB0aGUgbmFtZSBvZiB0aGUgQXBwU3luYyBGdW5jdGlvbi5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEEgbWFwIG9mIHJlcGxhY2VtZW50IHN0cmluZ3MgaW4gdGhlIGJ1bmRsZWQgY29kZS4gZS5nIHsgRU5WOiBcIlBST0RcIiB9XG4gICAqL1xuICByZWFkb25seSByZXBsYWNlU3RyaW5ncz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBGbGFnIHRvIGVuYWJsZSBvciBkaXNhYmxlIHNvdXJjZSBtYXBzIGluIGJ1bmRsZWQgY29kZS4gZGVmYXVsdHMgdG8gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZU1hcD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQYXRoIG9mIHR5cGVzY3JpcHQgZmlsZSB0aGF0IHdpbGwgYmUgdHJhbnNwaWxlZCBhbmQgYnVuZGxlZFxuICAgKi9cbiAgcmVhZG9ubHkgcGF0aDogc3RyaW5nO1xufVxuIl19
|
|
@@ -3,7 +3,7 @@ import type { IConstruct } from 'constructs';
|
|
|
3
3
|
import type { TSExpressPipelineResolverProps } from './TSExpressPipelineResolverProps';
|
|
4
4
|
/**
|
|
5
5
|
* Appsync's JS pipeline resolver with default bolierplate code using AppsyncTypescriptFunction construct
|
|
6
|
-
* @deprecated -
|
|
6
|
+
* @deprecated - Use {@link TypescriptUnitResolver} instead
|
|
7
7
|
*/
|
|
8
8
|
export declare class TSExpressPipelineResolver extends appsync.Resolver {
|
|
9
9
|
constructor(scope: IConstruct, id: string, props: TSExpressPipelineResolverProps);
|
|
@@ -15,7 +15,7 @@ export function response(ctx) {
|
|
|
15
15
|
}`;
|
|
16
16
|
/**
|
|
17
17
|
* Appsync's JS pipeline resolver with default bolierplate code using AppsyncTypescriptFunction construct
|
|
18
|
-
* @deprecated -
|
|
18
|
+
* @deprecated - Use {@link TypescriptUnitResolver} instead
|
|
19
19
|
*/
|
|
20
20
|
class TSExpressPipelineResolver extends appsync.Resolver {
|
|
21
21
|
constructor(scope, id, props) {
|
|
@@ -28,7 +28,7 @@ class TSExpressPipelineResolver extends appsync.Resolver {
|
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
_a = JSII_RTTI_SYMBOL_1;
|
|
32
|
-
TSExpressPipelineResolver[_a] = { fqn: "cdk-appsync-typescript-resolver.TSExpressPipelineResolver", version: "0.0.25" };
|
|
33
31
|
exports.TSExpressPipelineResolver = TSExpressPipelineResolver;
|
|
34
|
-
|
|
32
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
33
|
+
TSExpressPipelineResolver[_a] = { fqn: "cdk-appsync-typescript-resolver.TSExpressPipelineResolver", version: "0.0.27" };
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVFNFeHByZXNzUGlwZWxpbmVSZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9UU0V4cHJlc3NQaXBlbGluZVJlc29sdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbURBQW1EO0FBSW5ELE1BQU0sbUJBQW1CLEdBQVc7Ozs7Ozs7O0VBUWxDLENBQUM7QUFFSDs7O0dBR0c7QUFDSCxNQUFhLHlCQUEwQixTQUFRLE9BQU8sQ0FBQyxRQUFRO0lBQzdELFlBQ0UsS0FBaUIsRUFDakIsRUFBVSxFQUNWLEtBQXFDO1FBRXJDLE1BQU0sRUFBRSxVQUFVLEVBQUUsZUFBZSxFQUFFLEdBQUcsYUFBYSxFQUFFLEdBQUcsS0FBSyxDQUFDO1FBQ2hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsR0FBRyxhQUFhO1lBQ2hCLGNBQWMsRUFBRSxDQUFDLGVBQWUsQ0FBQztZQUNqQyxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsbUJBQW1CLENBQUM7WUFDbEQsT0FBTyxFQUFFLE9BQU8sQ0FBQyxlQUFlLENBQUMsUUFBUTtTQUMxQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQWJILDhEQWNDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYXBwc3luYyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBwc3luYyc7XG5pbXBvcnQgdHlwZSB7IElDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB0eXBlIHsgVFNFeHByZXNzUGlwZWxpbmVSZXNvbHZlclByb3BzIH0gZnJvbSAnLi9UU0V4cHJlc3NQaXBlbGluZVJlc29sdmVyUHJvcHMnO1xuXG5jb25zdCBkZWZhdWx0UGlwZWxpbmVDb2RlOiBzdHJpbmcgPSBgXG4vLyBUaGUgYmVmb3JlIHN0ZXBcbmV4cG9ydCBmdW5jdGlvbiByZXF1ZXN0KCkge1xuICAgIHJldHVybiB7fVxufVxuLy8gVGhlIGFmdGVyIHN0ZXBcbmV4cG9ydCBmdW5jdGlvbiByZXNwb25zZShjdHgpIHtcbiAgICByZXR1cm4gY3R4LnByZXYucmVzdWx0XG59YDtcblxuLyoqXG4gKiBBcHBzeW5jJ3MgSlMgcGlwZWxpbmUgcmVzb2x2ZXIgd2l0aCBkZWZhdWx0IGJvbGllcnBsYXRlIGNvZGUgdXNpbmcgQXBwc3luY1R5cGVzY3JpcHRGdW5jdGlvbiBjb25zdHJ1Y3RcbiAqIEBkZXByZWNhdGVkIC0gVXNlIHtAbGluayBUeXBlc2NyaXB0VW5pdFJlc29sdmVyfSBpbnN0ZWFkXG4gKi9cbmV4cG9ydCBjbGFzcyBUU0V4cHJlc3NQaXBlbGluZVJlc29sdmVyIGV4dGVuZHMgYXBwc3luYy5SZXNvbHZlciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBJQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IFRTRXhwcmVzc1BpcGVsaW5lUmVzb2x2ZXJQcm9wcyxcbiAgKSB7XG4gICAgY29uc3QgeyB0c0Z1bmN0aW9uOiBhcHBzeW5jRnVuY3Rpb24sIC4uLnJlc29sdmVyUHJvcHMgfSA9IHByb3BzO1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucmVzb2x2ZXJQcm9wcyxcbiAgICAgIHBpcGVsaW5lQ29uZmlnOiBbYXBwc3luY0Z1bmN0aW9uXSxcbiAgICAgIGNvZGU6IGFwcHN5bmMuQ29kZS5mcm9tSW5saW5lKGRlZmF1bHRQaXBlbGluZUNvZGUpLFxuICAgICAgcnVudGltZTogYXBwc3luYy5GdW5jdGlvblJ1bnRpbWUuSlNfMV8wXzAsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import * as appsync from 'aws-cdk-lib/aws-appsync';
|
|
2
|
+
import type { IConstruct } from 'constructs';
|
|
3
|
+
import type { TypescriptUnitResolverProps } from './TypescriptUnitResolverProps';
|
|
4
|
+
export declare class TypescriptUnitResolver extends appsync.Resolver {
|
|
5
|
+
constructor(scope: IConstruct, id: string, props: TypescriptUnitResolverProps);
|
|
6
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var _a;
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.TypescriptUnitResolver = void 0;
|
|
5
|
+
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
6
|
+
const appsync = require("aws-cdk-lib/aws-appsync");
|
|
7
|
+
const bundler_1 = require("./bundler");
|
|
8
|
+
class TypescriptUnitResolver extends appsync.Resolver {
|
|
9
|
+
constructor(scope, id, props) {
|
|
10
|
+
const { path, sourceMap, replaceStrings, ...resolverProps } = props;
|
|
11
|
+
super(scope, id, {
|
|
12
|
+
code: appsync.Code.fromInline((0, bundler_1.bundle)({
|
|
13
|
+
entryPoint: path,
|
|
14
|
+
sourceMap: sourceMap ?? false,
|
|
15
|
+
replaceStrings,
|
|
16
|
+
})),
|
|
17
|
+
runtime: appsync.FunctionRuntime.JS_1_0_0,
|
|
18
|
+
...resolverProps,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
exports.TypescriptUnitResolver = TypescriptUnitResolver;
|
|
23
|
+
_a = JSII_RTTI_SYMBOL_1;
|
|
24
|
+
TypescriptUnitResolver[_a] = { fqn: "cdk-appsync-typescript-resolver.TypescriptUnitResolver", version: "0.0.27" };
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHlwZXNjcmlwdFVuaXRSZXNvbHZlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9UeXBlc2NyaXB0VW5pdFJlc29sdmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbURBQW1EO0FBRW5ELHVDQUFtQztBQUduQyxNQUFhLHNCQUF1QixTQUFRLE9BQU8sQ0FBQyxRQUFRO0lBQzFELFlBQVksS0FBaUIsRUFBRSxFQUFVLEVBQUUsS0FBa0M7UUFDM0UsTUFBTSxFQUNKLElBQUksRUFDSixTQUFTLEVBQ1QsY0FBYyxFQUNkLEdBQUcsYUFBYSxFQUNqQixHQUFHLEtBQUssQ0FBQztRQUVWLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUMzQixJQUFBLGdCQUFNLEVBQUM7Z0JBQ0wsVUFBVSxFQUFFLElBQUk7Z0JBQ2hCLFNBQVMsRUFBRSxTQUFTLElBQUksS0FBSztnQkFDN0IsY0FBYzthQUNmLENBQUMsQ0FDSDtZQUNELE9BQU8sRUFBRSxPQUFPLENBQUMsZUFBZSxDQUFDLFFBQVE7WUFDekMsR0FBRyxhQUFhO1NBQ2pCLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBcEJILHdEQXFCQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFwcHN5bmMgZnJvbSAnYXdzLWNkay1saWIvYXdzLWFwcHN5bmMnO1xuaW1wb3J0IHR5cGUgeyBJQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBidW5kbGUgfSBmcm9tICcuL2J1bmRsZXInO1xuaW1wb3J0IHR5cGUgeyBUeXBlc2NyaXB0VW5pdFJlc29sdmVyUHJvcHMgfSBmcm9tICcuL1R5cGVzY3JpcHRVbml0UmVzb2x2ZXJQcm9wcyc7XG5cbmV4cG9ydCBjbGFzcyBUeXBlc2NyaXB0VW5pdFJlc29sdmVyIGV4dGVuZHMgYXBwc3luYy5SZXNvbHZlciB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBJQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogVHlwZXNjcmlwdFVuaXRSZXNvbHZlclByb3BzKSB7XG4gICAgY29uc3Qge1xuICAgICAgcGF0aCxcbiAgICAgIHNvdXJjZU1hcCxcbiAgICAgIHJlcGxhY2VTdHJpbmdzLFxuICAgICAgLi4ucmVzb2x2ZXJQcm9wc1xuICAgIH0gPSBwcm9wcztcblxuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgY29kZTogYXBwc3luYy5Db2RlLmZyb21JbmxpbmUoXG4gICAgICAgIGJ1bmRsZSh7XG4gICAgICAgICAgZW50cnlQb2ludDogcGF0aCxcbiAgICAgICAgICBzb3VyY2VNYXA6IHNvdXJjZU1hcCA/PyBmYWxzZSxcbiAgICAgICAgICByZXBsYWNlU3RyaW5ncyxcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICAgcnVudGltZTogYXBwc3luYy5GdW5jdGlvblJ1bnRpbWUuSlNfMV8wXzAsXG4gICAgICAuLi5yZXNvbHZlclByb3BzLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { aws_appsync } from 'aws-cdk-lib';
|
|
2
|
+
/**
|
|
3
|
+
* TypescriptUnitResolverProps
|
|
4
|
+
*/
|
|
5
|
+
export interface TypescriptUnitResolverProps {
|
|
6
|
+
/**
|
|
7
|
+
* The API this resolver is attached to.
|
|
8
|
+
* @stability stable
|
|
9
|
+
*/
|
|
10
|
+
readonly api: aws_appsync.IGraphqlApi;
|
|
11
|
+
/**
|
|
12
|
+
* The data source this resolver is using.
|
|
13
|
+
* @default - No datasource
|
|
14
|
+
* @stability stable
|
|
15
|
+
*/
|
|
16
|
+
readonly dataSource?: aws_appsync.BaseDataSource;
|
|
17
|
+
/**
|
|
18
|
+
* The maximum number of elements per batch, when using batch invoke.
|
|
19
|
+
* @default - No max batch size
|
|
20
|
+
* @stability stable
|
|
21
|
+
*/
|
|
22
|
+
readonly maxBatchSize?: number;
|
|
23
|
+
/**
|
|
24
|
+
* The caching configuration for this resolver.
|
|
25
|
+
* @default - No caching configuration
|
|
26
|
+
* @stability stable
|
|
27
|
+
*/
|
|
28
|
+
readonly cachingConfig?: aws_appsync.CachingConfig;
|
|
29
|
+
/**
|
|
30
|
+
* name of the GraphQL type this resolver is attached to.
|
|
31
|
+
* @stability stable
|
|
32
|
+
*/
|
|
33
|
+
readonly typeName: string;
|
|
34
|
+
/**
|
|
35
|
+
* name of the GraphQL field in the given type this resolver is attached to.
|
|
36
|
+
* @stability stable
|
|
37
|
+
*/
|
|
38
|
+
readonly fieldName: string;
|
|
39
|
+
/**
|
|
40
|
+
* A map of replacement strings in the bundled code. e.g { ENV: "PROD" }
|
|
41
|
+
*/
|
|
42
|
+
readonly replaceStrings?: Record<string, string>;
|
|
43
|
+
/**
|
|
44
|
+
* Flag to enable or disable source maps in bundled code. defaults to false
|
|
45
|
+
*/
|
|
46
|
+
readonly sourceMap?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Path of typescript file that will be transpiled and bundled
|
|
49
|
+
*/
|
|
50
|
+
readonly path: string;
|
|
51
|
+
}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHlwZXNjcmlwdFVuaXRSZXNvbHZlclByb3BzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1R5cGVzY3JpcHRVbml0UmVzb2x2ZXJQcm9wcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiLy8gfn4gR2VuZXJhdGVkIGJ5IHByb2plbi4gVG8gbW9kaWZ5LCBlZGl0IC5wcm9qZW5yYy50cyBhbmQgcnVuIFwibnB4IHByb2plblwiLlxuaW1wb3J0IHR5cGUgeyBhd3NfYXBwc3luYyB9IGZyb20gJ2F3cy1jZGstbGliJztcblxuLyoqXG4gKiBUeXBlc2NyaXB0VW5pdFJlc29sdmVyUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUeXBlc2NyaXB0VW5pdFJlc29sdmVyUHJvcHMge1xuICAvKipcbiAgICogVGhlIEFQSSB0aGlzIHJlc29sdmVyIGlzIGF0dGFjaGVkIHRvLlxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXBpOiBhd3NfYXBwc3luYy5JR3JhcGhxbEFwaTtcbiAgLyoqXG4gICAqIFRoZSBkYXRhIHNvdXJjZSB0aGlzIHJlc29sdmVyIGlzIHVzaW5nLlxuICAgKiBAZGVmYXVsdCAtIE5vIGRhdGFzb3VyY2VcbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFTb3VyY2U/OiBhd3NfYXBwc3luYy5CYXNlRGF0YVNvdXJjZTtcbiAgLyoqXG4gICAqIFRoZSBtYXhpbXVtIG51bWJlciBvZiBlbGVtZW50cyBwZXIgYmF0Y2gsIHdoZW4gdXNpbmcgYmF0Y2ggaW52b2tlLlxuICAgKiBAZGVmYXVsdCAtIE5vIG1heCBiYXRjaCBzaXplXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBtYXhCYXRjaFNpemU/OiBudW1iZXI7XG4gIC8qKlxuICAgKiBUaGUgY2FjaGluZyBjb25maWd1cmF0aW9uIGZvciB0aGlzIHJlc29sdmVyLlxuICAgKiBAZGVmYXVsdCAtIE5vIGNhY2hpbmcgY29uZmlndXJhdGlvblxuICAgKiBAc3RhYmlsaXR5IHN0YWJsZVxuICAgKi9cbiAgcmVhZG9ubHkgY2FjaGluZ0NvbmZpZz86IGF3c19hcHBzeW5jLkNhY2hpbmdDb25maWc7XG4gIC8qKlxuICAgKiBuYW1lIG9mIHRoZSBHcmFwaFFMIHR5cGUgdGhpcyByZXNvbHZlciBpcyBhdHRhY2hlZCB0by5cbiAgICogQHN0YWJpbGl0eSBzdGFibGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBuYW1lIG9mIHRoZSBHcmFwaFFMIGZpZWxkIGluIHRoZSBnaXZlbiB0eXBlIHRoaXMgcmVzb2x2ZXIgaXMgYXR0YWNoZWQgdG8uXG4gICAqIEBzdGFiaWxpdHkgc3RhYmxlXG4gICAqL1xuICByZWFkb25seSBmaWVsZE5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEEgbWFwIG9mIHJlcGxhY2VtZW50IHN0cmluZ3MgaW4gdGhlIGJ1bmRsZWQgY29kZS4gZS5nIHsgRU5WOiBcIlBST0RcIiB9XG4gICAqL1xuICByZWFkb25seSByZXBsYWNlU3RyaW5ncz86IFJlY29yZDxzdHJpbmcsIHN0cmluZz47XG4gIC8qKlxuICAgKiBGbGFnIHRvIGVuYWJsZSBvciBkaXNhYmxlIHNvdXJjZSBtYXBzIGluIGJ1bmRsZWQgY29kZS4gZGVmYXVsdHMgdG8gZmFsc2VcbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZU1hcD86IGJvb2xlYW47XG4gIC8qKlxuICAgKiBQYXRoIG9mIHR5cGVzY3JpcHQgZmlsZSB0aGF0IHdpbGwgYmUgdHJhbnNwaWxlZCBhbmQgYnVuZGxlZFxuICAgKi9cbiAgcmVhZG9ubHkgcGF0aDogc3RyaW5nO1xufVxuIl19
|
package/lib/bundler.js
CHANGED
|
@@ -25,4 +25,4 @@ const bundle = (props) => {
|
|
|
25
25
|
return bundledCode;
|
|
26
26
|
};
|
|
27
27
|
exports.bundle = bundle;
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
28
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9idW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFtQztBQVE1QixNQUFNLE1BQU0sR0FBRyxDQUFDLEtBQWtCLEVBQUUsRUFBRTtJQUMzQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFFeEQsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUNwQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLENBQUM7UUFDekIsUUFBUSxFQUFFLENBQUMsb0JBQW9CLENBQUM7UUFDaEMsTUFBTSxFQUFFLElBQUk7UUFDWixLQUFLLEVBQUUsS0FBSztRQUNaLFFBQVEsRUFBRSxNQUFNO1FBQ2hCLE1BQU0sRUFBRSxRQUFRO1FBQ2hCLE1BQU0sRUFBRSxLQUFLO1FBQ2IsU0FBUyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLO1FBQ3ZDLGNBQWMsRUFBRSxLQUFLO0tBQ3RCLENBQUMsQ0FBQztJQUVILElBQUksV0FBVyxHQUFHLFdBQVcsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBRWxELElBQUksY0FBYyxFQUFFLENBQUM7UUFDbkIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ3RELE1BQU0sTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUNwQyxXQUFXLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsT0FBTyxXQUFXLENBQUM7QUFDckIsQ0FBQyxDQUFDO0FBekJXLFFBQUEsTUFBTSxVQXlCakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBlc2J1aWxkIGZyb20gJ2VzYnVpbGQnO1xuXG50eXBlIEJ1bmRsZVByb3BzID0gUmVhZG9ubHk8e1xuICBlbnRyeVBvaW50OiBzdHJpbmc7XG4gIHNvdXJjZU1hcDogYm9vbGVhbjtcbiAgcmVwbGFjZVN0cmluZ3M/OiB7IFtrOiBzdHJpbmddOiBzdHJpbmcgfTtcbn0+O1xuXG5leHBvcnQgY29uc3QgYnVuZGxlID0gKHByb3BzOiBCdW5kbGVQcm9wcykgPT4ge1xuICBjb25zdCB7IGVudHJ5UG9pbnQsIHNvdXJjZU1hcCwgcmVwbGFjZVN0cmluZ3MgfSA9IHByb3BzO1xuXG4gIGNvbnN0IGJ1aWxkUmVzdWx0ID0gZXNidWlsZC5idWlsZFN5bmMoe1xuICAgIGVudHJ5UG9pbnRzOiBbZW50cnlQb2ludF0sXG4gICAgZXh0ZXJuYWw6IFsnQGF3cy1hcHBzeW5jL3V0aWxzJ10sXG4gICAgYnVuZGxlOiB0cnVlLFxuICAgIHdyaXRlOiBmYWxzZSxcbiAgICBwbGF0Zm9ybTogJ25vZGUnLFxuICAgIHRhcmdldDogJ2VzbmV4dCcsXG4gICAgZm9ybWF0OiAnZXNtJyxcbiAgICBzb3VyY2VtYXA6IHNvdXJjZU1hcCA/ICdpbmxpbmUnIDogZmFsc2UsXG4gICAgc291cmNlc0NvbnRlbnQ6IGZhbHNlLFxuICB9KTtcblxuICBsZXQgYnVuZGxlZENvZGUgPSBidWlsZFJlc3VsdC5vdXRwdXRGaWxlc1swXS50ZXh0O1xuXG4gIGlmIChyZXBsYWNlU3RyaW5ncykge1xuICAgIE9iamVjdC5lbnRyaWVzKHJlcGxhY2VTdHJpbmdzKS5mb3JFYWNoKChba2V5LCB2YWx1ZV0pID0+IHtcbiAgICAgIGNvbnN0IHJlZ0V4cCA9IG5ldyBSZWdFeHAoa2V5LCAnZycpO1xuICAgICAgYnVuZGxlZENvZGUgPSBidW5kbGVkQ29kZS5yZXBsYWNlKHJlZ0V4cCwgdmFsdWUpO1xuICAgIH0pO1xuICB9XG5cbiAgcmV0dXJuIGJ1bmRsZWRDb2RlO1xufTtcbiJdfQ==
|
package/lib/index.d.ts
CHANGED
|
@@ -2,3 +2,5 @@ export * from './AppsyncTypescriptFunction';
|
|
|
2
2
|
export * from './AppsyncTypescriptFunctionProps';
|
|
3
3
|
export * from './TSExpressPipelineResolver';
|
|
4
4
|
export * from './TSExpressPipelineResolverProps';
|
|
5
|
+
export * from './TypescriptUnitResolver';
|
|
6
|
+
export * from './TypescriptUnitResolverProps';
|