pragmatic-fp-ts
Version:
Opinionated functional programming library with easy use in mind
16 lines (15 loc) • 625 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.splitAt = void 0;
const main_1 = require("./main");
function splitAt(idx, input) {
if (arguments.length === 1)
return (_input) => splitAt(idx, _input);
if (typeof input !== "string" && !(input instanceof Array) && !(0, main_1.isNil)(input)) {
throw new Error("Can only split string or array, got " + typeof input);
}
return typeof input === "string"
? [input.slice(0, idx) || "", input.slice(idx) || ""]
: [(input || []).slice(0, idx), (input || []).slice(idx)];
}
exports.splitAt = splitAt;