@sphereon/ssi-sdk.event-logger 0.33.0 → 0.33.1-feature.vcdm2.tsup.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA;;GAEG;AACH,MAAM,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAA;AACtC,wBAAM;AACf,mDAA8F;AAArF,0GAAA,WAAW,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AAAE,sHAAA,uBAAuB,OAAA;AACjE,uDAAoC"}
1
+ {"version":3,"sources":["../plugin.schema.json","../src/agent/EventLogger.ts","../src/index.ts"],"sourcesContent":["{\n \"IEventLogger\": {\n \"components\": {\n \"schemas\": {\n \"GetActivityEventsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"filter\": {\n \"$ref\": \"#/components/schemas/FindActivityLoggingEventArgs\"\n }\n }\n },\n \"FindActivityLoggingEventArgs\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PartialActivityLoggingEvent\"\n }\n },\n \"PartialActivityLoggingEvent\": {\n \"type\": \"object\",\n \"properties\": {\n \"level\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"correlationId\": {\n \"type\": \"string\"\n },\n \"timestamp\": {\n \"type\": \"object\",\n \"properties\": {},\n \"format\": \"date-time\"\n },\n \"diagnosticData\": {},\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"originalCredential\": {\n \"type\": \"string\"\n },\n \"credentialHash\": {\n \"type\": \"string\"\n },\n \"parentCredentialHash\": {\n \"type\": \"string\"\n },\n \"credentialType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"sharePurpose\": {\n \"type\": \"string\"\n },\n \"system\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"subSystemType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"actionType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"actionSubType\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"properties\": {}\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"initiatorType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"systemCorrelationIdType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"systemCorrelationId\": {\n \"type\": \"string\"\n },\n \"systemAlias\": {\n \"type\": \"string\"\n },\n \"partyCorrelationType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"partyCorrelationId\": {\n \"type\": \"string\"\n },\n \"partyAlias\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"data\": {}\n }\n },\n \"ActivityLoggingEvent\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n \"const\": \"activity\"\n },\n \"originalCredential\": {\n \"type\": \"string\"\n },\n \"credentialHash\": {\n \"type\": \"string\"\n },\n \"parentCredentialHash\": {\n \"type\": \"string\"\n },\n \"credentialType\": {\n \"$ref\": \"#/components/schemas/CredentialType\"\n },\n \"sharePurpose\": {\n \"type\": \"string\"\n },\n \"correlationId\": {\n \"type\": \"string\"\n },\n \"system\": {\n \"$ref\": \"#/components/schemas/System\"\n },\n \"subSystemType\": {\n \"$ref\": \"#/components/schemas/SubSystem\"\n },\n \"actionType\": {\n \"$ref\": \"#/components/schemas/ActionType\"\n },\n \"actionSubType\": {\n \"$ref\": \"#/components/schemas/ActionSubType\"\n },\n \"initiatorType\": {\n \"$ref\": \"#/components/schemas/InitiatorType\"\n },\n \"systemCorrelationIdType\": {\n \"$ref\": \"#/components/schemas/SystemCorrelationIdType\"\n },\n \"systemCorrelationId\": {\n \"type\": \"string\"\n },\n \"systemAlias\": {\n \"type\": \"string\"\n },\n \"partyCorrelationType\": {\n \"$ref\": \"#/components/schemas/PartyCorrelationType\"\n },\n \"partyCorrelationId\": {\n \"type\": \"string\"\n },\n \"partyAlias\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"data\": {},\n \"level\": {\n \"$ref\": \"#/components/schemas/LogLevel\"\n },\n \"timestamp\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"diagnosticData\": {}\n },\n \"required\": [\n \"actionSubType\",\n \"actionType\",\n \"correlationId\",\n \"description\",\n \"id\",\n \"initiatorType\",\n \"level\",\n \"subSystemType\",\n \"system\",\n \"timestamp\",\n \"type\"\n ]\n },\n \"CredentialType\": {\n \"type\": \"string\",\n \"enum\": [\n \"JSON_LD\",\n \"JWT\",\n \"SD_JWT\",\n \"MSO_MDOC\"\n ]\n },\n \"System\": {\n \"type\": \"string\",\n \"enum\": [\n \"general\",\n \"kms\",\n \"identity\",\n \"oid4vci\",\n \"oid4vp\",\n \"siopv2\",\n \"PE\",\n \"credentials\",\n \"web3\",\n \"profile\",\n \"contact\"\n ]\n },\n \"SubSystem\": {\n \"type\": \"string\",\n \"enum\": [\n \"key\",\n \"did_provider\",\n \"did_resolver\",\n \"oid4vp_op\",\n \"oid4vci_client\",\n \"siopv2_op\",\n \"contact_manager\",\n \"vc_issuer\",\n \"vc_verifier\",\n \"vc_persistence\",\n \"transport\",\n \"profile\",\n \"api\"\n ]\n },\n \"ActionType\": {\n \"type\": \"string\",\n \"enum\": [\n \"create\",\n \"read\",\n \"update\",\n \"delete\",\n \"execute\"\n ]\n },\n \"ActionSubType\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/DefaultActionSubType\"\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"DefaultActionSubType\": {\n \"type\": \"string\",\n \"enum\": [\n \"Key generation\",\n \"Key import\",\n \"Key persistence\",\n \"Key removal\",\n \"DID creation\",\n \"DID resolution\",\n \"DID service update\",\n \"VC issue\",\n \"VC verify\",\n \"VC share\",\n \"VC delete\",\n \"VC issue decline\",\n \"VC share decline\"\n ]\n },\n \"InitiatorType\": {\n \"type\": \"string\",\n \"enum\": [\n \"user\",\n \"system\",\n \"external\"\n ]\n },\n \"SystemCorrelationIdType\": {\n \"type\": \"string\",\n \"enum\": [\n \"did\",\n \"url\",\n \"email\",\n \"hostname\",\n \"phone\",\n \"user\"\n ]\n },\n \"PartyCorrelationType\": {\n \"type\": \"string\",\n \"enum\": [\n \"did\",\n \"url\",\n \"email\",\n \"hostname\",\n \"phone\"\n ]\n },\n \"LogLevel\": {\n \"type\": \"number\",\n \"enum\": [\n 0,\n 1,\n 2,\n 3,\n 4\n ]\n },\n \"GetAuditEventsArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"filter\": {\n \"$ref\": \"#/components/schemas/FindAuditLoggingEventArgs\"\n }\n }\n },\n \"FindAuditLoggingEventArgs\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/PartialAuditLoggingEvent\"\n }\n },\n \"PartialAuditLoggingEvent\": {\n \"type\": \"object\",\n \"properties\": {\n \"level\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"correlationId\": {\n \"type\": \"string\"\n },\n \"timestamp\": {\n \"type\": \"object\",\n \"properties\": {},\n \"format\": \"date-time\"\n },\n \"diagnosticData\": {},\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"system\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"subSystemType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"actionType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"actionSubType\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"properties\": {}\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"initiatorType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"systemCorrelationIdType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"systemCorrelationId\": {\n \"type\": \"string\"\n },\n \"systemAlias\": {\n \"type\": \"string\"\n },\n \"partyCorrelationType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"partyCorrelationId\": {\n \"type\": \"string\"\n },\n \"partyAlias\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"data\": {}\n }\n },\n \"AuditLoggingEvent\": {\n \"type\": \"object\",\n \"properties\": {\n \"id\": {\n \"type\": \"string\"\n },\n \"type\": {\n \"type\": \"string\",\n \"const\": \"audit\"\n },\n \"correlationId\": {\n \"type\": \"string\"\n },\n \"system\": {\n \"$ref\": \"#/components/schemas/System\"\n },\n \"subSystemType\": {\n \"$ref\": \"#/components/schemas/SubSystem\"\n },\n \"actionType\": {\n \"$ref\": \"#/components/schemas/ActionType\"\n },\n \"actionSubType\": {\n \"$ref\": \"#/components/schemas/ActionSubType\"\n },\n \"initiatorType\": {\n \"$ref\": \"#/components/schemas/InitiatorType\"\n },\n \"systemCorrelationIdType\": {\n \"$ref\": \"#/components/schemas/SystemCorrelationIdType\"\n },\n \"systemCorrelationId\": {\n \"type\": \"string\"\n },\n \"systemAlias\": {\n \"type\": \"string\"\n },\n \"partyCorrelationType\": {\n \"$ref\": \"#/components/schemas/PartyCorrelationType\"\n },\n \"partyCorrelationId\": {\n \"type\": \"string\"\n },\n \"partyAlias\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"data\": {},\n \"level\": {\n \"$ref\": \"#/components/schemas/LogLevel\"\n },\n \"timestamp\": {\n \"type\": \"string\",\n \"format\": \"date-time\"\n },\n \"diagnosticData\": {}\n },\n \"required\": [\n \"actionSubType\",\n \"actionType\",\n \"correlationId\",\n \"description\",\n \"id\",\n \"initiatorType\",\n \"level\",\n \"subSystemType\",\n \"system\",\n \"timestamp\",\n \"type\"\n ]\n },\n \"LogEventArgs\": {\n \"type\": \"object\",\n \"properties\": {\n \"event\": {\n \"$ref\": \"#/components/schemas/LogEventType\"\n }\n },\n \"required\": [\n \"event\"\n ]\n },\n \"LogEventType\": {\n \"anyOf\": [\n {\n \"$ref\": \"#/components/schemas/NonPersistedAuditLoggingEvent\"\n },\n {\n \"$ref\": \"#/components/schemas/NonPersistedActivityLoggingEvent\"\n }\n ]\n },\n \"NonPersistedAuditLoggingEvent\": {\n \"type\": \"object\",\n \"properties\": {\n \"system\": {\n \"$ref\": \"#/components/schemas/System\"\n },\n \"subSystemType\": {\n \"$ref\": \"#/components/schemas/SubSystem\"\n },\n \"initiatorType\": {\n \"$ref\": \"#/components/schemas/InitiatorType\"\n },\n \"diagnosticData\": {},\n \"actionType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"actionSubType\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"properties\": {}\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"systemCorrelationIdType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"systemCorrelationId\": {\n \"type\": \"string\"\n },\n \"systemAlias\": {\n \"type\": \"string\"\n },\n \"partyCorrelationType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"partyCorrelationId\": {\n \"type\": \"string\"\n },\n \"partyAlias\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"data\": {},\n \"level\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"correlationId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"actionSubType\",\n \"actionType\",\n \"description\",\n \"initiatorType\",\n \"subSystemType\",\n \"system\"\n ]\n },\n \"NonPersistedActivityLoggingEvent\": {\n \"type\": \"object\",\n \"properties\": {\n \"system\": {\n \"$ref\": \"#/components/schemas/System\"\n },\n \"subSystemType\": {\n \"$ref\": \"#/components/schemas/SubSystem\"\n },\n \"initiatorType\": {\n \"$ref\": \"#/components/schemas/InitiatorType\"\n },\n \"originalCredential\": {\n \"type\": \"string\"\n },\n \"credentialHash\": {\n \"type\": \"string\"\n },\n \"parentCredentialHash\": {\n \"type\": \"string\"\n },\n \"credentialType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"sharePurpose\": {\n \"type\": \"string\"\n },\n \"data\": {},\n \"diagnosticData\": {},\n \"actionType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"actionSubType\": {\n \"anyOf\": [\n {\n \"type\": \"object\",\n \"properties\": {}\n },\n {\n \"type\": \"string\"\n }\n ]\n },\n \"systemCorrelationIdType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"systemCorrelationId\": {\n \"type\": \"string\"\n },\n \"systemAlias\": {\n \"type\": \"string\"\n },\n \"partyCorrelationType\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"partyCorrelationId\": {\n \"type\": \"string\"\n },\n \"partyAlias\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"level\": {\n \"type\": \"object\",\n \"properties\": {}\n },\n \"correlationId\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"actionSubType\",\n \"actionType\",\n \"description\",\n \"initiatorType\",\n \"subSystemType\",\n \"system\"\n ]\n }\n },\n \"methods\": {\n \"loggerGetActivityEvents\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetActivityEventsArgs\"\n },\n \"returnType\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/ActivityLoggingEvent\"\n }\n }\n },\n \"loggerGetAuditEvents\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/GetAuditEventsArgs\"\n },\n \"returnType\": {\n \"type\": \"array\",\n \"items\": {\n \"$ref\": \"#/components/schemas/AuditLoggingEvent\"\n }\n }\n },\n \"loggerLogActivityEvent\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/LogEventArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/ActivityLoggingEvent\"\n }\n },\n \"loggerLogAuditEvent\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/LogEventArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/AuditLoggingEvent\"\n }\n },\n \"loggerLogGeneralEvent\": {\n \"description\": \"\",\n \"arguments\": {\n \"$ref\": \"#/components/schemas/LogEventArgs\"\n },\n \"returnType\": {\n \"$ref\": \"#/components/schemas/LogEventType\"\n }\n }\n }\n }\n }\n}","import { AbstractEventLoggerStore } from '@sphereon/ssi-sdk.data-store'\nimport { Loggers, LoggingEventType, LogLevel, LogMethod } from '@sphereon/ssi-types'\nimport { ActivityLoggingEvent, AuditLoggingEvent } from '@sphereon/ssi-sdk.core'\nimport { IAgentPlugin } from '@veramo/core'\nimport { v4 as uuidv4 } from 'uuid'\nimport { schema } from '../index'\nimport {\n EventLoggerOptions,\n GetActivityEventsArgs,\n GetAuditEventsArgs,\n IEventLogger,\n LogActivityEventArgs,\n LogAuditEventArgs,\n LogEventArgs,\n LoggingEvent,\n LogEventType,\n RequiredContext,\n} from '../types/IEventLogger'\n\n/**\n * {@inheritDoc IEventLogger}\n */\n\n// Exposing the methods here for any REST implementation\nexport const eventLoggerAuditMethods: Array<string> = [\n 'loggerGetAuditEvents',\n 'loggerLogAuditEvent',\n 'loggerLogGeneralEvent',\n 'loggerLogActivityEvent',\n 'loggerGetActivityEvents',\n]\nexport const eventLoggerMethods: Array<string> = [...eventLoggerAuditMethods]\n\nexport class EventLogger implements IAgentPlugin {\n readonly schema = schema.IEventLogger\n readonly eventTypes: Array<LoggingEventType> = []\n private readonly store?: AbstractEventLoggerStore\n readonly simpleLoggers: Loggers\n\n readonly methods: IEventLogger = {\n loggerGetAuditEvents: this.loggerGetAuditEvents.bind(this),\n loggerLogAuditEvent: this.loggerLogAuditEvent.bind(this),\n loggerLogGeneralEvent: this.loggerLogGeneralEvent.bind(this),\n loggerLogActivityEvent: this.loggerLogActivityEvent.bind(this),\n loggerGetActivityEvents: this.loggerGetActivityEvents.bind(this),\n }\n\n constructor(options: EventLoggerOptions) {\n const { store, eventTypes } = options\n const generalOpts = options.general ?? { debugPkg: true }\n this.store = store\n this.eventTypes = eventTypes\n\n const methods: Array<LogMethod> = []\n if (generalOpts.debugPkg) {\n methods.push(LogMethod.DEBUG_PKG)\n }\n if (generalOpts.console) {\n methods.push(LogMethod.CONSOLE)\n }\n if (generalOpts.events) {\n methods.push(LogMethod.EVENT)\n }\n this.simpleLoggers = new Loggers({\n methods,\n eventName: generalOpts.eventName,\n defaultLogLevel: generalOpts.defaultLogLevel,\n })\n }\n\n public async onEvent(event: LoggingEvent, context: RequiredContext): Promise<void> {\n switch (event.type) {\n case LoggingEventType.AUDIT:\n // Calling the context of the agent to make sure the REST client is called when configured\n await context.agent.loggerLogAuditEvent({ event: event.data })\n break\n case LoggingEventType.GENERAL:\n // Calling the context of the agent to make sure the REST client is called when configured\n // TODO: We might also want to do this locally though, as these logs are not persisted typically\n await context.agent.loggerLogGeneralEvent({ event: event.data })\n break\n case LoggingEventType.ACTIVITY:\n // Calling the context of the agent to make sure the REST client is called when configured\n await context.agent.loggerLogActivityEvent({ event: event.data })\n break\n default:\n return Promise.reject(Error(`Event type ${event.type} not supported`))\n }\n }\n\n private async loggerGetAuditEvents(args?: GetAuditEventsArgs): Promise<Array<AuditLoggingEvent>> {\n const { filter } = args ?? {}\n\n if (!this.store) {\n return Promise.reject(Error('No store available in options'))\n }\n\n return this.store.getAuditEvents({ filter })\n }\n\n private async loggerGetActivityEvents(args?: GetActivityEventsArgs): Promise<Array<ActivityLoggingEvent>> {\n const { filter } = args ?? {}\n\n if (!this.store) {\n return Promise.reject(Error('No store available in options'))\n }\n\n return this.store.getActivityEvents({ filter })\n }\n\n private async loggerLogGeneralEvent(args: LogEventArgs): Promise<LogEventType> {\n const { event } = args\n this.simpleLoggers.get(event.data.system).logl(event.data.level ?? LogLevel.INFO, event.data.data, event.data)\n\n return args.event\n }\n\n private async loggerLogAuditEvent(args: LogAuditEventArgs): Promise<AuditLoggingEvent> {\n const { event } = args\n\n if (!this.store) {\n return Promise.reject(Error('No store available in options'))\n }\n\n return this.store.storeAuditEvent({\n event: {\n ...event,\n system: event.system,\n subSystemType: event.subSystemType,\n initiatorType: event.initiatorType,\n level: event.level ?? LogLevel.INFO,\n correlationId: event.correlationId ?? uuidv4(),\n timestamp: new Date(),\n },\n })\n }\n\n private async loggerLogActivityEvent(args: LogActivityEventArgs): Promise<ActivityLoggingEvent> {\n const { event } = args\n\n if (!this.store) {\n return Promise.reject(Error('No store available in options'))\n }\n\n return this.store.storeActivityEvent({\n event: {\n ...event,\n system: event.system,\n subSystemType: event.subSystemType,\n initiatorType: event.initiatorType,\n level: event.level ?? LogLevel.INFO,\n correlationId: event.correlationId ?? uuidv4(),\n timestamp: new Date(),\n },\n })\n }\n}\n","/**\n * @public\n */\nconst schema = require('../plugin.schema.json')\nexport { schema }\nexport { EventLogger, eventLoggerMethods, eventLoggerAuditMethods } from './agent/EventLogger'\nexport * from './types/IEventLogger'\n"],"mappings":"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","names":["Loggers","LoggingEventType","LogLevel","LogMethod","v4","uuidv4","eventLoggerAuditMethods","eventLoggerMethods","EventLogger","schema","IEventLogger","eventTypes","store","simpleLoggers","methods","loggerGetAuditEvents","bind","loggerLogAuditEvent","loggerLogGeneralEvent","loggerLogActivityEvent","loggerGetActivityEvents","constructor","options","generalOpts","general","debugPkg","push","LogMethod","DEBUG_PKG","console","CONSOLE","events","EVENT","Loggers","eventName","defaultLogLevel","onEvent","event","context","type","LoggingEventType","AUDIT","agent","data","GENERAL","ACTIVITY","Promise","reject","Error","args","filter","getAuditEvents","getActivityEvents","get","system","logl","level","LogLevel","INFO","storeAuditEvent","subSystemType","initiatorType","correlationId","uuidv4","timestamp","Date","storeActivityEvent","schema","require"]}
package/package.json CHANGED
@@ -1,39 +1,48 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.event-logger",
3
- "version": "0.33.0",
3
+ "version": "0.33.1-feature.vcdm2.tsup.18+1fbb8be0",
4
4
  "source": "src/index.ts",
