diff --git a/src/simulator/src/data.js b/src/simulator/src/data.js deleted file mode 100644 index bb9df0e7..00000000 --- a/src/simulator/src/data.js +++ /dev/null @@ -1,58 +0,0 @@ -import { fullView } from './ux' -import { createSubCircuitPrompt } from './subcircuit' -import save from './data/save' -import load from './data/load' -import createSaveAsImgPrompt from './data/saveImage' -import { - clearProject, - newProject, - saveOffline, - openOffline, - recoverProject, -} from './data/project' -import { createNewCircuitScope } from './circuit' -import { createCombinationalAnalysisPrompt } from './combinationalAnalysis' -import { colorThemes } from './themer/themer' -import { showTourGuide } from './tutorials' -import { createVerilogCircuit } from './Verilog2CV' -import { generateVerilog } from './verilog' -import { bitConverterDialog } from './utils' -import { keyBinder } from '#/components/DialogBox/CustomShortcut.vue' -import { ExportProject } from '#/components/DialogBox/ExportProject.vue' -import { ImportProject } from '#/components/DialogBox/ImportProject.vue' - -const logixFunction = {} -logixFunction.save = save -logixFunction.load = load -logixFunction.createSaveAsImgPrompt = createSaveAsImgPrompt -logixFunction.clearProject = clearProject -logixFunction.newProject = newProject -logixFunction.saveOffline = saveOffline -logixFunction.createOpenLocalPrompt = openOffline -logixFunction.recoverProject = recoverProject -logixFunction.createSubCircuitPrompt = createSubCircuitPrompt -logixFunction.createCombinationalAnalysisPrompt = - createCombinationalAnalysisPrompt -logixFunction.fullViewOption = fullView -logixFunction.colorThemes = colorThemes -logixFunction.showTourGuide = showTourGuideHelper -logixFunction.newVerilogModule = createVerilogCircuit -logixFunction.generateVerilog = generateVerilog -logixFunction.bitconverter = bitConverterDialog -logixFunction.createNewCircuitScope = createNewCircuit -logixFunction.customShortcut = keyBinder -logixFunction.ExportProject = ExportProject -logixFunction.ImportProject = ImportProject -export default logixFunction - -// Hack to restart tour guide -function showTourGuideHelper() { - setTimeout(() => { - showTourGuide() - }, 100) -} - -// Hack to call createNewCircuitScope with keyboard shortcut -function createNewCircuit() { - createNewCircuitScope() -} diff --git a/src/simulator/src/data.ts b/src/simulator/src/data.ts new file mode 100644 index 00000000..b7328fd3 --- /dev/null +++ b/src/simulator/src/data.ts @@ -0,0 +1,82 @@ +import { fullView } from './ux'; +import { createSubCircuitPrompt } from './subcircuit'; +import save from './data/save'; +import load from './data/load'; +import createSaveAsImgPrompt from './data/saveImage'; +import { + clearProject, + newProject, + saveOffline, + openOffline, + recoverProject, +} from './data/project'; +import { createNewCircuitScope } from './circuit'; +import { createCombinationalAnalysisPrompt } from './combinationalAnalysis'; +import { colorThemes } from './themer/themer'; +import { showTourGuide } from './tutorials'; +import { createVerilogCircuit } from './Verilog2CV'; +import { generateVerilog } from './verilog'; +import { bitConverterDialog } from './utils'; +import { keyBinder } from '#/components/DialogBox/CustomShortcut.vue'; +import { ExportProject } from '#/components/DialogBox/ExportProject.vue'; +import { ImportProject } from '#/components/DialogBox/ImportProject.vue'; + +interface LogixFunction { + save: typeof save; + load: typeof load; + createSaveAsImgPrompt: typeof createSaveAsImgPrompt; + clearProject: typeof clearProject; + newProject: typeof newProject; + saveOffline: typeof saveOffline; + createOpenLocalPrompt: typeof openOffline; + recoverProject: typeof recoverProject; + createSubCircuitPrompt: typeof createSubCircuitPrompt; + createCombinationalAnalysisPrompt: typeof createCombinationalAnalysisPrompt; + fullViewOption: typeof fullView; + colorThemes: typeof colorThemes; + showTourGuide: () => void; + newVerilogModule: typeof createVerilogCircuit; + generateVerilog: typeof generateVerilog; + bitconverter: typeof bitConverterDialog; + createNewCircuitScope: () => void; + customShortcut: typeof keyBinder; + ExportProject: typeof ExportProject; + ImportProject: typeof ImportProject; +} + +const logixFunction: LogixFunction = { + save, + load, + createSaveAsImgPrompt, + clearProject, + newProject, + saveOffline, + createOpenLocalPrompt: openOffline, + recoverProject, + createSubCircuitPrompt, + createCombinationalAnalysisPrompt, + fullViewOption: fullView, + colorThemes, + showTourGuide: showTourGuideHelper, + newVerilogModule: createVerilogCircuit, + generateVerilog, + bitconverter: bitConverterDialog, + createNewCircuitScope: createNewCircuit, + customShortcut: keyBinder, + ExportProject, + ImportProject, +}; + +export default logixFunction; + +// Hack to restart tour guide +function showTourGuideHelper(): void { + setTimeout(() => { + showTourGuide(); + }, 100); +} + +// Hack to call createNewCircuitScope with keyboard shortcut +function createNewCircuit(): void { + createNewCircuitScope(); +}