likec4 1.38.1 → 1.39.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/__app__/src/main.js +478 -402
- package/__app__/src/style.css +1 -1
- package/dist/cli/index.mjs +639 -848
- package/dist/config/index.d.mts +52 -0
- package/dist/config/index.mjs +1 -0
- package/dist/index.d.mts +6 -3
- package/dist/index.mjs +2 -2
- package/dist/shared/likec4.C8DLF79h.d.mts +1660 -0
- package/dist/shared/{likec4.CunVXntg.mjs → likec4.C_KAHtJX.mjs} +2791 -2825
- package/dist/shared/likec4.D0i_9Zhl.mjs +257 -0
- package/dist/shared/likec4.DfOb2tZw.mjs +143 -0
- package/dist/shared/{likec4.B2TmMA5i.d.mts → likec4.yf56CCfj.d.mts} +655 -2308
- package/dist/vite-plugin/index.d.mts +9 -2
- package/dist/vite-plugin/index.mjs +2 -2
- package/icons/all.d.ts +25 -0
- package/icons/all.js +50 -0
- package/icons/azure/ai-at-edge.js +1 -0
- package/icons/azure/azure-consumption-commitment.js +1 -0
- package/icons/azure/azure-managed-redis.js +1 -0
- package/icons/azure/breeze.js +1 -0
- package/icons/azure/data-virtualization.js +1 -0
- package/icons/azure/edge-actions.js +1 -0
- package/icons/azure/edge-storage-accelerator.js +1 -0
- package/icons/azure/engage-center-connect.js +1 -0
- package/icons/azure/external-id-modified.js +1 -0
- package/icons/azure/external-id.js +1 -0
- package/icons/azure/frd-qa.js +1 -0
- package/icons/azure/hybrid-connectivity-hub.js +1 -0
- package/icons/azure/landing-zone.js +1 -0
- package/icons/azure/load-balancer-hub.js +1 -1
- package/icons/azure/logic-apps-template.js +1 -0
- package/icons/azure/network-foundation-hub.js +1 -0
- package/icons/azure/network-security-hub.js +1 -0
- package/icons/azure/planetary-computer-pro.js +1 -0
- package/icons/azure/promethus.js +1 -0
- package/icons/azure/service-group-relationships.js +1 -0
- package/icons/azure/service-groups.js +1 -0
- package/icons/azure/sql-database-fleet-manager.js +1 -0
- package/icons/azure/storage-hubs.js +1 -0
- package/icons/azure/toolchain-orchestrator.js +1 -0
- package/icons/azure/vpnclient-windows.js +1 -0
- package/icons/azure/workload-orchestration.js +1 -0
- package/package.json +46 -27
- package/react/index.d.mts +237 -222
- package/react/index.mjs +35 -35
- package/dist/shared/likec4.DkfFVqY-.mjs +0 -257
package/__app__/src/main.js
CHANGED
|
@@ -6,8 +6,9 @@ import { projects } from "likec4:projects";
|
|
|
6
6
|
import * as ReactDOM from "react-dom";
|
|
7
7
|
import ReactDOM__default, { flushSync, createPortal } from "react-dom";
|
|
8
8
|
import { pageTitle, ComponentName, useHashHistory, withOverviewGraph, krokiPumlSvgUrl, isDevelopment, krokiD2SvgUrl, basepath } from "./const.js";
|
|
9
|
-
import { isTagColorSpecified, invariant as invariant$
|
|
10
|
-
import {
|
|
9
|
+
import { isTagColorSpecified, nonexhaustive, invariant as invariant$3, isStepEdgeId, extractStep, nonNullable, defaultTheme, ElementShapes, RichText, ancestorsFqn, nameFromFqn, isAncestor as isAncestor$1, ThemeColors, Queue, whereOperatorAsPredicate, GroupElementKind, BBox, getParallelStepsPrefix } from "@likec4/core";
|
|
10
|
+
import { invariant as invariant$2, toArray, ifirst, ifilter, compareNaturalHierarchically, nonexhaustive as nonexhaustive$1, compareNatural, ifind, nonNullable as nonNullable$1, DefaultMap, isAncestor, sortParentsFirst, nameFromFqn as nameFromFqn$1, delay as delay$1, isDescendantOf } from "@likec4/core/utils";
|
|
11
|
+
import { DefaultShapeSize, DefaultTextSize, DefaultPaddingSize, RichText as RichText$1 } from "@likec4/core/types";
|
|
11
12
|
import { computeRelationshipsView, treeFromElements as treeFromElements$1 } from "@likec4/core/compute-view/relationships";
|
|
12
13
|
import { normalizeViewPath, VIEW_FOLDERS_SEPARATOR, modelConnection } from "@likec4/core/model";
|
|
13
14
|
var __assign = function() {
|
|
@@ -1329,10 +1330,10 @@ function useHotkeys(hotkeys, tagsToIgnore = ["INPUT", "TEXTAREA", "SELECT"], tri
|
|
|
1329
1330
|
}, [hotkeys]);
|
|
1330
1331
|
}
|
|
1331
1332
|
function useHover$1() {
|
|
1332
|
-
const [hovered,
|
|
1333
|
-
|
|
1333
|
+
const [hovered, setHovered] = useState(!1), previousNode = useRef(null), handleMouseEnter = useCallback(() => {
|
|
1334
|
+
setHovered(!0);
|
|
1334
1335
|
}, []), handleMouseLeave = useCallback(() => {
|
|
1335
|
-
|
|
1336
|
+
setHovered(!1);
|
|
1336
1337
|
}, []);
|
|
1337
1338
|
return { ref: useCallback(
|
|
1338
1339
|
(node2) => {
|
|
@@ -4473,12 +4474,8 @@ function getWindowScrollBarX(element, rect) {
|
|
|
4473
4474
|
const leftScroll = getNodeScroll(element).scrollLeft;
|
|
4474
4475
|
return rect ? rect.left + leftScroll : getBoundingClientRect(getDocumentElement(element)).left + leftScroll;
|
|
4475
4476
|
}
|
|
4476
|
-
function getHTMLOffset(documentElement, scroll
|
|
4477
|
-
|
|
4478
|
-
const htmlRect = documentElement.getBoundingClientRect(), x2 = htmlRect.left + scroll.scrollLeft - (ignoreScrollbarX ? 0 : (
|
|
4479
|
-
// RTL <body> scrollbar.
|
|
4480
|
-
getWindowScrollBarX(documentElement, htmlRect)
|
|
4481
|
-
)), y2 = htmlRect.top + scroll.scrollTop;
|
|
4477
|
+
function getHTMLOffset(documentElement, scroll) {
|
|
4478
|
+
const htmlRect = documentElement.getBoundingClientRect(), x2 = htmlRect.left + scroll.scrollLeft - getWindowScrollBarX(documentElement, htmlRect), y2 = htmlRect.top + scroll.scrollTop;
|
|
4482
4479
|
return {
|
|
4483
4480
|
x: x2,
|
|
4484
4481
|
y: y2
|
|
@@ -4503,7 +4500,7 @@ function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
|
|
|
4503
4500
|
const offsetRect = getBoundingClientRect(offsetParent);
|
|
4504
4501
|
scale2 = getScale(offsetParent), offsets.x = offsetRect.x + offsetParent.clientLeft, offsets.y = offsetRect.y + offsetParent.clientTop;
|
|
4505
4502
|
}
|
|
4506
|
-
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll
|
|
4503
|
+
const htmlOffset = documentElement && !isOffsetParentAnElement && !isFixed ? getHTMLOffset(documentElement, scroll) : createCoords(0);
|
|
4507
4504
|
return {
|
|
4508
4505
|
width: rect.width * scale2.x,
|
|
4509
4506
|
height: rect.height * scale2.y,
|
|
@@ -4525,6 +4522,7 @@ function getDocumentRect(element) {
|
|
|
4525
4522
|
y: y2
|
|
4526
4523
|
};
|
|
4527
4524
|
}
|
|
4525
|
+
const SCROLLBAR_MAX = 25;
|
|
4528
4526
|
function getViewportRect(element, strategy) {
|
|
4529
4527
|
const win2 = getWindow(element), html = getDocumentElement(element), visualViewport = win2.visualViewport;
|
|
4530
4528
|
let width = html.clientWidth, height = html.clientHeight, x2 = 0, y2 = 0;
|
|
@@ -4533,6 +4531,11 @@ function getViewportRect(element, strategy) {
|
|
|
4533
4531
|
const visualViewportBased = isWebKit();
|
|
4534
4532
|
(!visualViewportBased || visualViewportBased && strategy === "fixed") && (x2 = visualViewport.offsetLeft, y2 = visualViewport.offsetTop);
|
|
4535
4533
|
}
|
|
4534
|
+
const windowScrollbarX = getWindowScrollBarX(html);
|
|
4535
|
+
if (windowScrollbarX <= 0) {
|
|
4536
|
+
const doc = html.ownerDocument, body2 = doc.body, bodyStyles = getComputedStyle(body2), bodyMarginInline = doc.compatMode === "CSS1Compat" && parseFloat(bodyStyles.marginLeft) + parseFloat(bodyStyles.marginRight) || 0, clippingStableScrollbarWidth = Math.abs(html.clientWidth - body2.clientWidth - bodyMarginInline);
|
|
4537
|
+
clippingStableScrollbarWidth <= SCROLLBAR_MAX && (width -= clippingStableScrollbarWidth);
|
|
4538
|
+
} else windowScrollbarX <= SCROLLBAR_MAX && (width += windowScrollbarX);
|
|
4536
4539
|
return {
|
|
4537
4540
|
width,
|
|
4538
4541
|
height,
|
|
@@ -4850,7 +4853,7 @@ function useFloating$1(options) {
|
|
|
4850
4853
|
transform: transform2 = !0,
|
|
4851
4854
|
whileElementsMounted,
|
|
4852
4855
|
open
|
|
4853
|
-
} = options, [data,
|
|
4856
|
+
} = options, [data, setData] = React.useState({
|
|
4854
4857
|
x: 0,
|
|
4855
4858
|
y: 0,
|
|
4856
4859
|
strategy,
|
|
@@ -4881,12 +4884,12 @@ function useFloating$1(options) {
|
|
|
4881
4884
|
isPositioned: openRef.current !== !1
|
|
4882
4885
|
};
|
|
4883
4886
|
isMountedRef.current && !deepEqual$2(dataRef.current, fullData) && (dataRef.current = fullData, ReactDOM.flushSync(() => {
|
|
4884
|
-
|
|
4887
|
+
setData(fullData);
|
|
4885
4888
|
}));
|
|
4886
4889
|
});
|
|
4887
4890
|
}, [latestMiddleware, placement, strategy, platformRef, openRef]);
|
|
4888
4891
|
index$2(() => {
|
|
4889
|
-
open === !1 && dataRef.current.isPositioned && (dataRef.current.isPositioned = !1,
|
|
4892
|
+
open === !1 && dataRef.current.isPositioned && (dataRef.current.isPositioned = !1, setData((data2) => ({
|
|
4890
4893
|
...data2,
|
|
4891
4894
|
isPositioned: !1
|
|
4892
4895
|
})));
|
|
@@ -6184,10 +6187,10 @@ ScrollAreaScrollbar.displayName = "@mantine/core/ScrollAreaScrollbar";
|
|
|
6184
6187
|
function addUnlinkedScrollListener(node2, handler = () => {
|
|
6185
6188
|
}) {
|
|
6186
6189
|
let prevPosition = { left: node2.scrollLeft, top: node2.scrollTop }, rAF = 0;
|
|
6187
|
-
return function loop() {
|
|
6190
|
+
return (function loop() {
|
|
6188
6191
|
const position = { left: node2.scrollLeft, top: node2.scrollTop }, isHorizontalScroll = prevPosition.left !== position.left, isVerticalScroll = prevPosition.top !== position.top;
|
|
6189
6192
|
(isHorizontalScroll || isVerticalScroll) && handler(), prevPosition = position, rAF = window.requestAnimationFrame(loop);
|
|
6190
|
-
}(), () => window.cancelAnimationFrame(rAF);
|
|
6193
|
+
})(), () => window.cancelAnimationFrame(rAF);
|
|
6191
6194
|
}
|
|
6192
6195
|
const Thumb$1 = forwardRef((props2, forwardedRef) => {
|
|
6193
6196
|
const { style: style2, ...others } = props2, scrollAreaContext = useScrollAreaContext(), scrollbarContext = useScrollbarContext(), { onThumbPositionChange } = scrollbarContext, composedRef = useMergedRef(forwardedRef, (node2) => scrollbarContext.onThumbChange(node2)), removeUnlinkedScrollListenerRef = useRef(void 0), debounceScrollEnd = useDebouncedCallback$1(() => {
|
|
@@ -11120,12 +11123,12 @@ function getDefaultExportFromCjs(x2) {
|
|
|
11120
11123
|
}
|
|
11121
11124
|
var useIsomorphicLayoutEffect_cjs = {}, hasRequiredUseIsomorphicLayoutEffect_cjs;
|
|
11122
11125
|
function requireUseIsomorphicLayoutEffect_cjs() {
|
|
11123
|
-
return hasRequiredUseIsomorphicLayoutEffect_cjs || (hasRequiredUseIsomorphicLayoutEffect_cjs = 1, function(exports) {
|
|
11126
|
+
return hasRequiredUseIsomorphicLayoutEffect_cjs || (hasRequiredUseIsomorphicLayoutEffect_cjs = 1, (function(exports) {
|
|
11124
11127
|
Object.defineProperty(exports, "__esModule", { value: !0 });
|
|
11125
11128
|
var react = React__default, isClient = typeof document < "u", noop2 = function() {
|
|
11126
11129
|
}, index2 = isClient ? react.useLayoutEffect : noop2;
|
|
11127
11130
|
exports.default = index2;
|
|
11128
|
-
}(useIsomorphicLayoutEffect_cjs)), useIsomorphicLayoutEffect_cjs;
|
|
11131
|
+
})(useIsomorphicLayoutEffect_cjs)), useIsomorphicLayoutEffect_cjs;
|
|
11129
11132
|
}
|
|
11130
11133
|
var classes$g = { root: "m_6e45937b", loader: "m_e8eb006c", overlay: "m_df587f17" };
|
|
11131
11134
|
const defaultProps$i = {
|
|
@@ -13184,7 +13187,7 @@ const defaultProps$5 = {
|
|
|
13184
13187
|
vars,
|
|
13185
13188
|
varsResolver: varsResolver$6,
|
|
13186
13189
|
unstyled
|
|
13187
|
-
}), { dir } = useDirection(), [hovered,
|
|
13190
|
+
}), { dir } = useDirection(), [hovered, setHovered] = useState(!1), [_value, setValue] = useUncontrolled({
|
|
13188
13191
|
value: typeof value == "number" ? clamp$4(value, min2, max2) : value,
|
|
13189
13192
|
defaultValue: typeof defaultValue == "number" ? clamp$4(defaultValue, min2, max2) : defaultValue,
|
|
13190
13193
|
finalValue: clamp$4(0, min2, max2),
|
|
@@ -13321,8 +13324,8 @@ const defaultProps$5 = {
|
|
|
13321
13324
|
disabled,
|
|
13322
13325
|
containerProps: {
|
|
13323
13326
|
ref: container2,
|
|
13324
|
-
onMouseEnter: showLabelOnHover ? () =>
|
|
13325
|
-
onMouseLeave: showLabelOnHover ? () =>
|
|
13327
|
+
onMouseEnter: showLabelOnHover ? () => setHovered(!0) : void 0,
|
|
13328
|
+
onMouseLeave: showLabelOnHover ? () => setHovered(!1) : void 0
|
|
13326
13329
|
},
|
|
13327
13330
|
children: /* @__PURE__ */ jsx(
|
|
13328
13331
|
Thumb,
|
|
@@ -14019,9 +14022,9 @@ function useTree({
|
|
|
14019
14022
|
onNodeCollapse,
|
|
14020
14023
|
onNodeExpand
|
|
14021
14024
|
} = {}) {
|
|
14022
|
-
const [data,
|
|
14025
|
+
const [data, setData] = useState([]), [expandedState, setExpandedState] = useState(initialExpandedState), [selectedState, setSelectedState] = useState(initialSelectedState), [checkedState, setCheckedState] = useState(initialCheckedState), [anchorNode, setAnchorNode] = useState(null), [hoveredNode, setHoveredNode2] = useState(null), initialize = useCallback(
|
|
14023
14026
|
(_data) => {
|
|
14024
|
-
setExpandedState((current) => getInitialTreeExpandedState(current, _data, selectedState)), setCheckedState((current) => getInitialCheckedState(current, _data)),
|
|
14027
|
+
setExpandedState((current) => getInitialTreeExpandedState(current, _data, selectedState)), setCheckedState((current) => getInitialCheckedState(current, _data)), setData(_data);
|
|
14025
14028
|
},
|
|
14026
14029
|
[selectedState, checkedState]
|
|
14027
14030
|
), toggleExpanded = useCallback(
|
|
@@ -16015,7 +16018,7 @@ class RouterCore {
|
|
|
16015
16018
|
const route = this.looseRoutesById[d2.routeId];
|
|
16016
16019
|
if (!route.options.loader)
|
|
16017
16020
|
return !0;
|
|
16018
|
-
const gcTime = (d2.preload ? route.options.preloadGcTime ?? this.options.defaultPreloadGcTime : route.options.gcTime ?? this.options.defaultGcTime) ??
|
|
16021
|
+
const gcTime = (d2.preload ? route.options.preloadGcTime ?? this.options.defaultPreloadGcTime : route.options.gcTime ?? this.options.defaultGcTime) ?? 300 * 1e3;
|
|
16019
16022
|
return !(d2.status !== "error" && Date.now() - d2.updatedAt < gcTime);
|
|
16020
16023
|
};
|
|
16021
16024
|
this.clearCache({ filter: filter2 });
|
|
@@ -21703,12 +21706,12 @@ class VisualElementDragControls {
|
|
|
21703
21706
|
isRefObject(dragConstraints) && dragConstraints.current && (this.constraints = this.resolveRefConstraints());
|
|
21704
21707
|
}, { projection } = this.visualElement, stopMeasureLayoutListener = projection.addEventListener("measure", measureDragConstraints);
|
|
21705
21708
|
projection && !projection.layout && (projection.root && projection.root.updateScroll(), projection.updateLayout()), frame$1.read(measureDragConstraints);
|
|
21706
|
-
const stopResizeListener = addDomEvent(window, "resize", () => this.scalePositionWithinConstraints()), stopLayoutUpdateListener = projection.addEventListener("didUpdate", ({ delta, hasLayoutChanged }) => {
|
|
21709
|
+
const stopResizeListener = addDomEvent(window, "resize", () => this.scalePositionWithinConstraints()), stopLayoutUpdateListener = projection.addEventListener("didUpdate", (({ delta, hasLayoutChanged }) => {
|
|
21707
21710
|
this.isDragging && hasLayoutChanged && (eachAxis((axis) => {
|
|
21708
21711
|
const motionValue2 = this.getAxisMotionValue(axis);
|
|
21709
21712
|
motionValue2 && (this.originPoint[axis] += delta[axis].translate, motionValue2.set(motionValue2.get() + delta[axis].translate));
|
|
21710
21713
|
}), this.visualElement.render());
|
|
21711
|
-
});
|
|
21714
|
+
}));
|
|
21712
21715
|
return () => {
|
|
21713
21716
|
stopResizeListener(), stopPointerListener(), stopMeasureLayoutListener(), stopLayoutUpdateListener && stopLayoutUpdateListener();
|
|
21714
21717
|
};
|
|
@@ -24742,7 +24745,7 @@ function nogamma(a2, b2) {
|
|
|
24742
24745
|
var d2 = b2 - a2;
|
|
24743
24746
|
return d2 ? linear(a2, d2) : constant$2(isNaN(a2) ? b2 : a2);
|
|
24744
24747
|
}
|
|
24745
|
-
const interpolateRgb = function rgbGamma(y2) {
|
|
24748
|
+
const interpolateRgb = (function rgbGamma(y2) {
|
|
24746
24749
|
var color2 = gamma(y2);
|
|
24747
24750
|
function rgb$1(start2, end) {
|
|
24748
24751
|
var r2 = color2((start2 = rgb(start2)).r, (end = rgb(end)).r), g = color2(start2.g, end.g), b2 = color2(start2.b, end.b), opacity = nogamma(start2.opacity, end.opacity);
|
|
@@ -24751,7 +24754,7 @@ const interpolateRgb = function rgbGamma(y2) {
|
|
|
24751
24754
|
};
|
|
24752
24755
|
}
|
|
24753
24756
|
return rgb$1.gamma = rgbGamma, rgb$1;
|
|
24754
|
-
}(1);
|
|
24757
|
+
})(1);
|
|
24755
24758
|
function numberArray(a2, b2) {
|
|
24756
24759
|
b2 || (b2 = []);
|
|
24757
24760
|
var n2 = a2 ? Math.min(b2.length, a2.length) : 0, c2 = b2.slice(), i2;
|
|
@@ -24884,7 +24887,7 @@ function sinh(x2) {
|
|
|
24884
24887
|
function tanh(x2) {
|
|
24885
24888
|
return ((x2 = Math.exp(2 * x2)) - 1) / (x2 + 1);
|
|
24886
24889
|
}
|
|
24887
|
-
const interpolateZoom = function zoomRho(rho, rho2, rho4) {
|
|
24890
|
+
const interpolateZoom = (function zoomRho(rho, rho2, rho4) {
|
|
24888
24891
|
function zoom2(p0, p1) {
|
|
24889
24892
|
var ux0 = p0[0], uy0 = p0[1], w0 = p0[2], ux1 = p1[0], uy1 = p1[1], w1 = p1[2], dx = ux1 - ux0, dy = uy1 - uy0, d2 = dx * dx + dy * dy, i2, S;
|
|
24890
24893
|
if (d2 < epsilon2)
|
|
@@ -24912,7 +24915,7 @@ const interpolateZoom = function zoomRho(rho, rho2, rho4) {
|
|
|
24912
24915
|
var _1 = Math.max(1e-3, +_), _2 = _1 * _1, _4 = _2 * _2;
|
|
24913
24916
|
return zoomRho(_1, _2, _4);
|
|
24914
24917
|
}, zoom2;
|
|
24915
|
-
}(Math.SQRT2, 2, 4);
|
|
24918
|
+
})(Math.SQRT2, 2, 4);
|
|
24916
24919
|
var frame = 0, timeout$1 = 0, interval = 0, pokeDelay = 1e3, taskHead, taskTail, clockLast = 0, clockNow = 0, clockSkew = 0, clock = typeof performance == "object" && performance.now ? performance : Date, setFrame = typeof window == "object" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(f2) {
|
|
24917
24920
|
setTimeout(f2, 17);
|
|
24918
24921
|
};
|
|
@@ -26087,7 +26090,7 @@ const getViewportForBounds = (bounds, width, height, minZoom, maxZoom, padding)
|
|
|
26087
26090
|
};
|
|
26088
26091
|
}, isMacOs = () => typeof navigator < "u" && navigator?.userAgent?.indexOf("Mac") >= 0;
|
|
26089
26092
|
function isCoordinateExtent(extent) {
|
|
26090
|
-
return extent
|
|
26093
|
+
return extent != null && extent !== "parent";
|
|
26091
26094
|
}
|
|
26092
26095
|
function getNodeDimensions(node2) {
|
|
26093
26096
|
return {
|
|
@@ -26739,8 +26742,8 @@ function XYDrag({ onNodeMouseDown, getStoreItems, onDragStart, onDrag, onDragSto
|
|
|
26739
26742
|
continue;
|
|
26740
26743
|
let nextPosition = { x: x2 - dragItem.distance.x, y: y2 - dragItem.distance.y };
|
|
26741
26744
|
snapToGrid && (nextPosition = multiDragSnapOffset ? {
|
|
26742
|
-
x: nextPosition.x + multiDragSnapOffset.x,
|
|
26743
|
-
y: nextPosition.y + multiDragSnapOffset.y
|
|
26745
|
+
x: Math.round(nextPosition.x + multiDragSnapOffset.x),
|
|
26746
|
+
y: Math.round(nextPosition.y + multiDragSnapOffset.y)
|
|
26744
26747
|
} : snapPosition(nextPosition, snapGrid));
|
|
26745
26748
|
let adjustedNodeExtent = null;
|
|
26746
26749
|
if (isMultiDrag && nodeExtent && !dragItem.extent && nodesBox) {
|
|
@@ -28727,13 +28730,13 @@ const ArrowSymbol = ({ color: color2 = "none", strokeWidth = 1 }) => {
|
|
|
28727
28730
|
strokeWidth,
|
|
28728
28731
|
...color2 && { stroke: color2 }
|
|
28729
28732
|
};
|
|
28730
|
-
return jsx("polyline", { style: style2, strokeLinecap: "round",
|
|
28733
|
+
return jsx("polyline", { className: "arrow", style: style2, strokeLinecap: "round", fill: "none", strokeLinejoin: "round", points: "-5,-4 0,0 -5,4" });
|
|
28731
28734
|
}, ArrowClosedSymbol = ({ color: color2 = "none", strokeWidth = 1 }) => {
|
|
28732
28735
|
const style2 = {
|
|
28733
28736
|
strokeWidth,
|
|
28734
28737
|
...color2 && { stroke: color2, fill: color2 }
|
|
28735
28738
|
};
|
|
28736
|
-
return jsx("polyline", { style: style2, strokeLinecap: "round", strokeLinejoin: "round", points: "-5,-4 0,0 -5,4 -5,-4" });
|
|
28739
|
+
return jsx("polyline", { className: "arrowclosed", style: style2, strokeLinecap: "round", strokeLinejoin: "round", points: "-5,-4 0,0 -5,4 -5,-4" });
|
|
28737
28740
|
}, MarkerSymbols = {
|
|
28738
28741
|
[MarkerType.Arrow]: ArrowSymbol,
|
|
28739
28742
|
[MarkerType.ArrowClosed]: ArrowClosedSymbol
|
|
@@ -30397,9 +30400,9 @@ function createIsCircular(areItemsEqual) {
|
|
|
30397
30400
|
function getStrictProperties(object2) {
|
|
30398
30401
|
return getOwnPropertyNames(object2).concat(getOwnPropertySymbols(object2));
|
|
30399
30402
|
}
|
|
30400
|
-
var hasOwn = Object.hasOwn || function(object2, property) {
|
|
30403
|
+
var hasOwn = Object.hasOwn || (function(object2, property) {
|
|
30401
30404
|
return hasOwnProperty.call(object2, property);
|
|
30402
|
-
};
|
|
30405
|
+
});
|
|
30403
30406
|
function sameValueZeroEqual(a2, b2) {
|
|
30404
30407
|
return a2 === b2 || !a2 && !b2 && a2 !== a2 && b2 !== b2;
|
|
30405
30408
|
}
|
|
@@ -32042,7 +32045,7 @@ function bezierControlPoints(diagramEdge) {
|
|
|
32042
32045
|
const handles = [
|
|
32043
32046
|
// start
|
|
32044
32047
|
];
|
|
32045
|
-
for (;
|
|
32048
|
+
for (; i$8(bezierPoints, 3); ) {
|
|
32046
32049
|
const [cp1, cp2, end, ...rest] = bezierPoints, bezier = new Bezier(start2[0], start2[1], cp1[0], cp1[1], cp2[0], cp2[1], end[0], end[1]), inflections = bezier.inflections();
|
|
32047
32050
|
inflections.length === 0 && inflections.push(0.5), inflections.forEach((t2) => {
|
|
32048
32051
|
const { x: x2, y: y2 } = bezier.get(t2);
|
|
@@ -32073,7 +32076,7 @@ function bezierPath(bezierSpline) {
|
|
|
32073
32076
|
let [start2, ...points] = bezierSpline;
|
|
32074
32077
|
invariant$2(start2, "start should be defined");
|
|
32075
32078
|
let path = `M ${start2[0]},${start2[1]}`;
|
|
32076
|
-
for (;
|
|
32079
|
+
for (; i$8(points, 3); ) {
|
|
32077
32080
|
const [cp1, cp2, end, ...rest] = points;
|
|
32078
32081
|
path = path + ` C ${cp1[0]},${cp1[1]} ${cp2[0]},${cp2[1]} ${end[0]},${end[1]}`, points = rest;
|
|
32079
32082
|
}
|
|
@@ -32100,38 +32103,45 @@ const ZIndexes = {
|
|
|
32100
32103
|
Edge: 20,
|
|
32101
32104
|
Element: 20,
|
|
32102
32105
|
Max: 30
|
|
32103
|
-
}, MinZoom = 0.05, MaxZoom = 3
|
|
32104
|
-
|
|
32105
|
-
|
|
32106
|
-
|
|
32107
|
-
|
|
32108
|
-
|
|
32109
|
-
|
|
32110
|
-
|
|
32111
|
-
|
|
32112
|
-
}
|
|
32113
|
-
|
|
32114
|
-
|
|
32115
|
-
data: {
|
|
32116
|
-
...v.data,
|
|
32117
|
-
hovered
|
|
32106
|
+
}, MinZoom = 0.05, MaxZoom = 3;
|
|
32107
|
+
var Base;
|
|
32108
|
+
((Base2) => {
|
|
32109
|
+
const _setDimmed = (v, dimmed) => (v.data.dimmed ?? !1) === dimmed ? v : {
|
|
32110
|
+
...v,
|
|
32111
|
+
data: {
|
|
32112
|
+
...v.data,
|
|
32113
|
+
dimmed
|
|
32114
|
+
}
|
|
32115
|
+
};
|
|
32116
|
+
function setDimmed(arg1, arg2) {
|
|
32117
|
+
return arg2 !== void 0 ? _setDimmed(arg1, arg2) : (v) => _setDimmed(v, arg1);
|
|
32118
32118
|
}
|
|
32119
|
-
|
|
32120
|
-
|
|
32121
|
-
|
|
32122
|
-
}
|
|
32123
|
-
function _setData(value, state) {
|
|
32124
|
-
return j(value.data, state) ? value : {
|
|
32125
|
-
...value,
|
|
32119
|
+
Base2.setDimmed = setDimmed;
|
|
32120
|
+
const _setHovered = (v, hovered) => (v.data.hovered ?? !1) === hovered ? v : {
|
|
32121
|
+
...v,
|
|
32126
32122
|
data: {
|
|
32127
|
-
...
|
|
32128
|
-
|
|
32123
|
+
...v.data,
|
|
32124
|
+
hovered
|
|
32129
32125
|
}
|
|
32130
32126
|
};
|
|
32131
|
-
|
|
32132
|
-
|
|
32133
|
-
|
|
32134
|
-
|
|
32127
|
+
function setHovered(arg1, arg2) {
|
|
32128
|
+
return arg2 !== void 0 ? _setHovered(arg1, arg2) : (v) => _setHovered(v, arg1);
|
|
32129
|
+
}
|
|
32130
|
+
Base2.setHovered = setHovered;
|
|
32131
|
+
function _setData(value, state) {
|
|
32132
|
+
return j(value.data, state) ? value : {
|
|
32133
|
+
...value,
|
|
32134
|
+
data: {
|
|
32135
|
+
...value.data,
|
|
32136
|
+
...state
|
|
32137
|
+
}
|
|
32138
|
+
};
|
|
32139
|
+
}
|
|
32140
|
+
function setData(arg1, arg2) {
|
|
32141
|
+
return arg2 !== void 0 ? _setData(arg1, arg2) : (edge) => _setData(edge, arg1);
|
|
32142
|
+
}
|
|
32143
|
+
Base2.setData = setData;
|
|
32144
|
+
})(Base || (Base = {}));
|
|
32135
32145
|
const BaseXYFlow = ({
|
|
32136
32146
|
nodes,
|
|
32137
32147
|
edges,
|
|
@@ -32219,7 +32229,7 @@ const BaseXYFlow = ({
|
|
|
32219
32229
|
node2.data.hovered || onNodesChange([{
|
|
32220
32230
|
id: node2.id,
|
|
32221
32231
|
type: "replace",
|
|
32222
|
-
item: setHovered(node2, !0)
|
|
32232
|
+
item: Base.setHovered(node2, !0)
|
|
32223
32233
|
}]);
|
|
32224
32234
|
}),
|
|
32225
32235
|
onNodeMouseLeave: useCallbackRef((_event, node2) => {
|
|
@@ -32230,7 +32240,7 @@ const BaseXYFlow = ({
|
|
|
32230
32240
|
node2.data.hovered && onNodesChange([{
|
|
32231
32241
|
id: node2.id,
|
|
32232
32242
|
type: "replace",
|
|
32233
|
-
item: setHovered(node2, !1)
|
|
32243
|
+
item: Base.setHovered(node2, !1)
|
|
32234
32244
|
}]);
|
|
32235
32245
|
}),
|
|
32236
32246
|
onEdgeMouseEnter: useCallbackRef((_event, edge) => {
|
|
@@ -32241,7 +32251,7 @@ const BaseXYFlow = ({
|
|
|
32241
32251
|
edge.data.hovered || onEdgesChange([{
|
|
32242
32252
|
id: edge.id,
|
|
32243
32253
|
type: "replace",
|
|
32244
|
-
item: setHovered(edge, !0)
|
|
32254
|
+
item: Base.setHovered(edge, !0)
|
|
32245
32255
|
}]);
|
|
32246
32256
|
}),
|
|
32247
32257
|
onEdgeMouseLeave: useCallbackRef((_event, edge) => {
|
|
@@ -32252,7 +32262,7 @@ const BaseXYFlow = ({
|
|
|
32252
32262
|
edge.data.hovered && onEdgesChange([{
|
|
32253
32263
|
id: edge.id,
|
|
32254
32264
|
type: "replace",
|
|
32255
|
-
item: setHovered(edge, !1)
|
|
32265
|
+
item: Base.setHovered(edge, !1)
|
|
32256
32266
|
}]);
|
|
32257
32267
|
}),
|
|
32258
32268
|
onNodeDoubleClick: stopPropagation,
|
|
@@ -32589,9 +32599,9 @@ function requireRaiseB4a670a0_cjs() {
|
|
|
32589
32599
|
}
|
|
32590
32600
|
let executingCustomAction = !1;
|
|
32591
32601
|
const $$ACTOR_TYPE = 1;
|
|
32592
|
-
let ProcessingStatus = /* @__PURE__ */ function(ProcessingStatus2) {
|
|
32602
|
+
let ProcessingStatus = /* @__PURE__ */ (function(ProcessingStatus2) {
|
|
32593
32603
|
return ProcessingStatus2[ProcessingStatus2.NotStarted = 0] = "NotStarted", ProcessingStatus2[ProcessingStatus2.Running = 1] = "Running", ProcessingStatus2[ProcessingStatus2.Stopped = 2] = "Stopped", ProcessingStatus2;
|
|
32594
|
-
}({});
|
|
32604
|
+
})({});
|
|
32595
32605
|
const defaultOptions2 = {
|
|
32596
32606
|
clock: {
|
|
32597
32607
|
setTimeout: (fn, ms) => setTimeout(fn, ms),
|
|
@@ -34779,9 +34789,9 @@ function requireLog63c8f21f_cjs() {
|
|
|
34779
34789
|
}
|
|
34780
34790
|
return emit3.type = "xstate.emit", emit3.event = eventOrExpr, emit3.resolve = resolveEmit, emit3.execute = executeEmit, emit3;
|
|
34781
34791
|
}
|
|
34782
|
-
let SpecialTargets = /* @__PURE__ */ function(SpecialTargets2) {
|
|
34792
|
+
let SpecialTargets = /* @__PURE__ */ (function(SpecialTargets2) {
|
|
34783
34793
|
return SpecialTargets2.Parent = "#_parent", SpecialTargets2.Internal = "#_internal", SpecialTargets2;
|
|
34784
|
-
}({});
|
|
34794
|
+
})({});
|
|
34785
34795
|
function resolveSendTo(actorScope, snapshot, args, actionParams, {
|
|
34786
34796
|
to,
|
|
34787
34797
|
event: eventOrExpr,
|
|
@@ -35792,14 +35802,14 @@ CatmullRomOpen.prototype = {
|
|
|
35792
35802
|
this._l01_a = this._l12_a, this._l12_a = this._l23_a, this._l01_2a = this._l12_2a, this._l12_2a = this._l23_2a, this._x0 = this._x1, this._x1 = this._x2, this._x2 = x2, this._y0 = this._y1, this._y1 = this._y2, this._y2 = y2;
|
|
35793
35803
|
}
|
|
35794
35804
|
};
|
|
35795
|
-
const curveCatmullRomOpen = function custom4(alpha2) {
|
|
35805
|
+
const curveCatmullRomOpen = (function custom4(alpha2) {
|
|
35796
35806
|
function catmullRom(context2) {
|
|
35797
35807
|
return alpha2 ? new CatmullRomOpen(context2, alpha2) : new CardinalOpen(context2, 0);
|
|
35798
35808
|
}
|
|
35799
35809
|
return catmullRom.alpha = function(alpha3) {
|
|
35800
35810
|
return custom4(+alpha3);
|
|
35801
35811
|
}, catmullRom;
|
|
35802
|
-
}(0.5), createRecipe = (name, defaultVariants, compoundVariants) => {
|
|
35812
|
+
})(0.5), createRecipe = (name, defaultVariants, compoundVariants) => {
|
|
35803
35813
|
const getVariantProps2 = (variants) => ({
|
|
35804
35814
|
[name]: "__ignore__",
|
|
35805
35815
|
...defaultVariants,
|
|
@@ -35970,11 +35980,16 @@ const curveCatmullRomOpen = function custom4(alpha2) {
|
|
|
35970
35980
|
},
|
|
35971
35981
|
getVariantProps: likec4tagFn.getVariantProps
|
|
35972
35982
|
}), markdownBlockFn = /* @__PURE__ */ createRecipe("likec4-markdown-block", {
|
|
35973
|
-
uselikec4palette: !1
|
|
35983
|
+
uselikec4palette: !1,
|
|
35984
|
+
value: "markdown"
|
|
35974
35985
|
}, []), markdownBlockVariantMap = {
|
|
35975
35986
|
uselikec4palette: [
|
|
35976
35987
|
"true",
|
|
35977
35988
|
"false"
|
|
35989
|
+
],
|
|
35990
|
+
value: [
|
|
35991
|
+
"markdown",
|
|
35992
|
+
"plaintext"
|
|
35978
35993
|
]
|
|
35979
35994
|
}, markdownBlockVariantKeys = Object.keys(markdownBlockVariantMap), markdownBlock = /* @__PURE__ */ Object.assign(memo$1(markdownBlockFn.recipeFn), {
|
|
35980
35995
|
__recipe__: !0,
|
|
@@ -36458,7 +36473,7 @@ function EdgeContainer({
|
|
|
36458
36473
|
"data-likec4-dimmed": isDimmed
|
|
36459
36474
|
}
|
|
36460
36475
|
};
|
|
36461
|
-
return component === "svg" ? /* @__PURE__ */ jsx("svg", { style: style2, ...props2, children: children2 }) : (invariant$
|
|
36476
|
+
return component === "svg" ? /* @__PURE__ */ jsx("svg", { style: style2, ...props2, children: children2 }) : (invariant$3(component === "g", 'EdgeContainer: component must be "g" or "svg"'), /* @__PURE__ */ jsx("g", { style: style2, ...props2, children: children2 }));
|
|
36462
36477
|
}
|
|
36463
36478
|
const EdgeLabel = forwardRef(({
|
|
36464
36479
|
edgeProps: {
|
|
@@ -37491,7 +37506,8 @@ const MarkdownBlock = forwardRef(({
|
|
|
37491
37506
|
...props2,
|
|
37492
37507
|
className: cx(
|
|
37493
37508
|
markdownBlock({
|
|
37494
|
-
uselikec4palette
|
|
37509
|
+
uselikec4palette,
|
|
37510
|
+
value: value.isMarkdown ? "markdown" : "plaintext"
|
|
37495
37511
|
}),
|
|
37496
37512
|
className
|
|
37497
37513
|
),
|
|
@@ -37551,7 +37567,7 @@ function ElementTitle({ id: id2, data, iconSize: iconSize2 }) {
|
|
|
37551
37567
|
children: data.technology
|
|
37552
37568
|
}
|
|
37553
37569
|
),
|
|
37554
|
-
data.description?.nonEmpty &&
|
|
37570
|
+
data.description?.nonEmpty && /* @__PURE__ */ jsx(
|
|
37555
37571
|
MarkdownBlock,
|
|
37556
37572
|
{
|
|
37557
37573
|
className: cx(classes2.description, "likec4-element-description"),
|
|
@@ -37561,15 +37577,7 @@ function ElementTitle({ id: id2, data, iconSize: iconSize2 }) {
|
|
|
37561
37577
|
maxHeight: data.description.isMarkdown ? "8rem" : void 0,
|
|
37562
37578
|
lineClamp: isSmOrXs ? 3 : 5
|
|
37563
37579
|
}
|
|
37564
|
-
)
|
|
37565
|
-
Text,
|
|
37566
|
-
{
|
|
37567
|
-
component: "div",
|
|
37568
|
-
className: cx(classes2.description, "likec4-element-description"),
|
|
37569
|
-
lineClamp: isSmOrXs ? 3 : 5,
|
|
37570
|
-
children: data.description.text
|
|
37571
|
-
}
|
|
37572
|
-
))
|
|
37580
|
+
)
|
|
37573
37581
|
] })
|
|
37574
37582
|
]
|
|
37575
37583
|
}
|
|
@@ -37882,7 +37890,7 @@ const curve = d3line().curve(curveCatmullRomOpen).x((d2) => d2.x).y((d2) => d2.y
|
|
|
37882
37890
|
}
|
|
37883
37891
|
}), buttons22;
|
|
37884
37892
|
}, [enableNavigateTo, enableRelationshipBrowser, diagram, modelFqn, navigateTo, props2.id]);
|
|
37885
|
-
return extraButtons &&
|
|
37893
|
+
return extraButtons && i$8(extraButtons, 1) && (buttons2 = [...buttons2, ...extraButtons]), /* @__PURE__ */ jsx(ElementActionButtons, { ...props2, buttons: buttons2 });
|
|
37886
37894
|
}, DeploymentElementActions = ({
|
|
37887
37895
|
extraButtons,
|
|
37888
37896
|
...props2
|
|
@@ -37904,7 +37912,7 @@ const curve = d3line().curve(curveCatmullRomOpen).x((d2) => d2.x).y((d2) => d2.y
|
|
|
37904
37912
|
}
|
|
37905
37913
|
}), buttons22;
|
|
37906
37914
|
}, [enableNavigateTo, enableRelationshipBrowser, diagram, modelFqn, navigateTo, props2.id]);
|
|
37907
|
-
return extraButtons &&
|
|
37915
|
+
return extraButtons && i$8(extraButtons, 1) && (buttons2 = [...buttons2, ...extraButtons]), /* @__PURE__ */ jsx(ElementActionButtons, { ...props2, buttons: buttons2 });
|
|
37908
37916
|
}, {
|
|
37909
37917
|
primary,
|
|
37910
37918
|
secondary,
|
|
@@ -37930,7 +37938,7 @@ const curve = d3line().curve(curveCatmullRomOpen).x((d2) => d2.x).y((d2) => d2.y
|
|
|
37930
37938
|
function useHandlers(target, props2) {
|
|
37931
37939
|
const { onChange: triggerOnChange } = useDiagramEventHandlers(), diagram = useDiagram(), [originalColor, setOriginalColor] = useState(null), onColorPreview = useCallbackRef((color2) => {
|
|
37932
37940
|
if (color2 === null) {
|
|
37933
|
-
invariant$
|
|
37941
|
+
invariant$3(originalColor, "originalColor is null"), setOriginalColor(null), diagram.updateNodeData(props2.id, {
|
|
37934
37942
|
color: originalColor
|
|
37935
37943
|
});
|
|
37936
37944
|
return;
|
|
@@ -39628,7 +39636,7 @@ const selector$7 = (state) => ({
|
|
|
39628
39636
|
] })
|
|
39629
39637
|
]
|
|
39630
39638
|
}
|
|
39631
|
-
) }), SectionHeader = styled("div", {
|
|
39639
|
+
) }), SectionHeader$1 = styled("div", {
|
|
39632
39640
|
base: {
|
|
39633
39641
|
fontSize: "xs",
|
|
39634
39642
|
color: "mantine.colors.dimmed",
|
|
@@ -39693,12 +39701,12 @@ const selector$7 = (state) => ({
|
|
|
39693
39701
|
] })
|
|
39694
39702
|
] }),
|
|
39695
39703
|
links.length > 0 && /* @__PURE__ */ jsxs("section", { className: hstack({ alignItems: "baseline" }), children: [
|
|
39696
|
-
/* @__PURE__ */ jsx(SectionHeader, { children: "Links" }),
|
|
39704
|
+
/* @__PURE__ */ jsx(SectionHeader$1, { children: "Links" }),
|
|
39697
39705
|
/* @__PURE__ */ jsx(HStack, { gap: "xs", flexWrap: "wrap", children: links.map((link, i2) => /* @__PURE__ */ jsx(Link, { value: link }, `${i2}-${link.url}`)) })
|
|
39698
39706
|
] }),
|
|
39699
39707
|
description2.isEmpty && /* @__PURE__ */ jsx(Text, { component: "div", fw: 500, size: "xs", c: "dimmed", my: "md", style: { userSelect: "none" }, children: "No description" }),
|
|
39700
39708
|
description2.nonEmpty && /* @__PURE__ */ jsxs("section", { children: [
|
|
39701
|
-
/* @__PURE__ */ jsx(SectionHeader, { children: "Description" }),
|
|
39709
|
+
/* @__PURE__ */ jsx(SectionHeader$1, { children: "Description" }),
|
|
39702
39710
|
/* @__PURE__ */ jsx(
|
|
39703
39711
|
MarkdownBlock,
|
|
39704
39712
|
{
|
|
@@ -39838,7 +39846,8 @@ const selector$7 = (state) => ({
|
|
|
39838
39846
|
hasNext,
|
|
39839
39847
|
hasPrevious,
|
|
39840
39848
|
currentStep,
|
|
39841
|
-
totalSteps
|
|
39849
|
+
totalSteps,
|
|
39850
|
+
notes
|
|
39842
39851
|
} = useDiagramContext((s2) => {
|
|
39843
39852
|
const currentStepIndex = s2.xyedges.findIndex((e2) => e2.id === s2.activeWalkthrough?.stepId);
|
|
39844
39853
|
return {
|
|
@@ -39846,7 +39855,8 @@ const selector$7 = (state) => ({
|
|
|
39846
39855
|
hasNext: currentStepIndex < s2.xyedges.length - 1,
|
|
39847
39856
|
hasPrevious: currentStepIndex > 0,
|
|
39848
39857
|
currentStep: currentStepIndex + 1,
|
|
39849
|
-
totalSteps: s2.xyedges.length
|
|
39858
|
+
totalSteps: s2.xyedges.length,
|
|
39859
|
+
notes: s2.xyedges[currentStepIndex]?.data?.notes ?? RichText.EMPTY
|
|
39850
39860
|
};
|
|
39851
39861
|
});
|
|
39852
39862
|
return /* @__PURE__ */ jsxs(AnimatePresence, { propagate: !0, children: [
|
|
@@ -39861,8 +39871,7 @@ const selector$7 = (state) => ({
|
|
|
39861
39871
|
},
|
|
39862
39872
|
rightSection: /* @__PURE__ */ jsx(IconPlayerStopFilled, { size: 10 }),
|
|
39863
39873
|
children: "Stop"
|
|
39864
|
-
}
|
|
39865
|
-
"trigger-dynamic-walkthrough"
|
|
39874
|
+
}
|
|
39866
39875
|
),
|
|
39867
39876
|
/* @__PURE__ */ jsx(
|
|
39868
39877
|
PrevNextButton,
|
|
@@ -40456,7 +40465,7 @@ function FolderColumnItem({ columnItem, ...props2 }) {
|
|
|
40456
40465
|
columnItem.viewId
|
|
40457
40466
|
);
|
|
40458
40467
|
default:
|
|
40459
|
-
nonexhaustive(columnItem);
|
|
40468
|
+
nonexhaustive$1(columnItem);
|
|
40460
40469
|
}
|
|
40461
40470
|
}
|
|
40462
40471
|
function SearchInput({ onKeyDown, ...props2 }) {
|
|
@@ -40522,7 +40531,297 @@ function SearchInput({ onKeyDown, ...props2 }) {
|
|
|
40522
40531
|
}
|
|
40523
40532
|
);
|
|
40524
40533
|
}
|
|
40525
|
-
const
|
|
40534
|
+
const backdropBlur$1 = "--_blur", backdropOpacity$1 = "--_opacity", level = "--_level", offset = "--_offset", inset = "--_inset", borderRadius = "--_border-radius", dialog$2 = css.raw({
|
|
40535
|
+
boxSizing: "border-box",
|
|
40536
|
+
margin: "0",
|
|
40537
|
+
position: "fixed",
|
|
40538
|
+
width: "100vw",
|
|
40539
|
+
height: "100vh",
|
|
40540
|
+
maxWidth: "100vw",
|
|
40541
|
+
maxHeight: "100vh",
|
|
40542
|
+
background: "mantine.colors.defaultBorder/50",
|
|
40543
|
+
shadow: "xl",
|
|
40544
|
+
border: "transparent",
|
|
40545
|
+
outline: "none",
|
|
40546
|
+
borderRadius: `var(${borderRadius})`,
|
|
40547
|
+
[backdropBlur$1]: "0px",
|
|
40548
|
+
[level]: "0",
|
|
40549
|
+
[offset]: "0px",
|
|
40550
|
+
[inset]: "calc((1 + var(--_level) * 0.75) * var(--_offset))",
|
|
40551
|
+
[backdropOpacity$1]: "0%",
|
|
40552
|
+
[borderRadius]: "0px",
|
|
40553
|
+
_backdrop: {
|
|
40554
|
+
cursor: "zoom-out"
|
|
40555
|
+
},
|
|
40556
|
+
inset: "0",
|
|
40557
|
+
padding: "0"
|
|
40558
|
+
}), body$1 = css.raw({
|
|
40559
|
+
position: "relative",
|
|
40560
|
+
containerName: "likec4-dialog",
|
|
40561
|
+
containerType: "size",
|
|
40562
|
+
border: "0 solid transparent",
|
|
40563
|
+
overflow: "hidden",
|
|
40564
|
+
width: "100%",
|
|
40565
|
+
height: "100%",
|
|
40566
|
+
background: "mantine.colors.body"
|
|
40567
|
+
}), overlay = sva({
|
|
40568
|
+
slots: ["dialog", "body"],
|
|
40569
|
+
base: {
|
|
40570
|
+
dialog: dialog$2,
|
|
40571
|
+
body: body$1
|
|
40572
|
+
},
|
|
40573
|
+
variants: {
|
|
40574
|
+
fullscreen: {
|
|
40575
|
+
false: {
|
|
40576
|
+
dialog: {
|
|
40577
|
+
sm: {
|
|
40578
|
+
inset: "[var(--_inset) var(--_inset) var(--_offset) var(--_inset)]",
|
|
40579
|
+
width: "calc(100vw - 2 * var(--_inset))",
|
|
40580
|
+
height: "calc(100vh - var(--_offset) - var(--_inset))",
|
|
40581
|
+
[borderRadius]: "6px",
|
|
40582
|
+
padding: "1.5",
|
|
40583
|
+
// 6px
|
|
40584
|
+
[offset]: "1rem"
|
|
40585
|
+
},
|
|
40586
|
+
md: {
|
|
40587
|
+
[offset]: "1rem"
|
|
40588
|
+
},
|
|
40589
|
+
lg: {
|
|
40590
|
+
[offset]: "2rem"
|
|
40591
|
+
},
|
|
40592
|
+
xl: {
|
|
40593
|
+
[offset]: "4rem"
|
|
40594
|
+
}
|
|
40595
|
+
},
|
|
40596
|
+
body: {
|
|
40597
|
+
sm: {
|
|
40598
|
+
borderRadius: `calc(var(${borderRadius}) - 2px)`
|
|
40599
|
+
}
|
|
40600
|
+
}
|
|
40601
|
+
},
|
|
40602
|
+
true: {
|
|
40603
|
+
dialog: {
|
|
40604
|
+
inset: "0",
|
|
40605
|
+
padding: "0"
|
|
40606
|
+
}
|
|
40607
|
+
}
|
|
40608
|
+
},
|
|
40609
|
+
// transparent: {
|
|
40610
|
+
// false: {
|
|
40611
|
+
// },
|
|
40612
|
+
// true: {
|
|
40613
|
+
// dialog: {
|
|
40614
|
+
// background: 'transparent',
|
|
40615
|
+
// },
|
|
40616
|
+
// },
|
|
40617
|
+
// },
|
|
40618
|
+
withBackdrop: {
|
|
40619
|
+
false: {
|
|
40620
|
+
dialog: {
|
|
40621
|
+
_backdrop: {
|
|
40622
|
+
display: "none"
|
|
40623
|
+
}
|
|
40624
|
+
}
|
|
40625
|
+
},
|
|
40626
|
+
true: {
|
|
40627
|
+
dialog: {
|
|
40628
|
+
_backdrop: {
|
|
40629
|
+
backdropFilter: `blur(var(${backdropBlur$1}))`,
|
|
40630
|
+
backgroundColor: {
|
|
40631
|
+
_dark: `[rgb(34 34 34 / var(${backdropOpacity$1}))]`,
|
|
40632
|
+
_light: `[rgb(15 15 15/ var(${backdropOpacity$1}))]`
|
|
40633
|
+
}
|
|
40634
|
+
}
|
|
40635
|
+
}
|
|
40636
|
+
}
|
|
40637
|
+
}
|
|
40638
|
+
},
|
|
40639
|
+
defaultVariants: {
|
|
40640
|
+
fullscreen: !1,
|
|
40641
|
+
withBackdrop: !0
|
|
40642
|
+
}
|
|
40643
|
+
}), Overlay = forwardRef(({
|
|
40644
|
+
onClose,
|
|
40645
|
+
className,
|
|
40646
|
+
classes: classes2,
|
|
40647
|
+
overlayLevel = 0,
|
|
40648
|
+
children: children2,
|
|
40649
|
+
fullscreen = !1,
|
|
40650
|
+
withBackdrop = !0,
|
|
40651
|
+
backdrop,
|
|
40652
|
+
openDelay = 130,
|
|
40653
|
+
...rest
|
|
40654
|
+
}, ref) => {
|
|
40655
|
+
const [opened, setOpened] = useState(openDelay === 0), focusTrapRef = useFocusTrap(opened), dialogRef = useRef(null), isClosingRef = useRef(!1), motionNotReduced = useReducedMotionConfig() !== !0, onCloseRef = useRef(onClose);
|
|
40656
|
+
onCloseRef.current = onClose;
|
|
40657
|
+
const close = useDebouncedCallback(
|
|
40658
|
+
() => {
|
|
40659
|
+
isClosingRef.current || (isClosingRef.current = !0, onCloseRef.current());
|
|
40660
|
+
},
|
|
40661
|
+
[],
|
|
40662
|
+
50
|
|
40663
|
+
);
|
|
40664
|
+
useLayoutEffect$1(() => {
|
|
40665
|
+
dialogRef.current?.open || dialogRef.current?.showModal();
|
|
40666
|
+
}, []), useTimeoutEffect(() => {
|
|
40667
|
+
setOpened(!0);
|
|
40668
|
+
}, openDelay > 0 ? openDelay : void 0);
|
|
40669
|
+
const styles = overlay({
|
|
40670
|
+
fullscreen,
|
|
40671
|
+
withBackdrop
|
|
40672
|
+
});
|
|
40673
|
+
let targetBackdropOpacity = overlayLevel > 0 ? "50%" : "60%";
|
|
40674
|
+
return backdrop?.opacity !== void 0 && (targetBackdropOpacity = `${backdrop.opacity * 100}%`), /* @__PURE__ */ jsx(
|
|
40675
|
+
m$4.dialog,
|
|
40676
|
+
{
|
|
40677
|
+
ref: useMergedRef(
|
|
40678
|
+
dialogRef,
|
|
40679
|
+
focusTrapRef,
|
|
40680
|
+
ref
|
|
40681
|
+
),
|
|
40682
|
+
className: cx(
|
|
40683
|
+
classes2?.dialog,
|
|
40684
|
+
className,
|
|
40685
|
+
styles.dialog,
|
|
40686
|
+
fullscreen && RemoveScroll.classNames.fullWidth
|
|
40687
|
+
),
|
|
40688
|
+
layout: !0,
|
|
40689
|
+
style: {
|
|
40690
|
+
// @ts-ignore
|
|
40691
|
+
[level]: overlayLevel
|
|
40692
|
+
},
|
|
40693
|
+
...motionNotReduced ? {
|
|
40694
|
+
initial: {
|
|
40695
|
+
[backdropBlur$1]: "0px",
|
|
40696
|
+
[backdropOpacity$1]: "0%",
|
|
40697
|
+
scale: 0.95,
|
|
40698
|
+
originY: 0,
|
|
40699
|
+
translateY: -20,
|
|
40700
|
+
opacity: 0
|
|
40701
|
+
},
|
|
40702
|
+
animate: {
|
|
40703
|
+
[backdropBlur$1]: overlayLevel > 0 ? "4px" : "8px",
|
|
40704
|
+
[backdropOpacity$1]: targetBackdropOpacity,
|
|
40705
|
+
scale: 1,
|
|
40706
|
+
opacity: 1,
|
|
40707
|
+
translateY: 0,
|
|
40708
|
+
transition: {
|
|
40709
|
+
delay: 0.075
|
|
40710
|
+
}
|
|
40711
|
+
},
|
|
40712
|
+
exit: {
|
|
40713
|
+
opacity: 0,
|
|
40714
|
+
scale: 0.98,
|
|
40715
|
+
translateY: -20,
|
|
40716
|
+
transition: {
|
|
40717
|
+
duration: 0.1
|
|
40718
|
+
},
|
|
40719
|
+
[backdropBlur$1]: "0px",
|
|
40720
|
+
[backdropOpacity$1]: "0%"
|
|
40721
|
+
}
|
|
40722
|
+
} : {
|
|
40723
|
+
initial: {
|
|
40724
|
+
[backdropBlur$1]: "8px",
|
|
40725
|
+
[backdropOpacity$1]: targetBackdropOpacity
|
|
40726
|
+
}
|
|
40727
|
+
},
|
|
40728
|
+
onClick: (e2) => {
|
|
40729
|
+
if (e2.stopPropagation(), e2.target?.nodeName?.toUpperCase() === "DIALOG") {
|
|
40730
|
+
dialogRef.current?.close();
|
|
40731
|
+
return;
|
|
40732
|
+
}
|
|
40733
|
+
},
|
|
40734
|
+
onCancel: (e2) => {
|
|
40735
|
+
e2.preventDefault(), e2.stopPropagation(), close();
|
|
40736
|
+
},
|
|
40737
|
+
onDoubleClick: stopPropagation,
|
|
40738
|
+
onPointerDown: stopPropagation,
|
|
40739
|
+
onClose: (e2) => {
|
|
40740
|
+
e2.stopPropagation(), close();
|
|
40741
|
+
},
|
|
40742
|
+
...rest,
|
|
40743
|
+
children: /* @__PURE__ */ jsx(RemoveScroll, { forwardProps: !0, children: /* @__PURE__ */ jsx(
|
|
40744
|
+
"div",
|
|
40745
|
+
{
|
|
40746
|
+
className: cx(
|
|
40747
|
+
classes2?.body,
|
|
40748
|
+
styles.body,
|
|
40749
|
+
"overlay-body"
|
|
40750
|
+
),
|
|
40751
|
+
children: opened && /* @__PURE__ */ jsx(Fragment$1, { children: children2 })
|
|
40752
|
+
}
|
|
40753
|
+
) })
|
|
40754
|
+
}
|
|
40755
|
+
);
|
|
40756
|
+
});
|
|
40757
|
+
Overlay.displayName = "Overlay";
|
|
40758
|
+
const SectionHeader = styled("div", {
|
|
40759
|
+
base: {
|
|
40760
|
+
fontSize: "xs",
|
|
40761
|
+
color: "mantine.colors.dimmed",
|
|
40762
|
+
fontWeight: 500,
|
|
40763
|
+
userSelect: "none",
|
|
40764
|
+
mb: "xxs"
|
|
40765
|
+
}
|
|
40766
|
+
});
|
|
40767
|
+
function selectWalkthroughNotes(s2) {
|
|
40768
|
+
const isActive = n(s2.activeWalkthrough), activeStepIndex = isActive ? s2.xyedges.findIndex((e2) => e2.id === s2.activeWalkthrough?.stepId) : -1;
|
|
40769
|
+
return {
|
|
40770
|
+
isActive,
|
|
40771
|
+
isParallel: isActive && n$5(s2.activeWalkthrough?.parallelPrefix),
|
|
40772
|
+
hasNext: isActive && activeStepIndex < s2.xyedges.length - 1,
|
|
40773
|
+
hasPrevious: isActive && activeStepIndex > 0,
|
|
40774
|
+
notes: isActive ? s2.xyedges[activeStepIndex]?.data?.notes ?? RichText.EMPTY : null
|
|
40775
|
+
};
|
|
40776
|
+
}
|
|
40777
|
+
const WalkthroughPanel = () => {
|
|
40778
|
+
const { notes } = useDiagramContext(selectWalkthroughNotes);
|
|
40779
|
+
return !notes || notes.isEmpty ? null : /* @__PURE__ */ jsx(styled.div, { position: "relative", children: /* @__PURE__ */ jsxs(
|
|
40780
|
+
ScrollAreaAutosize,
|
|
40781
|
+
{
|
|
40782
|
+
className: cx(
|
|
40783
|
+
"nowheel nopan nodrag",
|
|
40784
|
+
vstack({
|
|
40785
|
+
position: "absolute",
|
|
40786
|
+
layerStyle: "likec4.dropdown",
|
|
40787
|
+
gap: "sm",
|
|
40788
|
+
padding: "md",
|
|
40789
|
+
paddingTop: "xxs",
|
|
40790
|
+
pointerEvents: "all",
|
|
40791
|
+
maxWidth: "calc(100cqw - 32px)",
|
|
40792
|
+
minWidth: "calc(100cqw - 50px)",
|
|
40793
|
+
maxHeight: "calc(100cqh - 100px)",
|
|
40794
|
+
width: "max-content",
|
|
40795
|
+
cursor: "default",
|
|
40796
|
+
overflow: "auto",
|
|
40797
|
+
overscrollBehavior: "contain",
|
|
40798
|
+
"@/sm": {
|
|
40799
|
+
minWidth: 400,
|
|
40800
|
+
maxWidth: 550
|
|
40801
|
+
},
|
|
40802
|
+
"@/lg": {
|
|
40803
|
+
maxWidth: 700
|
|
40804
|
+
}
|
|
40805
|
+
})
|
|
40806
|
+
),
|
|
40807
|
+
type: "scroll",
|
|
40808
|
+
children: [
|
|
40809
|
+
/* @__PURE__ */ jsx(SectionHeader, { children: "Notes" }),
|
|
40810
|
+
/* @__PURE__ */ jsx(
|
|
40811
|
+
MarkdownBlock,
|
|
40812
|
+
{
|
|
40813
|
+
value: notes,
|
|
40814
|
+
fontSize: "sm",
|
|
40815
|
+
emptyText: "No description",
|
|
40816
|
+
className: css({
|
|
40817
|
+
userSelect: "all"
|
|
40818
|
+
})
|
|
40819
|
+
}
|
|
40820
|
+
)
|
|
40821
|
+
]
|
|
40822
|
+
}
|
|
40823
|
+
) });
|
|
40824
|
+
}, NavigationPanel = memo$2(() => {
|
|
40526
40825
|
const diagramActor = useDiagramActorRef(), viewModel = useCurrentViewModel(), { portalProps } = useMantinePortalProps(), actorRef = xstateReact_cjsExports.useActorRef(
|
|
40527
40826
|
navigationPanelActorLogic,
|
|
40528
40827
|
{
|
|
@@ -40566,7 +40865,8 @@ const NavigationPanel = memo$2(() => {
|
|
|
40566
40865
|
},
|
|
40567
40866
|
children: /* @__PURE__ */ jsxs(NavigationPanelActorContextProvider, { value: actorRef, children: [
|
|
40568
40867
|
/* @__PURE__ */ jsx(NavigationPanelImpl, { actor: actorRef }),
|
|
40569
|
-
/* @__PURE__ */ jsx(EditorPanel, {})
|
|
40868
|
+
/* @__PURE__ */ jsx(EditorPanel, {}),
|
|
40869
|
+
/* @__PURE__ */ jsx(WalkthroughPanel, {})
|
|
40570
40870
|
] })
|
|
40571
40871
|
}
|
|
40572
40872
|
) });
|
|
@@ -40749,7 +41049,7 @@ function useLikeC4ElementsTree(viewId) {
|
|
|
40749
41049
|
const model = useLikeC4Model$1();
|
|
40750
41050
|
return useMemo(() => viewId ? [...model.view(viewId).roots()].map(buildNode).sort(sortByLabel) : [...model.roots()].map(buildNode).sort(sortByLabel), [model, viewId ?? null]);
|
|
40751
41051
|
}
|
|
40752
|
-
const backdropBlur
|
|
41052
|
+
const backdropBlur = "--_blur", backdropOpacity = "--_opacity", dialog$1 = css({
|
|
40753
41053
|
boxSizing: "border-box",
|
|
40754
41054
|
margin: "0",
|
|
40755
41055
|
padding: "0",
|
|
@@ -40764,8 +41064,8 @@ const backdropBlur$1 = "--_blur", backdropOpacity$1 = "--_opacity", dialog$2 = c
|
|
|
40764
41064
|
_backdrop: {
|
|
40765
41065
|
// WebkitBackdropFilter: `blur(${backdropBlur})`,
|
|
40766
41066
|
backdropFilter: "auto",
|
|
40767
|
-
backdropBlur: `var(${backdropBlur
|
|
40768
|
-
backgroundColor: `[rgb(36 36 36 / var(${backdropOpacity
|
|
41067
|
+
backdropBlur: `var(${backdropBlur})`,
|
|
41068
|
+
backgroundColor: `[rgb(36 36 36 / var(${backdropOpacity}, 5%))]`
|
|
40769
41069
|
}
|
|
40770
41070
|
}), card$2 = css({
|
|
40771
41071
|
position: "absolute",
|
|
@@ -43977,7 +44277,7 @@ function layoutRelationshipsView$1(data, scope) {
|
|
|
43977
44277
|
y: position.y,
|
|
43978
44278
|
position: [position.x, position.y],
|
|
43979
44279
|
title: "empty node",
|
|
43980
|
-
description: RichText.EMPTY,
|
|
44280
|
+
description: RichText$1.EMPTY,
|
|
43981
44281
|
technology: null,
|
|
43982
44282
|
tags: [],
|
|
43983
44283
|
links: [],
|
|
@@ -44016,7 +44316,7 @@ function layoutRelationshipsView$1(data, scope) {
|
|
|
44016
44316
|
y: position.y,
|
|
44017
44317
|
position: [position.x, position.y],
|
|
44018
44318
|
title: element.title,
|
|
44019
|
-
description: RichText.from(element.description),
|
|
44319
|
+
description: RichText$1.from(element.description),
|
|
44020
44320
|
technology: element.technology,
|
|
44021
44321
|
tags: [...element.tags],
|
|
44022
44322
|
links: null,
|
|
@@ -44071,7 +44371,7 @@ function layoutRelationshipsView$1(data, scope) {
|
|
|
44071
44371
|
relations,
|
|
44072
44372
|
sourceHandle,
|
|
44073
44373
|
targetHandle
|
|
44074
|
-
} = nonNullable(f(edges, (e22) => e22.name === ename)), onlyRelation = t$6(relations), label2 = onlyRelation?.title ?? "untitled", isMultiple = relations.length > 1, navigateTo = t$6(i$9(relations.flatMap((r2) => r2.navigateTo?.id ? r2.navigateTo.id : [])));
|
|
44374
|
+
} = nonNullable$1(f(edges, (e22) => e22.name === ename)), onlyRelation = t$6(relations), label2 = onlyRelation?.title ?? "untitled", isMultiple = relations.length > 1, navigateTo = t$6(i$9(relations.flatMap((r2) => r2.navigateTo?.id ? r2.navigateTo.id : [])));
|
|
44075
44375
|
return acc.push({
|
|
44076
44376
|
id: name,
|
|
44077
44377
|
sourceFqn,
|
|
@@ -44899,19 +45199,19 @@ function ElementDetailsCard({
|
|
|
44899
45199
|
m$4.dialog,
|
|
44900
45200
|
{
|
|
44901
45201
|
ref,
|
|
44902
|
-
className: cx(dialog$
|
|
45202
|
+
className: cx(dialog$1, RemoveScroll.classNames.fullWidth),
|
|
44903
45203
|
layout: !0,
|
|
44904
45204
|
initial: {
|
|
44905
|
-
[backdropBlur
|
|
44906
|
-
[backdropOpacity
|
|
45205
|
+
[backdropBlur]: "0px",
|
|
45206
|
+
[backdropOpacity]: "5%"
|
|
44907
45207
|
},
|
|
44908
45208
|
animate: {
|
|
44909
|
-
[backdropBlur
|
|
44910
|
-
[backdropOpacity
|
|
45209
|
+
[backdropBlur]: "3px",
|
|
45210
|
+
[backdropOpacity]: "60%"
|
|
44911
45211
|
},
|
|
44912
45212
|
exit: {
|
|
44913
|
-
[backdropBlur
|
|
44914
|
-
[backdropOpacity
|
|
45213
|
+
[backdropBlur]: "0px",
|
|
45214
|
+
[backdropOpacity]: "0%",
|
|
44915
45215
|
transition: {
|
|
44916
45216
|
duration: 0.1
|
|
44917
45217
|
}
|
|
@@ -45321,230 +45621,6 @@ function ElementDetails({
|
|
|
45321
45621
|
}
|
|
45322
45622
|
) });
|
|
45323
45623
|
}
|
|
45324
|
-
const backdropBlur = "--_blur", backdropOpacity = "--_opacity", level = "--_level", offset = "--_offset", inset = "--_inset", borderRadius = "--_border-radius", dialog$1 = css.raw({
|
|
45325
|
-
boxSizing: "border-box",
|
|
45326
|
-
margin: "0",
|
|
45327
|
-
position: "fixed",
|
|
45328
|
-
width: "100vw",
|
|
45329
|
-
height: "100vh",
|
|
45330
|
-
maxWidth: "100vw",
|
|
45331
|
-
maxHeight: "100vh",
|
|
45332
|
-
background: "mantine.colors.defaultBorder/50",
|
|
45333
|
-
shadow: "xl",
|
|
45334
|
-
border: "transparent",
|
|
45335
|
-
outline: "none",
|
|
45336
|
-
borderRadius: `var(${borderRadius})`,
|
|
45337
|
-
[backdropBlur]: "0px",
|
|
45338
|
-
[level]: "0",
|
|
45339
|
-
[offset]: "0px",
|
|
45340
|
-
[inset]: "calc((1 + var(--_level) * 0.75) * var(--_offset))",
|
|
45341
|
-
[backdropOpacity]: "0%",
|
|
45342
|
-
[borderRadius]: "0px",
|
|
45343
|
-
_backdrop: {
|
|
45344
|
-
cursor: "zoom-out"
|
|
45345
|
-
},
|
|
45346
|
-
inset: "0",
|
|
45347
|
-
padding: "0"
|
|
45348
|
-
}), body$1 = css.raw({
|
|
45349
|
-
position: "relative",
|
|
45350
|
-
containerName: "likec4-dialog",
|
|
45351
|
-
containerType: "size",
|
|
45352
|
-
border: "0 solid transparent",
|
|
45353
|
-
overflow: "hidden",
|
|
45354
|
-
width: "100%",
|
|
45355
|
-
height: "100%",
|
|
45356
|
-
background: "mantine.colors.body"
|
|
45357
|
-
}), overlay = sva({
|
|
45358
|
-
slots: ["dialog", "body"],
|
|
45359
|
-
base: {
|
|
45360
|
-
dialog: dialog$1,
|
|
45361
|
-
body: body$1
|
|
45362
|
-
},
|
|
45363
|
-
variants: {
|
|
45364
|
-
fullscreen: {
|
|
45365
|
-
false: {
|
|
45366
|
-
dialog: {
|
|
45367
|
-
sm: {
|
|
45368
|
-
inset: "[var(--_inset) var(--_inset) var(--_offset) var(--_inset)]",
|
|
45369
|
-
width: "calc(100vw - 2 * var(--_inset))",
|
|
45370
|
-
height: "calc(100vh - var(--_offset) - var(--_inset))",
|
|
45371
|
-
[borderRadius]: "6px",
|
|
45372
|
-
padding: "1.5",
|
|
45373
|
-
// 6px
|
|
45374
|
-
[offset]: "1rem"
|
|
45375
|
-
},
|
|
45376
|
-
md: {
|
|
45377
|
-
[offset]: "1rem"
|
|
45378
|
-
},
|
|
45379
|
-
lg: {
|
|
45380
|
-
[offset]: "2rem"
|
|
45381
|
-
},
|
|
45382
|
-
xl: {
|
|
45383
|
-
[offset]: "4rem"
|
|
45384
|
-
}
|
|
45385
|
-
},
|
|
45386
|
-
body: {
|
|
45387
|
-
sm: {
|
|
45388
|
-
borderRadius: `calc(var(${borderRadius}) - 2px)`
|
|
45389
|
-
}
|
|
45390
|
-
}
|
|
45391
|
-
},
|
|
45392
|
-
true: {
|
|
45393
|
-
dialog: {
|
|
45394
|
-
inset: "0",
|
|
45395
|
-
padding: "0"
|
|
45396
|
-
}
|
|
45397
|
-
}
|
|
45398
|
-
},
|
|
45399
|
-
// transparent: {
|
|
45400
|
-
// false: {
|
|
45401
|
-
// },
|
|
45402
|
-
// true: {
|
|
45403
|
-
// dialog: {
|
|
45404
|
-
// background: 'transparent',
|
|
45405
|
-
// },
|
|
45406
|
-
// },
|
|
45407
|
-
// },
|
|
45408
|
-
withBackdrop: {
|
|
45409
|
-
false: {
|
|
45410
|
-
dialog: {
|
|
45411
|
-
_backdrop: {
|
|
45412
|
-
display: "none"
|
|
45413
|
-
}
|
|
45414
|
-
}
|
|
45415
|
-
},
|
|
45416
|
-
true: {
|
|
45417
|
-
dialog: {
|
|
45418
|
-
_backdrop: {
|
|
45419
|
-
backdropFilter: `blur(var(${backdropBlur}))`,
|
|
45420
|
-
backgroundColor: {
|
|
45421
|
-
_dark: `[rgb(34 34 34 / var(${backdropOpacity}))]`,
|
|
45422
|
-
_light: `[rgb(15 15 15/ var(${backdropOpacity}))]`
|
|
45423
|
-
}
|
|
45424
|
-
}
|
|
45425
|
-
}
|
|
45426
|
-
}
|
|
45427
|
-
}
|
|
45428
|
-
},
|
|
45429
|
-
defaultVariants: {
|
|
45430
|
-
fullscreen: !1,
|
|
45431
|
-
withBackdrop: !0
|
|
45432
|
-
}
|
|
45433
|
-
}), Overlay = forwardRef(({
|
|
45434
|
-
onClose,
|
|
45435
|
-
className,
|
|
45436
|
-
classes: classes2,
|
|
45437
|
-
overlayLevel = 0,
|
|
45438
|
-
children: children2,
|
|
45439
|
-
fullscreen = !1,
|
|
45440
|
-
withBackdrop = !0,
|
|
45441
|
-
backdrop,
|
|
45442
|
-
openDelay = 130,
|
|
45443
|
-
...rest
|
|
45444
|
-
}, ref) => {
|
|
45445
|
-
const [opened, setOpened] = useState(openDelay === 0), focusTrapRef = useFocusTrap(opened), dialogRef = useRef(null), isClosingRef = useRef(!1), motionNotReduced = useReducedMotionConfig() !== !0, onCloseRef = useRef(onClose);
|
|
45446
|
-
onCloseRef.current = onClose;
|
|
45447
|
-
const close = useDebouncedCallback(
|
|
45448
|
-
() => {
|
|
45449
|
-
isClosingRef.current || (isClosingRef.current = !0, onCloseRef.current());
|
|
45450
|
-
},
|
|
45451
|
-
[],
|
|
45452
|
-
50
|
|
45453
|
-
);
|
|
45454
|
-
useLayoutEffect$1(() => {
|
|
45455
|
-
dialogRef.current?.open || dialogRef.current?.showModal();
|
|
45456
|
-
}, []), useTimeoutEffect(() => {
|
|
45457
|
-
setOpened(!0);
|
|
45458
|
-
}, openDelay > 0 ? openDelay : void 0);
|
|
45459
|
-
const styles = overlay({
|
|
45460
|
-
fullscreen,
|
|
45461
|
-
withBackdrop
|
|
45462
|
-
});
|
|
45463
|
-
let targetBackdropOpacity = overlayLevel > 0 ? "50%" : "60%";
|
|
45464
|
-
return backdrop?.opacity !== void 0 && (targetBackdropOpacity = `${backdrop.opacity * 100}%`), /* @__PURE__ */ jsx(
|
|
45465
|
-
m$4.dialog,
|
|
45466
|
-
{
|
|
45467
|
-
ref: useMergedRef(
|
|
45468
|
-
dialogRef,
|
|
45469
|
-
focusTrapRef,
|
|
45470
|
-
ref
|
|
45471
|
-
),
|
|
45472
|
-
className: cx(
|
|
45473
|
-
classes2?.dialog,
|
|
45474
|
-
className,
|
|
45475
|
-
styles.dialog,
|
|
45476
|
-
fullscreen && RemoveScroll.classNames.fullWidth
|
|
45477
|
-
),
|
|
45478
|
-
layout: !0,
|
|
45479
|
-
style: {
|
|
45480
|
-
// @ts-ignore
|
|
45481
|
-
[level]: overlayLevel
|
|
45482
|
-
},
|
|
45483
|
-
...motionNotReduced ? {
|
|
45484
|
-
initial: {
|
|
45485
|
-
[backdropBlur]: "0px",
|
|
45486
|
-
[backdropOpacity]: "0%",
|
|
45487
|
-
scale: 0.95,
|
|
45488
|
-
originY: 0,
|
|
45489
|
-
translateY: -20,
|
|
45490
|
-
opacity: 0
|
|
45491
|
-
},
|
|
45492
|
-
animate: {
|
|
45493
|
-
[backdropBlur]: overlayLevel > 0 ? "4px" : "8px",
|
|
45494
|
-
[backdropOpacity]: targetBackdropOpacity,
|
|
45495
|
-
scale: 1,
|
|
45496
|
-
opacity: 1,
|
|
45497
|
-
translateY: 0,
|
|
45498
|
-
transition: {
|
|
45499
|
-
delay: 0.075
|
|
45500
|
-
}
|
|
45501
|
-
},
|
|
45502
|
-
exit: {
|
|
45503
|
-
opacity: 0,
|
|
45504
|
-
scale: 0.98,
|
|
45505
|
-
translateY: -20,
|
|
45506
|
-
transition: {
|
|
45507
|
-
duration: 0.1
|
|
45508
|
-
},
|
|
45509
|
-
[backdropBlur]: "0px",
|
|
45510
|
-
[backdropOpacity]: "0%"
|
|
45511
|
-
}
|
|
45512
|
-
} : {
|
|
45513
|
-
initial: {
|
|
45514
|
-
[backdropBlur]: "8px",
|
|
45515
|
-
[backdropOpacity]: targetBackdropOpacity
|
|
45516
|
-
}
|
|
45517
|
-
},
|
|
45518
|
-
onClick: (e2) => {
|
|
45519
|
-
if (e2.stopPropagation(), e2.target?.nodeName?.toUpperCase() === "DIALOG") {
|
|
45520
|
-
dialogRef.current?.close();
|
|
45521
|
-
return;
|
|
45522
|
-
}
|
|
45523
|
-
},
|
|
45524
|
-
onCancel: (e2) => {
|
|
45525
|
-
e2.preventDefault(), e2.stopPropagation(), close();
|
|
45526
|
-
},
|
|
45527
|
-
onDoubleClick: stopPropagation,
|
|
45528
|
-
onPointerDown: stopPropagation,
|
|
45529
|
-
onClose: (e2) => {
|
|
45530
|
-
e2.stopPropagation(), close();
|
|
45531
|
-
},
|
|
45532
|
-
...rest,
|
|
45533
|
-
children: /* @__PURE__ */ jsx(RemoveScroll, { forwardProps: !0, children: /* @__PURE__ */ jsx(
|
|
45534
|
-
"div",
|
|
45535
|
-
{
|
|
45536
|
-
className: cx(
|
|
45537
|
-
classes2?.body,
|
|
45538
|
-
styles.body,
|
|
45539
|
-
"overlay-body"
|
|
45540
|
-
),
|
|
45541
|
-
children: opened && /* @__PURE__ */ jsx(Fragment$1, { children: children2 })
|
|
45542
|
-
}
|
|
45543
|
-
) })
|
|
45544
|
-
}
|
|
45545
|
-
);
|
|
45546
|
-
});
|
|
45547
|
-
Overlay.displayName = "Overlay";
|
|
45548
45624
|
const finalize = (elements, explicits) => elements.size > 2 && explicits.size !== elements.size ? new Set(sortParentsFirst([
|
|
45549
45625
|
...treeFromElements$1(elements).flatten(),
|
|
45550
45626
|
...explicits
|
|
@@ -45558,7 +45634,7 @@ function computeEdgeDetailsViewData(edges, view) {
|
|
|
45558
45634
|
};
|
|
45559
45635
|
for (const edgeId of edges) {
|
|
45560
45636
|
const edge = view.findEdge(edgeId), _relationships = edge ? [...edge.relationships("model")] : [];
|
|
45561
|
-
if (!edge || !
|
|
45637
|
+
if (!edge || !i$8(_relationships, 1) || !edge.source.hasElement() || !edge.target.hasElement())
|
|
45562
45638
|
continue;
|
|
45563
45639
|
const source = edge.source.element, target = edge.target.element;
|
|
45564
45640
|
addExplicit(source, "source"), addExplicit(target, "target");
|
|
@@ -46243,7 +46319,7 @@ const selectSubject = (state) => ({
|
|
|
46243
46319
|
const actor = useRelationshipDetailsActor(), subject = xstateReact_cjsExports.useSelector(actor, selectSubject, deepEqual), likec4model = useLikeC4Model$1(), view = likec4model.findView(subject.viewId) ?? null, data = useMemo(() => {
|
|
46244
46320
|
let data2;
|
|
46245
46321
|
if ("edgeId" in subject && n$5(subject.edgeId)) {
|
|
46246
|
-
invariant$
|
|
46322
|
+
invariant$3(view, `view ${subject.viewId} not found`);
|
|
46247
46323
|
const edge = nonNullable(view.findEdge(subject.edgeId), `edge ${subject.edgeId} not found in ${subject.viewId}`);
|
|
46248
46324
|
data2 = computeEdgeDetailsViewData([edge.id], view);
|
|
46249
46325
|
} else if (subject.source && subject.target)
|
|
@@ -46344,7 +46420,7 @@ const selectSubject = (state) => ({
|
|
|
46344
46420
|
if (!view || !view.isDiagram())
|
|
46345
46421
|
return null;
|
|
46346
46422
|
const edges = [...view.edges()];
|
|
46347
|
-
let edge = "edgeId" in subject && n$5(subject.edgeId) ? edges.find((e2) => e2.id === subject.edgeId) : f(edges, (e2) => e2.source.element?.id === subject.source && e2.target.element?.id === subject.target) || f(edges, (e2) => (e2.source.element?.id === subject.source || isAncestor(e2.source.element?.id ?? "__", subject.source ?? "__")) && (e2.target.element?.id === subject.target || isAncestor(e2.target.element?.id ?? "__", subject.target ?? "__")));
|
|
46423
|
+
let edge = "edgeId" in subject && n$5(subject.edgeId) ? edges.find((e2) => e2.id === subject.edgeId) : f(edges, (e2) => e2.source.element?.id === subject.source && e2.target.element?.id === subject.target) || f(edges, (e2) => (e2.source.element?.id === subject.source || isAncestor$1(e2.source.element?.id ?? "__", subject.source ?? "__")) && (e2.target.element?.id === subject.target || isAncestor$1(e2.target.element?.id ?? "__", subject.target ?? "__")));
|
|
46348
46424
|
return edge ? /* @__PURE__ */ jsx(TopLeftPanelInner, { edge: edge.$edge, view: view.$view }) : null;
|
|
46349
46425
|
}), TopLeftPanelInner = ({ edge, view }) => {
|
|
46350
46426
|
const browser = useRelationshipDetails(), edgeId = edge.id, [historyEdgeId, historyOps, { history, current }] = useStateHistory(edge.id);
|
|
@@ -47010,7 +47086,7 @@ function ElementTreeNode({ node: node2, elementProps, hasChildren, expanded }) {
|
|
|
47010
47086
|
component: "div",
|
|
47011
47087
|
highlight: searchTerms,
|
|
47012
47088
|
className: cx(elementId, btn$1.descriptionColor),
|
|
47013
|
-
children: nameFromFqn(element.id)
|
|
47089
|
+
children: nameFromFqn$1(element.id)
|
|
47014
47090
|
}
|
|
47015
47091
|
) })
|
|
47016
47092
|
] }),
|
|
@@ -50353,7 +50429,7 @@ function viewToNodesEdge$1(opts) {
|
|
|
50353
50429
|
break;
|
|
50354
50430
|
}
|
|
50355
50431
|
case isCompound: {
|
|
50356
|
-
invariant$
|
|
50432
|
+
invariant$3(!!modelFqn, "ModelRef expected"), xynodes.push(
|
|
50357
50433
|
{
|
|
50358
50434
|
...base,
|
|
50359
50435
|
type: "compound-element",
|
|
@@ -50383,7 +50459,7 @@ function viewToNodesEdge$1(opts) {
|
|
|
50383
50459
|
break;
|
|
50384
50460
|
}
|
|
50385
50461
|
default:
|
|
50386
|
-
invariant$
|
|
50462
|
+
invariant$3(!!modelFqn, "ModelRef expected"), xynodes.push(
|
|
50387
50463
|
{
|
|
50388
50464
|
...base,
|
|
50389
50465
|
type: "element",
|
|
@@ -50415,7 +50491,7 @@ function viewToNodesEdge$1(opts) {
|
|
|
50415
50491
|
id: edge.id,
|
|
50416
50492
|
label: edge.label,
|
|
50417
50493
|
technology: edge.technology,
|
|
50418
|
-
notes: edge.notes,
|
|
50494
|
+
notes: RichText.from(edge.notes),
|
|
50419
50495
|
navigateTo: edge.navigateTo,
|
|
50420
50496
|
controlPoints: edge.controlPoints ?? null,
|
|
50421
50497
|
labelBBox: edge.labelBBox ?? null,
|
|
@@ -50551,7 +50627,7 @@ function viewToNodesEdge(view) {
|
|
|
50551
50627
|
break;
|
|
50552
50628
|
}
|
|
50553
50629
|
default:
|
|
50554
|
-
invariant$
|
|
50630
|
+
invariant$3(fqn2, "Element should have either modelRef or deploymentRef"), xynodes.push(
|
|
50555
50631
|
{
|
|
50556
50632
|
...base,
|
|
50557
50633
|
type: "element",
|
|
@@ -50635,7 +50711,7 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
50635
50711
|
xynodes: updateNodes(nodes, next.xynodes),
|
|
50636
50712
|
xyedges: updateEdges(edges, next.xyedges)
|
|
50637
50713
|
};
|
|
50638
|
-
}, parent = nonNullable(self2._parent);
|
|
50714
|
+
}, parent = nonNullable$1(self2._parent);
|
|
50639
50715
|
let zoom2 = xyflow2.getZoom();
|
|
50640
50716
|
const maxZoom = Math.max(zoom2, 1), nextviewport = getViewportForBounds(update.bounds, width, height, MinZoom, maxZoom, ViewPadding), nextSubjectNode = next.xynodes.find(
|
|
50641
50717
|
(n2) => n2.type !== "empty" && n2.data.column === "subjects" && n2.data.fqn === subjectId
|
|
@@ -50679,7 +50755,7 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
50679
50755
|
type: "update.xydata",
|
|
50680
50756
|
xynodes: currentNodes,
|
|
50681
50757
|
xyedges: []
|
|
50682
|
-
}), await delay$1(120), next.xynodes = next.xynodes.map(setDimmed(!1)), signal.aborted || (await xyflow2.setCenter(currentSubjectCenter.x, currentSubjectCenter.y, { zoom: zoom2, duration: 300 }), await xyflow2.setCenter(nextSubjectCenter.x, nextSubjectCenter.y, { zoom: zoom2 })), updateXYData();
|
|
50758
|
+
}), await delay$1(120), next.xynodes = next.xynodes.map(Base.setDimmed(!1)), signal.aborted || (await xyflow2.setCenter(currentSubjectCenter.x, currentSubjectCenter.y, { zoom: zoom2, duration: 300 }), await xyflow2.setCenter(nextSubjectCenter.x, nextSubjectCenter.y, { zoom: zoom2 })), updateXYData();
|
|
50683
50759
|
}), relationshipsBrowserLogic = xstate_cjsExports.setup({
|
|
50684
50760
|
types: {
|
|
50685
50761
|
context: {},
|
|
@@ -50872,10 +50948,10 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
50872
50948
|
xstate_cjsExports.assign({
|
|
50873
50949
|
xyedges: ({ context: context2, event }) => {
|
|
50874
50950
|
const hasDimmed = context2.xyedges.some((edge) => edge.data.dimmed !== !1 || edge.selected);
|
|
50875
|
-
return context2.xyedges.map((edge) => edge.id === event.edge.id ? setData(edge, {
|
|
50951
|
+
return context2.xyedges.map((edge) => edge.id === event.edge.id ? Base.setData(edge, {
|
|
50876
50952
|
hovered: !0,
|
|
50877
50953
|
dimmed: !1
|
|
50878
|
-
}) : hasDimmed && !edge.selected ? setDimmed(edge, "immediate") : edge);
|
|
50954
|
+
}) : hasDimmed && !edge.selected ? Base.setDimmed(edge, "immediate") : edge);
|
|
50879
50955
|
}
|
|
50880
50956
|
}),
|
|
50881
50957
|
xstate_cjsExports.cancel("undim.edges"),
|
|
@@ -50886,7 +50962,7 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
50886
50962
|
"xyflow.edgeMouseLeave": {
|
|
50887
50963
|
actions: [
|
|
50888
50964
|
xstate_cjsExports.assign({
|
|
50889
|
-
xyedges: ({ context: context2, event }) => context2.xyedges.map((edge) => edge.id === event.edge.id ? setHovered(edge, !1) : edge)
|
|
50965
|
+
xyedges: ({ context: context2, event }) => context2.xyedges.map((edge) => edge.id === event.edge.id ? Base.setHovered(edge, !1) : edge)
|
|
50890
50966
|
}),
|
|
50891
50967
|
xstate_cjsExports.cancel("dim.nonhovered.edges"),
|
|
50892
50968
|
xstate_cjsExports.raise({ type: "undim.edges" }, { id: "undim.edges", delay: 400 })
|
|
@@ -50895,13 +50971,13 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
50895
50971
|
"dim.nonhovered.edges": {
|
|
50896
50972
|
actions: xstate_cjsExports.assign({
|
|
50897
50973
|
xyedges: ({ context: context2 }) => context2.xyedges.map(
|
|
50898
|
-
(edge) => edge.data.hovered ? edge : setDimmed(edge, edge.data.dimmed === "immediate" ? "immediate" : !0)
|
|
50974
|
+
(edge) => edge.data.hovered ? edge : Base.setDimmed(edge, edge.data.dimmed === "immediate" ? "immediate" : !0)
|
|
50899
50975
|
)
|
|
50900
50976
|
})
|
|
50901
50977
|
},
|
|
50902
50978
|
"undim.edges": {
|
|
50903
50979
|
actions: xstate_cjsExports.assign({
|
|
50904
|
-
xyedges: ({ context: context2 }) => context2.xyedges.map(setDimmed(!1))
|
|
50980
|
+
xyedges: ({ context: context2 }) => context2.xyedges.map(Base.setDimmed(!1))
|
|
50905
50981
|
})
|
|
50906
50982
|
},
|
|
50907
50983
|
"xyflow.selectionChange": {
|
|
@@ -50918,9 +50994,9 @@ const findRootSubject = (nodes) => nodes.find(
|
|
|
50918
50994
|
input: ({ context: context2 }) => ({
|
|
50919
50995
|
subjectId: context2.subject,
|
|
50920
50996
|
navigateFromNode: context2.navigateFromNode,
|
|
50921
|
-
xyflow: nonNullable(context2.xyflow),
|
|
50922
|
-
xystore: nonNullable(context2.xystore),
|
|
50923
|
-
update: nonNullable(context2.layouted)
|
|
50997
|
+
xyflow: nonNullable$1(context2.xyflow),
|
|
50998
|
+
xystore: nonNullable$1(context2.xystore),
|
|
50999
|
+
update: nonNullable$1(context2.layouted)
|
|
50924
51000
|
}),
|
|
50925
51001
|
onDone: {
|
|
50926
51002
|
target: "idle",
|
|
@@ -51145,7 +51221,7 @@ function layoutResultToXYFlow(layout2) {
|
|
|
51145
51221
|
};
|
|
51146
51222
|
}
|
|
51147
51223
|
function inputToSubject(input2) {
|
|
51148
|
-
return "edgeId" in input2 ? (invariant$
|
|
51224
|
+
return "edgeId" in input2 ? (invariant$3(t$3(input2.edgeId), "edgeId is required"), {
|
|
51149
51225
|
edgeId: input2.edgeId
|
|
51150
51226
|
}) : {
|
|
51151
51227
|
source: input2.source,
|
|
@@ -51163,7 +51239,7 @@ const relationshipDetailsLogic = xstate_cjsExports.setup({
|
|
|
51163
51239
|
let { duration, bounds } = params ?? {};
|
|
51164
51240
|
duration ??= 450;
|
|
51165
51241
|
const { xyflow: xyflow2, xystore } = context2;
|
|
51166
|
-
invariant$
|
|
51242
|
+
invariant$3(xyflow2, "xyflow is not initialized"), invariant$3(xystore, "xystore is not initialized"), bounds ??= context2.bounds;
|
|
51167
51243
|
const maxZoom = Math.max(xyflow2.getZoom(), 1);
|
|
51168
51244
|
if (bounds) {
|
|
51169
51245
|
const { width, height } = xystore.getState(), viewport = getViewportForBounds(bounds, width, height, MinZoom, maxZoom, 0.1);
|
|
@@ -51177,7 +51253,7 @@ const relationshipDetailsLogic = xstate_cjsExports.setup({
|
|
|
51177
51253
|
});
|
|
51178
51254
|
},
|
|
51179
51255
|
"xyflow:updateNodeInternals": ({ context: context2 }) => {
|
|
51180
|
-
invariant$
|
|
51256
|
+
invariant$3(context2.xystore, "xystore is not initialized");
|
|
51181
51257
|
const { domNode, updateNodeInternals: updateNodeInternals2 } = context2.xystore.getState(), nodeIds = new Set(context2.xyedges.flatMap((e2) => [e2.source, e2.target]));
|
|
51182
51258
|
if (nodeIds.size === 0 || !domNode)
|
|
51183
51259
|
return;
|
|
@@ -51276,10 +51352,10 @@ const relationshipDetailsLogic = xstate_cjsExports.setup({
|
|
|
51276
51352
|
const hasDimmed = context2.xyedges.some(
|
|
51277
51353
|
(edge) => edge.data.dimmed === !0 || edge.data.dimmed === "immediate"
|
|
51278
51354
|
);
|
|
51279
|
-
return context2.xyedges.map((edge) => edge.id === event.edge.id ? setData(edge, {
|
|
51355
|
+
return context2.xyedges.map((edge) => edge.id === event.edge.id ? Base.setData(edge, {
|
|
51280
51356
|
hovered: !0,
|
|
51281
51357
|
dimmed: !1
|
|
51282
|
-
}) : hasDimmed && !edge.selected ? setDimmed(edge, "immediate") : edge);
|
|
51358
|
+
}) : hasDimmed && !edge.selected ? Base.setDimmed(edge, "immediate") : edge);
|
|
51283
51359
|
}
|
|
51284
51360
|
}),
|
|
51285
51361
|
xstate_cjsExports.cancel("undim.edges"),
|
|
@@ -51290,7 +51366,7 @@ const relationshipDetailsLogic = xstate_cjsExports.setup({
|
|
|
51290
51366
|
"xyflow.edgeMouseLeave": {
|
|
51291
51367
|
actions: [
|
|
51292
51368
|
xstate_cjsExports.assign({
|
|
51293
|
-
xyedges: ({ context: context2, event }) => context2.xyedges.map((edge) => edge.id === event.edge.id ? setHovered(edge, !1) : edge)
|
|
51369
|
+
xyedges: ({ context: context2, event }) => context2.xyedges.map((edge) => edge.id === event.edge.id ? Base.setHovered(edge, !1) : edge)
|
|
51294
51370
|
}),
|
|
51295
51371
|
xstate_cjsExports.cancel("dim.nonhovered.edges"),
|
|
51296
51372
|
xstate_cjsExports.raise({ type: "undim.edges" }, { id: "undim.edges", delay: 400 })
|
|
@@ -51298,14 +51374,14 @@ const relationshipDetailsLogic = xstate_cjsExports.setup({
|
|
|
51298
51374
|
},
|
|
51299
51375
|
"dim.nonhovered.edges": {
|
|
51300
51376
|
actions: xstate_cjsExports.assign({
|
|
51301
|
-
xyedges: ({ context: context2 }) => context2.xyedges.map((edge) => setDimmed(edge, edge.data.hovered !== !0))
|
|
51377
|
+
xyedges: ({ context: context2 }) => context2.xyedges.map((edge) => Base.setDimmed(edge, edge.data.hovered !== !0))
|
|
51302
51378
|
})
|
|
51303
51379
|
},
|
|
51304
51380
|
"undim.edges": {
|
|
51305
51381
|
actions: xstate_cjsExports.assign({
|
|
51306
51382
|
xyedges: ({ context: context2 }) => context2.xyedges.some((edge) => edge.selected === !0) ? context2.xyedges.map(
|
|
51307
|
-
(edge) => setDimmed(edge, edge.selected !== !0 ? edge.data.dimmed || "immediate" : !1)
|
|
51308
|
-
) : context2.xyedges.map(setDimmed(!1))
|
|
51383
|
+
(edge) => Base.setDimmed(edge, edge.selected !== !0 ? edge.data.dimmed || "immediate" : !1)
|
|
51384
|
+
) : context2.xyedges.map(Base.setDimmed(!1))
|
|
51309
51385
|
})
|
|
51310
51386
|
},
|
|
51311
51387
|
"xyflow.selectionChange": {
|
|
@@ -51848,7 +51924,7 @@ class GridAligner extends Aligner {
|
|
|
51848
51924
|
Array.from(layout2.nodePositions),
|
|
51849
51925
|
m$1(([id2, position]) => {
|
|
51850
51926
|
const originalRect = originalRects.get(id2);
|
|
51851
|
-
return invariant$
|
|
51927
|
+
return invariant$3(originalRect, `Could not find original rect for node ${id2}`), [i$6(originalRect, ["x", "y"]), position];
|
|
51852
51928
|
}),
|
|
51853
51929
|
m$1(
|
|
51854
51930
|
([original, suggested]) => Math.abs(original[this.secondaryAxisCoord] - suggested[this.secondaryAxisCoord])
|
|
@@ -51860,7 +51936,7 @@ class GridAligner extends Aligner {
|
|
|
51860
51936
|
}
|
|
51861
51937
|
getGapsPositions(layer) {
|
|
51862
51938
|
const result = [], { layout: layout2, nodes } = layer;
|
|
51863
|
-
invariant$
|
|
51939
|
+
invariant$3(layout2, "Layout of the layer must be computed before calling getGapsPositions");
|
|
51864
51940
|
for (let i2 = 1; i2 < nodes.length; i2++) {
|
|
51865
51941
|
const previousNode = nodes[i2 - 1], currentNode = nodes[i2], previousNodePosition = layout2.nodePositions.get(previousNode.id), currentNodePosition = layout2.nodePositions.get(currentNode.id);
|
|
51866
51942
|
result.push(
|
|
@@ -51871,7 +51947,7 @@ class GridAligner extends Aligner {
|
|
|
51871
51947
|
}
|
|
51872
51948
|
getNodePositions(layer) {
|
|
51873
51949
|
const result = [], { layout: layout2, nodes } = layer;
|
|
51874
|
-
invariant$
|
|
51950
|
+
invariant$3(layout2, "Layout of the layer must be computed before calling getGapsPositions");
|
|
51875
51951
|
for (let i2 = 0; i2 < nodes.length; i2++) {
|
|
51876
51952
|
const node2 = nodes[i2], nodePosition = layout2.nodePositions.get(node2.id);
|
|
51877
51953
|
result.push(
|
|
@@ -52018,15 +52094,15 @@ function focusNodesEdges(params) {
|
|
|
52018
52094
|
const { xynodes: _xynodes, xyedges: _xyedges, focusedNode } = params.context;
|
|
52019
52095
|
if (!focusedNode)
|
|
52020
52096
|
return {};
|
|
52021
|
-
const focused = /* @__PURE__ */ new Set([focusedNode]), xyedges = _xyedges.map((edge) => edge.source === focusedNode || edge.target === focusedNode ? (focused.add(edge.source), focused.add(edge.target), setData(edge, {
|
|
52097
|
+
const focused = /* @__PURE__ */ new Set([focusedNode]), xyedges = _xyedges.map((edge) => edge.source === focusedNode || edge.target === focusedNode ? (focused.add(edge.source), focused.add(edge.target), Base.setData(edge, {
|
|
52022
52098
|
dimmed: !1,
|
|
52023
52099
|
active: !0
|
|
52024
|
-
})) : setData(edge, {
|
|
52100
|
+
})) : Base.setData(edge, {
|
|
52025
52101
|
dimmed: !0,
|
|
52026
52102
|
active: !1
|
|
52027
52103
|
}));
|
|
52028
52104
|
return {
|
|
52029
|
-
xynodes: _xynodes.map((n2) => setDimmed(n2, !focused.has(n2.id))),
|
|
52105
|
+
xynodes: _xynodes.map((n2) => Base.setDimmed(n2, !focused.has(n2.id))),
|
|
52030
52106
|
xyedges
|
|
52031
52107
|
};
|
|
52032
52108
|
}
|
|
@@ -52107,7 +52183,7 @@ function navigateBack({ context: context2 }) {
|
|
|
52107
52183
|
history
|
|
52108
52184
|
}
|
|
52109
52185
|
} = context2;
|
|
52110
|
-
invariant$
|
|
52186
|
+
invariant$3(currentIndex > 0, "Cannot navigate back");
|
|
52111
52187
|
const stepCurrent = history[currentIndex], stepBack = history[currentIndex - 1];
|
|
52112
52188
|
return {
|
|
52113
52189
|
navigationHistory: {
|
|
@@ -52128,7 +52204,7 @@ function navigateForward({ context: context2 }) {
|
|
|
52128
52204
|
history
|
|
52129
52205
|
}
|
|
52130
52206
|
} = context2;
|
|
52131
|
-
invariant$
|
|
52207
|
+
invariant$3(currentIndex < history.length - 1, "Cannot navigate forward");
|
|
52132
52208
|
const stepCurrent = history[currentIndex], stepForward = history[currentIndex + 1];
|
|
52133
52209
|
return {
|
|
52134
52210
|
navigationHistory: {
|
|
@@ -52213,14 +52289,14 @@ function updateActiveWalkthrough({ context: context2 }) {
|
|
|
52213
52289
|
return {
|
|
52214
52290
|
xyedges: context2.xyedges.map((edge) => {
|
|
52215
52291
|
const active = stepId === edge.id || !!parallelPrefix && edge.id.startsWith(parallelPrefix);
|
|
52216
|
-
return setData(edge, {
|
|
52292
|
+
return Base.setData(edge, {
|
|
52217
52293
|
active,
|
|
52218
52294
|
dimmed: !active
|
|
52219
52295
|
});
|
|
52220
52296
|
}),
|
|
52221
52297
|
xynodes: context2.xynodes.map((node2) => {
|
|
52222
52298
|
const dimmed = step.source !== node2.id && step.target !== node2.id;
|
|
52223
|
-
return setDimmed(node2, dimmed);
|
|
52299
|
+
return Base.setDimmed(node2, dimmed);
|
|
52224
52300
|
})
|
|
52225
52301
|
};
|
|
52226
52302
|
}
|
|
@@ -52483,7 +52559,7 @@ const _diagramMachine = xstate_cjsExports.setup({
|
|
|
52483
52559
|
},
|
|
52484
52560
|
"xyflow:setViewportCenter": ({ context: context2 }, params) => {
|
|
52485
52561
|
const { x: x2, y: y2 } = params;
|
|
52486
|
-
invariant$
|
|
52562
|
+
invariant$3(context2.xyflow, "xyflow is not initialized");
|
|
52487
52563
|
const zoom2 = context2.xyflow.getZoom();
|
|
52488
52564
|
context2.xyflow.setCenter(Math.round(x2), Math.round(y2), { zoom: zoom2 });
|
|
52489
52565
|
},
|
|
@@ -52574,16 +52650,16 @@ const _diagramMachine = xstate_cjsExports.setup({
|
|
|
52574
52650
|
});
|
|
52575
52651
|
}),
|
|
52576
52652
|
onNodeMouseEnter: xstate_cjsExports.assign(({ context: context2 }, params) => ({
|
|
52577
|
-
xynodes: context2.xynodes.map((n2) => n2.id === params.node.id ? setHovered(n2, !0) : n2)
|
|
52653
|
+
xynodes: context2.xynodes.map((n2) => n2.id === params.node.id ? Base.setHovered(n2, !0) : n2)
|
|
52578
52654
|
})),
|
|
52579
52655
|
onNodeMouseLeave: xstate_cjsExports.assign(({ context: context2 }, params) => ({
|
|
52580
|
-
xynodes: context2.xynodes.map((n2) => n2.id === params.node.id ? setHovered(n2, !1) : n2)
|
|
52656
|
+
xynodes: context2.xynodes.map((n2) => n2.id === params.node.id ? Base.setHovered(n2, !1) : n2)
|
|
52581
52657
|
})),
|
|
52582
52658
|
onEdgeMouseEnter: xstate_cjsExports.enqueueActions(({ enqueue, context: context2, event }) => {
|
|
52583
52659
|
xstate_cjsExports.assertEvent(event, "xyflow.edgeMouseEnter");
|
|
52584
52660
|
let edge = event.edge;
|
|
52585
52661
|
enqueue.assign({
|
|
52586
|
-
xyedges: context2.xyedges.map((e2) => e2.id === event.edge.id ? (edge = setHovered(e2, !0), edge) : e2)
|
|
52662
|
+
xyedges: context2.xyedges.map((e2) => e2.id === event.edge.id ? (edge = Base.setHovered(e2, !0), edge) : e2)
|
|
52587
52663
|
}), enqueue.emit({
|
|
52588
52664
|
type: "edgeMouseEnter",
|
|
52589
52665
|
edge,
|
|
@@ -52594,7 +52670,7 @@ const _diagramMachine = xstate_cjsExports.setup({
|
|
|
52594
52670
|
xstate_cjsExports.assertEvent(event, "xyflow.edgeMouseLeave");
|
|
52595
52671
|
let edge = event.edge;
|
|
52596
52672
|
enqueue.assign({
|
|
52597
|
-
xyedges: context2.xyedges.map((e2) => e2.id === event.edge.id ? (edge = setHovered(e2, !1), edge) : e2)
|
|
52673
|
+
xyedges: context2.xyedges.map((e2) => e2.id === event.edge.id ? (edge = Base.setHovered(e2, !1), edge) : e2)
|
|
52598
52674
|
}), enqueue.emit({
|
|
52599
52675
|
type: "edgeMouseLeave",
|
|
52600
52676
|
edge,
|
|
@@ -52607,17 +52683,17 @@ const _diagramMachine = xstate_cjsExports.setup({
|
|
|
52607
52683
|
return {
|
|
52608
52684
|
xynodes: context2.xynodes.map((n2) => {
|
|
52609
52685
|
const node2 = findDiagramNode(context2, n2.id);
|
|
52610
|
-
return node2 && node2.notation === params.notation.title && node2.shape === params.notation.shape && node2.color === params.notation.color && kinds.includes(node2.kind) ? setDimmed(n2, !1) : setDimmed(n2, "immediate");
|
|
52686
|
+
return node2 && node2.notation === params.notation.title && node2.shape === params.notation.shape && node2.color === params.notation.color && kinds.includes(node2.kind) ? Base.setDimmed(n2, !1) : Base.setDimmed(n2, "immediate");
|
|
52611
52687
|
}),
|
|
52612
|
-
xyedges: context2.xyedges.map(setDimmed("immediate"))
|
|
52688
|
+
xyedges: context2.xyedges.map(Base.setDimmed("immediate"))
|
|
52613
52689
|
};
|
|
52614
52690
|
}),
|
|
52615
52691
|
"tag.highlight": xstate_cjsExports.assign(({ context: context2, event }) => (xstate_cjsExports.assertEvent(event, "tag.highlight"), {
|
|
52616
|
-
xynodes: context2.xynodes.map((n2) => n2.data.tags?.includes(event.tag) ? setDimmed(n2, !1) : setDimmed(n2, !0))
|
|
52692
|
+
xynodes: context2.xynodes.map((n2) => n2.data.tags?.includes(event.tag) ? Base.setDimmed(n2, !1) : Base.setDimmed(n2, !0))
|
|
52617
52693
|
})),
|
|
52618
52694
|
"undim everything": xstate_cjsExports.assign(({ context: context2 }) => ({
|
|
52619
|
-
xynodes: context2.xynodes.map(setDimmed(!1)),
|
|
52620
|
-
xyedges: context2.xyedges.map(setData({
|
|
52695
|
+
xynodes: context2.xynodes.map(Base.setDimmed(!1)),
|
|
52696
|
+
xyedges: context2.xyedges.map(Base.setData({
|
|
52621
52697
|
dimmed: !1,
|
|
52622
52698
|
active: !1
|
|
52623
52699
|
}))
|
|
@@ -52625,14 +52701,14 @@ const _diagramMachine = xstate_cjsExports.setup({
|
|
|
52625
52701
|
"update active walkthrough": xstate_cjsExports.assign(updateActiveWalkthrough),
|
|
52626
52702
|
"emit: walkthroughStarted": xstate_cjsExports.emit(({ context: context2 }) => {
|
|
52627
52703
|
const edge = context2.xyedges.find((x2) => x2.id === context2.activeWalkthrough?.stepId);
|
|
52628
|
-
return invariant$
|
|
52704
|
+
return invariant$3(edge, "Invalid walkthrough state"), {
|
|
52629
52705
|
type: "walkthroughStarted",
|
|
52630
52706
|
edge
|
|
52631
52707
|
};
|
|
52632
52708
|
}),
|
|
52633
52709
|
"emit: walkthroughStep": xstate_cjsExports.emit(({ context: context2 }) => {
|
|
52634
52710
|
const edge = context2.xyedges.find((x2) => x2.id === context2.activeWalkthrough?.stepId);
|
|
52635
|
-
return invariant$
|
|
52711
|
+
return invariant$3(edge, "Invalid walkthrough state"), {
|
|
52636
52712
|
type: "walkthroughStep",
|
|
52637
52713
|
edge
|
|
52638
52714
|
};
|
|
@@ -53150,8 +53226,8 @@ const _diagramMachine = xstate_cjsExports.setup({
|
|
|
53150
53226
|
},
|
|
53151
53227
|
"xyflow.viewportMoved": {
|
|
53152
53228
|
actions: xstate_cjsExports.assign({
|
|
53153
|
-
viewportChangedManually: ({ event }) => event.manually,
|
|
53154
|
-
viewport: ({ event }) => event.viewport
|
|
53229
|
+
viewportChangedManually: (({ event }) => event.manually),
|
|
53230
|
+
viewport: (({ event }) => event.viewport)
|
|
53155
53231
|
})
|
|
53156
53232
|
},
|
|
53157
53233
|
"xyflow.edgeEditingStarted": {
|
|
@@ -53256,9 +53332,9 @@ function DiagramActorProvider({
|
|
|
53256
53332
|
actors: {
|
|
53257
53333
|
syncManualLayoutActorLogic: syncManualLayoutActorLogic.provide({
|
|
53258
53334
|
actions: {
|
|
53259
|
-
"trigger:OnChange": (_, params) => {
|
|
53335
|
+
"trigger:OnChange": ((_, params) => {
|
|
53260
53336
|
handlersRef.current.onChange?.(params);
|
|
53261
|
-
}
|
|
53337
|
+
})
|
|
53262
53338
|
}
|
|
53263
53339
|
})
|
|
53264
53340
|
}
|
|
@@ -53974,7 +54050,7 @@ function buildDiagramTreeData(views, groupBy) {
|
|
|
53974
54050
|
relativePath = "";
|
|
53975
54051
|
break;
|
|
53976
54052
|
default:
|
|
53977
|
-
nonexhaustive(groupBy);
|
|
54053
|
+
nonexhaustive$1(groupBy);
|
|
53978
54054
|
}
|
|
53979
54055
|
const parent = findParent(relativePath);
|
|
53980
54056
|
parent.children.push({
|
|
@@ -54653,7 +54729,7 @@ function treeFromElements(elements) {
|
|
|
54653
54729
|
), acc), new DefaultMap(() => []));
|
|
54654
54730
|
return {
|
|
54655
54731
|
sorted,
|
|
54656
|
-
byId: (id2) => nonNullable(map2.get(id2), `Element not found by id: ${id2}`),
|
|
54732
|
+
byId: (id2) => nonNullable$1(map2.get(id2), `Element not found by id: ${id2}`),
|
|
54657
54733
|
root: root2,
|
|
54658
54734
|
parent: (el) => parents.get(el),
|
|
54659
54735
|
children: (el) => children2.get(el)
|
|
@@ -55307,9 +55383,9 @@ const Panel = forwardRef((props2, ref) => createElement(PanelWithForwardedRef, {
|
|
|
55307
55383
|
PanelWithForwardedRef.displayName = "Panel";
|
|
55308
55384
|
Panel.displayName = "forwardRef(Panel)";
|
|
55309
55385
|
let currentCursorStyle = null, prevRuleIndex = -1, styleElement = null;
|
|
55310
|
-
function getCursorStyle(state, constraintFlags) {
|
|
55386
|
+
function getCursorStyle(state, constraintFlags, isPointerDown2) {
|
|
55387
|
+
const horizontalMin = (constraintFlags & EXCEEDED_HORIZONTAL_MIN) !== 0, horizontalMax = (constraintFlags & EXCEEDED_HORIZONTAL_MAX) !== 0, verticalMin = (constraintFlags & EXCEEDED_VERTICAL_MIN) !== 0, verticalMax = (constraintFlags & EXCEEDED_VERTICAL_MAX) !== 0;
|
|
55311
55388
|
if (constraintFlags) {
|
|
55312
|
-
const horizontalMin = (constraintFlags & EXCEEDED_HORIZONTAL_MIN) !== 0, horizontalMax = (constraintFlags & EXCEEDED_HORIZONTAL_MAX) !== 0, verticalMin = (constraintFlags & EXCEEDED_VERTICAL_MIN) !== 0, verticalMax = (constraintFlags & EXCEEDED_VERTICAL_MAX) !== 0;
|
|
55313
55389
|
if (horizontalMin)
|
|
55314
55390
|
return verticalMin ? "se-resize" : verticalMax ? "ne-resize" : "e-resize";
|
|
55315
55391
|
if (horizontalMax)
|
|
@@ -55331,7 +55407,7 @@ function getCursorStyle(state, constraintFlags) {
|
|
|
55331
55407
|
function resetGlobalCursorStyle() {
|
|
55332
55408
|
styleElement !== null && (document.head.removeChild(styleElement), currentCursorStyle = null, styleElement = null, prevRuleIndex = -1);
|
|
55333
55409
|
}
|
|
55334
|
-
function setGlobalCursorStyle(state, constraintFlags) {
|
|
55410
|
+
function setGlobalCursorStyle(state, constraintFlags, isPointerDown2) {
|
|
55335
55411
|
var _styleElement$sheet$i, _styleElement$sheet2;
|
|
55336
55412
|
const style2 = getCursorStyle(state, constraintFlags);
|
|
55337
55413
|
if (currentCursorStyle !== style2) {
|
|
@@ -55470,7 +55546,7 @@ function handlePointerDown(event) {
|
|
|
55470
55546
|
target,
|
|
55471
55547
|
x: x2,
|
|
55472
55548
|
y: y2
|
|
55473
|
-
}), updateListeners(), intersectingHandles.length > 0 && (updateResizeHandlerStates("down", event), event.preventDefault(), isWithinResizeHandle(target) || event.stopImmediatePropagation());
|
|
55549
|
+
}), updateListeners(), intersectingHandles.length > 0 && (updateResizeHandlerStates("down", event), updateCursor(), event.preventDefault(), isWithinResizeHandle(target) || event.stopImmediatePropagation());
|
|
55474
55550
|
}
|
|
55475
55551
|
function handlePointerMove(event) {
|
|
55476
55552
|
const {
|
|
@@ -55719,7 +55795,7 @@ function adjustLayoutByDelta({
|
|
|
55719
55795
|
panelIndex: index2,
|
|
55720
55796
|
size: unsafeSize
|
|
55721
55797
|
});
|
|
55722
|
-
if (!fuzzyNumbersEqual(prevSize, safeSize) && (deltaApplied += prevSize - safeSize, nextLayout[index2] = safeSize, deltaApplied.
|
|
55798
|
+
if (!fuzzyNumbersEqual(prevSize, safeSize) && (deltaApplied += prevSize - safeSize, nextLayout[index2] = safeSize, deltaApplied.toFixed(3).localeCompare(Math.abs(delta).toFixed(3), void 0, {
|
|
55723
55799
|
numeric: !0
|
|
55724
55800
|
}) >= 0))
|
|
55725
55801
|
break;
|
|
@@ -56024,7 +56100,7 @@ function computePanelFlexBoxStyle({
|
|
|
56024
56100
|
}) {
|
|
56025
56101
|
const size2 = layout2[panelIndex];
|
|
56026
56102
|
let flexGrow;
|
|
56027
|
-
return size2 == null ? flexGrow = defaultSize2 != null ? defaultSize2.
|
|
56103
|
+
return size2 == null ? flexGrow = defaultSize2 != null ? defaultSize2.toFixed(precision) : "1" : panelData.length === 1 ? flexGrow = "1" : flexGrow = size2.toFixed(precision), {
|
|
56028
56104
|
flexBasis: 0,
|
|
56029
56105
|
flexGrow,
|
|
56030
56106
|
flexShrink: 1,
|