UNPKG

@becomes/cms-cloud-client

Version:

SDK for accessing BCMS Cloud API

121 lines (120 loc) 3.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.InstanceHandler = void 0; class InstanceHandler { sdk; getAllLatch = false; baseUrl = '/v2/instance'; constructor(sdk) { this.sdk = sdk; } async getAll() { if (this.getAllLatch) { return this.sdk.store.instance.items(); } const result = await this.sdk.send({ url: `${this.baseUrl}/all`, method: 'GET', }); this.sdk.store.instance.set(result.items); this.getAllLatch = true; return result.items; } async getById(data) { if (!data.skipCache) { const cacheHit = this.sdk.store.instance.findById(data.instanceId); if (cacheHit) { return cacheHit; } } const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}`, method: 'GET', }); this.sdk.store.instance.set(result.item); return result.item; } async create(data) { const result = await this.sdk.send({ url: `${this.baseUrl}`, method: 'POST', data, }); this.sdk.store.instance.set(result.item); return result.item; } async update(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}`, method: 'PUT', data, }); this.sdk.store.instance.set(result.item); return result.item; } async upgrade(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/upgrade`, method: 'PUT', data, }); this.sdk.store.instance.set(result.item); return result.item; } async issueDownloadLicenseCode(data) { await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/issue-download-license-code`, method: 'POST', data, }); } async downloadLicenseWithCode(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/download-license-with-code`, method: 'POST', data, }); return result.license; } async downloadLicenseWithPaddleCode(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/paddle/download`, method: 'POST', data, }); return result; } async openCloseLogs(data) { await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/open-close-logs`, method: 'POST', data, }); } async removeUsers(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/remove-users`, method: 'POST', data: { users: data.users, }, }); this.sdk.store.instance.set(result.item); } async updateUsers(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/update-users`, method: 'POST', data, }); this.sdk.store.instance.set(result.item); } async getPaddleSubInfo(data) { const result = await this.sdk.send({ url: `${this.baseUrl}/${data.instanceId}/paddle-sub-info`, method: 'GET', }); return result.item; } } exports.InstanceHandler = InstanceHandler;