@eventcatalog/sdk 2.2.9 → 2.3.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.
Files changed (47) hide show
  1. package/dist/channels.js +32 -5
  2. package/dist/channels.js.map +1 -1
  3. package/dist/channels.mjs +34 -7
  4. package/dist/channels.mjs.map +1 -1
  5. package/dist/commands.js +20 -4
  6. package/dist/commands.js.map +1 -1
  7. package/dist/commands.mjs +21 -5
  8. package/dist/commands.mjs.map +1 -1
  9. package/dist/custom-docs.js +20 -4
  10. package/dist/custom-docs.js.map +1 -1
  11. package/dist/custom-docs.mjs +21 -5
  12. package/dist/custom-docs.mjs.map +1 -1
  13. package/dist/domains.js +32 -5
  14. package/dist/domains.js.map +1 -1
  15. package/dist/domains.mjs +33 -6
  16. package/dist/domains.mjs.map +1 -1
  17. package/dist/eventcatalog.js +29 -7
  18. package/dist/eventcatalog.js.map +1 -1
  19. package/dist/eventcatalog.mjs +32 -10
  20. package/dist/eventcatalog.mjs.map +1 -1
  21. package/dist/events.js +20 -4
  22. package/dist/events.js.map +1 -1
  23. package/dist/events.mjs +21 -5
  24. package/dist/events.mjs.map +1 -1
  25. package/dist/index.d.mts +6 -1
  26. package/dist/index.d.ts +6 -1
  27. package/dist/index.js +29 -7
  28. package/dist/index.js.map +1 -1
  29. package/dist/index.mjs +32 -10
  30. package/dist/index.mjs.map +1 -1
  31. package/dist/queries.js +20 -4
  32. package/dist/queries.js.map +1 -1
  33. package/dist/queries.mjs +21 -5
  34. package/dist/queries.mjs.map +1 -1
  35. package/dist/services.js +32 -5
  36. package/dist/services.js.map +1 -1
  37. package/dist/services.mjs +34 -7
  38. package/dist/services.mjs.map +1 -1
  39. package/dist/teams.js +20 -4
  40. package/dist/teams.js.map +1 -1
  41. package/dist/teams.mjs +21 -5
  42. package/dist/teams.mjs.map +1 -1
  43. package/dist/users.js +20 -4
  44. package/dist/users.js.map +1 -1
  45. package/dist/users.mjs +21 -5
  46. package/dist/users.mjs.map +1 -1
  47. 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, dirname } from "node:path";
