You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-10 11:43:01 +03:00
39 lines
881 B
TypeScript
39 lines
881 B
TypeScript
import { ScanOptions, transformScanArguments } from './generic-transformers';
|
|
|
|
export const FIRST_KEY_INDEX = 1;
|
|
|
|
export const IS_READ_ONLY = true;
|
|
|
|
export function transformArguments(key: string, cursor: number, options?: ScanOptions): Array<string> {
|
|
return [
|
|
'HSCAN',
|
|
key,
|
|
...transformScanArguments(cursor, options)
|
|
];
|
|
}
|
|
|
|
export interface HScanTuple {
|
|
field: string;
|
|
value: string;
|
|
}
|
|
|
|
interface HScanReply {
|
|
cursor: number;
|
|
tuples: Array<HScanTuple>;
|
|
}
|
|
|
|
export function transformReply([cursor, rawTuples]: [string, Array<string>]): HScanReply {
|
|
const parsedTuples = [];
|
|
for (let i = 0; i < rawTuples.length; i += 2) {
|
|
parsedTuples.push({
|
|
field: rawTuples[i],
|
|
value: rawTuples[i + 1]
|
|
});
|
|
}
|
|
|
|
return {
|
|
cursor: Number(cursor),
|
|
tuples: parsedTuples
|
|
};
|
|
};
|