{"version":3,"file":"ProposeHandler.mjs","names":[],"sources":["../../src/handlers/ProposeHandler.ts"],"sourcesContent":["/**\n * Handler for `vaults/1.0/propose`.\n *\n * Application code chooses whether to accept and respond with an\n * `OfferMessage` carrying a VaultDescriptor. This handler just\n * surfaces the event so app logic can decide.\n */\n\nimport type { Logger } from '@credo-ts/core'\nimport type { DidCommMessageHandler, DidCommMessageHandlerInboundMessage } from '@credo-ts/didcomm'\n\nimport { EventEmitter } from '@credo-ts/core'\n\nimport { ProposeMessage } from '../messages'\nimport { VaultEventTypes } from '../VaultsEvents'\n\nexport class ProposeHandler implements DidCommMessageHandler {\n  private logger: Logger\n  private eventEmitter: EventEmitter\n  public supportedMessages = [ProposeMessage]\n\n  public constructor(logger: Logger, eventEmitter: EventEmitter) {\n    this.logger = logger\n    this.eventEmitter = eventEmitter\n  }\n\n  public async handle(messageContext: DidCommMessageHandlerInboundMessage<ProposeHandler>) {\n    const { agentContext, connection, message } = messageContext\n    this.logger.info('vaults.propose received', {\n      purpose: message.purpose,\n      participants: message.participants,\n      backendPrefs: message.backendPrefs,\n      connectionId: connection?.id,\n    })\n    this.eventEmitter.emit(agentContext, {\n      type: VaultEventTypes.ProposeReceived,\n      payload: {\n        purpose: message.purpose,\n        participants: message.participants,\n        constraints: message.constraints,\n        backendPrefs: message.backendPrefs,\n        indexSchema: message.indexSchema,\n        from: connection?.id,\n        threadId: message.threadId,\n      },\n    })\n    return undefined\n  }\n}\n"],"mappings":";;;;;;AAgBA,IAAa,iBAAb,MAA6D;CAK3D,AAAO,YAAY,QAAgB,cAA4B;OAFxD,oBAAoB,CAAC,eAAe;AAGzC,OAAK,SAAS;AACd,OAAK,eAAe;;CAGtB,MAAa,OAAO,gBAAqE;EACvF,MAAM,EAAE,cAAc,YAAY,YAAY;AAC9C,OAAK,OAAO,KAAK,2BAA2B;GAC1C,SAAS,QAAQ;GACjB,cAAc,QAAQ;GACtB,cAAc,QAAQ;GACtB,cAAc,YAAY;GAC3B,CAAC;AACF,OAAK,aAAa,KAAK,cAAc;GACnC,MAAM,gBAAgB;GACtB,SAAS;IACP,SAAS,QAAQ;IACjB,cAAc,QAAQ;IACtB,aAAa,QAAQ;IACrB,cAAc,QAAQ;IACtB,aAAa,QAAQ;IACrB,MAAM,YAAY;IAClB,UAAU,QAAQ;IACnB;GACF,CAAC"}