server-ts: events.js -> ts

This commit is contained in:
Elian Doran 2024-02-16 23:14:42 +02:00
parent b63e870038
commit 786d851293
No known key found for this signature in database
9 changed files with 17 additions and 14 deletions

View File

@ -1,7 +1,7 @@
"use strict"; "use strict";
const sql = require('../services/sql'); const sql = require('../services/sql');
const eventService = require('../services/events.js'); const eventService = require('../services/events');
const becca = require('./becca.js'); const becca = require('./becca.js');
const sqlInit = require('../services/sql_init.js'); const sqlInit = require('../services/sql_init.js');
const log = require('../services/log'); const log = require('../services/log');

View File

@ -10,7 +10,7 @@ const TaskContext = require('../../services/task_context.js');
const branchService = require('../../services/branches.js'); const branchService = require('../../services/branches.js');
const log = require('../../services/log'); const log = require('../../services/log');
const ValidationError = require('../../errors/validation_error'); const ValidationError = require('../../errors/validation_error');
const eventService = require("../../services/events.js"); const eventService = require("../../services/events");
/** /**
* Code in this file deals with moving and cloning branches. The relationship between note and parent note is unique * Code in this file deals with moving and cloning branches. The relationship between note and parent note is unique

View File

@ -7,7 +7,7 @@ const instanceId = require('../../services/instance_id.js');
const passwordEncryptionService = require('../../services/encryption/password_encryption.js'); const passwordEncryptionService = require('../../services/encryption/password_encryption.js');
const protectedSessionService = require('../../services/protected_session'); const protectedSessionService = require('../../services/protected_session');
const appInfo = require('../../services/app_info.js'); const appInfo = require('../../services/app_info.js');
const eventService = require('../../services/events.js'); const eventService = require('../../services/events');
const sqlInit = require('../../services/sql_init.js'); const sqlInit = require('../../services/sql_init.js');
const sql = require('../../services/sql'); const sql = require('../../services/sql');
const ws = require('../../services/ws.js'); const ws = require('../../services/ws.js');

View File

@ -53,7 +53,7 @@ function putNoteReorderingEntityChange(parentNoteId, componentId) {
instanceId instanceId
}); });
const eventService = require('./events.js'); const eventService = require('./events');
eventService.emit(eventService.ENTITY_CHANGED, { eventService.emit(eventService.ENTITY_CHANGED, {
entityName: 'note_reordering', entityName: 'note_reordering',

View File

@ -11,13 +11,16 @@ const ENTITY_DELETE_SYNCED = "ENTITY_DELETE_SYNCED";
const CHILD_NOTE_CREATED = "CHILD_NOTE_CREATED"; const CHILD_NOTE_CREATED = "CHILD_NOTE_CREATED";
const NOTE_CONTENT_CHANGE = "NOTE_CONTENT_CHANGED"; const NOTE_CONTENT_CHANGE = "NOTE_CONTENT_CHANGED";
const eventListeners = {}; type EventType = string | string[];
type EventListener = (data: any) => void;
const eventListeners: Record<string, EventListener[]> = {};
/** /**
* @param {string|string[]}eventTypes - can be either single event or an array of events * @param {string|string[]}eventTypes - can be either single event or an array of events
* @param listener * @param listener
*/ */
function subscribe(eventTypes, listener) { function subscribe(eventTypes: EventType, listener: EventListener) {
if (!Array.isArray(eventTypes)) { if (!Array.isArray(eventTypes)) {
eventTypes = [ eventTypes ]; eventTypes = [ eventTypes ];
} }
@ -28,7 +31,7 @@ function subscribe(eventTypes, listener) {
} }
} }
function subscribeBeccaLoader(eventTypes, listener) { function subscribeBeccaLoader(eventTypes: EventType, listener: EventListener) {
if (!Array.isArray(eventTypes)) { if (!Array.isArray(eventTypes)) {
eventTypes = [ eventTypes ]; eventTypes = [ eventTypes ];
} }
@ -41,7 +44,7 @@ function subscribeBeccaLoader(eventTypes, listener) {
} }
} }
function emit(eventType, data) { function emit(eventType: string, data: any) {
const listeners = eventListeners[eventType]; const listeners = eventListeners[eventType];
if (listeners) { if (listeners) {
@ -49,7 +52,7 @@ function emit(eventType, data) {
try { try {
listener(data); listener(data);
} }
catch (e) { catch (e: any) {
log.error(`Listener threw error: ${e.message}, stack: ${e.stack}`); log.error(`Listener threw error: ${e.message}, stack: ${e.stack}`);
// we won't stop execution because of listener // we won't stop execution because of listener
} }
@ -57,7 +60,7 @@ function emit(eventType, data) {
} }
} }
module.exports = { export = {
subscribe, subscribe,
subscribeBeccaLoader, subscribeBeccaLoader,
emit, emit,

View File

@ -1,4 +1,4 @@
const eventService = require('./events.js'); const eventService = require('./events');
const scriptService = require('./script.js'); const scriptService = require('./script.js');
const treeService = require('./tree.js'); const treeService = require('./tree.js');
const noteService = require('./notes.js'); const noteService = require('./notes.js');

View File

@ -2,7 +2,7 @@ const sql = require('./sql');
const optionService = require('./options.js'); const optionService = require('./options.js');
const dateUtils = require('./date_utils'); const dateUtils = require('./date_utils');
const entityChangesService = require('./entity_changes.js'); const entityChangesService = require('./entity_changes.js');
const eventService = require('./events.js'); const eventService = require('./events');
const cls = require('../services/cls'); const cls = require('../services/cls');
const protectedSessionService = require('../services/protected_session'); const protectedSessionService = require('../services/protected_session');
const log = require('../services/log'); const log = require('../services/log');

View File

@ -1,7 +1,7 @@
const sql = require('./sql'); const sql = require('./sql');
const log = require('./log'); const log = require('./log');
const entityChangesService = require('./entity_changes.js'); const entityChangesService = require('./entity_changes.js');
const eventService = require('./events.js'); const eventService = require('./events');
const entityConstructor = require('../becca/entity_constructor.js'); const entityConstructor = require('../becca/entity_constructor.js');
const ws = require('./ws.js'); const ws = require('./ws.js');

View File

@ -8,7 +8,7 @@ const SBranch = require('./entities/sbranch.js');
const SAttribute = require('./entities/sattribute.js'); const SAttribute = require('./entities/sattribute.js');
const SAttachment = require('./entities/sattachment.js'); const SAttachment = require('./entities/sattachment.js');
const shareRoot = require('../share_root.js'); const shareRoot = require('../share_root.js');
const eventService = require('../../services/events.js'); const eventService = require('../../services/events');
function load() { function load() {
const start = Date.now(); const start = Date.now();