1
0
mirror of https://github.com/redis/node-redis.git synced 2025-08-09 00:22:08 +03:00
Files
node-redis/lib/lua-script.ts
2021-09-18 05:52:54 -04:00

29 lines
653 B
TypeScript

import { createHash } from 'crypto';
import { RedisCommand } from './commands';
export interface RedisLuaScriptConfig extends RedisCommand {
SCRIPT: string;
NUMBER_OF_KEYS: number;
}
export interface SHA1 {
SHA1: string;
}
export type RedisLuaScript = RedisLuaScriptConfig & SHA1;
export interface RedisLuaScripts {
[script: string]: RedisLuaScript;
}
export function defineScript(script: RedisLuaScriptConfig): typeof script & SHA1 {
return {
...script,
SHA1: scriptSha1(script.SCRIPT)
};
}
export function scriptSha1(script: string): string {
return createHash('sha1').update(script).digest('hex');
}