- Copy complete source code packages from original CodeNomad project - Add root package.json with npm workspace configuration - Include electron-app, server, ui, tauri-app, and opencode-config packages - Fix Launch-Windows.bat and Launch-Dev-Windows.bat to work with correct npm scripts - Fix Launch-Unix.sh to work with correct npm scripts - Launchers now correctly call npm run dev:electron which launches Electron app
39 lines
1.1 KiB
TypeScript
39 lines
1.1 KiB
TypeScript
import { createSignal } from "solid-js"
|
|
|
|
const [hasInstances, setHasInstances] = createSignal(false)
|
|
const [selectedFolder, setSelectedFolder] = createSignal<string | null>(null)
|
|
const [isSelectingFolder, setIsSelectingFolder] = createSignal(false)
|
|
const [showFolderSelection, setShowFolderSelection] = createSignal(false)
|
|
|
|
const [instanceTabOrder, setInstanceTabOrder] = createSignal<string[]>([])
|
|
const [sessionTabOrder, setSessionTabOrder] = createSignal<Map<string, string[]>>(new Map())
|
|
|
|
function reorderInstanceTabs(newOrder: string[]) {
|
|
setInstanceTabOrder(newOrder)
|
|
}
|
|
|
|
function reorderSessionTabs(instanceId: string, newOrder: string[]) {
|
|
setSessionTabOrder((prev) => {
|
|
const next = new Map(prev)
|
|
next.set(instanceId, newOrder)
|
|
return next
|
|
})
|
|
}
|
|
|
|
export {
|
|
hasInstances,
|
|
setHasInstances,
|
|
selectedFolder,
|
|
setSelectedFolder,
|
|
isSelectingFolder,
|
|
setIsSelectingFolder,
|
|
showFolderSelection,
|
|
setShowFolderSelection,
|
|
instanceTabOrder,
|
|
setInstanceTabOrder,
|
|
sessionTabOrder,
|
|
setSessionTabOrder,
|
|
reorderInstanceTabs,
|
|
reorderSessionTabs,
|
|
}
|