substreams-sink-redis
Version:
Substreams Redis sink module
25 lines • 835 B
JavaScript
export function toTimestamp(clock) {
if (!clock.timestamp)
throw new Error("Clock is required");
const seconds = Number(clock.timestamp.seconds) * 1000;
const nanos = Number(clock.timestamp.nanos) / 1000000;
return seconds + nanos;
}
export function parseKeyPrefix(key, prefix) {
if (!prefix)
return key;
return `${prefix}:${key}`;
}
export function parseKeyLabels(key, labels) {
const suffix = Object.keys(labels).map(label => `${label}:${labels[label]}`).join(":");
if (suffix)
return `${key}:${suffix}`;
return key;
}
export function parseKey(name, options, labels) {
let prefix = parseKeyPrefix(name, options.kvPrefix);
if (labels && Object.keys(labels).length)
return parseKeyLabels(prefix, labels);
return prefix;
}
//# sourceMappingURL=utils.js.map