@eventcatalog/visualiser 3.20.2 → 3.21.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/dist/index.js CHANGED
@@ -2881,7 +2881,7 @@ function GlowHandle10({ side }) {
2881
2881
  width: 12,
2882
2882
  height: 12,
2883
2883
  borderRadius: "50%",
2884
- background: "linear-gradient(135deg, #3b82f6, #2563eb)",
2884
+ background: "linear-gradient(135deg, #6366f1, #4f46e5)",
2885
2885
  border: "2px solid rgb(var(--ec-page-bg))",
2886
2886
  zIndex: 20,
2887
2887
  animation: "ec-data-handle-pulse 2s ease-in-out infinite",
@@ -2928,7 +2928,7 @@ function PostItData(props) {
2928
2928
  {
2929
2929
  className: classNames6(
2930
2930
  "relative min-w-44 max-w-56 min-h-[120px]",
2931
- props?.selected ? "ring-2 ring-blue-400/60 ring-offset-1" : ""
2931
+ props?.selected ? "ring-2 ring-indigo-400/60 ring-offset-1" : ""
2932
2932
  ),
2933
2933
  children: [
2934
2934
  /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
@@ -2953,10 +2953,10 @@ function PostItData(props) {
2953
2953
  {
2954
2954
  className: "absolute inset-0",
2955
2955
  style: {
2956
- background: "linear-gradient(135deg, #bfdbfe 0%, #93c5fd 40%, #3b82f6 100%)",
2956
+ background: "linear-gradient(135deg, #c7d2fe 0%, #a5b4fc 40%, #6366f1 100%)",
2957
2957
  boxShadow: "1px 1px 3px rgba(0,0,0,0.15), 3px 4px 8px rgba(0,0,0,0.08)",
2958
2958
  transform: "rotate(-1deg)",
2959
- border: deprecated ? "2px dashed rgba(239, 68, 68, 0.5)" : draft ? "2px dashed rgba(59, 130, 246, 0.5)" : "none"
2959
+ border: deprecated ? "2px dashed rgba(239, 68, 68, 0.5)" : draft ? "2px dashed rgba(99, 102, 241, 0.5)" : "none"
2960
2960
  },
2961
2961
  children: [
2962
2962
  /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { style: FOLDED_CORNER_SHADOW_STYLE }),
@@ -2971,7 +2971,7 @@ function PostItData(props) {
2971
2971
  height: 0,
2972
2972
  borderStyle: "solid",
2973
2973
  borderWidth: "18px 0 0 18px",
2974
- borderColor: "#2563eb transparent transparent transparent",
2974
+ borderColor: "#4f46e5 transparent transparent transparent",
2975
2975
  opacity: 0.3
2976
2976
  }
2977
2977
  }
@@ -2982,8 +2982,14 @@ function PostItData(props) {
2982
2982
  /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "relative px-3.5 py-3", children: [
2983
2983
  /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "flex items-center justify-between mb-2", children: [
2984
2984
  /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "flex items-center gap-1", children: [
2985
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react9.Database, { className: "w-3 h-3 text-blue-900/50", strokeWidth: 2.5 }),
2986
- /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "text-[8px] font-bold text-blue-900/50 uppercase tracking-widest", children: "Data" })
2985
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
2986
+ import_lucide_react9.Database,
2987
+ {
2988
+ className: "w-3 h-3 text-indigo-950/50",
2989
+ strokeWidth: 2.5
2990
+ }
2991
+ ),
2992
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "text-[8px] font-bold text-indigo-950/50 uppercase tracking-widest", children: "Data" })
2987
2993
  ] }),
2988
2994
  draft && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "text-[8px] font-extrabold text-amber-900 bg-amber-100 border border-dashed border-amber-400 px-1.5 py-0.5 rounded uppercase", children: "Draft" }),
2989
2995
  deprecated && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("span", { className: "text-[7px] font-bold text-white bg-red-500 border border-red-600 px-1.5 py-0.5 rounded uppercase", children: "Deprecated" })
