@flowuent-org/diagramming-core 1.3.6 → 1.3.8
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/package.json +1 -1
- package/packages/diagrams/src/lib/components/automation/AutomationApiNode.tsx +5 -8
- package/packages/diagrams/src/lib/components/automation/AutomationEndNode.tsx +6 -22
- package/packages/diagrams/src/lib/components/automation/AutomationFormattingNode.tsx +4 -24
- package/packages/diagrams/src/lib/components/automation/AutomationGoogleServicesNode.tsx +361 -263
- package/packages/diagrams/src/lib/components/automation/AutomationInteractionNode.tsx +323 -231
- package/packages/diagrams/src/lib/components/automation/AutomationNavigationNode.tsx +5 -39
- package/packages/diagrams/src/lib/components/automation/AutomationSheetsNode.tsx +2 -2
- package/packages/diagrams/src/lib/components/automation/AutomationSlackNode.tsx +4 -3
- package/packages/diagrams/src/lib/components/automation/AutomationStartNode.tsx +4 -19
- package/packages/diagrams/src/lib/components/automation/AutomationTelegramNode.tsx +4 -3
- package/packages/diagrams/src/lib/organisms/WorkFlowNode/NodeTypeDisplay.tsx +1 -1
- package/packages/diagrams/src/lib/organisms/WorkFlowNode/WorkflowNodeIcons.tsx +2 -2
- package/packages/diagrams/src/lib/templates/DiagramContent.tsx +3 -44
- package/packages/molecules/src/lib/SvgIcons/icons.tsx +55 -54
|
@@ -4,22 +4,17 @@ import { Handle, Position, useNodeId } from '@xyflow/react';
|
|
|
4
4
|
import { Box, Typography, Chip, IconButton, Card, CardContent, Tooltip } from '@mui/material';
|
|
5
5
|
import {
|
|
6
6
|
AccessTime as AccessTimeIcon,
|
|
7
|
-
Navigation as MuiNavigationIcon,
|
|
8
|
-
OpenInBrowser as OpenInBrowserIcon,
|
|
9
|
-
TouchApp as TouchAppIcon,
|
|
10
|
-
Search as SearchIcon,
|
|
11
7
|
ContentCopy as ContentCopyIcon,
|
|
12
8
|
} from '@mui/icons-material';
|
|
13
9
|
import { RiCloseLine } from 'react-icons/ri';
|
|
14
10
|
import ReactJson from 'react-json-view';
|
|
15
|
-
import { getIconByName } from '../../utils/iconMapper';
|
|
16
11
|
import { useTranslation } from 'react-i18next';
|
|
17
12
|
import { useDiagram } from '../../contexts/DiagramProvider';
|
|
18
13
|
import { NodeActionButtons } from './NodeActionButtons';
|
|
19
14
|
import { showNodeAIAssistantPopup } from './NodeAIAssistantPopup';
|
|
20
15
|
import { useSearch } from '../../contexts/SearchContext';
|
|
21
16
|
import { getStatusColor } from './statusColors';
|
|
22
|
-
import { NavigationIcon } from '
|
|
17
|
+
import { NavigationIcon } from '../../../../../molecules/src/lib/SvgIcons/icons';
|
|
23
18
|
|
|
24
19
|
interface AutomationNavigationNodeProps {
|
|
25
20
|
data: {
|
|
@@ -69,9 +64,6 @@ export const AutomationNavigationNode: React.FC<AutomationNavigationNodeProps> =
|
|
|
69
64
|
const nodes = useDiagram((state) => state.nodes);
|
|
70
65
|
const setNodes = useDiagram((state) => state.setNodes);
|
|
71
66
|
|
|
72
|
-
// Get the icon component based on the iconName
|
|
73
|
-
const IconComponent = getIconByName(data.iconName) || NavigationIcon;
|
|
74
|
-
|
|
75
67
|
const handleJsonClick = () => {
|
|
76
68
|
if (nodeId) setSelectedNode(nodeId);
|
|
77
69
|
if (!enableJson) return;
|
|
@@ -205,23 +197,7 @@ export const AutomationNavigationNode: React.FC<AutomationNavigationNodeProps> =
|
|
|
205
197
|
}
|
|
206
198
|
}, [isJsonOpen, data]);
|
|
207
199
|
|
|
208
|
-
|
|
209
|
-
const navType = data.formData?.navigationType || data.navigationType || 'navigate';
|
|
210
|
-
switch (navType) {
|
|
211
|
-
case 'navigate':
|
|
212
|
-
return <OpenInBrowserIcon sx={{ fontSize: '18px' }} />;
|
|
213
|
-
case 'click':
|
|
214
|
-
return <TouchAppIcon sx={{ fontSize: '18px' }} />;
|
|
215
|
-
case 'scroll':
|
|
216
|
-
return <NavigationIcon size={18} color="#93C5FD" />;
|
|
217
|
-
case 'wait':
|
|
218
|
-
return <AccessTimeIcon sx={{ fontSize: '18px' }} />;
|
|
219
|
-
case 'extract':
|
|
220
|
-
return <SearchIcon sx={{ fontSize: '18px' }} />;
|
|
221
|
-
default:
|
|
222
|
-
return <NavigationIcon size={18} color="#93C5FD" />;
|
|
223
|
-
}
|
|
224
|
-
};
|
|
200
|
+
|
|
225
201
|
|
|
226
202
|
const getNavigationTypeLabel = () => {
|
|
227
203
|
const navType = data.formData?.navigationType || data.navigationType || 'navigate';
|
|
@@ -319,19 +295,9 @@ export const AutomationNavigationNode: React.FC<AutomationNavigationNodeProps> =
|
|
|
319
295
|
{/* Title Section */}
|
|
320
296
|
<Box sx={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', mb: 2 }}>
|
|
321
297
|
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1.5 }}>
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
height: '32px',
|
|
326
|
-
backgroundColor: '#8b5cf6',
|
|
327
|
-
borderRadius: '50%',
|
|
328
|
-
display: 'flex',
|
|
329
|
-
alignItems: 'center',
|
|
330
|
-
justifyContent: 'center',
|
|
331
|
-
}}
|
|
332
|
-
>
|
|
333
|
-
{getNavigationIcon()}
|
|
334
|
-
</Box>
|
|
298
|
+
|
|
299
|
+
<NavigationIcon />
|
|
300
|
+
|
|
335
301
|
<Typography variant="h6" sx={{ fontWeight: 600, fontSize: '16px' }}>
|
|
336
302
|
{highlightText(data.label)}
|
|
337
303
|
</Typography>
|
|
@@ -759,8 +759,8 @@ Data: ${JSON.stringify(data, null, 2)}
|
|
|
759
759
|
sx={{
|
|
760
760
|
width: '32px',
|
|
761
761
|
height: '32px',
|
|
762
|
-
backgroundColor: '#
|
|
763
|
-
borderRadius: '
|
|
762
|
+
backgroundColor: '#1E3A8A',
|
|
763
|
+
borderRadius: '50%',
|
|
764
764
|
display: 'flex',
|
|
765
765
|
alignItems: 'center',
|
|
766
766
|
justifyContent: 'center',
|
|
@@ -472,9 +472,10 @@ export const AutomationSlackNode: React.FC<AutomationSlackNodeProps> = ({
|
|
|
472
472
|
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1.5 }}>
|
|
473
473
|
<Box
|
|
474
474
|
sx={{
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
475
|
+
width: '32px',
|
|
476
|
+
height: '32px',
|
|
477
|
+
backgroundColor: '#1E3A8A',
|
|
478
|
+
borderRadius: '50%',
|
|
478
479
|
display: 'flex',
|
|
479
480
|
alignItems: 'center',
|
|
480
481
|
justifyContent: 'center',
|
|
@@ -5,13 +5,13 @@ import { Box, Typography, Chip, IconButton, Card, CardContent } from '@mui/mater
|
|
|
5
5
|
import { AccessTime as AccessTimeIcon } from '@mui/icons-material';
|
|
6
6
|
import { RiCloseLine, RiUser2Line } from 'react-icons/ri';
|
|
7
7
|
import ReactJson from 'react-json-view';
|
|
8
|
-
import { getIconByName } from '../../utils/iconMapper';
|
|
9
8
|
import { useTranslation } from 'react-i18next';
|
|
10
9
|
import { useDiagram } from '../../contexts/DiagramProvider';
|
|
11
10
|
import { NodeActionButtons } from './NodeActionButtons';
|
|
12
11
|
import { showNodeAIAssistantPopup } from './NodeAIAssistantPopup';
|
|
13
12
|
import { useSearch } from '../../contexts/SearchContext';
|
|
14
13
|
import { getStatusColor } from './statusColors';
|
|
14
|
+
import { StartNodeIcon } from '../../../../../molecules/src/lib/SvgIcons/icons';
|
|
15
15
|
|
|
16
16
|
interface AutomationStartNodeProps {
|
|
17
17
|
data: {
|
|
@@ -48,11 +48,6 @@ export const AutomationStartNode: React.FC<AutomationStartNodeProps> = ({ data,
|
|
|
48
48
|
const nodes = useDiagram((state) => state.nodes);
|
|
49
49
|
const setNodes = useDiagram((state) => state.setNodes);
|
|
50
50
|
|
|
51
|
-
// Get the icon component based on the iconName
|
|
52
|
-
const IconComponent = getIconByName(data.iconName);
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
51
|
const handleJsonClick = () => {
|
|
57
52
|
if (nodeId) setSelectedNode(nodeId);
|
|
58
53
|
if (!enableJson) return;
|
|
@@ -259,19 +254,9 @@ export const AutomationStartNode: React.FC<AutomationStartNodeProps> = ({ data,
|
|
|
259
254
|
{/* Title Section */}
|
|
260
255
|
<Box sx={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between', mb: 2 }}>
|
|
261
256
|
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1.5 }}>
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
height: '32px',
|
|
266
|
-
backgroundColor: '#0ea5e9',
|
|
267
|
-
borderRadius: '50%',
|
|
268
|
-
display: 'flex',
|
|
269
|
-
alignItems: 'center',
|
|
270
|
-
justifyContent: 'center',
|
|
271
|
-
}}
|
|
272
|
-
>
|
|
273
|
-
<IconComponent sx={{ color: 'white', fontSize: '18px' }} />
|
|
274
|
-
</Box>
|
|
257
|
+
|
|
258
|
+
<StartNodeIcon />
|
|
259
|
+
|
|
275
260
|
<Typography variant="h6" sx={{ fontWeight: 600, fontSize: '16px' }}>
|
|
276
261
|
{highlightText(data.label)}
|
|
277
262
|
</Typography>
|
|
@@ -465,9 +465,10 @@ export const AutomationTelegramNode: React.FC<AutomationTelegramNodeProps> = ({
|
|
|
465
465
|
<Box sx={{ display: 'flex', alignItems: 'center', gap: 1.5 }}>
|
|
466
466
|
<Box
|
|
467
467
|
sx={{
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
468
|
+
width: '32px',
|
|
469
|
+
height: '32px',
|
|
470
|
+
backgroundColor: '#1E3A8A',
|
|
471
|
+
borderRadius: '50%',
|
|
471
472
|
display: 'flex',
|
|
472
473
|
alignItems: 'center',
|
|
473
474
|
justifyContent: 'center',
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
SetIcon,
|
|
19
19
|
EmptyNodeIcon,
|
|
20
20
|
EntityIcon,
|
|
21
|
-
} from '
|
|
21
|
+
} from '../../../../../molecules/src/lib/SvgIcons/icons';
|
|
22
22
|
|
|
23
23
|
// Icon mapping for different node types
|
|
24
24
|
const getNodeIcon = (type: NodeVariant | string | undefined) => {
|
|
@@ -17,7 +17,7 @@ export {
|
|
|
17
17
|
EntityIcon,
|
|
18
18
|
StartNodeIcon,
|
|
19
19
|
NavigationIcon,
|
|
20
|
-
} from '
|
|
20
|
+
} from '../../../../../molecules/src/lib/SvgIcons/icons';
|
|
21
21
|
|
|
22
22
|
// Re-export types for backward compatibility
|
|
23
|
-
export type { SvgIconProps as IconProps } from '
|
|
23
|
+
export type { SvgIconProps as IconProps } from '../../../../../molecules/src/lib/SvgIcons/types';
|
|
@@ -566,50 +566,9 @@ export const DiagramContent: React.FC<DiagramContentProps> = ({
|
|
|
566
566
|
ref={setNodeRef}
|
|
567
567
|
sx={{ height: '100svh', width: '100svw', position: 'relative' }}
|
|
568
568
|
>
|
|
569
|
-
{/*
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
position: 'absolute',
|
|
573
|
-
top: 16,
|
|
574
|
-
left: 16,
|
|
575
|
-
zIndex: 10,
|
|
576
|
-
display: 'flex',
|
|
577
|
-
gap: 0.5,
|
|
578
|
-
backgroundColor: 'background.paper',
|
|
579
|
-
borderRadius: 2,
|
|
580
|
-
boxShadow: 2,
|
|
581
|
-
padding: 0.5,
|
|
582
|
-
}}
|
|
583
|
-
>
|
|
584
|
-
<Tooltip title="Undo (Ctrl+Z)" placement="bottom">
|
|
585
|
-
<span>
|
|
586
|
-
<IconButton
|
|
587
|
-
onClick={undo}
|
|
588
|
-
disabled={!canUndo}
|
|
589
|
-
size="small"
|
|
590
|
-
sx={{
|
|
591
|
-
color: canUndo ? 'primary.main' : 'action.disabled',
|
|
592
|
-
}}
|
|
593
|
-
>
|
|
594
|
-
<UndoIcon fontSize="small" />
|
|
595
|
-
</IconButton>
|
|
596
|
-
</span>
|
|
597
|
-
</Tooltip>
|
|
598
|
-
<Tooltip title="Redo (Ctrl+Y)" placement="bottom">
|
|
599
|
-
<span>
|
|
600
|
-
<IconButton
|
|
601
|
-
onClick={redo}
|
|
602
|
-
disabled={!canRedo}
|
|
603
|
-
size="small"
|
|
604
|
-
sx={{
|
|
605
|
-
color: canRedo ? 'primary.main' : 'action.disabled',
|
|
606
|
-
}}
|
|
607
|
-
>
|
|
608
|
-
<RedoIcon fontSize="small" />
|
|
609
|
-
</IconButton>
|
|
610
|
-
</span>
|
|
611
|
-
</Tooltip>
|
|
612
|
-
</Box>
|
|
569
|
+
{/* Redo Toolbar */}
|
|
570
|
+
|
|
571
|
+
|
|
613
572
|
<ReactFlow
|
|
614
573
|
panOnDrag={isPannable}
|
|
615
574
|
nodesDraggable={isPannable}
|
|
@@ -64,46 +64,40 @@ export const ArticleAnalyzerIcon: React.FC<SvgIconProps> = ({ size = 15, color =
|
|
|
64
64
|
);
|
|
65
65
|
|
|
66
66
|
// Start Node Icon
|
|
67
|
-
export const StartNodeIcon: React.FC<SvgIconProps> = ({ size
|
|
68
|
-
<
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
67
|
+
export const StartNodeIcon: React.FC<SvgIconProps> = ({ size, color, style }) => (
|
|
68
|
+
<svg width="35" height="35" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
69
|
+
<path d="M0 14C0 6.26801 6.26801 0 14 0C21.732 0 28 6.26801 28 14C28 21.732 21.732 28 14 28C6.26801 28 0 21.732 0 14Z" fill="#1E3A8A"/>
|
|
70
|
+
<g clip-path="url(#clip0_8650_35616)">
|
|
71
|
+
<path d="M14.0007 20.6663C17.6825 20.6663 20.6673 17.6816 20.6673 13.9997C20.6673 10.3178 17.6825 7.33301 14.0007 7.33301C10.3188 7.33301 7.33398 10.3178 7.33398 13.9997C7.33398 17.6816 10.3188 20.6663 14.0007 20.6663Z" stroke="#86EFAC" stroke-linecap="round" stroke-linejoin="round"/>
|
|
72
|
+
<path d="M12.666 11.333L16.666 13.9997L12.666 16.6663V11.333Z" stroke="#86EFAC" stroke-linecap="round" stroke-linejoin="round"/>
|
|
73
|
+
</g>
|
|
74
|
+
<defs>
|
|
75
|
+
<clipPath id="clip0_8650_35616">
|
|
76
|
+
<rect width="16" height="16" fill="white" transform="translate(6 6)"/>
|
|
77
|
+
</clipPath>
|
|
78
|
+
</defs>
|
|
79
|
+
</svg>
|
|
80
|
+
|
|
81
|
+
|
|
82
82
|
);
|
|
83
83
|
|
|
84
84
|
// Navigation Icon
|
|
85
|
-
export const NavigationIcon: React.FC<SvgIconProps> = ({ size
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
stroke={color}
|
|
102
|
-
strokeLinecap="round"
|
|
103
|
-
strokeLinejoin="round"
|
|
104
|
-
/>
|
|
105
|
-
</BaseIcon>
|
|
106
|
-
);
|
|
85
|
+
export const NavigationIcon: React.FC<SvgIconProps> = ({ size, color, style }) => (
|
|
86
|
+
<svg width="35" height="35" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
87
|
+
<path d="M0 14C0 6.26801 6.26801 0 14 0C21.732 0 28 6.26801 28 14C28 21.732 21.732 28 14 28C6.26801 28 0 21.732 0 14Z" fill="#1E3A8A"/>
|
|
88
|
+
<g clip-path="url(#clip0_8650_35642)">
|
|
89
|
+
<path d="M14.0007 20.6663C17.6825 20.6663 20.6673 17.6816 20.6673 13.9997C20.6673 10.3178 17.6825 7.33301 14.0007 7.33301C10.3188 7.33301 7.33398 10.3178 7.33398 13.9997C7.33398 17.6816 10.3188 20.6663 14.0007 20.6663Z" stroke="#93C5FD" stroke-linecap="round" stroke-linejoin="round"/>
|
|
90
|
+
<path d="M14.0007 7.33301C12.2888 9.13044 11.334 11.5175 11.334 13.9997C11.334 16.4818 12.2888 18.8689 14.0007 20.6663C15.7125 18.8689 16.6673 16.4818 16.6673 13.9997C16.6673 11.5175 15.7125 9.13044 14.0007 7.33301Z" stroke="#93C5FD" stroke-linecap="round" stroke-linejoin="round"/>
|
|
91
|
+
<path d="M7.33398 14H20.6673" stroke="#93C5FD" stroke-linecap="round" stroke-linejoin="round"/>
|
|
92
|
+
</g>
|
|
93
|
+
<defs>
|
|
94
|
+
<clipPath id="clip0_8650_35642">
|
|
95
|
+
<rect width="16" height="16" fill="white" transform="translate(6 6)"/>
|
|
96
|
+
</clipPath>
|
|
97
|
+
</defs>
|
|
98
|
+
</svg>
|
|
99
|
+
|
|
100
|
+
);
|
|
107
101
|
|
|
108
102
|
// Workflow node type icons
|
|
109
103
|
export const ParallelIcon: React.FC<SvgIconProps> = ({ size = 15, color = '#86EFAC', style }) => (
|
|
@@ -260,7 +254,7 @@ export const EmptyNodeIcon: React.FC<SvgIconProps> = ({ size = 15, color = '#86E
|
|
|
260
254
|
</BaseIcon>
|
|
261
255
|
);
|
|
262
256
|
|
|
263
|
-
export const EntityIcon: React.FC<SvgIconProps> = ({ size
|
|
257
|
+
export const EntityIcon: React.FC<SvgIconProps> = ({ size, color = '#86EFAC', style }) => (
|
|
264
258
|
<BaseIcon size={size} color={color} style={style}>
|
|
265
259
|
<path
|
|
266
260
|
d="M7.16667 13.8333C10.8486 13.8333 13.8333 10.8486 13.8333 7.16667C13.8333 3.48477 10.8486 0.5 7.16667 0.5C3.48477 0.5 0.5 3.48477 0.5 7.16667C0.5 10.8486 3.48477 13.8333 7.16667 13.8333Z"
|
|
@@ -272,20 +266,27 @@ export const EntityIcon: React.FC<SvgIconProps> = ({ size = 15, color = '#86EFAC
|
|
|
272
266
|
);
|
|
273
267
|
|
|
274
268
|
// End Node Icon
|
|
275
|
-
export const EndNodeIcon: React.FC<SvgIconProps> = ({ size
|
|
276
|
-
<svg
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
282
|
-
style={style}
|
|
283
|
-
>
|
|
284
|
-
<path
|
|
285
|
-
d="M11.1667 0.5H1.83333C1.09695 0.5 0.5 1.09695 0.5 1.83333V11.1667C0.5 11.903 1.09695 12.5 1.83333 12.5H11.1667C11.903 12.5 12.5 11.903 12.5 11.1667V1.83333C12.5 1.09695 11.903 0.5 11.1667 0.5Z"
|
|
286
|
-
stroke={color}
|
|
287
|
-
strokeLinecap="round"
|
|
288
|
-
strokeLinejoin="round"
|
|
289
|
-
/>
|
|
290
|
-
</svg>
|
|
269
|
+
export const EndNodeIcon: React.FC<SvgIconProps> = ({ size, color , style }) => (
|
|
270
|
+
<svg width="35" height="35" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
271
|
+
<path d="M0 14C0 6.26801 6.26801 0 14 0C21.732 0 28 6.26801 28 14C28 21.732 21.732 28 14 28C6.26801 28 0 21.732 0 14Z" fill="#1E3A8A"/>
|
|
272
|
+
<path d="M18.6667 8H9.33333C8.59695 8 8 8.59695 8 9.33333V18.6667C8 19.403 8.59695 20 9.33333 20H18.6667C19.403 20 20 19.403 20 18.6667V9.33333C20 8.59695 19.403 8 18.6667 8Z" stroke="#FCA5A5" stroke-linecap="round" stroke-linejoin="round"/>
|
|
273
|
+
</svg>
|
|
274
|
+
|
|
291
275
|
);
|
|
276
|
+
|
|
277
|
+
export const FormattingNodeIcon: React.FC<SvgIconProps> = ({ size, color , style }) => (
|
|
278
|
+
<svg width="35" height="35" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
279
|
+
<path d="M0 14C0 6.26801 6.26801 0 14 0C21.732 0 28 6.26801 28 14C28 21.732 21.732 28 14 28C6.26801 28 0 21.732 0 14Z" fill="#1E3A8A"/>
|
|
280
|
+
<path d="M15.9993 7.33301H9.99935C9.64573 7.33301 9.30659 7.47348 9.05654 7.72353C8.80649 7.97358 8.66602 8.31272 8.66602 8.66634V19.333C8.66602 19.6866 8.80649 20.0258 9.05654 20.2758C9.30659 20.5259 9.64573 20.6663 9.99935 20.6663H17.9993C18.353 20.6663 18.6921 20.5259 18.9422 20.2758C19.1922 20.0258 19.3327 19.6866 19.3327 19.333V10.6663L15.9993 7.33301Z" stroke="#D8B4FE" stroke-linecap="round" stroke-linejoin="round"/>
|
|
281
|
+
<path d="M15.334 7.33301V9.99967C15.334 10.3533 15.4745 10.6924 15.7245 10.9425C15.9746 11.1925 16.3137 11.333 16.6673 11.333H19.334" stroke="#D8B4FE" stroke-linecap="round" stroke-linejoin="round"/>
|
|
282
|
+
<path d="M12.6673 12H11.334" stroke="#D8B4FE" stroke-linecap="round" stroke-linejoin="round"/>
|
|
283
|
+
<path d="M16.6673 14.667H11.334" stroke="#D8B4FE" stroke-linecap="round" stroke-linejoin="round"/>
|
|
284
|
+
<path d="M16.6673 17.333H11.334" stroke="#D8B4FE" stroke-linecap="round" stroke-linejoin="round"/>
|
|
285
|
+
</svg>
|
|
286
|
+
);
|
|
287
|
+
|
|
288
|
+
export const ApiNodeIcon: React.FC<SvgIconProps> = ({ size, color , style }) => (
|
|
289
|
+
<svg width="17" height="17" viewBox="0 0 17 17" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
290
|
+
<path d="M3.89167 3.92167L2.66667 2.68583M10.4242 3.92167L11.6492 2.68583M2.66583 11.7525L3.89083 10.5158M7.1575 2.27417V0.625M2.2575 7.21917H0.625M12.1875 12.155L15.3658 10.9C15.4425 10.8693 15.5083 10.8164 15.5546 10.748C15.6009 10.6796 15.6256 10.5988 15.6256 10.5162C15.6256 10.4337 15.6009 10.3529 15.5546 10.2845C15.5083 10.2161 15.4425 10.1632 15.3658 10.1325L7.72833 7.12C7.65398 7.09123 7.57285 7.08475 7.49488 7.10138C7.4169 7.118 7.34547 7.157 7.28931 7.21359C7.23316 7.27019 7.19472 7.34193 7.17871 7.42003C7.1627 7.49813 7.16981 7.57921 7.19917 7.65333L10.1842 15.3625C10.3192 15.7125 10.8092 15.7125 10.9442 15.3625L12.1875 12.155Z" stroke="#FCFAFF" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
|
|
291
|
+
</svg>
|
|
292
|
+
);
|