5
- "main": "dist/index.js",
6
- "types": "dist/index.d.ts",
5
+ "type": "module",
6
+ "main": "./dist/index.cjs",
7
+ "module": "./dist/index.js",
8
+ "types": "./dist/index.d.ts",
9
+ "exports": {
10
+ "import": {
11
+ "types": "./dist/index.d.ts",
12
+ "import": "./dist/index.js"
13
+ },
14
+ "require": {
15
+ "types": "./dist/index.d.cts",
16
+ "require": "./dist/index.cjs"
17
+ }
18
+ },
7
19
  "veramo": {
8
20
  "pluginInterfaces": {
9
21
  "IEventLogger": "./src/types/IEventLogger.ts"
10
22
  }
11
23
  },
12
24
  "scripts": {
13
- "build": "tsc",
14
- "build:clean": "tsc --build --clean && tsc --build",
25
+ "build": "tsup --config ../../tsup.config.ts --tsconfig ../../tsconfig.tsup.json",
15
26
  "generate-plugin-schema": "ts-node ../../packages/dev/bin/sphereon.js dev generate-plugin-schema"
16
27
  },
17
28
  "dependencies": {
18
- "@sphereon/ssi-sdk.data-store": "0.33.0",
19
- "@sphereon/ssi-types": "0.33.0",
29
+ "@sphereon/ssi-sdk.data-store": "^0.33.1-feature.vcdm2.tsup.18+1fbb8be0",
30
+ "@sphereon/ssi-types": "^0.33.1-feature.vcdm2.tsup.18+1fbb8be0",
20
31
  "uuid": "^9.0.1"
21
32
  },
