sort-key
Version:
Tiny library for generating and parsing DynamoDB sort keys.
22 lines (18 loc) • 1.96 kB
JavaScript
;
exports.__esModule = true;
exports.generate = generate;
exports.parse = parse;
exports.default = void 0;
function generate(...parts) {
return parts.map(item => item.replace(/([\\#])/g, '\\$1')).join('#');
}
function parse(key) {
return `#${key}`.match(/#(\\.|[^#])*/g).map(item => item.replace(/\\(.)/g, '$1').substring(1));
}
const SortKey = {
generate,
parse
};
var _default = SortKey;
exports.default = _default;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6WyJnZW5lcmF0ZSIsInBhcnRzIiwibWFwIiwiaXRlbSIsInJlcGxhY2UiLCJqb2luIiwicGFyc2UiLCJrZXkiLCJtYXRjaCIsInN1YnN0cmluZyIsIlNvcnRLZXkiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFHTyxTQUFTQSxRQUFULENBQWtCLEdBQUdDLEtBQXJCLEVBQW1EO0FBQ3hELFNBQU9BLEtBQUssQ0FBQ0MsR0FBTixDQUFXQyxJQUFELElBQVVBLElBQUksQ0FBQ0MsT0FBTCxDQUFhLFVBQWIsRUFBeUIsTUFBekIsQ0FBcEIsRUFBc0RDLElBQXRELENBQTJELEdBQTNELENBQVA7QUFDRDs7QUFFTSxTQUFTQyxLQUFULENBQWVDLEdBQWYsRUFBMkM7QUFDaEQsU0FBUyxJQUFHQSxHQUFJLEVBQVIsQ0FBVUMsS0FBVixDQUFnQixlQUFoQixDQUFELENBQStDTixHQUEvQyxDQUFvREMsSUFBRCxJQUN4REEsSUFBSSxDQUFDQyxPQUFMLENBQWEsUUFBYixFQUF1QixJQUF2QixFQUE2QkssU0FBN0IsQ0FBdUMsQ0FBdkMsQ0FESyxDQUFQO0FBR0Q7O0FBRUQsTUFBTUMsT0FBTyxHQUFHO0FBQUVWLEVBQUFBLFFBQUY7QUFBWU0sRUFBQUE7QUFBWixDQUFoQjtlQUNlSSxPIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgU29ydEtleVBhcnRzID0gc3RyaW5nW107XG5leHBvcnQgdHlwZSBTb3J0S2V5ID0gc3RyaW5nO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGUoLi4ucGFydHM6IFNvcnRLZXlQYXJ0cyk6IFNvcnRLZXkge1xuICByZXR1cm4gcGFydHMubWFwKChpdGVtKSA9PiBpdGVtLnJlcGxhY2UoLyhbXFxcXCNdKS9nLCAnXFxcXCQxJykpLmpvaW4oJyMnKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlKGtleTogU29ydEtleSk6IFNvcnRLZXlQYXJ0cyB7XG4gIHJldHVybiAoYCMke2tleX1gLm1hdGNoKC8jKFxcXFwufFteI10pKi9nKSBhcyBzdHJpbmdbXSkubWFwKChpdGVtKSA9PlxuICAgIGl0ZW0ucmVwbGFjZSgvXFxcXCguKS9nLCAnJDEnKS5zdWJzdHJpbmcoMSksXG4gICk7XG59XG5cbmNvbnN0IFNvcnRLZXkgPSB7IGdlbmVyYXRlLCBwYXJzZSB9O1xuZXhwb3J0IGRlZmF1bHQgU29ydEtleTtcbiJdfQ==