@eventcatalog/sdk 2.6.1 → 2.6.3

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.
@@ -645,6 +645,7 @@ var addMessageToChannel = (directory, collection) => async (id, _message, versio
645
645
  // src/messages.ts
646
646
  import { dirname as dirname5 } from "path";
647
647
  import matter4 from "gray-matter";
648
+ import { satisfies as satisfies3, validRange as validRange2 } from "semver";
648
649
  var getMessageBySchemaPath = (directory) => async (path4, options) => {
649
650
  const pathToMessage = dirname5(path4);
650
651
  try {
@@ -672,8 +673,8 @@ var getMessageBySchemaPath = (directory) => async (path4, options) => {
672
673
  throw new Error(`Failed to retrieve message from ${pathToMessage} due to an unknown error.`);
673
674
  }
674
675
  };
675
- var getProducersAndConsumersForMessage = (directory) => async (id, version) => {
676
- const services = await getServices(directory)({ latestOnly: true });
676
+ var getProducersAndConsumersForMessage = (directory) => async (id, version, options) => {
677
+ const services = await getServices(directory)({ latestOnly: options?.latestOnly ?? true });
677
678
  const message = await getResource(directory, id, version, { type: "message" });
678
679
  const isMessageLatestVersion = await isLatestVersion(directory, id, version);
679
680
  if (!message) {
@@ -684,7 +685,12 @@ var getProducersAndConsumersForMessage = (directory) => async (id, version) => {
684
685
  for (const service of services) {
685
686
  const servicePublishesMessage = service.sends?.some((_message) => {
686
687
  if (_message.version) {
687
- return _message.id === message.id && _message.version === message.version;
688
+ const isServiceUsingSemverRange = validRange2(_message.version);
689
+ if (isServiceUsingSemverRange) {
690
+ return _message.id === message.id && satisfies3(message.version, _message.version);
691
+ } else {
692
+ return _message.id === message.id && message.version === _message.version;
693
+ }
688
694
  }
689
695
  if (isMessageLatestVersion && _message.id === message.id) {
690
696
  return true;
@@ -693,7 +699,12 @@ var getProducersAndConsumersForMessage = (directory) => async (id, version) => {
693
699
  });
694
700
  const serviceSubscribesToMessage = service.receives?.some((_message) => {
695
701
  if (_message.version) {
696
- return _message.id === message.id && _message.version === message.version;
702
+ const isServiceUsingSemverRange = validRange2(_message.version);
703
+ if (isServiceUsingSemverRange) {
704
+ return _message.id === message.id && satisfies3(message.version, _message.version);
705
+ } else {
706
+ return _message.id === message.id && message.version === _message.version;
707
+ }
697
708
  }
698
709
  if (isMessageLatestVersion && _message.id === message.id) {
699
710
  return true;