@n3okill/utils
Version:
Many javascript helpers
23 lines • 946 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.balancedData = balancedData;
const toString_1 = require("./toString");
const detectEncoding_1 = require("./detectEncoding");
const balancedData_1 = require("../string/balancedData");
/**
* Return a Array<BalancedDataBuffer> mapping the chunks of 'open' and 'close' locations, if input buffer is unbalanced will return empty
* @param input Buffer
* @param open string
* @param close string
*/
function balancedData(input, open = "{", close = "}") {
const encoding = (0, detectEncoding_1.detectEncoding)(input);
return (0, balancedData_1.balancedData)((0, toString_1.toString)(input, encoding), open, close).map((s) => ({
start: s.start,
end: s.end,
pre: Buffer.from(s.pre, encoding),
body: Buffer.from(s.body, encoding),
post: Buffer.from(s.post, encoding),
}));
}
//# sourceMappingURL=balancedData.js.map
;