@intentius/chant-lexicon-aws 0.0.16 → 0.0.22
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/dist/integrity.json +6 -6
- package/dist/manifest.json +1 -1
- package/dist/meta.json +449 -93
- package/dist/rules/ext001.ts +4 -0
- package/dist/skills/chant-aws.md +1 -1
- package/dist/types/index.d.ts +406 -28
- package/package.json +20 -2
- package/src/codegen/docs.ts +3 -0
- package/src/composites/composites.test.ts +4 -2
- package/src/composites/lambda-sqs.ts +2 -2
- package/src/generated/index.d.ts +406 -28
- package/src/generated/index.ts +39 -6
- package/src/generated/lexicon-aws.json +449 -93
- package/src/lint/post-synth/ext001.ts +4 -0
- package/src/plugin.ts +87 -2
- package/src/skills/chant-eks.md +3 -0
package/package.json
CHANGED
|
@@ -1,7 +1,25 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@intentius/chant-lexicon-aws",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.22",
|
|
4
|
+
"description": "AWS CloudFormation lexicon for chant — declarative IaC in TypeScript",
|
|
4
5
|
"license": "Apache-2.0",
|
|
6
|
+
"homepage": "https://intentius.io/chant",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "https://github.com/intentius/chant.git",
|
|
10
|
+
"directory": "lexicons/aws"
|
|
11
|
+
},
|
|
12
|
+
"bugs": {
|
|
13
|
+
"url": "https://github.com/intentius/chant/issues"
|
|
14
|
+
},
|
|
15
|
+
"keywords": [
|
|
16
|
+
"infrastructure-as-code",
|
|
17
|
+
"iac",
|
|
18
|
+
"typescript",
|
|
19
|
+
"aws",
|
|
20
|
+
"cloudformation",
|
|
21
|
+
"chant"
|
|
22
|
+
],
|
|
5
23
|
"type": "module",
|
|
6
24
|
"files": [
|
|
7
25
|
"src/",
|
|
@@ -25,7 +43,7 @@
|
|
|
25
43
|
"prepack": "bun run generate && bun run bundle && bun run validate"
|
|
26
44
|
},
|
|
27
45
|
"dependencies": {
|
|
28
|
-
"@intentius/chant": "0.0.
|
|
46
|
+
"@intentius/chant": "0.0.22",
|
|
29
47
|
"fflate": "^0.8.2",
|
|
30
48
|
"js-yaml": "^4.1.0"
|
|
31
49
|
},
|
package/src/codegen/docs.ts
CHANGED
|
@@ -1107,6 +1107,9 @@ The lexicon also provides MCP (Model Context Protocol) tools and resources that
|
|
|
1107
1107
|
| \`examples/basic-stack\` | Example stack with S3 bucket and IAM role |`,
|
|
1108
1108
|
},
|
|
1109
1109
|
],
|
|
1110
|
+
sidebarExtra: [
|
|
1111
|
+
{ label: "Deploying to EKS", slug: "eks-kubernetes" },
|
|
1112
|
+
],
|
|
1110
1113
|
};
|
|
1111
1114
|
|
|
1112
1115
|
log("Generating AWS documentation...");
|
|
@@ -194,9 +194,9 @@ describe("LambdaScheduled", () => {
|
|
|
194
194
|
});
|
|
195
195
|
|
|
196
196
|
describe("LambdaSqs", () => {
|
|
197
|
-
test("returns queue, role, func members", () => {
|
|
197
|
+
test("returns queue, role, func, eventSourceMapping members", () => {
|
|
198
198
|
const instance = LambdaSqs(baseProps);
|
|
199
|
-
expect(Object.keys(instance.members)).toEqual(["queue", "role", "func"]);
|
|
199
|
+
expect(Object.keys(instance.members)).toEqual(["queue", "role", "func", "eventSourceMapping"]);
|
|
200
200
|
});
|
|
201
201
|
|
|
202
202
|
test("expandComposite produces 4 entries (queue + role + func + eventSourceMapping)", () => {
|
|
@@ -204,6 +204,8 @@ describe("LambdaSqs", () => {
|
|
|
204
204
|
expect(expanded.has("workerQueue")).toBe(true);
|
|
205
205
|
expect(expanded.has("workerRole")).toBe(true);
|
|
206
206
|
expect(expanded.has("workerFunc")).toBe(true);
|
|
207
|
+
expect(expanded.has("workerEventSourceMapping")).toBe(true);
|
|
208
|
+
expect(expanded.size).toBe(4);
|
|
207
209
|
});
|
|
208
210
|
});
|
|
209
211
|
|
|
@@ -33,12 +33,12 @@ export const LambdaSqs = Composite<LambdaSqsProps>((props) => {
|
|
|
33
33
|
const policies = props.Policies ? [sqsPolicy, ...props.Policies] : [sqsPolicy];
|
|
34
34
|
const { role, func } = LambdaFunction({ ...props, Policies: policies });
|
|
35
35
|
|
|
36
|
-
new EventSourceMapping({
|
|
36
|
+
const eventSourceMapping = new EventSourceMapping({
|
|
37
37
|
EventSourceArn: queue.Arn,
|
|
38
38
|
FunctionName: func.Arn,
|
|
39
39
|
BatchSize: props.batchSize ?? 10,
|
|
40
40
|
MaximumBatchingWindowInSeconds: props.maxBatchingWindow,
|
|
41
41
|
});
|
|
42
42
|
|
|
43
|
-
return { queue, role, func };
|
|
43
|
+
return { queue, role, func, eventSourceMapping };
|
|
44
44
|
}, "LambdaSqs");
|