UNPKG

p3x-redis-ui-server

Version:

🏍️ P3X Redis UI server — Socket.IO backend for the dual Angular + React frontend with AI queries, 54 languages, and auto data decompression

2 lines (1 loc) 818 B
import{ensureReadonlyConnection as e}from"../../shared.mjs";export default async r=>{const{socket:s,payload:t}=r;try{e({socket:s});const o=s.p3xrs.ioredis;if(!o)return void s.emit(r.responseEvent,{status:"error",error:"Not connected to Redis"});if(!t.username||!t.rules)return void s.emit(r.responseEvent,{status:"error",error:"Username and rules are required"});if(!Array.isArray(t.rules)||!t.rules.every(e=>"string"==typeof e&&e.length>0))return void s.emit(r.responseEvent,{status:"error",error:"Rules must be an array of non-empty strings"});"function"==typeof o.aclSetuser?await o.aclSetuser(t.username,...t.rules):await o.call("ACL","SETUSER",t.username,...t.rules),s.emit(r.responseEvent,{status:"ok"})}catch(e){console.error("acl/set-user failed",e),s.emit(r.responseEvent,{status:"error",error:e.message})}};