@eventcatalog/sdk 2.9.11 → 2.11.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.
@@ -38,6 +38,7 @@ interface BaseSchema {
38
38
  icon?: string;
39
39
  }[];
40
40
  resourceGroups?: ResourceGroup[];
41
+ diagrams?: ResourcePointer[];
41
42
  editUrl?: string;
42
43
  draft?: boolean | { title?: string; message?: string };
43
44
  // SDK types
@@ -170,6 +171,9 @@ interface Domain extends BaseSchema {
170
171
  services?: ResourcePointer[];
171
172
  domains?: ResourcePointer[];
172
173
  entities?: ResourcePointer[];
174
+ dataProducts?: ResourcePointer[];
175
+ sends?: SendsPointer[];
176
+ receives?: ReceivesPointer[];
173
177
  detailsPanel?: {
174
178
  parentDomains?: DetailPanelProperty;
175
179
  subdomains?: DetailPanelProperty;
@@ -258,6 +262,30 @@ interface Entity extends BaseSchema {
258
262
  };
259
263
  }
260
264
 
265
+ type DataProductOutputPointer = {
266
+ id: string;
267
+ version?: string;
268
+ contract?: {
269
+ path: string;
270
+ name: string;
271
+ type?: string;
272
+ };
273
+ };
274
+
275
+ interface DataProduct extends BaseSchema {
276
+ inputs?: ResourcePointer[];
277
+ outputs?: DataProductOutputPointer[];
278
+ detailsPanel?: {
279
+ domains?: DetailPanelProperty;
280
+ inputs?: DetailPanelProperty;
281
+ outputs?: DetailPanelProperty;
282
+ versions?: DetailPanelProperty;
283
+ repository?: DetailPanelProperty;
284
+ owners?: DetailPanelProperty;
285
+ changelog?: DetailPanelProperty;
286
+ };
287
+ }
288
+
261
289
  declare enum DataClassification {
262
290
  Public = 'public',
263
291
  Internal = 'internal',
@@ -300,4 +328,4 @@ type EventCatalog = {
300
328
  };
301
329
  };
302
330
 
303
- export type { Badge, BaseSchema, Channel, ChannelPointer, Command, Container, CustomDoc, Domain, Entity, Event, EventCatalog, Message, Query, ReceivesPointer, ResourceGroup, ResourcePointer, SendsPointer, Service, Specification, Specifications, Team, UbiquitousLanguage, UbiquitousLanguageDictionary, User };
331
+ export type { Badge, BaseSchema, Channel, ChannelPointer, Command, Container, CustomDoc, DataProduct, DataProductOutputPointer, Domain, Entity, Event, EventCatalog, Message, Query, ReceivesPointer, ResourceGroup, ResourcePointer, SendsPointer, Service, Specification, Specifications, Team, UbiquitousLanguage, UbiquitousLanguageDictionary, User };
package/dist/types.d.d.ts CHANGED
@@ -38,6 +38,7 @@ interface BaseSchema {
38
38
  icon?: string;
39
39
  }[];
40
40
  resourceGroups?: ResourceGroup[];
41
+ diagrams?: ResourcePointer[];
41
42
  editUrl?: string;
42
43
  draft?: boolean | { title?: string; message?: string };
43
44
  // SDK types
@@ -170,6 +171,9 @@ interface Domain extends BaseSchema {
170
171
  services?: ResourcePointer[];
171
172
  domains?: ResourcePointer[];
172
173
  entities?: ResourcePointer[];
174
+ dataProducts?: ResourcePointer[];
175
+ sends?: SendsPointer[];
176
+ receives?: ReceivesPointer[];
173
177
  detailsPanel?: {
174
178
  parentDomains?: DetailPanelProperty;
175
179
  subdomains?: DetailPanelProperty;
@@ -258,6 +262,30 @@ interface Entity extends BaseSchema {
258
262
  };
259
263
  }
260
264
 
265
+ type DataProductOutputPointer = {
266
+ id: string;
267
+ version?: string;
268
+ contract?: {
269
+ path: string;
270
+ name: string;
271
+ type?: string;
272
+ };
273
+ };
274
+
275
+ interface DataProduct extends BaseSchema {
276
+ inputs?: ResourcePointer[];
277
+ outputs?: DataProductOutputPointer[];
278
+ detailsPanel?: {
279
+ domains?: DetailPanelProperty;
280
+ inputs?: DetailPanelProperty;
281
+ outputs?: DetailPanelProperty;
282
+ versions?: DetailPanelProperty;
283
+ repository?: DetailPanelProperty;
284
+ owners?: DetailPanelProperty;
285
+ changelog?: DetailPanelProperty;
286
+ };
287
+ }
288
+
261
289
  declare enum DataClassification {
262
290
  Public = 'public',
263
291
  Internal = 'internal',
@@ -300,4 +328,4 @@ type EventCatalog = {
300
328
  };
301
329
  };
302
330
 
303
- export type { Badge, BaseSchema, Channel, ChannelPointer, Command, Container, CustomDoc, Domain, Entity, Event, EventCatalog, Message, Query, ReceivesPointer, ResourceGroup, ResourcePointer, SendsPointer, Service, Specification, Specifications, Team, UbiquitousLanguage, UbiquitousLanguageDictionary, User };
331
+ export type { Badge, BaseSchema, Channel, ChannelPointer, Command, Container, CustomDoc, DataProduct, DataProductOutputPointer, Domain, Entity, Event, EventCatalog, Message, Query, ReceivesPointer, ResourceGroup, ResourcePointer, SendsPointer, Service, Specification, Specifications, Team, UbiquitousLanguage, UbiquitousLanguageDictionary, User };
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/types.d.ts"],"sourcesContent":["// Base type for all resources (domains, services and messages)\nexport interface BaseSchema {\n id: string;\n name: string;\n summary?: string;\n version: string;\n badges?: Badge[];\n sidebar?: {\n badge?: string;\n };\n owners?: string[];\n schemaPath?: string;\n markdown: string;\n repository?: {\n language?: string;\n url?: string;\n };\n deprecated?:\n | boolean\n | {\n date?: string;\n message?: string;\n };\n styles?: {\n icon?: string;\n node?: {\n color?: string;\n label?: string;\n };\n };\n attachments?:\n | string[]\n | {\n url: string;\n title?: string;\n type?: string;\n description?: string;\n icon?: string;\n }[];\n resourceGroups?: ResourceGroup[];\n editUrl?: string;\n draft?: boolean | { title?: string; message?: string };\n // SDK types\n schema?: any;\n}\n\nexport type ResourcePointer = {\n id: string;\n version?: string;\n type?: string;\n};\n\nexport type SendsPointer = {\n id: string;\n version?: string;\n to?: ChannelPointer[];\n};\n\nexport type ReceivesPointer = {\n id: string;\n version?: string;\n from?: ChannelPointer[];\n};\n\nexport interface ResourceGroup {\n id?: string;\n title?: string;\n items: ResourcePointer[];\n limit?: number;\n sidebar?: boolean;\n}\n\nexport interface ChannelPointer extends ResourcePointer {\n parameters?: Record<string, string>;\n}\n\nexport type Message = Event | Command | Query;\n\nenum ResourceType {\n Service = 'service',\n Event = 'event',\n Command = 'command',\n}\n\nexport interface CustomDoc {\n title: string;\n summary: string;\n slug?: string;\n sidebar?: {\n label: string;\n order: number;\n };\n owners?: string[];\n badges?: Badge[];\n fileName?: string;\n markdown: string;\n}\n\ninterface MessageDetailsPanelProperty {\n producers?: DetailPanelProperty;\n consumers?: DetailPanelProperty;\n channels?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n}\n\nexport interface Event extends BaseSchema {\n channels?: ChannelPointer[];\n detailsPanel?: MessageDetailsPanelProperty;\n}\nexport interface Command extends BaseSchema {\n channels?: ChannelPointer[];\n detailsPanel?: MessageDetailsPanelProperty;\n}\nexport interface Query extends BaseSchema {\n channels?: ChannelPointer[];\n detailsPanel?: MessageDetailsPanelProperty;\n}\nexport interface Channel extends BaseSchema {\n address?: string;\n protocols?: string[];\n routes?: ChannelPointer[];\n detailsPanel?: {\n producers?: DetailPanelProperty;\n consumers?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n protocols?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n // parameters?: Record<string, Parameter>;\n parameters?: {\n [key: string]: {\n enum?: string[];\n default?: string;\n examples?: string[];\n description?: string;\n };\n };\n}\n\nexport interface Specifications {\n asyncapiPath?: string;\n openapiPath?: string;\n graphqlPath?: string;\n}\n\nexport interface Specification {\n type: 'openapi' | 'asyncapi' | 'graphql';\n path: string;\n name?: string;\n}\n\nexport interface Service extends BaseSchema {\n sends?: SendsPointer[];\n receives?: ReceivesPointer[];\n entities?: ResourcePointer[];\n writesTo?: ResourcePointer[];\n readsFrom?: ResourcePointer[];\n specifications?: Specifications | Specification[];\n detailsPanel?: {\n domains?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n specifications?: DetailPanelProperty;\n entities?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport interface Domain extends BaseSchema {\n services?: ResourcePointer[];\n domains?: ResourcePointer[];\n entities?: ResourcePointer[];\n detailsPanel?: {\n parentDomains?: DetailPanelProperty;\n subdomains?: DetailPanelProperty;\n services?: DetailPanelProperty;\n entities?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n ubiquitousLanguage?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport interface Team {\n id: string;\n name: string;\n summary?: string;\n email?: string;\n hidden?: boolean;\n slackDirectMessageUrl?: string;\n members?: User[];\n ownedCommands?: Command[];\n ownedServices?: Service[];\n ownedEvents?: Event[];\n markdown: string;\n}\n\nexport interface User {\n id: string;\n name: string;\n avatarUrl: string;\n role?: string;\n hidden?: boolean;\n email?: string;\n slackDirectMessageUrl?: string;\n ownedServices?: Service[];\n ownedEvents?: Event[];\n ownedCommands?: Command[];\n associatedTeams?: Team[];\n markdown: string;\n}\n\nexport interface Badge {\n content: string;\n backgroundColor: string;\n textColor: string;\n icon?: string;\n}\n\nexport interface UbiquitousLanguage {\n id: string;\n name: string;\n summary?: string;\n description?: string;\n icon?: string;\n}\n\nexport interface UbiquitousLanguageDictionary {\n dictionary: UbiquitousLanguage[];\n}\n\ninterface DetailPanelProperty {\n visible: boolean;\n}\n\nexport interface Entity extends BaseSchema {\n aggregateRoot?: boolean;\n identifier?: string;\n properties?: {\n name: string;\n type: string;\n required?: boolean;\n description?: string;\n references?: string;\n referencesIdentifier?: string;\n relationType?: string;\n }[];\n detailsPanel?: {\n domains?: DetailPanelProperty;\n services?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nenum DataClassification {\n Public = 'public',\n Internal = 'internal',\n Confidential = 'confidential',\n Regulated = 'regulated',\n}\n\nexport interface Container extends BaseSchema {\n container_type: 'database' | 'cache' | 'objectStore' | 'searchIndex' | 'dataWarehouse' | 'dataLake' | 'externalSaaS' | 'other';\n technology?: string;\n authoritative?: boolean;\n access_mode?: string;\n classification?: DataClassification;\n residency?: string;\n retention?: string;\n detailsPanel?: {\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport type EventCatalog = {\n version: string;\n catalogVersion: string;\n createdAt: string;\n resources: {\n domains?: ExportedResource<Domain>[];\n services?: ExportedResource<Service>[];\n messages?: {\n events?: ExportedResource<Event>[];\n queries?: ExportedResource<Query>[];\n commands?: ExportedResource<Command>[];\n };\n teams?: ExportedResource<Team>[];\n users?: ExportedResource<User>[];\n channels?: ExportedResource<Channel>[];\n customDocs?: ExportedResource<CustomDoc>[];\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
1
+ {"version":3,"sources":["../src/types.d.ts"],"sourcesContent":["// Base type for all resources (domains, services and messages)\nexport interface BaseSchema {\n id: string;\n name: string;\n summary?: string;\n version: string;\n badges?: Badge[];\n sidebar?: {\n badge?: string;\n };\n owners?: string[];\n schemaPath?: string;\n markdown: string;\n repository?: {\n language?: string;\n url?: string;\n };\n deprecated?:\n | boolean\n | {\n date?: string;\n message?: string;\n };\n styles?: {\n icon?: string;\n node?: {\n color?: string;\n label?: string;\n };\n };\n attachments?:\n | string[]\n | {\n url: string;\n title?: string;\n type?: string;\n description?: string;\n icon?: string;\n }[];\n resourceGroups?: ResourceGroup[];\n diagrams?: ResourcePointer[];\n editUrl?: string;\n draft?: boolean | { title?: string; message?: string };\n // SDK types\n schema?: any;\n}\n\nexport type ResourcePointer = {\n id: string;\n version?: string;\n type?: string;\n};\n\nexport type SendsPointer = {\n id: string;\n version?: string;\n to?: ChannelPointer[];\n};\n\nexport type ReceivesPointer = {\n id: string;\n version?: string;\n from?: ChannelPointer[];\n};\n\nexport interface ResourceGroup {\n id?: string;\n title?: string;\n items: ResourcePointer[];\n limit?: number;\n sidebar?: boolean;\n}\n\nexport interface ChannelPointer extends ResourcePointer {\n parameters?: Record<string, string>;\n}\n\nexport type Message = Event | Command | Query;\n\nenum ResourceType {\n Service = 'service',\n Event = 'event',\n Command = 'command',\n}\n\nexport interface CustomDoc {\n title: string;\n summary: string;\n slug?: string;\n sidebar?: {\n label: string;\n order: number;\n };\n owners?: string[];\n badges?: Badge[];\n fileName?: string;\n markdown: string;\n}\n\ninterface MessageDetailsPanelProperty {\n producers?: DetailPanelProperty;\n consumers?: DetailPanelProperty;\n channels?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n}\n\nexport interface Event extends BaseSchema {\n channels?: ChannelPointer[];\n detailsPanel?: MessageDetailsPanelProperty;\n}\nexport interface Command extends BaseSchema {\n channels?: ChannelPointer[];\n detailsPanel?: MessageDetailsPanelProperty;\n}\nexport interface Query extends BaseSchema {\n channels?: ChannelPointer[];\n detailsPanel?: MessageDetailsPanelProperty;\n}\nexport interface Channel extends BaseSchema {\n address?: string;\n protocols?: string[];\n routes?: ChannelPointer[];\n detailsPanel?: {\n producers?: DetailPanelProperty;\n consumers?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n protocols?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n // parameters?: Record<string, Parameter>;\n parameters?: {\n [key: string]: {\n enum?: string[];\n default?: string;\n examples?: string[];\n description?: string;\n };\n };\n}\n\nexport interface Specifications {\n asyncapiPath?: string;\n openapiPath?: string;\n graphqlPath?: string;\n}\n\nexport interface Specification {\n type: 'openapi' | 'asyncapi' | 'graphql';\n path: string;\n name?: string;\n}\n\nexport interface Service extends BaseSchema {\n sends?: SendsPointer[];\n receives?: ReceivesPointer[];\n entities?: ResourcePointer[];\n writesTo?: ResourcePointer[];\n readsFrom?: ResourcePointer[];\n specifications?: Specifications | Specification[];\n detailsPanel?: {\n domains?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n specifications?: DetailPanelProperty;\n entities?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport interface Domain extends BaseSchema {\n services?: ResourcePointer[];\n domains?: ResourcePointer[];\n entities?: ResourcePointer[];\n dataProducts?: ResourcePointer[];\n sends?: SendsPointer[];\n receives?: ReceivesPointer[];\n detailsPanel?: {\n parentDomains?: DetailPanelProperty;\n subdomains?: DetailPanelProperty;\n services?: DetailPanelProperty;\n entities?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n ubiquitousLanguage?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport interface Team {\n id: string;\n name: string;\n summary?: string;\n email?: string;\n hidden?: boolean;\n slackDirectMessageUrl?: string;\n members?: User[];\n ownedCommands?: Command[];\n ownedServices?: Service[];\n ownedEvents?: Event[];\n markdown: string;\n}\n\nexport interface User {\n id: string;\n name: string;\n avatarUrl: string;\n role?: string;\n hidden?: boolean;\n email?: string;\n slackDirectMessageUrl?: string;\n ownedServices?: Service[];\n ownedEvents?: Event[];\n ownedCommands?: Command[];\n associatedTeams?: Team[];\n markdown: string;\n}\n\nexport interface Badge {\n content: string;\n backgroundColor: string;\n textColor: string;\n icon?: string;\n}\n\nexport interface UbiquitousLanguage {\n id: string;\n name: string;\n summary?: string;\n description?: string;\n icon?: string;\n}\n\nexport interface UbiquitousLanguageDictionary {\n dictionary: UbiquitousLanguage[];\n}\n\ninterface DetailPanelProperty {\n visible: boolean;\n}\n\nexport interface Entity extends BaseSchema {\n aggregateRoot?: boolean;\n identifier?: string;\n properties?: {\n name: string;\n type: string;\n required?: boolean;\n description?: string;\n references?: string;\n referencesIdentifier?: string;\n relationType?: string;\n }[];\n detailsPanel?: {\n domains?: DetailPanelProperty;\n services?: DetailPanelProperty;\n messages?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport type DataProductOutputPointer = {\n id: string;\n version?: string;\n contract?: {\n path: string;\n name: string;\n type?: string;\n };\n};\n\nexport interface DataProduct extends BaseSchema {\n inputs?: ResourcePointer[];\n outputs?: DataProductOutputPointer[];\n detailsPanel?: {\n domains?: DetailPanelProperty;\n inputs?: DetailPanelProperty;\n outputs?: DetailPanelProperty;\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nenum DataClassification {\n Public = 'public',\n Internal = 'internal',\n Confidential = 'confidential',\n Regulated = 'regulated',\n}\n\nexport interface Container extends BaseSchema {\n container_type: 'database' | 'cache' | 'objectStore' | 'searchIndex' | 'dataWarehouse' | 'dataLake' | 'externalSaaS' | 'other';\n technology?: string;\n authoritative?: boolean;\n access_mode?: string;\n classification?: DataClassification;\n residency?: string;\n retention?: string;\n detailsPanel?: {\n versions?: DetailPanelProperty;\n repository?: DetailPanelProperty;\n owners?: DetailPanelProperty;\n changelog?: DetailPanelProperty;\n };\n}\n\nexport type EventCatalog = {\n version: string;\n catalogVersion: string;\n createdAt: string;\n resources: {\n domains?: ExportedResource<Domain>[];\n services?: ExportedResource<Service>[];\n messages?: {\n events?: ExportedResource<Event>[];\n queries?: ExportedResource<Query>[];\n commands?: ExportedResource<Command>[];\n };\n teams?: ExportedResource<Team>[];\n users?: ExportedResource<User>[];\n channels?: ExportedResource<Channel>[];\n customDocs?: ExportedResource<CustomDoc>[];\n };\n};\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eventcatalog/sdk",
3
- "version": "2.9.11",
3
+ "version": "2.11.0",
4
4
  "description": "SDK to integrate with EventCatalog",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -36,7 +36,7 @@
36
36
  "module": "./dist/index.mjs",
37
37
  "types": "./dist/index.d.ts",
38
38
  "dependencies": {
39
- "@changesets/cli": "^2.29.6",
39
+ "@changesets/cli": "^2.29.8",
40
40
  "fs-extra": "^11.3.2",
41
41
  "glob": "^11.1.0",
42
42
  "gray-matter": "^4.0.3",