diff options
author | Thomas F. K. Jorna <[email protected]> | 2021-10-01 19:11:08 +0200 |
---|---|---|
committer | Thomas F. K. Jorna <[email protected]> | 2021-10-01 19:11:08 +0200 |
commit | 56eeb1fc6b03c4e8ed9405e301c7edc7be5fd5d9 (patch) | |
tree | 0c7e889f2d749abad3d65a16d4ee0449002c4d89 /util/webSocketFunctions.ts | |
parent | 56e81e56ad181129c9f36b75e5ca076162b7cac7 (diff) |
feat: basic preview feature
Diffstat (limited to 'util/webSocketFunctions.ts')
-rw-r--r-- | util/webSocketFunctions.ts | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/util/webSocketFunctions.ts b/util/webSocketFunctions.ts new file mode 100644 index 0000000..8e2bd7e --- /dev/null +++ b/util/webSocketFunctions.ts @@ -0,0 +1,25 @@ +import { OrgRoamNode } from '../api' +import ReconnectingWebSocket from 'reconnecting-websocket' + +export function sendMessageToEmacs(command: string, data: {}, webSocket: ReconnectingWebSocket) { + webSocket.send(JSON.stringify({ command: command, data: data })) +} + +export function getOrgText(node: OrgRoamNode, webSocket: ReconnectingWebSocket) { + sendMessageToEmacs('getText', { id: node.id }, webSocket) +} + +export function openNodeInEmacs(node: OrgRoamNode, webSocket: ReconnectingWebSocket) { + sendMessageToEmacs('open', { id: node.id }, webSocket) +} + +export function deleteNodeInEmacs(node: OrgRoamNode, webSocket: ReconnectingWebSocket) { + if (node.level !== 0) { + return + } + sendMessageToEmacs('delete', { id: node.id, file: node.file }, webSocket) +} + +export function createNodeInEmacs(node: OrgRoamNode, webSocket: ReconnectingWebSocket) { + sendMessageToEmacs('create', { id: node.id, title: node.title, ref: node.properties.ROAM_REFS }, webSocket) +} |