@eventcatalog/sdk 2.2.6 → 2.2.8

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.
Files changed (57) hide show
  1. package/dist/channels.js +23 -6
  2. package/dist/channels.js.map +1 -1
  3. package/dist/channels.mjs +27 -10
  4. package/dist/channels.mjs.map +1 -1
  5. package/dist/commands.d.mts +3 -1
  6. package/dist/commands.d.ts +3 -1
  7. package/dist/commands.js +13 -5
  8. package/dist/commands.js.map +1 -1
  9. package/dist/commands.mjs +19 -11
  10. package/dist/commands.mjs.map +1 -1
  11. package/dist/custom-docs.js +2 -1
  12. package/dist/custom-docs.js.map +1 -1
  13. package/dist/custom-docs.mjs +5 -3
  14. package/dist/custom-docs.mjs.map +1 -1
  15. package/dist/domains.d.mts +1 -0
  16. package/dist/domains.d.ts +1 -0
  17. package/dist/domains.js +12 -4
  18. package/dist/domains.js.map +1 -1
  19. package/dist/domains.mjs +17 -9
  20. package/dist/domains.mjs.map +1 -1
  21. package/dist/eventcatalog.js +38 -12
  22. package/dist/eventcatalog.js.map +1 -1
  23. package/dist/eventcatalog.mjs +48 -22
  24. package/dist/eventcatalog.mjs.map +1 -1
  25. package/dist/events.d.mts +3 -1
  26. package/dist/events.d.ts +3 -1
  27. package/dist/events.js +12 -5
  28. package/dist/events.js.map +1 -1
  29. package/dist/events.mjs +18 -11
  30. package/dist/events.mjs.map +1 -1
  31. package/dist/index.d.mts +13 -4
  32. package/dist/index.d.ts +13 -4
  33. package/dist/index.js +38 -12
  34. package/dist/index.js.map +1 -1
  35. package/dist/index.mjs +48 -22
  36. package/dist/index.mjs.map +1 -1
  37. package/dist/queries.d.mts +3 -1
  38. package/dist/queries.d.ts +3 -1
  39. package/dist/queries.js +13 -5
  40. package/dist/queries.js.map +1 -1
  41. package/dist/queries.mjs +19 -11
  42. package/dist/queries.mjs.map +1 -1
  43. package/dist/services.d.mts +3 -1
  44. package/dist/services.d.ts +3 -1
  45. package/dist/services.js +12 -5
  46. package/dist/services.js.map +1 -1
  47. package/dist/services.mjs +21 -14
  48. package/dist/services.mjs.map +1 -1
  49. package/dist/teams.js +2 -1
  50. package/dist/teams.js.map +1 -1
  51. package/dist/teams.mjs +7 -5
  52. package/dist/teams.mjs.map +1 -1
  53. package/dist/users.js +2 -1
  54. package/dist/users.js.map +1 -1
  55. package/dist/users.mjs +7 -5
  56. package/dist/users.mjs.map +1 -1
  57. package/package.json +1 -1
@@ -13,7 +13,7 @@ import { join as join3 } from "node:path";
13
13
  import { globSync } from "glob";
14
14
  import fsSync from "node:fs";
15
15
  import { copy } from "fs-extra";
16
- import { join } from "node:path";
16
+ import { join, dirname } from "node:path";
17
17
  import matter from "gray-matter";
18
18
  import { satisfies, validRange, valid } from "semver";