22
33
  "devDependencies": {
23
- "@sphereon/ssi-sdk.agent-config": "0.33.0",
24
- "@sphereon/ssi-sdk.core": "0.33.0",
25
- "@sphereon/ssi-sdk.data-store": "workspace:*",
26
- "@types/jest": "^27.5.2",
34
+ "@sphereon/ssi-sdk.agent-config": "^0.33.1-feature.vcdm2.tsup.18+1fbb8be0",
35
+ "@sphereon/ssi-sdk.core": "^0.33.1-feature.vcdm2.tsup.18+1fbb8be0",
36
+ "@sphereon/ssi-sdk.data-store": "workspace:^",
27
37
  "@types/uuid": "^9.0.8",
28
38
  "@veramo/remote-client": "4.2.0",
29
39
  "@veramo/remote-server": "4.2.0",
30
- "jest": "^27.5.1",
31
- "typeorm": "^0.3.21",
32
- "typescript": "^5.5.3"
40
+ "typeorm": "^0.3.22",
41
+ "typescript": "5.8.3"
33
42
  },
34
43
  "files": [
35
- "dist/**/*",
36
- "src/**/*",
44
+ "dist",
45
+ "src",
37
46
  "README.md",
38
47
  "plugin.schema.json",
39
48
  "LICENSE"
@@ -53,6 +62,5 @@
53
62
  "Logger",
54
63
  "Audit"
55
64
  ],
