UNPKG

@clickup/pg-microsharding

Version:
22 lines 1.19 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.normalizeDsns = normalizeDsns; const compact_1 = __importDefault(require("lodash/compact")); const uniq_1 = __importDefault(require("lodash/uniq")); const isMasterDsn_1 = require("./isMasterDsn"); const normalizeDsn_1 = require("./normalizeDsn"); const promiseAllMap_1 = require("./promiseAllMap"); /** * Same as normalizeDsn(), but assumes comma separated list of DSNs. Also, * allows passing numbers instead of DSNs; if so, the actual DSN will be chosen * by the index from islandDsns argument. */ async function normalizeDsns(dsnsIn) { const dsns = (0, uniq_1.default)((0, compact_1.default)(dsnsIn === null || dsnsIn === void 0 ? void 0 : dsnsIn.split(/[,\s]+/s).map((dsn) => (0, normalizeDsn_1.normalizeDsn)(dsn)))); const masterDsns = (0, compact_1.default)(await (0, promiseAllMap_1.promiseAllMap)(dsns, async (dsn) => (await (0, isMasterDsn_1.isMasterDsn)(dsn)) ? dsn : null)); return masterDsns; } //# sourceMappingURL=normalizeDsns.js.map