@sphereon/ssi-sdk.event-logger 0.33.1-feature.vcdm2.4 → 0.33.1-feature.vcdm2.tsup.19

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;AAC/C,OAAO,EAAE,MAAM,EAAE,CAAA;AACjB,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAA;AAC9F,cAAc,sBAAsB,CAAA"}
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.1-feature.vcdm2.4+9f634bdb",
3
+ "version": "0.33.1-feature.vcdm2.tsup.19+db508b44",
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.1-feature.vcdm2.4+9f634bdb",
19
- "@sphereon/ssi-types": "0.33.1-feature.vcdm2.4+9f634bdb",
29
+ "@sphereon/ssi-sdk.data-store": "^0.33.1-feature.vcdm2.tsup.19+db508b44",
30
+ "@sphereon/ssi-types": "^0.33.1-feature.vcdm2.tsup.19+db508b44",
20
31
  "uuid": "^9.0.1"
21
32
  },
22
33
  "devDependencies": {
23
- "@sphereon/ssi-sdk.agent-config": "0.33.1-feature.vcdm2.4+9f634bdb",
24
- "@sphereon/ssi-sdk.core": "0.33.1-feature.vcdm2.4+9f634bdb",
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.19+db508b44",
35
+ "@sphereon/ssi-sdk.core": "^0.33.1-feature.vcdm2.tsup.19+db508b44",
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": "9f634bdb714061141e277508c124b08d626f6036"
65
+ "gitHead": "db508b447fb1f769700f1d5e7cd8196653f4f794"
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,122 +0,0 @@
1
- import { Loggers, LoggingEventType, LogLevel, LogMethod } from '@sphereon/ssi-types';
2
- import { v4 as uuidv4 } from 'uuid';
3
- import { schema } from '../index';
4
- /**
5
- * {@inheritDoc IEventLogger}
6
- */
7
- // Exposing the methods here for any REST implementation
8
- export const eventLoggerAuditMethods = [
9
- 'loggerGetAuditEvents',
10
- 'loggerLogAuditEvent',
11
- 'loggerLogGeneralEvent',
12
- 'loggerLogActivityEvent',
13
- 'loggerGetActivityEvents',
14
- ];
15
- export const eventLoggerMethods = [...eventLoggerAuditMethods];
16
- export class EventLogger {
17
- schema = schema.IEventLogger;
18
- eventTypes = [];
19
- store;
20
- simpleLoggers;
21
- methods = {
22
- loggerGetAuditEvents: this.loggerGetAuditEvents.bind(this),
23
- loggerLogAuditEvent: this.loggerLogAuditEvent.bind(this),
24
- loggerLogGeneralEvent: this.loggerLogGeneralEvent.bind(this),
25
- loggerLogActivityEvent: this.loggerLogActivityEvent.bind(this),
26
- loggerGetActivityEvents: this.loggerGetActivityEvents.bind(this),
27
- };
28
- constructor(options) {
29
- const { store, eventTypes } = options;
30
- const generalOpts = options.general ?? { debugPkg: true };
31
- this.store = store;
32
- this.eventTypes = eventTypes;
33
- const methods = [];
34
- if (generalOpts.debugPkg) {
35
- methods.push(LogMethod.DEBUG_PKG);
36
- }
37
- if (generalOpts.console) {
38
- methods.push(LogMethod.CONSOLE);
39
- }
40
- if (generalOpts.events) {
41
- methods.push(LogMethod.EVENT);
42
- }
43
- this.simpleLoggers = new Loggers({
44
- methods,
45
- eventName: generalOpts.eventName,
46
- defaultLogLevel: generalOpts.defaultLogLevel,
47
- });
48
- }
49
- async onEvent(event, context) {
50
- switch (event.type) {
51
- case LoggingEventType.AUDIT:
52
- // Calling the context of the agent to make sure the REST client is called when configured
53
- await context.agent.loggerLogAuditEvent({ event: event.data });
54
- break;
55
- case LoggingEventType.GENERAL:
56
- // Calling the context of the agent to make sure the REST client is called when configured
57
- // TODO: We might also want to do this locally though, as these logs are not persisted typically
58
- await context.agent.loggerLogGeneralEvent({ event: event.data });
59
- break;
60
- case LoggingEventType.ACTIVITY:
61
- // Calling the context of the agent to make sure the REST client is called when configured
62
- await context.agent.loggerLogActivityEvent({ event: event.data });
63
- break;
64
- default:
65
- return Promise.reject(Error(`Event type ${event.type} not supported`));
66
- }
67
- }
68
- async loggerGetAuditEvents(args) {
69
- const { filter } = args ?? {};
70
- if (!this.store) {
71
- return Promise.reject(Error('No store available in options'));
72
- }
73
- return this.store.getAuditEvents({ filter });
74
- }
75
- async loggerGetActivityEvents(args) {
76
- const { filter } = args ?? {};
77
- if (!this.store) {
78
- return Promise.reject(Error('No store available in options'));
79
- }
80
- return this.store.getActivityEvents({ filter });
81
- }
82
- async loggerLogGeneralEvent(args) {
83
- const { event } = args;
84
- this.simpleLoggers.get(event.data.system).logl(event.data.level ?? LogLevel.INFO, event.data.data, event.data);
85
- return args.event;
86
- }
87
- async loggerLogAuditEvent(args) {
88
- const { event } = args;
89
- if (!this.store) {
90
- return Promise.reject(Error('No store available in options'));
91
- }
92
- return this.store.storeAuditEvent({
93
- event: {
94
- ...event,
95
- system: event.system,
96
- subSystemType: event.subSystemType,
97
- initiatorType: event.initiatorType,
98
- level: event.level ?? LogLevel.INFO,
99
- correlationId: event.correlationId ?? uuidv4(),
100
- timestamp: new Date(),
101
- },
102
- });
103
- }
104
- async loggerLogActivityEvent(args) {
105
- const { event } = args;
106
- if (!this.store) {
107
- return Promise.reject(Error('No store available in options'));
108
- }
109
- return this.store.storeActivityEvent({
110
- event: {
111
- ...event,
112
- system: event.system,
113
- subSystemType: event.subSystemType,
114
- initiatorType: event.initiatorType,
115
- level: event.level ?? LogLevel.INFO,
116
- correlationId: event.correlationId ?? uuidv4(),
117
- timestamp: new Date(),
118
- },
119
- });
120
- }
121
- }
122
- //# 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":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=IEventLogger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IEventLogger.js","sourceRoot":"","sources":["../../src/types/IEventLogger.ts"],"names":[],"mappings":""}