Skip to content

Commit 186e065

Browse files
authored
Feat: Bypass styling for Vue nodes (#5593)
* cleanup: Extract the logic for outline/border colors * feat: Add coloring for bypass style
1 parent 237e807 commit 186e065

File tree

2 files changed

+30
-10
lines changed

2 files changed

+30
-10
lines changed

src/assets/css/style.css

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@
9999
--color-danger-100: #c02323;
100100
--color-danger-200: #d62952;
101101

102+
--color-bypass: #6A246A;
102103
--color-error: #962a2a;
103104

104105
--color-blue-selection: rgb( from var(--color-blue-100) r g b / 0.3);

src/renderer/extensions/vueNodes/components/LGraphNode.vue

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,21 +9,15 @@
99
cn(
1010
'bg-white dark-theme:bg-charcoal-100',
1111
'lg-node absolute rounded-2xl',
12-
// border
1312
'border border-solid border-sand-100 dark-theme:border-charcoal-300',
14-
!!executing && 'border-blue-100 dark-theme:border-blue-100',
15-
hasAnyError && 'border-error',
16-
// hover
1713
'hover:ring-7 ring-gray-500/50 dark-theme:ring-gray-500/20',
18-
// Selected
1914
'outline-transparent -outline-offset-2 outline-2',
20-
!!isSelected && 'outline-black dark-theme:outline-white',
21-
!!(isSelected && executing) &&
22-
'outline-blue-100 dark-theme:outline-blue-100',
23-
isSelected && hasAnyError && 'outline-error',
15+
borderClass,
16+
outlineClass,
2417
{
2518
'animate-pulse': executing,
26-
'opacity-50': nodeData.mode === 4,
19+
'opacity-50 before:rounded-2xl before:pointer-events-none before:absolute before:bg-bypass/60 before:inset-0':
20+
bypassed,
2721
'will-change-transform': isDragging
2822
},
2923
lodCssClass,
@@ -238,6 +232,8 @@ const hasAnyError = computed(
238232
(): boolean => !!(hasExecutionError.value || nodeData.hasErrors || error)
239233
)
240234
235+
const bypassed = computed((): boolean => nodeData.mode === 4)
236+
241237
// LOD (Level of Detail) system based on zoom level
242238
const zoomRef = toRef(() => zoomLevel)
243239
const {
@@ -325,6 +321,29 @@ const shouldShowContent = computed(
325321
() => shouldRenderContent.value && hasCustomContent.value
326322
)
327323
324+
const borderClass = computed(() => {
325+
if (hasAnyError.value) {
326+
return 'border-error'
327+
}
328+
if (executing.value) {
329+
return 'border-blue-500'
330+
}
331+
return undefined
332+
})
333+
334+
const outlineClass = computed(() => {
335+
if (!isSelected.value) {
336+
return undefined
337+
}
338+
if (hasAnyError.value) {
339+
return 'outline-error'
340+
}
341+
if (executing.value) {
342+
return 'outline-blue-500'
343+
}
344+
return 'outline-black dark-theme:outline-white'
345+
})
346+
328347
// Event handlers
329348
const handlePointerDown = (event: PointerEvent) => {
330349
if (!nodeData) {

0 commit comments

Comments
 (0)