import * as sharedIoRedis from '../shared.mjs'
import utils from 'corifeus-utils'
const consolePrefix = 'socket.io key list delete index'
export default async (options) => {
const {socket, payload} = options;
const redis = socket.p3xrs.ioredis
try {
sharedIoRedis.ensureReadonlyConnection({ socket })
const {index, key} = payload;
const uniqueValue = utils.random.complexUuid()
console.log(consolePrefix, key, index, uniqueValue)
await redis.lset(key, index, uniqueValue)
await redis.lrem(key, 1, uniqueValue)
socket.emit(options.responseEvent, {
status: 'ok',
})
} catch (e) {
console.error(e)
socket.emit(options.responseEvent, {
status: 'error',
error: e.message
})
}
}