@emulates/eventbridge 0.0.0-stage → 1.0.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/dist/server.js ADDED
@@ -0,0 +1,14 @@
1
+ import {
2
+ DEFAULT_PORT,
3
+ createServer,
4
+ createServer2,
5
+ serveTarget
6
+ } from "./chunk-USDGJJMD.js";
7
+ import "./chunk-ZBGM52QX.js";
8
+ export {
9
+ DEFAULT_PORT,
10
+ createServer as createAwsServer,
11
+ createServer2 as createServer,
12
+ serveTarget
13
+ };
14
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
package/openapi.yaml ADDED
@@ -0,0 +1,50 @@
1
+ openapi: 3.1.0
2
+ info: { title: AWS EventBridge discovery, version: "2015-10-07" }
3
+ servers: [{ url: "https://events.us-east-1.amazonaws.com" }]
4
+ paths:
5
+ /:
6
+ post:
7
+ operationId: EventBridgeRpc
8
+ description: Dispatches AWSEvents.ListRules and AWSEvents.ListTargetsByRule.
9
+ x-emulates: { supported: true, parity: { enabled: true, safe: true } }
10
+ parameters:
11
+ - name: X-Amz-Target
12
+ in: header
13
+ required: true
14
+ schema: { type: string, enum: [AWSEvents.ListRules, AWSEvents.ListTargetsByRule] }
15
+ requestBody:
16
+ required: true
17
+ content:
18
+ application/x-amz-json-1.1:
19
+ schema:
20
+ example: {}
21
+ type: object
22
+ properties:
23
+ Rule: { type: string, minLength: 1, maxLength: 64 }
24
+ NamePrefix: { type: string, minLength: 1, maxLength: 64 }
25
+ EventBusName: { type: string, minLength: 1, maxLength: 1600 }
26
+ Limit: { type: integer, minimum: 1, maximum: 100 }
27
+ NextToken: { type: string, minLength: 1, maxLength: 2048 }
28
+ responses:
29
+ "200":
30
+ description: Rules or targets
31
+ content:
32
+ application/x-amz-json-1.1:
33
+ schema:
34
+ type: object
35
+ properties:
36
+ Rules: { type: array, items: { type: object, required: [Name, Arn], properties: { Name: { type: string }, Arn: { type: string } }, additionalProperties: true } }
37
+ Targets: { type: array, items: { type: object, required: [Id, Arn], properties: { Id: { type: string }, Arn: { type: string } }, additionalProperties: true } }
38
+ NextToken: { type: string }
39
+ "400": { $ref: "#/components/responses/Error" }
40
+ "403": { $ref: "#/components/responses/Error" }
41
+ "404": { $ref: "#/components/responses/Error" }
42
+ "429": { $ref: "#/components/responses/Error" }
43
+ "500": { $ref: "#/components/responses/Error" }
44
+ components:
45
+ responses:
46
+ Error:
47
+ description: AWS JSON error
48
+ content:
49
+ application/x-amz-json-1.1:
50
+ schema: { type: object, required: [__type, message], properties: { __type: { type: string }, message: { type: string } } }
package/package.json CHANGED
@@ -1,6 +1,141 @@
1
1
  {
2
2
  "name": "@emulates/eventbridge",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "1.0.0",
4
+ "description": "Seeded AWS EventBridge rule and ECS target discovery with pagination.",
5
+ "license": "MIT",
6
+ "type": "module",
7
+ "sideEffects": false,
8
+ "files": [
9
+ "dist",
10
+ "README.md",
11
+ "CHANGELOG.md",
12
+ "DISCOVERY.md",
13
+ "SUPPORT.md",
14
+ "openapi.yaml"
15
+ ],
16
+ "main": "./dist/index.js",
17
+ "types": "./dist/index.d.ts",
18
+ "exports": {
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "default": "./dist/index.js"
22
+ },
23
+ "./server": {
24
+ "types": "./dist/server.d.ts",
25
+ "default": "./dist/server.js"
26
+ }
27
+ },
28
+ "bin": {
29
+ "emulates-eventbridge": "./dist/cli.js"
30
+ },
31
+ "publishConfig": {
32
+ "access": "public",
33
+ "provenance": true
34
+ },
35
+ "repository": {
36
+ "type": "git",
37
+ "url": "git+https://github.com/crvouga/emulates.git",
38
+ "directory": "packages/service/eventbridge"
39
+ },
40
+ "homepage": "https://github.com/crvouga/emulates/tree/main/packages/service/eventbridge#readme",
41
+ "keywords": [
42
+ "emulates",
43
+ "aws",
44
+ "eventbridge",
45
+ "emulator"
46
+ ],
47
+ "emulates": {
48
+ "runtime": "portable",
49
+ "entries": {
50
+ "server": "node",
51
+ "cli": "node"
52
+ },
53
+ "layer": "service",
54
+ "category": "communication",
55
+ "displayName": "AWS EventBridge",
56
+ "status": "wip",
57
+ "vendor": {
58
+ "website": "https://aws.amazon.com/eventbridge/",
59
+ "docs": "https://docs.aws.amazon.com/eventbridge/latest/APIReference/Welcome.html"
60
+ },
61
+ "parity": "Seeded rule and target discovery with pagination",
62
+ "parityTier": "cold",
63
+ "playground": {
64
+ "operation": "EventBridgeRpc"
65
+ },
66
+ "discovery": {
67
+ "guide": "DISCOVERY.md",
68
+ "behavior": "README.md",
69
+ "capabilities": "SUPPORT.md",
70
+ "contract": "openapi.yaml",
71
+ "types": "dist/index.d.ts",
72
+ "oracle": {
73
+ "kind": "Live vendor API or sandbox",
74
+ "command": "bun run parity:service -- eventbridge",
75
+ "note": "Run from an Emulates checkout; credentials come only from .env.local or GitHub Actions secrets. Missing credentials exit 2."
76
+ },
77
+ "introspection": [
78
+ "GET /__admin/health",
79
+ "GET /__admin",
80
+ "GET /__admin/state",
81
+ "GET /__admin/requests",
82
+ "GET /__admin/metrics",
83
+ "GET /__admin/faults/presets",
84
+ "GET /__admin/ui"
85
+ ],
86
+ "reporting": "https://github.com/crvouga/emulates/blob/main/docs/REPORTING_ISSUES.md"
87
+ },
88
+ "aws": {
89
+ "localstackService": "events",
90
+ "operations": [
91
+ "CreateEventBus",
92
+ "DescribeEventBus",
93
+ "ListEventBuses",
94
+ "DeleteEventBus",
95
+ "PutRule",
96
+ "DescribeRule",
97
+ "ListRules",
98
+ "DeleteRule",
99
+ "EnableRule",
100
+ "DisableRule",
101
+ "PutTargets",
102
+ "ListTargetsByRule",
103
+ "RemoveTargets",
104
+ "PutEvents",
105
+ "TagResource",
106
+ "UntagResource",
107
+ "ListTagsForResource"
108
+ ]
109
+ }
110
+ },
111
+ "scripts": {
112
+ "generate": "bun ../../openapi/codegen/dist/cli.js",
113
+ "generate:check": "bun ../../openapi/codegen/dist/cli.js --check",
114
+ "openapi:check": "bun ../../openapi/codegen/dist/cli.js --validate",
115
+ "build": "bun ../../../scripts/bundle-service.ts",
116
+ "typecheck": "tsc -p tsconfig.json --noEmit",
117
+ "lint": "biome check .",
118
+ "test": "bun test",
119
+ "parity": "bun scripts/parity.ts",
120
+ "portability": "bun ../../../scripts/portability.ts",
121
+ "pack:check": "bun ../../../scripts/pack-check.ts",
122
+ "parity:localstack": "bun scripts/localstack-parity.ts"
123
+ },
124
+ "dependencies": {
125
+ "@emulates/sqlite": "3.0.0"
126
+ },
127
+ "devDependencies": {
128
+ "@aws-sdk/client-eventbridge": "3.1132.0",
129
+ "@emulates/credentials": "0.0.0-development",
130
+ "@emulates/adapter-node": "0.0.0-development",
131
+ "@emulates/core": "0.0.0-development",
132
+ "@emulates/openapi": "0.0.0-development",
133
+ "@emulates/openapi-codegen": "0.1.0",
134
+ "@emulates/openapi-metadata": "0.0.0-development",
135
+ "@emulates/parity": "0.0.0-development",
136
+ "@emulates/service": "0.0.0-development",
137
+ "@emulates/sqlite-client": "0.0.0-development",
138
+ "@emulates/testing": "0.1.0",
139
+ "fast-check": "4.9.0"
140
+ }
141
+ }