19
19
  var versionExists = async (catalogDir, id, version) => {
@@ -48,7 +48,8 @@ var findFileById = async (catalogDir, id, version) => {
48
48
  var getFiles = async (pattern, ignore = "") => {
49
49
  try {
50
50
  const ignoreList = Array.isArray(ignore) ? ignore : [ignore];
51
- const files = globSync(pattern, { ignore: ["node_modules/**", ...ignoreList] });
51
+ const baseDir = pattern.includes("**") ? pattern.split("**")[0] : dirname(pattern);
52
+ const files = globSync(pattern, { cwd: baseDir, ignore: ["node_modules/**", ...ignoreList] });
52
53
  return files;
53
54
  } catch (error) {
54
55
  throw new Error(`Error finding files: ${error}`);
@@ -100,7 +101,7 @@ var uniqueVersions = (messages) => {
100
101
  };
101
102
 
102
103
  // src/internal/resources.ts
103
- import { dirname, join as join2 } from "path";
104
+ import { dirname as dirname2, join as join2 } from "path";
104
105
  import matter2 from "gray-matter";
105
106
  import fs from "node:fs/promises";
106
107
  import fsSync2 from "node:fs";
@@ -113,7 +114,7 @@ var versionResource = async (catalogDir, id) => {
113
114
  throw new Error(`No resource found with id: ${id}`);
114
115
  }
115
116
  const file = matchedFiles[0];
116
- const sourceDirectory = dirname(file);
117
+ const sourceDirectory = dirname2(file);
117
118
  const { data: { version = "0.0.1" } = {} } = matter2.read(file);
118
119
  const targetDirectory = getVersionedDirectory(sourceDirectory, version);
119
120
  fsSync2.mkdirSync(targetDirectory, { recursive: true });
@@ -134,12 +135,14 @@ var writeResource = async (catalogDir, resource, options = {
134
135
  path: "",
135
136
  type: "",
136
137
  override: false,
137
- versionExistingContent: false
138
+ versionExistingContent: false,
139
+ format: "mdx"
138
140
  }) => {
139
141
  const path4 = options.path || `/${resource.id}`;
140
142
  const fullPath = join2(catalogDir, path4);
143
+ const format = options.format || "mdx";
141
144
  fsSync2.mkdirSync(fullPath, { recursive: true });
142
- const lockPath = join2(fullPath, "index.mdx");
145
+ const lockPath = join2(fullPath, `index.${format}`);
143
146
  if (!fsSync2.existsSync(lockPath)) {
144
147
  fsSync2.writeFileSync(lockPath, "");
145
148
  }
@@ -186,7 +189,7 @@ var getResourcePath = async (catalogDir, id, version) => {
186
189
  return {
187
190
  fullPath: file,
188
191
  relativePath: file.replace(catalogDir, ""),
189
- directory: dirname(file.replace(catalogDir, ""))
192
+ directory: dirname2(file.replace(catalogDir, ""))
190
193
  };
191
194
  };
192
195
  var getResources = async (catalogDir, {
@@ -222,7 +225,7 @@ var rmResourceById = async (catalogDir, id, version, options) => {
222
225
  } else {
223
226
  await Promise.all(
224
227
  matchedFiles.map(async (file) => {
225
- const directory = dirname(file);
228
+ const directory = dirname2(file);
226
229
  await fs.rm(directory, { recursive: true, force: true });
227
230
  })
228
231
  );
@@ -231,14 +234,14 @@ var rmResourceById = async (catalogDir, id, version, options) => {
231
234
  var addFileToResource = async (catalogDir, id, file, version) => {
232
235
  const pathToResource = await findFileById(catalogDir, id, version);
233
236
  if (!pathToResource) throw new Error("Cannot find directory to write file to");
234
- fsSync2.writeFileSync(join2(dirname(pathToResource), file.fileName), file.content);
237
+ fsSync2.writeFileSync(join2(dirname2(pathToResource), file.fileName), file.content);
235
238
  };
236
239
  var getFileFromResource = async (catalogDir, id, file, version) => {
237
240
  const pathToResource = await findFileById(catalogDir, id, version);
238
241
  if (!pathToResource) throw new Error("Cannot find directory of resource");
239
- const exists = await fs.access(join2(dirname(pathToResource), file.fileName)).then(() => true).catch(() => false);
242
+ const exists = await fs.access(join2(dirname2(pathToResource), file.fileName)).then(() => true).catch(() => false);
240
243
  if (!exists) throw new Error(`File ${file.fileName} does not exist in resource ${id} v(${version})`);
241
- return fsSync2.readFileSync(join2(dirname(pathToResource), file.fileName), "utf-8");
244
+ return fsSync2.readFileSync(join2(dirname2(pathToResource), file.fileName), "utf-8");
242
245
  };
243
246
  var getVersionedDirectory = (sourceDirectory, version) => {
244
247
  return join2(sourceDirectory, "versioned", version);
@@ -247,8 +250,12 @@ var getVersionedDirectory = (sourceDirectory, version) => {
247
250
  // src/events.ts
248
251
  var getEvent = (directory) => async (id, version) => getResource(directory, id, version, { type: "event" });
249
252
  var getEvents = (directory) => async (options) => getResources(directory, { type: "events", ...options });
250
- var writeEvent = (directory) => async (event, options = { path: "", override: false }) => writeResource(directory, { ...event }, { ...options, type: "event" });
251
- var writeEventToService = (directory) => async (event, service, options = { path: "" }) => {
253
+ var writeEvent = (directory) => async (event, options = {
254
+ path: "",
255
+ override: false,
256
+ format: "mdx"
257
+ }) => writeResource(directory, { ...event }, { ...options, type: "event" });
258
+ var writeEventToService = (directory) => async (event, service, options = { path: "", format: "mdx" }) => {
252
259
  const resourcePath = await getResourcePath(directory, service.id, service.version);
253
260
  if (!resourcePath) {
254
261
  throw new Error("Service not found");
@@ -278,8 +285,13 @@ import fs3 from "node:fs/promises";
278
285
  import { join as join4 } from "node:path";
279
286
  var getCommand = (directory) => async (id, version) => getResource(directory, id, version, { type: "command" });
280
287
  var getCommands = (directory) => async (options) => getResources(directory, { type: "commands", ...options });
281
- var writeCommand = (directory) => async (command, options = { path: "" }) => writeResource(directory, { ...command }, { ...options, type: "command" });
282
- var writeCommandToService = (directory) => async (command, service, options = { path: "" }) => {
288
+ var writeCommand = (directory) => async (command, options = {
289
+ path: "",
290
+ override: false,
291
+ versionExistingContent: false,
292
+ format: "mdx"
293
+ }) => writeResource(directory, { ...command }, { ...options, type: "command" });
294
+ var writeCommandToService = (directory) => async (command, service, options = { path: "", format: "mdx" }) => {
283
295
  const resourcePath = await getResourcePath(directory, service.id, service.version);
284
296
  if (!resourcePath) {
285
297
  throw new Error("Service not found");
@@ -306,9 +318,14 @@ var commandHasVersion = (directory) => async (id, version) => {
306
318
  import fs4 from "node:fs/promises";
307
319
  import { join as join5 } from "node:path";
308
320
  var getQuery = (directory) => async (id, version) => getResource(directory, id, version, { type: "query" });
309
- var writeQuery = (directory) => async (query, options = { path: "" }) => writeResource(directory, { ...query }, { ...options, type: "query" });
321
+ var writeQuery = (directory) => async (query, options = {
322
+ path: "",
323
+ override: false,
324
+ versionExistingContent: false,
325
+ format: "mdx"
326
+ }) => writeResource(directory, { ...query }, { ...options, type: "query" });
310
327
  var getQueries = (directory) => async (options) => getResources(directory, { type: "queries", ...options });
311
- var writeQueryToService = (directory) => async (query, service, options = { path: "" }) => {
328
+ var writeQueryToService = (directory) => async (query, service, options = { path: "", format: "mdx" }) => {
312
329
  const resourcePath = await getResourcePath(directory, service.id, service.version);
313
330
  if (!resourcePath) {
314
331
  throw new Error("Service not found");
@@ -335,14 +352,18 @@ var queryHasVersion = (directory) => async (id, version) => {
335
352
 
336
353
  // src/services.ts
337
354
  import fs5 from "node:fs/promises";
338
- import { join as join6, dirname as dirname3 } from "node:path";
355
+ import { join as join6, dirname as dirname4 } from "node:path";
339
356
  var getService = (directory) => async (id, version) => getResource(directory, id, version, { type: "service" });
340
357
  var getServices = (directory) => async (options) => getResources(directory, {
341
358
  type: "services",
342
359
  ignore: ["**/events/**", "**/commands/**", "**/queries/**"],
343
360
  ...options
344
361
  });
345
- var writeService = (directory) => async (service, options = { path: "" }) => {
362
+ var writeService = (directory) => async (service, options = {
363
+ path: "",
364
+ override: false,
365
+ format: "mdx"
366
+ }) => {
346
367
  const resource = { ...service };
347
368
  if (Array.isArray(service.sends)) {
348
369
  resource.sends = uniqueVersions(service.sends);
@@ -357,7 +378,7 @@ var writeVersionedService = (directory) => async (service) => {
357
378
  const path4 = getVersionedDirectory(service.id, service.version);
358
379
  return await writeService(directory)(resource, { path: path4 });
359
380
  };
360
- var writeServiceToDomain = (directory) => async (service, domain, options = { path: "" }) => {
381
+ var writeServiceToDomain = (directory) => async (service, domain, options = { path: "", format: "mdx" }) => {
361
382
  let pathForService = domain.version && domain.version !== "latest" ? `/${domain.id}/versioned/${domain.version}/services` : `/${domain.id}/services`;
362
383
  pathForService = join6(pathForService, service.id);
363
384
  await writeResource(directory, { ...service }, { ...options, path: pathForService, type: "service" });
@@ -382,7 +403,7 @@ var getSpecificationFilesForService = (directory) => async (id, version) => {
382
403
  throw new Error(`Specification file name for ${specFile} is undefined`);
383
404
  }
384
405
  const rawFile = await getFileFromResource(directory, id, { fileName }, version);
385
- return { key: specFile, content: rawFile, fileName, path: join6(dirname3(filePathToService), fileName) };
406
+ return { key: specFile, content: rawFile, fileName, path: join6(dirname4(filePathToService), fileName) };
386
407
  });
387
408
  specs = await Promise.all(getSpecs);
388
409
  }
@@ -438,7 +459,12 @@ var getDomains = (directory) => async (options) => getResources(directory, {
438
459
  ignore: ["**/services/**", "**/events/**", "**/commands/**", "**/queries/**", "**/flows/**"],
439
460
  ...options
440
461
  });
441
- var writeDomain = (directory) => async (domain, options = { path: "" }) => {
462
+ var writeDomain = (directory) => async (domain, options = {
463
+ path: "",
464
+ override: false,
465
+ versionExistingContent: false,
466
+ format: "mdx"
467
+ }) => {
442
468
  const resource = { ...domain };
443
469
  if (Array.isArray(domain.services)) {
444
470
  resource.services = uniqueVersions(domain.services);