{"version":3,"file":"OpenBadgesKeyBindingRecord.mjs","names":[],"sources":["../../src/repository/OpenBadgesKeyBindingRecord.ts"],"sourcesContent":["import type { TagsBase } from '@credo-ts/core'\nimport { BaseRecord, utils } from '@credo-ts/core'\n\nexport type DefaultOpenBadgesKeyBindingTags = {\n  controller: string\n  vmId: string\n}\n\nexport type OpenBadgesKeyBindingRecordProps = {\n  id?: string\n  createdAt?: Date\n  updatedAt?: Date\n  controller: string\n  vmId: string\n  publicKeyMultibase: string\n  kmsKeyId?: string\n  algorithm?: string\n  tags?: TagsBase\n}\n\nexport class OpenBadgesKeyBindingRecord\n  extends BaseRecord<DefaultOpenBadgesKeyBindingTags, TagsBase>\n  implements OpenBadgesKeyBindingRecordProps\n{\n  public controller!: string\n  public vmId!: string\n  public publicKeyMultibase!: string\n  public kmsKeyId?: string\n  public algorithm?: string\n\n  public static readonly type = 'OpenBadgesKeyBindingRecord'\n  public readonly type = OpenBadgesKeyBindingRecord.type\n\n  public constructor(props?: OpenBadgesKeyBindingRecordProps) {\n    super()\n    if (props) {\n      // Use vmId as deterministic record id for simpler lookups and to avoid scans\n      this.id = props.id ?? props.vmId ?? utils.uuid()\n      this.createdAt = props.createdAt ?? new Date()\n      this.updatedAt = props.updatedAt ?? new Date()\n      this.controller = props.controller\n      this.vmId = props.vmId\n      this.publicKeyMultibase = props.publicKeyMultibase\n      this.kmsKeyId = props.kmsKeyId\n      this.algorithm = props.algorithm\n      this._tags = props.tags ?? {}\n    } else {\n      this.id = utils.uuid()\n      this.createdAt = new Date()\n      this.updatedAt = new Date()\n      this._tags = {}\n    }\n  }\n\n  public getTags(): DefaultOpenBadgesKeyBindingTags {\n    return { ...this._tags, controller: this.controller, vmId: this.vmId }\n  }\n}\n"],"mappings":";;;AAoBA,IAAa,6BAAb,MAAa,mCACH,WAEV;CAUE,AAAO,YAAY,OAAyC;AAC1D,SAAO;OAHO,OAAO,2BAA2B;AAIhD,MAAI,OAAO;AAET,QAAK,KAAK,MAAM,MAAM,MAAM,QAAQ,MAAM,MAAM;AAChD,QAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,QAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,QAAK,aAAa,MAAM;AACxB,QAAK,OAAO,MAAM;AAClB,QAAK,qBAAqB,MAAM;AAChC,QAAK,WAAW,MAAM;AACtB,QAAK,YAAY,MAAM;AACvB,QAAK,QAAQ,MAAM,QAAQ,EAAE;SACxB;AACL,QAAK,KAAK,MAAM,MAAM;AACtB,QAAK,4BAAY,IAAI,MAAM;AAC3B,QAAK,4BAAY,IAAI,MAAM;AAC3B,QAAK,QAAQ,EAAE;;;CAInB,AAAO,UAA2C;AAChD,SAAO;GAAE,GAAG,KAAK;GAAO,YAAY,KAAK;GAAY,MAAM,KAAK;GAAM;;;2BAzBjD,OAAO"}