Skip to content

Commit 535f857

Browse files
refactor: move renderer-dependent utils into workbench scope (#6621)
This PR cleans up the base-layer utilities so they no longer pull renderer or workbench code. The renderer-only `isPrimitiveNode` guard now lives in `src/renderer/utils/nodeTypeGuards.ts`, and the node help/model/ordering helpers have moved into `src/workbench/utils`. All affected services, stores, scripts, and tests were updated to import from the new locations. The idea is to reduce the number of Base→Renderer/Base→Workbench edges (higher scoped base/common utils should not import from renderer/workbench layers). ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-6621-refactor-move-renderer-dependent-utils-into-workbench-scope-2a36d73d36508167aff0fc8a22202d7f) by [Unito](https://www.unito.io)
1 parent adb15aa commit 535f857

File tree

13 files changed

+14
-15
lines changed

13 files changed

+14
-15
lines changed

src/extensions/core/widgetInputs.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import { ComfyWidgets, addValueControlWidgets } from '@/scripts/widgets'
1818
import { CONFIG, GET_CONFIG } from '@/services/litegraphService'
1919
import { mergeInputSpec } from '@/utils/nodeDefUtil'
2020
import { applyTextReplacements } from '@/utils/searchAndReplace'
21-
import { isPrimitiveNode } from '@/utils/typeGuardUtil'
21+
import { isPrimitiveNode } from '@/renderer/utils/nodeTypeGuards'
2222

2323
const replacePropertyName = 'Run widget replace on values'
2424
export class PrimitiveNode extends LGraphNode {
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import type { PrimitiveNode } from '@/extensions/core/widgetInputs'
2+
import type { LGraphNode } from '@/lib/litegraph/src/litegraph'
3+
4+
export const isPrimitiveNode = (
5+
node: LGraphNode
6+
): node is PrimitiveNode & LGraphNode => node.type === 'PrimitiveNode'

src/scripts/app.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ import {
7878
findLegacyRerouteNodes,
7979
noNativeReroutes
8080
} from '@/utils/migration/migrateReroute'
81-
import { getSelectedModelsMetadata } from '@/utils/modelMetadataUtil'
81+
import { getSelectedModelsMetadata } from '@/workbench/utils/modelMetadataUtil'
8282
import { deserialiseAndCreate } from '@/utils/vintageClipboard'
8383

8484
import { type ComfyApi, PromptExecutionError, api } from './api'

src/services/litegraphService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ import {
5555
isVideoNode,
5656
migrateWidgetsValues
5757
} from '@/utils/litegraphUtil'
58-
import { getOrderedInputSpecs } from '@/utils/nodeDefOrderingUtil'
58+
import { getOrderedInputSpecs } from '@/workbench/utils/nodeDefOrderingUtil'
5959

6060
import { useExtensionService } from './extensionService'
6161

src/services/nodeHelpService.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { api } from '@/scripts/api'
22
import type { ComfyNodeDefImpl } from '@/stores/nodeDefStore'
33
import { NodeSourceType, getNodeSource } from '@/types/nodeSource'
4-
import { extractCustomNodeName } from '@/utils/nodeHelpUtil'
4+
import { extractCustomNodeName } from '@/workbench/utils/nodeHelpUtil'
55

66
class NodeHelpService {
77
async fetchNodeHelp(node: ComfyNodeDefImpl, locale: string): Promise<string> {

src/stores/workspace/nodeHelpStore.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import { i18n } from '@/i18n'
55
import { nodeHelpService } from '@/services/nodeHelpService'
66
import type { ComfyNodeDefImpl } from '@/stores/nodeDefStore'
77
import { renderMarkdownToHtml } from '@/utils/markdownRendererUtil'
8-
import { getNodeHelpBaseUrl } from '@/utils/nodeHelpUtil'
8+
import { getNodeHelpBaseUrl } from '@/workbench/utils/nodeHelpUtil'
99

1010
export const useNodeHelpStore = defineStore('nodeHelp', () => {
1111
const currentHelpNode = ref<ComfyNodeDefImpl | null>(null)

src/utils/typeGuardUtil.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,10 @@
1-
import type { PrimitiveNode } from '@/extensions/core/widgetInputs'
21
import type {
32
INodeSlot,
43
LGraph,
54
LGraphNode,
65
Subgraph
76
} from '@/lib/litegraph/src/litegraph'
87

9-
export function isPrimitiveNode(
10-
node: LGraphNode
11-
): node is PrimitiveNode & LGraphNode {
12-
return node.type === 'PrimitiveNode'
13-
}
14-
158
/**
169
* Check if an error is an AbortError triggered by `AbortController#abort`
1710
* when cancelling a request.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)