56
- "nx": {},
57
- "gitHead": "c575bdd6642bda761881f0152e0a70ddc82d7f61"
65
+ "gitHead": "1fbb8be0256ec8dbc1b52d860b7bfd09d12f0d00"
58
66
  }
@@ -1,23 +0,0 @@
1
- import { Loggers, LoggingEventType } from '@sphereon/ssi-types';
2
- import { IAgentPlugin } from '@veramo/core';
3
- import { EventLoggerOptions, IEventLogger, LoggingEvent, RequiredContext } from '../types/IEventLogger';
4
- /**
5
- * {@inheritDoc IEventLogger}
6
- */
7
- export declare const eventLoggerAuditMethods: Array<string>;
8
- export declare const eventLoggerMethods: Array<string>;
9
- export declare class EventLogger implements IAgentPlugin {
10
- readonly schema: any;
11
- readonly eventTypes: Array<LoggingEventType>;
12
- private readonly store?;
13
- readonly simpleLoggers: Loggers;
14
- readonly methods: IEventLogger;
15
- constructor(options: EventLoggerOptions);
16
- onEvent(event: LoggingEvent, context: RequiredContext): Promise<void>;
17
- private loggerGetAuditEvents;
18
- private loggerGetActivityEvents;
19
- private loggerLogGeneralEvent;
20
- private loggerLogAuditEvent;
21
- private loggerLogActivityEvent;
22
- }
23
- //# sourceMappingURL=EventLogger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventLogger.d.ts","sourceRoot":"","sources":["../../src/agent/EventLogger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAuB,MAAM,qBAAqB,CAAA;AAEpF,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAG3C,OAAO,EACL,kBAAkB,EAGlB,YAAY,EAIZ,YAAY,EAEZ,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAE9B;;GAEG;AAGH,eAAO,MAAM,uBAAuB,EAAE,KAAK,CAAC,MAAM,CAMjD,CAAA;AACD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,MAAM,CAAgC,CAAA;AAE7E,qBAAa,WAAY,YAAW,YAAY;IAC9C,QAAQ,CAAC,MAAM,MAAsB;IACrC,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAK;IACjD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAA0B;IACjD,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAA;IAE/B,QAAQ,CAAC,OAAO,EAAE,YAAY,CAM7B;gBAEW,OAAO,EAAE,kBAAkB;IAuB1B,OAAO,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YAoBpE,oBAAoB;YAUpB,uBAAuB;YAUvB,qBAAqB;YAOrB,mBAAmB;YAoBnB,sBAAsB;CAmBrC"}
@@ -1,133 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.EventLogger = exports.eventLoggerMethods = exports.eventLoggerAuditMethods = void 0;
13
- const ssi_types_1 = require("@sphereon/ssi-types");
14
- const uuid_1 = require("uuid");
15
- const index_1 = require("../index");
16
- /**
17
- * {@inheritDoc IEventLogger}
18
- */
19
- // Exposing the methods here for any REST implementation
20
- exports.eventLoggerAuditMethods = [
21
- 'loggerGetAuditEvents',
22
- 'loggerLogAuditEvent',
23
- 'loggerLogGeneralEvent',
24
- 'loggerLogActivityEvent',
25
- 'loggerGetActivityEvents',
26
- ];
27
- exports.eventLoggerMethods = [...exports.eventLoggerAuditMethods];
28
- class EventLogger {
29
- constructor(options) {
30
- var _a;
31
- this.schema = index_1.schema.IEventLogger;
32
- this.eventTypes = [];
33
- this.methods = {
34
- loggerGetAuditEvents: this.loggerGetAuditEvents.bind(this),
35
- loggerLogAuditEvent: this.loggerLogAuditEvent.bind(this),
36
- loggerLogGeneralEvent: this.loggerLogGeneralEvent.bind(this),
37
- loggerLogActivityEvent: this.loggerLogActivityEvent.bind(this),
38
- loggerGetActivityEvents: this.loggerGetActivityEvents.bind(this),
39
- };
40
- const { store, eventTypes } = options;
41
- const generalOpts = (_a = options.general) !== null && _a !== void 0 ? _a : { debugPkg: true };
42
- this.store = store;
43
- this.eventTypes = eventTypes;
44
- const methods = [];
45
- if (generalOpts.debugPkg) {
46
- methods.push(ssi_types_1.LogMethod.DEBUG_PKG);
47
- }
48
- if (generalOpts.console) {
49
- methods.push(ssi_types_1.LogMethod.CONSOLE);
50
- }
51
- if (generalOpts.events) {
52
- methods.push(ssi_types_1.LogMethod.EVENT);
53
- }
54
- this.simpleLoggers = new ssi_types_1.Loggers({
55
- methods,
56
- eventName: generalOpts.eventName,
57
- defaultLogLevel: generalOpts.defaultLogLevel,
58
- });
59
- }
60
- onEvent(event, context) {
61
- return __awaiter(this, void 0, void 0, function* () {
62
- switch (event.type) {
63
- case ssi_types_1.LoggingEventType.AUDIT:
64
- // Calling the context of the agent to make sure the REST client is called when configured
65
- yield context.agent.loggerLogAuditEvent({ event: event.data });
66
- break;
67
- case ssi_types_1.LoggingEventType.GENERAL:
68
- // Calling the context of the agent to make sure the REST client is called when configured
69
- // TODO: We might also want to do this locally though, as these logs are not persisted typically
70
- yield context.agent.loggerLogGeneralEvent({ event: event.data });
71
- break;
72
- case ssi_types_1.LoggingEventType.ACTIVITY:
73
- // Calling the context of the agent to make sure the REST client is called when configured
74
- yield context.agent.loggerLogActivityEvent({ event: event.data });
75
- break;
76
- default:
77
- return Promise.reject(Error(`Event type ${event.type} not supported`));
78
- }
79
- });
80
- }
81
- loggerGetAuditEvents(args) {
82
- return __awaiter(this, void 0, void 0, function* () {
83
- const { filter } = args !== null && args !== void 0 ? args : {};
84
- if (!this.store) {
85
- return Promise.reject(Error('No store available in options'));
86
- }
87
- return this.store.getAuditEvents({ filter });
88
- });
89
- }
90
- loggerGetActivityEvents(args) {
91
- return __awaiter(this, void 0, void 0, function* () {
92
- const { filter } = args !== null && args !== void 0 ? args : {};
93
- if (!this.store) {
94
- return Promise.reject(Error('No store available in options'));
95
- }
96
- return this.store.getActivityEvents({ filter });
97
- });
98
- }
99
- loggerLogGeneralEvent(args) {
100
- return __awaiter(this, void 0, void 0, function* () {
101
- var _a;
102
- const { event } = args;
103
- this.simpleLoggers.get(event.data.system).logl((_a = event.data.level) !== null && _a !== void 0 ? _a : ssi_types_1.LogLevel.INFO, event.data.data, event.data);
104
- return args.event;
105
- });
106
- }
107
- loggerLogAuditEvent(args) {
108
- return __awaiter(this, void 0, void 0, function* () {
109
- var _a, _b;
110
- const { event } = args;
111
- if (!this.store) {
112
- return Promise.reject(Error('No store available in options'));
113
- }
114
- return this.store.storeAuditEvent({
115
- event: Object.assign(Object.assign({}, event), { system: event.system, subSystemType: event.subSystemType, initiatorType: event.initiatorType, level: (_a = event.level) !== null && _a !== void 0 ? _a : ssi_types_1.LogLevel.INFO, correlationId: (_b = event.correlationId) !== null && _b !== void 0 ? _b : (0, uuid_1.v4)(), timestamp: new Date() }),
116
- });
117
- });
118
- }
119
- loggerLogActivityEvent(args) {
120
- return __awaiter(this, void 0, void 0, function* () {
121
- var _a, _b;
122
- const { event } = args;
123
- if (!this.store) {
124
- return Promise.reject(Error('No store available in options'));
125
- }
126
- return this.store.storeActivityEvent({
127
- event: Object.assign(Object.assign({}, event), { system: event.system, subSystemType: event.subSystemType, initiatorType: event.initiatorType, level: (_a = event.level) !== null && _a !== void 0 ? _a : ssi_types_1.LogLevel.INFO, correlationId: (_b = event.correlationId) !== null && _b !== void 0 ? _b : (0, uuid_1.v4)(), timestamp: new Date() }),
128
- });
129
- });
130
- }
131
- }
132
- exports.EventLogger = EventLogger;
133
- //# sourceMappingURL=EventLogger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EventLogger.js","sourceRoot":"","sources":["../../src/agent/EventLogger.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,QAAA,MAAM,MAAM,KAAmC,CAAA;AAC/C,OAAO,EAAE,MAAM,EAAE,CAAA;AACjB,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC9F,cAAc,sBAAsB,CAAA"}
@@ -1,115 +0,0 @@
1
- import { AbstractEventLoggerStore } from '@sphereon/ssi-sdk.data-store';
2
- import { ActivityLoggingEvent } from '@sphereon/ssi-sdk.core';
3
- import { AuditLoggingEvent } from '@sphereon/ssi-sdk.core';
4
- import { CredentialType } from '@sphereon/ssi-sdk.core';
5
- import { FindActivityLoggingEventArgs } from '@sphereon/ssi-sdk.data-store';
6
- import { FindAuditLoggingEventArgs } from '@sphereon/ssi-sdk.data-store';
7
- import { IAgentContext } from '@veramo/core';
8
- import { IAgentPlugin } from '@veramo/core';
9
- import { InitiatorType } from '@sphereon/ssi-types';
10
- import { IPluginMethodMap } from '@veramo/core';
11
- import { Loggers } from '@sphereon/ssi-types';
12
- import { LoggingEventType } from '@sphereon/ssi-types';
13
- import { LogLevel } from '@sphereon/ssi-types';
14
- import { NonPersistedActivityLoggingEvent as NonPersistedActivityLoggingEvent_2 } from '@sphereon/ssi-sdk.core';
15
- import { NonPersistedAuditLoggingEvent as NonPersistedAuditLoggingEvent_2 } from '@sphereon/ssi-sdk.core';
16
- import { SubSystem } from '@sphereon/ssi-types';
17
- import { System } from '@sphereon/ssi-types';
18
-
19
- export declare class EventLogger implements IAgentPlugin {
20
- readonly schema: any;
21
- readonly eventTypes: Array<LoggingEventType>;
22
- private readonly store?;
23
- readonly simpleLoggers: Loggers;
24
- readonly methods: IEventLogger;
25
- constructor(options: EventLoggerOptions);
26
- onEvent(event: LoggingEvent, context: RequiredContext): Promise<void>;
27
- private loggerGetAuditEvents;
28
- private loggerGetActivityEvents;
29
- private loggerLogGeneralEvent;
30
- private loggerLogAuditEvent;
31
- private loggerLogActivityEvent;
32
- }
33
-
34
- /**
35
- * {@inheritDoc IEventLogger}
36
- */
37
- export declare const eventLoggerAuditMethods: Array<string>;
38
-
39
- export declare interface EventLoggerGeneralLogOpts {
40
- debugPkg?: boolean;
41
- console?: boolean;
42
- events?: boolean;
43
- eventName?: string;
44
- defaultLogLevel?: LogLevel;
45
- }
46
-
47
- export declare const eventLoggerMethods: Array<string>;
48
-
49
- export declare type EventLoggerOptions = {
50
- store?: AbstractEventLoggerStore;
51
- eventTypes: Array<LoggingEventType>;
52
- general?: EventLoggerGeneralLogOpts;
53
- };
54
-
55
- export declare type GetActivityEventsArgs = {
56
- filter?: FindActivityLoggingEventArgs;
57
- };
58
-
59
- export declare type GetAuditEventsArgs = {
60
- filter?: FindAuditLoggingEventArgs;
61
- };
62
-
63
- export declare interface IEventLogger extends IPluginMethodMap {
64
- loggerGetAuditEvents(args?: GetAuditEventsArgs): Promise<Array<AuditLoggingEvent>>;
65
- loggerLogAuditEvent(args: LogEventArgs, context: RequiredContext): Promise<AuditLoggingEvent>;
66
- loggerLogGeneralEvent(args: LogEventArgs, context: RequiredContext): Promise<LogEventType>;
67
- loggerLogActivityEvent(args: LogEventArgs, context: RequiredContext): Promise<ActivityLoggingEvent>;
68
- loggerGetActivityEvents(args?: GetActivityEventsArgs): Promise<Array<ActivityLoggingEvent>>;
69
- }
70
-
71
- export declare type LogActivityEventArgs = {
72
- event: NonPersistedActivityLoggingEvent;
73
- };
74
-
75
- export declare type LogAuditEventArgs = {
76
- event: NonPersistedAuditLoggingEvent;
77
- };
78
-
79
- export declare type LogEventArgs = {
80
- event: LogEventType;
81
- };
82
-
83
- export declare type LogEventType = NonPersistedAuditLoggingEvent | NonPersistedActivityLoggingEvent;
84
-
85
- export declare type LoggingEvent = {
86
- type: LoggingEventType;
87
- data: LogEventType;
88
- };
89
-
90
- export declare type NonPersistedActivityLoggingEvent = Omit<NonPersistedActivityLoggingEvent_2, 'system' | 'subSystemType' | 'initiatorType'> & {
91
- system: System;
92
- subSystemType: SubSystem;
93
- initiatorType: InitiatorType;
94
- originalCredential?: string;
95
- credentialHash?: string;
96
- parentCredentialHash?: string;
97
- credentialType?: CredentialType;
98
- sharePurpose?: string;
99
- data?: any;
100
- };
101
-
102
- export declare type NonPersistedAuditLoggingEvent = Omit<NonPersistedAuditLoggingEvent_2, 'system' | 'subSystemType' | 'initiatorType'> & {
103
- system: System;
104
- subSystemType: SubSystem;
105
- initiatorType: InitiatorType;
106
- };
107
-
108
- export declare type RequiredContext = IAgentContext<IEventLogger>;
109
-
110
- /**
111
- * @public
112
- */
113
- export declare const schema: any;
114
-
115
- export { }
@@ -1,11 +0,0 @@
1
- // This file is read by tools that parse documentation comments conforming to the TSDoc standard.
2
- // It should be published with your NPM package. It should not be tracked by Git.
3
- {
4
- "tsdocVersion": "0.12",
5
- "toolPackages": [
6
- {
7
- "packageName": "@microsoft/api-extractor",
8
- "packageVersion": "7.52.1"
9
- }
10
- ]
11
- }
@@ -1,61 +0,0 @@
1
- import { InitiatorType, LoggingEventType, LogLevel, SubSystem, System } from '@sphereon/ssi-types';
2
- import { AuditLoggingEvent, CredentialType, NonPersistedAuditLoggingEvent as NPAuditLoggingEvent, NonPersistedActivityLoggingEvent as NPActivityLoggingEvent, ActivityLoggingEvent } from '@sphereon/ssi-sdk.core';
3
- import { AbstractEventLoggerStore, FindActivityLoggingEventArgs, FindAuditLoggingEventArgs } from '@sphereon/ssi-sdk.data-store';
4
- import { IAgentContext, IPluginMethodMap } from '@veramo/core';
5
- export interface IEventLogger extends IPluginMethodMap {
6
- loggerGetAuditEvents(args?: GetAuditEventsArgs): Promise<Array<AuditLoggingEvent>>;
7
- loggerLogAuditEvent(args: LogEventArgs, context: RequiredContext): Promise<AuditLoggingEvent>;
8
- loggerLogGeneralEvent(args: LogEventArgs, context: RequiredContext): Promise<LogEventType>;
9
- loggerLogActivityEvent(args: LogEventArgs, context: RequiredContext): Promise<ActivityLoggingEvent>;
10
- loggerGetActivityEvents(args?: GetActivityEventsArgs): Promise<Array<ActivityLoggingEvent>>;
11
- }
12
- export interface EventLoggerGeneralLogOpts {
13
- debugPkg?: boolean;
14
- console?: boolean;
15
- events?: boolean;
16
- eventName?: string;
17
- defaultLogLevel?: LogLevel;
18
- }
19
- export type EventLoggerOptions = {
20
- store?: AbstractEventLoggerStore;
21
- eventTypes: Array<LoggingEventType>;
22
- general?: EventLoggerGeneralLogOpts;
23
- };
24
- export type GetAuditEventsArgs = {
25
- filter?: FindAuditLoggingEventArgs;
26
- };
27
- export type GetActivityEventsArgs = {
28
- filter?: FindActivityLoggingEventArgs;
29
- };
30
- export type LogEventArgs = {
31
- event: LogEventType;
32
- };
33
- export type LogEventType = NonPersistedAuditLoggingEvent | NonPersistedActivityLoggingEvent;
34
- export type LogAuditEventArgs = {
35
- event: NonPersistedAuditLoggingEvent;
36
- };
37
- export type LogActivityEventArgs = {
38
- event: NonPersistedActivityLoggingEvent;
39
- };
40
- export type NonPersistedAuditLoggingEvent = Omit<NPAuditLoggingEvent, 'system' | 'subSystemType' | 'initiatorType'> & {
41
- system: System;
42
- subSystemType: SubSystem;
43
- initiatorType: InitiatorType;
44
- };
45
- export type NonPersistedActivityLoggingEvent = Omit<NPActivityLoggingEvent, 'system' | 'subSystemType' | 'initiatorType'> & {
46
- system: System;
47
- subSystemType: SubSystem;
48
- initiatorType: InitiatorType;
49
- originalCredential?: string;
50
- credentialHash?: string;
51
- parentCredentialHash?: string;
52
- credentialType?: CredentialType;
53
- sharePurpose?: string;
54
- data?: any;
55
- };
56
- export type LoggingEvent = {
57
- type: LoggingEventType;
58
- data: LogEventType;
59
- };
60
- export type RequiredContext = IAgentContext<IEventLogger>;
61
- //# sourceMappingURL=IEventLogger.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventLogger.d.ts","sourceRoot":"","sources":["../../src/types/IEventLogger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAClG,OAAO,EACL,iBAAiB,EACjB,cAAc,EACd,6BAA6B,IAAI,mBAAmB,EACpD,gCAAgC,IAAI,sBAAsB,EAC1D,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAA;AAChI,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAE9D,MAAM,WAAW,YAAa,SAAQ,gBAAgB;IACpD,oBAAoB,CAAC,IAAI,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAClF,mBAAmB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC7F,qBAAqB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,YAAY,CAAC,CAAA;IAC1F,sBAAsB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAA;IACnG,uBAAuB,CAAC,IAAI,CAAC,EAAE,qBAAqB,GAAG,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;CAC5F;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,QAAQ,CAAA;CAC3B;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,CAAC,EAAE,wBAAwB,CAAA;IAChC,UAAU,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAA;IACnC,OAAO,CAAC,EAAE,yBAAyB,CAAA;CACpC,CAAA;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,CAAC,EAAE,yBAAyB,CAAA;CACnC,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,CAAC,EAAE,4BAA4B,CAAA;CACtC,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,YAAY,CAAA;CACpB,CAAA;AAED,MAAM,MAAM,YAAY,GAAG,6BAA6B,GAAG,gCAAgC,CAAA;AAE3F,MAAM,MAAM,iBAAiB,GAAG;IAC9B,KAAK,EAAE,6BAA6B,CAAA;CACrC,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,gCAAgC,CAAA;CACxC,CAAA;AAED,MAAM,MAAM,6BAA6B,GAAG,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,eAAe,GAAG,eAAe,CAAC,GAAG;IACpH,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,SAAS,CAAA;IACxB,aAAa,EAAE,aAAa,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,gCAAgC,GAAG,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,eAAe,GAAG,eAAe,CAAC,GAAG;IAC1H,MAAM,EAAE,MAAM,CAAA;IACd,aAAa,EAAE,SAAS,CAAA;IACxB,aAAa,EAAE,aAAa,CAAA;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,IAAI,CAAC,EAAE,GAAG,CAAA;CACX,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,gBAAgB,CAAA;IACtB,IAAI,EAAE,YAAY,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG,aAAa,CAAC,YAAY,CAAC,CAAA"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=IEventLogger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventLogger.js","sourceRoot":"","sources":["../../src/types/IEventLogger.ts"],"names":[],"mappings":""}