@cachemap/controller
Version:
The Cachemap controller module.
1 lines • 3.31 kB
Source Map (JSON)
{"version":3,"file":"index.cjs","sources":["../controller/src//helpers/validateArgs.ts","../controller/src//main/index.ts"],"sourcesContent":["import { type EventData } from '../types.ts';\n\nexport const validateArgs = ({ name, type }: EventData): boolean =>\n (typeof name === 'string' && name.length > 0) || (typeof type === 'string' && type.length > 0);\n","import { ArgsError, constants } from '@cachemap/utils';\nimport { EventEmitter } from 'eventemitter3';\nimport { validateArgs } from '../helpers/validateArgs.ts';\nimport { type EventData } from '../types.ts';\n\nexport class Controller extends EventEmitter {\n public clearCaches({ name, type }: EventData = {}): void {\n if (!validateArgs({ name, type })) {\n throw new ArgsError(\"@cachemap/controller expected event data to include 'name' or 'type' props.\");\n }\n\n this.emit(constants.CLEAR, { name, type });\n }\n\n public startBackups({ name, type }: EventData = {}): void {\n if (!validateArgs({ name, type })) {\n throw new ArgsError(\"@cachemap/controller expected event data to include 'name' or 'type' props.\");\n }\n\n this.emit(constants.START_BACKUP, { name, type });\n }\n\n public startReapers({ name, type }: EventData = {}): void {\n if (!validateArgs({ name, type })) {\n throw new ArgsError(\"@cachemap/controller expected event data to include 'name' or 'type' props.\");\n }\n\n this.emit(constants.START_REAPER, { name, type });\n }\n\n public stopBackups({ name, type }: EventData = {}): void {\n if (!validateArgs({ name, type })) {\n throw new ArgsError(\"@cachemap/controller expected event data to include 'name' or 'type' props.\");\n }\n\n this.emit(constants.STOP_BACKUP, { name, type });\n }\n\n public stopReapers({ name, type }: EventData = {}): void {\n if (!validateArgs({ name, type })) {\n throw new ArgsError(\"@cachemap/controller expected event data to include 'name' or 'type' props.\");\n }\n\n this.emit(constants.STOP_REAPER, { name, type });\n }\n}\n\nexport const instance = new Controller();\n"],"names":["validateArgs","name","type","length","Controller","EventEmitter","clearCaches","ArgsError","this","emit","constants","CLEAR","startBackups","START_BACKUP","startReapers","START_REAPER","stopBackups","STOP_BACKUP","stopReapers","STOP_REAPER","instance"],"mappings":"yEAEO,MAAMA,EAAe,EAAGC,OAAMC,UAClB,iBAATD,GAAqBA,EAAKE,OAAS,GAAuB,iBAATD,GAAqBA,EAAKC,OAAS,ECEvF,MAAMC,UAAmBC,EAAAA,aACvBC,WAAAA,EAAYL,KAAEA,EAAIC,KAAEA,GAAoB,CAAA,GAC7C,IAAKF,EAAa,CAAEC,OAAMC,SACxB,MAAM,IAAIK,EAAUA,UAAA,+EAGtBC,KAAKC,KAAKC,EAAAA,UAAUC,MAAO,CAAEV,OAAMC,QACrC,CAEOU,YAAAA,EAAaX,KAAEA,EAAIC,KAAEA,GAAoB,CAAA,GAC9C,IAAKF,EAAa,CAAEC,OAAMC,SACxB,MAAM,IAAIK,EAAUA,UAAA,+EAGtBC,KAAKC,KAAKC,EAAAA,UAAUG,aAAc,CAAEZ,OAAMC,QAC5C,CAEOY,YAAAA,EAAab,KAAEA,EAAIC,KAAEA,GAAoB,CAAA,GAC9C,IAAKF,EAAa,CAAEC,OAAMC,SACxB,MAAM,IAAIK,EAAUA,UAAA,+EAGtBC,KAAKC,KAAKC,EAAAA,UAAUK,aAAc,CAAEd,OAAMC,QAC5C,CAEOc,WAAAA,EAAYf,KAAEA,EAAIC,KAAEA,GAAoB,CAAA,GAC7C,IAAKF,EAAa,CAAEC,OAAMC,SACxB,MAAM,IAAIK,EAAUA,UAAA,+EAGtBC,KAAKC,KAAKC,EAAAA,UAAUO,YAAa,CAAEhB,OAAMC,QAC3C,CAEOgB,WAAAA,EAAYjB,KAAEA,EAAIC,KAAEA,GAAoB,CAAA,GAC7C,IAAKF,EAAa,CAAEC,OAAMC,SACxB,MAAM,IAAIK,EAAUA,UAAA,+EAGtBC,KAAKC,KAAKC,EAAAA,UAAUS,YAAa,CAAElB,OAAMC,QAC3C,EAGK,MAAMkB,EAAW,IAAIhB"}