{"version":3,"file":"PerformMessage.mjs","names":[],"sources":["../../src/messages/PerformMessage.ts"],"sourcesContent":["import { DidCommMessage, IsValidMessageType, parseMessageType } from '@credo-ts/didcomm'\nimport { IsOptional, IsString } from 'class-validator'\n\n/**\n * @internal\n */\nexport interface PerformMessageOptions {\n  id?: string\n  name: string\n  params?: Record<string, string>\n  threadId: string\n}\n\n/**\n * @internal\n */\nexport class PerformMessage extends DidCommMessage {\n  public constructor(options: PerformMessageOptions) {\n    super()\n\n    if (options) {\n      this.id = options.id ?? this.generateId()\n      this.name = options.name\n      this.params = options.params\n      this.setThread({\n        threadId: options.threadId,\n      })\n    }\n  }\n\n  @IsValidMessageType(PerformMessage.type)\n  public readonly type = PerformMessage.type.messageTypeUri\n  public static readonly type = parseMessageType('https://didcomm.org/action-menu/1.0/perform')\n\n  @IsString()\n  public name!: string\n\n  @IsString({ each: true })\n  @IsOptional()\n  public params?: Record<string, string>\n}\n"],"mappings":";;;;;;;;;;AAgBA,IAAa,iBAAb,MAAa,uBAAuB,eAAe;CACjD,AAAO,YAAY,SAAgC;AACjD,SAAO;OAaO,OAAO,eAAe,KAAK;AAXzC,MAAI,SAAS;AACX,QAAK,KAAK,QAAQ,MAAM,KAAK,YAAY;AACzC,QAAK,OAAO,QAAQ;AACpB,QAAK,SAAS,QAAQ;AACtB,QAAK,UAAU,EACb,UAAU,QAAQ,UACnB,CAAC;;;;eAMiB,OAAO,iBAAiB,8CAA8C;YAF5F,mBAAmB,eAAe,KAAK;YAIvC,UAAU;;CAGV,SAAS,EAAE,MAAM,MAAM,CAAC;CACxB,YAAY"}