UNPKG

@m-ld/gateway

Version:

m-ld gateway for services

25 lines 1.96 kB
import { AccountOwnedId } from '../lib/index.js'; import { Optional, propertyValue } from '@m-ld/m-ld'; /** * Details of a subdomain registered in the Gateway domain */ export class Subdomain { static fromJSON(src) { const { account, name } = AccountOwnedId.fromReference(src); const useSignatures = propertyValue(src, 'useSignatures', Optional, Boolean); return new Subdomain({ account, name, useSignatures }); } constructor(spec) { this.account = spec.account; this.name = spec.name; this.useSignatures = spec.useSignatures ?? false; } toJSON() { return { '@id': new AccountOwnedId(this).toRelativeIri(), '@type': 'Subdomain', useSignatures: this.useSignatures }; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3ViZG9tYWluLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2RhdGEvU3ViZG9tYWluLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsUUFBUSxFQUFFLGFBQWEsRUFBVyxNQUFNLFlBQVksQ0FBQztBQVE5RDs7R0FFRztBQUNILE1BQU0sT0FBTyxTQUFTO0lBQ3BCLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBUTtRQUN0QixNQUFNLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxHQUFHLGNBQWMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUQsTUFBTSxhQUFhLEdBQUcsYUFBYSxDQUFDLEdBQUcsRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzdFLE9BQU8sSUFBSSxTQUFTLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7SUFDekQsQ0FBQztJQU1ELFlBQVksSUFBbUI7UUFDN0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztRQUN0QixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxhQUFhLElBQUksS0FBSyxDQUFDO0lBQ25ELENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTztZQUNMLEtBQUssRUFBRSxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxhQUFhLEVBQUU7WUFDL0MsT0FBTyxFQUFFLFdBQVc7WUFDcEIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhO1NBQ2xDLENBQUM7SUFDSixDQUFDO0NBQ0YifQ==