@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/index.mjs
CHANGED
|
@@ -9,7 +9,7 @@ import { join as join3 } from "node:path";
|
|
|
9
9
|
import { globSync } from "glob";
|
|
10
10
|
import fsSync from "node:fs";
|
|
11
11
|
import { copy } from "fs-extra";
|
|
12
|
-
import { join } from "node:path";
|
|
12
|
+
import { join, dirname } from "node:path";
|
|
13
13
|
import matter from "gray-matter";
|
|
14
14
|
import { satisfies, validRange, valid } from "semver";
|
|
15
15
|
var versionExists = async (catalogDir, id, version) => {
|
|
@@ -44,7 +44,8 @@ var findFileById = async (catalogDir, id, version) => {
|
|
|
44
44
|
var getFiles = async (pattern, ignore = "") => {
|
|
45
45
|
try {
|
|
46
46
|
const ignoreList = Array.isArray(ignore) ? ignore : [ignore];
|
|
47
|
-
const
|
|
47
|
+
const baseDir = pattern.includes("**") ? pattern.split("**")[0] : dirname(pattern);
|
|
48
|
+
const files = globSync(pattern, { cwd: baseDir, ignore: ["node_modules/**", ...ignoreList] });
|
|
48
49
|
return files;
|
|
49
50
|
} catch (error) {
|
|
50
51
|
throw new Error(`Error finding files: ${error}`);
|
|
@@ -96,7 +97,7 @@ var uniqueVersions = (messages) => {
|
|
|
96
97
|
};
|
|
97
98
|
|
|
98
99
|
// src/internal/resources.ts
|
|
99
|
-
import { dirname, join as join2 } from "path";
|
|
100
|
+
import { dirname as dirname2, join as join2 } from "path";
|
|
100
101
|
import matter2 from "gray-matter";
|
|
101
102
|
import fs from "node:fs/promises";
|
|
102
103
|
import fsSync2 from "node:fs";
|
|
@@ -109,7 +110,7 @@ var versionResource = async (catalogDir, id) => {
|
|
|
109
110
|
throw new Error(`No resource found with id: ${id}`);
|
|
110
111
|
}
|
|
111
112
|
const file = matchedFiles[0];
|
|
112
|
-
const sourceDirectory =
|
|
113
|
+
const sourceDirectory = dirname2(file);
|
|
113
114
|
const { data: { version = "0.0.1" } = {} } = matter2.read(file);
|
|
114
115
|
const targetDirectory = getVersionedDirectory(sourceDirectory, version);
|
|
115
116
|
fsSync2.mkdirSync(targetDirectory, { recursive: true });
|
|
@@ -130,12 +131,14 @@ var writeResource = async (catalogDir, resource, options = {
|
|
|
130
131
|
path: "",
|
|
131
132
|
type: "",
|
|
132
133
|
override: false,
|
|
133
|
-
versionExistingContent: false
|
|
134
|
+
versionExistingContent: false,
|
|
135
|
+
format: "mdx"
|
|
134
136
|
}) => {
|
|
135
137
|
const path4 = options.path || `/${resource.id}`;
|
|
136
138
|
const fullPath = join2(catalogDir, path4);
|
|
139
|
+
const format = options.format || "mdx";
|
|
137
140
|
fsSync2.mkdirSync(fullPath, { recursive: true });
|
|
138
|
-
const lockPath = join2(fullPath,
|
|
141
|
+
const lockPath = join2(fullPath, `index.${format}`);
|
|
139
142
|
if (!fsSync2.existsSync(lockPath)) {
|
|
140
143
|
fsSync2.writeFileSync(lockPath, "");
|
|
141
144
|
}
|
|
@@ -182,7 +185,7 @@ var getResourcePath = async (catalogDir, id, version) => {
|
|
|
182
185
|
return {
|
|
183
186
|
fullPath: file,
|
|
184
187
|
relativePath: file.replace(catalogDir, ""),
|
|
185
|
-
directory:
|
|
188
|
+
directory: dirname2(file.replace(catalogDir, ""))
|
|
186
189
|
};
|
|
187
190
|
};
|
|
188
191
|
var getResources = async (catalogDir, {
|
|
@@ -218,7 +221,7 @@ var rmResourceById = async (catalogDir, id, version, options) => {
|
|
|
218
221
|
} else {
|
|
219
222
|
await Promise.all(
|
|
220
223
|
matchedFiles.map(async (file) => {
|
|
221
|
-
const directory =
|
|
224
|
+
const directory = dirname2(file);
|
|
222
225
|
await fs.rm(directory, { recursive: true, force: true });
|
|
223
226
|
})
|
|
224
227
|
);
|
|
@@ -227,14 +230,14 @@ var rmResourceById = async (catalogDir, id, version, options) => {
|
|
|
227
230
|
var addFileToResource = async (catalogDir, id, file, version) => {
|
|
228
231
|
const pathToResource = await findFileById(catalogDir, id, version);
|
|
229
232
|
if (!pathToResource) throw new Error("Cannot find directory to write file to");
|
|
230
|
-
fsSync2.writeFileSync(join2(
|
|
233
|
+
fsSync2.writeFileSync(join2(dirname2(pathToResource), file.fileName), file.content);
|
|
231
234
|
};
|
|
232
235
|
var getFileFromResource = async (catalogDir, id, file, version) => {
|
|
233
236
|
const pathToResource = await findFileById(catalogDir, id, version);
|
|
234
237
|
if (!pathToResource) throw new Error("Cannot find directory of resource");
|
|
235
|
-
const exists = await fs.access(join2(
|
|
238
|
+
const exists = await fs.access(join2(dirname2(pathToResource), file.fileName)).then(() => true).catch(() => false);
|
|
236
239
|
if (!exists) throw new Error(`File ${file.fileName} does not exist in resource ${id} v(${version})`);
|
|
237
|
-
return fsSync2.readFileSync(join2(
|
|
240
|
+
return fsSync2.readFileSync(join2(dirname2(pathToResource), file.fileName), "utf-8");
|
|
238
241
|
};
|
|
239
242
|
var getVersionedDirectory = (sourceDirectory, version) => {
|
|
240
243
|
return join2(sourceDirectory, "versioned", version);
|
|
@@ -243,8 +246,12 @@ var getVersionedDirectory = (sourceDirectory, version) => {
|
|
|
243
246
|
// src/events.ts
|
|
244
247
|
var getEvent = (directory) => async (id, version) => getResource(directory, id, version, { type: "event" });
|
|
245
248
|
var getEvents = (directory) => async (options) => getResources(directory, { type: "events", ...options });
|
|
246
|
-
var writeEvent = (directory) => async (event, options = {
|
|
247
|
-
|
|
249
|
+
var writeEvent = (directory) => async (event, options = {
|
|
250
|
+
path: "",
|
|
251
|
+
override: false,
|
|
252
|
+
format: "mdx"
|
|
253
|
+
}) => writeResource(directory, { ...event }, { ...options, type: "event" });
|
|
254
|
+
var writeEventToService = (directory) => async (event, service, options = { path: "", format: "mdx" }) => {
|
|
248
255
|
const resourcePath = await getResourcePath(directory, service.id, service.version);
|
|
249
256
|
if (!resourcePath) {
|
|
250
257
|
throw new Error("Service not found");
|
|
@@ -274,8 +281,13 @@ import fs3 from "node:fs/promises";
|
|
|
274
281
|
import { join as join4 } from "node:path";
|
|
275
282
|
var getCommand = (directory) => async (id, version) => getResource(directory, id, version, { type: "command" });
|
|
276
283
|
var getCommands = (directory) => async (options) => getResources(directory, { type: "commands", ...options });
|
|
277
|
-
var writeCommand = (directory) => async (command, options = {
|
|
278
|
-
|
|
284
|
+
var writeCommand = (directory) => async (command, options = {
|
|
285
|
+
path: "",
|
|
286
|
+
override: false,
|
|
287
|
+
versionExistingContent: false,
|
|
288
|
+
format: "mdx"
|
|
289
|
+
}) => writeResource(directory, { ...command }, { ...options, type: "command" });
|
|
290
|
+
var writeCommandToService = (directory) => async (command, service, options = { path: "", format: "mdx" }) => {
|
|
279
291
|
const resourcePath = await getResourcePath(directory, service.id, service.version);
|
|
280
292
|
if (!resourcePath) {
|
|
281
293
|
throw new Error("Service not found");
|
|
@@ -302,9 +314,14 @@ var commandHasVersion = (directory) => async (id, version) => {
|
|
|
302
314
|
import fs4 from "node:fs/promises";
|
|
303
315
|
import { join as join5 } from "node:path";
|
|
304
316
|
var getQuery = (directory) => async (id, version) => getResource(directory, id, version, { type: "query" });
|
|
305
|
-
var writeQuery = (directory) => async (query, options = {
|
|
317
|
+
var writeQuery = (directory) => async (query, options = {
|
|
318
|
+
path: "",
|
|
319
|
+
override: false,
|
|
320
|
+
versionExistingContent: false,
|
|
321
|
+
format: "mdx"
|
|
322
|
+
}) => writeResource(directory, { ...query }, { ...options, type: "query" });
|
|
306
323
|
var getQueries = (directory) => async (options) => getResources(directory, { type: "queries", ...options });
|
|
307
|
-
var writeQueryToService = (directory) => async (query, service, options = { path: "" }) => {
|
|
324
|
+
var writeQueryToService = (directory) => async (query, service, options = { path: "", format: "mdx" }) => {
|
|
308
325
|
const resourcePath = await getResourcePath(directory, service.id, service.version);
|
|
309
326
|
if (!resourcePath) {
|
|
310
327
|
throw new Error("Service not found");
|
|
@@ -331,14 +348,18 @@ var queryHasVersion = (directory) => async (id, version) => {
|
|
|
331
348
|
|
|
332
349
|
// src/services.ts
|
|
333
350
|
import fs5 from "node:fs/promises";
|
|
334
|
-
import { join as join6, dirname as
|
|
351
|
+
import { join as join6, dirname as dirname4 } from "node:path";
|
|
335
352
|
var getService = (directory) => async (id, version) => getResource(directory, id, version, { type: "service" });
|
|
336
353
|
var getServices = (directory) => async (options) => getResources(directory, {
|
|
337
354
|
type: "services",
|
|
338
355
|
ignore: ["**/events/**", "**/commands/**", "**/queries/**"],
|
|
339
356
|
...options
|
|
340
357
|
});
|
|
341
|
-
var writeService = (directory) => async (service, options = {
|
|
358
|
+
var writeService = (directory) => async (service, options = {
|
|
359
|
+
path: "",
|
|
360
|
+
override: false,
|
|
361
|
+
format: "mdx"
|
|
362
|
+
}) => {
|
|
342
363
|
const resource = { ...service };
|
|
343
364
|
if (Array.isArray(service.sends)) {
|
|
344
365
|
resource.sends = uniqueVersions(service.sends);
|
|
@@ -353,7 +374,7 @@ var writeVersionedService = (directory) => async (service) => {
|
|
|
353
374
|
const path4 = getVersionedDirectory(service.id, service.version);
|
|
354
375
|
return await writeService(directory)(resource, { path: path4 });
|
|
355
376
|
};
|
|
356
|
-
var writeServiceToDomain = (directory) => async (service, domain, options = { path: "" }) => {
|
|
377
|
+
var writeServiceToDomain = (directory) => async (service, domain, options = { path: "", format: "mdx" }) => {
|
|
357
378
|
let pathForService = domain.version && domain.version !== "latest" ? `/${domain.id}/versioned/${domain.version}/services` : `/${domain.id}/services`;
|
|
358
379
|
pathForService = join6(pathForService, service.id);
|
|
359
380
|
await writeResource(directory, { ...service }, { ...options, path: pathForService, type: "service" });
|
|
@@ -378,7 +399,7 @@ var getSpecificationFilesForService = (directory) => async (id, version) => {
|
|
|
378
399
|
throw new Error(`Specification file name for ${specFile} is undefined`);
|
|
379
400
|
}
|
|
380
401
|
const rawFile = await getFileFromResource(directory, id, { fileName }, version);
|
|
381
|
-
return { key: specFile, content: rawFile, fileName, path: join6(
|
|
402
|
+
return { key: specFile, content: rawFile, fileName, path: join6(dirname4(filePathToService), fileName) };
|
|
382
403
|
});
|
|
383
404
|
specs = await Promise.all(getSpecs);
|
|
384
405
|
}
|
|
@@ -434,7 +455,12 @@ var getDomains = (directory) => async (options) => getResources(directory, {
|
|
|
434
455
|
ignore: ["**/services/**", "**/events/**", "**/commands/**", "**/queries/**", "**/flows/**"],
|
|
435
456
|
...options
|
|
436
457
|
});
|
|
437
|
-
var writeDomain = (directory) => async (domain, options = {
|
|
458
|
+
var writeDomain = (directory) => async (domain, options = {
|
|
459
|
+
path: "",
|
|
460
|
+
override: false,
|
|
461
|
+
versionExistingContent: false,
|
|
462
|
+
format: "mdx"
|
|
463
|
+
}) => {
|
|
438
464
|
const resource = { ...domain };
|
|
439
465
|
if (Array.isArray(domain.services)) {
|
|
440
466
|
resource.services = uniqueVersions(domain.services);
|