likec4 1.54.0 → 1.55.1
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/likec4.js +56 -27
- package/__app__/src/routes/index.js +2 -2
- package/__app__/src/routes/projects.js +7 -3
- package/__app__/src/routes/single.js +73 -14
- package/__app__/src/style.css +1 -1
- package/__app__/src/vendors.js +46 -35
- package/__app__/src/webcomponent.js +1 -1
- package/dist/THIRD-PARTY-LICENSES.md +3 -69
- package/dist/_chunks/index.d.mts +1 -1
- package/dist/_chunks/index2.d.mts +11 -21
- package/dist/_chunks/libs/@hono/mcp.mjs +1 -1
- package/dist/_chunks/libs/@modelcontextprotocol/sdk.mjs +8 -8
- package/dist/_chunks/libs/ajv.mjs +1 -1
- package/dist/_chunks/libs/atomically.mjs +1 -1
- package/dist/_chunks/libs/conf.mjs +1 -1
- package/dist/_chunks/libs/find-up-simple.mjs +1 -1
- package/dist/_chunks/libs/p-timeout.mjs +1 -0
- package/dist/_chunks/libs/package-manager-detector.mjs +1 -1
- package/dist/_chunks/libs/pathe.mjs +1 -1
- package/dist/_chunks/libs/tinyrainbow.mjs +1 -1
- package/dist/_chunks/libs/zod.d.mts +2091 -0
- package/dist/_chunks/node.mjs +76 -1
- package/dist/_chunks/src2.mjs +58 -58
- package/dist/cli/index.mjs +1242 -98
- package/dist/config/index.d.mts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index.mjs +1 -1
- package/dist/vite-plugin/index.d.mts +1 -1
- package/dist/vite-plugin/index.mjs +1 -1
- package/dist/vite-plugin/internal.mjs +1 -1
- package/package.json +25 -24
- package/react/index.mjs +87 -51
- package/dist/_chunks/filesystem.mjs +0 -1229
- package/dist/_chunks/libs/@modelcontextprotocol/sdk.d.mts +0 -9325
package/__app__/src/vendors.js
CHANGED
|
@@ -20790,11 +20790,13 @@ function getPoints({ source, sourcePosition = Position.Bottom, target, targetPos
|
|
|
20790
20790
|
const sourceGapPoint = { x: sourceGapped.x + sourceGapOffset.x, y: sourceGapped.y + sourceGapOffset.y }, targetGapPoint = { x: targetGapped.x + targetGapOffset.x, y: targetGapped.y + targetGapOffset.y }, maxXDistance = Math.max(Math.abs(sourceGapPoint.x - points[0].x), Math.abs(targetGapPoint.x - points[0].x)), maxYDistance = Math.max(Math.abs(sourceGapPoint.y - points[0].y), Math.abs(targetGapPoint.y - points[0].y));
|
|
20791
20791
|
maxXDistance >= maxYDistance ? (centerX = (sourceGapPoint.x + targetGapPoint.x) / 2, centerY = points[0].y) : (centerX = points[0].x, centerY = (sourceGapPoint.y + targetGapPoint.y) / 2);
|
|
20792
20792
|
}
|
|
20793
|
+
const gappedSource = { x: sourceGapped.x + sourceGapOffset.x, y: sourceGapped.y + sourceGapOffset.y }, gappedTarget = { x: targetGapped.x + targetGapOffset.x, y: targetGapped.y + targetGapOffset.y };
|
|
20793
20794
|
return [[
|
|
20794
20795
|
source,
|
|
20795
|
-
|
|
20796
|
+
// we only want to add the gapped source/target if they are different from the first/last point to avoid duplicates which can cause issues with the bends
|
|
20797
|
+
...gappedSource.x !== points[0].x || gappedSource.y !== points[0].y ? [gappedSource] : [],
|
|
20796
20798
|
...points,
|
|
20797
|
-
|
|
20799
|
+
...gappedTarget.x !== points[points.length - 1].x || gappedTarget.y !== points[points.length - 1].y ? [gappedTarget] : [],
|
|
20798
20800
|
target
|
|
20799
20801
|
], centerX, centerY, defaultOffsetX, defaultOffsetY];
|
|
20800
20802
|
}
|
|
@@ -20819,10 +20821,10 @@ function getSmoothStepPath({ sourceX, sourceY, sourcePosition = Position.Bottom,
|
|
|
20819
20821
|
offset: offset2,
|
|
20820
20822
|
stepPosition
|
|
20821
20823
|
});
|
|
20822
|
-
|
|
20823
|
-
|
|
20824
|
-
|
|
20825
|
-
}
|
|
20824
|
+
let path = `M${points[0].x} ${points[0].y}`;
|
|
20825
|
+
for (let i2 = 1; i2 < points.length - 1; i2++)
|
|
20826
|
+
path += getBend(points[i2 - 1], points[i2], points[i2 + 1], borderRadius);
|
|
20827
|
+
return path += `L${points[points.length - 1].x} ${points[points.length - 1].y}`, [path, labelX, labelY, offsetX, offsetY];
|
|
20826
20828
|
}
|
|
20827
20829
|
function isNodeInitialized(node) {
|
|
20828
20830
|
return node && !!(node.internals.handleBounds || node.handles?.length) && !!(node.measured.width || node.width || node.initialWidth);
|
|
@@ -20972,7 +20974,7 @@ function isManualZIndexMode(zIndexMode) {
|
|
|
20972
20974
|
}
|
|
20973
20975
|
function adoptUserNodes(nodes, nodeLookup, parentLookup, options = {}) {
|
|
20974
20976
|
const _options = mergeObjects(adoptUserNodesDefaultOptions, options), rootParentIndex = { i: 0 }, tmpLookup = new Map(nodeLookup), selectedNodeZ = _options?.elevateNodesOnSelect && !isManualZIndexMode(_options.zIndexMode) ? SELECTED_NODE_Z : 0;
|
|
20975
|
-
let nodesInitialized = nodes.length > 0;
|
|
20977
|
+
let nodesInitialized = nodes.length > 0, hasSelectedNodes = !1;
|
|
20976
20978
|
nodeLookup.clear(), parentLookup.clear();
|
|
20977
20979
|
for (const userNode of nodes) {
|
|
20978
20980
|
let internalNode = tmpLookup.get(userNode.id);
|
|
@@ -20996,9 +20998,9 @@ function adoptUserNodes(nodes, nodeLookup, parentLookup, options = {}) {
|
|
|
20996
20998
|
}
|
|
20997
20999
|
}, nodeLookup.set(userNode.id, internalNode);
|
|
20998
21000
|
}
|
|
20999
|
-
(internalNode.measured === void 0 || internalNode.measured.width === void 0 || internalNode.measured.height === void 0) && !internalNode.hidden && (nodesInitialized = !1), userNode.parentId && updateChildNode(internalNode, nodeLookup, parentLookup, options, rootParentIndex);
|
|
21001
|
+
(internalNode.measured === void 0 || internalNode.measured.width === void 0 || internalNode.measured.height === void 0) && !internalNode.hidden && (nodesInitialized = !1), userNode.parentId && updateChildNode(internalNode, nodeLookup, parentLookup, options, rootParentIndex), hasSelectedNodes ||= userNode.selected ?? !1;
|
|
21000
21002
|
}
|
|
21001
|
-
return nodesInitialized;
|
|
21003
|
+
return { nodesInitialized, hasSelectedNodes };
|
|
21002
21004
|
}
|
|
21003
21005
|
function updateParentLookup(node, parentLookup) {
|
|
21004
21006
|
if (!node.parentId)
|
|
@@ -21635,7 +21637,7 @@ function createPanZoomEndHandler({ zoomPanValues, panOnDrag, panOnScroll, onDrag
|
|
|
21635
21637
|
() => {
|
|
21636
21638
|
onPanZoomEnd?.(event.sourceEvent, viewport);
|
|
21637
21639
|
},
|
|
21638
|
-
// we need a setTimeout for panOnScroll to
|
|
21640
|
+
// we need a setTimeout for panOnScroll to suppress multiple end events fired during scroll
|
|
21639
21641
|
panOnScroll ? 150 : 0
|
|
21640
21642
|
);
|
|
21641
21643
|
}
|
|
@@ -22119,7 +22121,7 @@ function SelectionListener({ onSelectionChange }) {
|
|
|
22119
22121
|
const storeHasSelectionChangeHandlers = useStore$1(changeSelector);
|
|
22120
22122
|
return onSelectionChange || storeHasSelectionChangeHandlers ? jsx(SelectionListenerInner, { onSelectionChange }) : null;
|
|
22121
22123
|
}
|
|
22122
|
-
const defaultNodeOrigin = [0, 0], defaultViewport = { x: 0, y: 0, zoom: 1 }, reactFlowFieldsToTrack = [
|
|
22124
|
+
const useIsomorphicLayoutEffect$1 = typeof window < "u" ? useLayoutEffect$1 : useEffect, defaultNodeOrigin = [0, 0], defaultViewport = { x: 0, y: 0, zoom: 1 }, reactFlowFieldsToTrack = [
|
|
22123
22125
|
"nodes",
|
|
22124
22126
|
"edges",
|
|
22125
22127
|
"defaultNodes",
|
|
@@ -22203,11 +22205,11 @@ const defaultNodeOrigin = [0, 0], defaultViewport = { x: 0, y: 0, zoom: 1 }, rea
|
|
|
22203
22205
|
};
|
|
22204
22206
|
function StoreUpdater(props) {
|
|
22205
22207
|
const { setNodes, setEdges, setMinZoom, setMaxZoom, setTranslateExtent, setNodeExtent, reset, setDefaultNodesAndEdges } = useStore$1(selector$l, shallow$1), store = useStoreApi();
|
|
22206
|
-
|
|
22208
|
+
useIsomorphicLayoutEffect$1(() => (setDefaultNodesAndEdges(props.defaultNodes, props.defaultEdges), () => {
|
|
22207
22209
|
previousFields.current = initPrevValues, reset();
|
|
22208
22210
|
}), []);
|
|
22209
22211
|
const previousFields = useRef(initPrevValues);
|
|
22210
|
-
return
|
|
22212
|
+
return useIsomorphicLayoutEffect$1(
|
|
22211
22213
|
() => {
|
|
22212
22214
|
for (const fieldName of fieldsToTrack) {
|
|
22213
22215
|
const fieldValue = props[fieldName], previousFieldValue = previousFields.current[fieldName];
|
|
@@ -22283,15 +22285,15 @@ const useViewportHelper = () => {
|
|
|
22283
22285
|
return useMemo(() => ({
|
|
22284
22286
|
zoomIn: (options) => {
|
|
22285
22287
|
const { panZoom } = store.getState();
|
|
22286
|
-
return panZoom ? panZoom.scaleBy(1.2,
|
|
22288
|
+
return panZoom ? panZoom.scaleBy(1.2, options) : Promise.resolve(!1);
|
|
22287
22289
|
},
|
|
22288
22290
|
zoomOut: (options) => {
|
|
22289
22291
|
const { panZoom } = store.getState();
|
|
22290
|
-
return panZoom ? panZoom.scaleBy(1 / 1.2,
|
|
22292
|
+
return panZoom ? panZoom.scaleBy(1 / 1.2, options) : Promise.resolve(!1);
|
|
22291
22293
|
},
|
|
22292
22294
|
zoomTo: (zoomLevel, options) => {
|
|
22293
22295
|
const { panZoom } = store.getState();
|
|
22294
|
-
return panZoom ? panZoom.scaleTo(zoomLevel,
|
|
22296
|
+
return panZoom ? panZoom.scaleTo(zoomLevel, options) : Promise.resolve(!1);
|
|
22295
22297
|
},
|
|
22296
22298
|
getZoom: () => store.getState().transform[2],
|
|
22297
22299
|
setViewport: async (viewport, options) => {
|
|
@@ -22429,7 +22431,6 @@ const isNode$1 = (element) => isNodeBase(element), isEdge = (element) => isEdgeB
|
|
|
22429
22431
|
function fixedForwardRef(render) {
|
|
22430
22432
|
return forwardRef(render);
|
|
22431
22433
|
}
|
|
22432
|
-
const useIsomorphicLayoutEffect$1 = typeof window < "u" ? useLayoutEffect$1 : useEffect;
|
|
22433
22434
|
function useQueue(runQueue) {
|
|
22434
22435
|
const [serial, setSerial] = useState(BigInt(0)), [queue] = useState(() => createQueue(() => setSerial((n2) => n2 + BigInt(1))));
|
|
22435
22436
|
return useIsomorphicLayoutEffect$1(() => {
|
|
@@ -23674,7 +23675,7 @@ GraphViewComponent.displayName = "GraphView";
|
|
|
23674
23675
|
const GraphView = memo$2(GraphViewComponent), getInitialState = ({ nodes, edges, defaultNodes, defaultEdges, width, height, fitView, fitViewOptions, minZoom = 0.5, maxZoom = 2, nodeOrigin, nodeExtent, zIndexMode = "basic" } = {}) => {
|
|
23675
23676
|
const nodeLookup = /* @__PURE__ */ new Map(), parentLookup = /* @__PURE__ */ new Map(), connectionLookup = /* @__PURE__ */ new Map(), edgeLookup = /* @__PURE__ */ new Map(), storeEdges = defaultEdges ?? edges ?? [], storeNodes = defaultNodes ?? nodes ?? [], storeNodeOrigin = nodeOrigin ?? [0, 0], storeNodeExtent = nodeExtent ?? infiniteExtent;
|
|
23676
23677
|
updateConnectionLookup(connectionLookup, edgeLookup, storeEdges);
|
|
23677
|
-
const nodesInitialized = adoptUserNodes(storeNodes, nodeLookup, parentLookup, {
|
|
23678
|
+
const { nodesInitialized } = adoptUserNodes(storeNodes, nodeLookup, parentLookup, {
|
|
23678
23679
|
nodeOrigin: storeNodeOrigin,
|
|
23679
23680
|
nodeExtent: storeNodeExtent,
|
|
23680
23681
|
zIndexMode
|
|
@@ -23780,14 +23781,20 @@ const GraphView = memo$2(GraphViewComponent), getInitialState = ({ nodes, edges,
|
|
|
23780
23781
|
zIndexMode
|
|
23781
23782
|
}),
|
|
23782
23783
|
setNodes: (nodes2) => {
|
|
23783
|
-
const { nodeLookup, parentLookup, nodeOrigin: nodeOrigin2, elevateNodesOnSelect, fitViewQueued, zIndexMode: zIndexMode2 } = get2(), nodesInitialized = adoptUserNodes(nodes2, nodeLookup, parentLookup, {
|
|
23784
|
+
const { nodeLookup, parentLookup, nodeOrigin: nodeOrigin2, elevateNodesOnSelect, fitViewQueued, zIndexMode: zIndexMode2, nodesSelectionActive } = get2(), { nodesInitialized, hasSelectedNodes } = adoptUserNodes(nodes2, nodeLookup, parentLookup, {
|
|
23784
23785
|
nodeOrigin: nodeOrigin2,
|
|
23785
23786
|
nodeExtent,
|
|
23786
23787
|
elevateNodesOnSelect,
|
|
23787
23788
|
checkEquality: !0,
|
|
23788
23789
|
zIndexMode: zIndexMode2
|
|
23789
|
-
});
|
|
23790
|
-
fitViewQueued && nodesInitialized ? (resolveFitView(), set2({
|
|
23790
|
+
}), nextNodesSelectionActive = nodesSelectionActive && hasSelectedNodes;
|
|
23791
|
+
fitViewQueued && nodesInitialized ? (resolveFitView(), set2({
|
|
23792
|
+
nodes: nodes2,
|
|
23793
|
+
nodesInitialized,
|
|
23794
|
+
fitViewQueued: !1,
|
|
23795
|
+
fitViewOptions: void 0,
|
|
23796
|
+
nodesSelectionActive: nextNodesSelectionActive
|
|
23797
|
+
})) : set2({ nodes: nodes2, nodesInitialized, nodesSelectionActive: nextNodesSelectionActive });
|
|
23791
23798
|
},
|
|
23792
23799
|
setEdges: (edges2) => {
|
|
23793
23800
|
const { connectionLookup, edgeLookup } = get2();
|
|
@@ -23804,7 +23811,7 @@ const GraphView = memo$2(GraphViewComponent), getInitialState = ({ nodes, edges,
|
|
|
23804
23811
|
}
|
|
23805
23812
|
},
|
|
23806
23813
|
/*
|
|
23807
|
-
* Every node gets
|
|
23814
|
+
* Every node gets registered at a ResizeObserver. Whenever a node
|
|
23808
23815
|
* changes its dimensions, this function is called to measure the
|
|
23809
23816
|
* new dimensions and update the nodes.
|
|
23810
23817
|
*/
|
|
@@ -23985,7 +23992,7 @@ function ReactFlow({ nodes, edges, defaultNodes, defaultEdges, className, nodeTy
|
|
|
23985
23992
|
const rfId = id2 || "1", colorModeClassName = useColorModeClass(colorMode), wrapperOnScroll = useCallback((e2) => {
|
|
23986
23993
|
e2.currentTarget.scrollTo({ top: 0, left: 0, behavior: "instant" }), onScroll?.(e2);
|
|
23987
23994
|
}, [onScroll]);
|
|
23988
|
-
return jsx("div", { "data-testid": "rf__wrapper", ...rest, onScroll: wrapperOnScroll, style: { ...style2, ...wrapperStyle }, ref, className: cc(["react-flow", className, colorModeClassName]), id: id2, role: "application", children: jsxs(Wrapper, { nodes, edges, width, height, fitView, fitViewOptions, minZoom, maxZoom, nodeOrigin, nodeExtent, zIndexMode, children: [jsx(
|
|
23995
|
+
return jsx("div", { "data-testid": "rf__wrapper", ...rest, onScroll: wrapperOnScroll, style: { ...style2, ...wrapperStyle }, ref, className: cc(["react-flow", className, colorModeClassName]), id: id2, role: "application", children: jsxs(Wrapper, { nodes, edges, width, height, fitView, fitViewOptions, minZoom, maxZoom, nodeOrigin, nodeExtent, zIndexMode, children: [jsx(StoreUpdater, { nodes, edges, defaultNodes, defaultEdges, onConnect, onConnectStart, onConnectEnd, onClickConnectStart, onClickConnectEnd, nodesDraggable, autoPanOnNodeFocus, nodesConnectable, nodesFocusable, edgesFocusable, edgesReconnectable, elementsSelectable, elevateNodesOnSelect, elevateEdgesOnSelect, minZoom, maxZoom, nodeExtent, onNodesChange, onEdgesChange, snapToGrid, snapGrid, connectionMode, translateExtent, connectOnClick, defaultEdgeOptions, fitView, fitViewOptions, onNodesDelete, onEdgesDelete, onDelete, onNodeDragStart, onNodeDrag, onNodeDragStop, onSelectionDrag, onSelectionDragStart, onSelectionDragStop, onMove, onMoveStart, onMoveEnd, noPanClassName, nodeOrigin, rfId, autoPanOnConnect, autoPanOnNodeDrag, autoPanSpeed, onError, connectionRadius, isValidConnection, selectNodesOnDrag, nodeDragThreshold, connectionDragThreshold, onBeforeDelete, debug: debug2, ariaLabelConfig, zIndexMode }), jsx(GraphView, { onInit, onNodeClick, onEdgeClick, onNodeMouseEnter, onNodeMouseMove, onNodeMouseLeave, onNodeContextMenu, onNodeDoubleClick, nodeTypes, edgeTypes, connectionLineType, connectionLineStyle, connectionLineComponent, connectionLineContainerStyle, selectionKeyCode, selectionOnDrag, selectionMode, deleteKeyCode, multiSelectionKeyCode, panActivationKeyCode, zoomActivationKeyCode, onlyRenderVisibleElements, defaultViewport: defaultViewport$1, translateExtent, minZoom, maxZoom, preventScrolling, zoomOnScroll, zoomOnPinch, zoomOnDoubleClick, panOnScroll, panOnScrollSpeed, panOnScrollMode, panOnDrag, onPaneClick, onPaneMouseEnter, onPaneMouseMove, onPaneMouseLeave, onPaneScroll, onPaneContextMenu, paneClickDistance, nodeClickDistance, onSelectionContextMenu, onSelectionStart, onSelectionEnd, onReconnect, onReconnectStart, onReconnectEnd, onEdgeContextMenu, onEdgeDoubleClick, onEdgeMouseEnter, onEdgeMouseMove, onEdgeMouseLeave, reconnectRadius, defaultMarkerColor, noDragClassName, noWheelClassName, noPanClassName, rfId, disableKeyboardA11y, nodeExtent, viewport, onViewportChange }), jsx(SelectionListener, { onSelectionChange }), children2, jsx(Attribution, { proOptions, position: attributionPosition }), jsx(A11yDescriptions, { rfId, disableKeyboardA11y })] }) });
|
|
23989
23996
|
}
|
|
23990
23997
|
var index$2 = fixedForwardRef(ReactFlow);
|
|
23991
23998
|
const selector$6 = (s) => s.domNode?.querySelector(".react-flow__edgelabel-renderer");
|
|
@@ -50371,6 +50378,9 @@ async function toCanvas(node, options = {}) {
|
|
|
50371
50378
|
const { width, height } = getImageSize(node, options), svg = await toSvg(node, options), img = await createImage(svg), canvas = document.createElement("canvas"), context = canvas.getContext("2d"), ratio = options.pixelRatio || getPixelRatio(), canvasWidth = options.canvasWidth || width, canvasHeight = options.canvasHeight || height;
|
|
50372
50379
|
return canvas.width = canvasWidth * ratio, canvas.height = canvasHeight * ratio, options.skipAutoScale || checkCanvasDimensions(canvas), canvas.style.width = `${canvasWidth}`, canvas.style.height = `${canvasHeight}`, options.backgroundColor && (context.fillStyle = options.backgroundColor, context.fillRect(0, 0, canvas.width, canvas.height)), context.drawImage(img, 0, 0, canvas.width, canvas.height), canvas;
|
|
50373
50380
|
}
|
|
50381
|
+
async function toJpeg(node, options = {}) {
|
|
50382
|
+
return (await toCanvas(node, options)).toDataURL("image/jpeg", options.quality || 1);
|
|
50383
|
+
}
|
|
50374
50384
|
async function toBlob(node, options = {}) {
|
|
50375
50385
|
const canvas = await toCanvas(node, options);
|
|
50376
50386
|
return await canvasToBlob(canvas);
|
|
@@ -52610,18 +52620,19 @@ export {
|
|
|
52610
52620
|
useRouter as d8,
|
|
52611
52621
|
useParams as d9,
|
|
52612
52622
|
LoadingOverlay as dA,
|
|
52613
|
-
|
|
52614
|
-
|
|
52615
|
-
|
|
52616
|
-
|
|
52617
|
-
|
|
52618
|
-
|
|
52619
|
-
|
|
52620
|
-
|
|
52621
|
-
|
|
52622
|
-
|
|
52623
|
-
|
|
52624
|
-
|
|
52623
|
+
toJpeg as dB,
|
|
52624
|
+
toBlob as dC,
|
|
52625
|
+
useAsync as dD,
|
|
52626
|
+
Ut as dE,
|
|
52627
|
+
qt as dF,
|
|
52628
|
+
Zt as dG,
|
|
52629
|
+
notFound as dH,
|
|
52630
|
+
Navigate as dI,
|
|
52631
|
+
object as dJ,
|
|
52632
|
+
literal as dK,
|
|
52633
|
+
stringbool as dL,
|
|
52634
|
+
string$1 as dM,
|
|
52635
|
+
formatError as dN,
|
|
52625
52636
|
isNotFound as da,
|
|
52626
52637
|
Container as db,
|
|
52627
52638
|
Code as dc,
|
|
@@ -2,7 +2,7 @@ import { jsx } from "react/jsx-runtime";
|
|
|
2
2
|
import { LikeC4View as LikeC4View$1 } from "likec4:react";
|
|
3
3
|
import { createRoot } from "react-dom/client";
|
|
4
4
|
import { ComponentName } from "./const.js";
|
|
5
|
-
import {
|
|
5
|
+
import { dJ as object, dK as literal, dL as stringbool, dM as string, dN as formatError } from "./vendors.js";
|
|
6
6
|
const propsSchema = object({
|
|
7
7
|
viewId: string().default("index"),
|
|
8
8
|
browser: stringbool().default(!0),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Licenses of Bundled Dependencies
|
|
2
2
|
|
|
3
3
|
The published artifact additionally contains code with the following licenses:
|
|
4
|
-
Apache-2.0, BSD-
|
|
4
|
+
Apache-2.0, BSD-3-Clause, ISC, MIT, (MIT AND Zlib)
|
|
5
5
|
|
|
6
6
|
# Bundled Dependencies
|
|
7
7
|
|
|
@@ -262,11 +262,11 @@ Repository: https://github.com/honojs/node-server
|
|
|
262
262
|
|
|
263
263
|
---------------------------------------
|
|
264
264
|
|
|
265
|
-
## @likec4/config, @likec4/generators, @likec4/language-services, @likec4/layouts, @likec4/log
|
|
265
|
+
## @likec4/config, @likec4/generators, @likec4/language-services, @likec4/layouts, @likec4/log, @likec4/mcp
|
|
266
266
|
|
|
267
267
|
License: MIT
|
|
268
268
|
By: Denis Davydkov
|
|
269
|
-
Repositories: https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4
|
|
269
|
+
Repositories: https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4, https://github.com/likec4/likec4
|
|
270
270
|
|
|
271
271
|
> MIT License
|
|
272
272
|
>
|
|
@@ -1000,72 +1000,6 @@ Repository: https://github.com/isaacs/isexe
|
|
|
1000
1000
|
|
|
1001
1001
|
---------------------------------------
|
|
1002
1002
|
|
|
1003
|
-
## json-schema-typed
|
|
1004
|
-
|
|
1005
|
-
License: BSD-2-Clause
|
|
1006
|
-
By: Remy Rylan
|
|
1007
|
-
Repository: https://github.com/RemyRylan/json-schema-typed
|
|
1008
|
-
|
|
1009
|
-
> BSD 2-Clause License
|
|
1010
|
-
>
|
|
1011
|
-
> Original source code is copyright (c) 2019-2025 Remy Rylan
|
|
1012
|
-
> <https://github.com/RemyRylan>
|
|
1013
|
-
>
|
|
1014
|
-
> All JSON Schema documentation and descriptions are copyright (c):
|
|
1015
|
-
>
|
|
1016
|
-
> 2009 [draft-0] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
|
|
1017
|
-
> and SitePen (USA) <https://www.sitepen.com/>.
|
|
1018
|
-
>
|
|
1019
|
-
> 2009 [draft-1] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
|
|
1020
|
-
> and SitePen (USA) <https://www.sitepen.com/>.
|
|
1021
|
-
>
|
|
1022
|
-
> 2010 [draft-2] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
|
|
1023
|
-
> and SitePen (USA) <https://www.sitepen.com/>.
|
|
1024
|
-
>
|
|
1025
|
-
> 2010 [draft-3] IETF Trust <https://www.ietf.org/>, Kris Zyp <kris@sitepen.com>,
|
|
1026
|
-
> Gary Court <gary.court@gmail.com>, and SitePen (USA) <https://www.sitepen.com/>.
|
|
1027
|
-
>
|
|
1028
|
-
> 2013 [draft-4] IETF Trust <https://www.ietf.org/>), Francis Galiegue
|
|
1029
|
-
> <fgaliegue@gmail.com>, Kris Zyp <kris@sitepen.com>, Gary Court
|
|
1030
|
-
> <gary.court@gmail.com>, and SitePen (USA) <https://www.sitepen.com/>.
|
|
1031
|
-
>
|
|
1032
|
-
> 2018 [draft-7] IETF Trust <https://www.ietf.org/>, Austin Wright <aaa@bzfx.net>,
|
|
1033
|
-
> Henry Andrews <henry@cloudflare.com>, Geraint Luff <luffgd@gmail.com>, and
|
|
1034
|
-
> Cloudflare, Inc. <https://www.cloudflare.com/>.
|
|
1035
|
-
>
|
|
1036
|
-
> 2019 [draft-2019-09] IETF Trust <https://www.ietf.org/>, Austin Wright
|
|
1037
|
-
> <aaa@bzfx.net>, Henry Andrews <andrews_henry@yahoo.com>, Ben Hutton
|
|
1038
|
-
> <bh7@sanger.ac.uk>, and Greg Dennis <gregsdennis@yahoo.com>.
|
|
1039
|
-
>
|
|
1040
|
-
> 2020 [draft-2020-12] IETF Trust <https://www.ietf.org/>, Austin Wright
|
|
1041
|
-
> <aaa@bzfx.net>, Henry Andrews <andrews_henry@yahoo.com>, Ben Hutton
|
|
1042
|
-
> <ben@jsonschema.dev>, and Greg Dennis <gregsdennis@yahoo.com>.
|
|
1043
|
-
>
|
|
1044
|
-
> All rights reserved.
|
|
1045
|
-
>
|
|
1046
|
-
> Redistribution and use in source and binary forms, with or without modification,
|
|
1047
|
-
> are permitted provided that the following conditions are met:
|
|
1048
|
-
>
|
|
1049
|
-
> 1. Redistributions of source code must retain the above copyright notice, this
|
|
1050
|
-
> list of conditions and the following disclaimer.
|
|
1051
|
-
>
|
|
1052
|
-
> 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
1053
|
-
> this list of conditions and the following disclaimer in the documentation
|
|
1054
|
-
> and/or other materials provided with the distribution.
|
|
1055
|
-
>
|
|
1056
|
-
> THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
1057
|
-
> ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
1058
|
-
> WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
1059
|
-
> DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
|
1060
|
-
> ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
1061
|
-
> (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
1062
|
-
> LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
1063
|
-
> ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
1064
|
-
> (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
1065
|
-
> SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
1066
|
-
|
|
1067
|
-
---------------------------------------
|
|
1068
|
-
|
|
1069
1003
|
## json5
|
|
1070
1004
|
|
|
1071
1005
|
License: MIT
|
package/dist/_chunks/index.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _ as input, a as ZodDefault, b as $strict, c as ZodLiteral, d as ZodOptional, f as ZodPipe, g as ZodUnion, h as ZodTransform, i as ZodCustom, l as ZodNumber, m as ZodString, n as ZodArray, o as ZodEnum, p as ZodRecord, r as ZodBoolean, s as ZodInt, t as ZodAny, u as ZodObject, v as output, x as $strip, y as $partial } from "./libs/zod.mjs";
|
|
2
2
|
import { DeploymentElementModel, DeploymentRelationModel, ElementModel, LikeC4Model, LikeC4ViewModel, RelationshipModel } from "@likec4/core/model";
|
|
3
3
|
import { LikeC4ProjectStylesConfig, LikeC4ProjectTheme, ProjectId, ThemeColorValues as ThemeColorValues$1, aux } from "@likec4/core/types";
|
|
4
4
|
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { n as ServerOptions, t as McpServer } from "./libs/@modelcontextprotocol/sdk.mjs";
|
|
2
1
|
import { a as LikeC4ProjectConfig, i as IncludeConfig, o as LikeC4ProjectConfigInput } from "./index.mjs";
|
|
3
2
|
import { $ as FileSystemProvider, A as DefaultValueConverter, B as AsyncDisposable, C as CodeLensParams, D as ValidationOptions, E as DefaultDocumentValidator, F as JSDocDocumentationProvider, G as Reference, H as AstNode, I as DefaultIndexManager, J as LangiumDocument, K as ReferenceInfo, L as ReferenceDescription, M as MaybePromise, N as DefaultScopeProvider, O as DiagnosticInfo, P as Scope, Q as FileSystemNode, R as DefaultNameProvider, S as CodeActionParams, T as DocumentSymbolParams, U as AstNodeDescription, V as Disposable$1, W as CstNode, X as PrecomputedScopes, Y as LangiumDocumentFactory, Z as Stream, _ as CodeLensProvider, _t as SymbolKind, a as LangiumServices, at as CodeAction, b as FileSelector, c as AbstractSemanticTokenProvider, ct as CompletionItemKind, d as AbstractFormatter, dt as DocumentLink, et as Keyword, f as FormattingRegion, ft as DocumentSymbol, g as DefaultDocumentHighlightProvider, gt as Range, h as DocumentLinkProvider, ht as Location, i as NextFeature, it as RequestType, j as ValueType, k as DefaultScopeComputation, l as SemanticTokenAcceptor, lt as Diagnostic, m as NodeKindProvider, mt as Hover, n as CompletionContext, nt as CancellationToken$1, o as LangiumSharedServices, ot as CodeLens, p as DocumentSymbolProvider, pt as FormattingOptions, q as DefaultLangiumDocuments, r as DefaultCompletionProvider, rt as NotificationType, s as DefaultWorkspaceSymbolProvider, st as Command, t as CompletionAcceptor, tt as URI, u as AstNodeHoverProvider, ut as DocumentHighlight, v as CodeActionProvider, vt as TextEdit, w as DocumentLinkParams, x as BuildOptions, y as DefaultWorkspaceManager, yt as WorkspaceFolder, z as WorkspaceCache } from "./libs/langium.mjs";
|
|
4
3
|
import { t as $keywords } from "./libs/ts-graphviz.mjs";
|
|
@@ -430,6 +429,11 @@ declare class ProjectsManager {
|
|
|
430
429
|
*/
|
|
431
430
|
static readonly DefaultProjectId: ProjectId$1;
|
|
432
431
|
constructor(services: LikeC4SharedServices);
|
|
432
|
+
/**
|
|
433
|
+
* Updates the workspace-level exclude patterns from VS Code settings.
|
|
434
|
+
* Called during initial server startup; dynamic changes restart the server.
|
|
435
|
+
*/
|
|
436
|
+
setWorkspaceExcludePatterns(patterns: string[] | undefined): void;
|
|
433
437
|
/**
|
|
434
438
|
* Returns:
|
|
435
439
|
* - configured default project ID if set
|
|
@@ -656,18 +660,6 @@ declare class LikeC4Formatter extends AbstractFormatter {
|
|
|
656
660
|
private getAutoQuoteStyle;
|
|
657
661
|
private onConfigurationUpdate;
|
|
658
662
|
} //#endregion
|
|
659
|
-
//#region src/mcp/types.d.ts
|
|
660
|
-
interface LikeC4MCPServer {
|
|
661
|
-
readonly mcp: McpServer;
|
|
662
|
-
readonly isStarted: boolean;
|
|
663
|
-
readonly port: number;
|
|
664
|
-
start(port?: number): Promise<void>;
|
|
665
|
-
stop(): Promise<void>;
|
|
666
|
-
}
|
|
667
|
-
interface LikeC4MCPServerFactory {
|
|
668
|
-
create(options?: ServerOptions): McpServer;
|
|
669
|
-
}
|
|
670
|
-
//#endregion
|
|
671
663
|
//#region src/generated/ast.d.ts
|
|
672
664
|
type AnyProperty = DynamicViewProperty | ElementProperty | NavigateToProperty | NotationProperty | NotesProperty | RelationProperty | RelationshipStyleProperty | StringProperty | StyleProperty | ViewProperty;
|
|
673
665
|
declare const AnyProperty = "AnyProperty";
|
|
@@ -708,7 +700,7 @@ type FqnReferenceable = Element | ExtendDeployment | ExtendElement | Referenceab
|
|
|
708
700
|
declare const FqnReferenceable = "FqnReferenceable";
|
|
709
701
|
type IconId = string;
|
|
710
702
|
type IconPositionValue = 'bottom' | 'left' | 'right' | 'top';
|
|
711
|
-
type Id = 'deployment' | 'element' | 'group' | 'instance' | 'model' | 'node' | ArrowType | DynamicViewDisplayVariantValue | ElementShape | IconPositionValue | LineOptions | Participant | RankValue | SizeValue | ThemeColor | string;
|
|
703
|
+
type Id = 'deployment' | 'element' | 'group' | 'instance' | 'model' | 'node' | 'relationship' | ArrowType | DynamicViewDisplayVariantValue | ElementShape | IconPositionValue | LineOptions | Participant | RankValue | SizeValue | ThemeColor | string;
|
|
712
704
|
type LikeC4View = DeploymentView | DynamicView | ElementView;
|
|
713
705
|
declare const LikeC4View = "LikeC4View";
|
|
714
706
|
type LineOptions = 'dashed' | 'dotted' | 'solid';
|
|
@@ -2195,6 +2187,11 @@ declare class LikeC4WorkspaceManager extends DefaultWorkspaceManager {
|
|
|
2195
2187
|
* First load all project config files, then load all documents in the workspace.
|
|
2196
2188
|
*/
|
|
2197
2189
|
protected performStartup(folders: WorkspaceFolder[]): Promise<LangiumDocument[]>;
|
|
2190
|
+
/**
|
|
2191
|
+
* Read workspace exclude patterns from configuration before workspace scan.
|
|
2192
|
+
* Uses a timeout fallback for third-party IDEs that may not support workspace/configuration.
|
|
2193
|
+
*/
|
|
2194
|
+
private readExcludeConfig;
|
|
2198
2195
|
/**
|
|
2199
2196
|
* Load all additional documents that shall be visible in the context of the given workspace
|
|
2200
2197
|
* folders and add them to the collector. This can be used to include built-in libraries of
|
|
@@ -2513,8 +2510,6 @@ declare class LikeC4ModelLocator {
|
|
|
2513
2510
|
projectId?: c4.ProjectId | undefined;
|
|
2514
2511
|
}): Location | null;
|
|
2515
2512
|
} //#endregion
|
|
2516
|
-
//#region src/mcp/noop.d.ts
|
|
2517
|
-
//#endregion
|
|
2518
2513
|
//#region src/views/LikeC4Views.d.ts
|
|
2519
2514
|
type GraphvizOut = {
|
|
2520
2515
|
readonly dot: string;
|
|
@@ -3329,7 +3324,6 @@ interface LikeC4LanguageServices {
|
|
|
3329
3324
|
readonly workspaceUri: URI;
|
|
3330
3325
|
readonly projectsManager: ProjectsManager;
|
|
3331
3326
|
readonly editor: LikeC4ModelChanges;
|
|
3332
|
-
readonly mcpServer: LikeC4MCPServer | null;
|
|
3333
3327
|
/**
|
|
3334
3328
|
* Returns all projects with relevant documents
|
|
3335
3329
|
*/
|
|
@@ -3592,10 +3586,6 @@ interface LikeC4AddedServices {
|
|
|
3592
3586
|
DocumentValidator: LikeC4DocumentValidator;
|
|
3593
3587
|
};
|
|
3594
3588
|
Rpc: Rpc;
|
|
3595
|
-
mcp: {
|
|
3596
|
-
Server: LikeC4MCPServer;
|
|
3597
|
-
ServerFactory: LikeC4MCPServerFactory;
|
|
3598
|
-
};
|
|
3599
3589
|
likec4: {
|
|
3600
3590
|
LanguageServices: LikeC4LanguageServices;
|
|
3601
3591
|
Views: LikeC4Views;
|