@eventcatalog/sdk 2.24.2 → 2.25.0-beta.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.
package/dist/index.js CHANGED
@@ -34,7 +34,7 @@ __export(src_exports, {
34
34
  default: () => src_default
35
35
  });
36
36
  module.exports = __toCommonJS(src_exports);
37
- var import_node_path25 = require("path");
37
+ var import_node_path27 = require("path");
38
38
 
39
39
  // src/dsl/utils.ts
40
40
  var import_glob = require("glob");
@@ -1352,6 +1352,14 @@ var writeServiceToDomain = (directory) => async (service, domain, options = { pa
1352
1352
  pathForService = (0, import_node_path7.join)(pathForService, service.id);
1353
1353
  await writeResource(directory, { ...service }, { ...options, path: pathForService, type: "service" });
1354
1354
  };
1355
+ var writeServiceToSystem = (directory) => async (service, system, options = { path: "", format: "mdx", override: false }) => {
1356
+ const resourcePath = await getResourcePath(directory, system.id, system.version);
1357
+ if (!resourcePath) {
1358
+ throw new Error("System not found");
1359
+ }
1360
+ const pathForService = (0, import_node_path7.join)(resourcePath.directory, "services", service.id);
1361
+ await writeResource(directory, { ...service }, { ...options, path: pathForService, type: "service" });
1362
+ };
1355
1363
  var versionService = (directory) => async (id) => versionResource(directory, id);
1356
1364
  var rmService = (directory) => async (path9) => {
1357
1365
  await import_promises5.default.rm((0, import_node_path7.join)(directory, path9), { recursive: true });
@@ -1494,15 +1502,129 @@ var addDataStoreToService = (directory) => async (id, operation, dataStore, vers
1494
1502
  await writeService(pathToResource)(service, { format: extension === ".md" ? "md" : "mdx" });
1495
1503
  };
1496
1504
 
1497
- // src/agents.ts
1505
+ // src/systems.ts
1498
1506
  var import_promises6 = __toESM(require("fs/promises"));
1499
1507
  var import_node_path8 = require("path");
1508
+ var SYSTEM_RESOURCE_IGNORES = [
1509
+ "**/systems/**/agents/**",
1510
+ "**/systems/**/services/**",
1511
+ "**/systems/**/events/**",
1512
+ "**/systems/**/commands/**",
1513
+ "**/systems/**/queries/**",
1514
+ "**/systems/**/flows/**",
1515
+ "**/systems/**/channels/**",
1516
+ "**/systems/**/entities/**",
1517
+ "**/systems/**/containers/**",
1518
+ "**/systems/**/diagrams/**",
1519
+ "**/systems/**/data-products/**",
1520
+ "**/systems/**/adrs/**",
1521
+ "**/systems/**/docs/**"
1522
+ ];
1523
+ var normalizeResourcePointers = (system) => {
1524
+ const resource = { ...system };
1525
+ if (Array.isArray(system.services)) {
1526
+ resource.services = uniqueVersions(system.services);
1527
+ }
1528
+ if (Array.isArray(system.flows)) {
1529
+ resource.flows = uniqueVersions(system.flows);
1530
+ }
1531
+ if (Array.isArray(system.entities)) {
1532
+ resource.entities = uniqueVersions(system.entities);
1533
+ }
1534
+ if (Array.isArray(system.containers)) {
1535
+ resource.containers = uniqueVersions(system.containers);
1536
+ }
1537
+ return resource;
1538
+ };
1539
+ var persistSystemAtExistingPath = async (directory, system, version) => {
1540
+ const systemPath = await getResourcePath(directory, system.id, version);
1541
+ const extension = (0, import_node_path8.extname)(systemPath?.fullPath || "");
1542
+ if (!systemPath) {
1543
+ throw new Error(`Cannot find system ${system.id} in the catalog`);
1544
+ }
1545
+ await rmSystemById(directory)(system.id, version, true);
1546
+ await writeSystem(directory)(system, {
1547
+ path: systemPath.directory,
1548
+ format: extension === ".md" ? "md" : "mdx"
1549
+ });
1550
+ };
1551
+ var getSystem = (directory) => async (id, version) => getResource(directory, id, version, { type: "system" });
1552
+ var getSystemByPath = (directory) => async (path9) => {
1553
+ const system = await getResource(directory, void 0, void 0, { type: "system" }, path9);
1554
+ return system;
1555
+ };
1556
+ var getSystems = (directory) => async (options) => getResources(directory, {
1557
+ type: "systems",
1558
+ ignore: SYSTEM_RESOURCE_IGNORES,
1559
+ latestOnly: options?.latestOnly
1560
+ });
1561
+ var writeSystem = (directory) => async (system, options = {
1562
+ path: "",
1563
+ override: false,
1564
+ format: "mdx"
1565
+ }) => {
1566
+ const resource = normalizeResourcePointers(system);
1567
+ return await writeResource(directory, resource, { ...options, type: "system" });
1568
+ };
1569
+ var writeSystemToDomain = (directory) => async (system, domain, options = { path: "", format: "mdx", override: false }) => {
1570
+ const resourcePath = await getResourcePath(directory, domain.id, domain.version);
1571
+ if (!resourcePath) {
1572
+ throw new Error("Domain not found");
1573
+ }
1574
+ const pathForSystem = (0, import_node_path8.join)(resourcePath.directory, "systems", system.id);
1575
+ await writeSystem(directory)({ ...system }, { ...options, path: pathForSystem });
1576
+ };
1577
+ var versionSystem = (directory) => async (id) => versionResource(directory, id);
1578
+ var rmSystem = (directory) => async (path9) => {
1579
+ await import_promises6.default.rm((0, import_node_path8.join)(directory, path9), { recursive: true });
1580
+ invalidateFileCache();
1581
+ };
1582
+ var rmSystemById = (directory) => async (id, version, persistFiles) => {
1583
+ await rmResourceById(directory, id, version, { type: "system", persistFiles });
1584
+ };
1585
+ var addFileToSystem = (directory) => async (id, file, version) => addFileToResource(directory, id, file, version);
1586
+ var systemHasVersion = (directory) => async (id, version) => {
1587
+ const file = await findFileById(directory, id, version);
1588
+ return !!file;
1589
+ };
1590
+ var isSystem = (directory) => async (path9) => {
1591
+ const system = await getSystemByPath(directory)(path9);
1592
+ const relativePath = (0, import_node_path8.relative)(directory, path9);
1593
+ const segments = relativePath.split(/[/\\]+/);
1594
+ return !!system && segments.includes("systems");
1595
+ };
1596
+ var toSystem = (directory) => async (file) => toResource(directory, file);
1597
+ var addResourceToSystem = (directory, resourceField) => async (id, resource, version) => {
1598
+ const system = await getSystem(directory)(id, version);
1599
+ if (!system) {
1600
+ throw new Error(`Cannot find system ${id} in the catalog`);
1601
+ }
1602
+ if (system[resourceField] === void 0) {
1603
+ system[resourceField] = [];
1604
+ }
1605
+ const resourceExistsInList = system[resourceField]?.some(
1606
+ (item) => item.id === resource.id && item.version === resource.version
1607
+ );
1608
+ if (resourceExistsInList) {
1609
+ return;
1610
+ }
1611
+ system[resourceField]?.push(resource);
1612
+ await persistSystemAtExistingPath(directory, system, version);
1613
+ };
1614
+ var addServiceToSystem = (directory) => addResourceToSystem(directory, "services");
1615
+ var addFlowToSystem = (directory) => addResourceToSystem(directory, "flows");
1616
+ var addEntityToSystem = (directory) => addResourceToSystem(directory, "entities");
1617
+ var addContainerToSystem = (directory) => addResourceToSystem(directory, "containers");
1618
+
1619
+ // src/agents.ts
1620
+ var import_promises7 = __toESM(require("fs/promises"));
1621
+ var import_node_path9 = require("path");
1500
1622
  var rewriteAgent = async (directory, id, agent, version) => {
1501
1623
  const agentPath = await getResourcePath(directory, id, version);
1502
1624
  if (!agentPath) {
1503
1625
  throw new Error(`Cannot find agent ${id} in the catalog`);
1504
1626
  }
1505
- const extension = (0, import_node_path8.extname)(agentPath.fullPath);
1627
+ const extension = (0, import_node_path9.extname)(agentPath.fullPath);
1506
1628
  await rmAgentById(directory)(id, version, true);
1507
1629
  await writeAgent(directory)(agent, { path: agentPath.directory, format: extension === ".md" ? "md" : "mdx" });
1508
1630
  };
@@ -1546,12 +1668,12 @@ var writeVersionedAgent = (directory) => async (agent) => {
1546
1668
  };
1547
1669
  var writeAgentToDomain = (directory) => async (agent, domain, options = { path: "", format: "mdx", override: false }) => {
1548
1670
  let pathForAgent = domain.version && domain.version !== "latest" ? `/${domain.id}/versioned/${domain.version}/agents` : `/${domain.id}/agents`;
1549
- pathForAgent = (0, import_node_path8.join)(pathForAgent, agent.id);
1671
+ pathForAgent = (0, import_node_path9.join)(pathForAgent, agent.id);
1550
1672
  await writeResource(directory, { ...agent }, { ...options, path: pathForAgent, type: "agent" });
1551
1673
  };
1552
1674
  var versionAgent = (directory) => async (id) => versionResource(directory, id);
1553
1675
  var rmAgent = (directory) => async (path9) => {
1554
- await import_promises6.default.rm((0, import_node_path8.join)(directory, path9), { recursive: true });
1676
+ await import_promises7.default.rm((0, import_node_path9.join)(directory, path9), { recursive: true });
1555
1677
  invalidateFileCache();
1556
1678
  };
1557
1679
  var rmAgentById = (directory) => async (id, version, persistFiles) => {
@@ -1625,15 +1747,15 @@ var agentHasVersion = (directory) => async (id, version) => {
1625
1747
  };
1626
1748
  var isAgent = (directory) => async (path9) => {
1627
1749
  const agent = await getAgentByPath(directory)(path9);
1628
- const relativePath = (0, import_node_path8.relative)(directory, path9);
1750
+ const relativePath = (0, import_node_path9.relative)(directory, path9);
1629
1751
  const segments = relativePath.split(/[/\\]+/);
1630
1752
  return !!agent && segments.includes("agents");
1631
1753
  };
1632
1754
  var toAgent = (directory) => async (file) => toResource(directory, file);
1633
1755
 
1634
1756
  // src/domains.ts
1635
- var import_promises7 = __toESM(require("fs/promises"));
1636
- var import_node_path9 = __toESM(require("path"));
1757
+ var import_promises8 = __toESM(require("fs/promises"));
1758
+ var import_node_path10 = __toESM(require("path"));
1637
1759
  var import_node_fs3 = __toESM(require("fs"));
1638
1760
  var import_gray_matter3 = __toESM(require("gray-matter"));
1639
1761
  var resolveDomainWriteDirectory = async (directory, id, version) => {
@@ -1677,6 +1799,9 @@ var writeDomain = (directory) => async (domain, options = {
1677
1799
  if (Array.isArray(domain.domains)) {
1678
1800
  resource.domains = uniqueVersions(domain.domains);
1679
1801
  }
1802
+ if (Array.isArray(domain.systems)) {
1803
+ resource.systems = uniqueVersions(domain.systems);
1804
+ }
1680
1805
  if (Array.isArray(domain.sends)) {
1681
1806
  resource.sends = uniqueVersions(domain.sends);
1682
1807
  }
@@ -1690,7 +1815,7 @@ var writeDomain = (directory) => async (domain, options = {
1690
1815
  };
1691
1816
  var versionDomain = (directory) => async (id) => versionResource(directory, id);
1692
1817
  var rmDomain = (directory) => async (path9) => {
1693
- await import_promises7.default.rm((0, import_node_path9.join)(directory, path9), { recursive: true });
1818
+ await import_promises8.default.rm((0, import_node_path10.join)(directory, path9), { recursive: true });
1694
1819
  invalidateFileCache();
1695
1820
  };
1696
1821
  var rmDomainById = (directory) => async (id, version, persistFiles) => rmResourceById(directory, id, version, { type: "domain", persistFiles });
@@ -1703,7 +1828,7 @@ var addUbiquitousLanguageToDomain = (directory) => async (id, ubiquitousLanguage
1703
1828
  };
1704
1829
  var getUbiquitousLanguageFromDomain = (directory) => async (id, version) => {
1705
1830
  const pathToDomain = await findFileById(directory, id, version) || "";
1706
- const pathToUbiquitousLanguage = import_node_path9.default.join(import_node_path9.default.dirname(pathToDomain), "ubiquitous-language.mdx");
1831
+ const pathToUbiquitousLanguage = import_node_path10.default.join(import_node_path10.default.dirname(pathToDomain), "ubiquitous-language.mdx");
1707
1832
  const fileExists = import_node_fs3.default.existsSync(pathToUbiquitousLanguage);
1708
1833
  if (!fileExists) {
1709
1834
  return void 0;
@@ -1718,7 +1843,7 @@ var domainHasVersion = (directory) => async (id, version) => {
1718
1843
  var addServiceToDomain = (directory) => async (id, service, version) => {
1719
1844
  let domain = await getDomain(directory)(id, version);
1720
1845
  const domainPath = await getResourcePath(directory, id, version);
1721
- const extension = import_node_path9.default.extname(domainPath?.fullPath || "");
1846
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1722
1847
  if (domain.services === void 0) {
1723
1848
  domain.services = [];
1724
1849
  }
@@ -1734,7 +1859,7 @@ var addServiceToDomain = (directory) => async (id, service, version) => {
1734
1859
  var addAgentToDomain = (directory) => async (id, agent, version) => {
1735
1860
  let domain = await getDomain(directory)(id, version);
1736
1861
  const domainPath = await getResourcePath(directory, id, version);
1737
- const extension = import_node_path9.default.extname(domainPath?.fullPath || "");
1862
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1738
1863
  if (domain.agents === void 0) {
1739
1864
  domain.agents = [];
1740
1865
  }
@@ -1750,7 +1875,7 @@ var addAgentToDomain = (directory) => async (id, agent, version) => {
1750
1875
  var addSubDomainToDomain = (directory) => async (id, subDomain, version) => {
1751
1876
  let domain = await getDomain(directory)(id, version);
1752
1877
  const domainPath = await getResourcePath(directory, id, version);
1753
- const extension = import_node_path9.default.extname(domainPath?.fullPath || "");
1878
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1754
1879
  if (domain.domains === void 0) {
1755
1880
  domain.domains = [];
1756
1881
  }
@@ -1763,10 +1888,26 @@ var addSubDomainToDomain = (directory) => async (id, subDomain, version) => {
1763
1888
  await rmDomainById(directory)(id, version, true);
1764
1889
  await writeDomain(writeDir)(domain, { format: extension === ".md" ? "md" : "mdx" });
1765
1890
  };
1891
+ var addSystemToDomain = (directory) => async (id, system, version) => {
1892
+ let domain = await getDomain(directory)(id, version);
1893
+ const domainPath = await getResourcePath(directory, id, version);
1894
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1895
+ if (domain.systems === void 0) {
1896
+ domain.systems = [];
1897
+ }
1898
+ const systemExistsInList = domain.systems.some((s) => s.id === system.id && s.version === system.version);
1899
+ if (systemExistsInList) {
1900
+ return;
1901
+ }
1902
+ domain.systems.push(system);
1903
+ const writeDir = await resolveDomainWriteDirectory(directory, id, version);
1904
+ await rmDomainById(directory)(id, version, true);
1905
+ await writeDomain(writeDir)(domain, { format: extension === ".md" ? "md" : "mdx" });
1906
+ };
1766
1907
  var addEntityToDomain = (directory) => async (id, entity, version) => {
1767
1908
  let domain = await getDomain(directory)(id, version);
1768
1909
  const domainPath = await getResourcePath(directory, id, version);
1769
- const extension = import_node_path9.default.extname(domainPath?.fullPath || "");
1910
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1770
1911
  if (domain.entities === void 0) {
1771
1912
  domain.entities = [];
1772
1913
  }
@@ -1782,7 +1923,7 @@ var addEntityToDomain = (directory) => async (id, entity, version) => {
1782
1923
  var addDataProductToDomain = (directory) => async (id, dataProduct, version) => {
1783
1924
  let domain = await getDomain(directory)(id, version);
1784
1925
  const domainPath = await getResourcePath(directory, id, version);
1785
- const extension = import_node_path9.default.extname(domainPath?.fullPath || "");
1926
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1786
1927
  if (domain.dataProducts === void 0) {
1787
1928
  domain.dataProducts = [];
1788
1929
  }
@@ -1800,7 +1941,7 @@ var addDataProductToDomain = (directory) => async (id, dataProduct, version) =>
1800
1941
  var addMessageToDomain = (directory) => async (id, direction, message, version) => {
1801
1942
  let domain = await getDomain(directory)(id, version);
1802
1943
  const domainPath = await getResourcePath(directory, id, version);
1803
- const extension = import_node_path9.default.extname(domainPath?.fullPath || "");
1944
+ const extension = import_node_path10.default.extname(domainPath?.fullPath || "");
1804
1945
  if (direction === "sends") {
1805
1946
  if (domain.sends === void 0) {
1806
1947
  domain.sends = [];
@@ -1830,13 +1971,13 @@ var addMessageToDomain = (directory) => async (id, direction, message, version)
1830
1971
  };
1831
1972
 
1832
1973
  // src/channels.ts
1833
- var import_promises8 = __toESM(require("fs/promises"));
1834
- var import_node_path10 = require("path");
1974
+ var import_promises9 = __toESM(require("fs/promises"));
1975
+ var import_node_path11 = require("path");
1835
1976
  var getChannel = (directory) => async (id, version) => getResource(directory, id, version, { type: "channel" });
1836
1977
  var getChannels = (directory) => async (options) => getResources(directory, { type: "channels", ...options });
1837
1978
  var writeChannel = (directory) => async (channel, options = { path: "" }) => writeResource(directory, { ...channel }, { ...options, type: "channel" });
1838
1979
  var rmChannel = (directory) => async (path9) => {
1839
- await import_promises8.default.rm((0, import_node_path10.join)(directory, path9), { recursive: true });
1980
+ await import_promises9.default.rm((0, import_node_path11.join)(directory, path9), { recursive: true });
1840
1981
  invalidateFileCache();
1841
1982
  };
1842
1983
  var rmChannelById = (directory) => async (id, version, persistFiles) => rmResourceById(directory, id, version, { type: "channel", persistFiles });
@@ -1867,7 +2008,7 @@ var addMessageToChannel = (directory, collection) => async (id, _message, versio
1867
2008
  const { getMessage: getMessage2, rmMessageById, writeMessage } = functions[collection];
1868
2009
  const message = await getMessage2(directory)(_message.id, _message.version);
1869
2010
  const messagePath = await getResourcePath(directory, _message.id, _message.version);
1870
- const extension = (0, import_node_path10.extname)(messagePath?.fullPath || "");
2011
+ const extension = (0, import_node_path11.extname)(messagePath?.fullPath || "");
1871
2012
  if (!message) throw new Error(`Message ${_message.id} with version ${_message.version} not found`);
1872
2013
  if (message.channels === void 0) {
1873
2014
  message.channels = [];
@@ -1879,18 +2020,18 @@ var addMessageToChannel = (directory, collection) => async (id, _message, versio
1879
2020
  throw new Error(`Cannot find message ${id} in the catalog`);
1880
2021
  }
1881
2022
  const path9 = existingResource.split(new RegExp(`[\\\\/]+${collection}`))[0];
1882
- const pathToResource = (0, import_node_path10.join)(path9, collection);
2023
+ const pathToResource = (0, import_node_path11.join)(path9, collection);
1883
2024
  await rmMessageById(directory)(_message.id, _message.version, true);
1884
2025
  await writeMessage(pathToResource)(message, { format: extension === ".md" ? "md" : "mdx" });
1885
2026
  };
1886
2027
 
1887
2028
  // src/messages.ts
1888
- var import_node_path11 = require("path");
2029
+ var import_node_path12 = require("path");
1889
2030
  var import_node_fs4 = __toESM(require("fs"));
1890
2031
  var import_gray_matter4 = __toESM(require("gray-matter"));
1891
2032
  var import_semver5 = require("semver");
1892
2033
  var getMessageBySchemaPath = (directory) => async (path9, options) => {
1893
- const pathToMessage = (0, import_node_path11.dirname)(path9);
2034
+ const pathToMessage = (0, import_node_path12.dirname)(path9);
1894
2035
  try {
1895
2036
  const files = await getFiles(`${directory}/${pathToMessage}/index.{md,mdx}`);
1896
2037
  if (!files || files.length === 0) {
@@ -1988,8 +2129,8 @@ var getSchemaForMessage = (directory) => async (id, version) => {
1988
2129
  if (!file || !import_node_fs4.default.existsSync(file)) return void 0;
1989
2130
  const { data } = import_gray_matter4.default.read(file);
1990
2131
  if (!data.schemaPath) return void 0;
1991
- const resourceDirectory = (0, import_node_path11.dirname)(file);
1992
- const pathToSchema = (0, import_node_path11.join)(resourceDirectory, data.schemaPath);
2132
+ const resourceDirectory = (0, import_node_path12.dirname)(file);
2133
+ const pathToSchema = (0, import_node_path12.join)(resourceDirectory, data.schemaPath);
1993
2134
  if (!import_node_fs4.default.existsSync(pathToSchema)) return void 0;
1994
2135
  const schema = import_node_fs4.default.readFileSync(pathToSchema, "utf8");
1995
2136
  return {
@@ -1999,13 +2140,13 @@ var getSchemaForMessage = (directory) => async (id, version) => {
1999
2140
  };
2000
2141
 
2001
2142
  // src/custom-docs.ts
2002
- var import_node_path12 = __toESM(require("path"));
2143
+ var import_node_path13 = __toESM(require("path"));
2003
2144
  var import_node_fs5 = __toESM(require("fs"));
2004
- var import_promises9 = __toESM(require("fs/promises"));
2145
+ var import_promises10 = __toESM(require("fs/promises"));
2005
2146
  var import_gray_matter5 = __toESM(require("gray-matter"));
2006
2147
  var import_slugify = __toESM(require("slugify"));
2007
2148
  var getCustomDoc = (directory) => async (filePath) => {
2008
- const fullPath = import_node_path12.default.join(directory, filePath);
2149
+ const fullPath = import_node_path13.default.join(directory, filePath);
2009
2150
  const fullPathWithExtension = fullPath.endsWith(".mdx") ? fullPath : `${fullPath}.mdx`;
2010
2151
  const fileExists = import_node_fs5.default.existsSync(fullPathWithExtension);
2011
2152
  if (!fileExists) {
@@ -2024,39 +2165,39 @@ var writeCustomDoc = (directory) => async (customDoc, options = { path: "" }) =>
2024
2165
  const { fileName, ...rest } = customDoc;
2025
2166
  const name = fileName || (0, import_slugify.default)(customDoc.title, { lower: true });
2026
2167
  const withExtension = name.endsWith(".mdx") ? name : `${name}.mdx`;
2027
- const fullPath = import_node_path12.default.join(directory, options.path || "", withExtension);
2028
- import_node_fs5.default.mkdirSync(import_node_path12.default.dirname(fullPath), { recursive: true });
2168
+ const fullPath = import_node_path13.default.join(directory, options.path || "", withExtension);
2169
+ import_node_fs5.default.mkdirSync(import_node_path13.default.dirname(fullPath), { recursive: true });
2029
2170
  const document = import_gray_matter5.default.stringify(customDoc.markdown.trim(), rest);
2030
2171
  import_node_fs5.default.writeFileSync(fullPath, document);
2031
2172
  invalidateFileCache();
2032
2173
  };
2033
2174
  var rmCustomDoc = (directory) => async (filePath) => {
2034
2175
  const withExtension = filePath.endsWith(".mdx") ? filePath : `${filePath}.mdx`;
2035
- await import_promises9.default.rm((0, import_node_path12.join)(directory, withExtension), { recursive: true });
2176
+ await import_promises10.default.rm((0, import_node_path13.join)(directory, withExtension), { recursive: true });
2036
2177
  invalidateFileCache();
2037
2178
  };
2038
2179
 
2039
2180
  // src/teams.ts
2040
- var import_promises10 = __toESM(require("fs/promises"));
2181
+ var import_promises11 = __toESM(require("fs/promises"));
2041
2182
  var import_node_fs8 = __toESM(require("fs"));
2042
- var import_node_path15 = require("path");
2183
+ var import_node_path16 = require("path");
2043
2184
  var import_gray_matter7 = __toESM(require("gray-matter"));
2044
- var import_node_path16 = __toESM(require("path"));
2185
+ var import_node_path17 = __toESM(require("path"));
2045
2186
 
2046
2187
  // src/users.ts
2047
2188
  var import_node_fs7 = __toESM(require("fs"));
2048
- var import_node_path14 = require("path");
2189
+ var import_node_path15 = require("path");
2049
2190
  var import_gray_matter6 = __toESM(require("gray-matter"));
2050
2191
 
2051
2192
  // src/internal/directory-store.ts
2052
2193
  var import_node_fs6 = __toESM(require("fs"));
2053
- var import_node_path13 = __toESM(require("path"));
2054
- var DIRECTORY_STORE_PATH = import_node_path13.default.join(".eventcatalog", "store", "directory.json");
2194
+ var import_node_path14 = __toESM(require("path"));
2195
+ var DIRECTORY_STORE_PATH = import_node_path14.default.join(".eventcatalog", "store", "directory.json");
2055
2196
  var getCatalogRoot = (catalogDir, collection) => {
2056
- return import_node_path13.default.basename(catalogDir) === collection ? import_node_path13.default.dirname(catalogDir) : catalogDir;
2197
+ return import_node_path14.default.basename(catalogDir) === collection ? import_node_path14.default.dirname(catalogDir) : catalogDir;
2057
2198
  };
2058
2199
  var getDirectoryStorePath = (catalogDir, collection) => {
2059
- return import_node_path13.default.join(getCatalogRoot(catalogDir, collection), DIRECTORY_STORE_PATH);
2200
+ return import_node_path14.default.join(getCatalogRoot(catalogDir, collection), DIRECTORY_STORE_PATH);
2060
2201
  };
2061
2202
  var readDirectoryStoreResources = (catalogDir, collection) => {
2062
2203
  const storePath = getDirectoryStorePath(catalogDir, collection);
@@ -2114,12 +2255,12 @@ var writeUser = (catalogDir) => async (user, options = {}) => {
2114
2255
  }
2115
2256
  const { markdown, ...frontmatter } = resource;
2116
2257
  const document = import_gray_matter6.default.stringify(markdown, frontmatter);
2117
- import_node_fs7.default.mkdirSync((0, import_node_path14.join)(catalogDir, ""), { recursive: true });
2118
- import_node_fs7.default.writeFileSync((0, import_node_path14.join)(catalogDir, "", `${resource.id}.mdx`), document);
2258
+ import_node_fs7.default.mkdirSync((0, import_node_path15.join)(catalogDir, ""), { recursive: true });
2259
+ import_node_fs7.default.writeFileSync((0, import_node_path15.join)(catalogDir, "", `${resource.id}.mdx`), document);
2119
2260
  invalidateFileCache();
2120
2261
  };
2121
2262
  var rmUserById = (catalogDir) => async (id) => {
2122
- import_node_fs7.default.rmSync((0, import_node_path14.join)(catalogDir, `${id}.mdx`), { recursive: true });
2263
+ import_node_fs7.default.rmSync((0, import_node_path15.join)(catalogDir, `${id}.mdx`), { recursive: true });
2123
2264
  invalidateFileCache();
2124
2265
  };
2125
2266
 
@@ -2158,12 +2299,12 @@ var writeTeam = (catalogDir) => async (team, options = {}) => {
2158
2299
  }
2159
2300
  const { markdown, ...frontmatter } = resource;
2160
2301
  const document = import_gray_matter7.default.stringify(markdown, frontmatter);
2161
- import_node_fs8.default.mkdirSync((0, import_node_path15.join)(catalogDir, ""), { recursive: true });
2162
- import_node_fs8.default.writeFileSync((0, import_node_path15.join)(catalogDir, "", `${resource.id}.mdx`), document);
2302
+ import_node_fs8.default.mkdirSync((0, import_node_path16.join)(catalogDir, ""), { recursive: true });
2303
+ import_node_fs8.default.writeFileSync((0, import_node_path16.join)(catalogDir, "", `${resource.id}.mdx`), document);
2163
2304
  invalidateFileCache();
2164
2305
  };
2165
2306
  var rmTeamById = (catalogDir) => async (id) => {
2166
- await import_promises10.default.rm((0, import_node_path15.join)(catalogDir, `${id}.mdx`), { recursive: true });
2307
+ await import_promises11.default.rm((0, import_node_path16.join)(catalogDir, `${id}.mdx`), { recursive: true });
2167
2308
  invalidateFileCache();
2168
2309
  };
2169
2310
  var getOwnersForResource = (catalogDir) => async (id, version) => {
@@ -2172,11 +2313,11 @@ var getOwnersForResource = (catalogDir) => async (id, version) => {
2172
2313
  if (!resource) return [];
2173
2314
  if (!resource.owners) return [];
2174
2315
  for (const owner of resource.owners) {
2175
- const team = await getTeam(import_node_path16.default.join(catalogDir, "teams"))(owner);
2316
+ const team = await getTeam(import_node_path17.default.join(catalogDir, "teams"))(owner);
2176
2317
  if (team) {
2177
2318
  owners.push(team);
2178
2319
  } else {
2179
- const user = await getUser(import_node_path16.default.join(catalogDir, "users"))(owner);
2320
+ const user = await getUser(import_node_path17.default.join(catalogDir, "users"))(owner);
2180
2321
  if (user) {
2181
2322
  owners.push(user);
2182
2323
  }
@@ -2187,11 +2328,11 @@ var getOwnersForResource = (catalogDir) => async (id, version) => {
2187
2328
 
2188
2329
  // src/eventcatalog.ts
2189
2330
  var import_fs = __toESM(require("fs"));
2190
- var import_node_path17 = __toESM(require("path"));
2331
+ var import_node_path18 = __toESM(require("path"));
2191
2332
  var DUMP_VERSION = "0.0.1";
2192
2333
  var getEventCatalogVersion = async (catalogDir) => {
2193
2334
  try {
2194
- const packageJson = import_fs.default.readFileSync((0, import_node_path17.join)(catalogDir, "package.json"), "utf8");
2335
+ const packageJson = import_fs.default.readFileSync((0, import_node_path18.join)(catalogDir, "package.json"), "utf8");
2195
2336
  const packageJsonObject = JSON.parse(packageJson);
2196
2337
  return packageJsonObject["dependencies"]["@eventcatalog/core"];
2197
2338
  } catch (error) {
@@ -2204,7 +2345,7 @@ var hydrateResource = async (catalogDir, resources = [], { attachSchema = false
2204
2345
  const resourcePath = await getResourcePath(catalogDir, resource.id, resource.version);
2205
2346
  let schema = "";
2206
2347
  if (resource.schemaPath && resourcePath?.fullPath) {
2207
- const pathToSchema = import_node_path17.default.join(import_node_path17.default.dirname(resourcePath?.fullPath), resource.schemaPath);
2348
+ const pathToSchema = import_node_path18.default.join(import_node_path18.default.dirname(resourcePath?.fullPath), resource.schemaPath);
2208
2349
  if (import_fs.default.existsSync(pathToSchema)) {
2209
2350
  schema = import_fs.default.readFileSync(pathToSchema, "utf8");
2210
2351
  }
@@ -2225,7 +2366,7 @@ var filterCollection = (collection, options) => {
2225
2366
  };
2226
2367
  var getEventCatalogConfigurationFile = (directory) => async () => {
2227
2368
  try {
2228
- const path9 = (0, import_node_path17.join)(directory, "eventcatalog.config.js");
2369
+ const path9 = (0, import_node_path18.join)(directory, "eventcatalog.config.js");
2229
2370
  const configModule = await import(path9);
2230
2371
  return configModule.default;
2231
2372
  } catch (error) {
@@ -2236,6 +2377,7 @@ var getEventCatalogConfigurationFile = (directory) => async () => {
2236
2377
  var dumpCatalog = (directory) => async (options) => {
2237
2378
  const {
2238
2379
  getDomains: getDomains2,
2380
+ getSystems: getSystems2,
2239
2381
  getServices: getServices2,
2240
2382
  getAgents: getAgents2,
2241
2383
  getEvents: getEvents2,
@@ -2246,10 +2388,12 @@ var dumpCatalog = (directory) => async (options) => {
2246
2388
  getUsers: getUsers3,
2247
2389
  getEntities: getEntities2,
2248
2390
  getDataStores: getDataStores2,
2249
- getFlows: getFlows2
2391
+ getFlows: getFlows2,
2392
+ getAdrs: getAdrs2
2250
2393
  } = src_default(directory);
2251
2394
  const { includeMarkdown = true } = options || {};
2252
2395
  const domains = await getDomains2();
2396
+ const systems = await getSystems2();
2253
2397
  const services = await getServices2();
2254
2398
  const agents = await getAgents2();
2255
2399
  const events = await getEvents2();
@@ -2261,8 +2405,10 @@ var dumpCatalog = (directory) => async (options) => {
2261
2405
  const entities = await getEntities2();
2262
2406
  const containers = await getDataStores2();
2263
2407
  const flows = await getFlows2();
2408
+ const adrs = await getAdrs2();
2264
2409
  const [
2265
2410
  hydratedDomains,
2411
+ hydratedSystems,
2266
2412
  hydratedServices,
2267
2413
  hydratedAgents,
2268
2414
  hydratedEvents,
@@ -2273,9 +2419,11 @@ var dumpCatalog = (directory) => async (options) => {
2273
2419
  hydratedChannels,
2274
2420
  hydratedEntities,
2275
2421
  hydratedContainers,
2276
- hydratedFlows
2422
+ hydratedFlows,
2423
+ hydratedAdrs
2277
2424
  ] = await Promise.all([
2278
2425
  hydrateResource(directory, domains),
2426
+ hydrateResource(directory, systems),
2279
2427
  hydrateResource(directory, services),
2280
2428
  hydrateResource(directory, agents),
2281
2429
  hydrateResource(directory, events),
@@ -2286,7 +2434,8 @@ var dumpCatalog = (directory) => async (options) => {
2286
2434
  hydrateResource(directory, channels),
2287
2435
  hydrateResource(directory, entities),
2288
2436
  hydrateResource(directory, containers),
2289
- hydrateResource(directory, flows)
2437
+ hydrateResource(directory, flows),
2438
+ hydrateResource(directory, adrs)
2290
2439
  ]);
2291
2440
  return {
2292
2441
  version: DUMP_VERSION,
@@ -2294,6 +2443,7 @@ var dumpCatalog = (directory) => async (options) => {
2294
2443
  createdAt: (/* @__PURE__ */ new Date()).toISOString(),
2295
2444
  resources: {
2296
2445
  domains: filterCollection(hydratedDomains, { includeMarkdown }),
2446
+ systems: filterCollection(hydratedSystems, { includeMarkdown }),
2297
2447
  services: filterCollection(hydratedServices, { includeMarkdown }),
2298
2448
  agents: filterCollection(hydratedAgents, { includeMarkdown }),
2299
2449
  messages: {
@@ -2306,14 +2456,15 @@ var dumpCatalog = (directory) => async (options) => {
2306
2456
  channels: filterCollection(hydratedChannels, { includeMarkdown }),
2307
2457
  entities: filterCollection(hydratedEntities, { includeMarkdown }),
2308
2458
  containers: filterCollection(hydratedContainers, { includeMarkdown }),
2309
- flows: filterCollection(hydratedFlows, { includeMarkdown })
2459
+ flows: filterCollection(hydratedFlows, { includeMarkdown }),
2460
+ adrs: filterCollection(hydratedAdrs, { includeMarkdown })
2310
2461
  }
2311
2462
  };
2312
2463
  };
2313
2464
 
2314
2465
  // src/snapshots.ts
2315
2466
  var import_node_fs9 = __toESM(require("fs"));
2316
- var import_node_path18 = __toESM(require("path"));
2467
+ var import_node_path19 = __toESM(require("path"));
2317
2468
  var import_node_crypto = require("crypto");
2318
2469
  var import_node_child_process = require("child_process");
2319
2470
  var import_semver6 = require("semver");
@@ -2493,7 +2644,7 @@ var computeRelationshipDiff = (snapshotA, snapshotB) => {
2493
2644
  var SNAPSHOT_VERSION = "1.0.0";
2494
2645
  var getEventCatalogVersion2 = (catalogDir) => {
2495
2646
  try {
2496
- const packageJson = import_node_fs9.default.readFileSync(import_node_path18.default.join(catalogDir, "package.json"), "utf8");
2647
+ const packageJson = import_node_fs9.default.readFileSync(import_node_path19.default.join(catalogDir, "package.json"), "utf8");
2497
2648
  const packageJsonObject = JSON.parse(packageJson);
2498
2649
  return packageJsonObject["dependencies"]?.["@eventcatalog/core"] ?? "unknown";
2499
2650
  } catch {
@@ -2590,10 +2741,10 @@ var createSnapshot = (directory) => {
2590
2741
  channels: snapshotChannels
2591
2742
  }
2592
2743
  };
2593
- const snapshotsDir = outputDir || import_node_path18.default.join(directory, ".snapshots");
2744
+ const snapshotsDir = outputDir || import_node_path19.default.join(directory, ".snapshots");
2594
2745
  import_node_fs9.default.mkdirSync(snapshotsDir, { recursive: true });
2595
2746
  const fileName = `${snapshotLabel}.snapshot.json`;
2596
- const filePath = import_node_path18.default.join(snapshotsDir, fileName);
2747
+ const filePath = import_node_path19.default.join(snapshotsDir, fileName);
2597
2748
  import_node_fs9.default.writeFileSync(filePath, JSON.stringify(snapshot));
2598
2749
  return { filePath, snapshot };
2599
2750
  };
@@ -2624,13 +2775,13 @@ var diffSnapshots = (directory) => async (snapshotAPath, snapshotBPath) => {
2624
2775
  };
2625
2776
  };
2626
2777
  var listSnapshots = (directory) => async () => {
2627
- const snapshotsDir = import_node_path18.default.join(directory, ".snapshots");
2778
+ const snapshotsDir = import_node_path19.default.join(directory, ".snapshots");
2628
2779
  if (!import_node_fs9.default.existsSync(snapshotsDir)) return [];
2629
2780
  const files = import_node_fs9.default.readdirSync(snapshotsDir).filter((f) => f.endsWith(".snapshot.json"));
2630
2781
  const snapshots = [];
2631
2782
  for (const file of files) {
2632
2783
  try {
2633
- const filePath = import_node_path18.default.join(snapshotsDir, file);
2784
+ const filePath = import_node_path19.default.join(snapshotsDir, file);
2634
2785
  const content = JSON.parse(import_node_fs9.default.readFileSync(filePath, "utf-8"));
2635
2786
  snapshots.push({
2636
2787
  label: content.label,
@@ -2645,9 +2796,9 @@ var listSnapshots = (directory) => async () => {
2645
2796
  };
2646
2797
 
2647
2798
  // src/changelogs.ts
2648
- var import_node_path19 = __toESM(require("path"));
2799
+ var import_node_path20 = __toESM(require("path"));
2649
2800
  var import_node_fs10 = __toESM(require("fs"));
2650
- var import_promises11 = __toESM(require("fs/promises"));
2801
+ var import_promises12 = __toESM(require("fs/promises"));
2651
2802
  var import_gray_matter8 = __toESM(require("gray-matter"));
2652
2803
  var writeChangelog = (catalogDir) => async (id, changelog, options = {}) => {
2653
2804
  const { version, format = "mdx" } = options;
@@ -2655,8 +2806,8 @@ var writeChangelog = (catalogDir) => async (id, changelog, options = {}) => {
2655
2806
  if (!resourceFile) {
2656
2807
  throw new Error(`No resource found with id: ${id}${version ? ` and version: ${version}` : ""}`);
2657
2808
  }
2658
- const resourceDir = (0, import_node_path19.dirname)(resourceFile);
2659
- const changelogPath = import_node_path19.default.join(resourceDir, `changelog.${format}`);
2809
+ const resourceDir = (0, import_node_path20.dirname)(resourceFile);
2810
+ const changelogPath = import_node_path20.default.join(resourceDir, `changelog.${format}`);
2660
2811
  const { markdown, ...frontmatter } = changelog;
2661
2812
  const fm = { ...frontmatter };
2662
2813
  if (fm.createdAt instanceof Date) {
@@ -2676,9 +2827,9 @@ var appendChangelog = (catalogDir) => async (id, changelog, options = {}) => {
2676
2827
  if (!resourceFile) {
2677
2828
  throw new Error(`No resource found with id: ${id}${version ? ` and version: ${version}` : ""}`);
2678
2829
  }
2679
- const resourceDir = (0, import_node_path19.dirname)(resourceFile);
2680
- const mdxPath = import_node_path19.default.join(resourceDir, "changelog.mdx");
2681
- const mdPath = import_node_path19.default.join(resourceDir, "changelog.md");
2830
+ const resourceDir = (0, import_node_path20.dirname)(resourceFile);
2831
+ const mdxPath = import_node_path20.default.join(resourceDir, "changelog.mdx");
2832
+ const mdPath = import_node_path20.default.join(resourceDir, "changelog.md");
2682
2833
  const existingPath = import_node_fs10.default.existsSync(mdxPath) ? mdxPath : import_node_fs10.default.existsSync(mdPath) ? mdPath : void 0;
2683
2834
  if (!existingPath) {
2684
2835
  return writeChangelog(catalogDir)(id, changelog, options);
@@ -2706,9 +2857,9 @@ var getChangelog = (catalogDir) => async (id, options = {}) => {
2706
2857
  const { version } = options;
2707
2858
  const resourceFile = await findFileById(catalogDir, id, version);
2708
2859
  if (!resourceFile) return void 0;
2709
- const resourceDir = (0, import_node_path19.dirname)(resourceFile);
2710
- const mdxPath = import_node_path19.default.join(resourceDir, "changelog.mdx");
2711
- const mdPath = import_node_path19.default.join(resourceDir, "changelog.md");
2860
+ const resourceDir = (0, import_node_path20.dirname)(resourceFile);
2861
+ const mdxPath = import_node_path20.default.join(resourceDir, "changelog.mdx");
2862
+ const mdPath = import_node_path20.default.join(resourceDir, "changelog.md");
2712
2863
  const changelogPath = import_node_fs10.default.existsSync(mdxPath) ? mdxPath : import_node_fs10.default.existsSync(mdPath) ? mdPath : void 0;
2713
2864
  if (!changelogPath) return void 0;
2714
2865
  const { data, content } = import_gray_matter8.default.read(changelogPath);
@@ -2720,21 +2871,21 @@ var rmChangelog = (catalogDir) => async (id, options = {}) => {
2720
2871
  if (!resourceFile) {
2721
2872
  throw new Error(`No resource found with id: ${id}${version ? ` and version: ${version}` : ""}`);
2722
2873
  }
2723
- const resourceDir = (0, import_node_path19.dirname)(resourceFile);
2724
- const mdxPath = import_node_path19.default.join(resourceDir, "changelog.mdx");
2725
- const mdPath = import_node_path19.default.join(resourceDir, "changelog.md");
2874
+ const resourceDir = (0, import_node_path20.dirname)(resourceFile);
2875
+ const mdxPath = import_node_path20.default.join(resourceDir, "changelog.mdx");
2876
+ const mdPath = import_node_path20.default.join(resourceDir, "changelog.md");
2726
2877
  if (import_node_fs10.default.existsSync(mdxPath)) {
2727
- await import_promises11.default.rm(mdxPath);
2878
+ await import_promises12.default.rm(mdxPath);
2728
2879
  }
2729
2880
  if (import_node_fs10.default.existsSync(mdPath)) {
2730
- await import_promises11.default.rm(mdPath);
2881
+ await import_promises12.default.rm(mdPath);
2731
2882
  }
2732
2883
  invalidateFileCache();
2733
2884
  };
2734
2885
 
2735
2886
  // src/entities.ts
2736
- var import_promises12 = __toESM(require("fs/promises"));
2737
- var import_node_path20 = require("path");
2887
+ var import_promises13 = __toESM(require("fs/promises"));
2888
+ var import_node_path21 = require("path");
2738
2889
  var getEntity = (directory) => async (id, version) => getResource(directory, id, version, { type: "entity" });
2739
2890
  var getEntities = (directory) => async (options) => getResources(directory, { type: "entities", latestOnly: options?.latestOnly });
2740
2891
  var writeEntity = (directory) => async (entity, options = {
@@ -2742,8 +2893,16 @@ var writeEntity = (directory) => async (entity, options = {
2742
2893
  override: false,
2743
2894
  format: "mdx"
2744
2895
  }) => writeResource(directory, { ...entity }, { ...options, type: "entity" });
2896
+ var writeEntityToSystem = (directory) => async (entity, system, options = { path: "", format: "mdx", override: false }) => {
2897
+ const resourcePath = await getResourcePath(directory, system.id, system.version);
2898
+ if (!resourcePath) {
2899
+ throw new Error("System not found");
2900
+ }
2901
+ const pathForEntity = (0, import_node_path21.join)(resourcePath.directory, "entities", entity.id);
2902
+ await writeResource(directory, { ...entity }, { ...options, path: pathForEntity, type: "entity" });
2903
+ };
2745
2904
  var rmEntity = (directory) => async (path9) => {
2746
- await import_promises12.default.rm((0, import_node_path20.join)(directory, path9), { recursive: true });
2905
+ await import_promises13.default.rm((0, import_node_path21.join)(directory, path9), { recursive: true });
2747
2906
  invalidateFileCache();
2748
2907
  };
2749
2908
  var rmEntityById = (directory) => async (id, version, persistFiles) => {
@@ -2756,8 +2915,8 @@ var entityHasVersion = (directory) => async (id, version) => {
2756
2915
  };
2757
2916
 
2758
2917
  // src/flows.ts
2759
- var import_promises13 = __toESM(require("fs/promises"));
2760
- var import_node_path21 = require("path");
2918
+ var import_promises14 = __toESM(require("fs/promises"));
2919
+ var import_node_path22 = require("path");
2761
2920
 
2762
2921
  // src/flow-builder.ts
2763
2922
  var cloneStep = (step) => ({
@@ -3239,21 +3398,29 @@ var writeVersionedFlow = (directory) => async (flow) => {
3239
3398
  };
3240
3399
  var writeFlowToDomain = (directory) => async (flow, domain, options = { path: "", format: "mdx", override: false }) => {
3241
3400
  let pathForFlow = domain.version && domain.version !== "latest" ? `/${domain.id}/versioned/${domain.version}/flows` : `/${domain.id}/flows`;
3242
- pathForFlow = (0, import_node_path21.join)(pathForFlow, flow.id);
3401
+ pathForFlow = (0, import_node_path22.join)(pathForFlow, flow.id);
3243
3402
  await writeResource(directory, { ...flow }, { ...options, path: pathForFlow, type: "flow" });
3244
3403
  };
3245
3404
  var writeFlowToService = (directory) => async (flow, service, options = { path: "", format: "mdx", override: false }) => {
3246
3405
  let pathForFlow = service.version && service.version !== "latest" ? `/${service.id}/versioned/${service.version}/flows` : `/${service.id}/flows`;
3247
- pathForFlow = (0, import_node_path21.join)(pathForFlow, flow.id);
3406
+ pathForFlow = (0, import_node_path22.join)(pathForFlow, flow.id);
3407
+ await writeResource(directory, { ...flow }, { ...options, path: pathForFlow, type: "flow" });
3408
+ };
3409
+ var writeFlowToSystem = (directory) => async (flow, system, options = { path: "", format: "mdx", override: false }) => {
3410
+ const resourcePath = await getResourcePath(directory, system.id, system.version);
3411
+ if (!resourcePath) {
3412
+ throw new Error("System not found");
3413
+ }
3414
+ const pathForFlow = (0, import_node_path22.join)(resourcePath.directory, "flows", flow.id);
3248
3415
  await writeResource(directory, { ...flow }, { ...options, path: pathForFlow, type: "flow" });
3249
3416
  };
3250
3417
  var writeFlowToAgent = (directory) => async (flow, agent, options = { path: "", format: "mdx", override: false }) => {
3251
3418
  let pathForFlow = agent.version && agent.version !== "latest" ? `/${agent.id}/versioned/${agent.version}/flows` : `/${agent.id}/flows`;
3252
- pathForFlow = (0, import_node_path21.join)(pathForFlow, flow.id);
3419
+ pathForFlow = (0, import_node_path22.join)(pathForFlow, flow.id);
3253
3420
  await writeResource(directory, { ...flow }, { ...options, path: pathForFlow, type: "flow" });
3254
3421
  };
3255
3422
  var rmFlow = (directory) => async (path9) => {
3256
- await import_promises13.default.rm((0, import_node_path21.join)(directory, path9), { recursive: true });
3423
+ await import_promises14.default.rm((0, import_node_path22.join)(directory, path9), { recursive: true });
3257
3424
  invalidateFileCache();
3258
3425
  };
3259
3426
  var rmFlowById = (directory) => async (id, version, persistFiles) => {
@@ -3267,8 +3434,8 @@ var flowHasVersion = (directory) => async (id, version) => {
3267
3434
  var addFileToFlow = (directory) => async (id, file, version) => addFileToResource(directory, id, file, version, { type: "flow" });
3268
3435
 
3269
3436
  // src/containers.ts
3270
- var import_promises14 = __toESM(require("fs/promises"));
3271
- var import_node_path22 = require("path");
3437
+ var import_promises15 = __toESM(require("fs/promises"));
3438
+ var import_node_path23 = require("path");
3272
3439
  var getContainer = (directory) => async (id, version) => getResource(directory, id, version, { type: "container" });
3273
3440
  var getContainers = (directory) => async (options) => getResources(directory, { type: "containers", latestOnly: options?.latestOnly });
3274
3441
  var writeContainer = (directory) => async (data, options = {
@@ -3278,7 +3445,7 @@ var writeContainer = (directory) => async (data, options = {
3278
3445
  }) => writeResource(directory, { ...data }, { ...options, type: "container" });
3279
3446
  var versionContainer = (directory) => async (id) => versionResource(directory, id);
3280
3447
  var rmContainer = (directory) => async (path9) => {
3281
- await import_promises14.default.rm((0, import_node_path22.join)(directory, path9), { recursive: true });
3448
+ await import_promises15.default.rm((0, import_node_path23.join)(directory, path9), { recursive: true });
3282
3449
  invalidateFileCache();
3283
3450
  };
3284
3451
  var rmContainerById = (directory) => async (id, version, persistFiles) => {
@@ -3295,7 +3462,15 @@ var writeContainerToService = (directory) => async (container, service, options
3295
3462
  throw new Error("Service not found");
3296
3463
  }
3297
3464
  let pathForContainer = service.version && service.version !== "latest" ? `${resourcePath.directory}/versioned/${service.version}/containers` : `${resourcePath.directory}/containers`;
3298
- pathForContainer = (0, import_node_path22.join)(pathForContainer, container.id);
3465
+ pathForContainer = (0, import_node_path23.join)(pathForContainer, container.id);
3466
+ await writeResource(directory, { ...container }, { ...options, path: pathForContainer, type: "container" });
3467
+ };
3468
+ var writeContainerToSystem = (directory) => async (container, system, options = { path: "", format: "mdx", override: false }) => {
3469
+ const resourcePath = await getResourcePath(directory, system.id, system.version);
3470
+ if (!resourcePath) {
3471
+ throw new Error("System not found");
3472
+ }
3473
+ const pathForContainer = (0, import_node_path23.join)(resourcePath.directory, "containers", container.id);
3299
3474
  await writeResource(directory, { ...container }, { ...options, path: pathForContainer, type: "container" });
3300
3475
  };
3301
3476
 
@@ -3309,10 +3484,11 @@ var rmDataStoreById = rmContainerById;
3309
3484
  var dataStoreHasVersion = containerHasVersion;
3310
3485
  var addFileToDataStore = addFileToContainer;
3311
3486
  var writeDataStoreToService = writeContainerToService;
3487
+ var writeDataStoreToSystem = writeContainerToSystem;
3312
3488
 
3313
3489
  // src/data-products.ts
3314
- var import_promises15 = __toESM(require("fs/promises"));
3315
- var import_node_path23 = require("path");
3490
+ var import_promises16 = __toESM(require("fs/promises"));
3491
+ var import_node_path24 = require("path");
3316
3492
  var getDataProduct = (directory) => async (id, version) => getResource(directory, id, version, { type: "data-product" });
3317
3493
  var getDataProducts = (directory) => async (options) => getResources(directory, { type: "data-products", latestOnly: options?.latestOnly });
3318
3494
  var writeDataProduct = (directory) => async (dataProduct, options = {
@@ -3322,11 +3498,11 @@ var writeDataProduct = (directory) => async (dataProduct, options = {
3322
3498
  }) => writeResource(directory, { ...dataProduct }, { ...options, type: "data-product" });
3323
3499
  var writeDataProductToDomain = (directory) => async (dataProduct, domain, options = { path: "", format: "mdx", override: false }) => {
3324
3500
  let pathForDataProduct = domain.version && domain.version !== "latest" ? `/${domain.id}/versioned/${domain.version}/data-products` : `/${domain.id}/data-products`;
3325
- pathForDataProduct = (0, import_node_path23.join)(pathForDataProduct, dataProduct.id);
3501
+ pathForDataProduct = (0, import_node_path24.join)(pathForDataProduct, dataProduct.id);
3326
3502
  await writeResource(directory, { ...dataProduct }, { ...options, path: pathForDataProduct, type: "data-product" });
3327
3503
  };
3328
3504
  var rmDataProduct = (directory) => async (path9) => {
3329
- await import_promises15.default.rm((0, import_node_path23.join)(directory, path9), { recursive: true });
3505
+ await import_promises16.default.rm((0, import_node_path24.join)(directory, path9), { recursive: true });
3330
3506
  invalidateFileCache();
3331
3507
  };
3332
3508
  var rmDataProductById = (directory) => async (id, version, persistFiles) => {
@@ -3340,8 +3516,8 @@ var dataProductHasVersion = (directory) => async (id, version) => {
3340
3516
  var addFileToDataProduct = (directory) => async (id, file, version) => addFileToResource(directory, id, file, version);
3341
3517
 
3342
3518
  // src/diagrams.ts
3343
- var import_promises16 = __toESM(require("fs/promises"));
3344
- var import_node_path24 = require("path");
3519
+ var import_promises17 = __toESM(require("fs/promises"));
3520
+ var import_node_path25 = require("path");
3345
3521
  var getDiagram = (directory) => async (id, version) => getResource(directory, id, version, { type: "diagram" });
3346
3522
  var getDiagrams = (directory) => async (options) => getResources(directory, { type: "diagrams", latestOnly: options?.latestOnly });
3347
3523
  var writeDiagram = (directory) => async (diagram, options = {
@@ -3350,7 +3526,7 @@ var writeDiagram = (directory) => async (diagram, options = {
3350
3526
  format: "mdx"
3351
3527
  }) => writeResource(directory, { ...diagram }, { ...options, type: "diagram" });
3352
3528
  var rmDiagram = (directory) => async (path9) => {
3353
- await import_promises16.default.rm((0, import_node_path24.join)(directory, path9), { recursive: true });
3529
+ await import_promises17.default.rm((0, import_node_path25.join)(directory, path9), { recursive: true });
3354
3530
  invalidateFileCache();
3355
3531
  };
3356
3532
  var rmDiagramById = (directory) => async (id, version, persistFiles) => {
@@ -3363,6 +3539,30 @@ var diagramHasVersion = (directory) => async (id, version) => {
3363
3539
  };
3364
3540
  var addFileToDiagram = (directory) => async (id, file, version) => addFileToResource(directory, id, file, version, { type: "diagram" });
3365
3541
 
3542
+ // src/adrs.ts
3543
+ var import_promises18 = __toESM(require("fs/promises"));
3544
+ var import_node_path26 = require("path");
3545
+ var getAdr = (directory) => async (id, version) => getResource(directory, id, version, { type: "adr" });
3546
+ var getAdrs = (directory) => async (options) => getResources(directory, { type: "adrs", latestOnly: options?.latestOnly });
3547
+ var writeAdr = (directory) => async (adr, options = {
3548
+ path: "",
3549
+ override: false,
3550
+ format: "mdx"
3551
+ }) => writeResource(directory, { ...adr }, { ...options, type: "adr" });
3552
+ var rmAdr = (directory) => async (path9) => {
3553
+ await import_promises18.default.rm((0, import_node_path26.join)(directory, path9), { recursive: true });
3554
+ invalidateFileCache();
3555
+ };
3556
+ var rmAdrById = (directory) => async (id, version, persistFiles) => {
3557
+ await rmResourceById(directory, id, version, { type: "adr", persistFiles });
3558
+ };
3559
+ var versionAdr = (directory) => async (id) => versionResource(directory, id);
3560
+ var adrHasVersion = (directory) => async (id, version) => {
3561
+ const file = await findFileById(directory, id, version);
3562
+ return !!file;
3563
+ };
3564
+ var addFileToAdr = (directory) => async (id, file, version) => addFileToResource(directory, id, file, version, { type: "adr" });
3565
+
3366
3566
  // src/index.ts
3367
3567
  var src_default = (path9) => {
3368
3568
  return {
@@ -3372,13 +3572,13 @@ var src_default = (path9) => {
3372
3572
  * @param version - Optional id of the version to get (supports semver)
3373
3573
  * @returns Event|Undefined
3374
3574
  */
3375
- getEvent: getEvent((0, import_node_path25.join)(path9)),
3575
+ getEvent: getEvent((0, import_node_path27.join)(path9)),
3376
3576
  /**
3377
3577
  * Returns all events from EventCatalog
3378
3578
  * @param latestOnly - optional boolean, set to true to get only latest versions
3379
3579
  * @returns Event[]|Undefined
3380
3580
  */
3381
- getEvents: getEvents((0, import_node_path25.join)(path9)),
3581
+ getEvents: getEvents((0, import_node_path27.join)(path9)),
3382
3582
  /**
3383
3583
  * Adds an event to EventCatalog
3384
3584
  *
@@ -3386,7 +3586,7 @@ var src_default = (path9) => {
3386
3586
  * @param options - Optional options to write the event
3387
3587
  *
3388
3588
  */
3389
- writeEvent: writeEvent((0, import_node_path25.join)(path9, "events")),
3589
+ writeEvent: writeEvent((0, import_node_path27.join)(path9, "events")),
3390
3590
  /**
3391
3591
  * Adds an event to a service in EventCatalog
3392
3592
  *
@@ -3395,7 +3595,7 @@ var src_default = (path9) => {
3395
3595
  * @param options - Optional options to write the event
3396
3596
  *
3397
3597
  */
3398
- writeEventToService: writeEventToService((0, import_node_path25.join)(path9)),
3598
+ writeEventToService: writeEventToService((0, import_node_path27.join)(path9)),
3399
3599
  /**
3400
3600
  * Adds an event to an agent in EventCatalog
3401
3601
  *
@@ -3404,26 +3604,26 @@ var src_default = (path9) => {
3404
3604
  * @param options - Optional options to write the event
3405
3605
  *
3406
3606
  */
3407
- writeEventToAgent: writeEventToAgent((0, import_node_path25.join)(path9)),
3607
+ writeEventToAgent: writeEventToAgent((0, import_node_path27.join)(path9)),
3408
3608
  /**
3409
3609
  * Remove an event to EventCatalog (modeled on the standard POSIX rm utility)
3410
3610
  *
3411
3611
  * @param path - The path to your event, e.g. `/Inventory/InventoryAdjusted`
3412
3612
  *
3413
3613
  */
3414
- rmEvent: rmEvent((0, import_node_path25.join)(path9, "events")),
3614
+ rmEvent: rmEvent((0, import_node_path27.join)(path9, "events")),
3415
3615
  /**
3416
3616
  * Remove an event by an Event id
3417
3617
  *
3418
3618
  * @param id - The id of the event you want to remove
3419
3619
  *
3420
3620
  */
3421
- rmEventById: rmEventById((0, import_node_path25.join)(path9)),
3621
+ rmEventById: rmEventById((0, import_node_path27.join)(path9)),
3422
3622
  /**
3423
3623
  * Moves a given event id to the version directory
3424
3624
  * @param directory
3425
3625
  */
3426
- versionEvent: versionEvent((0, import_node_path25.join)(path9)),
3626
+ versionEvent: versionEvent((0, import_node_path27.join)(path9)),
3427
3627
  /**
3428
3628
  * Adds a file to the given event
3429
3629
  * @param id - The id of the event to add the file to
@@ -3431,7 +3631,7 @@ var src_default = (path9) => {
3431
3631
  * @param version - Optional version of the event to add the file to
3432
3632
  * @returns
3433
3633
  */
3434
- addFileToEvent: addFileToEvent((0, import_node_path25.join)(path9)),
3634
+ addFileToEvent: addFileToEvent((0, import_node_path27.join)(path9)),
3435
3635
  /**
3436
3636
  * Adds a schema to the given event
3437
3637
  * @param id - The id of the event to add the schema to
@@ -3439,17 +3639,17 @@ var src_default = (path9) => {
3439
3639
  * @param version - Optional version of the event to add the schema to
3440
3640
  * @returns
3441
3641
  */
3442
- addSchemaToEvent: addSchemaToEvent((0, import_node_path25.join)(path9)),
3642
+ addSchemaToEvent: addSchemaToEvent((0, import_node_path27.join)(path9)),
3443
3643
  /**
3444
3644
  * Check to see if an event version exists
3445
3645
  * @param id - The id of the event
3446
3646
  * @param version - The version of the event (supports semver)
3447
3647
  * @returns
3448
3648
  */
3449
- eventHasVersion: eventHasVersion((0, import_node_path25.join)(path9)),
3450
- addExampleToEvent: addExampleToEvent((0, import_node_path25.join)(path9)),
3451
- getExamplesFromEvent: getExamplesFromEvent((0, import_node_path25.join)(path9)),
3452
- removeExampleFromEvent: removeExampleFromEvent((0, import_node_path25.join)(path9)),
3649
+ eventHasVersion: eventHasVersion((0, import_node_path27.join)(path9)),
3650
+ addExampleToEvent: addExampleToEvent((0, import_node_path27.join)(path9)),
3651
+ getExamplesFromEvent: getExamplesFromEvent((0, import_node_path27.join)(path9)),
3652
+ removeExampleFromEvent: removeExampleFromEvent((0, import_node_path27.join)(path9)),
3453
3653
  /**
3454
3654
  * ================================
3455
3655
  * Commands
@@ -3461,13 +3661,13 @@ var src_default = (path9) => {
3461
3661
  * @param version - Optional id of the version to get (supports semver)
3462
3662
  * @returns Command|Undefined
3463
3663
  */
3464
- getCommand: getCommand((0, import_node_path25.join)(path9)),
3664
+ getCommand: getCommand((0, import_node_path27.join)(path9)),
3465
3665
  /**
3466
3666
  * Returns all commands from EventCatalog
3467
3667
  * @param latestOnly - optional boolean, set to true to get only latest versions
3468
3668
  * @returns Command[]|Undefined
3469
3669
  */
3470
- getCommands: getCommands((0, import_node_path25.join)(path9)),
3670
+ getCommands: getCommands((0, import_node_path27.join)(path9)),
3471
3671
  /**
3472
3672
  * Adds an command to EventCatalog
3473
3673
  *
@@ -3475,7 +3675,7 @@ var src_default = (path9) => {
3475
3675
  * @param options - Optional options to write the command
3476
3676
  *
3477
3677
  */
3478
- writeCommand: writeCommand((0, import_node_path25.join)(path9, "commands")),
3678
+ writeCommand: writeCommand((0, import_node_path27.join)(path9, "commands")),
3479
3679
  /**
3480
3680
  * Adds a command to a service in EventCatalog
3481
3681
  *
@@ -3484,7 +3684,7 @@ var src_default = (path9) => {
3484
3684
  * @param options - Optional options to write the command
3485
3685
  *
3486
3686
  */
3487
- writeCommandToService: writeCommandToService((0, import_node_path25.join)(path9)),
3687
+ writeCommandToService: writeCommandToService((0, import_node_path27.join)(path9)),
3488
3688
  /**
3489
3689
  * Adds a command to an agent in EventCatalog
3490
3690
  *
@@ -3493,26 +3693,26 @@ var src_default = (path9) => {
3493
3693
  * @param options - Optional options to write the command
3494
3694
  *
3495
3695
  */
3496
- writeCommandToAgent: writeCommandToAgent((0, import_node_path25.join)(path9)),
3696
+ writeCommandToAgent: writeCommandToAgent((0, import_node_path27.join)(path9)),
3497
3697
  /**
3498
3698
  * Remove an command to EventCatalog (modeled on the standard POSIX rm utility)
3499
3699
  *
3500
3700
  * @param path - The path to your command, e.g. `/Inventory/InventoryAdjusted`
3501
3701
  *
3502
3702
  */
3503
- rmCommand: rmCommand((0, import_node_path25.join)(path9, "commands")),
3703
+ rmCommand: rmCommand((0, import_node_path27.join)(path9, "commands")),
3504
3704
  /**
3505
3705
  * Remove an command by an Event id
3506
3706
  *
3507
3707
  * @param id - The id of the command you want to remove
3508
3708
  *
3509
3709
  */
3510
- rmCommandById: rmCommandById((0, import_node_path25.join)(path9)),
3710
+ rmCommandById: rmCommandById((0, import_node_path27.join)(path9)),
3511
3711
  /**
3512
3712
  * Moves a given command id to the version directory
3513
3713
  * @param directory
3514
3714
  */
3515
- versionCommand: versionCommand((0, import_node_path25.join)(path9)),
3715
+ versionCommand: versionCommand((0, import_node_path27.join)(path9)),
3516
3716
  /**
3517
3717
  * Adds a file to the given command
3518
3718
  * @param id - The id of the command to add the file to
@@ -3520,7 +3720,7 @@ var src_default = (path9) => {
3520
3720
  * @param version - Optional version of the command to add the file to
3521
3721
  * @returns
3522
3722
  */
3523
- addFileToCommand: addFileToCommand((0, import_node_path25.join)(path9)),
3723
+ addFileToCommand: addFileToCommand((0, import_node_path27.join)(path9)),
3524
3724
  /**
3525
3725
  * Adds a schema to the given command
3526
3726
  * @param id - The id of the command to add the schema to
@@ -3528,17 +3728,17 @@ var src_default = (path9) => {
3528
3728
  * @param version - Optional version of the command to add the schema to
3529
3729
  * @returns
3530
3730
  */
3531
- addSchemaToCommand: addSchemaToCommand((0, import_node_path25.join)(path9)),
3731
+ addSchemaToCommand: addSchemaToCommand((0, import_node_path27.join)(path9)),
3532
3732
  /**
3533
3733
  * Check to see if a command version exists
3534
3734
  * @param id - The id of the command
3535
3735
  * @param version - The version of the command (supports semver)
3536
3736
  * @returns
3537
3737
  */
3538
- commandHasVersion: commandHasVersion((0, import_node_path25.join)(path9)),
3539
- addExampleToCommand: addExampleToCommand((0, import_node_path25.join)(path9)),
3540
- getExamplesFromCommand: getExamplesFromCommand((0, import_node_path25.join)(path9)),
3541
- removeExampleFromCommand: removeExampleFromCommand((0, import_node_path25.join)(path9)),
3738
+ commandHasVersion: commandHasVersion((0, import_node_path27.join)(path9)),
3739
+ addExampleToCommand: addExampleToCommand((0, import_node_path27.join)(path9)),
3740
+ getExamplesFromCommand: getExamplesFromCommand((0, import_node_path27.join)(path9)),
3741
+ removeExampleFromCommand: removeExampleFromCommand((0, import_node_path27.join)(path9)),
3542
3742
  /**
3543
3743
  * ================================
3544
3744
  * Queries
@@ -3550,13 +3750,13 @@ var src_default = (path9) => {
3550
3750
  * @param version - Optional id of the version to get (supports semver)
3551
3751
  * @returns Query|Undefined
3552
3752
  */
3553
- getQuery: getQuery((0, import_node_path25.join)(path9)),
3753
+ getQuery: getQuery((0, import_node_path27.join)(path9)),
3554
3754
  /**
3555
3755
  * Returns all queries from EventCatalog
3556
3756
  * @param latestOnly - optional boolean, set to true to get only latest versions
3557
3757
  * @returns Query[]|Undefined
3558
3758
  */
3559
- getQueries: getQueries((0, import_node_path25.join)(path9)),
3759
+ getQueries: getQueries((0, import_node_path27.join)(path9)),
3560
3760
  /**
3561
3761
  * Adds a query to EventCatalog
3562
3762
  *
@@ -3564,7 +3764,7 @@ var src_default = (path9) => {
3564
3764
  * @param options - Optional options to write the event
3565
3765
  *
3566
3766
  */
3567
- writeQuery: writeQuery((0, import_node_path25.join)(path9, "queries")),
3767
+ writeQuery: writeQuery((0, import_node_path27.join)(path9, "queries")),
3568
3768
  /**
3569
3769
  * Adds a query to a service in EventCatalog
3570
3770
  *
@@ -3573,7 +3773,7 @@ var src_default = (path9) => {
3573
3773
  * @param options - Optional options to write the query
3574
3774
  *
3575
3775
  */
3576
- writeQueryToService: writeQueryToService((0, import_node_path25.join)(path9)),
3776
+ writeQueryToService: writeQueryToService((0, import_node_path27.join)(path9)),
3577
3777
  /**
3578
3778
  * Adds a query to an agent in EventCatalog
3579
3779
  *
@@ -3582,26 +3782,26 @@ var src_default = (path9) => {
3582
3782
  * @param options - Optional options to write the query
3583
3783
  *
3584
3784
  */
3585
- writeQueryToAgent: writeQueryToAgent((0, import_node_path25.join)(path9)),
3785
+ writeQueryToAgent: writeQueryToAgent((0, import_node_path27.join)(path9)),
3586
3786
  /**
3587
3787
  * Remove an query to EventCatalog (modeled on the standard POSIX rm utility)
3588
3788
  *
3589
3789
  * @param path - The path to your query, e.g. `/Orders/GetOrder`
3590
3790
  *
3591
3791
  */
3592
- rmQuery: rmQuery((0, import_node_path25.join)(path9, "queries")),
3792
+ rmQuery: rmQuery((0, import_node_path27.join)(path9, "queries")),
3593
3793
  /**
3594
3794
  * Remove a query by a Query id
3595
3795
  *
3596
3796
  * @param id - The id of the query you want to remove
3597
3797
  *
3598
3798
  */
3599
- rmQueryById: rmQueryById((0, import_node_path25.join)(path9)),
3799
+ rmQueryById: rmQueryById((0, import_node_path27.join)(path9)),
3600
3800
  /**
3601
3801
  * Moves a given query id to the version directory
3602
3802
  * @param directory
3603
3803
  */
3604
- versionQuery: versionQuery((0, import_node_path25.join)(path9)),
3804
+ versionQuery: versionQuery((0, import_node_path27.join)(path9)),
3605
3805
  /**
3606
3806
  * Adds a file to the given query
3607
3807
  * @param id - The id of the query to add the file to
@@ -3609,7 +3809,7 @@ var src_default = (path9) => {
3609
3809
  * @param version - Optional version of the query to add the file to
3610
3810
  * @returns
3611
3811
  */
3612
- addFileToQuery: addFileToQuery((0, import_node_path25.join)(path9)),
3812
+ addFileToQuery: addFileToQuery((0, import_node_path27.join)(path9)),
3613
3813
  /**
3614
3814
  * Adds a schema to the given query
3615
3815
  * @param id - The id of the query to add the schema to
@@ -3617,17 +3817,17 @@ var src_default = (path9) => {
3617
3817
  * @param version - Optional version of the query to add the schema to
3618
3818
  * @returns
3619
3819
  */
3620
- addSchemaToQuery: addSchemaToQuery((0, import_node_path25.join)(path9)),
3820
+ addSchemaToQuery: addSchemaToQuery((0, import_node_path27.join)(path9)),
3621
3821
  /**
3622
3822
  * Check to see if an query version exists
3623
3823
  * @param id - The id of the query
3624
3824
  * @param version - The version of the query (supports semver)
3625
3825
  * @returns
3626
3826
  */
3627
- queryHasVersion: queryHasVersion((0, import_node_path25.join)(path9)),
3628
- addExampleToQuery: addExampleToQuery((0, import_node_path25.join)(path9)),
3629
- getExamplesFromQuery: getExamplesFromQuery((0, import_node_path25.join)(path9)),
3630
- removeExampleFromQuery: removeExampleFromQuery((0, import_node_path25.join)(path9)),
3827
+ queryHasVersion: queryHasVersion((0, import_node_path27.join)(path9)),
3828
+ addExampleToQuery: addExampleToQuery((0, import_node_path27.join)(path9)),
3829
+ getExamplesFromQuery: getExamplesFromQuery((0, import_node_path27.join)(path9)),
3830
+ removeExampleFromQuery: removeExampleFromQuery((0, import_node_path27.join)(path9)),
3631
3831
  /**
3632
3832
  * ================================
3633
3833
  * Channels
@@ -3639,13 +3839,13 @@ var src_default = (path9) => {
3639
3839
  * @param version - Optional id of the version to get (supports semver)
3640
3840
  * @returns Channel|Undefined
3641
3841
  */
3642
- getChannel: getChannel((0, import_node_path25.join)(path9)),
3842
+ getChannel: getChannel((0, import_node_path27.join)(path9)),
3643
3843
  /**
3644
3844
  * Returns all channels from EventCatalog
3645
3845
  * @param latestOnly - optional boolean, set to true to get only latest versions
3646
3846
  * @returns Channel[]|Undefined
3647
3847
  */
3648
- getChannels: getChannels((0, import_node_path25.join)(path9)),
3848
+ getChannels: getChannels((0, import_node_path27.join)(path9)),
3649
3849
  /**
3650
3850
  * Adds an channel to EventCatalog
3651
3851
  *
@@ -3653,33 +3853,33 @@ var src_default = (path9) => {
3653
3853
  * @param options - Optional options to write the channel
3654
3854
  *
3655
3855
  */
3656
- writeChannel: writeChannel((0, import_node_path25.join)(path9, "channels")),
3856
+ writeChannel: writeChannel((0, import_node_path27.join)(path9, "channels")),
3657
3857
  /**
3658
3858
  * Remove an channel to EventCatalog (modeled on the standard POSIX rm utility)
3659
3859
  *
3660
3860
  * @param path - The path to your channel, e.g. `/Inventory/InventoryAdjusted`
3661
3861
  *
3662
3862
  */
3663
- rmChannel: rmChannel((0, import_node_path25.join)(path9, "channels")),
3863
+ rmChannel: rmChannel((0, import_node_path27.join)(path9, "channels")),
3664
3864
  /**
3665
3865
  * Remove an channel by an Event id
3666
3866
  *
3667
3867
  * @param id - The id of the channel you want to remove
3668
3868
  *
3669
3869
  */
3670
- rmChannelById: rmChannelById((0, import_node_path25.join)(path9)),
3870
+ rmChannelById: rmChannelById((0, import_node_path27.join)(path9)),
3671
3871
  /**
3672
3872
  * Moves a given channel id to the version directory
3673
3873
  * @param directory
3674
3874
  */
3675
- versionChannel: versionChannel((0, import_node_path25.join)(path9)),
3875
+ versionChannel: versionChannel((0, import_node_path27.join)(path9)),
3676
3876
  /**
3677
3877
  * Check to see if a channel version exists
3678
3878
  * @param id - The id of the channel
3679
3879
  * @param version - The version of the channel (supports semver)
3680
3880
  * @returns
3681
3881
  */
3682
- channelHasVersion: channelHasVersion((0, import_node_path25.join)(path9)),
3882
+ channelHasVersion: channelHasVersion((0, import_node_path27.join)(path9)),
3683
3883
  /**
3684
3884
  * Add a channel to an event
3685
3885
  *
@@ -3696,7 +3896,7 @@ var src_default = (path9) => {
3696
3896
  *
3697
3897
  * ```
3698
3898
  */
3699
- addEventToChannel: addMessageToChannel((0, import_node_path25.join)(path9), "events"),
3899
+ addEventToChannel: addMessageToChannel((0, import_node_path27.join)(path9), "events"),
3700
3900
  /**
3701
3901
  * Add a channel to an command
3702
3902
  *
@@ -3713,7 +3913,7 @@ var src_default = (path9) => {
3713
3913
  *
3714
3914
  * ```
3715
3915
  */
3716
- addCommandToChannel: addMessageToChannel((0, import_node_path25.join)(path9), "commands"),
3916
+ addCommandToChannel: addMessageToChannel((0, import_node_path27.join)(path9), "commands"),
3717
3917
  /**
3718
3918
  * Add a channel to an query
3719
3919
  *
@@ -3730,7 +3930,7 @@ var src_default = (path9) => {
3730
3930
  *
3731
3931
  * ```
3732
3932
  */
3733
- addQueryToChannel: addMessageToChannel((0, import_node_path25.join)(path9), "queries"),
3933
+ addQueryToChannel: addMessageToChannel((0, import_node_path27.join)(path9), "queries"),
3734
3934
  /**
3735
3935
  * ================================
3736
3936
  * SERVICES
@@ -3743,14 +3943,14 @@ var src_default = (path9) => {
3743
3943
  * @param options - Optional options to write the event
3744
3944
  *
3745
3945
  */
3746
- writeService: writeService((0, import_node_path25.join)(path9, "services")),
3946
+ writeService: writeService((0, import_node_path27.join)(path9, "services")),
3747
3947
  /**
3748
3948
  * Adds a versioned service to EventCatalog
3749
3949
  *
3750
3950
  * @param service - The service to write
3751
3951
  *
3752
3952
  */
3753
- writeVersionedService: writeVersionedService((0, import_node_path25.join)(path9, "services")),
3953
+ writeVersionedService: writeVersionedService((0, import_node_path27.join)(path9, "services")),
3754
3954
  /**
3755
3955
  * Adds a service to a domain in EventCatalog
3756
3956
  *
@@ -3759,45 +3959,54 @@ var src_default = (path9) => {
3759
3959
  * @param options - Optional options to write the event
3760
3960
  *
3761
3961
  */
3762
- writeServiceToDomain: writeServiceToDomain((0, import_node_path25.join)(path9, "domains")),
3962
+ writeServiceToDomain: writeServiceToDomain((0, import_node_path27.join)(path9, "domains")),
3963
+ /**
3964
+ * Adds a service to a system in EventCatalog
3965
+ *
3966
+ * @param service - The service to write
3967
+ * @param system - The system to add the service to
3968
+ * @param options - Optional options to write the service
3969
+ *
3970
+ */
3971
+ writeServiceToSystem: writeServiceToSystem((0, import_node_path27.join)(path9)),
3763
3972
  /**
3764
3973
  * Returns a service from EventCatalog
3765
3974
  * @param id - The id of the service to retrieve
3766
3975
  * @param version - Optional id of the version to get (supports semver)
3767
3976
  * @returns Service|Undefined
3768
3977
  */
3769
- getService: getService((0, import_node_path25.join)(path9)),
3978
+ getService: getService((0, import_node_path27.join)(path9)),
3770
3979
  /**
3771
3980
  * Returns a service from EventCatalog by it's path.
3772
3981
  * @param path - The path to the service to retrieve
3773
3982
  * @returns Service|Undefined
3774
3983
  */
3775
- getServiceByPath: getServiceByPath((0, import_node_path25.join)(path9)),
3984
+ getServiceByPath: getServiceByPath((0, import_node_path27.join)(path9)),
3776
3985
  /**
3777
3986
  * Returns all services from EventCatalog
3778
3987
  * @param latestOnly - optional boolean, set to true to get only latest versions
3779
3988
  * @returns Service[]|Undefined
3780
3989
  */
3781
- getServices: getServices((0, import_node_path25.join)(path9)),
3990
+ getServices: getServices((0, import_node_path27.join)(path9)),
3782
3991
  /**
3783
3992
  * Moves a given service id to the version directory
3784
3993
  * @param directory
3785
3994
  */
3786
- versionService: versionService((0, import_node_path25.join)(path9)),
3995
+ versionService: versionService((0, import_node_path27.join)(path9)),
3787
3996
  /**
3788
3997
  * Remove a service from EventCatalog (modeled on the standard POSIX rm utility)
3789
3998
  *
3790
3999
  * @param path - The path to your service, e.g. `/InventoryService`
3791
4000
  *
3792
4001
  */
3793
- rmService: rmService((0, import_node_path25.join)(path9, "services")),
4002
+ rmService: rmService((0, import_node_path27.join)(path9, "services")),
3794
4003
  /**
3795
4004
  * Remove an service by an service id
3796
4005
  *
3797
4006
  * @param id - The id of the service you want to remove
3798
4007
  *
3799
4008
  */
3800
- rmServiceById: rmServiceById((0, import_node_path25.join)(path9)),
4009
+ rmServiceById: rmServiceById((0, import_node_path27.join)(path9)),
3801
4010
  /**
3802
4011
  * Adds a file to the given service
3803
4012
  * @param id - The id of the service to add the file to
@@ -3805,21 +4014,21 @@ var src_default = (path9) => {
3805
4014
  * @param version - Optional version of the service to add the file to
3806
4015
  * @returns
3807
4016
  */
3808
- addFileToService: addFileToService((0, import_node_path25.join)(path9)),
4017
+ addFileToService: addFileToService((0, import_node_path27.join)(path9)),
3809
4018
  /**
3810
4019
  * Returns the specifications for a given service
3811
4020
  * @param id - The id of the service to retrieve the specifications for
3812
4021
  * @param version - Optional version of the service
3813
4022
  * @returns
3814
4023
  */
3815
- getSpecificationFilesForService: getSpecificationFilesForService((0, import_node_path25.join)(path9)),
4024
+ getSpecificationFilesForService: getSpecificationFilesForService((0, import_node_path27.join)(path9)),
3816
4025
  /**
3817
4026
  * Check to see if a service version exists
3818
4027
  * @param id - The id of the service
3819
4028
  * @param version - The version of the service (supports semver)
3820
4029
  * @returns
3821
4030
  */
3822
- serviceHasVersion: serviceHasVersion((0, import_node_path25.join)(path9)),
4031
+ serviceHasVersion: serviceHasVersion((0, import_node_path27.join)(path9)),
3823
4032
  /**
3824
4033
  * Add an event to a service by it's id.
3825
4034
  *
@@ -3839,7 +4048,7 @@ var src_default = (path9) => {
3839
4048
  *
3840
4049
  * ```
3841
4050
  */
3842
- addEventToService: addMessageToService((0, import_node_path25.join)(path9)),
4051
+ addEventToService: addMessageToService((0, import_node_path27.join)(path9)),
3843
4052
  /**
3844
4053
  * Add a data store to a service by it's id.
3845
4054
  *
@@ -3856,7 +4065,7 @@ var src_default = (path9) => {
3856
4065
  *
3857
4066
  * ```
3858
4067
  */
3859
- addDataStoreToService: addDataStoreToService((0, import_node_path25.join)(path9)),
4068
+ addDataStoreToService: addDataStoreToService((0, import_node_path27.join)(path9)),
3860
4069
  /**
3861
4070
  * Add a command to a service by it's id.
3862
4071
  *
@@ -3876,7 +4085,7 @@ var src_default = (path9) => {
3876
4085
  *
3877
4086
  * ```
3878
4087
  */
3879
- addCommandToService: addMessageToService((0, import_node_path25.join)(path9)),
4088
+ addCommandToService: addMessageToService((0, import_node_path27.join)(path9)),
3880
4089
  /**
3881
4090
  * Add a query to a service by it's id.
3882
4091
  *
@@ -3896,7 +4105,7 @@ var src_default = (path9) => {
3896
4105
  *
3897
4106
  * ```
3898
4107
  */
3899
- addQueryToService: addMessageToService((0, import_node_path25.join)(path9)),
4108
+ addQueryToService: addMessageToService((0, import_node_path27.join)(path9)),
3900
4109
  /**
3901
4110
  * Add an entity to a service by its id.
3902
4111
  *
@@ -3914,7 +4123,7 @@ var src_default = (path9) => {
3914
4123
  *
3915
4124
  * ```
3916
4125
  */
3917
- addEntityToService: addEntityToService((0, import_node_path25.join)(path9)),
4126
+ addEntityToService: addEntityToService((0, import_node_path27.join)(path9)),
3918
4127
  /**
3919
4128
  * Check to see if a service exists by it's path.
3920
4129
  *
@@ -3931,36 +4140,57 @@ var src_default = (path9) => {
3931
4140
  * @param path - The path to the service to check
3932
4141
  * @returns boolean
3933
4142
  */
3934
- isService: isService((0, import_node_path25.join)(path9)),
4143
+ isService: isService((0, import_node_path27.join)(path9)),
3935
4144
  /**
3936
4145
  * Converts a file to a service.
3937
4146
  * @param file - The file to convert to a service.
3938
4147
  * @returns The service.
3939
4148
  */
3940
- toService: toService((0, import_node_path25.join)(path9)),
4149
+ toService: toService((0, import_node_path27.join)(path9)),
4150
+ /**
4151
+ * ================================
4152
+ * Systems
4153
+ * ================================
4154
+ */
4155
+ writeSystem: writeSystem((0, import_node_path27.join)(path9, "systems")),
4156
+ writeSystemToDomain: writeSystemToDomain((0, import_node_path27.join)(path9)),
4157
+ getSystem: getSystem((0, import_node_path27.join)(path9)),
4158
+ getSystemByPath: getSystemByPath((0, import_node_path27.join)(path9)),
4159
+ getSystems: getSystems((0, import_node_path27.join)(path9)),
4160
+ versionSystem: versionSystem((0, import_node_path27.join)(path9)),
4161
+ rmSystem: rmSystem((0, import_node_path27.join)(path9, "systems")),
4162
+ rmSystemById: rmSystemById((0, import_node_path27.join)(path9)),
4163
+ addFileToSystem: addFileToSystem((0, import_node_path27.join)(path9)),
4164
+ addServiceToSystem: addServiceToSystem((0, import_node_path27.join)(path9)),
4165
+ addFlowToSystem: addFlowToSystem((0, import_node_path27.join)(path9)),
4166
+ addEntityToSystem: addEntityToSystem((0, import_node_path27.join)(path9)),
4167
+ addContainerToSystem: addContainerToSystem((0, import_node_path27.join)(path9)),
4168
+ systemHasVersion: systemHasVersion((0, import_node_path27.join)(path9)),
4169
+ isSystem: isSystem((0, import_node_path27.join)(path9)),
4170
+ toSystem: toSystem((0, import_node_path27.join)(path9)),
3941
4171
  /**
3942
4172
  * ================================
3943
4173
  * Agents
3944
4174
  * ================================
3945
4175
  */
3946
- writeAgent: writeAgent((0, import_node_path25.join)(path9, "agents")),
3947
- writeVersionedAgent: writeVersionedAgent((0, import_node_path25.join)(path9, "agents")),
3948
- writeAgentToDomain: writeAgentToDomain((0, import_node_path25.join)(path9, "domains")),
3949
- getAgent: getAgent((0, import_node_path25.join)(path9)),
3950
- getAgentByPath: getAgentByPath((0, import_node_path25.join)(path9)),
3951
- getAgents: getAgents((0, import_node_path25.join)(path9)),
3952
- versionAgent: versionAgent((0, import_node_path25.join)(path9)),
3953
- rmAgent: rmAgent((0, import_node_path25.join)(path9, "agents")),
3954
- rmAgentById: rmAgentById((0, import_node_path25.join)(path9)),
3955
- addFileToAgent: addFileToAgent((0, import_node_path25.join)(path9)),
3956
- addEventToAgent: addMessageToAgent((0, import_node_path25.join)(path9)),
3957
- addCommandToAgent: addMessageToAgent((0, import_node_path25.join)(path9)),
3958
- addQueryToAgent: addMessageToAgent((0, import_node_path25.join)(path9)),
3959
- addDataStoreToAgent: addDataStoreToAgent((0, import_node_path25.join)(path9)),
3960
- addFlowToAgent: addFlowToAgent((0, import_node_path25.join)(path9)),
3961
- agentHasVersion: agentHasVersion((0, import_node_path25.join)(path9)),
3962
- isAgent: isAgent((0, import_node_path25.join)(path9)),
3963
- toAgent: toAgent((0, import_node_path25.join)(path9)),
4176
+ writeAgent: writeAgent((0, import_node_path27.join)(path9, "agents")),
4177
+ writeVersionedAgent: writeVersionedAgent((0, import_node_path27.join)(path9, "agents")),
4178
+ writeAgentToDomain: writeAgentToDomain((0, import_node_path27.join)(path9, "domains")),
4179
+ getAgent: getAgent((0, import_node_path27.join)(path9)),
4180
+ getAgentByPath: getAgentByPath((0, import_node_path27.join)(path9)),
4181
+ getAgents: getAgents((0, import_node_path27.join)(path9)),
4182
+ versionAgent: versionAgent((0, import_node_path27.join)(path9)),
4183
+ rmAgent: rmAgent((0, import_node_path27.join)(path9, "agents")),
4184
+ rmAgentById: rmAgentById((0, import_node_path27.join)(path9)),
4185
+ addFileToAgent: addFileToAgent((0, import_node_path27.join)(path9)),
4186
+ addEventToAgent: addMessageToAgent((0, import_node_path27.join)(path9)),
4187
+ addCommandToAgent: addMessageToAgent((0, import_node_path27.join)(path9)),
4188
+ addQueryToAgent: addMessageToAgent((0, import_node_path27.join)(path9)),
4189
+ addDataStoreToAgent: addDataStoreToAgent((0, import_node_path27.join)(path9)),
4190
+ addFlowToAgent: addFlowToAgent((0, import_node_path27.join)(path9)),
4191
+ agentHasVersion: agentHasVersion((0, import_node_path27.join)(path9)),
4192
+ isAgent: isAgent((0, import_node_path27.join)(path9)),
4193
+ toAgent: toAgent((0, import_node_path27.join)(path9)),
3964
4194
  /**
3965
4195
  * ================================
3966
4196
  * Domains
@@ -3973,39 +4203,39 @@ var src_default = (path9) => {
3973
4203
  * @param options - Optional options to write the event
3974
4204
  *
3975
4205
  */
3976
- writeDomain: writeDomain((0, import_node_path25.join)(path9, "domains")),
4206
+ writeDomain: writeDomain((0, import_node_path27.join)(path9, "domains")),
3977
4207
  /**
3978
4208
  * Returns a domain from EventCatalog
3979
4209
  * @param id - The id of the domain to retrieve
3980
4210
  * @param version - Optional id of the version to get (supports semver)
3981
4211
  * @returns Domain|Undefined
3982
4212
  */
3983
- getDomain: getDomain((0, import_node_path25.join)(path9, "domains")),
4213
+ getDomain: getDomain((0, import_node_path27.join)(path9, "domains")),
3984
4214
  /**
3985
4215
  * Returns all domains from EventCatalog
3986
4216
  * @param latestOnly - optional boolean, set to true to get only latest versions
3987
4217
  * @returns Domain[]|Undefined
3988
4218
  */
3989
- getDomains: getDomains((0, import_node_path25.join)(path9)),
4219
+ getDomains: getDomains((0, import_node_path27.join)(path9)),
3990
4220
  /**
3991
4221
  * Moves a given domain id to the version directory
3992
4222
  * @param directory
3993
4223
  */
3994
- versionDomain: versionDomain((0, import_node_path25.join)(path9, "domains")),
4224
+ versionDomain: versionDomain((0, import_node_path27.join)(path9, "domains")),
3995
4225
  /**
3996
4226
  * Remove a domain from EventCatalog (modeled on the standard POSIX rm utility)
3997
4227
  *
3998
4228
  * @param path - The path to your domain, e.g. `/Payment`
3999
4229
  *
4000
4230
  */
4001
- rmDomain: rmDomain((0, import_node_path25.join)(path9, "domains")),
4231
+ rmDomain: rmDomain((0, import_node_path27.join)(path9, "domains")),
4002
4232
  /**
4003
4233
  * Remove an service by an domain id
4004
4234
  *
4005
4235
  * @param id - The id of the domain you want to remove
4006
4236
  *
4007
4237
  */
4008
- rmDomainById: rmDomainById((0, import_node_path25.join)(path9, "domains")),
4238
+ rmDomainById: rmDomainById((0, import_node_path27.join)(path9, "domains")),
4009
4239
  /**
4010
4240
  * Adds a file to the given domain
4011
4241
  * @param id - The id of the domain to add the file to
@@ -4013,28 +4243,28 @@ var src_default = (path9) => {
4013
4243
  * @param version - Optional version of the domain to add the file to
4014
4244
  * @returns
4015
4245
  */
4016
- addFileToDomain: addFileToDomain((0, import_node_path25.join)(path9, "domains")),
4246
+ addFileToDomain: addFileToDomain((0, import_node_path27.join)(path9, "domains")),
4017
4247
  /**
4018
4248
  * Adds an ubiquitous language dictionary to a domain
4019
4249
  * @param id - The id of the domain to add the ubiquitous language to
4020
4250
  * @param ubiquitousLanguageDictionary - The ubiquitous language dictionary to add
4021
4251
  * @param version - Optional version of the domain to add the ubiquitous language to
4022
4252
  */
4023
- addUbiquitousLanguageToDomain: addUbiquitousLanguageToDomain((0, import_node_path25.join)(path9, "domains")),
4253
+ addUbiquitousLanguageToDomain: addUbiquitousLanguageToDomain((0, import_node_path27.join)(path9, "domains")),
4024
4254
  /**
4025
4255
  * Get the ubiquitous language dictionary from a domain
4026
4256
  * @param id - The id of the domain to get the ubiquitous language from
4027
4257
  * @param version - Optional version of the domain to get the ubiquitous language from
4028
4258
  * @returns
4029
4259
  */
4030
- getUbiquitousLanguageFromDomain: getUbiquitousLanguageFromDomain((0, import_node_path25.join)(path9, "domains")),
4260
+ getUbiquitousLanguageFromDomain: getUbiquitousLanguageFromDomain((0, import_node_path27.join)(path9, "domains")),
4031
4261
  /**
4032
4262
  * Check to see if a domain version exists
4033
4263
  * @param id - The id of the domain
4034
4264
  * @param version - The version of the domain (supports semver)
4035
4265
  * @returns
4036
4266
  */
4037
- domainHasVersion: domainHasVersion((0, import_node_path25.join)(path9)),
4267
+ domainHasVersion: domainHasVersion((0, import_node_path27.join)(path9)),
4038
4268
  /**
4039
4269
  * Adds a given service to a domain
4040
4270
  * @param id - The id of the domain
@@ -4042,7 +4272,7 @@ var src_default = (path9) => {
4042
4272
  * @param version - (Optional) The version of the domain to add the service to
4043
4273
  * @returns
4044
4274
  */
4045
- addServiceToDomain: addServiceToDomain((0, import_node_path25.join)(path9, "domains")),
4275
+ addServiceToDomain: addServiceToDomain((0, import_node_path27.join)(path9, "domains")),
4046
4276
  /**
4047
4277
  * Adds a given agent to a domain
4048
4278
  * @param id - The id of the domain
@@ -4050,7 +4280,7 @@ var src_default = (path9) => {
4050
4280
  * @param version - (Optional) The version of the domain to add the agent to
4051
4281
  * @returns
4052
4282
  */
4053
- addAgentToDomain: addAgentToDomain((0, import_node_path25.join)(path9, "domains")),
4283
+ addAgentToDomain: addAgentToDomain((0, import_node_path27.join)(path9, "domains")),
4054
4284
  /**
4055
4285
  * Adds a given subdomain to a domain
4056
4286
  * @param id - The id of the domain
@@ -4058,7 +4288,15 @@ var src_default = (path9) => {
4058
4288
  * @param version - (Optional) The version of the domain to add the subdomain to
4059
4289
  * @returns
4060
4290
  */
4061
- addSubDomainToDomain: addSubDomainToDomain((0, import_node_path25.join)(path9, "domains")),
4291
+ addSubDomainToDomain: addSubDomainToDomain((0, import_node_path27.join)(path9, "domains")),
4292
+ /**
4293
+ * Adds a given system to a domain
4294
+ * @param id - The id of the domain
4295
+ * @param system - The id and version of the system to add
4296
+ * @param version - (Optional) The version of the domain to add the system to
4297
+ * @returns
4298
+ */
4299
+ addSystemToDomain: addSystemToDomain((0, import_node_path27.join)(path9, "domains")),
4062
4300
  /**
4063
4301
  * Adds an entity to a domain
4064
4302
  * @param id - The id of the domain
@@ -4066,7 +4304,7 @@ var src_default = (path9) => {
4066
4304
  * @param version - (Optional) The version of the domain to add the entity to
4067
4305
  * @returns
4068
4306
  */
4069
- addEntityToDomain: addEntityToDomain((0, import_node_path25.join)(path9, "domains")),
4307
+ addEntityToDomain: addEntityToDomain((0, import_node_path27.join)(path9, "domains")),
4070
4308
  /**
4071
4309
  * Add an event to a domain by its id.
4072
4310
  *
@@ -4084,7 +4322,7 @@ var src_default = (path9) => {
4084
4322
  *
4085
4323
  * ```
4086
4324
  */
4087
- addEventToDomain: addMessageToDomain((0, import_node_path25.join)(path9, "domains")),
4325
+ addEventToDomain: addMessageToDomain((0, import_node_path27.join)(path9, "domains")),
4088
4326
  /**
4089
4327
  * Add a command to a domain by its id.
4090
4328
  *
@@ -4102,7 +4340,7 @@ var src_default = (path9) => {
4102
4340
  *
4103
4341
  * ```
4104
4342
  */
4105
- addCommandToDomain: addMessageToDomain((0, import_node_path25.join)(path9, "domains")),
4343
+ addCommandToDomain: addMessageToDomain((0, import_node_path27.join)(path9, "domains")),
4106
4344
  /**
4107
4345
  * Add a query to a domain by its id.
4108
4346
  *
@@ -4120,7 +4358,7 @@ var src_default = (path9) => {
4120
4358
  *
4121
4359
  * ```
4122
4360
  */
4123
- addQueryToDomain: addMessageToDomain((0, import_node_path25.join)(path9, "domains")),
4361
+ addQueryToDomain: addMessageToDomain((0, import_node_path27.join)(path9, "domains")),
4124
4362
  /**
4125
4363
  * ================================
4126
4364
  * Teams
@@ -4133,25 +4371,25 @@ var src_default = (path9) => {
4133
4371
  * @param options - Optional options to write the team
4134
4372
  *
4135
4373
  */
4136
- writeTeam: writeTeam((0, import_node_path25.join)(path9, "teams")),
4374
+ writeTeam: writeTeam((0, import_node_path27.join)(path9, "teams")),
4137
4375
  /**
4138
4376
  * Returns a team from EventCatalog
4139
4377
  * @param id - The id of the team to retrieve
4140
4378
  * @returns Team|Undefined
4141
4379
  */
4142
- getTeam: getTeam((0, import_node_path25.join)(path9, "teams")),
4380
+ getTeam: getTeam((0, import_node_path27.join)(path9, "teams")),
4143
4381
  /**
4144
4382
  * Returns all teams from EventCatalog
4145
4383
  * @returns Team[]|Undefined
4146
4384
  */
4147
- getTeams: getTeams((0, import_node_path25.join)(path9, "teams")),
4385
+ getTeams: getTeams((0, import_node_path27.join)(path9, "teams")),
4148
4386
  /**
4149
4387
  * Remove a team by the team id
4150
4388
  *
4151
4389
  * @param id - The id of the team you want to remove
4152
4390
  *
4153
4391
  */
4154
- rmTeamById: rmTeamById((0, import_node_path25.join)(path9, "teams")),
4392
+ rmTeamById: rmTeamById((0, import_node_path27.join)(path9, "teams")),
4155
4393
  /**
4156
4394
  * ================================
4157
4395
  * Users
@@ -4164,25 +4402,25 @@ var src_default = (path9) => {
4164
4402
  * @param options - Optional options to write the user
4165
4403
  *
4166
4404
  */
4167
- writeUser: writeUser((0, import_node_path25.join)(path9, "users")),
4405
+ writeUser: writeUser((0, import_node_path27.join)(path9, "users")),
4168
4406
  /**
4169
4407
  * Returns a user from EventCatalog
4170
4408
  * @param id - The id of the user to retrieve
4171
4409
  * @returns User|Undefined
4172
4410
  */
4173
- getUser: getUser((0, import_node_path25.join)(path9, "users")),
4411
+ getUser: getUser((0, import_node_path27.join)(path9, "users")),
4174
4412
  /**
4175
4413
  * Returns all user from EventCatalog
4176
4414
  * @returns User[]|Undefined
4177
4415
  */
4178
- getUsers: getUsers((0, import_node_path25.join)(path9)),
4416
+ getUsers: getUsers((0, import_node_path27.join)(path9)),
4179
4417
  /**
4180
4418
  * Remove a user by the user id
4181
4419
  *
4182
4420
  * @param id - The id of the user you want to remove
4183
4421
  *
4184
4422
  */
4185
- rmUserById: rmUserById((0, import_node_path25.join)(path9, "users")),
4423
+ rmUserById: rmUserById((0, import_node_path27.join)(path9, "users")),
4186
4424
  /**
4187
4425
  * ================================
4188
4426
  * Custom Docs
@@ -4193,32 +4431,32 @@ var src_default = (path9) => {
4193
4431
  * @param path - The path to the custom doc to retrieve
4194
4432
  * @returns CustomDoc|Undefined
4195
4433
  */
4196
- getCustomDoc: getCustomDoc((0, import_node_path25.join)(path9, "docs")),
4434
+ getCustomDoc: getCustomDoc((0, import_node_path27.join)(path9, "docs")),
4197
4435
  /**
4198
4436
  * Returns all custom docs from EventCatalog
4199
4437
  * @param options - Optional options to get custom docs from a specific path
4200
4438
  * @returns CustomDoc[]|Undefined
4201
4439
  */
4202
- getCustomDocs: getCustomDocs((0, import_node_path25.join)(path9, "docs")),
4440
+ getCustomDocs: getCustomDocs((0, import_node_path27.join)(path9, "docs")),
4203
4441
  /**
4204
4442
  * Writes a custom doc to EventCatalog
4205
4443
  * @param customDoc - The custom doc to write
4206
4444
  * @param options - Optional options to write the custom doc
4207
4445
  *
4208
4446
  */
4209
- writeCustomDoc: writeCustomDoc((0, import_node_path25.join)(path9, "docs")),
4447
+ writeCustomDoc: writeCustomDoc((0, import_node_path27.join)(path9, "docs")),
4210
4448
  /**
4211
4449
  * Removes a custom doc from EventCatalog
4212
4450
  * @param path - The path to the custom doc to remove
4213
4451
  *
4214
4452
  */
4215
- rmCustomDoc: rmCustomDoc((0, import_node_path25.join)(path9, "docs")),
4453
+ rmCustomDoc: rmCustomDoc((0, import_node_path27.join)(path9, "docs")),
4216
4454
  /**
4217
4455
  * Dumps the catalog to a JSON file.
4218
4456
  * @param directory - The directory to dump the catalog to
4219
4457
  * @returns A JSON file with the catalog
4220
4458
  */
4221
- dumpCatalog: dumpCatalog((0, import_node_path25.join)(path9)),
4459
+ dumpCatalog: dumpCatalog((0, import_node_path27.join)(path9)),
4222
4460
  /**
4223
4461
  * Returns the event catalog configuration file.
4224
4462
  * The event catalog configuration file is the file that contains the configuration for the event catalog.
@@ -4226,7 +4464,7 @@ var src_default = (path9) => {
4226
4464
  * @param directory - The directory of the catalog.
4227
4465
  * @returns A JSON object with the configuration for the event catalog.
4228
4466
  */
4229
- getEventCatalogConfigurationFile: getEventCatalogConfigurationFile((0, import_node_path25.join)(path9)),
4467
+ getEventCatalogConfigurationFile: getEventCatalogConfigurationFile((0, import_node_path27.join)(path9)),
4230
4468
  /**
4231
4469
  * ================================
4232
4470
  * Changelogs
@@ -4240,7 +4478,7 @@ var src_default = (path9) => {
4240
4478
  * @param options - Optional options (version, format)
4241
4479
  *
4242
4480
  */
4243
- writeChangelog: writeChangelog((0, import_node_path25.join)(path9)),
4481
+ writeChangelog: writeChangelog((0, import_node_path27.join)(path9)),
4244
4482
  /**
4245
4483
  * Appends a changelog entry to an existing changelog for a resource.
4246
4484
  * If no changelog exists, one is created.
@@ -4250,7 +4488,7 @@ var src_default = (path9) => {
4250
4488
  * @param options - Optional options (version, format)
4251
4489
  *
4252
4490
  */
4253
- appendChangelog: appendChangelog((0, import_node_path25.join)(path9)),
4491
+ appendChangelog: appendChangelog((0, import_node_path27.join)(path9)),
4254
4492
  /**
4255
4493
  * Returns the changelog for a resource in EventCatalog
4256
4494
  *
@@ -4258,7 +4496,7 @@ var src_default = (path9) => {
4258
4496
  * @param options - Optional options (version)
4259
4497
  * @returns Changelog|Undefined
4260
4498
  */
4261
- getChangelog: getChangelog((0, import_node_path25.join)(path9)),
4499
+ getChangelog: getChangelog((0, import_node_path27.join)(path9)),
4262
4500
  /**
4263
4501
  * Removes the changelog for a resource in EventCatalog
4264
4502
  *
@@ -4266,7 +4504,7 @@ var src_default = (path9) => {
4266
4504
  * @param options - Optional options (version)
4267
4505
  *
4268
4506
  */
4269
- rmChangelog: rmChangelog((0, import_node_path25.join)(path9)),
4507
+ rmChangelog: rmChangelog((0, import_node_path27.join)(path9)),
4270
4508
  /**
4271
4509
  * ================================
4272
4510
  * Resources Utils
@@ -4295,26 +4533,26 @@ var src_default = (path9) => {
4295
4533
  * @param path - The path to the message to retrieve
4296
4534
  * @returns Message|Undefined
4297
4535
  */
4298
- getMessageBySchemaPath: getMessageBySchemaPath((0, import_node_path25.join)(path9)),
4536
+ getMessageBySchemaPath: getMessageBySchemaPath((0, import_node_path27.join)(path9)),
4299
4537
  /**
4300
4538
  * Returns the producers and consumers (services and agents) for a given message
4301
4539
  * @param id - The id of the message to get the producers and consumers for
4302
4540
  * @param version - Optional version of the message
4303
4541
  * @returns { producers: (Service|Agent)[], consumers: (Service|Agent)[] }
4304
4542
  */
4305
- getProducersAndConsumersForMessage: getProducersAndConsumersForMessage((0, import_node_path25.join)(path9)),
4543
+ getProducersAndConsumersForMessage: getProducersAndConsumersForMessage((0, import_node_path27.join)(path9)),
4306
4544
  /**
4307
4545
  * Returns the consumers of a given schema path
4308
4546
  * @param path - The path to the schema to get the consumers for
4309
4547
  * @returns (Service|Agent)[]
4310
4548
  */
4311
- getConsumersOfSchema: getConsumersOfSchema((0, import_node_path25.join)(path9)),
4549
+ getConsumersOfSchema: getConsumersOfSchema((0, import_node_path27.join)(path9)),
4312
4550
  /**
4313
4551
  * Returns the producers of a given schema path
4314
4552
  * @param path - The path to the schema to get the producers for
4315
4553
  * @returns (Service|Agent)[]
4316
4554
  */
4317
- getProducersOfSchema: getProducersOfSchema((0, import_node_path25.join)(path9)),
4555
+ getProducersOfSchema: getProducersOfSchema((0, import_node_path27.join)(path9)),
4318
4556
  /**
4319
4557
  * Returns the schema for a given message (event, command or query) by its id and version.
4320
4558
  * If no version is given, the latest version is used.
@@ -4322,14 +4560,14 @@ var src_default = (path9) => {
4322
4560
  * @param version - Optional version of the message
4323
4561
  * @returns { schema: string, fileName: string } | undefined
4324
4562
  */
4325
- getSchemaForMessage: getSchemaForMessage((0, import_node_path25.join)(path9)),
4563
+ getSchemaForMessage: getSchemaForMessage((0, import_node_path27.join)(path9)),
4326
4564
  /**
4327
4565
  * Returns the owners for a given resource (e.g domain, service, event, command, query, etc.)
4328
4566
  * @param id - The id of the resource to get the owners for
4329
4567
  * @param version - Optional version of the resource
4330
4568
  * @returns { owners: User[] }
4331
4569
  */
4332
- getOwnersForResource: getOwnersForResource((0, import_node_path25.join)(path9)),
4570
+ getOwnersForResource: getOwnersForResource((0, import_node_path27.join)(path9)),
4333
4571
  /**
4334
4572
  * ================================
4335
4573
  * Entities
@@ -4341,13 +4579,13 @@ var src_default = (path9) => {
4341
4579
  * @param version - Optional id of the version to get (supports semver)
4342
4580
  * @returns Entity|Undefined
4343
4581
  */
4344
- getEntity: getEntity((0, import_node_path25.join)(path9)),
4582
+ getEntity: getEntity((0, import_node_path27.join)(path9)),
4345
4583
  /**
4346
4584
  * Returns all entities from EventCatalog
4347
4585
  * @param latestOnly - optional boolean, set to true to get only latest versions
4348
4586
  * @returns Entity[]|Undefined
4349
4587
  */
4350
- getEntities: getEntities((0, import_node_path25.join)(path9)),
4588
+ getEntities: getEntities((0, import_node_path27.join)(path9)),
4351
4589
  /**
4352
4590
  * Adds an entity to EventCatalog
4353
4591
  *
@@ -4355,33 +4593,42 @@ var src_default = (path9) => {
4355
4593
  * @param options - Optional options to write the entity
4356
4594
  *
4357
4595
  */
4358
- writeEntity: writeEntity((0, import_node_path25.join)(path9, "entities")),
4596
+ writeEntity: writeEntity((0, import_node_path27.join)(path9, "entities")),
4597
+ /**
4598
+ * Adds an entity to a system in EventCatalog
4599
+ *
4600
+ * @param entity - The entity to write to the system
4601
+ * @param system - The system and its id to write the entity to
4602
+ * @param options - Optional options to write the entity
4603
+ *
4604
+ */
4605
+ writeEntityToSystem: writeEntityToSystem((0, import_node_path27.join)(path9)),
4359
4606
  /**
4360
4607
  * Remove an entity from EventCatalog (modeled on the standard POSIX rm utility)
4361
4608
  *
4362
4609
  * @param path - The path to your entity, e.g. `/User`
4363
4610
  *
4364
4611
  */
4365
- rmEntity: rmEntity((0, import_node_path25.join)(path9, "entities")),
4612
+ rmEntity: rmEntity((0, import_node_path27.join)(path9, "entities")),
4366
4613
  /**
4367
4614
  * Remove an entity by an entity id
4368
4615
  *
4369
4616
  * @param id - The id of the entity you want to remove
4370
4617
  *
4371
4618
  */
4372
- rmEntityById: rmEntityById((0, import_node_path25.join)(path9)),
4619
+ rmEntityById: rmEntityById((0, import_node_path27.join)(path9)),
4373
4620
  /**
4374
4621
  * Moves a given entity id to the version directory
4375
4622
  * @param id - The id of the entity to version
4376
4623
  */
4377
- versionEntity: versionEntity((0, import_node_path25.join)(path9)),
4624
+ versionEntity: versionEntity((0, import_node_path27.join)(path9)),
4378
4625
  /**
4379
4626
  * Check to see if an entity version exists
4380
4627
  * @param id - The id of the entity
4381
4628
  * @param version - The version of the entity (supports semver)
4382
4629
  * @returns
4383
4630
  */
4384
- entityHasVersion: entityHasVersion((0, import_node_path25.join)(path9)),
4631
+ entityHasVersion: entityHasVersion((0, import_node_path27.join)(path9)),
4385
4632
  /**
4386
4633
  * ================================
4387
4634
  * Flows
@@ -4394,7 +4641,7 @@ var src_default = (path9) => {
4394
4641
  * @param version - Optional version of the flow
4395
4642
  * @returns Flow
4396
4643
  */
4397
- getFlow: getFlow((0, import_node_path25.join)(path9)),
4644
+ getFlow: getFlow((0, import_node_path27.join)(path9)),
4398
4645
  /**
4399
4646
  * Returns all flows from EventCatalog
4400
4647
  *
@@ -4402,7 +4649,7 @@ var src_default = (path9) => {
4402
4649
  * @param latestOnly - optional boolean, set to true to get only latest versions
4403
4650
  * @returns Flow[]|Undefined
4404
4651
  */
4405
- getFlows: getFlows((0, import_node_path25.join)(path9)),
4652
+ getFlows: getFlows((0, import_node_path27.join)(path9)),
4406
4653
  /**
4407
4654
  * Adds a flow to EventCatalog
4408
4655
  *
@@ -4410,14 +4657,14 @@ var src_default = (path9) => {
4410
4657
  * @param options - Optional options to write the flow
4411
4658
  *
4412
4659
  */
4413
- writeFlow: writeFlow((0, import_node_path25.join)(path9, "flows")),
4660
+ writeFlow: writeFlow((0, import_node_path27.join)(path9, "flows")),
4414
4661
  /**
4415
4662
  * Adds a versioned flow to EventCatalog
4416
4663
  *
4417
4664
  * @param flow - The flow to write
4418
4665
  *
4419
4666
  */
4420
- writeVersionedFlow: writeVersionedFlow((0, import_node_path25.join)(path9, "flows")),
4667
+ writeVersionedFlow: writeVersionedFlow((0, import_node_path27.join)(path9, "flows")),
4421
4668
  /**
4422
4669
  * Adds a flow to a domain in EventCatalog
4423
4670
  *
@@ -4426,7 +4673,7 @@ var src_default = (path9) => {
4426
4673
  * @param options - Optional options to write the flow
4427
4674
  *
4428
4675
  */
4429
- writeFlowToDomain: writeFlowToDomain((0, import_node_path25.join)(path9, "domains")),
4676
+ writeFlowToDomain: writeFlowToDomain((0, import_node_path27.join)(path9, "domains")),
4430
4677
  /**
4431
4678
  * Adds a flow to a service in EventCatalog
4432
4679
  *
@@ -4435,7 +4682,16 @@ var src_default = (path9) => {
4435
4682
  * @param options - Optional options to write the flow
4436
4683
  *
4437
4684
  */
4438
- writeFlowToService: writeFlowToService((0, import_node_path25.join)(path9, "services")),
4685
+ writeFlowToService: writeFlowToService((0, import_node_path27.join)(path9, "services")),
4686
+ /**
4687
+ * Adds a flow to a system in EventCatalog
4688
+ *
4689
+ * @param flow - The flow to write to the system
4690
+ * @param system - The system and its id to write the flow to
4691
+ * @param options - Optional options to write the flow
4692
+ *
4693
+ */
4694
+ writeFlowToSystem: writeFlowToSystem((0, import_node_path27.join)(path9)),
4439
4695
  /**
4440
4696
  * Adds a flow to an agent in EventCatalog
4441
4697
  *
@@ -4444,33 +4700,33 @@ var src_default = (path9) => {
4444
4700
  * @param options - Optional options to write the flow
4445
4701
  *
4446
4702
  */
4447
- writeFlowToAgent: writeFlowToAgent((0, import_node_path25.join)(path9, "agents")),
4703
+ writeFlowToAgent: writeFlowToAgent((0, import_node_path27.join)(path9, "agents")),
4448
4704
  /**
4449
4705
  * Remove a flow from EventCatalog (modeled on the standard POSIX rm utility)
4450
4706
  *
4451
4707
  * @param path - The path to your flow, e.g. `/PaymentFlow`
4452
4708
  *
4453
4709
  */
4454
- rmFlow: rmFlow((0, import_node_path25.join)(path9, "flows")),
4710
+ rmFlow: rmFlow((0, import_node_path27.join)(path9, "flows")),
4455
4711
  /**
4456
4712
  * Remove a flow by a flow id
4457
4713
  *
4458
4714
  * @param id - The id of the flow you want to remove
4459
4715
  *
4460
4716
  */
4461
- rmFlowById: rmFlowById((0, import_node_path25.join)(path9)),
4717
+ rmFlowById: rmFlowById((0, import_node_path27.join)(path9)),
4462
4718
  /**
4463
4719
  * Moves a given flow id to the version directory
4464
4720
  * @param id - The id of the flow to version
4465
4721
  */
4466
- versionFlow: versionFlow((0, import_node_path25.join)(path9)),
4722
+ versionFlow: versionFlow((0, import_node_path27.join)(path9)),
4467
4723
  /**
4468
4724
  * Check to see if a flow version exists
4469
4725
  * @param id - The id of the flow
4470
4726
  * @param version - The version of the flow (supports semver)
4471
4727
  * @returns
4472
4728
  */
4473
- flowHasVersion: flowHasVersion((0, import_node_path25.join)(path9)),
4729
+ flowHasVersion: flowHasVersion((0, import_node_path27.join)(path9)),
4474
4730
  /**
4475
4731
  * Adds a file to the given flow
4476
4732
  * @param id - The id of the flow to add the file to
@@ -4478,7 +4734,7 @@ var src_default = (path9) => {
4478
4734
  * @param version - Optional version of the flow to add the file to
4479
4735
  * @returns
4480
4736
  */
4481
- addFileToFlow: addFileToFlow((0, import_node_path25.join)(path9)),
4737
+ addFileToFlow: addFileToFlow((0, import_node_path27.join)(path9)),
4482
4738
  /**
4483
4739
  * ================================
4484
4740
  * Data Stores
@@ -4490,42 +4746,42 @@ var src_default = (path9) => {
4490
4746
  * @param options - Optional options to write the data store
4491
4747
  *
4492
4748
  */
4493
- writeDataStore: writeDataStore((0, import_node_path25.join)(path9, "containers")),
4749
+ writeDataStore: writeDataStore((0, import_node_path27.join)(path9, "containers")),
4494
4750
  /**
4495
4751
  * Returns a data store from EventCatalog
4496
4752
  * @param id - The id of the data store to retrieve
4497
4753
  * @param version - Optional id of the version to get (supports semver)
4498
4754
  * @returns Container|Undefined
4499
4755
  */
4500
- getDataStore: getDataStore((0, import_node_path25.join)(path9)),
4756
+ getDataStore: getDataStore((0, import_node_path27.join)(path9)),
4501
4757
  /**
4502
4758
  * Returns all data stores from EventCatalog
4503
4759
  * @param latestOnly - optional boolean, set to true to get only latest versions
4504
4760
  * @returns Container[]|Undefined
4505
4761
  */
4506
- getDataStores: getDataStores((0, import_node_path25.join)(path9)),
4762
+ getDataStores: getDataStores((0, import_node_path27.join)(path9)),
4507
4763
  /**
4508
4764
  * Version a data store by its id
4509
4765
  * @param id - The id of the data store to version
4510
4766
  */
4511
- versionDataStore: versionDataStore((0, import_node_path25.join)(path9, "containers")),
4767
+ versionDataStore: versionDataStore((0, import_node_path27.join)(path9, "containers")),
4512
4768
  /**
4513
4769
  * Remove a data store by its path
4514
4770
  * @param path - The path to the data store to remove
4515
4771
  */
4516
- rmDataStore: rmDataStore((0, import_node_path25.join)(path9, "containers")),
4772
+ rmDataStore: rmDataStore((0, import_node_path27.join)(path9, "containers")),
4517
4773
  /**
4518
4774
  * Remove a data store by its id
4519
4775
  * @param id - The id of the data store to remove
4520
4776
  */
4521
- rmDataStoreById: rmDataStoreById((0, import_node_path25.join)(path9)),
4777
+ rmDataStoreById: rmDataStoreById((0, import_node_path27.join)(path9)),
4522
4778
  /**
4523
4779
  * Check to see if a data store version exists
4524
4780
  * @param id - The id of the data store
4525
4781
  * @param version - The version of the data store (supports semver)
4526
4782
  * @returns
4527
4783
  */
4528
- dataStoreHasVersion: dataStoreHasVersion((0, import_node_path25.join)(path9)),
4784
+ dataStoreHasVersion: dataStoreHasVersion((0, import_node_path27.join)(path9)),
4529
4785
  /**
4530
4786
  * Adds a file to a data store by its id
4531
4787
  * @param id - The id of the data store to add the file to
@@ -4533,14 +4789,21 @@ var src_default = (path9) => {
4533
4789
  * @param version - Optional version of the data store to add the file to
4534
4790
  * @returns
4535
4791
  */
4536
- addFileToDataStore: addFileToDataStore((0, import_node_path25.join)(path9)),
4792
+ addFileToDataStore: addFileToDataStore((0, import_node_path27.join)(path9)),
4537
4793
  /**
4538
4794
  * Writes a data store to a service by its id
4539
4795
  * @param dataStore - The data store to write
4540
4796
  * @param service - The service to write the data store to
4541
4797
  * @returns
4542
4798
  */
4543
- writeDataStoreToService: writeDataStoreToService((0, import_node_path25.join)(path9)),
4799
+ writeDataStoreToService: writeDataStoreToService((0, import_node_path27.join)(path9)),
4800
+ /**
4801
+ * Writes a data store to a system by its id
4802
+ * @param dataStore - The data store to write
4803
+ * @param system - The system to write the data store to
4804
+ * @returns
4805
+ */
4806
+ writeDataStoreToSystem: writeDataStoreToSystem((0, import_node_path27.join)(path9)),
4544
4807
  /**
4545
4808
  * ================================
4546
4809
  * Data Products
@@ -4552,7 +4815,7 @@ var src_default = (path9) => {
4552
4815
  * @param options - Optional options to write the data product
4553
4816
  *
4554
4817
  */
4555
- writeDataProduct: writeDataProduct((0, import_node_path25.join)(path9, "data-products")),
4818
+ writeDataProduct: writeDataProduct((0, import_node_path27.join)(path9, "data-products")),
4556
4819
  /**
4557
4820
  * Writes a data product to a domain in EventCatalog
4558
4821
  * @param dataProduct - The data product to write
@@ -4560,43 +4823,43 @@ var src_default = (path9) => {
4560
4823
  * @param options - Optional options to write the data product
4561
4824
  *
4562
4825
  */
4563
- writeDataProductToDomain: writeDataProductToDomain((0, import_node_path25.join)(path9, "domains")),
4826
+ writeDataProductToDomain: writeDataProductToDomain((0, import_node_path27.join)(path9, "domains")),
4564
4827
  /**
4565
4828
  * Returns a data product from EventCatalog
4566
4829
  * @param id - The id of the data product to retrieve
4567
4830
  * @param version - Optional id of the version to get (supports semver)
4568
4831
  * @returns DataProduct|Undefined
4569
4832
  */
4570
- getDataProduct: getDataProduct((0, import_node_path25.join)(path9)),
4833
+ getDataProduct: getDataProduct((0, import_node_path27.join)(path9)),
4571
4834
  /**
4572
4835
  * Returns all data products from EventCatalog
4573
4836
  * @param latestOnly - optional boolean, set to true to get only latest versions
4574
4837
  * @returns DataProduct[]|Undefined
4575
4838
  */
4576
- getDataProducts: getDataProducts((0, import_node_path25.join)(path9)),
4839
+ getDataProducts: getDataProducts((0, import_node_path27.join)(path9)),
4577
4840
  /**
4578
4841
  * Version a data product by its id
4579
4842
  * @param id - The id of the data product to version
4580
4843
  */
4581
- versionDataProduct: versionDataProduct((0, import_node_path25.join)(path9)),
4844
+ versionDataProduct: versionDataProduct((0, import_node_path27.join)(path9)),
4582
4845
  /**
4583
4846
  * Remove a data product by its path
4584
4847
  * @param path - The path to the data product to remove
4585
4848
  */
4586
- rmDataProduct: rmDataProduct((0, import_node_path25.join)(path9, "data-products")),
4849
+ rmDataProduct: rmDataProduct((0, import_node_path27.join)(path9, "data-products")),
4587
4850
  /**
4588
4851
  * Remove a data product by its id
4589
4852
  * @param id - The id of the data product to remove
4590
4853
  * @param version - Optional version of the data product to remove
4591
4854
  */
4592
- rmDataProductById: rmDataProductById((0, import_node_path25.join)(path9)),
4855
+ rmDataProductById: rmDataProductById((0, import_node_path27.join)(path9)),
4593
4856
  /**
4594
4857
  * Check to see if a data product version exists
4595
4858
  * @param id - The id of the data product
4596
4859
  * @param version - The version of the data product (supports semver)
4597
4860
  * @returns
4598
4861
  */
4599
- dataProductHasVersion: dataProductHasVersion((0, import_node_path25.join)(path9)),
4862
+ dataProductHasVersion: dataProductHasVersion((0, import_node_path27.join)(path9)),
4600
4863
  /**
4601
4864
  * Adds a file to a data product by its id
4602
4865
  * @param id - The id of the data product to add the file to
@@ -4604,7 +4867,7 @@ var src_default = (path9) => {
4604
4867
  * @param version - Optional version of the data product to add the file to
4605
4868
  * @returns
4606
4869
  */
4607
- addFileToDataProduct: addFileToDataProduct((0, import_node_path25.join)(path9)),
4870
+ addFileToDataProduct: addFileToDataProduct((0, import_node_path27.join)(path9)),
4608
4871
  /**
4609
4872
  * Adds a data product to a domain
4610
4873
  * @param id - The id of the domain
@@ -4612,7 +4875,7 @@ var src_default = (path9) => {
4612
4875
  * @param version - (Optional) The version of the domain to add the data product to
4613
4876
  * @returns
4614
4877
  */
4615
- addDataProductToDomain: addDataProductToDomain((0, import_node_path25.join)(path9, "domains")),
4878
+ addDataProductToDomain: addDataProductToDomain((0, import_node_path27.join)(path9, "domains")),
4616
4879
  /**
4617
4880
  * ================================
4618
4881
  * Diagrams
@@ -4624,13 +4887,13 @@ var src_default = (path9) => {
4624
4887
  * @param version - Optional id of the version to get (supports semver)
4625
4888
  * @returns Diagram|Undefined
4626
4889
  */
4627
- getDiagram: getDiagram((0, import_node_path25.join)(path9)),
4890
+ getDiagram: getDiagram((0, import_node_path27.join)(path9)),
4628
4891
  /**
4629
4892
  * Returns all diagrams from EventCatalog
4630
4893
  * @param latestOnly - optional boolean, set to true to get only latest versions
4631
4894
  * @returns Diagram[]|Undefined
4632
4895
  */
4633
- getDiagrams: getDiagrams((0, import_node_path25.join)(path9)),
4896
+ getDiagrams: getDiagrams((0, import_node_path27.join)(path9)),
4634
4897
  /**
4635
4898
  * Adds a diagram to EventCatalog
4636
4899
  *
@@ -4638,33 +4901,33 @@ var src_default = (path9) => {
4638
4901
  * @param options - Optional options to write the diagram
4639
4902
  *
4640
4903
  */
4641
- writeDiagram: writeDiagram((0, import_node_path25.join)(path9, "diagrams")),
4904
+ writeDiagram: writeDiagram((0, import_node_path27.join)(path9, "diagrams")),
4642
4905
  /**
4643
4906
  * Remove a diagram from EventCatalog (modeled on the standard POSIX rm utility)
4644
4907
  *
4645
4908
  * @param path - The path to your diagram, e.g. `/ArchitectureDiagram`
4646
4909
  *
4647
4910
  */
4648
- rmDiagram: rmDiagram((0, import_node_path25.join)(path9, "diagrams")),
4911
+ rmDiagram: rmDiagram((0, import_node_path27.join)(path9, "diagrams")),
4649
4912
  /**
4650
4913
  * Remove a diagram by a diagram id
4651
4914
  *
4652
4915
  * @param id - The id of the diagram you want to remove
4653
4916
  *
4654
4917
  */
4655
- rmDiagramById: rmDiagramById((0, import_node_path25.join)(path9)),
4918
+ rmDiagramById: rmDiagramById((0, import_node_path27.join)(path9)),
4656
4919
  /**
4657
4920
  * Moves a given diagram id to the version directory
4658
4921
  * @param id - The id of the diagram to version
4659
4922
  */
4660
- versionDiagram: versionDiagram((0, import_node_path25.join)(path9)),
4923
+ versionDiagram: versionDiagram((0, import_node_path27.join)(path9)),
4661
4924
  /**
4662
4925
  * Check to see if a diagram version exists
4663
4926
  * @param id - The id of the diagram
4664
4927
  * @param version - The version of the diagram (supports semver)
4665
4928
  * @returns
4666
4929
  */
4667
- diagramHasVersion: diagramHasVersion((0, import_node_path25.join)(path9)),
4930
+ diagramHasVersion: diagramHasVersion((0, import_node_path27.join)(path9)),
4668
4931
  /**
4669
4932
  * Adds a file to the given diagram
4670
4933
  * @param id - The id of the diagram to add the file to
@@ -4672,7 +4935,20 @@ var src_default = (path9) => {
4672
4935
  * @param version - Optional version of the diagram to add the file to
4673
4936
  * @returns
4674
4937
  */
4675
- addFileToDiagram: addFileToDiagram((0, import_node_path25.join)(path9)),
4938
+ addFileToDiagram: addFileToDiagram((0, import_node_path27.join)(path9)),
4939
+ /**
4940
+ * ================================
4941
+ * ADRs
4942
+ * ================================
4943
+ */
4944
+ getAdr: getAdr((0, import_node_path27.join)(path9)),
4945
+ getAdrs: getAdrs((0, import_node_path27.join)(path9)),
4946
+ writeAdr: writeAdr((0, import_node_path27.join)(path9, "adrs")),
4947
+ rmAdr: rmAdr((0, import_node_path27.join)(path9, "adrs")),
4948
+ rmAdrById: rmAdrById((0, import_node_path27.join)(path9)),
4949
+ versionAdr: versionAdr((0, import_node_path27.join)(path9)),
4950
+ adrHasVersion: adrHasVersion((0, import_node_path27.join)(path9)),
4951
+ addFileToAdr: addFileToAdr((0, import_node_path27.join)(path9)),
4676
4952
  /**
4677
4953
  * ================================
4678
4954
  * DSL
@@ -4691,21 +4967,21 @@ var src_default = (path9) => {
4691
4967
  * const dsl = await sdk.toDSL(services, { type: 'service', hydrate: true });
4692
4968
  * ```
4693
4969
  */
4694
- createSnapshot: createSnapshot((0, import_node_path25.join)(path9)),
4695
- diffSnapshots: diffSnapshots((0, import_node_path25.join)(path9)),
4696
- listSnapshots: listSnapshots((0, import_node_path25.join)(path9)),
4697
- toDSL: toDSL((0, import_node_path25.join)(path9), {
4698
- getEvent: getEvent((0, import_node_path25.join)(path9)),
4699
- getCommand: getCommand((0, import_node_path25.join)(path9)),
4700
- getQuery: getQuery((0, import_node_path25.join)(path9)),
4701
- getService: getService((0, import_node_path25.join)(path9)),
4702
- getServices: getServices((0, import_node_path25.join)(path9)),
4703
- getDomain: getDomain((0, import_node_path25.join)(path9, "domains")),
4704
- getChannel: getChannel((0, import_node_path25.join)(path9)),
4705
- getChannels: getChannels((0, import_node_path25.join)(path9)),
4706
- getContainer: getDataStore((0, import_node_path25.join)(path9)),
4707
- getTeam: getTeam((0, import_node_path25.join)(path9, "teams")),
4708
- getUser: getUser((0, import_node_path25.join)(path9, "users"))
4970
+ createSnapshot: createSnapshot((0, import_node_path27.join)(path9)),
4971
+ diffSnapshots: diffSnapshots((0, import_node_path27.join)(path9)),
4972
+ listSnapshots: listSnapshots((0, import_node_path27.join)(path9)),
4973
+ toDSL: toDSL((0, import_node_path27.join)(path9), {
4974
+ getEvent: getEvent((0, import_node_path27.join)(path9)),
4975
+ getCommand: getCommand((0, import_node_path27.join)(path9)),
4976
+ getQuery: getQuery((0, import_node_path27.join)(path9)),
4977
+ getService: getService((0, import_node_path27.join)(path9)),
4978
+ getServices: getServices((0, import_node_path27.join)(path9)),
4979
+ getDomain: getDomain((0, import_node_path27.join)(path9, "domains")),
4980
+ getChannel: getChannel((0, import_node_path27.join)(path9)),
4981
+ getChannels: getChannels((0, import_node_path27.join)(path9)),
4982
+ getContainer: getDataStore((0, import_node_path27.join)(path9)),
4983
+ getTeam: getTeam((0, import_node_path27.join)(path9, "teams")),
4984
+ getUser: getUser((0, import_node_path27.join)(path9, "users"))
4709
4985
  })
4710
4986
  };
4711
4987
  };