|
|
|
@ -20,6 +20,7 @@ export const RECENT_MODELS_KEY = "node-banana-recent-models"; |
|
|
|
export const NODE_DEFAULTS_KEY = "node-banana-node-defaults"; |
|
|
|
export const CANVAS_NAVIGATION_KEY = "node-banana-canvas-navigation"; |
|
|
|
export const LAST_PROJECT_BASE_DIR_KEY = "node-banana-last-project-dir"; |
|
|
|
export const WORKFLOWS_DIRECTORY_KEY = "node-banana-workflows-directory"; |
|
|
|
|
|
|
|
// Maximum recent models to store (show 4 in UI, keep 8 for persistence)
|
|
|
|
export const MAX_RECENT_MODELS = 8; |
|
|
|
@ -228,6 +229,17 @@ export const setLastProjectBaseDir = (dir: string): void => { |
|
|
|
localStorage.setItem(LAST_PROJECT_BASE_DIR_KEY, dir); |
|
|
|
}; |
|
|
|
|
|
|
|
// Workflows directory helpers
|
|
|
|
export const getWorkflowsDirectory = (): string | null => { |
|
|
|
if (typeof window === "undefined") return null; |
|
|
|
return localStorage.getItem(WORKFLOWS_DIRECTORY_KEY); |
|
|
|
}; |
|
|
|
|
|
|
|
export const setWorkflowsDirectory = (path: string): void => { |
|
|
|
if (typeof window === "undefined") return; |
|
|
|
localStorage.setItem(WORKFLOWS_DIRECTORY_KEY, path); |
|
|
|
}; |
|
|
|
|
|
|
|
// Workflow ID generator
|
|
|
|
export const generateWorkflowId = (): string => |
|
|
|
`wf_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`; |
|
|
|
|