Skip to content

Commit 0c9a371

Browse files
committed
fmt
1 parent 679fd5b commit 0c9a371

File tree

3 files changed

+47
-47
lines changed

3 files changed

+47
-47
lines changed

ll-default-view/dist/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
v-0.02h0.02H79.04L79.04,21.69z M105.18,108.92V35.65v-0.02h0.02c0-0.91-0.39-1.75-1.01-2.37c-0.61-0.61-1.46-1-2.37-1v0.02
6464
h-0.01h-61.7h-0.02v-0.02c-0.91,0-1.75,0.39-2.37,1.01c-0.61,0.61-1,1.46-1,2.37h0.02v0.01v73.27v0.02h-0.02
6565
c0,0.91,0.39,1.75,1.01,2.37c0.61,0.61,1.46,1,2.37,1v-0.02h0.01h61.7h0.02v0.02c0.91,0,1.75-0.39,2.37-1.01
66-
c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z`})}),close:H.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",width:"25",height:"25",viewBox:"0 0 48 48",fill:"currentColor",children:[H.jsx("path",{d:"M21.5 4.5H26.501V43.5H21.5z",transform:"rotate(45.001 24 24)"}),H.jsx("path",{d:"M21.5 4.5H26.5V43.501H21.5z",transform:"rotate(135.008 24 24)"})]})},Vo=({isOpen:_,step:X,onClose:Q})=>{if(!_)return null;const y=ge.useMemo(()=>JSON.stringify(X==null?void 0:X.input,null,2),[X==null?void 0:X.input]),q=()=>{navigator.clipboard.writeText(y)};return H.jsx("div",{className:"logicline_modal-overlay",onClick:Q,children:H.jsxs("div",{className:"logicline_modal-box",onClick:R=>R.stopPropagation(),children:[H.jsxs("div",{className:"logicline_modal-header",children:[H.jsx("h2",{className:"logicline_modal-title",children:"Block input parameters"}),H.jsx("button",{className:"logicline_modal-close",onClick:Q,children:fv.close})]}),H.jsxs("div",{className:"logicline_modal-content",children:[H.jsx("pre",{children:y}),H.jsx("button",{className:"logicline_copy-button",onClick:q,children:fv.copy})]})]})})},Lo=()=>{const[_,X]=ge.useState(null),[Q,y]=ge.useState(!1),[q,R]=ge.useState(null);return ge.useEffect(()=>{let J;const W=()=>{fetch(`http://${window.location.hostname}:9001/state`).then(M=>M.json()).then(X).catch(M=>{console.error(`Error fetching data: ${M}`),X(null)}),J=setTimeout(W,500)};return W(),()=>clearTimeout(J)},[]),_?H.jsxs(H.Fragment,{children:[H.jsx(Zo,{data:_,onBlockClick:J=>{R(J),y(!0)}}),H.jsx(Vo,{isOpen:Q,step:q,onClose:()=>y(!1)})]}):H.jsx("div",{children:"No data"})};Co.createRoot(document.getElementById("root")).render(H.jsx(Lo,{}));</script>
66+
c0.61-0.61,1-1.46,1-2.37h-0.02V108.92L105.18,108.92z`})}),close:H.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",x:"0px",y:"0px",width:"25",height:"25",viewBox:"0 0 48 48",fill:"currentColor",children:[H.jsx("path",{d:"M21.5 4.5H26.501V43.5H21.5z",transform:"rotate(45.001 24 24)"}),H.jsx("path",{d:"M21.5 4.5H26.5V43.501H21.5z",transform:"rotate(135.008 24 24)"})]})},Vo=({isOpen:_,step:X,onClose:Q})=>{if(!_)return null;const y=ge.useMemo(()=>JSON.stringify(X==null?void 0:X.input,null,2),[X==null?void 0:X.input]),q=()=>{copyClipboardText(y)};return H.jsx("div",{className:"logicline_modal-overlay",onClick:Q,children:H.jsxs("div",{className:"logicline_modal-box",onClick:R=>R.stopPropagation(),children:[H.jsxs("div",{className:"logicline_modal-header",children:[H.jsx("h2",{className:"logicline_modal-title",children:"Block input parameters"}),H.jsx("button",{className:"logicline_modal-close",onClick:Q,children:fv.close})]}),H.jsxs("div",{className:"logicline_modal-content",children:[H.jsx("pre",{children:y}),H.jsx("button",{className:"logicline_copy-button",onClick:q,children:fv.copy})]})]})})},Lo=()=>{const[_,X]=ge.useState(null),[Q,y]=ge.useState(!1),[q,R]=ge.useState(null);return ge.useEffect(()=>{let J;const W=()=>{fetch(`http://${window.location.hostname}:9001/state`).then(M=>M.json()).then(X).catch(M=>{console.error(`Error fetching data: ${M}`),X(null)}),J=setTimeout(W,500)};return W(),()=>clearTimeout(J)},[]),_?H.jsxs(H.Fragment,{children:[H.jsx(Zo,{data:_,onBlockClick:J=>{R(J),y(!0)}}),H.jsx(Vo,{isOpen:Q,step:q,onClose:()=>y(!1)})]}):H.jsx("div",{children:"No data"})};Co.createRoot(document.getElementById("root")).render(H.jsx(Lo,{}));</script>
6767
<style rel="stylesheet" crossorigin>:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424}.logicline_block{cursor:pointer}.logicline_modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:1000;display:flex;align-items:center;justify-content:center}.logicline_modal-box{background-color:#444;padding:20px;width:90%;max-width:500px;border-radius:8px;box-shadow:0 2px 20px #0000004d;font-family:sans-serif;position:relative;max-height:500px;overflow:auto}.logicline_modal-header{display:flex;justify-content:space-between;align-items:center}.logicline_modal-title{color:var(--accent-color)!important;font-size:20px!important}.logicline_modal-close{background:transparent;position:absolute;right:8px;top:8px;border-radius:4px;cursor:pointer;font-size:14px;color:var(--gray-color);outline:none;border:none;transition:color .3s ease}.logicline_modal-close:hover,.logicline_modal-close:focus,.logicline_modal-close:active{outline:none;border:none;box-shadow:none;color:tomato}.logicline_modal-content{position:relative;display:flex;justify-content:space-between;align-items:flex-start}.logicline_modal-content pre{padding:10px;border-radius:4px;white-space:pre-wrap;word-wrap:break-word;text-align:left}.logicline_copy-button{display:flex;justify-content:center;align-items:center;background-color:transparent;border-radius:4px;cursor:pointer;font-size:24px;color:var(--gray-color);outline:none;border:none;transition:all .3s ease}.logicline_copy-button:hover,.logicline_copy-button:focus,.logicline_copy-button:active{outline:none;border:none;box-shadow:none;background:#242424}body{--logicline-secondary-text-color: #0a1a2c;--logicline-decorator-color: #ccc;--logicline-accent-color: #009e23;--logicline-disabled-color: #555}.logicline_line-container{display:flex;flex-direction:column;border:2px solid var(--logicline-decorator-color);border-radius:8px;width:100%}.logicline_line-wrapper{display:flex;align-items:center;border-top:2px solid var(--logicline-decorator-color);padding:10px 45px;position:relative;overflow:auto}.logicline_line-title{position:absolute;top:0;left:45px;background:var(--logicline-decorator-color);padding:0 8px;font-weight:700;font-size:12px;color:var(--logicline-secondary-text-color)}.logicline_block-group{display:flex;position:relative;min-width:220px;max-width:220px}.logicline_straight{width:100%;height:2px;border-top:2px dashed var(--logicline-accent-color)}.logicline_straight-disabled{border-top:2px dashed var(--logicline-disabled-color)!important}.logicline_straight-arrow{width:100%;height:2px;border-top:2px dashed var(--logicline-accent-color)}.logicline_straight-arrow:after{content:"";position:absolute;top:50%;right:6px;transform:translate(50%,-50%) rotate(45deg);width:8px;height:8px;border-top:2px solid var(--logicline-accent-color);border-right:2px solid var(--logicline-accent-color)}.logicline_straight-arrow-disabled{width:100%;height:2px;border-top:2px dashed var(--logicline-disabled-color)}.logicline_straight-arrow-disabled:after{content:"";position:absolute;top:50%;right:6px;transform:translate(50%,-50%) rotate(45deg);width:8px;height:8px;border-top:2px solid var(--logicline-disabled-color);border-right:2px solid var(--logicline-disabled-color)}.logicline_branch-wrapper{position:relative;padding-right:50px;height:100%}.logicline_branch-lines{display:grid;grid-template-rows:1fr 1fr;gap:1rem;height:100%;align-items:center}.logicline_branch-top{display:flex;position:relative;min-width:280px;max-width:280px;height:100%;margin-top:35%}.logicline_branch-bottom{display:flex;position:relative;min-width:280px;max-width:280px;height:50%;margin-top:5%}.logicline_branch-top-left:before{content:"";position:absolute;top:0%;left:0;width:2px;height:65%;border-left:2px dashed var(--logicline-accent-color);transform:translate(-50%)}.logicline_branch-top-left--disabled:before{border-left:2px dashed var(--logicline-disabled-color)}.logicline_branch-bottom-left:before{content:"";position:absolute;bottom:96.5%;left:0;width:2px;height:80%;border-left:2px dashed var(--logicline-accent-color);transform:translate(-50%)}.logicline_branch-bottom-left--disabled:before{border-left:2px dashed var(--logicline-disabled-color)}.logicline_arrow-left-top,.logicline_arrow-left-bottom{height:2px;position:relative;border-top:2px dashed var(--logicline-accent-color);min-width:50px;max-width:50px}.logicline_arrow-left-top--disabled,.logicline_arrow-left-bottom--disabled{border-top:2px dashed var(--logicline-disabled-color)}.logicline_arrow-left-top:after{content:"";position:absolute;top:-50%;right:6px;transform:translate(50%,-50%) rotate(45deg);width:8px;height:8px;border-top:2px solid var(--logicline-accent-color);border-right:2px solid var(--logicline-accent-color)}.logicline_arrow-left-bottom:after{content:"";position:absolute;top:-50%;right:6px;transform:translate(50%,-50%) rotate(45deg);width:8px;height:8px;border-top:2px solid var(--logicline-accent-color);border-right:2px solid var(--logicline-accent-color)}.logicline_arrow-left-top--disabled:after,.logicline_arrow-left-bottom--disabled:after{border-top:2px solid var(--logicline-disabled-color);border-right:2px solid var(--logicline-disabled-color)}.logicline_branch-top-right:after{content:"";position:absolute;top:0%;right:-2%;width:2px;height:65%;border-left:2px dashed var(--logicline-accent-color);transform:translate(-50%)}.logicline_branch-top-right--disabled:after{content:"";position:absolute;top:0%;right:-2%;width:2px;height:65%;border-left:2px dashed var(--logicline-disabled-color);transform:translate(-50%)}.logicline_branch-bottom-right:after{content:"";position:absolute;bottom:96.5%;right:-2%;width:2px;height:80%;border-left:2px dashed var(--logicline-accent-color);transform:translate(-50%)}.logicline_branch-bottom-right--disabled:after{content:"";position:absolute;bottom:96.5%;right:-2%;width:2px;height:80%;border-left:2px dashed var(--logicline-disabled-color);transform:translate(-50%)}.logicline_arrow-right-top,.logicline_arrow-right-bottom{height:2px;position:relative;border-top:2px dashed var(--logicline-accent-color);width:100%}.logicline_arrow-right-top--disabled,.logicline_arrow-right-bottom--disabled{border-top:2px dashed var(--logicline-disabled-color)}.logicline_merge-line{position:absolute;top:50%;right:0%;width:50px;height:2px;border-top:2px dashed var(--logicline-accent-color);transform:translateY(-50%)}.logicline_merge-line:after{content:"";position:absolute;top:-50%;right:6.5px;transform:translate(50%,-50%) rotate(45deg);width:8px;height:8px;border-top:2px solid var(--logicline-accent-color);border-right:2px solid var(--logicline-accent-color)}.logicline_merge-line--disabled{border-top:2px dashed var(--logicline-disabled-color)}.logicline_merge-line--disabled:after{border-top:2px solid var(--logicline-disabled-color);border-right:2px solid var(--logicline-disabled-color)}.logicline_block-wrapper{position:relative;width:auto;margin:0 6px}.logicline_external{position:absolute;top:-70px;left:-44px;width:30px;height:30px;font-size:12px}.logicline_external:before{content:"";position:absolute;top:100%;left:50%;width:20px;height:2px;background-color:var(--logicline-accent-color);transform:rotate(-45deg) translate(-50%);transform-origin:top left}.logicline_external--disabled:before{background-color:var(--logicline-disabled-color)}.logicline_external-line{position:absolute;top:-15px;left:-28px;height:40%}.logicline_external-line:after{content:"";position:absolute;top:-25px;left:50%;height:25px;border-left:2px dashed var(--logicline-accent-color)}.logicline_external-line--disabled:after{border-left:2px dashed var(--logicline-disabled-color)}.logicline_external-line:before{content:"";position:absolute;top:0%;left:48%;width:20px;height:0;border-top:2px dashed var(--logicline-accent-color)}.logicline_external-line--disabled:before{border-top:2px dashed var(--logicline-disabled-color)}.logicline_external-arrow-tip{content:"";position:absolute;top:-3px;width:6px;height:6px;border-top:2px solid var(--logicline-accent-color);border-right:2px solid var(--logicline-accent-color);transform:rotate(45deg);margin-left:12px}.logicline_external-arrow-tip--disabled{border-top:2px solid var(--logicline-disabled-color);border-right:2px solid var(--logicline-disabled-color)}.logicline_block{display:flex;flex-direction:column;align-items:center;width:auto;height:auto;max-width:200px;min-width:100px;position:absolute;top:-30px;z-index:100}.logicline_block-disabled{background-color:var(--logicline-disabled-color)!important}.logicline_block-header{background-color:var(--logicline-accent-color);color:var(--logicline-secondary-text-color);width:100%;padding:6px;font-weight:700;font-size:12px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logicline_block-body{display:flex;padding:0 6px;gap:8px;width:100%;height:auto;background-color:var(--logicline-decorator-color)}.logicline_block-body--filled{padding:0 6px}.logicline_block-body--empty{padding:9px 6px}.logicline_block-input{display:flex;align-items:center;gap:5px;position:relative}.logicline_block-value{color:var(--logicline-secondary-text-color);font-weight:700;font-size:12px;text-align:start}.logicline_block-field{display:flex;white-space:nowrap}.logicline_block-tooltip{display:flex!important;align-items:center!important;justify-content:flex-start!important}</style>
6868
</head>
6969
<body>

ll-default-view/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
},
1212
"dependencies": {
1313
"bmat": "^0.1.32",
14-
"logicline-view": "file:/opt/logicline/logicline-view",
14+
"logicline-view": "file:../logicline-view",
1515
"react": "^19.0.0",
1616
"react-dom": "^19.0.0"
1717
},
Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,45 @@
1-
import React from "react";
2-
import { useMemo } from "react";
3-
import "./ModalBox.css";
4-
import { type Step } from "logicline-view";
5-
import { сopyTextClipboard } from "bmat/dom";
6-
import Icons from "../assets/icons/index";
7-
8-
interface ModalProps {
9-
isOpen: boolean;
10-
step: Step | null;
11-
onClose: () => void;
12-
}
13-
14-
export const ModalBox: React.FC<ModalProps> = ({ isOpen, step, onClose }) => {
15-
if (!isOpen) return null;
16-
17-
const formattedJson = useMemo(() => {
18-
return JSON.stringify(step?.input, null, 2);
19-
}, [step?.input]);
20-
21-
const handleCopy = () => {
22-
navigator.clipboard.writeText(formattedJson);
23-
};
24-
25-
return (
26-
<div className="logicline_modal-overlay" onClick={onClose}>
27-
<div className="logicline_modal-box" onClick={(e) => e.stopPropagation()}>
28-
<div className="logicline_modal-header">
29-
<h2 className="logicline_modal-title">Block input parameters</h2>
30-
<button className="logicline_modal-close" onClick={onClose}>
31-
{Icons.close}
32-
</button>
33-
</div>
34-
35-
<div className="logicline_modal-content">
36-
<pre>{formattedJson}</pre>
37-
38-
<button className="logicline_copy-button" onClick={handleCopy}>
39-
{Icons.copy}
40-
</button>
41-
</div>
42-
</div>
43-
</div>
44-
);
45-
};
1+
import React from "react";
2+
import { useMemo } from "react";
3+
import "./ModalBox.css";
4+
import { type Step } from "logicline-view";
5+
import { copyTextClipboard } from "bmat/dom";
6+
import Icons from "../assets/icons/index";
7+
8+
interface ModalProps {
9+
isOpen: boolean;
10+
step: Step | null;
11+
onClose: () => void;
12+
}
13+
14+
export const ModalBox: React.FC<ModalProps> = ({ isOpen, step, onClose }) => {
15+
if (!isOpen) return null;
16+
17+
const formattedJson = useMemo(() => {
18+
return JSON.stringify(step?.input, null, 2);
19+
}, [step?.input]);
20+
21+
const handleCopy = () => {
22+
copyClipboardText(formattedJson);
23+
};
24+
25+
return (
26+
<div className="logicline_modal-overlay" onClick={onClose}>
27+
<div className="logicline_modal-box" onClick={(e) => e.stopPropagation()}>
28+
<div className="logicline_modal-header">
29+
<h2 className="logicline_modal-title">Block input parameters</h2>
30+
<button className="logicline_modal-close" onClick={onClose}>
31+
{Icons.close}
32+
</button>
33+
</div>
34+
35+
<div className="logicline_modal-content">
36+
<pre>{formattedJson}</pre>
37+
38+
<button className="logicline_copy-button" onClick={handleCopy}>
39+
{Icons.copy}
40+
</button>
41+
</div>
42+
</div>
43+
</div>
44+
);
45+
};

0 commit comments

Comments
 (0)