UNPKG

@datastax/astra-db-ts

Version:
42 lines (41 loc) 1.55 kB
"use strict"; // Copyright Datastax, Inc // SPDX-License-Identifier: Apache-2.0 Object.defineProperty(exports, "__esModule", { value: true }); exports.buildAstraDatabaseAdminInfo = exports.extractAstraEnvironment = void 0; const utils_js_1 = require("../lib/utils.js"); const extractAstraEnvironment = (endpoint) => { switch (true) { case endpoint.includes('apps.astra-dev.datastax.com'): return 'dev'; case endpoint.includes('apps.astra-test.datastax.com'): return 'test'; case endpoint.includes('apps.astra.datastax.com'): return 'prod'; default: throw new Error(`Cannot extract astra environment for endpoint '${endpoint}'`); } }; exports.extractAstraEnvironment = extractAstraEnvironment; const buildAstraDatabaseAdminInfo = (raw, environment) => { const regions = raw.info.datacenters.map((dc) => ({ name: dc.region, apiEndpoint: (0, utils_js_1.buildAstraEndpoint)(raw.id, dc.region, environment), createdAt: new Date(dc.dateCreated), })); return { id: raw.id, name: raw.info.name, orgId: raw.orgId, ownerId: raw.ownerId, keyspaces: raw.info.keyspaces ?? [], environment: environment, cloudProvider: raw.info.cloudProvider, createdAt: new Date(raw.creationTime), lastUsed: new Date(raw.lastUsageTime), status: raw.status, regions: regions, raw: raw, }; }; exports.buildAstraDatabaseAdminInfo = buildAstraDatabaseAdminInfo;