{"version":3,"file":"OpenBadgesTokenRecord.mjs","names":[],"sources":["../../src/repository/OpenBadgesTokenRecord.ts"],"sourcesContent":["import type { TagsBase } from '@credo-ts/core'\nimport { BaseRecord, utils } from '@credo-ts/core'\n\nexport type TokenType = 'access' | 'refresh'\n\nexport type DefaultOpenBadgesTokenTags = {\n  token: string\n  tokenType: TokenType\n  clientId?: string\n  subject?: string\n  pairId?: string\n  host?: string\n}\n\nexport type OpenBadgesTokenRecordProps = {\n  id?: string\n  createdAt?: Date\n  updatedAt?: Date\n  token: string\n  tokenType: TokenType\n  clientId: string\n  subject: string\n  scope?: string\n  expiresAt: Date\n  pairId: string\n  host?: string\n  tags?: TagsBase\n}\n\nexport class OpenBadgesTokenRecord\n  extends BaseRecord<DefaultOpenBadgesTokenTags, TagsBase>\n  implements OpenBadgesTokenRecordProps\n{\n  public token!: string\n  public tokenType!: TokenType\n  public clientId!: string\n  public subject!: string\n  public scope?: string\n  public expiresAt!: Date\n  public pairId!: string\n  public host?: string\n\n  public static readonly type = 'OpenBadgesTokenRecord'\n  public readonly type = OpenBadgesTokenRecord.type\n\n  public constructor(props: OpenBadgesTokenRecordProps) {\n    super()\n    this.id = props.id ?? utils.uuid()\n    this.createdAt = props.createdAt ?? new Date()\n    this.updatedAt = props.updatedAt ?? new Date()\n    this.token = props.token\n    this.tokenType = props.tokenType\n    this.clientId = props.clientId\n    this.subject = props.subject\n    this.scope = props.scope\n    this.expiresAt = props.expiresAt\n    this.pairId = props.pairId\n    this.host = props.host\n    this._tags = props.tags ?? {}\n  }\n\n  public getTags(): DefaultOpenBadgesTokenTags {\n    return {\n      ...this._tags,\n      token: this.token,\n      tokenType: this.tokenType,\n      clientId: this.clientId,\n      subject: this.subject,\n      pairId: this.pairId,\n      host: this.host,\n    }\n  }\n}\n"],"mappings":";;;AA6BA,IAAa,wBAAb,MAAa,8BACH,WAEV;CAaE,AAAO,YAAY,OAAmC;AACpD,SAAO;OAHO,OAAO,sBAAsB;AAI3C,OAAK,KAAK,MAAM,MAAM,MAAM,MAAM;AAClC,OAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,OAAK,YAAY,MAAM,6BAAa,IAAI,MAAM;AAC9C,OAAK,QAAQ,MAAM;AACnB,OAAK,YAAY,MAAM;AACvB,OAAK,WAAW,MAAM;AACtB,OAAK,UAAU,MAAM;AACrB,OAAK,QAAQ,MAAM;AACnB,OAAK,YAAY,MAAM;AACvB,OAAK,SAAS,MAAM;AACpB,OAAK,OAAO,MAAM;AAClB,OAAK,QAAQ,MAAM,QAAQ,EAAE;;CAG/B,AAAO,UAAsC;AAC3C,SAAO;GACL,GAAG,KAAK;GACR,OAAO,KAAK;GACZ,WAAW,KAAK;GAChB,UAAU,KAAK;GACf,SAAS,KAAK;GACd,QAAQ,KAAK;GACb,MAAM,KAAK;GACZ;;;sBA5BoB,OAAO"}