import { goto } from '$app/navigation'; import { PUBLIC_TAURI } from '$env/static/public'; import type { ExpanderType } from "./index.d.ts"; import { getCurrentWindow } from "@tauri-apps/api/window"; import { incTextSize, decTextSize, selectNextColor, toggleMenuOpen, appState } from "$lib/stores.svelte" let fullscreen = true; export const defaultExpanders: Map = new Map(); export const hotkeys: Map = new Map(); defaultExpanders.set("\n", { key: { keyCode: 188, shiftKey: false }, symbol: "\n", fullstop: true, }); defaultExpanders.set(" ", { key: { keyCode: 190, shiftKey: false }, symbol: " ", fullstop: false, }); defaultExpanders.set(".", { key: { keyCode: 190, shiftKey: false }, symbol: ".", fullstop: true, }); defaultExpanders.set("!", { key: { keyCode: 49, shiftKey: true }, symbol: "!", fullstop: true, }); defaultExpanders.set("?", { key: { keyCode: 187, shiftKey: true }, symbol: "?", fullstop: true, }); defaultExpanders.set("+", { key: { keyCode: 187, shiftKey: false }, symbol: "+", fullstop: false, }); defaultExpanders.set(",", { key: { keyCode: 188, shiftKey: false }, symbol: ",", fullstop: false, }); defaultExpanders.set("(", { key: { keyCode: 56, shiftKey: true }, symbol: "(", fullstop: false, }); defaultExpanders.set(")", { key: { keyCode: 57, shiftKey: true }, symbol: ")", fullstop: false, }); defaultExpanders.set('"', { key: { keyCode: 50, shiftKey: true }, symbol: '"', fullstop: false, }); defaultExpanders.set("'", { key: { keyCode: 191, shiftKey: false }, symbol: "'", fullstop: false, }); defaultExpanders.set("-", { key: { keyCode: 189, shiftKey: false }, symbol: "-", fullstop: false, }); defaultExpanders.set(":", { key: { keyCode: 190, shiftKey: true }, symbol: ":", fullstop: false, }); defaultExpanders.set(",", { key: { keyCode: 188, shiftKey: false }, symbol: ",", fullstop: false, }); defaultExpanders.set(";", { key: { keyCode: 188, shiftKey: true }, symbol: ":", fullstop: false, }); hotkeys.set("Home", { action: (e) => { e.preventDefault() appState.debug = !appState.debug; } }) hotkeys.set("F4", { action: (e) => { e.preventDefault() console.log("Clear text", appState.text) appState.text = "" } }) hotkeys.set("F5", { action: (e) => { e.preventDefault() toggleMenuOpen() console.log("Menu open", appState.menuOpen) } }) hotkeys.set("F6", { action: (e) => { e.preventDefault() console.log("Decrease text size") decTextSize() } }) hotkeys.set("F7", { action: (e) => { e.preventDefault() console.log("Increase text size") incTextSize() } }) hotkeys.set("F8", { action: (e) => { e.preventDefault() console.log("Increase text size") selectNextColor() } }) hotkeys.set("F2", { action: (e) => { e.preventDefault() toggleMenuOpen(false) appState.open = "create" } }) hotkeys.set("F11", { action: (e) => { console.log("Toggle fullscreen") console.log(PUBLIC_TAURI) if (PUBLIC_TAURI == true) { e.preventDefault() if (fullscreen) { getCurrentWindow().setFullscreen(false).then(() => { fullscreen = false }); } else { getCurrentWindow().setFullscreen(true).then(() => { fullscreen = true }); } } } }) hotkeys.set("F12", { action: (e) => { e.preventDefault() console.log("Open import page") goto("/import") } }) hotkeys.set("Escape", { action: (e) => { e.preventDefault() console.log("Close stuff") appState.open = "" } })