@@ -3002,20 +3008,20 @@ function PostItData(props) {
3002
3008
  {
3003
3009
  className: classNames6(
3004
3010
  "text-[13px] font-bold leading-snug min-w-0 truncate",
3005
- deprecated ? "text-blue-950/40 line-through" : "text-blue-950"
3011
+ deprecated ? "text-indigo-950/40 line-through" : "text-indigo-950"
3006
3012
  ),
3007
3013
  children: name
3008
3014
  }
3009
3015
  )
3010
3016
  ] }),
3011
- version && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "text-[9px] text-blue-900/40 font-semibold mt-0.5", children: [
3017
+ version && /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "text-[9px] text-indigo-950/40 font-semibold mt-0.5", children: [
3012
3018
  "v",
3013
3019
  version
3014
3020
  ] }),
3015
3021
  mode === "full" && summary && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3016
3022
  "div",
3017
3023
  {
3018
- className: "mt-2 pt-1.5 border-t border-blue-900/10 text-[9px] text-blue-950/60 leading-relaxed overflow-hidden",
3024
+ className: "mt-2 pt-1.5 border-t border-indigo-950/10 text-[9px] text-indigo-950/60 leading-relaxed overflow-hidden",
3019
3025
  style: LINE_CLAMP_STYLE,
3020
3026
  title: summary,
3021
3027
  children: summary
@@ -3053,12 +3059,12 @@ function DefaultData(props) {
3053
3059
  {
3054
3060
  className: classNames6(
3055
3061
  "relative min-w-48 max-w-60 rounded-xl border-2 overflow-visible",
3056
- props?.selected ? "ring-2 ring-blue-400/60 ring-offset-2" : "",
3057
- deprecated ? "border-dashed border-red-500" : draft ? `border-dashed ${isDark ? "border-blue-400" : "border-blue-400/60"}` : "border-blue-500"
3062
+ props?.selected ? "ring-2 ring-indigo-400/60 ring-offset-2" : "",
3063
+ deprecated ? "border-dashed border-red-500" : draft ? `border-dashed ${isDark ? "border-indigo-400" : "border-indigo-400/60"}` : "border-indigo-500"
3058
3064
  ),
3059
3065
  style: {
3060
- background: deprecated ? `repeating-linear-gradient(135deg, transparent, transparent 6px, ${deprecatedStripe} 6px, ${deprecatedStripe} 7px), var(--ec-data-node-bg, rgb(var(--ec-card-bg)))` : draft ? `repeating-linear-gradient(135deg, transparent, transparent 4px, ${isDark ? "rgba(59,130,246,0.25)" : "rgba(59,130,246,0.15)"} 4px, ${isDark ? "rgba(59,130,246,0.25)" : "rgba(59,130,246,0.15)"} 4.5px), repeating-linear-gradient(45deg, transparent, transparent 4px, ${isDark ? "rgba(59,130,246,0.25)" : "rgba(59,130,246,0.15)"} 4px, ${isDark ? "rgba(59,130,246,0.25)" : "rgba(59,130,246,0.15)"} 4.5px), var(--ec-data-node-bg, rgb(var(--ec-card-bg)))` : "var(--ec-data-node-bg, rgb(var(--ec-card-bg)))",
3061
- boxShadow: "0 2px 12px rgba(59, 130, 246, 0.15)"
3066
+ background: deprecated ? `repeating-linear-gradient(135deg, transparent, transparent 6px, ${deprecatedStripe} 6px, ${deprecatedStripe} 7px), var(--ec-data-node-bg, rgb(var(--ec-card-bg)))` : draft ? `repeating-linear-gradient(135deg, transparent, transparent 4px, ${isDark ? "rgba(99,102,241,0.25)" : "rgba(99,102,241,0.15)"} 4px, ${isDark ? "rgba(99,102,241,0.25)" : "rgba(99,102,241,0.15)"} 4.5px), repeating-linear-gradient(45deg, transparent, transparent 4px, ${isDark ? "rgba(99,102,241,0.25)" : "rgba(99,102,241,0.15)"} 4px, ${isDark ? "rgba(99,102,241,0.25)" : "rgba(99,102,241,0.15)"} 4.5px), var(--ec-data-node-bg, rgb(var(--ec-card-bg)))` : "var(--ec-data-node-bg, rgb(var(--ec-card-bg)))",
3067
+ boxShadow: "0 2px 12px rgba(99, 102, 241, 0.15)"
3062
3068
  },
3063
3069
  children: [
3064
3070
  /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
@@ -3085,7 +3091,7 @@ function DefaultData(props) {
3085
3091
  {
3086
3092
  className: classNames6(
3087
3093
  "inline-flex items-center gap-1 text-[7px] font-bold uppercase tracking-widest text-white px-1.5 py-0.5 rounded shadow-sm",
3088
- deprecated ? "bg-red-500" : "bg-blue-500"
3094
+ deprecated ? "bg-red-500" : "bg-indigo-500"
3089
3095
  ),
3090
3096
  children: [
3091
3097
  /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react9.Database, { className: "w-2.5 h-2.5", strokeWidth: 2.5 }),
@@ -3098,7 +3104,7 @@ function DefaultData(props) {
3098
3104
  typeLabel && /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
3099
3105
  "span",
3100
3106
  {
3101
- className: "z-10 text-[7px] font-semibold text-[rgb(var(--ec-page-text))] bg-[rgb(var(--ec-card-bg))] border border-blue-500 rounded-full px-1.5 py-0.5 uppercase tracking-wide",
3107
+ className: "z-10 text-[7px] font-semibold text-[rgb(var(--ec-page-text))] bg-[rgb(var(--ec-card-bg))] border border-indigo-500 rounded-full px-1.5 py-0.5 uppercase tracking-wide",
3102
3108
  style: { position: "absolute", top: -8, right: 10 },
3103
3109
  children: typeLabel
3104
3110
  }
@@ -3135,9 +3141,9 @@ function DefaultData(props) {
3135
3141
  OwnerIndicator,
3136
3142
  {
3137
3143
  owners: ownersNormalized,
3138
- accentColor: "bg-blue-400",
3139
- borderColor: "rgba(59,130,246,0.08)",
3140
- iconClass: "text-blue-300"
3144
+ accentColor: "bg-indigo-400",
3145
+ borderColor: "rgba(99,102,241,0.08)",
3146
+ iconClass: "text-indigo-300"
3141
3147
  }
3142
3148
  )
3143
3149
  ] })
@@ -3159,7 +3165,7 @@ var import_lucide_react10 = require("lucide-react");
3159
3165
  var config_default2 = {
3160
3166
  type: "data",
3161
3167
  icon: import_lucide_react10.Database,
3162
- color: "blue",
3168
+ color: "indigo",
3163
3169
  targetCanConnectTo: [...SERVICE, ...CHANNEL, "external-system", ...ACTOR],
3164
3170
  sourceCanConnectTo: [...SERVICE, ...CHANNEL, "external-system", ...ACTOR],
3165
3171
  validateConnection: (connection) => {
@@ -6781,8 +6787,7 @@ var StepWalkthrough_default = (0, import_react62.memo)(function StepWalkthrough(
6781
6787
  nodes,
6782
6788
  edges,
6783
6789
  isFlowVisualization,
6784
- onStepChange,
6785
- mode = "full"
6790
+ onStepChange
6786
6791
  }) {
6787
6792
  const [currentNodeId, setCurrentNodeId] = (0, import_react62.useState)(null);
6788
6793
  const [pathHistory, setPathHistory] = (0, import_react62.useState)([]);
@@ -6902,7 +6907,7 @@ var StepWalkthrough_default = (0, import_react62.memo)(function StepWalkthrough(
6902
6907
  setPathHistory([]);
6903
6908
  onStepChange(null, [], true);
6904
6909
  }, [onStepChange]);
6905
- if (!isFlowVisualization || nodes.length === 0 || mode !== "full") {
6910
+ if (!isFlowVisualization || nodes.length === 0) {
6906
6911
  return null;
6907
6912
  }
6908
6913
  const { title, description } = (0, import_react62.useMemo)(() => {
@@ -11769,6 +11774,9 @@ var NodeGraphBuilder = ({
11769
11774
  () => edges.some((edge) => edge.type === "flow-edge"),
11770
11775
  [edges]
11771
11776
  );
11777
+ const isCompactMenuButton = !title;
11778
+ const menuButtonClassName = isCompactMenuButton ? "h-9 w-9 p-0 bg-[rgb(var(--ec-card-bg))] hover:bg-[rgb(var(--ec-accent-subtle))] border border-[rgb(var(--ec-page-border))] rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-[rgb(var(--ec-accent))] flex items-center justify-center transition-colors duration-150 hover:border-[rgb(var(--ec-accent)/0.3)] group" : "py-2.5 px-4 bg-[rgb(var(--ec-card-bg))] hover:bg-[rgb(var(--ec-accent-subtle))] border border-[rgb(var(--ec-page-border))] rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-[rgb(var(--ec-accent))] flex items-center gap-3 transition-colors duration-150 hover:border-[rgb(var(--ec-accent)/0.3)] group whitespace-nowrap";
11779
+ const menuIconClassName = isCompactMenuButton ? "h-4 w-4 text-[rgb(var(--ec-page-text-muted))] flex-shrink-0 group-hover:text-[rgb(var(--ec-accent))] transition-colors duration-150" : "h-5 w-5 text-[rgb(var(--ec-page-text-muted))] flex-shrink-0 group-hover:text-[rgb(var(--ec-accent))] transition-colors duration-150";
11772
11780
  return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
11773
11781
  "div",
11774
11782
  {
@@ -11788,11 +11796,11 @@ var NodeGraphBuilder = ({
11788
11796
  /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(DropdownMenu2.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
11789
11797
  "button",
11790
11798
  {
11791
- className: "py-2.5 px-4 bg-[rgb(var(--ec-page-bg))] hover:bg-[rgb(var(--ec-accent-subtle)/0.4)] border border-[rgb(var(--ec-page-border))] rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-[rgb(var(--ec-accent))] flex items-center gap-3 transition-all duration-200 hover:border-[rgb(var(--ec-accent)/0.3)] group whitespace-nowrap",
11799
+ className: menuButtonClassName,
11792
11800
  "aria-label": "Open menu",
11793
11801
  children: [
11794
11802
  title && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "text-base font-medium text-[rgb(var(--ec-page-text))] leading-tight", children: title }),
11795
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react32.MoreVertical, { className: "h-5 w-5 text-[rgb(var(--ec-page-text-muted))] flex-shrink-0 group-hover:text-[rgb(var(--ec-accent))] transition-colors duration-150" })
11803
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react32.MoreVertical, { className: menuIconClassName })
11796
11804
  ]
11797
11805
  }
11798
11806
  ) }),
@@ -11890,11 +11898,11 @@ var NodeGraphBuilder = ({
11890
11898
  /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(DropdownMenu2.Trigger, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
11891
11899
  "button",
11892
11900
  {
11893
- className: "py-2.5 px-4 bg-[rgb(var(--ec-page-bg))] hover:bg-[rgb(var(--ec-accent-subtle)/0.4)] border border-[rgb(var(--ec-page-border))] rounded-md focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-[rgb(var(--ec-accent))] flex items-center gap-3 transition-all duration-200 hover:border-[rgb(var(--ec-accent)/0.3)] group whitespace-nowrap",
11901
+ className: menuButtonClassName,
11894
11902
  "aria-label": "Open menu",
11895
11903
  children: [
11896
11904
  title && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("span", { className: "text-base font-medium text-[rgb(var(--ec-page-text))] leading-tight", children: title }),
11897
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react32.MoreVertical, { className: "h-5 w-5 text-[rgb(var(--ec-page-text-muted))] flex-shrink-0 group-hover:text-[rgb(var(--ec-accent))] transition-colors duration-150" })
11905
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react32.MoreVertical, { className: menuIconClassName })
11898
11906
  ]
11899
11907
  }
11900
11908
  ) }),