UNPKG

reduct-js

Version:

ReductStore Client SDK for Javascript/NodeJS/Typescript

69 lines (68 loc) 1.54 kB
//#region src/messages/Token.ts /** * Token create request */ var TokenCreateRequest = class { constructor() { this.permissions = new TokenPermissions(); } static serialize(data) { return { permissions: TokenPermissions.serialize(data.permissions), expires_at: data.expiresAt !== void 0 ? new Date(data.expiresAt).toISOString() : void 0, ttl: data.ttl, ip_allowlist: data.ipAllowlist }; } }; /** * Token Permissions */ var TokenPermissions = class { constructor() { this.fullAccess = false; this.read = []; this.write = []; } static parse(data) { return { fullAccess: data.full_access, read: data.read, write: data.write }; } static serialize(data) { return { full_access: data.fullAccess, read: data.read, write: data.write }; } }; /** * Information about an access token */ var Token = class { constructor() { this.name = ""; this.createdAt = 0; this.isProvisioned = false; } static parse(data) { return { name: data.name, createdAt: Date.parse(data.created_at), lastAccess: data.last_access ? Date.parse(data.last_access) : void 0, ttl: data.ttl, isExpired: data.is_expired, expiresAt: data.expires_at ? Date.parse(data.expires_at) : void 0, ipAllowlist: data.ip_allowlist, isProvisioned: data.is_provisioned ?? false, permissions: data.permissions ? TokenPermissions.parse(data.permissions) : void 0 }; } }; //#endregion exports.Token = Token; exports.TokenCreateRequest = TokenCreateRequest; exports.TokenPermissions = TokenPermissions;