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