16
+ import { join, dirname, normalize, resolve, relative } 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) => {
@@ -47,12 +47,28 @@ var findFileById = async (catalogDir, id, version) => {
47
47
  };
48
48
  var getFiles = async (pattern, ignore = "") => {
49
49
  try {
50
+ const normalizedInputPattern = normalize(pattern);
51
+ const absoluteBaseDir = resolve(
52
+ normalizedInputPattern.includes("**") ? normalizedInputPattern.split("**")[0] : dirname(normalizedInputPattern)
53
+ );
54
+ let relativePattern = relative(absoluteBaseDir, normalizedInputPattern);
55
+ relativePattern = relativePattern.replace(/\\/g, "/");
50
56
  const ignoreList = Array.isArray(ignore) ? ignore : [ignore];
51
- const baseDir = pattern.includes("**") ? pattern.split("**")[0] : dirname(pattern);
52
- const files = globSync(pattern, { cwd: baseDir, ignore: ["node_modules/**", ...ignoreList] });
53
- return files;
57
+ const files = globSync(relativePattern, {
58
+ cwd: absoluteBaseDir,
59
+ ignore: ["node_modules/**", ...ignoreList],
60
+ absolute: true,
61
+ nodir: true
62
+ });
63
+ return files.map(normalize);
54
64
  } catch (error) {
55
- throw new Error(`Error finding files: ${error}`);
65
+ const absoluteBaseDirForError = resolve(
66
+ normalize(pattern).includes("**") ? normalize(pattern).split("**")[0] : dirname(normalize(pattern))
67
+ );
68
+ const relativePatternForError = relative(absoluteBaseDirForError, normalize(pattern)).replace(/\\/g, "/");
69
+ throw new Error(
70
+ `Error finding files for pattern "${pattern}" (using cwd: "${absoluteBaseDirForError}", globPattern: "${relativePatternForError}"): ${error.message}`
71
+ );
56
72
  }
57
73
  };
58
74
  var readMdxFile = async (path4) => {
@@ -352,7 +368,7 @@ var queryHasVersion = (directory) => async (id, version) => {
352
368
 
353
369
  // src/services.ts
354
370
  import fs5 from "node:fs/promises";
355
- import { join as join6, dirname as dirname4 } from "node:path";
371
+ import { join as join6, dirname as dirname4, extname } from "node:path";
356
372
  var getService = (directory) => async (id, version) => getResource(directory, id, version, { type: "service" });
357
373
  var getServices = (directory) => async (options) => getResources(directory, {
358
374
  type: "services",
@@ -411,6 +427,8 @@ var getSpecificationFilesForService = (directory) => async (id, version) => {
411
427
  };
412
428
  var addMessageToService = (directory) => async (id, direction, event, version) => {
413
429
  let service = await getService(directory)(id, version);
430
+ const servicePath = await getResourcePath(directory, id, version);
431
+ const extension = extname(servicePath?.fullPath || "");
414
432
  if (direction === "sends") {
415
433
  if (service.sends === void 0) {
416
434
  service.sends = [];
@@ -441,7 +459,7 @@ var addMessageToService = (directory) => async (id, direction, event, version) =
441
459
  const path4 = existingResource.split("/services")[0];
442
460
  const pathToResource = join6(path4, "services");
443
461
  await rmServiceById(directory)(id, version);
444
- await writeService(pathToResource)(service);
462
+ await writeService(pathToResource)(service, { format: extension === ".md" ? "md" : "mdx" });
445
463
  };
446
464
  var serviceHasVersion = (directory) => async (id, version) => {
447
465
  const file = await findFileById(directory, id, version);
@@ -499,6 +517,8 @@ var domainHasVersion = (directory) => async (id, version) => {
499
517
  };
500
518
  var addServiceToDomain = (directory) => async (id, service, version) => {
501
519
  let domain = await getDomain(directory)(id, version);
520
+ const domainPath = await getResourcePath(directory, id, version);
521
+ const extension = path.extname(domainPath?.fullPath || "");
502
522
  if (domain.services === void 0) {
503
523
  domain.services = [];
504
524
  }
@@ -508,12 +528,12 @@ var addServiceToDomain = (directory) => async (id, service, version) => {
508
528
  }
509
529
  domain.services.push(service);
510
530
  await rmDomainById(directory)(id, version, true);
511
- await writeDomain(directory)(domain);
531
+ await writeDomain(directory)(domain, { format: extension === ".md" ? "md" : "mdx" });
512
532
  };
513
533
 
514
534
  // src/channels.ts
515
535
  import fs7 from "node:fs/promises";
516
- import { join as join8 } from "node:path";
536
+ import { join as join8, extname as extname2 } from "node:path";
517
537
  var getChannel = (directory) => async (id, version) => getResource(directory, id, version, { type: "channel" });
518
538
  var getChannels = (directory) => async (options) => getResources(directory, { type: "channels", ...options });
519
539
  var writeChannel = (directory) => async (channel, options = { path: "" }) => writeResource(directory, { ...channel }, { ...options, type: "channel" });
@@ -547,6 +567,8 @@ var addMessageToChannel = (directory, collection) => async (id, _message, versio
547
567
  };
548
568
  const { getMessage, rmMessageById, writeMessage } = functions[collection];
549
569
  const message = await getMessage(directory)(_message.id, _message.version);
570
+ const messagePath = await getResourcePath(directory, _message.id, _message.version);
571
+ const extension = extname2(messagePath?.fullPath || "");
550
572
  if (!message) throw new Error(`Message ${_message.id} with version ${_message.version} not found`);
551
573
  if (message.channels === void 0) {
552
574
  message.channels = [];
@@ -560,7 +582,7 @@ var addMessageToChannel = (directory, collection) => async (id, _message, versio
560
582
  const path4 = existingResource.split(`/${collection}`)[0];
561
583
  const pathToResource = join8(path4, collection);
562
584
  await rmMessageById(directory)(_message.id, _message.version, true);
563
- await writeMessage(pathToResource)(message);
585
+ await writeMessage(pathToResource)(message, { format: extension === ".md" ? "md" : "mdx" });
564
586
  };
565
587
 
566
588
  // src/custom-docs.ts