@eventcatalog/core 0.0.11 → 0.1.0
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/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +32 -31
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/cache/eslint/.cache_1bay4w0 +1 -1
- package/.next/cache/next-server.js.nft.json +1 -1
- package/.next/cache/webpack/client-production/0.pack +0 -0
- package/.next/cache/webpack/client-production/index.pack +0 -0
- package/.next/cache/webpack/server-production/0.pack +0 -0
- package/.next/cache/webpack/server-production/index.pack +0 -0
- package/.next/export-detail.json +1 -0
- package/.next/next-server.js.nft.json +1 -1
- package/.next/prerender-manifest.json +1 -1
- package/.next/routes-manifest.json +1 -1
- package/.next/server/chunks/526.js +5 -5
- package/.next/server/chunks/565.js +17 -5
- package/.next/server/chunks/{959.js → 681.js} +126 -4
- package/.next/server/chunks/730.js +6 -7
- package/.next/server/chunks/938.js +18 -4
- package/.next/server/chunks/944.js +17 -25
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/pages/_app.js +4 -0
- package/.next/server/pages/events/AddedItemToCart/logs.html +1 -0
- package/.next/server/pages/events/AddedItemToCart/logs.json +1 -0
- package/.next/server/pages/events/AddedItemToCart/v/0.0.1.html +48 -0
- package/.next/server/pages/events/AddedItemToCart/v/0.0.1.json +1 -0
- package/.next/server/pages/events/AddedItemToCart/v/0.0.2.html +55 -0
- package/.next/server/pages/events/AddedItemToCart/v/0.0.2.json +1 -0
- package/.next/server/pages/events/AddedItemToCart.html +5 -5
- package/.next/server/pages/events/AddedItemToCart.json +1 -1
- package/.next/server/pages/events/OrderComplete/logs.html +1 -0
- package/.next/server/pages/events/OrderComplete/logs.json +1 -0
- package/.next/server/pages/events/OrderComplete.html +3 -3
- package/.next/server/pages/events/OrderComplete.json +1 -1
- package/.next/server/pages/events/OrderConfirmed/logs.html +1 -0
- package/.next/server/pages/events/OrderConfirmed/logs.json +1 -0
- package/.next/server/pages/events/OrderConfirmed.html +3 -3
- package/.next/server/pages/events/OrderConfirmed.json +1 -1
- package/.next/server/pages/events/OrderRequested/logs.html +1 -0
- package/.next/server/pages/events/OrderRequested/logs.json +1 -0
- package/.next/server/pages/events/OrderRequested.html +3 -3
- package/.next/server/pages/events/OrderRequested.json +1 -1
- package/.next/server/pages/events/PaymentProcessed/logs.html +1 -0
- package/.next/server/pages/events/PaymentProcessed/logs.json +1 -0
- package/.next/server/pages/events/PaymentProcessed.html +3 -3
- package/.next/server/pages/events/PaymentProcessed.json +1 -1
- package/.next/server/pages/events/RemovedItemFromCart/logs.html +1 -0
- package/.next/server/pages/events/RemovedItemFromCart/logs.json +1 -0
- package/.next/server/pages/events/RemovedItemFromCart.html +3 -3
- package/.next/server/pages/events/RemovedItemFromCart.json +1 -1
- package/.next/server/pages/events/ShipmentDelivered/logs.html +1 -0
- package/.next/server/pages/events/ShipmentDelivered/logs.json +1 -0
- package/.next/server/pages/events/ShipmentDelivered.html +3 -3
- package/.next/server/pages/events/ShipmentDelivered.json +1 -1
- package/.next/server/pages/events/ShipmentDispatched/logs.html +1 -0
- package/.next/server/pages/events/ShipmentDispatched/logs.json +1 -0
- package/.next/server/pages/events/ShipmentDispatched.html +3 -3
- package/.next/server/pages/events/ShipmentDispatched.json +1 -1
- package/.next/server/pages/events/ShipmentPrepared/logs.html +1 -0
- package/.next/server/pages/events/ShipmentPrepared/logs.json +1 -0
- package/.next/server/pages/events/ShipmentPrepared.html +3 -3
- package/.next/server/pages/events/ShipmentPrepared.json +1 -1
- package/.next/server/pages/events/[name]/logs.js +18 -4
- package/.next/server/pages/events/[name]/logs.js.nft.json +1 -1
- package/.next/server/pages/events/[name]/v/[version].js +19 -10
- package/.next/server/pages/events/[name]/v/[version].js.nft.json +1 -1
- package/.next/server/pages/events/[name].js +1 -8
- package/.next/server/pages/events/[name].js.nft.json +1 -1
- package/.next/server/pages/events.html +10 -0
- package/.next/server/pages/events.js +22 -40
- package/.next/server/pages/events.js.nft.json +1 -1
- package/.next/server/pages/events.json +1 -0
- package/.next/server/pages/index.html +1 -1
- package/.next/server/pages/overview.html +1 -0
- package/.next/server/pages/overview.js +12 -9
- package/.next/server/pages/overview.js.nft.json +1 -1
- package/.next/server/pages/overview.json +1 -0
- package/.next/server/pages/services/Basket Service.html +2 -2
- package/.next/server/pages/services/Basket Service.json +1 -1
- package/.next/server/pages/services/Data Lake.html +2 -2
- package/.next/server/pages/services/Data Lake.json +1 -1
- package/.next/server/pages/services/Payment Service.html +2 -2
- package/.next/server/pages/services/Payment Service.json +1 -1
- package/.next/server/pages/services/Shipping Service.html +2 -2
- package/.next/server/pages/services/Shipping Service.json +1 -1
- package/.next/server/pages/services/[name].js +11 -9
- package/.next/server/pages/services/[name].js.nft.json +1 -1
- package/.next/server/pages/services.html +5 -0
- package/.next/server/pages/services.js +68 -62
- package/.next/server/pages/services.js.nft.json +1 -1
- package/.next/server/pages/services.json +1 -0
- package/.next/server/pages/users/[id].js +20 -6
- package/.next/server/pages/users/[id].js.nft.json +1 -1
- package/.next/server/pages/users/dboyne.html +14 -0
- package/.next/server/pages/users/dboyne.json +1 -0
- package/.next/server/pages/users/mSmith.html +10 -0
- package/.next/server/pages/users/mSmith.json +1 -0
- package/.next/server/pages-manifest.json +0 -1
- package/.next/static/chunks/28-812913d1c0167bab.js +1 -0
- package/.next/static/chunks/{336-27e73f1c995ab4e7.js → 336-8b7da71a40e0c439.js} +1 -1
- package/.next/static/chunks/873-abd31f5f2b49c404.js +1 -0
- package/.next/static/chunks/pages/{_app-c9d3172cc09cf069.js → _app-1adc361d4508683f.js} +1 -1
- package/.next/static/chunks/pages/events/[name]/{logs-d159d7b82f44847f.js → logs-707da36de8222a98.js} +1 -1
- package/.next/static/chunks/pages/events/[name]/v/{[version]-963d3e8377b51e86.js → [version]-5652060e116d4a61.js} +1 -1
- package/.next/static/chunks/pages/events/{[name]-578828157369b5cd.js → [name]-146170e56a404524.js} +1 -1
- package/.next/static/chunks/pages/events-2360d47e48a52346.js +1 -0
- package/.next/static/chunks/pages/{overview-5ac749891cbe1922.js → overview-6bd5a86d5a28a942.js} +1 -1
- package/.next/static/chunks/pages/services/[name]-78378d531eb27bc2.js +1 -0
- package/.next/static/chunks/pages/services-1293e4d7df6174bf.js +1 -0
- package/.next/static/chunks/pages/users/[id]-5374b99d99fe576e.js +1 -0
- package/.next/static/chunks/{webpack-afe52d4a9fcc5a75.js → webpack-895c2707d065aab1.js} +1 -1
- package/.next/static/css/fd7bcdba1dee3675.css +3 -0
- package/.next/static/gzVt13hbN-uCAuaqwukt2/_buildManifest.js +1 -0
- package/.next/static/{_vd7D7jNxx4JR685n7v1G → gzVt13hbN-uCAuaqwukt2}/_middlewareManifest.js +0 -0
- package/.next/static/gzVt13hbN-uCAuaqwukt2/_ssgManifest.js +1 -0
- package/.next/trace +37 -37
- package/CHANGELOG.md +24 -0
- package/bin/eventcatalog.js +12 -0
- package/components/Grids/EventGrid.tsx +2 -2
- package/components/Grids/ServiceGrid.tsx +8 -1
- package/components/Mermaid/index.tsx +17 -4
- package/components/NotFound/index.tsx +4 -3
- package/components/Sidebars/EventSidebar.tsx +19 -21
- package/components/Sidebars/ServiceSidebar.tsx +3 -3
- package/components/SyntaxHighlighter.tsx +1 -1
- package/lib/events.ts +24 -0
- package/lib/graphs.ts +7 -3
- package/out/404.html +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/AddedItemToCart/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/AddedItemToCart/v/0.0.1.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/AddedItemToCart/v/0.0.2.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/AddedItemToCart.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/OrderComplete/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/OrderComplete.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/OrderConfirmed/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/OrderConfirmed.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/OrderRequested/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/OrderRequested.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/PaymentProcessed/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/PaymentProcessed.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/RemovedItemFromCart/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/RemovedItemFromCart.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/ShipmentDelivered/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/ShipmentDelivered.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/ShipmentDispatched/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/ShipmentDispatched.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/ShipmentPrepared/logs.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events/ShipmentPrepared.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/events.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/overview.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/services/Basket Service.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/services/Data Lake.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/services/Payment Service.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/services/Shipping Service.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/services.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/users/dboyne.json +1 -0
- package/out/_next/data/gzVt13hbN-uCAuaqwukt2/users/mSmith.json +1 -0
- package/out/_next/static/chunks/020d8314.aea2d24215754e7b.js +1 -0
- package/out/_next/static/chunks/176cb4e4-8a0f6f010ef8accb.js +1 -0
- package/out/_next/static/chunks/274-11c4d093341d7201.js +1 -0
- package/out/_next/static/chunks/28-812913d1c0167bab.js +1 -0
- package/out/_next/static/chunks/336-8b7da71a40e0c439.js +1 -0
- package/out/_next/static/chunks/364-3cb3c8cf1d3c95de.js +1 -0
- package/out/_next/static/chunks/519-7f22292093abd7c3.js +1 -0
- package/out/_next/static/chunks/638.d570519ae49c92c8.js +1 -0
- package/out/_next/static/chunks/873-abd31f5f2b49c404.js +1 -0
- package/out/_next/static/chunks/962-d5070461f6d4a478.js +1 -0
- package/out/_next/static/chunks/framework-576ec6a1c1386453.js +1 -0
- package/out/_next/static/chunks/main-0289ecbd51cd4cb4.js +1 -0
- package/out/_next/static/chunks/pages/_app-1adc361d4508683f.js +1 -0
- package/out/_next/static/chunks/pages/_error-5a714c45c50a8db4.js +1 -0
- package/out/_next/static/chunks/pages/events/[name]/logs-707da36de8222a98.js +1 -0
- package/out/_next/static/chunks/pages/events/[name]/v/[version]-5652060e116d4a61.js +1 -0
- package/out/_next/static/chunks/pages/events/[name]-146170e56a404524.js +1 -0
- package/out/_next/static/chunks/pages/events-2360d47e48a52346.js +1 -0
- package/out/_next/static/chunks/pages/index-3eeab7e4014a02ea.js +1 -0
- package/out/_next/static/chunks/pages/overview-6bd5a86d5a28a942.js +1 -0
- package/out/_next/static/chunks/pages/services/[name]-78378d531eb27bc2.js +1 -0
- package/out/_next/static/chunks/pages/services-1293e4d7df6174bf.js +1 -0
- package/out/_next/static/chunks/pages/users/[id]-5374b99d99fe576e.js +1 -0
- package/out/_next/static/chunks/polyfills-5cd94c89d3acac5f.js +1 -0
- package/out/_next/static/chunks/webpack-895c2707d065aab1.js +1 -0
- package/out/_next/static/css/5eeed9cb243ce668.css +1 -0
- package/out/_next/static/css/fd7bcdba1dee3675.css +3 -0
- package/out/_next/static/gzVt13hbN-uCAuaqwukt2/_buildManifest.js +1 -0
- package/out/_next/static/gzVt13hbN-uCAuaqwukt2/_middlewareManifest.js +1 -0
- package/out/_next/static/gzVt13hbN-uCAuaqwukt2/_ssgManifest.js +1 -0
- package/out/events/AddedItemToCart/logs.html +1 -0
- package/out/events/AddedItemToCart/v/0.0.1.html +48 -0
- package/out/events/AddedItemToCart/v/0.0.2.html +55 -0
- package/out/events/AddedItemToCart.html +73 -0
- package/out/events/OrderComplete/logs.html +1 -0
- package/out/events/OrderComplete.html +48 -0
- package/out/events/OrderConfirmed/logs.html +1 -0
- package/out/events/OrderConfirmed.html +48 -0
- package/out/events/OrderRequested/logs.html +1 -0
- package/out/events/OrderRequested.html +48 -0
- package/out/events/PaymentProcessed/logs.html +1 -0
- package/out/events/PaymentProcessed.html +52 -0
- package/out/events/RemovedItemFromCart/logs.html +1 -0
- package/out/events/RemovedItemFromCart.html +55 -0
- package/out/events/ShipmentDelivered/logs.html +1 -0
- package/out/events/ShipmentDelivered.html +53 -0
- package/out/events/ShipmentDispatched/logs.html +1 -0
- package/out/events/ShipmentDispatched.html +52 -0
- package/out/events/ShipmentPrepared/logs.html +1 -0
- package/out/events/ShipmentPrepared.html +52 -0
- package/out/events.html +10 -0
- package/out/favicon.ico +0 -0
- package/out/index.html +1 -0
- package/out/logo-random.svg +114 -0
- package/out/logo.svg +44 -0
- package/out/opengraph.png +0 -0
- package/out/overview.html +1 -0
- package/out/services/Basket Service.html +11 -0
- package/out/services/Data Lake.html +12 -0
- package/out/services/Payment Service.html +10 -0
- package/out/services/Shipping Service.html +14 -0
- package/out/services.html +5 -0
- package/out/users/dboyne.html +14 -0
- package/out/users/mSmith.html +10 -0
- package/package.json +3 -3
- package/pages/_app.tsx +2 -0
- package/pages/events/[name]/logs.tsx +12 -3
- package/pages/events/[name]/v/[version].tsx +14 -2
- package/pages/events/[name].tsx +4 -4
- package/pages/events.tsx +3 -16
- package/pages/overview.tsx +8 -5
- package/pages/services/[name].tsx +6 -4
- package/pages/services.tsx +28 -15
- package/pages/users/[id].tsx +14 -3
- package/scripts/move-schemas-for-download.js +59 -0
- package/.next/server/chunks/596.js +0 -98
- package/.next/server/pages/api/event/[name]/download.js +0 -64
- package/.next/server/pages/api/event/[name]/download.js.nft.json +0 -1
- package/.next/server/webpack-api-runtime.js +0 -160
- package/.next/static/_vd7D7jNxx4JR685n7v1G/_buildManifest.js +0 -1
- package/.next/static/_vd7D7jNxx4JR685n7v1G/_ssgManifest.js +0 -1
- package/.next/static/chunks/873-cd4309ed788ee564.js +0 -1
- package/.next/static/chunks/954-4d4a09c3269dda3f.js +0 -1
- package/.next/static/chunks/pages/events-bcad8442f21d6b67.js +0 -1
- package/.next/static/chunks/pages/services/[name]-8e53e76ab1c52c30.js +0 -1
- package/.next/static/chunks/pages/services-bcc61898062e1bf4.js +0 -1
- package/.next/static/chunks/pages/users/[id]-2da54ccb6319b207.js +0 -1
- package/.next/static/css/b44e1178a88a93b4.css +0 -3
- package/pages/api/event/[name]/download.js +0 -28
package/pages/overview.tsx
CHANGED
|
@@ -12,15 +12,18 @@ function NodeElement({ node: { id } }: { node: { id: string } }) {
|
|
|
12
12
|
return <div className={`text-sm text-center p-1 rounded-md `}>{id}</div>;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
+
const MAX_LENGTH_FOR_NODES = 30;
|
|
16
|
+
const truncateNode = (value) => (value.length > MAX_LENGTH_FOR_NODES ? `${value.substring(0, MAX_LENGTH_FOR_NODES)}...` : value);
|
|
17
|
+
|
|
15
18
|
const graph = ({ events, services }) => {
|
|
16
|
-
const eventNodes = events.map(({ name: event }) => ({ id: event, group: 1, type: 'event' }));
|
|
17
|
-
const serviceNodes = services.map((service) => ({ id: service, group: 2, type: 'service' }));
|
|
19
|
+
const eventNodes = events.map(({ name: event }) => ({ id: truncateNode(event), group: 1, type: 'event' }));
|
|
20
|
+
const serviceNodes = services.map((service) => ({ id: truncateNode(service), group: 2, type: 'service' }));
|
|
18
21
|
|
|
19
22
|
// Create all links
|
|
20
23
|
const links = events.reduce((nodes, event) => {
|
|
21
24
|
const { consumers = [], producers = [], name } = event;
|
|
22
|
-
const consumerNodes = consumers.map((consumer) => ({ source: name, target: consumer }));
|
|
23
|
-
const producerNodes = producers.map((producer) => ({ source: producer, target: name }));
|
|
25
|
+
const consumerNodes = consumers.map((consumer) => ({ source: truncateNode(name), target: truncateNode(consumer) }));
|
|
26
|
+
const producerNodes = producers.map((producer) => ({ source: truncateNode(producer), target: truncateNode(name) }));
|
|
24
27
|
return nodes.concat(consumerNodes).concat(producerNodes);
|
|
25
28
|
}, []);
|
|
26
29
|
|
|
@@ -63,7 +66,7 @@ const graph = ({ events, services }) => {
|
|
|
63
66
|
|
|
64
67
|
export default graph;
|
|
65
68
|
|
|
66
|
-
export const
|
|
69
|
+
export const getStaticProps = () => {
|
|
67
70
|
const events = getAllEvents();
|
|
68
71
|
const services = getUniqueServicesNamesFromEvents(events);
|
|
69
72
|
|
|
@@ -20,18 +20,20 @@ interface ServicesPageProps {
|
|
|
20
20
|
notFound?: boolean;
|
|
21
21
|
}
|
|
22
22
|
|
|
23
|
-
function MermaidComponent({ title, service }: { title: string; service: Service }) {
|
|
23
|
+
function MermaidComponent({ title, service, charts }: { title: string; service: Service; charts?: string[] }) {
|
|
24
24
|
return (
|
|
25
25
|
<div className="mx-auto w-full py-10">
|
|
26
26
|
{title && <h2 className="text-lg font-medium text-gray-900 underline">{title}</h2>}
|
|
27
|
-
<Mermaid source="service" data={service} rootNodeColor={getBackgroundColor(service.name)} />
|
|
27
|
+
<Mermaid source="service" data={service} rootNodeColor={getBackgroundColor(service.name)} charts={charts} />
|
|
28
28
|
</div>
|
|
29
29
|
);
|
|
30
30
|
}
|
|
31
31
|
|
|
32
32
|
const getComponents = (service) => ({
|
|
33
33
|
Admonition,
|
|
34
|
-
Mermaid: ({ title }: { title: string }) =>
|
|
34
|
+
Mermaid: ({ title, charts }: { title: string; charts?: string[] }) => (
|
|
35
|
+
<MermaidComponent service={service} title={title} charts={charts} />
|
|
36
|
+
),
|
|
35
37
|
});
|
|
36
38
|
|
|
37
39
|
export default function Services(props: ServicesPageProps) {
|
|
@@ -99,6 +101,6 @@ export async function getStaticPaths() {
|
|
|
99
101
|
const paths = services.map((service) => ({ params: { name: service.name } }));
|
|
100
102
|
return {
|
|
101
103
|
paths,
|
|
102
|
-
fallback:
|
|
104
|
+
fallback: false,
|
|
103
105
|
};
|
|
104
106
|
}
|
package/pages/services.tsx
CHANGED
|
@@ -1,9 +1,7 @@
|
|
|
1
|
-
import { Fragment } from 'react';
|
|
1
|
+
import { Fragment, useState } from 'react';
|
|
2
2
|
import Head from 'next/head';
|
|
3
3
|
import { Service } from '@eventcatalog/types';
|
|
4
4
|
|
|
5
|
-
import Link from 'next/link';
|
|
6
|
-
|
|
7
5
|
import { Menu, Transition } from '@headlessui/react';
|
|
8
6
|
import { ChevronDownIcon } from '@heroicons/react/solid';
|
|
9
7
|
import ServiceGrid from '@/components/Grids/ServiceGrid';
|
|
@@ -24,6 +22,8 @@ export interface PageProps {
|
|
|
24
22
|
}
|
|
25
23
|
|
|
26
24
|
export default function Page({ services }: PageProps) {
|
|
25
|
+
const [showMermaidDiagrams, setShowMermaidDiagrams] = useState(false);
|
|
26
|
+
|
|
27
27
|
return (
|
|
28
28
|
<>
|
|
29
29
|
<Head>
|
|
@@ -83,22 +83,35 @@ export default function Page({ services }: PageProps) {
|
|
|
83
83
|
<div className="grid grid-cols-4 gap-x-8 gap-y-10">
|
|
84
84
|
{/* Filters */}
|
|
85
85
|
<form className="hidden lg:block">
|
|
86
|
-
<
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
86
|
+
<div className="border-b border-gray-200 pb-6">
|
|
87
|
+
<h3 className="-my-3 flow-root">
|
|
88
|
+
<div className="py-3 bg-white w-full flex items-center justify-between text-sm text-gray-400 hover:text-gray-500">
|
|
89
|
+
<span className="font-medium text-gray-900">Features</span>
|
|
90
|
+
</div>
|
|
91
|
+
</h3>
|
|
92
|
+
<div className="pt-6">
|
|
93
|
+
<div className="space-y-4">
|
|
94
|
+
<div className="flex items-center">
|
|
95
|
+
<input
|
|
96
|
+
id="show-mermaid"
|
|
97
|
+
type="checkbox"
|
|
98
|
+
onChange={(e) => setShowMermaidDiagrams(e.target.checked)}
|
|
99
|
+
defaultChecked={showMermaidDiagrams}
|
|
100
|
+
className="h-4 w-4 border-gray-300 rounded text-gray-600 focus:ring-gray-500"
|
|
101
|
+
/>
|
|
102
|
+
<label htmlFor="show-mermaid" className="ml-3 text-sm text-gray-600">
|
|
103
|
+
Show Mermaid Diagrams
|
|
104
|
+
</label>
|
|
105
|
+
</div>
|
|
106
|
+
</div>
|
|
107
|
+
</div>
|
|
108
|
+
</div>
|
|
96
109
|
</form>
|
|
97
110
|
|
|
98
111
|
<div className="col-span-4 lg:col-span-3">
|
|
99
112
|
<div>
|
|
100
113
|
<h2 className="text-gray-500 text-xs font-medium uppercase tracking-wide">Services</h2>
|
|
101
|
-
<ServiceGrid services={services} />
|
|
114
|
+
<ServiceGrid services={services} showMermaidDiagrams={showMermaidDiagrams} />
|
|
102
115
|
</div>
|
|
103
116
|
</div>
|
|
104
117
|
</div>
|
|
@@ -108,7 +121,7 @@ export default function Page({ services }: PageProps) {
|
|
|
108
121
|
);
|
|
109
122
|
}
|
|
110
123
|
|
|
111
|
-
export async function
|
|
124
|
+
export async function getStaticProps() {
|
|
112
125
|
const services = getAllServices();
|
|
113
126
|
|
|
114
127
|
return {
|
package/pages/users/[id].tsx
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Event, Service } from '@eventcatalog/types';
|
|
2
2
|
import EventGrid from '@/components/Grids/EventGrid';
|
|
3
3
|
import ServiceGrid from '@/components/Grids/ServiceGrid';
|
|
4
|
-
import { getAllEventsByOwnerId } from '@/lib/events';
|
|
4
|
+
import { getAllEventsByOwnerId, getAllOwners } from '@/lib/events';
|
|
5
5
|
import { getAllServicesByOwnerId } from '@/lib/services';
|
|
6
6
|
|
|
7
7
|
import { useUser } from '@/hooks/EventCatalog';
|
|
@@ -59,8 +59,8 @@ export default function UserPage({ events, services, userId }: UserPageProps) {
|
|
|
59
59
|
);
|
|
60
60
|
}
|
|
61
61
|
|
|
62
|
-
export const
|
|
63
|
-
const { id: userId } =
|
|
62
|
+
export const getStaticProps = async ({ params }) => {
|
|
63
|
+
const { id: userId } = params;
|
|
64
64
|
const userEvents = await getAllEventsByOwnerId(userId);
|
|
65
65
|
const services = await getAllServicesByOwnerId(userId);
|
|
66
66
|
|
|
@@ -72,3 +72,14 @@ export const getServerSideProps = async (req) => {
|
|
|
72
72
|
},
|
|
73
73
|
};
|
|
74
74
|
};
|
|
75
|
+
|
|
76
|
+
export async function getStaticPaths() {
|
|
77
|
+
const owners = getAllOwners();
|
|
78
|
+
|
|
79
|
+
const paths = owners.map((owner) => ({ params: { id: owner } }));
|
|
80
|
+
|
|
81
|
+
return {
|
|
82
|
+
paths,
|
|
83
|
+
fallback: false,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
const path = require('path');
|
|
2
|
+
const fs = require('fs');
|
|
3
|
+
|
|
4
|
+
const getAllEventsAndSchemaPaths = (directory) => {
|
|
5
|
+
const folders = fs.readdirSync(directory);
|
|
6
|
+
return folders.map((folder) => {
|
|
7
|
+
const allFilesInEventFolder = fs.readdirSync(path.join(directory, folder));
|
|
8
|
+
const schemaFileName = allFilesInEventFolder.find((fileName) => fileName.includes('schema'));
|
|
9
|
+
const eventHasVersions = !!allFilesInEventFolder.find((fileName) => fileName.includes('versioned'));
|
|
10
|
+
let versions = [];
|
|
11
|
+
|
|
12
|
+
if (eventHasVersions) {
|
|
13
|
+
versions = getAllEventsAndSchemaPaths(path.join(directory, folder, 'versioned'));
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
return {
|
|
17
|
+
name: folder,
|
|
18
|
+
schemaFileName,
|
|
19
|
+
schemaContent: schemaFileName ? fs.readFileSync(path.join(directory, folder, schemaFileName), 'utf-8') : null,
|
|
20
|
+
versions,
|
|
21
|
+
};
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
const main = async () => {
|
|
26
|
+
const publicDir = path.join(__dirname, '../public');
|
|
27
|
+
const publicSchemaDir = path.join(publicDir, 'schemas');
|
|
28
|
+
|
|
29
|
+
if (fs.existsSync(publicSchemaDir)) {
|
|
30
|
+
fs.rmSync(publicSchemaDir, { recursive: true, force: true });
|
|
31
|
+
}
|
|
32
|
+
fs.mkdirSync(publicSchemaDir);
|
|
33
|
+
|
|
34
|
+
const eventsWithSchemaPaths = getAllEventsAndSchemaPaths(path.join(process.env.PROJECT_DIR, 'events'));
|
|
35
|
+
const eventsWithSchemas = eventsWithSchemaPaths.filter((event) => !!event.schemaContent);
|
|
36
|
+
|
|
37
|
+
eventsWithSchemas.forEach((event) => {
|
|
38
|
+
const eventDir = path.join(publicSchemaDir, event.name);
|
|
39
|
+
|
|
40
|
+
if (!fs.existsSync(eventDir)) {
|
|
41
|
+
fs.mkdirSync(eventDir);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const eventVersions = event.versions;
|
|
45
|
+
const versionsWithSchemas = eventVersions.filter((version) => !!version.schemaContent);
|
|
46
|
+
|
|
47
|
+
versionsWithSchemas.forEach((version) => {
|
|
48
|
+
const versionDir = path.join(eventDir, version.name);
|
|
49
|
+
if (!fs.existsSync(versionDir)) {
|
|
50
|
+
fs.mkdirSync(versionDir);
|
|
51
|
+
}
|
|
52
|
+
fs.writeFileSync(path.join(versionDir, version.schemaFileName), version.schemaContent);
|
|
53
|
+
});
|
|
54
|
+
|
|
55
|
+
fs.writeFileSync(path.join(eventDir, event.schemaFileName), event.schemaContent);
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
main();
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
exports.id = 596;
|
|
3
|
-
exports.ids = [596];
|
|
4
|
-
exports.modules = {
|
|
5
|
-
|
|
6
|
-
/***/ 9596:
|
|
7
|
-
/***/ ((module, __webpack_exports__, __webpack_require__) => {
|
|
8
|
-
|
|
9
|
-
__webpack_require__.a(module, async (__webpack_handle_async_dependencies__) => {
|
|
10
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
11
|
-
/* harmony export */ "UV": () => (/* binding */ getAllServices),
|
|
12
|
-
/* harmony export */ "vY": () => (/* binding */ getAllServicesByOwnerId),
|
|
13
|
-
/* harmony export */ "in": () => (/* binding */ getServiceByName)
|
|
14
|
-
/* harmony export */ });
|
|
15
|
-
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7147);
|
|
16
|
-
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_0__);
|
|
17
|
-
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1017);
|
|
18
|
-
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
|
19
|
-
/* harmony import */ var next_mdx_remote_serialize__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7112);
|
|
20
|
-
/* harmony import */ var next_mdx_remote_serialize__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(next_mdx_remote_serialize__WEBPACK_IMPORTED_MODULE_2__);
|
|
21
|
-
/* harmony import */ var _lib_file_reader__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2432);
|
|
22
|
-
/* harmony import */ var _lib_events__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9959);
|
|
23
|
-
var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_lib_events__WEBPACK_IMPORTED_MODULE_4__]);
|
|
24
|
-
_lib_events__WEBPACK_IMPORTED_MODULE_4__ = (__webpack_async_dependencies__.then ? await __webpack_async_dependencies__ : __webpack_async_dependencies__)[0];
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
const buildService = (eventFrontMatter)=>{
|
|
31
|
-
const { name , summary , owners =[] , repository ={
|
|
32
|
-
} , tags =[] , externalLinks =[] } = eventFrontMatter;
|
|
33
|
-
return {
|
|
34
|
-
name,
|
|
35
|
-
summary,
|
|
36
|
-
owners,
|
|
37
|
-
repository,
|
|
38
|
-
tags,
|
|
39
|
-
externalLinks
|
|
40
|
-
};
|
|
41
|
-
};
|
|
42
|
-
const getAllServices = ()=>{
|
|
43
|
-
const servicesDir = path__WEBPACK_IMPORTED_MODULE_1___default().join(process.env.PROJECT_DIR, 'services');
|
|
44
|
-
const folders = fs__WEBPACK_IMPORTED_MODULE_0___default().readdirSync(servicesDir);
|
|
45
|
-
const services = folders.map((folder)=>(0,_lib_file_reader__WEBPACK_IMPORTED_MODULE_3__/* .readMarkdownFile */ .ws)(path__WEBPACK_IMPORTED_MODULE_1___default().join(servicesDir, folder, 'index.md'))
|
|
46
|
-
);
|
|
47
|
-
const events = (0,_lib_events__WEBPACK_IMPORTED_MODULE_4__/* .getAllEvents */ .IP)();
|
|
48
|
-
const parsedServices = services.map((frontMatter)=>buildService(frontMatter.data)
|
|
49
|
-
);
|
|
50
|
-
// @ts-ignore
|
|
51
|
-
return parsedServices.map((service)=>({
|
|
52
|
-
...service,
|
|
53
|
-
...(0,_lib_events__WEBPACK_IMPORTED_MODULE_4__/* .getAllEventsThatHaveRelationshipWithService */ .X4)(service, events)
|
|
54
|
-
})
|
|
55
|
-
);
|
|
56
|
-
};
|
|
57
|
-
const getAllServicesByOwnerId = async (ownerId)=>{
|
|
58
|
-
const services = await getAllServices();
|
|
59
|
-
const servicesOwnedByUser = services.filter((service)=>service.owners.some((id)=>id === ownerId
|
|
60
|
-
)
|
|
61
|
-
);
|
|
62
|
-
return servicesOwnedByUser.map((service)=>({
|
|
63
|
-
...service
|
|
64
|
-
})
|
|
65
|
-
);
|
|
66
|
-
};
|
|
67
|
-
const getServiceByName = async (serviceName)=>{
|
|
68
|
-
try {
|
|
69
|
-
const servicesDir = path__WEBPACK_IMPORTED_MODULE_1___default().join(process.env.PROJECT_DIR, 'services');
|
|
70
|
-
const serviceDirectory = path__WEBPACK_IMPORTED_MODULE_1___default().join(servicesDir, serviceName);
|
|
71
|
-
const { data , content } = (0,_lib_file_reader__WEBPACK_IMPORTED_MODULE_3__/* .readMarkdownFile */ .ws)(path__WEBPACK_IMPORTED_MODULE_1___default().join(serviceDirectory, `index.md`));
|
|
72
|
-
const service = buildService(data);
|
|
73
|
-
const events = (0,_lib_events__WEBPACK_IMPORTED_MODULE_4__/* .getAllEvents */ .IP)();
|
|
74
|
-
const mdxSource = await (0,next_mdx_remote_serialize__WEBPACK_IMPORTED_MODULE_2__.serialize)(content);
|
|
75
|
-
return {
|
|
76
|
-
// @ts-ignore
|
|
77
|
-
service: {
|
|
78
|
-
...service,
|
|
79
|
-
...(0,_lib_events__WEBPACK_IMPORTED_MODULE_4__/* .getAllEventsThatHaveRelationshipWithService */ .X4)(service, events)
|
|
80
|
-
},
|
|
81
|
-
markdown: {
|
|
82
|
-
content,
|
|
83
|
-
lastModifiedDate: (0,_lib_file_reader__WEBPACK_IMPORTED_MODULE_3__/* .getLastModifiedDateOfFile */ .cn)(path__WEBPACK_IMPORTED_MODULE_1___default().join(serviceDirectory, `index.md`)),
|
|
84
|
-
source: mdxSource
|
|
85
|
-
}
|
|
86
|
-
};
|
|
87
|
-
} catch (error) {
|
|
88
|
-
console.log('Failed to get service by name', serviceName);
|
|
89
|
-
return Promise.reject();
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
});
|
|
94
|
-
|
|
95
|
-
/***/ })
|
|
96
|
-
|
|
97
|
-
};
|
|
98
|
-
;
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
(() => {
|
|
3
|
-
var exports = {};
|
|
4
|
-
exports.id = 148;
|
|
5
|
-
exports.ids = [148];
|
|
6
|
-
exports.modules = {
|
|
7
|
-
|
|
8
|
-
/***/ 2374:
|
|
9
|
-
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
10
|
-
|
|
11
|
-
// ESM COMPAT FLAG
|
|
12
|
-
__webpack_require__.r(__webpack_exports__);
|
|
13
|
-
|
|
14
|
-
// EXPORTS
|
|
15
|
-
__webpack_require__.d(__webpack_exports__, {
|
|
16
|
-
"default": () => (/* binding */ download)
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
;// CONCATENATED MODULE: external "fs"
|
|
20
|
-
const external_fs_namespaceObject = require("fs");
|
|
21
|
-
var external_fs_default = /*#__PURE__*/__webpack_require__.n(external_fs_namespaceObject);
|
|
22
|
-
;// CONCATENATED MODULE: external "path"
|
|
23
|
-
const external_path_namespaceObject = require("path");
|
|
24
|
-
var external_path_default = /*#__PURE__*/__webpack_require__.n(external_path_namespaceObject);
|
|
25
|
-
;// CONCATENATED MODULE: ./pages/api/event/[name]/download.js
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
// eslint-disable-next-line func-names
|
|
29
|
-
/* harmony default export */ function download(req, res) {
|
|
30
|
-
const { name: eventName } = req.query;
|
|
31
|
-
const eventDir = external_path_default().join(process.env.PROJECT_DIR, 'events', eventName);
|
|
32
|
-
try {
|
|
33
|
-
const filesInEventDir = external_fs_default().readdirSync(eventDir);
|
|
34
|
-
const schemaFileName = filesInEventDir.find((fileName)=>fileName.indexOf('schema.') > -1
|
|
35
|
-
);
|
|
36
|
-
if (schemaFileName) {
|
|
37
|
-
const extension = schemaFileName.split('.').pop();
|
|
38
|
-
const schemaFile = external_fs_default().readFileSync(external_path_default().join(eventDir, schemaFileName));
|
|
39
|
-
res.send({
|
|
40
|
-
schema: schemaFile.toString(),
|
|
41
|
-
fileName: `${eventName}.${extension}`
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
res.status(404).end();
|
|
45
|
-
} catch (error) {
|
|
46
|
-
console.log(error);
|
|
47
|
-
res.status(404).end();
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
/***/ })
|
|
53
|
-
|
|
54
|
-
};
|
|
55
|
-
;
|
|
56
|
-
|
|
57
|
-
// load runtime
|
|
58
|
-
var __webpack_require__ = require("../../../../webpack-api-runtime.js");
|
|
59
|
-
__webpack_require__.C(exports);
|
|
60
|
-
var __webpack_exec__ = (moduleId) => (__webpack_require__(__webpack_require__.s = moduleId))
|
|
61
|
-
var __webpack_exports__ = (__webpack_exec__(2374));
|
|
62
|
-
module.exports = __webpack_exports__;
|
|
63
|
-
|
|
64
|
-
})();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../webpack-api-runtime.js","../../../../../../package.json","../../../../../../package.json"]}
|
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
/******/ (() => { // webpackBootstrap
|
|
2
|
-
/******/ "use strict";
|
|
3
|
-
/******/ var __webpack_modules__ = ({});
|
|
4
|
-
/************************************************************************/
|
|
5
|
-
/******/ // The module cache
|
|
6
|
-
/******/ var __webpack_module_cache__ = {};
|
|
7
|
-
/******/
|
|
8
|
-
/******/ // The require function
|
|
9
|
-
/******/ function __webpack_require__(moduleId) {
|
|
10
|
-
/******/ // Check if module is in cache
|
|
11
|
-
/******/ var cachedModule = __webpack_module_cache__[moduleId];
|
|
12
|
-
/******/ if (cachedModule !== undefined) {
|
|
13
|
-
/******/ return cachedModule.exports;
|
|
14
|
-
/******/ }
|
|
15
|
-
/******/ // Create a new module (and put it into the cache)
|
|
16
|
-
/******/ var module = __webpack_module_cache__[moduleId] = {
|
|
17
|
-
/******/ // no module.id needed
|
|
18
|
-
/******/ // no module.loaded needed
|
|
19
|
-
/******/ exports: {}
|
|
20
|
-
/******/ };
|
|
21
|
-
/******/
|
|
22
|
-
/******/ // Execute the module function
|
|
23
|
-
/******/ var threw = true;
|
|
24
|
-
/******/ try {
|
|
25
|
-
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
|
|
26
|
-
/******/ threw = false;
|
|
27
|
-
/******/ } finally {
|
|
28
|
-
/******/ if(threw) delete __webpack_module_cache__[moduleId];
|
|
29
|
-
/******/ }
|
|
30
|
-
/******/
|
|
31
|
-
/******/ // Return the exports of the module
|
|
32
|
-
/******/ return module.exports;
|
|
33
|
-
/******/ }
|
|
34
|
-
/******/
|
|
35
|
-
/******/ // expose the modules object (__webpack_modules__)
|
|
36
|
-
/******/ __webpack_require__.m = __webpack_modules__;
|
|
37
|
-
/******/
|
|
38
|
-
/************************************************************************/
|
|
39
|
-
/******/ /* webpack/runtime/compat get default export */
|
|
40
|
-
/******/ (() => {
|
|
41
|
-
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
42
|
-
/******/ __webpack_require__.n = (module) => {
|
|
43
|
-
/******/ var getter = module && module.__esModule ?
|
|
44
|
-
/******/ () => (module['default']) :
|
|
45
|
-
/******/ () => (module);
|
|
46
|
-
/******/ __webpack_require__.d(getter, { a: getter });
|
|
47
|
-
/******/ return getter;
|
|
48
|
-
/******/ };
|
|
49
|
-
/******/ })();
|
|
50
|
-
/******/
|
|
51
|
-
/******/ /* webpack/runtime/define property getters */
|
|
52
|
-
/******/ (() => {
|
|
53
|
-
/******/ // define getter functions for harmony exports
|
|
54
|
-
/******/ __webpack_require__.d = (exports, definition) => {
|
|
55
|
-
/******/ for(var key in definition) {
|
|
56
|
-
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
57
|
-
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
58
|
-
/******/ }
|
|
59
|
-
/******/ }
|
|
60
|
-
/******/ };
|
|
61
|
-
/******/ })();
|
|
62
|
-
/******/
|
|
63
|
-
/******/ /* webpack/runtime/ensure chunk */
|
|
64
|
-
/******/ (() => {
|
|
65
|
-
/******/ __webpack_require__.f = {};
|
|
66
|
-
/******/ // This file contains only the entry chunk.
|
|
67
|
-
/******/ // The chunk loading function for additional chunks
|
|
68
|
-
/******/ __webpack_require__.e = (chunkId) => {
|
|
69
|
-
/******/ return Promise.all(Object.keys(__webpack_require__.f).reduce((promises, key) => {
|
|
70
|
-
/******/ __webpack_require__.f[key](chunkId, promises);
|
|
71
|
-
/******/ return promises;
|
|
72
|
-
/******/ }, []));
|
|
73
|
-
/******/ };
|
|
74
|
-
/******/ })();
|
|
75
|
-
/******/
|
|
76
|
-
/******/ /* webpack/runtime/get javascript chunk filename */
|
|
77
|
-
/******/ (() => {
|
|
78
|
-
/******/ // This function allow to reference async chunks and sibling chunks for the entrypoint
|
|
79
|
-
/******/ __webpack_require__.u = (chunkId) => {
|
|
80
|
-
/******/ // return url for filenames based on template
|
|
81
|
-
/******/ return undefined;
|
|
82
|
-
/******/ };
|
|
83
|
-
/******/ })();
|
|
84
|
-
/******/
|
|
85
|
-
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
86
|
-
/******/ (() => {
|
|
87
|
-
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
|
88
|
-
/******/ })();
|
|
89
|
-
/******/
|
|
90
|
-
/******/ /* webpack/runtime/make namespace object */
|
|
91
|
-
/******/ (() => {
|
|
92
|
-
/******/ // define __esModule on exports
|
|
93
|
-
/******/ __webpack_require__.r = (exports) => {
|
|
94
|
-
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
|
|
95
|
-
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
|
|
96
|
-
/******/ }
|
|
97
|
-
/******/ Object.defineProperty(exports, '__esModule', { value: true });
|
|
98
|
-
/******/ };
|
|
99
|
-
/******/ })();
|
|
100
|
-
/******/
|
|
101
|
-
/******/ /* webpack/runtime/startup entrypoint */
|
|
102
|
-
/******/ (() => {
|
|
103
|
-
/******/ __webpack_require__.X = (result, chunkIds, fn) => {
|
|
104
|
-
/******/ // arguments: chunkIds, moduleId are deprecated
|
|
105
|
-
/******/ var moduleId = chunkIds;
|
|
106
|
-
/******/ if(!fn) chunkIds = result, fn = () => (__webpack_require__(__webpack_require__.s = moduleId));
|
|
107
|
-
/******/ chunkIds.map(__webpack_require__.e, __webpack_require__)
|
|
108
|
-
/******/ var r = fn();
|
|
109
|
-
/******/ return r === undefined ? result : r;
|
|
110
|
-
/******/ }
|
|
111
|
-
/******/ })();
|
|
112
|
-
/******/
|
|
113
|
-
/******/ /* webpack/runtime/require chunk loading */
|
|
114
|
-
/******/ (() => {
|
|
115
|
-
/******/ // no baseURI
|
|
116
|
-
/******/
|
|
117
|
-
/******/ // object to store loaded chunks
|
|
118
|
-
/******/ // "1" means "loaded", otherwise not loaded yet
|
|
119
|
-
/******/ var installedChunks = {
|
|
120
|
-
/******/ 165: 1
|
|
121
|
-
/******/ };
|
|
122
|
-
/******/
|
|
123
|
-
/******/ // no on chunks loaded
|
|
124
|
-
/******/
|
|
125
|
-
/******/ var installChunk = (chunk) => {
|
|
126
|
-
/******/ var moreModules = chunk.modules, chunkIds = chunk.ids, runtime = chunk.runtime;
|
|
127
|
-
/******/ for(var moduleId in moreModules) {
|
|
128
|
-
/******/ if(__webpack_require__.o(moreModules, moduleId)) {
|
|
129
|
-
/******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
|
|
130
|
-
/******/ }
|
|
131
|
-
/******/ }
|
|
132
|
-
/******/ if(runtime) runtime(__webpack_require__);
|
|
133
|
-
/******/ for(var i = 0; i < chunkIds.length; i++)
|
|
134
|
-
/******/ installedChunks[chunkIds[i]] = 1;
|
|
135
|
-
/******/
|
|
136
|
-
/******/ };
|
|
137
|
-
/******/
|
|
138
|
-
/******/ // require() chunk loading for javascript
|
|
139
|
-
/******/ __webpack_require__.f.require = (chunkId, promises) => {
|
|
140
|
-
/******/ // "1" is the signal for "already loaded"
|
|
141
|
-
/******/ if(!installedChunks[chunkId]) {
|
|
142
|
-
/******/ if(148 == chunkId) {
|
|
143
|
-
/******/ installChunk(require("./chunks/" + __webpack_require__.u(chunkId)));
|
|
144
|
-
/******/ } else installedChunks[chunkId] = 1;
|
|
145
|
-
/******/ }
|
|
146
|
-
/******/ };
|
|
147
|
-
/******/
|
|
148
|
-
/******/ module.exports = __webpack_require__;
|
|
149
|
-
/******/ __webpack_require__.C = installChunk;
|
|
150
|
-
/******/
|
|
151
|
-
/******/ // no HMR
|
|
152
|
-
/******/
|
|
153
|
-
/******/ // no HMR manifest
|
|
154
|
-
/******/ })();
|
|
155
|
-
/******/
|
|
156
|
-
/************************************************************************/
|
|
157
|
-
/******/
|
|
158
|
-
/******/
|
|
159
|
-
/******/ })()
|
|
160
|
-
;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
self.__BUILD_MANIFEST=function(s,e,c,a,t,n,i){return{__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":["static/chunks/pages/index-3eeab7e4014a02ea.js"],"/_error":["static/chunks/pages/_error-5a714c45c50a8db4.js"],"/events":[c,s,e,t,"static/chunks/pages/events-bcad8442f21d6b67.js"],"/events/[name]":[c,s,e,n,a,i,"static/chunks/pages/events/[name]-578828157369b5cd.js"],"/events/[name]/logs":[s,"static/chunks/364-3cb3c8cf1d3c95de.js","static/css/5eeed9cb243ce668.css","static/chunks/pages/events/[name]/logs-d159d7b82f44847f.js"],"/events/[name]/v/[version]":[c,s,e,n,a,i,"static/chunks/pages/events/[name]/v/[version]-963d3e8377b51e86.js"],"/overview":["static/chunks/pages/overview-5ac749891cbe1922.js"],"/services":[s,e,t,"static/chunks/pages/services-bcc61898062e1bf4.js"],"/services/[name]":[c,s,e,a,"static/chunks/pages/services/[name]-8e53e76ab1c52c30.js"],"/users/[id]":[c,e,"static/chunks/pages/users/[id]-2da54ccb6319b207.js"],sortedPages:["/","/_app","/_error","/events","/events/[name]","/events/[name]/logs","/events/[name]/v/[version]","/overview","/services","/services/[name]","/users/[id]"]}}("static/chunks/519-7f22292093abd7c3.js","static/chunks/962-d5070461f6d4a478.js","static/chunks/176cb4e4-8a0f6f010ef8accb.js","static/chunks/336-27e73f1c995ab4e7.js","static/chunks/274-11c4d093341d7201.js","static/chunks/954-4d4a09c3269dda3f.js","static/chunks/873-cd4309ed788ee564.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
self.__SSG_MANIFEST=new Set(["\u002Fevents\u002F[name]","\u002Fservices\u002F[name]"]);self.__SSG_MANIFEST_CB&&self.__SSG_MANIFEST_CB()
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[873],{10873:function(e,n,t){t.r(n),t.d(n,{__N_SSG:function(){return U},default:function(){return F},getComponents:function(){return D}});var r=t(52322),a=t(97729),s=t(23816),l=t(61790),i=t(2784),c=t(63548),o=t(86562),d=t(85411);function u(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function m(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},r=Object.keys(t);"function"===typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),r.forEach((function(n){u(e,n,t[n])}))}return e}function x(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},s=Object.keys(e);for(r=0;r<s.length;r++)t=s[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)t=s[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var f=function(e){var n=e.language,t=e.name,a=void 0===t?"":t,s=x(e,["language","name"]),l=(0,i.useState)(!1),u=l[0],f=l[1];return(0,r.jsxs)("div",{className:"relative group",children:[(0,r.jsx)("button",{type:"button",onClick:function(){(0,d.Z)(s.children),f(!0),setTimeout((function(){return f(!1)}),2e3)},className:"absolute top-2 right-5 text-sm bg-gray-700 text-white rounded-md py-1 px-4 transform transition opacity-0 group-hover:opacity-100",children:u?"Copied":"Copy"}),(0,r.jsx)(o.Z,m({style:c.Z,language:n},s,{wrapLines:!0,children:s.children.replace(/\\n/g,"\n")})),a&&(0,r.jsx)("span",{className:"-mb-2 block text-xs text-right font-bold",children:a})]})};function h(){for(var e=arguments.length,n=new Array(e),t=0;t<e;t++)n[t]=arguments[t];return n.filter(Boolean).join(" ")}var g=function(e){var n=e.title,t=void 0===n?"Examples":n,a=e.description,s=e.examples,l=void 0===s?[]:s,c=e.showLineNumbers,o=l.map((function(e,n){return{name:e.name||"Example ".concat(n+1),content:e.snippet,description:e.description,langugage:e.langugage}})),d=(0,i.useState)(o[0]),u=d[0],m=d[1];return(0,r.jsx)("div",{className:"my-5 examples",children:(0,r.jsxs)("div",{className:"",children:[(0,r.jsx)("h2",{className:"text-lg font-medium text-gray-700 underline",children:t}),a&&(0,r.jsx)("p",{className:"text-md font-medium text-gray-700",children:a}),(0,r.jsxs)("div",{children:[(0,r.jsx)("nav",{className:"-mb-px flex","aria-label":"Tabs",children:o.map((function(e){var n=e.name===u.name;return(0,r.jsxs)("button",{type:"button",onClick:function(){return function(e){m(e)}(e)},className:h(n?"border-green-500 text-green-600 selected":"border-transparent text-gray-500 hover:text-gray-700 hover:border-gray-300","whitespace-nowrap py-4 border-b-2 font-medium text-sm important:no-underline px-8 hover:bg-gray-50 transition"),"aria-current":n?"page":void 0,children:[e.name,(0,r.jsxs)("span",{className:"block text-xs mt-",children:["(",e.langugage,")"]})]},e.name)}))}),(0,r.jsxs)("div",{className:"my-4",children:[(0,r.jsx)(f,{language:u.langugage,showLineNumbers:c,children:u.content}),u.langugage&&(0,r.jsx)("span",{className:"-mb-2 block text-xs text-right font-bold",children:u.name})]})]})]})})},p=t(46892),b=t(62455),v=t(4573),j=t(92021),y=t.n(j),N=t(39097),w=t(17962),O=t(98018),k=t.n(O),E=t(55008);function S(e,n,t,r,a,s,l){try{var i=e[s](l),c=i.value}catch(o){return void t(o)}i.done?n(c):Promise.resolve(c).then(r,a)}var P=function(e){var n,t=e.event,a=e.loadedVersion,s=(0,E.aF)().getUserById,l=t.name,i=t.owners,c=t.producers,o=t.consumers,d=t.historicVersions,u=t.externalLinks,m=(n=y().mark((function e(){var n,r,a,s;return y().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,fetch("/api/event/".concat(t.name,"/download"));case 3:if(404!==(n=e.sent).status){e.next=6;break}throw new Error("Failed to find file");case 6:return e.next=8,n.json();case 8:r=e.sent,a=r.schema,s=r.fileName,k()(a,s),e.next=17;break;case 14:e.prev=14,e.t0=e.catch(0),console.error(e.t0);case 17:case"end":return e.stop()}}),e,null,[[0,14]])})),function(){var e=this,t=arguments;return new Promise((function(r,a){var s=n.apply(e,t);function l(e){S(s,r,a,l,i,"next",e)}function i(e){S(s,r,a,l,i,"throw",e)}l(void 0)}))});return(0,r.jsxs)("aside",{className:"hidden xl:block xl:pl-8",children:[(0,r.jsx)("h2",{className:"sr-only",children:"Details"}),(0,r.jsx)("div",{className:"pt-6 py-6 space-y-8",children:(0,r.jsxs)("div",{children:[(0,r.jsxs)("h2",{className:"text-sm font-medium text-gray-500",children:[(0,r.jsx)(w.FMB,{className:"h-5 w-5 text-green-400 inline-block mr-2","aria-hidden":"true"}),"Producers"]}),(0,r.jsx)("ul",{className:"mt-2 leading-8",children:c.map((function(e){return(0,r.jsx)("li",{className:"inline mr-1",children:(0,r.jsx)(N.default,{href:"/services/".concat(e),children:(0,r.jsxs)("a",{className:"relative inline-flex items-center rounded-full border border-gray-300 px-3 py-0.5",children:[(0,r.jsx)("div",{className:"absolute flex-shrink-0 flex items-center justify-center",children:(0,r.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-green-500 animate animate-pulse","aria-hidden":"true"})}),(0,r.jsx)("div",{className:"ml-3.5 text-sm font-medium text-gray-900",children:e})]})})},e)}))})]})}),(0,r.jsx)("div",{className:"border-t border-gray-200 py-6 space-y-8",children:(0,r.jsxs)("div",{children:[(0,r.jsxs)("h2",{className:"text-sm font-medium text-gray-500",children:[(0,r.jsx)(w.FMB,{className:"h-5 w-5 text-indigo-400 inline-block mr-2","aria-hidden":"true"}),"Consumers"]}),(0,r.jsx)("ul",{className:"mt-2 leading-8",children:o.map((function(e){return(0,r.jsx)("li",{className:"inline",children:(0,r.jsx)(N.default,{href:"/services/".concat(e),children:(0,r.jsxs)("a",{href:"#",className:"relative inline-flex items-center rounded-full border border-gray-300 px-3 py-0.5",children:[(0,r.jsx)("div",{className:"absolute flex-shrink-0 flex items-center justify-center",children:(0,r.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-indigo-500 animate animate-pulse","aria-hidden":"true"})}),(0,r.jsx)("div",{className:"ml-3.5 text-sm font-medium text-gray-900",children:e})]})})},e)}))})]})}),d.length>0&&(0,r.jsx)("div",{className:"border-t border-gray-200 py-6",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-sm font-medium text-gray-500",children:"Event Versions"}),(0,r.jsxs)("ul",{className:"mt-2 leading-8 text-left text-blue-500",children:[(0,r.jsx)("li",{className:"text-sm inline ",children:(0,r.jsx)(N.default,{href:"/events/".concat(l),children:(0,r.jsx)("a",{children:(0,r.jsx)("span",{className:"inline-flex mr-2 items-center px-2.5 py-0.5 rounded-full text-xs font-medium -top-0.5 relative ".concat("latest"===a?"bg-blue-400 text-white shadow-md font-bold underline":"bg-blue-100 text-blue-800"),children:"Latest"})})})}),d.map((function(e){var n=a===e?"bg-blue-400 text-white shadow-md font-bold underline":"bg-blue-100 text-blue-800";return(0,r.jsx)("li",{className:"text-sm inline",children:(0,r.jsx)(N.default,{href:"/events/".concat(l,"/v/").concat(e),children:(0,r.jsx)("a",{children:(0,r.jsxs)("span",{className:"inline-flex mr-2 items-center px-2.5 py-0.5 rounded-full text-xs font-medium -top-0.5 relative ".concat(n),children:["v",e]})})})},e)}))]})]})}),(0,r.jsx)("div",{className:"border-t border-gray-200 py-6 space-y-8",children:(0,r.jsxs)("div",{children:[(0,r.jsx)("h2",{className:"text-sm font-medium text-gray-500",children:"Event Owners"}),(0,r.jsx)("ul",{className:"mt-4 leading-8 space-y-2",children:i.map((function(e){var n=s(e);return n?(0,r.jsx)("li",{className:"flex justify-start",children:(0,r.jsx)(N.default,{href:"/users/".concat(e),children:(0,r.jsxs)("a",{className:"flex items-center space-x-3",children:[(0,r.jsx)("div",{className:"flex-shrink-0",children:(0,r.jsx)("img",{className:"h-5 w-5 rounded-full",src:n.avatarUrl,alt:""})}),(0,r.jsx)("div",{className:"text-sm font-medium text-gray-900",children:n.name})]})})},e):null}))})]})}),(0,r.jsxs)("div",{className:"border-t border-gray-200 py-6 space-y-1",children:[(0,r.jsxs)("button",{type:"button",className:"hidden w-full md:inline-flex h-10 justify-center px-4 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-200 bg-gray-800 hover:bg-gray-600 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-gray-900",onClick:function(){return m()},children:[(0,r.jsx)(w._8t,{className:"-ml-1 mr-2 h-5 w-5 text-gray-200","aria-hidden":"true"}),(0,r.jsx)("span",{children:"Download Schema"})]}),d.length>0&&(0,r.jsx)(N.default,{href:"/events/".concat(l,"/logs"),children:(0,r.jsx)("a",{className:"hidden w-full md:inline-flex h-10 justify-center px-4 py-2 border border-gray-300 shadow-sm text-sm font-medium rounded-md text-gray-800 hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-gray-200",children:(0,r.jsx)("span",{children:"View Changes"})})}),u.length>0&&u.map((function(e){return(0,r.jsxs)("a",{href:e.url,target:"_blank",type:"button",className:"hidden w-full md:inline-flex h-10 justify-center px-4 py-2 border border-teal-300 shadow-sm text-sm font-medium rounded-md text-teal-800 hover:bg-teal-100 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-teal-200",rel:"noreferrer",children:[(0,r.jsx)(w.h0n,{className:"-ml-1 mr-2 h-5 w-5 text-teal-200","aria-hidden":"true"}),(0,r.jsx)("span",{children:"".concat(e.label)})]},e.url)}))]})]})},C=t(4488),Z=t(52428);function _(e,n,t){return n in e?Object.defineProperty(e,n,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[n]=t,e}function V(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{},r=Object.keys(t);"function"===typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),r.forEach((function(n){_(e,n,t[n])}))}return e}function L(e,n){if(null==e)return{};var t,r,a=function(e,n){if(null==e)return{};var t,r,a={},s=Object.keys(e);for(r=0;r<s.length;r++)t=s[r],n.indexOf(t)>=0||(a[t]=e[t]);return a}(e,n);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(r=0;r<s.length;r++)t=s[r],n.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(a[t]=e[t])}return a}var U=!0,D=function(e){var n=e.event,t=e.schema,a=e.examples;return{code:function(e){var n=e.className,t=L(e,["className"]),a=/language-(\w+)/.exec(n||"");return a?(0,r.jsx)(f,V({language:a[1]},t)):(0,r.jsx)("code",V({className:n},t))},Schema:function(e){var a=e.title,s=void 0===a?"Event Schema":a;return t?(0,r.jsxs)("section",{className:"mt-8 xl:mt-10",children:[(0,r.jsx)("h2",{id:"activity-title",className:"text-lg font-medium text-gray-900 underline",children:s}),(0,r.jsx)(f,{language:t.language,showLineNumbers:!1,name:"".concat(n.name," Schema (").concat(t.language,")"),children:t.snippet})]}):null},Admonition:l.Z,EventExamples:function(e){return a.length>0?(0,r.jsx)(g,V({},e,{examples:a,showLineNumbers:!0})):(console.log("You are using the <EventExamples /> component without any examples, please read https://eventcatalog.dev/docs/events/adding-examples for more information"),null)},Mermaid:function(e){var t=e.title;return(0,r.jsxs)("div",{className:"mx-auto w-full py-10",children:[t&&(0,r.jsx)("h2",{className:"text-lg font-medium text-gray-900 underline",children:t}),(0,r.jsx)(v.Z,{source:"event",data:n,rootNodeColor:(0,p.Z)(n.name)})]})}}};function F(e){var n=e.event,t=e.markdown,l=e.loadedVersion,i=e.notFound,c=(0,E.wG)(),o=c.getEditUrl,d=c.hasEditUrl,u=n.name,m=n.summary,x=n.draft,f=n.schema,h=n.examples,g=n.version;if(i)return(0,r.jsx)(C.Z,{type:"event",name:n.name,editUrl:d?o("/events/".concat(u,"/index.md")):""});var p=t.lastModifiedDate,v=[{name:"Events",href:"/events",current:!1},{name:u,href:"/services/".concat(u),current:!0}],j=D({event:n,schema:f,examples:h});return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(a.default,{children:(0,r.jsxs)("title",{children:[u," v",g]})}),(0,r.jsx)(b.Z,{title:u,editUrl:d?o("/events/".concat(u,"/index.md")):"",subtitle:m,draft:x,lastModifiedDate:p,tags:[{label:"v".concat(g)}],breadCrumbs:(0,r.jsx)(Z.Z,{pages:v}),isOldVersion:"latest"!==l,latestVersionUrl:"/events/".concat(u),version:l,sidebar:(0,r.jsx)(P,{event:n,loadedVersion:l}),children:(0,r.jsx)(s.R,V({},t.source,{components:j}))})]})}}}]);
|