@eventcatalog/sdk 2.2.10 → 2.3.1

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 (52) hide show
  1. package/dist/channels.js +20 -4
  2. package/dist/channels.js.map +1 -1
  3. package/dist/channels.mjs +21 -5
  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.d.mts +23 -1
  14. package/dist/domains.d.ts +23 -1
  15. package/dist/domains.js +40 -4
  16. package/dist/domains.js.map +1 -1
  17. package/dist/domains.mjs +40 -5
  18. package/dist/domains.mjs.map +1 -1
  19. package/dist/eventcatalog.js +46 -4
  20. package/dist/eventcatalog.js.map +1 -1
  21. package/dist/eventcatalog.mjs +47 -5
  22. package/dist/eventcatalog.mjs.map +1 -1
  23. package/dist/events.js +20 -4
  24. package/dist/events.js.map +1 -1
  25. package/dist/events.mjs +21 -5
  26. package/dist/events.mjs.map +1 -1
  27. package/dist/index.d.mts +14 -26
  28. package/dist/index.d.ts +14 -26
  29. package/dist/index.js +46 -4
  30. package/dist/index.js.map +1 -1
  31. package/dist/index.mjs +47 -5
  32. package/dist/index.mjs.map +1 -1
  33. package/dist/queries.js +20 -4
  34. package/dist/queries.js.map +1 -1
  35. package/dist/queries.mjs +21 -5
  36. package/dist/queries.mjs.map +1 -1
  37. package/dist/services.js +20 -4
  38. package/dist/services.js.map +1 -1
  39. package/dist/services.mjs +21 -5
  40. package/dist/services.mjs.map +1 -1
  41. package/dist/teams.js +20 -4
  42. package/dist/teams.js.map +1 -1
  43. package/dist/teams.mjs +21 -5
  44. package/dist/teams.mjs.map +1 -1
  45. package/dist/types.d.d.mts +1 -0
  46. package/dist/types.d.d.ts +1 -0
  47. package/dist/types.d.js.map +1 -1
  48. package/dist/users.js +20 -4
  49. package/dist/users.js.map +1 -1
  50. package/dist/users.mjs +21 -5
  51. package/dist/users.mjs.map +1 -1
  52. package/package.json +1 -1
package/dist/index.mjs CHANGED
@@ -9,7 +9,7 @@ import { join as join3 } from "node:path";
9
9
  import { globSync } from "glob";
10
10
  import fsSync from "node:fs";
11
11
  import { copy } from "fs-extra";
12
- import { join, dirname } from "node:path";
12
+ import { join, dirname, normalize, resolve, relative } from "node:path";
13
13
  import matter from "gray-matter";
14
14
  import { satisfies, validRange, valid } from "semver";
15
15
  var versionExists = async (catalogDir, id, version) => {
@@ -43,12 +43,28 @@ var findFileById = async (catalogDir, id, version) => {
43
43
  };
44
44
  var getFiles = async (pattern, ignore = "") => {
45
45
  try {
46
+ const normalizedInputPattern = normalize(pattern);
47
+ const absoluteBaseDir = resolve(
48
+ normalizedInputPattern.includes("**") ? normalizedInputPattern.split("**")[0] : dirname(normalizedInputPattern)
49
+ );
50
+ let relativePattern = relative(absoluteBaseDir, normalizedInputPattern);
51
+ relativePattern = relativePattern.replace(/\\/g, "/");
46
52
  const ignoreList = Array.isArray(ignore) ? ignore : [ignore];
47
- const baseDir = pattern.includes("**") ? pattern.split("**")[0] : dirname(pattern);
48
- const files = globSync(pattern, { cwd: baseDir, ignore: ["node_modules/**", ...ignoreList] });
49
- return files;
53
+ const files = globSync(relativePattern, {
54
+ cwd: absoluteBaseDir,
55
+ ignore: ["node_modules/**", ...ignoreList],
56
+ absolute: true,
57
+ nodir: true
58
+ });
59
+ return files.map(normalize);
50
60
  } catch (error) {
51
- throw new Error(`Error finding files: ${error}`);
61
+ const absoluteBaseDirForError = resolve(
62
+ normalize(pattern).includes("**") ? normalize(pattern).split("**")[0] : dirname(normalize(pattern))
63
+ );
64
+ const relativePatternForError = relative(absoluteBaseDirForError, normalize(pattern)).replace(/\\/g, "/");
65
+ throw new Error(
66
+ `Error finding files for pattern "${pattern}" (using cwd: "${absoluteBaseDirForError}", globPattern: "${relativePatternForError}"): ${error.message}`
67
+ );
52
68
  }
53
69
  };
54
70
  var readMdxFile = async (path4) => {
@@ -467,6 +483,9 @@ var writeDomain = (directory) => async (domain, options = {
467
483
  if (Array.isArray(domain.services)) {
468
484
  resource.services = uniqueVersions(domain.services);
469
485
  }
486
+ if (Array.isArray(domain.domains)) {
487
+ resource.domains = uniqueVersions(domain.domains);
488
+ }
470
489
  return await writeResource(directory, resource, { ...options, type: "domain" });
471
490
  };
472
491
  var versionDomain = (directory) => async (id) => versionResource(directory, id);
@@ -510,6 +529,21 @@ var addServiceToDomain = (directory) => async (id, service, version) => {
510
529
  await rmDomainById(directory)(id, version, true);
511
530
  await writeDomain(directory)(domain, { format: extension === ".md" ? "md" : "mdx" });
512
531
  };
532
+ var addSubDomainToDomain = (directory) => async (id, subDomain, version) => {
533
+ let domain = await getDomain(directory)(id, version);
534
+ const domainPath = await getResourcePath(directory, id, version);
535
+ const extension = path.extname(domainPath?.fullPath || "");
536
+ if (domain.domains === void 0) {
537
+ domain.domains = [];
538
+ }
539
+ const subDomainExistsInList = domain.domains.some((s) => s.id === subDomain.id && s.version === subDomain.version);
540
+ if (subDomainExistsInList) {
541
+ return;
542
+ }
543
+ domain.domains.push(subDomain);
544
+ await rmDomainById(directory)(id, version, true);
545
+ await writeDomain(directory)(domain, { format: extension === ".md" ? "md" : "mdx" });
546
+ };
513
547
 
514
548
  // src/channels.ts
515
549
  import fs7 from "node:fs/promises";
@@ -1338,6 +1372,14 @@ var index_default = (path4) => {
1338
1372
  * @returns
1339
1373
  */
1340
1374
  addServiceToDomain: addServiceToDomain(join13(path4, "domains")),
1375
+ /**
1376
+ * Adds a given subdomain to a domain
1377
+ * @param id - The id of the domain
1378
+ * @param subDomain - The id and version of the subdomain to add
1379
+ * @param version - (Optional) The version of the domain to add the subdomain to
1380
+ * @returns
1381
+ */
1382
+ addSubDomainToDomain: addSubDomainToDomain(join13(path4, "domains")),
1341
1383
  /**
1342
1384
  * ================================
1343
1385
  * Teams