UNPKG

@technobuddha/library

Version:
29 lines (28 loc) 1.31 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.coordinate = void 0; var toString_1 = __importDefault(require("lodash/toString")); var constants_1 = require("../constants"); /** * Create a string from an array, separating values and inserting a conjunction * * @param input Array of values * @param __namedParameters see {@link Options} */ function coordinate(input, _a) { var _b = _a === void 0 ? {} : _a, _c = _b.conjunction, conjunction = _c === void 0 ? 'and' : _c, _d = _b.oxford, oxford = _d === void 0 ? true : _d, _e = _b.separator, separator = _e === void 0 ? ',' : _e; if (input.length > 0) { var text = toString_1.default(input[0]); for (var i = 1; i < input.length - 1; i++) text += separator + constants_1.space + toString_1.default(input[i]); if (input.length > 1) text += (oxford && input.length > 2 ? separator : constants_1.empty) + constants_1.space + conjunction + constants_1.space + toString_1.default(input[input.length - 1]); return text; } return constants_1.empty; } exports.coordinate = coordinate; exports.default = coordinate;