Files
micro-service-api/node_modules/@redis/client/dist/lib/commands/SET.js

58 lines
1.8 KiB
JavaScript
Raw Normal View History

2025-11-11 12:36:06 +07:00
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = {
/**
* Constructs the SET command
*
* @param parser - The command parser
* @param key - The key to set
* @param value - The value to set
* @param options - Additional options for the SET command
* @see https://redis.io/commands/set/
*/
parseCommand(parser, key, value, options) {
parser.push('SET');
parser.pushKey(key);
parser.push(typeof value === 'number' ? value.toString() : value);
if (options?.expiration) {
if (typeof options.expiration === 'string') {
parser.push(options.expiration);
}
else if (options.expiration.type === 'KEEPTTL') {
parser.push('KEEPTTL');
}
else {
parser.push(options.expiration.type, options.expiration.value.toString());
}
}
else if (options?.EX !== undefined) {
parser.push('EX', options.EX.toString());
}
else if (options?.PX !== undefined) {
parser.push('PX', options.PX.toString());
}
else if (options?.EXAT !== undefined) {
parser.push('EXAT', options.EXAT.toString());
}
else if (options?.PXAT !== undefined) {
parser.push('PXAT', options.PXAT.toString());
}
else if (options?.KEEPTTL) {
parser.push('KEEPTTL');
}
if (options?.condition) {
parser.push(options.condition);
}
else if (options?.NX) {
parser.push('NX');
}
else if (options?.XX) {
parser.push('XX');
}
if (options?.GET) {
parser.push('GET');
}
},
transformReply: undefined
};
//# sourceMappingURL=SET.js.map